From 79d833fda26110c4f2034f88132dfff2bc9a63af Mon Sep 17 00:00:00 2001 From: Bruno Dutertre Date: Fri, 8 Jul 2022 09:17:10 -0700 Subject: [PATCH 001/182] Don't report a fatal error on get-model after timeout. Fix #401. --- src/frontend/smt2/smt2_commands.c | 20 ++++++++++++++++---- src/solvers/egraph/egraph.c | 1 + 2 files changed, 17 insertions(+), 4 deletions(-) diff --git a/src/frontend/smt2/smt2_commands.c b/src/frontend/smt2/smt2_commands.c index c85b73409..655925f0a 100644 --- a/src/frontend/smt2/smt2_commands.c +++ b/src/frontend/smt2/smt2_commands.c @@ -3727,8 +3727,11 @@ static model_t *get_model(smt2_globals_t *g) { print_error("can't build a model. Call (check-sat) first"); break; - case STATUS_SEARCHING: case STATUS_INTERRUPTED: + print_error("the search was interrupted. No model is available"); + break; + + case STATUS_SEARCHING: default: print_out("BUG: unexpected context status"); freport_bug(__smt2_globals.err, "BUG: unexpected context status"); @@ -4131,8 +4134,11 @@ static void show_assignment(smt2_globals_t *g) { print_error("can't build the assignment. Call (check-sat) first"); break; - case STATUS_SEARCHING: case STATUS_INTERRUPTED: + print_error("can't build the assignment. The search was interrupted"); + break; + + case STATUS_SEARCHING: default: print_out("BUG: unexpected context status"); freport_bug(__smt2_globals.err, "BUG: unexpected context status"); @@ -4208,9 +4214,12 @@ static void show_unsat_core(smt2_globals_t *g) { delete_smt2_pp(&printer, true); break; + case STATUS_INTERRUPTED: + print_error("No unsat core. The search was interrupted"); + break; + case STATUS_IDLE: case STATUS_SEARCHING: - case STATUS_INTERRUPTED: default: print_out("BUG: unexpected status in get-unsat-core"); freport_bug(__smt2_globals.err, "BUG: unexpected status in get-unsat-core"); @@ -4247,9 +4256,12 @@ static void show_unsat_assumptions(smt2_globals_t *g) { delete_smt2_pp(&printer, true); break; + case STATUS_INTERRUPTED: + print_error("No unsat assumptions. The search was interrupted"); + break; + case STATUS_IDLE: case STATUS_SEARCHING: - case STATUS_INTERRUPTED: default: print_out("BUG: unexpected status in get-unsat-assumptions"); freport_bug(__smt2_globals.err, "BUG: unexpected status in get-unsat-assumptions"); diff --git a/src/solvers/egraph/egraph.c b/src/solvers/egraph/egraph.c index dba8d43bd..667683972 100644 --- a/src/solvers/egraph/egraph.c +++ b/src/solvers/egraph/egraph.c @@ -2068,6 +2068,7 @@ static bool analyze_or(egraph_t *egraph, composite_t *p) { } // if one t_i == true then true_label is in sgn->sigma[0] + // (or ... true ...) == true if (sgn->sigma[0] == true_label) { t = find_child_label(egraph, p, true_label); assert(t >= 0); From ca25c22fbbc602b6872f7e26e4426b42600e7cfd Mon Sep 17 00:00:00 2001 From: Bruno Dutertre Date: Fri, 8 Jul 2022 09:22:08 -0700 Subject: [PATCH 002/182] Test for issue401 fix --- tests/regress/wd/issue401.smt2 | 2833 ++++++++++++++++++++++++ tests/regress/wd/issue401.smt2.gold | 2 + tests/regress/wd/issue401.smt2.options | 1 + 3 files changed, 2836 insertions(+) create mode 100644 tests/regress/wd/issue401.smt2 create mode 100644 tests/regress/wd/issue401.smt2.gold create mode 100644 tests/regress/wd/issue401.smt2.options diff --git a/tests/regress/wd/issue401.smt2 b/tests/regress/wd/issue401.smt2 new file mode 100644 index 000000000..c07ec40cb --- /dev/null +++ b/tests/regress/wd/issue401.smt2 @@ -0,0 +1,2833 @@ +; +(set-option :produce-models true) +(set-logic QF_LIA) +(declare-fun sudoku<24><24> () Int) +(declare-fun sudoku<24><23> () Int) +(declare-fun sudoku<24><22> () Int) +(declare-fun sudoku<24><21> () Int) +(declare-fun sudoku<24><20> () Int) +(declare-fun sudoku<23><24> () Int) +(declare-fun sudoku<23><23> () Int) +(declare-fun sudoku<23><22> () Int) +(declare-fun sudoku<23><21> () Int) +(declare-fun sudoku<23><20> () Int) +(declare-fun sudoku<22><24> () Int) +(declare-fun sudoku<22><23> () Int) +(declare-fun sudoku<22><22> () Int) +(declare-fun sudoku<22><21> () Int) +(declare-fun sudoku<22><20> () Int) +(declare-fun sudoku<21><24> () Int) +(declare-fun sudoku<21><23> () Int) +(declare-fun sudoku<21><22> () Int) +(declare-fun sudoku<21><21> () Int) +(declare-fun sudoku<21><20> () Int) +(declare-fun sudoku<20><24> () Int) +(declare-fun sudoku<20><23> () Int) +(declare-fun sudoku<20><22> () Int) +(declare-fun sudoku<20><21> () Int) +(declare-fun sudoku<20><20> () Int) +(declare-fun sudoku<19><24> () Int) +(declare-fun sudoku<19><23> () Int) +(declare-fun sudoku<19><22> () Int) +(declare-fun sudoku<19><21> () Int) +(declare-fun sudoku<19><20> () Int) +(declare-fun sudoku<18><24> () Int) +(declare-fun sudoku<18><23> () Int) +(declare-fun sudoku<18><22> () Int) +(declare-fun sudoku<18><21> () Int) +(declare-fun sudoku<18><20> () Int) +(declare-fun sudoku<17><24> () Int) +(declare-fun sudoku<17><23> () Int) +(declare-fun sudoku<17><22> () Int) +(declare-fun sudoku<17><21> () Int) +(declare-fun sudoku<17><20> () Int) +(declare-fun sudoku<16><24> () Int) +(declare-fun sudoku<16><23> () Int) +(declare-fun sudoku<16><22> () Int) +(declare-fun sudoku<16><21> () Int) +(declare-fun sudoku<16><20> () Int) +(declare-fun sudoku<15><24> () Int) +(declare-fun sudoku<15><23> () Int) +(declare-fun sudoku<15><22> () Int) +(declare-fun sudoku<15><21> () Int) +(declare-fun sudoku<15><20> () Int) +(declare-fun sudoku<14><24> () Int) +(declare-fun sudoku<14><23> () Int) +(declare-fun sudoku<14><22> () Int) +(declare-fun sudoku<14><21> () Int) +(declare-fun sudoku<14><20> () Int) +(declare-fun sudoku<13><24> () Int) +(declare-fun sudoku<13><23> () Int) +(declare-fun sudoku<13><22> () Int) +(declare-fun sudoku<13><21> () Int) +(declare-fun sudoku<13><20> () Int) +(declare-fun sudoku<12><24> () Int) +(declare-fun sudoku<12><23> () Int) +(declare-fun sudoku<12><22> () Int) +(declare-fun sudoku<12><21> () Int) +(declare-fun sudoku<12><20> () Int) +(declare-fun sudoku<11><24> () Int) +(declare-fun sudoku<11><23> () Int) +(declare-fun sudoku<11><22> () Int) +(declare-fun sudoku<11><21> () Int) +(declare-fun sudoku<11><20> () Int) +(declare-fun sudoku<10><24> () Int) +(declare-fun sudoku<10><23> () Int) +(declare-fun sudoku<10><22> () Int) +(declare-fun sudoku<10><21> () Int) +(declare-fun sudoku<10><20> () Int) +(declare-fun sudoku<9><24> () Int) +(declare-fun sudoku<9><23> () Int) +(declare-fun sudoku<9><22> () Int) +(declare-fun sudoku<9><21> () Int) +(declare-fun sudoku<9><20> () Int) +(declare-fun sudoku<8><24> () Int) +(declare-fun sudoku<8><23> () Int) +(declare-fun sudoku<8><22> () Int) +(declare-fun sudoku<8><21> () Int) +(declare-fun sudoku<8><20> () Int) +(declare-fun sudoku<7><24> () Int) +(declare-fun sudoku<7><23> () Int) +(declare-fun sudoku<7><22> () Int) +(declare-fun sudoku<7><21> () Int) +(declare-fun sudoku<7><20> () Int) +(declare-fun sudoku<6><24> () Int) +(declare-fun sudoku<6><23> () Int) +(declare-fun sudoku<6><22> () Int) +(declare-fun sudoku<6><21> () Int) +(declare-fun sudoku<6><20> () Int) +(declare-fun sudoku<5><24> () Int) +(declare-fun sudoku<5><23> () Int) +(declare-fun sudoku<5><22> () Int) +(declare-fun sudoku<5><21> () Int) +(declare-fun sudoku<5><20> () Int) +(declare-fun sudoku<4><24> () Int) +(declare-fun sudoku<4><23> () Int) +(declare-fun sudoku<4><22> () Int) +(declare-fun sudoku<4><21> () Int) +(declare-fun sudoku<4><20> () Int) +(declare-fun sudoku<3><24> () Int) +(declare-fun sudoku<3><23> () Int) +(declare-fun sudoku<3><22> () Int) +(declare-fun sudoku<3><21> () Int) +(declare-fun sudoku<3><20> () Int) +(declare-fun sudoku<2><24> () Int) +(declare-fun sudoku<2><23> () Int) +(declare-fun sudoku<2><22> () Int) +(declare-fun sudoku<2><21> () Int) +(declare-fun sudoku<2><20> () Int) +(declare-fun sudoku<1><24> () Int) +(declare-fun sudoku<1><23> () Int) +(declare-fun sudoku<1><22> () Int) +(declare-fun sudoku<1><21> () Int) +(declare-fun sudoku<1><20> () Int) +(declare-fun sudoku<0><24> () Int) +(declare-fun sudoku<0><23> () Int) +(declare-fun sudoku<0><22> () Int) +(declare-fun sudoku<0><21> () Int) +(declare-fun sudoku<0><20> () Int) +(declare-fun sudoku<24><19> () Int) +(declare-fun sudoku<24><18> () Int) +(declare-fun sudoku<24><17> () Int) +(declare-fun sudoku<24><16> () Int) +(declare-fun sudoku<24><15> () Int) +(declare-fun sudoku<23><19> () Int) +(declare-fun sudoku<23><18> () Int) +(declare-fun sudoku<23><17> () Int) +(declare-fun sudoku<23><16> () Int) +(declare-fun sudoku<23><15> () Int) +(declare-fun sudoku<22><19> () Int) +(declare-fun sudoku<22><18> () Int) +(declare-fun sudoku<22><17> () Int) +(declare-fun sudoku<22><16> () Int) +(declare-fun sudoku<22><15> () Int) +(declare-fun sudoku<21><19> () Int) +(declare-fun sudoku<21><18> () Int) +(declare-fun sudoku<21><17> () Int) +(declare-fun sudoku<21><16> () Int) +(declare-fun sudoku<21><15> () Int) +(declare-fun sudoku<20><19> () Int) +(declare-fun sudoku<20><18> () Int) +(declare-fun sudoku<20><17> () Int) +(declare-fun sudoku<20><16> () Int) +(declare-fun sudoku<20><15> () Int) +(declare-fun sudoku<19><19> () Int) +(declare-fun sudoku<19><18> () Int) +(declare-fun sudoku<19><17> () Int) +(declare-fun sudoku<19><16> () Int) +(declare-fun sudoku<19><15> () Int) +(declare-fun sudoku<18><19> () Int) +(declare-fun sudoku<18><18> () Int) +(declare-fun sudoku<18><17> () Int) +(declare-fun sudoku<18><16> () Int) +(declare-fun sudoku<18><15> () Int) +(declare-fun sudoku<17><19> () Int) +(declare-fun sudoku<17><18> () Int) +(declare-fun sudoku<17><17> () Int) +(declare-fun sudoku<17><16> () Int) +(declare-fun sudoku<17><15> () Int) +(declare-fun sudoku<16><19> () Int) +(declare-fun sudoku<16><18> () Int) +(declare-fun sudoku<16><17> () Int) +(declare-fun sudoku<16><16> () Int) +(declare-fun sudoku<16><15> () Int) +(declare-fun sudoku<15><19> () Int) +(declare-fun sudoku<15><18> () Int) +(declare-fun sudoku<15><17> () Int) +(declare-fun sudoku<15><16> () Int) +(declare-fun sudoku<15><15> () Int) +(declare-fun sudoku<14><19> () Int) +(declare-fun sudoku<14><18> () Int) +(declare-fun sudoku<14><17> () Int) +(declare-fun sudoku<14><16> () Int) +(declare-fun sudoku<14><15> () Int) +(declare-fun sudoku<13><19> () Int) +(declare-fun sudoku<13><18> () Int) +(declare-fun sudoku<13><17> () Int) +(declare-fun sudoku<13><16> () Int) +(declare-fun sudoku<13><15> () Int) +(declare-fun sudoku<12><19> () Int) +(declare-fun sudoku<12><18> () Int) +(declare-fun sudoku<12><17> () Int) +(declare-fun sudoku<12><16> () Int) +(declare-fun sudoku<12><15> () Int) +(declare-fun sudoku<11><19> () Int) +(declare-fun sudoku<11><18> () Int) +(declare-fun sudoku<11><17> () Int) +(declare-fun sudoku<11><16> () Int) +(declare-fun sudoku<11><15> () Int) +(declare-fun sudoku<10><19> () Int) +(declare-fun sudoku<10><18> () Int) +(declare-fun sudoku<10><17> () Int) +(declare-fun sudoku<10><16> () Int) +(declare-fun sudoku<10><15> () Int) +(declare-fun sudoku<9><19> () Int) +(declare-fun sudoku<9><18> () Int) +(declare-fun sudoku<9><17> () Int) +(declare-fun sudoku<9><16> () Int) +(declare-fun sudoku<9><15> () Int) +(declare-fun sudoku<8><19> () Int) +(declare-fun sudoku<8><18> () Int) +(declare-fun sudoku<8><17> () Int) +(declare-fun sudoku<8><16> () Int) +(declare-fun sudoku<8><15> () Int) +(declare-fun sudoku<7><19> () Int) +(declare-fun sudoku<7><18> () Int) +(declare-fun sudoku<7><17> () Int) +(declare-fun sudoku<7><16> () Int) +(declare-fun sudoku<7><15> () Int) +(declare-fun sudoku<6><19> () Int) +(declare-fun sudoku<6><18> () Int) +(declare-fun sudoku<6><17> () Int) +(declare-fun sudoku<6><16> () Int) +(declare-fun sudoku<6><15> () Int) +(declare-fun sudoku<5><19> () Int) +(declare-fun sudoku<5><18> () Int) +(declare-fun sudoku<5><17> () Int) +(declare-fun sudoku<5><16> () Int) +(declare-fun sudoku<5><15> () Int) +(declare-fun sudoku<4><19> () Int) +(declare-fun sudoku<4><18> () Int) +(declare-fun sudoku<4><17> () Int) +(declare-fun sudoku<4><16> () Int) +(declare-fun sudoku<4><15> () Int) +(declare-fun sudoku<3><19> () Int) +(declare-fun sudoku<3><18> () Int) +(declare-fun sudoku<3><17> () Int) +(declare-fun sudoku<3><16> () Int) +(declare-fun sudoku<3><15> () Int) +(declare-fun sudoku<2><19> () Int) +(declare-fun sudoku<2><18> () Int) +(declare-fun sudoku<2><17> () Int) +(declare-fun sudoku<2><16> () Int) +(declare-fun sudoku<2><15> () Int) +(declare-fun sudoku<1><19> () Int) +(declare-fun sudoku<1><18> () Int) +(declare-fun sudoku<1><17> () Int) +(declare-fun sudoku<1><16> () Int) +(declare-fun sudoku<1><15> () Int) +(declare-fun sudoku<0><19> () Int) +(declare-fun sudoku<0><18> () Int) +(declare-fun sudoku<0><17> () Int) +(declare-fun sudoku<0><16> () Int) +(declare-fun sudoku<0><15> () Int) +(declare-fun sudoku<24><14> () Int) +(declare-fun sudoku<24><13> () Int) +(declare-fun sudoku<24><12> () Int) +(declare-fun sudoku<24><11> () Int) +(declare-fun sudoku<24><10> () Int) +(declare-fun sudoku<23><14> () Int) +(declare-fun sudoku<23><13> () Int) +(declare-fun sudoku<23><12> () Int) +(declare-fun sudoku<23><11> () Int) +(declare-fun sudoku<23><10> () Int) +(declare-fun sudoku<22><14> () Int) +(declare-fun sudoku<22><13> () Int) +(declare-fun sudoku<22><12> () Int) +(declare-fun sudoku<22><11> () Int) +(declare-fun sudoku<22><10> () Int) +(declare-fun sudoku<21><14> () Int) +(declare-fun sudoku<21><13> () Int) +(declare-fun sudoku<21><12> () Int) +(declare-fun sudoku<21><11> () Int) +(declare-fun sudoku<21><10> () Int) +(declare-fun sudoku<20><14> () Int) +(declare-fun sudoku<20><13> () Int) +(declare-fun sudoku<20><12> () Int) +(declare-fun sudoku<20><11> () Int) +(declare-fun sudoku<20><10> () Int) +(declare-fun sudoku<19><14> () Int) +(declare-fun sudoku<19><13> () Int) +(declare-fun sudoku<19><12> () Int) +(declare-fun sudoku<19><11> () Int) +(declare-fun sudoku<19><10> () Int) +(declare-fun sudoku<18><14> () Int) +(declare-fun sudoku<18><13> () Int) +(declare-fun sudoku<18><12> () Int) +(declare-fun sudoku<18><11> () Int) +(declare-fun sudoku<18><10> () Int) +(declare-fun sudoku<17><14> () Int) +(declare-fun sudoku<17><13> () Int) +(declare-fun sudoku<17><12> () Int) +(declare-fun sudoku<17><11> () Int) +(declare-fun sudoku<17><10> () Int) +(declare-fun sudoku<16><14> () Int) +(declare-fun sudoku<16><13> () Int) +(declare-fun sudoku<16><12> () Int) +(declare-fun sudoku<16><11> () Int) +(declare-fun sudoku<16><10> () Int) +(declare-fun sudoku<15><14> () Int) +(declare-fun sudoku<15><13> () Int) +(declare-fun sudoku<15><12> () Int) +(declare-fun sudoku<15><11> () Int) +(declare-fun sudoku<15><10> () Int) +(declare-fun sudoku<14><14> () Int) +(declare-fun sudoku<14><13> () Int) +(declare-fun sudoku<14><12> () Int) +(declare-fun sudoku<14><11> () Int) +(declare-fun sudoku<14><10> () Int) +(declare-fun sudoku<13><14> () Int) +(declare-fun sudoku<13><13> () Int) +(declare-fun sudoku<13><12> () Int) +(declare-fun sudoku<13><11> () Int) +(declare-fun sudoku<13><10> () Int) +(declare-fun sudoku<12><14> () Int) +(declare-fun sudoku<12><13> () Int) +(declare-fun sudoku<12><12> () Int) +(declare-fun sudoku<12><11> () Int) +(declare-fun sudoku<12><10> () Int) +(declare-fun sudoku<11><14> () Int) +(declare-fun sudoku<11><13> () Int) +(declare-fun sudoku<11><12> () Int) +(declare-fun sudoku<11><11> () Int) +(declare-fun sudoku<11><10> () Int) +(declare-fun sudoku<10><14> () Int) +(declare-fun sudoku<10><13> () Int) +(declare-fun sudoku<10><12> () Int) +(declare-fun sudoku<10><11> () Int) +(declare-fun sudoku<10><10> () Int) +(declare-fun sudoku<9><14> () Int) +(declare-fun sudoku<9><13> () Int) +(declare-fun sudoku<9><12> () Int) +(declare-fun sudoku<9><11> () Int) +(declare-fun sudoku<9><10> () Int) +(declare-fun sudoku<8><14> () Int) +(declare-fun sudoku<8><13> () Int) +(declare-fun sudoku<8><12> () Int) +(declare-fun sudoku<8><11> () Int) +(declare-fun sudoku<8><10> () Int) +(declare-fun sudoku<7><14> () Int) +(declare-fun sudoku<7><13> () Int) +(declare-fun sudoku<7><12> () Int) +(declare-fun sudoku<7><11> () Int) +(declare-fun sudoku<7><10> () Int) +(declare-fun sudoku<6><14> () Int) +(declare-fun sudoku<6><13> () Int) +(declare-fun sudoku<6><12> () Int) +(declare-fun sudoku<6><11> () Int) +(declare-fun sudoku<6><10> () Int) +(declare-fun sudoku<5><14> () Int) +(declare-fun sudoku<5><13> () Int) +(declare-fun sudoku<5><12> () Int) +(declare-fun sudoku<5><11> () Int) +(declare-fun sudoku<5><10> () Int) +(declare-fun sudoku<4><14> () Int) +(declare-fun sudoku<4><13> () Int) +(declare-fun sudoku<4><12> () Int) +(declare-fun sudoku<4><11> () Int) +(declare-fun sudoku<4><10> () Int) +(declare-fun sudoku<3><14> () Int) +(declare-fun sudoku<3><13> () Int) +(declare-fun sudoku<3><12> () Int) +(declare-fun sudoku<3><11> () Int) +(declare-fun sudoku<3><10> () Int) +(declare-fun sudoku<2><14> () Int) +(declare-fun sudoku<2><13> () Int) +(declare-fun sudoku<2><12> () Int) +(declare-fun sudoku<2><11> () Int) +(declare-fun sudoku<2><10> () Int) +(declare-fun sudoku<1><14> () Int) +(declare-fun sudoku<1><13> () Int) +(declare-fun sudoku<1><12> () Int) +(declare-fun sudoku<1><11> () Int) +(declare-fun sudoku<1><10> () Int) +(declare-fun sudoku<0><14> () Int) +(declare-fun sudoku<0><13> () Int) +(declare-fun sudoku<0><12> () Int) +(declare-fun sudoku<0><11> () Int) +(declare-fun sudoku<0><10> () Int) +(declare-fun sudoku<24><9> () Int) +(declare-fun sudoku<24><8> () Int) +(declare-fun sudoku<24><7> () Int) +(declare-fun sudoku<24><6> () Int) +(declare-fun sudoku<24><5> () Int) +(declare-fun sudoku<23><9> () Int) +(declare-fun sudoku<23><8> () Int) +(declare-fun sudoku<23><7> () Int) +(declare-fun sudoku<23><6> () Int) +(declare-fun sudoku<23><5> () Int) +(declare-fun sudoku<22><9> () Int) +(declare-fun sudoku<22><8> () Int) +(declare-fun sudoku<22><7> () Int) +(declare-fun sudoku<22><6> () Int) +(declare-fun sudoku<22><5> () Int) +(declare-fun sudoku<21><9> () Int) +(declare-fun sudoku<21><8> () Int) +(declare-fun sudoku<21><7> () Int) +(declare-fun sudoku<21><6> () Int) +(declare-fun sudoku<21><5> () Int) +(declare-fun sudoku<20><9> () Int) +(declare-fun sudoku<20><8> () Int) +(declare-fun sudoku<20><7> () Int) +(declare-fun sudoku<20><6> () Int) +(declare-fun sudoku<20><5> () Int) +(declare-fun sudoku<19><9> () Int) +(declare-fun sudoku<19><8> () Int) +(declare-fun sudoku<19><7> () Int) +(declare-fun sudoku<19><6> () Int) +(declare-fun sudoku<19><5> () Int) +(declare-fun sudoku<18><9> () Int) +(declare-fun sudoku<18><8> () Int) +(declare-fun sudoku<18><7> () Int) +(declare-fun sudoku<18><6> () Int) +(declare-fun sudoku<18><5> () Int) +(declare-fun sudoku<17><9> () Int) +(declare-fun sudoku<17><8> () Int) +(declare-fun sudoku<17><7> () Int) +(declare-fun sudoku<17><6> () Int) +(declare-fun sudoku<17><5> () Int) +(declare-fun sudoku<16><9> () Int) +(declare-fun sudoku<16><8> () Int) +(declare-fun sudoku<16><7> () Int) +(declare-fun sudoku<16><6> () Int) +(declare-fun sudoku<16><5> () Int) +(declare-fun sudoku<15><9> () Int) +(declare-fun sudoku<15><8> () Int) +(declare-fun sudoku<15><7> () Int) +(declare-fun sudoku<15><6> () Int) +(declare-fun sudoku<15><5> () Int) +(declare-fun sudoku<14><9> () Int) +(declare-fun sudoku<14><8> () Int) +(declare-fun sudoku<14><7> () Int) +(declare-fun sudoku<14><6> () Int) +(declare-fun sudoku<14><5> () Int) +(declare-fun sudoku<13><9> () Int) +(declare-fun sudoku<13><8> () Int) +(declare-fun sudoku<13><7> () Int) +(declare-fun sudoku<13><6> () Int) +(declare-fun sudoku<13><5> () Int) +(declare-fun sudoku<12><9> () Int) +(declare-fun sudoku<12><8> () Int) +(declare-fun sudoku<12><7> () Int) +(declare-fun sudoku<12><6> () Int) +(declare-fun sudoku<12><5> () Int) +(declare-fun sudoku<11><9> () Int) +(declare-fun sudoku<11><8> () Int) +(declare-fun sudoku<11><7> () Int) +(declare-fun sudoku<11><6> () Int) +(declare-fun sudoku<11><5> () Int) +(declare-fun sudoku<10><9> () Int) +(declare-fun sudoku<10><8> () Int) +(declare-fun sudoku<10><7> () Int) +(declare-fun sudoku<10><6> () Int) +(declare-fun sudoku<10><5> () Int) +(declare-fun sudoku<9><9> () Int) +(declare-fun sudoku<9><8> () Int) +(declare-fun sudoku<9><7> () Int) +(declare-fun sudoku<9><6> () Int) +(declare-fun sudoku<9><5> () Int) +(declare-fun sudoku<8><9> () Int) +(declare-fun sudoku<8><8> () Int) +(declare-fun sudoku<8><7> () Int) +(declare-fun sudoku<8><6> () Int) +(declare-fun sudoku<8><5> () Int) +(declare-fun sudoku<7><9> () Int) +(declare-fun sudoku<7><8> () Int) +(declare-fun sudoku<7><7> () Int) +(declare-fun sudoku<7><6> () Int) +(declare-fun sudoku<7><5> () Int) +(declare-fun sudoku<6><9> () Int) +(declare-fun sudoku<6><8> () Int) +(declare-fun sudoku<6><7> () Int) +(declare-fun sudoku<6><6> () Int) +(declare-fun sudoku<6><5> () Int) +(declare-fun sudoku<5><9> () Int) +(declare-fun sudoku<5><8> () Int) +(declare-fun sudoku<5><7> () Int) +(declare-fun sudoku<5><6> () Int) +(declare-fun sudoku<5><5> () Int) +(declare-fun sudoku<4><9> () Int) +(declare-fun sudoku<4><8> () Int) +(declare-fun sudoku<4><7> () Int) +(declare-fun sudoku<4><6> () Int) +(declare-fun sudoku<4><5> () Int) +(declare-fun sudoku<3><9> () Int) +(declare-fun sudoku<3><8> () Int) +(declare-fun sudoku<3><7> () Int) +(declare-fun sudoku<3><6> () Int) +(declare-fun sudoku<3><5> () Int) +(declare-fun sudoku<2><9> () Int) +(declare-fun sudoku<2><8> () Int) +(declare-fun sudoku<2><7> () Int) +(declare-fun sudoku<2><6> () Int) +(declare-fun sudoku<2><5> () Int) +(declare-fun sudoku<1><9> () Int) +(declare-fun sudoku<1><8> () Int) +(declare-fun sudoku<1><7> () Int) +(declare-fun sudoku<1><6> () Int) +(declare-fun sudoku<1><5> () Int) +(declare-fun sudoku<0><9> () Int) +(declare-fun sudoku<0><8> () Int) +(declare-fun sudoku<0><7> () Int) +(declare-fun sudoku<0><6> () Int) +(declare-fun sudoku<0><5> () Int) +(declare-fun sudoku<24><4> () Int) +(declare-fun sudoku<24><3> () Int) +(declare-fun sudoku<24><2> () Int) +(declare-fun sudoku<24><1> () Int) +(declare-fun sudoku<24><0> () Int) +(declare-fun sudoku<23><4> () Int) +(declare-fun sudoku<23><3> () Int) +(declare-fun sudoku<23><2> () Int) +(declare-fun sudoku<23><1> () Int) +(declare-fun sudoku<23><0> () Int) +(declare-fun sudoku<22><4> () Int) +(declare-fun sudoku<22><3> () Int) +(declare-fun sudoku<22><2> () Int) +(declare-fun sudoku<22><1> () Int) +(declare-fun sudoku<22><0> () Int) +(declare-fun sudoku<21><4> () Int) +(declare-fun sudoku<21><3> () Int) +(declare-fun sudoku<21><2> () Int) +(declare-fun sudoku<21><1> () Int) +(declare-fun sudoku<21><0> () Int) +(declare-fun sudoku<20><4> () Int) +(declare-fun sudoku<20><3> () Int) +(declare-fun sudoku<20><2> () Int) +(declare-fun sudoku<20><1> () Int) +(declare-fun sudoku<20><0> () Int) +(declare-fun sudoku<19><4> () Int) +(declare-fun sudoku<19><3> () Int) +(declare-fun sudoku<19><2> () Int) +(declare-fun sudoku<19><1> () Int) +(declare-fun sudoku<19><0> () Int) +(declare-fun sudoku<18><4> () Int) +(declare-fun sudoku<18><3> () Int) +(declare-fun sudoku<18><2> () Int) +(declare-fun sudoku<18><1> () Int) +(declare-fun sudoku<18><0> () Int) +(declare-fun sudoku<17><4> () Int) +(declare-fun sudoku<17><3> () Int) +(declare-fun sudoku<17><2> () Int) +(declare-fun sudoku<17><1> () Int) +(declare-fun sudoku<17><0> () Int) +(declare-fun sudoku<16><4> () Int) +(declare-fun sudoku<16><3> () Int) +(declare-fun sudoku<16><2> () Int) +(declare-fun sudoku<16><1> () Int) +(declare-fun sudoku<16><0> () Int) +(declare-fun sudoku<15><4> () Int) +(declare-fun sudoku<15><3> () Int) +(declare-fun sudoku<15><2> () Int) +(declare-fun sudoku<15><1> () Int) +(declare-fun sudoku<15><0> () Int) +(declare-fun sudoku<14><4> () Int) +(declare-fun sudoku<14><3> () Int) +(declare-fun sudoku<14><2> () Int) +(declare-fun sudoku<14><1> () Int) +(declare-fun sudoku<14><0> () Int) +(declare-fun sudoku<13><4> () Int) +(declare-fun sudoku<13><3> () Int) +(declare-fun sudoku<13><2> () Int) +(declare-fun sudoku<13><1> () Int) +(declare-fun sudoku<13><0> () Int) +(declare-fun sudoku<12><4> () Int) +(declare-fun sudoku<12><3> () Int) +(declare-fun sudoku<12><2> () Int) +(declare-fun sudoku<12><1> () Int) +(declare-fun sudoku<12><0> () Int) +(declare-fun sudoku<11><4> () Int) +(declare-fun sudoku<11><3> () Int) +(declare-fun sudoku<11><2> () Int) +(declare-fun sudoku<11><1> () Int) +(declare-fun sudoku<11><0> () Int) +(declare-fun sudoku<10><4> () Int) +(declare-fun sudoku<10><3> () Int) +(declare-fun sudoku<10><2> () Int) +(declare-fun sudoku<10><1> () Int) +(declare-fun sudoku<10><0> () Int) +(declare-fun sudoku<9><4> () Int) +(declare-fun sudoku<9><3> () Int) +(declare-fun sudoku<9><2> () Int) +(declare-fun sudoku<9><1> () Int) +(declare-fun sudoku<9><0> () Int) +(declare-fun sudoku<8><4> () Int) +(declare-fun sudoku<8><3> () Int) +(declare-fun sudoku<8><2> () Int) +(declare-fun sudoku<8><1> () Int) +(declare-fun sudoku<8><0> () Int) +(declare-fun sudoku<7><4> () Int) +(declare-fun sudoku<7><3> () Int) +(declare-fun sudoku<7><2> () Int) +(declare-fun sudoku<7><1> () Int) +(declare-fun sudoku<7><0> () Int) +(declare-fun sudoku<6><4> () Int) +(declare-fun sudoku<6><3> () Int) +(declare-fun sudoku<6><2> () Int) +(declare-fun sudoku<6><1> () Int) +(declare-fun sudoku<6><0> () Int) +(declare-fun sudoku<5><4> () Int) +(declare-fun sudoku<5><3> () Int) +(declare-fun sudoku<5><2> () Int) +(declare-fun sudoku<5><1> () Int) +(declare-fun sudoku<5><0> () Int) +(declare-fun sudoku<4><4> () Int) +(declare-fun sudoku<4><3> () Int) +(declare-fun sudoku<4><2> () Int) +(declare-fun sudoku<4><1> () Int) +(declare-fun sudoku<4><0> () Int) +(declare-fun sudoku<3><4> () Int) +(declare-fun sudoku<3><3> () Int) +(declare-fun sudoku<3><2> () Int) +(declare-fun sudoku<3><1> () Int) +(declare-fun sudoku<3><0> () Int) +(declare-fun sudoku<2><4> () Int) +(declare-fun sudoku<2><3> () Int) +(declare-fun sudoku<2><2> () Int) +(declare-fun sudoku<2><1> () Int) +(declare-fun sudoku<2><0> () Int) +(declare-fun sudoku<1><4> () Int) +(declare-fun sudoku<1><3> () Int) +(declare-fun sudoku<1><2> () Int) +(declare-fun sudoku<1><1> () Int) +(declare-fun sudoku<1><0> () Int) +(declare-fun sudoku<0><4> () Int) +(declare-fun sudoku<0><3> () Int) +(declare-fun sudoku<0><2> () Int) +(declare-fun sudoku<0><1> () Int) +(declare-fun sudoku<0><0> () Int) +(assert + (let (($x2873 (and (distinct sudoku<20><20> sudoku<20><21> sudoku<20><22> sudoku<20><23> sudoku<20><24> sudoku<21><20> sudoku<21><21> sudoku<21><22> sudoku<21><23> sudoku<21><24> sudoku<22><20> sudoku<22><21> sudoku<22><22> sudoku<22><23> sudoku<22><24> sudoku<23><20> sudoku<23><21> sudoku<23><22> sudoku<23><23> sudoku<23><24> sudoku<24><20> sudoku<24><21> sudoku<24><22> sudoku<24><23> sudoku<24><24>) true))) + (let (($x2872 (and (distinct sudoku<15><20> sudoku<15><21> sudoku<15><22> sudoku<15><23> sudoku<15><24> sudoku<16><20> sudoku<16><21> sudoku<16><22> sudoku<16><23> sudoku<16><24> sudoku<17><20> sudoku<17><21> sudoku<17><22> sudoku<17><23> sudoku<17><24> sudoku<18><20> sudoku<18><21> sudoku<18><22> sudoku<18><23> sudoku<18><24> sudoku<19><20> sudoku<19><21> sudoku<19><22> sudoku<19><23> sudoku<19><24>) true))) + (let (($x2871 (and (distinct sudoku<10><20> sudoku<10><21> sudoku<10><22> sudoku<10><23> sudoku<10><24> sudoku<11><20> sudoku<11><21> sudoku<11><22> sudoku<11><23> sudoku<11><24> sudoku<12><20> sudoku<12><21> sudoku<12><22> sudoku<12><23> sudoku<12><24> sudoku<13><20> sudoku<13><21> sudoku<13><22> sudoku<13><23> sudoku<13><24> sudoku<14><20> sudoku<14><21> sudoku<14><22> sudoku<14><23> sudoku<14><24>) true))) + (let (($x2870 (and (distinct sudoku<5><20> sudoku<5><21> sudoku<5><22> sudoku<5><23> sudoku<5><24> sudoku<6><20> sudoku<6><21> sudoku<6><22> sudoku<6><23> sudoku<6><24> sudoku<7><20> sudoku<7><21> sudoku<7><22> sudoku<7><23> sudoku<7><24> sudoku<8><20> sudoku<8><21> sudoku<8><22> sudoku<8><23> sudoku<8><24> sudoku<9><20> sudoku<9><21> sudoku<9><22> sudoku<9><23> sudoku<9><24>) true))) + (let (($x2869 (and (distinct sudoku<0><20> sudoku<0><21> sudoku<0><22> sudoku<0><23> sudoku<0><24> sudoku<1><20> sudoku<1><21> sudoku<1><22> sudoku<1><23> sudoku<1><24> sudoku<2><20> sudoku<2><21> sudoku<2><22> sudoku<2><23> sudoku<2><24> sudoku<3><20> sudoku<3><21> sudoku<3><22> sudoku<3><23> sudoku<3><24> sudoku<4><20> sudoku<4><21> sudoku<4><22> sudoku<4><23> sudoku<4><24>) true))) + (let (($x2868 (and (distinct sudoku<20><15> sudoku<20><16> sudoku<20><17> sudoku<20><18> sudoku<20><19> sudoku<21><15> sudoku<21><16> sudoku<21><17> sudoku<21><18> sudoku<21><19> sudoku<22><15> sudoku<22><16> sudoku<22><17> sudoku<22><18> sudoku<22><19> sudoku<23><15> sudoku<23><16> sudoku<23><17> sudoku<23><18> sudoku<23><19> sudoku<24><15> sudoku<24><16> sudoku<24><17> sudoku<24><18> sudoku<24><19>) true))) + (let (($x2867 (and (distinct sudoku<15><15> sudoku<15><16> sudoku<15><17> sudoku<15><18> sudoku<15><19> sudoku<16><15> sudoku<16><16> sudoku<16><17> sudoku<16><18> sudoku<16><19> sudoku<17><15> sudoku<17><16> sudoku<17><17> sudoku<17><18> sudoku<17><19> sudoku<18><15> sudoku<18><16> sudoku<18><17> sudoku<18><18> sudoku<18><19> sudoku<19><15> sudoku<19><16> sudoku<19><17> sudoku<19><18> sudoku<19><19>) true))) + (let (($x2866 (and (distinct sudoku<10><15> sudoku<10><16> sudoku<10><17> sudoku<10><18> sudoku<10><19> sudoku<11><15> sudoku<11><16> sudoku<11><17> sudoku<11><18> sudoku<11><19> sudoku<12><15> sudoku<12><16> sudoku<12><17> sudoku<12><18> sudoku<12><19> sudoku<13><15> sudoku<13><16> sudoku<13><17> sudoku<13><18> sudoku<13><19> sudoku<14><15> sudoku<14><16> sudoku<14><17> sudoku<14><18> sudoku<14><19>) true))) + (let (($x2865 (and (distinct sudoku<5><15> sudoku<5><16> sudoku<5><17> sudoku<5><18> sudoku<5><19> sudoku<6><15> sudoku<6><16> sudoku<6><17> sudoku<6><18> sudoku<6><19> sudoku<7><15> sudoku<7><16> sudoku<7><17> sudoku<7><18> sudoku<7><19> sudoku<8><15> sudoku<8><16> sudoku<8><17> sudoku<8><18> sudoku<8><19> sudoku<9><15> sudoku<9><16> sudoku<9><17> sudoku<9><18> sudoku<9><19>) true))) + (let (($x2864 (and (distinct sudoku<0><15> sudoku<0><16> sudoku<0><17> sudoku<0><18> sudoku<0><19> sudoku<1><15> sudoku<1><16> sudoku<1><17> sudoku<1><18> sudoku<1><19> sudoku<2><15> sudoku<2><16> sudoku<2><17> sudoku<2><18> sudoku<2><19> sudoku<3><15> sudoku<3><16> sudoku<3><17> sudoku<3><18> sudoku<3><19> sudoku<4><15> sudoku<4><16> sudoku<4><17> sudoku<4><18> sudoku<4><19>) true))) + (let (($x2863 (and (distinct sudoku<20><10> sudoku<20><11> sudoku<20><12> sudoku<20><13> sudoku<20><14> sudoku<21><10> sudoku<21><11> sudoku<21><12> sudoku<21><13> sudoku<21><14> sudoku<22><10> sudoku<22><11> sudoku<22><12> sudoku<22><13> sudoku<22><14> sudoku<23><10> sudoku<23><11> sudoku<23><12> sudoku<23><13> sudoku<23><14> sudoku<24><10> sudoku<24><11> sudoku<24><12> sudoku<24><13> sudoku<24><14>) true))) + (let (($x2862 (and (distinct sudoku<15><10> sudoku<15><11> sudoku<15><12> sudoku<15><13> sudoku<15><14> sudoku<16><10> sudoku<16><11> sudoku<16><12> sudoku<16><13> sudoku<16><14> sudoku<17><10> sudoku<17><11> sudoku<17><12> sudoku<17><13> sudoku<17><14> sudoku<18><10> sudoku<18><11> sudoku<18><12> sudoku<18><13> sudoku<18><14> sudoku<19><10> sudoku<19><11> sudoku<19><12> sudoku<19><13> sudoku<19><14>) true))) + (let (($x2861 (and (distinct sudoku<10><10> sudoku<10><11> sudoku<10><12> sudoku<10><13> sudoku<10><14> sudoku<11><10> sudoku<11><11> sudoku<11><12> sudoku<11><13> sudoku<11><14> sudoku<12><10> sudoku<12><11> sudoku<12><12> sudoku<12><13> sudoku<12><14> sudoku<13><10> sudoku<13><11> sudoku<13><12> sudoku<13><13> sudoku<13><14> sudoku<14><10> sudoku<14><11> sudoku<14><12> sudoku<14><13> sudoku<14><14>) true))) + (let (($x2860 (and (distinct sudoku<5><10> sudoku<5><11> sudoku<5><12> sudoku<5><13> sudoku<5><14> sudoku<6><10> sudoku<6><11> sudoku<6><12> sudoku<6><13> sudoku<6><14> sudoku<7><10> sudoku<7><11> sudoku<7><12> sudoku<7><13> sudoku<7><14> sudoku<8><10> sudoku<8><11> sudoku<8><12> sudoku<8><13> sudoku<8><14> sudoku<9><10> sudoku<9><11> sudoku<9><12> sudoku<9><13> sudoku<9><14>) true))) + (let (($x2859 (and (distinct sudoku<0><10> sudoku<0><11> sudoku<0><12> sudoku<0><13> sudoku<0><14> sudoku<1><10> sudoku<1><11> sudoku<1><12> sudoku<1><13> sudoku<1><14> sudoku<2><10> sudoku<2><11> sudoku<2><12> sudoku<2><13> sudoku<2><14> sudoku<3><10> sudoku<3><11> sudoku<3><12> sudoku<3><13> sudoku<3><14> sudoku<4><10> sudoku<4><11> sudoku<4><12> sudoku<4><13> sudoku<4><14>) true))) + (let (($x2858 (and (distinct sudoku<20><5> sudoku<20><6> sudoku<20><7> sudoku<20><8> sudoku<20><9> sudoku<21><5> sudoku<21><6> sudoku<21><7> sudoku<21><8> sudoku<21><9> sudoku<22><5> sudoku<22><6> sudoku<22><7> sudoku<22><8> sudoku<22><9> sudoku<23><5> sudoku<23><6> sudoku<23><7> sudoku<23><8> sudoku<23><9> sudoku<24><5> sudoku<24><6> sudoku<24><7> sudoku<24><8> sudoku<24><9>) true))) + (let (($x2857 (and (distinct sudoku<15><5> sudoku<15><6> sudoku<15><7> sudoku<15><8> sudoku<15><9> sudoku<16><5> sudoku<16><6> sudoku<16><7> sudoku<16><8> sudoku<16><9> sudoku<17><5> sudoku<17><6> sudoku<17><7> sudoku<17><8> sudoku<17><9> sudoku<18><5> sudoku<18><6> sudoku<18><7> sudoku<18><8> sudoku<18><9> sudoku<19><5> sudoku<19><6> sudoku<19><7> sudoku<19><8> sudoku<19><9>) true))) + (let (($x2856 (and (distinct sudoku<10><5> sudoku<10><6> sudoku<10><7> sudoku<10><8> sudoku<10><9> sudoku<11><5> sudoku<11><6> sudoku<11><7> sudoku<11><8> sudoku<11><9> sudoku<12><5> sudoku<12><6> sudoku<12><7> sudoku<12><8> sudoku<12><9> sudoku<13><5> sudoku<13><6> sudoku<13><7> sudoku<13><8> sudoku<13><9> sudoku<14><5> sudoku<14><6> sudoku<14><7> sudoku<14><8> sudoku<14><9>) true))) + (let (($x2855 (and (distinct sudoku<5><5> sudoku<5><6> sudoku<5><7> sudoku<5><8> sudoku<5><9> sudoku<6><5> sudoku<6><6> sudoku<6><7> sudoku<6><8> sudoku<6><9> sudoku<7><5> sudoku<7><6> sudoku<7><7> sudoku<7><8> sudoku<7><9> sudoku<8><5> sudoku<8><6> sudoku<8><7> sudoku<8><8> sudoku<8><9> sudoku<9><5> sudoku<9><6> sudoku<9><7> sudoku<9><8> sudoku<9><9>) true))) + (let (($x2854 (and (distinct sudoku<0><5> sudoku<0><6> sudoku<0><7> sudoku<0><8> sudoku<0><9> sudoku<1><5> sudoku<1><6> sudoku<1><7> sudoku<1><8> sudoku<1><9> sudoku<2><5> sudoku<2><6> sudoku<2><7> sudoku<2><8> sudoku<2><9> sudoku<3><5> sudoku<3><6> sudoku<3><7> sudoku<3><8> sudoku<3><9> sudoku<4><5> sudoku<4><6> sudoku<4><7> sudoku<4><8> sudoku<4><9>) true))) + (let (($x2853 (and (distinct sudoku<20><0> sudoku<20><1> sudoku<20><2> sudoku<20><3> sudoku<20><4> sudoku<21><0> sudoku<21><1> sudoku<21><2> sudoku<21><3> sudoku<21><4> sudoku<22><0> sudoku<22><1> sudoku<22><2> sudoku<22><3> sudoku<22><4> sudoku<23><0> sudoku<23><1> sudoku<23><2> sudoku<23><3> sudoku<23><4> sudoku<24><0> sudoku<24><1> sudoku<24><2> sudoku<24><3> sudoku<24><4>) true))) + (let (($x2852 (and (distinct sudoku<15><0> sudoku<15><1> sudoku<15><2> sudoku<15><3> sudoku<15><4> sudoku<16><0> sudoku<16><1> sudoku<16><2> sudoku<16><3> sudoku<16><4> sudoku<17><0> sudoku<17><1> sudoku<17><2> sudoku<17><3> sudoku<17><4> sudoku<18><0> sudoku<18><1> sudoku<18><2> sudoku<18><3> sudoku<18><4> sudoku<19><0> sudoku<19><1> sudoku<19><2> sudoku<19><3> sudoku<19><4>) true))) + (let (($x2851 (and (distinct sudoku<10><0> sudoku<10><1> sudoku<10><2> sudoku<10><3> sudoku<10><4> sudoku<11><0> sudoku<11><1> sudoku<11><2> sudoku<11><3> sudoku<11><4> sudoku<12><0> sudoku<12><1> sudoku<12><2> sudoku<12><3> sudoku<12><4> sudoku<13><0> sudoku<13><1> sudoku<13><2> sudoku<13><3> sudoku<13><4> sudoku<14><0> sudoku<14><1> sudoku<14><2> sudoku<14><3> sudoku<14><4>) true))) + (let (($x2850 (and (distinct sudoku<5><0> sudoku<5><1> sudoku<5><2> sudoku<5><3> sudoku<5><4> sudoku<6><0> sudoku<6><1> sudoku<6><2> sudoku<6><3> sudoku<6><4> sudoku<7><0> sudoku<7><1> sudoku<7><2> sudoku<7><3> sudoku<7><4> sudoku<8><0> sudoku<8><1> sudoku<8><2> sudoku<8><3> sudoku<8><4> sudoku<9><0> sudoku<9><1> sudoku<9><2> sudoku<9><3> sudoku<9><4>) true))) + (let (($x2849 (and (distinct sudoku<0><0> sudoku<0><1> sudoku<0><2> sudoku<0><3> sudoku<0><4> sudoku<1><0> sudoku<1><1> sudoku<1><2> sudoku<1><3> sudoku<1><4> sudoku<2><0> sudoku<2><1> sudoku<2><2> sudoku<2><3> sudoku<2><4> sudoku<3><0> sudoku<3><1> sudoku<3><2> sudoku<3><3> sudoku<3><4> sudoku<4><0> sudoku<4><1> sudoku<4><2> sudoku<4><3> sudoku<4><4>) true))) + (let (($x2848 (and (distinct sudoku<0><24> sudoku<1><24> sudoku<2><24> sudoku<3><24> sudoku<4><24> sudoku<5><24> sudoku<6><24> sudoku<7><24> sudoku<8><24> sudoku<9><24> sudoku<10><24> sudoku<11><24> sudoku<12><24> sudoku<13><24> sudoku<14><24> sudoku<15><24> sudoku<16><24> sudoku<17><24> sudoku<18><24> sudoku<19><24> sudoku<20><24> sudoku<21><24> sudoku<22><24> sudoku<23><24> sudoku<24><24>) true))) + (let (($x2847 (and (distinct sudoku<24><0> sudoku<24><1> sudoku<24><2> sudoku<24><3> sudoku<24><4> sudoku<24><5> sudoku<24><6> sudoku<24><7> sudoku<24><8> sudoku<24><9> sudoku<24><10> sudoku<24><11> sudoku<24><12> sudoku<24><13> sudoku<24><14> sudoku<24><15> sudoku<24><16> sudoku<24><17> sudoku<24><18> sudoku<24><19> sudoku<24><20> sudoku<24><21> sudoku<24><22> sudoku<24><23> sudoku<24><24>) true))) + (let (($x2846 (and (distinct sudoku<0><23> sudoku<1><23> sudoku<2><23> sudoku<3><23> sudoku<4><23> sudoku<5><23> sudoku<6><23> sudoku<7><23> sudoku<8><23> sudoku<9><23> sudoku<10><23> sudoku<11><23> sudoku<12><23> sudoku<13><23> sudoku<14><23> sudoku<15><23> sudoku<16><23> sudoku<17><23> sudoku<18><23> sudoku<19><23> sudoku<20><23> sudoku<21><23> sudoku<22><23> sudoku<23><23> sudoku<24><23>) true))) + (let (($x2845 (and (distinct sudoku<23><0> sudoku<23><1> sudoku<23><2> sudoku<23><3> sudoku<23><4> sudoku<23><5> sudoku<23><6> sudoku<23><7> sudoku<23><8> sudoku<23><9> sudoku<23><10> sudoku<23><11> sudoku<23><12> sudoku<23><13> sudoku<23><14> sudoku<23><15> sudoku<23><16> sudoku<23><17> sudoku<23><18> sudoku<23><19> sudoku<23><20> sudoku<23><21> sudoku<23><22> sudoku<23><23> sudoku<23><24>) true))) + (let (($x2844 (and (distinct sudoku<0><22> sudoku<1><22> sudoku<2><22> sudoku<3><22> sudoku<4><22> sudoku<5><22> sudoku<6><22> sudoku<7><22> sudoku<8><22> sudoku<9><22> sudoku<10><22> sudoku<11><22> sudoku<12><22> sudoku<13><22> sudoku<14><22> sudoku<15><22> sudoku<16><22> sudoku<17><22> sudoku<18><22> sudoku<19><22> sudoku<20><22> sudoku<21><22> sudoku<22><22> sudoku<23><22> sudoku<24><22>) true))) + (let (($x2843 (and (distinct sudoku<22><0> sudoku<22><1> sudoku<22><2> sudoku<22><3> sudoku<22><4> sudoku<22><5> sudoku<22><6> sudoku<22><7> sudoku<22><8> sudoku<22><9> sudoku<22><10> sudoku<22><11> sudoku<22><12> sudoku<22><13> sudoku<22><14> sudoku<22><15> sudoku<22><16> sudoku<22><17> sudoku<22><18> sudoku<22><19> sudoku<22><20> sudoku<22><21> sudoku<22><22> sudoku<22><23> sudoku<22><24>) true))) + (let (($x2842 (and (distinct sudoku<0><21> sudoku<1><21> sudoku<2><21> sudoku<3><21> sudoku<4><21> sudoku<5><21> sudoku<6><21> sudoku<7><21> sudoku<8><21> sudoku<9><21> sudoku<10><21> sudoku<11><21> sudoku<12><21> sudoku<13><21> sudoku<14><21> sudoku<15><21> sudoku<16><21> sudoku<17><21> sudoku<18><21> sudoku<19><21> sudoku<20><21> sudoku<21><21> sudoku<22><21> sudoku<23><21> sudoku<24><21>) true))) + (let (($x2841 (and (distinct sudoku<21><0> sudoku<21><1> sudoku<21><2> sudoku<21><3> sudoku<21><4> sudoku<21><5> sudoku<21><6> sudoku<21><7> sudoku<21><8> sudoku<21><9> sudoku<21><10> sudoku<21><11> sudoku<21><12> sudoku<21><13> sudoku<21><14> sudoku<21><15> sudoku<21><16> sudoku<21><17> sudoku<21><18> sudoku<21><19> sudoku<21><20> sudoku<21><21> sudoku<21><22> sudoku<21><23> sudoku<21><24>) true))) + (let (($x2840 (and (distinct sudoku<0><20> sudoku<1><20> sudoku<2><20> sudoku<3><20> sudoku<4><20> sudoku<5><20> sudoku<6><20> sudoku<7><20> sudoku<8><20> sudoku<9><20> sudoku<10><20> sudoku<11><20> sudoku<12><20> sudoku<13><20> sudoku<14><20> sudoku<15><20> sudoku<16><20> sudoku<17><20> sudoku<18><20> sudoku<19><20> sudoku<20><20> sudoku<21><20> sudoku<22><20> sudoku<23><20> sudoku<24><20>) true))) + (let (($x2839 (and (distinct sudoku<20><0> sudoku<20><1> sudoku<20><2> sudoku<20><3> sudoku<20><4> sudoku<20><5> sudoku<20><6> sudoku<20><7> sudoku<20><8> sudoku<20><9> sudoku<20><10> sudoku<20><11> sudoku<20><12> sudoku<20><13> sudoku<20><14> sudoku<20><15> sudoku<20><16> sudoku<20><17> sudoku<20><18> sudoku<20><19> sudoku<20><20> sudoku<20><21> sudoku<20><22> sudoku<20><23> sudoku<20><24>) true))) + (let (($x2838 (and (distinct sudoku<0><19> sudoku<1><19> sudoku<2><19> sudoku<3><19> sudoku<4><19> sudoku<5><19> sudoku<6><19> sudoku<7><19> sudoku<8><19> sudoku<9><19> sudoku<10><19> sudoku<11><19> sudoku<12><19> sudoku<13><19> sudoku<14><19> sudoku<15><19> sudoku<16><19> sudoku<17><19> sudoku<18><19> sudoku<19><19> sudoku<20><19> sudoku<21><19> sudoku<22><19> sudoku<23><19> sudoku<24><19>) true))) + (let (($x2837 (and (distinct sudoku<19><0> sudoku<19><1> sudoku<19><2> sudoku<19><3> sudoku<19><4> sudoku<19><5> sudoku<19><6> sudoku<19><7> sudoku<19><8> sudoku<19><9> sudoku<19><10> sudoku<19><11> sudoku<19><12> sudoku<19><13> sudoku<19><14> sudoku<19><15> sudoku<19><16> sudoku<19><17> sudoku<19><18> sudoku<19><19> sudoku<19><20> sudoku<19><21> sudoku<19><22> sudoku<19><23> sudoku<19><24>) true))) + (let (($x2836 (and (distinct sudoku<0><18> sudoku<1><18> sudoku<2><18> sudoku<3><18> sudoku<4><18> sudoku<5><18> sudoku<6><18> sudoku<7><18> sudoku<8><18> sudoku<9><18> sudoku<10><18> sudoku<11><18> sudoku<12><18> sudoku<13><18> sudoku<14><18> sudoku<15><18> sudoku<16><18> sudoku<17><18> sudoku<18><18> sudoku<19><18> sudoku<20><18> sudoku<21><18> sudoku<22><18> sudoku<23><18> sudoku<24><18>) true))) + (let (($x2835 (and (distinct sudoku<18><0> sudoku<18><1> sudoku<18><2> sudoku<18><3> sudoku<18><4> sudoku<18><5> sudoku<18><6> sudoku<18><7> sudoku<18><8> sudoku<18><9> sudoku<18><10> sudoku<18><11> sudoku<18><12> sudoku<18><13> sudoku<18><14> sudoku<18><15> sudoku<18><16> sudoku<18><17> sudoku<18><18> sudoku<18><19> sudoku<18><20> sudoku<18><21> sudoku<18><22> sudoku<18><23> sudoku<18><24>) true))) + (let (($x2834 (and (distinct sudoku<0><17> sudoku<1><17> sudoku<2><17> sudoku<3><17> sudoku<4><17> sudoku<5><17> sudoku<6><17> sudoku<7><17> sudoku<8><17> sudoku<9><17> sudoku<10><17> sudoku<11><17> sudoku<12><17> sudoku<13><17> sudoku<14><17> sudoku<15><17> sudoku<16><17> sudoku<17><17> sudoku<18><17> sudoku<19><17> sudoku<20><17> sudoku<21><17> sudoku<22><17> sudoku<23><17> sudoku<24><17>) true))) + (let (($x2833 (and (distinct sudoku<17><0> sudoku<17><1> sudoku<17><2> sudoku<17><3> sudoku<17><4> sudoku<17><5> sudoku<17><6> sudoku<17><7> sudoku<17><8> sudoku<17><9> sudoku<17><10> sudoku<17><11> sudoku<17><12> sudoku<17><13> sudoku<17><14> sudoku<17><15> sudoku<17><16> sudoku<17><17> sudoku<17><18> sudoku<17><19> sudoku<17><20> sudoku<17><21> sudoku<17><22> sudoku<17><23> sudoku<17><24>) true))) + (let (($x2832 (and (distinct sudoku<0><16> sudoku<1><16> sudoku<2><16> sudoku<3><16> sudoku<4><16> sudoku<5><16> sudoku<6><16> sudoku<7><16> sudoku<8><16> sudoku<9><16> sudoku<10><16> sudoku<11><16> sudoku<12><16> sudoku<13><16> sudoku<14><16> sudoku<15><16> sudoku<16><16> sudoku<17><16> sudoku<18><16> sudoku<19><16> sudoku<20><16> sudoku<21><16> sudoku<22><16> sudoku<23><16> sudoku<24><16>) true))) + (let (($x2831 (and (distinct sudoku<16><0> sudoku<16><1> sudoku<16><2> sudoku<16><3> sudoku<16><4> sudoku<16><5> sudoku<16><6> sudoku<16><7> sudoku<16><8> sudoku<16><9> sudoku<16><10> sudoku<16><11> sudoku<16><12> sudoku<16><13> sudoku<16><14> sudoku<16><15> sudoku<16><16> sudoku<16><17> sudoku<16><18> sudoku<16><19> sudoku<16><20> sudoku<16><21> sudoku<16><22> sudoku<16><23> sudoku<16><24>) true))) + (let (($x2830 (and (distinct sudoku<0><15> sudoku<1><15> sudoku<2><15> sudoku<3><15> sudoku<4><15> sudoku<5><15> sudoku<6><15> sudoku<7><15> sudoku<8><15> sudoku<9><15> sudoku<10><15> sudoku<11><15> sudoku<12><15> sudoku<13><15> sudoku<14><15> sudoku<15><15> sudoku<16><15> sudoku<17><15> sudoku<18><15> sudoku<19><15> sudoku<20><15> sudoku<21><15> sudoku<22><15> sudoku<23><15> sudoku<24><15>) true))) + (let (($x2829 (and (distinct sudoku<15><0> sudoku<15><1> sudoku<15><2> sudoku<15><3> sudoku<15><4> sudoku<15><5> sudoku<15><6> sudoku<15><7> sudoku<15><8> sudoku<15><9> sudoku<15><10> sudoku<15><11> sudoku<15><12> sudoku<15><13> sudoku<15><14> sudoku<15><15> sudoku<15><16> sudoku<15><17> sudoku<15><18> sudoku<15><19> sudoku<15><20> sudoku<15><21> sudoku<15><22> sudoku<15><23> sudoku<15><24>) true))) + (let (($x2828 (and (distinct sudoku<0><14> sudoku<1><14> sudoku<2><14> sudoku<3><14> sudoku<4><14> sudoku<5><14> sudoku<6><14> sudoku<7><14> sudoku<8><14> sudoku<9><14> sudoku<10><14> sudoku<11><14> sudoku<12><14> sudoku<13><14> sudoku<14><14> sudoku<15><14> sudoku<16><14> sudoku<17><14> sudoku<18><14> sudoku<19><14> sudoku<20><14> sudoku<21><14> sudoku<22><14> sudoku<23><14> sudoku<24><14>) true))) + (let (($x2827 (and (distinct sudoku<14><0> sudoku<14><1> sudoku<14><2> sudoku<14><3> sudoku<14><4> sudoku<14><5> sudoku<14><6> sudoku<14><7> sudoku<14><8> sudoku<14><9> sudoku<14><10> sudoku<14><11> sudoku<14><12> sudoku<14><13> sudoku<14><14> sudoku<14><15> sudoku<14><16> sudoku<14><17> sudoku<14><18> sudoku<14><19> sudoku<14><20> sudoku<14><21> sudoku<14><22> sudoku<14><23> sudoku<14><24>) true))) + (let (($x2826 (and (distinct sudoku<0><13> sudoku<1><13> sudoku<2><13> sudoku<3><13> sudoku<4><13> sudoku<5><13> sudoku<6><13> sudoku<7><13> sudoku<8><13> sudoku<9><13> sudoku<10><13> sudoku<11><13> sudoku<12><13> sudoku<13><13> sudoku<14><13> sudoku<15><13> sudoku<16><13> sudoku<17><13> sudoku<18><13> sudoku<19><13> sudoku<20><13> sudoku<21><13> sudoku<22><13> sudoku<23><13> sudoku<24><13>) true))) + (let (($x2825 (and (distinct sudoku<13><0> sudoku<13><1> sudoku<13><2> sudoku<13><3> sudoku<13><4> sudoku<13><5> sudoku<13><6> sudoku<13><7> sudoku<13><8> sudoku<13><9> sudoku<13><10> sudoku<13><11> sudoku<13><12> sudoku<13><13> sudoku<13><14> sudoku<13><15> sudoku<13><16> sudoku<13><17> sudoku<13><18> sudoku<13><19> sudoku<13><20> sudoku<13><21> sudoku<13><22> sudoku<13><23> sudoku<13><24>) true))) + (let (($x2824 (and (distinct sudoku<0><12> sudoku<1><12> sudoku<2><12> sudoku<3><12> sudoku<4><12> sudoku<5><12> sudoku<6><12> sudoku<7><12> sudoku<8><12> sudoku<9><12> sudoku<10><12> sudoku<11><12> sudoku<12><12> sudoku<13><12> sudoku<14><12> sudoku<15><12> sudoku<16><12> sudoku<17><12> sudoku<18><12> sudoku<19><12> sudoku<20><12> sudoku<21><12> sudoku<22><12> sudoku<23><12> sudoku<24><12>) true))) + (let (($x2823 (and (distinct sudoku<12><0> sudoku<12><1> sudoku<12><2> sudoku<12><3> sudoku<12><4> sudoku<12><5> sudoku<12><6> sudoku<12><7> sudoku<12><8> sudoku<12><9> sudoku<12><10> sudoku<12><11> sudoku<12><12> sudoku<12><13> sudoku<12><14> sudoku<12><15> sudoku<12><16> sudoku<12><17> sudoku<12><18> sudoku<12><19> sudoku<12><20> sudoku<12><21> sudoku<12><22> sudoku<12><23> sudoku<12><24>) true))) + (let (($x2822 (and (distinct sudoku<0><11> sudoku<1><11> sudoku<2><11> sudoku<3><11> sudoku<4><11> sudoku<5><11> sudoku<6><11> sudoku<7><11> sudoku<8><11> sudoku<9><11> sudoku<10><11> sudoku<11><11> sudoku<12><11> sudoku<13><11> sudoku<14><11> sudoku<15><11> sudoku<16><11> sudoku<17><11> sudoku<18><11> sudoku<19><11> sudoku<20><11> sudoku<21><11> sudoku<22><11> sudoku<23><11> sudoku<24><11>) true))) + (let (($x2821 (and (distinct sudoku<11><0> sudoku<11><1> sudoku<11><2> sudoku<11><3> sudoku<11><4> sudoku<11><5> sudoku<11><6> sudoku<11><7> sudoku<11><8> sudoku<11><9> sudoku<11><10> sudoku<11><11> sudoku<11><12> sudoku<11><13> sudoku<11><14> sudoku<11><15> sudoku<11><16> sudoku<11><17> sudoku<11><18> sudoku<11><19> sudoku<11><20> sudoku<11><21> sudoku<11><22> sudoku<11><23> sudoku<11><24>) true))) + (let (($x2820 (and (distinct sudoku<0><10> sudoku<1><10> sudoku<2><10> sudoku<3><10> sudoku<4><10> sudoku<5><10> sudoku<6><10> sudoku<7><10> sudoku<8><10> sudoku<9><10> sudoku<10><10> sudoku<11><10> sudoku<12><10> sudoku<13><10> sudoku<14><10> sudoku<15><10> sudoku<16><10> sudoku<17><10> sudoku<18><10> sudoku<19><10> sudoku<20><10> sudoku<21><10> sudoku<22><10> sudoku<23><10> sudoku<24><10>) true))) + (let (($x2819 (and (distinct sudoku<10><0> sudoku<10><1> sudoku<10><2> sudoku<10><3> sudoku<10><4> sudoku<10><5> sudoku<10><6> sudoku<10><7> sudoku<10><8> sudoku<10><9> sudoku<10><10> sudoku<10><11> sudoku<10><12> sudoku<10><13> sudoku<10><14> sudoku<10><15> sudoku<10><16> sudoku<10><17> sudoku<10><18> sudoku<10><19> sudoku<10><20> sudoku<10><21> sudoku<10><22> sudoku<10><23> sudoku<10><24>) true))) + (let (($x2818 (and (distinct sudoku<0><9> sudoku<1><9> sudoku<2><9> sudoku<3><9> sudoku<4><9> sudoku<5><9> sudoku<6><9> sudoku<7><9> sudoku<8><9> sudoku<9><9> sudoku<10><9> sudoku<11><9> sudoku<12><9> sudoku<13><9> sudoku<14><9> sudoku<15><9> sudoku<16><9> sudoku<17><9> sudoku<18><9> sudoku<19><9> sudoku<20><9> sudoku<21><9> sudoku<22><9> sudoku<23><9> sudoku<24><9>) true))) + (let (($x2817 (and (distinct sudoku<9><0> sudoku<9><1> sudoku<9><2> sudoku<9><3> sudoku<9><4> sudoku<9><5> sudoku<9><6> sudoku<9><7> sudoku<9><8> sudoku<9><9> sudoku<9><10> sudoku<9><11> sudoku<9><12> sudoku<9><13> sudoku<9><14> sudoku<9><15> sudoku<9><16> sudoku<9><17> sudoku<9><18> sudoku<9><19> sudoku<9><20> sudoku<9><21> sudoku<9><22> sudoku<9><23> sudoku<9><24>) true))) + (let (($x2816 (and (distinct sudoku<0><8> sudoku<1><8> sudoku<2><8> sudoku<3><8> sudoku<4><8> sudoku<5><8> sudoku<6><8> sudoku<7><8> sudoku<8><8> sudoku<9><8> sudoku<10><8> sudoku<11><8> sudoku<12><8> sudoku<13><8> sudoku<14><8> sudoku<15><8> sudoku<16><8> sudoku<17><8> sudoku<18><8> sudoku<19><8> sudoku<20><8> sudoku<21><8> sudoku<22><8> sudoku<23><8> sudoku<24><8>) true))) + (let (($x2815 (and (distinct sudoku<8><0> sudoku<8><1> sudoku<8><2> sudoku<8><3> sudoku<8><4> sudoku<8><5> sudoku<8><6> sudoku<8><7> sudoku<8><8> sudoku<8><9> sudoku<8><10> sudoku<8><11> sudoku<8><12> sudoku<8><13> sudoku<8><14> sudoku<8><15> sudoku<8><16> sudoku<8><17> sudoku<8><18> sudoku<8><19> sudoku<8><20> sudoku<8><21> sudoku<8><22> sudoku<8><23> sudoku<8><24>) true))) + (let (($x2814 (and (distinct sudoku<0><7> sudoku<1><7> sudoku<2><7> sudoku<3><7> sudoku<4><7> sudoku<5><7> sudoku<6><7> sudoku<7><7> sudoku<8><7> sudoku<9><7> sudoku<10><7> sudoku<11><7> sudoku<12><7> sudoku<13><7> sudoku<14><7> sudoku<15><7> sudoku<16><7> sudoku<17><7> sudoku<18><7> sudoku<19><7> sudoku<20><7> sudoku<21><7> sudoku<22><7> sudoku<23><7> sudoku<24><7>) true))) + (let (($x2813 (and (distinct sudoku<7><0> sudoku<7><1> sudoku<7><2> sudoku<7><3> sudoku<7><4> sudoku<7><5> sudoku<7><6> sudoku<7><7> sudoku<7><8> sudoku<7><9> sudoku<7><10> sudoku<7><11> sudoku<7><12> sudoku<7><13> sudoku<7><14> sudoku<7><15> sudoku<7><16> sudoku<7><17> sudoku<7><18> sudoku<7><19> sudoku<7><20> sudoku<7><21> sudoku<7><22> sudoku<7><23> sudoku<7><24>) true))) + (let (($x2812 (and (distinct sudoku<0><6> sudoku<1><6> sudoku<2><6> sudoku<3><6> sudoku<4><6> sudoku<5><6> sudoku<6><6> sudoku<7><6> sudoku<8><6> sudoku<9><6> sudoku<10><6> sudoku<11><6> sudoku<12><6> sudoku<13><6> sudoku<14><6> sudoku<15><6> sudoku<16><6> sudoku<17><6> sudoku<18><6> sudoku<19><6> sudoku<20><6> sudoku<21><6> sudoku<22><6> sudoku<23><6> sudoku<24><6>) true))) + (let (($x2811 (and (distinct sudoku<6><0> sudoku<6><1> sudoku<6><2> sudoku<6><3> sudoku<6><4> sudoku<6><5> sudoku<6><6> sudoku<6><7> sudoku<6><8> sudoku<6><9> sudoku<6><10> sudoku<6><11> sudoku<6><12> sudoku<6><13> sudoku<6><14> sudoku<6><15> sudoku<6><16> sudoku<6><17> sudoku<6><18> sudoku<6><19> sudoku<6><20> sudoku<6><21> sudoku<6><22> sudoku<6><23> sudoku<6><24>) true))) + (let (($x2810 (and (distinct sudoku<0><5> sudoku<1><5> sudoku<2><5> sudoku<3><5> sudoku<4><5> sudoku<5><5> sudoku<6><5> sudoku<7><5> sudoku<8><5> sudoku<9><5> sudoku<10><5> sudoku<11><5> sudoku<12><5> sudoku<13><5> sudoku<14><5> sudoku<15><5> sudoku<16><5> sudoku<17><5> sudoku<18><5> sudoku<19><5> sudoku<20><5> sudoku<21><5> sudoku<22><5> sudoku<23><5> sudoku<24><5>) true))) + (let (($x2809 (and (distinct sudoku<5><0> sudoku<5><1> sudoku<5><2> sudoku<5><3> sudoku<5><4> sudoku<5><5> sudoku<5><6> sudoku<5><7> sudoku<5><8> sudoku<5><9> sudoku<5><10> sudoku<5><11> sudoku<5><12> sudoku<5><13> sudoku<5><14> sudoku<5><15> sudoku<5><16> sudoku<5><17> sudoku<5><18> sudoku<5><19> sudoku<5><20> sudoku<5><21> sudoku<5><22> sudoku<5><23> sudoku<5><24>) true))) + (let (($x2808 (and (distinct sudoku<0><4> sudoku<1><4> sudoku<2><4> sudoku<3><4> sudoku<4><4> sudoku<5><4> sudoku<6><4> sudoku<7><4> sudoku<8><4> sudoku<9><4> sudoku<10><4> sudoku<11><4> sudoku<12><4> sudoku<13><4> sudoku<14><4> sudoku<15><4> sudoku<16><4> sudoku<17><4> sudoku<18><4> sudoku<19><4> sudoku<20><4> sudoku<21><4> sudoku<22><4> sudoku<23><4> sudoku<24><4>) true))) + (let (($x2807 (and (distinct sudoku<4><0> sudoku<4><1> sudoku<4><2> sudoku<4><3> sudoku<4><4> sudoku<4><5> sudoku<4><6> sudoku<4><7> sudoku<4><8> sudoku<4><9> sudoku<4><10> sudoku<4><11> sudoku<4><12> sudoku<4><13> sudoku<4><14> sudoku<4><15> sudoku<4><16> sudoku<4><17> sudoku<4><18> sudoku<4><19> sudoku<4><20> sudoku<4><21> sudoku<4><22> sudoku<4><23> sudoku<4><24>) true))) + (let (($x2806 (and (distinct sudoku<0><3> sudoku<1><3> sudoku<2><3> sudoku<3><3> sudoku<4><3> sudoku<5><3> sudoku<6><3> sudoku<7><3> sudoku<8><3> sudoku<9><3> sudoku<10><3> sudoku<11><3> sudoku<12><3> sudoku<13><3> sudoku<14><3> sudoku<15><3> sudoku<16><3> sudoku<17><3> sudoku<18><3> sudoku<19><3> sudoku<20><3> sudoku<21><3> sudoku<22><3> sudoku<23><3> sudoku<24><3>) true))) + (let (($x2805 (and (distinct sudoku<3><0> sudoku<3><1> sudoku<3><2> sudoku<3><3> sudoku<3><4> sudoku<3><5> sudoku<3><6> sudoku<3><7> sudoku<3><8> sudoku<3><9> sudoku<3><10> sudoku<3><11> sudoku<3><12> sudoku<3><13> sudoku<3><14> sudoku<3><15> sudoku<3><16> sudoku<3><17> sudoku<3><18> sudoku<3><19> sudoku<3><20> sudoku<3><21> sudoku<3><22> sudoku<3><23> sudoku<3><24>) true))) + (let (($x2804 (and (distinct sudoku<0><2> sudoku<1><2> sudoku<2><2> sudoku<3><2> sudoku<4><2> sudoku<5><2> sudoku<6><2> sudoku<7><2> sudoku<8><2> sudoku<9><2> sudoku<10><2> sudoku<11><2> sudoku<12><2> sudoku<13><2> sudoku<14><2> sudoku<15><2> sudoku<16><2> sudoku<17><2> sudoku<18><2> sudoku<19><2> sudoku<20><2> sudoku<21><2> sudoku<22><2> sudoku<23><2> sudoku<24><2>) true))) + (let (($x2803 (and (distinct sudoku<2><0> sudoku<2><1> sudoku<2><2> sudoku<2><3> sudoku<2><4> sudoku<2><5> sudoku<2><6> sudoku<2><7> sudoku<2><8> sudoku<2><9> sudoku<2><10> sudoku<2><11> sudoku<2><12> sudoku<2><13> sudoku<2><14> sudoku<2><15> sudoku<2><16> sudoku<2><17> sudoku<2><18> sudoku<2><19> sudoku<2><20> sudoku<2><21> sudoku<2><22> sudoku<2><23> sudoku<2><24>) true))) + (let (($x2802 (and (distinct sudoku<0><1> sudoku<1><1> sudoku<2><1> sudoku<3><1> sudoku<4><1> sudoku<5><1> sudoku<6><1> sudoku<7><1> sudoku<8><1> sudoku<9><1> sudoku<10><1> sudoku<11><1> sudoku<12><1> sudoku<13><1> sudoku<14><1> sudoku<15><1> sudoku<16><1> sudoku<17><1> sudoku<18><1> sudoku<19><1> sudoku<20><1> sudoku<21><1> sudoku<22><1> sudoku<23><1> sudoku<24><1>) true))) + (let (($x2801 (and (distinct sudoku<1><0> sudoku<1><1> sudoku<1><2> sudoku<1><3> sudoku<1><4> sudoku<1><5> sudoku<1><6> sudoku<1><7> sudoku<1><8> sudoku<1><9> sudoku<1><10> sudoku<1><11> sudoku<1><12> sudoku<1><13> sudoku<1><14> sudoku<1><15> sudoku<1><16> sudoku<1><17> sudoku<1><18> sudoku<1><19> sudoku<1><20> sudoku<1><21> sudoku<1><22> sudoku<1><23> sudoku<1><24>) true))) + (let (($x2800 (and (distinct sudoku<0><0> sudoku<1><0> sudoku<2><0> sudoku<3><0> sudoku<4><0> sudoku<5><0> sudoku<6><0> sudoku<7><0> sudoku<8><0> sudoku<9><0> sudoku<10><0> sudoku<11><0> sudoku<12><0> sudoku<13><0> sudoku<14><0> sudoku<15><0> sudoku<16><0> sudoku<17><0> sudoku<18><0> sudoku<19><0> sudoku<20><0> sudoku<21><0> sudoku<22><0> sudoku<23><0> sudoku<24><0>) true))) + (let (($x2799 (and (distinct sudoku<0><0> sudoku<0><1> sudoku<0><2> sudoku<0><3> sudoku<0><4> sudoku<0><5> sudoku<0><6> sudoku<0><7> sudoku<0><8> sudoku<0><9> sudoku<0><10> sudoku<0><11> sudoku<0><12> sudoku<0><13> sudoku<0><14> sudoku<0><15> sudoku<0><16> sudoku<0><17> sudoku<0><18> sudoku<0><19> sudoku<0><20> sudoku<0><21> sudoku<0><22> sudoku<0><23> sudoku<0><24>) true))) + (let (($x2797 (<= sudoku<24><24> 25))) + (let (($x2796 (>= sudoku<24><24> 1))) + (let (($x2798 (and $x2796 $x2797))) + (let (($x2794 (<= sudoku<24><23> 25))) + (let (($x2793 (>= sudoku<24><23> 1))) + (let (($x2795 (and $x2793 $x2794))) + (let (($x2791 (<= sudoku<24><22> 25))) + (let (($x2790 (>= sudoku<24><22> 1))) + (let (($x2792 (and $x2790 $x2791))) + (let (($x2788 (<= sudoku<24><21> 25))) + (let (($x2787 (>= sudoku<24><21> 1))) + (let (($x2789 (and $x2787 $x2788))) + (let (($x2785 (<= sudoku<24><20> 25))) + (let (($x2784 (>= sudoku<24><20> 1))) + (let (($x2786 (and $x2784 $x2785))) + (let (($x2782 (<= sudoku<24><19> 25))) + (let (($x2781 (>= sudoku<24><19> 1))) + (let (($x2783 (and $x2781 $x2782))) + (let (($x2779 (<= sudoku<24><18> 25))) + (let (($x2778 (>= sudoku<24><18> 1))) + (let (($x2780 (and $x2778 $x2779))) + (let (($x2776 (<= sudoku<24><17> 25))) + (let (($x2775 (>= sudoku<24><17> 1))) + (let (($x2777 (and $x2775 $x2776))) + (let (($x2773 (<= sudoku<24><16> 25))) + (let (($x2772 (>= sudoku<24><16> 1))) + (let (($x2774 (and $x2772 $x2773))) + (let (($x2770 (<= sudoku<24><15> 25))) + (let (($x2769 (>= sudoku<24><15> 1))) + (let (($x2771 (and $x2769 $x2770))) + (let (($x2767 (<= sudoku<24><14> 25))) + (let (($x2766 (>= sudoku<24><14> 1))) + (let (($x2768 (and $x2766 $x2767))) + (let (($x2764 (<= sudoku<24><13> 25))) + (let (($x2763 (>= sudoku<24><13> 1))) + (let (($x2765 (and $x2763 $x2764))) + (let (($x2761 (<= sudoku<24><12> 25))) + (let (($x2760 (>= sudoku<24><12> 1))) + (let (($x2762 (and $x2760 $x2761))) + (let (($x2758 (<= sudoku<24><11> 25))) + (let (($x2757 (>= sudoku<24><11> 1))) + (let (($x2759 (and $x2757 $x2758))) + (let (($x2755 (<= sudoku<24><10> 25))) + (let (($x2754 (>= sudoku<24><10> 1))) + (let (($x2756 (and $x2754 $x2755))) + (let (($x2752 (<= sudoku<24><9> 25))) + (let (($x2751 (>= sudoku<24><9> 1))) + (let (($x2753 (and $x2751 $x2752))) + (let (($x2749 (<= sudoku<24><8> 25))) + (let (($x2748 (>= sudoku<24><8> 1))) + (let (($x2750 (and $x2748 $x2749))) + (let (($x2746 (<= sudoku<24><7> 25))) + (let (($x2745 (>= sudoku<24><7> 1))) + (let (($x2747 (and $x2745 $x2746))) + (let (($x2743 (<= sudoku<24><6> 25))) + (let (($x2742 (>= sudoku<24><6> 1))) + (let (($x2744 (and $x2742 $x2743))) + (let (($x2740 (<= sudoku<24><5> 25))) + (let (($x2739 (>= sudoku<24><5> 1))) + (let (($x2741 (and $x2739 $x2740))) + (let (($x2737 (<= sudoku<24><4> 25))) + (let (($x2736 (>= sudoku<24><4> 1))) + (let (($x2738 (and $x2736 $x2737))) + (let (($x2734 (<= sudoku<24><3> 25))) + (let (($x2733 (>= sudoku<24><3> 1))) + (let (($x2735 (and $x2733 $x2734))) + (let (($x2731 (<= sudoku<24><2> 25))) + (let (($x2730 (>= sudoku<24><2> 1))) + (let (($x2732 (and $x2730 $x2731))) + (let (($x2728 (<= sudoku<24><1> 25))) + (let (($x2727 (>= sudoku<24><1> 1))) + (let (($x2729 (and $x2727 $x2728))) + (let (($x2725 (<= sudoku<24><0> 25))) + (let (($x2724 (>= sudoku<24><0> 1))) + (let (($x2726 (and $x2724 $x2725))) + (let (($x2722 (<= sudoku<23><24> 25))) + (let (($x2721 (>= sudoku<23><24> 1))) + (let (($x2723 (and $x2721 $x2722))) + (let (($x2719 (<= sudoku<23><23> 25))) + (let (($x2718 (>= sudoku<23><23> 1))) + (let (($x2720 (and $x2718 $x2719))) + (let (($x2716 (<= sudoku<23><22> 25))) + (let (($x2715 (>= sudoku<23><22> 1))) + (let (($x2717 (and $x2715 $x2716))) + (let (($x2713 (<= sudoku<23><21> 25))) + (let (($x2712 (>= sudoku<23><21> 1))) + (let (($x2714 (and $x2712 $x2713))) + (let (($x2710 (<= sudoku<23><20> 25))) + (let (($x2709 (>= sudoku<23><20> 1))) + (let (($x2711 (and $x2709 $x2710))) + (let (($x2707 (<= sudoku<23><19> 25))) + (let (($x2706 (>= sudoku<23><19> 1))) + (let (($x2708 (and $x2706 $x2707))) + (let (($x2704 (<= sudoku<23><18> 25))) + (let (($x2703 (>= sudoku<23><18> 1))) + (let (($x2705 (and $x2703 $x2704))) + (let (($x2701 (<= sudoku<23><17> 25))) + (let (($x2700 (>= sudoku<23><17> 1))) + (let (($x2702 (and $x2700 $x2701))) + (let (($x2698 (<= sudoku<23><16> 25))) + (let (($x2697 (>= sudoku<23><16> 1))) + (let (($x2699 (and $x2697 $x2698))) + (let (($x2695 (<= sudoku<23><15> 25))) + (let (($x2694 (>= sudoku<23><15> 1))) + (let (($x2696 (and $x2694 $x2695))) + (let (($x2692 (<= sudoku<23><14> 25))) + (let (($x2691 (>= sudoku<23><14> 1))) + (let (($x2693 (and $x2691 $x2692))) + (let (($x2689 (<= sudoku<23><13> 25))) + (let (($x2688 (>= sudoku<23><13> 1))) + (let (($x2690 (and $x2688 $x2689))) + (let (($x2686 (<= sudoku<23><12> 25))) + (let (($x2685 (>= sudoku<23><12> 1))) + (let (($x2687 (and $x2685 $x2686))) + (let (($x2683 (<= sudoku<23><11> 25))) + (let (($x2682 (>= sudoku<23><11> 1))) + (let (($x2684 (and $x2682 $x2683))) + (let (($x2680 (<= sudoku<23><10> 25))) + (let (($x2679 (>= sudoku<23><10> 1))) + (let (($x2681 (and $x2679 $x2680))) + (let (($x2677 (<= sudoku<23><9> 25))) + (let (($x2676 (>= sudoku<23><9> 1))) + (let (($x2678 (and $x2676 $x2677))) + (let (($x2674 (<= sudoku<23><8> 25))) + (let (($x2673 (>= sudoku<23><8> 1))) + (let (($x2675 (and $x2673 $x2674))) + (let (($x2671 (<= sudoku<23><7> 25))) + (let (($x2670 (>= sudoku<23><7> 1))) + (let (($x2672 (and $x2670 $x2671))) + (let (($x2668 (<= sudoku<23><6> 25))) + (let (($x2667 (>= sudoku<23><6> 1))) + (let (($x2669 (and $x2667 $x2668))) + (let (($x2665 (<= sudoku<23><5> 25))) + (let (($x2664 (>= sudoku<23><5> 1))) + (let (($x2666 (and $x2664 $x2665))) + (let (($x2662 (<= sudoku<23><4> 25))) + (let (($x2661 (>= sudoku<23><4> 1))) + (let (($x2663 (and $x2661 $x2662))) + (let (($x2659 (<= sudoku<23><3> 25))) + (let (($x2658 (>= sudoku<23><3> 1))) + (let (($x2660 (and $x2658 $x2659))) + (let (($x2656 (<= sudoku<23><2> 25))) + (let (($x2655 (>= sudoku<23><2> 1))) + (let (($x2657 (and $x2655 $x2656))) + (let (($x2653 (<= sudoku<23><1> 25))) + (let (($x2652 (>= sudoku<23><1> 1))) + (let (($x2654 (and $x2652 $x2653))) + (let (($x2650 (<= sudoku<23><0> 25))) + (let (($x2649 (>= sudoku<23><0> 1))) + (let (($x2651 (and $x2649 $x2650))) + (let (($x2647 (<= sudoku<22><24> 25))) + (let (($x2646 (>= sudoku<22><24> 1))) + (let (($x2648 (and $x2646 $x2647))) + (let (($x2644 (<= sudoku<22><23> 25))) + (let (($x2643 (>= sudoku<22><23> 1))) + (let (($x2645 (and $x2643 $x2644))) + (let (($x2641 (<= sudoku<22><22> 25))) + (let (($x2640 (>= sudoku<22><22> 1))) + (let (($x2642 (and $x2640 $x2641))) + (let (($x2638 (<= sudoku<22><21> 25))) + (let (($x2637 (>= sudoku<22><21> 1))) + (let (($x2639 (and $x2637 $x2638))) + (let (($x2635 (<= sudoku<22><20> 25))) + (let (($x2634 (>= sudoku<22><20> 1))) + (let (($x2636 (and $x2634 $x2635))) + (let (($x2632 (<= sudoku<22><19> 25))) + (let (($x2631 (>= sudoku<22><19> 1))) + (let (($x2633 (and $x2631 $x2632))) + (let (($x2629 (<= sudoku<22><18> 25))) + (let (($x2628 (>= sudoku<22><18> 1))) + (let (($x2630 (and $x2628 $x2629))) + (let (($x2626 (<= sudoku<22><17> 25))) + (let (($x2625 (>= sudoku<22><17> 1))) + (let (($x2627 (and $x2625 $x2626))) + (let (($x2623 (<= sudoku<22><16> 25))) + (let (($x2622 (>= sudoku<22><16> 1))) + (let (($x2624 (and $x2622 $x2623))) + (let (($x2620 (<= sudoku<22><15> 25))) + (let (($x2619 (>= sudoku<22><15> 1))) + (let (($x2621 (and $x2619 $x2620))) + (let (($x2617 (<= sudoku<22><14> 25))) + (let (($x2616 (>= sudoku<22><14> 1))) + (let (($x2618 (and $x2616 $x2617))) + (let (($x2614 (<= sudoku<22><13> 25))) + (let (($x2613 (>= sudoku<22><13> 1))) + (let (($x2615 (and $x2613 $x2614))) + (let (($x2611 (<= sudoku<22><12> 25))) + (let (($x2610 (>= sudoku<22><12> 1))) + (let (($x2612 (and $x2610 $x2611))) + (let (($x2608 (<= sudoku<22><11> 25))) + (let (($x2607 (>= sudoku<22><11> 1))) + (let (($x2609 (and $x2607 $x2608))) + (let (($x2605 (<= sudoku<22><10> 25))) + (let (($x2604 (>= sudoku<22><10> 1))) + (let (($x2606 (and $x2604 $x2605))) + (let (($x2602 (<= sudoku<22><9> 25))) + (let (($x2601 (>= sudoku<22><9> 1))) + (let (($x2603 (and $x2601 $x2602))) + (let (($x2599 (<= sudoku<22><8> 25))) + (let (($x2598 (>= sudoku<22><8> 1))) + (let (($x2600 (and $x2598 $x2599))) + (let (($x2596 (<= sudoku<22><7> 25))) + (let (($x2595 (>= sudoku<22><7> 1))) + (let (($x2597 (and $x2595 $x2596))) + (let (($x2593 (<= sudoku<22><6> 25))) + (let (($x2592 (>= sudoku<22><6> 1))) + (let (($x2594 (and $x2592 $x2593))) + (let (($x2590 (<= sudoku<22><5> 25))) + (let (($x2589 (>= sudoku<22><5> 1))) + (let (($x2591 (and $x2589 $x2590))) + (let (($x2587 (<= sudoku<22><4> 25))) + (let (($x2586 (>= sudoku<22><4> 1))) + (let (($x2588 (and $x2586 $x2587))) + (let (($x2584 (<= sudoku<22><3> 25))) + (let (($x2583 (>= sudoku<22><3> 1))) + (let (($x2585 (and $x2583 $x2584))) + (let (($x2581 (<= sudoku<22><2> 25))) + (let (($x2580 (>= sudoku<22><2> 1))) + (let (($x2582 (and $x2580 $x2581))) + (let (($x2578 (<= sudoku<22><1> 25))) + (let (($x2577 (>= sudoku<22><1> 1))) + (let (($x2579 (and $x2577 $x2578))) + (let (($x2575 (<= sudoku<22><0> 25))) + (let (($x2574 (>= sudoku<22><0> 1))) + (let (($x2576 (and $x2574 $x2575))) + (let (($x2572 (<= sudoku<21><24> 25))) + (let (($x2571 (>= sudoku<21><24> 1))) + (let (($x2573 (and $x2571 $x2572))) + (let (($x2569 (<= sudoku<21><23> 25))) + (let (($x2568 (>= sudoku<21><23> 1))) + (let (($x2570 (and $x2568 $x2569))) + (let (($x2566 (<= sudoku<21><22> 25))) + (let (($x2565 (>= sudoku<21><22> 1))) + (let (($x2567 (and $x2565 $x2566))) + (let (($x2563 (<= sudoku<21><21> 25))) + (let (($x2562 (>= sudoku<21><21> 1))) + (let (($x2564 (and $x2562 $x2563))) + (let (($x2560 (<= sudoku<21><20> 25))) + (let (($x2559 (>= sudoku<21><20> 1))) + (let (($x2561 (and $x2559 $x2560))) + (let (($x2557 (<= sudoku<21><19> 25))) + (let (($x2556 (>= sudoku<21><19> 1))) + (let (($x2558 (and $x2556 $x2557))) + (let (($x2554 (<= sudoku<21><18> 25))) + (let (($x2553 (>= sudoku<21><18> 1))) + (let (($x2555 (and $x2553 $x2554))) + (let (($x2551 (<= sudoku<21><17> 25))) + (let (($x2550 (>= sudoku<21><17> 1))) + (let (($x2552 (and $x2550 $x2551))) + (let (($x2548 (<= sudoku<21><16> 25))) + (let (($x2547 (>= sudoku<21><16> 1))) + (let (($x2549 (and $x2547 $x2548))) + (let (($x2545 (<= sudoku<21><15> 25))) + (let (($x2544 (>= sudoku<21><15> 1))) + (let (($x2546 (and $x2544 $x2545))) + (let (($x2542 (<= sudoku<21><14> 25))) + (let (($x2541 (>= sudoku<21><14> 1))) + (let (($x2543 (and $x2541 $x2542))) + (let (($x2539 (<= sudoku<21><13> 25))) + (let (($x2538 (>= sudoku<21><13> 1))) + (let (($x2540 (and $x2538 $x2539))) + (let (($x2536 (<= sudoku<21><12> 25))) + (let (($x2535 (>= sudoku<21><12> 1))) + (let (($x2537 (and $x2535 $x2536))) + (let (($x2533 (<= sudoku<21><11> 25))) + (let (($x2532 (>= sudoku<21><11> 1))) + (let (($x2534 (and $x2532 $x2533))) + (let (($x2530 (<= sudoku<21><10> 25))) + (let (($x2529 (>= sudoku<21><10> 1))) + (let (($x2531 (and $x2529 $x2530))) + (let (($x2527 (<= sudoku<21><9> 25))) + (let (($x2526 (>= sudoku<21><9> 1))) + (let (($x2528 (and $x2526 $x2527))) + (let (($x2524 (<= sudoku<21><8> 25))) + (let (($x2523 (>= sudoku<21><8> 1))) + (let (($x2525 (and $x2523 $x2524))) + (let (($x2521 (<= sudoku<21><7> 25))) + (let (($x2520 (>= sudoku<21><7> 1))) + (let (($x2522 (and $x2520 $x2521))) + (let (($x2518 (<= sudoku<21><6> 25))) + (let (($x2517 (>= sudoku<21><6> 1))) + (let (($x2519 (and $x2517 $x2518))) + (let (($x2515 (<= sudoku<21><5> 25))) + (let (($x2514 (>= sudoku<21><5> 1))) + (let (($x2516 (and $x2514 $x2515))) + (let (($x2512 (<= sudoku<21><4> 25))) + (let (($x2511 (>= sudoku<21><4> 1))) + (let (($x2513 (and $x2511 $x2512))) + (let (($x2509 (<= sudoku<21><3> 25))) + (let (($x2508 (>= sudoku<21><3> 1))) + (let (($x2510 (and $x2508 $x2509))) + (let (($x2506 (<= sudoku<21><2> 25))) + (let (($x2505 (>= sudoku<21><2> 1))) + (let (($x2507 (and $x2505 $x2506))) + (let (($x2503 (<= sudoku<21><1> 25))) + (let (($x2502 (>= sudoku<21><1> 1))) + (let (($x2504 (and $x2502 $x2503))) + (let (($x2500 (<= sudoku<21><0> 25))) + (let (($x2499 (>= sudoku<21><0> 1))) + (let (($x2501 (and $x2499 $x2500))) + (let (($x2497 (<= sudoku<20><24> 25))) + (let (($x2496 (>= sudoku<20><24> 1))) + (let (($x2498 (and $x2496 $x2497))) + (let (($x2494 (<= sudoku<20><23> 25))) + (let (($x2493 (>= sudoku<20><23> 1))) + (let (($x2495 (and $x2493 $x2494))) + (let (($x2491 (<= sudoku<20><22> 25))) + (let (($x2490 (>= sudoku<20><22> 1))) + (let (($x2492 (and $x2490 $x2491))) + (let (($x2488 (<= sudoku<20><21> 25))) + (let (($x2487 (>= sudoku<20><21> 1))) + (let (($x2489 (and $x2487 $x2488))) + (let (($x2485 (<= sudoku<20><20> 25))) + (let (($x2484 (>= sudoku<20><20> 1))) + (let (($x2486 (and $x2484 $x2485))) + (let (($x2482 (<= sudoku<20><19> 25))) + (let (($x2481 (>= sudoku<20><19> 1))) + (let (($x2483 (and $x2481 $x2482))) + (let (($x2479 (<= sudoku<20><18> 25))) + (let (($x2478 (>= sudoku<20><18> 1))) + (let (($x2480 (and $x2478 $x2479))) + (let (($x2476 (<= sudoku<20><17> 25))) + (let (($x2475 (>= sudoku<20><17> 1))) + (let (($x2477 (and $x2475 $x2476))) + (let (($x2473 (<= sudoku<20><16> 25))) + (let (($x2472 (>= sudoku<20><16> 1))) + (let (($x2474 (and $x2472 $x2473))) + (let (($x2470 (<= sudoku<20><15> 25))) + (let (($x2469 (>= sudoku<20><15> 1))) + (let (($x2471 (and $x2469 $x2470))) + (let (($x2467 (<= sudoku<20><14> 25))) + (let (($x2466 (>= sudoku<20><14> 1))) + (let (($x2468 (and $x2466 $x2467))) + (let (($x2464 (<= sudoku<20><13> 25))) + (let (($x2463 (>= sudoku<20><13> 1))) + (let (($x2465 (and $x2463 $x2464))) + (let (($x2461 (<= sudoku<20><12> 25))) + (let (($x2460 (>= sudoku<20><12> 1))) + (let (($x2462 (and $x2460 $x2461))) + (let (($x2458 (<= sudoku<20><11> 25))) + (let (($x2457 (>= sudoku<20><11> 1))) + (let (($x2459 (and $x2457 $x2458))) + (let (($x2455 (<= sudoku<20><10> 25))) + (let (($x2454 (>= sudoku<20><10> 1))) + (let (($x2456 (and $x2454 $x2455))) + (let (($x2452 (<= sudoku<20><9> 25))) + (let (($x2451 (>= sudoku<20><9> 1))) + (let (($x2453 (and $x2451 $x2452))) + (let (($x2449 (<= sudoku<20><8> 25))) + (let (($x2448 (>= sudoku<20><8> 1))) + (let (($x2450 (and $x2448 $x2449))) + (let (($x2446 (<= sudoku<20><7> 25))) + (let (($x2445 (>= sudoku<20><7> 1))) + (let (($x2447 (and $x2445 $x2446))) + (let (($x2443 (<= sudoku<20><6> 25))) + (let (($x2442 (>= sudoku<20><6> 1))) + (let (($x2444 (and $x2442 $x2443))) + (let (($x2440 (<= sudoku<20><5> 25))) + (let (($x2439 (>= sudoku<20><5> 1))) + (let (($x2441 (and $x2439 $x2440))) + (let (($x2437 (<= sudoku<20><4> 25))) + (let (($x2436 (>= sudoku<20><4> 1))) + (let (($x2438 (and $x2436 $x2437))) + (let (($x2434 (<= sudoku<20><3> 25))) + (let (($x2433 (>= sudoku<20><3> 1))) + (let (($x2435 (and $x2433 $x2434))) + (let (($x2431 (<= sudoku<20><2> 25))) + (let (($x2430 (>= sudoku<20><2> 1))) + (let (($x2432 (and $x2430 $x2431))) + (let (($x2428 (<= sudoku<20><1> 25))) + (let (($x2427 (>= sudoku<20><1> 1))) + (let (($x2429 (and $x2427 $x2428))) + (let (($x2425 (<= sudoku<20><0> 25))) + (let (($x2424 (>= sudoku<20><0> 1))) + (let (($x2426 (and $x2424 $x2425))) + (let (($x2422 (<= sudoku<19><24> 25))) + (let (($x2421 (>= sudoku<19><24> 1))) + (let (($x2423 (and $x2421 $x2422))) + (let (($x2419 (<= sudoku<19><23> 25))) + (let (($x2418 (>= sudoku<19><23> 1))) + (let (($x2420 (and $x2418 $x2419))) + (let (($x2416 (<= sudoku<19><22> 25))) + (let (($x2415 (>= sudoku<19><22> 1))) + (let (($x2417 (and $x2415 $x2416))) + (let (($x2413 (<= sudoku<19><21> 25))) + (let (($x2412 (>= sudoku<19><21> 1))) + (let (($x2414 (and $x2412 $x2413))) + (let (($x2410 (<= sudoku<19><20> 25))) + (let (($x2409 (>= sudoku<19><20> 1))) + (let (($x2411 (and $x2409 $x2410))) + (let (($x2407 (<= sudoku<19><19> 25))) + (let (($x2406 (>= sudoku<19><19> 1))) + (let (($x2408 (and $x2406 $x2407))) + (let (($x2404 (<= sudoku<19><18> 25))) + (let (($x2403 (>= sudoku<19><18> 1))) + (let (($x2405 (and $x2403 $x2404))) + (let (($x2401 (<= sudoku<19><17> 25))) + (let (($x2400 (>= sudoku<19><17> 1))) + (let (($x2402 (and $x2400 $x2401))) + (let (($x2398 (<= sudoku<19><16> 25))) + (let (($x2397 (>= sudoku<19><16> 1))) + (let (($x2399 (and $x2397 $x2398))) + (let (($x2395 (<= sudoku<19><15> 25))) + (let (($x2394 (>= sudoku<19><15> 1))) + (let (($x2396 (and $x2394 $x2395))) + (let (($x2392 (<= sudoku<19><14> 25))) + (let (($x2391 (>= sudoku<19><14> 1))) + (let (($x2393 (and $x2391 $x2392))) + (let (($x2389 (<= sudoku<19><13> 25))) + (let (($x2388 (>= sudoku<19><13> 1))) + (let (($x2390 (and $x2388 $x2389))) + (let (($x2386 (<= sudoku<19><12> 25))) + (let (($x2385 (>= sudoku<19><12> 1))) + (let (($x2387 (and $x2385 $x2386))) + (let (($x2383 (<= sudoku<19><11> 25))) + (let (($x2382 (>= sudoku<19><11> 1))) + (let (($x2384 (and $x2382 $x2383))) + (let (($x2380 (<= sudoku<19><10> 25))) + (let (($x2379 (>= sudoku<19><10> 1))) + (let (($x2381 (and $x2379 $x2380))) + (let (($x2377 (<= sudoku<19><9> 25))) + (let (($x2376 (>= sudoku<19><9> 1))) + (let (($x2378 (and $x2376 $x2377))) + (let (($x2374 (<= sudoku<19><8> 25))) + (let (($x2373 (>= sudoku<19><8> 1))) + (let (($x2375 (and $x2373 $x2374))) + (let (($x2371 (<= sudoku<19><7> 25))) + (let (($x2370 (>= sudoku<19><7> 1))) + (let (($x2372 (and $x2370 $x2371))) + (let (($x2368 (<= sudoku<19><6> 25))) + (let (($x2367 (>= sudoku<19><6> 1))) + (let (($x2369 (and $x2367 $x2368))) + (let (($x2365 (<= sudoku<19><5> 25))) + (let (($x2364 (>= sudoku<19><5> 1))) + (let (($x2366 (and $x2364 $x2365))) + (let (($x2362 (<= sudoku<19><4> 25))) + (let (($x2361 (>= sudoku<19><4> 1))) + (let (($x2363 (and $x2361 $x2362))) + (let (($x2359 (<= sudoku<19><3> 25))) + (let (($x2358 (>= sudoku<19><3> 1))) + (let (($x2360 (and $x2358 $x2359))) + (let (($x2356 (<= sudoku<19><2> 25))) + (let (($x2355 (>= sudoku<19><2> 1))) + (let (($x2357 (and $x2355 $x2356))) + (let (($x2353 (<= sudoku<19><1> 25))) + (let (($x2352 (>= sudoku<19><1> 1))) + (let (($x2354 (and $x2352 $x2353))) + (let (($x2350 (<= sudoku<19><0> 25))) + (let (($x2349 (>= sudoku<19><0> 1))) + (let (($x2351 (and $x2349 $x2350))) + (let (($x2347 (<= sudoku<18><24> 25))) + (let (($x2346 (>= sudoku<18><24> 1))) + (let (($x2348 (and $x2346 $x2347))) + (let (($x2344 (<= sudoku<18><23> 25))) + (let (($x2343 (>= sudoku<18><23> 1))) + (let (($x2345 (and $x2343 $x2344))) + (let (($x2341 (<= sudoku<18><22> 25))) + (let (($x2340 (>= sudoku<18><22> 1))) + (let (($x2342 (and $x2340 $x2341))) + (let (($x2338 (<= sudoku<18><21> 25))) + (let (($x2337 (>= sudoku<18><21> 1))) + (let (($x2339 (and $x2337 $x2338))) + (let (($x2335 (<= sudoku<18><20> 25))) + (let (($x2334 (>= sudoku<18><20> 1))) + (let (($x2336 (and $x2334 $x2335))) + (let (($x2332 (<= sudoku<18><19> 25))) + (let (($x2331 (>= sudoku<18><19> 1))) + (let (($x2333 (and $x2331 $x2332))) + (let (($x2329 (<= sudoku<18><18> 25))) + (let (($x2328 (>= sudoku<18><18> 1))) + (let (($x2330 (and $x2328 $x2329))) + (let (($x2326 (<= sudoku<18><17> 25))) + (let (($x2325 (>= sudoku<18><17> 1))) + (let (($x2327 (and $x2325 $x2326))) + (let (($x2323 (<= sudoku<18><16> 25))) + (let (($x2322 (>= sudoku<18><16> 1))) + (let (($x2324 (and $x2322 $x2323))) + (let (($x2320 (<= sudoku<18><15> 25))) + (let (($x2319 (>= sudoku<18><15> 1))) + (let (($x2321 (and $x2319 $x2320))) + (let (($x2317 (<= sudoku<18><14> 25))) + (let (($x2316 (>= sudoku<18><14> 1))) + (let (($x2318 (and $x2316 $x2317))) + (let (($x2314 (<= sudoku<18><13> 25))) + (let (($x2313 (>= sudoku<18><13> 1))) + (let (($x2315 (and $x2313 $x2314))) + (let (($x2311 (<= sudoku<18><12> 25))) + (let (($x2310 (>= sudoku<18><12> 1))) + (let (($x2312 (and $x2310 $x2311))) + (let (($x2308 (<= sudoku<18><11> 25))) + (let (($x2307 (>= sudoku<18><11> 1))) + (let (($x2309 (and $x2307 $x2308))) + (let (($x2305 (<= sudoku<18><10> 25))) + (let (($x2304 (>= sudoku<18><10> 1))) + (let (($x2306 (and $x2304 $x2305))) + (let (($x2302 (<= sudoku<18><9> 25))) + (let (($x2301 (>= sudoku<18><9> 1))) + (let (($x2303 (and $x2301 $x2302))) + (let (($x2299 (<= sudoku<18><8> 25))) + (let (($x2298 (>= sudoku<18><8> 1))) + (let (($x2300 (and $x2298 $x2299))) + (let (($x2296 (<= sudoku<18><7> 25))) + (let (($x2295 (>= sudoku<18><7> 1))) + (let (($x2297 (and $x2295 $x2296))) + (let (($x2293 (<= sudoku<18><6> 25))) + (let (($x2292 (>= sudoku<18><6> 1))) + (let (($x2294 (and $x2292 $x2293))) + (let (($x2290 (<= sudoku<18><5> 25))) + (let (($x2289 (>= sudoku<18><5> 1))) + (let (($x2291 (and $x2289 $x2290))) + (let (($x2287 (<= sudoku<18><4> 25))) + (let (($x2286 (>= sudoku<18><4> 1))) + (let (($x2288 (and $x2286 $x2287))) + (let (($x2284 (<= sudoku<18><3> 25))) + (let (($x2283 (>= sudoku<18><3> 1))) + (let (($x2285 (and $x2283 $x2284))) + (let (($x2281 (<= sudoku<18><2> 25))) + (let (($x2280 (>= sudoku<18><2> 1))) + (let (($x2282 (and $x2280 $x2281))) + (let (($x2278 (<= sudoku<18><1> 25))) + (let (($x2277 (>= sudoku<18><1> 1))) + (let (($x2279 (and $x2277 $x2278))) + (let (($x2275 (<= sudoku<18><0> 25))) + (let (($x2274 (>= sudoku<18><0> 1))) + (let (($x2276 (and $x2274 $x2275))) + (let (($x2272 (<= sudoku<17><24> 25))) + (let (($x2271 (>= sudoku<17><24> 1))) + (let (($x2273 (and $x2271 $x2272))) + (let (($x2269 (<= sudoku<17><23> 25))) + (let (($x2268 (>= sudoku<17><23> 1))) + (let (($x2270 (and $x2268 $x2269))) + (let (($x2266 (<= sudoku<17><22> 25))) + (let (($x2265 (>= sudoku<17><22> 1))) + (let (($x2267 (and $x2265 $x2266))) + (let (($x2263 (<= sudoku<17><21> 25))) + (let (($x2262 (>= sudoku<17><21> 1))) + (let (($x2264 (and $x2262 $x2263))) + (let (($x2260 (<= sudoku<17><20> 25))) + (let (($x2259 (>= sudoku<17><20> 1))) + (let (($x2261 (and $x2259 $x2260))) + (let (($x2257 (<= sudoku<17><19> 25))) + (let (($x2256 (>= sudoku<17><19> 1))) + (let (($x2258 (and $x2256 $x2257))) + (let (($x2254 (<= sudoku<17><18> 25))) + (let (($x2253 (>= sudoku<17><18> 1))) + (let (($x2255 (and $x2253 $x2254))) + (let (($x2251 (<= sudoku<17><17> 25))) + (let (($x2250 (>= sudoku<17><17> 1))) + (let (($x2252 (and $x2250 $x2251))) + (let (($x2248 (<= sudoku<17><16> 25))) + (let (($x2247 (>= sudoku<17><16> 1))) + (let (($x2249 (and $x2247 $x2248))) + (let (($x2245 (<= sudoku<17><15> 25))) + (let (($x2244 (>= sudoku<17><15> 1))) + (let (($x2246 (and $x2244 $x2245))) + (let (($x2242 (<= sudoku<17><14> 25))) + (let (($x2241 (>= sudoku<17><14> 1))) + (let (($x2243 (and $x2241 $x2242))) + (let (($x2239 (<= sudoku<17><13> 25))) + (let (($x2238 (>= sudoku<17><13> 1))) + (let (($x2240 (and $x2238 $x2239))) + (let (($x2236 (<= sudoku<17><12> 25))) + (let (($x2235 (>= sudoku<17><12> 1))) + (let (($x2237 (and $x2235 $x2236))) + (let (($x2233 (<= sudoku<17><11> 25))) + (let (($x2232 (>= sudoku<17><11> 1))) + (let (($x2234 (and $x2232 $x2233))) + (let (($x2230 (<= sudoku<17><10> 25))) + (let (($x2229 (>= sudoku<17><10> 1))) + (let (($x2231 (and $x2229 $x2230))) + (let (($x2227 (<= sudoku<17><9> 25))) + (let (($x2226 (>= sudoku<17><9> 1))) + (let (($x2228 (and $x2226 $x2227))) + (let (($x2224 (<= sudoku<17><8> 25))) + (let (($x2223 (>= sudoku<17><8> 1))) + (let (($x2225 (and $x2223 $x2224))) + (let (($x2221 (<= sudoku<17><7> 25))) + (let (($x2220 (>= sudoku<17><7> 1))) + (let (($x2222 (and $x2220 $x2221))) + (let (($x2218 (<= sudoku<17><6> 25))) + (let (($x2217 (>= sudoku<17><6> 1))) + (let (($x2219 (and $x2217 $x2218))) + (let (($x2215 (<= sudoku<17><5> 25))) + (let (($x2214 (>= sudoku<17><5> 1))) + (let (($x2216 (and $x2214 $x2215))) + (let (($x2212 (<= sudoku<17><4> 25))) + (let (($x2211 (>= sudoku<17><4> 1))) + (let (($x2213 (and $x2211 $x2212))) + (let (($x2209 (<= sudoku<17><3> 25))) + (let (($x2208 (>= sudoku<17><3> 1))) + (let (($x2210 (and $x2208 $x2209))) + (let (($x2206 (<= sudoku<17><2> 25))) + (let (($x2205 (>= sudoku<17><2> 1))) + (let (($x2207 (and $x2205 $x2206))) + (let (($x2203 (<= sudoku<17><1> 25))) + (let (($x2202 (>= sudoku<17><1> 1))) + (let (($x2204 (and $x2202 $x2203))) + (let (($x2200 (<= sudoku<17><0> 25))) + (let (($x2199 (>= sudoku<17><0> 1))) + (let (($x2201 (and $x2199 $x2200))) + (let (($x2197 (<= sudoku<16><24> 25))) + (let (($x2196 (>= sudoku<16><24> 1))) + (let (($x2198 (and $x2196 $x2197))) + (let (($x2194 (<= sudoku<16><23> 25))) + (let (($x2193 (>= sudoku<16><23> 1))) + (let (($x2195 (and $x2193 $x2194))) + (let (($x2191 (<= sudoku<16><22> 25))) + (let (($x2190 (>= sudoku<16><22> 1))) + (let (($x2192 (and $x2190 $x2191))) + (let (($x2188 (<= sudoku<16><21> 25))) + (let (($x2187 (>= sudoku<16><21> 1))) + (let (($x2189 (and $x2187 $x2188))) + (let (($x2185 (<= sudoku<16><20> 25))) + (let (($x2184 (>= sudoku<16><20> 1))) + (let (($x2186 (and $x2184 $x2185))) + (let (($x2182 (<= sudoku<16><19> 25))) + (let (($x2181 (>= sudoku<16><19> 1))) + (let (($x2183 (and $x2181 $x2182))) + (let (($x2179 (<= sudoku<16><18> 25))) + (let (($x2178 (>= sudoku<16><18> 1))) + (let (($x2180 (and $x2178 $x2179))) + (let (($x2176 (<= sudoku<16><17> 25))) + (let (($x2175 (>= sudoku<16><17> 1))) + (let (($x2177 (and $x2175 $x2176))) + (let (($x2173 (<= sudoku<16><16> 25))) + (let (($x2172 (>= sudoku<16><16> 1))) + (let (($x2174 (and $x2172 $x2173))) + (let (($x2170 (<= sudoku<16><15> 25))) + (let (($x2169 (>= sudoku<16><15> 1))) + (let (($x2171 (and $x2169 $x2170))) + (let (($x2167 (<= sudoku<16><14> 25))) + (let (($x2166 (>= sudoku<16><14> 1))) + (let (($x2168 (and $x2166 $x2167))) + (let (($x2164 (<= sudoku<16><13> 25))) + (let (($x2163 (>= sudoku<16><13> 1))) + (let (($x2165 (and $x2163 $x2164))) + (let (($x2161 (<= sudoku<16><12> 25))) + (let (($x2160 (>= sudoku<16><12> 1))) + (let (($x2162 (and $x2160 $x2161))) + (let (($x2158 (<= sudoku<16><11> 25))) + (let (($x2157 (>= sudoku<16><11> 1))) + (let (($x2159 (and $x2157 $x2158))) + (let (($x2155 (<= sudoku<16><10> 25))) + (let (($x2154 (>= sudoku<16><10> 1))) + (let (($x2156 (and $x2154 $x2155))) + (let (($x2152 (<= sudoku<16><9> 25))) + (let (($x2151 (>= sudoku<16><9> 1))) + (let (($x2153 (and $x2151 $x2152))) + (let (($x2149 (<= sudoku<16><8> 25))) + (let (($x2148 (>= sudoku<16><8> 1))) + (let (($x2150 (and $x2148 $x2149))) + (let (($x2146 (<= sudoku<16><7> 25))) + (let (($x2145 (>= sudoku<16><7> 1))) + (let (($x2147 (and $x2145 $x2146))) + (let (($x2143 (<= sudoku<16><6> 25))) + (let (($x2142 (>= sudoku<16><6> 1))) + (let (($x2144 (and $x2142 $x2143))) + (let (($x2140 (<= sudoku<16><5> 25))) + (let (($x2139 (>= sudoku<16><5> 1))) + (let (($x2141 (and $x2139 $x2140))) + (let (($x2137 (<= sudoku<16><4> 25))) + (let (($x2136 (>= sudoku<16><4> 1))) + (let (($x2138 (and $x2136 $x2137))) + (let (($x2134 (<= sudoku<16><3> 25))) + (let (($x2133 (>= sudoku<16><3> 1))) + (let (($x2135 (and $x2133 $x2134))) + (let (($x2131 (<= sudoku<16><2> 25))) + (let (($x2130 (>= sudoku<16><2> 1))) + (let (($x2132 (and $x2130 $x2131))) + (let (($x2128 (<= sudoku<16><1> 25))) + (let (($x2127 (>= sudoku<16><1> 1))) + (let (($x2129 (and $x2127 $x2128))) + (let (($x2125 (<= sudoku<16><0> 25))) + (let (($x2124 (>= sudoku<16><0> 1))) + (let (($x2126 (and $x2124 $x2125))) + (let (($x2122 (<= sudoku<15><24> 25))) + (let (($x2121 (>= sudoku<15><24> 1))) + (let (($x2123 (and $x2121 $x2122))) + (let (($x2119 (<= sudoku<15><23> 25))) + (let (($x2118 (>= sudoku<15><23> 1))) + (let (($x2120 (and $x2118 $x2119))) + (let (($x2116 (<= sudoku<15><22> 25))) + (let (($x2115 (>= sudoku<15><22> 1))) + (let (($x2117 (and $x2115 $x2116))) + (let (($x2113 (<= sudoku<15><21> 25))) + (let (($x2112 (>= sudoku<15><21> 1))) + (let (($x2114 (and $x2112 $x2113))) + (let (($x2110 (<= sudoku<15><20> 25))) + (let (($x2109 (>= sudoku<15><20> 1))) + (let (($x2111 (and $x2109 $x2110))) + (let (($x2107 (<= sudoku<15><19> 25))) + (let (($x2106 (>= sudoku<15><19> 1))) + (let (($x2108 (and $x2106 $x2107))) + (let (($x2104 (<= sudoku<15><18> 25))) + (let (($x2103 (>= sudoku<15><18> 1))) + (let (($x2105 (and $x2103 $x2104))) + (let (($x2101 (<= sudoku<15><17> 25))) + (let (($x2100 (>= sudoku<15><17> 1))) + (let (($x2102 (and $x2100 $x2101))) + (let (($x2098 (<= sudoku<15><16> 25))) + (let (($x2097 (>= sudoku<15><16> 1))) + (let (($x2099 (and $x2097 $x2098))) + (let (($x2095 (<= sudoku<15><15> 25))) + (let (($x2094 (>= sudoku<15><15> 1))) + (let (($x2096 (and $x2094 $x2095))) + (let (($x2092 (<= sudoku<15><14> 25))) + (let (($x2091 (>= sudoku<15><14> 1))) + (let (($x2093 (and $x2091 $x2092))) + (let (($x2089 (<= sudoku<15><13> 25))) + (let (($x2088 (>= sudoku<15><13> 1))) + (let (($x2090 (and $x2088 $x2089))) + (let (($x2086 (<= sudoku<15><12> 25))) + (let (($x2085 (>= sudoku<15><12> 1))) + (let (($x2087 (and $x2085 $x2086))) + (let (($x2083 (<= sudoku<15><11> 25))) + (let (($x2082 (>= sudoku<15><11> 1))) + (let (($x2084 (and $x2082 $x2083))) + (let (($x2080 (<= sudoku<15><10> 25))) + (let (($x2079 (>= sudoku<15><10> 1))) + (let (($x2081 (and $x2079 $x2080))) + (let (($x2077 (<= sudoku<15><9> 25))) + (let (($x2076 (>= sudoku<15><9> 1))) + (let (($x2078 (and $x2076 $x2077))) + (let (($x2074 (<= sudoku<15><8> 25))) + (let (($x2073 (>= sudoku<15><8> 1))) + (let (($x2075 (and $x2073 $x2074))) + (let (($x2071 (<= sudoku<15><7> 25))) + (let (($x2070 (>= sudoku<15><7> 1))) + (let (($x2072 (and $x2070 $x2071))) + (let (($x2068 (<= sudoku<15><6> 25))) + (let (($x2067 (>= sudoku<15><6> 1))) + (let (($x2069 (and $x2067 $x2068))) + (let (($x2065 (<= sudoku<15><5> 25))) + (let (($x2064 (>= sudoku<15><5> 1))) + (let (($x2066 (and $x2064 $x2065))) + (let (($x2062 (<= sudoku<15><4> 25))) + (let (($x2061 (>= sudoku<15><4> 1))) + (let (($x2063 (and $x2061 $x2062))) + (let (($x2059 (<= sudoku<15><3> 25))) + (let (($x2058 (>= sudoku<15><3> 1))) + (let (($x2060 (and $x2058 $x2059))) + (let (($x2056 (<= sudoku<15><2> 25))) + (let (($x2055 (>= sudoku<15><2> 1))) + (let (($x2057 (and $x2055 $x2056))) + (let (($x2053 (<= sudoku<15><1> 25))) + (let (($x2052 (>= sudoku<15><1> 1))) + (let (($x2054 (and $x2052 $x2053))) + (let (($x2050 (<= sudoku<15><0> 25))) + (let (($x2049 (>= sudoku<15><0> 1))) + (let (($x2051 (and $x2049 $x2050))) + (let (($x2047 (<= sudoku<14><24> 25))) + (let (($x2046 (>= sudoku<14><24> 1))) + (let (($x2048 (and $x2046 $x2047))) + (let (($x2044 (<= sudoku<14><23> 25))) + (let (($x2043 (>= sudoku<14><23> 1))) + (let (($x2045 (and $x2043 $x2044))) + (let (($x2041 (<= sudoku<14><22> 25))) + (let (($x2040 (>= sudoku<14><22> 1))) + (let (($x2042 (and $x2040 $x2041))) + (let (($x2038 (<= sudoku<14><21> 25))) + (let (($x2037 (>= sudoku<14><21> 1))) + (let (($x2039 (and $x2037 $x2038))) + (let (($x2035 (<= sudoku<14><20> 25))) + (let (($x2034 (>= sudoku<14><20> 1))) + (let (($x2036 (and $x2034 $x2035))) + (let (($x2032 (<= sudoku<14><19> 25))) + (let (($x2031 (>= sudoku<14><19> 1))) + (let (($x2033 (and $x2031 $x2032))) + (let (($x2029 (<= sudoku<14><18> 25))) + (let (($x2028 (>= sudoku<14><18> 1))) + (let (($x2030 (and $x2028 $x2029))) + (let (($x2026 (<= sudoku<14><17> 25))) + (let (($x2025 (>= sudoku<14><17> 1))) + (let (($x2027 (and $x2025 $x2026))) + (let (($x2023 (<= sudoku<14><16> 25))) + (let (($x2022 (>= sudoku<14><16> 1))) + (let (($x2024 (and $x2022 $x2023))) + (let (($x2020 (<= sudoku<14><15> 25))) + (let (($x2019 (>= sudoku<14><15> 1))) + (let (($x2021 (and $x2019 $x2020))) + (let (($x2017 (<= sudoku<14><14> 25))) + (let (($x2016 (>= sudoku<14><14> 1))) + (let (($x2018 (and $x2016 $x2017))) + (let (($x2014 (<= sudoku<14><13> 25))) + (let (($x2013 (>= sudoku<14><13> 1))) + (let (($x2015 (and $x2013 $x2014))) + (let (($x2011 (<= sudoku<14><12> 25))) + (let (($x2010 (>= sudoku<14><12> 1))) + (let (($x2012 (and $x2010 $x2011))) + (let (($x2008 (<= sudoku<14><11> 25))) + (let (($x2007 (>= sudoku<14><11> 1))) + (let (($x2009 (and $x2007 $x2008))) + (let (($x2005 (<= sudoku<14><10> 25))) + (let (($x2004 (>= sudoku<14><10> 1))) + (let (($x2006 (and $x2004 $x2005))) + (let (($x2002 (<= sudoku<14><9> 25))) + (let (($x2001 (>= sudoku<14><9> 1))) + (let (($x2003 (and $x2001 $x2002))) + (let (($x1999 (<= sudoku<14><8> 25))) + (let (($x1998 (>= sudoku<14><8> 1))) + (let (($x2000 (and $x1998 $x1999))) + (let (($x1996 (<= sudoku<14><7> 25))) + (let (($x1995 (>= sudoku<14><7> 1))) + (let (($x1997 (and $x1995 $x1996))) + (let (($x1993 (<= sudoku<14><6> 25))) + (let (($x1992 (>= sudoku<14><6> 1))) + (let (($x1994 (and $x1992 $x1993))) + (let (($x1990 (<= sudoku<14><5> 25))) + (let (($x1989 (>= sudoku<14><5> 1))) + (let (($x1991 (and $x1989 $x1990))) + (let (($x1987 (<= sudoku<14><4> 25))) + (let (($x1986 (>= sudoku<14><4> 1))) + (let (($x1988 (and $x1986 $x1987))) + (let (($x1984 (<= sudoku<14><3> 25))) + (let (($x1983 (>= sudoku<14><3> 1))) + (let (($x1985 (and $x1983 $x1984))) + (let (($x1981 (<= sudoku<14><2> 25))) + (let (($x1980 (>= sudoku<14><2> 1))) + (let (($x1982 (and $x1980 $x1981))) + (let (($x1978 (<= sudoku<14><1> 25))) + (let (($x1977 (>= sudoku<14><1> 1))) + (let (($x1979 (and $x1977 $x1978))) + (let (($x1975 (<= sudoku<14><0> 25))) + (let (($x1974 (>= sudoku<14><0> 1))) + (let (($x1976 (and $x1974 $x1975))) + (let (($x1972 (<= sudoku<13><24> 25))) + (let (($x1971 (>= sudoku<13><24> 1))) + (let (($x1973 (and $x1971 $x1972))) + (let (($x1969 (<= sudoku<13><23> 25))) + (let (($x1968 (>= sudoku<13><23> 1))) + (let (($x1970 (and $x1968 $x1969))) + (let (($x1966 (<= sudoku<13><22> 25))) + (let (($x1965 (>= sudoku<13><22> 1))) + (let (($x1967 (and $x1965 $x1966))) + (let (($x1963 (<= sudoku<13><21> 25))) + (let (($x1962 (>= sudoku<13><21> 1))) + (let (($x1964 (and $x1962 $x1963))) + (let (($x1960 (<= sudoku<13><20> 25))) + (let (($x1959 (>= sudoku<13><20> 1))) + (let (($x1961 (and $x1959 $x1960))) + (let (($x1957 (<= sudoku<13><19> 25))) + (let (($x1956 (>= sudoku<13><19> 1))) + (let (($x1958 (and $x1956 $x1957))) + (let (($x1954 (<= sudoku<13><18> 25))) + (let (($x1953 (>= sudoku<13><18> 1))) + (let (($x1955 (and $x1953 $x1954))) + (let (($x1951 (<= sudoku<13><17> 25))) + (let (($x1950 (>= sudoku<13><17> 1))) + (let (($x1952 (and $x1950 $x1951))) + (let (($x1948 (<= sudoku<13><16> 25))) + (let (($x1947 (>= sudoku<13><16> 1))) + (let (($x1949 (and $x1947 $x1948))) + (let (($x1945 (<= sudoku<13><15> 25))) + (let (($x1944 (>= sudoku<13><15> 1))) + (let (($x1946 (and $x1944 $x1945))) + (let (($x1942 (<= sudoku<13><14> 25))) + (let (($x1941 (>= sudoku<13><14> 1))) + (let (($x1943 (and $x1941 $x1942))) + (let (($x1939 (<= sudoku<13><13> 25))) + (let (($x1938 (>= sudoku<13><13> 1))) + (let (($x1940 (and $x1938 $x1939))) + (let (($x1936 (<= sudoku<13><12> 25))) + (let (($x1935 (>= sudoku<13><12> 1))) + (let (($x1937 (and $x1935 $x1936))) + (let (($x1933 (<= sudoku<13><11> 25))) + (let (($x1932 (>= sudoku<13><11> 1))) + (let (($x1934 (and $x1932 $x1933))) + (let (($x1930 (<= sudoku<13><10> 25))) + (let (($x1929 (>= sudoku<13><10> 1))) + (let (($x1931 (and $x1929 $x1930))) + (let (($x1927 (<= sudoku<13><9> 25))) + (let (($x1926 (>= sudoku<13><9> 1))) + (let (($x1928 (and $x1926 $x1927))) + (let (($x1924 (<= sudoku<13><8> 25))) + (let (($x1923 (>= sudoku<13><8> 1))) + (let (($x1925 (and $x1923 $x1924))) + (let (($x1921 (<= sudoku<13><7> 25))) + (let (($x1920 (>= sudoku<13><7> 1))) + (let (($x1922 (and $x1920 $x1921))) + (let (($x1918 (<= sudoku<13><6> 25))) + (let (($x1917 (>= sudoku<13><6> 1))) + (let (($x1919 (and $x1917 $x1918))) + (let (($x1915 (<= sudoku<13><5> 25))) + (let (($x1914 (>= sudoku<13><5> 1))) + (let (($x1916 (and $x1914 $x1915))) + (let (($x1912 (<= sudoku<13><4> 25))) + (let (($x1911 (>= sudoku<13><4> 1))) + (let (($x1913 (and $x1911 $x1912))) + (let (($x1909 (<= sudoku<13><3> 25))) + (let (($x1908 (>= sudoku<13><3> 1))) + (let (($x1910 (and $x1908 $x1909))) + (let (($x1906 (<= sudoku<13><2> 25))) + (let (($x1905 (>= sudoku<13><2> 1))) + (let (($x1907 (and $x1905 $x1906))) + (let (($x1903 (<= sudoku<13><1> 25))) + (let (($x1902 (>= sudoku<13><1> 1))) + (let (($x1904 (and $x1902 $x1903))) + (let (($x1900 (<= sudoku<13><0> 25))) + (let (($x1899 (>= sudoku<13><0> 1))) + (let (($x1901 (and $x1899 $x1900))) + (let (($x1897 (<= sudoku<12><24> 25))) + (let (($x1896 (>= sudoku<12><24> 1))) + (let (($x1898 (and $x1896 $x1897))) + (let (($x1894 (<= sudoku<12><23> 25))) + (let (($x1893 (>= sudoku<12><23> 1))) + (let (($x1895 (and $x1893 $x1894))) + (let (($x1891 (<= sudoku<12><22> 25))) + (let (($x1890 (>= sudoku<12><22> 1))) + (let (($x1892 (and $x1890 $x1891))) + (let (($x1888 (<= sudoku<12><21> 25))) + (let (($x1887 (>= sudoku<12><21> 1))) + (let (($x1889 (and $x1887 $x1888))) + (let (($x1885 (<= sudoku<12><20> 25))) + (let (($x1884 (>= sudoku<12><20> 1))) + (let (($x1886 (and $x1884 $x1885))) + (let (($x1882 (<= sudoku<12><19> 25))) + (let (($x1881 (>= sudoku<12><19> 1))) + (let (($x1883 (and $x1881 $x1882))) + (let (($x1879 (<= sudoku<12><18> 25))) + (let (($x1878 (>= sudoku<12><18> 1))) + (let (($x1880 (and $x1878 $x1879))) + (let (($x1876 (<= sudoku<12><17> 25))) + (let (($x1875 (>= sudoku<12><17> 1))) + (let (($x1877 (and $x1875 $x1876))) + (let (($x1873 (<= sudoku<12><16> 25))) + (let (($x1872 (>= sudoku<12><16> 1))) + (let (($x1874 (and $x1872 $x1873))) + (let (($x1870 (<= sudoku<12><15> 25))) + (let (($x1869 (>= sudoku<12><15> 1))) + (let (($x1871 (and $x1869 $x1870))) + (let (($x1867 (<= sudoku<12><14> 25))) + (let (($x1866 (>= sudoku<12><14> 1))) + (let (($x1868 (and $x1866 $x1867))) + (let (($x1864 (<= sudoku<12><13> 25))) + (let (($x1863 (>= sudoku<12><13> 1))) + (let (($x1865 (and $x1863 $x1864))) + (let (($x1861 (<= sudoku<12><12> 25))) + (let (($x1860 (>= sudoku<12><12> 1))) + (let (($x1862 (and $x1860 $x1861))) + (let (($x1858 (<= sudoku<12><11> 25))) + (let (($x1857 (>= sudoku<12><11> 1))) + (let (($x1859 (and $x1857 $x1858))) + (let (($x1855 (<= sudoku<12><10> 25))) + (let (($x1854 (>= sudoku<12><10> 1))) + (let (($x1856 (and $x1854 $x1855))) + (let (($x1852 (<= sudoku<12><9> 25))) + (let (($x1851 (>= sudoku<12><9> 1))) + (let (($x1853 (and $x1851 $x1852))) + (let (($x1849 (<= sudoku<12><8> 25))) + (let (($x1848 (>= sudoku<12><8> 1))) + (let (($x1850 (and $x1848 $x1849))) + (let (($x1846 (<= sudoku<12><7> 25))) + (let (($x1845 (>= sudoku<12><7> 1))) + (let (($x1847 (and $x1845 $x1846))) + (let (($x1843 (<= sudoku<12><6> 25))) + (let (($x1842 (>= sudoku<12><6> 1))) + (let (($x1844 (and $x1842 $x1843))) + (let (($x1840 (<= sudoku<12><5> 25))) + (let (($x1839 (>= sudoku<12><5> 1))) + (let (($x1841 (and $x1839 $x1840))) + (let (($x1837 (<= sudoku<12><4> 25))) + (let (($x1836 (>= sudoku<12><4> 1))) + (let (($x1838 (and $x1836 $x1837))) + (let (($x1834 (<= sudoku<12><3> 25))) + (let (($x1833 (>= sudoku<12><3> 1))) + (let (($x1835 (and $x1833 $x1834))) + (let (($x1831 (<= sudoku<12><2> 25))) + (let (($x1830 (>= sudoku<12><2> 1))) + (let (($x1832 (and $x1830 $x1831))) + (let (($x1828 (<= sudoku<12><1> 25))) + (let (($x1827 (>= sudoku<12><1> 1))) + (let (($x1829 (and $x1827 $x1828))) + (let (($x1825 (<= sudoku<12><0> 25))) + (let (($x1824 (>= sudoku<12><0> 1))) + (let (($x1826 (and $x1824 $x1825))) + (let (($x1822 (<= sudoku<11><24> 25))) + (let (($x1821 (>= sudoku<11><24> 1))) + (let (($x1823 (and $x1821 $x1822))) + (let (($x1819 (<= sudoku<11><23> 25))) + (let (($x1818 (>= sudoku<11><23> 1))) + (let (($x1820 (and $x1818 $x1819))) + (let (($x1816 (<= sudoku<11><22> 25))) + (let (($x1815 (>= sudoku<11><22> 1))) + (let (($x1817 (and $x1815 $x1816))) + (let (($x1813 (<= sudoku<11><21> 25))) + (let (($x1812 (>= sudoku<11><21> 1))) + (let (($x1814 (and $x1812 $x1813))) + (let (($x1810 (<= sudoku<11><20> 25))) + (let (($x1809 (>= sudoku<11><20> 1))) + (let (($x1811 (and $x1809 $x1810))) + (let (($x1807 (<= sudoku<11><19> 25))) + (let (($x1806 (>= sudoku<11><19> 1))) + (let (($x1808 (and $x1806 $x1807))) + (let (($x1804 (<= sudoku<11><18> 25))) + (let (($x1803 (>= sudoku<11><18> 1))) + (let (($x1805 (and $x1803 $x1804))) + (let (($x1801 (<= sudoku<11><17> 25))) + (let (($x1800 (>= sudoku<11><17> 1))) + (let (($x1802 (and $x1800 $x1801))) + (let (($x1798 (<= sudoku<11><16> 25))) + (let (($x1797 (>= sudoku<11><16> 1))) + (let (($x1799 (and $x1797 $x1798))) + (let (($x1795 (<= sudoku<11><15> 25))) + (let (($x1794 (>= sudoku<11><15> 1))) + (let (($x1796 (and $x1794 $x1795))) + (let (($x1792 (<= sudoku<11><14> 25))) + (let (($x1791 (>= sudoku<11><14> 1))) + (let (($x1793 (and $x1791 $x1792))) + (let (($x1789 (<= sudoku<11><13> 25))) + (let (($x1788 (>= sudoku<11><13> 1))) + (let (($x1790 (and $x1788 $x1789))) + (let (($x1786 (<= sudoku<11><12> 25))) + (let (($x1785 (>= sudoku<11><12> 1))) + (let (($x1787 (and $x1785 $x1786))) + (let (($x1783 (<= sudoku<11><11> 25))) + (let (($x1782 (>= sudoku<11><11> 1))) + (let (($x1784 (and $x1782 $x1783))) + (let (($x1780 (<= sudoku<11><10> 25))) + (let (($x1779 (>= sudoku<11><10> 1))) + (let (($x1781 (and $x1779 $x1780))) + (let (($x1777 (<= sudoku<11><9> 25))) + (let (($x1776 (>= sudoku<11><9> 1))) + (let (($x1778 (and $x1776 $x1777))) + (let (($x1774 (<= sudoku<11><8> 25))) + (let (($x1773 (>= sudoku<11><8> 1))) + (let (($x1775 (and $x1773 $x1774))) + (let (($x1771 (<= sudoku<11><7> 25))) + (let (($x1770 (>= sudoku<11><7> 1))) + (let (($x1772 (and $x1770 $x1771))) + (let (($x1768 (<= sudoku<11><6> 25))) + (let (($x1767 (>= sudoku<11><6> 1))) + (let (($x1769 (and $x1767 $x1768))) + (let (($x1765 (<= sudoku<11><5> 25))) + (let (($x1764 (>= sudoku<11><5> 1))) + (let (($x1766 (and $x1764 $x1765))) + (let (($x1762 (<= sudoku<11><4> 25))) + (let (($x1761 (>= sudoku<11><4> 1))) + (let (($x1763 (and $x1761 $x1762))) + (let (($x1759 (<= sudoku<11><3> 25))) + (let (($x1758 (>= sudoku<11><3> 1))) + (let (($x1760 (and $x1758 $x1759))) + (let (($x1756 (<= sudoku<11><2> 25))) + (let (($x1755 (>= sudoku<11><2> 1))) + (let (($x1757 (and $x1755 $x1756))) + (let (($x1753 (<= sudoku<11><1> 25))) + (let (($x1752 (>= sudoku<11><1> 1))) + (let (($x1754 (and $x1752 $x1753))) + (let (($x1750 (<= sudoku<11><0> 25))) + (let (($x1749 (>= sudoku<11><0> 1))) + (let (($x1751 (and $x1749 $x1750))) + (let (($x1747 (<= sudoku<10><24> 25))) + (let (($x1746 (>= sudoku<10><24> 1))) + (let (($x1748 (and $x1746 $x1747))) + (let (($x1744 (<= sudoku<10><23> 25))) + (let (($x1743 (>= sudoku<10><23> 1))) + (let (($x1745 (and $x1743 $x1744))) + (let (($x1741 (<= sudoku<10><22> 25))) + (let (($x1740 (>= sudoku<10><22> 1))) + (let (($x1742 (and $x1740 $x1741))) + (let (($x1738 (<= sudoku<10><21> 25))) + (let (($x1737 (>= sudoku<10><21> 1))) + (let (($x1739 (and $x1737 $x1738))) + (let (($x1735 (<= sudoku<10><20> 25))) + (let (($x1734 (>= sudoku<10><20> 1))) + (let (($x1736 (and $x1734 $x1735))) + (let (($x1732 (<= sudoku<10><19> 25))) + (let (($x1731 (>= sudoku<10><19> 1))) + (let (($x1733 (and $x1731 $x1732))) + (let (($x1729 (<= sudoku<10><18> 25))) + (let (($x1728 (>= sudoku<10><18> 1))) + (let (($x1730 (and $x1728 $x1729))) + (let (($x1726 (<= sudoku<10><17> 25))) + (let (($x1725 (>= sudoku<10><17> 1))) + (let (($x1727 (and $x1725 $x1726))) + (let (($x1723 (<= sudoku<10><16> 25))) + (let (($x1722 (>= sudoku<10><16> 1))) + (let (($x1724 (and $x1722 $x1723))) + (let (($x1720 (<= sudoku<10><15> 25))) + (let (($x1719 (>= sudoku<10><15> 1))) + (let (($x1721 (and $x1719 $x1720))) + (let (($x1717 (<= sudoku<10><14> 25))) + (let (($x1716 (>= sudoku<10><14> 1))) + (let (($x1718 (and $x1716 $x1717))) + (let (($x1714 (<= sudoku<10><13> 25))) + (let (($x1713 (>= sudoku<10><13> 1))) + (let (($x1715 (and $x1713 $x1714))) + (let (($x1711 (<= sudoku<10><12> 25))) + (let (($x1710 (>= sudoku<10><12> 1))) + (let (($x1712 (and $x1710 $x1711))) + (let (($x1708 (<= sudoku<10><11> 25))) + (let (($x1707 (>= sudoku<10><11> 1))) + (let (($x1709 (and $x1707 $x1708))) + (let (($x1705 (<= sudoku<10><10> 25))) + (let (($x1704 (>= sudoku<10><10> 1))) + (let (($x1706 (and $x1704 $x1705))) + (let (($x1702 (<= sudoku<10><9> 25))) + (let (($x1701 (>= sudoku<10><9> 1))) + (let (($x1703 (and $x1701 $x1702))) + (let (($x1699 (<= sudoku<10><8> 25))) + (let (($x1698 (>= sudoku<10><8> 1))) + (let (($x1700 (and $x1698 $x1699))) + (let (($x1696 (<= sudoku<10><7> 25))) + (let (($x1695 (>= sudoku<10><7> 1))) + (let (($x1697 (and $x1695 $x1696))) + (let (($x1693 (<= sudoku<10><6> 25))) + (let (($x1692 (>= sudoku<10><6> 1))) + (let (($x1694 (and $x1692 $x1693))) + (let (($x1690 (<= sudoku<10><5> 25))) + (let (($x1689 (>= sudoku<10><5> 1))) + (let (($x1691 (and $x1689 $x1690))) + (let (($x1687 (<= sudoku<10><4> 25))) + (let (($x1686 (>= sudoku<10><4> 1))) + (let (($x1688 (and $x1686 $x1687))) + (let (($x1684 (<= sudoku<10><3> 25))) + (let (($x1683 (>= sudoku<10><3> 1))) + (let (($x1685 (and $x1683 $x1684))) + (let (($x1681 (<= sudoku<10><2> 25))) + (let (($x1680 (>= sudoku<10><2> 1))) + (let (($x1682 (and $x1680 $x1681))) + (let (($x1678 (<= sudoku<10><1> 25))) + (let (($x1677 (>= sudoku<10><1> 1))) + (let (($x1679 (and $x1677 $x1678))) + (let (($x1675 (<= sudoku<10><0> 25))) + (let (($x1674 (>= sudoku<10><0> 1))) + (let (($x1676 (and $x1674 $x1675))) + (let (($x1672 (<= sudoku<9><24> 25))) + (let (($x1671 (>= sudoku<9><24> 1))) + (let (($x1673 (and $x1671 $x1672))) + (let (($x1669 (<= sudoku<9><23> 25))) + (let (($x1668 (>= sudoku<9><23> 1))) + (let (($x1670 (and $x1668 $x1669))) + (let (($x1666 (<= sudoku<9><22> 25))) + (let (($x1665 (>= sudoku<9><22> 1))) + (let (($x1667 (and $x1665 $x1666))) + (let (($x1663 (<= sudoku<9><21> 25))) + (let (($x1662 (>= sudoku<9><21> 1))) + (let (($x1664 (and $x1662 $x1663))) + (let (($x1660 (<= sudoku<9><20> 25))) + (let (($x1659 (>= sudoku<9><20> 1))) + (let (($x1661 (and $x1659 $x1660))) + (let (($x1657 (<= sudoku<9><19> 25))) + (let (($x1656 (>= sudoku<9><19> 1))) + (let (($x1658 (and $x1656 $x1657))) + (let (($x1654 (<= sudoku<9><18> 25))) + (let (($x1653 (>= sudoku<9><18> 1))) + (let (($x1655 (and $x1653 $x1654))) + (let (($x1651 (<= sudoku<9><17> 25))) + (let (($x1650 (>= sudoku<9><17> 1))) + (let (($x1652 (and $x1650 $x1651))) + (let (($x1648 (<= sudoku<9><16> 25))) + (let (($x1647 (>= sudoku<9><16> 1))) + (let (($x1649 (and $x1647 $x1648))) + (let (($x1645 (<= sudoku<9><15> 25))) + (let (($x1644 (>= sudoku<9><15> 1))) + (let (($x1646 (and $x1644 $x1645))) + (let (($x1642 (<= sudoku<9><14> 25))) + (let (($x1641 (>= sudoku<9><14> 1))) + (let (($x1643 (and $x1641 $x1642))) + (let (($x1639 (<= sudoku<9><13> 25))) + (let (($x1638 (>= sudoku<9><13> 1))) + (let (($x1640 (and $x1638 $x1639))) + (let (($x1636 (<= sudoku<9><12> 25))) + (let (($x1635 (>= sudoku<9><12> 1))) + (let (($x1637 (and $x1635 $x1636))) + (let (($x1633 (<= sudoku<9><11> 25))) + (let (($x1632 (>= sudoku<9><11> 1))) + (let (($x1634 (and $x1632 $x1633))) + (let (($x1630 (<= sudoku<9><10> 25))) + (let (($x1629 (>= sudoku<9><10> 1))) + (let (($x1631 (and $x1629 $x1630))) + (let (($x1627 (<= sudoku<9><9> 25))) + (let (($x1626 (>= sudoku<9><9> 1))) + (let (($x1628 (and $x1626 $x1627))) + (let (($x1624 (<= sudoku<9><8> 25))) + (let (($x1623 (>= sudoku<9><8> 1))) + (let (($x1625 (and $x1623 $x1624))) + (let (($x1621 (<= sudoku<9><7> 25))) + (let (($x1620 (>= sudoku<9><7> 1))) + (let (($x1622 (and $x1620 $x1621))) + (let (($x1618 (<= sudoku<9><6> 25))) + (let (($x1617 (>= sudoku<9><6> 1))) + (let (($x1619 (and $x1617 $x1618))) + (let (($x1615 (<= sudoku<9><5> 25))) + (let (($x1614 (>= sudoku<9><5> 1))) + (let (($x1616 (and $x1614 $x1615))) + (let (($x1612 (<= sudoku<9><4> 25))) + (let (($x1611 (>= sudoku<9><4> 1))) + (let (($x1613 (and $x1611 $x1612))) + (let (($x1609 (<= sudoku<9><3> 25))) + (let (($x1608 (>= sudoku<9><3> 1))) + (let (($x1610 (and $x1608 $x1609))) + (let (($x1606 (<= sudoku<9><2> 25))) + (let (($x1605 (>= sudoku<9><2> 1))) + (let (($x1607 (and $x1605 $x1606))) + (let (($x1603 (<= sudoku<9><1> 25))) + (let (($x1602 (>= sudoku<9><1> 1))) + (let (($x1604 (and $x1602 $x1603))) + (let (($x1600 (<= sudoku<9><0> 25))) + (let (($x1599 (>= sudoku<9><0> 1))) + (let (($x1601 (and $x1599 $x1600))) + (let (($x1597 (<= sudoku<8><24> 25))) + (let (($x1596 (>= sudoku<8><24> 1))) + (let (($x1598 (and $x1596 $x1597))) + (let (($x1594 (<= sudoku<8><23> 25))) + (let (($x1593 (>= sudoku<8><23> 1))) + (let (($x1595 (and $x1593 $x1594))) + (let (($x1591 (<= sudoku<8><22> 25))) + (let (($x1590 (>= sudoku<8><22> 1))) + (let (($x1592 (and $x1590 $x1591))) + (let (($x1588 (<= sudoku<8><21> 25))) + (let (($x1587 (>= sudoku<8><21> 1))) + (let (($x1589 (and $x1587 $x1588))) + (let (($x1585 (<= sudoku<8><20> 25))) + (let (($x1584 (>= sudoku<8><20> 1))) + (let (($x1586 (and $x1584 $x1585))) + (let (($x1582 (<= sudoku<8><19> 25))) + (let (($x1581 (>= sudoku<8><19> 1))) + (let (($x1583 (and $x1581 $x1582))) + (let (($x1579 (<= sudoku<8><18> 25))) + (let (($x1578 (>= sudoku<8><18> 1))) + (let (($x1580 (and $x1578 $x1579))) + (let (($x1576 (<= sudoku<8><17> 25))) + (let (($x1575 (>= sudoku<8><17> 1))) + (let (($x1577 (and $x1575 $x1576))) + (let (($x1573 (<= sudoku<8><16> 25))) + (let (($x1572 (>= sudoku<8><16> 1))) + (let (($x1574 (and $x1572 $x1573))) + (let (($x1570 (<= sudoku<8><15> 25))) + (let (($x1569 (>= sudoku<8><15> 1))) + (let (($x1571 (and $x1569 $x1570))) + (let (($x1567 (<= sudoku<8><14> 25))) + (let (($x1566 (>= sudoku<8><14> 1))) + (let (($x1568 (and $x1566 $x1567))) + (let (($x1564 (<= sudoku<8><13> 25))) + (let (($x1563 (>= sudoku<8><13> 1))) + (let (($x1565 (and $x1563 $x1564))) + (let (($x1561 (<= sudoku<8><12> 25))) + (let (($x1560 (>= sudoku<8><12> 1))) + (let (($x1562 (and $x1560 $x1561))) + (let (($x1558 (<= sudoku<8><11> 25))) + (let (($x1557 (>= sudoku<8><11> 1))) + (let (($x1559 (and $x1557 $x1558))) + (let (($x1555 (<= sudoku<8><10> 25))) + (let (($x1554 (>= sudoku<8><10> 1))) + (let (($x1556 (and $x1554 $x1555))) + (let (($x1552 (<= sudoku<8><9> 25))) + (let (($x1551 (>= sudoku<8><9> 1))) + (let (($x1553 (and $x1551 $x1552))) + (let (($x1549 (<= sudoku<8><8> 25))) + (let (($x1548 (>= sudoku<8><8> 1))) + (let (($x1550 (and $x1548 $x1549))) + (let (($x1546 (<= sudoku<8><7> 25))) + (let (($x1545 (>= sudoku<8><7> 1))) + (let (($x1547 (and $x1545 $x1546))) + (let (($x1543 (<= sudoku<8><6> 25))) + (let (($x1542 (>= sudoku<8><6> 1))) + (let (($x1544 (and $x1542 $x1543))) + (let (($x1540 (<= sudoku<8><5> 25))) + (let (($x1539 (>= sudoku<8><5> 1))) + (let (($x1541 (and $x1539 $x1540))) + (let (($x1537 (<= sudoku<8><4> 25))) + (let (($x1536 (>= sudoku<8><4> 1))) + (let (($x1538 (and $x1536 $x1537))) + (let (($x1534 (<= sudoku<8><3> 25))) + (let (($x1533 (>= sudoku<8><3> 1))) + (let (($x1535 (and $x1533 $x1534))) + (let (($x1531 (<= sudoku<8><2> 25))) + (let (($x1530 (>= sudoku<8><2> 1))) + (let (($x1532 (and $x1530 $x1531))) + (let (($x1528 (<= sudoku<8><1> 25))) + (let (($x1527 (>= sudoku<8><1> 1))) + (let (($x1529 (and $x1527 $x1528))) + (let (($x1525 (<= sudoku<8><0> 25))) + (let (($x1524 (>= sudoku<8><0> 1))) + (let (($x1526 (and $x1524 $x1525))) + (let (($x1522 (<= sudoku<7><24> 25))) + (let (($x1521 (>= sudoku<7><24> 1))) + (let (($x1523 (and $x1521 $x1522))) + (let (($x1519 (<= sudoku<7><23> 25))) + (let (($x1518 (>= sudoku<7><23> 1))) + (let (($x1520 (and $x1518 $x1519))) + (let (($x1516 (<= sudoku<7><22> 25))) + (let (($x1515 (>= sudoku<7><22> 1))) + (let (($x1517 (and $x1515 $x1516))) + (let (($x1513 (<= sudoku<7><21> 25))) + (let (($x1512 (>= sudoku<7><21> 1))) + (let (($x1514 (and $x1512 $x1513))) + (let (($x1510 (<= sudoku<7><20> 25))) + (let (($x1509 (>= sudoku<7><20> 1))) + (let (($x1511 (and $x1509 $x1510))) + (let (($x1507 (<= sudoku<7><19> 25))) + (let (($x1506 (>= sudoku<7><19> 1))) + (let (($x1508 (and $x1506 $x1507))) + (let (($x1504 (<= sudoku<7><18> 25))) + (let (($x1503 (>= sudoku<7><18> 1))) + (let (($x1505 (and $x1503 $x1504))) + (let (($x1501 (<= sudoku<7><17> 25))) + (let (($x1500 (>= sudoku<7><17> 1))) + (let (($x1502 (and $x1500 $x1501))) + (let (($x1498 (<= sudoku<7><16> 25))) + (let (($x1497 (>= sudoku<7><16> 1))) + (let (($x1499 (and $x1497 $x1498))) + (let (($x1495 (<= sudoku<7><15> 25))) + (let (($x1494 (>= sudoku<7><15> 1))) + (let (($x1496 (and $x1494 $x1495))) + (let (($x1492 (<= sudoku<7><14> 25))) + (let (($x1491 (>= sudoku<7><14> 1))) + (let (($x1493 (and $x1491 $x1492))) + (let (($x1489 (<= sudoku<7><13> 25))) + (let (($x1488 (>= sudoku<7><13> 1))) + (let (($x1490 (and $x1488 $x1489))) + (let (($x1486 (<= sudoku<7><12> 25))) + (let (($x1485 (>= sudoku<7><12> 1))) + (let (($x1487 (and $x1485 $x1486))) + (let (($x1483 (<= sudoku<7><11> 25))) + (let (($x1482 (>= sudoku<7><11> 1))) + (let (($x1484 (and $x1482 $x1483))) + (let (($x1480 (<= sudoku<7><10> 25))) + (let (($x1479 (>= sudoku<7><10> 1))) + (let (($x1481 (and $x1479 $x1480))) + (let (($x1477 (<= sudoku<7><9> 25))) + (let (($x1476 (>= sudoku<7><9> 1))) + (let (($x1478 (and $x1476 $x1477))) + (let (($x1474 (<= sudoku<7><8> 25))) + (let (($x1473 (>= sudoku<7><8> 1))) + (let (($x1475 (and $x1473 $x1474))) + (let (($x1471 (<= sudoku<7><7> 25))) + (let (($x1470 (>= sudoku<7><7> 1))) + (let (($x1472 (and $x1470 $x1471))) + (let (($x1468 (<= sudoku<7><6> 25))) + (let (($x1467 (>= sudoku<7><6> 1))) + (let (($x1469 (and $x1467 $x1468))) + (let (($x1465 (<= sudoku<7><5> 25))) + (let (($x1464 (>= sudoku<7><5> 1))) + (let (($x1466 (and $x1464 $x1465))) + (let (($x1462 (<= sudoku<7><4> 25))) + (let (($x1461 (>= sudoku<7><4> 1))) + (let (($x1463 (and $x1461 $x1462))) + (let (($x1459 (<= sudoku<7><3> 25))) + (let (($x1458 (>= sudoku<7><3> 1))) + (let (($x1460 (and $x1458 $x1459))) + (let (($x1456 (<= sudoku<7><2> 25))) + (let (($x1455 (>= sudoku<7><2> 1))) + (let (($x1457 (and $x1455 $x1456))) + (let (($x1453 (<= sudoku<7><1> 25))) + (let (($x1452 (>= sudoku<7><1> 1))) + (let (($x1454 (and $x1452 $x1453))) + (let (($x1450 (<= sudoku<7><0> 25))) + (let (($x1449 (>= sudoku<7><0> 1))) + (let (($x1451 (and $x1449 $x1450))) + (let (($x1447 (<= sudoku<6><24> 25))) + (let (($x1446 (>= sudoku<6><24> 1))) + (let (($x1448 (and $x1446 $x1447))) + (let (($x1444 (<= sudoku<6><23> 25))) + (let (($x1443 (>= sudoku<6><23> 1))) + (let (($x1445 (and $x1443 $x1444))) + (let (($x1441 (<= sudoku<6><22> 25))) + (let (($x1440 (>= sudoku<6><22> 1))) + (let (($x1442 (and $x1440 $x1441))) + (let (($x1438 (<= sudoku<6><21> 25))) + (let (($x1437 (>= sudoku<6><21> 1))) + (let (($x1439 (and $x1437 $x1438))) + (let (($x1435 (<= sudoku<6><20> 25))) + (let (($x1434 (>= sudoku<6><20> 1))) + (let (($x1436 (and $x1434 $x1435))) + (let (($x1432 (<= sudoku<6><19> 25))) + (let (($x1431 (>= sudoku<6><19> 1))) + (let (($x1433 (and $x1431 $x1432))) + (let (($x1429 (<= sudoku<6><18> 25))) + (let (($x1428 (>= sudoku<6><18> 1))) + (let (($x1430 (and $x1428 $x1429))) + (let (($x1426 (<= sudoku<6><17> 25))) + (let (($x1425 (>= sudoku<6><17> 1))) + (let (($x1427 (and $x1425 $x1426))) + (let (($x1423 (<= sudoku<6><16> 25))) + (let (($x1422 (>= sudoku<6><16> 1))) + (let (($x1424 (and $x1422 $x1423))) + (let (($x1420 (<= sudoku<6><15> 25))) + (let (($x1419 (>= sudoku<6><15> 1))) + (let (($x1421 (and $x1419 $x1420))) + (let (($x1417 (<= sudoku<6><14> 25))) + (let (($x1416 (>= sudoku<6><14> 1))) + (let (($x1418 (and $x1416 $x1417))) + (let (($x1414 (<= sudoku<6><13> 25))) + (let (($x1413 (>= sudoku<6><13> 1))) + (let (($x1415 (and $x1413 $x1414))) + (let (($x1411 (<= sudoku<6><12> 25))) + (let (($x1410 (>= sudoku<6><12> 1))) + (let (($x1412 (and $x1410 $x1411))) + (let (($x1408 (<= sudoku<6><11> 25))) + (let (($x1407 (>= sudoku<6><11> 1))) + (let (($x1409 (and $x1407 $x1408))) + (let (($x1405 (<= sudoku<6><10> 25))) + (let (($x1404 (>= sudoku<6><10> 1))) + (let (($x1406 (and $x1404 $x1405))) + (let (($x1402 (<= sudoku<6><9> 25))) + (let (($x1401 (>= sudoku<6><9> 1))) + (let (($x1403 (and $x1401 $x1402))) + (let (($x1399 (<= sudoku<6><8> 25))) + (let (($x1398 (>= sudoku<6><8> 1))) + (let (($x1400 (and $x1398 $x1399))) + (let (($x1396 (<= sudoku<6><7> 25))) + (let (($x1395 (>= sudoku<6><7> 1))) + (let (($x1397 (and $x1395 $x1396))) + (let (($x1393 (<= sudoku<6><6> 25))) + (let (($x1392 (>= sudoku<6><6> 1))) + (let (($x1394 (and $x1392 $x1393))) + (let (($x1390 (<= sudoku<6><5> 25))) + (let (($x1389 (>= sudoku<6><5> 1))) + (let (($x1391 (and $x1389 $x1390))) + (let (($x1387 (<= sudoku<6><4> 25))) + (let (($x1386 (>= sudoku<6><4> 1))) + (let (($x1388 (and $x1386 $x1387))) + (let (($x1384 (<= sudoku<6><3> 25))) + (let (($x1383 (>= sudoku<6><3> 1))) + (let (($x1385 (and $x1383 $x1384))) + (let (($x1381 (<= sudoku<6><2> 25))) + (let (($x1380 (>= sudoku<6><2> 1))) + (let (($x1382 (and $x1380 $x1381))) + (let (($x1378 (<= sudoku<6><1> 25))) + (let (($x1377 (>= sudoku<6><1> 1))) + (let (($x1379 (and $x1377 $x1378))) + (let (($x1375 (<= sudoku<6><0> 25))) + (let (($x1374 (>= sudoku<6><0> 1))) + (let (($x1376 (and $x1374 $x1375))) + (let (($x1372 (<= sudoku<5><24> 25))) + (let (($x1371 (>= sudoku<5><24> 1))) + (let (($x1373 (and $x1371 $x1372))) + (let (($x1369 (<= sudoku<5><23> 25))) + (let (($x1368 (>= sudoku<5><23> 1))) + (let (($x1370 (and $x1368 $x1369))) + (let (($x1366 (<= sudoku<5><22> 25))) + (let (($x1365 (>= sudoku<5><22> 1))) + (let (($x1367 (and $x1365 $x1366))) + (let (($x1363 (<= sudoku<5><21> 25))) + (let (($x1362 (>= sudoku<5><21> 1))) + (let (($x1364 (and $x1362 $x1363))) + (let (($x1360 (<= sudoku<5><20> 25))) + (let (($x1359 (>= sudoku<5><20> 1))) + (let (($x1361 (and $x1359 $x1360))) + (let (($x1357 (<= sudoku<5><19> 25))) + (let (($x1356 (>= sudoku<5><19> 1))) + (let (($x1358 (and $x1356 $x1357))) + (let (($x1354 (<= sudoku<5><18> 25))) + (let (($x1353 (>= sudoku<5><18> 1))) + (let (($x1355 (and $x1353 $x1354))) + (let (($x1351 (<= sudoku<5><17> 25))) + (let (($x1350 (>= sudoku<5><17> 1))) + (let (($x1352 (and $x1350 $x1351))) + (let (($x1348 (<= sudoku<5><16> 25))) + (let (($x1347 (>= sudoku<5><16> 1))) + (let (($x1349 (and $x1347 $x1348))) + (let (($x1345 (<= sudoku<5><15> 25))) + (let (($x1344 (>= sudoku<5><15> 1))) + (let (($x1346 (and $x1344 $x1345))) + (let (($x1342 (<= sudoku<5><14> 25))) + (let (($x1341 (>= sudoku<5><14> 1))) + (let (($x1343 (and $x1341 $x1342))) + (let (($x1339 (<= sudoku<5><13> 25))) + (let (($x1338 (>= sudoku<5><13> 1))) + (let (($x1340 (and $x1338 $x1339))) + (let (($x1336 (<= sudoku<5><12> 25))) + (let (($x1335 (>= sudoku<5><12> 1))) + (let (($x1337 (and $x1335 $x1336))) + (let (($x1333 (<= sudoku<5><11> 25))) + (let (($x1332 (>= sudoku<5><11> 1))) + (let (($x1334 (and $x1332 $x1333))) + (let (($x1330 (<= sudoku<5><10> 25))) + (let (($x1329 (>= sudoku<5><10> 1))) + (let (($x1331 (and $x1329 $x1330))) + (let (($x1327 (<= sudoku<5><9> 25))) + (let (($x1326 (>= sudoku<5><9> 1))) + (let (($x1328 (and $x1326 $x1327))) + (let (($x1324 (<= sudoku<5><8> 25))) + (let (($x1323 (>= sudoku<5><8> 1))) + (let (($x1325 (and $x1323 $x1324))) + (let (($x1321 (<= sudoku<5><7> 25))) + (let (($x1320 (>= sudoku<5><7> 1))) + (let (($x1322 (and $x1320 $x1321))) + (let (($x1318 (<= sudoku<5><6> 25))) + (let (($x1317 (>= sudoku<5><6> 1))) + (let (($x1319 (and $x1317 $x1318))) + (let (($x1315 (<= sudoku<5><5> 25))) + (let (($x1314 (>= sudoku<5><5> 1))) + (let (($x1316 (and $x1314 $x1315))) + (let (($x1312 (<= sudoku<5><4> 25))) + (let (($x1311 (>= sudoku<5><4> 1))) + (let (($x1313 (and $x1311 $x1312))) + (let (($x1309 (<= sudoku<5><3> 25))) + (let (($x1308 (>= sudoku<5><3> 1))) + (let (($x1310 (and $x1308 $x1309))) + (let (($x1306 (<= sudoku<5><2> 25))) + (let (($x1305 (>= sudoku<5><2> 1))) + (let (($x1307 (and $x1305 $x1306))) + (let (($x1303 (<= sudoku<5><1> 25))) + (let (($x1302 (>= sudoku<5><1> 1))) + (let (($x1304 (and $x1302 $x1303))) + (let (($x1300 (<= sudoku<5><0> 25))) + (let (($x1299 (>= sudoku<5><0> 1))) + (let (($x1301 (and $x1299 $x1300))) + (let (($x1297 (<= sudoku<4><24> 25))) + (let (($x1296 (>= sudoku<4><24> 1))) + (let (($x1298 (and $x1296 $x1297))) + (let (($x1294 (<= sudoku<4><23> 25))) + (let (($x1293 (>= sudoku<4><23> 1))) + (let (($x1295 (and $x1293 $x1294))) + (let (($x1291 (<= sudoku<4><22> 25))) + (let (($x1290 (>= sudoku<4><22> 1))) + (let (($x1292 (and $x1290 $x1291))) + (let (($x1288 (<= sudoku<4><21> 25))) + (let (($x1287 (>= sudoku<4><21> 1))) + (let (($x1289 (and $x1287 $x1288))) + (let (($x1285 (<= sudoku<4><20> 25))) + (let (($x1284 (>= sudoku<4><20> 1))) + (let (($x1286 (and $x1284 $x1285))) + (let (($x1282 (<= sudoku<4><19> 25))) + (let (($x1281 (>= sudoku<4><19> 1))) + (let (($x1283 (and $x1281 $x1282))) + (let (($x1279 (<= sudoku<4><18> 25))) + (let (($x1278 (>= sudoku<4><18> 1))) + (let (($x1280 (and $x1278 $x1279))) + (let (($x1276 (<= sudoku<4><17> 25))) + (let (($x1275 (>= sudoku<4><17> 1))) + (let (($x1277 (and $x1275 $x1276))) + (let (($x1273 (<= sudoku<4><16> 25))) + (let (($x1272 (>= sudoku<4><16> 1))) + (let (($x1274 (and $x1272 $x1273))) + (let (($x1270 (<= sudoku<4><15> 25))) + (let (($x1269 (>= sudoku<4><15> 1))) + (let (($x1271 (and $x1269 $x1270))) + (let (($x1267 (<= sudoku<4><14> 25))) + (let (($x1266 (>= sudoku<4><14> 1))) + (let (($x1268 (and $x1266 $x1267))) + (let (($x1264 (<= sudoku<4><13> 25))) + (let (($x1263 (>= sudoku<4><13> 1))) + (let (($x1265 (and $x1263 $x1264))) + (let (($x1261 (<= sudoku<4><12> 25))) + (let (($x1260 (>= sudoku<4><12> 1))) + (let (($x1262 (and $x1260 $x1261))) + (let (($x1258 (<= sudoku<4><11> 25))) + (let (($x1257 (>= sudoku<4><11> 1))) + (let (($x1259 (and $x1257 $x1258))) + (let (($x1255 (<= sudoku<4><10> 25))) + (let (($x1254 (>= sudoku<4><10> 1))) + (let (($x1256 (and $x1254 $x1255))) + (let (($x1252 (<= sudoku<4><9> 25))) + (let (($x1251 (>= sudoku<4><9> 1))) + (let (($x1253 (and $x1251 $x1252))) + (let (($x1249 (<= sudoku<4><8> 25))) + (let (($x1248 (>= sudoku<4><8> 1))) + (let (($x1250 (and $x1248 $x1249))) + (let (($x1246 (<= sudoku<4><7> 25))) + (let (($x1245 (>= sudoku<4><7> 1))) + (let (($x1247 (and $x1245 $x1246))) + (let (($x1243 (<= sudoku<4><6> 25))) + (let (($x1242 (>= sudoku<4><6> 1))) + (let (($x1244 (and $x1242 $x1243))) + (let (($x1240 (<= sudoku<4><5> 25))) + (let (($x1239 (>= sudoku<4><5> 1))) + (let (($x1241 (and $x1239 $x1240))) + (let (($x1237 (<= sudoku<4><4> 25))) + (let (($x1236 (>= sudoku<4><4> 1))) + (let (($x1238 (and $x1236 $x1237))) + (let (($x1234 (<= sudoku<4><3> 25))) + (let (($x1233 (>= sudoku<4><3> 1))) + (let (($x1235 (and $x1233 $x1234))) + (let (($x1231 (<= sudoku<4><2> 25))) + (let (($x1230 (>= sudoku<4><2> 1))) + (let (($x1232 (and $x1230 $x1231))) + (let (($x1228 (<= sudoku<4><1> 25))) + (let (($x1227 (>= sudoku<4><1> 1))) + (let (($x1229 (and $x1227 $x1228))) + (let (($x1225 (<= sudoku<4><0> 25))) + (let (($x1224 (>= sudoku<4><0> 1))) + (let (($x1226 (and $x1224 $x1225))) + (let (($x1222 (<= sudoku<3><24> 25))) + (let (($x1221 (>= sudoku<3><24> 1))) + (let (($x1223 (and $x1221 $x1222))) + (let (($x1219 (<= sudoku<3><23> 25))) + (let (($x1218 (>= sudoku<3><23> 1))) + (let (($x1220 (and $x1218 $x1219))) + (let (($x1216 (<= sudoku<3><22> 25))) + (let (($x1215 (>= sudoku<3><22> 1))) + (let (($x1217 (and $x1215 $x1216))) + (let (($x1213 (<= sudoku<3><21> 25))) + (let (($x1212 (>= sudoku<3><21> 1))) + (let (($x1214 (and $x1212 $x1213))) + (let (($x1210 (<= sudoku<3><20> 25))) + (let (($x1209 (>= sudoku<3><20> 1))) + (let (($x1211 (and $x1209 $x1210))) + (let (($x1207 (<= sudoku<3><19> 25))) + (let (($x1206 (>= sudoku<3><19> 1))) + (let (($x1208 (and $x1206 $x1207))) + (let (($x1204 (<= sudoku<3><18> 25))) + (let (($x1203 (>= sudoku<3><18> 1))) + (let (($x1205 (and $x1203 $x1204))) + (let (($x1201 (<= sudoku<3><17> 25))) + (let (($x1200 (>= sudoku<3><17> 1))) + (let (($x1202 (and $x1200 $x1201))) + (let (($x1198 (<= sudoku<3><16> 25))) + (let (($x1197 (>= sudoku<3><16> 1))) + (let (($x1199 (and $x1197 $x1198))) + (let (($x1195 (<= sudoku<3><15> 25))) + (let (($x1194 (>= sudoku<3><15> 1))) + (let (($x1196 (and $x1194 $x1195))) + (let (($x1192 (<= sudoku<3><14> 25))) + (let (($x1191 (>= sudoku<3><14> 1))) + (let (($x1193 (and $x1191 $x1192))) + (let (($x1189 (<= sudoku<3><13> 25))) + (let (($x1188 (>= sudoku<3><13> 1))) + (let (($x1190 (and $x1188 $x1189))) + (let (($x1186 (<= sudoku<3><12> 25))) + (let (($x1185 (>= sudoku<3><12> 1))) + (let (($x1187 (and $x1185 $x1186))) + (let (($x1183 (<= sudoku<3><11> 25))) + (let (($x1182 (>= sudoku<3><11> 1))) + (let (($x1184 (and $x1182 $x1183))) + (let (($x1180 (<= sudoku<3><10> 25))) + (let (($x1179 (>= sudoku<3><10> 1))) + (let (($x1181 (and $x1179 $x1180))) + (let (($x1177 (<= sudoku<3><9> 25))) + (let (($x1176 (>= sudoku<3><9> 1))) + (let (($x1178 (and $x1176 $x1177))) + (let (($x1174 (<= sudoku<3><8> 25))) + (let (($x1173 (>= sudoku<3><8> 1))) + (let (($x1175 (and $x1173 $x1174))) + (let (($x1171 (<= sudoku<3><7> 25))) + (let (($x1170 (>= sudoku<3><7> 1))) + (let (($x1172 (and $x1170 $x1171))) + (let (($x1168 (<= sudoku<3><6> 25))) + (let (($x1167 (>= sudoku<3><6> 1))) + (let (($x1169 (and $x1167 $x1168))) + (let (($x1165 (<= sudoku<3><5> 25))) + (let (($x1164 (>= sudoku<3><5> 1))) + (let (($x1166 (and $x1164 $x1165))) + (let (($x1162 (<= sudoku<3><4> 25))) + (let (($x1161 (>= sudoku<3><4> 1))) + (let (($x1163 (and $x1161 $x1162))) + (let (($x1159 (<= sudoku<3><3> 25))) + (let (($x1158 (>= sudoku<3><3> 1))) + (let (($x1160 (and $x1158 $x1159))) + (let (($x1156 (<= sudoku<3><2> 25))) + (let (($x1155 (>= sudoku<3><2> 1))) + (let (($x1157 (and $x1155 $x1156))) + (let (($x1153 (<= sudoku<3><1> 25))) + (let (($x1152 (>= sudoku<3><1> 1))) + (let (($x1154 (and $x1152 $x1153))) + (let (($x1150 (<= sudoku<3><0> 25))) + (let (($x1149 (>= sudoku<3><0> 1))) + (let (($x1151 (and $x1149 $x1150))) + (let (($x1147 (<= sudoku<2><24> 25))) + (let (($x1146 (>= sudoku<2><24> 1))) + (let (($x1148 (and $x1146 $x1147))) + (let (($x1144 (<= sudoku<2><23> 25))) + (let (($x1143 (>= sudoku<2><23> 1))) + (let (($x1145 (and $x1143 $x1144))) + (let (($x1141 (<= sudoku<2><22> 25))) + (let (($x1140 (>= sudoku<2><22> 1))) + (let (($x1142 (and $x1140 $x1141))) + (let (($x1138 (<= sudoku<2><21> 25))) + (let (($x1137 (>= sudoku<2><21> 1))) + (let (($x1139 (and $x1137 $x1138))) + (let (($x1135 (<= sudoku<2><20> 25))) + (let (($x1134 (>= sudoku<2><20> 1))) + (let (($x1136 (and $x1134 $x1135))) + (let (($x1132 (<= sudoku<2><19> 25))) + (let (($x1131 (>= sudoku<2><19> 1))) + (let (($x1133 (and $x1131 $x1132))) + (let (($x1129 (<= sudoku<2><18> 25))) + (let (($x1128 (>= sudoku<2><18> 1))) + (let (($x1130 (and $x1128 $x1129))) + (let (($x1126 (<= sudoku<2><17> 25))) + (let (($x1125 (>= sudoku<2><17> 1))) + (let (($x1127 (and $x1125 $x1126))) + (let (($x1123 (<= sudoku<2><16> 25))) + (let (($x1122 (>= sudoku<2><16> 1))) + (let (($x1124 (and $x1122 $x1123))) + (let (($x1120 (<= sudoku<2><15> 25))) + (let (($x1119 (>= sudoku<2><15> 1))) + (let (($x1121 (and $x1119 $x1120))) + (let (($x1117 (<= sudoku<2><14> 25))) + (let (($x1116 (>= sudoku<2><14> 1))) + (let (($x1118 (and $x1116 $x1117))) + (let (($x1114 (<= sudoku<2><13> 25))) + (let (($x1113 (>= sudoku<2><13> 1))) + (let (($x1115 (and $x1113 $x1114))) + (let (($x1111 (<= sudoku<2><12> 25))) + (let (($x1110 (>= sudoku<2><12> 1))) + (let (($x1112 (and $x1110 $x1111))) + (let (($x1108 (<= sudoku<2><11> 25))) + (let (($x1107 (>= sudoku<2><11> 1))) + (let (($x1109 (and $x1107 $x1108))) + (let (($x1105 (<= sudoku<2><10> 25))) + (let (($x1104 (>= sudoku<2><10> 1))) + (let (($x1106 (and $x1104 $x1105))) + (let (($x1102 (<= sudoku<2><9> 25))) + (let (($x1101 (>= sudoku<2><9> 1))) + (let (($x1103 (and $x1101 $x1102))) + (let (($x1099 (<= sudoku<2><8> 25))) + (let (($x1098 (>= sudoku<2><8> 1))) + (let (($x1100 (and $x1098 $x1099))) + (let (($x1096 (<= sudoku<2><7> 25))) + (let (($x1095 (>= sudoku<2><7> 1))) + (let (($x1097 (and $x1095 $x1096))) + (let (($x1093 (<= sudoku<2><6> 25))) + (let (($x1092 (>= sudoku<2><6> 1))) + (let (($x1094 (and $x1092 $x1093))) + (let (($x1090 (<= sudoku<2><5> 25))) + (let (($x1089 (>= sudoku<2><5> 1))) + (let (($x1091 (and $x1089 $x1090))) + (let (($x1087 (<= sudoku<2><4> 25))) + (let (($x1086 (>= sudoku<2><4> 1))) + (let (($x1088 (and $x1086 $x1087))) + (let (($x1084 (<= sudoku<2><3> 25))) + (let (($x1083 (>= sudoku<2><3> 1))) + (let (($x1085 (and $x1083 $x1084))) + (let (($x1081 (<= sudoku<2><2> 25))) + (let (($x1080 (>= sudoku<2><2> 1))) + (let (($x1082 (and $x1080 $x1081))) + (let (($x1078 (<= sudoku<2><1> 25))) + (let (($x1077 (>= sudoku<2><1> 1))) + (let (($x1079 (and $x1077 $x1078))) + (let (($x1075 (<= sudoku<2><0> 25))) + (let (($x1074 (>= sudoku<2><0> 1))) + (let (($x1076 (and $x1074 $x1075))) + (let (($x1072 (<= sudoku<1><24> 25))) + (let (($x1071 (>= sudoku<1><24> 1))) + (let (($x1073 (and $x1071 $x1072))) + (let (($x1069 (<= sudoku<1><23> 25))) + (let (($x1068 (>= sudoku<1><23> 1))) + (let (($x1070 (and $x1068 $x1069))) + (let (($x1066 (<= sudoku<1><22> 25))) + (let (($x1065 (>= sudoku<1><22> 1))) + (let (($x1067 (and $x1065 $x1066))) + (let (($x1063 (<= sudoku<1><21> 25))) + (let (($x1062 (>= sudoku<1><21> 1))) + (let (($x1064 (and $x1062 $x1063))) + (let (($x1060 (<= sudoku<1><20> 25))) + (let (($x1059 (>= sudoku<1><20> 1))) + (let (($x1061 (and $x1059 $x1060))) + (let (($x1057 (<= sudoku<1><19> 25))) + (let (($x1056 (>= sudoku<1><19> 1))) + (let (($x1058 (and $x1056 $x1057))) + (let (($x1054 (<= sudoku<1><18> 25))) + (let (($x1053 (>= sudoku<1><18> 1))) + (let (($x1055 (and $x1053 $x1054))) + (let (($x1051 (<= sudoku<1><17> 25))) + (let (($x1050 (>= sudoku<1><17> 1))) + (let (($x1052 (and $x1050 $x1051))) + (let (($x1048 (<= sudoku<1><16> 25))) + (let (($x1047 (>= sudoku<1><16> 1))) + (let (($x1049 (and $x1047 $x1048))) + (let (($x1045 (<= sudoku<1><15> 25))) + (let (($x1044 (>= sudoku<1><15> 1))) + (let (($x1046 (and $x1044 $x1045))) + (let (($x1042 (<= sudoku<1><14> 25))) + (let (($x1041 (>= sudoku<1><14> 1))) + (let (($x1043 (and $x1041 $x1042))) + (let (($x1039 (<= sudoku<1><13> 25))) + (let (($x1038 (>= sudoku<1><13> 1))) + (let (($x1040 (and $x1038 $x1039))) + (let (($x1036 (<= sudoku<1><12> 25))) + (let (($x1035 (>= sudoku<1><12> 1))) + (let (($x1037 (and $x1035 $x1036))) + (let (($x1033 (<= sudoku<1><11> 25))) + (let (($x1032 (>= sudoku<1><11> 1))) + (let (($x1034 (and $x1032 $x1033))) + (let (($x1030 (<= sudoku<1><10> 25))) + (let (($x1029 (>= sudoku<1><10> 1))) + (let (($x1031 (and $x1029 $x1030))) + (let (($x1027 (<= sudoku<1><9> 25))) + (let (($x1026 (>= sudoku<1><9> 1))) + (let (($x1028 (and $x1026 $x1027))) + (let (($x1024 (<= sudoku<1><8> 25))) + (let (($x1023 (>= sudoku<1><8> 1))) + (let (($x1025 (and $x1023 $x1024))) + (let (($x1021 (<= sudoku<1><7> 25))) + (let (($x1020 (>= sudoku<1><7> 1))) + (let (($x1022 (and $x1020 $x1021))) + (let (($x1018 (<= sudoku<1><6> 25))) + (let (($x1017 (>= sudoku<1><6> 1))) + (let (($x1019 (and $x1017 $x1018))) + (let (($x1015 (<= sudoku<1><5> 25))) + (let (($x1014 (>= sudoku<1><5> 1))) + (let (($x1016 (and $x1014 $x1015))) + (let (($x1012 (<= sudoku<1><4> 25))) + (let (($x1011 (>= sudoku<1><4> 1))) + (let (($x1013 (and $x1011 $x1012))) + (let (($x1009 (<= sudoku<1><3> 25))) + (let (($x1008 (>= sudoku<1><3> 1))) + (let (($x1010 (and $x1008 $x1009))) + (let (($x1006 (<= sudoku<1><2> 25))) + (let (($x1005 (>= sudoku<1><2> 1))) + (let (($x1007 (and $x1005 $x1006))) + (let (($x1003 (<= sudoku<1><1> 25))) + (let (($x1002 (>= sudoku<1><1> 1))) + (let (($x1004 (and $x1002 $x1003))) + (let (($x1000 (<= sudoku<1><0> 25))) + (let (($x999 (>= sudoku<1><0> 1))) + (let (($x1001 (and $x999 $x1000))) + (let (($x997 (<= sudoku<0><24> 25))) + (let (($x996 (>= sudoku<0><24> 1))) + (let (($x998 (and $x996 $x997))) + (let (($x994 (<= sudoku<0><23> 25))) + (let (($x993 (>= sudoku<0><23> 1))) + (let (($x995 (and $x993 $x994))) + (let (($x991 (<= sudoku<0><22> 25))) + (let (($x990 (>= sudoku<0><22> 1))) + (let (($x992 (and $x990 $x991))) + (let (($x988 (<= sudoku<0><21> 25))) + (let (($x987 (>= sudoku<0><21> 1))) + (let (($x989 (and $x987 $x988))) + (let (($x985 (<= sudoku<0><20> 25))) + (let (($x984 (>= sudoku<0><20> 1))) + (let (($x986 (and $x984 $x985))) + (let (($x982 (<= sudoku<0><19> 25))) + (let (($x981 (>= sudoku<0><19> 1))) + (let (($x983 (and $x981 $x982))) + (let (($x979 (<= sudoku<0><18> 25))) + (let (($x978 (>= sudoku<0><18> 1))) + (let (($x980 (and $x978 $x979))) + (let (($x976 (<= sudoku<0><17> 25))) + (let (($x975 (>= sudoku<0><17> 1))) + (let (($x977 (and $x975 $x976))) + (let (($x973 (<= sudoku<0><16> 25))) + (let (($x972 (>= sudoku<0><16> 1))) + (let (($x974 (and $x972 $x973))) + (let (($x970 (<= sudoku<0><15> 25))) + (let (($x969 (>= sudoku<0><15> 1))) + (let (($x971 (and $x969 $x970))) + (let (($x967 (<= sudoku<0><14> 25))) + (let (($x966 (>= sudoku<0><14> 1))) + (let (($x968 (and $x966 $x967))) + (let (($x964 (<= sudoku<0><13> 25))) + (let (($x963 (>= sudoku<0><13> 1))) + (let (($x965 (and $x963 $x964))) + (let (($x961 (<= sudoku<0><12> 25))) + (let (($x960 (>= sudoku<0><12> 1))) + (let (($x962 (and $x960 $x961))) + (let (($x958 (<= sudoku<0><11> 25))) + (let (($x957 (>= sudoku<0><11> 1))) + (let (($x959 (and $x957 $x958))) + (let (($x955 (<= sudoku<0><10> 25))) + (let (($x954 (>= sudoku<0><10> 1))) + (let (($x956 (and $x954 $x955))) + (let (($x952 (<= sudoku<0><9> 25))) + (let (($x951 (>= sudoku<0><9> 1))) + (let (($x953 (and $x951 $x952))) + (let (($x949 (<= sudoku<0><8> 25))) + (let (($x948 (>= sudoku<0><8> 1))) + (let (($x950 (and $x948 $x949))) + (let (($x946 (<= sudoku<0><7> 25))) + (let (($x945 (>= sudoku<0><7> 1))) + (let (($x947 (and $x945 $x946))) + (let (($x943 (<= sudoku<0><6> 25))) + (let (($x942 (>= sudoku<0><6> 1))) + (let (($x944 (and $x942 $x943))) + (let (($x940 (<= sudoku<0><5> 25))) + (let (($x939 (>= sudoku<0><5> 1))) + (let (($x941 (and $x939 $x940))) + (let (($x937 (<= sudoku<0><4> 25))) + (let (($x936 (>= sudoku<0><4> 1))) + (let (($x938 (and $x936 $x937))) + (let (($x934 (<= sudoku<0><3> 25))) + (let (($x933 (>= sudoku<0><3> 1))) + (let (($x935 (and $x933 $x934))) + (let (($x931 (<= sudoku<0><2> 25))) + (let (($x930 (>= sudoku<0><2> 1))) + (let (($x932 (and $x930 $x931))) + (let (($x928 (<= sudoku<0><1> 25))) + (let (($x927 (>= sudoku<0><1> 1))) + (let (($x929 (and $x927 $x928))) + (let (($x925 (<= sudoku<0><0> 25))) + (let (($x924 (>= sudoku<0><0> 1))) + (let (($x926 (and $x924 $x925))) + (let (($x923 (= sudoku<24><24> 19))) + (let (($x922 (= sudoku<24><19> 14))) + (let (($x921 (= sudoku<24><15> 16))) + (let (($x920 (= sudoku<24><13> 10))) + (let (($x919 (= sudoku<24><10> 18))) + (let (($x918 (= sudoku<24><9> 4))) + (let (($x917 (= sudoku<24><7> 3))) + (let (($x916 (= sudoku<24><4> 23))) + (let (($x915 (= sudoku<23><23> 2))) + (let (($x914 (= sudoku<23><18> 10))) + (let (($x913 (= sudoku<23><15> 18))) + (let (($x912 (= sudoku<23><14> 4))) + (let (($x911 (= sudoku<23><5> 7))) + (let (($x910 (= sudoku<23><3> 24))) + (let (($x909 (= sudoku<23><1> 15))) + (let (($x908 (= sudoku<22><24> 25))) + (let (($x907 (= sudoku<22><23> 10))) + (let (($x906 (= sudoku<22><21> 12))) + (let (($x905 (= sudoku<22><18> 22))) + (let (($x904 (= sudoku<22><17> 3))) + (let (($x903 (= sudoku<22><14> 23))) + (let (($x902 (= sudoku<22><13> 11))) + (let (($x901 (= sudoku<22><9> 19))) + (let (($x900 (= sudoku<22><6> 15))) + (let (($x899 (= sudoku<22><2> 9))) + (let (($x898 (= sudoku<21><24> 4))) + (let (($x897 (= sudoku<21><23> 22))) + (let (($x896 (= sudoku<21><20> 21))) + (let (($x895 (= sudoku<21><19> 23))) + (let (($x894 (= sudoku<21><14> 19))) + (let (($x893 (= sudoku<21><10> 13))) + (let (($x892 (= sudoku<21><6> 17))) + (let (($x891 (= sudoku<21><3> 10))) + (let (($x890 (= sudoku<20><18> 24))) + (let (($x889 (= sudoku<20><15> 13))) + (let (($x888 (= sudoku<20><14> 14))) + (let (($x887 (= sudoku<20><13> 2))) + (let (($x886 (= sudoku<20><9> 25))) + (let (($x885 (= sudoku<20><7> 20))) + (let (($x884 (= sudoku<20><6> 12))) + (let (($x883 (= sudoku<20><5> 18))) + (let (($x882 (= sudoku<20><1> 5))) + (let (($x881 (= sudoku<19><24> 11))) + (let (($x880 (= sudoku<19><20> 19))) + (let (($x879 (= sudoku<19><19> 24))) + (let (($x878 (= sudoku<19><14> 2))) + (let (($x877 (= sudoku<19><13> 9))) + (let (($x876 (= sudoku<19><10> 25))) + (let (($x875 (= sudoku<19><8> 20))) + (let (($x874 (= sudoku<19><7> 12))) + (let (($x873 (= sudoku<19><0> 23))) + (let (($x872 (= sudoku<18><24> 24))) + (let (($x871 (= sudoku<18><23> 1))) + (let (($x870 (= sudoku<18><21> 13))) + (let (($x869 (= sudoku<18><18> 9))) + (let (($x868 (= sudoku<18><17> 17))) + (let (($x867 (= sudoku<18><14> 10))) + (let (($x866 (= sudoku<18><13> 20))) + (let (($x865 (= sudoku<18><7> 5))) + (let (($x864 (= sudoku<18><6> 21))) + (let (($x863 (= sudoku<18><5> 23))) + (let (($x862 (= sudoku<18><4> 11))) + (let (($x861 (= sudoku<18><0> 19))) + (let (($x860 (= sudoku<17><24> 2))) + (let (($x859 (= sudoku<17><23> 9))) + (let (($x858 (= sudoku<17><21> 16))) + (let (($x857 (= sudoku<17><18> 20))) + (let (($x856 (= sudoku<17><16> 18))) + (let (($x855 (= sudoku<17><14> 22))) + (let (($x854 (= sudoku<17><12> 5))) + (let (($x853 (= sudoku<17><10> 23))) + (let (($x852 (= sudoku<17><9> 11))) + (let (($x851 (= sudoku<17><8> 8))) + (let (($x850 (= sudoku<17><7> 6))) + (let (($x849 (= sudoku<17><6> 7))) + (let (($x848 (= sudoku<17><5> 19))) + (let (($x847 (= sudoku<17><3> 1))) + (let (($x846 (= sudoku<17><2> 15))) + (let (($x845 (= sudoku<17><1> 13))) + (let (($x844 (= sudoku<16><23> 20))) + (let (($x843 (= sudoku<16><21> 18))) + (let (($x842 (= sudoku<16><20> 4))) + (let (($x841 (= sudoku<16><18> 3))) + (let (($x840 (= sudoku<16><13> 8))) + (let (($x839 (= sudoku<16><12> 6))) + (let (($x838 (= sudoku<16><6> 13))) + (let (($x837 (= sudoku<16><4> 2))) + (let (($x836 (= sudoku<16><2> 17))) + (let (($x835 (= sudoku<16><1> 16))) + (let (($x834 (= sudoku<16><0> 25))) + (let (($x833 (= sudoku<15><20> 23))) + (let (($x832 (= sudoku<15><17> 6))) + (let (($x831 (= sudoku<15><15> 19))) + (let (($x830 (= sudoku<15><12> 15))) + (let (($x829 (= sudoku<15><11> 13))) + (let (($x828 (= sudoku<15><5> 25))) + (let (($x827 (= sudoku<15><4> 10))) + (let (($x826 (= sudoku<15><3> 20))) + (let (($x825 (= sudoku<15><0> 4))) + (let (($x824 (= sudoku<14><23> 5))) + (let (($x823 (= sudoku<14><19> 8))) + (let (($x822 (= sudoku<14><18> 6))) + (let (($x821 (= sudoku<14><17> 7))) + (let (($x820 (= sudoku<14><16> 19))) + (let (($x819 (= sudoku<14><15> 24))) + (let (($x818 (= sudoku<14><14> 1))) + (let (($x817 (= sudoku<14><11> 14))) + (let (($x816 (= sudoku<14><9> 9))) + (let (($x815 (= sudoku<14><8> 17))) + (let (($x814 (= sudoku<14><4> 20))) + (let (($x813 (= sudoku<13><24> 8))) + (let (($x812 (= sudoku<13><21> 19))) + (let (($x811 (= sudoku<13><20> 24))) + (let (($x810 (= sudoku<13><18> 15))) + (let (($x809 (= sudoku<13><17> 13))) + (let (($x808 (= sudoku<13><13> 17))) + (let (($x807 (= sudoku<13><12> 16))) + (let (($x806 (= sudoku<13><11> 25))) + (let (($x805 (= sudoku<13><8> 12))) + (let (($x804 (= sudoku<13><6> 4))) + (let (($x803 (= sudoku<13><2> 21))) + (let (($x802 (= sudoku<13><0> 11))) + (let (($x801 (= sudoku<12><24> 1))) + (let (($x800 (= sudoku<12><21> 14))) + (let (($x799 (= sudoku<12><20> 2))) + (let (($x798 (= sudoku<12><13> 12))) + (let (($x797 (= sudoku<12><8> 5))) + (let (($x796 (= sudoku<12><6> 23))) + (let (($x795 (= sudoku<12><5> 11))) + (let (($x794 (= sudoku<12><4> 8))) + (let (($x793 (= sudoku<12><0> 24))) + (let (($x792 (= sudoku<11><23> 17))) + (let (($x791 (= sudoku<11><20> 10))) + (let (($x790 (= sudoku<11><12> 21))) + (let (($x789 (= sudoku<11><9> 8))) + (let (($x788 (= sudoku<11><8> 6))) + (let (($x787 (= sudoku<11><6> 19))) + (let (($x786 (= sudoku<11><5> 24))) + (let (($x785 (= sudoku<11><4> 1))) + (let (($x784 (= sudoku<11><3> 15))) + (let (($x783 (= sudoku<11><0> 2))) + (let (($x782 (= sudoku<10><22> 18))) + (let (($x781 (= sudoku<10><21> 4))) + (let (($x780 (= sudoku<10><19> 3))) + (let (($x779 (= sudoku<10><4> 9))) + (let (($x778 (= sudoku<10><1> 25))) + (let (($x777 (= sudoku<9><24> 12))) + (let (($x776 (= sudoku<9><23> 18))) + (let (($x775 (= sudoku<9><15> 8))) + (let (($x774 (= sudoku<9><14> 6))) + (let (($x773 (= sudoku<9><13> 7))) + (let (($x772 (= sudoku<9><12> 19))) + (let (($x771 (= sudoku<9><11> 24))) + (let (($x770 (= sudoku<9><10> 1))) + (let (($x769 (= sudoku<9><8> 13))) + (let (($x768 (= sudoku<9><7> 14))) + (let (($x767 (= sudoku<9><6> 2))) + (let (($x766 (= sudoku<9><4> 17))) + (let (($x765 (= sudoku<9><0> 20))) + (let (($x764 (= sudoku<8><23> 21))) + (let (($x763 (= sudoku<8><20> 8))) + (let (($x762 (= sudoku<8><19> 6))) + (let (($x761 (= sudoku<8><14> 15))) + (let (($x760 (= sudoku<8><12> 14))) + (let (($x759 (= sudoku<8><10> 9))) + (let (($x758 (= sudoku<8><9> 17))) + (let (($x757 (= sudoku<8><5> 20))) + (let (($x756 (= sudoku<8><3> 18))) + (let (($x755 (= sudoku<8><0> 3))) + (let (($x754 (= sudoku<7><23> 7))) + (let (($x753 (= sudoku<7><22> 19))) + (let (($x752 (= sudoku<7><20> 1))) + (let (($x751 (= sudoku<7><19> 15))) + (let (($x750 (= sudoku<7><17> 14))) + (let (($x749 (= sudoku<7><16> 2))) + (let (($x748 (= sudoku<7><15> 9))) + (let (($x747 (= sudoku<7><11> 10))) + (let (($x746 (= sudoku<7><10> 20))) + (let (($x745 (= sudoku<7><2> 23))) + (let (($x744 (= sudoku<7><0> 8))) + (let (($x743 (= sudoku<6><21> 2))) + (let (($x742 (= sudoku<6><19> 17))) + (let (($x741 (= sudoku<6><14> 12))) + (let (($x740 (= sudoku<6><11> 22))) + (let (($x739 (= sudoku<6><10> 3))) + (let (($x738 (= sudoku<6><9> 5))) + (let (($x737 (= sudoku<6><8> 21))) + (let (($x736 (= sudoku<6><4> 6))) + (let (($x735 (= sudoku<5><24> 17))) + (let (($x734 (= sudoku<5><20> 20))) + (let (($x733 (= sudoku<5><8> 7))) + (let (($x732 (= sudoku<5><7> 19))) + (let (($x730 (= sudoku<5><5> 1))) + (let (($x729 (= sudoku<5><4> 15))) + (let (($x728 (= sudoku<5><2> 14))) + (let (($x727 (= sudoku<5><1> 2))) + (let (($x726 (= sudoku<5><0> 9))) + (let (($x725 (= sudoku<4><22> 10))) + (let (($x724 (= sudoku<4><16> 3))) + (let (($x723 (= sudoku<4><10> 6))) + (let (($x722 (= sudoku<4><9> 7))) + (let (($x721 (= sudoku<4><5> 15))) + (let (($x720 (= sudoku<4><2> 2))) + (let (($x719 (= sudoku<3><23> 4))) + (let (($x717 (= sudoku<3><22> 22))) + (let (($x716 (= sudoku<3><20> 5))) + (let (($x715 (= sudoku<3><18> 23))) + (let (($x714 (= sudoku<3><15> 6))) + (let (($x712 (= sudoku<3><12> 24))) + (let (($x711 (= sudoku<3><10> 15))) + (let (($x710 (= sudoku<3><7> 2))) + (let (($x709 (= sudoku<3><5> 17))) + (let (($x708 (= sudoku<3><4> 16))) + (let (($x707 (= sudoku<3><2> 10))) + (let (($x706 (= sudoku<3><0> 12))) + (let (($x705 (= sudoku<2><24> 21))) + (let (($x704 (= sudoku<2><23> 23))) + (let (($x703 (= sudoku<2><22> 11))) + (let (($x702 (= sudoku<2><19> 7))) + (let (($x700 (= sudoku<2><17> 24))) + (let (($x699 (= sudoku<2><16> 1))) + (let (($x698 (= sudoku<2><15> 15))) + (let (($x697 (= sudoku<2><13> 14))) + (let (($x695 (= sudoku<2><10> 17))) + (let (($x693 (= sudoku<2><9> 16))) + (let (($x692 (= sudoku<2><8> 25))) + (let (($x691 (= sudoku<2><7> 10))) + (let (($x690 (= sudoku<2><6> 20))) + (let (($x688 (= sudoku<2><5> 12))) + (let (($x687 (= sudoku<2><2> 22))) + (let (($x686 (= sudoku<2><1> 3))) + (let (($x684 (= sudoku<1><17> 2))) + (let (($x682 (= sudoku<1><16> 9))) + (let (($x681 (= sudoku<1><14> 16))) + (let (($x679 (= sudoku<1><12> 10))) + (let (($x678 (= sudoku<1><9> 18))) + (let (($x676 (= sudoku<1><4> 21))) + (let (($x674 (= sudoku<1><3> 23))) + (let (($x673 (= sudoku<0><24> 13))) + (let (($x671 (= sudoku<0><21> 9))) + (let (($x669 (= sudoku<0><18> 25))) + (let (($x667 (= sudoku<0><17> 10))) + (let (($x665 (= sudoku<0><15> 12))) + (let (($x663 (= sudoku<0><12> 22))) + (let (($x661 (= sudoku<0><10> 5))) + (let (($x659 (= sudoku<0><8> 23))) + (let (($x657 (= sudoku<0><7> 11))) + (let (($x655 (= sudoku<0><6> 8))) + (let (($x653 (= sudoku<0><2> 24))) + (let (($x651 (= sudoku<0><1> 1))) + (let (($x631 (= sudoku<0><0> 15))) + (and $x631 $x651 $x653 $x655 $x657 $x659 $x661 $x663 $x665 $x667 $x669 $x671 $x673 $x674 $x676 $x678 $x679 $x681 $x682 $x684 $x686 $x687 $x688 $x690 $x691 $x692 $x693 $x695 $x697 $x698 $x699 $x700 $x702 $x703 $x704 $x705 $x706 $x707 $x708 $x709 $x710 $x711 $x712 $x714 $x715 $x716 $x717 $x719 $x720 $x721 $x722 $x723 $x724 $x725 $x726 $x727 $x728 $x729 $x730 $x732 $x733 $x734 $x735 $x736 $x737 $x738 $x739 $x740 $x741 $x742 $x743 $x744 $x745 $x746 $x747 $x748 $x749 $x750 $x751 $x752 $x753 $x754 $x755 $x756 $x757 $x758 $x759 $x760 $x761 $x762 $x763 $x764 $x765 $x766 $x767 $x768 $x769 $x770 $x771 $x772 $x773 $x774 $x775 $x776 $x777 $x778 $x779 $x780 $x781 $x782 $x783 $x784 $x785 $x786 $x787 $x788 $x789 $x790 $x791 $x792 $x793 $x794 $x795 $x796 $x797 $x798 $x799 $x800 $x801 $x802 $x803 $x804 $x805 $x806 $x807 $x808 $x809 $x810 $x811 $x812 $x813 $x814 $x815 $x816 $x817 $x818 $x819 $x820 $x821 $x822 $x823 $x824 $x825 $x826 $x827 $x828 $x829 $x830 $x831 $x832 $x833 $x834 $x835 $x836 $x837 $x838 $x839 $x840 $x841 $x842 $x843 $x844 $x845 $x846 $x847 $x848 $x849 $x850 $x851 $x852 $x853 $x854 $x855 $x856 $x857 $x858 $x859 $x860 $x861 $x862 $x863 $x864 $x865 $x866 $x867 $x868 $x869 $x870 $x871 $x872 $x873 $x874 $x875 $x876 $x877 $x878 $x879 $x880 $x881 $x882 $x883 $x884 $x885 $x886 $x887 $x888 $x889 $x890 $x891 $x892 $x893 $x894 $x895 $x896 $x897 $x898 $x899 $x900 $x901 $x902 $x903 $x904 $x905 $x906 $x907 $x908 $x909 $x910 $x911 $x912 $x913 $x914 $x915 $x916 $x917 $x918 $x919 $x920 $x921 $x922 $x923 $x926 $x929 $x932 $x935 $x938 $x941 $x944 $x947 $x950 $x953 $x956 $x959 $x962 $x965 $x968 $x971 $x974 $x977 $x980 $x983 $x986 $x989 $x992 $x995 $x998 $x1001 $x1004 $x1007 $x1010 $x1013 $x1016 $x1019 $x1022 $x1025 $x1028 $x1031 $x1034 $x1037 $x1040 $x1043 $x1046 $x1049 $x1052 $x1055 $x1058 $x1061 $x1064 $x1067 $x1070 $x1073 $x1076 $x1079 $x1082 $x1085 $x1088 $x1091 $x1094 $x1097 $x1100 $x1103 $x1106 $x1109 $x1112 $x1115 $x1118 $x1121 $x1124 $x1127 $x1130 $x1133 $x1136 $x1139 $x1142 $x1145 $x1148 $x1151 $x1154 $x1157 $x1160 $x1163 $x1166 $x1169 $x1172 $x1175 $x1178 $x1181 $x1184 $x1187 $x1190 $x1193 $x1196 $x1199 $x1202 $x1205 $x1208 $x1211 $x1214 $x1217 $x1220 $x1223 $x1226 $x1229 $x1232 $x1235 $x1238 $x1241 $x1244 $x1247 $x1250 $x1253 $x1256 $x1259 $x1262 $x1265 $x1268 $x1271 $x1274 $x1277 $x1280 $x1283 $x1286 $x1289 $x1292 $x1295 $x1298 $x1301 $x1304 $x1307 $x1310 $x1313 $x1316 $x1319 $x1322 $x1325 $x1328 $x1331 $x1334 $x1337 $x1340 $x1343 $x1346 $x1349 $x1352 $x1355 $x1358 $x1361 $x1364 $x1367 $x1370 $x1373 $x1376 $x1379 $x1382 $x1385 $x1388 $x1391 $x1394 $x1397 $x1400 $x1403 $x1406 $x1409 $x1412 $x1415 $x1418 $x1421 $x1424 $x1427 $x1430 $x1433 $x1436 $x1439 $x1442 $x1445 $x1448 $x1451 $x1454 $x1457 $x1460 $x1463 $x1466 $x1469 $x1472 $x1475 $x1478 $x1481 $x1484 $x1487 $x1490 $x1493 $x1496 $x1499 $x1502 $x1505 $x1508 $x1511 $x1514 $x1517 $x1520 $x1523 $x1526 $x1529 $x1532 $x1535 $x1538 $x1541 $x1544 $x1547 $x1550 $x1553 $x1556 $x1559 $x1562 $x1565 $x1568 $x1571 $x1574 $x1577 $x1580 $x1583 $x1586 $x1589 $x1592 $x1595 $x1598 $x1601 $x1604 $x1607 $x1610 $x1613 $x1616 $x1619 $x1622 $x1625 $x1628 $x1631 $x1634 $x1637 $x1640 $x1643 $x1646 $x1649 $x1652 $x1655 $x1658 $x1661 $x1664 $x1667 $x1670 $x1673 $x1676 $x1679 $x1682 $x1685 $x1688 $x1691 $x1694 $x1697 $x1700 $x1703 $x1706 $x1709 $x1712 $x1715 $x1718 $x1721 $x1724 $x1727 $x1730 $x1733 $x1736 $x1739 $x1742 $x1745 $x1748 $x1751 $x1754 $x1757 $x1760 $x1763 $x1766 $x1769 $x1772 $x1775 $x1778 $x1781 $x1784 $x1787 $x1790 $x1793 $x1796 $x1799 $x1802 $x1805 $x1808 $x1811 $x1814 $x1817 $x1820 $x1823 $x1826 $x1829 $x1832 $x1835 $x1838 $x1841 $x1844 $x1847 $x1850 $x1853 $x1856 $x1859 $x1862 $x1865 $x1868 $x1871 $x1874 $x1877 $x1880 $x1883 $x1886 $x1889 $x1892 $x1895 $x1898 $x1901 $x1904 $x1907 $x1910 $x1913 $x1916 $x1919 $x1922 $x1925 $x1928 $x1931 $x1934 $x1937 $x1940 $x1943 $x1946 $x1949 $x1952 $x1955 $x1958 $x1961 $x1964 $x1967 $x1970 $x1973 $x1976 $x1979 $x1982 $x1985 $x1988 $x1991 $x1994 $x1997 $x2000 $x2003 $x2006 $x2009 $x2012 $x2015 $x2018 $x2021 $x2024 $x2027 $x2030 $x2033 $x2036 $x2039 $x2042 $x2045 $x2048 $x2051 $x2054 $x2057 $x2060 $x2063 $x2066 $x2069 $x2072 $x2075 $x2078 $x2081 $x2084 $x2087 $x2090 $x2093 $x2096 $x2099 $x2102 $x2105 $x2108 $x2111 $x2114 $x2117 $x2120 $x2123 $x2126 $x2129 $x2132 $x2135 $x2138 $x2141 $x2144 $x2147 $x2150 $x2153 $x2156 $x2159 $x2162 $x2165 $x2168 $x2171 $x2174 $x2177 $x2180 $x2183 $x2186 $x2189 $x2192 $x2195 $x2198 $x2201 $x2204 $x2207 $x2210 $x2213 $x2216 $x2219 $x2222 $x2225 $x2228 $x2231 $x2234 $x2237 $x2240 $x2243 $x2246 $x2249 $x2252 $x2255 $x2258 $x2261 $x2264 $x2267 $x2270 $x2273 $x2276 $x2279 $x2282 $x2285 $x2288 $x2291 $x2294 $x2297 $x2300 $x2303 $x2306 $x2309 $x2312 $x2315 $x2318 $x2321 $x2324 $x2327 $x2330 $x2333 $x2336 $x2339 $x2342 $x2345 $x2348 $x2351 $x2354 $x2357 $x2360 $x2363 $x2366 $x2369 $x2372 $x2375 $x2378 $x2381 $x2384 $x2387 $x2390 $x2393 $x2396 $x2399 $x2402 $x2405 $x2408 $x2411 $x2414 $x2417 $x2420 $x2423 $x2426 $x2429 $x2432 $x2435 $x2438 $x2441 $x2444 $x2447 $x2450 $x2453 $x2456 $x2459 $x2462 $x2465 $x2468 $x2471 $x2474 $x2477 $x2480 $x2483 $x2486 $x2489 $x2492 $x2495 $x2498 $x2501 $x2504 $x2507 $x2510 $x2513 $x2516 $x2519 $x2522 $x2525 $x2528 $x2531 $x2534 $x2537 $x2540 $x2543 $x2546 $x2549 $x2552 $x2555 $x2558 $x2561 $x2564 $x2567 $x2570 $x2573 $x2576 $x2579 $x2582 $x2585 $x2588 $x2591 $x2594 $x2597 $x2600 $x2603 $x2606 $x2609 $x2612 $x2615 $x2618 $x2621 $x2624 $x2627 $x2630 $x2633 $x2636 $x2639 $x2642 $x2645 $x2648 $x2651 $x2654 $x2657 $x2660 $x2663 $x2666 $x2669 $x2672 $x2675 $x2678 $x2681 $x2684 $x2687 $x2690 $x2693 $x2696 $x2699 $x2702 $x2705 $x2708 $x2711 $x2714 $x2717 $x2720 $x2723 $x2726 $x2729 $x2732 $x2735 $x2738 $x2741 $x2744 $x2747 $x2750 $x2753 $x2756 $x2759 $x2762 $x2765 $x2768 $x2771 $x2774 $x2777 $x2780 $x2783 $x2786 $x2789 $x2792 $x2795 $x2798 $x2799 $x2800 $x2801 $x2802 $x2803 $x2804 $x2805 $x2806 $x2807 $x2808 $x2809 $x2810 $x2811 $x2812 $x2813 $x2814 $x2815 $x2816 $x2817 $x2818 $x2819 $x2820 $x2821 $x2822 $x2823 $x2824 $x2825 $x2826 $x2827 $x2828 $x2829 $x2830 $x2831 $x2832 $x2833 $x2834 $x2835 $x2836 $x2837 $x2838 $x2839 $x2840 $x2841 $x2842 $x2843 $x2844 $x2845 $x2846 $x2847 $x2848 $x2849 $x2850 $x2851 $x2852 $x2853 $x2854 $x2855 $x2856 $x2857 $x2858 $x2859 $x2860 $x2861 $x2862 $x2863 $x2864 $x2865 $x2866 $x2867 $x2868 $x2869 $x2870 $x2871 $x2872 $x2873))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) + (check-sat) + (get-model) diff --git a/tests/regress/wd/issue401.smt2.gold b/tests/regress/wd/issue401.smt2.gold new file mode 100644 index 000000000..f2171cc1f --- /dev/null +++ b/tests/regress/wd/issue401.smt2.gold @@ -0,0 +1,2 @@ +unknown +(error "the search was interrupted. No model is available") diff --git a/tests/regress/wd/issue401.smt2.options b/tests/regress/wd/issue401.smt2.options new file mode 100644 index 000000000..e9e5b458b --- /dev/null +++ b/tests/regress/wd/issue401.smt2.options @@ -0,0 +1 @@ +--timeout=2 From 708e65e260125a6196fad71ed4ebf4a41f4effc4 Mon Sep 17 00:00:00 2001 From: Bruno Dutertre Date: Mon, 8 Aug 2022 15:02:27 +0300 Subject: [PATCH 003/182] Fix #404 --- src/frontend/smt2/smt2_commands.c | 4 +++ tests/regress/wd/issue404.smt2 | 41 +++++++++++++++++++++++++++++ tests/regress/wd/issue404.smt2.gold | 1 + 3 files changed, 46 insertions(+) create mode 100644 tests/regress/wd/issue404.smt2 create mode 100644 tests/regress/wd/issue404.smt2.gold diff --git a/src/frontend/smt2/smt2_commands.c b/src/frontend/smt2/smt2_commands.c index 655925f0a..4d27ed7ba 100644 --- a/src/frontend/smt2/smt2_commands.c +++ b/src/frontend/smt2/smt2_commands.c @@ -1046,6 +1046,10 @@ static void print_yices_error(bool full) { unsupported_construct("quantifiers are"); break; + case CTX_LAMBDAS_NOT_SUPPORTED: + unsupported_construct("lambdas are"); + break; + case CTX_SCALAR_NOT_SUPPORTED: unsupported_construct("scalar types are"); break; diff --git a/tests/regress/wd/issue404.smt2 b/tests/regress/wd/issue404.smt2 new file mode 100644 index 000000000..464c8922a --- /dev/null +++ b/tests/regress/wd/issue404.smt2 @@ -0,0 +1,41 @@ +(set-logic QF_AUFBV) +(declare-sort OutOfBoundsValueIs_s 0) +(declare-fun reset_f (OutOfBoundsValueIs_s) Bool) +(declare-fun readAddr_f (OutOfBoundsValueIs_s) (_ BitVec 2)) +(declare-fun m_out_MPORT_rand_data_f (OutOfBoundsValueIs_s) (_ BitVec 8)) +(declare-fun m_f (OutOfBoundsValueIs_s) (Array (_ BitVec 2) (_ BitVec 8))) +(declare-fun _resetCount_f (OutOfBoundsValueIs_s) Bool) +(define-fun m.out_MPORT.addr_f ((state OutOfBoundsValueIs_s)) (_ BitVec 2) (readAddr_f state)) +(define-fun m.out_MPORT.data_f ((state OutOfBoundsValueIs_s)) (_ BitVec 8) (select (m_f state) (m.out_MPORT.addr_f state))) +(define-fun m_out_MPORT_addr_f ((state OutOfBoundsValueIs_s)) (_ BitVec 2) (readAddr_f state)) +(define-fun m_out_MPORT_oob_f ((state OutOfBoundsValueIs_s)) Bool (not (bvugt (_ bv3 2) (m_out_MPORT_addr_f state)))) +(define-fun m_out_MPORT_rand_data.en_f ((state OutOfBoundsValueIs_s)) Bool (m_out_MPORT_oob_f state)) +(define-fun _T_f ((state OutOfBoundsValueIs_s)) Bool (= (readAddr_f state) (_ bv0 2))) +(define-fun out_f ((state OutOfBoundsValueIs_s)) (_ BitVec 8) (ite (m_out_MPORT_oob_f state) (m_out_MPORT_rand_data_f state) (m.out_MPORT.data_f state))) +(define-fun _T_1_f ((state OutOfBoundsValueIs_s)) Bool (= (out_f state) (_ bv0 8))) +(define-fun _T_3_f ((state OutOfBoundsValueIs_s)) Bool (not (reset_f state))) +(define-fun _T_4_f ((state OutOfBoundsValueIs_s)) Bool (not (_T_1_f state))) +(define-fun _T_5_f ((state OutOfBoundsValueIs_s)) Bool (= (readAddr_f state) (_ bv1 2))) +(define-fun _T_10_f ((state OutOfBoundsValueIs_s)) Bool (= (readAddr_f state) (_ bv2 2))) +(define-fun _T_15_f ((state OutOfBoundsValueIs_s)) Bool (= (readAddr_f state) (_ bv3 2))) +(define-fun _resetPhase_f ((state OutOfBoundsValueIs_s)) Bool (not (bvuge (ite (_resetCount_f state) (_ bv1 1) (_ bv0 1)) (ite true (_ bv1 1) (_ bv0 1))))) +(define-fun assert_f ((state OutOfBoundsValueIs_s)) Bool (=> (and (_T_f state) (_T_3_f state)) (_T_1_f state))) +(define-fun assert_1_f ((state OutOfBoundsValueIs_s)) Bool (=> (and (_T_5_f state) (_T_3_f state)) (_T_1_f state))) +(define-fun assert_2_f ((state OutOfBoundsValueIs_s)) Bool (=> (and (_T_10_f state) (_T_3_f state)) (_T_1_f state))) +(define-fun assert_3_f ((state OutOfBoundsValueIs_s)) Bool (=> (and (_T_15_f state) (_T_3_f state)) (_T_1_f state))) +(define-fun _resetActive_f ((state OutOfBoundsValueIs_s)) Bool (=> (_resetPhase_f state) (reset_f state))) +(define-fun m.out_MPORT.en_f ((state OutOfBoundsValueIs_s)) Bool true) +(define-fun m_next ((state OutOfBoundsValueIs_s)) (Array (_ BitVec 2) (_ BitVec 8)) (m_f state)) +(define-fun const_array_0 ((index (_ BitVec 2))) (_ BitVec 8) (_ bv0 8)) +(define-fun m_init ((state OutOfBoundsValueIs_s)) (Array (_ BitVec 2) (_ BitVec 8)) const_array_0) +(define-fun _resetCount_next ((state OutOfBoundsValueIs_s)) Bool (ite (_resetPhase_f state) (= ((_ extract 0 0) (bvadd ((_ zero_extend 1) (ite (_resetCount_f state) (_ bv1 1) (_ bv0 1))) (_ bv1 2))) (_ bv1 1)) (_resetCount_f state))) +(define-fun _resetCount_init ((state OutOfBoundsValueIs_s)) Bool false) +(define-fun OutOfBoundsValueIs_t ((state OutOfBoundsValueIs_s) (state_n OutOfBoundsValueIs_s)) Bool (and (= (m_f state_n) (m_next state)) (= (_resetCount_f state_n) (_resetCount_next state)))) +(define-fun OutOfBoundsValueIs_i ((state OutOfBoundsValueIs_s)) Bool (and (= (m_f state) (m_init state)) (= (_resetCount_f state) (_resetCount_init state)))) +(define-fun OutOfBoundsValueIs_a ((state OutOfBoundsValueIs_s)) Bool (and (assert_f state) (and (assert_1_f state) (and (assert_2_f state) (assert_3_f state))))) +(define-fun OutOfBoundsValueIs_u ((state OutOfBoundsValueIs_s)) Bool (_resetActive_f state)) +(declare-fun s0 () OutOfBoundsValueIs_s) +(assert (OutOfBoundsValueIs_i s0)) +(assert (_resetActive_f s0)) +(assert (not (and (assert_f s0) (and (assert_1_f s0) (and (assert_2_f s0) (assert_3_f s0)))))) +(check-sat) diff --git a/tests/regress/wd/issue404.smt2.gold b/tests/regress/wd/issue404.smt2.gold new file mode 100644 index 000000000..e7be3c878 --- /dev/null +++ b/tests/regress/wd/issue404.smt2.gold @@ -0,0 +1 @@ +(error "lambdas are not allowed in logic QF_AUFBV") From d6fa0e4f3985de9c420fc363097b6d75d2967a04 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Tue, 20 Sep 2022 10:24:55 -0700 Subject: [PATCH 004/182] fix for autoconf 2.71 --- configure.ac | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configure.ac b/configure.ac index 26046ff27..b66ebacd7 100644 --- a/configure.ac +++ b/configure.ac @@ -76,7 +76,7 @@ AC_PROG_LN_S AC_PROG_MKDIR_P AC_PROG_INSTALL -AC_PROG_CC_C99 +AC_PROG_CC AC_PROG_RANLIB AC_PROG_EGREP From 7320e76e69e6b6d33ae4b644a5442e90dbe1d83f Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Mon, 26 Sep 2022 18:41:40 -0700 Subject: [PATCH 005/182] make smtlib-model-format default for yices-smt2 --- doc/manual/manual.tex | 4 ++-- doc/yices-smt2.1 | 4 ++-- src/frontend/yices_smt2.c | 12 ++++++------ .../cooking09.smt2.options | 1 - .../tms-2-3-light-03.smt2.options | 1 - .../mcsat/bool/assumptions/test01.smt2.options | 2 +- .../mcsat/bool/assumptions/test01m.smt2.options | 2 +- .../mcsat/bv/assumptions/issue233.smt2.options | 2 +- .../mcsat/bv/assumptions/test01m.smt2.options | 2 +- .../mcsat/lra/assumptions/test01m.smt2.options | 2 +- .../mcsat/nra/incremental/incremental00.smt2.options | 2 +- .../mcsat/nra/incremental/incremental02.smt2.options | 2 +- tests/regress/mcsat/wd/issue311e.smt2.options | 1 + tests/regress/mcsat/wd/issue311f.smt2.options | 1 + tests/regress/wd/example_mdl.smt2.options | 1 - tests/regress/wd/example_mdl2.smt2.options | 2 +- tests/regress/wd/issue293.smt2.options | 1 + tests/regress/wd/issue311g.smt2.options | 1 + tests/regress/wd/issue316c.smt2.options | 1 + 19 files changed, 23 insertions(+), 21 deletions(-) delete mode 100644 tests/regress/coverage/smtlib/QF_RDL/SMT-Temporal-Planning-Benchmarks/cooking09.smt2.options delete mode 100644 tests/regress/coverage/smtlib/QF_RDL/SMT-Temporal-Planning-Benchmarks/tms-2-3-light-03.smt2.options create mode 100644 tests/regress/mcsat/wd/issue311e.smt2.options create mode 100644 tests/regress/mcsat/wd/issue311f.smt2.options delete mode 100644 tests/regress/wd/example_mdl.smt2.options create mode 100644 tests/regress/wd/issue293.smt2.options create mode 100644 tests/regress/wd/issue311g.smt2.options create mode 100644 tests/regress/wd/issue316c.smt2.options diff --git a/doc/manual/manual.tex b/doc/manual/manual.tex index cd7a38ddf..7881c2db5 100644 --- a/doc/manual/manual.tex +++ b/doc/manual/manual.tex @@ -3707,7 +3707,7 @@ \subsubsection*{Model Format} To use this format, you must invoke \texttt{yices-smt2} as follows \begin{small} \begin{lstlisting}[language=sh] - yices-smt2 --smt2-model-format + yices-smt2 --yices-model-format \end{lstlisting} \end{small} @@ -3860,7 +3860,7 @@ \subsubsection*{All Command-line Options} after all commands have been executed (i.e., after reaching the command \texttt{(exit)} or the end of the input file). -\item[--smt2-model-format] Display models in the SMT-LIB~2 format. +\item[--yices-model-format] Display models in the Yices model format. \item[--bvconst-in-decimal] Prints bit-vector constants as numbers (using the SMT-LIB~2 decimal syntax), instead of constants in binary diff --git a/doc/yices-smt2.1 b/doc/yices-smt2.1 index f71c664dd..850bade01 100644 --- a/doc/yices-smt2.1 +++ b/doc/yices-smt2.1 @@ -53,8 +53,8 @@ to true. .B \-\-mcsat Force use of the MCSAT solver. .TP -.B \-\-smt2-model-format -Print models in the SMT-LIB format (instead of the default Yices format).. +.B \-\-yices-model-format +Print models in the Yices model format (instead of the SMT-LIB format).. .TP .B \-\-bvconst-in-decimal Print bitvector constants using the SMT-LIB decimal format, instead of the binary format. diff --git a/src/frontend/yices_smt2.c b/src/frontend/yices_smt2.c index 2d174ebae..f7fd78344 100644 --- a/src/frontend/yices_smt2.c +++ b/src/frontend/yices_smt2.c @@ -153,7 +153,7 @@ typedef enum optid { verbosity_opt, // set verbosity on the command line incremental_opt, // enable incremental mode interactive_opt, // enable interactive mode - smt2format_opt, // use SMT-LIB2 format for models + yicesformat_opt, // use the Yices model format for models bvdecimal_opt, // use (_ bv n) for bit-vector constants timeout_opt, // give a timeout delegate_opt, // use an external sat solver @@ -201,7 +201,7 @@ static option_desc_t options[NUM_OPTIONS] = { { "timeout", 't', MANDATORY_INT, timeout_opt }, { "incremental", '\0', FLAG_OPTION, incremental_opt }, { "interactive", '\0', FLAG_OPTION, interactive_opt }, - { "smt2-model-format", '\0', FLAG_OPTION, smt2format_opt }, + { "yices-model-format", '\0', FLAG_OPTION, yicesformat_opt }, { "bvconst-in-decimal", '\0', FLAG_OPTION, bvdecimal_opt }, { "delegate", '\0', MANDATORY_STRING, delegate_opt }, { "dimacs", '\0', MANDATORY_STRING, dimacs_opt }, @@ -264,7 +264,7 @@ static void print_help(const char *progname) { " --stats, -s Print statistics once all commands have been processed\n" " --incremental Enable support for push/pop\n" " --interactive Run in interactive mode (ignored if a filename is given)\n" - " --smt2-model-format Display models in the SMT-LIB 2 format (default = false)\n" + " --yices-model-format Display models in the Yices model format (default = false)\n" " --bvconst-in-decimal Display bit-vector constants as decimal numbers (default = false)\n" " --delegate= Use an external SAT solver (can be cadical, cryptominisat, kissat, or y2sat)\n" " --dimacs= Bitblast and export to a file (in DIMACS format)\n" @@ -369,7 +369,7 @@ static void parse_command_line(int argc, char *argv[]) { filename = NULL; incremental = false; interactive = false; - smt2_model_format = false; + smt2_model_format = true; bvdecimal = false; show_stats = false; verbosity = 0; @@ -505,8 +505,8 @@ static void parse_command_line(int argc, char *argv[]) { } break; - case smt2format_opt: - smt2_model_format = true; + case yicesformat_opt: + smt2_model_format = false; break; case bvdecimal_opt: diff --git a/tests/regress/coverage/smtlib/QF_RDL/SMT-Temporal-Planning-Benchmarks/cooking09.smt2.options b/tests/regress/coverage/smtlib/QF_RDL/SMT-Temporal-Planning-Benchmarks/cooking09.smt2.options deleted file mode 100644 index 18496b844..000000000 --- a/tests/regress/coverage/smtlib/QF_RDL/SMT-Temporal-Planning-Benchmarks/cooking09.smt2.options +++ /dev/null @@ -1 +0,0 @@ ---smt2-model-format diff --git a/tests/regress/coverage/smtlib/QF_RDL/SMT-Temporal-Planning-Benchmarks/tms-2-3-light-03.smt2.options b/tests/regress/coverage/smtlib/QF_RDL/SMT-Temporal-Planning-Benchmarks/tms-2-3-light-03.smt2.options deleted file mode 100644 index 18496b844..000000000 --- a/tests/regress/coverage/smtlib/QF_RDL/SMT-Temporal-Planning-Benchmarks/tms-2-3-light-03.smt2.options +++ /dev/null @@ -1 +0,0 @@ ---smt2-model-format diff --git a/tests/regress/mcsat/bool/assumptions/test01.smt2.options b/tests/regress/mcsat/bool/assumptions/test01.smt2.options index ca570cf1b..45d679a4b 100644 --- a/tests/regress/mcsat/bool/assumptions/test01.smt2.options +++ b/tests/regress/mcsat/bool/assumptions/test01.smt2.options @@ -1 +1 @@ ---mcsat --trace mcsat::interpolant::check +--mcsat --yices-model-format --trace mcsat::interpolant::check diff --git a/tests/regress/mcsat/bool/assumptions/test01m.smt2.options b/tests/regress/mcsat/bool/assumptions/test01m.smt2.options index ca570cf1b..45d679a4b 100644 --- a/tests/regress/mcsat/bool/assumptions/test01m.smt2.options +++ b/tests/regress/mcsat/bool/assumptions/test01m.smt2.options @@ -1 +1 @@ ---mcsat --trace mcsat::interpolant::check +--mcsat --yices-model-format --trace mcsat::interpolant::check diff --git a/tests/regress/mcsat/bv/assumptions/issue233.smt2.options b/tests/regress/mcsat/bv/assumptions/issue233.smt2.options index 72aa47d0e..38e3cfbf2 100644 --- a/tests/regress/mcsat/bv/assumptions/issue233.smt2.options +++ b/tests/regress/mcsat/bv/assumptions/issue233.smt2.options @@ -1 +1 @@ ---mcsat --incremental --trace mcsat::interpolant::check +--mcsat --incremental --yices-model-format --trace mcsat::interpolant::check diff --git a/tests/regress/mcsat/bv/assumptions/test01m.smt2.options b/tests/regress/mcsat/bv/assumptions/test01m.smt2.options index ca570cf1b..45d679a4b 100644 --- a/tests/regress/mcsat/bv/assumptions/test01m.smt2.options +++ b/tests/regress/mcsat/bv/assumptions/test01m.smt2.options @@ -1 +1 @@ ---mcsat --trace mcsat::interpolant::check +--mcsat --yices-model-format --trace mcsat::interpolant::check diff --git a/tests/regress/mcsat/lra/assumptions/test01m.smt2.options b/tests/regress/mcsat/lra/assumptions/test01m.smt2.options index ca570cf1b..45d679a4b 100644 --- a/tests/regress/mcsat/lra/assumptions/test01m.smt2.options +++ b/tests/regress/mcsat/lra/assumptions/test01m.smt2.options @@ -1 +1 @@ ---mcsat --trace mcsat::interpolant::check +--mcsat --yices-model-format --trace mcsat::interpolant::check diff --git a/tests/regress/mcsat/nra/incremental/incremental00.smt2.options b/tests/regress/mcsat/nra/incremental/incremental00.smt2.options index ffbd89592..e015699f1 100644 --- a/tests/regress/mcsat/nra/incremental/incremental00.smt2.options +++ b/tests/regress/mcsat/nra/incremental/incremental00.smt2.options @@ -1 +1 @@ ---incremental +--incremental --yices-model-format diff --git a/tests/regress/mcsat/nra/incremental/incremental02.smt2.options b/tests/regress/mcsat/nra/incremental/incremental02.smt2.options index ffbd89592..e015699f1 100644 --- a/tests/regress/mcsat/nra/incremental/incremental02.smt2.options +++ b/tests/regress/mcsat/nra/incremental/incremental02.smt2.options @@ -1 +1 @@ ---incremental +--incremental --yices-model-format diff --git a/tests/regress/mcsat/wd/issue311e.smt2.options b/tests/regress/mcsat/wd/issue311e.smt2.options new file mode 100644 index 000000000..38990e2bd --- /dev/null +++ b/tests/regress/mcsat/wd/issue311e.smt2.options @@ -0,0 +1 @@ + --yices-model-format \ No newline at end of file diff --git a/tests/regress/mcsat/wd/issue311f.smt2.options b/tests/regress/mcsat/wd/issue311f.smt2.options new file mode 100644 index 000000000..38990e2bd --- /dev/null +++ b/tests/regress/mcsat/wd/issue311f.smt2.options @@ -0,0 +1 @@ + --yices-model-format \ No newline at end of file diff --git a/tests/regress/wd/example_mdl.smt2.options b/tests/regress/wd/example_mdl.smt2.options deleted file mode 100644 index 18496b844..000000000 --- a/tests/regress/wd/example_mdl.smt2.options +++ /dev/null @@ -1 +0,0 @@ ---smt2-model-format diff --git a/tests/regress/wd/example_mdl2.smt2.options b/tests/regress/wd/example_mdl2.smt2.options index 0533f2b71..e46d77cb5 100644 --- a/tests/regress/wd/example_mdl2.smt2.options +++ b/tests/regress/wd/example_mdl2.smt2.options @@ -1 +1 @@ ---smt2-model-format --bvconst-in-decimal +--bvconst-in-decimal diff --git a/tests/regress/wd/issue293.smt2.options b/tests/regress/wd/issue293.smt2.options new file mode 100644 index 000000000..38990e2bd --- /dev/null +++ b/tests/regress/wd/issue293.smt2.options @@ -0,0 +1 @@ + --yices-model-format \ No newline at end of file diff --git a/tests/regress/wd/issue311g.smt2.options b/tests/regress/wd/issue311g.smt2.options new file mode 100644 index 000000000..38990e2bd --- /dev/null +++ b/tests/regress/wd/issue311g.smt2.options @@ -0,0 +1 @@ + --yices-model-format \ No newline at end of file diff --git a/tests/regress/wd/issue316c.smt2.options b/tests/regress/wd/issue316c.smt2.options new file mode 100644 index 000000000..38990e2bd --- /dev/null +++ b/tests/regress/wd/issue316c.smt2.options @@ -0,0 +1 @@ + --yices-model-format \ No newline at end of file From 55550efbc3daa871170cd5181c1a385074b0f7c5 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Thu, 29 Sep 2022 23:07:03 -0700 Subject: [PATCH 006/182] fix logic classification of regress tests for mcsat uf --- tests/regress/mcsat/uf/uf_00.smt2 | 2 +- tests/regress/mcsat/uf/uf_00.smt2.options | 1 + tests/regress/mcsat/uf/uf_01.smt2 | 2 +- tests/regress/mcsat/uf/uf_01.smt2.options | 1 + tests/regress/mcsat/uf/uf_02.smt2 | 2 +- tests/regress/mcsat/uf/uf_02.smt2.options | 1 + tests/regress/mcsat/uf/uf_03.smt2 | 2 +- tests/regress/mcsat/uf/uf_03.smt2.options | 1 + tests/regress/mcsat/uf/uf_04.smt2 | 2 +- tests/regress/mcsat/uf/uf_04.smt2.options | 1 + 10 files changed, 10 insertions(+), 5 deletions(-) create mode 100644 tests/regress/mcsat/uf/uf_00.smt2.options create mode 100644 tests/regress/mcsat/uf/uf_01.smt2.options create mode 100644 tests/regress/mcsat/uf/uf_02.smt2.options create mode 100644 tests/regress/mcsat/uf/uf_03.smt2.options create mode 100644 tests/regress/mcsat/uf/uf_04.smt2.options diff --git a/tests/regress/mcsat/uf/uf_00.smt2 b/tests/regress/mcsat/uf/uf_00.smt2 index 5ec34d6b7..4e1bb7677 100644 --- a/tests/regress/mcsat/uf/uf_00.smt2 +++ b/tests/regress/mcsat/uf/uf_00.smt2 @@ -1,4 +1,4 @@ -(set-logic QF_UFNRA) +(set-logic QF_UF) (declare-sort s 0) (declare-fun x () s) (declare-fun y () s) diff --git a/tests/regress/mcsat/uf/uf_00.smt2.options b/tests/regress/mcsat/uf/uf_00.smt2.options new file mode 100644 index 000000000..bcf7e6dae --- /dev/null +++ b/tests/regress/mcsat/uf/uf_00.smt2.options @@ -0,0 +1 @@ +--mcsat diff --git a/tests/regress/mcsat/uf/uf_01.smt2 b/tests/regress/mcsat/uf/uf_01.smt2 index faab556a8..434734ed7 100644 --- a/tests/regress/mcsat/uf/uf_01.smt2 +++ b/tests/regress/mcsat/uf/uf_01.smt2 @@ -1,4 +1,4 @@ -(set-logic QF_UFNRA) +(set-logic QF_UF) (declare-sort s 0) (declare-fun x () s) (declare-fun y () s) diff --git a/tests/regress/mcsat/uf/uf_01.smt2.options b/tests/regress/mcsat/uf/uf_01.smt2.options new file mode 100644 index 000000000..bcf7e6dae --- /dev/null +++ b/tests/regress/mcsat/uf/uf_01.smt2.options @@ -0,0 +1 @@ +--mcsat diff --git a/tests/regress/mcsat/uf/uf_02.smt2 b/tests/regress/mcsat/uf/uf_02.smt2 index fec4c2c70..0ea80e5c3 100644 --- a/tests/regress/mcsat/uf/uf_02.smt2 +++ b/tests/regress/mcsat/uf/uf_02.smt2 @@ -1,4 +1,4 @@ -(set-logic QF_UFNRA) +(set-logic QF_UF) (declare-sort s 0) diff --git a/tests/regress/mcsat/uf/uf_02.smt2.options b/tests/regress/mcsat/uf/uf_02.smt2.options new file mode 100644 index 000000000..bcf7e6dae --- /dev/null +++ b/tests/regress/mcsat/uf/uf_02.smt2.options @@ -0,0 +1 @@ +--mcsat diff --git a/tests/regress/mcsat/uf/uf_03.smt2 b/tests/regress/mcsat/uf/uf_03.smt2 index 7b6ce7325..7b3dcde0f 100644 --- a/tests/regress/mcsat/uf/uf_03.smt2 +++ b/tests/regress/mcsat/uf/uf_03.smt2 @@ -1,4 +1,4 @@ -(set-logic QF_UFNRA) +(set-logic QF_UF) (declare-sort s 0) (declare-fun f (s) s) diff --git a/tests/regress/mcsat/uf/uf_03.smt2.options b/tests/regress/mcsat/uf/uf_03.smt2.options new file mode 100644 index 000000000..bcf7e6dae --- /dev/null +++ b/tests/regress/mcsat/uf/uf_03.smt2.options @@ -0,0 +1 @@ +--mcsat diff --git a/tests/regress/mcsat/uf/uf_04.smt2 b/tests/regress/mcsat/uf/uf_04.smt2 index 506d8b59c..d09eae09b 100644 --- a/tests/regress/mcsat/uf/uf_04.smt2 +++ b/tests/regress/mcsat/uf/uf_04.smt2 @@ -1,4 +1,4 @@ -(set-logic QF_UFNRA) +(set-logic QF_UF) (declare-sort s 0) (declare-fun f (s) s) diff --git a/tests/regress/mcsat/uf/uf_04.smt2.options b/tests/regress/mcsat/uf/uf_04.smt2.options new file mode 100644 index 000000000..bcf7e6dae --- /dev/null +++ b/tests/regress/mcsat/uf/uf_04.smt2.options @@ -0,0 +1 @@ +--mcsat From 1ce073d46739901a8bc198c2fac4cb143b11927b Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Wed, 28 Sep 2022 09:21:44 -0700 Subject: [PATCH 007/182] mcsat push, solve methods comments --- src/mcsat/solver.h | 2 +- src/mcsat/uf/uf_plugin.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/mcsat/solver.h b/src/mcsat/solver.h index 9e1fee516..efca59993 100644 --- a/src/mcsat/solver.h +++ b/src/mcsat/solver.h @@ -83,7 +83,7 @@ int32_t mcsat_assert_formulas(mcsat_solver_t *mcsat, uint32_t n, const term_t *f * @param mdl the model to use. If mdl is NULL, solve with no model * @param mdl_filter part of the model to use. If mdl_filter is NULL, use the whole model. */ -void mcsat_solve(mcsat_solver_t* mcsat, const param_t *params, model_t* mdl, uint32_t n, const term_t t[]); +void mcsat_solve(mcsat_solver_t* mcsat, const param_t *params, model_t* mdl, uint32_t n, const term_t mdl_filter[]); /* * Add the model to the yices model diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index 40373e384..7beb0edad 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -294,7 +294,7 @@ static void uf_plugin_push(plugin_t* plugin) { uf_plugin_t* uf = (uf_plugin_t*) plugin; - // Pop the int variable values + // Push the int variable values scope_holder_push(&uf->scope, &uf->eq_graph_addition_trail.size, NULL); From 04df5f38ef771de0c78af714120a4e8ec2ee01bf Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Mon, 10 Oct 2022 09:56:40 -0700 Subject: [PATCH 008/182] mcsat eq_graph_add_ufun_term: fix comment: subterms doesn't require the function f -- it is handled in the code --- src/mcsat/eq/equality_graph.h | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/mcsat/eq/equality_graph.h b/src/mcsat/eq/equality_graph.h index a88dcc961..22963a64d 100644 --- a/src/mcsat/eq/equality_graph.h +++ b/src/mcsat/eq/equality_graph.h @@ -231,8 +231,7 @@ uint32_t eq_graph_term_size(const eq_graph_t* eq); * * @param t the full term itself (e.g., f(x, y, 1)) * @param f the function symbol (e.g. f) - * @param children the direct subterms of the term including the function itself - * (e.g., [f, x, y, 1]). + * @param children the direct subterms of the term (e.g., [x, y, 1]). */ eq_node_id_t eq_graph_add_ufun_term(eq_graph_t* eq, term_t t, term_t f, uint32_t n, const term_t* children); From bd77cd97b027bc3f3ae813fd9d14d2eabeb023c4 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Mon, 10 Oct 2022 16:20:39 -0700 Subject: [PATCH 009/182] mcsat: array write encoded as uf --- src/api/context_config.c | 2 +- src/mcsat/preprocessor.c | 10 +++++++++- src/mcsat/uf/uf_plugin.c | 9 +++++++++ 3 files changed, 19 insertions(+), 2 deletions(-) diff --git a/src/api/context_config.c b/src/api/context_config.c index d4cd5c280..54484ba37 100644 --- a/src/api/context_config.c +++ b/src/api/context_config.c @@ -694,7 +694,7 @@ void delete_config(ctx_config_t *config) { * Check whether a logic is supported by the MCSAT solver */ bool logic_is_supported_by_mcsat(smt_logic_t code) { - return code == SMT_ALL || !(logic_has_arrays(code) || logic_has_quantifiers(code)); + return code == SMT_ALL || !logic_has_quantifiers(code); } /* diff --git a/src/mcsat/preprocessor.c b/src/mcsat/preprocessor.c index cf1ed9118..a1857f3cc 100644 --- a/src/mcsat/preprocessor.c +++ b/src/mcsat/preprocessor.c @@ -128,6 +128,8 @@ composite_term_t* get_composite(term_table_t* terms, term_kind_t kind, term_t t) return arith_idiv_term_desc(terms, t); case ARITH_MOD: // remainder: (mod x y) is y - x * (div x y) return arith_mod_term_desc(terms, t); + case UPDATE_TERM: + return update_term_desc(terms, t); case DISTINCT_TERM: return distinct_term_desc(terms, t); case BV_ARRAY: @@ -203,6 +205,9 @@ term_t mk_composite(preprocessor_t* pre, term_kind_t kind, uint32_t n, term_t* c case ARITH_MOD: // remainder: (mod x y) is y - x * (div x y) assert(n == 2); return mk_arith_mod(tm, children[0], children[1]); + case UPDATE_TERM: + assert(n > 2); + return mk_update(tm, children[0], n-2, children + 1, children[n-1]); case BV_ARRAY: assert(n >= 1); return mk_bvarray(tm, n, children); @@ -485,11 +490,13 @@ term_t preprocessor_apply(preprocessor_t* pre, term_t t, ivector_t* out, bool is n = desc->arity; + /* // Arrays not supported yet if (current_kind == EQ_TERM && term_type_kind(terms, desc->arg[0]) == FUNCTION_TYPE) { longjmp(*pre->exception, MCSAT_EXCEPTION_UNSUPPORTED_THEORY); } - + */ + // Is this a top-level equality assertion bool is_equality = current_kind == EQ_TERM || @@ -880,6 +887,7 @@ term_t preprocessor_apply(preprocessor_t* pre, term_t t, ivector_t* out, bool is case ARITH_RDIV: // regular division (/ x y) case ARITH_IDIV: // division: (div x y) as defined in SMT-LIB 2 case ARITH_MOD: // remainder: (mod x y) is y - x * (div x y) + case UPDATE_TERM: // update array { composite_term_t* desc = get_composite(terms, current_kind, current); bool children_done = true; diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index 40373e384..aa352d47f 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -112,12 +112,15 @@ void uf_plugin_construct(plugin_t* plugin, plugin_context_t* ctx) { ctx->request_term_notification_by_kind(ctx, ARITH_IDIV, false); ctx->request_term_notification_by_kind(ctx, ARITH_MOD, false); ctx->request_term_notification_by_kind(ctx, EQ_TERM, false); + ctx->request_term_notification_by_kind(ctx, UPDATE_TERM, false); // Types ctx->request_term_notification_by_type(ctx, UNINTERPRETED_TYPE); + ctx->request_term_notification_by_type(ctx, FUNCTION_TYPE); // Decisions ctx->request_decision_calls(ctx, UNINTERPRETED_TYPE); + ctx->request_decision_calls(ctx, FUNCTION_TYPE); // Equality graph eq_graph_construct(&uf->eq_graph, ctx, "uf"); @@ -192,6 +195,11 @@ void uf_plugin_add_to_eq_graph(uf_plugin_t* uf, term_t t, bool record) { eq_graph_add_ufun_term(&uf->eq_graph, t, t_desc->arg[0], t_desc->arity - 1, t_desc->arg + 1); children_start = 1; break; + case UPDATE_TERM: + t_desc = update_term_desc(terms, t); + eq_graph_add_ifun_term(&uf->eq_graph, t, UPDATE_TERM, t_desc->arity, t_desc->arg); + children_start = 1; + break; case ARITH_RDIV: t_desc = arith_rdiv_term_desc(terms, t); eq_graph_add_ifun_term(&uf->eq_graph, t, ARITH_RDIV, 2, t_desc->arg); @@ -249,6 +257,7 @@ void uf_plugin_new_term_notify(plugin_t* plugin, term_t t, trail_token_t* prop) case ARITH_IDIV: case ARITH_RDIV: case APP_TERM: + case UPDATE_TERM: case EQ_TERM: // Application terms (or other terms we treat as uninterpreted) uf_plugin_add_to_eq_graph(uf, t, true); From 350286faf9a2056d8b0c27cb6f2366d2a0aac27e Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Tue, 11 Oct 2022 22:14:44 -0700 Subject: [PATCH 010/182] mcsat tracing: add update --- src/mcsat/tracing.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/mcsat/tracing.c b/src/mcsat/tracing.c index 1d6753d2d..a417bf142 100644 --- a/src/mcsat/tracing.c +++ b/src/mcsat/tracing.c @@ -54,6 +54,8 @@ const char* kind_to_string(term_kind_t t) { return "ITE_TERM"; case UNINTERPRETED_TERM: return "UNINTERPRETED_TERM"; + case UPDATE_TERM: + return "UPDATE_TERM"; default: assert(false); return "UNKNOWN_TERM"; From d84fec1b3a93a2ca17ac274489d879d9efe41272 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Tue, 11 Oct 2022 22:16:13 -0700 Subject: [PATCH 011/182] mcsat preprocess: update terms are processed similar to app terms --- src/mcsat/preprocessor.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/mcsat/preprocessor.c b/src/mcsat/preprocessor.c index a1857f3cc..1ebabe0a0 100644 --- a/src/mcsat/preprocessor.c +++ b/src/mcsat/preprocessor.c @@ -277,6 +277,8 @@ term_t preprocessor_purify(preprocessor_t* pre, term_t t, ivector_t* out) { case APP_TERM: // Uninterpreted functions are also already purified return t; + case UPDATE_TERM: + return t; default: break; } From 4835d2827f82542bcd15a3adca100a938859ee9f Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Wed, 12 Oct 2022 00:14:30 -0700 Subject: [PATCH 012/182] mcsat uf: vectors to store updates + fix processing children --- src/mcsat/uf/uf_plugin.c | 28 ++++++++++++++++++++++------ 1 file changed, 22 insertions(+), 6 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index aa352d47f..0e7b1d179 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -56,6 +56,12 @@ typedef struct { /** Stuff added to eq_graph */ ivector_t eq_graph_addition_trail; + /** Update terms */ + ivector_t update_terms; + + /** Update eq_graph nodes */ + ivector_t eq_graph_update_nodes; + /** Tmp vector */ int_mset_t tmp; @@ -125,6 +131,8 @@ void uf_plugin_construct(plugin_t* plugin, plugin_context_t* ctx) { // Equality graph eq_graph_construct(&uf->eq_graph, ctx, "uf"); init_ivector(&uf->eq_graph_addition_trail, 0); + init_ivector(&uf->update_terms, 0); + init_ivector(&uf->eq_graph_update_nodes, 0); // stats uf_plugin_stats_init(uf); @@ -138,6 +146,8 @@ void uf_plugin_destruct(plugin_t* plugin) { int_mset_destruct(&uf->tmp); eq_graph_destruct(&uf->eq_graph); delete_ivector(&uf->eq_graph_addition_trail); + delete_ivector(&uf->update_terms); + delete_ivector(&uf->eq_graph_update_nodes); } static @@ -189,6 +199,7 @@ void uf_plugin_add_to_eq_graph(uf_plugin_t* uf, term_t t, bool record) { // Add to equality graph composite_term_t* t_desc = NULL; uint32_t children_start = 0; + eq_node_id_t* eq_graph_update_node = NULL; switch (t_kind) { case APP_TERM: t_desc = app_term_desc(terms, t); @@ -197,8 +208,9 @@ void uf_plugin_add_to_eq_graph(uf_plugin_t* uf, term_t t, bool record) { break; case UPDATE_TERM: t_desc = update_term_desc(terms, t); - eq_graph_add_ifun_term(&uf->eq_graph, t, UPDATE_TERM, t_desc->arity, t_desc->arg); - children_start = 1; + eq_graph_update_node = eq_graph_add_ifun_term(&uf->eq_graph, t, UPDATE_TERM, t_desc->arity, t_desc->arg); + ivector_push(&uf->update_terms, t); + ivector_push(&uf->eq_graph_update_nodes, eq_graph_update_node); break; case ARITH_RDIV: t_desc = arith_rdiv_term_desc(terms, t); @@ -305,8 +317,10 @@ void uf_plugin_push(plugin_t* plugin) { // Pop the int variable values scope_holder_push(&uf->scope, - &uf->eq_graph_addition_trail.size, - NULL); + &uf->eq_graph_addition_trail.size, + &uf->update_terms.size, + &uf->eq_graph_update_nodes.size, + NULL); eq_graph_push(&uf->eq_graph); } @@ -316,11 +330,13 @@ void uf_plugin_pop(plugin_t* plugin) { uf_plugin_t* uf = (uf_plugin_t*) plugin; uint32_t old_eq_graph_addition_trail_size; + uint32_t t1, t2; // Pop the int variable values scope_holder_pop(&uf->scope, - &old_eq_graph_addition_trail_size, - NULL); + &old_eq_graph_addition_trail_size, + &t1, &t2, + NULL); eq_graph_pop(&uf->eq_graph); From 153aed3b5068e3c68fa0629767b063af7b4ff353 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Thu, 24 Nov 2022 01:22:36 -0800 Subject: [PATCH 013/182] github actions ci -- initial working --- .github/actions/build-and-test/action.yml | 47 +++++++++++++++++++ .../actions/install-dependencies/action.yml | 16 +++++++ .github/workflows/ci.yml | 46 ++++++++++++++++++ 3 files changed, 109 insertions(+) create mode 100644 .github/actions/build-and-test/action.yml create mode 100644 .github/actions/install-dependencies/action.yml create mode 100644 .github/workflows/ci.yml diff --git a/.github/actions/build-and-test/action.yml b/.github/actions/build-and-test/action.yml new file mode 100644 index 000000000..fba553cc1 --- /dev/null +++ b/.github/actions/build-and-test/action.yml @@ -0,0 +1,47 @@ +name: Build and Test + +inputs: + mode: + required: true + config-opt: + required: false + default: "" + +runs: + using: composite + steps: + - name: Build and install libpoly + shell: bash + run: | + pushd . + git clone https://github.com/SRI-CSL/libpoly.git + mkdir -p libpoly/build + cd libpoly/build + cmake .. + make + sudo make install + popd + + - name: Build and install CUDD + shell: bash + run: | + pushd . + git clone https://github.com/ivmai/cudd.git + cd cudd + git checkout tags/cudd-3.0.0 + autoreconf -fi + ./configure --enable-shared + make + sudo make install + popd + + - name: Build and test Yices + shell: bash + run: | + autoconf + #CFLAGS='-Werror' ./configure ${{ inputs.config-opt }} + ./configure ${{ inputs.config-opt }} + # This is needed for yices2 to find libpoly.so.0. /usr/local/lib not searched by default? + export LD_LIBRARY_PATH=/usr/local/lib/:${LD_LIBRARY_PATH} + make MODE=${{ inputs.mode }} + make MODE=${{ inputs.mode }} check diff --git a/.github/actions/install-dependencies/action.yml b/.github/actions/install-dependencies/action.yml new file mode 100644 index 000000000..3fba5eaf0 --- /dev/null +++ b/.github/actions/install-dependencies/action.yml @@ -0,0 +1,16 @@ +name: Install Dependencies + +runs: + using: composite + steps: + - name: Install Linux Dependencies + if: runner.os == 'Linux' + shell: bash + run: | + echo "Install Linux dependencies" + sudo apt-get update + sudo apt-get install -y libgmp-dev gperf + sudo apt-get install -y python-pip + sudo apt-get install -y lcov + sudo gem install coveralls-lcov + echo "Install Linux dependencies [DONE]" diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 000000000..ac76a4f26 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,46 @@ +name: CI + +on: + push: + pull_request: + +jobs: + build: + strategy: + matrix: + include: + - name: ubuntu:debug:enable-mcsat + os: ubuntu-latest + mode: debug + config-opt: --enable-mcsat + + - name: ubuntu:debug:enable-thread-safety + os: ubuntu-latest + mode: debug + config-opt: --enable-thread-safety + + - name: ubuntu:release:enable-mcsat + os: ubuntu-latest + mode: release + config-opt: --enable-mcsat + + - name: ubuntu:release:enable-thread-safety + os: ubuntu-latest + mode: release + config-opt: --enable-thread-safety + + name: ${{ matrix.name }} + runs-on: ${{ matrix.os }} + + steps: + - uses: actions/checkout@v2 + + - name: Install Dependencies + uses: ./.github/actions/install-dependencies + + - name: Build and Test + uses: ./.github/actions/build-and-test + with: + mode: ${{ matrix.mode }} + config-opt: ${{ matrix.config-opt }} + From 58ca7cd50416f92778a739a70b95324f5e1af872 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Thu, 24 Nov 2022 01:38:40 -0800 Subject: [PATCH 014/182] separate build and test --- .../actions/{build-and-test => build}/action.yml | 3 +-- .github/actions/test/action.yml | 13 +++++++++++++ .github/workflows/ci.yml | 9 +++++++-- 3 files changed, 21 insertions(+), 4 deletions(-) rename .github/actions/{build-and-test => build}/action.yml (94%) create mode 100644 .github/actions/test/action.yml diff --git a/.github/actions/build-and-test/action.yml b/.github/actions/build/action.yml similarity index 94% rename from .github/actions/build-and-test/action.yml rename to .github/actions/build/action.yml index fba553cc1..2a1d8fa96 100644 --- a/.github/actions/build-and-test/action.yml +++ b/.github/actions/build/action.yml @@ -1,4 +1,4 @@ -name: Build and Test +name: Build inputs: mode: @@ -44,4 +44,3 @@ runs: # This is needed for yices2 to find libpoly.so.0. /usr/local/lib not searched by default? export LD_LIBRARY_PATH=/usr/local/lib/:${LD_LIBRARY_PATH} make MODE=${{ inputs.mode }} - make MODE=${{ inputs.mode }} check diff --git a/.github/actions/test/action.yml b/.github/actions/test/action.yml new file mode 100644 index 000000000..445756bc7 --- /dev/null +++ b/.github/actions/test/action.yml @@ -0,0 +1,13 @@ +name: Test + +inputs: + mode: + required: true + +runs: + using: composite + steps: + - name: Test Yices + shell: bash + run: + make MODE=${{ inputs.mode }} check diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ac76a4f26..a1c821fc2 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -38,9 +38,14 @@ jobs: - name: Install Dependencies uses: ./.github/actions/install-dependencies - - name: Build and Test - uses: ./.github/actions/build-and-test + - name: Build + uses: ./.github/actions/build with: mode: ${{ matrix.mode }} config-opt: ${{ matrix.config-opt }} + - name: Test + uses: ./.github/actions/test + with: + mode: ${{ matrix.mode }} + From ae5bcbedcc3d08d5c6f07eb0b9c3d877c85aefe6 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Thu, 24 Nov 2022 01:55:43 -0800 Subject: [PATCH 015/182] minor --- .github/actions/test/action.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/actions/test/action.yml b/.github/actions/test/action.yml index 445756bc7..d7af2f727 100644 --- a/.github/actions/test/action.yml +++ b/.github/actions/test/action.yml @@ -10,4 +10,6 @@ runs: - name: Test Yices shell: bash run: + # This is needed for yices2 to find libpoly.so.0. /usr/local/lib not searched by default? + export LD_LIBRARY_PATH=/usr/local/lib/:${LD_LIBRARY_PATH} make MODE=${{ inputs.mode }} check From 94c644cdced048029a1e9ec0ac057e1674179974 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Thu, 24 Nov 2022 02:03:21 -0800 Subject: [PATCH 016/182] minor --- .github/actions/test/action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/actions/test/action.yml b/.github/actions/test/action.yml index d7af2f727..03ca338e9 100644 --- a/.github/actions/test/action.yml +++ b/.github/actions/test/action.yml @@ -9,7 +9,7 @@ runs: steps: - name: Test Yices shell: bash - run: + run: | # This is needed for yices2 to find libpoly.so.0. /usr/local/lib not searched by default? export LD_LIBRARY_PATH=/usr/local/lib/:${LD_LIBRARY_PATH} make MODE=${{ inputs.mode }} check From e9d5ed5080912982cf4cb22363b042593f3d658c Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Thu, 24 Nov 2022 02:18:29 -0800 Subject: [PATCH 017/182] using checkout@v3 --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a1c821fc2..30652b930 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -33,7 +33,7 @@ jobs: runs-on: ${{ matrix.os }} steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Install Dependencies uses: ./.github/actions/install-dependencies From 0d3e5e5bbe3b4fa755eb45d571569f44adb91d68 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Thu, 24 Nov 2022 23:02:11 -0800 Subject: [PATCH 018/182] python3-pip --- .github/actions/install-dependencies/action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/actions/install-dependencies/action.yml b/.github/actions/install-dependencies/action.yml index 3fba5eaf0..0f9f68843 100644 --- a/.github/actions/install-dependencies/action.yml +++ b/.github/actions/install-dependencies/action.yml @@ -10,7 +10,7 @@ runs: echo "Install Linux dependencies" sudo apt-get update sudo apt-get install -y libgmp-dev gperf - sudo apt-get install -y python-pip + sudo apt-get install -y python3-pip sudo apt-get install -y lcov sudo gem install coveralls-lcov echo "Install Linux dependencies [DONE]" From 0d1f2c1ab73bd1f9602d02a9fb3c4aff0299955e Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Thu, 1 Dec 2022 13:57:16 -0800 Subject: [PATCH 019/182] enable clang in ci --- .github/actions/build/action.yml | 13 +++++++------ .github/workflows/ci.yml | 29 +++++++---------------------- 2 files changed, 14 insertions(+), 28 deletions(-) diff --git a/.github/actions/build/action.yml b/.github/actions/build/action.yml index 2a1d8fa96..007d11c7a 100644 --- a/.github/actions/build/action.yml +++ b/.github/actions/build/action.yml @@ -6,6 +6,9 @@ inputs: config-opt: required: false default: "" + env: + required: false + default: "" runs: using: composite @@ -17,11 +20,10 @@ runs: git clone https://github.com/SRI-CSL/libpoly.git mkdir -p libpoly/build cd libpoly/build - cmake .. + ${{ inputs.env }} cmake .. make sudo make install popd - - name: Build and install CUDD shell: bash run: | @@ -30,17 +32,16 @@ runs: cd cudd git checkout tags/cudd-3.0.0 autoreconf -fi - ./configure --enable-shared + ${{ inputs.env }} ./configure --enable-shared make sudo make install popd - - name: Build and test Yices shell: bash run: | autoconf - #CFLAGS='-Werror' ./configure ${{ inputs.config-opt }} - ./configure ${{ inputs.config-opt }} + #CFLAGS='-Werror' ${{ inputs.env }} ./configure ${{ inputs.config-opt }} + ${{ inputs.env }} ./configure ${{ inputs.config-opt }} # This is needed for yices2 to find libpoly.so.0. /usr/local/lib not searched by default? export LD_LIBRARY_PATH=/usr/local/lib/:${LD_LIBRARY_PATH} make MODE=${{ inputs.mode }} diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 30652b930..c3643ce12 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -8,28 +8,12 @@ jobs: build: strategy: matrix: - include: - - name: ubuntu:debug:enable-mcsat - os: ubuntu-latest - mode: debug - config-opt: --enable-mcsat - - - name: ubuntu:debug:enable-thread-safety - os: ubuntu-latest - mode: debug - config-opt: --enable-thread-safety - - - name: ubuntu:release:enable-mcsat - os: ubuntu-latest - mode: release - config-opt: --enable-mcsat - - - name: ubuntu:release:enable-thread-safety - os: ubuntu-latest - mode: release - config-opt: --enable-thread-safety - - name: ${{ matrix.name }} + os: [ubuntu-latest] + mode: [debug, release] + config-opt: [--enable-mcsat, --enable-thread-safety] + env: [CC=gcc CXX=g++, CC=clang CXX=clang++] + + name: ${{ matrix.os }}|${{ matrix.mode }}|${{ matrix.config-opt }}|${{ matrix.env }} runs-on: ${{ matrix.os }} steps: @@ -43,6 +27,7 @@ jobs: with: mode: ${{ matrix.mode }} config-opt: ${{ matrix.config-opt }} + env: ${{ matrix.env }} - name: Test uses: ./.github/actions/test From 074f104d883cd1ffb720060b8e16865a49c9050f Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Thu, 1 Dec 2022 23:54:54 -0800 Subject: [PATCH 020/182] ci coverage --- .github/actions/coverage/action.yml | 9 +++++++++ .github/workflows/ci.yml | 15 +++++++++++++++ 2 files changed, 24 insertions(+) create mode 100644 .github/actions/coverage/action.yml diff --git a/.github/actions/coverage/action.yml b/.github/actions/coverage/action.yml new file mode 100644 index 000000000..ab40b3a3d --- /dev/null +++ b/.github/actions/coverage/action.yml @@ -0,0 +1,9 @@ +name: Coverage + +runs: + using: composite + steps: + - name: Run Coverage + shell: bash + run: | + lcov --directory build --base-directory src --capture --output-file coverage.info diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c3643ce12..07be6bb9b 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -12,6 +12,11 @@ jobs: mode: [debug, release] config-opt: [--enable-mcsat, --enable-thread-safety] env: [CC=gcc CXX=g++, CC=clang CXX=clang++] + include: + - os: ubuntu-latest + mode: gcov + config-opt: --enable-mcsat + env: CC=gcc CXX=g++ name: ${{ matrix.os }}|${{ matrix.mode }}|${{ matrix.config-opt }}|${{ matrix.env }} runs-on: ${{ matrix.os }} @@ -34,3 +39,13 @@ jobs: with: mode: ${{ matrix.mode }} + - name: Coverage + if: matrix.mode == 'gcov' + uses: ./.github/actions/coverage + + - name: Coveralls + if: matrix.mode == 'gcov' + uses: coverallsapp/github-action@master + with: + github-token: ${{ secrets.GITHUB_TOKEN }} + path-to-lcov: 'coverage.info' \ No newline at end of file From 10b9f0591d3d0bfe6831534b6bccec10fb79cf0a Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Thu, 1 Dec 2022 23:55:35 -0800 Subject: [PATCH 021/182] cleanup: travis --- .travis.yml | 43 ------------------------------------------- .travis/build.sh | 40 ---------------------------------------- 2 files changed, 83 deletions(-) delete mode 100644 .travis.yml delete mode 100755 .travis/build.sh diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index a0ba98d90..000000000 --- a/.travis.yml +++ /dev/null @@ -1,43 +0,0 @@ -language: c - -dist: xenial - -compiler: - - gcc - - clang - -env: - matrix: - - BUILD_TYPE=debug - ENABLE_COVERAGE=OFF - CONFIGURE_FLAGS="--enable-mcsat" - - BUILD_TYPE=debug - ENABLE_COVERAGE=OFF - CONFIGURE_FLAGS="--enable-thread-safety" - - BUILD_TYPE=release - ENABLE_COVERAGE=OFF - CONFIGURE_FLAGS="--enable-mcsat" - - BUILD_TYPE=release - ENABLE_COVERAGE=OFF - CONFIGURE_FLAGS="--enable-thread-safety" - - BUILD_TYPE=gcov - ENABLE_COVERAGE=ON - CONFIGURE_FLAGS="--enable-mcsat" - -# command to install dependencies -install: - - sudo apt-get update - - sudo apt-get install -y libgmp-dev gperf - - sudo apt-get install -y python-pip - - sudo apt-get install -y lcov - - gem install coveralls-lcov - -#tests -script: - - ./.travis/build.sh - -after_success: - - if [[ $ENABLE_COVERAGE == ON ]]; then - lcov --directory build --base-directory src --capture --output-file coverage.info; - coveralls-lcov coverage.info; - fi diff --git a/.travis/build.sh b/.travis/build.sh deleted file mode 100755 index a8a372f52..000000000 --- a/.travis/build.sh +++ /dev/null @@ -1,40 +0,0 @@ -#!/bin/bash -x -# Make sure we exit if there is a failure -set -e - -# Build and install libpoly -pushd . -git clone https://github.com/SRI-CSL/libpoly.git -mkdir -p libpoly/build -cd libpoly/build -cmake .. -make -sudo make install -popd - -# Build and install CUDD -pushd . -git clone https://github.com/ivmai/cudd.git -cd cudd -git checkout tags/cudd-3.0.0 -autoreconf -fi -./configure --enable-shared -make -sudo make install -popd - -# Build yices -autoconf -CFLAGS='-Werror' ./configure $CONFIGURE_FLAGS - -# This is needed for yices2 to find libpoly.so.0. /usr/local/lib not searched by default? -export LD_LIBRARY_PATH=/usr/local/lib/:${LD_LIBRARY_PATH} - -make MODE=$BUILD_TYPE -make MODE=$BUILD_TYPE check - -RETURN="$?" -if [ "${RETURN}" != "0" ]; then - echo "Building and checking yices2 failed!" - exit 1 -fi From 148fd3617bf6c2dff614cf580935608c8ab295f7 Mon Sep 17 00:00:00 2001 From: Ahmed <43099566+ahmed-irfan@users.noreply.github.com> Date: Fri, 2 Dec 2022 00:15:05 -0800 Subject: [PATCH 022/182] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index f2dc6d60b..84fae5361 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ [![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0) -[![Build Status](https://travis-ci.org/SRI-CSL/yices2.svg?branch=master)](https://travis-ci.org/SRI-CSL/yices2) +[![CI](https://github.com/SRI-CSL/yices2/actions/workflows/ci.yml/badge.svg)](https://github.com/SRI-CSL/yices2/actions/workflows/ci.yml) [![Coverity Scan Build Status](https://scan.coverity.com/projects/12768/badge.svg)](https://scan.coverity.com/projects/sri-csl-yices2) [![Coverage Status](https://coveralls.io/repos/github/SRI-CSL/yices2/badge.svg?branch=master)](https://coveralls.io/github/SRI-CSL/yices2?branch=master) From f13a9b3488ac7e753e9afb074e51ec44cdbefe0c Mon Sep 17 00:00:00 2001 From: Ahmed <43099566+ahmed-irfan@users.noreply.github.com> Date: Wed, 14 Dec 2022 08:42:37 -0800 Subject: [PATCH 023/182] Update INSTALL --- INSTALL | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/INSTALL b/INSTALL index 4e9f92303..5f1491276 100644 --- a/INSTALL +++ b/INSTALL @@ -83,8 +83,11 @@ instructions: 1) Install SRI's library for polynomial manipulation. It's available on github (https://github.com/SRI-CSL/libpoly). -2) After you've installed libpoly, add option --enable-mcsat to - the configure command. In details, type this in the toplevel +2) Install the CUDD library for binary-decision diagrams. We recommend + using the github distribution: https://github.com/ivmai/cudd. + +3) After you've installed libpoly and cudd, add option --enable-mcsat + to the configure command. In details, type this in the toplevel Yices directory: autoconf From 12db9746616219411b164bde89b3fadeb17a5dd1 Mon Sep 17 00:00:00 2001 From: Ahmed <43099566+ahmed-irfan@users.noreply.github.com> Date: Thu, 15 Dec 2022 10:00:31 -0800 Subject: [PATCH 024/182] Update README.md --- README.md | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 84fae5361..47a66104f 100644 --- a/README.md +++ b/README.md @@ -45,8 +45,9 @@ Running Yices on the above problem gives a solution ``` > yices-smt2 lra.smt2 sat -(= x 2) -(= y (- 1)) +(model + (define-fun x () Real 2.0) + (define-fun y () Real (- 1.0))) ``` #### Bit-Vectors @@ -72,8 +73,9 @@ Running Yices on the above problem gives ``` > yices-smt2 bv.smt2 sat -(= x #b01000000000000000000000000000000) -(= y #b01000000000000000000000000000000) +(model + (define-fun x () (_ BitVec 32) #b01000000000000000000000000000000) + (define-fun y () (_ BitVec 32) #b01000000000000000000000000000000)) ``` #### Non-Linear Arithmetic @@ -98,8 +100,9 @@ Running Yices on the above problem gives ``` sat -(= x 0.894427) -(= y 0.447214) +(model + (define-fun x () Real 0.894427) + (define-fun y () Real 0.447214)) ``` ## Installing Prebuilt Binaries From 46adcd7b148b4cc929713ec6bb65e28ac25daa5c Mon Sep 17 00:00:00 2001 From: Sergey Fedorov Date: Tue, 27 Dec 2022 20:43:12 +0700 Subject: [PATCH 025/182] Makefile: add PPC support --- Makefile | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/Makefile b/Makefile index bb05c00f9..9e624bf12 100644 --- a/Makefile +++ b/Makefile @@ -66,6 +66,7 @@ YICES_VERSION = $(MAJOR).$(MINOR).$(PATCH_LEVEL) # ARCH=$(shell ./config.sub `./config.guess`) POSIXOS=$(shell ./autoconf/os) +PLATFORM=$(shell uname -p) ifeq (,$(POSIXOS)) $(error "Problem running ./autoconf/os") @@ -150,12 +151,22 @@ ifneq ($(OPTION),) endif else ifeq ($(POSIXOS),darwin) - ifeq ($(OPTION),64bits) - newarch=$(subst i386,x86_64,$(ARCH)) + ifeq ($(PLATFORM),powerpc) + ifeq ($(OPTION),64bits) + newarch=$(subst powerpc,powerpc64,$(ARCH)) + else + ifeq ($(OPTION),32bits) + newarch=$(subst powerpc64,powerpc,$(ARCH)) + endif + endif else - ifeq ($(OPTION),32bits) - newarch=$(subst x86_64,i386,$(ARCH)) - endif + ifeq ($(OPTION),64bits) + newarch=$(subst i386,x86_64,$(ARCH)) + else + ifeq ($(OPTION),32bits) + newarch=$(subst x86_64,i386,$(ARCH)) + endif + endif endif else ifeq ($(POSIXOS),cygwin) From 4eb07db865fb7b113d1076e017acc4194f407762 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Tue, 10 Jan 2023 19:52:21 -0800 Subject: [PATCH 026/182] progress: weak-eq graph, array lemmas during propagation, working on some examples, but not complete yet --- src/mcsat/eq/equality_graph.c | 7 + src/mcsat/eq/equality_graph.h | 3 + src/mcsat/uf/uf_plugin.c | 787 +++++++++++++++++++++++++++++++++- 3 files changed, 779 insertions(+), 18 deletions(-) diff --git a/src/mcsat/eq/equality_graph.c b/src/mcsat/eq/equality_graph.c index 69703a382..eb4fa1bb5 100644 --- a/src/mcsat/eq/equality_graph.c +++ b/src/mcsat/eq/equality_graph.c @@ -763,6 +763,13 @@ bool eq_graph_term_is_rep(const eq_graph_t* eq, term_t t) { return n->find == id; } +term_t eq_graph_term_get_rep(const eq_graph_t* eq, term_t t) { + eq_node_id_t id = eq_graph_term_id(eq, t); + const eq_node_t* n = eq_graph_get_node_const(eq, id); + const eq_node_t* n_rep = eq_graph_get_node_const(eq, n->find); + return eq->terms_list.data[n_rep->index]; +} + eq_node_id_t eq_graph_value_id(const eq_graph_t* eq, const mcsat_value_t* v) { value_hmap_pair_t* find = value_hmap_find(&eq->value_to_id, v); diff --git a/src/mcsat/eq/equality_graph.h b/src/mcsat/eq/equality_graph.h index 22963a64d..5ac57cda8 100644 --- a/src/mcsat/eq/equality_graph.h +++ b/src/mcsat/eq/equality_graph.h @@ -266,6 +266,9 @@ eq_node_id_t eq_graph_term_id_if_exists(const eq_graph_t* eq, term_t t); /** Returns true if term is a representative of its class */ bool eq_graph_term_is_rep(const eq_graph_t* eq, term_t t); +/** Returns the representative test of the class the given term belongs to */ +term_t eq_graph_term_get_rep(const eq_graph_t* eq, term_t t); + /** Push the context */ void eq_graph_push(eq_graph_t* eq); diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index 9d43d8daf..bc1037906 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -27,12 +27,20 @@ #include "mcsat/eq/equality_graph.h" #include "utils/int_array_sort2.h" +#include "utils/int_array_hsets.h" +#include "utils/int_hash_sets.h" + #include "utils/ptr_array_sort2.h" +#include "utils/ptr_hash_map.h" +#include "utils/refcount_strings.h" + #include "model/models.h" #include "terms/terms.h" #include "inttypes.h" +#include "api/yices_api_lock_free.h" + typedef struct { /** The plugin interface */ @@ -56,11 +64,26 @@ typedef struct { /** Stuff added to eq_graph */ ivector_t eq_graph_addition_trail; - /** Update terms */ - ivector_t update_terms; + /** Array terms */ + ivector_t array_terms; + + /** Array eq_graph nodes */ + ivector_t eq_graph_array_nodes; + + /** Select terms */ + ivector_t select_terms; + + /** Select eq_graph nodes */ + ivector_t eq_graph_select_nodes; - /** Update eq_graph nodes */ - ivector_t eq_graph_update_nodes; + /** Map from types to diff symbols */ + int_hmap_t type_to_diff; + + /** Set of Diff Funs */ + int_hset_t diff_funs; + + /** Map: terms to fun_nodes */ + ptr_hmap_t fun_node_map; /** Tmp vector */ int_mset_t tmp; @@ -78,6 +101,119 @@ typedef struct { } uf_plugin_t; + +/* + * Weakly Equivalent Arrays: data structure + */ + +typedef struct fun_node_s { + term_t t; + struct fun_node_s* p; + term_t pi; + struct fun_node_s* s; +} fun_node_t; + +static inline fun_node_t *new_node() { + fun_node_t *n = safe_malloc(sizeof(fun_node_t)); + n->t = NULL_TERM; + n->p = NULL; + n->pi = NULL_TERM; + n->s = NULL; + return n; +} + +static fun_node_t* get_rep(fun_node_t* n, int_hset_t* path_idx_set) { + if (n->p == NULL) + return n; + if (path_idx_set != NULL) + int_hset_add(path_idx_set, n->pi); + return get_rep(n->p, path_idx_set); +} + +static fun_node_t* get_rep_i(fun_node_t* n, term_t idx, int_hset_t* path_idx_set) { + if (n->p == NULL) + return n; + if (n->pi != idx) { + // record indices + if (path_idx_set != NULL) + int_hset_add(path_idx_set, n->pi); + return get_rep_i(n->p, idx, path_idx_set); + } + if (n->s == NULL) + return n; + return get_rep_i(n->s, idx, path_idx_set); +} + +static void make_rep_i(fun_node_t* n) { + if (n->s == NULL) + return; + if (n->s->pi != n->pi) { + n->s = n->s->p; + make_rep_i(n); + } else { + make_rep_i(n->s); + n->s->s = n; + n->s = NULL; + } +} + +static void make_rep(fun_node_t* n) { + if (n->p == NULL) + return; + make_rep(n->p); + // invert primary edge + n->p->p = n; + n->p->pi = n->pi; + n->p = NULL; + make_rep_i(n); +} + +static void add_secondary(int_array_hset_t* idx_set, fun_node_t* a, fun_node_t* b) { + if (a == b) + return; + + bool rm_idx; + rm_idx = false; + if (int_array_hset_get(idx_set, idx_set->size, &a->pi) == NULL && + get_rep_i(a, a->pi, NULL) != b) { + make_rep_i(a); + a->s = b; + rm_idx = true; + } + + int_array_hset_get(idx_set, idx_set->size, &a->pi); + add_secondary(idx_set, a->p, b); + if (rm_idx) + int_array_hset_remove(idx_set, idx_set->size, &a->pi); +} + +static void add_store(fun_node_t* a, fun_node_t* b, term_t idx) { + make_rep(b); + if (get_rep(a, NULL) == b) { + int_array_hset_t s; + init_int_array_hset(&s, 0); + add_secondary(&s, a, b); + delete_int_array_hset(&s); + } else { + b->p = a; + b->pi = idx; + } +} + +/* * */ + +static +void clear_fun_node_map(ptr_hmap_t *m) { + ptr_hmap_pair_t *p; + for (p = ptr_hmap_first_record(m); + p != NULL; + p = ptr_hmap_next_record(m, p)) { + safe_free((fun_node_t *) p->val); + } + ptr_hmap_reset(m); +} + + static void uf_plugin_stats_init(uf_plugin_t* uf) { // Add statistics @@ -131,9 +267,16 @@ void uf_plugin_construct(plugin_t* plugin, plugin_context_t* ctx) { // Equality graph eq_graph_construct(&uf->eq_graph, ctx, "uf"); init_ivector(&uf->eq_graph_addition_trail, 0); - init_ivector(&uf->update_terms, 0); - init_ivector(&uf->eq_graph_update_nodes, 0); + init_ivector(&uf->array_terms, 0); + init_ivector(&uf->eq_graph_array_nodes, 0); + init_ivector(&uf->select_terms, 0); + init_ivector(&uf->eq_graph_select_nodes, 0); + + init_int_hmap(&uf->type_to_diff, 0); + init_int_hset(&uf->diff_funs, 0); + init_ptr_hmap(&uf->fun_node_map, 0); + // stats uf_plugin_stats_init(uf); } @@ -146,8 +289,15 @@ void uf_plugin_destruct(plugin_t* plugin) { int_mset_destruct(&uf->tmp); eq_graph_destruct(&uf->eq_graph); delete_ivector(&uf->eq_graph_addition_trail); - delete_ivector(&uf->update_terms); - delete_ivector(&uf->eq_graph_update_nodes); + delete_ivector(&uf->array_terms); + delete_ivector(&uf->eq_graph_array_nodes); + delete_ivector(&uf->select_terms); + delete_ivector(&uf->eq_graph_select_nodes); + + delete_int_hmap(&uf->type_to_diff); + delete_int_hset(&uf->diff_funs); + clear_fun_node_map(&uf->fun_node_map); + delete_ptr_hmap(&uf->fun_node_map); } static @@ -176,6 +326,7 @@ void uf_plugin_process_eq_graph_propagations(uf_plugin_t* uf, trail_token_t* pro mcsat_value_print(v, out); fprintf(out, "\n"); } + prop->add(prop, t_var, v); (*uf->stats.propagations) ++; } else { @@ -188,6 +339,82 @@ void uf_plugin_process_eq_graph_propagations(uf_plugin_t* uf, trail_token_t* pro } } +static fun_node_t *uf_plugin_get_fun_node(uf_plugin_t* uf, term_t t) { + term_t t_rep = eq_graph_term_get_rep(&uf->eq_graph, t); + ptr_hmap_pair_t *v = ptr_hmap_find(&uf->fun_node_map, t_rep); + if (v == NULL) { + v = ptr_hmap_get(&uf->fun_node_map, t_rep); + fun_node_t *n = new_node(); + n->t = t_rep; + v->val = n; + return n; + } else { + return (fun_node_t *) v->val; + } +} + +static void uf_plugin_add_diff_terms_vars(uf_plugin_t* uf, term_t arr) { + term_table_t* terms = uf->ctx->terms; + type_t arr_type = term_type(terms, arr); + type_t idx_type = function_type_domain(uf->ctx->types, arr_type, 0); + + term_t diff_fun; + int_hmap_pair_t *diff = int_hmap_find(&uf->type_to_diff, arr_type); + if (diff != NULL) { + diff_fun = diff->val; + } else { + type_t dom[] = {arr_type, arr_type}; + type_t diff_fun_type = function_type(uf->ctx->types, idx_type, 2, dom); + diff_fun = new_uninterpreted_term(terms, diff_fun_type); + + char fun_name_str[10]; + sprintf(fun_name_str, "diff_%i", uf->type_to_diff.nelems); + set_term_name(terms, diff_fun, clone_string(fun_name_str)); + + int_hmap_add(&uf->type_to_diff, arr_type, diff_fun); + int_hset_add(&uf->diff_funs, diff_fun); + } + + variable_db_get_variable(uf->ctx->var_db, arr); + uint32_t i; + for (i = 0; i < uf->array_terms.size; ++ i) { + term_t arr2 = uf->array_terms.data[i]; + + if (arr == arr2) + continue; + + type_t arr2_type = term_type(terms, arr2); + if (arr_type == arr2_type) { + variable_db_get_variable(uf->ctx->var_db, arr2); + variable_t v; + v = variable_db_get_variable(uf->ctx->var_db, _o_yices_eq(arr, arr2)); + if (trail_has_value(uf->ctx->trail, v)) { + assert(false); + } + + term_t args[2]; + if (arr < arr2) { + args[0] = arr; + args[1] = arr2; + } else { + args[0] = arr2; + args[1] = arr; + } + term_t diff_term = app_term(terms, diff_fun, 2, args); + term_t select_arg[] = {diff_term}; + term_t diff_select1 = app_term(terms, arr, 1, select_arg); + term_t diff_select2 = app_term(terms, arr2, 1, select_arg); + //v = variable_db_get_variable(uf->ctx->var_db, diff_term); + //v = variable_db_get_variable(uf->ctx->var_db, diff_select1); + //v = variable_db_get_variable(uf->ctx->var_db, diff_select2); + v = variable_db_get_variable(uf->ctx->var_db, _o_yices_eq(diff_select1, diff_select2)); + if (trail_has_value(uf->ctx->trail, v)) { + assert(false); + } + } + } +} + static void uf_plugin_add_to_eq_graph(uf_plugin_t* uf, term_t t, bool record) { @@ -199,18 +426,36 @@ void uf_plugin_add_to_eq_graph(uf_plugin_t* uf, term_t t, bool record) { // Add to equality graph composite_term_t* t_desc = NULL; uint32_t children_start = 0; - eq_node_id_t* eq_graph_update_node = NULL; + eq_node_id_t eq_node = eq_node_null; switch (t_kind) { case APP_TERM: t_desc = app_term_desc(terms, t); - eq_graph_add_ufun_term(&uf->eq_graph, t, t_desc->arg[0], t_desc->arity - 1, t_desc->arg + 1); - children_start = 1; + eq_node = eq_graph_add_ufun_term(&uf->eq_graph, t, t_desc->arg[0], t_desc->arity - 1, t_desc->arg + 1); + // check if the app term is an array select + if ((is_function_term(terms, t_desc->arg[0]) && + term_kind(terms, t_desc->arg[0]) == UNINTERPRETED_TERM && + !int_hset_member(&uf->diff_funs, t_desc->arg[0])) || + term_kind(terms, t_desc->arg[0]) == UPDATE_TERM) { + ivector_push(&uf->select_terms, t); + ivector_push(&uf->eq_graph_select_nodes, eq_node); + } else { + children_start = 1; + } break; case UPDATE_TERM: + //uf_plugin_add_diff_terms_vars(uf, t); t_desc = update_term_desc(terms, t); - eq_graph_update_node = eq_graph_add_ifun_term(&uf->eq_graph, t, UPDATE_TERM, t_desc->arity, t_desc->arg); - ivector_push(&uf->update_terms, t); - ivector_push(&uf->eq_graph_update_nodes, eq_graph_update_node); + eq_node = eq_graph_add_ifun_term(&uf->eq_graph, t, UPDATE_TERM, t_desc->arity, t_desc->arg); + + term_t r = app_term(terms, t, t_desc->arity - 2, t_desc->arg + 1); + variable_db_get_variable(uf->ctx->var_db, r); + //term_t r_lemma = _o_yices_eq(r, t_desc->arg[t_desc->arity - 1]); + //term_t r_lemma_args[] = {r, t_desc->arg[t_desc->arity - 1]}; + //variable_db_get_variable(uf->ctx->var_db, r_lemma); + //eq_graph_add_ifun_term(&uf->eq_graph, r_lemma, EQ_TERM, 2, r_lemma_args); + + ivector_push(&uf->array_terms, t); + ivector_push(&uf->eq_graph_array_nodes, eq_node); break; case ARITH_RDIV: t_desc = arith_rdiv_term_desc(terms, t); @@ -227,6 +472,20 @@ void uf_plugin_add_to_eq_graph(uf_plugin_t* uf, term_t t, bool record) { case EQ_TERM: t_desc = eq_term_desc(terms, t); eq_graph_add_ifun_term(&uf->eq_graph, t, EQ_TERM, 2, t_desc->arg); + // remember array terms + uint32_t i,j; + for (i = 0; i < 2; ++ i) { + if (is_function_term(terms, t_desc->arg[i]) && + term_kind(terms, t_desc->arg[i]) == UNINTERPRETED_TERM) { + //uf_plugin_add_diff_terms_vars(uf, t_desc->arg[i]); + for (j = 0; j < uf->array_terms.size; ++j) { + variable_db_get_variable(uf->ctx->var_db, + _o_yices_eq(uf->array_terms.data[j], t_desc->arg[i])); + } + ivector_push(&uf->array_terms, t_desc->arg[i]); + ivector_push(&uf->eq_graph_array_nodes, t_desc->arg[i]); + } + } break; default: assert(false); @@ -256,13 +515,14 @@ void uf_plugin_add_to_eq_graph(uf_plugin_t* uf, term_t t, bool record) { static void uf_plugin_new_term_notify(plugin_t* plugin, term_t t, trail_token_t* prop) { uf_plugin_t* uf = (uf_plugin_t*) plugin; + term_table_t* terms = uf->ctx->terms; if (ctx_trace_enabled(uf->ctx, "mcsat::new_term")) { ctx_trace_printf(uf->ctx, "uf_plugin_new_term_notify: "); ctx_trace_term(uf->ctx, t); } - term_kind_t t_kind = term_kind(uf->ctx->terms, t); + term_kind_t t_kind = term_kind(terms, t); switch (t_kind) { case ARITH_MOD: @@ -278,7 +538,486 @@ void uf_plugin_new_term_notify(plugin_t* plugin, term_t t, trail_token_t* prop) // All other is of uninterpreted sort, and we treat as variables break; } +} + +static +bool uf_plugin_array_idx_lemma(uf_plugin_t* uf, trail_token_t* prop) { + term_table_t* terms = uf->ctx->terms; + uint32_t i, k; + + // array-idx lemma + for (i = 0; i < uf->array_terms.size; ++i) { + term_t arr = uf->array_terms.data[i]; + term_kind_t t_kind = term_kind(terms, arr); + if (t_kind == UPDATE_TERM) { + composite_term_t* t_desc = update_term_desc(terms, arr); + term_t r = app_term(terms, arr, t_desc->arity - 2, t_desc->arg + 1); + term_t v = t_desc->arg[t_desc->arity - 1]; + if (!eq_graph_term_has_value(&uf->eq_graph, r) || + !eq_graph_term_has_value(&uf->eq_graph, v)) + continue; + if (!eq_graph_are_equal(&uf->eq_graph, r, v)) { + ivector_push(&uf->conflict, _o_yices_neq(r, v)); + + prop->conflict(prop); + (*uf->stats.conflicts) ++; + //ivector_copy(&uf->tmp, &uf->conflict, uf->conflict.size); + //uf_plugin_bump_terms_and_reset(uf, &uf->tmp); + statistic_avg_add(uf->stats.avg_conflict_size, uf->conflict.size); + + if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { + ctx_trace_printf(uf->ctx, ">1 Array conflict 1 BEGIN\n"); + for (k = 0; k < uf->conflict.size; ++ k) { + ctx_trace_term(uf->ctx, uf->conflict.data[k]); + } + ctx_trace_printf(uf->ctx, ">1 Array conflict 1 END\n"); + } + + return false; + } + } + } + return true; +} + +static +bool uf_plugin_array_weak_eq_i(uf_plugin_t* uf, term_t arr1, term_t arr2, term_t idx, + ivector_t* cond) { + int_hset_t path_idx_set; + init_int_hset(&path_idx_set, 0); + + fun_node_t* fn_arr1 = get_rep_i(uf_plugin_get_fun_node(uf, arr1), idx, &path_idx_set); + fun_node_t* fn_arr2 = get_rep_i(uf_plugin_get_fun_node(uf, arr2), idx, &path_idx_set); + assert(fn_arr1 != NULL); + assert(fn_arr2 != NULL); + + bool res = false; + uint32_t cond_old_size; + if (cond) { + cond_old_size = cond->size; + } + + if (fn_arr1 == fn_arr2) { + res = true; + int_hset_close(&path_idx_set); + uint32_t k; + for (k = 0; k < path_idx_set.nelems; ++ k) { + if (!eq_graph_term_has_value(&uf->eq_graph, path_idx_set.data[k])) { + res = false; + break; + } + + if (cond) { + ivector_push(cond, _o_yices_neq(idx, path_idx_set.data[k])); + } + } + } + if (!res && cond) { + ivector_shrink(cond, cond_old_size); + } + + delete_int_hset(&path_idx_set); + + return res; +} + +static +bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, term_t arr1, term_t arr2, + term_t idx, ivector_t* cond) { + assert(eq_graph_term_has_value(&uf->eq_graph, idx)); + + if (uf_plugin_array_weak_eq_i(uf, arr1, arr2, idx, cond)) + return true; + + bool res = false; + term_table_t* terms = uf->ctx->terms; + + uint32_t i, j; + int_hset_t path_idx_set; + int_hset_t seen, seen2; + + init_int_hset(&path_idx_set, 0); + init_int_hset(&seen, 0); + init_int_hset(&seen2, 0); + + for (i = 0; !res && i < uf->select_terms.size; ++ i) { + term_t t_i = uf->select_terms.data[i]; + + if (int_hset_member(&seen, t_i)) + continue; + int_hset_add(&seen, t_i); + + if (!eq_graph_term_has_value(&uf->eq_graph, t_i)) + continue; + + composite_term_t* e_i_desc = app_term_desc(terms, t_i); + + if (!eq_graph_term_has_value(&uf->eq_graph, e_i_desc->arg[1]) || + !eq_graph_are_equal(&uf->eq_graph, e_i_desc->arg[1], idx)) + continue; + + if (!uf_plugin_array_weak_eq_i(uf, arr1, e_i_desc->arg[0], idx, cond)) + continue; + + int_hset_reset(&seen2); + for (j = 0; !res && j < uf->select_terms.size; ++ j) { + term_t t_j = uf->select_terms.data[j]; + if (t_i == t_j) + continue; + + if (int_hset_member(&seen2, t_j)) + continue; + int_hset_add(&seen2, t_j); + + if (!eq_graph_term_has_value(&uf->eq_graph, t_j) || + !eq_graph_are_equal(&uf->eq_graph, t_i, t_j)) + continue; + + composite_term_t* e_j_desc = app_term_desc(terms, t_j); + + if (!eq_graph_term_has_value(&uf->eq_graph, e_j_desc->arg[1]) || + !eq_graph_are_equal(&uf->eq_graph, e_j_desc->arg[1], idx)) + continue; + + if (!uf_plugin_array_weak_eq_i(uf, arr2, e_j_desc->arg[0], idx, cond)) + continue; + else { + res = true; + if (cond) { + // Conditions of arr1 weakly-eq-i to a' is already added above + ivector_push(cond, _o_yices_eq(idx, e_i_desc->arg[1])); + ivector_push(cond, _o_yices_eq(t_i, t_j)); + ivector_push(cond, _o_yices_eq(idx, e_j_desc->arg[1])); + // Conditions of arr2 weakly-eq-i to b' is already added above + } + } + } + } + + delete_int_hset(&path_idx_set); + delete_int_hset(&seen2); + delete_int_hset(&seen); + + return res; +} + +static +bool uf_plugin_array_ext_lemma(uf_plugin_t* uf, trail_token_t* prop) { + term_table_t* terms = uf->ctx->terms; + uint32_t i, j, k; + + ivector_t cond; + int_hset_t path_idx_set; + int_hset_t seen, seen2; + + init_ivector(&cond, 0); + init_int_hset(&path_idx_set, 0); + init_int_hset(&seen, 0); + init_int_hset(&seen2, 0); + + for (i = 0; i < uf->array_terms.size; ++i) { + term_t arr1 = uf->array_terms.data[i]; + type_t arr1_type = term_type(terms, arr1); + if (!eq_graph_term_has_value(&uf->eq_graph, arr1)) + continue; + + for (j = i + 1; j < uf->array_terms.size; ++j) { + term_t arr2 = uf->array_terms.data[j]; + type_t arr2_type = term_type(terms, arr2); + if (arr1 == arr2 || arr1_type != arr2_type || + !eq_graph_term_has_value(&uf->eq_graph, arr2)) + continue; + + if (eq_graph_are_equal(&uf->eq_graph, arr1, arr2)) + continue; + + int_hset_reset(&path_idx_set); + fun_node_t* fn_arr1 = get_rep(uf_plugin_get_fun_node(uf, arr1), + &path_idx_set); + fun_node_t* fn_arr2 = get_rep(uf_plugin_get_fun_node(uf, arr2), + &path_idx_set); + + if (fn_arr1 == fn_arr2) { + int_hset_close(&path_idx_set); + bool ok = true; + for (k = 0; k < path_idx_set.nelems; ++ k) { + if (!eq_graph_term_has_value(&uf->eq_graph, path_idx_set.data[k])) { + ok = false; + break; + } + } + for (k = 0; ok && k < path_idx_set.nelems; ++ k) { + if (!uf_plugin_array_weak_congruence_i(uf, arr1, arr2, + path_idx_set.data[k], &cond)) { + ok = false; + break; + } + } + + if (ok) { + // [NOTE] we don't need Cond(P) -- condition on the path + for (k = 0; k < cond.size; ++k) { + ivector_push(&uf->conflict, cond.data[k]); + } + ivector_push(&uf->conflict, _o_yices_neq(arr1, arr2)); + + prop->conflict(prop); + (*uf->stats.conflicts) ++; + //ivector_copy(&uf->tmp, &uf->conflict, uf->conflict.size); + //uf_plugin_bump_terms_and_reset(uf, &uf->tmp); + statistic_avg_add(uf->stats.avg_conflict_size, uf->conflict.size); + + if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { + ctx_trace_printf(uf->ctx, ">2 Array conflict BEGIN 2\n"); + for (k = 0; k < uf->conflict.size; ++ k) { + ctx_trace_term(uf->ctx, uf->conflict.data[k]); + } + ctx_trace_printf(uf->ctx, ">2 Array conflict END 2\n"); + } + + goto done; + } + } + } + } + + done: + delete_ivector(&cond); + delete_int_hset(&path_idx_set); + delete_int_hset(&seen2); + delete_int_hset(&seen); + + return (uf->conflict.size == 0); +} + +static +bool uf_plugin_array_ext_diff_lemma(uf_plugin_t* uf, trail_token_t* prop) { + term_table_t* terms = uf->ctx->terms; + uint32_t i, j, k; + + // array-ext lemma + for (i = 0; i < uf->array_terms.size; ++i) { + term_t arr1 = uf->array_terms.data[i]; + if (!eq_graph_term_has_value(&uf->eq_graph, arr1)) + continue; + + type_t arr1_type = term_type(terms, arr1); + type_t idx1_type = function_type_domain(uf->ctx->types, arr1_type, 0); + term_t diff_fun; + int_hmap_pair_t *diff = int_hmap_find(&uf->type_to_diff, arr1_type); + if (diff != NULL) { + diff_fun = diff->val; + } else { + assert(false); + } + + for (j = i + 1; j < uf->array_terms.size; ++j) { + term_t arr2 = uf->array_terms.data[j]; + if (!eq_graph_term_has_value(&uf->eq_graph, arr2)) + continue; + + type_t arr2_type = term_type(terms, arr2); + if (arr1 == arr2 || arr1_type != arr2_type) + continue; + + term_t args[2]; + if (arr1 < arr2) { + args[0] = arr1; + args[1] = arr2; + } else { + args[0] = arr2; + args[1] = arr1; + } + term_t diff_term = app_term(terms, diff_fun, 2, args); + term_t select_arg[] = {diff_term}; + term_t diff_select1 = app_term(terms, arr1, 1, select_arg); + term_t diff_select2 = app_term(terms, arr2, 1, select_arg); + if (!eq_graph_term_has_value(&uf->eq_graph, diff_term) || + !eq_graph_term_has_value(&uf->eq_graph, diff_select1) || + !eq_graph_term_has_value(&uf->eq_graph, diff_select2)) + continue; + + if (!eq_graph_are_equal(&uf->eq_graph, arr1, arr2) && + eq_graph_are_equal(&uf->eq_graph, diff_select1, diff_select2)) { + + ivector_push(&uf->conflict, _o_yices_neq(arr1, arr2)); + ivector_push(&uf->conflict, _o_yices_eq(diff_select1, diff_select2)); + + prop->conflict(prop); + (*uf->stats.conflicts) ++; + //ivector_copy(&uf->tmp, &uf->conflict, uf->conflict.size); + //uf_plugin_bump_terms_and_reset(uf, &uf->tmp); + statistic_avg_add(uf->stats.avg_conflict_size, uf->conflict.size); + + if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { + ctx_trace_printf(uf->ctx, ">2 Array conflict 2 BEGIN\n"); + for (k = 0; k < uf->conflict.size; ++ k) { + ctx_trace_term(uf->ctx, uf->conflict.data[k]); + } + ctx_trace_printf(uf->ctx, ">2 Array conflict 2 END\n"); + } + + return false; + } + } + } + + return true; +} + +static +bool uf_plugin_array_read_over_write_lemma(uf_plugin_t* uf, trail_token_t* prop) { + term_table_t* terms = uf->ctx->terms; + uint32_t i, j, k; + + // clear the fun node map + // we start from a fresh weak equivalence graph + clear_fun_node_map(&uf->fun_node_map); + + int_hset_t seen; + init_int_hset(&seen, 0); + // build the graph + for (i = 0; i < uf->array_terms.size; ++ i) { + term_t t = uf->array_terms.data[i]; + if (int_hset_member(&seen, t)) + continue; + + int_hset_add(&seen, t); + + term_kind_t t_kind = term_kind(terms, t); + assert(is_function_term(terms, t)); + assert(t_kind == UNINTERPRETED_TERM || t_kind == UPDATE_TERM); + + fun_node_t *b = uf_plugin_get_fun_node(uf, t); + if (t_kind == UPDATE_TERM) { + composite_term_t* t_desc = update_term_desc(terms, t); + fun_node_t *a = uf_plugin_get_fun_node(uf, t_desc->arg[0]); + term_t ai = t_desc->arg[1]; + add_store(a, b, ai); + } + } + + int_hset_t seen2; + int_hset_t path_idx_set; + init_int_hset(&seen2, 0); + init_int_hset(&path_idx_set, 0); + int_hset_reset(&seen); + + // generalized read-over-write lemma + for (i = 0; i < uf->select_terms.size; ++ i) { + term_t t_i = uf->select_terms.data[i]; + + if (int_hset_member(&seen, t_i)) + continue; + int_hset_add(&seen, t_i); + + if (!eq_graph_term_has_value(&uf->eq_graph, t_i)) + continue; + + composite_term_t* e_i_desc = app_term_desc(terms, t_i); + + if (!eq_graph_term_has_value(&uf->eq_graph, e_i_desc->arg[1])) + continue; + + int_hset_reset(&seen2); + for (j = 0; j < uf->select_terms.size; ++ j) { + term_t t_j = uf->select_terms.data[j]; + if (t_i == t_j) + continue; + + if (int_hset_member(&seen2, t_j)) + continue; + int_hset_add(&seen2, t_j); + + if (!eq_graph_term_has_value(&uf->eq_graph, t_j)) + continue; + + composite_term_t* e_j_desc = app_term_desc(terms, t_j); + + if (!eq_graph_term_has_value(&uf->eq_graph, e_j_desc->arg[1])) + continue; + + if (!eq_graph_are_equal(&uf->eq_graph, e_i_desc->arg[1], e_j_desc->arg[1]) || + eq_graph_are_equal(&uf->eq_graph, t_i, t_j)) + continue; + + int_hset_reset(&path_idx_set); + fun_node_t* fn_i = get_rep_i(uf_plugin_get_fun_node(uf, e_i_desc->arg[0]), + e_i_desc->arg[1], &path_idx_set); + fun_node_t* fn_j = get_rep_i(uf_plugin_get_fun_node(uf, e_j_desc->arg[0]), + e_i_desc->arg[1], &path_idx_set); + assert(fn_i != NULL); + assert(fn_j != NULL); + + if (fn_i == fn_j) { + // found conflict + assert(uf->conflict.size == 0); + if (e_i_desc->arg[1] != e_j_desc->arg[1]) + ivector_push(&uf->conflict, _o_yices_eq(e_i_desc->arg[1], e_j_desc->arg[1])); + ivector_push(&uf->conflict, _o_yices_neq(t_i, t_j)); + + int_hset_close(&path_idx_set); + bool ok = true; + uint32_t k; + for (k = 0; k < path_idx_set.nelems; ++ k) { + if (path_idx_set.data[k] != e_i_desc->arg[1] && + path_idx_set.data[k] != e_j_desc->arg[1]) { + if (!eq_graph_term_has_value(&uf->eq_graph, path_idx_set.data[k])) { + ivector_reset(&uf->conflict); + ok = false; + break; + } + + ivector_push(&uf->conflict, _o_yices_not(_o_yices_eq(e_i_desc->arg[1], path_idx_set.data[k]))); + } + } + + if (!ok) + ivector_reset(&uf->conflict); + + if (uf->conflict.size > 0) { + // Report conflict + prop->conflict(prop); + (*uf->stats.conflicts) ++; + //ivector_copy(&uf->tmp, &uf->conflict, uf->conflict.size); + //uf_plugin_bump_terms_and_reset(uf, &uf->tmp); + statistic_avg_add(uf->stats.avg_conflict_size, uf->conflict.size); + + if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { + ctx_trace_printf(uf->ctx, ">3 Array conflict BEGIN 3\n"); + for (k = 0; k < uf->conflict.size; ++ k) { + ctx_trace_term(uf->ctx, uf->conflict.data[k]); + } + ctx_trace_printf(uf->ctx, ">3 Array conflict END 3\n"); + } + + goto done; + } + } + } + } + + done: + delete_int_hset(&path_idx_set); + delete_int_hset(&seen2); + delete_int_hset(&seen); + + return !(uf->conflict.size > 0); +} + +static +void uf_plugin_array_propagations(uf_plugin_t* uf, trail_token_t* prop) { + term_table_t* terms = uf->ctx->terms; + uint32_t i, j, k; + + if (!uf_plugin_array_idx_lemma(uf, prop)) + return; + + if (!uf_plugin_array_read_over_write_lemma(uf, prop)) + return; + + uf_plugin_array_ext_lemma(uf, prop); } static @@ -308,7 +1047,10 @@ void uf_plugin_propagate(plugin_t* plugin, trail_token_t* prop) { eq_graph_get_conflict(&uf->eq_graph, &uf->conflict, NULL, &uf->tmp); uf_plugin_bump_terms_and_reset(uf, &uf->tmp); statistic_avg_add(uf->stats.avg_conflict_size, uf->conflict.size); + return; } + + uf_plugin_array_propagations(uf, prop); } static @@ -318,8 +1060,10 @@ void uf_plugin_push(plugin_t* plugin) { // Push the int variable values scope_holder_push(&uf->scope, &uf->eq_graph_addition_trail.size, - &uf->update_terms.size, - &uf->eq_graph_update_nodes.size, + &uf->array_terms.size, + &uf->eq_graph_array_nodes.size, + &uf->select_terms.size, + &uf->eq_graph_select_nodes.size, NULL); eq_graph_push(&uf->eq_graph); @@ -330,14 +1074,20 @@ void uf_plugin_pop(plugin_t* plugin) { uf_plugin_t* uf = (uf_plugin_t*) plugin; uint32_t old_eq_graph_addition_trail_size; - uint32_t t1, t2; + uint32_t t1, t2, t3, t4; // Pop the int variable values scope_holder_pop(&uf->scope, &old_eq_graph_addition_trail_size, &t1, &t2, + &t3, &t4, NULL); + ivector_shrink(&uf->array_terms, t1); + ivector_shrink(&uf->eq_graph_array_nodes, t2); + ivector_shrink(&uf->select_terms, t3); + ivector_shrink(&uf->eq_graph_select_nodes, t4); + eq_graph_pop(&uf->eq_graph); // Re-add all the terms to eq graph @@ -598,6 +1348,7 @@ type_t get_function_application_type(term_table_t* terms, term_kind_t app_kind, type_t ints = int_type(types); switch (app_kind) { + case UPDATE_TERM: case APP_TERM: return term_type(terms, f); case ARITH_RDIV: From bfb096a05a45bf93cfc8d600d55adc6487701ce2 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Fri, 13 Jan 2023 23:00:10 -0800 Subject: [PATCH 027/182] progress: fixes in weak-eq graph + array lemmas --- src/mcsat/eq/equality_graph.c | 4 +- src/mcsat/uf/uf_plugin.c | 135 +++++++++++++++++++++++++--------- 2 files changed, 103 insertions(+), 36 deletions(-) diff --git a/src/mcsat/eq/equality_graph.c b/src/mcsat/eq/equality_graph.c index eb4fa1bb5..772c44f5d 100644 --- a/src/mcsat/eq/equality_graph.c +++ b/src/mcsat/eq/equality_graph.c @@ -766,11 +766,11 @@ bool eq_graph_term_is_rep(const eq_graph_t* eq, term_t t) { term_t eq_graph_term_get_rep(const eq_graph_t* eq, term_t t) { eq_node_id_t id = eq_graph_term_id(eq, t); const eq_node_t* n = eq_graph_get_node_const(eq, id); + assert(n != NULL); const eq_node_t* n_rep = eq_graph_get_node_const(eq, n->find); - return eq->terms_list.data[n_rep->index]; + return (n_rep->type == EQ_NODE_TERM) ? eq->terms_list.data[n_rep->index] : t; } - eq_node_id_t eq_graph_value_id(const eq_graph_t* eq, const mcsat_value_t* v) { value_hmap_pair_t* find = value_hmap_find(&eq->value_to_id, v); assert(find != NULL); diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index bc1037906..984b93b6e 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -135,7 +135,7 @@ static fun_node_t* get_rep_i(fun_node_t* n, term_t idx, int_hset_t* path_idx_set return n; if (n->pi != idx) { // record indices - if (path_idx_set != NULL) + if (path_idx_set) int_hset_add(path_idx_set, n->pi); return get_rep_i(n->p, idx, path_idx_set); } @@ -152,7 +152,7 @@ static void make_rep_i(fun_node_t* n) { make_rep_i(n); } else { make_rep_i(n->s); - n->s->s = n; + n->s->s = n->s; n->s = NULL; } } @@ -174,7 +174,7 @@ static void add_secondary(int_array_hset_t* idx_set, fun_node_t* a, fun_node_t* bool rm_idx; rm_idx = false; - if (int_array_hset_get(idx_set, idx_set->size, &a->pi) == NULL && + if (int_array_hset_find(idx_set, idx_set->size, &a->pi) == NULL && get_rep_i(a, a->pi, NULL) != b) { make_rep_i(a); a->s = b; @@ -192,6 +192,8 @@ static void add_store(fun_node_t* a, fun_node_t* b, term_t idx) { if (get_rep(a, NULL) == b) { int_array_hset_t s; init_int_array_hset(&s, 0); + int_array_hset_get(&s, s.size, &idx); + assert(int_array_hset_find(&s, s.size, &idx) != NULL); add_secondary(&s, a, b); delete_int_array_hset(&s); } else { @@ -316,7 +318,9 @@ void uf_plugin_process_eq_graph_propagations(uf_plugin_t* uf, trail_token_t* pro if (t_var != variable_null) { // Only set values of uninterpreted and boolean type type_kind_t t_type_kind = term_type_kind(uf->ctx->terms, t); - if (t_type_kind == UNINTERPRETED_TYPE || t_type_kind == BOOL_TYPE) { + if (t_type_kind == UNINTERPRETED_TYPE || + t_type_kind == FUNCTION_TYPE || + t_type_kind == BOOL_TYPE) { const mcsat_value_t* v = eq_graph_get_propagated_term_value(&uf->eq_graph, t); if (!trail_has_value(uf->ctx->trail, t_var)) { if (ctx_trace_enabled(uf->ctx, "mcsat::eq::propagate")) { @@ -447,8 +451,8 @@ void uf_plugin_add_to_eq_graph(uf_plugin_t* uf, term_t t, bool record) { t_desc = update_term_desc(terms, t); eq_node = eq_graph_add_ifun_term(&uf->eq_graph, t, UPDATE_TERM, t_desc->arity, t_desc->arg); - term_t r = app_term(terms, t, t_desc->arity - 2, t_desc->arg + 1); - variable_db_get_variable(uf->ctx->var_db, r); + //term_t r = app_term(terms, t, t_desc->arity - 2, t_desc->arg + 1); + //variable_db_get_variable(uf->ctx->var_db, r); //term_t r_lemma = _o_yices_eq(r, t_desc->arg[t_desc->arity - 1]); //term_t r_lemma_args[] = {r, t_desc->arg[t_desc->arity - 1]}; //variable_db_get_variable(uf->ctx->var_db, r_lemma); @@ -478,10 +482,10 @@ void uf_plugin_add_to_eq_graph(uf_plugin_t* uf, term_t t, bool record) { if (is_function_term(terms, t_desc->arg[i]) && term_kind(terms, t_desc->arg[i]) == UNINTERPRETED_TERM) { //uf_plugin_add_diff_terms_vars(uf, t_desc->arg[i]); - for (j = 0; j < uf->array_terms.size; ++j) { - variable_db_get_variable(uf->ctx->var_db, - _o_yices_eq(uf->array_terms.data[j], t_desc->arg[i])); - } + //for (j = 0; j < uf->array_terms.size; ++j) { + //variable_db_get_variable(uf->ctx->var_db, + // _o_yices_eq(uf->array_terms.data[j], t_desc->arg[i])); + //} ivector_push(&uf->array_terms, t_desc->arg[i]); ivector_push(&uf->eq_graph_array_nodes, t_desc->arg[i]); } @@ -538,6 +542,17 @@ void uf_plugin_new_term_notify(plugin_t* plugin, term_t t, trail_token_t* prop) // All other is of uninterpreted sort, and we treat as variables break; } + + if (t_kind == UPDATE_TERM) { + composite_term_t* t_desc = update_term_desc(terms, t); + term_t r = app_term(terms, t, t_desc->arity - 2, t_desc->arg + 1); + variable_db_get_variable(uf->ctx->var_db, r); + term_t r_lemma = _o_yices_eq(r, t_desc->arg[t_desc->arity - 1]); + //term_t r_lemma_args[] = {r, t_desc->arg[t_desc->arity - 1]}; + //variable_db_get_variable(uf->ctx->var_db, r_lemma); + //eq_graph_add_ifun_term(&uf->eq_graph, r_lemma, EQ_TERM, 2, r_lemma_args); + prop->definition_lemma(prop, r_lemma, t); + } } static @@ -582,7 +597,7 @@ bool uf_plugin_array_idx_lemma(uf_plugin_t* uf, trail_token_t* prop) { static bool uf_plugin_array_weak_eq_i(uf_plugin_t* uf, term_t arr1, term_t arr2, term_t idx, - ivector_t* cond) { + ivector_t* indices) { int_hset_t path_idx_set; init_int_hset(&path_idx_set, 0); @@ -592,9 +607,9 @@ bool uf_plugin_array_weak_eq_i(uf_plugin_t* uf, term_t arr1, term_t arr2, term_t assert(fn_arr2 != NULL); bool res = false; - uint32_t cond_old_size; - if (cond) { - cond_old_size = cond->size; + uint32_t old_size; + if (indices) { + old_size = indices->size; } if (fn_arr1 == fn_arr2) { @@ -607,14 +622,14 @@ bool uf_plugin_array_weak_eq_i(uf_plugin_t* uf, term_t arr1, term_t arr2, term_t break; } - if (cond) { - ivector_push(cond, _o_yices_neq(idx, path_idx_set.data[k])); + if (indices) { + ivector_push(indices, path_idx_set.data[k]); } } } - if (!res && cond) { - ivector_shrink(cond, cond_old_size); + if (!res && indices) { + ivector_shrink(indices, old_size); } delete_int_hset(&path_idx_set); @@ -627,17 +642,31 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, term_t arr1, term_t arr2 term_t idx, ivector_t* cond) { assert(eq_graph_term_has_value(&uf->eq_graph, idx)); - if (uf_plugin_array_weak_eq_i(uf, arr1, arr2, idx, cond)) + ivector_t indices; + uint32_t i, j, k; + uint32_t cond_old_size; + if (cond) { + cond_old_size = cond->size; + } + + init_ivector(&indices, 0); + + if (uf_plugin_array_weak_eq_i(uf, arr1, arr2, idx, &indices)) { + for (k =0; k < indices.size; ++k) { + if (eq_graph_are_equal(&uf->eq_graph, idx, indices.data[k])) + return false; + } + for (k =0; k < indices.size; ++k) { + ivector_push(cond, _o_yices_neq(idx, indices.data[k])); + } return true; + } bool res = false; term_table_t* terms = uf->ctx->terms; - uint32_t i, j; - int_hset_t path_idx_set; int_hset_t seen, seen2; - init_int_hset(&path_idx_set, 0); init_int_hset(&seen, 0); init_int_hset(&seen2, 0); @@ -657,7 +686,7 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, term_t arr1, term_t arr2 !eq_graph_are_equal(&uf->eq_graph, e_i_desc->arg[1], idx)) continue; - if (!uf_plugin_array_weak_eq_i(uf, arr1, e_i_desc->arg[0], idx, cond)) + if (!uf_plugin_array_weak_eq_i(uf, arr1, e_i_desc->arg[0], idx, &indices)) continue; int_hset_reset(&seen2); @@ -680,22 +709,40 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, term_t arr1, term_t arr2 !eq_graph_are_equal(&uf->eq_graph, e_j_desc->arg[1], idx)) continue; - if (!uf_plugin_array_weak_eq_i(uf, arr2, e_j_desc->arg[0], idx, cond)) + if (!uf_plugin_array_weak_eq_i(uf, arr2, e_j_desc->arg[0], idx, &indices)) continue; else { res = true; if (cond) { - // Conditions of arr1 weakly-eq-i to a' is already added above - ivector_push(cond, _o_yices_eq(idx, e_i_desc->arg[1])); - ivector_push(cond, _o_yices_eq(t_i, t_j)); - ivector_push(cond, _o_yices_eq(idx, e_j_desc->arg[1])); - // Conditions of arr2 weakly-eq-i to b' is already added above + // Conditions of arr1 weakly-eq-i to a and arr2 weakly-eq-i to b' + for (k = 0; k < indices.size; ++k) { + if (eq_graph_are_equal(&uf->eq_graph, indices.data[k], idx) || + eq_graph_are_equal(&uf->eq_graph, indices.data[k], e_i_desc->arg[1]) || + eq_graph_are_equal(&uf->eq_graph, indices.data[k], e_j_desc->arg[1])) { + res = false; + break; + } + } + + if (res) { + for (k =0; k < indices.size; ++k) { + ivector_push(cond, _o_yices_neq(idx, indices.data[k])); + } + ivector_push(cond, _o_yices_eq(idx, e_i_desc->arg[1])); + ivector_push(cond, _o_yices_eq(t_i, t_j)); + ivector_push(cond, _o_yices_eq(idx, e_j_desc->arg[1])); + } } } } } - delete_int_hset(&path_idx_set); + if (!res && cond) { + ivector_shrink(cond, cond_old_size); + } else { + ivector_remove_duplicates(cond); + } + delete_int_hset(&seen2); delete_int_hset(&seen); @@ -718,15 +765,19 @@ bool uf_plugin_array_ext_lemma(uf_plugin_t* uf, trail_token_t* prop) { for (i = 0; i < uf->array_terms.size; ++i) { term_t arr1 = uf->array_terms.data[i]; + term_t arr1_rep = eq_graph_term_get_rep(&uf->eq_graph, arr1); type_t arr1_type = term_type(terms, arr1); - if (!eq_graph_term_has_value(&uf->eq_graph, arr1)) + if (!eq_graph_term_has_value(&uf->eq_graph, arr1) || + !eq_graph_term_has_value(&uf->eq_graph, arr1_rep)) continue; for (j = i + 1; j < uf->array_terms.size; ++j) { term_t arr2 = uf->array_terms.data[j]; + term_t arr2_rep = eq_graph_term_get_rep(&uf->eq_graph, arr2); type_t arr2_type = term_type(terms, arr2); if (arr1 == arr2 || arr1_type != arr2_type || - !eq_graph_term_has_value(&uf->eq_graph, arr2)) + !eq_graph_term_has_value(&uf->eq_graph, arr2) || + !eq_graph_term_has_value(&uf->eq_graph, arr2_rep)) continue; if (eq_graph_are_equal(&uf->eq_graph, arr1, arr2)) @@ -757,6 +808,16 @@ bool uf_plugin_array_ext_lemma(uf_plugin_t* uf, trail_token_t* prop) { if (ok) { // [NOTE] we don't need Cond(P) -- condition on the path + if (arr1 != arr1_rep) { + ctx_trace_term(uf->ctx, arr1); + ctx_trace_term(uf->ctx, arr1_rep); + //ivector_push(&uf->conflict, _o_yices_eq(arr1, arr1_rep)); + } + if (arr2 != arr2_rep) { + ctx_trace_term(uf->ctx, arr2); + ctx_trace_term(uf->ctx, arr2_rep); + //ivector_push(&uf->conflict, _o_yices_eq(arr2, arr2_rep)); + } for (k = 0; k < cond.size; ++k) { ivector_push(&uf->conflict, cond.data[k]); } @@ -963,13 +1024,19 @@ bool uf_plugin_array_read_over_write_lemma(uf_plugin_t* uf, trail_token_t* prop) for (k = 0; k < path_idx_set.nelems; ++ k) { if (path_idx_set.data[k] != e_i_desc->arg[1] && path_idx_set.data[k] != e_j_desc->arg[1]) { - if (!eq_graph_term_has_value(&uf->eq_graph, path_idx_set.data[k])) { + if (!eq_graph_term_has_value(&uf->eq_graph, path_idx_set.data[k]) || + eq_graph_are_equal(&uf->eq_graph, + e_i_desc->arg[1], path_idx_set.data[k])) { ivector_reset(&uf->conflict); ok = false; break; } - ivector_push(&uf->conflict, _o_yices_not(_o_yices_eq(e_i_desc->arg[1], path_idx_set.data[k]))); + ivector_push(&uf->conflict, _o_yices_neq(e_i_desc->arg[1], path_idx_set.data[k])); + } else { + ivector_reset(&uf->conflict); + ok = false; + break; } } From 7a18a656c03ae25288891004668a599fc5a200e3 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Fri, 13 Jan 2023 23:47:52 -0800 Subject: [PATCH 028/182] check array lemmas only when array terms are present --- src/mcsat/uf/uf_plugin.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index 984b93b6e..011ff38f9 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -1117,7 +1117,9 @@ void uf_plugin_propagate(plugin_t* plugin, trail_token_t* prop) { return; } - uf_plugin_array_propagations(uf, prop); + if (uf->array_terms.size > 0) { + uf_plugin_array_propagations(uf, prop); + } } static From 571e703e3bc946c8c2506880c3da5ddf0a1e3659 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Wed, 25 Jan 2023 02:08:04 -0800 Subject: [PATCH 029/182] allow function decisions in the uf plugin --- src/mcsat/solver.c | 3 +- src/mcsat/uf/uf_plugin.c | 83 +++++++++++++++++++++++++++++----------- 2 files changed, 62 insertions(+), 24 deletions(-) diff --git a/src/mcsat/solver.c b/src/mcsat/solver.c index 8aba4bbcc..2ffd9a6af 100644 --- a/src/mcsat/solver.c +++ b/src/mcsat/solver.c @@ -2786,7 +2786,8 @@ void mcsat_build_model(mcsat_solver_t* mcsat, model_t* model) { term_t x_term = variable_db_get_term(mcsat->var_db, x); term_kind_t x_kind = term_kind(mcsat->terms, x_term); - if (x_kind == UNINTERPRETED_TERM) { + if (x_kind == UNINTERPRETED_TERM && + term_type_kind(mcsat->terms, x_term) != FUNCTION_TYPE) { if (trace_enabled(mcsat->ctx->trace, "mcsat")) { mcsat_trace_printf(mcsat->ctx->trace, "var = "); diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index 7beb0edad..4fc7ab4f0 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -33,6 +33,8 @@ #include "terms/terms.h" #include "inttypes.h" +#define DECIDE_FUNCTION_VALUE_START UINT32_MAX/64 + typedef struct { /** The plugin interface */ @@ -56,6 +58,9 @@ typedef struct { /** Stuff added to eq_graph */ ivector_t eq_graph_addition_trail; + /** Function alues to types map */ + ptr_hmap_t fun_val_type_map; + /** Tmp vector */ int_mset_t tmp; @@ -104,6 +109,7 @@ void uf_plugin_construct(plugin_t* plugin, plugin_context_t* ctx) { scope_holder_construct(&uf->scope); init_ivector(&uf->conflict, 0); + init_ptr_hmap(&uf->fun_val_type_map, 0); int_mset_construct(&uf->tmp, NULL_TERM); // Terms @@ -115,9 +121,11 @@ void uf_plugin_construct(plugin_t* plugin, plugin_context_t* ctx) { // Types ctx->request_term_notification_by_type(ctx, UNINTERPRETED_TYPE); + ctx->request_term_notification_by_type(ctx, FUNCTION_TYPE); // Decisions ctx->request_decision_calls(ctx, UNINTERPRETED_TYPE); + ctx->request_decision_calls(ctx, FUNCTION_TYPE); // Equality graph eq_graph_construct(&uf->eq_graph, ctx, "uf"); @@ -132,6 +140,7 @@ void uf_plugin_destruct(plugin_t* plugin) { uf_plugin_t* uf = (uf_plugin_t*) plugin; scope_holder_destruct(&uf->scope); delete_ivector(&uf->conflict); + delete_ptr_hmap(&uf->fun_val_type_map); int_mset_destruct(&uf->tmp); eq_graph_destruct(&uf->eq_graph); delete_ivector(&uf->eq_graph_addition_trail); @@ -153,7 +162,9 @@ void uf_plugin_process_eq_graph_propagations(uf_plugin_t* uf, trail_token_t* pro if (t_var != variable_null) { // Only set values of uninterpreted and boolean type type_kind_t t_type_kind = term_type_kind(uf->ctx->terms, t); - if (t_type_kind == UNINTERPRETED_TYPE || t_type_kind == BOOL_TYPE) { + if (t_type_kind == FUNCTION_TYPE || + t_type_kind == UNINTERPRETED_TYPE || + t_type_kind == BOOL_TYPE) { const mcsat_value_t* v = eq_graph_get_propagated_term_value(&uf->eq_graph, t); if (!trail_has_value(uf->ctx->trail, t_var)) { if (ctx_trace_enabled(uf->ctx, "mcsat::eq::propagate")) { @@ -190,7 +201,7 @@ void uf_plugin_add_to_eq_graph(uf_plugin_t* uf, term_t t, bool record) { case APP_TERM: t_desc = app_term_desc(terms, t); eq_graph_add_ufun_term(&uf->eq_graph, t, t_desc->arg[0], t_desc->arity - 1, t_desc->arg + 1); - children_start = 1; + //children_start = 1; break; case ARITH_RDIV: t_desc = arith_rdiv_term_desc(terms, t); @@ -372,34 +383,60 @@ void uf_plugin_decide(plugin_t* plugin, variable_t x, trail_token_t* decide, boo ctx_trace_printf(uf->ctx, "\n"); } + term_table_t *terms = uf->ctx->terms; + type_t x_type = term_type(terms, x_term); int32_t picked_value = 0; if (!cache_ok) { // Pick smallest value not in forbidden list ptr_array_sort2(forbidden.data, forbidden.size, NULL, value_cmp); - if (ctx_trace_enabled(uf->ctx, "uf_plugin::decide")) { - ctx_trace_printf(uf->ctx, "picking !="); - uint32_t i; + uint32_t i; + // function types have different value picking strategy + if (term_type_kind(terms, x_term) != FUNCTION_TYPE) { for (i = 0; i < forbidden.size; ++ i) { const mcsat_value_t* v = forbidden.data[i]; - ctx_trace_printf(uf->ctx, " "); - mcsat_value_print(v, ctx_trace_out(uf->ctx)); + assert(v->type == VALUE_RATIONAL); + int32_t v_int = 0; + bool ok = q_get32((rational_t*)&v->q, &v_int); + (void) ok; + assert(ok); + if (picked_value < v_int) { + // found a gap + break; + } else { + picked_value = v_int + 1; + } } - ctx_trace_printf(uf->ctx, "\n"); - } - uint32_t i; - picked_value = 0; - for (i = 0; i < forbidden.size; ++ i) { - const mcsat_value_t* v = forbidden.data[i]; - assert(v->type == VALUE_RATIONAL); - int32_t v_int = 0; - bool ok = q_get32((rational_t*)&v->q, &v_int); - (void) ok; - assert(ok); - if (picked_value < v_int) { - // Found a gap, pick - break; - } else { - picked_value = v_int + 1; + // DECIDE_FUNCTION_VALUE_START is the starting point for function values + assert(picked_value < DECIDE_FUNCTION_VALUE_START); + } else { + if (forbidden.size > 0) { + uint32_t max_forbidden_val = 0; + const mcsat_value_t* v = forbidden.data[forbidden.size - 1]; + assert(v->type == VALUE_RATIONAL); + bool ok = q_get32((rational_t*)&v->q, &max_forbidden_val); + (void) ok; + assert(ok); + picked_value = max_forbidden_val + 1; + } + if (picked_value < DECIDE_FUNCTION_VALUE_START) { + // starting point for function values + picked_value = DECIDE_FUNCTION_VALUE_START; + } + + while (true) { + ptr_hmap_pair_t *picked_val_type = ptr_hmap_find(&uf->fun_val_type_map, picked_value); + // if not in the map, pick it and safe in the map + if (picked_val_type == NULL) { + picked_val_type = ptr_hmap_get(&uf->fun_val_type_map, picked_value); + picked_val_type->val = x_type; + break; + } + // if in the map and the type agrees then pick the value + if (picked_val_type->val == x_type) { + break; + } + // picked value not good, increment and check in the loop + picked_value += 1; } } } else { From 365f7c4417004bfa7e95f00dbc35491b08894720 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Wed, 25 Jan 2023 11:52:26 -0800 Subject: [PATCH 030/182] minor --- src/mcsat/uf/uf_plugin.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index 011ff38f9..5c5866189 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -477,7 +477,7 @@ void uf_plugin_add_to_eq_graph(uf_plugin_t* uf, term_t t, bool record) { t_desc = eq_term_desc(terms, t); eq_graph_add_ifun_term(&uf->eq_graph, t, EQ_TERM, 2, t_desc->arg); // remember array terms - uint32_t i,j; + uint32_t i; for (i = 0; i < 2; ++ i) { if (is_function_term(terms, t_desc->arg[i]) && term_kind(terms, t_desc->arg[i]) == UNINTERPRETED_TERM) { @@ -864,7 +864,7 @@ bool uf_plugin_array_ext_diff_lemma(uf_plugin_t* uf, trail_token_t* prop) { continue; type_t arr1_type = term_type(terms, arr1); - type_t idx1_type = function_type_domain(uf->ctx->types, arr1_type, 0); + //type_t idx1_type = function_type_domain(uf->ctx->types, arr1_type, 0); term_t diff_fun; int_hmap_pair_t *diff = int_hmap_find(&uf->type_to_diff, arr1_type); if (diff != NULL) { @@ -930,7 +930,7 @@ bool uf_plugin_array_ext_diff_lemma(uf_plugin_t* uf, trail_token_t* prop) { static bool uf_plugin_array_read_over_write_lemma(uf_plugin_t* uf, trail_token_t* prop) { term_table_t* terms = uf->ctx->terms; - uint32_t i, j, k; + uint32_t i, j;//, k; // clear the fun node map // we start from a fresh weak equivalence graph @@ -1075,8 +1075,6 @@ bool uf_plugin_array_read_over_write_lemma(uf_plugin_t* uf, trail_token_t* prop) static void uf_plugin_array_propagations(uf_plugin_t* uf, trail_token_t* prop) { - term_table_t* terms = uf->ctx->terms; - uint32_t i, j, k; if (!uf_plugin_array_idx_lemma(uf, prop)) return; From b68564b102573896152f37a8358b21acad94329a Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Wed, 25 Jan 2023 12:14:14 -0800 Subject: [PATCH 031/182] minor --- src/mcsat/uf/uf_plugin.c | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index 45ecede63..5a4c951f8 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -442,14 +442,8 @@ void uf_plugin_add_to_eq_graph(uf_plugin_t* uf, term_t t, bool record) { case APP_TERM: t_desc = app_term_desc(terms, t); eq_node = eq_graph_add_ufun_term(&uf->eq_graph, t, t_desc->arg[0], t_desc->arity - 1, t_desc->arg + 1); - // check if the app term is an array select - //if ((is_function_term(terms, t_desc->arg[0]) && - // term_kind(terms, t_desc->arg[0]) == UNINTERPRETED_TERM && - // !int_hset_member(&uf->diff_funs, t_desc->arg[0])) || - // term_kind(terms, t_desc->arg[0]) == UPDATE_TERM) { - ivector_push(&uf->select_terms, t); - ivector_push(&uf->eq_graph_select_nodes, eq_node); - //} + ivector_push(&uf->select_terms, t); + ivector_push(&uf->eq_graph_select_nodes, eq_node); break; case UPDATE_TERM: //uf_plugin_add_diff_terms_vars(uf, t); @@ -466,7 +460,6 @@ void uf_plugin_add_to_eq_graph(uf_plugin_t* uf, term_t t, bool record) { ivector_push(&uf->array_terms, t); ivector_push(&uf->eq_graph_array_nodes, eq_node); eq_graph_add_ufun_term(&uf->eq_graph, t, t_desc->arg[0], t_desc->arity - 1, t_desc->arg + 1); - //children_start = 1; break; case ARITH_RDIV: t_desc = arith_rdiv_term_desc(terms, t); From faa291574a8b3a99c0f8ca9b33d62691aef253ff Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Wed, 25 Jan 2023 13:08:55 -0800 Subject: [PATCH 032/182] minor --- src/mcsat/uf/uf_plugin.c | 46 +++++++++++++++------------------------- 1 file changed, 17 insertions(+), 29 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index 5a4c951f8..2634bf45a 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -69,15 +69,9 @@ typedef struct { /** Array terms */ ivector_t array_terms; - /** Array eq_graph nodes */ - ivector_t eq_graph_array_nodes; - /** Select terms */ ivector_t select_terms; - /** Select eq_graph nodes */ - ivector_t eq_graph_select_nodes; - /** Map from types to diff symbols */ int_hmap_t type_to_diff; @@ -277,9 +271,7 @@ void uf_plugin_construct(plugin_t* plugin, plugin_context_t* ctx) { init_ivector(&uf->eq_graph_addition_trail, 0); init_ivector(&uf->array_terms, 0); - init_ivector(&uf->eq_graph_array_nodes, 0); init_ivector(&uf->select_terms, 0); - init_ivector(&uf->eq_graph_select_nodes, 0); init_int_hmap(&uf->type_to_diff, 0); init_int_hset(&uf->diff_funs, 0); @@ -299,9 +291,7 @@ void uf_plugin_destruct(plugin_t* plugin) { eq_graph_destruct(&uf->eq_graph); delete_ivector(&uf->eq_graph_addition_trail); delete_ivector(&uf->array_terms); - delete_ivector(&uf->eq_graph_array_nodes); delete_ivector(&uf->select_terms); - delete_ivector(&uf->eq_graph_select_nodes); delete_int_hmap(&uf->type_to_diff); delete_int_hset(&uf->diff_funs); @@ -443,7 +433,6 @@ void uf_plugin_add_to_eq_graph(uf_plugin_t* uf, term_t t, bool record) { t_desc = app_term_desc(terms, t); eq_node = eq_graph_add_ufun_term(&uf->eq_graph, t, t_desc->arg[0], t_desc->arity - 1, t_desc->arg + 1); ivector_push(&uf->select_terms, t); - ivector_push(&uf->eq_graph_select_nodes, eq_node); break; case UPDATE_TERM: //uf_plugin_add_diff_terms_vars(uf, t); @@ -458,7 +447,6 @@ void uf_plugin_add_to_eq_graph(uf_plugin_t* uf, term_t t, bool record) { //eq_graph_add_ifun_term(&uf->eq_graph, r_lemma, EQ_TERM, 2, r_lemma_args); ivector_push(&uf->array_terms, t); - ivector_push(&uf->eq_graph_array_nodes, eq_node); eq_graph_add_ufun_term(&uf->eq_graph, t, t_desc->arg[0], t_desc->arity - 1, t_desc->arg + 1); break; case ARITH_RDIV: @@ -487,7 +475,6 @@ void uf_plugin_add_to_eq_graph(uf_plugin_t* uf, term_t t, bool record) { // _o_yices_eq(uf->array_terms.data[j], t_desc->arg[i])); //} ivector_push(&uf->array_terms, t_desc->arg[i]); - ivector_push(&uf->eq_graph_array_nodes, t_desc->arg[i]); } } break; @@ -931,6 +918,7 @@ static bool uf_plugin_array_read_over_write_lemma(uf_plugin_t* uf, trail_token_t* prop) { term_table_t* terms = uf->ctx->terms; uint32_t i, j;//, k; + bool updates_present = false; // clear the fun node map // we start from a fresh weak equivalence graph @@ -956,9 +944,14 @@ bool uf_plugin_array_read_over_write_lemma(uf_plugin_t* uf, trail_token_t* prop) fun_node_t *a = uf_plugin_get_fun_node(uf, t_desc->arg[0]); term_t ai = t_desc->arg[1]; add_store(a, b, ai); + updates_present = true; } } + if (!updates_present) { + return true; + } + int_hset_t seen2; int_hset_t path_idx_set; init_int_hset(&seen2, 0); @@ -1076,8 +1069,8 @@ bool uf_plugin_array_read_over_write_lemma(uf_plugin_t* uf, trail_token_t* prop) static void uf_plugin_array_propagations(uf_plugin_t* uf, trail_token_t* prop) { - if (!uf_plugin_array_idx_lemma(uf, prop)) - return; + //if (!uf_plugin_array_idx_lemma(uf, prop)) + // return; if (!uf_plugin_array_read_over_write_lemma(uf, prop)) return; @@ -1126,12 +1119,10 @@ void uf_plugin_push(plugin_t* plugin) { // Push the int variable values scope_holder_push(&uf->scope, - &uf->eq_graph_addition_trail.size, - &uf->array_terms.size, - &uf->eq_graph_array_nodes.size, - &uf->select_terms.size, - &uf->eq_graph_select_nodes.size, - NULL); + &uf->eq_graph_addition_trail.size, + &uf->array_terms.size, + &uf->select_terms.size, + NULL); eq_graph_push(&uf->eq_graph); } @@ -1141,19 +1132,16 @@ void uf_plugin_pop(plugin_t* plugin) { uf_plugin_t* uf = (uf_plugin_t*) plugin; uint32_t old_eq_graph_addition_trail_size; - uint32_t t1, t2, t3, t4; + uint32_t t1, t2; // Pop the int variable values scope_holder_pop(&uf->scope, - &old_eq_graph_addition_trail_size, - &t1, &t2, - &t3, &t4, - NULL); + &old_eq_graph_addition_trail_size, + &t1, &t2, + NULL); ivector_shrink(&uf->array_terms, t1); - ivector_shrink(&uf->eq_graph_array_nodes, t2); - ivector_shrink(&uf->select_terms, t3); - ivector_shrink(&uf->eq_graph_select_nodes, t4); + ivector_shrink(&uf->select_terms, t2); eq_graph_pop(&uf->eq_graph); From ee360dc4d19674fbd0e6337420edbad79045e5f8 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Wed, 25 Jan 2023 14:14:14 -0800 Subject: [PATCH 033/182] cleanup --- src/mcsat/uf/uf_plugin.c | 542 +++++++++++++++++++-------------------- 1 file changed, 257 insertions(+), 285 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index 2634bf45a..6630b6ff6 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -316,8 +316,8 @@ void uf_plugin_process_eq_graph_propagations(uf_plugin_t* uf, trail_token_t* pro // Only set values of uninterpreted and boolean type type_kind_t t_type_kind = term_type_kind(uf->ctx->terms, t); if (t_type_kind == UNINTERPRETED_TYPE || - t_type_kind == FUNCTION_TYPE || - t_type_kind == BOOL_TYPE) { + t_type_kind == FUNCTION_TYPE || + t_type_kind == BOOL_TYPE) { const mcsat_value_t* v = eq_graph_get_propagated_term_value(&uf->eq_graph, t); if (!trail_has_value(uf->ctx->trail, t_var)) { if (ctx_trace_enabled(uf->ctx, "mcsat::eq::propagate")) { @@ -327,7 +327,7 @@ void uf_plugin_process_eq_graph_propagations(uf_plugin_t* uf, trail_token_t* pro mcsat_value_print(v, out); fprintf(out, "\n"); } - + prop->add(prop, t_var, v); (*uf->stats.propagations) ++; } else { @@ -389,17 +389,14 @@ static void uf_plugin_add_diff_terms_vars(uf_plugin_t* uf, term_t arr) { variable_db_get_variable(uf->ctx->var_db, arr2); variable_t v; v = variable_db_get_variable(uf->ctx->var_db, _o_yices_eq(arr, arr2)); - if (trail_has_value(uf->ctx->trail, v)) { - assert(false); - } term_t args[2]; if (arr < arr2) { - args[0] = arr; - args[1] = arr2; + args[0] = arr; + args[1] = arr2; } else { - args[0] = arr2; - args[1] = arr; + args[0] = arr2; + args[1] = arr; } term_t diff_term = app_term(terms, diff_fun, 2, args); term_t select_arg[] = {diff_term}; @@ -409,9 +406,6 @@ static void uf_plugin_add_diff_terms_vars(uf_plugin_t* uf, term_t arr) { //v = variable_db_get_variable(uf->ctx->var_db, diff_select1); //v = variable_db_get_variable(uf->ctx->var_db, diff_select2); v = variable_db_get_variable(uf->ctx->var_db, _o_yices_eq(diff_select1, diff_select2)); - if (trail_has_value(uf->ctx->trail, v)) { - assert(false); - } } } } @@ -468,13 +462,13 @@ void uf_plugin_add_to_eq_graph(uf_plugin_t* uf, term_t t, bool record) { uint32_t i; for (i = 0; i < 2; ++ i) { if (is_function_term(terms, t_desc->arg[i]) && - term_kind(terms, t_desc->arg[i]) == UNINTERPRETED_TERM) { - //uf_plugin_add_diff_terms_vars(uf, t_desc->arg[i]); - //for (j = 0; j < uf->array_terms.size; ++j) { - //variable_db_get_variable(uf->ctx->var_db, - // _o_yices_eq(uf->array_terms.data[j], t_desc->arg[i])); - //} - ivector_push(&uf->array_terms, t_desc->arg[i]); + term_kind(terms, t_desc->arg[i]) == UNINTERPRETED_TERM) { + //uf_plugin_add_diff_terms_vars(uf, t_desc->arg[i]); + //for (j = 0; j < uf->array_terms.size; ++j) { + //variable_db_get_variable(uf->ctx->var_db, + // _o_yices_eq(uf->array_terms.data[j], t_desc->arg[i])); + //} + ivector_push(&uf->array_terms, t_desc->arg[i]); } } break; @@ -543,39 +537,40 @@ void uf_plugin_new_term_notify(plugin_t* plugin, term_t t, trail_token_t* prop) } static -bool uf_plugin_array_idx_lemma(uf_plugin_t* uf, trail_token_t* prop) { +bool uf_plugin_array_idx_lemma(uf_plugin_t* uf, trail_token_t* prop, + const ivector_t* array_terms) { term_table_t* terms = uf->ctx->terms; uint32_t i, k; // array-idx lemma - for (i = 0; i < uf->array_terms.size; ++i) { - term_t arr = uf->array_terms.data[i]; + for (i = 0; i < array_terms->size; ++i) { + term_t arr = array_terms->data[i]; term_kind_t t_kind = term_kind(terms, arr); if (t_kind == UPDATE_TERM) { composite_term_t* t_desc = update_term_desc(terms, arr); term_t r = app_term(terms, arr, t_desc->arity - 2, t_desc->arg + 1); term_t v = t_desc->arg[t_desc->arity - 1]; if (!eq_graph_term_has_value(&uf->eq_graph, r) || - !eq_graph_term_has_value(&uf->eq_graph, v)) - continue; + !eq_graph_term_has_value(&uf->eq_graph, v)) + continue; if (!eq_graph_are_equal(&uf->eq_graph, r, v)) { - ivector_push(&uf->conflict, _o_yices_neq(r, v)); - - prop->conflict(prop); - (*uf->stats.conflicts) ++; - //ivector_copy(&uf->tmp, &uf->conflict, uf->conflict.size); - //uf_plugin_bump_terms_and_reset(uf, &uf->tmp); - statistic_avg_add(uf->stats.avg_conflict_size, uf->conflict.size); - - if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { - ctx_trace_printf(uf->ctx, ">1 Array conflict 1 BEGIN\n"); - for (k = 0; k < uf->conflict.size; ++ k) { - ctx_trace_term(uf->ctx, uf->conflict.data[k]); - } - ctx_trace_printf(uf->ctx, ">1 Array conflict 1 END\n"); - } + ivector_push(&uf->conflict, _o_yices_neq(r, v)); + + prop->conflict(prop); + (*uf->stats.conflicts) ++; + //ivector_copy(&uf->tmp, &uf->conflict, uf->conflict.size); + //uf_plugin_bump_terms_and_reset(uf, &uf->tmp); + statistic_avg_add(uf->stats.avg_conflict_size, uf->conflict.size); + + if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { + ctx_trace_printf(uf->ctx, ">1 Array conflict 1 BEGIN\n"); + for (k = 0; k < uf->conflict.size; ++ k) { + ctx_trace_term(uf->ctx, uf->conflict.data[k]); + } + ctx_trace_printf(uf->ctx, ">1 Array conflict 1 END\n"); + } - return false; + return false; } } } @@ -584,7 +579,7 @@ bool uf_plugin_array_idx_lemma(uf_plugin_t* uf, trail_token_t* prop) { static bool uf_plugin_array_weak_eq_i(uf_plugin_t* uf, term_t arr1, term_t arr2, term_t idx, - ivector_t* indices) { + ivector_t* indices) { int_hset_t path_idx_set; init_int_hset(&path_idx_set, 0); @@ -605,12 +600,12 @@ bool uf_plugin_array_weak_eq_i(uf_plugin_t* uf, term_t arr1, term_t arr2, term_t uint32_t k; for (k = 0; k < path_idx_set.nelems; ++ k) { if (!eq_graph_term_has_value(&uf->eq_graph, path_idx_set.data[k])) { - res = false; - break; + res = false; + break; } if (indices) { - ivector_push(indices, path_idx_set.data[k]); + ivector_push(indices, path_idx_set.data[k]); } } } @@ -625,8 +620,9 @@ bool uf_plugin_array_weak_eq_i(uf_plugin_t* uf, term_t arr1, term_t arr2, term_t } static -bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, term_t arr1, term_t arr2, - term_t idx, ivector_t* cond) { +bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, const ivector_t* select_terms, + term_t arr1, term_t arr2, + term_t idx, ivector_t* cond) { assert(eq_graph_term_has_value(&uf->eq_graph, idx)); ivector_t indices; @@ -641,7 +637,7 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, term_t arr1, term_t arr2 if (uf_plugin_array_weak_eq_i(uf, arr1, arr2, idx, &indices)) { for (k =0; k < indices.size; ++k) { if (eq_graph_are_equal(&uf->eq_graph, idx, indices.data[k])) - return false; + return false; } for (k =0; k < indices.size; ++k) { ivector_push(cond, _o_yices_neq(idx, indices.data[k])); @@ -652,17 +648,8 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, term_t arr1, term_t arr2 bool res = false; term_table_t* terms = uf->ctx->terms; - int_hset_t seen, seen2; - - init_int_hset(&seen, 0); - init_int_hset(&seen2, 0); - - for (i = 0; !res && i < uf->select_terms.size; ++ i) { - term_t t_i = uf->select_terms.data[i]; - - if (int_hset_member(&seen, t_i)) - continue; - int_hset_add(&seen, t_i); + for (i = 0; !res && i < select_terms->size; ++ i) { + term_t t_i = select_terms->data[i]; if (!eq_graph_term_has_value(&uf->eq_graph, t_i)) continue; @@ -670,162 +657,151 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, term_t arr1, term_t arr2 composite_term_t* e_i_desc = app_term_desc(terms, t_i); if (!eq_graph_term_has_value(&uf->eq_graph, e_i_desc->arg[1]) || - !eq_graph_are_equal(&uf->eq_graph, e_i_desc->arg[1], idx)) + !eq_graph_are_equal(&uf->eq_graph, e_i_desc->arg[1], idx)) continue; if (!uf_plugin_array_weak_eq_i(uf, arr1, e_i_desc->arg[0], idx, &indices)) continue; - int_hset_reset(&seen2); - for (j = 0; !res && j < uf->select_terms.size; ++ j) { - term_t t_j = uf->select_terms.data[j]; + for (j = 0; !res && j < select_terms->size; ++ j) { + term_t t_j = select_terms->data[j]; if (t_i == t_j) - continue; - - if (int_hset_member(&seen2, t_j)) - continue; - int_hset_add(&seen2, t_j); + continue; if (!eq_graph_term_has_value(&uf->eq_graph, t_j) || - !eq_graph_are_equal(&uf->eq_graph, t_i, t_j)) - continue; + !eq_graph_are_equal(&uf->eq_graph, t_i, t_j)) + continue; composite_term_t* e_j_desc = app_term_desc(terms, t_j); if (!eq_graph_term_has_value(&uf->eq_graph, e_j_desc->arg[1]) || - !eq_graph_are_equal(&uf->eq_graph, e_j_desc->arg[1], idx)) - continue; + !eq_graph_are_equal(&uf->eq_graph, e_j_desc->arg[1], idx)) + continue; if (!uf_plugin_array_weak_eq_i(uf, arr2, e_j_desc->arg[0], idx, &indices)) - continue; + continue; else { - res = true; - if (cond) { - // Conditions of arr1 weakly-eq-i to a and arr2 weakly-eq-i to b' - for (k = 0; k < indices.size; ++k) { - if (eq_graph_are_equal(&uf->eq_graph, indices.data[k], idx) || - eq_graph_are_equal(&uf->eq_graph, indices.data[k], e_i_desc->arg[1]) || - eq_graph_are_equal(&uf->eq_graph, indices.data[k], e_j_desc->arg[1])) { - res = false; - break; - } - } - - if (res) { - for (k =0; k < indices.size; ++k) { - ivector_push(cond, _o_yices_neq(idx, indices.data[k])); - } - ivector_push(cond, _o_yices_eq(idx, e_i_desc->arg[1])); - ivector_push(cond, _o_yices_eq(t_i, t_j)); - ivector_push(cond, _o_yices_eq(idx, e_j_desc->arg[1])); - } - } + res = true; + if (cond) { + // Conditions of arr1 weakly-eq-i to a and arr2 weakly-eq-i to b' + for (k = 0; k < indices.size; ++k) { + if (eq_graph_are_equal(&uf->eq_graph, indices.data[k], idx) || + eq_graph_are_equal(&uf->eq_graph, indices.data[k], e_i_desc->arg[1]) || + eq_graph_are_equal(&uf->eq_graph, indices.data[k], e_j_desc->arg[1])) { + res = false; + break; + } + } + + if (res) { + for (k =0; k < indices.size; ++k) { + ivector_push(cond, _o_yices_neq(idx, indices.data[k])); + } + ivector_push(cond, _o_yices_eq(idx, e_i_desc->arg[1])); + ivector_push(cond, _o_yices_eq(t_i, t_j)); + ivector_push(cond, _o_yices_eq(idx, e_j_desc->arg[1])); + } + } } } } if (!res && cond) { ivector_shrink(cond, cond_old_size); - } else { - ivector_remove_duplicates(cond); - } - - delete_int_hset(&seen2); - delete_int_hset(&seen); + } return res; } static -bool uf_plugin_array_ext_lemma(uf_plugin_t* uf, trail_token_t* prop) { +bool uf_plugin_array_ext_lemma(uf_plugin_t* uf, trail_token_t* prop, + const ivector_t* array_terms, + const ivector_t* select_terms) { term_table_t* terms = uf->ctx->terms; uint32_t i, j, k; ivector_t cond; int_hset_t path_idx_set; - int_hset_t seen, seen2; init_ivector(&cond, 0); init_int_hset(&path_idx_set, 0); - init_int_hset(&seen, 0); - init_int_hset(&seen2, 0); - for (i = 0; i < uf->array_terms.size; ++i) { - term_t arr1 = uf->array_terms.data[i]; + for (i = 0; i < array_terms->size; ++i) { + term_t arr1 = array_terms->data[i]; term_t arr1_rep = eq_graph_term_get_rep(&uf->eq_graph, arr1); type_t arr1_type = term_type(terms, arr1); if (!eq_graph_term_has_value(&uf->eq_graph, arr1) || - !eq_graph_term_has_value(&uf->eq_graph, arr1_rep)) + !eq_graph_term_has_value(&uf->eq_graph, arr1_rep)) continue; - for (j = i + 1; j < uf->array_terms.size; ++j) { - term_t arr2 = uf->array_terms.data[j]; + for (j = i + 1; j < array_terms->size; ++j) { + term_t arr2 = array_terms->data[j]; term_t arr2_rep = eq_graph_term_get_rep(&uf->eq_graph, arr2); type_t arr2_type = term_type(terms, arr2); if (arr1 == arr2 || arr1_type != arr2_type || - !eq_graph_term_has_value(&uf->eq_graph, arr2) || - !eq_graph_term_has_value(&uf->eq_graph, arr2_rep)) - continue; + !eq_graph_term_has_value(&uf->eq_graph, arr2) || + !eq_graph_term_has_value(&uf->eq_graph, arr2_rep)) + continue; if (eq_graph_are_equal(&uf->eq_graph, arr1, arr2)) - continue; + continue; int_hset_reset(&path_idx_set); fun_node_t* fn_arr1 = get_rep(uf_plugin_get_fun_node(uf, arr1), - &path_idx_set); + &path_idx_set); fun_node_t* fn_arr2 = get_rep(uf_plugin_get_fun_node(uf, arr2), - &path_idx_set); + &path_idx_set); if (fn_arr1 == fn_arr2) { - int_hset_close(&path_idx_set); - bool ok = true; - for (k = 0; k < path_idx_set.nelems; ++ k) { - if (!eq_graph_term_has_value(&uf->eq_graph, path_idx_set.data[k])) { - ok = false; - break; - } - } - for (k = 0; ok && k < path_idx_set.nelems; ++ k) { - if (!uf_plugin_array_weak_congruence_i(uf, arr1, arr2, - path_idx_set.data[k], &cond)) { - ok = false; - break; - } - } + int_hset_close(&path_idx_set); + bool ok = true; + for (k = 0; k < path_idx_set.nelems; ++ k) { + if (!eq_graph_term_has_value(&uf->eq_graph, path_idx_set.data[k])) { + ok = false; + break; + } + } + for (k = 0; ok && k < path_idx_set.nelems; ++ k) { + if (!uf_plugin_array_weak_congruence_i(uf, select_terms, arr1, arr2, + path_idx_set.data[k], &cond)) { + ok = false; + break; + } + } - if (ok) { - // [NOTE] we don't need Cond(P) -- condition on the path - if (arr1 != arr1_rep) { - ctx_trace_term(uf->ctx, arr1); - ctx_trace_term(uf->ctx, arr1_rep); - //ivector_push(&uf->conflict, _o_yices_eq(arr1, arr1_rep)); - } - if (arr2 != arr2_rep) { - ctx_trace_term(uf->ctx, arr2); - ctx_trace_term(uf->ctx, arr2_rep); - //ivector_push(&uf->conflict, _o_yices_eq(arr2, arr2_rep)); - } - for (k = 0; k < cond.size; ++k) { - ivector_push(&uf->conflict, cond.data[k]); - } - ivector_push(&uf->conflict, _o_yices_neq(arr1, arr2)); - - prop->conflict(prop); - (*uf->stats.conflicts) ++; - //ivector_copy(&uf->tmp, &uf->conflict, uf->conflict.size); - //uf_plugin_bump_terms_and_reset(uf, &uf->tmp); - statistic_avg_add(uf->stats.avg_conflict_size, uf->conflict.size); - - if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { - ctx_trace_printf(uf->ctx, ">2 Array conflict BEGIN 2\n"); - for (k = 0; k < uf->conflict.size; ++ k) { - ctx_trace_term(uf->ctx, uf->conflict.data[k]); - } - ctx_trace_printf(uf->ctx, ">2 Array conflict END 2\n"); - } - - goto done; - } + if (ok) { + // [NOTE] we don't need Cond(P) -- condition on the path + if (arr1 != arr1_rep) { + ctx_trace_term(uf->ctx, arr1); + ctx_trace_term(uf->ctx, arr1_rep); + //ivector_push(&uf->conflict, _o_yices_eq(arr1, arr1_rep)); + } + if (arr2 != arr2_rep) { + ctx_trace_term(uf->ctx, arr2); + ctx_trace_term(uf->ctx, arr2_rep); + //ivector_push(&uf->conflict, _o_yices_eq(arr2, arr2_rep)); + } + for (k = 0; k < cond.size; ++k) { + ivector_push(&uf->conflict, cond.data[k]); + } + ivector_push(&uf->conflict, _o_yices_neq(arr1, arr2)); + + prop->conflict(prop); + (*uf->stats.conflicts) ++; + //ivector_copy(&uf->tmp, &uf->conflict, uf->conflict.size); + //uf_plugin_bump_terms_and_reset(uf, &uf->tmp); + statistic_avg_add(uf->stats.avg_conflict_size, uf->conflict.size); + + if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { + ctx_trace_printf(uf->ctx, ">2 Array conflict BEGIN 2\n"); + for (k = 0; k < uf->conflict.size; ++ k) { + ctx_trace_term(uf->ctx, uf->conflict.data[k]); + } + ctx_trace_printf(uf->ctx, ">2 Array conflict END 2\n"); + } + + goto done; + } } } } @@ -833,20 +809,19 @@ bool uf_plugin_array_ext_lemma(uf_plugin_t* uf, trail_token_t* prop) { done: delete_ivector(&cond); delete_int_hset(&path_idx_set); - delete_int_hset(&seen2); - delete_int_hset(&seen); return (uf->conflict.size == 0); } static -bool uf_plugin_array_ext_diff_lemma(uf_plugin_t* uf, trail_token_t* prop) { +bool uf_plugin_array_ext_diff_lemma(uf_plugin_t* uf, trail_token_t* prop, + const ivector_t* array_terms) { term_table_t* terms = uf->ctx->terms; uint32_t i, j, k; // array-ext lemma - for (i = 0; i < uf->array_terms.size; ++i) { - term_t arr1 = uf->array_terms.data[i]; + for (i = 0; i < array_terms->size; ++i) { + term_t arr1 = array_terms->data[i]; if (!eq_graph_term_has_value(&uf->eq_graph, arr1)) continue; @@ -860,53 +835,53 @@ bool uf_plugin_array_ext_diff_lemma(uf_plugin_t* uf, trail_token_t* prop) { assert(false); } - for (j = i + 1; j < uf->array_terms.size; ++j) { - term_t arr2 = uf->array_terms.data[j]; + for (j = i + 1; j < array_terms->size; ++j) { + term_t arr2 = array_terms->data[j]; if (!eq_graph_term_has_value(&uf->eq_graph, arr2)) - continue; + continue; type_t arr2_type = term_type(terms, arr2); if (arr1 == arr2 || arr1_type != arr2_type) - continue; + continue; term_t args[2]; if (arr1 < arr2) { - args[0] = arr1; - args[1] = arr2; + args[0] = arr1; + args[1] = arr2; } else { - args[0] = arr2; - args[1] = arr1; + args[0] = arr2; + args[1] = arr1; } term_t diff_term = app_term(terms, diff_fun, 2, args); term_t select_arg[] = {diff_term}; term_t diff_select1 = app_term(terms, arr1, 1, select_arg); term_t diff_select2 = app_term(terms, arr2, 1, select_arg); if (!eq_graph_term_has_value(&uf->eq_graph, diff_term) || - !eq_graph_term_has_value(&uf->eq_graph, diff_select1) || - !eq_graph_term_has_value(&uf->eq_graph, diff_select2)) - continue; + !eq_graph_term_has_value(&uf->eq_graph, diff_select1) || + !eq_graph_term_has_value(&uf->eq_graph, diff_select2)) + continue; if (!eq_graph_are_equal(&uf->eq_graph, arr1, arr2) && - eq_graph_are_equal(&uf->eq_graph, diff_select1, diff_select2)) { + eq_graph_are_equal(&uf->eq_graph, diff_select1, diff_select2)) { - ivector_push(&uf->conflict, _o_yices_neq(arr1, arr2)); - ivector_push(&uf->conflict, _o_yices_eq(diff_select1, diff_select2)); - - prop->conflict(prop); - (*uf->stats.conflicts) ++; - //ivector_copy(&uf->tmp, &uf->conflict, uf->conflict.size); - //uf_plugin_bump_terms_and_reset(uf, &uf->tmp); - statistic_avg_add(uf->stats.avg_conflict_size, uf->conflict.size); - - if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { - ctx_trace_printf(uf->ctx, ">2 Array conflict 2 BEGIN\n"); - for (k = 0; k < uf->conflict.size; ++ k) { - ctx_trace_term(uf->ctx, uf->conflict.data[k]); - } - ctx_trace_printf(uf->ctx, ">2 Array conflict 2 END\n"); - } + ivector_push(&uf->conflict, _o_yices_neq(arr1, arr2)); + ivector_push(&uf->conflict, _o_yices_eq(diff_select1, diff_select2)); + + prop->conflict(prop); + (*uf->stats.conflicts) ++; + //ivector_copy(&uf->tmp, &uf->conflict, uf->conflict.size); + //uf_plugin_bump_terms_and_reset(uf, &uf->tmp); + statistic_avg_add(uf->stats.avg_conflict_size, uf->conflict.size); + + if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { + ctx_trace_printf(uf->ctx, ">2 Array conflict 2 BEGIN\n"); + for (k = 0; k < uf->conflict.size; ++ k) { + ctx_trace_term(uf->ctx, uf->conflict.data[k]); + } + ctx_trace_printf(uf->ctx, ">2 Array conflict 2 END\n"); + } - return false; + return false; } } } @@ -915,7 +890,9 @@ bool uf_plugin_array_ext_diff_lemma(uf_plugin_t* uf, trail_token_t* prop) { } static -bool uf_plugin_array_read_over_write_lemma(uf_plugin_t* uf, trail_token_t* prop) { +bool uf_plugin_array_read_over_write_lemma(uf_plugin_t* uf, trail_token_t* prop, + const ivector_t* array_terms, + const ivector_t* select_terms) { term_table_t* terms = uf->ctx->terms; uint32_t i, j;//, k; bool updates_present = false; @@ -924,16 +901,9 @@ bool uf_plugin_array_read_over_write_lemma(uf_plugin_t* uf, trail_token_t* prop) // we start from a fresh weak equivalence graph clear_fun_node_map(&uf->fun_node_map); - int_hset_t seen; - init_int_hset(&seen, 0); // build the graph - for (i = 0; i < uf->array_terms.size; ++ i) { - term_t t = uf->array_terms.data[i]; - if (int_hset_member(&seen, t)) - continue; - - int_hset_add(&seen, t); - + for (i = 0; i < array_terms->size; ++ i) { + term_t t = array_terms->data[i]; term_kind_t t_kind = term_kind(terms, t); assert(is_function_term(terms, t)); assert(t_kind == UNINTERPRETED_TERM || t_kind == UPDATE_TERM); @@ -951,20 +921,13 @@ bool uf_plugin_array_read_over_write_lemma(uf_plugin_t* uf, trail_token_t* prop) if (!updates_present) { return true; } - - int_hset_t seen2; + int_hset_t path_idx_set; - init_int_hset(&seen2, 0); init_int_hset(&path_idx_set, 0); - int_hset_reset(&seen); // generalized read-over-write lemma - for (i = 0; i < uf->select_terms.size; ++ i) { - term_t t_i = uf->select_terms.data[i]; - - if (int_hset_member(&seen, t_i)) - continue; - int_hset_add(&seen, t_i); + for (i = 0; i < select_terms->size; ++ i) { + term_t t_i = select_terms->data[i]; if (!eq_graph_term_has_value(&uf->eq_graph, t_i)) continue; @@ -974,94 +937,87 @@ bool uf_plugin_array_read_over_write_lemma(uf_plugin_t* uf, trail_token_t* prop) if (!eq_graph_term_has_value(&uf->eq_graph, e_i_desc->arg[1])) continue; - int_hset_reset(&seen2); - for (j = 0; j < uf->select_terms.size; ++ j) { - term_t t_j = uf->select_terms.data[j]; + for (j = 0; j < select_terms->size; ++ j) { + term_t t_j = select_terms->data[j]; if (t_i == t_j) - continue; - - if (int_hset_member(&seen2, t_j)) - continue; - int_hset_add(&seen2, t_j); + continue; if (!eq_graph_term_has_value(&uf->eq_graph, t_j)) - continue; + continue; composite_term_t* e_j_desc = app_term_desc(terms, t_j); if (!eq_graph_term_has_value(&uf->eq_graph, e_j_desc->arg[1])) - continue; + continue; if (!eq_graph_are_equal(&uf->eq_graph, e_i_desc->arg[1], e_j_desc->arg[1]) || - eq_graph_are_equal(&uf->eq_graph, t_i, t_j)) - continue; + eq_graph_are_equal(&uf->eq_graph, t_i, t_j)) + continue; int_hset_reset(&path_idx_set); fun_node_t* fn_i = get_rep_i(uf_plugin_get_fun_node(uf, e_i_desc->arg[0]), - e_i_desc->arg[1], &path_idx_set); + e_i_desc->arg[1], &path_idx_set); fun_node_t* fn_j = get_rep_i(uf_plugin_get_fun_node(uf, e_j_desc->arg[0]), - e_i_desc->arg[1], &path_idx_set); + e_i_desc->arg[1], &path_idx_set); assert(fn_i != NULL); assert(fn_j != NULL); if (fn_i == fn_j) { - // found conflict - assert(uf->conflict.size == 0); - if (e_i_desc->arg[1] != e_j_desc->arg[1]) - ivector_push(&uf->conflict, _o_yices_eq(e_i_desc->arg[1], e_j_desc->arg[1])); - ivector_push(&uf->conflict, _o_yices_neq(t_i, t_j)); - - int_hset_close(&path_idx_set); - bool ok = true; - uint32_t k; - for (k = 0; k < path_idx_set.nelems; ++ k) { - if (path_idx_set.data[k] != e_i_desc->arg[1] && - path_idx_set.data[k] != e_j_desc->arg[1]) { - if (!eq_graph_term_has_value(&uf->eq_graph, path_idx_set.data[k]) || - eq_graph_are_equal(&uf->eq_graph, - e_i_desc->arg[1], path_idx_set.data[k])) { - ivector_reset(&uf->conflict); - ok = false; - break; - } - - ivector_push(&uf->conflict, _o_yices_neq(e_i_desc->arg[1], path_idx_set.data[k])); - } else { - ivector_reset(&uf->conflict); - ok = false; - break; - } - } + // found conflict + assert(uf->conflict.size == 0); + if (e_i_desc->arg[1] != e_j_desc->arg[1]) + ivector_push(&uf->conflict, _o_yices_eq(e_i_desc->arg[1], e_j_desc->arg[1])); + ivector_push(&uf->conflict, _o_yices_neq(t_i, t_j)); + + int_hset_close(&path_idx_set); + bool ok = true; + uint32_t k; + for (k = 0; k < path_idx_set.nelems; ++ k) { + if (path_idx_set.data[k] != e_i_desc->arg[1] && + path_idx_set.data[k] != e_j_desc->arg[1]) { + if (!eq_graph_term_has_value(&uf->eq_graph, path_idx_set.data[k]) || + eq_graph_are_equal(&uf->eq_graph, + e_i_desc->arg[1], path_idx_set.data[k])) { + ivector_reset(&uf->conflict); + ok = false; + break; + } + + ivector_push(&uf->conflict, _o_yices_neq(e_i_desc->arg[1], path_idx_set.data[k])); + } else { + ivector_reset(&uf->conflict); + ok = false; + break; + } + } - if (!ok) - ivector_reset(&uf->conflict); - - if (uf->conflict.size > 0) { - // Report conflict - prop->conflict(prop); - (*uf->stats.conflicts) ++; - //ivector_copy(&uf->tmp, &uf->conflict, uf->conflict.size); - //uf_plugin_bump_terms_and_reset(uf, &uf->tmp); - statistic_avg_add(uf->stats.avg_conflict_size, uf->conflict.size); - - if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { - ctx_trace_printf(uf->ctx, ">3 Array conflict BEGIN 3\n"); - for (k = 0; k < uf->conflict.size; ++ k) { - ctx_trace_term(uf->ctx, uf->conflict.data[k]); - } - ctx_trace_printf(uf->ctx, ">3 Array conflict END 3\n"); - } - - goto done; - } + if (!ok) + ivector_reset(&uf->conflict); + + if (uf->conflict.size > 0) { + // Report conflict + prop->conflict(prop); + (*uf->stats.conflicts) ++; + //ivector_copy(&uf->tmp, &uf->conflict, uf->conflict.size); + //uf_plugin_bump_terms_and_reset(uf, &uf->tmp); + statistic_avg_add(uf->stats.avg_conflict_size, uf->conflict.size); + + if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { + ctx_trace_printf(uf->ctx, ">3 Array conflict BEGIN 3\n"); + for (k = 0; k < uf->conflict.size; ++ k) { + ctx_trace_term(uf->ctx, uf->conflict.data[k]); + } + ctx_trace_printf(uf->ctx, ">3 Array conflict END 3\n"); + } + + goto done; + } } } } done: delete_int_hset(&path_idx_set); - delete_int_hset(&seen2); - delete_int_hset(&seen); return !(uf->conflict.size > 0); } @@ -1069,13 +1025,29 @@ bool uf_plugin_array_read_over_write_lemma(uf_plugin_t* uf, trail_token_t* prop) static void uf_plugin_array_propagations(uf_plugin_t* uf, trail_token_t* prop) { - //if (!uf_plugin_array_idx_lemma(uf, prop)) + bool ok = true; + + ivector_t array_terms; + init_ivector(&array_terms, 0); + ivector_copy(&array_terms, uf->array_terms.data, uf->array_terms.size); + ivector_remove_duplicates(&array_terms); + + ivector_t select_terms; + init_ivector(&select_terms, 0); + ivector_copy(&select_terms, uf->select_terms.data, uf->select_terms.size); + ivector_remove_duplicates(&select_terms); + + //if (!uf_plugin_array_idx_lemma(uf, prop, &select_terms)) // return; - if (!uf_plugin_array_read_over_write_lemma(uf, prop)) - return; + ok = !uf_plugin_array_read_over_write_lemma(uf, prop, &array_terms, &select_terms); + + if (!ok) { + uf_plugin_array_ext_lemma(uf, prop, &array_terms, &select_terms); + } - uf_plugin_array_ext_lemma(uf, prop); + delete_ivector(&select_terms); + delete_ivector(&array_terms); } static From 7f2b236afd367aa1834cbb56ef851ed90c0ac721 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Wed, 25 Jan 2023 18:24:34 -0800 Subject: [PATCH 034/182] fix: typo introduced during merge --- src/mcsat/uf/uf_plugin.c | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index 6630b6ff6..1c873d7e0 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -425,23 +425,14 @@ void uf_plugin_add_to_eq_graph(uf_plugin_t* uf, term_t t, bool record) { switch (t_kind) { case APP_TERM: t_desc = app_term_desc(terms, t); - eq_node = eq_graph_add_ufun_term(&uf->eq_graph, t, t_desc->arg[0], t_desc->arity - 1, t_desc->arg + 1); + eq_graph_add_ufun_term(&uf->eq_graph, t, t_desc->arg[0], t_desc->arity - 1, t_desc->arg + 1); ivector_push(&uf->select_terms, t); break; case UPDATE_TERM: //uf_plugin_add_diff_terms_vars(uf, t); t_desc = update_term_desc(terms, t); - eq_node = eq_graph_add_ifun_term(&uf->eq_graph, t, UPDATE_TERM, t_desc->arity, t_desc->arg); - - //term_t r = app_term(terms, t, t_desc->arity - 2, t_desc->arg + 1); - //variable_db_get_variable(uf->ctx->var_db, r); - //term_t r_lemma = _o_yices_eq(r, t_desc->arg[t_desc->arity - 1]); - //term_t r_lemma_args[] = {r, t_desc->arg[t_desc->arity - 1]}; - //variable_db_get_variable(uf->ctx->var_db, r_lemma); - //eq_graph_add_ifun_term(&uf->eq_graph, r_lemma, EQ_TERM, 2, r_lemma_args); - + eq_graph_add_ifun_term(&uf->eq_graph, t, UPDATE_TERM, t_desc->arity, t_desc->arg); ivector_push(&uf->array_terms, t); - eq_graph_add_ufun_term(&uf->eq_graph, t, t_desc->arg[0], t_desc->arity - 1, t_desc->arg + 1); break; case ARITH_RDIV: t_desc = arith_rdiv_term_desc(terms, t); From 42fe19edc6a128e4e62fe01815b609ee6bd338fd Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Wed, 25 Jan 2023 21:15:41 -0800 Subject: [PATCH 035/182] array tests from cvc5, smt-interpol, opensmt2 --- tests/regress/mcsat/ax/arr1.smt2 | 10 ++++++++ tests/regress/mcsat/ax/arr1.smt2.gold | 1 + tests/regress/mcsat/ax/arr1.smt2.options | 1 + tests/regress/mcsat/ax/arrays0.smt2 | 22 ++++++++++++++++++ tests/regress/mcsat/ax/arrays0.smt2.gold | 1 + tests/regress/mcsat/ax/arrays0.smt2.options | 1 + tests/regress/mcsat/ax/arrays1.smt2 | 21 +++++++++++++++++ tests/regress/mcsat/ax/arrays1.smt2.gold | 1 + tests/regress/mcsat/ax/arrays1.smt2.options | 1 + tests/regress/mcsat/ax/arrays2.smt2 | 21 +++++++++++++++++ tests/regress/mcsat/ax/arrays2.smt2.gold | 1 + tests/regress/mcsat/ax/arrays2.smt2.options | 1 + tests/regress/mcsat/ax/arrays3.smt2 | 23 +++++++++++++++++++ tests/regress/mcsat/ax/arrays3.smt2.gold | 1 + tests/regress/mcsat/ax/arrays3.smt2.options | 1 + tests/regress/mcsat/ax/arrays4.smt2 | 23 +++++++++++++++++++ tests/regress/mcsat/ax/arrays4.smt2.gold | 1 + tests/regress/mcsat/ax/arrays4.smt2.options | 1 + .../ax/arrays_extensionality_no_selects.smt2 | 9 ++++++++ ...arrays_extensionality_no_selects.smt2.gold | 1 + ...ays_extensionality_no_selects.smt2.options | 1 + ...rrays_extensionality_no_selects_unsat.smt2 | 12 ++++++++++ ..._extensionality_no_selects_unsat.smt2.gold | 1 + ...tensionality_no_selects_unsat.smt2.options | 1 + tests/regress/mcsat/ax/bool-array.smt2 | 11 +++++++++ tests/regress/mcsat/ax/bool-array.smt2.gold | 1 + .../regress/mcsat/ax/bool-array.smt2.options | 1 + .../mcsat/ax/read_over_weak_eq_lemma.smt2 | 19 +++++++++++++++ .../ax/read_over_weak_eq_lemma.smt2.gold | 1 + .../ax/read_over_weak_eq_lemma.smt2.options | 1 + .../mcsat/ax/read_over_weak_eq_lemma_2.smt2 | 15 ++++++++++++ .../ax/read_over_weak_eq_lemma_2.smt2.gold | 1 + .../ax/read_over_weak_eq_lemma_2.smt2.options | 1 + tests/regress/mcsat/ax/trivially_unsat.smt2 | 11 +++++++++ .../mcsat/ax/trivially_unsat.smt2.gold | 1 + .../mcsat/ax/trivially_unsat.smt2.options | 1 + .../mcsat/ax/unsat_with_decisions.smt2 | 15 ++++++++++++ .../mcsat/ax/unsat_with_decisions.smt2.gold | 1 + .../ax/unsat_with_decisions.smt2.options | 1 + 39 files changed, 238 insertions(+) create mode 100644 tests/regress/mcsat/ax/arr1.smt2 create mode 100644 tests/regress/mcsat/ax/arr1.smt2.gold create mode 100644 tests/regress/mcsat/ax/arr1.smt2.options create mode 100644 tests/regress/mcsat/ax/arrays0.smt2 create mode 100644 tests/regress/mcsat/ax/arrays0.smt2.gold create mode 100644 tests/regress/mcsat/ax/arrays0.smt2.options create mode 100644 tests/regress/mcsat/ax/arrays1.smt2 create mode 100644 tests/regress/mcsat/ax/arrays1.smt2.gold create mode 100644 tests/regress/mcsat/ax/arrays1.smt2.options create mode 100644 tests/regress/mcsat/ax/arrays2.smt2 create mode 100644 tests/regress/mcsat/ax/arrays2.smt2.gold create mode 100644 tests/regress/mcsat/ax/arrays2.smt2.options create mode 100644 tests/regress/mcsat/ax/arrays3.smt2 create mode 100644 tests/regress/mcsat/ax/arrays3.smt2.gold create mode 100644 tests/regress/mcsat/ax/arrays3.smt2.options create mode 100644 tests/regress/mcsat/ax/arrays4.smt2 create mode 100644 tests/regress/mcsat/ax/arrays4.smt2.gold create mode 100644 tests/regress/mcsat/ax/arrays4.smt2.options create mode 100644 tests/regress/mcsat/ax/arrays_extensionality_no_selects.smt2 create mode 100644 tests/regress/mcsat/ax/arrays_extensionality_no_selects.smt2.gold create mode 100644 tests/regress/mcsat/ax/arrays_extensionality_no_selects.smt2.options create mode 100644 tests/regress/mcsat/ax/arrays_extensionality_no_selects_unsat.smt2 create mode 100644 tests/regress/mcsat/ax/arrays_extensionality_no_selects_unsat.smt2.gold create mode 100644 tests/regress/mcsat/ax/arrays_extensionality_no_selects_unsat.smt2.options create mode 100644 tests/regress/mcsat/ax/bool-array.smt2 create mode 100644 tests/regress/mcsat/ax/bool-array.smt2.gold create mode 100644 tests/regress/mcsat/ax/bool-array.smt2.options create mode 100644 tests/regress/mcsat/ax/read_over_weak_eq_lemma.smt2 create mode 100644 tests/regress/mcsat/ax/read_over_weak_eq_lemma.smt2.gold create mode 100644 tests/regress/mcsat/ax/read_over_weak_eq_lemma.smt2.options create mode 100644 tests/regress/mcsat/ax/read_over_weak_eq_lemma_2.smt2 create mode 100644 tests/regress/mcsat/ax/read_over_weak_eq_lemma_2.smt2.gold create mode 100644 tests/regress/mcsat/ax/read_over_weak_eq_lemma_2.smt2.options create mode 100644 tests/regress/mcsat/ax/trivially_unsat.smt2 create mode 100644 tests/regress/mcsat/ax/trivially_unsat.smt2.gold create mode 100644 tests/regress/mcsat/ax/trivially_unsat.smt2.options create mode 100644 tests/regress/mcsat/ax/unsat_with_decisions.smt2 create mode 100644 tests/regress/mcsat/ax/unsat_with_decisions.smt2.gold create mode 100644 tests/regress/mcsat/ax/unsat_with_decisions.smt2.options diff --git a/tests/regress/mcsat/ax/arr1.smt2 b/tests/regress/mcsat/ax/arr1.smt2 new file mode 100644 index 000000000..844f7d8e5 --- /dev/null +++ b/tests/regress/mcsat/ax/arr1.smt2 @@ -0,0 +1,10 @@ +(set-logic QF_AX) +(set-info :status unsat) +(declare-sort Index 0) +(declare-sort Element 0) +(declare-fun a () (Array Index Element)) +(declare-fun i1 () Index) +(declare-fun i2 () Index) +(assert (not (=> (= i1 i2) (= (select a i1) (select a i2))))) +(check-sat) + diff --git a/tests/regress/mcsat/ax/arr1.smt2.gold b/tests/regress/mcsat/ax/arr1.smt2.gold new file mode 100644 index 000000000..3f65111b0 --- /dev/null +++ b/tests/regress/mcsat/ax/arr1.smt2.gold @@ -0,0 +1 @@ +unsat diff --git a/tests/regress/mcsat/ax/arr1.smt2.options b/tests/regress/mcsat/ax/arr1.smt2.options new file mode 100644 index 000000000..bcf7e6dae --- /dev/null +++ b/tests/regress/mcsat/ax/arr1.smt2.options @@ -0,0 +1 @@ +--mcsat diff --git a/tests/regress/mcsat/ax/arrays0.smt2 b/tests/regress/mcsat/ax/arrays0.smt2 new file mode 100644 index 000000000..ffc7d3e8f --- /dev/null +++ b/tests/regress/mcsat/ax/arrays0.smt2 @@ -0,0 +1,22 @@ +(set-logic QF_AX) +(set-info :source | +Benchmarks used in the followin paper: +Big proof engines as little proof engines: new results on rewrite-based satisfiability procedure +Alessandro Armando, Maria Paola Bonacina, Silvio Ranise, Stephan Schulz. +PDPAR'05 +http://www.ai.dist.unige.it/pdpar05/ + + +|) +(set-info :smt-lib-version 2.6) +(set-info :category "crafted") +(set-info :status unsat) +(declare-sort Index 0) +(declare-sort Element 0) +(declare-fun a1 () (Array Index Element)) +(declare-fun a2 () (Array Index Element)) +(declare-fun i1 () Index) +(assert (= (store a1 i1 (select a2 i1)) (store a2 i1 (select a1 i1)))) +(assert (not (= a1 a2))) +(check-sat) +(exit) diff --git a/tests/regress/mcsat/ax/arrays0.smt2.gold b/tests/regress/mcsat/ax/arrays0.smt2.gold new file mode 100644 index 000000000..3f65111b0 --- /dev/null +++ b/tests/regress/mcsat/ax/arrays0.smt2.gold @@ -0,0 +1 @@ +unsat diff --git a/tests/regress/mcsat/ax/arrays0.smt2.options b/tests/regress/mcsat/ax/arrays0.smt2.options new file mode 100644 index 000000000..bcf7e6dae --- /dev/null +++ b/tests/regress/mcsat/ax/arrays0.smt2.options @@ -0,0 +1 @@ +--mcsat diff --git a/tests/regress/mcsat/ax/arrays1.smt2 b/tests/regress/mcsat/ax/arrays1.smt2 new file mode 100644 index 000000000..6f6773916 --- /dev/null +++ b/tests/regress/mcsat/ax/arrays1.smt2 @@ -0,0 +1,21 @@ +(set-logic QF_AX) +(set-info :source | +Benchmarks used in the followin paper: +Big proof engines as little proof engines: new results on rewrite-based satisfiability procedure +Alessandro Armando, Maria Paola Bonacina, Silvio Ranise, Stephan Schulz. +PDPAR'05 +http://www.ai.dist.unige.it/pdpar05/ + + +|) +(set-info :smt-lib-version 2.6) +(set-info :category "crafted") +(set-info :status unsat) +(declare-sort Index 0) +(declare-sort Element 0) +(declare-fun a1 () (Array Index Element)) +(declare-fun i0 () Index) +(declare-fun i1 () Index) +(assert (let ((?v_0 (select a1 i1))) (let ((?v_1 (store (store a1 i1 ?v_0) i1 ?v_0))) (let ((?v_2 (select ?v_1 i0))) (let ((?v_3 (store (store ?v_1 i0 ?v_2) i0 ?v_2))) (not (= ?v_3 ?v_3))))))) +(check-sat) +(exit) diff --git a/tests/regress/mcsat/ax/arrays1.smt2.gold b/tests/regress/mcsat/ax/arrays1.smt2.gold new file mode 100644 index 000000000..3f65111b0 --- /dev/null +++ b/tests/regress/mcsat/ax/arrays1.smt2.gold @@ -0,0 +1 @@ +unsat diff --git a/tests/regress/mcsat/ax/arrays1.smt2.options b/tests/regress/mcsat/ax/arrays1.smt2.options new file mode 100644 index 000000000..bcf7e6dae --- /dev/null +++ b/tests/regress/mcsat/ax/arrays1.smt2.options @@ -0,0 +1 @@ +--mcsat diff --git a/tests/regress/mcsat/ax/arrays2.smt2 b/tests/regress/mcsat/ax/arrays2.smt2 new file mode 100644 index 000000000..7e89ad6b2 --- /dev/null +++ b/tests/regress/mcsat/ax/arrays2.smt2 @@ -0,0 +1,21 @@ +(set-logic QF_AX) +(set-info :source | +Benchmarks used in the followin paper: +Big proof engines as little proof engines: new results on rewrite-based satisfiability procedure +Alessandro Armando, Maria Paola Bonacina, Silvio Ranise, Stephan Schulz. +PDPAR'05 +http://www.ai.dist.unige.it/pdpar05/ + + +|) +(set-info :smt-lib-version 2.6) +(set-info :category "crafted") +(set-info :status sat) +(declare-sort Index 0) +(declare-sort Element 0) +(declare-fun a1 () (Array Index Element)) +(declare-fun i0 () Index) +(declare-fun i1 () Index) +(assert (let ((?v_0 (select a1 i1))) (let ((?v_1 (store (store a1 i1 ?v_0) i1 ?v_0))) (let ((?v_2 (select ?v_1 i0))) (not (= (store (store ?v_1 i0 (select ?v_1 i1)) i1 ?v_2) (store (store ?v_1 i0 ?v_2) i0 ?v_2))))))) +(check-sat) +(exit) diff --git a/tests/regress/mcsat/ax/arrays2.smt2.gold b/tests/regress/mcsat/ax/arrays2.smt2.gold new file mode 100644 index 000000000..6b8a2c3d2 --- /dev/null +++ b/tests/regress/mcsat/ax/arrays2.smt2.gold @@ -0,0 +1 @@ +sat diff --git a/tests/regress/mcsat/ax/arrays2.smt2.options b/tests/regress/mcsat/ax/arrays2.smt2.options new file mode 100644 index 000000000..bcf7e6dae --- /dev/null +++ b/tests/regress/mcsat/ax/arrays2.smt2.options @@ -0,0 +1 @@ +--mcsat diff --git a/tests/regress/mcsat/ax/arrays3.smt2 b/tests/regress/mcsat/ax/arrays3.smt2 new file mode 100644 index 000000000..aecfeee08 --- /dev/null +++ b/tests/regress/mcsat/ax/arrays3.smt2 @@ -0,0 +1,23 @@ +(set-logic QF_AX) +(set-info :source | +Benchmarks used in the followin paper: +Big proof engines as little proof engines: new results on rewrite-based satisfiability procedure +Alessandro Armando, Maria Paola Bonacina, Silvio Ranise, Stephan Schulz. +PDPAR'05 +http://www.ai.dist.unige.it/pdpar05/ + + +|) +(set-info :smt-lib-version 2.6) +(set-info :category "crafted") +(set-info :status sat) +(declare-sort Index 0) +(declare-sort Element 0) +(declare-fun a1 () (Array Index Element)) +(declare-fun a2 () (Array Index Element)) +(declare-fun i1 () Index) +(declare-fun i2 () Index) +(assert (let ((?v_0 (store a2 i1 (select a1 i1))) (?v_1 (store a1 i1 (select a2 i1)))) (= (store ?v_1 i1 (select ?v_0 i2)) (store ?v_0 i2 (select ?v_1 i2))))) +(assert (not (= a1 a2))) +(check-sat) +(exit) diff --git a/tests/regress/mcsat/ax/arrays3.smt2.gold b/tests/regress/mcsat/ax/arrays3.smt2.gold new file mode 100644 index 000000000..6b8a2c3d2 --- /dev/null +++ b/tests/regress/mcsat/ax/arrays3.smt2.gold @@ -0,0 +1 @@ +sat diff --git a/tests/regress/mcsat/ax/arrays3.smt2.options b/tests/regress/mcsat/ax/arrays3.smt2.options new file mode 100644 index 000000000..bcf7e6dae --- /dev/null +++ b/tests/regress/mcsat/ax/arrays3.smt2.options @@ -0,0 +1 @@ +--mcsat diff --git a/tests/regress/mcsat/ax/arrays4.smt2 b/tests/regress/mcsat/ax/arrays4.smt2 new file mode 100644 index 000000000..e9acd5304 --- /dev/null +++ b/tests/regress/mcsat/ax/arrays4.smt2 @@ -0,0 +1,23 @@ +(set-logic QF_AX) +(set-info :source | +Benchmarks used in the followin paper: +Big proof engines as little proof engines: new results on rewrite-based satisfiability procedure +Alessandro Armando, Maria Paola Bonacina, Silvio Ranise, Stephan Schulz. +PDPAR'05 +http://www.ai.dist.unige.it/pdpar05/ + + +|) +(set-info :smt-lib-version 2.6) +(set-info :category "crafted") +(set-info :status unsat) +(declare-sort Index 0) +(declare-sort Element 0) +(declare-fun a1 () (Array Index Element)) +(declare-fun a2 () (Array Index Element)) +(declare-fun i1 () Index) +(declare-fun i2 () Index) +(assert (let ((?v_0 (store a2 i1 (select a1 i1))) (?v_1 (store a1 i1 (select a2 i1)))) (= (store ?v_1 i2 (select ?v_0 i2)) (store ?v_0 i2 (select ?v_1 i2))))) +(assert (not (= a1 a2))) +(check-sat) +(exit) diff --git a/tests/regress/mcsat/ax/arrays4.smt2.gold b/tests/regress/mcsat/ax/arrays4.smt2.gold new file mode 100644 index 000000000..3f65111b0 --- /dev/null +++ b/tests/regress/mcsat/ax/arrays4.smt2.gold @@ -0,0 +1 @@ +unsat diff --git a/tests/regress/mcsat/ax/arrays4.smt2.options b/tests/regress/mcsat/ax/arrays4.smt2.options new file mode 100644 index 000000000..bcf7e6dae --- /dev/null +++ b/tests/regress/mcsat/ax/arrays4.smt2.options @@ -0,0 +1 @@ +--mcsat diff --git a/tests/regress/mcsat/ax/arrays_extensionality_no_selects.smt2 b/tests/regress/mcsat/ax/arrays_extensionality_no_selects.smt2 new file mode 100644 index 000000000..ec3d001b4 --- /dev/null +++ b/tests/regress/mcsat/ax/arrays_extensionality_no_selects.smt2 @@ -0,0 +1,9 @@ +(set-logic QF_AX) +(set-info :status sat) +(set-info :smt-lib-version 2.6) +(declare-sort I 0) +(declare-sort E 0) +(declare-fun S () (Array I E)) +(declare-fun SS () (Array I E)) +(assert (= S SS)) +(check-sat) diff --git a/tests/regress/mcsat/ax/arrays_extensionality_no_selects.smt2.gold b/tests/regress/mcsat/ax/arrays_extensionality_no_selects.smt2.gold new file mode 100644 index 000000000..6b8a2c3d2 --- /dev/null +++ b/tests/regress/mcsat/ax/arrays_extensionality_no_selects.smt2.gold @@ -0,0 +1 @@ +sat diff --git a/tests/regress/mcsat/ax/arrays_extensionality_no_selects.smt2.options b/tests/regress/mcsat/ax/arrays_extensionality_no_selects.smt2.options new file mode 100644 index 000000000..bcf7e6dae --- /dev/null +++ b/tests/regress/mcsat/ax/arrays_extensionality_no_selects.smt2.options @@ -0,0 +1 @@ +--mcsat diff --git a/tests/regress/mcsat/ax/arrays_extensionality_no_selects_unsat.smt2 b/tests/regress/mcsat/ax/arrays_extensionality_no_selects_unsat.smt2 new file mode 100644 index 000000000..e6df8d1c0 --- /dev/null +++ b/tests/regress/mcsat/ax/arrays_extensionality_no_selects_unsat.smt2 @@ -0,0 +1,12 @@ +(set-logic QF_AX) +(set-info :status unsat) +(set-info :smt-lib-version 2.6) +(declare-sort I 0) +(declare-sort E 0) +(declare-fun S () (Array I E)) +(declare-fun SS () (Array I E)) +(declare-fun SSS () (Array I E)) +(assert (= S SS)) +(assert (= SS SSS)) +(assert (not (= S SSS))) +(check-sat) diff --git a/tests/regress/mcsat/ax/arrays_extensionality_no_selects_unsat.smt2.gold b/tests/regress/mcsat/ax/arrays_extensionality_no_selects_unsat.smt2.gold new file mode 100644 index 000000000..3f65111b0 --- /dev/null +++ b/tests/regress/mcsat/ax/arrays_extensionality_no_selects_unsat.smt2.gold @@ -0,0 +1 @@ +unsat diff --git a/tests/regress/mcsat/ax/arrays_extensionality_no_selects_unsat.smt2.options b/tests/regress/mcsat/ax/arrays_extensionality_no_selects_unsat.smt2.options new file mode 100644 index 000000000..bcf7e6dae --- /dev/null +++ b/tests/regress/mcsat/ax/arrays_extensionality_no_selects_unsat.smt2.options @@ -0,0 +1 @@ +--mcsat diff --git a/tests/regress/mcsat/ax/bool-array.smt2 b/tests/regress/mcsat/ax/bool-array.smt2 new file mode 100644 index 000000000..0e5920384 --- /dev/null +++ b/tests/regress/mcsat/ax/bool-array.smt2 @@ -0,0 +1,11 @@ +; EXPECT: unsat +(set-logic QF_AX) +(set-info :status unsat) + +(declare-fun a () (Array Bool Bool)) +(declare-fun b () (Array Bool Bool)) + +(assert (not (= (select a (= a b)) (select a (not (= a b)))))) +(assert (= (select a true) (select a false))) + +(check-sat) diff --git a/tests/regress/mcsat/ax/bool-array.smt2.gold b/tests/regress/mcsat/ax/bool-array.smt2.gold new file mode 100644 index 000000000..3f65111b0 --- /dev/null +++ b/tests/regress/mcsat/ax/bool-array.smt2.gold @@ -0,0 +1 @@ +unsat diff --git a/tests/regress/mcsat/ax/bool-array.smt2.options b/tests/regress/mcsat/ax/bool-array.smt2.options new file mode 100644 index 000000000..bcf7e6dae --- /dev/null +++ b/tests/regress/mcsat/ax/bool-array.smt2.options @@ -0,0 +1 @@ +--mcsat diff --git a/tests/regress/mcsat/ax/read_over_weak_eq_lemma.smt2 b/tests/regress/mcsat/ax/read_over_weak_eq_lemma.smt2 new file mode 100644 index 000000000..8addab464 --- /dev/null +++ b/tests/regress/mcsat/ax/read_over_weak_eq_lemma.smt2 @@ -0,0 +1,19 @@ +(set-logic QF_AX) +(set-info :status sat) +(declare-sort I 0) +(declare-sort E 0) +(declare-fun a () (Array I E)) +(declare-fun b () (Array I E)) +(declare-fun i () I) +(declare-fun j () I) +(declare-fun v () E) +(declare-fun w () E) +(declare-fun u () E) +(declare-fun x () Bool) + +(assert (not (= i j))) +(assert (= (select a i) v)) +(assert (= (select b i) u)) +(assert (= (store a j w) b)) +(assert (or (not x) (not (= (select a i) (select b i))))) +(check-sat) diff --git a/tests/regress/mcsat/ax/read_over_weak_eq_lemma.smt2.gold b/tests/regress/mcsat/ax/read_over_weak_eq_lemma.smt2.gold new file mode 100644 index 000000000..6b8a2c3d2 --- /dev/null +++ b/tests/regress/mcsat/ax/read_over_weak_eq_lemma.smt2.gold @@ -0,0 +1 @@ +sat diff --git a/tests/regress/mcsat/ax/read_over_weak_eq_lemma.smt2.options b/tests/regress/mcsat/ax/read_over_weak_eq_lemma.smt2.options new file mode 100644 index 000000000..bcf7e6dae --- /dev/null +++ b/tests/regress/mcsat/ax/read_over_weak_eq_lemma.smt2.options @@ -0,0 +1 @@ +--mcsat diff --git a/tests/regress/mcsat/ax/read_over_weak_eq_lemma_2.smt2 b/tests/regress/mcsat/ax/read_over_weak_eq_lemma_2.smt2 new file mode 100644 index 000000000..152e63ef6 --- /dev/null +++ b/tests/regress/mcsat/ax/read_over_weak_eq_lemma_2.smt2 @@ -0,0 +1,15 @@ +(set-logic QF_AX) +(set-info :status unsat) +(declare-sort I 0) +(declare-sort E 0) +(declare-fun a () (Array I E)) +(declare-fun v () E) +(declare-fun i1 () I) +(declare-fun i2 () I) +(declare-fun i3 () I) +(declare-fun x () Bool) +(assert (=> x (= i2 i3))) +(assert (=> (not x) (= i2 i3))) +(assert (not (= i1 i2))) +(assert (not (= (select a i1) (select (store (store a i2 v) i3 v) i1)))) +(check-sat) diff --git a/tests/regress/mcsat/ax/read_over_weak_eq_lemma_2.smt2.gold b/tests/regress/mcsat/ax/read_over_weak_eq_lemma_2.smt2.gold new file mode 100644 index 000000000..3f65111b0 --- /dev/null +++ b/tests/regress/mcsat/ax/read_over_weak_eq_lemma_2.smt2.gold @@ -0,0 +1 @@ +unsat diff --git a/tests/regress/mcsat/ax/read_over_weak_eq_lemma_2.smt2.options b/tests/regress/mcsat/ax/read_over_weak_eq_lemma_2.smt2.options new file mode 100644 index 000000000..bcf7e6dae --- /dev/null +++ b/tests/regress/mcsat/ax/read_over_weak_eq_lemma_2.smt2.options @@ -0,0 +1 @@ +--mcsat diff --git a/tests/regress/mcsat/ax/trivially_unsat.smt2 b/tests/regress/mcsat/ax/trivially_unsat.smt2 new file mode 100644 index 000000000..aa1ffd58c --- /dev/null +++ b/tests/regress/mcsat/ax/trivially_unsat.smt2 @@ -0,0 +1,11 @@ +(set-info :smt-lib-version 2.6) +(set-logic QF_AX) +(set-info :status unsat) +(declare-sort Index 0) +(declare-sort Element 0) +(declare-fun a1 () (Array Index Element)) +(declare-fun i0 () Index) +(declare-fun e0 () Element) +(assert (not (= (select (store a1 i0 e0) i0) e0))) +(check-sat) +(exit) diff --git a/tests/regress/mcsat/ax/trivially_unsat.smt2.gold b/tests/regress/mcsat/ax/trivially_unsat.smt2.gold new file mode 100644 index 000000000..3f65111b0 --- /dev/null +++ b/tests/regress/mcsat/ax/trivially_unsat.smt2.gold @@ -0,0 +1 @@ +unsat diff --git a/tests/regress/mcsat/ax/trivially_unsat.smt2.options b/tests/regress/mcsat/ax/trivially_unsat.smt2.options new file mode 100644 index 000000000..bcf7e6dae --- /dev/null +++ b/tests/regress/mcsat/ax/trivially_unsat.smt2.options @@ -0,0 +1 @@ +--mcsat diff --git a/tests/regress/mcsat/ax/unsat_with_decisions.smt2 b/tests/regress/mcsat/ax/unsat_with_decisions.smt2 new file mode 100644 index 000000000..5e3ad05c6 --- /dev/null +++ b/tests/regress/mcsat/ax/unsat_with_decisions.smt2 @@ -0,0 +1,15 @@ +(set-info :smt-lib-version 2.6) +(set-logic QF_AX) +(set-info :status unsat) +(declare-sort Index 0) +(declare-sort Element 0) +(declare-fun a () (Array Index Element)) +(declare-fun i () Index) +(declare-fun j () Index) +(declare-fun e () Element) +(declare-fun b () Bool) +(assert (not (= i j))) +(assert (or b (not (= (select a j) (select (store a i e) j))))) +(assert (or (not b) (not (= (select a j) (select (store a i e) j))))) +(check-sat) +(exit) diff --git a/tests/regress/mcsat/ax/unsat_with_decisions.smt2.gold b/tests/regress/mcsat/ax/unsat_with_decisions.smt2.gold new file mode 100644 index 000000000..3f65111b0 --- /dev/null +++ b/tests/regress/mcsat/ax/unsat_with_decisions.smt2.gold @@ -0,0 +1 @@ +unsat diff --git a/tests/regress/mcsat/ax/unsat_with_decisions.smt2.options b/tests/regress/mcsat/ax/unsat_with_decisions.smt2.options new file mode 100644 index 000000000..bcf7e6dae --- /dev/null +++ b/tests/regress/mcsat/ax/unsat_with_decisions.smt2.options @@ -0,0 +1 @@ +--mcsat From dc6f393d25ee9c93f7aa085775362da8a2e179cc Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Wed, 25 Jan 2023 21:44:05 -0800 Subject: [PATCH 036/182] minor --- src/mcsat/uf/uf_plugin.c | 5 ----- 1 file changed, 5 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index 1c873d7e0..64753b55c 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -192,7 +192,6 @@ static void add_store(fun_node_t* a, fun_node_t* b, term_t idx) { int_array_hset_t s; init_int_array_hset(&s, 0); int_array_hset_get(&s, s.size, &idx); - assert(int_array_hset_find(&s, s.size, &idx) != NULL); add_secondary(&s, a, b); delete_int_array_hset(&s); } else { @@ -455,10 +454,6 @@ void uf_plugin_add_to_eq_graph(uf_plugin_t* uf, term_t t, bool record) { if (is_function_term(terms, t_desc->arg[i]) && term_kind(terms, t_desc->arg[i]) == UNINTERPRETED_TERM) { //uf_plugin_add_diff_terms_vars(uf, t_desc->arg[i]); - //for (j = 0; j < uf->array_terms.size; ++j) { - //variable_db_get_variable(uf->ctx->var_db, - // _o_yices_eq(uf->array_terms.data[j], t_desc->arg[i])); - //} ivector_push(&uf->array_terms, t_desc->arg[i]); } } From 7d4bf022aaed1047593c97c89f034d18204c4b47 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Thu, 26 Jan 2023 00:01:06 -0800 Subject: [PATCH 037/182] more cleanup --- src/mcsat/uf/uf_plugin.c | 351 +++++++++++++++++++-------------------- 1 file changed, 169 insertions(+), 182 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index 64753b55c..266a7ae33 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -121,31 +121,43 @@ static inline fun_node_t *new_node() { return n; } -static fun_node_t* get_rep(fun_node_t* n, int_hset_t* path_idx_set) { - if (n->p == NULL) +static const fun_node_t* get_rep(const fun_node_t* n, int_hset_t* path_idx_set) { + if (n->p == NULL) { return n; - if (path_idx_set != NULL) + } + + if (path_idx_set != NULL) { int_hset_add(path_idx_set, n->pi); + } + return get_rep(n->p, path_idx_set); } -static fun_node_t* get_rep_i(fun_node_t* n, term_t idx, int_hset_t* path_idx_set) { - if (n->p == NULL) +static const fun_node_t* get_rep_i(const fun_node_t* n, const term_t idx, int_hset_t* path_idx_set) { + if (n->p == NULL) { return n; + } + if (n->pi != idx) { // record indices - if (path_idx_set) + if (path_idx_set) { int_hset_add(path_idx_set, n->pi); + } return get_rep_i(n->p, idx, path_idx_set); } - if (n->s == NULL) + + if (n->s == NULL) { return n; + } + return get_rep_i(n->s, idx, path_idx_set); } static void make_rep_i(fun_node_t* n) { - if (n->s == NULL) + if (n->s == NULL) { return; + } + if (n->s->pi != n->pi) { n->s = n->s->p; make_rep_i(n); @@ -157,8 +169,10 @@ static void make_rep_i(fun_node_t* n) { } static void make_rep(fun_node_t* n) { - if (n->p == NULL) + if (n->p == NULL) { return; + } + make_rep(n->p); // invert primary edge n->p->p = n; @@ -168,9 +182,10 @@ static void make_rep(fun_node_t* n) { } static void add_secondary(int_array_hset_t* idx_set, fun_node_t* a, fun_node_t* b) { - if (a == b) + if (a == b) { return; - + } + bool rm_idx; rm_idx = false; if (int_array_hset_find(idx_set, idx_set->size, &a->pi) == NULL && @@ -182,8 +197,9 @@ static void add_secondary(int_array_hset_t* idx_set, fun_node_t* a, fun_node_t* int_array_hset_get(idx_set, idx_set->size, &a->pi); add_secondary(idx_set, a->p, b); - if (rm_idx) + if (rm_idx) { int_array_hset_remove(idx_set, idx_set->size, &a->pi); + } } static void add_store(fun_node_t* a, fun_node_t* b, term_t idx) { @@ -312,7 +328,7 @@ void uf_plugin_process_eq_graph_propagations(uf_plugin_t* uf, trail_token_t* pro // Variable to propagate variable_t t_var = variable_db_get_variable_if_exists(uf->ctx->var_db, t); if (t_var != variable_null) { - // Only set values of uninterpreted and boolean type + // Only set values of uninterpreted, function and boolean type type_kind_t t_type_kind = term_type_kind(uf->ctx->terms, t); if (t_type_kind == UNINTERPRETED_TYPE || t_type_kind == FUNCTION_TYPE || @@ -379,15 +395,13 @@ static void uf_plugin_add_diff_terms_vars(uf_plugin_t* uf, term_t arr) { uint32_t i; for (i = 0; i < uf->array_terms.size; ++ i) { term_t arr2 = uf->array_terms.data[i]; - - if (arr == arr2) + if (arr == arr2) { continue; + } type_t arr2_type = term_type(terms, arr2); if (arr_type == arr2_type) { variable_db_get_variable(uf->ctx->var_db, arr2); - variable_t v; - v = variable_db_get_variable(uf->ctx->var_db, _o_yices_eq(arr, arr2)); term_t args[2]; if (arr < arr2) { @@ -397,14 +411,14 @@ static void uf_plugin_add_diff_terms_vars(uf_plugin_t* uf, term_t arr) { args[0] = arr2; args[1] = arr; } + term_t diff_term = app_term(terms, diff_fun, 2, args); term_t select_arg[] = {diff_term}; term_t diff_select1 = app_term(terms, arr, 1, select_arg); term_t diff_select2 = app_term(terms, arr2, 1, select_arg); - //v = variable_db_get_variable(uf->ctx->var_db, diff_term); - //v = variable_db_get_variable(uf->ctx->var_db, diff_select1); - //v = variable_db_get_variable(uf->ctx->var_db, diff_select2); - v = variable_db_get_variable(uf->ctx->var_db, _o_yices_eq(diff_select1, diff_select2)); + variable_db_get_variable(uf->ctx->var_db, diff_term); + variable_db_get_variable(uf->ctx->var_db, diff_select1); + variable_db_get_variable(uf->ctx->var_db, diff_select2); } } } @@ -419,8 +433,6 @@ void uf_plugin_add_to_eq_graph(uf_plugin_t* uf, term_t t, bool record) { // Add to equality graph composite_term_t* t_desc = NULL; - uint32_t children_start = 0; - eq_node_id_t eq_node = eq_node_null; switch (t_kind) { case APP_TERM: t_desc = app_term_desc(terms, t); @@ -464,7 +476,7 @@ void uf_plugin_add_to_eq_graph(uf_plugin_t* uf, term_t t, bool record) { // Make sure the subterms are registered uint32_t i; - for (i = children_start; i < t_desc->arity; ++ i) { + for (i = 0; i < t_desc->arity; ++ i) { term_t c = t_desc->arg[i]; variable_t c_var = variable_db_get_variable(uf->ctx->var_db, c); if (trail_has_value(uf->ctx->trail, c_var)) { @@ -510,14 +522,12 @@ void uf_plugin_new_term_notify(plugin_t* plugin, term_t t, trail_token_t* prop) break; } + // eagerly add array idx lemma if (t_kind == UPDATE_TERM) { composite_term_t* t_desc = update_term_desc(terms, t); term_t r = app_term(terms, t, t_desc->arity - 2, t_desc->arg + 1); variable_db_get_variable(uf->ctx->var_db, r); term_t r_lemma = _o_yices_eq(r, t_desc->arg[t_desc->arity - 1]); - //term_t r_lemma_args[] = {r, t_desc->arg[t_desc->arity - 1]}; - //variable_db_get_variable(uf->ctx->var_db, r_lemma); - //eq_graph_add_ifun_term(&uf->eq_graph, r_lemma, EQ_TERM, 2, r_lemma_args); prop->definition_lemma(prop, r_lemma, t); } } @@ -541,13 +551,6 @@ bool uf_plugin_array_idx_lemma(uf_plugin_t* uf, trail_token_t* prop, continue; if (!eq_graph_are_equal(&uf->eq_graph, r, v)) { ivector_push(&uf->conflict, _o_yices_neq(r, v)); - - prop->conflict(prop); - (*uf->stats.conflicts) ++; - //ivector_copy(&uf->tmp, &uf->conflict, uf->conflict.size); - //uf_plugin_bump_terms_and_reset(uf, &uf->tmp); - statistic_avg_add(uf->stats.avg_conflict_size, uf->conflict.size); - if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { ctx_trace_printf(uf->ctx, ">1 Array conflict 1 BEGIN\n"); for (k = 0; k < uf->conflict.size; ++ k) { @@ -555,7 +558,6 @@ bool uf_plugin_array_idx_lemma(uf_plugin_t* uf, trail_token_t* prop, } ctx_trace_printf(uf->ctx, ">1 Array conflict 1 END\n"); } - return false; } } @@ -564,13 +566,15 @@ bool uf_plugin_array_idx_lemma(uf_plugin_t* uf, trail_token_t* prop, } static -bool uf_plugin_array_weak_eq_i(uf_plugin_t* uf, term_t arr1, term_t arr2, term_t idx, - ivector_t* indices) { +bool uf_plugin_array_weak_eq_i(uf_plugin_t* uf, term_t arr1, term_t arr2, + term_t idx, ivector_t* indices) { int_hset_t path_idx_set; init_int_hset(&path_idx_set, 0); - fun_node_t* fn_arr1 = get_rep_i(uf_plugin_get_fun_node(uf, arr1), idx, &path_idx_set); - fun_node_t* fn_arr2 = get_rep_i(uf_plugin_get_fun_node(uf, arr2), idx, &path_idx_set); + const fun_node_t* fn_arr1 = get_rep_i(uf_plugin_get_fun_node(uf, arr1), + idx, &path_idx_set); + const fun_node_t* fn_arr2 = get_rep_i(uf_plugin_get_fun_node(uf, arr2), + idx, &path_idx_set); assert(fn_arr1 != NULL); assert(fn_arr2 != NULL); @@ -622,8 +626,9 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, const ivector_t* select_ if (uf_plugin_array_weak_eq_i(uf, arr1, arr2, idx, &indices)) { for (k =0; k < indices.size; ++k) { - if (eq_graph_are_equal(&uf->eq_graph, idx, indices.data[k])) + if (eq_graph_are_equal(&uf->eq_graph, idx, indices.data[k])) { return false; + } } for (k =0; k < indices.size; ++k) { ivector_push(cond, _o_yices_neq(idx, indices.data[k])); @@ -636,65 +641,59 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, const ivector_t* select_ for (i = 0; !res && i < select_terms->size; ++ i) { term_t t_i = select_terms->data[i]; - - if (!eq_graph_term_has_value(&uf->eq_graph, t_i)) + if (!eq_graph_term_has_value(&uf->eq_graph, t_i)) { continue; - - composite_term_t* e_i_desc = app_term_desc(terms, t_i); + } + composite_term_t* e_i_desc = app_term_desc(terms, t_i); if (!eq_graph_term_has_value(&uf->eq_graph, e_i_desc->arg[1]) || - !eq_graph_are_equal(&uf->eq_graph, e_i_desc->arg[1], idx)) - continue; - - if (!uf_plugin_array_weak_eq_i(uf, arr1, e_i_desc->arg[0], idx, &indices)) + !eq_graph_are_equal(&uf->eq_graph, e_i_desc->arg[1], idx) || + !uf_plugin_array_weak_eq_i(uf, arr1, e_i_desc->arg[0], idx, &indices)) { continue; + } for (j = 0; !res && j < select_terms->size; ++ j) { term_t t_j = select_terms->data[j]; - if (t_i == t_j) + if (t_i == t_j || + !eq_graph_term_has_value(&uf->eq_graph, t_j) || + !eq_graph_are_equal(&uf->eq_graph, t_i, t_j)) { continue; - - if (!eq_graph_term_has_value(&uf->eq_graph, t_j) || - !eq_graph_are_equal(&uf->eq_graph, t_i, t_j)) - continue; - + } + composite_term_t* e_j_desc = app_term_desc(terms, t_j); - if (!eq_graph_term_has_value(&uf->eq_graph, e_j_desc->arg[1]) || - !eq_graph_are_equal(&uf->eq_graph, e_j_desc->arg[1], idx)) - continue; - - if (!uf_plugin_array_weak_eq_i(uf, arr2, e_j_desc->arg[0], idx, &indices)) + !eq_graph_are_equal(&uf->eq_graph, e_j_desc->arg[1], idx) || + !uf_plugin_array_weak_eq_i(uf, arr2, e_j_desc->arg[0], idx, &indices)) { continue; - else { - res = true; - if (cond) { - // Conditions of arr1 weakly-eq-i to a and arr2 weakly-eq-i to b' - for (k = 0; k < indices.size; ++k) { - if (eq_graph_are_equal(&uf->eq_graph, indices.data[k], idx) || - eq_graph_are_equal(&uf->eq_graph, indices.data[k], e_i_desc->arg[1]) || - eq_graph_are_equal(&uf->eq_graph, indices.data[k], e_j_desc->arg[1])) { - res = false; - break; - } - } + } + + res = true; + if (cond) { + // Conditions of arr1 weakly-eq-i to a and arr2 weakly-eq-i to b' + for (k = 0; k < indices.size; ++k) { + if (eq_graph_are_equal(&uf->eq_graph, indices.data[k], idx) || + eq_graph_are_equal(&uf->eq_graph, indices.data[k], e_i_desc->arg[1]) || + eq_graph_are_equal(&uf->eq_graph, indices.data[k], e_j_desc->arg[1])) { + res = false; + break; + } + } - if (res) { - for (k =0; k < indices.size; ++k) { - ivector_push(cond, _o_yices_neq(idx, indices.data[k])); - } - ivector_push(cond, _o_yices_eq(idx, e_i_desc->arg[1])); - ivector_push(cond, _o_yices_eq(t_i, t_j)); - ivector_push(cond, _o_yices_eq(idx, e_j_desc->arg[1])); - } - } + if (res) { + for (k =0; k < indices.size; ++k) { + ivector_push(cond, _o_yices_neq(idx, indices.data[k])); + } + ivector_push(cond, _o_yices_eq(idx, e_i_desc->arg[1])); + ivector_push(cond, _o_yices_eq(t_i, t_j)); + ivector_push(cond, _o_yices_eq(idx, e_j_desc->arg[1])); + } } } } if (!res && cond) { ivector_shrink(cond, cond_old_size); - } + } return res; } @@ -717,26 +716,26 @@ bool uf_plugin_array_ext_lemma(uf_plugin_t* uf, trail_token_t* prop, term_t arr1_rep = eq_graph_term_get_rep(&uf->eq_graph, arr1); type_t arr1_type = term_type(terms, arr1); if (!eq_graph_term_has_value(&uf->eq_graph, arr1) || - !eq_graph_term_has_value(&uf->eq_graph, arr1_rep)) + !eq_graph_term_has_value(&uf->eq_graph, arr1_rep)) { continue; - + } + for (j = i + 1; j < array_terms->size; ++j) { term_t arr2 = array_terms->data[j]; term_t arr2_rep = eq_graph_term_get_rep(&uf->eq_graph, arr2); type_t arr2_type = term_type(terms, arr2); if (arr1 == arr2 || arr1_type != arr2_type || !eq_graph_term_has_value(&uf->eq_graph, arr2) || - !eq_graph_term_has_value(&uf->eq_graph, arr2_rep)) - continue; - - if (eq_graph_are_equal(&uf->eq_graph, arr1, arr2)) + !eq_graph_term_has_value(&uf->eq_graph, arr2_rep) || + eq_graph_are_equal(&uf->eq_graph, arr1, arr2)) { continue; - + } + int_hset_reset(&path_idx_set); - fun_node_t* fn_arr1 = get_rep(uf_plugin_get_fun_node(uf, arr1), - &path_idx_set); - fun_node_t* fn_arr2 = get_rep(uf_plugin_get_fun_node(uf, arr2), - &path_idx_set); + const fun_node_t* fn_arr1 = get_rep(uf_plugin_get_fun_node(uf, arr1), + &path_idx_set); + const fun_node_t* fn_arr2 = get_rep(uf_plugin_get_fun_node(uf, arr2), + &path_idx_set); if (fn_arr1 == fn_arr2) { int_hset_close(&path_idx_set); @@ -772,12 +771,6 @@ bool uf_plugin_array_ext_lemma(uf_plugin_t* uf, trail_token_t* prop, } ivector_push(&uf->conflict, _o_yices_neq(arr1, arr2)); - prop->conflict(prop); - (*uf->stats.conflicts) ++; - //ivector_copy(&uf->tmp, &uf->conflict, uf->conflict.size); - //uf_plugin_bump_terms_and_reset(uf, &uf->tmp); - statistic_avg_add(uf->stats.avg_conflict_size, uf->conflict.size); - if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { ctx_trace_printf(uf->ctx, ">2 Array conflict BEGIN 2\n"); for (k = 0; k < uf->conflict.size; ++ k) { @@ -808,11 +801,11 @@ bool uf_plugin_array_ext_diff_lemma(uf_plugin_t* uf, trail_token_t* prop, // array-ext lemma for (i = 0; i < array_terms->size; ++i) { term_t arr1 = array_terms->data[i]; - if (!eq_graph_term_has_value(&uf->eq_graph, arr1)) + if (!eq_graph_term_has_value(&uf->eq_graph, arr1)) { continue; - + } + type_t arr1_type = term_type(terms, arr1); - //type_t idx1_type = function_type_domain(uf->ctx->types, arr1_type, 0); term_t diff_fun; int_hmap_pair_t *diff = int_hmap_find(&uf->type_to_diff, arr1_type); if (diff != NULL) { @@ -823,13 +816,13 @@ bool uf_plugin_array_ext_diff_lemma(uf_plugin_t* uf, trail_token_t* prop, for (j = i + 1; j < array_terms->size; ++j) { term_t arr2 = array_terms->data[j]; - if (!eq_graph_term_has_value(&uf->eq_graph, arr2)) - continue; - type_t arr2_type = term_type(terms, arr2); - if (arr1 == arr2 || arr1_type != arr2_type) + if (!eq_graph_term_has_value(&uf->eq_graph, arr2) || + arr1 == arr2 || + arr1_type != arr2_type) { continue; - + } + term_t args[2]; if (arr1 < arr2) { args[0] = arr1; @@ -844,21 +837,16 @@ bool uf_plugin_array_ext_diff_lemma(uf_plugin_t* uf, trail_token_t* prop, term_t diff_select2 = app_term(terms, arr2, 1, select_arg); if (!eq_graph_term_has_value(&uf->eq_graph, diff_term) || !eq_graph_term_has_value(&uf->eq_graph, diff_select1) || - !eq_graph_term_has_value(&uf->eq_graph, diff_select2)) + !eq_graph_term_has_value(&uf->eq_graph, diff_select2)) { continue; - + } + if (!eq_graph_are_equal(&uf->eq_graph, arr1, arr2) && eq_graph_are_equal(&uf->eq_graph, diff_select1, diff_select2)) { ivector_push(&uf->conflict, _o_yices_neq(arr1, arr2)); ivector_push(&uf->conflict, _o_yices_eq(diff_select1, diff_select2)); - prop->conflict(prop); - (*uf->stats.conflicts) ++; - //ivector_copy(&uf->tmp, &uf->conflict, uf->conflict.size); - //uf_plugin_bump_terms_and_reset(uf, &uf->tmp); - statistic_avg_add(uf->stats.avg_conflict_size, uf->conflict.size); - if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { ctx_trace_printf(uf->ctx, ">2 Array conflict 2 BEGIN\n"); for (k = 0; k < uf->conflict.size; ++ k) { @@ -880,33 +868,7 @@ bool uf_plugin_array_read_over_write_lemma(uf_plugin_t* uf, trail_token_t* prop, const ivector_t* array_terms, const ivector_t* select_terms) { term_table_t* terms = uf->ctx->terms; - uint32_t i, j;//, k; - bool updates_present = false; - - // clear the fun node map - // we start from a fresh weak equivalence graph - clear_fun_node_map(&uf->fun_node_map); - - // build the graph - for (i = 0; i < array_terms->size; ++ i) { - term_t t = array_terms->data[i]; - term_kind_t t_kind = term_kind(terms, t); - assert(is_function_term(terms, t)); - assert(t_kind == UNINTERPRETED_TERM || t_kind == UPDATE_TERM); - - fun_node_t *b = uf_plugin_get_fun_node(uf, t); - if (t_kind == UPDATE_TERM) { - composite_term_t* t_desc = update_term_desc(terms, t); - fun_node_t *a = uf_plugin_get_fun_node(uf, t_desc->arg[0]); - term_t ai = t_desc->arg[1]; - add_store(a, b, ai); - updates_present = true; - } - } - - if (!updates_present) { - return true; - } + uint32_t i, j; int_hset_t path_idx_set; init_int_hset(&path_idx_set, 0); @@ -914,45 +876,39 @@ bool uf_plugin_array_read_over_write_lemma(uf_plugin_t* uf, trail_token_t* prop, // generalized read-over-write lemma for (i = 0; i < select_terms->size; ++ i) { term_t t_i = select_terms->data[i]; - - if (!eq_graph_term_has_value(&uf->eq_graph, t_i)) - continue; - composite_term_t* e_i_desc = app_term_desc(terms, t_i); - - if (!eq_graph_term_has_value(&uf->eq_graph, e_i_desc->arg[1])) + if (!eq_graph_term_has_value(&uf->eq_graph, t_i) || + !eq_graph_term_has_value(&uf->eq_graph, e_i_desc->arg[1])) { continue; - + } + for (j = 0; j < select_terms->size; ++ j) { term_t t_j = select_terms->data[j]; - if (t_i == t_j) - continue; - - if (!eq_graph_term_has_value(&uf->eq_graph, t_j)) - continue; - composite_term_t* e_j_desc = app_term_desc(terms, t_j); - - if (!eq_graph_term_has_value(&uf->eq_graph, e_j_desc->arg[1])) + if (t_i == t_j || + !eq_graph_term_has_value(&uf->eq_graph, t_j) || + !eq_graph_term_has_value(&uf->eq_graph, e_j_desc->arg[1]) || + !eq_graph_are_equal(&uf->eq_graph, e_i_desc->arg[1], e_j_desc->arg[1]) || + eq_graph_are_equal(&uf->eq_graph, t_i, t_j)) { continue; + } - if (!eq_graph_are_equal(&uf->eq_graph, e_i_desc->arg[1], e_j_desc->arg[1]) || - eq_graph_are_equal(&uf->eq_graph, t_i, t_j)) - continue; - int_hset_reset(&path_idx_set); - fun_node_t* fn_i = get_rep_i(uf_plugin_get_fun_node(uf, e_i_desc->arg[0]), - e_i_desc->arg[1], &path_idx_set); - fun_node_t* fn_j = get_rep_i(uf_plugin_get_fun_node(uf, e_j_desc->arg[0]), - e_i_desc->arg[1], &path_idx_set); + const fun_node_t* fn_i = + get_rep_i(uf_plugin_get_fun_node(uf, e_i_desc->arg[0]), e_i_desc->arg[1], + &path_idx_set); + const fun_node_t* fn_j = + get_rep_i(uf_plugin_get_fun_node(uf, e_j_desc->arg[0]), e_i_desc->arg[1], + &path_idx_set); assert(fn_i != NULL); assert(fn_j != NULL); if (fn_i == fn_j) { // found conflict assert(uf->conflict.size == 0); - if (e_i_desc->arg[1] != e_j_desc->arg[1]) + if (e_i_desc->arg[1] != e_j_desc->arg[1]) { ivector_push(&uf->conflict, _o_yices_eq(e_i_desc->arg[1], e_j_desc->arg[1])); + } ivector_push(&uf->conflict, _o_yices_neq(t_i, t_j)); int_hset_close(&path_idx_set); @@ -964,30 +920,22 @@ bool uf_plugin_array_read_over_write_lemma(uf_plugin_t* uf, trail_token_t* prop, if (!eq_graph_term_has_value(&uf->eq_graph, path_idx_set.data[k]) || eq_graph_are_equal(&uf->eq_graph, e_i_desc->arg[1], path_idx_set.data[k])) { - ivector_reset(&uf->conflict); ok = false; break; } ivector_push(&uf->conflict, _o_yices_neq(e_i_desc->arg[1], path_idx_set.data[k])); } else { - ivector_reset(&uf->conflict); ok = false; break; } } - if (!ok) + if (!ok) { ivector_reset(&uf->conflict); - + } + if (uf->conflict.size > 0) { - // Report conflict - prop->conflict(prop); - (*uf->stats.conflicts) ++; - //ivector_copy(&uf->tmp, &uf->conflict, uf->conflict.size); - //uf_plugin_bump_terms_and_reset(uf, &uf->tmp); - statistic_avg_add(uf->stats.avg_conflict_size, uf->conflict.size); - if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { ctx_trace_printf(uf->ctx, ">3 Array conflict BEGIN 3\n"); for (k = 0; k < uf->conflict.size; ++ k) { @@ -1005,7 +953,36 @@ bool uf_plugin_array_read_over_write_lemma(uf_plugin_t* uf, trail_token_t* prop, done: delete_int_hset(&path_idx_set); - return !(uf->conflict.size > 0); + return uf->conflict.size == 0; +} + +static +void uf_plugin_array_build_weak_eq_graph(uf_plugin_t* uf, const ivector_t* array_terms, + bool* updates_present) { + term_table_t* terms = uf->ctx->terms; + uint32_t i; + *updates_present = false; + + // clear the fun node map + // we start from a fresh weak equivalence graph + clear_fun_node_map(&uf->fun_node_map); + + // build the graph + for (i = 0; i < array_terms->size; ++ i) { + term_t t = array_terms->data[i]; + term_kind_t t_kind = term_kind(terms, t); + assert(is_function_term(terms, t)); + assert(t_kind == UNINTERPRETED_TERM || t_kind == UPDATE_TERM); + + fun_node_t *b = uf_plugin_get_fun_node(uf, t); + if (t_kind == UPDATE_TERM) { + composite_term_t* t_desc = update_term_desc(terms, t); + fun_node_t *a = uf_plugin_get_fun_node(uf, t_desc->arg[0]); + term_t ai = t_desc->arg[1]; + add_store(a, b, ai); + *updates_present = true; + } + } } static @@ -1022,16 +999,26 @@ void uf_plugin_array_propagations(uf_plugin_t* uf, trail_token_t* prop) { init_ivector(&select_terms, 0); ivector_copy(&select_terms, uf->select_terms.data, uf->select_terms.size); ivector_remove_duplicates(&select_terms); - - //if (!uf_plugin_array_idx_lemma(uf, prop, &select_terms)) - // return; - ok = !uf_plugin_array_read_over_write_lemma(uf, prop, &array_terms, &select_terms); + bool updates_present = false; + uf_plugin_array_build_weak_eq_graph(uf, &array_terms, &updates_present); + if (updates_present) { + ok = uf_plugin_array_read_over_write_lemma(uf, prop, &array_terms, &select_terms); + } - if (!ok) { + if (ok) { uf_plugin_array_ext_lemma(uf, prop, &array_terms, &select_terms); } + if (uf->conflict.size > 0) { + // Report conflict + prop->conflict(prop); + (*uf->stats.conflicts) ++; + //ivector_copy(&uf->tmp, &uf->conflict, uf->conflict.size); + //uf_plugin_bump_terms_and_reset(uf, &uf->tmp); + statistic_avg_add(uf->stats.avg_conflict_size, uf->conflict.size); + } + delete_ivector(&select_terms); delete_ivector(&array_terms); } From 09af419334574e31ba7ba09f4c57c94334f6a4d5 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Thu, 26 Jan 2023 16:44:18 -0800 Subject: [PATCH 038/182] rm duplicates in array lemmas --- src/mcsat/uf/uf_plugin.c | 33 +++++++++++++++++++++++++-------- 1 file changed, 25 insertions(+), 8 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index 266a7ae33..d11e5b0c6 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -229,7 +229,6 @@ void clear_fun_node_map(ptr_hmap_t *m) { ptr_hmap_reset(m); } - static void uf_plugin_stats_init(uf_plugin_t* uf) { // Add statistics @@ -532,6 +531,12 @@ void uf_plugin_new_term_notify(plugin_t* plugin, term_t t, trail_token_t* prop) } } +static inline void add_if_not_true_term(ivector_t* vec, term_t t) { + if (t != true_term) { + ivector_push(vec, t); + } +} + static bool uf_plugin_array_idx_lemma(uf_plugin_t* uf, trail_token_t* prop, const ivector_t* array_terms) { @@ -550,7 +555,9 @@ bool uf_plugin_array_idx_lemma(uf_plugin_t* uf, trail_token_t* prop, !eq_graph_term_has_value(&uf->eq_graph, v)) continue; if (!eq_graph_are_equal(&uf->eq_graph, r, v)) { - ivector_push(&uf->conflict, _o_yices_neq(r, v)); + add_if_not_true_term(&uf->conflict, _o_yices_neq(r, v)); + ivector_remove_duplicates(&uf->conflict); + if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { ctx_trace_printf(uf->ctx, ">1 Array conflict 1 BEGIN\n"); for (k = 0; k < uf->conflict.size; ++ k) { @@ -767,10 +774,12 @@ bool uf_plugin_array_ext_lemma(uf_plugin_t* uf, trail_token_t* prop, //ivector_push(&uf->conflict, _o_yices_eq(arr2, arr2_rep)); } for (k = 0; k < cond.size; ++k) { - ivector_push(&uf->conflict, cond.data[k]); + add_if_not_true_term(&uf->conflict, cond.data[k]); } ivector_push(&uf->conflict, _o_yices_neq(arr1, arr2)); + ivector_remove_duplicates(&uf->conflict); + if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { ctx_trace_printf(uf->ctx, ">2 Array conflict BEGIN 2\n"); for (k = 0; k < uf->conflict.size; ++ k) { @@ -844,8 +853,10 @@ bool uf_plugin_array_ext_diff_lemma(uf_plugin_t* uf, trail_token_t* prop, if (!eq_graph_are_equal(&uf->eq_graph, arr1, arr2) && eq_graph_are_equal(&uf->eq_graph, diff_select1, diff_select2)) { - ivector_push(&uf->conflict, _o_yices_neq(arr1, arr2)); - ivector_push(&uf->conflict, _o_yices_eq(diff_select1, diff_select2)); + add_if_not_true_term(&uf->conflict, _o_yices_neq(arr1, arr2)); + add_if_not_true_term(&uf->conflict, _o_yices_eq(diff_select1, diff_select2)); + + ivector_remove_duplicates(&uf->conflict); if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { ctx_trace_printf(uf->ctx, ">2 Array conflict 2 BEGIN\n"); @@ -876,6 +887,7 @@ bool uf_plugin_array_read_over_write_lemma(uf_plugin_t* uf, trail_token_t* prop, // generalized read-over-write lemma for (i = 0; i < select_terms->size; ++ i) { term_t t_i = select_terms->data[i]; + type_t t_i_type = term_type(terms, t_i); composite_term_t* e_i_desc = app_term_desc(terms, t_i); if (!eq_graph_term_has_value(&uf->eq_graph, t_i) || !eq_graph_term_has_value(&uf->eq_graph, e_i_desc->arg[1])) { @@ -884,8 +896,10 @@ bool uf_plugin_array_read_over_write_lemma(uf_plugin_t* uf, trail_token_t* prop, for (j = 0; j < select_terms->size; ++ j) { term_t t_j = select_terms->data[j]; + type_t t_j_type = term_type(terms, t_j); composite_term_t* e_j_desc = app_term_desc(terms, t_j); if (t_i == t_j || + t_i_type != t_j_type || !eq_graph_term_has_value(&uf->eq_graph, t_j) || !eq_graph_term_has_value(&uf->eq_graph, e_j_desc->arg[1]) || !eq_graph_are_equal(&uf->eq_graph, e_i_desc->arg[1], e_j_desc->arg[1]) || @@ -907,9 +921,9 @@ bool uf_plugin_array_read_over_write_lemma(uf_plugin_t* uf, trail_token_t* prop, // found conflict assert(uf->conflict.size == 0); if (e_i_desc->arg[1] != e_j_desc->arg[1]) { - ivector_push(&uf->conflict, _o_yices_eq(e_i_desc->arg[1], e_j_desc->arg[1])); + add_if_not_true_term(&uf->conflict, _o_yices_eq(e_i_desc->arg[1], e_j_desc->arg[1])); } - ivector_push(&uf->conflict, _o_yices_neq(t_i, t_j)); + add_if_not_true_term(&uf->conflict, _o_yices_neq(t_i, t_j)); int_hset_close(&path_idx_set); bool ok = true; @@ -924,7 +938,8 @@ bool uf_plugin_array_read_over_write_lemma(uf_plugin_t* uf, trail_token_t* prop, break; } - ivector_push(&uf->conflict, _o_yices_neq(e_i_desc->arg[1], path_idx_set.data[k])); + add_if_not_true_term(&uf->conflict, + _o_yices_neq(e_i_desc->arg[1], path_idx_set.data[k])); } else { ok = false; break; @@ -936,6 +951,8 @@ bool uf_plugin_array_read_over_write_lemma(uf_plugin_t* uf, trail_token_t* prop, } if (uf->conflict.size > 0) { + ivector_remove_duplicates(&uf->conflict); + if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { ctx_trace_printf(uf->ctx, ">3 Array conflict BEGIN 3\n"); for (k = 0; k < uf->conflict.size; ++ k) { From 2a7977e15e5db4799590a88f793ecd943c70efd9 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Thu, 26 Jan 2023 17:22:23 -0800 Subject: [PATCH 039/182] weq graph fix --- src/mcsat/uf/uf_plugin.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index d11e5b0c6..e4105afca 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -163,7 +163,7 @@ static void make_rep_i(fun_node_t* n) { make_rep_i(n); } else { make_rep_i(n->s); - n->s->s = n->s; + n->s->s = n; n->s = NULL; } } @@ -188,11 +188,14 @@ static void add_secondary(int_array_hset_t* idx_set, fun_node_t* a, fun_node_t* bool rm_idx; rm_idx = false; + if (int_array_hset_find(idx_set, idx_set->size, &a->pi) == NULL) { + rm_idx = true; + } + if (int_array_hset_find(idx_set, idx_set->size, &a->pi) == NULL && get_rep_i(a, a->pi, NULL) != b) { make_rep_i(a); a->s = b; - rm_idx = true; } int_array_hset_get(idx_set, idx_set->size, &a->pi); From b6e42d83a73fb7d8a0af4dd2a4fa3506a6734046 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Fri, 27 Jan 2023 00:02:31 -0800 Subject: [PATCH 040/182] array lemmas: add equivalent conds --- src/mcsat/uf/uf_plugin.c | 138 ++++++++++++++++++++++----------------- 1 file changed, 78 insertions(+), 60 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index e4105afca..bd0f9345b 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -465,8 +465,7 @@ void uf_plugin_add_to_eq_graph(uf_plugin_t* uf, term_t t, bool record) { // remember array terms uint32_t i; for (i = 0; i < 2; ++ i) { - if (is_function_term(terms, t_desc->arg[i]) && - term_kind(terms, t_desc->arg[i]) == UNINTERPRETED_TERM) { + if (is_function_term(terms, t_desc->arg[i])) { //uf_plugin_add_diff_terms_vars(uf, t_desc->arg[i]); ivector_push(&uf->array_terms, t_desc->arg[i]); } @@ -544,7 +543,7 @@ static bool uf_plugin_array_idx_lemma(uf_plugin_t* uf, trail_token_t* prop, const ivector_t* array_terms) { term_table_t* terms = uf->ctx->terms; - uint32_t i, k; + uint32_t i; // array-idx lemma for (i = 0; i < array_terms->size; ++i) { @@ -559,10 +558,11 @@ bool uf_plugin_array_idx_lemma(uf_plugin_t* uf, trail_token_t* prop, continue; if (!eq_graph_are_equal(&uf->eq_graph, r, v)) { add_if_not_true_term(&uf->conflict, _o_yices_neq(r, v)); - ivector_remove_duplicates(&uf->conflict); + ivector_remove_duplicates(&uf->conflict); if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { ctx_trace_printf(uf->ctx, ">1 Array conflict 1 BEGIN\n"); + uint32_t k; for (k = 0; k < uf->conflict.size; ++ k) { ctx_trace_term(uf->ctx, uf->conflict.data[k]); } @@ -577,14 +577,14 @@ bool uf_plugin_array_idx_lemma(uf_plugin_t* uf, trail_token_t* prop, static bool uf_plugin_array_weak_eq_i(uf_plugin_t* uf, term_t arr1, term_t arr2, - term_t idx, ivector_t* indices) { + term_t idx, ivector_t* indices) { int_hset_t path_idx_set; init_int_hset(&path_idx_set, 0); const fun_node_t* fn_arr1 = get_rep_i(uf_plugin_get_fun_node(uf, arr1), - idx, &path_idx_set); + idx, &path_idx_set); const fun_node_t* fn_arr2 = get_rep_i(uf_plugin_get_fun_node(uf, arr2), - idx, &path_idx_set); + idx, &path_idx_set); assert(fn_arr1 != NULL); assert(fn_arr2 != NULL); @@ -641,8 +641,14 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, const ivector_t* select_ } } for (k =0; k < indices.size; ++k) { - ivector_push(cond, _o_yices_neq(idx, indices.data[k])); + add_if_not_true_term(cond, _o_yices_neq(idx, indices.data[k])); } + add_if_not_true_term(cond, + _o_yices_eq(arr1, + uf_plugin_get_fun_node(uf, arr1)->t)); + add_if_not_true_term(cond, + _o_yices_eq(arr2, + uf_plugin_get_fun_node(uf, arr2)->t)); return true; } @@ -651,6 +657,7 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, const ivector_t* select_ for (i = 0; !res && i < select_terms->size; ++ i) { term_t t_i = select_terms->data[i]; + type_t t_i_type = term_type(terms, t_i); if (!eq_graph_term_has_value(&uf->eq_graph, t_i)) { continue; } @@ -658,14 +665,16 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, const ivector_t* select_ composite_term_t* e_i_desc = app_term_desc(terms, t_i); if (!eq_graph_term_has_value(&uf->eq_graph, e_i_desc->arg[1]) || !eq_graph_are_equal(&uf->eq_graph, e_i_desc->arg[1], idx) || - !uf_plugin_array_weak_eq_i(uf, arr1, e_i_desc->arg[0], idx, &indices)) { + !uf_plugin_array_weak_eq_i(uf, arr1, e_i_desc->arg[0], idx, &indices)) { continue; } for (j = 0; !res && j < select_terms->size; ++ j) { term_t t_j = select_terms->data[j]; + type_t t_j_type = term_type(terms, t_j); if (t_i == t_j || - !eq_graph_term_has_value(&uf->eq_graph, t_j) || + t_i_type != t_j_type || + !eq_graph_term_has_value(&uf->eq_graph, t_j) || !eq_graph_are_equal(&uf->eq_graph, t_i, t_j)) { continue; } @@ -673,30 +682,38 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, const ivector_t* select_ composite_term_t* e_j_desc = app_term_desc(terms, t_j); if (!eq_graph_term_has_value(&uf->eq_graph, e_j_desc->arg[1]) || !eq_graph_are_equal(&uf->eq_graph, e_j_desc->arg[1], idx) || - !uf_plugin_array_weak_eq_i(uf, arr2, e_j_desc->arg[0], idx, &indices)) { + !uf_plugin_array_weak_eq_i(uf, arr2, e_j_desc->arg[0], idx, &indices)) { continue; } res = true; if (cond) { - // Conditions of arr1 weakly-eq-i to a and arr2 weakly-eq-i to b' - for (k = 0; k < indices.size; ++k) { - if (eq_graph_are_equal(&uf->eq_graph, indices.data[k], idx) || - eq_graph_are_equal(&uf->eq_graph, indices.data[k], e_i_desc->arg[1]) || - eq_graph_are_equal(&uf->eq_graph, indices.data[k], e_j_desc->arg[1])) { - res = false; - break; - } - } + // Conditions of arr1 weakly-eq-i to a and arr2 weakly-eq-i to b' + for (k = 0; k < indices.size; ++k) { + if (eq_graph_are_equal(&uf->eq_graph, indices.data[k], idx) || + eq_graph_are_equal(&uf->eq_graph, indices.data[k], e_i_desc->arg[1]) || + eq_graph_are_equal(&uf->eq_graph, indices.data[k], e_j_desc->arg[1])) { + res = false; + break; + } + } - if (res) { - for (k =0; k < indices.size; ++k) { - ivector_push(cond, _o_yices_neq(idx, indices.data[k])); - } - ivector_push(cond, _o_yices_eq(idx, e_i_desc->arg[1])); - ivector_push(cond, _o_yices_eq(t_i, t_j)); - ivector_push(cond, _o_yices_eq(idx, e_j_desc->arg[1])); - } + if (res) { + add_if_not_true_term(cond, _o_yices_eq(arr1, + uf_plugin_get_fun_node(uf, arr1)->t)); + add_if_not_true_term(cond, _o_yices_eq(arr2, + uf_plugin_get_fun_node(uf, arr2)->t)); + add_if_not_true_term(cond, _o_yices_eq(e_i_desc->arg[0], + uf_plugin_get_fun_node(uf, e_i_desc->arg[0])->t)); + add_if_not_true_term(cond, _o_yices_eq(e_j_desc->arg[0], + uf_plugin_get_fun_node(uf, e_j_desc->arg[0])->t)); + for (k =0; k < indices.size; ++k) { + add_if_not_true_term(cond, _o_yices_neq(idx, indices.data[k])); + } + add_if_not_true_term(cond, _o_yices_eq(idx, e_i_desc->arg[1])); + add_if_not_true_term(cond, _o_yices_eq(t_i, t_j)); + add_if_not_true_term(cond, _o_yices_eq(idx, e_j_desc->arg[1])); + } } } } @@ -723,29 +740,25 @@ bool uf_plugin_array_ext_lemma(uf_plugin_t* uf, trail_token_t* prop, for (i = 0; i < array_terms->size; ++i) { term_t arr1 = array_terms->data[i]; - term_t arr1_rep = eq_graph_term_get_rep(&uf->eq_graph, arr1); type_t arr1_type = term_type(terms, arr1); - if (!eq_graph_term_has_value(&uf->eq_graph, arr1) || - !eq_graph_term_has_value(&uf->eq_graph, arr1_rep)) { + if (!eq_graph_term_has_value(&uf->eq_graph, arr1)) { continue; } for (j = i + 1; j < array_terms->size; ++j) { term_t arr2 = array_terms->data[j]; - term_t arr2_rep = eq_graph_term_get_rep(&uf->eq_graph, arr2); type_t arr2_type = term_type(terms, arr2); if (arr1 == arr2 || arr1_type != arr2_type || !eq_graph_term_has_value(&uf->eq_graph, arr2) || - !eq_graph_term_has_value(&uf->eq_graph, arr2_rep) || - eq_graph_are_equal(&uf->eq_graph, arr1, arr2)) { + eq_graph_are_equal(&uf->eq_graph, arr1, arr2)) { continue; } int_hset_reset(&path_idx_set); const fun_node_t* fn_arr1 = get_rep(uf_plugin_get_fun_node(uf, arr1), - &path_idx_set); + &path_idx_set); const fun_node_t* fn_arr2 = get_rep(uf_plugin_get_fun_node(uf, arr2), - &path_idx_set); + &path_idx_set); if (fn_arr1 == fn_arr2) { int_hset_close(&path_idx_set); @@ -765,23 +778,19 @@ bool uf_plugin_array_ext_lemma(uf_plugin_t* uf, trail_token_t* prop, } if (ok) { - // [NOTE] we don't need Cond(P) -- condition on the path - if (arr1 != arr1_rep) { - ctx_trace_term(uf->ctx, arr1); - ctx_trace_term(uf->ctx, arr1_rep); - //ivector_push(&uf->conflict, _o_yices_eq(arr1, arr1_rep)); - } - if (arr2 != arr2_rep) { - ctx_trace_term(uf->ctx, arr2); - ctx_trace_term(uf->ctx, arr2_rep); - //ivector_push(&uf->conflict, _o_yices_eq(arr2, arr2_rep)); - } + add_if_not_true_term(&uf->conflict, + _o_yices_eq(arr1, + uf_plugin_get_fun_node(uf, arr1)->t)); + add_if_not_true_term(&uf->conflict, + _o_yices_eq(arr2, + uf_plugin_get_fun_node(uf, arr2)->t)); + for (k = 0; k < cond.size; ++k) { add_if_not_true_term(&uf->conflict, cond.data[k]); } ivector_push(&uf->conflict, _o_yices_neq(arr1, arr2)); - ivector_remove_duplicates(&uf->conflict); + ivector_remove_duplicates(&uf->conflict); if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { ctx_trace_printf(uf->ctx, ">2 Array conflict BEGIN 2\n"); @@ -859,7 +868,7 @@ bool uf_plugin_array_ext_diff_lemma(uf_plugin_t* uf, trail_token_t* prop, add_if_not_true_term(&uf->conflict, _o_yices_neq(arr1, arr2)); add_if_not_true_term(&uf->conflict, _o_yices_eq(diff_select1, diff_select2)); - ivector_remove_duplicates(&uf->conflict); + ivector_remove_duplicates(&uf->conflict); if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { ctx_trace_printf(uf->ctx, ">2 Array conflict 2 BEGIN\n"); @@ -902,7 +911,7 @@ bool uf_plugin_array_read_over_write_lemma(uf_plugin_t* uf, trail_token_t* prop, type_t t_j_type = term_type(terms, t_j); composite_term_t* e_j_desc = app_term_desc(terms, t_j); if (t_i == t_j || - t_i_type != t_j_type || + t_i_type != t_j_type || !eq_graph_term_has_value(&uf->eq_graph, t_j) || !eq_graph_term_has_value(&uf->eq_graph, e_j_desc->arg[1]) || !eq_graph_are_equal(&uf->eq_graph, e_i_desc->arg[1], e_j_desc->arg[1]) || @@ -923,11 +932,16 @@ bool uf_plugin_array_read_over_write_lemma(uf_plugin_t* uf, trail_token_t* prop, if (fn_i == fn_j) { // found conflict assert(uf->conflict.size == 0); - if (e_i_desc->arg[1] != e_j_desc->arg[1]) { - add_if_not_true_term(&uf->conflict, _o_yices_eq(e_i_desc->arg[1], e_j_desc->arg[1])); - } + add_if_not_true_term(&uf->conflict, + _o_yices_eq(e_i_desc->arg[0], + uf_plugin_get_fun_node(uf, e_i_desc->arg[0])->t)); + add_if_not_true_term(&uf->conflict, + _o_yices_eq(e_j_desc->arg[0], + uf_plugin_get_fun_node(uf, e_j_desc->arg[0])->t)); + + add_if_not_true_term(&uf->conflict, _o_yices_eq(e_i_desc->arg[1], e_j_desc->arg[1])); add_if_not_true_term(&uf->conflict, _o_yices_neq(t_i, t_j)); - + int_hset_close(&path_idx_set); bool ok = true; uint32_t k; @@ -940,7 +954,7 @@ bool uf_plugin_array_read_over_write_lemma(uf_plugin_t* uf, trail_token_t* prop, ok = false; break; } - + add_if_not_true_term(&uf->conflict, _o_yices_neq(e_i_desc->arg[1], path_idx_set.data[k])); } else { @@ -978,7 +992,7 @@ bool uf_plugin_array_read_over_write_lemma(uf_plugin_t* uf, trail_token_t* prop, static void uf_plugin_array_build_weak_eq_graph(uf_plugin_t* uf, const ivector_t* array_terms, - bool* updates_present) { + bool* updates_present) { term_table_t* terms = uf->ctx->terms; uint32_t i; *updates_present = false; @@ -1020,10 +1034,14 @@ void uf_plugin_array_propagations(uf_plugin_t* uf, trail_token_t* prop) { ivector_copy(&select_terms, uf->select_terms.data, uf->select_terms.size); ivector_remove_duplicates(&select_terms); - bool updates_present = false; - uf_plugin_array_build_weak_eq_graph(uf, &array_terms, &updates_present); - if (updates_present) { - ok = uf_plugin_array_read_over_write_lemma(uf, prop, &array_terms, &select_terms); + ok = uf_plugin_array_idx_lemma(uf, prop, &array_terms); + + if (ok) { + bool updates_present = false; + uf_plugin_array_build_weak_eq_graph(uf, &array_terms, &updates_present); + if (updates_present) { + ok = uf_plugin_array_read_over_write_lemma(uf, prop, &array_terms, &select_terms); + } } if (ok) { From f2ac023d0c7645cf6e3bea6d2ecd1823e5b00134 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Fri, 27 Jan 2023 18:26:43 -0800 Subject: [PATCH 041/182] weq-graph: made few functions non-recursive --- src/mcsat/uf/uf_plugin.c | 69 ++++++++++++++++++---------------------- 1 file changed, 31 insertions(+), 38 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index bd0f9345b..58b4cc7c0 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -122,35 +122,38 @@ static inline fun_node_t *new_node() { } static const fun_node_t* get_rep(const fun_node_t* n, int_hset_t* path_idx_set) { - if (n->p == NULL) { - return n; - } + fun_node_t* res = n; - if (path_idx_set != NULL) { - int_hset_add(path_idx_set, n->pi); + while (res->p != NULL) { + //store indices + if (path_idx_set != NULL) { + int_hset_add(path_idx_set, res->pi); + } + res = res->p; } - return get_rep(n->p, path_idx_set); + return res; } static const fun_node_t* get_rep_i(const fun_node_t* n, const term_t idx, int_hset_t* path_idx_set) { - if (n->p == NULL) { - return n; - } + fun_node_t* res = n; - if (n->pi != idx) { - // record indices - if (path_idx_set) { - int_hset_add(path_idx_set, n->pi); + while (res->p != NULL) { + if (res->pi == idx) { + if (res->s == NULL) { + break; + } + res = res->s; + } else { + // record indices + if (path_idx_set) { + int_hset_add(path_idx_set, res->pi); + } + res = res->p; } - return get_rep_i(n->p, idx, path_idx_set); } - if (n->s == NULL) { - return n; - } - - return get_rep_i(n->s, idx, path_idx_set); + return res; } static void make_rep_i(fun_node_t* n) { @@ -182,26 +185,16 @@ static void make_rep(fun_node_t* n) { } static void add_secondary(int_array_hset_t* idx_set, fun_node_t* a, fun_node_t* b) { - if (a == b) { - return; - } - - bool rm_idx; - rm_idx = false; - if (int_array_hset_find(idx_set, idx_set->size, &a->pi) == NULL) { - rm_idx = true; - } + fun_node_t* n = a; - if (int_array_hset_find(idx_set, idx_set->size, &a->pi) == NULL && - get_rep_i(a, a->pi, NULL) != b) { - make_rep_i(a); - a->s = b; - } - - int_array_hset_get(idx_set, idx_set->size, &a->pi); - add_secondary(idx_set, a->p, b); - if (rm_idx) { - int_array_hset_remove(idx_set, idx_set->size, &a->pi); + while (n != b) { + if (int_array_hset_find(idx_set, idx_set->size, &n->pi) == NULL && + get_rep_i(n, n->pi, NULL) != b) { + make_rep_i(n); + n->s = b; + } + int_array_hset_get(idx_set, idx_set->size, &a->pi); + n = n->p; } } From 900aa7b48b4edc2f34f921d4405e281cce87bca6 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Mon, 30 Jan 2023 11:37:40 -0800 Subject: [PATCH 042/182] use eq_graph in weq reasoning --- src/mcsat/uf/uf_plugin.c | 76 +++++++++++++++++++++++----------------- 1 file changed, 43 insertions(+), 33 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index 58b4cc7c0..37edc71aa 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -121,8 +121,8 @@ static inline fun_node_t *new_node() { return n; } -static const fun_node_t* get_rep(const fun_node_t* n, int_hset_t* path_idx_set) { - fun_node_t* res = n; +static const fun_node_t* get_rep(const eq_graph_t* eq_graph, const fun_node_t* n, int_hset_t* path_idx_set) { + const fun_node_t* res = n; while (res->p != NULL) { //store indices @@ -135,11 +135,11 @@ static const fun_node_t* get_rep(const fun_node_t* n, int_hset_t* path_idx_set) return res; } -static const fun_node_t* get_rep_i(const fun_node_t* n, const term_t idx, int_hset_t* path_idx_set) { - fun_node_t* res = n; +static const fun_node_t* get_rep_i(const eq_graph_t* eq_graph, const fun_node_t* n, const term_t idx, int_hset_t* path_idx_set) { + const fun_node_t* res = n; while (res->p != NULL) { - if (res->pi == idx) { + if (eq_graph_are_equal(eq_graph, res->pi, idx)) { if (res->s == NULL) { break; } @@ -156,59 +156,59 @@ static const fun_node_t* get_rep_i(const fun_node_t* n, const term_t idx, int_hs return res; } -static void make_rep_i(fun_node_t* n) { +static void make_rep_i(const eq_graph_t* eq_graph, fun_node_t* n) { if (n->s == NULL) { return; } - if (n->s->pi != n->pi) { + if (!eq_graph_are_equal(eq_graph, n->s->pi, n->pi)) { n->s = n->s->p; - make_rep_i(n); + make_rep_i(eq_graph, n); } else { - make_rep_i(n->s); + make_rep_i(eq_graph, n->s); n->s->s = n; n->s = NULL; } } -static void make_rep(fun_node_t* n) { +static void make_rep(const eq_graph_t* eq_graph, fun_node_t* n) { if (n->p == NULL) { return; } - make_rep(n->p); + make_rep(eq_graph, n->p); // invert primary edge n->p->p = n; n->p->pi = n->pi; n->p = NULL; - make_rep_i(n); + make_rep_i(eq_graph, n); } -static void add_secondary(int_array_hset_t* idx_set, fun_node_t* a, fun_node_t* b) { - fun_node_t* n = a; +static void add_secondary(const eq_graph_t* eq_graph, int_array_hset_t* idx_set, fun_node_t* a, fun_node_t* b) { + fun_node_t* n = b; - while (n != b) { + while (n != a) { if (int_array_hset_find(idx_set, idx_set->size, &n->pi) == NULL && - get_rep_i(n, n->pi, NULL) != b) { - make_rep_i(n); - n->s = b; + get_rep_i(eq_graph, n, n->pi, NULL) != a) { + make_rep_i(eq_graph, n); + n->s = a; } - int_array_hset_get(idx_set, idx_set->size, &a->pi); + int_array_hset_get(idx_set, idx_set->size, &b->pi); n = n->p; } } -static void add_store(fun_node_t* a, fun_node_t* b, term_t idx) { - make_rep(b); - if (get_rep(a, NULL) == b) { +static void add_store(const eq_graph_t* eq_graph, fun_node_t* a, fun_node_t* b, term_t idx) { + make_rep(eq_graph, a); + if (get_rep(eq_graph, b, NULL) == a) { int_array_hset_t s; init_int_array_hset(&s, 0); int_array_hset_get(&s, s.size, &idx); - add_secondary(&s, a, b); + add_secondary(eq_graph, &s, a, b); delete_int_array_hset(&s); } else { - b->p = a; - b->pi = idx; + a->p = b; + a->pi = idx; } } @@ -438,7 +438,15 @@ void uf_plugin_add_to_eq_graph(uf_plugin_t* uf, term_t t, bool record) { //uf_plugin_add_diff_terms_vars(uf, t); t_desc = update_term_desc(terms, t); eq_graph_add_ifun_term(&uf->eq_graph, t, UPDATE_TERM, t_desc->arity, t_desc->arg); + // remember array term ivector_push(&uf->array_terms, t); + // remember select terms + term_t r1 = app_term(terms, t, t_desc->arity - 2, t_desc->arg + 1); + variable_db_get_variable(uf->ctx->var_db, r1); + ivector_push(&uf->select_terms, r1); + term_t r2 = app_term(terms, t_desc->arg[0], t_desc->arity - 2, t_desc->arg + 1); + variable_db_get_variable(uf->ctx->var_db, r2); + ivector_push(&uf->select_terms, r2); break; case ARITH_RDIV: t_desc = arith_rdiv_term_desc(terms, t); @@ -574,9 +582,9 @@ bool uf_plugin_array_weak_eq_i(uf_plugin_t* uf, term_t arr1, term_t arr2, int_hset_t path_idx_set; init_int_hset(&path_idx_set, 0); - const fun_node_t* fn_arr1 = get_rep_i(uf_plugin_get_fun_node(uf, arr1), + const fun_node_t* fn_arr1 = get_rep_i(&uf->eq_graph, uf_plugin_get_fun_node(uf, arr1), idx, &path_idx_set); - const fun_node_t* fn_arr2 = get_rep_i(uf_plugin_get_fun_node(uf, arr2), + const fun_node_t* fn_arr2 = get_rep_i(&uf->eq_graph, uf_plugin_get_fun_node(uf, arr2), idx, &path_idx_set); assert(fn_arr1 != NULL); assert(fn_arr2 != NULL); @@ -748,9 +756,9 @@ bool uf_plugin_array_ext_lemma(uf_plugin_t* uf, trail_token_t* prop, } int_hset_reset(&path_idx_set); - const fun_node_t* fn_arr1 = get_rep(uf_plugin_get_fun_node(uf, arr1), + const fun_node_t* fn_arr1 = get_rep(&uf->eq_graph, uf_plugin_get_fun_node(uf, arr1), &path_idx_set); - const fun_node_t* fn_arr2 = get_rep(uf_plugin_get_fun_node(uf, arr2), + const fun_node_t* fn_arr2 = get_rep(&uf->eq_graph, uf_plugin_get_fun_node(uf, arr2), &path_idx_set); if (fn_arr1 == fn_arr2) { @@ -914,11 +922,13 @@ bool uf_plugin_array_read_over_write_lemma(uf_plugin_t* uf, trail_token_t* prop, int_hset_reset(&path_idx_set); const fun_node_t* fn_i = - get_rep_i(uf_plugin_get_fun_node(uf, e_i_desc->arg[0]), e_i_desc->arg[1], + get_rep_i(&uf->eq_graph, uf_plugin_get_fun_node(uf, e_i_desc->arg[0]), + e_i_desc->arg[1], &path_idx_set); const fun_node_t* fn_j = - get_rep_i(uf_plugin_get_fun_node(uf, e_j_desc->arg[0]), e_i_desc->arg[1], - &path_idx_set); + get_rep_i(&uf->eq_graph, uf_plugin_get_fun_node(uf, e_j_desc->arg[0]), + e_i_desc->arg[1], + &path_idx_set); assert(fn_i != NULL); assert(fn_j != NULL); @@ -1006,7 +1016,7 @@ void uf_plugin_array_build_weak_eq_graph(uf_plugin_t* uf, const ivector_t* array composite_term_t* t_desc = update_term_desc(terms, t); fun_node_t *a = uf_plugin_get_fun_node(uf, t_desc->arg[0]); term_t ai = t_desc->arg[1]; - add_store(a, b, ai); + add_store(&uf->eq_graph, a, b, ai); *updates_present = true; } } From a3bf97f18aa36bdfe0de5e2f07eab947ef7bea4f Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Mon, 30 Jan 2023 15:06:39 -0800 Subject: [PATCH 043/182] weq: fix add_store, add_secondary --- src/mcsat/uf/uf_plugin.c | 27 ++++++++++++++++----------- 1 file changed, 16 insertions(+), 11 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index 37edc71aa..511c094b3 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -185,30 +185,30 @@ static void make_rep(const eq_graph_t* eq_graph, fun_node_t* n) { } static void add_secondary(const eq_graph_t* eq_graph, int_array_hset_t* idx_set, fun_node_t* a, fun_node_t* b) { - fun_node_t* n = b; + fun_node_t* n = a; while (n != a) { if (int_array_hset_find(idx_set, idx_set->size, &n->pi) == NULL && - get_rep_i(eq_graph, n, n->pi, NULL) != a) { + get_rep_i(eq_graph, n, n->pi, NULL) != b) { make_rep_i(eq_graph, n); n->s = a; } - int_array_hset_get(idx_set, idx_set->size, &b->pi); + int_array_hset_get(idx_set, idx_set->size, &a->pi); n = n->p; } } static void add_store(const eq_graph_t* eq_graph, fun_node_t* a, fun_node_t* b, term_t idx) { - make_rep(eq_graph, a); - if (get_rep(eq_graph, b, NULL) == a) { + make_rep(eq_graph, b); + if (get_rep(eq_graph, a, NULL) == b) { int_array_hset_t s; init_int_array_hset(&s, 0); int_array_hset_get(&s, s.size, &idx); add_secondary(eq_graph, &s, a, b); delete_int_array_hset(&s); } else { - a->p = b; - a->pi = idx; + b->p = a; + b->pi = idx; } } @@ -559,7 +559,6 @@ bool uf_plugin_array_idx_lemma(uf_plugin_t* uf, trail_token_t* prop, continue; if (!eq_graph_are_equal(&uf->eq_graph, r, v)) { add_if_not_true_term(&uf->conflict, _o_yices_neq(r, v)); - ivector_remove_duplicates(&uf->conflict); if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { ctx_trace_printf(uf->ctx, ">1 Array conflict 1 BEGIN\n"); @@ -793,6 +792,8 @@ bool uf_plugin_array_ext_lemma(uf_plugin_t* uf, trail_token_t* prop, ivector_remove_duplicates(&uf->conflict); + assert(uf->conflict.size > 1); + if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { ctx_trace_printf(uf->ctx, ">2 Array conflict BEGIN 2\n"); for (k = 0; k < uf->conflict.size; ++ k) { @@ -871,6 +872,8 @@ bool uf_plugin_array_ext_diff_lemma(uf_plugin_t* uf, trail_token_t* prop, ivector_remove_duplicates(&uf->conflict); + assert(uf->conflict.size > 1); + if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { ctx_trace_printf(uf->ctx, ">2 Array conflict 2 BEGIN\n"); for (k = 0; k < uf->conflict.size; ++ k) { @@ -923,12 +926,12 @@ bool uf_plugin_array_read_over_write_lemma(uf_plugin_t* uf, trail_token_t* prop, int_hset_reset(&path_idx_set); const fun_node_t* fn_i = get_rep_i(&uf->eq_graph, uf_plugin_get_fun_node(uf, e_i_desc->arg[0]), - e_i_desc->arg[1], + e_i_desc->arg[1], &path_idx_set); const fun_node_t* fn_j = get_rep_i(&uf->eq_graph, uf_plugin_get_fun_node(uf, e_j_desc->arg[0]), - e_i_desc->arg[1], - &path_idx_set); + e_i_desc->arg[1], + &path_idx_set); assert(fn_i != NULL); assert(fn_j != NULL); @@ -973,6 +976,8 @@ bool uf_plugin_array_read_over_write_lemma(uf_plugin_t* uf, trail_token_t* prop, if (uf->conflict.size > 0) { ivector_remove_duplicates(&uf->conflict); + assert(uf->conflict.size > 1); + if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { ctx_trace_printf(uf->ctx, ">3 Array conflict BEGIN 3\n"); for (k = 0; k < uf->conflict.size; ++ k) { From 254f9644f43fe6aff028eb2b0c245f34a5f012f2 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Mon, 30 Jan 2023 15:23:32 -0800 Subject: [PATCH 044/182] typo --- src/mcsat/uf/uf_plugin.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index 511c094b3..0f51da5e1 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -191,7 +191,7 @@ static void add_secondary(const eq_graph_t* eq_graph, int_array_hset_t* idx_set, if (int_array_hset_find(idx_set, idx_set->size, &n->pi) == NULL && get_rep_i(eq_graph, n, n->pi, NULL) != b) { make_rep_i(eq_graph, n); - n->s = a; + n->s = b; } int_array_hset_get(idx_set, idx_set->size, &a->pi); n = n->p; From 3706907ab23c61f57bb4a06a5a18ad4544856f5d Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Mon, 30 Jan 2023 19:41:58 -0800 Subject: [PATCH 045/182] example from the weqa paper --- tests/regress/mcsat/ax/example_weqa.smt2 | 15 +++++++++++++++ tests/regress/mcsat/ax/example_weqa.smt2.gold | 1 + tests/regress/mcsat/ax/example_weqa.smt2.options | 1 + 3 files changed, 17 insertions(+) create mode 100644 tests/regress/mcsat/ax/example_weqa.smt2 create mode 100644 tests/regress/mcsat/ax/example_weqa.smt2.gold create mode 100644 tests/regress/mcsat/ax/example_weqa.smt2.options diff --git a/tests/regress/mcsat/ax/example_weqa.smt2 b/tests/regress/mcsat/ax/example_weqa.smt2 new file mode 100644 index 000000000..21e9df0d9 --- /dev/null +++ b/tests/regress/mcsat/ax/example_weqa.smt2 @@ -0,0 +1,15 @@ +(set-logic QF_AX) +(declare-sort Element 0) +(declare-sort Index 0) +(declare-fun i () Index) +(declare-fun j () Index) +(declare-fun a () (Array Index Element)) +(declare-fun b () (Array Index Element)) +(declare-fun c () (Array Index Element)) +(declare-fun v () Element) +(declare-fun w () Element) +(assert (= b (store a i v))) +(assert (= c (store a j w))) +(assert (not (= i j))) +(assert (not (= (store b j w) (store c i v)))) +(check-sat) diff --git a/tests/regress/mcsat/ax/example_weqa.smt2.gold b/tests/regress/mcsat/ax/example_weqa.smt2.gold new file mode 100644 index 000000000..3f65111b0 --- /dev/null +++ b/tests/regress/mcsat/ax/example_weqa.smt2.gold @@ -0,0 +1 @@ +unsat diff --git a/tests/regress/mcsat/ax/example_weqa.smt2.options b/tests/regress/mcsat/ax/example_weqa.smt2.options new file mode 100644 index 000000000..bcf7e6dae --- /dev/null +++ b/tests/regress/mcsat/ax/example_weqa.smt2.options @@ -0,0 +1 @@ +--mcsat From fa93086595266f06dd610d48bbbb69b9449ab9af Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Mon, 30 Jan 2023 21:01:55 -0800 Subject: [PATCH 046/182] cleanup --- src/mcsat/uf/uf_plugin.c | 52 ++++++++++++++++++++-------------------- 1 file changed, 26 insertions(+), 26 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index 0f51da5e1..a4e8846ed 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -469,6 +469,8 @@ void uf_plugin_add_to_eq_graph(uf_plugin_t* uf, term_t t, bool record) { if (is_function_term(terms, t_desc->arg[i])) { //uf_plugin_add_diff_terms_vars(uf, t_desc->arg[i]); ivector_push(&uf->array_terms, t_desc->arg[i]); + } else if (term_kind(terms, t_desc->arg[i]) == APP_TERM) { + ivector_push(&uf->select_terms, t_desc->arg[i]); } } break; @@ -625,6 +627,9 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, const ivector_t* select_ term_t idx, ivector_t* cond) { assert(eq_graph_term_has_value(&uf->eq_graph, idx)); + bool res = false; + term_table_t* terms = uf->ctx->terms; + ivector_t indices; uint32_t i, j, k; uint32_t cond_old_size; @@ -637,7 +642,7 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, const ivector_t* select_ if (uf_plugin_array_weak_eq_i(uf, arr1, arr2, idx, &indices)) { for (k =0; k < indices.size; ++k) { if (eq_graph_are_equal(&uf->eq_graph, idx, indices.data[k])) { - return false; + goto nextcheck; } } for (k =0; k < indices.size; ++k) { @@ -652,20 +657,21 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, const ivector_t* select_ return true; } - bool res = false; - term_table_t* terms = uf->ctx->terms; - + nextcheck: for (i = 0; !res && i < select_terms->size; ++ i) { term_t t_i = select_terms->data[i]; type_t t_i_type = term_type(terms, t_i); + assert(variable_db_get_variable_if_exists(uf->ctx->var_db, t_i) != variable_null); if (!eq_graph_term_has_value(&uf->eq_graph, t_i)) { continue; } + ivector_shrink(&indices, 0); composite_term_t* e_i_desc = app_term_desc(terms, t_i); if (!eq_graph_term_has_value(&uf->eq_graph, e_i_desc->arg[1]) || !eq_graph_are_equal(&uf->eq_graph, e_i_desc->arg[1], idx) || !uf_plugin_array_weak_eq_i(uf, arr1, e_i_desc->arg[0], idx, &indices)) { + assert(indices.size == 0); continue; } @@ -690,9 +696,7 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, const ivector_t* select_ if (cond) { // Conditions of arr1 weakly-eq-i to a and arr2 weakly-eq-i to b' for (k = 0; k < indices.size; ++k) { - if (eq_graph_are_equal(&uf->eq_graph, indices.data[k], idx) || - eq_graph_are_equal(&uf->eq_graph, indices.data[k], e_i_desc->arg[1]) || - eq_graph_are_equal(&uf->eq_graph, indices.data[k], e_j_desc->arg[1])) { + if (eq_graph_are_equal(&uf->eq_graph, indices.data[k], idx)) { res = false; break; } @@ -741,6 +745,7 @@ bool uf_plugin_array_ext_lemma(uf_plugin_t* uf, trail_token_t* prop, for (i = 0; i < array_terms->size; ++i) { term_t arr1 = array_terms->data[i]; type_t arr1_type = term_type(terms, arr1); + assert(variable_db_get_variable_if_exists(uf->ctx->var_db, arr1) != variable_null); if (!eq_graph_term_has_value(&uf->eq_graph, arr1)) { continue; } @@ -769,6 +774,8 @@ bool uf_plugin_array_ext_lemma(uf_plugin_t* uf, trail_token_t* prop, break; } } + + ivector_shrink(&cond, 0); for (k = 0; ok && k < path_idx_set.nelems; ++ k) { if (!uf_plugin_array_weak_congruence_i(uf, select_terms, arr1, arr2, path_idx_set.data[k], &cond)) { @@ -824,6 +831,7 @@ bool uf_plugin_array_ext_diff_lemma(uf_plugin_t* uf, trail_token_t* prop, // array-ext lemma for (i = 0; i < array_terms->size; ++i) { term_t arr1 = array_terms->data[i]; + assert(variable_db_get_variable_if_exists(uf->ctx->var_db, arr1) != variable_null); if (!eq_graph_term_has_value(&uf->eq_graph, arr1)) { continue; } @@ -904,6 +912,7 @@ bool uf_plugin_array_read_over_write_lemma(uf_plugin_t* uf, trail_token_t* prop, for (i = 0; i < select_terms->size; ++ i) { term_t t_i = select_terms->data[i]; type_t t_i_type = term_type(terms, t_i); + assert(variable_db_get_variable_if_exists(uf->ctx->var_db, t_i) != variable_null); composite_term_t* e_i_desc = app_term_desc(terms, t_i); if (!eq_graph_term_has_value(&uf->eq_graph, t_i) || !eq_graph_term_has_value(&uf->eq_graph, e_i_desc->arg[1])) { @@ -926,12 +935,10 @@ bool uf_plugin_array_read_over_write_lemma(uf_plugin_t* uf, trail_token_t* prop, int_hset_reset(&path_idx_set); const fun_node_t* fn_i = get_rep_i(&uf->eq_graph, uf_plugin_get_fun_node(uf, e_i_desc->arg[0]), - e_i_desc->arg[1], - &path_idx_set); + e_i_desc->arg[1], &path_idx_set); const fun_node_t* fn_j = get_rep_i(&uf->eq_graph, uf_plugin_get_fun_node(uf, e_j_desc->arg[0]), - e_i_desc->arg[1], - &path_idx_set); + e_i_desc->arg[1], &path_idx_set); assert(fn_i != NULL); assert(fn_j != NULL); @@ -952,28 +959,21 @@ bool uf_plugin_array_read_over_write_lemma(uf_plugin_t* uf, trail_token_t* prop, bool ok = true; uint32_t k; for (k = 0; k < path_idx_set.nelems; ++ k) { - if (path_idx_set.data[k] != e_i_desc->arg[1] && - path_idx_set.data[k] != e_j_desc->arg[1]) { - if (!eq_graph_term_has_value(&uf->eq_graph, path_idx_set.data[k]) || - eq_graph_are_equal(&uf->eq_graph, - e_i_desc->arg[1], path_idx_set.data[k])) { - ok = false; - break; - } - - add_if_not_true_term(&uf->conflict, - _o_yices_neq(e_i_desc->arg[1], path_idx_set.data[k])); - } else { + assert(path_idx_set.data[k] != e_i_desc->arg[1]); + if (!eq_graph_term_has_value(&uf->eq_graph, path_idx_set.data[k]) || + eq_graph_are_equal(&uf->eq_graph, + e_i_desc->arg[1], path_idx_set.data[k])) { ok = false; break; } + + add_if_not_true_term(&uf->conflict, + _o_yices_neq(e_i_desc->arg[1], path_idx_set.data[k])); } if (!ok) { ivector_reset(&uf->conflict); - } - - if (uf->conflict.size > 0) { + } else { ivector_remove_duplicates(&uf->conflict); assert(uf->conflict.size > 1); From 719113de26b7feef5d6dbcc65830e4b8ae445560 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Tue, 31 Jan 2023 00:29:15 -0800 Subject: [PATCH 047/182] use ufun for update_terms; check value assignment before doing weq reasoning --- src/mcsat/uf/uf_plugin.c | 48 +++++++++++++++++++++++++++++++++++----- 1 file changed, 43 insertions(+), 5 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index a4e8846ed..ddfbc7f00 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -141,13 +141,13 @@ static const fun_node_t* get_rep_i(const eq_graph_t* eq_graph, const fun_node_t* while (res->p != NULL) { if (eq_graph_are_equal(eq_graph, res->pi, idx)) { if (res->s == NULL) { - break; + break; } res = res->s; } else { // record indices if (path_idx_set) { - int_hset_add(path_idx_set, res->pi); + int_hset_add(path_idx_set, res->pi); } res = res->p; } @@ -189,7 +189,7 @@ static void add_secondary(const eq_graph_t* eq_graph, int_array_hset_t* idx_set, while (n != a) { if (int_array_hset_find(idx_set, idx_set->size, &n->pi) == NULL && - get_rep_i(eq_graph, n, n->pi, NULL) != b) { + get_rep_i(eq_graph, n, n->pi, NULL) != b) { make_rep_i(eq_graph, n); n->s = b; } @@ -437,7 +437,7 @@ void uf_plugin_add_to_eq_graph(uf_plugin_t* uf, term_t t, bool record) { case UPDATE_TERM: //uf_plugin_add_diff_terms_vars(uf, t); t_desc = update_term_desc(terms, t); - eq_graph_add_ifun_term(&uf->eq_graph, t, UPDATE_TERM, t_desc->arity, t_desc->arg); + eq_graph_add_ufun_term(&uf->eq_graph, t, t, t_desc->arity, t_desc->arg); // remember array term ivector_push(&uf->array_terms, t); // remember select terms @@ -470,7 +470,7 @@ void uf_plugin_add_to_eq_graph(uf_plugin_t* uf, term_t t, bool record) { //uf_plugin_add_diff_terms_vars(uf, t_desc->arg[i]); ivector_push(&uf->array_terms, t_desc->arg[i]); } else if (term_kind(terms, t_desc->arg[i]) == APP_TERM) { - ivector_push(&uf->select_terms, t_desc->arg[i]); + ivector_push(&uf->select_terms, t_desc->arg[i]); } } break; @@ -703,6 +703,15 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, const ivector_t* select_ } if (res) { + assert(eq_graph_term_has_value(&uf->eq_graph, arr1)); + assert(eq_graph_term_has_value(&uf->eq_graph, uf_plugin_get_fun_node(uf, arr1)->t)); + assert(eq_graph_term_has_value(&uf->eq_graph, arr2)); + assert(eq_graph_term_has_value(&uf->eq_graph, uf_plugin_get_fun_node(uf, arr2)->t)); + assert(eq_graph_are_equal(&uf->eq_graph, arr1, + uf_plugin_get_fun_node(uf, arr1)->t)); + assert(eq_graph_are_equal(&uf->eq_graph, arr2, + uf_plugin_get_fun_node(uf, arr2)->t)); + add_if_not_true_term(cond, _o_yices_eq(arr1, uf_plugin_get_fun_node(uf, arr1)->t)); add_if_not_true_term(cond, _o_yices_eq(arr2, @@ -792,6 +801,15 @@ bool uf_plugin_array_ext_lemma(uf_plugin_t* uf, trail_token_t* prop, _o_yices_eq(arr2, uf_plugin_get_fun_node(uf, arr2)->t)); + assert(eq_graph_term_has_value(&uf->eq_graph, arr1)); + assert(eq_graph_term_has_value(&uf->eq_graph, uf_plugin_get_fun_node(uf, arr1)->t)); + assert(eq_graph_term_has_value(&uf->eq_graph, arr2)); + assert(eq_graph_term_has_value(&uf->eq_graph, uf_plugin_get_fun_node(uf, arr2)->t)); + assert(eq_graph_are_equal(&uf->eq_graph, arr1, + uf_plugin_get_fun_node(uf, arr1)->t)); + assert(eq_graph_are_equal(&uf->eq_graph, arr2, + uf_plugin_get_fun_node(uf, arr2)->t)); + for (k = 0; k < cond.size; ++k) { add_if_not_true_term(&uf->conflict, cond.data[k]); } @@ -1044,6 +1062,26 @@ void uf_plugin_array_propagations(uf_plugin_t* uf, trail_token_t* prop) { ok = uf_plugin_array_idx_lemma(uf, prop, &array_terms); + // check if all the revlevant terms have an assigned value + uint32_t i; + term_table_t* terms = uf->ctx->terms; + composite_term_t* t_desc = NULL; + for (i = 0; ok && i < array_terms.size; ++i) { + if (!eq_graph_term_has_value(&uf->eq_graph, array_terms.data[i])) { + ok = false; + } + } + for (i = 0; ok && i < select_terms.size; ++i) { + if (!eq_graph_term_has_value(&uf->eq_graph, select_terms.data[i])) { + ok = false; + } else { + t_desc = app_term_desc(terms, select_terms.data[i]); + if (!eq_graph_term_has_value(&uf->eq_graph, t_desc->arg[1])) { + ok = false; + } + } + } + if (ok) { bool updates_present = false; uf_plugin_array_build_weak_eq_graph(uf, &array_terms, &updates_present); From 29f2788caaa6df9238f021ac46dba1adc044c9b7 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Wed, 1 Feb 2023 09:50:12 -0800 Subject: [PATCH 048/182] add experimental diff fun array ext --- src/mcsat/uf/uf_plugin.c | 201 ++++++++++++++++++++++++--------------- 1 file changed, 126 insertions(+), 75 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index ddfbc7f00..c6162daab 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -43,6 +43,8 @@ #define DECIDE_FUNCTION_VALUE_START UINT32_MAX/64 +#define USE_ARRAY_DIFF 0 //experimental + typedef struct { /** The plugin interface */ @@ -69,6 +71,9 @@ typedef struct { /** Array terms */ ivector_t array_terms; + /** Array eq terms */ + ivector_t array_eq_terms; + /** Select terms */ ivector_t select_terms; @@ -281,6 +286,7 @@ void uf_plugin_construct(plugin_t* plugin, plugin_context_t* ctx) { init_ivector(&uf->eq_graph_addition_trail, 0); init_ivector(&uf->array_terms, 0); + init_ivector(&uf->array_eq_terms, 0); init_ivector(&uf->select_terms, 0); init_int_hmap(&uf->type_to_diff, 0); @@ -301,6 +307,7 @@ void uf_plugin_destruct(plugin_t* plugin) { eq_graph_destruct(&uf->eq_graph); delete_ivector(&uf->eq_graph_addition_trail); delete_ivector(&uf->array_terms); + delete_ivector(&uf->array_eq_terms); delete_ivector(&uf->select_terms); delete_int_hmap(&uf->type_to_diff); @@ -432,10 +439,14 @@ void uf_plugin_add_to_eq_graph(uf_plugin_t* uf, term_t t, bool record) { case APP_TERM: t_desc = app_term_desc(terms, t); eq_graph_add_ufun_term(&uf->eq_graph, t, t_desc->arg[0], t_desc->arity - 1, t_desc->arg + 1); - ivector_push(&uf->select_terms, t); + if (!int_hset_member(&uf->diff_funs, t_desc->arg[0])) { + ivector_push(&uf->select_terms, t); + } break; case UPDATE_TERM: - //uf_plugin_add_diff_terms_vars(uf, t); + if (USE_ARRAY_DIFF) { + uf_plugin_add_diff_terms_vars(uf, t); + } t_desc = update_term_desc(terms, t); eq_graph_add_ufun_term(&uf->eq_graph, t, t, t_desc->arity, t_desc->arg); // remember array term @@ -464,13 +475,16 @@ void uf_plugin_add_to_eq_graph(uf_plugin_t* uf, term_t t, bool record) { t_desc = eq_term_desc(terms, t); eq_graph_add_ifun_term(&uf->eq_graph, t, EQ_TERM, 2, t_desc->arg); // remember array terms + if (is_function_term(terms, t_desc->arg[0])) { + ivector_push(&uf->array_eq_terms, t); + } uint32_t i; for (i = 0; i < 2; ++ i) { if (is_function_term(terms, t_desc->arg[i])) { - //uf_plugin_add_diff_terms_vars(uf, t_desc->arg[i]); + if (USE_ARRAY_DIFF) { + uf_plugin_add_diff_terms_vars(uf, t_desc->arg[i]); + } ivector_push(&uf->array_terms, t_desc->arg[i]); - } else if (term_kind(terms, t_desc->arg[i]) == APP_TERM) { - ivector_push(&uf->select_terms, t_desc->arg[i]); } } break; @@ -543,7 +557,7 @@ static inline void add_if_not_true_term(ivector_t* vec, term_t t) { } static -bool uf_plugin_array_idx_lemma(uf_plugin_t* uf, trail_token_t* prop, +bool uf_plugin_array_idx_check(uf_plugin_t* uf, trail_token_t* prop, const ivector_t* array_terms) { term_table_t* terms = uf->ctx->terms; uint32_t i; @@ -739,7 +753,7 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, const ivector_t* select_ } static -bool uf_plugin_array_ext_lemma(uf_plugin_t* uf, trail_token_t* prop, +bool uf_plugin_array_ext_check(uf_plugin_t* uf, trail_token_t* prop, const ivector_t* array_terms, const ivector_t* select_terms) { term_table_t* terms = uf->ctx->terms; @@ -842,82 +856,109 @@ bool uf_plugin_array_ext_lemma(uf_plugin_t* uf, trail_token_t* prop, static bool uf_plugin_array_ext_diff_lemma(uf_plugin_t* uf, trail_token_t* prop, - const ivector_t* array_terms) { - term_table_t* terms = uf->ctx->terms; - uint32_t i, j, k; + term_t arr1, term_t arr2) { - // array-ext lemma - for (i = 0; i < array_terms->size; ++i) { - term_t arr1 = array_terms->data[i]; - assert(variable_db_get_variable_if_exists(uf->ctx->var_db, arr1) != variable_null); - if (!eq_graph_term_has_value(&uf->eq_graph, arr1)) { - continue; - } - - type_t arr1_type = term_type(terms, arr1); - term_t diff_fun; - int_hmap_pair_t *diff = int_hmap_find(&uf->type_to_diff, arr1_type); - if (diff != NULL) { - diff_fun = diff->val; - } else { - assert(false); - } + term_table_t* terms = uf->ctx->terms; + type_t arr1_type = term_type(terms, arr1); + term_t diff_fun; + int_hmap_pair_t *diff = int_hmap_find(&uf->type_to_diff, arr1_type); + if (diff != NULL) { + diff_fun = diff->val; + } else { + assert(false); + } - for (j = i + 1; j < array_terms->size; ++j) { - term_t arr2 = array_terms->data[j]; - type_t arr2_type = term_type(terms, arr2); - if (!eq_graph_term_has_value(&uf->eq_graph, arr2) || - arr1 == arr2 || - arr1_type != arr2_type) { - continue; - } + type_t arr2_type = term_type(terms, arr2); + if (arr1 == arr2 || + !eq_graph_term_has_value(&uf->eq_graph, arr1) || + !eq_graph_term_has_value(&uf->eq_graph, arr2) || + arr1_type != arr2_type) { + return true; + } - term_t args[2]; - if (arr1 < arr2) { - args[0] = arr1; - args[1] = arr2; - } else { - args[0] = arr2; - args[1] = arr1; - } - term_t diff_term = app_term(terms, diff_fun, 2, args); - term_t select_arg[] = {diff_term}; - term_t diff_select1 = app_term(terms, arr1, 1, select_arg); - term_t diff_select2 = app_term(terms, arr2, 1, select_arg); - if (!eq_graph_term_has_value(&uf->eq_graph, diff_term) || - !eq_graph_term_has_value(&uf->eq_graph, diff_select1) || - !eq_graph_term_has_value(&uf->eq_graph, diff_select2)) { - continue; - } + term_t args[2]; + if (arr1 < arr2) { + args[0] = arr1; + args[1] = arr2; + } else { + args[0] = arr2; + args[1] = arr1; + } + term_t diff_term = app_term(terms, diff_fun, 2, args); + term_t select_arg[] = {diff_term}; + term_t diff_select1 = app_term(terms, arr1, 1, select_arg); + term_t diff_select2 = app_term(terms, arr2, 1, select_arg); + if (!eq_graph_term_has_value(&uf->eq_graph, diff_term) || + !eq_graph_term_has_value(&uf->eq_graph, diff_select1) || + !eq_graph_term_has_value(&uf->eq_graph, diff_select2)) { + return true; + } - if (!eq_graph_are_equal(&uf->eq_graph, arr1, arr2) && - eq_graph_are_equal(&uf->eq_graph, diff_select1, diff_select2)) { + if (!eq_graph_are_equal(&uf->eq_graph, arr1, arr2) && + eq_graph_are_equal(&uf->eq_graph, diff_select1, diff_select2)) { - add_if_not_true_term(&uf->conflict, _o_yices_neq(arr1, arr2)); - add_if_not_true_term(&uf->conflict, _o_yices_eq(diff_select1, diff_select2)); - - ivector_remove_duplicates(&uf->conflict); + add_if_not_true_term(&uf->conflict, _o_yices_neq(arr1, arr2)); + add_if_not_true_term(&uf->conflict, _o_yices_eq(diff_select1, diff_select2)); - assert(uf->conflict.size > 1); + ivector_remove_duplicates(&uf->conflict); - if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { - ctx_trace_printf(uf->ctx, ">2 Array conflict 2 BEGIN\n"); - for (k = 0; k < uf->conflict.size; ++ k) { - ctx_trace_term(uf->ctx, uf->conflict.data[k]); - } - ctx_trace_printf(uf->ctx, ">2 Array conflict 2 END\n"); - } + assert(uf->conflict.size > 1); - return false; + if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { + ctx_trace_printf(uf->ctx, ">2 Array conflict 2 BEGIN\n"); + uint32_t k; + for (k = 0; k < uf->conflict.size; ++ k) { + ctx_trace_term(uf->ctx, uf->conflict.data[k]); } + ctx_trace_printf(uf->ctx, ">2 Array conflict 2 END\n"); } + + return false; } return true; } static -bool uf_plugin_array_read_over_write_lemma(uf_plugin_t* uf, trail_token_t* prop, +bool uf_plugin_array_ext_diff_check(uf_plugin_t* uf, trail_token_t* prop, + const ivector_t* array_eq_terms, + const ivector_t* array_terms) { + + bool res = true; + term_table_t* terms = uf->ctx->terms; + uint32_t i, j, k; + + if (array_eq_terms) { + composite_term_t* t_desc = NULL; + for (i = 0; res && i < array_eq_terms->size; ++i) { + t_desc = eq_term_desc(terms, array_eq_terms->data[i]); + term_t arr1 = t_desc->arg[0]; + term_t arr2 = t_desc->arg[1]; + + res = uf_plugin_array_ext_diff_lemma(uf, prop, arr1, arr2); + } + } + + if (array_terms) { + for (i = 0; res && i < array_terms->size; ++i) { + term_t arr1 = array_terms->data[i]; + assert(variable_db_get_variable_if_exists(uf->ctx->var_db, arr1) != variable_null); + if (!eq_graph_term_has_value(&uf->eq_graph, arr1)) { + continue; + } + + for (j = i + 1; res && j < array_terms->size; ++j) { + term_t arr2 = array_terms->data[j]; + res = uf_plugin_array_ext_diff_lemma(uf, prop, arr1, arr2); + } + } + } + + return res; +} + +static +bool uf_plugin_array_read_over_write_check(uf_plugin_t* uf, trail_token_t* prop, const ivector_t* array_terms, const ivector_t* select_terms) { term_table_t* terms = uf->ctx->terms; @@ -994,8 +1035,6 @@ bool uf_plugin_array_read_over_write_lemma(uf_plugin_t* uf, trail_token_t* prop, } else { ivector_remove_duplicates(&uf->conflict); - assert(uf->conflict.size > 1); - if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { ctx_trace_printf(uf->ctx, ">3 Array conflict BEGIN 3\n"); for (k = 0; k < uf->conflict.size; ++ k) { @@ -1004,6 +1043,8 @@ bool uf_plugin_array_read_over_write_lemma(uf_plugin_t* uf, trail_token_t* prop, ctx_trace_printf(uf->ctx, ">3 Array conflict END 3\n"); } + assert(uf->conflict.size > 1); + goto done; } } @@ -1060,7 +1101,7 @@ void uf_plugin_array_propagations(uf_plugin_t* uf, trail_token_t* prop) { ivector_copy(&select_terms, uf->select_terms.data, uf->select_terms.size); ivector_remove_duplicates(&select_terms); - ok = uf_plugin_array_idx_lemma(uf, prop, &array_terms); + //ok = uf_plugin_array_idx_check(uf, prop, &array_terms); // check if all the revlevant terms have an assigned value uint32_t i; @@ -1082,16 +1123,24 @@ void uf_plugin_array_propagations(uf_plugin_t* uf, trail_token_t* prop) { } } + if (USE_ARRAY_DIFF && ok) { + ok = uf_plugin_array_ext_diff_check(uf, prop, &uf->array_eq_terms, NULL); + } + if (ok) { bool updates_present = false; uf_plugin_array_build_weak_eq_graph(uf, &array_terms, &updates_present); if (updates_present) { - ok = uf_plugin_array_read_over_write_lemma(uf, prop, &array_terms, &select_terms); + ok = uf_plugin_array_read_over_write_check(uf, prop, &array_terms, &select_terms); } } if (ok) { - uf_plugin_array_ext_lemma(uf, prop, &array_terms, &select_terms); + if (USE_ARRAY_DIFF) { + ok = uf_plugin_array_ext_diff_check(uf, prop, NULL, &array_terms); + } else { + ok = uf_plugin_array_ext_check(uf, prop, &array_terms, &select_terms); + } } if (uf->conflict.size > 0) { @@ -1150,6 +1199,7 @@ void uf_plugin_push(plugin_t* plugin) { scope_holder_push(&uf->scope, &uf->eq_graph_addition_trail.size, &uf->array_terms.size, + &uf->array_eq_terms.size, &uf->select_terms.size, NULL); @@ -1161,16 +1211,17 @@ void uf_plugin_pop(plugin_t* plugin) { uf_plugin_t* uf = (uf_plugin_t*) plugin; uint32_t old_eq_graph_addition_trail_size; - uint32_t t1, t2; + uint32_t t1, t2, t3; // Pop the int variable values scope_holder_pop(&uf->scope, &old_eq_graph_addition_trail_size, - &t1, &t2, + &t1, &t2, &t3, NULL); ivector_shrink(&uf->array_terms, t1); - ivector_shrink(&uf->select_terms, t2); + ivector_shrink(&uf->array_eq_terms, t2); + ivector_shrink(&uf->select_terms, t3); eq_graph_pop(&uf->eq_graph); From 8cce7b57a256939f9458105ec7e6abf02d1cc29a Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Thu, 2 Feb 2023 17:14:03 -0800 Subject: [PATCH 049/182] cleanup + eq path condition --- src/mcsat/uf/uf_plugin.c | 246 ++++++++++++++++++++++----------------- 1 file changed, 138 insertions(+), 108 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index c6162daab..934a52100 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -106,6 +106,12 @@ typedef struct { } uf_plugin_t; +static inline void add_if_not_true_term(ivector_t* vec, term_t t) { + if (t != true_term) { + ivector_push(vec, t); + } +} + /* * Weakly Equivalent Arrays: data structure */ @@ -113,20 +119,27 @@ typedef struct { typedef struct fun_node_s { term_t t; struct fun_node_s* p; + term_t pstore; term_t pi; struct fun_node_s* s; + term_t sstore; } fun_node_t; static inline fun_node_t *new_node() { fun_node_t *n = safe_malloc(sizeof(fun_node_t)); n->t = NULL_TERM; n->p = NULL; + n->pstore = NULL_TERM; n->pi = NULL_TERM; n->s = NULL; + n->sstore = NULL_TERM; return n; } -static const fun_node_t* get_rep(const eq_graph_t* eq_graph, const fun_node_t* n, int_hset_t* path_idx_set) { +static const fun_node_t* get_rep(const eq_graph_t* eq_graph, + const fun_node_t* n, + int_hset_t* path_idx_set, + ivector_t* cond) { const fun_node_t* res = n; while (res->p != NULL) { @@ -134,13 +147,22 @@ static const fun_node_t* get_rep(const eq_graph_t* eq_graph, const fun_node_t* n if (path_idx_set != NULL) { int_hset_add(path_idx_set, res->pi); } + + assert(res->pstore); + if (cond) { + add_if_not_true_term(cond, + _o_yices_eq(res->pstore, res->t)); + } + res = res->p; } return res; } -static const fun_node_t* get_rep_i(const eq_graph_t* eq_graph, const fun_node_t* n, const term_t idx, int_hset_t* path_idx_set) { +static const fun_node_t* get_rep_i(const eq_graph_t* eq_graph, const fun_node_t* n, + const term_t idx, int_hset_t* path_idx_set, + ivector_t* cond) { const fun_node_t* res = n; while (res->p != NULL) { @@ -148,12 +170,26 @@ static const fun_node_t* get_rep_i(const eq_graph_t* eq_graph, const fun_node_t* if (res->s == NULL) { break; } + + assert(res->sstore); + if (cond) { + add_if_not_true_term(cond, + _o_yices_eq(res->sstore, res->t)); + } + res = res->s; } else { // record indices if (path_idx_set) { int_hset_add(path_idx_set, res->pi); } + + assert(res->pstore); + if (cond) { + add_if_not_true_term(cond, + _o_yices_eq(res->pstore, res->t)); + } + res = res->p; } } @@ -168,10 +204,12 @@ static void make_rep_i(const eq_graph_t* eq_graph, fun_node_t* n) { if (!eq_graph_are_equal(eq_graph, n->s->pi, n->pi)) { n->s = n->s->p; + n->sstore = n->s->pstore; make_rep_i(eq_graph, n); } else { make_rep_i(eq_graph, n->s); n->s->s = n; + n->s->sstore = n->sstore; n->s = NULL; } } @@ -184,35 +222,44 @@ static void make_rep(const eq_graph_t* eq_graph, fun_node_t* n) { make_rep(eq_graph, n->p); // invert primary edge n->p->p = n; + n->p->pstore = n->pstore; n->p->pi = n->pi; n->p = NULL; + n->pstore = NULL_TERM; make_rep_i(eq_graph, n); + n->pi = NULL_TERM; } -static void add_secondary(const eq_graph_t* eq_graph, int_array_hset_t* idx_set, fun_node_t* a, fun_node_t* b) { +static void add_secondary(const eq_graph_t* eq_graph, int_hset_t* idx_set, + fun_node_t* a, fun_node_t* b, term_t store) { fun_node_t* n = a; - while (n != a) { - if (int_array_hset_find(idx_set, idx_set->size, &n->pi) == NULL && - get_rep_i(eq_graph, n, n->pi, NULL) != b) { + while (n != b) { + if (!int_hset_member(idx_set, n->pi) && + get_rep_i(eq_graph, n, n->pi, NULL, NULL) != b) { make_rep_i(eq_graph, n); n->s = b; + n->sstore = store; } - int_array_hset_get(idx_set, idx_set->size, &a->pi); + int_hset_add(idx_set, a->pi); n = n->p; } } -static void add_store(const eq_graph_t* eq_graph, fun_node_t* a, fun_node_t* b, term_t idx) { +static void add_store(const eq_graph_t* eq_graph, fun_node_t* a, fun_node_t* b, + term_t idx, term_t store) { + assert(a != b); make_rep(eq_graph, b); - if (get_rep(eq_graph, a, NULL) == b) { - int_array_hset_t s; - init_int_array_hset(&s, 0); - int_array_hset_get(&s, s.size, &idx); - add_secondary(eq_graph, &s, a, b); - delete_int_array_hset(&s); + if (get_rep(eq_graph, a, NULL, NULL) == b) { + int_hset_t s; + init_int_hset(&s, 0); + int_hset_add(&s, idx); + add_secondary(eq_graph, &s, a, b, store); + delete_int_hset(&s); } else { + assert(b->p == NULL); b->p = a; + b->pstore = store; b->pi = idx; } } @@ -228,6 +275,7 @@ void clear_fun_node_map(ptr_hmap_t *m) { safe_free((fun_node_t *) p->val); } ptr_hmap_reset(m); + assert(m->nelems == 0); } static @@ -367,7 +415,7 @@ static fun_node_t *uf_plugin_get_fun_node(uf_plugin_t* uf, term_t t) { v->val = n; return n; } else { - return (fun_node_t *) v->val; + return v->val; } } @@ -421,6 +469,9 @@ static void uf_plugin_add_diff_terms_vars(uf_plugin_t* uf, term_t arr) { variable_db_get_variable(uf->ctx->var_db, diff_term); variable_db_get_variable(uf->ctx->var_db, diff_select1); variable_db_get_variable(uf->ctx->var_db, diff_select2); + + ivector_push(&uf->select_terms, diff_select1); + ivector_push(&uf->select_terms, diff_select2); } } } @@ -550,12 +601,6 @@ void uf_plugin_new_term_notify(plugin_t* plugin, term_t t, trail_token_t* prop) } } -static inline void add_if_not_true_term(ivector_t* vec, term_t t) { - if (t != true_term) { - ivector_push(vec, t); - } -} - static bool uf_plugin_array_idx_check(uf_plugin_t* uf, trail_token_t* prop, const ivector_t* array_terms) { @@ -593,41 +638,44 @@ bool uf_plugin_array_idx_check(uf_plugin_t* uf, trail_token_t* prop, static bool uf_plugin_array_weak_eq_i(uf_plugin_t* uf, term_t arr1, term_t arr2, - term_t idx, ivector_t* indices) { + term_t idx, + ivector_t* indices, ivector_t* cond) { int_hset_t path_idx_set; init_int_hset(&path_idx_set, 0); const fun_node_t* fn_arr1 = get_rep_i(&uf->eq_graph, uf_plugin_get_fun_node(uf, arr1), - idx, &path_idx_set); + idx, &path_idx_set, cond); const fun_node_t* fn_arr2 = get_rep_i(&uf->eq_graph, uf_plugin_get_fun_node(uf, arr2), - idx, &path_idx_set); + idx, &path_idx_set, cond); assert(fn_arr1 != NULL); assert(fn_arr2 != NULL); bool res = false; - uint32_t old_size; + uint32_t old_indices_size, old_cond_size; if (indices) { - old_size = indices->size; + old_indices_size = indices->size; + } + if (cond) { + old_cond_size = cond->size; } if (fn_arr1 == fn_arr2) { res = true; int_hset_close(&path_idx_set); uint32_t k; - for (k = 0; k < path_idx_set.nelems; ++ k) { - if (!eq_graph_term_has_value(&uf->eq_graph, path_idx_set.data[k])) { - res = false; - break; - } - - if (indices) { + if (indices) { + for (k = 0; k < path_idx_set.nelems; ++ k) { ivector_push(indices, path_idx_set.data[k]); } } } if (!res && indices) { - ivector_shrink(indices, old_size); + ivector_shrink(indices, old_indices_size); + } + + if (!res && cond) { + ivector_shrink(cond, old_cond_size); } delete_int_hset(&path_idx_set); @@ -647,13 +695,14 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, const ivector_t* select_ ivector_t indices; uint32_t i, j, k; uint32_t cond_old_size; + + init_ivector(&indices, 0); + if (cond) { cond_old_size = cond->size; } - init_ivector(&indices, 0); - - if (uf_plugin_array_weak_eq_i(uf, arr1, arr2, idx, &indices)) { + if (uf_plugin_array_weak_eq_i(uf, arr1, arr2, idx, &indices, cond)) { for (k =0; k < indices.size; ++k) { if (eq_graph_are_equal(&uf->eq_graph, idx, indices.data[k])) { goto nextcheck; @@ -676,33 +725,29 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, const ivector_t* select_ term_t t_i = select_terms->data[i]; type_t t_i_type = term_type(terms, t_i); assert(variable_db_get_variable_if_exists(uf->ctx->var_db, t_i) != variable_null); - if (!eq_graph_term_has_value(&uf->eq_graph, t_i)) { - continue; - } ivector_shrink(&indices, 0); composite_term_t* e_i_desc = app_term_desc(terms, t_i); - if (!eq_graph_term_has_value(&uf->eq_graph, e_i_desc->arg[1]) || - !eq_graph_are_equal(&uf->eq_graph, e_i_desc->arg[1], idx) || - !uf_plugin_array_weak_eq_i(uf, arr1, e_i_desc->arg[0], idx, &indices)) { + if (!eq_graph_are_equal(&uf->eq_graph, e_i_desc->arg[1], idx) || + !uf_plugin_array_weak_eq_i(uf, arr1, e_i_desc->arg[0], idx, &indices, cond)) { assert(indices.size == 0); continue; } - + + uint32_t size1 = indices.size; for (j = 0; !res && j < select_terms->size; ++ j) { + assert(indices.size == size1); term_t t_j = select_terms->data[j]; type_t t_j_type = term_type(terms, t_j); if (t_i == t_j || t_i_type != t_j_type || - !eq_graph_term_has_value(&uf->eq_graph, t_j) || !eq_graph_are_equal(&uf->eq_graph, t_i, t_j)) { continue; } composite_term_t* e_j_desc = app_term_desc(terms, t_j); - if (!eq_graph_term_has_value(&uf->eq_graph, e_j_desc->arg[1]) || - !eq_graph_are_equal(&uf->eq_graph, e_j_desc->arg[1], idx) || - !uf_plugin_array_weak_eq_i(uf, arr2, e_j_desc->arg[0], idx, &indices)) { + if (!eq_graph_are_equal(&uf->eq_graph, e_j_desc->arg[1], idx) || + !uf_plugin_array_weak_eq_i(uf, arr2, e_j_desc->arg[0], idx, &indices, cond)) { continue; } @@ -717,10 +762,6 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, const ivector_t* select_ } if (res) { - assert(eq_graph_term_has_value(&uf->eq_graph, arr1)); - assert(eq_graph_term_has_value(&uf->eq_graph, uf_plugin_get_fun_node(uf, arr1)->t)); - assert(eq_graph_term_has_value(&uf->eq_graph, arr2)); - assert(eq_graph_term_has_value(&uf->eq_graph, uf_plugin_get_fun_node(uf, arr2)->t)); assert(eq_graph_are_equal(&uf->eq_graph, arr1, uf_plugin_get_fun_node(uf, arr1)->t)); assert(eq_graph_are_equal(&uf->eq_graph, arr2, @@ -769,36 +810,26 @@ bool uf_plugin_array_ext_check(uf_plugin_t* uf, trail_token_t* prop, term_t arr1 = array_terms->data[i]; type_t arr1_type = term_type(terms, arr1); assert(variable_db_get_variable_if_exists(uf->ctx->var_db, arr1) != variable_null); - if (!eq_graph_term_has_value(&uf->eq_graph, arr1)) { - continue; - } - for (j = i + 1; j < array_terms->size; ++j) { + for (j = 1; j < array_terms->size; ++j) { term_t arr2 = array_terms->data[j]; type_t arr2_type = term_type(terms, arr2); if (arr1 == arr2 || arr1_type != arr2_type || - !eq_graph_term_has_value(&uf->eq_graph, arr2) || eq_graph_are_equal(&uf->eq_graph, arr1, arr2)) { continue; } int_hset_reset(&path_idx_set); + ivector_shrink(&cond, 0); const fun_node_t* fn_arr1 = get_rep(&uf->eq_graph, uf_plugin_get_fun_node(uf, arr1), - &path_idx_set); + &path_idx_set, &cond); const fun_node_t* fn_arr2 = get_rep(&uf->eq_graph, uf_plugin_get_fun_node(uf, arr2), - &path_idx_set); + &path_idx_set, &cond); if (fn_arr1 == fn_arr2) { int_hset_close(&path_idx_set); bool ok = true; - for (k = 0; k < path_idx_set.nelems; ++ k) { - if (!eq_graph_term_has_value(&uf->eq_graph, path_idx_set.data[k])) { - ok = false; - break; - } - } - ivector_shrink(&cond, 0); for (k = 0; ok && k < path_idx_set.nelems; ++ k) { if (!uf_plugin_array_weak_congruence_i(uf, select_terms, arr1, arr2, path_idx_set.data[k], &cond)) { @@ -815,10 +846,6 @@ bool uf_plugin_array_ext_check(uf_plugin_t* uf, trail_token_t* prop, _o_yices_eq(arr2, uf_plugin_get_fun_node(uf, arr2)->t)); - assert(eq_graph_term_has_value(&uf->eq_graph, arr1)); - assert(eq_graph_term_has_value(&uf->eq_graph, uf_plugin_get_fun_node(uf, arr1)->t)); - assert(eq_graph_term_has_value(&uf->eq_graph, arr2)); - assert(eq_graph_term_has_value(&uf->eq_graph, uf_plugin_get_fun_node(uf, arr2)->t)); assert(eq_graph_are_equal(&uf->eq_graph, arr1, uf_plugin_get_fun_node(uf, arr1)->t)); assert(eq_graph_are_equal(&uf->eq_graph, arr2, @@ -856,7 +883,7 @@ bool uf_plugin_array_ext_check(uf_plugin_t* uf, trail_token_t* prop, static bool uf_plugin_array_ext_diff_lemma(uf_plugin_t* uf, trail_token_t* prop, - term_t arr1, term_t arr2) { + term_t arr1, term_t arr2) { term_table_t* terms = uf->ctx->terms; type_t arr1_type = term_type(terms, arr1); @@ -908,7 +935,7 @@ bool uf_plugin_array_ext_diff_lemma(uf_plugin_t* uf, trail_token_t* prop, ctx_trace_printf(uf->ctx, ">2 Array conflict 2 BEGIN\n"); uint32_t k; for (k = 0; k < uf->conflict.size; ++ k) { - ctx_trace_term(uf->ctx, uf->conflict.data[k]); + ctx_trace_term(uf->ctx, uf->conflict.data[k]); } ctx_trace_printf(uf->ctx, ">2 Array conflict 2 END\n"); } @@ -922,7 +949,7 @@ bool uf_plugin_array_ext_diff_lemma(uf_plugin_t* uf, trail_token_t* prop, static bool uf_plugin_array_ext_diff_check(uf_plugin_t* uf, trail_token_t* prop, const ivector_t* array_eq_terms, - const ivector_t* array_terms) { + const ivector_t* array_terms) { bool res = true; term_table_t* terms = uf->ctx->terms; @@ -944,12 +971,12 @@ bool uf_plugin_array_ext_diff_check(uf_plugin_t* uf, trail_token_t* prop, term_t arr1 = array_terms->data[i]; assert(variable_db_get_variable_if_exists(uf->ctx->var_db, arr1) != variable_null); if (!eq_graph_term_has_value(&uf->eq_graph, arr1)) { - continue; + continue; } for (j = i + 1; res && j < array_terms->size; ++j) { - term_t arr2 = array_terms->data[j]; - res = uf_plugin_array_ext_diff_lemma(uf, prop, arr1, arr2); + term_t arr2 = array_terms->data[j]; + res = uf_plugin_array_ext_diff_lemma(uf, prop, arr1, arr2); } } } @@ -965,7 +992,9 @@ bool uf_plugin_array_read_over_write_check(uf_plugin_t* uf, trail_token_t* prop, uint32_t i, j; int_hset_t path_idx_set; + ivector_t cond; init_int_hset(&path_idx_set, 0); + init_ivector(&cond, 0); // generalized read-over-write lemma for (i = 0; i < select_terms->size; ++ i) { @@ -973,10 +1002,6 @@ bool uf_plugin_array_read_over_write_check(uf_plugin_t* uf, trail_token_t* prop, type_t t_i_type = term_type(terms, t_i); assert(variable_db_get_variable_if_exists(uf->ctx->var_db, t_i) != variable_null); composite_term_t* e_i_desc = app_term_desc(terms, t_i); - if (!eq_graph_term_has_value(&uf->eq_graph, t_i) || - !eq_graph_term_has_value(&uf->eq_graph, e_i_desc->arg[1])) { - continue; - } for (j = 0; j < select_terms->size; ++ j) { term_t t_j = select_terms->data[j]; @@ -984,20 +1009,19 @@ bool uf_plugin_array_read_over_write_check(uf_plugin_t* uf, trail_token_t* prop, composite_term_t* e_j_desc = app_term_desc(terms, t_j); if (t_i == t_j || t_i_type != t_j_type || - !eq_graph_term_has_value(&uf->eq_graph, t_j) || - !eq_graph_term_has_value(&uf->eq_graph, e_j_desc->arg[1]) || !eq_graph_are_equal(&uf->eq_graph, e_i_desc->arg[1], e_j_desc->arg[1]) || eq_graph_are_equal(&uf->eq_graph, t_i, t_j)) { continue; } int_hset_reset(&path_idx_set); + ivector_shrink(&cond, 0); const fun_node_t* fn_i = get_rep_i(&uf->eq_graph, uf_plugin_get_fun_node(uf, e_i_desc->arg[0]), - e_i_desc->arg[1], &path_idx_set); + e_i_desc->arg[1], &path_idx_set, &cond); const fun_node_t* fn_j = get_rep_i(&uf->eq_graph, uf_plugin_get_fun_node(uf, e_j_desc->arg[0]), - e_i_desc->arg[1], &path_idx_set); + e_i_desc->arg[1], &path_idx_set, &cond); assert(fn_i != NULL); assert(fn_j != NULL); @@ -1019,8 +1043,7 @@ bool uf_plugin_array_read_over_write_check(uf_plugin_t* uf, trail_token_t* prop, uint32_t k; for (k = 0; k < path_idx_set.nelems; ++ k) { assert(path_idx_set.data[k] != e_i_desc->arg[1]); - if (!eq_graph_term_has_value(&uf->eq_graph, path_idx_set.data[k]) || - eq_graph_are_equal(&uf->eq_graph, + if (eq_graph_are_equal(&uf->eq_graph, e_i_desc->arg[1], path_idx_set.data[k])) { ok = false; break; @@ -1033,6 +1056,10 @@ bool uf_plugin_array_read_over_write_check(uf_plugin_t* uf, trail_token_t* prop, if (!ok) { ivector_reset(&uf->conflict); } else { + for (k = 0; k < cond.size; ++k) { + add_if_not_true_term(&uf->conflict, cond.data[k]); + } + ivector_remove_duplicates(&uf->conflict); if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { @@ -1058,11 +1085,9 @@ bool uf_plugin_array_read_over_write_check(uf_plugin_t* uf, trail_token_t* prop, } static -void uf_plugin_array_build_weak_eq_graph(uf_plugin_t* uf, const ivector_t* array_terms, - bool* updates_present) { +void uf_plugin_array_build_weak_eq_graph(uf_plugin_t* uf, const ivector_t* array_terms) { term_table_t* terms = uf->ctx->terms; uint32_t i; - *updates_present = false; // clear the fun node map // we start from a fresh weak equivalence graph @@ -1075,13 +1100,12 @@ void uf_plugin_array_build_weak_eq_graph(uf_plugin_t* uf, const ivector_t* array assert(is_function_term(terms, t)); assert(t_kind == UNINTERPRETED_TERM || t_kind == UPDATE_TERM); - fun_node_t *b = uf_plugin_get_fun_node(uf, t); if (t_kind == UPDATE_TERM) { + fun_node_t *b = uf_plugin_get_fun_node(uf, t); composite_term_t* t_desc = update_term_desc(terms, t); fun_node_t *a = uf_plugin_get_fun_node(uf, t_desc->arg[0]); term_t ai = t_desc->arg[1]; - add_store(&uf->eq_graph, a, b, ai); - *updates_present = true; + add_store(&uf->eq_graph, a, b, ai, t); } } } @@ -1103,6 +1127,8 @@ void uf_plugin_array_propagations(uf_plugin_t* uf, trail_token_t* prop) { //ok = uf_plugin_array_idx_check(uf, prop, &array_terms); + bool updates_present = false; + // check if all the revlevant terms have an assigned value uint32_t i; term_table_t* terms = uf->ctx->terms; @@ -1111,6 +1137,9 @@ void uf_plugin_array_propagations(uf_plugin_t* uf, trail_token_t* prop) { if (!eq_graph_term_has_value(&uf->eq_graph, array_terms.data[i])) { ok = false; } + if (term_kind(terms, array_terms.data[i]) == UPDATE_TERM) { + updates_present = true; + } } for (i = 0; ok && i < select_terms.size; ++i) { if (!eq_graph_term_has_value(&uf->eq_graph, select_terms.data[i])) { @@ -1118,7 +1147,7 @@ void uf_plugin_array_propagations(uf_plugin_t* uf, trail_token_t* prop) { } else { t_desc = app_term_desc(terms, select_terms.data[i]); if (!eq_graph_term_has_value(&uf->eq_graph, t_desc->arg[1])) { - ok = false; + ok = false; } } } @@ -1128,8 +1157,9 @@ void uf_plugin_array_propagations(uf_plugin_t* uf, trail_token_t* prop) { } if (ok) { - bool updates_present = false; - uf_plugin_array_build_weak_eq_graph(uf, &array_terms, &updates_present); + if (!USE_ARRAY_DIFF || updates_present) { + uf_plugin_array_build_weak_eq_graph(uf, &array_terms); + } if (updates_present) { ok = uf_plugin_array_read_over_write_check(uf, prop, &array_terms, &select_terms); } @@ -1323,19 +1353,19 @@ void uf_plugin_decide(plugin_t* plugin, variable_t x, trail_token_t* decide, boo } while (true) { - ptr_hmap_pair_t *picked_val_type = ptr_hmap_find(&uf->fun_val_type_map, picked_value); - // if not in the map, pick it and safe in the map - if (picked_val_type == NULL) { - picked_val_type = ptr_hmap_get(&uf->fun_val_type_map, picked_value); - picked_val_type->val = x_type; - break; - } - // if in the map and the type agrees then pick the value - if (picked_val_type->val == x_type) { - break; - } - // picked value not good, increment and check in the loop - picked_value += 1; + ptr_hmap_pair_t *picked_val_type = ptr_hmap_find(&uf->fun_val_type_map, picked_value); + // if not in the map, pick it and safe in the map + if (picked_val_type == NULL) { + picked_val_type = ptr_hmap_get(&uf->fun_val_type_map, picked_value); + picked_val_type->val = x_type; + break; + } + // if in the map and the type agrees then pick the value + if (picked_val_type->val == x_type) { + break; + } + // picked value not good, increment and check in the loop + picked_value += 1; } } } else { From 8062f47ef145a1d3cad75143b23b8800a471d2fa Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Tue, 7 Feb 2023 22:10:26 -0800 Subject: [PATCH 050/182] wip: buggy --- src/mcsat/eq/equality_graph.c | 8 - src/mcsat/eq/equality_graph.h | 3 - src/mcsat/uf/uf_plugin.c | 523 ++++++++++++++++++++++++---------- 3 files changed, 373 insertions(+), 161 deletions(-) diff --git a/src/mcsat/eq/equality_graph.c b/src/mcsat/eq/equality_graph.c index 772c44f5d..73ecb4173 100644 --- a/src/mcsat/eq/equality_graph.c +++ b/src/mcsat/eq/equality_graph.c @@ -763,14 +763,6 @@ bool eq_graph_term_is_rep(const eq_graph_t* eq, term_t t) { return n->find == id; } -term_t eq_graph_term_get_rep(const eq_graph_t* eq, term_t t) { - eq_node_id_t id = eq_graph_term_id(eq, t); - const eq_node_t* n = eq_graph_get_node_const(eq, id); - assert(n != NULL); - const eq_node_t* n_rep = eq_graph_get_node_const(eq, n->find); - return (n_rep->type == EQ_NODE_TERM) ? eq->terms_list.data[n_rep->index] : t; -} - eq_node_id_t eq_graph_value_id(const eq_graph_t* eq, const mcsat_value_t* v) { value_hmap_pair_t* find = value_hmap_find(&eq->value_to_id, v); assert(find != NULL); diff --git a/src/mcsat/eq/equality_graph.h b/src/mcsat/eq/equality_graph.h index 5ac57cda8..22963a64d 100644 --- a/src/mcsat/eq/equality_graph.h +++ b/src/mcsat/eq/equality_graph.h @@ -266,9 +266,6 @@ eq_node_id_t eq_graph_term_id_if_exists(const eq_graph_t* eq, term_t t); /** Returns true if term is a representative of its class */ bool eq_graph_term_is_rep(const eq_graph_t* eq, term_t t); -/** Returns the representative test of the class the given term belongs to */ -term_t eq_graph_term_get_rep(const eq_graph_t* eq, term_t t); - /** Push the context */ void eq_graph_push(eq_graph_t* eq); diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index 934a52100..cdb97e231 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -32,6 +32,7 @@ #include "utils/ptr_array_sort2.h" #include "utils/ptr_hash_map.h" +#include "utils/ptr_sets.h" #include "utils/refcount_strings.h" #include "model/models.h" @@ -89,6 +90,9 @@ typedef struct { /** Function Values to types map */ ptr_hmap_t fun_val_type_map; + /** Function Values to term (one rep term) */ + int_hmap_t fun_val_term_map; + /** Tmp vector */ int_mset_t tmp; @@ -137,124 +141,141 @@ static inline fun_node_t *new_node() { } static const fun_node_t* get_rep(const eq_graph_t* eq_graph, - const fun_node_t* n, - int_hset_t* path_idx_set, - ivector_t* cond) { + const fun_node_t* n) { const fun_node_t* res = n; - while (res->p != NULL) { - //store indices - if (path_idx_set != NULL) { - int_hset_add(path_idx_set, res->pi); - } - - assert(res->pstore); - if (cond) { - add_if_not_true_term(cond, - _o_yices_eq(res->pstore, res->t)); - } - res = res->p; } + return res; +} +static uint32_t count_primary(const eq_graph_t* eq_graph, + const fun_node_t* n) { + uint32_t res = 0; + const fun_node_t* tmp = n; + + while (tmp->p != NULL) { + tmp = tmp->p; + res++; + } return res; } static const fun_node_t* get_rep_i(const eq_graph_t* eq_graph, const fun_node_t* n, - const term_t idx, int_hset_t* path_idx_set, - ivector_t* cond) { + const term_t idx) { const fun_node_t* res = n; - while (res->p != NULL) { if (eq_graph_are_equal(eq_graph, res->pi, idx)) { if (res->s == NULL) { break; } - - assert(res->sstore); - if (cond) { - add_if_not_true_term(cond, - _o_yices_eq(res->sstore, res->t)); - } - res = res->s; } else { - // record indices - if (path_idx_set) { - int_hset_add(path_idx_set, res->pi); - } + res = res->p; + } + } + return res; +} - assert(res->pstore); - if (cond) { - add_if_not_true_term(cond, - _o_yices_eq(res->pstore, res->t)); +static uint32_t count_secondary(const eq_graph_t* eq_graph, const fun_node_t* n, + const term_t idx) { + uint32_t res = 0; + const fun_node_t* tmp = n; + while (tmp->p != NULL) { + if (eq_graph_are_equal(eq_graph, tmp->pi, idx)) { + if (tmp->s == NULL) { + break; } - - res = res->p; + tmp = tmp->s; + res++; + } else { + tmp = tmp->p; } } + return res; +} +static const fun_node_t* find_secondary_node(const eq_graph_t* eq_graph, + fun_node_t* n, term_t idx) { + const fun_node_t* res = n; + while (res->p != NULL && !eq_graph_are_equal(eq_graph, res->pi, idx)) { + res = res->p; + } return res; } -static void make_rep_i(const eq_graph_t* eq_graph, fun_node_t* n) { +static term_t uf_plugin_get_index_from_store(uf_plugin_t* uf, term_t store) { + term_table_t* terms = uf->ctx->terms; + assert(term_kind(terms, store) == UPDATE_TERM); + + composite_term_t* t_desc = update_term_desc(terms, store); + return t_desc->arg[1]; +} + +static void make_rep_i(uf_plugin_t* uf, fun_node_t* n) { if (n->s == NULL) { return; } - if (!eq_graph_are_equal(eq_graph, n->s->pi, n->pi)) { + if (!eq_graph_are_equal(&uf->eq_graph, + n->s->pi, n->pi)) { n->s = n->s->p; n->sstore = n->s->pstore; - make_rep_i(eq_graph, n); + make_rep_i(uf, n); } else { - make_rep_i(eq_graph, n->s); + make_rep_i(uf, n->s); n->s->s = n; n->s->sstore = n->sstore; n->s = NULL; + n->sstore = NULL_TERM; } } -static void make_rep(const eq_graph_t* eq_graph, fun_node_t* n) { +static void make_rep(uf_plugin_t* uf, fun_node_t* n) { if (n->p == NULL) { return; } - make_rep(eq_graph, n->p); + make_rep(uf, n->p); // invert primary edge n->p->p = n; n->p->pstore = n->pstore; n->p->pi = n->pi; n->p = NULL; + make_rep_i(uf, n); n->pstore = NULL_TERM; - make_rep_i(eq_graph, n); n->pi = NULL_TERM; } -static void add_secondary(const eq_graph_t* eq_graph, int_hset_t* idx_set, +static void add_secondary(uf_plugin_t* uf, int_hset_t* idx_set, fun_node_t* a, fun_node_t* b, term_t store) { fun_node_t* n = a; - while (n != b) { + assert(n->p); if (!int_hset_member(idx_set, n->pi) && - get_rep_i(eq_graph, n, n->pi, NULL, NULL) != b) { - make_rep_i(eq_graph, n); + get_rep_i(&uf->eq_graph, n, n->pi) != b) { + make_rep_i(uf, n); n->s = b; n->sstore = store; + assert(n->pi != uf_plugin_get_index_from_store(uf, store)); } - int_hset_add(idx_set, a->pi); + int_hset_add(idx_set, n->pi); n = n->p; } } -static void add_store(const eq_graph_t* eq_graph, fun_node_t* a, fun_node_t* b, +static void add_store(uf_plugin_t* uf, fun_node_t* a, fun_node_t* b, term_t idx, term_t store) { - assert(a != b); - make_rep(eq_graph, b); - if (get_rep(eq_graph, a, NULL, NULL) == b) { + if (a == b) { + return; + } + + make_rep(uf, b); + if (get_rep(&uf->eq_graph, a) == b) { int_hset_t s; init_int_hset(&s, 0); int_hset_add(&s, idx); - add_secondary(eq_graph, &s, a, b, store); + add_secondary(uf, &s, a, b, store); delete_int_hset(&s); } else { assert(b->p == NULL); @@ -267,15 +288,15 @@ static void add_store(const eq_graph_t* eq_graph, fun_node_t* a, fun_node_t* b, /* * */ static -void clear_fun_node_map(ptr_hmap_t *m) { +void uf_plugin_clear_fun_node_map(uf_plugin_t* uf) { ptr_hmap_pair_t *p; - for (p = ptr_hmap_first_record(m); + for (p = ptr_hmap_first_record(&uf->fun_node_map); p != NULL; - p = ptr_hmap_next_record(m, p)) { + p = ptr_hmap_next_record(&uf->fun_node_map, p)) { safe_free((fun_node_t *) p->val); } - ptr_hmap_reset(m); - assert(m->nelems == 0); + ptr_hmap_reset(&uf->fun_node_map); + int_hmap_reset(&uf->fun_val_term_map); } static @@ -311,6 +332,7 @@ void uf_plugin_construct(plugin_t* plugin, plugin_context_t* ctx) { scope_holder_construct(&uf->scope); init_ivector(&uf->conflict, 0); init_ptr_hmap(&uf->fun_val_type_map, 0); + init_int_hmap(&uf->fun_val_term_map, 0); int_mset_construct(&uf->tmp, NULL_TERM); // Terms @@ -360,8 +382,9 @@ void uf_plugin_destruct(plugin_t* plugin) { delete_int_hmap(&uf->type_to_diff); delete_int_hset(&uf->diff_funs); - clear_fun_node_map(&uf->fun_node_map); + uf_plugin_clear_fun_node_map(uf); delete_ptr_hmap(&uf->fun_node_map); + delete_int_hmap(&uf->fun_val_term_map); } static @@ -405,18 +428,165 @@ void uf_plugin_process_eq_graph_propagations(uf_plugin_t* uf, trail_token_t* pro } } +static term_t uf_plugin_get_fun_rep(uf_plugin_t* uf, term_t t) { + assert(eq_graph_term_has_value(&uf->eq_graph, t)); + + mcsat_value_t* val = eq_graph_get_propagated_term_value(&uf->eq_graph, t); + int32_t v_int = 0; + bool ok = q_get32((rational_t*)&val->q, &v_int); + (void) ok; + + int_hmap_pair_t *v = int_hmap_find(&uf->fun_val_term_map, v_int); + if (v == NULL) { + v = int_hmap_get(&uf->fun_val_term_map, v_int); + v->val = t; + } + + return v->val; +} + static fun_node_t *uf_plugin_get_fun_node(uf_plugin_t* uf, term_t t) { - term_t t_rep = eq_graph_term_get_rep(&uf->eq_graph, t); + term_t t_rep = uf_plugin_get_fun_rep(uf, t); ptr_hmap_pair_t *v = ptr_hmap_find(&uf->fun_node_map, t_rep); if (v == NULL) { v = ptr_hmap_get(&uf->fun_node_map, t_rep); fun_node_t *n = new_node(); n->t = t_rep; v->val = n; - return n; + } + + return v->val; +} + +static void uf_plugin_compute_weak_path(uf_plugin_t* uf, fun_node_t* a, + fun_node_t* b, int_hset_t* indices, + int_hset_t* path) { + ctx_trace_printf(uf->ctx, "WEAK PATH\n "); + + //arr1 and arr2 must be in the same weak equivalence class + assert(get_rep(&uf->eq_graph, a) == get_rep(&uf->eq_graph, b)); + + if (a == b) { + return; + } + + uint32_t prim_cnt1 = count_primary(&uf->eq_graph, a); + uint32_t prim_cnt2 = count_primary(&uf->eq_graph, b); + fun_node_t* n1 = a; + fun_node_t* n2 = b; + + while (prim_cnt1 > prim_cnt2) { + int_hset_add(path, n1->pstore); + assert(n1->pi == uf_plugin_get_index_from_store(uf, n1->pstore)); + int_hset_add(indices, n1->pi); + n1 = n1->p; + prim_cnt1--; + } + while (prim_cnt2 > prim_cnt1) { + int_hset_add(path, n2->pstore); + assert(n2->pi == uf_plugin_get_index_from_store(uf, n2->pstore)); + int_hset_add(indices, n2->pi); + n2 = n2->p; + prim_cnt2--; + } + while (n1 != n2) { + assert(n1->p); + assert(n2->p); + int_hset_add(path, n1->pstore); + int_hset_add(path, n2->pstore); + assert(n1->pi == uf_plugin_get_index_from_store(uf, n1->pstore)); + assert(n2->pi == uf_plugin_get_index_from_store(uf, n2->pstore)); + int_hset_add(indices, n1->pi); + int_hset_add(indices, n2->pi); + n1 = n1->p; + n2 = n2->p; + } + + assert(n1 == n2); +} + +static fun_node_t* uf_plugin_compute_path_secondary(uf_plugin_t* uf, fun_node_t* a, + term_t idx, + int_hset_t* indices, + int_hset_t* path) { + fun_node_t* res = NULL; + term_table_t* terms = uf->ctx->terms; + fun_node_t* tmp = find_secondary_node(&uf->eq_graph, a, idx); + composite_term_t* t_desc = update_term_desc(terms, tmp->sstore); + + assert(tmp->pi != NULL_TERM); + assert(tmp->s); + assert(tmp->pi == idx); + assert(t_desc->arg[1] != idx); + + if (find_secondary_node(&uf->eq_graph, uf_plugin_get_fun_node(uf, t_desc->arg[0]), idx) != tmp) { + ctx_trace_printf(uf->ctx, "HERE 1\n"); + uf_plugin_compute_weak_path(uf, a, uf_plugin_get_fun_node(uf, tmp->sstore), indices, path); + + assert(!int_hset_member(indices, idx)); + + ctx_trace_printf(uf->ctx, "inner old count %"PRIi32"\n", count_secondary(&uf->eq_graph, a, idx)); + res = uf_plugin_get_fun_node(uf, t_desc->arg[0]); + ctx_trace_printf(uf->ctx, "inner new count %"PRIi32"\n", count_secondary(&uf->eq_graph, res, idx)); + int_hset_add(path, tmp->sstore); } else { - return v->val; + ctx_trace_printf(uf->ctx, "HERE 2\n"); + uf_plugin_compute_weak_path(uf, a, uf_plugin_get_fun_node(uf, t_desc->arg[0]), indices, path); + + assert(!int_hset_member(indices, idx)); + + res = uf_plugin_get_fun_node(uf, tmp->sstore); + ctx_trace_printf(uf->ctx, "inner new count %"PRIi32"\n", count_secondary(&uf->eq_graph, res, idx)); + int_hset_add(path, t_desc->arg[0]); } + int_hset_add(path, a->t); + int_hset_add(indices, t_desc->arg[1]); + assert(!int_hset_member(indices, idx)); + return res; +} + +static void uf_plugin_compute_weak_path_i(uf_plugin_t* uf, term_t arr1, + term_t arr2, term_t idx, + int_hset_t* indices, + int_hset_t* path) { + ctx_trace_printf(uf->ctx, "WEAK PATH I\n "); + term_table_t* terms = uf->ctx->terms; + + fun_node_t* a = uf_plugin_get_fun_node(uf, arr1); + fun_node_t* b = uf_plugin_get_fun_node(uf, arr2); + uint32_t sec_cnt1 = count_secondary(&uf->eq_graph, a, idx); + uint32_t sec_cnt2 = count_secondary(&uf->eq_graph, b, idx); + + assert(get_rep_i(&uf->eq_graph, a, idx) == get_rep_i(&uf->eq_graph, b, idx)); + + int_hset_add(path, arr1); + while (sec_cnt1 > sec_cnt2) { + ctx_trace_printf(uf->ctx, "DECREMENTING COUNT 1\n "); + ctx_trace_printf(uf->ctx, "old count %"PRIi32"\n", count_secondary(&uf->eq_graph, a, idx)); + a = uf_plugin_compute_path_secondary(uf, a, idx, indices, path); + ctx_trace_printf(uf->ctx, "new count %"PRIi32"\n", count_secondary(&uf->eq_graph, a, idx)); + sec_cnt1--; + assert(count_secondary(&uf->eq_graph, a, idx) == sec_cnt1); + } + while (sec_cnt2 > sec_cnt1) { + ctx_trace_printf(uf->ctx, "DECREMENTING COUNT 2\n "); + b = uf_plugin_compute_path_secondary(uf, b, idx, indices, path); + sec_cnt2--; + assert(count_secondary(&uf->eq_graph, b, idx) == sec_cnt2); + } + + assert(sec_cnt1 == sec_cnt2); + while (sec_cnt2 > 0 && find_secondary_node(&uf->eq_graph, a, idx) != find_secondary_node(&uf->eq_graph, b, idx)) { + ctx_trace_printf(uf->ctx, "DECREMENTING COUNT 1 & 2\n "); + assert(count_secondary(&uf->eq_graph, a, idx) == count_secondary(&uf->eq_graph, b, idx)); + a = uf_plugin_compute_path_secondary(uf, a, idx, indices, path); + b = uf_plugin_compute_path_secondary(uf, b, idx, indices, path); + } + + uf_plugin_compute_weak_path(uf, a, b, indices, path); + assert(!int_hset_member(indices, idx)); + + int_hset_add(path, arr2); } static void uf_plugin_add_diff_terms_vars(uf_plugin_t* uf, term_t arr) { @@ -554,6 +724,16 @@ void uf_plugin_add_to_eq_graph(uf_plugin_t* uf, term_t t, bool record) { eq_graph_propagate_trail_assertion(&uf->eq_graph, c); } } + if (is_function_term(terms, c)) { + if (USE_ARRAY_DIFF) { + uf_plugin_add_diff_terms_vars(uf, c); + } + ivector_push(&uf->array_terms, c); + } + if (term_kind(terms, c) == APP_TERM && + !int_hset_member(&uf->diff_funs, c)) { + ivector_push(&uf->select_terms, c); + } } // Record addition so we can re-add on backtracks @@ -639,19 +819,24 @@ bool uf_plugin_array_idx_check(uf_plugin_t* uf, trail_token_t* prop, static bool uf_plugin_array_weak_eq_i(uf_plugin_t* uf, term_t arr1, term_t arr2, term_t idx, - ivector_t* indices, ivector_t* cond) { - int_hset_t path_idx_set; - init_int_hset(&path_idx_set, 0); + ivector_t* indices, ivector_t* cond) { + term_table_t* terms = uf->ctx->terms; + ctx_trace_printf(uf->ctx, "CHECKING ARRAY WEAK EQ I\n "); + + int_hset_t index_set, path; + bool res = false; + uint32_t old_indices_size, old_cond_size; const fun_node_t* fn_arr1 = get_rep_i(&uf->eq_graph, uf_plugin_get_fun_node(uf, arr1), - idx, &path_idx_set, cond); + idx); const fun_node_t* fn_arr2 = get_rep_i(&uf->eq_graph, uf_plugin_get_fun_node(uf, arr2), - idx, &path_idx_set, cond); + idx); assert(fn_arr1 != NULL); assert(fn_arr2 != NULL); - bool res = false; - uint32_t old_indices_size, old_cond_size; + init_int_hset(&index_set, 0); + init_int_hset(&path, 0); + if (indices) { old_indices_size = indices->size; } @@ -660,13 +845,25 @@ bool uf_plugin_array_weak_eq_i(uf_plugin_t* uf, term_t arr1, term_t arr2, } if (fn_arr1 == fn_arr2) { - res = true; - int_hset_close(&path_idx_set); + composite_term_t* t_desc = NULL; uint32_t k; - if (indices) { - for (k = 0; k < path_idx_set.nelems; ++ k) { - ivector_push(indices, path_idx_set.data[k]); - } + + res = true; + uf_plugin_compute_weak_path_i(uf, arr1, arr2, idx, &index_set, &path); + + // add indices + int_hset_close(&index_set); + for (k = 0; k < index_set.nelems; ++k) { + assert(idx != index_set.data[k]); + ivector_push(indices, index_set.data[k]); + } + + int_hset_close(&path); + // add path eq conditions + for (k = 0; k < path.nelems; ++k) { + add_if_not_true_term(cond, + _o_yices_eq(path.data[k], + uf_plugin_get_fun_rep(uf, path.data[k]))); } } @@ -678,7 +875,7 @@ bool uf_plugin_array_weak_eq_i(uf_plugin_t* uf, term_t arr1, term_t arr2, ivector_shrink(cond, old_cond_size); } - delete_int_hset(&path_idx_set); + delete_int_hset(&path); return res; } @@ -692,10 +889,10 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, const ivector_t* select_ bool res = false; term_table_t* terms = uf->ctx->terms; - ivector_t indices; uint32_t i, j, k; uint32_t cond_old_size; + ivector_t indices; init_ivector(&indices, 0); if (cond) { @@ -704,23 +901,33 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, const ivector_t* select_ if (uf_plugin_array_weak_eq_i(uf, arr1, arr2, idx, &indices, cond)) { for (k =0; k < indices.size; ++k) { + assert(idx != indices.data[k]); if (eq_graph_are_equal(&uf->eq_graph, idx, indices.data[k])) { goto nextcheck; } } + + ctx_trace_printf(uf->ctx, ">2 WEAKLY CONG 1 \n "); + res = true; + for (k =0; k < indices.size; ++k) { add_if_not_true_term(cond, _o_yices_neq(idx, indices.data[k])); } + add_if_not_true_term(cond, _o_yices_eq(arr1, - uf_plugin_get_fun_node(uf, arr1)->t)); + uf_plugin_get_fun_rep(uf, arr1))); add_if_not_true_term(cond, _o_yices_eq(arr2, - uf_plugin_get_fun_node(uf, arr2)->t)); - return true; + uf_plugin_get_fun_rep(uf, arr2))); + goto done; } nextcheck: + if (cond) { + ivector_shrink(cond, cond_old_size); + } + for (i = 0; !res && i < select_terms->size; ++ i) { term_t t_i = select_terms->data[i]; type_t t_i_type = term_type(terms, t_i); @@ -734,13 +941,12 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, const ivector_t* select_ continue; } - uint32_t size1 = indices.size; + uint32_t size1 = cond->size; for (j = 0; !res && j < select_terms->size; ++ j) { - assert(indices.size == size1); + ivector_shrink(cond, size1); term_t t_j = select_terms->data[j]; type_t t_j_type = term_type(terms, t_j); - if (t_i == t_j || - t_i_type != t_j_type || + if (t_i_type != t_j_type || !eq_graph_are_equal(&uf->eq_graph, t_i, t_j)) { continue; } @@ -762,19 +968,14 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, const ivector_t* select_ } if (res) { - assert(eq_graph_are_equal(&uf->eq_graph, arr1, - uf_plugin_get_fun_node(uf, arr1)->t)); - assert(eq_graph_are_equal(&uf->eq_graph, arr2, - uf_plugin_get_fun_node(uf, arr2)->t)); - add_if_not_true_term(cond, _o_yices_eq(arr1, - uf_plugin_get_fun_node(uf, arr1)->t)); + uf_plugin_get_fun_rep(uf, arr1))); add_if_not_true_term(cond, _o_yices_eq(arr2, - uf_plugin_get_fun_node(uf, arr2)->t)); + uf_plugin_get_fun_rep(uf, arr2))); add_if_not_true_term(cond, _o_yices_eq(e_i_desc->arg[0], - uf_plugin_get_fun_node(uf, e_i_desc->arg[0])->t)); + uf_plugin_get_fun_rep(uf, e_i_desc->arg[0]))); add_if_not_true_term(cond, _o_yices_eq(e_j_desc->arg[0], - uf_plugin_get_fun_node(uf, e_j_desc->arg[0])->t)); + uf_plugin_get_fun_rep(uf, e_j_desc->arg[0]))); for (k =0; k < indices.size; ++k) { add_if_not_true_term(cond, _o_yices_neq(idx, indices.data[k])); } @@ -786,10 +987,12 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, const ivector_t* select_ } } + done: if (!res && cond) { ivector_shrink(cond, cond_old_size); } + delete_ivector(&indices); return res; } @@ -797,21 +1000,24 @@ static bool uf_plugin_array_ext_check(uf_plugin_t* uf, trail_token_t* prop, const ivector_t* array_terms, const ivector_t* select_terms) { + ctx_trace_printf(uf->ctx, "ARRAY EXT CHECK \n"); + term_table_t* terms = uf->ctx->terms; uint32_t i, j, k; ivector_t cond; - int_hset_t path_idx_set; + int_hset_t path, indices; init_ivector(&cond, 0); - init_int_hset(&path_idx_set, 0); + init_int_hset(&path, 0); + init_int_hset(&indices, 0); for (i = 0; i < array_terms->size; ++i) { term_t arr1 = array_terms->data[i]; type_t arr1_type = term_type(terms, arr1); assert(variable_db_get_variable_if_exists(uf->ctx->var_db, arr1) != variable_null); - for (j = 1; j < array_terms->size; ++j) { + for (j = i + 1; j < array_terms->size; ++j) { term_t arr2 = array_terms->data[j]; type_t arr2_type = term_type(terms, arr2); if (arr1 == arr2 || arr1_type != arr2_type || @@ -819,47 +1025,58 @@ bool uf_plugin_array_ext_check(uf_plugin_t* uf, trail_token_t* prop, continue; } - int_hset_reset(&path_idx_set); - ivector_shrink(&cond, 0); - const fun_node_t* fn_arr1 = get_rep(&uf->eq_graph, uf_plugin_get_fun_node(uf, arr1), - &path_idx_set, &cond); - const fun_node_t* fn_arr2 = get_rep(&uf->eq_graph, uf_plugin_get_fun_node(uf, arr2), - &path_idx_set, &cond); + const fun_node_t* fn_arr1 = get_rep(&uf->eq_graph, uf_plugin_get_fun_node(uf, arr1)); + const fun_node_t* fn_arr2 = get_rep(&uf->eq_graph, uf_plugin_get_fun_node(uf, arr2)); if (fn_arr1 == fn_arr2) { - int_hset_close(&path_idx_set); + ctx_trace_printf(uf->ctx, "ARRAY EXT CHEK : POSSIBLE CONFLICT\n "); + bool ok = true; + composite_term_t* t_desc = NULL; + + ivector_shrink(&cond, 0); + int_hset_reset(&path); + int_hset_reset(&indices); + uf_plugin_compute_weak_path(uf, uf_plugin_get_fun_node(uf, arr1), + uf_plugin_get_fun_node(uf, arr2), &indices, &path); + int_hset_close(&path); + int_hset_close(&indices); + for (k = 0; ok && k < indices.nelems; ++ k) { + ctx_trace_printf(uf->ctx, ">2 Trying INDEX: "); + term_t idx = indices.data[k]; + if (!uf_plugin_array_weak_congruence_i(uf, select_terms, arr1, arr2, + idx, &cond)) { + ok = false; + break; + } + } - for (k = 0; ok && k < path_idx_set.nelems; ++ k) { - if (!uf_plugin_array_weak_congruence_i(uf, select_terms, arr1, arr2, - path_idx_set.data[k], &cond)) { - ok = false; - break; + if (ok) { + for (k = 0; k < path.nelems; ++k) { + add_if_not_true_term(&uf->conflict, + _o_yices_eq(path.data[k], + uf_plugin_get_fun_rep(uf, path.data[k]))); } - } - if (ok) { add_if_not_true_term(&uf->conflict, _o_yices_eq(arr1, - uf_plugin_get_fun_node(uf, arr1)->t)); + uf_plugin_get_fun_rep(uf, arr1))); add_if_not_true_term(&uf->conflict, _o_yices_eq(arr2, - uf_plugin_get_fun_node(uf, arr2)->t)); - - assert(eq_graph_are_equal(&uf->eq_graph, arr1, - uf_plugin_get_fun_node(uf, arr1)->t)); - assert(eq_graph_are_equal(&uf->eq_graph, arr2, - uf_plugin_get_fun_node(uf, arr2)->t)); + uf_plugin_get_fun_rep(uf, arr2))); for (k = 0; k < cond.size; ++k) { add_if_not_true_term(&uf->conflict, cond.data[k]); } + ivector_push(&uf->conflict, _o_yices_neq(arr1, arr2)); + ctx_trace_printf(uf->ctx, ">2 Array 1: "); + ctx_trace_term(uf->ctx, arr1); + ctx_trace_printf(uf->ctx, ">2 Array 2: "); + ctx_trace_term(uf->ctx, arr2); ivector_remove_duplicates(&uf->conflict); - assert(uf->conflict.size > 1); - if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { ctx_trace_printf(uf->ctx, ">2 Array conflict BEGIN 2\n"); for (k = 0; k < uf->conflict.size; ++ k) { @@ -868,6 +1085,8 @@ bool uf_plugin_array_ext_check(uf_plugin_t* uf, trail_token_t* prop, ctx_trace_printf(uf->ctx, ">2 Array conflict END 2\n"); } + assert(uf->conflict.size > 1); + goto done; } } @@ -876,7 +1095,7 @@ bool uf_plugin_array_ext_check(uf_plugin_t* uf, trail_token_t* prop, done: delete_ivector(&cond); - delete_int_hset(&path_idx_set); + delete_int_hset(&path); return (uf->conflict.size == 0); } @@ -929,8 +1148,6 @@ bool uf_plugin_array_ext_diff_lemma(uf_plugin_t* uf, trail_token_t* prop, ivector_remove_duplicates(&uf->conflict); - assert(uf->conflict.size > 1); - if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { ctx_trace_printf(uf->ctx, ">2 Array conflict 2 BEGIN\n"); uint32_t k; @@ -940,6 +1157,8 @@ bool uf_plugin_array_ext_diff_lemma(uf_plugin_t* uf, trail_token_t* prop, ctx_trace_printf(uf->ctx, ">2 Array conflict 2 END\n"); } + assert(uf->conflict.size > 1); + return false; } @@ -989,12 +1208,13 @@ bool uf_plugin_array_read_over_write_check(uf_plugin_t* uf, trail_token_t* prop, const ivector_t* array_terms, const ivector_t* select_terms) { term_table_t* terms = uf->ctx->terms; - uint32_t i, j; + uint32_t i, j, k; - int_hset_t path_idx_set; - ivector_t cond; - init_int_hset(&path_idx_set, 0); + ivector_t cond, indices; init_ivector(&cond, 0); + init_ivector(&indices, 0); + + ctx_trace_printf(uf->ctx, "CHECKING READ OVER WRITE\n "); // generalized read-over-write lemma for (i = 0; i < select_terms->size; ++ i) { @@ -1002,55 +1222,53 @@ bool uf_plugin_array_read_over_write_check(uf_plugin_t* uf, trail_token_t* prop, type_t t_i_type = term_type(terms, t_i); assert(variable_db_get_variable_if_exists(uf->ctx->var_db, t_i) != variable_null); composite_term_t* e_i_desc = app_term_desc(terms, t_i); - - for (j = 0; j < select_terms->size; ++ j) { + + ctx_trace_printf(uf->ctx, "SELECT TERM 1 : "); + ctx_trace_term(uf->ctx, t_i); + for (j = 1; j < select_terms->size; ++ j) { term_t t_j = select_terms->data[j]; type_t t_j_type = term_type(terms, t_j); composite_term_t* e_j_desc = app_term_desc(terms, t_j); if (t_i == t_j || t_i_type != t_j_type || !eq_graph_are_equal(&uf->eq_graph, e_i_desc->arg[1], e_j_desc->arg[1]) || + //eq_graph_are_equal(&uf->eq_graph, e_i_desc->arg[0], e_j_desc->arg[0]) || eq_graph_are_equal(&uf->eq_graph, t_i, t_j)) { continue; } - int_hset_reset(&path_idx_set); + ctx_trace_printf(uf->ctx, "SELECT TERM 2 : "); + ctx_trace_term(uf->ctx, t_j); + + ivector_shrink(&indices, 0); ivector_shrink(&cond, 0); - const fun_node_t* fn_i = - get_rep_i(&uf->eq_graph, uf_plugin_get_fun_node(uf, e_i_desc->arg[0]), - e_i_desc->arg[1], &path_idx_set, &cond); - const fun_node_t* fn_j = - get_rep_i(&uf->eq_graph, uf_plugin_get_fun_node(uf, e_j_desc->arg[0]), - e_i_desc->arg[1], &path_idx_set, &cond); - assert(fn_i != NULL); - assert(fn_j != NULL); - - if (fn_i == fn_j) { + + if (uf_plugin_array_weak_eq_i(uf, e_i_desc->arg[0], e_j_desc->arg[0], + e_i_desc->arg[1], &indices, &cond)) { + ctx_trace_printf(uf->ctx, "FOUND CONFLICT\n "); // found conflict assert(uf->conflict.size == 0); add_if_not_true_term(&uf->conflict, _o_yices_eq(e_i_desc->arg[0], - uf_plugin_get_fun_node(uf, e_i_desc->arg[0])->t)); + uf_plugin_get_fun_rep(uf, e_i_desc->arg[0]))); add_if_not_true_term(&uf->conflict, _o_yices_eq(e_j_desc->arg[0], - uf_plugin_get_fun_node(uf, e_j_desc->arg[0])->t)); + uf_plugin_get_fun_rep(uf, e_j_desc->arg[0]))); add_if_not_true_term(&uf->conflict, _o_yices_eq(e_i_desc->arg[1], e_j_desc->arg[1])); add_if_not_true_term(&uf->conflict, _o_yices_neq(t_i, t_j)); - int_hset_close(&path_idx_set); - bool ok = true; - uint32_t k; - for (k = 0; k < path_idx_set.nelems; ++ k) { - assert(path_idx_set.data[k] != e_i_desc->arg[1]); + bool ok = true; + for (k = 0; k < indices.size; ++ k) { + assert(indices.data[k] != e_i_desc->arg[1]); if (eq_graph_are_equal(&uf->eq_graph, - e_i_desc->arg[1], path_idx_set.data[k])) { + e_i_desc->arg[1], indices.data[k])) { ok = false; break; } add_if_not_true_term(&uf->conflict, - _o_yices_neq(e_i_desc->arg[1], path_idx_set.data[k])); + _o_yices_neq(e_i_desc->arg[1], indices.data[k])); } if (!ok) { @@ -1079,7 +1297,8 @@ bool uf_plugin_array_read_over_write_check(uf_plugin_t* uf, trail_token_t* prop, } done: - delete_int_hset(&path_idx_set); + delete_ivector(&indices); + delete_ivector(&cond); return uf->conflict.size == 0; } @@ -1091,7 +1310,7 @@ void uf_plugin_array_build_weak_eq_graph(uf_plugin_t* uf, const ivector_t* array // clear the fun node map // we start from a fresh weak equivalence graph - clear_fun_node_map(&uf->fun_node_map); + uf_plugin_clear_fun_node_map(uf); // build the graph for (i = 0; i < array_terms->size; ++ i) { @@ -1105,9 +1324,13 @@ void uf_plugin_array_build_weak_eq_graph(uf_plugin_t* uf, const ivector_t* array composite_term_t* t_desc = update_term_desc(terms, t); fun_node_t *a = uf_plugin_get_fun_node(uf, t_desc->arg[0]); term_t ai = t_desc->arg[1]; - add_store(&uf->eq_graph, a, b, ai, t); + ctx_trace_printf(uf->ctx, "ADDING STORE "); + ctx_trace_term(uf->ctx, t); + add_store(uf, a, b, ai, t); } } + ctx_trace_printf(uf->ctx, "ADDING STORE DONE"); + } static From 1fdfeaedd3a99493fa30b8ebb4ee9eb9ad1d4300 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Wed, 8 Feb 2023 01:08:08 -0800 Subject: [PATCH 051/182] progress: working on few problems -- more testing needed --- src/mcsat/uf/uf_plugin.c | 86 ++++++++++++++++++++++------------------ 1 file changed, 48 insertions(+), 38 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index cdb97e231..414c41207 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -141,7 +141,7 @@ static inline fun_node_t *new_node() { } static const fun_node_t* get_rep(const eq_graph_t* eq_graph, - const fun_node_t* n) { + const fun_node_t* n) { const fun_node_t* res = n; while (res->p != NULL) { res = res->p; @@ -150,7 +150,7 @@ static const fun_node_t* get_rep(const eq_graph_t* eq_graph, } static uint32_t count_primary(const eq_graph_t* eq_graph, - const fun_node_t* n) { + const fun_node_t* n) { uint32_t res = 0; const fun_node_t* tmp = n; @@ -162,7 +162,7 @@ static uint32_t count_primary(const eq_graph_t* eq_graph, } static const fun_node_t* get_rep_i(const eq_graph_t* eq_graph, const fun_node_t* n, - const term_t idx) { + const term_t idx) { const fun_node_t* res = n; while (res->p != NULL) { if (eq_graph_are_equal(eq_graph, res->pi, idx)) { @@ -178,7 +178,7 @@ static const fun_node_t* get_rep_i(const eq_graph_t* eq_graph, const fun_node_t* } static uint32_t count_secondary(const eq_graph_t* eq_graph, const fun_node_t* n, - const term_t idx) { + const term_t idx) { uint32_t res = 0; const fun_node_t* tmp = n; while (tmp->p != NULL) { @@ -196,7 +196,7 @@ static uint32_t count_secondary(const eq_graph_t* eq_graph, const fun_node_t* n, } static const fun_node_t* find_secondary_node(const eq_graph_t* eq_graph, - fun_node_t* n, term_t idx) { + fun_node_t* n, term_t idx) { const fun_node_t* res = n; while (res->p != NULL && !eq_graph_are_equal(eq_graph, res->pi, idx)) { res = res->p; @@ -229,6 +229,8 @@ static void make_rep_i(uf_plugin_t* uf, fun_node_t* n) { n->s = NULL; n->sstore = NULL_TERM; } + assert(n->s == NULL); + assert(n->sstore == NULL_TERM); } static void make_rep(uf_plugin_t* uf, fun_node_t* n) { @@ -248,7 +250,7 @@ static void make_rep(uf_plugin_t* uf, fun_node_t* n) { } static void add_secondary(uf_plugin_t* uf, int_hset_t* idx_set, - fun_node_t* a, fun_node_t* b, term_t store) { + fun_node_t* a, fun_node_t* b, term_t store) { fun_node_t* n = a; while (n != b) { assert(n->p); @@ -257,7 +259,6 @@ static void add_secondary(uf_plugin_t* uf, int_hset_t* idx_set, make_rep_i(uf, n); n->s = b; n->sstore = store; - assert(n->pi != uf_plugin_get_index_from_store(uf, store)); } int_hset_add(idx_set, n->pi); n = n->p; @@ -459,8 +460,8 @@ static fun_node_t *uf_plugin_get_fun_node(uf_plugin_t* uf, term_t t) { } static void uf_plugin_compute_weak_path(uf_plugin_t* uf, fun_node_t* a, - fun_node_t* b, int_hset_t* indices, - int_hset_t* path) { + fun_node_t* b, int_hset_t* indices, + int_hset_t* path) { ctx_trace_printf(uf->ctx, "WEAK PATH\n "); //arr1 and arr2 must be in the same weak equivalence class @@ -506,42 +507,46 @@ static void uf_plugin_compute_weak_path(uf_plugin_t* uf, fun_node_t* a, } static fun_node_t* uf_plugin_compute_path_secondary(uf_plugin_t* uf, fun_node_t* a, - term_t idx, - int_hset_t* indices, - int_hset_t* path) { + term_t idx, + int_hset_t* indices, + int_hset_t* path) { fun_node_t* res = NULL; term_table_t* terms = uf->ctx->terms; - fun_node_t* tmp = find_secondary_node(&uf->eq_graph, a, idx); + const fun_node_t* tmp = find_secondary_node(&uf->eq_graph, a, idx); composite_term_t* t_desc = update_term_desc(terms, tmp->sstore); assert(tmp->pi != NULL_TERM); assert(tmp->s); - assert(tmp->pi == idx); - assert(t_desc->arg[1] != idx); + assert(eq_graph_are_equal(&uf->eq_graph, tmp->pi, idx)); + if (t_desc->arg[1] == idx) { + ctx_trace_term(uf->ctx, tmp->sstore); + ctx_trace_term(uf->ctx, t_desc->arg[1]); + ctx_trace_term(uf->ctx, idx); + ctx_trace_term(uf->ctx, tmp->pstore); + ctx_trace_term(uf->ctx, tmp->pi); + } + + int_hset_add(path, a->t); if (find_secondary_node(&uf->eq_graph, uf_plugin_get_fun_node(uf, t_desc->arg[0]), idx) != tmp) { ctx_trace_printf(uf->ctx, "HERE 1\n"); uf_plugin_compute_weak_path(uf, a, uf_plugin_get_fun_node(uf, tmp->sstore), indices, path); - assert(!int_hset_member(indices, idx)); - ctx_trace_printf(uf->ctx, "inner old count %"PRIi32"\n", count_secondary(&uf->eq_graph, a, idx)); - res = uf_plugin_get_fun_node(uf, t_desc->arg[0]); + res = tmp->s; ctx_trace_printf(uf->ctx, "inner new count %"PRIi32"\n", count_secondary(&uf->eq_graph, res, idx)); int_hset_add(path, tmp->sstore); } else { ctx_trace_printf(uf->ctx, "HERE 2\n"); uf_plugin_compute_weak_path(uf, a, uf_plugin_get_fun_node(uf, t_desc->arg[0]), indices, path); - assert(!int_hset_member(indices, idx)); - res = uf_plugin_get_fun_node(uf, tmp->sstore); ctx_trace_printf(uf->ctx, "inner new count %"PRIi32"\n", count_secondary(&uf->eq_graph, res, idx)); int_hset_add(path, t_desc->arg[0]); } - int_hset_add(path, a->t); + int_hset_add(indices, t_desc->arg[1]); - assert(!int_hset_member(indices, idx)); + return res; } @@ -567,24 +572,26 @@ static void uf_plugin_compute_weak_path_i(uf_plugin_t* uf, term_t arr1, ctx_trace_printf(uf->ctx, "new count %"PRIi32"\n", count_secondary(&uf->eq_graph, a, idx)); sec_cnt1--; assert(count_secondary(&uf->eq_graph, a, idx) == sec_cnt1); + assert(get_rep_i(&uf->eq_graph, a, idx) == get_rep_i(&uf->eq_graph, b, idx)); } while (sec_cnt2 > sec_cnt1) { ctx_trace_printf(uf->ctx, "DECREMENTING COUNT 2\n "); b = uf_plugin_compute_path_secondary(uf, b, idx, indices, path); sec_cnt2--; assert(count_secondary(&uf->eq_graph, b, idx) == sec_cnt2); + assert(get_rep_i(&uf->eq_graph, a, idx) == get_rep_i(&uf->eq_graph, b, idx)); } assert(sec_cnt1 == sec_cnt2); - while (sec_cnt2 > 0 && find_secondary_node(&uf->eq_graph, a, idx) != find_secondary_node(&uf->eq_graph, b, idx)) { + while (sec_cnt1 > 0 && find_secondary_node(&uf->eq_graph, a, idx) != find_secondary_node(&uf->eq_graph, b, idx)) { ctx_trace_printf(uf->ctx, "DECREMENTING COUNT 1 & 2\n "); assert(count_secondary(&uf->eq_graph, a, idx) == count_secondary(&uf->eq_graph, b, idx)); a = uf_plugin_compute_path_secondary(uf, a, idx, indices, path); b = uf_plugin_compute_path_secondary(uf, b, idx, indices, path); + assert(get_rep_i(&uf->eq_graph, a, idx) == get_rep_i(&uf->eq_graph, b, idx)); } uf_plugin_compute_weak_path(uf, a, b, indices, path); - assert(!int_hset_member(indices, idx)); int_hset_add(path, arr2); } @@ -854,13 +861,16 @@ bool uf_plugin_array_weak_eq_i(uf_plugin_t* uf, term_t arr1, term_t arr2, // add indices int_hset_close(&index_set); for (k = 0; k < index_set.nelems; ++k) { - assert(idx != index_set.data[k]); + if (eq_graph_are_equal(&uf->eq_graph, idx, index_set.data[k])) { + res = false; + break; + } ivector_push(indices, index_set.data[k]); } int_hset_close(&path); // add path eq conditions - for (k = 0; k < path.nelems; ++k) { + for (k = 0; res && k < path.nelems; ++k) { add_if_not_true_term(cond, _o_yices_eq(path.data[k], uf_plugin_get_fun_rep(uf, path.data[k]))); @@ -1036,20 +1046,20 @@ bool uf_plugin_array_ext_check(uf_plugin_t* uf, trail_token_t* prop, ivector_shrink(&cond, 0); int_hset_reset(&path); - int_hset_reset(&indices); + int_hset_reset(&indices); uf_plugin_compute_weak_path(uf, uf_plugin_get_fun_node(uf, arr1), - uf_plugin_get_fun_node(uf, arr2), &indices, &path); + uf_plugin_get_fun_node(uf, arr2), &indices, &path); int_hset_close(&path); - int_hset_close(&indices); + int_hset_close(&indices); for (k = 0; ok && k < indices.nelems; ++ k) { ctx_trace_printf(uf->ctx, ">2 Trying INDEX: "); term_t idx = indices.data[k]; - if (!uf_plugin_array_weak_congruence_i(uf, select_terms, arr1, arr2, - idx, &cond)) { - ok = false; - break; - } - } + if (!uf_plugin_array_weak_congruence_i(uf, select_terms, arr1, arr2, + idx, &cond)) { + ok = false; + break; + } + } if (ok) { for (k = 0; k < path.nelems; ++k) { @@ -1244,8 +1254,8 @@ bool uf_plugin_array_read_over_write_check(uf_plugin_t* uf, trail_token_t* prop, ivector_shrink(&cond, 0); if (uf_plugin_array_weak_eq_i(uf, e_i_desc->arg[0], e_j_desc->arg[0], - e_i_desc->arg[1], &indices, &cond)) { - ctx_trace_printf(uf->ctx, "FOUND CONFLICT\n "); + e_i_desc->arg[1], &indices, &cond)) { + ctx_trace_printf(uf->ctx, "FOUND CONFLICT\n "); // found conflict assert(uf->conflict.size == 0); add_if_not_true_term(&uf->conflict, @@ -1258,7 +1268,7 @@ bool uf_plugin_array_read_over_write_check(uf_plugin_t* uf, trail_token_t* prop, add_if_not_true_term(&uf->conflict, _o_yices_eq(e_i_desc->arg[1], e_j_desc->arg[1])); add_if_not_true_term(&uf->conflict, _o_yices_neq(t_i, t_j)); - bool ok = true; + bool ok = true; for (k = 0; k < indices.size; ++ k) { assert(indices.data[k] != e_i_desc->arg[1]); if (eq_graph_are_equal(&uf->eq_graph, From a514ceec2d4a510898746c80891311afedae00f9 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Wed, 8 Feb 2023 01:21:29 -0800 Subject: [PATCH 052/182] minor --- src/mcsat/uf/uf_plugin.c | 55 ++++++++++++---------------------------- 1 file changed, 16 insertions(+), 39 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index 414c41207..17c697f68 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -462,7 +462,7 @@ static fun_node_t *uf_plugin_get_fun_node(uf_plugin_t* uf, term_t t) { static void uf_plugin_compute_weak_path(uf_plugin_t* uf, fun_node_t* a, fun_node_t* b, int_hset_t* indices, int_hset_t* path) { - ctx_trace_printf(uf->ctx, "WEAK PATH\n "); + //ctx_trace_printf(uf->ctx, "WEAK PATH\n "); //arr1 and arr2 must be in the same weak equivalence class assert(get_rep(&uf->eq_graph, a) == get_rep(&uf->eq_graph, b)); @@ -519,29 +519,22 @@ static fun_node_t* uf_plugin_compute_path_secondary(uf_plugin_t* uf, fun_node_t* assert(tmp->s); assert(eq_graph_are_equal(&uf->eq_graph, tmp->pi, idx)); if (t_desc->arg[1] == idx) { - ctx_trace_term(uf->ctx, tmp->sstore); - ctx_trace_term(uf->ctx, t_desc->arg[1]); - ctx_trace_term(uf->ctx, idx); - ctx_trace_term(uf->ctx, tmp->pstore); - ctx_trace_term(uf->ctx, tmp->pi); + //ctx_trace_term(uf->ctx, tmp->sstore); + //ctx_trace_term(uf->ctx, t_desc->arg[1]); + //ctx_trace_term(uf->ctx, idx); + //ctx_trace_term(uf->ctx, tmp->pstore); + //ctx_trace_term(uf->ctx, tmp->pi); } int_hset_add(path, a->t); if (find_secondary_node(&uf->eq_graph, uf_plugin_get_fun_node(uf, t_desc->arg[0]), idx) != tmp) { - ctx_trace_printf(uf->ctx, "HERE 1\n"); uf_plugin_compute_weak_path(uf, a, uf_plugin_get_fun_node(uf, tmp->sstore), indices, path); - - ctx_trace_printf(uf->ctx, "inner old count %"PRIi32"\n", count_secondary(&uf->eq_graph, a, idx)); res = tmp->s; - ctx_trace_printf(uf->ctx, "inner new count %"PRIi32"\n", count_secondary(&uf->eq_graph, res, idx)); int_hset_add(path, tmp->sstore); } else { - ctx_trace_printf(uf->ctx, "HERE 2\n"); uf_plugin_compute_weak_path(uf, a, uf_plugin_get_fun_node(uf, t_desc->arg[0]), indices, path); - res = uf_plugin_get_fun_node(uf, tmp->sstore); - ctx_trace_printf(uf->ctx, "inner new count %"PRIi32"\n", count_secondary(&uf->eq_graph, res, idx)); int_hset_add(path, t_desc->arg[0]); } @@ -554,7 +547,7 @@ static void uf_plugin_compute_weak_path_i(uf_plugin_t* uf, term_t arr1, term_t arr2, term_t idx, int_hset_t* indices, int_hset_t* path) { - ctx_trace_printf(uf->ctx, "WEAK PATH I\n "); + //ctx_trace_printf(uf->ctx, "WEAK PATH I\n "); term_table_t* terms = uf->ctx->terms; fun_node_t* a = uf_plugin_get_fun_node(uf, arr1); @@ -566,16 +559,12 @@ static void uf_plugin_compute_weak_path_i(uf_plugin_t* uf, term_t arr1, int_hset_add(path, arr1); while (sec_cnt1 > sec_cnt2) { - ctx_trace_printf(uf->ctx, "DECREMENTING COUNT 1\n "); - ctx_trace_printf(uf->ctx, "old count %"PRIi32"\n", count_secondary(&uf->eq_graph, a, idx)); a = uf_plugin_compute_path_secondary(uf, a, idx, indices, path); - ctx_trace_printf(uf->ctx, "new count %"PRIi32"\n", count_secondary(&uf->eq_graph, a, idx)); sec_cnt1--; assert(count_secondary(&uf->eq_graph, a, idx) == sec_cnt1); assert(get_rep_i(&uf->eq_graph, a, idx) == get_rep_i(&uf->eq_graph, b, idx)); } while (sec_cnt2 > sec_cnt1) { - ctx_trace_printf(uf->ctx, "DECREMENTING COUNT 2\n "); b = uf_plugin_compute_path_secondary(uf, b, idx, indices, path); sec_cnt2--; assert(count_secondary(&uf->eq_graph, b, idx) == sec_cnt2); @@ -584,7 +573,6 @@ static void uf_plugin_compute_weak_path_i(uf_plugin_t* uf, term_t arr1, assert(sec_cnt1 == sec_cnt2); while (sec_cnt1 > 0 && find_secondary_node(&uf->eq_graph, a, idx) != find_secondary_node(&uf->eq_graph, b, idx)) { - ctx_trace_printf(uf->ctx, "DECREMENTING COUNT 1 & 2\n "); assert(count_secondary(&uf->eq_graph, a, idx) == count_secondary(&uf->eq_graph, b, idx)); a = uf_plugin_compute_path_secondary(uf, a, idx, indices, path); b = uf_plugin_compute_path_secondary(uf, b, idx, indices, path); @@ -828,7 +816,7 @@ bool uf_plugin_array_weak_eq_i(uf_plugin_t* uf, term_t arr1, term_t arr2, term_t idx, ivector_t* indices, ivector_t* cond) { term_table_t* terms = uf->ctx->terms; - ctx_trace_printf(uf->ctx, "CHECKING ARRAY WEAK EQ I\n "); + //ctx_trace_printf(uf->ctx, "CHECKING ARRAY WEAK EQ I\n "); int_hset_t index_set, path; bool res = false; @@ -917,7 +905,6 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, const ivector_t* select_ } } - ctx_trace_printf(uf->ctx, ">2 WEAKLY CONG 1 \n "); res = true; for (k =0; k < indices.size; ++k) { @@ -1010,7 +997,7 @@ static bool uf_plugin_array_ext_check(uf_plugin_t* uf, trail_token_t* prop, const ivector_t* array_terms, const ivector_t* select_terms) { - ctx_trace_printf(uf->ctx, "ARRAY EXT CHECK \n"); + //ctx_trace_printf(uf->ctx, "ARRAY EXT CHECK \n"); term_table_t* terms = uf->ctx->terms; uint32_t i, j, k; @@ -1039,8 +1026,6 @@ bool uf_plugin_array_ext_check(uf_plugin_t* uf, trail_token_t* prop, const fun_node_t* fn_arr2 = get_rep(&uf->eq_graph, uf_plugin_get_fun_node(uf, arr2)); if (fn_arr1 == fn_arr2) { - ctx_trace_printf(uf->ctx, "ARRAY EXT CHEK : POSSIBLE CONFLICT\n "); - bool ok = true; composite_term_t* t_desc = NULL; @@ -1052,7 +1037,7 @@ bool uf_plugin_array_ext_check(uf_plugin_t* uf, trail_token_t* prop, int_hset_close(&path); int_hset_close(&indices); for (k = 0; ok && k < indices.nelems; ++ k) { - ctx_trace_printf(uf->ctx, ">2 Trying INDEX: "); + //ctx_trace_printf(uf->ctx, ">2 Trying INDEX: "); term_t idx = indices.data[k]; if (!uf_plugin_array_weak_congruence_i(uf, select_terms, arr1, arr2, idx, &cond)) { @@ -1080,10 +1065,6 @@ bool uf_plugin_array_ext_check(uf_plugin_t* uf, trail_token_t* prop, } ivector_push(&uf->conflict, _o_yices_neq(arr1, arr2)); - ctx_trace_printf(uf->ctx, ">2 Array 1: "); - ctx_trace_term(uf->ctx, arr1); - ctx_trace_printf(uf->ctx, ">2 Array 2: "); - ctx_trace_term(uf->ctx, arr2); ivector_remove_duplicates(&uf->conflict); @@ -1224,7 +1205,7 @@ bool uf_plugin_array_read_over_write_check(uf_plugin_t* uf, trail_token_t* prop, init_ivector(&cond, 0); init_ivector(&indices, 0); - ctx_trace_printf(uf->ctx, "CHECKING READ OVER WRITE\n "); + //ctx_trace_printf(uf->ctx, "CHECKING READ OVER WRITE\n "); // generalized read-over-write lemma for (i = 0; i < select_terms->size; ++ i) { @@ -1233,8 +1214,8 @@ bool uf_plugin_array_read_over_write_check(uf_plugin_t* uf, trail_token_t* prop, assert(variable_db_get_variable_if_exists(uf->ctx->var_db, t_i) != variable_null); composite_term_t* e_i_desc = app_term_desc(terms, t_i); - ctx_trace_printf(uf->ctx, "SELECT TERM 1 : "); - ctx_trace_term(uf->ctx, t_i); + //ctx_trace_printf(uf->ctx, "SELECT TERM 1 : "); + //ctx_trace_term(uf->ctx, t_i); for (j = 1; j < select_terms->size; ++ j) { term_t t_j = select_terms->data[j]; type_t t_j_type = term_type(terms, t_j); @@ -1247,15 +1228,15 @@ bool uf_plugin_array_read_over_write_check(uf_plugin_t* uf, trail_token_t* prop, continue; } - ctx_trace_printf(uf->ctx, "SELECT TERM 2 : "); - ctx_trace_term(uf->ctx, t_j); + //ctx_trace_printf(uf->ctx, "SELECT TERM 2 : "); + //ctx_trace_term(uf->ctx, t_j); ivector_shrink(&indices, 0); ivector_shrink(&cond, 0); if (uf_plugin_array_weak_eq_i(uf, e_i_desc->arg[0], e_j_desc->arg[0], e_i_desc->arg[1], &indices, &cond)) { - ctx_trace_printf(uf->ctx, "FOUND CONFLICT\n "); + //ctx_trace_printf(uf->ctx, "FOUND CONFLICT\n "); // found conflict assert(uf->conflict.size == 0); add_if_not_true_term(&uf->conflict, @@ -1334,13 +1315,9 @@ void uf_plugin_array_build_weak_eq_graph(uf_plugin_t* uf, const ivector_t* array composite_term_t* t_desc = update_term_desc(terms, t); fun_node_t *a = uf_plugin_get_fun_node(uf, t_desc->arg[0]); term_t ai = t_desc->arg[1]; - ctx_trace_printf(uf->ctx, "ADDING STORE "); - ctx_trace_term(uf->ctx, t); add_store(uf, a, b, ai, t); } } - ctx_trace_printf(uf->ctx, "ADDING STORE DONE"); - } static From 95e3af97bb88ff42c2a6d52ad46903885f5f9aa9 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Thu, 9 Feb 2023 02:19:05 -0800 Subject: [PATCH 053/182] possible fix --- src/mcsat/uf/uf_plugin.c | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index 17c697f68..c582de94d 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -436,6 +436,7 @@ static term_t uf_plugin_get_fun_rep(uf_plugin_t* uf, term_t t) { int32_t v_int = 0; bool ok = q_get32((rational_t*)&val->q, &v_int); (void) ok; + assert(ok); int_hmap_pair_t *v = int_hmap_find(&uf->fun_val_term_map, v_int); if (v == NULL) { @@ -443,6 +444,8 @@ static term_t uf_plugin_get_fun_rep(uf_plugin_t* uf, term_t t) { v->val = t; } + assert(eq_graph_are_equal(&uf->eq_graph, t, v->val)); + return v->val; } @@ -467,6 +470,7 @@ static void uf_plugin_compute_weak_path(uf_plugin_t* uf, fun_node_t* a, //arr1 and arr2 must be in the same weak equivalence class assert(get_rep(&uf->eq_graph, a) == get_rep(&uf->eq_graph, b)); + int_hset_add(path, a->t); if (a == b) { return; } @@ -504,6 +508,8 @@ static void uf_plugin_compute_weak_path(uf_plugin_t* uf, fun_node_t* a, } assert(n1 == n2); + + int_hset_add(path, b->t); } static fun_node_t* uf_plugin_compute_path_secondary(uf_plugin_t* uf, fun_node_t* a, @@ -518,23 +524,20 @@ static fun_node_t* uf_plugin_compute_path_secondary(uf_plugin_t* uf, fun_node_t* assert(tmp->pi != NULL_TERM); assert(tmp->s); assert(eq_graph_are_equal(&uf->eq_graph, tmp->pi, idx)); - if (t_desc->arg[1] == idx) { - //ctx_trace_term(uf->ctx, tmp->sstore); - //ctx_trace_term(uf->ctx, t_desc->arg[1]); - //ctx_trace_term(uf->ctx, idx); - //ctx_trace_term(uf->ctx, tmp->pstore); - //ctx_trace_term(uf->ctx, tmp->pi); - } int_hset_add(path, a->t); if (find_secondary_node(&uf->eq_graph, uf_plugin_get_fun_node(uf, t_desc->arg[0]), idx) != tmp) { + //assert(find_secondary_node(&uf->eq_graph, uf_plugin_get_fun_node(uf, tmp->sstore), idx) == tmp); uf_plugin_compute_weak_path(uf, a, uf_plugin_get_fun_node(uf, tmp->sstore), indices, path); + res = tmp->s; int_hset_add(path, tmp->sstore); } else { + //assert(find_secondary_node(&uf->eq_graph, uf_plugin_get_fun_node(uf, t_desc->arg[0]), idx) == tmp); uf_plugin_compute_weak_path(uf, a, uf_plugin_get_fun_node(uf, t_desc->arg[0]), indices, path); - res = uf_plugin_get_fun_node(uf, tmp->sstore); + + res = tmp->s; int_hset_add(path, t_desc->arg[0]); } @@ -1310,8 +1313,8 @@ void uf_plugin_array_build_weak_eq_graph(uf_plugin_t* uf, const ivector_t* array assert(is_function_term(terms, t)); assert(t_kind == UNINTERPRETED_TERM || t_kind == UPDATE_TERM); + fun_node_t *b = uf_plugin_get_fun_node(uf, t); if (t_kind == UPDATE_TERM) { - fun_node_t *b = uf_plugin_get_fun_node(uf, t); composite_term_t* t_desc = update_term_desc(terms, t); fun_node_t *a = uf_plugin_get_fun_node(uf, t_desc->arg[0]); term_t ai = t_desc->arg[1]; From d705db45b0a701765066727ab704a2421ebe1ce2 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Fri, 10 Feb 2023 01:52:22 -0800 Subject: [PATCH 054/182] weq data structure fixes --- src/mcsat/uf/uf_plugin.c | 172 +++++++++++++++++++++++---------------- 1 file changed, 101 insertions(+), 71 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index c582de94d..2fc876274 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -217,20 +217,31 @@ static void make_rep_i(uf_plugin_t* uf, fun_node_t* n) { return; } - if (!eq_graph_are_equal(&uf->eq_graph, - n->s->pi, n->pi)) { - n->s = n->s->p; - n->sstore = n->s->pstore; - make_rep_i(uf, n); - } else { - make_rep_i(uf, n->s); - n->s->s = n; - n->s->sstore = n->sstore; - n->s = NULL; - n->sstore = NULL_TERM; - } - assert(n->s == NULL); - assert(n->sstore == NULL_TERM); + fun_node_t* prev = n; + fun_node_t* next = n->s; + term_t prev_store = n->sstore; + term_t idx = n->pi; + fun_node_t* tmp = NULL; + term_t tmp_sec_store = NULL_TERM; + + while (next) { + next = find_secondary_node(&uf->eq_graph, next, idx); + tmp = next->s; + tmp_sec_store = next->sstore; + + next->s = prev; + next->sstore = prev_store; + + assert(!eq_graph_are_equal(&uf->eq_graph, next->pi, + uf_plugin_get_index_from_store(uf, next->sstore))); + + prev = next; + prev_store = tmp_sec_store; + next = tmp; + } + + n->s = NULL; + n->sstore = NULL_TERM; } static void make_rep(uf_plugin_t* uf, fun_node_t* n) { @@ -249,18 +260,41 @@ static void make_rep(uf_plugin_t* uf, fun_node_t* n) { n->pi = NULL_TERM; } +static term_t uf_plugin_get_term_rep(uf_plugin_t* uf, term_t t) { + assert(eq_graph_term_has_value(&uf->eq_graph, t)); + + mcsat_value_t* val = eq_graph_get_propagated_term_value(&uf->eq_graph, t); + int32_t v_int = 0; + bool ok = q_get32((rational_t*)&val->q, &v_int); + (void) ok; + assert(ok); + + int_hmap_pair_t *v = int_hmap_find(&uf->fun_val_term_map, v_int); + if (v == NULL) { + v = int_hmap_get(&uf->fun_val_term_map, v_int); + v->val = t; + } + + assert(eq_graph_are_equal(&uf->eq_graph, t, v->val)); + + return v->val; +} + static void add_secondary(uf_plugin_t* uf, int_hset_t* idx_set, fun_node_t* a, fun_node_t* b, term_t store) { + assert(b->p == NULL); fun_node_t* n = a; while (n != b) { assert(n->p); - if (!int_hset_member(idx_set, n->pi) && + if (!int_hset_member(idx_set, uf_plugin_get_term_rep(uf, n->pi)) && get_rep_i(&uf->eq_graph, n, n->pi) != b) { make_rep_i(uf, n); + assert(!eq_graph_are_equal(&uf->eq_graph, n->pi, + uf_plugin_get_index_from_store(uf, store))); n->s = b; n->sstore = store; } - int_hset_add(idx_set, n->pi); + int_hset_add(idx_set, uf_plugin_get_term_rep(uf, n->pi)); n = n->p; } } @@ -275,7 +309,7 @@ static void add_store(uf_plugin_t* uf, fun_node_t* a, fun_node_t* b, if (get_rep(&uf->eq_graph, a) == b) { int_hset_t s; init_int_hset(&s, 0); - int_hset_add(&s, idx); + int_hset_add(&s, uf_plugin_get_term_rep(uf, idx)); add_secondary(uf, &s, a, b, store); delete_int_hset(&s); } else { @@ -429,28 +463,8 @@ void uf_plugin_process_eq_graph_propagations(uf_plugin_t* uf, trail_token_t* pro } } -static term_t uf_plugin_get_fun_rep(uf_plugin_t* uf, term_t t) { - assert(eq_graph_term_has_value(&uf->eq_graph, t)); - - mcsat_value_t* val = eq_graph_get_propagated_term_value(&uf->eq_graph, t); - int32_t v_int = 0; - bool ok = q_get32((rational_t*)&val->q, &v_int); - (void) ok; - assert(ok); - - int_hmap_pair_t *v = int_hmap_find(&uf->fun_val_term_map, v_int); - if (v == NULL) { - v = int_hmap_get(&uf->fun_val_term_map, v_int); - v->val = t; - } - - assert(eq_graph_are_equal(&uf->eq_graph, t, v->val)); - - return v->val; -} - static fun_node_t *uf_plugin_get_fun_node(uf_plugin_t* uf, term_t t) { - term_t t_rep = uf_plugin_get_fun_rep(uf, t); + term_t t_rep = uf_plugin_get_term_rep(uf, t); ptr_hmap_pair_t *v = ptr_hmap_find(&uf->fun_node_map, t_rep); if (v == NULL) { v = ptr_hmap_get(&uf->fun_node_map, t_rep); @@ -519,28 +533,28 @@ static fun_node_t* uf_plugin_compute_path_secondary(uf_plugin_t* uf, fun_node_t* fun_node_t* res = NULL; term_table_t* terms = uf->ctx->terms; const fun_node_t* tmp = find_secondary_node(&uf->eq_graph, a, idx); + + assert(tmp->sstore != NULL_TERM); composite_term_t* t_desc = update_term_desc(terms, tmp->sstore); assert(tmp->pi != NULL_TERM); assert(tmp->s); assert(eq_graph_are_equal(&uf->eq_graph, tmp->pi, idx)); + assert(!eq_graph_are_equal(&uf->eq_graph, idx, + uf_plugin_get_index_from_store(uf, tmp->sstore))); - int_hset_add(path, a->t); - - if (find_secondary_node(&uf->eq_graph, uf_plugin_get_fun_node(uf, t_desc->arg[0]), idx) != tmp) { - //assert(find_secondary_node(&uf->eq_graph, uf_plugin_get_fun_node(uf, tmp->sstore), idx) == tmp); - uf_plugin_compute_weak_path(uf, a, uf_plugin_get_fun_node(uf, tmp->sstore), indices, path); - - res = tmp->s; - int_hset_add(path, tmp->sstore); - } else { - //assert(find_secondary_node(&uf->eq_graph, uf_plugin_get_fun_node(uf, t_desc->arg[0]), idx) == tmp); + if (find_secondary_node(&uf->eq_graph, uf_plugin_get_fun_node(uf, t_desc->arg[0]), idx) == tmp) { uf_plugin_compute_weak_path(uf, a, uf_plugin_get_fun_node(uf, t_desc->arg[0]), indices, path); + res = uf_plugin_get_fun_node(uf, tmp->sstore); + } else { + assert(find_secondary_node(&uf->eq_graph, uf_plugin_get_fun_node(uf, tmp->sstore), idx) == tmp); - res = tmp->s; - int_hset_add(path, t_desc->arg[0]); + uf_plugin_compute_weak_path(uf, a, uf_plugin_get_fun_node(uf, tmp->sstore), indices, path); + res = uf_plugin_get_fun_node(uf, t_desc->arg[0]); } + int_hset_add(path, tmp->sstore); + int_hset_add(path, t_desc->arg[0]); int_hset_add(indices, t_desc->arg[1]); return res; @@ -575,7 +589,7 @@ static void uf_plugin_compute_weak_path_i(uf_plugin_t* uf, term_t arr1, } assert(sec_cnt1 == sec_cnt2); - while (sec_cnt1 > 0 && find_secondary_node(&uf->eq_graph, a, idx) != find_secondary_node(&uf->eq_graph, b, idx)) { + while (find_secondary_node(&uf->eq_graph, a, idx) != find_secondary_node(&uf->eq_graph, b, idx)) { assert(count_secondary(&uf->eq_graph, a, idx) == count_secondary(&uf->eq_graph, b, idx)); a = uf_plugin_compute_path_secondary(uf, a, idx, indices, path); b = uf_plugin_compute_path_secondary(uf, b, idx, indices, path); @@ -864,7 +878,7 @@ bool uf_plugin_array_weak_eq_i(uf_plugin_t* uf, term_t arr1, term_t arr2, for (k = 0; res && k < path.nelems; ++k) { add_if_not_true_term(cond, _o_yices_eq(path.data[k], - uf_plugin_get_fun_rep(uf, path.data[k]))); + uf_plugin_get_term_rep(uf, path.data[k]))); } } @@ -877,6 +891,7 @@ bool uf_plugin_array_weak_eq_i(uf_plugin_t* uf, term_t arr1, term_t arr2, } delete_int_hset(&path); + delete_int_hset(&index_set); return res; } @@ -916,10 +931,10 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, const ivector_t* select_ add_if_not_true_term(cond, _o_yices_eq(arr1, - uf_plugin_get_fun_rep(uf, arr1))); + uf_plugin_get_term_rep(uf, arr1))); add_if_not_true_term(cond, _o_yices_eq(arr2, - uf_plugin_get_fun_rep(uf, arr2))); + uf_plugin_get_term_rep(uf, arr2))); goto done; } @@ -941,9 +956,13 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, const ivector_t* select_ continue; } - uint32_t size1 = cond->size; - for (j = 0; !res && j < select_terms->size; ++ j) { - ivector_shrink(cond, size1); + uint32_t size1 = indices.size; + uint32_t size2; + if (cond) { + size2 = cond->size; + } + + for (j = 1; !res && j < select_terms->size; ++ j) { term_t t_j = select_terms->data[j]; type_t t_j_type = term_type(terms, t_j); if (t_i_type != t_j_type || @@ -951,6 +970,11 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, const ivector_t* select_ continue; } + ivector_shrink(&indices, size1); + if (cond) { + ivector_shrink(cond, size2); + } + composite_term_t* e_j_desc = app_term_desc(terms, t_j); if (!eq_graph_are_equal(&uf->eq_graph, e_j_desc->arg[1], idx) || !uf_plugin_array_weak_eq_i(uf, arr2, e_j_desc->arg[0], idx, &indices, cond)) { @@ -969,19 +993,23 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, const ivector_t* select_ if (res) { add_if_not_true_term(cond, _o_yices_eq(arr1, - uf_plugin_get_fun_rep(uf, arr1))); + uf_plugin_get_term_rep(uf, arr1))); add_if_not_true_term(cond, _o_yices_eq(arr2, - uf_plugin_get_fun_rep(uf, arr2))); + uf_plugin_get_term_rep(uf, arr2))); add_if_not_true_term(cond, _o_yices_eq(e_i_desc->arg[0], - uf_plugin_get_fun_rep(uf, e_i_desc->arg[0]))); + uf_plugin_get_term_rep(uf, e_i_desc->arg[0]))); add_if_not_true_term(cond, _o_yices_eq(e_j_desc->arg[0], - uf_plugin_get_fun_rep(uf, e_j_desc->arg[0]))); + uf_plugin_get_term_rep(uf, e_j_desc->arg[0]))); + for (k =0; k < indices.size; ++k) { add_if_not_true_term(cond, _o_yices_neq(idx, indices.data[k])); } + add_if_not_true_term(cond, _o_yices_eq(idx, e_i_desc->arg[1])); add_if_not_true_term(cond, _o_yices_eq(t_i, t_j)); add_if_not_true_term(cond, _o_yices_eq(idx, e_j_desc->arg[1])); + + goto done; } } } @@ -993,6 +1021,7 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, const ivector_t* select_ } delete_ivector(&indices); + return res; } @@ -1037,9 +1066,9 @@ bool uf_plugin_array_ext_check(uf_plugin_t* uf, trail_token_t* prop, int_hset_reset(&indices); uf_plugin_compute_weak_path(uf, uf_plugin_get_fun_node(uf, arr1), uf_plugin_get_fun_node(uf, arr2), &indices, &path); - int_hset_close(&path); + int_hset_close(&indices); - for (k = 0; ok && k < indices.nelems; ++ k) { + for (k = 0; k < indices.nelems; ++ k) { //ctx_trace_printf(uf->ctx, ">2 Trying INDEX: "); term_t idx = indices.data[k]; if (!uf_plugin_array_weak_congruence_i(uf, select_terms, arr1, arr2, @@ -1050,18 +1079,19 @@ bool uf_plugin_array_ext_check(uf_plugin_t* uf, trail_token_t* prop, } if (ok) { + int_hset_close(&path); for (k = 0; k < path.nelems; ++k) { add_if_not_true_term(&uf->conflict, _o_yices_eq(path.data[k], - uf_plugin_get_fun_rep(uf, path.data[k]))); + uf_plugin_get_term_rep(uf, path.data[k]))); } add_if_not_true_term(&uf->conflict, _o_yices_eq(arr1, - uf_plugin_get_fun_rep(uf, arr1))); + uf_plugin_get_term_rep(uf, arr1))); add_if_not_true_term(&uf->conflict, _o_yices_eq(arr2, - uf_plugin_get_fun_rep(uf, arr2))); + uf_plugin_get_term_rep(uf, arr2))); for (k = 0; k < cond.size; ++k) { add_if_not_true_term(&uf->conflict, cond.data[k]); @@ -1219,7 +1249,7 @@ bool uf_plugin_array_read_over_write_check(uf_plugin_t* uf, trail_token_t* prop, //ctx_trace_printf(uf->ctx, "SELECT TERM 1 : "); //ctx_trace_term(uf->ctx, t_i); - for (j = 1; j < select_terms->size; ++ j) { + for (j = i + 1; j < select_terms->size; ++ j) { term_t t_j = select_terms->data[j]; type_t t_j_type = term_type(terms, t_j); composite_term_t* e_j_desc = app_term_desc(terms, t_j); @@ -1244,10 +1274,10 @@ bool uf_plugin_array_read_over_write_check(uf_plugin_t* uf, trail_token_t* prop, assert(uf->conflict.size == 0); add_if_not_true_term(&uf->conflict, _o_yices_eq(e_i_desc->arg[0], - uf_plugin_get_fun_rep(uf, e_i_desc->arg[0]))); + uf_plugin_get_term_rep(uf, e_i_desc->arg[0]))); add_if_not_true_term(&uf->conflict, _o_yices_eq(e_j_desc->arg[0], - uf_plugin_get_fun_rep(uf, e_j_desc->arg[0]))); + uf_plugin_get_term_rep(uf, e_j_desc->arg[0]))); add_if_not_true_term(&uf->conflict, _o_yices_eq(e_i_desc->arg[1], e_j_desc->arg[1])); add_if_not_true_term(&uf->conflict, _o_yices_neq(t_i, t_j)); @@ -1317,8 +1347,8 @@ void uf_plugin_array_build_weak_eq_graph(uf_plugin_t* uf, const ivector_t* array if (t_kind == UPDATE_TERM) { composite_term_t* t_desc = update_term_desc(terms, t); fun_node_t *a = uf_plugin_get_fun_node(uf, t_desc->arg[0]); - term_t ai = t_desc->arg[1]; - add_store(uf, a, b, ai, t); + term_t idx = t_desc->arg[1]; + add_store(uf, a, b, idx, t); } } } From 01ca832940aeacd6cc9295f0dd87cd8572857cf4 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Fri, 10 Feb 2023 12:47:42 -0800 Subject: [PATCH 055/182] minor --- src/mcsat/uf/uf_plugin.c | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index 2fc876274..b7d5dc235 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -1256,7 +1256,7 @@ bool uf_plugin_array_read_over_write_check(uf_plugin_t* uf, trail_token_t* prop, if (t_i == t_j || t_i_type != t_j_type || !eq_graph_are_equal(&uf->eq_graph, e_i_desc->arg[1], e_j_desc->arg[1]) || - //eq_graph_are_equal(&uf->eq_graph, e_i_desc->arg[0], e_j_desc->arg[0]) || + eq_graph_are_equal(&uf->eq_graph, e_i_desc->arg[0], e_j_desc->arg[0]) || eq_graph_are_equal(&uf->eq_graph, t_i, t_j)) { continue; } @@ -1272,15 +1272,6 @@ bool uf_plugin_array_read_over_write_check(uf_plugin_t* uf, trail_token_t* prop, //ctx_trace_printf(uf->ctx, "FOUND CONFLICT\n "); // found conflict assert(uf->conflict.size == 0); - add_if_not_true_term(&uf->conflict, - _o_yices_eq(e_i_desc->arg[0], - uf_plugin_get_term_rep(uf, e_i_desc->arg[0]))); - add_if_not_true_term(&uf->conflict, - _o_yices_eq(e_j_desc->arg[0], - uf_plugin_get_term_rep(uf, e_j_desc->arg[0]))); - - add_if_not_true_term(&uf->conflict, _o_yices_eq(e_i_desc->arg[1], e_j_desc->arg[1])); - add_if_not_true_term(&uf->conflict, _o_yices_neq(t_i, t_j)); bool ok = true; for (k = 0; k < indices.size; ++ k) { @@ -1302,6 +1293,16 @@ bool uf_plugin_array_read_over_write_check(uf_plugin_t* uf, trail_token_t* prop, add_if_not_true_term(&uf->conflict, cond.data[k]); } + add_if_not_true_term(&uf->conflict, + _o_yices_eq(e_i_desc->arg[0], + uf_plugin_get_term_rep(uf, e_i_desc->arg[0]))); + add_if_not_true_term(&uf->conflict, + _o_yices_eq(e_j_desc->arg[0], + uf_plugin_get_term_rep(uf, e_j_desc->arg[0]))); + + add_if_not_true_term(&uf->conflict, _o_yices_eq(e_i_desc->arg[1], e_j_desc->arg[1])); + add_if_not_true_term(&uf->conflict, _o_yices_neq(t_i, t_j)); + ivector_remove_duplicates(&uf->conflict); if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { From 3c9657b2604b5b1b1b8de3586f15f5497016eff3 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Fri, 10 Feb 2023 12:47:56 -0800 Subject: [PATCH 056/182] updates are ifun --- src/mcsat/uf/uf_plugin.c | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index b7d5dc235..6aa07aa33 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -535,13 +535,12 @@ static fun_node_t* uf_plugin_compute_path_secondary(uf_plugin_t* uf, fun_node_t* const fun_node_t* tmp = find_secondary_node(&uf->eq_graph, a, idx); assert(tmp->sstore != NULL_TERM); - composite_term_t* t_desc = update_term_desc(terms, tmp->sstore); - assert(tmp->pi != NULL_TERM); assert(tmp->s); assert(eq_graph_are_equal(&uf->eq_graph, tmp->pi, idx)); assert(!eq_graph_are_equal(&uf->eq_graph, idx, uf_plugin_get_index_from_store(uf, tmp->sstore))); + composite_term_t* t_desc = update_term_desc(terms, tmp->sstore); if (find_secondary_node(&uf->eq_graph, uf_plugin_get_fun_node(uf, t_desc->arg[0]), idx) == tmp) { uf_plugin_compute_weak_path(uf, a, uf_plugin_get_fun_node(uf, t_desc->arg[0]), indices, path); @@ -681,7 +680,7 @@ void uf_plugin_add_to_eq_graph(uf_plugin_t* uf, term_t t, bool record) { uf_plugin_add_diff_terms_vars(uf, t); } t_desc = update_term_desc(terms, t); - eq_graph_add_ufun_term(&uf->eq_graph, t, t, t_desc->arity, t_desc->arg); + eq_graph_add_ifun_term(&uf->eq_graph, t, UPDATE_TERM, t_desc->arity, t_desc->arg); // remember array term ivector_push(&uf->array_terms, t); // remember select terms @@ -839,10 +838,10 @@ bool uf_plugin_array_weak_eq_i(uf_plugin_t* uf, term_t arr1, term_t arr2, bool res = false; uint32_t old_indices_size, old_cond_size; - const fun_node_t* fn_arr1 = get_rep_i(&uf->eq_graph, uf_plugin_get_fun_node(uf, arr1), - idx); - const fun_node_t* fn_arr2 = get_rep_i(&uf->eq_graph, uf_plugin_get_fun_node(uf, arr2), - idx); + const fun_node_t* fn_arr1 = get_rep_i(&uf->eq_graph, + uf_plugin_get_fun_node(uf, arr1), idx); + const fun_node_t* fn_arr2 = get_rep_i(&uf->eq_graph, + uf_plugin_get_fun_node(uf, arr2), idx); assert(fn_arr1 != NULL); assert(fn_arr2 != NULL); From b0ba2bac23e0e874f7494680d16da785fe6ae934 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Mon, 13 Feb 2023 01:34:09 -0800 Subject: [PATCH 057/182] path def reworked --- src/mcsat/uf/uf_plugin.c | 195 ++++++++++++++++++--------------------- 1 file changed, 92 insertions(+), 103 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index 6aa07aa33..80501c5b2 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -121,7 +121,6 @@ static inline void add_if_not_true_term(ivector_t* vec, term_t t) { */ typedef struct fun_node_s { - term_t t; struct fun_node_s* p; term_t pstore; term_t pi; @@ -131,7 +130,6 @@ typedef struct fun_node_s { static inline fun_node_t *new_node() { fun_node_t *n = safe_malloc(sizeof(fun_node_t)); - n->t = NULL_TERM; n->p = NULL; n->pstore = NULL_TERM; n->pi = NULL_TERM; @@ -469,70 +467,109 @@ static fun_node_t *uf_plugin_get_fun_node(uf_plugin_t* uf, term_t t) { if (v == NULL) { v = ptr_hmap_get(&uf->fun_node_map, t_rep); fun_node_t *n = new_node(); - n->t = t_rep; v->val = n; } return v->val; } -static void uf_plugin_compute_weak_path(uf_plugin_t* uf, fun_node_t* a, - fun_node_t* b, int_hset_t* indices, - int_hset_t* path) { - //ctx_trace_printf(uf->ctx, "WEAK PATH\n "); +static void uf_plugin_compute_weak_path(uf_plugin_t* uf, term_t arr1, + term_t arr2, int_hset_t* indices, + int_hset_t* path_eq) { + fun_node_t* a = uf_plugin_get_fun_node(uf, arr1); + fun_node_t* b = uf_plugin_get_fun_node(uf, arr2); //arr1 and arr2 must be in the same weak equivalence class assert(get_rep(&uf->eq_graph, a) == get_rep(&uf->eq_graph, b)); - int_hset_add(path, a->t); if (a == b) { + int_hset_add(path_eq, _o_yices_eq(arr1, arr2)); return; } + term_table_t* terms = uf->ctx->terms; uint32_t prim_cnt1 = count_primary(&uf->eq_graph, a); uint32_t prim_cnt2 = count_primary(&uf->eq_graph, b); fun_node_t* n1 = a; fun_node_t* n2 = b; - + term_t t1 = arr1; + term_t t2 = arr2; + composite_term_t* t_desc = NULL; + while (prim_cnt1 > prim_cnt2) { - int_hset_add(path, n1->pstore); + t_desc = update_term_desc(terms, n1->pstore); + if (eq_graph_are_equal(&uf->eq_graph, t_desc->arg[0], t1)) { + int_hset_add(path_eq, _o_yices_eq(t_desc->arg[0], t1)); + t1 = n1->pstore; + } else { + int_hset_add(path_eq, _o_yices_eq(n1->pstore, t1)); + t1 = t_desc->arg[0]; + } assert(n1->pi == uf_plugin_get_index_from_store(uf, n1->pstore)); int_hset_add(indices, n1->pi); n1 = n1->p; prim_cnt1--; } + while (prim_cnt2 > prim_cnt1) { - int_hset_add(path, n2->pstore); + t_desc = update_term_desc(terms, n2->pstore); + if (eq_graph_are_equal(&uf->eq_graph, t_desc->arg[0], t2)) { + int_hset_add(path_eq, _o_yices_eq(t_desc->arg[0], t2)); + t2 = n2->pstore; + } else { + int_hset_add(path_eq, _o_yices_eq(n2->pstore, t2)); + t2 = t_desc->arg[0]; + } assert(n2->pi == uf_plugin_get_index_from_store(uf, n2->pstore)); int_hset_add(indices, n2->pi); n2 = n2->p; prim_cnt2--; } + while (n1 != n2) { assert(n1->p); - assert(n2->p); - int_hset_add(path, n1->pstore); - int_hset_add(path, n2->pstore); assert(n1->pi == uf_plugin_get_index_from_store(uf, n1->pstore)); - assert(n2->pi == uf_plugin_get_index_from_store(uf, n2->pstore)); + t_desc = update_term_desc(terms, n1->pstore); + if (eq_graph_are_equal(&uf->eq_graph, t_desc->arg[0], t1)) { + int_hset_add(path_eq, _o_yices_eq(t_desc->arg[0], t1)); + t1 = n1->pstore; + } else { + int_hset_add(path_eq, _o_yices_eq(n1->pstore, t1)); + t1 = t_desc->arg[0]; + } int_hset_add(indices, n1->pi); - int_hset_add(indices, n2->pi); n1 = n1->p; + + assert(n2->p); + assert(n2->pi == uf_plugin_get_index_from_store(uf, n2->pstore)); + t_desc = update_term_desc(terms, n2->pstore); + if (eq_graph_are_equal(&uf->eq_graph, t_desc->arg[0], t2)) { + int_hset_add(path_eq, _o_yices_eq(t_desc->arg[0], t2)); + t2 = n2->pstore; + } else { + int_hset_add(path_eq, _o_yices_eq(n2->pstore, t2)); + t2 = t_desc->arg[0]; + } + int_hset_add(indices, n2->pi); n2 = n2->p; } - assert(n1 == n2); + if (t1 != t2) { + int_hset_add(path_eq, _o_yices_eq(t1, t2)); + } - int_hset_add(path, b->t); + assert(n1 == n2); } -static fun_node_t* uf_plugin_compute_path_secondary(uf_plugin_t* uf, fun_node_t* a, +static term_t uf_plugin_compute_path_secondary(uf_plugin_t* uf, term_t arr, term_t idx, int_hset_t* indices, - int_hset_t* path) { - fun_node_t* res = NULL; + int_hset_t* path_eq) { + term_t res = NULL_TERM; term_table_t* terms = uf->ctx->terms; - const fun_node_t* tmp = find_secondary_node(&uf->eq_graph, a, idx); + const fun_node_t* tmp = find_secondary_node(&uf->eq_graph, + uf_plugin_get_fun_node(uf, arr), + idx); assert(tmp->sstore != NULL_TERM); assert(tmp->pi != NULL_TERM); @@ -543,17 +580,15 @@ static fun_node_t* uf_plugin_compute_path_secondary(uf_plugin_t* uf, fun_node_t* composite_term_t* t_desc = update_term_desc(terms, tmp->sstore); if (find_secondary_node(&uf->eq_graph, uf_plugin_get_fun_node(uf, t_desc->arg[0]), idx) == tmp) { - uf_plugin_compute_weak_path(uf, a, uf_plugin_get_fun_node(uf, t_desc->arg[0]), indices, path); - res = uf_plugin_get_fun_node(uf, tmp->sstore); + uf_plugin_compute_weak_path(uf, arr, t_desc->arg[0], indices, path_eq); + res = tmp->sstore; } else { assert(find_secondary_node(&uf->eq_graph, uf_plugin_get_fun_node(uf, tmp->sstore), idx) == tmp); - uf_plugin_compute_weak_path(uf, a, uf_plugin_get_fun_node(uf, tmp->sstore), indices, path); - res = uf_plugin_get_fun_node(uf, t_desc->arg[0]); + uf_plugin_compute_weak_path(uf, arr, tmp->sstore, indices, path_eq); + res = t_desc->arg[0]; } - int_hset_add(path, tmp->sstore); - int_hset_add(path, t_desc->arg[0]); int_hset_add(indices, t_desc->arg[1]); return res; @@ -562,10 +597,8 @@ static fun_node_t* uf_plugin_compute_path_secondary(uf_plugin_t* uf, fun_node_t* static void uf_plugin_compute_weak_path_i(uf_plugin_t* uf, term_t arr1, term_t arr2, term_t idx, int_hset_t* indices, - int_hset_t* path) { - //ctx_trace_printf(uf->ctx, "WEAK PATH I\n "); + int_hset_t* path_eq) { term_table_t* terms = uf->ctx->terms; - fun_node_t* a = uf_plugin_get_fun_node(uf, arr1); fun_node_t* b = uf_plugin_get_fun_node(uf, arr2); uint32_t sec_cnt1 = count_secondary(&uf->eq_graph, a, idx); @@ -573,16 +606,17 @@ static void uf_plugin_compute_weak_path_i(uf_plugin_t* uf, term_t arr1, assert(get_rep_i(&uf->eq_graph, a, idx) == get_rep_i(&uf->eq_graph, b, idx)); - int_hset_add(path, arr1); while (sec_cnt1 > sec_cnt2) { - a = uf_plugin_compute_path_secondary(uf, a, idx, indices, path); + arr1 = uf_plugin_compute_path_secondary(uf, arr1, idx, indices, path_eq); sec_cnt1--; + a = uf_plugin_get_fun_node(uf, arr1); assert(count_secondary(&uf->eq_graph, a, idx) == sec_cnt1); assert(get_rep_i(&uf->eq_graph, a, idx) == get_rep_i(&uf->eq_graph, b, idx)); } while (sec_cnt2 > sec_cnt1) { - b = uf_plugin_compute_path_secondary(uf, b, idx, indices, path); + arr2 = uf_plugin_compute_path_secondary(uf, arr2, idx, indices, path_eq); sec_cnt2--; + b = uf_plugin_get_fun_node(uf, arr2); assert(count_secondary(&uf->eq_graph, b, idx) == sec_cnt2); assert(get_rep_i(&uf->eq_graph, a, idx) == get_rep_i(&uf->eq_graph, b, idx)); } @@ -590,14 +624,14 @@ static void uf_plugin_compute_weak_path_i(uf_plugin_t* uf, term_t arr1, assert(sec_cnt1 == sec_cnt2); while (find_secondary_node(&uf->eq_graph, a, idx) != find_secondary_node(&uf->eq_graph, b, idx)) { assert(count_secondary(&uf->eq_graph, a, idx) == count_secondary(&uf->eq_graph, b, idx)); - a = uf_plugin_compute_path_secondary(uf, a, idx, indices, path); - b = uf_plugin_compute_path_secondary(uf, b, idx, indices, path); + arr1 = uf_plugin_compute_path_secondary(uf, arr1, idx, indices, path_eq); + arr2 = uf_plugin_compute_path_secondary(uf, arr2, idx, indices, path_eq); + a = uf_plugin_get_fun_node(uf, arr1); + b = uf_plugin_get_fun_node(uf, arr2); assert(get_rep_i(&uf->eq_graph, a, idx) == get_rep_i(&uf->eq_graph, b, idx)); } - uf_plugin_compute_weak_path(uf, a, b, indices, path); - - int_hset_add(path, arr2); + uf_plugin_compute_weak_path(uf, arr1, arr2, indices, path_eq); } static void uf_plugin_add_diff_terms_vars(uf_plugin_t* uf, term_t arr) { @@ -834,19 +868,19 @@ bool uf_plugin_array_weak_eq_i(uf_plugin_t* uf, term_t arr1, term_t arr2, term_table_t* terms = uf->ctx->terms; //ctx_trace_printf(uf->ctx, "CHECKING ARRAY WEAK EQ I\n "); - int_hset_t index_set, path; + int_hset_t index_set, path_eq; bool res = false; uint32_t old_indices_size, old_cond_size; const fun_node_t* fn_arr1 = get_rep_i(&uf->eq_graph, - uf_plugin_get_fun_node(uf, arr1), idx); + uf_plugin_get_fun_node(uf, arr1), idx); const fun_node_t* fn_arr2 = get_rep_i(&uf->eq_graph, - uf_plugin_get_fun_node(uf, arr2), idx); + uf_plugin_get_fun_node(uf, arr2), idx); assert(fn_arr1 != NULL); assert(fn_arr2 != NULL); init_int_hset(&index_set, 0); - init_int_hset(&path, 0); + init_int_hset(&path_eq, 0); if (indices) { old_indices_size = indices->size; @@ -860,7 +894,7 @@ bool uf_plugin_array_weak_eq_i(uf_plugin_t* uf, term_t arr1, term_t arr2, uint32_t k; res = true; - uf_plugin_compute_weak_path_i(uf, arr1, arr2, idx, &index_set, &path); + uf_plugin_compute_weak_path_i(uf, arr1, arr2, idx, &index_set, &path_eq); // add indices int_hset_close(&index_set); @@ -872,12 +906,10 @@ bool uf_plugin_array_weak_eq_i(uf_plugin_t* uf, term_t arr1, term_t arr2, ivector_push(indices, index_set.data[k]); } - int_hset_close(&path); + int_hset_close(&path_eq); // add path eq conditions - for (k = 0; res && k < path.nelems; ++k) { - add_if_not_true_term(cond, - _o_yices_eq(path.data[k], - uf_plugin_get_term_rep(uf, path.data[k]))); + for (k = 0; res && k < path_eq.nelems; ++k) { + add_if_not_true_term(cond, path_eq.data[k]); } } @@ -889,7 +921,7 @@ bool uf_plugin_array_weak_eq_i(uf_plugin_t* uf, term_t arr1, term_t arr2, ivector_shrink(cond, old_cond_size); } - delete_int_hset(&path); + delete_int_hset(&path_eq); delete_int_hset(&index_set); return res; @@ -928,12 +960,6 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, const ivector_t* select_ add_if_not_true_term(cond, _o_yices_neq(idx, indices.data[k])); } - add_if_not_true_term(cond, - _o_yices_eq(arr1, - uf_plugin_get_term_rep(uf, arr1))); - add_if_not_true_term(cond, - _o_yices_eq(arr2, - uf_plugin_get_term_rep(uf, arr2))); goto done; } @@ -971,7 +997,7 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, const ivector_t* select_ ivector_shrink(&indices, size1); if (cond) { - ivector_shrink(cond, size2); + ivector_shrink(cond, size2); } composite_term_t* e_j_desc = app_term_desc(terms, t_j); @@ -991,15 +1017,6 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, const ivector_t* select_ } if (res) { - add_if_not_true_term(cond, _o_yices_eq(arr1, - uf_plugin_get_term_rep(uf, arr1))); - add_if_not_true_term(cond, _o_yices_eq(arr2, - uf_plugin_get_term_rep(uf, arr2))); - add_if_not_true_term(cond, _o_yices_eq(e_i_desc->arg[0], - uf_plugin_get_term_rep(uf, e_i_desc->arg[0]))); - add_if_not_true_term(cond, _o_yices_eq(e_j_desc->arg[0], - uf_plugin_get_term_rep(uf, e_j_desc->arg[0]))); - for (k =0; k < indices.size; ++k) { add_if_not_true_term(cond, _o_yices_neq(idx, indices.data[k])); } @@ -1008,7 +1025,7 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, const ivector_t* select_ add_if_not_true_term(cond, _o_yices_eq(t_i, t_j)); add_if_not_true_term(cond, _o_yices_eq(idx, e_j_desc->arg[1])); - goto done; + goto done; } } } @@ -1028,16 +1045,14 @@ static bool uf_plugin_array_ext_check(uf_plugin_t* uf, trail_token_t* prop, const ivector_t* array_terms, const ivector_t* select_terms) { - //ctx_trace_printf(uf->ctx, "ARRAY EXT CHECK \n"); - term_table_t* terms = uf->ctx->terms; uint32_t i, j, k; ivector_t cond; - int_hset_t path, indices; + int_hset_t path_eq, indices; init_ivector(&cond, 0); - init_int_hset(&path, 0); + init_int_hset(&path_eq, 0); init_int_hset(&indices, 0); for (i = 0; i < array_terms->size; ++i) { @@ -1061,14 +1076,12 @@ bool uf_plugin_array_ext_check(uf_plugin_t* uf, trail_token_t* prop, composite_term_t* t_desc = NULL; ivector_shrink(&cond, 0); - int_hset_reset(&path); + int_hset_reset(&path_eq); int_hset_reset(&indices); - uf_plugin_compute_weak_path(uf, uf_plugin_get_fun_node(uf, arr1), - uf_plugin_get_fun_node(uf, arr2), &indices, &path); + uf_plugin_compute_weak_path(uf, arr1, arr2, &indices, &path_eq); int_hset_close(&indices); for (k = 0; k < indices.nelems; ++ k) { - //ctx_trace_printf(uf->ctx, ">2 Trying INDEX: "); term_t idx = indices.data[k]; if (!uf_plugin_array_weak_congruence_i(uf, select_terms, arr1, arr2, idx, &cond)) { @@ -1078,20 +1091,11 @@ bool uf_plugin_array_ext_check(uf_plugin_t* uf, trail_token_t* prop, } if (ok) { - int_hset_close(&path); - for (k = 0; k < path.nelems; ++k) { - add_if_not_true_term(&uf->conflict, - _o_yices_eq(path.data[k], - uf_plugin_get_term_rep(uf, path.data[k]))); + int_hset_close(&path_eq); + for (k = 0; k < path_eq.nelems; ++k) { + add_if_not_true_term(&uf->conflict, path_eq.data[k]); } - add_if_not_true_term(&uf->conflict, - _o_yices_eq(arr1, - uf_plugin_get_term_rep(uf, arr1))); - add_if_not_true_term(&uf->conflict, - _o_yices_eq(arr2, - uf_plugin_get_term_rep(uf, arr2))); - for (k = 0; k < cond.size; ++k) { add_if_not_true_term(&uf->conflict, cond.data[k]); } @@ -1118,7 +1122,7 @@ bool uf_plugin_array_ext_check(uf_plugin_t* uf, trail_token_t* prop, done: delete_ivector(&cond); - delete_int_hset(&path); + delete_int_hset(&path_eq); return (uf->conflict.size == 0); } @@ -1237,8 +1241,6 @@ bool uf_plugin_array_read_over_write_check(uf_plugin_t* uf, trail_token_t* prop, init_ivector(&cond, 0); init_ivector(&indices, 0); - //ctx_trace_printf(uf->ctx, "CHECKING READ OVER WRITE\n "); - // generalized read-over-write lemma for (i = 0; i < select_terms->size; ++ i) { term_t t_i = select_terms->data[i]; @@ -1246,8 +1248,6 @@ bool uf_plugin_array_read_over_write_check(uf_plugin_t* uf, trail_token_t* prop, assert(variable_db_get_variable_if_exists(uf->ctx->var_db, t_i) != variable_null); composite_term_t* e_i_desc = app_term_desc(terms, t_i); - //ctx_trace_printf(uf->ctx, "SELECT TERM 1 : "); - //ctx_trace_term(uf->ctx, t_i); for (j = i + 1; j < select_terms->size; ++ j) { term_t t_j = select_terms->data[j]; type_t t_j_type = term_type(terms, t_j); @@ -1260,15 +1260,11 @@ bool uf_plugin_array_read_over_write_check(uf_plugin_t* uf, trail_token_t* prop, continue; } - //ctx_trace_printf(uf->ctx, "SELECT TERM 2 : "); - //ctx_trace_term(uf->ctx, t_j); - ivector_shrink(&indices, 0); ivector_shrink(&cond, 0); if (uf_plugin_array_weak_eq_i(uf, e_i_desc->arg[0], e_j_desc->arg[0], e_i_desc->arg[1], &indices, &cond)) { - //ctx_trace_printf(uf->ctx, "FOUND CONFLICT\n "); // found conflict assert(uf->conflict.size == 0); @@ -1292,13 +1288,6 @@ bool uf_plugin_array_read_over_write_check(uf_plugin_t* uf, trail_token_t* prop, add_if_not_true_term(&uf->conflict, cond.data[k]); } - add_if_not_true_term(&uf->conflict, - _o_yices_eq(e_i_desc->arg[0], - uf_plugin_get_term_rep(uf, e_i_desc->arg[0]))); - add_if_not_true_term(&uf->conflict, - _o_yices_eq(e_j_desc->arg[0], - uf_plugin_get_term_rep(uf, e_j_desc->arg[0]))); - add_if_not_true_term(&uf->conflict, _o_yices_eq(e_i_desc->arg[1], e_j_desc->arg[1])); add_if_not_true_term(&uf->conflict, _o_yices_neq(t_i, t_j)); From 0dae2273b686b3d0c4807322089223960acf7f67 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Mon, 13 Feb 2023 09:59:22 -0800 Subject: [PATCH 058/182] prioritize array equalities present in the formula --- src/mcsat/uf/uf_plugin.c | 170 ++++++++++++++++++++++++--------------- 1 file changed, 105 insertions(+), 65 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index 80501c5b2..b884d44ac 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -1042,12 +1042,19 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, const ivector_t* select_ } static -bool uf_plugin_array_ext_check(uf_plugin_t* uf, trail_token_t* prop, - const ivector_t* array_terms, - const ivector_t* select_terms) { +bool uf_plugin_array_ext_lemma(uf_plugin_t* uf, trail_token_t* prop, + term_t arr1, term_t arr2, + const ivector_t* select_terms) { + bool res = true; term_table_t* terms = uf->ctx->terms; - uint32_t i, j, k; + type_t arr1_type = term_type(terms, arr1); + type_t arr2_type = term_type(terms, arr2); + if (arr1 == arr2 || arr1_type != arr2_type || + eq_graph_are_equal(&uf->eq_graph, arr1, arr2)) { + return res; + } + ivector_t cond; int_hset_t path_eq, indices; @@ -1055,76 +1062,105 @@ bool uf_plugin_array_ext_check(uf_plugin_t* uf, trail_token_t* prop, init_int_hset(&path_eq, 0); init_int_hset(&indices, 0); - for (i = 0; i < array_terms->size; ++i) { - term_t arr1 = array_terms->data[i]; - type_t arr1_type = term_type(terms, arr1); - assert(variable_db_get_variable_if_exists(uf->ctx->var_db, arr1) != variable_null); + const fun_node_t* fn_arr1 = get_rep(&uf->eq_graph, uf_plugin_get_fun_node(uf, arr1)); + const fun_node_t* fn_arr2 = get_rep(&uf->eq_graph, uf_plugin_get_fun_node(uf, arr2)); + + if (fn_arr1 == fn_arr2) { + bool ok = true; + composite_term_t* t_desc = NULL; + uint32_t k; - for (j = i + 1; j < array_terms->size; ++j) { - term_t arr2 = array_terms->data[j]; - type_t arr2_type = term_type(terms, arr2); - if (arr1 == arr2 || arr1_type != arr2_type || - eq_graph_are_equal(&uf->eq_graph, arr1, arr2)) { - continue; + ivector_shrink(&cond, 0); + int_hset_reset(&path_eq); + int_hset_reset(&indices); + uf_plugin_compute_weak_path(uf, arr1, arr2, &indices, &path_eq); + + int_hset_close(&indices); + for (k = 0; k < indices.nelems; ++ k) { + term_t idx = indices.data[k]; + if (!uf_plugin_array_weak_congruence_i(uf, select_terms, arr1, arr2, + idx, &cond)) { + ok = false; + break; } - - const fun_node_t* fn_arr1 = get_rep(&uf->eq_graph, uf_plugin_get_fun_node(uf, arr1)); - const fun_node_t* fn_arr2 = get_rep(&uf->eq_graph, uf_plugin_get_fun_node(uf, arr2)); - - if (fn_arr1 == fn_arr2) { - bool ok = true; - composite_term_t* t_desc = NULL; - - ivector_shrink(&cond, 0); - int_hset_reset(&path_eq); - int_hset_reset(&indices); - uf_plugin_compute_weak_path(uf, arr1, arr2, &indices, &path_eq); - - int_hset_close(&indices); - for (k = 0; k < indices.nelems; ++ k) { - term_t idx = indices.data[k]; - if (!uf_plugin_array_weak_congruence_i(uf, select_terms, arr1, arr2, - idx, &cond)) { - ok = false; - break; - } - } + } - if (ok) { - int_hset_close(&path_eq); - for (k = 0; k < path_eq.nelems; ++k) { - add_if_not_true_term(&uf->conflict, path_eq.data[k]); - } + if (ok) { + res = false; - for (k = 0; k < cond.size; ++k) { - add_if_not_true_term(&uf->conflict, cond.data[k]); - } + int_hset_close(&path_eq); + for (k = 0; k < path_eq.nelems; ++k) { + add_if_not_true_term(&uf->conflict, path_eq.data[k]); + } - ivector_push(&uf->conflict, _o_yices_neq(arr1, arr2)); + for (k = 0; k < cond.size; ++k) { + add_if_not_true_term(&uf->conflict, cond.data[k]); + } - ivector_remove_duplicates(&uf->conflict); + ivector_push(&uf->conflict, _o_yices_neq(arr1, arr2)); - if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { - ctx_trace_printf(uf->ctx, ">2 Array conflict BEGIN 2\n"); - for (k = 0; k < uf->conflict.size; ++ k) { - ctx_trace_term(uf->ctx, uf->conflict.data[k]); - } - ctx_trace_printf(uf->ctx, ">2 Array conflict END 2\n"); - } + ivector_remove_duplicates(&uf->conflict); - assert(uf->conflict.size > 1); - - goto done; - } + if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { + ctx_trace_printf(uf->ctx, ">2 Array conflict BEGIN 2\n"); + for (k = 0; k < uf->conflict.size; ++ k) { + ctx_trace_term(uf->ctx, uf->conflict.data[k]); + } + ctx_trace_printf(uf->ctx, ">2 Array conflict END 2\n"); } + + assert(uf->conflict.size > 1); } } - done: delete_ivector(&cond); delete_int_hset(&path_eq); + delete_int_hset(&indices); - return (uf->conflict.size == 0); + return res; +} + +static +bool uf_plugin_array_ext_check(uf_plugin_t* uf, trail_token_t* prop, + const ivector_t* array_eq_terms, + const ivector_t* array_terms, + const ivector_t* select_terms) { + uint32_t i, j; + bool res = true; + + term_table_t* terms = uf->ctx->terms; + composite_term_t* t_desc = NULL; + term_t arr1, arr2; + int_hset_t seen; + + init_int_hset(&seen, 0); + + for (i = 0; res && i < array_eq_terms->size; ++i) { + if (!int_hset_member(&seen, array_eq_terms->data[i])) { + t_desc = eq_term_desc(terms, array_eq_terms->data[i]); + arr1 = t_desc->arg[0]; + arr2 = t_desc->arg[1]; + + res = uf_plugin_array_ext_lemma(uf, prop, arr1, arr2, select_terms); + int_hset_add(&seen, array_eq_terms->data[i]); + } + } + + for (i = 0; res && i < array_terms->size; ++i) { + arr1 = array_terms->data[i]; + + for (j = i + 1; res && j < array_terms->size; ++j) { + arr2 = array_terms->data[j]; + if (!int_hset_member(&seen, _o_yices_eq(arr1, arr2))) { + res = uf_plugin_array_ext_lemma(uf, prop, arr1, arr2, select_terms); + int_hset_add(&seen, _o_yices_eq(arr1, arr2)); + } + } + } + + delete_int_hset(&seen); + + return res; } static @@ -1288,8 +1324,8 @@ bool uf_plugin_array_read_over_write_check(uf_plugin_t* uf, trail_token_t* prop, add_if_not_true_term(&uf->conflict, cond.data[k]); } - add_if_not_true_term(&uf->conflict, _o_yices_eq(e_i_desc->arg[1], e_j_desc->arg[1])); - add_if_not_true_term(&uf->conflict, _o_yices_neq(t_i, t_j)); + add_if_not_true_term(&uf->conflict, _o_yices_eq(e_i_desc->arg[1], e_j_desc->arg[1])); + add_if_not_true_term(&uf->conflict, _o_yices_neq(t_i, t_j)); ivector_remove_duplicates(&uf->conflict); @@ -1347,12 +1383,16 @@ void uf_plugin_array_propagations(uf_plugin_t* uf, trail_token_t* prop) { bool ok = true; - ivector_t array_terms; + ivector_t array_eq_terms, array_terms, select_terms; + + init_ivector(&array_eq_terms, 0); + ivector_copy(&array_eq_terms, uf->array_eq_terms.data, uf->array_eq_terms.size); + ivector_remove_duplicates(&array_eq_terms); + init_ivector(&array_terms, 0); ivector_copy(&array_terms, uf->array_terms.data, uf->array_terms.size); ivector_remove_duplicates(&array_terms); - ivector_t select_terms; init_ivector(&select_terms, 0); ivector_copy(&select_terms, uf->select_terms.data, uf->select_terms.size); ivector_remove_duplicates(&select_terms); @@ -1385,7 +1425,7 @@ void uf_plugin_array_propagations(uf_plugin_t* uf, trail_token_t* prop) { } if (USE_ARRAY_DIFF && ok) { - ok = uf_plugin_array_ext_diff_check(uf, prop, &uf->array_eq_terms, NULL); + ok = uf_plugin_array_ext_diff_check(uf, prop, &array_eq_terms, NULL); } if (ok) { @@ -1401,7 +1441,7 @@ void uf_plugin_array_propagations(uf_plugin_t* uf, trail_token_t* prop) { if (USE_ARRAY_DIFF) { ok = uf_plugin_array_ext_diff_check(uf, prop, NULL, &array_terms); } else { - ok = uf_plugin_array_ext_check(uf, prop, &array_terms, &select_terms); + ok = uf_plugin_array_ext_check(uf, prop, &array_eq_terms, &array_terms, &select_terms); } } From c4af1a224dcc7c5c72930603b3e957c1a68b91f5 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Mon, 13 Feb 2023 10:43:44 -0800 Subject: [PATCH 059/182] minor refactor --- src/mcsat/uf/uf_plugin.c | 109 +++++++++++++++++---------------------- 1 file changed, 46 insertions(+), 63 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index b884d44ac..c06f1c7f0 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -473,11 +473,36 @@ static fun_node_t *uf_plugin_get_fun_node(uf_plugin_t* uf, term_t t) { return v->val; } +static term_t uf_plugin_compute_weak_path_primary(uf_plugin_t* uf, term_t arr, + int_hset_t* indices, + int_hset_t* path_eq) { + const fun_node_t* a = uf_plugin_get_fun_node(uf, arr); + term_t res = NULL_TERM; + composite_term_t* t_desc = NULL; + term_table_t* terms = uf->ctx->terms; + + assert(a->p); + t_desc = update_term_desc(terms, a->pstore); + + if (eq_graph_are_equal(&uf->eq_graph, t_desc->arg[0], arr)) { + int_hset_add(path_eq, _o_yices_eq(t_desc->arg[0], arr)); + res = a->pstore; + } else { + int_hset_add(path_eq, _o_yices_eq(a->pstore, arr)); + res = t_desc->arg[0]; + } + + assert(a->pi == uf_plugin_get_index_from_store(uf, a->pstore)); + int_hset_add(indices, a->pi); + + return res; +} + static void uf_plugin_compute_weak_path(uf_plugin_t* uf, term_t arr1, term_t arr2, int_hset_t* indices, int_hset_t* path_eq) { - fun_node_t* a = uf_plugin_get_fun_node(uf, arr1); - fun_node_t* b = uf_plugin_get_fun_node(uf, arr2); + const fun_node_t* a = uf_plugin_get_fun_node(uf, arr1); + const fun_node_t* b = uf_plugin_get_fun_node(uf, arr2); //arr1 and arr2 must be in the same weak equivalence class assert(get_rep(&uf->eq_graph, a) == get_rep(&uf->eq_graph, b)); @@ -490,93 +515,51 @@ static void uf_plugin_compute_weak_path(uf_plugin_t* uf, term_t arr1, term_table_t* terms = uf->ctx->terms; uint32_t prim_cnt1 = count_primary(&uf->eq_graph, a); uint32_t prim_cnt2 = count_primary(&uf->eq_graph, b); - fun_node_t* n1 = a; - fun_node_t* n2 = b; term_t t1 = arr1; term_t t2 = arr2; - composite_term_t* t_desc = NULL; while (prim_cnt1 > prim_cnt2) { - t_desc = update_term_desc(terms, n1->pstore); - if (eq_graph_are_equal(&uf->eq_graph, t_desc->arg[0], t1)) { - int_hset_add(path_eq, _o_yices_eq(t_desc->arg[0], t1)); - t1 = n1->pstore; - } else { - int_hset_add(path_eq, _o_yices_eq(n1->pstore, t1)); - t1 = t_desc->arg[0]; - } - assert(n1->pi == uf_plugin_get_index_from_store(uf, n1->pstore)); - int_hset_add(indices, n1->pi); - n1 = n1->p; + t1 = uf_plugin_compute_weak_path_primary(uf, t1, indices, path_eq); + a = a->p; prim_cnt1--; } while (prim_cnt2 > prim_cnt1) { - t_desc = update_term_desc(terms, n2->pstore); - if (eq_graph_are_equal(&uf->eq_graph, t_desc->arg[0], t2)) { - int_hset_add(path_eq, _o_yices_eq(t_desc->arg[0], t2)); - t2 = n2->pstore; - } else { - int_hset_add(path_eq, _o_yices_eq(n2->pstore, t2)); - t2 = t_desc->arg[0]; - } - assert(n2->pi == uf_plugin_get_index_from_store(uf, n2->pstore)); - int_hset_add(indices, n2->pi); - n2 = n2->p; + t2 = uf_plugin_compute_weak_path_primary(uf, t2, indices, path_eq); + b = b->p; prim_cnt2--; } - while (n1 != n2) { - assert(n1->p); - assert(n1->pi == uf_plugin_get_index_from_store(uf, n1->pstore)); - t_desc = update_term_desc(terms, n1->pstore); - if (eq_graph_are_equal(&uf->eq_graph, t_desc->arg[0], t1)) { - int_hset_add(path_eq, _o_yices_eq(t_desc->arg[0], t1)); - t1 = n1->pstore; - } else { - int_hset_add(path_eq, _o_yices_eq(n1->pstore, t1)); - t1 = t_desc->arg[0]; - } - int_hset_add(indices, n1->pi); - n1 = n1->p; - - assert(n2->p); - assert(n2->pi == uf_plugin_get_index_from_store(uf, n2->pstore)); - t_desc = update_term_desc(terms, n2->pstore); - if (eq_graph_are_equal(&uf->eq_graph, t_desc->arg[0], t2)) { - int_hset_add(path_eq, _o_yices_eq(t_desc->arg[0], t2)); - t2 = n2->pstore; - } else { - int_hset_add(path_eq, _o_yices_eq(n2->pstore, t2)); - t2 = t_desc->arg[0]; - } - int_hset_add(indices, n2->pi); - n2 = n2->p; + while (a != b) { + t1 = uf_plugin_compute_weak_path_primary(uf, t1, indices, path_eq); + a = a->p; + + t2 = uf_plugin_compute_weak_path_primary(uf, t2, indices, path_eq); + b = b->p; } + assert(a == b); if (t1 != t2) { int_hset_add(path_eq, _o_yices_eq(t1, t2)); } - - assert(n1 == n2); } static term_t uf_plugin_compute_path_secondary(uf_plugin_t* uf, term_t arr, - term_t idx, - int_hset_t* indices, - int_hset_t* path_eq) { + term_t idx, + int_hset_t* indices, + int_hset_t* path_eq) { term_t res = NULL_TERM; term_table_t* terms = uf->ctx->terms; const fun_node_t* tmp = find_secondary_node(&uf->eq_graph, - uf_plugin_get_fun_node(uf, arr), - idx); + uf_plugin_get_fun_node(uf, arr), + idx); assert(tmp->sstore != NULL_TERM); assert(tmp->pi != NULL_TERM); assert(tmp->s); assert(eq_graph_are_equal(&uf->eq_graph, tmp->pi, idx)); assert(!eq_graph_are_equal(&uf->eq_graph, idx, - uf_plugin_get_index_from_store(uf, tmp->sstore))); + uf_plugin_get_index_from_store(uf, tmp->sstore))); composite_term_t* t_desc = update_term_desc(terms, tmp->sstore); if (find_secondary_node(&uf->eq_graph, uf_plugin_get_fun_node(uf, t_desc->arg[0]), idx) == tmp) { @@ -599,8 +582,8 @@ static void uf_plugin_compute_weak_path_i(uf_plugin_t* uf, term_t arr1, int_hset_t* indices, int_hset_t* path_eq) { term_table_t* terms = uf->ctx->terms; - fun_node_t* a = uf_plugin_get_fun_node(uf, arr1); - fun_node_t* b = uf_plugin_get_fun_node(uf, arr2); + const fun_node_t* a = uf_plugin_get_fun_node(uf, arr1); + const fun_node_t* b = uf_plugin_get_fun_node(uf, arr2); uint32_t sec_cnt1 = count_secondary(&uf->eq_graph, a, idx); uint32_t sec_cnt2 = count_secondary(&uf->eq_graph, b, idx); From 63114cd9c1e037976c130381c1c4294df9ab7773 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Mon, 13 Feb 2023 10:59:29 -0800 Subject: [PATCH 060/182] minor --- src/mcsat/uf/uf_plugin.c | 42 ++++++++++++++++++++-------------------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index c06f1c7f0..7da680652 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -202,7 +202,7 @@ static const fun_node_t* find_secondary_node(const eq_graph_t* eq_graph, return res; } -static term_t uf_plugin_get_index_from_store(uf_plugin_t* uf, term_t store) { +static inline term_t uf_plugin_get_index_from_store(uf_plugin_t* uf, term_t store) { term_table_t* terms = uf->ctx->terms; assert(term_kind(terms, store) == UPDATE_TERM); @@ -231,7 +231,7 @@ static void make_rep_i(uf_plugin_t* uf, fun_node_t* n) { next->sstore = prev_store; assert(!eq_graph_are_equal(&uf->eq_graph, next->pi, - uf_plugin_get_index_from_store(uf, next->sstore))); + uf_plugin_get_index_from_store(uf, next->sstore))); prev = next; prev_store = tmp_sec_store; @@ -473,9 +473,9 @@ static fun_node_t *uf_plugin_get_fun_node(uf_plugin_t* uf, term_t t) { return v->val; } -static term_t uf_plugin_compute_weak_path_primary(uf_plugin_t* uf, term_t arr, - int_hset_t* indices, - int_hset_t* path_eq) { +static inline term_t uf_plugin_compute_weak_path_primary(uf_plugin_t* uf, term_t arr, + int_hset_t* indices, + int_hset_t* path_eq) { const fun_node_t* a = uf_plugin_get_fun_node(uf, arr); term_t res = NULL_TERM; composite_term_t* t_desc = NULL; @@ -499,7 +499,7 @@ static term_t uf_plugin_compute_weak_path_primary(uf_plugin_t* uf, term_t arr, } static void uf_plugin_compute_weak_path(uf_plugin_t* uf, term_t arr1, - term_t arr2, int_hset_t* indices, + term_t arr2, int_hset_t* indices, int_hset_t* path_eq) { const fun_node_t* a = uf_plugin_get_fun_node(uf, arr1); const fun_node_t* b = uf_plugin_get_fun_node(uf, arr2); @@ -1026,8 +1026,8 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, const ivector_t* select_ static bool uf_plugin_array_ext_lemma(uf_plugin_t* uf, trail_token_t* prop, - term_t arr1, term_t arr2, - const ivector_t* select_terms) { + term_t arr1, term_t arr2, + const ivector_t* select_terms) { bool res = true; term_table_t* terms = uf->ctx->terms; @@ -1062,9 +1062,9 @@ bool uf_plugin_array_ext_lemma(uf_plugin_t* uf, trail_token_t* prop, for (k = 0; k < indices.nelems; ++ k) { term_t idx = indices.data[k]; if (!uf_plugin_array_weak_congruence_i(uf, select_terms, arr1, arr2, - idx, &cond)) { - ok = false; - break; + idx, &cond)) { + ok = false; + break; } } @@ -1073,11 +1073,11 @@ bool uf_plugin_array_ext_lemma(uf_plugin_t* uf, trail_token_t* prop, int_hset_close(&path_eq); for (k = 0; k < path_eq.nelems; ++k) { - add_if_not_true_term(&uf->conflict, path_eq.data[k]); + add_if_not_true_term(&uf->conflict, path_eq.data[k]); } for (k = 0; k < cond.size; ++k) { - add_if_not_true_term(&uf->conflict, cond.data[k]); + add_if_not_true_term(&uf->conflict, cond.data[k]); } ivector_push(&uf->conflict, _o_yices_neq(arr1, arr2)); @@ -1085,11 +1085,11 @@ bool uf_plugin_array_ext_lemma(uf_plugin_t* uf, trail_token_t* prop, ivector_remove_duplicates(&uf->conflict); if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { - ctx_trace_printf(uf->ctx, ">2 Array conflict BEGIN 2\n"); - for (k = 0; k < uf->conflict.size; ++ k) { - ctx_trace_term(uf->ctx, uf->conflict.data[k]); - } - ctx_trace_printf(uf->ctx, ">2 Array conflict END 2\n"); + ctx_trace_printf(uf->ctx, ">2 Array conflict BEGIN 2\n"); + for (k = 0; k < uf->conflict.size; ++ k) { + ctx_trace_term(uf->ctx, uf->conflict.data[k]); + } + ctx_trace_printf(uf->ctx, ">2 Array conflict END 2\n"); } assert(uf->conflict.size > 1); @@ -1105,7 +1105,7 @@ bool uf_plugin_array_ext_lemma(uf_plugin_t* uf, trail_token_t* prop, static bool uf_plugin_array_ext_check(uf_plugin_t* uf, trail_token_t* prop, - const ivector_t* array_eq_terms, + const ivector_t* array_eq_terms, const ivector_t* array_terms, const ivector_t* select_terms) { uint32_t i, j; @@ -1135,8 +1135,8 @@ bool uf_plugin_array_ext_check(uf_plugin_t* uf, trail_token_t* prop, for (j = i + 1; res && j < array_terms->size; ++j) { arr2 = array_terms->data[j]; if (!int_hset_member(&seen, _o_yices_eq(arr1, arr2))) { - res = uf_plugin_array_ext_lemma(uf, prop, arr1, arr2, select_terms); - int_hset_add(&seen, _o_yices_eq(arr1, arr2)); + res = uf_plugin_array_ext_lemma(uf, prop, arr1, arr2, select_terms); + int_hset_add(&seen, _o_yices_eq(arr1, arr2)); } } } From 60061d22393d88e164f07716ff638e32a7ad6a2b Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Mon, 13 Feb 2023 11:49:19 -0800 Subject: [PATCH 061/182] bump terms used in array conflicts --- src/mcsat/uf/uf_plugin.c | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index 7da680652..f80cd6759 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -1430,10 +1430,21 @@ void uf_plugin_array_propagations(uf_plugin_t* uf, trail_token_t* prop) { if (uf->conflict.size > 0) { // Report conflict + term_t t; prop->conflict(prop); (*uf->stats.conflicts) ++; - //ivector_copy(&uf->tmp, &uf->conflict, uf->conflict.size); - //uf_plugin_bump_terms_and_reset(uf, &uf->tmp); + // extract terms used in the conflict + for (i = 0; i < uf->conflict.size; ++i) { + t = uf->conflict.data[i]; + if (term_kind(terms, t) == EQ_TERM) { + t_desc = eq_term_desc(terms, t); + int_mset_add(&uf->tmp, t_desc->arg[0]); + int_mset_add(&uf->tmp, t_desc->arg[1]); + } else { + assert(false); + } + } + uf_plugin_bump_terms_and_reset(uf, &uf->tmp); statistic_avg_add(uf->stats.avg_conflict_size, uf->conflict.size); } From d862be8dc0cb162d76ef9648aca9cc336fdc140c Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Mon, 13 Feb 2023 11:55:07 -0800 Subject: [PATCH 062/182] use weq when updates are present --- src/mcsat/uf/uf_plugin.c | 63 ++++++++++++++++++++-------------------- 1 file changed, 31 insertions(+), 32 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index f80cd6759..187492da7 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -1406,50 +1406,49 @@ void uf_plugin_array_propagations(uf_plugin_t* uf, trail_token_t* prop) { } } } - - if (USE_ARRAY_DIFF && ok) { - ok = uf_plugin_array_ext_diff_check(uf, prop, &array_eq_terms, NULL); - } - if (ok) { - if (!USE_ARRAY_DIFF || updates_present) { - uf_plugin_array_build_weak_eq_graph(uf, &array_terms); + if (updates_present) { + if (USE_ARRAY_DIFF && ok) { + ok = uf_plugin_array_ext_diff_check(uf, prop, &array_eq_terms, NULL); } - if (updates_present) { + + if (ok) { + uf_plugin_array_build_weak_eq_graph(uf, &array_terms); ok = uf_plugin_array_read_over_write_check(uf, prop, &array_terms, &select_terms); } - } - if (ok) { - if (USE_ARRAY_DIFF) { - ok = uf_plugin_array_ext_diff_check(uf, prop, NULL, &array_terms); - } else { - ok = uf_plugin_array_ext_check(uf, prop, &array_eq_terms, &array_terms, &select_terms); + if (ok) { + if (USE_ARRAY_DIFF) { + ok = uf_plugin_array_ext_diff_check(uf, prop, NULL, &array_terms); + } else { + ok = uf_plugin_array_ext_check(uf, prop, &array_eq_terms, &array_terms, &select_terms); + } } - } - if (uf->conflict.size > 0) { - // Report conflict - term_t t; - prop->conflict(prop); - (*uf->stats.conflicts) ++; - // extract terms used in the conflict - for (i = 0; i < uf->conflict.size; ++i) { - t = uf->conflict.data[i]; - if (term_kind(terms, t) == EQ_TERM) { - t_desc = eq_term_desc(terms, t); - int_mset_add(&uf->tmp, t_desc->arg[0]); - int_mset_add(&uf->tmp, t_desc->arg[1]); - } else { - assert(false); + if (uf->conflict.size > 0) { + // Report conflict + term_t t; + prop->conflict(prop); + (*uf->stats.conflicts) ++; + // extract terms used in the conflict + for (i = 0; i < uf->conflict.size; ++i) { + t = uf->conflict.data[i]; + if (term_kind(terms, t) == EQ_TERM) { + t_desc = eq_term_desc(terms, t); + int_mset_add(&uf->tmp, t_desc->arg[0]); + int_mset_add(&uf->tmp, t_desc->arg[1]); + } else { + assert(false); + } } + uf_plugin_bump_terms_and_reset(uf, &uf->tmp); + statistic_avg_add(uf->stats.avg_conflict_size, uf->conflict.size); } - uf_plugin_bump_terms_and_reset(uf, &uf->tmp); - statistic_avg_add(uf->stats.avg_conflict_size, uf->conflict.size); } - + delete_ivector(&select_terms); delete_ivector(&array_terms); + delete_ivector(&array_eq_terms); } static From 0b3803de7ff03d9499697a8d93cf189325cd86b7 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Mon, 13 Feb 2023 12:56:47 -0800 Subject: [PATCH 063/182] add stats --- src/mcsat/uf/uf_plugin.c | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index 187492da7..4be2adecb 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -100,6 +100,11 @@ typedef struct { statistic_int_t* egraph_terms; statistic_int_t* propagations; statistic_int_t* conflicts; + statistic_int_t* array_terms; + statistic_int_t* select_terms; + statistic_int_t* array_update1_axioms; + statistic_int_t* array_update2_axioms; + statistic_int_t* array_ext_axioms; statistic_avg_t* avg_conflict_size; statistic_avg_t* avg_explanation_size; } stats; @@ -338,6 +343,11 @@ void uf_plugin_stats_init(uf_plugin_t* uf) { uf->stats.propagations = statistics_new_int(uf->ctx->stats, "mcsat::uf::propagations"); uf->stats.conflicts = statistics_new_int(uf->ctx->stats, "mcsat::uf::conflicts"); uf->stats.egraph_terms = statistics_new_int(uf->ctx->stats, "mcsat::uf::egraph_terms"); + uf->stats.array_terms = statistics_new_int(uf->ctx->stats, "mcsat::uf::array_terms"); + uf->stats.select_terms = statistics_new_int(uf->ctx->stats, "mcsat::uf::select_terms"); + uf->stats.array_update1_axioms = statistics_new_int(uf->ctx->stats, "mcsat::uf::array_update1_axioms"); + uf->stats.array_update2_axioms = statistics_new_int(uf->ctx->stats, "mcsat::uf::array_update2_axioms"); + uf->stats.array_ext_axioms = statistics_new_int(uf->ctx->stats, "mcsat::uf::array_ext_axioms"); uf->stats.avg_conflict_size = statistics_new_avg(uf->ctx->stats, "mcsat::uf::avg_conflict_size"); uf->stats.avg_explanation_size = statistics_new_avg(uf->ctx->stats, "mcsat::uf::avg_explanation_size"); } @@ -806,6 +816,7 @@ void uf_plugin_new_term_notify(plugin_t* plugin, term_t t, trail_token_t* prop) variable_db_get_variable(uf->ctx->var_db, r); term_t r_lemma = _o_yices_eq(r, t_desc->arg[t_desc->arity - 1]); prop->definition_lemma(prop, r_lemma, t); + (*uf->stats.array_update1_axioms) ++; } } @@ -1093,6 +1104,7 @@ bool uf_plugin_array_ext_lemma(uf_plugin_t* uf, trail_token_t* prop, } assert(uf->conflict.size > 1); + (*uf->stats.array_ext_axioms) ++; } } @@ -1204,6 +1216,7 @@ bool uf_plugin_array_ext_diff_lemma(uf_plugin_t* uf, trail_token_t* prop, } assert(uf->conflict.size > 1); + (*uf->stats.array_ext_axioms) ++; return false; } @@ -1321,6 +1334,7 @@ bool uf_plugin_array_read_over_write_check(uf_plugin_t* uf, trail_token_t* prop, } assert(uf->conflict.size > 1); + (*uf->stats.array_update2_axioms) ++; goto done; } @@ -1407,6 +1421,9 @@ void uf_plugin_array_propagations(uf_plugin_t* uf, trail_token_t* prop) { } } + (*uf->stats.array_terms) = array_terms.size; + (*uf->stats.select_terms) = select_terms.size; + if (updates_present) { if (USE_ARRAY_DIFF && ok) { ok = uf_plugin_array_ext_diff_check(uf, prop, &array_eq_terms, NULL); From b9da07238dd43fba60a6a653ad3168a12bf91fb1 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Mon, 13 Feb 2023 15:29:59 -0800 Subject: [PATCH 064/182] fix warnings --- src/mcsat/uf/uf_plugin.c | 41 +++++++++++++++++++++------------------- 1 file changed, 22 insertions(+), 19 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index 4be2adecb..c807d581a 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -198,8 +198,17 @@ static uint32_t count_secondary(const eq_graph_t* eq_graph, const fun_node_t* n, return res; } -static const fun_node_t* find_secondary_node(const eq_graph_t* eq_graph, - fun_node_t* n, term_t idx) { +static fun_node_t* find_secondary_node(const eq_graph_t* eq_graph, + fun_node_t* n, term_t idx) { + fun_node_t* res = n; + while (res->p != NULL && !eq_graph_are_equal(eq_graph, res->pi, idx)) { + res = res->p; + } + return res; +} + +static const fun_node_t* find_secondary_node_const(const eq_graph_t* eq_graph, + const fun_node_t* n, term_t idx) { const fun_node_t* res = n; while (res->p != NULL && !eq_graph_are_equal(eq_graph, res->pi, idx)) { res = res->p; @@ -266,7 +275,7 @@ static void make_rep(uf_plugin_t* uf, fun_node_t* n) { static term_t uf_plugin_get_term_rep(uf_plugin_t* uf, term_t t) { assert(eq_graph_term_has_value(&uf->eq_graph, t)); - mcsat_value_t* val = eq_graph_get_propagated_term_value(&uf->eq_graph, t); + const mcsat_value_t* val = eq_graph_get_propagated_term_value(&uf->eq_graph, t); int32_t v_int = 0; bool ok = q_get32((rational_t*)&val->q, &v_int); (void) ok; @@ -522,7 +531,6 @@ static void uf_plugin_compute_weak_path(uf_plugin_t* uf, term_t arr1, return; } - term_table_t* terms = uf->ctx->terms; uint32_t prim_cnt1 = count_primary(&uf->eq_graph, a); uint32_t prim_cnt2 = count_primary(&uf->eq_graph, b); term_t t1 = arr1; @@ -560,9 +568,9 @@ static term_t uf_plugin_compute_path_secondary(uf_plugin_t* uf, term_t arr, int_hset_t* path_eq) { term_t res = NULL_TERM; term_table_t* terms = uf->ctx->terms; - const fun_node_t* tmp = find_secondary_node(&uf->eq_graph, - uf_plugin_get_fun_node(uf, arr), - idx); + const fun_node_t* tmp = find_secondary_node_const(&uf->eq_graph, + uf_plugin_get_fun_node(uf, arr), + idx); assert(tmp->sstore != NULL_TERM); assert(tmp->pi != NULL_TERM); @@ -572,11 +580,13 @@ static term_t uf_plugin_compute_path_secondary(uf_plugin_t* uf, term_t arr, uf_plugin_get_index_from_store(uf, tmp->sstore))); composite_term_t* t_desc = update_term_desc(terms, tmp->sstore); - if (find_secondary_node(&uf->eq_graph, uf_plugin_get_fun_node(uf, t_desc->arg[0]), idx) == tmp) { + if (find_secondary_node_const(&uf->eq_graph, + uf_plugin_get_fun_node(uf, t_desc->arg[0]), idx) == tmp) { uf_plugin_compute_weak_path(uf, arr, t_desc->arg[0], indices, path_eq); res = tmp->sstore; } else { - assert(find_secondary_node(&uf->eq_graph, uf_plugin_get_fun_node(uf, tmp->sstore), idx) == tmp); + assert(find_secondary_node_const(&uf->eq_graph, + uf_plugin_get_fun_node(uf, tmp->sstore), idx) == tmp); uf_plugin_compute_weak_path(uf, arr, tmp->sstore, indices, path_eq); res = t_desc->arg[0]; @@ -591,7 +601,6 @@ static void uf_plugin_compute_weak_path_i(uf_plugin_t* uf, term_t arr1, term_t arr2, term_t idx, int_hset_t* indices, int_hset_t* path_eq) { - term_table_t* terms = uf->ctx->terms; const fun_node_t* a = uf_plugin_get_fun_node(uf, arr1); const fun_node_t* b = uf_plugin_get_fun_node(uf, arr2); uint32_t sec_cnt1 = count_secondary(&uf->eq_graph, a, idx); @@ -615,7 +624,7 @@ static void uf_plugin_compute_weak_path_i(uf_plugin_t* uf, term_t arr1, } assert(sec_cnt1 == sec_cnt2); - while (find_secondary_node(&uf->eq_graph, a, idx) != find_secondary_node(&uf->eq_graph, b, idx)) { + while (find_secondary_node_const(&uf->eq_graph, a, idx) != find_secondary_node_const(&uf->eq_graph, b, idx)) { assert(count_secondary(&uf->eq_graph, a, idx) == count_secondary(&uf->eq_graph, b, idx)); arr1 = uf_plugin_compute_path_secondary(uf, arr1, idx, indices, path_eq); arr2 = uf_plugin_compute_path_secondary(uf, arr2, idx, indices, path_eq); @@ -859,9 +868,6 @@ static bool uf_plugin_array_weak_eq_i(uf_plugin_t* uf, term_t arr1, term_t arr2, term_t idx, ivector_t* indices, ivector_t* cond) { - term_table_t* terms = uf->ctx->terms; - //ctx_trace_printf(uf->ctx, "CHECKING ARRAY WEAK EQ I\n "); - int_hset_t index_set, path_eq; bool res = false; uint32_t old_indices_size, old_cond_size; @@ -884,7 +890,6 @@ bool uf_plugin_array_weak_eq_i(uf_plugin_t* uf, term_t arr1, term_t arr2, } if (fn_arr1 == fn_arr2) { - composite_term_t* t_desc = NULL; uint32_t k; res = true; @@ -1061,7 +1066,6 @@ bool uf_plugin_array_ext_lemma(uf_plugin_t* uf, trail_token_t* prop, if (fn_arr1 == fn_arr2) { bool ok = true; - composite_term_t* t_desc = NULL; uint32_t k; ivector_shrink(&cond, 0); @@ -1231,7 +1235,7 @@ bool uf_plugin_array_ext_diff_check(uf_plugin_t* uf, trail_token_t* prop, bool res = true; term_table_t* terms = uf->ctx->terms; - uint32_t i, j, k; + uint32_t i, j; if (array_eq_terms) { composite_term_t* t_desc = NULL; @@ -1264,7 +1268,6 @@ bool uf_plugin_array_ext_diff_check(uf_plugin_t* uf, trail_token_t* prop, static bool uf_plugin_array_read_over_write_check(uf_plugin_t* uf, trail_token_t* prop, - const ivector_t* array_terms, const ivector_t* select_terms) { term_table_t* terms = uf->ctx->terms; uint32_t i, j, k; @@ -1431,7 +1434,7 @@ void uf_plugin_array_propagations(uf_plugin_t* uf, trail_token_t* prop) { if (ok) { uf_plugin_array_build_weak_eq_graph(uf, &array_terms); - ok = uf_plugin_array_read_over_write_check(uf, prop, &array_terms, &select_terms); + ok = uf_plugin_array_read_over_write_check(uf, prop, &select_terms); } if (ok) { From 07e3ee0125909ada4b7b711fbd1f2cd84017f467 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Mon, 13 Feb 2023 17:22:53 -0800 Subject: [PATCH 065/182] minor: rm optimization (possibly wrong one) --- src/mcsat/uf/uf_plugin.c | 1 - 1 file changed, 1 deletion(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index c807d581a..de068af19 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -1290,7 +1290,6 @@ bool uf_plugin_array_read_over_write_check(uf_plugin_t* uf, trail_token_t* prop, if (t_i == t_j || t_i_type != t_j_type || !eq_graph_are_equal(&uf->eq_graph, e_i_desc->arg[1], e_j_desc->arg[1]) || - eq_graph_are_equal(&uf->eq_graph, e_i_desc->arg[0], e_j_desc->arg[0]) || eq_graph_are_equal(&uf->eq_graph, t_i, t_j)) { continue; } From c0b1d1ab6bc1b2e6fccda159ab73ff7e7e820392 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Mon, 13 Feb 2023 21:29:43 -0800 Subject: [PATCH 066/182] refactor --- src/mcsat/uf/uf_plugin.c | 231 +++++++++++++++++---------------------- 1 file changed, 102 insertions(+), 129 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index de068af19..e5e20676a 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -93,6 +93,15 @@ typedef struct { /** Function Values to term (one rep term) */ int_hmap_t fun_val_term_map; + /** Weak path equalities **/ + ivector_t path_cond; + + /** Weak path indices **/ + ivector_t path_indices1; + + /** Weak path indices **/ + ivector_t path_indices2; + /** Tmp vector */ int_mset_t tmp; @@ -385,6 +394,9 @@ void uf_plugin_construct(plugin_t* plugin, plugin_context_t* ctx) { init_ivector(&uf->conflict, 0); init_ptr_hmap(&uf->fun_val_type_map, 0); init_int_hmap(&uf->fun_val_term_map, 0); + init_ivector(&uf->path_cond, 0); + init_ivector(&uf->path_indices1, 0); + init_ivector(&uf->path_indices2, 0); int_mset_construct(&uf->tmp, NULL_TERM); // Terms @@ -426,6 +438,7 @@ void uf_plugin_destruct(plugin_t* plugin) { delete_ivector(&uf->conflict); delete_ptr_hmap(&uf->fun_val_type_map); int_mset_destruct(&uf->tmp); + eq_graph_destruct(&uf->eq_graph); delete_ivector(&uf->eq_graph_addition_trail); delete_ivector(&uf->array_terms); @@ -434,6 +447,10 @@ void uf_plugin_destruct(plugin_t* plugin) { delete_int_hmap(&uf->type_to_diff); delete_int_hset(&uf->diff_funs); + delete_ivector(&uf->path_cond); + delete_ivector(&uf->path_indices1); + delete_ivector(&uf->path_indices2); + uf_plugin_clear_fun_node_map(uf); delete_ptr_hmap(&uf->fun_node_map); delete_int_hmap(&uf->fun_val_term_map); @@ -493,8 +510,8 @@ static fun_node_t *uf_plugin_get_fun_node(uf_plugin_t* uf, term_t t) { } static inline term_t uf_plugin_compute_weak_path_primary(uf_plugin_t* uf, term_t arr, - int_hset_t* indices, - int_hset_t* path_eq) { + ivector_t* indices, + ivector_t* path_cond) { const fun_node_t* a = uf_plugin_get_fun_node(uf, arr); term_t res = NULL_TERM; composite_term_t* t_desc = NULL; @@ -504,22 +521,22 @@ static inline term_t uf_plugin_compute_weak_path_primary(uf_plugin_t* uf, term_t t_desc = update_term_desc(terms, a->pstore); if (eq_graph_are_equal(&uf->eq_graph, t_desc->arg[0], arr)) { - int_hset_add(path_eq, _o_yices_eq(t_desc->arg[0], arr)); + ivector_push(path_cond, _o_yices_eq(t_desc->arg[0], arr)); res = a->pstore; } else { - int_hset_add(path_eq, _o_yices_eq(a->pstore, arr)); + ivector_push(path_cond, _o_yices_eq(a->pstore, arr)); res = t_desc->arg[0]; } assert(a->pi == uf_plugin_get_index_from_store(uf, a->pstore)); - int_hset_add(indices, a->pi); + ivector_push(indices, a->pi); return res; } static void uf_plugin_compute_weak_path(uf_plugin_t* uf, term_t arr1, - term_t arr2, int_hset_t* indices, - int_hset_t* path_eq) { + term_t arr2, ivector_t* indices, + ivector_t* path_cond) { const fun_node_t* a = uf_plugin_get_fun_node(uf, arr1); const fun_node_t* b = uf_plugin_get_fun_node(uf, arr2); @@ -527,7 +544,7 @@ static void uf_plugin_compute_weak_path(uf_plugin_t* uf, term_t arr1, assert(get_rep(&uf->eq_graph, a) == get_rep(&uf->eq_graph, b)); if (a == b) { - int_hset_add(path_eq, _o_yices_eq(arr1, arr2)); + ivector_push(path_cond, _o_yices_eq(arr1, arr2)); return; } @@ -537,35 +554,35 @@ static void uf_plugin_compute_weak_path(uf_plugin_t* uf, term_t arr1, term_t t2 = arr2; while (prim_cnt1 > prim_cnt2) { - t1 = uf_plugin_compute_weak_path_primary(uf, t1, indices, path_eq); + t1 = uf_plugin_compute_weak_path_primary(uf, t1, indices, path_cond); a = a->p; prim_cnt1--; } while (prim_cnt2 > prim_cnt1) { - t2 = uf_plugin_compute_weak_path_primary(uf, t2, indices, path_eq); + t2 = uf_plugin_compute_weak_path_primary(uf, t2, indices, path_cond); b = b->p; prim_cnt2--; } while (a != b) { - t1 = uf_plugin_compute_weak_path_primary(uf, t1, indices, path_eq); + t1 = uf_plugin_compute_weak_path_primary(uf, t1, indices, path_cond); a = a->p; - t2 = uf_plugin_compute_weak_path_primary(uf, t2, indices, path_eq); + t2 = uf_plugin_compute_weak_path_primary(uf, t2, indices, path_cond); b = b->p; } assert(a == b); if (t1 != t2) { - int_hset_add(path_eq, _o_yices_eq(t1, t2)); + ivector_push(path_cond, _o_yices_eq(t1, t2)); } } static term_t uf_plugin_compute_path_secondary(uf_plugin_t* uf, term_t arr, term_t idx, - int_hset_t* indices, - int_hset_t* path_eq) { + ivector_t* indices, + ivector_t* path_cond) { term_t res = NULL_TERM; term_table_t* terms = uf->ctx->terms; const fun_node_t* tmp = find_secondary_node_const(&uf->eq_graph, @@ -582,25 +599,25 @@ static term_t uf_plugin_compute_path_secondary(uf_plugin_t* uf, term_t arr, if (find_secondary_node_const(&uf->eq_graph, uf_plugin_get_fun_node(uf, t_desc->arg[0]), idx) == tmp) { - uf_plugin_compute_weak_path(uf, arr, t_desc->arg[0], indices, path_eq); + uf_plugin_compute_weak_path(uf, arr, t_desc->arg[0], indices, path_cond); res = tmp->sstore; } else { assert(find_secondary_node_const(&uf->eq_graph, uf_plugin_get_fun_node(uf, tmp->sstore), idx) == tmp); - uf_plugin_compute_weak_path(uf, arr, tmp->sstore, indices, path_eq); + uf_plugin_compute_weak_path(uf, arr, tmp->sstore, indices, path_cond); res = t_desc->arg[0]; } - int_hset_add(indices, t_desc->arg[1]); + ivector_push(indices, t_desc->arg[1]); return res; } static void uf_plugin_compute_weak_path_i(uf_plugin_t* uf, term_t arr1, term_t arr2, term_t idx, - int_hset_t* indices, - int_hset_t* path_eq) { + ivector_t* indices, + ivector_t* path_cond) { const fun_node_t* a = uf_plugin_get_fun_node(uf, arr1); const fun_node_t* b = uf_plugin_get_fun_node(uf, arr2); uint32_t sec_cnt1 = count_secondary(&uf->eq_graph, a, idx); @@ -609,14 +626,14 @@ static void uf_plugin_compute_weak_path_i(uf_plugin_t* uf, term_t arr1, assert(get_rep_i(&uf->eq_graph, a, idx) == get_rep_i(&uf->eq_graph, b, idx)); while (sec_cnt1 > sec_cnt2) { - arr1 = uf_plugin_compute_path_secondary(uf, arr1, idx, indices, path_eq); + arr1 = uf_plugin_compute_path_secondary(uf, arr1, idx, indices, path_cond); sec_cnt1--; a = uf_plugin_get_fun_node(uf, arr1); assert(count_secondary(&uf->eq_graph, a, idx) == sec_cnt1); assert(get_rep_i(&uf->eq_graph, a, idx) == get_rep_i(&uf->eq_graph, b, idx)); } while (sec_cnt2 > sec_cnt1) { - arr2 = uf_plugin_compute_path_secondary(uf, arr2, idx, indices, path_eq); + arr2 = uf_plugin_compute_path_secondary(uf, arr2, idx, indices, path_cond); sec_cnt2--; b = uf_plugin_get_fun_node(uf, arr2); assert(count_secondary(&uf->eq_graph, b, idx) == sec_cnt2); @@ -626,14 +643,14 @@ static void uf_plugin_compute_weak_path_i(uf_plugin_t* uf, term_t arr1, assert(sec_cnt1 == sec_cnt2); while (find_secondary_node_const(&uf->eq_graph, a, idx) != find_secondary_node_const(&uf->eq_graph, b, idx)) { assert(count_secondary(&uf->eq_graph, a, idx) == count_secondary(&uf->eq_graph, b, idx)); - arr1 = uf_plugin_compute_path_secondary(uf, arr1, idx, indices, path_eq); - arr2 = uf_plugin_compute_path_secondary(uf, arr2, idx, indices, path_eq); + arr1 = uf_plugin_compute_path_secondary(uf, arr1, idx, indices, path_cond); + arr2 = uf_plugin_compute_path_secondary(uf, arr2, idx, indices, path_cond); a = uf_plugin_get_fun_node(uf, arr1); b = uf_plugin_get_fun_node(uf, arr2); assert(get_rep_i(&uf->eq_graph, a, idx) == get_rep_i(&uf->eq_graph, b, idx)); } - uf_plugin_compute_weak_path(uf, arr1, arr2, indices, path_eq); + uf_plugin_compute_weak_path(uf, arr1, arr2, indices, path_cond); } static void uf_plugin_add_diff_terms_vars(uf_plugin_t* uf, term_t arr) { @@ -867,10 +884,9 @@ bool uf_plugin_array_idx_check(uf_plugin_t* uf, trail_token_t* prop, static bool uf_plugin_array_weak_eq_i(uf_plugin_t* uf, term_t arr1, term_t arr2, term_t idx, - ivector_t* indices, ivector_t* cond) { - int_hset_t index_set, path_eq; + ivector_t* indices, ivector_t* path_cond) { bool res = false; - uint32_t old_indices_size, old_cond_size; + uint32_t old_indices_size, old_path_cond_size; const fun_node_t* fn_arr1 = get_rep_i(&uf->eq_graph, uf_plugin_get_fun_node(uf, arr1), idx); @@ -879,36 +895,25 @@ bool uf_plugin_array_weak_eq_i(uf_plugin_t* uf, term_t arr1, term_t arr2, assert(fn_arr1 != NULL); assert(fn_arr2 != NULL); - init_int_hset(&index_set, 0); - init_int_hset(&path_eq, 0); - if (indices) { old_indices_size = indices->size; } - if (cond) { - old_cond_size = cond->size; + if (path_cond) { + old_path_cond_size = path_cond->size; } if (fn_arr1 == fn_arr2) { uint32_t k; res = true; - uf_plugin_compute_weak_path_i(uf, arr1, arr2, idx, &index_set, &path_eq); + uf_plugin_compute_weak_path_i(uf, arr1, arr2, idx, indices, path_cond); // add indices - int_hset_close(&index_set); - for (k = 0; k < index_set.nelems; ++k) { - if (eq_graph_are_equal(&uf->eq_graph, idx, index_set.data[k])) { + for (k = old_indices_size; k < indices->size; ++k) { + if (eq_graph_are_equal(&uf->eq_graph, idx, indices->data[k])) { res = false; break; } - ivector_push(indices, index_set.data[k]); - } - - int_hset_close(&path_eq); - // add path eq conditions - for (k = 0; res && k < path_eq.nelems; ++k) { - add_if_not_true_term(cond, path_eq.data[k]); } } @@ -916,55 +921,50 @@ bool uf_plugin_array_weak_eq_i(uf_plugin_t* uf, term_t arr1, term_t arr2, ivector_shrink(indices, old_indices_size); } - if (!res && cond) { - ivector_shrink(cond, old_cond_size); + if (!res && path_cond) { + ivector_shrink(path_cond, old_path_cond_size); } - delete_int_hset(&path_eq); - delete_int_hset(&index_set); - return res; } static bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, const ivector_t* select_terms, term_t arr1, term_t arr2, - term_t idx, ivector_t* cond) { + term_t idx, ivector_t* path_cond) { assert(eq_graph_term_has_value(&uf->eq_graph, idx)); bool res = false; term_table_t* terms = uf->ctx->terms; uint32_t i, j, k; - uint32_t cond_old_size; + uint32_t old_path_cond_size; - ivector_t indices; - init_ivector(&indices, 0); - - if (cond) { - cond_old_size = cond->size; + if (path_cond) { + old_path_cond_size = path_cond->size; } - if (uf_plugin_array_weak_eq_i(uf, arr1, arr2, idx, &indices, cond)) { - for (k =0; k < indices.size; ++k) { - assert(idx != indices.data[k]); - if (eq_graph_are_equal(&uf->eq_graph, idx, indices.data[k])) { + ivector_shrink(&uf->path_indices1, 0); + if (uf_plugin_array_weak_eq_i(uf, arr1, arr2, idx, &uf->path_indices1, path_cond)) { + for (k =0; k < uf->path_indices1.size; ++k) { + assert(idx != uf->path_indices1.data[k]); + if (eq_graph_are_equal(&uf->eq_graph, idx, uf->path_indices1.data[k])) { goto nextcheck; } } res = true; - for (k =0; k < indices.size; ++k) { - add_if_not_true_term(cond, _o_yices_neq(idx, indices.data[k])); + for (k =0; k < uf->path_indices1.size; ++k) { + add_if_not_true_term(path_cond, _o_yices_neq(idx, uf->path_indices1.data[k])); } goto done; } nextcheck: - if (cond) { - ivector_shrink(cond, cond_old_size); + if (path_cond) { + ivector_shrink(path_cond, old_path_cond_size); } for (i = 0; !res && i < select_terms->size; ++ i) { @@ -972,18 +972,17 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, const ivector_t* select_ type_t t_i_type = term_type(terms, t_i); assert(variable_db_get_variable_if_exists(uf->ctx->var_db, t_i) != variable_null); - ivector_shrink(&indices, 0); + ivector_shrink(&uf->path_indices1, 0); composite_term_t* e_i_desc = app_term_desc(terms, t_i); if (!eq_graph_are_equal(&uf->eq_graph, e_i_desc->arg[1], idx) || - !uf_plugin_array_weak_eq_i(uf, arr1, e_i_desc->arg[0], idx, &indices, cond)) { - assert(indices.size == 0); + !uf_plugin_array_weak_eq_i(uf, arr1, e_i_desc->arg[0], idx, &uf->path_indices1, path_cond)) { continue; } - uint32_t size1 = indices.size; + uint32_t size1 = uf->path_indices1.size; uint32_t size2; - if (cond) { - size2 = cond->size; + if (path_cond) { + size2 = path_cond->size; } for (j = 1; !res && j < select_terms->size; ++ j) { @@ -994,35 +993,35 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, const ivector_t* select_ continue; } - ivector_shrink(&indices, size1); - if (cond) { - ivector_shrink(cond, size2); + ivector_shrink(&uf->path_indices1, size1); + if (path_cond) { + ivector_shrink(path_cond, size2); } composite_term_t* e_j_desc = app_term_desc(terms, t_j); if (!eq_graph_are_equal(&uf->eq_graph, e_j_desc->arg[1], idx) || - !uf_plugin_array_weak_eq_i(uf, arr2, e_j_desc->arg[0], idx, &indices, cond)) { + !uf_plugin_array_weak_eq_i(uf, arr2, e_j_desc->arg[0], idx, &uf->path_indices1, path_cond)) { continue; } res = true; - if (cond) { + if (path_cond) { // Conditions of arr1 weakly-eq-i to a and arr2 weakly-eq-i to b' - for (k = 0; k < indices.size; ++k) { - if (eq_graph_are_equal(&uf->eq_graph, indices.data[k], idx)) { + for (k = 0; k < uf->path_indices1.size; ++k) { + if (eq_graph_are_equal(&uf->eq_graph, uf->path_indices1.data[k], idx)) { res = false; break; } } if (res) { - for (k =0; k < indices.size; ++k) { - add_if_not_true_term(cond, _o_yices_neq(idx, indices.data[k])); + for (k = 0; k < uf->path_indices1.size; ++k) { + add_if_not_true_term(path_cond, _o_yices_neq(idx, uf->path_indices1.data[k])); } - add_if_not_true_term(cond, _o_yices_eq(idx, e_i_desc->arg[1])); - add_if_not_true_term(cond, _o_yices_eq(t_i, t_j)); - add_if_not_true_term(cond, _o_yices_eq(idx, e_j_desc->arg[1])); + add_if_not_true_term(path_cond, _o_yices_eq(idx, e_i_desc->arg[1])); + add_if_not_true_term(path_cond, _o_yices_eq(t_i, t_j)); + add_if_not_true_term(path_cond, _o_yices_eq(idx, e_j_desc->arg[1])); goto done; } @@ -1031,12 +1030,10 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, const ivector_t* select_ } done: - if (!res && cond) { - ivector_shrink(cond, cond_old_size); + if (!res && path_cond) { + ivector_shrink(path_cond, old_path_cond_size); } - delete_ivector(&indices); - return res; } @@ -1054,13 +1051,6 @@ bool uf_plugin_array_ext_lemma(uf_plugin_t* uf, trail_token_t* prop, return res; } - ivector_t cond; - int_hset_t path_eq, indices; - - init_ivector(&cond, 0); - init_int_hset(&path_eq, 0); - init_int_hset(&indices, 0); - const fun_node_t* fn_arr1 = get_rep(&uf->eq_graph, uf_plugin_get_fun_node(uf, arr1)); const fun_node_t* fn_arr2 = get_rep(&uf->eq_graph, uf_plugin_get_fun_node(uf, arr2)); @@ -1068,16 +1058,15 @@ bool uf_plugin_array_ext_lemma(uf_plugin_t* uf, trail_token_t* prop, bool ok = true; uint32_t k; - ivector_shrink(&cond, 0); - int_hset_reset(&path_eq); - int_hset_reset(&indices); - uf_plugin_compute_weak_path(uf, arr1, arr2, &indices, &path_eq); - - int_hset_close(&indices); - for (k = 0; k < indices.nelems; ++ k) { - term_t idx = indices.data[k]; + ivector_shrink(&uf->path_cond, 0); + ivector_shrink(&uf->path_indices2, 0); + uf_plugin_compute_weak_path(uf, arr1, arr2, &uf->path_indices2, &uf->path_cond); + + ivector_remove_duplicates(&uf->path_indices2); + for (k = 0; k < uf->path_indices2.size; ++ k) { + term_t idx = uf->path_indices2.data[k]; if (!uf_plugin_array_weak_congruence_i(uf, select_terms, arr1, arr2, - idx, &cond)) { + idx, &uf->path_cond)) { ok = false; break; } @@ -1086,13 +1075,8 @@ bool uf_plugin_array_ext_lemma(uf_plugin_t* uf, trail_token_t* prop, if (ok) { res = false; - int_hset_close(&path_eq); - for (k = 0; k < path_eq.nelems; ++k) { - add_if_not_true_term(&uf->conflict, path_eq.data[k]); - } - - for (k = 0; k < cond.size; ++k) { - add_if_not_true_term(&uf->conflict, cond.data[k]); + for (k = 0; k < uf->path_cond.size; ++k) { + add_if_not_true_term(&uf->conflict, uf->path_cond.data[k]); } ivector_push(&uf->conflict, _o_yices_neq(arr1, arr2)); @@ -1112,10 +1096,6 @@ bool uf_plugin_array_ext_lemma(uf_plugin_t* uf, trail_token_t* prop, } } - delete_ivector(&cond); - delete_int_hset(&path_eq); - delete_int_hset(&indices); - return res; } @@ -1272,10 +1252,6 @@ bool uf_plugin_array_read_over_write_check(uf_plugin_t* uf, trail_token_t* prop, term_table_t* terms = uf->ctx->terms; uint32_t i, j, k; - ivector_t cond, indices; - init_ivector(&cond, 0); - init_ivector(&indices, 0); - // generalized read-over-write lemma for (i = 0; i < select_terms->size; ++ i) { term_t t_i = select_terms->data[i]; @@ -1294,32 +1270,32 @@ bool uf_plugin_array_read_over_write_check(uf_plugin_t* uf, trail_token_t* prop, continue; } - ivector_shrink(&indices, 0); - ivector_shrink(&cond, 0); + ivector_shrink(&uf->path_indices1, 0); + ivector_shrink(&uf->path_cond, 0); if (uf_plugin_array_weak_eq_i(uf, e_i_desc->arg[0], e_j_desc->arg[0], - e_i_desc->arg[1], &indices, &cond)) { + e_i_desc->arg[1], &uf->path_indices1, &uf->path_cond)) { // found conflict assert(uf->conflict.size == 0); bool ok = true; - for (k = 0; k < indices.size; ++ k) { - assert(indices.data[k] != e_i_desc->arg[1]); + for (k = 0; k < uf->path_indices1.size; ++ k) { + assert(uf->path_indices1.data[k] != e_i_desc->arg[1]); if (eq_graph_are_equal(&uf->eq_graph, - e_i_desc->arg[1], indices.data[k])) { + e_i_desc->arg[1], uf->path_indices1.data[k])) { ok = false; break; } add_if_not_true_term(&uf->conflict, - _o_yices_neq(e_i_desc->arg[1], indices.data[k])); + _o_yices_neq(e_i_desc->arg[1], uf->path_indices1.data[k])); } if (!ok) { ivector_reset(&uf->conflict); } else { - for (k = 0; k < cond.size; ++k) { - add_if_not_true_term(&uf->conflict, cond.data[k]); + for (k = 0; k < uf->path_cond.size; ++k) { + add_if_not_true_term(&uf->conflict, uf->path_cond.data[k]); } add_if_not_true_term(&uf->conflict, _o_yices_eq(e_i_desc->arg[1], e_j_desc->arg[1])); @@ -1345,9 +1321,6 @@ bool uf_plugin_array_read_over_write_check(uf_plugin_t* uf, trail_token_t* prop, } done: - delete_ivector(&indices); - delete_ivector(&cond); - return uf->conflict.size == 0; } From f0bc428c4a4800820f27cfa8ca26d379da8bb44e Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Mon, 13 Feb 2023 21:32:03 -0800 Subject: [PATCH 067/182] comment bumping terms used in array conflict --- src/mcsat/uf/uf_plugin.c | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index e5e20676a..81430d090 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -1423,17 +1423,17 @@ void uf_plugin_array_propagations(uf_plugin_t* uf, trail_token_t* prop) { prop->conflict(prop); (*uf->stats.conflicts) ++; // extract terms used in the conflict - for (i = 0; i < uf->conflict.size; ++i) { - t = uf->conflict.data[i]; - if (term_kind(terms, t) == EQ_TERM) { - t_desc = eq_term_desc(terms, t); - int_mset_add(&uf->tmp, t_desc->arg[0]); - int_mset_add(&uf->tmp, t_desc->arg[1]); - } else { - assert(false); - } - } - uf_plugin_bump_terms_and_reset(uf, &uf->tmp); + /* for (i = 0; i < uf->conflict.size; ++i) { */ + /* t = uf->conflict.data[i]; */ + /* if (term_kind(terms, t) == EQ_TERM) { */ + /* t_desc = eq_term_desc(terms, t); */ + /* int_mset_add(&uf->tmp, t_desc->arg[0]); */ + /* int_mset_add(&uf->tmp, t_desc->arg[1]); */ + /* } else { */ + /* assert(false); */ + /* } */ + /* } */ + /* uf_plugin_bump_terms_and_reset(uf, &uf->tmp); */ statistic_avg_add(uf->stats.avg_conflict_size, uf->conflict.size); } } From 2c4aa7ad18f40136e615b6beb3df3276df7c7ff7 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Tue, 14 Feb 2023 00:20:14 -0800 Subject: [PATCH 068/182] optimization: delay array check as much as possible --- src/mcsat/uf/uf_plugin.c | 46 +++++++++++++++++++++++----------------- 1 file changed, 26 insertions(+), 20 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index 81430d090..23fd90b7b 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -457,7 +457,8 @@ void uf_plugin_destruct(plugin_t* plugin) { } static -void uf_plugin_process_eq_graph_propagations(uf_plugin_t* uf, trail_token_t* prop) { +bool uf_plugin_process_eq_graph_propagations(uf_plugin_t* uf, trail_token_t* prop) { + bool propagated = false; // Process any propagated terms if (eq_graph_has_propagated_terms(&uf->eq_graph)) { uint32_t i = 0; @@ -487,6 +488,8 @@ void uf_plugin_process_eq_graph_propagations(uf_plugin_t* uf, trail_token_t* pro prop->add(prop, t_var, v); (*uf->stats.propagations) ++; + + propagated = true; } else { // Ignore, we will report conflict } @@ -495,6 +498,8 @@ void uf_plugin_process_eq_graph_propagations(uf_plugin_t* uf, trail_token_t* pro } delete_ivector(&eq_propagations); } + + return propagated; } static fun_node_t *uf_plugin_get_fun_node(uf_plugin_t* uf, term_t t) { @@ -1353,6 +1358,21 @@ void uf_plugin_array_build_weak_eq_graph(uf_plugin_t* uf, const ivector_t* array static void uf_plugin_array_propagations(uf_plugin_t* uf, trail_token_t* prop) { + // optimization: skip array checks if not all terms (present in the + // eq_graph) have a value assigned in the graph + variable_db_t* var_db = uf->ctx->var_db; + term_t t = NULL_TERM; + int_hmap_pair_t* it; + for (it = int_hmap_first_record(&var_db->term_to_variable_map); + it != NULL; + it = int_hmap_next_record(&var_db->term_to_variable_map, it)) { + t = it->key; + if (eq_graph_has_term(&uf->eq_graph, t) && + !eq_graph_term_has_value(&uf->eq_graph, t)) { + return; + } + } + bool ok = true; ivector_t array_eq_terms, array_terms, select_terms; @@ -1371,30 +1391,15 @@ void uf_plugin_array_propagations(uf_plugin_t* uf, trail_token_t* prop) { //ok = uf_plugin_array_idx_check(uf, prop, &array_terms); + // check if updates are present. bool updates_present = false; - - // check if all the revlevant terms have an assigned value uint32_t i; term_table_t* terms = uf->ctx->terms; - composite_term_t* t_desc = NULL; for (i = 0; ok && i < array_terms.size; ++i) { - if (!eq_graph_term_has_value(&uf->eq_graph, array_terms.data[i])) { - ok = false; - } if (term_kind(terms, array_terms.data[i]) == UPDATE_TERM) { updates_present = true; } } - for (i = 0; ok && i < select_terms.size; ++i) { - if (!eq_graph_term_has_value(&uf->eq_graph, select_terms.data[i])) { - ok = false; - } else { - t_desc = app_term_desc(terms, select_terms.data[i]); - if (!eq_graph_term_has_value(&uf->eq_graph, t_desc->arg[1])) { - ok = false; - } - } - } (*uf->stats.array_terms) = array_terms.size; (*uf->stats.select_terms) = select_terms.size; @@ -1419,7 +1424,6 @@ void uf_plugin_array_propagations(uf_plugin_t* uf, trail_token_t* prop) { if (uf->conflict.size > 0) { // Report conflict - term_t t; prop->conflict(prop); (*uf->stats.conflicts) ++; // extract terms used in the conflict @@ -1459,7 +1463,7 @@ void uf_plugin_propagate(plugin_t* plugin, trail_token_t* prop) { // Propagate known terms eq_graph_propagate_trail(&uf->eq_graph); - uf_plugin_process_eq_graph_propagations(uf, prop); + bool eq_propagated = uf_plugin_process_eq_graph_propagations(uf, prop); // Check for conflicts if (uf->eq_graph.in_conflict) { @@ -1473,7 +1477,9 @@ void uf_plugin_propagate(plugin_t* plugin, trail_token_t* prop) { return; } - if (uf->array_terms.size > 0) { + // skip array propagation if the EQ has done propgation + // check array propgation only if array terms are present + if (!eq_propagated && uf->array_terms.size > 0) { uf_plugin_array_propagations(uf, prop); } } From 6b3583c3c6e73daa2fc80cc5c4cd3d496f3225a8 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Tue, 14 Feb 2023 00:57:55 -0800 Subject: [PATCH 069/182] fix --- src/mcsat/uf/uf_plugin.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index 23fd90b7b..920b432dc 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -1367,7 +1367,7 @@ void uf_plugin_array_propagations(uf_plugin_t* uf, trail_token_t* prop) { it != NULL; it = int_hmap_next_record(&var_db->term_to_variable_map, it)) { t = it->key; - if (eq_graph_has_term(&uf->eq_graph, t) && + if (t >= 0 && eq_graph_has_term(&uf->eq_graph, t) && !eq_graph_term_has_value(&uf->eq_graph, t)) { return; } From e55346b001fd459a1687e9418d49dab7b9d98437 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Tue, 14 Feb 2023 01:15:34 -0800 Subject: [PATCH 070/182] fix: corner case in array ext check --- src/mcsat/uf/uf_plugin.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index 920b432dc..f8c8eced4 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -990,7 +990,7 @@ bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, const ivector_t* select_ size2 = path_cond->size; } - for (j = 1; !res && j < select_terms->size; ++ j) { + for (j = 0; !res && j < select_terms->size; ++ j) { term_t t_j = select_terms->data[j]; type_t t_j_type = term_type(terms, t_j); if (t_i_type != t_j_type || From 978fdca1f2298c220bf5481d7b5894944d5e5670 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Tue, 14 Feb 2023 01:26:07 -0800 Subject: [PATCH 071/182] test from smtlib --- .../storecomm_t2_np_sf_ai_00060_009.cvc.smt2 | 2149 +++++++++++++++++ ...recomm_t2_np_sf_ai_00060_009.cvc.smt2.gold | 1 + ...omm_t2_np_sf_ai_00060_009.cvc.smt2.options | 1 + 3 files changed, 2151 insertions(+) create mode 100644 tests/regress/mcsat/ax/storecomm_t2_np_sf_ai_00060_009.cvc.smt2 create mode 100644 tests/regress/mcsat/ax/storecomm_t2_np_sf_ai_00060_009.cvc.smt2.gold create mode 100644 tests/regress/mcsat/ax/storecomm_t2_np_sf_ai_00060_009.cvc.smt2.options diff --git a/tests/regress/mcsat/ax/storecomm_t2_np_sf_ai_00060_009.cvc.smt2 b/tests/regress/mcsat/ax/storecomm_t2_np_sf_ai_00060_009.cvc.smt2 new file mode 100644 index 000000000..0fe7b10b0 --- /dev/null +++ b/tests/regress/mcsat/ax/storecomm_t2_np_sf_ai_00060_009.cvc.smt2 @@ -0,0 +1,2149 @@ +(set-info :smt-lib-version 2.6) +(set-logic QF_AX) +(set-info :source | +Benchmarks used in the followin paper: +Big proof engines as little proof engines: new results on rewrite-based satisfiability procedure +Alessandro Armando, Maria Paola Bonacina, Silvio Ranise, Stephan Schulz. +PDPAR'05 +http://www.ai.dist.unige.it/pdpar05/ + + +|) +(set-info :category "crafted") +(set-info :status unsat) +(declare-sort Index 0) +(declare-sort Element 0) +(declare-fun a_0 () (Array Index Element)) +(declare-fun a_1 () (Array Index Element)) +(declare-fun a_10 () (Array Index Element)) +(declare-fun a_100 () (Array Index Element)) +(declare-fun a_101 () (Array Index Element)) +(declare-fun a_102 () (Array Index Element)) +(declare-fun a_103 () (Array Index Element)) +(declare-fun a_104 () (Array Index Element)) +(declare-fun a_105 () (Array Index Element)) +(declare-fun a_106 () (Array Index Element)) +(declare-fun a_107 () (Array Index Element)) +(declare-fun a_108 () (Array Index Element)) +(declare-fun a_109 () (Array Index Element)) +(declare-fun a_11 () (Array Index Element)) +(declare-fun a_110 () (Array Index Element)) +(declare-fun a_111 () (Array Index Element)) +(declare-fun a_112 () (Array Index Element)) +(declare-fun a_113 () (Array Index Element)) +(declare-fun a_114 () (Array Index Element)) +(declare-fun a_115 () (Array Index Element)) +(declare-fun a_116 () (Array Index Element)) +(declare-fun a_117 () (Array Index Element)) +(declare-fun a_118 () (Array Index Element)) +(declare-fun a_119 () (Array Index Element)) +(declare-fun a_12 () (Array Index Element)) +(declare-fun a_13 () (Array Index Element)) +(declare-fun a_14 () (Array Index Element)) +(declare-fun a_15 () (Array Index Element)) +(declare-fun a_16 () (Array Index Element)) +(declare-fun a_17 () (Array Index Element)) +(declare-fun a_18 () (Array Index Element)) +(declare-fun a_19 () (Array Index Element)) +(declare-fun a_2 () (Array Index Element)) +(declare-fun a_20 () (Array Index Element)) +(declare-fun a_21 () (Array Index Element)) +(declare-fun a_22 () (Array Index Element)) +(declare-fun a_23 () (Array Index Element)) +(declare-fun a_24 () (Array Index Element)) +(declare-fun a_25 () (Array Index Element)) +(declare-fun a_26 () (Array Index Element)) +(declare-fun a_27 () (Array Index Element)) +(declare-fun a_28 () (Array Index Element)) +(declare-fun a_29 () (Array Index Element)) +(declare-fun a_3 () (Array Index Element)) +(declare-fun a_30 () (Array Index Element)) +(declare-fun a_31 () (Array Index Element)) +(declare-fun a_32 () (Array Index Element)) +(declare-fun a_33 () (Array Index Element)) +(declare-fun a_34 () (Array Index Element)) +(declare-fun a_35 () (Array Index Element)) +(declare-fun a_36 () (Array Index Element)) +(declare-fun a_37 () (Array Index Element)) +(declare-fun a_38 () (Array Index Element)) +(declare-fun a_39 () (Array Index Element)) +(declare-fun a_4 () (Array Index Element)) +(declare-fun a_40 () (Array Index Element)) +(declare-fun a_41 () (Array Index Element)) +(declare-fun a_42 () (Array Index Element)) +(declare-fun a_43 () (Array Index Element)) +(declare-fun a_44 () (Array Index Element)) +(declare-fun a_45 () (Array Index Element)) +(declare-fun a_46 () (Array Index Element)) +(declare-fun a_47 () (Array Index Element)) +(declare-fun a_48 () (Array Index Element)) +(declare-fun a_49 () (Array Index Element)) +(declare-fun a_5 () (Array Index Element)) +(declare-fun a_50 () (Array Index Element)) +(declare-fun a_51 () (Array Index Element)) +(declare-fun a_52 () (Array Index Element)) +(declare-fun a_53 () (Array Index Element)) +(declare-fun a_54 () (Array Index Element)) +(declare-fun a_55 () (Array Index Element)) +(declare-fun a_56 () (Array Index Element)) +(declare-fun a_57 () (Array Index Element)) +(declare-fun a_58 () (Array Index Element)) +(declare-fun a_59 () (Array Index Element)) +(declare-fun a_6 () (Array Index Element)) +(declare-fun a_60 () (Array Index Element)) +(declare-fun a_61 () (Array Index Element)) +(declare-fun a_62 () (Array Index Element)) +(declare-fun a_63 () (Array Index Element)) +(declare-fun a_64 () (Array Index Element)) +(declare-fun a_65 () (Array Index Element)) +(declare-fun a_66 () (Array Index Element)) +(declare-fun a_67 () (Array Index Element)) +(declare-fun a_68 () (Array Index Element)) +(declare-fun a_69 () (Array Index Element)) +(declare-fun a_7 () (Array Index Element)) +(declare-fun a_70 () (Array Index Element)) +(declare-fun a_71 () (Array Index Element)) +(declare-fun a_72 () (Array Index Element)) +(declare-fun a_73 () (Array Index Element)) +(declare-fun a_74 () (Array Index Element)) +(declare-fun a_75 () (Array Index Element)) +(declare-fun a_76 () (Array Index Element)) +(declare-fun a_77 () (Array Index Element)) +(declare-fun a_78 () (Array Index Element)) +(declare-fun a_79 () (Array Index Element)) +(declare-fun a_8 () (Array Index Element)) +(declare-fun a_80 () (Array Index Element)) +(declare-fun a_81 () (Array Index Element)) +(declare-fun a_82 () (Array Index Element)) +(declare-fun a_83 () (Array Index Element)) +(declare-fun a_84 () (Array Index Element)) +(declare-fun a_85 () (Array Index Element)) +(declare-fun a_86 () (Array Index Element)) +(declare-fun a_87 () (Array Index Element)) +(declare-fun a_88 () (Array Index Element)) +(declare-fun a_89 () (Array Index Element)) +(declare-fun a_9 () (Array Index Element)) +(declare-fun a_90 () (Array Index Element)) +(declare-fun a_91 () (Array Index Element)) +(declare-fun a_92 () (Array Index Element)) +(declare-fun a_93 () (Array Index Element)) +(declare-fun a_94 () (Array Index Element)) +(declare-fun a_95 () (Array Index Element)) +(declare-fun a_96 () (Array Index Element)) +(declare-fun a_97 () (Array Index Element)) +(declare-fun a_98 () (Array Index Element)) +(declare-fun a_99 () (Array Index Element)) +(declare-fun a1 () (Array Index Element)) +(declare-fun e1 () Element) +(declare-fun e10 () Element) +(declare-fun e11 () Element) +(declare-fun e12 () Element) +(declare-fun e13 () Element) +(declare-fun e14 () Element) +(declare-fun e15 () Element) +(declare-fun e16 () Element) +(declare-fun e17 () Element) +(declare-fun e18 () Element) +(declare-fun e19 () Element) +(declare-fun e2 () Element) +(declare-fun e20 () Element) +(declare-fun e21 () Element) +(declare-fun e22 () Element) +(declare-fun e23 () Element) +(declare-fun e24 () Element) +(declare-fun e25 () Element) +(declare-fun e26 () Element) +(declare-fun e27 () Element) +(declare-fun e28 () Element) +(declare-fun e29 () Element) +(declare-fun e3 () Element) +(declare-fun e30 () Element) +(declare-fun e31 () Element) +(declare-fun e32 () Element) +(declare-fun e33 () Element) +(declare-fun e34 () Element) +(declare-fun e35 () Element) +(declare-fun e36 () Element) +(declare-fun e37 () Element) +(declare-fun e38 () Element) +(declare-fun e39 () Element) +(declare-fun e4 () Element) +(declare-fun e40 () Element) +(declare-fun e41 () Element) +(declare-fun e42 () Element) +(declare-fun e43 () Element) +(declare-fun e44 () Element) +(declare-fun e45 () Element) +(declare-fun e46 () Element) +(declare-fun e47 () Element) +(declare-fun e48 () Element) +(declare-fun e49 () Element) +(declare-fun e5 () Element) +(declare-fun e50 () Element) +(declare-fun e51 () Element) +(declare-fun e52 () Element) +(declare-fun e53 () Element) +(declare-fun e54 () Element) +(declare-fun e55 () Element) +(declare-fun e56 () Element) +(declare-fun e57 () Element) +(declare-fun e58 () Element) +(declare-fun e59 () Element) +(declare-fun e6 () Element) +(declare-fun e60 () Element) +(declare-fun e7 () Element) +(declare-fun e8 () Element) +(declare-fun e9 () Element) +(declare-fun i1 () Index) +(declare-fun i10 () Index) +(declare-fun i11 () Index) +(declare-fun i12 () Index) +(declare-fun i13 () Index) +(declare-fun i14 () Index) +(declare-fun i15 () Index) +(declare-fun i16 () Index) +(declare-fun i17 () Index) +(declare-fun i18 () Index) +(declare-fun i19 () Index) +(declare-fun i2 () Index) +(declare-fun i20 () Index) +(declare-fun i21 () Index) +(declare-fun i22 () Index) +(declare-fun i23 () Index) +(declare-fun i24 () Index) +(declare-fun i25 () Index) +(declare-fun i26 () Index) +(declare-fun i27 () Index) +(declare-fun i28 () Index) +(declare-fun i29 () Index) +(declare-fun i3 () Index) +(declare-fun i30 () Index) +(declare-fun i31 () Index) +(declare-fun i32 () Index) +(declare-fun i33 () Index) +(declare-fun i34 () Index) +(declare-fun i35 () Index) +(declare-fun i36 () Index) +(declare-fun i37 () Index) +(declare-fun i38 () Index) +(declare-fun i39 () Index) +(declare-fun i4 () Index) +(declare-fun i40 () Index) +(declare-fun i41 () Index) +(declare-fun i42 () Index) +(declare-fun i43 () Index) +(declare-fun i44 () Index) +(declare-fun i45 () Index) +(declare-fun i46 () Index) +(declare-fun i47 () Index) +(declare-fun i48 () Index) +(declare-fun i49 () Index) +(declare-fun i5 () Index) +(declare-fun i50 () Index) +(declare-fun i51 () Index) +(declare-fun i52 () Index) +(declare-fun i53 () Index) +(declare-fun i54 () Index) +(declare-fun i55 () Index) +(declare-fun i56 () Index) +(declare-fun i57 () Index) +(declare-fun i58 () Index) +(declare-fun i59 () Index) +(declare-fun i6 () Index) +(declare-fun i60 () Index) +(declare-fun i7 () Index) +(declare-fun i8 () Index) +(declare-fun i9 () Index) +(assert (= a_0 (store a1 i1 e1))) +(assert (= a_1 (store a_0 i2 e2))) +(assert (= a_10 (store a_9 i11 e11))) +(assert (= a_100 (store a_99 i11 e11))) +(assert (= a_101 (store a_100 i1 e1))) +(assert (= a_102 (store a_101 i36 e36))) +(assert (= a_103 (store a_102 i54 e54))) +(assert (= a_104 (store a_103 i31 e31))) +(assert (= a_105 (store a_104 i47 e47))) +(assert (= a_106 (store a_105 i45 e45))) +(assert (= a_107 (store a_106 i5 e5))) +(assert (= a_108 (store a_107 i13 e13))) +(assert (= a_109 (store a_108 i24 e24))) +(assert (= a_11 (store a_10 i12 e12))) +(assert (= a_110 (store a_109 i28 e28))) +(assert (= a_111 (store a_110 i20 e20))) +(assert (= a_112 (store a_111 i29 e29))) +(assert (= a_113 (store a_112 i15 e15))) +(assert (= a_114 (store a_113 i12 e12))) +(assert (= a_115 (store a_114 i60 e60))) +(assert (= a_116 (store a_115 i41 e41))) +(assert (= a_117 (store a_116 i39 e39))) +(assert (= a_118 (store a_117 i46 e46))) +(assert (= a_119 (store a_118 i2 e2))) +(assert (= a_12 (store a_11 i13 e13))) +(assert (= a_13 (store a_12 i14 e14))) +(assert (= a_14 (store a_13 i15 e15))) +(assert (= a_15 (store a_14 i16 e16))) +(assert (= a_16 (store a_15 i17 e17))) +(assert (= a_17 (store a_16 i18 e18))) +(assert (= a_18 (store a_17 i19 e19))) +(assert (= a_19 (store a_18 i20 e20))) +(assert (= a_2 (store a_1 i3 e3))) +(assert (= a_20 (store a_19 i21 e21))) +(assert (= a_21 (store a_20 i22 e22))) +(assert (= a_22 (store a_21 i23 e23))) +(assert (= a_23 (store a_22 i24 e24))) +(assert (= a_24 (store a_23 i25 e25))) +(assert (= a_25 (store a_24 i26 e26))) +(assert (= a_26 (store a_25 i27 e27))) +(assert (= a_27 (store a_26 i28 e28))) +(assert (= a_28 (store a_27 i29 e29))) +(assert (= a_29 (store a_28 i30 e30))) +(assert (= a_3 (store a_2 i4 e4))) +(assert (= a_30 (store a_29 i31 e31))) +(assert (= a_31 (store a_30 i32 e32))) +(assert (= a_32 (store a_31 i33 e33))) +(assert (= a_33 (store a_32 i34 e34))) +(assert (= a_34 (store a_33 i35 e35))) +(assert (= a_35 (store a_34 i36 e36))) +(assert (= a_36 (store a_35 i37 e37))) +(assert (= a_37 (store a_36 i38 e38))) +(assert (= a_38 (store a_37 i39 e39))) +(assert (= a_39 (store a_38 i40 e40))) +(assert (= a_4 (store a_3 i5 e5))) +(assert (= a_40 (store a_39 i41 e41))) +(assert (= a_41 (store a_40 i42 e42))) +(assert (= a_42 (store a_41 i43 e43))) +(assert (= a_43 (store a_42 i44 e44))) +(assert (= a_44 (store a_43 i45 e45))) +(assert (= a_45 (store a_44 i46 e46))) +(assert (= a_46 (store a_45 i47 e47))) +(assert (= a_47 (store a_46 i48 e48))) +(assert (= a_48 (store a_47 i49 e49))) +(assert (= a_49 (store a_48 i50 e50))) +(assert (= a_5 (store a_4 i6 e6))) +(assert (= a_50 (store a_49 i51 e51))) +(assert (= a_51 (store a_50 i52 e52))) +(assert (= a_52 (store a_51 i53 e53))) +(assert (= a_53 (store a_52 i54 e54))) +(assert (= a_54 (store a_53 i55 e55))) +(assert (= a_55 (store a_54 i56 e56))) +(assert (= a_56 (store a_55 i57 e57))) +(assert (= a_57 (store a_56 i58 e58))) +(assert (= a_58 (store a_57 i59 e59))) +(assert (= a_59 (store a_58 i60 e60))) +(assert (= a_6 (store a_5 i7 e7))) +(assert (= a_60 (store a1 i9 e9))) +(assert (= a_61 (store a_60 i19 e19))) +(assert (= a_62 (store a_61 i14 e14))) +(assert (= a_63 (store a_62 i8 e8))) +(assert (= a_64 (store a_63 i25 e25))) +(assert (= a_65 (store a_64 i34 e34))) +(assert (= a_66 (store a_65 i37 e37))) +(assert (= a_67 (store a_66 i10 e10))) +(assert (= a_68 (store a_67 i7 e7))) +(assert (= a_69 (store a_68 i40 e40))) +(assert (= a_7 (store a_6 i8 e8))) +(assert (= a_70 (store a_69 i49 e49))) +(assert (= a_71 (store a_70 i44 e44))) +(assert (= a_72 (store a_71 i35 e35))) +(assert (= a_73 (store a_72 i38 e38))) +(assert (= a_74 (store a_73 i53 e53))) +(assert (= a_75 (store a_74 i3 e3))) +(assert (= a_76 (store a_75 i51 e51))) +(assert (= a_77 (store a_76 i59 e59))) +(assert (= a_78 (store a_77 i42 e42))) +(assert (= a_79 (store a_78 i18 e18))) +(assert (= a_8 (store a_7 i9 e9))) +(assert (= a_80 (store a_79 i6 e6))) +(assert (= a_81 (store a_80 i50 e50))) +(assert (= a_82 (store a_81 i21 e21))) +(assert (= a_83 (store a_82 i4 e4))) +(assert (= a_84 (store a_83 i52 e52))) +(assert (= a_85 (store a_84 i16 e16))) +(assert (= a_86 (store a_85 i32 e32))) +(assert (= a_87 (store a_86 i23 e23))) +(assert (= a_88 (store a_87 i33 e33))) +(assert (= a_89 (store a_88 i55 e55))) +(assert (= a_9 (store a_8 i10 e10))) +(assert (= a_90 (store a_89 i56 e56))) +(assert (= a_91 (store a_90 i58 e58))) +(assert (= a_92 (store a_91 i43 e43))) +(assert (= a_93 (store a_92 i22 e22))) +(assert (= a_94 (store a_93 i17 e17))) +(assert (= a_95 (store a_94 i27 e27))) +(assert (= a_96 (store a_95 i26 e26))) +(assert (= a_97 (store a_96 i30 e30))) +(assert (= a_98 (store a_97 i57 e57))) +(assert (= a_99 (store a_98 i48 e48))) +(assert (not (= i59 i60))) +(assert (not (= i58 i60))) +(assert (not (= i58 i59))) +(assert (not (= i57 i60))) +(assert (not (= i57 i59))) +(assert (not (= i57 i58))) +(assert (not (= i56 i60))) +(assert (not (= i56 i59))) +(assert (not (= i56 i58))) +(assert (not (= i56 i57))) +(assert (not (= i55 i60))) +(assert (not (= i55 i59))) +(assert (not (= i55 i58))) +(assert (not (= i55 i57))) +(assert (not (= i55 i56))) +(assert (not (= i54 i60))) +(assert (not (= i54 i59))) +(assert (not (= i54 i58))) +(assert (not (= i54 i57))) +(assert (not (= i54 i56))) +(assert (not (= i54 i55))) +(assert (not (= i53 i60))) +(assert (not (= i53 i59))) +(assert (not (= i53 i58))) +(assert (not (= i53 i57))) +(assert (not (= i53 i56))) +(assert (not (= i53 i55))) +(assert (not (= i53 i54))) +(assert (not (= i52 i60))) +(assert (not (= i52 i59))) +(assert (not (= i52 i58))) +(assert (not (= i52 i57))) +(assert (not (= i52 i56))) +(assert (not (= i52 i55))) +(assert (not (= i52 i54))) +(assert (not (= i52 i53))) +(assert (not (= i51 i60))) +(assert (not (= i51 i59))) +(assert (not (= i51 i58))) +(assert (not (= i51 i57))) +(assert (not (= i51 i56))) +(assert (not (= i51 i55))) +(assert (not (= i51 i54))) +(assert (not (= i51 i53))) +(assert (not (= i51 i52))) +(assert (not (= i50 i60))) +(assert (not (= i50 i59))) +(assert (not (= i50 i58))) +(assert (not (= i50 i57))) +(assert (not (= i50 i56))) +(assert (not (= i50 i55))) +(assert (not (= i50 i54))) +(assert (not (= i50 i53))) +(assert (not (= i50 i52))) +(assert (not (= i50 i51))) +(assert (not (= i49 i60))) +(assert (not (= i49 i59))) +(assert (not (= i49 i58))) +(assert (not (= i49 i57))) +(assert (not (= i49 i56))) +(assert (not (= i49 i55))) +(assert (not (= i49 i54))) +(assert (not (= i49 i53))) +(assert (not (= i49 i52))) +(assert (not (= i49 i51))) +(assert (not (= i49 i50))) +(assert (not (= i48 i60))) +(assert (not (= i48 i59))) +(assert (not (= i48 i58))) +(assert (not (= i48 i57))) +(assert (not (= i48 i56))) +(assert (not (= i48 i55))) +(assert (not (= i48 i54))) +(assert (not (= i48 i53))) +(assert (not (= i48 i52))) +(assert (not (= i48 i51))) +(assert (not (= i48 i50))) +(assert (not (= i48 i49))) +(assert (not (= i47 i60))) +(assert (not (= i47 i59))) +(assert (not (= i47 i58))) +(assert (not (= i47 i57))) +(assert (not (= i47 i56))) +(assert (not (= i47 i55))) +(assert (not (= i47 i54))) +(assert (not (= i47 i53))) +(assert (not (= i47 i52))) +(assert (not (= i47 i51))) +(assert (not (= i47 i50))) +(assert (not (= i47 i49))) +(assert (not (= i47 i48))) +(assert (not (= i46 i60))) +(assert (not (= i46 i59))) +(assert (not (= i46 i58))) +(assert (not (= i46 i57))) +(assert (not (= i46 i56))) +(assert (not (= i46 i55))) +(assert (not (= i46 i54))) +(assert (not (= i46 i53))) +(assert (not (= i46 i52))) +(assert (not (= i46 i51))) +(assert (not (= i46 i50))) +(assert (not (= i46 i49))) +(assert (not (= i46 i48))) +(assert (not (= i46 i47))) +(assert (not (= i45 i60))) +(assert (not (= i45 i59))) +(assert (not (= i45 i58))) +(assert (not (= i45 i57))) +(assert (not (= i45 i56))) +(assert (not (= i45 i55))) +(assert (not (= i45 i54))) +(assert (not (= i45 i53))) +(assert (not (= i45 i52))) +(assert (not (= i45 i51))) +(assert (not (= i45 i50))) +(assert (not (= i45 i49))) +(assert (not (= i45 i48))) +(assert (not (= i45 i47))) +(assert (not (= i45 i46))) +(assert (not (= i44 i60))) +(assert (not (= i44 i59))) +(assert (not (= i44 i58))) +(assert (not (= i44 i57))) +(assert (not (= i44 i56))) +(assert (not (= i44 i55))) +(assert (not (= i44 i54))) +(assert (not (= i44 i53))) +(assert (not (= i44 i52))) +(assert (not (= i44 i51))) +(assert (not (= i44 i50))) +(assert (not (= i44 i49))) +(assert (not (= i44 i48))) +(assert (not (= i44 i47))) +(assert (not (= i44 i46))) +(assert (not (= i44 i45))) +(assert (not (= i43 i60))) +(assert (not (= i43 i59))) +(assert (not (= i43 i58))) +(assert (not (= i43 i57))) +(assert (not (= i43 i56))) +(assert (not (= i43 i55))) +(assert (not (= i43 i54))) +(assert (not (= i43 i53))) +(assert (not (= i43 i52))) +(assert (not (= i43 i51))) +(assert (not (= i43 i50))) +(assert (not (= i43 i49))) +(assert (not (= i43 i48))) +(assert (not (= i43 i47))) +(assert (not (= i43 i46))) +(assert (not (= i43 i45))) +(assert (not (= i43 i44))) +(assert (not (= i42 i60))) +(assert (not (= i42 i59))) +(assert (not (= i42 i58))) +(assert (not (= i42 i57))) +(assert (not (= i42 i56))) +(assert (not (= i42 i55))) +(assert (not (= i42 i54))) +(assert (not (= i42 i53))) +(assert (not (= i42 i52))) +(assert (not (= i42 i51))) +(assert (not (= i42 i50))) +(assert (not (= i42 i49))) +(assert (not (= i42 i48))) +(assert (not (= i42 i47))) +(assert (not (= i42 i46))) +(assert (not (= i42 i45))) +(assert (not (= i42 i44))) +(assert (not (= i42 i43))) +(assert (not (= i41 i60))) +(assert (not (= i41 i59))) +(assert (not (= i41 i58))) +(assert (not (= i41 i57))) +(assert (not (= i41 i56))) +(assert (not (= i41 i55))) +(assert (not (= i41 i54))) +(assert (not (= i41 i53))) +(assert (not (= i41 i52))) +(assert (not (= i41 i51))) +(assert (not (= i41 i50))) +(assert (not (= i41 i49))) +(assert (not (= i41 i48))) +(assert (not (= i41 i47))) +(assert (not (= i41 i46))) +(assert (not (= i41 i45))) +(assert (not (= i41 i44))) +(assert (not (= i41 i43))) +(assert (not (= i41 i42))) +(assert (not (= i40 i60))) +(assert (not (= i40 i59))) +(assert (not (= i40 i58))) +(assert (not (= i40 i57))) +(assert (not (= i40 i56))) +(assert (not (= i40 i55))) +(assert (not (= i40 i54))) +(assert (not (= i40 i53))) +(assert (not (= i40 i52))) +(assert (not (= i40 i51))) +(assert (not (= i40 i50))) +(assert (not (= i40 i49))) +(assert (not (= i40 i48))) +(assert (not (= i40 i47))) +(assert (not (= i40 i46))) +(assert (not (= i40 i45))) +(assert (not (= i40 i44))) +(assert (not (= i40 i43))) +(assert (not (= i40 i42))) +(assert (not (= i40 i41))) +(assert (not (= i39 i60))) +(assert (not (= i39 i59))) +(assert (not (= i39 i58))) +(assert (not (= i39 i57))) +(assert (not (= i39 i56))) +(assert (not (= i39 i55))) +(assert (not (= i39 i54))) +(assert (not (= i39 i53))) +(assert (not (= i39 i52))) +(assert (not (= i39 i51))) +(assert (not (= i39 i50))) +(assert (not (= i39 i49))) +(assert (not (= i39 i48))) +(assert (not (= i39 i47))) +(assert (not (= i39 i46))) +(assert (not (= i39 i45))) +(assert (not (= i39 i44))) +(assert (not (= i39 i43))) +(assert (not (= i39 i42))) +(assert (not (= i39 i41))) +(assert (not (= i39 i40))) +(assert (not (= i38 i60))) +(assert (not (= i38 i59))) +(assert (not (= i38 i58))) +(assert (not (= i38 i57))) +(assert (not (= i38 i56))) +(assert (not (= i38 i55))) +(assert (not (= i38 i54))) +(assert (not (= i38 i53))) +(assert (not (= i38 i52))) +(assert (not (= i38 i51))) +(assert (not (= i38 i50))) +(assert (not (= i38 i49))) +(assert (not (= i38 i48))) +(assert (not (= i38 i47))) +(assert (not (= i38 i46))) +(assert (not (= i38 i45))) +(assert (not (= i38 i44))) +(assert (not (= i38 i43))) +(assert (not (= i38 i42))) +(assert (not (= i38 i41))) +(assert (not (= i38 i40))) +(assert (not (= i38 i39))) +(assert (not (= i37 i60))) +(assert (not (= i37 i59))) +(assert (not (= i37 i58))) +(assert (not (= i37 i57))) +(assert (not (= i37 i56))) +(assert (not (= i37 i55))) +(assert (not (= i37 i54))) +(assert (not (= i37 i53))) +(assert (not (= i37 i52))) +(assert (not (= i37 i51))) +(assert (not (= i37 i50))) +(assert (not (= i37 i49))) +(assert (not (= i37 i48))) +(assert (not (= i37 i47))) +(assert (not (= i37 i46))) +(assert (not (= i37 i45))) +(assert (not (= i37 i44))) +(assert (not (= i37 i43))) +(assert (not (= i37 i42))) +(assert (not (= i37 i41))) +(assert (not (= i37 i40))) +(assert (not (= i37 i39))) +(assert (not (= i37 i38))) +(assert (not (= i36 i60))) +(assert (not (= i36 i59))) +(assert (not (= i36 i58))) +(assert (not (= i36 i57))) +(assert (not (= i36 i56))) +(assert (not (= i36 i55))) +(assert (not (= i36 i54))) +(assert (not (= i36 i53))) +(assert (not (= i36 i52))) +(assert (not (= i36 i51))) +(assert (not (= i36 i50))) +(assert (not (= i36 i49))) +(assert (not (= i36 i48))) +(assert (not (= i36 i47))) +(assert (not (= i36 i46))) +(assert (not (= i36 i45))) +(assert (not (= i36 i44))) +(assert (not (= i36 i43))) +(assert (not (= i36 i42))) +(assert (not (= i36 i41))) +(assert (not (= i36 i40))) +(assert (not (= i36 i39))) +(assert (not (= i36 i38))) +(assert (not (= i36 i37))) +(assert (not (= i35 i60))) +(assert (not (= i35 i59))) +(assert (not (= i35 i58))) +(assert (not (= i35 i57))) +(assert (not (= i35 i56))) +(assert (not (= i35 i55))) +(assert (not (= i35 i54))) +(assert (not (= i35 i53))) +(assert (not (= i35 i52))) +(assert (not (= i35 i51))) +(assert (not (= i35 i50))) +(assert (not (= i35 i49))) +(assert (not (= i35 i48))) +(assert (not (= i35 i47))) +(assert (not (= i35 i46))) +(assert (not (= i35 i45))) +(assert (not (= i35 i44))) +(assert (not (= i35 i43))) +(assert (not (= i35 i42))) +(assert (not (= i35 i41))) +(assert (not (= i35 i40))) +(assert (not (= i35 i39))) +(assert (not (= i35 i38))) +(assert (not (= i35 i37))) +(assert (not (= i35 i36))) +(assert (not (= i34 i60))) +(assert (not (= i34 i59))) +(assert (not (= i34 i58))) +(assert (not (= i34 i57))) +(assert (not (= i34 i56))) +(assert (not (= i34 i55))) +(assert (not (= i34 i54))) +(assert (not (= i34 i53))) +(assert (not (= i34 i52))) +(assert (not (= i34 i51))) +(assert (not (= i34 i50))) +(assert (not (= i34 i49))) +(assert (not (= i34 i48))) +(assert (not (= i34 i47))) +(assert (not (= i34 i46))) +(assert (not (= i34 i45))) +(assert (not (= i34 i44))) +(assert (not (= i34 i43))) +(assert (not (= i34 i42))) +(assert (not (= i34 i41))) +(assert (not (= i34 i40))) +(assert (not (= i34 i39))) +(assert (not (= i34 i38))) +(assert (not (= i34 i37))) +(assert (not (= i34 i36))) +(assert (not (= i34 i35))) +(assert (not (= i33 i60))) +(assert (not (= i33 i59))) +(assert (not (= i33 i58))) +(assert (not (= i33 i57))) +(assert (not (= i33 i56))) +(assert (not (= i33 i55))) +(assert (not (= i33 i54))) +(assert (not (= i33 i53))) +(assert (not (= i33 i52))) +(assert (not (= i33 i51))) +(assert (not (= i33 i50))) +(assert (not (= i33 i49))) +(assert (not (= i33 i48))) +(assert (not (= i33 i47))) +(assert (not (= i33 i46))) +(assert (not (= i33 i45))) +(assert (not (= i33 i44))) +(assert (not (= i33 i43))) +(assert (not (= i33 i42))) +(assert (not (= i33 i41))) +(assert (not (= i33 i40))) +(assert (not (= i33 i39))) +(assert (not (= i33 i38))) +(assert (not (= i33 i37))) +(assert (not (= i33 i36))) +(assert (not (= i33 i35))) +(assert (not (= i33 i34))) +(assert (not (= i32 i60))) +(assert (not (= i32 i59))) +(assert (not (= i32 i58))) +(assert (not (= i32 i57))) +(assert (not (= i32 i56))) +(assert (not (= i32 i55))) +(assert (not (= i32 i54))) +(assert (not (= i32 i53))) +(assert (not (= i32 i52))) +(assert (not (= i32 i51))) +(assert (not (= i32 i50))) +(assert (not (= i32 i49))) +(assert (not (= i32 i48))) +(assert (not (= i32 i47))) +(assert (not (= i32 i46))) +(assert (not (= i32 i45))) +(assert (not (= i32 i44))) +(assert (not (= i32 i43))) +(assert (not (= i32 i42))) +(assert (not (= i32 i41))) +(assert (not (= i32 i40))) +(assert (not (= i32 i39))) +(assert (not (= i32 i38))) +(assert (not (= i32 i37))) +(assert (not (= i32 i36))) +(assert (not (= i32 i35))) +(assert (not (= i32 i34))) +(assert (not (= i32 i33))) +(assert (not (= i31 i60))) +(assert (not (= i31 i59))) +(assert (not (= i31 i58))) +(assert (not (= i31 i57))) +(assert (not (= i31 i56))) +(assert (not (= i31 i55))) +(assert (not (= i31 i54))) +(assert (not (= i31 i53))) +(assert (not (= i31 i52))) +(assert (not (= i31 i51))) +(assert (not (= i31 i50))) +(assert (not (= i31 i49))) +(assert (not (= i31 i48))) +(assert (not (= i31 i47))) +(assert (not (= i31 i46))) +(assert (not (= i31 i45))) +(assert (not (= i31 i44))) +(assert (not (= i31 i43))) +(assert (not (= i31 i42))) +(assert (not (= i31 i41))) +(assert (not (= i31 i40))) +(assert (not (= i31 i39))) +(assert (not (= i31 i38))) +(assert (not (= i31 i37))) +(assert (not (= i31 i36))) +(assert (not (= i31 i35))) +(assert (not (= i31 i34))) +(assert (not (= i31 i33))) +(assert (not (= i31 i32))) +(assert (not (= i30 i60))) +(assert (not (= i30 i59))) +(assert (not (= i30 i58))) +(assert (not (= i30 i57))) +(assert (not (= i30 i56))) +(assert (not (= i30 i55))) +(assert (not (= i30 i54))) +(assert (not (= i30 i53))) +(assert (not (= i30 i52))) +(assert (not (= i30 i51))) +(assert (not (= i30 i50))) +(assert (not (= i30 i49))) +(assert (not (= i30 i48))) +(assert (not (= i30 i47))) +(assert (not (= i30 i46))) +(assert (not (= i30 i45))) +(assert (not (= i30 i44))) +(assert (not (= i30 i43))) +(assert (not (= i30 i42))) +(assert (not (= i30 i41))) +(assert (not (= i30 i40))) +(assert (not (= i30 i39))) +(assert (not (= i30 i38))) +(assert (not (= i30 i37))) +(assert (not (= i30 i36))) +(assert (not (= i30 i35))) +(assert (not (= i30 i34))) +(assert (not (= i30 i33))) +(assert (not (= i30 i32))) +(assert (not (= i30 i31))) +(assert (not (= i29 i60))) +(assert (not (= i29 i59))) +(assert (not (= i29 i58))) +(assert (not (= i29 i57))) +(assert (not (= i29 i56))) +(assert (not (= i29 i55))) +(assert (not (= i29 i54))) +(assert (not (= i29 i53))) +(assert (not (= i29 i52))) +(assert (not (= i29 i51))) +(assert (not (= i29 i50))) +(assert (not (= i29 i49))) +(assert (not (= i29 i48))) +(assert (not (= i29 i47))) +(assert (not (= i29 i46))) +(assert (not (= i29 i45))) +(assert (not (= i29 i44))) +(assert (not (= i29 i43))) +(assert (not (= i29 i42))) +(assert (not (= i29 i41))) +(assert (not (= i29 i40))) +(assert (not (= i29 i39))) +(assert (not (= i29 i38))) +(assert (not (= i29 i37))) +(assert (not (= i29 i36))) +(assert (not (= i29 i35))) +(assert (not (= i29 i34))) +(assert (not (= i29 i33))) +(assert (not (= i29 i32))) +(assert (not (= i29 i31))) +(assert (not (= i29 i30))) +(assert (not (= i28 i60))) +(assert (not (= i28 i59))) +(assert (not (= i28 i58))) +(assert (not (= i28 i57))) +(assert (not (= i28 i56))) +(assert (not (= i28 i55))) +(assert (not (= i28 i54))) +(assert (not (= i28 i53))) +(assert (not (= i28 i52))) +(assert (not (= i28 i51))) +(assert (not (= i28 i50))) +(assert (not (= i28 i49))) +(assert (not (= i28 i48))) +(assert (not (= i28 i47))) +(assert (not (= i28 i46))) +(assert (not (= i28 i45))) +(assert (not (= i28 i44))) +(assert (not (= i28 i43))) +(assert (not (= i28 i42))) +(assert (not (= i28 i41))) +(assert (not (= i28 i40))) +(assert (not (= i28 i39))) +(assert (not (= i28 i38))) +(assert (not (= i28 i37))) +(assert (not (= i28 i36))) +(assert (not (= i28 i35))) +(assert (not (= i28 i34))) +(assert (not (= i28 i33))) +(assert (not (= i28 i32))) +(assert (not (= i28 i31))) +(assert (not (= i28 i30))) +(assert (not (= i28 i29))) +(assert (not (= i27 i60))) +(assert (not (= i27 i59))) +(assert (not (= i27 i58))) +(assert (not (= i27 i57))) +(assert (not (= i27 i56))) +(assert (not (= i27 i55))) +(assert (not (= i27 i54))) +(assert (not (= i27 i53))) +(assert (not (= i27 i52))) +(assert (not (= i27 i51))) +(assert (not (= i27 i50))) +(assert (not (= i27 i49))) +(assert (not (= i27 i48))) +(assert (not (= i27 i47))) +(assert (not (= i27 i46))) +(assert (not (= i27 i45))) +(assert (not (= i27 i44))) +(assert (not (= i27 i43))) +(assert (not (= i27 i42))) +(assert (not (= i27 i41))) +(assert (not (= i27 i40))) +(assert (not (= i27 i39))) +(assert (not (= i27 i38))) +(assert (not (= i27 i37))) +(assert (not (= i27 i36))) +(assert (not (= i27 i35))) +(assert (not (= i27 i34))) +(assert (not (= i27 i33))) +(assert (not (= i27 i32))) +(assert (not (= i27 i31))) +(assert (not (= i27 i30))) +(assert (not (= i27 i29))) +(assert (not (= i27 i28))) +(assert (not (= i26 i60))) +(assert (not (= i26 i59))) +(assert (not (= i26 i58))) +(assert (not (= i26 i57))) +(assert (not (= i26 i56))) +(assert (not (= i26 i55))) +(assert (not (= i26 i54))) +(assert (not (= i26 i53))) +(assert (not (= i26 i52))) +(assert (not (= i26 i51))) +(assert (not (= i26 i50))) +(assert (not (= i26 i49))) +(assert (not (= i26 i48))) +(assert (not (= i26 i47))) +(assert (not (= i26 i46))) +(assert (not (= i26 i45))) +(assert (not (= i26 i44))) +(assert (not (= i26 i43))) +(assert (not (= i26 i42))) +(assert (not (= i26 i41))) +(assert (not (= i26 i40))) +(assert (not (= i26 i39))) +(assert (not (= i26 i38))) +(assert (not (= i26 i37))) +(assert (not (= i26 i36))) +(assert (not (= i26 i35))) +(assert (not (= i26 i34))) +(assert (not (= i26 i33))) +(assert (not (= i26 i32))) +(assert (not (= i26 i31))) +(assert (not (= i26 i30))) +(assert (not (= i26 i29))) +(assert (not (= i26 i28))) +(assert (not (= i26 i27))) +(assert (not (= i25 i60))) +(assert (not (= i25 i59))) +(assert (not (= i25 i58))) +(assert (not (= i25 i57))) +(assert (not (= i25 i56))) +(assert (not (= i25 i55))) +(assert (not (= i25 i54))) +(assert (not (= i25 i53))) +(assert (not (= i25 i52))) +(assert (not (= i25 i51))) +(assert (not (= i25 i50))) +(assert (not (= i25 i49))) +(assert (not (= i25 i48))) +(assert (not (= i25 i47))) +(assert (not (= i25 i46))) +(assert (not (= i25 i45))) +(assert (not (= i25 i44))) +(assert (not (= i25 i43))) +(assert (not (= i25 i42))) +(assert (not (= i25 i41))) +(assert (not (= i25 i40))) +(assert (not (= i25 i39))) +(assert (not (= i25 i38))) +(assert (not (= i25 i37))) +(assert (not (= i25 i36))) +(assert (not (= i25 i35))) +(assert (not (= i25 i34))) +(assert (not (= i25 i33))) +(assert (not (= i25 i32))) +(assert (not (= i25 i31))) +(assert (not (= i25 i30))) +(assert (not (= i25 i29))) +(assert (not (= i25 i28))) +(assert (not (= i25 i27))) +(assert (not (= i25 i26))) +(assert (not (= i24 i60))) +(assert (not (= i24 i59))) +(assert (not (= i24 i58))) +(assert (not (= i24 i57))) +(assert (not (= i24 i56))) +(assert (not (= i24 i55))) +(assert (not (= i24 i54))) +(assert (not (= i24 i53))) +(assert (not (= i24 i52))) +(assert (not (= i24 i51))) +(assert (not (= i24 i50))) +(assert (not (= i24 i49))) +(assert (not (= i24 i48))) +(assert (not (= i24 i47))) +(assert (not (= i24 i46))) +(assert (not (= i24 i45))) +(assert (not (= i24 i44))) +(assert (not (= i24 i43))) +(assert (not (= i24 i42))) +(assert (not (= i24 i41))) +(assert (not (= i24 i40))) +(assert (not (= i24 i39))) +(assert (not (= i24 i38))) +(assert (not (= i24 i37))) +(assert (not (= i24 i36))) +(assert (not (= i24 i35))) +(assert (not (= i24 i34))) +(assert (not (= i24 i33))) +(assert (not (= i24 i32))) +(assert (not (= i24 i31))) +(assert (not (= i24 i30))) +(assert (not (= i24 i29))) +(assert (not (= i24 i28))) +(assert (not (= i24 i27))) +(assert (not (= i24 i26))) +(assert (not (= i24 i25))) +(assert (not (= i23 i60))) +(assert (not (= i23 i59))) +(assert (not (= i23 i58))) +(assert (not (= i23 i57))) +(assert (not (= i23 i56))) +(assert (not (= i23 i55))) +(assert (not (= i23 i54))) +(assert (not (= i23 i53))) +(assert (not (= i23 i52))) +(assert (not (= i23 i51))) +(assert (not (= i23 i50))) +(assert (not (= i23 i49))) +(assert (not (= i23 i48))) +(assert (not (= i23 i47))) +(assert (not (= i23 i46))) +(assert (not (= i23 i45))) +(assert (not (= i23 i44))) +(assert (not (= i23 i43))) +(assert (not (= i23 i42))) +(assert (not (= i23 i41))) +(assert (not (= i23 i40))) +(assert (not (= i23 i39))) +(assert (not (= i23 i38))) +(assert (not (= i23 i37))) +(assert (not (= i23 i36))) +(assert (not (= i23 i35))) +(assert (not (= i23 i34))) +(assert (not (= i23 i33))) +(assert (not (= i23 i32))) +(assert (not (= i23 i31))) +(assert (not (= i23 i30))) +(assert (not (= i23 i29))) +(assert (not (= i23 i28))) +(assert (not (= i23 i27))) +(assert (not (= i23 i26))) +(assert (not (= i23 i25))) +(assert (not (= i23 i24))) +(assert (not (= i22 i60))) +(assert (not (= i22 i59))) +(assert (not (= i22 i58))) +(assert (not (= i22 i57))) +(assert (not (= i22 i56))) +(assert (not (= i22 i55))) +(assert (not (= i22 i54))) +(assert (not (= i22 i53))) +(assert (not (= i22 i52))) +(assert (not (= i22 i51))) +(assert (not (= i22 i50))) +(assert (not (= i22 i49))) +(assert (not (= i22 i48))) +(assert (not (= i22 i47))) +(assert (not (= i22 i46))) +(assert (not (= i22 i45))) +(assert (not (= i22 i44))) +(assert (not (= i22 i43))) +(assert (not (= i22 i42))) +(assert (not (= i22 i41))) +(assert (not (= i22 i40))) +(assert (not (= i22 i39))) +(assert (not (= i22 i38))) +(assert (not (= i22 i37))) +(assert (not (= i22 i36))) +(assert (not (= i22 i35))) +(assert (not (= i22 i34))) +(assert (not (= i22 i33))) +(assert (not (= i22 i32))) +(assert (not (= i22 i31))) +(assert (not (= i22 i30))) +(assert (not (= i22 i29))) +(assert (not (= i22 i28))) +(assert (not (= i22 i27))) +(assert (not (= i22 i26))) +(assert (not (= i22 i25))) +(assert (not (= i22 i24))) +(assert (not (= i22 i23))) +(assert (not (= i21 i60))) +(assert (not (= i21 i59))) +(assert (not (= i21 i58))) +(assert (not (= i21 i57))) +(assert (not (= i21 i56))) +(assert (not (= i21 i55))) +(assert (not (= i21 i54))) +(assert (not (= i21 i53))) +(assert (not (= i21 i52))) +(assert (not (= i21 i51))) +(assert (not (= i21 i50))) +(assert (not (= i21 i49))) +(assert (not (= i21 i48))) +(assert (not (= i21 i47))) +(assert (not (= i21 i46))) +(assert (not (= i21 i45))) +(assert (not (= i21 i44))) +(assert (not (= i21 i43))) +(assert (not (= i21 i42))) +(assert (not (= i21 i41))) +(assert (not (= i21 i40))) +(assert (not (= i21 i39))) +(assert (not (= i21 i38))) +(assert (not (= i21 i37))) +(assert (not (= i21 i36))) +(assert (not (= i21 i35))) +(assert (not (= i21 i34))) +(assert (not (= i21 i33))) +(assert (not (= i21 i32))) +(assert (not (= i21 i31))) +(assert (not (= i21 i30))) +(assert (not (= i21 i29))) +(assert (not (= i21 i28))) +(assert (not (= i21 i27))) +(assert (not (= i21 i26))) +(assert (not (= i21 i25))) +(assert (not (= i21 i24))) +(assert (not (= i21 i23))) +(assert (not (= i21 i22))) +(assert (not (= i20 i60))) +(assert (not (= i20 i59))) +(assert (not (= i20 i58))) +(assert (not (= i20 i57))) +(assert (not (= i20 i56))) +(assert (not (= i20 i55))) +(assert (not (= i20 i54))) +(assert (not (= i20 i53))) +(assert (not (= i20 i52))) +(assert (not (= i20 i51))) +(assert (not (= i20 i50))) +(assert (not (= i20 i49))) +(assert (not (= i20 i48))) +(assert (not (= i20 i47))) +(assert (not (= i20 i46))) +(assert (not (= i20 i45))) +(assert (not (= i20 i44))) +(assert (not (= i20 i43))) +(assert (not (= i20 i42))) +(assert (not (= i20 i41))) +(assert (not (= i20 i40))) +(assert (not (= i20 i39))) +(assert (not (= i20 i38))) +(assert (not (= i20 i37))) +(assert (not (= i20 i36))) +(assert (not (= i20 i35))) +(assert (not (= i20 i34))) +(assert (not (= i20 i33))) +(assert (not (= i20 i32))) +(assert (not (= i20 i31))) +(assert (not (= i20 i30))) +(assert (not (= i20 i29))) +(assert (not (= i20 i28))) +(assert (not (= i20 i27))) +(assert (not (= i20 i26))) +(assert (not (= i20 i25))) +(assert (not (= i20 i24))) +(assert (not (= i20 i23))) +(assert (not (= i20 i22))) +(assert (not (= i20 i21))) +(assert (not (= i19 i60))) +(assert (not (= i19 i59))) +(assert (not (= i19 i58))) +(assert (not (= i19 i57))) +(assert (not (= i19 i56))) +(assert (not (= i19 i55))) +(assert (not (= i19 i54))) +(assert (not (= i19 i53))) +(assert (not (= i19 i52))) +(assert (not (= i19 i51))) +(assert (not (= i19 i50))) +(assert (not (= i19 i49))) +(assert (not (= i19 i48))) +(assert (not (= i19 i47))) +(assert (not (= i19 i46))) +(assert (not (= i19 i45))) +(assert (not (= i19 i44))) +(assert (not (= i19 i43))) +(assert (not (= i19 i42))) +(assert (not (= i19 i41))) +(assert (not (= i19 i40))) +(assert (not (= i19 i39))) +(assert (not (= i19 i38))) +(assert (not (= i19 i37))) +(assert (not (= i19 i36))) +(assert (not (= i19 i35))) +(assert (not (= i19 i34))) +(assert (not (= i19 i33))) +(assert (not (= i19 i32))) +(assert (not (= i19 i31))) +(assert (not (= i19 i30))) +(assert (not (= i19 i29))) +(assert (not (= i19 i28))) +(assert (not (= i19 i27))) +(assert (not (= i19 i26))) +(assert (not (= i19 i25))) +(assert (not (= i19 i24))) +(assert (not (= i19 i23))) +(assert (not (= i19 i22))) +(assert (not (= i19 i21))) +(assert (not (= i19 i20))) +(assert (not (= i18 i60))) +(assert (not (= i18 i59))) +(assert (not (= i18 i58))) +(assert (not (= i18 i57))) +(assert (not (= i18 i56))) +(assert (not (= i18 i55))) +(assert (not (= i18 i54))) +(assert (not (= i18 i53))) +(assert (not (= i18 i52))) +(assert (not (= i18 i51))) +(assert (not (= i18 i50))) +(assert (not (= i18 i49))) +(assert (not (= i18 i48))) +(assert (not (= i18 i47))) +(assert (not (= i18 i46))) +(assert (not (= i18 i45))) +(assert (not (= i18 i44))) +(assert (not (= i18 i43))) +(assert (not (= i18 i42))) +(assert (not (= i18 i41))) +(assert (not (= i18 i40))) +(assert (not (= i18 i39))) +(assert (not (= i18 i38))) +(assert (not (= i18 i37))) +(assert (not (= i18 i36))) +(assert (not (= i18 i35))) +(assert (not (= i18 i34))) +(assert (not (= i18 i33))) +(assert (not (= i18 i32))) +(assert (not (= i18 i31))) +(assert (not (= i18 i30))) +(assert (not (= i18 i29))) +(assert (not (= i18 i28))) +(assert (not (= i18 i27))) +(assert (not (= i18 i26))) +(assert (not (= i18 i25))) +(assert (not (= i18 i24))) +(assert (not (= i18 i23))) +(assert (not (= i18 i22))) +(assert (not (= i18 i21))) +(assert (not (= i18 i20))) +(assert (not (= i18 i19))) +(assert (not (= i17 i60))) +(assert (not (= i17 i59))) +(assert (not (= i17 i58))) +(assert (not (= i17 i57))) +(assert (not (= i17 i56))) +(assert (not (= i17 i55))) +(assert (not (= i17 i54))) +(assert (not (= i17 i53))) +(assert (not (= i17 i52))) +(assert (not (= i17 i51))) +(assert (not (= i17 i50))) +(assert (not (= i17 i49))) +(assert (not (= i17 i48))) +(assert (not (= i17 i47))) +(assert (not (= i17 i46))) +(assert (not (= i17 i45))) +(assert (not (= i17 i44))) +(assert (not (= i17 i43))) +(assert (not (= i17 i42))) +(assert (not (= i17 i41))) +(assert (not (= i17 i40))) +(assert (not (= i17 i39))) +(assert (not (= i17 i38))) +(assert (not (= i17 i37))) +(assert (not (= i17 i36))) +(assert (not (= i17 i35))) +(assert (not (= i17 i34))) +(assert (not (= i17 i33))) +(assert (not (= i17 i32))) +(assert (not (= i17 i31))) +(assert (not (= i17 i30))) +(assert (not (= i17 i29))) +(assert (not (= i17 i28))) +(assert (not (= i17 i27))) +(assert (not (= i17 i26))) +(assert (not (= i17 i25))) +(assert (not (= i17 i24))) +(assert (not (= i17 i23))) +(assert (not (= i17 i22))) +(assert (not (= i17 i21))) +(assert (not (= i17 i20))) +(assert (not (= i17 i19))) +(assert (not (= i17 i18))) +(assert (not (= i16 i60))) +(assert (not (= i16 i59))) +(assert (not (= i16 i58))) +(assert (not (= i16 i57))) +(assert (not (= i16 i56))) +(assert (not (= i16 i55))) +(assert (not (= i16 i54))) +(assert (not (= i16 i53))) +(assert (not (= i16 i52))) +(assert (not (= i16 i51))) +(assert (not (= i16 i50))) +(assert (not (= i16 i49))) +(assert (not (= i16 i48))) +(assert (not (= i16 i47))) +(assert (not (= i16 i46))) +(assert (not (= i16 i45))) +(assert (not (= i16 i44))) +(assert (not (= i16 i43))) +(assert (not (= i16 i42))) +(assert (not (= i16 i41))) +(assert (not (= i16 i40))) +(assert (not (= i16 i39))) +(assert (not (= i16 i38))) +(assert (not (= i16 i37))) +(assert (not (= i16 i36))) +(assert (not (= i16 i35))) +(assert (not (= i16 i34))) +(assert (not (= i16 i33))) +(assert (not (= i16 i32))) +(assert (not (= i16 i31))) +(assert (not (= i16 i30))) +(assert (not (= i16 i29))) +(assert (not (= i16 i28))) +(assert (not (= i16 i27))) +(assert (not (= i16 i26))) +(assert (not (= i16 i25))) +(assert (not (= i16 i24))) +(assert (not (= i16 i23))) +(assert (not (= i16 i22))) +(assert (not (= i16 i21))) +(assert (not (= i16 i20))) +(assert (not (= i16 i19))) +(assert (not (= i16 i18))) +(assert (not (= i16 i17))) +(assert (not (= i15 i60))) +(assert (not (= i15 i59))) +(assert (not (= i15 i58))) +(assert (not (= i15 i57))) +(assert (not (= i15 i56))) +(assert (not (= i15 i55))) +(assert (not (= i15 i54))) +(assert (not (= i15 i53))) +(assert (not (= i15 i52))) +(assert (not (= i15 i51))) +(assert (not (= i15 i50))) +(assert (not (= i15 i49))) +(assert (not (= i15 i48))) +(assert (not (= i15 i47))) +(assert (not (= i15 i46))) +(assert (not (= i15 i45))) +(assert (not (= i15 i44))) +(assert (not (= i15 i43))) +(assert (not (= i15 i42))) +(assert (not (= i15 i41))) +(assert (not (= i15 i40))) +(assert (not (= i15 i39))) +(assert (not (= i15 i38))) +(assert (not (= i15 i37))) +(assert (not (= i15 i36))) +(assert (not (= i15 i35))) +(assert (not (= i15 i34))) +(assert (not (= i15 i33))) +(assert (not (= i15 i32))) +(assert (not (= i15 i31))) +(assert (not (= i15 i30))) +(assert (not (= i15 i29))) +(assert (not (= i15 i28))) +(assert (not (= i15 i27))) +(assert (not (= i15 i26))) +(assert (not (= i15 i25))) +(assert (not (= i15 i24))) +(assert (not (= i15 i23))) +(assert (not (= i15 i22))) +(assert (not (= i15 i21))) +(assert (not (= i15 i20))) +(assert (not (= i15 i19))) +(assert (not (= i15 i18))) +(assert (not (= i15 i17))) +(assert (not (= i15 i16))) +(assert (not (= i14 i60))) +(assert (not (= i14 i59))) +(assert (not (= i14 i58))) +(assert (not (= i14 i57))) +(assert (not (= i14 i56))) +(assert (not (= i14 i55))) +(assert (not (= i14 i54))) +(assert (not (= i14 i53))) +(assert (not (= i14 i52))) +(assert (not (= i14 i51))) +(assert (not (= i14 i50))) +(assert (not (= i14 i49))) +(assert (not (= i14 i48))) +(assert (not (= i14 i47))) +(assert (not (= i14 i46))) +(assert (not (= i14 i45))) +(assert (not (= i14 i44))) +(assert (not (= i14 i43))) +(assert (not (= i14 i42))) +(assert (not (= i14 i41))) +(assert (not (= i14 i40))) +(assert (not (= i14 i39))) +(assert (not (= i14 i38))) +(assert (not (= i14 i37))) +(assert (not (= i14 i36))) +(assert (not (= i14 i35))) +(assert (not (= i14 i34))) +(assert (not (= i14 i33))) +(assert (not (= i14 i32))) +(assert (not (= i14 i31))) +(assert (not (= i14 i30))) +(assert (not (= i14 i29))) +(assert (not (= i14 i28))) +(assert (not (= i14 i27))) +(assert (not (= i14 i26))) +(assert (not (= i14 i25))) +(assert (not (= i14 i24))) +(assert (not (= i14 i23))) +(assert (not (= i14 i22))) +(assert (not (= i14 i21))) +(assert (not (= i14 i20))) +(assert (not (= i14 i19))) +(assert (not (= i14 i18))) +(assert (not (= i14 i17))) +(assert (not (= i14 i16))) +(assert (not (= i14 i15))) +(assert (not (= i13 i60))) +(assert (not (= i13 i59))) +(assert (not (= i13 i58))) +(assert (not (= i13 i57))) +(assert (not (= i13 i56))) +(assert (not (= i13 i55))) +(assert (not (= i13 i54))) +(assert (not (= i13 i53))) +(assert (not (= i13 i52))) +(assert (not (= i13 i51))) +(assert (not (= i13 i50))) +(assert (not (= i13 i49))) +(assert (not (= i13 i48))) +(assert (not (= i13 i47))) +(assert (not (= i13 i46))) +(assert (not (= i13 i45))) +(assert (not (= i13 i44))) +(assert (not (= i13 i43))) +(assert (not (= i13 i42))) +(assert (not (= i13 i41))) +(assert (not (= i13 i40))) +(assert (not (= i13 i39))) +(assert (not (= i13 i38))) +(assert (not (= i13 i37))) +(assert (not (= i13 i36))) +(assert (not (= i13 i35))) +(assert (not (= i13 i34))) +(assert (not (= i13 i33))) +(assert (not (= i13 i32))) +(assert (not (= i13 i31))) +(assert (not (= i13 i30))) +(assert (not (= i13 i29))) +(assert (not (= i13 i28))) +(assert (not (= i13 i27))) +(assert (not (= i13 i26))) +(assert (not (= i13 i25))) +(assert (not (= i13 i24))) +(assert (not (= i13 i23))) +(assert (not (= i13 i22))) +(assert (not (= i13 i21))) +(assert (not (= i13 i20))) +(assert (not (= i13 i19))) +(assert (not (= i13 i18))) +(assert (not (= i13 i17))) +(assert (not (= i13 i16))) +(assert (not (= i13 i15))) +(assert (not (= i13 i14))) +(assert (not (= i12 i60))) +(assert (not (= i12 i59))) +(assert (not (= i12 i58))) +(assert (not (= i12 i57))) +(assert (not (= i12 i56))) +(assert (not (= i12 i55))) +(assert (not (= i12 i54))) +(assert (not (= i12 i53))) +(assert (not (= i12 i52))) +(assert (not (= i12 i51))) +(assert (not (= i12 i50))) +(assert (not (= i12 i49))) +(assert (not (= i12 i48))) +(assert (not (= i12 i47))) +(assert (not (= i12 i46))) +(assert (not (= i12 i45))) +(assert (not (= i12 i44))) +(assert (not (= i12 i43))) +(assert (not (= i12 i42))) +(assert (not (= i12 i41))) +(assert (not (= i12 i40))) +(assert (not (= i12 i39))) +(assert (not (= i12 i38))) +(assert (not (= i12 i37))) +(assert (not (= i12 i36))) +(assert (not (= i12 i35))) +(assert (not (= i12 i34))) +(assert (not (= i12 i33))) +(assert (not (= i12 i32))) +(assert (not (= i12 i31))) +(assert (not (= i12 i30))) +(assert (not (= i12 i29))) +(assert (not (= i12 i28))) +(assert (not (= i12 i27))) +(assert (not (= i12 i26))) +(assert (not (= i12 i25))) +(assert (not (= i12 i24))) +(assert (not (= i12 i23))) +(assert (not (= i12 i22))) +(assert (not (= i12 i21))) +(assert (not (= i12 i20))) +(assert (not (= i12 i19))) +(assert (not (= i12 i18))) +(assert (not (= i12 i17))) +(assert (not (= i12 i16))) +(assert (not (= i12 i15))) +(assert (not (= i12 i14))) +(assert (not (= i12 i13))) +(assert (not (= i11 i60))) +(assert (not (= i11 i59))) +(assert (not (= i11 i58))) +(assert (not (= i11 i57))) +(assert (not (= i11 i56))) +(assert (not (= i11 i55))) +(assert (not (= i11 i54))) +(assert (not (= i11 i53))) +(assert (not (= i11 i52))) +(assert (not (= i11 i51))) +(assert (not (= i11 i50))) +(assert (not (= i11 i49))) +(assert (not (= i11 i48))) +(assert (not (= i11 i47))) +(assert (not (= i11 i46))) +(assert (not (= i11 i45))) +(assert (not (= i11 i44))) +(assert (not (= i11 i43))) +(assert (not (= i11 i42))) +(assert (not (= i11 i41))) +(assert (not (= i11 i40))) +(assert (not (= i11 i39))) +(assert (not (= i11 i38))) +(assert (not (= i11 i37))) +(assert (not (= i11 i36))) +(assert (not (= i11 i35))) +(assert (not (= i11 i34))) +(assert (not (= i11 i33))) +(assert (not (= i11 i32))) +(assert (not (= i11 i31))) +(assert (not (= i11 i30))) +(assert (not (= i11 i29))) +(assert (not (= i11 i28))) +(assert (not (= i11 i27))) +(assert (not (= i11 i26))) +(assert (not (= i11 i25))) +(assert (not (= i11 i24))) +(assert (not (= i11 i23))) +(assert (not (= i11 i22))) +(assert (not (= i11 i21))) +(assert (not (= i11 i20))) +(assert (not (= i11 i19))) +(assert (not (= i11 i18))) +(assert (not (= i11 i17))) +(assert (not (= i11 i16))) +(assert (not (= i11 i15))) +(assert (not (= i11 i14))) +(assert (not (= i11 i13))) +(assert (not (= i11 i12))) +(assert (not (= i10 i60))) +(assert (not (= i10 i59))) +(assert (not (= i10 i58))) +(assert (not (= i10 i57))) +(assert (not (= i10 i56))) +(assert (not (= i10 i55))) +(assert (not (= i10 i54))) +(assert (not (= i10 i53))) +(assert (not (= i10 i52))) +(assert (not (= i10 i51))) +(assert (not (= i10 i50))) +(assert (not (= i10 i49))) +(assert (not (= i10 i48))) +(assert (not (= i10 i47))) +(assert (not (= i10 i46))) +(assert (not (= i10 i45))) +(assert (not (= i10 i44))) +(assert (not (= i10 i43))) +(assert (not (= i10 i42))) +(assert (not (= i10 i41))) +(assert (not (= i10 i40))) +(assert (not (= i10 i39))) +(assert (not (= i10 i38))) +(assert (not (= i10 i37))) +(assert (not (= i10 i36))) +(assert (not (= i10 i35))) +(assert (not (= i10 i34))) +(assert (not (= i10 i33))) +(assert (not (= i10 i32))) +(assert (not (= i10 i31))) +(assert (not (= i10 i30))) +(assert (not (= i10 i29))) +(assert (not (= i10 i28))) +(assert (not (= i10 i27))) +(assert (not (= i10 i26))) +(assert (not (= i10 i25))) +(assert (not (= i10 i24))) +(assert (not (= i10 i23))) +(assert (not (= i10 i22))) +(assert (not (= i10 i21))) +(assert (not (= i10 i20))) +(assert (not (= i10 i19))) +(assert (not (= i10 i18))) +(assert (not (= i10 i17))) +(assert (not (= i10 i16))) +(assert (not (= i10 i15))) +(assert (not (= i10 i14))) +(assert (not (= i10 i13))) +(assert (not (= i10 i12))) +(assert (not (= i10 i11))) +(assert (not (= i9 i60))) +(assert (not (= i9 i59))) +(assert (not (= i9 i58))) +(assert (not (= i9 i57))) +(assert (not (= i9 i56))) +(assert (not (= i9 i55))) +(assert (not (= i9 i54))) +(assert (not (= i9 i53))) +(assert (not (= i9 i52))) +(assert (not (= i9 i51))) +(assert (not (= i9 i50))) +(assert (not (= i9 i49))) +(assert (not (= i9 i48))) +(assert (not (= i9 i47))) +(assert (not (= i9 i46))) +(assert (not (= i9 i45))) +(assert (not (= i9 i44))) +(assert (not (= i9 i43))) +(assert (not (= i9 i42))) +(assert (not (= i9 i41))) +(assert (not (= i9 i40))) +(assert (not (= i9 i39))) +(assert (not (= i9 i38))) +(assert (not (= i9 i37))) +(assert (not (= i9 i36))) +(assert (not (= i9 i35))) +(assert (not (= i9 i34))) +(assert (not (= i9 i33))) +(assert (not (= i9 i32))) +(assert (not (= i9 i31))) +(assert (not (= i9 i30))) +(assert (not (= i9 i29))) +(assert (not (= i9 i28))) +(assert (not (= i9 i27))) +(assert (not (= i9 i26))) +(assert (not (= i9 i25))) +(assert (not (= i9 i24))) +(assert (not (= i9 i23))) +(assert (not (= i9 i22))) +(assert (not (= i9 i21))) +(assert (not (= i9 i20))) +(assert (not (= i9 i19))) +(assert (not (= i9 i18))) +(assert (not (= i9 i17))) +(assert (not (= i9 i16))) +(assert (not (= i9 i15))) +(assert (not (= i9 i14))) +(assert (not (= i9 i13))) +(assert (not (= i9 i12))) +(assert (not (= i9 i11))) +(assert (not (= i9 i10))) +(assert (not (= i8 i60))) +(assert (not (= i8 i59))) +(assert (not (= i8 i58))) +(assert (not (= i8 i57))) +(assert (not (= i8 i56))) +(assert (not (= i8 i55))) +(assert (not (= i8 i54))) +(assert (not (= i8 i53))) +(assert (not (= i8 i52))) +(assert (not (= i8 i51))) +(assert (not (= i8 i50))) +(assert (not (= i8 i49))) +(assert (not (= i8 i48))) +(assert (not (= i8 i47))) +(assert (not (= i8 i46))) +(assert (not (= i8 i45))) +(assert (not (= i8 i44))) +(assert (not (= i8 i43))) +(assert (not (= i8 i42))) +(assert (not (= i8 i41))) +(assert (not (= i8 i40))) +(assert (not (= i8 i39))) +(assert (not (= i8 i38))) +(assert (not (= i8 i37))) +(assert (not (= i8 i36))) +(assert (not (= i8 i35))) +(assert (not (= i8 i34))) +(assert (not (= i8 i33))) +(assert (not (= i8 i32))) +(assert (not (= i8 i31))) +(assert (not (= i8 i30))) +(assert (not (= i8 i29))) +(assert (not (= i8 i28))) +(assert (not (= i8 i27))) +(assert (not (= i8 i26))) +(assert (not (= i8 i25))) +(assert (not (= i8 i24))) +(assert (not (= i8 i23))) +(assert (not (= i8 i22))) +(assert (not (= i8 i21))) +(assert (not (= i8 i20))) +(assert (not (= i8 i19))) +(assert (not (= i8 i18))) +(assert (not (= i8 i17))) +(assert (not (= i8 i16))) +(assert (not (= i8 i15))) +(assert (not (= i8 i14))) +(assert (not (= i8 i13))) +(assert (not (= i8 i12))) +(assert (not (= i8 i11))) +(assert (not (= i8 i10))) +(assert (not (= i8 i9))) +(assert (not (= i7 i60))) +(assert (not (= i7 i59))) +(assert (not (= i7 i58))) +(assert (not (= i7 i57))) +(assert (not (= i7 i56))) +(assert (not (= i7 i55))) +(assert (not (= i7 i54))) +(assert (not (= i7 i53))) +(assert (not (= i7 i52))) +(assert (not (= i7 i51))) +(assert (not (= i7 i50))) +(assert (not (= i7 i49))) +(assert (not (= i7 i48))) +(assert (not (= i7 i47))) +(assert (not (= i7 i46))) +(assert (not (= i7 i45))) +(assert (not (= i7 i44))) +(assert (not (= i7 i43))) +(assert (not (= i7 i42))) +(assert (not (= i7 i41))) +(assert (not (= i7 i40))) +(assert (not (= i7 i39))) +(assert (not (= i7 i38))) +(assert (not (= i7 i37))) +(assert (not (= i7 i36))) +(assert (not (= i7 i35))) +(assert (not (= i7 i34))) +(assert (not (= i7 i33))) +(assert (not (= i7 i32))) +(assert (not (= i7 i31))) +(assert (not (= i7 i30))) +(assert (not (= i7 i29))) +(assert (not (= i7 i28))) +(assert (not (= i7 i27))) +(assert (not (= i7 i26))) +(assert (not (= i7 i25))) +(assert (not (= i7 i24))) +(assert (not (= i7 i23))) +(assert (not (= i7 i22))) +(assert (not (= i7 i21))) +(assert (not (= i7 i20))) +(assert (not (= i7 i19))) +(assert (not (= i7 i18))) +(assert (not (= i7 i17))) +(assert (not (= i7 i16))) +(assert (not (= i7 i15))) +(assert (not (= i7 i14))) +(assert (not (= i7 i13))) +(assert (not (= i7 i12))) +(assert (not (= i7 i11))) +(assert (not (= i7 i10))) +(assert (not (= i7 i9))) +(assert (not (= i7 i8))) +(assert (not (= i6 i60))) +(assert (not (= i6 i59))) +(assert (not (= i6 i58))) +(assert (not (= i6 i57))) +(assert (not (= i6 i56))) +(assert (not (= i6 i55))) +(assert (not (= i6 i54))) +(assert (not (= i6 i53))) +(assert (not (= i6 i52))) +(assert (not (= i6 i51))) +(assert (not (= i6 i50))) +(assert (not (= i6 i49))) +(assert (not (= i6 i48))) +(assert (not (= i6 i47))) +(assert (not (= i6 i46))) +(assert (not (= i6 i45))) +(assert (not (= i6 i44))) +(assert (not (= i6 i43))) +(assert (not (= i6 i42))) +(assert (not (= i6 i41))) +(assert (not (= i6 i40))) +(assert (not (= i6 i39))) +(assert (not (= i6 i38))) +(assert (not (= i6 i37))) +(assert (not (= i6 i36))) +(assert (not (= i6 i35))) +(assert (not (= i6 i34))) +(assert (not (= i6 i33))) +(assert (not (= i6 i32))) +(assert (not (= i6 i31))) +(assert (not (= i6 i30))) +(assert (not (= i6 i29))) +(assert (not (= i6 i28))) +(assert (not (= i6 i27))) +(assert (not (= i6 i26))) +(assert (not (= i6 i25))) +(assert (not (= i6 i24))) +(assert (not (= i6 i23))) +(assert (not (= i6 i22))) +(assert (not (= i6 i21))) +(assert (not (= i6 i20))) +(assert (not (= i6 i19))) +(assert (not (= i6 i18))) +(assert (not (= i6 i17))) +(assert (not (= i6 i16))) +(assert (not (= i6 i15))) +(assert (not (= i6 i14))) +(assert (not (= i6 i13))) +(assert (not (= i6 i12))) +(assert (not (= i6 i11))) +(assert (not (= i6 i10))) +(assert (not (= i6 i9))) +(assert (not (= i6 i8))) +(assert (not (= i6 i7))) +(assert (not (= i5 i60))) +(assert (not (= i5 i59))) +(assert (not (= i5 i58))) +(assert (not (= i5 i57))) +(assert (not (= i5 i56))) +(assert (not (= i5 i55))) +(assert (not (= i5 i54))) +(assert (not (= i5 i53))) +(assert (not (= i5 i52))) +(assert (not (= i5 i51))) +(assert (not (= i5 i50))) +(assert (not (= i5 i49))) +(assert (not (= i5 i48))) +(assert (not (= i5 i47))) +(assert (not (= i5 i46))) +(assert (not (= i5 i45))) +(assert (not (= i5 i44))) +(assert (not (= i5 i43))) +(assert (not (= i5 i42))) +(assert (not (= i5 i41))) +(assert (not (= i5 i40))) +(assert (not (= i5 i39))) +(assert (not (= i5 i38))) +(assert (not (= i5 i37))) +(assert (not (= i5 i36))) +(assert (not (= i5 i35))) +(assert (not (= i5 i34))) +(assert (not (= i5 i33))) +(assert (not (= i5 i32))) +(assert (not (= i5 i31))) +(assert (not (= i5 i30))) +(assert (not (= i5 i29))) +(assert (not (= i5 i28))) +(assert (not (= i5 i27))) +(assert (not (= i5 i26))) +(assert (not (= i5 i25))) +(assert (not (= i5 i24))) +(assert (not (= i5 i23))) +(assert (not (= i5 i22))) +(assert (not (= i5 i21))) +(assert (not (= i5 i20))) +(assert (not (= i5 i19))) +(assert (not (= i5 i18))) +(assert (not (= i5 i17))) +(assert (not (= i5 i16))) +(assert (not (= i5 i15))) +(assert (not (= i5 i14))) +(assert (not (= i5 i13))) +(assert (not (= i5 i12))) +(assert (not (= i5 i11))) +(assert (not (= i5 i10))) +(assert (not (= i5 i9))) +(assert (not (= i5 i8))) +(assert (not (= i5 i7))) +(assert (not (= i5 i6))) +(assert (not (= i4 i60))) +(assert (not (= i4 i59))) +(assert (not (= i4 i58))) +(assert (not (= i4 i57))) +(assert (not (= i4 i56))) +(assert (not (= i4 i55))) +(assert (not (= i4 i54))) +(assert (not (= i4 i53))) +(assert (not (= i4 i52))) +(assert (not (= i4 i51))) +(assert (not (= i4 i50))) +(assert (not (= i4 i49))) +(assert (not (= i4 i48))) +(assert (not (= i4 i47))) +(assert (not (= i4 i46))) +(assert (not (= i4 i45))) +(assert (not (= i4 i44))) +(assert (not (= i4 i43))) +(assert (not (= i4 i42))) +(assert (not (= i4 i41))) +(assert (not (= i4 i40))) +(assert (not (= i4 i39))) +(assert (not (= i4 i38))) +(assert (not (= i4 i37))) +(assert (not (= i4 i36))) +(assert (not (= i4 i35))) +(assert (not (= i4 i34))) +(assert (not (= i4 i33))) +(assert (not (= i4 i32))) +(assert (not (= i4 i31))) +(assert (not (= i4 i30))) +(assert (not (= i4 i29))) +(assert (not (= i4 i28))) +(assert (not (= i4 i27))) +(assert (not (= i4 i26))) +(assert (not (= i4 i25))) +(assert (not (= i4 i24))) +(assert (not (= i4 i23))) +(assert (not (= i4 i22))) +(assert (not (= i4 i21))) +(assert (not (= i4 i20))) +(assert (not (= i4 i19))) +(assert (not (= i4 i18))) +(assert (not (= i4 i17))) +(assert (not (= i4 i16))) +(assert (not (= i4 i15))) +(assert (not (= i4 i14))) +(assert (not (= i4 i13))) +(assert (not (= i4 i12))) +(assert (not (= i4 i11))) +(assert (not (= i4 i10))) +(assert (not (= i4 i9))) +(assert (not (= i4 i8))) +(assert (not (= i4 i7))) +(assert (not (= i4 i6))) +(assert (not (= i4 i5))) +(assert (not (= i3 i60))) +(assert (not (= i3 i59))) +(assert (not (= i3 i58))) +(assert (not (= i3 i57))) +(assert (not (= i3 i56))) +(assert (not (= i3 i55))) +(assert (not (= i3 i54))) +(assert (not (= i3 i53))) +(assert (not (= i3 i52))) +(assert (not (= i3 i51))) +(assert (not (= i3 i50))) +(assert (not (= i3 i49))) +(assert (not (= i3 i48))) +(assert (not (= i3 i47))) +(assert (not (= i3 i46))) +(assert (not (= i3 i45))) +(assert (not (= i3 i44))) +(assert (not (= i3 i43))) +(assert (not (= i3 i42))) +(assert (not (= i3 i41))) +(assert (not (= i3 i40))) +(assert (not (= i3 i39))) +(assert (not (= i3 i38))) +(assert (not (= i3 i37))) +(assert (not (= i3 i36))) +(assert (not (= i3 i35))) +(assert (not (= i3 i34))) +(assert (not (= i3 i33))) +(assert (not (= i3 i32))) +(assert (not (= i3 i31))) +(assert (not (= i3 i30))) +(assert (not (= i3 i29))) +(assert (not (= i3 i28))) +(assert (not (= i3 i27))) +(assert (not (= i3 i26))) +(assert (not (= i3 i25))) +(assert (not (= i3 i24))) +(assert (not (= i3 i23))) +(assert (not (= i3 i22))) +(assert (not (= i3 i21))) +(assert (not (= i3 i20))) +(assert (not (= i3 i19))) +(assert (not (= i3 i18))) +(assert (not (= i3 i17))) +(assert (not (= i3 i16))) +(assert (not (= i3 i15))) +(assert (not (= i3 i14))) +(assert (not (= i3 i13))) +(assert (not (= i3 i12))) +(assert (not (= i3 i11))) +(assert (not (= i3 i10))) +(assert (not (= i3 i9))) +(assert (not (= i3 i8))) +(assert (not (= i3 i7))) +(assert (not (= i3 i6))) +(assert (not (= i3 i5))) +(assert (not (= i3 i4))) +(assert (not (= i2 i60))) +(assert (not (= i2 i59))) +(assert (not (= i2 i58))) +(assert (not (= i2 i57))) +(assert (not (= i2 i56))) +(assert (not (= i2 i55))) +(assert (not (= i2 i54))) +(assert (not (= i2 i53))) +(assert (not (= i2 i52))) +(assert (not (= i2 i51))) +(assert (not (= i2 i50))) +(assert (not (= i2 i49))) +(assert (not (= i2 i48))) +(assert (not (= i2 i47))) +(assert (not (= i2 i46))) +(assert (not (= i2 i45))) +(assert (not (= i2 i44))) +(assert (not (= i2 i43))) +(assert (not (= i2 i42))) +(assert (not (= i2 i41))) +(assert (not (= i2 i40))) +(assert (not (= i2 i39))) +(assert (not (= i2 i38))) +(assert (not (= i2 i37))) +(assert (not (= i2 i36))) +(assert (not (= i2 i35))) +(assert (not (= i2 i34))) +(assert (not (= i2 i33))) +(assert (not (= i2 i32))) +(assert (not (= i2 i31))) +(assert (not (= i2 i30))) +(assert (not (= i2 i29))) +(assert (not (= i2 i28))) +(assert (not (= i2 i27))) +(assert (not (= i2 i26))) +(assert (not (= i2 i25))) +(assert (not (= i2 i24))) +(assert (not (= i2 i23))) +(assert (not (= i2 i22))) +(assert (not (= i2 i21))) +(assert (not (= i2 i20))) +(assert (not (= i2 i19))) +(assert (not (= i2 i18))) +(assert (not (= i2 i17))) +(assert (not (= i2 i16))) +(assert (not (= i2 i15))) +(assert (not (= i2 i14))) +(assert (not (= i2 i13))) +(assert (not (= i2 i12))) +(assert (not (= i2 i11))) +(assert (not (= i2 i10))) +(assert (not (= i2 i9))) +(assert (not (= i2 i8))) +(assert (not (= i2 i7))) +(assert (not (= i2 i6))) +(assert (not (= i2 i5))) +(assert (not (= i2 i4))) +(assert (not (= i2 i3))) +(assert (not (= i1 i60))) +(assert (not (= i1 i59))) +(assert (not (= i1 i58))) +(assert (not (= i1 i57))) +(assert (not (= i1 i56))) +(assert (not (= i1 i55))) +(assert (not (= i1 i54))) +(assert (not (= i1 i53))) +(assert (not (= i1 i52))) +(assert (not (= i1 i51))) +(assert (not (= i1 i50))) +(assert (not (= i1 i49))) +(assert (not (= i1 i48))) +(assert (not (= i1 i47))) +(assert (not (= i1 i46))) +(assert (not (= i1 i45))) +(assert (not (= i1 i44))) +(assert (not (= i1 i43))) +(assert (not (= i1 i42))) +(assert (not (= i1 i41))) +(assert (not (= i1 i40))) +(assert (not (= i1 i39))) +(assert (not (= i1 i38))) +(assert (not (= i1 i37))) +(assert (not (= i1 i36))) +(assert (not (= i1 i35))) +(assert (not (= i1 i34))) +(assert (not (= i1 i33))) +(assert (not (= i1 i32))) +(assert (not (= i1 i31))) +(assert (not (= i1 i30))) +(assert (not (= i1 i29))) +(assert (not (= i1 i28))) +(assert (not (= i1 i27))) +(assert (not (= i1 i26))) +(assert (not (= i1 i25))) +(assert (not (= i1 i24))) +(assert (not (= i1 i23))) +(assert (not (= i1 i22))) +(assert (not (= i1 i21))) +(assert (not (= i1 i20))) +(assert (not (= i1 i19))) +(assert (not (= i1 i18))) +(assert (not (= i1 i17))) +(assert (not (= i1 i16))) +(assert (not (= i1 i15))) +(assert (not (= i1 i14))) +(assert (not (= i1 i13))) +(assert (not (= i1 i12))) +(assert (not (= i1 i11))) +(assert (not (= i1 i10))) +(assert (not (= i1 i9))) +(assert (not (= i1 i8))) +(assert (not (= i1 i7))) +(assert (not (= i1 i6))) +(assert (not (= i1 i5))) +(assert (not (= i1 i4))) +(assert (not (= i1 i3))) +(assert (not (= i1 i2))) +(assert (not (= a_59 a_119))) +(check-sat) +(exit) diff --git a/tests/regress/mcsat/ax/storecomm_t2_np_sf_ai_00060_009.cvc.smt2.gold b/tests/regress/mcsat/ax/storecomm_t2_np_sf_ai_00060_009.cvc.smt2.gold new file mode 100644 index 000000000..3f65111b0 --- /dev/null +++ b/tests/regress/mcsat/ax/storecomm_t2_np_sf_ai_00060_009.cvc.smt2.gold @@ -0,0 +1 @@ +unsat diff --git a/tests/regress/mcsat/ax/storecomm_t2_np_sf_ai_00060_009.cvc.smt2.options b/tests/regress/mcsat/ax/storecomm_t2_np_sf_ai_00060_009.cvc.smt2.options new file mode 100644 index 000000000..bcf7e6dae --- /dev/null +++ b/tests/regress/mcsat/ax/storecomm_t2_np_sf_ai_00060_009.cvc.smt2.options @@ -0,0 +1 @@ +--mcsat From b82d1a669d14e8d67b6ac45ff2246251b94d9c40 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Tue, 14 Feb 2023 01:35:08 -0800 Subject: [PATCH 072/182] opt --- src/mcsat/uf/uf_plugin.c | 16 +++------------- 1 file changed, 3 insertions(+), 13 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index f8c8eced4..dc0b4b57f 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -745,9 +745,9 @@ void uf_plugin_add_to_eq_graph(uf_plugin_t* uf, term_t t, bool record) { term_t r1 = app_term(terms, t, t_desc->arity - 2, t_desc->arg + 1); variable_db_get_variable(uf->ctx->var_db, r1); ivector_push(&uf->select_terms, r1); - term_t r2 = app_term(terms, t_desc->arg[0], t_desc->arity - 2, t_desc->arg + 1); - variable_db_get_variable(uf->ctx->var_db, r2); - ivector_push(&uf->select_terms, r2); + /* term_t r2 = app_term(terms, t_desc->arg[0], t_desc->arity - 2, t_desc->arg + 1); */ + /* variable_db_get_variable(uf->ctx->var_db, r2); */ + /* ivector_push(&uf->select_terms, r2); */ break; case ARITH_RDIV: t_desc = arith_rdiv_term_desc(terms, t); @@ -793,16 +793,6 @@ void uf_plugin_add_to_eq_graph(uf_plugin_t* uf, term_t t, bool record) { eq_graph_propagate_trail_assertion(&uf->eq_graph, c); } } - if (is_function_term(terms, c)) { - if (USE_ARRAY_DIFF) { - uf_plugin_add_diff_terms_vars(uf, c); - } - ivector_push(&uf->array_terms, c); - } - if (term_kind(terms, c) == APP_TERM && - !int_hset_member(&uf->diff_funs, c)) { - ivector_push(&uf->select_terms, c); - } } // Record addition so we can re-add on backtracks From 33327551fd23ef611b6b91c9ad241c72622553a6 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Thu, 16 Feb 2023 22:16:52 -0800 Subject: [PATCH 073/182] Refactor mcsat array reasoning. Co-authored-by: Karsten Martiny --- Makefile.build | 2 +- src/Makefile | 1 + src/mcsat/uf/uf_plugin.c | 1190 ++---------------------------- src/mcsat/weq/weak_eq_graph.c | 1312 +++++++++++++++++++++++++++++++++ src/mcsat/weq/weak_eq_graph.h | 119 +++ 5 files changed, 1485 insertions(+), 1139 deletions(-) create mode 100644 src/mcsat/weq/weak_eq_graph.c create mode 100644 src/mcsat/weq/weak_eq_graph.h diff --git a/Makefile.build b/Makefile.build index 10702a90b..08c3629db 100644 --- a/Makefile.build +++ b/Makefile.build @@ -89,7 +89,7 @@ srcsubdirs = mt io terms utils solvers solvers/floyd_warshall \ solvers/funs solvers/bv solvers/egraph solvers/cdcl solvers/simplex solvers/quant \ parser_utils model scratch api frontend frontend/common \ frontend/smt1 frontend/yices frontend/smt2 context exists_forall \ - mcsat mcsat/eq mcsat/uf mcsat/bool mcsat/ite mcsat/nra mcsat/bv \ + mcsat mcsat/eq mcsat/weq mcsat/uf mcsat/bool mcsat/ite mcsat/nra mcsat/bv \ mcsat/bv/explain mcsat/utils testdir = tests/unit diff --git a/src/Makefile b/src/Makefile index 129e4c0d6..445c6ff7b 100644 --- a/src/Makefile +++ b/src/Makefile @@ -350,6 +350,7 @@ mcsat_src_c := \ mcsat/gc.c \ mcsat/eq/equality_graph.c \ mcsat/eq/merge_queue.c \ + mcsat/weq/weak_eq_graph.c \ mcsat/utils/int_mset.c \ mcsat/utils/int_lset.c \ mcsat/utils/value_hash_map.c \ diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index dc0b4b57f..df4035068 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -25,26 +25,19 @@ #include "mcsat/value.h" #include "mcsat/eq/equality_graph.h" +#include "mcsat/weq/weak_eq_graph.h" #include "utils/int_array_sort2.h" -#include "utils/int_array_hsets.h" -#include "utils/int_hash_sets.h" - #include "utils/ptr_array_sort2.h" -#include "utils/ptr_hash_map.h" -#include "utils/ptr_sets.h" -#include "utils/refcount_strings.h" #include "model/models.h" #include "terms/terms.h" #include "inttypes.h" -#include "api/yices_api_lock_free.h" #define DECIDE_FUNCTION_VALUE_START UINT32_MAX/64 -#define USE_ARRAY_DIFF 0 //experimental typedef struct { @@ -69,39 +62,12 @@ typedef struct { /** Stuff added to eq_graph */ ivector_t eq_graph_addition_trail; - /** Array terms */ - ivector_t array_terms; - - /** Array eq terms */ - ivector_t array_eq_terms; - - /** Select terms */ - ivector_t select_terms; - - /** Map from types to diff symbols */ - int_hmap_t type_to_diff; - - /** Set of Diff Funs */ - int_hset_t diff_funs; - - /** Map: terms to fun_nodes */ - ptr_hmap_t fun_node_map; + /** Weak Equality graph for array reasoning */ + weq_graph_t weq_graph; /** Function Values to types map */ ptr_hmap_t fun_val_type_map; - /** Function Values to term (one rep term) */ - int_hmap_t fun_val_term_map; - - /** Weak path equalities **/ - ivector_t path_cond; - - /** Weak path indices **/ - ivector_t path_indices1; - - /** Weak path indices **/ - ivector_t path_indices2; - /** Tmp vector */ int_mset_t tmp; @@ -109,11 +75,6 @@ typedef struct { statistic_int_t* egraph_terms; statistic_int_t* propagations; statistic_int_t* conflicts; - statistic_int_t* array_terms; - statistic_int_t* select_terms; - statistic_int_t* array_update1_axioms; - statistic_int_t* array_update2_axioms; - statistic_int_t* array_ext_axioms; statistic_avg_t* avg_conflict_size; statistic_avg_t* avg_explanation_size; } stats; @@ -124,248 +85,12 @@ typedef struct { } uf_plugin_t; -static inline void add_if_not_true_term(ivector_t* vec, term_t t) { - if (t != true_term) { - ivector_push(vec, t); - } -} - -/* - * Weakly Equivalent Arrays: data structure - */ - -typedef struct fun_node_s { - struct fun_node_s* p; - term_t pstore; - term_t pi; - struct fun_node_s* s; - term_t sstore; -} fun_node_t; - -static inline fun_node_t *new_node() { - fun_node_t *n = safe_malloc(sizeof(fun_node_t)); - n->p = NULL; - n->pstore = NULL_TERM; - n->pi = NULL_TERM; - n->s = NULL; - n->sstore = NULL_TERM; - return n; -} - -static const fun_node_t* get_rep(const eq_graph_t* eq_graph, - const fun_node_t* n) { - const fun_node_t* res = n; - while (res->p != NULL) { - res = res->p; - } - return res; -} - -static uint32_t count_primary(const eq_graph_t* eq_graph, - const fun_node_t* n) { - uint32_t res = 0; - const fun_node_t* tmp = n; - - while (tmp->p != NULL) { - tmp = tmp->p; - res++; - } - return res; -} - -static const fun_node_t* get_rep_i(const eq_graph_t* eq_graph, const fun_node_t* n, - const term_t idx) { - const fun_node_t* res = n; - while (res->p != NULL) { - if (eq_graph_are_equal(eq_graph, res->pi, idx)) { - if (res->s == NULL) { - break; - } - res = res->s; - } else { - res = res->p; - } - } - return res; -} - -static uint32_t count_secondary(const eq_graph_t* eq_graph, const fun_node_t* n, - const term_t idx) { - uint32_t res = 0; - const fun_node_t* tmp = n; - while (tmp->p != NULL) { - if (eq_graph_are_equal(eq_graph, tmp->pi, idx)) { - if (tmp->s == NULL) { - break; - } - tmp = tmp->s; - res++; - } else { - tmp = tmp->p; - } - } - return res; -} - -static fun_node_t* find_secondary_node(const eq_graph_t* eq_graph, - fun_node_t* n, term_t idx) { - fun_node_t* res = n; - while (res->p != NULL && !eq_graph_are_equal(eq_graph, res->pi, idx)) { - res = res->p; - } - return res; -} - -static const fun_node_t* find_secondary_node_const(const eq_graph_t* eq_graph, - const fun_node_t* n, term_t idx) { - const fun_node_t* res = n; - while (res->p != NULL && !eq_graph_are_equal(eq_graph, res->pi, idx)) { - res = res->p; - } - return res; -} - -static inline term_t uf_plugin_get_index_from_store(uf_plugin_t* uf, term_t store) { - term_table_t* terms = uf->ctx->terms; - assert(term_kind(terms, store) == UPDATE_TERM); - - composite_term_t* t_desc = update_term_desc(terms, store); - return t_desc->arg[1]; -} - -static void make_rep_i(uf_plugin_t* uf, fun_node_t* n) { - if (n->s == NULL) { - return; - } - - fun_node_t* prev = n; - fun_node_t* next = n->s; - term_t prev_store = n->sstore; - term_t idx = n->pi; - fun_node_t* tmp = NULL; - term_t tmp_sec_store = NULL_TERM; - - while (next) { - next = find_secondary_node(&uf->eq_graph, next, idx); - tmp = next->s; - tmp_sec_store = next->sstore; - - next->s = prev; - next->sstore = prev_store; - - assert(!eq_graph_are_equal(&uf->eq_graph, next->pi, - uf_plugin_get_index_from_store(uf, next->sstore))); - - prev = next; - prev_store = tmp_sec_store; - next = tmp; - } - - n->s = NULL; - n->sstore = NULL_TERM; -} - -static void make_rep(uf_plugin_t* uf, fun_node_t* n) { - if (n->p == NULL) { - return; - } - - make_rep(uf, n->p); - // invert primary edge - n->p->p = n; - n->p->pstore = n->pstore; - n->p->pi = n->pi; - n->p = NULL; - make_rep_i(uf, n); - n->pstore = NULL_TERM; - n->pi = NULL_TERM; -} - -static term_t uf_plugin_get_term_rep(uf_plugin_t* uf, term_t t) { - assert(eq_graph_term_has_value(&uf->eq_graph, t)); - - const mcsat_value_t* val = eq_graph_get_propagated_term_value(&uf->eq_graph, t); - int32_t v_int = 0; - bool ok = q_get32((rational_t*)&val->q, &v_int); - (void) ok; - assert(ok); - - int_hmap_pair_t *v = int_hmap_find(&uf->fun_val_term_map, v_int); - if (v == NULL) { - v = int_hmap_get(&uf->fun_val_term_map, v_int); - v->val = t; - } - - assert(eq_graph_are_equal(&uf->eq_graph, t, v->val)); - - return v->val; -} - -static void add_secondary(uf_plugin_t* uf, int_hset_t* idx_set, - fun_node_t* a, fun_node_t* b, term_t store) { - assert(b->p == NULL); - fun_node_t* n = a; - while (n != b) { - assert(n->p); - if (!int_hset_member(idx_set, uf_plugin_get_term_rep(uf, n->pi)) && - get_rep_i(&uf->eq_graph, n, n->pi) != b) { - make_rep_i(uf, n); - assert(!eq_graph_are_equal(&uf->eq_graph, n->pi, - uf_plugin_get_index_from_store(uf, store))); - n->s = b; - n->sstore = store; - } - int_hset_add(idx_set, uf_plugin_get_term_rep(uf, n->pi)); - n = n->p; - } -} - -static void add_store(uf_plugin_t* uf, fun_node_t* a, fun_node_t* b, - term_t idx, term_t store) { - if (a == b) { - return; - } - - make_rep(uf, b); - if (get_rep(&uf->eq_graph, a) == b) { - int_hset_t s; - init_int_hset(&s, 0); - int_hset_add(&s, uf_plugin_get_term_rep(uf, idx)); - add_secondary(uf, &s, a, b, store); - delete_int_hset(&s); - } else { - assert(b->p == NULL); - b->p = a; - b->pstore = store; - b->pi = idx; - } -} - -/* * */ - -static -void uf_plugin_clear_fun_node_map(uf_plugin_t* uf) { - ptr_hmap_pair_t *p; - for (p = ptr_hmap_first_record(&uf->fun_node_map); - p != NULL; - p = ptr_hmap_next_record(&uf->fun_node_map, p)) { - safe_free((fun_node_t *) p->val); - } - ptr_hmap_reset(&uf->fun_node_map); - int_hmap_reset(&uf->fun_val_term_map); -} - static void uf_plugin_stats_init(uf_plugin_t* uf) { // Add statistics uf->stats.propagations = statistics_new_int(uf->ctx->stats, "mcsat::uf::propagations"); uf->stats.conflicts = statistics_new_int(uf->ctx->stats, "mcsat::uf::conflicts"); uf->stats.egraph_terms = statistics_new_int(uf->ctx->stats, "mcsat::uf::egraph_terms"); - uf->stats.array_terms = statistics_new_int(uf->ctx->stats, "mcsat::uf::array_terms"); - uf->stats.select_terms = statistics_new_int(uf->ctx->stats, "mcsat::uf::select_terms"); - uf->stats.array_update1_axioms = statistics_new_int(uf->ctx->stats, "mcsat::uf::array_update1_axioms"); - uf->stats.array_update2_axioms = statistics_new_int(uf->ctx->stats, "mcsat::uf::array_update2_axioms"); - uf->stats.array_ext_axioms = statistics_new_int(uf->ctx->stats, "mcsat::uf::array_ext_axioms"); uf->stats.avg_conflict_size = statistics_new_avg(uf->ctx->stats, "mcsat::uf::avg_conflict_size"); uf->stats.avg_explanation_size = statistics_new_avg(uf->ctx->stats, "mcsat::uf::avg_explanation_size"); } @@ -393,10 +118,6 @@ void uf_plugin_construct(plugin_t* plugin, plugin_context_t* ctx) { scope_holder_construct(&uf->scope); init_ivector(&uf->conflict, 0); init_ptr_hmap(&uf->fun_val_type_map, 0); - init_int_hmap(&uf->fun_val_term_map, 0); - init_ivector(&uf->path_cond, 0); - init_ivector(&uf->path_indices1, 0); - init_ivector(&uf->path_indices2, 0); int_mset_construct(&uf->tmp, NULL_TERM); // Terms @@ -419,14 +140,9 @@ void uf_plugin_construct(plugin_t* plugin, plugin_context_t* ctx) { eq_graph_construct(&uf->eq_graph, ctx, "uf"); init_ivector(&uf->eq_graph_addition_trail, 0); - init_ivector(&uf->array_terms, 0); - init_ivector(&uf->array_eq_terms, 0); - init_ivector(&uf->select_terms, 0); + // Weak Equality graph + weq_graph_construct(&uf->weq_graph, ctx, &uf->eq_graph); - init_int_hmap(&uf->type_to_diff, 0); - init_int_hset(&uf->diff_funs, 0); - init_ptr_hmap(&uf->fun_node_map, 0); - // stats uf_plugin_stats_init(uf); } @@ -441,19 +157,8 @@ void uf_plugin_destruct(plugin_t* plugin) { eq_graph_destruct(&uf->eq_graph); delete_ivector(&uf->eq_graph_addition_trail); - delete_ivector(&uf->array_terms); - delete_ivector(&uf->array_eq_terms); - delete_ivector(&uf->select_terms); - - delete_int_hmap(&uf->type_to_diff); - delete_int_hset(&uf->diff_funs); - delete_ivector(&uf->path_cond); - delete_ivector(&uf->path_indices1); - delete_ivector(&uf->path_indices2); - - uf_plugin_clear_fun_node_map(uf); - delete_ptr_hmap(&uf->fun_node_map); - delete_int_hmap(&uf->fun_val_term_map); + + weq_graph_destruct(&uf->weq_graph); } static @@ -502,219 +207,6 @@ bool uf_plugin_process_eq_graph_propagations(uf_plugin_t* uf, trail_token_t* pro return propagated; } -static fun_node_t *uf_plugin_get_fun_node(uf_plugin_t* uf, term_t t) { - term_t t_rep = uf_plugin_get_term_rep(uf, t); - ptr_hmap_pair_t *v = ptr_hmap_find(&uf->fun_node_map, t_rep); - if (v == NULL) { - v = ptr_hmap_get(&uf->fun_node_map, t_rep); - fun_node_t *n = new_node(); - v->val = n; - } - - return v->val; -} - -static inline term_t uf_plugin_compute_weak_path_primary(uf_plugin_t* uf, term_t arr, - ivector_t* indices, - ivector_t* path_cond) { - const fun_node_t* a = uf_plugin_get_fun_node(uf, arr); - term_t res = NULL_TERM; - composite_term_t* t_desc = NULL; - term_table_t* terms = uf->ctx->terms; - - assert(a->p); - t_desc = update_term_desc(terms, a->pstore); - - if (eq_graph_are_equal(&uf->eq_graph, t_desc->arg[0], arr)) { - ivector_push(path_cond, _o_yices_eq(t_desc->arg[0], arr)); - res = a->pstore; - } else { - ivector_push(path_cond, _o_yices_eq(a->pstore, arr)); - res = t_desc->arg[0]; - } - - assert(a->pi == uf_plugin_get_index_from_store(uf, a->pstore)); - ivector_push(indices, a->pi); - - return res; -} - -static void uf_plugin_compute_weak_path(uf_plugin_t* uf, term_t arr1, - term_t arr2, ivector_t* indices, - ivector_t* path_cond) { - const fun_node_t* a = uf_plugin_get_fun_node(uf, arr1); - const fun_node_t* b = uf_plugin_get_fun_node(uf, arr2); - - //arr1 and arr2 must be in the same weak equivalence class - assert(get_rep(&uf->eq_graph, a) == get_rep(&uf->eq_graph, b)); - - if (a == b) { - ivector_push(path_cond, _o_yices_eq(arr1, arr2)); - return; - } - - uint32_t prim_cnt1 = count_primary(&uf->eq_graph, a); - uint32_t prim_cnt2 = count_primary(&uf->eq_graph, b); - term_t t1 = arr1; - term_t t2 = arr2; - - while (prim_cnt1 > prim_cnt2) { - t1 = uf_plugin_compute_weak_path_primary(uf, t1, indices, path_cond); - a = a->p; - prim_cnt1--; - } - - while (prim_cnt2 > prim_cnt1) { - t2 = uf_plugin_compute_weak_path_primary(uf, t2, indices, path_cond); - b = b->p; - prim_cnt2--; - } - - while (a != b) { - t1 = uf_plugin_compute_weak_path_primary(uf, t1, indices, path_cond); - a = a->p; - - t2 = uf_plugin_compute_weak_path_primary(uf, t2, indices, path_cond); - b = b->p; - } - - assert(a == b); - if (t1 != t2) { - ivector_push(path_cond, _o_yices_eq(t1, t2)); - } -} - -static term_t uf_plugin_compute_path_secondary(uf_plugin_t* uf, term_t arr, - term_t idx, - ivector_t* indices, - ivector_t* path_cond) { - term_t res = NULL_TERM; - term_table_t* terms = uf->ctx->terms; - const fun_node_t* tmp = find_secondary_node_const(&uf->eq_graph, - uf_plugin_get_fun_node(uf, arr), - idx); - - assert(tmp->sstore != NULL_TERM); - assert(tmp->pi != NULL_TERM); - assert(tmp->s); - assert(eq_graph_are_equal(&uf->eq_graph, tmp->pi, idx)); - assert(!eq_graph_are_equal(&uf->eq_graph, idx, - uf_plugin_get_index_from_store(uf, tmp->sstore))); - composite_term_t* t_desc = update_term_desc(terms, tmp->sstore); - - if (find_secondary_node_const(&uf->eq_graph, - uf_plugin_get_fun_node(uf, t_desc->arg[0]), idx) == tmp) { - uf_plugin_compute_weak_path(uf, arr, t_desc->arg[0], indices, path_cond); - res = tmp->sstore; - } else { - assert(find_secondary_node_const(&uf->eq_graph, - uf_plugin_get_fun_node(uf, tmp->sstore), idx) == tmp); - - uf_plugin_compute_weak_path(uf, arr, tmp->sstore, indices, path_cond); - res = t_desc->arg[0]; - } - - ivector_push(indices, t_desc->arg[1]); - - return res; -} - -static void uf_plugin_compute_weak_path_i(uf_plugin_t* uf, term_t arr1, - term_t arr2, term_t idx, - ivector_t* indices, - ivector_t* path_cond) { - const fun_node_t* a = uf_plugin_get_fun_node(uf, arr1); - const fun_node_t* b = uf_plugin_get_fun_node(uf, arr2); - uint32_t sec_cnt1 = count_secondary(&uf->eq_graph, a, idx); - uint32_t sec_cnt2 = count_secondary(&uf->eq_graph, b, idx); - - assert(get_rep_i(&uf->eq_graph, a, idx) == get_rep_i(&uf->eq_graph, b, idx)); - - while (sec_cnt1 > sec_cnt2) { - arr1 = uf_plugin_compute_path_secondary(uf, arr1, idx, indices, path_cond); - sec_cnt1--; - a = uf_plugin_get_fun_node(uf, arr1); - assert(count_secondary(&uf->eq_graph, a, idx) == sec_cnt1); - assert(get_rep_i(&uf->eq_graph, a, idx) == get_rep_i(&uf->eq_graph, b, idx)); - } - while (sec_cnt2 > sec_cnt1) { - arr2 = uf_plugin_compute_path_secondary(uf, arr2, idx, indices, path_cond); - sec_cnt2--; - b = uf_plugin_get_fun_node(uf, arr2); - assert(count_secondary(&uf->eq_graph, b, idx) == sec_cnt2); - assert(get_rep_i(&uf->eq_graph, a, idx) == get_rep_i(&uf->eq_graph, b, idx)); - } - - assert(sec_cnt1 == sec_cnt2); - while (find_secondary_node_const(&uf->eq_graph, a, idx) != find_secondary_node_const(&uf->eq_graph, b, idx)) { - assert(count_secondary(&uf->eq_graph, a, idx) == count_secondary(&uf->eq_graph, b, idx)); - arr1 = uf_plugin_compute_path_secondary(uf, arr1, idx, indices, path_cond); - arr2 = uf_plugin_compute_path_secondary(uf, arr2, idx, indices, path_cond); - a = uf_plugin_get_fun_node(uf, arr1); - b = uf_plugin_get_fun_node(uf, arr2); - assert(get_rep_i(&uf->eq_graph, a, idx) == get_rep_i(&uf->eq_graph, b, idx)); - } - - uf_plugin_compute_weak_path(uf, arr1, arr2, indices, path_cond); -} - -static void uf_plugin_add_diff_terms_vars(uf_plugin_t* uf, term_t arr) { - term_table_t* terms = uf->ctx->terms; - type_t arr_type = term_type(terms, arr); - type_t idx_type = function_type_domain(uf->ctx->types, arr_type, 0); - - term_t diff_fun; - int_hmap_pair_t *diff = int_hmap_find(&uf->type_to_diff, arr_type); - if (diff != NULL) { - diff_fun = diff->val; - } else { - type_t dom[] = {arr_type, arr_type}; - type_t diff_fun_type = function_type(uf->ctx->types, idx_type, 2, dom); - diff_fun = new_uninterpreted_term(terms, diff_fun_type); - - char fun_name_str[10]; - sprintf(fun_name_str, "diff_%i", uf->type_to_diff.nelems); - set_term_name(terms, diff_fun, clone_string(fun_name_str)); - - int_hmap_add(&uf->type_to_diff, arr_type, diff_fun); - int_hset_add(&uf->diff_funs, diff_fun); - } - - variable_db_get_variable(uf->ctx->var_db, arr); - uint32_t i; - for (i = 0; i < uf->array_terms.size; ++ i) { - term_t arr2 = uf->array_terms.data[i]; - if (arr == arr2) { - continue; - } - - type_t arr2_type = term_type(terms, arr2); - if (arr_type == arr2_type) { - variable_db_get_variable(uf->ctx->var_db, arr2); - - term_t args[2]; - if (arr < arr2) { - args[0] = arr; - args[1] = arr2; - } else { - args[0] = arr2; - args[1] = arr; - } - - term_t diff_term = app_term(terms, diff_fun, 2, args); - term_t select_arg[] = {diff_term}; - term_t diff_select1 = app_term(terms, arr, 1, select_arg); - term_t diff_select2 = app_term(terms, arr2, 1, select_arg); - variable_db_get_variable(uf->ctx->var_db, diff_term); - variable_db_get_variable(uf->ctx->var_db, diff_select1); - variable_db_get_variable(uf->ctx->var_db, diff_select2); - - ivector_push(&uf->select_terms, diff_select1); - ivector_push(&uf->select_terms, diff_select2); - } - } -} - static void uf_plugin_add_to_eq_graph(uf_plugin_t* uf, term_t t, bool record) { @@ -729,22 +221,18 @@ void uf_plugin_add_to_eq_graph(uf_plugin_t* uf, term_t t, bool record) { case APP_TERM: t_desc = app_term_desc(terms, t); eq_graph_add_ufun_term(&uf->eq_graph, t, t_desc->arg[0], t_desc->arity - 1, t_desc->arg + 1); - if (!int_hset_member(&uf->diff_funs, t_desc->arg[0])) { - ivector_push(&uf->select_terms, t); - } + weq_graph_add_select_term(&uf->weq_graph, t); break; case UPDATE_TERM: - if (USE_ARRAY_DIFF) { - uf_plugin_add_diff_terms_vars(uf, t); - } t_desc = update_term_desc(terms, t); eq_graph_add_ifun_term(&uf->eq_graph, t, UPDATE_TERM, t_desc->arity, t_desc->arg); // remember array term - ivector_push(&uf->array_terms, t); + weq_graph_add_array_term(&uf->weq_graph, t); // remember select terms term_t r1 = app_term(terms, t, t_desc->arity - 2, t_desc->arg + 1); variable_db_get_variable(uf->ctx->var_db, r1); - ivector_push(&uf->select_terms, r1); + weq_graph_add_select_term(&uf->weq_graph, r1); + // TODO: can we check if the domain is finite? if so, we can guard this extra select term /* term_t r2 = app_term(terms, t_desc->arg[0], t_desc->arity - 2, t_desc->arg + 1); */ /* variable_db_get_variable(uf->ctx->var_db, r2); */ /* ivector_push(&uf->select_terms, r2); */ @@ -766,15 +254,12 @@ void uf_plugin_add_to_eq_graph(uf_plugin_t* uf, term_t t, bool record) { eq_graph_add_ifun_term(&uf->eq_graph, t, EQ_TERM, 2, t_desc->arg); // remember array terms if (is_function_term(terms, t_desc->arg[0])) { - ivector_push(&uf->array_eq_terms, t); + weq_graph_add_array_eq_term(&uf->weq_graph, t); } uint32_t i; for (i = 0; i < 2; ++ i) { if (is_function_term(terms, t_desc->arg[i])) { - if (USE_ARRAY_DIFF) { - uf_plugin_add_diff_terms_vars(uf, t_desc->arg[i]); - } - ivector_push(&uf->array_terms, t_desc->arg[i]); + weq_graph_add_array_term(&uf->weq_graph, t_desc->arg[i]); } } break; @@ -832,526 +317,46 @@ void uf_plugin_new_term_notify(plugin_t* plugin, term_t t, trail_token_t* prop) // eagerly add array idx lemma if (t_kind == UPDATE_TERM) { - composite_term_t* t_desc = update_term_desc(terms, t); - term_t r = app_term(terms, t, t_desc->arity - 2, t_desc->arg + 1); - variable_db_get_variable(uf->ctx->var_db, r); - term_t r_lemma = _o_yices_eq(r, t_desc->arg[t_desc->arity - 1]); + term_t r_lemma = weq_graph_get_array_update_idx_lemma(&uf->weq_graph, t); prop->definition_lemma(prop, r_lemma, t); - (*uf->stats.array_update1_axioms) ++; - } -} - -static -bool uf_plugin_array_idx_check(uf_plugin_t* uf, trail_token_t* prop, - const ivector_t* array_terms) { - term_table_t* terms = uf->ctx->terms; - uint32_t i; - - // array-idx lemma - for (i = 0; i < array_terms->size; ++i) { - term_t arr = array_terms->data[i]; - term_kind_t t_kind = term_kind(terms, arr); - if (t_kind == UPDATE_TERM) { - composite_term_t* t_desc = update_term_desc(terms, arr); - term_t r = app_term(terms, arr, t_desc->arity - 2, t_desc->arg + 1); - term_t v = t_desc->arg[t_desc->arity - 1]; - if (!eq_graph_term_has_value(&uf->eq_graph, r) || - !eq_graph_term_has_value(&uf->eq_graph, v)) - continue; - if (!eq_graph_are_equal(&uf->eq_graph, r, v)) { - add_if_not_true_term(&uf->conflict, _o_yices_neq(r, v)); - - if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { - ctx_trace_printf(uf->ctx, ">1 Array conflict 1 BEGIN\n"); - uint32_t k; - for (k = 0; k < uf->conflict.size; ++ k) { - ctx_trace_term(uf->ctx, uf->conflict.data[k]); - } - ctx_trace_printf(uf->ctx, ">1 Array conflict 1 END\n"); - } - return false; - } - } - } - return true; -} - -static -bool uf_plugin_array_weak_eq_i(uf_plugin_t* uf, term_t arr1, term_t arr2, - term_t idx, - ivector_t* indices, ivector_t* path_cond) { - bool res = false; - uint32_t old_indices_size, old_path_cond_size; - - const fun_node_t* fn_arr1 = get_rep_i(&uf->eq_graph, - uf_plugin_get_fun_node(uf, arr1), idx); - const fun_node_t* fn_arr2 = get_rep_i(&uf->eq_graph, - uf_plugin_get_fun_node(uf, arr2), idx); - assert(fn_arr1 != NULL); - assert(fn_arr2 != NULL); - - if (indices) { - old_indices_size = indices->size; - } - if (path_cond) { - old_path_cond_size = path_cond->size; - } - - if (fn_arr1 == fn_arr2) { - uint32_t k; - - res = true; - uf_plugin_compute_weak_path_i(uf, arr1, arr2, idx, indices, path_cond); - - // add indices - for (k = old_indices_size; k < indices->size; ++k) { - if (eq_graph_are_equal(&uf->eq_graph, idx, indices->data[k])) { - res = false; - break; - } - } - } - - if (!res && indices) { - ivector_shrink(indices, old_indices_size); - } - - if (!res && path_cond) { - ivector_shrink(path_cond, old_path_cond_size); - } - - return res; -} - -static -bool uf_plugin_array_weak_congruence_i(uf_plugin_t* uf, const ivector_t* select_terms, - term_t arr1, term_t arr2, - term_t idx, ivector_t* path_cond) { - assert(eq_graph_term_has_value(&uf->eq_graph, idx)); - - bool res = false; - term_table_t* terms = uf->ctx->terms; - - uint32_t i, j, k; - uint32_t old_path_cond_size; - - if (path_cond) { - old_path_cond_size = path_cond->size; - } - - ivector_shrink(&uf->path_indices1, 0); - if (uf_plugin_array_weak_eq_i(uf, arr1, arr2, idx, &uf->path_indices1, path_cond)) { - for (k =0; k < uf->path_indices1.size; ++k) { - assert(idx != uf->path_indices1.data[k]); - if (eq_graph_are_equal(&uf->eq_graph, idx, uf->path_indices1.data[k])) { - goto nextcheck; - } - } - - res = true; - - for (k =0; k < uf->path_indices1.size; ++k) { - add_if_not_true_term(path_cond, _o_yices_neq(idx, uf->path_indices1.data[k])); - } - - goto done; - } - - nextcheck: - if (path_cond) { - ivector_shrink(path_cond, old_path_cond_size); - } - - for (i = 0; !res && i < select_terms->size; ++ i) { - term_t t_i = select_terms->data[i]; - type_t t_i_type = term_type(terms, t_i); - assert(variable_db_get_variable_if_exists(uf->ctx->var_db, t_i) != variable_null); - - ivector_shrink(&uf->path_indices1, 0); - composite_term_t* e_i_desc = app_term_desc(terms, t_i); - if (!eq_graph_are_equal(&uf->eq_graph, e_i_desc->arg[1], idx) || - !uf_plugin_array_weak_eq_i(uf, arr1, e_i_desc->arg[0], idx, &uf->path_indices1, path_cond)) { - continue; - } - - uint32_t size1 = uf->path_indices1.size; - uint32_t size2; - if (path_cond) { - size2 = path_cond->size; - } - - for (j = 0; !res && j < select_terms->size; ++ j) { - term_t t_j = select_terms->data[j]; - type_t t_j_type = term_type(terms, t_j); - if (t_i_type != t_j_type || - !eq_graph_are_equal(&uf->eq_graph, t_i, t_j)) { - continue; - } - - ivector_shrink(&uf->path_indices1, size1); - if (path_cond) { - ivector_shrink(path_cond, size2); - } - - composite_term_t* e_j_desc = app_term_desc(terms, t_j); - if (!eq_graph_are_equal(&uf->eq_graph, e_j_desc->arg[1], idx) || - !uf_plugin_array_weak_eq_i(uf, arr2, e_j_desc->arg[0], idx, &uf->path_indices1, path_cond)) { - continue; - } - - res = true; - if (path_cond) { - // Conditions of arr1 weakly-eq-i to a and arr2 weakly-eq-i to b' - for (k = 0; k < uf->path_indices1.size; ++k) { - if (eq_graph_are_equal(&uf->eq_graph, uf->path_indices1.data[k], idx)) { - res = false; - break; - } - } - - if (res) { - for (k = 0; k < uf->path_indices1.size; ++k) { - add_if_not_true_term(path_cond, _o_yices_neq(idx, uf->path_indices1.data[k])); - } - - add_if_not_true_term(path_cond, _o_yices_eq(idx, e_i_desc->arg[1])); - add_if_not_true_term(path_cond, _o_yices_eq(t_i, t_j)); - add_if_not_true_term(path_cond, _o_yices_eq(idx, e_j_desc->arg[1])); - - goto done; - } - } - } - } - - done: - if (!res && path_cond) { - ivector_shrink(path_cond, old_path_cond_size); } - - return res; } static -bool uf_plugin_array_ext_lemma(uf_plugin_t* uf, trail_token_t* prop, - term_t arr1, term_t arr2, - const ivector_t* select_terms) { - bool res = true; - term_table_t* terms = uf->ctx->terms; - - type_t arr1_type = term_type(terms, arr1); - type_t arr2_type = term_type(terms, arr2); - if (arr1 == arr2 || arr1_type != arr2_type || - eq_graph_are_equal(&uf->eq_graph, arr1, arr2)) { - return res; - } - - const fun_node_t* fn_arr1 = get_rep(&uf->eq_graph, uf_plugin_get_fun_node(uf, arr1)); - const fun_node_t* fn_arr2 = get_rep(&uf->eq_graph, uf_plugin_get_fun_node(uf, arr2)); - - if (fn_arr1 == fn_arr2) { - bool ok = true; - uint32_t k; - - ivector_shrink(&uf->path_cond, 0); - ivector_shrink(&uf->path_indices2, 0); - uf_plugin_compute_weak_path(uf, arr1, arr2, &uf->path_indices2, &uf->path_cond); - - ivector_remove_duplicates(&uf->path_indices2); - for (k = 0; k < uf->path_indices2.size; ++ k) { - term_t idx = uf->path_indices2.data[k]; - if (!uf_plugin_array_weak_congruence_i(uf, select_terms, arr1, arr2, - idx, &uf->path_cond)) { - ok = false; - break; - } - } - - if (ok) { - res = false; - - for (k = 0; k < uf->path_cond.size; ++k) { - add_if_not_true_term(&uf->conflict, uf->path_cond.data[k]); - } - - ivector_push(&uf->conflict, _o_yices_neq(arr1, arr2)); - - ivector_remove_duplicates(&uf->conflict); - - if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { - ctx_trace_printf(uf->ctx, ">2 Array conflict BEGIN 2\n"); - for (k = 0; k < uf->conflict.size; ++ k) { - ctx_trace_term(uf->ctx, uf->conflict.data[k]); - } - ctx_trace_printf(uf->ctx, ">2 Array conflict END 2\n"); - } - - assert(uf->conflict.size > 1); - (*uf->stats.array_ext_axioms) ++; - } - } - - return res; -} - -static -bool uf_plugin_array_ext_check(uf_plugin_t* uf, trail_token_t* prop, - const ivector_t* array_eq_terms, - const ivector_t* array_terms, - const ivector_t* select_terms) { - uint32_t i, j; - bool res = true; - - term_table_t* terms = uf->ctx->terms; - composite_term_t* t_desc = NULL; - term_t arr1, arr2; - int_hset_t seen; - - init_int_hset(&seen, 0); - - for (i = 0; res && i < array_eq_terms->size; ++i) { - if (!int_hset_member(&seen, array_eq_terms->data[i])) { - t_desc = eq_term_desc(terms, array_eq_terms->data[i]); - arr1 = t_desc->arg[0]; - arr2 = t_desc->arg[1]; - - res = uf_plugin_array_ext_lemma(uf, prop, arr1, arr2, select_terms); - int_hset_add(&seen, array_eq_terms->data[i]); - } - } - - for (i = 0; res && i < array_terms->size; ++i) { - arr1 = array_terms->data[i]; - - for (j = i + 1; res && j < array_terms->size; ++j) { - arr2 = array_terms->data[j]; - if (!int_hset_member(&seen, _o_yices_eq(arr1, arr2))) { - res = uf_plugin_array_ext_lemma(uf, prop, arr1, arr2, select_terms); - int_hset_add(&seen, _o_yices_eq(arr1, arr2)); - } - } - } - - delete_int_hset(&seen); - - return res; -} - -static -bool uf_plugin_array_ext_diff_lemma(uf_plugin_t* uf, trail_token_t* prop, - term_t arr1, term_t arr2) { - - term_table_t* terms = uf->ctx->terms; - type_t arr1_type = term_type(terms, arr1); - term_t diff_fun; - int_hmap_pair_t *diff = int_hmap_find(&uf->type_to_diff, arr1_type); - if (diff != NULL) { - diff_fun = diff->val; - } else { - assert(false); - } - - type_t arr2_type = term_type(terms, arr2); - if (arr1 == arr2 || - !eq_graph_term_has_value(&uf->eq_graph, arr1) || - !eq_graph_term_has_value(&uf->eq_graph, arr2) || - arr1_type != arr2_type) { - return true; - } - - term_t args[2]; - if (arr1 < arr2) { - args[0] = arr1; - args[1] = arr2; - } else { - args[0] = arr2; - args[1] = arr1; - } - term_t diff_term = app_term(terms, diff_fun, 2, args); - term_t select_arg[] = {diff_term}; - term_t diff_select1 = app_term(terms, arr1, 1, select_arg); - term_t diff_select2 = app_term(terms, arr2, 1, select_arg); - if (!eq_graph_term_has_value(&uf->eq_graph, diff_term) || - !eq_graph_term_has_value(&uf->eq_graph, diff_select1) || - !eq_graph_term_has_value(&uf->eq_graph, diff_select2)) { - return true; - } - - if (!eq_graph_are_equal(&uf->eq_graph, arr1, arr2) && - eq_graph_are_equal(&uf->eq_graph, diff_select1, diff_select2)) { - - add_if_not_true_term(&uf->conflict, _o_yices_neq(arr1, arr2)); - add_if_not_true_term(&uf->conflict, _o_yices_eq(diff_select1, diff_select2)); - - ivector_remove_duplicates(&uf->conflict); - - if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { - ctx_trace_printf(uf->ctx, ">2 Array conflict 2 BEGIN\n"); - uint32_t k; - for (k = 0; k < uf->conflict.size; ++ k) { - ctx_trace_term(uf->ctx, uf->conflict.data[k]); - } - ctx_trace_printf(uf->ctx, ">2 Array conflict 2 END\n"); - } - - assert(uf->conflict.size > 1); - (*uf->stats.array_ext_axioms) ++; - - return false; - } - - return true; -} - -static -bool uf_plugin_array_ext_diff_check(uf_plugin_t* uf, trail_token_t* prop, - const ivector_t* array_eq_terms, - const ivector_t* array_terms) { - - bool res = true; - term_table_t* terms = uf->ctx->terms; - uint32_t i, j; - - if (array_eq_terms) { - composite_term_t* t_desc = NULL; - for (i = 0; res && i < array_eq_terms->size; ++i) { - t_desc = eq_term_desc(terms, array_eq_terms->data[i]); - term_t arr1 = t_desc->arg[0]; - term_t arr2 = t_desc->arg[1]; - - res = uf_plugin_array_ext_diff_lemma(uf, prop, arr1, arr2); - } - } +void uf_plugin_propagate(plugin_t* plugin, trail_token_t* prop) { - if (array_terms) { - for (i = 0; res && i < array_terms->size; ++i) { - term_t arr1 = array_terms->data[i]; - assert(variable_db_get_variable_if_exists(uf->ctx->var_db, arr1) != variable_null); - if (!eq_graph_term_has_value(&uf->eq_graph, arr1)) { - continue; - } + uf_plugin_t* uf = (uf_plugin_t*) plugin; - for (j = i + 1; res && j < array_terms->size; ++j) { - term_t arr2 = array_terms->data[j]; - res = uf_plugin_array_ext_diff_lemma(uf, prop, arr1, arr2); - } - } + if (ctx_trace_enabled(uf->ctx, "uf_plugin")) { + ctx_trace_printf(uf->ctx, "uf_plugin_propagate()\n"); } - return res; -} - -static -bool uf_plugin_array_read_over_write_check(uf_plugin_t* uf, trail_token_t* prop, - const ivector_t* select_terms) { - term_table_t* terms = uf->ctx->terms; - uint32_t i, j, k; - - // generalized read-over-write lemma - for (i = 0; i < select_terms->size; ++ i) { - term_t t_i = select_terms->data[i]; - type_t t_i_type = term_type(terms, t_i); - assert(variable_db_get_variable_if_exists(uf->ctx->var_db, t_i) != variable_null); - composite_term_t* e_i_desc = app_term_desc(terms, t_i); - - for (j = i + 1; j < select_terms->size; ++ j) { - term_t t_j = select_terms->data[j]; - type_t t_j_type = term_type(terms, t_j); - composite_term_t* e_j_desc = app_term_desc(terms, t_j); - if (t_i == t_j || - t_i_type != t_j_type || - !eq_graph_are_equal(&uf->eq_graph, e_i_desc->arg[1], e_j_desc->arg[1]) || - eq_graph_are_equal(&uf->eq_graph, t_i, t_j)) { - continue; - } - - ivector_shrink(&uf->path_indices1, 0); - ivector_shrink(&uf->path_cond, 0); - - if (uf_plugin_array_weak_eq_i(uf, e_i_desc->arg[0], e_j_desc->arg[0], - e_i_desc->arg[1], &uf->path_indices1, &uf->path_cond)) { - // found conflict - assert(uf->conflict.size == 0); - - bool ok = true; - for (k = 0; k < uf->path_indices1.size; ++ k) { - assert(uf->path_indices1.data[k] != e_i_desc->arg[1]); - if (eq_graph_are_equal(&uf->eq_graph, - e_i_desc->arg[1], uf->path_indices1.data[k])) { - ok = false; - break; - } - - add_if_not_true_term(&uf->conflict, - _o_yices_neq(e_i_desc->arg[1], uf->path_indices1.data[k])); - } - - if (!ok) { - ivector_reset(&uf->conflict); - } else { - for (k = 0; k < uf->path_cond.size; ++k) { - add_if_not_true_term(&uf->conflict, uf->path_cond.data[k]); - } - - add_if_not_true_term(&uf->conflict, _o_yices_eq(e_i_desc->arg[1], e_j_desc->arg[1])); - add_if_not_true_term(&uf->conflict, _o_yices_neq(t_i, t_j)); - - ivector_remove_duplicates(&uf->conflict); - - if (ctx_trace_enabled(uf->ctx, "uf_plugin::array")) { - ctx_trace_printf(uf->ctx, ">3 Array conflict BEGIN 3\n"); - for (k = 0; k < uf->conflict.size; ++ k) { - ctx_trace_term(uf->ctx, uf->conflict.data[k]); - } - ctx_trace_printf(uf->ctx, ">3 Array conflict END 3\n"); - } - - assert(uf->conflict.size > 1); - (*uf->stats.array_update2_axioms) ++; - - goto done; - } - } - } + // If we're not watching anything, we just ignore + if (eq_graph_term_size(&uf->eq_graph) == 0) { + return; } - done: - return uf->conflict.size == 0; -} - -static -void uf_plugin_array_build_weak_eq_graph(uf_plugin_t* uf, const ivector_t* array_terms) { - term_table_t* terms = uf->ctx->terms; - uint32_t i; + // Propagate known terms + eq_graph_propagate_trail(&uf->eq_graph); + bool eq_propagated = uf_plugin_process_eq_graph_propagations(uf, prop); - // clear the fun node map - // we start from a fresh weak equivalence graph - uf_plugin_clear_fun_node_map(uf); - - // build the graph - for (i = 0; i < array_terms->size; ++ i) { - term_t t = array_terms->data[i]; - term_kind_t t_kind = term_kind(terms, t); - assert(is_function_term(terms, t)); - assert(t_kind == UNINTERPRETED_TERM || t_kind == UPDATE_TERM); - - fun_node_t *b = uf_plugin_get_fun_node(uf, t); - if (t_kind == UPDATE_TERM) { - composite_term_t* t_desc = update_term_desc(terms, t); - fun_node_t *a = uf_plugin_get_fun_node(uf, t_desc->arg[0]); - term_t idx = t_desc->arg[1]; - add_store(uf, a, b, idx, t); - } + // Check for conflicts + if (uf->eq_graph.in_conflict) { + // Report conflict + prop->conflict(prop); + (*uf->stats.conflicts) ++; + // Construct the conflict + eq_graph_get_conflict(&uf->eq_graph, &uf->conflict, NULL, &uf->tmp); + uf_plugin_bump_terms_and_reset(uf, &uf->tmp); + statistic_avg_add(uf->stats.avg_conflict_size, uf->conflict.size); + return; } -} -static -void uf_plugin_array_propagations(uf_plugin_t* uf, trail_token_t* prop) { - - // optimization: skip array checks if not all terms (present in the - // eq_graph) have a value assigned in the graph + // optimization: skip array checks if some terms, that are present + // in the eq_graph, don't have an assigned value. variable_db_t* var_db = uf->ctx->var_db; term_t t = NULL_TERM; + bool all_assigned = true; int_hmap_pair_t* it; for (it = int_hmap_first_record(&var_db->term_to_variable_map); it != NULL; @@ -1359,119 +364,35 @@ void uf_plugin_array_propagations(uf_plugin_t* uf, trail_token_t* prop) { t = it->key; if (t >= 0 && eq_graph_has_term(&uf->eq_graph, t) && !eq_graph_term_has_value(&uf->eq_graph, t)) { - return; - } - } - - bool ok = true; - - ivector_t array_eq_terms, array_terms, select_terms; - - init_ivector(&array_eq_terms, 0); - ivector_copy(&array_eq_terms, uf->array_eq_terms.data, uf->array_eq_terms.size); - ivector_remove_duplicates(&array_eq_terms); - - init_ivector(&array_terms, 0); - ivector_copy(&array_terms, uf->array_terms.data, uf->array_terms.size); - ivector_remove_duplicates(&array_terms); - - init_ivector(&select_terms, 0); - ivector_copy(&select_terms, uf->select_terms.data, uf->select_terms.size); - ivector_remove_duplicates(&select_terms); - - //ok = uf_plugin_array_idx_check(uf, prop, &array_terms); - - // check if updates are present. - bool updates_present = false; - uint32_t i; - term_table_t* terms = uf->ctx->terms; - for (i = 0; ok && i < array_terms.size; ++i) { - if (term_kind(terms, array_terms.data[i]) == UPDATE_TERM) { - updates_present = true; + all_assigned = false; + break; } } - - (*uf->stats.array_terms) = array_terms.size; - (*uf->stats.select_terms) = select_terms.size; - - if (updates_present) { - if (USE_ARRAY_DIFF && ok) { - ok = uf_plugin_array_ext_diff_check(uf, prop, &array_eq_terms, NULL); - } - - if (ok) { - uf_plugin_array_build_weak_eq_graph(uf, &array_terms); - ok = uf_plugin_array_read_over_write_check(uf, prop, &select_terms); - } - - if (ok) { - if (USE_ARRAY_DIFF) { - ok = uf_plugin_array_ext_diff_check(uf, prop, NULL, &array_terms); - } else { - ok = uf_plugin_array_ext_check(uf, prop, &array_eq_terms, &array_terms, &select_terms); - } - } - + + // skip array propagation if the EQ has done propgation + // check array propgation only if array terms are present + if (!eq_propagated && all_assigned) { + assert(uf->conflict.size == 0); + weq_graph_check_array_conflict(&uf->weq_graph, &uf->conflict); if (uf->conflict.size > 0) { // Report conflict prop->conflict(prop); (*uf->stats.conflicts) ++; // extract terms used in the conflict - /* for (i = 0; i < uf->conflict.size; ++i) { */ - /* t = uf->conflict.data[i]; */ + /* for (i = 0; i < weq->conflict.size; ++i) { */ + /* t = weq->conflict.data[i]; */ /* if (term_kind(terms, t) == EQ_TERM) { */ /* t_desc = eq_term_desc(terms, t); */ - /* int_mset_add(&uf->tmp, t_desc->arg[0]); */ - /* int_mset_add(&uf->tmp, t_desc->arg[1]); */ + /* int_mset_add(&weq->tmp, t_desc->arg[0]); */ + /* int_mset_add(&weq->tmp, t_desc->arg[1]); */ /* } else { */ /* assert(false); */ /* } */ /* } */ - /* uf_plugin_bump_terms_and_reset(uf, &uf->tmp); */ + /* weq_graph_bump_terms_and_reset(weq, &weq->tmp); */ statistic_avg_add(uf->stats.avg_conflict_size, uf->conflict.size); } } - - delete_ivector(&select_terms); - delete_ivector(&array_terms); - delete_ivector(&array_eq_terms); -} - -static -void uf_plugin_propagate(plugin_t* plugin, trail_token_t* prop) { - - uf_plugin_t* uf = (uf_plugin_t*) plugin; - - if (ctx_trace_enabled(uf->ctx, "uf_plugin")) { - ctx_trace_printf(uf->ctx, "uf_plugin_propagate()\n"); - } - - // If we're not watching anything, we just ignore - if (eq_graph_term_size(&uf->eq_graph) == 0) { - return; - } - - // Propagate known terms - eq_graph_propagate_trail(&uf->eq_graph); - bool eq_propagated = uf_plugin_process_eq_graph_propagations(uf, prop); - - // Check for conflicts - if (uf->eq_graph.in_conflict) { - // Report conflict - prop->conflict(prop); - (*uf->stats.conflicts) ++; - // Construct the conflict - eq_graph_get_conflict(&uf->eq_graph, &uf->conflict, NULL, &uf->tmp); - uf_plugin_bump_terms_and_reset(uf, &uf->tmp); - statistic_avg_add(uf->stats.avg_conflict_size, uf->conflict.size); - return; - } - - // skip array propagation if the EQ has done propgation - // check array propgation only if array terms are present - if (!eq_propagated && uf->array_terms.size > 0) { - uf_plugin_array_propagations(uf, prop); - } } static @@ -1481,11 +402,9 @@ void uf_plugin_push(plugin_t* plugin) { // Push the int variable values scope_holder_push(&uf->scope, &uf->eq_graph_addition_trail.size, - &uf->array_terms.size, - &uf->array_eq_terms.size, - &uf->select_terms.size, NULL); + weq_graph_push(&uf->weq_graph); eq_graph_push(&uf->eq_graph); } @@ -1494,18 +413,13 @@ void uf_plugin_pop(plugin_t* plugin) { uf_plugin_t* uf = (uf_plugin_t*) plugin; uint32_t old_eq_graph_addition_trail_size; - uint32_t t1, t2, t3; // Pop the int variable values scope_holder_pop(&uf->scope, &old_eq_graph_addition_trail_size, - &t1, &t2, &t3, NULL); - ivector_shrink(&uf->array_terms, t1); - ivector_shrink(&uf->array_eq_terms, t2); - ivector_shrink(&uf->select_terms, t3); - + weq_graph_pop(&uf->weq_graph); eq_graph_pop(&uf->eq_graph); // Re-add all the terms to eq graph diff --git a/src/mcsat/weq/weak_eq_graph.c b/src/mcsat/weq/weak_eq_graph.c new file mode 100644 index 000000000..0b2c19be0 --- /dev/null +++ b/src/mcsat/weq/weak_eq_graph.c @@ -0,0 +1,1312 @@ +/* + * This file is part of the Yices SMT Solver. + * Copyright (C) 2017 SRI International. + * + * Yices is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * Yices is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Yices. If not, see . + */ + +#include "weak_eq_graph.h" + +#include "mcsat/tracing.h" + +#include "utils/refcount_strings.h" + + +#define USE_ARRAY_DIFF 0 //experimental + +// declaration +void weq_graph_stats_init(weq_graph_t* weq); + +void weq_graph_construct(weq_graph_t* weq, plugin_context_t* ctx, eq_graph_t* eq) { + weq->ctx = ctx; + scope_holder_construct(&weq->scope); + + weq->eq_graph = eq; + + init_ivector(&weq->array_terms, 0); + init_ivector(&weq->array_eq_terms, 0); + init_ivector(&weq->select_terms, 0); + + init_int_hmap(&weq->type_to_diff, 0); + init_int_hset(&weq->diff_funs, 0); + init_ptr_hmap(&weq->fun_node_map, 0); + + init_int_hmap(&weq->fun_val_term_map, 0); + init_ivector(&weq->path_cond, 0); + init_ivector(&weq->path_indices1, 0); + init_ivector(&weq->path_indices2, 0); + + weq_graph_stats_init(weq); +} + +void weq_graph_destruct(weq_graph_t* weq) { + scope_holder_destruct(&weq->scope); + + delete_ivector(&weq->array_terms); + delete_ivector(&weq->array_eq_terms); + delete_ivector(&weq->select_terms); + + delete_int_hmap(&weq->type_to_diff); + delete_int_hset(&weq->diff_funs); + delete_ivector(&weq->path_cond); + delete_ivector(&weq->path_indices1); + delete_ivector(&weq->path_indices2); + + weq_graph_clear(weq); + delete_ptr_hmap(&weq->fun_node_map); + delete_int_hmap(&weq->fun_val_term_map); +} + +void weq_graph_push(weq_graph_t* weq) { + scope_holder_push(&weq->scope, + &weq->array_terms.size, + &weq->array_eq_terms.size, + &weq->select_terms.size, + NULL); +} + +void weq_graph_pop(weq_graph_t* weq) { + uint32_t t1, t2, t3; + + // Pop the int variable values + scope_holder_pop(&weq->scope, + &t1, &t2, &t3, + NULL); + + ivector_shrink(&weq->array_terms, t1); + ivector_shrink(&weq->array_eq_terms, t2); + ivector_shrink(&weq->select_terms, t3); +} + +void weq_graph_stats_init(weq_graph_t* weq) { + weq->stats.array_terms = statistics_new_int(weq->ctx->stats, "mcsat::uf::array_terms"); + weq->stats.select_terms = statistics_new_int(weq->ctx->stats, "mcsat::uf::select_terms"); + weq->stats.array_update1_axioms = statistics_new_int(weq->ctx->stats, "mcsat::uf::array_update1_axioms"); + weq->stats.array_update2_axioms = statistics_new_int(weq->ctx->stats, "mcsat::uf::array_update2_axioms"); + weq->stats.array_ext_axioms = statistics_new_int(weq->ctx->stats, "mcsat::uf::array_ext_axioms"); + +} + +// declaration +static void weq_graph_add_diff_terms_vars(weq_graph_t* weq, term_t arr); + +// save array (vars and updates) terms +void weq_graph_add_array_term(weq_graph_t* weq, term_t arr) { + if (USE_ARRAY_DIFF) { + weq_graph_add_diff_terms_vars(weq, arr); + } + ivector_push(&weq->array_terms, arr); +} + +// save array equality terms -- present in the formula +void weq_graph_add_array_eq_term(weq_graph_t* weq, term_t arr_eq) { + ivector_push(&weq->array_eq_terms, arr_eq); +} + +// save select terms +void weq_graph_add_select_term(weq_graph_t* weq, term_t sel) { + term_table_t* terms = weq->ctx->terms; + composite_term_t* t_desc = app_term_desc(terms, sel); + if (!weq_graph_has_diff_fun(weq, t_desc->arg[0])) { + ivector_push(&weq->select_terms, sel); + } +} + +// save diff function (not a diff function application) +void weq_graph_add_diff_fun(weq_graph_t* weq, term_t diff_fun) { + int_hset_add(&weq->diff_funs, diff_fun); +} + +// check if diff function is present in the diff_funs set +bool weq_graph_has_diff_fun(weq_graph_t* weq, term_t diff_fun) { + return int_hset_member(&weq->diff_funs, diff_fun); +} + + +/* Weakly equivalant graph node, where + * p = primary node + * pstore = update term that created the primary edge (the edge between this node and p) + * pi = index in the update term (pstore) + * s = secondary node + * sstore = update term that created the secondary edge (the edge between this node and s) + * + * see Weakly Equivalent Arrays paper: + * https://link.springer.com/chapter/10.1007/978-3-319-24246-0_8 + */ +typedef struct weq_graph_node_s { + struct weq_graph_node_s* p; + term_t pstore; + term_t pi; + struct weq_graph_node_s* s; + term_t sstore; +} weq_graph_node_t; + +/* Clear the weq_graph + * Free the memory used for the graph nodes + * Clear the cache for the graph nodes + * Clear the cache for the vales to terms map (used to find a rep term) + */ +void weq_graph_clear(weq_graph_t* weq) { + ptr_hmap_pair_t *p; + for (p = ptr_hmap_first_record(&weq->fun_node_map); + p != NULL; + p = ptr_hmap_next_record(&weq->fun_node_map, p)) { + safe_free((weq_graph_node_t *) p->val); + } + ptr_hmap_reset(&weq->fun_node_map); + int_hmap_reset(&weq->fun_val_term_map); +} + +/* Create a new weq_graph node + */ +static inline weq_graph_node_t *weq_new_node() { + weq_graph_node_t *n = safe_malloc(sizeof(weq_graph_node_t)); + n->p = NULL; + n->pstore = NULL_TERM; + n->pi = NULL_TERM; + n->s = NULL; + n->sstore = NULL_TERM; + return n; +} + +/* Find the weakly-equivalent root node of a given weq_graph node + */ +static const weq_graph_node_t* weq_graph_get_rep(const weq_graph_node_t* n) { + const weq_graph_node_t* res = n; + // root (rep) node doesn't have a primary edge + while (res->p != NULL) { + res = res->p; + } + return res; +} + +/* Count the number of primary edges from a given node n to its root + * node. + */ +static uint32_t count_primary(const weq_graph_node_t* n) { + uint32_t res = 0; + const weq_graph_node_t* tmp = n; + + while (tmp->p != NULL) { + tmp = tmp->p; + res++; + } + return res; +} + +/* Find the weak-equivalent root node (weak-i rep node) of the weak + * path on index idx. The weak path on index idx doesn't mask on idx, + * i.e. the indices in the updates present on the edges of the path + * are not equivalent to idx. + */ +static const weq_graph_node_t* weq_graph_get_rep_i(const weq_graph_t* weq, + const weq_graph_node_t* n, + const term_t idx) { + const weq_graph_node_t* res = n; + while (res->p != NULL) { + if (eq_graph_are_equal(weq->eq_graph, res->pi, idx)) { + if (res->s == NULL) { + // no secondary edge means that we have found the node + break; + } + res = res->s; + } else { + res = res->p; + } + } + return res; +} + +/* Count the number of nodes that have primary edges masking the index + * idx. + */ +static +uint32_t weq_graph_count_secondary(const weq_graph_t* weq, const weq_graph_node_t* n, + const term_t idx) { + uint32_t res = 0; + const weq_graph_node_t* tmp = n; + while (tmp->p != NULL) { + if (eq_graph_are_equal(weq->eq_graph, tmp->pi, idx)) { + if (tmp->s == NULL) { + break; + } + tmp = tmp->s; + res++; + } else { + tmp = tmp->p; + } + } + return res; +} + +/* Find the next node with primary edge masking index idx. + */ +static +weq_graph_node_t* weq_graph_find_secondary_node(weq_graph_t* weq, + weq_graph_node_t* n, term_t idx) { + weq_graph_node_t* res = n; + while (res->p != NULL && !eq_graph_are_equal(weq->eq_graph, res->pi, idx)) { + res = res->p; + } + return res; +} + +/* const version of the weq_graph_find_secondary_node + */ +static +const weq_graph_node_t* weq_graph_find_secondary_node_const(weq_graph_t* weq, + const weq_graph_node_t* n, + term_t idx) { + const weq_graph_node_t* res = n; + while (res->p != NULL && !eq_graph_are_equal(weq->eq_graph, res->pi, idx)) { + res = res->p; + } + return res; +} + +/* helper function to extract index from an update term + */ +static inline +term_t weq_graph_get_index_from_store(weq_graph_t* weq, term_t store) { + term_table_t* terms = weq->ctx->terms; + assert(term_kind(terms, store) == UPDATE_TERM); + composite_term_t* t_desc = update_term_desc(terms, store); + return t_desc->arg[1]; +} + +/* add t to vec if t is not the true term + */ +static inline +void add_if_not_true_term(ivector_t* vec, term_t t) { + if (t != true_term) { + ivector_push(vec, t); + } +} + +/* make the given node weak-i representative, by inverting the + * secondary edges + */ +static void weq_graph_make_rep_i(weq_graph_t* weq, weq_graph_node_t* n) { + if (n->s == NULL) { + return; + } + + weq_graph_node_t* prev = n; + weq_graph_node_t* next = n->s; + term_t prev_store = n->sstore; + term_t idx = n->pi; + weq_graph_node_t* tmp = NULL; + term_t tmp_sec_store = NULL_TERM; + + while (next) { + next = weq_graph_find_secondary_node(weq, next, idx); + tmp = next->s; + tmp_sec_store = next->sstore; + + next->s = prev; + next->sstore = prev_store; + + assert(!eq_graph_are_equal(weq->eq_graph, next->pi, + weq_graph_get_index_from_store(weq, next->sstore))); + + prev = next; + prev_store = tmp_sec_store; + next = tmp; + } + + n->s = NULL; + n->sstore = NULL_TERM; +} + +/* make the given node a weak representative (root) node, by inverted + * the primary edges + */ +static void weq_graph_make_rep(weq_graph_t* weq, weq_graph_node_t* n) { + if (n->p == NULL) { + return; + } + + // TODO: make the code non-recursive + weq_graph_make_rep(weq, n->p); + // invert primary edge + n->p->p = n; + n->p->pstore = n->pstore; + n->p->pi = n->pi; + n->p = NULL; + // fix weak-i representatives + weq_graph_make_rep_i(weq, n); + n->pstore = NULL_TERM; + n->pi = NULL_TERM; +} + +/* Get representative term w.r.t. the equality graph. + * This assumes that the term has been assigned a value. + * To find a representative term, we pick one term from + * the equivalence class whose root is a value node. + */ +static term_t weq_graph_get_term_rep(weq_graph_t* weq, term_t t) { + assert(eq_graph_term_has_value(weq->eq_graph, t)); + + const mcsat_value_t* val = eq_graph_get_propagated_term_value(weq->eq_graph, t); + int32_t v_int = 0; + bool ok = q_get32((rational_t*)&val->q, &v_int); + (void) ok; + assert(ok); + + int_hmap_pair_t *v = int_hmap_find(&weq->fun_val_term_map, v_int); + if (v == NULL) { + v = int_hmap_get(&weq->fun_val_term_map, v_int); + v->val = t; + } + + assert(eq_graph_are_equal(weq->eq_graph, t, v->val)); + + return v->val; +} + +/* Add secondary edge from the node a to node b. + * store is saved as the update term for that secondary edge. + */ +static void weq_graph_add_secondary(weq_graph_t* weq, int_hset_t* idx_set, + weq_graph_node_t* a, weq_graph_node_t* b, term_t store) { + assert(b->p == NULL); + weq_graph_node_t* n = a; + while (n != b) { + assert(n->p); + if (!int_hset_member(idx_set, weq_graph_get_term_rep(weq, n->pi)) && + weq_graph_get_rep_i(weq, n, n->pi) != b) { + weq_graph_make_rep_i(weq, n); + assert(!eq_graph_are_equal(weq->eq_graph, n->pi, + weq_graph_get_index_from_store(weq, store))); + n->s = b; + n->sstore = store; + } + int_hset_add(idx_set, weq_graph_get_term_rep(weq, n->pi)); + n = n->p; + } +} + +/* Add the update term in the weq_graph. + * Add the store (update term) on the primary edge or call add-secondary. + */ +static void weq_graph_add_store(weq_graph_t* weq, weq_graph_node_t* a, weq_graph_node_t* b, + term_t idx, term_t store) { + if (a == b) { + return; + } + + weq_graph_make_rep(weq, b); + if (weq_graph_get_rep(a) == b) { + int_hset_t s; + init_int_hset(&s, 0); + int_hset_add(&s, weq_graph_get_term_rep(weq, idx)); + weq_graph_add_secondary(weq, &s, a, b, store); + delete_int_hset(&s); + } else { + assert(b->p == NULL); + b->p = a; + b->pstore = store; + b->pi = idx; + } +} + +/* Get the weq graph node for a given term. + * We create a single node for all equivalent terms in the equality graph. + * If not in cache, create a new one. + */ +static weq_graph_node_t *weq_graph_get_node(weq_graph_t* weq, term_t t) { + term_t t_rep = weq_graph_get_term_rep(weq, t); + ptr_hmap_pair_t *v = ptr_hmap_find(&weq->fun_node_map, t_rep); + if (v == NULL) { + v = ptr_hmap_get(&weq->fun_node_map, t_rep); + weq_graph_node_t *n = weq_new_node(); + v->val = n; + } + + return v->val; +} + +/* Step through one primary edge, storing the path conditions and the + * indices. + */ +static +term_t weq_graph_compute_weak_path_primary(weq_graph_t* weq, term_t arr, + ivector_t* indices, + ivector_t* path_cond) { + const weq_graph_node_t* a = weq_graph_get_node(weq, arr); + term_t res = NULL_TERM; + composite_term_t* t_desc = NULL; + term_table_t* terms = weq->ctx->terms; + + assert(a->p); + t_desc = update_term_desc(terms, a->pstore); + + if (eq_graph_are_equal(weq->eq_graph, t_desc->arg[0], arr)) { + ivector_push(path_cond, _o_yices_eq(t_desc->arg[0], arr)); + res = a->pstore; + } else { + ivector_push(path_cond, _o_yices_eq(a->pstore, arr)); + res = t_desc->arg[0]; + } + + assert(a->pi == weq_graph_get_index_from_store(weq, a->pstore)); + ivector_push(indices, a->pi); + + return res; +} + +/* Compute a weak path between arr1 and arr2. + * arr1 and arr2 are terms + */ +static void weq_graph_compute_weak_path(weq_graph_t* weq, term_t arr1, + term_t arr2, ivector_t* indices, + ivector_t* path_cond) { + const weq_graph_node_t* a = weq_graph_get_node(weq, arr1); + const weq_graph_node_t* b = weq_graph_get_node(weq, arr2); + + //arr1 and arr2 must be in the same weak equivalence class + assert(weq_graph_get_rep(a) == weq_graph_get_rep(b)); + + if (a == b) { + ivector_push(path_cond, _o_yices_eq(arr1, arr2)); + return; + } + + uint32_t prim_cnt1 = count_primary(a); + uint32_t prim_cnt2 = count_primary(b); + term_t t1 = arr1; + term_t t2 = arr2; + + while (prim_cnt1 > prim_cnt2) { + t1 = weq_graph_compute_weak_path_primary(weq, t1, indices, path_cond); + a = a->p; + prim_cnt1--; + } + + while (prim_cnt2 > prim_cnt1) { + t2 = weq_graph_compute_weak_path_primary(weq, t2, indices, path_cond); + b = b->p; + prim_cnt2--; + } + + while (a != b) { + t1 = weq_graph_compute_weak_path_primary(weq, t1, indices, path_cond); + a = a->p; + + t2 = weq_graph_compute_weak_path_primary(weq, t2, indices, path_cond); + b = b->p; + } + + assert(a == b); + if (t1 != t2) { + ivector_push(path_cond, _o_yices_eq(t1, t2)); + } +} + +/* Compute the path between the arr term and the next secondary node. + * Save the update terms in the path_cond vector and the indices + * present on the edges in the indices vector. + */ +static +term_t weq_graph_compute_path_secondary(weq_graph_t* weq, term_t arr, + term_t idx, + ivector_t* indices, + ivector_t* path_cond) { + term_t res = NULL_TERM; + term_table_t* terms = weq->ctx->terms; + const weq_graph_node_t* tmp = + weq_graph_find_secondary_node_const(weq, weq_graph_get_node(weq, arr), idx); + + assert(tmp->sstore != NULL_TERM); + assert(tmp->pi != NULL_TERM); + assert(tmp->s); + assert(eq_graph_are_equal(weq->eq_graph, tmp->pi, idx)); + assert(!eq_graph_are_equal(weq->eq_graph, idx, + weq_graph_get_index_from_store(weq, tmp->sstore))); + + composite_term_t* t_desc = update_term_desc(terms, tmp->sstore); + + if (weq_graph_find_secondary_node_const(weq, weq_graph_get_node(weq, t_desc->arg[0]), + idx) == tmp) { + weq_graph_compute_weak_path(weq, arr, t_desc->arg[0], indices, path_cond); + res = tmp->sstore; + } else { + assert(weq_graph_find_secondary_node_const(weq, + weq_graph_get_node(weq, tmp->sstore), + idx) == tmp); + + weq_graph_compute_weak_path(weq, arr, tmp->sstore, indices, path_cond); + res = t_desc->arg[0]; + } + + ivector_push(indices, t_desc->arg[1]); + + return res; +} + +/* Compute weak-i (index) path, the path doesn't mask index idx. + * Store the path conditions and the indices on the edges of the path. + */ +static +void weq_graph_compute_weak_path_i(weq_graph_t* weq, term_t arr1, + term_t arr2, term_t idx, + ivector_t* indices, + ivector_t* path_cond) { + const weq_graph_node_t* a = weq_graph_get_node(weq, arr1); + const weq_graph_node_t* b = weq_graph_get_node(weq, arr2); + uint32_t sec_cnt1 = weq_graph_count_secondary(weq, a, idx); + uint32_t sec_cnt2 = weq_graph_count_secondary(weq, b, idx); + + assert(weq_graph_get_rep_i(weq, a, idx) == + weq_graph_get_rep_i(weq, b, idx)); + + while (sec_cnt1 > sec_cnt2) { + arr1 = weq_graph_compute_path_secondary(weq, arr1, idx, indices, path_cond); + sec_cnt1--; + a = weq_graph_get_node(weq, arr1); + + assert(weq_graph_count_secondary(weq, a, idx) == sec_cnt1); + assert(weq_graph_get_rep_i(weq, a, idx) == weq_graph_get_rep_i(weq, b, idx)); + } + while (sec_cnt2 > sec_cnt1) { + arr2 = weq_graph_compute_path_secondary(weq, arr2, idx, indices, path_cond); + sec_cnt2--; + b = weq_graph_get_node(weq, arr2); + + assert(weq_graph_count_secondary(weq, b, idx) == sec_cnt2); + assert(weq_graph_get_rep_i(weq, a, idx) == weq_graph_get_rep_i(weq, b, idx)); + } + + assert(sec_cnt1 == sec_cnt2); + while (weq_graph_find_secondary_node_const(weq, a, idx) != + weq_graph_find_secondary_node_const(weq, b, idx)) { + + assert(weq_graph_count_secondary(weq, a, idx) == + weq_graph_count_secondary(weq, b, idx)); + + arr1 = weq_graph_compute_path_secondary(weq, arr1, idx, indices, path_cond); + arr2 = weq_graph_compute_path_secondary(weq, arr2, idx, indices, path_cond); + a = weq_graph_get_node(weq, arr1); + b = weq_graph_get_node(weq, arr2); + + assert(weq_graph_get_rep_i(weq, a, idx) == weq_graph_get_rep_i(weq, b, idx)); + } + + weq_graph_compute_weak_path(weq, arr1, arr2, indices, path_cond); +} + +/* Add variables for the diff terms. It will create diff terms for the + * give arr term and all the earlier stored array terms. It will also + * store select terms on these diff terms as well. + */ +static +void weq_graph_add_diff_terms_vars(weq_graph_t* weq, term_t arr) { + term_table_t* terms = weq->ctx->terms; + type_t arr_type = term_type(terms, arr); + type_t idx_type = function_type_domain(weq->ctx->types, arr_type, 0); + + term_t diff_fun; + int_hmap_pair_t *diff = int_hmap_find(&weq->type_to_diff, arr_type); + if (diff != NULL) { + diff_fun = diff->val; + } else { + type_t dom[] = {arr_type, arr_type}; + type_t diff_fun_type = function_type(weq->ctx->types, idx_type, 2, dom); + diff_fun = new_uninterpreted_term(terms, diff_fun_type); + + char fun_name_str[10]; + sprintf(fun_name_str, "diff_%i", weq->type_to_diff.nelems); + set_term_name(terms, diff_fun, clone_string(fun_name_str)); + + int_hmap_add(&weq->type_to_diff, arr_type, diff_fun); + int_hset_add(&weq->diff_funs, diff_fun); + } + + variable_db_get_variable(weq->ctx->var_db, arr); + uint32_t i; + for (i = 0; i < weq->array_terms.size; ++ i) { + term_t arr2 = weq->array_terms.data[i]; + if (arr == arr2) { + continue; + } + + type_t arr2_type = term_type(terms, arr2); + if (arr_type == arr2_type) { + variable_db_get_variable(weq->ctx->var_db, arr2); + + term_t args[2]; + if (arr < arr2) { + args[0] = arr; + args[1] = arr2; + } else { + args[0] = arr2; + args[1] = arr; + } + + term_t diff_term = app_term(terms, diff_fun, 2, args); + term_t select_arg[] = {diff_term}; + term_t diff_select1 = app_term(terms, arr, 1, select_arg); + term_t diff_select2 = app_term(terms, arr2, 1, select_arg); + variable_db_get_variable(weq->ctx->var_db, diff_term); + variable_db_get_variable(weq->ctx->var_db, diff_select1); + variable_db_get_variable(weq->ctx->var_db, diff_select2); + + ivector_push(&weq->select_terms, diff_select1); + ivector_push(&weq->select_terms, diff_select2); + } + } +} + +/* Check Array idx lemma. + * Read over write 1: when idices are equal. + */ +static +bool weq_graph_array_idx_check(weq_graph_t* weq, ivector_t* conflict, + const ivector_t* array_terms) { + term_table_t* terms = weq->ctx->terms; + uint32_t i; + + // array-idx lemma + for (i = 0; i < array_terms->size; ++i) { + term_t arr = array_terms->data[i]; + term_kind_t t_kind = term_kind(terms, arr); + if (t_kind == UPDATE_TERM) { + composite_term_t* t_desc = update_term_desc(terms, arr); + term_t r = app_term(terms, arr, t_desc->arity - 2, t_desc->arg + 1); + term_t v = t_desc->arg[t_desc->arity - 1]; + if (!eq_graph_term_has_value(weq->eq_graph, r) || + !eq_graph_term_has_value(weq->eq_graph, v)) + continue; + if (!eq_graph_are_equal(weq->eq_graph, r, v)) { + add_if_not_true_term(conflict, _o_yices_neq(r, v)); + + if (ctx_trace_enabled(weq->ctx, "weq_graph::array")) { + ctx_trace_printf(weq->ctx, ">1 Array conflict 1 BEGIN\n"); + uint32_t k; + for (k = 0; k < conflict->size; ++ k) { + ctx_trace_term(weq->ctx, conflict->data[k]); + } + ctx_trace_printf(weq->ctx, ">1 Array conflict 1 END\n"); + } + return false; + } + } + } + return true; +} + +/* Checks if arr1 and arr2 terms are weakly equivalanet on index idx. + * If it is case, it also stores indices and path conditions. + */ +static +bool weq_graph_array_weak_eq_i(weq_graph_t* weq, term_t arr1, term_t arr2, + term_t idx, ivector_t* indices, + ivector_t* path_cond) { + bool res = false; + uint32_t old_indices_size, old_path_cond_size; + + const weq_graph_node_t* fn_arr1 = + weq_graph_get_rep_i(weq, weq_graph_get_node(weq, arr1), idx); + const weq_graph_node_t* fn_arr2 = + weq_graph_get_rep_i(weq, weq_graph_get_node(weq, arr2), idx); + + assert(fn_arr1 != NULL); + assert(fn_arr2 != NULL); + + if (indices) { + old_indices_size = indices->size; + } + if (path_cond) { + old_path_cond_size = path_cond->size; + } + + if (fn_arr1 == fn_arr2) { + uint32_t k; + + res = true; + weq_graph_compute_weak_path_i(weq, arr1, arr2, idx, indices, path_cond); + + // add indices + for (k = old_indices_size; k < indices->size; ++k) { + if (eq_graph_are_equal(weq->eq_graph, idx, indices->data[k])) { + res = false; + break; + } + } + } + + if (!res && indices) { + ivector_shrink(indices, old_indices_size); + } + + if (!res && path_cond) { + ivector_shrink(path_cond, old_path_cond_size); + } + + return res; +} + +/* Check if arr1 and arr2 terms are weakly congruent on index idx. + * If that is case, store path conditions in the path_cond vector. + */ +static +bool weq_graph_array_weak_congruence_i(weq_graph_t* weq, const ivector_t* select_terms, + term_t arr1, term_t arr2, + term_t idx, ivector_t* path_cond) { + assert(eq_graph_term_has_value(weq->eq_graph, idx)); + + bool res = false; + term_table_t* terms = weq->ctx->terms; + + uint32_t i, j, k; + uint32_t old_path_cond_size; + + if (path_cond) { + old_path_cond_size = path_cond->size; + } + + ivector_shrink(&weq->path_indices1, 0); + if (weq_graph_array_weak_eq_i(weq, arr1, arr2, idx, &weq->path_indices1, path_cond)) { + for (k =0; k < weq->path_indices1.size; ++k) { + assert(idx != weq->path_indices1.data[k]); + if (eq_graph_are_equal(weq->eq_graph, idx, weq->path_indices1.data[k])) { + goto nextcheck; + } + } + + res = true; + + for (k =0; k < weq->path_indices1.size; ++k) { + add_if_not_true_term(path_cond, _o_yices_neq(idx, weq->path_indices1.data[k])); + } + + goto done; + } + + nextcheck: + if (path_cond) { + ivector_shrink(path_cond, old_path_cond_size); + } + + for (i = 0; !res && i < select_terms->size; ++ i) { + term_t t_i = select_terms->data[i]; + type_t t_i_type = term_type(terms, t_i); + assert(variable_db_get_variable_if_exists(weq->ctx->var_db, t_i) != variable_null); + + ivector_shrink(&weq->path_indices1, 0); + composite_term_t* e_i_desc = app_term_desc(terms, t_i); + if (!eq_graph_are_equal(weq->eq_graph, e_i_desc->arg[1], idx) || + !weq_graph_array_weak_eq_i(weq, arr1, e_i_desc->arg[0], idx, &weq->path_indices1, path_cond)) { + continue; + } + + uint32_t size1 = weq->path_indices1.size; + uint32_t size2; + if (path_cond) { + size2 = path_cond->size; + } + + for (j = 0; !res && j < select_terms->size; ++ j) { + term_t t_j = select_terms->data[j]; + type_t t_j_type = term_type(terms, t_j); + if (t_i_type != t_j_type || + !eq_graph_are_equal(weq->eq_graph, t_i, t_j)) { + continue; + } + + ivector_shrink(&weq->path_indices1, size1); + if (path_cond) { + ivector_shrink(path_cond, size2); + } + + composite_term_t* e_j_desc = app_term_desc(terms, t_j); + if (!eq_graph_are_equal(weq->eq_graph, e_j_desc->arg[1], idx) || + !weq_graph_array_weak_eq_i(weq, arr2, e_j_desc->arg[0], idx, &weq->path_indices1, path_cond)) { + continue; + } + + res = true; + if (path_cond) { + // Conditions of arr1 weakly-eq-i to a and arr2 weakly-eq-i to b' + for (k = 0; k < weq->path_indices1.size; ++k) { + if (eq_graph_are_equal(weq->eq_graph, weq->path_indices1.data[k], idx)) { + res = false; + break; + } + } + + if (res) { + for (k = 0; k < weq->path_indices1.size; ++k) { + add_if_not_true_term(path_cond, _o_yices_neq(idx, weq->path_indices1.data[k])); + } + + add_if_not_true_term(path_cond, _o_yices_eq(idx, e_i_desc->arg[1])); + add_if_not_true_term(path_cond, _o_yices_eq(t_i, t_j)); + add_if_not_true_term(path_cond, _o_yices_eq(idx, e_j_desc->arg[1])); + + goto done; + } + } + } + } + + done: + if (!res && path_cond) { + ivector_shrink(path_cond, old_path_cond_size); + } + + return res; +} + +/* Check array ext lemma: arr1 and arr2 should be equal, but they are + * given different values. If that case, conflict will have the terms + * that are in conflict. + */ +static +bool weq_graph_array_ext_lemma(weq_graph_t* weq, ivector_t* conflict, + term_t arr1, term_t arr2, + const ivector_t* select_terms) { + bool res = true; + term_table_t* terms = weq->ctx->terms; + + type_t arr1_type = term_type(terms, arr1); + type_t arr2_type = term_type(terms, arr2); + if (arr1 == arr2 || arr1_type != arr2_type || + eq_graph_are_equal(weq->eq_graph, arr1, arr2)) { + return res; + } + + const weq_graph_node_t* fn_arr1 = weq_graph_get_rep(weq_graph_get_node(weq, arr1)); + const weq_graph_node_t* fn_arr2 = weq_graph_get_rep(weq_graph_get_node(weq, arr2)); + + if (fn_arr1 == fn_arr2) { + bool ok = true; + uint32_t k; + + ivector_shrink(&weq->path_cond, 0); + ivector_shrink(&weq->path_indices2, 0); + weq_graph_compute_weak_path(weq, arr1, arr2, &weq->path_indices2, &weq->path_cond); + + ivector_remove_duplicates(&weq->path_indices2); + for (k = 0; k < weq->path_indices2.size; ++ k) { + term_t idx = weq->path_indices2.data[k]; + if (!weq_graph_array_weak_congruence_i(weq, select_terms, arr1, arr2, + idx, &weq->path_cond)) { + ok = false; + break; + } + } + + if (ok) { + res = false; + assert(conflict->size == 0); + + for (k = 0; k < weq->path_cond.size; ++k) { + add_if_not_true_term(conflict, weq->path_cond.data[k]); + } + + ivector_push(conflict, _o_yices_neq(arr1, arr2)); + + ivector_remove_duplicates(conflict); + + if (ctx_trace_enabled(weq->ctx, "weq_graph::array")) { + ctx_trace_printf(weq->ctx, ">2 Array conflict BEGIN 2\n"); + for (k = 0; k < conflict->size; ++ k) { + ctx_trace_term(weq->ctx, conflict->data[k]); + } + ctx_trace_printf(weq->ctx, ">2 Array conflict END 2\n"); + } + + assert(conflict->size > 1); + (*weq->stats.array_ext_axioms) ++; + } + } + + return res; +} + +/* Check array ext conflicts (based on weakly equivalent arrays + * reasoning) for all the array terms. It first check the lemma + * between array terms that are present in the input formula. Then, it + * check for all array pairs. If a conflict is found, the conflicting + * terms are added to the conflict vector. + */ +static +bool weq_graph_array_ext_check(weq_graph_t* weq, ivector_t* conflict, + const ivector_t* array_eq_terms, + const ivector_t* array_terms, + const ivector_t* select_terms) { + uint32_t i, j; + bool res = true; + + term_table_t* terms = weq->ctx->terms; + composite_term_t* t_desc = NULL; + term_t arr1, arr2; + int_hset_t seen; + + init_int_hset(&seen, 0); + + for (i = 0; res && i < array_eq_terms->size; ++i) { + if (!int_hset_member(&seen, array_eq_terms->data[i])) { + t_desc = eq_term_desc(terms, array_eq_terms->data[i]); + arr1 = t_desc->arg[0]; + arr2 = t_desc->arg[1]; + + res = weq_graph_array_ext_lemma(weq, conflict, arr1, arr2, select_terms); + int_hset_add(&seen, array_eq_terms->data[i]); + } + } + + for (i = 0; res && i < array_terms->size; ++i) { + arr1 = array_terms->data[i]; + + for (j = i + 1; res && j < array_terms->size; ++j) { + arr2 = array_terms->data[j]; + if (!int_hset_member(&seen, _o_yices_eq(arr1, arr2))) { + res = weq_graph_array_ext_lemma(weq, conflict, arr1, arr2, select_terms); + int_hset_add(&seen, _o_yices_eq(arr1, arr2)); + } + } + } + + delete_int_hset(&seen); + + return res; +} + +/* Check array ext conflicts (based on extensionality axiom over the + * diff terms) between arr1 and arr2 terms. If a conflict is found, + * the conflict terms are added in the conflict vector. + */ +static +bool weq_graph_array_ext_diff_lemma(weq_graph_t* weq, ivector_t* conflict, + term_t arr1, term_t arr2) { + + term_table_t* terms = weq->ctx->terms; + type_t arr1_type = term_type(terms, arr1); + term_t diff_fun; + int_hmap_pair_t *diff = int_hmap_find(&weq->type_to_diff, arr1_type); + if (diff != NULL) { + diff_fun = diff->val; + } else { + assert(false); + } + + type_t arr2_type = term_type(terms, arr2); + if (arr1 == arr2 || + !eq_graph_term_has_value(weq->eq_graph, arr1) || + !eq_graph_term_has_value(weq->eq_graph, arr2) || + arr1_type != arr2_type) { + return true; + } + + // order the arguments + term_t args[2]; + if (arr1 < arr2) { + args[0] = arr1; + args[1] = arr2; + } else { + args[0] = arr2; + args[1] = arr1; + } + term_t diff_term = app_term(terms, diff_fun, 2, args); + term_t select_arg[] = {diff_term}; + term_t diff_select1 = app_term(terms, arr1, 1, select_arg); + term_t diff_select2 = app_term(terms, arr2, 1, select_arg); + if (!eq_graph_term_has_value(weq->eq_graph, diff_term) || + !eq_graph_term_has_value(weq->eq_graph, diff_select1) || + !eq_graph_term_has_value(weq->eq_graph, diff_select2)) { + return true; + } + + if (!eq_graph_are_equal(weq->eq_graph, arr1, arr2) && + eq_graph_are_equal(weq->eq_graph, diff_select1, diff_select2)) { + + assert(conflict->size == 0); + + add_if_not_true_term(conflict, _o_yices_neq(arr1, arr2)); + add_if_not_true_term(conflict, _o_yices_eq(diff_select1, diff_select2)); + + ivector_remove_duplicates(conflict); + + if (ctx_trace_enabled(weq->ctx, "weq_graph::array")) { + ctx_trace_printf(weq->ctx, ">2 Array conflict 2 BEGIN\n"); + uint32_t k; + for (k = 0; k < conflict->size; ++ k) { + ctx_trace_term(weq->ctx, conflict->data[k]); + } + ctx_trace_printf(weq->ctx, ">2 Array conflict 2 END\n"); + } + + assert(conflict->size > 1); + (*weq->stats.array_ext_axioms) ++; + + return false; + } + + return true; +} + +/* Check array ext conflict (based on extensionality axiom over diff + * terms) for all pairs of array terms. It first check for array pairs + * that are present in an equality in the input formula. If a conflict + * is found, the conflict terms are added in the conflict vector. + */ +static +bool weq_graph_array_ext_diff_check(weq_graph_t* weq, ivector_t* conflict, + const ivector_t* array_eq_terms, + const ivector_t* array_terms) { + + bool res = true; + term_table_t* terms = weq->ctx->terms; + uint32_t i, j; + + if (array_eq_terms) { + composite_term_t* t_desc = NULL; + for (i = 0; res && i < array_eq_terms->size; ++i) { + t_desc = eq_term_desc(terms, array_eq_terms->data[i]); + term_t arr1 = t_desc->arg[0]; + term_t arr2 = t_desc->arg[1]; + + res = weq_graph_array_ext_diff_lemma(weq, conflict, arr1, arr2); + } + } + + if (array_terms) { + for (i = 0; res && i < array_terms->size; ++i) { + term_t arr1 = array_terms->data[i]; + assert(variable_db_get_variable_if_exists(weq->ctx->var_db, arr1) != + variable_null); + if (!eq_graph_term_has_value(weq->eq_graph, arr1)) { + continue; + } + + for (j = i + 1; res && j < array_terms->size; ++j) { + term_t arr2 = array_terms->data[j]; + res = weq_graph_array_ext_diff_lemma(weq, conflict, arr1, arr2); + } + } + } + + return res; +} + +/* Check read-over-right conflict (based on weakly equivalent array + * reasoning) for all select terms. If a conflict is found, the + * conflict terms are added in the conflict vector. + */ +static +bool weq_graph_array_read_over_write_check(weq_graph_t* weq, ivector_t* conflict, + const ivector_t* select_terms) { + term_table_t* terms = weq->ctx->terms; + uint32_t i, j, k; + + // generalized read-over-write lemma + for (i = 0; i < select_terms->size; ++ i) { + term_t t_i = select_terms->data[i]; + type_t t_i_type = term_type(terms, t_i); + assert(variable_db_get_variable_if_exists(weq->ctx->var_db, t_i) != variable_null); + composite_term_t* e_i_desc = app_term_desc(terms, t_i); + + for (j = i + 1; j < select_terms->size; ++ j) { + term_t t_j = select_terms->data[j]; + type_t t_j_type = term_type(terms, t_j); + composite_term_t* e_j_desc = app_term_desc(terms, t_j); + if (t_i == t_j || + t_i_type != t_j_type || + !eq_graph_are_equal(weq->eq_graph, e_i_desc->arg[1], e_j_desc->arg[1]) || + eq_graph_are_equal(weq->eq_graph, t_i, t_j)) { + continue; + } + + ivector_shrink(&weq->path_indices1, 0); + ivector_shrink(&weq->path_cond, 0); + + if (weq_graph_array_weak_eq_i(weq, e_i_desc->arg[0], e_j_desc->arg[0], + e_i_desc->arg[1], &weq->path_indices1, &weq->path_cond)) { + // found conflict + assert(conflict->size == 0); + + bool ok = true; + for (k = 0; k < weq->path_indices1.size; ++ k) { + assert(weq->path_indices1.data[k] != e_i_desc->arg[1]); + if (eq_graph_are_equal(weq->eq_graph, + e_i_desc->arg[1], weq->path_indices1.data[k])) { + ok = false; + break; + } + + add_if_not_true_term(conflict, + _o_yices_neq(e_i_desc->arg[1], weq->path_indices1.data[k])); + } + + if (!ok) { + ivector_reset(conflict); + } else { + for (k = 0; k < weq->path_cond.size; ++k) { + add_if_not_true_term(conflict, weq->path_cond.data[k]); + } + + add_if_not_true_term(conflict, _o_yices_eq(e_i_desc->arg[1], e_j_desc->arg[1])); + add_if_not_true_term(conflict, _o_yices_neq(t_i, t_j)); + + ivector_remove_duplicates(conflict); + + if (ctx_trace_enabled(weq->ctx, "weq_graph::array")) { + ctx_trace_printf(weq->ctx, ">3 Array conflict BEGIN 3\n"); + for (k = 0; k < conflict->size; ++ k) { + ctx_trace_term(weq->ctx, conflict->data[k]); + } + ctx_trace_printf(weq->ctx, ">3 Array conflict END 3\n"); + } + + assert(conflict->size > 1); + (*weq->stats.array_update2_axioms) ++; + + goto done; + } + } + } + } + + done: + return conflict->size == 0; +} + +/* Build weak equivalence graph. + */ +static +void weq_graph_array_build_weak_eq_graph(weq_graph_t* weq, + const ivector_t* array_terms) { + term_table_t* terms = weq->ctx->terms; + uint32_t i; + + // clear the fun node map + // we start from a fresh weak equivalence graph + weq_graph_clear(weq); + + // build the graph + for (i = 0; i < array_terms->size; ++ i) { + term_t t = array_terms->data[i]; + term_kind_t t_kind = term_kind(terms, t); + assert(is_function_term(terms, t)); + assert(t_kind == UNINTERPRETED_TERM || t_kind == UPDATE_TERM); + + weq_graph_node_t *b = weq_graph_get_node(weq, t); + if (t_kind == UPDATE_TERM) { + composite_term_t* t_desc = update_term_desc(terms, t); + weq_graph_node_t *a = weq_graph_get_node(weq, t_desc->arg[0]); + term_t idx = t_desc->arg[1]; + weq_graph_add_store(weq, a, b, idx, t); + } + } +} + +/* Return array update index lemma (when select and update indices are + * the same + */ +term_t weq_graph_get_array_update_idx_lemma(weq_graph_t* weq, term_t update_term) { + term_table_t* terms = weq->ctx->terms; + assert(term_kind(terms, update_term) == UPDATE_TERM); + + composite_term_t* t_desc = update_term_desc(terms, update_term); + term_t r = app_term(terms, update_term, t_desc->arity - 2, t_desc->arg + 1); + term_t r_lemma = _o_yices_eq(r, t_desc->arg[t_desc->arity - 1]); + + (*weq->stats.array_update1_axioms) ++; + + return r_lemma; +} + +/* The main method to check array conflicts. The conflict vector will + * contain conflicting terms if an array conflict is found. It assumes + * that all terms (assignable) present in the array_terms and + * select_terms have been assigned values. + */ +void weq_graph_check_array_conflict(weq_graph_t* weq, ivector_t* conflict) { + + if (weq->array_terms.size == 0) { + return; + } + + // optimization: skip array checks if not all terms (present in the + // eq_graph) have a value assigned in the graph + variable_db_t* var_db = weq->ctx->var_db; + term_t t = NULL_TERM; + int_hmap_pair_t* it; + for (it = int_hmap_first_record(&var_db->term_to_variable_map); + it != NULL; + it = int_hmap_next_record(&var_db->term_to_variable_map, it)) { + t = it->key; + if (t >= 0 && eq_graph_has_term(weq->eq_graph, t) && + !eq_graph_term_has_value(weq->eq_graph, t)) { + return; + } + } + + bool ok = true; + + ivector_t array_eq_terms, array_terms, select_terms; + + init_ivector(&array_eq_terms, 0); + ivector_copy(&array_eq_terms, weq->array_eq_terms.data, weq->array_eq_terms.size); + ivector_remove_duplicates(&array_eq_terms); + + init_ivector(&array_terms, 0); + ivector_copy(&array_terms, weq->array_terms.data, weq->array_terms.size); + ivector_remove_duplicates(&array_terms); + + init_ivector(&select_terms, 0); + ivector_copy(&select_terms, weq->select_terms.data, weq->select_terms.size); + ivector_remove_duplicates(&select_terms); + + //ok = weq_graph_array_idx_check(weq, conflict, &array_terms); + + // check if updates are present. + bool updates_present = false; + uint32_t i; + term_table_t* terms = weq->ctx->terms; + for (i = 0; ok && i < array_terms.size; ++i) { + if (term_kind(terms, array_terms.data[i]) == UPDATE_TERM) { + updates_present = true; + } + } + + (*weq->stats.array_terms) = array_terms.size; + (*weq->stats.select_terms) = select_terms.size; + + if (updates_present) { + if (USE_ARRAY_DIFF && ok) { + ok = weq_graph_array_ext_diff_check(weq, conflict, &array_eq_terms, NULL); + } + + if (ok) { + weq_graph_array_build_weak_eq_graph(weq, &array_terms); + ok = weq_graph_array_read_over_write_check(weq, conflict, &select_terms); + } + + if (ok) { + if (USE_ARRAY_DIFF) { + ok = weq_graph_array_ext_diff_check(weq, conflict, NULL, &array_terms); + } else { + ok = weq_graph_array_ext_check(weq, conflict, &array_eq_terms, &array_terms, &select_terms); + } + } + } + + delete_ivector(&select_terms); + delete_ivector(&array_terms); + delete_ivector(&array_eq_terms); +} + diff --git a/src/mcsat/weq/weak_eq_graph.h b/src/mcsat/weq/weak_eq_graph.h new file mode 100644 index 000000000..18813773b --- /dev/null +++ b/src/mcsat/weq/weak_eq_graph.h @@ -0,0 +1,119 @@ +/* + * This file is part of the Yices SMT Solver. + * Copyright (C) 2017 SRI International. + * + * Yices is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * Yices is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Yices. If not, see . + */ + +#ifndef WEAK_EQ_GRAPH_H_ +#define WEAK_EQ_GRAPH_H_ + +#include "mcsat/eq/equality_graph.h" +#include "mcsat/plugin.h" +#include "mcsat/utils/scope_holder.h" + +#include "utils/int_array_hsets.h" +#include "utils/int_hash_sets.h" + +#include "api/yices_api_lock_free.h" + + +typedef struct weq_graph_s { + + /** The plugin context */ + plugin_context_t* ctx; + + /** Scope holder for the int variables */ + scope_holder_t scope; + + /** pointer to the equality graph */ + eq_graph_t* eq_graph; + + /** Array terms */ + ivector_t array_terms; + + /** Array eq terms */ + ivector_t array_eq_terms; + + /** Select terms */ + ivector_t select_terms; + + /** Map from types to diff symbols */ + int_hmap_t type_to_diff; + + /** Set of Diff Funs */ + int_hset_t diff_funs; + + /** Map: terms to fun_nodes */ + ptr_hmap_t fun_node_map; + + /** Function Values to term (one rep term) */ + int_hmap_t fun_val_term_map; + + /** Weak path equalities **/ + ivector_t path_cond; + + /** Weak path indices **/ + ivector_t path_indices1; + + /** Weak path indices **/ + ivector_t path_indices2; + + struct { + statistic_int_t* array_terms; + statistic_int_t* select_terms; + statistic_int_t* array_update1_axioms; + statistic_int_t* array_update2_axioms; + statistic_int_t* array_ext_axioms; + } stats; + +} weq_graph_t; + +/** Construct a new weakly-equivalent graph. */ +void weq_graph_construct(weq_graph_t* weq, plugin_context_t* ctx, eq_graph_t* eq); + +/** Destruct the graph */ +void weq_graph_destruct(weq_graph_t* weq); + +/** Push the context */ +void weq_graph_push(weq_graph_t* weq); + +/** Pop the context */ +void weq_graph_pop(weq_graph_t* weq); + +/** add array term */ +void weq_graph_add_array_term(weq_graph_t* weq, term_t arr); + +/** add array equality term */ +void weq_graph_add_array_eq_term(weq_graph_t* weq, term_t arr_eq); + +/** add array select term */ +void weq_graph_add_select_term(weq_graph_t* weq, term_t sel); + +/** add diff fun */ +void weq_graph_add_diff_fun(weq_graph_t* weq, term_t diff_fun); + +/** Contains diff fun */ +bool weq_graph_has_diff_fun(weq_graph_t* weq, term_t diff_fun); + +/** Clear weq cache */ +void weq_graph_clear(weq_graph_t* weq); + +/** Return array update index lemma term */ +term_t weq_graph_get_array_update_idx_lemma(weq_graph_t* weq, term_t update_term); + +/** Check for array conflicts */ +void weq_graph_check_array_conflict(weq_graph_t* weq, ivector_t* conflict); + +#endif /* WEAK_EQ_GRAPH_H_ */ From d6b414ea963bb851c568f15ccd33d5ad19ae7062 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Thu, 16 Feb 2023 22:42:55 -0800 Subject: [PATCH 074/182] minor --- src/mcsat/uf/uf_plugin.c | 2 +- src/mcsat/weq/weak_eq_graph.c | 54 +++++++++++++++++------------------ 2 files changed, 28 insertions(+), 28 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index df4035068..2264855ea 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -194,7 +194,7 @@ bool uf_plugin_process_eq_graph_propagations(uf_plugin_t* uf, trail_token_t* pro prop->add(prop, t_var, v); (*uf->stats.propagations) ++; - propagated = true; + propagated = true; } else { // Ignore, we will report conflict } diff --git a/src/mcsat/weq/weak_eq_graph.c b/src/mcsat/weq/weak_eq_graph.c index 0b2c19be0..ae7619f38 100644 --- a/src/mcsat/weq/weak_eq_graph.c +++ b/src/mcsat/weq/weak_eq_graph.c @@ -211,13 +211,13 @@ static uint32_t count_primary(const weq_graph_node_t* n) { * are not equivalent to idx. */ static const weq_graph_node_t* weq_graph_get_rep_i(const weq_graph_t* weq, - const weq_graph_node_t* n, - const term_t idx) { + const weq_graph_node_t* n, + const term_t idx) { const weq_graph_node_t* res = n; while (res->p != NULL) { if (eq_graph_are_equal(weq->eq_graph, res->pi, idx)) { if (res->s == NULL) { - // no secondary edge means that we have found the node + // no secondary edge means that we have found the node break; } res = res->s; @@ -233,7 +233,7 @@ static const weq_graph_node_t* weq_graph_get_rep_i(const weq_graph_t* weq, */ static uint32_t weq_graph_count_secondary(const weq_graph_t* weq, const weq_graph_node_t* n, - const term_t idx) { + const term_t idx) { uint32_t res = 0; const weq_graph_node_t* tmp = n; while (tmp->p != NULL) { @@ -254,7 +254,7 @@ uint32_t weq_graph_count_secondary(const weq_graph_t* weq, const weq_graph_node_ */ static weq_graph_node_t* weq_graph_find_secondary_node(weq_graph_t* weq, - weq_graph_node_t* n, term_t idx) { + weq_graph_node_t* n, term_t idx) { weq_graph_node_t* res = n; while (res->p != NULL && !eq_graph_are_equal(weq->eq_graph, res->pi, idx)) { res = res->p; @@ -266,8 +266,8 @@ weq_graph_node_t* weq_graph_find_secondary_node(weq_graph_t* weq, */ static const weq_graph_node_t* weq_graph_find_secondary_node_const(weq_graph_t* weq, - const weq_graph_node_t* n, - term_t idx) { + const weq_graph_node_t* n, + term_t idx) { const weq_graph_node_t* res = n; while (res->p != NULL && !eq_graph_are_equal(weq->eq_graph, res->pi, idx)) { res = res->p; @@ -379,7 +379,7 @@ static term_t weq_graph_get_term_rep(weq_graph_t* weq, term_t t) { * store is saved as the update term for that secondary edge. */ static void weq_graph_add_secondary(weq_graph_t* weq, int_hset_t* idx_set, - weq_graph_node_t* a, weq_graph_node_t* b, term_t store) { + weq_graph_node_t* a, weq_graph_node_t* b, term_t store) { assert(b->p == NULL); weq_graph_node_t* n = a; while (n != b) { @@ -401,7 +401,7 @@ static void weq_graph_add_secondary(weq_graph_t* weq, int_hset_t* idx_set, * Add the store (update term) on the primary edge or call add-secondary. */ static void weq_graph_add_store(weq_graph_t* weq, weq_graph_node_t* a, weq_graph_node_t* b, - term_t idx, term_t store) { + term_t idx, term_t store) { if (a == b) { return; } @@ -442,8 +442,8 @@ static weq_graph_node_t *weq_graph_get_node(weq_graph_t* weq, term_t t) { */ static term_t weq_graph_compute_weak_path_primary(weq_graph_t* weq, term_t arr, - ivector_t* indices, - ivector_t* path_cond) { + ivector_t* indices, + ivector_t* path_cond) { const weq_graph_node_t* a = weq_graph_get_node(weq, arr); term_t res = NULL_TERM; composite_term_t* t_desc = NULL; @@ -520,9 +520,9 @@ static void weq_graph_compute_weak_path(weq_graph_t* weq, term_t arr1, */ static term_t weq_graph_compute_path_secondary(weq_graph_t* weq, term_t arr, - term_t idx, - ivector_t* indices, - ivector_t* path_cond) { + term_t idx, + ivector_t* indices, + ivector_t* path_cond) { term_t res = NULL_TERM; term_table_t* terms = weq->ctx->terms; const weq_graph_node_t* tmp = @@ -538,13 +538,13 @@ term_t weq_graph_compute_path_secondary(weq_graph_t* weq, term_t arr, composite_term_t* t_desc = update_term_desc(terms, tmp->sstore); if (weq_graph_find_secondary_node_const(weq, weq_graph_get_node(weq, t_desc->arg[0]), - idx) == tmp) { + idx) == tmp) { weq_graph_compute_weak_path(weq, arr, t_desc->arg[0], indices, path_cond); res = tmp->sstore; } else { assert(weq_graph_find_secondary_node_const(weq, - weq_graph_get_node(weq, tmp->sstore), - idx) == tmp); + weq_graph_get_node(weq, tmp->sstore), + idx) == tmp); weq_graph_compute_weak_path(weq, arr, tmp->sstore, indices, path_cond); res = t_desc->arg[0]; @@ -560,16 +560,16 @@ term_t weq_graph_compute_path_secondary(weq_graph_t* weq, term_t arr, */ static void weq_graph_compute_weak_path_i(weq_graph_t* weq, term_t arr1, - term_t arr2, term_t idx, - ivector_t* indices, - ivector_t* path_cond) { + term_t arr2, term_t idx, + ivector_t* indices, + ivector_t* path_cond) { const weq_graph_node_t* a = weq_graph_get_node(weq, arr1); const weq_graph_node_t* b = weq_graph_get_node(weq, arr2); uint32_t sec_cnt1 = weq_graph_count_secondary(weq, a, idx); uint32_t sec_cnt2 = weq_graph_count_secondary(weq, b, idx); assert(weq_graph_get_rep_i(weq, a, idx) == - weq_graph_get_rep_i(weq, b, idx)); + weq_graph_get_rep_i(weq, b, idx)); while (sec_cnt1 > sec_cnt2) { arr1 = weq_graph_compute_path_secondary(weq, arr1, idx, indices, path_cond); @@ -590,10 +590,10 @@ void weq_graph_compute_weak_path_i(weq_graph_t* weq, term_t arr1, assert(sec_cnt1 == sec_cnt2); while (weq_graph_find_secondary_node_const(weq, a, idx) != - weq_graph_find_secondary_node_const(weq, b, idx)) { + weq_graph_find_secondary_node_const(weq, b, idx)) { assert(weq_graph_count_secondary(weq, a, idx) == - weq_graph_count_secondary(weq, b, idx)); + weq_graph_count_secondary(weq, b, idx)); arr1 = weq_graph_compute_path_secondary(weq, arr1, idx, indices, path_cond); arr2 = weq_graph_compute_path_secondary(weq, arr2, idx, indices, path_cond); @@ -712,7 +712,7 @@ bool weq_graph_array_idx_check(weq_graph_t* weq, ivector_t* conflict, static bool weq_graph_array_weak_eq_i(weq_graph_t* weq, term_t arr1, term_t arr2, term_t idx, ivector_t* indices, - ivector_t* path_cond) { + ivector_t* path_cond) { bool res = false; uint32_t old_indices_size, old_path_cond_size; @@ -1087,7 +1087,7 @@ bool weq_graph_array_ext_diff_check(weq_graph_t* weq, ivector_t* conflict, for (i = 0; res && i < array_terms->size; ++i) { term_t arr1 = array_terms->data[i]; assert(variable_db_get_variable_if_exists(weq->ctx->var_db, arr1) != - variable_null); + variable_null); if (!eq_graph_term_has_value(weq->eq_graph, arr1)) { continue; } @@ -1172,7 +1172,7 @@ bool weq_graph_array_read_over_write_check(weq_graph_t* weq, ivector_t* conflict } assert(conflict->size > 1); - (*weq->stats.array_update2_axioms) ++; + (*weq->stats.array_update2_axioms) ++; goto done; } @@ -1188,7 +1188,7 @@ bool weq_graph_array_read_over_write_check(weq_graph_t* weq, ivector_t* conflict */ static void weq_graph_array_build_weak_eq_graph(weq_graph_t* weq, - const ivector_t* array_terms) { + const ivector_t* array_terms) { term_table_t* terms = weq->ctx->terms; uint32_t i; From 70be4432afef27369bc44e3c1ec41a796bd2ef04 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Fri, 17 Feb 2023 11:38:39 -0800 Subject: [PATCH 075/182] heuristic -- commented at the moment --- src/mcsat/weq/weak_eq_graph.c | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/src/mcsat/weq/weak_eq_graph.c b/src/mcsat/weq/weak_eq_graph.c index ae7619f38..997b8fac7 100644 --- a/src/mcsat/weq/weak_eq_graph.c +++ b/src/mcsat/weq/weak_eq_graph.c @@ -21,6 +21,7 @@ #include "mcsat/tracing.h" #include "utils/refcount_strings.h" +#include "utils/int_array_sort2.h" #define USE_ARRAY_DIFF 0 //experimental @@ -1229,6 +1230,22 @@ term_t weq_graph_get_array_update_idx_lemma(weq_graph_t* weq, term_t update_term return r_lemma; } +/* Compare terms according to their heuristic score + */ +static +bool weq_graph_array_terms_compare(void *data, term_t t1, term_t t2) { + plugin_context_t* ctx = (plugin_context_t*) data; + + variable_t v1 = variable_db_get_variable_if_exists(ctx->var_db, t1); + variable_t v2 = variable_db_get_variable_if_exists(ctx->var_db, t2); + + if (v1 != variable_null && v2 != variable_null) { + return ctx->cmp_variables(ctx, v1, v2) > 0; + } else { + return t1 > t2; + } +} + /* The main method to check array conflicts. The conflict vector will * contain conflicting terms if an array conflict is found. It assumes * that all terms (assignable) present in the array_terms and @@ -1266,10 +1283,16 @@ void weq_graph_check_array_conflict(weq_graph_t* weq, ivector_t* conflict) { init_ivector(&array_terms, 0); ivector_copy(&array_terms, weq->array_terms.data, weq->array_terms.size); ivector_remove_duplicates(&array_terms); - + // TODO: Heuristic to try + // store array terms according to heuristic score + int_array_sort2(array_terms.data, array_terms.size, weq->ctx, weq_graph_array_terms_compare); + init_ivector(&select_terms, 0); ivector_copy(&select_terms, weq->select_terms.data, weq->select_terms.size); ivector_remove_duplicates(&select_terms); + // TODO: Heuristic to try + // store select terms according to heuristic score + //int_array_sort2(select_terms.data, select_terms.size, weq->ctx, weq_graph_array_terms_compare); //ok = weq_graph_array_idx_check(weq, conflict, &array_terms); From c8aa80256cb056485d5a2843f61642023f3698e2 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Mon, 20 Feb 2023 11:58:41 -0800 Subject: [PATCH 076/182] add select terms for finite domain --- src/mcsat/uf/uf_plugin.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index 2264855ea..6106d23d9 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -233,9 +233,9 @@ void uf_plugin_add_to_eq_graph(uf_plugin_t* uf, term_t t, bool record) { variable_db_get_variable(uf->ctx->var_db, r1); weq_graph_add_select_term(&uf->weq_graph, r1); // TODO: can we check if the domain is finite? if so, we can guard this extra select term - /* term_t r2 = app_term(terms, t_desc->arg[0], t_desc->arity - 2, t_desc->arg + 1); */ - /* variable_db_get_variable(uf->ctx->var_db, r2); */ - /* ivector_push(&uf->select_terms, r2); */ + term_t r2 = app_term(terms, t_desc->arg[0], t_desc->arity - 2, t_desc->arg + 1); + variable_db_get_variable(uf->ctx->var_db, r2); + weq_graph_add_select_term(&uf->weq_graph, r2); break; case ARITH_RDIV: t_desc = arith_rdiv_term_desc(terms, t); From 34efc796f91be2e4c32cb482c62bfdc584c67776 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Mon, 20 Feb 2023 12:18:51 -0800 Subject: [PATCH 077/182] few .ys array tests --- tests/regress/mcsat/ax/frugal10.ys | 33 +++++++++++++++ tests/regress/mcsat/ax/frugal10.ys.gold | 1 + tests/regress/mcsat/ax/frugal10.ys.options | 1 + tests/regress/mcsat/ax/frugal10a.ys | 39 ++++++++++++++++++ tests/regress/mcsat/ax/frugal10a.ys.gold | 1 + tests/regress/mcsat/ax/frugal10a.ys.options | 1 + tests/regress/mcsat/ax/frugal10bool.ys | 41 +++++++++++++++++++ tests/regress/mcsat/ax/frugal10bool.ys.gold | 1 + .../regress/mcsat/ax/frugal10bool.ys.options | 1 + 9 files changed, 119 insertions(+) create mode 100644 tests/regress/mcsat/ax/frugal10.ys create mode 100644 tests/regress/mcsat/ax/frugal10.ys.gold create mode 100644 tests/regress/mcsat/ax/frugal10.ys.options create mode 100644 tests/regress/mcsat/ax/frugal10a.ys create mode 100644 tests/regress/mcsat/ax/frugal10a.ys.gold create mode 100644 tests/regress/mcsat/ax/frugal10a.ys.options create mode 100644 tests/regress/mcsat/ax/frugal10bool.ys create mode 100644 tests/regress/mcsat/ax/frugal10bool.ys.gold create mode 100644 tests/regress/mcsat/ax/frugal10bool.ys.options diff --git a/tests/regress/mcsat/ax/frugal10.ys b/tests/regress/mcsat/ax/frugal10.ys new file mode 100644 index 000000000..cbe0d79d2 --- /dev/null +++ b/tests/regress/mcsat/ax/frugal10.ys @@ -0,0 +1,33 @@ +;; test for Yices (taken from SMT 2008 paper by Sava Krstic et al.) + +(define-type Index) +(define-type Element) +(define-type Array (-> Index Element)) + +(define a::Array) +(define b::Array) +(define i0::Index) +(define i1::Index) +(define i2::Index) +(define i3::Index) +(define i4::Index) +(define i5::Index) +(define i6::Index) +(define i7::Index) +(define i8::Index) +(define i9::Index) +(define x0::Element) +(define x1::Element) +(define x2::Element) +(define x3::Element) +(define x4::Element) +(define x5::Element) +(define x6::Element) +(define x7::Element) +(define x8::Element) +(define x9::Element) + +(assert (not (= (update (update (update (update (update (update (update (update (update (update a (i0) x0) (i1) x1) (i2) x2) (i3) x3) (i4) x4) (i5) x5) (i6) x6) (i7) x7) (i8) x8) (i9) x9) + (update (update (update (update (update (update (update (update (update (update b (i0) x0) (i1) x1) (i2) x2) (i3) x3) (i4) x4) (i5) x5) (i6) x6) (i7) x7) (i8) x8) (i9) x9)))) + +(check) diff --git a/tests/regress/mcsat/ax/frugal10.ys.gold b/tests/regress/mcsat/ax/frugal10.ys.gold new file mode 100644 index 000000000..6b8a2c3d2 --- /dev/null +++ b/tests/regress/mcsat/ax/frugal10.ys.gold @@ -0,0 +1 @@ +sat diff --git a/tests/regress/mcsat/ax/frugal10.ys.options b/tests/regress/mcsat/ax/frugal10.ys.options new file mode 100644 index 000000000..bcf7e6dae --- /dev/null +++ b/tests/regress/mcsat/ax/frugal10.ys.options @@ -0,0 +1 @@ +--mcsat diff --git a/tests/regress/mcsat/ax/frugal10a.ys b/tests/regress/mcsat/ax/frugal10a.ys new file mode 100644 index 000000000..7afad3b1f --- /dev/null +++ b/tests/regress/mcsat/ax/frugal10a.ys @@ -0,0 +1,39 @@ +;; test for Yices (taken from SMT 2008 paper by Sava Krstic et al.) + +(define-type Index) +(define-type Element) +(define-type Array (-> Index Element)) + +(define a::Array) +(define b::Array) +(define c::Array) +(define d::Array) + +(define i0::Index) +(define i1::Index) +(define i2::Index) +(define i3::Index) +(define i4::Index) +(define i5::Index) +(define i6::Index) +(define i7::Index) +(define i8::Index) +(define i9::Index) +(define x0::Element) +(define x1::Element) +(define x2::Element) +(define x3::Element) +(define x4::Element) +(define x5::Element) +(define x6::Element) +(define x7::Element) +(define x8::Element) +(define x9::Element) + +(assert + (and + (= c (update (update (update (update (update (update (update (update (update (update a (i0) x0) (i1) x1) (i2) x2) (i3) x3) (i4) x4) (i5) x5) (i6) x6) (i7) x7) (i8) x8) (i9) x9)) + (= d (update (update (update (update (update (update (update (update (update (update b (i0) x0) (i1) x1) (i2) x2) (i3) x3) (i4) x4) (i5) x5) (i6) x6) (i7) x7) (i8) x8) (i9) x9)) + (not (= c d)))) + +(check) diff --git a/tests/regress/mcsat/ax/frugal10a.ys.gold b/tests/regress/mcsat/ax/frugal10a.ys.gold new file mode 100644 index 000000000..6b8a2c3d2 --- /dev/null +++ b/tests/regress/mcsat/ax/frugal10a.ys.gold @@ -0,0 +1 @@ +sat diff --git a/tests/regress/mcsat/ax/frugal10a.ys.options b/tests/regress/mcsat/ax/frugal10a.ys.options new file mode 100644 index 000000000..bcf7e6dae --- /dev/null +++ b/tests/regress/mcsat/ax/frugal10a.ys.options @@ -0,0 +1 @@ +--mcsat diff --git a/tests/regress/mcsat/ax/frugal10bool.ys b/tests/regress/mcsat/ax/frugal10bool.ys new file mode 100644 index 000000000..e7557f8d9 --- /dev/null +++ b/tests/regress/mcsat/ax/frugal10bool.ys @@ -0,0 +1,41 @@ +;; test for Yices (taken from SMT 2008 paper by Sava Krstic et al.) +;; variant: to test the model generation code +;; elements are boolean + +(define-type Index) +(define-type Element bool) +(define-type Array (-> Index Element)) + +(define a::Array) +(define b::Array) +(define c::Array) +(define d::Array) + +(define i0::Index) +(define i1::Index) +(define i2::Index) +(define i3::Index) +(define i4::Index) +(define i5::Index) +(define i6::Index) +(define i7::Index) +(define i8::Index) +(define i9::Index) +(define x0::Element) +(define x1::Element) +(define x2::Element) +(define x3::Element) +(define x4::Element) +(define x5::Element) +(define x6::Element) +(define x7::Element) +(define x8::Element) +(define x9::Element) + +(assert + (and + (= c (update (update (update (update (update (update (update (update (update (update a (i0) x0) (i1) x1) (i2) x2) (i3) x3) (i4) x4) (i5) x5) (i6) x6) (i7) x7) (i8) x8) (i9) x9)) + (= d (update (update (update (update (update (update (update (update (update (update b (i0) x0) (i1) x1) (i2) x2) (i3) x3) (i4) x4) (i5) x5) (i6) x6) (i7) x7) (i8) x8) (i9) x9)) + (not (= c d)))) + +(check) diff --git a/tests/regress/mcsat/ax/frugal10bool.ys.gold b/tests/regress/mcsat/ax/frugal10bool.ys.gold new file mode 100644 index 000000000..6b8a2c3d2 --- /dev/null +++ b/tests/regress/mcsat/ax/frugal10bool.ys.gold @@ -0,0 +1 @@ +sat diff --git a/tests/regress/mcsat/ax/frugal10bool.ys.options b/tests/regress/mcsat/ax/frugal10bool.ys.options new file mode 100644 index 000000000..bcf7e6dae --- /dev/null +++ b/tests/regress/mcsat/ax/frugal10bool.ys.options @@ -0,0 +1 @@ +--mcsat From 4ee459c38abb6b3c01890e781f8a68bcb3647086 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Mon, 20 Feb 2023 17:21:59 -0800 Subject: [PATCH 078/182] try to evaluate bool equalities by getting the lhs and rhs values --- src/mcsat/bool/bool_plugin.c | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/src/mcsat/bool/bool_plugin.c b/src/mcsat/bool/bool_plugin.c index 6d997f7da..f14fba70e 100644 --- a/src/mcsat/bool/bool_plugin.c +++ b/src/mcsat/bool/bool_plugin.c @@ -769,8 +769,32 @@ bool bool_plugin_explain_evaluation(plugin_t* plugin, term_t t, int_mset_t* vars term_t t_unsigned = unsigned_term(t); variable_t t_var = variable_db_get_variable_if_exists(var_db, t_unsigned); if (t_var == variable_null) { + // trying one step further to evaluate equality terms + if (term_kind(bp->ctx->terms, t_unsigned) == EQ_TERM) { + composite_term_t* t_desc = eq_term_desc(bp->ctx->terms, t); + term_t t1 = t_desc->arg[0]; + term_t t2 = t_desc->arg[1]; + assert(t1 != NULL_TERM); + assert(t2 != NULL_TERM); + variable_t t1_var = variable_db_get_variable_if_exists(var_db, t1); + variable_t t2_var = variable_db_get_variable_if_exists(var_db, t2); + if (t1_var != variable_null && t2_var != variable_null) { + if (trail_has_value(trail, t1_var) && trail_has_value(trail, t2_var)) { + bool negated = is_neg_term(t); + const mcsat_value_t* t1_var_value = trail_get_value(trail, t1_var); + const mcsat_value_t* t2_var_value = trail_get_value(trail, t2_var); + if (negated) { + return (t1_var_value->b == t2_var_value->b) != value->b; + } else { + return (t1_var_value->b == t2_var_value->b) == value->b; + } + } + } + } + // couldn't evaluate return false; } + int_mset_add(vars, t_var); if (trail_has_value(trail, t_var)) { bool negated = is_neg_term(t); From 75685fa93212596be3a495f7571e3c66c6884295 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Mon, 20 Feb 2023 17:35:56 -0800 Subject: [PATCH 079/182] minor --- src/mcsat/weq/weak_eq_graph.c | 15 --------------- 1 file changed, 15 deletions(-) diff --git a/src/mcsat/weq/weak_eq_graph.c b/src/mcsat/weq/weak_eq_graph.c index 997b8fac7..abb87665f 100644 --- a/src/mcsat/weq/weak_eq_graph.c +++ b/src/mcsat/weq/weak_eq_graph.c @@ -1256,21 +1256,6 @@ void weq_graph_check_array_conflict(weq_graph_t* weq, ivector_t* conflict) { if (weq->array_terms.size == 0) { return; } - - // optimization: skip array checks if not all terms (present in the - // eq_graph) have a value assigned in the graph - variable_db_t* var_db = weq->ctx->var_db; - term_t t = NULL_TERM; - int_hmap_pair_t* it; - for (it = int_hmap_first_record(&var_db->term_to_variable_map); - it != NULL; - it = int_hmap_next_record(&var_db->term_to_variable_map, it)) { - t = it->key; - if (t >= 0 && eq_graph_has_term(weq->eq_graph, t) && - !eq_graph_term_has_value(weq->eq_graph, t)) { - return; - } - } bool ok = true; From 0bf9d4802c6ef0f4dee503eb7066a84d92a44b0a Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Mon, 20 Feb 2023 17:47:37 -0800 Subject: [PATCH 080/182] make sure array terms have been assinged value before checking for conflicts --- src/mcsat/weq/weak_eq_graph.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/mcsat/weq/weak_eq_graph.c b/src/mcsat/weq/weak_eq_graph.c index abb87665f..e4e7ec150 100644 --- a/src/mcsat/weq/weak_eq_graph.c +++ b/src/mcsat/weq/weak_eq_graph.c @@ -1282,14 +1282,27 @@ void weq_graph_check_array_conflict(weq_graph_t* weq, ivector_t* conflict) { //ok = weq_graph_array_idx_check(weq, conflict, &array_terms); // check if updates are present. + // also make sure that relevant array terms have been assinged values bool updates_present = false; uint32_t i; term_table_t* terms = weq->ctx->terms; + composite_term_t* t_desc = NULL; for (i = 0; ok && i < array_terms.size; ++i) { + if (!eq_graph_term_has_value(weq->eq_graph, array_terms.data[i])) { + ok = false; + } if (term_kind(terms, array_terms.data[i]) == UPDATE_TERM) { updates_present = true; } } + for (i = 0; ok && i < select_terms.size; ++i) { + t_desc = app_term_desc(terms, select_terms.data[i]); + if (!eq_graph_term_has_value(weq->eq_graph, select_terms.data[i]) || + !eq_graph_term_has_value(weq->eq_graph, t_desc->arg[0]) || + !eq_graph_term_has_value(weq->eq_graph, t_desc->arg[1])) { + ok = false; + } + } (*weq->stats.array_terms) = array_terms.size; (*weq->stats.select_terms) = select_terms.size; From 949b1731a7acdfb572a19ac8d62c37fefc72e0ad Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Mon, 20 Feb 2023 19:02:08 -0800 Subject: [PATCH 081/182] one more test --- tests/regress/mcsat/ax/frugal10bool.smt2 | 40 +++++++++++++++++++ tests/regress/mcsat/ax/frugal10bool.smt2.gold | 1 + .../regress/mcsat/ax/frugal10bool.smt2.otions | 1 + 3 files changed, 42 insertions(+) create mode 100644 tests/regress/mcsat/ax/frugal10bool.smt2 create mode 100644 tests/regress/mcsat/ax/frugal10bool.smt2.gold create mode 100644 tests/regress/mcsat/ax/frugal10bool.smt2.otions diff --git a/tests/regress/mcsat/ax/frugal10bool.smt2 b/tests/regress/mcsat/ax/frugal10bool.smt2 new file mode 100644 index 000000000..346f5c673 --- /dev/null +++ b/tests/regress/mcsat/ax/frugal10bool.smt2 @@ -0,0 +1,40 @@ +(set-logic QF_AX) + +(declare-sort Index 0) +(define-sort Element () Bool) + +(declare-fun a () (Array Index Element)) +(declare-fun b () (Array Index Element)) +(declare-fun c () (Array Index Element)) +(declare-fun d () (Array Index Element)) + +(declare-fun i0 () Index) +(declare-fun i1 () Index) +(declare-fun i2 () Index) +(declare-fun i3 () Index) +(declare-fun i4 () Index) +(declare-fun i5 () Index) +(declare-fun i6 () Index) +(declare-fun i7 () Index) +(declare-fun i8 () Index) +(declare-fun i9 () Index) + +(declare-fun x0 () Element) +(declare-fun x1 () Element) +(declare-fun x2 () Element) +(declare-fun x3 () Element) +(declare-fun x4 () Element) +(declare-fun x5 () Element) +(declare-fun x6 () Element) +(declare-fun x7 () Element) +(declare-fun x8 () Element) +(declare-fun x9 () Element) + +(assert + (and + (= c (store (store (store (store (store (store (store (store (store (store a i0 x0) i1 x1) i2 x2) i3 x3) i4 x4) i5 x5) i6 x6) i7 x7) i8 x8) i9 x9)) + (= d (store (store (store (store (store (store (store (store (store (store b i0 x0) i1 x1) i2 x2) i3 x3) i4 x4) i5 x5) i6 x6) i7 x7) i8 x8) i9 x9)) + (not (= c d)))) + +(check-sat) +(exit) diff --git a/tests/regress/mcsat/ax/frugal10bool.smt2.gold b/tests/regress/mcsat/ax/frugal10bool.smt2.gold new file mode 100644 index 000000000..6b8a2c3d2 --- /dev/null +++ b/tests/regress/mcsat/ax/frugal10bool.smt2.gold @@ -0,0 +1 @@ +sat diff --git a/tests/regress/mcsat/ax/frugal10bool.smt2.otions b/tests/regress/mcsat/ax/frugal10bool.smt2.otions new file mode 100644 index 000000000..bcf7e6dae --- /dev/null +++ b/tests/regress/mcsat/ax/frugal10bool.smt2.otions @@ -0,0 +1 @@ +--mcsat From c1dc48a5f36f37e2fed939d1036fe6c8ba148442 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Mon, 20 Feb 2023 19:33:29 -0800 Subject: [PATCH 082/182] more tests --- tests/regress/mcsat/0e4fd0ab.smt2 | 133 ++++++++++++ tests/regress/mcsat/0e4fd0ab.smt2.gold | 1 + tests/regress/mcsat/0e4fd0ab.smt2.options | 1 + tests/regress/mcsat/80b4dce0.smt2 | 240 ++++++++++++++++++++++ tests/regress/mcsat/80b4dce0.smt2.gold | 1 + tests/regress/mcsat/80b4dce0.smt2.options | 1 + 6 files changed, 377 insertions(+) create mode 100644 tests/regress/mcsat/0e4fd0ab.smt2 create mode 100644 tests/regress/mcsat/0e4fd0ab.smt2.gold create mode 100644 tests/regress/mcsat/0e4fd0ab.smt2.options create mode 100644 tests/regress/mcsat/80b4dce0.smt2 create mode 100644 tests/regress/mcsat/80b4dce0.smt2.gold create mode 100644 tests/regress/mcsat/80b4dce0.smt2.options diff --git a/tests/regress/mcsat/0e4fd0ab.smt2 b/tests/regress/mcsat/0e4fd0ab.smt2 new file mode 100644 index 000000000..3f8079764 --- /dev/null +++ b/tests/regress/mcsat/0e4fd0ab.smt2 @@ -0,0 +1,133 @@ +(set-info :source |fuzzsmt|) +(set-info :smt-lib-version 2.0) +(set-info :category "random") +(set-info :status unknown) +(set-logic QF_AUFBV) +(declare-fun v0 () (_ BitVec 16)) +(declare-fun v1 () (_ BitVec 12)) +(declare-fun a2 () (Array (_ BitVec 13) (_ BitVec 14))) +(assert (let ((e3(_ bv58043 16))) +(let ((e4(_ bv4992 13))) +(let ((e5 (bvurem ((_ sign_extend 1) v1) e4))) +(let ((e6 (bvsub e3 ((_ sign_extend 3) e4)))) +(let ((e7 (ite (bvsge v0 e3) (_ bv1 1) (_ bv0 1)))) +(let ((e8 (store a2 ((_ extract 14 2) v0) ((_ sign_extend 2) v1)))) +(let ((e9 (store e8 e4 ((_ extract 14 1) e6)))) +(let ((e10 (store e8 e5 ((_ extract 15 2) e6)))) +(let ((e11 (select a2 ((_ sign_extend 12) e7)))) +(let ((e12 (select a2 ((_ sign_extend 12) e7)))) +(let ((e13 (select e9 ((_ extract 15 3) v0)))) +(let ((e14 (store e10 e5 ((_ sign_extend 13) e7)))) +(let ((e15 (select e10 ((_ sign_extend 12) e7)))) +(let ((e16 (store e10 e5 ((_ extract 15 2) e3)))) +(let ((e17 (select e10 ((_ extract 14 2) e3)))) +(let ((e18 (bvxnor e4 e5))) +(let ((e19 (ite (bvule e15 e12) (_ bv1 1) (_ bv0 1)))) +(let ((e20 (ite (bvule v0 e3) (_ bv1 1) (_ bv0 1)))) +(let ((e21 (bvand e17 e12))) +(let ((e22 (bvxor ((_ sign_extend 2) e15) v0))) +(let ((e23 (bvmul e6 ((_ sign_extend 2) e11)))) +(let ((e24 (ite (bvugt ((_ sign_extend 4) v1) e6) (_ bv1 1) (_ bv0 1)))) +(let ((e25 (bvnand v0 ((_ sign_extend 3) e4)))) +(let ((e26 (bvneg e19))) +(let ((e27 (bvlshr e25 v0))) +(let ((e28 (bvashr e13 e17))) +(let ((e29 (bvcomp ((_ sign_extend 13) e7) e12))) +(let ((e30 (bvsge e6 ((_ zero_extend 2) e12)))) +(let ((e31 (bvsge ((_ sign_extend 2) e11) e6))) +(let ((e32 (bvule e15 ((_ sign_extend 13) e26)))) +(let ((e33 (= e13 e13))) +(let ((e34 (bvugt v0 ((_ sign_extend 2) e11)))) +(let ((e35 (bvslt ((_ sign_extend 2) v1) e13))) +(let ((e36 (= e11 ((_ sign_extend 1) e5)))) +(let ((e37 (bvslt e15 ((_ zero_extend 1) e18)))) +(let ((e38 (bvule e11 ((_ sign_extend 13) e24)))) +(let ((e39 (bvsgt e27 e23))) +(let ((e40 (bvuge e11 ((_ sign_extend 2) v1)))) +(let ((e41 (bvsgt ((_ sign_extend 2) e11) e27))) +(let ((e42 (bvugt v1 ((_ zero_extend 11) e29)))) +(let ((e43 (bvslt e17 ((_ zero_extend 13) e19)))) +(let ((e44 (bvult ((_ zero_extend 1) e5) e11))) +(let ((e45 (= e27 ((_ sign_extend 15) e19)))) +(let ((e46 (bvult v0 ((_ sign_extend 2) e11)))) +(let ((e47 (bvslt e25 ((_ sign_extend 3) e18)))) +(let ((e48 (bvsgt v1 v1))) +(let ((e49 (bvult e17 ((_ sign_extend 13) e7)))) +(let ((e50 (bvsgt ((_ sign_extend 12) e7) e18))) +(let ((e51 (bvsle e15 ((_ zero_extend 13) e7)))) +(let ((e52 (bvule ((_ sign_extend 13) e26) e13))) +(let ((e53 (bvult ((_ zero_extend 2) e17) e3))) +(let ((e54 (= ((_ sign_extend 4) v1) v0))) +(let ((e55 (bvsle e23 ((_ sign_extend 15) e29)))) +(let ((e56 (bvule e17 e28))) +(let ((e57 (bvsle ((_ zero_extend 15) e19) e6))) +(let ((e58 (bvsge e22 ((_ sign_extend 3) e5)))) +(let ((e59 (distinct ((_ sign_extend 2) e17) v0))) +(let ((e60 (bvult ((_ zero_extend 15) e7) e6))) +(let ((e61 (bvslt ((_ sign_extend 2) e13) e6))) +(let ((e62 (bvule ((_ zero_extend 12) e19) e4))) +(let ((e63 (bvsgt e17 e17))) +(let ((e64 (bvslt ((_ zero_extend 13) e20) e17))) +(let ((e65 (bvult ((_ sign_extend 13) e19) e17))) +(let ((e66 (bvule v0 ((_ sign_extend 2) e15)))) +(let ((e67 (bvsle e22 ((_ zero_extend 2) e12)))) +(let ((e68 (bvsgt e11 ((_ zero_extend 1) e18)))) +(let ((e69 (bvsge ((_ zero_extend 13) e7) e13))) +(let ((e70 (bvsgt e3 ((_ sign_extend 15) e7)))) +(let ((e71 (distinct ((_ sign_extend 15) e19) e23))) +(let ((e72 (bvult e23 ((_ zero_extend 2) e11)))) +(let ((e73 (bvslt e11 e15))) +(let ((e74 (bvuge ((_ sign_extend 13) e24) e28))) +(let ((e75 (bvule ((_ sign_extend 1) e5) e21))) +(let ((e76 (xor e42 e74))) +(let ((e77 (and e65 e49))) +(let ((e78 (xor e35 e63))) +(let ((e79 (xor e60 e57))) +(let ((e80 (and e66 e48))) +(let ((e81 (or e44 e36))) +(let ((e82 (= e31 e51))) +(let ((e83 (xor e52 e71))) +(let ((e84 (ite e39 e62 e59))) +(let ((e85 (and e38 e64))) +(let ((e86 (ite e32 e76 e41))) +(let ((e87 (xor e73 e43))) +(let ((e88 (= e75 e79))) +(let ((e89 (and e83 e80))) +(let ((e90 (xor e78 e55))) +(let ((e91 (ite e50 e46 e53))) +(let ((e92 (and e77 e54))) +(let ((e93 (or e45 e47))) +(let ((e94 (not e85))) +(let ((e95 (= e67 e86))) +(let ((e96 (= e93 e81))) +(let ((e97 (or e30 e84))) +(let ((e98 (not e68))) +(let ((e99 (= e37 e34))) +(let ((e100 (or e88 e95))) +(let ((e101 (not e91))) +(let ((e102 (= e56 e97))) +(let ((e103 (and e99 e100))) +(let ((e104 (not e103))) +(let ((e105 (ite e58 e72 e69))) +(let ((e106 (and e105 e104))) +(let ((e107 (xor e70 e94))) +(let ((e108 (and e96 e92))) +(let ((e109 (ite e107 e61 e33))) +(let ((e110 (and e90 e40))) +(let ((e111 (= e98 e87))) +(let ((e112 (xor e106 e108))) +(let ((e113 (and e112 e112))) +(let ((e114 (and e110 e102))) +(let ((e115 (=> e82 e114))) +(let ((e116 (=> e109 e113))) +(let ((e117 (=> e116 e116))) +(let ((e118 (=> e111 e115))) +(let ((e119 (xor e118 e117))) +(let ((e120 (not e119))) +(let ((e121 (ite e89 e120 e120))) +(let ((e122 (and e121 e101))) +(let ((e123 (and e122 (not (= e4 (_ bv0 13)))))) +e123 +)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) + +(check-sat) diff --git a/tests/regress/mcsat/0e4fd0ab.smt2.gold b/tests/regress/mcsat/0e4fd0ab.smt2.gold new file mode 100644 index 000000000..3f65111b0 --- /dev/null +++ b/tests/regress/mcsat/0e4fd0ab.smt2.gold @@ -0,0 +1 @@ +unsat diff --git a/tests/regress/mcsat/0e4fd0ab.smt2.options b/tests/regress/mcsat/0e4fd0ab.smt2.options new file mode 100644 index 000000000..bcf7e6dae --- /dev/null +++ b/tests/regress/mcsat/0e4fd0ab.smt2.options @@ -0,0 +1 @@ +--mcsat diff --git a/tests/regress/mcsat/80b4dce0.smt2 b/tests/regress/mcsat/80b4dce0.smt2 new file mode 100644 index 000000000..3303bc480 --- /dev/null +++ b/tests/regress/mcsat/80b4dce0.smt2 @@ -0,0 +1,240 @@ +(set-info :source |fuzzsmt|) +(set-info :smt-lib-version 2.0) +(set-info :category "random") +(set-info :status unknown) +(set-logic QF_AUFBV) +(declare-fun v0 () (_ BitVec 96)) +(declare-fun v1 () (_ BitVec 115)) +(declare-fun v2 () (_ BitVec 41)) +(declare-fun v3 () (_ BitVec 35)) +(declare-fun a4 () (Array (_ BitVec 6) (_ BitVec 95))) +(declare-fun a5 () (Array (_ BitVec 12) (_ BitVec 45))) +(declare-fun a6 () (Array (_ BitVec 59) (_ BitVec 118))) +(assert (let ((e7(_ bv142 10))) +(let ((e8(_ bv2530726519770239 52))) +(let ((e9 (bvsrem ((_ sign_extend 63) e8) v1))) +(let ((e10 (bvsdiv ((_ sign_extend 61) v3) v0))) +(let ((e11 (bvxor e9 ((_ zero_extend 80) v3)))) +(let ((e12 ((_ zero_extend 5) e7))) +(let ((e13 (bvcomp e12 e12))) +(let ((e14 (ite (bvult e11 ((_ sign_extend 19) v0)) (_ bv1 1) (_ bv0 1)))) +(let ((e15 (bvadd v0 ((_ zero_extend 81) e12)))) +(let ((e16 (bvxor e8 ((_ zero_extend 17) v3)))) +(let ((e17 ((_ rotate_right 33) v2))) +(let ((e18 (store a6 ((_ zero_extend 18) e17) ((_ sign_extend 22) e10)))) +(let ((e19 (store a5 ((_ extract 50 39) e16) ((_ sign_extend 35) e7)))) +(let ((e20 (select a4 ((_ extract 12 7) v3)))) +(let ((e21 (select a6 ((_ zero_extend 58) e13)))) +(let ((e22 (select e18 ((_ extract 77 19) e10)))) +(let ((e23 (store e19 ((_ extract 72 61) e20) ((_ sign_extend 4) v2)))) +(let ((e24 (select a4 ((_ extract 38 33) e15)))) +(let ((e25 (store a4 ((_ extract 8 3) e12) ((_ sign_extend 80) e12)))) +(let ((e26 (select e25 ((_ extract 54 49) e24)))) +(let ((e27 (bvnand ((_ sign_extend 43) e16) e24))) +(let ((e28 (ite (bvuge ((_ sign_extend 86) e7) v0) (_ bv1 1) (_ bv0 1)))) +(let ((e29 (bvsrem e15 v0))) +(let ((e30 (bvxor e20 e27))) +(let ((e31 ((_ repeat 1) e11))) +(let ((e32 (bvxor e9 ((_ sign_extend 63) e8)))) +(let ((e33 ((_ rotate_left 17) e22))) +(let ((e34 (bvxor e16 ((_ sign_extend 11) v2)))) +(let ((e35 (bvmul ((_ zero_extend 77) e17) e22))) +(let ((e36 (bvneg e21))) +(let ((e37 (ite (= v1 ((_ zero_extend 20) e27)) (_ bv1 1) (_ bv0 1)))) +(let ((e38 (ite (bvugt e33 ((_ zero_extend 117) e28)) (_ bv1 1) (_ bv0 1)))) +(let ((e39 ((_ extract 0 0) e13))) +(let ((e40 (bvsdiv ((_ zero_extend 9) e14) e7))) +(let ((e41 (ite (bvsgt e10 ((_ sign_extend 81) e12)) (_ bv1 1) (_ bv0 1)))) +(let ((e42 (bvashr e39 e13))) +(let ((e43 (bvand ((_ zero_extend 60) v3) e30))) +(let ((e44 (bvsdiv e26 e27))) +(let ((e45 (bvuge ((_ zero_extend 66) e34) e21))) +(let ((e46 (bvsgt e44 ((_ zero_extend 94) e41)))) +(let ((e47 (bvule ((_ zero_extend 80) e12) e26))) +(let ((e48 (distinct e33 ((_ sign_extend 3) e32)))) +(let ((e49 (bvslt e44 ((_ sign_extend 94) e39)))) +(let ((e50 (distinct e22 ((_ zero_extend 22) e10)))) +(let ((e51 (bvugt e15 ((_ zero_extend 95) e28)))) +(let ((e52 (distinct ((_ sign_extend 114) e14) e9))) +(let ((e53 (bvule e37 e37))) +(let ((e54 (bvule e36 ((_ sign_extend 23) e26)))) +(let ((e55 (bvule ((_ zero_extend 61) v3) e15))) +(let ((e56 (bvult ((_ zero_extend 114) e13) e32))) +(let ((e57 (distinct e35 ((_ sign_extend 3) e9)))) +(let ((e58 (bvsle v1 ((_ zero_extend 20) e43)))) +(let ((e59 (bvule ((_ zero_extend 1) e20) e15))) +(let ((e60 (bvsgt e30 e24))) +(let ((e61 (bvsgt ((_ sign_extend 20) e26) e11))) +(let ((e62 (bvult ((_ zero_extend 77) v2) e36))) +(let ((e63 (distinct e32 ((_ zero_extend 19) e10)))) +(let ((e64 (bvugt e22 ((_ zero_extend 23) e43)))) +(let ((e65 (bvule ((_ zero_extend 40) e37) e17))) +(let ((e66 (= e39 e37))) +(let ((e67 (bvuge ((_ zero_extend 23) e26) e35))) +(let ((e68 (bvsle e9 ((_ zero_extend 63) e8)))) +(let ((e69 (bvsge e34 ((_ zero_extend 51) e28)))) +(let ((e70 (bvule ((_ zero_extend 94) e38) e30))) +(let ((e71 (bvslt ((_ zero_extend 17) v3) e34))) +(let ((e72 (bvugt ((_ sign_extend 117) e13) e36))) +(let ((e73 (bvsle e36 ((_ zero_extend 117) e28)))) +(let ((e74 (bvsge ((_ zero_extend 66) e8) e21))) +(let ((e75 (bvult e17 ((_ sign_extend 26) e12)))) +(let ((e76 (bvule ((_ sign_extend 3) e9) e22))) +(let ((e77 (bvult e36 e35))) +(let ((e78 (bvsgt e43 ((_ sign_extend 94) e42)))) +(let ((e79 (bvuge ((_ zero_extend 95) e41) e15))) +(let ((e80 (bvule e36 ((_ zero_extend 83) v3)))) +(let ((e81 (bvule ((_ sign_extend 66) e8) e36))) +(let ((e82 (bvslt ((_ zero_extend 94) e37) e44))) +(let ((e83 (= ((_ zero_extend 3) e32) e35))) +(let ((e84 (distinct e22 ((_ sign_extend 3) e11)))) +(let ((e85 (= e35 ((_ zero_extend 66) e16)))) +(let ((e86 (bvuge e9 ((_ zero_extend 19) e15)))) +(let ((e87 (bvsgt ((_ zero_extend 85) e40) e30))) +(let ((e88 (bvult ((_ zero_extend 117) e38) e36))) +(let ((e89 (bvule ((_ zero_extend 51) e37) e16))) +(let ((e90 (bvslt e21 ((_ sign_extend 77) v2)))) +(let ((e91 (bvule ((_ zero_extend 74) e17) e11))) +(let ((e92 (bvule e36 ((_ sign_extend 22) e10)))) +(let ((e93 (bvslt e8 e8))) +(let ((e94 (bvugt e13 e39))) +(let ((e95 (bvult ((_ zero_extend 117) e37) e36))) +(let ((e96 (bvule ((_ sign_extend 20) e20) e32))) +(let ((e97 (bvslt ((_ sign_extend 83) v3) e33))) +(let ((e98 (= e40 ((_ sign_extend 9) e37)))) +(let ((e99 (= e29 ((_ sign_extend 1) e20)))) +(let ((e100 (distinct ((_ sign_extend 114) e28) e9))) +(let ((e101 (bvsle e15 v0))) +(let ((e102 (bvsgt ((_ zero_extend 86) e7) e29))) +(let ((e103 (bvule e20 ((_ zero_extend 54) v2)))) +(let ((e104 (bvuge e11 ((_ zero_extend 114) e13)))) +(let ((e105 (bvugt e44 ((_ sign_extend 54) v2)))) +(let ((e106 (bvslt ((_ sign_extend 77) e17) e35))) +(let ((e107 (= e32 ((_ zero_extend 20) e30)))) +(let ((e108 (bvule ((_ sign_extend 11) e17) e34))) +(let ((e109 (= ((_ sign_extend 23) e20) e21))) +(let ((e110 (bvsle e20 ((_ zero_extend 94) e39)))) +(let ((e111 (bvslt e36 ((_ zero_extend 117) e42)))) +(let ((e112 (bvslt ((_ zero_extend 40) e14) e17))) +(let ((e113 (distinct ((_ zero_extend 1) e24) e15))) +(let ((e114 (= e32 ((_ sign_extend 19) e15)))) +(let ((e115 (bvule e15 ((_ zero_extend 95) e38)))) +(let ((e116 (bvslt e17 v2))) +(let ((e117 (bvule ((_ zero_extend 117) e39) e35))) +(let ((e118 (bvule e9 e9))) +(let ((e119 (bvult e35 e33))) +(let ((e120 (bvugt ((_ sign_extend 22) e10) e35))) +(let ((e121 (bvsge ((_ zero_extend 114) e38) v1))) +(let ((e122 (bvsge ((_ sign_extend 94) e13) e26))) +(let ((e123 (bvuge ((_ sign_extend 60) v3) e24))) +(let ((e124 (bvsge e15 ((_ sign_extend 44) e34)))) +(let ((e125 (bvuge e11 ((_ sign_extend 63) e16)))) +(let ((e126 (bvsgt ((_ zero_extend 40) e28) e17))) +(let ((e127 (bvsgt ((_ zero_extend 23) e27) e36))) +(let ((e128 (bvsle ((_ sign_extend 108) e40) e35))) +(let ((e129 (bvsle e39 e41))) +(let ((e130 (bvsle ((_ zero_extend 77) v2) e33))) +(let ((e131 (bvugt e21 ((_ zero_extend 77) v2)))) +(let ((e132 (bvult ((_ sign_extend 80) v3) v1))) +(let ((e133 (bvsge v0 ((_ sign_extend 1) e24)))) +(let ((e134 (bvuge v1 e9))) +(let ((e135 (bvule v1 e31))) +(let ((e136 (=> e98 e97))) +(let ((e137 (=> e79 e55))) +(let ((e138 (xor e128 e133))) +(let ((e139 (= e66 e116))) +(let ((e140 (and e80 e124))) +(let ((e141 (= e96 e111))) +(let ((e142 (not e82))) +(let ((e143 (ite e113 e136 e90))) +(let ((e144 (not e125))) +(let ((e145 (=> e143 e119))) +(let ((e146 (or e64 e78))) +(let ((e147 (xor e101 e122))) +(let ((e148 (xor e114 e70))) +(let ((e149 (and e61 e121))) +(let ((e150 (and e69 e105))) +(let ((e151 (or e45 e117))) +(let ((e152 (ite e139 e110 e88))) +(let ((e153 (=> e89 e68))) +(let ((e154 (ite e50 e84 e102))) +(let ((e155 (or e77 e137))) +(let ((e156 (ite e108 e154 e142))) +(let ((e157 (not e129))) +(let ((e158 (or e87 e87))) +(let ((e159 (or e92 e118))) +(let ((e160 (ite e156 e76 e138))) +(let ((e161 (= e67 e131))) +(let ((e162 (or e127 e157))) +(let ((e163 (= e141 e140))) +(let ((e164 (xor e94 e99))) +(let ((e165 (xor e85 e126))) +(let ((e166 (ite e75 e49 e73))) +(let ((e167 (and e54 e115))) +(let ((e168 (or e148 e153))) +(let ((e169 (ite e109 e72 e164))) +(let ((e170 (xor e60 e135))) +(let ((e171 (and e86 e165))) +(let ((e172 (ite e71 e51 e120))) +(let ((e173 (not e48))) +(let ((e174 (not e95))) +(let ((e175 (and e52 e168))) +(let ((e176 (= e106 e151))) +(let ((e177 (not e146))) +(let ((e178 (or e59 e155))) +(let ((e179 (= e145 e149))) +(let ((e180 (not e159))) +(let ((e181 (= e53 e169))) +(let ((e182 (= e134 e65))) +(let ((e183 (ite e175 e162 e103))) +(let ((e184 (and e158 e170))) +(let ((e185 (and e47 e179))) +(let ((e186 (ite e74 e123 e178))) +(let ((e187 (and e186 e56))) +(let ((e188 (not e57))) +(let ((e189 (xor e100 e163))) +(let ((e190 (= e132 e181))) +(let ((e191 (=> e91 e177))) +(let ((e192 (and e185 e93))) +(let ((e193 (= e112 e176))) +(let ((e194 (=> e83 e58))) +(let ((e195 (=> e191 e192))) +(let ((e196 (xor e195 e187))) +(let ((e197 (xor e167 e193))) +(let ((e198 (xor e150 e173))) +(let ((e199 (and e161 e46))) +(let ((e200 (ite e171 e152 e144))) +(let ((e201 (and e197 e166))) +(let ((e202 (not e198))) +(let ((e203 (ite e201 e63 e62))) +(let ((e204 (ite e81 e184 e200))) +(let ((e205 (=> e180 e199))) +(let ((e206 (=> e203 e204))) +(let ((e207 (or e190 e189))) +(let ((e208 (and e172 e205))) +(let ((e209 (=> e202 e208))) +(let ((e210 (and e104 e194))) +(let ((e211 (and e183 e130))) +(let ((e212 (ite e206 e147 e207))) +(let ((e213 (= e188 e210))) +(let ((e214 (=> e174 e213))) +(let ((e215 (= e182 e196))) +(let ((e216 (and e107 e209))) +(let ((e217 (xor e212 e215))) +(let ((e218 (and e216 e160))) +(let ((e219 (=> e214 e217))) +(let ((e220 (= e218 e211))) +(let ((e221 (not e219))) +(let ((e222 (=> e221 e220))) +(let ((e223 (and e222 (not (= e7 (_ bv0 10)))))) +(let ((e224 (and e223 (not (= e7 (bvnot (_ bv0 10))))))) +(let ((e225 (and e224 (not (= v0 (_ bv0 96)))))) +(let ((e226 (and e225 (not (= v0 (bvnot (_ bv0 96))))))) +(let ((e227 (and e226 (not (= v1 (_ bv0 115)))))) +(let ((e228 (and e227 (not (= v1 (bvnot (_ bv0 115))))))) +(let ((e229 (and e228 (not (= e27 (_ bv0 95)))))) +(let ((e230 (and e229 (not (= e27 (bvnot (_ bv0 95))))))) +e230 +))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) + +(check-sat) diff --git a/tests/regress/mcsat/80b4dce0.smt2.gold b/tests/regress/mcsat/80b4dce0.smt2.gold new file mode 100644 index 000000000..6b8a2c3d2 --- /dev/null +++ b/tests/regress/mcsat/80b4dce0.smt2.gold @@ -0,0 +1 @@ +sat diff --git a/tests/regress/mcsat/80b4dce0.smt2.options b/tests/regress/mcsat/80b4dce0.smt2.options new file mode 100644 index 000000000..bcf7e6dae --- /dev/null +++ b/tests/regress/mcsat/80b4dce0.smt2.options @@ -0,0 +1 @@ +--mcsat From 1f1b16e264925ec661c1e0296ca17383c6c698ba Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Tue, 21 Feb 2023 17:56:13 -0800 Subject: [PATCH 083/182] disable weq-graph sorting heuristic --- src/mcsat/weq/weak_eq_graph.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mcsat/weq/weak_eq_graph.c b/src/mcsat/weq/weak_eq_graph.c index e4e7ec150..b6f5bf1c8 100644 --- a/src/mcsat/weq/weak_eq_graph.c +++ b/src/mcsat/weq/weak_eq_graph.c @@ -1270,7 +1270,7 @@ void weq_graph_check_array_conflict(weq_graph_t* weq, ivector_t* conflict) { ivector_remove_duplicates(&array_terms); // TODO: Heuristic to try // store array terms according to heuristic score - int_array_sort2(array_terms.data, array_terms.size, weq->ctx, weq_graph_array_terms_compare); + //int_array_sort2(array_terms.data, array_terms.size, weq->ctx, weq_graph_array_terms_compare); init_ivector(&select_terms, 0); ivector_copy(&select_terms, weq->select_terms.data, weq->select_terms.size); From 0b3b218ef772d5f6f61df7b889ec1080f11872b3 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Wed, 22 Feb 2023 01:00:13 -0800 Subject: [PATCH 084/182] mcsat-array: fresh decision values for functions --- src/mcsat/uf/uf_plugin.c | 27 ++++++++++----------------- 1 file changed, 10 insertions(+), 17 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index 6106d23d9..be9e2f9a0 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -29,6 +29,7 @@ #include "utils/int_array_sort2.h" #include "utils/ptr_array_sort2.h" +#include "utils/int_hash_sets.h" #include "model/models.h" @@ -65,8 +66,8 @@ typedef struct { /** Weak Equality graph for array reasoning */ weq_graph_t weq_graph; - /** Function Values to types map */ - ptr_hmap_t fun_val_type_map; + /** Function Values that have been used */ + int_hset_t fun_used_values; /** Tmp vector */ int_mset_t tmp; @@ -117,7 +118,7 @@ void uf_plugin_construct(plugin_t* plugin, plugin_context_t* ctx) { scope_holder_construct(&uf->scope); init_ivector(&uf->conflict, 0); - init_ptr_hmap(&uf->fun_val_type_map, 0); + init_int_hset(&uf->fun_used_values, 0); int_mset_construct(&uf->tmp, NULL_TERM); // Terms @@ -152,7 +153,7 @@ void uf_plugin_destruct(plugin_t* plugin) { uf_plugin_t* uf = (uf_plugin_t*) plugin; scope_holder_destruct(&uf->scope); delete_ivector(&uf->conflict); - delete_ptr_hmap(&uf->fun_val_type_map); + delete_int_hset(&uf->fun_used_values); int_mset_destruct(&uf->tmp); eq_graph_destruct(&uf->eq_graph); @@ -505,6 +506,8 @@ void uf_plugin_decide(plugin_t* plugin, variable_t x, trail_token_t* decide, boo // DECIDE_FUNCTION_VALUE_START is the starting point for function values assert(picked_value < DECIDE_FUNCTION_VALUE_START); } else { + /* we pick different values for different functions. Equal + functions get equal values via equality propagation. */ if (forbidden.size > 0) { uint32_t max_forbidden_val = 0; const mcsat_value_t* v = forbidden.data[forbidden.size - 1]; @@ -519,21 +522,11 @@ void uf_plugin_decide(plugin_t* plugin, variable_t x, trail_token_t* decide, boo picked_value = DECIDE_FUNCTION_VALUE_START; } - while (true) { - ptr_hmap_pair_t *picked_val_type = ptr_hmap_find(&uf->fun_val_type_map, picked_value); - // if not in the map, pick it and safe in the map - if (picked_val_type == NULL) { - picked_val_type = ptr_hmap_get(&uf->fun_val_type_map, picked_value); - picked_val_type->val = x_type; - break; - } - // if in the map and the type agrees then pick the value - if (picked_val_type->val == x_type) { - break; - } - // picked value not good, increment and check in the loop + while (int_hset_member(&uf->fun_used_values, picked_value)) { picked_value += 1; } + // save the used value + int_hset_add(&uf->fun_used_values, picked_value); } } else { assert(x_cached_value->type == VALUE_RATIONAL); From fac8d7cd50717bcb7daa8494999c04e2ef16249a Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Fri, 24 Feb 2023 17:32:17 -0800 Subject: [PATCH 085/182] fix warnings --- src/mcsat/uf/uf_plugin.c | 3 +-- src/mcsat/weq/weak_eq_graph.c | 23 +++++++++++++++-------- 2 files changed, 16 insertions(+), 10 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index be9e2f9a0..a76351120 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -481,7 +481,6 @@ void uf_plugin_decide(plugin_t* plugin, variable_t x, trail_token_t* decide, boo } term_table_t *terms = uf->ctx->terms; - type_t x_type = term_type(terms, x_term); int32_t picked_value = 0; if (!cache_ok) { // Pick smallest value not in forbidden list @@ -509,7 +508,7 @@ void uf_plugin_decide(plugin_t* plugin, variable_t x, trail_token_t* decide, boo /* we pick different values for different functions. Equal functions get equal values via equality propagation. */ if (forbidden.size > 0) { - uint32_t max_forbidden_val = 0; + int32_t max_forbidden_val = 0; const mcsat_value_t* v = forbidden.data[forbidden.size - 1]; assert(v->type == VALUE_RATIONAL); bool ok = q_get32((rational_t*)&v->q, &max_forbidden_val); diff --git a/src/mcsat/weq/weak_eq_graph.c b/src/mcsat/weq/weak_eq_graph.c index b6f5bf1c8..e15da0a6b 100644 --- a/src/mcsat/weq/weak_eq_graph.c +++ b/src/mcsat/weq/weak_eq_graph.c @@ -276,6 +276,9 @@ const weq_graph_node_t* weq_graph_find_secondary_node_const(weq_graph_t* weq, return res; } + +#ifndef NDEBUG + /* helper function to extract index from an update term */ static inline @@ -286,6 +289,9 @@ term_t weq_graph_get_index_from_store(weq_graph_t* weq, term_t store) { return t_desc->arg[1]; } +#endif + + /* add t to vec if t is not the true term */ static inline @@ -672,6 +678,7 @@ void weq_graph_add_diff_terms_vars(weq_graph_t* weq, term_t arr) { /* Check Array idx lemma. * Read over write 1: when idices are equal. */ +/* static bool weq_graph_array_idx_check(weq_graph_t* weq, ivector_t* conflict, const ivector_t* array_terms) { @@ -706,6 +713,8 @@ bool weq_graph_array_idx_check(weq_graph_t* weq, ivector_t* conflict, } return true; } +*/ + /* Checks if arr1 and arr2 terms are weakly equivalanet on index idx. * If it is case, it also stores indices and path conditions. @@ -725,12 +734,8 @@ bool weq_graph_array_weak_eq_i(weq_graph_t* weq, term_t arr1, term_t arr2, assert(fn_arr1 != NULL); assert(fn_arr2 != NULL); - if (indices) { - old_indices_size = indices->size; - } - if (path_cond) { - old_path_cond_size = path_cond->size; - } + old_indices_size = indices->size; + old_path_cond_size = path_cond->size; if (fn_arr1 == fn_arr2) { uint32_t k; @@ -747,11 +752,11 @@ bool weq_graph_array_weak_eq_i(weq_graph_t* weq, term_t arr1, term_t arr2, } } - if (!res && indices) { + if (!res) { ivector_shrink(indices, old_indices_size); } - if (!res && path_cond) { + if (!res) { ivector_shrink(path_cond, old_path_cond_size); } @@ -1232,6 +1237,7 @@ term_t weq_graph_get_array_update_idx_lemma(weq_graph_t* weq, term_t update_term /* Compare terms according to their heuristic score */ +/* static bool weq_graph_array_terms_compare(void *data, term_t t1, term_t t2) { plugin_context_t* ctx = (plugin_context_t*) data; @@ -1245,6 +1251,7 @@ bool weq_graph_array_terms_compare(void *data, term_t t1, term_t t2) { return t1 > t2; } } +*/ /* The main method to check array conflicts. The conflict vector will * contain conflicting terms if an array conflict is found. It assumes From 71dbd841e2f47e7b925115301b7c68c370aeb159 Mon Sep 17 00:00:00 2001 From: Ahmed <43099566+ahmed-irfan@users.noreply.github.com> Date: Tue, 28 Feb 2023 21:15:18 -0800 Subject: [PATCH 086/182] Update weq term rep (#429) * update get-term-rep method + term order heuristic * more stats * fix --- src/mcsat/eq/equality_graph.c | 5 +++ src/mcsat/eq/equality_graph.h | 3 ++ src/mcsat/uf/uf_plugin.c | 29 +++++++++------ src/mcsat/weq/weak_eq_graph.c | 70 ++++++++++++++++++++--------------- src/mcsat/weq/weak_eq_graph.h | 5 ++- 5 files changed, 69 insertions(+), 43 deletions(-) diff --git a/src/mcsat/eq/equality_graph.c b/src/mcsat/eq/equality_graph.c index 73ecb4173..7c5ce3a46 100644 --- a/src/mcsat/eq/equality_graph.c +++ b/src/mcsat/eq/equality_graph.c @@ -1340,6 +1340,11 @@ const mcsat_value_t* eq_graph_get_propagated_term_value(const eq_graph_t* eq, te return eq->values_list.data + n_find->index; } +eq_node_id_t eq_graph_get_propagated_term_value_id(const eq_graph_t* eq, term_t t) { + const mcsat_value_t* val = eq_graph_get_propagated_term_value(eq, t); + return eq_graph_value_id(eq, val); +} + void eq_graph_propagate_trail(eq_graph_t* eq) { if (ctx_trace_enabled(eq->ctx, "mcsat::eq")) { diff --git a/src/mcsat/eq/equality_graph.h b/src/mcsat/eq/equality_graph.h index 22963a64d..e60d79cbd 100644 --- a/src/mcsat/eq/equality_graph.h +++ b/src/mcsat/eq/equality_graph.h @@ -296,6 +296,9 @@ bool eq_graph_has_propagated_term_value(const eq_graph_t* eq, term_t t); /** Get the value of a propagated term. */ const mcsat_value_t* eq_graph_get_propagated_term_value(const eq_graph_t* eq, term_t t); +/** Get the eq_node_id of a propagated term value. */ +eq_node_id_t eq_graph_get_propagated_term_value_id(const eq_graph_t* eq, term_t t); + /** Propagate the trail */ void eq_graph_propagate_trail(eq_graph_t* eq); diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index a76351120..13cdf1852 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -380,17 +380,24 @@ void uf_plugin_propagate(plugin_t* plugin, trail_token_t* prop) { prop->conflict(prop); (*uf->stats.conflicts) ++; // extract terms used in the conflict - /* for (i = 0; i < weq->conflict.size; ++i) { */ - /* t = weq->conflict.data[i]; */ - /* if (term_kind(terms, t) == EQ_TERM) { */ - /* t_desc = eq_term_desc(terms, t); */ - /* int_mset_add(&weq->tmp, t_desc->arg[0]); */ - /* int_mset_add(&weq->tmp, t_desc->arg[1]); */ - /* } else { */ - /* assert(false); */ - /* } */ - /* } */ - /* weq_graph_bump_terms_and_reset(weq, &weq->tmp); */ + term_table_t *terms = uf->ctx->terms; + composite_term_t* t_desc = NULL; + uint32_t i; + for (i = 0; i < uf->conflict.size; ++i) { + t = uf->conflict.data[i]; + ctx_trace_printf(uf->ctx, "TERM IS : "); + ctx_trace_term(uf->ctx, t); + if (term_kind(terms, t) == EQ_TERM) { + t_desc = eq_term_desc(terms, t); + } else if (term_kind(terms, t) == BV_EQ_ATOM) { + t_desc = bveq_atom_desc(terms, t); + } else { + assert(false); + } + int_mset_add(&uf->tmp, t_desc->arg[0]); + int_mset_add(&uf->tmp, t_desc->arg[1]); + } + uf_plugin_bump_terms_and_reset(uf, &uf->tmp); statistic_avg_add(uf->stats.avg_conflict_size, uf->conflict.size); } } diff --git a/src/mcsat/weq/weak_eq_graph.c b/src/mcsat/weq/weak_eq_graph.c index e15da0a6b..7d38d0618 100644 --- a/src/mcsat/weq/weak_eq_graph.c +++ b/src/mcsat/weq/weak_eq_graph.c @@ -43,7 +43,7 @@ void weq_graph_construct(weq_graph_t* weq, plugin_context_t* ctx, eq_graph_t* eq init_int_hset(&weq->diff_funs, 0); init_ptr_hmap(&weq->fun_node_map, 0); - init_int_hmap(&weq->fun_val_term_map, 0); + init_int_hmap(&weq->val_id_term_map, 0); init_ivector(&weq->path_cond, 0); init_ivector(&weq->path_indices1, 0); init_ivector(&weq->path_indices2, 0); @@ -66,7 +66,7 @@ void weq_graph_destruct(weq_graph_t* weq) { weq_graph_clear(weq); delete_ptr_hmap(&weq->fun_node_map); - delete_int_hmap(&weq->fun_val_term_map); + delete_int_hmap(&weq->val_id_term_map); } void weq_graph_push(weq_graph_t* weq) { @@ -91,12 +91,12 @@ void weq_graph_pop(weq_graph_t* weq) { } void weq_graph_stats_init(weq_graph_t* weq) { + weq->stats.array_check_calls = statistics_new_int(weq->ctx->stats, "mcsat::uf::array_check_calls"); weq->stats.array_terms = statistics_new_int(weq->ctx->stats, "mcsat::uf::array_terms"); weq->stats.select_terms = statistics_new_int(weq->ctx->stats, "mcsat::uf::select_terms"); weq->stats.array_update1_axioms = statistics_new_int(weq->ctx->stats, "mcsat::uf::array_update1_axioms"); weq->stats.array_update2_axioms = statistics_new_int(weq->ctx->stats, "mcsat::uf::array_update2_axioms"); weq->stats.array_ext_axioms = statistics_new_int(weq->ctx->stats, "mcsat::uf::array_ext_axioms"); - } // declaration @@ -166,7 +166,7 @@ void weq_graph_clear(weq_graph_t* weq) { safe_free((weq_graph_node_t *) p->val); } ptr_hmap_reset(&weq->fun_node_map); - int_hmap_reset(&weq->fun_val_term_map); + int_hmap_reset(&weq->val_id_term_map); } /* Create a new weq_graph node @@ -365,15 +365,11 @@ static void weq_graph_make_rep(weq_graph_t* weq, weq_graph_node_t* n) { static term_t weq_graph_get_term_rep(weq_graph_t* weq, term_t t) { assert(eq_graph_term_has_value(weq->eq_graph, t)); - const mcsat_value_t* val = eq_graph_get_propagated_term_value(weq->eq_graph, t); - int32_t v_int = 0; - bool ok = q_get32((rational_t*)&val->q, &v_int); - (void) ok; - assert(ok); + eq_node_id_t val_id = eq_graph_get_propagated_term_value_id(weq->eq_graph, t); - int_hmap_pair_t *v = int_hmap_find(&weq->fun_val_term_map, v_int); + int_hmap_pair_t *v = int_hmap_find(&weq->val_id_term_map, val_id); if (v == NULL) { - v = int_hmap_get(&weq->fun_val_term_map, v_int); + v = int_hmap_get(&weq->val_id_term_map, val_id); v->val = t; } @@ -754,9 +750,6 @@ bool weq_graph_array_weak_eq_i(weq_graph_t* weq, term_t arr1, term_t arr2, if (!res) { ivector_shrink(indices, old_indices_size); - } - - if (!res) { ivector_shrink(path_cond, old_path_cond_size); } @@ -974,10 +967,10 @@ bool weq_graph_array_ext_check(weq_graph_t* weq, ivector_t* conflict, } } - for (i = 0; res && i < array_terms->size; ++i) { + for (i = 1; res && i < array_terms->size; ++i) { arr1 = array_terms->data[i]; - for (j = i + 1; res && j < array_terms->size; ++j) { + for (j = 0; res && j < i; ++j) { arr2 = array_terms->data[j]; if (!int_hset_member(&seen, _o_yices_eq(arr1, arr2))) { res = weq_graph_array_ext_lemma(weq, conflict, arr1, arr2, select_terms); @@ -1090,7 +1083,7 @@ bool weq_graph_array_ext_diff_check(weq_graph_t* weq, ivector_t* conflict, } if (array_terms) { - for (i = 0; res && i < array_terms->size; ++i) { + for (i = 1; res && i < array_terms->size; ++i) { term_t arr1 = array_terms->data[i]; assert(variable_db_get_variable_if_exists(weq->ctx->var_db, arr1) != variable_null); @@ -1098,7 +1091,7 @@ bool weq_graph_array_ext_diff_check(weq_graph_t* weq, ivector_t* conflict, continue; } - for (j = i + 1; res && j < array_terms->size; ++j) { + for (j = 0; res && j < i; ++j) { term_t arr2 = array_terms->data[j]; res = weq_graph_array_ext_diff_lemma(weq, conflict, arr1, arr2); } @@ -1119,13 +1112,13 @@ bool weq_graph_array_read_over_write_check(weq_graph_t* weq, ivector_t* conflict uint32_t i, j, k; // generalized read-over-write lemma - for (i = 0; i < select_terms->size; ++ i) { + for (i = 1; i < select_terms->size; ++ i) { term_t t_i = select_terms->data[i]; type_t t_i_type = term_type(terms, t_i); assert(variable_db_get_variable_if_exists(weq->ctx->var_db, t_i) != variable_null); composite_term_t* e_i_desc = app_term_desc(terms, t_i); - for (j = i + 1; j < select_terms->size; ++ j) { + for (j = 0; j < i; ++ j) { term_t t_j = select_terms->data[j]; type_t t_j_type = term_type(terms, t_j); composite_term_t* e_j_desc = app_term_desc(terms, t_j); @@ -1253,6 +1246,23 @@ bool weq_graph_array_terms_compare(void *data, term_t t1, term_t t2) { } */ +static +void copy_uniques(ivector_t *to, ivector_t *from) { + int_hset_t seen; + init_int_hset(&seen, 0); + + term_t t = NULL_TERM; + uint32_t i; + for (i = 0; i < from->size; ++i) { + t = from->data[i]; + if (!int_hset_member(&seen, t)) { + ivector_push(to, t); + int_hset_add(&seen, t); + } + } +} + + /* The main method to check array conflicts. The conflict vector will * contain conflicting terms if an array conflict is found. It assumes * that all terms (assignable) present in the array_terms and @@ -1265,23 +1275,19 @@ void weq_graph_check_array_conflict(weq_graph_t* weq, ivector_t* conflict) { } bool ok = true; - ivector_t array_eq_terms, array_terms, select_terms; init_ivector(&array_eq_terms, 0); - ivector_copy(&array_eq_terms, weq->array_eq_terms.data, weq->array_eq_terms.size); - ivector_remove_duplicates(&array_eq_terms); + copy_uniques(&array_eq_terms, &weq->array_eq_terms); init_ivector(&array_terms, 0); - ivector_copy(&array_terms, weq->array_terms.data, weq->array_terms.size); - ivector_remove_duplicates(&array_terms); + copy_uniques(&array_terms, &weq->array_terms); // TODO: Heuristic to try // store array terms according to heuristic score //int_array_sort2(array_terms.data, array_terms.size, weq->ctx, weq_graph_array_terms_compare); init_ivector(&select_terms, 0); - ivector_copy(&select_terms, weq->select_terms.data, weq->select_terms.size); - ivector_remove_duplicates(&select_terms); + copy_uniques(&select_terms, &weq->select_terms); // TODO: Heuristic to try // store select terms according to heuristic score //int_array_sort2(select_terms.data, select_terms.size, weq->ctx, weq_graph_array_terms_compare); @@ -1307,7 +1313,7 @@ void weq_graph_check_array_conflict(weq_graph_t* weq, ivector_t* conflict) { if (!eq_graph_term_has_value(weq->eq_graph, select_terms.data[i]) || !eq_graph_term_has_value(weq->eq_graph, t_desc->arg[0]) || !eq_graph_term_has_value(weq->eq_graph, t_desc->arg[1])) { - ok = false; + ok = false; } } @@ -1315,8 +1321,12 @@ void weq_graph_check_array_conflict(weq_graph_t* weq, ivector_t* conflict) { (*weq->stats.select_terms) = select_terms.size; if (updates_present) { - if (USE_ARRAY_DIFF && ok) { - ok = weq_graph_array_ext_diff_check(weq, conflict, &array_eq_terms, NULL); + if (ok) { + (*weq->stats.array_check_calls) ++; + + if (USE_ARRAY_DIFF) { + ok = weq_graph_array_ext_diff_check(weq, conflict, &array_eq_terms, NULL); + } } if (ok) { diff --git a/src/mcsat/weq/weak_eq_graph.h b/src/mcsat/weq/weak_eq_graph.h index 18813773b..ab22d471b 100644 --- a/src/mcsat/weq/weak_eq_graph.h +++ b/src/mcsat/weq/weak_eq_graph.h @@ -58,8 +58,8 @@ typedef struct weq_graph_s { /** Map: terms to fun_nodes */ ptr_hmap_t fun_node_map; - /** Function Values to term (one rep term) */ - int_hmap_t fun_val_term_map; + /** Value eq_node_id to term (one rep term) */ + int_hmap_t val_id_term_map; /** Weak path equalities **/ ivector_t path_cond; @@ -71,6 +71,7 @@ typedef struct weq_graph_s { ivector_t path_indices2; struct { + statistic_int_t* array_check_calls; statistic_int_t* array_terms; statistic_int_t* select_terms; statistic_int_t* array_update1_axioms; From 22cf1354f661dbe5953b63b83602f425766a79d3 Mon Sep 17 00:00:00 2001 From: Ahmed <43099566+ahmed-irfan@users.noreply.github.com> Date: Tue, 28 Feb 2023 21:18:37 -0800 Subject: [PATCH 087/182] minor minor --- src/mcsat/uf/uf_plugin.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index 13cdf1852..6f2e09a6e 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -385,8 +385,6 @@ void uf_plugin_propagate(plugin_t* plugin, trail_token_t* prop) { uint32_t i; for (i = 0; i < uf->conflict.size; ++i) { t = uf->conflict.data[i]; - ctx_trace_printf(uf->ctx, "TERM IS : "); - ctx_trace_term(uf->ctx, t); if (term_kind(terms, t) == EQ_TERM) { t_desc = eq_term_desc(terms, t); } else if (term_kind(terms, t) == BV_EQ_ATOM) { From 6de3d6fe37abd4a6eec1d49e906bb31278a455bf Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Tue, 28 Feb 2023 21:42:13 -0800 Subject: [PATCH 088/182] add missing options file for a mcsat uf test --- tests/regress/mcsat/uf/PEQ012_size3.smt2.options | 1 + 1 file changed, 1 insertion(+) create mode 100644 tests/regress/mcsat/uf/PEQ012_size3.smt2.options diff --git a/tests/regress/mcsat/uf/PEQ012_size3.smt2.options b/tests/regress/mcsat/uf/PEQ012_size3.smt2.options new file mode 100644 index 000000000..bcf7e6dae --- /dev/null +++ b/tests/regress/mcsat/uf/PEQ012_size3.smt2.options @@ -0,0 +1 @@ +--mcsat From 3b3990d7c1c6944df72acd2955f51d4b72f46f2c Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Wed, 1 Mar 2023 00:08:43 -0800 Subject: [PATCH 089/182] enabling arrays + nonlinear arithmetic --- src/api/context_config.c | 12 ++++++------ src/mcsat/uf/uf_plugin.c | 10 ++++++++-- 2 files changed, 14 insertions(+), 8 deletions(-) diff --git a/src/api/context_config.c b/src/api/context_config.c index 54484ba37..adaccc4a2 100644 --- a/src/api/context_config.c +++ b/src/api/context_config.c @@ -189,9 +189,9 @@ static const int32_t logic2arch[NUM_SMT_LOGICS] = { CTX_ARCH_EGFUNSPLX, // QF_ALIA CTX_ARCH_EGFUNSPLX, // QF_ALRA CTX_ARCH_EGFUNSPLX, // QF_ALIRA - -1, // QF_ANIA - -1, // QF_ANRA - -1, // QF_ANIRA + CTX_ARCH_MCSAT, // QF_ANIA + CTX_ARCH_MCSAT, // QF_ANRA + CTX_ARCH_MCSAT, // QF_ANIRA CTX_ARCH_EGFUN, // QF_AUF CTX_ARCH_EGBV, // QF_UFBV CTX_ARCH_EGSPLX, // QF_UFIDL @@ -206,9 +206,9 @@ static const int32_t logic2arch[NUM_SMT_LOGICS] = { CTX_ARCH_EGFUNSPLX, // QF_AUFLIA CTX_ARCH_EGFUNSPLX, // QF_AUFLRA CTX_ARCH_EGFUNSPLX, // QF_AUFLIRA - -1, // QF_AUFNIA - -1, // QF_AUFNRA - -1, // QF_AUFNIRA + CTX_ARCH_MCSAT, // QF_AUFNIA + CTX_ARCH_MCSAT, // QF_AUFNRA + CTX_ARCH_MCSAT, // QF_AUFNIRA CTX_ARCH_EGFUNSPLXBV, // ALL interpreted as QF_AUFLIRA + QF_BV }; diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index 6f2e09a6e..72030ee3c 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -254,12 +254,16 @@ void uf_plugin_add_to_eq_graph(uf_plugin_t* uf, term_t t, bool record) { t_desc = eq_term_desc(terms, t); eq_graph_add_ifun_term(&uf->eq_graph, t, EQ_TERM, 2, t_desc->arg); // remember array terms - if (is_function_term(terms, t_desc->arg[0])) { + if (is_function_term(terms, t_desc->arg[0]) && + (term_kind(terms, t_desc->arg[0]) == UNINTERPRETED_TERM || + term_kind(terms, t_desc->arg[0]) == UPDATE_TERM)) { weq_graph_add_array_eq_term(&uf->weq_graph, t); } uint32_t i; for (i = 0; i < 2; ++ i) { - if (is_function_term(terms, t_desc->arg[i])) { + if (is_function_term(terms, t_desc->arg[i]) && + (term_kind(terms, t_desc->arg[i]) == UNINTERPRETED_TERM || + term_kind(terms, t_desc->arg[i]) == UPDATE_TERM)) { weq_graph_add_array_term(&uf->weq_graph, t_desc->arg[i]); } } @@ -389,6 +393,8 @@ void uf_plugin_propagate(plugin_t* plugin, trail_token_t* prop) { t_desc = eq_term_desc(terms, t); } else if (term_kind(terms, t) == BV_EQ_ATOM) { t_desc = bveq_atom_desc(terms, t); + } else if (term_kind(terms, t) == ARITH_BINEQ_ATOM) { + t_desc = arith_bineq_atom_desc(terms, t); } else { assert(false); } From b087635f6751f967f7403090f770a791d818e43b Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Wed, 1 Mar 2023 00:50:35 -0800 Subject: [PATCH 090/182] tests for qf_ania and qf_aufnia --- .../mcsat/avg20_true-unreach-call.i_9.smt2 | 40 + .../avg20_true-unreach-call.i_9.smt2.gold | 1 + .../mcsat/cs_lazy_false-unreach-call.i.smt2 | 4333 +++++++++++++++++ .../cs_lazy_false-unreach-call.i.smt2.gold | 1 + ...blast.01_false-unreach-call.i.cil.c_0.smt2 | 3783 ++++++++++++++ ....01_false-unreach-call.i.cil.c_0.smt2.gold | 1 + 6 files changed, 8159 insertions(+) create mode 100644 tests/regress/mcsat/avg20_true-unreach-call.i_9.smt2 create mode 100644 tests/regress/mcsat/avg20_true-unreach-call.i_9.smt2.gold create mode 100644 tests/regress/mcsat/cs_lazy_false-unreach-call.i.smt2 create mode 100644 tests/regress/mcsat/cs_lazy_false-unreach-call.i.smt2.gold create mode 100644 tests/regress/mcsat/s3_srvr.blast.01_false-unreach-call.i.cil.c_0.smt2 create mode 100644 tests/regress/mcsat/s3_srvr.blast.01_false-unreach-call.i.cil.c_0.smt2.gold diff --git a/tests/regress/mcsat/avg20_true-unreach-call.i_9.smt2 b/tests/regress/mcsat/avg20_true-unreach-call.i_9.smt2 new file mode 100644 index 000000000..d0c90541a --- /dev/null +++ b/tests/regress/mcsat/avg20_true-unreach-call.i_9.smt2 @@ -0,0 +1,40 @@ +(set-info :smt-lib-version 2.6) +(set-logic QF_ANIA) +(set-info :source "| +Generated by the tool Ultimate Automizer [1,2] which implements +an automata theoretic approach [3] to software verification. + +This SMT script belongs to a set of SMT scripts that was generated by +applying Ultimate Automizer to benchmarks [4] from the SV-COMP 2019 [5,6]. +This script might _not_ contain all SMT commands that are used by +Ultimate Automizer. In order to satisfy the restrictions of +the SMT-COMP we have to drop e.g., the commands for getting +values (resp. models), unsatisfiable cores and interpolants. + +2019-04-27, Matthias Heizmann (heizmann@informatik.uni-freiburg.de) + +[1] https://ultimate.informatik.uni-freiburg.de/automizer/ +[2] Matthias Heizmann, Yu-Fang Chen, Daniel Dietsch, Marius Greitschus, + Jochen Hoenicke, Yong Li, Alexander Nutz, Betim Musa, Christian + Schilling, Tanja Schindler, Andreas Podelski: Ultimate Automizer + and the Search for Perfect Interpolants - (Competition Contribution). + TACAS (2) 2018: 447-451 +[3] Matthias Heizmann, Jochen Hoenicke, Andreas Podelski: Software Model + Checking for People Who Love Automata. CAV 2013:36-52 +[4] https://github.com/sosy-lab/sv-benchmarks +[5] Dirk Beyer: Automatic Verification of C and Java Programs: SV-COMP 2019. + TACAS (3) 2019: 133-155 +[6] https://sv-comp.sosy-lab.org/2019/ +|") +(set-info :license "https://creativecommons.org/licenses/by/4.0/") +(set-info :category "industrial") +(set-info :status unknown) +(declare-fun |v_#memory_int_110| () (Array Int (Array Int Int))) +(declare-fun |main_~#x~0.base| () Int) +(declare-fun |main_~#x~0.offset| () Int) +(declare-fun main_~ret~1 () Int) +(declare-fun |#memory_int| () (Array Int (Array Int Int))) +(assert (let ((.cse50 (+ |main_~#x~0.offset| 28)) (.cse59 (+ |main_~#x~0.offset| 12)) (.cse42 (+ |main_~#x~0.offset| 72)) (.cse37 (+ |main_~#x~0.offset| 4)) (.cse55 (+ |main_~#x~0.offset| 64)) (.cse43 (+ |main_~#x~0.offset| 76)) (.cse49 (+ |main_~#x~0.offset| 8)) (.cse54 (+ |main_~#x~0.offset| 52)) (.cse44 (+ |main_~#x~0.offset| 44)) (.cse45 (+ |main_~#x~0.offset| 68)) (.cse53 (+ |main_~#x~0.offset| 60)) (.cse57 (+ |main_~#x~0.offset| 56)) (.cse48 (+ |main_~#x~0.offset| 40)) (.cse52 (+ |main_~#x~0.offset| 32)) (.cse47 (+ |main_~#x~0.offset| 20)) (.cse46 (+ |main_~#x~0.offset| 24)) (.cse51 (+ |main_~#x~0.offset| 36)) (.cse58 (+ |main_~#x~0.offset| 48)) (.cse75 (select |#memory_int| |main_~#x~0.base|)) (.cse56 (+ |main_~#x~0.offset| 16))) (let ((.cse9 (select .cse75 .cse56)) (.cse10 (select .cse75 .cse58)) (.cse11 (select .cse75 .cse51)) (.cse12 (select .cse75 .cse46)) (.cse13 (select .cse75 .cse47)) (.cse14 (select .cse75 .cse52)) (.cse16 (select .cse75 .cse48)) (.cse15 (select .cse75 .cse57)) (.cse17 (select .cse75 .cse53)) (.cse18 (select .cse75 .cse45)) (.cse19 (select .cse75 .cse44)) (.cse20 (select .cse75 .cse54)) (.cse21 (select .cse75 |main_~#x~0.offset|)) (.cse22 (select .cse75 .cse49)) (.cse24 (select .cse75 .cse43)) (.cse23 (select .cse75 .cse55)) (.cse25 (select .cse75 .cse37)) (.cse26 (select .cse75 .cse42)) (.cse28 (select .cse75 .cse59)) (.cse27 (select .cse75 .cse50))) (let ((.cse73 (+ .cse9 .cse10 .cse11 .cse12 .cse13 .cse14 .cse16 .cse15 .cse17 .cse18 .cse19 .cse20 .cse21 .cse22 .cse24 .cse23 .cse25 .cse26 .cse28 .cse27)) (.cse61 (+ .cse9 .cse11 .cse10 .cse12 .cse13 .cse14 .cse16 .cse15 .cse17 .cse18 .cse19 .cse20 .cse21 .cse22 .cse23 .cse24 .cse25 .cse26 .cse28 .cse27)) (.cse71 (+ .cse9 .cse10 .cse11 .cse12 .cse13 .cse14 .cse15 .cse16 .cse17 .cse18 .cse19 .cse20 .cse21 .cse22 .cse23 .cse24 .cse25 .cse26 .cse28 .cse27))) (let ((.cse66 (= |main_~#x~0.offset| 0)) (.cse70 (div .cse71 20)) (.cse72 (div .cse61 20)) (.cse74 (div .cse73 20))) (let ((.cse63 (not (< 2147483647 (mod (+ .cse74 1) 4294967296)))) (.cse64 (mod .cse74 4294967296)) (.cse65 (not (<= 0 .cse73))) (.cse2 (+ main_~ret~1 4294967296)) (.cse60 (mod .cse72 4294967296)) (.cse62 (mod (+ .cse72 1) 4294967296)) (.cse1 (= 0 (mod .cse71 20))) (.cse4 (not (< .cse71 0))) (.cse0 (mod .cse70 4294967296)) (.cse5 (not .cse66)) (.cse3 (mod (+ .cse70 1) 4294967296))) (and (or (not (< 2147483647 .cse0)) .cse1 (not (= .cse2 .cse3)) (not (< 2147483647 .cse3)) .cse4 .cse5) (let ((.cse8 (+ .cse9 .cse10 .cse11 .cse12 .cse13 .cse14 .cse15 .cse16 .cse17 .cse18 .cse19 .cse20 .cse21 .cse22 .cse23 .cse24 .cse25 .cse26 .cse27 .cse28))) (let ((.cse7 (div .cse8 20))) (let ((.cse6 (mod .cse7 4294967296))) (or (not (< 2147483647 .cse6)) (not (< 2147483647 (mod (+ .cse7 1) 4294967296))) .cse5 (not (= (mod .cse8 20) 0)) (not (= .cse2 .cse6)))))) (let ((.cse30 (+ .cse9 .cse10 .cse11 .cse12 .cse13 .cse14 .cse15 .cse16 .cse17 .cse18 .cse19 .cse20 .cse21 .cse22 .cse24 .cse23 .cse25 .cse26 .cse27 .cse28))) (let ((.cse31 (div .cse30 20))) (let ((.cse29 (mod .cse31 4294967296))) (or (not (= main_~ret~1 .cse29)) (not (<= 0 .cse30)) (not (<= (mod (+ .cse31 1) 4294967296) 2147483647)) .cse5 (not (<= .cse29 2147483647)))))) (let ((.cse32 (+ .cse9 .cse11 .cse10 .cse12 .cse13 .cse14 .cse15 .cse16 .cse17 .cse18 .cse19 .cse20 .cse21 .cse22 .cse23 .cse24 .cse25 .cse26 .cse27 .cse28))) (let ((.cse33 (div .cse32 20))) (let ((.cse34 (mod (+ .cse33 1) 4294967296))) (or (= 0 (mod .cse32 20)) (not (< .cse32 0)) (not (<= (mod .cse33 4294967296) 2147483647)) .cse5 (not (= .cse34 .cse2)) (not (< 2147483647 .cse34)))))) (let ((.cse35 (select |v_#memory_int_110| |main_~#x~0.base|))) (let ((.cse36 (select .cse35 .cse37)) (.cse38 (select .cse35 |main_~#x~0.offset|))) (let ((.cse41 (+ (select .cse35 .cse42) (select .cse35 .cse43) (select .cse35 .cse44) (select .cse35 .cse45) (select .cse35 .cse46) (select .cse35 .cse47) (select .cse35 .cse48) .cse36 (select .cse35 .cse49) (select .cse35 .cse50) (select .cse35 .cse51) (select .cse35 .cse52) (select .cse35 .cse53) (select .cse35 .cse54) (select .cse35 .cse55) (select .cse35 .cse56) (select .cse35 .cse57) (select .cse35 .cse58) .cse38 (select .cse35 .cse59)))) (let ((.cse39 (div .cse41 20))) (let ((.cse40 (mod .cse39 4294967296))) (or (not (= (store |v_#memory_int_110| |main_~#x~0.base| (store (store .cse35 |main_~#x~0.offset| .cse36) .cse37 .cse38)) |#memory_int|)) (not (<= (mod (+ .cse39 1) 4294967296) 2147483647)) .cse5 (not (<= .cse40 2147483647)) (not (= (mod .cse41 20) 0)) (not (= .cse40 main_~ret~1)))))))) (or (not (= main_~ret~1 .cse60)) (not (= 0 (mod .cse61 20))) (not (< 2147483647 .cse62)) .cse5 (not (<= .cse60 2147483647))) (or .cse63 (not (= .cse2 .cse64)) .cse5 (not (< 2147483647 .cse64)) .cse65) (or (not (<= .cse64 2147483647)) .cse63 (not (= main_~ret~1 .cse64)) .cse5 .cse65) .cse66 (or (not (< 2147483647 .cse60)) (not (<= 0 .cse61)) .cse5 (not (= .cse2 .cse60)) (not (<= .cse62 2147483647))) (let ((.cse68 (+ .cse9 .cse11 .cse10 .cse12 .cse13 .cse14 .cse16 .cse15 .cse17 .cse18 .cse19 .cse20 .cse21 .cse22 .cse24 .cse23 .cse25 .cse26 .cse27 .cse28))) (let ((.cse69 (div .cse68 20))) (let ((.cse67 (mod (+ .cse69 1) 4294967296))) (or (not (= .cse67 main_~ret~1)) (not (< .cse68 0)) (not (< 2147483647 (mod .cse69 4294967296))) (not (<= .cse67 2147483647)) .cse5 (= 0 (mod .cse68 20)))))) (or .cse1 .cse4 (not (<= .cse0 2147483647)) .cse5 (not (= .cse3 main_~ret~1)) (not (<= .cse3 2147483647)))))))))) +(assert (let ((.cse0 (select |v_#memory_int_110| |main_~#x~0.base|))) (= (select .cse0 (+ |main_~#x~0.offset| 64)) (select .cse0 (+ |main_~#x~0.offset| 72))))) +(check-sat) +(exit) diff --git a/tests/regress/mcsat/avg20_true-unreach-call.i_9.smt2.gold b/tests/regress/mcsat/avg20_true-unreach-call.i_9.smt2.gold new file mode 100644 index 000000000..6b8a2c3d2 --- /dev/null +++ b/tests/regress/mcsat/avg20_true-unreach-call.i_9.smt2.gold @@ -0,0 +1 @@ +sat diff --git a/tests/regress/mcsat/cs_lazy_false-unreach-call.i.smt2 b/tests/regress/mcsat/cs_lazy_false-unreach-call.i.smt2 new file mode 100644 index 000000000..176dcaee4 --- /dev/null +++ b/tests/regress/mcsat/cs_lazy_false-unreach-call.i.smt2 @@ -0,0 +1,4333 @@ +(set-info :smt-lib-version 2.6) +(set-logic QF_ANIA) +(set-info + :source | +SMT script generated by Ultimate Automizer [1,2]. +Ultimate Automizer is an automatic software verification tool that implements +a new automata-theoretic approach [3]. + +This SMT script belongs to a set of SMT scripts that was generated by applying +Ultimate Automizer to benchmarks from the SV-COMP 2015 [4,5] which are available +at [6]. + +This script does _not_ contain all SMT commands that are used by Ultimate +Automizer while verifying a program. In order to fulfill the restrictions of +the main track at SMT-COMP this script contains only the commands that are +sufficient to reproduce one single satisfiablity check. + +2015-04-30, Matthias Heizmann (heizmann@informatik.uni-freiburg.de) + + +[1] https://ultimate.informatik.uni-freiburg.de/automizer/ +[2] Matthias Heizmann, Daniel Dietsch, Jan Leike, Betim Musa, Andreas Podelski: +Ultimate Automizer with Array Interpolation - (Competition Contribution). +TACAS 2015: 455-457 +[3] Matthias Heizmann, Jochen Hoenicke, Andreas Podelski: Software Model +Checking for People Who Love Automata. CAV 2013:36-52 +[4] Dirk Beyer: Software Verification and Verifiable Witnesses - (Report on +SV-COMP 2015). TACAS 2015: 401-416 +[5] http://sv-comp.sosy-lab.org/2015/ +[6] https://svn.sosy-lab.org/software/sv-benchmarks/tags/svcomp15/ + + +Made compatible to SMT-COMP rules by SMTInterpol +|) +(set-info :category "industrial") +(set-info :status unsat) +(declare-fun |#funAddr~thread1.base| () Int) +(declare-fun |#funAddr~thread1.offset| () Int) +(declare-fun |#funAddr~thread2.base| () Int) +(declare-fun |#funAddr~thread2.offset| () Int) +(declare-fun |#funAddr~thread3.base| () Int) +(declare-fun |#funAddr~thread3.offset| () Int) +(declare-fun |#funAddr~main_thread.base| () Int) +(declare-fun |#funAddr~main_thread.offset| () Int) +(declare-fun |#sizeof~INT| () Int) +(assert + (and (= |#funAddr~thread1.base| (- 1)) (= |#funAddr~thread1.offset| 0))) +(assert + (and (= |#funAddr~thread2.base| (- 1)) (= |#funAddr~thread2.offset| 1))) +(assert + (and (= |#funAddr~thread3.base| (- 1)) (= |#funAddr~thread3.offset| 2))) +(assert + (and (= |#funAddr~main_thread.base| (- 1)) + (= |#funAddr~main_thread.offset| 3))) +(assert (= |#sizeof~INT| 4)) +(declare-fun ~__THREAD_RUNNING_-1 () Int) +(declare-fun |#memory_int_-1| () (Array Int (Array Int Int))) +(declare-fun ~__CS_thread_lockedon.offset_-1 () (Array Int (Array Int Int))) +(declare-fun ~__CS_thread_lockedon.base_-1 () (Array Int (Array Int Int))) +(declare-fun ~__CS_thread.base_-1 () (Array Int Int)) +(declare-fun ~__CS_error_-1 () Int) +(declare-fun ~__CS_ret_-1 () Int) +(declare-fun |#length_-1| () (Array Int Int)) +(declare-fun |#NULL.offset_-1| () Int) +(declare-fun ~__CS_thread_born_round_-1 () (Array Int Int)) +(declare-fun ~__CS_round_-1 () Int) +(declare-fun ~__CS_thread_allocated_-1 () (Array Int Int)) +(declare-fun ~__CS_thread.offset_-1 () (Array Int Int)) +(declare-fun |#valid_-1| () (Array Int Int)) +(declare-fun |~#mutex.offset_-1| () Int) +(declare-fun |~#mutex.base_-1| () Int) +(declare-fun ~__CS_ret_ERROR_-1 () Int) +(declare-fun ~__CS_thread_index_-1 () Int) +(declare-fun ~__THREAD_FINISHED_-1 () Int) +(declare-fun ~__CS_ret_PREEMPTED_-1 () Int) +(declare-fun |#NULL.base_-1| () Int) +(declare-fun ~data_-1 () (Array Int Int)) +(declare-fun ~__THREAD_UNUSED_-1 () Int) +(declare-fun ~__CS_thread_status_-1 () (Array Int (Array Int Int))) +(declare-fun |old(#valid)_0| () (Array Int Int)) +(declare-fun |old(~__THREAD_RUNNING)_0| () Int) +(declare-fun |old(~__CS_ret_ERROR)_0| () Int) +(declare-fun |old(~__CS_error)_0| () Int) +(declare-fun |old(~__CS_thread_born_round)_0| () (Array Int Int)) +(declare-fun |old(~__THREAD_UNUSED)_0| () Int) +(declare-fun |old(#NULL.offset)_0| () Int) +(declare-fun |old(~__CS_ret_PREEMPTED)_0| () Int) +(declare-fun |old(#memory_int)_0| () (Array Int (Array Int Int))) +(declare-fun |old(~__CS_thread_lockedon.base)_0| () + (Array Int (Array Int Int))) +(declare-fun |old(~data)_0| () (Array Int Int)) +(declare-fun |old(~__CS_thread_lockedon.offset)_0| () + (Array Int (Array Int Int))) +(declare-fun |old(~#mutex.base)_0| () Int) +(declare-fun |old(~__THREAD_FINISHED)_0| () Int) +(declare-fun |old(#NULL.base)_0| () Int) +(declare-fun |old(~__CS_thread_allocated)_0| () (Array Int Int)) +(declare-fun |old(#length)_0| () (Array Int Int)) +(declare-fun |old(~__CS_round)_0| () Int) +(declare-fun |old(~__CS_thread_status)_0| () (Array Int (Array Int Int))) +(declare-fun |old(~__CS_thread.base)_0| () (Array Int Int)) +(declare-fun |old(~#mutex.offset)_0| () Int) +(declare-fun |old(~__CS_thread_index)_0| () Int) +(declare-fun |old(~__CS_ret)_0| () Int) +(declare-fun |old(~__CS_thread.offset)_0| () (Array Int Int)) +(declare-fun ~__THREAD_RUNNING_0 () Int) +(declare-fun |#memory_int_0| () (Array Int (Array Int Int))) +(declare-fun ~__CS_thread_lockedon.offset_0 () (Array Int (Array Int Int))) +(declare-fun ~__CS_thread_lockedon.base_0 () (Array Int (Array Int Int))) +(declare-fun ~__CS_thread.base_0 () (Array Int Int)) +(declare-fun ~__CS_error_0 () Int) +(declare-fun ~__CS_ret_0 () Int) +(declare-fun |#length_0| () (Array Int Int)) +(declare-fun |#NULL.offset_0| () Int) +(declare-fun ~__CS_thread_born_round_0 () (Array Int Int)) +(declare-fun ~__CS_round_0 () Int) +(declare-fun ~__CS_thread_allocated_0 () (Array Int Int)) +(declare-fun ~__CS_thread.offset_0 () (Array Int Int)) +(declare-fun |#valid_0| () (Array Int Int)) +(declare-fun |~#mutex.offset_0| () Int) +(declare-fun |~#mutex.base_0| () Int) +(declare-fun ~__CS_ret_ERROR_0 () Int) +(declare-fun ~__CS_thread_index_0 () Int) +(declare-fun ~__THREAD_FINISHED_0 () Int) +(declare-fun ~__CS_ret_PREEMPTED_0 () Int) +(declare-fun |#NULL.base_0| () Int) +(declare-fun ~data_0 () (Array Int Int)) +(declare-fun ~__THREAD_UNUSED_0 () Int) +(declare-fun ~__CS_thread_status_0 () (Array Int (Array Int Int))) +(declare-fun ~__THREAD_RUNNING_1 () Int) +(declare-fun |#memory_int_1| () (Array Int (Array Int Int))) +(declare-fun ~__CS_thread_lockedon.offset_1 () (Array Int (Array Int Int))) +(declare-fun ~__CS_thread_lockedon.base_1 () (Array Int (Array Int Int))) +(declare-fun ~__CS_error_1 () Int) +(declare-fun ~__CS_thread.base_1 () (Array Int Int)) +(declare-fun ~__CS_ret_1 () Int) +(declare-fun |#length_1| () (Array Int Int)) +(declare-fun |#NULL.offset_1| () Int) +(declare-fun ~__CS_thread_born_round_1 () (Array Int Int)) +(declare-fun ~__CS_round_1 () Int) +(declare-fun ~__CS_thread_allocated_1 () (Array Int Int)) +(declare-fun ~__CS_thread.offset_1 () (Array Int Int)) +(declare-fun |#valid_1| () (Array Int Int)) +(declare-fun |~#mutex.offset_1| () Int) +(declare-fun |~#mutex.base_1| () Int) +(declare-fun ~__CS_ret_ERROR_1 () Int) +(declare-fun ~__CS_thread_index_1 () Int) +(declare-fun ~__CS_ret_PREEMPTED_1 () Int) +(declare-fun ~__THREAD_FINISHED_1 () Int) +(declare-fun ~data_1 () (Array Int Int)) +(declare-fun |#NULL.base_1| () Int) +(declare-fun ~__THREAD_UNUSED_1 () Int) +(declare-fun ~__CS_thread_status_1 () (Array Int (Array Int Int))) +(declare-fun |old(#valid)_3| () (Array Int Int)) +(declare-fun |old(~__CS_error)_3| () Int) +(declare-fun |old(~__CS_thread_born_round)_3| () (Array Int Int)) +(declare-fun |old(#memory_int)_3| () (Array Int (Array Int Int))) +(declare-fun |old(~__CS_thread_lockedon.base)_3| () + (Array Int (Array Int Int))) +(declare-fun |old(~data)_3| () (Array Int Int)) +(declare-fun |old(~__CS_thread_lockedon.offset)_3| () + (Array Int (Array Int Int))) +(declare-fun |old(#length)_3| () (Array Int Int)) +(declare-fun |old(~__CS_thread_allocated)_3| () (Array Int Int)) +(declare-fun |old(~__CS_thread_status)_3| () (Array Int (Array Int Int))) +(declare-fun |old(~__CS_round)_3| () Int) +(declare-fun |old(~__CS_thread.base)_3| () (Array Int Int)) +(declare-fun |old(~__CS_thread_index)_3| () Int) +(declare-fun |old(~__CS_ret)_3| () Int) +(declare-fun |old(~__CS_thread.offset)_3| () (Array Int Int)) +(declare-fun |#memory_int_3| () (Array Int (Array Int Int))) +(declare-fun ~__CS_thread_lockedon.offset_3 () (Array Int (Array Int Int))) +(declare-fun ~__CS_thread_lockedon.base_3 () (Array Int (Array Int Int))) +(declare-fun ~__CS_error_3 () Int) +(declare-fun ~__CS_thread.base_3 () (Array Int Int)) +(declare-fun ~__CS_ret_3 () Int) +(declare-fun |#length_3| () (Array Int Int)) +(declare-fun ~__CS_thread_born_round_3 () (Array Int Int)) +(declare-fun ~__CS_round_3 () Int) +(declare-fun ~__CS_thread_allocated_3 () (Array Int Int)) +(declare-fun ~__CS_thread.offset_3 () (Array Int Int)) +(declare-fun |#valid_3| () (Array Int Int)) +(declare-fun ~__CS_thread_index_3 () Int) +(declare-fun ~data_3 () (Array Int Int)) +(declare-fun ~__CS_thread_status_3 () (Array Int (Array Int Int))) +(declare-fun main_~__CS_cp_mutex~23_4 () (Array Int Int)) +(declare-fun |#memory_int_4| () (Array Int (Array Int Int))) +(declare-fun ~__CS_thread_lockedon.offset_4 () (Array Int (Array Int Int))) +(declare-fun ~__CS_thread_lockedon.base_4 () (Array Int (Array Int Int))) +(declare-fun main_~__CS_cp___CS_thread_lockedon~23.base_4 () + (Array Int (Array Int Int))) +(declare-fun ~__CS_thread.base_4 () (Array Int Int)) +(declare-fun main_~__CS_cp___CS_thread_status~23_4 () + (Array Int (Array Int Int))) +(declare-fun ~__CS_thread_born_round_4 () (Array Int Int)) +(declare-fun ~__CS_round_4 () Int) +(declare-fun ~__CS_thread_allocated_4 () (Array Int Int)) +(declare-fun ~__CS_thread.offset_4 () (Array Int Int)) +(declare-fun main_~__CS_cp_data~23_4 () (Array Int Int)) +(declare-fun ~__CS_thread_index_4 () Int) +(declare-fun ~data_4 () (Array Int Int)) +(declare-fun main_~__CS_cp___CS_thread_lockedon~23.offset_4 () + (Array Int (Array Int Int))) +(declare-fun ~__CS_thread_status_4 () (Array Int (Array Int Int))) +(declare-fun ~__CS_round_5 () Int) +(declare-fun ~__CS_ret_5 () Int) +(declare-fun |old(~__CS_thread_allocated)_6| () (Array Int Int)) +(declare-fun |old(#length)_6| () (Array Int Int)) +(declare-fun |old(~__CS_round)_6| () Int) +(declare-fun |old(~__CS_thread_status)_6| () (Array Int (Array Int Int))) +(declare-fun |old(#valid)_6| () (Array Int Int)) +(declare-fun |old(~__CS_thread.base)_6| () (Array Int Int)) +(declare-fun |old(~__CS_error)_6| () Int) +(declare-fun |old(~__CS_thread_index)_6| () Int) +(declare-fun |old(~__CS_thread_born_round)_6| () (Array Int Int)) +(declare-fun |old(~__CS_ret)_6| () Int) +(declare-fun |old(#memory_int)_6| () (Array Int (Array Int Int))) +(declare-fun |old(~data)_6| () (Array Int Int)) +(declare-fun |old(~__CS_thread.offset)_6| () (Array Int Int)) +(declare-fun |#length_6| () (Array Int Int)) +(declare-fun ~__CS_thread_born_round_6 () (Array Int Int)) +(declare-fun ~__CS_round_6 () Int) +(declare-fun ~__CS_thread_allocated_6 () (Array Int Int)) +(declare-fun ~__CS_thread.offset_6 () (Array Int Int)) +(declare-fun |#valid_6| () (Array Int Int)) +(declare-fun |#memory_int_6| () (Array Int (Array Int Int))) +(declare-fun ~__CS_thread_index_6 () Int) +(declare-fun ~__CS_thread.base_6 () (Array Int Int)) +(declare-fun ~__CS_error_6 () Int) +(declare-fun ~data_6 () (Array Int Int)) +(declare-fun ~__CS_ret_6 () Int) +(declare-fun ~__CS_thread_status_6 () (Array Int (Array Int Int))) +(declare-fun |##fun~$Pointer$~TO~$Pointer$_#in~31.offset_6| () Int) +(declare-fun |##fun~$Pointer$~TO~$Pointer$_#in~#fp.offset_6| () Int) +(declare-fun |##fun~$Pointer$~TO~$Pointer$_#in~#fp.base_6| () Int) +(declare-fun |##fun~$Pointer$~TO~$Pointer$_#in~31.base_6| () Int) +(declare-fun |##fun~$Pointer$~TO~$Pointer$_#~31.offset_7| () Int) +(declare-fun |##fun~$Pointer$~TO~$Pointer$_#~31.base_7| () Int) +(declare-fun |old(~__CS_thread_allocated)_9| () (Array Int Int)) +(declare-fun |old(#length)_9| () (Array Int Int)) +(declare-fun |old(~__CS_thread_status)_9| () (Array Int (Array Int Int))) +(declare-fun |old(~__CS_round)_9| () Int) +(declare-fun |old(#valid)_9| () (Array Int Int)) +(declare-fun |old(~__CS_thread.base)_9| () (Array Int Int)) +(declare-fun |old(~__CS_error)_9| () Int) +(declare-fun |old(~__CS_thread_index)_9| () Int) +(declare-fun |old(~__CS_thread_born_round)_9| () (Array Int Int)) +(declare-fun |old(~__CS_ret)_9| () Int) +(declare-fun |old(#memory_int)_9| () (Array Int (Array Int Int))) +(declare-fun |old(~__CS_thread.offset)_9| () (Array Int Int)) +(declare-fun |#length_9| () (Array Int Int)) +(declare-fun ~__CS_thread_born_round_9 () (Array Int Int)) +(declare-fun ~__CS_round_9 () Int) +(declare-fun ~__CS_thread_allocated_9 () (Array Int Int)) +(declare-fun ~__CS_thread.offset_9 () (Array Int Int)) +(declare-fun |#valid_9| () (Array Int Int)) +(declare-fun |#memory_int_9| () (Array Int (Array Int Int))) +(declare-fun ~__CS_thread_index_9 () Int) +(declare-fun ~__CS_thread.base_9 () (Array Int Int)) +(declare-fun ~__CS_error_9 () Int) +(declare-fun ~__CS_ret_9 () Int) +(declare-fun ~__CS_thread_status_9 () (Array Int (Array Int Int))) +(declare-fun |main_thread_#in~arg.base_9| () Int) +(declare-fun |main_thread_#in~arg.offset_9| () Int) +(declare-fun |#length_10| () (Array Int Int)) +(declare-fun |main_thread_~#t2~22.offset_10| () Int) +(declare-fun |main_thread_~#t1~22.offset_10| () Int) +(declare-fun |main_thread_~#t3~22.base_10| () Int) +(declare-fun |main_thread_~#t3~22.offset_10| () Int) +(declare-fun |#valid_10| () (Array Int Int)) +(declare-fun |main_thread_~#t2~22.base_10| () Int) +(declare-fun main_thread_~arg.base_10 () Int) +(declare-fun main_thread_~arg.offset_10 () Int) +(declare-fun |main_thread_~#t1~22.base_10| () Int) +(declare-fun |old(~__CS_round)_11| () Int) +(declare-fun |old(~__CS_ret)_11| () Int) +(declare-fun ~__CS_round_11 () Int) +(declare-fun ~__CS_ret_11 () Int) +(declare-fun ~__CS_round_12 () Int) +(declare-fun __CS_cs_~k~6_12 () Int) +(declare-fun ~__CS_ret_12 () Int) +(declare-fun |v___CS_cs_#t~ret1_12_fresh_27| () Int) +(declare-fun |__CS_pthread_mutex_init_#in~mutex.offset_15| () Int) +(declare-fun |__CS_pthread_mutex_init_#in~mutex.base_15| () Int) +(declare-fun |__CS_pthread_mutex_init_#in~attr.base_15| () Int) +(declare-fun |__CS_pthread_mutex_init_#in~attr.offset_15| () Int) +(declare-fun __CS_pthread_mutex_init_~mutex.offset_16 () Int) +(declare-fun __CS_pthread_mutex_init_~mutex.base_16 () Int) +(declare-fun __CS_pthread_mutex_init_~attr.base_16 () Int) +(declare-fun __CS_pthread_mutex_init_~attr.offset_16 () Int) +(declare-fun |__CS_pthread_mutex_init_#res_16| () Int) +(declare-fun |main_thread_#t~ret17_17| () Int) +(declare-fun |main_thread_#t~nondet18_9| () Int) +(declare-fun |main_thread_#t~nondet19_9| () Int) +(declare-fun |main_thread_#t~nondet20_9| () Int) +(declare-fun |#memory_int_18| () (Array Int (Array Int Int))) +(declare-fun |old(~__CS_round)_19| () Int) +(declare-fun |old(~__CS_ret)_19| () Int) +(declare-fun ~__CS_round_19 () Int) +(declare-fun ~__CS_ret_19 () Int) +(declare-fun ~__CS_round_20 () Int) +(declare-fun __CS_cs_~k~6_20 () Int) +(declare-fun ~__CS_ret_20 () Int) +(declare-fun |v___CS_cs_#t~ret1_12_fresh_28| () Int) +(declare-fun |old(~__CS_thread_allocated)_23| () (Array Int Int)) +(declare-fun |old(~__CS_thread_status)_23| () (Array Int (Array Int Int))) +(declare-fun |old(~__CS_thread.base)_23| () (Array Int Int)) +(declare-fun |old(~__CS_thread_born_round)_23| () (Array Int Int)) +(declare-fun |old(~__CS_thread_index)_23| () Int) +(declare-fun |old(#memory_int)_23| () (Array Int (Array Int Int))) +(declare-fun |old(~__CS_thread.offset)_23| () (Array Int Int)) +(declare-fun ~__CS_thread_born_round_23 () (Array Int Int)) +(declare-fun ~__CS_thread_allocated_23 () (Array Int Int)) +(declare-fun ~__CS_thread.offset_23 () (Array Int Int)) +(declare-fun |#memory_int_23| () (Array Int (Array Int Int))) +(declare-fun ~__CS_thread_index_23 () Int) +(declare-fun ~__CS_thread.base_23 () (Array Int Int)) +(declare-fun ~__CS_thread_status_23 () (Array Int (Array Int Int))) +(declare-fun |__CS_pthread_create_#in~arg.base_23| () Int) +(declare-fun |__CS_pthread_create_#in~id1.offset_23| () Int) +(declare-fun |__CS_pthread_create_#in~attr.base_23| () Int) +(declare-fun |__CS_pthread_create_#in~id1.base_23| () Int) +(declare-fun |__CS_pthread_create_#in~arg.offset_23| () Int) +(declare-fun |__CS_pthread_create_#in~t1.offset_23| () Int) +(declare-fun |__CS_pthread_create_#in~t1.base_23| () Int) +(declare-fun |__CS_pthread_create_#in~attr.offset_23| () Int) +(declare-fun |__CS_pthread_create_#t~post8_23| () Int) +(declare-fun |__CS_pthread_create_#t~post8_24| () Int) +(declare-fun __CS_pthread_create_~attr.offset_24 () Int) +(declare-fun __CS_pthread_create_~arg.base_24 () Int) +(declare-fun __CS_pthread_create_~attr.base_24 () Int) +(declare-fun |#memory_int_24| () (Array Int (Array Int Int))) +(declare-fun __CS_pthread_create_~id1.offset_24 () Int) +(declare-fun __CS_pthread_create_~t1.base_24 () Int) +(declare-fun |__CS_pthread_create_#res_24| () Int) +(declare-fun ~__CS_thread.base_24 () (Array Int Int)) +(declare-fun __CS_pthread_create_~id1.base_24 () Int) +(declare-fun __CS_pthread_create_~arg.offset_24 () Int) +(declare-fun ~__CS_thread_born_round_24 () (Array Int Int)) +(declare-fun ~__CS_thread_allocated_24 () (Array Int Int)) +(declare-fun ~__CS_thread.offset_24 () (Array Int Int)) +(declare-fun __CS_pthread_create_~t1.offset_24 () Int) +(declare-fun ~__CS_thread_index_24 () Int) +(declare-fun ~__CS_thread_status_24 () (Array Int (Array Int Int))) +(declare-fun |main_thread_#t~ret21_25| () Int) +(declare-fun |old(~__CS_round)_27| () Int) +(declare-fun |old(~__CS_ret)_27| () Int) +(declare-fun ~__CS_round_27 () Int) +(declare-fun ~__CS_ret_27 () Int) +(declare-fun ~__CS_round_28 () Int) +(declare-fun __CS_cs_~k~6_28 () Int) +(declare-fun ~__CS_ret_28 () Int) +(declare-fun |v___CS_cs_#t~ret1_12_fresh_29| () Int) +(declare-fun |main_thread_#res.offset_30| () Int) +(declare-fun |main_thread_#res.base_30| () Int) +(declare-fun |##fun~$Pointer$~TO~$Pointer$_#t~ret42.base_32| () Int) +(declare-fun |##fun~$Pointer$~TO~$Pointer$_#t~ret42.offset_32| () Int) +(declare-fun |##fun~$Pointer$~TO~$Pointer$_#t~funptrres38.offset_33| () Int) +(declare-fun |##fun~$Pointer$~TO~$Pointer$_#t~funptrres38.base_33| () Int) +(declare-fun |##fun~$Pointer$~TO~$Pointer$_#res.base_34| () Int) +(declare-fun |##fun~$Pointer$~TO~$Pointer$_#res.offset_34| () Int) +(declare-fun |main_#t~ret32.base_35| () Int) +(declare-fun |main_#t~ret32.offset_35| () Int) +(declare-fun ~__CS_thread_status_36 () (Array Int (Array Int Int))) +(declare-fun ~__CS_round_37 () Int) +(declare-fun ~__CS_ret_37 () Int) +(declare-fun |old(~__CS_thread_allocated)_38| () (Array Int Int)) +(declare-fun |old(#length)_38| () (Array Int Int)) +(declare-fun |old(~__CS_round)_38| () Int) +(declare-fun |old(~__CS_thread_status)_38| () (Array Int (Array Int Int))) +(declare-fun |old(#valid)_38| () (Array Int Int)) +(declare-fun |old(~__CS_thread.base)_38| () (Array Int Int)) +(declare-fun |old(~__CS_error)_38| () Int) +(declare-fun |old(~__CS_thread_index)_38| () Int) +(declare-fun |old(~__CS_thread_born_round)_38| () (Array Int Int)) +(declare-fun |old(~__CS_ret)_38| () Int) +(declare-fun |old(#memory_int)_38| () (Array Int (Array Int Int))) +(declare-fun |old(~data)_38| () (Array Int Int)) +(declare-fun |old(~__CS_thread.offset)_38| () (Array Int Int)) +(declare-fun |#length_38| () (Array Int Int)) +(declare-fun ~__CS_thread_born_round_38 () (Array Int Int)) +(declare-fun ~__CS_round_38 () Int) +(declare-fun ~__CS_thread_allocated_38 () (Array Int Int)) +(declare-fun ~__CS_thread.offset_38 () (Array Int Int)) +(declare-fun |#valid_38| () (Array Int Int)) +(declare-fun |#memory_int_38| () (Array Int (Array Int Int))) +(declare-fun ~__CS_thread_index_38 () Int) +(declare-fun ~__CS_thread.base_38 () (Array Int Int)) +(declare-fun ~__CS_error_38 () Int) +(declare-fun ~data_38 () (Array Int Int)) +(declare-fun ~__CS_ret_38 () Int) +(declare-fun ~__CS_thread_status_38 () (Array Int (Array Int Int))) +(declare-fun |##fun~$Pointer$~TO~$Pointer$_#in~31.offset_38| () Int) +(declare-fun |##fun~$Pointer$~TO~$Pointer$_#in~#fp.offset_38| () Int) +(declare-fun |##fun~$Pointer$~TO~$Pointer$_#in~#fp.base_38| () Int) +(declare-fun |##fun~$Pointer$~TO~$Pointer$_#in~31.base_38| () Int) +(declare-fun |##fun~$Pointer$~TO~$Pointer$_#~31.offset_39| () Int) +(declare-fun |##fun~$Pointer$~TO~$Pointer$_#~31.base_39| () Int) +(declare-fun |old(~__CS_round)_42| () Int) +(declare-fun |old(~__CS_error)_42| () Int) +(declare-fun |old(~__CS_ret)_42| () Int) +(declare-fun |old(#memory_int)_42| () (Array Int (Array Int Int))) +(declare-fun ~__CS_round_42 () Int) +(declare-fun |#memory_int_42| () (Array Int (Array Int Int))) +(declare-fun ~__CS_error_42 () Int) +(declare-fun ~__CS_ret_42 () Int) +(declare-fun |thread3_#in~arg.offset_42| () Int) +(declare-fun |thread3_#in~arg.base_42| () Int) +(declare-fun thread3_~arg.offset_43 () Int) +(declare-fun thread3_~arg.base_43 () Int) +(declare-fun |old(~__CS_round)_44| () Int) +(declare-fun |old(~__CS_ret)_44| () Int) +(declare-fun ~__CS_round_44 () Int) +(declare-fun ~__CS_ret_44 () Int) +(declare-fun ~__CS_round_45 () Int) +(declare-fun __CS_cs_~k~6_45 () Int) +(declare-fun ~__CS_ret_45 () Int) +(declare-fun |v___CS_cs_#t~ret1_12_fresh_30| () Int) +(declare-fun |old(~__CS_ret)_48| () Int) +(declare-fun |old(#memory_int)_48| () (Array Int (Array Int Int))) +(declare-fun |#memory_int_48| () (Array Int (Array Int Int))) +(declare-fun ~__CS_ret_48 () Int) +(declare-fun |__CS_pthread_mutex_lock_#in~lock.base_48| () Int) +(declare-fun |__CS_pthread_mutex_lock_#in~lock.offset_48| () Int) +(declare-fun |__CS_pthread_mutex_lock_#res_49| () Int) +(declare-fun __CS_pthread_mutex_lock_~lock.base_49 () Int) +(declare-fun |#memory_int_49| () (Array Int (Array Int Int))) +(declare-fun ~__CS_ret_49 () Int) +(declare-fun __CS_pthread_mutex_lock_~lock.offset_49 () Int) +(declare-fun |thread3_#t~ret15_50| () Int) +(declare-fun |old(~__CS_round)_52| () Int) +(declare-fun |old(~__CS_ret)_52| () Int) +(declare-fun ~__CS_round_52 () Int) +(declare-fun ~__CS_ret_52 () Int) +(declare-fun ~__CS_round_53 () Int) +(declare-fun __CS_cs_~k~6_53 () Int) +(declare-fun ~__CS_ret_53 () Int) +(declare-fun |v___CS_cs_#t~ret1_12_fresh_31| () Int) +(declare-fun |old(~__CS_round)_57| () Int) +(declare-fun |old(~__CS_ret)_57| () Int) +(declare-fun ~__CS_round_57 () Int) +(declare-fun ~__CS_ret_57 () Int) +(declare-fun ~__CS_round_58 () Int) +(declare-fun __CS_cs_~k~6_58 () Int) +(declare-fun ~__CS_ret_58 () Int) +(declare-fun |v___CS_cs_#t~ret1_12_fresh_32| () Int) +(declare-fun |thread3_#res.offset_61| () Int) +(declare-fun |thread3_#res.base_61| () Int) +(declare-fun ~__CS_error_61 () Int) +(declare-fun ~__CS_ret_61 () Int) +(declare-fun |##fun~$Pointer$~TO~$Pointer$_#t~ret41.offset_63| () Int) +(declare-fun |##fun~$Pointer$~TO~$Pointer$_#t~ret41.base_63| () Int) +(declare-fun |##fun~$Pointer$~TO~$Pointer$_#t~funptrres38.offset_64| () Int) +(declare-fun |##fun~$Pointer$~TO~$Pointer$_#t~funptrres38.base_64| () Int) +(declare-fun |##fun~$Pointer$~TO~$Pointer$_#res.base_65| () Int) +(declare-fun |##fun~$Pointer$~TO~$Pointer$_#res.offset_65| () Int) +(declare-fun |main_#t~ret33.offset_66| () Int) +(declare-fun |main_#t~ret33.base_66| () Int) +(declare-fun ~__CS_thread_status_67 () (Array Int (Array Int Int))) +(declare-fun |__VERIFIER_assert_#in~cond_71| () Int) +(declare-fun __VERIFIER_assert_~cond_72 () Int) +(assert true) +(assert (not false)) +(assert (<= ~__THREAD_FINISHED_0 |old(~__THREAD_FINISHED)_0|)) +(assert (>= ~__THREAD_FINISHED_0 |old(~__THREAD_FINISHED)_0|)) +(assert (= ~__CS_thread_lockedon.base_0 |old(~__CS_thread_lockedon.base)_0|)) +(assert (= ~__CS_thread_status_0 |old(~__CS_thread_status)_0|)) +(assert (<= ~__CS_ret_0 |old(~__CS_ret)_0|)) +(assert (>= ~__CS_ret_0 |old(~__CS_ret)_0|)) +(assert (= ~__CS_thread_allocated_0 |old(~__CS_thread_allocated)_0|)) +(assert (= ~__CS_thread_born_round_0 |old(~__CS_thread_born_round)_0|)) +(assert (<= |#NULL.offset_0| |old(#NULL.offset)_0|)) +(assert (>= |#NULL.offset_0| |old(#NULL.offset)_0|)) +(assert (<= ~__CS_round_0 |old(~__CS_round)_0|)) +(assert (>= ~__CS_round_0 |old(~__CS_round)_0|)) +(assert (= ~__CS_thread.base_0 |old(~__CS_thread.base)_0|)) +(assert (= |#length_0| |old(#length)_0|)) +(assert (<= |#NULL.base_0| |old(#NULL.base)_0|)) +(assert (>= |#NULL.base_0| |old(#NULL.base)_0|)) +(assert (<= ~__CS_error_0 |old(~__CS_error)_0|)) +(assert (>= ~__CS_error_0 |old(~__CS_error)_0|)) +(assert (= |#memory_int_0| |old(#memory_int)_0|)) +(assert (= ~__CS_thread.offset_0 |old(~__CS_thread.offset)_0|)) +(assert + (= ~__CS_thread_lockedon.offset_0 |old(~__CS_thread_lockedon.offset)_0|)) +(assert (<= ~__CS_ret_ERROR_0 |old(~__CS_ret_ERROR)_0|)) +(assert (>= ~__CS_ret_ERROR_0 |old(~__CS_ret_ERROR)_0|)) +(assert (<= ~__THREAD_RUNNING_0 |old(~__THREAD_RUNNING)_0|)) +(assert (>= ~__THREAD_RUNNING_0 |old(~__THREAD_RUNNING)_0|)) +(assert (<= |~#mutex.offset_0| |old(~#mutex.offset)_0|)) +(assert (>= |~#mutex.offset_0| |old(~#mutex.offset)_0|)) +(assert (<= ~__THREAD_UNUSED_0 |old(~__THREAD_UNUSED)_0|)) +(assert (>= ~__THREAD_UNUSED_0 |old(~__THREAD_UNUSED)_0|)) +(assert (<= ~__CS_thread_index_0 |old(~__CS_thread_index)_0|)) +(assert (>= ~__CS_thread_index_0 |old(~__CS_thread_index)_0|)) +(assert (= ~data_0 |old(~data)_0|)) +(assert (<= |~#mutex.base_0| |old(~#mutex.base)_0|)) +(assert (>= |~#mutex.base_0| |old(~#mutex.base)_0|)) +(assert (= |#valid_0| |old(#valid)_0|)) +(assert (<= ~__CS_ret_PREEMPTED_0 |old(~__CS_ret_PREEMPTED)_0|)) +(assert (>= ~__CS_ret_PREEMPTED_0 |old(~__CS_ret_PREEMPTED)_0|)) +(assert true) +(assert (<= |old(~__THREAD_FINISHED)_0| ~__THREAD_FINISHED_-1)) +(assert (>= |old(~__THREAD_FINISHED)_0| ~__THREAD_FINISHED_-1)) +(assert (= |old(~__CS_thread_lockedon.base)_0| ~__CS_thread_lockedon.base_-1)) +(assert (= |old(~__CS_thread_status)_0| ~__CS_thread_status_-1)) +(assert (<= |old(~__CS_ret)_0| ~__CS_ret_-1)) +(assert (>= |old(~__CS_ret)_0| ~__CS_ret_-1)) +(assert (= |old(~__CS_thread_allocated)_0| ~__CS_thread_allocated_-1)) +(assert (= |old(~__CS_thread_born_round)_0| ~__CS_thread_born_round_-1)) +(assert (<= |old(#NULL.offset)_0| |#NULL.offset_-1|)) +(assert (>= |old(#NULL.offset)_0| |#NULL.offset_-1|)) +(assert (<= |old(~__CS_round)_0| ~__CS_round_-1)) +(assert (>= |old(~__CS_round)_0| ~__CS_round_-1)) +(assert (= |old(~__CS_thread.base)_0| ~__CS_thread.base_-1)) +(assert (= |old(#length)_0| |#length_-1|)) +(assert (<= |old(#NULL.base)_0| |#NULL.base_-1|)) +(assert (>= |old(#NULL.base)_0| |#NULL.base_-1|)) +(assert (<= |old(~__CS_error)_0| ~__CS_error_-1)) +(assert (>= |old(~__CS_error)_0| ~__CS_error_-1)) +(assert (= |old(#memory_int)_0| |#memory_int_-1|)) +(assert (= |old(~__CS_thread.offset)_0| ~__CS_thread.offset_-1)) +(assert + (= |old(~__CS_thread_lockedon.offset)_0| ~__CS_thread_lockedon.offset_-1)) +(assert (<= |old(~__CS_ret_ERROR)_0| ~__CS_ret_ERROR_-1)) +(assert (>= |old(~__CS_ret_ERROR)_0| ~__CS_ret_ERROR_-1)) +(assert (<= |old(~__THREAD_RUNNING)_0| ~__THREAD_RUNNING_-1)) +(assert (>= |old(~__THREAD_RUNNING)_0| ~__THREAD_RUNNING_-1)) +(assert (<= |old(~#mutex.offset)_0| |~#mutex.offset_-1|)) +(assert (>= |old(~#mutex.offset)_0| |~#mutex.offset_-1|)) +(assert (<= |old(~__THREAD_UNUSED)_0| ~__THREAD_UNUSED_-1)) +(assert (>= |old(~__THREAD_UNUSED)_0| ~__THREAD_UNUSED_-1)) +(assert (<= |old(~__CS_thread_index)_0| ~__CS_thread_index_-1)) +(assert (>= |old(~__CS_thread_index)_0| ~__CS_thread_index_-1)) +(assert (= |old(~data)_0| ~data_-1)) +(assert (<= |old(~#mutex.base)_0| |~#mutex.base_-1|)) +(assert (>= |old(~#mutex.base)_0| |~#mutex.base_-1|)) +(assert (= |old(#valid)_0| |#valid_-1|)) +(assert (<= |old(~__CS_ret_PREEMPTED)_0| ~__CS_ret_PREEMPTED_-1)) +(assert (>= |old(~__CS_ret_PREEMPTED)_0| ~__CS_ret_PREEMPTED_-1)) +(assert (= ~data_1 (store (store ~data_0 0 0) 1 0))) +(assert + (= |#memory_int_1| + (store + (store |#memory_int_0| |~#mutex.base_1| + (store (select |#memory_int_0| |~#mutex.base_1|) (+ |~#mutex.offset_1| 0) 0)) + |~#mutex.base_1| + (store + (select + (store |#memory_int_0| |~#mutex.base_1| + (store (select |#memory_int_0| |~#mutex.base_1|) (+ |~#mutex.offset_1| 0) 0)) + |~#mutex.base_1|) (+ |~#mutex.offset_1| 1) 0)))) +(assert (= |#length_1| (store |#length_0| |~#mutex.base_1| 2))) +(assert (not (= |~#mutex.base_1| 0))) +(assert (<= |~#mutex.offset_1| 0)) +(assert (>= |~#mutex.offset_1| 0)) +(assert (= |#valid_1| (store (store |#valid_0| 0 0) |~#mutex.base_1| 1))) +(assert (not (not (= (select (store |#valid_0| 0 0) |~#mutex.base_1|) 0)))) +(assert (<= |#NULL.base_1| 0)) +(assert (>= |#NULL.base_1| 0)) +(assert (<= |#NULL.offset_1| 0)) +(assert (>= |#NULL.offset_1| 0)) +(assert (<= ~__CS_round_1 0)) +(assert (>= ~__CS_round_1 0)) +(assert (<= ~__CS_ret_1 0)) +(assert (>= ~__CS_ret_1 0)) +(assert (<= ~__CS_ret_PREEMPTED_1 1)) +(assert (>= ~__CS_ret_PREEMPTED_1 1)) +(assert (<= ~__CS_ret_ERROR_1 2)) +(assert (>= ~__CS_ret_ERROR_1 2)) +(assert (<= ~__CS_error_1 0)) +(assert (>= ~__CS_error_1 0)) +(assert (<= ~__CS_thread_index_1 0)) +(assert (>= ~__CS_thread_index_1 0)) +(assert + (= ~__CS_thread_allocated_1 + (store (store (store (store ~__CS_thread_allocated_0 0 0) 1 0) 2 0) 3 0))) +(assert + (= ~__CS_thread_born_round_1 + (store (store (store (store ~__CS_thread_born_round_0 0 0) 1 0) 2 0) 3 0))) +(assert + (= ~__CS_thread.base_1 + (store + (store (store (store ~__CS_thread.base_0 0 |#NULL.base_1|) 1 |#NULL.base_1|) + 2 |#NULL.base_1|) 3 |#NULL.base_1|))) +(assert + (= ~__CS_thread.offset_1 + (store + (store + (store (store ~__CS_thread.offset_0 0 |#NULL.offset_1|) 1 |#NULL.offset_1|) + 2 |#NULL.offset_1|) 3 |#NULL.offset_1|))) +(assert + (= ~__CS_thread_status_1 + (store + (store + (store + (store + (store + (store + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0 + (store + (select + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0) 2 0)) 0 + (store + (select + (store + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0 + (store + (select + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0) 2 0)) 0) 3 0)) 1 + (store + (select + (store + (store + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0 + (store + (select + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0) 2 0)) 0 + (store + (select + (store + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0 + (store + (select + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0) 2 0)) 0) 3 0)) 1) 0 0)) 1 + (store + (select + (store + (store + (store + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0 + (store + (select + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0) 2 0)) 0 + (store + (select + (store + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0 + (store + (select + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0) 2 0)) 0) 3 0)) 1 + (store + (select + (store + (store + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0 + (store + (select + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0) 2 0)) 0 + (store + (select + (store + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0 + (store + (select + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0) 2 0)) 0) 3 0)) 1) 0 0)) 1) 1 0)) 1 + (store + (select + (store + (store + (store + (store + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0 + (store + (select + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0) 2 0)) 0 + (store + (select + (store + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0 + (store + (select + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0) 2 0)) 0) 3 0)) 1 + (store + (select + (store + (store + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0 + (store + (select + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0) 2 0)) 0 + (store + (select + (store + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0 + (store + (select + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0) 2 0)) 0) 3 0)) 1) 0 0)) 1 + (store + (select + (store + (store + (store + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0 + (store + (select + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0) 2 0)) 0 + (store + (select + (store + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0 + (store + (select + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0) 2 0)) 0) 3 0)) 1 + (store + (select + (store + (store + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0 + (store + (select + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0) 2 0)) 0 + (store + (select + (store + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0 + (store + (select + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0) 2 0)) 0) 3 0)) 1) 0 0)) 1) 1 0)) 1) 2 0)) 1 + (store + (select + (store + (store + (store + (store + (store + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0 + (store + (select + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0) 2 0)) 0 + (store + (select + (store + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0 + (store + (select + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0) 2 0)) 0) 3 0)) 1 + (store + (select + (store + (store + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0 + (store + (select + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0) 2 0)) 0 + (store + (select + (store + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0 + (store + (select + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0) 2 0)) 0) 3 0)) 1) 0 0)) 1 + (store + (select + (store + (store + (store + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0 + (store + (select + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0) 2 0)) 0 + (store + (select + (store + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0 + (store + (select + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0) 2 0)) 0) 3 0)) 1 + (store + (select + (store + (store + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0 + (store + (select + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0) 2 0)) 0 + (store + (select + (store + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0 + (store + (select + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0) 2 0)) 0) 3 0)) 1) 0 0)) 1) 1 0)) 1 + (store + (select + (store + (store + (store + (store + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0 + (store + (select + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0) 2 0)) 0 + (store + (select + (store + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0 + (store + (select + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0) 2 0)) 0) 3 0)) 1 + (store + (select + (store + (store + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0 + (store + (select + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0) 2 0)) 0 + (store + (select + (store + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0 + (store + (select + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0) 2 0)) 0) 3 0)) 1) 0 0)) 1 + (store + (select + (store + (store + (store + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0 + (store + (select + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0) 2 0)) 0 + (store + (select + (store + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0 + (store + (select + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0) 2 0)) 0) 3 0)) 1 + (store + (select + (store + (store + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0 + (store + (select + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0) 2 0)) 0 + (store + (select + (store + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0 + (store + (select + (store + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0 + (store + (select + (store ~__CS_thread_status_0 0 (store (select ~__CS_thread_status_0 0) 0 0)) + 0) 1 0)) 0) 2 0)) 0) 3 0)) 1) 0 0)) 1) 1 0)) 1) 2 0)) 1) 3 0)))) +(assert (<= ~__THREAD_UNUSED_1 0)) +(assert (>= ~__THREAD_UNUSED_1 0)) +(assert (<= ~__THREAD_RUNNING_1 1)) +(assert (>= ~__THREAD_RUNNING_1 1)) +(assert (<= ~__THREAD_FINISHED_1 2)) +(assert (>= ~__THREAD_FINISHED_1 2)) +(assert + (= ~__CS_thread_lockedon.offset_1 + (store + (store + (store + (store + (store + (store + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0) 2 |#NULL.offset_1|)) 0 + (store + (select + (store + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0) 2 |#NULL.offset_1|)) 0) 3 |#NULL.offset_1|)) 1 + (store + (select + (store + (store + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0) 2 |#NULL.offset_1|)) 0 + (store + (select + (store + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0) 2 |#NULL.offset_1|)) 0) 3 |#NULL.offset_1|)) 1) 0 + |#NULL.offset_1|)) 1 + (store + (select + (store + (store + (store + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0) 2 |#NULL.offset_1|)) 0 + (store + (select + (store + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0) 2 |#NULL.offset_1|)) 0) 3 |#NULL.offset_1|)) 1 + (store + (select + (store + (store + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0) 2 |#NULL.offset_1|)) 0 + (store + (select + (store + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0) 2 |#NULL.offset_1|)) 0) 3 |#NULL.offset_1|)) 1) 0 + |#NULL.offset_1|)) 1) 1 |#NULL.offset_1|)) 1 + (store + (select + (store + (store + (store + (store + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0) 2 |#NULL.offset_1|)) 0 + (store + (select + (store + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0) 2 |#NULL.offset_1|)) 0) 3 |#NULL.offset_1|)) 1 + (store + (select + (store + (store + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0) 2 |#NULL.offset_1|)) 0 + (store + (select + (store + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0) 2 |#NULL.offset_1|)) 0) 3 |#NULL.offset_1|)) 1) 0 + |#NULL.offset_1|)) 1 + (store + (select + (store + (store + (store + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0) 2 |#NULL.offset_1|)) 0 + (store + (select + (store + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0) 2 |#NULL.offset_1|)) 0) 3 |#NULL.offset_1|)) 1 + (store + (select + (store + (store + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0) 2 |#NULL.offset_1|)) 0 + (store + (select + (store + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0) 2 |#NULL.offset_1|)) 0) 3 |#NULL.offset_1|)) 1) 0 + |#NULL.offset_1|)) 1) 1 |#NULL.offset_1|)) 1) 2 |#NULL.offset_1|)) 1 + (store + (select + (store + (store + (store + (store + (store + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0) 2 |#NULL.offset_1|)) 0 + (store + (select + (store + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0) 2 |#NULL.offset_1|)) 0) 3 |#NULL.offset_1|)) 1 + (store + (select + (store + (store + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0) 2 |#NULL.offset_1|)) 0 + (store + (select + (store + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0) 2 |#NULL.offset_1|)) 0) 3 |#NULL.offset_1|)) 1) 0 + |#NULL.offset_1|)) 1 + (store + (select + (store + (store + (store + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0) 2 |#NULL.offset_1|)) 0 + (store + (select + (store + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0) 2 |#NULL.offset_1|)) 0) 3 |#NULL.offset_1|)) 1 + (store + (select + (store + (store + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0) 2 |#NULL.offset_1|)) 0 + (store + (select + (store + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0) 2 |#NULL.offset_1|)) 0) 3 |#NULL.offset_1|)) 1) 0 + |#NULL.offset_1|)) 1) 1 |#NULL.offset_1|)) 1 + (store + (select + (store + (store + (store + (store + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0) 2 |#NULL.offset_1|)) 0 + (store + (select + (store + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0) 2 |#NULL.offset_1|)) 0) 3 |#NULL.offset_1|)) 1 + (store + (select + (store + (store + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0) 2 |#NULL.offset_1|)) 0 + (store + (select + (store + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0) 2 |#NULL.offset_1|)) 0) 3 |#NULL.offset_1|)) 1) 0 + |#NULL.offset_1|)) 1 + (store + (select + (store + (store + (store + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0) 2 |#NULL.offset_1|)) 0 + (store + (select + (store + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0) 2 |#NULL.offset_1|)) 0) 3 |#NULL.offset_1|)) 1 + (store + (select + (store + (store + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0) 2 |#NULL.offset_1|)) 0 + (store + (select + (store + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.offset_0 0 + (store (select ~__CS_thread_lockedon.offset_0 0) 0 |#NULL.offset_1|)) 0) 1 + |#NULL.offset_1|)) 0) 2 |#NULL.offset_1|)) 0) 3 |#NULL.offset_1|)) 1) 0 + |#NULL.offset_1|)) 1) 1 |#NULL.offset_1|)) 1) 2 |#NULL.offset_1|)) 1) 3 + |#NULL.offset_1|)))) +(assert + (= ~__CS_thread_lockedon.base_1 + (store + (store + (store + (store + (store + (store + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0) 2 |#NULL.base_1|)) 0 + (store + (select + (store + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0) 2 |#NULL.base_1|)) 0) 3 |#NULL.base_1|)) 1 + (store + (select + (store + (store + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0) 2 |#NULL.base_1|)) 0 + (store + (select + (store + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0) 2 |#NULL.base_1|)) 0) 3 |#NULL.base_1|)) 1) 0 + |#NULL.base_1|)) 1 + (store + (select + (store + (store + (store + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0) 2 |#NULL.base_1|)) 0 + (store + (select + (store + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0) 2 |#NULL.base_1|)) 0) 3 |#NULL.base_1|)) 1 + (store + (select + (store + (store + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0) 2 |#NULL.base_1|)) 0 + (store + (select + (store + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0) 2 |#NULL.base_1|)) 0) 3 |#NULL.base_1|)) 1) 0 + |#NULL.base_1|)) 1) 1 |#NULL.base_1|)) 1 + (store + (select + (store + (store + (store + (store + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0) 2 |#NULL.base_1|)) 0 + (store + (select + (store + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0) 2 |#NULL.base_1|)) 0) 3 |#NULL.base_1|)) 1 + (store + (select + (store + (store + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0) 2 |#NULL.base_1|)) 0 + (store + (select + (store + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0) 2 |#NULL.base_1|)) 0) 3 |#NULL.base_1|)) 1) 0 + |#NULL.base_1|)) 1 + (store + (select + (store + (store + (store + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0) 2 |#NULL.base_1|)) 0 + (store + (select + (store + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0) 2 |#NULL.base_1|)) 0) 3 |#NULL.base_1|)) 1 + (store + (select + (store + (store + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0) 2 |#NULL.base_1|)) 0 + (store + (select + (store + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0) 2 |#NULL.base_1|)) 0) 3 |#NULL.base_1|)) 1) 0 + |#NULL.base_1|)) 1) 1 |#NULL.base_1|)) 1) 2 |#NULL.base_1|)) 1 + (store + (select + (store + (store + (store + (store + (store + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0) 2 |#NULL.base_1|)) 0 + (store + (select + (store + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0) 2 |#NULL.base_1|)) 0) 3 |#NULL.base_1|)) 1 + (store + (select + (store + (store + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0) 2 |#NULL.base_1|)) 0 + (store + (select + (store + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0) 2 |#NULL.base_1|)) 0) 3 |#NULL.base_1|)) 1) 0 + |#NULL.base_1|)) 1 + (store + (select + (store + (store + (store + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0) 2 |#NULL.base_1|)) 0 + (store + (select + (store + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0) 2 |#NULL.base_1|)) 0) 3 |#NULL.base_1|)) 1 + (store + (select + (store + (store + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0) 2 |#NULL.base_1|)) 0 + (store + (select + (store + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0) 2 |#NULL.base_1|)) 0) 3 |#NULL.base_1|)) 1) 0 + |#NULL.base_1|)) 1) 1 |#NULL.base_1|)) 1 + (store + (select + (store + (store + (store + (store + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0) 2 |#NULL.base_1|)) 0 + (store + (select + (store + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0) 2 |#NULL.base_1|)) 0) 3 |#NULL.base_1|)) 1 + (store + (select + (store + (store + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0) 2 |#NULL.base_1|)) 0 + (store + (select + (store + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0) 2 |#NULL.base_1|)) 0) 3 |#NULL.base_1|)) 1) 0 + |#NULL.base_1|)) 1 + (store + (select + (store + (store + (store + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0) 2 |#NULL.base_1|)) 0 + (store + (select + (store + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0) 2 |#NULL.base_1|)) 0) 3 |#NULL.base_1|)) 1 + (store + (select + (store + (store + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0) 2 |#NULL.base_1|)) 0 + (store + (select + (store + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0 + (store + (select + (store + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0 + (store + (select + (store ~__CS_thread_lockedon.base_0 0 + (store (select ~__CS_thread_lockedon.base_0 0) 0 |#NULL.base_1|)) 0) 1 + |#NULL.base_1|)) 0) 2 |#NULL.base_1|)) 0) 3 |#NULL.base_1|)) 1) 0 + |#NULL.base_1|)) 1) 1 |#NULL.base_1|)) 1) 2 |#NULL.base_1|)) 1) 3 + |#NULL.base_1|)))) +(assert true) +(assert (= ~__CS_thread_status_3 |old(~__CS_thread_status)_3|)) +(assert (= ~__CS_thread_lockedon.base_3 |old(~__CS_thread_lockedon.base)_3|)) +(assert (<= ~__CS_ret_3 |old(~__CS_ret)_3|)) +(assert (>= ~__CS_ret_3 |old(~__CS_ret)_3|)) +(assert (= ~__CS_thread_born_round_3 |old(~__CS_thread_born_round)_3|)) +(assert (= ~__CS_thread_allocated_3 |old(~__CS_thread_allocated)_3|)) +(assert (<= ~__CS_round_3 |old(~__CS_round)_3|)) +(assert (>= ~__CS_round_3 |old(~__CS_round)_3|)) +(assert (= ~__CS_thread.base_3 |old(~__CS_thread.base)_3|)) +(assert (= |#length_3| |old(#length)_3|)) +(assert (<= ~__CS_error_3 |old(~__CS_error)_3|)) +(assert (>= ~__CS_error_3 |old(~__CS_error)_3|)) +(assert (= |#memory_int_3| |old(#memory_int)_3|)) +(assert (= ~__CS_thread.offset_3 |old(~__CS_thread.offset)_3|)) +(assert + (= ~__CS_thread_lockedon.offset_3 |old(~__CS_thread_lockedon.offset)_3|)) +(assert (<= ~__CS_thread_index_3 |old(~__CS_thread_index)_3|)) +(assert (>= ~__CS_thread_index_3 |old(~__CS_thread_index)_3|)) +(assert (= ~data_3 |old(~data)_3|)) +(assert (= |#valid_3| |old(#valid)_3|)) +(assert true) +(assert (= |old(~__CS_thread_status)_3| ~__CS_thread_status_1)) +(assert (= |old(~__CS_thread_lockedon.base)_3| ~__CS_thread_lockedon.base_1)) +(assert (<= |old(~__CS_ret)_3| ~__CS_ret_1)) +(assert (>= |old(~__CS_ret)_3| ~__CS_ret_1)) +(assert (= |old(~__CS_thread_born_round)_3| ~__CS_thread_born_round_1)) +(assert (= |old(~__CS_thread_allocated)_3| ~__CS_thread_allocated_1)) +(assert (<= |old(~__CS_round)_3| ~__CS_round_1)) +(assert (>= |old(~__CS_round)_3| ~__CS_round_1)) +(assert (= |old(~__CS_thread.base)_3| ~__CS_thread.base_1)) +(assert (= |old(#length)_3| |#length_1|)) +(assert (<= |old(~__CS_error)_3| ~__CS_error_1)) +(assert (>= |old(~__CS_error)_3| ~__CS_error_1)) +(assert (= |old(#memory_int)_3| |#memory_int_1|)) +(assert (= |old(~__CS_thread.offset)_3| ~__CS_thread.offset_1)) +(assert + (= |old(~__CS_thread_lockedon.offset)_3| ~__CS_thread_lockedon.offset_1)) +(assert (<= |old(~__CS_thread_index)_3| ~__CS_thread_index_1)) +(assert (>= |old(~__CS_thread_index)_3| ~__CS_thread_index_1)) +(assert (= |old(~data)_3| ~data_1)) +(assert (= |old(#valid)_3| |#valid_1|)) +(assert (= ~data_4 (store ~data_3 1 (select main_~__CS_cp_data~23_4 1)))) +(assert (<= ~__CS_round_4 0)) +(assert (>= ~__CS_round_4 0)) +(assert (<= ~__CS_thread_index_4 0)) +(assert (>= ~__CS_thread_index_4 0)) +(assert + (= ~__CS_thread_born_round_4 + (store ~__CS_thread_born_round_3 0 ~__CS_round_4))) +(assert + (= ~__CS_thread_status_4 + (store + (store + (store + (store + (store ~__CS_thread_status_3 1 + (store (select ~__CS_thread_status_3 1) 0 + (select (select main_~__CS_cp___CS_thread_status~23_4 1) 0))) 1 + (store + (select + (store ~__CS_thread_status_3 1 + (store (select ~__CS_thread_status_3 1) 0 + (select (select main_~__CS_cp___CS_thread_status~23_4 1) 0))) 1) 1 + (select (select main_~__CS_cp___CS_thread_status~23_4 1) 1))) 1 + (store + (select + (store + (store ~__CS_thread_status_3 1 + (store (select ~__CS_thread_status_3 1) 0 + (select (select main_~__CS_cp___CS_thread_status~23_4 1) 0))) 1 + (store + (select + (store ~__CS_thread_status_3 1 + (store (select ~__CS_thread_status_3 1) 0 + (select (select main_~__CS_cp___CS_thread_status~23_4 1) 0))) 1) 1 + (select (select main_~__CS_cp___CS_thread_status~23_4 1) 1))) 1) 2 + (select (select main_~__CS_cp___CS_thread_status~23_4 1) 2))) 1 + (store + (select + (store + (store + (store ~__CS_thread_status_3 1 + (store (select ~__CS_thread_status_3 1) 0 + (select (select main_~__CS_cp___CS_thread_status~23_4 1) 0))) 1 + (store + (select + (store ~__CS_thread_status_3 1 + (store (select ~__CS_thread_status_3 1) 0 + (select (select main_~__CS_cp___CS_thread_status~23_4 1) 0))) 1) 1 + (select (select main_~__CS_cp___CS_thread_status~23_4 1) 1))) 1 + (store + (select + (store + (store ~__CS_thread_status_3 1 + (store (select ~__CS_thread_status_3 1) 0 + (select (select main_~__CS_cp___CS_thread_status~23_4 1) 0))) 1 + (store + (select + (store ~__CS_thread_status_3 1 + (store (select ~__CS_thread_status_3 1) 0 + (select (select main_~__CS_cp___CS_thread_status~23_4 1) 0))) 1) 1 + (select (select main_~__CS_cp___CS_thread_status~23_4 1) 1))) 1) 2 + (select (select main_~__CS_cp___CS_thread_status~23_4 1) 2))) 1) 3 + (select (select main_~__CS_cp___CS_thread_status~23_4 1) 3))) 0 + (store + (select + (store + (store + (store + (store ~__CS_thread_status_3 1 + (store (select ~__CS_thread_status_3 1) 0 + (select (select main_~__CS_cp___CS_thread_status~23_4 1) 0))) 1 + (store + (select + (store ~__CS_thread_status_3 1 + (store (select ~__CS_thread_status_3 1) 0 + (select (select main_~__CS_cp___CS_thread_status~23_4 1) 0))) 1) 1 + (select (select main_~__CS_cp___CS_thread_status~23_4 1) 1))) 1 + (store + (select + (store + (store ~__CS_thread_status_3 1 + (store (select ~__CS_thread_status_3 1) 0 + (select (select main_~__CS_cp___CS_thread_status~23_4 1) 0))) 1 + (store + (select + (store ~__CS_thread_status_3 1 + (store (select ~__CS_thread_status_3 1) 0 + (select (select main_~__CS_cp___CS_thread_status~23_4 1) 0))) 1) 1 + (select (select main_~__CS_cp___CS_thread_status~23_4 1) 1))) 1) 2 + (select (select main_~__CS_cp___CS_thread_status~23_4 1) 2))) 1 + (store + (select + (store + (store + (store ~__CS_thread_status_3 1 + (store (select ~__CS_thread_status_3 1) 0 + (select (select main_~__CS_cp___CS_thread_status~23_4 1) 0))) 1 + (store + (select + (store ~__CS_thread_status_3 1 + (store (select ~__CS_thread_status_3 1) 0 + (select (select main_~__CS_cp___CS_thread_status~23_4 1) 0))) 1) 1 + (select (select main_~__CS_cp___CS_thread_status~23_4 1) 1))) 1 + (store + (select + (store + (store ~__CS_thread_status_3 1 + (store (select ~__CS_thread_status_3 1) 0 + (select (select main_~__CS_cp___CS_thread_status~23_4 1) 0))) 1 + (store + (select + (store ~__CS_thread_status_3 1 + (store (select ~__CS_thread_status_3 1) 0 + (select (select main_~__CS_cp___CS_thread_status~23_4 1) 0))) 1) 1 + (select (select main_~__CS_cp___CS_thread_status~23_4 1) 1))) 1) 2 + (select (select main_~__CS_cp___CS_thread_status~23_4 1) 2))) 1) 3 + (select (select main_~__CS_cp___CS_thread_status~23_4 1) 3))) 0) 0 + ~__THREAD_RUNNING_1)))) +(assert + (= ~__CS_thread.base_4 + (store ~__CS_thread.base_3 0 |#funAddr~main_thread.base|))) +(assert + (= ~__CS_thread.offset_4 + (store ~__CS_thread.offset_3 0 |#funAddr~main_thread.offset|))) +(assert (= ~__CS_thread_allocated_4 (store ~__CS_thread_allocated_3 0 1))) +(assert + (= |#memory_int_4| + (store |#memory_int_3| |~#mutex.base_1| + (store (select |#memory_int_3| |~#mutex.base_1|) + (+ |~#mutex.offset_1| 1) + (select main_~__CS_cp_mutex~23_4 1))))) +(assert + (= ~__CS_thread_lockedon.offset_4 + (store + (store + (store + (store ~__CS_thread_lockedon.offset_3 1 + (store (select ~__CS_thread_lockedon.offset_3 1) 0 + (select (select main_~__CS_cp___CS_thread_lockedon~23.offset_4 1) 0))) 1 + (store + (select + (store ~__CS_thread_lockedon.offset_3 1 + (store (select ~__CS_thread_lockedon.offset_3 1) 0 + (select (select main_~__CS_cp___CS_thread_lockedon~23.offset_4 1) 0))) 1) 1 + (select (select main_~__CS_cp___CS_thread_lockedon~23.offset_4 1) 1))) 1 + (store + (select + (store + (store ~__CS_thread_lockedon.offset_3 1 + (store (select ~__CS_thread_lockedon.offset_3 1) 0 + (select (select main_~__CS_cp___CS_thread_lockedon~23.offset_4 1) 0))) 1 + (store + (select + (store ~__CS_thread_lockedon.offset_3 1 + (store (select ~__CS_thread_lockedon.offset_3 1) 0 + (select (select main_~__CS_cp___CS_thread_lockedon~23.offset_4 1) 0))) 1) 1 + (select (select main_~__CS_cp___CS_thread_lockedon~23.offset_4 1) 1))) 1) 2 + (select (select main_~__CS_cp___CS_thread_lockedon~23.offset_4 1) 2))) 1 + (store + (select + (store + (store + (store ~__CS_thread_lockedon.offset_3 1 + (store (select ~__CS_thread_lockedon.offset_3 1) 0 + (select (select main_~__CS_cp___CS_thread_lockedon~23.offset_4 1) 0))) 1 + (store + (select + (store ~__CS_thread_lockedon.offset_3 1 + (store (select ~__CS_thread_lockedon.offset_3 1) 0 + (select (select main_~__CS_cp___CS_thread_lockedon~23.offset_4 1) 0))) 1) 1 + (select (select main_~__CS_cp___CS_thread_lockedon~23.offset_4 1) 1))) 1 + (store + (select + (store + (store ~__CS_thread_lockedon.offset_3 1 + (store (select ~__CS_thread_lockedon.offset_3 1) 0 + (select (select main_~__CS_cp___CS_thread_lockedon~23.offset_4 1) 0))) 1 + (store + (select + (store ~__CS_thread_lockedon.offset_3 1 + (store (select ~__CS_thread_lockedon.offset_3 1) 0 + (select (select main_~__CS_cp___CS_thread_lockedon~23.offset_4 1) 0))) 1) 1 + (select (select main_~__CS_cp___CS_thread_lockedon~23.offset_4 1) 1))) 1) 2 + (select (select main_~__CS_cp___CS_thread_lockedon~23.offset_4 1) 2))) 1) 3 + (select (select main_~__CS_cp___CS_thread_lockedon~23.offset_4 1) 3))))) +(assert + (= ~__CS_thread_lockedon.base_4 + (store + (store + (store + (store ~__CS_thread_lockedon.base_3 1 + (store (select ~__CS_thread_lockedon.base_3 1) 0 + (select (select main_~__CS_cp___CS_thread_lockedon~23.base_4 1) 0))) 1 + (store + (select + (store ~__CS_thread_lockedon.base_3 1 + (store (select ~__CS_thread_lockedon.base_3 1) 0 + (select (select main_~__CS_cp___CS_thread_lockedon~23.base_4 1) 0))) 1) 1 + (select (select main_~__CS_cp___CS_thread_lockedon~23.base_4 1) 1))) 1 + (store + (select + (store + (store ~__CS_thread_lockedon.base_3 1 + (store (select ~__CS_thread_lockedon.base_3 1) 0 + (select (select main_~__CS_cp___CS_thread_lockedon~23.base_4 1) 0))) 1 + (store + (select + (store ~__CS_thread_lockedon.base_3 1 + (store (select ~__CS_thread_lockedon.base_3 1) 0 + (select (select main_~__CS_cp___CS_thread_lockedon~23.base_4 1) 0))) 1) 1 + (select (select main_~__CS_cp___CS_thread_lockedon~23.base_4 1) 1))) 1) 2 + (select (select main_~__CS_cp___CS_thread_lockedon~23.base_4 1) 2))) 1 + (store + (select + (store + (store + (store ~__CS_thread_lockedon.base_3 1 + (store (select ~__CS_thread_lockedon.base_3 1) 0 + (select (select main_~__CS_cp___CS_thread_lockedon~23.base_4 1) 0))) 1 + (store + (select + (store ~__CS_thread_lockedon.base_3 1 + (store (select ~__CS_thread_lockedon.base_3 1) 0 + (select (select main_~__CS_cp___CS_thread_lockedon~23.base_4 1) 0))) 1) 1 + (select (select main_~__CS_cp___CS_thread_lockedon~23.base_4 1) 1))) 1 + (store + (select + (store + (store ~__CS_thread_lockedon.base_3 1 + (store (select ~__CS_thread_lockedon.base_3 1) 0 + (select (select main_~__CS_cp___CS_thread_lockedon~23.base_4 1) 0))) 1 + (store + (select + (store ~__CS_thread_lockedon.base_3 1 + (store (select ~__CS_thread_lockedon.base_3 1) 0 + (select (select main_~__CS_cp___CS_thread_lockedon~23.base_4 1) 0))) 1) 1 + (select (select main_~__CS_cp___CS_thread_lockedon~23.base_4 1) 1))) 1) 2 + (select (select main_~__CS_cp___CS_thread_lockedon~23.base_4 1) 2))) 1) 3 + (select (select main_~__CS_cp___CS_thread_lockedon~23.base_4 1) 3))))) +(assert (<= (mod (select ~__CS_thread_allocated_4 0) 256) (mod 1 256))) +(assert (>= (mod (select ~__CS_thread_allocated_4 0) 256) (mod 1 256))) +(assert (<= ~__CS_round_5 (select ~__CS_thread_born_round_4 0))) +(assert (>= ~__CS_round_5 (select ~__CS_thread_born_round_4 0))) +(assert (<= ~__CS_ret_5 0)) +(assert (>= ~__CS_ret_5 0)) +(assert (= ~__CS_thread_status_6 |old(~__CS_thread_status)_6|)) +(assert (<= ~__CS_ret_6 |old(~__CS_ret)_6|)) +(assert (>= ~__CS_ret_6 |old(~__CS_ret)_6|)) +(assert (= ~__CS_thread_allocated_6 |old(~__CS_thread_allocated)_6|)) +(assert (= ~__CS_thread_born_round_6 |old(~__CS_thread_born_round)_6|)) +(assert (<= ~__CS_round_6 |old(~__CS_round)_6|)) +(assert (>= ~__CS_round_6 |old(~__CS_round)_6|)) +(assert (= ~__CS_thread.base_6 |old(~__CS_thread.base)_6|)) +(assert (= |#length_6| |old(#length)_6|)) +(assert (<= ~__CS_error_6 |old(~__CS_error)_6|)) +(assert (>= ~__CS_error_6 |old(~__CS_error)_6|)) +(assert (= |#memory_int_6| |old(#memory_int)_6|)) +(assert (= ~__CS_thread.offset_6 |old(~__CS_thread.offset)_6|)) +(assert (<= ~__CS_thread_index_6 |old(~__CS_thread_index)_6|)) +(assert (>= ~__CS_thread_index_6 |old(~__CS_thread_index)_6|)) +(assert (= ~data_6 |old(~data)_6|)) +(assert (= |#valid_6| |old(#valid)_6|)) +(assert (<= |##fun~$Pointer$~TO~$Pointer$_#in~31.base_6| 0)) +(assert (>= |##fun~$Pointer$~TO~$Pointer$_#in~31.base_6| 0)) +(assert (<= |##fun~$Pointer$~TO~$Pointer$_#in~31.offset_6| 0)) +(assert (>= |##fun~$Pointer$~TO~$Pointer$_#in~31.offset_6| 0)) +(assert + (<= |##fun~$Pointer$~TO~$Pointer$_#in~#fp.base_6| + (select ~__CS_thread.base_4 0))) +(assert + (>= |##fun~$Pointer$~TO~$Pointer$_#in~#fp.base_6| + (select ~__CS_thread.base_4 0))) +(assert + (<= |##fun~$Pointer$~TO~$Pointer$_#in~#fp.offset_6| + (select ~__CS_thread.offset_4 0))) +(assert + (>= |##fun~$Pointer$~TO~$Pointer$_#in~#fp.offset_6| + (select ~__CS_thread.offset_4 0))) +(assert (= |old(~__CS_thread_status)_6| ~__CS_thread_status_4)) +(assert (<= |old(~__CS_ret)_6| ~__CS_ret_5)) +(assert (>= |old(~__CS_ret)_6| ~__CS_ret_5)) +(assert (= |old(~__CS_thread_allocated)_6| ~__CS_thread_allocated_4)) +(assert (= |old(~__CS_thread_born_round)_6| ~__CS_thread_born_round_4)) +(assert (<= |old(~__CS_round)_6| ~__CS_round_5)) +(assert (>= |old(~__CS_round)_6| ~__CS_round_5)) +(assert (= |old(~__CS_thread.base)_6| ~__CS_thread.base_4)) +(assert (= |old(#length)_6| |#length_3|)) +(assert (<= |old(~__CS_error)_6| ~__CS_error_3)) +(assert (>= |old(~__CS_error)_6| ~__CS_error_3)) +(assert (= |old(#memory_int)_6| |#memory_int_4|)) +(assert (= |old(~__CS_thread.offset)_6| ~__CS_thread.offset_4)) +(assert (<= |old(~__CS_thread_index)_6| ~__CS_thread_index_4)) +(assert (>= |old(~__CS_thread_index)_6| ~__CS_thread_index_4)) +(assert (= |old(~data)_6| ~data_4)) +(assert (= |old(#valid)_6| |#valid_3|)) +(assert + (<= |##fun~$Pointer$~TO~$Pointer$_#~31.base_7| + |##fun~$Pointer$~TO~$Pointer$_#in~31.base_6|)) +(assert + (>= |##fun~$Pointer$~TO~$Pointer$_#~31.base_7| + |##fun~$Pointer$~TO~$Pointer$_#in~31.base_6|)) +(assert + (<= |##fun~$Pointer$~TO~$Pointer$_#~31.offset_7| + |##fun~$Pointer$~TO~$Pointer$_#in~31.offset_6|)) +(assert + (>= |##fun~$Pointer$~TO~$Pointer$_#~31.offset_7| + |##fun~$Pointer$~TO~$Pointer$_#in~31.offset_6|)) +(assert + (<= |##fun~$Pointer$~TO~$Pointer$_#in~#fp.base_6| + |#funAddr~main_thread.base|)) +(assert + (>= |##fun~$Pointer$~TO~$Pointer$_#in~#fp.base_6| + |#funAddr~main_thread.base|)) +(assert + (<= |##fun~$Pointer$~TO~$Pointer$_#in~#fp.offset_6| + |#funAddr~main_thread.offset|)) +(assert + (>= |##fun~$Pointer$~TO~$Pointer$_#in~#fp.offset_6| + |#funAddr~main_thread.offset|)) +(assert (= ~__CS_thread.offset_9 |old(~__CS_thread.offset)_9|)) +(assert (= ~__CS_thread_status_9 |old(~__CS_thread_status)_9|)) +(assert (<= ~__CS_ret_9 |old(~__CS_ret)_9|)) +(assert (>= ~__CS_ret_9 |old(~__CS_ret)_9|)) +(assert (= ~__CS_thread_born_round_9 |old(~__CS_thread_born_round)_9|)) +(assert (= ~__CS_thread_allocated_9 |old(~__CS_thread_allocated)_9|)) +(assert (<= ~__CS_thread_index_9 |old(~__CS_thread_index)_9|)) +(assert (>= ~__CS_thread_index_9 |old(~__CS_thread_index)_9|)) +(assert (<= ~__CS_round_9 |old(~__CS_round)_9|)) +(assert (>= ~__CS_round_9 |old(~__CS_round)_9|)) +(assert (= ~__CS_thread.base_9 |old(~__CS_thread.base)_9|)) +(assert (= |#valid_9| |old(#valid)_9|)) +(assert (= |#length_9| |old(#length)_9|)) +(assert (<= ~__CS_error_9 |old(~__CS_error)_9|)) +(assert (>= ~__CS_error_9 |old(~__CS_error)_9|)) +(assert (= |#memory_int_9| |old(#memory_int)_9|)) +(assert + (<= |main_thread_#in~arg.base_9| |##fun~$Pointer$~TO~$Pointer$_#~31.base_7|)) +(assert + (>= |main_thread_#in~arg.base_9| |##fun~$Pointer$~TO~$Pointer$_#~31.base_7|)) +(assert + (<= |main_thread_#in~arg.offset_9| + |##fun~$Pointer$~TO~$Pointer$_#~31.offset_7|)) +(assert + (>= |main_thread_#in~arg.offset_9| + |##fun~$Pointer$~TO~$Pointer$_#~31.offset_7|)) +(assert (= |old(~__CS_thread.offset)_9| ~__CS_thread.offset_6)) +(assert (= |old(~__CS_thread_status)_9| ~__CS_thread_status_6)) +(assert (<= |old(~__CS_ret)_9| ~__CS_ret_6)) +(assert (>= |old(~__CS_ret)_9| ~__CS_ret_6)) +(assert (= |old(~__CS_thread_born_round)_9| ~__CS_thread_born_round_6)) +(assert (= |old(~__CS_thread_allocated)_9| ~__CS_thread_allocated_6)) +(assert (<= |old(~__CS_thread_index)_9| ~__CS_thread_index_6)) +(assert (>= |old(~__CS_thread_index)_9| ~__CS_thread_index_6)) +(assert (<= |old(~__CS_round)_9| ~__CS_round_6)) +(assert (>= |old(~__CS_round)_9| ~__CS_round_6)) +(assert (= |old(~__CS_thread.base)_9| ~__CS_thread.base_6)) +(assert (= |old(#valid)_9| |#valid_6|)) +(assert (= |old(#length)_9| |#length_6|)) +(assert (<= |old(~__CS_error)_9| ~__CS_error_6)) +(assert (>= |old(~__CS_error)_9| ~__CS_error_6)) +(assert (= |old(#memory_int)_9| |#memory_int_6|)) +(assert (<= main_thread_~arg.offset_10 |main_thread_#in~arg.offset_9|)) +(assert (>= main_thread_~arg.offset_10 |main_thread_#in~arg.offset_9|)) +(assert (<= main_thread_~arg.base_10 |main_thread_#in~arg.base_9|)) +(assert (>= main_thread_~arg.base_10 |main_thread_#in~arg.base_9|)) +(assert + (= |#length_10| + (store + (store (store |#length_9| |main_thread_~#t1~22.base_10| 1) + |main_thread_~#t2~22.base_10| 1) |main_thread_~#t3~22.base_10| 1))) +(assert (not (= |main_thread_~#t3~22.base_10| 0))) +(assert (<= |main_thread_~#t3~22.offset_10| 0)) +(assert (>= |main_thread_~#t3~22.offset_10| 0)) +(assert + (= |#valid_10| + (store + (store (store |#valid_9| |main_thread_~#t1~22.base_10| 1) + |main_thread_~#t2~22.base_10| 1) |main_thread_~#t3~22.base_10| 1))) +(assert + (not + (not + (= + (select + (store (store |#valid_9| |main_thread_~#t1~22.base_10| 1) + |main_thread_~#t2~22.base_10| 1) |main_thread_~#t3~22.base_10|) 0)))) +(assert (not (= |main_thread_~#t2~22.base_10| 0))) +(assert (<= |main_thread_~#t2~22.offset_10| 0)) +(assert (>= |main_thread_~#t2~22.offset_10| 0)) +(assert + (not + (not + (= + (select (store |#valid_9| |main_thread_~#t1~22.base_10| 1) + |main_thread_~#t2~22.base_10|) 0)))) +(assert (not (= |main_thread_~#t1~22.base_10| 0))) +(assert (<= |main_thread_~#t1~22.offset_10| 0)) +(assert (>= |main_thread_~#t1~22.offset_10| 0)) +(assert (not (not (= (select |#valid_9| |main_thread_~#t1~22.base_10|) 0)))) +(assert (<= ~__CS_ret_11 |old(~__CS_ret)_11|)) +(assert (>= ~__CS_ret_11 |old(~__CS_ret)_11|)) +(assert (<= ~__CS_round_11 |old(~__CS_round)_11|)) +(assert (>= ~__CS_round_11 |old(~__CS_round)_11|)) +(assert true) +(assert (<= |old(~__CS_ret)_11| ~__CS_ret_9)) +(assert (>= |old(~__CS_ret)_11| ~__CS_ret_9)) +(assert (<= |old(~__CS_round)_11| ~__CS_round_9)) +(assert (>= |old(~__CS_round)_11| ~__CS_round_9)) +(assert + (or (not (= (mod ~__CS_round_12 256) (mod 1 256))) + (= |v___CS_cs_#t~ret1_12_fresh_27| 0) + (= ~__CS_ret_12 ~__CS_ret_PREEMPTED_1))) +(assert + (or (= ~__CS_ret_12 ~__CS_ret_PREEMPTED_1) (= ~__CS_ret_12 ~__CS_ret_11))) +(assert + (or (= (mod ~__CS_round_12 256) (mod 1 256)) (= ~__CS_ret_12 ~__CS_ret_11))) +(assert + (or (not (= |v___CS_cs_#t~ret1_12_fresh_27| 0)) + (= ~__CS_ret_12 ~__CS_ret_11))) +(assert (< (mod (+ ~__CS_round_11 __CS_cs_~k~6_12) 256) (mod 2 256))) +(assert (<= ~__CS_round_12 (+ ~__CS_round_11 __CS_cs_~k~6_12))) +(assert (>= ~__CS_round_12 (+ ~__CS_round_11 __CS_cs_~k~6_12))) +(assert true) +(assert (<= (mod ~__CS_ret_12 256) (mod 0 256))) +(assert (>= (mod ~__CS_ret_12 256) (mod 0 256))) +(assert true) +(assert (<= |__CS_pthread_mutex_init_#in~mutex.base_15| |~#mutex.base_1|)) +(assert (>= |__CS_pthread_mutex_init_#in~mutex.base_15| |~#mutex.base_1|)) +(assert + (<= |__CS_pthread_mutex_init_#in~mutex.offset_15| + (+ |~#mutex.offset_1| (* ~__CS_round_12 1)))) +(assert + (>= |__CS_pthread_mutex_init_#in~mutex.offset_15| + (+ |~#mutex.offset_1| (* ~__CS_round_12 1)))) +(assert (<= |__CS_pthread_mutex_init_#in~attr.base_15| 0)) +(assert (>= |__CS_pthread_mutex_init_#in~attr.base_15| 0)) +(assert (<= |__CS_pthread_mutex_init_#in~attr.offset_15| 0)) +(assert (>= |__CS_pthread_mutex_init_#in~attr.offset_15| 0)) +(assert true) +(assert + (<= __CS_pthread_mutex_init_~mutex.offset_16 + |__CS_pthread_mutex_init_#in~mutex.offset_15|)) +(assert + (>= __CS_pthread_mutex_init_~mutex.offset_16 + |__CS_pthread_mutex_init_#in~mutex.offset_15|)) +(assert + (<= __CS_pthread_mutex_init_~mutex.base_16 + |__CS_pthread_mutex_init_#in~mutex.base_15|)) +(assert + (>= __CS_pthread_mutex_init_~mutex.base_16 + |__CS_pthread_mutex_init_#in~mutex.base_15|)) +(assert + (<= __CS_pthread_mutex_init_~attr.base_16 + |__CS_pthread_mutex_init_#in~attr.base_15|)) +(assert + (>= __CS_pthread_mutex_init_~attr.base_16 + |__CS_pthread_mutex_init_#in~attr.base_15|)) +(assert + (<= __CS_pthread_mutex_init_~attr.offset_16 + |__CS_pthread_mutex_init_#in~attr.offset_15|)) +(assert + (>= __CS_pthread_mutex_init_~attr.offset_16 + |__CS_pthread_mutex_init_#in~attr.offset_15|)) +(assert (<= |__CS_pthread_mutex_init_#res_16| 0)) +(assert (>= |__CS_pthread_mutex_init_#res_16| 0)) +(assert (<= |main_thread_#t~ret17_17| |__CS_pthread_mutex_init_#res_16|)) +(assert (>= |main_thread_#t~ret17_17| |__CS_pthread_mutex_init_#res_16|)) +(assert + (= |#memory_int_18| + (store + (store + (store |#memory_int_9| |main_thread_~#t1~22.base_10| + (store (select |#memory_int_9| |main_thread_~#t1~22.base_10|) + |main_thread_~#t1~22.offset_10| |main_thread_#t~nondet18_9|)) + |main_thread_~#t2~22.base_10| + (store + (select + (store |#memory_int_9| |main_thread_~#t1~22.base_10| + (store (select |#memory_int_9| |main_thread_~#t1~22.base_10|) + |main_thread_~#t1~22.offset_10| |main_thread_#t~nondet18_9|)) + |main_thread_~#t2~22.base_10|) |main_thread_~#t2~22.offset_10| + |main_thread_#t~nondet19_9|)) |main_thread_~#t3~22.base_10| + (store + (select + (store + (store |#memory_int_9| |main_thread_~#t1~22.base_10| + (store (select |#memory_int_9| |main_thread_~#t1~22.base_10|) + |main_thread_~#t1~22.offset_10| |main_thread_#t~nondet18_9|)) + |main_thread_~#t2~22.base_10| + (store + (select + (store |#memory_int_9| |main_thread_~#t1~22.base_10| + (store (select |#memory_int_9| |main_thread_~#t1~22.base_10|) + |main_thread_~#t1~22.offset_10| |main_thread_#t~nondet18_9|)) + |main_thread_~#t2~22.base_10|) |main_thread_~#t2~22.offset_10| + |main_thread_#t~nondet19_9|)) |main_thread_~#t3~22.base_10|) + |main_thread_~#t3~22.offset_10| |main_thread_#t~nondet20_9|)))) +(assert (<= ~__CS_ret_19 |old(~__CS_ret)_19|)) +(assert (>= ~__CS_ret_19 |old(~__CS_ret)_19|)) +(assert (<= ~__CS_round_19 |old(~__CS_round)_19|)) +(assert (>= ~__CS_round_19 |old(~__CS_round)_19|)) +(assert true) +(assert (<= |old(~__CS_ret)_19| ~__CS_ret_12)) +(assert (>= |old(~__CS_ret)_19| ~__CS_ret_12)) +(assert (<= |old(~__CS_round)_19| ~__CS_round_12)) +(assert (>= |old(~__CS_round)_19| ~__CS_round_12)) +(assert + (or (not (= (mod ~__CS_round_20 256) (mod 1 256))) + (= |v___CS_cs_#t~ret1_12_fresh_28| 0) + (= ~__CS_ret_20 ~__CS_ret_PREEMPTED_1))) +(assert + (or (= ~__CS_ret_20 ~__CS_ret_PREEMPTED_1) (= ~__CS_ret_20 ~__CS_ret_19))) +(assert + (or (= (mod ~__CS_round_20 256) (mod 1 256)) (= ~__CS_ret_20 ~__CS_ret_19))) +(assert + (or (not (= |v___CS_cs_#t~ret1_12_fresh_28| 0)) + (= ~__CS_ret_20 ~__CS_ret_19))) +(assert (< (mod (+ ~__CS_round_19 __CS_cs_~k~6_20) 256) (mod 2 256))) +(assert (<= ~__CS_round_20 (+ ~__CS_round_19 __CS_cs_~k~6_20))) +(assert (>= ~__CS_round_20 (+ ~__CS_round_19 __CS_cs_~k~6_20))) +(assert true) +(assert (<= (mod ~__CS_ret_20 256) (mod 0 256))) +(assert (>= (mod ~__CS_ret_20 256) (mod 0 256))) +(assert (= ~__CS_thread.offset_23 |old(~__CS_thread.offset)_23|)) +(assert (= ~__CS_thread_status_23 |old(~__CS_thread_status)_23|)) +(assert (= ~__CS_thread_born_round_23 |old(~__CS_thread_born_round)_23|)) +(assert (= ~__CS_thread_allocated_23 |old(~__CS_thread_allocated)_23|)) +(assert (<= ~__CS_thread_index_23 |old(~__CS_thread_index)_23|)) +(assert (>= ~__CS_thread_index_23 |old(~__CS_thread_index)_23|)) +(assert (= ~__CS_thread.base_23 |old(~__CS_thread.base)_23|)) +(assert (= |#memory_int_23| |old(#memory_int)_23|)) +(assert + (<= |__CS_pthread_create_#in~id1.base_23| |main_thread_~#t1~22.base_10|)) +(assert + (>= |__CS_pthread_create_#in~id1.base_23| |main_thread_~#t1~22.base_10|)) +(assert + (<= |__CS_pthread_create_#in~id1.offset_23| |main_thread_~#t1~22.offset_10|)) +(assert + (>= |__CS_pthread_create_#in~id1.offset_23| |main_thread_~#t1~22.offset_10|)) +(assert (<= |__CS_pthread_create_#in~attr.base_23| 0)) +(assert (>= |__CS_pthread_create_#in~attr.base_23| 0)) +(assert (<= |__CS_pthread_create_#in~attr.offset_23| 0)) +(assert (>= |__CS_pthread_create_#in~attr.offset_23| 0)) +(assert (<= |__CS_pthread_create_#in~t1.base_23| |#funAddr~thread1.base|)) +(assert (>= |__CS_pthread_create_#in~t1.base_23| |#funAddr~thread1.base|)) +(assert (<= |__CS_pthread_create_#in~t1.offset_23| |#funAddr~thread1.offset|)) +(assert (>= |__CS_pthread_create_#in~t1.offset_23| |#funAddr~thread1.offset|)) +(assert (<= |__CS_pthread_create_#in~arg.base_23| 0)) +(assert (>= |__CS_pthread_create_#in~arg.base_23| 0)) +(assert (<= |__CS_pthread_create_#in~arg.offset_23| 0)) +(assert (>= |__CS_pthread_create_#in~arg.offset_23| 0)) +(assert (= |old(~__CS_thread.offset)_23| ~__CS_thread.offset_9)) +(assert (= |old(~__CS_thread_status)_23| ~__CS_thread_status_9)) +(assert (= |old(~__CS_thread_born_round)_23| ~__CS_thread_born_round_9)) +(assert (= |old(~__CS_thread_allocated)_23| ~__CS_thread_allocated_9)) +(assert (<= |old(~__CS_thread_index)_23| ~__CS_thread_index_9)) +(assert (>= |old(~__CS_thread_index)_23| ~__CS_thread_index_9)) +(assert (= |old(~__CS_thread.base)_23| ~__CS_thread.base_9)) +(assert (= |old(#memory_int)_23| |#memory_int_18|)) +(assert + (or + (= |#memory_int_24| + (store |#memory_int_23| __CS_pthread_create_~id1.base_24 + (store (select |#memory_int_23| __CS_pthread_create_~id1.base_24) + __CS_pthread_create_~id1.offset_24 ~__CS_thread_index_24))) + (= ~__CS_thread.base_23 ~__CS_thread.base_24))) +(assert + (or (= ~__CS_thread_index_24 (+ ~__CS_thread_index_23 1)) + (= ~__CS_thread_born_round_23 ~__CS_thread_born_round_24))) +(assert + (or + (= ~__CS_thread_born_round_24 + (store ~__CS_thread_born_round_23 ~__CS_thread_index_24 ~__CS_round_20)) + (= ~__CS_thread.offset_23 ~__CS_thread.offset_24))) +(assert + (or + (= |#memory_int_24| + (store |#memory_int_23| __CS_pthread_create_~id1.base_24 + (store (select |#memory_int_23| __CS_pthread_create_~id1.base_24) + __CS_pthread_create_~id1.offset_24 123))) + (= |__CS_pthread_create_#res_24| ~__CS_thread_index_24))) +(assert + (or + (= ~__CS_thread_status_24 + (store ~__CS_thread_status_23 ~__CS_round_20 + (store (select ~__CS_thread_status_23 ~__CS_round_20) ~__CS_thread_index_24 + ~__THREAD_RUNNING_1))) + (= ~__CS_thread_born_round_23 ~__CS_thread_born_round_24))) +(assert + (or (= |__CS_pthread_create_#t~post8_23| |__CS_pthread_create_#t~post8_24|) + (= ~__CS_thread_index_24 (+ ~__CS_thread_index_23 1)))) +(assert + (or + (= ~__CS_thread_status_24 + (store ~__CS_thread_status_23 ~__CS_round_20 + (store (select ~__CS_thread_status_23 ~__CS_round_20) ~__CS_thread_index_24 + ~__THREAD_RUNNING_1))) (= ~__CS_thread.offset_23 ~__CS_thread.offset_24))) +(assert + (or + (= ~__CS_thread.offset_24 + (store ~__CS_thread.offset_23 ~__CS_thread_index_24 + __CS_pthread_create_~t1.offset_24)) + (= ~__CS_thread_born_round_23 ~__CS_thread_born_round_24))) +(assert + (or + (= ~__CS_thread.base_24 + (store ~__CS_thread.base_23 ~__CS_thread_index_24 + __CS_pthread_create_~t1.base_24)) + (= ~__CS_thread.offset_23 ~__CS_thread.offset_24))) +(assert + (or + (= ~__CS_thread_status_24 + (store ~__CS_thread_status_23 ~__CS_round_20 + (store (select ~__CS_thread_status_23 ~__CS_round_20) ~__CS_thread_index_24 + ~__THREAD_RUNNING_1))) (= (mod ~__CS_thread_index_23 256) (mod 3 256)))) +(assert + (or (= ~__CS_thread_index_23 ~__CS_thread_index_24) + (= ~__CS_thread_allocated_24 + (store ~__CS_thread_allocated_23 ~__CS_thread_index_24 1)))) +(assert + (or (= ~__CS_thread.offset_23 ~__CS_thread.offset_24) + (= ~__CS_thread_allocated_24 + (store ~__CS_thread_allocated_23 ~__CS_thread_index_24 1)))) +(assert + (or + (= ~__CS_thread_born_round_24 + (store ~__CS_thread_born_round_23 ~__CS_thread_index_24 ~__CS_round_20)) + (= |__CS_pthread_create_#t~post8_23| |__CS_pthread_create_#t~post8_24|))) +(assert + (or (= ~__CS_thread_index_23 ~__CS_thread_index_24) + (not (= (mod ~__CS_thread_index_23 256) (mod 3 256))))) +(assert + (or + (= ~__CS_thread.offset_24 + (store ~__CS_thread.offset_23 ~__CS_thread_index_24 + __CS_pthread_create_~t1.offset_24)) + (= ~__CS_thread.base_23 ~__CS_thread.base_24))) +(assert + (or + (= ~__CS_thread_born_round_24 + (store ~__CS_thread_born_round_23 ~__CS_thread_index_24 ~__CS_round_20)) + (= |#memory_int_24| + (store |#memory_int_23| __CS_pthread_create_~id1.base_24 + (store (select |#memory_int_23| __CS_pthread_create_~id1.base_24) + __CS_pthread_create_~id1.offset_24 123))))) +(assert + (or + (= |#memory_int_24| + (store |#memory_int_23| __CS_pthread_create_~id1.base_24 + (store (select |#memory_int_23| __CS_pthread_create_~id1.base_24) + __CS_pthread_create_~id1.offset_24 123))) + (= ~__CS_thread_allocated_24 + (store ~__CS_thread_allocated_23 ~__CS_thread_index_24 1)))) +(assert + (or + (= ~__CS_thread_status_24 + (store ~__CS_thread_status_23 ~__CS_round_20 + (store (select ~__CS_thread_status_23 ~__CS_round_20) ~__CS_thread_index_24 + ~__THREAD_RUNNING_1))) (= ~__CS_thread.base_23 ~__CS_thread.base_24))) +(assert + (or + (= ~__CS_thread.offset_24 + (store ~__CS_thread.offset_23 ~__CS_thread_index_24 + __CS_pthread_create_~t1.offset_24)) + (= |__CS_pthread_create_#res_24| (- 1)))) +(assert + (or + (= ~__CS_thread_born_round_24 + (store ~__CS_thread_born_round_23 ~__CS_thread_index_24 ~__CS_round_20)) + (= |__CS_pthread_create_#res_24| (- 1)))) +(assert + (or (= ~__CS_thread_allocated_23 ~__CS_thread_allocated_24) + (= |__CS_pthread_create_#res_24| ~__CS_thread_index_24))) +(assert + (or (= ~__CS_thread.base_23 ~__CS_thread.base_24) + (not (= (mod ~__CS_thread_index_23 256) (mod 3 256))))) +(assert + (or + (= |#memory_int_24| + (store |#memory_int_23| __CS_pthread_create_~id1.base_24 + (store (select |#memory_int_23| __CS_pthread_create_~id1.base_24) + __CS_pthread_create_~id1.offset_24 123))) + (= ~__CS_thread_index_24 (+ ~__CS_thread_index_23 1)))) +(assert + (or + (= ~__CS_thread.offset_24 + (store ~__CS_thread.offset_23 ~__CS_thread_index_24 + __CS_pthread_create_~t1.offset_24)) + (= ~__CS_thread_allocated_23 ~__CS_thread_allocated_24))) +(assert + (or (= |__CS_pthread_create_#res_24| (- 1)) + (not (= (mod ~__CS_thread_index_23 256) (mod 3 256))))) +(assert + (or (= ~__CS_thread_born_round_23 ~__CS_thread_born_round_24) + (= ~__CS_thread_allocated_24 + (store ~__CS_thread_allocated_23 ~__CS_thread_index_24 1)))) +(assert + (or (= |__CS_pthread_create_#t~post8_23| |__CS_pthread_create_#t~post8_24|) + (not (= (mod ~__CS_thread_index_23 256) (mod 3 256))))) +(assert + (or (= (mod ~__CS_thread_index_23 256) (mod 3 256)) + (= ~__CS_thread_allocated_24 + (store ~__CS_thread_allocated_23 ~__CS_thread_index_24 1)))) +(assert + (or + (= ~__CS_thread_born_round_24 + (store ~__CS_thread_born_round_23 ~__CS_thread_index_24 ~__CS_round_20)) + (= ~__CS_thread_born_round_23 ~__CS_thread_born_round_24))) +(assert + (or (= ~__CS_thread.offset_23 ~__CS_thread.offset_24) + (= |__CS_pthread_create_#res_24| ~__CS_thread_index_24))) +(assert + (or (= (mod ~__CS_thread_index_23 256) (mod 3 256)) + (= |__CS_pthread_create_#res_24| ~__CS_thread_index_24))) +(assert + (or + (= ~__CS_thread.base_24 + (store ~__CS_thread.base_23 ~__CS_thread_index_24 + __CS_pthread_create_~t1.base_24)) + (= ~__CS_thread_index_23 ~__CS_thread_index_24))) +(assert + (or + (= ~__CS_thread.base_24 + (store ~__CS_thread.base_23 ~__CS_thread_index_24 + __CS_pthread_create_~t1.base_24)) + (= ~__CS_thread_status_23 ~__CS_thread_status_24))) +(assert + (or (= ~__CS_thread_allocated_23 ~__CS_thread_allocated_24) + (not (= (mod ~__CS_thread_index_23 256) (mod 3 256))))) +(assert + (or (not (= (mod ~__CS_thread_index_23 256) (mod 3 256))) + (= ~__CS_thread_born_round_23 ~__CS_thread_born_round_24))) +(assert + (or (= |__CS_pthread_create_#res_24| (- 1)) + (= ~__CS_thread_index_24 (+ ~__CS_thread_index_23 1)))) +(assert + (or (= ~__CS_thread_index_23 ~__CS_thread_index_24) + (= |__CS_pthread_create_#res_24| ~__CS_thread_index_24))) +(assert + (or + (= |#memory_int_24| + (store |#memory_int_23| __CS_pthread_create_~id1.base_24 + (store (select |#memory_int_23| __CS_pthread_create_~id1.base_24) + __CS_pthread_create_~id1.offset_24 ~__CS_thread_index_24))) + (= |#memory_int_24| + (store |#memory_int_23| __CS_pthread_create_~id1.base_24 + (store (select |#memory_int_23| __CS_pthread_create_~id1.base_24) + __CS_pthread_create_~id1.offset_24 123))))) +(assert + (or + (= ~__CS_thread.base_24 + (store ~__CS_thread.base_23 ~__CS_thread_index_24 + __CS_pthread_create_~t1.base_24)) + (= ~__CS_thread.base_23 ~__CS_thread.base_24))) +(assert + (or + (= ~__CS_thread.base_24 + (store ~__CS_thread.base_23 ~__CS_thread_index_24 + __CS_pthread_create_~t1.base_24)) + (= ~__CS_thread_allocated_23 ~__CS_thread_allocated_24))) +(assert + (or + (= |#memory_int_24| + (store |#memory_int_23| __CS_pthread_create_~id1.base_24 + (store (select |#memory_int_23| __CS_pthread_create_~id1.base_24) + __CS_pthread_create_~id1.offset_24 123))) + (= ~__CS_thread_status_24 + (store ~__CS_thread_status_23 ~__CS_round_20 + (store (select ~__CS_thread_status_23 ~__CS_round_20) ~__CS_thread_index_24 + ~__THREAD_RUNNING_1))))) +(assert + (or (= ~__CS_thread_status_23 ~__CS_thread_status_24) + (= |__CS_pthread_create_#res_24| ~__CS_thread_index_24))) +(assert + (or (= |__CS_pthread_create_#t~post8_23| |__CS_pthread_create_#t~post8_24|) + (= ~__CS_thread_allocated_24 + (store ~__CS_thread_allocated_23 ~__CS_thread_index_24 1)))) +(assert + (or (= |__CS_pthread_create_#t~post8_23| |__CS_pthread_create_#t~post8_24|) + (= ~__CS_thread_status_24 + (store ~__CS_thread_status_23 ~__CS_round_20 + (store (select ~__CS_thread_status_23 ~__CS_round_20) ~__CS_thread_index_24 + ~__THREAD_RUNNING_1))))) +(assert + (or + (= |#memory_int_24| + (store |#memory_int_23| __CS_pthread_create_~id1.base_24 + (store (select |#memory_int_23| __CS_pthread_create_~id1.base_24) + __CS_pthread_create_~id1.offset_24 ~__CS_thread_index_24))) + (= (mod ~__CS_thread_index_23 256) (mod 3 256)))) +(assert + (or + (= ~__CS_thread.offset_24 + (store ~__CS_thread.offset_23 ~__CS_thread_index_24 + __CS_pthread_create_~t1.offset_24)) + (= ~__CS_thread.offset_23 ~__CS_thread.offset_24))) +(assert + (or + (= ~__CS_thread.offset_24 + (store ~__CS_thread.offset_23 ~__CS_thread_index_24 + __CS_pthread_create_~t1.offset_24)) + (= ~__CS_thread_status_23 ~__CS_thread_status_24))) +(assert + (or + (= ~__CS_thread.base_24 + (store ~__CS_thread.base_23 ~__CS_thread_index_24 + __CS_pthread_create_~t1.base_24)) + (= ~__CS_thread_born_round_23 ~__CS_thread_born_round_24))) +(assert + (or + (= ~__CS_thread_born_round_24 + (store ~__CS_thread_born_round_23 ~__CS_thread_index_24 ~__CS_round_20)) + (= ~__CS_thread_status_23 ~__CS_thread_status_24))) +(assert + (or (= ~__CS_thread_allocated_23 ~__CS_thread_allocated_24) + (= |#memory_int_24| + (store |#memory_int_23| __CS_pthread_create_~id1.base_24 + (store (select |#memory_int_23| __CS_pthread_create_~id1.base_24) + __CS_pthread_create_~id1.offset_24 ~__CS_thread_index_24))))) +(assert + (or (= |__CS_pthread_create_#res_24| (- 1)) + (= ~__CS_thread_allocated_24 + (store ~__CS_thread_allocated_23 ~__CS_thread_index_24 1)))) +(assert + (or (= ~__CS_thread_index_23 ~__CS_thread_index_24) + (= ~__CS_thread_index_24 (+ ~__CS_thread_index_23 1)))) +(assert + (or + (= ~__CS_thread.base_24 + (store ~__CS_thread.base_23 ~__CS_thread_index_24 + __CS_pthread_create_~t1.base_24)) + (= |#memory_int_24| + (store |#memory_int_23| __CS_pthread_create_~id1.base_24 + (store (select |#memory_int_23| __CS_pthread_create_~id1.base_24) + __CS_pthread_create_~id1.offset_24 123))))) +(assert + (or (= |__CS_pthread_create_#res_24| (- 1)) + (= ~__CS_thread_status_24 + (store ~__CS_thread_status_23 ~__CS_round_20 + (store (select ~__CS_thread_status_23 ~__CS_round_20) ~__CS_thread_index_24 + ~__THREAD_RUNNING_1))))) +(assert + (or (= ~__CS_thread_born_round_23 ~__CS_thread_born_round_24) + (= |__CS_pthread_create_#res_24| ~__CS_thread_index_24))) +(assert + (or + (= |#memory_int_24| + (store |#memory_int_23| __CS_pthread_create_~id1.base_24 + (store (select |#memory_int_23| __CS_pthread_create_~id1.base_24) + __CS_pthread_create_~id1.offset_24 ~__CS_thread_index_24))) + (= ~__CS_thread.offset_23 ~__CS_thread.offset_24))) +(assert + (or (= ~__CS_thread_allocated_23 ~__CS_thread_allocated_24) + (= ~__CS_thread_status_24 + (store ~__CS_thread_status_23 ~__CS_round_20 + (store (select ~__CS_thread_status_23 ~__CS_round_20) ~__CS_thread_index_24 + ~__THREAD_RUNNING_1))))) +(assert + (or (= ~__CS_thread.base_23 ~__CS_thread.base_24) + (= ~__CS_thread_index_24 (+ ~__CS_thread_index_23 1)))) +(assert + (or + (= ~__CS_thread.offset_24 + (store ~__CS_thread.offset_23 ~__CS_thread_index_24 + __CS_pthread_create_~t1.offset_24)) + (= |#memory_int_24| + (store |#memory_int_23| __CS_pthread_create_~id1.base_24 + (store (select |#memory_int_23| __CS_pthread_create_~id1.base_24) + __CS_pthread_create_~id1.offset_24 123))))) +(assert + (or + (= ~__CS_thread.base_24 + (store ~__CS_thread.base_23 ~__CS_thread_index_24 + __CS_pthread_create_~t1.base_24)) + (= |__CS_pthread_create_#t~post8_23| |__CS_pthread_create_#t~post8_24|))) +(assert + (or (= ~__CS_thread.base_23 ~__CS_thread.base_24) + (= |__CS_pthread_create_#res_24| ~__CS_thread_index_24))) +(assert + (or (= ~__CS_thread_index_23 ~__CS_thread_index_24) + (= ~__CS_thread_status_24 + (store ~__CS_thread_status_23 ~__CS_round_20 + (store (select ~__CS_thread_status_23 ~__CS_round_20) ~__CS_thread_index_24 + ~__THREAD_RUNNING_1))))) +(assert + (or (= ~__CS_thread.base_23 ~__CS_thread.base_24) + (= ~__CS_thread_allocated_24 + (store ~__CS_thread_allocated_23 ~__CS_thread_index_24 1)))) +(assert + (or + (= ~__CS_thread.offset_24 + (store ~__CS_thread.offset_23 ~__CS_thread_index_24 + __CS_pthread_create_~t1.offset_24)) + (= |__CS_pthread_create_#t~post8_23| |__CS_pthread_create_#t~post8_24|))) +(assert + (or (= |__CS_pthread_create_#t~post8_23| |__CS_pthread_create_#t~post8_24|) + (= |__CS_pthread_create_#res_24| ~__CS_thread_index_24))) +(assert + (or + (= ~__CS_thread_born_round_24 + (store ~__CS_thread_born_round_23 ~__CS_thread_index_24 ~__CS_round_20)) + (= ~__CS_thread_index_23 ~__CS_thread_index_24))) +(assert + (or + (= ~__CS_thread.offset_24 + (store ~__CS_thread.offset_23 ~__CS_thread_index_24 + __CS_pthread_create_~t1.offset_24)) + (= ~__CS_thread_index_23 ~__CS_thread_index_24))) +(assert + (or + (= |#memory_int_24| + (store |#memory_int_23| __CS_pthread_create_~id1.base_24 + (store (select |#memory_int_23| __CS_pthread_create_~id1.base_24) + __CS_pthread_create_~id1.offset_24 ~__CS_thread_index_24))) + (= ~__CS_thread_index_23 ~__CS_thread_index_24))) +(assert + (or + (= ~__CS_thread.offset_24 + (store ~__CS_thread.offset_23 ~__CS_thread_index_24 + __CS_pthread_create_~t1.offset_24)) + (= (mod ~__CS_thread_index_23 256) (mod 3 256)))) +(assert + (or (= ~__CS_thread_allocated_23 ~__CS_thread_allocated_24) + (= ~__CS_thread_allocated_24 + (store ~__CS_thread_allocated_23 ~__CS_thread_index_24 1)))) +(assert + (or (= ~__CS_thread_allocated_23 ~__CS_thread_allocated_24) + (= ~__CS_thread_index_24 (+ ~__CS_thread_index_23 1)))) +(assert + (or (= (mod ~__CS_thread_index_23 256) (mod 3 256)) + (= ~__CS_thread_index_24 (+ ~__CS_thread_index_23 1)))) +(assert + (or (= |__CS_pthread_create_#res_24| (- 1)) + (= |__CS_pthread_create_#res_24| ~__CS_thread_index_24))) +(assert + (or (not (= (mod ~__CS_thread_index_23 256) (mod 3 256))) + (= ~__CS_thread.offset_23 ~__CS_thread.offset_24))) +(assert + (or + (= |#memory_int_24| + (store |#memory_int_23| __CS_pthread_create_~id1.base_24 + (store (select |#memory_int_23| __CS_pthread_create_~id1.base_24) + __CS_pthread_create_~id1.offset_24 ~__CS_thread_index_24))) + (= |__CS_pthread_create_#res_24| (- 1)))) +(assert + (or + (= ~__CS_thread_allocated_24 + (store ~__CS_thread_allocated_23 ~__CS_thread_index_24 1)) + (= ~__CS_thread_status_23 ~__CS_thread_status_24))) +(assert + (or + (= ~__CS_thread_status_24 + (store ~__CS_thread_status_23 ~__CS_round_20 + (store (select ~__CS_thread_status_23 ~__CS_round_20) ~__CS_thread_index_24 + ~__THREAD_RUNNING_1))) (= ~__CS_thread_status_23 ~__CS_thread_status_24))) +(assert + (or + (= ~__CS_thread.base_24 + (store ~__CS_thread.base_23 ~__CS_thread_index_24 + __CS_pthread_create_~t1.base_24)) + (= (mod ~__CS_thread_index_23 256) (mod 3 256)))) +(assert + (or (= ~__CS_thread_index_24 (+ ~__CS_thread_index_23 1)) + (= ~__CS_thread.offset_23 ~__CS_thread.offset_24))) +(assert + (or (= ~__CS_thread_index_24 (+ ~__CS_thread_index_23 1)) + (= ~__CS_thread_status_23 ~__CS_thread_status_24))) +(assert + (or + (= |#memory_int_24| + (store |#memory_int_23| __CS_pthread_create_~id1.base_24 + (store (select |#memory_int_23| __CS_pthread_create_~id1.base_24) + __CS_pthread_create_~id1.offset_24 ~__CS_thread_index_24))) + (= |__CS_pthread_create_#t~post8_23| |__CS_pthread_create_#t~post8_24|))) +(assert + (or + (= ~__CS_thread.base_24 + (store ~__CS_thread.base_23 ~__CS_thread_index_24 + __CS_pthread_create_~t1.base_24)) + (= |__CS_pthread_create_#res_24| (- 1)))) +(assert + (or + (= |#memory_int_24| + (store |#memory_int_23| __CS_pthread_create_~id1.base_24 + (store (select |#memory_int_23| __CS_pthread_create_~id1.base_24) + __CS_pthread_create_~id1.offset_24 ~__CS_thread_index_24))) + (= ~__CS_thread_status_23 ~__CS_thread_status_24))) +(assert + (or + (= ~__CS_thread_born_round_24 + (store ~__CS_thread_born_round_23 ~__CS_thread_index_24 ~__CS_round_20)) + (= ~__CS_thread_allocated_23 ~__CS_thread_allocated_24))) +(assert + (or + (= |#memory_int_24| + (store |#memory_int_23| __CS_pthread_create_~id1.base_24 + (store (select |#memory_int_23| __CS_pthread_create_~id1.base_24) + __CS_pthread_create_~id1.offset_24 ~__CS_thread_index_24))) + (= ~__CS_thread_born_round_23 ~__CS_thread_born_round_24))) +(assert + (or + (= |#memory_int_24| + (store |#memory_int_23| __CS_pthread_create_~id1.base_24 + (store (select |#memory_int_23| __CS_pthread_create_~id1.base_24) + __CS_pthread_create_~id1.offset_24 123))) + (not (= (mod ~__CS_thread_index_23 256) (mod 3 256))))) +(assert + (or + (= ~__CS_thread_born_round_24 + (store ~__CS_thread_born_round_23 ~__CS_thread_index_24 ~__CS_round_20)) + (= (mod ~__CS_thread_index_23 256) (mod 3 256)))) +(assert + (or + (= ~__CS_thread_born_round_24 + (store ~__CS_thread_born_round_23 ~__CS_thread_index_24 ~__CS_round_20)) + (= ~__CS_thread.base_23 ~__CS_thread.base_24))) +(assert + (or (not (= (mod ~__CS_thread_index_23 256) (mod 3 256))) + (= ~__CS_thread_status_23 ~__CS_thread_status_24))) +(assert + (<= __CS_pthread_create_~id1.offset_24 + |__CS_pthread_create_#in~id1.offset_23|)) +(assert + (>= __CS_pthread_create_~id1.offset_24 + |__CS_pthread_create_#in~id1.offset_23|)) +(assert + (<= __CS_pthread_create_~id1.base_24 |__CS_pthread_create_#in~id1.base_23|)) +(assert + (>= __CS_pthread_create_~id1.base_24 |__CS_pthread_create_#in~id1.base_23|)) +(assert + (<= __CS_pthread_create_~attr.offset_24 + |__CS_pthread_create_#in~attr.offset_23|)) +(assert + (>= __CS_pthread_create_~attr.offset_24 + |__CS_pthread_create_#in~attr.offset_23|)) +(assert + (<= __CS_pthread_create_~attr.base_24 + |__CS_pthread_create_#in~attr.base_23|)) +(assert + (>= __CS_pthread_create_~attr.base_24 + |__CS_pthread_create_#in~attr.base_23|)) +(assert + (<= __CS_pthread_create_~t1.base_24 |__CS_pthread_create_#in~t1.base_23|)) +(assert + (>= __CS_pthread_create_~t1.base_24 |__CS_pthread_create_#in~t1.base_23|)) +(assert + (<= __CS_pthread_create_~t1.offset_24 + |__CS_pthread_create_#in~t1.offset_23|)) +(assert + (>= __CS_pthread_create_~t1.offset_24 + |__CS_pthread_create_#in~t1.offset_23|)) +(assert + (<= __CS_pthread_create_~arg.base_24 |__CS_pthread_create_#in~arg.base_23|)) +(assert + (>= __CS_pthread_create_~arg.base_24 |__CS_pthread_create_#in~arg.base_23|)) +(assert + (<= __CS_pthread_create_~arg.offset_24 + |__CS_pthread_create_#in~arg.offset_23|)) +(assert + (>= __CS_pthread_create_~arg.offset_24 + |__CS_pthread_create_#in~arg.offset_23|)) +(assert (<= |main_thread_#t~ret21_25| |__CS_pthread_create_#res_24|)) +(assert (>= |main_thread_#t~ret21_25| |__CS_pthread_create_#res_24|)) +(assert true) +(assert (<= ~__CS_ret_27 |old(~__CS_ret)_27|)) +(assert (>= ~__CS_ret_27 |old(~__CS_ret)_27|)) +(assert (<= ~__CS_round_27 |old(~__CS_round)_27|)) +(assert (>= ~__CS_round_27 |old(~__CS_round)_27|)) +(assert true) +(assert (<= |old(~__CS_ret)_27| ~__CS_ret_20)) +(assert (>= |old(~__CS_ret)_27| ~__CS_ret_20)) +(assert (<= |old(~__CS_round)_27| ~__CS_round_20)) +(assert (>= |old(~__CS_round)_27| ~__CS_round_20)) +(assert + (or (not (= (mod ~__CS_round_28 256) (mod 1 256))) + (= |v___CS_cs_#t~ret1_12_fresh_29| 0) + (= ~__CS_ret_28 ~__CS_ret_PREEMPTED_1))) +(assert + (or (= ~__CS_ret_28 ~__CS_ret_PREEMPTED_1) (= ~__CS_ret_28 ~__CS_ret_27))) +(assert + (or (= (mod ~__CS_round_28 256) (mod 1 256)) (= ~__CS_ret_28 ~__CS_ret_27))) +(assert + (or (not (= |v___CS_cs_#t~ret1_12_fresh_29| 0)) + (= ~__CS_ret_28 ~__CS_ret_27))) +(assert (< (mod (+ ~__CS_round_27 __CS_cs_~k~6_28) 256) (mod 2 256))) +(assert (<= ~__CS_round_28 (+ ~__CS_round_27 __CS_cs_~k~6_28))) +(assert (>= ~__CS_round_28 (+ ~__CS_round_27 __CS_cs_~k~6_28))) +(assert true) +(assert (not (= (mod ~__CS_ret_28 256) (mod 0 256)))) +(assert (<= |main_thread_#res.base_30| |#NULL.base_1|)) +(assert (>= |main_thread_#res.base_30| |#NULL.base_1|)) +(assert (<= |main_thread_#res.offset_30| |#NULL.offset_1|)) +(assert (>= |main_thread_#res.offset_30| |#NULL.offset_1|)) +(assert true) +(assert + (<= |##fun~$Pointer$~TO~$Pointer$_#t~ret42.base_32| + |main_thread_#res.base_30|)) +(assert + (>= |##fun~$Pointer$~TO~$Pointer$_#t~ret42.base_32| + |main_thread_#res.base_30|)) +(assert + (<= |##fun~$Pointer$~TO~$Pointer$_#t~ret42.offset_32| + |main_thread_#res.offset_30|)) +(assert + (>= |##fun~$Pointer$~TO~$Pointer$_#t~ret42.offset_32| + |main_thread_#res.offset_30|)) +(assert + (<= |##fun~$Pointer$~TO~$Pointer$_#t~funptrres38.base_33| + |##fun~$Pointer$~TO~$Pointer$_#t~ret42.base_32|)) +(assert + (>= |##fun~$Pointer$~TO~$Pointer$_#t~funptrres38.base_33| + |##fun~$Pointer$~TO~$Pointer$_#t~ret42.base_32|)) +(assert + (<= |##fun~$Pointer$~TO~$Pointer$_#t~funptrres38.offset_33| + |##fun~$Pointer$~TO~$Pointer$_#t~ret42.offset_32|)) +(assert + (>= |##fun~$Pointer$~TO~$Pointer$_#t~funptrres38.offset_33| + |##fun~$Pointer$~TO~$Pointer$_#t~ret42.offset_32|)) +(assert + (<= |##fun~$Pointer$~TO~$Pointer$_#res.base_34| + |##fun~$Pointer$~TO~$Pointer$_#t~funptrres38.base_33|)) +(assert + (>= |##fun~$Pointer$~TO~$Pointer$_#res.base_34| + |##fun~$Pointer$~TO~$Pointer$_#t~funptrres38.base_33|)) +(assert + (<= |##fun~$Pointer$~TO~$Pointer$_#res.offset_34| + |##fun~$Pointer$~TO~$Pointer$_#t~funptrres38.offset_33|)) +(assert + (>= |##fun~$Pointer$~TO~$Pointer$_#res.offset_34| + |##fun~$Pointer$~TO~$Pointer$_#t~funptrres38.offset_33|)) +(assert + (<= |main_#t~ret32.base_35| |##fun~$Pointer$~TO~$Pointer$_#res.base_34|)) +(assert + (>= |main_#t~ret32.base_35| |##fun~$Pointer$~TO~$Pointer$_#res.base_34|)) +(assert + (<= |main_#t~ret32.offset_35| |##fun~$Pointer$~TO~$Pointer$_#res.offset_34|)) +(assert + (>= |main_#t~ret32.offset_35| |##fun~$Pointer$~TO~$Pointer$_#res.offset_34|)) +(assert + (or (not (= (mod ~__CS_ret_28 256) (mod ~__CS_ret_PREEMPTED_1 256))) + (= ~__CS_thread_status_24 ~__CS_thread_status_36))) +(assert + (or (= (mod ~__CS_ret_28 256) (mod ~__CS_ret_PREEMPTED_1 256)) + (= ~__CS_thread_status_36 + (store ~__CS_thread_status_24 ~__CS_round_28 + (store (select ~__CS_thread_status_24 ~__CS_round_28) 0 + ~__THREAD_FINISHED_1))))) +(assert + (or + (= ~__CS_thread_status_36 + (store ~__CS_thread_status_24 ~__CS_round_28 + (store (select ~__CS_thread_status_24 ~__CS_round_28) 0 + ~__THREAD_FINISHED_1))) (= ~__CS_thread_status_24 ~__CS_thread_status_36))) +(assert (<= (mod (select ~__CS_thread_allocated_24 1) 256) (mod 1 256))) +(assert (>= (mod (select ~__CS_thread_allocated_24 1) 256) (mod 1 256))) +(assert (<= ~__CS_round_37 (select ~__CS_thread_born_round_24 1))) +(assert (>= ~__CS_round_37 (select ~__CS_thread_born_round_24 1))) +(assert (<= ~__CS_ret_37 0)) +(assert (>= ~__CS_ret_37 0)) +(assert (= ~__CS_thread_status_38 |old(~__CS_thread_status)_38|)) +(assert (<= ~__CS_ret_38 |old(~__CS_ret)_38|)) +(assert (>= ~__CS_ret_38 |old(~__CS_ret)_38|)) +(assert (= ~__CS_thread_allocated_38 |old(~__CS_thread_allocated)_38|)) +(assert (= ~__CS_thread_born_round_38 |old(~__CS_thread_born_round)_38|)) +(assert (<= ~__CS_round_38 |old(~__CS_round)_38|)) +(assert (>= ~__CS_round_38 |old(~__CS_round)_38|)) +(assert (= ~__CS_thread.base_38 |old(~__CS_thread.base)_38|)) +(assert (= |#length_38| |old(#length)_38|)) +(assert (<= ~__CS_error_38 |old(~__CS_error)_38|)) +(assert (>= ~__CS_error_38 |old(~__CS_error)_38|)) +(assert (= |#memory_int_38| |old(#memory_int)_38|)) +(assert (= ~__CS_thread.offset_38 |old(~__CS_thread.offset)_38|)) +(assert (<= ~__CS_thread_index_38 |old(~__CS_thread_index)_38|)) +(assert (>= ~__CS_thread_index_38 |old(~__CS_thread_index)_38|)) +(assert (= ~data_38 |old(~data)_38|)) +(assert (= |#valid_38| |old(#valid)_38|)) +(assert (<= |##fun~$Pointer$~TO~$Pointer$_#in~31.base_38| 0)) +(assert (>= |##fun~$Pointer$~TO~$Pointer$_#in~31.base_38| 0)) +(assert (<= |##fun~$Pointer$~TO~$Pointer$_#in~31.offset_38| 0)) +(assert (>= |##fun~$Pointer$~TO~$Pointer$_#in~31.offset_38| 0)) +(assert + (<= |##fun~$Pointer$~TO~$Pointer$_#in~#fp.base_38| + (select ~__CS_thread.base_24 1))) +(assert + (>= |##fun~$Pointer$~TO~$Pointer$_#in~#fp.base_38| + (select ~__CS_thread.base_24 1))) +(assert + (<= |##fun~$Pointer$~TO~$Pointer$_#in~#fp.offset_38| + (select ~__CS_thread.offset_24 1))) +(assert + (>= |##fun~$Pointer$~TO~$Pointer$_#in~#fp.offset_38| + (select ~__CS_thread.offset_24 1))) +(assert (= |old(~__CS_thread_status)_38| ~__CS_thread_status_36)) +(assert (<= |old(~__CS_ret)_38| ~__CS_ret_37)) +(assert (>= |old(~__CS_ret)_38| ~__CS_ret_37)) +(assert (= |old(~__CS_thread_allocated)_38| ~__CS_thread_allocated_24)) +(assert (= |old(~__CS_thread_born_round)_38| ~__CS_thread_born_round_24)) +(assert (<= |old(~__CS_round)_38| ~__CS_round_37)) +(assert (>= |old(~__CS_round)_38| ~__CS_round_37)) +(assert (= |old(~__CS_thread.base)_38| ~__CS_thread.base_24)) +(assert (= |old(#length)_38| |#length_10|)) +(assert (<= |old(~__CS_error)_38| ~__CS_error_9)) +(assert (>= |old(~__CS_error)_38| ~__CS_error_9)) +(assert (= |old(#memory_int)_38| |#memory_int_24|)) +(assert (= |old(~__CS_thread.offset)_38| ~__CS_thread.offset_24)) +(assert (<= |old(~__CS_thread_index)_38| ~__CS_thread_index_24)) +(assert (>= |old(~__CS_thread_index)_38| ~__CS_thread_index_24)) +(assert (= |old(~data)_38| ~data_6)) +(assert (= |old(#valid)_38| |#valid_10|)) +(assert + (<= |##fun~$Pointer$~TO~$Pointer$_#~31.base_39| + |##fun~$Pointer$~TO~$Pointer$_#in~31.base_38|)) +(assert + (>= |##fun~$Pointer$~TO~$Pointer$_#~31.base_39| + |##fun~$Pointer$~TO~$Pointer$_#in~31.base_38|)) +(assert + (<= |##fun~$Pointer$~TO~$Pointer$_#~31.offset_39| + |##fun~$Pointer$~TO~$Pointer$_#in~31.offset_38|)) +(assert + (>= |##fun~$Pointer$~TO~$Pointer$_#~31.offset_39| + |##fun~$Pointer$~TO~$Pointer$_#in~31.offset_38|)) +(assert + (not + (and + (= |##fun~$Pointer$~TO~$Pointer$_#in~#fp.base_38| + |#funAddr~main_thread.base|) + (= |##fun~$Pointer$~TO~$Pointer$_#in~#fp.offset_38| + |#funAddr~main_thread.offset|)))) +(assert + (<= |##fun~$Pointer$~TO~$Pointer$_#in~#fp.base_38| |#funAddr~thread3.base|)) +(assert + (>= |##fun~$Pointer$~TO~$Pointer$_#in~#fp.base_38| |#funAddr~thread3.base|)) +(assert + (<= |##fun~$Pointer$~TO~$Pointer$_#in~#fp.offset_38| + |#funAddr~thread3.offset|)) +(assert + (>= |##fun~$Pointer$~TO~$Pointer$_#in~#fp.offset_38| + |#funAddr~thread3.offset|)) +(assert (<= ~__CS_ret_42 |old(~__CS_ret)_42|)) +(assert (>= ~__CS_ret_42 |old(~__CS_ret)_42|)) +(assert (<= ~__CS_round_42 |old(~__CS_round)_42|)) +(assert (>= ~__CS_round_42 |old(~__CS_round)_42|)) +(assert (<= ~__CS_error_42 |old(~__CS_error)_42|)) +(assert (>= ~__CS_error_42 |old(~__CS_error)_42|)) +(assert (= |#memory_int_42| |old(#memory_int)_42|)) +(assert + (<= |thread3_#in~arg.base_42| |##fun~$Pointer$~TO~$Pointer$_#~31.base_39|)) +(assert + (>= |thread3_#in~arg.base_42| |##fun~$Pointer$~TO~$Pointer$_#~31.base_39|)) +(assert + (<= |thread3_#in~arg.offset_42| + |##fun~$Pointer$~TO~$Pointer$_#~31.offset_39|)) +(assert + (>= |thread3_#in~arg.offset_42| + |##fun~$Pointer$~TO~$Pointer$_#~31.offset_39|)) +(assert (<= |old(~__CS_ret)_42| ~__CS_ret_38)) +(assert (>= |old(~__CS_ret)_42| ~__CS_ret_38)) +(assert (<= |old(~__CS_round)_42| ~__CS_round_38)) +(assert (>= |old(~__CS_round)_42| ~__CS_round_38)) +(assert (<= |old(~__CS_error)_42| ~__CS_error_38)) +(assert (>= |old(~__CS_error)_42| ~__CS_error_38)) +(assert (= |old(#memory_int)_42| |#memory_int_38|)) +(assert (<= thread3_~arg.offset_43 |thread3_#in~arg.offset_42|)) +(assert (>= thread3_~arg.offset_43 |thread3_#in~arg.offset_42|)) +(assert (<= thread3_~arg.base_43 |thread3_#in~arg.base_42|)) +(assert (>= thread3_~arg.base_43 |thread3_#in~arg.base_42|)) +(assert (<= ~__CS_ret_44 |old(~__CS_ret)_44|)) +(assert (>= ~__CS_ret_44 |old(~__CS_ret)_44|)) +(assert (<= ~__CS_round_44 |old(~__CS_round)_44|)) +(assert (>= ~__CS_round_44 |old(~__CS_round)_44|)) +(assert true) +(assert (<= |old(~__CS_ret)_44| ~__CS_ret_42)) +(assert (>= |old(~__CS_ret)_44| ~__CS_ret_42)) +(assert (<= |old(~__CS_round)_44| ~__CS_round_42)) +(assert (>= |old(~__CS_round)_44| ~__CS_round_42)) +(assert + (or (not (= (mod ~__CS_round_45 256) (mod 1 256))) + (= |v___CS_cs_#t~ret1_12_fresh_30| 0) + (= ~__CS_ret_45 ~__CS_ret_PREEMPTED_1))) +(assert + (or (= ~__CS_ret_45 ~__CS_ret_PREEMPTED_1) (= ~__CS_ret_45 ~__CS_ret_44))) +(assert + (or (= (mod ~__CS_round_45 256) (mod 1 256)) (= ~__CS_ret_45 ~__CS_ret_44))) +(assert + (or (not (= |v___CS_cs_#t~ret1_12_fresh_30| 0)) + (= ~__CS_ret_45 ~__CS_ret_44))) +(assert (< (mod (+ ~__CS_round_44 __CS_cs_~k~6_45) 256) (mod 2 256))) +(assert (<= ~__CS_round_45 (+ ~__CS_round_44 __CS_cs_~k~6_45))) +(assert (>= ~__CS_round_45 (+ ~__CS_round_44 __CS_cs_~k~6_45))) +(assert true) +(assert (<= (mod ~__CS_ret_45 256) (mod 0 256))) +(assert (>= (mod ~__CS_ret_45 256) (mod 0 256))) +(assert (<= ~__CS_ret_48 |old(~__CS_ret)_48|)) +(assert (>= ~__CS_ret_48 |old(~__CS_ret)_48|)) +(assert (= |#memory_int_48| |old(#memory_int)_48|)) +(assert (<= |__CS_pthread_mutex_lock_#in~lock.base_48| |~#mutex.base_1|)) +(assert (>= |__CS_pthread_mutex_lock_#in~lock.base_48| |~#mutex.base_1|)) +(assert + (<= |__CS_pthread_mutex_lock_#in~lock.offset_48| + (+ |~#mutex.offset_1| (* ~__CS_round_45 1)))) +(assert + (>= |__CS_pthread_mutex_lock_#in~lock.offset_48| + (+ |~#mutex.offset_1| (* ~__CS_round_45 1)))) +(assert (<= |old(~__CS_ret)_48| ~__CS_ret_45)) +(assert (>= |old(~__CS_ret)_48| ~__CS_ret_45)) +(assert (= |old(#memory_int)_48| |#memory_int_42|)) +(assert + (or (= ~__CS_ret_49 ~__CS_ret_PREEMPTED_1) (= ~__CS_ret_48 ~__CS_ret_49))) +(assert + (or + (= + (mod + (select (select |#memory_int_48| __CS_pthread_mutex_lock_~lock.base_49) + __CS_pthread_mutex_lock_~lock.offset_49) 256) + (mod 0 256)) (= ~__CS_ret_49 ~__CS_ret_PREEMPTED_1))) +(assert + (or + (not + (= + (mod + (select (select |#memory_int_48| __CS_pthread_mutex_lock_~lock.base_49) + __CS_pthread_mutex_lock_~lock.offset_49) 256) + (mod 0 256))) (= ~__CS_ret_48 ~__CS_ret_49))) +(assert + (or + (= |#memory_int_49| + (store |#memory_int_48| __CS_pthread_mutex_lock_~lock.base_49 + (store (select |#memory_int_48| __CS_pthread_mutex_lock_~lock.base_49) + __CS_pthread_mutex_lock_~lock.offset_49 + (+ ~__CS_thread_index_38 1)))) + (= |#memory_int_48| |#memory_int_49|))) +(assert + (or (= |__CS_pthread_mutex_lock_#res_49| 0) + (= |#memory_int_48| |#memory_int_49|))) +(assert + (or + (= + (mod + (select (select |#memory_int_48| __CS_pthread_mutex_lock_~lock.base_49) + __CS_pthread_mutex_lock_~lock.offset_49) 256) + (mod 0 256)) (= |__CS_pthread_mutex_lock_#res_49| 1))) +(assert + (or + (= |#memory_int_49| + (store |#memory_int_48| __CS_pthread_mutex_lock_~lock.base_49 + (store (select |#memory_int_48| __CS_pthread_mutex_lock_~lock.base_49) + __CS_pthread_mutex_lock_~lock.offset_49 + (+ ~__CS_thread_index_38 1)))) + (= |__CS_pthread_mutex_lock_#res_49| 1))) +(assert + (or (= ~__CS_ret_49 ~__CS_ret_PREEMPTED_1) + (= |__CS_pthread_mutex_lock_#res_49| 0))) +(assert + (or + (= |#memory_int_49| + (store |#memory_int_48| __CS_pthread_mutex_lock_~lock.base_49 + (store (select |#memory_int_48| __CS_pthread_mutex_lock_~lock.base_49) + __CS_pthread_mutex_lock_~lock.offset_49 + (+ ~__CS_thread_index_38 1)))) + (= ~__CS_ret_49 ~__CS_ret_PREEMPTED_1))) +(assert + (or + (not + (= + (mod + (select (select |#memory_int_48| __CS_pthread_mutex_lock_~lock.base_49) + __CS_pthread_mutex_lock_~lock.offset_49) 256) + (mod 0 256))) + (= |#memory_int_49| + (store |#memory_int_48| __CS_pthread_mutex_lock_~lock.base_49 + (store (select |#memory_int_48| __CS_pthread_mutex_lock_~lock.base_49) + __CS_pthread_mutex_lock_~lock.offset_49 + (+ ~__CS_thread_index_38 1)))))) +(assert + (or + (not + (= + (mod + (select (select |#memory_int_48| __CS_pthread_mutex_lock_~lock.base_49) + __CS_pthread_mutex_lock_~lock.offset_49) 256) + (mod 0 256))) (= |__CS_pthread_mutex_lock_#res_49| 0))) +(assert + (or (= |#memory_int_48| |#memory_int_49|) (= ~__CS_ret_48 ~__CS_ret_49))) +(assert + (or (= ~__CS_ret_48 ~__CS_ret_49) (= |__CS_pthread_mutex_lock_#res_49| 1))) +(assert + (or (= |__CS_pthread_mutex_lock_#res_49| 0) + (= |__CS_pthread_mutex_lock_#res_49| 1))) +(assert + (or + (= + (mod + (select (select |#memory_int_48| __CS_pthread_mutex_lock_~lock.base_49) + __CS_pthread_mutex_lock_~lock.offset_49) 256) + (mod 0 256)) (= |#memory_int_48| |#memory_int_49|))) +(assert + (<= __CS_pthread_mutex_lock_~lock.offset_49 + |__CS_pthread_mutex_lock_#in~lock.offset_48|)) +(assert + (>= __CS_pthread_mutex_lock_~lock.offset_49 + |__CS_pthread_mutex_lock_#in~lock.offset_48|)) +(assert + (<= __CS_pthread_mutex_lock_~lock.base_49 + |__CS_pthread_mutex_lock_#in~lock.base_48|)) +(assert + (>= __CS_pthread_mutex_lock_~lock.base_49 + |__CS_pthread_mutex_lock_#in~lock.base_48|)) +(assert (<= |thread3_#t~ret15_50| |__CS_pthread_mutex_lock_#res_49|)) +(assert (>= |thread3_#t~ret15_50| |__CS_pthread_mutex_lock_#res_49|)) +(assert true) +(assert (<= ~__CS_ret_52 |old(~__CS_ret)_52|)) +(assert (>= ~__CS_ret_52 |old(~__CS_ret)_52|)) +(assert (<= ~__CS_round_52 |old(~__CS_round)_52|)) +(assert (>= ~__CS_round_52 |old(~__CS_round)_52|)) +(assert true) +(assert (<= |old(~__CS_ret)_52| ~__CS_ret_49)) +(assert (>= |old(~__CS_ret)_52| ~__CS_ret_49)) +(assert (<= |old(~__CS_round)_52| ~__CS_round_45)) +(assert (>= |old(~__CS_round)_52| ~__CS_round_45)) +(assert + (or (not (= (mod ~__CS_round_53 256) (mod 1 256))) + (= |v___CS_cs_#t~ret1_12_fresh_31| 0) + (= ~__CS_ret_53 ~__CS_ret_PREEMPTED_1))) +(assert + (or (= ~__CS_ret_53 ~__CS_ret_PREEMPTED_1) (= ~__CS_ret_53 ~__CS_ret_52))) +(assert + (or (= (mod ~__CS_round_53 256) (mod 1 256)) (= ~__CS_ret_53 ~__CS_ret_52))) +(assert + (or (not (= |v___CS_cs_#t~ret1_12_fresh_31| 0)) + (= ~__CS_ret_53 ~__CS_ret_52))) +(assert (< (mod (+ ~__CS_round_52 __CS_cs_~k~6_53) 256) (mod 2 256))) +(assert (<= ~__CS_round_53 (+ ~__CS_round_52 __CS_cs_~k~6_53))) +(assert (>= ~__CS_round_53 (+ ~__CS_round_52 __CS_cs_~k~6_53))) +(assert true) +(assert (<= (mod ~__CS_ret_53 256) (mod 0 256))) +(assert (>= (mod ~__CS_ret_53 256) (mod 0 256))) +(assert (>= (select ~data_38 ~__CS_round_53) 3)) +(assert (<= ~__CS_ret_57 |old(~__CS_ret)_57|)) +(assert (>= ~__CS_ret_57 |old(~__CS_ret)_57|)) +(assert (<= ~__CS_round_57 |old(~__CS_round)_57|)) +(assert (>= ~__CS_round_57 |old(~__CS_round)_57|)) +(assert true) +(assert (<= |old(~__CS_ret)_57| ~__CS_ret_53)) +(assert (>= |old(~__CS_ret)_57| ~__CS_ret_53)) +(assert (<= |old(~__CS_round)_57| ~__CS_round_53)) +(assert (>= |old(~__CS_round)_57| ~__CS_round_53)) +(assert + (or (not (= (mod ~__CS_round_58 256) (mod 1 256))) + (= |v___CS_cs_#t~ret1_12_fresh_32| 0) + (= ~__CS_ret_58 ~__CS_ret_PREEMPTED_1))) +(assert + (or (= ~__CS_ret_58 ~__CS_ret_PREEMPTED_1) (= ~__CS_ret_58 ~__CS_ret_57))) +(assert + (or (= (mod ~__CS_round_58 256) (mod 1 256)) (= ~__CS_ret_58 ~__CS_ret_57))) +(assert + (or (not (= |v___CS_cs_#t~ret1_12_fresh_32| 0)) + (= ~__CS_ret_58 ~__CS_ret_57))) +(assert (< (mod (+ ~__CS_round_57 __CS_cs_~k~6_58) 256) (mod 2 256))) +(assert (<= ~__CS_round_58 (+ ~__CS_round_57 __CS_cs_~k~6_58))) +(assert (>= ~__CS_round_58 (+ ~__CS_round_57 __CS_cs_~k~6_58))) +(assert true) +(assert (<= (mod ~__CS_ret_58 256) (mod 0 256))) +(assert (>= (mod ~__CS_ret_58 256) (mod 0 256))) +(assert (<= ~__CS_error_61 1)) +(assert (>= ~__CS_error_61 1)) +(assert (<= ~__CS_ret_61 ~__CS_ret_ERROR_1)) +(assert (>= ~__CS_ret_61 ~__CS_ret_ERROR_1)) +(assert (<= |thread3_#res.offset_61| |#NULL.offset_1|)) +(assert (>= |thread3_#res.offset_61| |#NULL.offset_1|)) +(assert (<= |thread3_#res.base_61| |#NULL.base_1|)) +(assert (>= |thread3_#res.base_61| |#NULL.base_1|)) +(assert true) +(assert + (<= |##fun~$Pointer$~TO~$Pointer$_#t~ret41.base_63| |thread3_#res.base_61|)) +(assert + (>= |##fun~$Pointer$~TO~$Pointer$_#t~ret41.base_63| |thread3_#res.base_61|)) +(assert + (<= |##fun~$Pointer$~TO~$Pointer$_#t~ret41.offset_63| + |thread3_#res.offset_61|)) +(assert + (>= |##fun~$Pointer$~TO~$Pointer$_#t~ret41.offset_63| + |thread3_#res.offset_61|)) +(assert + (<= |##fun~$Pointer$~TO~$Pointer$_#t~funptrres38.offset_64| + |##fun~$Pointer$~TO~$Pointer$_#t~ret41.offset_63|)) +(assert + (>= |##fun~$Pointer$~TO~$Pointer$_#t~funptrres38.offset_64| + |##fun~$Pointer$~TO~$Pointer$_#t~ret41.offset_63|)) +(assert + (<= |##fun~$Pointer$~TO~$Pointer$_#t~funptrres38.base_64| + |##fun~$Pointer$~TO~$Pointer$_#t~ret41.base_63|)) +(assert + (>= |##fun~$Pointer$~TO~$Pointer$_#t~funptrres38.base_64| + |##fun~$Pointer$~TO~$Pointer$_#t~ret41.base_63|)) +(assert + (<= |##fun~$Pointer$~TO~$Pointer$_#res.base_65| + |##fun~$Pointer$~TO~$Pointer$_#t~funptrres38.base_64|)) +(assert + (>= |##fun~$Pointer$~TO~$Pointer$_#res.base_65| + |##fun~$Pointer$~TO~$Pointer$_#t~funptrres38.base_64|)) +(assert + (<= |##fun~$Pointer$~TO~$Pointer$_#res.offset_65| + |##fun~$Pointer$~TO~$Pointer$_#t~funptrres38.offset_64|)) +(assert + (>= |##fun~$Pointer$~TO~$Pointer$_#res.offset_65| + |##fun~$Pointer$~TO~$Pointer$_#t~funptrres38.offset_64|)) +(assert + (<= |main_#t~ret33.base_66| |##fun~$Pointer$~TO~$Pointer$_#res.base_65|)) +(assert + (>= |main_#t~ret33.base_66| |##fun~$Pointer$~TO~$Pointer$_#res.base_65|)) +(assert + (<= |main_#t~ret33.offset_66| |##fun~$Pointer$~TO~$Pointer$_#res.offset_65|)) +(assert + (>= |main_#t~ret33.offset_66| |##fun~$Pointer$~TO~$Pointer$_#res.offset_65|)) +(assert + (or + (= ~__CS_thread_status_67 + (store ~__CS_thread_status_38 ~__CS_round_58 + (store (select ~__CS_thread_status_38 ~__CS_round_58) 1 + ~__THREAD_FINISHED_1))) (= ~__CS_thread_status_38 ~__CS_thread_status_67))) +(assert + (or (= ~__CS_thread_status_38 ~__CS_thread_status_67) + (not (= (mod ~__CS_ret_61 256) (mod ~__CS_ret_PREEMPTED_1 256))))) +(assert + (or + (= ~__CS_thread_status_67 + (store ~__CS_thread_status_38 ~__CS_round_58 + (store (select ~__CS_thread_status_38 ~__CS_round_58) 1 + ~__THREAD_FINISHED_1))) + (= (mod ~__CS_ret_61 256) (mod ~__CS_ret_PREEMPTED_1 256)))) +(assert (not (= (mod (select ~__CS_thread_allocated_38 2) 256) (mod 1 256)))) +(assert (not (= (mod (select ~__CS_thread_allocated_38 3) 256) (mod 1 256)))) +(assert + (<= + (mod + (select (select |#memory_int_49| |~#mutex.base_1|) (+ |~#mutex.offset_1| 0)) + 256) (mod (select main_~__CS_cp_mutex~23_4 1) 256))) +(assert + (>= + (mod + (select (select |#memory_int_49| |~#mutex.base_1|) (+ |~#mutex.offset_1| 0)) + 256) (mod (select main_~__CS_cp_mutex~23_4 1) 256))) +(assert (<= (select ~data_38 0) (select main_~__CS_cp_data~23_4 1))) +(assert (>= (select ~data_38 0) (select main_~__CS_cp_data~23_4 1))) +(assert + (<= (mod (select (select ~__CS_thread_status_67 0) 0) 256) + (mod (select (select main_~__CS_cp___CS_thread_status~23_4 1) 0) 256))) +(assert + (>= (mod (select (select ~__CS_thread_status_67 0) 0) 256) + (mod (select (select main_~__CS_cp___CS_thread_status~23_4 1) 0) 256))) +(assert + (<= (mod (select (select ~__CS_thread_status_67 0) 1) 256) + (mod (select (select main_~__CS_cp___CS_thread_status~23_4 1) 1) 256))) +(assert + (>= (mod (select (select ~__CS_thread_status_67 0) 1) 256) + (mod (select (select main_~__CS_cp___CS_thread_status~23_4 1) 1) 256))) +(assert + (<= (mod (select (select ~__CS_thread_status_67 0) 2) 256) + (mod (select (select main_~__CS_cp___CS_thread_status~23_4 1) 2) 256))) +(assert + (>= (mod (select (select ~__CS_thread_status_67 0) 2) 256) + (mod (select (select main_~__CS_cp___CS_thread_status~23_4 1) 2) 256))) +(assert + (<= (mod (select (select ~__CS_thread_status_67 0) 3) 256) + (mod (select (select main_~__CS_cp___CS_thread_status~23_4 1) 3) 256))) +(assert + (>= (mod (select (select ~__CS_thread_status_67 0) 3) 256) + (mod (select (select main_~__CS_cp___CS_thread_status~23_4 1) 3) 256))) +(assert + (<= (select (select ~__CS_thread_lockedon.base_4 0) 0) + (select (select main_~__CS_cp___CS_thread_lockedon~23.base_4 1) 0))) +(assert + (>= (select (select ~__CS_thread_lockedon.base_4 0) 0) + (select (select main_~__CS_cp___CS_thread_lockedon~23.base_4 1) 0))) +(assert + (<= (select (select ~__CS_thread_lockedon.offset_4 0) 0) + (select (select main_~__CS_cp___CS_thread_lockedon~23.offset_4 1) 0))) +(assert + (>= (select (select ~__CS_thread_lockedon.offset_4 0) 0) + (select (select main_~__CS_cp___CS_thread_lockedon~23.offset_4 1) 0))) +(assert + (<= (select (select ~__CS_thread_lockedon.base_4 0) 1) + (select (select main_~__CS_cp___CS_thread_lockedon~23.base_4 1) 1))) +(assert + (>= (select (select ~__CS_thread_lockedon.base_4 0) 1) + (select (select main_~__CS_cp___CS_thread_lockedon~23.base_4 1) 1))) +(assert + (<= (select (select ~__CS_thread_lockedon.offset_4 0) 1) + (select (select main_~__CS_cp___CS_thread_lockedon~23.offset_4 1) 1))) +(assert + (>= (select (select ~__CS_thread_lockedon.offset_4 0) 1) + (select (select main_~__CS_cp___CS_thread_lockedon~23.offset_4 1) 1))) +(assert + (<= (select (select ~__CS_thread_lockedon.base_4 0) 2) + (select (select main_~__CS_cp___CS_thread_lockedon~23.base_4 1) 2))) +(assert + (>= (select (select ~__CS_thread_lockedon.base_4 0) 2) + (select (select main_~__CS_cp___CS_thread_lockedon~23.base_4 1) 2))) +(assert + (<= (select (select ~__CS_thread_lockedon.offset_4 0) 2) + (select (select main_~__CS_cp___CS_thread_lockedon~23.offset_4 1) 2))) +(assert + (>= (select (select ~__CS_thread_lockedon.offset_4 0) 2) + (select (select main_~__CS_cp___CS_thread_lockedon~23.offset_4 1) 2))) +(assert + (<= (select (select ~__CS_thread_lockedon.base_4 0) 3) + (select (select main_~__CS_cp___CS_thread_lockedon~23.base_4 1) 3))) +(assert + (>= (select (select ~__CS_thread_lockedon.base_4 0) 3) + (select (select main_~__CS_cp___CS_thread_lockedon~23.base_4 1) 3))) +(assert + (<= (select (select ~__CS_thread_lockedon.offset_4 0) 3) + (select (select main_~__CS_cp___CS_thread_lockedon~23.offset_4 1) 3))) +(assert + (>= (select (select ~__CS_thread_lockedon.offset_4 0) 3) + (select (select main_~__CS_cp___CS_thread_lockedon~23.offset_4 1) 3))) +(assert true) +(assert + (<= |__VERIFIER_assert_#in~cond_71| + (ite (not (= (mod ~__CS_error_61 256) (mod 1 256))) 1 0))) +(assert + (>= |__VERIFIER_assert_#in~cond_71| + (ite (not (= (mod ~__CS_error_61 256) (mod 1 256))) 1 0))) +(assert true) +(assert (<= __VERIFIER_assert_~cond_72 |__VERIFIER_assert_#in~cond_71|)) +(assert (>= __VERIFIER_assert_~cond_72 |__VERIFIER_assert_#in~cond_71|)) +(assert (<= __VERIFIER_assert_~cond_72 0)) +(assert (>= __VERIFIER_assert_~cond_72 0)) +(assert true) +(check-sat) +(exit) + diff --git a/tests/regress/mcsat/cs_lazy_false-unreach-call.i.smt2.gold b/tests/regress/mcsat/cs_lazy_false-unreach-call.i.smt2.gold new file mode 100644 index 000000000..3f65111b0 --- /dev/null +++ b/tests/regress/mcsat/cs_lazy_false-unreach-call.i.smt2.gold @@ -0,0 +1 @@ +unsat diff --git a/tests/regress/mcsat/s3_srvr.blast.01_false-unreach-call.i.cil.c_0.smt2 b/tests/regress/mcsat/s3_srvr.blast.01_false-unreach-call.i.cil.c_0.smt2 new file mode 100644 index 000000000..190c5e947 --- /dev/null +++ b/tests/regress/mcsat/s3_srvr.blast.01_false-unreach-call.i.cil.c_0.smt2 @@ -0,0 +1,3783 @@ +(set-info :smt-lib-version 2.6) +(set-logic QF_AUFNIA) +(set-info + :source | +SMT script generated by Ultimate Automizer [1,2]. +Ultimate Automizer is an automatic software verification tool that implements +a new automata-theoretic approach [3]. + +This SMT script belongs to a set of SMT scripts that was generated by applying +Ultimate Automizer to benchmarks from the SV-COMP 2015 [4,5] which are available +at [6]. + +This script does _not_ contain all SMT commands that are used by Ultimate +Automizer while verifying a program. In order to fulfill the restrictions of +the main track at SMT-COMP this script contains only the commands that are +sufficient to reproduce one single satisfiablity check. + +2015-04-30, Matthias Heizmann (heizmann@informatik.uni-freiburg.de) + + +[1] https://ultimate.informatik.uni-freiburg.de/automizer/ +[2] Matthias Heizmann, Daniel Dietsch, Jan Leike, Betim Musa, Andreas Podelski: +Ultimate Automizer with Array Interpolation - (Competition Contribution). +TACAS 2015: 455-457 +[3] Matthias Heizmann, Jochen Hoenicke, Andreas Podelski: Software Model +Checking for People Who Love Automata. CAV 2013:36-52 +[4] Dirk Beyer: Software Verification and Verifiable Witnesses - (Report on +SV-COMP 2015). TACAS 2015: 401-416 +[5] http://sv-comp.sosy-lab.org/2015/ +[6] https://svn.sosy-lab.org/software/sv-benchmarks/tags/svcomp15/ + + +Made compatible to SMT-COMP rules by SMTInterpol +|) +(set-info :category "industrial") +(set-info :status sat) +(define-sort ~__time_t () Int) +(define-sort ~time_t () ~__time_t) +(define-sort ~ASN1_BOOLEAN () Int) +(define-sort ~des_cblock () (Array Int Int)) +(declare-sort STRUCT~AUTHORITY_KEYID_st 0) +(declare-fun |#funAddr~ssl3_accept.base| () Int) +(declare-fun |#funAddr~ssl3_accept.offset| () Int) +(declare-fun |#funAddr~ssl3_get_server_method.base| () Int) +(declare-fun |#funAddr~ssl3_get_server_method.offset| () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~version| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~type| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~method| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~rbio| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~wbio| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~bbio| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~rwstate| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~in_handshake| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~handshake_func| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~server| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~new_session| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~quiet_shutdown| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~shutdown| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~rstate| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_buf| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_off| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~packet| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~packet_length| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s2| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~read_ahead| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~hit| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~purpose| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~trust| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~cipher_list| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~cipher_list_by_id| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~enc_read_ctx| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~read_hash| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~expand| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~enc_write_ctx| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~write_hash| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~compress| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~cert| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~sid_ctx_length| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~sid_ctx| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~session| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~verify_mode| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~verify_depth| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~verify_callback| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~info_callback| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~error| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~error_code| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~ctx| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~debug| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~verify_result| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~ex_data| + () Int) +(declare-fun |#offset~STRUCT#?sk~$Pointer$?dummy~INT#~sk| () Int) +(declare-fun |#offset~STRUCT#?sk~$Pointer$?dummy~INT#~dummy| () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~client_CA| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~references| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~options| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~mode| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~first_packet| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~client_version| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~flags| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~delay_buf_pop_ret| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~read_sequence| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~read_mac_secret| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~write_sequence| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~write_mac_secret| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~server_random| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~client_random| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~rbuf| + () Int) +(declare-fun |#offset~STRUCT#?buf~$Pointer$?offset~INT?left~INT#~buf| () Int) +(declare-fun |#offset~STRUCT#?buf~$Pointer$?offset~INT?left~INT#~offset| () + Int) +(declare-fun |#offset~STRUCT#?buf~$Pointer$?offset~INT?left~INT#~left| () + Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~wbuf| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~rrec| + () Int) +(declare-fun + |#offset~STRUCT#?type~INT?length~UINT?off~UINT?data~$Pointer$?input~$Pointer$?comp~$Pointer$#~type| + () Int) +(declare-fun + |#offset~STRUCT#?type~INT?length~UINT?off~UINT?data~$Pointer$?input~$Pointer$?comp~$Pointer$#~length| + () Int) +(declare-fun + |#offset~STRUCT#?type~INT?length~UINT?off~UINT?data~$Pointer$?input~$Pointer$?comp~$Pointer$#~off| + () Int) +(declare-fun + |#offset~STRUCT#?type~INT?length~UINT?off~UINT?data~$Pointer$?input~$Pointer$?comp~$Pointer$#~data| + () Int) +(declare-fun + |#offset~STRUCT#?type~INT?length~UINT?off~UINT?data~$Pointer$?input~$Pointer$?comp~$Pointer$#~input| + () Int) +(declare-fun + |#offset~STRUCT#?type~INT?length~UINT?off~UINT?data~$Pointer$?input~$Pointer$?comp~$Pointer$#~comp| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~wrec| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~alert_fragment| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~alert_fragment_len| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~handshake_fragment| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~handshake_fragment_len| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~wnum| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~wpend_tot| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~wpend_type| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~wpend_ret| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~wpend_buf| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~finish_dgst1| + () Int) +(declare-fun + |#offset~STRUCT#?digest~$Pointer$?md~STRUCT#?base~ARRAY#_4_~UCHAR#?md2~~MD2_CTX?md5~~MD5_CTX?md4~~MD4_CTX?ripemd160~~RIPEMD160_CTX?sha~~SHA_CTX?mdc2~~MDC2_CTX##~digest| + () Int) +(declare-fun + |#offset~STRUCT#?digest~$Pointer$?md~STRUCT#?base~ARRAY#_4_~UCHAR#?md2~~MD2_CTX?md5~~MD5_CTX?md4~~MD4_CTX?ripemd160~~RIPEMD160_CTX?sha~~SHA_CTX?mdc2~~MDC2_CTX##~md| + () Int) +(declare-fun + |#offset~STRUCT#?base~ARRAY#_4_~UCHAR#?md2~~MD2_CTX?md5~~MD5_CTX?md4~~MD4_CTX?ripemd160~~RIPEMD160_CTX?sha~~SHA_CTX?mdc2~~MDC2_CTX#~base| + () Int) +(declare-fun + |#offset~STRUCT#?base~ARRAY#_4_~UCHAR#?md2~~MD2_CTX?md5~~MD5_CTX?md4~~MD4_CTX?ripemd160~~RIPEMD160_CTX?sha~~SHA_CTX?mdc2~~MDC2_CTX#~md2| + () Int) +(declare-fun + |#offset~STRUCT#?num~INT?data~ARRAY#_16_~UCHAR#?cksm~ARRAY#_16_~UINT#?state~ARRAY#_16_~UINT##~num| + () Int) +(declare-fun + |#offset~STRUCT#?num~INT?data~ARRAY#_16_~UCHAR#?cksm~ARRAY#_16_~UINT#?state~ARRAY#_16_~UINT##~data| + () Int) +(declare-fun + |#offset~STRUCT#?num~INT?data~ARRAY#_16_~UCHAR#?cksm~ARRAY#_16_~UINT#?state~ARRAY#_16_~UINT##~cksm| + () Int) +(declare-fun + |#offset~STRUCT#?num~INT?data~ARRAY#_16_~UCHAR#?cksm~ARRAY#_16_~UINT#?state~ARRAY#_16_~UINT##~state| + () Int) +(declare-fun + |#offset~STRUCT#?base~ARRAY#_4_~UCHAR#?md2~~MD2_CTX?md5~~MD5_CTX?md4~~MD4_CTX?ripemd160~~RIPEMD160_CTX?sha~~SHA_CTX?mdc2~~MDC2_CTX#~md5| + () Int) +(declare-fun + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~A| + () Int) +(declare-fun + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~B| + () Int) +(declare-fun + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~C| + () Int) +(declare-fun + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~D| + () Int) +(declare-fun + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~Nl| + () Int) +(declare-fun + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~Nh| + () Int) +(declare-fun + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~data| + () Int) +(declare-fun + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~num| + () Int) +(declare-fun + |#offset~STRUCT#?base~ARRAY#_4_~UCHAR#?md2~~MD2_CTX?md5~~MD5_CTX?md4~~MD4_CTX?ripemd160~~RIPEMD160_CTX?sha~~SHA_CTX?mdc2~~MDC2_CTX#~md4| + () Int) +(declare-fun + |#offset~STRUCT#?base~ARRAY#_4_~UCHAR#?md2~~MD2_CTX?md5~~MD5_CTX?md4~~MD4_CTX?ripemd160~~RIPEMD160_CTX?sha~~SHA_CTX?mdc2~~MDC2_CTX#~ripemd160| + () Int) +(declare-fun + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?E~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~A| + () Int) +(declare-fun + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?E~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~B| + () Int) +(declare-fun + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?E~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~C| + () Int) +(declare-fun + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?E~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~D| + () Int) +(declare-fun + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?E~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~E| + () Int) +(declare-fun + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?E~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~Nl| + () Int) +(declare-fun + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?E~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~Nh| + () Int) +(declare-fun + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?E~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~data| + () Int) +(declare-fun + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?E~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~num| + () Int) +(declare-fun + |#offset~STRUCT#?base~ARRAY#_4_~UCHAR#?md2~~MD2_CTX?md5~~MD5_CTX?md4~~MD4_CTX?ripemd160~~RIPEMD160_CTX?sha~~SHA_CTX?mdc2~~MDC2_CTX#~sha| + () Int) +(declare-fun + |#offset~STRUCT#?h0~UINT?h1~UINT?h2~UINT?h3~UINT?h4~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~h0| + () Int) +(declare-fun + |#offset~STRUCT#?h0~UINT?h1~UINT?h2~UINT?h3~UINT?h4~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~h1| + () Int) +(declare-fun + |#offset~STRUCT#?h0~UINT?h1~UINT?h2~UINT?h3~UINT?h4~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~h2| + () Int) +(declare-fun + |#offset~STRUCT#?h0~UINT?h1~UINT?h2~UINT?h3~UINT?h4~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~h3| + () Int) +(declare-fun + |#offset~STRUCT#?h0~UINT?h1~UINT?h2~UINT?h3~UINT?h4~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~h4| + () Int) +(declare-fun + |#offset~STRUCT#?h0~UINT?h1~UINT?h2~UINT?h3~UINT?h4~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~Nl| + () Int) +(declare-fun + |#offset~STRUCT#?h0~UINT?h1~UINT?h2~UINT?h3~UINT?h4~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~Nh| + () Int) +(declare-fun + |#offset~STRUCT#?h0~UINT?h1~UINT?h2~UINT?h3~UINT?h4~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~data| + () Int) +(declare-fun + |#offset~STRUCT#?h0~UINT?h1~UINT?h2~UINT?h3~UINT?h4~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~num| + () Int) +(declare-fun + |#offset~STRUCT#?base~ARRAY#_4_~UCHAR#?md2~~MD2_CTX?md5~~MD5_CTX?md4~~MD4_CTX?ripemd160~~RIPEMD160_CTX?sha~~SHA_CTX?mdc2~~MDC2_CTX#~mdc2| + () Int) +(declare-fun + |#offset~STRUCT#?num~INT?data~ARRAY#_8_~UCHAR#?h~~des_cblock?hh~~des_cblock?pad_type~INT#~num| + () Int) +(declare-fun + |#offset~STRUCT#?num~INT?data~ARRAY#_8_~UCHAR#?h~~des_cblock?hh~~des_cblock?pad_type~INT#~data| + () Int) +(declare-fun + |#offset~STRUCT#?num~INT?data~ARRAY#_8_~UCHAR#?h~~des_cblock?hh~~des_cblock?pad_type~INT#~h| + () Int) +(declare-fun + |#offset~STRUCT#?num~INT?data~ARRAY#_8_~UCHAR#?h~~des_cblock?hh~~des_cblock?pad_type~INT#~hh| + () Int) +(declare-fun + |#offset~STRUCT#?num~INT?data~ARRAY#_8_~UCHAR#?h~~des_cblock?hh~~des_cblock?pad_type~INT#~pad_type| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~finish_dgst2| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~change_cipher_spec| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~warn_alert| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~fatal_alert| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~alert_dispatch| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~send_alert| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~renegotiate| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~total_renegotiations| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~num_renegotiations| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~in_read_app_data| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~tmp| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~cert_verify_md| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~finish_md| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~finish_md_len| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~peer_finish_md| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~peer_finish_md_len| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~message_size| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~message_type| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~new_cipher| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~dh| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~next_state| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~reuse_message| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~cert_req| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~ctype_num| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~ctype| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~ca_names| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~use_rsa_tmp| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~key_block_length| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~key_block| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~new_sym_enc| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~new_hash| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~new_compression| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~cert_request| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~method| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~options| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~mode| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~cipher_list| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~cipher_list_by_id| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~cert_store| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~sessions| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~session_cache_size| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~session_cache_head| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~session_cache_tail| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~session_cache_mode| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~session_timeout| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~new_session_cb| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~remove_session_cb| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~get_session_cb| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~stats| + () Int) +(declare-fun + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_connect| + () Int) +(declare-fun + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_connect_renegotiate| + () Int) +(declare-fun + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_connect_good| + () Int) +(declare-fun + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_accept| + () Int) +(declare-fun + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_accept_renegotiate| + () Int) +(declare-fun + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_accept_good| + () Int) +(declare-fun + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_miss| + () Int) +(declare-fun + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_timeout| + () Int) +(declare-fun + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_cache_full| + () Int) +(declare-fun + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_hit| + () Int) +(declare-fun + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_cb_hit| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~references| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~info_callback| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~app_verify_callback| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~app_verify_arg| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~cert| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~read_ahead| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~verify_mode| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~verify_depth| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~sid_ctx_length| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~sid_ctx| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~default_verify_callback| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~purpose| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~trust| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~default_passwd_callback| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~default_passwd_callback_userdata| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~client_cert_cb| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~client_CA| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~quiet_shutdown| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~ex_data| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~rsa_md5| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~md5| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~sha1| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~extra_certs| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~comp_methods| + () Int) +(declare-fun + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~valid| + () Int) +(declare-fun + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~name| + () Int) +(declare-fun + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~id| + () Int) +(declare-fun + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~algorithms| + () Int) +(declare-fun + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~algo_strength| + () Int) +(declare-fun + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~algorithm2| + () Int) +(declare-fun + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~strength_bits| + () Int) +(declare-fun + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~alg_bits| + () Int) +(declare-fun + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~mask| + () Int) +(declare-fun + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~mask_strength| + () Int) +(declare-fun + |#offset~STRUCT#?key~$Pointer$?valid~INT?mask~ULONG?export_mask~ULONG?rsa_tmp~$Pointer$?rsa_tmp_cb~$Pointer$?dh_tmp~$Pointer$?dh_tmp_cb~$Pointer$?pkeys~ARRAY#_5_~~CERT_PKEY#?references~INT#~key| + () Int) +(declare-fun + |#offset~STRUCT#?key~$Pointer$?valid~INT?mask~ULONG?export_mask~ULONG?rsa_tmp~$Pointer$?rsa_tmp_cb~$Pointer$?dh_tmp~$Pointer$?dh_tmp_cb~$Pointer$?pkeys~ARRAY#_5_~~CERT_PKEY#?references~INT#~valid| + () Int) +(declare-fun + |#offset~STRUCT#?key~$Pointer$?valid~INT?mask~ULONG?export_mask~ULONG?rsa_tmp~$Pointer$?rsa_tmp_cb~$Pointer$?dh_tmp~$Pointer$?dh_tmp_cb~$Pointer$?pkeys~ARRAY#_5_~~CERT_PKEY#?references~INT#~mask| + () Int) +(declare-fun + |#offset~STRUCT#?key~$Pointer$?valid~INT?mask~ULONG?export_mask~ULONG?rsa_tmp~$Pointer$?rsa_tmp_cb~$Pointer$?dh_tmp~$Pointer$?dh_tmp_cb~$Pointer$?pkeys~ARRAY#_5_~~CERT_PKEY#?references~INT#~export_mask| + () Int) +(declare-fun + |#offset~STRUCT#?key~$Pointer$?valid~INT?mask~ULONG?export_mask~ULONG?rsa_tmp~$Pointer$?rsa_tmp_cb~$Pointer$?dh_tmp~$Pointer$?dh_tmp_cb~$Pointer$?pkeys~ARRAY#_5_~~CERT_PKEY#?references~INT#~rsa_tmp| + () Int) +(declare-fun + |#offset~STRUCT#?key~$Pointer$?valid~INT?mask~ULONG?export_mask~ULONG?rsa_tmp~$Pointer$?rsa_tmp_cb~$Pointer$?dh_tmp~$Pointer$?dh_tmp_cb~$Pointer$?pkeys~ARRAY#_5_~~CERT_PKEY#?references~INT#~rsa_tmp_cb| + () Int) +(declare-fun + |#offset~STRUCT#?key~$Pointer$?valid~INT?mask~ULONG?export_mask~ULONG?rsa_tmp~$Pointer$?rsa_tmp_cb~$Pointer$?dh_tmp~$Pointer$?dh_tmp_cb~$Pointer$?pkeys~ARRAY#_5_~~CERT_PKEY#?references~INT#~dh_tmp| + () Int) +(declare-fun + |#offset~STRUCT#?key~$Pointer$?valid~INT?mask~ULONG?export_mask~ULONG?rsa_tmp~$Pointer$?rsa_tmp_cb~$Pointer$?dh_tmp~$Pointer$?dh_tmp_cb~$Pointer$?pkeys~ARRAY#_5_~~CERT_PKEY#?references~INT#~dh_tmp_cb| + () Int) +(declare-fun + |#offset~STRUCT#?key~$Pointer$?valid~INT?mask~ULONG?export_mask~ULONG?rsa_tmp~$Pointer$?rsa_tmp_cb~$Pointer$?dh_tmp~$Pointer$?dh_tmp_cb~$Pointer$?pkeys~ARRAY#_5_~~CERT_PKEY#?references~INT#~pkeys| + () Int) +(declare-fun |#offset~STRUCT#?x509~$Pointer$?privatekey~$Pointer$#~x509| () + Int) +(declare-fun + |#offset~STRUCT#?x509~$Pointer$?privatekey~$Pointer$#~privatekey| () Int) +(declare-fun + |#offset~STRUCT#?key~$Pointer$?valid~INT?mask~ULONG?export_mask~ULONG?rsa_tmp~$Pointer$?rsa_tmp_cb~$Pointer$?dh_tmp~$Pointer$?dh_tmp_cb~$Pointer$?pkeys~ARRAY#_5_~~CERT_PKEY#?references~INT#~references| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~ssl_version| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~key_arg_length| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~key_arg| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~master_key_length| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~master_key| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~session_id_length| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~session_id| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~sid_ctx_length| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~sid_ctx| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~not_resumable| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~sess_cert| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~peer| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~verify_result| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~references| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~timeout| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~time| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~compress_meth| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~cipher| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~cipher_id| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~ciphers| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~ex_data| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~prev| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~next| + () Int) +(declare-fun |#sizeof~INT| () Int) +(declare-fun |#sizeof~$Pointer$| () Int) +(declare-fun ~bitwiseAnd (Int Int) Int) +(assert + (and (= |#funAddr~ssl3_accept.base| (- 1)) + (= |#funAddr~ssl3_accept.offset| 0))) +(assert + (and (= |#funAddr~ssl3_get_server_method.base| (- 1)) + (= |#funAddr~ssl3_get_server_method.offset| 1))) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~version| + 0)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~type| + 4)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~method| + 8)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~rbio| + 12)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~wbio| + 16)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~bbio| + 20)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~rwstate| + 24)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~in_handshake| + 28)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~handshake_func| + 32)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~server| + 36)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~new_session| + 40)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~quiet_shutdown| + 44)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~shutdown| + 48)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state| + 52)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~rstate| + 56)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_buf| + 60)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num| + 64)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_off| + 68)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~packet| + 72)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~packet_length| + 76)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s2| + 80)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3| + 84)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~read_ahead| + 88)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~hit| + 92)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~purpose| + 96)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~trust| + 100)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~cipher_list| + 104)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~cipher_list_by_id| + 108)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~enc_read_ctx| + 112)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~read_hash| + 116)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~expand| + 120)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~enc_write_ctx| + 124)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~write_hash| + 128)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~compress| + 132)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~cert| + 136)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~sid_ctx_length| + 140)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~sid_ctx| + 144)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~session| + 176)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~verify_mode| + 180)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~verify_depth| + 184)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~verify_callback| + 188)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~info_callback| + 192)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~error| + 196)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~error_code| + 200)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~ctx| + 204)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~debug| + 208)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~verify_result| + 212)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~ex_data| + 216)) +(assert (= |#offset~STRUCT#?sk~$Pointer$?dummy~INT#~sk| 0)) +(assert (= |#offset~STRUCT#?sk~$Pointer$?dummy~INT#~dummy| 4)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~client_CA| + 224)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~references| + 228)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~options| + 232)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~mode| + 236)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~first_packet| + 240)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~client_version| + 244)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~flags| + 0)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~delay_buf_pop_ret| + 4)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~read_sequence| + 8)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~read_mac_secret| + 16)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~write_sequence| + 52)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~write_mac_secret| + 60)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~server_random| + 96)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~client_random| + 128)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~rbuf| + 160)) +(assert (= |#offset~STRUCT#?buf~$Pointer$?offset~INT?left~INT#~buf| 0)) +(assert (= |#offset~STRUCT#?buf~$Pointer$?offset~INT?left~INT#~offset| 4)) +(assert (= |#offset~STRUCT#?buf~$Pointer$?offset~INT?left~INT#~left| 8)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~wbuf| + 172)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~rrec| + 184)) +(assert + (= + |#offset~STRUCT#?type~INT?length~UINT?off~UINT?data~$Pointer$?input~$Pointer$?comp~$Pointer$#~type| + 0)) +(assert + (= + |#offset~STRUCT#?type~INT?length~UINT?off~UINT?data~$Pointer$?input~$Pointer$?comp~$Pointer$#~length| + 4)) +(assert + (= + |#offset~STRUCT#?type~INT?length~UINT?off~UINT?data~$Pointer$?input~$Pointer$?comp~$Pointer$#~off| + 8)) +(assert + (= + |#offset~STRUCT#?type~INT?length~UINT?off~UINT?data~$Pointer$?input~$Pointer$?comp~$Pointer$#~data| + 12)) +(assert + (= + |#offset~STRUCT#?type~INT?length~UINT?off~UINT?data~$Pointer$?input~$Pointer$?comp~$Pointer$#~input| + 16)) +(assert + (= + |#offset~STRUCT#?type~INT?length~UINT?off~UINT?data~$Pointer$?input~$Pointer$?comp~$Pointer$#~comp| + 20)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~wrec| + 208)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~alert_fragment| + 232)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~alert_fragment_len| + 234)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~handshake_fragment| + 238)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~handshake_fragment_len| + 242)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~wnum| + 246)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~wpend_tot| + 250)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~wpend_type| + 254)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~wpend_ret| + 258)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~wpend_buf| + 262)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~finish_dgst1| + 266)) +(assert + (= + |#offset~STRUCT#?digest~$Pointer$?md~STRUCT#?base~ARRAY#_4_~UCHAR#?md2~~MD2_CTX?md5~~MD5_CTX?md4~~MD4_CTX?ripemd160~~RIPEMD160_CTX?sha~~SHA_CTX?mdc2~~MDC2_CTX##~digest| + 0)) +(assert + (= + |#offset~STRUCT#?digest~$Pointer$?md~STRUCT#?base~ARRAY#_4_~UCHAR#?md2~~MD2_CTX?md5~~MD5_CTX?md4~~MD4_CTX?ripemd160~~RIPEMD160_CTX?sha~~SHA_CTX?mdc2~~MDC2_CTX##~md| + 4)) +(assert + (= + |#offset~STRUCT#?base~ARRAY#_4_~UCHAR#?md2~~MD2_CTX?md5~~MD5_CTX?md4~~MD4_CTX?ripemd160~~RIPEMD160_CTX?sha~~SHA_CTX?mdc2~~MDC2_CTX#~base| + 0)) +(assert + (= + |#offset~STRUCT#?base~ARRAY#_4_~UCHAR#?md2~~MD2_CTX?md5~~MD5_CTX?md4~~MD4_CTX?ripemd160~~RIPEMD160_CTX?sha~~SHA_CTX?mdc2~~MDC2_CTX#~md2| + 0)) +(assert + (= + |#offset~STRUCT#?num~INT?data~ARRAY#_16_~UCHAR#?cksm~ARRAY#_16_~UINT#?state~ARRAY#_16_~UINT##~num| + 0)) +(assert + (= + |#offset~STRUCT#?num~INT?data~ARRAY#_16_~UCHAR#?cksm~ARRAY#_16_~UINT#?state~ARRAY#_16_~UINT##~data| + 4)) +(assert + (= + |#offset~STRUCT#?num~INT?data~ARRAY#_16_~UCHAR#?cksm~ARRAY#_16_~UINT#?state~ARRAY#_16_~UINT##~cksm| + 20)) +(assert + (= + |#offset~STRUCT#?num~INT?data~ARRAY#_16_~UCHAR#?cksm~ARRAY#_16_~UINT#?state~ARRAY#_16_~UINT##~state| + 84)) +(assert + (= + |#offset~STRUCT#?base~ARRAY#_4_~UCHAR#?md2~~MD2_CTX?md5~~MD5_CTX?md4~~MD4_CTX?ripemd160~~RIPEMD160_CTX?sha~~SHA_CTX?mdc2~~MDC2_CTX#~md5| + 0)) +(assert + (= + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~A| + 0)) +(assert + (= + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~B| + 4)) +(assert + (= + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~C| + 8)) +(assert + (= + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~D| + 12)) +(assert + (= + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~Nl| + 16)) +(assert + (= + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~Nh| + 20)) +(assert + (= + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~data| + 24)) +(assert + (= + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~num| + 88)) +(assert + (= + |#offset~STRUCT#?base~ARRAY#_4_~UCHAR#?md2~~MD2_CTX?md5~~MD5_CTX?md4~~MD4_CTX?ripemd160~~RIPEMD160_CTX?sha~~SHA_CTX?mdc2~~MDC2_CTX#~md4| + 0)) +(assert + (= + |#offset~STRUCT#?base~ARRAY#_4_~UCHAR#?md2~~MD2_CTX?md5~~MD5_CTX?md4~~MD4_CTX?ripemd160~~RIPEMD160_CTX?sha~~SHA_CTX?mdc2~~MDC2_CTX#~ripemd160| + 0)) +(assert + (= + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?E~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~A| + 0)) +(assert + (= + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?E~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~B| + 4)) +(assert + (= + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?E~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~C| + 8)) +(assert + (= + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?E~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~D| + 12)) +(assert + (= + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?E~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~E| + 16)) +(assert + (= + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?E~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~Nl| + 20)) +(assert + (= + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?E~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~Nh| + 24)) +(assert + (= + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?E~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~data| + 28)) +(assert + (= + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?E~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~num| + 92)) +(assert + (= + |#offset~STRUCT#?base~ARRAY#_4_~UCHAR#?md2~~MD2_CTX?md5~~MD5_CTX?md4~~MD4_CTX?ripemd160~~RIPEMD160_CTX?sha~~SHA_CTX?mdc2~~MDC2_CTX#~sha| + 0)) +(assert + (= + |#offset~STRUCT#?h0~UINT?h1~UINT?h2~UINT?h3~UINT?h4~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~h0| + 0)) +(assert + (= + |#offset~STRUCT#?h0~UINT?h1~UINT?h2~UINT?h3~UINT?h4~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~h1| + 4)) +(assert + (= + |#offset~STRUCT#?h0~UINT?h1~UINT?h2~UINT?h3~UINT?h4~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~h2| + 8)) +(assert + (= + |#offset~STRUCT#?h0~UINT?h1~UINT?h2~UINT?h3~UINT?h4~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~h3| + 12)) +(assert + (= + |#offset~STRUCT#?h0~UINT?h1~UINT?h2~UINT?h3~UINT?h4~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~h4| + 16)) +(assert + (= + |#offset~STRUCT#?h0~UINT?h1~UINT?h2~UINT?h3~UINT?h4~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~Nl| + 20)) +(assert + (= + |#offset~STRUCT#?h0~UINT?h1~UINT?h2~UINT?h3~UINT?h4~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~Nh| + 24)) +(assert + (= + |#offset~STRUCT#?h0~UINT?h1~UINT?h2~UINT?h3~UINT?h4~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~data| + 28)) +(assert + (= + |#offset~STRUCT#?h0~UINT?h1~UINT?h2~UINT?h3~UINT?h4~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~num| + 92)) +(assert + (= + |#offset~STRUCT#?base~ARRAY#_4_~UCHAR#?md2~~MD2_CTX?md5~~MD5_CTX?md4~~MD4_CTX?ripemd160~~RIPEMD160_CTX?sha~~SHA_CTX?mdc2~~MDC2_CTX#~mdc2| + 0)) +(assert + (= + |#offset~STRUCT#?num~INT?data~ARRAY#_8_~UCHAR#?h~~des_cblock?hh~~des_cblock?pad_type~INT#~num| + 0)) +(assert + (= + |#offset~STRUCT#?num~INT?data~ARRAY#_8_~UCHAR#?h~~des_cblock?hh~~des_cblock?pad_type~INT#~data| + 4)) +(assert + (= + |#offset~STRUCT#?num~INT?data~ARRAY#_8_~UCHAR#?h~~des_cblock?hh~~des_cblock?pad_type~INT#~h| + 12)) +(assert + (= + |#offset~STRUCT#?num~INT?data~ARRAY#_8_~UCHAR#?h~~des_cblock?hh~~des_cblock?pad_type~INT#~hh| + 20)) +(assert + (= + |#offset~STRUCT#?num~INT?data~ARRAY#_8_~UCHAR#?h~~des_cblock?hh~~des_cblock?pad_type~INT#~pad_type| + 28)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~finish_dgst2| + 418)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~change_cipher_spec| + 570)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~warn_alert| + 574)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~fatal_alert| + 578)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~alert_dispatch| + 582)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~send_alert| + 586)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~renegotiate| + 588)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~total_renegotiations| + 592)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~num_renegotiations| + 596)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~in_read_app_data| + 600)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~tmp| + 604)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~cert_verify_md| + 0)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~finish_md| + 72)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~finish_md_len| + 144)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~peer_finish_md| + 148)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~peer_finish_md_len| + 220)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~message_size| + 224)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~message_type| + 228)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~new_cipher| + 232)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~dh| + 236)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~next_state| + 240)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~reuse_message| + 244)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~cert_req| + 248)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~ctype_num| + 252)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~ctype| + 256)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~ca_names| + 263)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~use_rsa_tmp| + 267)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~key_block_length| + 271)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~key_block| + 275)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~new_sym_enc| + 279)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~new_hash| + 283)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~new_compression| + 287)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~cert_request| + 291)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~method| + 0)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~options| + 4)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~mode| + 8)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~cipher_list| + 12)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~cipher_list_by_id| + 16)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~cert_store| + 20)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~sessions| + 24)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~session_cache_size| + 28)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~session_cache_head| + 32)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~session_cache_tail| + 36)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~session_cache_mode| + 40)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~session_timeout| + 44)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~new_session_cb| + 48)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~remove_session_cb| + 52)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~get_session_cb| + 56)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~stats| + 60)) +(assert + (= + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_connect| + 0)) +(assert + (= + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_connect_renegotiate| + 4)) +(assert + (= + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_connect_good| + 8)) +(assert + (= + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_accept| + 12)) +(assert + (= + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_accept_renegotiate| + 16)) +(assert + (= + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_accept_good| + 20)) +(assert + (= + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_miss| + 24)) +(assert + (= + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_timeout| + 28)) +(assert + (= + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_cache_full| + 32)) +(assert + (= + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_hit| + 36)) +(assert + (= + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_cb_hit| + 40)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~references| + 104)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~info_callback| + 108)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~app_verify_callback| + 112)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~app_verify_arg| + 116)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~cert| + 120)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~read_ahead| + 124)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~verify_mode| + 128)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~verify_depth| + 132)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~sid_ctx_length| + 136)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~sid_ctx| + 140)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~default_verify_callback| + 172)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~purpose| + 176)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~trust| + 180)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~default_passwd_callback| + 184)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~default_passwd_callback_userdata| + 188)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~client_cert_cb| + 192)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~client_CA| + 196)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~quiet_shutdown| + 200)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~ex_data| + 204)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~rsa_md5| + 212)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~md5| + 216)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~sha1| + 220)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~extra_certs| + 224)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~comp_methods| + 228)) +(assert + (= + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~valid| + 0)) +(assert + (= + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~name| + 4)) +(assert + (= + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~id| + 8)) +(assert + (= + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~algorithms| + 12)) +(assert + (= + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~algo_strength| + 16)) +(assert + (= + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~algorithm2| + 20)) +(assert + (= + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~strength_bits| + 24)) +(assert + (= + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~alg_bits| + 28)) +(assert + (= + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~mask| + 32)) +(assert + (= + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~mask_strength| + 36)) +(assert + (= + |#offset~STRUCT#?key~$Pointer$?valid~INT?mask~ULONG?export_mask~ULONG?rsa_tmp~$Pointer$?rsa_tmp_cb~$Pointer$?dh_tmp~$Pointer$?dh_tmp_cb~$Pointer$?pkeys~ARRAY#_5_~~CERT_PKEY#?references~INT#~key| + 0)) +(assert + (= + |#offset~STRUCT#?key~$Pointer$?valid~INT?mask~ULONG?export_mask~ULONG?rsa_tmp~$Pointer$?rsa_tmp_cb~$Pointer$?dh_tmp~$Pointer$?dh_tmp_cb~$Pointer$?pkeys~ARRAY#_5_~~CERT_PKEY#?references~INT#~valid| + 4)) +(assert + (= + |#offset~STRUCT#?key~$Pointer$?valid~INT?mask~ULONG?export_mask~ULONG?rsa_tmp~$Pointer$?rsa_tmp_cb~$Pointer$?dh_tmp~$Pointer$?dh_tmp_cb~$Pointer$?pkeys~ARRAY#_5_~~CERT_PKEY#?references~INT#~mask| + 8)) +(assert + (= + |#offset~STRUCT#?key~$Pointer$?valid~INT?mask~ULONG?export_mask~ULONG?rsa_tmp~$Pointer$?rsa_tmp_cb~$Pointer$?dh_tmp~$Pointer$?dh_tmp_cb~$Pointer$?pkeys~ARRAY#_5_~~CERT_PKEY#?references~INT#~export_mask| + 12)) +(assert + (= + |#offset~STRUCT#?key~$Pointer$?valid~INT?mask~ULONG?export_mask~ULONG?rsa_tmp~$Pointer$?rsa_tmp_cb~$Pointer$?dh_tmp~$Pointer$?dh_tmp_cb~$Pointer$?pkeys~ARRAY#_5_~~CERT_PKEY#?references~INT#~rsa_tmp| + 16)) +(assert + (= + |#offset~STRUCT#?key~$Pointer$?valid~INT?mask~ULONG?export_mask~ULONG?rsa_tmp~$Pointer$?rsa_tmp_cb~$Pointer$?dh_tmp~$Pointer$?dh_tmp_cb~$Pointer$?pkeys~ARRAY#_5_~~CERT_PKEY#?references~INT#~rsa_tmp_cb| + 20)) +(assert + (= + |#offset~STRUCT#?key~$Pointer$?valid~INT?mask~ULONG?export_mask~ULONG?rsa_tmp~$Pointer$?rsa_tmp_cb~$Pointer$?dh_tmp~$Pointer$?dh_tmp_cb~$Pointer$?pkeys~ARRAY#_5_~~CERT_PKEY#?references~INT#~dh_tmp| + 24)) +(assert + (= + |#offset~STRUCT#?key~$Pointer$?valid~INT?mask~ULONG?export_mask~ULONG?rsa_tmp~$Pointer$?rsa_tmp_cb~$Pointer$?dh_tmp~$Pointer$?dh_tmp_cb~$Pointer$?pkeys~ARRAY#_5_~~CERT_PKEY#?references~INT#~dh_tmp_cb| + 28)) +(assert + (= + |#offset~STRUCT#?key~$Pointer$?valid~INT?mask~ULONG?export_mask~ULONG?rsa_tmp~$Pointer$?rsa_tmp_cb~$Pointer$?dh_tmp~$Pointer$?dh_tmp_cb~$Pointer$?pkeys~ARRAY#_5_~~CERT_PKEY#?references~INT#~pkeys| + 32)) +(assert (= |#offset~STRUCT#?x509~$Pointer$?privatekey~$Pointer$#~x509| 0)) +(assert + (= |#offset~STRUCT#?x509~$Pointer$?privatekey~$Pointer$#~privatekey| 4)) +(assert + (= + |#offset~STRUCT#?key~$Pointer$?valid~INT?mask~ULONG?export_mask~ULONG?rsa_tmp~$Pointer$?rsa_tmp_cb~$Pointer$?dh_tmp~$Pointer$?dh_tmp_cb~$Pointer$?pkeys~ARRAY#_5_~~CERT_PKEY#?references~INT#~references| + 72)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~ssl_version| + 0)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~key_arg_length| + 4)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~key_arg| + 8)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~master_key_length| + 16)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~master_key| + 20)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~session_id_length| + 68)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~session_id| + 72)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~sid_ctx_length| + 104)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~sid_ctx| + 108)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~not_resumable| + 140)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~sess_cert| + 144)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~peer| + 148)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~verify_result| + 152)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~references| + 156)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~timeout| + 160)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~time| + 164)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~compress_meth| + 168)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~cipher| + 172)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~cipher_id| + 176)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~ciphers| + 180)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~ex_data| + 184)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~prev| + 192)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~next| + 196)) +(assert (= |#sizeof~INT| 4)) +(assert (= |#sizeof~$Pointer$| 4)) +(declare-fun |#length_-1| () (Array Int Int)) +(declare-fun |#NULL.offset_-1| () Int) +(declare-fun |#valid_-1| () (Array Int Int)) +(declare-fun |#memory_$Pointer$.offset_-1| () (Array Int (Array Int Int))) +(declare-fun |#memory_int_-1| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_-1| () (Array Int (Array Int Int))) +(declare-fun |#NULL.base_-1| () Int) +(declare-fun |old(#valid)_0| () (Array Int Int)) +(declare-fun |old(#NULL.offset)_0| () Int) +(declare-fun |old(#NULL.base)_0| () Int) +(declare-fun |#NULL.offset_0| () Int) +(declare-fun |#valid_0| () (Array Int Int)) +(declare-fun |#NULL.base_0| () Int) +(declare-fun |#NULL.offset_1| () Int) +(declare-fun |#valid_1| () (Array Int Int)) +(declare-fun |#NULL.base_1| () Int) +(declare-fun |old(#length)_4| () (Array Int Int)) +(declare-fun |old(#valid)_4| () (Array Int Int)) +(declare-fun |old(#memory_$Pointer$.offset)_4| () + (Array Int (Array Int Int))) +(declare-fun |old(#memory_int)_4| () (Array Int (Array Int Int))) +(declare-fun |old(#memory_$Pointer$.base)_4| () (Array Int (Array Int Int))) +(declare-fun |#length_4| () (Array Int Int)) +(declare-fun |#memory_$Pointer$.offset_4| () (Array Int (Array Int Int))) +(declare-fun |#valid_4| () (Array Int Int)) +(declare-fun |#memory_int_4| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_4| () (Array Int (Array Int Int))) +(declare-fun |#length_6| () (Array Int Int)) +(declare-fun |main_#t~malloc0.offset_6| () Int) +(declare-fun |main_#t~malloc0.base_6| () Int) +(declare-fun |#valid_6| () (Array Int Int)) +(declare-fun main_~s~7.offset_7 () Int) +(declare-fun main_~s~7.base_7 () Int) +(declare-fun |#length_8| () (Array Int Int)) +(declare-fun |main_#t~malloc1.base_8| () Int) +(declare-fun |#valid_8| () (Array Int Int)) +(declare-fun |main_#t~malloc1.offset_8| () Int) +(declare-fun |#memory_int_9| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_9| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_9| () (Array Int (Array Int Int))) +(declare-fun |#memory_int_11| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_11| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_11| () (Array Int (Array Int Int))) +(declare-fun |old(#memory_$Pointer$.offset)_12| () + (Array Int (Array Int Int))) +(declare-fun |old(#memory_int)_12| () (Array Int (Array Int Int))) +(declare-fun |old(#memory_$Pointer$.base)_12| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_12| () (Array Int (Array Int Int))) +(declare-fun |#memory_int_12| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_12| () (Array Int (Array Int Int))) +(declare-fun |ssl3_accept_#in~s.base_12| () Int) +(declare-fun |ssl3_accept_#in~s.offset_12| () Int) +(declare-fun |ssl3_accept_#t~nondet8_12| () Int) +(declare-fun |ssl3_accept_#t~nondet7_12| () Int) +(declare-fun |ssl3_accept_#t~nondet9_12| () Int) +(declare-fun |ssl3_accept_#t~nondet6_12| () Int) +(declare-fun |ssl3_accept_#t~nondet5.base_12| () Int) +(declare-fun |ssl3_accept_#t~nondet5.offset_12| () Int) +(declare-fun ssl3_accept_~tmp___2~10_13 () Int) +(declare-fun ssl3_accept_~tmp___1~10_13 () Int) +(declare-fun ssl3_accept_~tmp~10_13 () Int) +(declare-fun ssl3_accept_~blastFlag~10_13 () Int) +(declare-fun ssl3_accept_~buf~10.base_13 () Int) +(declare-fun ssl3_accept_~buf~10.offset_13 () Int) +(declare-fun ssl3_accept_~s.base_13 () Int) +(declare-fun ssl3_accept_~s.offset_13 () Int) +(declare-fun ssl3_accept_~tmp___8~10_13 () Int) +(declare-fun |ssl3_accept_#t~nondet10_12| () Int) +(declare-fun |#memory_int_14| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_14| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_14| () (Array Int (Array Int Int))) +(declare-fun |#memory_int_16| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_16| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_16| () (Array Int (Array Int Int))) +(declare-fun ssl3_accept_~cb~10.base_17 () Int) +(declare-fun ssl3_accept_~ret~10_17 () Int) +(declare-fun ssl3_accept_~skip~10_17 () Int) +(declare-fun ssl3_accept_~got_new_session~10_17 () Int) +(declare-fun ssl3_accept_~Time~10_17 () Int) +(declare-fun ssl3_accept_~cb~10.offset_17 () Int) +(declare-fun ssl3_accept_~cb~10.base_18 () Int) +(declare-fun ssl3_accept_~cb~10.offset_18 () Int) +(declare-fun |ssl3_accept_#t~mem13_19| () Int) +(declare-fun |#memory_int_20| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_20| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_20| () (Array Int (Array Int Int))) +(declare-fun |ssl3_accept_#t~mem14.offset_23| () Int) +(declare-fun |ssl3_accept_#t~mem14.base_23| () Int) +(declare-fun |ssl3_accept_#t~mem15_27| () Int) +(declare-fun ssl3_accept_~state~10_28 () Int) +(declare-fun |ssl3_accept_#t~mem16_29| () Int) +(declare-fun |ssl3_accept_#t~mem17_31| () Int) +(declare-fun |ssl3_accept_#t~mem18_33| () Int) +(declare-fun |ssl3_accept_#t~mem19_35| () Int) +(declare-fun |ssl3_accept_#t~mem20_37| () Int) +(declare-fun |ssl3_accept_#t~mem21_39| () Int) +(declare-fun |ssl3_accept_#t~mem22_41| () Int) +(declare-fun |ssl3_accept_#t~mem23_43| () Int) +(declare-fun |ssl3_accept_#t~mem24_45| () Int) +(declare-fun |#memory_int_47| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_47| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_47| () (Array Int (Array Int Int))) +(declare-fun |ssl3_accept_#t~nondet76_12| () Int) +(declare-fun ssl3_accept_~ret~10_48 () Int) +(declare-fun ssl3_accept_~blastFlag~10_49 () Int) +(declare-fun ssl3_accept_~got_new_session~10_50 () Int) +(declare-fun |#memory_int_51| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_51| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_51| () (Array Int (Array Int Int))) +(declare-fun |#memory_int_52| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_52| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_52| () (Array Int (Array Int Int))) +(declare-fun |ssl3_accept_#t~mem185.base_53| () Int) +(declare-fun |ssl3_accept_#t~mem185.offset_53| () Int) +(declare-fun |ssl3_accept_#t~mem186_54| () Int) +(declare-fun ssl3_accept_~skip~10_56 () Int) +(declare-fun |ssl3_accept_#t~mem15_59| () Int) +(declare-fun ssl3_accept_~state~10_60 () Int) +(declare-fun |ssl3_accept_#t~mem16_61| () Int) +(declare-fun |ssl3_accept_#t~mem17_63| () Int) +(declare-fun |ssl3_accept_#t~mem18_65| () Int) +(declare-fun |ssl3_accept_#t~mem19_67| () Int) +(declare-fun |ssl3_accept_#t~mem20_69| () Int) +(declare-fun |ssl3_accept_#t~mem21_71| () Int) +(declare-fun |ssl3_accept_#t~mem22_73| () Int) +(declare-fun |ssl3_accept_#t~mem23_75| () Int) +(declare-fun |ssl3_accept_#t~mem24_77| () Int) +(declare-fun |ssl3_accept_#t~mem25_79| () Int) +(declare-fun |ssl3_accept_#t~mem26_81| () Int) +(declare-fun |ssl3_accept_#t~mem27_83| () Int) +(declare-fun |ssl3_accept_#t~nondet79_12| () Int) +(declare-fun ssl3_accept_~ret~10_85 () Int) +(declare-fun ssl3_accept_~blastFlag~10_86 () Int) +(declare-fun |ssl3_accept_#t~mem80_88| () Int) +(declare-fun |#memory_int_90| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_90| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_90| () (Array Int (Array Int Int))) +(declare-fun |#memory_int_91| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_91| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_91| () (Array Int (Array Int Int))) +(declare-fun |ssl3_accept_#t~mem185.base_92| () Int) +(declare-fun |ssl3_accept_#t~mem185.offset_92| () Int) +(declare-fun |ssl3_accept_#t~mem186_93| () Int) +(declare-fun ssl3_accept_~skip~10_95 () Int) +(declare-fun |ssl3_accept_#t~mem15_98| () Int) +(declare-fun ssl3_accept_~state~10_99 () Int) +(declare-fun |ssl3_accept_#t~mem16_100| () Int) +(declare-fun |ssl3_accept_#t~mem17_102| () Int) +(declare-fun |ssl3_accept_#t~mem18_104| () Int) +(declare-fun |ssl3_accept_#t~mem19_106| () Int) +(declare-fun |ssl3_accept_#t~mem20_108| () Int) +(declare-fun |ssl3_accept_#t~mem21_110| () Int) +(declare-fun |ssl3_accept_#t~mem22_112| () Int) +(declare-fun |ssl3_accept_#t~mem23_114| () Int) +(declare-fun |ssl3_accept_#t~mem24_116| () Int) +(declare-fun |ssl3_accept_#t~mem25_118| () Int) +(declare-fun |ssl3_accept_#t~mem26_120| () Int) +(declare-fun |ssl3_accept_#t~mem27_122| () Int) +(declare-fun |ssl3_accept_#t~mem28_124| () Int) +(declare-fun |ssl3_accept_#t~mem29_126| () Int) +(declare-fun |ssl3_accept_#t~mem30_128| () Int) +(declare-fun |ssl3_accept_#t~mem31_130| () Int) +(declare-fun |ssl3_accept_#t~mem32_132| () Int) +(declare-fun |ssl3_accept_#t~mem33_134| () Int) +(declare-fun |ssl3_accept_#t~mem34_136| () Int) +(declare-fun |ssl3_accept_#t~mem35_138| () Int) +(declare-fun |ssl3_accept_#t~mem36_140| () Int) +(declare-fun |ssl3_accept_#t~mem37_142| () Int) +(declare-fun |ssl3_accept_#t~mem38_144| () Int) +(declare-fun |ssl3_accept_#t~mem39_146| () Int) +(declare-fun |ssl3_accept_#t~mem40_148| () Int) +(declare-fun |ssl3_accept_#t~mem41_150| () Int) +(declare-fun |ssl3_accept_#t~mem42_152| () Int) +(declare-fun |ssl3_accept_#t~mem43_154| () Int) +(declare-fun |ssl3_accept_#t~mem44_156| () Int) +(declare-fun |ssl3_accept_#t~mem45_158| () Int) +(declare-fun |ssl3_accept_#t~mem46_160| () Int) +(declare-fun |ssl3_accept_#t~mem163.base_162| () Int) +(declare-fun |ssl3_accept_#t~mem163.offset_162| () Int) +(declare-fun |ssl3_accept_#t~mem164.offset_163| () Int) +(declare-fun |ssl3_accept_#t~mem164.base_163| () Int) +(declare-fun |ssl3_accept_#t~mem166.offset_164| () Int) +(declare-fun |ssl3_accept_#t~mem166.base_164| () Int) +(declare-fun |#memory_int_165| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_165| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_165| () (Array Int (Array Int Int))) +(declare-fun |ssl3_accept_#t~nondet167_12| () Int) +(declare-fun ssl3_accept_~tmp___9~10_166 () Int) +(declare-fun |ssl3_accept_#t~nondet168_12| () Int) +(declare-fun ssl3_accept_~ret~10_167 () Int) +(declare-fun ssl3_accept_~blastFlag~10_168 () Int) +(declare-fun |#memory_int_170| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_170| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_170| () (Array Int (Array Int Int))) +(declare-fun |#memory_int_171| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_171| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_171| () (Array Int (Array Int Int))) +(declare-fun |ssl3_accept_#t~nondet171_12| () Int) +(declare-fun ssl3_accept_~tmp___10~10_172 () Int) +(declare-fun |ssl3_accept_#t~mem185.base_174| () Int) +(declare-fun |ssl3_accept_#t~mem185.offset_174| () Int) +(declare-fun |ssl3_accept_#t~mem186_175| () Int) +(declare-fun ssl3_accept_~skip~10_177 () Int) +(declare-fun |ssl3_accept_#t~mem15_180| () Int) +(declare-fun ssl3_accept_~state~10_181 () Int) +(declare-fun |ssl3_accept_#t~mem16_182| () Int) +(declare-fun |ssl3_accept_#t~mem17_184| () Int) +(declare-fun |ssl3_accept_#t~mem18_186| () Int) +(declare-fun |ssl3_accept_#t~mem19_188| () Int) +(declare-fun |ssl3_accept_#t~mem20_190| () Int) +(declare-fun |ssl3_accept_#t~mem21_192| () Int) +(declare-fun |ssl3_accept_#t~mem22_194| () Int) +(declare-fun |ssl3_accept_#t~mem23_196| () Int) +(declare-fun |ssl3_accept_#t~mem24_198| () Int) +(declare-fun |ssl3_accept_#t~mem25_200| () Int) +(declare-fun |ssl3_accept_#t~mem26_202| () Int) +(declare-fun |ssl3_accept_#t~mem27_204| () Int) +(declare-fun |ssl3_accept_#t~mem28_206| () Int) +(declare-fun |ssl3_accept_#t~mem29_208| () Int) +(declare-fun |ssl3_accept_#t~mem30_210| () Int) +(declare-fun |ssl3_accept_#t~mem31_212| () Int) +(declare-fun |ssl3_accept_#t~mem32_214| () Int) +(declare-fun |ssl3_accept_#t~mem33_216| () Int) +(declare-fun |ssl3_accept_#t~mem34_218| () Int) +(declare-fun |ssl3_accept_#t~mem35_220| () Int) +(declare-fun |ssl3_accept_#t~mem36_222| () Int) +(declare-fun |ssl3_accept_#t~mem37_224| () Int) +(declare-fun |ssl3_accept_#t~mem38_226| () Int) +(declare-fun |ssl3_accept_#t~mem39_228| () Int) +(declare-fun |ssl3_accept_#t~mem40_230| () Int) +(declare-fun |ssl3_accept_#t~mem41_232| () Int) +(declare-fun |ssl3_accept_#t~mem42_234| () Int) +(declare-fun |ssl3_accept_#t~mem43_236| () Int) +(declare-fun |ssl3_accept_#t~mem44_238| () Int) +(declare-fun |ssl3_accept_#t~mem45_240| () Int) +(declare-fun |ssl3_accept_#t~mem46_242| () Int) +(declare-fun |ssl3_accept_#t~mem47_244| () Int) +(declare-fun |ssl3_accept_#t~mem48_246| () Int) +(declare-fun |ssl3_accept_#t~nondet172_12| () Int) +(declare-fun ssl3_accept_~ret~10_248 () Int) +(assert true) +(assert (not false)) +(assert (<= |#NULL.offset_0| |old(#NULL.offset)_0|)) +(assert (>= |#NULL.offset_0| |old(#NULL.offset)_0|)) +(assert (= |#valid_0| |old(#valid)_0|)) +(assert (<= |#NULL.base_0| |old(#NULL.base)_0|)) +(assert (>= |#NULL.base_0| |old(#NULL.base)_0|)) +(assert true) +(assert (<= |old(#NULL.offset)_0| |#NULL.offset_-1|)) +(assert (>= |old(#NULL.offset)_0| |#NULL.offset_-1|)) +(assert (= |old(#valid)_0| |#valid_-1|)) +(assert (<= |old(#NULL.base)_0| |#NULL.base_-1|)) +(assert (>= |old(#NULL.base)_0| |#NULL.base_-1|)) +(assert (<= |#NULL.base_1| 0)) +(assert (>= |#NULL.base_1| 0)) +(assert (<= |#NULL.offset_1| 0)) +(assert (>= |#NULL.offset_1| 0)) +(assert (= |#valid_1| (store |#valid_0| 0 0))) +(assert true) +(assert true) +(assert (= |#memory_$Pointer$.offset_4| |old(#memory_$Pointer$.offset)_4|)) +(assert (= |#memory_$Pointer$.base_4| |old(#memory_$Pointer$.base)_4|)) +(assert (= |#valid_4| |old(#valid)_4|)) +(assert (= |#length_4| |old(#length)_4|)) +(assert (= |#memory_int_4| |old(#memory_int)_4|)) +(assert true) +(assert (= |old(#memory_$Pointer$.offset)_4| |#memory_$Pointer$.offset_-1|)) +(assert (= |old(#memory_$Pointer$.base)_4| |#memory_$Pointer$.base_-1|)) +(assert (= |old(#valid)_4| |#valid_1|)) +(assert (= |old(#length)_4| |#length_-1|)) +(assert (= |old(#memory_int)_4| |#memory_int_-1|)) +(assert true) +(assert (= |#length_6| (store |#length_4| |main_#t~malloc0.base_6| 248))) +(assert (not (= |main_#t~malloc0.base_6| 0))) +(assert (<= |main_#t~malloc0.offset_6| 0)) +(assert (>= |main_#t~malloc0.offset_6| 0)) +(assert (= |#valid_6| (store |#valid_4| |main_#t~malloc0.base_6| 1))) +(assert (= (not (= (select |#valid_4| |main_#t~malloc0.base_6|) 0)) false)) +(assert (<= main_~s~7.offset_7 |main_#t~malloc0.offset_6|)) +(assert (>= main_~s~7.offset_7 |main_#t~malloc0.offset_6|)) +(assert (<= main_~s~7.base_7 |main_#t~malloc0.base_6|)) +(assert (>= main_~s~7.base_7 |main_#t~malloc0.base_6|)) +(assert (= |#length_8| (store |#length_6| |main_#t~malloc1.base_8| 899))) +(assert (not (= |main_#t~malloc1.base_8| 0))) +(assert (<= |main_#t~malloc1.offset_8| 0)) +(assert (>= |main_#t~malloc1.offset_8| 0)) +(assert (= |#valid_8| (store |#valid_6| |main_#t~malloc1.base_8| 1))) +(assert (= (not (= (select |#valid_6| |main_#t~malloc1.base_8|) 0)) false)) +(assert + (= |#memory_$Pointer$.base_9| + (store |#memory_$Pointer$.base_4| main_~s~7.base_7 + (store (select |#memory_$Pointer$.base_4| main_~s~7.base_7) + (+ main_~s~7.offset_7 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|) + |main_#t~malloc1.base_8|)))) +(assert + (= |#memory_$Pointer$.offset_9| + (store |#memory_$Pointer$.offset_4| main_~s~7.base_7 + (store (select |#memory_$Pointer$.offset_4| main_~s~7.base_7) + (+ main_~s~7.offset_7 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|) + |main_#t~malloc1.offset_8|)))) +(assert + (= |#memory_int_9| + (store |#memory_int_4| main_~s~7.base_7 + (store (select |#memory_int_4| main_~s~7.base_7) + (+ main_~s~7.offset_7 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|) + (select (select |#memory_int_9| main_~s~7.base_7) + (+ main_~s~7.offset_7 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))))) +(assert true) +(assert + (= |#memory_$Pointer$.base_11| + (store |#memory_$Pointer$.base_9| main_~s~7.base_7 + (store (select |#memory_$Pointer$.base_9| main_~s~7.base_7) + (+ main_~s~7.offset_7 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + (select (select |#memory_$Pointer$.base_11| main_~s~7.base_7) + (+ main_~s~7.offset_7 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))))) +(assert + (= |#memory_$Pointer$.offset_11| + (store |#memory_$Pointer$.offset_9| main_~s~7.base_7 + (store (select |#memory_$Pointer$.offset_9| main_~s~7.base_7) + (+ main_~s~7.offset_7 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + (select (select |#memory_$Pointer$.offset_11| main_~s~7.base_7) + (+ main_~s~7.offset_7 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))))) +(assert + (= |#memory_int_11| + (store |#memory_int_9| main_~s~7.base_7 + (store (select |#memory_int_9| main_~s~7.base_7) + (+ main_~s~7.offset_7 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + 8464)))) +(assert (= |#memory_$Pointer$.offset_12| |old(#memory_$Pointer$.offset)_12|)) +(assert (= |#memory_$Pointer$.base_12| |old(#memory_$Pointer$.base)_12|)) +(assert (= |#memory_int_12| |old(#memory_int)_12|)) +(assert (<= |ssl3_accept_#in~s.base_12| main_~s~7.base_7)) +(assert (>= |ssl3_accept_#in~s.base_12| main_~s~7.base_7)) +(assert (<= |ssl3_accept_#in~s.offset_12| main_~s~7.offset_7)) +(assert (>= |ssl3_accept_#in~s.offset_12| main_~s~7.offset_7)) +(assert (= |old(#memory_$Pointer$.offset)_12| |#memory_$Pointer$.offset_11|)) +(assert (= |old(#memory_$Pointer$.base)_12| |#memory_$Pointer$.base_11|)) +(assert (= |old(#memory_int)_12| |#memory_int_11|)) +(assert (<= ssl3_accept_~s.base_13 |ssl3_accept_#in~s.base_12|)) +(assert (>= ssl3_accept_~s.base_13 |ssl3_accept_#in~s.base_12|)) +(assert (<= ssl3_accept_~s.offset_13 |ssl3_accept_#in~s.offset_12|)) +(assert (>= ssl3_accept_~s.offset_13 |ssl3_accept_#in~s.offset_12|)) +(assert (<= ssl3_accept_~buf~10.base_13 |ssl3_accept_#t~nondet5.base_12|)) +(assert (>= ssl3_accept_~buf~10.base_13 |ssl3_accept_#t~nondet5.base_12|)) +(assert (<= ssl3_accept_~buf~10.offset_13 |ssl3_accept_#t~nondet5.offset_12|)) +(assert (>= ssl3_accept_~buf~10.offset_13 |ssl3_accept_#t~nondet5.offset_12|)) +(assert (<= ssl3_accept_~tmp~10_13 |ssl3_accept_#t~nondet6_12|)) +(assert (>= ssl3_accept_~tmp~10_13 |ssl3_accept_#t~nondet6_12|)) +(assert (<= ssl3_accept_~tmp___1~10_13 |ssl3_accept_#t~nondet7_12|)) +(assert (>= ssl3_accept_~tmp___1~10_13 |ssl3_accept_#t~nondet7_12|)) +(assert (<= ssl3_accept_~tmp___2~10_13 |ssl3_accept_#t~nondet8_12|)) +(assert (>= ssl3_accept_~tmp___2~10_13 |ssl3_accept_#t~nondet8_12|)) +(assert (<= ssl3_accept_~tmp___8~10_13 |ssl3_accept_#t~nondet9_12|)) +(assert (>= ssl3_accept_~tmp___8~10_13 |ssl3_accept_#t~nondet9_12|)) +(assert (<= ssl3_accept_~blastFlag~10_13 0)) +(assert (>= ssl3_accept_~blastFlag~10_13 0)) +(assert + (= |#memory_$Pointer$.base_14| + (store |#memory_$Pointer$.base_12| ssl3_accept_~s.base_13 + (store (select |#memory_$Pointer$.base_12| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~hit|) + (select (select |#memory_$Pointer$.base_14| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~hit|)))))) +(assert + (= |#memory_$Pointer$.offset_14| + (store |#memory_$Pointer$.offset_12| ssl3_accept_~s.base_13 + (store (select |#memory_$Pointer$.offset_12| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~hit|) + (select (select |#memory_$Pointer$.offset_14| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~hit|)))))) +(assert + (= |#memory_int_14| + (store |#memory_int_12| ssl3_accept_~s.base_13 + (store (select |#memory_int_12| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~hit|) + |ssl3_accept_#t~nondet10_12|)))) +(assert true) +(assert + (= |#memory_$Pointer$.base_16| + (store |#memory_$Pointer$.base_14| ssl3_accept_~s.base_13 + (store (select |#memory_$Pointer$.base_14| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + (select (select |#memory_$Pointer$.base_16| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))))) +(assert + (= |#memory_$Pointer$.offset_16| + (store |#memory_$Pointer$.offset_14| ssl3_accept_~s.base_13 + (store (select |#memory_$Pointer$.offset_14| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + (select (select |#memory_$Pointer$.offset_16| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))))) +(assert + (= |#memory_int_16| + (store |#memory_int_14| ssl3_accept_~s.base_13 + (store (select |#memory_int_14| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + 8464)))) +(assert (<= ssl3_accept_~Time~10_17 ssl3_accept_~tmp~10_13)) +(assert (>= ssl3_accept_~Time~10_17 ssl3_accept_~tmp~10_13)) +(assert (<= ssl3_accept_~cb~10.offset_17 0)) +(assert (>= ssl3_accept_~cb~10.offset_17 0)) +(assert (<= ssl3_accept_~cb~10.base_17 0)) +(assert (>= ssl3_accept_~cb~10.base_17 0)) +(assert (<= ssl3_accept_~ret~10_17 (- 1))) +(assert (>= ssl3_accept_~ret~10_17 (- 1))) +(assert (<= ssl3_accept_~skip~10_17 0)) +(assert (>= ssl3_accept_~skip~10_17 0)) +(assert (<= ssl3_accept_~got_new_session~10_17 0)) +(assert (>= ssl3_accept_~got_new_session~10_17 0)) +(assert + (not + (= + (mod + (+ (* ssl3_accept_~s.base_13 4294967296) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~info_callback|)) + 4294967296) (mod 0 4294967296)))) +(assert + (<= ssl3_accept_~cb~10.offset_18 + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~info_callback|))) +(assert + (>= ssl3_accept_~cb~10.offset_18 + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~info_callback|))) +(assert (<= ssl3_accept_~cb~10.base_18 ssl3_accept_~s.base_13)) +(assert (>= ssl3_accept_~cb~10.base_18 ssl3_accept_~s.base_13)) +(assert + (<= |ssl3_accept_#t~mem13_19| + (select (select |#memory_int_16| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~in_handshake|)))) +(assert + (>= |ssl3_accept_#t~mem13_19| + (select (select |#memory_int_16| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~in_handshake|)))) +(assert + (= |#memory_$Pointer$.base_20| + (store |#memory_$Pointer$.base_16| ssl3_accept_~s.base_13 + (store (select |#memory_$Pointer$.base_16| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~in_handshake|) + (select (select |#memory_$Pointer$.base_20| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~in_handshake|)))))) +(assert + (= |#memory_$Pointer$.offset_20| + (store |#memory_$Pointer$.offset_16| ssl3_accept_~s.base_13 + (store (select |#memory_$Pointer$.offset_16| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~in_handshake|) + (select (select |#memory_$Pointer$.offset_20| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~in_handshake|)))))) +(assert + (= |#memory_int_20| + (store |#memory_int_16| ssl3_accept_~s.base_13 + (store (select |#memory_int_16| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~in_handshake|) + (+ |ssl3_accept_#t~mem13_19| 1))))) +(assert true) +(assert (<= (~bitwiseAnd ssl3_accept_~tmp___1~10_13 12288) 0)) +(assert (>= (~bitwiseAnd ssl3_accept_~tmp___1~10_13 12288) 0)) +(assert + (<= |ssl3_accept_#t~mem14.base_23| + (select (select |#memory_$Pointer$.base_20| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~cert|)))) +(assert + (>= |ssl3_accept_#t~mem14.base_23| + (select (select |#memory_$Pointer$.base_20| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~cert|)))) +(assert + (<= |ssl3_accept_#t~mem14.offset_23| + (select (select |#memory_$Pointer$.offset_20| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~cert|)))) +(assert + (>= |ssl3_accept_#t~mem14.offset_23| + (select (select |#memory_$Pointer$.offset_20| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~cert|)))) +(assert + (not + (= + (mod + (+ (* |ssl3_accept_#t~mem14.base_23| 4294967296) + |ssl3_accept_#t~mem14.offset_23|) 4294967296) + (mod 0 4294967296)))) +(assert true) +(assert true) +(assert + (<= |ssl3_accept_#t~mem15_27| + (select (select |#memory_int_20| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem15_27| + (select (select |#memory_int_20| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (<= ssl3_accept_~state~10_28 |ssl3_accept_#t~mem15_27|)) +(assert (>= ssl3_accept_~state~10_28 |ssl3_accept_#t~mem15_27|)) +(assert + (<= |ssl3_accept_#t~mem16_29| + (select (select |#memory_int_20| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem16_29| + (select (select |#memory_int_20| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem16_29| 12292))) +(assert + (<= |ssl3_accept_#t~mem17_31| + (select (select |#memory_int_20| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem17_31| + (select (select |#memory_int_20| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem17_31| 16384))) +(assert + (<= |ssl3_accept_#t~mem18_33| + (select (select |#memory_int_20| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem18_33| + (select (select |#memory_int_20| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem18_33| 8192))) +(assert + (<= |ssl3_accept_#t~mem19_35| + (select (select |#memory_int_20| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem19_35| + (select (select |#memory_int_20| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem19_35| 24576))) +(assert + (<= |ssl3_accept_#t~mem20_37| + (select (select |#memory_int_20| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem20_37| + (select (select |#memory_int_20| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem20_37| 8195))) +(assert + (<= |ssl3_accept_#t~mem21_39| + (select (select |#memory_int_20| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem21_39| + (select (select |#memory_int_20| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem21_39| 8480))) +(assert + (<= |ssl3_accept_#t~mem22_41| + (select (select |#memory_int_20| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem22_41| + (select (select |#memory_int_20| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem22_41| 8481))) +(assert + (<= |ssl3_accept_#t~mem23_43| + (select (select |#memory_int_20| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem23_43| + (select (select |#memory_int_20| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem23_43| 8482))) +(assert + (<= |ssl3_accept_#t~mem24_45| + (select (select |#memory_int_20| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem24_45| + (select (select |#memory_int_20| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (<= |ssl3_accept_#t~mem24_45| 8464)) +(assert (>= |ssl3_accept_#t~mem24_45| 8464)) +(assert + (= |#memory_$Pointer$.base_47| + (store |#memory_$Pointer$.base_20| ssl3_accept_~s.base_13 + (store (select |#memory_$Pointer$.base_20| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~shutdown|) + (select (select |#memory_$Pointer$.base_47| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~shutdown|)))))) +(assert + (= |#memory_$Pointer$.offset_47| + (store |#memory_$Pointer$.offset_20| ssl3_accept_~s.base_13 + (store (select |#memory_$Pointer$.offset_20| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~shutdown|) + (select (select |#memory_$Pointer$.offset_47| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~shutdown|)))))) +(assert + (= |#memory_int_47| + (store |#memory_int_20| ssl3_accept_~s.base_13 + (store (select |#memory_int_20| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~shutdown|) + 0)))) +(assert (<= ssl3_accept_~ret~10_48 |ssl3_accept_#t~nondet76_12|)) +(assert (>= ssl3_accept_~ret~10_48 |ssl3_accept_#t~nondet76_12|)) +(assert (<= ssl3_accept_~blastFlag~10_13 0)) +(assert (>= ssl3_accept_~blastFlag~10_13 0)) +(assert (<= ssl3_accept_~blastFlag~10_49 1)) +(assert (>= ssl3_accept_~blastFlag~10_49 1)) +(assert (not (<= ssl3_accept_~ret~10_48 0))) +(assert (<= ssl3_accept_~got_new_session~10_50 1)) +(assert (>= ssl3_accept_~got_new_session~10_50 1)) +(assert + (= |#memory_$Pointer$.base_51| + (store |#memory_$Pointer$.base_47| ssl3_accept_~s.base_13 + (store (select |#memory_$Pointer$.base_47| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + (select (select |#memory_$Pointer$.base_51| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))))) +(assert + (= |#memory_$Pointer$.offset_51| + (store |#memory_$Pointer$.offset_47| ssl3_accept_~s.base_13 + (store (select |#memory_$Pointer$.offset_47| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + (select (select |#memory_$Pointer$.offset_51| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))))) +(assert + (= |#memory_int_51| + (store |#memory_int_47| ssl3_accept_~s.base_13 + (store (select |#memory_int_47| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + 8496)))) +(assert + (= |#memory_$Pointer$.base_52| + (store |#memory_$Pointer$.base_51| ssl3_accept_~s.base_13 + (store (select |#memory_$Pointer$.base_51| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|) + (select (select |#memory_$Pointer$.base_52| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|)))))) +(assert + (= |#memory_$Pointer$.offset_52| + (store |#memory_$Pointer$.offset_51| ssl3_accept_~s.base_13 + (store (select |#memory_$Pointer$.offset_51| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|) + (select (select |#memory_$Pointer$.offset_52| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|)))))) +(assert + (= |#memory_int_52| + (store |#memory_int_51| ssl3_accept_~s.base_13 + (store (select |#memory_int_51| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|) + 0)))) +(assert + (<= |ssl3_accept_#t~mem185.base_53| + (select (select |#memory_$Pointer$.base_52| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (>= |ssl3_accept_#t~mem185.base_53| + (select (select |#memory_$Pointer$.base_52| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (<= |ssl3_accept_#t~mem185.offset_53| + (select (select |#memory_$Pointer$.offset_52| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (>= |ssl3_accept_#t~mem185.offset_53| + (select (select |#memory_$Pointer$.offset_52| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (<= |ssl3_accept_#t~mem186_54| + (select (select |#memory_int_52| |ssl3_accept_#t~mem185.base_53|) + (+ + (+ |ssl3_accept_#t~mem185.offset_53| + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~tmp|) + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~reuse_message|)))) +(assert + (>= |ssl3_accept_#t~mem186_54| + (select (select |#memory_int_52| |ssl3_accept_#t~mem185.base_53|) + (+ + (+ |ssl3_accept_#t~mem185.offset_53| + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~tmp|) + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~reuse_message|)))) +(assert (not (= |ssl3_accept_#t~mem186_54| 0))) +(assert (<= ssl3_accept_~skip~10_56 0)) +(assert (>= ssl3_accept_~skip~10_56 0)) +(assert true) +(assert true) +(assert + (<= |ssl3_accept_#t~mem15_59| + (select (select |#memory_int_52| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem15_59| + (select (select |#memory_int_52| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (<= ssl3_accept_~state~10_60 |ssl3_accept_#t~mem15_59|)) +(assert (>= ssl3_accept_~state~10_60 |ssl3_accept_#t~mem15_59|)) +(assert + (<= |ssl3_accept_#t~mem16_61| + (select (select |#memory_int_52| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem16_61| + (select (select |#memory_int_52| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem16_61| 12292))) +(assert + (<= |ssl3_accept_#t~mem17_63| + (select (select |#memory_int_52| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem17_63| + (select (select |#memory_int_52| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem17_63| 16384))) +(assert + (<= |ssl3_accept_#t~mem18_65| + (select (select |#memory_int_52| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem18_65| + (select (select |#memory_int_52| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem18_65| 8192))) +(assert + (<= |ssl3_accept_#t~mem19_67| + (select (select |#memory_int_52| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem19_67| + (select (select |#memory_int_52| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem19_67| 24576))) +(assert + (<= |ssl3_accept_#t~mem20_69| + (select (select |#memory_int_52| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem20_69| + (select (select |#memory_int_52| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem20_69| 8195))) +(assert + (<= |ssl3_accept_#t~mem21_71| + (select (select |#memory_int_52| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem21_71| + (select (select |#memory_int_52| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem21_71| 8480))) +(assert + (<= |ssl3_accept_#t~mem22_73| + (select (select |#memory_int_52| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem22_73| + (select (select |#memory_int_52| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem22_73| 8481))) +(assert + (<= |ssl3_accept_#t~mem23_75| + (select (select |#memory_int_52| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem23_75| + (select (select |#memory_int_52| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem23_75| 8482))) +(assert + (<= |ssl3_accept_#t~mem24_77| + (select (select |#memory_int_52| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem24_77| + (select (select |#memory_int_52| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem24_77| 8464))) +(assert + (<= |ssl3_accept_#t~mem25_79| + (select (select |#memory_int_52| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem25_79| + (select (select |#memory_int_52| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem25_79| 8465))) +(assert + (<= |ssl3_accept_#t~mem26_81| + (select (select |#memory_int_52| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem26_81| + (select (select |#memory_int_52| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem26_81| 8466))) +(assert + (<= |ssl3_accept_#t~mem27_83| + (select (select |#memory_int_52| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem27_83| + (select (select |#memory_int_52| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (<= |ssl3_accept_#t~mem27_83| 8496)) +(assert (>= |ssl3_accept_#t~mem27_83| 8496)) +(assert (<= ssl3_accept_~ret~10_85 |ssl3_accept_#t~nondet79_12|)) +(assert (>= ssl3_accept_~ret~10_85 |ssl3_accept_#t~nondet79_12|)) +(assert (<= ssl3_accept_~blastFlag~10_49 1)) +(assert (>= ssl3_accept_~blastFlag~10_49 1)) +(assert (<= ssl3_accept_~blastFlag~10_86 2)) +(assert (>= ssl3_accept_~blastFlag~10_86 2)) +(assert (not (<= ssl3_accept_~ret~10_85 0))) +(assert + (<= |ssl3_accept_#t~mem80_88| + (select (select |#memory_int_52| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~hit|)))) +(assert + (>= |ssl3_accept_#t~mem80_88| + (select (select |#memory_int_52| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~hit|)))) +(assert (not (= |ssl3_accept_#t~mem80_88| 0))) +(assert + (= |#memory_$Pointer$.base_90| + (store |#memory_$Pointer$.base_52| ssl3_accept_~s.base_13 + (store (select |#memory_$Pointer$.base_52| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + (select (select |#memory_$Pointer$.base_90| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))))) +(assert + (= |#memory_$Pointer$.offset_90| + (store |#memory_$Pointer$.offset_52| ssl3_accept_~s.base_13 + (store (select |#memory_$Pointer$.offset_52| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + (select (select |#memory_$Pointer$.offset_90| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))))) +(assert + (= |#memory_int_90| + (store |#memory_int_52| ssl3_accept_~s.base_13 + (store (select |#memory_int_52| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + 8656)))) +(assert + (= |#memory_$Pointer$.base_91| + (store |#memory_$Pointer$.base_90| ssl3_accept_~s.base_13 + (store (select |#memory_$Pointer$.base_90| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|) + (select (select |#memory_$Pointer$.base_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|)))))) +(assert + (= |#memory_$Pointer$.offset_91| + (store |#memory_$Pointer$.offset_90| ssl3_accept_~s.base_13 + (store (select |#memory_$Pointer$.offset_90| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|) + (select (select |#memory_$Pointer$.offset_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|)))))) +(assert + (= |#memory_int_91| + (store |#memory_int_90| ssl3_accept_~s.base_13 + (store (select |#memory_int_90| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|) + 0)))) +(assert + (<= |ssl3_accept_#t~mem185.base_92| + (select (select |#memory_$Pointer$.base_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (>= |ssl3_accept_#t~mem185.base_92| + (select (select |#memory_$Pointer$.base_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (<= |ssl3_accept_#t~mem185.offset_92| + (select (select |#memory_$Pointer$.offset_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (>= |ssl3_accept_#t~mem185.offset_92| + (select (select |#memory_$Pointer$.offset_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (<= |ssl3_accept_#t~mem186_93| + (select (select |#memory_int_91| |ssl3_accept_#t~mem185.base_92|) + (+ + (+ |ssl3_accept_#t~mem185.offset_92| + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~tmp|) + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~reuse_message|)))) +(assert + (>= |ssl3_accept_#t~mem186_93| + (select (select |#memory_int_91| |ssl3_accept_#t~mem185.base_92|) + (+ + (+ |ssl3_accept_#t~mem185.offset_92| + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~tmp|) + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~reuse_message|)))) +(assert (not (= |ssl3_accept_#t~mem186_93| 0))) +(assert (<= ssl3_accept_~skip~10_95 0)) +(assert (>= ssl3_accept_~skip~10_95 0)) +(assert true) +(assert true) +(assert + (<= |ssl3_accept_#t~mem15_98| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem15_98| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (<= ssl3_accept_~state~10_99 |ssl3_accept_#t~mem15_98|)) +(assert (>= ssl3_accept_~state~10_99 |ssl3_accept_#t~mem15_98|)) +(assert + (<= |ssl3_accept_#t~mem16_100| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem16_100| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem16_100| 12292))) +(assert + (<= |ssl3_accept_#t~mem17_102| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem17_102| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem17_102| 16384))) +(assert + (<= |ssl3_accept_#t~mem18_104| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem18_104| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem18_104| 8192))) +(assert + (<= |ssl3_accept_#t~mem19_106| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem19_106| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem19_106| 24576))) +(assert + (<= |ssl3_accept_#t~mem20_108| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem20_108| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem20_108| 8195))) +(assert + (<= |ssl3_accept_#t~mem21_110| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem21_110| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem21_110| 8480))) +(assert + (<= |ssl3_accept_#t~mem22_112| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem22_112| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem22_112| 8481))) +(assert + (<= |ssl3_accept_#t~mem23_114| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem23_114| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem23_114| 8482))) +(assert + (<= |ssl3_accept_#t~mem24_116| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem24_116| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem24_116| 8464))) +(assert + (<= |ssl3_accept_#t~mem25_118| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem25_118| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem25_118| 8465))) +(assert + (<= |ssl3_accept_#t~mem26_120| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem26_120| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem26_120| 8466))) +(assert + (<= |ssl3_accept_#t~mem27_122| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem27_122| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem27_122| 8496))) +(assert + (<= |ssl3_accept_#t~mem28_124| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem28_124| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem28_124| 8497))) +(assert + (<= |ssl3_accept_#t~mem29_126| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem29_126| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem29_126| 8512))) +(assert + (<= |ssl3_accept_#t~mem30_128| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem30_128| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem30_128| 8513))) +(assert + (<= |ssl3_accept_#t~mem31_130| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem31_130| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem31_130| 8528))) +(assert + (<= |ssl3_accept_#t~mem32_132| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem32_132| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem32_132| 8529))) +(assert + (<= |ssl3_accept_#t~mem33_134| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem33_134| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem33_134| 8544))) +(assert + (<= |ssl3_accept_#t~mem34_136| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem34_136| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem34_136| 8545))) +(assert + (<= |ssl3_accept_#t~mem35_138| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem35_138| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem35_138| 8560))) +(assert + (<= |ssl3_accept_#t~mem36_140| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem36_140| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem36_140| 8561))) +(assert + (<= |ssl3_accept_#t~mem37_142| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem37_142| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem37_142| 8448))) +(assert + (<= |ssl3_accept_#t~mem38_144| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem38_144| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem38_144| 8576))) +(assert + (<= |ssl3_accept_#t~mem39_146| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem39_146| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem39_146| 8577))) +(assert + (<= |ssl3_accept_#t~mem40_148| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem40_148| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem40_148| 8592))) +(assert + (<= |ssl3_accept_#t~mem41_150| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem41_150| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem41_150| 8593))) +(assert + (<= |ssl3_accept_#t~mem42_152| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem42_152| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem42_152| 8608))) +(assert + (<= |ssl3_accept_#t~mem43_154| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem43_154| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem43_154| 8609))) +(assert + (<= |ssl3_accept_#t~mem44_156| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem44_156| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem44_156| 8640))) +(assert + (<= |ssl3_accept_#t~mem45_158| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem45_158| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem45_158| 8641))) +(assert + (<= |ssl3_accept_#t~mem46_160| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem46_160| + (select (select |#memory_int_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (<= |ssl3_accept_#t~mem46_160| 8656)) +(assert (>= |ssl3_accept_#t~mem46_160| 8656)) +(assert + (<= |ssl3_accept_#t~mem163.base_162| + (select (select |#memory_$Pointer$.base_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~session|)))) +(assert + (>= |ssl3_accept_#t~mem163.base_162| + (select (select |#memory_$Pointer$.base_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~session|)))) +(assert + (<= |ssl3_accept_#t~mem163.offset_162| + (select (select |#memory_$Pointer$.offset_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~session|)))) +(assert + (>= |ssl3_accept_#t~mem163.offset_162| + (select (select |#memory_$Pointer$.offset_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~session|)))) +(assert + (<= |ssl3_accept_#t~mem164.base_163| + (select (select |#memory_$Pointer$.base_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (>= |ssl3_accept_#t~mem164.base_163| + (select (select |#memory_$Pointer$.base_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (<= |ssl3_accept_#t~mem164.offset_163| + (select (select |#memory_$Pointer$.offset_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (>= |ssl3_accept_#t~mem164.offset_163| + (select (select |#memory_$Pointer$.offset_91| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (<= |ssl3_accept_#t~mem166.base_164| + (select + (select |#memory_$Pointer$.base_91| |ssl3_accept_#t~mem164.base_163|) + (+ + (+ |ssl3_accept_#t~mem164.offset_163| + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~tmp|) + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~new_cipher|)))) +(assert + (>= |ssl3_accept_#t~mem166.base_164| + (select + (select |#memory_$Pointer$.base_91| |ssl3_accept_#t~mem164.base_163|) + (+ + (+ |ssl3_accept_#t~mem164.offset_163| + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~tmp|) + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~new_cipher|)))) +(assert + (<= |ssl3_accept_#t~mem166.offset_164| + (select + (select |#memory_$Pointer$.offset_91| |ssl3_accept_#t~mem164.base_163|) + (+ + (+ |ssl3_accept_#t~mem164.offset_163| + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~tmp|) + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~new_cipher|)))) +(assert + (>= |ssl3_accept_#t~mem166.offset_164| + (select + (select |#memory_$Pointer$.offset_91| |ssl3_accept_#t~mem164.base_163|) + (+ + (+ |ssl3_accept_#t~mem164.offset_163| + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~tmp|) + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~new_cipher|)))) +(assert + (= |#memory_$Pointer$.base_165| + (store |#memory_$Pointer$.base_91| |ssl3_accept_#t~mem163.base_162| + (store (select |#memory_$Pointer$.base_91| |ssl3_accept_#t~mem163.base_162|) + (+ |ssl3_accept_#t~mem163.offset_162| + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~cipher|) + |ssl3_accept_#t~mem166.base_164|)))) +(assert + (= |#memory_$Pointer$.offset_165| + (store |#memory_$Pointer$.offset_91| |ssl3_accept_#t~mem163.base_162| + (store + (select |#memory_$Pointer$.offset_91| |ssl3_accept_#t~mem163.base_162|) + (+ |ssl3_accept_#t~mem163.offset_162| + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~cipher|) + |ssl3_accept_#t~mem166.offset_164|)))) +(assert + (= |#memory_int_165| + (store |#memory_int_91| |ssl3_accept_#t~mem163.base_162| + (store (select |#memory_int_91| |ssl3_accept_#t~mem163.base_162|) + (+ |ssl3_accept_#t~mem163.offset_162| + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~cipher|) + (select (select |#memory_int_165| |ssl3_accept_#t~mem163.base_162|) + (+ |ssl3_accept_#t~mem163.offset_162| + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~cipher|)))))) +(assert (<= ssl3_accept_~tmp___9~10_166 |ssl3_accept_#t~nondet167_12|)) +(assert (>= ssl3_accept_~tmp___9~10_166 |ssl3_accept_#t~nondet167_12|)) +(assert (not (= ssl3_accept_~tmp___9~10_166 0))) +(assert (<= ssl3_accept_~ret~10_167 |ssl3_accept_#t~nondet168_12|)) +(assert (>= ssl3_accept_~ret~10_167 |ssl3_accept_#t~nondet168_12|)) +(assert (<= ssl3_accept_~blastFlag~10_86 2)) +(assert (>= ssl3_accept_~blastFlag~10_86 2)) +(assert (<= ssl3_accept_~blastFlag~10_168 5)) +(assert (>= ssl3_accept_~blastFlag~10_168 5)) +(assert (not (<= ssl3_accept_~ret~10_167 0))) +(assert + (= |#memory_$Pointer$.base_170| + (store |#memory_$Pointer$.base_165| ssl3_accept_~s.base_13 + (store (select |#memory_$Pointer$.base_165| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + (select (select |#memory_$Pointer$.base_170| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))))) +(assert + (= |#memory_$Pointer$.offset_170| + (store |#memory_$Pointer$.offset_165| ssl3_accept_~s.base_13 + (store (select |#memory_$Pointer$.offset_165| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + (select (select |#memory_$Pointer$.offset_170| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))))) +(assert + (= |#memory_int_170| + (store |#memory_int_165| ssl3_accept_~s.base_13 + (store (select |#memory_int_165| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + 8672)))) +(assert + (= |#memory_$Pointer$.base_171| + (store |#memory_$Pointer$.base_170| ssl3_accept_~s.base_13 + (store (select |#memory_$Pointer$.base_170| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|) + (select (select |#memory_$Pointer$.base_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|)))))) +(assert + (= |#memory_$Pointer$.offset_171| + (store |#memory_$Pointer$.offset_170| ssl3_accept_~s.base_13 + (store (select |#memory_$Pointer$.offset_170| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|) + (select (select |#memory_$Pointer$.offset_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|)))))) +(assert + (= |#memory_int_171| + (store |#memory_int_170| ssl3_accept_~s.base_13 + (store (select |#memory_int_170| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|) + 0)))) +(assert (<= ssl3_accept_~tmp___10~10_172 |ssl3_accept_#t~nondet171_12|)) +(assert (>= ssl3_accept_~tmp___10~10_172 |ssl3_accept_#t~nondet171_12|)) +(assert (not (= ssl3_accept_~tmp___10~10_172 0))) +(assert + (<= |ssl3_accept_#t~mem185.base_174| + (select (select |#memory_$Pointer$.base_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (>= |ssl3_accept_#t~mem185.base_174| + (select (select |#memory_$Pointer$.base_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (<= |ssl3_accept_#t~mem185.offset_174| + (select (select |#memory_$Pointer$.offset_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (>= |ssl3_accept_#t~mem185.offset_174| + (select (select |#memory_$Pointer$.offset_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (<= |ssl3_accept_#t~mem186_175| + (select (select |#memory_int_171| |ssl3_accept_#t~mem185.base_174|) + (+ + (+ |ssl3_accept_#t~mem185.offset_174| + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~tmp|) + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~reuse_message|)))) +(assert + (>= |ssl3_accept_#t~mem186_175| + (select (select |#memory_int_171| |ssl3_accept_#t~mem185.base_174|) + (+ + (+ |ssl3_accept_#t~mem185.offset_174| + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~tmp|) + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~reuse_message|)))) +(assert (not (= |ssl3_accept_#t~mem186_175| 0))) +(assert (<= ssl3_accept_~skip~10_177 0)) +(assert (>= ssl3_accept_~skip~10_177 0)) +(assert true) +(assert true) +(assert + (<= |ssl3_accept_#t~mem15_180| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem15_180| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (<= ssl3_accept_~state~10_181 |ssl3_accept_#t~mem15_180|)) +(assert (>= ssl3_accept_~state~10_181 |ssl3_accept_#t~mem15_180|)) +(assert + (<= |ssl3_accept_#t~mem16_182| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem16_182| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem16_182| 12292))) +(assert + (<= |ssl3_accept_#t~mem17_184| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem17_184| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem17_184| 16384))) +(assert + (<= |ssl3_accept_#t~mem18_186| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem18_186| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem18_186| 8192))) +(assert + (<= |ssl3_accept_#t~mem19_188| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem19_188| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem19_188| 24576))) +(assert + (<= |ssl3_accept_#t~mem20_190| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem20_190| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem20_190| 8195))) +(assert + (<= |ssl3_accept_#t~mem21_192| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem21_192| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem21_192| 8480))) +(assert + (<= |ssl3_accept_#t~mem22_194| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem22_194| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem22_194| 8481))) +(assert + (<= |ssl3_accept_#t~mem23_196| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem23_196| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem23_196| 8482))) +(assert + (<= |ssl3_accept_#t~mem24_198| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem24_198| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem24_198| 8464))) +(assert + (<= |ssl3_accept_#t~mem25_200| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem25_200| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem25_200| 8465))) +(assert + (<= |ssl3_accept_#t~mem26_202| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem26_202| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem26_202| 8466))) +(assert + (<= |ssl3_accept_#t~mem27_204| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem27_204| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem27_204| 8496))) +(assert + (<= |ssl3_accept_#t~mem28_206| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem28_206| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem28_206| 8497))) +(assert + (<= |ssl3_accept_#t~mem29_208| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem29_208| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem29_208| 8512))) +(assert + (<= |ssl3_accept_#t~mem30_210| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem30_210| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem30_210| 8513))) +(assert + (<= |ssl3_accept_#t~mem31_212| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem31_212| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem31_212| 8528))) +(assert + (<= |ssl3_accept_#t~mem32_214| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem32_214| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem32_214| 8529))) +(assert + (<= |ssl3_accept_#t~mem33_216| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem33_216| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem33_216| 8544))) +(assert + (<= |ssl3_accept_#t~mem34_218| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem34_218| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem34_218| 8545))) +(assert + (<= |ssl3_accept_#t~mem35_220| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem35_220| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem35_220| 8560))) +(assert + (<= |ssl3_accept_#t~mem36_222| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem36_222| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem36_222| 8561))) +(assert + (<= |ssl3_accept_#t~mem37_224| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem37_224| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem37_224| 8448))) +(assert + (<= |ssl3_accept_#t~mem38_226| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem38_226| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem38_226| 8576))) +(assert + (<= |ssl3_accept_#t~mem39_228| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem39_228| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem39_228| 8577))) +(assert + (<= |ssl3_accept_#t~mem40_230| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem40_230| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem40_230| 8592))) +(assert + (<= |ssl3_accept_#t~mem41_232| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem41_232| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem41_232| 8593))) +(assert + (<= |ssl3_accept_#t~mem42_234| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem42_234| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem42_234| 8608))) +(assert + (<= |ssl3_accept_#t~mem43_236| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem43_236| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem43_236| 8609))) +(assert + (<= |ssl3_accept_#t~mem44_238| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem44_238| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem44_238| 8640))) +(assert + (<= |ssl3_accept_#t~mem45_240| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem45_240| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem45_240| 8641))) +(assert + (<= |ssl3_accept_#t~mem46_242| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem46_242| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem46_242| 8656))) +(assert + (<= |ssl3_accept_#t~mem47_244| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem47_244| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_accept_#t~mem47_244| 8657))) +(assert + (<= |ssl3_accept_#t~mem48_246| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_accept_#t~mem48_246| + (select (select |#memory_int_171| ssl3_accept_~s.base_13) + (+ ssl3_accept_~s.offset_13 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (<= |ssl3_accept_#t~mem48_246| 8672)) +(assert (>= |ssl3_accept_#t~mem48_246| 8672)) +(assert (<= ssl3_accept_~ret~10_248 |ssl3_accept_#t~nondet172_12|)) +(assert (>= ssl3_accept_~ret~10_248 |ssl3_accept_#t~nondet172_12|)) +(assert (not (= ssl3_accept_~blastFlag~10_168 4))) +(assert (<= ssl3_accept_~blastFlag~10_168 5)) +(assert (>= ssl3_accept_~blastFlag~10_168 5)) +(assert true) +(check-sat) +(exit) + diff --git a/tests/regress/mcsat/s3_srvr.blast.01_false-unreach-call.i.cil.c_0.smt2.gold b/tests/regress/mcsat/s3_srvr.blast.01_false-unreach-call.i.cil.c_0.smt2.gold new file mode 100644 index 000000000..6b8a2c3d2 --- /dev/null +++ b/tests/regress/mcsat/s3_srvr.blast.01_false-unreach-call.i.cil.c_0.smt2.gold @@ -0,0 +1 @@ +sat From ae6aa42219c7aa260a5056564c1a76911261f0ef Mon Sep 17 00:00:00 2001 From: Ahmed <43099566+ahmed-irfan@users.noreply.github.com> Date: Mon, 6 Mar 2023 21:40:20 -0800 Subject: [PATCH 091/182] iterative make_rep (#431) --- src/mcsat/weq/weak_eq_graph.c | 45 +++++++++++++++++++++++++---------- 1 file changed, 33 insertions(+), 12 deletions(-) diff --git a/src/mcsat/weq/weak_eq_graph.c b/src/mcsat/weq/weak_eq_graph.c index 7d38d0618..c7d95b7bb 100644 --- a/src/mcsat/weq/weak_eq_graph.c +++ b/src/mcsat/weq/weak_eq_graph.c @@ -20,8 +20,9 @@ #include "mcsat/tracing.h" +//#include "utils/int_array_sort2.h" +#include "utils/ptr_vectors.h" #include "utils/refcount_strings.h" -#include "utils/int_array_sort2.h" #define USE_ARRAY_DIFF 0 //experimental @@ -344,17 +345,37 @@ static void weq_graph_make_rep(weq_graph_t* weq, weq_graph_node_t* n) { return; } - // TODO: make the code non-recursive - weq_graph_make_rep(weq, n->p); - // invert primary edge - n->p->p = n; - n->p->pstore = n->pstore; - n->p->pi = n->pi; - n->p = NULL; - // fix weak-i representatives - weq_graph_make_rep_i(weq, n); - n->pstore = NULL_TERM; - n->pi = NULL_TERM; + weq_graph_node_t* tmp = n; + weq_graph_node_t* prev = NULL; + weq_graph_node_t* next = NULL; + pvector_t to_process; + init_pvector(&to_process, 0); + + // invert all the primary edges + // first goto the root and keep track of the visited nodes in a stack + while (tmp) { + pvector_push(&to_process, tmp); + tmp = tmp->p; + } + + // now invert he primary edges by popping nodes from the stack + prev = pvector_pop2(&to_process); + while (to_process.size > 0) { + next = pvector_pop2(&to_process); + prev->p = next; + prev->pstore = next->pstore; + prev->pi = next->pi; + + next->p = NULL; + // make sure the node is weak-rep-i + weq_graph_make_rep_i(weq, next); + next->pstore = NULL_TERM; + next->pi = NULL_TERM; + + prev = next; + } + + delete_pvector(&to_process); } /* Get representative term w.r.t. the equality graph. From 85e6d4918a355b9e0d3955f346fbf0fffc1bfe43 Mon Sep 17 00:00:00 2001 From: Ahmed <43099566+ahmed-irfan@users.noreply.github.com> Date: Mon, 20 Mar 2023 12:39:02 -0700 Subject: [PATCH 092/182] Array tests (#434) * renamed mcsat/ax dir + 2 more tests * fix --- tests/regress/mcsat/{ax => arrays}/arr1.smt2 | 0 .../mcsat/{ax => arrays}/arr1.smt2.gold | 0 .../mcsat/{ax => arrays}/arr1.smt2.options | 0 .../regress/mcsat/{ax => arrays}/arrays0.smt2 | 0 .../mcsat/{ax => arrays}/arrays0.smt2.gold | 0 .../mcsat/{ax => arrays}/arrays0.smt2.options | 0 .../regress/mcsat/{ax => arrays}/arrays1.smt2 | 0 .../mcsat/{ax => arrays}/arrays1.smt2.gold | 0 .../mcsat/{ax => arrays}/arrays1.smt2.options | 0 .../regress/mcsat/{ax => arrays}/arrays2.smt2 | 0 .../mcsat/{ax => arrays}/arrays2.smt2.gold | 0 .../mcsat/{ax => arrays}/arrays2.smt2.options | 0 .../regress/mcsat/{ax => arrays}/arrays3.smt2 | 0 .../mcsat/{ax => arrays}/arrays3.smt2.gold | 0 .../mcsat/{ax => arrays}/arrays3.smt2.options | 0 .../regress/mcsat/{ax => arrays}/arrays4.smt2 | 0 .../mcsat/{ax => arrays}/arrays4.smt2.gold | 0 .../mcsat/{ax => arrays}/arrays4.smt2.options | 0 tests/regress/mcsat/arrays/arrays5.ys | 21 +++++++++++++++++++ .../arrays5.ys.gold} | 0 .../arrays5.ys.options} | 0 tests/regress/mcsat/arrays/arrays6.ys | 21 +++++++++++++++++++ .../arrays6.ys.gold} | 0 .../arrays6.ys.options} | 0 .../arrays_extensionality_no_selects.smt2 | 0 ...rrays_extensionality_no_selects.smt2.gold} | 0 ...ys_extensionality_no_selects.smt2.options} | 0 ...rrays_extensionality_no_selects_unsat.smt2 | 0 ...extensionality_no_selects_unsat.smt2.gold} | 0 ...ensionality_no_selects_unsat.smt2.options} | 0 .../mcsat/{ax => arrays}/bool-array.smt2 | 0 .../bool-array.smt2.gold} | 0 .../bool-array.smt2.options} | 0 .../mcsat/{ax => arrays}/example_weqa.smt2 | 0 .../example_weqa.smt2.gold} | 0 .../example_weqa.smt2.options} | 0 .../regress/mcsat/{ax => arrays}/frugal10.ys | 0 .../frugal10.ys.gold} | 0 .../frugal10.ys.options} | 0 .../regress/mcsat/{ax => arrays}/frugal10a.ys | 0 .../frugal10a.ys.gold} | 0 .../frugal10a.ys.options} | 0 .../mcsat/{ax => arrays}/frugal10bool.smt2 | 0 .../frugal10bool.smt2.gold} | 0 .../frugal10bool.smt2.otions} | 0 .../mcsat/{ax => arrays}/frugal10bool.ys | 0 .../frugal10bool.ys.gold} | 0 .../frugal10bool.ys.options} | 0 .../read_over_weak_eq_lemma.smt2 | 0 .../arrays/read_over_weak_eq_lemma.smt2.gold | 1 + .../read_over_weak_eq_lemma.smt2.options} | 0 .../read_over_weak_eq_lemma_2.smt2 | 0 .../read_over_weak_eq_lemma_2.smt2.gold} | 0 .../read_over_weak_eq_lemma_2.smt2.options} | 0 .../storecomm_t2_np_sf_ai_00060_009.cvc.smt2 | 0 ...ecomm_t2_np_sf_ai_00060_009.cvc.smt2.gold} | 0 ...mm_t2_np_sf_ai_00060_009.cvc.smt2.options} | 0 .../mcsat/{ax => arrays}/trivially_unsat.smt2 | 0 .../trivially_unsat.smt2.gold} | 0 .../mcsat/arrays/trivially_unsat.smt2.options | 1 + .../{ax => arrays}/unsat_with_decisions.smt2 | 0 .../arrays/unsat_with_decisions.smt2.gold | 1 + .../arrays/unsat_with_decisions.smt2.options | 1 + 63 files changed, 46 insertions(+) rename tests/regress/mcsat/{ax => arrays}/arr1.smt2 (100%) rename tests/regress/mcsat/{ax => arrays}/arr1.smt2.gold (100%) rename tests/regress/mcsat/{ax => arrays}/arr1.smt2.options (100%) rename tests/regress/mcsat/{ax => arrays}/arrays0.smt2 (100%) rename tests/regress/mcsat/{ax => arrays}/arrays0.smt2.gold (100%) rename tests/regress/mcsat/{ax => arrays}/arrays0.smt2.options (100%) rename tests/regress/mcsat/{ax => arrays}/arrays1.smt2 (100%) rename tests/regress/mcsat/{ax => arrays}/arrays1.smt2.gold (100%) rename tests/regress/mcsat/{ax => arrays}/arrays1.smt2.options (100%) rename tests/regress/mcsat/{ax => arrays}/arrays2.smt2 (100%) rename tests/regress/mcsat/{ax => arrays}/arrays2.smt2.gold (100%) rename tests/regress/mcsat/{ax => arrays}/arrays2.smt2.options (100%) rename tests/regress/mcsat/{ax => arrays}/arrays3.smt2 (100%) rename tests/regress/mcsat/{ax => arrays}/arrays3.smt2.gold (100%) rename tests/regress/mcsat/{ax => arrays}/arrays3.smt2.options (100%) rename tests/regress/mcsat/{ax => arrays}/arrays4.smt2 (100%) rename tests/regress/mcsat/{ax => arrays}/arrays4.smt2.gold (100%) rename tests/regress/mcsat/{ax => arrays}/arrays4.smt2.options (100%) create mode 100644 tests/regress/mcsat/arrays/arrays5.ys rename tests/regress/mcsat/{ax/arrays_extensionality_no_selects.smt2.gold => arrays/arrays5.ys.gold} (100%) rename tests/regress/mcsat/{ax/arrays_extensionality_no_selects.smt2.options => arrays/arrays5.ys.options} (100%) create mode 100644 tests/regress/mcsat/arrays/arrays6.ys rename tests/regress/mcsat/{ax/arrays_extensionality_no_selects_unsat.smt2.gold => arrays/arrays6.ys.gold} (100%) rename tests/regress/mcsat/{ax/arrays_extensionality_no_selects_unsat.smt2.options => arrays/arrays6.ys.options} (100%) rename tests/regress/mcsat/{ax => arrays}/arrays_extensionality_no_selects.smt2 (100%) rename tests/regress/mcsat/{ax/frugal10.ys.gold => arrays/arrays_extensionality_no_selects.smt2.gold} (100%) rename tests/regress/mcsat/{ax/bool-array.smt2.options => arrays/arrays_extensionality_no_selects.smt2.options} (100%) rename tests/regress/mcsat/{ax => arrays}/arrays_extensionality_no_selects_unsat.smt2 (100%) rename tests/regress/mcsat/{ax/bool-array.smt2.gold => arrays/arrays_extensionality_no_selects_unsat.smt2.gold} (100%) rename tests/regress/mcsat/{ax/example_weqa.smt2.options => arrays/arrays_extensionality_no_selects_unsat.smt2.options} (100%) rename tests/regress/mcsat/{ax => arrays}/bool-array.smt2 (100%) rename tests/regress/mcsat/{ax/example_weqa.smt2.gold => arrays/bool-array.smt2.gold} (100%) rename tests/regress/mcsat/{ax/frugal10.ys.options => arrays/bool-array.smt2.options} (100%) rename tests/regress/mcsat/{ax => arrays}/example_weqa.smt2 (100%) rename tests/regress/mcsat/{ax/read_over_weak_eq_lemma_2.smt2.gold => arrays/example_weqa.smt2.gold} (100%) rename tests/regress/mcsat/{ax/frugal10a.ys.options => arrays/example_weqa.smt2.options} (100%) rename tests/regress/mcsat/{ax => arrays}/frugal10.ys (100%) rename tests/regress/mcsat/{ax/frugal10a.ys.gold => arrays/frugal10.ys.gold} (100%) rename tests/regress/mcsat/{ax/frugal10bool.smt2.otions => arrays/frugal10.ys.options} (100%) rename tests/regress/mcsat/{ax => arrays}/frugal10a.ys (100%) rename tests/regress/mcsat/{ax/frugal10bool.smt2.gold => arrays/frugal10a.ys.gold} (100%) rename tests/regress/mcsat/{ax/frugal10bool.ys.options => arrays/frugal10a.ys.options} (100%) rename tests/regress/mcsat/{ax => arrays}/frugal10bool.smt2 (100%) rename tests/regress/mcsat/{ax/frugal10bool.ys.gold => arrays/frugal10bool.smt2.gold} (100%) rename tests/regress/mcsat/{ax/read_over_weak_eq_lemma.smt2.options => arrays/frugal10bool.smt2.otions} (100%) rename tests/regress/mcsat/{ax => arrays}/frugal10bool.ys (100%) rename tests/regress/mcsat/{ax/read_over_weak_eq_lemma.smt2.gold => arrays/frugal10bool.ys.gold} (100%) rename tests/regress/mcsat/{ax/read_over_weak_eq_lemma_2.smt2.options => arrays/frugal10bool.ys.options} (100%) rename tests/regress/mcsat/{ax => arrays}/read_over_weak_eq_lemma.smt2 (100%) create mode 100644 tests/regress/mcsat/arrays/read_over_weak_eq_lemma.smt2.gold rename tests/regress/mcsat/{ax/storecomm_t2_np_sf_ai_00060_009.cvc.smt2.options => arrays/read_over_weak_eq_lemma.smt2.options} (100%) rename tests/regress/mcsat/{ax => arrays}/read_over_weak_eq_lemma_2.smt2 (100%) rename tests/regress/mcsat/{ax/storecomm_t2_np_sf_ai_00060_009.cvc.smt2.gold => arrays/read_over_weak_eq_lemma_2.smt2.gold} (100%) rename tests/regress/mcsat/{ax/trivially_unsat.smt2.options => arrays/read_over_weak_eq_lemma_2.smt2.options} (100%) rename tests/regress/mcsat/{ax => arrays}/storecomm_t2_np_sf_ai_00060_009.cvc.smt2 (100%) rename tests/regress/mcsat/{ax/trivially_unsat.smt2.gold => arrays/storecomm_t2_np_sf_ai_00060_009.cvc.smt2.gold} (100%) rename tests/regress/mcsat/{ax/unsat_with_decisions.smt2.options => arrays/storecomm_t2_np_sf_ai_00060_009.cvc.smt2.options} (100%) rename tests/regress/mcsat/{ax => arrays}/trivially_unsat.smt2 (100%) rename tests/regress/mcsat/{ax/unsat_with_decisions.smt2.gold => arrays/trivially_unsat.smt2.gold} (100%) create mode 100644 tests/regress/mcsat/arrays/trivially_unsat.smt2.options rename tests/regress/mcsat/{ax => arrays}/unsat_with_decisions.smt2 (100%) create mode 100644 tests/regress/mcsat/arrays/unsat_with_decisions.smt2.gold create mode 100644 tests/regress/mcsat/arrays/unsat_with_decisions.smt2.options diff --git a/tests/regress/mcsat/ax/arr1.smt2 b/tests/regress/mcsat/arrays/arr1.smt2 similarity index 100% rename from tests/regress/mcsat/ax/arr1.smt2 rename to tests/regress/mcsat/arrays/arr1.smt2 diff --git a/tests/regress/mcsat/ax/arr1.smt2.gold b/tests/regress/mcsat/arrays/arr1.smt2.gold similarity index 100% rename from tests/regress/mcsat/ax/arr1.smt2.gold rename to tests/regress/mcsat/arrays/arr1.smt2.gold diff --git a/tests/regress/mcsat/ax/arr1.smt2.options b/tests/regress/mcsat/arrays/arr1.smt2.options similarity index 100% rename from tests/regress/mcsat/ax/arr1.smt2.options rename to tests/regress/mcsat/arrays/arr1.smt2.options diff --git a/tests/regress/mcsat/ax/arrays0.smt2 b/tests/regress/mcsat/arrays/arrays0.smt2 similarity index 100% rename from tests/regress/mcsat/ax/arrays0.smt2 rename to tests/regress/mcsat/arrays/arrays0.smt2 diff --git a/tests/regress/mcsat/ax/arrays0.smt2.gold b/tests/regress/mcsat/arrays/arrays0.smt2.gold similarity index 100% rename from tests/regress/mcsat/ax/arrays0.smt2.gold rename to tests/regress/mcsat/arrays/arrays0.smt2.gold diff --git a/tests/regress/mcsat/ax/arrays0.smt2.options b/tests/regress/mcsat/arrays/arrays0.smt2.options similarity index 100% rename from tests/regress/mcsat/ax/arrays0.smt2.options rename to tests/regress/mcsat/arrays/arrays0.smt2.options diff --git a/tests/regress/mcsat/ax/arrays1.smt2 b/tests/regress/mcsat/arrays/arrays1.smt2 similarity index 100% rename from tests/regress/mcsat/ax/arrays1.smt2 rename to tests/regress/mcsat/arrays/arrays1.smt2 diff --git a/tests/regress/mcsat/ax/arrays1.smt2.gold b/tests/regress/mcsat/arrays/arrays1.smt2.gold similarity index 100% rename from tests/regress/mcsat/ax/arrays1.smt2.gold rename to tests/regress/mcsat/arrays/arrays1.smt2.gold diff --git a/tests/regress/mcsat/ax/arrays1.smt2.options b/tests/regress/mcsat/arrays/arrays1.smt2.options similarity index 100% rename from tests/regress/mcsat/ax/arrays1.smt2.options rename to tests/regress/mcsat/arrays/arrays1.smt2.options diff --git a/tests/regress/mcsat/ax/arrays2.smt2 b/tests/regress/mcsat/arrays/arrays2.smt2 similarity index 100% rename from tests/regress/mcsat/ax/arrays2.smt2 rename to tests/regress/mcsat/arrays/arrays2.smt2 diff --git a/tests/regress/mcsat/ax/arrays2.smt2.gold b/tests/regress/mcsat/arrays/arrays2.smt2.gold similarity index 100% rename from tests/regress/mcsat/ax/arrays2.smt2.gold rename to tests/regress/mcsat/arrays/arrays2.smt2.gold diff --git a/tests/regress/mcsat/ax/arrays2.smt2.options b/tests/regress/mcsat/arrays/arrays2.smt2.options similarity index 100% rename from tests/regress/mcsat/ax/arrays2.smt2.options rename to tests/regress/mcsat/arrays/arrays2.smt2.options diff --git a/tests/regress/mcsat/ax/arrays3.smt2 b/tests/regress/mcsat/arrays/arrays3.smt2 similarity index 100% rename from tests/regress/mcsat/ax/arrays3.smt2 rename to tests/regress/mcsat/arrays/arrays3.smt2 diff --git a/tests/regress/mcsat/ax/arrays3.smt2.gold b/tests/regress/mcsat/arrays/arrays3.smt2.gold similarity index 100% rename from tests/regress/mcsat/ax/arrays3.smt2.gold rename to tests/regress/mcsat/arrays/arrays3.smt2.gold diff --git a/tests/regress/mcsat/ax/arrays3.smt2.options b/tests/regress/mcsat/arrays/arrays3.smt2.options similarity index 100% rename from tests/regress/mcsat/ax/arrays3.smt2.options rename to tests/regress/mcsat/arrays/arrays3.smt2.options diff --git a/tests/regress/mcsat/ax/arrays4.smt2 b/tests/regress/mcsat/arrays/arrays4.smt2 similarity index 100% rename from tests/regress/mcsat/ax/arrays4.smt2 rename to tests/regress/mcsat/arrays/arrays4.smt2 diff --git a/tests/regress/mcsat/ax/arrays4.smt2.gold b/tests/regress/mcsat/arrays/arrays4.smt2.gold similarity index 100% rename from tests/regress/mcsat/ax/arrays4.smt2.gold rename to tests/regress/mcsat/arrays/arrays4.smt2.gold diff --git a/tests/regress/mcsat/ax/arrays4.smt2.options b/tests/regress/mcsat/arrays/arrays4.smt2.options similarity index 100% rename from tests/regress/mcsat/ax/arrays4.smt2.options rename to tests/regress/mcsat/arrays/arrays4.smt2.options diff --git a/tests/regress/mcsat/arrays/arrays5.ys b/tests/regress/mcsat/arrays/arrays5.ys new file mode 100644 index 000000000..e691db5e9 --- /dev/null +++ b/tests/regress/mcsat/arrays/arrays5.ys @@ -0,0 +1,21 @@ +;; test for Yices (taken from SMT 2008 paper by Sava Krstic et al.) + +(define-type Index) +(define-type Element) +(define-type Array (-> Index Index Element)) + +(define a::Array) +(define b::Array) +(define i0::Index) +(define i1::Index) +(define x0::Element) +(define x1::Element) + + +(assert (not (= (update (update a (i0 i1) x0) (i1 i0) x1) + (update (update b (i1 i0) x1) (i0 i1) x0)))) + +(assert (= a b)) + +(check) + diff --git a/tests/regress/mcsat/ax/arrays_extensionality_no_selects.smt2.gold b/tests/regress/mcsat/arrays/arrays5.ys.gold similarity index 100% rename from tests/regress/mcsat/ax/arrays_extensionality_no_selects.smt2.gold rename to tests/regress/mcsat/arrays/arrays5.ys.gold diff --git a/tests/regress/mcsat/ax/arrays_extensionality_no_selects.smt2.options b/tests/regress/mcsat/arrays/arrays5.ys.options similarity index 100% rename from tests/regress/mcsat/ax/arrays_extensionality_no_selects.smt2.options rename to tests/regress/mcsat/arrays/arrays5.ys.options diff --git a/tests/regress/mcsat/arrays/arrays6.ys b/tests/regress/mcsat/arrays/arrays6.ys new file mode 100644 index 000000000..dded46eab --- /dev/null +++ b/tests/regress/mcsat/arrays/arrays6.ys @@ -0,0 +1,21 @@ +;; test for Yices (taken from SMT 2008 paper by Sava Krstic et al.) + +(define-type Index) +(define-type Element) +(define-type Array (-> Index Index Element)) + +(define a::Array) +(define b::Array) +(define i0::Index) +(define i1::Index) +(define x0::Element) +(define x1::Element) + + +(assert (not (= (update (update a (i0 i1) x0) (i1 i0) x1) + (update (update b (i1 i0) x1) (i0 i1) x0)))) + +(assert (= a b)) + +(assert (not (= i0 i1))) +(check) diff --git a/tests/regress/mcsat/ax/arrays_extensionality_no_selects_unsat.smt2.gold b/tests/regress/mcsat/arrays/arrays6.ys.gold similarity index 100% rename from tests/regress/mcsat/ax/arrays_extensionality_no_selects_unsat.smt2.gold rename to tests/regress/mcsat/arrays/arrays6.ys.gold diff --git a/tests/regress/mcsat/ax/arrays_extensionality_no_selects_unsat.smt2.options b/tests/regress/mcsat/arrays/arrays6.ys.options similarity index 100% rename from tests/regress/mcsat/ax/arrays_extensionality_no_selects_unsat.smt2.options rename to tests/regress/mcsat/arrays/arrays6.ys.options diff --git a/tests/regress/mcsat/ax/arrays_extensionality_no_selects.smt2 b/tests/regress/mcsat/arrays/arrays_extensionality_no_selects.smt2 similarity index 100% rename from tests/regress/mcsat/ax/arrays_extensionality_no_selects.smt2 rename to tests/regress/mcsat/arrays/arrays_extensionality_no_selects.smt2 diff --git a/tests/regress/mcsat/ax/frugal10.ys.gold b/tests/regress/mcsat/arrays/arrays_extensionality_no_selects.smt2.gold similarity index 100% rename from tests/regress/mcsat/ax/frugal10.ys.gold rename to tests/regress/mcsat/arrays/arrays_extensionality_no_selects.smt2.gold diff --git a/tests/regress/mcsat/ax/bool-array.smt2.options b/tests/regress/mcsat/arrays/arrays_extensionality_no_selects.smt2.options similarity index 100% rename from tests/regress/mcsat/ax/bool-array.smt2.options rename to tests/regress/mcsat/arrays/arrays_extensionality_no_selects.smt2.options diff --git a/tests/regress/mcsat/ax/arrays_extensionality_no_selects_unsat.smt2 b/tests/regress/mcsat/arrays/arrays_extensionality_no_selects_unsat.smt2 similarity index 100% rename from tests/regress/mcsat/ax/arrays_extensionality_no_selects_unsat.smt2 rename to tests/regress/mcsat/arrays/arrays_extensionality_no_selects_unsat.smt2 diff --git a/tests/regress/mcsat/ax/bool-array.smt2.gold b/tests/regress/mcsat/arrays/arrays_extensionality_no_selects_unsat.smt2.gold similarity index 100% rename from tests/regress/mcsat/ax/bool-array.smt2.gold rename to tests/regress/mcsat/arrays/arrays_extensionality_no_selects_unsat.smt2.gold diff --git a/tests/regress/mcsat/ax/example_weqa.smt2.options b/tests/regress/mcsat/arrays/arrays_extensionality_no_selects_unsat.smt2.options similarity index 100% rename from tests/regress/mcsat/ax/example_weqa.smt2.options rename to tests/regress/mcsat/arrays/arrays_extensionality_no_selects_unsat.smt2.options diff --git a/tests/regress/mcsat/ax/bool-array.smt2 b/tests/regress/mcsat/arrays/bool-array.smt2 similarity index 100% rename from tests/regress/mcsat/ax/bool-array.smt2 rename to tests/regress/mcsat/arrays/bool-array.smt2 diff --git a/tests/regress/mcsat/ax/example_weqa.smt2.gold b/tests/regress/mcsat/arrays/bool-array.smt2.gold similarity index 100% rename from tests/regress/mcsat/ax/example_weqa.smt2.gold rename to tests/regress/mcsat/arrays/bool-array.smt2.gold diff --git a/tests/regress/mcsat/ax/frugal10.ys.options b/tests/regress/mcsat/arrays/bool-array.smt2.options similarity index 100% rename from tests/regress/mcsat/ax/frugal10.ys.options rename to tests/regress/mcsat/arrays/bool-array.smt2.options diff --git a/tests/regress/mcsat/ax/example_weqa.smt2 b/tests/regress/mcsat/arrays/example_weqa.smt2 similarity index 100% rename from tests/regress/mcsat/ax/example_weqa.smt2 rename to tests/regress/mcsat/arrays/example_weqa.smt2 diff --git a/tests/regress/mcsat/ax/read_over_weak_eq_lemma_2.smt2.gold b/tests/regress/mcsat/arrays/example_weqa.smt2.gold similarity index 100% rename from tests/regress/mcsat/ax/read_over_weak_eq_lemma_2.smt2.gold rename to tests/regress/mcsat/arrays/example_weqa.smt2.gold diff --git a/tests/regress/mcsat/ax/frugal10a.ys.options b/tests/regress/mcsat/arrays/example_weqa.smt2.options similarity index 100% rename from tests/regress/mcsat/ax/frugal10a.ys.options rename to tests/regress/mcsat/arrays/example_weqa.smt2.options diff --git a/tests/regress/mcsat/ax/frugal10.ys b/tests/regress/mcsat/arrays/frugal10.ys similarity index 100% rename from tests/regress/mcsat/ax/frugal10.ys rename to tests/regress/mcsat/arrays/frugal10.ys diff --git a/tests/regress/mcsat/ax/frugal10a.ys.gold b/tests/regress/mcsat/arrays/frugal10.ys.gold similarity index 100% rename from tests/regress/mcsat/ax/frugal10a.ys.gold rename to tests/regress/mcsat/arrays/frugal10.ys.gold diff --git a/tests/regress/mcsat/ax/frugal10bool.smt2.otions b/tests/regress/mcsat/arrays/frugal10.ys.options similarity index 100% rename from tests/regress/mcsat/ax/frugal10bool.smt2.otions rename to tests/regress/mcsat/arrays/frugal10.ys.options diff --git a/tests/regress/mcsat/ax/frugal10a.ys b/tests/regress/mcsat/arrays/frugal10a.ys similarity index 100% rename from tests/regress/mcsat/ax/frugal10a.ys rename to tests/regress/mcsat/arrays/frugal10a.ys diff --git a/tests/regress/mcsat/ax/frugal10bool.smt2.gold b/tests/regress/mcsat/arrays/frugal10a.ys.gold similarity index 100% rename from tests/regress/mcsat/ax/frugal10bool.smt2.gold rename to tests/regress/mcsat/arrays/frugal10a.ys.gold diff --git a/tests/regress/mcsat/ax/frugal10bool.ys.options b/tests/regress/mcsat/arrays/frugal10a.ys.options similarity index 100% rename from tests/regress/mcsat/ax/frugal10bool.ys.options rename to tests/regress/mcsat/arrays/frugal10a.ys.options diff --git a/tests/regress/mcsat/ax/frugal10bool.smt2 b/tests/regress/mcsat/arrays/frugal10bool.smt2 similarity index 100% rename from tests/regress/mcsat/ax/frugal10bool.smt2 rename to tests/regress/mcsat/arrays/frugal10bool.smt2 diff --git a/tests/regress/mcsat/ax/frugal10bool.ys.gold b/tests/regress/mcsat/arrays/frugal10bool.smt2.gold similarity index 100% rename from tests/regress/mcsat/ax/frugal10bool.ys.gold rename to tests/regress/mcsat/arrays/frugal10bool.smt2.gold diff --git a/tests/regress/mcsat/ax/read_over_weak_eq_lemma.smt2.options b/tests/regress/mcsat/arrays/frugal10bool.smt2.otions similarity index 100% rename from tests/regress/mcsat/ax/read_over_weak_eq_lemma.smt2.options rename to tests/regress/mcsat/arrays/frugal10bool.smt2.otions diff --git a/tests/regress/mcsat/ax/frugal10bool.ys b/tests/regress/mcsat/arrays/frugal10bool.ys similarity index 100% rename from tests/regress/mcsat/ax/frugal10bool.ys rename to tests/regress/mcsat/arrays/frugal10bool.ys diff --git a/tests/regress/mcsat/ax/read_over_weak_eq_lemma.smt2.gold b/tests/regress/mcsat/arrays/frugal10bool.ys.gold similarity index 100% rename from tests/regress/mcsat/ax/read_over_weak_eq_lemma.smt2.gold rename to tests/regress/mcsat/arrays/frugal10bool.ys.gold diff --git a/tests/regress/mcsat/ax/read_over_weak_eq_lemma_2.smt2.options b/tests/regress/mcsat/arrays/frugal10bool.ys.options similarity index 100% rename from tests/regress/mcsat/ax/read_over_weak_eq_lemma_2.smt2.options rename to tests/regress/mcsat/arrays/frugal10bool.ys.options diff --git a/tests/regress/mcsat/ax/read_over_weak_eq_lemma.smt2 b/tests/regress/mcsat/arrays/read_over_weak_eq_lemma.smt2 similarity index 100% rename from tests/regress/mcsat/ax/read_over_weak_eq_lemma.smt2 rename to tests/regress/mcsat/arrays/read_over_weak_eq_lemma.smt2 diff --git a/tests/regress/mcsat/arrays/read_over_weak_eq_lemma.smt2.gold b/tests/regress/mcsat/arrays/read_over_weak_eq_lemma.smt2.gold new file mode 100644 index 000000000..6b8a2c3d2 --- /dev/null +++ b/tests/regress/mcsat/arrays/read_over_weak_eq_lemma.smt2.gold @@ -0,0 +1 @@ +sat diff --git a/tests/regress/mcsat/ax/storecomm_t2_np_sf_ai_00060_009.cvc.smt2.options b/tests/regress/mcsat/arrays/read_over_weak_eq_lemma.smt2.options similarity index 100% rename from tests/regress/mcsat/ax/storecomm_t2_np_sf_ai_00060_009.cvc.smt2.options rename to tests/regress/mcsat/arrays/read_over_weak_eq_lemma.smt2.options diff --git a/tests/regress/mcsat/ax/read_over_weak_eq_lemma_2.smt2 b/tests/regress/mcsat/arrays/read_over_weak_eq_lemma_2.smt2 similarity index 100% rename from tests/regress/mcsat/ax/read_over_weak_eq_lemma_2.smt2 rename to tests/regress/mcsat/arrays/read_over_weak_eq_lemma_2.smt2 diff --git a/tests/regress/mcsat/ax/storecomm_t2_np_sf_ai_00060_009.cvc.smt2.gold b/tests/regress/mcsat/arrays/read_over_weak_eq_lemma_2.smt2.gold similarity index 100% rename from tests/regress/mcsat/ax/storecomm_t2_np_sf_ai_00060_009.cvc.smt2.gold rename to tests/regress/mcsat/arrays/read_over_weak_eq_lemma_2.smt2.gold diff --git a/tests/regress/mcsat/ax/trivially_unsat.smt2.options b/tests/regress/mcsat/arrays/read_over_weak_eq_lemma_2.smt2.options similarity index 100% rename from tests/regress/mcsat/ax/trivially_unsat.smt2.options rename to tests/regress/mcsat/arrays/read_over_weak_eq_lemma_2.smt2.options diff --git a/tests/regress/mcsat/ax/storecomm_t2_np_sf_ai_00060_009.cvc.smt2 b/tests/regress/mcsat/arrays/storecomm_t2_np_sf_ai_00060_009.cvc.smt2 similarity index 100% rename from tests/regress/mcsat/ax/storecomm_t2_np_sf_ai_00060_009.cvc.smt2 rename to tests/regress/mcsat/arrays/storecomm_t2_np_sf_ai_00060_009.cvc.smt2 diff --git a/tests/regress/mcsat/ax/trivially_unsat.smt2.gold b/tests/regress/mcsat/arrays/storecomm_t2_np_sf_ai_00060_009.cvc.smt2.gold similarity index 100% rename from tests/regress/mcsat/ax/trivially_unsat.smt2.gold rename to tests/regress/mcsat/arrays/storecomm_t2_np_sf_ai_00060_009.cvc.smt2.gold diff --git a/tests/regress/mcsat/ax/unsat_with_decisions.smt2.options b/tests/regress/mcsat/arrays/storecomm_t2_np_sf_ai_00060_009.cvc.smt2.options similarity index 100% rename from tests/regress/mcsat/ax/unsat_with_decisions.smt2.options rename to tests/regress/mcsat/arrays/storecomm_t2_np_sf_ai_00060_009.cvc.smt2.options diff --git a/tests/regress/mcsat/ax/trivially_unsat.smt2 b/tests/regress/mcsat/arrays/trivially_unsat.smt2 similarity index 100% rename from tests/regress/mcsat/ax/trivially_unsat.smt2 rename to tests/regress/mcsat/arrays/trivially_unsat.smt2 diff --git a/tests/regress/mcsat/ax/unsat_with_decisions.smt2.gold b/tests/regress/mcsat/arrays/trivially_unsat.smt2.gold similarity index 100% rename from tests/regress/mcsat/ax/unsat_with_decisions.smt2.gold rename to tests/regress/mcsat/arrays/trivially_unsat.smt2.gold diff --git a/tests/regress/mcsat/arrays/trivially_unsat.smt2.options b/tests/regress/mcsat/arrays/trivially_unsat.smt2.options new file mode 100644 index 000000000..bcf7e6dae --- /dev/null +++ b/tests/regress/mcsat/arrays/trivially_unsat.smt2.options @@ -0,0 +1 @@ +--mcsat diff --git a/tests/regress/mcsat/ax/unsat_with_decisions.smt2 b/tests/regress/mcsat/arrays/unsat_with_decisions.smt2 similarity index 100% rename from tests/regress/mcsat/ax/unsat_with_decisions.smt2 rename to tests/regress/mcsat/arrays/unsat_with_decisions.smt2 diff --git a/tests/regress/mcsat/arrays/unsat_with_decisions.smt2.gold b/tests/regress/mcsat/arrays/unsat_with_decisions.smt2.gold new file mode 100644 index 000000000..3f65111b0 --- /dev/null +++ b/tests/regress/mcsat/arrays/unsat_with_decisions.smt2.gold @@ -0,0 +1 @@ +unsat diff --git a/tests/regress/mcsat/arrays/unsat_with_decisions.smt2.options b/tests/regress/mcsat/arrays/unsat_with_decisions.smt2.options new file mode 100644 index 000000000..bcf7e6dae --- /dev/null +++ b/tests/regress/mcsat/arrays/unsat_with_decisions.smt2.options @@ -0,0 +1 @@ +--mcsat From eb46358378f88496bb8457e628bbf9131f130cae Mon Sep 17 00:00:00 2001 From: Valentyn Sobol Date: Wed, 22 Mar 2023 21:53:12 +0300 Subject: [PATCH 093/182] Hash table remove fix (#435) --- src/utils/symbol_tables.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/utils/symbol_tables.c b/src/utils/symbol_tables.c index 8668f71f0..040b4e546 100644 --- a/src/utils/symbol_tables.c +++ b/src/utils/symbol_tables.c @@ -526,6 +526,7 @@ void stbl_remove_records(stbl_t *sym_table, void *aux, stbl_filter_t f) { // keep r *q = r; q = &r->next; + r = p; } } *q = NULL; From db898586b6735d5c924494a431cba251e3459dd2 Mon Sep 17 00:00:00 2001 From: Ahmed <43099566+ahmed-irfan@users.noreply.github.com> Date: Tue, 28 Mar 2023 11:20:05 -0700 Subject: [PATCH 094/182] Mcsat -- keep binary clauses (#436) * keep binary clauses * disabled problematic regression test * fix --- src/mcsat/bool/bool_plugin.c | 11 +++++++++++ ...brp_withassume.t2__terminationS_7_0.smt2.disabled} | 0 2 files changed, 11 insertions(+) rename tests/regress/mcsat/nia/{From_T2__brp_withassume.t2__terminationS_7_0.smt2 => From_T2__brp_withassume.t2__terminationS_7_0.smt2.disabled} (100%) diff --git a/src/mcsat/bool/bool_plugin.c b/src/mcsat/bool/bool_plugin.c index f14fba70e..1285fcf85 100644 --- a/src/mcsat/bool/bool_plugin.c +++ b/src/mcsat/bool/bool_plugin.c @@ -863,6 +863,7 @@ void bool_plugin_gc_mark(plugin_t* plugin, gc_info_t* gc_vars) { uint32_t i; variable_t var; clause_ref_t clause_ref; + mcsat_clause_t* c; if (gc_vars->level == 0) { @@ -885,6 +886,16 @@ void bool_plugin_gc_mark(plugin_t* plugin, gc_info_t* gc_vars) { clause_ref = bool_plugin_get_reason_ref(bp, var); gc_info_mark(&bp->gc_clauses, clause_ref); } + + // keep binary clauses + for (i = 0; i < bp->lemmas.size; ++ i) { + clause_ref = bp->lemmas.data[i]; + assert(clause_db_is_clause(db, clause_ref, true)); + c = clause_db_get_clause(&bp->clause_db, clause_ref); + if (c->size <= 2) { + gc_info_mark(&bp->gc_clauses, clause_ref); + } + } } // Mark all the CNF definitions diff --git a/tests/regress/mcsat/nia/From_T2__brp_withassume.t2__terminationS_7_0.smt2 b/tests/regress/mcsat/nia/From_T2__brp_withassume.t2__terminationS_7_0.smt2.disabled similarity index 100% rename from tests/regress/mcsat/nia/From_T2__brp_withassume.t2__terminationS_7_0.smt2 rename to tests/regress/mcsat/nia/From_T2__brp_withassume.t2__terminationS_7_0.smt2.disabled From 10082b3b379b45f12a78b1302bd2a44407c79d3a Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Thu, 6 Apr 2023 10:37:47 -0700 Subject: [PATCH 095/182] give more weightage to bool reasons during clause learning --- src/mcsat/bool/bool_plugin.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/mcsat/bool/bool_plugin.c b/src/mcsat/bool/bool_plugin.c index 1285fcf85..85c2d5484 100644 --- a/src/mcsat/bool/bool_plugin.c +++ b/src/mcsat/bool/bool_plugin.c @@ -94,6 +94,9 @@ typedef struct { /** Increase of the lemma limit after gc */ float lemma_limit_factor; + /** bump factor for bool vars -- geq 1. Higher number means more weightage **/ + uint32_t bool_var_bump_factor; + } heuristic_params; struct { @@ -126,6 +129,9 @@ void bool_plugin_heuristics_init(bool_plugin_t* bp) { // Clause database compact bp->heuristic_params.lemma_limit_init = 1000; bp->heuristic_params.lemma_limit_factor = 1.02; + + // Bool var scoring + bp->heuristic_params.bool_var_bump_factor = 5; } static @@ -749,8 +755,9 @@ term_t bool_plugin_explain_propagation(plugin_t* plugin, variable_t var, ivector } ivector_push(reasons, opposite_term(t_i)); - // Bump the reason variable - bp->ctx->bump_variable(bp->ctx, x_i); + // Bump the reason variable -- give more weightage to boolean reasons + bp->ctx->bump_variable_n(bp->ctx, x_i, + bp->heuristic_params.bool_var_bump_factor); } // Bump the clause as useful From 1c8923f4ba1cbbd4bec2914fcd2a1f7e60c47b25 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Thu, 6 Apr 2023 11:01:46 -0700 Subject: [PATCH 096/182] don't string match the produced interpolant -- it can change --- tests/regress/mcsat/nra/assumptions/issue261.smt2 | 2 +- tests/regress/mcsat/nra/assumptions/issue261.smt2.gold | 10 ---------- 2 files changed, 1 insertion(+), 11 deletions(-) diff --git a/tests/regress/mcsat/nra/assumptions/issue261.smt2 b/tests/regress/mcsat/nra/assumptions/issue261.smt2 index 4960cf8b7..9749609b9 100644 --- a/tests/regress/mcsat/nra/assumptions/issue261.smt2 +++ b/tests/regress/mcsat/nra/assumptions/issue261.smt2 @@ -1984,4 +1984,4 @@ e1979 )))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) (check-sat-assuming-model (v0) ((/ (- 75) 58))) -(get-unsat-model-interpolant) +;;(get-unsat-model-interpolant) diff --git a/tests/regress/mcsat/nra/assumptions/issue261.smt2.gold b/tests/regress/mcsat/nra/assumptions/issue261.smt2.gold index fe591fcf7..3f65111b0 100644 --- a/tests/regress/mcsat/nra/assumptions/issue261.smt2.gold +++ b/tests/regress/mcsat/nra/assumptions/issue261.smt2.gold @@ -1,11 +1 @@ unsat -(or (< (+ -180841357257/2612 (* 444710031/2 (^ v0 2))) 0) (>= (* -1 (^ v0 2)) 0) (< (+ 2568250217007/5224 (* -1 v0)) 0) (= (^ v0 2) -1/27794700) - (>= (+ -1 (* -1 (^ v0 2))) 0) (>= (+ -3379123281/8 v0 (* -8906187/4 (^ v0 2))) 0) (>= (+ 222194717/3379123281 (* -2 (^ v0 2))) 0) - (>= (+ -162883/3379123281 (* -2 (^ v0 2))) 0) (< (+ -1/27794700 (* -1 v0)) 0) (= (^ v0 2) 222194717/3379123281) (= (^ v0 2) -6892) (< (^ v0 2) 0) - (= v0 104957259/1306) (= (^ v0 2) 180841357257/2612) (>= (+ -3379123281/8 v0) 0) (>= (+ 16152313/55589400 (* -3 (^ v0 2))) 0) (= (^ v0 2) 0) - (< (+ 6892 (* -1 (^ v0 2))) 0) (< (+ 1/27794700 (^ v0 2)) 0) (= (^ v0 2) -1/222357600) (= (^ v0 2) -1723/13516493124) (= (^ v0 2) 3379123281/16) - (>= (+ -3379123281/8 (* -1 (^ v0 2))) 0) (= (^ v0 2) 34985753/96798550081) (= (^ v0 2) -3446) - (>= (+ -22313794156579651/62614478572273800 (* -2 (^ v0 2))) 0) (< (+ -1/27794700 (* 3 (^ v0 2))) 0) (< (+ 18310751/34985753 (^ v0 2)) 0) - (< (+ -653/111178800 (* -1 v0)) 0) (>= (+ 1 (* -1 (^ v0 2))) 0) (< (+ 18310751/34985753 (* 3 (^ v0 2))) 0) (>= v0 0) (>= (+ -3379123281 (* 8 v0)) 0) - (>= (+ -180841357257 (* 2612 v0)) 0) (>= (+ -3379116389 (* 8 v0)) 0) (>= (+ -3379123281 (* 2612 (^ v0 2))) 0) (>= (+ 3446 (* -162883 (^ v0 2))) 0) - (>= (+ 162883 (* -6758246562 (^ v0 2))) 0) (>= (+ 16152313 (* -375686871433642800 (^ v0 2))) 0) (>= (+ 222194717 (* -751373742867285600 (^ v0 2))) 0)) From fca90c671bc3ec280760c2c17f25024b80f8d84d Mon Sep 17 00:00:00 2001 From: Ahmed <43099566+ahmed-irfan@users.noreply.github.com> Date: Wed, 12 Apr 2023 17:53:20 -0700 Subject: [PATCH 097/182] Mcsat imp reducedb (#438) * update bool reduce-db heuristic * update lemma limit heuristic parameters --- src/mcsat/bool/bool_plugin.c | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/src/mcsat/bool/bool_plugin.c b/src/mcsat/bool/bool_plugin.c index 85c2d5484..466f677df 100644 --- a/src/mcsat/bool/bool_plugin.c +++ b/src/mcsat/bool/bool_plugin.c @@ -123,12 +123,12 @@ static void bool_plugin_heuristics_init(bool_plugin_t* bp) { // Clause scoring bp->heuristic_params.clause_score_bump_factor = 1; - bp->heuristic_params.clause_score_decay_factor = 0.95; + bp->heuristic_params.clause_score_decay_factor = 0.999; bp->heuristic_params.clause_score_limit = 1e20; // Clause database compact - bp->heuristic_params.lemma_limit_init = 1000; - bp->heuristic_params.lemma_limit_factor = 1.02; + bp->heuristic_params.lemma_limit_init = 2000; + bp->heuristic_params.lemma_limit_factor = 1.1; // Bool var scoring bp->heuristic_params.bool_var_bump_factor = 5; @@ -868,9 +868,11 @@ void bool_plugin_gc_mark(plugin_t* plugin, gc_info_t* gc_vars) { clause_db_t* db = &bp->clause_db; uint32_t i; + float act_threshold; variable_t var; clause_ref_t clause_ref; mcsat_clause_t* c; + mcsat_clause_tag_t *c_tag; if (gc_vars->level == 0) { @@ -880,10 +882,19 @@ void bool_plugin_gc_mark(plugin_t* plugin, gc_info_t* gc_vars) { // Sort the lemmas based on scores int_array_sort2(bp->lemmas.data, bp->lemmas.size, (void*) db, bool_plugin_clause_compare_for_removal); + // avg activity score + act_threshold = bp->heuristic_params.clause_score_bump_factor / bp->lemmas.size; + // Mark all the variables in half of lemmas as used for (i = 0; i < bp->lemmas.size / 2; ++ i) { clause_ref = bp->lemmas.data[i]; assert(clause_db_is_clause(db, clause_ref, true)); + c_tag = clause_db_get_tag(db, clause_ref); + if (c_tag->score <= act_threshold) { + // consider clauses with score higher than the avg activity score + // since the clauses are sorted according to their scores, we break here + break; + } gc_info_mark(&bp->gc_clauses, clause_ref); } From b0de4372ca8831d3c52bc042fa80ca3b8715c1f9 Mon Sep 17 00:00:00 2001 From: Ahmed <43099566+ahmed-irfan@users.noreply.github.com> Date: Wed, 12 Apr 2023 18:39:06 -0700 Subject: [PATCH 098/182] fix array check (#439) --- src/mcsat/uf/uf_plugin.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index 72030ee3c..2b742cd24 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -343,7 +343,7 @@ void uf_plugin_propagate(plugin_t* plugin, trail_token_t* prop) { // Propagate known terms eq_graph_propagate_trail(&uf->eq_graph); - bool eq_propagated = uf_plugin_process_eq_graph_propagations(uf, prop); + uf_plugin_process_eq_graph_propagations(uf, prop); // Check for conflicts if (uf->eq_graph.in_conflict) { @@ -374,9 +374,7 @@ void uf_plugin_propagate(plugin_t* plugin, trail_token_t* prop) { } } - // skip array propagation if the EQ has done propgation - // check array propgation only if array terms are present - if (!eq_propagated && all_assigned) { + if (all_assigned) { assert(uf->conflict.size == 0); weq_graph_check_array_conflict(&uf->weq_graph, &uf->conflict); if (uf->conflict.size > 0) { From f5b4e1811a09bec0574a36c99e790af4b05f210b Mon Sep 17 00:00:00 2001 From: Ahmed <43099566+ahmed-irfan@users.noreply.github.com> Date: Thu, 13 Apr 2023 09:38:09 -0700 Subject: [PATCH 099/182] Update bool_plugin.c --- src/mcsat/bool/bool_plugin.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mcsat/bool/bool_plugin.c b/src/mcsat/bool/bool_plugin.c index 466f677df..9e4feefa9 100644 --- a/src/mcsat/bool/bool_plugin.c +++ b/src/mcsat/bool/bool_plugin.c @@ -127,7 +127,7 @@ void bool_plugin_heuristics_init(bool_plugin_t* bp) { bp->heuristic_params.clause_score_limit = 1e20; // Clause database compact - bp->heuristic_params.lemma_limit_init = 2000; + bp->heuristic_params.lemma_limit_init = 1000; bp->heuristic_params.lemma_limit_factor = 1.1; // Bool var scoring From 4d9a389d54b1301f774d6f6426483c8381acb075 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Mon, 24 Apr 2023 18:40:00 -0700 Subject: [PATCH 100/182] fixes #440 --- src/mcsat/preprocessor.c | 4 +++- tests/regress/mcsat/issue440.smt2 | 24 ++++++++++++++++++++++++ tests/regress/mcsat/issue440.smt2.gold | 2 ++ 3 files changed, 29 insertions(+), 1 deletion(-) create mode 100644 tests/regress/mcsat/issue440.smt2 create mode 100644 tests/regress/mcsat/issue440.smt2.gold diff --git a/src/mcsat/preprocessor.c b/src/mcsat/preprocessor.c index 1ebabe0a0..3ccebcc4a 100644 --- a/src/mcsat/preprocessor.c +++ b/src/mcsat/preprocessor.c @@ -505,9 +505,11 @@ term_t preprocessor_apply(preprocessor_t* pre, term_t t, ivector_t* out, bool is current_kind == BV_EQ_ATOM || current_kind == ARITH_BINEQ_ATOM || current_kind == ARITH_EQ_ATOM; + // don't rewrite if the equality is between Boolean terms + bool is_boolean = is_boolean_type(term_type(pre->terms, desc->arg[0])); term_t eq_solve_var = NULL_TERM; - if (is_assertion && is_equality) { + if (is_assertion && is_equality && !is_boolean) { if (current == t) { eq_solve_var = preprocessor_get_eq_solved_var(pre, t); if (eq_solve_var == NULL_TERM) { diff --git a/tests/regress/mcsat/issue440.smt2 b/tests/regress/mcsat/issue440.smt2 new file mode 100644 index 000000000..a66da8d48 --- /dev/null +++ b/tests/regress/mcsat/issue440.smt2 @@ -0,0 +1,24 @@ +(set-option :print-success false) +(set-option :produce-models true) +(set-logic QF_UFNIA) +(declare-fun Y () Bool) +(declare-fun X () Bool) +(declare-fun Z () Bool) +(declare-fun a () Int) +(declare-fun b () Int) +(declare-fun c () Int) +(declare-fun f (Int) Int) +(assert + (= X + (=> + (> (f a) 0) + (=> + (= c (mod b 10)) + (=> Y Z) + ) + ) + ) +) +(assert (not X)) +(check-sat) +(get-value (X)) diff --git a/tests/regress/mcsat/issue440.smt2.gold b/tests/regress/mcsat/issue440.smt2.gold new file mode 100644 index 000000000..988fe6cd1 --- /dev/null +++ b/tests/regress/mcsat/issue440.smt2.gold @@ -0,0 +1,2 @@ +sat +((X false)) From 5c440f41ac227efc6565ea089f41a17aaeaa6013 Mon Sep 17 00:00:00 2001 From: Ahmed <43099566+ahmed-irfan@users.noreply.github.com> Date: Sat, 29 Apr 2023 00:22:43 -0700 Subject: [PATCH 101/182] mcsat arrays finite (#442) * mcsat arrays finite extra read term is only added if the index is finite * add new test; disabled old test --- src/mcsat/uf/uf_plugin.c | 10 +- ...blast.01_false-unreach-call.i.cil.c_0.smt2 | 4197 +++++++++++++++++ ...01_false-unreach-call.i.cil.c_0.smt2.gold} | 0 ...alse-unreach-call.i.cil.c_0.smt2.disabled} | 0 4 files changed, 4203 insertions(+), 4 deletions(-) create mode 100644 tests/regress/mcsat/s3_clnt.blast.01_false-unreach-call.i.cil.c_0.smt2 rename tests/regress/mcsat/{s3_srvr.blast.01_false-unreach-call.i.cil.c_0.smt2.gold => s3_clnt.blast.01_false-unreach-call.i.cil.c_0.smt2.gold} (100%) rename tests/regress/mcsat/{s3_srvr.blast.01_false-unreach-call.i.cil.c_0.smt2 => s3_srvr.blast.01_false-unreach-call.i.cil.c_0.smt2.disabled} (100%) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index 2b742cd24..332feba12 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -233,10 +233,12 @@ void uf_plugin_add_to_eq_graph(uf_plugin_t* uf, term_t t, bool record) { term_t r1 = app_term(terms, t, t_desc->arity - 2, t_desc->arg + 1); variable_db_get_variable(uf->ctx->var_db, r1); weq_graph_add_select_term(&uf->weq_graph, r1); - // TODO: can we check if the domain is finite? if so, we can guard this extra select term - term_t r2 = app_term(terms, t_desc->arg[0], t_desc->arity - 2, t_desc->arg + 1); - variable_db_get_variable(uf->ctx->var_db, r2); - weq_graph_add_select_term(&uf->weq_graph, r2); + // if the domain is finite then we add this extra read term + if (is_finite_type(terms->types, term_type(terms, t_desc->arg[1]))) { + term_t r2 = app_term(terms, t_desc->arg[0], t_desc->arity - 2, t_desc->arg + 1); + variable_db_get_variable(uf->ctx->var_db, r2); + weq_graph_add_select_term(&uf->weq_graph, r2); + } break; case ARITH_RDIV: t_desc = arith_rdiv_term_desc(terms, t); diff --git a/tests/regress/mcsat/s3_clnt.blast.01_false-unreach-call.i.cil.c_0.smt2 b/tests/regress/mcsat/s3_clnt.blast.01_false-unreach-call.i.cil.c_0.smt2 new file mode 100644 index 000000000..9b862aedb --- /dev/null +++ b/tests/regress/mcsat/s3_clnt.blast.01_false-unreach-call.i.cil.c_0.smt2 @@ -0,0 +1,4197 @@ +(set-info :smt-lib-version 2.6) +(set-logic QF_AUFNIA) +(set-info + :source | +SMT script generated by Ultimate Automizer [1,2]. +Ultimate Automizer is an automatic software verification tool that implements +a new automata-theoretic approach[3]. + +This SMT script belongs to a set of SMT scripts that was generated by applying +Ultimate Automizer to benchmarks from the SV-COMP 2015 [4,5] which are available +at [6]. + +This script does _not_ contain all SMT commands that are used by Ultimate +Automizer while verifying a program. In order to fulfill the restrictions of +the main track at SMT-COMP this script contains only the commands that are +sufficient to reproduce one single satisfiablity check. + +2015-04-30, Matthias Heizmann (heizmann@informatik.uni-freiburg.de) + + +[1] https://ultimate.informatik.uni-freiburg.de/automizer/ +[2] Matthias Heizmann, Daniel Dietsch, Jan Leike, Betim Musa, Andreas Podelski: +Ultimate Automizer with Array Interpolation - (Competition Contribution). +TACAS 2015: 455-457 +[3] Matthias Heizmann, Jochen Hoenicke, Andreas Podelski: Software Model +Checking for People Who Love Automata. CAV 2013:36-52 +[4] Dirk Beyer: Software Verification and Verifiable Witnesses - (Report on +SV-COMP 2015). TACAS 2015: 401-416 +[5] http://sv-comp.sosy-lab.org/2015/ +[6] https://svn.sosy-lab.org/software/sv-benchmarks/tags/svcomp15/ + + +Made compatible to SMT-COMP rules by SMTInterpol +|) +(set-info :category "industrial") +(set-info :status sat) +(define-sort ~__time_t () Int) +(define-sort ~time_t () ~__time_t) +(define-sort ~ASN1_BOOLEAN () Int) +(define-sort ~des_cblock () (Array Int Int)) +(declare-sort STRUCT~AUTHORITY_KEYID_st 0) +(declare-fun |#funAddr~ssl3_connect.base| () Int) +(declare-fun |#funAddr~ssl3_connect.offset| () Int) +(declare-fun |#funAddr~ssl3_get_client_method.base| () Int) +(declare-fun |#funAddr~ssl3_get_client_method.offset| () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~version| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~type| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~method| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~rbio| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~wbio| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~bbio| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~rwstate| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~in_handshake| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~handshake_func| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~server| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~new_session| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~quiet_shutdown| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~shutdown| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~rstate| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_buf| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_off| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~packet| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~packet_length| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s2| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~read_ahead| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~hit| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~purpose| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~trust| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~cipher_list| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~cipher_list_by_id| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~enc_read_ctx| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~read_hash| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~expand| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~enc_write_ctx| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~write_hash| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~compress| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~cert| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~sid_ctx_length| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~sid_ctx| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~session| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~verify_mode| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~verify_depth| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~verify_callback| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~info_callback| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~error| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~error_code| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~ctx| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~debug| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~verify_result| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~ex_data| + () Int) +(declare-fun |#offset~STRUCT#?sk~$Pointer$?dummy~INT#~sk| () Int) +(declare-fun |#offset~STRUCT#?sk~$Pointer$?dummy~INT#~dummy| () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~client_CA| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~references| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~options| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~mode| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~first_packet| + () Int) +(declare-fun + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~client_version| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~flags| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~delay_buf_pop_ret| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~read_sequence| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~read_mac_secret| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~write_sequence| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~write_mac_secret| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~server_random| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~client_random| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~rbuf| + () Int) +(declare-fun |#offset~STRUCT#?buf~$Pointer$?offset~INT?left~INT#~buf| () Int) +(declare-fun |#offset~STRUCT#?buf~$Pointer$?offset~INT?left~INT#~offset| () + Int) +(declare-fun |#offset~STRUCT#?buf~$Pointer$?offset~INT?left~INT#~left| () + Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~wbuf| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~rrec| + () Int) +(declare-fun + |#offset~STRUCT#?type~INT?length~UINT?off~UINT?data~$Pointer$?input~$Pointer$?comp~$Pointer$#~type| + () Int) +(declare-fun + |#offset~STRUCT#?type~INT?length~UINT?off~UINT?data~$Pointer$?input~$Pointer$?comp~$Pointer$#~length| + () Int) +(declare-fun + |#offset~STRUCT#?type~INT?length~UINT?off~UINT?data~$Pointer$?input~$Pointer$?comp~$Pointer$#~off| + () Int) +(declare-fun + |#offset~STRUCT#?type~INT?length~UINT?off~UINT?data~$Pointer$?input~$Pointer$?comp~$Pointer$#~data| + () Int) +(declare-fun + |#offset~STRUCT#?type~INT?length~UINT?off~UINT?data~$Pointer$?input~$Pointer$?comp~$Pointer$#~input| + () Int) +(declare-fun + |#offset~STRUCT#?type~INT?length~UINT?off~UINT?data~$Pointer$?input~$Pointer$?comp~$Pointer$#~comp| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~wrec| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~alert_fragment| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~alert_fragment_len| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~handshake_fragment| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~handshake_fragment_len| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~wnum| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~wpend_tot| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~wpend_type| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~wpend_ret| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~wpend_buf| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~finish_dgst1| + () Int) +(declare-fun + |#offset~STRUCT#?digest~$Pointer$?md~STRUCT#?base~ARRAY#_4_~UCHAR#?md2~~MD2_CTX?md5~~MD5_CTX?md4~~MD4_CTX?ripemd160~~RIPEMD160_CTX?sha~~SHA_CTX?mdc2~~MDC2_CTX##~digest| + () Int) +(declare-fun + |#offset~STRUCT#?digest~$Pointer$?md~STRUCT#?base~ARRAY#_4_~UCHAR#?md2~~MD2_CTX?md5~~MD5_CTX?md4~~MD4_CTX?ripemd160~~RIPEMD160_CTX?sha~~SHA_CTX?mdc2~~MDC2_CTX##~md| + () Int) +(declare-fun + |#offset~STRUCT#?base~ARRAY#_4_~UCHAR#?md2~~MD2_CTX?md5~~MD5_CTX?md4~~MD4_CTX?ripemd160~~RIPEMD160_CTX?sha~~SHA_CTX?mdc2~~MDC2_CTX#~base| + () Int) +(declare-fun + |#offset~STRUCT#?base~ARRAY#_4_~UCHAR#?md2~~MD2_CTX?md5~~MD5_CTX?md4~~MD4_CTX?ripemd160~~RIPEMD160_CTX?sha~~SHA_CTX?mdc2~~MDC2_CTX#~md2| + () Int) +(declare-fun + |#offset~STRUCT#?num~INT?data~ARRAY#_16_~UCHAR#?cksm~ARRAY#_16_~UINT#?state~ARRAY#_16_~UINT##~num| + () Int) +(declare-fun + |#offset~STRUCT#?num~INT?data~ARRAY#_16_~UCHAR#?cksm~ARRAY#_16_~UINT#?state~ARRAY#_16_~UINT##~data| + () Int) +(declare-fun + |#offset~STRUCT#?num~INT?data~ARRAY#_16_~UCHAR#?cksm~ARRAY#_16_~UINT#?state~ARRAY#_16_~UINT##~cksm| + () Int) +(declare-fun + |#offset~STRUCT#?num~INT?data~ARRAY#_16_~UCHAR#?cksm~ARRAY#_16_~UINT#?state~ARRAY#_16_~UINT##~state| + () Int) +(declare-fun + |#offset~STRUCT#?base~ARRAY#_4_~UCHAR#?md2~~MD2_CTX?md5~~MD5_CTX?md4~~MD4_CTX?ripemd160~~RIPEMD160_CTX?sha~~SHA_CTX?mdc2~~MDC2_CTX#~md5| + () Int) +(declare-fun + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~A| + () Int) +(declare-fun + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~B| + () Int) +(declare-fun + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~C| + () Int) +(declare-fun + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~D| + () Int) +(declare-fun + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~Nl| + () Int) +(declare-fun + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~Nh| + () Int) +(declare-fun + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~data| + () Int) +(declare-fun + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~num| + () Int) +(declare-fun + |#offset~STRUCT#?base~ARRAY#_4_~UCHAR#?md2~~MD2_CTX?md5~~MD5_CTX?md4~~MD4_CTX?ripemd160~~RIPEMD160_CTX?sha~~SHA_CTX?mdc2~~MDC2_CTX#~md4| + () Int) +(declare-fun + |#offset~STRUCT#?base~ARRAY#_4_~UCHAR#?md2~~MD2_CTX?md5~~MD5_CTX?md4~~MD4_CTX?ripemd160~~RIPEMD160_CTX?sha~~SHA_CTX?mdc2~~MDC2_CTX#~ripemd160| + () Int) +(declare-fun + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?E~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~A| + () Int) +(declare-fun + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?E~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~B| + () Int) +(declare-fun + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?E~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~C| + () Int) +(declare-fun + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?E~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~D| + () Int) +(declare-fun + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?E~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~E| + () Int) +(declare-fun + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?E~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~Nl| + () Int) +(declare-fun + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?E~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~Nh| + () Int) +(declare-fun + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?E~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~data| + () Int) +(declare-fun + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?E~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~num| + () Int) +(declare-fun + |#offset~STRUCT#?base~ARRAY#_4_~UCHAR#?md2~~MD2_CTX?md5~~MD5_CTX?md4~~MD4_CTX?ripemd160~~RIPEMD160_CTX?sha~~SHA_CTX?mdc2~~MDC2_CTX#~sha| + () Int) +(declare-fun + |#offset~STRUCT#?h0~UINT?h1~UINT?h2~UINT?h3~UINT?h4~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~h0| + () Int) +(declare-fun + |#offset~STRUCT#?h0~UINT?h1~UINT?h2~UINT?h3~UINT?h4~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~h1| + () Int) +(declare-fun + |#offset~STRUCT#?h0~UINT?h1~UINT?h2~UINT?h3~UINT?h4~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~h2| + () Int) +(declare-fun + |#offset~STRUCT#?h0~UINT?h1~UINT?h2~UINT?h3~UINT?h4~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~h3| + () Int) +(declare-fun + |#offset~STRUCT#?h0~UINT?h1~UINT?h2~UINT?h3~UINT?h4~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~h4| + () Int) +(declare-fun + |#offset~STRUCT#?h0~UINT?h1~UINT?h2~UINT?h3~UINT?h4~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~Nl| + () Int) +(declare-fun + |#offset~STRUCT#?h0~UINT?h1~UINT?h2~UINT?h3~UINT?h4~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~Nh| + () Int) +(declare-fun + |#offset~STRUCT#?h0~UINT?h1~UINT?h2~UINT?h3~UINT?h4~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~data| + () Int) +(declare-fun + |#offset~STRUCT#?h0~UINT?h1~UINT?h2~UINT?h3~UINT?h4~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~num| + () Int) +(declare-fun + |#offset~STRUCT#?base~ARRAY#_4_~UCHAR#?md2~~MD2_CTX?md5~~MD5_CTX?md4~~MD4_CTX?ripemd160~~RIPEMD160_CTX?sha~~SHA_CTX?mdc2~~MDC2_CTX#~mdc2| + () Int) +(declare-fun + |#offset~STRUCT#?num~INT?data~ARRAY#_8_~UCHAR#?h~~des_cblock?hh~~des_cblock?pad_type~INT#~num| + () Int) +(declare-fun + |#offset~STRUCT#?num~INT?data~ARRAY#_8_~UCHAR#?h~~des_cblock?hh~~des_cblock?pad_type~INT#~data| + () Int) +(declare-fun + |#offset~STRUCT#?num~INT?data~ARRAY#_8_~UCHAR#?h~~des_cblock?hh~~des_cblock?pad_type~INT#~h| + () Int) +(declare-fun + |#offset~STRUCT#?num~INT?data~ARRAY#_8_~UCHAR#?h~~des_cblock?hh~~des_cblock?pad_type~INT#~hh| + () Int) +(declare-fun + |#offset~STRUCT#?num~INT?data~ARRAY#_8_~UCHAR#?h~~des_cblock?hh~~des_cblock?pad_type~INT#~pad_type| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~finish_dgst2| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~change_cipher_spec| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~warn_alert| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~fatal_alert| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~alert_dispatch| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~send_alert| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~renegotiate| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~total_renegotiations| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~num_renegotiations| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~in_read_app_data| + () Int) +(declare-fun + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~tmp| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~cert_verify_md| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~finish_md| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~finish_md_len| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~peer_finish_md| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~peer_finish_md_len| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~message_size| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~message_type| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~new_cipher| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~dh| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~next_state| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~reuse_message| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~cert_req| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~ctype_num| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~ctype| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~ca_names| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~use_rsa_tmp| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~key_block_length| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~key_block| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~new_sym_enc| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~new_hash| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~new_compression| + () Int) +(declare-fun + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~cert_request| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~method| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~options| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~mode| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~cipher_list| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~cipher_list_by_id| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~cert_store| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~sessions| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~session_cache_size| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~session_cache_head| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~session_cache_tail| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~session_cache_mode| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~session_timeout| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~new_session_cb| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~remove_session_cb| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~get_session_cb| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~stats| + () Int) +(declare-fun + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_connect| + () Int) +(declare-fun + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_connect_renegotiate| + () Int) +(declare-fun + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_connect_good| + () Int) +(declare-fun + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_accept| + () Int) +(declare-fun + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_accept_renegotiate| + () Int) +(declare-fun + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_accept_good| + () Int) +(declare-fun + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_miss| + () Int) +(declare-fun + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_timeout| + () Int) +(declare-fun + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_cache_full| + () Int) +(declare-fun + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_hit| + () Int) +(declare-fun + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_cb_hit| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~references| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~info_callback| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~app_verify_callback| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~app_verify_arg| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~cert| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~read_ahead| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~verify_mode| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~verify_depth| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~sid_ctx_length| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~sid_ctx| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~default_verify_callback| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~purpose| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~trust| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~default_passwd_callback| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~default_passwd_callback_userdata| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~client_cert_cb| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~client_CA| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~quiet_shutdown| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~ex_data| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~rsa_md5| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~md5| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~sha1| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~extra_certs| + () Int) +(declare-fun + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~comp_methods| + () Int) +(declare-fun + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~valid| + () Int) +(declare-fun + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~name| + () Int) +(declare-fun + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~id| + () Int) +(declare-fun + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~algorithms| + () Int) +(declare-fun + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~algo_strength| + () Int) +(declare-fun + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~algorithm2| + () Int) +(declare-fun + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~strength_bits| + () Int) +(declare-fun + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~alg_bits| + () Int) +(declare-fun + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~mask| + () Int) +(declare-fun + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~mask_strength| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~ssl_version| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~key_arg_length| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~key_arg| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~master_key_length| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~master_key| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~session_id_length| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~session_id| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~sid_ctx_length| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~sid_ctx| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~not_resumable| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~sess_cert| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~peer| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~verify_result| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~references| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~timeout| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~time| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~compress_meth| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~cipher| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~cipher_id| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~ciphers| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~ex_data| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~prev| + () Int) +(declare-fun + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~next| + () Int) +(declare-fun |#offset~STRUCT#?id~INT?name~$Pointer$?method~$Pointer$#~id| () + Int) +(declare-fun |#offset~STRUCT#?id~INT?name~$Pointer$?method~$Pointer$#~name| + () Int) +(declare-fun |#offset~STRUCT#?id~INT?name~$Pointer$?method~$Pointer$#~method| + () Int) +(declare-fun |#sizeof~INT| () Int) +(declare-fun |#sizeof~$Pointer$| () Int) +(declare-fun ~bitwiseAnd (Int Int) Int) +(assert + (and (= |#funAddr~ssl3_connect.base| (- 1)) + (= |#funAddr~ssl3_connect.offset| 0))) +(assert + (and (= |#funAddr~ssl3_get_client_method.base| (- 1)) + (= |#funAddr~ssl3_get_client_method.offset| 1))) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~version| + 0)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~type| + 4)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~method| + 8)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~rbio| + 12)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~wbio| + 16)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~bbio| + 20)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~rwstate| + 24)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~in_handshake| + 28)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~handshake_func| + 32)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~server| + 36)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~new_session| + 40)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~quiet_shutdown| + 44)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~shutdown| + 48)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state| + 52)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~rstate| + 56)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_buf| + 60)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num| + 64)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_off| + 68)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~packet| + 72)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~packet_length| + 76)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s2| + 80)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3| + 84)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~read_ahead| + 88)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~hit| + 92)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~purpose| + 96)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~trust| + 100)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~cipher_list| + 104)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~cipher_list_by_id| + 108)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~enc_read_ctx| + 112)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~read_hash| + 116)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~expand| + 120)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~enc_write_ctx| + 124)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~write_hash| + 128)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~compress| + 132)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~cert| + 136)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~sid_ctx_length| + 140)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~sid_ctx| + 144)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~session| + 176)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~verify_mode| + 180)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~verify_depth| + 184)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~verify_callback| + 188)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~info_callback| + 192)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~error| + 196)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~error_code| + 200)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~ctx| + 204)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~debug| + 208)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~verify_result| + 212)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~ex_data| + 216)) +(assert (= |#offset~STRUCT#?sk~$Pointer$?dummy~INT#~sk| 0)) +(assert (= |#offset~STRUCT#?sk~$Pointer$?dummy~INT#~dummy| 4)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~client_CA| + 224)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~references| + 228)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~options| + 232)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~mode| + 236)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~first_packet| + 240)) +(assert + (= + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~client_version| + 244)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~flags| + 0)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~delay_buf_pop_ret| + 4)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~read_sequence| + 8)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~read_mac_secret| + 16)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~write_sequence| + 52)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~write_mac_secret| + 60)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~server_random| + 96)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~client_random| + 128)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~rbuf| + 160)) +(assert (= |#offset~STRUCT#?buf~$Pointer$?offset~INT?left~INT#~buf| 0)) +(assert (= |#offset~STRUCT#?buf~$Pointer$?offset~INT?left~INT#~offset| 4)) +(assert (= |#offset~STRUCT#?buf~$Pointer$?offset~INT?left~INT#~left| 8)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~wbuf| + 172)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~rrec| + 184)) +(assert + (= + |#offset~STRUCT#?type~INT?length~UINT?off~UINT?data~$Pointer$?input~$Pointer$?comp~$Pointer$#~type| + 0)) +(assert + (= + |#offset~STRUCT#?type~INT?length~UINT?off~UINT?data~$Pointer$?input~$Pointer$?comp~$Pointer$#~length| + 4)) +(assert + (= + |#offset~STRUCT#?type~INT?length~UINT?off~UINT?data~$Pointer$?input~$Pointer$?comp~$Pointer$#~off| + 8)) +(assert + (= + |#offset~STRUCT#?type~INT?length~UINT?off~UINT?data~$Pointer$?input~$Pointer$?comp~$Pointer$#~data| + 12)) +(assert + (= + |#offset~STRUCT#?type~INT?length~UINT?off~UINT?data~$Pointer$?input~$Pointer$?comp~$Pointer$#~input| + 16)) +(assert + (= + |#offset~STRUCT#?type~INT?length~UINT?off~UINT?data~$Pointer$?input~$Pointer$?comp~$Pointer$#~comp| + 20)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~wrec| + 208)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~alert_fragment| + 232)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~alert_fragment_len| + 234)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~handshake_fragment| + 238)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~handshake_fragment_len| + 242)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~wnum| + 246)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~wpend_tot| + 250)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~wpend_type| + 254)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~wpend_ret| + 258)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~wpend_buf| + 262)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~finish_dgst1| + 266)) +(assert + (= + |#offset~STRUCT#?digest~$Pointer$?md~STRUCT#?base~ARRAY#_4_~UCHAR#?md2~~MD2_CTX?md5~~MD5_CTX?md4~~MD4_CTX?ripemd160~~RIPEMD160_CTX?sha~~SHA_CTX?mdc2~~MDC2_CTX##~digest| + 0)) +(assert + (= + |#offset~STRUCT#?digest~$Pointer$?md~STRUCT#?base~ARRAY#_4_~UCHAR#?md2~~MD2_CTX?md5~~MD5_CTX?md4~~MD4_CTX?ripemd160~~RIPEMD160_CTX?sha~~SHA_CTX?mdc2~~MDC2_CTX##~md| + 4)) +(assert + (= + |#offset~STRUCT#?base~ARRAY#_4_~UCHAR#?md2~~MD2_CTX?md5~~MD5_CTX?md4~~MD4_CTX?ripemd160~~RIPEMD160_CTX?sha~~SHA_CTX?mdc2~~MDC2_CTX#~base| + 0)) +(assert + (= + |#offset~STRUCT#?base~ARRAY#_4_~UCHAR#?md2~~MD2_CTX?md5~~MD5_CTX?md4~~MD4_CTX?ripemd160~~RIPEMD160_CTX?sha~~SHA_CTX?mdc2~~MDC2_CTX#~md2| + 0)) +(assert + (= + |#offset~STRUCT#?num~INT?data~ARRAY#_16_~UCHAR#?cksm~ARRAY#_16_~UINT#?state~ARRAY#_16_~UINT##~num| + 0)) +(assert + (= + |#offset~STRUCT#?num~INT?data~ARRAY#_16_~UCHAR#?cksm~ARRAY#_16_~UINT#?state~ARRAY#_16_~UINT##~data| + 4)) +(assert + (= + |#offset~STRUCT#?num~INT?data~ARRAY#_16_~UCHAR#?cksm~ARRAY#_16_~UINT#?state~ARRAY#_16_~UINT##~cksm| + 20)) +(assert + (= + |#offset~STRUCT#?num~INT?data~ARRAY#_16_~UCHAR#?cksm~ARRAY#_16_~UINT#?state~ARRAY#_16_~UINT##~state| + 84)) +(assert + (= + |#offset~STRUCT#?base~ARRAY#_4_~UCHAR#?md2~~MD2_CTX?md5~~MD5_CTX?md4~~MD4_CTX?ripemd160~~RIPEMD160_CTX?sha~~SHA_CTX?mdc2~~MDC2_CTX#~md5| + 0)) +(assert + (= + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~A| + 0)) +(assert + (= + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~B| + 4)) +(assert + (= + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~C| + 8)) +(assert + (= + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~D| + 12)) +(assert + (= + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~Nl| + 16)) +(assert + (= + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~Nh| + 20)) +(assert + (= + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~data| + 24)) +(assert + (= + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~num| + 88)) +(assert + (= + |#offset~STRUCT#?base~ARRAY#_4_~UCHAR#?md2~~MD2_CTX?md5~~MD5_CTX?md4~~MD4_CTX?ripemd160~~RIPEMD160_CTX?sha~~SHA_CTX?mdc2~~MDC2_CTX#~md4| + 0)) +(assert + (= + |#offset~STRUCT#?base~ARRAY#_4_~UCHAR#?md2~~MD2_CTX?md5~~MD5_CTX?md4~~MD4_CTX?ripemd160~~RIPEMD160_CTX?sha~~SHA_CTX?mdc2~~MDC2_CTX#~ripemd160| + 0)) +(assert + (= + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?E~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~A| + 0)) +(assert + (= + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?E~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~B| + 4)) +(assert + (= + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?E~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~C| + 8)) +(assert + (= + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?E~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~D| + 12)) +(assert + (= + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?E~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~E| + 16)) +(assert + (= + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?E~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~Nl| + 20)) +(assert + (= + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?E~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~Nh| + 24)) +(assert + (= + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?E~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~data| + 28)) +(assert + (= + |#offset~STRUCT#?A~UINT?B~UINT?C~UINT?D~UINT?E~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~num| + 92)) +(assert + (= + |#offset~STRUCT#?base~ARRAY#_4_~UCHAR#?md2~~MD2_CTX?md5~~MD5_CTX?md4~~MD4_CTX?ripemd160~~RIPEMD160_CTX?sha~~SHA_CTX?mdc2~~MDC2_CTX#~sha| + 0)) +(assert + (= + |#offset~STRUCT#?h0~UINT?h1~UINT?h2~UINT?h3~UINT?h4~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~h0| + 0)) +(assert + (= + |#offset~STRUCT#?h0~UINT?h1~UINT?h2~UINT?h3~UINT?h4~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~h1| + 4)) +(assert + (= + |#offset~STRUCT#?h0~UINT?h1~UINT?h2~UINT?h3~UINT?h4~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~h2| + 8)) +(assert + (= + |#offset~STRUCT#?h0~UINT?h1~UINT?h2~UINT?h3~UINT?h4~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~h3| + 12)) +(assert + (= + |#offset~STRUCT#?h0~UINT?h1~UINT?h2~UINT?h3~UINT?h4~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~h4| + 16)) +(assert + (= + |#offset~STRUCT#?h0~UINT?h1~UINT?h2~UINT?h3~UINT?h4~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~Nl| + 20)) +(assert + (= + |#offset~STRUCT#?h0~UINT?h1~UINT?h2~UINT?h3~UINT?h4~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~Nh| + 24)) +(assert + (= + |#offset~STRUCT#?h0~UINT?h1~UINT?h2~UINT?h3~UINT?h4~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~data| + 28)) +(assert + (= + |#offset~STRUCT#?h0~UINT?h1~UINT?h2~UINT?h3~UINT?h4~UINT?Nl~UINT?Nh~UINT?data~ARRAY#_16_~UINT#?num~INT#~num| + 92)) +(assert + (= + |#offset~STRUCT#?base~ARRAY#_4_~UCHAR#?md2~~MD2_CTX?md5~~MD5_CTX?md4~~MD4_CTX?ripemd160~~RIPEMD160_CTX?sha~~SHA_CTX?mdc2~~MDC2_CTX#~mdc2| + 0)) +(assert + (= + |#offset~STRUCT#?num~INT?data~ARRAY#_8_~UCHAR#?h~~des_cblock?hh~~des_cblock?pad_type~INT#~num| + 0)) +(assert + (= + |#offset~STRUCT#?num~INT?data~ARRAY#_8_~UCHAR#?h~~des_cblock?hh~~des_cblock?pad_type~INT#~data| + 4)) +(assert + (= + |#offset~STRUCT#?num~INT?data~ARRAY#_8_~UCHAR#?h~~des_cblock?hh~~des_cblock?pad_type~INT#~h| + 12)) +(assert + (= + |#offset~STRUCT#?num~INT?data~ARRAY#_8_~UCHAR#?h~~des_cblock?hh~~des_cblock?pad_type~INT#~hh| + 20)) +(assert + (= + |#offset~STRUCT#?num~INT?data~ARRAY#_8_~UCHAR#?h~~des_cblock?hh~~des_cblock?pad_type~INT#~pad_type| + 28)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~finish_dgst2| + 418)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~change_cipher_spec| + 570)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~warn_alert| + 574)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~fatal_alert| + 578)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~alert_dispatch| + 582)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~send_alert| + 586)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~renegotiate| + 588)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~total_renegotiations| + 592)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~num_renegotiations| + 596)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~in_read_app_data| + 600)) +(assert + (= + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~tmp| + 604)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~cert_verify_md| + 0)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~finish_md| + 72)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~finish_md_len| + 144)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~peer_finish_md| + 148)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~peer_finish_md_len| + 220)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~message_size| + 224)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~message_type| + 228)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~new_cipher| + 232)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~dh| + 236)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~next_state| + 240)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~reuse_message| + 244)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~cert_req| + 248)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~ctype_num| + 252)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~ctype| + 256)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~ca_names| + 263)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~use_rsa_tmp| + 267)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~key_block_length| + 271)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~key_block| + 275)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~new_sym_enc| + 279)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~new_hash| + 283)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~new_compression| + 287)) +(assert + (= + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~cert_request| + 291)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~method| + 0)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~options| + 4)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~mode| + 8)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~cipher_list| + 12)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~cipher_list_by_id| + 16)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~cert_store| + 20)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~sessions| + 24)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~session_cache_size| + 28)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~session_cache_head| + 32)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~session_cache_tail| + 36)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~session_cache_mode| + 40)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~session_timeout| + 44)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~new_session_cb| + 48)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~remove_session_cb| + 52)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~get_session_cb| + 56)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~stats| + 60)) +(assert + (= + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_connect| + 0)) +(assert + (= + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_connect_renegotiate| + 4)) +(assert + (= + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_connect_good| + 8)) +(assert + (= + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_accept| + 12)) +(assert + (= + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_accept_renegotiate| + 16)) +(assert + (= + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_accept_good| + 20)) +(assert + (= + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_miss| + 24)) +(assert + (= + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_timeout| + 28)) +(assert + (= + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_cache_full| + 32)) +(assert + (= + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_hit| + 36)) +(assert + (= + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_cb_hit| + 40)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~references| + 104)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~info_callback| + 108)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~app_verify_callback| + 112)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~app_verify_arg| + 116)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~cert| + 120)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~read_ahead| + 124)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~verify_mode| + 128)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~verify_depth| + 132)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~sid_ctx_length| + 136)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~sid_ctx| + 140)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~default_verify_callback| + 172)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~purpose| + 176)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~trust| + 180)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~default_passwd_callback| + 184)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~default_passwd_callback_userdata| + 188)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~client_cert_cb| + 192)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~client_CA| + 196)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~quiet_shutdown| + 200)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~ex_data| + 204)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~rsa_md5| + 212)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~md5| + 216)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~sha1| + 220)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~extra_certs| + 224)) +(assert + (= + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~comp_methods| + 228)) +(assert + (= + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~valid| + 0)) +(assert + (= + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~name| + 4)) +(assert + (= + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~id| + 8)) +(assert + (= + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~algorithms| + 12)) +(assert + (= + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~algo_strength| + 16)) +(assert + (= + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~algorithm2| + 20)) +(assert + (= + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~strength_bits| + 24)) +(assert + (= + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~alg_bits| + 28)) +(assert + (= + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~mask| + 32)) +(assert + (= + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~mask_strength| + 36)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~ssl_version| + 0)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~key_arg_length| + 4)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~key_arg| + 8)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~master_key_length| + 16)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~master_key| + 20)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~session_id_length| + 68)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~session_id| + 72)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~sid_ctx_length| + 104)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~sid_ctx| + 108)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~not_resumable| + 140)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~sess_cert| + 144)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~peer| + 148)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~verify_result| + 152)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~references| + 156)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~timeout| + 160)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~time| + 164)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~compress_meth| + 168)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~cipher| + 172)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~cipher_id| + 176)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~ciphers| + 180)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~ex_data| + 184)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~prev| + 192)) +(assert + (= + |#offset~STRUCT#?ssl_version~INT?key_arg_length~UINT?key_arg~ARRAY#_8_~UCHAR#?master_key_length~INT?master_key~ARRAY#_48_~UCHAR#?session_id_length~UINT?session_id~ARRAY#_32_~UCHAR#?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?not_resumable~INT?sess_cert~$Pointer$?peer~$Pointer$?verify_result~LONG?references~INT?timeout~LONG?time~LONG?compress_meth~INT?cipher~$Pointer$?cipher_id~ULONG?ciphers~$Pointer$?ex_data~~CRYPTO_EX_DATA?prev~$Pointer$?next~$Pointer$#~next| + 196)) +(assert (= |#offset~STRUCT#?id~INT?name~$Pointer$?method~$Pointer$#~id| 0)) +(assert (= |#offset~STRUCT#?id~INT?name~$Pointer$?method~$Pointer$#~name| 4)) +(assert + (= |#offset~STRUCT#?id~INT?name~$Pointer$?method~$Pointer$#~method| 8)) +(assert (= |#sizeof~INT| 4)) +(assert (= |#sizeof~$Pointer$| 4)) +(declare-fun |#length_-1| () (Array Int Int)) +(declare-fun |#NULL.offset_-1| () Int) +(declare-fun |#valid_-1| () (Array Int Int)) +(declare-fun |#memory_$Pointer$.offset_-1| () (Array Int (Array Int Int))) +(declare-fun |#memory_int_-1| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_-1| () (Array Int (Array Int Int))) +(declare-fun |#NULL.base_-1| () Int) +(declare-fun |old(#valid)_0| () (Array Int Int)) +(declare-fun |old(#NULL.offset)_0| () Int) +(declare-fun |old(#NULL.base)_0| () Int) +(declare-fun |#NULL.offset_0| () Int) +(declare-fun |#valid_0| () (Array Int Int)) +(declare-fun |#NULL.base_0| () Int) +(declare-fun |#NULL.offset_1| () Int) +(declare-fun |#valid_1| () (Array Int Int)) +(declare-fun |#NULL.base_1| () Int) +(declare-fun |old(#length)_4| () (Array Int Int)) +(declare-fun |old(#valid)_4| () (Array Int Int)) +(declare-fun |old(#memory_$Pointer$.offset)_4| () + (Array Int (Array Int Int))) +(declare-fun |old(#memory_int)_4| () (Array Int (Array Int Int))) +(declare-fun |old(#memory_$Pointer$.base)_4| () (Array Int (Array Int Int))) +(declare-fun |#length_4| () (Array Int Int)) +(declare-fun |#memory_$Pointer$.offset_4| () (Array Int (Array Int Int))) +(declare-fun |#valid_4| () (Array Int Int)) +(declare-fun |#memory_int_4| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_4| () (Array Int (Array Int Int))) +(declare-fun |#length_5| () (Array Int Int)) +(declare-fun |main_#t~malloc0.offset_5| () Int) +(declare-fun |main_#t~malloc0.base_5| () Int) +(declare-fun |#valid_5| () (Array Int Int)) +(declare-fun main_~s~6.base_6 () Int) +(declare-fun main_~s~6.offset_6 () Int) +(declare-fun |#length_7| () (Array Int Int)) +(declare-fun |main_#t~malloc1.base_7| () Int) +(declare-fun |#valid_7| () (Array Int Int)) +(declare-fun |main_#t~malloc1.offset_7| () Int) +(declare-fun |#memory_int_8| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_8| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_8| () (Array Int (Array Int Int))) +(declare-fun |#memory_int_9| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_9| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_9| () (Array Int (Array Int Int))) +(declare-fun |old(#memory_$Pointer$.offset)_10| () + (Array Int (Array Int Int))) +(declare-fun |old(#memory_int)_10| () (Array Int (Array Int Int))) +(declare-fun |old(#memory_$Pointer$.base)_10| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_10| () (Array Int (Array Int Int))) +(declare-fun |#memory_int_10| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_10| () (Array Int (Array Int Int))) +(declare-fun |ssl3_connect_#in~s.base_10| () Int) +(declare-fun |ssl3_connect_#in~s.offset_10| () Int) +(declare-fun |ssl3_connect_#t~nondet8_10| () Int) +(declare-fun |ssl3_connect_#t~nondet5.offset_10| () Int) +(declare-fun |ssl3_connect_#t~nondet6.offset_10| () Int) +(declare-fun |ssl3_connect_#t~nondet6.base_10| () Int) +(declare-fun |ssl3_connect_#t~nondet5.base_10| () Int) +(declare-fun |ssl3_connect_#t~nondet7_10| () Int) +(declare-fun ssl3_connect_~blastFlag~9_11 () Int) +(declare-fun ssl3_connect_~tmp___0~9.offset_11 () Int) +(declare-fun ssl3_connect_~tmp___0~9.base_11 () Int) +(declare-fun ssl3_connect_~tmp___1~9_11 () Int) +(declare-fun ssl3_connect_~tmp___2~9_11 () Int) +(declare-fun ssl3_connect_~buf~9.offset_11 () Int) +(declare-fun ssl3_connect_~buf~9.base_11 () Int) +(declare-fun ssl3_connect_~s.offset_11 () Int) +(declare-fun ssl3_connect_~s.base_11 () Int) +(declare-fun |ssl3_connect_#t~nondet9_10| () Int) +(declare-fun |#memory_int_12| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_12| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_12| () (Array Int (Array Int Int))) +(declare-fun |#memory_int_14| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_14| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_14| () (Array Int (Array Int Int))) +(declare-fun |ssl3_connect_#t~nondet12_10| () Int) +(declare-fun ssl3_connect_~tmp~9_15 () Int) +(declare-fun ssl3_connect_~cb~9.offset_15 () Int) +(declare-fun ssl3_connect_~ret~9_15 () Int) +(declare-fun ssl3_connect_~skip~9_15 () Int) +(declare-fun ssl3_connect_~cb~9.base_15 () Int) +(declare-fun |#memory_int_16| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_16| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_16| () (Array Int (Array Int Int))) +(declare-fun ssl3_connect_~cb~9.offset_17 () Int) +(declare-fun ssl3_connect_~cb~9.base_17 () Int) +(declare-fun |ssl3_connect_#t~mem16_18| () Int) +(declare-fun |#memory_int_19| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_19| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_19| () (Array Int (Array Int Int))) +(declare-fun |ssl3_connect_#t~mem17_24| () Int) +(declare-fun ssl3_connect_~state~9_25 () Int) +(declare-fun |ssl3_connect_#t~mem18_26| () Int) +(declare-fun |#memory_int_28| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_28| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_28| () (Array Int (Array Int Int))) +(declare-fun |#memory_int_29| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_29| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_29| () (Array Int (Array Int Int))) +(declare-fun |ssl3_connect_#t~mem53.offset_30| () Int) +(declare-fun |ssl3_connect_#t~mem53.base_30| () Int) +(declare-fun |ssl3_connect_#t~mem54_31| () Int) +(declare-fun |#memory_int_32| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_32| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_32| () (Array Int (Array Int Int))) +(declare-fun |#memory_int_34| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_34| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_34| () (Array Int (Array Int Int))) +(declare-fun |ssl3_connect_#t~mem56_36| () Int) +(declare-fun |#memory_int_38| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_38| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_38| () (Array Int (Array Int Int))) +(declare-fun |ssl3_connect_#t~mem58.base_39| () Int) +(declare-fun |ssl3_connect_#t~mem58.offset_39| () Int) +(declare-fun |ssl3_connect_#t~nondet61_10| () Int) +(declare-fun ssl3_connect_~tmp___4~9_41 () Int) +(declare-fun |ssl3_connect_#t~nondet62_10| () Int) +(declare-fun ssl3_connect_~tmp___5~9_42 () Int) +(declare-fun |#memory_int_44| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_44| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_44| () (Array Int (Array Int Int))) +(declare-fun |ssl3_connect_#t~mem64.offset_45| () Int) +(declare-fun |ssl3_connect_#t~mem64.base_45| () Int) +(declare-fun |ssl3_connect_#t~mem65_46| () Int) +(declare-fun |#memory_int_47| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_47| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_47| () (Array Int (Array Int Int))) +(declare-fun |#memory_int_49| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_49| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_49| () (Array Int (Array Int Int))) +(declare-fun |ssl3_connect_#t~mem174.offset_50| () Int) +(declare-fun |ssl3_connect_#t~mem174.base_50| () Int) +(declare-fun |ssl3_connect_#t~mem175_51| () Int) +(declare-fun ssl3_connect_~skip~9_53 () Int) +(declare-fun |ssl3_connect_#t~mem17_56| () Int) +(declare-fun ssl3_connect_~state~9_57 () Int) +(declare-fun |ssl3_connect_#t~mem18_58| () Int) +(declare-fun |ssl3_connect_#t~mem19_60| () Int) +(declare-fun |ssl3_connect_#t~mem20_62| () Int) +(declare-fun |ssl3_connect_#t~mem21_64| () Int) +(declare-fun |ssl3_connect_#t~mem22_66| () Int) +(declare-fun |ssl3_connect_#t~mem23_68| () Int) +(declare-fun |#memory_int_70| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_70| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_70| () (Array Int (Array Int Int))) +(declare-fun |ssl3_connect_#t~nondet68_10| () Int) +(declare-fun ssl3_connect_~ret~9_71 () Int) +(declare-fun ssl3_connect_~blastFlag~9_72 () Int) +(declare-fun |#memory_int_74| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_74| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_74| () (Array Int (Array Int Int))) +(declare-fun |#memory_int_75| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_75| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_75| () (Array Int (Array Int Int))) +(declare-fun |ssl3_connect_#t~mem71.base_76| () Int) +(declare-fun |ssl3_connect_#t~mem71.offset_76| () Int) +(declare-fun |ssl3_connect_#t~mem72.offset_77| () Int) +(declare-fun |ssl3_connect_#t~mem72.base_77| () Int) +(declare-fun |ssl3_connect_#t~mem174.offset_79| () Int) +(declare-fun |ssl3_connect_#t~mem174.base_79| () Int) +(declare-fun |ssl3_connect_#t~mem175_80| () Int) +(declare-fun ssl3_connect_~skip~9_82 () Int) +(declare-fun |ssl3_connect_#t~mem17_85| () Int) +(declare-fun ssl3_connect_~state~9_86 () Int) +(declare-fun |ssl3_connect_#t~mem18_87| () Int) +(declare-fun |ssl3_connect_#t~mem19_89| () Int) +(declare-fun |ssl3_connect_#t~mem20_91| () Int) +(declare-fun |ssl3_connect_#t~mem21_93| () Int) +(declare-fun |ssl3_connect_#t~mem22_95| () Int) +(declare-fun |ssl3_connect_#t~mem23_97| () Int) +(declare-fun |ssl3_connect_#t~mem24_99| () Int) +(declare-fun |ssl3_connect_#t~mem25_101| () Int) +(declare-fun |ssl3_connect_#t~nondet73_10| () Int) +(declare-fun ssl3_connect_~ret~9_103 () Int) +(declare-fun ssl3_connect_~blastFlag~9_104 () Int) +(declare-fun |ssl3_connect_#t~mem74_106| () Int) +(declare-fun |#memory_int_108| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_108| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_108| () (Array Int (Array Int Int))) +(declare-fun |#memory_int_109| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_109| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_109| () (Array Int (Array Int Int))) +(declare-fun |ssl3_connect_#t~mem174.offset_110| () Int) +(declare-fun |ssl3_connect_#t~mem174.base_110| () Int) +(declare-fun |ssl3_connect_#t~mem175_111| () Int) +(declare-fun ssl3_connect_~skip~9_113 () Int) +(declare-fun |ssl3_connect_#t~mem17_116| () Int) +(declare-fun ssl3_connect_~state~9_117 () Int) +(declare-fun |ssl3_connect_#t~mem18_118| () Int) +(declare-fun |ssl3_connect_#t~mem19_120| () Int) +(declare-fun |ssl3_connect_#t~mem20_122| () Int) +(declare-fun |ssl3_connect_#t~mem21_124| () Int) +(declare-fun |ssl3_connect_#t~mem22_126| () Int) +(declare-fun |ssl3_connect_#t~mem23_128| () Int) +(declare-fun |ssl3_connect_#t~mem24_130| () Int) +(declare-fun |ssl3_connect_#t~mem25_132| () Int) +(declare-fun |ssl3_connect_#t~mem26_134| () Int) +(declare-fun |ssl3_connect_#t~mem27_136| () Int) +(declare-fun |ssl3_connect_#t~mem78.base_138| () Int) +(declare-fun |ssl3_connect_#t~mem78.offset_138| () Int) +(declare-fun |ssl3_connect_#t~mem79.base_139| () Int) +(declare-fun |ssl3_connect_#t~mem79.offset_139| () Int) +(declare-fun |ssl3_connect_#t~mem80_140| () Int) +(declare-fun |ssl3_connect_#t~nondet81_10| () Int) +(declare-fun ssl3_connect_~ret~9_141 () Int) +(declare-fun ssl3_connect_~blastFlag~9_142 () Int) +(declare-fun |#memory_int_144| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_144| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_144| () (Array Int (Array Int Int))) +(declare-fun |#memory_int_145| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_145| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_145| () (Array Int (Array Int Int))) +(declare-fun |ssl3_connect_#t~mem174.offset_146| () Int) +(declare-fun |ssl3_connect_#t~mem174.base_146| () Int) +(declare-fun |ssl3_connect_#t~mem175_147| () Int) +(declare-fun ssl3_connect_~skip~9_149 () Int) +(declare-fun |ssl3_connect_#t~mem17_152| () Int) +(declare-fun ssl3_connect_~state~9_153 () Int) +(declare-fun |ssl3_connect_#t~mem18_154| () Int) +(declare-fun |ssl3_connect_#t~mem19_156| () Int) +(declare-fun |ssl3_connect_#t~mem20_158| () Int) +(declare-fun |ssl3_connect_#t~mem21_160| () Int) +(declare-fun |ssl3_connect_#t~mem22_162| () Int) +(declare-fun |ssl3_connect_#t~mem23_164| () Int) +(declare-fun |ssl3_connect_#t~mem24_166| () Int) +(declare-fun |ssl3_connect_#t~mem25_168| () Int) +(declare-fun |ssl3_connect_#t~mem26_170| () Int) +(declare-fun |ssl3_connect_#t~mem27_172| () Int) +(declare-fun |ssl3_connect_#t~mem28_174| () Int) +(declare-fun |ssl3_connect_#t~mem29_176| () Int) +(declare-fun |ssl3_connect_#t~nondet84_10| () Int) +(declare-fun ssl3_connect_~ret~9_178 () Int) +(declare-fun ssl3_connect_~blastFlag~9_179 () Int) +(declare-fun |#memory_int_181| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_181| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_181| () (Array Int (Array Int Int))) +(declare-fun |#memory_int_182| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_182| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_182| () (Array Int (Array Int Int))) +(declare-fun |ssl3_connect_#t~nondet87_10| () Int) +(declare-fun ssl3_connect_~tmp___6~9_183 () Int) +(declare-fun |ssl3_connect_#t~mem174.offset_185| () Int) +(declare-fun |ssl3_connect_#t~mem174.base_185| () Int) +(declare-fun |ssl3_connect_#t~mem175_186| () Int) +(declare-fun ssl3_connect_~skip~9_188 () Int) +(declare-fun |ssl3_connect_#t~mem17_191| () Int) +(declare-fun ssl3_connect_~state~9_192 () Int) +(declare-fun |ssl3_connect_#t~mem18_193| () Int) +(declare-fun |ssl3_connect_#t~mem19_195| () Int) +(declare-fun |ssl3_connect_#t~mem20_197| () Int) +(declare-fun |ssl3_connect_#t~mem21_199| () Int) +(declare-fun |ssl3_connect_#t~mem22_201| () Int) +(declare-fun |ssl3_connect_#t~mem23_203| () Int) +(declare-fun |ssl3_connect_#t~mem24_205| () Int) +(declare-fun |ssl3_connect_#t~mem25_207| () Int) +(declare-fun |ssl3_connect_#t~mem26_209| () Int) +(declare-fun |ssl3_connect_#t~mem27_211| () Int) +(declare-fun |ssl3_connect_#t~mem28_213| () Int) +(declare-fun |ssl3_connect_#t~mem29_215| () Int) +(declare-fun |ssl3_connect_#t~mem30_217| () Int) +(declare-fun |ssl3_connect_#t~mem31_219| () Int) +(declare-fun |ssl3_connect_#t~nondet88_10| () Int) +(declare-fun ssl3_connect_~ret~9_221 () Int) +(declare-fun |#memory_int_224| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_224| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_224| () (Array Int (Array Int Int))) +(declare-fun |#memory_int_225| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.offset_225| () (Array Int (Array Int Int))) +(declare-fun |#memory_$Pointer$.base_225| () (Array Int (Array Int Int))) +(declare-fun |ssl3_connect_#t~mem174.offset_226| () Int) +(declare-fun |ssl3_connect_#t~mem174.base_226| () Int) +(declare-fun |ssl3_connect_#t~mem175_227| () Int) +(declare-fun ssl3_connect_~skip~9_229 () Int) +(declare-fun |ssl3_connect_#t~mem17_232| () Int) +(declare-fun ssl3_connect_~state~9_233 () Int) +(declare-fun |ssl3_connect_#t~mem18_234| () Int) +(declare-fun |ssl3_connect_#t~mem19_236| () Int) +(declare-fun |ssl3_connect_#t~mem20_238| () Int) +(declare-fun |ssl3_connect_#t~mem21_240| () Int) +(declare-fun |ssl3_connect_#t~mem22_242| () Int) +(declare-fun |ssl3_connect_#t~mem23_244| () Int) +(declare-fun |ssl3_connect_#t~mem24_246| () Int) +(declare-fun |ssl3_connect_#t~mem25_248| () Int) +(declare-fun |ssl3_connect_#t~mem26_250| () Int) +(declare-fun |ssl3_connect_#t~mem27_252| () Int) +(declare-fun |ssl3_connect_#t~mem28_254| () Int) +(declare-fun |ssl3_connect_#t~mem29_256| () Int) +(declare-fun |ssl3_connect_#t~mem30_258| () Int) +(declare-fun |ssl3_connect_#t~mem31_260| () Int) +(declare-fun |ssl3_connect_#t~mem32_262| () Int) +(declare-fun |ssl3_connect_#t~mem33_264| () Int) +(declare-fun |ssl3_connect_#t~nondet91_10| () Int) +(declare-fun ssl3_connect_~ret~9_266 () Int) +(assert true) +(assert (not false)) +(assert (<= |#NULL.offset_0| |old(#NULL.offset)_0|)) +(assert (>= |#NULL.offset_0| |old(#NULL.offset)_0|)) +(assert (= |#valid_0| |old(#valid)_0|)) +(assert (<= |#NULL.base_0| |old(#NULL.base)_0|)) +(assert (>= |#NULL.base_0| |old(#NULL.base)_0|)) +(assert true) +(assert (<= |old(#NULL.offset)_0| |#NULL.offset_-1|)) +(assert (>= |old(#NULL.offset)_0| |#NULL.offset_-1|)) +(assert (= |old(#valid)_0| |#valid_-1|)) +(assert (<= |old(#NULL.base)_0| |#NULL.base_-1|)) +(assert (>= |old(#NULL.base)_0| |#NULL.base_-1|)) +(assert (<= |#NULL.base_1| 0)) +(assert (>= |#NULL.base_1| 0)) +(assert (<= |#NULL.offset_1| 0)) +(assert (>= |#NULL.offset_1| 0)) +(assert (= |#valid_1| (store |#valid_0| 0 0))) +(assert true) +(assert true) +(assert (= |#memory_$Pointer$.offset_4| |old(#memory_$Pointer$.offset)_4|)) +(assert (= |#memory_$Pointer$.base_4| |old(#memory_$Pointer$.base)_4|)) +(assert (= |#valid_4| |old(#valid)_4|)) +(assert (= |#length_4| |old(#length)_4|)) +(assert (= |#memory_int_4| |old(#memory_int)_4|)) +(assert true) +(assert (= |old(#memory_$Pointer$.offset)_4| |#memory_$Pointer$.offset_-1|)) +(assert (= |old(#memory_$Pointer$.base)_4| |#memory_$Pointer$.base_-1|)) +(assert (= |old(#valid)_4| |#valid_1|)) +(assert (= |old(#length)_4| |#length_-1|)) +(assert (= |old(#memory_int)_4| |#memory_int_-1|)) +(assert (= |#length_5| (store |#length_4| |main_#t~malloc0.base_5| 248))) +(assert (not (= |main_#t~malloc0.base_5| 0))) +(assert (<= |main_#t~malloc0.offset_5| 0)) +(assert (>= |main_#t~malloc0.offset_5| 0)) +(assert (= |#valid_5| (store |#valid_4| |main_#t~malloc0.base_5| 1))) +(assert (= (not (= (select |#valid_4| |main_#t~malloc0.base_5|) 0)) false)) +(assert (<= main_~s~6.offset_6 |main_#t~malloc0.offset_5|)) +(assert (>= main_~s~6.offset_6 |main_#t~malloc0.offset_5|)) +(assert (<= main_~s~6.base_6 |main_#t~malloc0.base_5|)) +(assert (>= main_~s~6.base_6 |main_#t~malloc0.base_5|)) +(assert (= |#length_7| (store |#length_5| |main_#t~malloc1.base_7| 899))) +(assert (not (= |main_#t~malloc1.base_7| 0))) +(assert (<= |main_#t~malloc1.offset_7| 0)) +(assert (>= |main_#t~malloc1.offset_7| 0)) +(assert (= |#valid_7| (store |#valid_5| |main_#t~malloc1.base_7| 1))) +(assert (= (not (= (select |#valid_5| |main_#t~malloc1.base_7|) 0)) false)) +(assert + (= |#memory_$Pointer$.base_8| + (store |#memory_$Pointer$.base_4| main_~s~6.base_6 + (store (select |#memory_$Pointer$.base_4| main_~s~6.base_6) + (+ main_~s~6.offset_6 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|) + |main_#t~malloc1.base_7|)))) +(assert + (= |#memory_$Pointer$.offset_8| + (store |#memory_$Pointer$.offset_4| main_~s~6.base_6 + (store (select |#memory_$Pointer$.offset_4| main_~s~6.base_6) + (+ main_~s~6.offset_6 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|) + |main_#t~malloc1.offset_7|)))) +(assert + (= |#memory_int_8| + (store |#memory_int_4| main_~s~6.base_6 + (store (select |#memory_int_4| main_~s~6.base_6) + (+ main_~s~6.offset_6 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|) + (select (select |#memory_int_8| main_~s~6.base_6) + (+ main_~s~6.offset_6 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))))) +(assert + (= |#memory_$Pointer$.base_9| + (store |#memory_$Pointer$.base_8| main_~s~6.base_6 + (store (select |#memory_$Pointer$.base_8| main_~s~6.base_6) + (+ main_~s~6.offset_6 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + (select (select |#memory_$Pointer$.base_9| main_~s~6.base_6) + (+ main_~s~6.offset_6 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))))) +(assert + (= |#memory_$Pointer$.offset_9| + (store |#memory_$Pointer$.offset_8| main_~s~6.base_6 + (store (select |#memory_$Pointer$.offset_8| main_~s~6.base_6) + (+ main_~s~6.offset_6 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + (select (select |#memory_$Pointer$.offset_9| main_~s~6.base_6) + (+ main_~s~6.offset_6 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))))) +(assert + (= |#memory_int_9| + (store |#memory_int_8| main_~s~6.base_6 + (store (select |#memory_int_8| main_~s~6.base_6) + (+ main_~s~6.offset_6 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + 12292)))) +(assert (= |#memory_$Pointer$.offset_10| |old(#memory_$Pointer$.offset)_10|)) +(assert (= |#memory_$Pointer$.base_10| |old(#memory_$Pointer$.base)_10|)) +(assert (= |#memory_int_10| |old(#memory_int)_10|)) +(assert (<= |ssl3_connect_#in~s.base_10| main_~s~6.base_6)) +(assert (>= |ssl3_connect_#in~s.base_10| main_~s~6.base_6)) +(assert (<= |ssl3_connect_#in~s.offset_10| main_~s~6.offset_6)) +(assert (>= |ssl3_connect_#in~s.offset_10| main_~s~6.offset_6)) +(assert (= |old(#memory_$Pointer$.offset)_10| |#memory_$Pointer$.offset_9|)) +(assert (= |old(#memory_$Pointer$.base)_10| |#memory_$Pointer$.base_9|)) +(assert (= |old(#memory_int)_10| |#memory_int_9|)) +(assert (<= ssl3_connect_~s.offset_11 |ssl3_connect_#in~s.offset_10|)) +(assert (>= ssl3_connect_~s.offset_11 |ssl3_connect_#in~s.offset_10|)) +(assert (<= ssl3_connect_~s.base_11 |ssl3_connect_#in~s.base_10|)) +(assert (>= ssl3_connect_~s.base_11 |ssl3_connect_#in~s.base_10|)) +(assert + (<= ssl3_connect_~buf~9.offset_11 |ssl3_connect_#t~nondet5.offset_10|)) +(assert + (>= ssl3_connect_~buf~9.offset_11 |ssl3_connect_#t~nondet5.offset_10|)) +(assert (<= ssl3_connect_~buf~9.base_11 |ssl3_connect_#t~nondet5.base_10|)) +(assert (>= ssl3_connect_~buf~9.base_11 |ssl3_connect_#t~nondet5.base_10|)) +(assert + (<= ssl3_connect_~tmp___0~9.offset_11 |ssl3_connect_#t~nondet6.offset_10|)) +(assert + (>= ssl3_connect_~tmp___0~9.offset_11 |ssl3_connect_#t~nondet6.offset_10|)) +(assert + (<= ssl3_connect_~tmp___0~9.base_11 |ssl3_connect_#t~nondet6.base_10|)) +(assert + (>= ssl3_connect_~tmp___0~9.base_11 |ssl3_connect_#t~nondet6.base_10|)) +(assert (<= ssl3_connect_~tmp___1~9_11 |ssl3_connect_#t~nondet7_10|)) +(assert (>= ssl3_connect_~tmp___1~9_11 |ssl3_connect_#t~nondet7_10|)) +(assert (<= ssl3_connect_~tmp___2~9_11 |ssl3_connect_#t~nondet8_10|)) +(assert (>= ssl3_connect_~tmp___2~9_11 |ssl3_connect_#t~nondet8_10|)) +(assert (<= ssl3_connect_~blastFlag~9_11 0)) +(assert (>= ssl3_connect_~blastFlag~9_11 0)) +(assert + (= |#memory_$Pointer$.base_12| + (store |#memory_$Pointer$.base_10| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.base_10| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~hit|) + (select (select |#memory_$Pointer$.base_12| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~hit|)))))) +(assert + (= |#memory_$Pointer$.offset_12| + (store |#memory_$Pointer$.offset_10| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.offset_10| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~hit|) + (select (select |#memory_$Pointer$.offset_12| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~hit|)))))) +(assert + (= |#memory_int_12| + (store |#memory_int_10| ssl3_connect_~s.base_11 + (store (select |#memory_int_10| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~hit|) + |ssl3_connect_#t~nondet9_10|)))) +(assert true) +(assert + (= |#memory_$Pointer$.base_14| + (store |#memory_$Pointer$.base_12| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.base_12| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + (select (select |#memory_$Pointer$.base_14| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))))) +(assert + (= |#memory_$Pointer$.offset_14| + (store |#memory_$Pointer$.offset_12| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.offset_12| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + (select (select |#memory_$Pointer$.offset_14| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))))) +(assert + (= |#memory_int_14| + (store |#memory_int_12| ssl3_connect_~s.base_11 + (store (select |#memory_int_12| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + 12292)))) +(assert (<= ssl3_connect_~tmp~9_15 |ssl3_connect_#t~nondet12_10|)) +(assert (>= ssl3_connect_~tmp~9_15 |ssl3_connect_#t~nondet12_10|)) +(assert (<= ssl3_connect_~cb~9.base_15 0)) +(assert (>= ssl3_connect_~cb~9.base_15 0)) +(assert (<= ssl3_connect_~cb~9.offset_15 0)) +(assert (>= ssl3_connect_~cb~9.offset_15 0)) +(assert (<= ssl3_connect_~ret~9_15 (- 1))) +(assert (>= ssl3_connect_~ret~9_15 (- 1))) +(assert (<= ssl3_connect_~skip~9_15 0)) +(assert (>= ssl3_connect_~skip~9_15 0)) +(assert + (= |#memory_$Pointer$.base_16| + (store |#memory_$Pointer$.base_14| ssl3_connect_~tmp___0~9.base_11 + (store (select |#memory_$Pointer$.base_14| ssl3_connect_~tmp___0~9.base_11) + ssl3_connect_~tmp___0~9.offset_11 + (select (select |#memory_$Pointer$.base_16| ssl3_connect_~tmp___0~9.base_11) + ssl3_connect_~tmp___0~9.offset_11))))) +(assert + (= |#memory_$Pointer$.offset_16| + (store |#memory_$Pointer$.offset_14| ssl3_connect_~tmp___0~9.base_11 + (store + (select |#memory_$Pointer$.offset_14| ssl3_connect_~tmp___0~9.base_11) + ssl3_connect_~tmp___0~9.offset_11 + (select + (select |#memory_$Pointer$.offset_16| ssl3_connect_~tmp___0~9.base_11) + ssl3_connect_~tmp___0~9.offset_11))))) +(assert + (= |#memory_int_16| + (store |#memory_int_14| ssl3_connect_~tmp___0~9.base_11 + (store (select |#memory_int_14| ssl3_connect_~tmp___0~9.base_11) + ssl3_connect_~tmp___0~9.offset_11 0)))) +(assert + (not + (= + (mod + (+ (* ssl3_connect_~s.base_11 4294967296) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~info_callback|)) + 4294967296) (mod 0 4294967296)))) +(assert (<= ssl3_connect_~cb~9.base_17 ssl3_connect_~s.base_11)) +(assert (>= ssl3_connect_~cb~9.base_17 ssl3_connect_~s.base_11)) +(assert + (<= ssl3_connect_~cb~9.offset_17 + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~info_callback|))) +(assert + (>= ssl3_connect_~cb~9.offset_17 + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~info_callback|))) +(assert + (<= |ssl3_connect_#t~mem16_18| + (select (select |#memory_int_16| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~in_handshake|)))) +(assert + (>= |ssl3_connect_#t~mem16_18| + (select (select |#memory_int_16| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~in_handshake|)))) +(assert + (= |#memory_$Pointer$.base_19| + (store |#memory_$Pointer$.base_16| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.base_16| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~in_handshake|) + (select (select |#memory_$Pointer$.base_19| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~in_handshake|)))))) +(assert + (= |#memory_$Pointer$.offset_19| + (store |#memory_$Pointer$.offset_16| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.offset_16| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~in_handshake|) + (select (select |#memory_$Pointer$.offset_19| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~in_handshake|)))))) +(assert + (= |#memory_int_19| + (store |#memory_int_16| ssl3_connect_~s.base_11 + (store (select |#memory_int_16| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~in_handshake|) + (+ |ssl3_connect_#t~mem16_18| 1))))) +(assert true) +(assert (<= (~bitwiseAnd ssl3_connect_~tmp___1~9_11 12288) 0)) +(assert (>= (~bitwiseAnd ssl3_connect_~tmp___1~9_11 12288) 0)) +(assert true) +(assert true) +(assert + (<= |ssl3_connect_#t~mem17_24| + (select (select |#memory_int_19| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem17_24| + (select (select |#memory_int_19| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (<= ssl3_connect_~state~9_25 |ssl3_connect_#t~mem17_24|)) +(assert (>= ssl3_connect_~state~9_25 |ssl3_connect_#t~mem17_24|)) +(assert + (<= |ssl3_connect_#t~mem18_26| + (select (select |#memory_int_19| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem18_26| + (select (select |#memory_int_19| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (<= |ssl3_connect_#t~mem18_26| 12292)) +(assert (>= |ssl3_connect_#t~mem18_26| 12292)) +(assert + (= |#memory_$Pointer$.base_28| + (store |#memory_$Pointer$.base_19| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.base_19| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~new_session|) + (select (select |#memory_$Pointer$.base_28| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~new_session|)))))) +(assert + (= |#memory_$Pointer$.offset_28| + (store |#memory_$Pointer$.offset_19| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.offset_19| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~new_session|) + (select (select |#memory_$Pointer$.offset_28| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~new_session|)))))) +(assert + (= |#memory_int_28| + (store |#memory_int_19| ssl3_connect_~s.base_11 + (store (select |#memory_int_19| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~new_session|) + 1)))) +(assert + (= |#memory_$Pointer$.base_29| + (store |#memory_$Pointer$.base_28| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.base_28| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + (select (select |#memory_$Pointer$.base_29| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))))) +(assert + (= |#memory_$Pointer$.offset_29| + (store |#memory_$Pointer$.offset_28| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.offset_28| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + (select (select |#memory_$Pointer$.offset_29| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))))) +(assert + (= |#memory_int_29| + (store |#memory_int_28| ssl3_connect_~s.base_11 + (store (select |#memory_int_28| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + 4096)))) +(assert + (<= |ssl3_connect_#t~mem53.base_30| + (select (select |#memory_$Pointer$.base_29| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~ctx|)))) +(assert + (>= |ssl3_connect_#t~mem53.base_30| + (select (select |#memory_$Pointer$.base_29| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~ctx|)))) +(assert + (<= |ssl3_connect_#t~mem53.offset_30| + (select (select |#memory_$Pointer$.offset_29| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~ctx|)))) +(assert + (>= |ssl3_connect_#t~mem53.offset_30| + (select (select |#memory_$Pointer$.offset_29| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~ctx|)))) +(assert + (<= |ssl3_connect_#t~mem54_31| + (select (select |#memory_int_29| |ssl3_connect_#t~mem53.base_30|) + (+ + (+ |ssl3_connect_#t~mem53.offset_30| + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~stats|) + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_connect_renegotiate|)))) +(assert + (>= |ssl3_connect_#t~mem54_31| + (select (select |#memory_int_29| |ssl3_connect_#t~mem53.base_30|) + (+ + (+ |ssl3_connect_#t~mem53.offset_30| + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~stats|) + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_connect_renegotiate|)))) +(assert + (= |#memory_$Pointer$.base_32| + (store |#memory_$Pointer$.base_29| |ssl3_connect_#t~mem53.base_30| + (store (select |#memory_$Pointer$.base_29| |ssl3_connect_#t~mem53.base_30|) + (+ + (+ |ssl3_connect_#t~mem53.offset_30| + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~stats|) + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_connect_renegotiate|) + (select (select |#memory_$Pointer$.base_32| |ssl3_connect_#t~mem53.base_30|) + (+ + (+ |ssl3_connect_#t~mem53.offset_30| + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~stats|) + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_connect_renegotiate|)))))) +(assert + (= |#memory_$Pointer$.offset_32| + (store |#memory_$Pointer$.offset_29| |ssl3_connect_#t~mem53.base_30| + (store + (select |#memory_$Pointer$.offset_29| |ssl3_connect_#t~mem53.base_30|) + (+ + (+ |ssl3_connect_#t~mem53.offset_30| + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~stats|) + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_connect_renegotiate|) + (select + (select |#memory_$Pointer$.offset_32| |ssl3_connect_#t~mem53.base_30|) + (+ + (+ |ssl3_connect_#t~mem53.offset_30| + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~stats|) + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_connect_renegotiate|)))))) +(assert + (= |#memory_int_32| + (store |#memory_int_29| |ssl3_connect_#t~mem53.base_30| + (store (select |#memory_int_29| |ssl3_connect_#t~mem53.base_30|) + (+ + (+ |ssl3_connect_#t~mem53.offset_30| + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~stats|) + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_connect_renegotiate|) + (+ |ssl3_connect_#t~mem54_31| 1))))) +(assert true) +(assert + (= |#memory_$Pointer$.base_34| + (store |#memory_$Pointer$.base_32| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.base_32| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~server|) + (select (select |#memory_$Pointer$.base_34| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~server|)))))) +(assert + (= |#memory_$Pointer$.offset_34| + (store |#memory_$Pointer$.offset_32| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.offset_32| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~server|) + (select (select |#memory_$Pointer$.offset_34| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~server|)))))) +(assert + (= |#memory_int_34| + (store |#memory_int_32| ssl3_connect_~s.base_11 + (store (select |#memory_int_32| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~server|) + 0)))) +(assert + (not + (= + (mod + (+ (* ssl3_connect_~cb~9.base_17 4294967296) ssl3_connect_~cb~9.offset_17) + 4294967296) (mod 0 4294967296)))) +(assert + (<= |ssl3_connect_#t~mem56_36| + (select (select |#memory_int_34| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~version|)))) +(assert + (>= |ssl3_connect_#t~mem56_36| + (select (select |#memory_int_34| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~version|)))) +(assert (<= (~bitwiseAnd |ssl3_connect_#t~mem56_36| 65280) 768)) +(assert (>= (~bitwiseAnd |ssl3_connect_#t~mem56_36| 65280) 768)) +(assert + (= |#memory_$Pointer$.base_38| + (store |#memory_$Pointer$.base_34| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.base_34| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~type|) + (select (select |#memory_$Pointer$.base_38| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~type|)))))) +(assert + (= |#memory_$Pointer$.offset_38| + (store |#memory_$Pointer$.offset_34| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.offset_34| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~type|) + (select (select |#memory_$Pointer$.offset_38| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~type|)))))) +(assert + (= |#memory_int_38| + (store |#memory_int_34| ssl3_connect_~s.base_11 + (store (select |#memory_int_34| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~type|) + 4096)))) +(assert + (<= |ssl3_connect_#t~mem58.base_39| + (select (select |#memory_$Pointer$.base_38| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_buf|)))) +(assert + (>= |ssl3_connect_#t~mem58.base_39| + (select (select |#memory_$Pointer$.base_38| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_buf|)))) +(assert + (<= |ssl3_connect_#t~mem58.offset_39| + (select (select |#memory_$Pointer$.offset_38| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_buf|)))) +(assert + (>= |ssl3_connect_#t~mem58.offset_39| + (select (select |#memory_$Pointer$.offset_38| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_buf|)))) +(assert + (not + (= + (mod + (+ (* |ssl3_connect_#t~mem58.base_39| 4294967296) + |ssl3_connect_#t~mem58.offset_39|) 4294967296) + (mod 0 4294967296)))) +(assert (<= ssl3_connect_~tmp___4~9_41 |ssl3_connect_#t~nondet61_10|)) +(assert (>= ssl3_connect_~tmp___4~9_41 |ssl3_connect_#t~nondet61_10|)) +(assert (not (= ssl3_connect_~tmp___4~9_41 0))) +(assert (<= ssl3_connect_~tmp___5~9_42 |ssl3_connect_#t~nondet62_10|)) +(assert (>= ssl3_connect_~tmp___5~9_42 |ssl3_connect_#t~nondet62_10|)) +(assert (not (= ssl3_connect_~tmp___5~9_42 0))) +(assert + (= |#memory_$Pointer$.base_44| + (store |#memory_$Pointer$.base_38| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.base_38| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + (select (select |#memory_$Pointer$.base_44| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))))) +(assert + (= |#memory_$Pointer$.offset_44| + (store |#memory_$Pointer$.offset_38| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.offset_38| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + (select (select |#memory_$Pointer$.offset_44| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))))) +(assert + (= |#memory_int_44| + (store |#memory_int_38| ssl3_connect_~s.base_11 + (store (select |#memory_int_38| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + 4368)))) +(assert + (<= |ssl3_connect_#t~mem64.base_45| + (select (select |#memory_$Pointer$.base_44| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~ctx|)))) +(assert + (>= |ssl3_connect_#t~mem64.base_45| + (select (select |#memory_$Pointer$.base_44| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~ctx|)))) +(assert + (<= |ssl3_connect_#t~mem64.offset_45| + (select (select |#memory_$Pointer$.offset_44| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~ctx|)))) +(assert + (>= |ssl3_connect_#t~mem64.offset_45| + (select (select |#memory_$Pointer$.offset_44| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~ctx|)))) +(assert + (<= |ssl3_connect_#t~mem65_46| + (select (select |#memory_int_44| |ssl3_connect_#t~mem64.base_45|) + (+ + (+ |ssl3_connect_#t~mem64.offset_45| + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~stats|) + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_connect|)))) +(assert + (>= |ssl3_connect_#t~mem65_46| + (select (select |#memory_int_44| |ssl3_connect_#t~mem64.base_45|) + (+ + (+ |ssl3_connect_#t~mem64.offset_45| + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~stats|) + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_connect|)))) +(assert + (= |#memory_$Pointer$.base_47| + (store |#memory_$Pointer$.base_44| |ssl3_connect_#t~mem64.base_45| + (store (select |#memory_$Pointer$.base_44| |ssl3_connect_#t~mem64.base_45|) + (+ + (+ |ssl3_connect_#t~mem64.offset_45| + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~stats|) + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_connect|) + (select (select |#memory_$Pointer$.base_47| |ssl3_connect_#t~mem64.base_45|) + (+ + (+ |ssl3_connect_#t~mem64.offset_45| + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~stats|) + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_connect|)))))) +(assert + (= |#memory_$Pointer$.offset_47| + (store |#memory_$Pointer$.offset_44| |ssl3_connect_#t~mem64.base_45| + (store + (select |#memory_$Pointer$.offset_44| |ssl3_connect_#t~mem64.base_45|) + (+ + (+ |ssl3_connect_#t~mem64.offset_45| + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~stats|) + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_connect|) + (select + (select |#memory_$Pointer$.offset_47| |ssl3_connect_#t~mem64.base_45|) + (+ + (+ |ssl3_connect_#t~mem64.offset_45| + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~stats|) + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_connect|)))))) +(assert + (= |#memory_int_47| + (store |#memory_int_44| |ssl3_connect_#t~mem64.base_45| + (store (select |#memory_int_44| |ssl3_connect_#t~mem64.base_45|) + (+ + (+ |ssl3_connect_#t~mem64.offset_45| + |#offset~STRUCT#?method~$Pointer$?options~ULONG?mode~ULONG?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?cert_store~$Pointer$?sessions~$Pointer$?session_cache_size~ULONG?session_cache_head~$Pointer$?session_cache_tail~$Pointer$?session_cache_mode~INT?session_timeout~LONG?new_session_cb~$Pointer$?remove_session_cb~$Pointer$?get_session_cb~$Pointer$?stats~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#?references~INT?info_callback~$Pointer$?app_verify_callback~$Pointer$?app_verify_arg~$Pointer$?cert~$Pointer$?read_ahead~INT?verify_mode~INT?verify_depth~INT?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?default_verify_callback~$Pointer$?purpose~INT?trust~INT?default_passwd_callback~$Pointer$?default_passwd_callback_userdata~$Pointer$?client_cert_cb~$Pointer$?client_CA~$Pointer$?quiet_shutdown~INT?ex_data~~CRYPTO_EX_DATA?rsa_md5~$Pointer$?md5~$Pointer$?sha1~$Pointer$?extra_certs~$Pointer$?comp_methods~$Pointer$#~stats|) + |#offset~STRUCT#?sess_connect~INT?sess_connect_renegotiate~INT?sess_connect_good~INT?sess_accept~INT?sess_accept_renegotiate~INT?sess_accept_good~INT?sess_miss~INT?sess_timeout~INT?sess_cache_full~INT?sess_hit~INT?sess_cb_hit~INT#~sess_connect|) + (+ |ssl3_connect_#t~mem65_46| 1))))) +(assert true) +(assert + (= |#memory_$Pointer$.base_49| + (store |#memory_$Pointer$.base_47| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.base_47| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|) + (select (select |#memory_$Pointer$.base_49| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|)))))) +(assert + (= |#memory_$Pointer$.offset_49| + (store |#memory_$Pointer$.offset_47| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.offset_47| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|) + (select (select |#memory_$Pointer$.offset_49| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|)))))) +(assert + (= |#memory_int_49| + (store |#memory_int_47| ssl3_connect_~s.base_11 + (store (select |#memory_int_47| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|) + 0)))) +(assert + (<= |ssl3_connect_#t~mem174.base_50| + (select (select |#memory_$Pointer$.base_49| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (>= |ssl3_connect_#t~mem174.base_50| + (select (select |#memory_$Pointer$.base_49| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (<= |ssl3_connect_#t~mem174.offset_50| + (select (select |#memory_$Pointer$.offset_49| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (>= |ssl3_connect_#t~mem174.offset_50| + (select (select |#memory_$Pointer$.offset_49| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (<= |ssl3_connect_#t~mem175_51| + (select (select |#memory_int_49| |ssl3_connect_#t~mem174.base_50|) + (+ + (+ |ssl3_connect_#t~mem174.offset_50| + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~tmp|) + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~reuse_message|)))) +(assert + (>= |ssl3_connect_#t~mem175_51| + (select (select |#memory_int_49| |ssl3_connect_#t~mem174.base_50|) + (+ + (+ |ssl3_connect_#t~mem174.offset_50| + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~tmp|) + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~reuse_message|)))) +(assert (not (= |ssl3_connect_#t~mem175_51| 0))) +(assert (<= ssl3_connect_~skip~9_53 0)) +(assert (>= ssl3_connect_~skip~9_53 0)) +(assert true) +(assert true) +(assert + (<= |ssl3_connect_#t~mem17_56| + (select (select |#memory_int_49| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem17_56| + (select (select |#memory_int_49| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (<= ssl3_connect_~state~9_57 |ssl3_connect_#t~mem17_56|)) +(assert (>= ssl3_connect_~state~9_57 |ssl3_connect_#t~mem17_56|)) +(assert + (<= |ssl3_connect_#t~mem18_58| + (select (select |#memory_int_49| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem18_58| + (select (select |#memory_int_49| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem18_58| 12292))) +(assert + (<= |ssl3_connect_#t~mem19_60| + (select (select |#memory_int_49| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem19_60| + (select (select |#memory_int_49| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem19_60| 16384))) +(assert + (<= |ssl3_connect_#t~mem20_62| + (select (select |#memory_int_49| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem20_62| + (select (select |#memory_int_49| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem20_62| 4096))) +(assert + (<= |ssl3_connect_#t~mem21_64| + (select (select |#memory_int_49| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem21_64| + (select (select |#memory_int_49| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem21_64| 20480))) +(assert + (<= |ssl3_connect_#t~mem22_66| + (select (select |#memory_int_49| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem22_66| + (select (select |#memory_int_49| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem22_66| 4099))) +(assert + (<= |ssl3_connect_#t~mem23_68| + (select (select |#memory_int_49| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem23_68| + (select (select |#memory_int_49| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (<= |ssl3_connect_#t~mem23_68| 4368)) +(assert (>= |ssl3_connect_#t~mem23_68| 4368)) +(assert + (= |#memory_$Pointer$.base_70| + (store |#memory_$Pointer$.base_49| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.base_49| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~shutdown|) + (select (select |#memory_$Pointer$.base_70| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~shutdown|)))))) +(assert + (= |#memory_$Pointer$.offset_70| + (store |#memory_$Pointer$.offset_49| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.offset_49| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~shutdown|) + (select (select |#memory_$Pointer$.offset_70| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~shutdown|)))))) +(assert + (= |#memory_int_70| + (store |#memory_int_49| ssl3_connect_~s.base_11 + (store (select |#memory_int_49| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~shutdown|) + 0)))) +(assert (<= ssl3_connect_~ret~9_71 |ssl3_connect_#t~nondet68_10|)) +(assert (>= ssl3_connect_~ret~9_71 |ssl3_connect_#t~nondet68_10|)) +(assert (<= ssl3_connect_~blastFlag~9_11 0)) +(assert (>= ssl3_connect_~blastFlag~9_11 0)) +(assert (<= ssl3_connect_~blastFlag~9_72 1)) +(assert (>= ssl3_connect_~blastFlag~9_72 1)) +(assert (not (<= ssl3_connect_~ret~9_71 0))) +(assert + (= |#memory_$Pointer$.base_74| + (store |#memory_$Pointer$.base_70| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.base_70| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + (select (select |#memory_$Pointer$.base_74| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))))) +(assert + (= |#memory_$Pointer$.offset_74| + (store |#memory_$Pointer$.offset_70| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.offset_70| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + (select (select |#memory_$Pointer$.offset_74| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))))) +(assert + (= |#memory_int_74| + (store |#memory_int_70| ssl3_connect_~s.base_11 + (store (select |#memory_int_70| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + 4384)))) +(assert + (= |#memory_$Pointer$.base_75| + (store |#memory_$Pointer$.base_74| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.base_74| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|) + (select (select |#memory_$Pointer$.base_75| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|)))))) +(assert + (= |#memory_$Pointer$.offset_75| + (store |#memory_$Pointer$.offset_74| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.offset_74| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|) + (select (select |#memory_$Pointer$.offset_75| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|)))))) +(assert + (= |#memory_int_75| + (store |#memory_int_74| ssl3_connect_~s.base_11 + (store (select |#memory_int_74| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|) + 0)))) +(assert + (<= |ssl3_connect_#t~mem71.base_76| + (select (select |#memory_$Pointer$.base_75| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~bbio|)))) +(assert + (>= |ssl3_connect_#t~mem71.base_76| + (select (select |#memory_$Pointer$.base_75| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~bbio|)))) +(assert + (<= |ssl3_connect_#t~mem71.offset_76| + (select (select |#memory_$Pointer$.offset_75| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~bbio|)))) +(assert + (>= |ssl3_connect_#t~mem71.offset_76| + (select (select |#memory_$Pointer$.offset_75| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~bbio|)))) +(assert + (<= |ssl3_connect_#t~mem72.base_77| + (select (select |#memory_$Pointer$.base_75| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~wbio|)))) +(assert + (>= |ssl3_connect_#t~mem72.base_77| + (select (select |#memory_$Pointer$.base_75| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~wbio|)))) +(assert + (<= |ssl3_connect_#t~mem72.offset_77| + (select (select |#memory_$Pointer$.offset_75| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~wbio|)))) +(assert + (>= |ssl3_connect_#t~mem72.offset_77| + (select (select |#memory_$Pointer$.offset_75| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~wbio|)))) +(assert + (<= + (mod + (+ (* |ssl3_connect_#t~mem71.base_76| 4294967296) + |ssl3_connect_#t~mem71.offset_76|) 4294967296) + (mod + (+ (* |ssl3_connect_#t~mem72.base_77| 4294967296) + |ssl3_connect_#t~mem72.offset_77|) 4294967296))) +(assert + (>= + (mod + (+ (* |ssl3_connect_#t~mem71.base_76| 4294967296) + |ssl3_connect_#t~mem71.offset_76|) 4294967296) + (mod + (+ (* |ssl3_connect_#t~mem72.base_77| 4294967296) + |ssl3_connect_#t~mem72.offset_77|) 4294967296))) +(assert + (<= |ssl3_connect_#t~mem174.base_79| + (select (select |#memory_$Pointer$.base_75| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (>= |ssl3_connect_#t~mem174.base_79| + (select (select |#memory_$Pointer$.base_75| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (<= |ssl3_connect_#t~mem174.offset_79| + (select (select |#memory_$Pointer$.offset_75| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (>= |ssl3_connect_#t~mem174.offset_79| + (select (select |#memory_$Pointer$.offset_75| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (<= |ssl3_connect_#t~mem175_80| + (select (select |#memory_int_75| |ssl3_connect_#t~mem174.base_79|) + (+ + (+ |ssl3_connect_#t~mem174.offset_79| + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~tmp|) + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~reuse_message|)))) +(assert + (>= |ssl3_connect_#t~mem175_80| + (select (select |#memory_int_75| |ssl3_connect_#t~mem174.base_79|) + (+ + (+ |ssl3_connect_#t~mem174.offset_79| + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~tmp|) + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~reuse_message|)))) +(assert (not (= |ssl3_connect_#t~mem175_80| 0))) +(assert (<= ssl3_connect_~skip~9_82 0)) +(assert (>= ssl3_connect_~skip~9_82 0)) +(assert true) +(assert true) +(assert + (<= |ssl3_connect_#t~mem17_85| + (select (select |#memory_int_75| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem17_85| + (select (select |#memory_int_75| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (<= ssl3_connect_~state~9_86 |ssl3_connect_#t~mem17_85|)) +(assert (>= ssl3_connect_~state~9_86 |ssl3_connect_#t~mem17_85|)) +(assert + (<= |ssl3_connect_#t~mem18_87| + (select (select |#memory_int_75| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem18_87| + (select (select |#memory_int_75| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem18_87| 12292))) +(assert + (<= |ssl3_connect_#t~mem19_89| + (select (select |#memory_int_75| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem19_89| + (select (select |#memory_int_75| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem19_89| 16384))) +(assert + (<= |ssl3_connect_#t~mem20_91| + (select (select |#memory_int_75| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem20_91| + (select (select |#memory_int_75| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem20_91| 4096))) +(assert + (<= |ssl3_connect_#t~mem21_93| + (select (select |#memory_int_75| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem21_93| + (select (select |#memory_int_75| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem21_93| 20480))) +(assert + (<= |ssl3_connect_#t~mem22_95| + (select (select |#memory_int_75| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem22_95| + (select (select |#memory_int_75| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem22_95| 4099))) +(assert + (<= |ssl3_connect_#t~mem23_97| + (select (select |#memory_int_75| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem23_97| + (select (select |#memory_int_75| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem23_97| 4368))) +(assert + (<= |ssl3_connect_#t~mem24_99| + (select (select |#memory_int_75| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem24_99| + (select (select |#memory_int_75| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem24_99| 4369))) +(assert + (<= |ssl3_connect_#t~mem25_101| + (select (select |#memory_int_75| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem25_101| + (select (select |#memory_int_75| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (<= |ssl3_connect_#t~mem25_101| 4384)) +(assert (>= |ssl3_connect_#t~mem25_101| 4384)) +(assert (<= ssl3_connect_~ret~9_103 |ssl3_connect_#t~nondet73_10|)) +(assert (>= ssl3_connect_~ret~9_103 |ssl3_connect_#t~nondet73_10|)) +(assert (<= ssl3_connect_~blastFlag~9_72 1)) +(assert (>= ssl3_connect_~blastFlag~9_72 1)) +(assert (<= ssl3_connect_~blastFlag~9_104 2)) +(assert (>= ssl3_connect_~blastFlag~9_104 2)) +(assert (not (<= ssl3_connect_~ret~9_103 0))) +(assert + (<= |ssl3_connect_#t~mem74_106| + (select (select |#memory_int_75| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~hit|)))) +(assert + (>= |ssl3_connect_#t~mem74_106| + (select (select |#memory_int_75| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~hit|)))) +(assert (<= |ssl3_connect_#t~mem74_106| 0)) +(assert (>= |ssl3_connect_#t~mem74_106| 0)) +(assert + (= |#memory_$Pointer$.base_108| + (store |#memory_$Pointer$.base_75| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.base_75| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + (select (select |#memory_$Pointer$.base_108| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))))) +(assert + (= |#memory_$Pointer$.offset_108| + (store |#memory_$Pointer$.offset_75| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.offset_75| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + (select (select |#memory_$Pointer$.offset_108| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))))) +(assert + (= |#memory_int_108| + (store |#memory_int_75| ssl3_connect_~s.base_11 + (store (select |#memory_int_75| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + 4400)))) +(assert + (= |#memory_$Pointer$.base_109| + (store |#memory_$Pointer$.base_108| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.base_108| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|) + (select (select |#memory_$Pointer$.base_109| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|)))))) +(assert + (= |#memory_$Pointer$.offset_109| + (store |#memory_$Pointer$.offset_108| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.offset_108| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|) + (select (select |#memory_$Pointer$.offset_109| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|)))))) +(assert + (= |#memory_int_109| + (store |#memory_int_108| ssl3_connect_~s.base_11 + (store (select |#memory_int_108| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|) + 0)))) +(assert + (<= |ssl3_connect_#t~mem174.base_110| + (select (select |#memory_$Pointer$.base_109| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (>= |ssl3_connect_#t~mem174.base_110| + (select (select |#memory_$Pointer$.base_109| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (<= |ssl3_connect_#t~mem174.offset_110| + (select (select |#memory_$Pointer$.offset_109| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (>= |ssl3_connect_#t~mem174.offset_110| + (select (select |#memory_$Pointer$.offset_109| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (<= |ssl3_connect_#t~mem175_111| + (select (select |#memory_int_109| |ssl3_connect_#t~mem174.base_110|) + (+ + (+ |ssl3_connect_#t~mem174.offset_110| + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~tmp|) + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~reuse_message|)))) +(assert + (>= |ssl3_connect_#t~mem175_111| + (select (select |#memory_int_109| |ssl3_connect_#t~mem174.base_110|) + (+ + (+ |ssl3_connect_#t~mem174.offset_110| + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~tmp|) + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~reuse_message|)))) +(assert (not (= |ssl3_connect_#t~mem175_111| 0))) +(assert (<= ssl3_connect_~skip~9_113 0)) +(assert (>= ssl3_connect_~skip~9_113 0)) +(assert true) +(assert true) +(assert + (<= |ssl3_connect_#t~mem17_116| + (select (select |#memory_int_109| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem17_116| + (select (select |#memory_int_109| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (<= ssl3_connect_~state~9_117 |ssl3_connect_#t~mem17_116|)) +(assert (>= ssl3_connect_~state~9_117 |ssl3_connect_#t~mem17_116|)) +(assert + (<= |ssl3_connect_#t~mem18_118| + (select (select |#memory_int_109| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem18_118| + (select (select |#memory_int_109| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem18_118| 12292))) +(assert + (<= |ssl3_connect_#t~mem19_120| + (select (select |#memory_int_109| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem19_120| + (select (select |#memory_int_109| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem19_120| 16384))) +(assert + (<= |ssl3_connect_#t~mem20_122| + (select (select |#memory_int_109| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem20_122| + (select (select |#memory_int_109| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem20_122| 4096))) +(assert + (<= |ssl3_connect_#t~mem21_124| + (select (select |#memory_int_109| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem21_124| + (select (select |#memory_int_109| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem21_124| 20480))) +(assert + (<= |ssl3_connect_#t~mem22_126| + (select (select |#memory_int_109| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem22_126| + (select (select |#memory_int_109| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem22_126| 4099))) +(assert + (<= |ssl3_connect_#t~mem23_128| + (select (select |#memory_int_109| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem23_128| + (select (select |#memory_int_109| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem23_128| 4368))) +(assert + (<= |ssl3_connect_#t~mem24_130| + (select (select |#memory_int_109| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem24_130| + (select (select |#memory_int_109| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem24_130| 4369))) +(assert + (<= |ssl3_connect_#t~mem25_132| + (select (select |#memory_int_109| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem25_132| + (select (select |#memory_int_109| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem25_132| 4384))) +(assert + (<= |ssl3_connect_#t~mem26_134| + (select (select |#memory_int_109| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem26_134| + (select (select |#memory_int_109| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem26_134| 4385))) +(assert + (<= |ssl3_connect_#t~mem27_136| + (select (select |#memory_int_109| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem27_136| + (select (select |#memory_int_109| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (<= |ssl3_connect_#t~mem27_136| 4400)) +(assert (>= |ssl3_connect_#t~mem27_136| 4400)) +(assert + (<= |ssl3_connect_#t~mem78.base_138| + (select (select |#memory_$Pointer$.base_109| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (>= |ssl3_connect_#t~mem78.base_138| + (select (select |#memory_$Pointer$.base_109| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (<= |ssl3_connect_#t~mem78.offset_138| + (select (select |#memory_$Pointer$.offset_109| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (>= |ssl3_connect_#t~mem78.offset_138| + (select (select |#memory_$Pointer$.offset_109| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (<= |ssl3_connect_#t~mem79.base_139| + (select + (select |#memory_$Pointer$.base_109| |ssl3_connect_#t~mem78.base_138|) + (+ + (+ |ssl3_connect_#t~mem78.offset_138| + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~tmp|) + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~new_cipher|)))) +(assert + (>= |ssl3_connect_#t~mem79.base_139| + (select + (select |#memory_$Pointer$.base_109| |ssl3_connect_#t~mem78.base_138|) + (+ + (+ |ssl3_connect_#t~mem78.offset_138| + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~tmp|) + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~new_cipher|)))) +(assert + (<= |ssl3_connect_#t~mem79.offset_139| + (select + (select |#memory_$Pointer$.offset_109| |ssl3_connect_#t~mem78.base_138|) + (+ + (+ |ssl3_connect_#t~mem78.offset_138| + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~tmp|) + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~new_cipher|)))) +(assert + (>= |ssl3_connect_#t~mem79.offset_139| + (select + (select |#memory_$Pointer$.offset_109| |ssl3_connect_#t~mem78.base_138|) + (+ + (+ |ssl3_connect_#t~mem78.offset_138| + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~tmp|) + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~new_cipher|)))) +(assert + (<= |ssl3_connect_#t~mem80_140| + (select (select |#memory_int_109| |ssl3_connect_#t~mem79.base_139|) + (+ |ssl3_connect_#t~mem79.offset_139| + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~algorithms|)))) +(assert + (>= |ssl3_connect_#t~mem80_140| + (select (select |#memory_int_109| |ssl3_connect_#t~mem79.base_139|) + (+ |ssl3_connect_#t~mem79.offset_139| + |#offset~STRUCT#?valid~INT?name~$Pointer$?id~ULONG?algorithms~ULONG?algo_strength~ULONG?algorithm2~ULONG?strength_bits~INT?alg_bits~INT?mask~ULONG?mask_strength~ULONG#~algorithms|)))) +(assert (<= (~bitwiseAnd |ssl3_connect_#t~mem80_140| 256) 0)) +(assert (>= (~bitwiseAnd |ssl3_connect_#t~mem80_140| 256) 0)) +(assert (<= ssl3_connect_~ret~9_141 |ssl3_connect_#t~nondet81_10|)) +(assert (>= ssl3_connect_~ret~9_141 |ssl3_connect_#t~nondet81_10|)) +(assert (<= ssl3_connect_~blastFlag~9_104 2)) +(assert (>= ssl3_connect_~blastFlag~9_104 2)) +(assert (<= ssl3_connect_~blastFlag~9_142 3)) +(assert (>= ssl3_connect_~blastFlag~9_142 3)) +(assert (not (<= ssl3_connect_~ret~9_141 0))) +(assert + (= |#memory_$Pointer$.base_144| + (store |#memory_$Pointer$.base_109| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.base_109| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + (select (select |#memory_$Pointer$.base_144| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))))) +(assert + (= |#memory_$Pointer$.offset_144| + (store |#memory_$Pointer$.offset_109| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.offset_109| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + (select (select |#memory_$Pointer$.offset_144| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))))) +(assert + (= |#memory_int_144| + (store |#memory_int_109| ssl3_connect_~s.base_11 + (store (select |#memory_int_109| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + 4416)))) +(assert + (= |#memory_$Pointer$.base_145| + (store |#memory_$Pointer$.base_144| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.base_144| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|) + (select (select |#memory_$Pointer$.base_145| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|)))))) +(assert + (= |#memory_$Pointer$.offset_145| + (store |#memory_$Pointer$.offset_144| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.offset_144| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|) + (select (select |#memory_$Pointer$.offset_145| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|)))))) +(assert + (= |#memory_int_145| + (store |#memory_int_144| ssl3_connect_~s.base_11 + (store (select |#memory_int_144| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|) + 0)))) +(assert + (<= |ssl3_connect_#t~mem174.base_146| + (select (select |#memory_$Pointer$.base_145| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (>= |ssl3_connect_#t~mem174.base_146| + (select (select |#memory_$Pointer$.base_145| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (<= |ssl3_connect_#t~mem174.offset_146| + (select (select |#memory_$Pointer$.offset_145| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (>= |ssl3_connect_#t~mem174.offset_146| + (select (select |#memory_$Pointer$.offset_145| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (<= |ssl3_connect_#t~mem175_147| + (select (select |#memory_int_145| |ssl3_connect_#t~mem174.base_146|) + (+ + (+ |ssl3_connect_#t~mem174.offset_146| + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~tmp|) + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~reuse_message|)))) +(assert + (>= |ssl3_connect_#t~mem175_147| + (select (select |#memory_int_145| |ssl3_connect_#t~mem174.base_146|) + (+ + (+ |ssl3_connect_#t~mem174.offset_146| + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~tmp|) + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~reuse_message|)))) +(assert (not (= |ssl3_connect_#t~mem175_147| 0))) +(assert (<= ssl3_connect_~skip~9_149 0)) +(assert (>= ssl3_connect_~skip~9_149 0)) +(assert true) +(assert true) +(assert + (<= |ssl3_connect_#t~mem17_152| + (select (select |#memory_int_145| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem17_152| + (select (select |#memory_int_145| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (<= ssl3_connect_~state~9_153 |ssl3_connect_#t~mem17_152|)) +(assert (>= ssl3_connect_~state~9_153 |ssl3_connect_#t~mem17_152|)) +(assert + (<= |ssl3_connect_#t~mem18_154| + (select (select |#memory_int_145| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem18_154| + (select (select |#memory_int_145| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem18_154| 12292))) +(assert + (<= |ssl3_connect_#t~mem19_156| + (select (select |#memory_int_145| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem19_156| + (select (select |#memory_int_145| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem19_156| 16384))) +(assert + (<= |ssl3_connect_#t~mem20_158| + (select (select |#memory_int_145| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem20_158| + (select (select |#memory_int_145| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem20_158| 4096))) +(assert + (<= |ssl3_connect_#t~mem21_160| + (select (select |#memory_int_145| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem21_160| + (select (select |#memory_int_145| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem21_160| 20480))) +(assert + (<= |ssl3_connect_#t~mem22_162| + (select (select |#memory_int_145| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem22_162| + (select (select |#memory_int_145| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem22_162| 4099))) +(assert + (<= |ssl3_connect_#t~mem23_164| + (select (select |#memory_int_145| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem23_164| + (select (select |#memory_int_145| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem23_164| 4368))) +(assert + (<= |ssl3_connect_#t~mem24_166| + (select (select |#memory_int_145| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem24_166| + (select (select |#memory_int_145| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem24_166| 4369))) +(assert + (<= |ssl3_connect_#t~mem25_168| + (select (select |#memory_int_145| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem25_168| + (select (select |#memory_int_145| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem25_168| 4384))) +(assert + (<= |ssl3_connect_#t~mem26_170| + (select (select |#memory_int_145| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem26_170| + (select (select |#memory_int_145| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem26_170| 4385))) +(assert + (<= |ssl3_connect_#t~mem27_172| + (select (select |#memory_int_145| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem27_172| + (select (select |#memory_int_145| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem27_172| 4400))) +(assert + (<= |ssl3_connect_#t~mem28_174| + (select (select |#memory_int_145| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem28_174| + (select (select |#memory_int_145| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem28_174| 4401))) +(assert + (<= |ssl3_connect_#t~mem29_176| + (select (select |#memory_int_145| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem29_176| + (select (select |#memory_int_145| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (<= |ssl3_connect_#t~mem29_176| 4416)) +(assert (>= |ssl3_connect_#t~mem29_176| 4416)) +(assert (<= ssl3_connect_~ret~9_178 |ssl3_connect_#t~nondet84_10|)) +(assert (>= ssl3_connect_~ret~9_178 |ssl3_connect_#t~nondet84_10|)) +(assert (<= ssl3_connect_~blastFlag~9_142 3)) +(assert (>= ssl3_connect_~blastFlag~9_142 3)) +(assert (<= ssl3_connect_~blastFlag~9_179 4)) +(assert (>= ssl3_connect_~blastFlag~9_179 4)) +(assert (not (<= ssl3_connect_~ret~9_178 0))) +(assert + (= |#memory_$Pointer$.base_181| + (store |#memory_$Pointer$.base_145| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.base_145| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + (select (select |#memory_$Pointer$.base_181| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))))) +(assert + (= |#memory_$Pointer$.offset_181| + (store |#memory_$Pointer$.offset_145| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.offset_145| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + (select (select |#memory_$Pointer$.offset_181| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))))) +(assert + (= |#memory_int_181| + (store |#memory_int_145| ssl3_connect_~s.base_11 + (store (select |#memory_int_145| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + 4432)))) +(assert + (= |#memory_$Pointer$.base_182| + (store |#memory_$Pointer$.base_181| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.base_181| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|) + (select (select |#memory_$Pointer$.base_182| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|)))))) +(assert + (= |#memory_$Pointer$.offset_182| + (store |#memory_$Pointer$.offset_181| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.offset_181| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|) + (select (select |#memory_$Pointer$.offset_182| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|)))))) +(assert + (= |#memory_int_182| + (store |#memory_int_181| ssl3_connect_~s.base_11 + (store (select |#memory_int_181| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|) + 0)))) +(assert (<= ssl3_connect_~tmp___6~9_183 |ssl3_connect_#t~nondet87_10|)) +(assert (>= ssl3_connect_~tmp___6~9_183 |ssl3_connect_#t~nondet87_10|)) +(assert (not (= ssl3_connect_~tmp___6~9_183 0))) +(assert + (<= |ssl3_connect_#t~mem174.base_185| + (select (select |#memory_$Pointer$.base_182| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (>= |ssl3_connect_#t~mem174.base_185| + (select (select |#memory_$Pointer$.base_182| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (<= |ssl3_connect_#t~mem174.offset_185| + (select (select |#memory_$Pointer$.offset_182| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (>= |ssl3_connect_#t~mem174.offset_185| + (select (select |#memory_$Pointer$.offset_182| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (<= |ssl3_connect_#t~mem175_186| + (select (select |#memory_int_182| |ssl3_connect_#t~mem174.base_185|) + (+ + (+ |ssl3_connect_#t~mem174.offset_185| + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~tmp|) + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~reuse_message|)))) +(assert + (>= |ssl3_connect_#t~mem175_186| + (select (select |#memory_int_182| |ssl3_connect_#t~mem174.base_185|) + (+ + (+ |ssl3_connect_#t~mem174.offset_185| + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~tmp|) + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~reuse_message|)))) +(assert (not (= |ssl3_connect_#t~mem175_186| 0))) +(assert (<= ssl3_connect_~skip~9_188 0)) +(assert (>= ssl3_connect_~skip~9_188 0)) +(assert true) +(assert true) +(assert + (<= |ssl3_connect_#t~mem17_191| + (select (select |#memory_int_182| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem17_191| + (select (select |#memory_int_182| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (<= ssl3_connect_~state~9_192 |ssl3_connect_#t~mem17_191|)) +(assert (>= ssl3_connect_~state~9_192 |ssl3_connect_#t~mem17_191|)) +(assert + (<= |ssl3_connect_#t~mem18_193| + (select (select |#memory_int_182| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem18_193| + (select (select |#memory_int_182| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem18_193| 12292))) +(assert + (<= |ssl3_connect_#t~mem19_195| + (select (select |#memory_int_182| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem19_195| + (select (select |#memory_int_182| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem19_195| 16384))) +(assert + (<= |ssl3_connect_#t~mem20_197| + (select (select |#memory_int_182| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem20_197| + (select (select |#memory_int_182| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem20_197| 4096))) +(assert + (<= |ssl3_connect_#t~mem21_199| + (select (select |#memory_int_182| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem21_199| + (select (select |#memory_int_182| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem21_199| 20480))) +(assert + (<= |ssl3_connect_#t~mem22_201| + (select (select |#memory_int_182| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem22_201| + (select (select |#memory_int_182| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem22_201| 4099))) +(assert + (<= |ssl3_connect_#t~mem23_203| + (select (select |#memory_int_182| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem23_203| + (select (select |#memory_int_182| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem23_203| 4368))) +(assert + (<= |ssl3_connect_#t~mem24_205| + (select (select |#memory_int_182| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem24_205| + (select (select |#memory_int_182| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem24_205| 4369))) +(assert + (<= |ssl3_connect_#t~mem25_207| + (select (select |#memory_int_182| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem25_207| + (select (select |#memory_int_182| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem25_207| 4384))) +(assert + (<= |ssl3_connect_#t~mem26_209| + (select (select |#memory_int_182| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem26_209| + (select (select |#memory_int_182| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem26_209| 4385))) +(assert + (<= |ssl3_connect_#t~mem27_211| + (select (select |#memory_int_182| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem27_211| + (select (select |#memory_int_182| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem27_211| 4400))) +(assert + (<= |ssl3_connect_#t~mem28_213| + (select (select |#memory_int_182| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem28_213| + (select (select |#memory_int_182| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem28_213| 4401))) +(assert + (<= |ssl3_connect_#t~mem29_215| + (select (select |#memory_int_182| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem29_215| + (select (select |#memory_int_182| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem29_215| 4416))) +(assert + (<= |ssl3_connect_#t~mem30_217| + (select (select |#memory_int_182| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem30_217| + (select (select |#memory_int_182| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem30_217| 4417))) +(assert + (<= |ssl3_connect_#t~mem31_219| + (select (select |#memory_int_182| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem31_219| + (select (select |#memory_int_182| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (<= |ssl3_connect_#t~mem31_219| 4432)) +(assert (>= |ssl3_connect_#t~mem31_219| 4432)) +(assert (<= ssl3_connect_~ret~9_221 |ssl3_connect_#t~nondet88_10|)) +(assert (>= ssl3_connect_~ret~9_221 |ssl3_connect_#t~nondet88_10|)) +(assert (not (= ssl3_connect_~blastFlag~9_179 5))) +(assert (not (<= ssl3_connect_~ret~9_221 0))) +(assert + (= |#memory_$Pointer$.base_224| + (store |#memory_$Pointer$.base_182| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.base_182| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + (select (select |#memory_$Pointer$.base_224| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))))) +(assert + (= |#memory_$Pointer$.offset_224| + (store |#memory_$Pointer$.offset_182| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.offset_182| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + (select (select |#memory_$Pointer$.offset_224| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))))) +(assert + (= |#memory_int_224| + (store |#memory_int_182| ssl3_connect_~s.base_11 + (store (select |#memory_int_182| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|) + 4448)))) +(assert + (= |#memory_$Pointer$.base_225| + (store |#memory_$Pointer$.base_224| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.base_224| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|) + (select (select |#memory_$Pointer$.base_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|)))))) +(assert + (= |#memory_$Pointer$.offset_225| + (store |#memory_$Pointer$.offset_224| ssl3_connect_~s.base_11 + (store (select |#memory_$Pointer$.offset_224| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|) + (select (select |#memory_$Pointer$.offset_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|)))))) +(assert + (= |#memory_int_225| + (store |#memory_int_224| ssl3_connect_~s.base_11 + (store (select |#memory_int_224| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~init_num|) + 0)))) +(assert + (<= |ssl3_connect_#t~mem174.base_226| + (select (select |#memory_$Pointer$.base_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (>= |ssl3_connect_#t~mem174.base_226| + (select (select |#memory_$Pointer$.base_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (<= |ssl3_connect_#t~mem174.offset_226| + (select (select |#memory_$Pointer$.offset_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (>= |ssl3_connect_#t~mem174.offset_226| + (select (select |#memory_$Pointer$.offset_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~s3|)))) +(assert + (<= |ssl3_connect_#t~mem175_227| + (select (select |#memory_int_225| |ssl3_connect_#t~mem174.base_226|) + (+ + (+ |ssl3_connect_#t~mem174.offset_226| + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~tmp|) + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~reuse_message|)))) +(assert + (>= |ssl3_connect_#t~mem175_227| + (select (select |#memory_int_225| |ssl3_connect_#t~mem174.base_226|) + (+ + (+ |ssl3_connect_#t~mem174.offset_226| + |#offset~STRUCT#?flags~LONG?delay_buf_pop_ret~INT?read_sequence~ARRAY#_8_~UCHAR#?read_mac_secret~ARRAY#_36_~UCHAR#?write_sequence~ARRAY#_8_~UCHAR#?write_mac_secret~ARRAY#_36_~UCHAR#?server_random~ARRAY#_32_~UCHAR#?client_random~ARRAY#_32_~UCHAR#?rbuf~~SSL3_BUFFER?wbuf~~SSL3_BUFFER?rrec~~SSL3_RECORD?wrec~~SSL3_RECORD?alert_fragment~ARRAY#_2_~UCHAR#?alert_fragment_len~UINT?handshake_fragment~ARRAY#_4_~UCHAR#?handshake_fragment_len~UINT?wnum~UINT?wpend_tot~INT?wpend_type~INT?wpend_ret~INT?wpend_buf~$Pointer$?finish_dgst1~~EVP_MD_CTX?finish_dgst2~~EVP_MD_CTX?change_cipher_spec~INT?warn_alert~INT?fatal_alert~INT?alert_dispatch~INT?send_alert~ARRAY#_2_~UCHAR#?renegotiate~INT?total_renegotiations~INT?num_renegotiations~INT?in_read_app_data~INT?tmp~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT##~tmp|) + |#offset~STRUCT#?cert_verify_md~ARRAY#_72_~UCHAR#?finish_md~ARRAY#_72_~UCHAR#?finish_md_len~INT?peer_finish_md~ARRAY#_72_~UCHAR#?peer_finish_md_len~INT?message_size~ULONG?message_type~INT?new_cipher~$Pointer$?dh~$Pointer$?next_state~INT?reuse_message~INT?cert_req~INT?ctype_num~INT?ctype~ARRAY#_7_~CHAR#?ca_names~$Pointer$?use_rsa_tmp~INT?key_block_length~INT?key_block~$Pointer$?new_sym_enc~$Pointer$?new_hash~$Pointer$?new_compression~$Pointer$?cert_request~INT#~reuse_message|)))) +(assert (not (= |ssl3_connect_#t~mem175_227| 0))) +(assert (<= ssl3_connect_~skip~9_229 0)) +(assert (>= ssl3_connect_~skip~9_229 0)) +(assert true) +(assert true) +(assert + (<= |ssl3_connect_#t~mem17_232| + (select (select |#memory_int_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem17_232| + (select (select |#memory_int_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (<= ssl3_connect_~state~9_233 |ssl3_connect_#t~mem17_232|)) +(assert (>= ssl3_connect_~state~9_233 |ssl3_connect_#t~mem17_232|)) +(assert + (<= |ssl3_connect_#t~mem18_234| + (select (select |#memory_int_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem18_234| + (select (select |#memory_int_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem18_234| 12292))) +(assert + (<= |ssl3_connect_#t~mem19_236| + (select (select |#memory_int_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem19_236| + (select (select |#memory_int_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem19_236| 16384))) +(assert + (<= |ssl3_connect_#t~mem20_238| + (select (select |#memory_int_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem20_238| + (select (select |#memory_int_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem20_238| 4096))) +(assert + (<= |ssl3_connect_#t~mem21_240| + (select (select |#memory_int_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem21_240| + (select (select |#memory_int_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem21_240| 20480))) +(assert + (<= |ssl3_connect_#t~mem22_242| + (select (select |#memory_int_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem22_242| + (select (select |#memory_int_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem22_242| 4099))) +(assert + (<= |ssl3_connect_#t~mem23_244| + (select (select |#memory_int_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem23_244| + (select (select |#memory_int_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem23_244| 4368))) +(assert + (<= |ssl3_connect_#t~mem24_246| + (select (select |#memory_int_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem24_246| + (select (select |#memory_int_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem24_246| 4369))) +(assert + (<= |ssl3_connect_#t~mem25_248| + (select (select |#memory_int_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem25_248| + (select (select |#memory_int_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem25_248| 4384))) +(assert + (<= |ssl3_connect_#t~mem26_250| + (select (select |#memory_int_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem26_250| + (select (select |#memory_int_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem26_250| 4385))) +(assert + (<= |ssl3_connect_#t~mem27_252| + (select (select |#memory_int_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem27_252| + (select (select |#memory_int_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem27_252| 4400))) +(assert + (<= |ssl3_connect_#t~mem28_254| + (select (select |#memory_int_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem28_254| + (select (select |#memory_int_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem28_254| 4401))) +(assert + (<= |ssl3_connect_#t~mem29_256| + (select (select |#memory_int_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem29_256| + (select (select |#memory_int_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem29_256| 4416))) +(assert + (<= |ssl3_connect_#t~mem30_258| + (select (select |#memory_int_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem30_258| + (select (select |#memory_int_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem30_258| 4417))) +(assert + (<= |ssl3_connect_#t~mem31_260| + (select (select |#memory_int_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem31_260| + (select (select |#memory_int_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem31_260| 4432))) +(assert + (<= |ssl3_connect_#t~mem32_262| + (select (select |#memory_int_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem32_262| + (select (select |#memory_int_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (not (= |ssl3_connect_#t~mem32_262| 4433))) +(assert + (<= |ssl3_connect_#t~mem33_264| + (select (select |#memory_int_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert + (>= |ssl3_connect_#t~mem33_264| + (select (select |#memory_int_225| ssl3_connect_~s.base_11) + (+ ssl3_connect_~s.offset_11 + |#offset~STRUCT#?version~INT?type~INT?method~$Pointer$?rbio~$Pointer$?wbio~$Pointer$?bbio~$Pointer$?rwstate~INT?in_handshake~INT?handshake_func~$Pointer$?server~INT?new_session~INT?quiet_shutdown~INT?shutdown~INT?state~INT?rstate~INT?init_buf~$Pointer$?init_num~INT?init_off~INT?packet~$Pointer$?packet_length~UINT?s2~$Pointer$?s3~$Pointer$?read_ahead~INT?hit~INT?purpose~INT?trust~INT?cipher_list~$Pointer$?cipher_list_by_id~$Pointer$?enc_read_ctx~$Pointer$?read_hash~$Pointer$?expand~$Pointer$?enc_write_ctx~$Pointer$?write_hash~$Pointer$?compress~$Pointer$?cert~$Pointer$?sid_ctx_length~UINT?sid_ctx~ARRAY#_32_~UCHAR#?session~$Pointer$?verify_mode~INT?verify_depth~INT?verify_callback~$Pointer$?info_callback~$Pointer$?error~INT?error_code~INT?ctx~$Pointer$?debug~INT?verify_result~LONG?ex_data~~CRYPTO_EX_DATA?client_CA~$Pointer$?references~INT?options~ULONG?mode~ULONG?first_packet~INT?client_version~INT#~state|)))) +(assert (<= |ssl3_connect_#t~mem33_264| 4448)) +(assert (>= |ssl3_connect_#t~mem33_264| 4448)) +(assert (<= ssl3_connect_~ret~9_266 |ssl3_connect_#t~nondet91_10|)) +(assert (>= ssl3_connect_~ret~9_266 |ssl3_connect_#t~nondet91_10|)) +(assert (<= ssl3_connect_~blastFlag~9_179 4)) +(assert (>= ssl3_connect_~blastFlag~9_179 4)) +(assert true) +(check-sat) +(exit) + diff --git a/tests/regress/mcsat/s3_srvr.blast.01_false-unreach-call.i.cil.c_0.smt2.gold b/tests/regress/mcsat/s3_clnt.blast.01_false-unreach-call.i.cil.c_0.smt2.gold similarity index 100% rename from tests/regress/mcsat/s3_srvr.blast.01_false-unreach-call.i.cil.c_0.smt2.gold rename to tests/regress/mcsat/s3_clnt.blast.01_false-unreach-call.i.cil.c_0.smt2.gold diff --git a/tests/regress/mcsat/s3_srvr.blast.01_false-unreach-call.i.cil.c_0.smt2 b/tests/regress/mcsat/s3_srvr.blast.01_false-unreach-call.i.cil.c_0.smt2.disabled similarity index 100% rename from tests/regress/mcsat/s3_srvr.blast.01_false-unreach-call.i.cil.c_0.smt2 rename to tests/regress/mcsat/s3_srvr.blast.01_false-unreach-call.i.cil.c_0.smt2.disabled From 23980b9b6cff5e8eaa50957cb62738470657a761 Mon Sep 17 00:00:00 2001 From: Ahmed <43099566+ahmed-irfan@users.noreply.github.com> Date: Sat, 29 Apr 2023 00:40:59 -0700 Subject: [PATCH 102/182] sort array and read terms according to the score (#443) --- src/mcsat/weq/weak_eq_graph.c | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/src/mcsat/weq/weak_eq_graph.c b/src/mcsat/weq/weak_eq_graph.c index c7d95b7bb..45eb41e5e 100644 --- a/src/mcsat/weq/weak_eq_graph.c +++ b/src/mcsat/weq/weak_eq_graph.c @@ -20,7 +20,7 @@ #include "mcsat/tracing.h" -//#include "utils/int_array_sort2.h" +#include "utils/int_array_sort2.h" #include "utils/ptr_vectors.h" #include "utils/refcount_strings.h" @@ -1251,7 +1251,6 @@ term_t weq_graph_get_array_update_idx_lemma(weq_graph_t* weq, term_t update_term /* Compare terms according to their heuristic score */ -/* static bool weq_graph_array_terms_compare(void *data, term_t t1, term_t t2) { plugin_context_t* ctx = (plugin_context_t*) data; @@ -1265,7 +1264,6 @@ bool weq_graph_array_terms_compare(void *data, term_t t1, term_t t2) { return t1 > t2; } } -*/ static void copy_uniques(ivector_t *to, ivector_t *from) { @@ -1303,15 +1301,13 @@ void weq_graph_check_array_conflict(weq_graph_t* weq, ivector_t* conflict) { init_ivector(&array_terms, 0); copy_uniques(&array_terms, &weq->array_terms); - // TODO: Heuristic to try // store array terms according to heuristic score - //int_array_sort2(array_terms.data, array_terms.size, weq->ctx, weq_graph_array_terms_compare); + int_array_sort2(array_terms.data, array_terms.size, weq->ctx, weq_graph_array_terms_compare); init_ivector(&select_terms, 0); copy_uniques(&select_terms, &weq->select_terms); - // TODO: Heuristic to try // store select terms according to heuristic score - //int_array_sort2(select_terms.data, select_terms.size, weq->ctx, weq_graph_array_terms_compare); + int_array_sort2(select_terms.data, select_terms.size, weq->ctx, weq_graph_array_terms_compare); //ok = weq_graph_array_idx_check(weq, conflict, &array_terms); From 3bd35801938e815c431aa1306af8049fa068a5ba Mon Sep 17 00:00:00 2001 From: Ahmed <43099566+ahmed-irfan@users.noreply.github.com> Date: Wed, 10 May 2023 19:30:50 -0700 Subject: [PATCH 103/182] typo manual.tex --- doc/manual/manual.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/manual/manual.tex b/doc/manual/manual.tex index 7881c2db5..bde08d951 100644 --- a/doc/manual/manual.tex +++ b/doc/manual/manual.tex @@ -786,7 +786,7 @@ \subsection*{Configure Yices~2} \begin{small} \begin{lstlisting}[language=sh] ./configure CPPFLAGS=-DHAVE_KISSAT \ - LIBS='-kissat -lm' + LIBS='-lkissat -lm' \end{lstlisting} \end{small} From dc49201fc16826fa0546659892b8d709c366b175 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Thu, 18 May 2023 13:37:37 -0700 Subject: [PATCH 104/182] update unit test --- tests/unit/test_api7.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/tests/unit/test_api7.c b/tests/unit/test_api7.c index 35b8fee2c..e5b82694c 100644 --- a/tests/unit/test_api7.c +++ b/tests/unit/test_api7.c @@ -152,7 +152,7 @@ static const bool supported[NUM_SMT_LOGICS] = { false, // NRA false, // NIRA false, // RDL - false, // UF + false, // UF false, // ABV false, // ALIA false, // ALRA @@ -193,9 +193,9 @@ static const bool supported[NUM_SMT_LOGICS] = { true, // QF_ALIA true, // QF_ALRA true, // QF_ALIRA - false, // QF_ANIA - false, // QF_ANRA - false, // QF_ANIRA + true, // QF_ANIA + true, // QF_ANRA + true, // QF_ANIRA true, // QF_AUF true, // QF_UFBV true, // QF_UFIDL @@ -210,9 +210,9 @@ static const bool supported[NUM_SMT_LOGICS] = { true, // QF_AUFLIA true, // QF_AUFLRA true, // QF_AUFLIRA - false, // QF_AUFNIA - false, // QF_AUFNRA - false, // QF_AUFNIRA + true, // QF_AUFNIA + true, // QF_AUFNRA + true, // QF_AUFNIRA true, // ALL ==> QF_AUFLIRA + QF+_BV }; From 22f50677c1982e54de688c39aa513bc6af972bd1 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Thu, 18 May 2023 13:39:57 -0700 Subject: [PATCH 105/182] minor typo --- tests/unit/test_api7.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/unit/test_api7.c b/tests/unit/test_api7.c index e5b82694c..90c0d8b89 100644 --- a/tests/unit/test_api7.c +++ b/tests/unit/test_api7.c @@ -152,7 +152,7 @@ static const bool supported[NUM_SMT_LOGICS] = { false, // NRA false, // NIRA false, // RDL - false, // UF + false, // UF false, // ABV false, // ALIA false, // ALRA From c4270881f4da91a5f5660750af2add486682a63b Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Fri, 19 May 2023 00:08:10 -0700 Subject: [PATCH 106/182] add qf_ufbvlia logic --- src/api/context_config.c | 3 + src/api/smt_logic_codes.c | 36 +- src/api/smt_logic_codes.h | 5 + src/include/yices.h | 1 + ...email_spec0_product09.cil_smt-query.0.smt2 | 847 ++++++++++++++++++ ..._spec0_product09.cil_smt-query.0.smt2.gold | 2 + ...ec0_product09.cil_smt-query.0.smt2.options | 1 + tests/regress/test_qfufbvlia.smt2 | 4 + tests/regress/test_qfufbvlia.smt2.gold | 1 + tests/unit/test_api7.c | 4 + tests/unit/test_smt_codes.c | 4 + 11 files changed, 900 insertions(+), 8 deletions(-) create mode 100644 tests/regress/coverage/smtlib/QF_UFBVLIA/20190307-CPAchecker_kInduction-SoSy_Lab/email_spec0_product09.cil_smt-query.0.smt2 create mode 100644 tests/regress/coverage/smtlib/QF_UFBVLIA/20190307-CPAchecker_kInduction-SoSy_Lab/email_spec0_product09.cil_smt-query.0.smt2.gold create mode 100644 tests/regress/coverage/smtlib/QF_UFBVLIA/20190307-CPAchecker_kInduction-SoSy_Lab/email_spec0_product09.cil_smt-query.0.smt2.options create mode 100644 tests/regress/test_qfufbvlia.smt2 create mode 100644 tests/regress/test_qfufbvlia.smt2.gold diff --git a/src/api/context_config.c b/src/api/context_config.c index adaccc4a2..f57c23f57 100644 --- a/src/api/context_config.c +++ b/src/api/context_config.c @@ -158,6 +158,7 @@ static const int32_t logic2arch[NUM_SMT_LOGICS] = { -1, // ANIRA -1, // AUF -1, // UFBV + -1, // UFBVLIA -1, // UFIDL -1, // UFLIA -1, // UFLRA @@ -194,6 +195,8 @@ static const int32_t logic2arch[NUM_SMT_LOGICS] = { CTX_ARCH_MCSAT, // QF_ANIRA CTX_ARCH_EGFUN, // QF_AUF CTX_ARCH_EGBV, // QF_UFBV + CTX_ARCH_EGSPLXBV, // QF_UFBVLIA + CTX_ARCH_EGSPLX, // QF_UFIDL CTX_ARCH_EGSPLX, // QF_UFLIA CTX_ARCH_EGSPLX, // QF_UFLRA diff --git a/src/api/smt_logic_codes.c b/src/api/smt_logic_codes.c index 2cc58ebef..747243a7b 100644 --- a/src/api/smt_logic_codes.c +++ b/src/api/smt_logic_codes.c @@ -86,6 +86,7 @@ static const char * const smt_logic_names[NUM_SMT_LOGIC_NAMES] = { "QF_RDL", "QF_UF", "QF_UFBV", + "QF_UFBVLIA", "QF_UFIDL", "QF_UFLIA", "QF_UFLIRA", @@ -97,6 +98,7 @@ static const char * const smt_logic_names[NUM_SMT_LOGIC_NAMES] = { "RDL", "UF", "UFBV", + "UFBVLIA", "UFIDL", "UFLIA", "UFLIRA", @@ -167,6 +169,7 @@ static const smt_logic_t smt_code[NUM_SMT_LOGIC_NAMES] = { QF_RDL, QF_UF, QF_UFBV, + QF_UFBVLIA, QF_UFIDL, QF_UFLIA, QF_UFLIRA, @@ -178,6 +181,7 @@ static const smt_logic_t smt_code[NUM_SMT_LOGIC_NAMES] = { RDL, UF, UFBV, + UFBVLIA, UFIDL, UFLIA, UFLIRA, @@ -292,6 +296,7 @@ static const uint8_t has_arrays[NUM_SMT_LOGICS] = { true, // ANIRA true, // AUF false, // UFBV + false, // UFBVLIA false, // UFIDL false, // UFLIA false, // UFLRA @@ -328,6 +333,7 @@ static const uint8_t has_arrays[NUM_SMT_LOGICS] = { true, // QF_ANIRA true, // QF_AUF false, // QF_UFBV + false, // QF_UFBVLIA false, // QF_UFIDL false, // QF_UFLIA false, // QF_UFLRA @@ -370,6 +376,7 @@ static const uint8_t has_bv[NUM_SMT_LOGICS] = { false, // ANIRA false, // AUF true, // UFBV + true, // UFBVLIA false, // UFIDL false, // UFLIA false, // UFLRA @@ -406,6 +413,7 @@ static const uint8_t has_bv[NUM_SMT_LOGICS] = { false, // QF_ANIRA false, // QF_AUF true, // QF_UFBV + true, // QF_UFBVLIA false, // QF_UFIDL false, // QF_UFLIA false, // QF_UFLRA @@ -448,6 +456,7 @@ static const uint8_t has_quantifiers[NUM_SMT_LOGICS] = { true, // ANIRA true, // AUF true, // UFBV + true, // UFBVLIA true, // UFIDL true, // UFLIA true, // UFLRA @@ -484,6 +493,7 @@ static const uint8_t has_quantifiers[NUM_SMT_LOGICS] = { false, // QF_ANIRA false, // QF_AUF false, // QF_UFBV + false, // QF_UFBVLIA false, // QF_UFIDL false, // QF_UFLIA false, // QF_UFLRA @@ -526,6 +536,7 @@ static const uint8_t has_uf[NUM_SMT_LOGICS] = { false, // ANIRA true, // AUF true, // UFBV + true, // UFBVLIA true, // UFIDL true, // UFLIA true, // UFLRA @@ -562,6 +573,7 @@ static const uint8_t has_uf[NUM_SMT_LOGICS] = { false, // QF_ANIRA true, // QF_AUF true, // QF_UFBV + true, // QF_UFBVLIA true, // QF_UFIDL true, // QF_UFLIA true, // QF_UFLRA @@ -604,6 +616,7 @@ static const uint8_t arith_frag[NUM_SMT_LOGICS] = { ARITH_NIRA, // ANIRA ARITH_NONE, // AUF ARITH_NONE, // UFBV + ARITH_LIA, // UFBVLIA ARITH_IDL, // UFIDL ARITH_LIA, // UFLIA ARITH_LRA, // UFLRA @@ -640,6 +653,7 @@ static const uint8_t arith_frag[NUM_SMT_LOGICS] = { ARITH_NIRA, // QF_ANIRA ARITH_NONE, // QF_AUF ARITH_NONE, // QF_UFBV + ARITH_LIA, // QF_UFBVLIA ARITH_IDL, // QF_UFIDL ARITH_LIA, // QF_UFLIA ARITH_LRA, // QF_UFLRA @@ -723,6 +737,7 @@ static const smt_logic_t logic2qf[NUM_SMT_LOGICS] = { QF_ANIRA, QF_AUF, QF_UFBV, + QF_UFBVLIA, QF_UFIDL, QF_UFLIA, QF_UFLRA, @@ -762,6 +777,7 @@ static const smt_logic_t logic2qf[NUM_SMT_LOGICS] = { QF_ANIRA, QF_AUF, QF_UFBV, + QF_UFBVLIA, QF_UFIDL, QF_UFLIA, QF_UFLRA, @@ -791,6 +807,8 @@ smt_logic_t qf_fragment(smt_logic_t code) { * Which of these are officially recognized by our masters. * * - 2014/06/19: marked as 'official' everything in SMT-COMP 2014 + * + * - 2023/05/18: updated according to SMT-COMP 2022 */ static const bool is_official[NUM_SMT_LOGICS] = { false, // NONE @@ -806,28 +824,29 @@ static const bool is_official[NUM_SMT_LOGICS] = { false, // NIRA false, // RDL true, // UF - false, // ABV + true, // ABV true, // ALIA false, // ALRA false, // ALIRA - false, // ANIA + true, // ANIA false, // ANRA false, // ANIRA false, // AUF true, // UFBV + true, // UFBVLIA true, // UFIDL true, // UFLIA true, // UFLRA false, // UFLIRA true, // UFNIA - false, // UFNRA + true, // UFNRA false, // UFNIRA false, // UFRDL - false, // AUFBV + true, // AUFBV true, // AUFLIA false, // AUFLRA true, // AUFLIRA - false, // AUFNIA + true, // AUFNIA false, // AUFNRA true, // AUFNIRA @@ -836,21 +855,22 @@ static const bool is_official[NUM_SMT_LOGICS] = { true, // QF_IDL true, // QF_LIA true, // QF_LRA - false, // QF_LIRA + true, // QF_LIRA true, // QF_NIA true, // QF_NRA - false, // QF_NIRA + true, // QF_NIRA true, // QF_RDL true, // QF_UF true, // QF_ABV true, // QF_ALIA false, // QF_ALRA false, // QF_ALIRA - false, // QF_ANIA + true, // QF_ANIA false, // QF_ANRA false, // QF_ANIRA false, // QF_AUF true, // QF_UFBV + true, // QF_UFBVLIA true, // QF_UFIDL true, // QF_UFLIA true, // QF_UFLRA diff --git a/src/api/smt_logic_codes.h b/src/api/smt_logic_codes.h index 66e87e459..8c818cdce 100644 --- a/src/api/smt_logic_codes.h +++ b/src/api/smt_logic_codes.h @@ -55,6 +55,9 @@ * (except that we don't have AIDL and ARDL?). * * Then, for each logic, we have a quantifier-free variant. + * + * 05/18/2023: Add UF+BV+integer arithmetic + * -------------------------------------------------- */ typedef enum smt_logic { NONE, // added 12/27/2012 @@ -86,6 +89,7 @@ typedef enum smt_logic { // Uninterpreted function + another theory UFBV, // uninterpreted functions + bitvectors + UFBVLIA, // uninterpreted functions + bitvectors + linear integer arithmetic UFIDL, // uninterpreted functions + integer difference logic UFLIA, // uninterpreted functions + linear integer arithmetic UFLRA, // uninterpreted functions + linear real arithmetic @@ -131,6 +135,7 @@ typedef enum smt_logic { // Uninterpreted function + another theory QF_UFBV, // uninterpreted functions + bitvectors + QF_UFBVLIA, // uninterpreted functions + bitvectors + linear integer arithmetic QF_UFIDL, // uninterpreted functions + integer difference logic QF_UFLIA, // uninterpreted functions + linear integer arithmetic QF_UFLRA, // uninterpreted functions + linear real arithmetic diff --git a/src/include/yices.h b/src/include/yices.h index 8d42843b0..22e9514f5 100644 --- a/src/include/yices.h +++ b/src/include/yices.h @@ -2836,6 +2836,7 @@ __YICES_DLLSPEC__ extern int32_t yices_set_config(ctx_config_t *config, const ch * QF_AUFLIRA: arrays, uninterpreted functions, and mixed linear arithmetic * * QF_UFBV: uninterpreted functions + bitvectors + * QF_UFBVLIA: uninterpreted functions + bitvectors + linear integer arithmetic * QF_UFIDL: uninterpreted functions + integer difference logic * QF_UFLIA: uninterpreted functions + linear integer arithmetic * QF_UFLRA: uninterpreted functions + linear real arithmetic diff --git a/tests/regress/coverage/smtlib/QF_UFBVLIA/20190307-CPAchecker_kInduction-SoSy_Lab/email_spec0_product09.cil_smt-query.0.smt2 b/tests/regress/coverage/smtlib/QF_UFBVLIA/20190307-CPAchecker_kInduction-SoSy_Lab/email_spec0_product09.cil_smt-query.0.smt2 new file mode 100644 index 000000000..82622280f --- /dev/null +++ b/tests/regress/coverage/smtlib/QF_UFBVLIA/20190307-CPAchecker_kInduction-SoSy_Lab/email_spec0_product09.cil_smt-query.0.smt2 @@ -0,0 +1,847 @@ +(set-info :smt-lib-version 2.6) +(set-logic QF_UFBVLIA) +(set-info :source | +Generated by: SoSy-Lab +Generated on: 2019-03-07 +Generator: CPAchecker 1.8-svn 30724 using kInduction +Application: Software Verification for programs written in C +Target solver: MathSAT5 +|) +(set-info :license "http://www.apache.org/licenses/LICENSE-2.0") +(set-info :category "industrial") +(set-info :status unsat) + +(push 1) +(define-fun _2 () Bool false) +(assert _2) +(check-sat) +(pop 1) +(push 1) +(declare-fun __string__ (Int) (_ BitVec 32)) +(declare-fun bob@2 () (_ BitVec 32)) +(declare-fun rjh@2 () (_ BitVec 32)) +(declare-fun chuck@2 () (_ BitVec 32)) +(declare-fun __ste_Email_counter@2 () (_ BitVec 32)) +(declare-fun __ste_email_id0@2 () (_ BitVec 32)) +(declare-fun __ste_email_id1@2 () (_ BitVec 32)) +(declare-fun __ste_email_from0@2 () (_ BitVec 32)) +(declare-fun __ste_email_from1@2 () (_ BitVec 32)) +(declare-fun __ste_email_to0@2 () (_ BitVec 32)) +(declare-fun __ste_email_to1@2 () (_ BitVec 32)) +(declare-fun head@2 () (_ BitVec 32)) +(declare-fun __ste_Client_counter@2 () (_ BitVec 32)) +(declare-fun __ste_ClientAddressBook_size0@2 () (_ BitVec 32)) +(declare-fun __ste_ClientAddressBook_size1@2 () (_ BitVec 32)) +(declare-fun __ste_ClientAddressBook_size2@2 () (_ BitVec 32)) +(declare-fun __ste_Client_AddressBook0_Alias0@2 () (_ BitVec 32)) +(declare-fun __ste_Client_AddressBook0_Alias1@2 () (_ BitVec 32)) +(declare-fun __ste_Client_AddressBook0_Alias2@2 () (_ BitVec 32)) +(declare-fun __ste_Client_AddressBook1_Alias0@2 () (_ BitVec 32)) +(declare-fun __ste_Client_AddressBook1_Alias1@2 () (_ BitVec 32)) +(declare-fun __ste_Client_AddressBook1_Alias2@2 () (_ BitVec 32)) +(declare-fun __ste_Client_AddressBook2_Alias0@2 () (_ BitVec 32)) +(declare-fun __ste_Client_AddressBook2_Alias1@2 () (_ BitVec 32)) +(declare-fun __ste_Client_AddressBook2_Alias2@2 () (_ BitVec 32)) +(declare-fun __ste_Client_AddressBook0_Address0@2 () (_ BitVec 32)) +(declare-fun __ste_Client_AddressBook0_Address1@2 () (_ BitVec 32)) +(declare-fun __ste_Client_AddressBook0_Address2@2 () (_ BitVec 32)) +(declare-fun __ste_Client_AddressBook1_Address0@2 () (_ BitVec 32)) +(declare-fun __ste_Client_AddressBook1_Address1@2 () (_ BitVec 32)) +(declare-fun __ste_Client_AddressBook1_Address2@2 () (_ BitVec 32)) +(declare-fun __ste_Client_AddressBook2_Address0@2 () (_ BitVec 32)) +(declare-fun __ste_Client_AddressBook2_Address1@2 () (_ BitVec 32)) +(declare-fun __ste_Client_AddressBook2_Address2@2 () (_ BitVec 32)) +(declare-fun __ste_ClientKeyring_size0@2 () (_ BitVec 32)) +(declare-fun __ste_ClientKeyring_size1@2 () (_ BitVec 32)) +(declare-fun __ste_ClientKeyring_size2@2 () (_ BitVec 32)) +(declare-fun __ste_Client_Keyring0_User0@2 () (_ BitVec 32)) +(declare-fun __ste_Client_Keyring0_User1@2 () (_ BitVec 32)) +(declare-fun __ste_Client_Keyring1_User0@2 () (_ BitVec 32)) +(declare-fun __ste_Client_Keyring1_User1@2 () (_ BitVec 32)) +(declare-fun __ste_Client_Keyring2_User0@2 () (_ BitVec 32)) +(declare-fun __ste_Client_Keyring2_User1@2 () (_ BitVec 32)) +(declare-fun __ste_client_forwardReceiver0@2 () (_ BitVec 32)) +(declare-fun __ste_client_forwardReceiver1@2 () (_ BitVec 32)) +(declare-fun __ste_client_forwardReceiver2@2 () (_ BitVec 32)) +(declare-fun __ste_client_idCounter0@2 () (_ BitVec 32)) +(declare-fun __ste_client_idCounter1@2 () (_ BitVec 32)) +(declare-fun __ste_client_idCounter2@2 () (_ BitVec 32)) +(declare-fun queue_empty@2 () (_ BitVec 32)) +(declare-fun queued_message@2 () (_ BitVec 32)) +(declare-fun queued_client@2 () (_ BitVec 32)) +(declare-fun |valid_product::retValue_acc@3| () (_ BitVec 32)) +(declare-fun |valid_product::__retval__@2| () (_ BitVec 32)) +(declare-fun |main::tmp@3| () (_ BitVec 32)) +(declare-fun bob@3 () (_ BitVec 32)) +(declare-fun |setup_bob::bob___0@2| () (_ BitVec 32)) +(declare-fun |setClientId::handle@2| () (_ BitVec 32)) +(declare-fun |setClientId::value@2| () (_ BitVec 32)) +(declare-fun __ste_client_idCounter0@3 () (_ BitVec 32)) +(declare-fun |setup::__cil_tmp1@3| () (_ BitVec 32)) +(declare-fun rjh@3 () (_ BitVec 32)) +(declare-fun |setup_rjh::rjh___0@2| () (_ BitVec 32)) +(declare-fun |setClientId::handle@3| () (_ BitVec 32)) +(declare-fun |setClientId::value@3| () (_ BitVec 32)) +(declare-fun __ste_client_idCounter1@3 () (_ BitVec 32)) +(declare-fun |setup::__cil_tmp2@3| () (_ BitVec 32)) +(declare-fun chuck@3 () (_ BitVec 32)) +(declare-fun |setup_chuck::chuck___0@2| () (_ BitVec 32)) +(declare-fun |setClientId::handle@4| () (_ BitVec 32)) +(declare-fun |setClientId::value@4| () (_ BitVec 32)) +(declare-fun __ste_client_idCounter2@3 () (_ BitVec 32)) +(declare-fun |setup::__cil_tmp3@3| () (_ BitVec 32)) +(declare-fun |test::op1@3| () (_ BitVec 32)) +(declare-fun |test::op2@3| () (_ BitVec 32)) +(declare-fun |test::op3@3| () (_ BitVec 32)) +(declare-fun |test::op4@3| () (_ BitVec 32)) +(declare-fun |test::op5@3| () (_ BitVec 32)) +(declare-fun |test::op6@3| () (_ BitVec 32)) +(declare-fun |test::op7@3| () (_ BitVec 32)) +(declare-fun |test::op8@3| () (_ BitVec 32)) +(declare-fun |test::op9@3| () (_ BitVec 32)) +(declare-fun |test::op10@3| () (_ BitVec 32)) +(declare-fun |test::op11@3| () (_ BitVec 32)) +(declare-fun |test::splverifierCounter@3| () (_ BitVec 32)) +(declare-fun |test::splverifierCounter@4| () (_ BitVec 32)) +(declare-fun __VERIFIER_nondet_int@2 () (_ BitVec 32)) +(declare-fun |test::tmp___9@3| () (_ BitVec 32)) +(declare-fun |test::op1@4| () (_ BitVec 32)) +(declare-fun __VERIFIER_nondet_int@3 () (_ BitVec 32)) +(declare-fun |test::tmp___8@3| () (_ BitVec 32)) +(declare-fun |test::op2@4| () (_ BitVec 32)) +(declare-fun |test::tmp___8@2| () (_ BitVec 32)) +(declare-fun __VERIFIER_nondet_int@4 () (_ BitVec 32)) +(declare-fun |test::tmp___7@3| () (_ BitVec 32)) +(declare-fun |test::op3@4| () (_ BitVec 32)) +(declare-fun |test::tmp___7@2| () (_ BitVec 32)) +(declare-fun __VERIFIER_nondet_int@5 () (_ BitVec 32)) +(declare-fun |test::tmp___6@3| () (_ BitVec 32)) +(declare-fun |test::op4@4| () (_ BitVec 32)) +(declare-fun |test::tmp___6@2| () (_ BitVec 32)) +(declare-fun __VERIFIER_nondet_int@6 () (_ BitVec 32)) +(declare-fun |test::tmp___5@3| () (_ BitVec 32)) +(declare-fun |test::op5@4| () (_ BitVec 32)) +(declare-fun |test::tmp___5@2| () (_ BitVec 32)) +(declare-fun __VERIFIER_nondet_int@7 () (_ BitVec 32)) +(declare-fun |test::tmp___4@3| () (_ BitVec 32)) +(declare-fun |setClientForwardReceiver::handle@2| () (_ BitVec 32)) +(declare-fun |setClientForwardReceiver::value@2| () (_ BitVec 32)) +(declare-fun __ste_client_forwardReceiver1@3 () (_ BitVec 32)) +(declare-fun |test::op6@4| () (_ BitVec 32)) +(declare-fun |setClientForwardReceiver::handle@1| () (_ BitVec 32)) +(declare-fun |setClientForwardReceiver::value@1| () (_ BitVec 32)) +(declare-fun |test::tmp___4@2| () (_ BitVec 32)) +(declare-fun __VERIFIER_nondet_int@8 () (_ BitVec 32)) +(declare-fun |test::tmp___3@3| () (_ BitVec 32)) +(declare-fun |test::op7@4| () (_ BitVec 32)) +(declare-fun |test::tmp___3@2| () (_ BitVec 32)) +(declare-fun __VERIFIER_nondet_int@9 () (_ BitVec 32)) +(declare-fun |test::tmp___2@3| () (_ BitVec 32)) +(declare-fun |setClientAddressBookSize::handle@2| () (_ BitVec 32)) +(declare-fun |setClientAddressBookSize::value@2| () (_ BitVec 32)) +(declare-fun __ste_ClientAddressBook_size0@3 () (_ BitVec 32)) +(declare-fun |setClientAddressBookAlias::handle@2| () (_ BitVec 32)) +(declare-fun |setClientAddressBookAlias::index@2| () (_ BitVec 32)) +(declare-fun |setClientAddressBookAlias::value@2| () (_ BitVec 32)) +(declare-fun __ste_Client_AddressBook0_Alias0@3 () (_ BitVec 32)) +(declare-fun |setClientAddressBookAddress::handle@2| () (_ BitVec 32)) +(declare-fun |setClientAddressBookAddress::index@2| () (_ BitVec 32)) +(declare-fun |setClientAddressBookAddress::value@2| () (_ BitVec 32)) +(declare-fun __ste_Client_AddressBook0_Address0@3 () (_ BitVec 32)) +(declare-fun |setClientAddressBookAddress::handle@3| () (_ BitVec 32)) +(declare-fun |setClientAddressBookAddress::index@3| () (_ BitVec 32)) +(declare-fun |setClientAddressBookAddress::value@3| () (_ BitVec 32)) +(declare-fun __ste_Client_AddressBook0_Address1@3 () (_ BitVec 32)) +(declare-fun |test::op8@4| () (_ BitVec 32)) +(declare-fun |setClientAddressBookAddress::handle@1| () (_ BitVec 32)) +(declare-fun |setClientAddressBookAddress::index@1| () (_ BitVec 32)) +(declare-fun |setClientAddressBookAddress::value@1| () (_ BitVec 32)) +(declare-fun |setClientAddressBookAlias::handle@1| () (_ BitVec 32)) +(declare-fun |setClientAddressBookAlias::index@1| () (_ BitVec 32)) +(declare-fun |setClientAddressBookAlias::value@1| () (_ BitVec 32)) +(declare-fun |setClientAddressBookSize::handle@1| () (_ BitVec 32)) +(declare-fun |setClientAddressBookSize::value@1| () (_ BitVec 32)) +(declare-fun |test::tmp___2@2| () (_ BitVec 32)) +(declare-fun __VERIFIER_nondet_int@10 () (_ BitVec 32)) +(declare-fun |test::tmp___1@3| () (_ BitVec 32)) +(declare-fun |test::op9@4| () (_ BitVec 32)) +(declare-fun |test::tmp___1@2| () (_ BitVec 32)) +(declare-fun __VERIFIER_nondet_int@11 () (_ BitVec 32)) +(declare-fun |test::tmp___0@3| () (_ BitVec 32)) +(declare-fun |test::op10@4| () (_ BitVec 32)) +(declare-fun |test::tmp___0@2| () (_ BitVec 32)) +(declare-fun __VERIFIER_nondet_int@12 () (_ BitVec 32)) +(declare-fun |test::tmp@3| () (_ BitVec 32)) +(declare-fun |test::op11@4| () (_ BitVec 32)) +(declare-fun |test::tmp@2| () (_ BitVec 32)) +(define-fun _8 () (_ BitVec 32) (_ bv0 32)) +(define-fun _9 () (_ BitVec 32) (_ bv4 32)) +(define-fun _10 () (_ BitVec 32) bob@2) +(define-fun _11 () Bool (= _10 _8)) +(define-fun _12 () (_ BitVec 32) rjh@2) +(define-fun _13 () Bool (= _12 _8)) +(define-fun _14 () Bool (and _11 _13)) +(define-fun _15 () (_ BitVec 32) chuck@2) +(define-fun _16 () Bool (= _15 _8)) +(define-fun _17 () Bool (and _14 _16)) +(define-fun _18 () (_ BitVec 32) __ste_Email_counter@2) +(define-fun _19 () Bool (= _18 _8)) +(define-fun _20 () Bool (and _17 _19)) +(define-fun _21 () (_ BitVec 32) __ste_email_id0@2) +(define-fun _22 () Bool (= _21 _8)) +(define-fun _23 () Bool (and _20 _22)) +(define-fun _24 () (_ BitVec 32) __ste_email_id1@2) +(define-fun _25 () Bool (= _24 _8)) +(define-fun _26 () Bool (and _23 _25)) +(define-fun _27 () (_ BitVec 32) __ste_email_from0@2) +(define-fun _28 () Bool (= _27 _8)) +(define-fun _29 () Bool (and _26 _28)) +(define-fun _30 () (_ BitVec 32) __ste_email_from1@2) +(define-fun _31 () Bool (= _30 _8)) +(define-fun _32 () Bool (and _29 _31)) +(define-fun _33 () (_ BitVec 32) __ste_email_to0@2) +(define-fun _34 () Bool (= _33 _8)) +(define-fun _35 () Bool (and _32 _34)) +(define-fun _36 () (_ BitVec 32) __ste_email_to1@2) +(define-fun _37 () Bool (= _36 _8)) +(define-fun _38 () Bool (and _35 _37)) +(define-fun _39 () (_ BitVec 32) head@2) +(define-fun _40 () Bool (= _39 _8)) +(define-fun _41 () Bool (and _38 _40)) +(define-fun _42 () (_ BitVec 32) __ste_Client_counter@2) +(define-fun _43 () Bool (= _42 _8)) +(define-fun _44 () Bool (and _41 _43)) +(define-fun _45 () (_ BitVec 32) __ste_ClientAddressBook_size0@2) +(define-fun _46 () Bool (= _45 _8)) +(define-fun _47 () Bool (and _44 _46)) +(define-fun _48 () (_ BitVec 32) __ste_ClientAddressBook_size1@2) +(define-fun _49 () Bool (= _48 _8)) +(define-fun _50 () Bool (and _47 _49)) +(define-fun _51 () (_ BitVec 32) __ste_ClientAddressBook_size2@2) +(define-fun _52 () Bool (= _51 _8)) +(define-fun _53 () Bool (and _50 _52)) +(define-fun _54 () (_ BitVec 32) __ste_Client_AddressBook0_Alias0@2) +(define-fun _55 () Bool (= _54 _8)) +(define-fun _56 () Bool (and _53 _55)) +(define-fun _57 () (_ BitVec 32) __ste_Client_AddressBook0_Alias1@2) +(define-fun _58 () Bool (= _57 _8)) +(define-fun _59 () Bool (and _56 _58)) +(define-fun _60 () (_ BitVec 32) __ste_Client_AddressBook0_Alias2@2) +(define-fun _61 () Bool (= _60 _8)) +(define-fun _62 () Bool (and _59 _61)) +(define-fun _63 () (_ BitVec 32) __ste_Client_AddressBook1_Alias0@2) +(define-fun _64 () Bool (= _63 _8)) +(define-fun _65 () Bool (and _62 _64)) +(define-fun _66 () (_ BitVec 32) __ste_Client_AddressBook1_Alias1@2) +(define-fun _67 () Bool (= _66 _8)) +(define-fun _68 () Bool (and _65 _67)) +(define-fun _69 () (_ BitVec 32) __ste_Client_AddressBook1_Alias2@2) +(define-fun _70 () Bool (= _69 _8)) +(define-fun _71 () Bool (and _68 _70)) +(define-fun _72 () (_ BitVec 32) __ste_Client_AddressBook2_Alias0@2) +(define-fun _73 () Bool (= _72 _8)) +(define-fun _74 () Bool (and _71 _73)) +(define-fun _75 () (_ BitVec 32) __ste_Client_AddressBook2_Alias1@2) +(define-fun _76 () Bool (= _75 _8)) +(define-fun _77 () Bool (and _74 _76)) +(define-fun _78 () (_ BitVec 32) __ste_Client_AddressBook2_Alias2@2) +(define-fun _79 () Bool (= _78 _8)) +(define-fun _80 () Bool (and _77 _79)) +(define-fun _81 () (_ BitVec 32) __ste_Client_AddressBook0_Address0@2) +(define-fun _82 () Bool (= _81 _8)) +(define-fun _83 () Bool (and _80 _82)) +(define-fun _84 () (_ BitVec 32) __ste_Client_AddressBook0_Address1@2) +(define-fun _85 () Bool (= _84 _8)) +(define-fun _86 () Bool (and _83 _85)) +(define-fun _87 () (_ BitVec 32) __ste_Client_AddressBook0_Address2@2) +(define-fun _88 () Bool (= _87 _8)) +(define-fun _89 () Bool (and _86 _88)) +(define-fun _90 () (_ BitVec 32) __ste_Client_AddressBook1_Address0@2) +(define-fun _91 () Bool (= _90 _8)) +(define-fun _92 () Bool (and _89 _91)) +(define-fun _93 () (_ BitVec 32) __ste_Client_AddressBook1_Address1@2) +(define-fun _94 () Bool (= _93 _8)) +(define-fun _95 () Bool (and _92 _94)) +(define-fun _96 () (_ BitVec 32) __ste_Client_AddressBook1_Address2@2) +(define-fun _97 () Bool (= _96 _8)) +(define-fun _98 () Bool (and _95 _97)) +(define-fun _99 () (_ BitVec 32) __ste_Client_AddressBook2_Address0@2) +(define-fun _100 () Bool (= _99 _8)) +(define-fun _101 () Bool (and _98 _100)) +(define-fun _102 () (_ BitVec 32) __ste_Client_AddressBook2_Address1@2) +(define-fun _103 () Bool (= _102 _8)) +(define-fun _104 () Bool (and _101 _103)) +(define-fun _105 () (_ BitVec 32) __ste_Client_AddressBook2_Address2@2) +(define-fun _106 () Bool (= _105 _8)) +(define-fun _107 () Bool (and _104 _106)) +(define-fun _108 () (_ BitVec 32) __ste_ClientKeyring_size0@2) +(define-fun _109 () Bool (= _108 _8)) +(define-fun _110 () Bool (and _107 _109)) +(define-fun _111 () (_ BitVec 32) __ste_ClientKeyring_size1@2) +(define-fun _112 () Bool (= _111 _8)) +(define-fun _113 () Bool (and _110 _112)) +(define-fun _114 () (_ BitVec 32) __ste_ClientKeyring_size2@2) +(define-fun _115 () Bool (= _114 _8)) +(define-fun _116 () Bool (and _113 _115)) +(define-fun _117 () (_ BitVec 32) __ste_Client_Keyring0_User0@2) +(define-fun _118 () Bool (= _117 _8)) +(define-fun _119 () Bool (and _116 _118)) +(define-fun _120 () (_ BitVec 32) __ste_Client_Keyring0_User1@2) +(define-fun _121 () Bool (= _120 _8)) +(define-fun _122 () Bool (and _119 _121)) +(define-fun _123 () (_ BitVec 32) __ste_Client_Keyring1_User0@2) +(define-fun _124 () Bool (= _123 _8)) +(define-fun _125 () Bool (and _122 _124)) +(define-fun _126 () (_ BitVec 32) __ste_Client_Keyring1_User1@2) +(define-fun _127 () Bool (= _126 _8)) +(define-fun _128 () Bool (and _125 _127)) +(define-fun _129 () (_ BitVec 32) __ste_Client_Keyring2_User0@2) +(define-fun _130 () Bool (= _129 _8)) +(define-fun _131 () Bool (and _128 _130)) +(define-fun _132 () (_ BitVec 32) __ste_Client_Keyring2_User1@2) +(define-fun _133 () Bool (= _132 _8)) +(define-fun _134 () Bool (and _131 _133)) +(define-fun _135 () (_ BitVec 32) __ste_client_forwardReceiver0@2) +(define-fun _136 () Bool (= _135 _8)) +(define-fun _137 () Bool (and _134 _136)) +(define-fun _138 () (_ BitVec 32) __ste_client_forwardReceiver1@2) +(define-fun _139 () Bool (= _138 _8)) +(define-fun _140 () Bool (and _137 _139)) +(define-fun _141 () (_ BitVec 32) __ste_client_forwardReceiver2@2) +(define-fun _142 () Bool (= _141 _8)) +(define-fun _143 () Bool (and _140 _142)) +(define-fun _144 () (_ BitVec 32) __ste_client_idCounter0@2) +(define-fun _145 () Bool (= _144 _8)) +(define-fun _146 () Bool (and _143 _145)) +(define-fun _147 () (_ BitVec 32) __ste_client_idCounter1@2) +(define-fun _148 () Bool (= _147 _8)) +(define-fun _149 () Bool (and _146 _148)) +(define-fun _150 () (_ BitVec 32) __ste_client_idCounter2@2) +(define-fun _151 () Bool (= _150 _8)) +(define-fun _152 () Bool (and _149 _151)) +(define-fun _153 () (_ BitVec 32) (_ bv1 32)) +(define-fun _154 () (_ BitVec 32) queue_empty@2) +(define-fun _155 () Bool (= _154 _153)) +(define-fun _156 () Bool (and _152 _155)) +(define-fun _157 () (_ BitVec 32) queued_message@2) +(define-fun _158 () Bool (= _157 _8)) +(define-fun _159 () Bool (and _156 _158)) +(define-fun _160 () (_ BitVec 32) queued_client@2) +(define-fun _161 () Bool (= _160 _8)) +(define-fun _162 () Bool (and _159 _161)) +(define-fun _163 () (_ BitVec 32) |valid_product::retValue_acc@3|) +(define-fun _164 () Bool (= _163 _153)) +(define-fun _165 () Bool (and _162 _164)) +(define-fun _166 () (_ BitVec 32) |valid_product::__retval__@2|) +(define-fun _167 () Bool (= _163 _166)) +(define-fun _168 () Bool (and _165 _167)) +(define-fun _169 () (_ BitVec 32) |main::tmp@3|) +(define-fun _170 () Bool (= _166 _169)) +(define-fun _171 () Bool (and _168 _170)) +(define-fun _172 () Bool (= _169 _8)) +(define-fun _175 () Bool (not _172)) +(define-fun _176 () Bool (and _171 _175)) +(define-fun _177 () (_ BitVec 32) bob@3) +(define-fun _178 () Bool (= _177 _153)) +(define-fun _179 () Bool (and _176 _178)) +(define-fun _180 () (_ BitVec 32) |setup_bob::bob___0@2|) +(define-fun _181 () Bool (= _177 _180)) +(define-fun _182 () Bool (and _179 _181)) +(define-fun _183 () (_ BitVec 32) |setClientId::handle@2|) +(define-fun _184 () Bool (= _180 _183)) +(define-fun _185 () (_ BitVec 32) |setClientId::value@2|) +(define-fun _186 () Bool (= _180 _185)) +(define-fun _187 () Bool (and _184 _186)) +(define-fun _188 () Bool (and _182 _187)) +(define-fun _189 () Bool (= _183 _153)) +(define-fun _191 () Bool (and _188 _189)) +(define-fun _194 () (_ BitVec 32) __ste_client_idCounter0@3) +(define-fun _195 () Bool (= _185 _194)) +(define-fun _196 () Bool (and _191 _195)) +(define-fun _197 () Int 0) +(define-fun _198 () (_ BitVec 32) (__string__ _197)) +(define-fun _199 () (_ BitVec 32) |setup::__cil_tmp1@3|) +(define-fun _200 () Bool (= _198 _199)) +(define-fun _201 () Bool (and _196 _200)) +(define-fun _203 () (_ BitVec 32) (_ bv2 32)) +(define-fun _204 () (_ BitVec 32) rjh@3) +(define-fun _205 () Bool (= _204 _203)) +(define-fun _206 () Bool (and _201 _205)) +(define-fun _207 () (_ BitVec 32) |setup_rjh::rjh___0@2|) +(define-fun _208 () Bool (= _204 _207)) +(define-fun _209 () Bool (and _206 _208)) +(define-fun _210 () (_ BitVec 32) |setClientId::handle@3|) +(define-fun _211 () Bool (= _207 _210)) +(define-fun _212 () (_ BitVec 32) |setClientId::value@3|) +(define-fun _213 () Bool (= _207 _212)) +(define-fun _214 () Bool (and _211 _213)) +(define-fun _215 () Bool (and _209 _214)) +(define-fun _216 () Bool (= _210 _153)) +(define-fun _219 () Bool (not _216)) +(define-fun _220 () Bool (and _215 _219)) +(define-fun _221 () Bool (= _210 _203)) +(define-fun _223 () Bool (and _220 _221)) +(define-fun _226 () (_ BitVec 32) __ste_client_idCounter1@3) +(define-fun _227 () Bool (= _212 _226)) +(define-fun _228 () Bool (and _223 _227)) +(define-fun _229 () Int 1) +(define-fun _230 () (_ BitVec 32) (__string__ _229)) +(define-fun _231 () (_ BitVec 32) |setup::__cil_tmp2@3|) +(define-fun _232 () Bool (= _230 _231)) +(define-fun _233 () Bool (and _228 _232)) +(define-fun _235 () (_ BitVec 32) (_ bv3 32)) +(define-fun _236 () (_ BitVec 32) chuck@3) +(define-fun _237 () Bool (= _236 _235)) +(define-fun _238 () Bool (and _233 _237)) +(define-fun _239 () (_ BitVec 32) |setup_chuck::chuck___0@2|) +(define-fun _240 () Bool (= _236 _239)) +(define-fun _241 () Bool (and _238 _240)) +(define-fun _242 () (_ BitVec 32) |setClientId::handle@4|) +(define-fun _243 () Bool (= _239 _242)) +(define-fun _244 () (_ BitVec 32) |setClientId::value@4|) +(define-fun _245 () Bool (= _239 _244)) +(define-fun _246 () Bool (and _243 _245)) +(define-fun _247 () Bool (and _241 _246)) +(define-fun _248 () Bool (= _242 _153)) +(define-fun _251 () Bool (not _248)) +(define-fun _252 () Bool (and _247 _251)) +(define-fun _253 () Bool (= _242 _203)) +(define-fun _256 () Bool (not _253)) +(define-fun _257 () Bool (and _252 _256)) +(define-fun _258 () Bool (= _242 _235)) +(define-fun _260 () Bool (and _257 _258)) +(define-fun _263 () (_ BitVec 32) __ste_client_idCounter2@3) +(define-fun _264 () Bool (= _244 _263)) +(define-fun _265 () Bool (and _260 _264)) +(define-fun _266 () Int 2) +(define-fun _267 () (_ BitVec 32) (__string__ _266)) +(define-fun _268 () (_ BitVec 32) |setup::__cil_tmp3@3|) +(define-fun _269 () Bool (= _267 _268)) +(define-fun _270 () Bool (and _265 _269)) +(define-fun _272 () (_ BitVec 32) |test::op1@3|) +(define-fun _273 () Bool (= _272 _8)) +(define-fun _274 () Bool (and _270 _273)) +(define-fun _275 () (_ BitVec 32) |test::op2@3|) +(define-fun _276 () Bool (= _275 _8)) +(define-fun _277 () Bool (and _274 _276)) +(define-fun _278 () (_ BitVec 32) |test::op3@3|) +(define-fun _279 () Bool (= _278 _8)) +(define-fun _280 () Bool (and _277 _279)) +(define-fun _281 () (_ BitVec 32) |test::op4@3|) +(define-fun _282 () Bool (= _281 _8)) +(define-fun _283 () Bool (and _280 _282)) +(define-fun _284 () (_ BitVec 32) |test::op5@3|) +(define-fun _285 () Bool (= _284 _8)) +(define-fun _286 () Bool (and _283 _285)) +(define-fun _287 () (_ BitVec 32) |test::op6@3|) +(define-fun _288 () Bool (= _287 _8)) +(define-fun _289 () Bool (and _286 _288)) +(define-fun _290 () (_ BitVec 32) |test::op7@3|) +(define-fun _291 () Bool (= _290 _8)) +(define-fun _292 () Bool (and _289 _291)) +(define-fun _293 () (_ BitVec 32) |test::op8@3|) +(define-fun _294 () Bool (= _293 _8)) +(define-fun _295 () Bool (and _292 _294)) +(define-fun _296 () (_ BitVec 32) |test::op9@3|) +(define-fun _297 () Bool (= _296 _8)) +(define-fun _298 () Bool (and _295 _297)) +(define-fun _299 () (_ BitVec 32) |test::op10@3|) +(define-fun _300 () Bool (= _299 _8)) +(define-fun _301 () Bool (and _298 _300)) +(define-fun _302 () (_ BitVec 32) |test::op11@3|) +(define-fun _303 () Bool (= _302 _8)) +(define-fun _304 () Bool (and _301 _303)) +(define-fun _305 () (_ BitVec 32) |test::splverifierCounter@3|) +(define-fun _306 () Bool (= _305 _8)) +(define-fun _307 () Bool (and _304 _306)) +(define-fun _308 () Bool (bvslt _305 _9)) +(define-fun _310 () Bool (and _307 _308)) +(define-fun _314 () (_ BitVec 32) (bvadd _153 _305)) +(define-fun _315 () (_ BitVec 32) |test::splverifierCounter@4|) +(define-fun _316 () Bool (= _314 _315)) +(define-fun _317 () Bool (and _310 _316)) +(define-fun _319 () Bool (and _273 _317)) +(define-fun _322 () (_ BitVec 32) __VERIFIER_nondet_int@2) +(define-fun _323 () (_ BitVec 32) |test::tmp___9@3|) +(define-fun _324 () Bool (= _322 _323)) +(define-fun _325 () Bool (and _319 _324)) +(define-fun _326 () Bool (= _323 _8)) +(define-fun _328 () Bool (and _325 _326)) +(define-fun _329 () Bool (not _326)) +(define-fun _330 () Bool (and _325 _329)) +(define-fun _331 () (_ BitVec 32) |test::op1@4|) +(define-fun _332 () Bool (= _331 _153)) +(define-fun _333 () Bool (and _330 _332)) +(define-fun _335 () Bool (and _276 _328)) +(define-fun _338 () (_ BitVec 32) __VERIFIER_nondet_int@3) +(define-fun _339 () (_ BitVec 32) |test::tmp___8@3|) +(define-fun _340 () Bool (= _338 _339)) +(define-fun _341 () Bool (and _335 _340)) +(define-fun _342 () Bool (= _339 _8)) +(define-fun _344 () Bool (and _341 _342)) +(define-fun _345 () Bool (not _342)) +(define-fun _346 () Bool (and _341 _345)) +(define-fun _347 () (_ BitVec 32) |test::op2@4|) +(define-fun _348 () Bool (= _347 _153)) +(define-fun _349 () Bool (and _346 _348)) +(define-fun _350 () Bool (= _322 _338)) +(define-fun _351 () Bool (= _272 _331)) +(define-fun _352 () Bool (= _275 _347)) +(define-fun _353 () Bool (and _350 _352)) +(define-fun _354 () (_ BitVec 32) |test::tmp___8@2|) +(define-fun _355 () Bool (= _339 _354)) +(define-fun _356 () Bool (and _353 _355)) +(define-fun _357 () Bool (and _349 _351)) +(define-fun _358 () Bool (and _333 _356)) +(define-fun _359 () Bool (or _357 _358)) +(define-fun _361 () Bool (and _279 _344)) +(define-fun _364 () (_ BitVec 32) __VERIFIER_nondet_int@4) +(define-fun _365 () (_ BitVec 32) |test::tmp___7@3|) +(define-fun _366 () Bool (= _364 _365)) +(define-fun _367 () Bool (and _361 _366)) +(define-fun _368 () Bool (= _365 _8)) +(define-fun _370 () Bool (and _367 _368)) +(define-fun _371 () Bool (not _368)) +(define-fun _372 () Bool (and _367 _371)) +(define-fun _373 () (_ BitVec 32) |test::op3@4|) +(define-fun _374 () Bool (= _373 _153)) +(define-fun _375 () Bool (and _372 _374)) +(define-fun _376 () Bool (= _338 _364)) +(define-fun _377 () Bool (and _351 _352)) +(define-fun _378 () Bool (= _278 _373)) +(define-fun _379 () Bool (and _376 _378)) +(define-fun _380 () (_ BitVec 32) |test::tmp___7@2|) +(define-fun _381 () Bool (= _365 _380)) +(define-fun _382 () Bool (and _379 _381)) +(define-fun _383 () Bool (and _375 _377)) +(define-fun _384 () Bool (and _359 _382)) +(define-fun _385 () Bool (or _383 _384)) +(define-fun _387 () Bool (and _282 _370)) +(define-fun _390 () (_ BitVec 32) __VERIFIER_nondet_int@5) +(define-fun _391 () (_ BitVec 32) |test::tmp___6@3|) +(define-fun _392 () Bool (= _390 _391)) +(define-fun _393 () Bool (and _387 _392)) +(define-fun _394 () Bool (= _391 _8)) +(define-fun _396 () Bool (and _393 _394)) +(define-fun _397 () Bool (not _394)) +(define-fun _398 () Bool (and _393 _397)) +(define-fun _399 () (_ BitVec 32) |test::op4@4|) +(define-fun _400 () Bool (= _399 _153)) +(define-fun _401 () Bool (and _398 _400)) +(define-fun _402 () Bool (= _364 _390)) +(define-fun _403 () Bool (and _377 _378)) +(define-fun _404 () Bool (= _281 _399)) +(define-fun _405 () Bool (and _402 _404)) +(define-fun _406 () (_ BitVec 32) |test::tmp___6@2|) +(define-fun _407 () Bool (= _391 _406)) +(define-fun _408 () Bool (and _405 _407)) +(define-fun _409 () Bool (and _401 _403)) +(define-fun _410 () Bool (and _385 _408)) +(define-fun _411 () Bool (or _409 _410)) +(define-fun _413 () Bool (and _285 _396)) +(define-fun _416 () (_ BitVec 32) __VERIFIER_nondet_int@6) +(define-fun _417 () (_ BitVec 32) |test::tmp___5@3|) +(define-fun _418 () Bool (= _416 _417)) +(define-fun _419 () Bool (and _413 _418)) +(define-fun _420 () Bool (= _417 _8)) +(define-fun _422 () Bool (and _419 _420)) +(define-fun _423 () Bool (not _420)) +(define-fun _424 () Bool (and _419 _423)) +(define-fun _425 () (_ BitVec 32) |test::op5@4|) +(define-fun _426 () Bool (= _425 _153)) +(define-fun _427 () Bool (and _424 _426)) +(define-fun _428 () Bool (= _390 _416)) +(define-fun _429 () Bool (and _403 _404)) +(define-fun _430 () Bool (= _284 _425)) +(define-fun _431 () Bool (and _428 _430)) +(define-fun _432 () (_ BitVec 32) |test::tmp___5@2|) +(define-fun _433 () Bool (= _417 _432)) +(define-fun _434 () Bool (and _431 _433)) +(define-fun _435 () Bool (and _427 _429)) +(define-fun _436 () Bool (and _411 _434)) +(define-fun _437 () Bool (or _435 _436)) +(define-fun _439 () Bool (and _288 _422)) +(define-fun _442 () (_ BitVec 32) __VERIFIER_nondet_int@7) +(define-fun _443 () (_ BitVec 32) |test::tmp___4@3|) +(define-fun _444 () Bool (= _442 _443)) +(define-fun _445 () Bool (and _439 _444)) +(define-fun _446 () Bool (= _443 _8)) +(define-fun _448 () Bool (and _445 _446)) +(define-fun _449 () Bool (not _446)) +(define-fun _450 () Bool (and _445 _449)) +(define-fun _451 () (_ BitVec 32) |setClientForwardReceiver::handle@2|) +(define-fun _452 () Bool (= _204 _451)) +(define-fun _453 () (_ BitVec 32) |setClientForwardReceiver::value@2|) +(define-fun _454 () Bool (= _236 _453)) +(define-fun _455 () Bool (and _452 _454)) +(define-fun _456 () Bool (and _450 _455)) +(define-fun _457 () Bool (= _451 _153)) +(define-fun _460 () Bool (not _457)) +(define-fun _461 () Bool (and _456 _460)) +(define-fun _462 () Bool (= _451 _203)) +(define-fun _464 () Bool (and _461 _462)) +(define-fun _467 () (_ BitVec 32) __ste_client_forwardReceiver1@3) +(define-fun _468 () Bool (= _453 _467)) +(define-fun _469 () Bool (and _464 _468)) +(define-fun _470 () (_ BitVec 32) |test::op6@4|) +(define-fun _471 () Bool (= _470 _153)) +(define-fun _472 () Bool (and _469 _471)) +(define-fun _473 () Bool (= _416 _442)) +(define-fun _474 () Bool (= _138 _467)) +(define-fun _475 () Bool (and _473 _474)) +(define-fun _476 () (_ BitVec 32) |setClientForwardReceiver::handle@1|) +(define-fun _477 () Bool (= _451 _476)) +(define-fun _478 () Bool (and _475 _477)) +(define-fun _479 () (_ BitVec 32) |setClientForwardReceiver::value@1|) +(define-fun _480 () Bool (= _453 _479)) +(define-fun _481 () Bool (and _478 _480)) +(define-fun _482 () Bool (and _429 _430)) +(define-fun _483 () Bool (= _287 _470)) +(define-fun _484 () Bool (and _481 _483)) +(define-fun _485 () (_ BitVec 32) |test::tmp___4@2|) +(define-fun _486 () Bool (= _443 _485)) +(define-fun _487 () Bool (and _484 _486)) +(define-fun _488 () Bool (and _472 _482)) +(define-fun _489 () Bool (and _437 _487)) +(define-fun _490 () Bool (or _488 _489)) +(define-fun _492 () Bool (and _291 _448)) +(define-fun _495 () (_ BitVec 32) __VERIFIER_nondet_int@8) +(define-fun _496 () (_ BitVec 32) |test::tmp___3@3|) +(define-fun _497 () Bool (= _495 _496)) +(define-fun _498 () Bool (and _492 _497)) +(define-fun _499 () Bool (= _496 _8)) +(define-fun _501 () Bool (and _498 _499)) +(define-fun _502 () Bool (not _499)) +(define-fun _503 () Bool (and _498 _502)) +(define-fun _504 () (_ BitVec 32) |test::op7@4|) +(define-fun _505 () Bool (= _504 _153)) +(define-fun _506 () Bool (and _503 _505)) +(define-fun _507 () Bool (= _442 _495)) +(define-fun _508 () Bool (and _474 _477)) +(define-fun _509 () Bool (and _480 _508)) +(define-fun _510 () Bool (and _351 _509)) +(define-fun _511 () Bool (and _352 _510)) +(define-fun _512 () Bool (and _378 _511)) +(define-fun _513 () Bool (and _404 _512)) +(define-fun _514 () Bool (and _430 _513)) +(define-fun _515 () Bool (and _483 _514)) +(define-fun _516 () Bool (= _290 _504)) +(define-fun _517 () Bool (and _507 _516)) +(define-fun _518 () (_ BitVec 32) |test::tmp___3@2|) +(define-fun _519 () Bool (= _496 _518)) +(define-fun _520 () Bool (and _517 _519)) +(define-fun _521 () Bool (and _506 _515)) +(define-fun _522 () Bool (and _490 _520)) +(define-fun _523 () Bool (or _521 _522)) +(define-fun _525 () Bool (and _294 _501)) +(define-fun _528 () (_ BitVec 32) __VERIFIER_nondet_int@9) +(define-fun _529 () (_ BitVec 32) |test::tmp___2@3|) +(define-fun _530 () Bool (= _528 _529)) +(define-fun _531 () Bool (and _525 _530)) +(define-fun _532 () Bool (= _529 _8)) +(define-fun _534 () Bool (and _531 _532)) +(define-fun _535 () Bool (not _532)) +(define-fun _536 () Bool (and _531 _535)) +(define-fun _537 () (_ BitVec 32) |setClientAddressBookSize::handle@2|) +(define-fun _538 () Bool (= _177 _537)) +(define-fun _539 () (_ BitVec 32) |setClientAddressBookSize::value@2|) +(define-fun _540 () Bool (= _539 _153)) +(define-fun _541 () Bool (and _538 _540)) +(define-fun _542 () Bool (and _536 _541)) +(define-fun _543 () Bool (= _537 _153)) +(define-fun _545 () Bool (and _542 _543)) +(define-fun _548 () (_ BitVec 32) __ste_ClientAddressBook_size0@3) +(define-fun _549 () Bool (= _539 _548)) +(define-fun _550 () Bool (and _545 _549)) +(define-fun _551 () (_ BitVec 32) |setClientAddressBookAlias::handle@2|) +(define-fun _552 () Bool (= _177 _551)) +(define-fun _553 () (_ BitVec 32) |setClientAddressBookAlias::index@2|) +(define-fun _554 () Bool (= _553 _8)) +(define-fun _555 () Bool (and _552 _554)) +(define-fun _556 () (_ BitVec 32) |setClientAddressBookAlias::value@2|) +(define-fun _557 () Bool (= _204 _556)) +(define-fun _558 () Bool (and _555 _557)) +(define-fun _559 () Bool (and _550 _558)) +(define-fun _560 () Bool (= _551 _153)) +(define-fun _562 () Bool (and _559 _560)) +(define-fun _566 () Bool (and _554 _562)) +(define-fun _569 () (_ BitVec 32) __ste_Client_AddressBook0_Alias0@3) +(define-fun _570 () Bool (= _556 _569)) +(define-fun _571 () Bool (and _566 _570)) +(define-fun _572 () (_ BitVec 32) |setClientAddressBookAddress::handle@2|) +(define-fun _573 () Bool (= _177 _572)) +(define-fun _574 () (_ BitVec 32) |setClientAddressBookAddress::index@2|) +(define-fun _575 () Bool (= _574 _8)) +(define-fun _576 () Bool (and _573 _575)) +(define-fun _577 () (_ BitVec 32) |setClientAddressBookAddress::value@2|) +(define-fun _578 () Bool (= _204 _577)) +(define-fun _579 () Bool (and _576 _578)) +(define-fun _580 () Bool (and _571 _579)) +(define-fun _581 () Bool (= _572 _153)) +(define-fun _583 () Bool (and _580 _581)) +(define-fun _587 () Bool (and _575 _583)) +(define-fun _590 () (_ BitVec 32) __ste_Client_AddressBook0_Address0@3) +(define-fun _591 () Bool (= _577 _590)) +(define-fun _592 () Bool (and _587 _591)) +(define-fun _593 () (_ BitVec 32) |setClientAddressBookAddress::handle@3|) +(define-fun _594 () Bool (= _177 _593)) +(define-fun _595 () (_ BitVec 32) |setClientAddressBookAddress::index@3|) +(define-fun _596 () Bool (= _595 _153)) +(define-fun _597 () Bool (and _594 _596)) +(define-fun _598 () (_ BitVec 32) |setClientAddressBookAddress::value@3|) +(define-fun _599 () Bool (= _236 _598)) +(define-fun _600 () Bool (and _597 _599)) +(define-fun _601 () Bool (and _592 _600)) +(define-fun _602 () Bool (= _593 _153)) +(define-fun _604 () Bool (and _601 _602)) +(define-fun _607 () Bool (= _595 _8)) +(define-fun _610 () Bool (not _607)) +(define-fun _611 () Bool (and _604 _610)) +(define-fun _613 () Bool (and _596 _611)) +(define-fun _616 () (_ BitVec 32) __ste_Client_AddressBook0_Address1@3) +(define-fun _617 () Bool (= _598 _616)) +(define-fun _618 () Bool (and _613 _617)) +(define-fun _619 () (_ BitVec 32) |test::op8@4|) +(define-fun _620 () Bool (= _619 _153)) +(define-fun _621 () Bool (and _618 _620)) +(define-fun _622 () Bool (= _495 _528)) +(define-fun _623 () Bool (= _45 _548)) +(define-fun _624 () Bool (and _622 _623)) +(define-fun _625 () Bool (= _81 _590)) +(define-fun _626 () Bool (and _624 _625)) +(define-fun _627 () Bool (= _84 _616)) +(define-fun _628 () Bool (and _626 _627)) +(define-fun _629 () Bool (= _54 _569)) +(define-fun _630 () Bool (and _628 _629)) +(define-fun _631 () (_ BitVec 32) |setClientAddressBookAddress::handle@1|) +(define-fun _632 () Bool (= _593 _631)) +(define-fun _633 () Bool (and _630 _632)) +(define-fun _634 () (_ BitVec 32) |setClientAddressBookAddress::index@1|) +(define-fun _635 () Bool (= _595 _634)) +(define-fun _636 () Bool (and _633 _635)) +(define-fun _637 () (_ BitVec 32) |setClientAddressBookAddress::value@1|) +(define-fun _638 () Bool (= _598 _637)) +(define-fun _639 () Bool (and _636 _638)) +(define-fun _640 () (_ BitVec 32) |setClientAddressBookAlias::handle@1|) +(define-fun _641 () Bool (= _551 _640)) +(define-fun _642 () Bool (and _639 _641)) +(define-fun _643 () (_ BitVec 32) |setClientAddressBookAlias::index@1|) +(define-fun _644 () Bool (= _553 _643)) +(define-fun _645 () Bool (and _642 _644)) +(define-fun _646 () (_ BitVec 32) |setClientAddressBookAlias::value@1|) +(define-fun _647 () Bool (= _556 _646)) +(define-fun _648 () Bool (and _645 _647)) +(define-fun _649 () (_ BitVec 32) |setClientAddressBookSize::handle@1|) +(define-fun _650 () Bool (= _537 _649)) +(define-fun _651 () Bool (and _648 _650)) +(define-fun _652 () (_ BitVec 32) |setClientAddressBookSize::value@1|) +(define-fun _653 () Bool (= _539 _652)) +(define-fun _654 () Bool (and _651 _653)) +(define-fun _655 () Bool (and _515 _516)) +(define-fun _656 () Bool (= _293 _619)) +(define-fun _657 () Bool (and _654 _656)) +(define-fun _658 () (_ BitVec 32) |test::tmp___2@2|) +(define-fun _659 () Bool (= _529 _658)) +(define-fun _660 () Bool (and _657 _659)) +(define-fun _661 () Bool (and _621 _655)) +(define-fun _662 () Bool (and _523 _660)) +(define-fun _663 () Bool (or _661 _662)) +(define-fun _665 () Bool (and _297 _534)) +(define-fun _668 () (_ BitVec 32) __VERIFIER_nondet_int@10) +(define-fun _669 () (_ BitVec 32) |test::tmp___1@3|) +(define-fun _670 () Bool (= _668 _669)) +(define-fun _671 () Bool (and _665 _670)) +(define-fun _672 () Bool (= _669 _8)) +(define-fun _674 () Bool (and _671 _672)) +(define-fun _675 () Bool (not _672)) +(define-fun _676 () Bool (and _671 _675)) +(define-fun _677 () (_ BitVec 32) |test::op9@4|) +(define-fun _678 () Bool (= _677 _153)) +(define-fun _679 () Bool (and _676 _678)) +(define-fun _680 () Bool (= _528 _668)) +(define-fun _681 () Bool (and _623 _625)) +(define-fun _682 () Bool (and _627 _681)) +(define-fun _683 () Bool (and _629 _682)) +(define-fun _684 () Bool (and _474 _683)) +(define-fun _685 () Bool (and _632 _684)) +(define-fun _686 () Bool (and _635 _685)) +(define-fun _687 () Bool (and _638 _686)) +(define-fun _688 () Bool (and _641 _687)) +(define-fun _689 () Bool (and _644 _688)) +(define-fun _690 () Bool (and _647 _689)) +(define-fun _691 () Bool (and _650 _690)) +(define-fun _692 () Bool (and _653 _691)) +(define-fun _693 () Bool (and _477 _692)) +(define-fun _694 () Bool (and _480 _693)) +(define-fun _695 () Bool (and _351 _694)) +(define-fun _696 () Bool (and _352 _695)) +(define-fun _697 () Bool (and _378 _696)) +(define-fun _698 () Bool (and _404 _697)) +(define-fun _699 () Bool (and _430 _698)) +(define-fun _700 () Bool (and _483 _699)) +(define-fun _701 () Bool (and _516 _700)) +(define-fun _702 () Bool (and _656 _701)) +(define-fun _703 () Bool (= _296 _677)) +(define-fun _704 () Bool (and _680 _703)) +(define-fun _705 () (_ BitVec 32) |test::tmp___1@2|) +(define-fun _706 () Bool (= _669 _705)) +(define-fun _707 () Bool (and _704 _706)) +(define-fun _708 () Bool (and _679 _702)) +(define-fun _709 () Bool (and _663 _707)) +(define-fun _710 () Bool (or _708 _709)) +(define-fun _712 () Bool (and _300 _674)) +(define-fun _715 () (_ BitVec 32) __VERIFIER_nondet_int@11) +(define-fun _716 () (_ BitVec 32) |test::tmp___0@3|) +(define-fun _717 () Bool (= _715 _716)) +(define-fun _718 () Bool (and _712 _717)) +(define-fun _719 () Bool (= _716 _8)) +(define-fun _721 () Bool (and _718 _719)) +(define-fun _722 () Bool (not _719)) +(define-fun _723 () Bool (and _718 _722)) +(define-fun _724 () (_ BitVec 32) |test::op10@4|) +(define-fun _725 () Bool (= _724 _153)) +(define-fun _726 () Bool (and _723 _725)) +(define-fun _727 () Bool (= _668 _715)) +(define-fun _728 () Bool (= _299 _724)) +(define-fun _729 () Bool (and _727 _728)) +(define-fun _730 () Bool (and _702 _703)) +(define-fun _731 () (_ BitVec 32) |test::tmp___0@2|) +(define-fun _732 () Bool (= _716 _731)) +(define-fun _733 () Bool (and _729 _732)) +(define-fun _734 () Bool (and _726 _730)) +(define-fun _735 () Bool (and _710 _733)) +(define-fun _736 () Bool (or _734 _735)) +(define-fun _738 () Bool (and _303 _721)) +(define-fun _741 () (_ BitVec 32) __VERIFIER_nondet_int@12) +(define-fun _742 () (_ BitVec 32) |test::tmp@3|) +(define-fun _743 () Bool (= _741 _742)) +(define-fun _744 () Bool (and _738 _743)) +(define-fun _745 () Bool (= _742 _8)) +(define-fun _748 () Bool (not _745)) +(define-fun _749 () Bool (and _744 _748)) +(define-fun _750 () (_ BitVec 32) |test::op11@4|) +(define-fun _751 () Bool (= _750 _153)) +(define-fun _752 () Bool (and _749 _751)) +(define-fun _753 () Bool (= _715 _741)) +(define-fun _754 () Bool (and _695 _728)) +(define-fun _755 () Bool (= _302 _750)) +(define-fun _756 () Bool (and _753 _755)) +(define-fun _757 () Bool (and _352 _754)) +(define-fun _758 () Bool (and _378 _757)) +(define-fun _759 () Bool (and _404 _758)) +(define-fun _760 () Bool (and _430 _759)) +(define-fun _761 () Bool (and _483 _760)) +(define-fun _762 () Bool (and _516 _761)) +(define-fun _763 () Bool (and _656 _762)) +(define-fun _764 () Bool (and _703 _763)) +(define-fun _765 () (_ BitVec 32) |test::tmp@2|) +(define-fun _766 () Bool (= _742 _765)) +(define-fun _767 () Bool (and _756 _766)) +(define-fun _768 () Bool (and _752 _764)) +(define-fun _769 () Bool (and _736 _767)) +(define-fun _770 () Bool (or _768 _769)) +(assert _770) +(set-info :status sat) +(check-sat) +(pop 1) +(exit) diff --git a/tests/regress/coverage/smtlib/QF_UFBVLIA/20190307-CPAchecker_kInduction-SoSy_Lab/email_spec0_product09.cil_smt-query.0.smt2.gold b/tests/regress/coverage/smtlib/QF_UFBVLIA/20190307-CPAchecker_kInduction-SoSy_Lab/email_spec0_product09.cil_smt-query.0.smt2.gold new file mode 100644 index 000000000..fea55f7e1 --- /dev/null +++ b/tests/regress/coverage/smtlib/QF_UFBVLIA/20190307-CPAchecker_kInduction-SoSy_Lab/email_spec0_product09.cil_smt-query.0.smt2.gold @@ -0,0 +1,2 @@ +unsat +sat diff --git a/tests/regress/coverage/smtlib/QF_UFBVLIA/20190307-CPAchecker_kInduction-SoSy_Lab/email_spec0_product09.cil_smt-query.0.smt2.options b/tests/regress/coverage/smtlib/QF_UFBVLIA/20190307-CPAchecker_kInduction-SoSy_Lab/email_spec0_product09.cil_smt-query.0.smt2.options new file mode 100644 index 000000000..1cb8ff7d0 --- /dev/null +++ b/tests/regress/coverage/smtlib/QF_UFBVLIA/20190307-CPAchecker_kInduction-SoSy_Lab/email_spec0_product09.cil_smt-query.0.smt2.options @@ -0,0 +1 @@ +--incremental \ No newline at end of file diff --git a/tests/regress/test_qfufbvlia.smt2 b/tests/regress/test_qfufbvlia.smt2 new file mode 100644 index 000000000..209b4daa8 --- /dev/null +++ b/tests/regress/test_qfufbvlia.smt2 @@ -0,0 +1,4 @@ +(set-info :smt-lib-version 2.6) +(set-logic QF_UFBVLIA) +(echo "ok") +(exit) diff --git a/tests/regress/test_qfufbvlia.smt2.gold b/tests/regress/test_qfufbvlia.smt2.gold new file mode 100644 index 000000000..b5754e203 --- /dev/null +++ b/tests/regress/test_qfufbvlia.smt2.gold @@ -0,0 +1 @@ +ok \ No newline at end of file diff --git a/tests/unit/test_api7.c b/tests/unit/test_api7.c index 90c0d8b89..c5b796eac 100644 --- a/tests/unit/test_api7.c +++ b/tests/unit/test_api7.c @@ -64,6 +64,7 @@ static const char* const logic2string[NUM_SMT_LOGICS+1] = { "AUF", "UFBV", + "UFBVLIA", "UFIDL", "UFLIA", "UFLRA", @@ -103,6 +104,7 @@ static const char* const logic2string[NUM_SMT_LOGICS+1] = { "QF_AUF", "QF_UFBV", + "QF_UFBVLIA", "QF_UFIDL", "QF_UFLIA", "QF_UFLRA", @@ -162,6 +164,7 @@ static const bool supported[NUM_SMT_LOGICS] = { false, // ANIRA false, // AUF false, // UFBV + false, // UFBVLIA false, // UFIDL false, // UFLIA false, // UFLRA @@ -198,6 +201,7 @@ static const bool supported[NUM_SMT_LOGICS] = { true, // QF_ANIRA true, // QF_AUF true, // QF_UFBV + true, // QF_UFBVLIA true, // QF_UFIDL true, // QF_UFLIA true, // QF_UFLRA diff --git a/tests/unit/test_smt_codes.c b/tests/unit/test_smt_codes.c index d0a524a99..922531e9e 100644 --- a/tests/unit/test_smt_codes.c +++ b/tests/unit/test_smt_codes.c @@ -47,6 +47,7 @@ static const char * const test_names[NUM_TESTS] = { "ANIRA", "AUF", "UFBV", + "UFBVLIA", "UFIDL", "UFLIA", "UFLRA", @@ -82,6 +83,7 @@ static const char * const test_names[NUM_TESTS] = { "QF_ANIRA", "QF_AUF", "QF_UFBV", + "QF_UFBVLIA", "QF_UFIDL", "QF_UFLIA", "QF_UFLRA", @@ -128,6 +130,7 @@ static const char *const code2string[NUM_SMT_LOGICS+1] = { "ANIRA", "AUF", "UFBV", + "UFBVLIA", "UFIDL", "UFLIA", "UFLRA", @@ -163,6 +166,7 @@ static const char *const code2string[NUM_SMT_LOGICS+1] = { "QF_ANIRA", "QF_AUF", "QF_UFBV", + "QF_UFBVLIA", "QF_UFIDL", "QF_UFLIA", "QF_UFLRA", From ee9b94c2059d2f64326c9b2fef63338f765914b7 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Fri, 19 May 2023 00:47:10 -0700 Subject: [PATCH 107/182] add qf_aufbvlia and qf_aufbvnia --- src/api/context_config.c | 4 + src/api/smt_logic_codes.c | 36 + src/api/smt_logic_codes.h | 4 + src/include/yices.h | 2 + ...st.ko-entry_point.cil.out_smt-query.0.smt2 | 1806 +++++++++++++++++ ...-entry_point.cil.out_smt-query.0.smt2.gold | 2 + ...try_point.cil.out_smt-query.0.smt2.options | 1 + tests/regress/test_qfaufbvlia.smt2 | 4 + tests/regress/test_qfaufbvlia.smt2.gold | 1 + tests/regress/test_qfaufbvnia.smt2 | 4 + tests/regress/test_qfaufbvnia.smt2.gold | 1 + tests/unit/test_api7.c | 8 + tests/unit/test_smt_codes.c | 8 + 13 files changed, 1881 insertions(+) create mode 100644 tests/regress/coverage/smtlib/QF_AUFBVLIA/20190307-CPAchecker_kInduction-SoSy_Lab/205_9a_array_safes_linux-3.16-rc1.tar.xz-205_9a-drivers--net--wireless--rtlwifi--btcoexist--btcoexist.ko-entry_point.cil.out_smt-query.0.smt2 create mode 100644 tests/regress/coverage/smtlib/QF_AUFBVLIA/20190307-CPAchecker_kInduction-SoSy_Lab/205_9a_array_safes_linux-3.16-rc1.tar.xz-205_9a-drivers--net--wireless--rtlwifi--btcoexist--btcoexist.ko-entry_point.cil.out_smt-query.0.smt2.gold create mode 100644 tests/regress/coverage/smtlib/QF_AUFBVLIA/20190307-CPAchecker_kInduction-SoSy_Lab/205_9a_array_safes_linux-3.16-rc1.tar.xz-205_9a-drivers--net--wireless--rtlwifi--btcoexist--btcoexist.ko-entry_point.cil.out_smt-query.0.smt2.options create mode 100644 tests/regress/test_qfaufbvlia.smt2 create mode 100644 tests/regress/test_qfaufbvlia.smt2.gold create mode 100644 tests/regress/test_qfaufbvnia.smt2 create mode 100644 tests/regress/test_qfaufbvnia.smt2.gold diff --git a/src/api/context_config.c b/src/api/context_config.c index f57c23f57..6e78c7dac 100644 --- a/src/api/context_config.c +++ b/src/api/context_config.c @@ -168,6 +168,8 @@ static const int32_t logic2arch[NUM_SMT_LOGICS] = { -1, // UFNIRA -1, // UFRDL -1, // AUFBV + -1, // AUFBVLIA + -1, // AUFBVNIA -1, // AUFLIA -1, // AUFLRA -1, // AUFLIRA @@ -206,6 +208,8 @@ static const int32_t logic2arch[NUM_SMT_LOGICS] = { CTX_ARCH_MCSAT, // QF_UFNIRA CTX_ARCH_EGSPLX, // QF_UFRDL CTX_ARCH_EGFUNBV, // QF_AUFBV + CTX_ARCH_EGFUNSPLXBV, // QF_AUFBVLIA + CTX_ARCH_MCSAT, // QF_AUFBVNIA CTX_ARCH_EGFUNSPLX, // QF_AUFLIA CTX_ARCH_EGFUNSPLX, // QF_AUFLRA CTX_ARCH_EGFUNSPLX, // QF_AUFLIRA diff --git a/src/api/smt_logic_codes.c b/src/api/smt_logic_codes.c index 747243a7b..c25f28c6a 100644 --- a/src/api/smt_logic_codes.c +++ b/src/api/smt_logic_codes.c @@ -43,6 +43,8 @@ static const char * const smt_logic_names[NUM_SMT_LOGIC_NAMES] = { "ANRA", "AUF", "AUFBV", + "AUFBVLIA", + "AUFBVNIA", "AUFLIA", "AUFLIRA", "AUFLRA", @@ -68,6 +70,8 @@ static const char * const smt_logic_names[NUM_SMT_LOGIC_NAMES] = { "QF_ANRA", "QF_AUF", "QF_AUFBV", + "QF_AUFBVLIA", + "QF_AUFBVNIA", "QF_AUFLIA", "QF_AUFLIRA", "QF_AUFLRA", @@ -126,6 +130,8 @@ static const smt_logic_t smt_code[NUM_SMT_LOGIC_NAMES] = { ANRA, AUF, AUFBV, + AUFBVLIA, + AUFBVNIA, AUFLIA, AUFLIRA, AUFLRA, @@ -151,6 +157,8 @@ static const smt_logic_t smt_code[NUM_SMT_LOGIC_NAMES] = { QF_ANRA, QF_AUF, QF_AUFBV, + QF_AUFBVLIA, + QF_AUFBVNIA, QF_AUFLIA, QF_AUFLIRA, QF_AUFLRA, @@ -306,6 +314,8 @@ static const uint8_t has_arrays[NUM_SMT_LOGICS] = { false, // UFNIRA false, // UFRDL true, // AUFBV + true, // AUFBVLIA + true, // AUFBVNIA true, // AUFLIA true, // AUFLRA true, // AUFLIRA @@ -343,6 +353,8 @@ static const uint8_t has_arrays[NUM_SMT_LOGICS] = { false, // QF_UFNIRA false, // QF_UFRDL true, // QF_AUFBV + true, // QF_AUFBVLIA + true, // QF_AUFBVNIA true, // QF_AUFLIA true, // QF_AUFLRA true, // QF_AUFLIRA @@ -386,6 +398,8 @@ static const uint8_t has_bv[NUM_SMT_LOGICS] = { false, // UFNIRA false, // UFRDL true, // AUFBV + true, // AUFBVLIA + true, // AUFBVNIA false, // AUFLIA false, // AUFLRA false, // AUFLIRA @@ -423,6 +437,8 @@ static const uint8_t has_bv[NUM_SMT_LOGICS] = { false, // QF_UFNIRA false, // QF_UFRDL true, // QF_AUFBV + true, // QF_AUFBVLIA + true, // QF_AUFBVNIA false, // QF_AUFLIA false, // QF_AUFLRA false, // QF_AUFLIRA @@ -466,6 +482,8 @@ static const uint8_t has_quantifiers[NUM_SMT_LOGICS] = { true, // UFNIRA true, // UFRDL true, // AUFBV + true, // AUFBVLIA + true, // AUFBVNIA true, // AUFLIA true, // AUFLRA true, // AUFLIRA @@ -503,6 +521,8 @@ static const uint8_t has_quantifiers[NUM_SMT_LOGICS] = { false, // QF_UFNIRA false, // QF_UFRDL false, // QF_AUFBV + false, // QF_AUFBVLIA + false, // QF_AUFBVNIA false, // QF_AUFLIA false, // QF_AUFLRA false, // QF_AUFLIRA @@ -546,6 +566,8 @@ static const uint8_t has_uf[NUM_SMT_LOGICS] = { true, // UFNIRA true, // UFRDL true, // AUFBV + true, // AUFBVLIA + true, // AUFBVNIA true, // AUFLIA true, // AUFLRA true, // AUFLIRA @@ -583,6 +605,8 @@ static const uint8_t has_uf[NUM_SMT_LOGICS] = { true, // QF_UFNIRA true, // QF_UFRDL true, // QF_AUFBV + true, // QF_AUFBVLIA + true, // QF_AUFBVNIA true, // QF_AUFLIA true, // QF_AUFLRA true, // QF_AUFLIRA @@ -626,6 +650,8 @@ static const uint8_t arith_frag[NUM_SMT_LOGICS] = { ARITH_NIRA, // UFNIRA ARITH_RDL, // UFRDL ARITH_NONE, // AUFBV + ARITH_LIA, // AUFBVLIA + ARITH_NIA, // AUFBVNIA ARITH_LIA, // AUFLIA ARITH_LRA, // AUFLRA ARITH_LIRA, // AUFLIRA @@ -663,6 +689,8 @@ static const uint8_t arith_frag[NUM_SMT_LOGICS] = { ARITH_NIRA, // QF_UFNIRA ARITH_RDL, // QF_UFRDL ARITH_NONE, // QF_AUFBV + ARITH_LIA, // QF_AUFBVLIA + ARITH_NIA, // QF_AUFBVNIA ARITH_LIA, // QF_AUFLIA ARITH_LRA, // QF_AUFLRA ARITH_LIRA, // QF_AUFLIRA @@ -747,6 +775,8 @@ static const smt_logic_t logic2qf[NUM_SMT_LOGICS] = { QF_UFNIRA, QF_UFRDL, QF_AUFBV, + QF_AUFBVLIA, + QF_AUFBVNIA, QF_AUFLIA, QF_AUFLRA, QF_AUFLIRA, @@ -787,6 +817,8 @@ static const smt_logic_t logic2qf[NUM_SMT_LOGICS] = { QF_UFNIRA, QF_UFRDL, QF_AUFBV, + QF_AUFBVLIA, + QF_AUFBVNIA, QF_AUFLIA, QF_AUFLRA, QF_AUFLIRA, @@ -843,6 +875,8 @@ static const bool is_official[NUM_SMT_LOGICS] = { false, // UFNIRA false, // UFRDL true, // AUFBV + false, // AUFBVLIA + false, // AUFBVNIA true, // AUFLIA false, // AUFLRA true, // AUFLIRA @@ -880,6 +914,8 @@ static const bool is_official[NUM_SMT_LOGICS] = { false, // QF_UFNIRA false, // QF_UFRDL true, // QF_AUFBV + true, // QF_AUFBVLIA + true, // QF_AUFBVNIA true, // QF_AUFLIA false, // QF_AUFLRA true, // QF_AUFLIRA diff --git a/src/api/smt_logic_codes.h b/src/api/smt_logic_codes.h index 8c818cdce..0971d549c 100644 --- a/src/api/smt_logic_codes.h +++ b/src/api/smt_logic_codes.h @@ -101,6 +101,8 @@ typedef enum smt_logic { // Arrays + uninterpreted functions + another theory AUFBV, // arrays + uninterpreted functions + bitvectors + AUFBVLIA, // arrays + uninterpreted functions + bitvectors + linear integer arithmetic + AUFBVNIA, // arrays + uninterpreted functions + bitvectors + nonlinear integer arithmetic AUFLIA, // arrays + uninterpreted functions + linear integer arithmetic AUFLRA, // arrays + uninterpreted functions + linear real arithmetic AUFLIRA, // arrays + uninterpreted functions + mixed linear arithmetic @@ -147,6 +149,8 @@ typedef enum smt_logic { // Arrays + uninterpreted functions + another theory QF_AUFBV, // arrays + uninterpreted functions + bitvectors + QF_AUFBVLIA, // arrays + uninterpreted functions + bitvectors + linear integer arithmetic + QF_AUFBVNIA, // arrays + uninterpreted functions + bitvectors + nonlinear integer arithmetic QF_AUFLIA, // arrays + uninterpreted functions + linear integer arithmetic QF_AUFLRA, // arrays + uninterpreted functions + linear real arithmetic QF_AUFLIRA, // arrays + uninterpreted functions + mixed linear arithmetic diff --git a/src/include/yices.h b/src/include/yices.h index 22e9514f5..851db6003 100644 --- a/src/include/yices.h +++ b/src/include/yices.h @@ -2831,6 +2831,8 @@ __YICES_DLLSPEC__ extern int32_t yices_set_config(ctx_config_t *config, const ch * * QF_AUF: arrays + uninterpreted functions * QF_AUFBV: arrays, bitvectors, uninterpreted functions + * QF_AUFBVLIA: arrays, bitvectors, uninterpreted functions, and linear integer arithmetic + * QF_AUFBVNIA: arrays, bitvectors, uninterpreted functions, and nonlinear integer arithmetic * QF_AUFLIA: arrays, uninterpreted functions, and linear integer arithmetic * QF_AUFLRA: arrays, uninterpreted functions, and linear real arithmetic * QF_AUFLIRA: arrays, uninterpreted functions, and mixed linear arithmetic diff --git a/tests/regress/coverage/smtlib/QF_AUFBVLIA/20190307-CPAchecker_kInduction-SoSy_Lab/205_9a_array_safes_linux-3.16-rc1.tar.xz-205_9a-drivers--net--wireless--rtlwifi--btcoexist--btcoexist.ko-entry_point.cil.out_smt-query.0.smt2 b/tests/regress/coverage/smtlib/QF_AUFBVLIA/20190307-CPAchecker_kInduction-SoSy_Lab/205_9a_array_safes_linux-3.16-rc1.tar.xz-205_9a-drivers--net--wireless--rtlwifi--btcoexist--btcoexist.ko-entry_point.cil.out_smt-query.0.smt2 new file mode 100644 index 000000000..47bd2d6a0 --- /dev/null +++ b/tests/regress/coverage/smtlib/QF_AUFBVLIA/20190307-CPAchecker_kInduction-SoSy_Lab/205_9a_array_safes_linux-3.16-rc1.tar.xz-205_9a-drivers--net--wireless--rtlwifi--btcoexist--btcoexist.ko-entry_point.cil.out_smt-query.0.smt2 @@ -0,0 +1,1806 @@ +(set-info :smt-lib-version 2.6) +(set-logic QF_AUFBVLIA) +(set-info :source | +Generated by: SoSy-Lab +Generated on: 2019-03-07 +Generator: CPAchecker 1.8-svn 30724 using kInduction +Application: Software Verification for programs written in C +Target solver: MathSAT5 +|) +(set-info :license "https://www.gnu.org/licenses/gpl-2.0.html") +(set-info :category "industrial") +(set-info :status unsat) + +(push 1) +(define-fun _2 () Bool false) +(assert _2) +(check-sat) +(pop 1) +(push 1) +(declare-fun __string__ (Int) (_ BitVec 64)) +(declare-fun __ADDRESS_OF_btc_dbg_type@ () (_ BitVec 64)) +(declare-fun *int@1 () (Array (_ BitVec 64) (_ BitVec 32))) +(declare-fun __ADDRESS_OF_glcoex_dm_8723b_2ant@ () (_ BitVec 64)) +(declare-fun *_Bool@1 () (Array (_ BitVec 64) (_ BitVec 8))) +(declare-fun *char@1 () (Array (_ BitVec 64) (_ BitVec 8))) +(declare-fun *short_int@1 () (Array (_ BitVec 64) (_ BitVec 16))) +(declare-fun coex_dm@2 () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_glcoex_sta_8723b_2ant@ () (_ BitVec 64)) +(declare-fun coex_sta@2 () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_glbt_info_src_8723b_2ant@ () (_ BitVec 64)) +(declare-fun |*(char)*@1| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun glcoex_ver_date_8723b_2ant@2 () (_ BitVec 32)) +(declare-fun glcoex_ver_8723b_2ant@2 () (_ BitVec 32)) +(declare-fun __ADDRESS_OF_gl_bt_coexist@ () (_ BitVec 64)) +(declare-fun |*(void)*@1| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |*(Return_type:_[char],_Parameters:_2,_Parameter_1_type:_[(void)*],_Parameter_2_type:_[int],_VarArgs:_false)*@1| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |*(Return_type:_[void],_Parameters:_3,_Parameter_1_type:_[(void)*],_Parameter_2_type:_[int],_Parameter_3_type:_[char],_VarArgs:_false)*@1| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |*(Return_type:_[void],_Parameters:_4,_Parameter_1_type:_[(void)*],_Parameter_2_type:_[int],_Parameter_3_type:_[int],_Parameter_4_type:_[char],_VarArgs:_false)*@1| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |*(Return_type:_[short_int],_Parameters:_2,_Parameter_1_type:_[(void)*],_Parameter_2_type:_[int],_VarArgs:_false)*@1| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |*(Return_type:_[void],_Parameters:_3,_Parameter_1_type:_[(void)*],_Parameter_2_type:_[int],_Parameter_3_type:_[short_int],_VarArgs:_false)*@1| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |*(Return_type:_[int],_Parameters:_2,_Parameter_1_type:_[(void)*],_Parameter_2_type:_[int],_VarArgs:_false)*@1| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |*(Return_type:_[void],_Parameters:_3,_Parameter_1_type:_[(void)*],_Parameter_2_type:_[int],_Parameter_3_type:_[int],_VarArgs:_false)*@1| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |*(Return_type:_[void],_Parameters:_5,_Parameter_1_type:_[(void)*],_Parameter_2_type:_[char],_Parameter_3_type:_[int],_Parameter_4_type:_[int],_Parameter_5_type:_[int],_VarArgs:_false)*@1| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |*(Return_type:_[int],_Parameters:_4,_Parameter_1_type:_[(void)*],_Parameter_2_type:_[char],_Parameter_3_type:_[int],_Parameter_4_type:_[int],_VarArgs:_false)*@1| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |*(Return_type:_[void],_Parameters:_4,_Parameter_1_type:_[(void)*],_Parameter_2_type:_[char],_Parameter_3_type:_[int],_Parameter_4_type:_[(char)*],_VarArgs:_false)*@1| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |*(Return_type:_[void],_Parameters:_2,_Parameter_1_type:_[(void)*],_Parameter_2_type:_[char],_VarArgs:_false)*@1| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |*(Return_type:_[_Bool],_Parameters:_3,_Parameter_1_type:_[(void)*],_Parameter_2_type:_[char],_Parameter_3_type:_[(void)*],_VarArgs:_false)*@1| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun __ADDRESS_OF_btc_dbg_buf@ () (_ BitVec 64)) +(declare-fun ldv_state_variable_1@2 () (_ BitVec 32)) +(declare-fun rtl_btc_operation_group0@2 () (_ BitVec 64)) +(declare-fun ref_cnt@2 () (_ BitVec 32)) +(declare-fun ldv_state_variable_0@2 () (_ BitVec 32)) +(declare-fun __ADDRESS_OF_rtl_btc_operation@ () (_ BitVec 64)) +(declare-fun __ADDRESS_OF___kstrtab_rtl_btc_get_ops_pointer@ () (_ BitVec 64)) +(declare-fun ldv_retval_0@2 () (_ BitVec 32)) +(declare-fun __ADDRESS_OF_set_impl@ () (_ BitVec 64)) +(declare-fun last_index@2 () (_ BitVec 32)) +(declare-fun |__ADDRESS_OF_main::ldvarg4@| () (_ BitVec 64)) +(declare-fun __VERIFIER_nondet_u8@2 () (_ BitVec 8)) +(declare-fun |main::tmp@3| () (_ BitVec 8)) +(declare-fun |main::ldvarg1@3| () (_ BitVec 8)) +(declare-fun __VERIFIER_nondet_u8@3 () (_ BitVec 8)) +(declare-fun |main::tmp___0@3| () (_ BitVec 8)) +(declare-fun |main::ldvarg3@3| () (_ BitVec 8)) +(declare-fun __VERIFIER_nondet_u8@4 () (_ BitVec 8)) +(declare-fun |main::tmp___1@3| () (_ BitVec 8)) +(declare-fun |main::ldvarg0@3| () (_ BitVec 8)) +(declare-fun __VERIFIER_nondet_u8@5 () (_ BitVec 8)) +(declare-fun |main::tmp___2@3| () (_ BitVec 8)) +(declare-fun |main::ldvarg5@3| () (_ BitVec 8)) +(declare-fun |ldv_zalloc::size@2| () (_ BitVec 64)) +(declare-fun __VERIFIER_nondet_int@2 () (_ BitVec 32)) +(declare-fun |ldv_zalloc::tmp___0@3| () (_ BitVec 32)) +(declare-fun calloc@2 () (_ BitVec 64)) +(declare-fun |__ADDRESS_OF___VERIFIER_successful_zalloc_*void#1@| () (_ BitVec 64)) +(declare-fun |ldv_zalloc::tmp@3| () (_ BitVec 64)) +(declare-fun |ldv_zalloc::p@3| () (_ BitVec 64)) +(declare-fun |ldv_zalloc::__retval__@2| () (_ BitVec 64)) +(declare-fun calloc@1 () (_ BitVec 64)) +(declare-fun |ldv_zalloc::p@2| () (_ BitVec 64)) +(declare-fun |ldv_zalloc::tmp@2| () (_ BitVec 64)) +(declare-fun |main::tmp___3@3| () (_ BitVec 64)) +(declare-fun |main::ldvarg2@3| () (_ BitVec 64)) +(declare-fun last_index@3 () (_ BitVec 32)) +(declare-fun *enum__RT_MEDIA_STATUS@1 () (Array (_ BitVec 64) (_ BitVec 32))) +(declare-fun |main::ldvarg4@2| () (_ BitVec 32)) +(declare-fun ldv_state_variable_1@3 () (_ BitVec 32)) +(declare-fun ref_cnt@3 () (_ BitVec 32)) +(declare-fun ldv_state_variable_0@3 () (_ BitVec 32)) +(declare-fun __VERIFIER_nondet_int@3 () (_ BitVec 32)) +(declare-fun |main::tmp___4@3| () (_ BitVec 32)) +(declare-fun __VERIFIER_nondet_int@4 () (_ BitVec 32)) +(declare-fun |main::tmp___6@3| () (_ BitVec 32)) +(declare-fun |rtl_btcoexist_module_init::__retval__@2| () (_ BitVec 32)) +(declare-fun ldv_retval_0@3 () (_ BitVec 32)) +(declare-fun ldv_state_variable_0@4 () (_ BitVec 32)) +(declare-fun ldv_state_variable_1@4 () (_ BitVec 32)) +(declare-fun |ldv_zalloc::size@3| () (_ BitVec 64)) +(declare-fun __VERIFIER_nondet_int@5 () (_ BitVec 32)) +(declare-fun |ldv_zalloc::tmp___0@5| () (_ BitVec 32)) +(declare-fun calloc@3 () (_ BitVec 64)) +(declare-fun |__ADDRESS_OF___VERIFIER_successful_zalloc_*void#2@| () (_ BitVec 64)) +(declare-fun |ldv_zalloc::tmp@5| () (_ BitVec 64)) +(declare-fun |ldv_zalloc::p@5| () (_ BitVec 64)) +(declare-fun |ldv_zalloc::__retval__@3| () (_ BitVec 64)) +(declare-fun |ldv_zalloc::p@4| () (_ BitVec 64)) +(declare-fun |ldv_zalloc::tmp@4| () (_ BitVec 64)) +(declare-fun |ldv_initialize_rtl_btc_ops_1::tmp@3| () (_ BitVec 64)) +(declare-fun |*(struct_ieee80211_hw)*@1| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun *enum_nl80211_iftype@1 () (Array (_ BitVec 64) (_ BitVec 32))) +(declare-fun *enum_rtl_link_state@1 () (Array (_ BitVec 64) (_ BitVec 32))) +(declare-fun |*(Return_type:_[void],_Parameters:_3,_Parameter_1_type:_[(struct_rtl_priv)*],_Parameter_2_type:_[int],_Parameter_3_type:_[char],_VarArgs:_false)*@1| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |*(Return_type:_[void],_Parameters:_3,_Parameter_1_type:_[(struct_rtl_priv)*],_Parameter_2_type:_[int],_Parameter_3_type:_[short_int],_VarArgs:_false)*@1| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |*(Return_type:_[void],_Parameters:_3,_Parameter_1_type:_[(struct_rtl_priv)*],_Parameter_2_type:_[int],_Parameter_3_type:_[int],_VarArgs:_false)*@1| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |*(Return_type:_[char],_Parameters:_2,_Parameter_1_type:_[(struct_rtl_priv)*],_Parameter_2_type:_[int],_VarArgs:_false)*@1| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |*(Return_type:_[short_int],_Parameters:_2,_Parameter_1_type:_[(struct_rtl_priv)*],_Parameter_2_type:_[int],_VarArgs:_false)*@1| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |*(Return_type:_[int],_Parameters:_2,_Parameter_1_type:_[(struct_rtl_priv)*],_Parameter_2_type:_[int],_VarArgs:_false)*@1| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun *long_int@1 () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun *enum_rt_enc_alg@1 () (Array (_ BitVec 64) (_ BitVec 32))) +(declare-fun *long_long_int@1 () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |*(struct_rtl_hal_cfg)*@1| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun rtl_btc_operation_group0@3 () (_ BitVec 64)) +(declare-fun |ldv_initialize_rtl_btc_ops_1::tmp@1| () (_ BitVec 64)) +(declare-fun |rtl_btcoexist_module_init::__retval__@1| () (_ BitVec 32)) +(declare-fun |main::tmp___6@2| () (_ BitVec 32)) +(define-fun _8 () (_ BitVec 64) (_ bv0 64)) +(define-fun _9 () (_ BitVec 64) (_ bv8 64)) +(define-fun _10 () (_ BitVec 64) __ADDRESS_OF_btc_dbg_type@) +(define-fun _11 () Bool (bvslt _8 _10)) +(define-fun _13 () (_ BitVec 64) (bvadd _9 _10)) +(define-fun _14 () Bool (bvslt _8 _13)) +(define-fun _15 () (_ BitVec 32) (_ bv0 32)) +(define-fun _16 () (_ BitVec 64) (_ bv4 64)) +(define-fun _19 () (Array (_ BitVec 64) (_ BitVec 32)) *int@1) +(define-fun _20 () (Array (_ BitVec 64) (_ BitVec 32)) (store _19 _10 _15)) +(define-fun _21 () Bool (= _19 _20)) +(define-fun _22 () (_ BitVec 32) (_ bv1 32)) +(define-fun _23 () (_ BitVec 64) (_ bv1 64)) +(define-fun _25 () (_ BitVec 64) (bvadd _16 _10)) +(define-fun _26 () (Array (_ BitVec 64) (_ BitVec 32)) (store _19 _25 _15)) +(define-fun _27 () Bool (= _19 _26)) +(define-fun _28 () Bool (and _21 _27)) +(define-fun _29 () Bool (and _11 _14)) +(define-fun _30 () Bool (and _28 _29)) +(define-fun _31 () (_ BitVec 64) (_ bv84 64)) +(define-fun _32 () (_ BitVec 64) __ADDRESS_OF_glcoex_dm_8723b_2ant@) +(define-fun _33 () Bool (bvslt _13 _32)) +(define-fun _35 () (_ BitVec 64) (bvadd _31 _32)) +(define-fun _36 () Bool (bvslt _8 _35)) +(define-fun _37 () (_ BitVec 8) (_ bv0 8)) +(define-fun _40 () (Array (_ BitVec 64) (_ BitVec 8)) *_Bool@1) +(define-fun _41 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _32 _37)) +(define-fun _42 () Bool (= _40 _41)) +(define-fun _44 () (_ BitVec 64) (bvadd _23 _32)) +(define-fun _45 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _44 _37)) +(define-fun _46 () Bool (= _40 _45)) +(define-fun _47 () Bool (and _42 _46)) +(define-fun _48 () (_ BitVec 64) (_ bv2 64)) +(define-fun _50 () (_ BitVec 64) (bvadd _48 _32)) +(define-fun _51 () (Array (_ BitVec 64) (_ BitVec 8)) *char@1) +(define-fun _52 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _50 _37)) +(define-fun _53 () Bool (= _51 _52)) +(define-fun _54 () Bool (and _47 _53)) +(define-fun _55 () (_ BitVec 64) (_ bv3 64)) +(define-fun _57 () (_ BitVec 64) (bvadd _55 _32)) +(define-fun _58 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _57 _37)) +(define-fun _59 () Bool (= _51 _58)) +(define-fun _60 () Bool (and _54 _59)) +(define-fun _62 () (_ BitVec 64) (bvadd _16 _32)) +(define-fun _63 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _62 _37)) +(define-fun _64 () Bool (= _40 _63)) +(define-fun _65 () Bool (and _60 _64)) +(define-fun _66 () (_ BitVec 64) (_ bv5 64)) +(define-fun _68 () (_ BitVec 64) (bvadd _66 _32)) +(define-fun _69 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _68 _37)) +(define-fun _70 () Bool (= _40 _69)) +(define-fun _71 () Bool (and _65 _70)) +(define-fun _72 () (_ BitVec 64) (_ bv6 64)) +(define-fun _74 () (_ BitVec 64) (bvadd _72 _32)) +(define-fun _75 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _74 _37)) +(define-fun _76 () Bool (= _51 _75)) +(define-fun _77 () Bool (and _71 _76)) +(define-fun _78 () (_ BitVec 64) (_ bv7 64)) +(define-fun _80 () (_ BitVec 64) (bvadd _78 _32)) +(define-fun _81 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _80 _37)) +(define-fun _82 () Bool (= _51 _81)) +(define-fun _83 () Bool (and _77 _82)) +(define-fun _85 () (_ BitVec 64) (bvadd _9 _32)) +(define-fun _88 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _85 _37)) +(define-fun _89 () Bool (= _51 _88)) +(define-fun _90 () Bool (and _83 _89)) +(define-fun _93 () (_ BitVec 64) (_ bv9 64)) +(define-fun _94 () (_ BitVec 64) (bvadd _93 _32)) +(define-fun _95 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _94 _37)) +(define-fun _96 () Bool (= _51 _95)) +(define-fun _97 () Bool (and _90 _96)) +(define-fun _101 () (_ BitVec 64) (_ bv10 64)) +(define-fun _102 () (_ BitVec 64) (bvadd _101 _32)) +(define-fun _103 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _102 _37)) +(define-fun _104 () Bool (= _51 _103)) +(define-fun _105 () Bool (and _97 _104)) +(define-fun _106 () (_ BitVec 32) (_ bv3 32)) +(define-fun _109 () (_ BitVec 64) (_ bv11 64)) +(define-fun _110 () (_ BitVec 64) (bvadd _109 _32)) +(define-fun _111 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _110 _37)) +(define-fun _112 () Bool (= _51 _111)) +(define-fun _113 () Bool (and _105 _112)) +(define-fun _117 () (_ BitVec 64) (_ bv12 64)) +(define-fun _118 () (_ BitVec 64) (bvadd _117 _32)) +(define-fun _119 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _118 _37)) +(define-fun _120 () Bool (= _51 _119)) +(define-fun _121 () Bool (and _113 _120)) +(define-fun _122 () (_ BitVec 64) (_ bv13 64)) +(define-fun _124 () (_ BitVec 64) (bvadd _122 _32)) +(define-fun _125 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _124 _37)) +(define-fun _126 () Bool (= _51 _125)) +(define-fun _127 () Bool (and _121 _126)) +(define-fun _128 () (_ BitVec 64) (_ bv15 64)) +(define-fun _130 () (_ BitVec 64) (bvadd _128 _32)) +(define-fun _131 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _130 _37)) +(define-fun _132 () Bool (= _40 _131)) +(define-fun _133 () Bool (and _127 _132)) +(define-fun _134 () (_ BitVec 64) (_ bv16 64)) +(define-fun _136 () (_ BitVec 64) (bvadd _134 _32)) +(define-fun _137 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _136 _37)) +(define-fun _138 () Bool (= _40 _137)) +(define-fun _139 () Bool (and _133 _138)) +(define-fun _140 () (_ BitVec 64) (_ bv17 64)) +(define-fun _142 () (_ BitVec 64) (bvadd _140 _32)) +(define-fun _143 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _142 _37)) +(define-fun _144 () Bool (= _40 _143)) +(define-fun _145 () Bool (and _139 _144)) +(define-fun _146 () (_ BitVec 64) (_ bv20 64)) +(define-fun _148 () (_ BitVec 64) (bvadd _146 _32)) +(define-fun _149 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _148 _37)) +(define-fun _150 () Bool (= _40 _149)) +(define-fun _151 () Bool (and _145 _150)) +(define-fun _152 () (_ BitVec 64) (_ bv21 64)) +(define-fun _154 () (_ BitVec 64) (bvadd _152 _32)) +(define-fun _155 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _154 _37)) +(define-fun _156 () Bool (= _40 _155)) +(define-fun _157 () Bool (and _151 _156)) +(define-fun _158 () (_ BitVec 64) (_ bv24 64)) +(define-fun _160 () (_ BitVec 64) (bvadd _158 _32)) +(define-fun _161 () (Array (_ BitVec 64) (_ BitVec 32)) (store _19 _160 _15)) +(define-fun _162 () Bool (= _19 _161)) +(define-fun _163 () Bool (and _157 _162)) +(define-fun _164 () (_ BitVec 64) (_ bv28 64)) +(define-fun _166 () (_ BitVec 64) (bvadd _164 _32)) +(define-fun _167 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _166 _37)) +(define-fun _168 () Bool (= _40 _167)) +(define-fun _169 () Bool (and _163 _168)) +(define-fun _170 () (_ BitVec 64) (_ bv29 64)) +(define-fun _172 () (_ BitVec 64) (bvadd _170 _32)) +(define-fun _173 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _172 _37)) +(define-fun _174 () Bool (= _40 _173)) +(define-fun _175 () Bool (and _169 _174)) +(define-fun _176 () (_ BitVec 64) (_ bv30 64)) +(define-fun _178 () (_ BitVec 64) (bvadd _176 _32)) +(define-fun _179 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _178 _37)) +(define-fun _180 () Bool (= _40 _179)) +(define-fun _181 () Bool (and _175 _180)) +(define-fun _182 () (_ BitVec 64) (_ bv32 64)) +(define-fun _184 () (_ BitVec 64) (bvadd _182 _32)) +(define-fun _185 () (Array (_ BitVec 64) (_ BitVec 32)) (store _19 _184 _15)) +(define-fun _186 () Bool (= _19 _185)) +(define-fun _187 () Bool (and _181 _186)) +(define-fun _188 () (_ BitVec 64) (_ bv36 64)) +(define-fun _190 () (_ BitVec 64) (bvadd _188 _32)) +(define-fun _191 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _190 _37)) +(define-fun _192 () Bool (= _40 _191)) +(define-fun _193 () Bool (and _187 _192)) +(define-fun _194 () (_ BitVec 64) (_ bv40 64)) +(define-fun _196 () (_ BitVec 64) (bvadd _194 _32)) +(define-fun _197 () (Array (_ BitVec 64) (_ BitVec 32)) (store _19 _196 _15)) +(define-fun _198 () Bool (= _19 _197)) +(define-fun _199 () Bool (and _193 _198)) +(define-fun _200 () (_ BitVec 64) (_ bv45 64)) +(define-fun _202 () (_ BitVec 64) (bvadd _200 _32)) +(define-fun _203 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _202 _37)) +(define-fun _204 () Bool (= _40 _203)) +(define-fun _205 () Bool (and _199 _204)) +(define-fun _206 () (_ BitVec 64) (_ bv46 64)) +(define-fun _208 () (_ BitVec 64) (bvadd _206 _32)) +(define-fun _209 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _208 _37)) +(define-fun _210 () Bool (= _40 _209)) +(define-fun _211 () Bool (and _205 _210)) +(define-fun _212 () (_ BitVec 64) (_ bv47 64)) +(define-fun _214 () (_ BitVec 64) (bvadd _212 _32)) +(define-fun _215 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _214 _37)) +(define-fun _216 () Bool (= _40 _215)) +(define-fun _217 () Bool (and _211 _216)) +(define-fun _218 () (_ BitVec 64) (_ bv48 64)) +(define-fun _220 () (_ BitVec 64) (bvadd _218 _32)) +(define-fun _221 () (Array (_ BitVec 64) (_ BitVec 32)) (store _19 _220 _15)) +(define-fun _222 () Bool (= _19 _221)) +(define-fun _223 () Bool (and _217 _222)) +(define-fun _224 () (_ BitVec 64) (_ bv52 64)) +(define-fun _226 () (_ BitVec 64) (bvadd _224 _32)) +(define-fun _227 () (Array (_ BitVec 64) (_ BitVec 32)) (store _19 _226 _15)) +(define-fun _228 () Bool (= _19 _227)) +(define-fun _229 () Bool (and _223 _228)) +(define-fun _230 () (_ BitVec 64) (_ bv56 64)) +(define-fun _232 () (_ BitVec 64) (bvadd _230 _32)) +(define-fun _233 () (Array (_ BitVec 64) (_ BitVec 32)) (store _19 _232 _15)) +(define-fun _234 () Bool (= _19 _233)) +(define-fun _235 () Bool (and _229 _234)) +(define-fun _236 () (_ BitVec 64) (_ bv60 64)) +(define-fun _238 () (_ BitVec 64) (bvadd _236 _32)) +(define-fun _239 () (Array (_ BitVec 64) (_ BitVec 32)) (store _19 _238 _15)) +(define-fun _240 () Bool (= _19 _239)) +(define-fun _241 () Bool (and _235 _240)) +(define-fun _242 () (_ BitVec 64) (_ bv64 64)) +(define-fun _244 () (_ BitVec 64) (bvadd _242 _32)) +(define-fun _245 () (Array (_ BitVec 64) (_ BitVec 32)) (store _19 _244 _15)) +(define-fun _246 () Bool (= _19 _245)) +(define-fun _247 () Bool (and _241 _246)) +(define-fun _248 () (_ BitVec 64) (_ bv68 64)) +(define-fun _250 () (_ BitVec 64) (bvadd _248 _32)) +(define-fun _251 () (Array (_ BitVec 64) (_ BitVec 32)) (store _19 _250 _15)) +(define-fun _252 () Bool (= _19 _251)) +(define-fun _253 () Bool (and _247 _252)) +(define-fun _254 () (_ BitVec 64) (_ bv72 64)) +(define-fun _256 () (_ BitVec 64) (bvadd _254 _32)) +(define-fun _257 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _256 _37)) +(define-fun _258 () Bool (= _51 _257)) +(define-fun _259 () Bool (and _253 _258)) +(define-fun _260 () (_ BitVec 64) (_ bv73 64)) +(define-fun _262 () (_ BitVec 64) (bvadd _260 _32)) +(define-fun _263 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _262 _37)) +(define-fun _264 () Bool (= _51 _263)) +(define-fun _265 () Bool (and _259 _264)) +(define-fun _266 () (_ BitVec 64) (_ bv74 64)) +(define-fun _268 () (_ BitVec 64) (bvadd _266 _32)) +(define-fun _269 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _268 _37)) +(define-fun _270 () Bool (= _40 _269)) +(define-fun _271 () Bool (and _265 _270)) +(define-fun _272 () (_ BitVec 64) (_ bv75 64)) +(define-fun _274 () (_ BitVec 64) (bvadd _272 _32)) +(define-fun _275 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _274 _37)) +(define-fun _276 () Bool (= _51 _275)) +(define-fun _277 () Bool (and _271 _276)) +(define-fun _278 () (_ BitVec 64) (_ bv76 64)) +(define-fun _280 () (_ BitVec 64) (bvadd _278 _32)) +(define-fun _281 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _280 _37)) +(define-fun _282 () Bool (= _51 _281)) +(define-fun _283 () Bool (and _277 _282)) +(define-fun _284 () (_ BitVec 64) (_ bv77 64)) +(define-fun _286 () (_ BitVec 64) (bvadd _284 _32)) +(define-fun _287 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _286 _37)) +(define-fun _288 () Bool (= _51 _287)) +(define-fun _289 () Bool (and _283 _288)) +(define-fun _290 () (_ BitVec 64) (_ bv78 64)) +(define-fun _292 () (_ BitVec 64) (bvadd _290 _32)) +(define-fun _295 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _292 _37)) +(define-fun _296 () Bool (= _51 _295)) +(define-fun _297 () Bool (and _289 _296)) +(define-fun _300 () (_ BitVec 64) (_ bv79 64)) +(define-fun _301 () (_ BitVec 64) (bvadd _300 _32)) +(define-fun _302 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _301 _37)) +(define-fun _303 () Bool (= _51 _302)) +(define-fun _304 () Bool (and _297 _303)) +(define-fun _307 () (_ BitVec 64) (_ bv80 64)) +(define-fun _308 () (_ BitVec 64) (bvadd _307 _32)) +(define-fun _309 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _308 _37)) +(define-fun _310 () Bool (= _51 _309)) +(define-fun _311 () Bool (and _304 _310)) +(define-fun _312 () (_ BitVec 64) (_ bv81 64)) +(define-fun _314 () (_ BitVec 64) (bvadd _312 _32)) +(define-fun _315 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _314 _37)) +(define-fun _316 () Bool (= _40 _315)) +(define-fun _317 () Bool (and _311 _316)) +(define-fun _318 () (_ BitVec 16) (_ bv0 16)) +(define-fun _319 () (_ BitVec 64) (_ bv82 64)) +(define-fun _321 () (_ BitVec 64) (bvadd _319 _32)) +(define-fun _322 () (Array (_ BitVec 64) (_ BitVec 16)) *short_int@1) +(define-fun _323 () (Array (_ BitVec 64) (_ BitVec 16)) (store _322 _321 _318)) +(define-fun _324 () Bool (= _322 _323)) +(define-fun _325 () Bool (and _317 _324)) +(define-fun _326 () Bool (and _33 _36)) +(define-fun _327 () Bool (and _325 _326)) +(define-fun _328 () Bool (and _30 _327)) +(define-fun _329 () (_ BitVec 64) coex_dm@2) +(define-fun _330 () Bool (= _32 _329)) +(define-fun _331 () Bool (and _328 _330)) +(define-fun _332 () (_ BitVec 64) __ADDRESS_OF_glcoex_sta_8723b_2ant@) +(define-fun _333 () Bool (bvslt _35 _332)) +(define-fun _335 () (_ BitVec 64) (bvadd _307 _332)) +(define-fun _336 () Bool (bvslt _8 _335)) +(define-fun _339 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _332 _37)) +(define-fun _340 () Bool (= _40 _339)) +(define-fun _342 () (_ BitVec 64) (bvadd _23 _332)) +(define-fun _343 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _342 _37)) +(define-fun _344 () Bool (= _40 _343)) +(define-fun _345 () Bool (and _340 _344)) +(define-fun _347 () (_ BitVec 64) (bvadd _48 _332)) +(define-fun _348 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _347 _37)) +(define-fun _349 () Bool (= _40 _348)) +(define-fun _350 () Bool (and _345 _349)) +(define-fun _352 () (_ BitVec 64) (bvadd _55 _332)) +(define-fun _353 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _352 _37)) +(define-fun _354 () Bool (= _40 _353)) +(define-fun _355 () Bool (and _350 _354)) +(define-fun _357 () (_ BitVec 64) (bvadd _16 _332)) +(define-fun _358 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _357 _37)) +(define-fun _359 () Bool (= _40 _358)) +(define-fun _360 () Bool (and _355 _359)) +(define-fun _362 () (_ BitVec 64) (bvadd _66 _332)) +(define-fun _363 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _362 _37)) +(define-fun _364 () Bool (= _40 _363)) +(define-fun _365 () Bool (and _360 _364)) +(define-fun _367 () (_ BitVec 64) (bvadd _72 _332)) +(define-fun _368 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _367 _37)) +(define-fun _369 () Bool (= _40 _368)) +(define-fun _370 () Bool (and _365 _369)) +(define-fun _372 () (_ BitVec 64) (bvadd _9 _332)) +(define-fun _373 () (Array (_ BitVec 64) (_ BitVec 32)) (store _19 _372 _15)) +(define-fun _374 () Bool (= _19 _373)) +(define-fun _375 () Bool (and _370 _374)) +(define-fun _377 () (_ BitVec 64) (bvadd _117 _332)) +(define-fun _378 () (Array (_ BitVec 64) (_ BitVec 32)) (store _19 _377 _15)) +(define-fun _379 () Bool (= _19 _378)) +(define-fun _380 () Bool (and _375 _379)) +(define-fun _382 () (_ BitVec 64) (bvadd _134 _332)) +(define-fun _383 () (Array (_ BitVec 64) (_ BitVec 32)) (store _19 _382 _15)) +(define-fun _384 () Bool (= _19 _383)) +(define-fun _385 () Bool (and _380 _384)) +(define-fun _387 () (_ BitVec 64) (bvadd _146 _332)) +(define-fun _388 () (Array (_ BitVec 64) (_ BitVec 32)) (store _19 _387 _15)) +(define-fun _389 () Bool (= _19 _388)) +(define-fun _390 () Bool (and _385 _389)) +(define-fun _392 () (_ BitVec 64) (bvadd _158 _332)) +(define-fun _393 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _392 _37)) +(define-fun _394 () Bool (= _51 _393)) +(define-fun _395 () Bool (and _390 _394)) +(define-fun _396 () (_ BitVec 64) (_ bv25 64)) +(define-fun _398 () (_ BitVec 64) (bvadd _396 _332)) +(define-fun _399 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _398 _37)) +(define-fun _400 () Bool (= _51 _399)) +(define-fun _401 () Bool (and _395 _400)) +(define-fun _402 () (_ BitVec 64) (_ bv26 64)) +(define-fun _404 () (_ BitVec 64) (bvadd _402 _332)) +(define-fun _407 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _404 _37)) +(define-fun _408 () Bool (= _51 _407)) +(define-fun _409 () Bool (and _401 _408)) +(define-fun _412 () (_ BitVec 64) (_ bv27 64)) +(define-fun _413 () (_ BitVec 64) (bvadd _412 _332)) +(define-fun _414 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _413 _37)) +(define-fun _415 () Bool (= _51 _414)) +(define-fun _416 () Bool (and _409 _415)) +(define-fun _419 () (_ BitVec 64) (bvadd _164 _332)) +(define-fun _420 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _419 _37)) +(define-fun _421 () Bool (= _51 _420)) +(define-fun _422 () Bool (and _416 _421)) +(define-fun _425 () (_ BitVec 64) (bvadd _170 _332)) +(define-fun _426 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _425 _37)) +(define-fun _427 () Bool (= _51 _426)) +(define-fun _428 () Bool (and _422 _427)) +(define-fun _429 () (_ BitVec 64) (_ bv31 64)) +(define-fun _431 () (_ BitVec 64) (bvadd _429 _332)) +(define-fun _434 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _431 _37)) +(define-fun _435 () Bool (= _51 _434)) +(define-fun _436 () Bool (and _428 _435)) +(define-fun _439 () (_ BitVec 64) (bvadd _182 _332)) +(define-fun _440 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _439 _37)) +(define-fun _441 () Bool (= _51 _440)) +(define-fun _442 () Bool (and _436 _441)) +(define-fun _445 () (_ BitVec 64) (_ bv33 64)) +(define-fun _446 () (_ BitVec 64) (bvadd _445 _332)) +(define-fun _447 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _446 _37)) +(define-fun _448 () Bool (= _51 _447)) +(define-fun _449 () Bool (and _442 _448)) +(define-fun _452 () (_ BitVec 64) (_ bv34 64)) +(define-fun _453 () (_ BitVec 64) (bvadd _452 _332)) +(define-fun _454 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _453 _37)) +(define-fun _455 () Bool (= _51 _454)) +(define-fun _456 () Bool (and _449 _455)) +(define-fun _459 () (_ BitVec 64) (_ bv35 64)) +(define-fun _460 () (_ BitVec 64) (bvadd _459 _332)) +(define-fun _461 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _460 _37)) +(define-fun _462 () Bool (= _51 _461)) +(define-fun _463 () Bool (and _456 _462)) +(define-fun _467 () (_ BitVec 64) (bvadd _188 _332)) +(define-fun _468 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _467 _37)) +(define-fun _469 () Bool (= _51 _468)) +(define-fun _470 () Bool (and _463 _469)) +(define-fun _474 () (_ BitVec 64) (_ bv37 64)) +(define-fun _475 () (_ BitVec 64) (bvadd _474 _332)) +(define-fun _476 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _475 _37)) +(define-fun _477 () Bool (= _51 _476)) +(define-fun _478 () Bool (and _470 _477)) +(define-fun _482 () (_ BitVec 64) (_ bv38 64)) +(define-fun _483 () (_ BitVec 64) (bvadd _482 _332)) +(define-fun _484 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _483 _37)) +(define-fun _485 () Bool (= _51 _484)) +(define-fun _486 () Bool (and _478 _485)) +(define-fun _490 () (_ BitVec 64) (_ bv39 64)) +(define-fun _491 () (_ BitVec 64) (bvadd _490 _332)) +(define-fun _492 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _491 _37)) +(define-fun _493 () Bool (= _51 _492)) +(define-fun _494 () Bool (and _486 _493)) +(define-fun _498 () (_ BitVec 64) (bvadd _194 _332)) +(define-fun _499 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _498 _37)) +(define-fun _500 () Bool (= _51 _499)) +(define-fun _501 () Bool (and _494 _500)) +(define-fun _504 () (_ BitVec 64) (_ bv41 64)) +(define-fun _505 () (_ BitVec 64) (bvadd _504 _332)) +(define-fun _508 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _505 _37)) +(define-fun _509 () Bool (= _51 _508)) +(define-fun _510 () Bool (and _501 _509)) +(define-fun _513 () (_ BitVec 64) (_ bv42 64)) +(define-fun _514 () (_ BitVec 64) (bvadd _513 _332)) +(define-fun _515 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _514 _37)) +(define-fun _516 () Bool (= _51 _515)) +(define-fun _517 () Bool (and _510 _516)) +(define-fun _520 () (_ BitVec 64) (_ bv43 64)) +(define-fun _521 () (_ BitVec 64) (bvadd _520 _332)) +(define-fun _522 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _521 _37)) +(define-fun _523 () Bool (= _51 _522)) +(define-fun _524 () Bool (and _517 _523)) +(define-fun _527 () (_ BitVec 64) (_ bv44 64)) +(define-fun _528 () (_ BitVec 64) (bvadd _527 _332)) +(define-fun _529 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _528 _37)) +(define-fun _530 () Bool (= _51 _529)) +(define-fun _531 () Bool (and _524 _530)) +(define-fun _534 () (_ BitVec 64) (bvadd _200 _332)) +(define-fun _535 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _534 _37)) +(define-fun _536 () Bool (= _51 _535)) +(define-fun _537 () Bool (and _531 _536)) +(define-fun _540 () (_ BitVec 64) (bvadd _206 _332)) +(define-fun _541 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _540 _37)) +(define-fun _542 () Bool (= _51 _541)) +(define-fun _543 () Bool (and _537 _542)) +(define-fun _546 () (_ BitVec 64) (bvadd _212 _332)) +(define-fun _547 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _546 _37)) +(define-fun _548 () Bool (= _51 _547)) +(define-fun _549 () Bool (and _543 _548)) +(define-fun _552 () (_ BitVec 64) (bvadd _218 _332)) +(define-fun _553 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _552 _37)) +(define-fun _554 () Bool (= _51 _553)) +(define-fun _555 () Bool (and _549 _554)) +(define-fun _558 () (_ BitVec 64) (_ bv49 64)) +(define-fun _559 () (_ BitVec 64) (bvadd _558 _332)) +(define-fun _560 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _559 _37)) +(define-fun _561 () Bool (= _51 _560)) +(define-fun _562 () Bool (and _555 _561)) +(define-fun _565 () (_ BitVec 64) (_ bv50 64)) +(define-fun _566 () (_ BitVec 64) (bvadd _565 _332)) +(define-fun _567 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _566 _37)) +(define-fun _568 () Bool (= _51 _567)) +(define-fun _569 () Bool (and _562 _568)) +(define-fun _572 () (_ BitVec 64) (_ bv51 64)) +(define-fun _573 () (_ BitVec 64) (bvadd _572 _332)) +(define-fun _576 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _573 _37)) +(define-fun _577 () Bool (= _51 _576)) +(define-fun _578 () Bool (and _569 _577)) +(define-fun _581 () (_ BitVec 64) (bvadd _224 _332)) +(define-fun _582 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _581 _37)) +(define-fun _583 () Bool (= _51 _582)) +(define-fun _584 () Bool (and _578 _583)) +(define-fun _587 () (_ BitVec 64) (_ bv53 64)) +(define-fun _588 () (_ BitVec 64) (bvadd _587 _332)) +(define-fun _589 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _588 _37)) +(define-fun _590 () Bool (= _51 _589)) +(define-fun _591 () Bool (and _584 _590)) +(define-fun _594 () (_ BitVec 64) (_ bv54 64)) +(define-fun _595 () (_ BitVec 64) (bvadd _594 _332)) +(define-fun _596 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _595 _37)) +(define-fun _597 () Bool (= _51 _596)) +(define-fun _598 () Bool (and _591 _597)) +(define-fun _601 () (_ BitVec 64) (_ bv55 64)) +(define-fun _602 () (_ BitVec 64) (bvadd _601 _332)) +(define-fun _603 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _602 _37)) +(define-fun _604 () Bool (= _51 _603)) +(define-fun _605 () Bool (and _598 _604)) +(define-fun _608 () (_ BitVec 64) (bvadd _230 _332)) +(define-fun _609 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _608 _37)) +(define-fun _610 () Bool (= _51 _609)) +(define-fun _611 () Bool (and _605 _610)) +(define-fun _614 () (_ BitVec 64) (_ bv57 64)) +(define-fun _615 () (_ BitVec 64) (bvadd _614 _332)) +(define-fun _616 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _615 _37)) +(define-fun _617 () Bool (= _51 _616)) +(define-fun _618 () Bool (and _611 _617)) +(define-fun _621 () (_ BitVec 64) (_ bv58 64)) +(define-fun _622 () (_ BitVec 64) (bvadd _621 _332)) +(define-fun _623 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _622 _37)) +(define-fun _624 () Bool (= _51 _623)) +(define-fun _625 () Bool (and _618 _624)) +(define-fun _628 () (_ BitVec 64) (_ bv59 64)) +(define-fun _629 () (_ BitVec 64) (bvadd _628 _332)) +(define-fun _630 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _629 _37)) +(define-fun _631 () Bool (= _51 _630)) +(define-fun _632 () Bool (and _625 _631)) +(define-fun _635 () (_ BitVec 64) (bvadd _236 _332)) +(define-fun _636 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _635 _37)) +(define-fun _637 () Bool (= _51 _636)) +(define-fun _638 () Bool (and _632 _637)) +(define-fun _640 () (_ BitVec 64) (bvadd _242 _332)) +(define-fun _643 () (Array (_ BitVec 64) (_ BitVec 32)) (store _19 _640 _15)) +(define-fun _644 () Bool (= _19 _643)) +(define-fun _645 () Bool (and _638 _644)) +(define-fun _648 () (_ BitVec 64) (bvadd _248 _332)) +(define-fun _649 () (Array (_ BitVec 64) (_ BitVec 32)) (store _19 _648 _15)) +(define-fun _650 () Bool (= _19 _649)) +(define-fun _651 () Bool (and _645 _650)) +(define-fun _654 () (_ BitVec 64) (bvadd _254 _332)) +(define-fun _655 () (Array (_ BitVec 64) (_ BitVec 32)) (store _19 _654 _15)) +(define-fun _656 () Bool (= _19 _655)) +(define-fun _657 () Bool (and _651 _656)) +(define-fun _659 () (_ BitVec 64) (bvadd _278 _332)) +(define-fun _660 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _659 _37)) +(define-fun _661 () Bool (= _40 _660)) +(define-fun _662 () Bool (and _657 _661)) +(define-fun _664 () (_ BitVec 64) (bvadd _284 _332)) +(define-fun _665 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _664 _37)) +(define-fun _666 () Bool (= _51 _665)) +(define-fun _667 () Bool (and _662 _666)) +(define-fun _669 () (_ BitVec 64) (bvadd _290 _332)) +(define-fun _670 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _669 _37)) +(define-fun _671 () Bool (= _51 _670)) +(define-fun _672 () Bool (and _667 _671)) +(define-fun _673 () Bool (and _333 _336)) +(define-fun _674 () Bool (and _672 _673)) +(define-fun _675 () Bool (and _331 _674)) +(define-fun _676 () (_ BitVec 64) coex_sta@2) +(define-fun _677 () Bool (= _332 _676)) +(define-fun _678 () Bool (and _675 _677)) +(define-fun _679 () (_ BitVec 64) __ADDRESS_OF_glbt_info_src_8723b_2ant@) +(define-fun _680 () Bool (bvslt _335 _679)) +(define-fun _682 () (_ BitVec 64) (bvadd _158 _679)) +(define-fun _683 () Bool (bvslt _8 _682)) +(define-fun _684 () Int 0) +(define-fun _685 () (_ BitVec 64) (__string__ _684)) +(define-fun _688 () (Array (_ BitVec 64) (_ BitVec 64)) |*(char)*@1|) +(define-fun _689 () (Array (_ BitVec 64) (_ BitVec 64)) (store _688 _679 _685)) +(define-fun _690 () Bool (= _688 _689)) +(define-fun _691 () Int 1) +(define-fun _692 () (_ BitVec 64) (__string__ _691)) +(define-fun _694 () (_ BitVec 64) (bvadd _9 _679)) +(define-fun _695 () (Array (_ BitVec 64) (_ BitVec 64)) (store _688 _694 _692)) +(define-fun _696 () Bool (= _688 _695)) +(define-fun _697 () Bool (and _690 _696)) +(define-fun _698 () Int 2) +(define-fun _699 () (_ BitVec 64) (__string__ _698)) +(define-fun _701 () (_ BitVec 64) (bvadd _134 _679)) +(define-fun _702 () (Array (_ BitVec 64) (_ BitVec 64)) (store _688 _701 _699)) +(define-fun _703 () Bool (= _688 _702)) +(define-fun _704 () Bool (and _697 _703)) +(define-fun _705 () Bool (and _680 _683)) +(define-fun _706 () Bool (and _704 _705)) +(define-fun _707 () Bool (and _678 _706)) +(define-fun _708 () (_ BitVec 32) (_ bv20130731 32)) +(define-fun _709 () (_ BitVec 32) glcoex_ver_date_8723b_2ant@2) +(define-fun _710 () Bool (= _709 _708)) +(define-fun _711 () Bool (and _707 _710)) +(define-fun _712 () (_ BitVec 32) (_ bv59 32)) +(define-fun _713 () (_ BitVec 32) glcoex_ver_8723b_2ant@2) +(define-fun _714 () Bool (= _713 _712)) +(define-fun _715 () Bool (and _711 _714)) +(define-fun _716 () (_ BitVec 64) (_ bv280 64)) +(define-fun _717 () (_ BitVec 64) __ADDRESS_OF_gl_bt_coexist@) +(define-fun _718 () Bool (bvslt _682 _717)) +(define-fun _720 () (_ BitVec 64) (bvadd _716 _717)) +(define-fun _721 () Bool (bvslt _8 _720)) +(define-fun _724 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _717 _37)) +(define-fun _725 () Bool (= _40 _724)) +(define-fun _727 () (_ BitVec 64) (bvadd _9 _717)) +(define-fun _728 () (Array (_ BitVec 64) (_ BitVec 64)) |*(void)*@1|) +(define-fun _729 () (Array (_ BitVec 64) (_ BitVec 64)) (store _728 _727 _8)) +(define-fun _730 () Bool (= _728 _729)) +(define-fun _731 () Bool (and _725 _730)) +(define-fun _736 () (_ BitVec 64) (bvadd _140 _717)) +(define-fun _737 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _736 _37)) +(define-fun _738 () Bool (= _51 _737)) +(define-fun _739 () Bool (and _731 _738)) +(define-fun _742 () (_ BitVec 64) (_ bv18 64)) +(define-fun _743 () (_ BitVec 64) (bvadd _742 _717)) +(define-fun _744 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _743 _37)) +(define-fun _745 () Bool (= _51 _744)) +(define-fun _746 () Bool (and _739 _745)) +(define-fun _749 () (_ BitVec 64) (_ bv19 64)) +(define-fun _750 () (_ BitVec 64) (bvadd _749 _717)) +(define-fun _751 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _750 _37)) +(define-fun _752 () Bool (= _51 _751)) +(define-fun _753 () Bool (and _746 _752)) +(define-fun _756 () (_ BitVec 64) (bvadd _146 _717)) +(define-fun _757 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _756 _37)) +(define-fun _758 () Bool (= _40 _757)) +(define-fun _759 () Bool (and _753 _758)) +(define-fun _761 () (_ BitVec 64) (bvadd _158 _717)) +(define-fun _764 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _761 _37)) +(define-fun _765 () Bool (= _40 _764)) +(define-fun _766 () Bool (and _759 _765)) +(define-fun _769 () (_ BitVec 64) (bvadd _490 _717)) +(define-fun _770 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _769 _37)) +(define-fun _771 () Bool (= _40 _770)) +(define-fun _772 () Bool (and _766 _771)) +(define-fun _774 () (_ BitVec 64) (bvadd _224 _717)) +(define-fun _777 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _774 _37)) +(define-fun _778 () Bool (= _40 _777)) +(define-fun _779 () Bool (and _772 _778)) +(define-fun _782 () (_ BitVec 64) (bvadd _594 _717)) +(define-fun _783 () (Array (_ BitVec 64) (_ BitVec 16)) (store _322 _782 _318)) +(define-fun _784 () Bool (= _322 _783)) +(define-fun _785 () Bool (and _779 _784)) +(define-fun _787 () (_ BitVec 64) (bvadd _254 _717)) +(define-fun _790 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _787 _37)) +(define-fun _791 () Bool (= _40 _790)) +(define-fun _792 () Bool (and _785 _791)) +(define-fun _795 () (_ BitVec 64) (bvadd _260 _717)) +(define-fun _796 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _795 _37)) +(define-fun _797 () Bool (= _40 _796)) +(define-fun _798 () Bool (and _792 _797)) +(define-fun _801 () (_ BitVec 64) (bvadd _272 _717)) +(define-fun _802 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _801 _37)) +(define-fun _803 () Bool (= _40 _802)) +(define-fun _804 () Bool (and _798 _803)) +(define-fun _807 () (_ BitVec 64) (bvadd _284 _717)) +(define-fun _808 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _807 _37)) +(define-fun _809 () Bool (= _40 _808)) +(define-fun _810 () Bool (and _804 _809)) +(define-fun _813 () (_ BitVec 64) (bvadd _300 _717)) +(define-fun _814 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _813 _37)) +(define-fun _815 () Bool (= _40 _814)) +(define-fun _816 () Bool (and _810 _815)) +(define-fun _818 () (_ BitVec 64) (bvadd _312 _717)) +(define-fun _819 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _818 _37)) +(define-fun _820 () Bool (= _40 _819)) +(define-fun _821 () Bool (and _816 _820)) +(define-fun _822 () (_ BitVec 64) (_ bv83 64)) +(define-fun _824 () (_ BitVec 64) (bvadd _822 _717)) +(define-fun _825 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _824 _37)) +(define-fun _826 () Bool (= _40 _825)) +(define-fun _827 () Bool (and _821 _826)) +(define-fun _828 () (_ BitVec 64) (_ bv88 64)) +(define-fun _830 () (_ BitVec 64) (bvadd _828 _717)) +(define-fun _831 () (Array (_ BitVec 64) (_ BitVec 64)) (store _688 _830 _8)) +(define-fun _832 () Bool (= _688 _831)) +(define-fun _833 () Bool (and _827 _832)) +(define-fun _834 () (_ BitVec 64) (_ bv148 64)) +(define-fun _836 () (_ BitVec 64) (bvadd _834 _717)) +(define-fun _839 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _836 _37)) +(define-fun _840 () Bool (= _51 _839)) +(define-fun _841 () Bool (and _833 _840)) +(define-fun _844 () (_ BitVec 64) (_ bv149 64)) +(define-fun _845 () (_ BitVec 64) (bvadd _844 _717)) +(define-fun _846 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _845 _37)) +(define-fun _847 () Bool (= _51 _846)) +(define-fun _848 () Bool (and _841 _847)) +(define-fun _851 () (_ BitVec 64) (_ bv150 64)) +(define-fun _852 () (_ BitVec 64) (bvadd _851 _717)) +(define-fun _853 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _852 _37)) +(define-fun _854 () Bool (= _51 _853)) +(define-fun _855 () Bool (and _848 _854)) +(define-fun _858 () (_ BitVec 64) (_ bv151 64)) +(define-fun _859 () (_ BitVec 64) (bvadd _858 _717)) +(define-fun _860 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _859 _37)) +(define-fun _861 () Bool (= _51 _860)) +(define-fun _862 () Bool (and _855 _861)) +(define-fun _865 () (_ BitVec 64) (_ bv152 64)) +(define-fun _866 () (_ BitVec 64) (bvadd _865 _717)) +(define-fun _867 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _866 _37)) +(define-fun _868 () Bool (= _51 _867)) +(define-fun _869 () Bool (and _862 _868)) +(define-fun _872 () (_ BitVec 64) (_ bv153 64)) +(define-fun _873 () (_ BitVec 64) (bvadd _872 _717)) +(define-fun _874 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _873 _37)) +(define-fun _875 () Bool (= _51 _874)) +(define-fun _876 () Bool (and _869 _875)) +(define-fun _879 () (_ BitVec 64) (_ bv154 64)) +(define-fun _880 () (_ BitVec 64) (bvadd _879 _717)) +(define-fun _881 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _880 _37)) +(define-fun _882 () Bool (= _51 _881)) +(define-fun _883 () Bool (and _876 _882)) +(define-fun _886 () (_ BitVec 64) (_ bv155 64)) +(define-fun _887 () (_ BitVec 64) (bvadd _886 _717)) +(define-fun _888 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _887 _37)) +(define-fun _889 () Bool (= _51 _888)) +(define-fun _890 () Bool (and _883 _889)) +(define-fun _893 () (_ BitVec 64) (_ bv156 64)) +(define-fun _894 () (_ BitVec 64) (bvadd _893 _717)) +(define-fun _895 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _894 _37)) +(define-fun _896 () Bool (= _51 _895)) +(define-fun _897 () Bool (and _890 _896)) +(define-fun _900 () (_ BitVec 64) (_ bv157 64)) +(define-fun _901 () (_ BitVec 64) (bvadd _900 _717)) +(define-fun _902 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _901 _37)) +(define-fun _903 () Bool (= _51 _902)) +(define-fun _904 () Bool (and _897 _903)) +(define-fun _905 () (_ BitVec 64) (_ bv160 64)) +(define-fun _907 () (_ BitVec 64) (bvadd _905 _717)) +(define-fun _908 () (Array (_ BitVec 64) (_ BitVec 64)) |*(Return_type:_[char],_Parameters:_2,_Parameter_1_type:_[(void)*],_Parameter_2_type:_[int],_VarArgs:_false)*@1|) +(define-fun _909 () (Array (_ BitVec 64) (_ BitVec 64)) (store _908 _907 _8)) +(define-fun _910 () Bool (= _908 _909)) +(define-fun _911 () Bool (and _904 _910)) +(define-fun _912 () (_ BitVec 64) (_ bv168 64)) +(define-fun _914 () (_ BitVec 64) (bvadd _912 _717)) +(define-fun _915 () (Array (_ BitVec 64) (_ BitVec 64)) |*(Return_type:_[void],_Parameters:_3,_Parameter_1_type:_[(void)*],_Parameter_2_type:_[int],_Parameter_3_type:_[char],_VarArgs:_false)*@1|) +(define-fun _916 () (Array (_ BitVec 64) (_ BitVec 64)) (store _915 _914 _8)) +(define-fun _917 () Bool (= _915 _916)) +(define-fun _918 () Bool (and _911 _917)) +(define-fun _919 () (_ BitVec 64) (_ bv176 64)) +(define-fun _921 () (_ BitVec 64) (bvadd _919 _717)) +(define-fun _922 () (Array (_ BitVec 64) (_ BitVec 64)) |*(Return_type:_[void],_Parameters:_4,_Parameter_1_type:_[(void)*],_Parameter_2_type:_[int],_Parameter_3_type:_[int],_Parameter_4_type:_[char],_VarArgs:_false)*@1|) +(define-fun _923 () (Array (_ BitVec 64) (_ BitVec 64)) (store _922 _921 _8)) +(define-fun _924 () Bool (= _922 _923)) +(define-fun _925 () Bool (and _918 _924)) +(define-fun _926 () (_ BitVec 64) (_ bv184 64)) +(define-fun _928 () (_ BitVec 64) (bvadd _926 _717)) +(define-fun _929 () (Array (_ BitVec 64) (_ BitVec 64)) |*(Return_type:_[short_int],_Parameters:_2,_Parameter_1_type:_[(void)*],_Parameter_2_type:_[int],_VarArgs:_false)*@1|) +(define-fun _930 () (Array (_ BitVec 64) (_ BitVec 64)) (store _929 _928 _8)) +(define-fun _931 () Bool (= _929 _930)) +(define-fun _932 () Bool (and _925 _931)) +(define-fun _933 () (_ BitVec 64) (_ bv192 64)) +(define-fun _935 () (_ BitVec 64) (bvadd _933 _717)) +(define-fun _936 () (Array (_ BitVec 64) (_ BitVec 64)) |*(Return_type:_[void],_Parameters:_3,_Parameter_1_type:_[(void)*],_Parameter_2_type:_[int],_Parameter_3_type:_[short_int],_VarArgs:_false)*@1|) +(define-fun _937 () (Array (_ BitVec 64) (_ BitVec 64)) (store _936 _935 _8)) +(define-fun _938 () Bool (= _936 _937)) +(define-fun _939 () Bool (and _932 _938)) +(define-fun _940 () (_ BitVec 64) (_ bv200 64)) +(define-fun _942 () (_ BitVec 64) (bvadd _940 _717)) +(define-fun _943 () (Array (_ BitVec 64) (_ BitVec 64)) |*(Return_type:_[int],_Parameters:_2,_Parameter_1_type:_[(void)*],_Parameter_2_type:_[int],_VarArgs:_false)*@1|) +(define-fun _944 () (Array (_ BitVec 64) (_ BitVec 64)) (store _943 _942 _8)) +(define-fun _945 () Bool (= _943 _944)) +(define-fun _946 () Bool (and _939 _945)) +(define-fun _947 () (_ BitVec 64) (_ bv208 64)) +(define-fun _949 () (_ BitVec 64) (bvadd _947 _717)) +(define-fun _950 () (Array (_ BitVec 64) (_ BitVec 64)) |*(Return_type:_[void],_Parameters:_3,_Parameter_1_type:_[(void)*],_Parameter_2_type:_[int],_Parameter_3_type:_[int],_VarArgs:_false)*@1|) +(define-fun _951 () (Array (_ BitVec 64) (_ BitVec 64)) (store _950 _949 _8)) +(define-fun _952 () Bool (= _950 _951)) +(define-fun _953 () Bool (and _946 _952)) +(define-fun _954 () (_ BitVec 64) (_ bv232 64)) +(define-fun _956 () (_ BitVec 64) (bvadd _954 _717)) +(define-fun _957 () (Array (_ BitVec 64) (_ BitVec 64)) |*(Return_type:_[void],_Parameters:_5,_Parameter_1_type:_[(void)*],_Parameter_2_type:_[char],_Parameter_3_type:_[int],_Parameter_4_type:_[int],_Parameter_5_type:_[int],_VarArgs:_false)*@1|) +(define-fun _958 () (Array (_ BitVec 64) (_ BitVec 64)) (store _957 _956 _8)) +(define-fun _959 () Bool (= _957 _958)) +(define-fun _960 () Bool (and _953 _959)) +(define-fun _961 () (_ BitVec 64) (_ bv240 64)) +(define-fun _963 () (_ BitVec 64) (bvadd _961 _717)) +(define-fun _964 () (Array (_ BitVec 64) (_ BitVec 64)) |*(Return_type:_[int],_Parameters:_4,_Parameter_1_type:_[(void)*],_Parameter_2_type:_[char],_Parameter_3_type:_[int],_Parameter_4_type:_[int],_VarArgs:_false)*@1|) +(define-fun _965 () (Array (_ BitVec 64) (_ BitVec 64)) (store _964 _963 _8)) +(define-fun _966 () Bool (= _964 _965)) +(define-fun _967 () Bool (and _960 _966)) +(define-fun _968 () (_ BitVec 64) (_ bv248 64)) +(define-fun _970 () (_ BitVec 64) (bvadd _968 _717)) +(define-fun _971 () (Array (_ BitVec 64) (_ BitVec 64)) |*(Return_type:_[void],_Parameters:_4,_Parameter_1_type:_[(void)*],_Parameter_2_type:_[char],_Parameter_3_type:_[int],_Parameter_4_type:_[(char)*],_VarArgs:_false)*@1|) +(define-fun _972 () (Array (_ BitVec 64) (_ BitVec 64)) (store _971 _970 _8)) +(define-fun _973 () Bool (= _971 _972)) +(define-fun _974 () Bool (and _967 _973)) +(define-fun _975 () (_ BitVec 64) (_ bv256 64)) +(define-fun _977 () (_ BitVec 64) (bvadd _975 _717)) +(define-fun _978 () (Array (_ BitVec 64) (_ BitVec 64)) |*(Return_type:_[void],_Parameters:_2,_Parameter_1_type:_[(void)*],_Parameter_2_type:_[char],_VarArgs:_false)*@1|) +(define-fun _979 () (Array (_ BitVec 64) (_ BitVec 64)) (store _978 _977 _8)) +(define-fun _980 () Bool (= _978 _979)) +(define-fun _981 () Bool (and _974 _980)) +(define-fun _982 () (_ BitVec 64) (_ bv264 64)) +(define-fun _984 () (_ BitVec 64) (bvadd _982 _717)) +(define-fun _985 () (Array (_ BitVec 64) (_ BitVec 64)) |*(Return_type:_[_Bool],_Parameters:_3,_Parameter_1_type:_[(void)*],_Parameter_2_type:_[char],_Parameter_3_type:_[(void)*],_VarArgs:_false)*@1|) +(define-fun _986 () (Array (_ BitVec 64) (_ BitVec 64)) (store _985 _984 _8)) +(define-fun _987 () Bool (= _985 _986)) +(define-fun _988 () Bool (and _981 _987)) +(define-fun _989 () (_ BitVec 64) (_ bv272 64)) +(define-fun _991 () (_ BitVec 64) (bvadd _989 _717)) +(define-fun _992 () (Array (_ BitVec 64) (_ BitVec 64)) (store _985 _991 _8)) +(define-fun _993 () Bool (= _985 _992)) +(define-fun _994 () Bool (and _988 _993)) +(define-fun _995 () Bool (and _718 _721)) +(define-fun _996 () Bool (and _994 _995)) +(define-fun _997 () Bool (and _715 _996)) +(define-fun _998 () (_ BitVec 64) (_ bv100 64)) +(define-fun _999 () (_ BitVec 64) __ADDRESS_OF_btc_dbg_buf@) +(define-fun _1000 () Bool (bvslt _720 _999)) +(define-fun _1002 () (_ BitVec 64) (bvadd _998 _999)) +(define-fun _1003 () Bool (bvslt _8 _1002)) +(define-fun _1006 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _999 _37)) +(define-fun _1007 () Bool (= _51 _1006)) +(define-fun _1009 () (_ BitVec 64) (bvadd _23 _999)) +(define-fun _1010 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1009 _37)) +(define-fun _1011 () Bool (= _51 _1010)) +(define-fun _1012 () Bool (and _1007 _1011)) +(define-fun _1014 () (_ BitVec 64) (bvadd _48 _999)) +(define-fun _1015 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1014 _37)) +(define-fun _1016 () Bool (= _51 _1015)) +(define-fun _1017 () Bool (and _1012 _1016)) +(define-fun _1019 () (_ BitVec 64) (bvadd _55 _999)) +(define-fun _1020 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1019 _37)) +(define-fun _1021 () Bool (= _51 _1020)) +(define-fun _1022 () Bool (and _1017 _1021)) +(define-fun _1024 () (_ BitVec 64) (bvadd _16 _999)) +(define-fun _1025 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1024 _37)) +(define-fun _1026 () Bool (= _51 _1025)) +(define-fun _1027 () Bool (and _1022 _1026)) +(define-fun _1029 () (_ BitVec 64) (bvadd _66 _999)) +(define-fun _1030 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1029 _37)) +(define-fun _1031 () Bool (= _51 _1030)) +(define-fun _1032 () Bool (and _1027 _1031)) +(define-fun _1034 () (_ BitVec 64) (bvadd _72 _999)) +(define-fun _1035 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1034 _37)) +(define-fun _1036 () Bool (= _51 _1035)) +(define-fun _1037 () Bool (and _1032 _1036)) +(define-fun _1039 () (_ BitVec 64) (bvadd _78 _999)) +(define-fun _1040 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1039 _37)) +(define-fun _1041 () Bool (= _51 _1040)) +(define-fun _1042 () Bool (and _1037 _1041)) +(define-fun _1044 () (_ BitVec 64) (bvadd _9 _999)) +(define-fun _1045 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1044 _37)) +(define-fun _1046 () Bool (= _51 _1045)) +(define-fun _1047 () Bool (and _1042 _1046)) +(define-fun _1049 () (_ BitVec 64) (bvadd _93 _999)) +(define-fun _1050 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1049 _37)) +(define-fun _1051 () Bool (= _51 _1050)) +(define-fun _1052 () Bool (and _1047 _1051)) +(define-fun _1055 () (_ BitVec 64) (bvadd _101 _999)) +(define-fun _1056 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1055 _37)) +(define-fun _1057 () Bool (= _51 _1056)) +(define-fun _1058 () Bool (and _1052 _1057)) +(define-fun _1061 () (_ BitVec 64) (bvadd _109 _999)) +(define-fun _1062 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1061 _37)) +(define-fun _1063 () Bool (= _51 _1062)) +(define-fun _1064 () Bool (and _1058 _1063)) +(define-fun _1067 () (_ BitVec 64) (bvadd _117 _999)) +(define-fun _1068 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1067 _37)) +(define-fun _1069 () Bool (= _51 _1068)) +(define-fun _1070 () Bool (and _1064 _1069)) +(define-fun _1073 () (_ BitVec 64) (bvadd _122 _999)) +(define-fun _1074 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1073 _37)) +(define-fun _1075 () Bool (= _51 _1074)) +(define-fun _1076 () Bool (and _1070 _1075)) +(define-fun _1078 () (_ BitVec 64) (_ bv14 64)) +(define-fun _1080 () (_ BitVec 64) (bvadd _1078 _999)) +(define-fun _1081 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1080 _37)) +(define-fun _1082 () Bool (= _51 _1081)) +(define-fun _1083 () Bool (and _1076 _1082)) +(define-fun _1086 () (_ BitVec 64) (bvadd _128 _999)) +(define-fun _1087 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1086 _37)) +(define-fun _1088 () Bool (= _51 _1087)) +(define-fun _1089 () Bool (and _1083 _1088)) +(define-fun _1092 () (_ BitVec 64) (bvadd _134 _999)) +(define-fun _1093 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1092 _37)) +(define-fun _1094 () Bool (= _51 _1093)) +(define-fun _1095 () Bool (and _1089 _1094)) +(define-fun _1098 () (_ BitVec 64) (bvadd _140 _999)) +(define-fun _1099 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1098 _37)) +(define-fun _1100 () Bool (= _51 _1099)) +(define-fun _1101 () Bool (and _1095 _1100)) +(define-fun _1104 () (_ BitVec 64) (bvadd _742 _999)) +(define-fun _1105 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1104 _37)) +(define-fun _1106 () Bool (= _51 _1105)) +(define-fun _1107 () Bool (and _1101 _1106)) +(define-fun _1110 () (_ BitVec 64) (bvadd _749 _999)) +(define-fun _1111 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1110 _37)) +(define-fun _1112 () Bool (= _51 _1111)) +(define-fun _1113 () Bool (and _1107 _1112)) +(define-fun _1116 () (_ BitVec 64) (bvadd _146 _999)) +(define-fun _1117 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1116 _37)) +(define-fun _1118 () Bool (= _51 _1117)) +(define-fun _1119 () Bool (and _1113 _1118)) +(define-fun _1122 () (_ BitVec 64) (bvadd _152 _999)) +(define-fun _1123 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1122 _37)) +(define-fun _1124 () Bool (= _51 _1123)) +(define-fun _1125 () Bool (and _1119 _1124)) +(define-fun _1127 () (_ BitVec 64) (_ bv22 64)) +(define-fun _1129 () (_ BitVec 64) (bvadd _1127 _999)) +(define-fun _1130 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1129 _37)) +(define-fun _1131 () Bool (= _51 _1130)) +(define-fun _1132 () Bool (and _1125 _1131)) +(define-fun _1134 () (_ BitVec 64) (_ bv23 64)) +(define-fun _1136 () (_ BitVec 64) (bvadd _1134 _999)) +(define-fun _1137 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1136 _37)) +(define-fun _1138 () Bool (= _51 _1137)) +(define-fun _1139 () Bool (and _1132 _1138)) +(define-fun _1142 () (_ BitVec 64) (bvadd _158 _999)) +(define-fun _1143 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1142 _37)) +(define-fun _1144 () Bool (= _51 _1143)) +(define-fun _1145 () Bool (and _1139 _1144)) +(define-fun _1148 () (_ BitVec 64) (bvadd _396 _999)) +(define-fun _1149 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1148 _37)) +(define-fun _1150 () Bool (= _51 _1149)) +(define-fun _1151 () Bool (and _1145 _1150)) +(define-fun _1154 () (_ BitVec 64) (bvadd _402 _999)) +(define-fun _1155 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1154 _37)) +(define-fun _1156 () Bool (= _51 _1155)) +(define-fun _1157 () Bool (and _1151 _1156)) +(define-fun _1160 () (_ BitVec 64) (bvadd _412 _999)) +(define-fun _1161 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1160 _37)) +(define-fun _1162 () Bool (= _51 _1161)) +(define-fun _1163 () Bool (and _1157 _1162)) +(define-fun _1166 () (_ BitVec 64) (bvadd _164 _999)) +(define-fun _1167 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1166 _37)) +(define-fun _1168 () Bool (= _51 _1167)) +(define-fun _1169 () Bool (and _1163 _1168)) +(define-fun _1172 () (_ BitVec 64) (bvadd _170 _999)) +(define-fun _1173 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1172 _37)) +(define-fun _1174 () Bool (= _51 _1173)) +(define-fun _1175 () Bool (and _1169 _1174)) +(define-fun _1178 () (_ BitVec 64) (bvadd _176 _999)) +(define-fun _1179 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1178 _37)) +(define-fun _1180 () Bool (= _51 _1179)) +(define-fun _1181 () Bool (and _1175 _1180)) +(define-fun _1184 () (_ BitVec 64) (bvadd _429 _999)) +(define-fun _1185 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1184 _37)) +(define-fun _1186 () Bool (= _51 _1185)) +(define-fun _1187 () Bool (and _1181 _1186)) +(define-fun _1190 () (_ BitVec 64) (bvadd _182 _999)) +(define-fun _1191 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1190 _37)) +(define-fun _1192 () Bool (= _51 _1191)) +(define-fun _1193 () Bool (and _1187 _1192)) +(define-fun _1196 () (_ BitVec 64) (bvadd _445 _999)) +(define-fun _1197 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1196 _37)) +(define-fun _1198 () Bool (= _51 _1197)) +(define-fun _1199 () Bool (and _1193 _1198)) +(define-fun _1202 () (_ BitVec 64) (bvadd _452 _999)) +(define-fun _1203 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1202 _37)) +(define-fun _1204 () Bool (= _51 _1203)) +(define-fun _1205 () Bool (and _1199 _1204)) +(define-fun _1208 () (_ BitVec 64) (bvadd _459 _999)) +(define-fun _1209 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1208 _37)) +(define-fun _1210 () Bool (= _51 _1209)) +(define-fun _1211 () Bool (and _1205 _1210)) +(define-fun _1214 () (_ BitVec 64) (bvadd _188 _999)) +(define-fun _1215 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1214 _37)) +(define-fun _1216 () Bool (= _51 _1215)) +(define-fun _1217 () Bool (and _1211 _1216)) +(define-fun _1220 () (_ BitVec 64) (bvadd _474 _999)) +(define-fun _1221 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1220 _37)) +(define-fun _1222 () Bool (= _51 _1221)) +(define-fun _1223 () Bool (and _1217 _1222)) +(define-fun _1226 () (_ BitVec 64) (bvadd _482 _999)) +(define-fun _1227 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1226 _37)) +(define-fun _1228 () Bool (= _51 _1227)) +(define-fun _1229 () Bool (and _1223 _1228)) +(define-fun _1232 () (_ BitVec 64) (bvadd _490 _999)) +(define-fun _1233 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1232 _37)) +(define-fun _1234 () Bool (= _51 _1233)) +(define-fun _1235 () Bool (and _1229 _1234)) +(define-fun _1238 () (_ BitVec 64) (bvadd _194 _999)) +(define-fun _1239 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1238 _37)) +(define-fun _1240 () Bool (= _51 _1239)) +(define-fun _1241 () Bool (and _1235 _1240)) +(define-fun _1244 () (_ BitVec 64) (bvadd _504 _999)) +(define-fun _1245 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1244 _37)) +(define-fun _1246 () Bool (= _51 _1245)) +(define-fun _1247 () Bool (and _1241 _1246)) +(define-fun _1250 () (_ BitVec 64) (bvadd _513 _999)) +(define-fun _1251 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1250 _37)) +(define-fun _1252 () Bool (= _51 _1251)) +(define-fun _1253 () Bool (and _1247 _1252)) +(define-fun _1256 () (_ BitVec 64) (bvadd _520 _999)) +(define-fun _1257 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1256 _37)) +(define-fun _1258 () Bool (= _51 _1257)) +(define-fun _1259 () Bool (and _1253 _1258)) +(define-fun _1262 () (_ BitVec 64) (bvadd _527 _999)) +(define-fun _1263 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1262 _37)) +(define-fun _1264 () Bool (= _51 _1263)) +(define-fun _1265 () Bool (and _1259 _1264)) +(define-fun _1268 () (_ BitVec 64) (bvadd _200 _999)) +(define-fun _1269 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1268 _37)) +(define-fun _1270 () Bool (= _51 _1269)) +(define-fun _1271 () Bool (and _1265 _1270)) +(define-fun _1274 () (_ BitVec 64) (bvadd _206 _999)) +(define-fun _1275 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1274 _37)) +(define-fun _1276 () Bool (= _51 _1275)) +(define-fun _1277 () Bool (and _1271 _1276)) +(define-fun _1280 () (_ BitVec 64) (bvadd _212 _999)) +(define-fun _1281 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1280 _37)) +(define-fun _1282 () Bool (= _51 _1281)) +(define-fun _1283 () Bool (and _1277 _1282)) +(define-fun _1286 () (_ BitVec 64) (bvadd _218 _999)) +(define-fun _1287 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1286 _37)) +(define-fun _1288 () Bool (= _51 _1287)) +(define-fun _1289 () Bool (and _1283 _1288)) +(define-fun _1292 () (_ BitVec 64) (bvadd _558 _999)) +(define-fun _1293 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1292 _37)) +(define-fun _1294 () Bool (= _51 _1293)) +(define-fun _1295 () Bool (and _1289 _1294)) +(define-fun _1298 () (_ BitVec 64) (bvadd _565 _999)) +(define-fun _1299 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1298 _37)) +(define-fun _1300 () Bool (= _51 _1299)) +(define-fun _1301 () Bool (and _1295 _1300)) +(define-fun _1304 () (_ BitVec 64) (bvadd _572 _999)) +(define-fun _1305 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1304 _37)) +(define-fun _1306 () Bool (= _51 _1305)) +(define-fun _1307 () Bool (and _1301 _1306)) +(define-fun _1310 () (_ BitVec 64) (bvadd _224 _999)) +(define-fun _1311 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1310 _37)) +(define-fun _1312 () Bool (= _51 _1311)) +(define-fun _1313 () Bool (and _1307 _1312)) +(define-fun _1316 () (_ BitVec 64) (bvadd _587 _999)) +(define-fun _1317 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1316 _37)) +(define-fun _1318 () Bool (= _51 _1317)) +(define-fun _1319 () Bool (and _1313 _1318)) +(define-fun _1322 () (_ BitVec 64) (bvadd _594 _999)) +(define-fun _1323 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1322 _37)) +(define-fun _1324 () Bool (= _51 _1323)) +(define-fun _1325 () Bool (and _1319 _1324)) +(define-fun _1328 () (_ BitVec 64) (bvadd _601 _999)) +(define-fun _1329 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1328 _37)) +(define-fun _1330 () Bool (= _51 _1329)) +(define-fun _1331 () Bool (and _1325 _1330)) +(define-fun _1334 () (_ BitVec 64) (bvadd _230 _999)) +(define-fun _1335 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1334 _37)) +(define-fun _1336 () Bool (= _51 _1335)) +(define-fun _1337 () Bool (and _1331 _1336)) +(define-fun _1340 () (_ BitVec 64) (bvadd _614 _999)) +(define-fun _1341 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1340 _37)) +(define-fun _1342 () Bool (= _51 _1341)) +(define-fun _1343 () Bool (and _1337 _1342)) +(define-fun _1346 () (_ BitVec 64) (bvadd _621 _999)) +(define-fun _1347 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1346 _37)) +(define-fun _1348 () Bool (= _51 _1347)) +(define-fun _1349 () Bool (and _1343 _1348)) +(define-fun _1351 () (_ BitVec 64) (bvadd _628 _999)) +(define-fun _1352 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1351 _37)) +(define-fun _1353 () Bool (= _51 _1352)) +(define-fun _1354 () Bool (and _1349 _1353)) +(define-fun _1357 () (_ BitVec 64) (bvadd _236 _999)) +(define-fun _1358 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1357 _37)) +(define-fun _1359 () Bool (= _51 _1358)) +(define-fun _1360 () Bool (and _1354 _1359)) +(define-fun _1362 () (_ BitVec 64) (_ bv61 64)) +(define-fun _1364 () (_ BitVec 64) (bvadd _1362 _999)) +(define-fun _1365 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1364 _37)) +(define-fun _1366 () Bool (= _51 _1365)) +(define-fun _1367 () Bool (and _1360 _1366)) +(define-fun _1369 () (_ BitVec 64) (_ bv62 64)) +(define-fun _1371 () (_ BitVec 64) (bvadd _1369 _999)) +(define-fun _1372 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1371 _37)) +(define-fun _1373 () Bool (= _51 _1372)) +(define-fun _1374 () Bool (and _1367 _1373)) +(define-fun _1376 () (_ BitVec 64) (_ bv63 64)) +(define-fun _1378 () (_ BitVec 64) (bvadd _1376 _999)) +(define-fun _1379 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1378 _37)) +(define-fun _1380 () Bool (= _51 _1379)) +(define-fun _1381 () Bool (and _1374 _1380)) +(define-fun _1384 () (_ BitVec 64) (bvadd _242 _999)) +(define-fun _1385 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1384 _37)) +(define-fun _1386 () Bool (= _51 _1385)) +(define-fun _1387 () Bool (and _1381 _1386)) +(define-fun _1389 () (_ BitVec 64) (_ bv65 64)) +(define-fun _1391 () (_ BitVec 64) (bvadd _1389 _999)) +(define-fun _1392 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1391 _37)) +(define-fun _1393 () Bool (= _51 _1392)) +(define-fun _1394 () Bool (and _1387 _1393)) +(define-fun _1396 () (_ BitVec 64) (_ bv66 64)) +(define-fun _1398 () (_ BitVec 64) (bvadd _1396 _999)) +(define-fun _1399 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1398 _37)) +(define-fun _1400 () Bool (= _51 _1399)) +(define-fun _1401 () Bool (and _1394 _1400)) +(define-fun _1403 () (_ BitVec 64) (_ bv67 64)) +(define-fun _1405 () (_ BitVec 64) (bvadd _1403 _999)) +(define-fun _1406 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1405 _37)) +(define-fun _1407 () Bool (= _51 _1406)) +(define-fun _1408 () Bool (and _1401 _1407)) +(define-fun _1411 () (_ BitVec 64) (bvadd _248 _999)) +(define-fun _1412 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1411 _37)) +(define-fun _1413 () Bool (= _51 _1412)) +(define-fun _1414 () Bool (and _1408 _1413)) +(define-fun _1416 () (_ BitVec 64) (_ bv69 64)) +(define-fun _1418 () (_ BitVec 64) (bvadd _1416 _999)) +(define-fun _1419 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1418 _37)) +(define-fun _1420 () Bool (= _51 _1419)) +(define-fun _1421 () Bool (and _1414 _1420)) +(define-fun _1423 () (_ BitVec 64) (_ bv70 64)) +(define-fun _1425 () (_ BitVec 64) (bvadd _1423 _999)) +(define-fun _1426 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1425 _37)) +(define-fun _1427 () Bool (= _51 _1426)) +(define-fun _1428 () Bool (and _1421 _1427)) +(define-fun _1430 () (_ BitVec 64) (_ bv71 64)) +(define-fun _1432 () (_ BitVec 64) (bvadd _1430 _999)) +(define-fun _1433 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1432 _37)) +(define-fun _1434 () Bool (= _51 _1433)) +(define-fun _1435 () Bool (and _1428 _1434)) +(define-fun _1438 () (_ BitVec 64) (bvadd _254 _999)) +(define-fun _1439 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1438 _37)) +(define-fun _1440 () Bool (= _51 _1439)) +(define-fun _1441 () Bool (and _1435 _1440)) +(define-fun _1444 () (_ BitVec 64) (bvadd _260 _999)) +(define-fun _1445 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1444 _37)) +(define-fun _1446 () Bool (= _51 _1445)) +(define-fun _1447 () Bool (and _1441 _1446)) +(define-fun _1450 () (_ BitVec 64) (bvadd _266 _999)) +(define-fun _1451 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1450 _37)) +(define-fun _1452 () Bool (= _51 _1451)) +(define-fun _1453 () Bool (and _1447 _1452)) +(define-fun _1456 () (_ BitVec 64) (bvadd _272 _999)) +(define-fun _1457 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1456 _37)) +(define-fun _1458 () Bool (= _51 _1457)) +(define-fun _1459 () Bool (and _1453 _1458)) +(define-fun _1462 () (_ BitVec 64) (bvadd _278 _999)) +(define-fun _1463 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1462 _37)) +(define-fun _1464 () Bool (= _51 _1463)) +(define-fun _1465 () Bool (and _1459 _1464)) +(define-fun _1468 () (_ BitVec 64) (bvadd _284 _999)) +(define-fun _1469 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1468 _37)) +(define-fun _1470 () Bool (= _51 _1469)) +(define-fun _1471 () Bool (and _1465 _1470)) +(define-fun _1474 () (_ BitVec 64) (bvadd _290 _999)) +(define-fun _1475 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1474 _37)) +(define-fun _1476 () Bool (= _51 _1475)) +(define-fun _1477 () Bool (and _1471 _1476)) +(define-fun _1480 () (_ BitVec 64) (bvadd _300 _999)) +(define-fun _1481 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1480 _37)) +(define-fun _1482 () Bool (= _51 _1481)) +(define-fun _1483 () Bool (and _1477 _1482)) +(define-fun _1486 () (_ BitVec 64) (bvadd _307 _999)) +(define-fun _1487 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1486 _37)) +(define-fun _1488 () Bool (= _51 _1487)) +(define-fun _1489 () Bool (and _1483 _1488)) +(define-fun _1492 () (_ BitVec 64) (bvadd _312 _999)) +(define-fun _1493 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1492 _37)) +(define-fun _1494 () Bool (= _51 _1493)) +(define-fun _1495 () Bool (and _1489 _1494)) +(define-fun _1498 () (_ BitVec 64) (bvadd _319 _999)) +(define-fun _1499 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1498 _37)) +(define-fun _1500 () Bool (= _51 _1499)) +(define-fun _1501 () Bool (and _1495 _1500)) +(define-fun _1504 () (_ BitVec 64) (bvadd _822 _999)) +(define-fun _1505 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1504 _37)) +(define-fun _1506 () Bool (= _51 _1505)) +(define-fun _1507 () Bool (and _1501 _1506)) +(define-fun _1510 () (_ BitVec 64) (bvadd _31 _999)) +(define-fun _1511 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1510 _37)) +(define-fun _1512 () Bool (= _51 _1511)) +(define-fun _1513 () Bool (and _1507 _1512)) +(define-fun _1515 () (_ BitVec 64) (_ bv85 64)) +(define-fun _1517 () (_ BitVec 64) (bvadd _1515 _999)) +(define-fun _1518 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1517 _37)) +(define-fun _1519 () Bool (= _51 _1518)) +(define-fun _1520 () Bool (and _1513 _1519)) +(define-fun _1522 () (_ BitVec 64) (_ bv86 64)) +(define-fun _1524 () (_ BitVec 64) (bvadd _1522 _999)) +(define-fun _1525 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1524 _37)) +(define-fun _1526 () Bool (= _51 _1525)) +(define-fun _1527 () Bool (and _1520 _1526)) +(define-fun _1529 () (_ BitVec 64) (_ bv87 64)) +(define-fun _1531 () (_ BitVec 64) (bvadd _1529 _999)) +(define-fun _1532 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1531 _37)) +(define-fun _1533 () Bool (= _51 _1532)) +(define-fun _1534 () Bool (and _1527 _1533)) +(define-fun _1537 () (_ BitVec 64) (bvadd _828 _999)) +(define-fun _1538 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1537 _37)) +(define-fun _1539 () Bool (= _51 _1538)) +(define-fun _1540 () Bool (and _1534 _1539)) +(define-fun _1542 () (_ BitVec 64) (_ bv89 64)) +(define-fun _1544 () (_ BitVec 64) (bvadd _1542 _999)) +(define-fun _1545 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1544 _37)) +(define-fun _1546 () Bool (= _51 _1545)) +(define-fun _1547 () Bool (and _1540 _1546)) +(define-fun _1549 () (_ BitVec 64) (_ bv90 64)) +(define-fun _1551 () (_ BitVec 64) (bvadd _1549 _999)) +(define-fun _1552 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1551 _37)) +(define-fun _1553 () Bool (= _51 _1552)) +(define-fun _1554 () Bool (and _1547 _1553)) +(define-fun _1556 () (_ BitVec 64) (_ bv91 64)) +(define-fun _1558 () (_ BitVec 64) (bvadd _1556 _999)) +(define-fun _1559 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1558 _37)) +(define-fun _1560 () Bool (= _51 _1559)) +(define-fun _1561 () Bool (and _1554 _1560)) +(define-fun _1563 () (_ BitVec 64) (_ bv92 64)) +(define-fun _1565 () (_ BitVec 64) (bvadd _1563 _999)) +(define-fun _1566 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1565 _37)) +(define-fun _1567 () Bool (= _51 _1566)) +(define-fun _1568 () Bool (and _1561 _1567)) +(define-fun _1570 () (_ BitVec 64) (_ bv93 64)) +(define-fun _1572 () (_ BitVec 64) (bvadd _1570 _999)) +(define-fun _1573 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1572 _37)) +(define-fun _1574 () Bool (= _51 _1573)) +(define-fun _1575 () Bool (and _1568 _1574)) +(define-fun _1577 () (_ BitVec 64) (_ bv94 64)) +(define-fun _1579 () (_ BitVec 64) (bvadd _1577 _999)) +(define-fun _1580 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1579 _37)) +(define-fun _1581 () Bool (= _51 _1580)) +(define-fun _1582 () Bool (and _1575 _1581)) +(define-fun _1584 () (_ BitVec 64) (_ bv95 64)) +(define-fun _1586 () (_ BitVec 64) (bvadd _1584 _999)) +(define-fun _1587 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1586 _37)) +(define-fun _1588 () Bool (= _51 _1587)) +(define-fun _1589 () Bool (and _1582 _1588)) +(define-fun _1591 () (_ BitVec 64) (_ bv96 64)) +(define-fun _1593 () (_ BitVec 64) (bvadd _1591 _999)) +(define-fun _1594 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1593 _37)) +(define-fun _1595 () Bool (= _51 _1594)) +(define-fun _1596 () Bool (and _1589 _1595)) +(define-fun _1598 () (_ BitVec 64) (_ bv97 64)) +(define-fun _1600 () (_ BitVec 64) (bvadd _1598 _999)) +(define-fun _1601 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1600 _37)) +(define-fun _1602 () Bool (= _51 _1601)) +(define-fun _1603 () Bool (and _1596 _1602)) +(define-fun _1605 () (_ BitVec 64) (_ bv98 64)) +(define-fun _1607 () (_ BitVec 64) (bvadd _1605 _999)) +(define-fun _1608 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1607 _37)) +(define-fun _1609 () Bool (= _51 _1608)) +(define-fun _1610 () Bool (and _1603 _1609)) +(define-fun _1612 () (_ BitVec 64) (_ bv99 64)) +(define-fun _1614 () (_ BitVec 64) (bvadd _1612 _999)) +(define-fun _1615 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1614 _37)) +(define-fun _1616 () Bool (= _51 _1615)) +(define-fun _1617 () Bool (and _1610 _1616)) +(define-fun _1618 () Bool (and _1000 _1003)) +(define-fun _1619 () Bool (and _1617 _1618)) +(define-fun _1620 () Bool (and _997 _1619)) +(define-fun _1621 () (_ BitVec 32) ldv_state_variable_1@2) +(define-fun _1622 () Bool (= _1621 _15)) +(define-fun _1623 () Bool (and _1620 _1622)) +(define-fun _1624 () (_ BitVec 64) rtl_btc_operation_group0@2) +(define-fun _1625 () Bool (= _1624 _8)) +(define-fun _1626 () Bool (and _1623 _1625)) +(define-fun _1627 () (_ BitVec 32) ref_cnt@2) +(define-fun _1628 () Bool (= _1627 _15)) +(define-fun _1629 () Bool (and _1626 _1628)) +(define-fun _1630 () (_ BitVec 32) ldv_state_variable_0@2) +(define-fun _1631 () Bool (= _1630 _15)) +(define-fun _1632 () Bool (and _1629 _1631)) +(define-fun _1633 () (_ BitVec 64) (_ bv104 64)) +(define-fun _1634 () (_ BitVec 64) __ADDRESS_OF_rtl_btc_operation@) +(define-fun _1635 () Bool (bvslt _1002 _1634)) +(define-fun _1637 () (_ BitVec 64) (bvadd _1633 _1634)) +(define-fun _1638 () Bool (bvslt _8 _1637)) +(define-fun _1639 () Bool (and _1635 _1638)) +(define-fun _1640 () Bool (and _1632 _1639)) +(define-fun _1641 () (_ BitVec 64) __ADDRESS_OF___kstrtab_rtl_btc_get_ops_pointer@) +(define-fun _1642 () Bool (bvslt _1637 _1641)) +(define-fun _1644 () (_ BitVec 64) (bvadd _158 _1641)) +(define-fun _1645 () Bool (bvslt _8 _1644)) +(define-fun _1646 () Bool (and _1642 _1645)) +(define-fun _1647 () Bool (and _1640 _1646)) +(define-fun _1648 () (_ BitVec 32) ldv_retval_0@2) +(define-fun _1649 () Bool (= _1648 _15)) +(define-fun _1650 () Bool (and _1647 _1649)) +(define-fun _1651 () (_ BitVec 64) (_ bv120 64)) +(define-fun _1652 () (_ BitVec 64) __ADDRESS_OF_set_impl@) +(define-fun _1653 () Bool (bvslt _1644 _1652)) +(define-fun _1655 () (_ BitVec 64) (bvadd _1651 _1652)) +(define-fun _1656 () Bool (bvslt _8 _1655)) +(define-fun _1659 () (Array (_ BitVec 64) (_ BitVec 64)) (store _728 _1652 _8)) +(define-fun _1660 () Bool (= _728 _1659)) +(define-fun _1662 () (_ BitVec 64) (bvadd _9 _1652)) +(define-fun _1663 () (Array (_ BitVec 64) (_ BitVec 64)) (store _728 _1662 _8)) +(define-fun _1664 () Bool (= _728 _1663)) +(define-fun _1665 () Bool (and _1660 _1664)) +(define-fun _1667 () (_ BitVec 64) (bvadd _134 _1652)) +(define-fun _1668 () (Array (_ BitVec 64) (_ BitVec 64)) (store _728 _1667 _8)) +(define-fun _1669 () Bool (= _728 _1668)) +(define-fun _1670 () Bool (and _1665 _1669)) +(define-fun _1672 () (_ BitVec 64) (bvadd _158 _1652)) +(define-fun _1673 () (Array (_ BitVec 64) (_ BitVec 64)) (store _728 _1672 _8)) +(define-fun _1674 () Bool (= _728 _1673)) +(define-fun _1675 () Bool (and _1670 _1674)) +(define-fun _1677 () (_ BitVec 64) (bvadd _182 _1652)) +(define-fun _1678 () (Array (_ BitVec 64) (_ BitVec 64)) (store _728 _1677 _8)) +(define-fun _1679 () Bool (= _728 _1678)) +(define-fun _1680 () Bool (and _1675 _1679)) +(define-fun _1682 () (_ BitVec 64) (bvadd _194 _1652)) +(define-fun _1683 () (Array (_ BitVec 64) (_ BitVec 64)) (store _728 _1682 _8)) +(define-fun _1684 () Bool (= _728 _1683)) +(define-fun _1685 () Bool (and _1680 _1684)) +(define-fun _1687 () (_ BitVec 64) (bvadd _218 _1652)) +(define-fun _1688 () (Array (_ BitVec 64) (_ BitVec 64)) (store _728 _1687 _8)) +(define-fun _1689 () Bool (= _728 _1688)) +(define-fun _1690 () Bool (and _1685 _1689)) +(define-fun _1692 () (_ BitVec 64) (bvadd _230 _1652)) +(define-fun _1693 () (Array (_ BitVec 64) (_ BitVec 64)) (store _728 _1692 _8)) +(define-fun _1694 () Bool (= _728 _1693)) +(define-fun _1695 () Bool (and _1690 _1694)) +(define-fun _1697 () (_ BitVec 64) (bvadd _242 _1652)) +(define-fun _1698 () (Array (_ BitVec 64) (_ BitVec 64)) (store _728 _1697 _8)) +(define-fun _1699 () Bool (= _728 _1698)) +(define-fun _1700 () Bool (and _1695 _1699)) +(define-fun _1702 () (_ BitVec 64) (bvadd _254 _1652)) +(define-fun _1703 () (Array (_ BitVec 64) (_ BitVec 64)) (store _728 _1702 _8)) +(define-fun _1704 () Bool (= _728 _1703)) +(define-fun _1705 () Bool (and _1700 _1704)) +(define-fun _1707 () (_ BitVec 64) (bvadd _307 _1652)) +(define-fun _1708 () (Array (_ BitVec 64) (_ BitVec 64)) (store _728 _1707 _8)) +(define-fun _1709 () Bool (= _728 _1708)) +(define-fun _1710 () Bool (and _1705 _1709)) +(define-fun _1712 () (_ BitVec 64) (bvadd _828 _1652)) +(define-fun _1713 () (Array (_ BitVec 64) (_ BitVec 64)) (store _728 _1712 _8)) +(define-fun _1714 () Bool (= _728 _1713)) +(define-fun _1715 () Bool (and _1710 _1714)) +(define-fun _1717 () (_ BitVec 64) (bvadd _1591 _1652)) +(define-fun _1718 () (Array (_ BitVec 64) (_ BitVec 64)) (store _728 _1717 _8)) +(define-fun _1719 () Bool (= _728 _1718)) +(define-fun _1720 () Bool (and _1715 _1719)) +(define-fun _1722 () (_ BitVec 64) (bvadd _1633 _1652)) +(define-fun _1723 () (Array (_ BitVec 64) (_ BitVec 64)) (store _728 _1722 _8)) +(define-fun _1724 () Bool (= _728 _1723)) +(define-fun _1725 () Bool (and _1720 _1724)) +(define-fun _1726 () (_ BitVec 64) (_ bv112 64)) +(define-fun _1728 () (_ BitVec 64) (bvadd _1726 _1652)) +(define-fun _1729 () (Array (_ BitVec 64) (_ BitVec 64)) (store _728 _1728 _8)) +(define-fun _1730 () Bool (= _728 _1729)) +(define-fun _1731 () Bool (and _1725 _1730)) +(define-fun _1732 () Bool (and _1653 _1656)) +(define-fun _1733 () Bool (and _1731 _1732)) +(define-fun _1734 () Bool (and _1650 _1733)) +(define-fun _1735 () (_ BitVec 32) last_index@2) +(define-fun _1736 () Bool (= _1735 _15)) +(define-fun _1737 () Bool (and _1734 _1736)) +(define-fun _1738 () (_ BitVec 64) |__ADDRESS_OF_main::ldvarg4@|) +(define-fun _1739 () Bool (bvslt _1655 _1738)) +(define-fun _1741 () (_ BitVec 64) (bvadd _16 _1738)) +(define-fun _1742 () Bool (bvslt _8 _1741)) +(define-fun _1743 () Bool (and _1739 _1742)) +(define-fun _1744 () Bool (and _1737 _1743)) +(define-fun _1745 () (_ BitVec 8) __VERIFIER_nondet_u8@2) +(define-fun _1746 () (_ BitVec 8) |main::tmp@3|) +(define-fun _1747 () Bool (= _1745 _1746)) +(define-fun _1748 () Bool (and _1744 _1747)) +(define-fun _1749 () (_ BitVec 8) |main::ldvarg1@3|) +(define-fun _1750 () Bool (= _1746 _1749)) +(define-fun _1751 () Bool (and _1748 _1750)) +(define-fun _1752 () (_ BitVec 8) __VERIFIER_nondet_u8@3) +(define-fun _1753 () (_ BitVec 8) |main::tmp___0@3|) +(define-fun _1754 () Bool (= _1752 _1753)) +(define-fun _1755 () Bool (and _1751 _1754)) +(define-fun _1756 () (_ BitVec 8) |main::ldvarg3@3|) +(define-fun _1757 () Bool (= _1753 _1756)) +(define-fun _1758 () Bool (and _1755 _1757)) +(define-fun _1759 () (_ BitVec 8) __VERIFIER_nondet_u8@4) +(define-fun _1760 () (_ BitVec 8) |main::tmp___1@3|) +(define-fun _1761 () Bool (= _1759 _1760)) +(define-fun _1762 () Bool (and _1758 _1761)) +(define-fun _1763 () (_ BitVec 8) |main::ldvarg0@3|) +(define-fun _1764 () Bool (= _1760 _1763)) +(define-fun _1765 () Bool (and _1762 _1764)) +(define-fun _1766 () (_ BitVec 8) __VERIFIER_nondet_u8@5) +(define-fun _1767 () (_ BitVec 8) |main::tmp___2@3|) +(define-fun _1768 () Bool (= _1766 _1767)) +(define-fun _1769 () Bool (and _1765 _1768)) +(define-fun _1770 () (_ BitVec 8) |main::ldvarg5@3|) +(define-fun _1771 () Bool (= _1767 _1770)) +(define-fun _1772 () Bool (and _1769 _1771)) +(define-fun _1773 () (_ BitVec 64) |ldv_zalloc::size@2|) +(define-fun _1774 () Bool (= _1773 _23)) +(define-fun _1775 () Bool (and _1772 _1774)) +(define-fun _1776 () (_ BitVec 32) __VERIFIER_nondet_int@2) +(define-fun _1777 () (_ BitVec 32) |ldv_zalloc::tmp___0@3|) +(define-fun _1778 () Bool (= _1776 _1777)) +(define-fun _1779 () Bool (and _1775 _1778)) +(define-fun _1780 () Bool (= _1777 _15)) +(define-fun _1781 () Bool (not _1780)) +(define-fun _1783 () Bool (and _1779 _1781)) +(define-fun _1784 () Bool (and _1779 _1780)) +(define-fun _1785 () (_ BitVec 64) calloc@2) +(define-fun _1786 () Bool (= _1785 _8)) +(define-fun _1787 () Bool (not _1786)) +(define-fun _1789 () (_ BitVec 64) |__ADDRESS_OF___VERIFIER_successful_zalloc_*void#1@|) +(define-fun _1790 () Bool (bvslt _8 _1789)) +(define-fun _1791 () (_ BitVec 64) (ite _1787 _1789 _8)) +(define-fun _1792 () (_ BitVec 64) |ldv_zalloc::tmp@3|) +(define-fun _1793 () Bool (= _1791 _1792)) +(define-fun _1794 () Bool (and _1790 _1793)) +(define-fun _1795 () Bool (and _1784 _1794)) +(define-fun _1796 () (_ BitVec 64) |ldv_zalloc::p@3|) +(define-fun _1797 () Bool (= _1792 _1796)) +(define-fun _1798 () Bool (and _1795 _1797)) +(define-fun _1799 () Bool (= _1796 _8)) +(define-fun _1800 () Bool (not _1799)) +(define-fun _1802 () Bool (and _1798 _1800)) +(define-fun _1804 () (_ BitVec 64) |ldv_zalloc::__retval__@2|) +(define-fun _1805 () Bool (= _1796 _1804)) +(define-fun _1806 () Bool (and _1802 _1805)) +(define-fun _1807 () Bool (= _1804 _8)) +(define-fun _1808 () Bool (and _1783 _1807)) +(define-fun _1809 () (_ BitVec 64) calloc@1) +(define-fun _1810 () Bool (= _1785 _1809)) +(define-fun _1811 () (_ BitVec 64) |ldv_zalloc::p@2|) +(define-fun _1812 () Bool (= _1796 _1811)) +(define-fun _1813 () Bool (and _1810 _1812)) +(define-fun _1814 () (_ BitVec 64) |ldv_zalloc::tmp@2|) +(define-fun _1815 () Bool (= _1792 _1814)) +(define-fun _1816 () Bool (and _1813 _1815)) +(define-fun _1817 () Bool (and _1808 _1816)) +(define-fun _1818 () Bool (or _1806 _1817)) +(define-fun _1819 () (_ BitVec 64) |main::tmp___3@3|) +(define-fun _1820 () Bool (= _1804 _1819)) +(define-fun _1821 () Bool (and _1818 _1820)) +(define-fun _1822 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _1789 _37)) +(define-fun _1823 () Bool (= _51 _1822)) +(define-fun _1824 () Bool (bvslt _1741 _1789)) +(define-fun _1826 () (_ BitVec 64) (bvadd _23 _1789)) +(define-fun _1827 () Bool (bvslt _8 _1826)) +(define-fun _1829 () (_ BitVec 64) (bvadd _1773 _1789)) +(define-fun _1830 () Bool (bvslt _8 _1829)) +(define-fun _1831 () (_ BitVec 64) |main::ldvarg2@3|) +(define-fun _1832 () Bool (= _1819 _1831)) +(define-fun _1833 () Bool (and _1823 _1824)) +(define-fun _1834 () Bool (and _1827 _1833)) +(define-fun _1835 () Bool (and _1830 _1834)) +(define-fun _1836 () Bool (and _1832 _1835)) +(define-fun _1837 () Bool (and _1821 _1836)) +(define-fun _1838 () (_ BitVec 32) last_index@3) +(define-fun _1839 () Bool (= _1838 _15)) +(define-fun _1840 () Bool (and _1837 _1839)) +(define-fun _1841 () (Array (_ BitVec 64) (_ BitVec 32)) *enum__RT_MEDIA_STATUS@1) +(define-fun _1842 () (_ BitVec 32) (select _1841 _1738)) +(define-fun _1843 () (_ BitVec 32) |main::ldvarg4@2|) +(define-fun _1844 () Bool (= _1842 _1843)) +(define-fun _1846 () Bool (and _1840 _1844)) +(define-fun _1847 () (_ BitVec 32) ldv_state_variable_1@3) +(define-fun _1848 () Bool (= _1847 _15)) +(define-fun _1849 () Bool (and _1846 _1848)) +(define-fun _1850 () (_ BitVec 32) ref_cnt@3) +(define-fun _1851 () Bool (= _1850 _15)) +(define-fun _1852 () Bool (and _1849 _1851)) +(define-fun _1853 () (_ BitVec 32) ldv_state_variable_0@3) +(define-fun _1854 () Bool (= _1853 _22)) +(define-fun _1855 () Bool (and _1852 _1854)) +(define-fun _1856 () (_ BitVec 32) __VERIFIER_nondet_int@3) +(define-fun _1857 () (_ BitVec 32) |main::tmp___4@3|) +(define-fun _1858 () Bool (= _1856 _1857)) +(define-fun _1859 () Bool (and _1855 _1858)) +(define-fun _1860 () Bool (= _1857 _15)) +(define-fun _1862 () Bool (and _1859 _1860)) +(define-fun _1863 () Bool (not _1860)) +(define-fun _1864 () Bool (and _1859 _1863)) +(define-fun _1865 () Bool (= _1857 _22)) +(define-fun _1867 () Bool (and _1864 _1865)) +(define-fun _1868 () Bool (not _1865)) +(define-fun _1869 () Bool (and _1864 _1868)) +(define-fun _1870 () Bool (= _1853 _15)) +(define-fun _1871 () Bool (not _1870)) +(define-fun _1873 () Bool (and _1867 _1871)) +(define-fun _1875 () (_ BitVec 32) __VERIFIER_nondet_int@4) +(define-fun _1876 () (_ BitVec 32) |main::tmp___6@3|) +(define-fun _1877 () Bool (= _1875 _1876)) +(define-fun _1878 () Bool (and _1873 _1877)) +(define-fun _1879 () Bool (= _1876 _15)) +(define-fun _1881 () Bool (and _1878 _1879)) +(define-fun _1882 () Bool (not _1879)) +(define-fun _1883 () Bool (and _1878 _1882)) +(define-fun _1884 () Bool (= _1876 _22)) +(define-fun _1886 () Bool (and _1883 _1884)) +(define-fun _1887 () Bool (not _1884)) +(define-fun _1888 () Bool (and _1883 _1887)) +(define-fun _1890 () Bool (and _1854 _1886)) +(define-fun _1893 () (_ BitVec 32) |rtl_btcoexist_module_init::__retval__@2|) +(define-fun _1894 () Bool (= _1893 _15)) +(define-fun _1895 () Bool (and _1890 _1894)) +(define-fun _1896 () (_ BitVec 32) ldv_retval_0@3) +(define-fun _1897 () Bool (= _1893 _1896)) +(define-fun _1898 () Bool (and _1895 _1897)) +(define-fun _1899 () Bool (= _1896 _15)) +(define-fun _1901 () Bool (and _1898 _1899)) +(define-fun _1904 () (_ BitVec 32) ldv_state_variable_0@4) +(define-fun _1905 () Bool (= _1904 _106)) +(define-fun _1906 () Bool (and _1901 _1905)) +(define-fun _1907 () (_ BitVec 32) ldv_state_variable_1@4) +(define-fun _1908 () Bool (= _1907 _22)) +(define-fun _1909 () Bool (and _1906 _1908)) +(define-fun _1910 () (_ BitVec 64) (_ bv19648 64)) +(define-fun _1911 () (_ BitVec 64) |ldv_zalloc::size@3|) +(define-fun _1912 () Bool (= _1911 _1910)) +(define-fun _1913 () Bool (and _1909 _1912)) +(define-fun _1914 () (_ BitVec 32) __VERIFIER_nondet_int@5) +(define-fun _1915 () (_ BitVec 32) |ldv_zalloc::tmp___0@5|) +(define-fun _1916 () Bool (= _1914 _1915)) +(define-fun _1917 () Bool (and _1913 _1916)) +(define-fun _1918 () Bool (= _1915 _15)) +(define-fun _1919 () Bool (not _1918)) +(define-fun _1921 () Bool (and _1917 _1919)) +(define-fun _1922 () Bool (and _1917 _1918)) +(define-fun _1923 () (_ BitVec 64) calloc@3) +(define-fun _1924 () Bool (= _1923 _8)) +(define-fun _1925 () Bool (not _1924)) +(define-fun _1927 () (_ BitVec 64) |__ADDRESS_OF___VERIFIER_successful_zalloc_*void#2@|) +(define-fun _1928 () Bool (bvslt _8 _1927)) +(define-fun _1929 () (_ BitVec 64) (ite _1925 _1927 _8)) +(define-fun _1930 () (_ BitVec 64) |ldv_zalloc::tmp@5|) +(define-fun _1931 () Bool (= _1929 _1930)) +(define-fun _1932 () Bool (and _1928 _1931)) +(define-fun _1933 () Bool (and _1922 _1932)) +(define-fun _1934 () (_ BitVec 64) |ldv_zalloc::p@5|) +(define-fun _1935 () Bool (= _1930 _1934)) +(define-fun _1936 () Bool (and _1933 _1935)) +(define-fun _1937 () Bool (= _1934 _8)) +(define-fun _1938 () Bool (not _1937)) +(define-fun _1940 () Bool (and _1936 _1938)) +(define-fun _1942 () (_ BitVec 64) |ldv_zalloc::__retval__@3|) +(define-fun _1943 () Bool (= _1934 _1942)) +(define-fun _1944 () Bool (and _1940 _1943)) +(define-fun _1945 () Bool (= _1942 _8)) +(define-fun _1946 () Bool (and _1921 _1945)) +(define-fun _1947 () Bool (= _1785 _1923)) +(define-fun _1948 () (_ BitVec 64) |ldv_zalloc::p@4|) +(define-fun _1949 () Bool (= _1934 _1948)) +(define-fun _1950 () Bool (and _1947 _1949)) +(define-fun _1951 () (_ BitVec 64) |ldv_zalloc::tmp@4|) +(define-fun _1952 () Bool (= _1930 _1951)) +(define-fun _1953 () Bool (and _1950 _1952)) +(define-fun _1954 () Bool (and _1946 _1953)) +(define-fun _1955 () Bool (or _1944 _1954)) +(define-fun _1956 () (_ BitVec 64) |ldv_initialize_rtl_btc_ops_1::tmp@3|) +(define-fun _1957 () Bool (= _1942 _1956)) +(define-fun _1958 () Bool (and _1955 _1957)) +(define-fun _1964 () (_ BitVec 64) (_ bv3704 64)) +(define-fun _1965 () (_ BitVec 64) (bvadd _1964 _1927)) +(define-fun _1967 () (Array (_ BitVec 64) (_ BitVec 64)) |*(struct_ieee80211_hw)*@1|) +(define-fun _1968 () (Array (_ BitVec 64) (_ BitVec 64)) (store _1967 _1965 _8)) +(define-fun _1969 () Bool (= _1967 _1968)) +(define-fun _1972 () (_ BitVec 64) (_ bv3720 64)) +(define-fun _1973 () (_ BitVec 64) (bvadd _1972 _1927)) +(define-fun _1975 () (Array (_ BitVec 64) (_ BitVec 32)) *enum_nl80211_iftype@1) +(define-fun _1976 () (Array (_ BitVec 64) (_ BitVec 32)) (store _1975 _1973 _15)) +(define-fun _1977 () Bool (= _1975 _1976)) +(define-fun _1978 () Bool (and _1969 _1977)) +(define-fun _1982 () (_ BitVec 64) (_ bv4016 64)) +(define-fun _1983 () (_ BitVec 64) (bvadd _1982 _1927)) +(define-fun _1984 () (Array (_ BitVec 64) (_ BitVec 32)) *enum_rtl_link_state@1) +(define-fun _1985 () (Array (_ BitVec 64) (_ BitVec 32)) (store _1984 _1983 _15)) +(define-fun _1986 () Bool (= _1984 _1985)) +(define-fun _1987 () Bool (and _1978 _1986)) +(define-fun _1991 () (_ BitVec 64) (_ bv4042 64)) +(define-fun _1992 () (_ BitVec 64) (bvadd _1991 _1927)) +(define-fun _1993 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _1992 _37)) +(define-fun _1994 () Bool (= _40 _1993)) +(define-fun _1995 () Bool (and _1987 _1994)) +(define-fun _1999 () (_ BitVec 64) (_ bv4948 64)) +(define-fun _2000 () (_ BitVec 64) (bvadd _1999 _1927)) +(define-fun _2001 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _2000 _37)) +(define-fun _2002 () Bool (= _51 _2001)) +(define-fun _2003 () Bool (and _1995 _2002)) +(define-fun _2010 () (_ BitVec 64) (_ bv5204 64)) +(define-fun _2011 () (_ BitVec 64) (bvadd _2010 _1927)) +(define-fun _2012 () (Array (_ BitVec 64) (_ BitVec 16)) (store _322 _2011 _318)) +(define-fun _2013 () Bool (= _322 _2012)) +(define-fun _2017 () (_ BitVec 64) (_ bv5232 64)) +(define-fun _2018 () (_ BitVec 64) (bvadd _2017 _1927)) +(define-fun _2019 () (Array (_ BitVec 64) (_ BitVec 16)) (store _322 _2018 _318)) +(define-fun _2020 () Bool (= _322 _2019)) +(define-fun _2021 () Bool (and _2013 _2020)) +(define-fun _2022 () Bool (and _2003 _2021)) +(define-fun _2028 () (_ BitVec 64) (_ bv5536 64)) +(define-fun _2029 () (_ BitVec 64) (bvadd _2028 _1927)) +(define-fun _2030 () (Array (_ BitVec 64) (_ BitVec 64)) |*(Return_type:_[void],_Parameters:_3,_Parameter_1_type:_[(struct_rtl_priv)*],_Parameter_2_type:_[int],_Parameter_3_type:_[char],_VarArgs:_false)*@1|) +(define-fun _2031 () (Array (_ BitVec 64) (_ BitVec 64)) (store _2030 _2029 _8)) +(define-fun _2032 () Bool (= _2030 _2031)) +(define-fun _2035 () (_ BitVec 64) (_ bv5544 64)) +(define-fun _2036 () (_ BitVec 64) (bvadd _2035 _1927)) +(define-fun _2037 () (Array (_ BitVec 64) (_ BitVec 64)) |*(Return_type:_[void],_Parameters:_3,_Parameter_1_type:_[(struct_rtl_priv)*],_Parameter_2_type:_[int],_Parameter_3_type:_[short_int],_VarArgs:_false)*@1|) +(define-fun _2038 () (Array (_ BitVec 64) (_ BitVec 64)) (store _2037 _2036 _8)) +(define-fun _2039 () Bool (= _2037 _2038)) +(define-fun _2040 () Bool (and _2032 _2039)) +(define-fun _2044 () (_ BitVec 64) (_ bv5552 64)) +(define-fun _2045 () (_ BitVec 64) (bvadd _2044 _1927)) +(define-fun _2046 () (Array (_ BitVec 64) (_ BitVec 64)) |*(Return_type:_[void],_Parameters:_3,_Parameter_1_type:_[(struct_rtl_priv)*],_Parameter_2_type:_[int],_Parameter_3_type:_[int],_VarArgs:_false)*@1|) +(define-fun _2047 () (Array (_ BitVec 64) (_ BitVec 64)) (store _2046 _2045 _8)) +(define-fun _2048 () Bool (= _2046 _2047)) +(define-fun _2049 () Bool (and _2040 _2048)) +(define-fun _2052 () (_ BitVec 64) (_ bv5568 64)) +(define-fun _2053 () (_ BitVec 64) (bvadd _2052 _1927)) +(define-fun _2054 () (Array (_ BitVec 64) (_ BitVec 64)) |*(Return_type:_[char],_Parameters:_2,_Parameter_1_type:_[(struct_rtl_priv)*],_Parameter_2_type:_[int],_VarArgs:_false)*@1|) +(define-fun _2055 () (Array (_ BitVec 64) (_ BitVec 64)) (store _2054 _2053 _8)) +(define-fun _2056 () Bool (= _2054 _2055)) +(define-fun _2057 () Bool (and _2049 _2056)) +(define-fun _2060 () (_ BitVec 64) (_ bv5576 64)) +(define-fun _2061 () (_ BitVec 64) (bvadd _2060 _1927)) +(define-fun _2062 () (Array (_ BitVec 64) (_ BitVec 64)) |*(Return_type:_[short_int],_Parameters:_2,_Parameter_1_type:_[(struct_rtl_priv)*],_Parameter_2_type:_[int],_VarArgs:_false)*@1|) +(define-fun _2063 () (Array (_ BitVec 64) (_ BitVec 64)) (store _2062 _2061 _8)) +(define-fun _2064 () Bool (= _2062 _2063)) +(define-fun _2065 () Bool (and _2057 _2064)) +(define-fun _2068 () (_ BitVec 64) (_ bv5584 64)) +(define-fun _2069 () (_ BitVec 64) (bvadd _2068 _1927)) +(define-fun _2070 () (Array (_ BitVec 64) (_ BitVec 64)) |*(Return_type:_[int],_Parameters:_2,_Parameter_1_type:_[(struct_rtl_priv)*],_Parameter_2_type:_[int],_VarArgs:_false)*@1|) +(define-fun _2071 () (Array (_ BitVec 64) (_ BitVec 64)) (store _2070 _2069 _8)) +(define-fun _2072 () Bool (= _2070 _2071)) +(define-fun _2073 () Bool (and _2065 _2072)) +(define-fun _2074 () Bool (and _2022 _2073)) +(define-fun _2081 () (_ BitVec 64) (_ bv5894 64)) +(define-fun _2082 () (_ BitVec 64) (bvadd _2081 _1927)) +(define-fun _2083 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _2082 _37)) +(define-fun _2084 () Bool (= _51 _2083)) +(define-fun _2088 () (_ BitVec 64) (_ bv5899 64)) +(define-fun _2089 () (_ BitVec 64) (bvadd _2088 _1927)) +(define-fun _2090 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _2089 _37)) +(define-fun _2091 () Bool (= _51 _2090)) +(define-fun _2092 () Bool (and _2084 _2091)) +(define-fun _2093 () Bool (and _2074 _2092)) +(define-fun _2099 () (_ BitVec 64) (_ bv12168 64)) +(define-fun _2100 () (_ BitVec 64) (bvadd _2099 _1927)) +(define-fun _2101 () (Array (_ BitVec 64) (_ BitVec 64)) *long_int@1) +(define-fun _2102 () (Array (_ BitVec 64) (_ BitVec 64)) (store _2101 _2100 _8)) +(define-fun _2103 () Bool (= _2101 _2102)) +(define-fun _2104 () Bool (and _2093 _2103)) +(define-fun _2110 () (_ BitVec 64) (_ bv13836 64)) +(define-fun _2111 () (_ BitVec 64) (bvadd _2110 _1927)) +(define-fun _2112 () (Array (_ BitVec 64) (_ BitVec 32)) *enum_rt_enc_alg@1) +(define-fun _2113 () (Array (_ BitVec 64) (_ BitVec 32)) (store _2112 _2111 _15)) +(define-fun _2114 () Bool (= _2112 _2113)) +(define-fun _2115 () Bool (and _2104 _2114)) +(define-fun _2121 () (_ BitVec 64) (_ bv18904 64)) +(define-fun _2122 () (_ BitVec 64) (bvadd _2121 _1927)) +(define-fun _2123 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _2122 _37)) +(define-fun _2124 () Bool (= _40 _2123)) +(define-fun _2127 () (_ BitVec 64) (_ bv18905 64)) +(define-fun _2128 () (_ BitVec 64) (bvadd _2127 _1927)) +(define-fun _2129 () (Array (_ BitVec 64) (_ BitVec 8)) (store _40 _2128 _37)) +(define-fun _2130 () Bool (= _40 _2129)) +(define-fun _2131 () Bool (and _2124 _2130)) +(define-fun _2132 () Bool (and _2115 _2131)) +(define-fun _2138 () (_ BitVec 64) (_ bv19260 64)) +(define-fun _2139 () (_ BitVec 64) (bvadd _2138 _1927)) +(define-fun _2140 () (Array (_ BitVec 64) (_ BitVec 32)) (store _19 _2139 _15)) +(define-fun _2141 () Bool (= _19 _2140)) +(define-fun _2144 () (_ BitVec 64) (_ bv19264 64)) +(define-fun _2145 () (_ BitVec 64) (bvadd _2144 _1927)) +(define-fun _2146 () (Array (_ BitVec 64) (_ BitVec 64)) *long_long_int@1) +(define-fun _2147 () (Array (_ BitVec 64) (_ BitVec 64)) (store _2146 _2145 _8)) +(define-fun _2148 () Bool (= _2146 _2147)) +(define-fun _2149 () Bool (and _2141 _2148)) +(define-fun _2150 () Bool (and _2132 _2149)) +(define-fun _2151 () (_ BitVec 64) (_ bv19312 64)) +(define-fun _2153 () (_ BitVec 64) (bvadd _2151 _1927)) +(define-fun _2154 () (Array (_ BitVec 64) (_ BitVec 64)) |*(struct_rtl_hal_cfg)*@1|) +(define-fun _2155 () (Array (_ BitVec 64) (_ BitVec 64)) (store _2154 _2153 _8)) +(define-fun _2156 () Bool (= _2154 _2155)) +(define-fun _2157 () Bool (and _2150 _2156)) +(define-fun _2163 () (_ BitVec 64) (_ bv19560 64)) +(define-fun _2164 () (_ BitVec 64) (bvadd _2163 _1927)) +(define-fun _2167 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _2164 _37)) +(define-fun _2168 () Bool (= _51 _2167)) +(define-fun _2171 () (_ BitVec 64) (_ bv19561 64)) +(define-fun _2172 () (_ BitVec 64) (bvadd _2171 _1927)) +(define-fun _2173 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _2172 _37)) +(define-fun _2174 () Bool (= _51 _2173)) +(define-fun _2175 () Bool (and _2168 _2174)) +(define-fun _2178 () (_ BitVec 64) (_ bv19562 64)) +(define-fun _2179 () (_ BitVec 64) (bvadd _2178 _1927)) +(define-fun _2180 () (Array (_ BitVec 64) (_ BitVec 8)) (store _51 _2179 _37)) +(define-fun _2181 () Bool (= _51 _2180)) +(define-fun _2182 () Bool (and _2175 _2181)) +(define-fun _2183 () Bool (and _2157 _2182)) +(define-fun _2184 () Bool (bvslt _1829 _1927)) +(define-fun _2185 () Bool (bvslt _1826 _1927)) +(define-fun _2187 () (_ BitVec 64) (bvadd _1910 _1927)) +(define-fun _2188 () Bool (bvslt _8 _2187)) +(define-fun _2190 () (_ BitVec 64) (bvadd _1911 _1927)) +(define-fun _2191 () Bool (bvslt _8 _2190)) +(define-fun _2192 () (_ BitVec 64) rtl_btc_operation_group0@3) +(define-fun _2193 () Bool (= _1956 _2192)) +(define-fun _2194 () Bool (and _2183 _2184)) +(define-fun _2195 () Bool (and _2185 _2194)) +(define-fun _2196 () Bool (and _2188 _2195)) +(define-fun _2197 () Bool (and _2191 _2196)) +(define-fun _2198 () Bool (and _2193 _2197)) +(define-fun _2199 () Bool (and _1958 _2198)) +(define-fun _2202 () Bool (and _1899 _2199)) +(define-fun _2203 () Bool (= _1853 _106)) +(define-fun _2206 () Bool (not _2203)) +(define-fun _2207 () Bool (and _1881 _2206)) +(define-fun _2208 () Bool (= _1875 _1914)) +(define-fun _2209 () Bool (and _1947 _2208)) +(define-fun _2210 () (_ BitVec 64) |ldv_initialize_rtl_btc_ops_1::tmp@1|) +(define-fun _2211 () Bool (= _1956 _2210)) +(define-fun _2212 () Bool (and _2209 _2211)) +(define-fun _2213 () Bool (= _1648 _1896)) +(define-fun _2214 () Bool (and _2212 _2213)) +(define-fun _2215 () Bool (= _1853 _1904)) +(define-fun _2216 () Bool (and _2214 _2215)) +(define-fun _2217 () Bool (= _1847 _1907)) +(define-fun _2218 () Bool (and _2216 _2217)) +(define-fun _2219 () Bool (= _1804 _1942)) +(define-fun _2220 () Bool (and _2218 _2219)) +(define-fun _2221 () Bool (= _1796 _1934)) +(define-fun _2222 () Bool (and _2220 _2221)) +(define-fun _2223 () Bool (= _1773 _1911)) +(define-fun _2224 () Bool (and _2222 _2223)) +(define-fun _2225 () Bool (= _1792 _1930)) +(define-fun _2226 () Bool (and _2224 _2225)) +(define-fun _2227 () Bool (= _1777 _1915)) +(define-fun _2228 () Bool (and _2226 _2227)) +(define-fun _2229 () Bool (= _1624 _2192)) +(define-fun _2230 () Bool (and _2228 _2229)) +(define-fun _2231 () (_ BitVec 32) |rtl_btcoexist_module_init::__retval__@1|) +(define-fun _2232 () Bool (= _1893 _2231)) +(define-fun _2233 () Bool (and _2230 _2232)) +(define-fun _2234 () Bool (and _2207 _2233)) +(define-fun _2235 () Bool (or _2202 _2234)) +(define-fun _2239 () Bool (and _1848 _1862)) +(define-fun _2240 () Bool (= _1856 _1914)) +(define-fun _2241 () Bool (and _1947 _2240)) +(define-fun _2242 () Bool (and _2211 _2241)) +(define-fun _2243 () Bool (and _2213 _2242)) +(define-fun _2244 () Bool (and _2215 _2243)) +(define-fun _2245 () Bool (and _2217 _2244)) +(define-fun _2246 () Bool (and _2219 _2245)) +(define-fun _2247 () Bool (and _2221 _2246)) +(define-fun _2248 () Bool (and _2223 _2247)) +(define-fun _2249 () Bool (and _2225 _2248)) +(define-fun _2250 () Bool (and _2227 _2249)) +(define-fun _2251 () (_ BitVec 32) |main::tmp___6@2|) +(define-fun _2252 () Bool (= _1876 _2251)) +(define-fun _2253 () Bool (and _2250 _2252)) +(define-fun _2254 () Bool (and _2229 _2253)) +(define-fun _2255 () Bool (and _2232 _2254)) +(define-fun _2256 () Bool (and _2239 _2255)) +(define-fun _2257 () Bool (or _2235 _2256)) +(define-fun _2262 () Bool (or _1869 _1888)) +(define-fun _2263 () Bool (or _2257 _2262)) +(assert _2263) +(set-info :status sat) +(check-sat) +(pop 1) +(exit) diff --git a/tests/regress/coverage/smtlib/QF_AUFBVLIA/20190307-CPAchecker_kInduction-SoSy_Lab/205_9a_array_safes_linux-3.16-rc1.tar.xz-205_9a-drivers--net--wireless--rtlwifi--btcoexist--btcoexist.ko-entry_point.cil.out_smt-query.0.smt2.gold b/tests/regress/coverage/smtlib/QF_AUFBVLIA/20190307-CPAchecker_kInduction-SoSy_Lab/205_9a_array_safes_linux-3.16-rc1.tar.xz-205_9a-drivers--net--wireless--rtlwifi--btcoexist--btcoexist.ko-entry_point.cil.out_smt-query.0.smt2.gold new file mode 100644 index 000000000..fea55f7e1 --- /dev/null +++ b/tests/regress/coverage/smtlib/QF_AUFBVLIA/20190307-CPAchecker_kInduction-SoSy_Lab/205_9a_array_safes_linux-3.16-rc1.tar.xz-205_9a-drivers--net--wireless--rtlwifi--btcoexist--btcoexist.ko-entry_point.cil.out_smt-query.0.smt2.gold @@ -0,0 +1,2 @@ +unsat +sat diff --git a/tests/regress/coverage/smtlib/QF_AUFBVLIA/20190307-CPAchecker_kInduction-SoSy_Lab/205_9a_array_safes_linux-3.16-rc1.tar.xz-205_9a-drivers--net--wireless--rtlwifi--btcoexist--btcoexist.ko-entry_point.cil.out_smt-query.0.smt2.options b/tests/regress/coverage/smtlib/QF_AUFBVLIA/20190307-CPAchecker_kInduction-SoSy_Lab/205_9a_array_safes_linux-3.16-rc1.tar.xz-205_9a-drivers--net--wireless--rtlwifi--btcoexist--btcoexist.ko-entry_point.cil.out_smt-query.0.smt2.options new file mode 100644 index 000000000..1cb8ff7d0 --- /dev/null +++ b/tests/regress/coverage/smtlib/QF_AUFBVLIA/20190307-CPAchecker_kInduction-SoSy_Lab/205_9a_array_safes_linux-3.16-rc1.tar.xz-205_9a-drivers--net--wireless--rtlwifi--btcoexist--btcoexist.ko-entry_point.cil.out_smt-query.0.smt2.options @@ -0,0 +1 @@ +--incremental \ No newline at end of file diff --git a/tests/regress/test_qfaufbvlia.smt2 b/tests/regress/test_qfaufbvlia.smt2 new file mode 100644 index 000000000..d06ee7a8e --- /dev/null +++ b/tests/regress/test_qfaufbvlia.smt2 @@ -0,0 +1,4 @@ +(set-info :smt-lib-version 2.6) +(set-logic QF_AUFBVLIA) +(echo "ok") +(exit) diff --git a/tests/regress/test_qfaufbvlia.smt2.gold b/tests/regress/test_qfaufbvlia.smt2.gold new file mode 100644 index 000000000..b5754e203 --- /dev/null +++ b/tests/regress/test_qfaufbvlia.smt2.gold @@ -0,0 +1 @@ +ok \ No newline at end of file diff --git a/tests/regress/test_qfaufbvnia.smt2 b/tests/regress/test_qfaufbvnia.smt2 new file mode 100644 index 000000000..20fce595a --- /dev/null +++ b/tests/regress/test_qfaufbvnia.smt2 @@ -0,0 +1,4 @@ +(set-info :smt-lib-version 2.6) +(set-logic QF_AUFBVNIA) +(echo "ok") +(exit) diff --git a/tests/regress/test_qfaufbvnia.smt2.gold b/tests/regress/test_qfaufbvnia.smt2.gold new file mode 100644 index 000000000..b5754e203 --- /dev/null +++ b/tests/regress/test_qfaufbvnia.smt2.gold @@ -0,0 +1 @@ +ok \ No newline at end of file diff --git a/tests/unit/test_api7.c b/tests/unit/test_api7.c index c5b796eac..1c0ace724 100644 --- a/tests/unit/test_api7.c +++ b/tests/unit/test_api7.c @@ -75,6 +75,8 @@ static const char* const logic2string[NUM_SMT_LOGICS+1] = { "UFRDL", "AUFBV", + "AUFBVLIA", + "AUFBVNIA", "AUFLIA", "AUFLRA", "AUFLIRA", @@ -115,6 +117,8 @@ static const char* const logic2string[NUM_SMT_LOGICS+1] = { "QF_UFRDL", "QF_AUFBV", + "QF_AUFBVLIA", + "QF_AUFBVNIA", "QF_AUFLIA", "QF_AUFLRA", "QF_AUFLIRA", @@ -174,6 +178,8 @@ static const bool supported[NUM_SMT_LOGICS] = { false, // UFNIRA false, // UFRDL false, // AUFBV + false, // AUFBVLIA + false, // AUFBVNIA false, // AUFLIA false, // AUFLRA false, // AUFLIRA @@ -211,6 +217,8 @@ static const bool supported[NUM_SMT_LOGICS] = { true, // QF_UFNIRA true, // QF_UFRDL true, // QF_AUFBV + true, // QF_AUFBVLIA + true, // QF_AUFBVNIA true, // QF_AUFLIA true, // QF_AUFLRA true, // QF_AUFLIRA diff --git a/tests/unit/test_smt_codes.c b/tests/unit/test_smt_codes.c index 922531e9e..a66ba1e1e 100644 --- a/tests/unit/test_smt_codes.c +++ b/tests/unit/test_smt_codes.c @@ -57,6 +57,8 @@ static const char * const test_names[NUM_TESTS] = { "UFNIRA", "UFRDL", "AUFBV", + "AUFBVLIA", + "AUFBVNIA", "AUFLIA", "AUFLRA", "AUFLIRA", @@ -93,6 +95,8 @@ static const char * const test_names[NUM_TESTS] = { "QF_UFNIRA", "QF_UFRDL", "QF_AUFBV", + "QF_AUFBVLIA", + "QF_AUFBVNIA", "QF_AUFLIA", "QF_AUFLRA", "QF_AUFLIRA", @@ -140,6 +144,8 @@ static const char *const code2string[NUM_SMT_LOGICS+1] = { "UFNIRA", "UFRDL", "AUFBV", + "AUFBVLIA", + "AUFBVNIA", "AUFLIA", "AUFLRA", "AUFLIRA", @@ -176,6 +182,8 @@ static const char *const code2string[NUM_SMT_LOGICS+1] = { "QF_UFNIRA", "QF_UFRDL", "QF_AUFBV", + "QF_AUFBVLIA", + "QF_AUFBVNIA", "QF_AUFLIA", "QF_AUFLRA", "QF_AUFLIRA", From 90326b9f2861c59a1b28bacbe8a980ec55f12309 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Fri, 19 May 2023 00:56:36 -0700 Subject: [PATCH 108/182] test qf_aufbvnia --- ...ithcheck_stateful.cil.out_smt-query.0.smt2 | 2139 +++++++++++++++++ ...eck_stateful.cil.out_smt-query.0.smt2.gold | 2 + ..._stateful.cil.out_smt-query.0.smt2.options | 1 + 3 files changed, 2142 insertions(+) create mode 100644 tests/regress/coverage/smtlib/QF_AUFBVNIA/20190307-CPAchecker_kInduction-SoSy_Lab/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--input--keyboard--gpio_keys_polled.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out_smt-query.0.smt2 create mode 100644 tests/regress/coverage/smtlib/QF_AUFBVNIA/20190307-CPAchecker_kInduction-SoSy_Lab/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--input--keyboard--gpio_keys_polled.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out_smt-query.0.smt2.gold create mode 100644 tests/regress/coverage/smtlib/QF_AUFBVNIA/20190307-CPAchecker_kInduction-SoSy_Lab/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--input--keyboard--gpio_keys_polled.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out_smt-query.0.smt2.options diff --git a/tests/regress/coverage/smtlib/QF_AUFBVNIA/20190307-CPAchecker_kInduction-SoSy_Lab/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--input--keyboard--gpio_keys_polled.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out_smt-query.0.smt2 b/tests/regress/coverage/smtlib/QF_AUFBVNIA/20190307-CPAchecker_kInduction-SoSy_Lab/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--input--keyboard--gpio_keys_polled.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out_smt-query.0.smt2 new file mode 100644 index 000000000..33f70e816 --- /dev/null +++ b/tests/regress/coverage/smtlib/QF_AUFBVNIA/20190307-CPAchecker_kInduction-SoSy_Lab/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--input--keyboard--gpio_keys_polled.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out_smt-query.0.smt2 @@ -0,0 +1,2139 @@ +(set-info :smt-lib-version 2.6) +(set-logic QF_AUFBVNIA) +(set-info :source | +Generated by: SoSy-Lab +Generated on: 2019-03-07 +Generator: CPAchecker 1.8-svn 30724 using kInduction +Application: Software Verification for programs written in C +Target solver: MathSAT5 +|) +(set-info :license "https://www.gnu.org/licenses/gpl-2.0.html") +(set-info :category "industrial") +(set-info :status unsat) + +(push 1) +(define-fun _2 () Bool false) +(assert _2) +(check-sat) +(pop 1) +(push 1) +(declare-fun __string__ (Int) (_ BitVec 64)) +(declare-fun __ADDRESS_OF___this_module@ () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_gpio_keys_polled_driver@ () (_ BitVec 64)) +(declare-fun res_gpio_keys_polled_probe_4@2 () (_ BitVec 32)) +(declare-fun ldv_mutex@2 () (_ BitVec 32)) +(declare-fun |main::ldv_s_gpio_keys_polled_driver_platform_driver@3| () (_ BitVec 32)) +(declare-fun __VERIFIER_nondet_int@2 () (_ BitVec 32)) +(declare-fun |main::tmp___0@3| () (_ BitVec 32)) +(declare-fun __VERIFIER_nondet_int@3 () (_ BitVec 32)) +(declare-fun |main::tmp@3| () (_ BitVec 32)) +(declare-fun |main::var_group1@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::pdev@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp16@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp17@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp18@3| () (_ BitVec 64)) +(declare-fun |*(void)*@1| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |gpio_keys_polled_probe::__cil_tmp19@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::pdata@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp20@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp21@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::dev@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp22@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp23@3| () (_ BitVec 64)) +(declare-fun *int@1 () (Array (_ BitVec 64) (_ BitVec 32))) +(declare-fun |gpio_keys_polled_probe::__cil_tmp24@3| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp25@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp26@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp27@3| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp28@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp29@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp30@3| () (_ BitVec 64)) +(declare-fun |kzalloc::size@2| () (_ BitVec 64)) +(declare-fun |kmalloc::size@2| () (_ BitVec 64)) +(declare-fun |__kmalloc::size@2| () (_ BitVec 64)) +(declare-fun |ldv_malloc::size@2| () (_ BitVec 64)) +(declare-fun __VERIFIER_nondet_int@4 () (_ BitVec 32)) +(declare-fun |ldv_malloc::__CPAchecker_TMP_0@3| () (_ BitVec 32)) +(declare-fun malloc@2 () (_ BitVec 64)) +(declare-fun |__ADDRESS_OF___VERIFIER_successful_alloc_*void#1@| () (_ BitVec 64)) +(declare-fun |ldv_malloc::res@3| () (_ BitVec 64)) +(declare-fun |ldv_is_err::ptr@2| () (_ BitVec 64)) +(declare-fun |ldv_is_err::__retval__@2| () (_ BitVec 64)) +(declare-fun |ldv_malloc::__CPAchecker_TMP_1@3| () (_ BitVec 64)) +(declare-fun |ldv_malloc::__retval__@2| () (_ BitVec 64)) +(declare-fun |ldv_is_err::__retval__@1| () (_ BitVec 64)) +(declare-fun |ldv_is_err::ptr@1| () (_ BitVec 64)) +(declare-fun |ldv_malloc::__CPAchecker_TMP_1@1| () (_ BitVec 64)) +(declare-fun |ldv_malloc::res@1| () (_ BitVec 64)) +(declare-fun malloc@1 () (_ BitVec 64)) +(declare-fun |__kmalloc::__CPAchecker_TMP_0@3| () (_ BitVec 64)) +(declare-fun |__kmalloc::__retval__@2| () (_ BitVec 64)) +(declare-fun |kmalloc::tmp___2@3| () (_ BitVec 64)) +(declare-fun |kmalloc::__retval__@2| () (_ BitVec 64)) +(declare-fun |kzalloc::tmp@3| () (_ BitVec 64)) +(declare-fun |kzalloc::__retval__@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::tmp@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::bdev@3| () (_ BitVec 64)) +(declare-fun __VERIFIER_nondet_pointer@2 () (_ BitVec 64)) +(declare-fun |external_alloc::__CPAchecker_TMP_0@3| () (_ BitVec 64)) +(declare-fun |external_alloc::__retval__@2| () (_ BitVec 64)) +(declare-fun |input_allocate_polled_device::__CPAchecker_TMP_0@3| () (_ BitVec 64)) +(declare-fun |input_allocate_polled_device::__retval__@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::poll_dev@3| () (_ BitVec 64)) +(declare-fun |*(void)*@2| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |gpio_keys_polled_probe::__cil_tmp33@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp34@3| () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_gpio_keys_polled_poll@ () (_ BitVec 64)) +(declare-fun |*(Return_type:_[void],_Parameters:_1,_Parameter_1_type:_[(struct_input_polled_dev)*],_VarArgs:_false)*@1| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |*(Return_type:_[void],_Parameters:_1,_Parameter_1_type:_[(struct_input_polled_dev)*],_VarArgs:_false)*@2| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |gpio_keys_polled_probe::__cil_tmp35@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp36@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp37@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp38@3| () (_ BitVec 64)) +(declare-fun *int@2 () (Array (_ BitVec 64) (_ BitVec 32))) +(declare-fun |gpio_keys_polled_probe::__cil_tmp39@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp40@3| () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_gpio_keys_polled_open@ () (_ BitVec 64)) +(declare-fun |*(Return_type:_[void],_Parameters:_1,_Parameter_1_type:_[(struct_input_polled_dev)*],_VarArgs:_false)*@3| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |gpio_keys_polled_probe::__cil_tmp41@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp42@3| () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_gpio_keys_polled_close@ () (_ BitVec 64)) +(declare-fun |*(Return_type:_[void],_Parameters:_1,_Parameter_1_type:_[(struct_input_polled_dev)*],_VarArgs:_false)*@4| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |gpio_keys_polled_probe::__cil_tmp43@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp44@3| () (_ BitVec 64)) +(declare-fun |*(struct_input_dev)*@1| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |gpio_keys_polled_probe::input@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp45@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp46@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp47@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp48@3| () (_ BitVec 64)) +(declare-fun *long_int@1 () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun *long_int@2 () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |*(char)*@1| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |*(char)*@2| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |gpio_keys_polled_probe::__cil_tmp49@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp50@3| () (_ BitVec 64)) +(declare-fun |*(char)*@3| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |gpio_keys_polled_probe::__cil_tmp51@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp52@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp53@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp54@3| () (_ BitVec 64)) +(declare-fun |*(struct_device)*@1| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |*(struct_device)*@2| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |gpio_keys_polled_probe::__cil_tmp55@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp56@3| () (_ BitVec 64)) +(declare-fun *short_int@1 () (Array (_ BitVec 64) (_ BitVec 16))) +(declare-fun *short_int@2 () (Array (_ BitVec 64) (_ BitVec 16))) +(declare-fun |gpio_keys_polled_probe::__cil_tmp57@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp58@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp59@3| () (_ BitVec 64)) +(declare-fun *short_int@3 () (Array (_ BitVec 64) (_ BitVec 16))) +(declare-fun |gpio_keys_polled_probe::__cil_tmp60@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp61@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp62@3| () (_ BitVec 64)) +(declare-fun *short_int@4 () (Array (_ BitVec 64) (_ BitVec 16))) +(declare-fun |gpio_keys_polled_probe::__cil_tmp63@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp64@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp65@3| () (_ BitVec 64)) +(declare-fun *short_int@5 () (Array (_ BitVec 64) (_ BitVec 16))) +(declare-fun |gpio_keys_polled_probe::i@3| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp66@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp67@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp68@3| () (_ BitVec 32)) +(declare-fun |*(struct_input_polled_dev)*@1| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |*(struct_input_polled_dev)*@2| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |gpio_keys_polled_probe::__cil_tmp106@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp107@3| () (_ BitVec 64)) +(declare-fun |*(struct_device)*@3| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |gpio_keys_polled_probe::__cil_tmp108@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp109@3| () (_ BitVec 64)) +(declare-fun |*(struct_gpio_keys_platform_data)*@1| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |*(struct_gpio_keys_platform_data)*@2| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |dev_set_drvdata::__CPAchecker_TMP_0@1| () (_ BitVec 32)) +(declare-fun |dev_set_drvdata::__retval__@2| () (_ BitVec 32)) +(declare-fun __VERIFIER_nondet_int@5 () (_ BitVec 32)) +(declare-fun |input_register_polled_device::__CPAchecker_TMP_0@3| () (_ BitVec 32)) +(declare-fun |input_register_polled_device::__retval__@2| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::error@3| () (_ BitVec 32)) +(declare-fun |dev_err::__CPAchecker_TMP_0@1| () (_ BitVec 32)) +(declare-fun |dev_err::__retval__@2| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::i@4| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp112@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp113@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp114@3| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__retval__@2| () (_ BitVec 32)) +(declare-fun |*(struct_gpio_keys_button)*@1| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |gpio_keys_polled_probe::__cil_tmp115@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp116@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp117@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp118@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp119@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp120@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp121@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_check_state::button@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_check_state::bdata@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_check_state::__cil_tmp11@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_check_state::__cil_tmp12@3| () (_ BitVec 64)) +(declare-fun __VERIFIER_nondet_int@6 () (_ BitVec 32)) +(declare-fun |gpio_get_value_cansleep::__CPAchecker_TMP_0@3| () (_ BitVec 32)) +(declare-fun |gpio_get_value_cansleep::__retval__@2| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_check_state::tmp@3| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_check_state::tmp___0@3| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_check_state::state@3| () (_ BitVec 32)) +(declare-fun |__gpio_get_value::__CPAchecker_TMP_0@3| () (_ BitVec 32)) +(declare-fun |__gpio_get_value::__retval__@2| () (_ BitVec 32)) +(declare-fun |gpio_get_value::tmp@3| () (_ BitVec 32)) +(declare-fun |gpio_get_value::__retval__@2| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_check_state::tmp___1@3| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_check_state::tmp___2@3| () (_ BitVec 32)) +(declare-fun |__gpio_get_value::__CPAchecker_TMP_0@1| () (_ BitVec 32)) +(declare-fun |__gpio_get_value::__retval__@1| () (_ BitVec 32)) +(declare-fun |gpio_get_value::__retval__@1| () (_ BitVec 32)) +(declare-fun |gpio_get_value::tmp@1| () (_ BitVec 32)) +(declare-fun |gpio_get_value_cansleep::__CPAchecker_TMP_0@1| () (_ BitVec 32)) +(declare-fun |gpio_get_value_cansleep::__retval__@1| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_check_state::tmp@2| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_check_state::tmp___0@2| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_check_state::tmp___1@2| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_check_state::tmp___2@2| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_check_state::__cil_tmp21@3| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_check_state::__cil_tmp22@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_check_state::__cil_tmp23@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_check_state::tmp___3@3| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_check_state::tmp___3@4| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_check_state::__cil_tmp31@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_check_state::__cil_tmp32@3| () (_ BitVec 64)) +(declare-fun *int@3 () (Array (_ BitVec 64) (_ BitVec 32))) +(declare-fun *int@4 () (Array (_ BitVec 64) (_ BitVec 32))) +(declare-fun |gpio_keys_polled_check_state::__cil_tmp22@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_check_state::__cil_tmp23@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_check_state::__cil_tmp31@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_check_state::__cil_tmp32@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_check_state::tmp___3@2| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::i@5| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp69@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::button@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp70@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp71@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp72@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp73@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::bdata@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp77@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp78@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::tmp___0@3| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::tmp___0@4| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp79@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp80@3| () (_ BitVec 64)) +(declare-fun |dev_set_drvdata::__retval__@1| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp106@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp107@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp108@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp109@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp69@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp70@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp71@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp72@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp73@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp77@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp78@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp79@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp80@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::bdata@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::button@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::tmp___0@2| () (_ BitVec 32)) +(declare-fun |input_register_polled_device::__CPAchecker_TMP_0@1| () (_ BitVec 32)) +(declare-fun |input_register_polled_device::__retval__@1| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp82@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp83@3| () (_ BitVec 64)) +(declare-fun |gpio_request::__CPAchecker_TMP_0@3| () (_ BitVec 32)) +(declare-fun |gpio_request::__retval__@2| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp82@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp83@2| () (_ BitVec 64)) +(declare-fun |gpio_request::__CPAchecker_TMP_0@1| () (_ BitVec 32)) +(declare-fun |gpio_request::__retval__@1| () (_ BitVec 32)) +(declare-fun |gpio_direction_input::__CPAchecker_TMP_0@3| () (_ BitVec 32)) +(declare-fun |gpio_direction_input::__retval__@2| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::error@4| () (_ BitVec 32)) +(declare-fun |gpio_direction_input::__CPAchecker_TMP_0@1| () (_ BitVec 32)) +(declare-fun |gpio_direction_input::__retval__@1| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp88@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp89@3| () (_ BitVec 64)) +(declare-fun __VERIFIER_nondet_int@7 () (_ BitVec 32)) +(declare-fun |__gpio_cansleep::__CPAchecker_TMP_0@3| () (_ BitVec 32)) +(declare-fun |__gpio_cansleep::__retval__@2| () (_ BitVec 32)) +(declare-fun |gpio_cansleep::tmp@3| () (_ BitVec 32)) +(declare-fun |gpio_cansleep::__retval__@2| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp90@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp91@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp92@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp93@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp94@3| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp95@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp96@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp97@3| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp98@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp99@3| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp100@3| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp101@3| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp102@3| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp103@3| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp104@3| () (_ BitVec 32)) +(declare-fun *int@5 () (Array (_ BitVec 64) (_ BitVec 32))) +(declare-fun |gpio_keys_polled_probe::__cil_tmp128@3| () (_ BitVec 64)) +(declare-fun |kfree::p@2| () (_ BitVec 64)) +(declare-fun __nondet_value_void@2 () (_ BitVec 8)) +(declare-fun |dev_set_drvdata::__retval__@3| () (_ BitVec 32)) +(declare-fun __VERIFIER_nondet_pointer@1 () (_ BitVec 64)) +(declare-fun __nondet_value_void@1 () (_ BitVec 8)) +(declare-fun |external_alloc::__CPAchecker_TMP_0@1| () (_ BitVec 64)) +(declare-fun |external_alloc::__retval__@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp128@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::error@2| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::poll_dev@2| () (_ BitVec 64)) +(declare-fun |input_allocate_polled_device::__CPAchecker_TMP_0@1| () (_ BitVec 64)) +(declare-fun |input_allocate_polled_device::__retval__@1| () (_ BitVec 64)) +(declare-fun |kfree::p@1| () (_ BitVec 64)) +(declare-fun |__kmalloc::__CPAchecker_TMP_0@1| () (_ BitVec 64)) +(declare-fun |__kmalloc::__retval__@1| () (_ BitVec 64)) +(declare-fun |__kmalloc::size@1| () (_ BitVec 64)) +(declare-fun |dev_err::__retval__@1| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp25@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp26@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp27@2| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp28@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp29@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp30@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::bdev@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::tmp@2| () (_ BitVec 64)) +(declare-fun |kmalloc::__retval__@1| () (_ BitVec 64)) +(declare-fun |kmalloc::size@1| () (_ BitVec 64)) +(declare-fun |kmalloc::tmp___2@1| () (_ BitVec 64)) +(declare-fun |kzalloc::__retval__@1| () (_ BitVec 64)) +(declare-fun |kzalloc::size@1| () (_ BitVec 64)) +(declare-fun |kzalloc::tmp@1| () (_ BitVec 64)) +(declare-fun |ldv_malloc::__CPAchecker_TMP_0@1| () (_ BitVec 32)) +(declare-fun |ldv_malloc::__retval__@1| () (_ BitVec 64)) +(declare-fun |ldv_malloc::size@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp22@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp23@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp24@2| () (_ BitVec 32)) +(declare-fun res_gpio_keys_polled_probe_4@3 () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp100@1| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp100@2| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp101@1| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp101@2| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp102@1| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp102@2| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp103@1| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp103@2| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp104@1| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp104@2| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp106@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp107@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp108@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp109@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp112@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp112@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp113@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp113@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp114@1| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp114@2| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp115@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp115@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp116@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp116@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp117@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp117@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp118@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp118@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp119@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp119@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp120@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp120@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp121@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp121@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp128@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp16@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp17@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp18@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp19@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp20@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp21@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp22@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp23@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp24@1| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp25@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp26@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp27@1| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp28@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp29@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp30@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp33@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp33@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp34@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp34@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp35@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp35@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp36@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp36@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp37@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp37@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp38@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp38@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp39@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp39@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp40@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp40@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp41@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp41@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp42@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp42@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp43@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp43@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp44@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp44@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp45@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp45@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp46@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp46@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp47@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp47@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp48@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp48@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp49@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp49@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp50@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp50@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp51@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp51@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp52@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp52@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp53@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp53@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp54@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp54@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp55@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp55@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp56@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp56@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp57@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp57@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp58@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp58@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp59@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp59@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp60@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp60@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp61@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp61@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp62@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp62@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp63@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp63@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp64@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp64@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp65@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp65@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp66@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp66@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp67@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp67@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp68@1| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp68@2| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp69@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp70@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp71@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp72@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp73@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp77@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp78@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp79@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp80@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp82@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp83@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp88@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp88@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp89@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp89@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp90@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp90@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp91@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp91@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp92@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp92@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp93@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp93@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp94@1| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp94@2| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp95@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp95@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp96@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp96@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp97@1| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp97@2| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp98@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp98@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp99@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__cil_tmp99@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::__retval__@1| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::bdata@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::bdev@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::button@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::dev@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::error@1| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::i@1| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::i@2| () (_ BitVec 32)) +(declare-fun |gpio_keys_polled_probe::input@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::input@2| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::pdata@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::pdev@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::poll_dev@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::tmp@1| () (_ BitVec 64)) +(declare-fun |gpio_keys_polled_probe::tmp___0@1| () (_ BitVec 32)) +(declare-fun |main::ldv_s_gpio_keys_polled_driver_platform_driver@4| () (_ BitVec 32)) +(define-fun _8 () (_ BitVec 64) (_ bv0 64)) +(define-fun _9 () (_ BitVec 64) (_ bv600 64)) +(define-fun _10 () (_ BitVec 64) __ADDRESS_OF___this_module@) +(define-fun _11 () Bool (bvslt _8 _10)) +(define-fun _13 () (_ BitVec 64) (bvadd _9 _10)) +(define-fun _14 () Bool (bvslt _8 _13)) +(define-fun _15 () Bool (and _11 _14)) +(define-fun _16 () (_ BitVec 64) (_ bv160 64)) +(define-fun _17 () (_ BitVec 64) __ADDRESS_OF_gpio_keys_polled_driver@) +(define-fun _18 () Bool (bvslt _13 _17)) +(define-fun _20 () (_ BitVec 64) (bvadd _16 _17)) +(define-fun _21 () Bool (bvslt _8 _20)) +(define-fun _22 () Bool (and _18 _21)) +(define-fun _23 () Bool (and _15 _22)) +(define-fun _24 () (_ BitVec 64) (_ bv4 64)) +(define-fun _25 () (_ BitVec 32) (_ bv0 32)) +(define-fun _26 () (_ BitVec 32) res_gpio_keys_polled_probe_4@2) +(define-fun _27 () Bool (= _26 _25)) +(define-fun _28 () Bool (and _23 _27)) +(define-fun _29 () (_ BitVec 32) (_ bv1 32)) +(define-fun _30 () (_ BitVec 32) ldv_mutex@2) +(define-fun _31 () Bool (= _30 _29)) +(define-fun _32 () Bool (and _28 _31)) +(define-fun _33 () (_ BitVec 64) (_ bv8 64)) +(define-fun _34 () (_ BitVec 32) |main::ldv_s_gpio_keys_polled_driver_platform_driver@3|) +(define-fun _35 () Bool (= _34 _25)) +(define-fun _36 () Bool (and _32 _35)) +(define-fun _37 () (_ BitVec 32) __VERIFIER_nondet_int@2) +(define-fun _38 () (_ BitVec 32) |main::tmp___0@3|) +(define-fun _39 () Bool (= _37 _38)) +(define-fun _40 () Bool (and _36 _39)) +(define-fun _41 () Bool (= _38 _25)) +(define-fun _44 () Bool (not _41)) +(define-fun _45 () Bool (and _40 _44)) +(define-fun _55 () (_ BitVec 32) __VERIFIER_nondet_int@3) +(define-fun _56 () (_ BitVec 32) |main::tmp@3|) +(define-fun _57 () Bool (= _55 _56)) +(define-fun _58 () Bool (and _45 _57)) +(define-fun _59 () Bool (= _56 _25)) +(define-fun _61 () Bool (and _58 _59)) +(define-fun _62 () Bool (not _59)) +(define-fun _63 () Bool (and _58 _62)) +(define-fun _64 () Bool (and _35 _61)) +(define-fun _67 () (_ BitVec 64) |main::var_group1@2|) +(define-fun _68 () (_ BitVec 64) |gpio_keys_polled_probe::pdev@2|) +(define-fun _69 () Bool (= _67 _68)) +(define-fun _70 () Bool (and _64 _69)) +(define-fun _72 () (_ BitVec 64) (_ bv200 64)) +(define-fun _73 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp16@3|) +(define-fun _74 () Bool (= _73 _72)) +(define-fun _75 () Bool (and _70 _74)) +(define-fun _76 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp17@3|) +(define-fun _77 () Bool (= _68 _76)) +(define-fun _78 () Bool (and _75 _77)) +(define-fun _80 () (_ BitVec 64) (bvadd _73 _76)) +(define-fun _81 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp18@3|) +(define-fun _82 () Bool (= _80 _81)) +(define-fun _83 () Bool (and _78 _82)) +(define-fun _84 () (Array (_ BitVec 64) (_ BitVec 64)) |*(void)*@1|) +(define-fun _85 () (_ BitVec 64) (select _84 _81)) +(define-fun _86 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp19@3|) +(define-fun _87 () Bool (= _85 _86)) +(define-fun _88 () Bool (and _83 _87)) +(define-fun _89 () (_ BitVec 64) |gpio_keys_polled_probe::pdata@3|) +(define-fun _90 () Bool (= _86 _89)) +(define-fun _91 () Bool (and _88 _90)) +(define-fun _92 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp20@3|) +(define-fun _93 () Bool (= _68 _92)) +(define-fun _94 () Bool (and _91 _93)) +(define-fun _96 () (_ BitVec 64) (_ bv16 64)) +(define-fun _98 () (_ BitVec 64) (bvadd _96 _92)) +(define-fun _99 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp21@3|) +(define-fun _100 () Bool (= _98 _99)) +(define-fun _101 () Bool (and _94 _100)) +(define-fun _102 () (_ BitVec 64) |gpio_keys_polled_probe::dev@3|) +(define-fun _103 () Bool (= _99 _102)) +(define-fun _104 () Bool (and _101 _103)) +(define-fun _105 () Bool (= _89 _8)) +(define-fun _107 () Bool (and _104 _105)) +(define-fun _108 () Bool (not _105)) +(define-fun _109 () Bool (and _104 _108)) +(define-fun _110 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp22@3|) +(define-fun _111 () Bool (= _89 _110)) +(define-fun _112 () Bool (and _109 _111)) +(define-fun _114 () (_ BitVec 64) (_ bv12 64)) +(define-fun _116 () (_ BitVec 64) (bvadd _114 _110)) +(define-fun _117 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp23@3|) +(define-fun _118 () Bool (= _116 _117)) +(define-fun _119 () Bool (and _112 _118)) +(define-fun _120 () (Array (_ BitVec 64) (_ BitVec 32)) *int@1) +(define-fun _121 () (_ BitVec 32) (select _120 _117)) +(define-fun _122 () (_ BitVec 32) |gpio_keys_polled_probe::__cil_tmp24@3|) +(define-fun _123 () Bool (= _121 _122)) +(define-fun _124 () Bool (and _119 _123)) +(define-fun _125 () Bool (= _122 _25)) +(define-fun _127 () Bool (and _124 _125)) +(define-fun _128 () Bool (not _125)) +(define-fun _129 () Bool (and _124 _128)) +(define-fun _130 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp25@3|) +(define-fun _131 () Bool (= _89 _130)) +(define-fun _132 () Bool (and _129 _131)) +(define-fun _135 () (_ BitVec 64) (bvadd _33 _130)) +(define-fun _136 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp26@3|) +(define-fun _137 () Bool (= _135 _136)) +(define-fun _138 () Bool (and _132 _137)) +(define-fun _139 () (_ BitVec 32) (select _120 _136)) +(define-fun _140 () (_ BitVec 32) |gpio_keys_polled_probe::__cil_tmp27@3|) +(define-fun _141 () Bool (= _139 _140)) +(define-fun _142 () Bool (and _138 _141)) +(define-fun _143 () (_ BitVec 64) ((_ sign_extend 32) _140)) +(define-fun _144 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp28@3|) +(define-fun _145 () Bool (= _143 _144)) +(define-fun _146 () Bool (and _142 _145)) +(define-fun _149 () (_ BitVec 64) (bvshl _144 _24)) +(define-fun _150 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp29@3|) +(define-fun _151 () Bool (= _149 _150)) +(define-fun _152 () Bool (and _146 _151)) +(define-fun _153 () (_ BitVec 64) (_ bv24 64)) +(define-fun _154 () (_ BitVec 64) (bvadd _153 _150)) +(define-fun _155 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp30@3|) +(define-fun _156 () Bool (= _154 _155)) +(define-fun _157 () Bool (and _152 _156)) +(define-fun _158 () (_ BitVec 64) |kzalloc::size@2|) +(define-fun _159 () Bool (= _155 _158)) +(define-fun _160 () Bool (and _157 _159)) +(define-fun _161 () (_ BitVec 64) |kmalloc::size@2|) +(define-fun _162 () Bool (= _158 _161)) +(define-fun _163 () Bool (and _160 _162)) +(define-fun _164 () (_ BitVec 64) |__kmalloc::size@2|) +(define-fun _165 () Bool (= _161 _164)) +(define-fun _166 () Bool (and _163 _165)) +(define-fun _167 () (_ BitVec 64) |ldv_malloc::size@2|) +(define-fun _168 () Bool (= _164 _167)) +(define-fun _169 () Bool (and _166 _168)) +(define-fun _170 () (_ BitVec 32) __VERIFIER_nondet_int@4) +(define-fun _171 () (_ BitVec 32) |ldv_malloc::__CPAchecker_TMP_0@3|) +(define-fun _172 () Bool (= _170 _171)) +(define-fun _173 () Bool (and _169 _172)) +(define-fun _174 () Bool (= _171 _25)) +(define-fun _176 () Bool (and _173 _174)) +(define-fun _177 () Bool (not _174)) +(define-fun _178 () Bool (and _173 _177)) +(define-fun _179 () (_ BitVec 64) malloc@2) +(define-fun _180 () Bool (= _179 _8)) +(define-fun _181 () Bool (not _180)) +(define-fun _182 () (_ BitVec 64) |__ADDRESS_OF___VERIFIER_successful_alloc_*void#1@|) +(define-fun _183 () Bool (bvslt _8 _182)) +(define-fun _184 () (_ BitVec 64) (ite _181 _182 _8)) +(define-fun _185 () (_ BitVec 64) |ldv_malloc::res@3|) +(define-fun _186 () Bool (= _184 _185)) +(define-fun _187 () Bool (and _183 _186)) +(define-fun _188 () Bool (and _178 _187)) +(define-fun _189 () (_ BitVec 64) |ldv_is_err::ptr@2|) +(define-fun _190 () Bool (= _185 _189)) +(define-fun _191 () Bool (and _188 _190)) +(define-fun _192 () (_ BitVec 64) (_ bv18446744073709547521 64)) +(define-fun _193 () Bool (bvult _192 _189)) +(define-fun _194 () (_ BitVec 32) (ite _193 _29 _25)) +(define-fun _195 () (_ BitVec 64) ((_ sign_extend 32) _194)) +(define-fun _196 () (_ BitVec 64) |ldv_is_err::__retval__@2|) +(define-fun _197 () Bool (= _195 _196)) +(define-fun _198 () Bool (and _191 _197)) +(define-fun _199 () (_ BitVec 64) |ldv_malloc::__CPAchecker_TMP_1@3|) +(define-fun _200 () Bool (= _196 _199)) +(define-fun _201 () Bool (and _198 _200)) +(define-fun _202 () Bool (= _199 _8)) +(define-fun _204 () Bool (and _201 _202)) +(define-fun _207 () (_ BitVec 64) |ldv_malloc::__retval__@2|) +(define-fun _208 () Bool (= _185 _207)) +(define-fun _209 () Bool (and _204 _208)) +(define-fun _210 () Bool (= _207 _8)) +(define-fun _211 () Bool (and _176 _210)) +(define-fun _212 () (_ BitVec 64) |ldv_is_err::__retval__@1|) +(define-fun _213 () Bool (= _196 _212)) +(define-fun _214 () (_ BitVec 64) |ldv_is_err::ptr@1|) +(define-fun _215 () Bool (= _189 _214)) +(define-fun _216 () Bool (and _213 _215)) +(define-fun _217 () (_ BitVec 64) |ldv_malloc::__CPAchecker_TMP_1@1|) +(define-fun _218 () Bool (= _199 _217)) +(define-fun _219 () Bool (and _216 _218)) +(define-fun _220 () (_ BitVec 64) |ldv_malloc::res@1|) +(define-fun _221 () Bool (= _185 _220)) +(define-fun _222 () Bool (and _219 _221)) +(define-fun _223 () (_ BitVec 64) malloc@1) +(define-fun _224 () Bool (= _179 _223)) +(define-fun _225 () Bool (and _222 _224)) +(define-fun _226 () Bool (and _211 _225)) +(define-fun _227 () Bool (or _209 _226)) +(define-fun _228 () (_ BitVec 64) |__kmalloc::__CPAchecker_TMP_0@3|) +(define-fun _229 () Bool (= _207 _228)) +(define-fun _230 () Bool (and _227 _229)) +(define-fun _231 () (_ BitVec 64) |__kmalloc::__retval__@2|) +(define-fun _232 () Bool (= _228 _231)) +(define-fun _233 () Bool (and _230 _232)) +(define-fun _234 () (_ BitVec 64) |kmalloc::tmp___2@3|) +(define-fun _235 () Bool (= _231 _234)) +(define-fun _236 () Bool (and _233 _235)) +(define-fun _237 () (_ BitVec 64) |kmalloc::__retval__@2|) +(define-fun _238 () Bool (= _234 _237)) +(define-fun _239 () Bool (and _236 _238)) +(define-fun _240 () (_ BitVec 64) |kzalloc::tmp@3|) +(define-fun _241 () Bool (= _237 _240)) +(define-fun _242 () Bool (and _239 _241)) +(define-fun _243 () (_ BitVec 64) |kzalloc::__retval__@2|) +(define-fun _244 () Bool (= _240 _243)) +(define-fun _245 () Bool (and _242 _244)) +(define-fun _246 () (_ BitVec 64) |gpio_keys_polled_probe::tmp@3|) +(define-fun _247 () Bool (= _243 _246)) +(define-fun _248 () Bool (and _245 _247)) +(define-fun _249 () Bool (bvslt _20 _182)) +(define-fun _251 () (_ BitVec 64) (bvadd _153 _182)) +(define-fun _252 () Bool (bvslt _8 _251)) +(define-fun _254 () (_ BitVec 64) (bvadd _167 _182)) +(define-fun _255 () Bool (bvslt _8 _254)) +(define-fun _256 () (_ BitVec 64) |gpio_keys_polled_probe::bdev@3|) +(define-fun _257 () Bool (= _246 _256)) +(define-fun _258 () Bool (and _249 _252)) +(define-fun _259 () Bool (and _255 _258)) +(define-fun _260 () Bool (and _257 _259)) +(define-fun _261 () Bool (and _248 _260)) +(define-fun _262 () Bool (= _256 _8)) +(define-fun _264 () Bool (and _261 _262)) +(define-fun _265 () Bool (not _262)) +(define-fun _266 () Bool (and _261 _265)) +(define-fun _267 () (_ BitVec 64) __VERIFIER_nondet_pointer@2) +(define-fun _268 () (_ BitVec 64) |external_alloc::__CPAchecker_TMP_0@3|) +(define-fun _269 () Bool (= _267 _268)) +(define-fun _270 () Bool (and _266 _269)) +(define-fun _271 () (_ BitVec 64) |external_alloc::__retval__@2|) +(define-fun _272 () Bool (= _268 _271)) +(define-fun _273 () Bool (and _270 _272)) +(define-fun _274 () (_ BitVec 64) |input_allocate_polled_device::__CPAchecker_TMP_0@3|) +(define-fun _275 () Bool (= _271 _274)) +(define-fun _276 () Bool (and _273 _275)) +(define-fun _277 () (_ BitVec 64) |input_allocate_polled_device::__retval__@2|) +(define-fun _278 () Bool (= _274 _277)) +(define-fun _279 () Bool (and _276 _278)) +(define-fun _280 () (_ BitVec 64) |gpio_keys_polled_probe::poll_dev@3|) +(define-fun _281 () Bool (= _277 _280)) +(define-fun _282 () Bool (and _279 _281)) +(define-fun _283 () Bool (= _280 _8)) +(define-fun _285 () Bool (and _282 _283)) +(define-fun _286 () Bool (not _283)) +(define-fun _287 () Bool (and _282 _286)) +(define-fun _288 () (Array (_ BitVec 64) (_ BitVec 64)) |*(void)*@2|) +(define-fun _289 () (Array (_ BitVec 64) (_ BitVec 64)) (store _84 _280 _256)) +(define-fun _290 () Bool (= _288 _289)) +(define-fun _291 () Bool (and _287 _290)) +(define-fun _292 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp33@3|) +(define-fun _293 () Bool (= _280 _292)) +(define-fun _294 () Bool (and _291 _293)) +(define-fun _297 () (_ BitVec 64) (bvadd _153 _292)) +(define-fun _298 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp34@3|) +(define-fun _299 () Bool (= _297 _298)) +(define-fun _300 () Bool (and _294 _299)) +(define-fun _301 () (_ BitVec 64) __ADDRESS_OF_gpio_keys_polled_poll@) +(define-fun _302 () Bool (bvslt _254 _301)) +(define-fun _303 () Bool (bvslt _251 _301)) +(define-fun _305 () (_ BitVec 64) (bvadd _33 _301)) +(define-fun _306 () Bool (bvslt _8 _305)) +(define-fun _307 () (Array (_ BitVec 64) (_ BitVec 64)) |*(Return_type:_[void],_Parameters:_1,_Parameter_1_type:_[(struct_input_polled_dev)*],_VarArgs:_false)*@1|) +(define-fun _308 () (Array (_ BitVec 64) (_ BitVec 64)) |*(Return_type:_[void],_Parameters:_1,_Parameter_1_type:_[(struct_input_polled_dev)*],_VarArgs:_false)*@2|) +(define-fun _309 () (Array (_ BitVec 64) (_ BitVec 64)) (store _307 _298 _301)) +(define-fun _310 () Bool (= _308 _309)) +(define-fun _311 () Bool (and _302 _303)) +(define-fun _312 () Bool (and _306 _311)) +(define-fun _313 () Bool (and _310 _312)) +(define-fun _314 () Bool (and _300 _313)) +(define-fun _315 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp35@3|) +(define-fun _316 () Bool (= _280 _315)) +(define-fun _317 () Bool (and _314 _316)) +(define-fun _319 () (_ BitVec 64) (_ bv32 64)) +(define-fun _321 () (_ BitVec 64) (bvadd _319 _315)) +(define-fun _322 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp36@3|) +(define-fun _323 () Bool (= _321 _322)) +(define-fun _324 () Bool (and _317 _323)) +(define-fun _325 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp37@3|) +(define-fun _326 () Bool (= _89 _325)) +(define-fun _327 () Bool (and _324 _326)) +(define-fun _329 () (_ BitVec 64) (bvadd _114 _325)) +(define-fun _330 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp38@3|) +(define-fun _331 () Bool (= _329 _330)) +(define-fun _332 () Bool (and _327 _331)) +(define-fun _333 () (_ BitVec 32) (select _120 _330)) +(define-fun _334 () (Array (_ BitVec 64) (_ BitVec 32)) *int@2) +(define-fun _335 () (Array (_ BitVec 64) (_ BitVec 32)) (store _120 _322 _333)) +(define-fun _336 () Bool (= _334 _335)) +(define-fun _337 () Bool (and _332 _336)) +(define-fun _338 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp39@3|) +(define-fun _339 () Bool (= _280 _338)) +(define-fun _340 () Bool (and _337 _339)) +(define-fun _342 () (_ BitVec 64) (bvadd _33 _338)) +(define-fun _343 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp40@3|) +(define-fun _344 () Bool (= _342 _343)) +(define-fun _345 () Bool (and _340 _344)) +(define-fun _346 () (_ BitVec 64) __ADDRESS_OF_gpio_keys_polled_open@) +(define-fun _347 () Bool (bvslt _305 _346)) +(define-fun _349 () (_ BitVec 64) (bvadd _33 _346)) +(define-fun _350 () Bool (bvslt _8 _349)) +(define-fun _351 () (Array (_ BitVec 64) (_ BitVec 64)) |*(Return_type:_[void],_Parameters:_1,_Parameter_1_type:_[(struct_input_polled_dev)*],_VarArgs:_false)*@3|) +(define-fun _352 () (Array (_ BitVec 64) (_ BitVec 64)) (store _308 _343 _346)) +(define-fun _353 () Bool (= _351 _352)) +(define-fun _354 () Bool (and _347 _350)) +(define-fun _355 () Bool (and _353 _354)) +(define-fun _356 () Bool (and _345 _355)) +(define-fun _357 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp41@3|) +(define-fun _358 () Bool (= _280 _357)) +(define-fun _359 () Bool (and _356 _358)) +(define-fun _361 () (_ BitVec 64) (bvadd _96 _357)) +(define-fun _362 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp42@3|) +(define-fun _363 () Bool (= _361 _362)) +(define-fun _364 () Bool (and _359 _363)) +(define-fun _365 () (_ BitVec 64) __ADDRESS_OF_gpio_keys_polled_close@) +(define-fun _366 () Bool (bvslt _349 _365)) +(define-fun _368 () (_ BitVec 64) (bvadd _33 _365)) +(define-fun _369 () Bool (bvslt _8 _368)) +(define-fun _370 () (Array (_ BitVec 64) (_ BitVec 64)) |*(Return_type:_[void],_Parameters:_1,_Parameter_1_type:_[(struct_input_polled_dev)*],_VarArgs:_false)*@4|) +(define-fun _371 () (Array (_ BitVec 64) (_ BitVec 64)) (store _351 _362 _365)) +(define-fun _372 () Bool (= _370 _371)) +(define-fun _373 () Bool (and _366 _369)) +(define-fun _374 () Bool (and _372 _373)) +(define-fun _375 () Bool (and _364 _374)) +(define-fun _376 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp43@3|) +(define-fun _377 () Bool (= _280 _376)) +(define-fun _378 () Bool (and _375 _377)) +(define-fun _380 () (_ BitVec 64) (_ bv48 64)) +(define-fun _382 () (_ BitVec 64) (bvadd _380 _376)) +(define-fun _383 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp44@3|) +(define-fun _384 () Bool (= _382 _383)) +(define-fun _385 () Bool (and _378 _384)) +(define-fun _386 () (Array (_ BitVec 64) (_ BitVec 64)) |*(struct_input_dev)*@1|) +(define-fun _387 () (_ BitVec 64) (select _386 _383)) +(define-fun _388 () (_ BitVec 64) |gpio_keys_polled_probe::input@3|) +(define-fun _389 () Bool (= _387 _388)) +(define-fun _390 () Bool (and _385 _389)) +(define-fun _391 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp45@3|) +(define-fun _392 () Bool (= _391 _8)) +(define-fun _393 () Bool (and _390 _392)) +(define-fun _395 () (_ BitVec 64) (_ bv40 64)) +(define-fun _396 () (_ BitVec 64) (bvadd _395 _391)) +(define-fun _397 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp46@3|) +(define-fun _398 () Bool (= _396 _397)) +(define-fun _399 () Bool (and _393 _398)) +(define-fun _400 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp47@3|) +(define-fun _401 () Bool (= _388 _400)) +(define-fun _402 () Bool (and _399 _401)) +(define-fun _404 () (_ BitVec 64) (bvadd _397 _400)) +(define-fun _405 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp48@3|) +(define-fun _406 () Bool (= _404 _405)) +(define-fun _407 () Bool (and _402 _406)) +(define-fun _408 () (_ BitVec 64) (_ bv2 64)) +(define-fun _409 () (Array (_ BitVec 64) (_ BitVec 64)) *long_int@1) +(define-fun _410 () (Array (_ BitVec 64) (_ BitVec 64)) *long_int@2) +(define-fun _411 () (Array (_ BitVec 64) (_ BitVec 64)) (store _409 _405 _408)) +(define-fun _412 () Bool (= _410 _411)) +(define-fun _413 () Bool (and _407 _412)) +(define-fun _414 () (Array (_ BitVec 64) (_ BitVec 64)) |*(char)*@1|) +(define-fun _415 () (_ BitVec 64) (select _414 _68)) +(define-fun _416 () (Array (_ BitVec 64) (_ BitVec 64)) |*(char)*@2|) +(define-fun _417 () (Array (_ BitVec 64) (_ BitVec 64)) (store _414 _388 _415)) +(define-fun _418 () Bool (= _416 _417)) +(define-fun _419 () Bool (and _413 _418)) +(define-fun _420 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp49@3|) +(define-fun _421 () Bool (= _388 _420)) +(define-fun _422 () Bool (and _419 _421)) +(define-fun _424 () (_ BitVec 64) (bvadd _33 _420)) +(define-fun _425 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp50@3|) +(define-fun _426 () Bool (= _424 _425)) +(define-fun _427 () Bool (and _422 _426)) +(define-fun _428 () Int 0) +(define-fun _429 () (_ BitVec 64) (__string__ _428)) +(define-fun _430 () (Array (_ BitVec 64) (_ BitVec 64)) |*(char)*@3|) +(define-fun _431 () (Array (_ BitVec 64) (_ BitVec 64)) (store _416 _425 _429)) +(define-fun _432 () Bool (= _430 _431)) +(define-fun _433 () Bool (and _427 _432)) +(define-fun _434 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp51@3|) +(define-fun _435 () Bool (= _388 _434)) +(define-fun _436 () Bool (and _433 _435)) +(define-fun _438 () (_ BitVec 64) (_ bv648 64)) +(define-fun _440 () (_ BitVec 64) (bvadd _438 _434)) +(define-fun _441 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp52@3|) +(define-fun _442 () Bool (= _440 _441)) +(define-fun _443 () Bool (and _436 _442)) +(define-fun _444 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp53@3|) +(define-fun _445 () Bool (= _68 _444)) +(define-fun _446 () Bool (and _443 _445)) +(define-fun _448 () (_ BitVec 64) (bvadd _96 _444)) +(define-fun _449 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp54@3|) +(define-fun _450 () Bool (= _448 _449)) +(define-fun _451 () Bool (and _446 _450)) +(define-fun _452 () (Array (_ BitVec 64) (_ BitVec 64)) |*(struct_device)*@1|) +(define-fun _453 () (Array (_ BitVec 64) (_ BitVec 64)) |*(struct_device)*@2|) +(define-fun _454 () (Array (_ BitVec 64) (_ BitVec 64)) (store _452 _441 _449)) +(define-fun _455 () Bool (= _453 _454)) +(define-fun _456 () Bool (and _451 _455)) +(define-fun _457 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp55@3|) +(define-fun _458 () Bool (= _388 _457)) +(define-fun _459 () Bool (and _456 _458)) +(define-fun _461 () (_ BitVec 64) (bvadd _153 _457)) +(define-fun _462 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp56@3|) +(define-fun _463 () Bool (= _461 _462)) +(define-fun _464 () Bool (and _459 _463)) +(define-fun _466 () (_ BitVec 16) (_ bv25 16)) +(define-fun _467 () (Array (_ BitVec 64) (_ BitVec 16)) *short_int@1) +(define-fun _468 () (Array (_ BitVec 64) (_ BitVec 16)) *short_int@2) +(define-fun _469 () (Array (_ BitVec 64) (_ BitVec 16)) (store _467 _462 _466)) +(define-fun _470 () Bool (= _468 _469)) +(define-fun _471 () Bool (and _464 _470)) +(define-fun _473 () (_ BitVec 64) (_ bv26 64)) +(define-fun _474 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp57@3|) +(define-fun _475 () Bool (= _474 _473)) +(define-fun _476 () Bool (and _471 _475)) +(define-fun _477 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp58@3|) +(define-fun _478 () Bool (= _388 _477)) +(define-fun _479 () Bool (and _476 _478)) +(define-fun _481 () (_ BitVec 64) (bvadd _474 _477)) +(define-fun _482 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp59@3|) +(define-fun _483 () Bool (= _481 _482)) +(define-fun _484 () Bool (and _479 _483)) +(define-fun _485 () (_ BitVec 16) (_ bv1 16)) +(define-fun _486 () (Array (_ BitVec 64) (_ BitVec 16)) *short_int@3) +(define-fun _487 () (Array (_ BitVec 64) (_ BitVec 16)) (store _468 _482 _485)) +(define-fun _488 () Bool (= _486 _487)) +(define-fun _489 () Bool (and _484 _488)) +(define-fun _491 () (_ BitVec 64) (_ bv28 64)) +(define-fun _492 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp60@3|) +(define-fun _493 () Bool (= _492 _491)) +(define-fun _494 () Bool (and _489 _493)) +(define-fun _495 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp61@3|) +(define-fun _496 () Bool (= _388 _495)) +(define-fun _497 () Bool (and _494 _496)) +(define-fun _499 () (_ BitVec 64) (bvadd _492 _495)) +(define-fun _500 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp62@3|) +(define-fun _501 () Bool (= _499 _500)) +(define-fun _502 () Bool (and _497 _501)) +(define-fun _503 () (Array (_ BitVec 64) (_ BitVec 16)) *short_int@4) +(define-fun _504 () (Array (_ BitVec 64) (_ BitVec 16)) (store _486 _500 _485)) +(define-fun _505 () Bool (= _503 _504)) +(define-fun _506 () Bool (and _502 _505)) +(define-fun _508 () (_ BitVec 64) (_ bv30 64)) +(define-fun _509 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp63@3|) +(define-fun _510 () Bool (= _509 _508)) +(define-fun _511 () Bool (and _506 _510)) +(define-fun _512 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp64@3|) +(define-fun _513 () Bool (= _388 _512)) +(define-fun _514 () Bool (and _511 _513)) +(define-fun _516 () (_ BitVec 64) (bvadd _509 _512)) +(define-fun _517 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp65@3|) +(define-fun _518 () Bool (= _516 _517)) +(define-fun _519 () Bool (and _514 _518)) +(define-fun _521 () (_ BitVec 16) (_ bv256 16)) +(define-fun _522 () (Array (_ BitVec 64) (_ BitVec 16)) *short_int@5) +(define-fun _523 () (Array (_ BitVec 64) (_ BitVec 16)) (store _503 _517 _521)) +(define-fun _524 () Bool (= _522 _523)) +(define-fun _525 () Bool (and _519 _524)) +(define-fun _526 () (_ BitVec 32) |gpio_keys_polled_probe::i@3|) +(define-fun _527 () Bool (= _526 _25)) +(define-fun _528 () Bool (and _525 _527)) +(define-fun _529 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp66@3|) +(define-fun _530 () Bool (= _89 _529)) +(define-fun _531 () Bool (and _528 _530)) +(define-fun _533 () (_ BitVec 64) (bvadd _33 _529)) +(define-fun _534 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp67@3|) +(define-fun _535 () Bool (= _533 _534)) +(define-fun _536 () Bool (and _531 _535)) +(define-fun _537 () (_ BitVec 32) (select _334 _534)) +(define-fun _538 () (_ BitVec 32) |gpio_keys_polled_probe::__cil_tmp68@3|) +(define-fun _539 () Bool (= _537 _538)) +(define-fun _540 () Bool (and _536 _539)) +(define-fun _541 () Bool (bvslt _526 _538)) +(define-fun _543 () Bool (and _540 _541)) +(define-fun _544 () Bool (not _541)) +(define-fun _545 () Bool (and _540 _544)) +(define-fun _546 () (Array (_ BitVec 64) (_ BitVec 64)) |*(struct_input_polled_dev)*@1|) +(define-fun _547 () (Array (_ BitVec 64) (_ BitVec 64)) |*(struct_input_polled_dev)*@2|) +(define-fun _548 () (Array (_ BitVec 64) (_ BitVec 64)) (store _546 _256 _280)) +(define-fun _549 () Bool (= _547 _548)) +(define-fun _550 () Bool (and _545 _549)) +(define-fun _551 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp106@3|) +(define-fun _552 () Bool (= _256 _551)) +(define-fun _553 () Bool (and _550 _552)) +(define-fun _555 () (_ BitVec 64) (bvadd _33 _551)) +(define-fun _556 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp107@3|) +(define-fun _557 () Bool (= _555 _556)) +(define-fun _558 () Bool (and _553 _557)) +(define-fun _559 () (Array (_ BitVec 64) (_ BitVec 64)) |*(struct_device)*@3|) +(define-fun _560 () (Array (_ BitVec 64) (_ BitVec 64)) (store _453 _556 _102)) +(define-fun _561 () Bool (= _559 _560)) +(define-fun _562 () Bool (and _558 _561)) +(define-fun _563 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp108@3|) +(define-fun _564 () Bool (= _256 _563)) +(define-fun _565 () Bool (and _562 _564)) +(define-fun _567 () (_ BitVec 64) (bvadd _96 _563)) +(define-fun _568 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp109@3|) +(define-fun _569 () Bool (= _567 _568)) +(define-fun _570 () Bool (and _565 _569)) +(define-fun _571 () (Array (_ BitVec 64) (_ BitVec 64)) |*(struct_gpio_keys_platform_data)*@1|) +(define-fun _572 () (Array (_ BitVec 64) (_ BitVec 64)) |*(struct_gpio_keys_platform_data)*@2|) +(define-fun _573 () (Array (_ BitVec 64) (_ BitVec 64)) (store _571 _568 _89)) +(define-fun _574 () Bool (= _572 _573)) +(define-fun _575 () Bool (and _570 _574)) +(define-fun _576 () (_ BitVec 32) |dev_set_drvdata::__CPAchecker_TMP_0@1|) +(define-fun _577 () (_ BitVec 32) |dev_set_drvdata::__retval__@2|) +(define-fun _578 () Bool (= _576 _577)) +(define-fun _579 () Bool (and _575 _578)) +(define-fun _580 () (_ BitVec 32) __VERIFIER_nondet_int@5) +(define-fun _581 () (_ BitVec 32) |input_register_polled_device::__CPAchecker_TMP_0@3|) +(define-fun _582 () Bool (= _580 _581)) +(define-fun _583 () Bool (and _579 _582)) +(define-fun _584 () (_ BitVec 32) |input_register_polled_device::__retval__@2|) +(define-fun _585 () Bool (= _581 _584)) +(define-fun _586 () Bool (and _583 _585)) +(define-fun _587 () (_ BitVec 32) |gpio_keys_polled_probe::error@3|) +(define-fun _588 () Bool (= _584 _587)) +(define-fun _589 () Bool (and _586 _588)) +(define-fun _590 () Bool (= _587 _25)) +(define-fun _592 () Bool (and _589 _590)) +(define-fun _593 () Bool (not _590)) +(define-fun _594 () Bool (and _589 _593)) +(define-fun _595 () (_ BitVec 32) |dev_err::__CPAchecker_TMP_0@1|) +(define-fun _596 () (_ BitVec 32) |dev_err::__retval__@2|) +(define-fun _597 () Bool (= _595 _596)) +(define-fun _598 () Bool (and _594 _597)) +(define-fun _599 () (_ BitVec 32) |gpio_keys_polled_probe::i@4|) +(define-fun _600 () Bool (= _599 _25)) +(define-fun _601 () Bool (and _592 _600)) +(define-fun _602 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp112@3|) +(define-fun _603 () Bool (= _89 _602)) +(define-fun _604 () Bool (and _601 _603)) +(define-fun _606 () (_ BitVec 64) (bvadd _33 _602)) +(define-fun _607 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp113@3|) +(define-fun _608 () Bool (= _606 _607)) +(define-fun _609 () Bool (and _604 _608)) +(define-fun _610 () (_ BitVec 32) (select _334 _607)) +(define-fun _611 () (_ BitVec 32) |gpio_keys_polled_probe::__cil_tmp114@3|) +(define-fun _612 () Bool (= _610 _611)) +(define-fun _613 () Bool (and _609 _612)) +(define-fun _614 () Bool (bvslt _599 _611)) +(define-fun _616 () Bool (and _613 _614)) +(define-fun _617 () Bool (not _614)) +(define-fun _618 () Bool (and _613 _617)) +(define-fun _619 () (_ BitVec 32) |gpio_keys_polled_probe::__retval__@2|) +(define-fun _620 () Bool (= _619 _25)) +(define-fun _621 () Bool (and _618 _620)) +(define-fun _622 () (Array (_ BitVec 64) (_ BitVec 64)) |*(struct_gpio_keys_button)*@1|) +(define-fun _623 () (_ BitVec 64) (select _622 _89)) +(define-fun _624 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp115@3|) +(define-fun _625 () Bool (= _623 _624)) +(define-fun _626 () Bool (and _616 _625)) +(define-fun _627 () (_ BitVec 64) ((_ sign_extend 32) _599)) +(define-fun _629 () (_ BitVec 64) (bvmul _380 _627)) +(define-fun _630 () (_ BitVec 64) (bvadd _624 _629)) +(define-fun _631 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp116@3|) +(define-fun _632 () Bool (= _630 _631)) +(define-fun _633 () Bool (and _626 _632)) +(define-fun _636 () (_ BitVec 64) (bvshl _627 _24)) +(define-fun _637 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp117@3|) +(define-fun _638 () Bool (= _636 _637)) +(define-fun _639 () Bool (and _633 _638)) +(define-fun _640 () (_ BitVec 64) (bvadd _153 _637)) +(define-fun _641 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp118@3|) +(define-fun _642 () Bool (= _640 _641)) +(define-fun _643 () Bool (and _639 _642)) +(define-fun _644 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp119@3|) +(define-fun _645 () Bool (= _256 _644)) +(define-fun _646 () Bool (and _643 _645)) +(define-fun _648 () (_ BitVec 64) (bvadd _641 _644)) +(define-fun _649 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp120@3|) +(define-fun _650 () Bool (= _648 _649)) +(define-fun _651 () Bool (and _646 _650)) +(define-fun _652 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp121@3|) +(define-fun _653 () Bool (= _649 _652)) +(define-fun _654 () Bool (and _651 _653)) +(define-fun _655 () (_ BitVec 64) |gpio_keys_polled_check_state::button@2|) +(define-fun _656 () Bool (= _631 _655)) +(define-fun _657 () (_ BitVec 64) |gpio_keys_polled_check_state::bdata@2|) +(define-fun _658 () Bool (= _652 _657)) +(define-fun _659 () Bool (and _656 _658)) +(define-fun _660 () Bool (and _654 _659)) +(define-fun _661 () (_ BitVec 64) |gpio_keys_polled_check_state::__cil_tmp11@3|) +(define-fun _662 () Bool (= _657 _661)) +(define-fun _663 () Bool (and _660 _662)) +(define-fun _665 () (_ BitVec 64) (bvadd _114 _661)) +(define-fun _666 () (_ BitVec 64) |gpio_keys_polled_check_state::__cil_tmp12@3|) +(define-fun _667 () Bool (= _665 _666)) +(define-fun _668 () Bool (and _663 _667)) +(define-fun _669 () (_ BitVec 32) (select _334 _666)) +(define-fun _670 () Bool (= _669 _25)) +(define-fun _672 () Bool (and _668 _670)) +(define-fun _673 () Bool (not _670)) +(define-fun _674 () Bool (and _668 _673)) +(define-fun _675 () (_ BitVec 32) __VERIFIER_nondet_int@6) +(define-fun _676 () (_ BitVec 32) |gpio_get_value_cansleep::__CPAchecker_TMP_0@3|) +(define-fun _677 () Bool (= _675 _676)) +(define-fun _678 () Bool (and _674 _677)) +(define-fun _679 () (_ BitVec 32) |gpio_get_value_cansleep::__retval__@2|) +(define-fun _680 () Bool (= _676 _679)) +(define-fun _681 () Bool (and _678 _680)) +(define-fun _682 () (_ BitVec 32) |gpio_keys_polled_check_state::tmp@3|) +(define-fun _683 () Bool (= _679 _682)) +(define-fun _684 () Bool (and _681 _683)) +(define-fun _685 () Bool (= _682 _25)) +(define-fun _687 () Bool (and _684 _685)) +(define-fun _688 () Bool (not _685)) +(define-fun _689 () Bool (and _684 _688)) +(define-fun _690 () (_ BitVec 32) |gpio_keys_polled_check_state::tmp___0@3|) +(define-fun _691 () Bool (= _690 _29)) +(define-fun _692 () Bool (and _689 _691)) +(define-fun _693 () Bool (= _690 _25)) +(define-fun _694 () Bool (and _687 _693)) +(define-fun _695 () Bool (or _692 _694)) +(define-fun _696 () (_ BitVec 32) |gpio_keys_polled_check_state::state@3|) +(define-fun _697 () Bool (= _690 _696)) +(define-fun _698 () Bool (and _695 _697)) +(define-fun _699 () (_ BitVec 32) |__gpio_get_value::__CPAchecker_TMP_0@3|) +(define-fun _700 () Bool (= _675 _699)) +(define-fun _701 () Bool (and _672 _700)) +(define-fun _702 () (_ BitVec 32) |__gpio_get_value::__retval__@2|) +(define-fun _703 () Bool (= _699 _702)) +(define-fun _704 () Bool (and _701 _703)) +(define-fun _705 () (_ BitVec 32) |gpio_get_value::tmp@3|) +(define-fun _706 () Bool (= _702 _705)) +(define-fun _707 () Bool (and _704 _706)) +(define-fun _708 () (_ BitVec 32) |gpio_get_value::__retval__@2|) +(define-fun _709 () Bool (= _705 _708)) +(define-fun _710 () Bool (and _707 _709)) +(define-fun _711 () (_ BitVec 32) |gpio_keys_polled_check_state::tmp___1@3|) +(define-fun _712 () Bool (= _708 _711)) +(define-fun _713 () Bool (and _710 _712)) +(define-fun _714 () Bool (= _711 _25)) +(define-fun _716 () Bool (and _713 _714)) +(define-fun _717 () Bool (not _714)) +(define-fun _718 () Bool (and _713 _717)) +(define-fun _719 () (_ BitVec 32) |gpio_keys_polled_check_state::tmp___2@3|) +(define-fun _720 () Bool (= _719 _29)) +(define-fun _721 () Bool (and _718 _720)) +(define-fun _722 () Bool (= _719 _25)) +(define-fun _723 () Bool (and _716 _722)) +(define-fun _724 () Bool (or _721 _723)) +(define-fun _725 () Bool (= _696 _719)) +(define-fun _726 () Bool (and _724 _725)) +(define-fun _727 () (_ BitVec 32) |__gpio_get_value::__CPAchecker_TMP_0@1|) +(define-fun _728 () Bool (= _699 _727)) +(define-fun _729 () (_ BitVec 32) |__gpio_get_value::__retval__@1|) +(define-fun _730 () Bool (= _702 _729)) +(define-fun _731 () Bool (and _728 _730)) +(define-fun _732 () (_ BitVec 32) |gpio_get_value::__retval__@1|) +(define-fun _733 () Bool (= _708 _732)) +(define-fun _734 () Bool (and _731 _733)) +(define-fun _735 () (_ BitVec 32) |gpio_get_value::tmp@1|) +(define-fun _736 () Bool (= _705 _735)) +(define-fun _737 () Bool (and _734 _736)) +(define-fun _738 () (_ BitVec 32) |gpio_get_value_cansleep::__CPAchecker_TMP_0@1|) +(define-fun _739 () Bool (= _676 _738)) +(define-fun _740 () (_ BitVec 32) |gpio_get_value_cansleep::__retval__@1|) +(define-fun _741 () Bool (= _679 _740)) +(define-fun _742 () Bool (and _739 _741)) +(define-fun _743 () (_ BitVec 32) |gpio_keys_polled_check_state::tmp@2|) +(define-fun _744 () Bool (= _682 _743)) +(define-fun _745 () Bool (and _742 _744)) +(define-fun _746 () (_ BitVec 32) |gpio_keys_polled_check_state::tmp___0@2|) +(define-fun _747 () Bool (= _690 _746)) +(define-fun _748 () Bool (and _745 _747)) +(define-fun _749 () (_ BitVec 32) |gpio_keys_polled_check_state::tmp___1@2|) +(define-fun _750 () Bool (= _711 _749)) +(define-fun _751 () Bool (and _737 _750)) +(define-fun _752 () (_ BitVec 32) |gpio_keys_polled_check_state::tmp___2@2|) +(define-fun _753 () Bool (= _719 _752)) +(define-fun _754 () Bool (and _751 _753)) +(define-fun _755 () Bool (and _726 _748)) +(define-fun _756 () Bool (and _698 _754)) +(define-fun _757 () Bool (or _755 _756)) +(define-fun _758 () (_ BitVec 32) (select _334 _657)) +(define-fun _759 () (_ BitVec 32) |gpio_keys_polled_check_state::__cil_tmp21@3|) +(define-fun _760 () Bool (= _758 _759)) +(define-fun _761 () Bool (and _757 _760)) +(define-fun _762 () Bool (= _696 _759)) +(define-fun _763 () Bool (not _762)) +(define-fun _765 () Bool (and _761 _763)) +(define-fun _766 () Bool (and _761 _762)) +(define-fun _767 () (_ BitVec 64) |gpio_keys_polled_check_state::__cil_tmp22@3|) +(define-fun _768 () Bool (= _655 _767)) +(define-fun _769 () Bool (and _765 _768)) +(define-fun _771 () (_ BitVec 64) (bvadd _153 _767)) +(define-fun _772 () (_ BitVec 64) |gpio_keys_polled_check_state::__cil_tmp23@3|) +(define-fun _773 () Bool (= _771 _772)) +(define-fun _774 () Bool (and _769 _773)) +(define-fun _775 () (_ BitVec 32) (select _334 _772)) +(define-fun _776 () (_ BitVec 32) |gpio_keys_polled_check_state::tmp___3@3|) +(define-fun _777 () Bool (= _775 _776)) +(define-fun _778 () Bool (and _774 _777)) +(define-fun _779 () Bool (= _776 _25)) +(define-fun _781 () Bool (and _778 _779)) +(define-fun _782 () Bool (not _779)) +(define-fun _783 () Bool (and _778 _782)) +(define-fun _784 () (_ BitVec 32) |gpio_keys_polled_check_state::tmp___3@4|) +(define-fun _785 () Bool (= _784 _29)) +(define-fun _786 () Bool (and _781 _785)) +(define-fun _787 () Bool (= _776 _784)) +(define-fun _788 () Bool (and _783 _787)) +(define-fun _789 () Bool (or _786 _788)) +(define-fun _790 () (_ BitVec 64) |gpio_keys_polled_check_state::__cil_tmp31@3|) +(define-fun _791 () Bool (= _657 _790)) +(define-fun _792 () Bool (and _789 _791)) +(define-fun _795 () (_ BitVec 64) (bvadd _24 _790)) +(define-fun _796 () (_ BitVec 64) |gpio_keys_polled_check_state::__cil_tmp32@3|) +(define-fun _797 () Bool (= _795 _796)) +(define-fun _798 () Bool (and _792 _797)) +(define-fun _799 () (Array (_ BitVec 64) (_ BitVec 32)) *int@3) +(define-fun _800 () (Array (_ BitVec 64) (_ BitVec 32)) (store _334 _796 _25)) +(define-fun _801 () Bool (= _799 _800)) +(define-fun _802 () Bool (and _798 _801)) +(define-fun _803 () (Array (_ BitVec 64) (_ BitVec 32)) *int@4) +(define-fun _804 () (Array (_ BitVec 64) (_ BitVec 32)) (store _799 _657 _696)) +(define-fun _805 () Bool (= _803 _804)) +(define-fun _806 () Bool (and _802 _805)) +(define-fun _807 () Bool (= _334 _803)) +(define-fun _808 () (_ BitVec 64) |gpio_keys_polled_check_state::__cil_tmp22@2|) +(define-fun _809 () Bool (= _767 _808)) +(define-fun _810 () Bool (and _807 _809)) +(define-fun _811 () (_ BitVec 64) |gpio_keys_polled_check_state::__cil_tmp23@2|) +(define-fun _812 () Bool (= _772 _811)) +(define-fun _813 () Bool (and _810 _812)) +(define-fun _814 () (_ BitVec 64) |gpio_keys_polled_check_state::__cil_tmp31@2|) +(define-fun _815 () Bool (= _790 _814)) +(define-fun _816 () Bool (and _813 _815)) +(define-fun _817 () (_ BitVec 64) |gpio_keys_polled_check_state::__cil_tmp32@2|) +(define-fun _818 () Bool (= _796 _817)) +(define-fun _819 () Bool (and _816 _818)) +(define-fun _820 () (_ BitVec 32) |gpio_keys_polled_check_state::tmp___3@2|) +(define-fun _821 () Bool (= _784 _820)) +(define-fun _822 () Bool (and _819 _821)) +(define-fun _823 () Bool (and _766 _822)) +(define-fun _824 () Bool (or _806 _823)) +(define-fun _826 () (_ BitVec 32) (bvadd _29 _599)) +(define-fun _827 () (_ BitVec 32) |gpio_keys_polled_probe::i@5|) +(define-fun _828 () Bool (= _826 _827)) +(define-fun _829 () Bool (and _824 _828)) +(define-fun _830 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp69@3|) +(define-fun _831 () Bool (= _623 _830)) +(define-fun _832 () Bool (and _543 _831)) +(define-fun _833 () (_ BitVec 64) ((_ sign_extend 32) _526)) +(define-fun _835 () (_ BitVec 64) (bvmul _380 _833)) +(define-fun _836 () (_ BitVec 64) (bvadd _830 _835)) +(define-fun _837 () (_ BitVec 64) |gpio_keys_polled_probe::button@3|) +(define-fun _838 () Bool (= _836 _837)) +(define-fun _839 () Bool (and _832 _838)) +(define-fun _842 () (_ BitVec 64) (bvshl _833 _24)) +(define-fun _843 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp70@3|) +(define-fun _844 () Bool (= _842 _843)) +(define-fun _845 () Bool (and _839 _844)) +(define-fun _846 () (_ BitVec 64) (bvadd _153 _843)) +(define-fun _847 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp71@3|) +(define-fun _848 () Bool (= _846 _847)) +(define-fun _849 () Bool (and _845 _848)) +(define-fun _850 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp72@3|) +(define-fun _851 () Bool (= _256 _850)) +(define-fun _852 () Bool (and _849 _851)) +(define-fun _854 () (_ BitVec 64) (bvadd _847 _850)) +(define-fun _855 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp73@3|) +(define-fun _856 () Bool (= _854 _855)) +(define-fun _857 () Bool (and _852 _856)) +(define-fun _858 () (_ BitVec 64) |gpio_keys_polled_probe::bdata@3|) +(define-fun _859 () Bool (= _855 _858)) +(define-fun _860 () Bool (and _857 _859)) +(define-fun _861 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp77@3|) +(define-fun _862 () Bool (= _837 _861)) +(define-fun _863 () Bool (and _860 _862)) +(define-fun _865 () (_ BitVec 64) (bvadd _153 _861)) +(define-fun _866 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp78@3|) +(define-fun _867 () Bool (= _865 _866)) +(define-fun _868 () Bool (and _863 _867)) +(define-fun _869 () (_ BitVec 32) (select _334 _866)) +(define-fun _870 () (_ BitVec 32) |gpio_keys_polled_probe::tmp___0@3|) +(define-fun _871 () Bool (= _869 _870)) +(define-fun _872 () Bool (and _868 _871)) +(define-fun _873 () Bool (= _870 _25)) +(define-fun _875 () Bool (and _872 _873)) +(define-fun _876 () Bool (not _873)) +(define-fun _877 () Bool (and _872 _876)) +(define-fun _878 () (_ BitVec 32) |gpio_keys_polled_probe::tmp___0@4|) +(define-fun _879 () Bool (= _878 _29)) +(define-fun _880 () Bool (and _875 _879)) +(define-fun _881 () Bool (= _870 _878)) +(define-fun _882 () Bool (and _877 _881)) +(define-fun _883 () Bool (or _880 _882)) +(define-fun _884 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp79@3|) +(define-fun _885 () Bool (= _837 _884)) +(define-fun _886 () Bool (and _883 _885)) +(define-fun _888 () (_ BitVec 64) (bvadd _491 _884)) +(define-fun _889 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp80@3|) +(define-fun _890 () Bool (= _888 _889)) +(define-fun _891 () Bool (and _886 _890)) +(define-fun _892 () (_ BitVec 32) (select _334 _889)) +(define-fun _893 () Bool (= _892 _25)) +(define-fun _895 () Bool (and _891 _893)) +(define-fun _896 () Bool (not _893)) +(define-fun _897 () Bool (and _891 _896)) +(define-fun _898 () Bool (and _597 _897)) +(define-fun _899 () (_ BitVec 32) (_ bv4294967274 32)) +(define-fun _900 () Bool (= _587 _899)) +(define-fun _901 () Bool (and _898 _900)) +(define-fun _902 () Bool (= _453 _559)) +(define-fun _903 () Bool (= _571 _572)) +(define-fun _904 () Bool (and _902 _903)) +(define-fun _905 () Bool (= _546 _547)) +(define-fun _906 () Bool (and _904 _905)) +(define-fun _907 () Bool (= _170 _580)) +(define-fun _908 () Bool (and _906 _907)) +(define-fun _909 () (_ BitVec 32) |dev_set_drvdata::__retval__@1|) +(define-fun _910 () Bool (= _577 _909)) +(define-fun _911 () Bool (and _908 _910)) +(define-fun _912 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp106@2|) +(define-fun _913 () Bool (= _551 _912)) +(define-fun _914 () Bool (and _911 _913)) +(define-fun _915 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp107@2|) +(define-fun _916 () Bool (= _556 _915)) +(define-fun _917 () Bool (and _914 _916)) +(define-fun _918 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp108@2|) +(define-fun _919 () Bool (= _563 _918)) +(define-fun _920 () Bool (and _917 _919)) +(define-fun _921 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp109@2|) +(define-fun _922 () Bool (= _568 _921)) +(define-fun _923 () Bool (and _920 _922)) +(define-fun _924 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp69@2|) +(define-fun _925 () Bool (= _830 _924)) +(define-fun _926 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp70@2|) +(define-fun _927 () Bool (= _843 _926)) +(define-fun _928 () Bool (and _925 _927)) +(define-fun _929 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp71@2|) +(define-fun _930 () Bool (= _847 _929)) +(define-fun _931 () Bool (and _928 _930)) +(define-fun _932 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp72@2|) +(define-fun _933 () Bool (= _850 _932)) +(define-fun _934 () Bool (and _931 _933)) +(define-fun _935 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp73@2|) +(define-fun _936 () Bool (= _855 _935)) +(define-fun _937 () Bool (and _934 _936)) +(define-fun _938 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp77@2|) +(define-fun _939 () Bool (= _861 _938)) +(define-fun _940 () Bool (and _937 _939)) +(define-fun _941 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp78@2|) +(define-fun _942 () Bool (= _866 _941)) +(define-fun _943 () Bool (and _940 _942)) +(define-fun _944 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp79@2|) +(define-fun _945 () Bool (= _884 _944)) +(define-fun _946 () Bool (and _943 _945)) +(define-fun _947 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp80@2|) +(define-fun _948 () Bool (= _889 _947)) +(define-fun _949 () Bool (and _946 _948)) +(define-fun _950 () (_ BitVec 64) |gpio_keys_polled_probe::bdata@2|) +(define-fun _951 () Bool (= _858 _950)) +(define-fun _952 () Bool (and _949 _951)) +(define-fun _953 () (_ BitVec 64) |gpio_keys_polled_probe::button@2|) +(define-fun _954 () Bool (= _837 _953)) +(define-fun _955 () Bool (and _952 _954)) +(define-fun _956 () (_ BitVec 32) |gpio_keys_polled_probe::tmp___0@2|) +(define-fun _957 () Bool (= _878 _956)) +(define-fun _958 () Bool (and _955 _957)) +(define-fun _959 () (_ BitVec 32) |input_register_polled_device::__CPAchecker_TMP_0@1|) +(define-fun _960 () Bool (= _581 _959)) +(define-fun _961 () Bool (and _923 _960)) +(define-fun _962 () (_ BitVec 32) |input_register_polled_device::__retval__@1|) +(define-fun _963 () Bool (= _584 _962)) +(define-fun _964 () Bool (and _961 _963)) +(define-fun _965 () Bool (and _901 _964)) +(define-fun _966 () Bool (and _598 _958)) +(define-fun _967 () Bool (or _965 _966)) +(define-fun _968 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp82@3|) +(define-fun _969 () Bool (= _837 _968)) +(define-fun _970 () Bool (and _895 _969)) +(define-fun _972 () (_ BitVec 64) (bvadd _96 _968)) +(define-fun _973 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp83@3|) +(define-fun _974 () Bool (= _972 _973)) +(define-fun _975 () Bool (and _970 _974)) +(define-fun _976 () (_ BitVec 64) (select _430 _973)) +(define-fun _977 () Bool (= _976 _8)) +(define-fun _979 () Bool (and _975 _977)) +(define-fun _980 () Bool (not _977)) +(define-fun _981 () Bool (and _975 _980)) +(define-fun _982 () Bool (or _979 _981)) +(define-fun _983 () (_ BitVec 32) |gpio_request::__CPAchecker_TMP_0@3|) +(define-fun _984 () Bool (= _580 _983)) +(define-fun _985 () Bool (and _982 _984)) +(define-fun _986 () (_ BitVec 32) |gpio_request::__retval__@2|) +(define-fun _987 () Bool (= _983 _986)) +(define-fun _988 () Bool (and _985 _987)) +(define-fun _989 () Bool (= _587 _986)) +(define-fun _990 () Bool (and _988 _989)) +(define-fun _991 () Bool (and _590 _990)) +(define-fun _992 () Bool (and _593 _990)) +(define-fun _993 () Bool (and _597 _992)) +(define-fun _994 () Bool (and _906 _910)) +(define-fun _995 () Bool (and _913 _994)) +(define-fun _996 () Bool (and _916 _995)) +(define-fun _997 () Bool (and _919 _996)) +(define-fun _998 () Bool (and _922 _997)) +(define-fun _999 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp82@2|) +(define-fun _1000 () Bool (= _968 _999)) +(define-fun _1001 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp83@2|) +(define-fun _1002 () Bool (= _973 _1001)) +(define-fun _1003 () Bool (and _1000 _1002)) +(define-fun _1004 () (_ BitVec 32) |gpio_request::__CPAchecker_TMP_0@1|) +(define-fun _1005 () Bool (= _983 _1004)) +(define-fun _1006 () Bool (and _1003 _1005)) +(define-fun _1007 () (_ BitVec 32) |gpio_request::__retval__@1|) +(define-fun _1008 () Bool (= _986 _1007)) +(define-fun _1009 () Bool (and _1006 _1008)) +(define-fun _1010 () Bool (and _960 _998)) +(define-fun _1011 () Bool (and _963 _1010)) +(define-fun _1012 () Bool (and _993 _1011)) +(define-fun _1013 () Bool (and _967 _1009)) +(define-fun _1014 () Bool (or _1012 _1013)) +(define-fun _1015 () (_ BitVec 32) |gpio_direction_input::__CPAchecker_TMP_0@3|) +(define-fun _1016 () Bool (= _675 _1015)) +(define-fun _1017 () Bool (and _991 _1016)) +(define-fun _1018 () (_ BitVec 32) |gpio_direction_input::__retval__@2|) +(define-fun _1019 () Bool (= _1015 _1018)) +(define-fun _1020 () Bool (and _1017 _1019)) +(define-fun _1021 () (_ BitVec 32) |gpio_keys_polled_probe::error@4|) +(define-fun _1022 () Bool (= _1018 _1021)) +(define-fun _1023 () Bool (and _1020 _1022)) +(define-fun _1024 () Bool (= _1021 _25)) +(define-fun _1026 () Bool (and _1023 _1024)) +(define-fun _1027 () Bool (not _1024)) +(define-fun _1028 () Bool (and _1023 _1027)) +(define-fun _1029 () Bool (and _597 _1028)) +(define-fun _1030 () Bool (= _580 _675)) +(define-fun _1031 () (_ BitVec 32) |gpio_direction_input::__CPAchecker_TMP_0@1|) +(define-fun _1032 () Bool (= _1015 _1031)) +(define-fun _1033 () Bool (and _1030 _1032)) +(define-fun _1034 () (_ BitVec 32) |gpio_direction_input::__retval__@1|) +(define-fun _1035 () Bool (= _1018 _1034)) +(define-fun _1036 () Bool (and _1033 _1035)) +(define-fun _1037 () Bool (= _587 _1021)) +(define-fun _1038 () Bool (and _1036 _1037)) +(define-fun _1039 () Bool (and _1011 _1029)) +(define-fun _1040 () Bool (and _1014 _1038)) +(define-fun _1041 () Bool (or _1039 _1040)) +(define-fun _1043 () (_ BitVec 32) (_ bv4294967295 32)) +(define-fun _1045 () (_ BitVec 32) (bvadd _1043 _526)) +(define-fun _1046 () Bool (= _599 _1045)) +(define-fun _1047 () Bool (and _1041 _1046)) +(define-fun _1050 () (_ BitVec 1) (_ bv1 1)) +(define-fun _1051 () (_ BitVec 1) ((_ extract 31 31) _599)) +(define-fun _1052 () Bool (= _1051 _1050)) +(define-fun _1056 () Bool (and _1047 _1052)) +(define-fun _1057 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp88@3|) +(define-fun _1058 () Bool (= _858 _1057)) +(define-fun _1059 () Bool (and _1026 _1058)) +(define-fun _1061 () (_ BitVec 64) (bvadd _114 _1057)) +(define-fun _1062 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp89@3|) +(define-fun _1063 () Bool (= _1061 _1062)) +(define-fun _1064 () Bool (and _1059 _1063)) +(define-fun _1065 () (_ BitVec 32) __VERIFIER_nondet_int@7) +(define-fun _1066 () (_ BitVec 32) |__gpio_cansleep::__CPAchecker_TMP_0@3|) +(define-fun _1067 () Bool (= _1065 _1066)) +(define-fun _1068 () Bool (and _1064 _1067)) +(define-fun _1069 () (_ BitVec 32) |__gpio_cansleep::__retval__@2|) +(define-fun _1070 () Bool (= _1066 _1069)) +(define-fun _1071 () Bool (and _1068 _1070)) +(define-fun _1072 () (_ BitVec 32) |gpio_cansleep::tmp@3|) +(define-fun _1073 () Bool (= _1069 _1072)) +(define-fun _1074 () Bool (and _1071 _1073)) +(define-fun _1075 () (_ BitVec 32) |gpio_cansleep::__retval__@2|) +(define-fun _1076 () Bool (= _1072 _1075)) +(define-fun _1077 () Bool (and _1074 _1076)) +(define-fun _1078 () (Array (_ BitVec 64) (_ BitVec 32)) (store _334 _1062 _1075)) +(define-fun _1079 () Bool (= _799 _1078)) +(define-fun _1080 () Bool (and _1077 _1079)) +(define-fun _1081 () (Array (_ BitVec 64) (_ BitVec 32)) (store _799 _858 _1043)) +(define-fun _1082 () Bool (= _803 _1081)) +(define-fun _1083 () Bool (and _1080 _1082)) +(define-fun _1084 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp90@3|) +(define-fun _1085 () Bool (= _858 _1084)) +(define-fun _1086 () Bool (and _1083 _1085)) +(define-fun _1088 () (_ BitVec 64) (bvadd _33 _1084)) +(define-fun _1089 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp91@3|) +(define-fun _1090 () Bool (= _1088 _1089)) +(define-fun _1091 () Bool (and _1086 _1090)) +(define-fun _1092 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp92@3|) +(define-fun _1093 () Bool (= _89 _1092)) +(define-fun _1094 () Bool (and _1091 _1093)) +(define-fun _1096 () (_ BitVec 64) (bvadd _114 _1092)) +(define-fun _1097 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp93@3|) +(define-fun _1098 () Bool (= _1096 _1097)) +(define-fun _1099 () Bool (and _1094 _1098)) +(define-fun _1100 () (_ BitVec 32) (select _803 _1097)) +(define-fun _1101 () (_ BitVec 32) |gpio_keys_polled_probe::__cil_tmp94@3|) +(define-fun _1102 () Bool (= _1100 _1101)) +(define-fun _1103 () Bool (and _1099 _1102)) +(define-fun _1104 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp95@3|) +(define-fun _1105 () Bool (= _89 _1104)) +(define-fun _1106 () Bool (and _1103 _1105)) +(define-fun _1108 () (_ BitVec 64) (bvadd _114 _1104)) +(define-fun _1109 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp96@3|) +(define-fun _1110 () Bool (= _1108 _1109)) +(define-fun _1111 () Bool (and _1106 _1110)) +(define-fun _1112 () (_ BitVec 32) (select _803 _1109)) +(define-fun _1113 () (_ BitVec 32) |gpio_keys_polled_probe::__cil_tmp97@3|) +(define-fun _1114 () Bool (= _1112 _1113)) +(define-fun _1115 () Bool (and _1111 _1114)) +(define-fun _1116 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp98@3|) +(define-fun _1117 () Bool (= _837 _1116)) +(define-fun _1118 () Bool (and _1115 _1117)) +(define-fun _1120 () (_ BitVec 64) (bvadd _319 _1116)) +(define-fun _1121 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp99@3|) +(define-fun _1122 () Bool (= _1120 _1121)) +(define-fun _1123 () Bool (and _1118 _1122)) +(define-fun _1124 () (_ BitVec 32) (select _803 _1121)) +(define-fun _1125 () (_ BitVec 32) |gpio_keys_polled_probe::__cil_tmp100@3|) +(define-fun _1126 () Bool (= _1124 _1125)) +(define-fun _1127 () Bool (and _1123 _1126)) +(define-fun _1128 () (_ BitVec 32) |gpio_keys_polled_probe::__cil_tmp101@3|) +(define-fun _1129 () Bool (= _1125 _1128)) +(define-fun _1130 () Bool (and _1127 _1129)) +(define-fun _1132 () (_ BitVec 32) (bvadd _1113 _1128)) +(define-fun _1133 () (_ BitVec 32) |gpio_keys_polled_probe::__cil_tmp102@3|) +(define-fun _1134 () Bool (= _1132 _1133)) +(define-fun _1135 () Bool (and _1130 _1134)) +(define-fun _1138 () (_ BitVec 32) (bvadd _1043 _1133)) +(define-fun _1139 () (_ BitVec 32) |gpio_keys_polled_probe::__cil_tmp103@3|) +(define-fun _1140 () Bool (= _1138 _1139)) +(define-fun _1141 () Bool (and _1135 _1140)) +(define-fun _1142 () (_ BitVec 32) (bvudiv _1139 _1101)) +(define-fun _1143 () (_ BitVec 32) |gpio_keys_polled_probe::__cil_tmp104@3|) +(define-fun _1144 () Bool (= _1142 _1143)) +(define-fun _1145 () Bool (and _1141 _1144)) +(define-fun _1146 () (Array (_ BitVec 64) (_ BitVec 32)) *int@5) +(define-fun _1147 () (Array (_ BitVec 64) (_ BitVec 32)) (store _803 _1089 _1143)) +(define-fun _1148 () Bool (= _1146 _1147)) +(define-fun _1149 () Bool (and _1145 _1148)) +(define-fun _1151 () (_ BitVec 32) (bvadd _29 _526)) +(define-fun _1152 () Bool (= _599 _1151)) +(define-fun _1153 () Bool (and _1149 _1152)) +(define-fun _1154 () Bool (and _285 _597)) +(define-fun _1155 () (_ BitVec 32) (_ bv4294967284 32)) +(define-fun _1156 () Bool (= _587 _1155)) +(define-fun _1157 () Bool (and _1154 _1156)) +(define-fun _1158 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp128@3|) +(define-fun _1159 () Bool (= _256 _1158)) +(define-fun _1160 () Bool (and _1056 _1159)) +(define-fun _1161 () Bool (and _1157 _1159)) +(define-fun _1162 () (_ BitVec 64) |kfree::p@2|) +(define-fun _1163 () Bool (= _1158 _1162)) +(define-fun _1164 () Bool (and _1160 _1163)) +(define-fun _1165 () (_ BitVec 8) __nondet_value_void@2) +(define-fun _1166 () Bool (and _1161 _1163)) +(define-fun _1167 () (_ BitVec 32) |dev_set_drvdata::__retval__@3|) +(define-fun _1168 () Bool (= _576 _1167)) +(define-fun _1169 () Bool (and _1164 _1168)) +(define-fun _1170 () Bool (and _578 _1166)) +(define-fun _1171 () Bool (= _619 _1021)) +(define-fun _1172 () Bool (and _1169 _1171)) +(define-fun _1173 () Bool (= _587 _619)) +(define-fun _1174 () Bool (and _1170 _1173)) +(define-fun _1175 () Bool (and _264 _597)) +(define-fun _1176 () Bool (= _619 _1155)) +(define-fun _1177 () Bool (and _1175 _1176)) +(define-fun _1178 () (_ BitVec 64) __VERIFIER_nondet_pointer@1) +(define-fun _1179 () Bool (= _267 _1178)) +(define-fun _1180 () (_ BitVec 8) __nondet_value_void@1) +(define-fun _1181 () Bool (= _1165 _1180)) +(define-fun _1182 () Bool (and _1179 _1181)) +(define-fun _1183 () Bool (and _910 _1182)) +(define-fun _1184 () (_ BitVec 64) |external_alloc::__CPAchecker_TMP_0@1|) +(define-fun _1185 () Bool (= _268 _1184)) +(define-fun _1186 () Bool (and _1183 _1185)) +(define-fun _1187 () (_ BitVec 64) |external_alloc::__retval__@1|) +(define-fun _1188 () Bool (= _271 _1187)) +(define-fun _1189 () Bool (and _1186 _1188)) +(define-fun _1190 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp128@2|) +(define-fun _1191 () Bool (= _1158 _1190)) +(define-fun _1192 () Bool (and _1189 _1191)) +(define-fun _1193 () (_ BitVec 32) |gpio_keys_polled_probe::error@2|) +(define-fun _1194 () Bool (= _587 _1193)) +(define-fun _1195 () Bool (and _1192 _1194)) +(define-fun _1196 () (_ BitVec 64) |gpio_keys_polled_probe::poll_dev@2|) +(define-fun _1197 () Bool (= _280 _1196)) +(define-fun _1198 () Bool (and _1195 _1197)) +(define-fun _1199 () (_ BitVec 64) |input_allocate_polled_device::__CPAchecker_TMP_0@1|) +(define-fun _1200 () Bool (= _274 _1199)) +(define-fun _1201 () Bool (and _1198 _1200)) +(define-fun _1202 () (_ BitVec 64) |input_allocate_polled_device::__retval__@1|) +(define-fun _1203 () Bool (= _277 _1202)) +(define-fun _1204 () Bool (and _1201 _1203)) +(define-fun _1205 () (_ BitVec 64) |kfree::p@1|) +(define-fun _1206 () Bool (= _1162 _1205)) +(define-fun _1207 () Bool (and _1204 _1206)) +(define-fun _1208 () Bool (and _1177 _1207)) +(define-fun _1209 () Bool (or _1174 _1208)) +(define-fun _1210 () Bool (= _619 _899)) +(define-fun _1211 () Bool (and _127 _1210)) +(define-fun _1212 () Bool (= _55 _170)) +(define-fun _1213 () Bool (and _1179 _1212)) +(define-fun _1214 () (_ BitVec 64) |__kmalloc::__CPAchecker_TMP_0@1|) +(define-fun _1215 () Bool (= _228 _1214)) +(define-fun _1216 () Bool (and _1213 _1215)) +(define-fun _1217 () (_ BitVec 64) |__kmalloc::__retval__@1|) +(define-fun _1218 () Bool (= _231 _1217)) +(define-fun _1219 () Bool (and _1216 _1218)) +(define-fun _1220 () (_ BitVec 64) |__kmalloc::size@1|) +(define-fun _1221 () Bool (= _164 _1220)) +(define-fun _1222 () Bool (and _1219 _1221)) +(define-fun _1223 () Bool (and _1181 _1222)) +(define-fun _1224 () (_ BitVec 32) |dev_err::__retval__@1|) +(define-fun _1225 () Bool (= _596 _1224)) +(define-fun _1226 () Bool (and _1223 _1225)) +(define-fun _1227 () Bool (and _910 _1226)) +(define-fun _1228 () Bool (and _1185 _1227)) +(define-fun _1229 () Bool (and _1188 _1228)) +(define-fun _1230 () Bool (and _1191 _1229)) +(define-fun _1231 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp25@2|) +(define-fun _1232 () Bool (= _130 _1231)) +(define-fun _1233 () Bool (and _1230 _1232)) +(define-fun _1234 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp26@2|) +(define-fun _1235 () Bool (= _136 _1234)) +(define-fun _1236 () Bool (and _1233 _1235)) +(define-fun _1237 () (_ BitVec 32) |gpio_keys_polled_probe::__cil_tmp27@2|) +(define-fun _1238 () Bool (= _140 _1237)) +(define-fun _1239 () Bool (and _1236 _1238)) +(define-fun _1240 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp28@2|) +(define-fun _1241 () Bool (= _144 _1240)) +(define-fun _1242 () Bool (and _1239 _1241)) +(define-fun _1243 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp29@2|) +(define-fun _1244 () Bool (= _150 _1243)) +(define-fun _1245 () Bool (and _1242 _1244)) +(define-fun _1246 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp30@2|) +(define-fun _1247 () Bool (= _155 _1246)) +(define-fun _1248 () Bool (and _1245 _1247)) +(define-fun _1249 () (_ BitVec 64) |gpio_keys_polled_probe::bdev@2|) +(define-fun _1250 () Bool (= _256 _1249)) +(define-fun _1251 () Bool (and _1248 _1250)) +(define-fun _1252 () Bool (and _1194 _1251)) +(define-fun _1253 () Bool (and _1197 _1252)) +(define-fun _1254 () (_ BitVec 64) |gpio_keys_polled_probe::tmp@2|) +(define-fun _1255 () Bool (= _246 _1254)) +(define-fun _1256 () Bool (and _1253 _1255)) +(define-fun _1257 () Bool (and _1200 _1256)) +(define-fun _1258 () Bool (and _1203 _1257)) +(define-fun _1259 () Bool (and _1206 _1258)) +(define-fun _1260 () (_ BitVec 64) |kmalloc::__retval__@1|) +(define-fun _1261 () Bool (= _237 _1260)) +(define-fun _1262 () Bool (and _1259 _1261)) +(define-fun _1263 () (_ BitVec 64) |kmalloc::size@1|) +(define-fun _1264 () Bool (= _161 _1263)) +(define-fun _1265 () Bool (and _1262 _1264)) +(define-fun _1266 () (_ BitVec 64) |kmalloc::tmp___2@1|) +(define-fun _1267 () Bool (= _234 _1266)) +(define-fun _1268 () Bool (and _1265 _1267)) +(define-fun _1269 () (_ BitVec 64) |kzalloc::__retval__@1|) +(define-fun _1270 () Bool (= _243 _1269)) +(define-fun _1271 () Bool (and _1268 _1270)) +(define-fun _1272 () (_ BitVec 64) |kzalloc::size@1|) +(define-fun _1273 () Bool (= _158 _1272)) +(define-fun _1274 () Bool (and _1271 _1273)) +(define-fun _1275 () (_ BitVec 64) |kzalloc::tmp@1|) +(define-fun _1276 () Bool (= _240 _1275)) +(define-fun _1277 () Bool (and _1274 _1276)) +(define-fun _1278 () Bool (and _213 _1277)) +(define-fun _1279 () Bool (and _215 _1278)) +(define-fun _1280 () (_ BitVec 32) |ldv_malloc::__CPAchecker_TMP_0@1|) +(define-fun _1281 () Bool (= _171 _1280)) +(define-fun _1282 () Bool (and _1279 _1281)) +(define-fun _1283 () Bool (and _218 _1282)) +(define-fun _1284 () (_ BitVec 64) |ldv_malloc::__retval__@1|) +(define-fun _1285 () Bool (= _207 _1284)) +(define-fun _1286 () Bool (and _1283 _1285)) +(define-fun _1287 () Bool (and _221 _1286)) +(define-fun _1288 () (_ BitVec 64) |ldv_malloc::size@1|) +(define-fun _1289 () Bool (= _167 _1288)) +(define-fun _1290 () Bool (and _1287 _1289)) +(define-fun _1291 () Bool (and _224 _1290)) +(define-fun _1292 () Bool (and _1211 _1291)) +(define-fun _1293 () Bool (or _1209 _1292)) +(define-fun _1294 () Bool (and _107 _1210)) +(define-fun _1295 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp22@2|) +(define-fun _1296 () Bool (= _110 _1295)) +(define-fun _1297 () Bool (and _1230 _1296)) +(define-fun _1298 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp23@2|) +(define-fun _1299 () Bool (= _117 _1298)) +(define-fun _1300 () Bool (and _1297 _1299)) +(define-fun _1301 () (_ BitVec 32) |gpio_keys_polled_probe::__cil_tmp24@2|) +(define-fun _1302 () Bool (= _122 _1301)) +(define-fun _1303 () Bool (and _1300 _1302)) +(define-fun _1304 () Bool (and _1232 _1303)) +(define-fun _1305 () Bool (and _1235 _1304)) +(define-fun _1306 () Bool (and _1238 _1305)) +(define-fun _1307 () Bool (and _1241 _1306)) +(define-fun _1308 () Bool (and _1244 _1307)) +(define-fun _1309 () Bool (and _1247 _1308)) +(define-fun _1310 () Bool (and _1250 _1309)) +(define-fun _1311 () Bool (and _1194 _1310)) +(define-fun _1312 () Bool (and _1197 _1311)) +(define-fun _1313 () Bool (and _1255 _1312)) +(define-fun _1314 () Bool (and _1200 _1313)) +(define-fun _1315 () Bool (and _1203 _1314)) +(define-fun _1316 () Bool (and _1206 _1315)) +(define-fun _1317 () Bool (and _1261 _1316)) +(define-fun _1318 () Bool (and _1264 _1317)) +(define-fun _1319 () Bool (and _1267 _1318)) +(define-fun _1320 () Bool (and _1270 _1319)) +(define-fun _1321 () Bool (and _1273 _1320)) +(define-fun _1322 () Bool (and _1276 _1321)) +(define-fun _1323 () Bool (and _213 _1322)) +(define-fun _1324 () Bool (and _215 _1323)) +(define-fun _1325 () Bool (and _1281 _1324)) +(define-fun _1326 () Bool (and _218 _1325)) +(define-fun _1327 () Bool (and _1285 _1326)) +(define-fun _1328 () Bool (and _221 _1327)) +(define-fun _1329 () Bool (and _1289 _1328)) +(define-fun _1330 () Bool (and _224 _1329)) +(define-fun _1331 () Bool (and _1294 _1330)) +(define-fun _1332 () Bool (or _1293 _1331)) +(define-fun _1333 () (_ BitVec 32) res_gpio_keys_polled_probe_4@3) +(define-fun _1334 () Bool (= _619 _1333)) +(define-fun _1335 () Bool (and _621 _1334)) +(define-fun _1336 () Bool (and _1172 _1334)) +(define-fun _1337 () Bool (and _1332 _1334)) +(define-fun _1338 () Bool (= _1333 _25)) +(define-fun _1340 () Bool (and _1335 _1338)) +(define-fun _1343 () Bool (and _1336 _1338)) +(define-fun _1345 () Bool (and _1337 _1338)) +(define-fun _1357 () (_ BitVec 32) |gpio_keys_polled_probe::__cil_tmp100@1|) +(define-fun _1358 () (_ BitVec 32) |gpio_keys_polled_probe::__cil_tmp100@2|) +(define-fun _1359 () Bool (= _1357 _1358)) +(define-fun _1361 () (_ BitVec 32) |gpio_keys_polled_probe::__cil_tmp101@1|) +(define-fun _1362 () (_ BitVec 32) |gpio_keys_polled_probe::__cil_tmp101@2|) +(define-fun _1363 () Bool (= _1361 _1362)) +(define-fun _1365 () (_ BitVec 32) |gpio_keys_polled_probe::__cil_tmp102@1|) +(define-fun _1366 () (_ BitVec 32) |gpio_keys_polled_probe::__cil_tmp102@2|) +(define-fun _1367 () Bool (= _1365 _1366)) +(define-fun _1369 () (_ BitVec 32) |gpio_keys_polled_probe::__cil_tmp103@1|) +(define-fun _1370 () (_ BitVec 32) |gpio_keys_polled_probe::__cil_tmp103@2|) +(define-fun _1371 () Bool (= _1369 _1370)) +(define-fun _1373 () (_ BitVec 32) |gpio_keys_polled_probe::__cil_tmp104@1|) +(define-fun _1374 () (_ BitVec 32) |gpio_keys_polled_probe::__cil_tmp104@2|) +(define-fun _1375 () Bool (= _1373 _1374)) +(define-fun _1377 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp106@1|) +(define-fun _1378 () Bool (= _912 _1377)) +(define-fun _1380 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp107@1|) +(define-fun _1381 () Bool (= _915 _1380)) +(define-fun _1383 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp108@1|) +(define-fun _1384 () Bool (= _918 _1383)) +(define-fun _1386 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp109@1|) +(define-fun _1387 () Bool (= _921 _1386)) +(define-fun _1389 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp112@1|) +(define-fun _1390 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp112@2|) +(define-fun _1391 () Bool (= _1389 _1390)) +(define-fun _1393 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp113@1|) +(define-fun _1394 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp113@2|) +(define-fun _1395 () Bool (= _1393 _1394)) +(define-fun _1397 () (_ BitVec 32) |gpio_keys_polled_probe::__cil_tmp114@1|) +(define-fun _1398 () (_ BitVec 32) |gpio_keys_polled_probe::__cil_tmp114@2|) +(define-fun _1399 () Bool (= _1397 _1398)) +(define-fun _1401 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp115@1|) +(define-fun _1402 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp115@2|) +(define-fun _1403 () Bool (= _1401 _1402)) +(define-fun _1405 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp116@1|) +(define-fun _1406 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp116@2|) +(define-fun _1407 () Bool (= _1405 _1406)) +(define-fun _1409 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp117@1|) +(define-fun _1410 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp117@2|) +(define-fun _1411 () Bool (= _1409 _1410)) +(define-fun _1413 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp118@1|) +(define-fun _1414 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp118@2|) +(define-fun _1415 () Bool (= _1413 _1414)) +(define-fun _1417 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp119@1|) +(define-fun _1418 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp119@2|) +(define-fun _1419 () Bool (= _1417 _1418)) +(define-fun _1421 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp120@1|) +(define-fun _1422 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp120@2|) +(define-fun _1423 () Bool (= _1421 _1422)) +(define-fun _1425 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp121@1|) +(define-fun _1426 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp121@2|) +(define-fun _1427 () Bool (= _1425 _1426)) +(define-fun _1429 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp128@1|) +(define-fun _1430 () Bool (= _1158 _1429)) +(define-fun _1432 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp16@1|) +(define-fun _1433 () Bool (= _73 _1432)) +(define-fun _1435 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp17@1|) +(define-fun _1436 () Bool (= _76 _1435)) +(define-fun _1438 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp18@1|) +(define-fun _1439 () Bool (= _81 _1438)) +(define-fun _1441 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp19@1|) +(define-fun _1442 () Bool (= _86 _1441)) +(define-fun _1444 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp20@1|) +(define-fun _1445 () Bool (= _92 _1444)) +(define-fun _1447 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp21@1|) +(define-fun _1448 () Bool (= _99 _1447)) +(define-fun _1450 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp22@1|) +(define-fun _1451 () Bool (= _110 _1450)) +(define-fun _1453 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp23@1|) +(define-fun _1454 () Bool (= _117 _1453)) +(define-fun _1456 () (_ BitVec 32) |gpio_keys_polled_probe::__cil_tmp24@1|) +(define-fun _1457 () Bool (= _122 _1456)) +(define-fun _1459 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp25@1|) +(define-fun _1460 () Bool (= _130 _1459)) +(define-fun _1462 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp26@1|) +(define-fun _1463 () Bool (= _136 _1462)) +(define-fun _1465 () (_ BitVec 32) |gpio_keys_polled_probe::__cil_tmp27@1|) +(define-fun _1466 () Bool (= _140 _1465)) +(define-fun _1468 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp28@1|) +(define-fun _1469 () Bool (= _144 _1468)) +(define-fun _1471 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp29@1|) +(define-fun _1472 () Bool (= _150 _1471)) +(define-fun _1474 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp30@1|) +(define-fun _1475 () Bool (= _155 _1474)) +(define-fun _1477 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp33@1|) +(define-fun _1478 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp33@2|) +(define-fun _1479 () Bool (= _1477 _1478)) +(define-fun _1481 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp34@1|) +(define-fun _1482 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp34@2|) +(define-fun _1483 () Bool (= _1481 _1482)) +(define-fun _1485 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp35@1|) +(define-fun _1486 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp35@2|) +(define-fun _1487 () Bool (= _1485 _1486)) +(define-fun _1489 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp36@1|) +(define-fun _1490 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp36@2|) +(define-fun _1491 () Bool (= _1489 _1490)) +(define-fun _1493 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp37@1|) +(define-fun _1494 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp37@2|) +(define-fun _1495 () Bool (= _1493 _1494)) +(define-fun _1497 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp38@1|) +(define-fun _1498 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp38@2|) +(define-fun _1499 () Bool (= _1497 _1498)) +(define-fun _1501 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp39@1|) +(define-fun _1502 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp39@2|) +(define-fun _1503 () Bool (= _1501 _1502)) +(define-fun _1505 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp40@1|) +(define-fun _1506 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp40@2|) +(define-fun _1507 () Bool (= _1505 _1506)) +(define-fun _1509 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp41@1|) +(define-fun _1510 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp41@2|) +(define-fun _1511 () Bool (= _1509 _1510)) +(define-fun _1513 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp42@1|) +(define-fun _1514 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp42@2|) +(define-fun _1515 () Bool (= _1513 _1514)) +(define-fun _1517 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp43@1|) +(define-fun _1518 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp43@2|) +(define-fun _1519 () Bool (= _1517 _1518)) +(define-fun _1521 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp44@1|) +(define-fun _1522 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp44@2|) +(define-fun _1523 () Bool (= _1521 _1522)) +(define-fun _1525 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp45@1|) +(define-fun _1526 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp45@2|) +(define-fun _1527 () Bool (= _1525 _1526)) +(define-fun _1529 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp46@1|) +(define-fun _1530 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp46@2|) +(define-fun _1531 () Bool (= _1529 _1530)) +(define-fun _1533 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp47@1|) +(define-fun _1534 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp47@2|) +(define-fun _1535 () Bool (= _1533 _1534)) +(define-fun _1537 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp48@1|) +(define-fun _1538 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp48@2|) +(define-fun _1539 () Bool (= _1537 _1538)) +(define-fun _1541 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp49@1|) +(define-fun _1542 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp49@2|) +(define-fun _1543 () Bool (= _1541 _1542)) +(define-fun _1545 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp50@1|) +(define-fun _1546 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp50@2|) +(define-fun _1547 () Bool (= _1545 _1546)) +(define-fun _1549 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp51@1|) +(define-fun _1550 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp51@2|) +(define-fun _1551 () Bool (= _1549 _1550)) +(define-fun _1553 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp52@1|) +(define-fun _1554 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp52@2|) +(define-fun _1555 () Bool (= _1553 _1554)) +(define-fun _1557 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp53@1|) +(define-fun _1558 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp53@2|) +(define-fun _1559 () Bool (= _1557 _1558)) +(define-fun _1561 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp54@1|) +(define-fun _1562 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp54@2|) +(define-fun _1563 () Bool (= _1561 _1562)) +(define-fun _1565 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp55@1|) +(define-fun _1566 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp55@2|) +(define-fun _1567 () Bool (= _1565 _1566)) +(define-fun _1569 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp56@1|) +(define-fun _1570 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp56@2|) +(define-fun _1571 () Bool (= _1569 _1570)) +(define-fun _1573 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp57@1|) +(define-fun _1574 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp57@2|) +(define-fun _1575 () Bool (= _1573 _1574)) +(define-fun _1577 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp58@1|) +(define-fun _1578 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp58@2|) +(define-fun _1579 () Bool (= _1577 _1578)) +(define-fun _1581 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp59@1|) +(define-fun _1582 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp59@2|) +(define-fun _1583 () Bool (= _1581 _1582)) +(define-fun _1585 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp60@1|) +(define-fun _1586 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp60@2|) +(define-fun _1587 () Bool (= _1585 _1586)) +(define-fun _1589 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp61@1|) +(define-fun _1590 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp61@2|) +(define-fun _1591 () Bool (= _1589 _1590)) +(define-fun _1593 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp62@1|) +(define-fun _1594 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp62@2|) +(define-fun _1595 () Bool (= _1593 _1594)) +(define-fun _1597 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp63@1|) +(define-fun _1598 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp63@2|) +(define-fun _1599 () Bool (= _1597 _1598)) +(define-fun _1601 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp64@1|) +(define-fun _1602 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp64@2|) +(define-fun _1603 () Bool (= _1601 _1602)) +(define-fun _1605 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp65@1|) +(define-fun _1606 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp65@2|) +(define-fun _1607 () Bool (= _1605 _1606)) +(define-fun _1609 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp66@1|) +(define-fun _1610 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp66@2|) +(define-fun _1611 () Bool (= _1609 _1610)) +(define-fun _1613 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp67@1|) +(define-fun _1614 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp67@2|) +(define-fun _1615 () Bool (= _1613 _1614)) +(define-fun _1617 () (_ BitVec 32) |gpio_keys_polled_probe::__cil_tmp68@1|) +(define-fun _1618 () (_ BitVec 32) |gpio_keys_polled_probe::__cil_tmp68@2|) +(define-fun _1619 () Bool (= _1617 _1618)) +(define-fun _1621 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp69@1|) +(define-fun _1622 () Bool (= _924 _1621)) +(define-fun _1624 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp70@1|) +(define-fun _1625 () Bool (= _926 _1624)) +(define-fun _1627 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp71@1|) +(define-fun _1628 () Bool (= _929 _1627)) +(define-fun _1630 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp72@1|) +(define-fun _1631 () Bool (= _932 _1630)) +(define-fun _1633 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp73@1|) +(define-fun _1634 () Bool (= _935 _1633)) +(define-fun _1636 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp77@1|) +(define-fun _1637 () Bool (= _938 _1636)) +(define-fun _1639 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp78@1|) +(define-fun _1640 () Bool (= _941 _1639)) +(define-fun _1642 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp79@1|) +(define-fun _1643 () Bool (= _944 _1642)) +(define-fun _1645 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp80@1|) +(define-fun _1646 () Bool (= _947 _1645)) +(define-fun _1648 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp82@1|) +(define-fun _1649 () Bool (= _999 _1648)) +(define-fun _1651 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp83@1|) +(define-fun _1652 () Bool (= _1001 _1651)) +(define-fun _1654 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp88@1|) +(define-fun _1655 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp88@2|) +(define-fun _1656 () Bool (= _1654 _1655)) +(define-fun _1658 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp89@1|) +(define-fun _1659 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp89@2|) +(define-fun _1660 () Bool (= _1658 _1659)) +(define-fun _1662 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp90@1|) +(define-fun _1663 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp90@2|) +(define-fun _1664 () Bool (= _1662 _1663)) +(define-fun _1666 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp91@1|) +(define-fun _1667 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp91@2|) +(define-fun _1668 () Bool (= _1666 _1667)) +(define-fun _1670 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp92@1|) +(define-fun _1671 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp92@2|) +(define-fun _1672 () Bool (= _1670 _1671)) +(define-fun _1674 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp93@1|) +(define-fun _1675 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp93@2|) +(define-fun _1676 () Bool (= _1674 _1675)) +(define-fun _1678 () (_ BitVec 32) |gpio_keys_polled_probe::__cil_tmp94@1|) +(define-fun _1679 () (_ BitVec 32) |gpio_keys_polled_probe::__cil_tmp94@2|) +(define-fun _1680 () Bool (= _1678 _1679)) +(define-fun _1682 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp95@1|) +(define-fun _1683 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp95@2|) +(define-fun _1684 () Bool (= _1682 _1683)) +(define-fun _1686 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp96@1|) +(define-fun _1687 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp96@2|) +(define-fun _1688 () Bool (= _1686 _1687)) +(define-fun _1690 () (_ BitVec 32) |gpio_keys_polled_probe::__cil_tmp97@1|) +(define-fun _1691 () (_ BitVec 32) |gpio_keys_polled_probe::__cil_tmp97@2|) +(define-fun _1692 () Bool (= _1690 _1691)) +(define-fun _1694 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp98@1|) +(define-fun _1695 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp98@2|) +(define-fun _1696 () Bool (= _1694 _1695)) +(define-fun _1698 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp99@1|) +(define-fun _1699 () (_ BitVec 64) |gpio_keys_polled_probe::__cil_tmp99@2|) +(define-fun _1700 () Bool (= _1698 _1699)) +(define-fun _1702 () (_ BitVec 32) |gpio_keys_polled_probe::__retval__@1|) +(define-fun _1703 () Bool (= _619 _1702)) +(define-fun _1705 () (_ BitVec 64) |gpio_keys_polled_probe::bdata@1|) +(define-fun _1706 () Bool (= _950 _1705)) +(define-fun _1708 () (_ BitVec 64) |gpio_keys_polled_probe::bdev@1|) +(define-fun _1709 () Bool (= _256 _1708)) +(define-fun _1711 () (_ BitVec 64) |gpio_keys_polled_probe::button@1|) +(define-fun _1712 () Bool (= _953 _1711)) +(define-fun _1714 () (_ BitVec 64) |gpio_keys_polled_probe::dev@1|) +(define-fun _1715 () Bool (= _102 _1714)) +(define-fun _1717 () (_ BitVec 32) |gpio_keys_polled_probe::error@1|) +(define-fun _1718 () Bool (= _587 _1717)) +(define-fun _1720 () (_ BitVec 32) |gpio_keys_polled_probe::i@1|) +(define-fun _1721 () (_ BitVec 32) |gpio_keys_polled_probe::i@2|) +(define-fun _1722 () Bool (= _1720 _1721)) +(define-fun _1724 () (_ BitVec 64) |gpio_keys_polled_probe::input@1|) +(define-fun _1725 () (_ BitVec 64) |gpio_keys_polled_probe::input@2|) +(define-fun _1726 () Bool (= _1724 _1725)) +(define-fun _1728 () (_ BitVec 64) |gpio_keys_polled_probe::pdata@1|) +(define-fun _1729 () Bool (= _89 _1728)) +(define-fun _1731 () (_ BitVec 64) |gpio_keys_polled_probe::pdev@1|) +(define-fun _1732 () Bool (= _68 _1731)) +(define-fun _1734 () (_ BitVec 64) |gpio_keys_polled_probe::poll_dev@1|) +(define-fun _1735 () Bool (= _280 _1734)) +(define-fun _1737 () (_ BitVec 64) |gpio_keys_polled_probe::tmp@1|) +(define-fun _1738 () Bool (= _246 _1737)) +(define-fun _1740 () (_ BitVec 32) |gpio_keys_polled_probe::tmp___0@1|) +(define-fun _1741 () Bool (= _956 _1740)) +(define-fun _1765 () Bool (= _26 _1333)) +(define-fun _1776 () (_ BitVec 32) |main::ldv_s_gpio_keys_polled_driver_platform_driver@4|) +(define-fun _1777 () Bool (= _1776 _25)) +(define-fun _1778 () Bool (and _1340 _1777)) +(define-fun _1779 () Bool (and _1343 _1777)) +(define-fun _1780 () Bool (and _1345 _1777)) +(define-fun _1781 () Bool (and _1229 _1359)) +(define-fun _1782 () Bool (and _1363 _1781)) +(define-fun _1783 () Bool (and _1367 _1782)) +(define-fun _1784 () Bool (and _1371 _1783)) +(define-fun _1785 () Bool (and _1375 _1784)) +(define-fun _1786 () Bool (and _1378 _1785)) +(define-fun _1787 () Bool (and _1381 _1786)) +(define-fun _1788 () Bool (and _1384 _1787)) +(define-fun _1789 () Bool (and _1387 _1788)) +(define-fun _1790 () Bool (and _1391 _1789)) +(define-fun _1791 () Bool (and _1395 _1790)) +(define-fun _1792 () Bool (and _1399 _1791)) +(define-fun _1793 () Bool (and _1403 _1792)) +(define-fun _1794 () Bool (and _1407 _1793)) +(define-fun _1795 () Bool (and _1411 _1794)) +(define-fun _1796 () Bool (and _1415 _1795)) +(define-fun _1797 () Bool (and _1419 _1796)) +(define-fun _1798 () Bool (and _1423 _1797)) +(define-fun _1799 () Bool (and _1427 _1798)) +(define-fun _1800 () Bool (and _1430 _1799)) +(define-fun _1801 () Bool (and _1433 _1800)) +(define-fun _1802 () Bool (and _1436 _1801)) +(define-fun _1803 () Bool (and _1439 _1802)) +(define-fun _1804 () Bool (and _1442 _1803)) +(define-fun _1805 () Bool (and _1445 _1804)) +(define-fun _1806 () Bool (and _1448 _1805)) +(define-fun _1807 () Bool (and _1451 _1806)) +(define-fun _1808 () Bool (and _1454 _1807)) +(define-fun _1809 () Bool (and _1457 _1808)) +(define-fun _1810 () Bool (and _1460 _1809)) +(define-fun _1811 () Bool (and _1463 _1810)) +(define-fun _1812 () Bool (and _1466 _1811)) +(define-fun _1813 () Bool (and _1469 _1812)) +(define-fun _1814 () Bool (and _1472 _1813)) +(define-fun _1815 () Bool (and _1475 _1814)) +(define-fun _1816 () Bool (and _1479 _1815)) +(define-fun _1817 () Bool (and _1483 _1816)) +(define-fun _1818 () Bool (and _1487 _1817)) +(define-fun _1819 () Bool (and _1491 _1818)) +(define-fun _1820 () Bool (and _1495 _1819)) +(define-fun _1821 () Bool (and _1499 _1820)) +(define-fun _1822 () Bool (and _1503 _1821)) +(define-fun _1823 () Bool (and _1507 _1822)) +(define-fun _1824 () Bool (and _1511 _1823)) +(define-fun _1825 () Bool (and _1515 _1824)) +(define-fun _1826 () Bool (and _1519 _1825)) +(define-fun _1827 () Bool (and _1523 _1826)) +(define-fun _1828 () Bool (and _1527 _1827)) +(define-fun _1829 () Bool (and _1531 _1828)) +(define-fun _1830 () Bool (and _1535 _1829)) +(define-fun _1831 () Bool (and _1539 _1830)) +(define-fun _1832 () Bool (and _1543 _1831)) +(define-fun _1833 () Bool (and _1547 _1832)) +(define-fun _1834 () Bool (and _1551 _1833)) +(define-fun _1835 () Bool (and _1555 _1834)) +(define-fun _1836 () Bool (and _1559 _1835)) +(define-fun _1837 () Bool (and _1563 _1836)) +(define-fun _1838 () Bool (and _1567 _1837)) +(define-fun _1839 () Bool (and _1571 _1838)) +(define-fun _1840 () Bool (and _1575 _1839)) +(define-fun _1841 () Bool (and _1579 _1840)) +(define-fun _1842 () Bool (and _1583 _1841)) +(define-fun _1843 () Bool (and _1587 _1842)) +(define-fun _1844 () Bool (and _1591 _1843)) +(define-fun _1845 () Bool (and _1595 _1844)) +(define-fun _1846 () Bool (and _1599 _1845)) +(define-fun _1847 () Bool (and _1603 _1846)) +(define-fun _1848 () Bool (and _1607 _1847)) +(define-fun _1849 () Bool (and _1611 _1848)) +(define-fun _1850 () Bool (and _1615 _1849)) +(define-fun _1851 () Bool (and _1619 _1850)) +(define-fun _1852 () Bool (and _1622 _1851)) +(define-fun _1853 () Bool (and _1625 _1852)) +(define-fun _1854 () Bool (and _1628 _1853)) +(define-fun _1855 () Bool (and _1631 _1854)) +(define-fun _1856 () Bool (and _1634 _1855)) +(define-fun _1857 () Bool (and _1637 _1856)) +(define-fun _1858 () Bool (and _1640 _1857)) +(define-fun _1859 () Bool (and _1643 _1858)) +(define-fun _1860 () Bool (and _1646 _1859)) +(define-fun _1861 () Bool (and _1649 _1860)) +(define-fun _1862 () Bool (and _1652 _1861)) +(define-fun _1863 () Bool (and _1656 _1862)) +(define-fun _1864 () Bool (and _1660 _1863)) +(define-fun _1865 () Bool (and _1664 _1864)) +(define-fun _1866 () Bool (and _1668 _1865)) +(define-fun _1867 () Bool (and _1672 _1866)) +(define-fun _1868 () Bool (and _1676 _1867)) +(define-fun _1869 () Bool (and _1680 _1868)) +(define-fun _1870 () Bool (and _1684 _1869)) +(define-fun _1871 () Bool (and _1688 _1870)) +(define-fun _1872 () Bool (and _1692 _1871)) +(define-fun _1873 () Bool (and _1696 _1872)) +(define-fun _1874 () Bool (and _1700 _1873)) +(define-fun _1875 () Bool (and _1703 _1874)) +(define-fun _1876 () Bool (and _1706 _1875)) +(define-fun _1877 () Bool (and _1709 _1876)) +(define-fun _1878 () Bool (and _1712 _1877)) +(define-fun _1879 () Bool (and _1715 _1878)) +(define-fun _1880 () Bool (and _1718 _1879)) +(define-fun _1881 () Bool (and _1722 _1880)) +(define-fun _1882 () Bool (and _1726 _1881)) +(define-fun _1883 () Bool (and _1729 _1882)) +(define-fun _1884 () Bool (and _1732 _1883)) +(define-fun _1885 () Bool (and _1735 _1884)) +(define-fun _1886 () Bool (and _1738 _1885)) +(define-fun _1887 () Bool (and _1741 _1886)) +(define-fun _1888 () Bool (and _1200 _1887)) +(define-fun _1889 () Bool (and _1203 _1888)) +(define-fun _1890 () Bool (and _1206 _1889)) +(define-fun _1891 () Bool (and _1261 _1890)) +(define-fun _1892 () Bool (and _1264 _1891)) +(define-fun _1893 () Bool (and _1267 _1892)) +(define-fun _1894 () Bool (and _1270 _1893)) +(define-fun _1895 () Bool (and _1273 _1894)) +(define-fun _1896 () Bool (and _1276 _1895)) +(define-fun _1897 () Bool (and _213 _1896)) +(define-fun _1898 () Bool (and _215 _1897)) +(define-fun _1899 () Bool (and _1281 _1898)) +(define-fun _1900 () Bool (and _218 _1899)) +(define-fun _1901 () Bool (and _1285 _1900)) +(define-fun _1902 () Bool (and _221 _1901)) +(define-fun _1903 () Bool (and _1289 _1902)) +(define-fun _1904 () Bool (= _34 _1776)) +(define-fun _1905 () Bool (and _1903 _1904)) +(define-fun _1906 () Bool (and _224 _1905)) +(define-fun _1907 () Bool (and _1765 _1906)) +(define-fun _1908 () Bool (and _63 _1907)) +(define-fun _1909 () Bool (or _1780 _1908)) +(define-fun _1910 () Bool (or _829 _1153)) +(define-fun _1911 () Bool (or _1778 _1910)) +(define-fun _1912 () Bool (or _1779 _1911)) +(define-fun _1913 () Bool (or _1909 _1912)) +(assert _1913) +(set-info :status sat) +(check-sat) +(pop 1) +(exit) diff --git a/tests/regress/coverage/smtlib/QF_AUFBVNIA/20190307-CPAchecker_kInduction-SoSy_Lab/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--input--keyboard--gpio_keys_polled.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out_smt-query.0.smt2.gold b/tests/regress/coverage/smtlib/QF_AUFBVNIA/20190307-CPAchecker_kInduction-SoSy_Lab/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--input--keyboard--gpio_keys_polled.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out_smt-query.0.smt2.gold new file mode 100644 index 000000000..fea55f7e1 --- /dev/null +++ b/tests/regress/coverage/smtlib/QF_AUFBVNIA/20190307-CPAchecker_kInduction-SoSy_Lab/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--input--keyboard--gpio_keys_polled.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out_smt-query.0.smt2.gold @@ -0,0 +1,2 @@ +unsat +sat diff --git a/tests/regress/coverage/smtlib/QF_AUFBVNIA/20190307-CPAchecker_kInduction-SoSy_Lab/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--input--keyboard--gpio_keys_polled.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out_smt-query.0.smt2.options b/tests/regress/coverage/smtlib/QF_AUFBVNIA/20190307-CPAchecker_kInduction-SoSy_Lab/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--input--keyboard--gpio_keys_polled.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out_smt-query.0.smt2.options new file mode 100644 index 000000000..db1c3bcde --- /dev/null +++ b/tests/regress/coverage/smtlib/QF_AUFBVNIA/20190307-CPAchecker_kInduction-SoSy_Lab/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--input--keyboard--gpio_keys_polled.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out_smt-query.0.smt2.options @@ -0,0 +1 @@ +--incremental --mcsat \ No newline at end of file From 01ac83a6d4bfc1bb9a3dd02377a48aaae1c35d77 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Fri, 19 May 2023 01:01:16 -0700 Subject: [PATCH 109/182] move mcsat tests --- ..._sequence_infinite_withcheck_stateful.cil.out_smt-query.0.smt2 | 0 ...ence_infinite_withcheck_stateful.cil.out_smt-query.0.smt2.gold | 0 ...e_infinite_withcheck_stateful.cil.out_smt-query.0.smt2.options | 0 tests/regress/{ => mcsat}/test_qfaufbvnia.smt2 | 0 tests/regress/{ => mcsat}/test_qfaufbvnia.smt2.gold | 0 5 files changed, 0 insertions(+), 0 deletions(-) rename tests/regress/{coverage/smtlib/QF_AUFBVNIA/20190307-CPAchecker_kInduction-SoSy_Lab => mcsat}/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--input--keyboard--gpio_keys_polled.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out_smt-query.0.smt2 (100%) rename tests/regress/{coverage/smtlib/QF_AUFBVNIA/20190307-CPAchecker_kInduction-SoSy_Lab => mcsat}/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--input--keyboard--gpio_keys_polled.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out_smt-query.0.smt2.gold (100%) rename tests/regress/{coverage/smtlib/QF_AUFBVNIA/20190307-CPAchecker_kInduction-SoSy_Lab => mcsat}/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--input--keyboard--gpio_keys_polled.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out_smt-query.0.smt2.options (100%) rename tests/regress/{ => mcsat}/test_qfaufbvnia.smt2 (100%) rename tests/regress/{ => mcsat}/test_qfaufbvnia.smt2.gold (100%) diff --git a/tests/regress/coverage/smtlib/QF_AUFBVNIA/20190307-CPAchecker_kInduction-SoSy_Lab/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--input--keyboard--gpio_keys_polled.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out_smt-query.0.smt2 b/tests/regress/mcsat/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--input--keyboard--gpio_keys_polled.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out_smt-query.0.smt2 similarity index 100% rename from tests/regress/coverage/smtlib/QF_AUFBVNIA/20190307-CPAchecker_kInduction-SoSy_Lab/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--input--keyboard--gpio_keys_polled.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out_smt-query.0.smt2 rename to tests/regress/mcsat/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--input--keyboard--gpio_keys_polled.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out_smt-query.0.smt2 diff --git a/tests/regress/coverage/smtlib/QF_AUFBVNIA/20190307-CPAchecker_kInduction-SoSy_Lab/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--input--keyboard--gpio_keys_polled.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out_smt-query.0.smt2.gold b/tests/regress/mcsat/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--input--keyboard--gpio_keys_polled.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out_smt-query.0.smt2.gold similarity index 100% rename from tests/regress/coverage/smtlib/QF_AUFBVNIA/20190307-CPAchecker_kInduction-SoSy_Lab/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--input--keyboard--gpio_keys_polled.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out_smt-query.0.smt2.gold rename to tests/regress/mcsat/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--input--keyboard--gpio_keys_polled.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out_smt-query.0.smt2.gold diff --git a/tests/regress/coverage/smtlib/QF_AUFBVNIA/20190307-CPAchecker_kInduction-SoSy_Lab/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--input--keyboard--gpio_keys_polled.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out_smt-query.0.smt2.options b/tests/regress/mcsat/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--input--keyboard--gpio_keys_polled.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out_smt-query.0.smt2.options similarity index 100% rename from tests/regress/coverage/smtlib/QF_AUFBVNIA/20190307-CPAchecker_kInduction-SoSy_Lab/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--input--keyboard--gpio_keys_polled.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out_smt-query.0.smt2.options rename to tests/regress/mcsat/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--input--keyboard--gpio_keys_polled.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out_smt-query.0.smt2.options diff --git a/tests/regress/test_qfaufbvnia.smt2 b/tests/regress/mcsat/test_qfaufbvnia.smt2 similarity index 100% rename from tests/regress/test_qfaufbvnia.smt2 rename to tests/regress/mcsat/test_qfaufbvnia.smt2 diff --git a/tests/regress/test_qfaufbvnia.smt2.gold b/tests/regress/mcsat/test_qfaufbvnia.smt2.gold similarity index 100% rename from tests/regress/test_qfaufbvnia.smt2.gold rename to tests/regress/mcsat/test_qfaufbvnia.smt2.gold From ea0b0027631fee718a5c30f6a83c8dde33c3bd01 Mon Sep 17 00:00:00 2001 From: Ahmed <43099566+ahmed-irfan@users.noreply.github.com> Date: Tue, 23 May 2023 12:33:28 -0700 Subject: [PATCH 110/182] Update smt2_commands.h update comments --- src/frontend/smt2/smt2_commands.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/frontend/smt2/smt2_commands.h b/src/frontend/smt2/smt2_commands.h index e673bee13..0978350a4 100644 --- a/src/frontend/smt2/smt2_commands.h +++ b/src/frontend/smt2/smt2_commands.h @@ -290,9 +290,9 @@ typedef struct smt2_cmd_stats_s { * occur after a (push ..) command are removed by the matching (pop ..). * In global mode, declarations are kept independent of (push ..) and (pop ...) * global_decls is false by default. - * - clean_model_format is true by default. This flag determines how models - * are displayed in (get-model). The default is to use a Yices-style - * format. If the flag is false, we use the SMT2-style format (not clean!). + * - clean_model_format is false by default. This flag determines how models + * are displayed in (get-model). If the flag is false, we use the SMT2-style + *. format (not clean!). Otherwise, we use the Yices-style format. * - bvconst_in_decimal is false by default. This flag determines how bit-vector * constants are displayed in (get-model) and (get-value ..>). If the flag * is true, we print them in decimal otherwise, we print them in binary. From dd04be6e5437a5a3e9581ddb4d3f43973c3b9386 Mon Sep 17 00:00:00 2001 From: Ahmed <43099566+ahmed-irfan@users.noreply.github.com> Date: Tue, 23 May 2023 12:34:28 -0700 Subject: [PATCH 111/182] Update smt2_commands.h typo --- src/frontend/smt2/smt2_commands.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/frontend/smt2/smt2_commands.h b/src/frontend/smt2/smt2_commands.h index 0978350a4..36564f8ae 100644 --- a/src/frontend/smt2/smt2_commands.h +++ b/src/frontend/smt2/smt2_commands.h @@ -292,7 +292,7 @@ typedef struct smt2_cmd_stats_s { * global_decls is false by default. * - clean_model_format is false by default. This flag determines how models * are displayed in (get-model). If the flag is false, we use the SMT2-style - *. format (not clean!). Otherwise, we use the Yices-style format. + * format (not clean!). Otherwise, we use the Yices-style format. * - bvconst_in_decimal is false by default. This flag determines how bit-vector * constants are displayed in (get-model) and (get-value ..>). If the flag * is true, we print them in decimal otherwise, we print them in binary. From daedbf9a021ffd4d2e4136523cf9d78b266941fa Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Thu, 18 May 2023 13:39:57 -0700 Subject: [PATCH 112/182] minor typo --- tests/unit/test_api7.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/unit/test_api7.c b/tests/unit/test_api7.c index e5b82694c..90c0d8b89 100644 --- a/tests/unit/test_api7.c +++ b/tests/unit/test_api7.c @@ -152,7 +152,7 @@ static const bool supported[NUM_SMT_LOGICS] = { false, // NRA false, // NIRA false, // RDL - false, // UF + false, // UF false, // ABV false, // ALIA false, // ALRA From cb37f229cf79b709905a389cd0ada7ad02d8712a Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Tue, 23 May 2023 12:39:06 -0700 Subject: [PATCH 113/182] Revert "minor typo" This reverts commit daedbf9a021ffd4d2e4136523cf9d78b266941fa. --- tests/unit/test_api7.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/unit/test_api7.c b/tests/unit/test_api7.c index 90c0d8b89..e5b82694c 100644 --- a/tests/unit/test_api7.c +++ b/tests/unit/test_api7.c @@ -152,7 +152,7 @@ static const bool supported[NUM_SMT_LOGICS] = { false, // NRA false, // NIRA false, // RDL - false, // UF + false, // UF false, // ABV false, // ALIA false, // ALRA From edffd0ad276820dcdfbae55eeb74b8029950713c Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Tue, 23 May 2023 12:39:21 -0700 Subject: [PATCH 114/182] Revert "Update smt2_commands.h" This reverts commit dd04be6e5437a5a3e9581ddb4d3f43973c3b9386. --- src/frontend/smt2/smt2_commands.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/frontend/smt2/smt2_commands.h b/src/frontend/smt2/smt2_commands.h index 36564f8ae..0978350a4 100644 --- a/src/frontend/smt2/smt2_commands.h +++ b/src/frontend/smt2/smt2_commands.h @@ -292,7 +292,7 @@ typedef struct smt2_cmd_stats_s { * global_decls is false by default. * - clean_model_format is false by default. This flag determines how models * are displayed in (get-model). If the flag is false, we use the SMT2-style - * format (not clean!). Otherwise, we use the Yices-style format. + *. format (not clean!). Otherwise, we use the Yices-style format. * - bvconst_in_decimal is false by default. This flag determines how bit-vector * constants are displayed in (get-model) and (get-value ..>). If the flag * is true, we print them in decimal otherwise, we print them in binary. From ff954102426fb238f44c50971da282ec10a58c82 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Tue, 23 May 2023 18:55:26 -0700 Subject: [PATCH 115/182] Revert "Update smt2_commands.h" This reverts commit ea0b0027631fee718a5c30f6a83c8dde33c3bd01. --- src/frontend/smt2/smt2_commands.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/frontend/smt2/smt2_commands.h b/src/frontend/smt2/smt2_commands.h index 0978350a4..e673bee13 100644 --- a/src/frontend/smt2/smt2_commands.h +++ b/src/frontend/smt2/smt2_commands.h @@ -290,9 +290,9 @@ typedef struct smt2_cmd_stats_s { * occur after a (push ..) command are removed by the matching (pop ..). * In global mode, declarations are kept independent of (push ..) and (pop ...) * global_decls is false by default. - * - clean_model_format is false by default. This flag determines how models - * are displayed in (get-model). If the flag is false, we use the SMT2-style - *. format (not clean!). Otherwise, we use the Yices-style format. + * - clean_model_format is true by default. This flag determines how models + * are displayed in (get-model). The default is to use a Yices-style + * format. If the flag is false, we use the SMT2-style format (not clean!). * - bvconst_in_decimal is false by default. This flag determines how bit-vector * constants are displayed in (get-model) and (get-value ..>). If the flag * is true, we print them in decimal otherwise, we print them in binary. From 36cee66d04de90da35fab6131bebdc45b6d74342 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Tue, 23 May 2023 19:00:29 -0700 Subject: [PATCH 116/182] adds missing cases of kind_to_string --- src/mcsat/tracing.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/mcsat/tracing.c b/src/mcsat/tracing.c index a417bf142..7cc0a66ce 100644 --- a/src/mcsat/tracing.c +++ b/src/mcsat/tracing.c @@ -56,6 +56,12 @@ const char* kind_to_string(term_kind_t t) { return "UNINTERPRETED_TERM"; case UPDATE_TERM: return "UPDATE_TERM"; + case ARITH_RDIV: + return "ARITH_RDIV"; + case ARITH_IDIV: + return "ARITH_IDIV"; + case ARITH_MOD: + return "ARITH_MOD"; default: assert(false); return "UNKNOWN_TERM"; From 37f65b0dd8a5555ca5d96bcc0e11527652ba9307 Mon Sep 17 00:00:00 2001 From: Ahmed <43099566+ahmed-irfan@users.noreply.github.com> Date: Tue, 13 Jun 2023 22:44:07 +0500 Subject: [PATCH 117/182] filter select terms according to array terms (#447) * filter select terms according to array terms * rm extra assertion --- src/mcsat/uf/uf_plugin.c | 1 + src/mcsat/weq/weak_eq_graph.c | 31 ++++++++++++++++++++++++++++++- 2 files changed, 31 insertions(+), 1 deletion(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index 332feba12..e781b8972 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -229,6 +229,7 @@ void uf_plugin_add_to_eq_graph(uf_plugin_t* uf, term_t t, bool record) { eq_graph_add_ifun_term(&uf->eq_graph, t, UPDATE_TERM, t_desc->arity, t_desc->arg); // remember array term weq_graph_add_array_term(&uf->weq_graph, t); + weq_graph_add_array_term(&uf->weq_graph, t_desc->arg[0]); // remember select terms term_t r1 = app_term(terms, t, t_desc->arity - 2, t_desc->arg + 1); variable_db_get_variable(uf->ctx->var_db, r1); diff --git a/src/mcsat/weq/weak_eq_graph.c b/src/mcsat/weq/weak_eq_graph.c index 45eb41e5e..62a75eab2 100644 --- a/src/mcsat/weq/weak_eq_graph.c +++ b/src/mcsat/weq/weak_eq_graph.c @@ -1221,7 +1221,6 @@ void weq_graph_array_build_weak_eq_graph(weq_graph_t* weq, term_t t = array_terms->data[i]; term_kind_t t_kind = term_kind(terms, t); assert(is_function_term(terms, t)); - assert(t_kind == UNINTERPRETED_TERM || t_kind == UPDATE_TERM); weq_graph_node_t *b = weq_graph_get_node(weq, t); if (t_kind == UPDATE_TERM) { @@ -1281,6 +1280,34 @@ void copy_uniques(ivector_t *to, ivector_t *from) { } } +/* filtered select terms in the select_terms vector, + * according to the current array terms. + * Basically, we keep select terms whose first argument (i.e. an array) + * is present in the arrays_terms vector. + */ +static +void filter_select_terms(const term_table_t* terms, ivector_t *select_terms, + const ivector_t *array_terms) { + uint32_t i, j; + composite_term_t* select_desc; + int_hset_t array_terms_set; + init_int_hset(&array_terms_set, 0); + + for (i = 0; i < array_terms->size; ++i) { + int_hset_add(&array_terms_set, array_terms->data[i]); + } + + j = 0; + for (i = 0; i < select_terms->size; ++i) { + select_desc = app_term_desc(terms, select_terms->data[i]); + if (int_hset_member(&array_terms_set, select_desc->arg[0])) { + select_terms->data[j++] = select_terms->data[i]; + } + } + ivector_shrink(select_terms, j); + + delete_int_hset(&array_terms_set); +} /* The main method to check array conflicts. The conflict vector will * contain conflicting terms if an array conflict is found. It assumes @@ -1306,6 +1333,8 @@ void weq_graph_check_array_conflict(weq_graph_t* weq, ivector_t* conflict) { init_ivector(&select_terms, 0); copy_uniques(&select_terms, &weq->select_terms); + // filter select terms + filter_select_terms(weq->ctx->terms, &select_terms, &array_terms); // store select terms according to heuristic score int_array_sort2(select_terms.data, select_terms.size, weq->ctx, weq_graph_array_terms_compare); From d6448c122270684ffb308fd8d6f3ca09266f50df Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Tue, 13 Jun 2023 11:12:35 -0700 Subject: [PATCH 118/182] fix leak --- src/mcsat/weq/weak_eq_graph.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/mcsat/weq/weak_eq_graph.c b/src/mcsat/weq/weak_eq_graph.c index 62a75eab2..08690d0d9 100644 --- a/src/mcsat/weq/weak_eq_graph.c +++ b/src/mcsat/weq/weak_eq_graph.c @@ -1278,6 +1278,8 @@ void copy_uniques(ivector_t *to, ivector_t *from) { int_hset_add(&seen, t); } } + + delete_int_hset(&seen); } /* filtered select terms in the select_terms vector, From a1f6a55f99e35c67de89d673054f50f44d1ffc75 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Tue, 13 Jun 2023 11:26:13 -0700 Subject: [PATCH 119/182] add test --- ...cking--locktorture.ko.cil_smt-query.1.smt2 | 1859 +++++++++++++++++ ...--locktorture.ko.cil_smt-query.1.smt2.gold | 1 + ...ocktorture.ko.cil_smt-query.1.smt2.options | 1 + 3 files changed, 1861 insertions(+) create mode 100644 tests/regress/mcsat/arrays/linux-4.0-rc1---kernel--locking--locktorture.ko.cil_smt-query.1.smt2 create mode 100644 tests/regress/mcsat/arrays/linux-4.0-rc1---kernel--locking--locktorture.ko.cil_smt-query.1.smt2.gold create mode 100644 tests/regress/mcsat/arrays/linux-4.0-rc1---kernel--locking--locktorture.ko.cil_smt-query.1.smt2.options diff --git a/tests/regress/mcsat/arrays/linux-4.0-rc1---kernel--locking--locktorture.ko.cil_smt-query.1.smt2 b/tests/regress/mcsat/arrays/linux-4.0-rc1---kernel--locking--locktorture.ko.cil_smt-query.1.smt2 new file mode 100644 index 000000000..c89e97365 --- /dev/null +++ b/tests/regress/mcsat/arrays/linux-4.0-rc1---kernel--locking--locktorture.ko.cil_smt-query.1.smt2 @@ -0,0 +1,1859 @@ +(set-info :smt-lib-version 2.6) +(set-logic QF_AUFBVNIA) +(set-info :source | +Generated by: SoSy-Lab +Generated on: 2019-03-07 +Generator: CPAchecker 1.8-svn 30724 using kInduction +Application: Software Verification for programs written in C +Target solver: MathSAT5 +|) +(set-info :license "https://www.gnu.org/licenses/gpl-2.0.html") +(set-info :category "industrial") +(set-info :status sat) + +(push 1) +(declare-fun __string__ (Int) (_ BitVec 64)) +(declare-fun nwriters_stress@2 () (_ BitVec 32)) +(declare-fun nreaders_stress@2 () (_ BitVec 32)) +(declare-fun onoff_interval@2 () (_ BitVec 32)) +(declare-fun shuffle_interval@2 () (_ BitVec 32)) +(declare-fun shutdown_secs@2 () (_ BitVec 32)) +(declare-fun stat_interval@2 () (_ BitVec 32)) +(declare-fun stutter@2 () (_ BitVec 32)) +(declare-fun verbose@2 () (_ BitVec 8)) +(declare-fun torture_type@2 () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_stats_task@ () (_ BitVec 64)) +(declare-fun writer_tasks@2 () (_ BitVec 64)) +(declare-fun reader_tasks@2 () (_ BitVec 64)) +(declare-fun lock_is_write_held@2 () (_ BitVec 8)) +(declare-fun lock_is_read_held@2 () (_ BitVec 8)) +(declare-fun __ADDRESS_OF_torture_runnable@ () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_cxt@ () (_ BitVec 64)) +(declare-fun cxt$nrealwriters_stress@2 () (_ BitVec 32)) +(declare-fun cxt$nrealreaders_stress@2 () (_ BitVec 32)) +(declare-fun cxt$debug_lock@2 () (_ BitVec 8)) +(declare-fun cxt$n_lock_torture_errors$counter@2 () (_ BitVec 32)) +(declare-fun cxt$cur_ops@2 () (_ BitVec 64)) +(declare-fun cxt$lwsa@2 () (_ BitVec 64)) +(declare-fun cxt$lrsa@2 () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_lock_busted_ops@ () (_ BitVec 64)) +(declare-fun lock_busted_ops$init@2 () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_torture_lock_busted_write_lock@ () (_ BitVec 64)) +(declare-fun lock_busted_ops$writelock@2 () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_torture_lock_busted_write_delay@ () (_ BitVec 64)) +(declare-fun lock_busted_ops$write_delay@2 () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_torture_lock_busted_write_unlock@ () (_ BitVec 64)) +(declare-fun lock_busted_ops$writeunlock@2 () (_ BitVec 64)) +(declare-fun lock_busted_ops$readlock@2 () (_ BitVec 64)) +(declare-fun lock_busted_ops$read_delay@2 () (_ BitVec 64)) +(declare-fun lock_busted_ops$readunlock@2 () (_ BitVec 64)) +(declare-fun lock_busted_ops$name@2 () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_torture_spinlock@ () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_spin_lock_ops@ () (_ BitVec 64)) +(declare-fun spin_lock_ops$init@2 () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_torture_spin_lock_write_lock@ () (_ BitVec 64)) +(declare-fun spin_lock_ops$writelock@2 () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_torture_spin_lock_write_delay@ () (_ BitVec 64)) +(declare-fun spin_lock_ops$write_delay@2 () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_torture_spin_lock_write_unlock@ () (_ BitVec 64)) +(declare-fun spin_lock_ops$writeunlock@2 () (_ BitVec 64)) +(declare-fun spin_lock_ops$readlock@2 () (_ BitVec 64)) +(declare-fun spin_lock_ops$read_delay@2 () (_ BitVec 64)) +(declare-fun spin_lock_ops$readunlock@2 () (_ BitVec 64)) +(declare-fun spin_lock_ops$name@2 () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_spin_lock_irq_ops@ () (_ BitVec 64)) +(declare-fun spin_lock_irq_ops$init@2 () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_torture_spin_lock_write_lock_irq@ () (_ BitVec 64)) +(declare-fun spin_lock_irq_ops$writelock@2 () (_ BitVec 64)) +(declare-fun spin_lock_irq_ops$write_delay@2 () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_torture_lock_spin_write_unlock_irq@ () (_ BitVec 64)) +(declare-fun spin_lock_irq_ops$writeunlock@2 () (_ BitVec 64)) +(declare-fun spin_lock_irq_ops$readlock@2 () (_ BitVec 64)) +(declare-fun spin_lock_irq_ops$read_delay@2 () (_ BitVec 64)) +(declare-fun spin_lock_irq_ops$readunlock@2 () (_ BitVec 64)) +(declare-fun spin_lock_irq_ops$name@2 () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_rw_lock_ops@ () (_ BitVec 64)) +(declare-fun rw_lock_ops$init@2 () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_torture_rwlock_write_lock@ () (_ BitVec 64)) +(declare-fun rw_lock_ops$writelock@2 () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_torture_rwlock_write_delay@ () (_ BitVec 64)) +(declare-fun rw_lock_ops$write_delay@2 () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_torture_rwlock_write_unlock@ () (_ BitVec 64)) +(declare-fun rw_lock_ops$writeunlock@2 () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_torture_rwlock_read_lock@ () (_ BitVec 64)) +(declare-fun rw_lock_ops$readlock@2 () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_torture_rwlock_read_delay@ () (_ BitVec 64)) +(declare-fun rw_lock_ops$read_delay@2 () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_torture_rwlock_read_unlock@ () (_ BitVec 64)) +(declare-fun rw_lock_ops$readunlock@2 () (_ BitVec 64)) +(declare-fun rw_lock_ops$name@2 () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_rw_lock_irq_ops@ () (_ BitVec 64)) +(declare-fun rw_lock_irq_ops$init@2 () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_torture_rwlock_write_lock_irq@ () (_ BitVec 64)) +(declare-fun rw_lock_irq_ops$writelock@2 () (_ BitVec 64)) +(declare-fun rw_lock_irq_ops$write_delay@2 () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_torture_rwlock_write_unlock_irq@ () (_ BitVec 64)) +(declare-fun rw_lock_irq_ops$writeunlock@2 () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_torture_rwlock_read_lock_irq@ () (_ BitVec 64)) +(declare-fun rw_lock_irq_ops$readlock@2 () (_ BitVec 64)) +(declare-fun rw_lock_irq_ops$read_delay@2 () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_torture_rwlock_read_unlock_irq@ () (_ BitVec 64)) +(declare-fun rw_lock_irq_ops$readunlock@2 () (_ BitVec 64)) +(declare-fun rw_lock_irq_ops$name@2 () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_torture_mutex@ () (_ BitVec 64)) +(declare-fun *int@1 () (Array (_ BitVec 64) (_ BitVec 32))) +(declare-fun __ADDRESS_OF_mutex_lock_ops@ () (_ BitVec 64)) +(declare-fun mutex_lock_ops$init@2 () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_torture_mutex_lock@ () (_ BitVec 64)) +(declare-fun mutex_lock_ops$writelock@2 () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_torture_mutex_delay@ () (_ BitVec 64)) +(declare-fun mutex_lock_ops$write_delay@2 () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_torture_mutex_unlock@ () (_ BitVec 64)) +(declare-fun mutex_lock_ops$writeunlock@2 () (_ BitVec 64)) +(declare-fun mutex_lock_ops$readlock@2 () (_ BitVec 64)) +(declare-fun mutex_lock_ops$read_delay@2 () (_ BitVec 64)) +(declare-fun mutex_lock_ops$readunlock@2 () (_ BitVec 64)) +(declare-fun mutex_lock_ops$name@2 () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_torture_rwsem@ () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_rwsem_lock_ops@ () (_ BitVec 64)) +(declare-fun rwsem_lock_ops$init@2 () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_torture_rwsem_down_write@ () (_ BitVec 64)) +(declare-fun rwsem_lock_ops$writelock@2 () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_torture_rwsem_write_delay@ () (_ BitVec 64)) +(declare-fun rwsem_lock_ops$write_delay@2 () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_torture_rwsem_up_write@ () (_ BitVec 64)) +(declare-fun rwsem_lock_ops$writeunlock@2 () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_torture_rwsem_down_read@ () (_ BitVec 64)) +(declare-fun rwsem_lock_ops$readlock@2 () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_torture_rwsem_read_delay@ () (_ BitVec 64)) +(declare-fun rwsem_lock_ops$read_delay@2 () (_ BitVec 64)) +(declare-fun __ADDRESS_OF_torture_rwsem_up_read@ () (_ BitVec 64)) +(declare-fun rwsem_lock_ops$readunlock@2 () (_ BitVec 64)) +(declare-fun rwsem_lock_ops$name@2 () (_ BitVec 64)) +(declare-fun ldv_linux_alloc_usb_lock_lock@2 () (_ BitVec 32)) +(declare-fun ldv_linux_arch_io_iomem@2 () (_ BitVec 32)) +(declare-fun ldv_linux_block_genhd_disk_state@2 () (_ BitVec 32)) +(declare-fun ldv_linux_block_queue_queue_state@2 () (_ BitVec 32)) +(declare-fun ldv_linux_block_request_blk_rq@2 () (_ BitVec 32)) +(declare-fun ldv_linux_drivers_base_class_usb_gadget_class@2 () (_ BitVec 32)) +(declare-fun ldv_linux_fs_char_dev_usb_gadget_chrdev@2 () (_ BitVec 32)) +(declare-fun ldv_linux_fs_sysfs_sysfs@2 () (_ BitVec 32)) +(declare-fun ldv_linux_kernel_locking_rwlock_rlock@2 () (_ BitVec 32)) +(declare-fun ldv_linux_kernel_locking_rwlock_wlock@2 () (_ BitVec 32)) +(declare-fun ldv_linux_kernel_module_module_refcounter@2 () (_ BitVec 32)) +(declare-fun ldv_linux_kernel_rcu_srcu_srcu_nested@2 () (_ BitVec 32)) +(declare-fun ldv_linux_kernel_rcu_update_lock_bh_rcu_nested_bh@2 () (_ BitVec 32)) +(declare-fun ldv_linux_kernel_rcu_update_lock_sched_rcu_nested_sched@2 () (_ BitVec 32)) +(declare-fun ldv_linux_kernel_rcu_update_lock_rcu_nested@2 () (_ BitVec 32)) +(declare-fun __ldv_in_interrupt_context@2 () (_ BitVec 8)) +(declare-fun ldv_linux_mmc_sdio_func_sdio_element@2 () (_ BitVec 16)) +(declare-fun ldv_linux_net_register_probe_state@2 () (_ BitVec 32)) +(declare-fun rtnllocknumber@2 () (_ BitVec 32)) +(declare-fun locksocknumber@2 () (_ BitVec 32)) +(declare-fun ldv_linux_usb_coherent_coherent_state@2 () (_ BitVec 32)) +(declare-fun LDV_LINUX_USB_DEV_USB_DEV_REF_COUNTS@2 () (_ BitVec 32)) +(declare-fun ldv_linux_usb_gadget_usb_gadget@2 () (_ BitVec 32)) +(declare-fun ldv_linux_usb_register_probe_state@2 () (_ BitVec 32)) +(declare-fun ldv_linux_usb_urb_urb_state@2 () (_ BitVec 32)) +(declare-fun LDV_LINUX_KERNEL_LOCKING_MUTEX_MUTEXES_lock@2 () (_ BitVec 8)) +(declare-fun LDV_LINUX_KERNEL_LOCKING_MUTEX_MUTEXES_torture_mutex@2 () (_ BitVec 8)) +(declare-fun ldv_linux_kernel_locking_spinlock_spin_alloc_lock_of_task_struct@2 () (_ BitVec 32)) +(declare-fun ldv_linux_kernel_locking_spinlock_spin_lock@2 () (_ BitVec 32)) +(declare-fun ldv_linux_kernel_locking_spinlock_spin_lock_of_NOT_ARG_SIGN@2 () (_ BitVec 32)) +(declare-fun ldv_linux_kernel_locking_spinlock_spin_node_size_lock_of_pglist_data@2 () (_ BitVec 32)) +(declare-fun ldv_linux_kernel_locking_spinlock_spin_siglock_of_sighand_struct@2 () (_ BitVec 32)) +(declare-fun ldv_linux_kernel_locking_spinlock_spin_torture_spinlock@2 () (_ BitVec 32)) +(declare-fun ldv_linux_kernel_sched_completion_completion@2 () (_ BitVec 32)) +(declare-fun ldv_linux_lib_idr_idr@2 () (_ BitVec 32)) +(declare-fun nr_cpu_ids@2 () (_ BitVec 32)) +(declare-fun |ldv_assume::expression@2| () (_ BitVec 32)) +(declare-fun |__ADDRESS_OF_lock_torture_init::torture_ops@| () (_ BitVec 64)) +(declare-fun |lock_torture_init::firsterr@3| () (_ BitVec 32)) +(declare-fun |*(Return_type:_[void],_Parameters:_0,_VarArgs:_false)*@1| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |*(Return_type:_[int],_Parameters:_0,_VarArgs:_false)*@1| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |*(Return_type:_[void],_Parameters:_1,_Parameter_1_type:_[(struct_torture_random_state)*],_VarArgs:_false)*@1| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |*(char)*@1| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |*(struct_lock_torture_ops)*@1| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |*(struct_lock_torture_ops)*@2| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |*(struct_lock_torture_ops)*@3| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |*(struct_lock_torture_ops)*@4| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |*(struct_lock_torture_ops)*@5| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |*(struct_lock_torture_ops)*@6| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |*(struct_lock_torture_ops)*@7| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun |*(struct_lock_torture_ops)*@8| () (Array (_ BitVec 64) (_ BitVec 64))) +(declare-fun __VERIFIER_nondet_bool@2 () (_ BitVec 8)) +(declare-fun |torture_init_begin::__CPAchecker_TMP_0@3| () (_ BitVec 8)) +(declare-fun |torture_init_begin::__retval__@2| () (_ BitVec 8)) +(declare-fun |lock_torture_init::__retval__@2| () (_ BitVec 32)) +(declare-fun cxt$cur_ops@3 () (_ BitVec 64)) +(declare-fun strcmp ((_ BitVec 64) (_ BitVec 64)) (_ BitVec 32)) +(declare-fun |lock_torture_init::i@4| () (_ BitVec 32)) +(declare-fun |lock_torture_init::__CPAchecker_TMP_0@2| () (_ BitVec 64)) +(declare-fun |kmalloc::flags@2| () (_ BitVec 32)) +(declare-fun |ldv_check_alloc_flags::flags@2| () (_ BitVec 32)) +(declare-fun |ldv_linux_alloc_irq_check_alloc_flags::flags@2| () (_ BitVec 32)) +(declare-fun |ldv_in_interrupt_context::__retval__@2| () (_ BitVec 8)) +(declare-fun |ldv_linux_alloc_irq_check_alloc_flags::__CPAchecker_TMP_0@3| () (_ BitVec 32)) +(declare-fun |ldv_assert_linux_alloc_irq__wrong_flags::expr@2| () (_ BitVec 32)) +(declare-fun |ldv_linux_alloc_usb_lock_check_alloc_flags::flags@2| () (_ BitVec 32)) +(declare-fun __VERIFIER_nondet_int@2 () (_ BitVec 32)) +(declare-fun |ldv_undef_int::tmp@3| () (_ BitVec 32)) +(declare-fun |ldv_undef_int::__retval__@2| () (_ BitVec 32)) +(declare-fun |ldv_malloc_unknown_size::__retval__@2| () (_ BitVec 64)) +(declare-fun __VERIFIER_nondet_pointer@2 () (_ BitVec 64)) +(declare-fun |external_alloc::__CPAchecker_TMP_0@3| () (_ BitVec 64)) +(declare-fun |external_alloc::__retval__@2| () (_ BitVec 64)) +(declare-fun |external_allocated_data::__retval__@2| () (_ BitVec 64)) +(declare-fun |ldv_is_err::ptr@2| () (_ BitVec 64)) +(declare-fun |ldv_is_err::__retval__@2| () (_ BitVec 64)) +(declare-fun |kmalloc::__retval__@2| () (_ BitVec 64)) +(declare-fun |printk::__CPAchecker_TMP_0@1| () (_ BitVec 32)) +(declare-fun |printk::__retval__@2| () (_ BitVec 32)) +(declare-fun __VERIFIER_nondet_int@3 () (_ BitVec 32)) +(declare-fun |ldv_assert_linux_kernel_locking_rwlock__double_write_unlock::expr@2| () (_ BitVec 32)) +(declare-fun |__ADDRESS_OF_cpumask_weight::srcp@| () (_ BitVec 64)) +(declare-fun __VERIFIER_nondet_int@4 () (_ BitVec 32)) +(declare-fun |__bitmap_weight::__CPAchecker_TMP_0@3| () (_ BitVec 32)) +(declare-fun |__bitmap_weight::__retval__@2| () (_ BitVec 32)) +(declare-fun |bitmap_weight::__retval__@2| () (_ BitVec 32)) +(declare-fun |cpumask_weight::__retval__@2| () (_ BitVec 32)) +(declare-fun strncmp ((_ BitVec 64) (_ BitVec 64) (_ BitVec 64)) (_ BitVec 32)) +(declare-fun lock_is_write_held@3 () (_ BitVec 8)) +(declare-fun __VERIFIER_nondet_int@5 () (_ BitVec 32)) +(declare-fun |ldv_malloc_unknown_size::res@6| () (_ BitVec 64)) +(declare-fun |ldv_malloc_unknown_size::tmp@6| () (_ BitVec 64)) +(declare-fun |lock_torture_init::__CPAchecker_TMP_1@2| () (_ BitVec 64)) +(declare-fun __VERIFIER_nondet_int@6 () (_ BitVec 32)) +(declare-fun |cpumask_weight::tmp@5| () (_ BitVec 32)) +(declare-fun __VERIFIER_nondet_int@7 () (_ BitVec 32)) +(declare-fun |ldv_malloc_unknown_size::tmp___0@8| () (_ BitVec 64)) +(declare-fun |torture_shuffle_init::__CPAchecker_TMP_0@3| () (_ BitVec 32)) +(declare-fun |torture_shuffle_init::__retval__@2| () (_ BitVec 32)) +(declare-fun __VERIFIER_nondet_int@8 () (_ BitVec 32)) +(declare-fun |torture_stutter_init::__CPAchecker_TMP_0@3| () (_ BitVec 32)) +(declare-fun |torture_stutter_init::__retval__@2| () (_ BitVec 32)) +(declare-fun __VERIFIER_nondet_int@9 () (_ BitVec 32)) +(declare-fun |kzalloc::size@2| () (_ BitVec 64)) +(declare-fun |kzalloc::flags@2| () (_ BitVec 32)) +(declare-fun |ldv_kzalloc::size@2| () (_ BitVec 64)) +(declare-fun |ldv_kzalloc::flags@2| () (_ BitVec 32)) +(declare-fun |ldv_zalloc::size@2| () (_ BitVec 64)) +(declare-fun |ldv_calloc::nmemb@2| () (_ BitVec 64)) +(declare-fun |ldv_calloc::size@2| () (_ BitVec 64)) +(declare-fun |ldv_calloc::__retval__@2| () (_ BitVec 64)) +(declare-fun calloc@2 () (_ BitVec 64)) +(declare-fun |__ADDRESS_OF___VERIFIER_successful_zalloc_*void#1@| () (_ BitVec 64)) +(declare-fun |ldv_zalloc::__retval__@2| () (_ BitVec 64)) +(declare-fun |ldv_kzalloc::__retval__@2| () (_ BitVec 64)) +(declare-fun |kzalloc::__retval__@2| () (_ BitVec 64)) +(declare-fun __VERIFIER_nondet_int@10 () (_ BitVec 32)) +(declare-fun writer_tasks@3 () (_ BitVec 64)) +(declare-fun |lock_torture_init::__CPAchecker_TMP_2@2| () (_ BitVec 64)) +(declare-fun |ldv_calloc::res@4| () (_ BitVec 64)) +(declare-fun |ldv_calloc::tmp@4| () (_ BitVec 64)) +(declare-fun |_torture_create_kthread::__CPAchecker_TMP_0@3| () (_ BitVec 32)) +(declare-fun |_torture_create_kthread::__retval__@2| () (_ BitVec 32)) +(declare-fun |ldv_EMGentry_init_lock_torture_init_6_9::__retval__@2| () (_ BitVec 32)) +(declare-fun |ldv_ldv_post_init_85::ldv_func_arg1@2| () (_ BitVec 32)) +(declare-fun ldv_linux_net_register_probe_state@3 () (_ BitVec 32)) +(declare-fun ldv_linux_usb_register_probe_state@3 () (_ BitVec 32)) +(declare-fun |ldv_post_init::init_ret_val@2| () (_ BitVec 32)) +(declare-fun |ldv_filter_positive_int::val@2| () (_ BitVec 32)) +(declare-fun |ldv_filter_positive_int::__retval__@2| () (_ BitVec 32)) +(declare-fun |ldv_post_init::__retval__@2| () (_ BitVec 32)) +(declare-fun |ldv_ldv_post_init_85::__retval__@2| () (_ BitVec 32)) +(declare-fun |ldv_assume::expression@18| () (_ BitVec 32)) +(declare-fun |ldv_xmalloc::size@2| () (_ BitVec 64)) +(declare-fun malloc@2 () (_ BitVec 64)) +(declare-fun |ldv_xmalloc::tmp@3| () (_ BitVec 64)) +(declare-fun |ldv_xmalloc::res@3| () (_ BitVec 64)) +(declare-fun |ldv_xmalloc::__retval__@2| () (_ BitVec 64)) +(declare-fun |ldv_xmalloc::tmp___0@5| () (_ BitVec 64)) +(declare-fun |ldv_assume::expression@21| () (_ BitVec 32)) +(declare-fun |ldv_undef_int::tmp@23| () (_ BitVec 32)) +(declare-fun |lock_torture_init::tmp@4| () (_ BitVec 8)) +(declare-fun |lock_torture_init::tmp___0@4| () (_ BitVec 32)) +(declare-fun |lock_torture_init::tmp___1@4| () (_ BitVec 32)) +(declare-fun |bitmap_weight::tmp___0@4| () (_ BitVec 32)) +(declare-fun |lock_torture_init::tmp___2@7| () (_ BitVec 32)) +(declare-fun cxt$nrealwriters_stress@3 () (_ BitVec 32)) +(declare-fun |lock_torture_init::tmp___3@7| () (_ BitVec 32)) +(declare-fun |lock_torture_init::tmp___4@7| () (_ BitVec 32)) +(declare-fun cxt$debug_lock@3 () (_ BitVec 8)) +(declare-fun |ldv_linux_alloc_irq_check_alloc_flags::tmp@4| () (_ BitVec 8)) +(declare-fun |ldv_linux_alloc_irq_check_alloc_flags::tmp___0@4| () (_ BitVec 32)) +(declare-fun |ldv_malloc_unknown_size::tmp___1@4| () (_ BitVec 32)) +(declare-fun |external_allocated_data::__CPAchecker_TMP_0@4| () (_ BitVec 64)) +(declare-fun |kmalloc::res@15| () (_ BitVec 64)) +(declare-fun |lock_torture_init::tmp___6@21| () (_ BitVec 64)) +(declare-fun cxt$lwsa@3 () (_ BitVec 64)) +(declare-fun |lock_torture_init::i@22| () (_ BitVec 32)) +(declare-fun |lock_torture_init::firsterr@25| () (_ BitVec 32)) +(declare-fun |lock_torture_init::firsterr@27| () (_ BitVec 32)) +(declare-fun |ldv_check_alloc_flags::flags@21| () (_ BitVec 32)) +(declare-fun |ldv_linux_alloc_irq_check_alloc_flags::flags@21| () (_ BitVec 32)) +(declare-fun |ldv_in_interrupt_context::__retval__@20| () (_ BitVec 8)) +(declare-fun |ldv_linux_alloc_irq_check_alloc_flags::tmp@24| () (_ BitVec 8)) +(declare-fun |ldv_linux_alloc_irq_check_alloc_flags::tmp___0@24| () (_ BitVec 32)) +(declare-fun |ldv_linux_alloc_irq_check_alloc_flags::__CPAchecker_TMP_0@23| () (_ BitVec 32)) +(declare-fun |ldv_assert_linux_alloc_irq__wrong_flags::expr@21| () (_ BitVec 32)) +(declare-fun |ldv_linux_alloc_usb_lock_check_alloc_flags::flags@21| () (_ BitVec 32)) +(declare-fun |ldv_undef_int::__retval__@20| () (_ BitVec 32)) +(declare-fun |ldv_calloc::tmp___1@4| () (_ BitVec 32)) +(declare-fun |ldv_assume::expression@36| () (_ BitVec 32)) +(declare-fun |ldv_is_err::ptr@19| () (_ BitVec 64)) +(declare-fun |ldv_is_err::__retval__@18| () (_ BitVec 64)) +(declare-fun |ldv_calloc::tmp___0@6| () (_ BitVec 64)) +(declare-fun |ldv_assume::expression@39| () (_ BitVec 32)) +(declare-fun |ldv_zalloc::tmp@8| () (_ BitVec 64)) +(declare-fun |ldv_kzalloc::res@14| () (_ BitVec 64)) +(declare-fun |kzalloc::tmp@16| () (_ BitVec 64)) +(declare-fun |lock_torture_init::tmp___9@39| () (_ BitVec 64)) +(declare-fun |lock_torture_init::i@41| () (_ BitVec 32)) +(declare-fun |lock_torture_init::j@39| () (_ BitVec 32)) +(declare-fun |lock_torture_init::firsterr@43| () (_ BitVec 32)) +(declare-fun |ldv_EMGentry_init_lock_torture_init_6_9::tmp@42| () (_ BitVec 32)) +(declare-fun |ldv_entry_EMGentry_6::ldv_6_ret_default@43| () (_ BitVec 32)) +(declare-fun |ldv_assume::expression@52| () (_ BitVec 32)) +(declare-fun |ldv_post_init::tmp@5| () (_ BitVec 32)) +(declare-fun |ldv_ldv_post_init_85::tmp@8| () (_ BitVec 32)) +(declare-fun |ldv_entry_EMGentry_6::ldv_6_ret_default@50| () (_ BitVec 32)) +(declare-fun |ldv_undef_int::tmp@44| () (_ BitVec 32)) +(declare-fun |ldv_undef_int::__retval__@39| () (_ BitVec 32)) +(declare-fun |ldv_entry_EMGentry_6::tmp___0@50| () (_ BitVec 32)) +(declare-fun |ldv_assume::expression@58| () (_ BitVec 32)) +(declare-fun |ldv_undef_int::tmp@48| () (_ BitVec 32)) +(declare-fun |ldv_undef_int::__retval__@41| () (_ BitVec 32)) +(declare-fun |ldv_entry_EMGentry_6::tmp@52| () (_ BitVec 32)) +(declare-fun |__ADDRESS_OF___VERIFIER_successful_alloc_*void#2@| () (_ BitVec 64)) +(declare-fun |ldv_assume::expression@61| () (_ BitVec 32)) +(declare-fun |ldv_is_err::ptr@41| () (_ BitVec 64)) +(declare-fun |ldv_is_err::__retval__@39| () (_ BitVec 64)) +(declare-fun |ldv_assume::expression@64| () (_ BitVec 32)) +(declare-fun |ldv_undef_int::tmp@55| () (_ BitVec 32)) +(declare-fun |ldv_undef_int::__retval__@46| () (_ BitVec 32)) +(declare-fun |ldv_struct_noname_2_dummy_resourceless_instance_0::tmp@4| () (_ BitVec 32)) +(define-fun _8 () (_ BitVec 64) (_ bv0 64)) +(define-fun _9 () (_ BitVec 64) (_ bv4 64)) +(define-fun _10 () (_ BitVec 32) (_ bv4294967295 32)) +(define-fun _11 () (_ BitVec 32) nwriters_stress@2) +(define-fun _12 () Bool (= _11 _10)) +(define-fun _13 () (_ BitVec 32) nreaders_stress@2) +(define-fun _14 () Bool (= _13 _10)) +(define-fun _15 () Bool (and _12 _14)) +(define-fun _16 () (_ BitVec 32) (_ bv0 32)) +(define-fun _17 () (_ BitVec 32) onoff_interval@2) +(define-fun _18 () Bool (= _17 _16)) +(define-fun _19 () Bool (and _15 _18)) +(define-fun _20 () (_ BitVec 32) (_ bv3 32)) +(define-fun _21 () (_ BitVec 32) shuffle_interval@2) +(define-fun _22 () Bool (= _21 _20)) +(define-fun _23 () Bool (and _19 _22)) +(define-fun _24 () (_ BitVec 32) shutdown_secs@2) +(define-fun _25 () Bool (= _24 _16)) +(define-fun _26 () Bool (and _23 _25)) +(define-fun _27 () (_ BitVec 32) (_ bv60 32)) +(define-fun _28 () (_ BitVec 32) stat_interval@2) +(define-fun _29 () Bool (= _28 _27)) +(define-fun _30 () Bool (and _26 _29)) +(define-fun _31 () (_ BitVec 32) (_ bv5 32)) +(define-fun _32 () (_ BitVec 32) stutter@2) +(define-fun _33 () Bool (= _32 _31)) +(define-fun _34 () Bool (and _30 _33)) +(define-fun _35 () (_ BitVec 64) (_ bv1 64)) +(define-fun _36 () (_ BitVec 32) (_ bv1 32)) +(define-fun _37 () (_ BitVec 8) (_ bv0 8)) +(define-fun _38 () (_ BitVec 8) (_ bv1 8)) +(define-fun _39 () (_ BitVec 8) verbose@2) +(define-fun _40 () Bool (= _39 _38)) +(define-fun _41 () Bool (and _34 _40)) +(define-fun _42 () (_ BitVec 64) (_ bv8 64)) +(define-fun _43 () Int 0) +(define-fun _44 () (_ BitVec 64) (__string__ _43)) +(define-fun _45 () (_ BitVec 64) torture_type@2) +(define-fun _46 () Bool (= _44 _45)) +(define-fun _47 () Bool (and _41 _46)) +(define-fun _48 () (_ BitVec 64) __ADDRESS_OF_stats_task@) +(define-fun _49 () Bool (bvslt _8 _48)) +(define-fun _51 () (_ BitVec 64) (bvadd _42 _48)) +(define-fun _52 () Bool (bvslt _8 _51)) +(define-fun _53 () Bool (and _49 _52)) +(define-fun _54 () Bool (and _47 _53)) +(define-fun _55 () (_ BitVec 64) writer_tasks@2) +(define-fun _56 () Bool (= _55 _8)) +(define-fun _57 () Bool (and _54 _56)) +(define-fun _58 () (_ BitVec 64) reader_tasks@2) +(define-fun _59 () Bool (= _58 _8)) +(define-fun _60 () Bool (and _57 _59)) +(define-fun _61 () (_ BitVec 8) lock_is_write_held@2) +(define-fun _62 () Bool (= _61 _37)) +(define-fun _63 () Bool (and _60 _62)) +(define-fun _64 () (_ BitVec 8) lock_is_read_held@2) +(define-fun _65 () Bool (= _64 _37)) +(define-fun _66 () Bool (and _63 _65)) +(define-fun _67 () (_ BitVec 64) __ADDRESS_OF_torture_runnable@) +(define-fun _68 () Bool (bvslt _51 _67)) +(define-fun _70 () (_ BitVec 64) (bvadd _9 _67)) +(define-fun _71 () Bool (bvslt _8 _70)) +(define-fun _72 () Bool (and _68 _71)) +(define-fun _73 () Bool (and _66 _72)) +(define-fun _74 () (_ BitVec 64) (_ bv40 64)) +(define-fun _75 () (_ BitVec 64) __ADDRESS_OF_cxt@) +(define-fun _76 () Bool (bvslt _70 _75)) +(define-fun _78 () (_ BitVec 64) (bvadd _74 _75)) +(define-fun _79 () Bool (bvslt _8 _78)) +(define-fun _80 () (_ BitVec 32) cxt$nrealwriters_stress@2) +(define-fun _81 () Bool (= _80 _16)) +(define-fun _82 () (_ BitVec 32) cxt$nrealreaders_stress@2) +(define-fun _83 () Bool (= _82 _16)) +(define-fun _84 () Bool (and _81 _83)) +(define-fun _85 () (_ BitVec 8) cxt$debug_lock@2) +(define-fun _86 () Bool (= _85 _37)) +(define-fun _87 () Bool (and _84 _86)) +(define-fun _88 () (_ BitVec 32) cxt$n_lock_torture_errors$counter@2) +(define-fun _89 () Bool (= _88 _16)) +(define-fun _90 () Bool (and _87 _89)) +(define-fun _91 () (_ BitVec 64) cxt$cur_ops@2) +(define-fun _92 () Bool (= _91 _8)) +(define-fun _93 () Bool (and _90 _92)) +(define-fun _94 () (_ BitVec 64) cxt$lwsa@2) +(define-fun _95 () Bool (= _94 _8)) +(define-fun _96 () Bool (and _93 _95)) +(define-fun _97 () (_ BitVec 64) cxt$lrsa@2) +(define-fun _98 () Bool (= _97 _8)) +(define-fun _99 () Bool (and _96 _98)) +(define-fun _100 () Bool (and _76 _79)) +(define-fun _101 () Bool (and _99 _100)) +(define-fun _102 () Bool (and _73 _101)) +(define-fun _103 () (_ BitVec 64) (_ bv72 64)) +(define-fun _104 () (_ BitVec 64) __ADDRESS_OF_lock_busted_ops@) +(define-fun _105 () Bool (bvslt _78 _104)) +(define-fun _107 () (_ BitVec 64) (bvadd _103 _104)) +(define-fun _108 () Bool (bvslt _8 _107)) +(define-fun _109 () (_ BitVec 64) lock_busted_ops$init@2) +(define-fun _110 () Bool (= _109 _8)) +(define-fun _111 () (_ BitVec 64) __ADDRESS_OF_torture_lock_busted_write_lock@) +(define-fun _112 () Bool (bvslt _107 _111)) +(define-fun _114 () (_ BitVec 64) (bvadd _42 _111)) +(define-fun _115 () Bool (bvslt _8 _114)) +(define-fun _116 () (_ BitVec 64) lock_busted_ops$writelock@2) +(define-fun _117 () Bool (= _111 _116)) +(define-fun _118 () Bool (and _110 _117)) +(define-fun _119 () (_ BitVec 64) __ADDRESS_OF_torture_lock_busted_write_delay@) +(define-fun _120 () Bool (bvslt _114 _119)) +(define-fun _122 () (_ BitVec 64) (bvadd _42 _119)) +(define-fun _123 () Bool (bvslt _8 _122)) +(define-fun _124 () (_ BitVec 64) lock_busted_ops$write_delay@2) +(define-fun _125 () Bool (= _119 _124)) +(define-fun _126 () Bool (and _118 _125)) +(define-fun _127 () (_ BitVec 64) __ADDRESS_OF_torture_lock_busted_write_unlock@) +(define-fun _128 () Bool (bvslt _122 _127)) +(define-fun _130 () (_ BitVec 64) (bvadd _42 _127)) +(define-fun _131 () Bool (bvslt _8 _130)) +(define-fun _132 () (_ BitVec 64) lock_busted_ops$writeunlock@2) +(define-fun _133 () Bool (= _127 _132)) +(define-fun _134 () Bool (and _126 _133)) +(define-fun _135 () (_ BitVec 64) lock_busted_ops$readlock@2) +(define-fun _136 () Bool (= _135 _8)) +(define-fun _137 () Bool (and _134 _136)) +(define-fun _138 () (_ BitVec 64) lock_busted_ops$read_delay@2) +(define-fun _139 () Bool (= _138 _8)) +(define-fun _140 () Bool (and _137 _139)) +(define-fun _141 () (_ BitVec 64) lock_busted_ops$readunlock@2) +(define-fun _142 () Bool (= _141 _8)) +(define-fun _143 () Bool (and _140 _142)) +(define-fun _144 () Int 1) +(define-fun _145 () (_ BitVec 64) (__string__ _144)) +(define-fun _146 () (_ BitVec 64) lock_busted_ops$name@2) +(define-fun _147 () Bool (= _145 _146)) +(define-fun _148 () Bool (and _143 _147)) +(define-fun _149 () Bool (and _105 _108)) +(define-fun _150 () Bool (and _112 _149)) +(define-fun _151 () Bool (and _115 _150)) +(define-fun _152 () Bool (and _120 _151)) +(define-fun _153 () Bool (and _123 _152)) +(define-fun _154 () Bool (and _128 _153)) +(define-fun _155 () Bool (and _131 _154)) +(define-fun _156 () Bool (and _148 _155)) +(define-fun _157 () Bool (and _102 _156)) +(define-fun _158 () (_ BitVec 64) __ADDRESS_OF_torture_spinlock@) +(define-fun _159 () Bool (bvslt _130 _158)) +(define-fun _161 () (_ BitVec 64) (bvadd _103 _158)) +(define-fun _162 () Bool (bvslt _8 _161)) +(define-fun _163 () Bool (and _159 _162)) +(define-fun _164 () Bool (and _157 _163)) +(define-fun _165 () (_ BitVec 64) __ADDRESS_OF_spin_lock_ops@) +(define-fun _166 () Bool (bvslt _161 _165)) +(define-fun _168 () (_ BitVec 64) (bvadd _103 _165)) +(define-fun _169 () Bool (bvslt _8 _168)) +(define-fun _170 () (_ BitVec 64) spin_lock_ops$init@2) +(define-fun _171 () Bool (= _170 _8)) +(define-fun _172 () (_ BitVec 64) __ADDRESS_OF_torture_spin_lock_write_lock@) +(define-fun _173 () Bool (bvslt _168 _172)) +(define-fun _175 () (_ BitVec 64) (bvadd _42 _172)) +(define-fun _176 () Bool (bvslt _8 _175)) +(define-fun _177 () (_ BitVec 64) spin_lock_ops$writelock@2) +(define-fun _178 () Bool (= _172 _177)) +(define-fun _179 () Bool (and _171 _178)) +(define-fun _180 () (_ BitVec 64) __ADDRESS_OF_torture_spin_lock_write_delay@) +(define-fun _181 () Bool (bvslt _175 _180)) +(define-fun _183 () (_ BitVec 64) (bvadd _42 _180)) +(define-fun _184 () Bool (bvslt _8 _183)) +(define-fun _185 () (_ BitVec 64) spin_lock_ops$write_delay@2) +(define-fun _186 () Bool (= _180 _185)) +(define-fun _187 () Bool (and _179 _186)) +(define-fun _188 () (_ BitVec 64) __ADDRESS_OF_torture_spin_lock_write_unlock@) +(define-fun _189 () Bool (bvslt _183 _188)) +(define-fun _191 () (_ BitVec 64) (bvadd _42 _188)) +(define-fun _192 () Bool (bvslt _8 _191)) +(define-fun _193 () (_ BitVec 64) spin_lock_ops$writeunlock@2) +(define-fun _194 () Bool (= _188 _193)) +(define-fun _195 () Bool (and _187 _194)) +(define-fun _196 () (_ BitVec 64) spin_lock_ops$readlock@2) +(define-fun _197 () Bool (= _196 _8)) +(define-fun _198 () Bool (and _195 _197)) +(define-fun _199 () (_ BitVec 64) spin_lock_ops$read_delay@2) +(define-fun _200 () Bool (= _199 _8)) +(define-fun _201 () Bool (and _198 _200)) +(define-fun _202 () (_ BitVec 64) spin_lock_ops$readunlock@2) +(define-fun _203 () Bool (= _202 _8)) +(define-fun _204 () Bool (and _201 _203)) +(define-fun _205 () (_ BitVec 64) spin_lock_ops$name@2) +(define-fun _206 () Bool (= _44 _205)) +(define-fun _207 () Bool (and _204 _206)) +(define-fun _208 () Bool (and _166 _169)) +(define-fun _209 () Bool (and _173 _208)) +(define-fun _210 () Bool (and _176 _209)) +(define-fun _211 () Bool (and _181 _210)) +(define-fun _212 () Bool (and _184 _211)) +(define-fun _213 () Bool (and _189 _212)) +(define-fun _214 () Bool (and _192 _213)) +(define-fun _215 () Bool (and _207 _214)) +(define-fun _216 () Bool (and _164 _215)) +(define-fun _217 () (_ BitVec 64) __ADDRESS_OF_spin_lock_irq_ops@) +(define-fun _218 () Bool (bvslt _191 _217)) +(define-fun _220 () (_ BitVec 64) (bvadd _103 _217)) +(define-fun _221 () Bool (bvslt _8 _220)) +(define-fun _222 () (_ BitVec 64) spin_lock_irq_ops$init@2) +(define-fun _223 () Bool (= _222 _8)) +(define-fun _224 () (_ BitVec 64) __ADDRESS_OF_torture_spin_lock_write_lock_irq@) +(define-fun _225 () Bool (bvslt _220 _224)) +(define-fun _227 () (_ BitVec 64) (bvadd _42 _224)) +(define-fun _228 () Bool (bvslt _8 _227)) +(define-fun _229 () (_ BitVec 64) spin_lock_irq_ops$writelock@2) +(define-fun _230 () Bool (= _224 _229)) +(define-fun _231 () Bool (and _223 _230)) +(define-fun _232 () (_ BitVec 64) spin_lock_irq_ops$write_delay@2) +(define-fun _233 () Bool (= _180 _232)) +(define-fun _234 () Bool (and _231 _233)) +(define-fun _235 () (_ BitVec 64) __ADDRESS_OF_torture_lock_spin_write_unlock_irq@) +(define-fun _236 () Bool (bvslt _227 _235)) +(define-fun _238 () (_ BitVec 64) (bvadd _42 _235)) +(define-fun _239 () Bool (bvslt _8 _238)) +(define-fun _240 () (_ BitVec 64) spin_lock_irq_ops$writeunlock@2) +(define-fun _241 () Bool (= _235 _240)) +(define-fun _242 () Bool (and _234 _241)) +(define-fun _243 () (_ BitVec 64) spin_lock_irq_ops$readlock@2) +(define-fun _244 () Bool (= _243 _8)) +(define-fun _245 () Bool (and _242 _244)) +(define-fun _246 () (_ BitVec 64) spin_lock_irq_ops$read_delay@2) +(define-fun _247 () Bool (= _246 _8)) +(define-fun _248 () Bool (and _245 _247)) +(define-fun _249 () (_ BitVec 64) spin_lock_irq_ops$readunlock@2) +(define-fun _250 () Bool (= _249 _8)) +(define-fun _251 () Bool (and _248 _250)) +(define-fun _252 () Int 2) +(define-fun _253 () (_ BitVec 64) (__string__ _252)) +(define-fun _254 () (_ BitVec 64) spin_lock_irq_ops$name@2) +(define-fun _255 () Bool (= _253 _254)) +(define-fun _256 () Bool (and _251 _255)) +(define-fun _257 () Bool (and _218 _221)) +(define-fun _258 () Bool (and _225 _257)) +(define-fun _259 () Bool (and _228 _258)) +(define-fun _260 () Bool (and _236 _259)) +(define-fun _261 () Bool (and _239 _260)) +(define-fun _262 () Bool (and _256 _261)) +(define-fun _263 () Bool (and _216 _262)) +(define-fun _264 () (_ BitVec 64) __ADDRESS_OF_rw_lock_ops@) +(define-fun _265 () Bool (bvslt _238 _264)) +(define-fun _267 () (_ BitVec 64) (bvadd _103 _264)) +(define-fun _268 () Bool (bvslt _8 _267)) +(define-fun _269 () (_ BitVec 64) rw_lock_ops$init@2) +(define-fun _270 () Bool (= _269 _8)) +(define-fun _271 () (_ BitVec 64) __ADDRESS_OF_torture_rwlock_write_lock@) +(define-fun _272 () Bool (bvslt _267 _271)) +(define-fun _274 () (_ BitVec 64) (bvadd _42 _271)) +(define-fun _275 () Bool (bvslt _8 _274)) +(define-fun _276 () (_ BitVec 64) rw_lock_ops$writelock@2) +(define-fun _277 () Bool (= _271 _276)) +(define-fun _278 () Bool (and _270 _277)) +(define-fun _279 () (_ BitVec 64) __ADDRESS_OF_torture_rwlock_write_delay@) +(define-fun _280 () Bool (bvslt _274 _279)) +(define-fun _282 () (_ BitVec 64) (bvadd _42 _279)) +(define-fun _283 () Bool (bvslt _8 _282)) +(define-fun _284 () (_ BitVec 64) rw_lock_ops$write_delay@2) +(define-fun _285 () Bool (= _279 _284)) +(define-fun _286 () Bool (and _278 _285)) +(define-fun _287 () (_ BitVec 64) __ADDRESS_OF_torture_rwlock_write_unlock@) +(define-fun _288 () Bool (bvslt _282 _287)) +(define-fun _290 () (_ BitVec 64) (bvadd _42 _287)) +(define-fun _291 () Bool (bvslt _8 _290)) +(define-fun _292 () (_ BitVec 64) rw_lock_ops$writeunlock@2) +(define-fun _293 () Bool (= _287 _292)) +(define-fun _294 () Bool (and _286 _293)) +(define-fun _295 () (_ BitVec 64) __ADDRESS_OF_torture_rwlock_read_lock@) +(define-fun _296 () Bool (bvslt _290 _295)) +(define-fun _298 () (_ BitVec 64) (bvadd _42 _295)) +(define-fun _299 () Bool (bvslt _8 _298)) +(define-fun _300 () (_ BitVec 64) rw_lock_ops$readlock@2) +(define-fun _301 () Bool (= _295 _300)) +(define-fun _302 () Bool (and _294 _301)) +(define-fun _303 () (_ BitVec 64) __ADDRESS_OF_torture_rwlock_read_delay@) +(define-fun _304 () Bool (bvslt _298 _303)) +(define-fun _306 () (_ BitVec 64) (bvadd _42 _303)) +(define-fun _307 () Bool (bvslt _8 _306)) +(define-fun _308 () (_ BitVec 64) rw_lock_ops$read_delay@2) +(define-fun _309 () Bool (= _303 _308)) +(define-fun _310 () Bool (and _302 _309)) +(define-fun _311 () (_ BitVec 64) __ADDRESS_OF_torture_rwlock_read_unlock@) +(define-fun _312 () Bool (bvslt _306 _311)) +(define-fun _314 () (_ BitVec 64) (bvadd _42 _311)) +(define-fun _315 () Bool (bvslt _8 _314)) +(define-fun _316 () (_ BitVec 64) rw_lock_ops$readunlock@2) +(define-fun _317 () Bool (= _311 _316)) +(define-fun _318 () Bool (and _310 _317)) +(define-fun _319 () Int 3) +(define-fun _320 () (_ BitVec 64) (__string__ _319)) +(define-fun _321 () (_ BitVec 64) rw_lock_ops$name@2) +(define-fun _322 () Bool (= _320 _321)) +(define-fun _323 () Bool (and _318 _322)) +(define-fun _324 () Bool (and _265 _268)) +(define-fun _325 () Bool (and _272 _324)) +(define-fun _326 () Bool (and _275 _325)) +(define-fun _327 () Bool (and _280 _326)) +(define-fun _328 () Bool (and _283 _327)) +(define-fun _329 () Bool (and _288 _328)) +(define-fun _330 () Bool (and _291 _329)) +(define-fun _331 () Bool (and _296 _330)) +(define-fun _332 () Bool (and _299 _331)) +(define-fun _333 () Bool (and _304 _332)) +(define-fun _334 () Bool (and _307 _333)) +(define-fun _335 () Bool (and _312 _334)) +(define-fun _336 () Bool (and _315 _335)) +(define-fun _337 () Bool (and _323 _336)) +(define-fun _338 () Bool (and _263 _337)) +(define-fun _339 () (_ BitVec 64) __ADDRESS_OF_rw_lock_irq_ops@) +(define-fun _340 () Bool (bvslt _314 _339)) +(define-fun _342 () (_ BitVec 64) (bvadd _103 _339)) +(define-fun _343 () Bool (bvslt _8 _342)) +(define-fun _344 () (_ BitVec 64) rw_lock_irq_ops$init@2) +(define-fun _345 () Bool (= _344 _8)) +(define-fun _346 () (_ BitVec 64) __ADDRESS_OF_torture_rwlock_write_lock_irq@) +(define-fun _347 () Bool (bvslt _342 _346)) +(define-fun _349 () (_ BitVec 64) (bvadd _42 _346)) +(define-fun _350 () Bool (bvslt _8 _349)) +(define-fun _351 () (_ BitVec 64) rw_lock_irq_ops$writelock@2) +(define-fun _352 () Bool (= _346 _351)) +(define-fun _353 () Bool (and _345 _352)) +(define-fun _354 () (_ BitVec 64) rw_lock_irq_ops$write_delay@2) +(define-fun _355 () Bool (= _279 _354)) +(define-fun _356 () Bool (and _353 _355)) +(define-fun _357 () (_ BitVec 64) __ADDRESS_OF_torture_rwlock_write_unlock_irq@) +(define-fun _358 () Bool (bvslt _349 _357)) +(define-fun _360 () (_ BitVec 64) (bvadd _42 _357)) +(define-fun _361 () Bool (bvslt _8 _360)) +(define-fun _362 () (_ BitVec 64) rw_lock_irq_ops$writeunlock@2) +(define-fun _363 () Bool (= _357 _362)) +(define-fun _364 () Bool (and _356 _363)) +(define-fun _365 () (_ BitVec 64) __ADDRESS_OF_torture_rwlock_read_lock_irq@) +(define-fun _366 () Bool (bvslt _360 _365)) +(define-fun _368 () (_ BitVec 64) (bvadd _42 _365)) +(define-fun _369 () Bool (bvslt _8 _368)) +(define-fun _370 () (_ BitVec 64) rw_lock_irq_ops$readlock@2) +(define-fun _371 () Bool (= _365 _370)) +(define-fun _372 () Bool (and _364 _371)) +(define-fun _373 () (_ BitVec 64) rw_lock_irq_ops$read_delay@2) +(define-fun _374 () Bool (= _303 _373)) +(define-fun _375 () Bool (and _372 _374)) +(define-fun _376 () (_ BitVec 64) __ADDRESS_OF_torture_rwlock_read_unlock_irq@) +(define-fun _377 () Bool (bvslt _368 _376)) +(define-fun _379 () (_ BitVec 64) (bvadd _42 _376)) +(define-fun _380 () Bool (bvslt _8 _379)) +(define-fun _381 () (_ BitVec 64) rw_lock_irq_ops$readunlock@2) +(define-fun _382 () Bool (= _376 _381)) +(define-fun _383 () Bool (and _375 _382)) +(define-fun _384 () Int 4) +(define-fun _385 () (_ BitVec 64) (__string__ _384)) +(define-fun _386 () (_ BitVec 64) rw_lock_irq_ops$name@2) +(define-fun _387 () Bool (= _385 _386)) +(define-fun _388 () Bool (and _383 _387)) +(define-fun _389 () Bool (and _340 _343)) +(define-fun _390 () Bool (and _347 _389)) +(define-fun _391 () Bool (and _350 _390)) +(define-fun _392 () Bool (and _358 _391)) +(define-fun _393 () Bool (and _361 _392)) +(define-fun _394 () Bool (and _366 _393)) +(define-fun _395 () Bool (and _369 _394)) +(define-fun _396 () Bool (and _377 _395)) +(define-fun _397 () Bool (and _380 _396)) +(define-fun _398 () Bool (and _388 _397)) +(define-fun _399 () Bool (and _338 _398)) +(define-fun _400 () (_ BitVec 64) (_ bv160 64)) +(define-fun _401 () (_ BitVec 64) __ADDRESS_OF_torture_mutex@) +(define-fun _402 () Bool (bvslt _379 _401)) +(define-fun _404 () (_ BitVec 64) (bvadd _400 _401)) +(define-fun _405 () Bool (bvslt _8 _404)) +(define-fun _408 () (Array (_ BitVec 64) (_ BitVec 32)) *int@1) +(define-fun _409 () (Array (_ BitVec 64) (_ BitVec 32)) (store _408 _401 _36)) +(define-fun _410 () Bool (= _408 _409)) +(define-fun _411 () Bool (and _402 _405)) +(define-fun _412 () Bool (and _410 _411)) +(define-fun _413 () Bool (and _399 _412)) +(define-fun _414 () (_ BitVec 64) __ADDRESS_OF_mutex_lock_ops@) +(define-fun _415 () Bool (bvslt _404 _414)) +(define-fun _417 () (_ BitVec 64) (bvadd _103 _414)) +(define-fun _418 () Bool (bvslt _8 _417)) +(define-fun _419 () (_ BitVec 64) mutex_lock_ops$init@2) +(define-fun _420 () Bool (= _419 _8)) +(define-fun _421 () (_ BitVec 64) __ADDRESS_OF_torture_mutex_lock@) +(define-fun _422 () Bool (bvslt _417 _421)) +(define-fun _424 () (_ BitVec 64) (bvadd _42 _421)) +(define-fun _425 () Bool (bvslt _8 _424)) +(define-fun _426 () (_ BitVec 64) mutex_lock_ops$writelock@2) +(define-fun _427 () Bool (= _421 _426)) +(define-fun _428 () Bool (and _420 _427)) +(define-fun _429 () (_ BitVec 64) __ADDRESS_OF_torture_mutex_delay@) +(define-fun _430 () Bool (bvslt _424 _429)) +(define-fun _432 () (_ BitVec 64) (bvadd _42 _429)) +(define-fun _433 () Bool (bvslt _8 _432)) +(define-fun _434 () (_ BitVec 64) mutex_lock_ops$write_delay@2) +(define-fun _435 () Bool (= _429 _434)) +(define-fun _436 () Bool (and _428 _435)) +(define-fun _437 () (_ BitVec 64) __ADDRESS_OF_torture_mutex_unlock@) +(define-fun _438 () Bool (bvslt _432 _437)) +(define-fun _440 () (_ BitVec 64) (bvadd _42 _437)) +(define-fun _441 () Bool (bvslt _8 _440)) +(define-fun _442 () (_ BitVec 64) mutex_lock_ops$writeunlock@2) +(define-fun _443 () Bool (= _437 _442)) +(define-fun _444 () Bool (and _436 _443)) +(define-fun _445 () (_ BitVec 64) mutex_lock_ops$readlock@2) +(define-fun _446 () Bool (= _445 _8)) +(define-fun _447 () Bool (and _444 _446)) +(define-fun _448 () (_ BitVec 64) mutex_lock_ops$read_delay@2) +(define-fun _449 () Bool (= _448 _8)) +(define-fun _450 () Bool (and _447 _449)) +(define-fun _451 () (_ BitVec 64) mutex_lock_ops$readunlock@2) +(define-fun _452 () Bool (= _451 _8)) +(define-fun _453 () Bool (and _450 _452)) +(define-fun _454 () Int 5) +(define-fun _455 () (_ BitVec 64) (__string__ _454)) +(define-fun _456 () (_ BitVec 64) mutex_lock_ops$name@2) +(define-fun _457 () Bool (= _455 _456)) +(define-fun _458 () Bool (and _453 _457)) +(define-fun _459 () Bool (and _415 _418)) +(define-fun _460 () Bool (and _422 _459)) +(define-fun _461 () Bool (and _425 _460)) +(define-fun _462 () Bool (and _430 _461)) +(define-fun _463 () Bool (and _433 _462)) +(define-fun _464 () Bool (and _438 _463)) +(define-fun _465 () Bool (and _441 _464)) +(define-fun _466 () Bool (and _458 _465)) +(define-fun _467 () Bool (and _413 _466)) +(define-fun _468 () (_ BitVec 64) __ADDRESS_OF_torture_rwsem@) +(define-fun _469 () Bool (bvslt _440 _468)) +(define-fun _471 () (_ BitVec 64) (bvadd _400 _468)) +(define-fun _472 () Bool (bvslt _8 _471)) +(define-fun _473 () (_ BitVec 64) (_ bv96 64)) +(define-fun _475 () (_ BitVec 64) (bvadd _473 _468)) +(define-fun _478 () (Array (_ BitVec 64) (_ BitVec 32)) (store _408 _475 _16)) +(define-fun _479 () Bool (= _408 _478)) +(define-fun _480 () Bool (and _469 _472)) +(define-fun _481 () Bool (and _479 _480)) +(define-fun _482 () Bool (and _467 _481)) +(define-fun _483 () (_ BitVec 64) __ADDRESS_OF_rwsem_lock_ops@) +(define-fun _484 () Bool (bvslt _471 _483)) +(define-fun _486 () (_ BitVec 64) (bvadd _103 _483)) +(define-fun _487 () Bool (bvslt _8 _486)) +(define-fun _488 () (_ BitVec 64) rwsem_lock_ops$init@2) +(define-fun _489 () Bool (= _488 _8)) +(define-fun _490 () (_ BitVec 64) __ADDRESS_OF_torture_rwsem_down_write@) +(define-fun _491 () Bool (bvslt _486 _490)) +(define-fun _493 () (_ BitVec 64) (bvadd _42 _490)) +(define-fun _494 () Bool (bvslt _8 _493)) +(define-fun _495 () (_ BitVec 64) rwsem_lock_ops$writelock@2) +(define-fun _496 () Bool (= _490 _495)) +(define-fun _497 () Bool (and _489 _496)) +(define-fun _498 () (_ BitVec 64) __ADDRESS_OF_torture_rwsem_write_delay@) +(define-fun _499 () Bool (bvslt _493 _498)) +(define-fun _501 () (_ BitVec 64) (bvadd _42 _498)) +(define-fun _502 () Bool (bvslt _8 _501)) +(define-fun _503 () (_ BitVec 64) rwsem_lock_ops$write_delay@2) +(define-fun _504 () Bool (= _498 _503)) +(define-fun _505 () Bool (and _497 _504)) +(define-fun _506 () (_ BitVec 64) __ADDRESS_OF_torture_rwsem_up_write@) +(define-fun _507 () Bool (bvslt _501 _506)) +(define-fun _509 () (_ BitVec 64) (bvadd _42 _506)) +(define-fun _510 () Bool (bvslt _8 _509)) +(define-fun _511 () (_ BitVec 64) rwsem_lock_ops$writeunlock@2) +(define-fun _512 () Bool (= _506 _511)) +(define-fun _513 () Bool (and _505 _512)) +(define-fun _514 () (_ BitVec 64) __ADDRESS_OF_torture_rwsem_down_read@) +(define-fun _515 () Bool (bvslt _509 _514)) +(define-fun _517 () (_ BitVec 64) (bvadd _42 _514)) +(define-fun _518 () Bool (bvslt _8 _517)) +(define-fun _519 () (_ BitVec 64) rwsem_lock_ops$readlock@2) +(define-fun _520 () Bool (= _514 _519)) +(define-fun _521 () Bool (and _513 _520)) +(define-fun _522 () (_ BitVec 64) __ADDRESS_OF_torture_rwsem_read_delay@) +(define-fun _523 () Bool (bvslt _517 _522)) +(define-fun _525 () (_ BitVec 64) (bvadd _42 _522)) +(define-fun _526 () Bool (bvslt _8 _525)) +(define-fun _527 () (_ BitVec 64) rwsem_lock_ops$read_delay@2) +(define-fun _528 () Bool (= _522 _527)) +(define-fun _529 () Bool (and _521 _528)) +(define-fun _530 () (_ BitVec 64) __ADDRESS_OF_torture_rwsem_up_read@) +(define-fun _531 () Bool (bvslt _525 _530)) +(define-fun _533 () (_ BitVec 64) (bvadd _42 _530)) +(define-fun _534 () Bool (bvslt _8 _533)) +(define-fun _535 () (_ BitVec 64) rwsem_lock_ops$readunlock@2) +(define-fun _536 () Bool (= _530 _535)) +(define-fun _537 () Bool (and _529 _536)) +(define-fun _538 () Int 6) +(define-fun _539 () (_ BitVec 64) (__string__ _538)) +(define-fun _540 () (_ BitVec 64) rwsem_lock_ops$name@2) +(define-fun _541 () Bool (= _539 _540)) +(define-fun _542 () Bool (and _537 _541)) +(define-fun _543 () Bool (and _484 _487)) +(define-fun _544 () Bool (and _491 _543)) +(define-fun _545 () Bool (and _494 _544)) +(define-fun _546 () Bool (and _499 _545)) +(define-fun _547 () Bool (and _502 _546)) +(define-fun _548 () Bool (and _507 _547)) +(define-fun _549 () Bool (and _510 _548)) +(define-fun _550 () Bool (and _515 _549)) +(define-fun _551 () Bool (and _518 _550)) +(define-fun _552 () Bool (and _523 _551)) +(define-fun _553 () Bool (and _526 _552)) +(define-fun _554 () Bool (and _531 _553)) +(define-fun _555 () Bool (and _534 _554)) +(define-fun _556 () Bool (and _542 _555)) +(define-fun _557 () Bool (and _482 _556)) +(define-fun _558 () (_ BitVec 32) ldv_linux_alloc_usb_lock_lock@2) +(define-fun _559 () Bool (= _558 _36)) +(define-fun _560 () Bool (and _557 _559)) +(define-fun _561 () (_ BitVec 32) ldv_linux_arch_io_iomem@2) +(define-fun _562 () Bool (= _561 _16)) +(define-fun _563 () Bool (and _560 _562)) +(define-fun _564 () (_ BitVec 32) ldv_linux_block_genhd_disk_state@2) +(define-fun _565 () Bool (= _564 _16)) +(define-fun _566 () Bool (and _563 _565)) +(define-fun _567 () (_ BitVec 32) ldv_linux_block_queue_queue_state@2) +(define-fun _568 () Bool (= _567 _16)) +(define-fun _569 () Bool (and _566 _568)) +(define-fun _570 () (_ BitVec 32) ldv_linux_block_request_blk_rq@2) +(define-fun _571 () Bool (= _570 _16)) +(define-fun _572 () Bool (and _569 _571)) +(define-fun _573 () (_ BitVec 32) ldv_linux_drivers_base_class_usb_gadget_class@2) +(define-fun _574 () Bool (= _573 _16)) +(define-fun _575 () Bool (and _572 _574)) +(define-fun _576 () (_ BitVec 32) ldv_linux_fs_char_dev_usb_gadget_chrdev@2) +(define-fun _577 () Bool (= _576 _16)) +(define-fun _578 () Bool (and _575 _577)) +(define-fun _579 () (_ BitVec 32) ldv_linux_fs_sysfs_sysfs@2) +(define-fun _580 () Bool (= _579 _16)) +(define-fun _581 () Bool (and _578 _580)) +(define-fun _582 () (_ BitVec 32) ldv_linux_kernel_locking_rwlock_rlock@2) +(define-fun _583 () Bool (= _582 _36)) +(define-fun _584 () Bool (and _581 _583)) +(define-fun _585 () (_ BitVec 32) ldv_linux_kernel_locking_rwlock_wlock@2) +(define-fun _586 () Bool (= _585 _36)) +(define-fun _587 () Bool (and _584 _586)) +(define-fun _588 () (_ BitVec 32) ldv_linux_kernel_module_module_refcounter@2) +(define-fun _589 () Bool (= _588 _36)) +(define-fun _590 () Bool (and _587 _589)) +(define-fun _591 () (_ BitVec 32) ldv_linux_kernel_rcu_srcu_srcu_nested@2) +(define-fun _592 () Bool (= _591 _16)) +(define-fun _593 () Bool (and _590 _592)) +(define-fun _594 () (_ BitVec 32) ldv_linux_kernel_rcu_update_lock_bh_rcu_nested_bh@2) +(define-fun _595 () Bool (= _594 _16)) +(define-fun _596 () Bool (and _593 _595)) +(define-fun _597 () (_ BitVec 32) ldv_linux_kernel_rcu_update_lock_sched_rcu_nested_sched@2) +(define-fun _598 () Bool (= _597 _16)) +(define-fun _599 () Bool (and _596 _598)) +(define-fun _600 () (_ BitVec 32) ldv_linux_kernel_rcu_update_lock_rcu_nested@2) +(define-fun _601 () Bool (= _600 _16)) +(define-fun _602 () Bool (and _599 _601)) +(define-fun _603 () (_ BitVec 8) __ldv_in_interrupt_context@2) +(define-fun _604 () Bool (= _603 _37)) +(define-fun _605 () Bool (and _602 _604)) +(define-fun _607 () (_ BitVec 16) (_ bv0 16)) +(define-fun _608 () (_ BitVec 16) ldv_linux_mmc_sdio_func_sdio_element@2) +(define-fun _609 () Bool (= _608 _607)) +(define-fun _610 () Bool (and _605 _609)) +(define-fun _611 () (_ BitVec 32) ldv_linux_net_register_probe_state@2) +(define-fun _612 () Bool (= _611 _16)) +(define-fun _613 () Bool (and _610 _612)) +(define-fun _614 () (_ BitVec 32) rtnllocknumber@2) +(define-fun _615 () Bool (= _614 _16)) +(define-fun _616 () Bool (and _613 _615)) +(define-fun _617 () (_ BitVec 32) locksocknumber@2) +(define-fun _618 () Bool (= _617 _16)) +(define-fun _619 () Bool (and _616 _618)) +(define-fun _620 () (_ BitVec 32) ldv_linux_usb_coherent_coherent_state@2) +(define-fun _621 () Bool (= _620 _16)) +(define-fun _622 () Bool (and _619 _621)) +(define-fun _623 () (_ BitVec 32) LDV_LINUX_USB_DEV_USB_DEV_REF_COUNTS@2) +(define-fun _624 () Bool (= _623 _16)) +(define-fun _625 () Bool (and _622 _624)) +(define-fun _626 () (_ BitVec 32) ldv_linux_usb_gadget_usb_gadget@2) +(define-fun _627 () Bool (= _626 _16)) +(define-fun _628 () Bool (and _625 _627)) +(define-fun _629 () (_ BitVec 32) ldv_linux_usb_register_probe_state@2) +(define-fun _630 () Bool (= _629 _16)) +(define-fun _631 () Bool (and _628 _630)) +(define-fun _632 () (_ BitVec 32) ldv_linux_usb_urb_urb_state@2) +(define-fun _633 () Bool (= _632 _16)) +(define-fun _634 () Bool (and _631 _633)) +(define-fun _635 () (_ BitVec 8) LDV_LINUX_KERNEL_LOCKING_MUTEX_MUTEXES_lock@2) +(define-fun _636 () Bool (= _635 _37)) +(define-fun _637 () Bool (and _634 _636)) +(define-fun _638 () (_ BitVec 8) LDV_LINUX_KERNEL_LOCKING_MUTEX_MUTEXES_torture_mutex@2) +(define-fun _639 () Bool (= _638 _37)) +(define-fun _640 () Bool (and _637 _639)) +(define-fun _641 () (_ BitVec 32) ldv_linux_kernel_locking_spinlock_spin_alloc_lock_of_task_struct@2) +(define-fun _642 () Bool (= _641 _36)) +(define-fun _643 () Bool (and _640 _642)) +(define-fun _644 () (_ BitVec 32) ldv_linux_kernel_locking_spinlock_spin_lock@2) +(define-fun _645 () Bool (= _644 _36)) +(define-fun _646 () Bool (and _643 _645)) +(define-fun _647 () (_ BitVec 32) ldv_linux_kernel_locking_spinlock_spin_lock_of_NOT_ARG_SIGN@2) +(define-fun _648 () Bool (= _647 _36)) +(define-fun _649 () Bool (and _646 _648)) +(define-fun _650 () (_ BitVec 32) ldv_linux_kernel_locking_spinlock_spin_node_size_lock_of_pglist_data@2) +(define-fun _651 () Bool (= _650 _36)) +(define-fun _652 () Bool (and _649 _651)) +(define-fun _653 () (_ BitVec 32) ldv_linux_kernel_locking_spinlock_spin_siglock_of_sighand_struct@2) +(define-fun _654 () Bool (= _653 _36)) +(define-fun _655 () Bool (and _652 _654)) +(define-fun _656 () (_ BitVec 32) ldv_linux_kernel_locking_spinlock_spin_torture_spinlock@2) +(define-fun _657 () Bool (= _656 _36)) +(define-fun _658 () Bool (and _655 _657)) +(define-fun _659 () (_ BitVec 32) ldv_linux_kernel_sched_completion_completion@2) +(define-fun _660 () Bool (= _659 _16)) +(define-fun _661 () Bool (and _658 _660)) +(define-fun _662 () (_ BitVec 32) ldv_linux_lib_idr_idr@2) +(define-fun _663 () Bool (= _662 _16)) +(define-fun _664 () Bool (and _661 _663)) +(define-fun _665 () (_ BitVec 32) nr_cpu_ids@2) +(define-fun _666 () Bool (bvslt _16 _665)) +(define-fun _667 () (_ BitVec 32) (ite _666 _36 _16)) +(define-fun _668 () (_ BitVec 32) |ldv_assume::expression@2|) +(define-fun _669 () Bool (= _667 _668)) +(define-fun _670 () Bool (and _664 _669)) +(define-fun _671 () Bool (= _668 _16)) +(define-fun _674 () Bool (not _671)) +(define-fun _675 () Bool (and _670 _674)) +(define-fun _676 () (_ BitVec 64) (_ bv56 64)) +(define-fun _677 () (_ BitVec 64) |__ADDRESS_OF_lock_torture_init::torture_ops@|) +(define-fun _678 () Bool (bvslt _533 _677)) +(define-fun _680 () (_ BitVec 64) (bvadd _676 _677)) +(define-fun _681 () Bool (bvslt _8 _680)) +(define-fun _685 () (_ BitVec 64) (bvadd _42 _677)) +(define-fun _686 () (_ BitVec 64) (_ bv16 64)) +(define-fun _688 () (_ BitVec 64) (bvadd _686 _677)) +(define-fun _689 () (_ BitVec 64) (_ bv24 64)) +(define-fun _691 () (_ BitVec 64) (bvadd _689 _677)) +(define-fun _692 () (_ BitVec 64) (_ bv32 64)) +(define-fun _694 () (_ BitVec 64) (bvadd _692 _677)) +(define-fun _696 () (_ BitVec 64) (bvadd _74 _677)) +(define-fun _697 () (_ BitVec 64) (_ bv48 64)) +(define-fun _699 () (_ BitVec 64) (bvadd _697 _677)) +(define-fun _700 () Bool (and _678 _681)) +(define-fun _701 () Bool (and _675 _700)) +(define-fun _702 () (_ BitVec 32) |lock_torture_init::firsterr@3|) +(define-fun _703 () Bool (= _702 _16)) +(define-fun _704 () Bool (and _701 _703)) +(define-fun _707 () (Array (_ BitVec 64) (_ BitVec 64)) |*(Return_type:_[void],_Parameters:_0,_VarArgs:_false)*@1|) +(define-fun _708 () (_ BitVec 64) (select _707 _104)) +(define-fun _709 () Bool (= _109 _708)) +(define-fun _711 () (_ BitVec 64) (bvadd _42 _104)) +(define-fun _712 () (Array (_ BitVec 64) (_ BitVec 64)) |*(Return_type:_[int],_Parameters:_0,_VarArgs:_false)*@1|) +(define-fun _713 () (_ BitVec 64) (select _712 _711)) +(define-fun _714 () Bool (= _116 _713)) +(define-fun _716 () (_ BitVec 64) (bvadd _686 _104)) +(define-fun _717 () (Array (_ BitVec 64) (_ BitVec 64)) |*(Return_type:_[void],_Parameters:_1,_Parameter_1_type:_[(struct_torture_random_state)*],_VarArgs:_false)*@1|) +(define-fun _718 () (_ BitVec 64) (select _717 _716)) +(define-fun _719 () Bool (= _124 _718)) +(define-fun _721 () (_ BitVec 64) (bvadd _689 _104)) +(define-fun _722 () (_ BitVec 64) (select _707 _721)) +(define-fun _723 () Bool (= _132 _722)) +(define-fun _725 () (_ BitVec 64) (bvadd _692 _104)) +(define-fun _726 () (_ BitVec 64) (select _712 _725)) +(define-fun _727 () Bool (= _135 _726)) +(define-fun _729 () (_ BitVec 64) (bvadd _74 _104)) +(define-fun _730 () (_ BitVec 64) (select _717 _729)) +(define-fun _731 () Bool (= _138 _730)) +(define-fun _733 () (_ BitVec 64) (bvadd _697 _104)) +(define-fun _734 () (_ BitVec 64) (select _707 _733)) +(define-fun _735 () Bool (= _141 _734)) +(define-fun _736 () (_ BitVec 64) (_ bv64 64)) +(define-fun _738 () (_ BitVec 64) (bvadd _736 _104)) +(define-fun _739 () (Array (_ BitVec 64) (_ BitVec 64)) |*(char)*@1|) +(define-fun _740 () (_ BitVec 64) (select _739 _738)) +(define-fun _741 () Bool (= _146 _740)) +(define-fun _742 () (Array (_ BitVec 64) (_ BitVec 64)) |*(struct_lock_torture_ops)*@1|) +(define-fun _743 () (Array (_ BitVec 64) (_ BitVec 64)) |*(struct_lock_torture_ops)*@2|) +(define-fun _744 () (Array (_ BitVec 64) (_ BitVec 64)) (store _742 _677 _104)) +(define-fun _745 () Bool (= _743 _744)) +(define-fun _746 () Bool (and _709 _714)) +(define-fun _747 () Bool (and _719 _746)) +(define-fun _748 () Bool (and _723 _747)) +(define-fun _749 () Bool (and _727 _748)) +(define-fun _750 () Bool (and _731 _749)) +(define-fun _751 () Bool (and _735 _750)) +(define-fun _752 () Bool (and _741 _751)) +(define-fun _753 () Bool (and _745 _752)) +(define-fun _754 () Bool (and _704 _753)) +(define-fun _757 () (_ BitVec 64) (select _707 _165)) +(define-fun _758 () Bool (= _170 _757)) +(define-fun _760 () (_ BitVec 64) (bvadd _42 _165)) +(define-fun _761 () (_ BitVec 64) (select _712 _760)) +(define-fun _762 () Bool (= _177 _761)) +(define-fun _764 () (_ BitVec 64) (bvadd _686 _165)) +(define-fun _765 () (_ BitVec 64) (select _717 _764)) +(define-fun _766 () Bool (= _185 _765)) +(define-fun _768 () (_ BitVec 64) (bvadd _689 _165)) +(define-fun _769 () (_ BitVec 64) (select _707 _768)) +(define-fun _770 () Bool (= _193 _769)) +(define-fun _772 () (_ BitVec 64) (bvadd _692 _165)) +(define-fun _773 () (_ BitVec 64) (select _712 _772)) +(define-fun _774 () Bool (= _196 _773)) +(define-fun _776 () (_ BitVec 64) (bvadd _74 _165)) +(define-fun _777 () (_ BitVec 64) (select _717 _776)) +(define-fun _778 () Bool (= _199 _777)) +(define-fun _780 () (_ BitVec 64) (bvadd _697 _165)) +(define-fun _781 () (_ BitVec 64) (select _707 _780)) +(define-fun _782 () Bool (= _202 _781)) +(define-fun _784 () (_ BitVec 64) (bvadd _736 _165)) +(define-fun _785 () (_ BitVec 64) (select _739 _784)) +(define-fun _786 () Bool (= _205 _785)) +(define-fun _787 () (Array (_ BitVec 64) (_ BitVec 64)) |*(struct_lock_torture_ops)*@3|) +(define-fun _788 () (Array (_ BitVec 64) (_ BitVec 64)) (store _743 _685 _165)) +(define-fun _789 () Bool (= _787 _788)) +(define-fun _790 () Bool (and _758 _762)) +(define-fun _791 () Bool (and _766 _790)) +(define-fun _792 () Bool (and _770 _791)) +(define-fun _793 () Bool (and _774 _792)) +(define-fun _794 () Bool (and _778 _793)) +(define-fun _795 () Bool (and _782 _794)) +(define-fun _796 () Bool (and _786 _795)) +(define-fun _797 () Bool (and _789 _796)) +(define-fun _798 () Bool (and _754 _797)) +(define-fun _801 () (_ BitVec 64) (select _707 _217)) +(define-fun _802 () Bool (= _222 _801)) +(define-fun _804 () (_ BitVec 64) (bvadd _42 _217)) +(define-fun _805 () (_ BitVec 64) (select _712 _804)) +(define-fun _806 () Bool (= _229 _805)) +(define-fun _808 () (_ BitVec 64) (bvadd _686 _217)) +(define-fun _809 () (_ BitVec 64) (select _717 _808)) +(define-fun _810 () Bool (= _232 _809)) +(define-fun _812 () (_ BitVec 64) (bvadd _689 _217)) +(define-fun _813 () (_ BitVec 64) (select _707 _812)) +(define-fun _814 () Bool (= _240 _813)) +(define-fun _816 () (_ BitVec 64) (bvadd _692 _217)) +(define-fun _817 () (_ BitVec 64) (select _712 _816)) +(define-fun _818 () Bool (= _243 _817)) +(define-fun _820 () (_ BitVec 64) (bvadd _74 _217)) +(define-fun _821 () (_ BitVec 64) (select _717 _820)) +(define-fun _822 () Bool (= _246 _821)) +(define-fun _824 () (_ BitVec 64) (bvadd _697 _217)) +(define-fun _825 () (_ BitVec 64) (select _707 _824)) +(define-fun _826 () Bool (= _249 _825)) +(define-fun _828 () (_ BitVec 64) (bvadd _736 _217)) +(define-fun _829 () (_ BitVec 64) (select _739 _828)) +(define-fun _830 () Bool (= _254 _829)) +(define-fun _831 () (_ BitVec 32) (_ bv2 32)) +(define-fun _832 () (Array (_ BitVec 64) (_ BitVec 64)) |*(struct_lock_torture_ops)*@4|) +(define-fun _833 () (Array (_ BitVec 64) (_ BitVec 64)) (store _787 _688 _217)) +(define-fun _834 () Bool (= _832 _833)) +(define-fun _835 () Bool (and _802 _806)) +(define-fun _836 () Bool (and _810 _835)) +(define-fun _837 () Bool (and _814 _836)) +(define-fun _838 () Bool (and _818 _837)) +(define-fun _839 () Bool (and _822 _838)) +(define-fun _840 () Bool (and _826 _839)) +(define-fun _841 () Bool (and _830 _840)) +(define-fun _842 () Bool (and _834 _841)) +(define-fun _843 () Bool (and _798 _842)) +(define-fun _846 () (_ BitVec 64) (select _707 _264)) +(define-fun _847 () Bool (= _269 _846)) +(define-fun _849 () (_ BitVec 64) (bvadd _42 _264)) +(define-fun _850 () (_ BitVec 64) (select _712 _849)) +(define-fun _851 () Bool (= _276 _850)) +(define-fun _853 () (_ BitVec 64) (bvadd _686 _264)) +(define-fun _854 () (_ BitVec 64) (select _717 _853)) +(define-fun _855 () Bool (= _284 _854)) +(define-fun _857 () (_ BitVec 64) (bvadd _689 _264)) +(define-fun _858 () (_ BitVec 64) (select _707 _857)) +(define-fun _859 () Bool (= _292 _858)) +(define-fun _861 () (_ BitVec 64) (bvadd _692 _264)) +(define-fun _862 () (_ BitVec 64) (select _712 _861)) +(define-fun _863 () Bool (= _300 _862)) +(define-fun _865 () (_ BitVec 64) (bvadd _74 _264)) +(define-fun _866 () (_ BitVec 64) (select _717 _865)) +(define-fun _867 () Bool (= _308 _866)) +(define-fun _869 () (_ BitVec 64) (bvadd _697 _264)) +(define-fun _870 () (_ BitVec 64) (select _707 _869)) +(define-fun _871 () Bool (= _316 _870)) +(define-fun _873 () (_ BitVec 64) (bvadd _736 _264)) +(define-fun _874 () (_ BitVec 64) (select _739 _873)) +(define-fun _875 () Bool (= _321 _874)) +(define-fun _876 () (_ BitVec 64) (_ bv3 64)) +(define-fun _877 () (Array (_ BitVec 64) (_ BitVec 64)) |*(struct_lock_torture_ops)*@5|) +(define-fun _878 () (Array (_ BitVec 64) (_ BitVec 64)) (store _832 _691 _264)) +(define-fun _879 () Bool (= _877 _878)) +(define-fun _880 () Bool (and _847 _851)) +(define-fun _881 () Bool (and _855 _880)) +(define-fun _882 () Bool (and _859 _881)) +(define-fun _883 () Bool (and _863 _882)) +(define-fun _884 () Bool (and _867 _883)) +(define-fun _885 () Bool (and _871 _884)) +(define-fun _886 () Bool (and _875 _885)) +(define-fun _887 () Bool (and _879 _886)) +(define-fun _888 () Bool (and _843 _887)) +(define-fun _891 () (_ BitVec 64) (select _707 _339)) +(define-fun _892 () Bool (= _344 _891)) +(define-fun _894 () (_ BitVec 64) (bvadd _42 _339)) +(define-fun _895 () (_ BitVec 64) (select _712 _894)) +(define-fun _896 () Bool (= _351 _895)) +(define-fun _898 () (_ BitVec 64) (bvadd _686 _339)) +(define-fun _899 () (_ BitVec 64) (select _717 _898)) +(define-fun _900 () Bool (= _354 _899)) +(define-fun _902 () (_ BitVec 64) (bvadd _689 _339)) +(define-fun _903 () (_ BitVec 64) (select _707 _902)) +(define-fun _904 () Bool (= _362 _903)) +(define-fun _906 () (_ BitVec 64) (bvadd _692 _339)) +(define-fun _907 () (_ BitVec 64) (select _712 _906)) +(define-fun _908 () Bool (= _370 _907)) +(define-fun _910 () (_ BitVec 64) (bvadd _74 _339)) +(define-fun _911 () (_ BitVec 64) (select _717 _910)) +(define-fun _912 () Bool (= _373 _911)) +(define-fun _914 () (_ BitVec 64) (bvadd _697 _339)) +(define-fun _915 () (_ BitVec 64) (select _707 _914)) +(define-fun _916 () Bool (= _381 _915)) +(define-fun _918 () (_ BitVec 64) (bvadd _736 _339)) +(define-fun _919 () (_ BitVec 64) (select _739 _918)) +(define-fun _920 () Bool (= _386 _919)) +(define-fun _921 () (_ BitVec 32) (_ bv4 32)) +(define-fun _922 () (Array (_ BitVec 64) (_ BitVec 64)) |*(struct_lock_torture_ops)*@6|) +(define-fun _923 () (Array (_ BitVec 64) (_ BitVec 64)) (store _877 _694 _339)) +(define-fun _924 () Bool (= _922 _923)) +(define-fun _925 () Bool (and _892 _896)) +(define-fun _926 () Bool (and _900 _925)) +(define-fun _927 () Bool (and _904 _926)) +(define-fun _928 () Bool (and _908 _927)) +(define-fun _929 () Bool (and _912 _928)) +(define-fun _930 () Bool (and _916 _929)) +(define-fun _931 () Bool (and _920 _930)) +(define-fun _932 () Bool (and _924 _931)) +(define-fun _933 () Bool (and _888 _932)) +(define-fun _936 () (_ BitVec 64) (select _707 _414)) +(define-fun _937 () Bool (= _419 _936)) +(define-fun _939 () (_ BitVec 64) (bvadd _42 _414)) +(define-fun _940 () (_ BitVec 64) (select _712 _939)) +(define-fun _941 () Bool (= _426 _940)) +(define-fun _943 () (_ BitVec 64) (bvadd _686 _414)) +(define-fun _944 () (_ BitVec 64) (select _717 _943)) +(define-fun _945 () Bool (= _434 _944)) +(define-fun _947 () (_ BitVec 64) (bvadd _689 _414)) +(define-fun _948 () (_ BitVec 64) (select _707 _947)) +(define-fun _949 () Bool (= _442 _948)) +(define-fun _951 () (_ BitVec 64) (bvadd _692 _414)) +(define-fun _952 () (_ BitVec 64) (select _712 _951)) +(define-fun _953 () Bool (= _445 _952)) +(define-fun _955 () (_ BitVec 64) (bvadd _74 _414)) +(define-fun _956 () (_ BitVec 64) (select _717 _955)) +(define-fun _957 () Bool (= _448 _956)) +(define-fun _959 () (_ BitVec 64) (bvadd _697 _414)) +(define-fun _960 () (_ BitVec 64) (select _707 _959)) +(define-fun _961 () Bool (= _451 _960)) +(define-fun _963 () (_ BitVec 64) (bvadd _736 _414)) +(define-fun _964 () (_ BitVec 64) (select _739 _963)) +(define-fun _965 () Bool (= _456 _964)) +(define-fun _966 () (_ BitVec 64) (_ bv5 64)) +(define-fun _967 () (Array (_ BitVec 64) (_ BitVec 64)) |*(struct_lock_torture_ops)*@7|) +(define-fun _968 () (Array (_ BitVec 64) (_ BitVec 64)) (store _922 _696 _414)) +(define-fun _969 () Bool (= _967 _968)) +(define-fun _970 () Bool (and _937 _941)) +(define-fun _971 () Bool (and _945 _970)) +(define-fun _972 () Bool (and _949 _971)) +(define-fun _973 () Bool (and _953 _972)) +(define-fun _974 () Bool (and _957 _973)) +(define-fun _975 () Bool (and _961 _974)) +(define-fun _976 () Bool (and _965 _975)) +(define-fun _977 () Bool (and _969 _976)) +(define-fun _978 () Bool (and _933 _977)) +(define-fun _981 () (_ BitVec 64) (select _707 _483)) +(define-fun _982 () Bool (= _488 _981)) +(define-fun _984 () (_ BitVec 64) (bvadd _42 _483)) +(define-fun _985 () (_ BitVec 64) (select _712 _984)) +(define-fun _986 () Bool (= _495 _985)) +(define-fun _988 () (_ BitVec 64) (bvadd _686 _483)) +(define-fun _989 () (_ BitVec 64) (select _717 _988)) +(define-fun _990 () Bool (= _503 _989)) +(define-fun _992 () (_ BitVec 64) (bvadd _689 _483)) +(define-fun _993 () (_ BitVec 64) (select _707 _992)) +(define-fun _994 () Bool (= _511 _993)) +(define-fun _996 () (_ BitVec 64) (bvadd _692 _483)) +(define-fun _997 () (_ BitVec 64) (select _712 _996)) +(define-fun _998 () Bool (= _519 _997)) +(define-fun _1000 () (_ BitVec 64) (bvadd _74 _483)) +(define-fun _1001 () (_ BitVec 64) (select _717 _1000)) +(define-fun _1002 () Bool (= _527 _1001)) +(define-fun _1004 () (_ BitVec 64) (bvadd _697 _483)) +(define-fun _1005 () (_ BitVec 64) (select _707 _1004)) +(define-fun _1006 () Bool (= _535 _1005)) +(define-fun _1008 () (_ BitVec 64) (bvadd _736 _483)) +(define-fun _1009 () (_ BitVec 64) (select _739 _1008)) +(define-fun _1010 () Bool (= _540 _1009)) +(define-fun _1011 () (_ BitVec 32) (_ bv6 32)) +(define-fun _1013 () (Array (_ BitVec 64) (_ BitVec 64)) |*(struct_lock_torture_ops)*@8|) +(define-fun _1014 () (Array (_ BitVec 64) (_ BitVec 64)) (store _967 _699 _483)) +(define-fun _1015 () Bool (= _1013 _1014)) +(define-fun _1016 () Bool (and _982 _986)) +(define-fun _1017 () Bool (and _990 _1016)) +(define-fun _1018 () Bool (and _994 _1017)) +(define-fun _1019 () Bool (and _998 _1018)) +(define-fun _1020 () Bool (and _1002 _1019)) +(define-fun _1021 () Bool (and _1006 _1020)) +(define-fun _1022 () Bool (and _1010 _1021)) +(define-fun _1023 () Bool (and _1015 _1022)) +(define-fun _1024 () Bool (and _978 _1023)) +(define-fun _1025 () (_ BitVec 8) __VERIFIER_nondet_bool@2) +(define-fun _1026 () (_ BitVec 8) |torture_init_begin::__CPAchecker_TMP_0@3|) +(define-fun _1027 () Bool (= _1025 _1026)) +(define-fun _1028 () Bool (and _1024 _1027)) +(define-fun _1029 () (_ BitVec 8) |torture_init_begin::__retval__@2|) +(define-fun _1030 () Bool (= _1026 _1029)) +(define-fun _1031 () Bool (and _1028 _1030)) +(define-fun _1053 () (_ BitVec 32) |lock_torture_init::__retval__@2|) +(define-fun _1073 () (_ BitVec 64) cxt$cur_ops@3) +(define-fun _1077 () (_ BitVec 64) (bvadd _736 _1073)) +(define-fun _1078 () (_ BitVec 64) (select _739 _1077)) +(define-fun _1079 () (_ BitVec 32) (strcmp _45 _1078)) +(define-fun _1090 () (_ BitVec 32) |lock_torture_init::i@4|) +(define-fun _1093 () (_ BitVec 32) (_ bv7 32)) +(define-fun _1101 () (_ BitVec 64) (select _707 _1073)) +(define-fun _1102 () (_ BitVec 64) |lock_torture_init::__CPAchecker_TMP_0@2|) +(define-fun _1103 () Bool (= _1101 _1102)) +(define-fun _1105 () Bool (= _1102 _8)) +(define-fun _1222 () (_ BitVec 64) (bvadd _692 _1073)) +(define-fun _1223 () (_ BitVec 64) (select _712 _1222)) +(define-fun _1233 () (_ BitVec 32) (_ bv208 32)) +(define-fun _1234 () (_ BitVec 32) |kmalloc::flags@2|) +(define-fun _1235 () Bool (= _1234 _1233)) +(define-fun _1237 () (_ BitVec 32) |ldv_check_alloc_flags::flags@2|) +(define-fun _1238 () Bool (= _1234 _1237)) +(define-fun _1240 () (_ BitVec 32) |ldv_linux_alloc_irq_check_alloc_flags::flags@2|) +(define-fun _1241 () Bool (= _1237 _1240)) +(define-fun _1243 () (_ BitVec 8) |ldv_in_interrupt_context::__retval__@2|) +(define-fun _1244 () Bool (= _603 _1243)) +(define-fun _1264 () (_ BitVec 32) |ldv_linux_alloc_irq_check_alloc_flags::__CPAchecker_TMP_0@3|) +(define-fun _1265 () Bool (= _1264 _36)) +(define-fun _1267 () (_ BitVec 32) |ldv_assert_linux_alloc_irq__wrong_flags::expr@2|) +(define-fun _1268 () Bool (= _1264 _1267)) +(define-fun _1270 () Bool (= _1267 _16)) +(define-fun _1273 () Bool (not _1270)) +(define-fun _1275 () (_ BitVec 32) |ldv_linux_alloc_usb_lock_check_alloc_flags::flags@2|) +(define-fun _1276 () Bool (= _1237 _1275)) +(define-fun _1278 () Bool (= _558 _831)) +(define-fun _1281 () Bool (not _1278)) +(define-fun _1283 () (_ BitVec 32) __VERIFIER_nondet_int@2) +(define-fun _1284 () (_ BitVec 32) |ldv_undef_int::tmp@3|) +(define-fun _1287 () (_ BitVec 32) |ldv_undef_int::__retval__@2|) +(define-fun _1288 () Bool (= _1284 _1287)) +(define-fun _1298 () (_ BitVec 64) |ldv_malloc_unknown_size::__retval__@2|) +(define-fun _1301 () (_ BitVec 64) __VERIFIER_nondet_pointer@2) +(define-fun _1302 () (_ BitVec 64) |external_alloc::__CPAchecker_TMP_0@3|) +(define-fun _1303 () Bool (= _1301 _1302)) +(define-fun _1305 () (_ BitVec 64) |external_alloc::__retval__@2|) +(define-fun _1306 () Bool (= _1302 _1305)) +(define-fun _1311 () (_ BitVec 64) |external_allocated_data::__retval__@2|) +(define-fun _1331 () (_ BitVec 64) |ldv_is_err::ptr@2|) +(define-fun _1334 () (_ BitVec 64) (_ bv4294967295 64)) +(define-fun _1335 () Bool (bvult _1334 _1331)) +(define-fun _1336 () (_ BitVec 32) (ite _1335 _36 _16)) +(define-fun _1337 () (_ BitVec 64) ((_ sign_extend 32) _1336)) +(define-fun _1338 () (_ BitVec 64) |ldv_is_err::__retval__@2|) +(define-fun _1339 () Bool (= _1337 _1338)) +(define-fun _1392 () (_ BitVec 64) |kmalloc::__retval__@2|) +(define-fun _1514 () (_ BitVec 32) |printk::__CPAchecker_TMP_0@1|) +(define-fun _1515 () (_ BitVec 32) |printk::__retval__@2|) +(define-fun _1516 () Bool (= _1514 _1515)) +(define-fun _1576 () (_ BitVec 32) __VERIFIER_nondet_int@3) +(define-fun _2087 () Bool (not _586)) +(define-fun _2088 () (_ BitVec 32) (ite _2087 _36 _16)) +(define-fun _2089 () (_ BitVec 32) |ldv_assert_linux_kernel_locking_rwlock__double_write_unlock::expr@2|) +(define-fun _2090 () Bool (= _2088 _2089)) +(define-fun _2092 () Bool (= _2089 _16)) +(define-fun _2121 () (_ BitVec 1) (_ bv1 1)) +(define-fun _2122 () (_ BitVec 1) ((_ extract 31 31) _11)) +(define-fun _2123 () Bool (= _2122 _2121)) +(define-fun _2130 () (_ BitVec 64) |__ADDRESS_OF_cpumask_weight::srcp@|) +(define-fun _2133 () (_ BitVec 64) (bvadd _42 _2130)) +(define-fun _2134 () Bool (bvslt _8 _2133)) +(define-fun _2137 () (_ BitVec 32) __VERIFIER_nondet_int@4) +(define-fun _2138 () (_ BitVec 32) |__bitmap_weight::__CPAchecker_TMP_0@3|) +(define-fun _2141 () (_ BitVec 32) |__bitmap_weight::__retval__@2|) +(define-fun _2142 () Bool (= _2138 _2141)) +(define-fun _2147 () (_ BitVec 32) |bitmap_weight::__retval__@2|) +(define-fun _2153 () (_ BitVec 32) |cpumask_weight::__retval__@2|) +(define-fun _2159 () Bool (bvslt _680 _2130)) +(define-fun _2181 () Int 7) +(define-fun _2182 () (_ BitVec 64) (__string__ _2181)) +(define-fun _2183 () (_ BitVec 32) (strncmp _45 _2182 _966)) +(define-fun _2205 () Int 8) +(define-fun _2206 () (_ BitVec 64) (__string__ _2205)) +(define-fun _2207 () (_ BitVec 32) (strncmp _45 _2206 _9)) +(define-fun _2250 () (_ BitVec 8) lock_is_write_held@3) +(define-fun _2251 () Bool (= _2250 _37)) +(define-fun _2300 () (_ BitVec 32) __VERIFIER_nondet_int@5) +(define-fun _2387 () (_ BitVec 64) |ldv_malloc_unknown_size::res@6|) +(define-fun _2390 () (_ BitVec 64) |ldv_malloc_unknown_size::tmp@6|) +(define-fun _2466 () Bool (= _1090 _16)) +(define-fun _2480 () (_ BitVec 64) |lock_torture_init::__CPAchecker_TMP_1@2|) +(define-fun _2484 () Bool (= _2480 _8)) +(define-fun _2506 () (_ BitVec 32) __VERIFIER_nondet_int@6) +(define-fun _2519 () (_ BitVec 32) |cpumask_weight::tmp@5|) +(define-fun _2597 () (_ BitVec 32) __VERIFIER_nondet_int@7) +(define-fun _2690 () (_ BitVec 64) |ldv_malloc_unknown_size::tmp___0@8|) +(define-fun _2799 () Bool (bvslt _16 _17)) +(define-fun _2802 () Bool (not _2799)) +(define-fun _2810 () Bool (bvslt _16 _21)) +(define-fun _2821 () (_ BitVec 32) |torture_shuffle_init::__CPAchecker_TMP_0@3|) +(define-fun _2824 () (_ BitVec 32) |torture_shuffle_init::__retval__@2|) +(define-fun _2825 () Bool (= _2821 _2824)) +(define-fun _2834 () (_ BitVec 32) __VERIFIER_nondet_int@8) +(define-fun _2854 () Bool (bvslt _16 _24)) +(define-fun _2857 () Bool (not _2854)) +(define-fun _2865 () Bool (bvslt _16 _32)) +(define-fun _2876 () (_ BitVec 32) |torture_stutter_init::__CPAchecker_TMP_0@3|) +(define-fun _2879 () (_ BitVec 32) |torture_stutter_init::__retval__@2|) +(define-fun _2880 () Bool (= _2876 _2879)) +(define-fun _2889 () (_ BitVec 32) __VERIFIER_nondet_int@9) +(define-fun _2913 () (_ BitVec 64) |kzalloc::size@2|) +(define-fun _2915 () (_ BitVec 32) |kzalloc::flags@2|) +(define-fun _2916 () Bool (= _2915 _1233)) +(define-fun _2919 () (_ BitVec 64) |ldv_kzalloc::size@2|) +(define-fun _2920 () Bool (= _2913 _2919)) +(define-fun _2921 () (_ BitVec 32) |ldv_kzalloc::flags@2|) +(define-fun _2922 () Bool (= _2915 _2921)) +(define-fun _2923 () Bool (and _2920 _2922)) +(define-fun _2942 () (_ BitVec 64) |ldv_zalloc::size@2|) +(define-fun _2943 () Bool (= _2919 _2942)) +(define-fun _2945 () (_ BitVec 64) |ldv_calloc::nmemb@2|) +(define-fun _2946 () Bool (= _2945 _35)) +(define-fun _2947 () (_ BitVec 64) |ldv_calloc::size@2|) +(define-fun _2948 () Bool (= _2942 _2947)) +(define-fun _2949 () Bool (and _2946 _2948)) +(define-fun _2962 () (_ BitVec 64) |ldv_calloc::__retval__@2|) +(define-fun _2965 () (_ BitVec 64) calloc@2) +(define-fun _2966 () Bool (= _2965 _8)) +(define-fun _2967 () Bool (not _2966)) +(define-fun _2968 () (_ BitVec 64) (bvmul _2945 _2947)) +(define-fun _2969 () (_ BitVec 64) |__ADDRESS_OF___VERIFIER_successful_zalloc_*void#1@|) +(define-fun _2970 () Bool (bvslt _8 _2969)) +(define-fun _2971 () (_ BitVec 64) (ite _2967 _2969 _8)) +(define-fun _3019 () (_ BitVec 64) |ldv_zalloc::__retval__@2|) +(define-fun _3025 () (_ BitVec 64) |ldv_kzalloc::__retval__@2|) +(define-fun _3031 () (_ BitVec 64) |kzalloc::__retval__@2|) +(define-fun _3151 () (_ BitVec 32) __VERIFIER_nondet_int@10) +(define-fun _3259 () Bool (bvslt _2133 _2969)) +(define-fun _3260 () (_ BitVec 64) (_ bv10680 64)) +(define-fun _3262 () (_ BitVec 64) (bvadd _3260 _2969)) +(define-fun _3263 () Bool (bvslt _8 _3262)) +(define-fun _3265 () (_ BitVec 64) (bvadd _2968 _2969)) +(define-fun _3266 () Bool (bvslt _8 _3265)) +(define-fun _3267 () (_ BitVec 64) writer_tasks@3) +(define-fun _3269 () Bool (and _3259 _3263)) +(define-fun _3270 () Bool (and _3266 _3269)) +(define-fun _3276 () Bool (= _3267 _8)) +(define-fun _3279 () Bool (not _3276)) +(define-fun _3287 () (_ BitVec 64) |lock_torture_init::__CPAchecker_TMP_2@2|) +(define-fun _3293 () Bool (= _3287 _8)) +(define-fun _3398 () (_ BitVec 64) |ldv_calloc::res@4|) +(define-fun _3401 () (_ BitVec 64) |ldv_calloc::tmp@4|) +(define-fun _3923 () Bool (bvslt _16 _28)) +(define-fun _3934 () (_ BitVec 32) |_torture_create_kthread::__CPAchecker_TMP_0@3|) +(define-fun _3937 () (_ BitVec 32) |_torture_create_kthread::__retval__@2|) +(define-fun _3938 () Bool (= _3934 _3937)) +(define-fun _3967 () Bool (= _1053 _16)) +(define-fun _4861 () (_ BitVec 64) ((_ sign_extend 32) _1090)) +(define-fun _11384 () Bool (bvult _1011 _1090)) +(define-fun _11385 () Bool (not _11384)) +(define-fun _11414 () (_ BitVec 32) |ldv_EMGentry_init_lock_torture_init_6_9::__retval__@2|) +(define-fun _11488 () (_ BitVec 32) |ldv_ldv_post_init_85::ldv_func_arg1@2|) +(define-fun _11491 () (_ BitVec 32) ldv_linux_net_register_probe_state@3) +(define-fun _11492 () Bool (= _11491 _16)) +(define-fun _11494 () (_ BitVec 32) ldv_linux_usb_register_probe_state@3) +(define-fun _11495 () Bool (= _11494 _16)) +(define-fun _11497 () (_ BitVec 32) |ldv_post_init::init_ret_val@2|) +(define-fun _11498 () Bool (= _11488 _11497)) +(define-fun _11500 () (_ BitVec 32) |ldv_filter_positive_int::val@2|) +(define-fun _11501 () Bool (= _11497 _11500)) +(define-fun _11504 () Bool (bvslt _16 _11500)) +(define-fun _11505 () Bool (not _11504)) +(define-fun _11506 () (_ BitVec 32) (ite _11505 _36 _16)) +(define-fun _11511 () (_ BitVec 32) |ldv_filter_positive_int::__retval__@2|) +(define-fun _11512 () Bool (= _11500 _11511)) +(define-fun _11517 () (_ BitVec 32) |ldv_post_init::__retval__@2|) +(define-fun _11523 () (_ BitVec 32) |ldv_ldv_post_init_85::__retval__@2|) +(define-fun _12443 () (_ BitVec 32) |ldv_assume::expression@18|) +(define-fun _12446 () Bool (= _12443 _16)) +(define-fun _12449 () Bool (not _12446)) +(define-fun _12703 () (_ BitVec 64) |ldv_xmalloc::size@2|) +(define-fun _12704 () Bool (= _12703 _9)) +(define-fun _12706 () (_ BitVec 64) malloc@2) +(define-fun _12707 () Bool (= _12706 _8)) +(define-fun _12708 () Bool (not _12707)) +(define-fun _12712 () (_ BitVec 64) |ldv_xmalloc::tmp@3|) +(define-fun _12716 () (_ BitVec 64) |ldv_xmalloc::res@3|) +(define-fun _12717 () Bool (= _12712 _12716)) +(define-fun _12719 () Bool (= _12716 _8)) +(define-fun _12720 () Bool (not _12719)) +(define-fun _12721 () (_ BitVec 32) (ite _12720 _36 _16)) +(define-fun _12738 () (_ BitVec 64) |ldv_xmalloc::__retval__@2|) +(define-fun _12739 () Bool (= _12716 _12738)) +(define-fun _13041 () (_ BitVec 64) |ldv_xmalloc::tmp___0@5|) +(define-fun _13044 () Bool (= _13041 _8)) +(define-fun _13045 () (_ BitVec 32) (ite _13044 _36 _16)) +(define-fun _13282 () (_ BitVec 32) |ldv_assume::expression@21|) +(define-fun _13285 () Bool (= _13282 _16)) +(define-fun _13288 () Bool (not _13285)) +(define-fun _13316 () (_ BitVec 32) |ldv_undef_int::tmp@23|) +(define-fun _86248 () Bool (= _2387 _8)) +(define-fun _86344 () Bool (= _3398 _8)) +(define-fun _92180 () (_ BitVec 8) |lock_torture_init::tmp@4|) +(define-fun _92181 () Bool (= _1029 _92180)) +(define-fun _92182 () Bool (and _1031 _92181)) +(define-fun _92185 () Bool (= _92180 _37)) +(define-fun _92187 () Bool (not _92185)) +(define-fun _92188 () Bool (and _92182 _92187)) +(define-fun _92189 () (_ BitVec 32) |lock_torture_init::tmp___0@4|) +(define-fun _92190 () Bool (= _92189 _16)) +(define-fun _92191 () Bool (and _92188 _92190)) +(define-fun _92193 () Bool (and _92190 _92191)) +(define-fun _92194 () Bool (and _2466 _92193)) +(define-fun _92195 () Bool (and _11385 _92194)) +(define-fun _92197 () (_ BitVec 64) (bvshl _4861 _876)) +(define-fun _92198 () (_ BitVec 64) (bvadd _677 _92197)) +(define-fun _92199 () (_ BitVec 64) (select _1013 _92198)) +(define-fun _92200 () Bool (= _1073 _92199)) +(define-fun _92201 () Bool (and _92195 _92200)) +(define-fun _92202 () (_ BitVec 32) |lock_torture_init::tmp___1@4|) +(define-fun _92203 () Bool (= _1079 _92202)) +(define-fun _92204 () Bool (and _92201 _92203)) +(define-fun _92205 () Bool (= _92202 _16)) +(define-fun _92207 () Bool (and _92204 _92205)) +(define-fun _92208 () Bool (= _1090 _1093)) +(define-fun _92210 () Bool (not _92208)) +(define-fun _92211 () Bool (and _92207 _92210)) +(define-fun _92212 () Bool (and _1103 _92211)) +(define-fun _92213 () Bool (and _1105 _92212)) +(define-fun _92214 () Bool (and _2123 _92213)) +(define-fun _92215 () Bool (and _2134 _2159)) +(define-fun _92216 () Bool (and _92214 _92215)) +(define-fun _92217 () Bool (= _1283 _2138)) +(define-fun _92218 () Bool (and _92216 _92217)) +(define-fun _92219 () Bool (and _2142 _92218)) +(define-fun _92220 () (_ BitVec 32) |bitmap_weight::tmp___0@4|) +(define-fun _92221 () Bool (= _2141 _92220)) +(define-fun _92222 () Bool (and _92219 _92221)) +(define-fun _92223 () Bool (= _2147 _92220)) +(define-fun _92224 () Bool (and _92222 _92223)) +(define-fun _92225 () Bool (= _2147 _2519)) +(define-fun _92226 () Bool (and _92224 _92225)) +(define-fun _92227 () Bool (= _2153 _2519)) +(define-fun _92228 () Bool (and _92226 _92227)) +(define-fun _92229 () (_ BitVec 32) |lock_torture_init::tmp___2@7|) +(define-fun _92230 () Bool (= _2153 _92229)) +(define-fun _92231 () Bool (and _92228 _92230)) +(define-fun _92234 () (_ BitVec 32) (bvshl _92229 _36)) +(define-fun _92235 () (_ BitVec 32) cxt$nrealwriters_stress@3) +(define-fun _92236 () Bool (= _92234 _92235)) +(define-fun _92237 () Bool (and _92231 _92236)) +(define-fun _92238 () (_ BitVec 32) |lock_torture_init::tmp___3@7|) +(define-fun _92239 () Bool (= _2183 _92238)) +(define-fun _92240 () Bool (and _92237 _92239)) +(define-fun _92241 () Bool (= _92238 _16)) +(define-fun _92243 () Bool (not _92241)) +(define-fun _92244 () Bool (and _92240 _92243)) +(define-fun _92245 () (_ BitVec 32) |lock_torture_init::tmp___4@7|) +(define-fun _92246 () Bool (= _2207 _92245)) +(define-fun _92247 () Bool (and _92244 _92246)) +(define-fun _92248 () Bool (= _92245 _16)) +(define-fun _92250 () Bool (and _92247 _92248)) +(define-fun _92251 () (_ BitVec 8) cxt$debug_lock@3) +(define-fun _92252 () Bool (= _92251 _38)) +(define-fun _92253 () Bool (and _92250 _92252)) +(define-fun _92254 () Bool (and _2251 _92253)) +(define-fun _92255 () Bool (and _1235 _92254)) +(define-fun _92256 () Bool (and _1238 _92255)) +(define-fun _92257 () Bool (and _1241 _92256)) +(define-fun _92258 () Bool (and _1244 _92257)) +(define-fun _92259 () (_ BitVec 8) |ldv_linux_alloc_irq_check_alloc_flags::tmp@4|) +(define-fun _92260 () Bool (= _1243 _92259)) +(define-fun _92261 () Bool (and _92258 _92260)) +(define-fun _92264 () Bool (= _92259 _37)) +(define-fun _92266 () Bool (and _92261 _92264)) +(define-fun _92267 () (_ BitVec 32) |ldv_linux_alloc_irq_check_alloc_flags::tmp___0@4|) +(define-fun _92268 () Bool (= _92267 _36)) +(define-fun _92269 () Bool (and _92266 _92268)) +(define-fun _92270 () Bool (= _92267 _16)) +(define-fun _92272 () Bool (not _92270)) +(define-fun _92273 () Bool (and _92269 _92272)) +(define-fun _92274 () Bool (and _1265 _92273)) +(define-fun _92275 () Bool (and _1268 _92274)) +(define-fun _92276 () Bool (and _1273 _92275)) +(define-fun _92277 () Bool (and _1276 _92276)) +(define-fun _92278 () Bool (and _1281 _92277)) +(define-fun _92279 () Bool (= _1284 _1576)) +(define-fun _92280 () Bool (and _92278 _92279)) +(define-fun _92281 () Bool (and _1288 _92280)) +(define-fun _92282 () (_ BitVec 32) |ldv_malloc_unknown_size::tmp___1@4|) +(define-fun _92283 () Bool (= _1287 _92282)) +(define-fun _92284 () Bool (and _92281 _92283)) +(define-fun _92285 () Bool (= _92282 _16)) +(define-fun _92286 () Bool (not _92285)) +(define-fun _92288 () Bool (and _92284 _92286)) +(define-fun _92289 () Bool (and _1303 _92288)) +(define-fun _92290 () Bool (and _1306 _92289)) +(define-fun _92291 () (_ BitVec 64) |external_allocated_data::__CPAchecker_TMP_0@4|) +(define-fun _92292 () Bool (= _1305 _92291)) +(define-fun _92293 () Bool (and _92290 _92292)) +(define-fun _92294 () Bool (= _1311 _92291)) +(define-fun _92295 () Bool (and _92293 _92294)) +(define-fun _92296 () Bool (= _1311 _2390)) +(define-fun _92297 () Bool (and _92295 _92296)) +(define-fun _92298 () Bool (= _2387 _2390)) +(define-fun _92299 () Bool (and _92297 _92298)) +(define-fun _92300 () Bool (not _86248)) +(define-fun _92301 () (_ BitVec 32) (ite _92300 _36 _16)) +(define-fun _92302 () Bool (= _12443 _92301)) +(define-fun _92303 () Bool (and _92299 _92302)) +(define-fun _92304 () Bool (and _12449 _92303)) +(define-fun _92305 () Bool (= _1331 _2387)) +(define-fun _92306 () Bool (and _92304 _92305)) +(define-fun _92307 () Bool (and _1339 _92306)) +(define-fun _92308 () Bool (= _1338 _2690)) +(define-fun _92309 () Bool (and _92307 _92308)) +(define-fun _92310 () Bool (= _2690 _8)) +(define-fun _92311 () (_ BitVec 32) (ite _92310 _36 _16)) +(define-fun _92312 () Bool (= _13282 _92311)) +(define-fun _92313 () Bool (and _92309 _92312)) +(define-fun _92314 () Bool (and _13288 _92313)) +(define-fun _92315 () Bool (= _1298 _2387)) +(define-fun _92316 () Bool (and _92314 _92315)) +(define-fun _92317 () (_ BitVec 64) |kmalloc::res@15|) +(define-fun _92318 () Bool (= _1298 _92317)) +(define-fun _92319 () Bool (and _92316 _92318)) +(define-fun _92320 () Bool (= _1392 _92317)) +(define-fun _92321 () Bool (and _92319 _92320)) +(define-fun _92322 () (_ BitVec 64) |lock_torture_init::tmp___6@21|) +(define-fun _92323 () Bool (= _1392 _92322)) +(define-fun _92324 () Bool (and _92321 _92323)) +(define-fun _92325 () (_ BitVec 64) cxt$lwsa@3) +(define-fun _92326 () Bool (= _92322 _92325)) +(define-fun _92327 () Bool (and _92324 _92326)) +(define-fun _92328 () Bool (= _92325 _8)) +(define-fun _92330 () Bool (not _92328)) +(define-fun _92331 () Bool (and _92327 _92330)) +(define-fun _92332 () (_ BitVec 32) |lock_torture_init::i@22|) +(define-fun _92333 () Bool (= _92332 _16)) +(define-fun _92334 () Bool (and _92331 _92333)) +(define-fun _92335 () Bool (bvslt _92332 _92235)) +(define-fun _92337 () Bool (not _92335)) +(define-fun _92338 () Bool (and _92334 _92337)) +(define-fun _92339 () Bool (= _1223 _2480)) +(define-fun _92340 () Bool (and _92338 _92339)) +(define-fun _92341 () Bool (and _2484 _92340)) +(define-fun _92344 () Bool (= _92251 _37)) +(define-fun _92346 () Bool (not _92344)) +(define-fun _92347 () Bool (and _92341 _92346)) +(define-fun _92348 () Bool (and _1516 _92347)) +(define-fun _92349 () Bool (and _2802 _92348)) +(define-fun _92350 () Bool (and _2810 _92349)) +(define-fun _92351 () Bool (= _2137 _2821)) +(define-fun _92352 () Bool (and _92350 _92351)) +(define-fun _92353 () Bool (and _2825 _92352)) +(define-fun _92354 () (_ BitVec 32) |lock_torture_init::firsterr@25|) +(define-fun _92355 () Bool (= _2824 _92354)) +(define-fun _92356 () Bool (and _92353 _92355)) +(define-fun _92357 () Bool (= _92354 _16)) +(define-fun _92360 () Bool (and _92356 _92357)) +(define-fun _92361 () Bool (and _2857 _92360)) +(define-fun _92362 () Bool (and _2865 _92361)) +(define-fun _92363 () Bool (= _2300 _2876)) +(define-fun _92364 () Bool (and _92362 _92363)) +(define-fun _92365 () Bool (and _2880 _92364)) +(define-fun _92366 () (_ BitVec 32) |lock_torture_init::firsterr@27|) +(define-fun _92367 () Bool (= _2879 _92366)) +(define-fun _92368 () Bool (and _92365 _92367)) +(define-fun _92369 () Bool (= _92366 _16)) +(define-fun _92372 () Bool (and _92368 _92369)) +(define-fun _92373 () (_ BitVec 64) ((_ sign_extend 32) _92235)) +(define-fun _92376 () (_ BitVec 64) (bvshl _92373 _876)) +(define-fun _92377 () Bool (= _2913 _92376)) +(define-fun _92378 () Bool (and _2916 _92377)) +(define-fun _92379 () Bool (and _92372 _92378)) +(define-fun _92380 () Bool (and _2923 _92379)) +(define-fun _92381 () (_ BitVec 32) |ldv_check_alloc_flags::flags@21|) +(define-fun _92382 () Bool (= _2921 _92381)) +(define-fun _92383 () Bool (and _92380 _92382)) +(define-fun _92384 () (_ BitVec 32) |ldv_linux_alloc_irq_check_alloc_flags::flags@21|) +(define-fun _92385 () Bool (= _92381 _92384)) +(define-fun _92386 () Bool (and _92383 _92385)) +(define-fun _92387 () (_ BitVec 8) |ldv_in_interrupt_context::__retval__@20|) +(define-fun _92388 () Bool (= _603 _92387)) +(define-fun _92389 () Bool (and _92386 _92388)) +(define-fun _92390 () (_ BitVec 8) |ldv_linux_alloc_irq_check_alloc_flags::tmp@24|) +(define-fun _92391 () Bool (= _92387 _92390)) +(define-fun _92392 () Bool (and _92389 _92391)) +(define-fun _92395 () Bool (= _92390 _37)) +(define-fun _92397 () Bool (and _92392 _92395)) +(define-fun _92398 () (_ BitVec 32) |ldv_linux_alloc_irq_check_alloc_flags::tmp___0@24|) +(define-fun _92399 () Bool (= _92398 _36)) +(define-fun _92400 () Bool (and _92397 _92399)) +(define-fun _92401 () Bool (= _92398 _16)) +(define-fun _92403 () Bool (not _92401)) +(define-fun _92404 () Bool (and _92400 _92403)) +(define-fun _92405 () (_ BitVec 32) |ldv_linux_alloc_irq_check_alloc_flags::__CPAchecker_TMP_0@23|) +(define-fun _92406 () Bool (= _92405 _36)) +(define-fun _92407 () Bool (and _92404 _92406)) +(define-fun _92408 () (_ BitVec 32) |ldv_assert_linux_alloc_irq__wrong_flags::expr@21|) +(define-fun _92409 () Bool (= _92405 _92408)) +(define-fun _92410 () Bool (and _92407 _92409)) +(define-fun _92411 () Bool (= _92408 _16)) +(define-fun _92413 () Bool (not _92411)) +(define-fun _92414 () Bool (and _92410 _92413)) +(define-fun _92415 () (_ BitVec 32) |ldv_linux_alloc_usb_lock_check_alloc_flags::flags@21|) +(define-fun _92416 () Bool (= _92381 _92415)) +(define-fun _92417 () Bool (and _92414 _92416)) +(define-fun _92418 () Bool (and _1281 _92417)) +(define-fun _92419 () Bool (and _2943 _92418)) +(define-fun _92420 () Bool (and _2949 _92419)) +(define-fun _92421 () Bool (= _2506 _13316)) +(define-fun _92422 () Bool (and _92420 _92421)) +(define-fun _92423 () (_ BitVec 32) |ldv_undef_int::__retval__@20|) +(define-fun _92424 () Bool (= _13316 _92423)) +(define-fun _92425 () Bool (and _92422 _92424)) +(define-fun _92426 () (_ BitVec 32) |ldv_calloc::tmp___1@4|) +(define-fun _92427 () Bool (= _92423 _92426)) +(define-fun _92428 () Bool (and _92425 _92427)) +(define-fun _92429 () Bool (= _92426 _16)) +(define-fun _92430 () Bool (not _92429)) +(define-fun _92432 () Bool (and _92428 _92430)) +(define-fun _92433 () Bool (= _2971 _3401)) +(define-fun _92434 () Bool (and _2970 _92433)) +(define-fun _92435 () Bool (and _92432 _92434)) +(define-fun _92436 () Bool (= _3398 _3401)) +(define-fun _92437 () Bool (and _92435 _92436)) +(define-fun _92438 () Bool (not _86344)) +(define-fun _92439 () (_ BitVec 32) (ite _92438 _36 _16)) +(define-fun _92440 () (_ BitVec 32) |ldv_assume::expression@36|) +(define-fun _92441 () Bool (= _92439 _92440)) +(define-fun _92442 () Bool (and _92437 _92441)) +(define-fun _92443 () Bool (= _92440 _16)) +(define-fun _92445 () Bool (not _92443)) +(define-fun _92446 () Bool (and _92442 _92445)) +(define-fun _92447 () (_ BitVec 64) |ldv_is_err::ptr@19|) +(define-fun _92448 () Bool (= _3398 _92447)) +(define-fun _92449 () Bool (and _92446 _92448)) +(define-fun _92450 () Bool (bvult _1334 _92447)) +(define-fun _92451 () (_ BitVec 32) (ite _92450 _36 _16)) +(define-fun _92452 () (_ BitVec 64) ((_ sign_extend 32) _92451)) +(define-fun _92453 () (_ BitVec 64) |ldv_is_err::__retval__@18|) +(define-fun _92454 () Bool (= _92452 _92453)) +(define-fun _92455 () Bool (and _92449 _92454)) +(define-fun _92456 () (_ BitVec 64) |ldv_calloc::tmp___0@6|) +(define-fun _92457 () Bool (= _92453 _92456)) +(define-fun _92458 () Bool (and _92455 _92457)) +(define-fun _92459 () Bool (= _92456 _8)) +(define-fun _92460 () (_ BitVec 32) (ite _92459 _36 _16)) +(define-fun _92461 () (_ BitVec 32) |ldv_assume::expression@39|) +(define-fun _92462 () Bool (= _92460 _92461)) +(define-fun _92463 () Bool (and _92458 _92462)) +(define-fun _92464 () Bool (= _92461 _16)) +(define-fun _92466 () Bool (not _92464)) +(define-fun _92467 () Bool (and _92463 _92466)) +(define-fun _92468 () Bool (= _2962 _3398)) +(define-fun _92469 () Bool (and _92467 _92468)) +(define-fun _92470 () (_ BitVec 64) |ldv_zalloc::tmp@8|) +(define-fun _92471 () Bool (= _2962 _92470)) +(define-fun _92472 () Bool (and _92469 _92471)) +(define-fun _92473 () Bool (= _3019 _92470)) +(define-fun _92474 () Bool (and _92472 _92473)) +(define-fun _92475 () (_ BitVec 64) |ldv_kzalloc::res@14|) +(define-fun _92476 () Bool (= _3019 _92475)) +(define-fun _92477 () Bool (and _92474 _92476)) +(define-fun _92478 () Bool (= _3025 _92475)) +(define-fun _92479 () Bool (and _92477 _92478)) +(define-fun _92480 () (_ BitVec 64) |kzalloc::tmp@16|) +(define-fun _92481 () Bool (= _3025 _92480)) +(define-fun _92482 () Bool (and _92479 _92481)) +(define-fun _92483 () Bool (= _3031 _92480)) +(define-fun _92484 () Bool (and _92482 _92483)) +(define-fun _92485 () (_ BitVec 64) |lock_torture_init::tmp___9@39|) +(define-fun _92486 () Bool (= _3031 _92485)) +(define-fun _92487 () Bool (and _92484 _92486)) +(define-fun _92488 () Bool (= _3267 _92485)) +(define-fun _92489 () Bool (and _3270 _92488)) +(define-fun _92490 () Bool (and _92487 _92489)) +(define-fun _92491 () Bool (and _3279 _92490)) +(define-fun _92492 () Bool (= _1223 _3287)) +(define-fun _92493 () Bool (and _92491 _92492)) +(define-fun _92494 () Bool (and _3293 _92493)) +(define-fun _92495 () (_ BitVec 32) |lock_torture_init::i@41|) +(define-fun _92496 () Bool (= _92495 _16)) +(define-fun _92497 () Bool (and _92494 _92496)) +(define-fun _92498 () (_ BitVec 32) |lock_torture_init::j@39|) +(define-fun _92499 () Bool (= _92498 _16)) +(define-fun _92500 () Bool (and _92497 _92499)) +(define-fun _92501 () Bool (bvslt _92495 _92235)) +(define-fun _92503 () Bool (not _92501)) +(define-fun _92504 () Bool (and _92500 _92503)) +(define-fun _92505 () Bool (bvslt _92498 _82)) +(define-fun _92507 () Bool (not _92505)) +(define-fun _92508 () Bool (and _92504 _92507)) +(define-fun _92509 () Bool (and _3923 _92508)) +(define-fun _92510 () Bool (= _2597 _3934)) +(define-fun _92511 () Bool (and _92509 _92510)) +(define-fun _92512 () Bool (and _3938 _92511)) +(define-fun _92513 () (_ BitVec 32) |lock_torture_init::firsterr@43|) +(define-fun _92514 () Bool (= _3937 _92513)) +(define-fun _92515 () Bool (and _92512 _92514)) +(define-fun _92516 () Bool (= _92513 _16)) +(define-fun _92519 () Bool (and _92515 _92516)) +(define-fun _92520 () Bool (and _3967 _92519)) +(define-fun _92521 () (_ BitVec 32) |ldv_EMGentry_init_lock_torture_init_6_9::tmp@42|) +(define-fun _92522 () Bool (= _1053 _92521)) +(define-fun _92523 () Bool (and _92520 _92522)) +(define-fun _92524 () Bool (= _11414 _92521)) +(define-fun _92525 () Bool (and _92523 _92524)) +(define-fun _92526 () (_ BitVec 32) |ldv_entry_EMGentry_6::ldv_6_ret_default@43|) +(define-fun _92527 () Bool (= _11414 _92526)) +(define-fun _92528 () Bool (and _92525 _92527)) +(define-fun _92529 () Bool (= _11488 _92526)) +(define-fun _92530 () Bool (and _92528 _92529)) +(define-fun _92531 () Bool (and _11492 _92530)) +(define-fun _92532 () Bool (and _11495 _92531)) +(define-fun _92533 () Bool (and _11498 _92532)) +(define-fun _92534 () Bool (and _11501 _92533)) +(define-fun _92535 () (_ BitVec 32) |ldv_assume::expression@52|) +(define-fun _92536 () Bool (= _11506 _92535)) +(define-fun _92537 () Bool (and _92534 _92536)) +(define-fun _92538 () Bool (= _92535 _16)) +(define-fun _92540 () Bool (not _92538)) +(define-fun _92541 () Bool (and _92537 _92540)) +(define-fun _92542 () Bool (and _11512 _92541)) +(define-fun _92543 () (_ BitVec 32) |ldv_post_init::tmp@5|) +(define-fun _92544 () Bool (= _11511 _92543)) +(define-fun _92545 () Bool (and _92542 _92544)) +(define-fun _92546 () Bool (= _11517 _92543)) +(define-fun _92547 () Bool (and _92545 _92546)) +(define-fun _92548 () (_ BitVec 32) |ldv_ldv_post_init_85::tmp@8|) +(define-fun _92549 () Bool (= _11517 _92548)) +(define-fun _92550 () Bool (and _92547 _92549)) +(define-fun _92551 () Bool (= _11523 _92548)) +(define-fun _92552 () Bool (and _92550 _92551)) +(define-fun _92553 () (_ BitVec 32) |ldv_entry_EMGentry_6::ldv_6_ret_default@50|) +(define-fun _92554 () Bool (= _11523 _92553)) +(define-fun _92555 () Bool (and _92552 _92554)) +(define-fun _92556 () (_ BitVec 32) |ldv_undef_int::tmp@44|) +(define-fun _92557 () Bool (= _2834 _92556)) +(define-fun _92558 () Bool (and _92555 _92557)) +(define-fun _92559 () (_ BitVec 32) |ldv_undef_int::__retval__@39|) +(define-fun _92560 () Bool (= _92556 _92559)) +(define-fun _92561 () Bool (and _92558 _92560)) +(define-fun _92562 () (_ BitVec 32) |ldv_entry_EMGentry_6::tmp___0@50|) +(define-fun _92563 () Bool (= _92559 _92562)) +(define-fun _92564 () Bool (and _92561 _92563)) +(define-fun _92565 () Bool (= _92562 _16)) +(define-fun _92568 () Bool (and _92564 _92565)) +(define-fun _92569 () Bool (= _92553 _16)) +(define-fun _92570 () (_ BitVec 32) (ite _92569 _36 _16)) +(define-fun _92571 () (_ BitVec 32) |ldv_assume::expression@58|) +(define-fun _92572 () Bool (= _92570 _92571)) +(define-fun _92573 () Bool (and _92568 _92572)) +(define-fun _92574 () Bool (= _92571 _16)) +(define-fun _92576 () Bool (not _92574)) +(define-fun _92577 () Bool (and _92573 _92576)) +(define-fun _92578 () (_ BitVec 32) |ldv_undef_int::tmp@48|) +(define-fun _92579 () Bool (= _2889 _92578)) +(define-fun _92580 () Bool (and _92577 _92579)) +(define-fun _92581 () (_ BitVec 32) |ldv_undef_int::__retval__@41|) +(define-fun _92582 () Bool (= _92578 _92581)) +(define-fun _92583 () Bool (and _92580 _92582)) +(define-fun _92584 () (_ BitVec 32) |ldv_entry_EMGentry_6::tmp@52|) +(define-fun _92585 () Bool (= _92581 _92584)) +(define-fun _92586 () Bool (and _92583 _92585)) +(define-fun _92587 () Bool (= _92584 _16)) +(define-fun _92588 () Bool (not _92587)) +(define-fun _92590 () Bool (and _92586 _92588)) +(define-fun _92591 () Bool (and _12704 _92590)) +(define-fun _92592 () (_ BitVec 64) |__ADDRESS_OF___VERIFIER_successful_alloc_*void#2@|) +(define-fun _92593 () Bool (bvslt _8 _92592)) +(define-fun _92594 () (_ BitVec 64) (ite _12708 _92592 _8)) +(define-fun _92595 () Bool (= _12712 _92594)) +(define-fun _92596 () Bool (and _92593 _92595)) +(define-fun _92597 () Bool (and _92591 _92596)) +(define-fun _92598 () Bool (and _12717 _92597)) +(define-fun _92599 () (_ BitVec 32) |ldv_assume::expression@61|) +(define-fun _92600 () Bool (= _12721 _92599)) +(define-fun _92601 () Bool (and _92598 _92600)) +(define-fun _92602 () Bool (= _92599 _16)) +(define-fun _92604 () Bool (not _92602)) +(define-fun _92605 () Bool (and _92601 _92604)) +(define-fun _92606 () (_ BitVec 64) |ldv_is_err::ptr@41|) +(define-fun _92607 () Bool (= _12716 _92606)) +(define-fun _92608 () Bool (and _92605 _92607)) +(define-fun _92609 () Bool (bvult _1334 _92606)) +(define-fun _92610 () (_ BitVec 32) (ite _92609 _36 _16)) +(define-fun _92611 () (_ BitVec 64) ((_ sign_extend 32) _92610)) +(define-fun _92612 () (_ BitVec 64) |ldv_is_err::__retval__@39|) +(define-fun _92613 () Bool (= _92611 _92612)) +(define-fun _92614 () Bool (and _92608 _92613)) +(define-fun _92615 () Bool (= _13041 _92612)) +(define-fun _92616 () Bool (and _92614 _92615)) +(define-fun _92617 () (_ BitVec 32) |ldv_assume::expression@64|) +(define-fun _92618 () Bool (= _13045 _92617)) +(define-fun _92619 () Bool (and _92616 _92618)) +(define-fun _92620 () Bool (= _92617 _16)) +(define-fun _92622 () Bool (not _92620)) +(define-fun _92623 () Bool (and _92619 _92622)) +(define-fun _92624 () Bool (and _12739 _92623)) +(define-fun _92625 () (_ BitVec 32) |ldv_undef_int::tmp@55|) +(define-fun _92626 () Bool (= _3151 _92625)) +(define-fun _92627 () Bool (and _92624 _92626)) +(define-fun _92628 () (_ BitVec 32) |ldv_undef_int::__retval__@46|) +(define-fun _92629 () Bool (= _92625 _92628)) +(define-fun _92630 () Bool (and _92627 _92629)) +(define-fun _92631 () (_ BitVec 32) |ldv_struct_noname_2_dummy_resourceless_instance_0::tmp@4|) +(define-fun _92632 () Bool (= _92628 _92631)) +(define-fun _92633 () Bool (and _92630 _92632)) +(define-fun _92634 () Bool (= _92631 _36)) +(define-fun _92636 () Bool (not _92634)) +(define-fun _92637 () Bool (and _92633 _92636)) +(define-fun _92638 () Bool (= _92631 _831)) +(define-fun _92640 () Bool (not _92638)) +(define-fun _92641 () Bool (and _92637 _92640)) +(define-fun _92642 () Bool (= _92631 _20)) +(define-fun _92644 () Bool (not _92642)) +(define-fun _92645 () Bool (and _92641 _92644)) +(define-fun _92646 () Bool (= _92631 _921)) +(define-fun _92648 () Bool (and _92645 _92646)) +(define-fun _92649 () Bool (and _2090 _92648)) +(define-fun _92650 () Bool (and _2092 _92649)) +(assert _92650) +(check-sat) +(exit) diff --git a/tests/regress/mcsat/arrays/linux-4.0-rc1---kernel--locking--locktorture.ko.cil_smt-query.1.smt2.gold b/tests/regress/mcsat/arrays/linux-4.0-rc1---kernel--locking--locktorture.ko.cil_smt-query.1.smt2.gold new file mode 100644 index 000000000..6b8a2c3d2 --- /dev/null +++ b/tests/regress/mcsat/arrays/linux-4.0-rc1---kernel--locking--locktorture.ko.cil_smt-query.1.smt2.gold @@ -0,0 +1 @@ +sat diff --git a/tests/regress/mcsat/arrays/linux-4.0-rc1---kernel--locking--locktorture.ko.cil_smt-query.1.smt2.options b/tests/regress/mcsat/arrays/linux-4.0-rc1---kernel--locking--locktorture.ko.cil_smt-query.1.smt2.options new file mode 100644 index 000000000..ef51a657c --- /dev/null +++ b/tests/regress/mcsat/arrays/linux-4.0-rc1---kernel--locking--locktorture.ko.cil_smt-query.1.smt2.options @@ -0,0 +1 @@ +--mcsat --incremental \ No newline at end of file From 72790d658f9ef01169a13b903a509a4350cf5323 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Sat, 8 Jul 2023 03:40:36 -0700 Subject: [PATCH 120/182] install guide for kissat --- doc/sphinx/source/install-sources.rst | 44 ++++++++++++++++++++++----- 1 file changed, 36 insertions(+), 8 deletions(-) diff --git a/doc/sphinx/source/install-sources.rst b/doc/sphinx/source/install-sources.rst index b7f231092..a2121268c 100644 --- a/doc/sphinx/source/install-sources.rst +++ b/doc/sphinx/source/install-sources.rst @@ -177,14 +177,18 @@ Third-Party SAT Solvers ----------------------- Yices can use third-party SAT solvers as backends to the bit-vector -solvers. We call these *delegates*. Currently two third-party solvers -are supported +solvers. Currently one internal and three third-party solvers are +supported -1. Armin Biere's `CaDiCal `_ +1. Internal y2sat SAT solver (default solver) -2. Mate Soos' `CryptoMiniSAT `_ +2. Armin Biere's `CaDiCal `_ -You can compile Yices with one or both of these SAT solvers. +3. Mate Soos' `CryptoMiniSAT `_ + +4. Armin Biere's `Kissat (patched version) `_ + +You can also compile Yices with any of these SAT solvers. Install CaDiCaL ............... @@ -235,16 +239,34 @@ This will install CryptoMiniSAT in ``/usr/local/``. There are more detailed build instructions in the CryptoMiniSAT ``README``. +Install Kissat +.............. + +We provide a patched version of Kissat that fixes an issue. Download +this patched version at https://github.com/BrunoDutertre/kissat. The +original is at https://github.com/arminbiere/kissat. To compile the +code, follow these instructions: + +.. code-block:: sh + + git clone https://github.com/BrunoDutertre/kissat + cd kissat + ./configure -fPIC + make + sudo install build/libkissat.a /usr/local/lib + sudo install -m644 src/kissat.h /usr/local/include + + Configure and Build Yices with Third-Party Solvers .................................................. -To build Yices with support for both CaDiCaL and CryptoMiniSAT, use the following +To build Yices with support for all third-party solvers, use the following configure command in the top-level yices source directory: .. code-block:: sh - ./configure CPPFLAGS='-DHAVE_CADICAL -DHAVE_CRYPTOMINISAT' \ - LIBS=’-lcryptominisat5 -lcadical -lstdc++ -lm’ + ./configure CPPFLAGS='-DHAVE_CADICAL -DHAVE_CRYPTOMINISAT -DHAVE_KISSAT' \ + LIBS=’-lcryptominisat5 -lcadical -lkissat -lstdc++ -lm’ If you want only CaDiCaL: @@ -258,6 +280,12 @@ If you want only CryptoMiniSAT: ./configure CPPFLAGS=-DHAVE_CRYPTOMINISAT LIBS=’-lcryptominisat5 -lstdc++’ +If you want only Kissat, use this command: + +.. code-block:: sh + + ./configure CPPFLAGS=-DHAVE_KISSAT LIBS=’-lkissat -lm’ + After any of these ``configure`` commands, you can build Yices as usual: .. code-block:: sh From 9cc62e7fbd482ae457269ce4887f9f18f4dcd79b Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Sun, 9 Jul 2023 13:22:37 -0700 Subject: [PATCH 121/182] add missing EF errors --- doc/sphinx/source/api-types.rst | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/doc/sphinx/source/api-types.rst b/doc/sphinx/source/api-types.rst index c2e80456a..e0194090a 100644 --- a/doc/sphinx/source/api-types.rst +++ b/doc/sphinx/source/api-types.rst @@ -1014,6 +1014,22 @@ Error Reports Attempt to use a delegate that was not included in the Yices library at compilation time. + .. c:enum:: CTX_EF_ASSERTIONS_CONTAIN_UF + + Uninterpreted functions not supported by the exists/forall solver. + + .. c:enum:: CTX_EF_NOT_EXISTS_FORALL + + Assertions are not in the exists/forall fragment. + + .. c:enum:: CTX_EF_HIGH_ORDER_VARS + + High-order and tuple variables are not supported. + + .. c:enum:: CTX_EF_INTERNAL_ERROR + + The exists/forall solver failed. + .. c:enum:: CTX_INVALID_CONFIG Reported by :c:func:`yices_new_context` if the requested From 9b2129c2db29374bea00b625977193332b935699 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Tue, 11 Jul 2023 14:52:32 -0700 Subject: [PATCH 122/182] interpolats in the context doc --- doc/sphinx/source/context-operations.rst | 189 ++++++++++++++++++++++- 1 file changed, 183 insertions(+), 6 deletions(-) diff --git a/doc/sphinx/source/context-operations.rst b/doc/sphinx/source/context-operations.rst index c918c7f1e..364e3b0fa 100644 --- a/doc/sphinx/source/context-operations.rst +++ b/doc/sphinx/source/context-operations.rst @@ -111,8 +111,8 @@ If you configure a context for a logic such as ``"QF_NRA"`` or ``"QF_UFNIA"`` then MCSat will be automatically selected. The MCSat solver does not currently support as many features as the -DPLL(T) implementation. In particular, MCSat does not yet support push -and pop. +DPLL(T) implementation. In particular, MCSat does not yet support +computing unsat cores. **Theory Solvers** @@ -222,14 +222,12 @@ each call to :c:func:`yices_check_context`. This introduces overhead, but the context can be restored to a clean state if the search is interrupted. -Currently, MCSat supports only mode one-shot. - For DPLL(T), the four operating modes can be used, except if a Floyd-Warshal theory solver is used. The Floyd-Warshal solvers are specialized for difference logic and support only mode one-shot. -The default mode is push-pop for DPLL(T) and one-shot for MCSat. +The default mode is push-pop. @@ -842,7 +840,6 @@ returns the core in a term vector. A full example is in file :file:`examples/example_unsat_core.c` included in the Yices distribution. - .. c:function:: smt_status_t yices_check_context_with_assumptions(context_t* ctx, const param_t* params, uint32_t n, const term_t t[]) Checks whether *n* assumptions are satisfiable in a context *ctx*. @@ -935,6 +932,186 @@ distribution. +Check Modulo a Model and Model Interpolant +------------------------------------------ + +When checking satisfiability, it is possible to provide a partial +model such that the satisfiability is checked for the assertions in +conjunction with the provided model. To use this functionality, the +context must be a context initialized with support for MCSAT (see +yices_new_context, yices_new_config, yices_set_config). +Here is an example:: + + ctx_config_t* config = yices_new_config(); + yices_set_config(config, "solver-type", "mcsat"); + context_t *ctx = yices_new_context(config); + yices_assert_formula(ctx, f); + status = yices_check_context_with_model(ctx, NULL, model, 5, a); + +In this fragment, we first create a yices configuration ``config`` +then we set its parameter ``solver-type`` to ``mcsat``. Then, we +create a context ``ctx`` using ``config``. After that we assert a +formula ``f``. In the call to check, we give an array of five +uninterpreted terms ``a[0]``, ..., ``a[4]``. This amounts to checking +the conjunction of ``f`` and the equalities between the unintpreted +terms and their value in the ``model``. + +The check modulo a model provides an additional functionality, namely, +the construction of a model interpolant, if the yices context is +unsatisfiable and supports model interpolation (see +yices_set_config). This model interpolant is constructed by calling +:c:func:`yices_get_model_interpolant`. + + +.. c:function:: smt_status_t yices_check_context_with_model(context_t* ctx, const param_t* params, model_t *mdl, uint32_t n, const term_t t[]) + + Checks whether *n* assumptions are satisfiable in a context *ctx*. + + **Parameters** + + - *ctx* is a context + + - *params* is an optional structure to a search-parameter structure. + + - *mdl* is a model + + - *n* is the number of assumptions + + - *t* is an array of *n* uninterpreted terms + + The *params* structure controls search heuristics. If *params* is NULL, default + settings are used. See :ref:`params` and :c:func:`yices_check_context`. + + This function checks statisfiability of the constraints in ctx + conjoined with a conjunction of equalities defined by *t[i]* and the + model, namely, + + *t[0] == v_0 /\ .... /\ t[n-1] = v_{n-1}*, + + where *v_i* is the value of *t[i]* in *mdl*. + + NOTE: if *t[i]* does not have a value in *mdl*, then a default value is + picked for *v_i*. + + If this function returns STATUS_UNSAT and the context supports + model interpolation, then one can construct a model interpolant by + calling function :c:func:`yices_get_model_interpolant`. + + More precisely: + + - If *ctx*'s current status is :c:enum:`STATUS_UNSAT` then the function does nothing + and returns :c:enum:`STATUS_UNSAT`. + + - If *ctx*'s status is :c:enum:`STATUS_IDLE`, :c:enum:`STATUS_SAT`, + or :c:enum:`STATUS_UNKNOWN` then the function checks whether + *ctx* conjoined with the *n* equalities given by *mdl* and *t* is + satisfiable. This is done even if *n* is zero. The function will + then return a code as in :c:func:`yices_check_context`. + + - If *ctx*'status is anything else, the function returns :c:enum:`STATUS_ERROR`. + + + This operation fails and returns :c:enum:`STATUS_ERROR` if *ctx* is + configured for one-shot solving and *ctx*'s status is anything + other than :c:enum:`STATUS_IDLE`. + + **Error report** + + - If one of the terms *t[i]* is not an uninterpreted: + + -- error code: :c:enum:`MCSAT_ERROR_ASSUMPTION_TERM_NOT_SUPPORTED` + + - If the context does not have the MCSAT solver enabled: + + -- error code: :c:enum:`CTX_OPERATION_NOT_SUPPORTED` + + - If the resulting status is :c:enum:`STATUS_SAT` and context does not support multichecks: + + -- error code: :c:enum:`CTX_OPERATION_NOT_SUPPORTED` + +.. c:function:: term_t yices_get_model_interpolant(context_t* ctx) + + Construct and return a model interpolant. + + **Parameters** + + - *ctx* is a context + + + If *ctx* status is unsat and the context was configured with model-interpolation, + this function returns a model interpolant. + Otherwise, it sets an error code and return NULL_TERM. + + This is intended to be used after a call to + :c:func:`yices_check_context_with_model` that returned + :c:enum:`STATUS_UNSAT`. In this case, the function builds an model + interpolant. The model interpolant is a clause implied by the + current context that is false in the model provides to + :c:func:`yices_check_context_with_model`. + + **Error report** + + - If the context is not configured with model interpolation: + + -- error code: :c:enum:`CTX_OPERATION_NOT_SUPPORTED` + + - If the context's status is not :c:enum:`STATUS_UNSAT`: + + -- error code: :c:enum:`CTX_INVALID_OPERATION` + + +Check and Compute Interpolant +----------------------------- + +It is possible to check assertions and compute an interpolant if the +assertions are unsatisfiable. This functionality requires having two +contexts that are stored in a *interpolation_context*. The +*interpolation_context* is a struct with four components defined +as follows:: + + typedef struct interpolation_context_s { + context_t *ctx_A; + context_t *ctx_B; + term_t interpolant; + model_t *model; + } interpolation_context_t; + + +.. c:function:: smt_status_t yices_check_context_with_interpolation(interpolation_context_t *ctx, const param_t *params, int32_t build_model) + + Check satisfiability and compute interpolant. + + **Parameters** + + - *ctx* is a interpolation context + + - *params* is an optional structure to a search-parameter structure. + + - *build_model* is a Boolean flag + + The *params* structure controls search heuristics. If *params* is NULL, default + settings are used. See :ref:`params` and :c:func:`yices_check_context`. + + To call this function: + + - *ctx->ctx_A* must be a context initialized with support for MCSAT and interpolation. + + - *ctx->ctx_B* can be another context (not necessarily with MCSAT support). + + If this function returns :c:enum:`STATUS_UNSAT`, then an + interpolant is returned in *ctx->interpolant*. + + If this function returns :c:enum:`STATUS_SAT` and *build_model* is + true, then a model is returned in *ctx->model*. This model must be + freed when no-longer needed by calling :c:func:`yices_free_model`. + + **Error report** + + - If something is wrong: + + -- error code: :c:enum:`CTX_INVALID_OPERATION` + + .. _params: Search Parameters From 3608896a95864875983df28dc0aa561c6f90d93a Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Wed, 12 Jul 2023 18:04:21 -0700 Subject: [PATCH 123/182] rm push/pop comment about mcsat --- src/include/yices.h | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/include/yices.h b/src/include/yices.h index 8d42843b0..2ed8a1735 100644 --- a/src/include/yices.h +++ b/src/include/yices.h @@ -2654,8 +2654,7 @@ __YICES_DLLSPEC__ extern void yices_garbage_collect(const term_t t[], uint32_t n * - mcsat: solver based on the Model-Constructing Satisfiability Calculus * * The "mcsat" solver is required for formulas that use non-linear - * arithmetic. Currently the mcsat solver does not support push and - * pop. If you select "mcsat" as the solver type, no other + * arithmetic. If you select "mcsat" as the solver type, no other * configuration is necessary. * * If you select "dpllt" as the solver type, then you can define the From 5a3e3f0fabf7d588c5adf1f791b26a590eac547f Mon Sep 17 00:00:00 2001 From: Ahmed <43099566+ahmed-irfan@users.noreply.github.com> Date: Wed, 12 Jul 2023 18:06:48 -0700 Subject: [PATCH 124/182] Update NOTES -- fix typo --- doc/NOTES | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/NOTES b/doc/NOTES index 9935b46f2..d572d5647 100644 --- a/doc/NOTES +++ b/doc/NOTES @@ -34,7 +34,7 @@ The source code is organized as follows: src/solvers: CDCL-based SAT solvers + theory solvers - src/mcsat: MCSAT baded solvers and plugins + src/mcsat: MCSAT-based solvers and plugins src/context: Support for creating and manipulating contexts and for simplification and preprocessing of assertions. From cfcd69072d0796e3e535f33355b2cd561fcc3ff9 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Mon, 17 Jul 2023 04:38:30 -0700 Subject: [PATCH 125/182] add comment about mcsat unsat cores --- doc/sphinx/source/context-operations.rst | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/doc/sphinx/source/context-operations.rst b/doc/sphinx/source/context-operations.rst index 364e3b0fa..f1e2a6c02 100644 --- a/doc/sphinx/source/context-operations.rst +++ b/doc/sphinx/source/context-operations.rst @@ -112,7 +112,9 @@ then MCSat will be automatically selected. The MCSat solver does not currently support as many features as the DPLL(T) implementation. In particular, MCSat does not yet support -computing unsat cores. +computing unsat cores. However, unsat cores in MCSat can be computed +using :c:func:`yices_check_context_with_model` and +:c:func:`yices_get_model_interpolant`. **Theory Solvers** From 75bb08dc778bb4a024ed63ee57e8e506cae64758 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Mon, 17 Jul 2023 04:40:55 -0700 Subject: [PATCH 126/182] fix typo --- doc/sphinx/source/context-operations.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/sphinx/source/context-operations.rst b/doc/sphinx/source/context-operations.rst index f1e2a6c02..d64598a09 100644 --- a/doc/sphinx/source/context-operations.rst +++ b/doc/sphinx/source/context-operations.rst @@ -876,7 +876,7 @@ distribution. with the *n* assumptions is satisfiable. This is done even if *n* is zero. The function will then return a code as in :c:func:`yices_check_context`. - - If *ctx*'status is anything else, the function returns :c:enum:`STATUS_ERROR`. + - If *ctx*'s status is anything else, the function returns :c:enum:`STATUS_ERROR`. This operation fails and returns :c:enum:`STATUS_ERROR` if *ctx* is From 705f446b47888fab1199272dfd57ed5d8ffb2991 Mon Sep 17 00:00:00 2001 From: Ahmed <43099566+ahmed-irfan@users.noreply.github.com> Date: Mon, 17 Jul 2023 14:37:20 -0700 Subject: [PATCH 127/182] fix typo --- doc/sphinx/source/context-operations.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/sphinx/source/context-operations.rst b/doc/sphinx/source/context-operations.rst index d64598a09..c1eb7f583 100644 --- a/doc/sphinx/source/context-operations.rst +++ b/doc/sphinx/source/context-operations.rst @@ -1010,7 +1010,7 @@ yices_set_config). This model interpolant is constructed by calling satisfiable. This is done even if *n* is zero. The function will then return a code as in :c:func:`yices_check_context`. - - If *ctx*'status is anything else, the function returns :c:enum:`STATUS_ERROR`. + - If *ctx*'s status is anything else, the function returns :c:enum:`STATUS_ERROR`. This operation fails and returns :c:enum:`STATUS_ERROR` if *ctx* is From f2263adebdfa9e17c3363d960d074b888e55060b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?St=C3=A9phane=20Graham-Lengrand?= Date: Tue, 8 Aug 2023 11:43:12 -0700 Subject: [PATCH 128/182] Update yices.h Expanded the text about modes in MCSAT. --- src/include/yices.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/include/yices.h b/src/include/yices.h index 2ed8a1735..6ed2c2a4e 100644 --- a/src/include/yices.h +++ b/src/include/yices.h @@ -2655,7 +2655,7 @@ __YICES_DLLSPEC__ extern void yices_garbage_collect(const term_t t[], uint32_t n * * The "mcsat" solver is required for formulas that use non-linear * arithmetic. If you select "mcsat" as the solver type, no other - * configuration is necessary. + * configuration is necessary (incremental and push-pop usages are enabled). * * If you select "dpllt" as the solver type, then you can define the * combination of theory solvers you want to include. From 6903281942d9ea67f09a1dd493167ce2bc466b87 Mon Sep 17 00:00:00 2001 From: Ahmed <43099566+ahmed-irfan@users.noreply.github.com> Date: Tue, 5 Sep 2023 15:49:57 -0700 Subject: [PATCH 129/182] fix assertion violation in uf_plugin model (#446) --- src/mcsat/uf/uf_plugin.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index e781b8972..b489e743a 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -892,10 +892,10 @@ void uf_plugin_build_model(plugin_t* plugin, model_t* model) { // Since we make functions when we see a new one, we also construct the last function if (app_terms.size > 0 && mappings.size > 0 && app_construct) { - type_t tau = get_function_application_type(terms, app_kind, app_f); + type_t tau = get_function_application_type(terms, prev_app_kind, prev_app_f); type_t range_tau = function_type_range(terms->types, tau); value_t f_value = vtbl_mk_function(vtbl, tau, mappings.size, mappings.data, vtbl_mk_default(terms->types, vtbl, range_tau)); - switch (app_kind) { + switch (prev_app_kind) { case ARITH_RDIV: vtbl_set_zero_rdiv(vtbl, f_value); break; From d47605f99821a260edf248b94d2f76c4189d928d Mon Sep 17 00:00:00 2001 From: Mark Mitchell Date: Thu, 21 Sep 2023 12:54:47 -0700 Subject: [PATCH 130/182] Correct debug code. --- src/mt/yices_locks_posix.c | 46 ++++++++++++++++++++++---------------- 1 file changed, 27 insertions(+), 19 deletions(-) diff --git a/src/mt/yices_locks_posix.c b/src/mt/yices_locks_posix.c index cf63e99d4..827e7f584 100644 --- a/src/mt/yices_locks_posix.c +++ b/src/mt/yices_locks_posix.c @@ -20,30 +20,38 @@ #include #include #include +#include #include "yices_locks.h" -//I see NDEBUG and DEBUG in the code; which is it? -#ifdef DEBUG -static pthread_mutexattr_t mta; -static pthread_mutexattr_t* mattr = &mta; -#else -static pthread_mutexattr_t* mattr = NULL; -#endif +static void print_error(const char *caller, const char *syscall, int errnum) { + char buffer[64]; + strerror_r(errnum, buffer, sizeof(buffer)); + fprintf(stderr, "%s failed: %s returned %d: %s\n", caller, syscall, + errnum, buffer); +} int32_t create_yices_lock(yices_lock_t* lock){ int32_t retcode; -#ifdef DEBUG - retcode = pthread_mutexattr_settype(&mta, PTHREAD_MUTEX_ERRORCHECK); - if(retcode){ - fprintf(stderr, "create_yices_lock failed: pthread_mutexattr_settype returned %d\n", retcode); - } +#ifndef NDEBUG + pthread_mutexattr_t mta; + pthread_mutexattr_t *mattr = &mta; +#else + pthread_mutexattr_t *mattr = NULL; +#endif + +#ifndef NDEBUG + retcode = pthread_mutexattr_init(mattr); + if(retcode) + print_error("create_yices_lock", "pthread_mutexattr_init", retcode); + retcode = pthread_mutexattr_settype(mattr, PTHREAD_MUTEX_ERRORCHECK); + if(retcode) + print_error("create_yices_lock", "pthread_mutextattr_settype", retcode); #endif retcode = pthread_mutex_init(lock, mattr); - if(retcode){ - fprintf(stderr, "create_yices_lock failed: pthread_mutex_init returned %d\n", retcode); - } + if(retcode) + print_error("create_yices_lock", "pthread_mutex_init", retcode); assert(retcode == 0); return retcode; } @@ -54,7 +62,7 @@ int32_t try_yices_lock(yices_lock_t* lock){ if(retcode == EBUSY){ return 1; } else { - fprintf(stderr, "try_yices_lock failed: pthread_mutex_trylock returned %d\n", retcode); + print_error("try_yices_lock", "pthread_mutex_trylock", retcode); } return -1; } @@ -65,7 +73,7 @@ int32_t try_yices_lock(yices_lock_t* lock){ int32_t get_yices_lock(yices_lock_t* lock){ int32_t retcode = pthread_mutex_lock(lock); if(retcode){ - fprintf(stderr, "get_yices_lock failed: pthread_mutex_lock returned %d\n", retcode); + print_error("get_yices_lock", "pthread_mutex_lock", retcode); } assert(retcode == 0); return retcode; @@ -74,7 +82,7 @@ int32_t get_yices_lock(yices_lock_t* lock){ int32_t release_yices_lock(yices_lock_t* lock){ int32_t retcode = pthread_mutex_unlock(lock); if(retcode){ - fprintf(stderr, "release_yices_lock failed: pthread_mutex_unlock returned %d\n", retcode); + print_error("release_yices_lock", "pthread_mutex_unlock", retcode); } assert(retcode == 0); return retcode; @@ -83,7 +91,7 @@ int32_t release_yices_lock(yices_lock_t* lock){ void destroy_yices_lock(yices_lock_t* lock){ int32_t retcode = pthread_mutex_destroy(lock); if(retcode){ - fprintf(stderr, "destroy_yices_lock failed: pthread_mutex_destroy returned %d\n", retcode); + print_error("destroy_yices_lock", "pthread_mutex_destroy", retcode); } assert(retcode == 0); } From 74f5f3b0689976535883061e9ab3ea9dca28844d Mon Sep 17 00:00:00 2001 From: Mark Mitchell Date: Thu, 21 Sep 2023 18:03:30 -0700 Subject: [PATCH 131/182] Avoid deadlocks in MC-SAT. --- configure.ac | 4 ---- src/api/yices_api.c | 25 ++++++++++++------------- src/api/yices_api_lock_free.h | 9 ++++++++- src/context/context.c | 6 +++++- src/mcsat/bv/bv_explainer.c | 5 +++-- src/mcsat/bv/bv_utils.h | 7 ++++--- src/mcsat/bv/explain/eq_ext_con.c | 3 ++- src/mcsat/bv/explain/full_bv_sat.c | 8 ++++---- src/mcsat/conflict.c | 7 ++++--- src/mcsat/preprocessor.c | 9 +++++---- 10 files changed, 47 insertions(+), 36 deletions(-) diff --git a/configure.ac b/configure.ac index b66ebacd7..15b4a97b6 100644 --- a/configure.ac +++ b/configure.ac @@ -870,10 +870,6 @@ fi AC_SUBST(THREAD_SAFE) if test "x$thread_safe" = xyes ; then THREAD_SAFE=1 - # iam: the aim is to eventually eliminate this restriction, but not before the 2.6.2 release. - if test $use_mcsat = yes ; then - AC_MSG_ERROR([Building with both --enable-mcsat and --enable-thread-safety is currently not supported.]) - fi fi dnl diff --git a/src/api/yices_api.c b/src/api/yices_api.c index 6442da188..47f1dd452 100644 --- a/src/api/yices_api.c +++ b/src/api/yices_api.c @@ -8669,10 +8669,10 @@ static inline bool yices_assert_formula_checks(term_t t) { MT_PROTECT(bool, __yices_globals.lock, _o_yices_assert_formula_checks(t)); } -EXPORTED int32_t yices_assert_formula(context_t *ctx, term_t t) { +int32_t _o_yices_assert_formula(context_t *ctx, term_t t) { int32_t code; - if (! yices_assert_formula_checks(t)) { + if (! _o_yices_assert_formula_checks(t)) { return -1; } @@ -8711,7 +8711,7 @@ EXPORTED int32_t yices_assert_formula(context_t *ctx, term_t t) { assert(context_status(ctx) == STATUS_IDLE); - code = assert_formula(ctx, t); + code = _o_assert_formula(ctx, t); if (code < 0) { // error during internalization convert_internalization_error(code); @@ -8722,6 +8722,10 @@ EXPORTED int32_t yices_assert_formula(context_t *ctx, term_t t) { return 0; } +EXPORTED int32_t yices_assert_formula(context_t *ctx, term_t t) { + MT_PROTECT(int32_t, __yices_globals.lock, + _o_yices_assert_formula(ctx, t)); +} @@ -9054,23 +9058,19 @@ static bool _o_unsat_core_check_assumptions(uint32_t n, const term_t a[]) { return check_good_terms(__yices_globals.manager, n, a) && check_boolean_args(__yices_globals.manager, n, a); } -static bool unsat_core_check_assumptions(uint32_t n, const term_t a[]) { - MT_PROTECT(bool, __yices_globals.lock, _o_unsat_core_check_assumptions(n, a)); -} - /* * Check context with assumptions * - n = number of assumptions * - a[0] ... a[n-1] = n assumptions. All of them must be Boolean terms. */ -EXPORTED smt_status_t yices_check_context_with_assumptions(context_t *ctx, const param_t *params, uint32_t n, const term_t a[]) { +smt_status_t _o_yices_check_context_with_assumptions(context_t *ctx, const param_t *params, uint32_t n, const term_t a[]) { param_t default_params; ivector_t assumptions; smt_status_t stat; uint32_t i; literal_t l; - if (!unsat_core_check_assumptions(n, a)) { + if (!_o_unsat_core_check_assumptions(n, a)) { return STATUS_ERROR; // Bad assumptions } @@ -9113,8 +9113,6 @@ EXPORTED smt_status_t yices_check_context_with_assumptions(context_t *ctx, const assert(context_status(ctx) == STATUS_IDLE); - yices_obtain_mutex(); - // convert the assumptions to n literals init_ivector(&assumptions, n); for (i=0; i void bv_subexplainer_construct(bv_subexplainer_t* exp, const char* name, plugin_context_t* ctx, watch_list_manager_t* wlm, bv_evaluator_t* eval) { @@ -169,10 +170,10 @@ void bv_explainer_normalize_conflict(bv_explainer_t* exp, ivector_t* conflict_ou } void bv_explainer_check_conflict(bv_explainer_t* exp, const ivector_t* conflict) { - context_t* ctx = yices_new_context(NULL); + context_t* ctx = _o_yices_new_context(NULL); uint32_t i; for (i = 0; i < conflict->size; ++ i) { - yices_assert_formula(ctx, conflict->data[i]); + _o_yices_assert_formula(ctx, conflict->data[i]); } smt_status_t result = yices_check_context(ctx, NULL); (void) result; diff --git a/src/mcsat/bv/bv_utils.h b/src/mcsat/bv/bv_utils.h index 121fb4912..39aae56e2 100644 --- a/src/mcsat/bv/bv_utils.h +++ b/src/mcsat/bv/bv_utils.h @@ -35,6 +35,7 @@ #include "mcsat/tracing.h" #include "mcsat/value.h" #include "yices.h" +#include "api/yices_api_lock_free.h" /** Types of bitvector terms */ typedef enum { @@ -467,8 +468,8 @@ static inline bool check_rewrite(plugin_context_t* ctx, term_t old, term_t t){ if (t == old) return true; term_manager_t* tm = ctx->tm; - context_t* yctx = yices_new_context(NULL); - yices_assert_formula(yctx, mk_neq(tm, old, t)); + context_t* yctx = _o_yices_new_context(NULL); + _o_yices_assert_formula(yctx, mk_neq(tm, old, t)); smt_status_t output = yices_check_context(yctx, NULL); bool result = (output == STATUS_UNSAT); if (!result && ctx_trace_enabled(ctx, "mcsat::bv::arith::ctz")) { @@ -479,7 +480,7 @@ bool check_rewrite(plugin_context_t* ctx, term_t old, term_t t){ ctx_trace_term(ctx, t); assert(false); } - yices_free_context(yctx); + _o_yices_free_context(yctx); return result; } diff --git a/src/mcsat/bv/explain/eq_ext_con.c b/src/mcsat/bv/explain/eq_ext_con.c index f61b1a486..d49821673 100644 --- a/src/mcsat/bv/explain/eq_ext_con.c +++ b/src/mcsat/bv/explain/eq_ext_con.c @@ -33,6 +33,7 @@ #include "mcsat/eq/equality_graph.h" #include "yices.h" +#include "api/yices_api_lock_free.h" #include "eq_ext_con.h" @@ -1543,7 +1544,7 @@ term_t explain_propagation(bv_subexplainer_t* this, const ivector_t* reasons_in, if (ok) { // Concat the terms if (to_concat.size > 1) { - result_subst = yices_bvconcat(to_concat.size, to_concat.data); + result_subst = _o_yices_bvconcat(to_concat.size, to_concat.data); } else { result_subst = to_concat.data[0]; } diff --git a/src/mcsat/bv/explain/full_bv_sat.c b/src/mcsat/bv/explain/full_bv_sat.c index 3dccadfee..7d255fb29 100644 --- a/src/mcsat/bv/explain/full_bv_sat.c +++ b/src/mcsat/bv/explain/full_bv_sat.c @@ -142,8 +142,8 @@ void bb_sat_solver_add_variable(bb_sat_solver_t* solver, variable_t var, bool wi term_t var_fresh; term_kind_t kind = term_kind(solver->yices_ctx->terms, var_term); if (kind != UNINTERPRETED_TERM) { - type_t var_type = yices_type_of_term(var_term); - var_fresh = yices_new_uninterpreted_term(var_type); + type_t var_type = _o_yices_type_of_term(var_term); + var_fresh = _o_yices_new_uninterpreted_term(var_type); } else { var_fresh = var_term; } @@ -163,7 +163,7 @@ void bb_sat_solver_assert_term(bb_sat_solver_t* solver, variable_t assertion_ter fprintf(out, " previously \n"); ctx_trace_term(solver->ctx, assertion_term); } - yices_assert_formula(solver->yices_ctx, assertion_term); + _o_yices_assert_formula(solver->yices_ctx, assertion_term); } /** @@ -276,7 +276,7 @@ void bb_sat_solver_solve_and_get_core(bb_sat_solver_t* solver, term_vector_t* co } // Check the assumptions (should be unsat) - smt_status_t status = yices_check_context_with_assumptions(solver->yices_ctx, NULL, assumptions.size, assumptions.data); + smt_status_t status = _o_yices_check_context_with_assumptions(solver->yices_ctx, NULL, assumptions.size, assumptions.data); (void) status; assert(status == STATUS_UNSAT); diff --git a/src/mcsat/conflict.c b/src/mcsat/conflict.c index 648f169a6..d097a97d4 100644 --- a/src/mcsat/conflict.c +++ b/src/mcsat/conflict.c @@ -29,19 +29,20 @@ #include "mcsat/tracing.h" #include "yices.h" +#include "api/yices_api_lock_free.h" #include #define CONFLICT_DEFAULT_ELEMENT_SIZE 100 void conflict_check(conflict_t* conflict) { ctx_config_t* config = yices_new_config(); - context_t* ctx = yices_new_context(config); + context_t* ctx = _o_yices_new_context(config); uint32_t i; const ivector_t* literals = &conflict->disjuncts.element_list; for (i = 0; i < literals->size; ++i) { term_t literal = literals->data[i]; literal = opposite_term(literal); - int32_t ret = yices_assert_formula(ctx, literal); + int32_t ret = _o_yices_assert_formula(ctx, literal); if (ret != 0) { // unsupported by regular yices fprintf(stderr, "skipping conflict (ret)\n"); @@ -52,7 +53,7 @@ void conflict_check(conflict_t* conflict) { smt_status_t result = yices_check_context(ctx, NULL); (void) result; assert(result == STATUS_UNSAT); - yices_free_context(ctx); + _o_yices_free_context(ctx); yices_free_config(config); } diff --git a/src/mcsat/preprocessor.c b/src/mcsat/preprocessor.c index 3ccebcc4a..07171b1fe 100644 --- a/src/mcsat/preprocessor.c +++ b/src/mcsat/preprocessor.c @@ -34,6 +34,7 @@ #include "context/context_types.h" #include "yices.h" +#include "api/yices_api_lock_free.h" void preprocessor_construct(preprocessor_t* pre, term_table_t* terms, jmp_buf* handler, const mcsat_options_t* options) { pre->terms = terms; @@ -459,8 +460,8 @@ term_t preprocessor_apply(preprocessor_t* pre, term_t t, ivector_t* out, bool is size = 0; } } - current_pre = yices_bvconcat(n_vars, vars); - term_t eq = yices_eq(current, current_pre); + current_pre = _o_yices_bvconcat(n_vars, vars); + term_t eq = _o_yices_eq(current, current_pre); preprocessor_mark_eq(pre, eq, current); } } @@ -598,7 +599,7 @@ term_t preprocessor_apply(preprocessor_t* pre, term_t t, ivector_t* out, bool is } else { type_t arg_pre_type = term_type(pre->terms, arg_pre); term_t arg_pre_is_positive = mk_arith_term_geq0(&pre->tm, arg_pre); - term_t arg_negative = yices_neg(arg_pre); + term_t arg_negative = _o_yices_neg(arg_pre); current_pre = mk_ite(&pre->tm, arg_pre_is_positive, arg_pre, arg_negative, arg_pre_type); } break; @@ -718,7 +719,7 @@ term_t preprocessor_apply(preprocessor_t* pre, term_t t, ivector_t* out, bool is trace_term_ln(pre->tracer, terms, arg_pre); } // For simplification purposes use API - current_pre = yices_bitextract(arg_pre, index); + current_pre = _o_yices_bitextract(arg_pre, index); assert(current_pre != NULL_TERM); } } From 3f1aef403b510a8c7920e6e5aa636b7f4efe88a0 Mon Sep 17 00:00:00 2001 From: Mark Mitchell Date: Fri, 22 Sep 2023 07:50:01 -0700 Subject: [PATCH 132/182] Destroy in reverse order of creation. --- src/api/yices_api.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/api/yices_api.c b/src/api/yices_api.c index 47f1dd452..faed13510 100644 --- a/src/api/yices_api.c +++ b/src/api/yices_api.c @@ -1108,6 +1108,11 @@ EXPORTED void yices_exit(void) { delete_sparse_array(&the_root_types); } + free_parameter_list(); + free_config_list(); + free_model_list(); + free_context_list(); + delete_parsing_objects(); delete_fvars(); @@ -1123,11 +1128,6 @@ EXPORTED void yices_exit(void) { free_bvarith64_buffer_list(); free_arith_buffer_list(); - free_context_list(); - free_model_list(); - free_config_list(); - free_parameter_list(); - delete_list_locks(); q_clear(&r0); From 1bd4ca851f9bea7c7295913fb390cd63c3754151 Mon Sep 17 00:00:00 2001 From: Mark Mitchell Date: Fri, 22 Sep 2023 07:52:03 -0700 Subject: [PATCH 133/182] Allocate large arrays on the heap. --- src/mcsat/bv/explain/arith_norm.c | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/src/mcsat/bv/explain/arith_norm.c b/src/mcsat/bv/explain/arith_norm.c index 65b8a4a0e..d78d31f10 100644 --- a/src/mcsat/bv/explain/arith_norm.c +++ b/src/mcsat/bv/explain/arith_norm.c @@ -777,7 +777,9 @@ term_t arith_normalise_upto(arith_norm_t* norm, term_t u, uint32_t w){ case BV_ARRAY: { // Concatenated boolean terms composite_term_t* concat_desc = bvarray_term_desc(terms, t); - term_t ebits[w]; // Where we build the result + term_t *ebits; // Where we build the result + + ebits = (term_t *) safe_malloc(w * sizeof(term_t)); // First, we eliminate BIT_TERM-over-BV_ARRAYs: for (uint32_t i = 0; i < w; i++) @@ -791,7 +793,11 @@ term_t arith_normalise_upto(arith_norm_t* norm, term_t u, uint32_t w){ // preproc[1][i] is the term_t arith_normalise_upto(k,top+1) (normalised version of k over the lowest top+1 bits), let's call it norm // preproc[2][i] is the value returned by bv_evaluator_not_free_up_to(norm), let's call it maxeval // preproc[3][i] is the term_t arith_normalise_upto(norm,maxeval), if maxeval is not 0 - term_t preproc[4][w]; + + term_t *preproc[4]; + for (int i = 0; i < 4; i ++) + preproc[i] = (term_t *) safe_malloc(4 * w * sizeof(term_t)); + // We initialise the hashmap fix_htbl_init(preproc[0], w); @@ -865,6 +871,11 @@ term_t arith_normalise_upto(arith_norm_t* norm, term_t u, uint32_t w){ arith_analyse_t analysis; init_analysis(&analysis); analyse_bvarray(norm, w, ebits, &analysis); + + for (int i = 0; i < 4; i ++) + safe_free(preproc[i]); + safe_free(ebits); + return finalise(norm, t, &analysis); } From 43f1ec065df95f566e6b8a15cd8fd1c35a94db30 Mon Sep 17 00:00:00 2001 From: Mark Mitchell Date: Fri, 22 Sep 2023 07:53:26 -0700 Subject: [PATCH 134/182] Use lock-free API. --- src/mcsat/bv/bv_explainer.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mcsat/bv/bv_explainer.c b/src/mcsat/bv/bv_explainer.c index 6de49c802..9521bb600 100644 --- a/src/mcsat/bv/bv_explainer.c +++ b/src/mcsat/bv/bv_explainer.c @@ -178,7 +178,7 @@ void bv_explainer_check_conflict(bv_explainer_t* exp, const ivector_t* conflict) smt_status_t result = yices_check_context(ctx, NULL); (void) result; assert(result == STATUS_UNSAT); - yices_free_context(ctx); + _o_yices_free_context(ctx); } void print_counters(bv_explainer_t* exp){ From 5d2aafec1ebc5b9c1397925acac8f7f416d8a0d6 Mon Sep 17 00:00:00 2001 From: Mark Mitchell Date: Fri, 22 Sep 2023 10:41:22 -0700 Subject: [PATCH 135/182] MC-SAT Thread Safety (#456) * Correct debug code. * Avoid deadlocks in MC-SAT. --------- Co-authored-by: Mark Mitchell --- configure.ac | 4 --- src/api/yices_api.c | 25 ++++++++-------- src/api/yices_api_lock_free.h | 9 +++++- src/context/context.c | 6 +++- src/mcsat/bv/bv_explainer.c | 5 ++-- src/mcsat/bv/bv_utils.h | 7 +++-- src/mcsat/bv/explain/eq_ext_con.c | 3 +- src/mcsat/bv/explain/full_bv_sat.c | 8 +++--- src/mcsat/conflict.c | 7 +++-- src/mcsat/preprocessor.c | 9 +++--- src/mt/yices_locks_posix.c | 46 ++++++++++++++++++------------ 11 files changed, 74 insertions(+), 55 deletions(-) diff --git a/configure.ac b/configure.ac index b66ebacd7..15b4a97b6 100644 --- a/configure.ac +++ b/configure.ac @@ -870,10 +870,6 @@ fi AC_SUBST(THREAD_SAFE) if test "x$thread_safe" = xyes ; then THREAD_SAFE=1 - # iam: the aim is to eventually eliminate this restriction, but not before the 2.6.2 release. - if test $use_mcsat = yes ; then - AC_MSG_ERROR([Building with both --enable-mcsat and --enable-thread-safety is currently not supported.]) - fi fi dnl diff --git a/src/api/yices_api.c b/src/api/yices_api.c index 6442da188..47f1dd452 100644 --- a/src/api/yices_api.c +++ b/src/api/yices_api.c @@ -8669,10 +8669,10 @@ static inline bool yices_assert_formula_checks(term_t t) { MT_PROTECT(bool, __yices_globals.lock, _o_yices_assert_formula_checks(t)); } -EXPORTED int32_t yices_assert_formula(context_t *ctx, term_t t) { +int32_t _o_yices_assert_formula(context_t *ctx, term_t t) { int32_t code; - if (! yices_assert_formula_checks(t)) { + if (! _o_yices_assert_formula_checks(t)) { return -1; } @@ -8711,7 +8711,7 @@ EXPORTED int32_t yices_assert_formula(context_t *ctx, term_t t) { assert(context_status(ctx) == STATUS_IDLE); - code = assert_formula(ctx, t); + code = _o_assert_formula(ctx, t); if (code < 0) { // error during internalization convert_internalization_error(code); @@ -8722,6 +8722,10 @@ EXPORTED int32_t yices_assert_formula(context_t *ctx, term_t t) { return 0; } +EXPORTED int32_t yices_assert_formula(context_t *ctx, term_t t) { + MT_PROTECT(int32_t, __yices_globals.lock, + _o_yices_assert_formula(ctx, t)); +} @@ -9054,23 +9058,19 @@ static bool _o_unsat_core_check_assumptions(uint32_t n, const term_t a[]) { return check_good_terms(__yices_globals.manager, n, a) && check_boolean_args(__yices_globals.manager, n, a); } -static bool unsat_core_check_assumptions(uint32_t n, const term_t a[]) { - MT_PROTECT(bool, __yices_globals.lock, _o_unsat_core_check_assumptions(n, a)); -} - /* * Check context with assumptions * - n = number of assumptions * - a[0] ... a[n-1] = n assumptions. All of them must be Boolean terms. */ -EXPORTED smt_status_t yices_check_context_with_assumptions(context_t *ctx, const param_t *params, uint32_t n, const term_t a[]) { +smt_status_t _o_yices_check_context_with_assumptions(context_t *ctx, const param_t *params, uint32_t n, const term_t a[]) { param_t default_params; ivector_t assumptions; smt_status_t stat; uint32_t i; literal_t l; - if (!unsat_core_check_assumptions(n, a)) { + if (!_o_unsat_core_check_assumptions(n, a)) { return STATUS_ERROR; // Bad assumptions } @@ -9113,8 +9113,6 @@ EXPORTED smt_status_t yices_check_context_with_assumptions(context_t *ctx, const assert(context_status(ctx) == STATUS_IDLE); - yices_obtain_mutex(); - // convert the assumptions to n literals init_ivector(&assumptions, n); for (i=0; i void bv_subexplainer_construct(bv_subexplainer_t* exp, const char* name, plugin_context_t* ctx, watch_list_manager_t* wlm, bv_evaluator_t* eval) { @@ -169,10 +170,10 @@ void bv_explainer_normalize_conflict(bv_explainer_t* exp, ivector_t* conflict_ou } void bv_explainer_check_conflict(bv_explainer_t* exp, const ivector_t* conflict) { - context_t* ctx = yices_new_context(NULL); + context_t* ctx = _o_yices_new_context(NULL); uint32_t i; for (i = 0; i < conflict->size; ++ i) { - yices_assert_formula(ctx, conflict->data[i]); + _o_yices_assert_formula(ctx, conflict->data[i]); } smt_status_t result = yices_check_context(ctx, NULL); (void) result; diff --git a/src/mcsat/bv/bv_utils.h b/src/mcsat/bv/bv_utils.h index 121fb4912..39aae56e2 100644 --- a/src/mcsat/bv/bv_utils.h +++ b/src/mcsat/bv/bv_utils.h @@ -35,6 +35,7 @@ #include "mcsat/tracing.h" #include "mcsat/value.h" #include "yices.h" +#include "api/yices_api_lock_free.h" /** Types of bitvector terms */ typedef enum { @@ -467,8 +468,8 @@ static inline bool check_rewrite(plugin_context_t* ctx, term_t old, term_t t){ if (t == old) return true; term_manager_t* tm = ctx->tm; - context_t* yctx = yices_new_context(NULL); - yices_assert_formula(yctx, mk_neq(tm, old, t)); + context_t* yctx = _o_yices_new_context(NULL); + _o_yices_assert_formula(yctx, mk_neq(tm, old, t)); smt_status_t output = yices_check_context(yctx, NULL); bool result = (output == STATUS_UNSAT); if (!result && ctx_trace_enabled(ctx, "mcsat::bv::arith::ctz")) { @@ -479,7 +480,7 @@ bool check_rewrite(plugin_context_t* ctx, term_t old, term_t t){ ctx_trace_term(ctx, t); assert(false); } - yices_free_context(yctx); + _o_yices_free_context(yctx); return result; } diff --git a/src/mcsat/bv/explain/eq_ext_con.c b/src/mcsat/bv/explain/eq_ext_con.c index f61b1a486..d49821673 100644 --- a/src/mcsat/bv/explain/eq_ext_con.c +++ b/src/mcsat/bv/explain/eq_ext_con.c @@ -33,6 +33,7 @@ #include "mcsat/eq/equality_graph.h" #include "yices.h" +#include "api/yices_api_lock_free.h" #include "eq_ext_con.h" @@ -1543,7 +1544,7 @@ term_t explain_propagation(bv_subexplainer_t* this, const ivector_t* reasons_in, if (ok) { // Concat the terms if (to_concat.size > 1) { - result_subst = yices_bvconcat(to_concat.size, to_concat.data); + result_subst = _o_yices_bvconcat(to_concat.size, to_concat.data); } else { result_subst = to_concat.data[0]; } diff --git a/src/mcsat/bv/explain/full_bv_sat.c b/src/mcsat/bv/explain/full_bv_sat.c index 3dccadfee..7d255fb29 100644 --- a/src/mcsat/bv/explain/full_bv_sat.c +++ b/src/mcsat/bv/explain/full_bv_sat.c @@ -142,8 +142,8 @@ void bb_sat_solver_add_variable(bb_sat_solver_t* solver, variable_t var, bool wi term_t var_fresh; term_kind_t kind = term_kind(solver->yices_ctx->terms, var_term); if (kind != UNINTERPRETED_TERM) { - type_t var_type = yices_type_of_term(var_term); - var_fresh = yices_new_uninterpreted_term(var_type); + type_t var_type = _o_yices_type_of_term(var_term); + var_fresh = _o_yices_new_uninterpreted_term(var_type); } else { var_fresh = var_term; } @@ -163,7 +163,7 @@ void bb_sat_solver_assert_term(bb_sat_solver_t* solver, variable_t assertion_ter fprintf(out, " previously \n"); ctx_trace_term(solver->ctx, assertion_term); } - yices_assert_formula(solver->yices_ctx, assertion_term); + _o_yices_assert_formula(solver->yices_ctx, assertion_term); } /** @@ -276,7 +276,7 @@ void bb_sat_solver_solve_and_get_core(bb_sat_solver_t* solver, term_vector_t* co } // Check the assumptions (should be unsat) - smt_status_t status = yices_check_context_with_assumptions(solver->yices_ctx, NULL, assumptions.size, assumptions.data); + smt_status_t status = _o_yices_check_context_with_assumptions(solver->yices_ctx, NULL, assumptions.size, assumptions.data); (void) status; assert(status == STATUS_UNSAT); diff --git a/src/mcsat/conflict.c b/src/mcsat/conflict.c index 648f169a6..d097a97d4 100644 --- a/src/mcsat/conflict.c +++ b/src/mcsat/conflict.c @@ -29,19 +29,20 @@ #include "mcsat/tracing.h" #include "yices.h" +#include "api/yices_api_lock_free.h" #include #define CONFLICT_DEFAULT_ELEMENT_SIZE 100 void conflict_check(conflict_t* conflict) { ctx_config_t* config = yices_new_config(); - context_t* ctx = yices_new_context(config); + context_t* ctx = _o_yices_new_context(config); uint32_t i; const ivector_t* literals = &conflict->disjuncts.element_list; for (i = 0; i < literals->size; ++i) { term_t literal = literals->data[i]; literal = opposite_term(literal); - int32_t ret = yices_assert_formula(ctx, literal); + int32_t ret = _o_yices_assert_formula(ctx, literal); if (ret != 0) { // unsupported by regular yices fprintf(stderr, "skipping conflict (ret)\n"); @@ -52,7 +53,7 @@ void conflict_check(conflict_t* conflict) { smt_status_t result = yices_check_context(ctx, NULL); (void) result; assert(result == STATUS_UNSAT); - yices_free_context(ctx); + _o_yices_free_context(ctx); yices_free_config(config); } diff --git a/src/mcsat/preprocessor.c b/src/mcsat/preprocessor.c index 3ccebcc4a..07171b1fe 100644 --- a/src/mcsat/preprocessor.c +++ b/src/mcsat/preprocessor.c @@ -34,6 +34,7 @@ #include "context/context_types.h" #include "yices.h" +#include "api/yices_api_lock_free.h" void preprocessor_construct(preprocessor_t* pre, term_table_t* terms, jmp_buf* handler, const mcsat_options_t* options) { pre->terms = terms; @@ -459,8 +460,8 @@ term_t preprocessor_apply(preprocessor_t* pre, term_t t, ivector_t* out, bool is size = 0; } } - current_pre = yices_bvconcat(n_vars, vars); - term_t eq = yices_eq(current, current_pre); + current_pre = _o_yices_bvconcat(n_vars, vars); + term_t eq = _o_yices_eq(current, current_pre); preprocessor_mark_eq(pre, eq, current); } } @@ -598,7 +599,7 @@ term_t preprocessor_apply(preprocessor_t* pre, term_t t, ivector_t* out, bool is } else { type_t arg_pre_type = term_type(pre->terms, arg_pre); term_t arg_pre_is_positive = mk_arith_term_geq0(&pre->tm, arg_pre); - term_t arg_negative = yices_neg(arg_pre); + term_t arg_negative = _o_yices_neg(arg_pre); current_pre = mk_ite(&pre->tm, arg_pre_is_positive, arg_pre, arg_negative, arg_pre_type); } break; @@ -718,7 +719,7 @@ term_t preprocessor_apply(preprocessor_t* pre, term_t t, ivector_t* out, bool is trace_term_ln(pre->tracer, terms, arg_pre); } // For simplification purposes use API - current_pre = yices_bitextract(arg_pre, index); + current_pre = _o_yices_bitextract(arg_pre, index); assert(current_pre != NULL_TERM); } } diff --git a/src/mt/yices_locks_posix.c b/src/mt/yices_locks_posix.c index cf63e99d4..827e7f584 100644 --- a/src/mt/yices_locks_posix.c +++ b/src/mt/yices_locks_posix.c @@ -20,30 +20,38 @@ #include #include #include +#include #include "yices_locks.h" -//I see NDEBUG and DEBUG in the code; which is it? -#ifdef DEBUG -static pthread_mutexattr_t mta; -static pthread_mutexattr_t* mattr = &mta; -#else -static pthread_mutexattr_t* mattr = NULL; -#endif +static void print_error(const char *caller, const char *syscall, int errnum) { + char buffer[64]; + strerror_r(errnum, buffer, sizeof(buffer)); + fprintf(stderr, "%s failed: %s returned %d: %s\n", caller, syscall, + errnum, buffer); +} int32_t create_yices_lock(yices_lock_t* lock){ int32_t retcode; -#ifdef DEBUG - retcode = pthread_mutexattr_settype(&mta, PTHREAD_MUTEX_ERRORCHECK); - if(retcode){ - fprintf(stderr, "create_yices_lock failed: pthread_mutexattr_settype returned %d\n", retcode); - } +#ifndef NDEBUG + pthread_mutexattr_t mta; + pthread_mutexattr_t *mattr = &mta; +#else + pthread_mutexattr_t *mattr = NULL; +#endif + +#ifndef NDEBUG + retcode = pthread_mutexattr_init(mattr); + if(retcode) + print_error("create_yices_lock", "pthread_mutexattr_init", retcode); + retcode = pthread_mutexattr_settype(mattr, PTHREAD_MUTEX_ERRORCHECK); + if(retcode) + print_error("create_yices_lock", "pthread_mutextattr_settype", retcode); #endif retcode = pthread_mutex_init(lock, mattr); - if(retcode){ - fprintf(stderr, "create_yices_lock failed: pthread_mutex_init returned %d\n", retcode); - } + if(retcode) + print_error("create_yices_lock", "pthread_mutex_init", retcode); assert(retcode == 0); return retcode; } @@ -54,7 +62,7 @@ int32_t try_yices_lock(yices_lock_t* lock){ if(retcode == EBUSY){ return 1; } else { - fprintf(stderr, "try_yices_lock failed: pthread_mutex_trylock returned %d\n", retcode); + print_error("try_yices_lock", "pthread_mutex_trylock", retcode); } return -1; } @@ -65,7 +73,7 @@ int32_t try_yices_lock(yices_lock_t* lock){ int32_t get_yices_lock(yices_lock_t* lock){ int32_t retcode = pthread_mutex_lock(lock); if(retcode){ - fprintf(stderr, "get_yices_lock failed: pthread_mutex_lock returned %d\n", retcode); + print_error("get_yices_lock", "pthread_mutex_lock", retcode); } assert(retcode == 0); return retcode; @@ -74,7 +82,7 @@ int32_t get_yices_lock(yices_lock_t* lock){ int32_t release_yices_lock(yices_lock_t* lock){ int32_t retcode = pthread_mutex_unlock(lock); if(retcode){ - fprintf(stderr, "release_yices_lock failed: pthread_mutex_unlock returned %d\n", retcode); + print_error("release_yices_lock", "pthread_mutex_unlock", retcode); } assert(retcode == 0); return retcode; @@ -83,7 +91,7 @@ int32_t release_yices_lock(yices_lock_t* lock){ void destroy_yices_lock(yices_lock_t* lock){ int32_t retcode = pthread_mutex_destroy(lock); if(retcode){ - fprintf(stderr, "destroy_yices_lock failed: pthread_mutex_destroy returned %d\n", retcode); + print_error("destroy_yices_lock", "pthread_mutex_destroy", retcode); } assert(retcode == 0); } From 385d61f7f736f7c854a47adddbe6c032a162d652 Mon Sep 17 00:00:00 2001 From: Mark Mitchell Date: Fri, 22 Sep 2023 13:23:04 -0700 Subject: [PATCH 136/182] Add option to run individual tests. Add option to pass options to SMT2 solver. Detect bad exit codes. --- tests/regress/check.sh | 45 ++++++++++++++++++++++++++++++++---------- 1 file changed, 35 insertions(+), 10 deletions(-) diff --git a/tests/regress/check.sh b/tests/regress/check.sh index 9cdc5013c..e2870e180 100755 --- a/tests/regress/check.sh +++ b/tests/regress/check.sh @@ -34,13 +34,33 @@ # what's expected. # -if test $# != 2 ; then - echo "Usage: $0 " +usage() { + echo "Usage: $0 [test1] [test2] ..." exit +} + +smt2_options= + +while getopts "s:" o; do + case "$o" in + s) + smt2_options=${OPTARG} + ;; + *) + usage + ;; + esac +done +shift $((OPTIND-1)) + +if test $# "<" 2 ; then + usage fi regress_dir=$1 bin_dir=$2 +shift 2 +all_tests="$@" # Make sure fatal errors go to stderr export LIBC_FATAL_STDERR_=1 @@ -112,11 +132,13 @@ else MCSAT_FILTER="." fi -all_tests=$( - find "$regress_dir" -name '*.smt' -or -name '*.smt2' -or -name '*.ys' | - grep $REGRESS_FILTER | grep $MCSAT_FILTER | - sort -) +if test -z "$all_tests"; then + all_tests=$( + find "$regress_dir" -name '*.smt' -or -name '*.smt2' -or -name '*.ys' | + grep $REGRESS_FILTER | grep $MCSAT_FILTER | + sort + ) +fi for file in $all_tests; do @@ -125,9 +147,12 @@ for file in $all_tests; do # Get the binary based on the filename filename=`basename "$file"` + options= + case $filename in *.smt2) binary=yices_smt2 + options=$smt2_options ;; *.smt) binary=yices_smtcomp @@ -144,11 +169,10 @@ for file in $all_tests; do # Get the options if [ -e "$file.options" ] then - options=`cat $file.options` + options="$options `cat $file.options`" echo " [ $options ]" test_string="$file [ $options ]" else - options= test_string="$file" echo fi @@ -172,12 +196,13 @@ for file in $all_tests; do ulimit -H -t $((1+$TIME_LIMIT)) &> /dev/null (time ./$bin_dir/$binary $options ./$file >& $outfile ) >& $timefile ) + status=$? thetime=`cat $timefile` # Do the diff DIFF=`diff -w $outfile $gold` - if [ $? -eq 0 ] + if [ $? -eq 0 ] && [ $status -eq 0 ] then echo -n $green echo PASS [${thetime} s] From c1cd4d37db3023ee146b61aeb500ef4aa0647593 Mon Sep 17 00:00:00 2001 From: Mark Mitchell Date: Fri, 22 Sep 2023 13:26:50 -0700 Subject: [PATCH 137/182] Add fatal error utilities. Remove yices_smt2_mt frontend, merging capability into yices_smt2. Ensure threads have large stacks. Make timeouts thread-safe. --- src/Makefile | 2 +- src/frontend/smt2/smt2_commands.c | 84 ++-- src/frontend/smt2/smt2_commands.h | 3 +- src/frontend/yices/yices_reval.c | 23 +- src/frontend/yices_smt.c | 9 +- src/frontend/yices_smt2.c | 22 +- src/frontend/yices_smt2_mt.c | 638 ------------------------------ src/frontend/yices_smtcomp.c | 10 +- src/mt/threads_posix.c | 45 ++- src/utils/error.c | 36 ++ src/utils/error.h | 29 ++ src/utils/timeout.c | 195 ++++++++- src/utils/timeout.h | 34 +- tests/unit/test_timeout.c | 15 +- 14 files changed, 377 insertions(+), 768 deletions(-) delete mode 100644 src/frontend/yices_smt2_mt.c create mode 100644 src/utils/error.c create mode 100644 src/utils/error.h diff --git a/src/Makefile b/src/Makefile index 445c6ff7b..9a14fc6ba 100644 --- a/src/Makefile +++ b/src/Makefile @@ -276,6 +276,7 @@ core_src_c := \ utils/csets.c \ utils/cputime.c \ utils/dep_tables.c \ + utils/error.c \ utils/gcd.c \ utils/generic_heap.c \ utils/hash_functions.c \ @@ -494,7 +495,6 @@ bin_src_c := \ frontend/yices_sat_new.c \ frontend/yices_smt.c \ frontend/yices_smt2.c \ - frontend/yices_smt2_mt.c \ frontend/yices_smtcomp.c \ # diff --git a/src/frontend/smt2/smt2_commands.c b/src/frontend/smt2/smt2_commands.c index 4d27ed7ba..af6483f4f 100644 --- a/src/frontend/smt2/smt2_commands.c +++ b/src/frontend/smt2/smt2_commands.c @@ -2653,8 +2653,13 @@ static void init_search_parameters(smt2_globals_t *g) { static void timeout_handler(void *data) { smt2_globals_t *g; +#ifndef THREAD_SAFE assert(data == &__smt2_globals); - +#else + /* In the multi-threaded case there are multiple copies of the + global data. */ +#endif /* THREAD_SAFE */ + g = data; if (g->efmode && g->ef_client.efsolver != NULL && g->ef_client.efsolver->status == EF_STATUS_SEARCHING) { ef_solver_stop_search(g->ef_client.efsolver); @@ -2679,14 +2684,13 @@ static smt_status_t check_sat_with_timeout(smt2_globals_t *g, const param_t *par * We call init_timeout only now because the internal timeout * consumes resources even if it's never used. */ - if (! g->timeout_initialized) { - init_timeout(); - g->timeout_initialized = true; + if (! g->to) { + g->to = init_timeout(); } g->interrupted = false; - start_timeout(g->timeout, timeout_handler, g); + start_timeout(g->to, g->timeout, timeout_handler, g); stat = check_context(g->ctx, params); - clear_timeout(); + clear_timeout(g->to); /* * Attempt to cleanly recover from interrupt @@ -2725,15 +2729,14 @@ static smt_status_t check_sat_with_assumptions(smt2_globals_t *g, const param_t * We call init_timeout only now because the internal timeout * consumes resources even if it's never used. */ - if (! g->timeout_initialized) { - init_timeout(); - g->timeout_initialized = true; + if (! g->to) { + g->to = init_timeout(); } g->interrupted = false; - start_timeout(g->timeout, timeout_handler, g); + start_timeout(g->to, g->timeout, timeout_handler, g); stat = check_with_assumptions(g->ctx, params, a->assumptions.size, a->assumptions.data, &a->core); a->status = stat; - clear_timeout(); + clear_timeout(g->to); /* * Attempt to cleanly recover from interrupt @@ -2773,14 +2776,13 @@ static smt_status_t check_sat_with_model(smt2_globals_t *g, const param_t *param * We call init_timeout only now because the internal timeout * consumes resources even if it's never used. */ - if (! g->timeout_initialized) { - init_timeout(); - g->timeout_initialized = true; + if (! g->to) { + g->to = init_timeout(); } g->interrupted = false; - start_timeout(g->timeout, timeout_handler, g); + start_timeout(g->to, g->timeout, timeout_handler, g); stat = check_with_model(g->ctx, params, n, vars, values); - clear_timeout(); + clear_timeout(g->to); /* * Attempt to cleanly recover from interrupt @@ -3026,7 +3028,7 @@ static void add_delayed_assertion(smt2_globals_t *g, term_t t) { /* * Check satisfiability of all assertions */ -static void check_delayed_assertions(smt2_globals_t *g) { +static void check_delayed_assertions(smt2_globals_t *g, bool report) { int32_t code; smt_status_t status; model_t *model; @@ -3036,12 +3038,14 @@ static void check_delayed_assertions(smt2_globals_t *g) { if (g->trivially_unsat) { trace_printf(g->tracer, 3, "(check-sat: trivially unsat)\n"); - report_status(g, STATUS_UNSAT); + if (report) + report_status(g, STATUS_UNSAT); } else if (trivially_true_assertions(g->assertions.data, g->assertions.size, &model)) { trace_printf(g->tracer, 3, "(check-sat: trivially true)\n"); g->trivially_sat = true; g->model = model; - report_status(g, STATUS_SAT); + if (report) + report_status(g, STATUS_SAT); } else { /* * check for mislabeled benchmarks: some benchmarks @@ -3105,7 +3109,8 @@ static void check_delayed_assertions(smt2_globals_t *g) { status = check_sat_with_timeout(g, &g->parameters); } - report_status(g, status); + if (report) + report_status(g, status); } } } @@ -3312,18 +3317,17 @@ static void efsolve_cmd(smt2_globals_t *g) { if (g->efmode) { efc = &g->ef_client; if (g->timeout != 0) { - if (! g->timeout_initialized) { - init_timeout(); - g->timeout_initialized = true; + if (! g->to) { + g->to = init_timeout(); } g->interrupted = false; - start_timeout(g->timeout, timeout_handler, g); + start_timeout(g->to, g->timeout, timeout_handler, g); } ef_solve(efc, g->assertions.size, g->assertions.data, &g->parameters, qf_fragment(g->logic_code), ef_arch_for_logic(g->logic_code), g->tracer, &g->term_patterns); - if (g-> timeout != 0) clear_timeout(); + if (g-> timeout != 0) clear_timeout(g->to); if (efc->efcode != EF_NO_ERROR) { // error in preprocessing @@ -4577,7 +4581,7 @@ static void init_smt2_globals(smt2_globals_t *g) { init_params_to_defaults(&g->parameters); g->nthreads = 0; g->timeout = 0; - g->timeout_initialized = false; + g->to = NULL; g->interrupted = false; g->delegate = NULL; g->avtbl = NULL; @@ -4629,8 +4633,8 @@ static void init_smt2_globals(smt2_globals_t *g) { * - delete the timeout object if it's initialized */ static void delete_smt2_globals(smt2_globals_t *g) { - if (g->timeout_initialized) { - delete_timeout(); + if (g->to) { + delete_timeout(g->to); } delete_info_table(g); if (g->logic_name != NULL) { @@ -6598,7 +6602,7 @@ static yices_thread_result_t YICES_THREAD_ATTR check_delayed_assertions_thread(v g->out = output; // /tmp/check_delayed_assertions_thread_.txt g->err = output; // /tmp/check_delayed_assertions_thread_.txt - check_delayed_assertions(g); + check_delayed_assertions(g, /*report=*/false); return yices_thread_exit(); } @@ -6621,18 +6625,22 @@ static smt_status_t get_status_from_globals(smt2_globals_t *g) { static void check_delayed_assertions_mt(smt2_globals_t *g) { bool success; uint32_t i, n; + bool verbose; n = g->nthreads; assert(n > 0); + verbose = g->verbosity > 0; + smt2_globals_t *garray = (smt2_globals_t *) safe_malloc(n * sizeof(smt2_globals_t)); for(i = 0; i < n; i++) { garray[i] = __smt2_globals; // just copy them for now. garray[i].tracer = NULL; // only main thread can use this. } - launch_threads(n, garray, sizeof(smt2_globals_t), "check_delayed_assertions_thread", check_delayed_assertions_thread, true); - fprintf(stderr, "All threads finished. Now computing check_delayed_assertions in main thread.\n"); - check_delayed_assertions(g); + launch_threads(n, garray, sizeof(smt2_globals_t), "check_delayed_assertions_thread", check_delayed_assertions_thread, verbose); + if (verbose) + fprintf(stderr, "All threads finished. Now computing check_delayed_assertions in main thread.\n"); + check_delayed_assertions(g, /*report=*/true); //could check that they are all OK @@ -6646,11 +6654,9 @@ static void check_delayed_assertions_mt(smt2_globals_t *g) { //free the model if there is one, and free the context. //IAM: valgrind says there is no leak here. This is puzzling. } - if (success) { - fprintf(stderr, "SUCCESS: All threads agree.\n"); - } else { - fprintf(stderr, "FAILURE: Threads disagree.\n"); - } + if (verbose) + fprintf(stderr, + success ? "SUCCESS: All threads agree.\n" : "FAILURE: Threads disagree.\n"); safe_free(garray); } #endif @@ -6679,10 +6685,10 @@ void smt2_check_sat(void) { } else { // show_delayed_assertions(&__smt2_globals); #ifndef THREAD_SAFE - check_delayed_assertions(&__smt2_globals); + check_delayed_assertions(&__smt2_globals, /*report=*/true); #else if (__smt2_globals.nthreads == 0) { - check_delayed_assertions(&__smt2_globals); + check_delayed_assertions(&__smt2_globals, /*report=*/true); } else { check_delayed_assertions_mt(&__smt2_globals); } diff --git a/src/frontend/smt2/smt2_commands.h b/src/frontend/smt2/smt2_commands.h index e673bee13..c7d45ef72 100644 --- a/src/frontend/smt2/smt2_commands.h +++ b/src/frontend/smt2/smt2_commands.h @@ -50,6 +50,7 @@ #include "utils/int_vectors.h" #include "utils/ptr_vectors.h" #include "utils/string_hash_map.h" +#include "utils/timeout.h" #include "parser_utils/lexer.h" #include "parser_utils/term_stack2.h" #include "io/tracer.h" @@ -401,7 +402,7 @@ typedef struct smt2_globals_s { // timeout uint32_t timeout; // default = 0 (no timeout) - bool timeout_initialized; // initially false. true once init_timeout is called + timeout_t *to; // initially NULL. Non-NULL once init_timeout is called bool interrupted; // true if the most recent call to check_sat timed out // optional: delegate sat solver for QF_BV diff --git a/src/frontend/yices/yices_reval.c b/src/frontend/yices/yices_reval.c index 14a0bb7b5..d1c8bd47a 100644 --- a/src/frontend/yices/yices_reval.c +++ b/src/frontend/yices/yices_reval.c @@ -138,7 +138,7 @@ * OTHER * - timeout: timeout value in second (applies to check) * timeout value = 0 means no timeout - * - timeout_initialized: true once init_timeout is called + * - to: the timeout structure * * COMMAND-LINE OPTIONS: * - logic_name: logic to use (option --logic=xxx) @@ -175,7 +175,7 @@ static int32_t verbosity; static tracer_t *tracer; static uint32_t timeout; -static bool timeout_initialized; +static timeout_t *to; static char *logic_name; static char *arith_name; @@ -262,8 +262,6 @@ static pp_area_t pp_area = { 140, UINT32_MAX, 0, false, false }; - - /************************** * COMMAND-LINE OPTIONS * *************************/ @@ -2542,11 +2540,10 @@ static void timeout_handler(void *data) { */ static void set_timeout(void) { if (timeout > 0) { - if (!timeout_initialized) { - init_timeout(); - timeout_initialized = true; + if (!to) { + to = init_timeout(); } - start_timeout(timeout, timeout_handler, context); + start_timeout(to, timeout, timeout_handler, context); } } @@ -2555,8 +2552,8 @@ static void set_timeout(void) { */ static void reset_timeout(void) { if (timeout > 0) { - assert(timeout_initialized); - clear_timeout(); + assert(to); + clear_timeout(to); timeout = 0; } } @@ -3999,7 +3996,7 @@ int yices_main(int argc, char *argv[]) { */ interactive = false; timeout = 0; - timeout_initialized = false; + to = NULL; include_depth = 0; ready_time = 0.0; check_process_time = 0.0; @@ -4111,8 +4108,8 @@ int yices_main(int argc, char *argv[]) { yices_exit(); - if (timeout_initialized) { - delete_timeout(); + if (to) { + delete_timeout(to); } return exit_code; diff --git a/src/frontend/yices_smt.c b/src/frontend/yices_smt.c index e70a3b7fc..8c9236871 100644 --- a/src/frontend/yices_smt.c +++ b/src/frontend/yices_smt.c @@ -182,6 +182,7 @@ static arith_solver_t arith_solver; */ static uint32_t timeout; +static timeout_t *to; /* * Filename given on the command line @@ -2040,15 +2041,15 @@ static int process_benchmark(char *filename) { start_search_time = get_cpu_time(); if (timeout > 0) { - init_timeout(); - start_timeout(timeout, timeout_handler, &context); + to = init_timeout(); + start_timeout(to, timeout, timeout_handler, &context); } code = check_context(&context, search_options); clear_handler(); if (timeout > 0) { - clear_timeout(); - delete_timeout(); + clear_timeout(to); + delete_timeout(to); } print_results(); diff --git a/src/frontend/yices_smt2.c b/src/frontend/yices_smt2.c index f7fd78344..e7d9232f8 100644 --- a/src/frontend/yices_smt2.c +++ b/src/frontend/yices_smt2.c @@ -140,6 +140,7 @@ static double ef_ematch_term_alpha; static int32_t ef_ematch_cnstr_mode; static int32_t ef_ematch_term_mode; +static uint32_t nthreads; /**************************** * COMMAND-LINE ARGUMENTS * @@ -185,9 +186,10 @@ typedef enum optid { ematch_term_alpha_opt, // set ematch term learner learning rate ematch_cnstr_mode_opt, // set cnstr mode in ematching ematch_term_mode_opt, // set term mode in ematching + nthreads_opt, // number of threads } optid_t; -#define NUM_OPTIONS (ematch_term_mode_opt+1) +#define NUM_OPTIONS (nthreads_opt+1) /* * Option descriptors @@ -232,6 +234,7 @@ static option_desc_t options[NUM_OPTIONS] = { { "ematch-term-alpha", '\0', MANDATORY_FLOAT, ematch_term_alpha_opt }, { "ematch-cnstr-mode", '\0', MANDATORY_STRING, ematch_cnstr_mode_opt }, { "ematch-term-mode", '\0', MANDATORY_STRING, ematch_term_mode_opt }, + { "nthreads", 'n', MANDATORY_INT, nthreads_opt } }; @@ -271,6 +274,8 @@ static void print_help(const char *progname) { " --mcsat Use the MCSat solver\n" " --mcsat-help Show the MCSat options\n" " --ef-help Show the EF options\n" + " --nthreads= Specify the number of threads (default = 0 = main thread only)\n" + " -n \n" "\n" "For bug reports and other information, please see http://yices.csl.sri.com/\n"); fflush(stdout); @@ -406,6 +411,8 @@ static void parse_command_line(int argc, char *argv[]) { ef_ematch_cnstr_mode = -1; ef_ematch_term_mode = -1; + nthreads = 0; + init_cmdline_parser(&parser, options, NUM_OPTIONS, argv, argc); for (;;) { @@ -463,6 +470,17 @@ static void parse_command_line(int argc, char *argv[]) { timeout = v; break; + case nthreads_opt: + v = elem.i_value; + if (v < 0) { + fprintf(stderr, "%s: the number of threads must be non-negative\n", parser.command_name); + print_usage(parser.command_name); + code = YICES_EXIT_USAGE; + goto exit; + } + nthreads = v; + break; + case incremental_opt: incremental = true; break; @@ -1059,7 +1077,7 @@ int main(int argc, char *argv[]) { init_handlers(); yices_init(); - init_smt2(!incremental, timeout, interactive); + init_mt2(!incremental, timeout, nthreads, interactive); if (smt2_model_format) smt2_force_smt2_model_format(); if (bvdecimal) smt2_force_bvdecimal_format(); if (dimacsfile != NULL && delegate == NULL) smt2_export_to_dimacs(dimacsfile); diff --git a/src/frontend/yices_smt2_mt.c b/src/frontend/yices_smt2_mt.c deleted file mode 100644 index 255429629..000000000 --- a/src/frontend/yices_smt2_mt.c +++ /dev/null @@ -1,638 +0,0 @@ -/* - * This file is part of the Yices SMT Solver. - * Copyright (C) 2017 SRI International. - * - * Yices is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Yices is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with Yices. If not, see . - */ - -/* - * Yices solver: input in the SMT-LIB 2.0 language multithreaded test bed - */ - -#if defined(CYGWIN) || defined(MINGW) -#ifndef __YICES_DLLSPEC__ -#define __YICES_DLLSPEC__ __declspec(dllexport) -#endif -#endif - -#include -#include -#include -#include -#include -#include -#include -// EXPERIMENT -#include - - -#include "frontend/common/parameters.h" -#include "frontend/smt2/smt2_commands.h" -#include "frontend/smt2/smt2_lexer.h" -#include "frontend/smt2/smt2_parser.h" -#include "frontend/smt2/smt2_term_stack.h" -#include "utils/command_line.h" - -#include "yices.h" -#include "yices_exit_codes.h" - -/* - * yices_rev is set up at compile time in yices_version.c - */ -extern const char * const yices_rev; - -/* - * Global objects: - * - lexer/parser/stack: for processing the SMT2 input - * - incremental: if this flag is true, support for push/pop - * and multiple check_sat is enabled. Otherwise, the solver - * is configured to handle a set of declarations/assertions - * followed by a single call to (check_sat). - * - interactive: if this flag is true, print a prompt before - * parsing commands. Also set the option :print-success to true. - * - timeout: command-line option - * - * - filename = name of the input file (NULL means read stdin) - */ -static lexer_t lexer; -static parser_t parser; -static tstack_t stack; - -static bool incremental; -static bool interactive; -static bool show_stats; -static int32_t verbosity; -static uint32_t timeout; -static uint32_t nthreads; -static char *filename; - -// mcsat options -static bool mcsat; -static bool mcsat_nra_mgcd; -static bool mcsat_nra_nlsat; -static bool mcsat_nra_bound; -static int32_t mcsat_nra_bound_min; -static int32_t mcsat_nra_bound_max; - -static pvector_t trace_tags; - - -/**************************** - * COMMAND-LINE ARGUMENTS * - ***************************/ - -typedef enum optid { - show_version_opt, // print version and exit - show_help_opt, // print help and exit - show_stats_opt, // show statistics after all commands are processed - verbosity_opt, // set verbosity on the command line - incremental_opt, // enable incremental mode - interactive_opt, // enable interactive mode - timeout_opt, // give a timeout - nthreads_opt, // number of threads - mcsat_opt, // enable mcsat - mcsat_nra_mgcd_opt, // use the mgcd instead psc in projection - mcsat_nra_nlsat_opt, // use the nlsat projection instead of brown single-cell - mcsat_nra_bound_opt, // search by increasing bound - mcsat_nra_bound_min_opt, // set initial bound - mcsat_nra_bound_max_opt, // set maximal bound - trace_opt, // enable a trace tag -} optid_t; - -#define NUM_OPTIONS (trace_opt+1) - -/* - * Option descriptors - */ -static option_desc_t options[NUM_OPTIONS] = { - { "version", 'V', FLAG_OPTION, show_version_opt }, - { "help", 'h', FLAG_OPTION, show_help_opt }, - { "stats", 's', FLAG_OPTION, show_stats_opt }, - { "verbosity", 'v', MANDATORY_INT, verbosity_opt }, - { "timeout", 't', MANDATORY_INT, timeout_opt }, - { "nthreads", 'n', MANDATORY_INT, nthreads_opt }, - { "incremental", '\0', FLAG_OPTION, incremental_opt }, - { "interactive", '\0', FLAG_OPTION, interactive_opt }, - { "mcsat", '\0', FLAG_OPTION, mcsat_opt }, - { "mcsat-nra-mgcd", '\0', FLAG_OPTION, mcsat_nra_mgcd_opt }, - { "mcsat-nra-nlsat", '\0', FLAG_OPTION, mcsat_nra_nlsat_opt }, - { "mcsat-nra-bound", '\0', FLAG_OPTION, mcsat_nra_bound_opt }, - { "mcsat-nra-bound-min", '\0', MANDATORY_INT, mcsat_nra_bound_min_opt }, - { "mcsat-nra-bound-max", '\0', MANDATORY_INT, mcsat_nra_bound_max_opt }, - { "trace", 't', MANDATORY_STRING, trace_opt }, -}; - - -/* - * Processing of command-line - */ -static void print_version(void) { - printf("Yices %s\n" - "Copyright SRI International.\n" - "Linked with GMP %s\n" - "Copyright Free Software Foundation, Inc.\n" - "Build date: %s\n" - "Platform: %s (%s)\n" - "Revision: %s\n", - yices_version, gmp_version, - yices_build_date, yices_build_arch, yices_build_mode, yices_rev); - fflush(stdout); -} - -static void print_help(const char *progname) { - printf("Usage: %s [option] filename\n" - " or %s [option]\n", progname, progname); - printf("Option summary:\n" - " --version, -V Show version and exit\n" - " --help, -h Print this message and exit\n" - " --verbosity= Set verbosity level (default = 0)\n" - " -v \n" - " --timeout= Set a timeout in seconds (default = no timeout)\n" - " -t \n" - " --nthreads= Specify the number of threads (default = 0 = main thread only)\n" - " -n \n" - " --stats, -s Print statistics once all commands have been processed\n" - " --incremental Enable support for push/pop\n" - " --interactive Run in interactive mode (ignored if a filename is given)\n" -#if HAVE_MCSAT - " --mcsat Use the MCSat solver\n" - " --mcsat-nra-mgcd Use model-based GCD instead of PSC for projection\n" - " --mcsat-nra-nlsat Use NLSAT projection instead of Brown's single-cell construction\n" - " --mcsat-nra-bound Search by increasing the bound on variable magnitude\n" - " --mcsat-nra-bound-min= Set initial lower bound\n" - " --mcsat-nra-bound-max= Set maximal bound for search" - "" -#endif - "\n" - "For bug reports and other information, please see http://yices.csl.sri.com/\n"); - fflush(stdout); -} - -/* - * Message for unrecognized options or other errors on the command line. - */ -static void print_usage(const char *progname) { - fprintf(stderr, "Usage: %s [options] filename\n", progname); - fprintf(stderr, "Try '%s --help' for more information\n", progname); -} - - -/* - * Parse the command line and process options - */ -static void parse_command_line(int argc, char *argv[]) { - cmdline_parser_t parser; - cmdline_elem_t elem; - optid_t k; - int32_t v; - int code; - - filename = NULL; - incremental = false; - interactive = false; - show_stats = false; - verbosity = 0; - timeout = 0; - nthreads = 0; - - mcsat = false; - mcsat_nra_mgcd = false; - mcsat_nra_nlsat = false; - mcsat_nra_bound = false; - mcsat_nra_bound_min = -1; - mcsat_nra_bound_max = -1; - - init_pvector(&trace_tags, 5); - - init_cmdline_parser(&parser, options, NUM_OPTIONS, argv, argc); - - for (;;) { - cmdline_parse_element(&parser, &elem); - switch (elem.status) { - case cmdline_done: - goto done; - - case cmdline_argument: - if (filename == NULL) { - filename = elem.arg; - } else { - fprintf(stderr, "%s: too many arguments\n", parser.command_name); - print_usage(parser.command_name); - code = YICES_EXIT_USAGE; - goto exit; - } - break; - - case cmdline_option: - k = elem.key; - switch (k) { - case show_version_opt: - print_version(); - code = YICES_EXIT_SUCCESS; - goto exit; - - case show_help_opt: - print_help(parser.command_name); - code = YICES_EXIT_SUCCESS; - goto exit; - - case show_stats_opt: - show_stats = true; - break; - - case verbosity_opt: - v = elem.i_value; - if (v < 0) { - fprintf(stderr, "%s: the verbosity level must be non-negative\n", parser.command_name); - print_usage(parser.command_name); - code = YICES_EXIT_USAGE; - goto exit; - } - verbosity = v; - break; - - case timeout_opt: - v = elem.i_value; - if (v < 0) { - fprintf(stderr, "%s: the timeout must be non-negative\n", parser.command_name); - print_usage(parser.command_name); - code = YICES_EXIT_USAGE; - goto exit; - } - timeout = v; - break; - - case nthreads_opt: - v = elem.i_value; - if (v < 0) { - fprintf(stderr, "%s: the number of threads must be non-negative\n", parser.command_name); - print_usage(parser.command_name); - code = YICES_EXIT_USAGE; - goto exit; - } - nthreads = v; - break; - - case incremental_opt: - incremental = true; - break; - - case interactive_opt: - interactive = true; - break; - - case mcsat_opt: -#if HAVE_MCSAT - mcsat = true; -#else - fprintf(stderr, "mcsat is not supported: %s was not compiled with mcsat support\n", parser.command_name); - code = YICES_EXIT_USAGE; - goto exit; -#endif - break; - - case mcsat_nra_mgcd_opt: -#if HAVE_MCSAT - mcsat_nra_mgcd = true; -#else - fprintf(stderr, "mcsat is not supported: %s was not compiled with mcsat support\n", parser.command_name); - code = YICES_EXIT_USAGE; - goto exit; -#endif - break; - - case mcsat_nra_nlsat_opt: -#if HAVE_MCSAT - mcsat_nra_nlsat = true; -#else - fprintf(stderr, "mcsat is not supported: %s was not compiled with mcsat support\n", parser.command_name); - code = YICES_EXIT_USAGE; - goto exit; -#endif - break; - - case mcsat_nra_bound_opt: -#if HAVE_MCSAT - mcsat_nra_bound = true; -#else - fprintf(stderr, "mcsat is not supported: %s was not compiled with mcsat support\n", parser.command_name); - code = YICES_EXIT_USAGE; - goto exit; -#endif - break; - - case mcsat_nra_bound_min_opt: -#if HAVE_MCSAT - v = elem.i_value; - if (v < 0) { - fprintf(stderr, "%s: the min value must be non-negative\n", parser.command_name); - print_usage(parser.command_name); - code = YICES_EXIT_USAGE; - goto exit; - } - mcsat_nra_bound_min = v; -#else - fprintf(stderr, "mcsat is not supported: %s was not compiled with mcsat support\n", parser.command_name); - code = YICES_EXIT_USAGE; - goto exit; -#endif - break; - - case mcsat_nra_bound_max_opt: -#if HAVE_MCSAT - v = elem.i_value; - if (v < 0) { - fprintf(stderr, "%s: the max value must be non-negative\n", parser.command_name); - print_usage(parser.command_name); - code = YICES_EXIT_USAGE; - goto exit; - } - mcsat_nra_bound_max = v; -#else - fprintf(stderr, "mcsat is not supported: %s was not compiled with mcsat support\n", parser.command_name); - code = YICES_EXIT_USAGE; - goto exit; -#endif - break; - - case trace_opt: - pvector_push(&trace_tags, elem.s_value); - break; - } - break; - - case cmdline_error: - cmdline_print_error(&parser, &elem); - fprintf(stderr, "Try %s --help for more information\n", parser.command_name); - code = YICES_EXIT_USAGE; - goto exit; - } - } - - done: - - // force interactive to false if there's a filename - if (filename != NULL) { - interactive = false; - } - return; - - exit: - // cleanup then exit - // code is either YICES_EXIT_SUCCESS or YICES_EXIT_USAGE. - delete_pvector(&trace_tags); - exit(code); -} - -static void setup_mcsat(void) { - aval_t aval_true; - - if (mcsat) { - smt2_enable_mcsat(); - } - - aval_true = attr_vtbl_symbol(__smt2_globals.avtbl, "true"); - - if (mcsat_nra_mgcd) { - smt2_set_option(":yices-mcsat-nra-mgcd", aval_true); - } - - if (mcsat_nra_nlsat) { - smt2_set_option(":yices-mcsat-nra-nlsat", aval_true); - } - - if (mcsat_nra_bound) { - smt2_set_option(":yices-mcsat-nra-bound", aval_true); - } - - if (mcsat_nra_bound_min >= 0) { - aval_t aval_bound_min; - rational_t q; - q_init(&q); - q_set32(&q, mcsat_nra_bound_min); - aval_bound_min = attr_vtbl_rational(__smt2_globals.avtbl, &q); - smt2_set_option(":yices-mcsat-nra-bound-min", aval_bound_min); - q_clear(&q); - } - - if (mcsat_nra_bound_max >= 0) { - aval_t aval_bound_max; - rational_t q; - q_init(&q); - q_set32(&q, mcsat_nra_bound_max); - aval_bound_max = attr_vtbl_rational(__smt2_globals.avtbl, &q); - smt2_set_option(":yices-mcsat-nra-bound-max", aval_bound_max); - q_clear(&q); - } -} - - -/******************** - * SIGNAL HANDLER * - *******************/ - -static const char signum_msg[24] = "\nInterrupted by signal "; -static char signum_buffer[100]; - -/* - * Write signal number of file 2 (assumed to be stderr): we can't use - * fprintf because it's not safe in a signal handler. - */ -static void write_signum(int signum) { - ssize_t w; - uint32_t i, n; - - memcpy(signum_buffer, signum_msg, sizeof(signum_msg)); - - // force signum to be at most two digits - signum = signum % 100; - n = sizeof(signum_msg); - if (signum > 10) { - signum_buffer[n] = (char)('0' + signum/10); - signum_buffer[n + 1] = (char)('0' + signum % 10); - signum_buffer[n + 2] = '\n'; - n += 3; - } else { - signum_buffer[n] = (char)('0' + signum); - signum_buffer[n + 1] = '\n'; - n += 2; - } - - // write to file 2 - i = 0; - do { - do { - w = write(2, signum_buffer + i, n); - } while (w < 0 && errno == EAGAIN); - if (w < 0) break; // write error, we can't do much about it. - i += (uint32_t) w; - n -= (uint32_t) w; - } while (n > 0); -} - -/* - * We call exit on SIGINT/ABORT and XCPU - * - we could try to handle SIGINT more gracefully in interactive mode - * - this will do for now. - */ -static void default_handler(int signum) { - if (verbosity > 0) { - write_signum(signum); - } - if (show_stats) { - smt2_show_stats(); - } - _exit(YICES_EXIT_INTERRUPTED); -} - - -/* - * Initialize the signal handlers - */ -static void init_handlers(void) { - signal(SIGINT, default_handler); - signal(SIGABRT, default_handler); -#ifndef MINGW - signal(SIGXCPU, default_handler); -#endif -} - - -/* - * Reset the default handlers - */ -static void reset_handlers(void) { - signal(SIGINT, SIG_DFL); - signal(SIGABRT, SIG_DFL); -#ifndef MINGW - signal(SIGXCPU, SIG_DFL); -#endif -} - - - -/********** - * MAIN * - *********/ - -#define HACK_FOR_UTF 0 - -#if HACK_FOR_UTF - -/* - * List of locales to try - */ -#define NUM_LOCALES 3 - -static const char *const locales[NUM_LOCALES] = { - "C.UTF-8", "en_US.utf8", "en_US.UTF-8", -}; - -// HACK TO FORCE UTF8 -static void force_utf8(void) { - uint32_t i; - - for (i=0; i 1) { - fprintf(stderr, "Switched to locale '%s'\n", setlocale(LC_CTYPE, NULL)); - fflush(stderr); - } - return; - } - } - - fprintf(stderr, "Failed to switch locale to UTF-8. Current locale is '%s'\n", setlocale(LC_CTYPE, NULL)); - fflush(stderr); -} - -#else - -static void force_utf8(void) { - // Do nothing -} - -#endif - -int main(int argc, char *argv[]) { - int32_t code; - uint32_t i; - - parse_command_line(argc, argv); - force_utf8(); - - if (filename != NULL) { - // read from file - if (init_smt2_file_lexer(&lexer, filename) < 0) { - perror(filename); - exit(YICES_EXIT_FILE_NOT_FOUND); - } - } else { - // read from stdin - init_smt2_stdin_lexer(&lexer); - } - - init_handlers(); - - yices_init(); - init_mt2(!incremental, timeout, nthreads, interactive); - init_smt2_tstack(&stack); - init_parser(&parser, &lexer, &stack); - - init_parameter_name_table(); - - if (verbosity > 0) { - smt2_set_verbosity(verbosity); - } - if (trace_tags.size > 0) { - for (i = 0; i < trace_tags.size; ++ i) { - smt2_enable_trace_tag(trace_tags.data[i]); - } - } - - setup_mcsat(); - - while (smt2_active()) { - if (interactive) { - // prompt - fputs("yices> ", stderr); - fflush(stderr); - } - code = parse_smt2_command(&parser); - if (code < 0) { - // syntax error - if (interactive) { - flush_lexer(&lexer); - } else { - break; // exit - } - } - } - - if (show_stats) { - smt2_show_stats(); - } - - delete_pvector(&trace_tags); - delete_parser(&parser); - close_lexer(&lexer); - delete_tstack(&stack); - delete_smt2(); - yices_exit(); - - reset_handlers(); - - return YICES_EXIT_SUCCESS; -} - diff --git a/src/frontend/yices_smtcomp.c b/src/frontend/yices_smtcomp.c index 89c53cee9..f6a4f41ad 100644 --- a/src/frontend/yices_smtcomp.c +++ b/src/frontend/yices_smtcomp.c @@ -184,6 +184,8 @@ static tracer_t tracer; */ static uint32_t timeout; +static timeout_t *to; + /* * Input file given on the command line. * If this is NULL, we read from stdin. @@ -1292,14 +1294,14 @@ static int process_benchmark(void) { start_search_time = get_cpu_time(); if (timeout > 0) { - init_timeout(); - start_timeout(timeout, timeout_handler, &context); + to = init_timeout(); + start_timeout(to, timeout, timeout_handler, &context); } code = check_context(&context, ¶ms); clear_handler(); if (timeout > 0) { - clear_timeout(); - delete_timeout(); + clear_timeout(to); + delete_timeout(to); } print_results(); diff --git a/src/mt/threads_posix.c b/src/mt/threads_posix.c index 61d051010..aa34dadeb 100644 --- a/src/mt/threads_posix.c +++ b/src/mt/threads_posix.c @@ -21,6 +21,9 @@ #include #include #include +#include + +#include "utils/error.h" void launch_threads(int32_t nthreads, void* extras, size_t extra_sz, const char* test, yices_thread_main_t thread_main, bool verbose){ int32_t retcode, thread; @@ -29,6 +32,10 @@ void launch_threads(int32_t nthreads, void* extras, size_t extra_sz, const char* thread_data_t* tdata = (thread_data_t*)calloc(nthreads, sizeof(thread_data_t)); pthread_t* tids = (pthread_t*)calloc(nthreads, sizeof(pthread_t)); + pthread_attr_t attr; + size_t stacksize; + struct rlimit rlp; + if((tdata == NULL) || (tids == NULL)){ fprintf(stderr, "Couldn't alloc memory for %d threads\n", nthreads); exit(EXIT_FAILURE); @@ -38,6 +45,19 @@ void launch_threads(int32_t nthreads, void* extras, size_t extra_sz, const char* printf("%d threads\n", nthreads); } + /* Give child threads the same stack size as the main thread. */ + if (getrlimit(RLIMIT_STACK, &rlp) == -1) + perror_fatal("launch_threads: getrlimit"); + retcode = pthread_attr_init(&attr); + if (retcode == -1) + perror_fatal_code("launch_threads: pthread_attr_init", retcode); + retcode = pthread_attr_getstacksize(&attr, &stacksize); + if (retcode == -1) + perror_fatal_code("launch_threads: pthread_attr_getstacksize", retcode); + retcode = pthread_attr_setstacksize(&attr, rlp.rlim_cur); + if (retcode == -1) + perror_fatal_code("launch_threads: pthread_attr_setstacksize", retcode); + for(thread = 0; thread < nthreads; thread++){ snprintf(buff, 1024, "/tmp/%s_%d.txt", test, thread); if(verbose){ @@ -48,18 +68,19 @@ void launch_threads(int32_t nthreads, void* extras, size_t extra_sz, const char* tdata[thread].extra = (extras + (thread * extra_sz)); } tdata[thread].output = fopen(buff, "w"); - if(tdata[thread].output == NULL){ - fprintf(stderr, "fopen failed: %s\n", strerror(errno)); - exit(EXIT_FAILURE); - } + if(tdata[thread].output == NULL) + perror_fatal("launch_threads: fopen"); - retcode = pthread_create(&tids[thread], NULL, thread_main, &tdata[thread]); - if(retcode){ - fprintf(stderr, "pthread_create failed: %s\n", strerror(retcode)); - exit(EXIT_FAILURE); - } + retcode = pthread_create(&tids[thread], &attr, thread_main, &tdata[thread]); + if(retcode) + perror_fatal_code("launch_threads: pthread_create", retcode); } + retcode = pthread_attr_destroy(&attr); + if (retcode) + perror_fatal_code("launch_threads: pthread_attr_destroy", retcode); + + if(verbose){ printf("threads away\n\n"); } @@ -67,10 +88,8 @@ void launch_threads(int32_t nthreads, void* extras, size_t extra_sz, const char* for(thread = 0; thread < nthreads; thread++){ retcode = pthread_join(tids[thread], NULL); - if(retcode){ - fprintf(stderr, "pthread_join failed: %s\n", strerror(retcode)); - exit(EXIT_FAILURE); - } + if(retcode) + perror_fatal_code("launch_threads: pthread_join", retcode); fclose(tdata[thread].output); } diff --git a/src/utils/error.c b/src/utils/error.c new file mode 100644 index 000000000..568fa23f0 --- /dev/null +++ b/src/utils/error.c @@ -0,0 +1,36 @@ +/* + * This file is part of the Yices SMT Solver. + * Copyright (C) 2023 SRI International. + * + * Yices is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * Yices is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Yices. If not, see . + */ + +#include +#include +#include + +#include "yices_exit_codes.h" + +void perror_fatal(const char *s) { + perror_fatal(s, errno); + exit(YICES_EXIT_INTERNAL_ERROR); +} + +void perror_fatal_code(const char *s, int err) { + char buffer[64]; + + strerror_r(err, buffer, sizeof(buffer)); + fprintf(stderr, "%s: %s\n", s, buffer); + exit(YICES_EXIT_INTERNAL_ERROR); +} diff --git a/src/utils/error.h b/src/utils/error.h new file mode 100644 index 000000000..02d29d556 --- /dev/null +++ b/src/utils/error.h @@ -0,0 +1,29 @@ +/* + * This file is part of the Yices SMT Solver. + * Copyright (C) 2023 SRI International. + * + * Yices is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * Yices is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Yices. If not, see . + */ + +#ifndef __ERROR_H +#define __ERROR_H + +/* Like perror, but exit after printing the message. */ +extern void perror_fatal(const char *s); + +/* Like perror, but use ERR as the error code and exit after printing + the message. */ +extern void perror_fatal_code(const char *s, int err); + +#endif diff --git a/src/utils/timeout.c b/src/utils/timeout.c index 3dadd02b4..fe3b9e6fb 100644 --- a/src/utils/timeout.c +++ b/src/utils/timeout.c @@ -44,15 +44,53 @@ #include +#include "utils/error.h" +#include "utils/memalloc.h" #include "utils/timeout.h" #include "yices_exit_codes.h" +#if !defined(MINGW) && defined(THREAD_SAFE) +#include +#endif + +/* + * Timeout state: + * - NOT_READY: initial state and after call to delete_timeout + * - READY: ready to be started (state after init_timeout + * and after clear_timeout) + * - ACTIVE: after a call to start_timeout, before the timer fires + * or the timeout is canceled + * - CANCELED: used by clear_timeout + * - FIRED: after the handler has been called + */ +typedef enum timeout_state { + TIMEOUT_NOT_READY, // 0 + TIMEOUT_READY, + TIMEOUT_ACTIVE, + TIMEOUT_CANCELED, + TIMEOUT_FIRED, +} timeout_state_t; + + +typedef struct timeout_s { + timeout_state_t state; + timeout_handler_t handler; + void *param; +#ifdef THREAD_SAFE + struct timeval tv; + pthread_t thread; + int pipe[2]; +#endif +} timeout_t; + +#ifndef THREAD_SAFE /* * Global structure common to both implementation. */ static timeout_t the_timeout; +#endif #ifndef MINGW @@ -65,7 +103,115 @@ static timeout_t the_timeout; #include #include #include +#include + +#ifdef THREAD_SAFE + +timeout_t *init_timeout(void) { + timeout_t *timeout; + timeout = (timeout_t *) safe_malloc(sizeof(timeout_t)); + + timeout->state = TIMEOUT_READY; + timeout->handler = NULL; + timeout->param = NULL; + timeout->tv.tv_sec = 0; + timeout->tv.tv_usec = 0; + timeout->pipe[0] = timeout->pipe[1] = -1; + + return timeout; +} + +void delete_timeout(timeout_t *timeout) { + /* The read end of the pipe should have been closed by the timer + thread. */ + assert(timeout->pipe[0] == -1); + /* The write end of the pipe should have been closed by + clear_timer. */ + assert(timeout->pipe[1] == -1); + + safe_free(timeout); +} + +static void *timer_thread(void *arg) { + timeout_t *timeout; + int fd; + fd_set readfds; + + timeout = (timeout_t *) arg; + + fd = timeout->pipe[0]; + FD_ZERO(&readfds); + FD_SET(fd, &readfds); + + /* Watch the read end of the pipe until the timeout occurs. */ + switch (select(fd + 1, &readfds, + /*writefds=*/NULL, /*errorfds=*/NULL, + &timeout->tv)) { + case -1: + /* Error. */ + perror_fatal("timer_thread: select"); + break; + + case 0: + /* Timeout. */ + timeout->state = TIMEOUT_FIRED; + timeout->handler(timeout->param); + break; + + case 1: + /* Canceled. */ + assert(FD_ISSET(fd, &readfds)); + timeout->state = TIMEOUT_CANCELED; + break; + + default: + assert(0); + } + + /* Close the read end of the pipe. */ + if (close(timeout->pipe[0]) == -1) + perror_fatal("timer_thread: close"); + timeout->pipe[0] = -1; + + return NULL; +} + +void start_timeout(timeout_t *timeout, uint32_t delay, timeout_handler_t handler, void *param) { + int ret; + + assert(delay > 0 && timeout->state == TIMEOUT_READY && handler != NULL); + + timeout->state = TIMEOUT_ACTIVE; + timeout->tv.tv_sec = delay; + timeout->tv.tv_usec = 0; + timeout->handler = handler; + timeout->param = param; + + if (pipe(timeout->pipe) == -1) + perror_fatal("start_timeout: pipe"); + + ret = pthread_create(&timeout->thread, /*attr=*/NULL, timer_thread, timeout); + if (ret) + perror_fatal_code("start_timeout: pthread_create", ret); +} + +void clear_timeout(timeout_t *timeout) { + void *value; + + /* Tell the thread to exit. */ + if (close(timeout->pipe[1]) == -1) + perror_fatal("clear_timeout: close"); + timeout->pipe[1] = -1; + + /* Wait for the thread to exit. */ + if (pthread_join(timeout->thread, &value) == -1) + perror_fatal("clear_timeout: pthread_join"); + + timeout->state = TIMEOUT_READY; +} + +#else /* !defined(THREAD_SAFE) */ /* * To save the original SIG_ALRM handler @@ -92,7 +238,7 @@ static void alarm_handler(int signum) { * - install the alarm_handler (except on Solaris) * - initialize state to READY */ -void init_timeout(void) { +timeout_t *init_timeout(void) { #ifndef SOLARIS saved_handler = signal(SIGALRM, alarm_handler); if (saved_handler == SIG_ERR) { @@ -104,6 +250,8 @@ void init_timeout(void) { the_timeout.state = TIMEOUT_READY;; the_timeout.handler = NULL; the_timeout.param = NULL; + + return &the_timeout; } @@ -116,11 +264,12 @@ void init_timeout(void) { * * On Solaris: set the signal handler here. */ -void start_timeout(uint32_t delay, timeout_handler_t handler, void *param) { - assert(delay > 0 && the_timeout.state == TIMEOUT_READY && handler != NULL); - the_timeout.state = TIMEOUT_ACTIVE; - the_timeout.handler = handler; - the_timeout.param = param; +void start_timeout(timeout_t *timeout, uint32_t delay, timeout_handler_t handler, void *param) { + assert(timeout == &the_timeout); + assert(delay > 0 && timeout->state == TIMEOUT_READY && handler != NULL); + timeout->state = TIMEOUT_ACTIVE; + timeout->handler = handler; + timeout->param = param; #ifdef SOLARIS saved_handler = signal(SIGALRM, alarm_handler); @@ -140,14 +289,16 @@ void start_timeout(uint32_t delay, timeout_handler_t handler, void *param) { * - cancel the timeout if it's not fired * - set state to READY */ -void clear_timeout(void) { +void clear_timeout(timeout_t *timeout) { + assert(timeout == &the_timeout); + // TODO: Check whether we should block the signals here? - if (the_timeout.state == TIMEOUT_ACTIVE) { + if (the_timeout->state == TIMEOUT_ACTIVE) { // not fired; - the_timeout.state = TIMEOUT_CANCELED; + the_timeout->state = TIMEOUT_CANCELED; (void) alarm(0); // cancel the alarm } - the_timeout.state = TIMEOUT_READY; + the_timeout->state = TIMEOUT_READY; } @@ -156,14 +307,17 @@ void clear_timeout(void) { * - cancel the timeout if it's active * - restore the original handler */ -void delete_timeout(void) { - if (the_timeout.state == TIMEOUT_ACTIVE) { +void delete_timeout(timeout_t *timeout) { + assert(timeout == &the_timeout); + + if (timeout->state == TIMEOUT_ACTIVE) { (void) alarm(0); } (void) signal(SIGALRM, saved_handler); - the_timeout.state = TIMEOUT_NOT_READY; + timeout->state = TIMEOUT_NOT_READY; } +#endif /* defined(THREAD_SAFE) */ #else @@ -210,7 +364,7 @@ static VOID CALLBACK timer_callback(PVOID param, BOOLEAN timer_or_wait_fired) { * Initialization: * - create the timer queue */ -void init_timeout(void) { +timeout_t *init_timeout(void) { timer_queue = CreateTimerQueue(); if (timer_queue == NULL) { fprintf(stderr, "Yices: CreateTimerQueue failed with error code %"PRIu32"\n", (uint32_t) GetLastError()); @@ -221,6 +375,8 @@ void init_timeout(void) { the_timeout.state = TIMEOUT_READY; the_timeout.handler = NULL; the_timeout.param = NULL; + + return &the_timeout; } @@ -231,9 +387,10 @@ void init_timeout(void) { * - handler = handler to call if fired * - param = parameter for the handler */ -void start_timeout(uint32_t delay, timeout_handler_t handler, void *param) { +void start_timeout(timeout_t *timeout, uint32_t delay, timeout_handler_t handler, void *param) { DWORD duetime; + assert(timeout == &the_timeout); assert(delay > 0 && the_timeout.state == TIMEOUT_READY && handler != NULL); duetime = delay * 1000; // delay in milliseconds @@ -255,10 +412,12 @@ void start_timeout(uint32_t delay, timeout_handler_t handler, void *param) { /* * Delete the timer */ -void clear_timeout(void) { +void clear_timeout(timeout_t *timeout) { // GetLastError returns DWORD, which is an unsigned 32bit integer uint32_t error_code; + assert(timeout == &the_timeout); + if (the_timeout.state == TIMEOUT_ACTIVE || the_timeout.state == TIMEOUT_FIRED) { if (the_timeout.state == TIMEOUT_ACTIVE) { // active and not fired yet @@ -292,7 +451,9 @@ void clear_timeout(void) { * Final cleanup: * - delete the timer_queue */ -void delete_timeout(void) { +void delete_timeout(timeout_t *timeout) { + assert(timeout == &the_timeout); + if (! DeleteTimerQueueEx(timer_queue, INVALID_HANDLE_VALUE)) { fprintf(stderr, "Yices: DeleteTimerQueueEx failed with error code %"PRIu32"\n", (uint32_t) GetLastError()); fflush(stderr); diff --git a/src/utils/timeout.h b/src/utils/timeout.h index 6fb3e78cb..009282d0e 100644 --- a/src/utils/timeout.h +++ b/src/utils/timeout.h @@ -53,26 +53,6 @@ #include - -/* - * Timeout state: - * - NOT_READY: initial state and after call to delete_timeout - * - READY: ready to be started (state after init_timeout - * and after clear_timeout) - * - ACTIVE: after a call to start_timeout, before the timer fires - * or the timeout is canceled - * - CANCELED: used by clear_timeout - * - FIRED: after the handler has been called - */ -typedef enum timeout_state { - TIMEOUT_NOT_READY, // 0 - TIMEOUT_READY, - TIMEOUT_ACTIVE, - TIMEOUT_CANCELED, - TIMEOUT_FIRED, -} timeout_state_t; - - /* * Handler: a function with a single (void*) parameter * - should do something cheap and fast. @@ -83,11 +63,7 @@ typedef void (*timeout_handler_t)(void *data); /* * Internal structure used to manage the timeout */ -typedef struct timeout_s { - timeout_state_t state; - timeout_handler_t handler; - void *param; -} timeout_t; +typedef struct timeout_s timeout_t; @@ -98,7 +74,7 @@ typedef struct timeout_s { /* * Initialize internal structures */ -extern void init_timeout(void); +extern timeout_t *init_timeout(void); /* @@ -107,20 +83,20 @@ extern void init_timeout(void); * - handler = the handler to call * - param = data passed to the handler */ -extern void start_timeout(uint32_t delay, timeout_handler_t handler, void *param); +extern void start_timeout(timeout_t *timeout, uint32_t delay, timeout_handler_t handler, void *param); /* * Cancel the timeout if it's not fired. * Cleanup any structure allocated by start timeout. */ -extern void clear_timeout(void); +extern void clear_timeout(timeout_t *timeout); /* * Final cleanup */ -extern void delete_timeout(void); +extern void delete_timeout(timeout_t *timeout); diff --git a/tests/unit/test_timeout.c b/tests/unit/test_timeout.c index 0af1a1606..e780ae640 100644 --- a/tests/unit/test_timeout.c +++ b/tests/unit/test_timeout.c @@ -92,16 +92,16 @@ static void show_counter(uint32_t *c, uint32_t n) { /* * Test: n = size of the counter, t = timeout value */ -static void test_timeout(uint32_t *c, uint32_t n, uint32_t timeout) { +static void test_timeout(timeout_t *to, uint32_t *c, uint32_t n, uint32_t timeout) { double start, end; printf("---> test: size = %"PRIu32", timeout = %"PRIu32" s\n", n, timeout); fflush(stdout); wrapper.interrupted = false; - start_timeout(timeout, handler, &wrapper); + start_timeout(to, timeout, handler, &wrapper); start = get_cpu_time(); loop(c, n); - clear_timeout(); + clear_timeout(to); end = get_cpu_time(); printf(" cpu time = %.2f s\n", end - start); fflush(stdout); @@ -127,15 +127,16 @@ static uint32_t counter[64]; int main(void) { uint32_t n; uint32_t time; - - init_timeout(); + timeout_t *timeout; + + timeout = init_timeout(); time = 20; for (n=5; n<40; n++) { - test_timeout(counter, n, time); + test_timeout(timeout, counter, n, time); } - delete_timeout(); + delete_timeout(timeout); return 0; } From 9218605c9b71469c43a646e09076adf799dc011d Mon Sep 17 00:00:00 2001 From: Mark Mitchell Date: Fri, 22 Sep 2023 13:29:18 -0700 Subject: [PATCH 138/182] Fix typo. --- src/utils/error.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/utils/error.c b/src/utils/error.c index 568fa23f0..fee3577e1 100644 --- a/src/utils/error.c +++ b/src/utils/error.c @@ -23,7 +23,7 @@ #include "yices_exit_codes.h" void perror_fatal(const char *s) { - perror_fatal(s, errno); + perror(s); exit(YICES_EXIT_INTERNAL_ERROR); } From 24aced272a024f25bf46f33a9aebd3dc7ab1714a Mon Sep 17 00:00:00 2001 From: Ahmed <43099566+ahmed-irfan@users.noreply.github.com> Date: Fri, 22 Sep 2023 15:28:46 -0700 Subject: [PATCH 139/182] Update COMPILING fixed typo --- doc/COMPILING | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/COMPILING b/doc/COMPILING index 554b30de1..1de49bd07 100644 --- a/doc/COMPILING +++ b/doc/COMPILING @@ -633,7 +633,7 @@ dynamic and static libraries in different locations: 2) Build GMP as a static library in a different location (say /tools/static_gmp/). This can be done by giving options - --disable-share --enable-static --prefix=/tools/static_gmp + --disable-shared --enable-static --prefix=/tools/static_gmp to GMP's configure script. This will build From d493dc1056ed8e9d83ffdbe428e76cda8be0731e Mon Sep 17 00:00:00 2001 From: Mark Mitchell Date: Fri, 22 Sep 2023 20:40:04 -0700 Subject: [PATCH 140/182] Use ptrhead condition variables to communicate with the timer thread. --- src/utils/timeout.c | 113 ++++++++++++++++++++++---------------------- 1 file changed, 57 insertions(+), 56 deletions(-) diff --git a/src/utils/timeout.c b/src/utils/timeout.c index fe3b9e6fb..00ae7ffc3 100644 --- a/src/utils/timeout.c +++ b/src/utils/timeout.c @@ -77,9 +77,10 @@ typedef struct timeout_s { timeout_handler_t handler; void *param; #ifdef THREAD_SAFE - struct timeval tv; + struct timespec ts; pthread_t thread; - int pipe[2]; + pthread_mutex_t mutex; + pthread_cond_t cond; #endif } timeout_t; @@ -107,6 +108,13 @@ static timeout_t the_timeout; #ifdef THREAD_SAFE +#include + +static inline void check_pthread(int err, const char *msg) { + if (err) + perror_fatal_code(msg, err); +} + timeout_t *init_timeout(void) { timeout_t *timeout; @@ -115,98 +123,91 @@ timeout_t *init_timeout(void) { timeout->state = TIMEOUT_READY; timeout->handler = NULL; timeout->param = NULL; - timeout->tv.tv_sec = 0; - timeout->tv.tv_usec = 0; - timeout->pipe[0] = timeout->pipe[1] = -1; + timeout->ts.tv_sec = 0; + timeout->ts.tv_nsec = 0; + check_pthread(pthread_mutex_init(&timeout->mutex, /*attr=*/NULL), + "start_timeout: pthread_mutex_init"); + check_pthread(pthread_cond_init(&timeout->cond, /*attr=*/NULL), + "start_timeout: pthread_cond_init"); + return timeout; } void delete_timeout(timeout_t *timeout) { - /* The read end of the pipe should have been closed by the timer - thread. */ - assert(timeout->pipe[0] == -1); - /* The write end of the pipe should have been closed by - clear_timer. */ - assert(timeout->pipe[1] == -1); - + check_pthread(pthread_cond_destroy(&timeout->cond), + "delete_timeout: pthread_cond_destroy"); + check_pthread(pthread_mutex_destroy(&timeout->mutex), + "delete_timeout: pthread_mutex_destroy"); + safe_free(timeout); } static void *timer_thread(void *arg) { timeout_t *timeout; - int fd; - fd_set readfds; timeout = (timeout_t *) arg; - fd = timeout->pipe[0]; - FD_ZERO(&readfds); - FD_SET(fd, &readfds); - - /* Watch the read end of the pipe until the timeout occurs. */ - switch (select(fd + 1, &readfds, - /*writefds=*/NULL, /*errorfds=*/NULL, - &timeout->tv)) { - case -1: - /* Error. */ - perror_fatal("timer_thread: select"); - break; - - case 0: - /* Timeout. */ + /* Get exclusive access to the state. */ + check_pthread(pthread_mutex_lock(&timeout->mutex), + "timer_thread: pthread_mutex_lock"); + /* It is theoretically possible that the timeout has already been + canceled by a quick call to clear_timeout. If so, we do not need + to wait. */ + if (timeout->state != TIMEOUT_CANCELED) { + int ret = pthread_cond_timedwait(&timeout->cond, &timeout->mutex, + &timeout->ts); + if (ret && ret != ETIMEDOUT) + perror_fatal_code("timer_thread: pthread_cond_timedwait", ret); + } + + /* If the timeout wasn't canceled, then the timeout expired. */ + if (timeout->state != TIMEOUT_CANCELED) { timeout->state = TIMEOUT_FIRED; timeout->handler(timeout->param); - break; - - case 1: - /* Canceled. */ - assert(FD_ISSET(fd, &readfds)); - timeout->state = TIMEOUT_CANCELED; - break; - - default: - assert(0); } - /* Close the read end of the pipe. */ - if (close(timeout->pipe[0]) == -1) - perror_fatal("timer_thread: close"); - timeout->pipe[0] = -1; + check_pthread(pthread_mutex_unlock(&timeout->mutex), + "timer_thread: pthread_mutex_unlock"); return NULL; } void start_timeout(timeout_t *timeout, uint32_t delay, timeout_handler_t handler, void *param) { - int ret; + struct timeval tv; assert(delay > 0 && timeout->state == TIMEOUT_READY && handler != NULL); timeout->state = TIMEOUT_ACTIVE; - timeout->tv.tv_sec = delay; - timeout->tv.tv_usec = 0; timeout->handler = handler; timeout->param = param; - if (pipe(timeout->pipe) == -1) - perror_fatal("start_timeout: pipe"); + /* Compute the desired stop time. */ + if (gettimeofday(&tv, /*tzp=*/NULL) == -1) + perror_fatal("start_timeout: gettimeofday"); + timeout->ts.tv_sec = tv.tv_sec + delay; + timeout->ts.tv_nsec = 1000 * tv.tv_usec; - ret = pthread_create(&timeout->thread, /*attr=*/NULL, timer_thread, timeout); - if (ret) - perror_fatal_code("start_timeout: pthread_create", ret); + check_pthread(pthread_create(&timeout->thread, /*attr=*/NULL, + timer_thread, timeout), + "start_timeout: pthread_create"); } void clear_timeout(timeout_t *timeout) { void *value; /* Tell the thread to exit. */ - if (close(timeout->pipe[1]) == -1) - perror_fatal("clear_timeout: close"); - timeout->pipe[1] = -1; + check_pthread(pthread_mutex_lock(&timeout->mutex), + "clear_timeout: pthread_mutex_lock"); + timeout->state = TIMEOUT_CANCELED; + check_pthread(pthread_mutex_unlock(&timeout->mutex), + "clear_timeout: pthread_mutex_unlock"); + check_pthread(pthread_cond_signal(&timeout->cond), + "clear_timeout: pthread_cond_signal"); /* Wait for the thread to exit. */ - if (pthread_join(timeout->thread, &value) == -1) - perror_fatal("clear_timeout: pthread_join"); + check_pthread(pthread_join(timeout->thread, &value), + "clear_timeout: pthread_join"); timeout->state = TIMEOUT_READY; } From 0dcd12f41197688f43924b2aabd0576fcef776a7 Mon Sep 17 00:00:00 2001 From: Ahmed <43099566+ahmed-irfan@users.noreply.github.com> Date: Fri, 22 Sep 2023 22:52:30 -0700 Subject: [PATCH 141/182] Update COMPILING --- doc/COMPILING | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/COMPILING b/doc/COMPILING index 1de49bd07..b8c0e5a1d 100644 --- a/doc/COMPILING +++ b/doc/COMPILING @@ -637,7 +637,7 @@ dynamic and static libraries in different locations: to GMP's configure script. This will build - /tools/static_gmp/lib/libgmp.a + /tools/static_gmp/lib/libgmp.dll.a and the corresponding 'gmp.h' will be in /tools/static_gmp/include. @@ -647,7 +647,7 @@ configure script so that it can find 'libgmp.a' in its nonstandard location and the corresponding 'gmp.h'. The best way to do this is to configure Yices using: - ./configure --with-static-gmp=/tools/static_gmp/lib/libgmp.a \ + ./configure --with-static-gmp=/tools/static_gmp/lib/libgmp.dll.a \ --with-static-gmp-include-dir=/tools/static_gmp/include From 618cbb3b5ea3511850e308be25a23be797c0523d Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Sat, 23 Sep 2023 00:41:08 -0700 Subject: [PATCH 142/182] Revert "Update COMPILING" This reverts commit 0dcd12f41197688f43924b2aabd0576fcef776a7. --- doc/COMPILING | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/COMPILING b/doc/COMPILING index b8c0e5a1d..1de49bd07 100644 --- a/doc/COMPILING +++ b/doc/COMPILING @@ -637,7 +637,7 @@ dynamic and static libraries in different locations: to GMP's configure script. This will build - /tools/static_gmp/lib/libgmp.dll.a + /tools/static_gmp/lib/libgmp.a and the corresponding 'gmp.h' will be in /tools/static_gmp/include. @@ -647,7 +647,7 @@ configure script so that it can find 'libgmp.a' in its nonstandard location and the corresponding 'gmp.h'. The best way to do this is to configure Yices using: - ./configure --with-static-gmp=/tools/static_gmp/lib/libgmp.dll.a \ + ./configure --with-static-gmp=/tools/static_gmp/lib/libgmp.a \ --with-static-gmp-include-dir=/tools/static_gmp/include From 706e87fd2216b00c6c7ea9fb5a4c567bb45afb0f Mon Sep 17 00:00:00 2001 From: Mark Mitchell Date: Sat, 23 Sep 2023 10:28:10 -0700 Subject: [PATCH 143/182] Simplify thread API checks. --- src/mt/threads.h | 14 +++++++++ src/mt/threads_posix.c | 33 +++++++++------------ src/mt/yices_locks_posix.c | 60 +++++++++++++++++-------------------- src/utils/timeout.c | 61 +++++++++++++++++--------------------- 4 files changed, 84 insertions(+), 84 deletions(-) diff --git a/src/mt/threads.h b/src/mt/threads.h index 9e293e5a9..9f4a40f12 100644 --- a/src/mt/threads.h +++ b/src/mt/threads.h @@ -22,6 +22,8 @@ #include #include +#include "utils/error.h" + /* the thread main */ #ifdef MINGW #define YICES_THREAD_ATTR __stdcall @@ -58,5 +60,17 @@ extern void mt_test_usage(int32_t argc, char* argv[]); extern yices_thread_result_t yices_thread_exit(void); +/* + * Wrap around a thread API call. If the API call indicates error, + * print the message, a description of the error, and exit. + */ +#ifndef MINGW +#define check_thread_api(expr, msg) (expr) +#else +static inline void check_thread_api(int expr, const char *msg) { + if (expr) + perror_fatal_code(msg, expr); +} +#endif #endif /* __THREADS_H */ diff --git a/src/mt/threads_posix.c b/src/mt/threads_posix.c index aa34dadeb..14d043aa4 100644 --- a/src/mt/threads_posix.c +++ b/src/mt/threads_posix.c @@ -26,7 +26,7 @@ #include "utils/error.h" void launch_threads(int32_t nthreads, void* extras, size_t extra_sz, const char* test, yices_thread_main_t thread_main, bool verbose){ - int32_t retcode, thread; + int32_t thread; char buff[1024]; thread_data_t* tdata = (thread_data_t*)calloc(nthreads, sizeof(thread_data_t)); @@ -48,15 +48,12 @@ void launch_threads(int32_t nthreads, void* extras, size_t extra_sz, const char* /* Give child threads the same stack size as the main thread. */ if (getrlimit(RLIMIT_STACK, &rlp) == -1) perror_fatal("launch_threads: getrlimit"); - retcode = pthread_attr_init(&attr); - if (retcode == -1) - perror_fatal_code("launch_threads: pthread_attr_init", retcode); - retcode = pthread_attr_getstacksize(&attr, &stacksize); - if (retcode == -1) - perror_fatal_code("launch_threads: pthread_attr_getstacksize", retcode); - retcode = pthread_attr_setstacksize(&attr, rlp.rlim_cur); - if (retcode == -1) - perror_fatal_code("launch_threads: pthread_attr_setstacksize", retcode); + check_thread_api(pthread_attr_init(&attr), + "launch_threads: pthread_attr_init"); + check_thread_api(pthread_attr_getstacksize(&attr, &stacksize), + "launch_threads: pthread_attr_getstacksize"); + check_thread_api(pthread_attr_setstacksize(&attr, rlp.rlim_cur), + "launch_threads: pthread_attr_setstacksize"); for(thread = 0; thread < nthreads; thread++){ snprintf(buff, 1024, "/tmp/%s_%d.txt", test, thread); @@ -71,14 +68,13 @@ void launch_threads(int32_t nthreads, void* extras, size_t extra_sz, const char* if(tdata[thread].output == NULL) perror_fatal("launch_threads: fopen"); - retcode = pthread_create(&tids[thread], &attr, thread_main, &tdata[thread]); - if(retcode) - perror_fatal_code("launch_threads: pthread_create", retcode); + check_thread_api(pthread_create(&tids[thread], &attr, thread_main, + &tdata[thread]), + "launch_threads: pthread_create"); } - retcode = pthread_attr_destroy(&attr); - if (retcode) - perror_fatal_code("launch_threads: pthread_attr_destroy", retcode); + check_thread_api(pthread_attr_destroy(&attr), + "launch_threads: pthread_attr_destroy"); if(verbose){ @@ -87,9 +83,8 @@ void launch_threads(int32_t nthreads, void* extras, size_t extra_sz, const char* for(thread = 0; thread < nthreads; thread++){ - retcode = pthread_join(tids[thread], NULL); - if(retcode) - perror_fatal_code("launch_threads: pthread_join", retcode); + check_thread_api(pthread_join(tids[thread], NULL), + "launch_threads: pthread_join"); fclose(tdata[thread].output); } diff --git a/src/mt/yices_locks_posix.c b/src/mt/yices_locks_posix.c index 827e7f584..a84f00f84 100644 --- a/src/mt/yices_locks_posix.c +++ b/src/mt/yices_locks_posix.c @@ -23,6 +23,7 @@ #include #include "yices_locks.h" +#include "threads.h" static void print_error(const char *caller, const char *syscall, int errnum) { char buffer[64]; @@ -33,27 +34,29 @@ static void print_error(const char *caller, const char *syscall, int errnum) { } int32_t create_yices_lock(yices_lock_t* lock){ - int32_t retcode; + pthread_mutexattr_t *mattr = NULL; + #ifndef NDEBUG + /* Make the mutex detect recursive locks. */ pthread_mutexattr_t mta; - pthread_mutexattr_t *mattr = &mta; -#else - pthread_mutexattr_t *mattr = NULL; + + mattr = &mta; + + check_thread_api(pthread_mutexattr_init(mattr), + "create_yices_lock: pthread_mutexattr_init"); + check_thread_api(pthread_mutexattr_settype(mattr, + PTHREAD_MUTEX_ERRORCHECK), + "create_yices_lock: pthread_mutextattr_settype"); #endif + check_thread_api(pthread_mutex_init(lock, mattr), + "create_yices_lock: pthread_mutex_init"); + #ifndef NDEBUG - retcode = pthread_mutexattr_init(mattr); - if(retcode) - print_error("create_yices_lock", "pthread_mutexattr_init", retcode); - retcode = pthread_mutexattr_settype(mattr, PTHREAD_MUTEX_ERRORCHECK); - if(retcode) - print_error("create_yices_lock", "pthread_mutextattr_settype", retcode); + check_thread_api(pthread_mutexattr_destroy(mattr) #endif - retcode = pthread_mutex_init(lock, mattr); - if(retcode) - print_error("create_yices_lock", "pthread_mutex_init", retcode); - assert(retcode == 0); - return retcode; + + return 0; } int32_t try_yices_lock(yices_lock_t* lock){ @@ -71,27 +74,20 @@ int32_t try_yices_lock(yices_lock_t* lock){ int32_t get_yices_lock(yices_lock_t* lock){ - int32_t retcode = pthread_mutex_lock(lock); - if(retcode){ - print_error("get_yices_lock", "pthread_mutex_lock", retcode); - } - assert(retcode == 0); - return retcode; + check_thread_api(pthread_mutex_lock(lock), + "get_yices_lock: pthread_mutex_lock"); + + return 0; } int32_t release_yices_lock(yices_lock_t* lock){ - int32_t retcode = pthread_mutex_unlock(lock); - if(retcode){ - print_error("release_yices_lock", "pthread_mutex_unlock", retcode); - } - assert(retcode == 0); - return retcode; + check_thread_api(pthread_mutex_unlock(lock), + "release_yices_lock: pthread_mutex_unlock"); + + return 0; } void destroy_yices_lock(yices_lock_t* lock){ - int32_t retcode = pthread_mutex_destroy(lock); - if(retcode){ - print_error("destroy_yices_lock", "pthread_mutex_destroy", retcode); - } - assert(retcode == 0); + check_thread_api(pthread_mutex_destroy(lock), + "destroy_yices_lock: pthread_mutex_destroy"); } diff --git a/src/utils/timeout.c b/src/utils/timeout.c index 00ae7ffc3..169e575b1 100644 --- a/src/utils/timeout.c +++ b/src/utils/timeout.c @@ -43,16 +43,16 @@ */ #include +#if !defined(MINGW) && defined(THREAD_SAFE) +#include +#include +#endif #include "utils/error.h" #include "utils/memalloc.h" #include "utils/timeout.h" #include "yices_exit_codes.h" -#if !defined(MINGW) && defined(THREAD_SAFE) -#include -#endif - /* * Timeout state: * - NOT_READY: initial state and after call to delete_timeout @@ -108,12 +108,7 @@ static timeout_t the_timeout; #ifdef THREAD_SAFE -#include - -static inline void check_pthread(int err, const char *msg) { - if (err) - perror_fatal_code(msg, err); -} +#include "mt/threads.h" timeout_t *init_timeout(void) { timeout_t *timeout; @@ -126,19 +121,19 @@ timeout_t *init_timeout(void) { timeout->ts.tv_sec = 0; timeout->ts.tv_nsec = 0; - check_pthread(pthread_mutex_init(&timeout->mutex, /*attr=*/NULL), - "start_timeout: pthread_mutex_init"); - check_pthread(pthread_cond_init(&timeout->cond, /*attr=*/NULL), - "start_timeout: pthread_cond_init"); + check_thread_api(pthread_mutex_init(&timeout->mutex, /*attr=*/NULL), + "start_timeout: pthread_mutex_init"); + check_thread_api(pthread_cond_init(&timeout->cond, /*attr=*/NULL), + "start_timeout: pthread_cond_init"); return timeout; } void delete_timeout(timeout_t *timeout) { - check_pthread(pthread_cond_destroy(&timeout->cond), - "delete_timeout: pthread_cond_destroy"); - check_pthread(pthread_mutex_destroy(&timeout->mutex), - "delete_timeout: pthread_mutex_destroy"); + check_thread_api(pthread_cond_destroy(&timeout->cond), + "delete_timeout: pthread_cond_destroy"); + check_thread_api(pthread_mutex_destroy(&timeout->mutex), + "delete_timeout: pthread_mutex_destroy"); safe_free(timeout); } @@ -149,8 +144,8 @@ static void *timer_thread(void *arg) { timeout = (timeout_t *) arg; /* Get exclusive access to the state. */ - check_pthread(pthread_mutex_lock(&timeout->mutex), - "timer_thread: pthread_mutex_lock"); + check_thread_api(pthread_mutex_lock(&timeout->mutex), + "timer_thread: pthread_mutex_lock"); /* It is theoretically possible that the timeout has already been canceled by a quick call to clear_timeout. If so, we do not need to wait. */ @@ -167,8 +162,8 @@ static void *timer_thread(void *arg) { timeout->handler(timeout->param); } - check_pthread(pthread_mutex_unlock(&timeout->mutex), - "timer_thread: pthread_mutex_unlock"); + check_thread_api(pthread_mutex_unlock(&timeout->mutex), + "timer_thread: pthread_mutex_unlock"); return NULL; } @@ -188,26 +183,26 @@ void start_timeout(timeout_t *timeout, uint32_t delay, timeout_handler_t handler timeout->ts.tv_sec = tv.tv_sec + delay; timeout->ts.tv_nsec = 1000 * tv.tv_usec; - check_pthread(pthread_create(&timeout->thread, /*attr=*/NULL, - timer_thread, timeout), - "start_timeout: pthread_create"); + check_thread_api(pthread_create(&timeout->thread, /*attr=*/NULL, + timer_thread, timeout), + "start_timeout: pthread_create"); } void clear_timeout(timeout_t *timeout) { void *value; /* Tell the thread to exit. */ - check_pthread(pthread_mutex_lock(&timeout->mutex), - "clear_timeout: pthread_mutex_lock"); + check_thread_api(pthread_mutex_lock(&timeout->mutex), + "clear_timeout: pthread_mutex_lock"); timeout->state = TIMEOUT_CANCELED; - check_pthread(pthread_mutex_unlock(&timeout->mutex), - "clear_timeout: pthread_mutex_unlock"); - check_pthread(pthread_cond_signal(&timeout->cond), - "clear_timeout: pthread_cond_signal"); + check_thread_api(pthread_mutex_unlock(&timeout->mutex), + "clear_timeout: pthread_mutex_unlock"); + check_thread_api(pthread_cond_signal(&timeout->cond), + "clear_timeout: pthread_cond_signal"); /* Wait for the thread to exit. */ - check_pthread(pthread_join(timeout->thread, &value), - "clear_timeout: pthread_join"); + check_thread_api(pthread_join(timeout->thread, &value), + "clear_timeout: pthread_join"); timeout->state = TIMEOUT_READY; } From 0069a787cf6b0f71bb14f1c005d0999dde24132e Mon Sep 17 00:00:00 2001 From: Mark Mitchell Date: Sat, 23 Sep 2023 10:52:23 -0700 Subject: [PATCH 144/182] Fix typo in non-THREAD_SAFE code. --- src/utils/timeout.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/utils/timeout.c b/src/utils/timeout.c index 169e575b1..a70b9ce54 100644 --- a/src/utils/timeout.c +++ b/src/utils/timeout.c @@ -289,12 +289,12 @@ void clear_timeout(timeout_t *timeout) { assert(timeout == &the_timeout); // TODO: Check whether we should block the signals here? - if (the_timeout->state == TIMEOUT_ACTIVE) { + if (the_timeout.state == TIMEOUT_ACTIVE) { // not fired; - the_timeout->state = TIMEOUT_CANCELED; + the_timeout.state = TIMEOUT_CANCELED; (void) alarm(0); // cancel the alarm } - the_timeout->state = TIMEOUT_READY; + the_timeout.state = TIMEOUT_READY; } @@ -306,11 +306,11 @@ void clear_timeout(timeout_t *timeout) { void delete_timeout(timeout_t *timeout) { assert(timeout == &the_timeout); - if (timeout->state == TIMEOUT_ACTIVE) { + if (the_timeout.state == TIMEOUT_ACTIVE) { (void) alarm(0); } (void) signal(SIGALRM, saved_handler); - timeout->state = TIMEOUT_NOT_READY; + the_timeout.state = TIMEOUT_NOT_READY; } #endif /* defined(THREAD_SAFE) */ From a7cf045a357e325286da1563a27b338069ce1270 Mon Sep 17 00:00:00 2001 From: Mark Mitchell Date: Sat, 23 Sep 2023 10:56:05 -0700 Subject: [PATCH 145/182] Undo unnecessary changes. --- src/utils/timeout.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/utils/timeout.c b/src/utils/timeout.c index a70b9ce54..3a5812b3a 100644 --- a/src/utils/timeout.c +++ b/src/utils/timeout.c @@ -263,9 +263,9 @@ timeout_t *init_timeout(void) { void start_timeout(timeout_t *timeout, uint32_t delay, timeout_handler_t handler, void *param) { assert(timeout == &the_timeout); assert(delay > 0 && timeout->state == TIMEOUT_READY && handler != NULL); - timeout->state = TIMEOUT_ACTIVE; - timeout->handler = handler; - timeout->param = param; + the_timeout.state = TIMEOUT_ACTIVE; + the_timeout.handler = handler; + the_timeout.param = param; #ifdef SOLARIS saved_handler = signal(SIGALRM, alarm_handler); From dddb30f504d8b993e541f6b581529c6ea3d54218 Mon Sep 17 00:00:00 2001 From: Mark Mitchell Date: Sat, 23 Sep 2023 10:57:40 -0700 Subject: [PATCH 146/182] Undo unncessary change. --- src/utils/timeout.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/utils/timeout.c b/src/utils/timeout.c index 3a5812b3a..80518f5bd 100644 --- a/src/utils/timeout.c +++ b/src/utils/timeout.c @@ -262,7 +262,7 @@ timeout_t *init_timeout(void) { */ void start_timeout(timeout_t *timeout, uint32_t delay, timeout_handler_t handler, void *param) { assert(timeout == &the_timeout); - assert(delay > 0 && timeout->state == TIMEOUT_READY && handler != NULL); + assert(delay > 0 && the_timeout.state == TIMEOUT_READY && handler != NULL); the_timeout.state = TIMEOUT_ACTIVE; the_timeout.handler = handler; the_timeout.param = param; From d704c3acd2a063825809a02f42a03f8308eb6d24 Mon Sep 17 00:00:00 2001 From: Mark Mitchell Date: Sat, 23 Sep 2023 11:13:12 -0700 Subject: [PATCH 147/182] Fix typo. --- src/mt/yices_locks_posix.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mt/yices_locks_posix.c b/src/mt/yices_locks_posix.c index a84f00f84..4ab6e1665 100644 --- a/src/mt/yices_locks_posix.c +++ b/src/mt/yices_locks_posix.c @@ -53,7 +53,7 @@ int32_t create_yices_lock(yices_lock_t* lock){ "create_yices_lock: pthread_mutex_init"); #ifndef NDEBUG - check_thread_api(pthread_mutexattr_destroy(mattr) + check_thread_api(pthread_mutexattr_destroy(mattr)); #endif return 0; From 88e46491182753b7023c87e4de55bc821f3be9ba Mon Sep 17 00:00:00 2001 From: Mark Mitchell Date: Sat, 23 Sep 2023 11:21:54 -0700 Subject: [PATCH 148/182] Fix typo. --- src/mt/yices_locks_posix.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/mt/yices_locks_posix.c b/src/mt/yices_locks_posix.c index 4ab6e1665..821b809df 100644 --- a/src/mt/yices_locks_posix.c +++ b/src/mt/yices_locks_posix.c @@ -53,7 +53,8 @@ int32_t create_yices_lock(yices_lock_t* lock){ "create_yices_lock: pthread_mutex_init"); #ifndef NDEBUG - check_thread_api(pthread_mutexattr_destroy(mattr)); + check_thread_api(pthread_mutexattr_destroy(mattr), + "create_yices_lock: pthread_mutexattr_destroy"); #endif return 0; From c5d57533fc1b75315125572d6abbd7ffc0bfb119 Mon Sep 17 00:00:00 2001 From: Mark Mitchell Date: Tue, 26 Sep 2023 09:14:05 -0700 Subject: [PATCH 149/182] Remove extra factor of 4. (#458) Co-authored-by: Mark Mitchell --- src/mcsat/bv/explain/arith_norm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mcsat/bv/explain/arith_norm.c b/src/mcsat/bv/explain/arith_norm.c index d78d31f10..4ef1c7e6c 100644 --- a/src/mcsat/bv/explain/arith_norm.c +++ b/src/mcsat/bv/explain/arith_norm.c @@ -796,7 +796,7 @@ term_t arith_normalise_upto(arith_norm_t* norm, term_t u, uint32_t w){ term_t *preproc[4]; for (int i = 0; i < 4; i ++) - preproc[i] = (term_t *) safe_malloc(4 * w * sizeof(term_t)); + preproc[i] = (term_t *) safe_malloc(w * sizeof(term_t)); // We initialise the hashmap fix_htbl_init(preproc[0], w); From 7bdddbeadbd291f6a0bddaa47b52092476980e31 Mon Sep 17 00:00:00 2001 From: Ahmed <43099566+ahmed-irfan@users.noreply.github.com> Date: Wed, 12 Jul 2023 18:06:48 -0700 Subject: [PATCH 150/182] Update NOTES -- fix typo --- doc/NOTES | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/NOTES b/doc/NOTES index 9935b46f2..d572d5647 100644 --- a/doc/NOTES +++ b/doc/NOTES @@ -34,7 +34,7 @@ The source code is organized as follows: src/solvers: CDCL-based SAT solvers + theory solvers - src/mcsat: MCSAT baded solvers and plugins + src/mcsat: MCSAT-based solvers and plugins src/context: Support for creating and manipulating contexts and for simplification and preprocessing of assertions. From 7f0ebab9e364f6fb822346b0b8bd9559b31e4e8f Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Sat, 8 Jul 2023 03:40:36 -0700 Subject: [PATCH 151/182] install guide for kissat --- doc/sphinx/source/install-sources.rst | 44 ++++++++++++++++++++++----- 1 file changed, 36 insertions(+), 8 deletions(-) diff --git a/doc/sphinx/source/install-sources.rst b/doc/sphinx/source/install-sources.rst index b7f231092..a2121268c 100644 --- a/doc/sphinx/source/install-sources.rst +++ b/doc/sphinx/source/install-sources.rst @@ -177,14 +177,18 @@ Third-Party SAT Solvers ----------------------- Yices can use third-party SAT solvers as backends to the bit-vector -solvers. We call these *delegates*. Currently two third-party solvers -are supported +solvers. Currently one internal and three third-party solvers are +supported -1. Armin Biere's `CaDiCal `_ +1. Internal y2sat SAT solver (default solver) -2. Mate Soos' `CryptoMiniSAT `_ +2. Armin Biere's `CaDiCal `_ -You can compile Yices with one or both of these SAT solvers. +3. Mate Soos' `CryptoMiniSAT `_ + +4. Armin Biere's `Kissat (patched version) `_ + +You can also compile Yices with any of these SAT solvers. Install CaDiCaL ............... @@ -235,16 +239,34 @@ This will install CryptoMiniSAT in ``/usr/local/``. There are more detailed build instructions in the CryptoMiniSAT ``README``. +Install Kissat +.............. + +We provide a patched version of Kissat that fixes an issue. Download +this patched version at https://github.com/BrunoDutertre/kissat. The +original is at https://github.com/arminbiere/kissat. To compile the +code, follow these instructions: + +.. code-block:: sh + + git clone https://github.com/BrunoDutertre/kissat + cd kissat + ./configure -fPIC + make + sudo install build/libkissat.a /usr/local/lib + sudo install -m644 src/kissat.h /usr/local/include + + Configure and Build Yices with Third-Party Solvers .................................................. -To build Yices with support for both CaDiCaL and CryptoMiniSAT, use the following +To build Yices with support for all third-party solvers, use the following configure command in the top-level yices source directory: .. code-block:: sh - ./configure CPPFLAGS='-DHAVE_CADICAL -DHAVE_CRYPTOMINISAT' \ - LIBS=’-lcryptominisat5 -lcadical -lstdc++ -lm’ + ./configure CPPFLAGS='-DHAVE_CADICAL -DHAVE_CRYPTOMINISAT -DHAVE_KISSAT' \ + LIBS=’-lcryptominisat5 -lcadical -lkissat -lstdc++ -lm’ If you want only CaDiCaL: @@ -258,6 +280,12 @@ If you want only CryptoMiniSAT: ./configure CPPFLAGS=-DHAVE_CRYPTOMINISAT LIBS=’-lcryptominisat5 -lstdc++’ +If you want only Kissat, use this command: + +.. code-block:: sh + + ./configure CPPFLAGS=-DHAVE_KISSAT LIBS=’-lkissat -lm’ + After any of these ``configure`` commands, you can build Yices as usual: .. code-block:: sh From b6e27f33f8273eab2eb8b20d7480f1ca7d6ed393 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Sun, 9 Jul 2023 13:22:37 -0700 Subject: [PATCH 152/182] add missing EF errors --- doc/sphinx/source/api-types.rst | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/doc/sphinx/source/api-types.rst b/doc/sphinx/source/api-types.rst index c2e80456a..e0194090a 100644 --- a/doc/sphinx/source/api-types.rst +++ b/doc/sphinx/source/api-types.rst @@ -1014,6 +1014,22 @@ Error Reports Attempt to use a delegate that was not included in the Yices library at compilation time. + .. c:enum:: CTX_EF_ASSERTIONS_CONTAIN_UF + + Uninterpreted functions not supported by the exists/forall solver. + + .. c:enum:: CTX_EF_NOT_EXISTS_FORALL + + Assertions are not in the exists/forall fragment. + + .. c:enum:: CTX_EF_HIGH_ORDER_VARS + + High-order and tuple variables are not supported. + + .. c:enum:: CTX_EF_INTERNAL_ERROR + + The exists/forall solver failed. + .. c:enum:: CTX_INVALID_CONFIG Reported by :c:func:`yices_new_context` if the requested From 504851e958738ad6d539b436d06ab4c8e6312fee Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Tue, 11 Jul 2023 14:52:32 -0700 Subject: [PATCH 153/182] interpolats in the context doc --- doc/sphinx/source/context-operations.rst | 189 ++++++++++++++++++++++- 1 file changed, 183 insertions(+), 6 deletions(-) diff --git a/doc/sphinx/source/context-operations.rst b/doc/sphinx/source/context-operations.rst index c918c7f1e..364e3b0fa 100644 --- a/doc/sphinx/source/context-operations.rst +++ b/doc/sphinx/source/context-operations.rst @@ -111,8 +111,8 @@ If you configure a context for a logic such as ``"QF_NRA"`` or ``"QF_UFNIA"`` then MCSat will be automatically selected. The MCSat solver does not currently support as many features as the -DPLL(T) implementation. In particular, MCSat does not yet support push -and pop. +DPLL(T) implementation. In particular, MCSat does not yet support +computing unsat cores. **Theory Solvers** @@ -222,14 +222,12 @@ each call to :c:func:`yices_check_context`. This introduces overhead, but the context can be restored to a clean state if the search is interrupted. -Currently, MCSat supports only mode one-shot. - For DPLL(T), the four operating modes can be used, except if a Floyd-Warshal theory solver is used. The Floyd-Warshal solvers are specialized for difference logic and support only mode one-shot. -The default mode is push-pop for DPLL(T) and one-shot for MCSat. +The default mode is push-pop. @@ -842,7 +840,6 @@ returns the core in a term vector. A full example is in file :file:`examples/example_unsat_core.c` included in the Yices distribution. - .. c:function:: smt_status_t yices_check_context_with_assumptions(context_t* ctx, const param_t* params, uint32_t n, const term_t t[]) Checks whether *n* assumptions are satisfiable in a context *ctx*. @@ -935,6 +932,186 @@ distribution. +Check Modulo a Model and Model Interpolant +------------------------------------------ + +When checking satisfiability, it is possible to provide a partial +model such that the satisfiability is checked for the assertions in +conjunction with the provided model. To use this functionality, the +context must be a context initialized with support for MCSAT (see +yices_new_context, yices_new_config, yices_set_config). +Here is an example:: + + ctx_config_t* config = yices_new_config(); + yices_set_config(config, "solver-type", "mcsat"); + context_t *ctx = yices_new_context(config); + yices_assert_formula(ctx, f); + status = yices_check_context_with_model(ctx, NULL, model, 5, a); + +In this fragment, we first create a yices configuration ``config`` +then we set its parameter ``solver-type`` to ``mcsat``. Then, we +create a context ``ctx`` using ``config``. After that we assert a +formula ``f``. In the call to check, we give an array of five +uninterpreted terms ``a[0]``, ..., ``a[4]``. This amounts to checking +the conjunction of ``f`` and the equalities between the unintpreted +terms and their value in the ``model``. + +The check modulo a model provides an additional functionality, namely, +the construction of a model interpolant, if the yices context is +unsatisfiable and supports model interpolation (see +yices_set_config). This model interpolant is constructed by calling +:c:func:`yices_get_model_interpolant`. + + +.. c:function:: smt_status_t yices_check_context_with_model(context_t* ctx, const param_t* params, model_t *mdl, uint32_t n, const term_t t[]) + + Checks whether *n* assumptions are satisfiable in a context *ctx*. + + **Parameters** + + - *ctx* is a context + + - *params* is an optional structure to a search-parameter structure. + + - *mdl* is a model + + - *n* is the number of assumptions + + - *t* is an array of *n* uninterpreted terms + + The *params* structure controls search heuristics. If *params* is NULL, default + settings are used. See :ref:`params` and :c:func:`yices_check_context`. + + This function checks statisfiability of the constraints in ctx + conjoined with a conjunction of equalities defined by *t[i]* and the + model, namely, + + *t[0] == v_0 /\ .... /\ t[n-1] = v_{n-1}*, + + where *v_i* is the value of *t[i]* in *mdl*. + + NOTE: if *t[i]* does not have a value in *mdl*, then a default value is + picked for *v_i*. + + If this function returns STATUS_UNSAT and the context supports + model interpolation, then one can construct a model interpolant by + calling function :c:func:`yices_get_model_interpolant`. + + More precisely: + + - If *ctx*'s current status is :c:enum:`STATUS_UNSAT` then the function does nothing + and returns :c:enum:`STATUS_UNSAT`. + + - If *ctx*'s status is :c:enum:`STATUS_IDLE`, :c:enum:`STATUS_SAT`, + or :c:enum:`STATUS_UNKNOWN` then the function checks whether + *ctx* conjoined with the *n* equalities given by *mdl* and *t* is + satisfiable. This is done even if *n* is zero. The function will + then return a code as in :c:func:`yices_check_context`. + + - If *ctx*'status is anything else, the function returns :c:enum:`STATUS_ERROR`. + + + This operation fails and returns :c:enum:`STATUS_ERROR` if *ctx* is + configured for one-shot solving and *ctx*'s status is anything + other than :c:enum:`STATUS_IDLE`. + + **Error report** + + - If one of the terms *t[i]* is not an uninterpreted: + + -- error code: :c:enum:`MCSAT_ERROR_ASSUMPTION_TERM_NOT_SUPPORTED` + + - If the context does not have the MCSAT solver enabled: + + -- error code: :c:enum:`CTX_OPERATION_NOT_SUPPORTED` + + - If the resulting status is :c:enum:`STATUS_SAT` and context does not support multichecks: + + -- error code: :c:enum:`CTX_OPERATION_NOT_SUPPORTED` + +.. c:function:: term_t yices_get_model_interpolant(context_t* ctx) + + Construct and return a model interpolant. + + **Parameters** + + - *ctx* is a context + + + If *ctx* status is unsat and the context was configured with model-interpolation, + this function returns a model interpolant. + Otherwise, it sets an error code and return NULL_TERM. + + This is intended to be used after a call to + :c:func:`yices_check_context_with_model` that returned + :c:enum:`STATUS_UNSAT`. In this case, the function builds an model + interpolant. The model interpolant is a clause implied by the + current context that is false in the model provides to + :c:func:`yices_check_context_with_model`. + + **Error report** + + - If the context is not configured with model interpolation: + + -- error code: :c:enum:`CTX_OPERATION_NOT_SUPPORTED` + + - If the context's status is not :c:enum:`STATUS_UNSAT`: + + -- error code: :c:enum:`CTX_INVALID_OPERATION` + + +Check and Compute Interpolant +----------------------------- + +It is possible to check assertions and compute an interpolant if the +assertions are unsatisfiable. This functionality requires having two +contexts that are stored in a *interpolation_context*. The +*interpolation_context* is a struct with four components defined +as follows:: + + typedef struct interpolation_context_s { + context_t *ctx_A; + context_t *ctx_B; + term_t interpolant; + model_t *model; + } interpolation_context_t; + + +.. c:function:: smt_status_t yices_check_context_with_interpolation(interpolation_context_t *ctx, const param_t *params, int32_t build_model) + + Check satisfiability and compute interpolant. + + **Parameters** + + - *ctx* is a interpolation context + + - *params* is an optional structure to a search-parameter structure. + + - *build_model* is a Boolean flag + + The *params* structure controls search heuristics. If *params* is NULL, default + settings are used. See :ref:`params` and :c:func:`yices_check_context`. + + To call this function: + + - *ctx->ctx_A* must be a context initialized with support for MCSAT and interpolation. + + - *ctx->ctx_B* can be another context (not necessarily with MCSAT support). + + If this function returns :c:enum:`STATUS_UNSAT`, then an + interpolant is returned in *ctx->interpolant*. + + If this function returns :c:enum:`STATUS_SAT` and *build_model* is + true, then a model is returned in *ctx->model*. This model must be + freed when no-longer needed by calling :c:func:`yices_free_model`. + + **Error report** + + - If something is wrong: + + -- error code: :c:enum:`CTX_INVALID_OPERATION` + + .. _params: Search Parameters From dc3c6c745e20e0146b380e15958f288c0a8f7f34 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Wed, 12 Jul 2023 18:04:21 -0700 Subject: [PATCH 154/182] rm push/pop comment about mcsat --- src/include/yices.h | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/include/yices.h b/src/include/yices.h index 851db6003..49f8fb94f 100644 --- a/src/include/yices.h +++ b/src/include/yices.h @@ -2654,8 +2654,7 @@ __YICES_DLLSPEC__ extern void yices_garbage_collect(const term_t t[], uint32_t n * - mcsat: solver based on the Model-Constructing Satisfiability Calculus * * The "mcsat" solver is required for formulas that use non-linear - * arithmetic. Currently the mcsat solver does not support push and - * pop. If you select "mcsat" as the solver type, no other + * arithmetic. If you select "mcsat" as the solver type, no other * configuration is necessary. * * If you select "dpllt" as the solver type, then you can define the From 3379f6eb9d3acad826530c0c76300e193ea1667a Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Mon, 17 Jul 2023 04:38:30 -0700 Subject: [PATCH 155/182] add comment about mcsat unsat cores --- doc/sphinx/source/context-operations.rst | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/doc/sphinx/source/context-operations.rst b/doc/sphinx/source/context-operations.rst index 364e3b0fa..f1e2a6c02 100644 --- a/doc/sphinx/source/context-operations.rst +++ b/doc/sphinx/source/context-operations.rst @@ -112,7 +112,9 @@ then MCSat will be automatically selected. The MCSat solver does not currently support as many features as the DPLL(T) implementation. In particular, MCSat does not yet support -computing unsat cores. +computing unsat cores. However, unsat cores in MCSat can be computed +using :c:func:`yices_check_context_with_model` and +:c:func:`yices_get_model_interpolant`. **Theory Solvers** From 77b2a3d3b606a42f891efb60a6a3e2253502a5bd Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Mon, 17 Jul 2023 04:40:55 -0700 Subject: [PATCH 156/182] fix typo --- doc/sphinx/source/context-operations.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/sphinx/source/context-operations.rst b/doc/sphinx/source/context-operations.rst index f1e2a6c02..d64598a09 100644 --- a/doc/sphinx/source/context-operations.rst +++ b/doc/sphinx/source/context-operations.rst @@ -876,7 +876,7 @@ distribution. with the *n* assumptions is satisfiable. This is done even if *n* is zero. The function will then return a code as in :c:func:`yices_check_context`. - - If *ctx*'status is anything else, the function returns :c:enum:`STATUS_ERROR`. + - If *ctx*'s status is anything else, the function returns :c:enum:`STATUS_ERROR`. This operation fails and returns :c:enum:`STATUS_ERROR` if *ctx* is From 378b83060012f01bdd83d0e477bf10072210d7b6 Mon Sep 17 00:00:00 2001 From: Ahmed <43099566+ahmed-irfan@users.noreply.github.com> Date: Mon, 17 Jul 2023 14:37:20 -0700 Subject: [PATCH 157/182] fix typo --- doc/sphinx/source/context-operations.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/sphinx/source/context-operations.rst b/doc/sphinx/source/context-operations.rst index d64598a09..c1eb7f583 100644 --- a/doc/sphinx/source/context-operations.rst +++ b/doc/sphinx/source/context-operations.rst @@ -1010,7 +1010,7 @@ yices_set_config). This model interpolant is constructed by calling satisfiable. This is done even if *n* is zero. The function will then return a code as in :c:func:`yices_check_context`. - - If *ctx*'status is anything else, the function returns :c:enum:`STATUS_ERROR`. + - If *ctx*'s status is anything else, the function returns :c:enum:`STATUS_ERROR`. This operation fails and returns :c:enum:`STATUS_ERROR` if *ctx* is From 49dd02cdeefb0173e0a446b5bfeb42f219b17ec7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?St=C3=A9phane=20Graham-Lengrand?= Date: Tue, 8 Aug 2023 11:43:12 -0700 Subject: [PATCH 158/182] Update yices.h Expanded the text about modes in MCSAT. --- src/include/yices.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/include/yices.h b/src/include/yices.h index 49f8fb94f..b2b369278 100644 --- a/src/include/yices.h +++ b/src/include/yices.h @@ -2655,7 +2655,7 @@ __YICES_DLLSPEC__ extern void yices_garbage_collect(const term_t t[], uint32_t n * * The "mcsat" solver is required for formulas that use non-linear * arithmetic. If you select "mcsat" as the solver type, no other - * configuration is necessary. + * configuration is necessary (incremental and push-pop usages are enabled). * * If you select "dpllt" as the solver type, then you can define the * combination of theory solvers you want to include. From ecd4b6c858b3fd28b8a644c8076739b4430391bd Mon Sep 17 00:00:00 2001 From: Ahmed <43099566+ahmed-irfan@users.noreply.github.com> Date: Tue, 5 Sep 2023 15:49:57 -0700 Subject: [PATCH 159/182] fix assertion violation in uf_plugin model (#446) --- src/mcsat/uf/uf_plugin.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/mcsat/uf/uf_plugin.c b/src/mcsat/uf/uf_plugin.c index e781b8972..b489e743a 100644 --- a/src/mcsat/uf/uf_plugin.c +++ b/src/mcsat/uf/uf_plugin.c @@ -892,10 +892,10 @@ void uf_plugin_build_model(plugin_t* plugin, model_t* model) { // Since we make functions when we see a new one, we also construct the last function if (app_terms.size > 0 && mappings.size > 0 && app_construct) { - type_t tau = get_function_application_type(terms, app_kind, app_f); + type_t tau = get_function_application_type(terms, prev_app_kind, prev_app_f); type_t range_tau = function_type_range(terms->types, tau); value_t f_value = vtbl_mk_function(vtbl, tau, mappings.size, mappings.data, vtbl_mk_default(terms->types, vtbl, range_tau)); - switch (app_kind) { + switch (prev_app_kind) { case ARITH_RDIV: vtbl_set_zero_rdiv(vtbl, f_value); break; From c34e047faddd8fc568a9107068d6d8ae36f72321 Mon Sep 17 00:00:00 2001 From: Mark Mitchell Date: Thu, 21 Sep 2023 12:54:47 -0700 Subject: [PATCH 160/182] Correct debug code. --- src/mt/yices_locks_posix.c | 46 ++++++++++++++++++++++---------------- 1 file changed, 27 insertions(+), 19 deletions(-) diff --git a/src/mt/yices_locks_posix.c b/src/mt/yices_locks_posix.c index cf63e99d4..827e7f584 100644 --- a/src/mt/yices_locks_posix.c +++ b/src/mt/yices_locks_posix.c @@ -20,30 +20,38 @@ #include #include #include +#include #include "yices_locks.h" -//I see NDEBUG and DEBUG in the code; which is it? -#ifdef DEBUG -static pthread_mutexattr_t mta; -static pthread_mutexattr_t* mattr = &mta; -#else -static pthread_mutexattr_t* mattr = NULL; -#endif +static void print_error(const char *caller, const char *syscall, int errnum) { + char buffer[64]; + strerror_r(errnum, buffer, sizeof(buffer)); + fprintf(stderr, "%s failed: %s returned %d: %s\n", caller, syscall, + errnum, buffer); +} int32_t create_yices_lock(yices_lock_t* lock){ int32_t retcode; -#ifdef DEBUG - retcode = pthread_mutexattr_settype(&mta, PTHREAD_MUTEX_ERRORCHECK); - if(retcode){ - fprintf(stderr, "create_yices_lock failed: pthread_mutexattr_settype returned %d\n", retcode); - } +#ifndef NDEBUG + pthread_mutexattr_t mta; + pthread_mutexattr_t *mattr = &mta; +#else + pthread_mutexattr_t *mattr = NULL; +#endif + +#ifndef NDEBUG + retcode = pthread_mutexattr_init(mattr); + if(retcode) + print_error("create_yices_lock", "pthread_mutexattr_init", retcode); + retcode = pthread_mutexattr_settype(mattr, PTHREAD_MUTEX_ERRORCHECK); + if(retcode) + print_error("create_yices_lock", "pthread_mutextattr_settype", retcode); #endif retcode = pthread_mutex_init(lock, mattr); - if(retcode){ - fprintf(stderr, "create_yices_lock failed: pthread_mutex_init returned %d\n", retcode); - } + if(retcode) + print_error("create_yices_lock", "pthread_mutex_init", retcode); assert(retcode == 0); return retcode; } @@ -54,7 +62,7 @@ int32_t try_yices_lock(yices_lock_t* lock){ if(retcode == EBUSY){ return 1; } else { - fprintf(stderr, "try_yices_lock failed: pthread_mutex_trylock returned %d\n", retcode); + print_error("try_yices_lock", "pthread_mutex_trylock", retcode); } return -1; } @@ -65,7 +73,7 @@ int32_t try_yices_lock(yices_lock_t* lock){ int32_t get_yices_lock(yices_lock_t* lock){ int32_t retcode = pthread_mutex_lock(lock); if(retcode){ - fprintf(stderr, "get_yices_lock failed: pthread_mutex_lock returned %d\n", retcode); + print_error("get_yices_lock", "pthread_mutex_lock", retcode); } assert(retcode == 0); return retcode; @@ -74,7 +82,7 @@ int32_t get_yices_lock(yices_lock_t* lock){ int32_t release_yices_lock(yices_lock_t* lock){ int32_t retcode = pthread_mutex_unlock(lock); if(retcode){ - fprintf(stderr, "release_yices_lock failed: pthread_mutex_unlock returned %d\n", retcode); + print_error("release_yices_lock", "pthread_mutex_unlock", retcode); } assert(retcode == 0); return retcode; @@ -83,7 +91,7 @@ int32_t release_yices_lock(yices_lock_t* lock){ void destroy_yices_lock(yices_lock_t* lock){ int32_t retcode = pthread_mutex_destroy(lock); if(retcode){ - fprintf(stderr, "destroy_yices_lock failed: pthread_mutex_destroy returned %d\n", retcode); + print_error("destroy_yices_lock", "pthread_mutex_destroy", retcode); } assert(retcode == 0); } From ebb3a1f1d885a608e4bfb62bdbabc20f1f2e266d Mon Sep 17 00:00:00 2001 From: Mark Mitchell Date: Thu, 21 Sep 2023 18:03:30 -0700 Subject: [PATCH 161/182] Avoid deadlocks in MC-SAT. --- configure.ac | 4 ---- src/api/yices_api.c | 25 ++++++++++++------------- src/api/yices_api_lock_free.h | 9 ++++++++- src/context/context.c | 6 +++++- src/mcsat/bv/bv_explainer.c | 5 +++-- src/mcsat/bv/bv_utils.h | 7 ++++--- src/mcsat/bv/explain/eq_ext_con.c | 3 ++- src/mcsat/bv/explain/full_bv_sat.c | 8 ++++---- src/mcsat/conflict.c | 7 ++++--- src/mcsat/preprocessor.c | 9 +++++---- 10 files changed, 47 insertions(+), 36 deletions(-) diff --git a/configure.ac b/configure.ac index b66ebacd7..15b4a97b6 100644 --- a/configure.ac +++ b/configure.ac @@ -870,10 +870,6 @@ fi AC_SUBST(THREAD_SAFE) if test "x$thread_safe" = xyes ; then THREAD_SAFE=1 - # iam: the aim is to eventually eliminate this restriction, but not before the 2.6.2 release. - if test $use_mcsat = yes ; then - AC_MSG_ERROR([Building with both --enable-mcsat and --enable-thread-safety is currently not supported.]) - fi fi dnl diff --git a/src/api/yices_api.c b/src/api/yices_api.c index 6442da188..47f1dd452 100644 --- a/src/api/yices_api.c +++ b/src/api/yices_api.c @@ -8669,10 +8669,10 @@ static inline bool yices_assert_formula_checks(term_t t) { MT_PROTECT(bool, __yices_globals.lock, _o_yices_assert_formula_checks(t)); } -EXPORTED int32_t yices_assert_formula(context_t *ctx, term_t t) { +int32_t _o_yices_assert_formula(context_t *ctx, term_t t) { int32_t code; - if (! yices_assert_formula_checks(t)) { + if (! _o_yices_assert_formula_checks(t)) { return -1; } @@ -8711,7 +8711,7 @@ EXPORTED int32_t yices_assert_formula(context_t *ctx, term_t t) { assert(context_status(ctx) == STATUS_IDLE); - code = assert_formula(ctx, t); + code = _o_assert_formula(ctx, t); if (code < 0) { // error during internalization convert_internalization_error(code); @@ -8722,6 +8722,10 @@ EXPORTED int32_t yices_assert_formula(context_t *ctx, term_t t) { return 0; } +EXPORTED int32_t yices_assert_formula(context_t *ctx, term_t t) { + MT_PROTECT(int32_t, __yices_globals.lock, + _o_yices_assert_formula(ctx, t)); +} @@ -9054,23 +9058,19 @@ static bool _o_unsat_core_check_assumptions(uint32_t n, const term_t a[]) { return check_good_terms(__yices_globals.manager, n, a) && check_boolean_args(__yices_globals.manager, n, a); } -static bool unsat_core_check_assumptions(uint32_t n, const term_t a[]) { - MT_PROTECT(bool, __yices_globals.lock, _o_unsat_core_check_assumptions(n, a)); -} - /* * Check context with assumptions * - n = number of assumptions * - a[0] ... a[n-1] = n assumptions. All of them must be Boolean terms. */ -EXPORTED smt_status_t yices_check_context_with_assumptions(context_t *ctx, const param_t *params, uint32_t n, const term_t a[]) { +smt_status_t _o_yices_check_context_with_assumptions(context_t *ctx, const param_t *params, uint32_t n, const term_t a[]) { param_t default_params; ivector_t assumptions; smt_status_t stat; uint32_t i; literal_t l; - if (!unsat_core_check_assumptions(n, a)) { + if (!_o_unsat_core_check_assumptions(n, a)) { return STATUS_ERROR; // Bad assumptions } @@ -9113,8 +9113,6 @@ EXPORTED smt_status_t yices_check_context_with_assumptions(context_t *ctx, const assert(context_status(ctx) == STATUS_IDLE); - yices_obtain_mutex(); - // convert the assumptions to n literals init_ivector(&assumptions, n); for (i=0; i void bv_subexplainer_construct(bv_subexplainer_t* exp, const char* name, plugin_context_t* ctx, watch_list_manager_t* wlm, bv_evaluator_t* eval) { @@ -169,10 +170,10 @@ void bv_explainer_normalize_conflict(bv_explainer_t* exp, ivector_t* conflict_ou } void bv_explainer_check_conflict(bv_explainer_t* exp, const ivector_t* conflict) { - context_t* ctx = yices_new_context(NULL); + context_t* ctx = _o_yices_new_context(NULL); uint32_t i; for (i = 0; i < conflict->size; ++ i) { - yices_assert_formula(ctx, conflict->data[i]); + _o_yices_assert_formula(ctx, conflict->data[i]); } smt_status_t result = yices_check_context(ctx, NULL); (void) result; diff --git a/src/mcsat/bv/bv_utils.h b/src/mcsat/bv/bv_utils.h index 121fb4912..39aae56e2 100644 --- a/src/mcsat/bv/bv_utils.h +++ b/src/mcsat/bv/bv_utils.h @@ -35,6 +35,7 @@ #include "mcsat/tracing.h" #include "mcsat/value.h" #include "yices.h" +#include "api/yices_api_lock_free.h" /** Types of bitvector terms */ typedef enum { @@ -467,8 +468,8 @@ static inline bool check_rewrite(plugin_context_t* ctx, term_t old, term_t t){ if (t == old) return true; term_manager_t* tm = ctx->tm; - context_t* yctx = yices_new_context(NULL); - yices_assert_formula(yctx, mk_neq(tm, old, t)); + context_t* yctx = _o_yices_new_context(NULL); + _o_yices_assert_formula(yctx, mk_neq(tm, old, t)); smt_status_t output = yices_check_context(yctx, NULL); bool result = (output == STATUS_UNSAT); if (!result && ctx_trace_enabled(ctx, "mcsat::bv::arith::ctz")) { @@ -479,7 +480,7 @@ bool check_rewrite(plugin_context_t* ctx, term_t old, term_t t){ ctx_trace_term(ctx, t); assert(false); } - yices_free_context(yctx); + _o_yices_free_context(yctx); return result; } diff --git a/src/mcsat/bv/explain/eq_ext_con.c b/src/mcsat/bv/explain/eq_ext_con.c index f61b1a486..d49821673 100644 --- a/src/mcsat/bv/explain/eq_ext_con.c +++ b/src/mcsat/bv/explain/eq_ext_con.c @@ -33,6 +33,7 @@ #include "mcsat/eq/equality_graph.h" #include "yices.h" +#include "api/yices_api_lock_free.h" #include "eq_ext_con.h" @@ -1543,7 +1544,7 @@ term_t explain_propagation(bv_subexplainer_t* this, const ivector_t* reasons_in, if (ok) { // Concat the terms if (to_concat.size > 1) { - result_subst = yices_bvconcat(to_concat.size, to_concat.data); + result_subst = _o_yices_bvconcat(to_concat.size, to_concat.data); } else { result_subst = to_concat.data[0]; } diff --git a/src/mcsat/bv/explain/full_bv_sat.c b/src/mcsat/bv/explain/full_bv_sat.c index 3dccadfee..7d255fb29 100644 --- a/src/mcsat/bv/explain/full_bv_sat.c +++ b/src/mcsat/bv/explain/full_bv_sat.c @@ -142,8 +142,8 @@ void bb_sat_solver_add_variable(bb_sat_solver_t* solver, variable_t var, bool wi term_t var_fresh; term_kind_t kind = term_kind(solver->yices_ctx->terms, var_term); if (kind != UNINTERPRETED_TERM) { - type_t var_type = yices_type_of_term(var_term); - var_fresh = yices_new_uninterpreted_term(var_type); + type_t var_type = _o_yices_type_of_term(var_term); + var_fresh = _o_yices_new_uninterpreted_term(var_type); } else { var_fresh = var_term; } @@ -163,7 +163,7 @@ void bb_sat_solver_assert_term(bb_sat_solver_t* solver, variable_t assertion_ter fprintf(out, " previously \n"); ctx_trace_term(solver->ctx, assertion_term); } - yices_assert_formula(solver->yices_ctx, assertion_term); + _o_yices_assert_formula(solver->yices_ctx, assertion_term); } /** @@ -276,7 +276,7 @@ void bb_sat_solver_solve_and_get_core(bb_sat_solver_t* solver, term_vector_t* co } // Check the assumptions (should be unsat) - smt_status_t status = yices_check_context_with_assumptions(solver->yices_ctx, NULL, assumptions.size, assumptions.data); + smt_status_t status = _o_yices_check_context_with_assumptions(solver->yices_ctx, NULL, assumptions.size, assumptions.data); (void) status; assert(status == STATUS_UNSAT); diff --git a/src/mcsat/conflict.c b/src/mcsat/conflict.c index 648f169a6..d097a97d4 100644 --- a/src/mcsat/conflict.c +++ b/src/mcsat/conflict.c @@ -29,19 +29,20 @@ #include "mcsat/tracing.h" #include "yices.h" +#include "api/yices_api_lock_free.h" #include #define CONFLICT_DEFAULT_ELEMENT_SIZE 100 void conflict_check(conflict_t* conflict) { ctx_config_t* config = yices_new_config(); - context_t* ctx = yices_new_context(config); + context_t* ctx = _o_yices_new_context(config); uint32_t i; const ivector_t* literals = &conflict->disjuncts.element_list; for (i = 0; i < literals->size; ++i) { term_t literal = literals->data[i]; literal = opposite_term(literal); - int32_t ret = yices_assert_formula(ctx, literal); + int32_t ret = _o_yices_assert_formula(ctx, literal); if (ret != 0) { // unsupported by regular yices fprintf(stderr, "skipping conflict (ret)\n"); @@ -52,7 +53,7 @@ void conflict_check(conflict_t* conflict) { smt_status_t result = yices_check_context(ctx, NULL); (void) result; assert(result == STATUS_UNSAT); - yices_free_context(ctx); + _o_yices_free_context(ctx); yices_free_config(config); } diff --git a/src/mcsat/preprocessor.c b/src/mcsat/preprocessor.c index 3ccebcc4a..07171b1fe 100644 --- a/src/mcsat/preprocessor.c +++ b/src/mcsat/preprocessor.c @@ -34,6 +34,7 @@ #include "context/context_types.h" #include "yices.h" +#include "api/yices_api_lock_free.h" void preprocessor_construct(preprocessor_t* pre, term_table_t* terms, jmp_buf* handler, const mcsat_options_t* options) { pre->terms = terms; @@ -459,8 +460,8 @@ term_t preprocessor_apply(preprocessor_t* pre, term_t t, ivector_t* out, bool is size = 0; } } - current_pre = yices_bvconcat(n_vars, vars); - term_t eq = yices_eq(current, current_pre); + current_pre = _o_yices_bvconcat(n_vars, vars); + term_t eq = _o_yices_eq(current, current_pre); preprocessor_mark_eq(pre, eq, current); } } @@ -598,7 +599,7 @@ term_t preprocessor_apply(preprocessor_t* pre, term_t t, ivector_t* out, bool is } else { type_t arg_pre_type = term_type(pre->terms, arg_pre); term_t arg_pre_is_positive = mk_arith_term_geq0(&pre->tm, arg_pre); - term_t arg_negative = yices_neg(arg_pre); + term_t arg_negative = _o_yices_neg(arg_pre); current_pre = mk_ite(&pre->tm, arg_pre_is_positive, arg_pre, arg_negative, arg_pre_type); } break; @@ -718,7 +719,7 @@ term_t preprocessor_apply(preprocessor_t* pre, term_t t, ivector_t* out, bool is trace_term_ln(pre->tracer, terms, arg_pre); } // For simplification purposes use API - current_pre = yices_bitextract(arg_pre, index); + current_pre = _o_yices_bitextract(arg_pre, index); assert(current_pre != NULL_TERM); } } From ed5211fa745a85ef5620c4c40662d8c9a1d19854 Mon Sep 17 00:00:00 2001 From: Mark Mitchell Date: Fri, 22 Sep 2023 07:50:01 -0700 Subject: [PATCH 162/182] Destroy in reverse order of creation. --- src/api/yices_api.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/api/yices_api.c b/src/api/yices_api.c index 47f1dd452..faed13510 100644 --- a/src/api/yices_api.c +++ b/src/api/yices_api.c @@ -1108,6 +1108,11 @@ EXPORTED void yices_exit(void) { delete_sparse_array(&the_root_types); } + free_parameter_list(); + free_config_list(); + free_model_list(); + free_context_list(); + delete_parsing_objects(); delete_fvars(); @@ -1123,11 +1128,6 @@ EXPORTED void yices_exit(void) { free_bvarith64_buffer_list(); free_arith_buffer_list(); - free_context_list(); - free_model_list(); - free_config_list(); - free_parameter_list(); - delete_list_locks(); q_clear(&r0); From ba8283dedd06b7dc11288d0772a48c7e86493bb9 Mon Sep 17 00:00:00 2001 From: Mark Mitchell Date: Fri, 22 Sep 2023 07:52:03 -0700 Subject: [PATCH 163/182] Allocate large arrays on the heap. --- src/mcsat/bv/explain/arith_norm.c | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/src/mcsat/bv/explain/arith_norm.c b/src/mcsat/bv/explain/arith_norm.c index 65b8a4a0e..d78d31f10 100644 --- a/src/mcsat/bv/explain/arith_norm.c +++ b/src/mcsat/bv/explain/arith_norm.c @@ -777,7 +777,9 @@ term_t arith_normalise_upto(arith_norm_t* norm, term_t u, uint32_t w){ case BV_ARRAY: { // Concatenated boolean terms composite_term_t* concat_desc = bvarray_term_desc(terms, t); - term_t ebits[w]; // Where we build the result + term_t *ebits; // Where we build the result + + ebits = (term_t *) safe_malloc(w * sizeof(term_t)); // First, we eliminate BIT_TERM-over-BV_ARRAYs: for (uint32_t i = 0; i < w; i++) @@ -791,7 +793,11 @@ term_t arith_normalise_upto(arith_norm_t* norm, term_t u, uint32_t w){ // preproc[1][i] is the term_t arith_normalise_upto(k,top+1) (normalised version of k over the lowest top+1 bits), let's call it norm // preproc[2][i] is the value returned by bv_evaluator_not_free_up_to(norm), let's call it maxeval // preproc[3][i] is the term_t arith_normalise_upto(norm,maxeval), if maxeval is not 0 - term_t preproc[4][w]; + + term_t *preproc[4]; + for (int i = 0; i < 4; i ++) + preproc[i] = (term_t *) safe_malloc(4 * w * sizeof(term_t)); + // We initialise the hashmap fix_htbl_init(preproc[0], w); @@ -865,6 +871,11 @@ term_t arith_normalise_upto(arith_norm_t* norm, term_t u, uint32_t w){ arith_analyse_t analysis; init_analysis(&analysis); analyse_bvarray(norm, w, ebits, &analysis); + + for (int i = 0; i < 4; i ++) + safe_free(preproc[i]); + safe_free(ebits); + return finalise(norm, t, &analysis); } From a87d54d251f7700e6489b8b8c3717cb3a3d7fa8e Mon Sep 17 00:00:00 2001 From: Mark Mitchell Date: Fri, 22 Sep 2023 07:53:26 -0700 Subject: [PATCH 164/182] Use lock-free API. --- src/mcsat/bv/bv_explainer.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mcsat/bv/bv_explainer.c b/src/mcsat/bv/bv_explainer.c index 6de49c802..9521bb600 100644 --- a/src/mcsat/bv/bv_explainer.c +++ b/src/mcsat/bv/bv_explainer.c @@ -178,7 +178,7 @@ void bv_explainer_check_conflict(bv_explainer_t* exp, const ivector_t* conflict) smt_status_t result = yices_check_context(ctx, NULL); (void) result; assert(result == STATUS_UNSAT); - yices_free_context(ctx); + _o_yices_free_context(ctx); } void print_counters(bv_explainer_t* exp){ From 0b5474b7206c4eae651434f59c434ed63db55369 Mon Sep 17 00:00:00 2001 From: Mark Mitchell Date: Fri, 22 Sep 2023 13:23:04 -0700 Subject: [PATCH 165/182] Add option to run individual tests. Add option to pass options to SMT2 solver. Detect bad exit codes. --- tests/regress/check.sh | 45 ++++++++++++++++++++++++++++++++---------- 1 file changed, 35 insertions(+), 10 deletions(-) diff --git a/tests/regress/check.sh b/tests/regress/check.sh index 9cdc5013c..e2870e180 100755 --- a/tests/regress/check.sh +++ b/tests/regress/check.sh @@ -34,13 +34,33 @@ # what's expected. # -if test $# != 2 ; then - echo "Usage: $0 " +usage() { + echo "Usage: $0 [test1] [test2] ..." exit +} + +smt2_options= + +while getopts "s:" o; do + case "$o" in + s) + smt2_options=${OPTARG} + ;; + *) + usage + ;; + esac +done +shift $((OPTIND-1)) + +if test $# "<" 2 ; then + usage fi regress_dir=$1 bin_dir=$2 +shift 2 +all_tests="$@" # Make sure fatal errors go to stderr export LIBC_FATAL_STDERR_=1 @@ -112,11 +132,13 @@ else MCSAT_FILTER="." fi -all_tests=$( - find "$regress_dir" -name '*.smt' -or -name '*.smt2' -or -name '*.ys' | - grep $REGRESS_FILTER | grep $MCSAT_FILTER | - sort -) +if test -z "$all_tests"; then + all_tests=$( + find "$regress_dir" -name '*.smt' -or -name '*.smt2' -or -name '*.ys' | + grep $REGRESS_FILTER | grep $MCSAT_FILTER | + sort + ) +fi for file in $all_tests; do @@ -125,9 +147,12 @@ for file in $all_tests; do # Get the binary based on the filename filename=`basename "$file"` + options= + case $filename in *.smt2) binary=yices_smt2 + options=$smt2_options ;; *.smt) binary=yices_smtcomp @@ -144,11 +169,10 @@ for file in $all_tests; do # Get the options if [ -e "$file.options" ] then - options=`cat $file.options` + options="$options `cat $file.options`" echo " [ $options ]" test_string="$file [ $options ]" else - options= test_string="$file" echo fi @@ -172,12 +196,13 @@ for file in $all_tests; do ulimit -H -t $((1+$TIME_LIMIT)) &> /dev/null (time ./$bin_dir/$binary $options ./$file >& $outfile ) >& $timefile ) + status=$? thetime=`cat $timefile` # Do the diff DIFF=`diff -w $outfile $gold` - if [ $? -eq 0 ] + if [ $? -eq 0 ] && [ $status -eq 0 ] then echo -n $green echo PASS [${thetime} s] From 73ce57bb9ddab182aef25c08dfc621684b7f1563 Mon Sep 17 00:00:00 2001 From: Mark Mitchell Date: Fri, 22 Sep 2023 13:26:50 -0700 Subject: [PATCH 166/182] Add fatal error utilities. Remove yices_smt2_mt frontend, merging capability into yices_smt2. Ensure threads have large stacks. Make timeouts thread-safe. --- src/Makefile | 2 +- src/frontend/smt2/smt2_commands.c | 84 ++-- src/frontend/smt2/smt2_commands.h | 3 +- src/frontend/yices/yices_reval.c | 23 +- src/frontend/yices_smt.c | 9 +- src/frontend/yices_smt2.c | 22 +- src/frontend/yices_smt2_mt.c | 638 ------------------------------ src/frontend/yices_smtcomp.c | 10 +- src/mt/threads_posix.c | 45 ++- src/utils/error.c | 36 ++ src/utils/error.h | 29 ++ src/utils/timeout.c | 195 ++++++++- src/utils/timeout.h | 34 +- tests/unit/test_timeout.c | 15 +- 14 files changed, 377 insertions(+), 768 deletions(-) delete mode 100644 src/frontend/yices_smt2_mt.c create mode 100644 src/utils/error.c create mode 100644 src/utils/error.h diff --git a/src/Makefile b/src/Makefile index 445c6ff7b..9a14fc6ba 100644 --- a/src/Makefile +++ b/src/Makefile @@ -276,6 +276,7 @@ core_src_c := \ utils/csets.c \ utils/cputime.c \ utils/dep_tables.c \ + utils/error.c \ utils/gcd.c \ utils/generic_heap.c \ utils/hash_functions.c \ @@ -494,7 +495,6 @@ bin_src_c := \ frontend/yices_sat_new.c \ frontend/yices_smt.c \ frontend/yices_smt2.c \ - frontend/yices_smt2_mt.c \ frontend/yices_smtcomp.c \ # diff --git a/src/frontend/smt2/smt2_commands.c b/src/frontend/smt2/smt2_commands.c index 4d27ed7ba..af6483f4f 100644 --- a/src/frontend/smt2/smt2_commands.c +++ b/src/frontend/smt2/smt2_commands.c @@ -2653,8 +2653,13 @@ static void init_search_parameters(smt2_globals_t *g) { static void timeout_handler(void *data) { smt2_globals_t *g; +#ifndef THREAD_SAFE assert(data == &__smt2_globals); - +#else + /* In the multi-threaded case there are multiple copies of the + global data. */ +#endif /* THREAD_SAFE */ + g = data; if (g->efmode && g->ef_client.efsolver != NULL && g->ef_client.efsolver->status == EF_STATUS_SEARCHING) { ef_solver_stop_search(g->ef_client.efsolver); @@ -2679,14 +2684,13 @@ static smt_status_t check_sat_with_timeout(smt2_globals_t *g, const param_t *par * We call init_timeout only now because the internal timeout * consumes resources even if it's never used. */ - if (! g->timeout_initialized) { - init_timeout(); - g->timeout_initialized = true; + if (! g->to) { + g->to = init_timeout(); } g->interrupted = false; - start_timeout(g->timeout, timeout_handler, g); + start_timeout(g->to, g->timeout, timeout_handler, g); stat = check_context(g->ctx, params); - clear_timeout(); + clear_timeout(g->to); /* * Attempt to cleanly recover from interrupt @@ -2725,15 +2729,14 @@ static smt_status_t check_sat_with_assumptions(smt2_globals_t *g, const param_t * We call init_timeout only now because the internal timeout * consumes resources even if it's never used. */ - if (! g->timeout_initialized) { - init_timeout(); - g->timeout_initialized = true; + if (! g->to) { + g->to = init_timeout(); } g->interrupted = false; - start_timeout(g->timeout, timeout_handler, g); + start_timeout(g->to, g->timeout, timeout_handler, g); stat = check_with_assumptions(g->ctx, params, a->assumptions.size, a->assumptions.data, &a->core); a->status = stat; - clear_timeout(); + clear_timeout(g->to); /* * Attempt to cleanly recover from interrupt @@ -2773,14 +2776,13 @@ static smt_status_t check_sat_with_model(smt2_globals_t *g, const param_t *param * We call init_timeout only now because the internal timeout * consumes resources even if it's never used. */ - if (! g->timeout_initialized) { - init_timeout(); - g->timeout_initialized = true; + if (! g->to) { + g->to = init_timeout(); } g->interrupted = false; - start_timeout(g->timeout, timeout_handler, g); + start_timeout(g->to, g->timeout, timeout_handler, g); stat = check_with_model(g->ctx, params, n, vars, values); - clear_timeout(); + clear_timeout(g->to); /* * Attempt to cleanly recover from interrupt @@ -3026,7 +3028,7 @@ static void add_delayed_assertion(smt2_globals_t *g, term_t t) { /* * Check satisfiability of all assertions */ -static void check_delayed_assertions(smt2_globals_t *g) { +static void check_delayed_assertions(smt2_globals_t *g, bool report) { int32_t code; smt_status_t status; model_t *model; @@ -3036,12 +3038,14 @@ static void check_delayed_assertions(smt2_globals_t *g) { if (g->trivially_unsat) { trace_printf(g->tracer, 3, "(check-sat: trivially unsat)\n"); - report_status(g, STATUS_UNSAT); + if (report) + report_status(g, STATUS_UNSAT); } else if (trivially_true_assertions(g->assertions.data, g->assertions.size, &model)) { trace_printf(g->tracer, 3, "(check-sat: trivially true)\n"); g->trivially_sat = true; g->model = model; - report_status(g, STATUS_SAT); + if (report) + report_status(g, STATUS_SAT); } else { /* * check for mislabeled benchmarks: some benchmarks @@ -3105,7 +3109,8 @@ static void check_delayed_assertions(smt2_globals_t *g) { status = check_sat_with_timeout(g, &g->parameters); } - report_status(g, status); + if (report) + report_status(g, status); } } } @@ -3312,18 +3317,17 @@ static void efsolve_cmd(smt2_globals_t *g) { if (g->efmode) { efc = &g->ef_client; if (g->timeout != 0) { - if (! g->timeout_initialized) { - init_timeout(); - g->timeout_initialized = true; + if (! g->to) { + g->to = init_timeout(); } g->interrupted = false; - start_timeout(g->timeout, timeout_handler, g); + start_timeout(g->to, g->timeout, timeout_handler, g); } ef_solve(efc, g->assertions.size, g->assertions.data, &g->parameters, qf_fragment(g->logic_code), ef_arch_for_logic(g->logic_code), g->tracer, &g->term_patterns); - if (g-> timeout != 0) clear_timeout(); + if (g-> timeout != 0) clear_timeout(g->to); if (efc->efcode != EF_NO_ERROR) { // error in preprocessing @@ -4577,7 +4581,7 @@ static void init_smt2_globals(smt2_globals_t *g) { init_params_to_defaults(&g->parameters); g->nthreads = 0; g->timeout = 0; - g->timeout_initialized = false; + g->to = NULL; g->interrupted = false; g->delegate = NULL; g->avtbl = NULL; @@ -4629,8 +4633,8 @@ static void init_smt2_globals(smt2_globals_t *g) { * - delete the timeout object if it's initialized */ static void delete_smt2_globals(smt2_globals_t *g) { - if (g->timeout_initialized) { - delete_timeout(); + if (g->to) { + delete_timeout(g->to); } delete_info_table(g); if (g->logic_name != NULL) { @@ -6598,7 +6602,7 @@ static yices_thread_result_t YICES_THREAD_ATTR check_delayed_assertions_thread(v g->out = output; // /tmp/check_delayed_assertions_thread_.txt g->err = output; // /tmp/check_delayed_assertions_thread_.txt - check_delayed_assertions(g); + check_delayed_assertions(g, /*report=*/false); return yices_thread_exit(); } @@ -6621,18 +6625,22 @@ static smt_status_t get_status_from_globals(smt2_globals_t *g) { static void check_delayed_assertions_mt(smt2_globals_t *g) { bool success; uint32_t i, n; + bool verbose; n = g->nthreads; assert(n > 0); + verbose = g->verbosity > 0; + smt2_globals_t *garray = (smt2_globals_t *) safe_malloc(n * sizeof(smt2_globals_t)); for(i = 0; i < n; i++) { garray[i] = __smt2_globals; // just copy them for now. garray[i].tracer = NULL; // only main thread can use this. } - launch_threads(n, garray, sizeof(smt2_globals_t), "check_delayed_assertions_thread", check_delayed_assertions_thread, true); - fprintf(stderr, "All threads finished. Now computing check_delayed_assertions in main thread.\n"); - check_delayed_assertions(g); + launch_threads(n, garray, sizeof(smt2_globals_t), "check_delayed_assertions_thread", check_delayed_assertions_thread, verbose); + if (verbose) + fprintf(stderr, "All threads finished. Now computing check_delayed_assertions in main thread.\n"); + check_delayed_assertions(g, /*report=*/true); //could check that they are all OK @@ -6646,11 +6654,9 @@ static void check_delayed_assertions_mt(smt2_globals_t *g) { //free the model if there is one, and free the context. //IAM: valgrind says there is no leak here. This is puzzling. } - if (success) { - fprintf(stderr, "SUCCESS: All threads agree.\n"); - } else { - fprintf(stderr, "FAILURE: Threads disagree.\n"); - } + if (verbose) + fprintf(stderr, + success ? "SUCCESS: All threads agree.\n" : "FAILURE: Threads disagree.\n"); safe_free(garray); } #endif @@ -6679,10 +6685,10 @@ void smt2_check_sat(void) { } else { // show_delayed_assertions(&__smt2_globals); #ifndef THREAD_SAFE - check_delayed_assertions(&__smt2_globals); + check_delayed_assertions(&__smt2_globals, /*report=*/true); #else if (__smt2_globals.nthreads == 0) { - check_delayed_assertions(&__smt2_globals); + check_delayed_assertions(&__smt2_globals, /*report=*/true); } else { check_delayed_assertions_mt(&__smt2_globals); } diff --git a/src/frontend/smt2/smt2_commands.h b/src/frontend/smt2/smt2_commands.h index e673bee13..c7d45ef72 100644 --- a/src/frontend/smt2/smt2_commands.h +++ b/src/frontend/smt2/smt2_commands.h @@ -50,6 +50,7 @@ #include "utils/int_vectors.h" #include "utils/ptr_vectors.h" #include "utils/string_hash_map.h" +#include "utils/timeout.h" #include "parser_utils/lexer.h" #include "parser_utils/term_stack2.h" #include "io/tracer.h" @@ -401,7 +402,7 @@ typedef struct smt2_globals_s { // timeout uint32_t timeout; // default = 0 (no timeout) - bool timeout_initialized; // initially false. true once init_timeout is called + timeout_t *to; // initially NULL. Non-NULL once init_timeout is called bool interrupted; // true if the most recent call to check_sat timed out // optional: delegate sat solver for QF_BV diff --git a/src/frontend/yices/yices_reval.c b/src/frontend/yices/yices_reval.c index 14a0bb7b5..d1c8bd47a 100644 --- a/src/frontend/yices/yices_reval.c +++ b/src/frontend/yices/yices_reval.c @@ -138,7 +138,7 @@ * OTHER * - timeout: timeout value in second (applies to check) * timeout value = 0 means no timeout - * - timeout_initialized: true once init_timeout is called + * - to: the timeout structure * * COMMAND-LINE OPTIONS: * - logic_name: logic to use (option --logic=xxx) @@ -175,7 +175,7 @@ static int32_t verbosity; static tracer_t *tracer; static uint32_t timeout; -static bool timeout_initialized; +static timeout_t *to; static char *logic_name; static char *arith_name; @@ -262,8 +262,6 @@ static pp_area_t pp_area = { 140, UINT32_MAX, 0, false, false }; - - /************************** * COMMAND-LINE OPTIONS * *************************/ @@ -2542,11 +2540,10 @@ static void timeout_handler(void *data) { */ static void set_timeout(void) { if (timeout > 0) { - if (!timeout_initialized) { - init_timeout(); - timeout_initialized = true; + if (!to) { + to = init_timeout(); } - start_timeout(timeout, timeout_handler, context); + start_timeout(to, timeout, timeout_handler, context); } } @@ -2555,8 +2552,8 @@ static void set_timeout(void) { */ static void reset_timeout(void) { if (timeout > 0) { - assert(timeout_initialized); - clear_timeout(); + assert(to); + clear_timeout(to); timeout = 0; } } @@ -3999,7 +3996,7 @@ int yices_main(int argc, char *argv[]) { */ interactive = false; timeout = 0; - timeout_initialized = false; + to = NULL; include_depth = 0; ready_time = 0.0; check_process_time = 0.0; @@ -4111,8 +4108,8 @@ int yices_main(int argc, char *argv[]) { yices_exit(); - if (timeout_initialized) { - delete_timeout(); + if (to) { + delete_timeout(to); } return exit_code; diff --git a/src/frontend/yices_smt.c b/src/frontend/yices_smt.c index e70a3b7fc..8c9236871 100644 --- a/src/frontend/yices_smt.c +++ b/src/frontend/yices_smt.c @@ -182,6 +182,7 @@ static arith_solver_t arith_solver; */ static uint32_t timeout; +static timeout_t *to; /* * Filename given on the command line @@ -2040,15 +2041,15 @@ static int process_benchmark(char *filename) { start_search_time = get_cpu_time(); if (timeout > 0) { - init_timeout(); - start_timeout(timeout, timeout_handler, &context); + to = init_timeout(); + start_timeout(to, timeout, timeout_handler, &context); } code = check_context(&context, search_options); clear_handler(); if (timeout > 0) { - clear_timeout(); - delete_timeout(); + clear_timeout(to); + delete_timeout(to); } print_results(); diff --git a/src/frontend/yices_smt2.c b/src/frontend/yices_smt2.c index f7fd78344..e7d9232f8 100644 --- a/src/frontend/yices_smt2.c +++ b/src/frontend/yices_smt2.c @@ -140,6 +140,7 @@ static double ef_ematch_term_alpha; static int32_t ef_ematch_cnstr_mode; static int32_t ef_ematch_term_mode; +static uint32_t nthreads; /**************************** * COMMAND-LINE ARGUMENTS * @@ -185,9 +186,10 @@ typedef enum optid { ematch_term_alpha_opt, // set ematch term learner learning rate ematch_cnstr_mode_opt, // set cnstr mode in ematching ematch_term_mode_opt, // set term mode in ematching + nthreads_opt, // number of threads } optid_t; -#define NUM_OPTIONS (ematch_term_mode_opt+1) +#define NUM_OPTIONS (nthreads_opt+1) /* * Option descriptors @@ -232,6 +234,7 @@ static option_desc_t options[NUM_OPTIONS] = { { "ematch-term-alpha", '\0', MANDATORY_FLOAT, ematch_term_alpha_opt }, { "ematch-cnstr-mode", '\0', MANDATORY_STRING, ematch_cnstr_mode_opt }, { "ematch-term-mode", '\0', MANDATORY_STRING, ematch_term_mode_opt }, + { "nthreads", 'n', MANDATORY_INT, nthreads_opt } }; @@ -271,6 +274,8 @@ static void print_help(const char *progname) { " --mcsat Use the MCSat solver\n" " --mcsat-help Show the MCSat options\n" " --ef-help Show the EF options\n" + " --nthreads= Specify the number of threads (default = 0 = main thread only)\n" + " -n \n" "\n" "For bug reports and other information, please see http://yices.csl.sri.com/\n"); fflush(stdout); @@ -406,6 +411,8 @@ static void parse_command_line(int argc, char *argv[]) { ef_ematch_cnstr_mode = -1; ef_ematch_term_mode = -1; + nthreads = 0; + init_cmdline_parser(&parser, options, NUM_OPTIONS, argv, argc); for (;;) { @@ -463,6 +470,17 @@ static void parse_command_line(int argc, char *argv[]) { timeout = v; break; + case nthreads_opt: + v = elem.i_value; + if (v < 0) { + fprintf(stderr, "%s: the number of threads must be non-negative\n", parser.command_name); + print_usage(parser.command_name); + code = YICES_EXIT_USAGE; + goto exit; + } + nthreads = v; + break; + case incremental_opt: incremental = true; break; @@ -1059,7 +1077,7 @@ int main(int argc, char *argv[]) { init_handlers(); yices_init(); - init_smt2(!incremental, timeout, interactive); + init_mt2(!incremental, timeout, nthreads, interactive); if (smt2_model_format) smt2_force_smt2_model_format(); if (bvdecimal) smt2_force_bvdecimal_format(); if (dimacsfile != NULL && delegate == NULL) smt2_export_to_dimacs(dimacsfile); diff --git a/src/frontend/yices_smt2_mt.c b/src/frontend/yices_smt2_mt.c deleted file mode 100644 index 255429629..000000000 --- a/src/frontend/yices_smt2_mt.c +++ /dev/null @@ -1,638 +0,0 @@ -/* - * This file is part of the Yices SMT Solver. - * Copyright (C) 2017 SRI International. - * - * Yices is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Yices is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with Yices. If not, see . - */ - -/* - * Yices solver: input in the SMT-LIB 2.0 language multithreaded test bed - */ - -#if defined(CYGWIN) || defined(MINGW) -#ifndef __YICES_DLLSPEC__ -#define __YICES_DLLSPEC__ __declspec(dllexport) -#endif -#endif - -#include -#include -#include -#include -#include -#include -#include -// EXPERIMENT -#include - - -#include "frontend/common/parameters.h" -#include "frontend/smt2/smt2_commands.h" -#include "frontend/smt2/smt2_lexer.h" -#include "frontend/smt2/smt2_parser.h" -#include "frontend/smt2/smt2_term_stack.h" -#include "utils/command_line.h" - -#include "yices.h" -#include "yices_exit_codes.h" - -/* - * yices_rev is set up at compile time in yices_version.c - */ -extern const char * const yices_rev; - -/* - * Global objects: - * - lexer/parser/stack: for processing the SMT2 input - * - incremental: if this flag is true, support for push/pop - * and multiple check_sat is enabled. Otherwise, the solver - * is configured to handle a set of declarations/assertions - * followed by a single call to (check_sat). - * - interactive: if this flag is true, print a prompt before - * parsing commands. Also set the option :print-success to true. - * - timeout: command-line option - * - * - filename = name of the input file (NULL means read stdin) - */ -static lexer_t lexer; -static parser_t parser; -static tstack_t stack; - -static bool incremental; -static bool interactive; -static bool show_stats; -static int32_t verbosity; -static uint32_t timeout; -static uint32_t nthreads; -static char *filename; - -// mcsat options -static bool mcsat; -static bool mcsat_nra_mgcd; -static bool mcsat_nra_nlsat; -static bool mcsat_nra_bound; -static int32_t mcsat_nra_bound_min; -static int32_t mcsat_nra_bound_max; - -static pvector_t trace_tags; - - -/**************************** - * COMMAND-LINE ARGUMENTS * - ***************************/ - -typedef enum optid { - show_version_opt, // print version and exit - show_help_opt, // print help and exit - show_stats_opt, // show statistics after all commands are processed - verbosity_opt, // set verbosity on the command line - incremental_opt, // enable incremental mode - interactive_opt, // enable interactive mode - timeout_opt, // give a timeout - nthreads_opt, // number of threads - mcsat_opt, // enable mcsat - mcsat_nra_mgcd_opt, // use the mgcd instead psc in projection - mcsat_nra_nlsat_opt, // use the nlsat projection instead of brown single-cell - mcsat_nra_bound_opt, // search by increasing bound - mcsat_nra_bound_min_opt, // set initial bound - mcsat_nra_bound_max_opt, // set maximal bound - trace_opt, // enable a trace tag -} optid_t; - -#define NUM_OPTIONS (trace_opt+1) - -/* - * Option descriptors - */ -static option_desc_t options[NUM_OPTIONS] = { - { "version", 'V', FLAG_OPTION, show_version_opt }, - { "help", 'h', FLAG_OPTION, show_help_opt }, - { "stats", 's', FLAG_OPTION, show_stats_opt }, - { "verbosity", 'v', MANDATORY_INT, verbosity_opt }, - { "timeout", 't', MANDATORY_INT, timeout_opt }, - { "nthreads", 'n', MANDATORY_INT, nthreads_opt }, - { "incremental", '\0', FLAG_OPTION, incremental_opt }, - { "interactive", '\0', FLAG_OPTION, interactive_opt }, - { "mcsat", '\0', FLAG_OPTION, mcsat_opt }, - { "mcsat-nra-mgcd", '\0', FLAG_OPTION, mcsat_nra_mgcd_opt }, - { "mcsat-nra-nlsat", '\0', FLAG_OPTION, mcsat_nra_nlsat_opt }, - { "mcsat-nra-bound", '\0', FLAG_OPTION, mcsat_nra_bound_opt }, - { "mcsat-nra-bound-min", '\0', MANDATORY_INT, mcsat_nra_bound_min_opt }, - { "mcsat-nra-bound-max", '\0', MANDATORY_INT, mcsat_nra_bound_max_opt }, - { "trace", 't', MANDATORY_STRING, trace_opt }, -}; - - -/* - * Processing of command-line - */ -static void print_version(void) { - printf("Yices %s\n" - "Copyright SRI International.\n" - "Linked with GMP %s\n" - "Copyright Free Software Foundation, Inc.\n" - "Build date: %s\n" - "Platform: %s (%s)\n" - "Revision: %s\n", - yices_version, gmp_version, - yices_build_date, yices_build_arch, yices_build_mode, yices_rev); - fflush(stdout); -} - -static void print_help(const char *progname) { - printf("Usage: %s [option] filename\n" - " or %s [option]\n", progname, progname); - printf("Option summary:\n" - " --version, -V Show version and exit\n" - " --help, -h Print this message and exit\n" - " --verbosity= Set verbosity level (default = 0)\n" - " -v \n" - " --timeout= Set a timeout in seconds (default = no timeout)\n" - " -t \n" - " --nthreads= Specify the number of threads (default = 0 = main thread only)\n" - " -n \n" - " --stats, -s Print statistics once all commands have been processed\n" - " --incremental Enable support for push/pop\n" - " --interactive Run in interactive mode (ignored if a filename is given)\n" -#if HAVE_MCSAT - " --mcsat Use the MCSat solver\n" - " --mcsat-nra-mgcd Use model-based GCD instead of PSC for projection\n" - " --mcsat-nra-nlsat Use NLSAT projection instead of Brown's single-cell construction\n" - " --mcsat-nra-bound Search by increasing the bound on variable magnitude\n" - " --mcsat-nra-bound-min= Set initial lower bound\n" - " --mcsat-nra-bound-max= Set maximal bound for search" - "" -#endif - "\n" - "For bug reports and other information, please see http://yices.csl.sri.com/\n"); - fflush(stdout); -} - -/* - * Message for unrecognized options or other errors on the command line. - */ -static void print_usage(const char *progname) { - fprintf(stderr, "Usage: %s [options] filename\n", progname); - fprintf(stderr, "Try '%s --help' for more information\n", progname); -} - - -/* - * Parse the command line and process options - */ -static void parse_command_line(int argc, char *argv[]) { - cmdline_parser_t parser; - cmdline_elem_t elem; - optid_t k; - int32_t v; - int code; - - filename = NULL; - incremental = false; - interactive = false; - show_stats = false; - verbosity = 0; - timeout = 0; - nthreads = 0; - - mcsat = false; - mcsat_nra_mgcd = false; - mcsat_nra_nlsat = false; - mcsat_nra_bound = false; - mcsat_nra_bound_min = -1; - mcsat_nra_bound_max = -1; - - init_pvector(&trace_tags, 5); - - init_cmdline_parser(&parser, options, NUM_OPTIONS, argv, argc); - - for (;;) { - cmdline_parse_element(&parser, &elem); - switch (elem.status) { - case cmdline_done: - goto done; - - case cmdline_argument: - if (filename == NULL) { - filename = elem.arg; - } else { - fprintf(stderr, "%s: too many arguments\n", parser.command_name); - print_usage(parser.command_name); - code = YICES_EXIT_USAGE; - goto exit; - } - break; - - case cmdline_option: - k = elem.key; - switch (k) { - case show_version_opt: - print_version(); - code = YICES_EXIT_SUCCESS; - goto exit; - - case show_help_opt: - print_help(parser.command_name); - code = YICES_EXIT_SUCCESS; - goto exit; - - case show_stats_opt: - show_stats = true; - break; - - case verbosity_opt: - v = elem.i_value; - if (v < 0) { - fprintf(stderr, "%s: the verbosity level must be non-negative\n", parser.command_name); - print_usage(parser.command_name); - code = YICES_EXIT_USAGE; - goto exit; - } - verbosity = v; - break; - - case timeout_opt: - v = elem.i_value; - if (v < 0) { - fprintf(stderr, "%s: the timeout must be non-negative\n", parser.command_name); - print_usage(parser.command_name); - code = YICES_EXIT_USAGE; - goto exit; - } - timeout = v; - break; - - case nthreads_opt: - v = elem.i_value; - if (v < 0) { - fprintf(stderr, "%s: the number of threads must be non-negative\n", parser.command_name); - print_usage(parser.command_name); - code = YICES_EXIT_USAGE; - goto exit; - } - nthreads = v; - break; - - case incremental_opt: - incremental = true; - break; - - case interactive_opt: - interactive = true; - break; - - case mcsat_opt: -#if HAVE_MCSAT - mcsat = true; -#else - fprintf(stderr, "mcsat is not supported: %s was not compiled with mcsat support\n", parser.command_name); - code = YICES_EXIT_USAGE; - goto exit; -#endif - break; - - case mcsat_nra_mgcd_opt: -#if HAVE_MCSAT - mcsat_nra_mgcd = true; -#else - fprintf(stderr, "mcsat is not supported: %s was not compiled with mcsat support\n", parser.command_name); - code = YICES_EXIT_USAGE; - goto exit; -#endif - break; - - case mcsat_nra_nlsat_opt: -#if HAVE_MCSAT - mcsat_nra_nlsat = true; -#else - fprintf(stderr, "mcsat is not supported: %s was not compiled with mcsat support\n", parser.command_name); - code = YICES_EXIT_USAGE; - goto exit; -#endif - break; - - case mcsat_nra_bound_opt: -#if HAVE_MCSAT - mcsat_nra_bound = true; -#else - fprintf(stderr, "mcsat is not supported: %s was not compiled with mcsat support\n", parser.command_name); - code = YICES_EXIT_USAGE; - goto exit; -#endif - break; - - case mcsat_nra_bound_min_opt: -#if HAVE_MCSAT - v = elem.i_value; - if (v < 0) { - fprintf(stderr, "%s: the min value must be non-negative\n", parser.command_name); - print_usage(parser.command_name); - code = YICES_EXIT_USAGE; - goto exit; - } - mcsat_nra_bound_min = v; -#else - fprintf(stderr, "mcsat is not supported: %s was not compiled with mcsat support\n", parser.command_name); - code = YICES_EXIT_USAGE; - goto exit; -#endif - break; - - case mcsat_nra_bound_max_opt: -#if HAVE_MCSAT - v = elem.i_value; - if (v < 0) { - fprintf(stderr, "%s: the max value must be non-negative\n", parser.command_name); - print_usage(parser.command_name); - code = YICES_EXIT_USAGE; - goto exit; - } - mcsat_nra_bound_max = v; -#else - fprintf(stderr, "mcsat is not supported: %s was not compiled with mcsat support\n", parser.command_name); - code = YICES_EXIT_USAGE; - goto exit; -#endif - break; - - case trace_opt: - pvector_push(&trace_tags, elem.s_value); - break; - } - break; - - case cmdline_error: - cmdline_print_error(&parser, &elem); - fprintf(stderr, "Try %s --help for more information\n", parser.command_name); - code = YICES_EXIT_USAGE; - goto exit; - } - } - - done: - - // force interactive to false if there's a filename - if (filename != NULL) { - interactive = false; - } - return; - - exit: - // cleanup then exit - // code is either YICES_EXIT_SUCCESS or YICES_EXIT_USAGE. - delete_pvector(&trace_tags); - exit(code); -} - -static void setup_mcsat(void) { - aval_t aval_true; - - if (mcsat) { - smt2_enable_mcsat(); - } - - aval_true = attr_vtbl_symbol(__smt2_globals.avtbl, "true"); - - if (mcsat_nra_mgcd) { - smt2_set_option(":yices-mcsat-nra-mgcd", aval_true); - } - - if (mcsat_nra_nlsat) { - smt2_set_option(":yices-mcsat-nra-nlsat", aval_true); - } - - if (mcsat_nra_bound) { - smt2_set_option(":yices-mcsat-nra-bound", aval_true); - } - - if (mcsat_nra_bound_min >= 0) { - aval_t aval_bound_min; - rational_t q; - q_init(&q); - q_set32(&q, mcsat_nra_bound_min); - aval_bound_min = attr_vtbl_rational(__smt2_globals.avtbl, &q); - smt2_set_option(":yices-mcsat-nra-bound-min", aval_bound_min); - q_clear(&q); - } - - if (mcsat_nra_bound_max >= 0) { - aval_t aval_bound_max; - rational_t q; - q_init(&q); - q_set32(&q, mcsat_nra_bound_max); - aval_bound_max = attr_vtbl_rational(__smt2_globals.avtbl, &q); - smt2_set_option(":yices-mcsat-nra-bound-max", aval_bound_max); - q_clear(&q); - } -} - - -/******************** - * SIGNAL HANDLER * - *******************/ - -static const char signum_msg[24] = "\nInterrupted by signal "; -static char signum_buffer[100]; - -/* - * Write signal number of file 2 (assumed to be stderr): we can't use - * fprintf because it's not safe in a signal handler. - */ -static void write_signum(int signum) { - ssize_t w; - uint32_t i, n; - - memcpy(signum_buffer, signum_msg, sizeof(signum_msg)); - - // force signum to be at most two digits - signum = signum % 100; - n = sizeof(signum_msg); - if (signum > 10) { - signum_buffer[n] = (char)('0' + signum/10); - signum_buffer[n + 1] = (char)('0' + signum % 10); - signum_buffer[n + 2] = '\n'; - n += 3; - } else { - signum_buffer[n] = (char)('0' + signum); - signum_buffer[n + 1] = '\n'; - n += 2; - } - - // write to file 2 - i = 0; - do { - do { - w = write(2, signum_buffer + i, n); - } while (w < 0 && errno == EAGAIN); - if (w < 0) break; // write error, we can't do much about it. - i += (uint32_t) w; - n -= (uint32_t) w; - } while (n > 0); -} - -/* - * We call exit on SIGINT/ABORT and XCPU - * - we could try to handle SIGINT more gracefully in interactive mode - * - this will do for now. - */ -static void default_handler(int signum) { - if (verbosity > 0) { - write_signum(signum); - } - if (show_stats) { - smt2_show_stats(); - } - _exit(YICES_EXIT_INTERRUPTED); -} - - -/* - * Initialize the signal handlers - */ -static void init_handlers(void) { - signal(SIGINT, default_handler); - signal(SIGABRT, default_handler); -#ifndef MINGW - signal(SIGXCPU, default_handler); -#endif -} - - -/* - * Reset the default handlers - */ -static void reset_handlers(void) { - signal(SIGINT, SIG_DFL); - signal(SIGABRT, SIG_DFL); -#ifndef MINGW - signal(SIGXCPU, SIG_DFL); -#endif -} - - - -/********** - * MAIN * - *********/ - -#define HACK_FOR_UTF 0 - -#if HACK_FOR_UTF - -/* - * List of locales to try - */ -#define NUM_LOCALES 3 - -static const char *const locales[NUM_LOCALES] = { - "C.UTF-8", "en_US.utf8", "en_US.UTF-8", -}; - -// HACK TO FORCE UTF8 -static void force_utf8(void) { - uint32_t i; - - for (i=0; i 1) { - fprintf(stderr, "Switched to locale '%s'\n", setlocale(LC_CTYPE, NULL)); - fflush(stderr); - } - return; - } - } - - fprintf(stderr, "Failed to switch locale to UTF-8. Current locale is '%s'\n", setlocale(LC_CTYPE, NULL)); - fflush(stderr); -} - -#else - -static void force_utf8(void) { - // Do nothing -} - -#endif - -int main(int argc, char *argv[]) { - int32_t code; - uint32_t i; - - parse_command_line(argc, argv); - force_utf8(); - - if (filename != NULL) { - // read from file - if (init_smt2_file_lexer(&lexer, filename) < 0) { - perror(filename); - exit(YICES_EXIT_FILE_NOT_FOUND); - } - } else { - // read from stdin - init_smt2_stdin_lexer(&lexer); - } - - init_handlers(); - - yices_init(); - init_mt2(!incremental, timeout, nthreads, interactive); - init_smt2_tstack(&stack); - init_parser(&parser, &lexer, &stack); - - init_parameter_name_table(); - - if (verbosity > 0) { - smt2_set_verbosity(verbosity); - } - if (trace_tags.size > 0) { - for (i = 0; i < trace_tags.size; ++ i) { - smt2_enable_trace_tag(trace_tags.data[i]); - } - } - - setup_mcsat(); - - while (smt2_active()) { - if (interactive) { - // prompt - fputs("yices> ", stderr); - fflush(stderr); - } - code = parse_smt2_command(&parser); - if (code < 0) { - // syntax error - if (interactive) { - flush_lexer(&lexer); - } else { - break; // exit - } - } - } - - if (show_stats) { - smt2_show_stats(); - } - - delete_pvector(&trace_tags); - delete_parser(&parser); - close_lexer(&lexer); - delete_tstack(&stack); - delete_smt2(); - yices_exit(); - - reset_handlers(); - - return YICES_EXIT_SUCCESS; -} - diff --git a/src/frontend/yices_smtcomp.c b/src/frontend/yices_smtcomp.c index 89c53cee9..f6a4f41ad 100644 --- a/src/frontend/yices_smtcomp.c +++ b/src/frontend/yices_smtcomp.c @@ -184,6 +184,8 @@ static tracer_t tracer; */ static uint32_t timeout; +static timeout_t *to; + /* * Input file given on the command line. * If this is NULL, we read from stdin. @@ -1292,14 +1294,14 @@ static int process_benchmark(void) { start_search_time = get_cpu_time(); if (timeout > 0) { - init_timeout(); - start_timeout(timeout, timeout_handler, &context); + to = init_timeout(); + start_timeout(to, timeout, timeout_handler, &context); } code = check_context(&context, ¶ms); clear_handler(); if (timeout > 0) { - clear_timeout(); - delete_timeout(); + clear_timeout(to); + delete_timeout(to); } print_results(); diff --git a/src/mt/threads_posix.c b/src/mt/threads_posix.c index 61d051010..aa34dadeb 100644 --- a/src/mt/threads_posix.c +++ b/src/mt/threads_posix.c @@ -21,6 +21,9 @@ #include #include #include +#include + +#include "utils/error.h" void launch_threads(int32_t nthreads, void* extras, size_t extra_sz, const char* test, yices_thread_main_t thread_main, bool verbose){ int32_t retcode, thread; @@ -29,6 +32,10 @@ void launch_threads(int32_t nthreads, void* extras, size_t extra_sz, const char* thread_data_t* tdata = (thread_data_t*)calloc(nthreads, sizeof(thread_data_t)); pthread_t* tids = (pthread_t*)calloc(nthreads, sizeof(pthread_t)); + pthread_attr_t attr; + size_t stacksize; + struct rlimit rlp; + if((tdata == NULL) || (tids == NULL)){ fprintf(stderr, "Couldn't alloc memory for %d threads\n", nthreads); exit(EXIT_FAILURE); @@ -38,6 +45,19 @@ void launch_threads(int32_t nthreads, void* extras, size_t extra_sz, const char* printf("%d threads\n", nthreads); } + /* Give child threads the same stack size as the main thread. */ + if (getrlimit(RLIMIT_STACK, &rlp) == -1) + perror_fatal("launch_threads: getrlimit"); + retcode = pthread_attr_init(&attr); + if (retcode == -1) + perror_fatal_code("launch_threads: pthread_attr_init", retcode); + retcode = pthread_attr_getstacksize(&attr, &stacksize); + if (retcode == -1) + perror_fatal_code("launch_threads: pthread_attr_getstacksize", retcode); + retcode = pthread_attr_setstacksize(&attr, rlp.rlim_cur); + if (retcode == -1) + perror_fatal_code("launch_threads: pthread_attr_setstacksize", retcode); + for(thread = 0; thread < nthreads; thread++){ snprintf(buff, 1024, "/tmp/%s_%d.txt", test, thread); if(verbose){ @@ -48,18 +68,19 @@ void launch_threads(int32_t nthreads, void* extras, size_t extra_sz, const char* tdata[thread].extra = (extras + (thread * extra_sz)); } tdata[thread].output = fopen(buff, "w"); - if(tdata[thread].output == NULL){ - fprintf(stderr, "fopen failed: %s\n", strerror(errno)); - exit(EXIT_FAILURE); - } + if(tdata[thread].output == NULL) + perror_fatal("launch_threads: fopen"); - retcode = pthread_create(&tids[thread], NULL, thread_main, &tdata[thread]); - if(retcode){ - fprintf(stderr, "pthread_create failed: %s\n", strerror(retcode)); - exit(EXIT_FAILURE); - } + retcode = pthread_create(&tids[thread], &attr, thread_main, &tdata[thread]); + if(retcode) + perror_fatal_code("launch_threads: pthread_create", retcode); } + retcode = pthread_attr_destroy(&attr); + if (retcode) + perror_fatal_code("launch_threads: pthread_attr_destroy", retcode); + + if(verbose){ printf("threads away\n\n"); } @@ -67,10 +88,8 @@ void launch_threads(int32_t nthreads, void* extras, size_t extra_sz, const char* for(thread = 0; thread < nthreads; thread++){ retcode = pthread_join(tids[thread], NULL); - if(retcode){ - fprintf(stderr, "pthread_join failed: %s\n", strerror(retcode)); - exit(EXIT_FAILURE); - } + if(retcode) + perror_fatal_code("launch_threads: pthread_join", retcode); fclose(tdata[thread].output); } diff --git a/src/utils/error.c b/src/utils/error.c new file mode 100644 index 000000000..568fa23f0 --- /dev/null +++ b/src/utils/error.c @@ -0,0 +1,36 @@ +/* + * This file is part of the Yices SMT Solver. + * Copyright (C) 2023 SRI International. + * + * Yices is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * Yices is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Yices. If not, see . + */ + +#include +#include +#include + +#include "yices_exit_codes.h" + +void perror_fatal(const char *s) { + perror_fatal(s, errno); + exit(YICES_EXIT_INTERNAL_ERROR); +} + +void perror_fatal_code(const char *s, int err) { + char buffer[64]; + + strerror_r(err, buffer, sizeof(buffer)); + fprintf(stderr, "%s: %s\n", s, buffer); + exit(YICES_EXIT_INTERNAL_ERROR); +} diff --git a/src/utils/error.h b/src/utils/error.h new file mode 100644 index 000000000..02d29d556 --- /dev/null +++ b/src/utils/error.h @@ -0,0 +1,29 @@ +/* + * This file is part of the Yices SMT Solver. + * Copyright (C) 2023 SRI International. + * + * Yices is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * Yices is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Yices. If not, see . + */ + +#ifndef __ERROR_H +#define __ERROR_H + +/* Like perror, but exit after printing the message. */ +extern void perror_fatal(const char *s); + +/* Like perror, but use ERR as the error code and exit after printing + the message. */ +extern void perror_fatal_code(const char *s, int err); + +#endif diff --git a/src/utils/timeout.c b/src/utils/timeout.c index 3dadd02b4..fe3b9e6fb 100644 --- a/src/utils/timeout.c +++ b/src/utils/timeout.c @@ -44,15 +44,53 @@ #include +#include "utils/error.h" +#include "utils/memalloc.h" #include "utils/timeout.h" #include "yices_exit_codes.h" +#if !defined(MINGW) && defined(THREAD_SAFE) +#include +#endif + +/* + * Timeout state: + * - NOT_READY: initial state and after call to delete_timeout + * - READY: ready to be started (state after init_timeout + * and after clear_timeout) + * - ACTIVE: after a call to start_timeout, before the timer fires + * or the timeout is canceled + * - CANCELED: used by clear_timeout + * - FIRED: after the handler has been called + */ +typedef enum timeout_state { + TIMEOUT_NOT_READY, // 0 + TIMEOUT_READY, + TIMEOUT_ACTIVE, + TIMEOUT_CANCELED, + TIMEOUT_FIRED, +} timeout_state_t; + + +typedef struct timeout_s { + timeout_state_t state; + timeout_handler_t handler; + void *param; +#ifdef THREAD_SAFE + struct timeval tv; + pthread_t thread; + int pipe[2]; +#endif +} timeout_t; + +#ifndef THREAD_SAFE /* * Global structure common to both implementation. */ static timeout_t the_timeout; +#endif #ifndef MINGW @@ -65,7 +103,115 @@ static timeout_t the_timeout; #include #include #include +#include + +#ifdef THREAD_SAFE + +timeout_t *init_timeout(void) { + timeout_t *timeout; + timeout = (timeout_t *) safe_malloc(sizeof(timeout_t)); + + timeout->state = TIMEOUT_READY; + timeout->handler = NULL; + timeout->param = NULL; + timeout->tv.tv_sec = 0; + timeout->tv.tv_usec = 0; + timeout->pipe[0] = timeout->pipe[1] = -1; + + return timeout; +} + +void delete_timeout(timeout_t *timeout) { + /* The read end of the pipe should have been closed by the timer + thread. */ + assert(timeout->pipe[0] == -1); + /* The write end of the pipe should have been closed by + clear_timer. */ + assert(timeout->pipe[1] == -1); + + safe_free(timeout); +} + +static void *timer_thread(void *arg) { + timeout_t *timeout; + int fd; + fd_set readfds; + + timeout = (timeout_t *) arg; + + fd = timeout->pipe[0]; + FD_ZERO(&readfds); + FD_SET(fd, &readfds); + + /* Watch the read end of the pipe until the timeout occurs. */ + switch (select(fd + 1, &readfds, + /*writefds=*/NULL, /*errorfds=*/NULL, + &timeout->tv)) { + case -1: + /* Error. */ + perror_fatal("timer_thread: select"); + break; + + case 0: + /* Timeout. */ + timeout->state = TIMEOUT_FIRED; + timeout->handler(timeout->param); + break; + + case 1: + /* Canceled. */ + assert(FD_ISSET(fd, &readfds)); + timeout->state = TIMEOUT_CANCELED; + break; + + default: + assert(0); + } + + /* Close the read end of the pipe. */ + if (close(timeout->pipe[0]) == -1) + perror_fatal("timer_thread: close"); + timeout->pipe[0] = -1; + + return NULL; +} + +void start_timeout(timeout_t *timeout, uint32_t delay, timeout_handler_t handler, void *param) { + int ret; + + assert(delay > 0 && timeout->state == TIMEOUT_READY && handler != NULL); + + timeout->state = TIMEOUT_ACTIVE; + timeout->tv.tv_sec = delay; + timeout->tv.tv_usec = 0; + timeout->handler = handler; + timeout->param = param; + + if (pipe(timeout->pipe) == -1) + perror_fatal("start_timeout: pipe"); + + ret = pthread_create(&timeout->thread, /*attr=*/NULL, timer_thread, timeout); + if (ret) + perror_fatal_code("start_timeout: pthread_create", ret); +} + +void clear_timeout(timeout_t *timeout) { + void *value; + + /* Tell the thread to exit. */ + if (close(timeout->pipe[1]) == -1) + perror_fatal("clear_timeout: close"); + timeout->pipe[1] = -1; + + /* Wait for the thread to exit. */ + if (pthread_join(timeout->thread, &value) == -1) + perror_fatal("clear_timeout: pthread_join"); + + timeout->state = TIMEOUT_READY; +} + +#else /* !defined(THREAD_SAFE) */ /* * To save the original SIG_ALRM handler @@ -92,7 +238,7 @@ static void alarm_handler(int signum) { * - install the alarm_handler (except on Solaris) * - initialize state to READY */ -void init_timeout(void) { +timeout_t *init_timeout(void) { #ifndef SOLARIS saved_handler = signal(SIGALRM, alarm_handler); if (saved_handler == SIG_ERR) { @@ -104,6 +250,8 @@ void init_timeout(void) { the_timeout.state = TIMEOUT_READY;; the_timeout.handler = NULL; the_timeout.param = NULL; + + return &the_timeout; } @@ -116,11 +264,12 @@ void init_timeout(void) { * * On Solaris: set the signal handler here. */ -void start_timeout(uint32_t delay, timeout_handler_t handler, void *param) { - assert(delay > 0 && the_timeout.state == TIMEOUT_READY && handler != NULL); - the_timeout.state = TIMEOUT_ACTIVE; - the_timeout.handler = handler; - the_timeout.param = param; +void start_timeout(timeout_t *timeout, uint32_t delay, timeout_handler_t handler, void *param) { + assert(timeout == &the_timeout); + assert(delay > 0 && timeout->state == TIMEOUT_READY && handler != NULL); + timeout->state = TIMEOUT_ACTIVE; + timeout->handler = handler; + timeout->param = param; #ifdef SOLARIS saved_handler = signal(SIGALRM, alarm_handler); @@ -140,14 +289,16 @@ void start_timeout(uint32_t delay, timeout_handler_t handler, void *param) { * - cancel the timeout if it's not fired * - set state to READY */ -void clear_timeout(void) { +void clear_timeout(timeout_t *timeout) { + assert(timeout == &the_timeout); + // TODO: Check whether we should block the signals here? - if (the_timeout.state == TIMEOUT_ACTIVE) { + if (the_timeout->state == TIMEOUT_ACTIVE) { // not fired; - the_timeout.state = TIMEOUT_CANCELED; + the_timeout->state = TIMEOUT_CANCELED; (void) alarm(0); // cancel the alarm } - the_timeout.state = TIMEOUT_READY; + the_timeout->state = TIMEOUT_READY; } @@ -156,14 +307,17 @@ void clear_timeout(void) { * - cancel the timeout if it's active * - restore the original handler */ -void delete_timeout(void) { - if (the_timeout.state == TIMEOUT_ACTIVE) { +void delete_timeout(timeout_t *timeout) { + assert(timeout == &the_timeout); + + if (timeout->state == TIMEOUT_ACTIVE) { (void) alarm(0); } (void) signal(SIGALRM, saved_handler); - the_timeout.state = TIMEOUT_NOT_READY; + timeout->state = TIMEOUT_NOT_READY; } +#endif /* defined(THREAD_SAFE) */ #else @@ -210,7 +364,7 @@ static VOID CALLBACK timer_callback(PVOID param, BOOLEAN timer_or_wait_fired) { * Initialization: * - create the timer queue */ -void init_timeout(void) { +timeout_t *init_timeout(void) { timer_queue = CreateTimerQueue(); if (timer_queue == NULL) { fprintf(stderr, "Yices: CreateTimerQueue failed with error code %"PRIu32"\n", (uint32_t) GetLastError()); @@ -221,6 +375,8 @@ void init_timeout(void) { the_timeout.state = TIMEOUT_READY; the_timeout.handler = NULL; the_timeout.param = NULL; + + return &the_timeout; } @@ -231,9 +387,10 @@ void init_timeout(void) { * - handler = handler to call if fired * - param = parameter for the handler */ -void start_timeout(uint32_t delay, timeout_handler_t handler, void *param) { +void start_timeout(timeout_t *timeout, uint32_t delay, timeout_handler_t handler, void *param) { DWORD duetime; + assert(timeout == &the_timeout); assert(delay > 0 && the_timeout.state == TIMEOUT_READY && handler != NULL); duetime = delay * 1000; // delay in milliseconds @@ -255,10 +412,12 @@ void start_timeout(uint32_t delay, timeout_handler_t handler, void *param) { /* * Delete the timer */ -void clear_timeout(void) { +void clear_timeout(timeout_t *timeout) { // GetLastError returns DWORD, which is an unsigned 32bit integer uint32_t error_code; + assert(timeout == &the_timeout); + if (the_timeout.state == TIMEOUT_ACTIVE || the_timeout.state == TIMEOUT_FIRED) { if (the_timeout.state == TIMEOUT_ACTIVE) { // active and not fired yet @@ -292,7 +451,9 @@ void clear_timeout(void) { * Final cleanup: * - delete the timer_queue */ -void delete_timeout(void) { +void delete_timeout(timeout_t *timeout) { + assert(timeout == &the_timeout); + if (! DeleteTimerQueueEx(timer_queue, INVALID_HANDLE_VALUE)) { fprintf(stderr, "Yices: DeleteTimerQueueEx failed with error code %"PRIu32"\n", (uint32_t) GetLastError()); fflush(stderr); diff --git a/src/utils/timeout.h b/src/utils/timeout.h index 6fb3e78cb..009282d0e 100644 --- a/src/utils/timeout.h +++ b/src/utils/timeout.h @@ -53,26 +53,6 @@ #include - -/* - * Timeout state: - * - NOT_READY: initial state and after call to delete_timeout - * - READY: ready to be started (state after init_timeout - * and after clear_timeout) - * - ACTIVE: after a call to start_timeout, before the timer fires - * or the timeout is canceled - * - CANCELED: used by clear_timeout - * - FIRED: after the handler has been called - */ -typedef enum timeout_state { - TIMEOUT_NOT_READY, // 0 - TIMEOUT_READY, - TIMEOUT_ACTIVE, - TIMEOUT_CANCELED, - TIMEOUT_FIRED, -} timeout_state_t; - - /* * Handler: a function with a single (void*) parameter * - should do something cheap and fast. @@ -83,11 +63,7 @@ typedef void (*timeout_handler_t)(void *data); /* * Internal structure used to manage the timeout */ -typedef struct timeout_s { - timeout_state_t state; - timeout_handler_t handler; - void *param; -} timeout_t; +typedef struct timeout_s timeout_t; @@ -98,7 +74,7 @@ typedef struct timeout_s { /* * Initialize internal structures */ -extern void init_timeout(void); +extern timeout_t *init_timeout(void); /* @@ -107,20 +83,20 @@ extern void init_timeout(void); * - handler = the handler to call * - param = data passed to the handler */ -extern void start_timeout(uint32_t delay, timeout_handler_t handler, void *param); +extern void start_timeout(timeout_t *timeout, uint32_t delay, timeout_handler_t handler, void *param); /* * Cancel the timeout if it's not fired. * Cleanup any structure allocated by start timeout. */ -extern void clear_timeout(void); +extern void clear_timeout(timeout_t *timeout); /* * Final cleanup */ -extern void delete_timeout(void); +extern void delete_timeout(timeout_t *timeout); diff --git a/tests/unit/test_timeout.c b/tests/unit/test_timeout.c index 0af1a1606..e780ae640 100644 --- a/tests/unit/test_timeout.c +++ b/tests/unit/test_timeout.c @@ -92,16 +92,16 @@ static void show_counter(uint32_t *c, uint32_t n) { /* * Test: n = size of the counter, t = timeout value */ -static void test_timeout(uint32_t *c, uint32_t n, uint32_t timeout) { +static void test_timeout(timeout_t *to, uint32_t *c, uint32_t n, uint32_t timeout) { double start, end; printf("---> test: size = %"PRIu32", timeout = %"PRIu32" s\n", n, timeout); fflush(stdout); wrapper.interrupted = false; - start_timeout(timeout, handler, &wrapper); + start_timeout(to, timeout, handler, &wrapper); start = get_cpu_time(); loop(c, n); - clear_timeout(); + clear_timeout(to); end = get_cpu_time(); printf(" cpu time = %.2f s\n", end - start); fflush(stdout); @@ -127,15 +127,16 @@ static uint32_t counter[64]; int main(void) { uint32_t n; uint32_t time; - - init_timeout(); + timeout_t *timeout; + + timeout = init_timeout(); time = 20; for (n=5; n<40; n++) { - test_timeout(counter, n, time); + test_timeout(timeout, counter, n, time); } - delete_timeout(); + delete_timeout(timeout); return 0; } From a67e4659705123630d8498e2705ff3b70e6b24f2 Mon Sep 17 00:00:00 2001 From: Mark Mitchell Date: Fri, 22 Sep 2023 13:29:18 -0700 Subject: [PATCH 167/182] Fix typo. --- src/utils/error.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/utils/error.c b/src/utils/error.c index 568fa23f0..fee3577e1 100644 --- a/src/utils/error.c +++ b/src/utils/error.c @@ -23,7 +23,7 @@ #include "yices_exit_codes.h" void perror_fatal(const char *s) { - perror_fatal(s, errno); + perror(s); exit(YICES_EXIT_INTERNAL_ERROR); } From 12ab29a0e0aed3db24e69a048761a7ae2f1f91eb Mon Sep 17 00:00:00 2001 From: Mark Mitchell Date: Fri, 22 Sep 2023 20:40:04 -0700 Subject: [PATCH 168/182] Use ptrhead condition variables to communicate with the timer thread. --- src/utils/timeout.c | 113 ++++++++++++++++++++++---------------------- 1 file changed, 57 insertions(+), 56 deletions(-) diff --git a/src/utils/timeout.c b/src/utils/timeout.c index fe3b9e6fb..00ae7ffc3 100644 --- a/src/utils/timeout.c +++ b/src/utils/timeout.c @@ -77,9 +77,10 @@ typedef struct timeout_s { timeout_handler_t handler; void *param; #ifdef THREAD_SAFE - struct timeval tv; + struct timespec ts; pthread_t thread; - int pipe[2]; + pthread_mutex_t mutex; + pthread_cond_t cond; #endif } timeout_t; @@ -107,6 +108,13 @@ static timeout_t the_timeout; #ifdef THREAD_SAFE +#include + +static inline void check_pthread(int err, const char *msg) { + if (err) + perror_fatal_code(msg, err); +} + timeout_t *init_timeout(void) { timeout_t *timeout; @@ -115,98 +123,91 @@ timeout_t *init_timeout(void) { timeout->state = TIMEOUT_READY; timeout->handler = NULL; timeout->param = NULL; - timeout->tv.tv_sec = 0; - timeout->tv.tv_usec = 0; - timeout->pipe[0] = timeout->pipe[1] = -1; + timeout->ts.tv_sec = 0; + timeout->ts.tv_nsec = 0; + check_pthread(pthread_mutex_init(&timeout->mutex, /*attr=*/NULL), + "start_timeout: pthread_mutex_init"); + check_pthread(pthread_cond_init(&timeout->cond, /*attr=*/NULL), + "start_timeout: pthread_cond_init"); + return timeout; } void delete_timeout(timeout_t *timeout) { - /* The read end of the pipe should have been closed by the timer - thread. */ - assert(timeout->pipe[0] == -1); - /* The write end of the pipe should have been closed by - clear_timer. */ - assert(timeout->pipe[1] == -1); - + check_pthread(pthread_cond_destroy(&timeout->cond), + "delete_timeout: pthread_cond_destroy"); + check_pthread(pthread_mutex_destroy(&timeout->mutex), + "delete_timeout: pthread_mutex_destroy"); + safe_free(timeout); } static void *timer_thread(void *arg) { timeout_t *timeout; - int fd; - fd_set readfds; timeout = (timeout_t *) arg; - fd = timeout->pipe[0]; - FD_ZERO(&readfds); - FD_SET(fd, &readfds); - - /* Watch the read end of the pipe until the timeout occurs. */ - switch (select(fd + 1, &readfds, - /*writefds=*/NULL, /*errorfds=*/NULL, - &timeout->tv)) { - case -1: - /* Error. */ - perror_fatal("timer_thread: select"); - break; - - case 0: - /* Timeout. */ + /* Get exclusive access to the state. */ + check_pthread(pthread_mutex_lock(&timeout->mutex), + "timer_thread: pthread_mutex_lock"); + /* It is theoretically possible that the timeout has already been + canceled by a quick call to clear_timeout. If so, we do not need + to wait. */ + if (timeout->state != TIMEOUT_CANCELED) { + int ret = pthread_cond_timedwait(&timeout->cond, &timeout->mutex, + &timeout->ts); + if (ret && ret != ETIMEDOUT) + perror_fatal_code("timer_thread: pthread_cond_timedwait", ret); + } + + /* If the timeout wasn't canceled, then the timeout expired. */ + if (timeout->state != TIMEOUT_CANCELED) { timeout->state = TIMEOUT_FIRED; timeout->handler(timeout->param); - break; - - case 1: - /* Canceled. */ - assert(FD_ISSET(fd, &readfds)); - timeout->state = TIMEOUT_CANCELED; - break; - - default: - assert(0); } - /* Close the read end of the pipe. */ - if (close(timeout->pipe[0]) == -1) - perror_fatal("timer_thread: close"); - timeout->pipe[0] = -1; + check_pthread(pthread_mutex_unlock(&timeout->mutex), + "timer_thread: pthread_mutex_unlock"); return NULL; } void start_timeout(timeout_t *timeout, uint32_t delay, timeout_handler_t handler, void *param) { - int ret; + struct timeval tv; assert(delay > 0 && timeout->state == TIMEOUT_READY && handler != NULL); timeout->state = TIMEOUT_ACTIVE; - timeout->tv.tv_sec = delay; - timeout->tv.tv_usec = 0; timeout->handler = handler; timeout->param = param; - if (pipe(timeout->pipe) == -1) - perror_fatal("start_timeout: pipe"); + /* Compute the desired stop time. */ + if (gettimeofday(&tv, /*tzp=*/NULL) == -1) + perror_fatal("start_timeout: gettimeofday"); + timeout->ts.tv_sec = tv.tv_sec + delay; + timeout->ts.tv_nsec = 1000 * tv.tv_usec; - ret = pthread_create(&timeout->thread, /*attr=*/NULL, timer_thread, timeout); - if (ret) - perror_fatal_code("start_timeout: pthread_create", ret); + check_pthread(pthread_create(&timeout->thread, /*attr=*/NULL, + timer_thread, timeout), + "start_timeout: pthread_create"); } void clear_timeout(timeout_t *timeout) { void *value; /* Tell the thread to exit. */ - if (close(timeout->pipe[1]) == -1) - perror_fatal("clear_timeout: close"); - timeout->pipe[1] = -1; + check_pthread(pthread_mutex_lock(&timeout->mutex), + "clear_timeout: pthread_mutex_lock"); + timeout->state = TIMEOUT_CANCELED; + check_pthread(pthread_mutex_unlock(&timeout->mutex), + "clear_timeout: pthread_mutex_unlock"); + check_pthread(pthread_cond_signal(&timeout->cond), + "clear_timeout: pthread_cond_signal"); /* Wait for the thread to exit. */ - if (pthread_join(timeout->thread, &value) == -1) - perror_fatal("clear_timeout: pthread_join"); + check_pthread(pthread_join(timeout->thread, &value), + "clear_timeout: pthread_join"); timeout->state = TIMEOUT_READY; } From c6d3564af6cdeb00244d1c90c98d2a362de3b6b8 Mon Sep 17 00:00:00 2001 From: Mark Mitchell Date: Sat, 23 Sep 2023 10:28:10 -0700 Subject: [PATCH 169/182] Simplify thread API checks. --- src/mt/threads.h | 14 +++++++++ src/mt/threads_posix.c | 33 +++++++++------------ src/mt/yices_locks_posix.c | 60 +++++++++++++++++-------------------- src/utils/timeout.c | 61 +++++++++++++++++--------------------- 4 files changed, 84 insertions(+), 84 deletions(-) diff --git a/src/mt/threads.h b/src/mt/threads.h index 9e293e5a9..9f4a40f12 100644 --- a/src/mt/threads.h +++ b/src/mt/threads.h @@ -22,6 +22,8 @@ #include #include +#include "utils/error.h" + /* the thread main */ #ifdef MINGW #define YICES_THREAD_ATTR __stdcall @@ -58,5 +60,17 @@ extern void mt_test_usage(int32_t argc, char* argv[]); extern yices_thread_result_t yices_thread_exit(void); +/* + * Wrap around a thread API call. If the API call indicates error, + * print the message, a description of the error, and exit. + */ +#ifndef MINGW +#define check_thread_api(expr, msg) (expr) +#else +static inline void check_thread_api(int expr, const char *msg) { + if (expr) + perror_fatal_code(msg, expr); +} +#endif #endif /* __THREADS_H */ diff --git a/src/mt/threads_posix.c b/src/mt/threads_posix.c index aa34dadeb..14d043aa4 100644 --- a/src/mt/threads_posix.c +++ b/src/mt/threads_posix.c @@ -26,7 +26,7 @@ #include "utils/error.h" void launch_threads(int32_t nthreads, void* extras, size_t extra_sz, const char* test, yices_thread_main_t thread_main, bool verbose){ - int32_t retcode, thread; + int32_t thread; char buff[1024]; thread_data_t* tdata = (thread_data_t*)calloc(nthreads, sizeof(thread_data_t)); @@ -48,15 +48,12 @@ void launch_threads(int32_t nthreads, void* extras, size_t extra_sz, const char* /* Give child threads the same stack size as the main thread. */ if (getrlimit(RLIMIT_STACK, &rlp) == -1) perror_fatal("launch_threads: getrlimit"); - retcode = pthread_attr_init(&attr); - if (retcode == -1) - perror_fatal_code("launch_threads: pthread_attr_init", retcode); - retcode = pthread_attr_getstacksize(&attr, &stacksize); - if (retcode == -1) - perror_fatal_code("launch_threads: pthread_attr_getstacksize", retcode); - retcode = pthread_attr_setstacksize(&attr, rlp.rlim_cur); - if (retcode == -1) - perror_fatal_code("launch_threads: pthread_attr_setstacksize", retcode); + check_thread_api(pthread_attr_init(&attr), + "launch_threads: pthread_attr_init"); + check_thread_api(pthread_attr_getstacksize(&attr, &stacksize), + "launch_threads: pthread_attr_getstacksize"); + check_thread_api(pthread_attr_setstacksize(&attr, rlp.rlim_cur), + "launch_threads: pthread_attr_setstacksize"); for(thread = 0; thread < nthreads; thread++){ snprintf(buff, 1024, "/tmp/%s_%d.txt", test, thread); @@ -71,14 +68,13 @@ void launch_threads(int32_t nthreads, void* extras, size_t extra_sz, const char* if(tdata[thread].output == NULL) perror_fatal("launch_threads: fopen"); - retcode = pthread_create(&tids[thread], &attr, thread_main, &tdata[thread]); - if(retcode) - perror_fatal_code("launch_threads: pthread_create", retcode); + check_thread_api(pthread_create(&tids[thread], &attr, thread_main, + &tdata[thread]), + "launch_threads: pthread_create"); } - retcode = pthread_attr_destroy(&attr); - if (retcode) - perror_fatal_code("launch_threads: pthread_attr_destroy", retcode); + check_thread_api(pthread_attr_destroy(&attr), + "launch_threads: pthread_attr_destroy"); if(verbose){ @@ -87,9 +83,8 @@ void launch_threads(int32_t nthreads, void* extras, size_t extra_sz, const char* for(thread = 0; thread < nthreads; thread++){ - retcode = pthread_join(tids[thread], NULL); - if(retcode) - perror_fatal_code("launch_threads: pthread_join", retcode); + check_thread_api(pthread_join(tids[thread], NULL), + "launch_threads: pthread_join"); fclose(tdata[thread].output); } diff --git a/src/mt/yices_locks_posix.c b/src/mt/yices_locks_posix.c index 827e7f584..a84f00f84 100644 --- a/src/mt/yices_locks_posix.c +++ b/src/mt/yices_locks_posix.c @@ -23,6 +23,7 @@ #include #include "yices_locks.h" +#include "threads.h" static void print_error(const char *caller, const char *syscall, int errnum) { char buffer[64]; @@ -33,27 +34,29 @@ static void print_error(const char *caller, const char *syscall, int errnum) { } int32_t create_yices_lock(yices_lock_t* lock){ - int32_t retcode; + pthread_mutexattr_t *mattr = NULL; + #ifndef NDEBUG + /* Make the mutex detect recursive locks. */ pthread_mutexattr_t mta; - pthread_mutexattr_t *mattr = &mta; -#else - pthread_mutexattr_t *mattr = NULL; + + mattr = &mta; + + check_thread_api(pthread_mutexattr_init(mattr), + "create_yices_lock: pthread_mutexattr_init"); + check_thread_api(pthread_mutexattr_settype(mattr, + PTHREAD_MUTEX_ERRORCHECK), + "create_yices_lock: pthread_mutextattr_settype"); #endif + check_thread_api(pthread_mutex_init(lock, mattr), + "create_yices_lock: pthread_mutex_init"); + #ifndef NDEBUG - retcode = pthread_mutexattr_init(mattr); - if(retcode) - print_error("create_yices_lock", "pthread_mutexattr_init", retcode); - retcode = pthread_mutexattr_settype(mattr, PTHREAD_MUTEX_ERRORCHECK); - if(retcode) - print_error("create_yices_lock", "pthread_mutextattr_settype", retcode); + check_thread_api(pthread_mutexattr_destroy(mattr) #endif - retcode = pthread_mutex_init(lock, mattr); - if(retcode) - print_error("create_yices_lock", "pthread_mutex_init", retcode); - assert(retcode == 0); - return retcode; + + return 0; } int32_t try_yices_lock(yices_lock_t* lock){ @@ -71,27 +74,20 @@ int32_t try_yices_lock(yices_lock_t* lock){ int32_t get_yices_lock(yices_lock_t* lock){ - int32_t retcode = pthread_mutex_lock(lock); - if(retcode){ - print_error("get_yices_lock", "pthread_mutex_lock", retcode); - } - assert(retcode == 0); - return retcode; + check_thread_api(pthread_mutex_lock(lock), + "get_yices_lock: pthread_mutex_lock"); + + return 0; } int32_t release_yices_lock(yices_lock_t* lock){ - int32_t retcode = pthread_mutex_unlock(lock); - if(retcode){ - print_error("release_yices_lock", "pthread_mutex_unlock", retcode); - } - assert(retcode == 0); - return retcode; + check_thread_api(pthread_mutex_unlock(lock), + "release_yices_lock: pthread_mutex_unlock"); + + return 0; } void destroy_yices_lock(yices_lock_t* lock){ - int32_t retcode = pthread_mutex_destroy(lock); - if(retcode){ - print_error("destroy_yices_lock", "pthread_mutex_destroy", retcode); - } - assert(retcode == 0); + check_thread_api(pthread_mutex_destroy(lock), + "destroy_yices_lock: pthread_mutex_destroy"); } diff --git a/src/utils/timeout.c b/src/utils/timeout.c index 00ae7ffc3..169e575b1 100644 --- a/src/utils/timeout.c +++ b/src/utils/timeout.c @@ -43,16 +43,16 @@ */ #include +#if !defined(MINGW) && defined(THREAD_SAFE) +#include +#include +#endif #include "utils/error.h" #include "utils/memalloc.h" #include "utils/timeout.h" #include "yices_exit_codes.h" -#if !defined(MINGW) && defined(THREAD_SAFE) -#include -#endif - /* * Timeout state: * - NOT_READY: initial state and after call to delete_timeout @@ -108,12 +108,7 @@ static timeout_t the_timeout; #ifdef THREAD_SAFE -#include - -static inline void check_pthread(int err, const char *msg) { - if (err) - perror_fatal_code(msg, err); -} +#include "mt/threads.h" timeout_t *init_timeout(void) { timeout_t *timeout; @@ -126,19 +121,19 @@ timeout_t *init_timeout(void) { timeout->ts.tv_sec = 0; timeout->ts.tv_nsec = 0; - check_pthread(pthread_mutex_init(&timeout->mutex, /*attr=*/NULL), - "start_timeout: pthread_mutex_init"); - check_pthread(pthread_cond_init(&timeout->cond, /*attr=*/NULL), - "start_timeout: pthread_cond_init"); + check_thread_api(pthread_mutex_init(&timeout->mutex, /*attr=*/NULL), + "start_timeout: pthread_mutex_init"); + check_thread_api(pthread_cond_init(&timeout->cond, /*attr=*/NULL), + "start_timeout: pthread_cond_init"); return timeout; } void delete_timeout(timeout_t *timeout) { - check_pthread(pthread_cond_destroy(&timeout->cond), - "delete_timeout: pthread_cond_destroy"); - check_pthread(pthread_mutex_destroy(&timeout->mutex), - "delete_timeout: pthread_mutex_destroy"); + check_thread_api(pthread_cond_destroy(&timeout->cond), + "delete_timeout: pthread_cond_destroy"); + check_thread_api(pthread_mutex_destroy(&timeout->mutex), + "delete_timeout: pthread_mutex_destroy"); safe_free(timeout); } @@ -149,8 +144,8 @@ static void *timer_thread(void *arg) { timeout = (timeout_t *) arg; /* Get exclusive access to the state. */ - check_pthread(pthread_mutex_lock(&timeout->mutex), - "timer_thread: pthread_mutex_lock"); + check_thread_api(pthread_mutex_lock(&timeout->mutex), + "timer_thread: pthread_mutex_lock"); /* It is theoretically possible that the timeout has already been canceled by a quick call to clear_timeout. If so, we do not need to wait. */ @@ -167,8 +162,8 @@ static void *timer_thread(void *arg) { timeout->handler(timeout->param); } - check_pthread(pthread_mutex_unlock(&timeout->mutex), - "timer_thread: pthread_mutex_unlock"); + check_thread_api(pthread_mutex_unlock(&timeout->mutex), + "timer_thread: pthread_mutex_unlock"); return NULL; } @@ -188,26 +183,26 @@ void start_timeout(timeout_t *timeout, uint32_t delay, timeout_handler_t handler timeout->ts.tv_sec = tv.tv_sec + delay; timeout->ts.tv_nsec = 1000 * tv.tv_usec; - check_pthread(pthread_create(&timeout->thread, /*attr=*/NULL, - timer_thread, timeout), - "start_timeout: pthread_create"); + check_thread_api(pthread_create(&timeout->thread, /*attr=*/NULL, + timer_thread, timeout), + "start_timeout: pthread_create"); } void clear_timeout(timeout_t *timeout) { void *value; /* Tell the thread to exit. */ - check_pthread(pthread_mutex_lock(&timeout->mutex), - "clear_timeout: pthread_mutex_lock"); + check_thread_api(pthread_mutex_lock(&timeout->mutex), + "clear_timeout: pthread_mutex_lock"); timeout->state = TIMEOUT_CANCELED; - check_pthread(pthread_mutex_unlock(&timeout->mutex), - "clear_timeout: pthread_mutex_unlock"); - check_pthread(pthread_cond_signal(&timeout->cond), - "clear_timeout: pthread_cond_signal"); + check_thread_api(pthread_mutex_unlock(&timeout->mutex), + "clear_timeout: pthread_mutex_unlock"); + check_thread_api(pthread_cond_signal(&timeout->cond), + "clear_timeout: pthread_cond_signal"); /* Wait for the thread to exit. */ - check_pthread(pthread_join(timeout->thread, &value), - "clear_timeout: pthread_join"); + check_thread_api(pthread_join(timeout->thread, &value), + "clear_timeout: pthread_join"); timeout->state = TIMEOUT_READY; } From e2bd36f31d938831ecd247821aadff1f0788bd96 Mon Sep 17 00:00:00 2001 From: Ahmed <43099566+ahmed-irfan@users.noreply.github.com> Date: Fri, 22 Sep 2023 15:28:46 -0700 Subject: [PATCH 170/182] Update COMPILING fixed typo --- doc/COMPILING | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/COMPILING b/doc/COMPILING index 554b30de1..1de49bd07 100644 --- a/doc/COMPILING +++ b/doc/COMPILING @@ -633,7 +633,7 @@ dynamic and static libraries in different locations: 2) Build GMP as a static library in a different location (say /tools/static_gmp/). This can be done by giving options - --disable-share --enable-static --prefix=/tools/static_gmp + --disable-shared --enable-static --prefix=/tools/static_gmp to GMP's configure script. This will build From ccf823dfce6110507d0573eb865e9deee1e28f0d Mon Sep 17 00:00:00 2001 From: Ahmed <43099566+ahmed-irfan@users.noreply.github.com> Date: Fri, 22 Sep 2023 22:52:30 -0700 Subject: [PATCH 171/182] Update COMPILING --- doc/COMPILING | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/COMPILING b/doc/COMPILING index 1de49bd07..b8c0e5a1d 100644 --- a/doc/COMPILING +++ b/doc/COMPILING @@ -637,7 +637,7 @@ dynamic and static libraries in different locations: to GMP's configure script. This will build - /tools/static_gmp/lib/libgmp.a + /tools/static_gmp/lib/libgmp.dll.a and the corresponding 'gmp.h' will be in /tools/static_gmp/include. @@ -647,7 +647,7 @@ configure script so that it can find 'libgmp.a' in its nonstandard location and the corresponding 'gmp.h'. The best way to do this is to configure Yices using: - ./configure --with-static-gmp=/tools/static_gmp/lib/libgmp.a \ + ./configure --with-static-gmp=/tools/static_gmp/lib/libgmp.dll.a \ --with-static-gmp-include-dir=/tools/static_gmp/include From 62ee73e71c688150a88ecb68c1528bedc3b5b399 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Sat, 23 Sep 2023 00:41:08 -0700 Subject: [PATCH 172/182] Revert "Update COMPILING" This reverts commit 0dcd12f41197688f43924b2aabd0576fcef776a7. --- doc/COMPILING | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/COMPILING b/doc/COMPILING index b8c0e5a1d..1de49bd07 100644 --- a/doc/COMPILING +++ b/doc/COMPILING @@ -637,7 +637,7 @@ dynamic and static libraries in different locations: to GMP's configure script. This will build - /tools/static_gmp/lib/libgmp.dll.a + /tools/static_gmp/lib/libgmp.a and the corresponding 'gmp.h' will be in /tools/static_gmp/include. @@ -647,7 +647,7 @@ configure script so that it can find 'libgmp.a' in its nonstandard location and the corresponding 'gmp.h'. The best way to do this is to configure Yices using: - ./configure --with-static-gmp=/tools/static_gmp/lib/libgmp.dll.a \ + ./configure --with-static-gmp=/tools/static_gmp/lib/libgmp.a \ --with-static-gmp-include-dir=/tools/static_gmp/include From fe6a8fd8cecae84edfcca88e0fc0b1f85551db49 Mon Sep 17 00:00:00 2001 From: Mark Mitchell Date: Sat, 23 Sep 2023 10:52:23 -0700 Subject: [PATCH 173/182] Fix typo in non-THREAD_SAFE code. --- src/utils/timeout.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/utils/timeout.c b/src/utils/timeout.c index 169e575b1..a70b9ce54 100644 --- a/src/utils/timeout.c +++ b/src/utils/timeout.c @@ -289,12 +289,12 @@ void clear_timeout(timeout_t *timeout) { assert(timeout == &the_timeout); // TODO: Check whether we should block the signals here? - if (the_timeout->state == TIMEOUT_ACTIVE) { + if (the_timeout.state == TIMEOUT_ACTIVE) { // not fired; - the_timeout->state = TIMEOUT_CANCELED; + the_timeout.state = TIMEOUT_CANCELED; (void) alarm(0); // cancel the alarm } - the_timeout->state = TIMEOUT_READY; + the_timeout.state = TIMEOUT_READY; } @@ -306,11 +306,11 @@ void clear_timeout(timeout_t *timeout) { void delete_timeout(timeout_t *timeout) { assert(timeout == &the_timeout); - if (timeout->state == TIMEOUT_ACTIVE) { + if (the_timeout.state == TIMEOUT_ACTIVE) { (void) alarm(0); } (void) signal(SIGALRM, saved_handler); - timeout->state = TIMEOUT_NOT_READY; + the_timeout.state = TIMEOUT_NOT_READY; } #endif /* defined(THREAD_SAFE) */ From 41897409ec339635cd58753389520c09f695a89e Mon Sep 17 00:00:00 2001 From: Mark Mitchell Date: Sat, 23 Sep 2023 10:56:05 -0700 Subject: [PATCH 174/182] Undo unnecessary changes. --- src/utils/timeout.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/utils/timeout.c b/src/utils/timeout.c index a70b9ce54..3a5812b3a 100644 --- a/src/utils/timeout.c +++ b/src/utils/timeout.c @@ -263,9 +263,9 @@ timeout_t *init_timeout(void) { void start_timeout(timeout_t *timeout, uint32_t delay, timeout_handler_t handler, void *param) { assert(timeout == &the_timeout); assert(delay > 0 && timeout->state == TIMEOUT_READY && handler != NULL); - timeout->state = TIMEOUT_ACTIVE; - timeout->handler = handler; - timeout->param = param; + the_timeout.state = TIMEOUT_ACTIVE; + the_timeout.handler = handler; + the_timeout.param = param; #ifdef SOLARIS saved_handler = signal(SIGALRM, alarm_handler); From b8aa85bad8394c121f68704b44cedb6adfc21a5e Mon Sep 17 00:00:00 2001 From: Mark Mitchell Date: Sat, 23 Sep 2023 10:57:40 -0700 Subject: [PATCH 175/182] Undo unncessary change. --- src/utils/timeout.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/utils/timeout.c b/src/utils/timeout.c index 3a5812b3a..80518f5bd 100644 --- a/src/utils/timeout.c +++ b/src/utils/timeout.c @@ -262,7 +262,7 @@ timeout_t *init_timeout(void) { */ void start_timeout(timeout_t *timeout, uint32_t delay, timeout_handler_t handler, void *param) { assert(timeout == &the_timeout); - assert(delay > 0 && timeout->state == TIMEOUT_READY && handler != NULL); + assert(delay > 0 && the_timeout.state == TIMEOUT_READY && handler != NULL); the_timeout.state = TIMEOUT_ACTIVE; the_timeout.handler = handler; the_timeout.param = param; From 4b39bd1a25da1890a2f172c51e4f2cdbc5bf0c66 Mon Sep 17 00:00:00 2001 From: Mark Mitchell Date: Sat, 23 Sep 2023 11:13:12 -0700 Subject: [PATCH 176/182] Fix typo. --- src/mt/yices_locks_posix.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mt/yices_locks_posix.c b/src/mt/yices_locks_posix.c index a84f00f84..4ab6e1665 100644 --- a/src/mt/yices_locks_posix.c +++ b/src/mt/yices_locks_posix.c @@ -53,7 +53,7 @@ int32_t create_yices_lock(yices_lock_t* lock){ "create_yices_lock: pthread_mutex_init"); #ifndef NDEBUG - check_thread_api(pthread_mutexattr_destroy(mattr) + check_thread_api(pthread_mutexattr_destroy(mattr)); #endif return 0; From de43c660a65a15ae0b3d5a3b2484a73020712135 Mon Sep 17 00:00:00 2001 From: Mark Mitchell Date: Sat, 23 Sep 2023 11:21:54 -0700 Subject: [PATCH 177/182] Fix typo. --- src/mt/yices_locks_posix.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/mt/yices_locks_posix.c b/src/mt/yices_locks_posix.c index 4ab6e1665..821b809df 100644 --- a/src/mt/yices_locks_posix.c +++ b/src/mt/yices_locks_posix.c @@ -53,7 +53,8 @@ int32_t create_yices_lock(yices_lock_t* lock){ "create_yices_lock: pthread_mutex_init"); #ifndef NDEBUG - check_thread_api(pthread_mutexattr_destroy(mattr)); + check_thread_api(pthread_mutexattr_destroy(mattr), + "create_yices_lock: pthread_mutexattr_destroy"); #endif return 0; From e5d498a4b63a9abc76bdd3fa2392b2062af4fa7c Mon Sep 17 00:00:00 2001 From: Mark Mitchell Date: Tue, 26 Sep 2023 09:14:05 -0700 Subject: [PATCH 178/182] Remove extra factor of 4. (#458) Co-authored-by: Mark Mitchell --- src/mcsat/bv/explain/arith_norm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mcsat/bv/explain/arith_norm.c b/src/mcsat/bv/explain/arith_norm.c index d78d31f10..4ef1c7e6c 100644 --- a/src/mcsat/bv/explain/arith_norm.c +++ b/src/mcsat/bv/explain/arith_norm.c @@ -796,7 +796,7 @@ term_t arith_normalise_upto(arith_norm_t* norm, term_t u, uint32_t w){ term_t *preproc[4]; for (int i = 0; i < 4; i ++) - preproc[i] = (term_t *) safe_malloc(4 * w * sizeof(term_t)); + preproc[i] = (term_t *) safe_malloc(w * sizeof(term_t)); // We initialise the hashmap fix_htbl_init(preproc[0], w); From 9e52bcc5453741af823fcd341351317657021f11 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Wed, 27 Sep 2023 11:04:36 -0700 Subject: [PATCH 179/182] mcsat-arrays-weq-graph: fix in filtering select terms --- src/mcsat/weq/weak_eq_graph.c | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/src/mcsat/weq/weak_eq_graph.c b/src/mcsat/weq/weak_eq_graph.c index 08690d0d9..13c4d5b3c 100644 --- a/src/mcsat/weq/weak_eq_graph.c +++ b/src/mcsat/weq/weak_eq_graph.c @@ -1289,9 +1289,11 @@ void copy_uniques(ivector_t *to, ivector_t *from) { */ static void filter_select_terms(const term_table_t* terms, ivector_t *select_terms, - const ivector_t *array_terms) { + const ivector_t *array_terms) { uint32_t i, j; composite_term_t* select_desc; + term_t t; + term_kind_t t_kind; int_hset_t array_terms_set; init_int_hset(&array_terms_set, 0); @@ -1301,10 +1303,20 @@ void filter_select_terms(const term_table_t* terms, ivector_t *select_terms, j = 0; for (i = 0; i < select_terms->size; ++i) { - select_desc = app_term_desc(terms, select_terms->data[i]); - if (int_hset_member(&array_terms_set, select_desc->arg[0])) { - select_terms->data[j++] = select_terms->data[i]; - } + t = select_terms->data[i]; + do { + /* The array term (first arg) in the select term can be a select + * term that returns an array term. We loop to get the array + * variable or the store term. + */ + select_desc = app_term_desc(terms, t); + t = select_desc->arg[0]; + if (int_hset_member(&array_terms_set, t)) { + select_terms->data[j++] = select_terms->data[i]; + break; + } + t_kind = term_kind(terms, t); + } while (t_kind == APP_TERM); } ivector_shrink(select_terms, j); From 7aeba75bf540ab8d0478895882e95ab4ba288345 Mon Sep 17 00:00:00 2001 From: Ahmed Irfan Date: Wed, 27 Sep 2023 11:47:34 -0700 Subject: [PATCH 180/182] regress test --- ...e-alloca_true-termination.c.i.partial.smt2 | 8134 +++++++++++++++++ ...oca_true-termination.c.i.partial.smt2.gold | 178 + ..._true-termination.c.i.partial.smt2.options | 1 + 3 files changed, 8313 insertions(+) create mode 100644 tests/regress/mcsat/arrays/aviad_true-alloca_true-termination.c.i.partial.smt2 create mode 100644 tests/regress/mcsat/arrays/aviad_true-alloca_true-termination.c.i.partial.smt2.gold create mode 100644 tests/regress/mcsat/arrays/aviad_true-alloca_true-termination.c.i.partial.smt2.options diff --git a/tests/regress/mcsat/arrays/aviad_true-alloca_true-termination.c.i.partial.smt2 b/tests/regress/mcsat/arrays/aviad_true-alloca_true-termination.c.i.partial.smt2 new file mode 100644 index 000000000..79b7f4b54 --- /dev/null +++ b/tests/regress/mcsat/arrays/aviad_true-alloca_true-termination.c.i.partial.smt2 @@ -0,0 +1,8134 @@ +(set-info :smt-lib-version 2.6) +(set-logic QF_ANIA) +(set-info + :source | + +SMT script generated by Ultimate Buchi Automizer [1,2]. +Ultimate Buchi Automizer is a tool that analyzes termination of programs that +are written in C. The tool implements a novel automata-theoretic approach where +the analyzed program is decomposed into modules [3]. + +This SMT script belongs to a set of SMT scripts that was generated by applying +Ultimate Buchi Automizer (revision r14204) to benchmarks from the +SV-COMP 2015 [4,5] which are available at [6]. + +2015-04-30, Matthias Heizmann (heizmann@informatik.uni-freiburg.de) + + +[1] https://ultimate.informatik.uni-freiburg.de/BuchiAutomizer/ +[2] Matthias Heizmann, Daniel Dietsch, Jan Leike, Betim Musa, Andreas Podelski: +Ultimate Automizer with Array Interpolation - (Competition Contribution). +TACAS 2015: 455-457 +[3] Matthias Heizmann, Jochen Hoenicke, Andreas Podelski: +Termination Analysis by Learning Terminating Programs. CAV 2014: 797-813 +[4] Dirk Beyer: Software Verification and Verifiable Witnesses - (Report on +SV-COMP 2015). TACAS 2015: 401-416 +[5] http://sv-comp.sosy-lab.org/2015/ +[6] https://svn.sosy-lab.org/software/sv-benchmarks/tags/svcomp15/ + + +Made compatible to SMT-COMP rules by SMTInterpol +|) +(set-info :category "industrial") +(declare-fun |#sizeof~INT| () Int) +(declare-fun |c_old(#memory_int)| () (Array Int (Array Int Int))) +(declare-fun |c_#memory_int| () (Array Int (Array Int Int))) +(declare-fun |c_old(#valid)| () (Array Int Int)) +(declare-fun |c_old(#length)| () (Array Int Int)) +(declare-fun |c_f_#in~a| () Int) +(declare-fun c_f_~a_ref~2.base () Int) +(declare-fun c_f_~a_ref~2.offset () Int) +(declare-fun c_f_~tmp~2.base () Int) +(declare-fun c_f_~count~2.base () Int) +(declare-fun c_f_~count~2.offset () Int) +(assert (= |#sizeof~INT| 4)) +(push 1) +(declare-fun v_f_~a_1_const_918515064 () Int) +(declare-fun |v_f_#in~a_1_const_-579988364| () Int) +(assert + (let + ((v_f_~a_1 v_f_~a_1_const_918515064) + (|v_f_#in~a_1| |v_f_#in~a_1_const_-579988364|)) + (= v_f_~a_1 |v_f_#in~a_1|))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#length_2_const_-181462172| () (Array Int Int)) +(declare-fun |v_f_#t~malloc0.base_1_const_-1542064837| () Int) +(declare-fun |v_#length_1_const_-181462171| () (Array Int Int)) +(declare-fun |v_f_#t~malloc0.offset_1_const_739207225| () Int) +(declare-fun |v_#valid_2_const_2043923482| () (Array Int Int)) +(declare-fun |v_#valid_1_const_2043923483| () (Array Int Int)) +(assert + (let + ((|v_#length_2| |v_#length_2_const_-181462172|) + (|v_f_#t~malloc0.base_1| |v_f_#t~malloc0.base_1_const_-1542064837|) + (|v_#length_1| |v_#length_1_const_-181462171|) + (|v_f_#t~malloc0.offset_1| |v_f_#t~malloc0.offset_1_const_739207225|) + (|v_#valid_2| |v_#valid_2_const_2043923482|) + (|v_#valid_1| |v_#valid_1_const_2043923483|)) + (and (= |v_#length_1| (store |v_#length_2| |v_f_#t~malloc0.base_1| 4)) + (not (= |v_f_#t~malloc0.base_1| 0)) + (= |v_f_#t~malloc0.offset_1| 0) + (= |v_#valid_1| (store |v_#valid_2| |v_f_#t~malloc0.base_1| 1)) + (= (not (= (select |v_#valid_2| |v_f_#t~malloc0.base_1|) 0)) false)))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun v_f_~a_ref~2.base_1_const_-611657909 () Int) +(declare-fun |v_f_#t~malloc0.base_3_const_-1542064839| () Int) +(declare-fun v_f_~a_ref~2.offset_1_const_1631923785 () Int) +(declare-fun |v_f_#t~malloc0.offset_3_const_739207223| () Int) +(assert + (let + ((v_f_~a_ref~2.base_1 v_f_~a_ref~2.base_1_const_-611657909) + (|v_f_#t~malloc0.base_3| |v_f_#t~malloc0.base_3_const_-1542064839|) + (v_f_~a_ref~2.offset_1 v_f_~a_ref~2.offset_1_const_1631923785) + (|v_f_#t~malloc0.offset_3| |v_f_#t~malloc0.offset_3_const_739207223|)) + (and (= v_f_~a_ref~2.base_1 |v_f_#t~malloc0.base_3|) + (= v_f_~a_ref~2.offset_1 |v_f_#t~malloc0.offset_3|)))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#length_4_const_-181462174| () (Array Int Int)) +(declare-fun |v_f_#t~malloc1.base_1_const_200738844| () Int) +(declare-fun |v_#length_3_const_-181462173| () (Array Int Int)) +(declare-fun |v_f_#t~malloc1.offset_1_const_542570202| () Int) +(declare-fun |v_#valid_4_const_2043923480| () (Array Int Int)) +(declare-fun |v_#valid_3_const_2043923481| () (Array Int Int)) +(assert + (let + ((|v_#length_4| |v_#length_4_const_-181462174|) + (|v_f_#t~malloc1.base_1| |v_f_#t~malloc1.base_1_const_200738844|) + (|v_#length_3| |v_#length_3_const_-181462173|) + (|v_f_#t~malloc1.offset_1| |v_f_#t~malloc1.offset_1_const_542570202|) + (|v_#valid_4| |v_#valid_4_const_2043923480|) + (|v_#valid_3| |v_#valid_3_const_2043923481|)) + (and (= |v_#length_3| (store |v_#length_4| |v_f_#t~malloc1.base_1| 4)) + (not (= |v_f_#t~malloc1.base_1| 0)) + (= |v_f_#t~malloc1.offset_1| 0) + (= |v_#valid_3| (store |v_#valid_4| |v_f_#t~malloc1.base_1| 1)) + (= (not (= (select |v_#valid_4| |v_f_#t~malloc1.base_1|) 0)) false)))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun v_f_~tmp~2.offset_1_const_-1952368085 () Int) +(declare-fun |v_f_#t~malloc1.offset_3_const_542570200| () Int) +(declare-fun v_f_~tmp~2.base_1_const_443818925 () Int) +(declare-fun |v_f_#t~malloc1.base_3_const_200738842| () Int) +(assert + (let + ((v_f_~tmp~2.offset_1 v_f_~tmp~2.offset_1_const_-1952368085) + (|v_f_#t~malloc1.offset_3| |v_f_#t~malloc1.offset_3_const_542570200|) + (v_f_~tmp~2.base_1 v_f_~tmp~2.base_1_const_443818925) + (|v_f_#t~malloc1.base_3| |v_f_#t~malloc1.base_3_const_200738842|)) + (and (= v_f_~tmp~2.offset_1 |v_f_#t~malloc1.offset_3|) + (= v_f_~tmp~2.base_1 |v_f_#t~malloc1.base_3|)))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#length_6_const_-181462176| () (Array Int Int)) +(declare-fun |v_f_#t~malloc2.base_1_const_1943427965| () Int) +(declare-fun |v_#length_5_const_-181462175| () (Array Int Int)) +(declare-fun |v_f_#t~malloc2.offset_1_const_346047995| () Int) +(declare-fun |v_#valid_6_const_2043923478| () (Array Int Int)) +(declare-fun |v_#valid_5_const_2043923479| () (Array Int Int)) +(assert + (let + ((|v_#length_6| |v_#length_6_const_-181462176|) + (|v_f_#t~malloc2.base_1| |v_f_#t~malloc2.base_1_const_1943427965|) + (|v_#length_5| |v_#length_5_const_-181462175|) + (|v_f_#t~malloc2.offset_1| |v_f_#t~malloc2.offset_1_const_346047995|) + (|v_#valid_6| |v_#valid_6_const_2043923478|) + (|v_#valid_5| |v_#valid_5_const_2043923479|)) + (and (= |v_#length_5| (store |v_#length_6| |v_f_#t~malloc2.base_1| 4)) + (not (= |v_f_#t~malloc2.base_1| 0)) + (= |v_f_#t~malloc2.offset_1| 0) + (= |v_#valid_5| (store |v_#valid_6| |v_f_#t~malloc2.base_1| 1)) + (= (not (= (select |v_#valid_6| |v_f_#t~malloc2.base_1|) 0)) false)))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun v_f_~count~2.base_1_const_916075429 () Int) +(declare-fun |v_f_#t~malloc2.base_3_const_1943427963| () Int) +(declare-fun v_f_~count~2.offset_1_const_906701859 () Int) +(declare-fun |v_f_#t~malloc2.offset_3_const_346047993| () Int) +(assert + (let + ((v_f_~count~2.base_1 v_f_~count~2.base_1_const_916075429) + (|v_f_#t~malloc2.base_3| |v_f_#t~malloc2.base_3_const_1943427963|) + (v_f_~count~2.offset_1 v_f_~count~2.offset_1_const_906701859) + (|v_f_#t~malloc2.offset_3| |v_f_#t~malloc2.offset_3_const_346047993|)) + (and (= v_f_~count~2.base_1 |v_f_#t~malloc2.base_3|) + (= v_f_~count~2.offset_1 |v_f_#t~malloc2.offset_3|)))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#memory_int_2_const_-593731461| () + (Array Int (Array Int Int))) +(declare-fun v_f_~a_ref~2.base_2_const_-611657910 () Int) +(declare-fun v_f_~a_ref~2.offset_2_const_1631923784 () Int) +(declare-fun v_f_~a_2_const_918515063 () Int) +(declare-fun |v_#memory_int_1_const_-593731464| () + (Array Int (Array Int Int))) +(declare-fun |v_#length_7_const_-181462161| () (Array Int Int)) +(declare-fun |v_#valid_7_const_2043923477| () (Array Int Int)) +(assert + (let + ((|v_#memory_int_2| |v_#memory_int_2_const_-593731461|) + (v_f_~a_ref~2.base_2 v_f_~a_ref~2.base_2_const_-611657910) + (v_f_~a_ref~2.offset_2 v_f_~a_ref~2.offset_2_const_1631923784) + (v_f_~a_2 v_f_~a_2_const_918515063) + (|v_#memory_int_1| |v_#memory_int_1_const_-593731464|) + (|v_#length_7| |v_#length_7_const_-181462161|) + (|v_#valid_7| |v_#valid_7_const_2043923477|)) + (and + (<= (+ 4 v_f_~a_ref~2.offset_2) (select |v_#length_7| v_f_~a_ref~2.base_2)) + (not (= (select |v_#valid_7| v_f_~a_ref~2.base_2) 0)) + (= |v_#memory_int_1| + (store |v_#memory_int_2| v_f_~a_ref~2.base_2 + (store (select |v_#memory_int_2| v_f_~a_ref~2.base_2) v_f_~a_ref~2.offset_2 + v_f_~a_2)))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#valid_8_const_2043923476| () (Array Int Int)) +(declare-fun v_f_~a_ref~2.base_3_const_-611657911 () Int) +(assert + (let + ((|v_#valid_8| |v_#valid_8_const_2043923476|) + (v_f_~a_ref~2.base_3 v_f_~a_ref~2.base_3_const_-611657911)) + (not (not (= (select |v_#valid_8| v_f_~a_ref~2.base_3) 0))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#length_8_const_-181462162| () (Array Int Int)) +(declare-fun v_f_~a_ref~2.base_4_const_-611657912 () Int) +(declare-fun v_f_~a_ref~2.offset_3_const_1631923783 () Int) +(assert + (let + ((|v_#length_8| |v_#length_8_const_-181462162|) + (v_f_~a_ref~2.base_4 v_f_~a_ref~2.base_4_const_-611657912) + (v_f_~a_ref~2.offset_3 v_f_~a_ref~2.offset_3_const_1631923783)) + (not + (<= (+ 4 v_f_~a_ref~2.offset_3) (select |v_#length_8| v_f_~a_ref~2.base_4))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#memory_int_4_const_-593731579| () + (Array Int (Array Int Int))) +(declare-fun v_f_~tmp~2.base_2_const_443818924 () Int) +(declare-fun v_f_~tmp~2.offset_2_const_-1952368086 () Int) +(declare-fun |v_#memory_int_3_const_-593731462| () + (Array Int (Array Int Int))) +(declare-fun |v_#length_9_const_-181462163| () (Array Int Int)) +(declare-fun |v_#valid_9_const_2043923475| () (Array Int Int)) +(assert + (let + ((|v_#memory_int_4| |v_#memory_int_4_const_-593731579|) + (v_f_~tmp~2.base_2 v_f_~tmp~2.base_2_const_443818924) + (v_f_~tmp~2.offset_2 v_f_~tmp~2.offset_2_const_-1952368086) + (|v_#memory_int_3| |v_#memory_int_3_const_-593731462|) + (|v_#length_9| |v_#length_9_const_-181462163|) + (|v_#valid_9| |v_#valid_9_const_2043923475|)) + (and (<= (+ 4 v_f_~tmp~2.offset_2) (select |v_#length_9| v_f_~tmp~2.base_2)) + (not (= (select |v_#valid_9| v_f_~tmp~2.base_2) 0)) + (= |v_#memory_int_3| + (store |v_#memory_int_4| v_f_~tmp~2.base_2 + (store (select |v_#memory_int_4| v_f_~tmp~2.base_2) v_f_~tmp~2.offset_2 0)))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#valid_10_const_-1605542637| () (Array Int Int)) +(declare-fun v_f_~tmp~2.base_3_const_443818923 () Int) +(assert + (let + ((|v_#valid_10| |v_#valid_10_const_-1605542637|) + (v_f_~tmp~2.base_3 v_f_~tmp~2.base_3_const_443818923)) + (not (not (= (select |v_#valid_10| v_f_~tmp~2.base_3) 0))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#length_10_const_-660984215| () (Array Int Int)) +(declare-fun v_f_~tmp~2.base_4_const_443818922 () Int) +(declare-fun v_f_~tmp~2.offset_3_const_-1952368087 () Int) +(assert + (let + ((|v_#length_10| |v_#length_10_const_-660984215|) + (v_f_~tmp~2.base_4 v_f_~tmp~2.base_4_const_443818922) + (v_f_~tmp~2.offset_3 v_f_~tmp~2.offset_3_const_-1952368087)) + (not + (<= (+ 4 v_f_~tmp~2.offset_3) (select |v_#length_10| v_f_~tmp~2.base_4))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#memory_int_6_const_-593731577| () + (Array Int (Array Int Int))) +(declare-fun v_f_~count~2.base_2_const_916075428 () Int) +(declare-fun v_f_~count~2.offset_2_const_906701858 () Int) +(declare-fun |v_#memory_int_5_const_-593731580| () + (Array Int (Array Int Int))) +(declare-fun |v_#length_11_const_-660984216| () (Array Int Int)) +(declare-fun |v_#valid_11_const_-1605542638| () (Array Int Int)) +(assert + (let + ((|v_#memory_int_6| |v_#memory_int_6_const_-593731577|) + (v_f_~count~2.base_2 v_f_~count~2.base_2_const_916075428) + (v_f_~count~2.offset_2 v_f_~count~2.offset_2_const_906701858) + (|v_#memory_int_5| |v_#memory_int_5_const_-593731580|) + (|v_#length_11| |v_#length_11_const_-660984216|) + (|v_#valid_11| |v_#valid_11_const_-1605542638|)) + (and + (<= (+ 4 v_f_~count~2.offset_2) (select |v_#length_11| v_f_~count~2.base_2)) + (not (= (select |v_#valid_11| v_f_~count~2.base_2) 0)) + (= |v_#memory_int_5| + (store |v_#memory_int_6| v_f_~count~2.base_2 + (store (select |v_#memory_int_6| v_f_~count~2.base_2) v_f_~count~2.offset_2 + 0)))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#valid_12_const_-1605542639| () (Array Int Int)) +(declare-fun v_f_~count~2.base_3_const_916075427 () Int) +(assert + (let + ((|v_#valid_12| |v_#valid_12_const_-1605542639|) + (v_f_~count~2.base_3 v_f_~count~2.base_3_const_916075427)) + (not (not (= (select |v_#valid_12| v_f_~count~2.base_3) 0))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#length_12_const_-660984297| () (Array Int Int)) +(declare-fun v_f_~count~2.base_4_const_916075426 () Int) +(declare-fun v_f_~count~2.offset_3_const_906701857 () Int) +(assert + (let + ((|v_#length_12| |v_#length_12_const_-660984297|) + (v_f_~count~2.base_4 v_f_~count~2.base_4_const_916075426) + (v_f_~count~2.offset_3 v_f_~count~2.offset_3_const_906701857)) + (not + (<= (+ 4 v_f_~count~2.offset_3) (select |v_#length_12| v_f_~count~2.base_4))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(assert true) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#memory_int_7_const_-593731578| () + (Array Int (Array Int Int))) +(declare-fun v_f_~a_ref~2.base_5_const_-611657913 () Int) +(declare-fun v_f_~a_ref~2.offset_4_const_1631923782 () Int) +(declare-fun |v_f_#t~mem6_1_const_-433504655| () Int) +(declare-fun |v_#length_13_const_-660984298| () (Array Int Int)) +(declare-fun |v_#valid_13_const_-1605542640| () (Array Int Int)) +(assert + (let + ((|v_#memory_int_7| |v_#memory_int_7_const_-593731578|) + (v_f_~a_ref~2.base_5 v_f_~a_ref~2.base_5_const_-611657913) + (v_f_~a_ref~2.offset_4 v_f_~a_ref~2.offset_4_const_1631923782) + (|v_f_#t~mem6_1| |v_f_#t~mem6_1_const_-433504655|) + (|v_#length_13| |v_#length_13_const_-660984298|) + (|v_#valid_13| |v_#valid_13_const_-1605542640|)) + (and + (<= (+ 4 v_f_~a_ref~2.offset_4) (select |v_#length_13| v_f_~a_ref~2.base_5)) + (not (= (select |v_#valid_13| v_f_~a_ref~2.base_5) 0)) + (= |v_f_#t~mem6_1| + (select (select |v_#memory_int_7| v_f_~a_ref~2.base_5) + v_f_~a_ref~2.offset_4))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#length_14_const_-660984299| () (Array Int Int)) +(declare-fun v_f_~a_ref~2.base_6_const_-611657914 () Int) +(declare-fun v_f_~a_ref~2.offset_5_const_1631923781 () Int) +(assert + (let + ((|v_#length_14| |v_#length_14_const_-660984299|) + (v_f_~a_ref~2.base_6 v_f_~a_ref~2.base_6_const_-611657914) + (v_f_~a_ref~2.offset_5 v_f_~a_ref~2.offset_5_const_1631923781)) + (not + (<= (+ 4 v_f_~a_ref~2.offset_5) (select |v_#length_14| v_f_~a_ref~2.base_6))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#valid_14_const_-1605542609| () (Array Int Int)) +(declare-fun v_f_~a_ref~2.base_7_const_-611657915 () Int) +(assert + (let + ((|v_#valid_14| |v_#valid_14_const_-1605542609|) + (v_f_~a_ref~2.base_7 v_f_~a_ref~2.base_7_const_-611657915)) + (not (not (= (select |v_#valid_14| v_f_~a_ref~2.base_7) 0))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_f_#t~mem6_3_const_-433504753| () Int) +(assert + (let ((|v_f_#t~mem6_3| |v_f_#t~mem6_3_const_-433504753|)) + (not (> |v_f_#t~mem6_3| 1)))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#memory_int_8_const_-593731583| () + (Array Int (Array Int Int))) +(declare-fun v_f_~a_ref~2.base_8_const_-611657916 () Int) +(declare-fun v_f_~a_ref~2.offset_6_const_1631923780 () Int) +(declare-fun |v_f_#t~mem7_1_const_-433505616| () Int) +(declare-fun |v_#length_15_const_-660984300| () (Array Int Int)) +(declare-fun |v_#valid_15_const_-1605542610| () (Array Int Int)) +(assert + (let + ((|v_#memory_int_8| |v_#memory_int_8_const_-593731583|) + (v_f_~a_ref~2.base_8 v_f_~a_ref~2.base_8_const_-611657916) + (v_f_~a_ref~2.offset_6 v_f_~a_ref~2.offset_6_const_1631923780) + (|v_f_#t~mem7_1| |v_f_#t~mem7_1_const_-433505616|) + (|v_#length_15| |v_#length_15_const_-660984300|) + (|v_#valid_15| |v_#valid_15_const_-1605542610|)) + (and + (<= (+ 4 v_f_~a_ref~2.offset_6) (select |v_#length_15| v_f_~a_ref~2.base_8)) + (not (= (select |v_#valid_15| v_f_~a_ref~2.base_8) 0)) + (= |v_f_#t~mem7_1| + (select (select |v_#memory_int_8| v_f_~a_ref~2.base_8) + v_f_~a_ref~2.offset_6))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_f_#t~mem6_5_const_-433504755| () Int) +(assert + (let ((|v_f_#t~mem6_5| |v_f_#t~mem6_5_const_-433504755|)) + (> |v_f_#t~mem6_5| 1))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#length_16_const_-660984301| () (Array Int Int)) +(declare-fun v_f_~a_ref~2.base_9_const_-611657917 () Int) +(declare-fun v_f_~a_ref~2.offset_7_const_1631923779 () Int) +(assert + (let + ((|v_#length_16| |v_#length_16_const_-660984301|) + (v_f_~a_ref~2.base_9 v_f_~a_ref~2.base_9_const_-611657917) + (v_f_~a_ref~2.offset_7 v_f_~a_ref~2.offset_7_const_1631923779)) + (not + (<= (+ 4 v_f_~a_ref~2.offset_7) (select |v_#length_16| v_f_~a_ref~2.base_9))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#valid_16_const_-1605542611| () (Array Int Int)) +(declare-fun v_f_~a_ref~2.base_10_const_-1779673117 () Int) +(assert + (let + ((|v_#valid_16| |v_#valid_16_const_-1605542611|) + (v_f_~a_ref~2.base_10 v_f_~a_ref~2.base_10_const_-1779673117)) + (not (not (= (select |v_#valid_16| v_f_~a_ref~2.base_10) 0))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#length_17_const_-660984302| () (Array Int Int)) +(declare-fun v_f_~tmp~2.base_5_const_443818921 () Int) +(declare-fun v_f_~tmp~2.offset_4_const_-1952368088 () Int) +(assert + (let + ((|v_#length_17| |v_#length_17_const_-660984302|) + (v_f_~tmp~2.base_5 v_f_~tmp~2.base_5_const_443818921) + (v_f_~tmp~2.offset_4 v_f_~tmp~2.offset_4_const_-1952368088)) + (not + (<= (+ 4 v_f_~tmp~2.offset_4) (select |v_#length_17| v_f_~tmp~2.base_5))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(assert true) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#memory_int_10_const_1545201622| () + (Array Int (Array Int Int))) +(declare-fun v_f_~tmp~2.base_6_const_443818920 () Int) +(declare-fun v_f_~tmp~2.offset_5_const_-1952368089 () Int) +(declare-fun |v_f_#t~mem7_3_const_-433505714| () Int) +(declare-fun |v_#memory_int_9_const_-593731584| () + (Array Int (Array Int Int))) +(declare-fun |v_#length_18_const_-660984303| () (Array Int Int)) +(declare-fun |v_#valid_17_const_-1605542612| () (Array Int Int)) +(assert + (let + ((|v_#memory_int_10| |v_#memory_int_10_const_1545201622|) + (v_f_~tmp~2.base_6 v_f_~tmp~2.base_6_const_443818920) + (v_f_~tmp~2.offset_5 v_f_~tmp~2.offset_5_const_-1952368089) + (|v_f_#t~mem7_3| |v_f_#t~mem7_3_const_-433505714|) + (|v_#memory_int_9| |v_#memory_int_9_const_-593731584|) + (|v_#length_18| |v_#length_18_const_-660984303|) + (|v_#valid_17| |v_#valid_17_const_-1605542612|)) + (and + (<= (+ 4 v_f_~tmp~2.offset_5) (select |v_#length_18| v_f_~tmp~2.base_6)) + (not (= (select |v_#valid_17| v_f_~tmp~2.base_6) 0)) + (= |v_#memory_int_9| + (store |v_#memory_int_10| v_f_~tmp~2.base_6 + (store (select |v_#memory_int_10| v_f_~tmp~2.base_6) v_f_~tmp~2.offset_5 + (ite (< |v_f_#t~mem7_3| 0) + (- (mod |v_f_#t~mem7_3| 2) 2) + (mod |v_f_#t~mem7_3| 2)))))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#valid_18_const_-1605542613| () (Array Int Int)) +(declare-fun v_f_~tmp~2.base_7_const_443818919 () Int) +(assert + (let + ((|v_#valid_18| |v_#valid_18_const_-1605542613|) + (v_f_~tmp~2.base_7 v_f_~tmp~2.base_7_const_443818919)) + (not (not (= (select |v_#valid_18| v_f_~tmp~2.base_7) 0))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#length_19_const_-660984304| () (Array Int Int)) +(declare-fun v_f_~tmp~2.base_8_const_443818918 () Int) +(declare-fun v_f_~tmp~2.offset_6_const_-1952368090 () Int) +(assert + (let + ((|v_#length_19| |v_#length_19_const_-660984304|) + (v_f_~tmp~2.base_8 v_f_~tmp~2.base_8_const_443818918) + (v_f_~tmp~2.offset_6 v_f_~tmp~2.offset_6_const_-1952368090)) + (not + (<= (+ 4 v_f_~tmp~2.offset_6) (select |v_#length_19| v_f_~tmp~2.base_8))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#memory_int_11_const_1545201617| () + (Array Int (Array Int Int))) +(declare-fun v_f_~tmp~2.base_9_const_443818917 () Int) +(declare-fun v_f_~tmp~2.offset_7_const_-1952368091 () Int) +(declare-fun |v_f_#t~mem9_1_const_-433507634| () Int) +(declare-fun |v_#length_20_const_-660984310| () (Array Int Int)) +(declare-fun |v_#valid_19_const_-1605542614| () (Array Int Int)) +(assert + (let + ((|v_#memory_int_11| |v_#memory_int_11_const_1545201617|) + (v_f_~tmp~2.base_9 v_f_~tmp~2.base_9_const_443818917) + (v_f_~tmp~2.offset_7 v_f_~tmp~2.offset_7_const_-1952368091) + (|v_f_#t~mem9_1| |v_f_#t~mem9_1_const_-433507634|) + (|v_#length_20| |v_#length_20_const_-660984310|) + (|v_#valid_19| |v_#valid_19_const_-1605542614|)) + (and + (<= (+ 4 v_f_~tmp~2.offset_7) (select |v_#length_20| v_f_~tmp~2.base_9)) + (not (= (select |v_#valid_19| v_f_~tmp~2.base_9) 0)) + (= |v_f_#t~mem9_1| + (select (select |v_#memory_int_11| v_f_~tmp~2.base_9) v_f_~tmp~2.offset_7))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#valid_20_const_-1605542604| () (Array Int Int)) +(declare-fun v_f_~tmp~2.base_10_const_875777985 () Int) +(assert + (let + ((|v_#valid_20| |v_#valid_20_const_-1605542604|) + (v_f_~tmp~2.base_10 v_f_~tmp~2.base_10_const_875777985)) + (not (not (= (select |v_#valid_20| v_f_~tmp~2.base_10) 0))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#memory_int_12_const_1545201616| () + (Array Int (Array Int Int))) +(declare-fun v_f_~a_ref~2.base_11_const_-1779673118 () Int) +(declare-fun v_f_~a_ref~2.offset_8_const_1631923778 () Int) +(declare-fun |v_f_#t~mem10_1_const_-556254540| () Int) +(declare-fun |v_#length_21_const_-660984311| () (Array Int Int)) +(declare-fun |v_#valid_21_const_-1605542605| () (Array Int Int)) +(assert + (let + ((|v_#memory_int_12| |v_#memory_int_12_const_1545201616|) + (v_f_~a_ref~2.base_11 v_f_~a_ref~2.base_11_const_-1779673118) + (v_f_~a_ref~2.offset_8 v_f_~a_ref~2.offset_8_const_1631923778) + (|v_f_#t~mem10_1| |v_f_#t~mem10_1_const_-556254540|) + (|v_#length_21| |v_#length_21_const_-660984311|) + (|v_#valid_21| |v_#valid_21_const_-1605542605|)) + (and + (<= (+ 4 v_f_~a_ref~2.offset_8) + (select |v_#length_21| v_f_~a_ref~2.base_11)) + (not (= (select |v_#valid_21| v_f_~a_ref~2.base_11) 0)) + (= |v_f_#t~mem10_1| + (select (select |v_#memory_int_12| v_f_~a_ref~2.base_11) + v_f_~a_ref~2.offset_8))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#valid_22_const_-1605542606| () (Array Int Int)) +(declare-fun v_f_~a_ref~2.base_12_const_-1779673119 () Int) +(assert + (let + ((|v_#valid_22| |v_#valid_22_const_-1605542606|) + (v_f_~a_ref~2.base_12 v_f_~a_ref~2.base_12_const_-1779673119)) + (not (not (= (select |v_#valid_22| v_f_~a_ref~2.base_12) 0))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_f_#t~mem9_3_const_-433507636| () Int) +(assert + (let ((|v_f_#t~mem9_3| |v_f_#t~mem9_3_const_-433507636|)) + (= |v_f_#t~mem9_3| 0))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#valid_23_const_-1605542607| () (Array Int Int)) +(declare-fun v_f_~a_ref~2.base_13_const_-1779673120 () Int) +(assert + (let + ((|v_#valid_23| |v_#valid_23_const_-1605542607|) + (v_f_~a_ref~2.base_13 v_f_~a_ref~2.base_13_const_-1779673120)) + (not (not (= (select |v_#valid_23| v_f_~a_ref~2.base_13) 0))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#length_22_const_-660984312| () (Array Int Int)) +(declare-fun v_f_~a_ref~2.base_14_const_-1779673089 () Int) +(declare-fun v_f_~a_ref~2.offset_9_const_1631923777 () Int) +(assert + (let + ((|v_#length_22| |v_#length_22_const_-660984312|) + (v_f_~a_ref~2.base_14 v_f_~a_ref~2.base_14_const_-1779673089) + (v_f_~a_ref~2.offset_9 v_f_~a_ref~2.offset_9_const_1631923777)) + (not + (<= (+ 4 v_f_~a_ref~2.offset_9) + (select |v_#length_22| v_f_~a_ref~2.base_14))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#length_23_const_-660984265| () (Array Int Int)) +(declare-fun v_f_~a_ref~2.base_15_const_-1779673090 () Int) +(declare-fun v_f_~a_ref~2.offset_10_const_-952049499 () Int) +(assert + (let + ((|v_#length_23| |v_#length_23_const_-660984265|) + (v_f_~a_ref~2.base_15 v_f_~a_ref~2.base_15_const_-1779673090) + (v_f_~a_ref~2.offset_10 v_f_~a_ref~2.offset_10_const_-952049499)) + (not + (<= (+ 4 v_f_~a_ref~2.offset_10) + (select |v_#length_23| v_f_~a_ref~2.base_15))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#memory_int_14_const_1545201618| () + (Array Int (Array Int Int))) +(declare-fun v_f_~a_ref~2.base_16_const_-1779673091 () Int) +(declare-fun v_f_~a_ref~2.offset_11_const_-952049500 () Int) +(declare-fun |v_f_#t~mem10_2_const_-556254541| () Int) +(declare-fun |v_#memory_int_13_const_1545201619| () + (Array Int (Array Int Int))) +(declare-fun |v_#length_24_const_-660984266| () (Array Int Int)) +(declare-fun |v_#valid_24_const_-1605542608| () (Array Int Int)) +(assert + (let + ((|v_#memory_int_14| |v_#memory_int_14_const_1545201618|) + (v_f_~a_ref~2.base_16 v_f_~a_ref~2.base_16_const_-1779673091) + (v_f_~a_ref~2.offset_11 v_f_~a_ref~2.offset_11_const_-952049500) + (|v_f_#t~mem10_2| |v_f_#t~mem10_2_const_-556254541|) + (|v_#memory_int_13| |v_#memory_int_13_const_1545201619|) + (|v_#length_24| |v_#length_24_const_-660984266|) + (|v_#valid_24| |v_#valid_24_const_-1605542608|)) + (and + (<= (+ 4 v_f_~a_ref~2.offset_11) + (select |v_#length_24| v_f_~a_ref~2.base_16)) + (not (= (select |v_#valid_24| v_f_~a_ref~2.base_16) 0)) + (= |v_#memory_int_13| + (store |v_#memory_int_14| v_f_~a_ref~2.base_16 + (store (select |v_#memory_int_14| v_f_~a_ref~2.base_16) + v_f_~a_ref~2.offset_11 + (ite (< |v_f_#t~mem10_2| 0) + (+ (div |v_f_#t~mem10_2| 2) 1) + (div |v_f_#t~mem10_2| 2)))))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#memory_int_15_const_1545201629| () + (Array Int (Array Int Int))) +(declare-fun v_f_~a_ref~2.base_17_const_-1779673092 () Int) +(declare-fun v_f_~a_ref~2.offset_12_const_-952049501 () Int) +(declare-fun |v_f_#t~mem12_1_const_-556256462| () Int) +(declare-fun |v_#length_25_const_-660984267| () (Array Int Int)) +(declare-fun |v_#valid_25_const_-1605542193| () (Array Int Int)) +(assert + (let + ((|v_#memory_int_15| |v_#memory_int_15_const_1545201629|) + (v_f_~a_ref~2.base_17 v_f_~a_ref~2.base_17_const_-1779673092) + (v_f_~a_ref~2.offset_12 v_f_~a_ref~2.offset_12_const_-952049501) + (|v_f_#t~mem12_1| |v_f_#t~mem12_1_const_-556256462|) + (|v_#length_25| |v_#length_25_const_-660984267|) + (|v_#valid_25| |v_#valid_25_const_-1605542193|)) + (and + (<= (+ 4 v_f_~a_ref~2.offset_12) + (select |v_#length_25| v_f_~a_ref~2.base_17)) + (not (= (select |v_#valid_25| v_f_~a_ref~2.base_17) 0)) + (= |v_f_#t~mem12_1| + (select (select |v_#memory_int_15| v_f_~a_ref~2.base_17) + v_f_~a_ref~2.offset_12))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_f_#t~mem9_5_const_-433507638| () Int) +(assert + (let ((|v_f_#t~mem9_5| |v_f_#t~mem9_5_const_-433507638|)) + (not (= |v_f_#t~mem9_5| 0)))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(assert true) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#valid_26_const_-1605542194| () (Array Int Int)) +(declare-fun v_f_~a_ref~2.base_18_const_-1779673093 () Int) +(assert + (let + ((|v_#valid_26| |v_#valid_26_const_-1605542194|) + (v_f_~a_ref~2.base_18 v_f_~a_ref~2.base_18_const_-1779673093)) + (not (not (= (select |v_#valid_26| v_f_~a_ref~2.base_18) 0))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#memory_int_17_const_1545201631| () + (Array Int (Array Int Int))) +(declare-fun v_f_~a_ref~2.base_19_const_-1779673094 () Int) +(declare-fun v_f_~a_ref~2.offset_13_const_-952049502 () Int) +(declare-fun |v_f_#t~mem12_2_const_-556256463| () Int) +(declare-fun |v_#memory_int_16_const_1545201628| () + (Array Int (Array Int Int))) +(declare-fun |v_#length_26_const_-660984268| () (Array Int Int)) +(declare-fun |v_#valid_27_const_-1605542195| () (Array Int Int)) +(assert + (let + ((|v_#memory_int_17| |v_#memory_int_17_const_1545201631|) + (v_f_~a_ref~2.base_19 v_f_~a_ref~2.base_19_const_-1779673094) + (v_f_~a_ref~2.offset_13 v_f_~a_ref~2.offset_13_const_-952049502) + (|v_f_#t~mem12_2| |v_f_#t~mem12_2_const_-556256463|) + (|v_#memory_int_16| |v_#memory_int_16_const_1545201628|) + (|v_#length_26| |v_#length_26_const_-660984268|) + (|v_#valid_27| |v_#valid_27_const_-1605542195|)) + (and + (<= (+ 4 v_f_~a_ref~2.offset_13) + (select |v_#length_26| v_f_~a_ref~2.base_19)) + (not (= (select |v_#valid_27| v_f_~a_ref~2.base_19) 0)) + (= |v_#memory_int_16| + (store |v_#memory_int_17| v_f_~a_ref~2.base_19 + (store (select |v_#memory_int_17| v_f_~a_ref~2.base_19) + v_f_~a_ref~2.offset_13 (- |v_f_#t~mem12_2| 1))))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#length_27_const_-660984269| () (Array Int Int)) +(declare-fun v_f_~a_ref~2.base_20_const_-1779673212 () Int) +(declare-fun v_f_~a_ref~2.offset_14_const_-952049503 () Int) +(assert + (let + ((|v_#length_27| |v_#length_27_const_-660984269|) + (v_f_~a_ref~2.base_20 v_f_~a_ref~2.base_20_const_-1779673212) + (v_f_~a_ref~2.offset_14 v_f_~a_ref~2.offset_14_const_-952049503)) + (not + (<= (+ 4 v_f_~a_ref~2.offset_14) + (select |v_#length_27| v_f_~a_ref~2.base_20))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#valid_28_const_-1605542196| () (Array Int Int)) +(declare-fun v_f_~a_ref~2.base_21_const_-1779673213 () Int) +(assert + (let + ((|v_#valid_28| |v_#valid_28_const_-1605542196|) + (v_f_~a_ref~2.base_21 v_f_~a_ref~2.base_21_const_-1779673213)) + (not (not (= (select |v_#valid_28| v_f_~a_ref~2.base_21) 0))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#memory_int_18_const_1545201630| () + (Array Int (Array Int Int))) +(declare-fun v_f_~count~2.base_5_const_916075425 () Int) +(declare-fun v_f_~count~2.offset_4_const_906701856 () Int) +(declare-fun |v_f_#t~mem14_1_const_-556258384| () Int) +(declare-fun |v_#length_28_const_-660984270| () (Array Int Int)) +(declare-fun |v_#valid_29_const_-1605542197| () (Array Int Int)) +(assert + (let + ((|v_#memory_int_18| |v_#memory_int_18_const_1545201630|) + (v_f_~count~2.base_5 v_f_~count~2.base_5_const_916075425) + (v_f_~count~2.offset_4 v_f_~count~2.offset_4_const_906701856) + (|v_f_#t~mem14_1| |v_f_#t~mem14_1_const_-556258384|) + (|v_#length_28| |v_#length_28_const_-660984270|) + (|v_#valid_29| |v_#valid_29_const_-1605542197|)) + (and + (<= (+ 4 v_f_~count~2.offset_4) (select |v_#length_28| v_f_~count~2.base_5)) + (not (= (select |v_#valid_29| v_f_~count~2.base_5) 0)) + (= |v_f_#t~mem14_1| + (select (select |v_#memory_int_18| v_f_~count~2.base_5) + v_f_~count~2.offset_4))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(assert true) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#length_29_const_-660984271| () (Array Int Int)) +(declare-fun v_f_~a_ref~2.base_22_const_-1779673214 () Int) +(declare-fun v_f_~a_ref~2.offset_15_const_-952049504 () Int) +(assert + (let + ((|v_#length_29| |v_#length_29_const_-660984271|) + (v_f_~a_ref~2.base_22 v_f_~a_ref~2.base_22_const_-1779673214) + (v_f_~a_ref~2.offset_15 v_f_~a_ref~2.offset_15_const_-952049504)) + (not + (<= (+ 4 v_f_~a_ref~2.offset_15) + (select |v_#length_29| v_f_~a_ref~2.base_22))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#memory_int_20_const_1545201655| () + (Array Int (Array Int Int))) +(declare-fun v_f_~count~2.base_6_const_916075424 () Int) +(declare-fun v_f_~count~2.offset_5_const_906701887 () Int) +(declare-fun |v_f_#t~post15_1_const_1390110670| () Int) +(declare-fun |v_#memory_int_19_const_1545201625| () + (Array Int (Array Int Int))) +(declare-fun |v_#length_30_const_-660984277| () (Array Int Int)) +(declare-fun |v_#valid_30_const_-1605542187| () (Array Int Int)) +(assert + (let + ((|v_#memory_int_20| |v_#memory_int_20_const_1545201655|) + (v_f_~count~2.base_6 v_f_~count~2.base_6_const_916075424) + (v_f_~count~2.offset_5 v_f_~count~2.offset_5_const_906701887) + (|v_f_#t~post15_1| |v_f_#t~post15_1_const_1390110670|) + (|v_#memory_int_19| |v_#memory_int_19_const_1545201625|) + (|v_#length_30| |v_#length_30_const_-660984277|) + (|v_#valid_30| |v_#valid_30_const_-1605542187|)) + (and + (<= (+ 4 v_f_~count~2.offset_5) (select |v_#length_30| v_f_~count~2.base_6)) + (not (= (select |v_#valid_30| v_f_~count~2.base_6) 0)) + (= |v_#memory_int_19| + (store |v_#memory_int_20| v_f_~count~2.base_6 + (store (select |v_#memory_int_20| v_f_~count~2.base_6) v_f_~count~2.offset_5 + (+ |v_f_#t~post15_1| 1))))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_f_#t~post15_2_const_1390110669| () Int) +(declare-fun |v_f_#t~mem14_2_const_-556258481| () Int) +(assert + (let + ((|v_f_#t~post15_2| |v_f_#t~post15_2_const_1390110669|) + (|v_f_#t~mem14_2| |v_f_#t~mem14_2_const_-556258481|)) + (= |v_f_#t~post15_2| |v_f_#t~mem14_2|))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#length_31_const_-660984278| () (Array Int Int)) +(declare-fun v_f_~count~2.base_7_const_916075455 () Int) +(declare-fun v_f_~count~2.offset_6_const_906701886 () Int) +(assert + (let + ((|v_#length_31| |v_#length_31_const_-660984278|) + (v_f_~count~2.base_7 v_f_~count~2.base_7_const_916075455) + (v_f_~count~2.offset_6 v_f_~count~2.offset_6_const_906701886)) + (not + (<= (+ 4 v_f_~count~2.offset_6) (select |v_#length_31| v_f_~count~2.base_7))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#valid_31_const_-1605542188| () (Array Int Int)) +(declare-fun v_f_~count~2.base_8_const_916075454 () Int) +(assert + (let + ((|v_#valid_31| |v_#valid_31_const_-1605542188|) + (v_f_~count~2.base_8 v_f_~count~2.base_8_const_916075454)) + (not (not (= (select |v_#valid_31| v_f_~count~2.base_8) 0))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(assert false) +(set-info :status unsat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#memory_int_21_const_1545201654| () + (Array Int (Array Int Int))) +(declare-fun v_f_~count~2.base_9_const_916075453 () Int) +(declare-fun v_f_~count~2.offset_7_const_906701885 () Int) +(declare-fun |v_f_#t~mem16_1_const_-556260402| () Int) +(declare-fun |v_#length_32_const_-660984279| () (Array Int Int)) +(declare-fun |v_#valid_32_const_-1605542189| () (Array Int Int)) +(assert + (let + ((|v_#memory_int_21| |v_#memory_int_21_const_1545201654|) + (v_f_~count~2.base_9 v_f_~count~2.base_9_const_916075453) + (v_f_~count~2.offset_7 v_f_~count~2.offset_7_const_906701885) + (|v_f_#t~mem16_1| |v_f_#t~mem16_1_const_-556260402|) + (|v_#length_32| |v_#length_32_const_-660984279|) + (|v_#valid_32| |v_#valid_32_const_-1605542189|)) + (and + (<= (+ 4 v_f_~count~2.offset_7) (select |v_#length_32| v_f_~count~2.base_9)) + (not (= (select |v_#valid_32| v_f_~count~2.base_9) 0)) + (= |v_f_#t~mem16_1| + (select (select |v_#memory_int_21| v_f_~count~2.base_9) + v_f_~count~2.offset_7))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#valid_33_const_-1605542190| () (Array Int Int)) +(declare-fun v_f_~count~2.base_10_const_-1664385335 () Int) +(assert + (let + ((|v_#valid_33| |v_#valid_33_const_-1605542190|) + (v_f_~count~2.base_10 v_f_~count~2.base_10_const_-1664385335)) + (not (not (= (select |v_#valid_33| v_f_~count~2.base_10) 0))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#valid_34_const_-1605542191| () (Array Int Int)) +(declare-fun v_f_~count~2.base_11_const_-1664385336 () Int) +(assert + (let + ((|v_#valid_34| |v_#valid_34_const_-1605542191|) + (v_f_~count~2.base_11 v_f_~count~2.base_11_const_-1664385336)) + (not (not (= (select |v_#valid_34| v_f_~count~2.base_11) 0))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#length_33_const_-660984280| () (Array Int Int)) +(declare-fun v_f_~count~2.base_12_const_-1664385337 () Int) +(declare-fun v_f_~count~2.offset_8_const_906701884 () Int) +(assert + (let + ((|v_#length_33| |v_#length_33_const_-660984280|) + (v_f_~count~2.base_12 v_f_~count~2.base_12_const_-1664385337) + (v_f_~count~2.offset_8 v_f_~count~2.offset_8_const_906701884)) + (not + (<= (+ 4 v_f_~count~2.offset_8) + (select |v_#length_33| v_f_~count~2.base_12))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(assert true) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#valid_35_const_-1605542192| () (Array Int Int)) +(declare-fun |v_f_#t~malloc0.base_4_const_-1542064840| () Int) +(assert + (let + ((|v_#valid_35| |v_#valid_35_const_-1605542192|) + (|v_f_#t~malloc0.base_4| |v_f_#t~malloc0.base_4_const_-1542064840|)) + (not (not (= (select |v_#valid_35| |v_f_#t~malloc0.base_4|) 0))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(assert true) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#valid_37_const_-1605542162| () (Array Int Int)) +(declare-fun |v_f_#t~malloc1.base_4_const_200738841| () Int) +(declare-fun |v_#valid_36_const_-1605542161| () (Array Int Int)) +(declare-fun |v_f_#t~malloc1.offset_4_const_542570199| () Int) +(assert + (let + ((|v_#valid_37| |v_#valid_37_const_-1605542162|) + (|v_f_#t~malloc1.base_4| |v_f_#t~malloc1.base_4_const_200738841|) + (|v_#valid_36| |v_#valid_36_const_-1605542161|) + (|v_f_#t~malloc1.offset_4| |v_f_#t~malloc1.offset_4_const_542570199|)) + (and (not (= (select |v_#valid_37| |v_f_#t~malloc1.base_4|) 0)) + (= |v_f_#t~malloc1.offset_4| 0) + (= |v_#valid_36| (store |v_#valid_37| |v_f_#t~malloc1.base_4| 0))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_f_#t~malloc1.offset_5_const_542570198| () Int) +(assert + (let ((|v_f_#t~malloc1.offset_5| |v_f_#t~malloc1.offset_5_const_542570198|)) + (not (= |v_f_#t~malloc1.offset_5| 0)))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#length_34_const_-660983849| () (Array Int Int)) +(declare-fun v_f_~count~2.base_13_const_-1664385338 () Int) +(declare-fun v_f_~count~2.offset_9_const_906701883 () Int) +(assert + (let + ((|v_#length_34| |v_#length_34_const_-660983849|) + (v_f_~count~2.base_13 v_f_~count~2.base_13_const_-1664385338) + (v_f_~count~2.offset_9 v_f_~count~2.offset_9_const_906701883)) + (not + (<= (+ 4 v_f_~count~2.offset_9) + (select |v_#length_34| v_f_~count~2.base_13))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_f_#res_1_const_-426249602| () Int) +(declare-fun |v_f_#t~mem16_3_const_-556260404| () Int) +(assert + (let + ((|v_f_#res_1| |v_f_#res_1_const_-426249602|) + (|v_f_#t~mem16_3| |v_f_#t~mem16_3_const_-556260404|)) + (= |v_f_#res_1| |v_f_#t~mem16_3|))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#valid_39_const_-1605542164| () (Array Int Int)) +(declare-fun |v_f_#t~malloc0.base_6_const_-1542064842| () Int) +(declare-fun |v_#valid_38_const_-1605542163| () (Array Int Int)) +(declare-fun |v_f_#t~malloc0.offset_5_const_739207221| () Int) +(assert + (let + ((|v_#valid_39| |v_#valid_39_const_-1605542164|) + (|v_f_#t~malloc0.base_6| |v_f_#t~malloc0.base_6_const_-1542064842|) + (|v_#valid_38| |v_#valid_38_const_-1605542163|) + (|v_f_#t~malloc0.offset_5| |v_f_#t~malloc0.offset_5_const_739207221|)) + (and (not (= (select |v_#valid_39| |v_f_#t~malloc0.base_6|) 0)) + (= |v_f_#t~malloc0.offset_5| 0) + (= |v_#valid_38| (store |v_#valid_39| |v_f_#t~malloc0.base_6| 0))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_f_#t~malloc0.offset_6_const_739207220| () Int) +(assert + (let ((|v_f_#t~malloc0.offset_6| |v_f_#t~malloc0.offset_6_const_739207220|)) + (not (= |v_f_#t~malloc0.offset_6| 0)))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(assert true) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#valid_40_const_-1605542154| () (Array Int Int)) +(declare-fun |v_f_#t~malloc2.base_5_const_1943427961| () Int) +(assert + (let + ((|v_#valid_40| |v_#valid_40_const_-1605542154|) + (|v_f_#t~malloc2.base_5| |v_f_#t~malloc2.base_5_const_1943427961|)) + (not (not (= (select |v_#valid_40| |v_f_#t~malloc2.base_5|) 0))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(assert true) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(assert true) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#valid_41_const_-1605542155| () (Array Int Int)) +(declare-fun |v_f_#t~malloc1.base_6_const_200738839| () Int) +(assert + (let + ((|v_#valid_41| |v_#valid_41_const_-1605542155|) + (|v_f_#t~malloc1.base_6| |v_f_#t~malloc1.base_6_const_200738839|)) + (not (not (= (select |v_#valid_41| |v_f_#t~malloc1.base_6|) 0))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_f_#t~malloc2.offset_5_const_346047991| () Int) +(assert + (let ((|v_f_#t~malloc2.offset_5| |v_f_#t~malloc2.offset_5_const_346047991|)) + (not (= |v_f_#t~malloc2.offset_5| 0)))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#valid_43_const_-1605542157| () (Array Int Int)) +(declare-fun |v_f_#t~malloc2.base_6_const_1943427960| () Int) +(declare-fun |v_#valid_42_const_-1605542156| () (Array Int Int)) +(declare-fun |v_f_#t~malloc2.offset_6_const_346047990| () Int) +(assert + (let + ((|v_#valid_43| |v_#valid_43_const_-1605542157|) + (|v_f_#t~malloc2.base_6| |v_f_#t~malloc2.base_6_const_1943427960|) + (|v_#valid_42| |v_#valid_42_const_-1605542156|) + (|v_f_#t~malloc2.offset_6| |v_f_#t~malloc2.offset_6_const_346047990|)) + (and (not (= (select |v_#valid_43| |v_f_#t~malloc2.base_6|) 0)) + (= |v_f_#t~malloc2.offset_6| 0) + (= |v_#valid_42| (store |v_#valid_43| |v_f_#t~malloc2.base_6| 0))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#valid_44_const_-1605542158| () (Array Int Int)) +(declare-fun |v_#valid_45_const_-1605542159| () (Array Int Int)) +(declare-fun |v_#NULL.base_1_const_797218431| () Int) +(declare-fun |v_#NULL.offset_1_const_-1647097731| () Int) +(assert + (let + ((|v_#valid_44| |v_#valid_44_const_-1605542158|) + (|v_#valid_45| |v_#valid_45_const_-1605542159|) + (|v_#NULL.base_1| |v_#NULL.base_1_const_797218431|) + (|v_#NULL.offset_1| |v_#NULL.offset_1_const_-1647097731|)) + (and (= |v_#NULL.base_1| 0) + (= |v_#NULL.offset_1| 0) + (= |v_#valid_44| (store |v_#valid_45| 0 0))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(assert true) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(assert true) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(assert true) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(assert true) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(assert true) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun v_main_~x~4_2_const_-1298217809 () Int) +(declare-fun |v_main_#t~nondet17_2_const_-311479232| () Int) +(assert + (let + ((v_main_~x~4_2 v_main_~x~4_2_const_-1298217809) + (|v_main_#t~nondet17_2| |v_main_#t~nondet17_2_const_-311479232|)) + (= v_main_~x~4_2 |v_main_#t~nondet17_2|))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(assert true) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun v_main_~count~4_1_const_-1432400071 () Int) +(declare-fun |v_main_#t~ret18_3_const_353355235| () Int) +(declare-fun |v_main_#res_1_const_385270467| () Int) +(assert + (let + ((v_main_~count~4_1 v_main_~count~4_1_const_-1432400071) + (|v_main_#t~ret18_3| |v_main_#t~ret18_3_const_353355235|) + (|v_main_#res_1| |v_main_#res_1_const_385270467|)) + (and (= v_main_~count~4_1 |v_main_#t~ret18_3|) + (= |v_main_#res_1| v_main_~count~4_1)))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#length_42_const_-660983862| () (Array Int Int)) +(declare-fun v_f_~a_ref~2.base_23_const_-1779673215 () Int) +(declare-fun v_f_~tmp~2.base_11_const_875777984 () Int) +(declare-fun v_f_~count~2.base_14_const_-1664385339 () Int) +(declare-fun |v_#length_39_const_-660983854| () (Array Int Int)) +(declare-fun v_f_~count~2.offset_10_const_-1958914549 () Int) +(declare-fun |v_#valid_55_const_-1605542254| () (Array Int Int)) +(declare-fun |v_#valid_52_const_-1605542251| () (Array Int Int)) +(declare-fun v_f_~tmp~2.offset_8_const_-1952368092 () Int) +(declare-fun v_f_~a_ref~2.offset_16_const_-952049473 () Int) +(declare-fun v_f_~a_3_const_918515062 () Int) +(declare-fun |v_f_#in~a_2_const_-579988365| () Int) +(assert + (let + ((|v_#length_42| |v_#length_42_const_-660983862|) + (v_f_~a_ref~2.base_23 v_f_~a_ref~2.base_23_const_-1779673215) + (v_f_~tmp~2.base_11 v_f_~tmp~2.base_11_const_875777984) + (v_f_~count~2.base_14 v_f_~count~2.base_14_const_-1664385339) + (|v_#length_39| |v_#length_39_const_-660983854|) + (v_f_~count~2.offset_10 v_f_~count~2.offset_10_const_-1958914549) + (|v_#valid_55| |v_#valid_55_const_-1605542254|) + (|v_#valid_52| |v_#valid_52_const_-1605542251|) + (v_f_~tmp~2.offset_8 v_f_~tmp~2.offset_8_const_-1952368092) + (v_f_~a_ref~2.offset_16 v_f_~a_ref~2.offset_16_const_-952049473) + (v_f_~a_3 v_f_~a_3_const_918515062) + (|v_f_#in~a_2| |v_f_#in~a_2_const_-579988365|)) + (and + (= |v_#length_39| + (store + (store (store |v_#length_42| v_f_~a_ref~2.base_23 4) v_f_~tmp~2.base_11 4) + v_f_~count~2.base_14 4)) + (distinct v_f_~count~2.base_14 0) + (= v_f_~count~2.offset_10 0) + (= |v_#valid_52| + (store + (store (store |v_#valid_55| v_f_~a_ref~2.base_23 1) v_f_~tmp~2.base_11 1) + v_f_~count~2.base_14 1)) + (= + (not + (= + (select + (store (store |v_#valid_55| v_f_~a_ref~2.base_23 1) v_f_~tmp~2.base_11 1) + v_f_~count~2.base_14) 0)) false) + (distinct v_f_~tmp~2.base_11 0) + (= v_f_~tmp~2.offset_8 0) + (= + (not + (= (select (store |v_#valid_55| v_f_~a_ref~2.base_23 1) v_f_~tmp~2.base_11) + 0)) false) (distinct v_f_~a_ref~2.base_23 0) + (= v_f_~a_ref~2.offset_16 0) + (= (not (= (select |v_#valid_55| v_f_~a_ref~2.base_23) 0)) false) + (= v_f_~a_3 |v_f_#in~a_2|)))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#length_46_const_-660983818| () (Array Int Int)) +(declare-fun v_f_~a_ref~2.base_24_const_-1779673216 () Int) +(declare-fun v_f_~tmp~2.base_12_const_875778015 () Int) +(declare-fun v_f_~count~2.base_15_const_-1664385340 () Int) +(declare-fun |v_#length_43_const_-660983863| () (Array Int Int)) +(declare-fun v_f_~count~2.offset_11_const_-1958914550 () Int) +(declare-fun |v_#valid_59_const_-1605542226| () (Array Int Int)) +(declare-fun |v_#valid_56_const_-1605542255| () (Array Int Int)) +(declare-fun v_f_~tmp~2.offset_9_const_-1952368093 () Int) +(declare-fun v_f_~a_ref~2.offset_17_const_-952049474 () Int) +(declare-fun v_f_~a_4_const_918515061 () Int) +(declare-fun |v_f_#in~a_3_const_-579988366| () Int) +(assert + (let + ((|v_#length_46| |v_#length_46_const_-660983818|) + (v_f_~a_ref~2.base_24 v_f_~a_ref~2.base_24_const_-1779673216) + (v_f_~tmp~2.base_12 v_f_~tmp~2.base_12_const_875778015) + (v_f_~count~2.base_15 v_f_~count~2.base_15_const_-1664385340) + (|v_#length_43| |v_#length_43_const_-660983863|) + (v_f_~count~2.offset_11 v_f_~count~2.offset_11_const_-1958914550) + (|v_#valid_59| |v_#valid_59_const_-1605542226|) + (|v_#valid_56| |v_#valid_56_const_-1605542255|) + (v_f_~tmp~2.offset_9 v_f_~tmp~2.offset_9_const_-1952368093) + (v_f_~a_ref~2.offset_17 v_f_~a_ref~2.offset_17_const_-952049474) + (v_f_~a_4 v_f_~a_4_const_918515061) + (|v_f_#in~a_3| |v_f_#in~a_3_const_-579988366|)) + (and + (= |v_#length_43| + (store + (store (store |v_#length_46| v_f_~a_ref~2.base_24 4) v_f_~tmp~2.base_12 4) + v_f_~count~2.base_15 4)) + (distinct v_f_~count~2.base_15 0) + (= v_f_~count~2.offset_11 0) + (= |v_#valid_56| + (store + (store (store |v_#valid_59| v_f_~a_ref~2.base_24 1) v_f_~tmp~2.base_12 1) + v_f_~count~2.base_15 1)) + (= + (not + (= + (select + (store (store |v_#valid_59| v_f_~a_ref~2.base_24 1) v_f_~tmp~2.base_12 1) + v_f_~count~2.base_15) 0)) false) + (distinct v_f_~tmp~2.base_12 0) + (= v_f_~tmp~2.offset_9 0) + (= + (not + (= (select (store |v_#valid_59| v_f_~a_ref~2.base_24 1) v_f_~tmp~2.base_12) + 0)) false) (distinct v_f_~a_ref~2.base_24 0) + (= v_f_~a_ref~2.offset_17 0) + (= (not (= (select |v_#valid_59| v_f_~a_ref~2.base_24) 0)) false) + (= v_f_~a_4 |v_f_#in~a_3|)))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#memory_int_27_const_1545201660| () + (Array Int (Array Int Int))) +(declare-fun v_f_~count~2.base_16_const_-1664385341 () Int) +(declare-fun v_f_~count~2.offset_12_const_-1958914551 () Int) +(declare-fun |v_#memory_int_26_const_1545201661| () + (Array Int (Array Int Int))) +(declare-fun |v_#length_47_const_-660983819| () (Array Int Int)) +(declare-fun |v_#valid_60_const_-1605542216| () (Array Int Int)) +(assert + (let + ((|v_#memory_int_27| |v_#memory_int_27_const_1545201660|) + (v_f_~count~2.base_16 v_f_~count~2.base_16_const_-1664385341) + (v_f_~count~2.offset_12 v_f_~count~2.offset_12_const_-1958914551) + (|v_#memory_int_26| |v_#memory_int_26_const_1545201661|) + (|v_#length_47| |v_#length_47_const_-660983819|) + (|v_#valid_60| |v_#valid_60_const_-1605542216|)) + (and + (<= (+ 4 v_f_~count~2.offset_12) + (select |v_#length_47| v_f_~count~2.base_16)) + (not (= (select |v_#valid_60| v_f_~count~2.base_16) 0)) + (= |v_#memory_int_26| + (store |v_#memory_int_27| v_f_~count~2.base_16 + (store (select |v_#memory_int_27| v_f_~count~2.base_16) + v_f_~count~2.offset_12 0)))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#memory_int_29_const_1545201662| () + (Array Int (Array Int Int))) +(declare-fun v_f_~count~2.base_17_const_-1664385342 () Int) +(declare-fun v_f_~count~2.offset_13_const_-1958914552 () Int) +(declare-fun |v_#memory_int_28_const_1545201663| () + (Array Int (Array Int Int))) +(declare-fun |v_#length_48_const_-660983820| () (Array Int Int)) +(declare-fun |v_#valid_61_const_-1605542217| () (Array Int Int)) +(assert + (let + ((|v_#memory_int_29| |v_#memory_int_29_const_1545201662|) + (v_f_~count~2.base_17 v_f_~count~2.base_17_const_-1664385342) + (v_f_~count~2.offset_13 v_f_~count~2.offset_13_const_-1958914552) + (|v_#memory_int_28| |v_#memory_int_28_const_1545201663|) + (|v_#length_48| |v_#length_48_const_-660983820|) + (|v_#valid_61| |v_#valid_61_const_-1605542217|)) + (and + (<= (+ 4 v_f_~count~2.offset_13) + (select |v_#length_48| v_f_~count~2.base_17)) + (not (= (select |v_#valid_61| v_f_~count~2.base_17) 0)) + (= |v_#memory_int_28| + (store |v_#memory_int_29| v_f_~count~2.base_17 + (store (select |v_#memory_int_29| v_f_~count~2.base_17) + v_f_~count~2.offset_13 0)))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(assert false) +(set-info :status unsat) +(check-sat) +(pop 1) +(push 1) +(assert false) +(set-info :status unsat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#valid_65_const_-1605542221| () (Array Int Int)) +(declare-fun |v_f_#t~malloc0.base_12_const_-561419151| () Int) +(declare-fun |v_f_#t~malloc1.base_12_const_1926102384| () Int) +(declare-fun |v_f_#t~malloc2.base_12_const_118509071| () Int) +(declare-fun |v_#valid_62_const_-1605542218| () (Array Int Int)) +(declare-fun |v_f_#t~malloc2.offset_12_const_2139681713| () Int) +(declare-fun |v_f_#t~malloc1.offset_12_const_-358341006| () Int) +(declare-fun |v_f_#t~malloc0.offset_12_const_1438751027| () Int) +(declare-fun |v_#length_49_const_-660983821| () (Array Int Int)) +(declare-fun v_f_~count~2.base_18_const_-1664385343 () Int) +(declare-fun v_f_~count~2.offset_14_const_-1958914553 () Int) +(declare-fun |v_#memory_int_30_const_1545201556| () + (Array Int (Array Int Int))) +(declare-fun |v_f_#res_2_const_-426249603| () Int) +(assert + (let + ((|v_#valid_65| |v_#valid_65_const_-1605542221|) + (|v_f_#t~malloc0.base_12| |v_f_#t~malloc0.base_12_const_-561419151|) + (|v_f_#t~malloc1.base_12| |v_f_#t~malloc1.base_12_const_1926102384|) + (|v_f_#t~malloc2.base_12| |v_f_#t~malloc2.base_12_const_118509071|) + (|v_#valid_62| |v_#valid_62_const_-1605542218|) + (|v_f_#t~malloc2.offset_12| |v_f_#t~malloc2.offset_12_const_2139681713|) + (|v_f_#t~malloc1.offset_12| |v_f_#t~malloc1.offset_12_const_-358341006|) + (|v_f_#t~malloc0.offset_12| |v_f_#t~malloc0.offset_12_const_1438751027|) + (|v_#length_49| |v_#length_49_const_-660983821|) + (v_f_~count~2.base_18 v_f_~count~2.base_18_const_-1664385343) + (v_f_~count~2.offset_14 v_f_~count~2.offset_14_const_-1958914553) + (|v_#memory_int_30| |v_#memory_int_30_const_1545201556|) + (|v_f_#res_2| |v_f_#res_2_const_-426249603|)) + (and + (not + (= + (select + (store (store |v_#valid_65| |v_f_#t~malloc0.base_12| 0) + |v_f_#t~malloc1.base_12| 0) |v_f_#t~malloc2.base_12|) 0)) + (= |v_f_#t~malloc2.offset_12| 0) + (= |v_#valid_62| + (store + (store (store |v_#valid_65| |v_f_#t~malloc0.base_12| 0) + |v_f_#t~malloc1.base_12| 0) |v_f_#t~malloc2.base_12| 0)) + (not + (= + (select (store |v_#valid_65| |v_f_#t~malloc0.base_12| 0) + |v_f_#t~malloc1.base_12|) 0)) + (= |v_f_#t~malloc1.offset_12| 0) + (not (= (select |v_#valid_65| |v_f_#t~malloc0.base_12|) 0)) + (= |v_f_#t~malloc0.offset_12| 0) + (<= (+ 4 v_f_~count~2.offset_14) + (select |v_#length_49| v_f_~count~2.base_18)) + (not (= (select |v_#valid_65| v_f_~count~2.base_18) 0)) + (= |v_f_#res_2| + (select (select |v_#memory_int_30| v_f_~count~2.base_18) + v_f_~count~2.offset_14))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#valid_69_const_-1605542321| () (Array Int Int)) +(declare-fun |v_f_#t~malloc0.base_14_const_-561419249| () Int) +(declare-fun |v_f_#t~malloc1.base_14_const_1926102286| () Int) +(declare-fun |v_f_#t~malloc2.base_14_const_118509069| () Int) +(declare-fun |v_#valid_66_const_-1605542222| () (Array Int Int)) +(declare-fun |v_f_#t~malloc2.offset_14_const_2139681615| () Int) +(declare-fun |v_f_#t~malloc1.offset_14_const_-358341008| () Int) +(declare-fun |v_f_#t~malloc0.offset_14_const_1438751025| () Int) +(declare-fun |v_#length_50_const_-660983827| () (Array Int Int)) +(declare-fun v_f_~count~2.base_19_const_-1664385344 () Int) +(declare-fun v_f_~count~2.offset_15_const_-1958914554 () Int) +(declare-fun |v_#memory_int_31_const_1545201559| () + (Array Int (Array Int Int))) +(declare-fun |v_f_#res_3_const_-426249604| () Int) +(assert + (let + ((|v_#valid_69| |v_#valid_69_const_-1605542321|) + (|v_f_#t~malloc0.base_14| |v_f_#t~malloc0.base_14_const_-561419249|) + (|v_f_#t~malloc1.base_14| |v_f_#t~malloc1.base_14_const_1926102286|) + (|v_f_#t~malloc2.base_14| |v_f_#t~malloc2.base_14_const_118509069|) + (|v_#valid_66| |v_#valid_66_const_-1605542222|) + (|v_f_#t~malloc2.offset_14| |v_f_#t~malloc2.offset_14_const_2139681615|) + (|v_f_#t~malloc1.offset_14| |v_f_#t~malloc1.offset_14_const_-358341008|) + (|v_f_#t~malloc0.offset_14| |v_f_#t~malloc0.offset_14_const_1438751025|) + (|v_#length_50| |v_#length_50_const_-660983827|) + (v_f_~count~2.base_19 v_f_~count~2.base_19_const_-1664385344) + (v_f_~count~2.offset_15 v_f_~count~2.offset_15_const_-1958914554) + (|v_#memory_int_31| |v_#memory_int_31_const_1545201559|) + (|v_f_#res_3| |v_f_#res_3_const_-426249604|)) + (and + (not + (= + (select + (store (store |v_#valid_69| |v_f_#t~malloc0.base_14| 0) + |v_f_#t~malloc1.base_14| 0) |v_f_#t~malloc2.base_14|) 0)) + (= |v_f_#t~malloc2.offset_14| 0) + (= |v_#valid_66| + (store + (store (store |v_#valid_69| |v_f_#t~malloc0.base_14| 0) + |v_f_#t~malloc1.base_14| 0) |v_f_#t~malloc2.base_14| 0)) + (not + (= + (select (store |v_#valid_69| |v_f_#t~malloc0.base_14| 0) + |v_f_#t~malloc1.base_14|) 0)) + (= |v_f_#t~malloc1.offset_14| 0) + (not (= (select |v_#valid_69| |v_f_#t~malloc0.base_14|) 0)) + (= |v_f_#t~malloc0.offset_14| 0) + (<= (+ 4 v_f_~count~2.offset_15) + (select |v_#length_50| v_f_~count~2.base_19)) + (not (= (select |v_#valid_69| v_f_~count~2.base_19) 0)) + (= |v_f_#res_3| + (select (select |v_#memory_int_31| v_f_~count~2.base_19) + v_f_~count~2.offset_15))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#valid_72_const_-1605542313| () (Array Int Int)) +(declare-fun |v_f_#t~malloc0.base_16_const_-561419251| () Int) +(declare-fun |v_f_#t~malloc1.base_16_const_1926102284| () Int) +(declare-fun |v_#valid_70_const_-1605542311| () (Array Int Int)) +(declare-fun |v_f_#t~malloc2.offset_15_const_2139681614| () Int) +(declare-fun |v_f_#t~malloc1.offset_16_const_-358341106| () Int) +(declare-fun |v_f_#t~malloc0.offset_16_const_1438750927| () Int) +(declare-fun |v_#length_51_const_-660983828| () (Array Int Int)) +(declare-fun v_f_~count~2.base_20_const_-1664385302 () Int) +(declare-fun v_f_~count~2.offset_16_const_-1958914555 () Int) +(declare-fun |v_#memory_int_32_const_1545201558| () + (Array Int (Array Int Int))) +(declare-fun |v_f_#res_4_const_-426249605| () Int) +(assert + (let + ((|v_#valid_72| |v_#valid_72_const_-1605542313|) + (|v_f_#t~malloc0.base_16| |v_f_#t~malloc0.base_16_const_-561419251|) + (|v_f_#t~malloc1.base_16| |v_f_#t~malloc1.base_16_const_1926102284|) + (|v_#valid_70| |v_#valid_70_const_-1605542311|) + (|v_f_#t~malloc2.offset_15| |v_f_#t~malloc2.offset_15_const_2139681614|) + (|v_f_#t~malloc1.offset_16| |v_f_#t~malloc1.offset_16_const_-358341106|) + (|v_f_#t~malloc0.offset_16| |v_f_#t~malloc0.offset_16_const_1438750927|) + (|v_#length_51| |v_#length_51_const_-660983828|) + (v_f_~count~2.base_20 v_f_~count~2.base_20_const_-1664385302) + (v_f_~count~2.offset_16 v_f_~count~2.offset_16_const_-1958914555) + (|v_#memory_int_32| |v_#memory_int_32_const_1545201558|) + (|v_f_#res_4| |v_f_#res_4_const_-426249605|)) + (and (not (= |v_f_#t~malloc2.offset_15| 0)) + (not + (= + (select (store |v_#valid_72| |v_f_#t~malloc0.base_16| 0) + |v_f_#t~malloc1.base_16|) 0)) + (= |v_f_#t~malloc1.offset_16| 0) + (= |v_#valid_70| + (store (store |v_#valid_72| |v_f_#t~malloc0.base_16| 0) + |v_f_#t~malloc1.base_16| 0)) + (not (= (select |v_#valid_72| |v_f_#t~malloc0.base_16|) 0)) + (= |v_f_#t~malloc0.offset_16| 0) + (<= (+ 4 v_f_~count~2.offset_16) + (select |v_#length_51| v_f_~count~2.base_20)) + (not (= (select |v_#valid_72| v_f_~count~2.base_20) 0)) + (= |v_f_#res_4| + (select (select |v_#memory_int_32| v_f_~count~2.base_20) + v_f_~count~2.offset_16))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#valid_75_const_-1605542316| () (Array Int Int)) +(declare-fun |v_f_#t~malloc0.base_18_const_-561419253| () Int) +(declare-fun |v_f_#t~malloc1.base_18_const_1926102282| () Int) +(declare-fun |v_#valid_73_const_-1605542314| () (Array Int Int)) +(declare-fun |v_f_#t~malloc2.offset_16_const_2139681613| () Int) +(declare-fun |v_f_#t~malloc1.offset_18_const_-358341108| () Int) +(declare-fun |v_f_#t~malloc0.offset_18_const_1438750925| () Int) +(declare-fun |v_#length_52_const_-660983829| () (Array Int Int)) +(declare-fun v_f_~count~2.base_21_const_-1664385303 () Int) +(declare-fun v_f_~count~2.offset_17_const_-1958914556 () Int) +(declare-fun |v_#memory_int_33_const_1545201553| () + (Array Int (Array Int Int))) +(declare-fun |v_f_#res_5_const_-426249606| () Int) +(assert + (let + ((|v_#valid_75| |v_#valid_75_const_-1605542316|) + (|v_f_#t~malloc0.base_18| |v_f_#t~malloc0.base_18_const_-561419253|) + (|v_f_#t~malloc1.base_18| |v_f_#t~malloc1.base_18_const_1926102282|) + (|v_#valid_73| |v_#valid_73_const_-1605542314|) + (|v_f_#t~malloc2.offset_16| |v_f_#t~malloc2.offset_16_const_2139681613|) + (|v_f_#t~malloc1.offset_18| |v_f_#t~malloc1.offset_18_const_-358341108|) + (|v_f_#t~malloc0.offset_18| |v_f_#t~malloc0.offset_18_const_1438750925|) + (|v_#length_52| |v_#length_52_const_-660983829|) + (v_f_~count~2.base_21 v_f_~count~2.base_21_const_-1664385303) + (v_f_~count~2.offset_17 v_f_~count~2.offset_17_const_-1958914556) + (|v_#memory_int_33| |v_#memory_int_33_const_1545201553|) + (|v_f_#res_5| |v_f_#res_5_const_-426249606|)) + (and (not (= |v_f_#t~malloc2.offset_16| 0)) + (not + (= + (select (store |v_#valid_75| |v_f_#t~malloc0.base_18| 0) + |v_f_#t~malloc1.base_18|) 0)) + (= |v_f_#t~malloc1.offset_18| 0) + (= |v_#valid_73| + (store (store |v_#valid_75| |v_f_#t~malloc0.base_18| 0) + |v_f_#t~malloc1.base_18| 0)) + (not (= (select |v_#valid_75| |v_f_#t~malloc0.base_18|) 0)) + (= |v_f_#t~malloc0.offset_18| 0) + (<= (+ 4 v_f_~count~2.offset_17) + (select |v_#length_52| v_f_~count~2.base_21)) + (not (= (select |v_#valid_75| v_f_~count~2.base_21) 0)) + (= |v_f_#res_5| + (select (select |v_#memory_int_33| v_f_~count~2.base_21) + v_f_~count~2.offset_17))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#valid_78_const_-1605542319| () (Array Int Int)) +(declare-fun |v_f_#t~malloc0.base_20_const_-561419244| () Int) +(declare-fun |v_f_#t~malloc1.base_20_const_1926102291| () Int) +(declare-fun |v_#valid_76_const_-1605542317| () (Array Int Int)) +(declare-fun |v_f_#t~malloc2.base_15_const_118509068| () Int) +(declare-fun |v_f_#t~malloc1.offset_20_const_-358341099| () Int) +(declare-fun |v_f_#t~malloc0.offset_20_const_1438750934| () Int) +(declare-fun |v_#length_53_const_-660983830| () (Array Int Int)) +(declare-fun v_f_~count~2.base_22_const_-1664385304 () Int) +(declare-fun v_f_~count~2.offset_18_const_-1958914557 () Int) +(declare-fun |v_#memory_int_34_const_1545201552| () + (Array Int (Array Int Int))) +(declare-fun |v_f_#res_6_const_-426249607| () Int) +(assert + (let + ((|v_#valid_78| |v_#valid_78_const_-1605542319|) + (|v_f_#t~malloc0.base_20| |v_f_#t~malloc0.base_20_const_-561419244|) + (|v_f_#t~malloc1.base_20| |v_f_#t~malloc1.base_20_const_1926102291|) + (|v_#valid_76| |v_#valid_76_const_-1605542317|) + (|v_f_#t~malloc2.base_15| |v_f_#t~malloc2.base_15_const_118509068|) + (|v_f_#t~malloc1.offset_20| |v_f_#t~malloc1.offset_20_const_-358341099|) + (|v_f_#t~malloc0.offset_20| |v_f_#t~malloc0.offset_20_const_1438750934|) + (|v_#length_53| |v_#length_53_const_-660983830|) + (v_f_~count~2.base_22 v_f_~count~2.base_22_const_-1664385304) + (v_f_~count~2.offset_18 v_f_~count~2.offset_18_const_-1958914557) + (|v_#memory_int_34| |v_#memory_int_34_const_1545201552|) + (|v_f_#res_6| |v_f_#res_6_const_-426249607|)) + (and (not (not (= (select |v_#valid_76| |v_f_#t~malloc2.base_15|) 0))) + (not + (= + (select (store |v_#valid_78| |v_f_#t~malloc0.base_20| 0) + |v_f_#t~malloc1.base_20|) 0)) + (= |v_f_#t~malloc1.offset_20| 0) + (= |v_#valid_76| + (store (store |v_#valid_78| |v_f_#t~malloc0.base_20| 0) + |v_f_#t~malloc1.base_20| 0)) + (not (= (select |v_#valid_78| |v_f_#t~malloc0.base_20|) 0)) + (= |v_f_#t~malloc0.offset_20| 0) + (<= (+ 4 v_f_~count~2.offset_18) + (select |v_#length_53| v_f_~count~2.base_22)) + (not (= (select |v_#valid_78| v_f_~count~2.base_22) 0)) + (= |v_f_#res_6| + (select (select |v_#memory_int_34| v_f_~count~2.base_22) + v_f_~count~2.offset_18))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#valid_81_const_-1605542279| () (Array Int Int)) +(declare-fun |v_f_#t~malloc0.base_22_const_-561419246| () Int) +(declare-fun |v_f_#t~malloc1.base_22_const_1926102289| () Int) +(declare-fun |v_#valid_79_const_-1605542320| () (Array Int Int)) +(declare-fun |v_f_#t~malloc2.base_16_const_118509067| () Int) +(declare-fun |v_f_#t~malloc1.offset_22_const_-358341101| () Int) +(declare-fun |v_f_#t~malloc0.offset_22_const_1438750932| () Int) +(declare-fun |v_#length_54_const_-660983831| () (Array Int Int)) +(declare-fun v_f_~count~2.base_23_const_-1664385305 () Int) +(declare-fun v_f_~count~2.offset_19_const_-1958914558 () Int) +(declare-fun |v_#memory_int_35_const_1545201555| () + (Array Int (Array Int Int))) +(declare-fun |v_f_#res_7_const_-426249608| () Int) +(assert + (let + ((|v_#valid_81| |v_#valid_81_const_-1605542279|) + (|v_f_#t~malloc0.base_22| |v_f_#t~malloc0.base_22_const_-561419246|) + (|v_f_#t~malloc1.base_22| |v_f_#t~malloc1.base_22_const_1926102289|) + (|v_#valid_79| |v_#valid_79_const_-1605542320|) + (|v_f_#t~malloc2.base_16| |v_f_#t~malloc2.base_16_const_118509067|) + (|v_f_#t~malloc1.offset_22| |v_f_#t~malloc1.offset_22_const_-358341101|) + (|v_f_#t~malloc0.offset_22| |v_f_#t~malloc0.offset_22_const_1438750932|) + (|v_#length_54| |v_#length_54_const_-660983831|) + (v_f_~count~2.base_23 v_f_~count~2.base_23_const_-1664385305) + (v_f_~count~2.offset_19 v_f_~count~2.offset_19_const_-1958914558) + (|v_#memory_int_35| |v_#memory_int_35_const_1545201555|) + (|v_f_#res_7| |v_f_#res_7_const_-426249608|)) + (and (not (not (= (select |v_#valid_79| |v_f_#t~malloc2.base_16|) 0))) + (not + (= + (select (store |v_#valid_81| |v_f_#t~malloc0.base_22| 0) + |v_f_#t~malloc1.base_22|) 0)) + (= |v_f_#t~malloc1.offset_22| 0) + (= |v_#valid_79| + (store (store |v_#valid_81| |v_f_#t~malloc0.base_22| 0) + |v_f_#t~malloc1.base_22| 0)) + (not (= (select |v_#valid_81| |v_f_#t~malloc0.base_22|) 0)) + (= |v_f_#t~malloc0.offset_22| 0) + (<= (+ 4 v_f_~count~2.offset_19) + (select |v_#length_54| v_f_~count~2.base_23)) + (not (= (select |v_#valid_81| v_f_~count~2.base_23) 0)) + (= |v_f_#res_7| + (select (select |v_#memory_int_35| v_f_~count~2.base_23) + v_f_~count~2.offset_19))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#memory_int_36_const_1545201554| () + (Array Int (Array Int Int))) +(declare-fun v_f_~count~2.base_24_const_-1664385306 () Int) +(declare-fun v_f_~count~2.offset_20_const_-1958914516 () Int) +(declare-fun |v_f_#res_8_const_-426249609| () Int) +(declare-fun |v_f_#t~malloc1.offset_23_const_-358341102| () Int) +(declare-fun |v_#valid_83_const_-1605542281| () (Array Int Int)) +(declare-fun |v_f_#t~malloc0.base_24_const_-561419248| () Int) +(declare-fun |v_f_#t~malloc0.offset_24_const_1438750930| () Int) +(declare-fun |v_#valid_82_const_-1605542280| () (Array Int Int)) +(declare-fun |v_#length_55_const_-660983832| () (Array Int Int)) +(assert + (let + ((|v_#memory_int_36| |v_#memory_int_36_const_1545201554|) + (v_f_~count~2.base_24 v_f_~count~2.base_24_const_-1664385306) + (v_f_~count~2.offset_20 v_f_~count~2.offset_20_const_-1958914516) + (|v_f_#res_8| |v_f_#res_8_const_-426249609|) + (|v_f_#t~malloc1.offset_23| |v_f_#t~malloc1.offset_23_const_-358341102|) + (|v_#valid_83| |v_#valid_83_const_-1605542281|) + (|v_f_#t~malloc0.base_24| |v_f_#t~malloc0.base_24_const_-561419248|) + (|v_f_#t~malloc0.offset_24| |v_f_#t~malloc0.offset_24_const_1438750930|) + (|v_#valid_82| |v_#valid_82_const_-1605542280|) + (|v_#length_55| |v_#length_55_const_-660983832|)) + (and (not (= |v_f_#t~malloc1.offset_23| 0)) + (not (= (select |v_#valid_83| |v_f_#t~malloc0.base_24|) 0)) + (= |v_f_#t~malloc0.offset_24| 0) + (= |v_#valid_82| (store |v_#valid_83| |v_f_#t~malloc0.base_24| 0)) + (<= (+ 4 v_f_~count~2.offset_20) + (select |v_#length_55| v_f_~count~2.base_24)) + (not (= (select |v_#valid_83| v_f_~count~2.base_24) 0)) + (= |v_f_#res_8| + (select (select |v_#memory_int_36| v_f_~count~2.base_24) + v_f_~count~2.offset_20))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#memory_int_37_const_1545201565| () + (Array Int (Array Int Int))) +(declare-fun v_f_~count~2.base_25_const_-1664385307 () Int) +(declare-fun v_f_~count~2.offset_21_const_-1958914517 () Int) +(declare-fun |v_f_#res_9_const_-426249610| () Int) +(declare-fun |v_f_#t~malloc1.offset_24_const_-358341103| () Int) +(declare-fun |v_#valid_85_const_-1605542283| () (Array Int Int)) +(declare-fun |v_f_#t~malloc0.base_26_const_-561419218| () Int) +(declare-fun |v_f_#t~malloc0.offset_26_const_1438750928| () Int) +(declare-fun |v_#valid_84_const_-1605542282| () (Array Int Int)) +(declare-fun |v_#length_56_const_-660983913| () (Array Int Int)) +(assert + (let + ((|v_#memory_int_37| |v_#memory_int_37_const_1545201565|) + (v_f_~count~2.base_25 v_f_~count~2.base_25_const_-1664385307) + (v_f_~count~2.offset_21 v_f_~count~2.offset_21_const_-1958914517) + (|v_f_#res_9| |v_f_#res_9_const_-426249610|) + (|v_f_#t~malloc1.offset_24| |v_f_#t~malloc1.offset_24_const_-358341103|) + (|v_#valid_85| |v_#valid_85_const_-1605542283|) + (|v_f_#t~malloc0.base_26| |v_f_#t~malloc0.base_26_const_-561419218|) + (|v_f_#t~malloc0.offset_26| |v_f_#t~malloc0.offset_26_const_1438750928|) + (|v_#valid_84| |v_#valid_84_const_-1605542282|) + (|v_#length_56| |v_#length_56_const_-660983913|)) + (and (not (= |v_f_#t~malloc1.offset_24| 0)) + (not (= (select |v_#valid_85| |v_f_#t~malloc0.base_26|) 0)) + (= |v_f_#t~malloc0.offset_26| 0) + (= |v_#valid_84| (store |v_#valid_85| |v_f_#t~malloc0.base_26| 0)) + (<= (+ 4 v_f_~count~2.offset_21) + (select |v_#length_56| v_f_~count~2.base_25)) + (not (= (select |v_#valid_85| v_f_~count~2.base_25) 0)) + (= |v_f_#res_9| + (select (select |v_#memory_int_37| v_f_~count~2.base_25) + v_f_~count~2.offset_21))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#memory_int_38_const_1545201564| () + (Array Int (Array Int Int))) +(declare-fun v_f_~count~2.base_26_const_-1664385308 () Int) +(declare-fun v_f_~count~2.offset_22_const_-1958914518 () Int) +(declare-fun |v_f_#res_10_const_-330836144| () Int) +(declare-fun |v_#valid_86_const_-1605542284| () (Array Int Int)) +(declare-fun |v_f_#t~malloc1.base_23_const_1926102288| () Int) +(declare-fun |v_#valid_87_const_-1605542285| () (Array Int Int)) +(declare-fun |v_f_#t~malloc0.base_28_const_-561419220| () Int) +(declare-fun |v_f_#t~malloc0.offset_28_const_1438750958| () Int) +(declare-fun |v_#length_57_const_-660983914| () (Array Int Int)) +(assert + (let + ((|v_#memory_int_38| |v_#memory_int_38_const_1545201564|) + (v_f_~count~2.base_26 v_f_~count~2.base_26_const_-1664385308) + (v_f_~count~2.offset_22 v_f_~count~2.offset_22_const_-1958914518) + (|v_f_#res_10| |v_f_#res_10_const_-330836144|) + (|v_#valid_86| |v_#valid_86_const_-1605542284|) + (|v_f_#t~malloc1.base_23| |v_f_#t~malloc1.base_23_const_1926102288|) + (|v_#valid_87| |v_#valid_87_const_-1605542285|) + (|v_f_#t~malloc0.base_28| |v_f_#t~malloc0.base_28_const_-561419220|) + (|v_f_#t~malloc0.offset_28| |v_f_#t~malloc0.offset_28_const_1438750958|) + (|v_#length_57| |v_#length_57_const_-660983914|)) + (and (not (not (= (select |v_#valid_86| |v_f_#t~malloc1.base_23|) 0))) + (not (= (select |v_#valid_87| |v_f_#t~malloc0.base_28|) 0)) + (= |v_f_#t~malloc0.offset_28| 0) + (= |v_#valid_86| (store |v_#valid_87| |v_f_#t~malloc0.base_28| 0)) + (<= (+ 4 v_f_~count~2.offset_22) + (select |v_#length_57| v_f_~count~2.base_26)) + (not (= (select |v_#valid_87| v_f_~count~2.base_26) 0)) + (= |v_f_#res_10| + (select (select |v_#memory_int_38| v_f_~count~2.base_26) + v_f_~count~2.offset_22))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#memory_int_39_const_1545201567| () + (Array Int (Array Int Int))) +(declare-fun v_f_~count~2.base_27_const_-1664385309 () Int) +(declare-fun v_f_~count~2.offset_23_const_-1958914519 () Int) +(declare-fun |v_f_#res_11_const_-330836113| () Int) +(declare-fun |v_#valid_88_const_-1605542286| () (Array Int Int)) +(declare-fun |v_f_#t~malloc1.base_24_const_1926102319| () Int) +(declare-fun |v_#valid_89_const_-1605542287| () (Array Int Int)) +(declare-fun |v_f_#t~malloc0.base_30_const_-561419211| () Int) +(declare-fun |v_f_#t~malloc0.offset_30_const_1438750967| () Int) +(declare-fun |v_#length_58_const_-660983915| () (Array Int Int)) +(assert + (let + ((|v_#memory_int_39| |v_#memory_int_39_const_1545201567|) + (v_f_~count~2.base_27 v_f_~count~2.base_27_const_-1664385309) + (v_f_~count~2.offset_23 v_f_~count~2.offset_23_const_-1958914519) + (|v_f_#res_11| |v_f_#res_11_const_-330836113|) + (|v_#valid_88| |v_#valid_88_const_-1605542286|) + (|v_f_#t~malloc1.base_24| |v_f_#t~malloc1.base_24_const_1926102319|) + (|v_#valid_89| |v_#valid_89_const_-1605542287|) + (|v_f_#t~malloc0.base_30| |v_f_#t~malloc0.base_30_const_-561419211|) + (|v_f_#t~malloc0.offset_30| |v_f_#t~malloc0.offset_30_const_1438750967|) + (|v_#length_58| |v_#length_58_const_-660983915|)) + (and (not (not (= (select |v_#valid_88| |v_f_#t~malloc1.base_24|) 0))) + (not (= (select |v_#valid_89| |v_f_#t~malloc0.base_30|) 0)) + (= |v_f_#t~malloc0.offset_30| 0) + (= |v_#valid_88| (store |v_#valid_89| |v_f_#t~malloc0.base_30| 0)) + (<= (+ 4 v_f_~count~2.offset_23) + (select |v_#length_58| v_f_~count~2.base_27)) + (not (= (select |v_#valid_89| v_f_~count~2.base_27) 0)) + (= |v_f_#res_11| + (select (select |v_#memory_int_39| v_f_~count~2.base_27) + v_f_~count~2.offset_23))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#memory_int_40_const_1545201589| () + (Array Int (Array Int Int))) +(declare-fun v_f_~count~2.base_28_const_-1664385310 () Int) +(declare-fun v_f_~count~2.offset_24_const_-1958914520 () Int) +(declare-fun |v_f_#res_12_const_-330836114| () Int) +(declare-fun |v_f_#t~malloc0.offset_31_const_1438750966| () Int) +(declare-fun |v_#length_59_const_-660983916| () (Array Int Int)) +(declare-fun |v_#valid_90_const_-1605542373| () (Array Int Int)) +(assert + (let + ((|v_#memory_int_40| |v_#memory_int_40_const_1545201589|) + (v_f_~count~2.base_28 v_f_~count~2.base_28_const_-1664385310) + (v_f_~count~2.offset_24 v_f_~count~2.offset_24_const_-1958914520) + (|v_f_#res_12| |v_f_#res_12_const_-330836114|) + (|v_f_#t~malloc0.offset_31| |v_f_#t~malloc0.offset_31_const_1438750966|) + (|v_#length_59| |v_#length_59_const_-660983916|) + (|v_#valid_90| |v_#valid_90_const_-1605542373|)) + (and (not (= |v_f_#t~malloc0.offset_31| 0)) + (<= (+ 4 v_f_~count~2.offset_24) + (select |v_#length_59| v_f_~count~2.base_28)) + (not (= (select |v_#valid_90| v_f_~count~2.base_28) 0)) + (= |v_f_#res_12| + (select (select |v_#memory_int_40| v_f_~count~2.base_28) + v_f_~count~2.offset_24))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#memory_int_41_const_1545201588| () + (Array Int (Array Int Int))) +(declare-fun v_f_~count~2.base_29_const_-1664385311 () Int) +(declare-fun v_f_~count~2.offset_25_const_-1958914521 () Int) +(declare-fun |v_f_#res_13_const_-330836115| () Int) +(declare-fun |v_f_#t~malloc0.offset_32_const_1438750965| () Int) +(declare-fun |v_#length_60_const_-660983922| () (Array Int Int)) +(declare-fun |v_#valid_91_const_-1605542374| () (Array Int Int)) +(assert + (let + ((|v_#memory_int_41| |v_#memory_int_41_const_1545201588|) + (v_f_~count~2.base_29 v_f_~count~2.base_29_const_-1664385311) + (v_f_~count~2.offset_25 v_f_~count~2.offset_25_const_-1958914521) + (|v_f_#res_13| |v_f_#res_13_const_-330836115|) + (|v_f_#t~malloc0.offset_32| |v_f_#t~malloc0.offset_32_const_1438750965|) + (|v_#length_60| |v_#length_60_const_-660983922|) + (|v_#valid_91| |v_#valid_91_const_-1605542374|)) + (and (not (= |v_f_#t~malloc0.offset_32| 0)) + (<= (+ 4 v_f_~count~2.offset_25) + (select |v_#length_60| v_f_~count~2.base_29)) + (not (= (select |v_#valid_91| v_f_~count~2.base_29) 0)) + (= |v_f_#res_13| + (select (select |v_#memory_int_41| v_f_~count~2.base_29) + v_f_~count~2.offset_25))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#memory_int_42_const_1545201591| () + (Array Int (Array Int Int))) +(declare-fun v_f_~count~2.base_30_const_-1664385397 () Int) +(declare-fun v_f_~count~2.offset_26_const_-1958914522 () Int) +(declare-fun |v_f_#res_14_const_-330836116| () Int) +(declare-fun |v_#valid_92_const_-1605542375| () (Array Int Int)) +(declare-fun |v_f_#t~malloc0.base_31_const_-561419212| () Int) +(declare-fun |v_#length_61_const_-660983923| () (Array Int Int)) +(assert + (let + ((|v_#memory_int_42| |v_#memory_int_42_const_1545201591|) + (v_f_~count~2.base_30 v_f_~count~2.base_30_const_-1664385397) + (v_f_~count~2.offset_26 v_f_~count~2.offset_26_const_-1958914522) + (|v_f_#res_14| |v_f_#res_14_const_-330836116|) + (|v_#valid_92| |v_#valid_92_const_-1605542375|) + (|v_f_#t~malloc0.base_31| |v_f_#t~malloc0.base_31_const_-561419212|) + (|v_#length_61| |v_#length_61_const_-660983923|)) + (and (not (not (= (select |v_#valid_92| |v_f_#t~malloc0.base_31|) 0))) + (<= (+ 4 v_f_~count~2.offset_26) + (select |v_#length_61| v_f_~count~2.base_30)) + (not (= (select |v_#valid_92| v_f_~count~2.base_30) 0)) + (= |v_f_#res_14| + (select (select |v_#memory_int_42| v_f_~count~2.base_30) + v_f_~count~2.offset_26))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#memory_int_43_const_1545201590| () + (Array Int (Array Int Int))) +(declare-fun v_f_~count~2.base_31_const_-1664385398 () Int) +(declare-fun v_f_~count~2.offset_27_const_-1958914523 () Int) +(declare-fun |v_f_#res_15_const_-330836117| () Int) +(declare-fun |v_#valid_93_const_-1605542376| () (Array Int Int)) +(declare-fun |v_f_#t~malloc0.base_32_const_-561419213| () Int) +(declare-fun |v_#length_62_const_-660983924| () (Array Int Int)) +(assert + (let + ((|v_#memory_int_43| |v_#memory_int_43_const_1545201590|) + (v_f_~count~2.base_31 v_f_~count~2.base_31_const_-1664385398) + (v_f_~count~2.offset_27 v_f_~count~2.offset_27_const_-1958914523) + (|v_f_#res_15| |v_f_#res_15_const_-330836117|) + (|v_#valid_93| |v_#valid_93_const_-1605542376|) + (|v_f_#t~malloc0.base_32| |v_f_#t~malloc0.base_32_const_-561419213|) + (|v_#length_62| |v_#length_62_const_-660983924|)) + (and (not (not (= (select |v_#valid_93| |v_f_#t~malloc0.base_32|) 0))) + (<= (+ 4 v_f_~count~2.offset_27) + (select |v_#length_62| v_f_~count~2.base_31)) + (not (= (select |v_#valid_93| v_f_~count~2.base_31) 0)) + (= |v_f_#res_15| + (select (select |v_#memory_int_43| v_f_~count~2.base_31) + v_f_~count~2.offset_27))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(assert true) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(assert true) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_f_#t~mem6_7_const_-433504757| () Int) +(assert + (let ((|v_f_#t~mem6_7| |v_f_#t~mem6_7_const_-433504757|)) + (> |v_f_#t~mem6_7| 1))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_f_#t~mem6_9_const_-433504759| () Int) +(assert + (let ((|v_f_#t~mem6_9| |v_f_#t~mem6_9_const_-433504759|)) + (> |v_f_#t~mem6_9| 1))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#memory_int_45_const_1545201584| () + (Array Int (Array Int Int))) +(declare-fun v_f_~tmp~2.base_13_const_875778014 () Int) +(declare-fun v_f_~tmp~2.offset_10_const_-395998973 () Int) +(declare-fun |v_f_#t~mem7_5_const_-433505716| () Int) +(declare-fun |v_#memory_int_44_const_1545201585| () + (Array Int (Array Int Int))) +(declare-fun |v_#length_63_const_-660983925| () (Array Int Int)) +(declare-fun |v_#valid_94_const_-1605542377| () (Array Int Int)) +(assert + (let + ((|v_#memory_int_45| |v_#memory_int_45_const_1545201584|) + (v_f_~tmp~2.base_13 v_f_~tmp~2.base_13_const_875778014) + (v_f_~tmp~2.offset_10 v_f_~tmp~2.offset_10_const_-395998973) + (|v_f_#t~mem7_5| |v_f_#t~mem7_5_const_-433505716|) + (|v_#memory_int_44| |v_#memory_int_44_const_1545201585|) + (|v_#length_63| |v_#length_63_const_-660983925|) + (|v_#valid_94| |v_#valid_94_const_-1605542377|)) + (and + (<= (+ 4 v_f_~tmp~2.offset_10) (select |v_#length_63| v_f_~tmp~2.base_13)) + (not (= (select |v_#valid_94| v_f_~tmp~2.base_13) 0)) + (= |v_#memory_int_44| + (store |v_#memory_int_45| v_f_~tmp~2.base_13 + (store (select |v_#memory_int_45| v_f_~tmp~2.base_13) v_f_~tmp~2.offset_10 + (ite (< |v_f_#t~mem7_5| 0) + (- (mod |v_f_#t~mem7_5| 2) 2) + (mod |v_f_#t~mem7_5| 2)))))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#memory_int_47_const_1545201586| () + (Array Int (Array Int Int))) +(declare-fun v_f_~tmp~2.base_14_const_875778013 () Int) +(declare-fun v_f_~tmp~2.offset_11_const_-395998974 () Int) +(declare-fun |v_f_#t~mem7_7_const_-433505718| () Int) +(declare-fun |v_#memory_int_46_const_1545201587| () + (Array Int (Array Int Int))) +(declare-fun |v_#length_64_const_-660983926| () (Array Int Int)) +(declare-fun |v_#valid_95_const_-1605542378| () (Array Int Int)) +(assert + (let + ((|v_#memory_int_47| |v_#memory_int_47_const_1545201586|) + (v_f_~tmp~2.base_14 v_f_~tmp~2.base_14_const_875778013) + (v_f_~tmp~2.offset_11 v_f_~tmp~2.offset_11_const_-395998974) + (|v_f_#t~mem7_7| |v_f_#t~mem7_7_const_-433505718|) + (|v_#memory_int_46| |v_#memory_int_46_const_1545201587|) + (|v_#length_64| |v_#length_64_const_-660983926|) + (|v_#valid_95| |v_#valid_95_const_-1605542378|)) + (and + (<= (+ 4 v_f_~tmp~2.offset_11) (select |v_#length_64| v_f_~tmp~2.base_14)) + (not (= (select |v_#valid_95| v_f_~tmp~2.base_14) 0)) + (= |v_#memory_int_46| + (store |v_#memory_int_47| v_f_~tmp~2.base_14 + (store (select |v_#memory_int_47| v_f_~tmp~2.base_14) v_f_~tmp~2.offset_11 + (ite (< |v_f_#t~mem7_7| 0) + (- (mod |v_f_#t~mem7_7| 2) 2) + (mod |v_f_#t~mem7_7| 2)))))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_f_#t~mem9_7_const_-433507640| () Int) +(assert + (let ((|v_f_#t~mem9_7| |v_f_#t~mem9_7_const_-433507640|)) + (not (= |v_f_#t~mem9_7| 0)))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_f_#t~mem9_9_const_-433507642| () Int) +(assert + (let ((|v_f_#t~mem9_9| |v_f_#t~mem9_9_const_-433507642|)) + (not (= |v_f_#t~mem9_9| 0)))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#memory_int_49_const_1545201596| () + (Array Int (Array Int Int))) +(declare-fun v_f_~a_ref~2.base_25_const_-1779673185 () Int) +(declare-fun v_f_~a_ref~2.offset_18_const_-952049475 () Int) +(declare-fun |v_f_#t~mem12_5_const_-556256562| () Int) +(declare-fun |v_#memory_int_48_const_1545201597| () + (Array Int (Array Int Int))) +(declare-fun |v_#length_65_const_-660983927| () (Array Int Int)) +(declare-fun |v_#valid_96_const_-1605542379| () (Array Int Int)) +(assert + (let + ((|v_#memory_int_49| |v_#memory_int_49_const_1545201596|) + (v_f_~a_ref~2.base_25 v_f_~a_ref~2.base_25_const_-1779673185) + (v_f_~a_ref~2.offset_18 v_f_~a_ref~2.offset_18_const_-952049475) + (|v_f_#t~mem12_5| |v_f_#t~mem12_5_const_-556256562|) + (|v_#memory_int_48| |v_#memory_int_48_const_1545201597|) + (|v_#length_65| |v_#length_65_const_-660983927|) + (|v_#valid_96| |v_#valid_96_const_-1605542379|)) + (and + (<= (+ 4 v_f_~a_ref~2.offset_18) + (select |v_#length_65| v_f_~a_ref~2.base_25)) + (not (= (select |v_#valid_96| v_f_~a_ref~2.base_25) 0)) + (= |v_#memory_int_48| + (store |v_#memory_int_49| v_f_~a_ref~2.base_25 + (store (select |v_#memory_int_49| v_f_~a_ref~2.base_25) + v_f_~a_ref~2.offset_18 (- |v_f_#t~mem12_5| 1))))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#memory_int_51_const_1545201493| () + (Array Int (Array Int Int))) +(declare-fun v_f_~a_ref~2.base_26_const_-1779673186 () Int) +(declare-fun v_f_~a_ref~2.offset_19_const_-952049476 () Int) +(declare-fun |v_f_#t~mem12_7_const_-556256564| () Int) +(declare-fun |v_#memory_int_50_const_1545201482| () + (Array Int (Array Int Int))) +(declare-fun |v_#length_66_const_-660983928| () (Array Int Int)) +(declare-fun |v_#valid_97_const_-1605542380| () (Array Int Int)) +(assert + (let + ((|v_#memory_int_51| |v_#memory_int_51_const_1545201493|) + (v_f_~a_ref~2.base_26 v_f_~a_ref~2.base_26_const_-1779673186) + (v_f_~a_ref~2.offset_19 v_f_~a_ref~2.offset_19_const_-952049476) + (|v_f_#t~mem12_7| |v_f_#t~mem12_7_const_-556256564|) + (|v_#memory_int_50| |v_#memory_int_50_const_1545201482|) + (|v_#length_66| |v_#length_66_const_-660983928|) + (|v_#valid_97| |v_#valid_97_const_-1605542380|)) + (and + (<= (+ 4 v_f_~a_ref~2.offset_19) + (select |v_#length_66| v_f_~a_ref~2.base_26)) + (not (= (select |v_#valid_97| v_f_~a_ref~2.base_26) 0)) + (= |v_#memory_int_50| + (store |v_#memory_int_51| v_f_~a_ref~2.base_26 + (store (select |v_#memory_int_51| v_f_~a_ref~2.base_26) + v_f_~a_ref~2.offset_19 (- |v_f_#t~mem12_7| 1))))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#memory_int_53_const_1545201495| () + (Array Int (Array Int Int))) +(declare-fun v_f_~count~2.base_32_const_-1664385399 () Int) +(declare-fun v_f_~count~2.offset_28_const_-1958914524 () Int) +(declare-fun |v_#memory_int_52_const_1545201492| () + (Array Int (Array Int Int))) +(declare-fun |v_#length_67_const_-660983881| () (Array Int Int)) +(declare-fun |v_#valid_98_const_-1605542381| () (Array Int Int)) +(assert + (let + ((|v_#memory_int_53| |v_#memory_int_53_const_1545201495|) + (v_f_~count~2.base_32 v_f_~count~2.base_32_const_-1664385399) + (v_f_~count~2.offset_28 v_f_~count~2.offset_28_const_-1958914524) + (|v_#memory_int_52| |v_#memory_int_52_const_1545201492|) + (|v_#length_67| |v_#length_67_const_-660983881|) + (|v_#valid_98| |v_#valid_98_const_-1605542381|)) + (and + (<= (+ 4 v_f_~count~2.offset_28) + (select |v_#length_67| v_f_~count~2.base_32)) + (not (= (select |v_#valid_98| v_f_~count~2.base_32) 0)) + (= |v_#memory_int_52| + (store |v_#memory_int_53| v_f_~count~2.base_32 + (store (select |v_#memory_int_53| v_f_~count~2.base_32) + v_f_~count~2.offset_28 + (+ + (select (select |v_#memory_int_53| v_f_~count~2.base_32) + v_f_~count~2.offset_28) 1))))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#memory_int_55_const_1545201489| () + (Array Int (Array Int Int))) +(declare-fun v_f_~count~2.base_33_const_-1664385400 () Int) +(declare-fun v_f_~count~2.offset_29_const_-1958914525 () Int) +(declare-fun |v_#memory_int_54_const_1545201494| () + (Array Int (Array Int Int))) +(declare-fun |v_#length_68_const_-660983882| () (Array Int Int)) +(declare-fun |v_#valid_99_const_-1605542382| () (Array Int Int)) +(assert + (let + ((|v_#memory_int_55| |v_#memory_int_55_const_1545201489|) + (v_f_~count~2.base_33 v_f_~count~2.base_33_const_-1664385400) + (v_f_~count~2.offset_29 v_f_~count~2.offset_29_const_-1958914525) + (|v_#memory_int_54| |v_#memory_int_54_const_1545201494|) + (|v_#length_68| |v_#length_68_const_-660983882|) + (|v_#valid_99| |v_#valid_99_const_-1605542382|)) + (and + (<= (+ 4 v_f_~count~2.offset_29) + (select |v_#length_68| v_f_~count~2.base_33)) + (not (= (select |v_#valid_99| v_f_~count~2.base_33) 0)) + (= |v_#memory_int_54| + (store |v_#memory_int_55| v_f_~count~2.base_33 + (store (select |v_#memory_int_55| v_f_~count~2.base_33) + v_f_~count~2.offset_29 + (+ + (select (select |v_#memory_int_55| v_f_~count~2.base_33) + v_f_~count~2.offset_29) 1))))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#memory_int_56_const_1545201488| () + (Array Int (Array Int Int))) +(declare-fun v_f_~count~2.base_34_const_-1664385401 () Int) +(declare-fun v_f_~count~2.offset_30_const_-1958914611 () Int) +(declare-fun |v_f_#t~mem14_8_const_-556258487| () Int) +(declare-fun |v_#valid_100_const_1772219675| () (Array Int Int)) +(declare-fun |v_f_#t~post15_8_const_1390110663| () Int) +(declare-fun |v_#length_69_const_-660983883| () (Array Int Int)) +(assert + (let + ((|v_#memory_int_56| |v_#memory_int_56_const_1545201488|) + (v_f_~count~2.base_34 v_f_~count~2.base_34_const_-1664385401) + (v_f_~count~2.offset_30 v_f_~count~2.offset_30_const_-1958914611) + (|v_f_#t~mem14_8| |v_f_#t~mem14_8_const_-556258487|) + (|v_#valid_100| |v_#valid_100_const_1772219675|) + (|v_f_#t~post15_8| |v_f_#t~post15_8_const_1390110663|) + (|v_#length_69| |v_#length_69_const_-660983883|)) + (and (not (not (= (select |v_#valid_100| v_f_~count~2.base_34) 0))) + (= |v_f_#t~post15_8| |v_f_#t~mem14_8|) + (<= (+ 4 v_f_~count~2.offset_30) + (select |v_#length_69| v_f_~count~2.base_34)) + (not (= (select |v_#valid_100| v_f_~count~2.base_34) 0)) + (= |v_f_#t~mem14_8| + (select (select |v_#memory_int_56| v_f_~count~2.base_34) + v_f_~count~2.offset_30))))) +(set-info :status unsat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#memory_int_57_const_1545201491| () + (Array Int (Array Int Int))) +(declare-fun v_f_~count~2.base_35_const_-1664385402 () Int) +(declare-fun v_f_~count~2.offset_31_const_-1958914612 () Int) +(declare-fun |v_f_#t~mem14_9_const_-556258488| () Int) +(declare-fun |v_#valid_101_const_1772219674| () (Array Int Int)) +(declare-fun |v_f_#t~post15_9_const_1390110662| () Int) +(declare-fun |v_#length_70_const_-660983889| () (Array Int Int)) +(assert + (let + ((|v_#memory_int_57| |v_#memory_int_57_const_1545201491|) + (v_f_~count~2.base_35 v_f_~count~2.base_35_const_-1664385402) + (v_f_~count~2.offset_31 v_f_~count~2.offset_31_const_-1958914612) + (|v_f_#t~mem14_9| |v_f_#t~mem14_9_const_-556258488|) + (|v_#valid_101| |v_#valid_101_const_1772219674|) + (|v_f_#t~post15_9| |v_f_#t~post15_9_const_1390110662|) + (|v_#length_70| |v_#length_70_const_-660983889|)) + (and (not (not (= (select |v_#valid_101| v_f_~count~2.base_35) 0))) + (= |v_f_#t~post15_9| |v_f_#t~mem14_9|) + (<= (+ 4 v_f_~count~2.offset_31) + (select |v_#length_70| v_f_~count~2.base_35)) + (not (= (select |v_#valid_101| v_f_~count~2.base_35) 0)) + (= |v_f_#t~mem14_9| + (select (select |v_#memory_int_57| v_f_~count~2.base_35) + v_f_~count~2.offset_31))))) +(set-info :status unsat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#memory_int_58_const_1545201490| () + (Array Int (Array Int Int))) +(declare-fun v_f_~count~2.base_36_const_-1664385403 () Int) +(declare-fun v_f_~count~2.offset_32_const_-1958914613 () Int) +(declare-fun |v_f_#t~mem14_10_const_-62110626| () Int) +(declare-fun |v_#length_71_const_-660983890| () (Array Int Int)) +(declare-fun |v_f_#t~post15_10_const_141924224| () Int) +(declare-fun |v_#valid_102_const_1772219673| () (Array Int Int)) +(assert + (let + ((|v_#memory_int_58| |v_#memory_int_58_const_1545201490|) + (v_f_~count~2.base_36 v_f_~count~2.base_36_const_-1664385403) + (v_f_~count~2.offset_32 v_f_~count~2.offset_32_const_-1958914613) + (|v_f_#t~mem14_10| |v_f_#t~mem14_10_const_-62110626|) + (|v_#length_71| |v_#length_71_const_-660983890|) + (|v_f_#t~post15_10| |v_f_#t~post15_10_const_141924224|) + (|v_#valid_102| |v_#valid_102_const_1772219673|)) + (and + (not + (<= (+ 4 v_f_~count~2.offset_32) + (select |v_#length_71| v_f_~count~2.base_36))) + (= |v_f_#t~post15_10| |v_f_#t~mem14_10|) + (<= (+ 4 v_f_~count~2.offset_32) + (select |v_#length_71| v_f_~count~2.base_36)) + (not (= (select |v_#valid_102| v_f_~count~2.base_36) 0)) + (= |v_f_#t~mem14_10| + (select (select |v_#memory_int_58| v_f_~count~2.base_36) + v_f_~count~2.offset_32))))) +(set-info :status unsat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#memory_int_59_const_1545201501| () + (Array Int (Array Int Int))) +(declare-fun v_f_~count~2.base_37_const_-1664385404 () Int) +(declare-fun v_f_~count~2.offset_33_const_-1958914614 () Int) +(declare-fun |v_f_#t~mem14_11_const_-62110627| () Int) +(declare-fun |v_#length_72_const_-660983891| () (Array Int Int)) +(declare-fun |v_f_#t~post15_11_const_141924255| () Int) +(declare-fun |v_#valid_103_const_1772219672| () (Array Int Int)) +(assert + (let + ((|v_#memory_int_59| |v_#memory_int_59_const_1545201501|) + (v_f_~count~2.base_37 v_f_~count~2.base_37_const_-1664385404) + (v_f_~count~2.offset_33 v_f_~count~2.offset_33_const_-1958914614) + (|v_f_#t~mem14_11| |v_f_#t~mem14_11_const_-62110627|) + (|v_#length_72| |v_#length_72_const_-660983891|) + (|v_f_#t~post15_11| |v_f_#t~post15_11_const_141924255|) + (|v_#valid_103| |v_#valid_103_const_1772219672|)) + (and + (not + (<= (+ 4 v_f_~count~2.offset_33) + (select |v_#length_72| v_f_~count~2.base_37))) + (= |v_f_#t~post15_11| |v_f_#t~mem14_11|) + (<= (+ 4 v_f_~count~2.offset_33) + (select |v_#length_72| v_f_~count~2.base_37)) + (not (= (select |v_#valid_103| v_f_~count~2.base_37) 0)) + (= |v_f_#t~mem14_11| + (select (select |v_#memory_int_59| v_f_~count~2.base_37) + v_f_~count~2.offset_33))))) +(set-info :status unsat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_f_#t~mem9_11_const_-555979617| () Int) +(assert + (let ((|v_f_#t~mem9_11| |v_f_#t~mem9_11_const_-555979617|)) + (= |v_f_#t~mem9_11| 0))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_f_#t~mem9_13_const_-555979619| () Int) +(assert + (let ((|v_f_#t~mem9_13| |v_f_#t~mem9_13_const_-555979619|)) + (= |v_f_#t~mem9_13| 0))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#memory_int_61_const_1545201514| () + (Array Int (Array Int Int))) +(declare-fun v_f_~a_ref~2.base_27_const_-1779673187 () Int) +(declare-fun v_f_~a_ref~2.offset_20_const_-952049594 () Int) +(declare-fun |v_f_#t~mem10_5_const_-556254544| () Int) +(declare-fun |v_#memory_int_60_const_1545201515| () + (Array Int (Array Int Int))) +(declare-fun |v_#length_73_const_-660983892| () (Array Int Int)) +(declare-fun |v_#valid_104_const_1772219671| () (Array Int Int)) +(assert + (let + ((|v_#memory_int_61| |v_#memory_int_61_const_1545201514|) + (v_f_~a_ref~2.base_27 v_f_~a_ref~2.base_27_const_-1779673187) + (v_f_~a_ref~2.offset_20 v_f_~a_ref~2.offset_20_const_-952049594) + (|v_f_#t~mem10_5| |v_f_#t~mem10_5_const_-556254544|) + (|v_#memory_int_60| |v_#memory_int_60_const_1545201515|) + (|v_#length_73| |v_#length_73_const_-660983892|) + (|v_#valid_104| |v_#valid_104_const_1772219671|)) + (and + (<= (+ 4 v_f_~a_ref~2.offset_20) + (select |v_#length_73| v_f_~a_ref~2.base_27)) + (not (= (select |v_#valid_104| v_f_~a_ref~2.base_27) 0)) + (= |v_#memory_int_60| + (store |v_#memory_int_61| v_f_~a_ref~2.base_27 + (store (select |v_#memory_int_61| v_f_~a_ref~2.base_27) + v_f_~a_ref~2.offset_20 + (ite (< |v_f_#t~mem10_5| 0) + (+ (div |v_f_#t~mem10_5| 2) 1) + (div |v_f_#t~mem10_5| 2)))))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#memory_int_63_const_1545201524| () + (Array Int (Array Int Int))) +(declare-fun v_f_~a_ref~2.base_28_const_-1779673188 () Int) +(declare-fun v_f_~a_ref~2.offset_21_const_-952049595 () Int) +(declare-fun |v_f_#t~mem10_7_const_-556254642| () Int) +(declare-fun |v_#memory_int_62_const_1545201525| () + (Array Int (Array Int Int))) +(declare-fun |v_#length_74_const_-660983893| () (Array Int Int)) +(declare-fun |v_#valid_105_const_1772219670| () (Array Int Int)) +(assert + (let + ((|v_#memory_int_63| |v_#memory_int_63_const_1545201524|) + (v_f_~a_ref~2.base_28 v_f_~a_ref~2.base_28_const_-1779673188) + (v_f_~a_ref~2.offset_21 v_f_~a_ref~2.offset_21_const_-952049595) + (|v_f_#t~mem10_7| |v_f_#t~mem10_7_const_-556254642|) + (|v_#memory_int_62| |v_#memory_int_62_const_1545201525|) + (|v_#length_74| |v_#length_74_const_-660983893|) + (|v_#valid_105| |v_#valid_105_const_1772219670|)) + (and + (<= (+ 4 v_f_~a_ref~2.offset_21) + (select |v_#length_74| v_f_~a_ref~2.base_28)) + (not (= (select |v_#valid_105| v_f_~a_ref~2.base_28) 0)) + (= |v_#memory_int_62| + (store |v_#memory_int_63| v_f_~a_ref~2.base_28 + (store (select |v_#memory_int_63| v_f_~a_ref~2.base_28) + v_f_~a_ref~2.offset_21 + (ite (< |v_f_#t~mem10_7| 0) + (+ (div |v_f_#t~mem10_7| 2) 1) + (div |v_f_#t~mem10_7| 2)))))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_f_#t~mem6_11_const_-555939332| () Int) +(assert + (let ((|v_f_#t~mem6_11| |v_f_#t~mem6_11_const_-555939332|)) + (not (> |v_f_#t~mem6_11| 1)))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_f_#t~mem6_13_const_-555939334| () Int) +(assert + (let ((|v_f_#t~mem6_13| |v_f_#t~mem6_13_const_-555939334|)) + (not (> |v_f_#t~mem6_13| 1)))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#valid_106_const_1772219669| () (Array Int Int)) +(declare-fun |v_#valid_107_const_1772219668| () (Array Int Int)) +(declare-fun |v_#NULL.base_4_const_797218428| () Int) +(declare-fun |v_#NULL.offset_4_const_-1647097734| () Int) +(assert + (let + ((|v_#valid_106| |v_#valid_106_const_1772219669|) + (|v_#valid_107| |v_#valid_107_const_1772219668|) + (|v_#NULL.base_4| |v_#NULL.base_4_const_797218428|) + (|v_#NULL.offset_4| |v_#NULL.offset_4_const_-1647097734|)) + (and (= |v_#NULL.base_4| 0) + (= |v_#NULL.offset_4| 0) + (= |v_#valid_106| (store |v_#valid_107| 0 0))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#valid_108_const_1772219667| () (Array Int Int)) +(declare-fun |v_#valid_109_const_1772219666| () (Array Int Int)) +(declare-fun |v_#NULL.base_5_const_797218427| () Int) +(declare-fun |v_#NULL.offset_5_const_-1647097735| () Int) +(assert + (let + ((|v_#valid_108| |v_#valid_108_const_1772219667|) + (|v_#valid_109| |v_#valid_109_const_1772219666|) + (|v_#NULL.base_5| |v_#NULL.base_5_const_797218427|) + (|v_#NULL.offset_5| |v_#NULL.offset_5_const_-1647097735|)) + (and (= |v_#NULL.base_5| 0) + (= |v_#NULL.offset_5| 0) + (= |v_#valid_108| (store |v_#valid_109| 0 0))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#valid_110_const_1772219708| () (Array Int Int)) +(declare-fun |v_#valid_111_const_1772219707| () (Array Int Int)) +(declare-fun |v_#NULL.base_6_const_797218426| () Int) +(declare-fun |v_#NULL.offset_6_const_-1647097736| () Int) +(assert + (let + ((|v_#valid_110| |v_#valid_110_const_1772219708|) + (|v_#valid_111| |v_#valid_111_const_1772219707|) + (|v_#NULL.base_6| |v_#NULL.base_6_const_797218426|) + (|v_#NULL.offset_6| |v_#NULL.offset_6_const_-1647097736|)) + (and (= |v_#NULL.base_6| 0) + (= |v_#NULL.offset_6| 0) + (= |v_#valid_110| (store |v_#valid_111| 0 0))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#valid_112_const_1772219706| () (Array Int Int)) +(declare-fun |v_#valid_113_const_1772219705| () (Array Int Int)) +(declare-fun |v_#NULL.base_7_const_797218425| () Int) +(declare-fun |v_#NULL.offset_7_const_-1647097737| () Int) +(declare-fun |v_old(#NULL.offset)_1_const_-668332331| () Int) +(declare-fun |v_#NULL.offset_8_const_-1647097738| () Int) +(declare-fun |v_old(#valid)_1_const_-1297638473| () (Array Int Int)) +(declare-fun |v_old(#NULL.base)_1_const_-890049197| () Int) +(declare-fun |v_#NULL.base_8_const_797218424| () Int) +(assert + (let + ((|v_#valid_112| |v_#valid_112_const_1772219706|) + (|v_#valid_113| |v_#valid_113_const_1772219705|) + (|v_#NULL.base_7| |v_#NULL.base_7_const_797218425|) + (|v_#NULL.offset_7| |v_#NULL.offset_7_const_-1647097737|) + (|v_old(#NULL.offset)_1| |v_old(#NULL.offset)_1_const_-668332331|) + (|v_#NULL.offset_8| |v_#NULL.offset_8_const_-1647097738|) + (|v_old(#valid)_1| |v_old(#valid)_1_const_-1297638473|) + (|v_old(#NULL.base)_1| |v_old(#NULL.base)_1_const_-890049197|) + (|v_#NULL.base_8| |v_#NULL.base_8_const_797218424|)) + (and (= |v_#NULL.base_7| 0) + (= |v_#NULL.offset_7| 0) + (= |v_#valid_112| (store |v_#valid_113| 0 0)) + (= |v_old(#NULL.offset)_1| |v_#NULL.offset_8|) + (= |v_old(#valid)_1| |v_#valid_113|) + (= |v_old(#NULL.base)_1| |v_#NULL.base_8|)))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#valid_114_const_1772219704| () (Array Int Int)) +(declare-fun |v_#valid_115_const_1772219703| () (Array Int Int)) +(declare-fun |v_#NULL.base_9_const_797218423| () Int) +(declare-fun |v_#NULL.offset_9_const_-1647097739| () Int) +(assert + (let + ((|v_#valid_114| |v_#valid_114_const_1772219704|) + (|v_#valid_115| |v_#valid_115_const_1772219703|) + (|v_#NULL.base_9| |v_#NULL.base_9_const_797218423|) + (|v_#NULL.offset_9| |v_#NULL.offset_9_const_-1647097739|)) + (and (= |v_#NULL.base_9| 0) + (= |v_#NULL.offset_9| 0) + (= |v_#valid_114| (store |v_#valid_115| 0 0))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#valid_116_const_1772219702| () (Array Int Int)) +(declare-fun |v_#valid_117_const_1772219701| () (Array Int Int)) +(declare-fun |v_#NULL.base_11_const_-1054166194| () Int) +(declare-fun |v_#NULL.offset_11_const_477725040| () Int) +(assert + (let + ((|v_#valid_116| |v_#valid_116_const_1772219702|) + (|v_#valid_117| |v_#valid_117_const_1772219701|) + (|v_#NULL.base_11| |v_#NULL.base_11_const_-1054166194|) + (|v_#NULL.offset_11| |v_#NULL.offset_11_const_477725040|)) + (and (= |v_#NULL.base_11| 0) + (= |v_#NULL.offset_11| 0) + (= |v_#valid_116| (store |v_#valid_117| 0 0))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#valid_118_const_1772219700| () (Array Int Int)) +(declare-fun |v_#valid_119_const_1772219699| () (Array Int Int)) +(declare-fun |v_#NULL.base_12_const_-1054166195| () Int) +(declare-fun |v_#NULL.offset_12_const_477724943| () Int) +(declare-fun |v_old(#NULL.offset)_3_const_-668332333| () Int) +(declare-fun |v_#NULL.offset_13_const_477724942| () Int) +(declare-fun |v_old(#valid)_3_const_-1297638475| () (Array Int Int)) +(declare-fun |v_old(#NULL.base)_3_const_-890049199| () Int) +(declare-fun |v_#NULL.base_13_const_-1054166196| () Int) +(assert + (let + ((|v_#valid_118| |v_#valid_118_const_1772219700|) + (|v_#valid_119| |v_#valid_119_const_1772219699|) + (|v_#NULL.base_12| |v_#NULL.base_12_const_-1054166195|) + (|v_#NULL.offset_12| |v_#NULL.offset_12_const_477724943|) + (|v_old(#NULL.offset)_3| |v_old(#NULL.offset)_3_const_-668332333|) + (|v_#NULL.offset_13| |v_#NULL.offset_13_const_477724942|) + (|v_old(#valid)_3| |v_old(#valid)_3_const_-1297638475|) + (|v_old(#NULL.base)_3| |v_old(#NULL.base)_3_const_-890049199|) + (|v_#NULL.base_13| |v_#NULL.base_13_const_-1054166196|)) + (and (= |v_#NULL.base_12| 0) + (= |v_#NULL.offset_12| 0) + (= |v_#valid_118| (store |v_#valid_119| 0 0)) + (= |v_old(#NULL.offset)_3| |v_#NULL.offset_13|) + (= |v_old(#valid)_3| |v_#valid_119|) + (= |v_old(#NULL.base)_3| |v_#NULL.base_13|)))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#valid_120_const_1772220125| () (Array Int Int)) +(declare-fun |v_#valid_121_const_1772220124| () (Array Int Int)) +(declare-fun |v_#NULL.base_14_const_-1054166197| () Int) +(declare-fun |v_#NULL.offset_14_const_477724941| () Int) +(assert + (let + ((|v_#valid_120| |v_#valid_120_const_1772220125|) + (|v_#valid_121| |v_#valid_121_const_1772220124|) + (|v_#NULL.base_14| |v_#NULL.base_14_const_-1054166197|) + (|v_#NULL.offset_14| |v_#NULL.offset_14_const_477724941|)) + (and (= |v_#NULL.base_14| 0) + (= |v_#NULL.offset_14| 0) + (= |v_#valid_120| (store |v_#valid_121| 0 0))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun v_main_~count~4_2_const_-1432400072 () Int) +(declare-fun |v_main_#t~ret18_6_const_353355232| () Int) +(declare-fun |v_main_#res_2_const_385270466| () Int) +(assert + (let + ((v_main_~count~4_2 v_main_~count~4_2_const_-1432400072) + (|v_main_#t~ret18_6| |v_main_#t~ret18_6_const_353355232|) + (|v_main_#res_2| |v_main_#res_2_const_385270466|)) + (and (= v_main_~count~4_2 |v_main_#t~ret18_6|) + (= |v_main_#res_2| v_main_~count~4_2)))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun v_main_~count~4_3_const_-1432400073 () Int) +(declare-fun |v_main_#t~ret18_8_const_353355262| () Int) +(declare-fun |v_main_#res_3_const_385270465| () Int) +(assert + (let + ((v_main_~count~4_3 v_main_~count~4_3_const_-1432400073) + (|v_main_#t~ret18_8| |v_main_#t~ret18_8_const_353355262|) + (|v_main_#res_3| |v_main_#res_3_const_385270465|)) + (and (= v_main_~count~4_3 |v_main_#t~ret18_8|) + (= |v_main_#res_3| v_main_~count~4_3)))) +(set-info :status sat) +(check-sat) +(pop 1) +(declare-fun c_unseeded () Bool) +(declare-fun c_oldRank0 () Int) +(push 1) +(declare-fun |#length_-1| () (Array Int Int)) +(declare-fun |#valid_-1| () (Array Int Int)) +(declare-fun |#memory_int_-1| () (Array Int (Array Int Int))) +(declare-fun |#NULL.offset_0| () Int) +(declare-fun |#valid_0| () (Array Int Int)) +(declare-fun |#NULL.base_0| () Int) +(declare-fun |old(#length)_1| () (Array Int Int)) +(declare-fun |old(#valid)_1| () (Array Int Int)) +(declare-fun |old(#memory_int)_1| () (Array Int (Array Int Int))) +(declare-fun |#length_1| () (Array Int Int)) +(declare-fun |#valid_1| () (Array Int Int)) +(declare-fun |#memory_int_1| () (Array Int (Array Int Int))) +(declare-fun |main_#t~nondet17_1| () Int) +(declare-fun main_~x~4_2 () Int) +(declare-fun |old(#length)_3| () (Array Int Int)) +(declare-fun |old(#valid)_3| () (Array Int Int)) +(declare-fun |old(#memory_int)_3| () (Array Int (Array Int Int))) +(declare-fun |#length_3| () (Array Int Int)) +(declare-fun |#valid_3| () (Array Int Int)) +(declare-fun |#memory_int_3| () (Array Int (Array Int Int))) +(declare-fun |f_#in~a_3| () Int) +(declare-fun f_~tmp~2.base_4 () Int) +(declare-fun f_~count~2.base_4 () Int) +(declare-fun f_~a_ref~2.base_4 () Int) +(declare-fun |#length_4| () (Array Int Int)) +(declare-fun f_~count~2.offset_4 () Int) +(declare-fun |#valid_4| () (Array Int Int)) +(declare-fun f_~a_4 () Int) +(declare-fun f_~tmp~2.offset_4 () Int) +(declare-fun f_~a_ref~2.offset_4 () Int) +(declare-fun |#memory_int_5| () (Array Int (Array Int Int))) +(declare-fun |#memory_int_6| () (Array Int (Array Int Int))) +(declare-fun |#memory_int_7| () (Array Int (Array Int Int))) +(assert true) +(assert (not false)) +(assert + (and (= |#NULL.base_0| 0) + (= |#NULL.offset_0| 0) (= |#valid_0| (store |#valid_-1| 0 0)))) +(assert + (and (= |#valid_1| |old(#valid)_1|) + (= |#length_1| |old(#length)_1|) + (= |#memory_int_1| |old(#memory_int)_1|))) +(assert true) +(assert + (and (= |old(#valid)_1| |#valid_0|) + (= |old(#length)_1| |#length_-1|) + (= |old(#memory_int)_1| |#memory_int_-1|))) +(assert (= main_~x~4_2 |main_#t~nondet17_1|)) +(assert + (and (= |#valid_3| |old(#valid)_3|) + (= |#length_3| |old(#length)_3|) + (= |#memory_int_3| |old(#memory_int)_3|))) +(assert (= |f_#in~a_3| main_~x~4_2)) +(assert + (and (= |old(#valid)_3| |#valid_1|) + (= |old(#length)_3| |#length_1|) + (= |old(#memory_int)_3| |#memory_int_1|))) +(assert + (and + (= |#length_4| + (store (store (store |#length_3| f_~a_ref~2.base_4 4) f_~tmp~2.base_4 4) + f_~count~2.base_4 4)) (distinct f_~count~2.base_4 0) + (= f_~count~2.offset_4 0) + (= |#valid_4| + (store (store (store |#valid_3| f_~a_ref~2.base_4 1) f_~tmp~2.base_4 1) + f_~count~2.base_4 1)) + (= + (not + (= + (select (store (store |#valid_3| f_~a_ref~2.base_4 1) f_~tmp~2.base_4 1) + f_~count~2.base_4) 0)) false) + (distinct f_~tmp~2.base_4 0) + (= f_~tmp~2.offset_4 0) + (= + (not (= (select (store |#valid_3| f_~a_ref~2.base_4 1) f_~tmp~2.base_4) 0)) + false) (distinct f_~a_ref~2.base_4 0) + (= f_~a_ref~2.offset_4 0) + (= (not (= (select |#valid_3| f_~a_ref~2.base_4) 0)) false) + (= f_~a_4 |f_#in~a_3|))) +(assert + (and (<= (+ 4 f_~a_ref~2.offset_4) (select |#length_4| f_~a_ref~2.base_4)) + (not (= (select |#valid_4| f_~a_ref~2.base_4) 0)) + (= |#memory_int_5| + (store |#memory_int_3| f_~a_ref~2.base_4 + (store (select |#memory_int_3| f_~a_ref~2.base_4) f_~a_ref~2.offset_4 + f_~a_4))))) +(assert + (and (<= (+ 4 f_~tmp~2.offset_4) (select |#length_4| f_~tmp~2.base_4)) + (not (= (select |#valid_4| f_~tmp~2.base_4) 0)) + (= |#memory_int_6| + (store |#memory_int_5| f_~tmp~2.base_4 + (store (select |#memory_int_5| f_~tmp~2.base_4) f_~tmp~2.offset_4 0))))) +(assert + (and (<= (+ 4 f_~count~2.offset_4) (select |#length_4| f_~count~2.base_4)) + (not (= (select |#valid_4| f_~count~2.base_4) 0)) + (= |#memory_int_7| + (store |#memory_int_6| f_~count~2.base_4 + (store (select |#memory_int_6| f_~count~2.base_4) f_~count~2.offset_4 0))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |#length_-1| () (Array Int Int)) +(declare-fun |#valid_-1| () (Array Int Int)) +(declare-fun |#memory_int_-1| () (Array Int (Array Int Int))) +(declare-fun f_~a_ref~2.offset_-1 () Int) +(declare-fun f_~a_ref~2.base_-1 () Int) +(declare-fun |f_#t~mem6_1| () Int) +(declare-fun |f_#t~mem7_3| () Int) +(declare-fun f_~tmp~2.base_-1 () Int) +(declare-fun f_~tmp~2.offset_-1 () Int) +(declare-fun |#memory_int_4| () (Array Int (Array Int Int))) +(declare-fun |f_#t~mem9_5| () Int) +(declare-fun |f_#t~mem10_7| () Int) +(declare-fun |#memory_int_8| () (Array Int (Array Int Int))) +(declare-fun f_~count~2.offset_-1 () Int) +(declare-fun f_~count~2.base_-1 () Int) +(declare-fun |#memory_int_9| () (Array Int (Array Int Int))) +(assert true) +(assert (not false)) +(assert true) +(assert + (and + (<= (+ 4 f_~a_ref~2.offset_-1) (select |#length_-1| f_~a_ref~2.base_-1)) + (not (= (select |#valid_-1| f_~a_ref~2.base_-1) 0)) + (= |f_#t~mem6_1| + (select (select |#memory_int_-1| f_~a_ref~2.base_-1) f_~a_ref~2.offset_-1)))) +(assert (> |f_#t~mem6_1| 1)) +(assert + (and + (<= (+ 4 f_~a_ref~2.offset_-1) (select |#length_-1| f_~a_ref~2.base_-1)) + (not (= (select |#valid_-1| f_~a_ref~2.base_-1) 0)) + (= |f_#t~mem7_3| + (select (select |#memory_int_-1| f_~a_ref~2.base_-1) f_~a_ref~2.offset_-1)))) +(assert + (and (<= (+ 4 f_~tmp~2.offset_-1) (select |#length_-1| f_~tmp~2.base_-1)) + (not (= (select |#valid_-1| f_~tmp~2.base_-1) 0)) + (= |#memory_int_4| + (store |#memory_int_-1| f_~tmp~2.base_-1 + (store (select |#memory_int_-1| f_~tmp~2.base_-1) f_~tmp~2.offset_-1 + (ite (< |f_#t~mem7_3| 0) (- (mod |f_#t~mem7_3| 2) 2) (mod |f_#t~mem7_3| 2))))))) +(assert + (and (<= (+ 4 f_~tmp~2.offset_-1) (select |#length_-1| f_~tmp~2.base_-1)) + (not (= (select |#valid_-1| f_~tmp~2.base_-1) 0)) + (= |f_#t~mem9_5| + (select (select |#memory_int_4| f_~tmp~2.base_-1) f_~tmp~2.offset_-1)))) +(assert (= |f_#t~mem9_5| 0)) +(assert + (and + (<= (+ 4 f_~a_ref~2.offset_-1) (select |#length_-1| f_~a_ref~2.base_-1)) + (not (= (select |#valid_-1| f_~a_ref~2.base_-1) 0)) + (= |f_#t~mem10_7| + (select (select |#memory_int_4| f_~a_ref~2.base_-1) f_~a_ref~2.offset_-1)))) +(assert + (and + (<= (+ 4 f_~a_ref~2.offset_-1) (select |#length_-1| f_~a_ref~2.base_-1)) + (not (= (select |#valid_-1| f_~a_ref~2.base_-1) 0)) + (= |#memory_int_8| + (store |#memory_int_4| f_~a_ref~2.base_-1 + (store (select |#memory_int_4| f_~a_ref~2.base_-1) f_~a_ref~2.offset_-1 + (ite (< |f_#t~mem10_7| 0) + (+ (div |f_#t~mem10_7| 2) 1) + (div |f_#t~mem10_7| 2))))))) +(assert + (and + (<= (+ 4 f_~count~2.offset_-1) (select |#length_-1| f_~count~2.base_-1)) + (not (= (select |#valid_-1| f_~count~2.base_-1) 0)) + (= |#memory_int_9| + (store |#memory_int_8| f_~count~2.base_-1 + (store (select |#memory_int_8| f_~count~2.base_-1) f_~count~2.offset_-1 + (+ (select (select |#memory_int_8| f_~count~2.base_-1) f_~count~2.offset_-1) + 1)))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |#length_-1| () (Array Int Int)) +(declare-fun |#valid_-1| () (Array Int Int)) +(declare-fun |#memory_int_-1| () (Array Int (Array Int Int))) +(declare-fun |#NULL.offset_0| () Int) +(declare-fun |#valid_0| () (Array Int Int)) +(declare-fun |#NULL.base_0| () Int) +(declare-fun |old(#length)_1| () (Array Int Int)) +(declare-fun |old(#valid)_1| () (Array Int Int)) +(declare-fun |old(#memory_int)_1| () (Array Int (Array Int Int))) +(declare-fun |#length_1| () (Array Int Int)) +(declare-fun |#valid_1| () (Array Int Int)) +(declare-fun |#memory_int_1| () (Array Int (Array Int Int))) +(declare-fun |main_#t~nondet17_1| () Int) +(declare-fun main_~x~4_2 () Int) +(declare-fun |old(#length)_3| () (Array Int Int)) +(declare-fun |old(#valid)_3| () (Array Int Int)) +(declare-fun |old(#memory_int)_3| () (Array Int (Array Int Int))) +(declare-fun |#length_3| () (Array Int Int)) +(declare-fun |#valid_3| () (Array Int Int)) +(declare-fun |#memory_int_3| () (Array Int (Array Int Int))) +(declare-fun |f_#in~a_3| () Int) +(declare-fun f_~tmp~2.base_4 () Int) +(declare-fun f_~count~2.base_4 () Int) +(declare-fun f_~a_ref~2.base_4 () Int) +(declare-fun |#length_4| () (Array Int Int)) +(declare-fun f_~count~2.offset_4 () Int) +(declare-fun |#valid_4| () (Array Int Int)) +(declare-fun f_~a_4 () Int) +(declare-fun f_~tmp~2.offset_4 () Int) +(declare-fun f_~a_ref~2.offset_4 () Int) +(declare-fun |#memory_int_5| () (Array Int (Array Int Int))) +(declare-fun |#memory_int_6| () (Array Int (Array Int Int))) +(declare-fun |#memory_int_7| () (Array Int (Array Int Int))) +(declare-fun |f_#t~mem6_9| () Int) +(declare-fun |f_#t~mem7_11| () Int) +(declare-fun |#memory_int_12| () (Array Int (Array Int Int))) +(declare-fun |f_#t~mem9_13| () Int) +(declare-fun |f_#t~mem10_15| () Int) +(declare-fun |#memory_int_16| () (Array Int (Array Int Int))) +(declare-fun |#memory_int_17| () (Array Int (Array Int Int))) +(assert true) +(assert (not false)) +(assert + (and (= |#NULL.base_0| 0) + (= |#NULL.offset_0| 0) (= |#valid_0| (store |#valid_-1| 0 0)))) +(assert + (and (= |#valid_1| |old(#valid)_1|) + (= |#length_1| |old(#length)_1|) + (= |#memory_int_1| |old(#memory_int)_1|))) +(assert true) +(assert + (and (= |old(#valid)_1| |#valid_0|) + (= |old(#length)_1| |#length_-1|) + (= |old(#memory_int)_1| |#memory_int_-1|))) +(assert (= main_~x~4_2 |main_#t~nondet17_1|)) +(assert + (and (= |#valid_3| |old(#valid)_3|) + (= |#length_3| |old(#length)_3|) + (= |#memory_int_3| |old(#memory_int)_3|))) +(assert (= |f_#in~a_3| main_~x~4_2)) +(assert + (and (= |old(#valid)_3| |#valid_1|) + (= |old(#length)_3| |#length_1|) + (= |old(#memory_int)_3| |#memory_int_1|))) +(assert + (and + (= |#length_4| + (store (store (store |#length_3| f_~a_ref~2.base_4 4) f_~tmp~2.base_4 4) + f_~count~2.base_4 4)) (distinct f_~count~2.base_4 0) + (= f_~count~2.offset_4 0) + (= |#valid_4| + (store (store (store |#valid_3| f_~a_ref~2.base_4 1) f_~tmp~2.base_4 1) + f_~count~2.base_4 1)) + (= + (not + (= + (select (store (store |#valid_3| f_~a_ref~2.base_4 1) f_~tmp~2.base_4 1) + f_~count~2.base_4) 0)) false) + (distinct f_~tmp~2.base_4 0) + (= f_~tmp~2.offset_4 0) + (= + (not (= (select (store |#valid_3| f_~a_ref~2.base_4 1) f_~tmp~2.base_4) 0)) + false) (distinct f_~a_ref~2.base_4 0) + (= f_~a_ref~2.offset_4 0) + (= (not (= (select |#valid_3| f_~a_ref~2.base_4) 0)) false) + (= f_~a_4 |f_#in~a_3|))) +(assert + (and (<= (+ 4 f_~a_ref~2.offset_4) (select |#length_4| f_~a_ref~2.base_4)) + (not (= (select |#valid_4| f_~a_ref~2.base_4) 0)) + (= |#memory_int_5| + (store |#memory_int_3| f_~a_ref~2.base_4 + (store (select |#memory_int_3| f_~a_ref~2.base_4) f_~a_ref~2.offset_4 + f_~a_4))))) +(assert + (and (<= (+ 4 f_~tmp~2.offset_4) (select |#length_4| f_~tmp~2.base_4)) + (not (= (select |#valid_4| f_~tmp~2.base_4) 0)) + (= |#memory_int_6| + (store |#memory_int_5| f_~tmp~2.base_4 + (store (select |#memory_int_5| f_~tmp~2.base_4) f_~tmp~2.offset_4 0))))) +(assert + (and (<= (+ 4 f_~count~2.offset_4) (select |#length_4| f_~count~2.base_4)) + (not (= (select |#valid_4| f_~count~2.base_4) 0)) + (= |#memory_int_7| + (store |#memory_int_6| f_~count~2.base_4 + (store (select |#memory_int_6| f_~count~2.base_4) f_~count~2.offset_4 0))))) +(assert true) +(assert + (and (<= (+ 4 f_~a_ref~2.offset_4) (select |#length_4| f_~a_ref~2.base_4)) + (not (= (select |#valid_4| f_~a_ref~2.base_4) 0)) + (= |f_#t~mem6_9| + (select (select |#memory_int_7| f_~a_ref~2.base_4) f_~a_ref~2.offset_4)))) +(assert (> |f_#t~mem6_9| 1)) +(assert + (and (<= (+ 4 f_~a_ref~2.offset_4) (select |#length_4| f_~a_ref~2.base_4)) + (not (= (select |#valid_4| f_~a_ref~2.base_4) 0)) + (= |f_#t~mem7_11| + (select (select |#memory_int_7| f_~a_ref~2.base_4) f_~a_ref~2.offset_4)))) +(assert + (and (<= (+ 4 f_~tmp~2.offset_4) (select |#length_4| f_~tmp~2.base_4)) + (not (= (select |#valid_4| f_~tmp~2.base_4) 0)) + (= |#memory_int_12| + (store |#memory_int_7| f_~tmp~2.base_4 + (store (select |#memory_int_7| f_~tmp~2.base_4) f_~tmp~2.offset_4 + (ite (< |f_#t~mem7_11| 0) + (- (mod |f_#t~mem7_11| 2) 2) + (mod |f_#t~mem7_11| 2))))))) +(assert + (and (<= (+ 4 f_~tmp~2.offset_4) (select |#length_4| f_~tmp~2.base_4)) + (not (= (select |#valid_4| f_~tmp~2.base_4) 0)) + (= |f_#t~mem9_13| + (select (select |#memory_int_12| f_~tmp~2.base_4) f_~tmp~2.offset_4)))) +(assert (= |f_#t~mem9_13| 0)) +(assert + (and (<= (+ 4 f_~a_ref~2.offset_4) (select |#length_4| f_~a_ref~2.base_4)) + (not (= (select |#valid_4| f_~a_ref~2.base_4) 0)) + (= |f_#t~mem10_15| + (select (select |#memory_int_12| f_~a_ref~2.base_4) f_~a_ref~2.offset_4)))) +(assert + (and (<= (+ 4 f_~a_ref~2.offset_4) (select |#length_4| f_~a_ref~2.base_4)) + (not (= (select |#valid_4| f_~a_ref~2.base_4) 0)) + (= |#memory_int_16| + (store |#memory_int_12| f_~a_ref~2.base_4 + (store (select |#memory_int_12| f_~a_ref~2.base_4) f_~a_ref~2.offset_4 + (ite (< |f_#t~mem10_15| 0) + (+ (div |f_#t~mem10_15| 2) 1) + (div |f_#t~mem10_15| 2))))))) +(assert + (and (<= (+ 4 f_~count~2.offset_4) (select |#length_4| f_~count~2.base_4)) + (not (= (select |#valid_4| f_~count~2.base_4) 0)) + (= |#memory_int_17| + (store |#memory_int_16| f_~count~2.base_4 + (store (select |#memory_int_16| f_~count~2.base_4) f_~count~2.offset_4 + (+ (select (select |#memory_int_16| f_~count~2.base_4) f_~count~2.offset_4) + 1)))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(declare-fun |v_#memory_int_66_const_1545201521| () + (Array Int (Array Int Int))) +(declare-fun v_f_~a_ref~2.base_29_const_-1779673189 () Int) +(declare-fun v_f_~a_ref~2.offset_22_const_-952049596 () Int) +(declare-fun |v_f_#t~mem10_9_const_-556254644| () Int) +(declare-fun |v_#memory_int_65_const_1545201526| () + (Array Int (Array Int Int))) +(declare-fun |v_#length_75_const_-660983894| () (Array Int Int)) +(declare-fun v_f_~count~2.base_38_const_-1664385405 () Int) +(declare-fun v_f_~count~2.offset_34_const_-1958914615 () Int) +(declare-fun |v_#valid_122_const_1772220123| () (Array Int Int)) +(declare-fun |v_#memory_int_64_const_1545201527| () + (Array Int (Array Int Int))) +(declare-fun |v_f_#t~mem9_15_const_-555979621| () Int) +(declare-fun v_f_~tmp~2.base_15_const_875778012 () Int) +(declare-fun v_f_~tmp~2.offset_12_const_-395998975 () Int) +(declare-fun |v_#memory_int_67_const_1545201520| () + (Array Int (Array Int Int))) +(declare-fun |v_f_#t~mem7_9_const_-433505720| () Int) +(declare-fun |v_f_#t~mem6_15_const_-555939336| () Int) +(push 1) +(assert + (not + (and + (<= (+ 4 v_f_~count~2.offset_34_const_-1958914615) + (select |v_#length_75_const_-660983894| + v_f_~count~2.base_38_const_-1664385405)) + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0)) + (= |v_#memory_int_64_const_1545201527| + (store |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405 + (store + (select |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615 + (+ + (select + (select |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615) 1)))) + (<= (+ 4 v_f_~a_ref~2.offset_22_const_-952049596) + (select |v_#length_75_const_-660983894| + v_f_~a_ref~2.base_29_const_-1779673189)) + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~a_ref~2.base_29_const_-1779673189) 0)) + (= |v_#memory_int_65_const_1545201526| + (store |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (ite (< |v_f_#t~mem10_9_const_-556254644| 0) + (+ (div |v_f_#t~mem10_9_const_-556254644| 2) 1) + (div |v_f_#t~mem10_9_const_-556254644| 2))))) + (= |v_f_#t~mem10_9_const_-556254644| + (select + (select |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)) + (= |v_f_#t~mem9_15_const_-555979621| 0) + (<= (+ 4 v_f_~tmp~2.offset_12_const_-395998975) + (select |v_#length_75_const_-660983894| v_f_~tmp~2.base_15_const_875778012)) + (not + (= + (select |v_#valid_122_const_1772220123| v_f_~tmp~2.base_15_const_875778012) + 0)) + (= |v_f_#t~mem9_15_const_-555979621| + (select + (select |v_#memory_int_66_const_1545201521| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975)) + (= |v_#memory_int_66_const_1545201521| + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (ite (< |v_f_#t~mem7_9_const_-433505720| 0) + (- (mod |v_f_#t~mem7_9_const_-433505720| 2) 2) + (mod |v_f_#t~mem7_9_const_-433505720| 2))))) + (= |v_f_#t~mem7_9_const_-433505720| + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)) + (> |v_f_#t~mem6_15_const_-555939336| 1) + (= |v_f_#t~mem6_15_const_-555939336| + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(assert + (and + (<= (+ 4 v_f_~count~2.offset_34_const_-1958914615) + (select |v_#length_75_const_-660983894| + v_f_~count~2.base_38_const_-1664385405)) + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0)) + (= |v_#memory_int_64_const_1545201527| + (store |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405 + (store + (select |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615 + (+ + (select + (select |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615) 1)))) + (<= (+ 4 v_f_~a_ref~2.offset_22_const_-952049596) + (select |v_#length_75_const_-660983894| + v_f_~a_ref~2.base_29_const_-1779673189)) + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~a_ref~2.base_29_const_-1779673189) 0)) + (= |v_#memory_int_65_const_1545201526| + (store |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (ite (< |v_f_#t~mem10_9_const_-556254644| 0) + (+ (div |v_f_#t~mem10_9_const_-556254644| 2) 1) + (div |v_f_#t~mem10_9_const_-556254644| 2))))) + (= |v_f_#t~mem10_9_const_-556254644| + (select + (select |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)) + (= |v_f_#t~mem9_15_const_-555979621| 0) + (<= (+ 4 v_f_~tmp~2.offset_12_const_-395998975) + (select |v_#length_75_const_-660983894| v_f_~tmp~2.base_15_const_875778012)) + (not + (= + (select |v_#valid_122_const_1772220123| v_f_~tmp~2.base_15_const_875778012) + 0)) + (= |v_f_#t~mem9_15_const_-555979621| + (select + (select |v_#memory_int_66_const_1545201521| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975)) + (= |v_#memory_int_66_const_1545201521| + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (ite (< |v_f_#t~mem7_9_const_-433505720| 0) + (- (mod |v_f_#t~mem7_9_const_-433505720| 2) 2) + (mod |v_f_#t~mem7_9_const_-433505720| 2))))) + (= |v_f_#t~mem7_9_const_-433505720| + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)) + (> |v_f_#t~mem6_15_const_-555939336| 1) + (= |v_f_#t~mem6_15_const_-555939336| + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(push 1) +(assert + (= |v_f_#t~mem6_15_const_-555939336| + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596))) +(push 1) +(assert (> |v_f_#t~mem6_15_const_-555939336| 1)) +(push 1) +(assert + (= |v_f_#t~mem7_9_const_-433505720| + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596))) +(push 1) +(assert + (= |v_#memory_int_66_const_1545201521| + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (ite (< |v_f_#t~mem7_9_const_-433505720| 0) + (- (mod |v_f_#t~mem7_9_const_-433505720| 2) 2) + (mod |v_f_#t~mem7_9_const_-433505720| 2)))))) +(push 1) +(assert + (= |v_f_#t~mem9_15_const_-555979621| + (select + (select |v_#memory_int_66_const_1545201521| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975))) +(push 1) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| v_f_~tmp~2.base_15_const_875778012) + 0))) +(push 1) +(assert + (<= (+ 4 v_f_~tmp~2.offset_12_const_-395998975) + (select |v_#length_75_const_-660983894| v_f_~tmp~2.base_15_const_875778012))) +(push 1) +(assert (= |v_f_#t~mem9_15_const_-555979621| 0)) +(push 1) +(assert + (= |v_f_#t~mem10_9_const_-556254644| + (select + (select |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596))) +(push 1) +(assert + (= |v_#memory_int_65_const_1545201526| + (store |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (ite (< |v_f_#t~mem10_9_const_-556254644| 0) + (+ (div |v_f_#t~mem10_9_const_-556254644| 2) 1) + (div |v_f_#t~mem10_9_const_-556254644| 2)))))) +(push 1) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~a_ref~2.base_29_const_-1779673189) 0))) +(push 1) +(assert + (<= (+ 4 v_f_~a_ref~2.offset_22_const_-952049596) + (select |v_#length_75_const_-660983894| + v_f_~a_ref~2.base_29_const_-1779673189))) +(push 1) +(assert + (= |v_#memory_int_64_const_1545201527| + (store |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405 + (store + (select |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615 + (+ + (select + (select |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615) 1))))) +(push 1) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0))) +(push 1) +(assert + (not + (<= (+ 4 v_f_~count~2.offset_34_const_-1958914615) + (select |v_#length_75_const_-660983894| + v_f_~count~2.base_38_const_-1664385405)))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(assert + (<= (+ 4 v_f_~count~2.offset_34_const_-1958914615) + (select |v_#length_75_const_-660983894| + v_f_~count~2.base_38_const_-1664385405))) +(set-info :status sat) +(check-sat) +(pop 1) +(pop 1) +(assert + (<= (+ 4 v_f_~count~2.offset_34_const_-1958914615) + (select |v_#length_75_const_-660983894| + v_f_~count~2.base_38_const_-1664385405))) +(push 1) +(assert + (not + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0)))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0))) +(set-info :status sat) +(check-sat) +(pop 1) +(pop 1) +(assert + (<= (+ 4 v_f_~count~2.offset_34_const_-1958914615) + (select |v_#length_75_const_-660983894| + v_f_~count~2.base_38_const_-1664385405))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0))) +(push 1) +(assert + (not + (= |v_#memory_int_64_const_1545201527| + (store |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405 + (store + (select |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615 + (+ + (select + (select |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615) 1)))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(assert + (= |v_#memory_int_64_const_1545201527| + (store |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405 + (store + (select |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615 + (+ + (select + (select |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615) 1))))) +(set-info :status sat) +(check-sat) +(pop 1) +(pop 1) +(assert + (<= (+ 4 v_f_~count~2.offset_34_const_-1958914615) + (select |v_#length_75_const_-660983894| + v_f_~count~2.base_38_const_-1664385405))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0))) +(assert + (= |v_#memory_int_64_const_1545201527| + (store |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405 + (store + (select |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615 + (+ + (select + (select |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615) 1))))) +(push 1) +(assert + (not + (<= (+ 4 v_f_~a_ref~2.offset_22_const_-952049596) + (select |v_#length_75_const_-660983894| + v_f_~a_ref~2.base_29_const_-1779673189)))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(assert + (<= (+ 4 v_f_~a_ref~2.offset_22_const_-952049596) + (select |v_#length_75_const_-660983894| + v_f_~a_ref~2.base_29_const_-1779673189))) +(set-info :status sat) +(check-sat) +(pop 1) +(pop 1) +(assert + (<= (+ 4 v_f_~count~2.offset_34_const_-1958914615) + (select |v_#length_75_const_-660983894| + v_f_~count~2.base_38_const_-1664385405))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0))) +(assert + (= |v_#memory_int_64_const_1545201527| + (store |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405 + (store + (select |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615 + (+ + (select + (select |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615) 1))))) +(assert + (<= (+ 4 v_f_~a_ref~2.offset_22_const_-952049596) + (select |v_#length_75_const_-660983894| + v_f_~a_ref~2.base_29_const_-1779673189))) +(push 1) +(assert + (not + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~a_ref~2.base_29_const_-1779673189) 0)))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~a_ref~2.base_29_const_-1779673189) 0))) +(set-info :status sat) +(check-sat) +(pop 1) +(pop 1) +(assert + (<= (+ 4 v_f_~count~2.offset_34_const_-1958914615) + (select |v_#length_75_const_-660983894| + v_f_~count~2.base_38_const_-1664385405))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0))) +(assert + (= |v_#memory_int_64_const_1545201527| + (store |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405 + (store + (select |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615 + (+ + (select + (select |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615) 1))))) +(assert + (<= (+ 4 v_f_~a_ref~2.offset_22_const_-952049596) + (select |v_#length_75_const_-660983894| + v_f_~a_ref~2.base_29_const_-1779673189))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~a_ref~2.base_29_const_-1779673189) 0))) +(push 1) +(assert + (not + (= |v_#memory_int_65_const_1545201526| + (store |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (ite (< |v_f_#t~mem10_9_const_-556254644| 0) + (+ (div |v_f_#t~mem10_9_const_-556254644| 2) 1) + (div |v_f_#t~mem10_9_const_-556254644| 2))))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(assert + (= |v_#memory_int_65_const_1545201526| + (store |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (ite (< |v_f_#t~mem10_9_const_-556254644| 0) + (+ (div |v_f_#t~mem10_9_const_-556254644| 2) 1) + (div |v_f_#t~mem10_9_const_-556254644| 2)))))) +(set-info :status sat) +(check-sat) +(pop 1) +(pop 1) +(assert + (<= (+ 4 v_f_~count~2.offset_34_const_-1958914615) + (select |v_#length_75_const_-660983894| + v_f_~count~2.base_38_const_-1664385405))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0))) +(assert + (= |v_#memory_int_64_const_1545201527| + (store |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405 + (store + (select |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615 + (+ + (select + (select |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615) 1))))) +(assert + (<= (+ 4 v_f_~a_ref~2.offset_22_const_-952049596) + (select |v_#length_75_const_-660983894| + v_f_~a_ref~2.base_29_const_-1779673189))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~a_ref~2.base_29_const_-1779673189) 0))) +(assert + (= |v_#memory_int_65_const_1545201526| + (store |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (ite (< |v_f_#t~mem10_9_const_-556254644| 0) + (+ (div |v_f_#t~mem10_9_const_-556254644| 2) 1) + (div |v_f_#t~mem10_9_const_-556254644| 2)))))) +(push 1) +(assert + (not + (= |v_f_#t~mem10_9_const_-556254644| + (select + (select |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(assert + (= |v_f_#t~mem10_9_const_-556254644| + (select + (select |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596))) +(set-info :status sat) +(check-sat) +(pop 1) +(pop 1) +(assert + (<= (+ 4 v_f_~count~2.offset_34_const_-1958914615) + (select |v_#length_75_const_-660983894| + v_f_~count~2.base_38_const_-1664385405))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0))) +(assert + (= |v_#memory_int_64_const_1545201527| + (store |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405 + (store + (select |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615 + (+ + (select + (select |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615) 1))))) +(assert + (<= (+ 4 v_f_~a_ref~2.offset_22_const_-952049596) + (select |v_#length_75_const_-660983894| + v_f_~a_ref~2.base_29_const_-1779673189))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~a_ref~2.base_29_const_-1779673189) 0))) +(assert + (= |v_#memory_int_65_const_1545201526| + (store |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (ite (< |v_f_#t~mem10_9_const_-556254644| 0) + (+ (div |v_f_#t~mem10_9_const_-556254644| 2) 1) + (div |v_f_#t~mem10_9_const_-556254644| 2)))))) +(assert + (= |v_f_#t~mem10_9_const_-556254644| + (select + (select |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596))) +(push 1) +(assert (not (= |v_f_#t~mem9_15_const_-555979621| 0))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(assert (= |v_f_#t~mem9_15_const_-555979621| 0)) +(set-info :status sat) +(check-sat) +(pop 1) +(pop 1) +(assert + (<= (+ 4 v_f_~count~2.offset_34_const_-1958914615) + (select |v_#length_75_const_-660983894| + v_f_~count~2.base_38_const_-1664385405))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0))) +(assert + (= |v_#memory_int_64_const_1545201527| + (store |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405 + (store + (select |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615 + (+ + (select + (select |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615) 1))))) +(assert + (<= (+ 4 v_f_~a_ref~2.offset_22_const_-952049596) + (select |v_#length_75_const_-660983894| + v_f_~a_ref~2.base_29_const_-1779673189))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~a_ref~2.base_29_const_-1779673189) 0))) +(assert + (= |v_#memory_int_65_const_1545201526| + (store |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (ite (< |v_f_#t~mem10_9_const_-556254644| 0) + (+ (div |v_f_#t~mem10_9_const_-556254644| 2) 1) + (div |v_f_#t~mem10_9_const_-556254644| 2)))))) +(assert + (= |v_f_#t~mem10_9_const_-556254644| + (select + (select |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596))) +(assert (= |v_f_#t~mem9_15_const_-555979621| 0)) +(push 1) +(assert + (not + (<= (+ 4 v_f_~tmp~2.offset_12_const_-395998975) + (select |v_#length_75_const_-660983894| v_f_~tmp~2.base_15_const_875778012)))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(assert + (<= (+ 4 v_f_~tmp~2.offset_12_const_-395998975) + (select |v_#length_75_const_-660983894| v_f_~tmp~2.base_15_const_875778012))) +(set-info :status sat) +(check-sat) +(pop 1) +(pop 1) +(assert + (<= (+ 4 v_f_~count~2.offset_34_const_-1958914615) + (select |v_#length_75_const_-660983894| + v_f_~count~2.base_38_const_-1664385405))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0))) +(assert + (= |v_#memory_int_64_const_1545201527| + (store |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405 + (store + (select |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615 + (+ + (select + (select |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615) 1))))) +(assert + (<= (+ 4 v_f_~a_ref~2.offset_22_const_-952049596) + (select |v_#length_75_const_-660983894| + v_f_~a_ref~2.base_29_const_-1779673189))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~a_ref~2.base_29_const_-1779673189) 0))) +(assert + (= |v_#memory_int_65_const_1545201526| + (store |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (ite (< |v_f_#t~mem10_9_const_-556254644| 0) + (+ (div |v_f_#t~mem10_9_const_-556254644| 2) 1) + (div |v_f_#t~mem10_9_const_-556254644| 2)))))) +(assert + (= |v_f_#t~mem10_9_const_-556254644| + (select + (select |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596))) +(assert (= |v_f_#t~mem9_15_const_-555979621| 0)) +(assert + (<= (+ 4 v_f_~tmp~2.offset_12_const_-395998975) + (select |v_#length_75_const_-660983894| v_f_~tmp~2.base_15_const_875778012))) +(push 1) +(assert + (not + (not + (= + (select |v_#valid_122_const_1772220123| v_f_~tmp~2.base_15_const_875778012) + 0)))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| v_f_~tmp~2.base_15_const_875778012) + 0))) +(set-info :status sat) +(check-sat) +(pop 1) +(pop 1) +(assert + (<= (+ 4 v_f_~count~2.offset_34_const_-1958914615) + (select |v_#length_75_const_-660983894| + v_f_~count~2.base_38_const_-1664385405))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0))) +(assert + (= |v_#memory_int_64_const_1545201527| + (store |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405 + (store + (select |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615 + (+ + (select + (select |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615) 1))))) +(assert + (<= (+ 4 v_f_~a_ref~2.offset_22_const_-952049596) + (select |v_#length_75_const_-660983894| + v_f_~a_ref~2.base_29_const_-1779673189))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~a_ref~2.base_29_const_-1779673189) 0))) +(assert + (= |v_#memory_int_65_const_1545201526| + (store |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (ite (< |v_f_#t~mem10_9_const_-556254644| 0) + (+ (div |v_f_#t~mem10_9_const_-556254644| 2) 1) + (div |v_f_#t~mem10_9_const_-556254644| 2)))))) +(assert + (= |v_f_#t~mem10_9_const_-556254644| + (select + (select |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596))) +(assert (= |v_f_#t~mem9_15_const_-555979621| 0)) +(assert + (<= (+ 4 v_f_~tmp~2.offset_12_const_-395998975) + (select |v_#length_75_const_-660983894| v_f_~tmp~2.base_15_const_875778012))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| v_f_~tmp~2.base_15_const_875778012) + 0))) +(push 1) +(assert + (not + (= |v_f_#t~mem9_15_const_-555979621| + (select + (select |v_#memory_int_66_const_1545201521| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975)))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(assert + (= |v_f_#t~mem9_15_const_-555979621| + (select + (select |v_#memory_int_66_const_1545201521| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975))) +(set-info :status sat) +(check-sat) +(pop 1) +(pop 1) +(assert + (<= (+ 4 v_f_~count~2.offset_34_const_-1958914615) + (select |v_#length_75_const_-660983894| + v_f_~count~2.base_38_const_-1664385405))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0))) +(assert + (= |v_#memory_int_64_const_1545201527| + (store |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405 + (store + (select |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615 + (+ + (select + (select |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615) 1))))) +(assert + (<= (+ 4 v_f_~a_ref~2.offset_22_const_-952049596) + (select |v_#length_75_const_-660983894| + v_f_~a_ref~2.base_29_const_-1779673189))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~a_ref~2.base_29_const_-1779673189) 0))) +(assert + (= |v_#memory_int_65_const_1545201526| + (store |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (ite (< |v_f_#t~mem10_9_const_-556254644| 0) + (+ (div |v_f_#t~mem10_9_const_-556254644| 2) 1) + (div |v_f_#t~mem10_9_const_-556254644| 2)))))) +(assert + (= |v_f_#t~mem10_9_const_-556254644| + (select + (select |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596))) +(assert (= |v_f_#t~mem9_15_const_-555979621| 0)) +(assert + (<= (+ 4 v_f_~tmp~2.offset_12_const_-395998975) + (select |v_#length_75_const_-660983894| v_f_~tmp~2.base_15_const_875778012))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| v_f_~tmp~2.base_15_const_875778012) + 0))) +(assert + (= |v_f_#t~mem9_15_const_-555979621| + (select + (select |v_#memory_int_66_const_1545201521| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975))) +(push 1) +(assert + (not + (= |v_#memory_int_66_const_1545201521| + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (ite (< |v_f_#t~mem7_9_const_-433505720| 0) + (- (mod |v_f_#t~mem7_9_const_-433505720| 2) 2) + (mod |v_f_#t~mem7_9_const_-433505720| 2))))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(assert + (= |v_#memory_int_66_const_1545201521| + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (ite (< |v_f_#t~mem7_9_const_-433505720| 0) + (- (mod |v_f_#t~mem7_9_const_-433505720| 2) 2) + (mod |v_f_#t~mem7_9_const_-433505720| 2)))))) +(set-info :status sat) +(check-sat) +(pop 1) +(pop 1) +(assert + (<= (+ 4 v_f_~count~2.offset_34_const_-1958914615) + (select |v_#length_75_const_-660983894| + v_f_~count~2.base_38_const_-1664385405))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0))) +(assert + (= |v_#memory_int_64_const_1545201527| + (store |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405 + (store + (select |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615 + (+ + (select + (select |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615) 1))))) +(assert + (<= (+ 4 v_f_~a_ref~2.offset_22_const_-952049596) + (select |v_#length_75_const_-660983894| + v_f_~a_ref~2.base_29_const_-1779673189))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~a_ref~2.base_29_const_-1779673189) 0))) +(assert + (= |v_#memory_int_65_const_1545201526| + (store |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (ite (< |v_f_#t~mem10_9_const_-556254644| 0) + (+ (div |v_f_#t~mem10_9_const_-556254644| 2) 1) + (div |v_f_#t~mem10_9_const_-556254644| 2)))))) +(assert + (= |v_f_#t~mem10_9_const_-556254644| + (select + (select |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596))) +(assert (= |v_f_#t~mem9_15_const_-555979621| 0)) +(assert + (<= (+ 4 v_f_~tmp~2.offset_12_const_-395998975) + (select |v_#length_75_const_-660983894| v_f_~tmp~2.base_15_const_875778012))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| v_f_~tmp~2.base_15_const_875778012) + 0))) +(assert + (= |v_f_#t~mem9_15_const_-555979621| + (select + (select |v_#memory_int_66_const_1545201521| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975))) +(assert + (= |v_#memory_int_66_const_1545201521| + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (ite (< |v_f_#t~mem7_9_const_-433505720| 0) + (- (mod |v_f_#t~mem7_9_const_-433505720| 2) 2) + (mod |v_f_#t~mem7_9_const_-433505720| 2)))))) +(push 1) +(assert + (not + (= |v_f_#t~mem7_9_const_-433505720| + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(assert + (= |v_f_#t~mem7_9_const_-433505720| + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596))) +(set-info :status sat) +(check-sat) +(pop 1) +(pop 1) +(assert + (<= (+ 4 v_f_~count~2.offset_34_const_-1958914615) + (select |v_#length_75_const_-660983894| + v_f_~count~2.base_38_const_-1664385405))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0))) +(assert + (= |v_#memory_int_64_const_1545201527| + (store |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405 + (store + (select |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615 + (+ + (select + (select |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615) 1))))) +(assert + (<= (+ 4 v_f_~a_ref~2.offset_22_const_-952049596) + (select |v_#length_75_const_-660983894| + v_f_~a_ref~2.base_29_const_-1779673189))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~a_ref~2.base_29_const_-1779673189) 0))) +(assert + (= |v_#memory_int_65_const_1545201526| + (store |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (ite (< |v_f_#t~mem10_9_const_-556254644| 0) + (+ (div |v_f_#t~mem10_9_const_-556254644| 2) 1) + (div |v_f_#t~mem10_9_const_-556254644| 2)))))) +(assert + (= |v_f_#t~mem10_9_const_-556254644| + (select + (select |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596))) +(assert (= |v_f_#t~mem9_15_const_-555979621| 0)) +(assert + (<= (+ 4 v_f_~tmp~2.offset_12_const_-395998975) + (select |v_#length_75_const_-660983894| v_f_~tmp~2.base_15_const_875778012))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| v_f_~tmp~2.base_15_const_875778012) + 0))) +(assert + (= |v_f_#t~mem9_15_const_-555979621| + (select + (select |v_#memory_int_66_const_1545201521| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975))) +(assert + (= |v_#memory_int_66_const_1545201521| + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (ite (< |v_f_#t~mem7_9_const_-433505720| 0) + (- (mod |v_f_#t~mem7_9_const_-433505720| 2) 2) + (mod |v_f_#t~mem7_9_const_-433505720| 2)))))) +(assert + (= |v_f_#t~mem7_9_const_-433505720| + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596))) +(push 1) +(assert (not (> |v_f_#t~mem6_15_const_-555939336| 1))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(assert (> |v_f_#t~mem6_15_const_-555939336| 1)) +(set-info :status sat) +(check-sat) +(pop 1) +(pop 1) +(assert + (<= (+ 4 v_f_~count~2.offset_34_const_-1958914615) + (select |v_#length_75_const_-660983894| + v_f_~count~2.base_38_const_-1664385405))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0))) +(assert + (= |v_#memory_int_64_const_1545201527| + (store |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405 + (store + (select |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615 + (+ + (select + (select |v_#memory_int_65_const_1545201526| + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615) 1))))) +(assert + (<= (+ 4 v_f_~a_ref~2.offset_22_const_-952049596) + (select |v_#length_75_const_-660983894| + v_f_~a_ref~2.base_29_const_-1779673189))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~a_ref~2.base_29_const_-1779673189) 0))) +(assert + (= |v_#memory_int_65_const_1545201526| + (store |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (ite (< |v_f_#t~mem10_9_const_-556254644| 0) + (+ (div |v_f_#t~mem10_9_const_-556254644| 2) 1) + (div |v_f_#t~mem10_9_const_-556254644| 2)))))) +(assert + (= |v_f_#t~mem10_9_const_-556254644| + (select + (select |v_#memory_int_66_const_1545201521| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596))) +(assert (= |v_f_#t~mem9_15_const_-555979621| 0)) +(assert + (<= (+ 4 v_f_~tmp~2.offset_12_const_-395998975) + (select |v_#length_75_const_-660983894| v_f_~tmp~2.base_15_const_875778012))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| v_f_~tmp~2.base_15_const_875778012) + 0))) +(assert + (= |v_f_#t~mem9_15_const_-555979621| + (select + (select |v_#memory_int_66_const_1545201521| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975))) +(assert + (= |v_#memory_int_66_const_1545201521| + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (ite (< |v_f_#t~mem7_9_const_-433505720| 0) + (- (mod |v_f_#t~mem7_9_const_-433505720| 2) 2) + (mod |v_f_#t~mem7_9_const_-433505720| 2)))))) +(assert + (= |v_f_#t~mem7_9_const_-433505720| + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596))) +(assert (> |v_f_#t~mem6_15_const_-555939336| 1)) +(push 1) +(assert + (not + (= |v_f_#t~mem6_15_const_-555939336| + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(assert + (= |v_f_#t~mem6_15_const_-555939336| + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596))) +(set-info :status sat) +(check-sat) +(pop 1) +(pop 1) +(pop 1) +(push 1) +(declare-fun |v_#memory_int_67_const_1545201520| () + (Array Int (Array Int Int))) +(declare-fun v_f_~a_ref~2.base_29_const_-1779673189 () Int) +(declare-fun v_f_~a_ref~2.offset_22_const_-952049596 () Int) +(declare-fun v_f_~tmp~2.base_15_const_875778012 () Int) +(declare-fun v_f_~tmp~2.offset_12_const_-395998975 () Int) +(declare-fun v_f_~count~2.base_38_const_-1664385405 () Int) +(declare-fun v_f_~count~2.offset_34_const_-1958914615 () Int) +(declare-fun |v_#memory_int_64_const_1545201527| () + (Array Int (Array Int Int))) +(declare-fun |v_#length_75_const_-660983894| () (Array Int Int)) +(declare-fun |v_#valid_122_const_1772220123| () (Array Int Int)) +(push 1) +(pop 1) +(push 1) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0))) +(pop 1) +(push 1) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| v_f_~tmp~2.base_15_const_875778012) + 0))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0))) +(pop 1) +(push 1) +(assert + (< 1 + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| v_f_~tmp~2.base_15_const_875778012) + 0))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0))) +(pop 1) +(push 1) +(assert + (< 1 + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| v_f_~tmp~2.base_15_const_875778012) + 0))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0))) +(pop 1) +(push 1) +(assert + (<= (+ 4 v_f_~count~2.offset_34_const_-1958914615) + (select |v_#length_75_const_-660983894| + v_f_~count~2.base_38_const_-1664385405))) +(assert + (< 1 + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| v_f_~tmp~2.base_15_const_875778012) + 0))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0))) +(pop 1) +(push 1) +(assert + (<= (+ 4 v_f_~tmp~2.offset_12_const_-395998975) + (select |v_#length_75_const_-660983894| v_f_~tmp~2.base_15_const_875778012))) +(assert + (<= (+ 4 v_f_~count~2.offset_34_const_-1958914615) + (select |v_#length_75_const_-660983894| + v_f_~count~2.base_38_const_-1664385405))) +(assert + (< 1 + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| v_f_~tmp~2.base_15_const_875778012) + 0))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0))) +(pop 1) +(push 1) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~a_ref~2.base_29_const_-1779673189) 0))) +(assert + (<= (+ 4 v_f_~tmp~2.offset_12_const_-395998975) + (select |v_#length_75_const_-660983894| v_f_~tmp~2.base_15_const_875778012))) +(assert + (<= (+ 4 v_f_~count~2.offset_34_const_-1958914615) + (select |v_#length_75_const_-660983894| + v_f_~count~2.base_38_const_-1664385405))) +(assert + (< 1 + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| v_f_~tmp~2.base_15_const_875778012) + 0))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0))) +(pop 1) +(push 1) +(assert + (<= (+ 4 v_f_~a_ref~2.offset_22_const_-952049596) + (select |v_#length_75_const_-660983894| + v_f_~a_ref~2.base_29_const_-1779673189))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~a_ref~2.base_29_const_-1779673189) 0))) +(assert + (<= (+ 4 v_f_~tmp~2.offset_12_const_-395998975) + (select |v_#length_75_const_-660983894| v_f_~tmp~2.base_15_const_875778012))) +(assert + (<= (+ 4 v_f_~count~2.offset_34_const_-1958914615) + (select |v_#length_75_const_-660983894| + v_f_~count~2.base_38_const_-1664385405))) +(assert + (= + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975) + 0)) +(assert + (< 1 + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| v_f_~tmp~2.base_15_const_875778012) + 0))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0))) +(pop 1) +(push 1) +(assert + (< 1 + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| v_f_~tmp~2.base_15_const_875778012) + 0))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0))) +(assert + (not + (and + (= |v_#memory_int_64_const_1545201527| + (store + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (+ + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 1))) + v_f_~count~2.base_38_const_-1664385405 + (store + (select + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (+ + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 1))) + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615 + (+ + (select + (select + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (+ + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 1))) + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615) 1)))) + (<= 0 + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)) + (<= (+ 4 v_f_~a_ref~2.offset_22_const_-952049596) + (select |v_#length_75_const_-660983894| + v_f_~a_ref~2.base_29_const_-1779673189)) + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~a_ref~2.base_29_const_-1779673189) 0)) + (<= (+ 4 v_f_~tmp~2.offset_12_const_-395998975) + (select |v_#length_75_const_-660983894| v_f_~tmp~2.base_15_const_875778012)) + (<= (+ 4 v_f_~count~2.offset_34_const_-1958914615) + (select |v_#length_75_const_-660983894| + v_f_~count~2.base_38_const_-1664385405)) + (= + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975) + 0) + (< 1 + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)) + (not + (= + (select |v_#valid_122_const_1772220123| v_f_~tmp~2.base_15_const_875778012) + 0)) + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0)) + (< + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 0)))) +(pop 1) +(push 1) +(assert + (<= (+ 4 v_f_~a_ref~2.offset_22_const_-952049596) + (select |v_#length_75_const_-660983894| + v_f_~a_ref~2.base_29_const_-1779673189))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~a_ref~2.base_29_const_-1779673189) 0))) +(assert + (<= (+ 4 v_f_~tmp~2.offset_12_const_-395998975) + (select |v_#length_75_const_-660983894| v_f_~tmp~2.base_15_const_875778012))) +(assert + (<= (+ 4 v_f_~count~2.offset_34_const_-1958914615) + (select |v_#length_75_const_-660983894| + v_f_~count~2.base_38_const_-1664385405))) +(assert + (= + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975) + 0)) +(assert + (< 1 + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| v_f_~tmp~2.base_15_const_875778012) + 0))) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0))) +(assert + (not + (and + (= |v_#memory_int_64_const_1545201527| + (store + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (+ + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 1))) + v_f_~count~2.base_38_const_-1664385405 + (store + (select + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (+ + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 1))) + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615 + (+ + (select + (select + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (+ + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 1))) + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615) 1)))) + (<= 0 + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)) + (<= (+ 4 v_f_~a_ref~2.offset_22_const_-952049596) + (select |v_#length_75_const_-660983894| + v_f_~a_ref~2.base_29_const_-1779673189)) + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~a_ref~2.base_29_const_-1779673189) 0)) + (<= (+ 4 v_f_~tmp~2.offset_12_const_-395998975) + (select |v_#length_75_const_-660983894| v_f_~tmp~2.base_15_const_875778012)) + (<= (+ 4 v_f_~count~2.offset_34_const_-1958914615) + (select |v_#length_75_const_-660983894| + v_f_~count~2.base_38_const_-1664385405)) + (= + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975) + 0) + (< 1 + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)) + (not + (= + (select |v_#valid_122_const_1772220123| v_f_~tmp~2.base_15_const_875778012) + 0)) + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0)) + (< + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 0)))) +(pop 1) +(push 1) +(assert + (not + (or + (and + (= |v_#memory_int_64_const_1545201527| + (store + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~count~2.base_38_const_-1664385405 + (store + (select + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615 + (+ + (select + (select + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615) 1)))) + (<= 0 + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)) + (<= 0 + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)) + (<= (+ 4 v_f_~a_ref~2.offset_22_const_-952049596) + (select |v_#length_75_const_-660983894| + v_f_~a_ref~2.base_29_const_-1779673189)) + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~a_ref~2.base_29_const_-1779673189) 0)) + (<= (+ 4 v_f_~tmp~2.offset_12_const_-395998975) + (select |v_#length_75_const_-660983894| v_f_~tmp~2.base_15_const_875778012)) + (<= (+ 4 v_f_~count~2.offset_34_const_-1958914615) + (select |v_#length_75_const_-660983894| + v_f_~count~2.base_38_const_-1664385405)) + (= + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975) + 0) + (< 1 + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)) + (not + (= + (select |v_#valid_122_const_1772220123| v_f_~tmp~2.base_15_const_875778012) + 0)) + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0))) + (and + (< + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 0) + (= |v_#memory_int_64_const_1545201527| + (store + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~count~2.base_38_const_-1664385405 + (store + (select + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615 + (+ + (select + (select + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615) 1)))) + (<= 0 + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)) + (<= (+ 4 v_f_~a_ref~2.offset_22_const_-952049596) + (select |v_#length_75_const_-660983894| + v_f_~a_ref~2.base_29_const_-1779673189)) + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~a_ref~2.base_29_const_-1779673189) 0)) + (<= (+ 4 v_f_~tmp~2.offset_12_const_-395998975) + (select |v_#length_75_const_-660983894| v_f_~tmp~2.base_15_const_875778012)) + (<= (+ 4 v_f_~count~2.offset_34_const_-1958914615) + (select |v_#length_75_const_-660983894| + v_f_~count~2.base_38_const_-1664385405)) + (= + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975) + 0) + (< 1 + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)) + (not + (= + (select |v_#valid_122_const_1772220123| v_f_~tmp~2.base_15_const_875778012) + 0)) + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0))) + (and + (< + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 0) + (= |v_#memory_int_64_const_1545201527| + (store + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (+ + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 1))) + v_f_~count~2.base_38_const_-1664385405 + (store + (select + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (+ + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 1))) + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615 + (+ + (select + (select + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (+ + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 1))) + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615) 1)))) + (<= (+ 4 v_f_~a_ref~2.offset_22_const_-952049596) + (select |v_#length_75_const_-660983894| + v_f_~a_ref~2.base_29_const_-1779673189)) + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~a_ref~2.base_29_const_-1779673189) 0)) + (<= (+ 4 v_f_~tmp~2.offset_12_const_-395998975) + (select |v_#length_75_const_-660983894| v_f_~tmp~2.base_15_const_875778012)) + (<= (+ 4 v_f_~count~2.offset_34_const_-1958914615) + (select |v_#length_75_const_-660983894| + v_f_~count~2.base_38_const_-1664385405)) + (= + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975) + 0) + (< 1 + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)) + (not + (= + (select |v_#valid_122_const_1772220123| v_f_~tmp~2.base_15_const_875778012) + 0)) + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0)) + (< + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 0)) + (and + (= |v_#memory_int_64_const_1545201527| + (store + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (+ + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 1))) + v_f_~count~2.base_38_const_-1664385405 + (store + (select + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (+ + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 1))) + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615 + (+ + (select + (select + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (+ + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 1))) + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615) 1)))) + (<= 0 + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)) + (<= (+ 4 v_f_~a_ref~2.offset_22_const_-952049596) + (select |v_#length_75_const_-660983894| + v_f_~a_ref~2.base_29_const_-1779673189)) + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~a_ref~2.base_29_const_-1779673189) 0)) + (<= (+ 4 v_f_~tmp~2.offset_12_const_-395998975) + (select |v_#length_75_const_-660983894| v_f_~tmp~2.base_15_const_875778012)) + (<= (+ 4 v_f_~count~2.offset_34_const_-1958914615) + (select |v_#length_75_const_-660983894| + v_f_~count~2.base_38_const_-1664385405)) + (= + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975) + 0) + (< 1 + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)) + (not + (= + (select |v_#valid_122_const_1772220123| v_f_~tmp~2.base_15_const_875778012) + 0)) + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0)) + (< + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 0))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(assert + (or + (and + (= |v_#memory_int_64_const_1545201527| + (store + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~count~2.base_38_const_-1664385405 + (store + (select + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615 + (+ + (select + (select + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615) 1)))) + (<= 0 + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)) + (<= 0 + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)) + (<= (+ 4 v_f_~a_ref~2.offset_22_const_-952049596) + (select |v_#length_75_const_-660983894| + v_f_~a_ref~2.base_29_const_-1779673189)) + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~a_ref~2.base_29_const_-1779673189) 0)) + (<= (+ 4 v_f_~tmp~2.offset_12_const_-395998975) + (select |v_#length_75_const_-660983894| v_f_~tmp~2.base_15_const_875778012)) + (<= (+ 4 v_f_~count~2.offset_34_const_-1958914615) + (select |v_#length_75_const_-660983894| + v_f_~count~2.base_38_const_-1664385405)) + (= + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975) + 0) + (< 1 + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)) + (not + (= + (select |v_#valid_122_const_1772220123| v_f_~tmp~2.base_15_const_875778012) + 0)) + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0))) + (and + (< + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 0) + (= |v_#memory_int_64_const_1545201527| + (store + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~count~2.base_38_const_-1664385405 + (store + (select + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615 + (+ + (select + (select + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615) 1)))) + (<= 0 + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)) + (<= (+ 4 v_f_~a_ref~2.offset_22_const_-952049596) + (select |v_#length_75_const_-660983894| + v_f_~a_ref~2.base_29_const_-1779673189)) + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~a_ref~2.base_29_const_-1779673189) 0)) + (<= (+ 4 v_f_~tmp~2.offset_12_const_-395998975) + (select |v_#length_75_const_-660983894| v_f_~tmp~2.base_15_const_875778012)) + (<= (+ 4 v_f_~count~2.offset_34_const_-1958914615) + (select |v_#length_75_const_-660983894| + v_f_~count~2.base_38_const_-1664385405)) + (= + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975) + 0) + (< 1 + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)) + (not + (= + (select |v_#valid_122_const_1772220123| v_f_~tmp~2.base_15_const_875778012) + 0)) + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0))) + (and + (< + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 0) + (= |v_#memory_int_64_const_1545201527| + (store + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (+ + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 1))) + v_f_~count~2.base_38_const_-1664385405 + (store + (select + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (+ + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 1))) + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615 + (+ + (select + (select + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (+ + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 1))) + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615) 1)))) + (<= (+ 4 v_f_~a_ref~2.offset_22_const_-952049596) + (select |v_#length_75_const_-660983894| + v_f_~a_ref~2.base_29_const_-1779673189)) + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~a_ref~2.base_29_const_-1779673189) 0)) + (<= (+ 4 v_f_~tmp~2.offset_12_const_-395998975) + (select |v_#length_75_const_-660983894| v_f_~tmp~2.base_15_const_875778012)) + (<= (+ 4 v_f_~count~2.offset_34_const_-1958914615) + (select |v_#length_75_const_-660983894| + v_f_~count~2.base_38_const_-1664385405)) + (= + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975) + 0) + (< 1 + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)) + (not + (= + (select |v_#valid_122_const_1772220123| v_f_~tmp~2.base_15_const_875778012) + 0)) + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0)) + (< + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 0)) + (and + (= |v_#memory_int_64_const_1545201527| + (store + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (+ + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 1))) + v_f_~count~2.base_38_const_-1664385405 + (store + (select + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (+ + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 1))) + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615 + (+ + (select + (select + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (+ + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 1))) + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615) 1)))) + (<= 0 + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)) + (<= (+ 4 v_f_~a_ref~2.offset_22_const_-952049596) + (select |v_#length_75_const_-660983894| + v_f_~a_ref~2.base_29_const_-1779673189)) + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~a_ref~2.base_29_const_-1779673189) 0)) + (<= (+ 4 v_f_~tmp~2.offset_12_const_-395998975) + (select |v_#length_75_const_-660983894| v_f_~tmp~2.base_15_const_875778012)) + (<= (+ 4 v_f_~count~2.offset_34_const_-1958914615) + (select |v_#length_75_const_-660983894| + v_f_~count~2.base_38_const_-1664385405)) + (= + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975) + 0) + (< 1 + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)) + (not + (= + (select |v_#valid_122_const_1772220123| v_f_~tmp~2.base_15_const_875778012) + 0)) + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0)) + (< + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 0)))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(push 1) +(assert + (not + (and + (= |v_#memory_int_64_const_1545201527| + (store + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (+ + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 1))) + v_f_~count~2.base_38_const_-1664385405 + (store + (select + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (+ + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 1))) + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615 + (+ + (select + (select + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (+ + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 1))) + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615) 1)))) + (<= 0 + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)) + (<= (+ 4 v_f_~a_ref~2.offset_22_const_-952049596) + (select |v_#length_75_const_-660983894| + v_f_~a_ref~2.base_29_const_-1779673189)) + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~a_ref~2.base_29_const_-1779673189) 0)) + (<= (+ 4 v_f_~tmp~2.offset_12_const_-395998975) + (select |v_#length_75_const_-660983894| v_f_~tmp~2.base_15_const_875778012)) + (<= (+ 4 v_f_~count~2.offset_34_const_-1958914615) + (select |v_#length_75_const_-660983894| + v_f_~count~2.base_38_const_-1664385405)) + (= + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975) + 0) + (< 1 + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)) + (not + (= + (select |v_#valid_122_const_1772220123| v_f_~tmp~2.base_15_const_875778012) + 0)) + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0)) + (< + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 0)))) +(push 1) +(assert + (not + (and + (< + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 0) + (= |v_#memory_int_64_const_1545201527| + (store + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (+ + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 1))) + v_f_~count~2.base_38_const_-1664385405 + (store + (select + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (+ + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 1))) + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615 + (+ + (select + (select + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (+ + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 1))) + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615) 1)))) + (<= (+ 4 v_f_~a_ref~2.offset_22_const_-952049596) + (select |v_#length_75_const_-660983894| + v_f_~a_ref~2.base_29_const_-1779673189)) + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~a_ref~2.base_29_const_-1779673189) 0)) + (<= (+ 4 v_f_~tmp~2.offset_12_const_-395998975) + (select |v_#length_75_const_-660983894| v_f_~tmp~2.base_15_const_875778012)) + (<= (+ 4 v_f_~count~2.offset_34_const_-1958914615) + (select |v_#length_75_const_-660983894| + v_f_~count~2.base_38_const_-1664385405)) + (= + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975) + 0) + (< 1 + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)) + (not + (= + (select |v_#valid_122_const_1772220123| v_f_~tmp~2.base_15_const_875778012) + 0)) + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0)) + (< + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 0)))) +(push 1) +(assert + (not + (and + (< + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 0) + (= |v_#memory_int_64_const_1545201527| + (store + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~count~2.base_38_const_-1664385405 + (store + (select + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615 + (+ + (select + (select + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615) 1)))) + (<= 0 + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)) + (<= (+ 4 v_f_~a_ref~2.offset_22_const_-952049596) + (select |v_#length_75_const_-660983894| + v_f_~a_ref~2.base_29_const_-1779673189)) + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~a_ref~2.base_29_const_-1779673189) 0)) + (<= (+ 4 v_f_~tmp~2.offset_12_const_-395998975) + (select |v_#length_75_const_-660983894| v_f_~tmp~2.base_15_const_875778012)) + (<= (+ 4 v_f_~count~2.offset_34_const_-1958914615) + (select |v_#length_75_const_-660983894| + v_f_~count~2.base_38_const_-1664385405)) + (= + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (- + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2) 2))) + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975) + 0) + (< 1 + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)) + (not + (= + (select |v_#valid_122_const_1772220123| v_f_~tmp~2.base_15_const_875778012) + 0)) + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0))))) +(push 1) +(assert + (not + (and + (= |v_#memory_int_64_const_1545201527| + (store + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~count~2.base_38_const_-1664385405 + (store + (select + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615 + (+ + (select + (select + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615) 1)))) + (<= 0 + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)) + (<= 0 + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)) + (<= (+ 4 v_f_~a_ref~2.offset_22_const_-952049596) + (select |v_#length_75_const_-660983894| + v_f_~a_ref~2.base_29_const_-1779673189)) + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~a_ref~2.base_29_const_-1779673189) 0)) + (<= (+ 4 v_f_~tmp~2.offset_12_const_-395998975) + (select |v_#length_75_const_-660983894| v_f_~tmp~2.base_15_const_875778012)) + (<= (+ 4 v_f_~count~2.offset_34_const_-1958914615) + (select |v_#length_75_const_-660983894| + v_f_~count~2.base_38_const_-1664385405)) + (= + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975) + 0) + (< 1 + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)) + (not + (= + (select |v_#valid_122_const_1772220123| v_f_~tmp~2.base_15_const_875778012) + 0)) + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(assert + (and + (= |v_#memory_int_64_const_1545201527| + (store + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~count~2.base_38_const_-1664385405 + (store + (select + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615 + (+ + (select + (select + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615) 1)))) + (<= 0 + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)) + (<= 0 + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)) + (<= (+ 4 v_f_~a_ref~2.offset_22_const_-952049596) + (select |v_#length_75_const_-660983894| + v_f_~a_ref~2.base_29_const_-1779673189)) + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~a_ref~2.base_29_const_-1779673189) 0)) + (<= (+ 4 v_f_~tmp~2.offset_12_const_-395998975) + (select |v_#length_75_const_-660983894| v_f_~tmp~2.base_15_const_875778012)) + (<= (+ 4 v_f_~count~2.offset_34_const_-1958914615) + (select |v_#length_75_const_-660983894| + v_f_~count~2.base_38_const_-1664385405)) + (= + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975) + 0) + (< 1 + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)) + (not + (= + (select |v_#valid_122_const_1772220123| v_f_~tmp~2.base_15_const_875778012) + 0)) + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0)))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(push 1) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~count~2.base_38_const_-1664385405) 0))) +(push 1) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| v_f_~tmp~2.base_15_const_875778012) + 0))) +(push 1) +(assert + (< 1 + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596))) +(push 1) +(assert + (= + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975) + 0)) +(push 1) +(assert + (<= (+ 4 v_f_~count~2.offset_34_const_-1958914615) + (select |v_#length_75_const_-660983894| + v_f_~count~2.base_38_const_-1664385405))) +(push 1) +(assert + (<= (+ 4 v_f_~tmp~2.offset_12_const_-395998975) + (select |v_#length_75_const_-660983894| v_f_~tmp~2.base_15_const_875778012))) +(push 1) +(assert + (not + (= + (select |v_#valid_122_const_1772220123| + v_f_~a_ref~2.base_29_const_-1779673189) 0))) +(push 1) +(assert + (<= (+ 4 v_f_~a_ref~2.offset_22_const_-952049596) + (select |v_#length_75_const_-660983894| + v_f_~a_ref~2.base_29_const_-1779673189))) +(push 1) +(assert + (<= 0 + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596))) +(push 1) +(assert + (<= 0 + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596))) +(push 1) +(assert + (not + (= |v_#memory_int_64_const_1545201527| + (store + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~count~2.base_38_const_-1664385405 + (store + (select + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615 + (+ + (select + (select + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615) 1)))))) +(set-info :status sat) +(check-sat) +(pop 1) +(push 1) +(assert + (= |v_#memory_int_64_const_1545201527| + (store + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~count~2.base_38_const_-1664385405 + (store + (select + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615 + (+ + (select + (select + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615) 1))))) +(set-info :status sat) +(check-sat) +(pop 1) +(pop 1) +(assert + (= |v_#memory_int_64_const_1545201527| + (store + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~count~2.base_38_const_-1664385405 + (store + (select + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615 + (+ + (select + (select + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615) 1))))) +(push 1) +(assert + (not + (<= 0 + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)))) +(set-info :status unsat) +(check-sat) +(pop 1) +(pop 1) +(assert + (= |v_#memory_int_64_const_1545201527| + (store + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~count~2.base_38_const_-1664385405 + (store + (select + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615 + (+ + (select + (select + (store + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189 + (store + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596 + (div + (select + (select + (store |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012 + (store + (select |v_#memory_int_67_const_1545201520| + v_f_~tmp~2.base_15_const_875778012) v_f_~tmp~2.offset_12_const_-395998975 + (mod + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596) 2))) + v_f_~count~2.base_38_const_-1664385405) + v_f_~count~2.offset_34_const_-1958914615) 1))))) +(assert true) +(push 1) +(assert + (not + (<= 0 + (select + (select |v_#memory_int_67_const_1545201520| + v_f_~a_ref~2.base_29_const_-1779673189) + v_f_~a_ref~2.offset_22_const_-952049596)))) +(set-info :status unsat) +(check-sat) diff --git a/tests/regress/mcsat/arrays/aviad_true-alloca_true-termination.c.i.partial.smt2.gold b/tests/regress/mcsat/arrays/aviad_true-alloca_true-termination.c.i.partial.smt2.gold new file mode 100644 index 000000000..88bf11afa --- /dev/null +++ b/tests/regress/mcsat/arrays/aviad_true-alloca_true-termination.c.i.partial.smt2.gold @@ -0,0 +1,178 @@ +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +unsat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +unsat +unsat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +unsat +unsat +unsat +unsat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +sat +unsat +unsat diff --git a/tests/regress/mcsat/arrays/aviad_true-alloca_true-termination.c.i.partial.smt2.options b/tests/regress/mcsat/arrays/aviad_true-alloca_true-termination.c.i.partial.smt2.options new file mode 100644 index 000000000..ef51a657c --- /dev/null +++ b/tests/regress/mcsat/arrays/aviad_true-alloca_true-termination.c.i.partial.smt2.options @@ -0,0 +1 @@ +--mcsat --incremental \ No newline at end of file From 3945b3bcc0282c547462e397c61d2acf3917d448 Mon Sep 17 00:00:00 2001 From: Ahmed <43099566+ahmed-irfan@users.noreply.github.com> Date: Tue, 3 Oct 2023 12:36:28 -0700 Subject: [PATCH 181/182] Update GMP for windows --- doc/GMP | 20 ++++++++------------ 1 file changed, 8 insertions(+), 12 deletions(-) diff --git a/doc/GMP b/doc/GMP index dded81098..f679ecfb9 100644 --- a/doc/GMP +++ b/doc/GMP @@ -373,20 +373,19 @@ For GMP 5.0.1, it's also a good idea to get the patch at Otherwise, make check will fail for t-perfpow. -Then, give the following options to GMP's configure script: +Then, give the following options to GMP's configure script +(update the prefix path) for the dynamic GMP: ./configure --disable-static --enable-shared \ --prefix=.... \ - --host=x86_64-pc-mingw32 --build=i686-pc-cygwin \ - CC=/usr/bin/x86_64-w64-mingw32-gcc \ - NM=/usr/bin/x86_64-w64-mingw32-nm \ - AR=/usr/bin/x86_64-w64-mingw32-ar \ - CC_FOR_BUILD=gcc \ + --host=x86_64-pc-mingw32 --build=i686-pc-cygwin +Then, for the static GMP (update the prefix path -- use a +different path from the dynamic GMP path): -It's important to specify NM as the x86_64 version. Otherwise the -'./configure' fails. Not sure specifying AR=... is required. - + ./configure --host=x86_64-w64-mingw32 --enable-static \ + --prefix=.... \ + --disable-shared --build=i686-pc-cygwin UPDATE (2012/02/15) @@ -400,7 +399,4 @@ mingw64, 'make check' failed with this complaint: To fix this, I just did: /usr/bin/x86_64-w64-mingw32-ranlib ./tests/.libs/libtests.a -(Playing with with RANLIB= ... or other options to configure - did not help). - Then 'make check' proceeded without problems after that. From ef6ccf72daebd114807733d3758cdb400c6c5994 Mon Sep 17 00:00:00 2001 From: Ahmed <43099566+ahmed-irfan@users.noreply.github.com> Date: Tue, 3 Oct 2023 13:22:01 -0700 Subject: [PATCH 182/182] Update GMP --- doc/GMP | 2 ++ 1 file changed, 2 insertions(+) diff --git a/doc/GMP b/doc/GMP index f679ecfb9..476132127 100644 --- a/doc/GMP +++ b/doc/GMP @@ -387,6 +387,8 @@ different path from the dynamic GMP path): --prefix=.... \ --disable-shared --build=i686-pc-cygwin +Add the dynamic and static bin paths to the PATH env variable. + UPDATE (2012/02/15)