; Command: ; > yices_smt2_mt --incremental (set-logic QF_UFBV) (declare-fun theory0_len ((_ BitVec 64)) (_ BitVec 64)); theory len (declare-fun theory1_safe ((_ BitVec 64)) Bool); theory safe (declare-fun theory2_nullterm ((_ BitVec 64)) Bool); theory nullterm ; : ./src/endpoint.zz:2 ; using ::{memset, memcpy}; ; : ./src/endpoint.zz:1 ; using ::{printf}; ; : ./src/endpoint.zz:2 ; using ::{memset, memcpy}; ; : /home/aep/proj/zz/modules/string/./src/lib.zz:7 ; String ; : /home/aep/proj/zz/modules/string/./src/lib.zz:150 ; export fn format(String+tail mut * self, char *fmt, ...) -> int ; where tail > 0 ; model self->len < tail ; { ; static_attest(self->len < tail); ; ; va_list mut args; ; va_start (args, fmt); ; ; usize isfree = tail - self->len; ; ; int r = as(vsnprintf( ; self->mem + self->len, ; isfree, ; fmt, ; args ; )); ; va_end (args); ; ; if r > 0 { ; if (usize)r >= isfree { ; self->len += (isfree - 1); ; } else { ; self->len += as(r); ; } ; } ; ; static_attest(self->len < len(self->mem)); ; (self->mem)[self->len] = 0; ; ; return r; ; } (declare-fun var7___string__format__t0 () (_ BitVec 64)) (declare-fun var8_true__t0 () Bool) (assert (= var8_true__t0 (theory1_safe var7___string__format__t0) ) ) (assert var8_true__t0 ) ; : /home/aep/proj/zz/modules/slice/./src/slice.zz:4 ; Slice ; : /home/aep/proj/zz/modules/string/./src/lib.zz:26 ; export fn slice(String+tail mut * self) -> Slice ; model return.size <= tail ; { ; static_attest(self->len < tail); ; return Slice { ; size: self->len, ; mem: (u8 mut*)self->mem, ; }; ; } (declare-fun var10___string__slice__t0 () (_ BitVec 64)) (declare-fun var11_true__t0 () Bool) (assert (= var11_true__t0 (theory1_safe var10___string__slice__t0) ) ) (assert var11_true__t0 ) ; : /home/aep/proj/zz/modules/slice/./src/slice.zz:9 ; export fn borrow(Slice *self) -> Slice * ; where len(self->mem) >= self->size ; model safe(return) ; model len(return->mem) >= return->size ; { ; return self; ; } (declare-fun var12___slice__slice__borrow__t0 () (_ BitVec 64)) (declare-fun var13_true__t0 () Bool) (assert (= var13_true__t0 (theory1_safe var12___slice__slice__borrow__t0) ) ) (assert var13_true__t0 ) ; : /home/aep/proj/zz/modules/slice/./src/slice.zz:17 ; export fn eq(Slice *self, Slice *other) -> bool ; { ; if self->size != other->size { ; return false; ; } ; return (c_string::memcmp(self->mem, other->mem, self->size) == 0); ; } (declare-fun var14___slice__slice__eq__t0 () (_ BitVec 64)) (declare-fun var15_true__t0 () Bool) (assert (= var15_true__t0 (theory1_safe var14___slice__slice__eq__t0) ) ) (assert var15_true__t0 ) ; : /home/aep/proj/zz/modules/slice/./src/slice.zz:25 ; export fn eq_cstr(Slice *self, char *other) -> bool ; where nullterm(other) ; { ; usize othersize = (usize)c_string::strlen(other); ; if self->size != othersize { ; return false; ; } ; return (c_string::memcmp(self->mem, other, self->size) == 0); ; } (declare-fun var16___slice__slice__eq_cstr__t0 () (_ BitVec 64)) (declare-fun var17_true__t0 () Bool) (assert (= var17_true__t0 (theory1_safe var16___slice__slice__eq_cstr__t0) ) ) (assert var17_true__t0 ) ; : /home/aep/proj/zz/modules/slice/./src/mut_slice.zz:5 ; MutSlice ; : /home/aep/proj/zz/modules/string/./src/lib.zz:36 ; export fn append_slice(String+tail mut * self) -> MutSlice ; model return.slice.size == tail ; model return.at <= tail ; model return.slice.size >= len(return.slice.mem) ; { ; ; static_attest(self->len < tail); ; ; return MutSlice { ; slice: Slice { ; size: tail, ; mem: (u8 mut*)self->mem, ; }, ; at: self->len, ; }; ; } (declare-fun var19___string__append_slice__t0 () (_ BitVec 64)) (declare-fun var20_true__t0 () Bool) (assert (= var20_true__t0 (theory1_safe var19___string__append_slice__t0) ) ) (assert var20_true__t0 ) ; : /home/aep/proj/zz/modules/slice/./src/mut_slice.zz:11 ; export fn borrow(MutSlice mut*self) -> MutSlice * ; where self->slice.size >= len(self->slice.mem) ; where self->at <= self->slice.size ; model safe(return) ; model return->slice.size == self->slice.size ; model return->at == self->at ; model return->slice.size >= len(return->slice.mem) ; model return->at <= return->slice.size ; { ; let r = self; ; static_attest(r->slice.size == self->slice.size); ; static_attest(r->at == self->at); ; return r; ; } (declare-fun var21___slice__mut_slice__borrow__t0 () (_ BitVec 64)) (declare-fun var22_true__t0 () Bool) (assert (= var22_true__t0 (theory1_safe var21___slice__mut_slice__borrow__t0) ) ) (assert var22_true__t0 ) ; : /home/aep/proj/zz/modules/slice/./src/mut_slice.zz:45 ; export inline fn mem(MutSlice mut * self) -> u8 mut* ; model len(return) >= self->slice.size ; model len(return) >= self->at ; { ; u8 mut* m = (u8 mut *)self->slice.mem; ; static_attest(len(m) >= self->slice.size); ; return m; ; } (declare-fun var23___slice__mut_slice__mem__t0 () (_ BitVec 64)) (declare-fun var24_true__t0 () Bool) (assert (= var24_true__t0 (theory1_safe var23___slice__mut_slice__mem__t0) ) ) (assert var24_true__t0 ) ; : /home/aep/proj/zz/modules/slice/./src/mut_slice.zz:54 ; export fn push(MutSlice mut * self, u8 b) -> bool ; where self->slice.size >= 1 ; model self->at <= self->slice.size ; { ; if self->at > self->slice.size - 1 { ; return false; ; } ; ; self->mem()[self->at] = b; ; self->at += 1; ; ; return true; ; } (declare-fun var25___slice__mut_slice__push__t0 () (_ BitVec 64)) (declare-fun var26_true__t0 () Bool) (assert (= var26_true__t0 (theory1_safe var25___slice__mut_slice__push__t0) ) ) (assert var26_true__t0 ) ; : /home/aep/proj/zz/modules/slice/./src/mut_slice.zz:68 ; export fn push16(MutSlice mut * self, u16 b) -> bool ; where self->slice.size >= 2 ; model self->at <= self->slice.size ; { ; if self->at > self->slice.size - 2 { ; return false; ; } ; ; c_string::memcpy(self->mem() + self->at, &b, 2); ; self->at += 2; ; ; return true; ; } (declare-fun var27___slice__mut_slice__push16__t0 () (_ BitVec 64)) (declare-fun var28_true__t0 () Bool) (assert (= var28_true__t0 (theory1_safe var27___slice__mut_slice__push16__t0) ) ) (assert var28_true__t0 ) ; : /home/aep/proj/zz/modules/slice/./src/mut_slice.zz:82 ; export fn push32(MutSlice mut * self, u32 b) -> bool ; where self->slice.size >= 4 ; model self->at <= self->slice.size ; { ; if self->at > self->slice.size - 4 { ; return false; ; } ; ; c_string::memcpy(self->mem() + self->at, &b, 4); ; self->at += 4; ; ; return true; ; } (declare-fun var29___slice__mut_slice__push32__t0 () (_ BitVec 64)) (declare-fun var30_true__t0 () Bool) (assert (= var30_true__t0 (theory1_safe var29___slice__mut_slice__push32__t0) ) ) (assert var30_true__t0 ) ; : /home/aep/proj/zz/modules/slice/./src/mut_slice.zz:96 ; export fn push64(MutSlice mut * self, u64 b) -> bool ; where self->slice.size > 8 ; { ; if self->at > self->slice.size - 8 { ; return false; ; } ; ; c_string::memcpy(self->mem() + self->at, &b, 8); ; self->at += 8; ; ; return true; ; } (declare-fun var31___slice__mut_slice__push64__t0 () (_ BitVec 64)) (declare-fun var32_true__t0 () Bool) (assert (= var32_true__t0 (theory1_safe var31___slice__mut_slice__push64__t0) ) ) (assert var32_true__t0 ) ; : /home/aep/proj/zz/modules/string/./src/lib.zz:53 ; export fn clear(String+tail mut * self) ; model self->len == 0 ; model nullterm(self->mem) ; { ; c_string::memset(self->mem, 0, tail); ; self->len = 0; ; ; static_attest(nullterm(self->mem)); ; } (declare-fun var33___string__clear__t0 () (_ BitVec 64)) (declare-fun var34_true__t0 () Bool) (assert (= var34_true__t0 (theory1_safe var33___string__clear__t0) ) ) (assert var34_true__t0 ) ; : /home/aep/proj/zz/modules/string/./src/lib.zz:63 ; export fn push(String+t mut * self, char cstr) -> bool ; where t > 2 ; model self->len < t ; model nullterm(self->mem) ; { ; static_attest(self->len < t); ; static_attest(nullterm(self->mem)); ; ; if self->len > t - 2 { ; return false; ; } ; ; static_attest(self->len < len(self->mem)); ; (self->mem)[self->len] = cstr; ; self->len += 1; ; ; return true; ; } (declare-fun var35___string__push__t0 () (_ BitVec 64)) (declare-fun var36_true__t0 () Bool) (assert (= var36_true__t0 (theory1_safe var35___string__push__t0) ) ) (assert var36_true__t0 ) ; : /home/aep/proj/zz/modules/string/./src/lib.zz:82 ; export fn pop(String+t mut * self) -> bool ; model self->len < t ; { ; static_attest(self->len < t); ; ; if self->len == 0 { ; return false; ; } ; self->len -= 1; ; (self->mem)[self->len] = 0; ; return true; ; } (declare-fun var37___string__pop__t0 () (_ BitVec 64)) (declare-fun var38_true__t0 () Bool) (assert (= var38_true__t0 (theory1_safe var37___string__pop__t0) ) ) (assert var38_true__t0 ) ; : /home/aep/proj/zz/modules/string/./src/lib.zz:313 ; export fn strlen(char *s) -> usize ; where nullterm(s) ; model return == len(s) ; { ; usize l = (usize)c_string::strlen(s); ; static_attest(l == len(s)); ; return l; ; } (declare-fun var39___string__strlen__t0 () (_ BitVec 64)) (declare-fun var40_true__t0 () Bool) (assert (= var40_true__t0 (theory1_safe var39___string__strlen__t0) ) ) (assert var40_true__t0 ) ; : /home/aep/proj/zz/modules/string/./src/lib.zz:95 ; export fn append_cstr(String+t mut * self, char * cstr) ; where nullterm(cstr) ; model nullterm(self->mem) ; model self->len < t ; { ; static_attest(self->len < t); ; ; usize mut inlen = strlen(cstr); ; ; if inlen + self->len > t - 1 { ; inlen = t - 1 - self->len; ; } ; ; c_string::memcpy(self->mem + self->len, cstr, inlen); ; self->len += inlen; ; ; static_attest(nullterm(self->mem)) ; } (declare-fun var41___string__append_cstr__t0 () (_ BitVec 64)) (declare-fun var42_true__t0 () Bool) (assert (= var42_true__t0 (theory1_safe var41___string__append_cstr__t0) ) ) (assert var42_true__t0 ) ; : /home/aep/proj/zz/modules/string/./src/lib.zz:114 ; export fn append(String+t mut * self, String+t2 * other) ; model self->len < t ; model nullterm(self->mem) ; { ; static_attest(self->len < t); ; ; usize mut inlen = other->len; ; ; if inlen + self->len > t - 1 { ; inlen = t - 1 - self->len; ; } ; ; c_string::memcpy(self->mem + self->len, other->mem, inlen); ; self->len += inlen; ; ; static_attest(nullterm(self->mem)) ; } (declare-fun var43___string__append__t0 () (_ BitVec 64)) (declare-fun var44_true__t0 () Bool) (assert (= var44_true__t0 (theory1_safe var43___string__append__t0) ) ) (assert var44_true__t0 ) ; : /home/aep/proj/zz/modules/string/./src/lib.zz:133 ; export fn append_bytes(String+t mut* self, u8* bytes, usize mut inlen) ; where len(bytes) >= inlen ; model self->len < t ; model nullterm(self->mem) ; { ; static_attest(self->len < t); ; ; if inlen + self->len > t - 1 { ; inlen = t - 1 - self->len; ; } ; ; c_string::memcpy(self->mem + self->len, bytes, inlen); ; self->len += inlen; ; ; static_attest(nullterm(self->mem)) ; } (declare-fun var45___string__append_bytes__t0 () (_ BitVec 64)) (declare-fun var46_true__t0 () Bool) (assert (= var46_true__t0 (theory1_safe var45___string__append_bytes__t0) ) ) (assert var46_true__t0 ) ; : /home/aep/proj/zz/modules/string/./src/lib.zz:183 ; export fn eq_cstr(String+tail* self, char * unsafe b) -> bool ; where nullterm(b) ; { ; return as(c_string::strcmp(self->mem,b)) == 0; ; } (declare-fun var47___string__eq_cstr__t0 () (_ BitVec 64)) (declare-fun var48_true__t0 () Bool) (assert (= var48_true__t0 (theory1_safe var47___string__eq_cstr__t0) ) ) (assert var48_true__t0 ) ; : /home/aep/proj/zz/modules/string/./src/lib.zz:196 ; export fn starts_with_cstr(String+tail* self, char *unsafe a) -> bool { ; usize alen = as(c_string::strlen(a)); ; if alen > self->len { ; return false; ; } ; return as(c_string::strncmp(self->mem,a,alen)) == 0; ; } (declare-fun var49___string__starts_with_cstr__t0 () (_ BitVec 64)) (declare-fun var50_true__t0 () Bool) (assert (= var50_true__t0 (theory1_safe var49___string__starts_with_cstr__t0) ) ) (assert var50_true__t0 ) ; : /home/aep/proj/zz/modules/string/./src/lib.zz:204 ; export fn fgets(String+tail mut* self, FILE mut * unsafe stream) -> bool ; { ; static_attest(self->len < tail); ; ; char *rr = (char*)stdio::fgets(self->mem + self->len, tail - self->len, stream); ; if rr == 0 { ; return false; ; } ; ; char * extmem = self->mem + self->len; ; static_attest(safe(extmem)); ; static_attest(nullterm(extmem)); ; self->len += strlen(extmem); ; return true; ; } (declare-fun var51___string__fgets__t0 () (_ BitVec 64)) (declare-fun var52_true__t0 () Bool) (assert (= var52_true__t0 (theory1_safe var51___string__fgets__t0) ) ) (assert var52_true__t0 ) ; : /home/aep/proj/zz/modules/string/./src/lib.zz:222 ; export fn substr(String+tail *self, usize from, usize mut size, String+tail2 mut* other) ; where tail > 0 ; where tail2 > 0 ; model self->len < tail ; model other->len < tail2 ; { ; static_attest(other->len < len(other->mem)); ; static_attest(self->len < tail); ; ; if self->len == 0 { ; return; ; } ; ; if from >= self->len { ; return; ; } ; ; if size == 0 { ; size = self->len; ; } ; ; if from + size >= self->len { ; size = self->len - from; ; } ; ; //printf("A len1: %zu, len2: %zu, from: %zu, size: %zu\n", ; // self->len, other->len, from, size); ; ; if other->len + size + 1 >= tail2 { ; if other->len + 1 >= tail2 { ; return; ; } ; size = tail2 - 1 - other->len; ; } ; ; //TODO i'm not sure what ssa is confused about ; static_attest(size + other->len < tail2); ; ; //printf("B len1: %zu, len2: %zu, from: %zu, size: %zu\n", ; // self->len, other->len, from, size); ; ; ; if size == 0 { ; return; ; } ; ; c_string::memcpy(other->mem + other->len, self->mem + from, size); ; (other->mem)[size + other->len] = 0; ; other->len += size; ; } (declare-fun var53___string__substr__t0 () (_ BitVec 64)) (declare-fun var54_true__t0 () Bool) (assert (= var54_true__t0 (theory1_safe var53___string__substr__t0) ) ) (assert var54_true__t0 ) ; : /home/aep/proj/zz/modules/string/./src/lib.zz:277 ; export fn split(String+tail *self, char token, usize mut *iterator, String+tail2 mut* other) -> bool ; model self->len < tail ; where other->len < tail2 ; model other->len < tail2 ; { ; static_attest(self->len < tail); ; ; usize start = *iterator; ; ; if *iterator >= self->len { ; return false; ; } ; ; for (; *iterator < self->len; (*iterator)++) { ; if (self->mem)[*iterator] == token { ; break; ; } ; } ; ; usize size = *iterator - start; ; *iterator += 1; ; if size == 0 { ; return true; ; } ; ; substr(self, start, size, other); ; return true; ; } (declare-fun var55___string__split__t0 () (_ BitVec 64)) (declare-fun var56_true__t0 () Bool) (assert (= var56_true__t0 (theory1_safe var55___string__split__t0) ) ) (assert var56_true__t0 ) ; : /home/aep/proj/zz/modules/string/./src/lib.zz:307 ; export fn space(String+tail *self) -> usize ; model return == tail - self->len ; { ; return tail - self->len; ; } (declare-fun var57___string__space__t0 () (_ BitVec 64)) (declare-fun var58_true__t0 () Bool) (assert (= var58_true__t0 (theory1_safe var57___string__space__t0) ) ) (assert var58_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/protonerf/./src/lib.zz:5 ; FieldType (declare-fun var60___protonerf__FieldType__Skip__t0 () (_ BitVec 64)) (assert (= var60___protonerf__FieldType__Skip__t0 (_ bv0 64)) ) (declare-fun var61___protonerf__FieldType__Int32__t0 () (_ BitVec 64)) (assert (= var61___protonerf__FieldType__Int32__t0 (_ bv1 64)) ) (declare-fun var62___protonerf__FieldType__Int64__t0 () (_ BitVec 64)) (assert (= var62___protonerf__FieldType__Int64__t0 (_ bv2 64)) ) (declare-fun var63___protonerf__FieldType__Uint32__t0 () (_ BitVec 64)) (assert (= var63___protonerf__FieldType__Uint32__t0 (_ bv3 64)) ) (declare-fun var64___protonerf__FieldType__Uint64__t0 () (_ BitVec 64)) (assert (= var64___protonerf__FieldType__Uint64__t0 (_ bv4 64)) ) (declare-fun var65___protonerf__FieldType__Sint32__t0 () (_ BitVec 64)) (assert (= var65___protonerf__FieldType__Sint32__t0 (_ bv5 64)) ) (declare-fun var66___protonerf__FieldType__Sint64__t0 () (_ BitVec 64)) (assert (= var66___protonerf__FieldType__Sint64__t0 (_ bv6 64)) ) (declare-fun var67___protonerf__FieldType__Bool__t0 () (_ BitVec 64)) (assert (= var67___protonerf__FieldType__Bool__t0 (_ bv7 64)) ) (declare-fun var68___protonerf__FieldType__Enum__t0 () (_ BitVec 64)) (assert (= var68___protonerf__FieldType__Enum__t0 (_ bv8 64)) ) (declare-fun var69___protonerf__FieldType__Fixed64__t0 () (_ BitVec 64)) (assert (= var69___protonerf__FieldType__Fixed64__t0 (_ bv9 64)) ) (declare-fun var70___protonerf__FieldType__Sfixed64__t0 () (_ BitVec 64)) (assert (= var70___protonerf__FieldType__Sfixed64__t0 (_ bv10 64)) ) (declare-fun var71___protonerf__FieldType__Double__t0 () (_ BitVec 64)) (assert (= var71___protonerf__FieldType__Double__t0 (_ bv11 64)) ) (declare-fun var72___protonerf__FieldType__String__t0 () (_ BitVec 64)) (assert (= var72___protonerf__FieldType__String__t0 (_ bv12 64)) ) (declare-fun var73___protonerf__FieldType__Bytes__t0 () (_ BitVec 64)) (assert (= var73___protonerf__FieldType__Bytes__t0 (_ bv13 64)) ) (declare-fun var74___protonerf__FieldType__Message__t0 () (_ BitVec 64)) (assert (= var74___protonerf__FieldType__Message__t0 (_ bv14 64)) ) (declare-fun var75___protonerf__FieldType__Repeated__t0 () (_ BitVec 64)) (assert (= var75___protonerf__FieldType__Repeated__t0 (_ bv15 64)) ) (declare-fun var76___protonerf__FieldType__Fixed32__t0 () (_ BitVec 64)) (assert (= var76___protonerf__FieldType__Fixed32__t0 (_ bv16 64)) ) (declare-fun var77___protonerf__FieldType__Sfixed32__t0 () (_ BitVec 64)) (assert (= var77___protonerf__FieldType__Sfixed32__t0 (_ bv17 64)) ) (declare-fun var78___protonerf__FieldType__Float__t0 () (_ BitVec 64)) (assert (= var78___protonerf__FieldType__Float__t0 (_ bv18 64)) ) ; : /home/aep/proj/devguard/carrier/modules/protonerf/./src/lib.zz:27 ; export fntype message_encoding_fn(usize index) -> FieldType; ; : /home/aep/proj/devguard/carrier/modules/protonerf/./src/lib.zz:63 ; Decoder ; : /home/aep/proj/devguard/carrier/modules/protonerf/./src/lib.zz:71 ; export fn decode(message_encoding_fn instructions, u8 *mem, usize size) -> Decoder { ; return Decoder { ; mem: mem, ; size: size, ; instructions: instructions, ; }; ; } (declare-fun var81___protonerf__decode__t0 () (_ BitVec 64)) (declare-fun var82_true__t0 () Bool) (assert (= var82_true__t0 (theory1_safe var81___protonerf__decode__t0) ) ) (assert var82_true__t0 ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:11 ; Err ; : /home/aep/proj/zz/modules/err/./src/lib.zz:43 ; export fn backtrace(Err+tail mut* self, char * unsafe file, char * unsafe scope, usize line) ; { ; if tail > 0 { ; static_attest((self->locations).len < tail); ; string::format(&(self->locations), "\n %s:%zu \t%s", file, line, scope); ; } ; } (declare-fun var84___err__backtrace__t0 () (_ BitVec 64)) (declare-fun var85_true__t0 () Bool) (assert (= var85_true__t0 (theory1_safe var84___err__backtrace__t0) ) ) (assert var85_true__t0 ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:9 ; pub theory checked(Err * self) -> bool; (declare-fun theory86___err__checked ((_ BitVec 64)) Bool); theory ::err::checked ; : /home/aep/proj/zz/modules/err/./src/lib.zz:76 ; export fn fail( ; Err+tail mut* self, ; u8 e, ; char* callsite_source unsafe file, ; char* callsite_source unsafe scope, ; usize callsite_source line, ; char* fmt, ; ... ; ) ; where checked(*self) ; model checked(*self) ; { ; self->error = e; ; ; va_list mut vargs; ; va_start(vargs, fmt); ; vsnprintf(self->description, sizeof(self->description), fmt, vargs); ; ; string::clear(&(self->locations)); ; backtrace(self, file, scope, line); ; static_attest(checked(*self)); ; } (declare-fun var87___err__fail__t0 () (_ BitVec 64)) (declare-fun var88_true__t0 () Bool) (assert (= var88_true__t0 (theory1_safe var87___err__fail__t0) ) ) (assert var88_true__t0 ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:18 ; export fn new(Err+tail mut *self) ; model checked(*self) ; { ; memset(self, 0, sizeof(Err)); ; string::clear(&(self->locations)); ; static_attest(checked(*self)); ; } (declare-fun var89___err__new__t0 () (_ BitVec 64)) (declare-fun var90_true__t0 () Bool) (assert (= var90_true__t0 (theory1_safe var89___err__new__t0) ) ) (assert var90_true__t0 ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:51 ; export fn fail_with_errno( ; Err+tail mut* self, ; char* callsite_source unsafe file, ; char* callsite_source unsafe scope, ; usize callsite_source line, ; char* fmt, ; ... ; ) ; where checked(*self) ; model checked(*self) ; { ; self->error = (u8)errno; ; ; va_list mut vargs; ; va_start(vargs, fmt); ; vsnprintf(self->description, sizeof(self->description), fmt, vargs); ; ; strncat(self->description, " : ", as(sizeof(self->description)) - as(strlen(self->description))); ; strncat(self->description, strerror(errno), as(sizeof(self->description)) - as(strlen(self->description))); ; ; string::clear(&(self->locations)); ; backtrace(self, file, scope, line); ; static_attest(checked(*self)); ; } (declare-fun var91___err__fail_with_errno__t0 () (_ BitVec 64)) (declare-fun var92_true__t0 () Bool) (assert (= var92_true__t0 (theory1_safe var91___err__fail_with_errno__t0) ) ) (assert var92_true__t0 ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:99 ; export fn abort( ; Err+tail mut* self, ; char* callsite_source unsafe file, ; char* callsite_source unsafe scope, ; usize callsite_source line, ; ) ; model checked(*self) ; { ; if (self->error != 0) { ; static_attest(checked(*self)); ; backtrace(self, file, scope, line); ; fprintf(stderr, "fatal error %u: %s%s\n", self->error, self->description, (self->locations).mem); ; cabort(); ; } ; static_attest(checked(*self)); ; } (declare-fun var93___err__abort__t0 () (_ BitVec 64)) (declare-fun var94_true__t0 () Bool) (assert (= var94_true__t0 (theory1_safe var93___err__abort__t0) ) ) (assert var94_true__t0 ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:116 ; export fn eprint(Err+tail mut* self) ; { ; fprintf(stderr, "error %u: %s%s\n", self->error, self->description, (self->locations).mem); ; } (declare-fun var95___err__eprint__t0 () (_ BitVec 64)) (declare-fun var96_true__t0 () Bool) (assert (= var96_true__t0 (theory1_safe var95___err__eprint__t0) ) ) (assert var96_true__t0 ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:121 ; export fn to_str( ; Err mut* self, ; char mut *dest, ; usize dest_len, ; ) ; { ; snprintf(dest, dest_len, "%s%s\n", self->description, (self->locations).mem); ; } (declare-fun var97___err__to_str__t0 () (_ BitVec 64)) (declare-fun var98_true__t0 () Bool) (assert (= var98_true__t0 (theory1_safe var97___err__to_str__t0) ) ) (assert var98_true__t0 ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:26 ; export fn check( ; Err+tail mut* self, ; char* callsite_source unsafe file, ; char* callsite_source unsafe scope, ; usize callsite_source line, ; ) -> bool ; model checked(*self) ; { ; if (self->error != 0) { ; backtrace(self, file, scope, line); ; static_attest(checked(*self)); ; return true; ; } ; return false; ; } (declare-fun var99___err__check__t0 () (_ BitVec 64)) (declare-fun var100_true__t0 () Bool) (assert (= var100_true__t0 (theory1_safe var99___err__check__t0) ) ) (assert var100_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/protonerf/./src/lib.zz:79 ; Value ; : /home/aep/proj/devguard/carrier/modules/protonerf/./src/lib.zz:86 ; Field ; : /home/aep/proj/devguard/carrier/modules/protonerf/./src/lib.zz:164 ; export fn next(Decoder mut*self, err::Err+et mut*e) -> Field ; where err::checked(*e) ; { ; ; for (; self->at < self->size; (self->at)++) { ; static_attest(self->at < len(self->mem)); ; u8 mut b = self->mem[self->at]; ; ; ; u8 index = b >> 3; ; ; switch (b & 7) { ; ; // Varint ; 0 => { ; u64 val = self->read_varint(e); ; if err::check(e) {return Field{valid: false}; } ; (self->at)++; ; ; return Field { ; valid: true, ; index: index, ; value: Value { ; v_u64: val, ; } ; }; ; } ; ; // Fixed64 ; 1 => { ; if (self->at + 8) >= self->size { ; err::fail(e, 3, "short read"); ; if err::check(e) {return Field{valid: false}; } ; } ; static_attest(self->at < len(self->mem)); ; u64 val = *(u64*)(self->mem + self->at); ; self->at += 8; ; ; return Field { ; valid: true, ; index: index, ; value: Value { ; v_u64: val, ; } ; }; ; } ; ; // Bytes ; 2 => { ; u64 l = self->read_varint(e); ; if err::check(e) {return Field{valid: false};} ; if ((u64)(self->at) + l) >= (u64)self->size { ; err::fail(e, 3, "short read"); ; if err::check(e) {return Field{valid: false}; } ; } ; static_attest(self->at + 1 < len(self->mem)); ; u8*a = self->mem + (self->at + 1); ; self->at += 1 + (usize)l; ; ; return Field { ; valid: true, ; index: index, ; value: Value { ; v_len: l, ; }, ; a: a, ; }; ; } ; ; // Fixed32 ; 5 => { ; if (self->at + 4) >= self->size { ; err::fail(e, 3, "short read"); ; if err::check(e) {return Field{valid: false}; } ; } ; static_attest(self->at < len(self->mem)); ; u64 val = *(u64*)(self->mem + self->at); ; self->at += 4; ; ; return Field { ; valid: true, ; index: index, ; value: Value { ; v_u64: val, ; } ; }; ; } ; default => { ; err::fail(e, 2, "invalid wire type %u", b & 7); ; } ; } ; } ; ; return Field{valid: false}; ; } (declare-fun var103___protonerf__next__t0 () (_ BitVec 64)) (declare-fun var104_true__t0 () Bool) (assert (= var104_true__t0 (theory1_safe var103___protonerf__next__t0) ) ) (assert var104_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/protonerf/./src/lib.zz:141 ; fn read_varint(Decoder mut*self, err::Err+et mut*e) -> u64 ; where err::checked(*e) ; { ; u64 mut val = 0; ; for (u64 mut intlen =0;;intlen++) { ; (self->at)++; ; if self->at >= self->size { ; err::fail(e, 3, "short read"); ; return 0; ; } ; static_attest(self->at < len(self->mem)); ; u8 b = self->mem[self->at]; ; val |= (u64)(b & 127) << (7 * intlen); ; if (b & 128) == 0 { ; break; ; } ; } ; return val; ; } (declare-fun var105___protonerf__read_varint__t0 () (_ BitVec 64)) (declare-fun var106_true__t0 () Bool) (assert (= var106_true__t0 (theory1_safe var105___protonerf__read_varint__t0) ) ) (assert var106_true__t0 ) ; : ./src/stream.zz:7 ; export fntype stream_fn(void mut*stream, void mut* chan, err::Err+et mut *e, Slice *b) -> bool; ; : /home/aep/proj/zz/modules/byteorder/./src/lib.zz:51 ; pub inline fn to_be64(u64 x) -> u64 { ; BYTE_ORDER; ; @{{ ; #if BYTE_ORDER == LITTLE_ENDIAN ; return byteorder_bswap_64(x); ; #else ; return x; ; #endif ; }}@ ; } (declare-fun var108___byteorder__to_be64__t0 () (_ BitVec 64)) (declare-fun var109_true__t0 () Bool) (assert (= var109_true__t0 (theory1_safe var108___byteorder__to_be64__t0) ) ) (assert var109_true__t0 ) ; : /home/aep/proj/zz/modules/std/./src/lib.zz:3 ; pub fn memcpy(void mut * dst, void *src, usize n) ; where len(dst) >= n ; where len(src) >= n ; { ; libc::memcpy(dst, src, n); ; } (declare-fun var110___std__memcpy__t0 () (_ BitVec 64)) (declare-fun var111_true__t0 () Bool) (assert (= var111_true__t0 (theory1_safe var110___std__memcpy__t0) ) ) (assert var111_true__t0 ) ; : ./src/crc8.zz:91 ; export fn broken_crc8(u8 mut crc, u8* data, usize length) -> u8 ; where len(data) >= length ; { ; for(usize mut i = 0; i < length; i++) { ; if ((crc ^ data[i]) % 2 > 0) { ; crc = 84; ; } else { ; crc = 0; ; } ; } ; return crc; ; } (declare-fun var112___carrier__crc8__broken_crc8__t0 () (_ BitVec 64)) (declare-fun var113_true__t0 () Bool) (assert (= var113_true__t0 (theory1_safe var112___carrier__crc8__broken_crc8__t0) ) ) (assert var113_true__t0 ) ; : /home/aep/proj/zz/modules/byteorder/./src/lib.zz:23 ; pub inline fn to_be16(u16 x) -> u16 { ; BYTE_ORDER; ; @{{ ; #if BYTE_ORDER == LITTLE_ENDIAN ; return byteorder_bswap_16(x); ; #else ; return x; ; #endif ; }}@ ; } (declare-fun var114___byteorder__to_be16__t0 () (_ BitVec 64)) (declare-fun var115_true__t0 () Bool) (assert (= var115_true__t0 (theory1_safe var114___byteorder__to_be16__t0) ) ) (assert var115_true__t0 ) ; : /home/aep/proj/zz/modules/byteorder/./src/lib.zz:96 ; pub inline fn to_le64(u64 x) -> u64 { ; BYTE_ORDER; ; @{{ ; #if BYTE_ORDER == BIG_ENDIAN ; return byteorder_bswap_64(x); ; #else ; return x; ; #endif ; }}@ ; } (declare-fun var116___byteorder__to_le64__t0 () (_ BitVec 64)) (declare-fun var117_true__t0 () Bool) (assert (= var117_true__t0 (theory1_safe var116___byteorder__to_le64__t0) ) ) (assert var117_true__t0 ) ; : ./src/cipher.zz:12 ; CipherState ; : ./src/cipher.zz:22 ; export fn encrypt_ad( ; CipherState mut* self, ; err::Err+et mut* e, ; u8* unsafe authtext, ; usize authtext_len, ; u8 * plain, ; usize plainlen, ; u64 nonce, ; u8 mut* ciphertext, ; usize cipherlen_max, ; ) -> usize ; where err::checked(*e) ; where len(ciphertext) >= cipherlen_max ; where len(plain) >= plainlen ; where len(ciphertext) > plainlen ; model return <= cipherlen_max ; { ; assert(self->has_key); ; ; usize cipherlen = plainlen + 16; ; assert(cipherlen_max >= cipherlen); ; static_attest(cipherlen_max >= cipherlen); ; ; u8 mut* mac = ciphertext + plainlen; ; ; //noise spec: The 96-bit nonce is formed by encoding 32 bits of zeros followed by little-endian encoding of n. ; u8 mut nonce12[12] = {0}; ; u64 nonce_le = byteorder::to_le64(nonce); ; memcpy(nonce12 + 4, (u8*)&nonce_le, 8); ; ; int xr = as(hacl_chacha::Hacl_Chacha20Poly1305_aead_encrypt( ; ciphertext, ; mac, ; (u8 mut*)plain, ; plainlen, ; (u8 mut*)authtext, ; authtext_len, ; self->key, ; nonce12 ; )); ; if xr != 0 { ; err::fail(e, (u8)xr, "encrypt"); ; return 0; ; } ; return cipherlen; ; } (declare-fun var119___carrier__cipher__encrypt_ad__t0 () (_ BitVec 64)) (declare-fun var120_true__t0 () Bool) (assert (= var120_true__t0 (theory1_safe var119___carrier__cipher__encrypt_ad__t0) ) ) (assert var120_true__t0 ) ; : ./src/cipher.zz:17 ; export fn init(CipherState mut * self, u8 *k) { ; memcpy(self->key, k, 32); ; self->has_key = true; ; } (declare-fun var121___carrier__cipher__init__t0 () (_ BitVec 64)) (declare-fun var122_true__t0 () Bool) (assert (= var122_true__t0 (theory1_safe var121___carrier__cipher__init__t0) ) ) (assert var122_true__t0 ) ; : ./src/cipher.zz:69 ; export fn decrypt_ad( ; CipherState mut* self, ; err::Err+et mut* e, ; u8* unsafe authtext, ; usize authtext_len, ; u8 * ciphertext, ; usize cipherlen, ; u64 nonce, ; u8 mut* plain, ; usize plainlen_max, ; ) -> usize ; where err::checked(*e) ; where len(ciphertext) >= cipherlen ; where len(plain) >= plainlen_max ; { ; assert(self->has_key); ; usize plainlen = cipherlen - 16; ; ; assert(plainlen_max >= plainlen); ; static_attest(plainlen_max >= plainlen); ; ; assert(cipherlen > 16); ; static_attest(cipherlen > 16); ; ; u8 * mac = ciphertext + plainlen; ; ; u8 mut nonce12[12] = {0}; ; u64 nonce_le = byteorder::to_le64(nonce); ; memcpy(nonce12 + 4, (u8*)&nonce_le, 8); ; ; int xr = as(hacl_chacha::Hacl_Chacha20Poly1305_aead_decrypt( ; plain, ; (u8 mut*)ciphertext, ; plainlen, ; (u8 mut*)mac, ; (u8 mut*)authtext, ; authtext_len, ; self->key, ; nonce12 ; )); ; if xr != 0 { ; err::fail(e, (u8)xr, "decrypt"); ; return 0; ; } ; return plainlen; ; } (declare-fun var123___carrier__cipher__decrypt_ad__t0 () (_ BitVec 64)) (declare-fun var124_true__t0 () Bool) (assert (= var124_true__t0 (theory1_safe var123___carrier__cipher__decrypt_ad__t0) ) ) (assert var124_true__t0 ) ; : ./src/cipher.zz:136 ; export fn decrypt( ; CipherState mut* self, ; err::Err+et set mut* e, ; u8 * ciphertext, ; usize cipherlen, ; u64 nonce, ; u8 mut* plain, ; usize plainlen_max, ; ) -> usize ; where err::checked(*e) ; where len(ciphertext) >= cipherlen ; where len(plain) >= plainlen_max ; { ; return decrypt_ad(self, e, 0, 0, ciphertext, cipherlen, nonce, plain, plainlen_max); ; } (declare-fun var125___carrier__cipher__decrypt__t0 () (_ BitVec 64)) (declare-fun var126_true__t0 () Bool) (assert (= var126_true__t0 (theory1_safe var125___carrier__cipher__decrypt__t0) ) ) (assert var126_true__t0 ) ; : ./src/cipher.zz:117 ; export fn encrypt( ; CipherState mut* self, ; err::Err+et set mut* e, ; u8 * plain, ; usize plainlen, ; u64 nonce, ; u8 mut* ciphertext, ; usize cipherlen_max, ; ) -> usize ; where err::checked(*e) ; where len(ciphertext) >= cipherlen_max ; where len(plain) >= plainlen ; where len(ciphertext) > plainlen ; model return <= cipherlen_max ; { ; return encrypt_ad(self, e, 0,0, plain, plainlen, nonce, ciphertext, cipherlen_max); ; } (declare-fun var127___carrier__cipher__encrypt__t0 () (_ BitVec 64)) (declare-fun var128_true__t0 () Bool) (assert (= var128_true__t0 (theory1_safe var127___carrier__cipher__encrypt__t0) ) ) (assert var128_true__t0 ) ; : /home/aep/proj/zz/modules/pool/./src/lib.zz:7 ; Pool ; : ./src/pq.zz:16 ; Frame ; : ./src/pq.zz:25 ; Q ; : /home/aep/proj/zz/modules/pool/./src/lib.zz:18 ; export fn new(Pool+pt mut *self, u8 mut blocksize) ; where pt > pt/(usize)blocksize ; { ; self->blocksize = blocksize; ; usize usedmemlen = pt / (usize)blocksize / 8; ; ; self->used = self->mem; ; self->pool = self->mem + usedmemlen; ; self->poolsize = pt - usedmemlen; ; ; memset(self->used, 0, usedmemlen); ; } (declare-fun var132___pool__new__t0 () (_ BitVec 64)) (declare-fun var133_true__t0 () Bool) (assert (= var133_true__t0 (theory1_safe var132___pool__new__t0) ) ) (assert var133_true__t0 ) ; : /home/aep/proj/zz/modules/pool/./src/lib.zz:5 ; pub theory member(void * m, Pool*p) -> bool; (declare-fun theory134___pool__member ((_ BitVec 64) (_ BitVec 64)) Bool); theory ::pool::member ; : /home/aep/proj/zz/modules/pool/./src/lib.zz:131 ; fn bitarray_test(u8 mut* a, usize index) -> bool ; where len(a) > index/8 ; { ; return (a[index/8] & (u8)(1<<(index % 8))) > 0; ; } (declare-fun var135___pool__bitarray_test__t0 () (_ BitVec 64)) (declare-fun var136_true__t0 () Bool) (assert (= var136_true__t0 (theory1_safe var135___pool__bitarray_test__t0) ) ) (assert var136_true__t0 ) ; : /home/aep/proj/zz/modules/pool/./src/lib.zz:119 ; fn bitarray_set(u8 mut* a, usize index) ; where len(a) > index/8 ; { ; a[index/8] |= (u8)(1<<(index % 8)); ; } (declare-fun var137___pool__bitarray_set__t0 () (_ BitVec 64)) (declare-fun var138_true__t0 () Bool) (assert (= var138_true__t0 (theory1_safe var137___pool__bitarray_set__t0) ) ) (assert var138_true__t0 ) ; : /home/aep/proj/zz/modules/pool/./src/lib.zz:31 ; export fn alloc(Pool mut *self, usize mut size) -> void mut* ; model member(return, self) ; { ; static_attest(member(0, self)); ; ; // one byte at the front and one at the back overhead ; size += 2; ; ; usize mut blocks = size/(usize)self->blocksize; ; if size % (usize)self->blocksize != 0 { ; blocks += 1; ; } ; if blocks > 256 { ; return 0; ; } ; ; for (usize mut i = 0; i < self->poolsize/(usize)self->blocksize ; i++) { ; ; // optimization with faster byte compare ; static_attest(i/8 < len(self->used)); ; if self->used[i/8] == 0xff { ; i+=7; ; continue; ; } ; ; ; static_attest(safe(self->used)); ; static_attest(len(self->used) == self->poolsize/(usize)self->blocksize); ; ; usize mut i2 = i; ; bool mut allfree = true; ; for (usize mut j = 0; j < blocks; j++) { ; ; if i2 >= self->poolsize/(usize)self->blocksize { ; allfree = false; ; break; ; } ; if bitarray_test(self->used, i2) { ; allfree = false; ; break; ; } ; ; i2++; ; } ; ; if allfree { ; void mut * mut mem = 0; ; unsafe { ; mem = self->pool + ((usize)self->blocksize * i); ; memset(mem, 0, size); ; *(u8 mut*)mem = blocks; ; mem = (u8 mut*)mem + 1; ; } ; ; for (usize mut j = 0; j < blocks; j++) { ; static_attest((i+j)/8 < len(self->used)); ; bitarray_set(self->used, i+j); ; } ; return mem; ; } ; } ; return 0; ; } (declare-fun var139___pool__alloc__t0 () (_ BitVec 64)) (declare-fun var140_true__t0 () Bool) (assert (= var140_true__t0 (theory1_safe var139___pool__alloc__t0) ) ) (assert var140_true__t0 ) ; : /home/aep/proj/zz/modules/pool/./src/lib.zz:125 ; fn bitarray_clear(u8 mut* a, usize index) ; where len(a) > index/8 ; { ; a[index/8] &= (u8)~(1<<(index % 8)); ; } (declare-fun var141___pool__bitarray_clear__t0 () (_ BitVec 64)) (declare-fun var142_true__t0 () Bool) (assert (= var142_true__t0 (theory1_safe var141___pool__bitarray_clear__t0) ) ) (assert var142_true__t0 ) ; : /home/aep/proj/zz/modules/pool/./src/lib.zz:95 ; export fn free(Pool mut *self, void * unsafe mut ptr) ; where member(ptr, self) ; { ; if ptr == 0 { ; return; ; } ; ; u8 mut blocks; ; usize mut startblock; ; unsafe { ; ptr = ((u8*)ptr) - 1; ; blocks = *(u8*)ptr; ; assert((usize)blocks < self->poolsize/(usize)self->blocksize); ; startblock = ((u8*)ptr - self->pool) / (usize)self->blocksize; ; assert(startblock < self->poolsize/(usize)self->blocksize); ; } ; ; for (usize mut i = startblock; i < startblock + (usize)blocks ; i++) { ; static_attest(safe(self->used)); ; static_attest(i/8 < len(self->used)); ; bitarray_clear(self->used, i); ; } ; } (declare-fun var143___pool__free__t0 () (_ BitVec 64)) (declare-fun var144_true__t0 () Bool) (assert (= var144_true__t0 (theory1_safe var143___pool__free__t0) ) ) (assert var144_true__t0 ) ; : ./src/stream.zz:6 ; export fntype close_fn(void mut*stream, void mut* chan, err::Err+et mut *e) -> bool; ; : ./src/stream.zz:12 ; Stream ; : ./src/peering.zz:5 ; Transport (declare-fun var148___carrier__peering__Transport__Tcp__t0 () (_ BitVec 64)) (assert (= var148___carrier__peering__Transport__Tcp__t0 (_ bv0 64)) ) (declare-fun var149___carrier__peering__Transport__Udp__t0 () (_ BitVec 64)) (assert (= var149___carrier__peering__Transport__Udp__t0 (_ bv1 64)) ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:10 ; Type (declare-fun var151___net__address__Type__Invalid__t0 () (_ BitVec 64)) (assert (= var151___net__address__Type__Invalid__t0 (_ bv0 64)) ) (declare-fun var152___net__address__Type__Ipv4__t0 () (_ BitVec 64)) (assert (= var152___net__address__Type__Ipv4__t0 (_ bv1 64)) ) (declare-fun var153___net__address__Type__Ipv6__t0 () (_ BitVec 64)) (assert (= var153___net__address__Type__Ipv6__t0 (_ bv2 64)) ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:16 ; Address ; : ./src/peering.zz:10 ; Path ; : /home/aep/proj/zz/modules/net/./src/address.zz:27 ; export fn valid(Address * self) -> bool { ; return self->type != Type::Invalid; ; } (declare-fun var156___net__address__valid__t0 () (_ BitVec 64)) (declare-fun var157_true__t0 () Bool) (assert (= var157_true__t0 (theory1_safe var156___net__address__valid__t0) ) ) (assert var157_true__t0 ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:377 ; static u8 hexmap[] = { ; 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, // 01234567 ; 0x08, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 89:;<=>? ; 0x00, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, // @ABCDEFG ; 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // HIJKLMNO ; }; ; : /home/aep/proj/zz/modules/net/./src/address.zz:377 ; { ; 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, // 01234567 ; 0x08, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 89:;<=>? ; 0x00, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, // @ABCDEFG ; 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // HIJKLMNO ; } ; : /home/aep/proj/zz/modules/net/./src/address.zz:378 ; 0x00 ; literal expr (declare-fun var159_literal_0__t0 () (_ BitVec 64)) (assert (= var159_literal_0__t0 (_ bv0 64)) ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:378 ; 0x01 ; literal expr (declare-fun var160_literal_1__t0 () (_ BitVec 64)) (assert (= var160_literal_1__t0 (_ bv1 64)) ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:378 ; 0x02 ; literal expr (declare-fun var161_literal_2__t0 () (_ BitVec 64)) (assert (= var161_literal_2__t0 (_ bv2 64)) ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:378 ; 0x03 ; literal expr (declare-fun var162_literal_3__t0 () (_ BitVec 64)) (assert (= var162_literal_3__t0 (_ bv3 64)) ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:378 ; 0x04 ; literal expr (declare-fun var163_literal_4__t0 () (_ BitVec 64)) (assert (= var163_literal_4__t0 (_ bv4 64)) ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:378 ; 0x05 ; literal expr (declare-fun var164_literal_5__t0 () (_ BitVec 64)) (assert (= var164_literal_5__t0 (_ bv5 64)) ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:378 ; 0x06 ; literal expr (declare-fun var165_literal_6__t0 () (_ BitVec 64)) (assert (= var165_literal_6__t0 (_ bv6 64)) ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:378 ; 0x07 ; literal expr (declare-fun var166_literal_7__t0 () (_ BitVec 64)) (assert (= var166_literal_7__t0 (_ bv7 64)) ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:379 ; 0x08 ; literal expr (declare-fun var167_literal_8__t0 () (_ BitVec 64)) (assert (= var167_literal_8__t0 (_ bv8 64)) ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:379 ; 0x09 ; literal expr (declare-fun var168_literal_9__t0 () (_ BitVec 64)) (assert (= var168_literal_9__t0 (_ bv9 64)) ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:379 ; 0x00 ; literal expr (declare-fun var169_literal_0__t0 () (_ BitVec 64)) (assert (= var169_literal_0__t0 (_ bv0 64)) ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:379 ; 0x00 ; literal expr (declare-fun var170_literal_0__t0 () (_ BitVec 64)) (assert (= var170_literal_0__t0 (_ bv0 64)) ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:379 ; 0x00 ; literal expr (declare-fun var171_literal_0__t0 () (_ BitVec 64)) (assert (= var171_literal_0__t0 (_ bv0 64)) ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:379 ; 0x00 ; literal expr (declare-fun var172_literal_0__t0 () (_ BitVec 64)) (assert (= var172_literal_0__t0 (_ bv0 64)) ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:379 ; 0x00 ; literal expr (declare-fun var173_literal_0__t0 () (_ BitVec 64)) (assert (= var173_literal_0__t0 (_ bv0 64)) ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:379 ; 0x00 ; literal expr (declare-fun var174_literal_0__t0 () (_ BitVec 64)) (assert (= var174_literal_0__t0 (_ bv0 64)) ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:380 ; 0x00 ; literal expr (declare-fun var175_literal_0__t0 () (_ BitVec 64)) (assert (= var175_literal_0__t0 (_ bv0 64)) ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:380 ; 0x0a ; literal expr (declare-fun var176_literal_10__t0 () (_ BitVec 64)) (assert (= var176_literal_10__t0 (_ bv10 64)) ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:380 ; 0x0b ; literal expr (declare-fun var177_literal_11__t0 () (_ BitVec 64)) (assert (= var177_literal_11__t0 (_ bv11 64)) ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:380 ; 0x0c ; literal expr (declare-fun var178_literal_12__t0 () (_ BitVec 64)) (assert (= var178_literal_12__t0 (_ bv12 64)) ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:380 ; 0x0d ; literal expr (declare-fun var179_literal_13__t0 () (_ BitVec 64)) (assert (= var179_literal_13__t0 (_ bv13 64)) ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:380 ; 0x0e ; literal expr (declare-fun var180_literal_14__t0 () (_ BitVec 64)) (assert (= var180_literal_14__t0 (_ bv14 64)) ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:380 ; 0x0f ; literal expr (declare-fun var181_literal_15__t0 () (_ BitVec 64)) (assert (= var181_literal_15__t0 (_ bv15 64)) ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:380 ; 0x00 ; literal expr (declare-fun var182_literal_0__t0 () (_ BitVec 64)) (assert (= var182_literal_0__t0 (_ bv0 64)) ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:381 ; 0x00 ; literal expr (declare-fun var183_literal_0__t0 () (_ BitVec 64)) (assert (= var183_literal_0__t0 (_ bv0 64)) ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:381 ; 0x00 ; literal expr (declare-fun var184_literal_0__t0 () (_ BitVec 64)) (assert (= var184_literal_0__t0 (_ bv0 64)) ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:381 ; 0x00 ; literal expr (declare-fun var185_literal_0__t0 () (_ BitVec 64)) (assert (= var185_literal_0__t0 (_ bv0 64)) ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:381 ; 0x00 ; literal expr (declare-fun var186_literal_0__t0 () (_ BitVec 64)) (assert (= var186_literal_0__t0 (_ bv0 64)) ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:381 ; 0x00 ; literal expr (declare-fun var187_literal_0__t0 () (_ BitVec 64)) (assert (= var187_literal_0__t0 (_ bv0 64)) ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:381 ; 0x00 ; literal expr (declare-fun var188_literal_0__t0 () (_ BitVec 64)) (assert (= var188_literal_0__t0 (_ bv0 64)) ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:381 ; 0x00 ; literal expr (declare-fun var189_literal_0__t0 () (_ BitVec 64)) (assert (= var189_literal_0__t0 (_ bv0 64)) ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:381 ; 0x00 ; literal expr (declare-fun var190_literal_0__t0 () (_ BitVec 64)) (assert (= var190_literal_0__t0 (_ bv0 64)) ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:377 ; { ; 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, // 01234567 ; 0x08, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 89:;<=>? ; 0x00, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, // @ABCDEFG ; 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // HIJKLMNO ; } (declare-fun var191_literal_array_191__t0 () (_ BitVec 64)) (declare-fun var192_true__t0 () Bool) (assert (= var192_true__t0 (theory1_safe var191_literal_array_191__t0) ) ) (assert var192_true__t0 ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:377 ; static u8 hexmap[] = { ; 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, // 01234567 ; 0x08, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 89:;<=>? ; 0x00, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, // @ABCDEFG ; 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // HIJKLMNO ; }; (declare-fun var193_safe_literal_array_191_____safe___net__address__hexmap___t0 () Bool) (assert (= var193_safe_literal_array_191_____safe___net__address__hexmap___t0 (theory1_safe var191_literal_array_191__t0) ) ) (declare-fun var158___net__address__hexmap__t1 () (_ BitVec 64)) (assert (= var193_safe_literal_array_191_____safe___net__address__hexmap___t0 (theory1_safe var158___net__address__hexmap__t1) ) ) (declare-fun var194_nullterm_literal_array_191_____nullterm___net__address__hexmap___t0 () Bool) (assert (= var194_nullterm_literal_array_191_____nullterm___net__address__hexmap___t0 (theory2_nullterm var191_literal_array_191__t0) ) ) (assert (= var194_nullterm_literal_array_191_____nullterm___net__address__hexmap___t0 (theory2_nullterm var158___net__address__hexmap__t1) ) ) (declare-fun var227_len___net__address__hexmap___t0 () (_ BitVec 64)) (assert (= var227_len___net__address__hexmap___t0 (theory0_len var158___net__address__hexmap__t1) ) ) (assert (= var227_len___net__address__hexmap___t0 (_ bv32 64)) ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:65 ; export fn from_str_ipv6(Address mut* self, char * s, usize slen) -> bool ; where len(s) >= slen ; where slen > 0 ; { ; memset(self, 0, sizeof(Address)); ; ; u8 mut ip[16] = {0}; ; u16 mut port = 0; ; ; usize mut at_part = 0; ; u32 mut parts[8] = {0}; ; ; int mut skip_at = -1; ; bool mut empty_part = false; ; for(usize mut i = 0; i < slen; i++) { ; char ch = s[i]; ; if ch == ':' { ; if i == 0 { ; empty_part = true; ; continue; ; } ; if empty_part { ; if skip_at != -1 { ; return false; ; } ; skip_at = (int)at_part; ; } ; empty_part = true; ; at_part += 1; ; if at_part > 7 { ; return false; ; } ; } else if (ch >= '0' && ch <= '9') || (ch >= 'a' && ch <= 'f') || (ch >= 'A' && ch <= 'F') { ; empty_part = false; ; u8 mut n = 0; ; unsafe { ; n = hexmap[(ch & 0x1f) ^ 0x10]; ; } ; if at_part > 7 { ; return false; ; } ; parts[at_part] = (parts[at_part] << 4) | (u32)n; ; if parts[at_part] > 0xffff { ; return false; ; } ; } else if ch == ']' && i + 2 < slen { ; i += 1; ; static_attest(i < len(s)); ; if s[i] != ':' { ; return false; ; } ; i += 1; ; for(; i < slen; i++) { ; char ch = s[i]; ; if ch >= '0' && ch <= '9' { ; uint nv = as(port * 10) + as(ch - '0'); ; if nv > 65535 { ; return false; ; } ; port = as(nv); ; } else { ; return false; ; } ; } ; } else { ; break; ; } ; } ; ; if at_part < 7 && skip_at == -1 { ; return false; ; } ; ; usize mut j = 0; ; usize mut i = 0; ; for (; j < 16 && i < 8; i++, j+=2) { ; if skip_at != -1 && (usize)skip_at == i { ; j += 2 * (7 - at_part); ; } else { ; u8 * p = (u8*)(&parts[i]); ; static_attest(j < 16); ; static_attest(len(p) == 2); ; ip[j] = p[1]; ; ip[j+1] = p[0]; ; } ; } ; ; self->set_ip(Type::Ipv6, ip); ; self->set_port(port); ; ; self->type = Type::Ipv6; ; return true; ; } (declare-fun var228___net__address__from_str_ipv6__t0 () (_ BitVec 64)) (declare-fun var229_true__t0 () Bool) (assert (= var229_true__t0 (theory1_safe var228___net__address__from_str_ipv6__t0) ) ) (assert var229_true__t0 ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:159 ; export fn from_str_ipv4(Address mut* self, char *s, usize slen) -> bool ; where len(s) >= slen ; { ; memset(self, 0, sizeof(Address)); ; ; u8 mut ip[4] = {0}; ; u16 mut port = 0; ; usize mut at = 0; ; ; for(usize mut i = 0; i < slen; i++) { ; char ch = s[i]; ; if ch >= '0' && ch <= '9' { ; uint nv = as(ip[at] * 10) + as(ch - '0'); ; if nv > 255 { ; return false; ; } ; ip[at] = as(nv); ; } else if ch == '.' { ; at += 1; ; if at == 4 { ; return false; ; } ; } else if ch == ':' { ; i += 1; ; for(; i < slen; i++) { ; char ch = s[i]; ; if ch >= '0' && ch <= '9' { ; uint nv = as(port * 10) + as(ch - '0'); ; if nv > 65535 { ; return false; ; } ; port = as(nv); ; } else { ; return false; ; } ; } ; } else { ; return false; ; } ; } ; if at != 3 { ; return false; ; } ; ; self->set_ip(Type::Ipv4, ip); ; self->set_port(port); ; ; self->type = Type::Ipv4; ; return true; ; } (declare-fun var230___net__address__from_str_ipv4__t0 () (_ BitVec 64)) (declare-fun var231_true__t0 () Bool) (assert (= var231_true__t0 (theory1_safe var230___net__address__from_str_ipv4__t0) ) ) (assert var231_true__t0 ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:9 ; Async ; : /home/aep/proj/zz/modules/io/./src/lib.zz:36 ; Context ; : /home/aep/proj/zz/modules/io/./src/lib.zz:19 ; Ready (declare-fun var235___io__Ready__Read__t0 () (_ BitVec 64)) (assert (= var235___io__Ready__Read__t0 (_ bv0 64)) ) (declare-fun var236___io__Ready__Write__t0 () (_ BitVec 64)) (assert (= var236___io__Ready__Write__t0 (_ bv1 64)) ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:7 ; export fntype select_fn (Async mut*self, err::Err+et mut* e, Context mut*ctx, Ready w); ; : /home/aep/proj/zz/modules/io/./src/lib.zz:192 ; export fn select(Async mut *self, err::Err+et mut* e, Context mut*ctx, Ready w) ; where err::checked(*e) ; { ; if self->select_impl == 0 { ; return; ; } ; select_fn select_impl = (select_fn)self->select_impl; ; static_attest(safe(select_impl)); ; select_impl(self, e, ctx, w); ; } (declare-fun var238___io__select__t0 () (_ BitVec 64)) (declare-fun var239_true__t0 () Bool) (assert (= var239_true__t0 (theory1_safe var238___io__select__t0) ) ) (assert var239_true__t0 ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:220 ; export fntype wake_fn(Async *async); ; : /home/aep/proj/zz/modules/io/./src/lib.zz:221 ; export fn wake(Async mut* self) { ; if self->do_wake != 0 { ; wake_fn iwake = (wake_fn)self->do_wake; ; static_attest(safe(iwake)); ; iwake(self); ; } ; } (declare-fun var241___io__wake__t0 () (_ BitVec 64)) (declare-fun var242_true__t0 () Bool) (assert (= var242_true__t0 (theory1_safe var241___io__wake__t0) ) ) (assert var242_true__t0 ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:33 ; export fntype close_fn (Context mut* ctx); ; : /home/aep/proj/zz/modules/net/./src/udp.zz:44 ; Socket ; : /home/aep/proj/zz/modules/io/./src/lib.zz:52 ; export fn valid(Context *self) -> bool { ; return self->isvalid; ; } (declare-fun var245___io__valid__t0 () (_ BitVec 64)) (declare-fun var246_true__t0 () Bool) (assert (= var246_true__t0 (theory1_safe var245___io__valid__t0) ) ) (assert var246_true__t0 ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:24 ; Result (declare-fun var248___io__Result__Ready__t0 () (_ BitVec 64)) (assert (= var248___io__Result__Ready__t0 (_ bv0 64)) ) (declare-fun var249___io__Result__Later__t0 () (_ BitVec 64)) (assert (= var249___io__Result__Later__t0 (_ bv1 64)) ) (declare-fun var250___io__Result__Error__t0 () (_ BitVec 64)) (assert (= var250___io__Result__Error__t0 (_ bv2 64)) ) (declare-fun var251___io__Result__Eof__t0 () (_ BitVec 64)) (assert (= var251___io__Result__Eof__t0 (_ bv3 64)) ) ; : /home/aep/proj/zz/modules/net/./src/udp.zz:51 ; export fn close(Socket mut*self) { ; if self->impl_close == 0 { ; return; ; } ; static_attest(safe(self->impl_close)); ; self->impl_close(&self->ctx); ; } (declare-fun var252___net__udp__close__t0 () (_ BitVec 64)) (declare-fun var253_true__t0 () Bool) (assert (= var253_true__t0 (theory1_safe var252___net__udp__close__t0) ) ) (assert var253_true__t0 ) ; : /home/aep/proj/zz/modules/net/./src/udp.zz:35 ; export fntype recvfrom_fn ( ; Socket mut*sock, ; err::Err mut *e, ; usize et, ; u8 mut * mem, ; usize mut*memlen, ; address::Address *addr, ; ) -> io::Result; ; : /home/aep/proj/zz/modules/net/./src/udp.zz:78 ; export fn recvfrom(Socket mut *self, err::Err+et mut*e, string::String+st mut *buf, address::Address mut*from) -> io::Result ; where err::checked(*e) ; { ; recvfrom_fn recv = (recvfrom_fn)self->impl_recvfrom; ; if recv == 0 { ; err::fail(e, 2, "no recv impl"); ; return io::Result::Error; ; } ; static_attest(safe(recv)); ; ; static_attest(len(buf->mem) > buf->len); ; usize mut memlen = st - buf->len; ; io::Result rr = (io::Result)recv(self, e, et, as(buf->mem + buf->len), &memlen, from); ; if err::check(e) { ; return rr; ; } ; buf->len += memlen; ; return rr; ; } (declare-fun var255___net__udp__recvfrom__t0 () (_ BitVec 64)) (declare-fun var256_true__t0 () Bool) (assert (= var256_true__t0 (theory1_safe var255___net__udp__recvfrom__t0) ) ) (assert var256_true__t0 ) ; : /home/aep/proj/zz/modules/net/./src/udp.zz:26 ; export fntype sendto_fn( ; Socket mut*sock, ; err::Err *e, ; usize et, ; u8* mem, ; usize mut*memlen, ; address::Address *addr, ; ) -> io::Result; ; : /home/aep/proj/zz/modules/net/./src/udp.zz:98 ; export fn sendto(Socket mut *self, err::Err+et mut*e, string::String+st *buf, address::Address * to) -> io::Result ; where err::checked(*e) ; { ; sendto_fn send = (sendto_fn)self->impl_sendto; ; if send == 0 { ; err::fail(e, 2, "no send impl"); ; return io::Result::Error; ; } ; static_attest(safe(send)); ; ; usize mut memlen = buf->len; ; io::Result rr = (io::Result)send(self, e, et, as(buf->mem), &memlen, to); ; if err::check(e) { ; return rr; ; } ; return rr; ; } (declare-fun var258___net__udp__sendto__t0 () (_ BitVec 64)) (declare-fun var259_true__t0 () Bool) (assert (= var259_true__t0 (theory1_safe var258___net__udp__sendto__t0) ) ) (assert var259_true__t0 ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:211 ; export fn ip_to_string(Address * self, string::String+st mut*to) ; where st>2 ; { ; switch self->type { ; Type::Invalid => { ; } ; Type::Ipv4 => { ; u8 * ip = os::os_net_address_ipv4_get_ip(self->os); ; static_attest(len(ip) == 4); ; ; string::format(to, "%u.%u.%u.%u", ; ip[0], ; ip[1], ; ip[2], ; ip[3] ; ); ; } ; Type::Ipv6 => { ; u8 * ip = os::os_net_address_ipv6_get_ip(self->os); ; static_attest(len(ip) == 16); ; ; // find the largest skippable section ; int mut largest_skippable_start = -1; ; usize mut largest_skipable_size = 0; ; ; int mut current_skippable_start = -1; ; usize mut current_skippable_size = 0; ; ; for (usize mut i = 0; i < 15; i += 2) { ; if ip[i] == 0 && ip[i+1] == 0 { ; if current_skippable_start == -1 { ; current_skippable_start = (int)i; ; } ; current_skippable_size += 1; ; } else { ; if current_skippable_size > largest_skipable_size { ; largest_skipable_size = current_skippable_size; ; largest_skippable_start = current_skippable_start; ; } ; current_skippable_size = 0; ; current_skippable_start = -1; ; } ; } ; if current_skippable_size > largest_skipable_size { ; largest_skipable_size = current_skippable_size; ; largest_skippable_start = current_skippable_start; ; } ; ; ; for (usize mut i = 0; i < 15; i += 2) { ; if i == (usize)largest_skippable_start && largest_skipable_size > 0{ ; string::push(to, ':'); ; if i == 0 { ; string::push(to, ':'); ; } ; i += ((largest_skipable_size -1) * 2); ; continue; ; } ; static_attest(i < 15); ; if ip[i] == 0 { ; string::format(to, "%x", ip[i+1]); ; } else { ; string::format(to, "%x", ip[i]); ; string::format(to, "%02x", ip[i+1]); ; } ; if i != 14 { ; string::push(to, ':'); ; } ; } ; } ; } ; } (declare-fun var260___net__address__ip_to_string__t0 () (_ BitVec 64)) (declare-fun var261_true__t0 () Bool) (assert (= var261_true__t0 (theory1_safe var260___net__address__ip_to_string__t0) ) ) (assert var261_true__t0 ) ; : /home/aep/proj/zz/modules/byteorder/./src/lib.zz:33 ; pub inline fn from_be16(u16 x) -> u16 { ; return to_be16(x); ; } (declare-fun var262___byteorder__from_be16__t0 () (_ BitVec 64)) (declare-fun var263_true__t0 () Bool) (assert (= var263_true__t0 (theory1_safe var262___byteorder__from_be16__t0) ) ) (assert var263_true__t0 ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:284 ; export fn to_string(Address * self, string::String+st mut*to) ; where st>2 ; { ; ; switch self->type { ; Type::Invalid => {} ; Type::Ipv4 => { ; u16 port = byteorder::from_be16((u16)os::os_net_address_ipv4_get_port(self->os)); ; ; ip_to_string(self, to); ; string::format(to, ":%u",port); ; } ; Type::Ipv6 => { ; u16 port = byteorder::from_be16((u16)os::os_net_address_ipv6_get_port(self->os)); ; ; if port != 0 { ; string::push(to, '['); ; } ; ; ip_to_string(self, to); ; ; if port != 0 { ; string::format(to, "]:%u", port); ; } ; } ; } ; } (declare-fun var264___net__address__to_string__t0 () (_ BitVec 64)) (declare-fun var265_true__t0 () Bool) (assert (= var265_true__t0 (theory1_safe var264___net__address__to_string__t0) ) ) (assert var265_true__t0 ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:313 ; export fn set_port(Address mut*self, u16 port) { ; switch self->type { ; Type::Ipv4 => { ; os::os_net_address_ipv4_set_port(self->os, byteorder::to_be16(port)); ; } ; Type::Ipv6 => { ; os::os_net_address_ipv6_set_port(self->os, byteorder::to_be16(port)); ; } ; Type::Invalid => { ; } ; } ; } (declare-fun var266___net__address__set_port__t0 () (_ BitVec 64)) (declare-fun var267_true__t0 () Bool) (assert (= var267_true__t0 (theory1_safe var266___net__address__set_port__t0) ) ) (assert var267_true__t0 ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:326 ; export fn get_port(Address *self) -> u16 { ; switch self->type { ; Type::Ipv4 => { ; return (u16)byteorder::from_be16(os::os_net_address_ipv4_get_port(self->os)); ; } ; Type::Ipv6 => { ; return (u16)byteorder::from_be16(os::os_net_address_ipv6_get_port(self->os)); ; } ; Type::Invalid => { ; return 0; ; } ; } ; ; // c compiler gets really confused for some reason ; // this never happens ; return 0; ; } (declare-fun var268___net__address__get_port__t0 () (_ BitVec 64)) (declare-fun var269_true__t0 () Bool) (assert (= var269_true__t0 (theory1_safe var268___net__address__get_port__t0) ) ) (assert var269_true__t0 ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:344 ; export fn get_ip(Address *self) -> u8* ; { ; switch self->type { ; Type::Ipv6 => { ; return (u8*)os::os_net_address_ipv4_get_ip(self->os); ; } ; default => { ; return (u8*)os::os_net_address_ipv4_get_ip(self->os); ; } ; } ; ; // c compiler gets really confused for some reason ; // this never happens ; return 0; ; } (declare-fun var270___net__address__get_ip__t0 () (_ BitVec 64)) (declare-fun var271_true__t0 () Bool) (assert (= var271_true__t0 (theory1_safe var270___net__address__get_ip__t0) ) ) (assert var271_true__t0 ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:360 ; export fn set_ip(Address mut *self, Type t, u8*b) ; where (t == Type::Ipv4 && len(b) >= 4) || (t == Type::Ipv6 && len(b) >= 16) ; { ; self->type = t; ; switch self->type { ; Type::Ipv4=> { ; os::os_net_address_ipv4_set_ip(self->os, b); ; } ; Type::Ipv6 => { ; os::os_net_address_ipv6_set_ip(self->os, b); ; } ; Type::Invalid => { ; ; } ; } ; } (declare-fun var272___net__address__set_ip__t0 () (_ BitVec 64)) (declare-fun var273_true__t0 () Bool) (assert (= var273_true__t0 (theory1_safe var272___net__address__set_ip__t0) ) ) (assert var273_true__t0 ) ; : ./src/peering.zz:17 ; Peering ; : ./src/channel.zz:32 ; export fntype on_open_t(void mut*chan, err::Err+et mut*e, slice::Slice *sl, u32 stream_id) -> bool; ; : ./src/channel.zz:34 ; Channel ; : ./src/channel.zz:20 ; FrameType (declare-fun var278___carrier__channel__FrameType__Ack__t0 () (_ BitVec 64)) (assert (= var278___carrier__channel__FrameType__Ack__t0 (_ bv1 64)) ) (declare-fun var279___carrier__channel__FrameType__Ping__t0 () (_ BitVec 64)) (assert (= var279___carrier__channel__FrameType__Ping__t0 (_ bv2 64)) ) (declare-fun var280___carrier__channel__FrameType__Disconnect__t0 () (_ BitVec 64)) (assert (= var280___carrier__channel__FrameType__Disconnect__t0 (_ bv3 64)) ) (declare-fun var281___carrier__channel__FrameType__Open__t0 () (_ BitVec 64)) (assert (= var281___carrier__channel__FrameType__Open__t0 (_ bv4 64)) ) (declare-fun var282___carrier__channel__FrameType__Stream__t0 () (_ BitVec 64)) (assert (= var282___carrier__channel__FrameType__Stream__t0 (_ bv5 64)) ) (declare-fun var283___carrier__channel__FrameType__Close__t0 () (_ BitVec 64)) (assert (= var283___carrier__channel__FrameType__Close__t0 (_ bv6 64)) ) (declare-fun var284___carrier__channel__FrameType__Configure__t0 () (_ BitVec 64)) (assert (= var284___carrier__channel__FrameType__Configure__t0 (_ bv7 64)) ) (declare-fun var285___carrier__channel__FrameType__Fragmented__t0 () (_ BitVec 64)) (assert (= var285___carrier__channel__FrameType__Fragmented__t0 (_ bv8 64)) ) ; : ./src/pq.zz:40 ; export fn alloc(Q+qt mut* self, err::Err+et mut*e, FrameType type, usize size) -> slice::MutSlice mut * ; where err::checked(*e) ; model safe(return) // this is technically wrong, but the prover isnt good enough yet ; model safe(return->slice.mem) ; model len(return->slice.mem) >= size ; model return->slice.size == size ; model return->slice.size >= len(return->slice.mem) ; model return->at <= return->slice.size ; { ; static_attest(safe(self->allocator)); ; void mut *payload = self->allocator->alloc(size); ; if payload == 0 { ; err::fail(e, 12, "oom"); ; unsafe { ; return 0; ; } ; } ; ; Frame mut* mut r; ; if (self->count >= qt) { ; self->allocator->free(payload); ; err::fail(e, 12, "oom"); ; unsafe { ; return 0; ; } ; } ; (self->count)++; ; unsafe { ; r = self->q + (self->back)++; ; } ; ; if (self->back >= qt) { ; self->back = 0; ; } ; ; memset(r, 0, sizeof(Frame)); ; static_attest(safe(r)); ; r->type = (u8)type; ; r->buf.slice.mem = payload; ; r->buf.slice.size = size; ; ; static_attest(safe(r->buf.slice.mem)); ; static_attest(len(r->buf.slice.mem) == size); ; static_attest(r->buf.slice.size == size); ; static_attest(r->buf.at <= r->buf.slice.size); ; ; return &r->buf; ; } (declare-fun var286___carrier__pq__alloc__t0 () (_ BitVec 64)) (declare-fun var287_true__t0 () Bool) (assert (= var287_true__t0 (theory1_safe var286___carrier__pq__alloc__t0) ) ) (assert var287_true__t0 ) ; : ./src/pq.zz:89 ; export fn window(Q+qt * self) -> usize { ; return qt- self->count; ; } (declare-fun var288___carrier__pq__window__t0 () (_ BitVec 64)) (declare-fun var289_true__t0 () Bool) (assert (= var289_true__t0 (theory1_safe var288___carrier__pq__window__t0) ) ) (assert var289_true__t0 ) ; : /home/aep/proj/zz/modules/log/./src/lib.zz:47 ; export fn debug(char * callsite_source module, char *fmt, ...) ; { ; fprintf(stderr, "[\x1B[36mDBG\x1B[0m] %s ", module); ; va_list mut args; ; va_start (args, fmt); ; vfprintf( ; stderr, ; fmt, ; args ; ); ; va_end (args); ; fprintf(stderr, "\n"); ; } (declare-fun var290___log__debug__t0 () (_ BitVec 64)) (declare-fun var291_true__t0 () Bool) (assert (= var291_true__t0 (theory1_safe var290___log__debug__t0) ) ) (assert var291_true__t0 ) ; : ./src/pq.zz:207 ; fn wrapinc (Q+qt * self, usize mut* i) -> usize { ; *i is safe; ; usize v = (*i)++; ; if (*i >= qt) { ; *i = 0; ; } ; return v; ; } (declare-fun var292___carrier__pq__wrapinc__t0 () (_ BitVec 64)) (declare-fun var293_true__t0 () Bool) (assert (= var293_true__t0 (theory1_safe var292___carrier__pq__wrapinc__t0) ) ) (assert var293_true__t0 ) ; : ./src/pq.zz:13 ; pub const u64 REORDER_THRESHOLD = 6; ; : ./src/pq.zz:13 ; 6 ; literal expr (declare-fun var295_literal_6__t0 () (_ BitVec 64)) (assert (= var295_literal_6__t0 (_ bv6 64)) ) ; : ./src/pq.zz:13 ; pub const u64 REORDER_THRESHOLD = 6; (declare-fun var296_safe_literal_6_____safe___carrier__pq__REORDER_THRESHOLD___t0 () Bool) (assert (= var296_safe_literal_6_____safe___carrier__pq__REORDER_THRESHOLD___t0 (theory1_safe var295_literal_6__t0) ) ) (declare-fun var294___carrier__pq__REORDER_THRESHOLD__t1 () (_ BitVec 64)) (assert (= var296_safe_literal_6_____safe___carrier__pq__REORDER_THRESHOLD___t0 (theory1_safe var294___carrier__pq__REORDER_THRESHOLD__t1) ) ) (declare-fun var297_nullterm_literal_6_____nullterm___carrier__pq__REORDER_THRESHOLD___t0 () Bool) (assert (= var297_nullterm_literal_6_____nullterm___carrier__pq__REORDER_THRESHOLD___t0 (theory2_nullterm var295_literal_6__t0) ) ) (assert (= var297_nullterm_literal_6_____nullterm___carrier__pq__REORDER_THRESHOLD___t0 (theory2_nullterm var294___carrier__pq__REORDER_THRESHOLD__t1) ) ) ; : ./src/pq.zz:13 ; 6 (declare-fun var298_implicit_coercion_of_literal_6__t0 () (_ BitVec 64)) (assert (! (= var298_implicit_coercion_of_literal_6__t0 var295_literal_6__t0) :named A0))(declare-fun var294___carrier__pq__REORDER_THRESHOLD__t0 () (_ BitVec 64)) (assert (= var294___carrier__pq__REORDER_THRESHOLD__t1 (ite true var298_implicit_coercion_of_literal_6__t0 var294___carrier__pq__REORDER_THRESHOLD__t0) ) ) ; : ./src/pq.zz:216 ; fn wrapdec (Q+qt * self, usize mut* i) -> usize { ; *i is safe; ; usize v = *i; ; if (*i == 0) { ; *i = qt; ; } ; (*i)--; ; return v; ; } (declare-fun var299___carrier__pq__wrapdec__t0 () (_ BitVec 64)) (declare-fun var300_true__t0 () Bool) (assert (= var300_true__t0 (theory1_safe var299___carrier__pq__wrapdec__t0) ) ) (assert var300_true__t0 ) ; : ./src/pq.zz:93 ; export fn ack(Q+qt mut* self, u64 time, u64 counter) { ; if (counter == 0) { ; return; ; } ; log::debug("ack: %lu, front: %lu, count: %zu, back:%zu", counter, self->front, self->count, self->back); ; ; ; Frame mut* mut qq = self->q; ; usize mut f = self->front; ; ; for (usize mut i = 0; i < qt; wrapinc(self, &f), i++) { ; static_attest(f < len(qq)); ; // mark as acked ; if ((qq[f]).packet == counter) { ; log::debug(" acked frame %zu ", f); ; (qq[f]).acked_at = time; ; ; assert(time > qq[f].sent_at); ; ; if (self->rtt == 0) { ; self->rtt = (time - (qq[f]).sent_at); ; } else { ; self->rtt = (self->rtt + (time - (qq[f]).sent_at)) / 2; ; } ; } ; ; // as long as the front is acked, clear the front and advance ; if (f == self->front && (qq[f]).acked_at != 0) { ; static_attest(safe(self->allocator)); ; ; unsafe { ; pool::free(self->allocator, (u8 mut*)(qq[f].buf.slice.mem)); ; } ; ; memset(qq + f, 0, sizeof(Frame)); ; (self->front)++; ; (self->count)--; ; if (self->front >= qt) { ; self->front = 0; ; } ; } else if ((qq[f]).packet > counter || f == self->sent) { ; log::debug(" pk: %lu, co: %zu", (qq[f]).packet, counter); ; break; ; } ; ; // if this frame is not acked and too far behind, move it back to the front of the queue ; if ((qq[f]).acked_at == 0 && (qq[f]).packet > 0 && (qq[f]).packet + REORDER_THRESHOLD < counter) { ; (qq[f]).sent_at = 0; ; (qq[f]).packet = 0; ; ; Frame mut mov; ; memcpy(&mov, &(qq[f]), sizeof(Frame)); ; memset(qq + f, 0, sizeof(Frame)); ; wrapinc(self, &self->front); ; ; ; for (usize mut i = wrapinc(self, &self->back); i != self->sent;) { ; usize p = wrapdec(self, &i); ; unsafe { ; memcpy(qq + p, qq + i, sizeof(Frame)); ; } ; } ; ; unsafe { ; memcpy(qq + self->sent, &mov, sizeof(Frame)); ; } ; ; } ; if (f == self->back) { ; break; ; } ; } ; ; } (declare-fun var301___carrier__pq__ack__t0 () (_ BitVec 64)) (declare-fun var302_true__t0 () Bool) (assert (= var302_true__t0 (theory1_safe var301___carrier__pq__ack__t0) ) ) (assert var302_true__t0 ) ; : ./src/pq.zz:169 ; export fn send(Q+qt mut* self, u64 time, u8 mut* buf , u16 buflen, u64 counter) -> usize { ; assert(time != 0); ; ; static_attest(self->sent < len(self->q)); ; ; u16 mut sent_bytes = 0; ; for (;self->sent != self->back; ) { ; ; Frame mut* f = &((self->q)[self->sent]); ; ; if (f->sent_at == 0) { ; ; if ((sent_bytes + (u16)f->buf.at + 1) > buflen) { ; break; ; } ; ; log::debug("frame: %zu, sent in pkt %zu", self->sent, counter); ; f->packet = counter; ; f->sent_at = time; ; ; unsafe { ; memcpy(buf + sent_bytes, &f->type, 1); ; } ; sent_bytes += 1; ; ; unsafe { ; memcpy(buf + sent_bytes, (u8 mut*)f->buf.slice.mem, f->buf.at); ; } ; sent_bytes += (u16)f->buf.at; ; } ; (self->sent)++; ; if (self->sent >= qt) { ; self->sent = 0; ; } ; } ; return (usize)sent_bytes; ; } (declare-fun var303___carrier__pq__send__t0 () (_ BitVec 64)) (declare-fun var304_true__t0 () Bool) (assert (= var304_true__t0 (theory1_safe var303___carrier__pq__send__t0) ) ) (assert var304_true__t0 ) ; : /home/aep/proj/zz/modules/hex/./src/lib.zz:51 ; export fn dump_slice(slice::Slice *s) ; { ; static_attest(s->size <= len(s->mem)); ; for (usize mut i = 0; i < s->size; i++) { ; printf("%02x ", s->mem[i]); ; if i % 16 == 15 { ; printf("\n"); ; } ; } ; printf("\n"); ; } (declare-fun var305___hex__dump_slice__t0 () (_ BitVec 64)) (declare-fun var306_true__t0 () Bool) (assert (= var306_true__t0 (theory1_safe var305___hex__dump_slice__t0) ) ) (assert var306_true__t0 ) ; : ./src/identity.zz:16 ; Identity ; : ./src/proto.zz:389 ; PeerConnectRequestField (declare-fun var309___carrier__proto__PeerConnectRequestField__Identity__t0 () (_ BitVec 64)) (assert (= var309___carrier__proto__PeerConnectRequestField__Identity__t0 (_ bv1 64)) ) (declare-fun var310___carrier__proto__PeerConnectRequestField__Timestamp__t0 () (_ BitVec 64)) (assert (= var310___carrier__proto__PeerConnectRequestField__Timestamp__t0 (_ bv2 64)) ) (declare-fun var311___carrier__proto__PeerConnectRequestField__Handshake__t0 () (_ BitVec 64)) (assert (= var311___carrier__proto__PeerConnectRequestField__Handshake__t0 (_ bv3 64)) ) (declare-fun var312___carrier__proto__PeerConnectRequestField__Route__t0 () (_ BitVec 64)) (assert (= var312___carrier__proto__PeerConnectRequestField__Route__t0 (_ bv4 64)) ) (declare-fun var313___carrier__proto__PeerConnectRequestField__Paths__t0 () (_ BitVec 64)) (assert (= var313___carrier__proto__PeerConnectRequestField__Paths__t0 (_ bv5 64)) ) ; : ./src/proto.zz:397 ; export fn PeerConnectRequest (usize index) -> protonerf::FieldType { ; switch index { ; PeerConnectRequestField::Identity => { ; return protonerf::FieldType::Message; ; } ; PeerConnectRequestField::Timestamp => { ; return protonerf::FieldType::Message; ; } ; PeerConnectRequestField::Handshake => { ; return protonerf::FieldType::Message; ; } ; PeerConnectRequestField::Route => { ; return protonerf::FieldType::Message; ; } ; PeerConnectRequestField::Paths => { ; return protonerf::FieldType::Message; ; } ; } ; return protonerf::FieldType::Skip; ; } (declare-fun var314___carrier__proto__PeerConnectRequest__t0 () (_ BitVec 64)) (declare-fun var315_true__t0 () Bool) (assert (= var315_true__t0 (theory1_safe var314___carrier__proto__PeerConnectRequest__t0) ) ) (assert var315_true__t0 ) ; : ./src/crc8.zz:15 ; static u8 crc8_table[256] = { ; 0xea, 0xd4, 0x96, 0xa8, 0x12, 0x2c, 0x6e, 0x50, 0x7f, 0x41, 0x03, 0x3d, ; 0x87, 0xb9, 0xfb, 0xc5, 0xa5, 0x9b, 0xd9, 0xe7, 0x5d, 0x63, 0x21, 0x1f, ; 0x30, 0x0e, 0x4c, 0x72, 0xc8, 0xf6, 0xb4, 0x8a, 0x74, 0x4a, 0x08, 0x36, ; 0x8c, 0xb2, 0xf0, 0xce, 0xe1, 0xdf, 0x9d, 0xa3, 0x19, 0x27, 0x65, 0x5b, ; 0x3b, 0x05, 0x47, 0x79, 0xc3, 0xfd, 0xbf, 0x81, 0xae, 0x90, 0xd2, 0xec, ; 0x56, 0x68, 0x2a, 0x14, 0xb3, 0x8d, 0xcf, 0xf1, 0x4b, 0x75, 0x37, 0x09, ; 0x26, 0x18, 0x5a, 0x64, 0xde, 0xe0, 0xa2, 0x9c, 0xfc, 0xc2, 0x80, 0xbe, ; 0x04, 0x3a, 0x78, 0x46, 0x69, 0x57, 0x15, 0x2b, 0x91, 0xaf, 0xed, 0xd3, ; 0x2d, 0x13, 0x51, 0x6f, 0xd5, 0xeb, 0xa9, 0x97, 0xb8, 0x86, 0xc4, 0xfa, ; 0x40, 0x7e, 0x3c, 0x02, 0x62, 0x5c, 0x1e, 0x20, 0x9a, 0xa4, 0xe6, 0xd8, ; 0xf7, 0xc9, 0x8b, 0xb5, 0x0f, 0x31, 0x73, 0x4d, 0x58, 0x66, 0x24, 0x1a, ; 0xa0, 0x9e, 0xdc, 0xe2, 0xcd, 0xf3, 0xb1, 0x8f, 0x35, 0x0b, 0x49, 0x77, ; 0x17, 0x29, 0x6b, 0x55, 0xef, 0xd1, 0x93, 0xad, 0x82, 0xbc, 0xfe, 0xc0, ; 0x7a, 0x44, 0x06, 0x38, 0xc6, 0xf8, 0xba, 0x84, 0x3e, 0x00, 0x42, 0x7c, ; 0x53, 0x6d, 0x2f, 0x11, 0xab, 0x95, 0xd7, 0xe9, 0x89, 0xb7, 0xf5, 0xcb, ; 0x71, 0x4f, 0x0d, 0x33, 0x1c, 0x22, 0x60, 0x5e, 0xe4, 0xda, 0x98, 0xa6, ; 0x01, 0x3f, 0x7d, 0x43, 0xf9, 0xc7, 0x85, 0xbb, 0x94, 0xaa, 0xe8, 0xd6, ; 0x6c, 0x52, 0x10, 0x2e, 0x4e, 0x70, 0x32, 0x0c, 0xb6, 0x88, 0xca, 0xf4, ; 0xdb, 0xe5, 0xa7, 0x99, 0x23, 0x1d, 0x5f, 0x61, 0x9f, 0xa1, 0xe3, 0xdd, ; 0x67, 0x59, 0x1b, 0x25, 0x0a, 0x34, 0x76, 0x48, 0xf2, 0xcc, 0x8e, 0xb0, ; 0xd0, 0xee, 0xac, 0x92, 0x28, 0x16, 0x54, 0x6a, 0x45, 0x7b, 0x39, 0x07, ; 0xbd, 0x83, 0xc1, 0xff ; }; ; : ./src/crc8.zz:15 ; 256 ; literal expr (declare-fun var317_literal_256__t0 () (_ BitVec 64)) (assert (= var317_literal_256__t0 (_ bv256 64)) ) (check-sat) (get-value ( var317_literal_256__t0 ) ) ; = "#b0000000000000000000000000000000000000000000000000000000100000000" (push 1) (assert (not (= var317_literal_256__t0 #b0000000000000000000000000000000000000000000000000000000100000000)) ) (check-sat) (pop 1) (push 1) (check-sat) (pop 1) (declare-fun var316___carrier__crc8__crc8_table__t0 () (_ BitVec 64)) (declare-fun var318_len___carrier__crc8__crc8_table___t0 () (_ BitVec 64)) (assert (= var318_len___carrier__crc8__crc8_table___t0 (theory0_len var316___carrier__crc8__crc8_table__t0) ) ) (assert (= var318_len___carrier__crc8__crc8_table___t0 (_ bv256 64)) ) ; : ./src/crc8.zz:15 ; { ; 0xea, 0xd4, 0x96, 0xa8, 0x12, 0x2c, 0x6e, 0x50, 0x7f, 0x41, 0x03, 0x3d, ; 0x87, 0xb9, 0xfb, 0xc5, 0xa5, 0x9b, 0xd9, 0xe7, 0x5d, 0x63, 0x21, 0x1f, ; 0x30, 0x0e, 0x4c, 0x72, 0xc8, 0xf6, 0xb4, 0x8a, 0x74, 0x4a, 0x08, 0x36, ; 0x8c, 0xb2, 0xf0, 0xce, 0xe1, 0xdf, 0x9d, 0xa3, 0x19, 0x27, 0x65, 0x5b, ; 0x3b, 0x05, 0x47, 0x79, 0xc3, 0xfd, 0xbf, 0x81, 0xae, 0x90, 0xd2, 0xec, ; 0x56, 0x68, 0x2a, 0x14, 0xb3, 0x8d, 0xcf, 0xf1, 0x4b, 0x75, 0x37, 0x09, ; 0x26, 0x18, 0x5a, 0x64, 0xde, 0xe0, 0xa2, 0x9c, 0xfc, 0xc2, 0x80, 0xbe, ; 0x04, 0x3a, 0x78, 0x46, 0x69, 0x57, 0x15, 0x2b, 0x91, 0xaf, 0xed, 0xd3, ; 0x2d, 0x13, 0x51, 0x6f, 0xd5, 0xeb, 0xa9, 0x97, 0xb8, 0x86, 0xc4, 0xfa, ; 0x40, 0x7e, 0x3c, 0x02, 0x62, 0x5c, 0x1e, 0x20, 0x9a, 0xa4, 0xe6, 0xd8, ; 0xf7, 0xc9, 0x8b, 0xb5, 0x0f, 0x31, 0x73, 0x4d, 0x58, 0x66, 0x24, 0x1a, ; 0xa0, 0x9e, 0xdc, 0xe2, 0xcd, 0xf3, 0xb1, 0x8f, 0x35, 0x0b, 0x49, 0x77, ; 0x17, 0x29, 0x6b, 0x55, 0xef, 0xd1, 0x93, 0xad, 0x82, 0xbc, 0xfe, 0xc0, ; 0x7a, 0x44, 0x06, 0x38, 0xc6, 0xf8, 0xba, 0x84, 0x3e, 0x00, 0x42, 0x7c, ; 0x53, 0x6d, 0x2f, 0x11, 0xab, 0x95, 0xd7, 0xe9, 0x89, 0xb7, 0xf5, 0xcb, ; 0x71, 0x4f, 0x0d, 0x33, 0x1c, 0x22, 0x60, 0x5e, 0xe4, 0xda, 0x98, 0xa6, ; 0x01, 0x3f, 0x7d, 0x43, 0xf9, 0xc7, 0x85, 0xbb, 0x94, 0xaa, 0xe8, 0xd6, ; 0x6c, 0x52, 0x10, 0x2e, 0x4e, 0x70, 0x32, 0x0c, 0xb6, 0x88, 0xca, 0xf4, ; 0xdb, 0xe5, 0xa7, 0x99, 0x23, 0x1d, 0x5f, 0x61, 0x9f, 0xa1, 0xe3, 0xdd, ; 0x67, 0x59, 0x1b, 0x25, 0x0a, 0x34, 0x76, 0x48, 0xf2, 0xcc, 0x8e, 0xb0, ; 0xd0, 0xee, 0xac, 0x92, 0x28, 0x16, 0x54, 0x6a, 0x45, 0x7b, 0x39, 0x07, ; 0xbd, 0x83, 0xc1, 0xff ; } ; : ./src/crc8.zz:16 ; 0xea ; literal expr (declare-fun var319_literal_234__t0 () (_ BitVec 64)) (assert (= var319_literal_234__t0 (_ bv234 64)) ) ; : ./src/crc8.zz:16 ; 0xd4 ; literal expr (declare-fun var320_literal_212__t0 () (_ BitVec 64)) (assert (= var320_literal_212__t0 (_ bv212 64)) ) ; : ./src/crc8.zz:16 ; 0x96 ; literal expr (declare-fun var321_literal_150__t0 () (_ BitVec 64)) (assert (= var321_literal_150__t0 (_ bv150 64)) ) ; : ./src/crc8.zz:16 ; 0xa8 ; literal expr (declare-fun var322_literal_168__t0 () (_ BitVec 64)) (assert (= var322_literal_168__t0 (_ bv168 64)) ) ; : ./src/crc8.zz:16 ; 0x12 ; literal expr (declare-fun var323_literal_18__t0 () (_ BitVec 64)) (assert (= var323_literal_18__t0 (_ bv18 64)) ) ; : ./src/crc8.zz:16 ; 0x2c ; literal expr (declare-fun var324_literal_44__t0 () (_ BitVec 64)) (assert (= var324_literal_44__t0 (_ bv44 64)) ) ; : ./src/crc8.zz:16 ; 0x6e ; literal expr (declare-fun var325_literal_110__t0 () (_ BitVec 64)) (assert (= var325_literal_110__t0 (_ bv110 64)) ) ; : ./src/crc8.zz:16 ; 0x50 ; literal expr (declare-fun var326_literal_80__t0 () (_ BitVec 64)) (assert (= var326_literal_80__t0 (_ bv80 64)) ) ; : ./src/crc8.zz:16 ; 0x7f ; literal expr (declare-fun var327_literal_127__t0 () (_ BitVec 64)) (assert (= var327_literal_127__t0 (_ bv127 64)) ) ; : ./src/crc8.zz:16 ; 0x41 ; literal expr (declare-fun var328_literal_65__t0 () (_ BitVec 64)) (assert (= var328_literal_65__t0 (_ bv65 64)) ) ; : ./src/crc8.zz:16 ; 0x03 ; literal expr (declare-fun var329_literal_3__t0 () (_ BitVec 64)) (assert (= var329_literal_3__t0 (_ bv3 64)) ) ; : ./src/crc8.zz:16 ; 0x3d ; literal expr (declare-fun var330_literal_61__t0 () (_ BitVec 64)) (assert (= var330_literal_61__t0 (_ bv61 64)) ) ; : ./src/crc8.zz:17 ; 0x87 ; literal expr (declare-fun var331_literal_135__t0 () (_ BitVec 64)) (assert (= var331_literal_135__t0 (_ bv135 64)) ) ; : ./src/crc8.zz:17 ; 0xb9 ; literal expr (declare-fun var332_literal_185__t0 () (_ BitVec 64)) (assert (= var332_literal_185__t0 (_ bv185 64)) ) ; : ./src/crc8.zz:17 ; 0xfb ; literal expr (declare-fun var333_literal_251__t0 () (_ BitVec 64)) (assert (= var333_literal_251__t0 (_ bv251 64)) ) ; : ./src/crc8.zz:17 ; 0xc5 ; literal expr (declare-fun var334_literal_197__t0 () (_ BitVec 64)) (assert (= var334_literal_197__t0 (_ bv197 64)) ) ; : ./src/crc8.zz:17 ; 0xa5 ; literal expr (declare-fun var335_literal_165__t0 () (_ BitVec 64)) (assert (= var335_literal_165__t0 (_ bv165 64)) ) ; : ./src/crc8.zz:17 ; 0x9b ; literal expr (declare-fun var336_literal_155__t0 () (_ BitVec 64)) (assert (= var336_literal_155__t0 (_ bv155 64)) ) ; : ./src/crc8.zz:17 ; 0xd9 ; literal expr (declare-fun var337_literal_217__t0 () (_ BitVec 64)) (assert (= var337_literal_217__t0 (_ bv217 64)) ) ; : ./src/crc8.zz:17 ; 0xe7 ; literal expr (declare-fun var338_literal_231__t0 () (_ BitVec 64)) (assert (= var338_literal_231__t0 (_ bv231 64)) ) ; : ./src/crc8.zz:17 ; 0x5d ; literal expr (declare-fun var339_literal_93__t0 () (_ BitVec 64)) (assert (= var339_literal_93__t0 (_ bv93 64)) ) ; : ./src/crc8.zz:17 ; 0x63 ; literal expr (declare-fun var340_literal_99__t0 () (_ BitVec 64)) (assert (= var340_literal_99__t0 (_ bv99 64)) ) ; : ./src/crc8.zz:17 ; 0x21 ; literal expr (declare-fun var341_literal_33__t0 () (_ BitVec 64)) (assert (= var341_literal_33__t0 (_ bv33 64)) ) ; : ./src/crc8.zz:17 ; 0x1f ; literal expr (declare-fun var342_literal_31__t0 () (_ BitVec 64)) (assert (= var342_literal_31__t0 (_ bv31 64)) ) ; : ./src/crc8.zz:18 ; 0x30 ; literal expr (declare-fun var343_literal_48__t0 () (_ BitVec 64)) (assert (= var343_literal_48__t0 (_ bv48 64)) ) ; : ./src/crc8.zz:18 ; 0x0e ; literal expr (declare-fun var344_literal_14__t0 () (_ BitVec 64)) (assert (= var344_literal_14__t0 (_ bv14 64)) ) ; : ./src/crc8.zz:18 ; 0x4c ; literal expr (declare-fun var345_literal_76__t0 () (_ BitVec 64)) (assert (= var345_literal_76__t0 (_ bv76 64)) ) ; : ./src/crc8.zz:18 ; 0x72 ; literal expr (declare-fun var346_literal_114__t0 () (_ BitVec 64)) (assert (= var346_literal_114__t0 (_ bv114 64)) ) ; : ./src/crc8.zz:18 ; 0xc8 ; literal expr (declare-fun var347_literal_200__t0 () (_ BitVec 64)) (assert (= var347_literal_200__t0 (_ bv200 64)) ) ; : ./src/crc8.zz:18 ; 0xf6 ; literal expr (declare-fun var348_literal_246__t0 () (_ BitVec 64)) (assert (= var348_literal_246__t0 (_ bv246 64)) ) ; : ./src/crc8.zz:18 ; 0xb4 ; literal expr (declare-fun var349_literal_180__t0 () (_ BitVec 64)) (assert (= var349_literal_180__t0 (_ bv180 64)) ) ; : ./src/crc8.zz:18 ; 0x8a ; literal expr (declare-fun var350_literal_138__t0 () (_ BitVec 64)) (assert (= var350_literal_138__t0 (_ bv138 64)) ) ; : ./src/crc8.zz:18 ; 0x74 ; literal expr (declare-fun var351_literal_116__t0 () (_ BitVec 64)) (assert (= var351_literal_116__t0 (_ bv116 64)) ) ; : ./src/crc8.zz:18 ; 0x4a ; literal expr (declare-fun var352_literal_74__t0 () (_ BitVec 64)) (assert (= var352_literal_74__t0 (_ bv74 64)) ) ; : ./src/crc8.zz:18 ; 0x08 ; literal expr (declare-fun var353_literal_8__t0 () (_ BitVec 64)) (assert (= var353_literal_8__t0 (_ bv8 64)) ) ; : ./src/crc8.zz:18 ; 0x36 ; literal expr (declare-fun var354_literal_54__t0 () (_ BitVec 64)) (assert (= var354_literal_54__t0 (_ bv54 64)) ) ; : ./src/crc8.zz:19 ; 0x8c ; literal expr (declare-fun var355_literal_140__t0 () (_ BitVec 64)) (assert (= var355_literal_140__t0 (_ bv140 64)) ) ; : ./src/crc8.zz:19 ; 0xb2 ; literal expr (declare-fun var356_literal_178__t0 () (_ BitVec 64)) (assert (= var356_literal_178__t0 (_ bv178 64)) ) ; : ./src/crc8.zz:19 ; 0xf0 ; literal expr (declare-fun var357_literal_240__t0 () (_ BitVec 64)) (assert (= var357_literal_240__t0 (_ bv240 64)) ) ; : ./src/crc8.zz:19 ; 0xce ; literal expr (declare-fun var358_literal_206__t0 () (_ BitVec 64)) (assert (= var358_literal_206__t0 (_ bv206 64)) ) ; : ./src/crc8.zz:19 ; 0xe1 ; literal expr (declare-fun var359_literal_225__t0 () (_ BitVec 64)) (assert (= var359_literal_225__t0 (_ bv225 64)) ) ; : ./src/crc8.zz:19 ; 0xdf ; literal expr (declare-fun var360_literal_223__t0 () (_ BitVec 64)) (assert (= var360_literal_223__t0 (_ bv223 64)) ) ; : ./src/crc8.zz:19 ; 0x9d ; literal expr (declare-fun var361_literal_157__t0 () (_ BitVec 64)) (assert (= var361_literal_157__t0 (_ bv157 64)) ) ; : ./src/crc8.zz:19 ; 0xa3 ; literal expr (declare-fun var362_literal_163__t0 () (_ BitVec 64)) (assert (= var362_literal_163__t0 (_ bv163 64)) ) ; : ./src/crc8.zz:19 ; 0x19 ; literal expr (declare-fun var363_literal_25__t0 () (_ BitVec 64)) (assert (= var363_literal_25__t0 (_ bv25 64)) ) ; : ./src/crc8.zz:19 ; 0x27 ; literal expr (declare-fun var364_literal_39__t0 () (_ BitVec 64)) (assert (= var364_literal_39__t0 (_ bv39 64)) ) ; : ./src/crc8.zz:19 ; 0x65 ; literal expr (declare-fun var365_literal_101__t0 () (_ BitVec 64)) (assert (= var365_literal_101__t0 (_ bv101 64)) ) ; : ./src/crc8.zz:19 ; 0x5b ; literal expr (declare-fun var366_literal_91__t0 () (_ BitVec 64)) (assert (= var366_literal_91__t0 (_ bv91 64)) ) ; : ./src/crc8.zz:20 ; 0x3b ; literal expr (declare-fun var367_literal_59__t0 () (_ BitVec 64)) (assert (= var367_literal_59__t0 (_ bv59 64)) ) ; : ./src/crc8.zz:20 ; 0x05 ; literal expr (declare-fun var368_literal_5__t0 () (_ BitVec 64)) (assert (= var368_literal_5__t0 (_ bv5 64)) ) ; : ./src/crc8.zz:20 ; 0x47 ; literal expr (declare-fun var369_literal_71__t0 () (_ BitVec 64)) (assert (= var369_literal_71__t0 (_ bv71 64)) ) ; : ./src/crc8.zz:20 ; 0x79 ; literal expr (declare-fun var370_literal_121__t0 () (_ BitVec 64)) (assert (= var370_literal_121__t0 (_ bv121 64)) ) ; : ./src/crc8.zz:20 ; 0xc3 ; literal expr (declare-fun var371_literal_195__t0 () (_ BitVec 64)) (assert (= var371_literal_195__t0 (_ bv195 64)) ) ; : ./src/crc8.zz:20 ; 0xfd ; literal expr (declare-fun var372_literal_253__t0 () (_ BitVec 64)) (assert (= var372_literal_253__t0 (_ bv253 64)) ) ; : ./src/crc8.zz:20 ; 0xbf ; literal expr (declare-fun var373_literal_191__t0 () (_ BitVec 64)) (assert (= var373_literal_191__t0 (_ bv191 64)) ) ; : ./src/crc8.zz:20 ; 0x81 ; literal expr (declare-fun var374_literal_129__t0 () (_ BitVec 64)) (assert (= var374_literal_129__t0 (_ bv129 64)) ) ; : ./src/crc8.zz:20 ; 0xae ; literal expr (declare-fun var375_literal_174__t0 () (_ BitVec 64)) (assert (= var375_literal_174__t0 (_ bv174 64)) ) ; : ./src/crc8.zz:20 ; 0x90 ; literal expr (declare-fun var376_literal_144__t0 () (_ BitVec 64)) (assert (= var376_literal_144__t0 (_ bv144 64)) ) ; : ./src/crc8.zz:20 ; 0xd2 ; literal expr (declare-fun var377_literal_210__t0 () (_ BitVec 64)) (assert (= var377_literal_210__t0 (_ bv210 64)) ) ; : ./src/crc8.zz:20 ; 0xec ; literal expr (declare-fun var378_literal_236__t0 () (_ BitVec 64)) (assert (= var378_literal_236__t0 (_ bv236 64)) ) ; : ./src/crc8.zz:21 ; 0x56 ; literal expr (declare-fun var379_literal_86__t0 () (_ BitVec 64)) (assert (= var379_literal_86__t0 (_ bv86 64)) ) ; : ./src/crc8.zz:21 ; 0x68 ; literal expr (declare-fun var380_literal_104__t0 () (_ BitVec 64)) (assert (= var380_literal_104__t0 (_ bv104 64)) ) ; : ./src/crc8.zz:21 ; 0x2a ; literal expr (declare-fun var381_literal_42__t0 () (_ BitVec 64)) (assert (= var381_literal_42__t0 (_ bv42 64)) ) ; : ./src/crc8.zz:21 ; 0x14 ; literal expr (declare-fun var382_literal_20__t0 () (_ BitVec 64)) (assert (= var382_literal_20__t0 (_ bv20 64)) ) ; : ./src/crc8.zz:21 ; 0xb3 ; literal expr (declare-fun var383_literal_179__t0 () (_ BitVec 64)) (assert (= var383_literal_179__t0 (_ bv179 64)) ) ; : ./src/crc8.zz:21 ; 0x8d ; literal expr (declare-fun var384_literal_141__t0 () (_ BitVec 64)) (assert (= var384_literal_141__t0 (_ bv141 64)) ) ; : ./src/crc8.zz:21 ; 0xcf ; literal expr (declare-fun var385_literal_207__t0 () (_ BitVec 64)) (assert (= var385_literal_207__t0 (_ bv207 64)) ) ; : ./src/crc8.zz:21 ; 0xf1 ; literal expr (declare-fun var386_literal_241__t0 () (_ BitVec 64)) (assert (= var386_literal_241__t0 (_ bv241 64)) ) ; : ./src/crc8.zz:21 ; 0x4b ; literal expr (declare-fun var387_literal_75__t0 () (_ BitVec 64)) (assert (= var387_literal_75__t0 (_ bv75 64)) ) ; : ./src/crc8.zz:21 ; 0x75 ; literal expr (declare-fun var388_literal_117__t0 () (_ BitVec 64)) (assert (= var388_literal_117__t0 (_ bv117 64)) ) ; : ./src/crc8.zz:21 ; 0x37 ; literal expr (declare-fun var389_literal_55__t0 () (_ BitVec 64)) (assert (= var389_literal_55__t0 (_ bv55 64)) ) ; : ./src/crc8.zz:21 ; 0x09 ; literal expr (declare-fun var390_literal_9__t0 () (_ BitVec 64)) (assert (= var390_literal_9__t0 (_ bv9 64)) ) ; : ./src/crc8.zz:22 ; 0x26 ; literal expr (declare-fun var391_literal_38__t0 () (_ BitVec 64)) (assert (= var391_literal_38__t0 (_ bv38 64)) ) ; : ./src/crc8.zz:22 ; 0x18 ; literal expr (declare-fun var392_literal_24__t0 () (_ BitVec 64)) (assert (= var392_literal_24__t0 (_ bv24 64)) ) ; : ./src/crc8.zz:22 ; 0x5a ; literal expr (declare-fun var393_literal_90__t0 () (_ BitVec 64)) (assert (= var393_literal_90__t0 (_ bv90 64)) ) ; : ./src/crc8.zz:22 ; 0x64 ; literal expr (declare-fun var394_literal_100__t0 () (_ BitVec 64)) (assert (= var394_literal_100__t0 (_ bv100 64)) ) ; : ./src/crc8.zz:22 ; 0xde ; literal expr (declare-fun var395_literal_222__t0 () (_ BitVec 64)) (assert (= var395_literal_222__t0 (_ bv222 64)) ) ; : ./src/crc8.zz:22 ; 0xe0 ; literal expr (declare-fun var396_literal_224__t0 () (_ BitVec 64)) (assert (= var396_literal_224__t0 (_ bv224 64)) ) ; : ./src/crc8.zz:22 ; 0xa2 ; literal expr (declare-fun var397_literal_162__t0 () (_ BitVec 64)) (assert (= var397_literal_162__t0 (_ bv162 64)) ) ; : ./src/crc8.zz:22 ; 0x9c ; literal expr (declare-fun var398_literal_156__t0 () (_ BitVec 64)) (assert (= var398_literal_156__t0 (_ bv156 64)) ) ; : ./src/crc8.zz:22 ; 0xfc ; literal expr (declare-fun var399_literal_252__t0 () (_ BitVec 64)) (assert (= var399_literal_252__t0 (_ bv252 64)) ) ; : ./src/crc8.zz:22 ; 0xc2 ; literal expr (declare-fun var400_literal_194__t0 () (_ BitVec 64)) (assert (= var400_literal_194__t0 (_ bv194 64)) ) ; : ./src/crc8.zz:22 ; 0x80 ; literal expr (declare-fun var401_literal_128__t0 () (_ BitVec 64)) (assert (= var401_literal_128__t0 (_ bv128 64)) ) ; : ./src/crc8.zz:22 ; 0xbe ; literal expr (declare-fun var402_literal_190__t0 () (_ BitVec 64)) (assert (= var402_literal_190__t0 (_ bv190 64)) ) ; : ./src/crc8.zz:23 ; 0x04 ; literal expr (declare-fun var403_literal_4__t0 () (_ BitVec 64)) (assert (= var403_literal_4__t0 (_ bv4 64)) ) ; : ./src/crc8.zz:23 ; 0x3a ; literal expr (declare-fun var404_literal_58__t0 () (_ BitVec 64)) (assert (= var404_literal_58__t0 (_ bv58 64)) ) ; : ./src/crc8.zz:23 ; 0x78 ; literal expr (declare-fun var405_literal_120__t0 () (_ BitVec 64)) (assert (= var405_literal_120__t0 (_ bv120 64)) ) ; : ./src/crc8.zz:23 ; 0x46 ; literal expr (declare-fun var406_literal_70__t0 () (_ BitVec 64)) (assert (= var406_literal_70__t0 (_ bv70 64)) ) ; : ./src/crc8.zz:23 ; 0x69 ; literal expr (declare-fun var407_literal_105__t0 () (_ BitVec 64)) (assert (= var407_literal_105__t0 (_ bv105 64)) ) ; : ./src/crc8.zz:23 ; 0x57 ; literal expr (declare-fun var408_literal_87__t0 () (_ BitVec 64)) (assert (= var408_literal_87__t0 (_ bv87 64)) ) ; : ./src/crc8.zz:23 ; 0x15 ; literal expr (declare-fun var409_literal_21__t0 () (_ BitVec 64)) (assert (= var409_literal_21__t0 (_ bv21 64)) ) ; : ./src/crc8.zz:23 ; 0x2b ; literal expr (declare-fun var410_literal_43__t0 () (_ BitVec 64)) (assert (= var410_literal_43__t0 (_ bv43 64)) ) ; : ./src/crc8.zz:23 ; 0x91 ; literal expr (declare-fun var411_literal_145__t0 () (_ BitVec 64)) (assert (= var411_literal_145__t0 (_ bv145 64)) ) ; : ./src/crc8.zz:23 ; 0xaf ; literal expr (declare-fun var412_literal_175__t0 () (_ BitVec 64)) (assert (= var412_literal_175__t0 (_ bv175 64)) ) ; : ./src/crc8.zz:23 ; 0xed ; literal expr (declare-fun var413_literal_237__t0 () (_ BitVec 64)) (assert (= var413_literal_237__t0 (_ bv237 64)) ) ; : ./src/crc8.zz:23 ; 0xd3 ; literal expr (declare-fun var414_literal_211__t0 () (_ BitVec 64)) (assert (= var414_literal_211__t0 (_ bv211 64)) ) ; : ./src/crc8.zz:24 ; 0x2d ; literal expr (declare-fun var415_literal_45__t0 () (_ BitVec 64)) (assert (= var415_literal_45__t0 (_ bv45 64)) ) ; : ./src/crc8.zz:24 ; 0x13 ; literal expr (declare-fun var416_literal_19__t0 () (_ BitVec 64)) (assert (= var416_literal_19__t0 (_ bv19 64)) ) ; : ./src/crc8.zz:24 ; 0x51 ; literal expr (declare-fun var417_literal_81__t0 () (_ BitVec 64)) (assert (= var417_literal_81__t0 (_ bv81 64)) ) ; : ./src/crc8.zz:24 ; 0x6f ; literal expr (declare-fun var418_literal_111__t0 () (_ BitVec 64)) (assert (= var418_literal_111__t0 (_ bv111 64)) ) ; : ./src/crc8.zz:24 ; 0xd5 ; literal expr (declare-fun var419_literal_213__t0 () (_ BitVec 64)) (assert (= var419_literal_213__t0 (_ bv213 64)) ) ; : ./src/crc8.zz:24 ; 0xeb ; literal expr (declare-fun var420_literal_235__t0 () (_ BitVec 64)) (assert (= var420_literal_235__t0 (_ bv235 64)) ) ; : ./src/crc8.zz:24 ; 0xa9 ; literal expr (declare-fun var421_literal_169__t0 () (_ BitVec 64)) (assert (= var421_literal_169__t0 (_ bv169 64)) ) ; : ./src/crc8.zz:24 ; 0x97 ; literal expr (declare-fun var422_literal_151__t0 () (_ BitVec 64)) (assert (= var422_literal_151__t0 (_ bv151 64)) ) ; : ./src/crc8.zz:24 ; 0xb8 ; literal expr (declare-fun var423_literal_184__t0 () (_ BitVec 64)) (assert (= var423_literal_184__t0 (_ bv184 64)) ) ; : ./src/crc8.zz:24 ; 0x86 ; literal expr (declare-fun var424_literal_134__t0 () (_ BitVec 64)) (assert (= var424_literal_134__t0 (_ bv134 64)) ) ; : ./src/crc8.zz:24 ; 0xc4 ; literal expr (declare-fun var425_literal_196__t0 () (_ BitVec 64)) (assert (= var425_literal_196__t0 (_ bv196 64)) ) ; : ./src/crc8.zz:24 ; 0xfa ; literal expr (declare-fun var426_literal_250__t0 () (_ BitVec 64)) (assert (= var426_literal_250__t0 (_ bv250 64)) ) ; : ./src/crc8.zz:25 ; 0x40 ; literal expr (declare-fun var427_literal_64__t0 () (_ BitVec 64)) (assert (= var427_literal_64__t0 (_ bv64 64)) ) ; : ./src/crc8.zz:25 ; 0x7e ; literal expr (declare-fun var428_literal_126__t0 () (_ BitVec 64)) (assert (= var428_literal_126__t0 (_ bv126 64)) ) ; : ./src/crc8.zz:25 ; 0x3c ; literal expr (declare-fun var429_literal_60__t0 () (_ BitVec 64)) (assert (= var429_literal_60__t0 (_ bv60 64)) ) ; : ./src/crc8.zz:25 ; 0x02 ; literal expr (declare-fun var430_literal_2__t0 () (_ BitVec 64)) (assert (= var430_literal_2__t0 (_ bv2 64)) ) ; : ./src/crc8.zz:25 ; 0x62 ; literal expr (declare-fun var431_literal_98__t0 () (_ BitVec 64)) (assert (= var431_literal_98__t0 (_ bv98 64)) ) ; : ./src/crc8.zz:25 ; 0x5c ; literal expr (declare-fun var432_literal_92__t0 () (_ BitVec 64)) (assert (= var432_literal_92__t0 (_ bv92 64)) ) ; : ./src/crc8.zz:25 ; 0x1e ; literal expr (declare-fun var433_literal_30__t0 () (_ BitVec 64)) (assert (= var433_literal_30__t0 (_ bv30 64)) ) ; : ./src/crc8.zz:25 ; 0x20 ; literal expr (declare-fun var434_literal_32__t0 () (_ BitVec 64)) (assert (= var434_literal_32__t0 (_ bv32 64)) ) ; : ./src/crc8.zz:25 ; 0x9a ; literal expr (declare-fun var435_literal_154__t0 () (_ BitVec 64)) (assert (= var435_literal_154__t0 (_ bv154 64)) ) ; : ./src/crc8.zz:25 ; 0xa4 ; literal expr (declare-fun var436_literal_164__t0 () (_ BitVec 64)) (assert (= var436_literal_164__t0 (_ bv164 64)) ) ; : ./src/crc8.zz:25 ; 0xe6 ; literal expr (declare-fun var437_literal_230__t0 () (_ BitVec 64)) (assert (= var437_literal_230__t0 (_ bv230 64)) ) ; : ./src/crc8.zz:25 ; 0xd8 ; literal expr (declare-fun var438_literal_216__t0 () (_ BitVec 64)) (assert (= var438_literal_216__t0 (_ bv216 64)) ) ; : ./src/crc8.zz:26 ; 0xf7 ; literal expr (declare-fun var439_literal_247__t0 () (_ BitVec 64)) (assert (= var439_literal_247__t0 (_ bv247 64)) ) ; : ./src/crc8.zz:26 ; 0xc9 ; literal expr (declare-fun var440_literal_201__t0 () (_ BitVec 64)) (assert (= var440_literal_201__t0 (_ bv201 64)) ) ; : ./src/crc8.zz:26 ; 0x8b ; literal expr (declare-fun var441_literal_139__t0 () (_ BitVec 64)) (assert (= var441_literal_139__t0 (_ bv139 64)) ) ; : ./src/crc8.zz:26 ; 0xb5 ; literal expr (declare-fun var442_literal_181__t0 () (_ BitVec 64)) (assert (= var442_literal_181__t0 (_ bv181 64)) ) ; : ./src/crc8.zz:26 ; 0x0f ; literal expr (declare-fun var443_literal_15__t0 () (_ BitVec 64)) (assert (= var443_literal_15__t0 (_ bv15 64)) ) ; : ./src/crc8.zz:26 ; 0x31 ; literal expr (declare-fun var444_literal_49__t0 () (_ BitVec 64)) (assert (= var444_literal_49__t0 (_ bv49 64)) ) ; : ./src/crc8.zz:26 ; 0x73 ; literal expr (declare-fun var445_literal_115__t0 () (_ BitVec 64)) (assert (= var445_literal_115__t0 (_ bv115 64)) ) ; : ./src/crc8.zz:26 ; 0x4d ; literal expr (declare-fun var446_literal_77__t0 () (_ BitVec 64)) (assert (= var446_literal_77__t0 (_ bv77 64)) ) ; : ./src/crc8.zz:26 ; 0x58 ; literal expr (declare-fun var447_literal_88__t0 () (_ BitVec 64)) (assert (= var447_literal_88__t0 (_ bv88 64)) ) ; : ./src/crc8.zz:26 ; 0x66 ; literal expr (declare-fun var448_literal_102__t0 () (_ BitVec 64)) (assert (= var448_literal_102__t0 (_ bv102 64)) ) ; : ./src/crc8.zz:26 ; 0x24 ; literal expr (declare-fun var449_literal_36__t0 () (_ BitVec 64)) (assert (= var449_literal_36__t0 (_ bv36 64)) ) ; : ./src/crc8.zz:26 ; 0x1a ; literal expr (declare-fun var450_literal_26__t0 () (_ BitVec 64)) (assert (= var450_literal_26__t0 (_ bv26 64)) ) ; : ./src/crc8.zz:27 ; 0xa0 ; literal expr (declare-fun var451_literal_160__t0 () (_ BitVec 64)) (assert (= var451_literal_160__t0 (_ bv160 64)) ) ; : ./src/crc8.zz:27 ; 0x9e ; literal expr (declare-fun var452_literal_158__t0 () (_ BitVec 64)) (assert (= var452_literal_158__t0 (_ bv158 64)) ) ; : ./src/crc8.zz:27 ; 0xdc ; literal expr (declare-fun var453_literal_220__t0 () (_ BitVec 64)) (assert (= var453_literal_220__t0 (_ bv220 64)) ) ; : ./src/crc8.zz:27 ; 0xe2 ; literal expr (declare-fun var454_literal_226__t0 () (_ BitVec 64)) (assert (= var454_literal_226__t0 (_ bv226 64)) ) ; : ./src/crc8.zz:27 ; 0xcd ; literal expr (declare-fun var455_literal_205__t0 () (_ BitVec 64)) (assert (= var455_literal_205__t0 (_ bv205 64)) ) ; : ./src/crc8.zz:27 ; 0xf3 ; literal expr (declare-fun var456_literal_243__t0 () (_ BitVec 64)) (assert (= var456_literal_243__t0 (_ bv243 64)) ) ; : ./src/crc8.zz:27 ; 0xb1 ; literal expr (declare-fun var457_literal_177__t0 () (_ BitVec 64)) (assert (= var457_literal_177__t0 (_ bv177 64)) ) ; : ./src/crc8.zz:27 ; 0x8f ; literal expr (declare-fun var458_literal_143__t0 () (_ BitVec 64)) (assert (= var458_literal_143__t0 (_ bv143 64)) ) ; : ./src/crc8.zz:27 ; 0x35 ; literal expr (declare-fun var459_literal_53__t0 () (_ BitVec 64)) (assert (= var459_literal_53__t0 (_ bv53 64)) ) ; : ./src/crc8.zz:27 ; 0x0b ; literal expr (declare-fun var460_literal_11__t0 () (_ BitVec 64)) (assert (= var460_literal_11__t0 (_ bv11 64)) ) ; : ./src/crc8.zz:27 ; 0x49 ; literal expr (declare-fun var461_literal_73__t0 () (_ BitVec 64)) (assert (= var461_literal_73__t0 (_ bv73 64)) ) ; : ./src/crc8.zz:27 ; 0x77 ; literal expr (declare-fun var462_literal_119__t0 () (_ BitVec 64)) (assert (= var462_literal_119__t0 (_ bv119 64)) ) ; : ./src/crc8.zz:28 ; 0x17 ; literal expr (declare-fun var463_literal_23__t0 () (_ BitVec 64)) (assert (= var463_literal_23__t0 (_ bv23 64)) ) ; : ./src/crc8.zz:28 ; 0x29 ; literal expr (declare-fun var464_literal_41__t0 () (_ BitVec 64)) (assert (= var464_literal_41__t0 (_ bv41 64)) ) ; : ./src/crc8.zz:28 ; 0x6b ; literal expr (declare-fun var465_literal_107__t0 () (_ BitVec 64)) (assert (= var465_literal_107__t0 (_ bv107 64)) ) ; : ./src/crc8.zz:28 ; 0x55 ; literal expr (declare-fun var466_literal_85__t0 () (_ BitVec 64)) (assert (= var466_literal_85__t0 (_ bv85 64)) ) ; : ./src/crc8.zz:28 ; 0xef ; literal expr (declare-fun var467_literal_239__t0 () (_ BitVec 64)) (assert (= var467_literal_239__t0 (_ bv239 64)) ) ; : ./src/crc8.zz:28 ; 0xd1 ; literal expr (declare-fun var468_literal_209__t0 () (_ BitVec 64)) (assert (= var468_literal_209__t0 (_ bv209 64)) ) ; : ./src/crc8.zz:28 ; 0x93 ; literal expr (declare-fun var469_literal_147__t0 () (_ BitVec 64)) (assert (= var469_literal_147__t0 (_ bv147 64)) ) ; : ./src/crc8.zz:28 ; 0xad ; literal expr (declare-fun var470_literal_173__t0 () (_ BitVec 64)) (assert (= var470_literal_173__t0 (_ bv173 64)) ) ; : ./src/crc8.zz:28 ; 0x82 ; literal expr (declare-fun var471_literal_130__t0 () (_ BitVec 64)) (assert (= var471_literal_130__t0 (_ bv130 64)) ) ; : ./src/crc8.zz:28 ; 0xbc ; literal expr (declare-fun var472_literal_188__t0 () (_ BitVec 64)) (assert (= var472_literal_188__t0 (_ bv188 64)) ) ; : ./src/crc8.zz:28 ; 0xfe ; literal expr (declare-fun var473_literal_254__t0 () (_ BitVec 64)) (assert (= var473_literal_254__t0 (_ bv254 64)) ) ; : ./src/crc8.zz:28 ; 0xc0 ; literal expr (declare-fun var474_literal_192__t0 () (_ BitVec 64)) (assert (= var474_literal_192__t0 (_ bv192 64)) ) ; : ./src/crc8.zz:29 ; 0x7a ; literal expr (declare-fun var475_literal_122__t0 () (_ BitVec 64)) (assert (= var475_literal_122__t0 (_ bv122 64)) ) ; : ./src/crc8.zz:29 ; 0x44 ; literal expr (declare-fun var476_literal_68__t0 () (_ BitVec 64)) (assert (= var476_literal_68__t0 (_ bv68 64)) ) ; : ./src/crc8.zz:29 ; 0x06 ; literal expr (declare-fun var477_literal_6__t0 () (_ BitVec 64)) (assert (= var477_literal_6__t0 (_ bv6 64)) ) ; : ./src/crc8.zz:29 ; 0x38 ; literal expr (declare-fun var478_literal_56__t0 () (_ BitVec 64)) (assert (= var478_literal_56__t0 (_ bv56 64)) ) ; : ./src/crc8.zz:29 ; 0xc6 ; literal expr (declare-fun var479_literal_198__t0 () (_ BitVec 64)) (assert (= var479_literal_198__t0 (_ bv198 64)) ) ; : ./src/crc8.zz:29 ; 0xf8 ; literal expr (declare-fun var480_literal_248__t0 () (_ BitVec 64)) (assert (= var480_literal_248__t0 (_ bv248 64)) ) ; : ./src/crc8.zz:29 ; 0xba ; literal expr (declare-fun var481_literal_186__t0 () (_ BitVec 64)) (assert (= var481_literal_186__t0 (_ bv186 64)) ) ; : ./src/crc8.zz:29 ; 0x84 ; literal expr (declare-fun var482_literal_132__t0 () (_ BitVec 64)) (assert (= var482_literal_132__t0 (_ bv132 64)) ) ; : ./src/crc8.zz:29 ; 0x3e ; literal expr (declare-fun var483_literal_62__t0 () (_ BitVec 64)) (assert (= var483_literal_62__t0 (_ bv62 64)) ) ; : ./src/crc8.zz:29 ; 0x00 ; literal expr (declare-fun var484_literal_0__t0 () (_ BitVec 64)) (assert (= var484_literal_0__t0 (_ bv0 64)) ) ; : ./src/crc8.zz:29 ; 0x42 ; literal expr (declare-fun var485_literal_66__t0 () (_ BitVec 64)) (assert (= var485_literal_66__t0 (_ bv66 64)) ) ; : ./src/crc8.zz:29 ; 0x7c ; literal expr (declare-fun var486_literal_124__t0 () (_ BitVec 64)) (assert (= var486_literal_124__t0 (_ bv124 64)) ) ; : ./src/crc8.zz:30 ; 0x53 ; literal expr (declare-fun var487_literal_83__t0 () (_ BitVec 64)) (assert (= var487_literal_83__t0 (_ bv83 64)) ) ; : ./src/crc8.zz:30 ; 0x6d ; literal expr (declare-fun var488_literal_109__t0 () (_ BitVec 64)) (assert (= var488_literal_109__t0 (_ bv109 64)) ) ; : ./src/crc8.zz:30 ; 0x2f ; literal expr (declare-fun var489_literal_47__t0 () (_ BitVec 64)) (assert (= var489_literal_47__t0 (_ bv47 64)) ) ; : ./src/crc8.zz:30 ; 0x11 ; literal expr (declare-fun var490_literal_17__t0 () (_ BitVec 64)) (assert (= var490_literal_17__t0 (_ bv17 64)) ) ; : ./src/crc8.zz:30 ; 0xab ; literal expr (declare-fun var491_literal_171__t0 () (_ BitVec 64)) (assert (= var491_literal_171__t0 (_ bv171 64)) ) ; : ./src/crc8.zz:30 ; 0x95 ; literal expr (declare-fun var492_literal_149__t0 () (_ BitVec 64)) (assert (= var492_literal_149__t0 (_ bv149 64)) ) ; : ./src/crc8.zz:30 ; 0xd7 ; literal expr (declare-fun var493_literal_215__t0 () (_ BitVec 64)) (assert (= var493_literal_215__t0 (_ bv215 64)) ) ; : ./src/crc8.zz:30 ; 0xe9 ; literal expr (declare-fun var494_literal_233__t0 () (_ BitVec 64)) (assert (= var494_literal_233__t0 (_ bv233 64)) ) ; : ./src/crc8.zz:30 ; 0x89 ; literal expr (declare-fun var495_literal_137__t0 () (_ BitVec 64)) (assert (= var495_literal_137__t0 (_ bv137 64)) ) ; : ./src/crc8.zz:30 ; 0xb7 ; literal expr (declare-fun var496_literal_183__t0 () (_ BitVec 64)) (assert (= var496_literal_183__t0 (_ bv183 64)) ) ; : ./src/crc8.zz:30 ; 0xf5 ; literal expr (declare-fun var497_literal_245__t0 () (_ BitVec 64)) (assert (= var497_literal_245__t0 (_ bv245 64)) ) ; : ./src/crc8.zz:30 ; 0xcb ; literal expr (declare-fun var498_literal_203__t0 () (_ BitVec 64)) (assert (= var498_literal_203__t0 (_ bv203 64)) ) ; : ./src/crc8.zz:31 ; 0x71 ; literal expr (declare-fun var499_literal_113__t0 () (_ BitVec 64)) (assert (= var499_literal_113__t0 (_ bv113 64)) ) ; : ./src/crc8.zz:31 ; 0x4f ; literal expr (declare-fun var500_literal_79__t0 () (_ BitVec 64)) (assert (= var500_literal_79__t0 (_ bv79 64)) ) ; : ./src/crc8.zz:31 ; 0x0d ; literal expr (declare-fun var501_literal_13__t0 () (_ BitVec 64)) (assert (= var501_literal_13__t0 (_ bv13 64)) ) ; : ./src/crc8.zz:31 ; 0x33 ; literal expr (declare-fun var502_literal_51__t0 () (_ BitVec 64)) (assert (= var502_literal_51__t0 (_ bv51 64)) ) ; : ./src/crc8.zz:31 ; 0x1c ; literal expr (declare-fun var503_literal_28__t0 () (_ BitVec 64)) (assert (= var503_literal_28__t0 (_ bv28 64)) ) ; : ./src/crc8.zz:31 ; 0x22 ; literal expr (declare-fun var504_literal_34__t0 () (_ BitVec 64)) (assert (= var504_literal_34__t0 (_ bv34 64)) ) ; : ./src/crc8.zz:31 ; 0x60 ; literal expr (declare-fun var505_literal_96__t0 () (_ BitVec 64)) (assert (= var505_literal_96__t0 (_ bv96 64)) ) ; : ./src/crc8.zz:31 ; 0x5e ; literal expr (declare-fun var506_literal_94__t0 () (_ BitVec 64)) (assert (= var506_literal_94__t0 (_ bv94 64)) ) ; : ./src/crc8.zz:31 ; 0xe4 ; literal expr (declare-fun var507_literal_228__t0 () (_ BitVec 64)) (assert (= var507_literal_228__t0 (_ bv228 64)) ) ; : ./src/crc8.zz:31 ; 0xda ; literal expr (declare-fun var508_literal_218__t0 () (_ BitVec 64)) (assert (= var508_literal_218__t0 (_ bv218 64)) ) ; : ./src/crc8.zz:31 ; 0x98 ; literal expr (declare-fun var509_literal_152__t0 () (_ BitVec 64)) (assert (= var509_literal_152__t0 (_ bv152 64)) ) ; : ./src/crc8.zz:31 ; 0xa6 ; literal expr (declare-fun var510_literal_166__t0 () (_ BitVec 64)) (assert (= var510_literal_166__t0 (_ bv166 64)) ) ; : ./src/crc8.zz:32 ; 0x01 ; literal expr (declare-fun var511_literal_1__t0 () (_ BitVec 64)) (assert (= var511_literal_1__t0 (_ bv1 64)) ) ; : ./src/crc8.zz:32 ; 0x3f ; literal expr (declare-fun var512_literal_63__t0 () (_ BitVec 64)) (assert (= var512_literal_63__t0 (_ bv63 64)) ) ; : ./src/crc8.zz:32 ; 0x7d ; literal expr (declare-fun var513_literal_125__t0 () (_ BitVec 64)) (assert (= var513_literal_125__t0 (_ bv125 64)) ) ; : ./src/crc8.zz:32 ; 0x43 ; literal expr (declare-fun var514_literal_67__t0 () (_ BitVec 64)) (assert (= var514_literal_67__t0 (_ bv67 64)) ) ; : ./src/crc8.zz:32 ; 0xf9 ; literal expr (declare-fun var515_literal_249__t0 () (_ BitVec 64)) (assert (= var515_literal_249__t0 (_ bv249 64)) ) ; : ./src/crc8.zz:32 ; 0xc7 ; literal expr (declare-fun var516_literal_199__t0 () (_ BitVec 64)) (assert (= var516_literal_199__t0 (_ bv199 64)) ) ; : ./src/crc8.zz:32 ; 0x85 ; literal expr (declare-fun var517_literal_133__t0 () (_ BitVec 64)) (assert (= var517_literal_133__t0 (_ bv133 64)) ) ; : ./src/crc8.zz:32 ; 0xbb ; literal expr (declare-fun var518_literal_187__t0 () (_ BitVec 64)) (assert (= var518_literal_187__t0 (_ bv187 64)) ) ; : ./src/crc8.zz:32 ; 0x94 ; literal expr (declare-fun var519_literal_148__t0 () (_ BitVec 64)) (assert (= var519_literal_148__t0 (_ bv148 64)) ) ; : ./src/crc8.zz:32 ; 0xaa ; literal expr (declare-fun var520_literal_170__t0 () (_ BitVec 64)) (assert (= var520_literal_170__t0 (_ bv170 64)) ) ; : ./src/crc8.zz:32 ; 0xe8 ; literal expr (declare-fun var521_literal_232__t0 () (_ BitVec 64)) (assert (= var521_literal_232__t0 (_ bv232 64)) ) ; : ./src/crc8.zz:32 ; 0xd6 ; literal expr (declare-fun var522_literal_214__t0 () (_ BitVec 64)) (assert (= var522_literal_214__t0 (_ bv214 64)) ) ; : ./src/crc8.zz:33 ; 0x6c ; literal expr (declare-fun var523_literal_108__t0 () (_ BitVec 64)) (assert (= var523_literal_108__t0 (_ bv108 64)) ) ; : ./src/crc8.zz:33 ; 0x52 ; literal expr (declare-fun var524_literal_82__t0 () (_ BitVec 64)) (assert (= var524_literal_82__t0 (_ bv82 64)) ) ; : ./src/crc8.zz:33 ; 0x10 ; literal expr (declare-fun var525_literal_16__t0 () (_ BitVec 64)) (assert (= var525_literal_16__t0 (_ bv16 64)) ) ; : ./src/crc8.zz:33 ; 0x2e ; literal expr (declare-fun var526_literal_46__t0 () (_ BitVec 64)) (assert (= var526_literal_46__t0 (_ bv46 64)) ) ; : ./src/crc8.zz:33 ; 0x4e ; literal expr (declare-fun var527_literal_78__t0 () (_ BitVec 64)) (assert (= var527_literal_78__t0 (_ bv78 64)) ) ; : ./src/crc8.zz:33 ; 0x70 ; literal expr (declare-fun var528_literal_112__t0 () (_ BitVec 64)) (assert (= var528_literal_112__t0 (_ bv112 64)) ) ; : ./src/crc8.zz:33 ; 0x32 ; literal expr (declare-fun var529_literal_50__t0 () (_ BitVec 64)) (assert (= var529_literal_50__t0 (_ bv50 64)) ) ; : ./src/crc8.zz:33 ; 0x0c ; literal expr (declare-fun var530_literal_12__t0 () (_ BitVec 64)) (assert (= var530_literal_12__t0 (_ bv12 64)) ) ; : ./src/crc8.zz:33 ; 0xb6 ; literal expr (declare-fun var531_literal_182__t0 () (_ BitVec 64)) (assert (= var531_literal_182__t0 (_ bv182 64)) ) ; : ./src/crc8.zz:33 ; 0x88 ; literal expr (declare-fun var532_literal_136__t0 () (_ BitVec 64)) (assert (= var532_literal_136__t0 (_ bv136 64)) ) ; : ./src/crc8.zz:33 ; 0xca ; literal expr (declare-fun var533_literal_202__t0 () (_ BitVec 64)) (assert (= var533_literal_202__t0 (_ bv202 64)) ) ; : ./src/crc8.zz:33 ; 0xf4 ; literal expr (declare-fun var534_literal_244__t0 () (_ BitVec 64)) (assert (= var534_literal_244__t0 (_ bv244 64)) ) ; : ./src/crc8.zz:34 ; 0xdb ; literal expr (declare-fun var535_literal_219__t0 () (_ BitVec 64)) (assert (= var535_literal_219__t0 (_ bv219 64)) ) ; : ./src/crc8.zz:34 ; 0xe5 ; literal expr (declare-fun var536_literal_229__t0 () (_ BitVec 64)) (assert (= var536_literal_229__t0 (_ bv229 64)) ) ; : ./src/crc8.zz:34 ; 0xa7 ; literal expr (declare-fun var537_literal_167__t0 () (_ BitVec 64)) (assert (= var537_literal_167__t0 (_ bv167 64)) ) ; : ./src/crc8.zz:34 ; 0x99 ; literal expr (declare-fun var538_literal_153__t0 () (_ BitVec 64)) (assert (= var538_literal_153__t0 (_ bv153 64)) ) ; : ./src/crc8.zz:34 ; 0x23 ; literal expr (declare-fun var539_literal_35__t0 () (_ BitVec 64)) (assert (= var539_literal_35__t0 (_ bv35 64)) ) ; : ./src/crc8.zz:34 ; 0x1d ; literal expr (declare-fun var540_literal_29__t0 () (_ BitVec 64)) (assert (= var540_literal_29__t0 (_ bv29 64)) ) ; : ./src/crc8.zz:34 ; 0x5f ; literal expr (declare-fun var541_literal_95__t0 () (_ BitVec 64)) (assert (= var541_literal_95__t0 (_ bv95 64)) ) ; : ./src/crc8.zz:34 ; 0x61 ; literal expr (declare-fun var542_literal_97__t0 () (_ BitVec 64)) (assert (= var542_literal_97__t0 (_ bv97 64)) ) ; : ./src/crc8.zz:34 ; 0x9f ; literal expr (declare-fun var543_literal_159__t0 () (_ BitVec 64)) (assert (= var543_literal_159__t0 (_ bv159 64)) ) ; : ./src/crc8.zz:34 ; 0xa1 ; literal expr (declare-fun var544_literal_161__t0 () (_ BitVec 64)) (assert (= var544_literal_161__t0 (_ bv161 64)) ) ; : ./src/crc8.zz:34 ; 0xe3 ; literal expr (declare-fun var545_literal_227__t0 () (_ BitVec 64)) (assert (= var545_literal_227__t0 (_ bv227 64)) ) ; : ./src/crc8.zz:34 ; 0xdd ; literal expr (declare-fun var546_literal_221__t0 () (_ BitVec 64)) (assert (= var546_literal_221__t0 (_ bv221 64)) ) ; : ./src/crc8.zz:35 ; 0x67 ; literal expr (declare-fun var547_literal_103__t0 () (_ BitVec 64)) (assert (= var547_literal_103__t0 (_ bv103 64)) ) ; : ./src/crc8.zz:35 ; 0x59 ; literal expr (declare-fun var548_literal_89__t0 () (_ BitVec 64)) (assert (= var548_literal_89__t0 (_ bv89 64)) ) ; : ./src/crc8.zz:35 ; 0x1b ; literal expr (declare-fun var549_literal_27__t0 () (_ BitVec 64)) (assert (= var549_literal_27__t0 (_ bv27 64)) ) ; : ./src/crc8.zz:35 ; 0x25 ; literal expr (declare-fun var550_literal_37__t0 () (_ BitVec 64)) (assert (= var550_literal_37__t0 (_ bv37 64)) ) ; : ./src/crc8.zz:35 ; 0x0a ; literal expr (declare-fun var551_literal_10__t0 () (_ BitVec 64)) (assert (= var551_literal_10__t0 (_ bv10 64)) ) ; : ./src/crc8.zz:35 ; 0x34 ; literal expr (declare-fun var552_literal_52__t0 () (_ BitVec 64)) (assert (= var552_literal_52__t0 (_ bv52 64)) ) ; : ./src/crc8.zz:35 ; 0x76 ; literal expr (declare-fun var553_literal_118__t0 () (_ BitVec 64)) (assert (= var553_literal_118__t0 (_ bv118 64)) ) ; : ./src/crc8.zz:35 ; 0x48 ; literal expr (declare-fun var554_literal_72__t0 () (_ BitVec 64)) (assert (= var554_literal_72__t0 (_ bv72 64)) ) ; : ./src/crc8.zz:35 ; 0xf2 ; literal expr (declare-fun var555_literal_242__t0 () (_ BitVec 64)) (assert (= var555_literal_242__t0 (_ bv242 64)) ) ; : ./src/crc8.zz:35 ; 0xcc ; literal expr (declare-fun var556_literal_204__t0 () (_ BitVec 64)) (assert (= var556_literal_204__t0 (_ bv204 64)) ) ; : ./src/crc8.zz:35 ; 0x8e ; literal expr (declare-fun var557_literal_142__t0 () (_ BitVec 64)) (assert (= var557_literal_142__t0 (_ bv142 64)) ) ; : ./src/crc8.zz:35 ; 0xb0 ; literal expr (declare-fun var558_literal_176__t0 () (_ BitVec 64)) (assert (= var558_literal_176__t0 (_ bv176 64)) ) ; : ./src/crc8.zz:36 ; 0xd0 ; literal expr (declare-fun var559_literal_208__t0 () (_ BitVec 64)) (assert (= var559_literal_208__t0 (_ bv208 64)) ) ; : ./src/crc8.zz:36 ; 0xee ; literal expr (declare-fun var560_literal_238__t0 () (_ BitVec 64)) (assert (= var560_literal_238__t0 (_ bv238 64)) ) ; : ./src/crc8.zz:36 ; 0xac ; literal expr (declare-fun var561_literal_172__t0 () (_ BitVec 64)) (assert (= var561_literal_172__t0 (_ bv172 64)) ) ; : ./src/crc8.zz:36 ; 0x92 ; literal expr (declare-fun var562_literal_146__t0 () (_ BitVec 64)) (assert (= var562_literal_146__t0 (_ bv146 64)) ) ; : ./src/crc8.zz:36 ; 0x28 ; literal expr (declare-fun var563_literal_40__t0 () (_ BitVec 64)) (assert (= var563_literal_40__t0 (_ bv40 64)) ) ; : ./src/crc8.zz:36 ; 0x16 ; literal expr (declare-fun var564_literal_22__t0 () (_ BitVec 64)) (assert (= var564_literal_22__t0 (_ bv22 64)) ) ; : ./src/crc8.zz:36 ; 0x54 ; literal expr (declare-fun var565_literal_84__t0 () (_ BitVec 64)) (assert (= var565_literal_84__t0 (_ bv84 64)) ) ; : ./src/crc8.zz:36 ; 0x6a ; literal expr (declare-fun var566_literal_106__t0 () (_ BitVec 64)) (assert (= var566_literal_106__t0 (_ bv106 64)) ) ; : ./src/crc8.zz:36 ; 0x45 ; literal expr (declare-fun var567_literal_69__t0 () (_ BitVec 64)) (assert (= var567_literal_69__t0 (_ bv69 64)) ) ; : ./src/crc8.zz:36 ; 0x7b ; literal expr (declare-fun var568_literal_123__t0 () (_ BitVec 64)) (assert (= var568_literal_123__t0 (_ bv123 64)) ) ; : ./src/crc8.zz:36 ; 0x39 ; literal expr (declare-fun var569_literal_57__t0 () (_ BitVec 64)) (assert (= var569_literal_57__t0 (_ bv57 64)) ) ; : ./src/crc8.zz:36 ; 0x07 ; literal expr (declare-fun var570_literal_7__t0 () (_ BitVec 64)) (assert (= var570_literal_7__t0 (_ bv7 64)) ) ; : ./src/crc8.zz:37 ; 0xbd ; literal expr (declare-fun var571_literal_189__t0 () (_ BitVec 64)) (assert (= var571_literal_189__t0 (_ bv189 64)) ) ; : ./src/crc8.zz:37 ; 0x83 ; literal expr (declare-fun var572_literal_131__t0 () (_ BitVec 64)) (assert (= var572_literal_131__t0 (_ bv131 64)) ) ; : ./src/crc8.zz:37 ; 0xc1 ; literal expr (declare-fun var573_literal_193__t0 () (_ BitVec 64)) (assert (= var573_literal_193__t0 (_ bv193 64)) ) ; : ./src/crc8.zz:37 ; 0xff ; literal expr (declare-fun var574_literal_255__t0 () (_ BitVec 64)) (assert (= var574_literal_255__t0 (_ bv255 64)) ) ; : ./src/crc8.zz:15 ; { ; 0xea, 0xd4, 0x96, 0xa8, 0x12, 0x2c, 0x6e, 0x50, 0x7f, 0x41, 0x03, 0x3d, ; 0x87, 0xb9, 0xfb, 0xc5, 0xa5, 0x9b, 0xd9, 0xe7, 0x5d, 0x63, 0x21, 0x1f, ; 0x30, 0x0e, 0x4c, 0x72, 0xc8, 0xf6, 0xb4, 0x8a, 0x74, 0x4a, 0x08, 0x36, ; 0x8c, 0xb2, 0xf0, 0xce, 0xe1, 0xdf, 0x9d, 0xa3, 0x19, 0x27, 0x65, 0x5b, ; 0x3b, 0x05, 0x47, 0x79, 0xc3, 0xfd, 0xbf, 0x81, 0xae, 0x90, 0xd2, 0xec, ; 0x56, 0x68, 0x2a, 0x14, 0xb3, 0x8d, 0xcf, 0xf1, 0x4b, 0x75, 0x37, 0x09, ; 0x26, 0x18, 0x5a, 0x64, 0xde, 0xe0, 0xa2, 0x9c, 0xfc, 0xc2, 0x80, 0xbe, ; 0x04, 0x3a, 0x78, 0x46, 0x69, 0x57, 0x15, 0x2b, 0x91, 0xaf, 0xed, 0xd3, ; 0x2d, 0x13, 0x51, 0x6f, 0xd5, 0xeb, 0xa9, 0x97, 0xb8, 0x86, 0xc4, 0xfa, ; 0x40, 0x7e, 0x3c, 0x02, 0x62, 0x5c, 0x1e, 0x20, 0x9a, 0xa4, 0xe6, 0xd8, ; 0xf7, 0xc9, 0x8b, 0xb5, 0x0f, 0x31, 0x73, 0x4d, 0x58, 0x66, 0x24, 0x1a, ; 0xa0, 0x9e, 0xdc, 0xe2, 0xcd, 0xf3, 0xb1, 0x8f, 0x35, 0x0b, 0x49, 0x77, ; 0x17, 0x29, 0x6b, 0x55, 0xef, 0xd1, 0x93, 0xad, 0x82, 0xbc, 0xfe, 0xc0, ; 0x7a, 0x44, 0x06, 0x38, 0xc6, 0xf8, 0xba, 0x84, 0x3e, 0x00, 0x42, 0x7c, ; 0x53, 0x6d, 0x2f, 0x11, 0xab, 0x95, 0xd7, 0xe9, 0x89, 0xb7, 0xf5, 0xcb, ; 0x71, 0x4f, 0x0d, 0x33, 0x1c, 0x22, 0x60, 0x5e, 0xe4, 0xda, 0x98, 0xa6, ; 0x01, 0x3f, 0x7d, 0x43, 0xf9, 0xc7, 0x85, 0xbb, 0x94, 0xaa, 0xe8, 0xd6, ; 0x6c, 0x52, 0x10, 0x2e, 0x4e, 0x70, 0x32, 0x0c, 0xb6, 0x88, 0xca, 0xf4, ; 0xdb, 0xe5, 0xa7, 0x99, 0x23, 0x1d, 0x5f, 0x61, 0x9f, 0xa1, 0xe3, 0xdd, ; 0x67, 0x59, 0x1b, 0x25, 0x0a, 0x34, 0x76, 0x48, 0xf2, 0xcc, 0x8e, 0xb0, ; 0xd0, 0xee, 0xac, 0x92, 0x28, 0x16, 0x54, 0x6a, 0x45, 0x7b, 0x39, 0x07, ; 0xbd, 0x83, 0xc1, 0xff ; } (declare-fun var575_literal_array_575__t0 () (_ BitVec 64)) (declare-fun var576_true__t0 () Bool) (assert (= var576_true__t0 (theory1_safe var575_literal_array_575__t0) ) ) (assert var576_true__t0 ) ; : ./src/crc8.zz:15 ; static u8 crc8_table[256] = { ; 0xea, 0xd4, 0x96, 0xa8, 0x12, 0x2c, 0x6e, 0x50, 0x7f, 0x41, 0x03, 0x3d, ; 0x87, 0xb9, 0xfb, 0xc5, 0xa5, 0x9b, 0xd9, 0xe7, 0x5d, 0x63, 0x21, 0x1f, ; 0x30, 0x0e, 0x4c, 0x72, 0xc8, 0xf6, 0xb4, 0x8a, 0x74, 0x4a, 0x08, 0x36, ; 0x8c, 0xb2, 0xf0, 0xce, 0xe1, 0xdf, 0x9d, 0xa3, 0x19, 0x27, 0x65, 0x5b, ; 0x3b, 0x05, 0x47, 0x79, 0xc3, 0xfd, 0xbf, 0x81, 0xae, 0x90, 0xd2, 0xec, ; 0x56, 0x68, 0x2a, 0x14, 0xb3, 0x8d, 0xcf, 0xf1, 0x4b, 0x75, 0x37, 0x09, ; 0x26, 0x18, 0x5a, 0x64, 0xde, 0xe0, 0xa2, 0x9c, 0xfc, 0xc2, 0x80, 0xbe, ; 0x04, 0x3a, 0x78, 0x46, 0x69, 0x57, 0x15, 0x2b, 0x91, 0xaf, 0xed, 0xd3, ; 0x2d, 0x13, 0x51, 0x6f, 0xd5, 0xeb, 0xa9, 0x97, 0xb8, 0x86, 0xc4, 0xfa, ; 0x40, 0x7e, 0x3c, 0x02, 0x62, 0x5c, 0x1e, 0x20, 0x9a, 0xa4, 0xe6, 0xd8, ; 0xf7, 0xc9, 0x8b, 0xb5, 0x0f, 0x31, 0x73, 0x4d, 0x58, 0x66, 0x24, 0x1a, ; 0xa0, 0x9e, 0xdc, 0xe2, 0xcd, 0xf3, 0xb1, 0x8f, 0x35, 0x0b, 0x49, 0x77, ; 0x17, 0x29, 0x6b, 0x55, 0xef, 0xd1, 0x93, 0xad, 0x82, 0xbc, 0xfe, 0xc0, ; 0x7a, 0x44, 0x06, 0x38, 0xc6, 0xf8, 0xba, 0x84, 0x3e, 0x00, 0x42, 0x7c, ; 0x53, 0x6d, 0x2f, 0x11, 0xab, 0x95, 0xd7, 0xe9, 0x89, 0xb7, 0xf5, 0xcb, ; 0x71, 0x4f, 0x0d, 0x33, 0x1c, 0x22, 0x60, 0x5e, 0xe4, 0xda, 0x98, 0xa6, ; 0x01, 0x3f, 0x7d, 0x43, 0xf9, 0xc7, 0x85, 0xbb, 0x94, 0xaa, 0xe8, 0xd6, ; 0x6c, 0x52, 0x10, 0x2e, 0x4e, 0x70, 0x32, 0x0c, 0xb6, 0x88, 0xca, 0xf4, ; 0xdb, 0xe5, 0xa7, 0x99, 0x23, 0x1d, 0x5f, 0x61, 0x9f, 0xa1, 0xe3, 0xdd, ; 0x67, 0x59, 0x1b, 0x25, 0x0a, 0x34, 0x76, 0x48, 0xf2, 0xcc, 0x8e, 0xb0, ; 0xd0, 0xee, 0xac, 0x92, 0x28, 0x16, 0x54, 0x6a, 0x45, 0x7b, 0x39, 0x07, ; 0xbd, 0x83, 0xc1, 0xff ; }; (declare-fun var577_safe_literal_array_575_____safe___carrier__crc8__crc8_table___t0 () Bool) (assert (= var577_safe_literal_array_575_____safe___carrier__crc8__crc8_table___t0 (theory1_safe var575_literal_array_575__t0) ) ) (declare-fun var316___carrier__crc8__crc8_table__t1 () (_ BitVec 64)) (assert (= var577_safe_literal_array_575_____safe___carrier__crc8__crc8_table___t0 (theory1_safe var316___carrier__crc8__crc8_table__t1) ) ) (declare-fun var578_nullterm_literal_array_575_____nullterm___carrier__crc8__crc8_table___t0 () Bool) (assert (= var578_nullterm_literal_array_575_____nullterm___carrier__crc8__crc8_table___t0 (theory2_nullterm var575_literal_array_575__t0) ) ) (assert (= var578_nullterm_literal_array_575_____nullterm___carrier__crc8__crc8_table___t0 (theory2_nullterm var316___carrier__crc8__crc8_table__t1) ) ) (declare-fun var835_len___carrier__crc8__crc8_table___t0 () (_ BitVec 64)) (assert (= var835_len___carrier__crc8__crc8_table___t0 (theory0_len var316___carrier__crc8__crc8_table__t1) ) ) (assert (= var835_len___carrier__crc8__crc8_table___t0 (_ bv256 64)) ) ; : ./src/crc8.zz:46 ; export fn crc8(u8 mut crc, u8* mut data, usize l) -> u8 ; where l <= len(data) ; { ; if data == 0 { ; return crc; ; } ; crc &= 0xff; ; u8 * mut end; ; unsafe { ; end = data + l; ; } ; while data < end { ; unsafe { ; crc = crc8_table[crc ^ *(data++)]; ; } ; } ; return crc; ; } (declare-fun var836___carrier__crc8__crc8__t0 () (_ BitVec 64)) (declare-fun var837_true__t0 () Bool) (assert (= var837_true__t0 (theory1_safe var836___carrier__crc8__crc8__t0) ) ) (assert var837_true__t0 ) ; : ./src/identity.zz:62 ; fn to_str(usize size, err::Err+et mut* e, char mut* mut to, usize mut l, u8 version, u8 typ, u8* k) -> usize ; where err::checked(*e) ; where len(to) >= l && l > 0 ; where size == 32 || size == 64 ; model nullterm(to) ; { ; u8 static zero[64] = { 0 }; ; if (as(memcmp(zero, k, size)) == 0) { ; err::fail(e, 22, "invalid address: zero"); ; static_attest(nullterm(to)); ; return 0; ; } ; ; u8 mut b[64 + 3] = {0}; ; b[0] = version; ; b[1] = typ; ; memcpy(b + 2, k, size); ; ; usize s2 = size + 2; ; if version == 8 { ; b[s2] = crc8::broken_crc8(0, b, s2); ; } else { ; b[s2] = crc8::crc8(0, b, s2); ; } ; ; static_attest(err::checked(*e)); ; ; //l -= 1; ; if (!as(b58::b58enc(to, &l, b, size + 3))) { ; err::fail(e, 22, "invalid bs58"); ; return 0; ; } ; ; //b58enc already adds a zero ; l -= 1; ; //to[l] = 0; ; return l; ; } (declare-fun var838___carrier__identity__to_str__t0 () (_ BitVec 64)) (declare-fun var839_true__t0 () Bool) (assert (= var839_true__t0 (theory1_safe var838___carrier__identity__to_str__t0) ) ) (assert var839_true__t0 ) ; : ./src/identity.zz:122 ; export fn identity_to_str (err::Err+et mut* e, char mut* to, usize l, Identity* from) -> usize ; where err::checked(*e) ; where len(to) >= l && l > 0 ; model nullterm(to) ; { ; return to_str(32, e, to, l, 8, 9, from->k); ; } (declare-fun var840___carrier__identity__identity_to_str__t0 () (_ BitVec 64)) (declare-fun var841_true__t0 () Bool) (assert (= var841_true__t0 (theory1_safe var840___carrier__identity__identity_to_str__t0) ) ) (assert var841_true__t0 ) ; : /home/aep/proj/zz/modules/log/./src/lib.zz:19 ; export fn warn(char * callsite_source module, char *fmt, ...) ; { ; fprintf(stderr, "[\x1B[33mWRN\x1B[0m] %s ", module); ; va_list mut args; ; va_start (args, fmt); ; vfprintf( ; stderr, ; fmt, ; args ; ); ; va_end (args); ; fprintf(stderr, "\n"); ; } (declare-fun var842___log__warn__t0 () (_ BitVec 64)) (declare-fun var843_true__t0 () Bool) (assert (= var843_true__t0 (theory1_safe var842___log__warn__t0) ) ) (assert var843_true__t0 ) ; : ./src/endpoint.zz:360 ; fn stream_connect(stream::Stream mut *self, channel::Channel mut*chan, err::Err+et mut*e, slice::Slice * msg) -> bool ; where err::checked(*e) ; where safe(msg->mem) ; { ; if self->state == 0 { ; self->state = 1; ; log::debug("decode connect here"); ; hex::dump_slice(msg); ; ; ; identity::Identity mut ii = {0}; ; bool mut has_identity = false; ; let mut handshake = slice::slice::Slice{mem: 0}; ; u64 mut timestamp = 0; ; u64 mut route = 0; ; ; let mut dec = protonerf::decode(proto::PeerConnectRequest, msg->mem, msg->size); ; for (;;) { ; let field = dec.next(e); ; if err::check(e) { ; return false; ; } ; if !field.valid { ; break; ; } ; switch field.index { ; proto::PeerConnectRequestField::Identity => { ; if field.a == 0 || field.value.v_len != 32 { ; err::fail(e, 1, "unexpected proto wire"); ; return false; ; } ; memcpy(ii.k, field.a, 32); ; ; char mut m[60]; ; usize l = identity::identity_to_str(e, m, 60, &ii); ; if err::check(e) { ; return false; ; } ; log::warn("connect request from identity %.*s", (int)l, m); ; has_identity = true; ; } ; proto::PeerConnectRequestField::Timestamp => { ; timestamp = field.value.v_u64; ; } ; proto::PeerConnectRequestField::Handshake => { ; handshake = slice::slice::Slice { ; mem: field.a, ; size: field.value.v_len, ; }; ; } ; proto::PeerConnectRequestField::Route => { ; route = field.value.v_u64; ; } ; proto::PeerConnectRequestField::Paths => { ; //TODO ; } ; default => { ; } ; } ; } ; ; if !has_identity || handshake.mem == 0 || timestamp == 0 || route == 0 { ; err::fail(e, 13, "missing protobuf field"); ; return false; ; } ; ; ; chan->close(e, streamid); ; if err::check(e) { ; return false; ; } ; ; ; } ; return true; ; } (declare-fun var844___carrier__endpoint__stream_connect__t0 () (_ BitVec 64)) (declare-fun var845_true__t0 () Bool) (assert (= var845_true__t0 (theory1_safe var844___carrier__endpoint__stream_connect__t0) ) ) (assert var845_true__t0 ) ; : ./src/stream.zz:29 ; export fn incomming_stream(Stream mut*self, channel::Channel mut* chan, err::Err+et mut *e, u64 order, Slice *b) -> bool ; where err::checked(*e) ; { ; if order <= self->order_incomming { ; // already seen, dont resend ; return true; ; } ; if order != self->order_incomming + 1 { ; // TODO buffer ; // cannot accept, resend later ; return false; ; } ; self->order_incomming += 1; ; ; if self->stream == 0 { ; return true; ; } ; static_attest(safe(self->stream)); ; ; return self->stream(self, chan, e, b); ; } (declare-fun var846___carrier__stream__incomming_stream__t0 () (_ BitVec 64)) (declare-fun var847_true__t0 () Bool) (assert (= var847_true__t0 (theory1_safe var846___carrier__stream__incomming_stream__t0) ) ) (assert var847_true__t0 ) ; : ./src/stream.zz:51 ; export fn incomming_close(Stream mut*self, channel::Channel mut* chan, err::Err+et mut *e, u64 order) -> bool ; where err::checked(*e) ; { ; if order <= self->order_incomming { ; // already seen, dont resend ; return true; ; } ; if order != self->order_incomming + 1 { ; // TODO buffer ; // cannot accept, resend later ; return false; ; } ; self->order_incomming += 1; ; ; if self->close == 0 { ; return true; ; } ; static_attest(safe(self->close)); ; ; self->close(self, chan, e); ; ; return true; ; } (declare-fun var848___carrier__stream__incomming_close__t0 () (_ BitVec 64)) (declare-fun var849_true__t0 () Bool) (assert (= var849_true__t0 (theory1_safe var848___carrier__stream__incomming_close__t0) ) ) (assert var849_true__t0 ) ; : ./src/peering.zz:21 ; export fn received(Peering mut *self, Transport transport, address::Address addr) { ; for (usize mut i = 0; i < static(len(self->paths));i++) { ; if !self->paths[i].used { ; self->paths[i].transport = transport; ; self->paths[i].addr = addr; ; self->paths[i].used = true; ; self->paths[i].active = true; ; break; ; } ; } ; } (declare-fun var850___carrier__peering__received__t0 () (_ BitVec 64)) (declare-fun var851_true__t0 () Bool) (assert (= var851_true__t0 (theory1_safe var850___carrier__peering__received__t0) ) ) (assert var851_true__t0 ) ; : ./src/channel.zz:132 ; pub fn pull(Channel mut* self, err::Err+et mut* e, string::String+st mut* buf) -> bool ; where err::checked(*e) ; where st >= 4 + 8 + 8 + 320 ; { ; u64 counter_be = byteorder::to_be64(self->counter_out + 1 /* rust version has an off by one*/); ; u8* counter_b = (u8*)&counter_be; ; ; u64 mut route = self->route; ; u8 mut* mut route_b = (u8 mut*)&route; ; if self->responder { ; unsafe { ; route_b[7] |= 0b00000001; ; } ; } ; ; // version 1B ; buf->mem[0] = 0x09; ; // reserved 3B ; buf->mem[1] = 0x00; ; buf->mem[2] = 0x00; ; buf->mem[3] = 0x00; ; unsafe { ; std::memcpy(buf->mem + 4, route_b, 8); ; std::memcpy(buf->mem + 4 + 8, counter_b, 8); ; } ; ; buf->len = 4 + 8 + 8; ; usize unencrypted_size = buf->len; ; ; //broken header crc ; buf->mem[buf->len] = (char)crc8::broken_crc8(0, (u8*)buf->mem, 4 + 8 + 8); ; buf->len += 1; ; ; //flags ; buf->mem[buf->len] = 0x00; ; buf->len += 1; ; ; //payload size ; u16 mut * payload_size = (u16 mut*)(buf->mem + buf->len); ; buf->len += 2; ; ; ; usize size_before_payload = buf->len; ; ; ; // all outgoing acks will fit in because 32 * 8 = 256 ; // if they did not, we would need a fifo ; if self->outgoing_acks_at > 0 { ; ; // frame type ; buf->mem[buf->len] = 0x01; ; buf->len += 1; ; ; // ack delay ; buf->mem[buf->len ] = 0x00; ; buf->mem[buf->len + 1] = 0x01; ; buf->len += 2; ; ; // number of acks ; buf->mem[buf->len ] = 0x00; ; buf->mem[buf->len+ 1] = (char)self->outgoing_acks_at; ; buf->len += 2; ; ; //TODO acks must be sorted ; static_attest(len(self->outgoing_acks) > self->outgoing_acks_at); ; for (usize mut i = 0; i < (usize)self->outgoing_acks_at ; i++) { ; assert(buf->len < st); ; u64 ackd = byteorder::to_be64((self->outgoing_acks)[i]); ; unsafe { ; std::memcpy(buf->mem + buf->len , &ackd, 8); ; } ; buf->len += 8; ; } ; self->outgoing_acks_at = 0; ; } ; ; ; // deque some frames ; u64 time = 1; ; static_attest(len(buf->mem) > buf->len); ; buf->len += self->q.send(time, (u8 mut*)buf->mem + buf->len, st - buf->len, self->counter_out); ; ; ; // nothing in the packet ; if buf->len - size_before_payload < 1 { ; return false; ; } ; ; ; ; (*payload_size) = byteorder::to_be16(buf->len - size_before_payload); ; ; // padding to %64 ; buf->len += 64 - ((buf->len + 16) % 64); ; if buf->len > st { ; buf->len = st; ; } ; ; usize padded_size = buf->len - unencrypted_size; ; usize budget = st - unencrypted_size; ; ; ; u8* plaintext = (u8*)buf->mem + 4 + 8 + 8; ; static_attest(safe(plaintext)); ; ; ; ; u8 mut* ciphertext = (u8 mut*)buf->mem + unencrypted_size; ; static_attest(safe(ciphertext)); ; ; static_attest(len(ciphertext) >= padded_size); ; static_attest(len(ciphertext) >= budget); ; static_attest(buf->len < len(buf->mem)); ; ; //log::debug("pkt before encrypt:"); ; //hex::dump((u8*)buf->mem, buf->len); ; ; usize cipherlen = cipher::encrypt( ; &(self->c_mine), ; e, ; plaintext, ; padded_size, ; self->counter_out, ; ciphertext, ; budget ; ); ; ; if err::check(e) { ; return false; ; } ; ; self->counter_out += 1; ; ; buf->len = unencrypted_size + cipherlen; ; return true; ; } (declare-fun var852___carrier__channel__pull__t0 () (_ BitVec 64)) (declare-fun var853_true__t0 () Bool) (assert (= var853_true__t0 (theory1_safe var852___carrier__channel__pull__t0) ) ) (assert var853_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:9 ; Entry ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:7 ; const usize DYNSIZE = 16; ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:7 ; 16 ; literal expr (declare-fun var856_literal_16__t0 () (_ BitVec 64)) (assert (= var856_literal_16__t0 (_ bv16 64)) ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:7 ; const usize DYNSIZE = 16; (declare-fun var857_safe_literal_16_____safe___hpack__decoder__DYNSIZE___t0 () Bool) (assert (= var857_safe_literal_16_____safe___hpack__decoder__DYNSIZE___t0 (theory1_safe var856_literal_16__t0) ) ) (declare-fun var855___hpack__decoder__DYNSIZE__t1 () (_ BitVec 64)) (assert (= var857_safe_literal_16_____safe___hpack__decoder__DYNSIZE___t0 (theory1_safe var855___hpack__decoder__DYNSIZE__t1) ) ) (declare-fun var858_nullterm_literal_16_____nullterm___hpack__decoder__DYNSIZE___t0 () Bool) (assert (= var858_nullterm_literal_16_____nullterm___hpack__decoder__DYNSIZE___t0 (theory2_nullterm var856_literal_16__t0) ) ) (assert (= var858_nullterm_literal_16_____nullterm___hpack__decoder__DYNSIZE___t0 (theory2_nullterm var855___hpack__decoder__DYNSIZE__t1) ) ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:7 ; 16 (declare-fun var859_implicit_coercion_of_literal_16__t0 () (_ BitVec 64)) (assert (! (= var859_implicit_coercion_of_literal_16__t0 var856_literal_16__t0) :named A1))(declare-fun var855___hpack__decoder__DYNSIZE__t0 () (_ BitVec 64)) (assert (= var855___hpack__decoder__DYNSIZE__t1 (ite true var859_implicit_coercion_of_literal_16__t0 var855___hpack__decoder__DYNSIZE__t0) ) ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:181 ; Iterator ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:190 ; export fn decode(Slice wire) -> Iterator ; { ; return Iterator { ; wire: wire, ; at: 0, ; }; ; } (declare-fun var861___hpack__decoder__decode__t0 () (_ BitVec 64)) (declare-fun var862_true__t0 () Bool) (assert (= var862_true__t0 (theory1_safe var861___hpack__decoder__decode__t0) ) ) (assert var862_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:41 ; pub fn decode_integer(Iterator mut* self, err::Err+et mut*e, u8 prefix_size) -> uint ; where err::checked(*e) ; where prefix_size > 0 ; where prefix_size < 9 ; { ; ; // Make sure there's no overflow in the shift operation ; u8 mut mask = 0xff; ; if prefix_size < 8 { ; mask = (1 << prefix_size) - 1; ; } ; ; static_attest(len(self->wire.mem) > self->at); ; uint mut value = as((self->wire.mem[self->at] & mask)); ; (self->at)++; ; ; // Value fits in the prefix bits. ; if value < as(mask) { ; return value; ; } ; ; ; usize mut consumed = 1; ; // The value does not fit into the prefix bits, so we read as many following ; // bytes as necessary to decode the integer. ; u8 mut m = 0; ; ; for (; self->at < self->wire.size; (self->at)++) { ; ; ; consumed += 1; ; static_attest(len(self->wire.mem) > self->at); ; u8 b = self->wire.mem[self->at]; ; value += as((b & 127) * (1 << m)); ; m += 7; ; ; if (b & 128) != 128 { ; (self->at)++; ; return value; ; } ; ; // The octet limit is chosen such that the maximum allowed *value* can ; // never overflow an unsigned 32-bit integer. The maximum value of any ; // integer that can be encoded with 5 octets is ~2^28 ; if consumed >= 5 { ; err::fail(e, 15, "integer overflow"); ; return 0; ; } ; ; } ; ; static_attest(err::checked(*e)); ; err::fail(e, 15, "eof"); ; return 0; ; } (declare-fun var863___hpack__decoder__decode_integer__t0 () (_ BitVec 64)) (declare-fun var864_true__t0 () Bool) (assert (= var864_true__t0 (theory1_safe var863___hpack__decoder__decode_integer__t0) ) ) (assert var864_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:258 ; static char* STATIC_KEYS[] = { ; 0, ; ":authority", ; ":method", ; ":method", ; ":path", ; ":path", ; ":scheme", ; ":scheme", ; ":status", ; ":status", ; ":status", ; ":status", ; ":status", ; ":status", ; ":status", ; "accept-charset", ; "accept-encoding", ; "accept-language", ; "accept-ranges", ; "accept", ; "access-control-allow-origin", ; "age", ; "allow", ; "authorization", ; "cache-control", ; "content-disposition", ; "content-encoding", ; "content-language", ; "content-length", ; "content-location", ; "content-range", ; "content-type", ; "cookie", ; "date", ; "etag", ; "expect", ; "expires", ; "from", ; "host", ; "if-match", ; "if-modified-since", ; "if-none-match", ; "if-range", ; "if-unmodified-since", ; "last-modified", ; "link", ; "location", ; "max-forwards", ; "proxy-authenticate", ; "proxy-authorization", ; "range", ; "referer", ; "refresh", ; "retry-after", ; "server", ; "set-cookie", ; "strict-transport-security", ; "transfer-encoding", ; "user-agent", ; "vary", ; "via", ; "www-authenticate", ; }; ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:258 ; { ; 0, ; ":authority", ; ":method", ; ":method", ; ":path", ; ":path", ; ":scheme", ; ":scheme", ; ":status", ; ":status", ; ":status", ; ":status", ; ":status", ; ":status", ; ":status", ; "accept-charset", ; "accept-encoding", ; "accept-language", ; "accept-ranges", ; "accept", ; "access-control-allow-origin", ; "age", ; "allow", ; "authorization", ; "cache-control", ; "content-disposition", ; "content-encoding", ; "content-language", ; "content-length", ; "content-location", ; "content-range", ; "content-type", ; "cookie", ; "date", ; "etag", ; "expect", ; "expires", ; "from", ; "host", ; "if-match", ; "if-modified-since", ; "if-none-match", ; "if-range", ; "if-unmodified-since", ; "last-modified", ; "link", ; "location", ; "max-forwards", ; "proxy-authenticate", ; "proxy-authorization", ; "range", ; "referer", ; "refresh", ; "retry-after", ; "server", ; "set-cookie", ; "strict-transport-security", ; "transfer-encoding", ; "user-agent", ; "vary", ; "via", ; "www-authenticate", ; } ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:259 ; 0 ; literal expr (declare-fun var866_literal_0__t0 () (_ BitVec 64)) (assert (= var866_literal_0__t0 (_ bv0 64)) ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:260 ; ":authority" (declare-fun var867_literal_string___authority___t0 () (_ BitVec 64)) (declare-fun var868_true__t0 () Bool) (assert (= var868_true__t0 (theory1_safe var867_literal_string___authority___t0) ) ) (assert var868_true__t0 ) (declare-fun var869_true__t0 () Bool) (assert (= var869_true__t0 (theory2_nullterm var867_literal_string___authority___t0) ) ) (assert var869_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:261 ; ":method" (declare-fun var870_literal_string___method___t0 () (_ BitVec 64)) (declare-fun var871_true__t0 () Bool) (assert (= var871_true__t0 (theory1_safe var870_literal_string___method___t0) ) ) (assert var871_true__t0 ) (declare-fun var872_true__t0 () Bool) (assert (= var872_true__t0 (theory2_nullterm var870_literal_string___method___t0) ) ) (assert var872_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:262 ; ":method" (declare-fun var873_literal_string___method___t0 () (_ BitVec 64)) (declare-fun var874_true__t0 () Bool) (assert (= var874_true__t0 (theory1_safe var873_literal_string___method___t0) ) ) (assert var874_true__t0 ) (declare-fun var875_true__t0 () Bool) (assert (= var875_true__t0 (theory2_nullterm var873_literal_string___method___t0) ) ) (assert var875_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:263 ; ":path" (declare-fun var876_literal_string___path___t0 () (_ BitVec 64)) (declare-fun var877_true__t0 () Bool) (assert (= var877_true__t0 (theory1_safe var876_literal_string___path___t0) ) ) (assert var877_true__t0 ) (declare-fun var878_true__t0 () Bool) (assert (= var878_true__t0 (theory2_nullterm var876_literal_string___path___t0) ) ) (assert var878_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:264 ; ":path" (declare-fun var879_literal_string___path___t0 () (_ BitVec 64)) (declare-fun var880_true__t0 () Bool) (assert (= var880_true__t0 (theory1_safe var879_literal_string___path___t0) ) ) (assert var880_true__t0 ) (declare-fun var881_true__t0 () Bool) (assert (= var881_true__t0 (theory2_nullterm var879_literal_string___path___t0) ) ) (assert var881_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:265 ; ":scheme" (declare-fun var882_literal_string___scheme___t0 () (_ BitVec 64)) (declare-fun var883_true__t0 () Bool) (assert (= var883_true__t0 (theory1_safe var882_literal_string___scheme___t0) ) ) (assert var883_true__t0 ) (declare-fun var884_true__t0 () Bool) (assert (= var884_true__t0 (theory2_nullterm var882_literal_string___scheme___t0) ) ) (assert var884_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:266 ; ":scheme" (declare-fun var885_literal_string___scheme___t0 () (_ BitVec 64)) (declare-fun var886_true__t0 () Bool) (assert (= var886_true__t0 (theory1_safe var885_literal_string___scheme___t0) ) ) (assert var886_true__t0 ) (declare-fun var887_true__t0 () Bool) (assert (= var887_true__t0 (theory2_nullterm var885_literal_string___scheme___t0) ) ) (assert var887_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:267 ; ":status" (declare-fun var888_literal_string___status___t0 () (_ BitVec 64)) (declare-fun var889_true__t0 () Bool) (assert (= var889_true__t0 (theory1_safe var888_literal_string___status___t0) ) ) (assert var889_true__t0 ) (declare-fun var890_true__t0 () Bool) (assert (= var890_true__t0 (theory2_nullterm var888_literal_string___status___t0) ) ) (assert var890_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:268 ; ":status" (declare-fun var891_literal_string___status___t0 () (_ BitVec 64)) (declare-fun var892_true__t0 () Bool) (assert (= var892_true__t0 (theory1_safe var891_literal_string___status___t0) ) ) (assert var892_true__t0 ) (declare-fun var893_true__t0 () Bool) (assert (= var893_true__t0 (theory2_nullterm var891_literal_string___status___t0) ) ) (assert var893_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:269 ; ":status" (declare-fun var894_literal_string___status___t0 () (_ BitVec 64)) (declare-fun var895_true__t0 () Bool) (assert (= var895_true__t0 (theory1_safe var894_literal_string___status___t0) ) ) (assert var895_true__t0 ) (declare-fun var896_true__t0 () Bool) (assert (= var896_true__t0 (theory2_nullterm var894_literal_string___status___t0) ) ) (assert var896_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:270 ; ":status" (declare-fun var897_literal_string___status___t0 () (_ BitVec 64)) (declare-fun var898_true__t0 () Bool) (assert (= var898_true__t0 (theory1_safe var897_literal_string___status___t0) ) ) (assert var898_true__t0 ) (declare-fun var899_true__t0 () Bool) (assert (= var899_true__t0 (theory2_nullterm var897_literal_string___status___t0) ) ) (assert var899_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:271 ; ":status" (declare-fun var900_literal_string___status___t0 () (_ BitVec 64)) (declare-fun var901_true__t0 () Bool) (assert (= var901_true__t0 (theory1_safe var900_literal_string___status___t0) ) ) (assert var901_true__t0 ) (declare-fun var902_true__t0 () Bool) (assert (= var902_true__t0 (theory2_nullterm var900_literal_string___status___t0) ) ) (assert var902_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:272 ; ":status" (declare-fun var903_literal_string___status___t0 () (_ BitVec 64)) (declare-fun var904_true__t0 () Bool) (assert (= var904_true__t0 (theory1_safe var903_literal_string___status___t0) ) ) (assert var904_true__t0 ) (declare-fun var905_true__t0 () Bool) (assert (= var905_true__t0 (theory2_nullterm var903_literal_string___status___t0) ) ) (assert var905_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:273 ; ":status" (declare-fun var906_literal_string___status___t0 () (_ BitVec 64)) (declare-fun var907_true__t0 () Bool) (assert (= var907_true__t0 (theory1_safe var906_literal_string___status___t0) ) ) (assert var907_true__t0 ) (declare-fun var908_true__t0 () Bool) (assert (= var908_true__t0 (theory2_nullterm var906_literal_string___status___t0) ) ) (assert var908_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:274 ; "accept-charset" (declare-fun var909_literal_string__accept_charset___t0 () (_ BitVec 64)) (declare-fun var910_true__t0 () Bool) (assert (= var910_true__t0 (theory1_safe var909_literal_string__accept_charset___t0) ) ) (assert var910_true__t0 ) (declare-fun var911_true__t0 () Bool) (assert (= var911_true__t0 (theory2_nullterm var909_literal_string__accept_charset___t0) ) ) (assert var911_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:275 ; "accept-encoding" (declare-fun var912_literal_string__accept_encoding___t0 () (_ BitVec 64)) (declare-fun var913_true__t0 () Bool) (assert (= var913_true__t0 (theory1_safe var912_literal_string__accept_encoding___t0) ) ) (assert var913_true__t0 ) (declare-fun var914_true__t0 () Bool) (assert (= var914_true__t0 (theory2_nullterm var912_literal_string__accept_encoding___t0) ) ) (assert var914_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:276 ; "accept-language" (declare-fun var915_literal_string__accept_language___t0 () (_ BitVec 64)) (declare-fun var916_true__t0 () Bool) (assert (= var916_true__t0 (theory1_safe var915_literal_string__accept_language___t0) ) ) (assert var916_true__t0 ) (declare-fun var917_true__t0 () Bool) (assert (= var917_true__t0 (theory2_nullterm var915_literal_string__accept_language___t0) ) ) (assert var917_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:277 ; "accept-ranges" (declare-fun var918_literal_string__accept_ranges___t0 () (_ BitVec 64)) (declare-fun var919_true__t0 () Bool) (assert (= var919_true__t0 (theory1_safe var918_literal_string__accept_ranges___t0) ) ) (assert var919_true__t0 ) (declare-fun var920_true__t0 () Bool) (assert (= var920_true__t0 (theory2_nullterm var918_literal_string__accept_ranges___t0) ) ) (assert var920_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:278 ; "accept" (declare-fun var921_literal_string__accept___t0 () (_ BitVec 64)) (declare-fun var922_true__t0 () Bool) (assert (= var922_true__t0 (theory1_safe var921_literal_string__accept___t0) ) ) (assert var922_true__t0 ) (declare-fun var923_true__t0 () Bool) (assert (= var923_true__t0 (theory2_nullterm var921_literal_string__accept___t0) ) ) (assert var923_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:279 ; "access-control-allow-origin" (declare-fun var924_literal_string__access_control_allow_origin___t0 () (_ BitVec 64)) (declare-fun var925_true__t0 () Bool) (assert (= var925_true__t0 (theory1_safe var924_literal_string__access_control_allow_origin___t0) ) ) (assert var925_true__t0 ) (declare-fun var926_true__t0 () Bool) (assert (= var926_true__t0 (theory2_nullterm var924_literal_string__access_control_allow_origin___t0) ) ) (assert var926_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:280 ; "age" (declare-fun var927_literal_string__age___t0 () (_ BitVec 64)) (declare-fun var928_true__t0 () Bool) (assert (= var928_true__t0 (theory1_safe var927_literal_string__age___t0) ) ) (assert var928_true__t0 ) (declare-fun var929_true__t0 () Bool) (assert (= var929_true__t0 (theory2_nullterm var927_literal_string__age___t0) ) ) (assert var929_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:281 ; "allow" (declare-fun var930_literal_string__allow___t0 () (_ BitVec 64)) (declare-fun var931_true__t0 () Bool) (assert (= var931_true__t0 (theory1_safe var930_literal_string__allow___t0) ) ) (assert var931_true__t0 ) (declare-fun var932_true__t0 () Bool) (assert (= var932_true__t0 (theory2_nullterm var930_literal_string__allow___t0) ) ) (assert var932_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:282 ; "authorization" (declare-fun var933_literal_string__authorization___t0 () (_ BitVec 64)) (declare-fun var934_true__t0 () Bool) (assert (= var934_true__t0 (theory1_safe var933_literal_string__authorization___t0) ) ) (assert var934_true__t0 ) (declare-fun var935_true__t0 () Bool) (assert (= var935_true__t0 (theory2_nullterm var933_literal_string__authorization___t0) ) ) (assert var935_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:283 ; "cache-control" (declare-fun var936_literal_string__cache_control___t0 () (_ BitVec 64)) (declare-fun var937_true__t0 () Bool) (assert (= var937_true__t0 (theory1_safe var936_literal_string__cache_control___t0) ) ) (assert var937_true__t0 ) (declare-fun var938_true__t0 () Bool) (assert (= var938_true__t0 (theory2_nullterm var936_literal_string__cache_control___t0) ) ) (assert var938_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:284 ; "content-disposition" (declare-fun var939_literal_string__content_disposition___t0 () (_ BitVec 64)) (declare-fun var940_true__t0 () Bool) (assert (= var940_true__t0 (theory1_safe var939_literal_string__content_disposition___t0) ) ) (assert var940_true__t0 ) (declare-fun var941_true__t0 () Bool) (assert (= var941_true__t0 (theory2_nullterm var939_literal_string__content_disposition___t0) ) ) (assert var941_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:285 ; "content-encoding" (declare-fun var942_literal_string__content_encoding___t0 () (_ BitVec 64)) (declare-fun var943_true__t0 () Bool) (assert (= var943_true__t0 (theory1_safe var942_literal_string__content_encoding___t0) ) ) (assert var943_true__t0 ) (declare-fun var944_true__t0 () Bool) (assert (= var944_true__t0 (theory2_nullterm var942_literal_string__content_encoding___t0) ) ) (assert var944_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:286 ; "content-language" (declare-fun var945_literal_string__content_language___t0 () (_ BitVec 64)) (declare-fun var946_true__t0 () Bool) (assert (= var946_true__t0 (theory1_safe var945_literal_string__content_language___t0) ) ) (assert var946_true__t0 ) (declare-fun var947_true__t0 () Bool) (assert (= var947_true__t0 (theory2_nullterm var945_literal_string__content_language___t0) ) ) (assert var947_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:287 ; "content-length" (declare-fun var948_literal_string__content_length___t0 () (_ BitVec 64)) (declare-fun var949_true__t0 () Bool) (assert (= var949_true__t0 (theory1_safe var948_literal_string__content_length___t0) ) ) (assert var949_true__t0 ) (declare-fun var950_true__t0 () Bool) (assert (= var950_true__t0 (theory2_nullterm var948_literal_string__content_length___t0) ) ) (assert var950_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:288 ; "content-location" (declare-fun var951_literal_string__content_location___t0 () (_ BitVec 64)) (declare-fun var952_true__t0 () Bool) (assert (= var952_true__t0 (theory1_safe var951_literal_string__content_location___t0) ) ) (assert var952_true__t0 ) (declare-fun var953_true__t0 () Bool) (assert (= var953_true__t0 (theory2_nullterm var951_literal_string__content_location___t0) ) ) (assert var953_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:289 ; "content-range" (declare-fun var954_literal_string__content_range___t0 () (_ BitVec 64)) (declare-fun var955_true__t0 () Bool) (assert (= var955_true__t0 (theory1_safe var954_literal_string__content_range___t0) ) ) (assert var955_true__t0 ) (declare-fun var956_true__t0 () Bool) (assert (= var956_true__t0 (theory2_nullterm var954_literal_string__content_range___t0) ) ) (assert var956_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:290 ; "content-type" (declare-fun var957_literal_string__content_type___t0 () (_ BitVec 64)) (declare-fun var958_true__t0 () Bool) (assert (= var958_true__t0 (theory1_safe var957_literal_string__content_type___t0) ) ) (assert var958_true__t0 ) (declare-fun var959_true__t0 () Bool) (assert (= var959_true__t0 (theory2_nullterm var957_literal_string__content_type___t0) ) ) (assert var959_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:291 ; "cookie" (declare-fun var960_literal_string__cookie___t0 () (_ BitVec 64)) (declare-fun var961_true__t0 () Bool) (assert (= var961_true__t0 (theory1_safe var960_literal_string__cookie___t0) ) ) (assert var961_true__t0 ) (declare-fun var962_true__t0 () Bool) (assert (= var962_true__t0 (theory2_nullterm var960_literal_string__cookie___t0) ) ) (assert var962_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:292 ; "date" (declare-fun var963_literal_string__date___t0 () (_ BitVec 64)) (declare-fun var964_true__t0 () Bool) (assert (= var964_true__t0 (theory1_safe var963_literal_string__date___t0) ) ) (assert var964_true__t0 ) (declare-fun var965_true__t0 () Bool) (assert (= var965_true__t0 (theory2_nullterm var963_literal_string__date___t0) ) ) (assert var965_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:293 ; "etag" (declare-fun var966_literal_string__etag___t0 () (_ BitVec 64)) (declare-fun var967_true__t0 () Bool) (assert (= var967_true__t0 (theory1_safe var966_literal_string__etag___t0) ) ) (assert var967_true__t0 ) (declare-fun var968_true__t0 () Bool) (assert (= var968_true__t0 (theory2_nullterm var966_literal_string__etag___t0) ) ) (assert var968_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:294 ; "expect" (declare-fun var969_literal_string__expect___t0 () (_ BitVec 64)) (declare-fun var970_true__t0 () Bool) (assert (= var970_true__t0 (theory1_safe var969_literal_string__expect___t0) ) ) (assert var970_true__t0 ) (declare-fun var971_true__t0 () Bool) (assert (= var971_true__t0 (theory2_nullterm var969_literal_string__expect___t0) ) ) (assert var971_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:295 ; "expires" (declare-fun var972_literal_string__expires___t0 () (_ BitVec 64)) (declare-fun var973_true__t0 () Bool) (assert (= var973_true__t0 (theory1_safe var972_literal_string__expires___t0) ) ) (assert var973_true__t0 ) (declare-fun var974_true__t0 () Bool) (assert (= var974_true__t0 (theory2_nullterm var972_literal_string__expires___t0) ) ) (assert var974_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:296 ; "from" (declare-fun var975_literal_string__from___t0 () (_ BitVec 64)) (declare-fun var976_true__t0 () Bool) (assert (= var976_true__t0 (theory1_safe var975_literal_string__from___t0) ) ) (assert var976_true__t0 ) (declare-fun var977_true__t0 () Bool) (assert (= var977_true__t0 (theory2_nullterm var975_literal_string__from___t0) ) ) (assert var977_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:297 ; "host" (declare-fun var978_literal_string__host___t0 () (_ BitVec 64)) (declare-fun var979_true__t0 () Bool) (assert (= var979_true__t0 (theory1_safe var978_literal_string__host___t0) ) ) (assert var979_true__t0 ) (declare-fun var980_true__t0 () Bool) (assert (= var980_true__t0 (theory2_nullterm var978_literal_string__host___t0) ) ) (assert var980_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:298 ; "if-match" (declare-fun var981_literal_string__if_match___t0 () (_ BitVec 64)) (declare-fun var982_true__t0 () Bool) (assert (= var982_true__t0 (theory1_safe var981_literal_string__if_match___t0) ) ) (assert var982_true__t0 ) (declare-fun var983_true__t0 () Bool) (assert (= var983_true__t0 (theory2_nullterm var981_literal_string__if_match___t0) ) ) (assert var983_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:299 ; "if-modified-since" (declare-fun var984_literal_string__if_modified_since___t0 () (_ BitVec 64)) (declare-fun var985_true__t0 () Bool) (assert (= var985_true__t0 (theory1_safe var984_literal_string__if_modified_since___t0) ) ) (assert var985_true__t0 ) (declare-fun var986_true__t0 () Bool) (assert (= var986_true__t0 (theory2_nullterm var984_literal_string__if_modified_since___t0) ) ) (assert var986_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:300 ; "if-none-match" (declare-fun var987_literal_string__if_none_match___t0 () (_ BitVec 64)) (declare-fun var988_true__t0 () Bool) (assert (= var988_true__t0 (theory1_safe var987_literal_string__if_none_match___t0) ) ) (assert var988_true__t0 ) (declare-fun var989_true__t0 () Bool) (assert (= var989_true__t0 (theory2_nullterm var987_literal_string__if_none_match___t0) ) ) (assert var989_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:301 ; "if-range" (declare-fun var990_literal_string__if_range___t0 () (_ BitVec 64)) (declare-fun var991_true__t0 () Bool) (assert (= var991_true__t0 (theory1_safe var990_literal_string__if_range___t0) ) ) (assert var991_true__t0 ) (declare-fun var992_true__t0 () Bool) (assert (= var992_true__t0 (theory2_nullterm var990_literal_string__if_range___t0) ) ) (assert var992_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:302 ; "if-unmodified-since" (declare-fun var993_literal_string__if_unmodified_since___t0 () (_ BitVec 64)) (declare-fun var994_true__t0 () Bool) (assert (= var994_true__t0 (theory1_safe var993_literal_string__if_unmodified_since___t0) ) ) (assert var994_true__t0 ) (declare-fun var995_true__t0 () Bool) (assert (= var995_true__t0 (theory2_nullterm var993_literal_string__if_unmodified_since___t0) ) ) (assert var995_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:303 ; "last-modified" (declare-fun var996_literal_string__last_modified___t0 () (_ BitVec 64)) (declare-fun var997_true__t0 () Bool) (assert (= var997_true__t0 (theory1_safe var996_literal_string__last_modified___t0) ) ) (assert var997_true__t0 ) (declare-fun var998_true__t0 () Bool) (assert (= var998_true__t0 (theory2_nullterm var996_literal_string__last_modified___t0) ) ) (assert var998_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:304 ; "link" (declare-fun var999_literal_string__link___t0 () (_ BitVec 64)) (declare-fun var1000_true__t0 () Bool) (assert (= var1000_true__t0 (theory1_safe var999_literal_string__link___t0) ) ) (assert var1000_true__t0 ) (declare-fun var1001_true__t0 () Bool) (assert (= var1001_true__t0 (theory2_nullterm var999_literal_string__link___t0) ) ) (assert var1001_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:305 ; "location" (declare-fun var1002_literal_string__location___t0 () (_ BitVec 64)) (declare-fun var1003_true__t0 () Bool) (assert (= var1003_true__t0 (theory1_safe var1002_literal_string__location___t0) ) ) (assert var1003_true__t0 ) (declare-fun var1004_true__t0 () Bool) (assert (= var1004_true__t0 (theory2_nullterm var1002_literal_string__location___t0) ) ) (assert var1004_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:306 ; "max-forwards" (declare-fun var1005_literal_string__max_forwards___t0 () (_ BitVec 64)) (declare-fun var1006_true__t0 () Bool) (assert (= var1006_true__t0 (theory1_safe var1005_literal_string__max_forwards___t0) ) ) (assert var1006_true__t0 ) (declare-fun var1007_true__t0 () Bool) (assert (= var1007_true__t0 (theory2_nullterm var1005_literal_string__max_forwards___t0) ) ) (assert var1007_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:307 ; "proxy-authenticate" (declare-fun var1008_literal_string__proxy_authenticate___t0 () (_ BitVec 64)) (declare-fun var1009_true__t0 () Bool) (assert (= var1009_true__t0 (theory1_safe var1008_literal_string__proxy_authenticate___t0) ) ) (assert var1009_true__t0 ) (declare-fun var1010_true__t0 () Bool) (assert (= var1010_true__t0 (theory2_nullterm var1008_literal_string__proxy_authenticate___t0) ) ) (assert var1010_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:308 ; "proxy-authorization" (declare-fun var1011_literal_string__proxy_authorization___t0 () (_ BitVec 64)) (declare-fun var1012_true__t0 () Bool) (assert (= var1012_true__t0 (theory1_safe var1011_literal_string__proxy_authorization___t0) ) ) (assert var1012_true__t0 ) (declare-fun var1013_true__t0 () Bool) (assert (= var1013_true__t0 (theory2_nullterm var1011_literal_string__proxy_authorization___t0) ) ) (assert var1013_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:309 ; "range" (declare-fun var1014_literal_string__range___t0 () (_ BitVec 64)) (declare-fun var1015_true__t0 () Bool) (assert (= var1015_true__t0 (theory1_safe var1014_literal_string__range___t0) ) ) (assert var1015_true__t0 ) (declare-fun var1016_true__t0 () Bool) (assert (= var1016_true__t0 (theory2_nullterm var1014_literal_string__range___t0) ) ) (assert var1016_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:310 ; "referer" (declare-fun var1017_literal_string__referer___t0 () (_ BitVec 64)) (declare-fun var1018_true__t0 () Bool) (assert (= var1018_true__t0 (theory1_safe var1017_literal_string__referer___t0) ) ) (assert var1018_true__t0 ) (declare-fun var1019_true__t0 () Bool) (assert (= var1019_true__t0 (theory2_nullterm var1017_literal_string__referer___t0) ) ) (assert var1019_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:311 ; "refresh" (declare-fun var1020_literal_string__refresh___t0 () (_ BitVec 64)) (declare-fun var1021_true__t0 () Bool) (assert (= var1021_true__t0 (theory1_safe var1020_literal_string__refresh___t0) ) ) (assert var1021_true__t0 ) (declare-fun var1022_true__t0 () Bool) (assert (= var1022_true__t0 (theory2_nullterm var1020_literal_string__refresh___t0) ) ) (assert var1022_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:312 ; "retry-after" (declare-fun var1023_literal_string__retry_after___t0 () (_ BitVec 64)) (declare-fun var1024_true__t0 () Bool) (assert (= var1024_true__t0 (theory1_safe var1023_literal_string__retry_after___t0) ) ) (assert var1024_true__t0 ) (declare-fun var1025_true__t0 () Bool) (assert (= var1025_true__t0 (theory2_nullterm var1023_literal_string__retry_after___t0) ) ) (assert var1025_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:313 ; "server" (declare-fun var1026_literal_string__server___t0 () (_ BitVec 64)) (declare-fun var1027_true__t0 () Bool) (assert (= var1027_true__t0 (theory1_safe var1026_literal_string__server___t0) ) ) (assert var1027_true__t0 ) (declare-fun var1028_true__t0 () Bool) (assert (= var1028_true__t0 (theory2_nullterm var1026_literal_string__server___t0) ) ) (assert var1028_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:314 ; "set-cookie" (declare-fun var1029_literal_string__set_cookie___t0 () (_ BitVec 64)) (declare-fun var1030_true__t0 () Bool) (assert (= var1030_true__t0 (theory1_safe var1029_literal_string__set_cookie___t0) ) ) (assert var1030_true__t0 ) (declare-fun var1031_true__t0 () Bool) (assert (= var1031_true__t0 (theory2_nullterm var1029_literal_string__set_cookie___t0) ) ) (assert var1031_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:315 ; "strict-transport-security" (declare-fun var1032_literal_string__strict_transport_security___t0 () (_ BitVec 64)) (declare-fun var1033_true__t0 () Bool) (assert (= var1033_true__t0 (theory1_safe var1032_literal_string__strict_transport_security___t0) ) ) (assert var1033_true__t0 ) (declare-fun var1034_true__t0 () Bool) (assert (= var1034_true__t0 (theory2_nullterm var1032_literal_string__strict_transport_security___t0) ) ) (assert var1034_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:316 ; "transfer-encoding" (declare-fun var1035_literal_string__transfer_encoding___t0 () (_ BitVec 64)) (declare-fun var1036_true__t0 () Bool) (assert (= var1036_true__t0 (theory1_safe var1035_literal_string__transfer_encoding___t0) ) ) (assert var1036_true__t0 ) (declare-fun var1037_true__t0 () Bool) (assert (= var1037_true__t0 (theory2_nullterm var1035_literal_string__transfer_encoding___t0) ) ) (assert var1037_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:317 ; "user-agent" (declare-fun var1038_literal_string__user_agent___t0 () (_ BitVec 64)) (declare-fun var1039_true__t0 () Bool) (assert (= var1039_true__t0 (theory1_safe var1038_literal_string__user_agent___t0) ) ) (assert var1039_true__t0 ) (declare-fun var1040_true__t0 () Bool) (assert (= var1040_true__t0 (theory2_nullterm var1038_literal_string__user_agent___t0) ) ) (assert var1040_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:318 ; "vary" (declare-fun var1041_literal_string__vary___t0 () (_ BitVec 64)) (declare-fun var1042_true__t0 () Bool) (assert (= var1042_true__t0 (theory1_safe var1041_literal_string__vary___t0) ) ) (assert var1042_true__t0 ) (declare-fun var1043_true__t0 () Bool) (assert (= var1043_true__t0 (theory2_nullterm var1041_literal_string__vary___t0) ) ) (assert var1043_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:319 ; "via" (declare-fun var1044_literal_string__via___t0 () (_ BitVec 64)) (declare-fun var1045_true__t0 () Bool) (assert (= var1045_true__t0 (theory1_safe var1044_literal_string__via___t0) ) ) (assert var1045_true__t0 ) (declare-fun var1046_true__t0 () Bool) (assert (= var1046_true__t0 (theory2_nullterm var1044_literal_string__via___t0) ) ) (assert var1046_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:320 ; "www-authenticate" (declare-fun var1047_literal_string__www_authenticate___t0 () (_ BitVec 64)) (declare-fun var1048_true__t0 () Bool) (assert (= var1048_true__t0 (theory1_safe var1047_literal_string__www_authenticate___t0) ) ) (assert var1048_true__t0 ) (declare-fun var1049_true__t0 () Bool) (assert (= var1049_true__t0 (theory2_nullterm var1047_literal_string__www_authenticate___t0) ) ) (assert var1049_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:258 ; { ; 0, ; ":authority", ; ":method", ; ":method", ; ":path", ; ":path", ; ":scheme", ; ":scheme", ; ":status", ; ":status", ; ":status", ; ":status", ; ":status", ; ":status", ; ":status", ; "accept-charset", ; "accept-encoding", ; "accept-language", ; "accept-ranges", ; "accept", ; "access-control-allow-origin", ; "age", ; "allow", ; "authorization", ; "cache-control", ; "content-disposition", ; "content-encoding", ; "content-language", ; "content-length", ; "content-location", ; "content-range", ; "content-type", ; "cookie", ; "date", ; "etag", ; "expect", ; "expires", ; "from", ; "host", ; "if-match", ; "if-modified-since", ; "if-none-match", ; "if-range", ; "if-unmodified-since", ; "last-modified", ; "link", ; "location", ; "max-forwards", ; "proxy-authenticate", ; "proxy-authorization", ; "range", ; "referer", ; "refresh", ; "retry-after", ; "server", ; "set-cookie", ; "strict-transport-security", ; "transfer-encoding", ; "user-agent", ; "vary", ; "via", ; "www-authenticate", ; } (declare-fun var1050_literal_array_1050__t0 () (_ BitVec 64)) (declare-fun var1051_true__t0 () Bool) (assert (= var1051_true__t0 (theory1_safe var1050_literal_array_1050__t0) ) ) (assert var1051_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:258 ; static char* STATIC_KEYS[] = { ; 0, ; ":authority", ; ":method", ; ":method", ; ":path", ; ":path", ; ":scheme", ; ":scheme", ; ":status", ; ":status", ; ":status", ; ":status", ; ":status", ; ":status", ; ":status", ; "accept-charset", ; "accept-encoding", ; "accept-language", ; "accept-ranges", ; "accept", ; "access-control-allow-origin", ; "age", ; "allow", ; "authorization", ; "cache-control", ; "content-disposition", ; "content-encoding", ; "content-language", ; "content-length", ; "content-location", ; "content-range", ; "content-type", ; "cookie", ; "date", ; "etag", ; "expect", ; "expires", ; "from", ; "host", ; "if-match", ; "if-modified-since", ; "if-none-match", ; "if-range", ; "if-unmodified-since", ; "last-modified", ; "link", ; "location", ; "max-forwards", ; "proxy-authenticate", ; "proxy-authorization", ; "range", ; "referer", ; "refresh", ; "retry-after", ; "server", ; "set-cookie", ; "strict-transport-security", ; "transfer-encoding", ; "user-agent", ; "vary", ; "via", ; "www-authenticate", ; }; (declare-fun var1052_safe_literal_array_1050_____safe___hpack__decoder__STATIC_KEYS___t0 () Bool) (assert (= var1052_safe_literal_array_1050_____safe___hpack__decoder__STATIC_KEYS___t0 (theory1_safe var1050_literal_array_1050__t0) ) ) (declare-fun var865___hpack__decoder__STATIC_KEYS__t1 () (_ BitVec 64)) (assert (= var1052_safe_literal_array_1050_____safe___hpack__decoder__STATIC_KEYS___t0 (theory1_safe var865___hpack__decoder__STATIC_KEYS__t1) ) ) (declare-fun var1053_nullterm_literal_array_1050_____nullterm___hpack__decoder__STATIC_KEYS___t0 () Bool) (assert (= var1053_nullterm_literal_array_1050_____nullterm___hpack__decoder__STATIC_KEYS___t0 (theory2_nullterm var1050_literal_array_1050__t0) ) ) (assert (= var1053_nullterm_literal_array_1050_____nullterm___hpack__decoder__STATIC_KEYS___t0 (theory2_nullterm var865___hpack__decoder__STATIC_KEYS__t1) ) ) (declare-fun var1116_len___hpack__decoder__STATIC_KEYS___t0 () (_ BitVec 64)) (assert (= var1116_len___hpack__decoder__STATIC_KEYS___t0 (theory0_len var865___hpack__decoder__STATIC_KEYS__t1) ) ) (assert (= var1116_len___hpack__decoder__STATIC_KEYS___t0 (_ bv62 64)) ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:99 ; fn decode_literal(Iterator mut* self, err::Err+et mut*e, bool index) -> bool ; where err::checked(*e) ; { ; ; u8 mut prefix; ; if index { ; prefix = 6; ; } else { ; prefix = 4; ; } ; static_attest(prefix == 4 || prefix == 6); ; ; uint x = self->decode_integer(e, prefix); ; if err::check(e) { ; return false; ; } ; if self->wire.size <= self->at { ; err::fail(e, 15, "eof"); ; return false; ; } ; static_attest(self->wire.size > self->at); ; ; if x == 0 { ; uint strlen1 = self->decode_integer(e, 7); ; if err::check(e) { ; return false; ; } ; if (self->at + (usize)strlen1) >= self->wire.size { ; err::fail(e, 15, "eof"); ; return false; ; } ; static_attest(len(self->wire.mem) > self->at); ; self->key = Slice { ; mem: (self->wire.mem + self->at), ; size: (usize)strlen1, ; }; ; self->at += (usize)strlen1; ; } else if x > 0 && (usize)x < static(len(STATIC_KEYS)) { ; self->key = Slice { ; mem: (u8*)STATIC_KEYS[(usize)x], ; size: (usize)strlen(STATIC_KEYS[(usize)x]), ; }; ; } else if x > 61 && x < 76 { ; usize di = (usize)x - 61; ; Entry *de = &(self->dyn[di]); ; self->key = de->key; ; } else { ; err::fail(e, 1, "%u not implemented", x); ; return false; ; } ; ; static_attest(err::checked(*e)); ; uint strlen2 = self->decode_integer(e, 7); ; if err::check(e) { ; return false; ; } ; if (self->at + (usize)strlen2) > self->wire.size { ; err::fail(e, 15, "eof"); ; return false; ; } ; ; static_attest(len(self->wire.mem) > self->at); ; self->val = Slice { ; mem: (self->wire.mem + self->at), ; size: (usize)strlen2, ; }; ; ; if index { ; for (usize mut i = 0; i < DYNSIZE; i++) { ; if (self->dyn[i]).key.mem == 0 { ; (self->dyn[i]).key = self->key; ; (self->dyn[i]).val = self->val; ; } ; } ; } ; ; self->at += (usize)strlen2 ; ; return true; ; } (declare-fun var1117___hpack__decoder__decode_literal__t0 () (_ BitVec 64)) (declare-fun var1118_true__t0 () Bool) (assert (= var1118_true__t0 (theory1_safe var1117___hpack__decoder__decode_literal__t0) ) ) (assert var1118_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:16 ; Repr (declare-fun var1120___hpack__decoder__Repr__Indexed__t0 () (_ BitVec 64)) (assert (= var1120___hpack__decoder__Repr__Indexed__t0 (_ bv0 64)) ) (declare-fun var1121___hpack__decoder__Repr__LiteralWithIncrementalIndexing__t0 () (_ BitVec 64)) (assert (= var1121___hpack__decoder__Repr__LiteralWithIncrementalIndexing__t0 (_ bv1 64)) ) (declare-fun var1122___hpack__decoder__Repr__SizeUpdate__t0 () (_ BitVec 64)) (assert (= var1122___hpack__decoder__Repr__SizeUpdate__t0 (_ bv2 64)) ) (declare-fun var1123___hpack__decoder__Repr__LiteralNeverIndexed__t0 () (_ BitVec 64)) (assert (= var1123___hpack__decoder__Repr__LiteralNeverIndexed__t0 (_ bv3 64)) ) (declare-fun var1124___hpack__decoder__Repr__LiteralWithoutIndexing__t0 () (_ BitVec 64)) (assert (= var1124___hpack__decoder__Repr__LiteralWithoutIndexing__t0 (_ bv4 64)) ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:27 ; fn get_repr(u8 b) -> Repr { ; if (b & 128) == 128 { ; return Repr::Indexed; ; } else if (b & 192) == 64 { ; return Repr::LiteralWithIncrementalIndexing; ; } else if (b & 32) == 32 { ; return Repr::SizeUpdate; ; } else if (b & 16) == 16 { ; return Repr::LiteralNeverIndexed; ; } else { ; return Repr::LiteralWithoutIndexing; ; } ; } (declare-fun var1125___hpack__decoder__get_repr__t0 () (_ BitVec 64)) (declare-fun var1126_true__t0 () Bool) (assert (= var1126_true__t0 (theory1_safe var1125___hpack__decoder__get_repr__t0) ) ) (assert var1126_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:323 ; static char* STATIC_VALS[] = { ; 0, ; "", ; "GET", ; "POST", ; "/", ; "/index.html", ; "http", ; "https", ; "200", ; "204", ; "206", ; "304", ; "400", ; "404", ; "500", ; "", ; "gzip, deflate", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; }; ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:323 ; { ; 0, ; "", ; "GET", ; "POST", ; "/", ; "/index.html", ; "http", ; "https", ; "200", ; "204", ; "206", ; "304", ; "400", ; "404", ; "500", ; "", ; "gzip, deflate", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; } ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:324 ; 0 ; literal expr (declare-fun var1128_literal_0__t0 () (_ BitVec 64)) (assert (= var1128_literal_0__t0 (_ bv0 64)) ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:325 ; "" (declare-fun var1129_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1130_true__t0 () Bool) (assert (= var1130_true__t0 (theory1_safe var1129_literal_string_____t0) ) ) (assert var1130_true__t0 ) (declare-fun var1131_true__t0 () Bool) (assert (= var1131_true__t0 (theory2_nullterm var1129_literal_string_____t0) ) ) (assert var1131_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:326 ; "GET" (declare-fun var1132_literal_string__GET___t0 () (_ BitVec 64)) (declare-fun var1133_true__t0 () Bool) (assert (= var1133_true__t0 (theory1_safe var1132_literal_string__GET___t0) ) ) (assert var1133_true__t0 ) (declare-fun var1134_true__t0 () Bool) (assert (= var1134_true__t0 (theory2_nullterm var1132_literal_string__GET___t0) ) ) (assert var1134_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:327 ; "POST" (declare-fun var1135_literal_string__POST___t0 () (_ BitVec 64)) (declare-fun var1136_true__t0 () Bool) (assert (= var1136_true__t0 (theory1_safe var1135_literal_string__POST___t0) ) ) (assert var1136_true__t0 ) (declare-fun var1137_true__t0 () Bool) (assert (= var1137_true__t0 (theory2_nullterm var1135_literal_string__POST___t0) ) ) (assert var1137_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:328 ; "/" (declare-fun var1138_literal_string______t0 () (_ BitVec 64)) (declare-fun var1139_true__t0 () Bool) (assert (= var1139_true__t0 (theory1_safe var1138_literal_string______t0) ) ) (assert var1139_true__t0 ) (declare-fun var1140_true__t0 () Bool) (assert (= var1140_true__t0 (theory2_nullterm var1138_literal_string______t0) ) ) (assert var1140_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:329 ; "/index.html" (declare-fun var1141_literal_string___index_html___t0 () (_ BitVec 64)) (declare-fun var1142_true__t0 () Bool) (assert (= var1142_true__t0 (theory1_safe var1141_literal_string___index_html___t0) ) ) (assert var1142_true__t0 ) (declare-fun var1143_true__t0 () Bool) (assert (= var1143_true__t0 (theory2_nullterm var1141_literal_string___index_html___t0) ) ) (assert var1143_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:330 ; "http" (declare-fun var1144_literal_string__http___t0 () (_ BitVec 64)) (declare-fun var1145_true__t0 () Bool) (assert (= var1145_true__t0 (theory1_safe var1144_literal_string__http___t0) ) ) (assert var1145_true__t0 ) (declare-fun var1146_true__t0 () Bool) (assert (= var1146_true__t0 (theory2_nullterm var1144_literal_string__http___t0) ) ) (assert var1146_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:331 ; "https" (declare-fun var1147_literal_string__https___t0 () (_ BitVec 64)) (declare-fun var1148_true__t0 () Bool) (assert (= var1148_true__t0 (theory1_safe var1147_literal_string__https___t0) ) ) (assert var1148_true__t0 ) (declare-fun var1149_true__t0 () Bool) (assert (= var1149_true__t0 (theory2_nullterm var1147_literal_string__https___t0) ) ) (assert var1149_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:332 ; "200" (declare-fun var1150_literal_string__200___t0 () (_ BitVec 64)) (declare-fun var1151_true__t0 () Bool) (assert (= var1151_true__t0 (theory1_safe var1150_literal_string__200___t0) ) ) (assert var1151_true__t0 ) (declare-fun var1152_true__t0 () Bool) (assert (= var1152_true__t0 (theory2_nullterm var1150_literal_string__200___t0) ) ) (assert var1152_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:333 ; "204" (declare-fun var1153_literal_string__204___t0 () (_ BitVec 64)) (declare-fun var1154_true__t0 () Bool) (assert (= var1154_true__t0 (theory1_safe var1153_literal_string__204___t0) ) ) (assert var1154_true__t0 ) (declare-fun var1155_true__t0 () Bool) (assert (= var1155_true__t0 (theory2_nullterm var1153_literal_string__204___t0) ) ) (assert var1155_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:334 ; "206" (declare-fun var1156_literal_string__206___t0 () (_ BitVec 64)) (declare-fun var1157_true__t0 () Bool) (assert (= var1157_true__t0 (theory1_safe var1156_literal_string__206___t0) ) ) (assert var1157_true__t0 ) (declare-fun var1158_true__t0 () Bool) (assert (= var1158_true__t0 (theory2_nullterm var1156_literal_string__206___t0) ) ) (assert var1158_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:335 ; "304" (declare-fun var1159_literal_string__304___t0 () (_ BitVec 64)) (declare-fun var1160_true__t0 () Bool) (assert (= var1160_true__t0 (theory1_safe var1159_literal_string__304___t0) ) ) (assert var1160_true__t0 ) (declare-fun var1161_true__t0 () Bool) (assert (= var1161_true__t0 (theory2_nullterm var1159_literal_string__304___t0) ) ) (assert var1161_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:336 ; "400" (declare-fun var1162_literal_string__400___t0 () (_ BitVec 64)) (declare-fun var1163_true__t0 () Bool) (assert (= var1163_true__t0 (theory1_safe var1162_literal_string__400___t0) ) ) (assert var1163_true__t0 ) (declare-fun var1164_true__t0 () Bool) (assert (= var1164_true__t0 (theory2_nullterm var1162_literal_string__400___t0) ) ) (assert var1164_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:337 ; "404" (declare-fun var1165_literal_string__404___t0 () (_ BitVec 64)) (declare-fun var1166_true__t0 () Bool) (assert (= var1166_true__t0 (theory1_safe var1165_literal_string__404___t0) ) ) (assert var1166_true__t0 ) (declare-fun var1167_true__t0 () Bool) (assert (= var1167_true__t0 (theory2_nullterm var1165_literal_string__404___t0) ) ) (assert var1167_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:338 ; "500" (declare-fun var1168_literal_string__500___t0 () (_ BitVec 64)) (declare-fun var1169_true__t0 () Bool) (assert (= var1169_true__t0 (theory1_safe var1168_literal_string__500___t0) ) ) (assert var1169_true__t0 ) (declare-fun var1170_true__t0 () Bool) (assert (= var1170_true__t0 (theory2_nullterm var1168_literal_string__500___t0) ) ) (assert var1170_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:339 ; "" (declare-fun var1171_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1172_true__t0 () Bool) (assert (= var1172_true__t0 (theory1_safe var1171_literal_string_____t0) ) ) (assert var1172_true__t0 ) (declare-fun var1173_true__t0 () Bool) (assert (= var1173_true__t0 (theory2_nullterm var1171_literal_string_____t0) ) ) (assert var1173_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:340 ; "gzip, deflate" (declare-fun var1174_literal_string__gzip__deflate___t0 () (_ BitVec 64)) (declare-fun var1175_true__t0 () Bool) (assert (= var1175_true__t0 (theory1_safe var1174_literal_string__gzip__deflate___t0) ) ) (assert var1175_true__t0 ) (declare-fun var1176_true__t0 () Bool) (assert (= var1176_true__t0 (theory2_nullterm var1174_literal_string__gzip__deflate___t0) ) ) (assert var1176_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:341 ; "" (declare-fun var1177_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1178_true__t0 () Bool) (assert (= var1178_true__t0 (theory1_safe var1177_literal_string_____t0) ) ) (assert var1178_true__t0 ) (declare-fun var1179_true__t0 () Bool) (assert (= var1179_true__t0 (theory2_nullterm var1177_literal_string_____t0) ) ) (assert var1179_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:342 ; "" (declare-fun var1180_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1181_true__t0 () Bool) (assert (= var1181_true__t0 (theory1_safe var1180_literal_string_____t0) ) ) (assert var1181_true__t0 ) (declare-fun var1182_true__t0 () Bool) (assert (= var1182_true__t0 (theory2_nullterm var1180_literal_string_____t0) ) ) (assert var1182_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:343 ; "" (declare-fun var1183_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1184_true__t0 () Bool) (assert (= var1184_true__t0 (theory1_safe var1183_literal_string_____t0) ) ) (assert var1184_true__t0 ) (declare-fun var1185_true__t0 () Bool) (assert (= var1185_true__t0 (theory2_nullterm var1183_literal_string_____t0) ) ) (assert var1185_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:344 ; "" (declare-fun var1186_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1187_true__t0 () Bool) (assert (= var1187_true__t0 (theory1_safe var1186_literal_string_____t0) ) ) (assert var1187_true__t0 ) (declare-fun var1188_true__t0 () Bool) (assert (= var1188_true__t0 (theory2_nullterm var1186_literal_string_____t0) ) ) (assert var1188_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:345 ; "" (declare-fun var1189_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1190_true__t0 () Bool) (assert (= var1190_true__t0 (theory1_safe var1189_literal_string_____t0) ) ) (assert var1190_true__t0 ) (declare-fun var1191_true__t0 () Bool) (assert (= var1191_true__t0 (theory2_nullterm var1189_literal_string_____t0) ) ) (assert var1191_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:346 ; "" (declare-fun var1192_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1193_true__t0 () Bool) (assert (= var1193_true__t0 (theory1_safe var1192_literal_string_____t0) ) ) (assert var1193_true__t0 ) (declare-fun var1194_true__t0 () Bool) (assert (= var1194_true__t0 (theory2_nullterm var1192_literal_string_____t0) ) ) (assert var1194_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:347 ; "" (declare-fun var1195_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1196_true__t0 () Bool) (assert (= var1196_true__t0 (theory1_safe var1195_literal_string_____t0) ) ) (assert var1196_true__t0 ) (declare-fun var1197_true__t0 () Bool) (assert (= var1197_true__t0 (theory2_nullterm var1195_literal_string_____t0) ) ) (assert var1197_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:348 ; "" (declare-fun var1198_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1199_true__t0 () Bool) (assert (= var1199_true__t0 (theory1_safe var1198_literal_string_____t0) ) ) (assert var1199_true__t0 ) (declare-fun var1200_true__t0 () Bool) (assert (= var1200_true__t0 (theory2_nullterm var1198_literal_string_____t0) ) ) (assert var1200_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:349 ; "" (declare-fun var1201_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1202_true__t0 () Bool) (assert (= var1202_true__t0 (theory1_safe var1201_literal_string_____t0) ) ) (assert var1202_true__t0 ) (declare-fun var1203_true__t0 () Bool) (assert (= var1203_true__t0 (theory2_nullterm var1201_literal_string_____t0) ) ) (assert var1203_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:350 ; "" (declare-fun var1204_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1205_true__t0 () Bool) (assert (= var1205_true__t0 (theory1_safe var1204_literal_string_____t0) ) ) (assert var1205_true__t0 ) (declare-fun var1206_true__t0 () Bool) (assert (= var1206_true__t0 (theory2_nullterm var1204_literal_string_____t0) ) ) (assert var1206_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:351 ; "" (declare-fun var1207_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1208_true__t0 () Bool) (assert (= var1208_true__t0 (theory1_safe var1207_literal_string_____t0) ) ) (assert var1208_true__t0 ) (declare-fun var1209_true__t0 () Bool) (assert (= var1209_true__t0 (theory2_nullterm var1207_literal_string_____t0) ) ) (assert var1209_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:352 ; "" (declare-fun var1210_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1211_true__t0 () Bool) (assert (= var1211_true__t0 (theory1_safe var1210_literal_string_____t0) ) ) (assert var1211_true__t0 ) (declare-fun var1212_true__t0 () Bool) (assert (= var1212_true__t0 (theory2_nullterm var1210_literal_string_____t0) ) ) (assert var1212_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:353 ; "" (declare-fun var1213_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1214_true__t0 () Bool) (assert (= var1214_true__t0 (theory1_safe var1213_literal_string_____t0) ) ) (assert var1214_true__t0 ) (declare-fun var1215_true__t0 () Bool) (assert (= var1215_true__t0 (theory2_nullterm var1213_literal_string_____t0) ) ) (assert var1215_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:354 ; "" (declare-fun var1216_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1217_true__t0 () Bool) (assert (= var1217_true__t0 (theory1_safe var1216_literal_string_____t0) ) ) (assert var1217_true__t0 ) (declare-fun var1218_true__t0 () Bool) (assert (= var1218_true__t0 (theory2_nullterm var1216_literal_string_____t0) ) ) (assert var1218_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:355 ; "" (declare-fun var1219_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1220_true__t0 () Bool) (assert (= var1220_true__t0 (theory1_safe var1219_literal_string_____t0) ) ) (assert var1220_true__t0 ) (declare-fun var1221_true__t0 () Bool) (assert (= var1221_true__t0 (theory2_nullterm var1219_literal_string_____t0) ) ) (assert var1221_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:356 ; "" (declare-fun var1222_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1223_true__t0 () Bool) (assert (= var1223_true__t0 (theory1_safe var1222_literal_string_____t0) ) ) (assert var1223_true__t0 ) (declare-fun var1224_true__t0 () Bool) (assert (= var1224_true__t0 (theory2_nullterm var1222_literal_string_____t0) ) ) (assert var1224_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:357 ; "" (declare-fun var1225_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1226_true__t0 () Bool) (assert (= var1226_true__t0 (theory1_safe var1225_literal_string_____t0) ) ) (assert var1226_true__t0 ) (declare-fun var1227_true__t0 () Bool) (assert (= var1227_true__t0 (theory2_nullterm var1225_literal_string_____t0) ) ) (assert var1227_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:358 ; "" (declare-fun var1228_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1229_true__t0 () Bool) (assert (= var1229_true__t0 (theory1_safe var1228_literal_string_____t0) ) ) (assert var1229_true__t0 ) (declare-fun var1230_true__t0 () Bool) (assert (= var1230_true__t0 (theory2_nullterm var1228_literal_string_____t0) ) ) (assert var1230_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:359 ; "" (declare-fun var1231_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1232_true__t0 () Bool) (assert (= var1232_true__t0 (theory1_safe var1231_literal_string_____t0) ) ) (assert var1232_true__t0 ) (declare-fun var1233_true__t0 () Bool) (assert (= var1233_true__t0 (theory2_nullterm var1231_literal_string_____t0) ) ) (assert var1233_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:360 ; "" (declare-fun var1234_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1235_true__t0 () Bool) (assert (= var1235_true__t0 (theory1_safe var1234_literal_string_____t0) ) ) (assert var1235_true__t0 ) (declare-fun var1236_true__t0 () Bool) (assert (= var1236_true__t0 (theory2_nullterm var1234_literal_string_____t0) ) ) (assert var1236_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:361 ; "" (declare-fun var1237_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1238_true__t0 () Bool) (assert (= var1238_true__t0 (theory1_safe var1237_literal_string_____t0) ) ) (assert var1238_true__t0 ) (declare-fun var1239_true__t0 () Bool) (assert (= var1239_true__t0 (theory2_nullterm var1237_literal_string_____t0) ) ) (assert var1239_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:362 ; "" (declare-fun var1240_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1241_true__t0 () Bool) (assert (= var1241_true__t0 (theory1_safe var1240_literal_string_____t0) ) ) (assert var1241_true__t0 ) (declare-fun var1242_true__t0 () Bool) (assert (= var1242_true__t0 (theory2_nullterm var1240_literal_string_____t0) ) ) (assert var1242_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:363 ; "" (declare-fun var1243_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1244_true__t0 () Bool) (assert (= var1244_true__t0 (theory1_safe var1243_literal_string_____t0) ) ) (assert var1244_true__t0 ) (declare-fun var1245_true__t0 () Bool) (assert (= var1245_true__t0 (theory2_nullterm var1243_literal_string_____t0) ) ) (assert var1245_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:364 ; "" (declare-fun var1246_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1247_true__t0 () Bool) (assert (= var1247_true__t0 (theory1_safe var1246_literal_string_____t0) ) ) (assert var1247_true__t0 ) (declare-fun var1248_true__t0 () Bool) (assert (= var1248_true__t0 (theory2_nullterm var1246_literal_string_____t0) ) ) (assert var1248_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:365 ; "" (declare-fun var1249_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1250_true__t0 () Bool) (assert (= var1250_true__t0 (theory1_safe var1249_literal_string_____t0) ) ) (assert var1250_true__t0 ) (declare-fun var1251_true__t0 () Bool) (assert (= var1251_true__t0 (theory2_nullterm var1249_literal_string_____t0) ) ) (assert var1251_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:366 ; "" (declare-fun var1252_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1253_true__t0 () Bool) (assert (= var1253_true__t0 (theory1_safe var1252_literal_string_____t0) ) ) (assert var1253_true__t0 ) (declare-fun var1254_true__t0 () Bool) (assert (= var1254_true__t0 (theory2_nullterm var1252_literal_string_____t0) ) ) (assert var1254_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:367 ; "" (declare-fun var1255_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1256_true__t0 () Bool) (assert (= var1256_true__t0 (theory1_safe var1255_literal_string_____t0) ) ) (assert var1256_true__t0 ) (declare-fun var1257_true__t0 () Bool) (assert (= var1257_true__t0 (theory2_nullterm var1255_literal_string_____t0) ) ) (assert var1257_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:368 ; "" (declare-fun var1258_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1259_true__t0 () Bool) (assert (= var1259_true__t0 (theory1_safe var1258_literal_string_____t0) ) ) (assert var1259_true__t0 ) (declare-fun var1260_true__t0 () Bool) (assert (= var1260_true__t0 (theory2_nullterm var1258_literal_string_____t0) ) ) (assert var1260_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:369 ; "" (declare-fun var1261_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1262_true__t0 () Bool) (assert (= var1262_true__t0 (theory1_safe var1261_literal_string_____t0) ) ) (assert var1262_true__t0 ) (declare-fun var1263_true__t0 () Bool) (assert (= var1263_true__t0 (theory2_nullterm var1261_literal_string_____t0) ) ) (assert var1263_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:370 ; "" (declare-fun var1264_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1265_true__t0 () Bool) (assert (= var1265_true__t0 (theory1_safe var1264_literal_string_____t0) ) ) (assert var1265_true__t0 ) (declare-fun var1266_true__t0 () Bool) (assert (= var1266_true__t0 (theory2_nullterm var1264_literal_string_____t0) ) ) (assert var1266_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:371 ; "" (declare-fun var1267_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1268_true__t0 () Bool) (assert (= var1268_true__t0 (theory1_safe var1267_literal_string_____t0) ) ) (assert var1268_true__t0 ) (declare-fun var1269_true__t0 () Bool) (assert (= var1269_true__t0 (theory2_nullterm var1267_literal_string_____t0) ) ) (assert var1269_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:372 ; "" (declare-fun var1270_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1271_true__t0 () Bool) (assert (= var1271_true__t0 (theory1_safe var1270_literal_string_____t0) ) ) (assert var1271_true__t0 ) (declare-fun var1272_true__t0 () Bool) (assert (= var1272_true__t0 (theory2_nullterm var1270_literal_string_____t0) ) ) (assert var1272_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:373 ; "" (declare-fun var1273_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1274_true__t0 () Bool) (assert (= var1274_true__t0 (theory1_safe var1273_literal_string_____t0) ) ) (assert var1274_true__t0 ) (declare-fun var1275_true__t0 () Bool) (assert (= var1275_true__t0 (theory2_nullterm var1273_literal_string_____t0) ) ) (assert var1275_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:374 ; "" (declare-fun var1276_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1277_true__t0 () Bool) (assert (= var1277_true__t0 (theory1_safe var1276_literal_string_____t0) ) ) (assert var1277_true__t0 ) (declare-fun var1278_true__t0 () Bool) (assert (= var1278_true__t0 (theory2_nullterm var1276_literal_string_____t0) ) ) (assert var1278_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:375 ; "" (declare-fun var1279_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1280_true__t0 () Bool) (assert (= var1280_true__t0 (theory1_safe var1279_literal_string_____t0) ) ) (assert var1280_true__t0 ) (declare-fun var1281_true__t0 () Bool) (assert (= var1281_true__t0 (theory2_nullterm var1279_literal_string_____t0) ) ) (assert var1281_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:376 ; "" (declare-fun var1282_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1283_true__t0 () Bool) (assert (= var1283_true__t0 (theory1_safe var1282_literal_string_____t0) ) ) (assert var1283_true__t0 ) (declare-fun var1284_true__t0 () Bool) (assert (= var1284_true__t0 (theory2_nullterm var1282_literal_string_____t0) ) ) (assert var1284_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:377 ; "" (declare-fun var1285_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1286_true__t0 () Bool) (assert (= var1286_true__t0 (theory1_safe var1285_literal_string_____t0) ) ) (assert var1286_true__t0 ) (declare-fun var1287_true__t0 () Bool) (assert (= var1287_true__t0 (theory2_nullterm var1285_literal_string_____t0) ) ) (assert var1287_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:378 ; "" (declare-fun var1288_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1289_true__t0 () Bool) (assert (= var1289_true__t0 (theory1_safe var1288_literal_string_____t0) ) ) (assert var1289_true__t0 ) (declare-fun var1290_true__t0 () Bool) (assert (= var1290_true__t0 (theory2_nullterm var1288_literal_string_____t0) ) ) (assert var1290_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:379 ; "" (declare-fun var1291_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1292_true__t0 () Bool) (assert (= var1292_true__t0 (theory1_safe var1291_literal_string_____t0) ) ) (assert var1292_true__t0 ) (declare-fun var1293_true__t0 () Bool) (assert (= var1293_true__t0 (theory2_nullterm var1291_literal_string_____t0) ) ) (assert var1293_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:380 ; "" (declare-fun var1294_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1295_true__t0 () Bool) (assert (= var1295_true__t0 (theory1_safe var1294_literal_string_____t0) ) ) (assert var1295_true__t0 ) (declare-fun var1296_true__t0 () Bool) (assert (= var1296_true__t0 (theory2_nullterm var1294_literal_string_____t0) ) ) (assert var1296_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:381 ; "" (declare-fun var1297_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1298_true__t0 () Bool) (assert (= var1298_true__t0 (theory1_safe var1297_literal_string_____t0) ) ) (assert var1298_true__t0 ) (declare-fun var1299_true__t0 () Bool) (assert (= var1299_true__t0 (theory2_nullterm var1297_literal_string_____t0) ) ) (assert var1299_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:382 ; "" (declare-fun var1300_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1301_true__t0 () Bool) (assert (= var1301_true__t0 (theory1_safe var1300_literal_string_____t0) ) ) (assert var1301_true__t0 ) (declare-fun var1302_true__t0 () Bool) (assert (= var1302_true__t0 (theory2_nullterm var1300_literal_string_____t0) ) ) (assert var1302_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:383 ; "" (declare-fun var1303_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1304_true__t0 () Bool) (assert (= var1304_true__t0 (theory1_safe var1303_literal_string_____t0) ) ) (assert var1304_true__t0 ) (declare-fun var1305_true__t0 () Bool) (assert (= var1305_true__t0 (theory2_nullterm var1303_literal_string_____t0) ) ) (assert var1305_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:384 ; "" (declare-fun var1306_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1307_true__t0 () Bool) (assert (= var1307_true__t0 (theory1_safe var1306_literal_string_____t0) ) ) (assert var1307_true__t0 ) (declare-fun var1308_true__t0 () Bool) (assert (= var1308_true__t0 (theory2_nullterm var1306_literal_string_____t0) ) ) (assert var1308_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:385 ; "" (declare-fun var1309_literal_string_____t0 () (_ BitVec 64)) (declare-fun var1310_true__t0 () Bool) (assert (= var1310_true__t0 (theory1_safe var1309_literal_string_____t0) ) ) (assert var1310_true__t0 ) (declare-fun var1311_true__t0 () Bool) (assert (= var1311_true__t0 (theory2_nullterm var1309_literal_string_____t0) ) ) (assert var1311_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:323 ; { ; 0, ; "", ; "GET", ; "POST", ; "/", ; "/index.html", ; "http", ; "https", ; "200", ; "204", ; "206", ; "304", ; "400", ; "404", ; "500", ; "", ; "gzip, deflate", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; } (declare-fun var1312_literal_array_1312__t0 () (_ BitVec 64)) (declare-fun var1313_true__t0 () Bool) (assert (= var1313_true__t0 (theory1_safe var1312_literal_array_1312__t0) ) ) (assert var1313_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:323 ; static char* STATIC_VALS[] = { ; 0, ; "", ; "GET", ; "POST", ; "/", ; "/index.html", ; "http", ; "https", ; "200", ; "204", ; "206", ; "304", ; "400", ; "404", ; "500", ; "", ; "gzip, deflate", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; "", ; }; (declare-fun var1314_safe_literal_array_1312_____safe___hpack__decoder__STATIC_VALS___t0 () Bool) (assert (= var1314_safe_literal_array_1312_____safe___hpack__decoder__STATIC_VALS___t0 (theory1_safe var1312_literal_array_1312__t0) ) ) (declare-fun var1127___hpack__decoder__STATIC_VALS__t1 () (_ BitVec 64)) (assert (= var1314_safe_literal_array_1312_____safe___hpack__decoder__STATIC_VALS___t0 (theory1_safe var1127___hpack__decoder__STATIC_VALS__t1) ) ) (declare-fun var1315_nullterm_literal_array_1312_____nullterm___hpack__decoder__STATIC_VALS___t0 () Bool) (assert (= var1315_nullterm_literal_array_1312_____nullterm___hpack__decoder__STATIC_VALS___t0 (theory2_nullterm var1312_literal_array_1312__t0) ) ) (assert (= var1315_nullterm_literal_array_1312_____nullterm___hpack__decoder__STATIC_VALS___t0 (theory2_nullterm var1127___hpack__decoder__STATIC_VALS__t1) ) ) (declare-fun var1378_len___hpack__decoder__STATIC_VALS___t0 () (_ BitVec 64)) (assert (= var1378_len___hpack__decoder__STATIC_VALS___t0 (theory0_len var1127___hpack__decoder__STATIC_VALS__t1) ) ) (assert (= var1378_len___hpack__decoder__STATIC_VALS___t0 (_ bv62 64)) ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/decoder.zz:198 ; export fn next(Iterator mut *self, err::Err+et mut*e) -> bool ; where err::checked(*e) ; model len(self->key.mem) >= self->key.size ; model len(self->val.mem) >= self->val.size ; { ; ; self->key = Slice{mem:0}; ; self->val = Slice{mem:0}; ; static_attest(len(self->key.mem) >= self->key.size); ; static_attest(len(self->val.mem) >= self->val.size); ; ; for (; self->at < self->wire.size ; self->at += 1) { ; static_attest(self->at < len(self->wire.mem)); ; switch get_repr(self->wire.mem[self->at]) { ; Repr::Indexed => { ; uint x = self->decode_integer(e, 7); ; if err::check(e) { ; return false; ; } ; ; if x > 0 && (usize)x < static(len(STATIC_KEYS)) { ; self->key = Slice { ; size: (usize)strlen(STATIC_KEYS[(usize)x]), ; mem: (u8*)STATIC_KEYS[(usize)x], ; }; ; self->val = Slice { ; size: (usize)strlen(STATIC_VALS[(usize)x]), ; mem: (u8*)STATIC_VALS[(usize)x], ; }; ; return true; ; } else if x > 61 && x < 76 { ; usize di = (usize)x - 61; ; self->key = self->dyn[di].key; ; self->val = self->dyn[di].val; ; return true; ; } else { ; err::fail(e, 1, "%u not implemented", x); ; return false; ; } ; } ; Repr::LiteralWithIncrementalIndexing => { ; return self->decode_literal(e, true); ; } ; Repr::SizeUpdate => { ; err::fail(e, 1, "Repr::SizeUpdate not implemented"); ; return false; ; } ; Repr::LiteralNeverIndexed => { ; return self->decode_literal(e, false); ; } ; Repr::LiteralWithoutIndexing => { ; return self->decode_literal(e, false); ; } ; } ; } ; return false; ; } (declare-fun var1379___hpack__decoder__next__t0 () (_ BitVec 64)) (declare-fun var1380_true__t0 () Bool) (assert (= var1380_true__t0 (theory1_safe var1379___hpack__decoder__next__t0) ) ) (assert var1380_true__t0 ) ; : /home/aep/proj/zz/modules/byteorder/./src/lib.zz:37 ; pub inline fn to_be32(u32 x) -> u32{ ; BYTE_ORDER; ; @{{ ; #if BYTE_ORDER == LITTLE_ENDIAN ; return byteorder_bswap_32(x); ; #else ; return x; ; #endif ; }}@ ; } (declare-fun var1381___byteorder__to_be32__t0 () (_ BitVec 64)) (declare-fun var1382_true__t0 () Bool) (assert (= var1382_true__t0 (theory1_safe var1381___byteorder__to_be32__t0) ) ) (assert var1382_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/encoder.zz:57 ; pub fn encode_integer(slice::MutSlice mut* slice, err::Err+et mut *e, usize value, u8 prefix_size) ; where err::checked(*e) ; { ; if slice->at >= slice->slice.size { ; err::fail(e, 10, "eof"); ; return; ; } ; u8 mut mask = 0xff; ; if prefix_size < 8 { ; mask = (1 << prefix_size) - 1; ; } ; ; if value < (usize)mask { ; slice->mem()[slice->at] = slice->mem()[slice->at] & ~mask | (u8)value; ; return; ; } ; ; err::fail(e, 10, "large header field not implemented"); ; } (declare-fun var1383___hpack__encoder__encode_integer__t0 () (_ BitVec 64)) (declare-fun var1384_true__t0 () Bool) (assert (= var1384_true__t0 (theory1_safe var1383___hpack__encoder__encode_integer__t0) ) ) (assert var1384_true__t0 ) ; : /home/aep/proj/devguard/carrier/modules/hpack/./src/encoder.zz:5 ; export fn encode(slice::MutSlice mut* slice, err::Err+et mut *e, u8* key, usize keylen, u8* val, usize vallen) ; where len(key) >= keylen ; where len(val) >= vallen ; where err::checked(*e) ; { ; if slice->at >= slice->slice.size || slice->at + 1 >= slice->slice.size { ; err::fail(e, 1, "overflow"); ; return; ; } ; ; slice->mem()[slice->at] = 0; ; slice->at += 1; ; ; if slice->at + 1 >= slice->slice.size { ; err::fail(e, 1, "overflow"); ; return; ; } ; ; slice->mem()[slice->at] = 0; ; static_attest(len(slice->slice.mem) > slice->at); ; encode_integer(slice, e, keylen, 7); ; if err::check(e) { ; return; ; } ; slice->at += 1; ; ; if slice->at + keylen >= slice->slice.size { ; err::fail(e, 1, "overflow"); ; return; ; } ; memcpy(slice->mem() + slice->at, key, keylen); ; slice->at += keylen; ; ; slice->mem()[slice->at] = 0; ; encode_integer(slice, e, vallen, 7); ; if err::check(e) { ; return; ; } ; slice->at += 1; ; ; if slice->at >= slice->slice.size || slice->at >= slice->slice.size - vallen { ; err::fail(e, 1, "overflow"); ; return; ; } ; ; memcpy(slice->mem() + slice->at, val, vallen); ; slice->at += vallen; ; static_attest(slice->at <= slice->slice.size); ; } (declare-fun var1385___hpack__encoder__encode__t0 () (_ BitVec 64)) (declare-fun var1386_true__t0 () Bool) (assert (= var1386_true__t0 (theory1_safe var1385___hpack__encoder__encode__t0) ) ) (assert var1386_true__t0 ) ; : ./src/endpoint.zz:311 ; fn on_remote_open(channel::Channel mut*self, err::Err+et mut*e, slice::Slice *headers, u32 stream_id) -> bool ; where err::checked(*e) ; { ; bool mut is_connect = false; ; for(let mut it = hpack::decoder::decode(*headers); it.next(e);) { ; if it.key.eq_cstr(":path") { ; if it.val.eq_cstr("/carrier.broker.v1/peer/connect") { ; is_connect = true; ; } else { ; log::warn("broker opening unsupported path %.*s", it.key.size, it.key.mem); ; } ; } ; } ; if err::check(e) { ; return false; ; } ; if !is_connect { ; return false; ; } ; ; ; stream::Stream mut* streami = self->alloc_stream(stream_id); ; if streami == 0 { ; return false; ; } ; static_attest(safe(streami)); ; streami->order_incomming = 1; ; ; let mut *frame = self->q.alloc(e, channel::FrameType::Open, 20); ; if err::check(e) { ; self->close(e, stream_id); ; return false; ; } ; ; frame->push32(byteorder::to_be32(streami->id)); // stream ; frame->push16(0); // size placeholder ; ; hpack::encoder::encode(frame, e, (u8*)":status", 7, (u8*)"200", 3); ; if err::check(e) { return false; } ; ; u16 bsize = byteorder::to_be16(frame->at - 4 - 2); ; memcpy(frame->mem() + 4, &bsize, 2); ; ; streami->stream = (stream::stream_fn)stream_connect; ; //streami->close = (stream::close_fn)close_connect; ; ; return true; ; } (declare-fun var1387___carrier__endpoint__on_remote_open__t0 () (_ BitVec 64)) (declare-fun var1388_true__t0 () Bool) (assert (= var1388_true__t0 (theory1_safe var1387___carrier__endpoint__on_remote_open__t0) ) ) (assert var1388_true__t0 ) ; : ./src/channel.zz:56 ; pub fn open(Channel mut* self) -> stream::Stream mut * { ; let r = self->alloc_stream(1 + self->streamidcounter * 2); ; if r != 0 { ; self->streamidcounter += 1; ; } ; return r; ; } (declare-fun var1389___carrier__channel__open__t0 () (_ BitVec 64)) (declare-fun var1390_true__t0 () Bool) (assert (= var1390_true__t0 (theory1_safe var1389___carrier__channel__open__t0) ) ) (assert var1390_true__t0 ) ; : ./src/channel.zz:64 ; pub fn alloc_stream(Channel mut* self, u32 streamid) -> stream::Stream mut * { ; for (usize mut i = 0 ; i < static(len(self->streams)); i++) { ; if self->streams[i].id == 0 { ; memset(self->streams + i, 0, sizeof(stream::Stream)); ; self->streams[i].id = streamid; ; self->streams[i].order_outgoing = 2; ; return self->streams + i; ; } ; } ; return 0; ; } (declare-fun var1391___carrier__channel__alloc_stream__t0 () (_ BitVec 64)) (declare-fun var1392_true__t0 () Bool) (assert (= var1392_true__t0 (theory1_safe var1391___carrier__channel__alloc_stream__t0) ) ) (assert var1392_true__t0 ) ; : ./src/channel.zz:77 ; pub fn close(Channel mut* self, err::Err+et mut*e, u32 streamid) ; where err::checked(*e) ; { ; ; u64 mut order = 1; ; ; for (usize mut i =0 ; i < static(len(self->streams)); i++) { ; if self->streams[i].id == streamid { ; stream::close_fn cb = self->streams[i].close; ; if cb != 0 { ; static_attest(safe(cb)); ; cb(self->streams + i, self, e); ; if err::check(e) { ; return; ; } ; } ; order = self->streams[i].order_outgoing; ; self->streams[i].id = 0; ; } ; } ; ; slice::MutSlice mut * frame = self->q.alloc(e, FrameType::Close, 16); ; if err::check(e) { ; return; ; } ; ; frame->push32(byteorder::to_be32(streamid)); // stream ; frame->push64(byteorder::to_be64(order)); // order ; frame->push(0); //TODO set reason ; } (declare-fun var1393___carrier__channel__close__t0 () (_ BitVec 64)) (declare-fun var1394_true__t0 () Bool) (assert (= var1394_true__t0 (theory1_safe var1393___carrier__channel__close__t0) ) ) (assert var1394_true__t0 ) ; : /home/aep/proj/zz/modules/byteorder/./src/lib.zz:61 ; pub inline fn from_be64(u64 x) -> u64 { ; return to_be64(x); ; } (declare-fun var1395___byteorder__from_be64__t0 () (_ BitVec 64)) (declare-fun var1396_true__t0 () Bool) (assert (= var1396_true__t0 (theory1_safe var1395___byteorder__from_be64__t0) ) ) (assert var1396_true__t0 ) ; : /home/aep/proj/zz/modules/log/./src/lib.zz:33 ; export fn info(char * callsite_source module, char *fmt, ...) ; { ; fprintf(stderr, "[\x1B[32mINF\x1B[0m] %s ", module); ; va_list mut args; ; va_start (args, fmt); ; vfprintf( ; stderr, ; fmt, ; args ; ); ; va_end (args); ; fprintf(stderr, "\n"); ; } (declare-fun var1397___log__info__t0 () (_ BitVec 64)) (declare-fun var1398_true__t0 () Bool) (assert (= var1398_true__t0 (theory1_safe var1397___log__info__t0) ) ) (assert var1398_true__t0 ) ; : /home/aep/proj/zz/modules/byteorder/./src/lib.zz:47 ; pub inline fn from_be32(u32 x) -> u32 { ; return to_be32(x); ; } (declare-fun var1399___byteorder__from_be32__t0 () (_ BitVec 64)) (declare-fun var1400_true__t0 () Bool) (assert (= var1400_true__t0 (theory1_safe var1399___byteorder__from_be32__t0) ) ) (assert var1400_true__t0 ) ; : /home/aep/proj/zz/modules/slice/./src/slice.zz:35 ; export fn new(u8 *mem, usize size) -> Slice ; where len(mem) >= size ; model len(return.mem) == return.size ; model len(return.mem) == size ; { ; let r = Slice { ; size: size, ; mem: mem, ; }; ; static_attest(len(r.mem) == r.size); ; return r; ; } (declare-fun var1401___slice__slice__new__t0 () (_ BitVec 64)) (declare-fun var1402_true__t0 () Bool) (assert (= var1402_true__t0 (theory1_safe var1401___slice__slice__new__t0) ) ) (assert var1402_true__t0 ) ; : /home/aep/proj/zz/modules/log/./src/lib.zz:5 ; export fn error(char * callsite_source module, char *fmt, ...) ; { ; fprintf(stderr, "[\x1B[31mERR\x1B[0m] %s ", module); ; va_list mut args; ; va_start (args, fmt); ; vfprintf( ; stderr, ; fmt, ; args ; ); ; va_end (args); ; fprintf(stderr, "\n"); ; } (declare-fun var1403___log__error__t0 () (_ BitVec 64)) (declare-fun var1404_true__t0 () Bool) (assert (= var1404_true__t0 (theory1_safe var1403___log__error__t0) ) ) (assert var1404_true__t0 ) ; : ./src/channel.zz:573 ; pub fn ack(Channel mut* self, err::Err mut* e, u64 ackd) { ; if (usize)self->outgoing_acks_at < (usize)sizeof(self->outgoing_acks) { ; static_attest((usize)self->outgoing_acks_at < len(self->outgoing_acks)); ; (self->outgoing_acks)[(usize)self->outgoing_acks_at] = ackd; ; self->outgoing_acks_at+=1; ; } else { ; log::error("outgoing ack buffer overflow"); ; } ; } (declare-fun var1405___carrier__channel__ack__t0 () (_ BitVec 64)) (declare-fun var1406_true__t0 () Bool) (assert (= var1406_true__t0 (theory1_safe var1405___carrier__channel__ack__t0) ) ) (assert var1406_true__t0 ) ; : ./src/channel.zz:273 ; pub fn push(Channel mut* self, err::Err+et mut* e, u8 mut* body, usize l, u64 counter) ; where err::checked(*e) ; where len(body) >= l ; where l > 16 ; { ; ; // counter is offset by one in the rust implementation ; u64 realcounter = counter - 1; ; ; usize plainlen = cipher::decrypt( ; &(self->c_them), ; e, ; body, ; l, ; realcounter, ; body, ; l ; ); ; if err::check(e) { ; return; ; } ; ; ; // broken crc and flags 2B ; // payload len 2B ; usize mut frames_len; ; unsafe {frames_len = byteorder::from_be16(*(u16*)(body + 2)) } ; u8 *frames = body + 4; ; if frames_len >= plainlen - 4 { ; err::fail(e, 192, "corrupt"); ; return; ; } ; ; ; //log::debug("incomming frames"); ; //static_attest(len(frames) > frames_len); ; //hex::dump(frames, frames_len); ; ; bool mut ack_required = false; ; for (usize mut i = 0; i < frames_len; ) { ; static_attest(i < len(frames)); ; static_attest(i < len(body)); ; u8 frametype = frames[i]; ; i++; ; switch frametype { ; 0x00 => {} ; FrameType::Ack => { ; if i + 2 + 2 >= frames_len { ; err::fail(e, 192, "short read"); ; return; ; } ; static_attest(i < len(frames)); ; u16 delay = byteorder::from_be16(*(u16*)(frames + i)); ; i += 2; ; static_attest(i < len(frames)); ; usize count = (usize)byteorder::from_be16(*(u16*)(frames + i)); ; i += 2; ; ; if i + 8 * count > frames_len { ; err::fail(e, 192, "short read"); ; return; ; } ; ; for (usize mut j = 0; j < count; j++) { ; static_attest(i < len(frames)); ; static_attest(i < len(frames) - 8); ; u64 mut ackorder = byteorder::from_be64(*(u64*)(frames + i)); ; i += 8; ; ; // acks are off by one in original rust impl ; ackorder -= 1; ; ; ; log::info("received ack %lu", ackorder); ; ; u64 time = 3; ; self->q.ack(time, ackorder); ; } ; } ; FrameType::Ping => { ; ack_required = true; ; ; log::debug("received ping frame"); ; if err::check(e) { ; return; ; } ; } ; FrameType::Disconnect => { ; ack_required = true; ; ; log::warn("received disconnect frame"); ; //TODO ; } ; FrameType::Open => { ; ack_required = true; ; if i + 4 + 2 >= frames_len { ; err::fail(e, 192, "short read"); ; return; ; } ; static_attest(i < len(frames)); ; u32 streamid = byteorder::from_be32(*(u32*)(frames + i)); ; i += 4; ; static_attest(i < len(frames)); ; usize size = (usize)byteorder::from_be16(*(u16*)(frames + i)); ; i += 2; ; ; log::debug("received open stream=%zu, size=%zu", streamid, size); ; ; if i + size > frames_len { ; err::fail(e, 192, "short read"); ; return; ; } ; ; static_attest(i < len(frames)); ; u8 * hmem = frames + i; ; static_attest(size < len(hmem)); ; let header_slice = slice::slice::new(hmem, size); ; ; i += size; ; static_attest(i < len(frames)); ; ; let mut accepted = false; ; if self->on_open != 0 { ; static_attest(safe(self->on_open)); ; accepted = self->on_open(self, e, &header_slice, streamid); ; if err::check(e) { ; return; ; } ; } ; if !accepted { ; self->close(e, streamid); ; if err::check(e) { ; return; ; } ; } ; } ; FrameType::Stream => { ; ack_required = true; ; if i + 4 + 8 + 2 >= frames_len { ; err::fail(e, 192, "short read"); ; return; ; } ; static_attest(i < len(frames)); ; u32 streamid = byteorder::from_be32(*(u32*)(frames + i)); ; i += 4; ; static_attest(i < len(frames)); ; u64 order = byteorder::from_be64(*(u64*)(frames + i)); ; i += 8; ; static_attest(i < len(frames)); ; usize size = (usize)byteorder::from_be16(*(u16*)(frames + i)); ; i += 2; ; ; log::debug("received stream frame for stream=%u, order=%u, size=%zu", ; streamid, order, size); ; ; if i >= frames_len { ; err::fail(e, 192, "short read"); ; return; ; } ; if i + size > frames_len { ; err::fail(e, 192, "short read"); ; return; ; } ; static_attest(len(frames) > i); ; static_attest(len(frames +i) >= size); ; ; ; ; let mut found_channel = false; ; for (usize mut j =0 ; j < static(len(self->streams)); j++) { ; if self->streams[j].id == streamid { ; found_channel = true; ; let bs = slice::slice::new(frames + i, size); ; let accepted = self->streams[j].incomming_stream( ; self, ; e, ; order, ; &bs ; ); ; if err::check(e) { ; e->eprint(); ; err::new(e); ; self->close(e, streamid); ; if err::check(e) { ; return; ; } ; } else if !accepted { ; // must not ack the packet, because this frame was not accepted ; //TODO send backpressure signal ; err::fail(e, 192, "stream %u ordering is backpressured at position %u, unable to accept %u", ; streamid, self->streams[j].order_incomming, order); ; return; ; } ; } ; } ; if !found_channel { ; self->close(e, streamid); ; if err::check(e) { ; return; ; } ; } ; ; i += size; ; static_attest(i < len(frames)); ; ; ; } ; FrameType::Close => { ; ack_required = true; ; if i + 4 + 8 + 1 > frames_len { ; err::fail(e, 192, "short read"); ; return; ; } ; static_attest(i < len(frames)); ; u32 streamid = byteorder::from_be32(*(u32*)(frames + i)); ; i += 4; ; static_attest(i < len(frames)); ; u64 order = byteorder::from_be64(*(u64*)(frames + i)); ; i += 8; ; static_attest(i < len(frames)); ; ; u8 reason = *(frames + i); ; i += 1; ; static_attest(i <= len(frames)); ; ; log::debug("received close for stream=%u, order=%u", streamid, order); ; ; for (usize mut i =0 ; i < static(len(self->streams)); i++) { ; if self->streams[i].id == streamid { ; static_attest(len(frames) > i); ; bool accepted = self->streams[i].incomming_close( ; self, ; e, ; order ; ); ; if err::check(e) { ; return; ; } ; if !accepted { ; err::fail(e, 192, "stream %u ordering is backpressured at position %u, unable to accept %u", ; streamid, self->streams[i].order_incomming, order); ; return; ; } ; } ; } ; } ; FrameType::Configure => { ; ack_required = true; ; if i + 3 > frames_len { ; err::fail(e, 192, "short read"); ; return; ; } ; static_attest(i < len(frames)); ; //flags ; i += 1; ; ; static_attest(i < len(frames)); ; usize size = (usize)byteorder::from_be16(*(u16*)(frames + i)); ; ; if i + size > frames_len { ; err::fail(e, 192, "short read"); ; return; ; } ; ; i += size; ; static_attest(len(frames) > i); ; } ; FrameType::Fragmented => { ; ack_required = true; ; if i + 4 + 8 + 4 > frames_len { ; err::fail(e, 192, "short read"); ; return; ; } ; static_attest(i < len(frames)); ; ; u32 streamid = byteorder::from_be32(*(u32*)(frames + i)); ; i += 4; ; static_attest(i < len(frames)); ; ; u64 order = byteorder::from_be64(*(u64*)(frames + i)); ; i += 8; ; static_attest(i < len(frames)); ; ; u32 fragments = byteorder::from_be32(*(u32*)(frames + i)); ; i += 4; ; static_attest(i < len(frames)); ; ; log::debug("received fragemented for stream=%u, order=%u", streamid, order); ; } ; default => { ; err::fail(e, 194, "invalid frame %u", body[i]); ; return; ; } ; } ; if ack_required { ; ack(self, e, counter); ; } ; } ; } (declare-fun var1407___carrier__channel__push__t0 () (_ BitVec 64)) (declare-fun var1408_true__t0 () Bool) (assert (= var1408_true__t0 (theory1_safe var1407___carrier__channel__push__t0) ) ) (assert var1408_true__t0 ) ; : ./src/endpoint.zz:28 ; State (declare-fun var1410___carrier__endpoint__State__Bootstrap__t0 () (_ BitVec 64)) (assert (= var1410___carrier__endpoint__State__Bootstrap__t0 (_ bv0 64)) ) (declare-fun var1411___carrier__endpoint__State__Connecting__t0 () (_ BitVec 64)) (assert (= var1411___carrier__endpoint__State__Connecting__t0 (_ bv1 64)) ) (declare-fun var1412___carrier__endpoint__State__Connected__t0 () (_ BitVec 64)) (assert (= var1412___carrier__endpoint__State__Connected__t0 (_ bv2 64)) ) ; : ./src/sha256.zz:6 ; pub const usize HASHLEN = 32; ; : ./src/sha256.zz:6 ; 32 ; literal expr (declare-fun var1414_literal_32__t0 () (_ BitVec 64)) (assert (= var1414_literal_32__t0 (_ bv32 64)) ) ; : ./src/sha256.zz:6 ; pub const usize HASHLEN = 32; (declare-fun var1415_safe_literal_32_____safe___carrier__sha256__HASHLEN___t0 () Bool) (assert (= var1415_safe_literal_32_____safe___carrier__sha256__HASHLEN___t0 (theory1_safe var1414_literal_32__t0) ) ) (declare-fun var1413___carrier__sha256__HASHLEN__t1 () (_ BitVec 64)) (assert (= var1415_safe_literal_32_____safe___carrier__sha256__HASHLEN___t0 (theory1_safe var1413___carrier__sha256__HASHLEN__t1) ) ) (declare-fun var1416_nullterm_literal_32_____nullterm___carrier__sha256__HASHLEN___t0 () Bool) (assert (= var1416_nullterm_literal_32_____nullterm___carrier__sha256__HASHLEN___t0 (theory2_nullterm var1414_literal_32__t0) ) ) (assert (= var1416_nullterm_literal_32_____nullterm___carrier__sha256__HASHLEN___t0 (theory2_nullterm var1413___carrier__sha256__HASHLEN__t1) ) ) ; : ./src/sha256.zz:6 ; 32 (declare-fun var1417_implicit_coercion_of_literal_32__t0 () (_ BitVec 64)) (assert (! (= var1417_implicit_coercion_of_literal_32__t0 var1414_literal_32__t0) :named A2))(declare-fun var1413___carrier__sha256__HASHLEN__t0 () (_ BitVec 64)) (assert (= var1413___carrier__sha256__HASHLEN__t1 (ite true var1417_implicit_coercion_of_literal_32__t0 var1413___carrier__sha256__HASHLEN__t0) ) ) ; : ./src/symmetric.zz:12 ; SymmetricState ; : ./src/identity.zz:14 ; Secret ; : ./src/identity.zz:15 ; Address ; : ./src/noise.zz:20 ; Initiator ; : ./src/sha256.zz:7 ; pub const usize BLOCKLEN = 64; ; : ./src/sha256.zz:7 ; 64 ; literal expr (declare-fun var1423_literal_64__t0 () (_ BitVec 64)) (assert (= var1423_literal_64__t0 (_ bv64 64)) ) ; : ./src/sha256.zz:7 ; pub const usize BLOCKLEN = 64; (declare-fun var1424_safe_literal_64_____safe___carrier__sha256__BLOCKLEN___t0 () Bool) (assert (= var1424_safe_literal_64_____safe___carrier__sha256__BLOCKLEN___t0 (theory1_safe var1423_literal_64__t0) ) ) (declare-fun var1422___carrier__sha256__BLOCKLEN__t1 () (_ BitVec 64)) (assert (= var1424_safe_literal_64_____safe___carrier__sha256__BLOCKLEN___t0 (theory1_safe var1422___carrier__sha256__BLOCKLEN__t1) ) ) (declare-fun var1425_nullterm_literal_64_____nullterm___carrier__sha256__BLOCKLEN___t0 () Bool) (assert (= var1425_nullterm_literal_64_____nullterm___carrier__sha256__BLOCKLEN___t0 (theory2_nullterm var1423_literal_64__t0) ) ) (assert (= var1425_nullterm_literal_64_____nullterm___carrier__sha256__BLOCKLEN___t0 (theory2_nullterm var1422___carrier__sha256__BLOCKLEN__t1) ) ) ; : ./src/sha256.zz:7 ; 64 (declare-fun var1426_implicit_coercion_of_literal_64__t0 () (_ BitVec 64)) (assert (! (= var1426_implicit_coercion_of_literal_64__t0 var1423_literal_64__t0) :named A3))(declare-fun var1422___carrier__sha256__BLOCKLEN__t0 () (_ BitVec 64)) (assert (= var1422___carrier__sha256__BLOCKLEN__t1 (ite true var1426_implicit_coercion_of_literal_64__t0 var1422___carrier__sha256__BLOCKLEN__t0) ) ) ; : ./src/sha256.zz:17 ; Sha256 ; : ./src/sha256.zz:23 ; export fn init(Sha256 mut set *self) { ; hacl::Hacl_SHA2_256_init(self->state); ; self->at = 0; ; } (declare-fun var1428___carrier__sha256__init__t0 () (_ BitVec 64)) (declare-fun var1429_true__t0 () Bool) (assert (= var1429_true__t0 (theory1_safe var1428___carrier__sha256__init__t0) ) ) (assert var1429_true__t0 ) ; : ./src/sha256.zz:28 ; export fn update(Sha256 mut *self, u8 * mut data, usize mut l) ; where len(data) >= l ; { ; static_attest(len(self->block) > self->at); ; static_attest(len(self->block) > 64 - self->at); ; ; for (;;) { ; usize fill = as(64 - self->at); ; if l >= fill { ; static_attest(len(data) > fill); ; std::memcpy(self->block + self->at, data, fill); ; hacl::Hacl_SHA2_256_update(self->state, self->block); ; l -= fill; ; data = data + fill; ; self->at = 0; ; } else { ; ; static_attest(len(self->block) > (usize)self->at); ; u8 mut *dst = self->block + self->at; ; static_attest(len(dst) > l); ; static_attest(safe(data)); ; static_attest(len(data) > l); ; std::memcpy(dst, data, l); ; self->at += (u8)l; ; break; ; } ; } ; } (declare-fun var1430___carrier__sha256__update__t0 () (_ BitVec 64)) (declare-fun var1431_true__t0 () Bool) (assert (= var1431_true__t0 (theory1_safe var1430___carrier__sha256__update__t0) ) ) (assert var1431_true__t0 ) ; : ./src/sha256.zz:57 ; export fn finish(Sha256 mut unset *self, u8 mut *out) { ; hacl::Hacl_SHA2_256_update_last(self->state, self->block, self->at); ; hacl::Hacl_SHA2_256_finish(self->state, out); ; } (declare-fun var1432___carrier__sha256__finish__t0 () (_ BitVec 64)) (declare-fun var1433_true__t0 () Bool) (assert (= var1433_true__t0 (theory1_safe var1432___carrier__sha256__finish__t0) ) ) (assert var1433_true__t0 ) ; : ./src/sha256.zz:111 ; pub fn hmac(u8 *key, usize keylen, u8* data, usize datalen, u8 mut *out) ; where keylen <= len(key) && keylen < BLOCKLEN ; where datalen <= len(data) && keylen < BLOCKLEN ; { ; assert(keylen <= BLOCKLEN); ; ; u8 mut ipad [BLOCKLEN] = {0}; ; memset(ipad, 0x36, BLOCKLEN); ; ; u8 mut opad [BLOCKLEN] = {0}; ; memset(opad, 0x5c, BLOCKLEN); ; ; for (usize mut i = 0; i < keylen ; i++) { ; ipad[i] = ipad[i] ^ key[i]; ; opad[i] = opad[i] ^ key[i]; ; } ; ; u8 mut inner_output[HASHLEN] = {0}; ; Sha256 mut s1 = {0}; ; init(&s1); ; update(&s1, ipad, BLOCKLEN); ; update(&s1, data, datalen); ; finish(&s1, inner_output); ; ; Sha256 mut s2 = {0}; ; init(&s2); ; update(&s2, opad, BLOCKLEN); ; update(&s2, inner_output, HASHLEN); ; finish(&s2, out); ; } (declare-fun var1434___carrier__sha256__hmac__t0 () (_ BitVec 64)) (declare-fun var1435_true__t0 () Bool) (assert (= var1435_true__t0 (theory1_safe var1434___carrier__sha256__hmac__t0) ) ) (assert var1435_true__t0 ) ; : ./src/sha256.zz:62 ; pub fn hkdf( ; u8 * chaining_key, ; u8 * input_key_material, ; usize input_key_material_len, ; u8 mut* unsafe out1, ; u8 mut* unsafe out2, ; u8 mut* unsafe out3) ; ; where HASHLEN <= len(chaining_key) ; where out1 == 0 || HASHLEN <= len(out1) ; where out2 == 0 || HASHLEN <= len(out2) ; where out3 == 0 || HASHLEN <= len(out3) ; where input_key_material_len <= len(input_key_material) ; ; { ; u8 mut temp_key[HASHLEN] = {0}; ; u8 mut temp_hash[HASHLEN + 1] = {0}; ; ; // temporary hashing key ; hmac(chaining_key, HASHLEN, input_key_material, input_key_material_len, temp_key); ; ; // output 1 ; if out1 == 0 { ; return; ; } ; static_attest(safe(out1)); ; temp_hash[0] = 0x01; ; hmac(temp_key, HASHLEN, temp_hash, 1, out1); ; ; //output 2 ; if out2 == 0 { ; return; ; } ; static_attest(safe(out2)); ; std::memcpy(temp_hash, out1, HASHLEN); ; temp_hash[HASHLEN] = 0x02; ; hmac(temp_key, HASHLEN, temp_hash, HASHLEN + 1, out2); ; ; //output 3 ; if out3 == 0 { ; return; ; } ; static_attest(safe(out3)); ; std::memcpy(temp_hash, out2, HASHLEN); ; temp_hash[HASHLEN] = 0x03; ; hmac(temp_key, HASHLEN, temp_hash, HASHLEN + 1, out3); ; } (declare-fun var1436___carrier__sha256__hkdf__t0 () (_ BitVec 64)) (declare-fun var1437_true__t0 () Bool) (assert (= var1437_true__t0 (theory1_safe var1436___carrier__sha256__hkdf__t0) ) ) (assert var1437_true__t0 ) ; : ./src/symmetric.zz:111 ; pub fn split(SymmetricState *self, cipher::CipherState mut *ini, cipher::CipherState mut *resp) { ; u8 mut h1[sha256::HASHLEN] = {0}; ; u8 mut h2[sha256::HASHLEN] = {0}; ; sha256::hkdf(self->ck, (u8*)"", 0, h1, h2, 0); ; cipher::init(ini, h1); ; cipher::init(resp, h2); ; } (declare-fun var1438___carrier__symmetric__split__t0 () (_ BitVec 64)) (declare-fun var1439_true__t0 () Bool) (assert (= var1439_true__t0 (theory1_safe var1438___carrier__symmetric__split__t0) ) ) (assert var1439_true__t0 ) ; : ./src/symmetric.zz:21 ; pub fn init(SymmetricState mut *self, char *protocolname) { ; memset(self->ck, 0, sizeof(sha256::HASHLEN)); ; assert((usize)strlen(protocolname) <= sha256::HASHLEN); ; memcpy(self->ck, protocolname, strlen(protocolname)); ; memcpy(self->h, self->ck, sha256::HASHLEN); ; } (declare-fun var1440___carrier__symmetric__init__t0 () (_ BitVec 64)) (declare-fun var1441_true__t0 () Bool) (assert (= var1441_true__t0 (theory1_safe var1440___carrier__symmetric__init__t0) ) ) (assert var1441_true__t0 ) ; : ./src/symmetric.zz:28 ; pub fn mix_hash(SymmetricState mut *self, u8 * data, usize mut l) ; where len(data) >= l ; { ; sha256::Sha256 mut s = {0}; ; sha256::init(&s); ; sha256::update(&s, self->h, sha256::HASHLEN); ; sha256::update(&s, data, l); ; sha256::finish(&s, self->h); ; } (declare-fun var1442___carrier__symmetric__mix_hash__t0 () (_ BitVec 64)) (declare-fun var1443_true__t0 () Bool) (assert (= var1443_true__t0 (theory1_safe var1442___carrier__symmetric__mix_hash__t0) ) ) (assert var1443_true__t0 ) ; : ./src/symmetric.zz:38 ; pub fn mix_key(SymmetricState mut * mut self, u8 * data, usize mut l) ; where len(data) >= l ; { ; u8 mut h1[sha256::HASHLEN] = {0}; ; u8 mut h2[sha256::HASHLEN] = {0}; ; static_attest(sha256::HASHLEN == len(self->ck)); ; ; sha256::hkdf(self->ck, data, l, h1, h2, 0); ; memcpy(self->ck, h1, sha256::HASHLEN); ; cipher::init(&(self->cipher), h2); ; } (declare-fun var1444___carrier__symmetric__mix_key__t0 () (_ BitVec 64)) (declare-fun var1445_true__t0 () Bool) (assert (= var1445_true__t0 (theory1_safe var1444___carrier__symmetric__mix_key__t0) ) ) (assert var1445_true__t0 ) ; : ./src/symmetric.zz:50 ; pub fn encrypt_and_mix_hash( ; SymmetricState mut * mut self, ; err::Err+et mut* e, ; u8 * plain, ; usize plain_len, ; u64 nonce, ; u8 mut* ciphertext, ; usize cipher_len_max, ; ) -> usize ; where err::checked(*e) ; where len(ciphertext) >= cipher_len_max ; where len(plain) >= plain_len ; where len(ciphertext) > plain_len ; { ; ; usize cipher_len = cipher::encrypt_ad( ; &self->cipher, e, ; self->h, sha256::HASHLEN, ; plain, plain_len, ; nonce, ; ciphertext, cipher_len_max); ; ; if err::check(e) { ; return 0; ; } ; ; mix_hash(self, ciphertext, cipher_len); ; return cipher_len; ; } (declare-fun var1446___carrier__symmetric__encrypt_and_mix_hash__t0 () (_ BitVec 64)) (declare-fun var1447_true__t0 () Bool) (assert (= var1447_true__t0 (theory1_safe var1446___carrier__symmetric__encrypt_and_mix_hash__t0) ) ) (assert var1447_true__t0 ) ; : ./src/symmetric.zz:80 ; pub fn decrypt_and_mix_hash( ; SymmetricState mut *self, ; err::Err+et mut* e, ; u8 * ciphertext, ; usize cipher_len, ; u64 nonce, ; u8 mut* plain, ; usize plain_len_max, ; ) -> usize ; where err::checked(*e) ; where len(ciphertext) >= cipher_len ; where len(plain) >= plain_len_max ; { ; ; usize plain_len = cipher::decrypt_ad( ; &self->cipher, e, ; self->h, sha256::HASHLEN, ; ciphertext, cipher_len, ; nonce, ; plain, plain_len_max ; ); ; ; if err::check(e) { ; return 0; ; } ; mix_hash(self, ciphertext, cipher_len); ; return plain_len; ; } (declare-fun var1448___carrier__symmetric__decrypt_and_mix_hash__t0 () (_ BitVec 64)) (declare-fun var1449_true__t0 () Bool) (assert (= var1449_true__t0 (theory1_safe var1448___carrier__symmetric__decrypt_and_mix_hash__t0) ) ) (assert var1449_true__t0 ) ; : ./src/bootstrap.zz:17 ; export const usize MAX_BROKERS = 16; ; : ./src/bootstrap.zz:17 ; 16 ; literal expr (declare-fun var1451_literal_16__t0 () (_ BitVec 64)) (assert (= var1451_literal_16__t0 (_ bv16 64)) ) ; : ./src/bootstrap.zz:17 ; export const usize MAX_BROKERS = 16; (declare-fun var1452_safe_literal_16_____safe___carrier__bootstrap__MAX_BROKERS___t0 () Bool) (assert (= var1452_safe_literal_16_____safe___carrier__bootstrap__MAX_BROKERS___t0 (theory1_safe var1451_literal_16__t0) ) ) (declare-fun var1450___carrier__bootstrap__MAX_BROKERS__t1 () (_ BitVec 64)) (assert (= var1452_safe_literal_16_____safe___carrier__bootstrap__MAX_BROKERS___t0 (theory1_safe var1450___carrier__bootstrap__MAX_BROKERS__t1) ) ) (declare-fun var1453_nullterm_literal_16_____nullterm___carrier__bootstrap__MAX_BROKERS___t0 () Bool) (assert (= var1453_nullterm_literal_16_____nullterm___carrier__bootstrap__MAX_BROKERS___t0 (theory2_nullterm var1451_literal_16__t0) ) ) (assert (= var1453_nullterm_literal_16_____nullterm___carrier__bootstrap__MAX_BROKERS___t0 (theory2_nullterm var1450___carrier__bootstrap__MAX_BROKERS__t1) ) ) ; : ./src/bootstrap.zz:17 ; 16 (declare-fun var1454_implicit_coercion_of_literal_16__t0 () (_ BitVec 64)) (assert (! (= var1454_implicit_coercion_of_literal_16__t0 var1451_literal_16__t0) :named A4))(declare-fun var1450___carrier__bootstrap__MAX_BROKERS__t0 () (_ BitVec 64)) (assert (= var1450___carrier__bootstrap__MAX_BROKERS__t1 (ite true var1454_implicit_coercion_of_literal_16__t0 var1450___carrier__bootstrap__MAX_BROKERS__t0) ) ) ; : ./src/bootstrap.zz:19 ; Broker ; : /home/aep/proj/zz/modules/io/./src/lib.zz:31 ; export fntype read_fn (Context mut* ctx, err::Err+et mut* e, u8 mut* to, usize mut* len) -> Result; ; : /home/aep/proj/zz/modules/io/./src/lib.zz:32 ; export fntype write_fn (Context mut* ctx, err::Err+et mut* e, u8* to, usize mut* len) -> Result; ; : /home/aep/proj/zz/modules/io/./src/lib.zz:45 ; Io ; : ./src/bootstrap.zz:56 ; Bootstrap ; : /home/aep/proj/zz/modules/io/./src/lib.zz:56 ; export fn read(Io mut* self, err::Err+et mut* e, string::String+st mut* str) -> Result ; where st > 1 ; where err::checked(*e) ; { ; static_attest(str->len < len(str->mem)); ; ; if self->read_impl == 0 { ; err::fail(e, 1, "noimpl"); ; return Result::Error; ; } ; static_attest(safe(self->read_impl)); ; ; usize mut l = st - str->len - 1; ; Result rr = self->read_impl(&self->ctx, e, as(str->mem + str->len), &l); ; if err::check(e) { ; return Result::Error; ; } ; if rr != Result::Ready { ; return rr; ; } ; str->len += l; ; static_attest(len(str->mem) > str->len); ; (str->mem)[str->len] = 0; ; return rr; ; } (declare-fun var1460___io__read__t0 () (_ BitVec 64)) (declare-fun var1461_true__t0 () Bool) (assert (= var1461_true__t0 (theory1_safe var1460___io__read__t0) ) ) (assert var1461_true__t0 ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:83 ; export fn read_bytes(Io mut* self, err::Err+et mut* e, u8 mut* mem, usize mut *memlen) -> Result ; where err::checked(*e) ; { ; if self->read_impl == 0 { ; err::fail(e, 1, "noimpl"); ; return Result::Error; ; } ; static_attest(safe(self->read_impl)); ; ; Result rr = self->read_impl(&self->ctx, e, mem, memlen); ; if err::check(e) { ; return Result::Error; ; } ; if rr != Result::Ready { ; return rr; ; } ; return rr; ; } (declare-fun var1462___io__read_bytes__t0 () (_ BitVec 64)) (declare-fun var1463_true__t0 () Bool) (assert (= var1463_true__t0 (theory1_safe var1462___io__read_bytes__t0) ) ) (assert var1463_true__t0 ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:102 ; export fn readline(Io mut* self, err::Err+et mut* e, string::String+st mut* str) -> Result ; where st > 1 ; where err::checked(*e) ; where st > 2 ; { ; if self->read_impl == 0 { ; err::fail(e, 1, "noimpl"); ; return Result::Error; ; } ; static_attest(safe(self->read_impl)); ; ; u8 mut buf[2] = {0}; ; usize mut l = 1; ; Result rr = self->read_impl(&self->ctx, e, buf, &l); ; if err::check(e) { ; return Result::Error; ; } ; if rr != Result::Ready { ; return rr; ; } ; ; char ch = as(buf[0]); ; ; if ch == '\n' || ch == '\r' { ; return Result::Ready; ; } ; ; if !str->push(ch) { ; err::fail(e, 1, "oom"); ; return Result::Error; ; } ; ; return Result::Later; ; } (declare-fun var1464___io__readline__t0 () (_ BitVec 64)) (declare-fun var1465_true__t0 () Bool) (assert (= var1465_true__t0 (theory1_safe var1464___io__readline__t0) ) ) (assert var1465_true__t0 ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:146 ; export fn write_bytes(Io mut* self, err::Err+et mut* e, u8 *b, usize mut *blen) -> Result ; where err::checked(*e) ; { ; if self->write_impl == 0 { ; err::fail(e, 1, "noimpl"); ; return Result::Error; ; } ; static_attest(safe(self->write_impl)); ; ; Result rr = self->write_impl(&self->ctx, e, b, blen); ; err::check(e); ; if rr != Result::Ready { ; return rr; ; } ; return rr; ; } (declare-fun var1466___io__write_bytes__t0 () (_ BitVec 64)) (declare-fun var1467_true__t0 () Bool) (assert (= var1467_true__t0 (theory1_safe var1466___io__write_bytes__t0) ) ) (assert var1467_true__t0 ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:137 ; export fn write(Io mut* self, err::Err+et mut* e, string::String+st mut* str) -> Result ; where st > 1 ; where err::checked(*e) ; { ; static_attest(str->len < len(str->mem)); ; usize mut blen = str->len; ; return write_bytes(self, e, (u8*)(str->mem), &blen); ; } (declare-fun var1468___io__write__t0 () (_ BitVec 64)) (declare-fun var1469_true__t0 () Bool) (assert (= var1469_true__t0 (theory1_safe var1468___io__write__t0) ) ) (assert var1469_true__t0 ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:163 ; export fn write_cstr(Io mut* self, err::Err+et mut* e, char *b) -> Result ; where nullterm(b) ; where err::checked(*e) ; { ; if self->write_impl == 0 { ; err::fail(e, 1, "noimpl"); ; return Result::Error; ; } ; static_attest(safe(self->write_impl)); ; ; usize mut blen = string::strlen(b); ; ; Result rr = self->write_impl(&self->ctx, e, (u8*)b, &blen); ; err::check(e); ; if rr != Result::Ready { ; return rr; ; } ; return rr; ; } (declare-fun var1470___io__write_cstr__t0 () (_ BitVec 64)) (declare-fun var1471_true__t0 () Bool) (assert (= var1471_true__t0 (theory1_safe var1470___io__write_cstr__t0) ) ) (assert var1471_true__t0 ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:183 ; export fn close(Io mut* self) ; { ; if self->close_impl == 0 { ; return; ; } ; static_attest(safe(self->close_impl)); ; self->close_impl(&self->ctx); ; } (declare-fun var1472___io__close__t0 () (_ BitVec 64)) (declare-fun var1473_true__t0 () Bool) (assert (= var1473_true__t0 (theory1_safe var1472___io__close__t0) ) ) (assert var1473_true__t0 ) ; : ./src/initiator.zz:23 ; Initiator ; : ./src/endpoint.zz:34 ; ConnectingState ; : ./src/identity.zz:166 ; export fn identity_from_secret (Identity mut* pk, Secret* sk) { ; ed25519::Hacl_Ed25519_secret_to_public(pk->k, (uint8_t mut*)(sk->k)); ; } (declare-fun var1476___carrier__identity__identity_from_secret__t0 () (_ BitVec 64)) (declare-fun var1477_true__t0 () Bool) (assert (= var1477_true__t0 (theory1_safe var1476___carrier__identity__identity_from_secret__t0) ) ) (assert var1477_true__t0 ) ; : ./src/rand.zz:7 ; pub fn rand(err::Err+et mut* e, u8 mut* mut bytes, usize mut size) ; where err::checked(*e) ; where len(bytes) >= size ; { ; int fd = as(open("/dev/random", O_RDONLY)); ; if fd < 0 { ; err::fail_with_errno(e, "cannot open /dev/random"); ; return; ; } ; static_attest(err::checked(*e)); ; ; for (;;) { ; int l = as(read(fd, bytes, size)); ; if l < 0 { ; if as(errno) == as(EINTR) { ; continue; ; } ; err::fail_with_errno(e, "cannot read /dev/random"); ; close(fd); ; return; ; } ; if (usize)l >= size { ; close(fd); ; return; ; } ; size -= (usize)l; ; bytes = bytes + (usize)l; ; } ; close(fd); ; } (declare-fun var1478___carrier__rand__rand__t0 () (_ BitVec 64)) (declare-fun var1479_true__t0 () Bool) (assert (= var1479_true__t0 (theory1_safe var1478___carrier__rand__rand__t0) ) ) (assert var1479_true__t0 ) ; : ./src/identity.zz:146 ; export fn secret_generate (err::Err+et mut* e, Secret mut* to) ; where err::checked(*e) ; { ; rand::rand(e, to->k, 32); ; } (declare-fun var1480___carrier__identity__secret_generate__t0 () (_ BitVec 64)) (declare-fun var1481_true__t0 () Bool) (assert (= var1481_true__t0 (theory1_safe var1480___carrier__identity__secret_generate__t0) ) ) (assert var1481_true__t0 ) ; : ./src/lib.zz:12 ; pub const u32 REVISION = 0x1111; ; : ./src/lib.zz:12 ; 0x1111 ; literal expr (declare-fun var1483_literal_4369__t0 () (_ BitVec 64)) (assert (= var1483_literal_4369__t0 (_ bv4369 64)) ) (declare-fun var1484_implicit_coercion_of_literal_4369__t0 () (_ BitVec 32)) (assert (! (= var1484_implicit_coercion_of_literal_4369__t0 ( (_ extract 31 0) var1483_literal_4369__t0 )) :named A5))(declare-fun var1482___carrier__REVISION__t1 () (_ BitVec 32)) (declare-fun var1482___carrier__REVISION__t0 () (_ BitVec 32)) (assert (= var1482___carrier__REVISION__t1 (ite true var1484_implicit_coercion_of_literal_4369__t0 var1482___carrier__REVISION__t0) ) ) ; : ./src/initiator.zz:20 ; static char PROLOGUE[] = "carrier has arrived"; ; : ./src/initiator.zz:20 ; "carrier has arrived" (declare-fun var1486_literal_string__carrier_has_arrived___t0 () (_ BitVec 64)) (declare-fun var1487_true__t0 () Bool) (assert (= var1487_true__t0 (theory1_safe var1486_literal_string__carrier_has_arrived___t0) ) ) (assert var1487_true__t0 ) (declare-fun var1488_true__t0 () Bool) (assert (= var1488_true__t0 (theory2_nullterm var1486_literal_string__carrier_has_arrived___t0) ) ) (assert var1488_true__t0 ) ; : ./src/initiator.zz:20 ; static char PROLOGUE[] = "carrier has arrived"; (declare-fun var1489_safe_literal_string__carrier_has_arrived______safe___carrier__initiator__PROLOGUE___t0 () Bool) (assert (= var1489_safe_literal_string__carrier_has_arrived______safe___carrier__initiator__PROLOGUE___t0 (theory1_safe var1486_literal_string__carrier_has_arrived___t0) ) ) (declare-fun var1485___carrier__initiator__PROLOGUE__t1 () (_ BitVec 64)) (assert (= var1489_safe_literal_string__carrier_has_arrived______safe___carrier__initiator__PROLOGUE___t0 (theory1_safe var1485___carrier__initiator__PROLOGUE__t1) ) ) (declare-fun var1490_nullterm_literal_string__carrier_has_arrived______nullterm___carrier__initiator__PROLOGUE___t0 () Bool) (assert (= var1490_nullterm_literal_string__carrier_has_arrived______nullterm___carrier__initiator__PROLOGUE___t0 (theory2_nullterm var1486_literal_string__carrier_has_arrived___t0) ) ) (assert (= var1490_nullterm_literal_string__carrier_has_arrived______nullterm___carrier__initiator__PROLOGUE___t0 (theory2_nullterm var1485___carrier__initiator__PROLOGUE__t1) ) ) (declare-fun var1510_len___carrier__initiator__PROLOGUE___t0 () (_ BitVec 64)) (assert (= var1510_len___carrier__initiator__PROLOGUE___t0 (theory0_len var1485___carrier__initiator__PROLOGUE__t1) ) ) (assert (= var1510_len___carrier__initiator__PROLOGUE___t0 (_ bv19 64)) ) ; : ./src/noise.zz:17 ; static u8 zerokey[32] = {0}; ; : ./src/noise.zz:17 ; 32 ; literal expr (declare-fun var1512_literal_32__t0 () (_ BitVec 64)) (assert (= var1512_literal_32__t0 (_ bv32 64)) ) (check-sat) (get-value ( var1512_literal_32__t0 ) ) ; = "#b0000000000000000000000000000000000000000000000000000000000100000" (push 1) (assert (not (= var1512_literal_32__t0 #b0000000000000000000000000000000000000000000000000000000000100000)) ) (check-sat) (pop 1) (push 1) (check-sat) (pop 1) (declare-fun var1511___carrier__noise__zerokey__t0 () (_ BitVec 64)) (declare-fun var1513_len___carrier__noise__zerokey___t0 () (_ BitVec 64)) (assert (= var1513_len___carrier__noise__zerokey___t0 (theory0_len var1511___carrier__noise__zerokey__t0) ) ) (assert (= var1513_len___carrier__noise__zerokey___t0 (_ bv32 64)) ) ; : ./src/noise.zz:17 ; {0} ; : ./src/noise.zz:17 ; 0 ; literal expr (declare-fun var1514_literal_0__t0 () (_ BitVec 64)) (assert (= var1514_literal_0__t0 (_ bv0 64)) ) ; : ./src/noise.zz:17 ; {0} (declare-fun var1515_literal_array_1515__t0 () (_ BitVec 64)) (declare-fun var1516_true__t0 () Bool) (assert (= var1516_true__t0 (theory1_safe var1515_literal_array_1515__t0) ) ) (assert var1516_true__t0 ) ; : ./src/noise.zz:17 ; static u8 zerokey[32] = {0}; (declare-fun var1517_safe_literal_array_1515_____safe___carrier__noise__zerokey___t0 () Bool) (assert (= var1517_safe_literal_array_1515_____safe___carrier__noise__zerokey___t0 (theory1_safe var1515_literal_array_1515__t0) ) ) (declare-fun var1511___carrier__noise__zerokey__t1 () (_ BitVec 64)) (assert (= var1517_safe_literal_array_1515_____safe___carrier__noise__zerokey___t0 (theory1_safe var1511___carrier__noise__zerokey__t1) ) ) (declare-fun var1518_nullterm_literal_array_1515_____nullterm___carrier__noise__zerokey___t0 () Bool) (assert (= var1518_nullterm_literal_array_1515_____nullterm___carrier__noise__zerokey___t0 (theory2_nullterm var1515_literal_array_1515__t0) ) ) (assert (= var1518_nullterm_literal_array_1515_____nullterm___carrier__noise__zerokey___t0 (theory2_nullterm var1511___carrier__noise__zerokey__t1) ) ) (declare-fun var1551_len___carrier__noise__zerokey___t0 () (_ BitVec 64)) (assert (= var1551_len___carrier__noise__zerokey___t0 (theory0_len var1511___carrier__noise__zerokey__t1) ) ) (assert (= var1551_len___carrier__noise__zerokey___t0 (_ bv32 64)) ) ; : ./src/identity.zz:170 ; static uint8_t BASEPOINT [32] = {9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; ; : ./src/identity.zz:170 ; 32 ; literal expr (declare-fun var1553_literal_32__t0 () (_ BitVec 64)) (assert (= var1553_literal_32__t0 (_ bv32 64)) ) (check-sat) (get-value ( var1553_literal_32__t0 ) ) ; = "#b0000000000000000000000000000000000000000000000000000000000100000" (push 1) (assert (not (= var1553_literal_32__t0 #b0000000000000000000000000000000000000000000000000000000000100000)) ) (check-sat) (pop 1) (push 1) (check-sat) (pop 1) (declare-fun var1552___carrier__identity__BASEPOINT__t0 () (_ BitVec 64)) (declare-fun var1554_len___carrier__identity__BASEPOINT___t0 () (_ BitVec 64)) (assert (= var1554_len___carrier__identity__BASEPOINT___t0 (theory0_len var1552___carrier__identity__BASEPOINT__t0) ) ) (assert (= var1554_len___carrier__identity__BASEPOINT___t0 (_ bv32 64)) ) ; : ./src/identity.zz:170 ; {9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0} ; : ./src/identity.zz:170 ; 9 ; literal expr (declare-fun var1555_literal_9__t0 () (_ BitVec 64)) (assert (= var1555_literal_9__t0 (_ bv9 64)) ) ; : ./src/identity.zz:170 ; 0 ; literal expr (declare-fun var1556_literal_0__t0 () (_ BitVec 64)) (assert (= var1556_literal_0__t0 (_ bv0 64)) ) ; : ./src/identity.zz:170 ; 0 ; literal expr (declare-fun var1557_literal_0__t0 () (_ BitVec 64)) (assert (= var1557_literal_0__t0 (_ bv0 64)) ) ; : ./src/identity.zz:170 ; 0 ; literal expr (declare-fun var1558_literal_0__t0 () (_ BitVec 64)) (assert (= var1558_literal_0__t0 (_ bv0 64)) ) ; : ./src/identity.zz:170 ; 0 ; literal expr (declare-fun var1559_literal_0__t0 () (_ BitVec 64)) (assert (= var1559_literal_0__t0 (_ bv0 64)) ) ; : ./src/identity.zz:170 ; 0 ; literal expr (declare-fun var1560_literal_0__t0 () (_ BitVec 64)) (assert (= var1560_literal_0__t0 (_ bv0 64)) ) ; : ./src/identity.zz:170 ; 0 ; literal expr (declare-fun var1561_literal_0__t0 () (_ BitVec 64)) (assert (= var1561_literal_0__t0 (_ bv0 64)) ) ; : ./src/identity.zz:170 ; 0 ; literal expr (declare-fun var1562_literal_0__t0 () (_ BitVec 64)) (assert (= var1562_literal_0__t0 (_ bv0 64)) ) ; : ./src/identity.zz:170 ; 0 ; literal expr (declare-fun var1563_literal_0__t0 () (_ BitVec 64)) (assert (= var1563_literal_0__t0 (_ bv0 64)) ) ; : ./src/identity.zz:170 ; 0 ; literal expr (declare-fun var1564_literal_0__t0 () (_ BitVec 64)) (assert (= var1564_literal_0__t0 (_ bv0 64)) ) ; : ./src/identity.zz:170 ; 0 ; literal expr (declare-fun var1565_literal_0__t0 () (_ BitVec 64)) (assert (= var1565_literal_0__t0 (_ bv0 64)) ) ; : ./src/identity.zz:170 ; 0 ; literal expr (declare-fun var1566_literal_0__t0 () (_ BitVec 64)) (assert (= var1566_literal_0__t0 (_ bv0 64)) ) ; : ./src/identity.zz:170 ; 0 ; literal expr (declare-fun var1567_literal_0__t0 () (_ BitVec 64)) (assert (= var1567_literal_0__t0 (_ bv0 64)) ) ; : ./src/identity.zz:170 ; 0 ; literal expr (declare-fun var1568_literal_0__t0 () (_ BitVec 64)) (assert (= var1568_literal_0__t0 (_ bv0 64)) ) ; : ./src/identity.zz:170 ; 0 ; literal expr (declare-fun var1569_literal_0__t0 () (_ BitVec 64)) (assert (= var1569_literal_0__t0 (_ bv0 64)) ) ; : ./src/identity.zz:170 ; 0 ; literal expr (declare-fun var1570_literal_0__t0 () (_ BitVec 64)) (assert (= var1570_literal_0__t0 (_ bv0 64)) ) ; : ./src/identity.zz:170 ; 0 ; literal expr (declare-fun var1571_literal_0__t0 () (_ BitVec 64)) (assert (= var1571_literal_0__t0 (_ bv0 64)) ) ; : ./src/identity.zz:170 ; 0 ; literal expr (declare-fun var1572_literal_0__t0 () (_ BitVec 64)) (assert (= var1572_literal_0__t0 (_ bv0 64)) ) ; : ./src/identity.zz:170 ; 0 ; literal expr (declare-fun var1573_literal_0__t0 () (_ BitVec 64)) (assert (= var1573_literal_0__t0 (_ bv0 64)) ) ; : ./src/identity.zz:170 ; 0 ; literal expr (declare-fun var1574_literal_0__t0 () (_ BitVec 64)) (assert (= var1574_literal_0__t0 (_ bv0 64)) ) ; : ./src/identity.zz:170 ; 0 ; literal expr (declare-fun var1575_literal_0__t0 () (_ BitVec 64)) (assert (= var1575_literal_0__t0 (_ bv0 64)) ) ; : ./src/identity.zz:170 ; 0 ; literal expr (declare-fun var1576_literal_0__t0 () (_ BitVec 64)) (assert (= var1576_literal_0__t0 (_ bv0 64)) ) ; : ./src/identity.zz:170 ; 0 ; literal expr (declare-fun var1577_literal_0__t0 () (_ BitVec 64)) (assert (= var1577_literal_0__t0 (_ bv0 64)) ) ; : ./src/identity.zz:170 ; 0 ; literal expr (declare-fun var1578_literal_0__t0 () (_ BitVec 64)) (assert (= var1578_literal_0__t0 (_ bv0 64)) ) ; : ./src/identity.zz:170 ; 0 ; literal expr (declare-fun var1579_literal_0__t0 () (_ BitVec 64)) (assert (= var1579_literal_0__t0 (_ bv0 64)) ) ; : ./src/identity.zz:170 ; 0 ; literal expr (declare-fun var1580_literal_0__t0 () (_ BitVec 64)) (assert (= var1580_literal_0__t0 (_ bv0 64)) ) ; : ./src/identity.zz:170 ; 0 ; literal expr (declare-fun var1581_literal_0__t0 () (_ BitVec 64)) (assert (= var1581_literal_0__t0 (_ bv0 64)) ) ; : ./src/identity.zz:170 ; 0 ; literal expr (declare-fun var1582_literal_0__t0 () (_ BitVec 64)) (assert (= var1582_literal_0__t0 (_ bv0 64)) ) ; : ./src/identity.zz:170 ; 0 ; literal expr (declare-fun var1583_literal_0__t0 () (_ BitVec 64)) (assert (= var1583_literal_0__t0 (_ bv0 64)) ) ; : ./src/identity.zz:170 ; 0 ; literal expr (declare-fun var1584_literal_0__t0 () (_ BitVec 64)) (assert (= var1584_literal_0__t0 (_ bv0 64)) ) ; : ./src/identity.zz:170 ; 0 ; literal expr (declare-fun var1585_literal_0__t0 () (_ BitVec 64)) (assert (= var1585_literal_0__t0 (_ bv0 64)) ) ; : ./src/identity.zz:170 ; 0 ; literal expr (declare-fun var1586_literal_0__t0 () (_ BitVec 64)) (assert (= var1586_literal_0__t0 (_ bv0 64)) ) ; : ./src/identity.zz:170 ; {9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0} (declare-fun var1587_literal_array_1587__t0 () (_ BitVec 64)) (declare-fun var1588_true__t0 () Bool) (assert (= var1588_true__t0 (theory1_safe var1587_literal_array_1587__t0) ) ) (assert var1588_true__t0 ) ; : ./src/identity.zz:170 ; static uint8_t BASEPOINT [32] = {9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; (declare-fun var1589_safe_literal_array_1587_____safe___carrier__identity__BASEPOINT___t0 () Bool) (assert (= var1589_safe_literal_array_1587_____safe___carrier__identity__BASEPOINT___t0 (theory1_safe var1587_literal_array_1587__t0) ) ) (declare-fun var1552___carrier__identity__BASEPOINT__t1 () (_ BitVec 64)) (assert (= var1589_safe_literal_array_1587_____safe___carrier__identity__BASEPOINT___t0 (theory1_safe var1552___carrier__identity__BASEPOINT__t1) ) ) (declare-fun var1590_nullterm_literal_array_1587_____nullterm___carrier__identity__BASEPOINT___t0 () Bool) (assert (= var1590_nullterm_literal_array_1587_____nullterm___carrier__identity__BASEPOINT___t0 (theory2_nullterm var1587_literal_array_1587__t0) ) ) (assert (= var1590_nullterm_literal_array_1587_____nullterm___carrier__identity__BASEPOINT___t0 (theory2_nullterm var1552___carrier__identity__BASEPOINT__t1) ) ) (declare-fun var1623_len___carrier__identity__BASEPOINT___t0 () (_ BitVec 64)) (assert (= var1623_len___carrier__identity__BASEPOINT___t0 (theory0_len var1552___carrier__identity__BASEPOINT__t1) ) ) (assert (= var1623_len___carrier__identity__BASEPOINT___t0 (_ bv32 64)) ) ; : ./src/identity.zz:172 ; export fn address_from_secret (Address mut* pk, Secret* sk) { ; x25519::Hacl_Curve25519_crypto_scalarmult(pk->k, (u8 mut*)sk->k, (uint8_t mut*)(BASEPOINT)); ; } (declare-fun var1624___carrier__identity__address_from_secret__t0 () (_ BitVec 64)) (declare-fun var1625_true__t0 () Bool) (assert (= var1625_true__t0 (theory1_safe var1624___carrier__identity__address_from_secret__t0) ) ) (assert var1625_true__t0 ) ; : ./src/identity.zz:176 ; export fn dh(Address mut *out, Secret* me, Address * them) { ; x25519::Hacl_Curve25519_crypto_scalarmult(out->k, (u8 mut *)(me->k), (u8 mut *)(them->k)); ; } (declare-fun var1626___carrier__identity__dh__t0 () (_ BitVec 64)) (declare-fun var1627_true__t0 () Bool) (assert (= var1627_true__t0 (theory1_safe var1626___carrier__identity__dh__t0) ) ) (assert var1627_true__t0 ) ; : ./src/noise.zz:27 ; pub fn initiate( ; Initiator mut *self, ; err::Err+et mut* e, ; u8 mut * mut pkt, ; usize pktlen, ; u8 * prologue, ; usize prologue_len, ; u8 * payload, ; usize payload_len ; ) -> usize ; where err::checked(*e) ; where len(pkt) >= pktlen ; where len(prologue) >= prologue_len ; where len(payload) >= payload_len ; where pktlen > 32 ; where pktlen -32 > payload_len ; model return < pktlen ; { ; usize total_size = 32 + payload_len + 16; ; assert(pktlen >= total_size); ; static_attest(pktlen >= total_size); ; ; if memcmp((self->ephemeral).k, zerokey, 32) == 0 { ; err::fail(e, 2, "ephemeral key is zero"); ; return 0; ; } ; if memcmp((self->remote_static).k, zerokey, 32) == 0 { ; err::fail(e, 2, "remote static is zero"); ; return 0; ; } ; ; symmetric::init(&self->symm, "Noise_NK_25519_ChaChaPoly_SHA256"); ; symmetric::mix_hash(&self->symm, prologue, prologue_len); ; ; // <- s ; symmetric::mix_hash(&self->symm, (self->remote_static).k, 32); ; ; // -> e , ; identity::Address mut ephemeral_address = {0}; ; identity::address_from_secret(&ephemeral_address, &self->ephemeral); ; ; symmetric::mix_hash(&self->symm, ephemeral_address.k, 32); ; memcpy(pkt, ephemeral_address.k, 32); ; ; // , es ; identity::Address mut dh = {0}; ; identity::dh(&dh, &self->ephemeral, &self->remote_static); ; symmetric::mix_key(&self->symm, dh.k, 32); ; ; // payload ; usize rs = symmetric::encrypt_and_mix_hash(&self->symm, e, payload, payload_len, 0, pkt + 32, pktlen - 32); ; if err::check(e) { ; return 0; ; } ; assert(rs + 32 == total_size); ; static_attest(total_size < pktlen); ; return total_size; ; } (declare-fun var1628___carrier__noise__initiate__t0 () (_ BitVec 64)) (declare-fun var1629_true__t0 () Bool) (assert (= var1629_true__t0 (theory1_safe var1628___carrier__noise__initiate__t0) ) ) (assert var1629_true__t0 ) ; : ./src/initiator.zz:21 ; static char SIGN_PURPOSE[] = "carrier handshake hash 1"; ; : ./src/initiator.zz:21 ; "carrier handshake hash 1" (declare-fun var1631_literal_string__carrier_handshake_hash_1___t0 () (_ BitVec 64)) (declare-fun var1632_true__t0 () Bool) (assert (= var1632_true__t0 (theory1_safe var1631_literal_string__carrier_handshake_hash_1___t0) ) ) (assert var1632_true__t0 ) (declare-fun var1633_true__t0 () Bool) (assert (= var1633_true__t0 (theory2_nullterm var1631_literal_string__carrier_handshake_hash_1___t0) ) ) (assert var1633_true__t0 ) ; : ./src/initiator.zz:21 ; static char SIGN_PURPOSE[] = "carrier handshake hash 1"; (declare-fun var1634_safe_literal_string__carrier_handshake_hash_1______safe___carrier__initiator__SIGN_PURPOSE___t0 () Bool) (assert (= var1634_safe_literal_string__carrier_handshake_hash_1______safe___carrier__initiator__SIGN_PURPOSE___t0 (theory1_safe var1631_literal_string__carrier_handshake_hash_1___t0) ) ) (declare-fun var1630___carrier__initiator__SIGN_PURPOSE__t1 () (_ BitVec 64)) (assert (= var1634_safe_literal_string__carrier_handshake_hash_1______safe___carrier__initiator__SIGN_PURPOSE___t0 (theory1_safe var1630___carrier__initiator__SIGN_PURPOSE__t1) ) ) (declare-fun var1635_nullterm_literal_string__carrier_handshake_hash_1______nullterm___carrier__initiator__SIGN_PURPOSE___t0 () Bool) (assert (= var1635_nullterm_literal_string__carrier_handshake_hash_1______nullterm___carrier__initiator__SIGN_PURPOSE___t0 (theory2_nullterm var1631_literal_string__carrier_handshake_hash_1___t0) ) ) (assert (= var1635_nullterm_literal_string__carrier_handshake_hash_1______nullterm___carrier__initiator__SIGN_PURPOSE___t0 (theory2_nullterm var1630___carrier__initiator__SIGN_PURPOSE__t1) ) ) (declare-fun var1660_len___carrier__initiator__SIGN_PURPOSE___t0 () (_ BitVec 64)) (assert (= var1660_len___carrier__initiator__SIGN_PURPOSE___t0 (theory0_len var1630___carrier__initiator__SIGN_PURPOSE__t1) ) ) (assert (= var1660_len___carrier__initiator__SIGN_PURPOSE___t0 (_ bv24 64)) ) ; : ./src/identity.zz:17 ; Signature ; : ./src/identity.zz:180 ; export fn sign(Secret *key, Signature mut *s, u8 * subject, usize subject_len) { ; ed25519::Hacl_Ed25519_sign(s->k, (u8 mut* )key->k, (u8 mut* )subject, subject_len); ; } (declare-fun var1662___carrier__identity__sign__t0 () (_ BitVec 64)) (declare-fun var1663_true__t0 () Bool) (assert (= var1663_true__t0 (theory1_safe var1662___carrier__identity__sign__t0) ) ) (assert var1663_true__t0 ) ; : ./src/initiator.zz:30 ; pub fn initiate( ; Initiator mut* self, ; err::Err+et mut* e, ; identity::Secret *secret, ; identity::Address * xaddr, ; u64 network_time, ; ) ; where err::checked(*e) ; { ; memset(self, 0, sizeof(Initiator)); ; ; identity::Identity mut eid = {0}; ; identity::identity_from_secret(&eid, secret); ; ; std::memcpy(((self->noise).remote_static).k, xaddr->k, 32); ; ; identity::secret_generate(e, &(self->noise).ephemeral); ; if err::check(e) { ; return ; ; } ; ; ; // encrypted header ; u8 mut plaintext[512] = {0}; ; usize mut plaintext_len = 0; ; plaintext_len += 2; ; ; memcpy(plaintext + plaintext_len, eid.k, 32); ; plaintext_len += 32; ; ; u64 network_time_be = byteorder::to_be64(network_time); ; memcpy(plaintext + plaintext_len, &network_time_be, 8); ; plaintext_len += 8; ; ; u32 revision_be = byteorder::to_be32(carrier::REVISION); ; memcpy(plaintext + plaintext_len, &revision_be, 4); ; plaintext_len += 4; ; ; // move target 32B ; //std::memcpy(body + at, eid.k, 32); ; //at += 32; ; ; // padding expected ciphertext size to nearest 64 byte before authentication tag ; plaintext_len += 64 - ((plaintext_len - 16) % 64); ; ; ; //printf("plaintext len %zu\n", plaintext_len); ; ; self->pkt.len = 0; ; // version 1B ; (self->pkt.mem)[0] = 9; ; // reserved 3B ; // route 8B ; // counter 8B ; self->pkt.len += 4 + 8 + 8; ; ; // does this even do anything? the initiation header should actually be always the same ; plaintext[0] = crc8::broken_crc8(0, (u8*)self->pkt.mem, self->pkt.len); ; ; u8 mut* pp = (u8 mut*)self->pkt.mem + self->pkt.len; ; usize pplen = static(len(self->pkt.mem)) - self->pkt.len; ; static_attest(safe(pp)); ; static_attest(len(pp) >= pplen); ; ; usize prologue_len = (usize)strlen(PROLOGUE); ; static_attest(prologue_len < len((u8*)PROLOGUE)); ; ; ; //printf("plaintext:\n"); ; //hex::dump(plaintext, plaintext_len); ; ; self->pkt.len += noise::initiate( ; &self->noise, e, ; pp, pplen, ; (u8*)PROLOGUE, prologue_len, ; plaintext, plaintext_len ; ); ; ; if err::check(e) { ; return; ; } ; ; //printf("ciphertext len %zu\n", self->pkt.len - 4 - 8 - 8); ; assert((self->pkt.len - 4 - 8 - 8) % 64 == 0); ; ; ; //printf("handshake hash:\n"); ; //hex::dump(((self->noise).symm).h, static(len(((self->noise).symm).h))); ; ; //printf("identity:\n"); ; //hex::dump(eid.k, 32); ; ; //sign handshake hash ; u8 mut signme[static(len(SIGN_PURPOSE)) + static(len(((self->noise).symm).h))] = {0}; ; std::memcpy(signme, SIGN_PURPOSE, string::strlen(SIGN_PURPOSE)); ; u8 mut * mem = signme + string::strlen(SIGN_PURPOSE); ; ; std::memcpy(mem, ((self->noise).symm).h, static(len(((self->noise).symm).h))); ; ; ; identity::Signature mut*sig= (identity::Signature mut*)(self->pkt.mem + self->pkt.len); ; static_attest(safe(sig)); ; identity::sign(secret, sig, signme, static(len(signme))); ; self->pkt.len += 64; ; ; //printf("packet len %zu\n", self->pkt.len); ; //static_attest(len(self->pkt.mem) >= self->pkt.len); ; //hex::dump((u8*)self->pkt.mem, self->pkt.len); ; } (declare-fun var1664___carrier__initiator__initiate__t0 () (_ BitVec 64)) (declare-fun var1665_true__t0 () Bool) (assert (= var1665_true__t0 (theory1_safe var1664___carrier__initiator__initiate__t0) ) ) (assert var1665_true__t0 ) ; : ./src/router.zz:17 ; Direction (declare-fun var1667___carrier__router__Direction__Initiator2Responder__t0 () (_ BitVec 64)) (assert (= var1667___carrier__router__Direction__Initiator2Responder__t0 (_ bv0 64)) ) (declare-fun var1668___carrier__router__Direction__Responder2Initiator__t0 () (_ BitVec 64)) (assert (= var1668___carrier__router__Direction__Responder2Initiator__t0 (_ bv1 64)) ) ; : ./src/router.zz:128 ; pub fn read_routing_key( u8 * i, Direction mut * unsafe direction) -> u64 ; where len(i) >= 8 ; { ; if direction != 0 { ; static_attest(safe(direction)); ; if (i[7] & 0b00000001) == 0 { ; *direction = Direction::Initiator2Responder; ; } else { ; *direction = Direction::Responder2Initiator; ; } ; } ; unsafe { ; u8 b[8] = { ; i[0], ; i[1], ; i[2], ; i[3], ; i[4], ; i[5], ; i[6], ; (i[7] & 0b11111110), ; }; ; return *((u64*)b); ; } ; } (declare-fun var1669___carrier__router__read_routing_key__t0 () (_ BitVec 64)) (declare-fun var1670_true__t0 () Bool) (assert (= var1670_true__t0 (theory1_safe var1669___carrier__router__read_routing_key__t0) ) ) (assert var1670_true__t0 ) ; : ./src/noise.zz:196 ; pub fn complete( ; Initiator mut* self, ; err::Err+et mut* e, ; u8 mut* mut payload, ; usize payload_len, ; u8 * packet, ; usize packet_len ; ) -> usize ; where err::checked(*e) ; where err::checked(*e) ; where len(packet) >= packet_len ; where len(payload) >= payload_len ; where len(packet) > 32 ; model len(packet) >= return ; model len(payload) >= return ; { ; assert(memcmp((self->ephemeral).k, zerokey, 32) != 0); ; ; if packet_len < 32 + 16 { ; err::fail(e, 9, "in buffer underflow"); ; return 0; ; } ; if payload_len < packet_len - 16 { ; err::fail(e, 9, "out buffer overflow "); ; return 0; ; } ; ; ; // <- e , ; memcpy((self->remote_ephemeral).k, packet, 32); ; symmetric::mix_hash(&self->symm, (self->remote_ephemeral).k, 32); ; ; // , es ; identity::Address mut dh = {0}; ; identity::dh(&dh, &self->ephemeral, &self->remote_ephemeral); ; symmetric::mix_key(&self->symm, dh.k, 32); ; ; ; usize packet_rest = packet_len - 32; ; usize rs = symmetric::decrypt_and_mix_hash(&self->symm, e, packet + 32, packet_rest, 0, payload, payload_len); ; if err::check(e) { ; return 0; ; } ; assert(rs == packet_len - 32 - 16); ; ; return packet_len - 32 - 16; ; } (declare-fun var1671___carrier__noise__complete__t0 () (_ BitVec 64)) (declare-fun var1672_true__t0 () Bool) (assert (= var1672_true__t0 (theory1_safe var1671___carrier__noise__complete__t0) ) ) (assert var1672_true__t0 ) ; : ./src/identity.zz:184 ; export fn verify(Identity *pk, Signature *s, u8 * subject, usize subject_len) -> bool{ ; return (bool)ed25519::Hacl_Ed25519_verify((u8 mut* )pk->k, (u8 mut*)subject, subject_len, (u8 mut* )s->k); ; } (declare-fun var1673___carrier__identity__verify__t0 () (_ BitVec 64)) (declare-fun var1674_true__t0 () Bool) (assert (= var1674_true__t0 (theory1_safe var1673___carrier__identity__verify__t0) ) ) (assert var1674_true__t0 ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:21 ; export fn new() -> Address { ; return Address { ; type: Type::Invalid, ; }; ; } (declare-fun var1675___net__address__new__t0 () (_ BitVec 64)) (declare-fun var1676_true__t0 () Bool) (assert (= var1676_true__t0 (theory1_safe var1675___net__address__new__t0) ) ) (assert var1676_true__t0 ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:45 ; export fn from_str(char * mut s, usize mut slen) -> Address ; where len(s) >= slen ; { ; Address mut self = new(); ; if slen < 2 { ; return self; ; } ; ; if s[0] == '[' { ; s = s + 1; ; slen -= 1; ; static_attest(safe(s)); ; static_attest(len(s) >= slen); ; from_str_ipv6(&self, s, slen); ; return self; ; } ; from_str_ipv4(&self, s, slen) || from_str_ipv6(&self, s, slen); ; return self; ; } (declare-fun var1677___net__address__from_str__t0 () (_ BitVec 64)) (declare-fun var1678_true__t0 () Bool) (assert (= var1678_true__t0 (theory1_safe var1677___net__address__from_str__t0) ) ) (assert var1678_true__t0 ) ; : ./src/identity.zz:19 ; fn from_str(usize size, err::Err+et mut* e, u8 mut* to, char* from, usize l, u8 expect_type) ; where l <= len(from) ; where size == 64 || size == 32 ; where err::checked(*e) ; { ; u8 mut b[64 + 3] = {0}; ; usize mut bs = size + 3; ; if !as(b58::b58tobin(b, &bs, from, l)) { ; err::fail(e, 22, "invalid bs58"); ; return; ; } ; static_attest(err::checked(*e)); ; ; if (b[0] != 8 && b[0] != 9) { ; err::fail(e, 22, "invalid version %d", b[0]); ; return; ; } ; static_attest(err::checked(*e)); ; ; ; usize s2 = size + 2; ; ; u8 mut crc = 0; ; if b[0] == 8 { ; crc = crc8::broken_crc8(0, b, s2); ; } else { ; crc = crc8::crc8(0, b, s2); ; } ; ; if (crc != b[s2]) { ; err::fail(e, 22, "invalid checksum. %d != %d\n", b[34], crc); ; return; ; } ; static_attest(err::checked(*e)); ; ; if (b[1] != expect_type) { ; err::fail(e, 22, "expected identity type %d got %d\n", expect_type, b[1]); ; return; ; } ; ; memcpy(to, b + 2, size); ; } (declare-fun var1679___carrier__identity__from_str__t0 () (_ BitVec 64)) (declare-fun var1680_true__t0 () Bool) (assert (= var1680_true__t0 (theory1_safe var1679___carrier__identity__from_str__t0) ) ) (assert var1680_true__t0 ) ; : ./src/identity.zz:108 ; export fn address_from_str (err::Err+et mut* e, Address mut* to, char* from, usize l) ; where err::checked(*e) ; where l <= len(from) ; { ; from_str(32, e, to->k, from, l, 6); ; } (declare-fun var1681___carrier__identity__address_from_str__t0 () (_ BitVec 64)) (declare-fun var1682_true__t0 () Bool) (assert (= var1682_true__t0 (theory1_safe var1681___carrier__identity__address_from_str__t0) ) ) (assert var1682_true__t0 ) ; : ./src/bootstrap.zz:354 ; pub fn parse_record(string::String+st * record, Broker mut *entry) -> bool { ; err::Err+1 mut e; ; err::new(&e); ; ; bool mut has_netaddr = false; ; bool mut has_xaddr = false; ; ; usize mut it = 0; ; string::String+256 mut part = {0}; ; string::clear(&part); ; while (string::split(record, ' ', &it, &part)) { ; if string::starts_with_cstr(&part, "n=") { ; char *from = part.mem + 2; ; usize fromlen = part.len - 2; ; static_attest(safe(from)); ; static_attest(len(from) >= fromlen); ; ; address::Address mut a = address::from_str(from, fromlen); ; if a.valid() { ; memcpy(entry->ip4addr, address::get_ip(&a), 4); ; has_netaddr = true; ; } ; } else if string::starts_with_cstr(&part, "n6=") { ; char *from = part.mem + 3; ; usize fromlen = part.len - 3; ; static_attest(safe(from)); ; static_attest(len(from) >= fromlen); ; ; address::Address mut a = address::from_str(from, fromlen); ; if a.valid() { ; memcpy(entry->ip6addr, address::get_ip(&a), 16); ; has_netaddr = true; ; } ; } else if string::starts_with_cstr(&part, "x=") { ; char *from = part.mem + 2; ; usize fromlen = part.len - 2; ; static_attest(safe(from)); ; static_attest(fromlen <= len(from)); ; ; identity::Address mut addr = {0}; ; identity::address_from_str (&e, &addr, from, fromlen); ; if !err::check(&e) { ; memcpy(entry->xaddr, addr.k, sizeof(entry->xaddr)); ; has_xaddr = true; ; } ; err::new(&e); ; } else if string::starts_with_cstr(&part, "carrier=") { ; char *from = part.mem + 8; ; usize fromlen = part.len - 8; ; static_attest(safe(from)); ; static_attest(fromlen == len(from)); ; ; string::String+20 mut bb = {0}; ; string::append_bytes(&bb, (u8*)from, fromlen); ; ; entry->protocol = (u8)atoi(bb.mem); ; } else if string::starts_with_cstr(&part, "c=") { ; char *from = part.mem + 2; ; usize fromlen = part.len - 2; ; static_attest(safe(from)); ; static_attest(fromlen == len(from)); ; ; string::String+20 mut bb = {0}; ; string::append_bytes(&bb, (u8*)from, fromlen); ; ; entry->protocol = (u8)atoi(bb.mem); ; } ; ; string::clear(&part); ; } ; ; return has_netaddr && has_xaddr && entry->protocol != 0; ; } (declare-fun var1683___carrier__bootstrap__parse_record__t0 () (_ BitVec 64)) (declare-fun var1684_true__t0 () Bool) (assert (= var1684_true__t0 (theory1_safe var1683___carrier__bootstrap__parse_record__t0) ) ) (assert var1684_true__t0 ) ; : ./src/channel.zz:112 ; pub fn from_symmetric(symmetric::SymmetricState * symm, u64 route, bool responder) -> Channel { ; Channel mut c = Channel{ ; route: route, ; responder: responder, ; }; ; ; if responder { ; symmetric::split(symm, &c.c_them, &c.c_mine); ; } else { ; symmetric::split(symm, &c.c_mine, &c.c_them); ; } ; ; c.counter_out = 1; ; ; // why was this 1?! ; c.outgoing_acks_at = 0; ; ; return c; ; } (declare-fun var1685___carrier__channel__from_symmetric__t0 () (_ BitVec 64)) (declare-fun var1686_true__t0 () Bool) (assert (= var1686_true__t0 (theory1_safe var1685___carrier__channel__from_symmetric__t0) ) ) (assert var1686_true__t0 ) ; : ./src/initiator.zz:141 ; pub fn complete ( ; Initiator mut* self, ; err::Err+et mut* e, ; ; channel::Channel mut* broker_chan, ; bootstrap::Broker mut* redirect, ; ) ; where err::checked(*e) ; { ; //printf("completing with %zu\n", self->pkt.len); ; //static_attest(len(self->pkt.mem) > self->pkt.len); ; //hex::dump((u8*)self->pkt.mem, self->pkt.len); ; ; if self->pkt.len < 4 + 8 + 8 + 32 + 16 + 64 { ; err::fail(e, 1, "too small"); ; return; ; } ; ; // version 1B ; if (self->pkt.mem)[0] != 9 { ; err::fail(e, 1, "invalid version"); ; return; ; } ; // reserved 3B ; // route 8B ; u8 *rkeymem = (u8*)self->pkt.mem + 4; ; static_attest(safe(rkeymem)); ; static_attest(len(rkeymem) > 8); ; u64 route = router::read_routing_key(rkeymem, 0); ; // counter 8B ; u64 counter = byteorder::from_be64(*&(self->pkt.mem)[12]); ; //printf("<> counter %lu\n", counter); ; usize mut at = 4 + 8 + 8; ; ; ; u8 mut *ciphertext = (u8 mut*)self->pkt.mem + at; ; usize ciphertext_len = self->pkt.len - at - 64; ; static_attest(safe(ciphertext)); ; static_attest(len(ciphertext) >= ciphertext_len); ; ; u8 mut cleartext[1024] = {0}; ; ; usize cleartext_len = noise::complete( ; &self->noise, ; e, ; cleartext, ; static(len(cleartext)), ; ciphertext, ; ciphertext_len ; ); ; ; if err::check(e) { ; return; ; } ; ; //printf("received cleartext:\n"); ; //hex::dump(cleartext, cleartext_len); ; ; if cleartext_len < 32 + 2 + 8 + 4 { ; err::fail(e, 1, "too small"); ; return; ; } ; ; // flags ; bool flag_mov = (cleartext[1] & 0b01000000) != 0; ; u8 * mut pp = cleartext + 2; ; ; // remote identity ; identity::Identity mut r_identity = {0}; ; static_attest(safe(pp)); ; static_attest(len(pp) >= 32); ; std::memcpy(r_identity.k, pp, 32); ; ; pp = pp + 32; ; ; // timestamp ; u64 mut timestamp = 0; ; unsafe { ; timestamp = *(u64*)pp; ; } ; pp = pp + 8; ; ; ; //check handshake signature ; u8 mut signme[static(len(SIGN_PURPOSE)) + static(len(((self->noise).symm).h))] = {0}; ; std::memcpy(signme, SIGN_PURPOSE, string::strlen(SIGN_PURPOSE)); ; u8 mut* mem = signme + string::strlen(SIGN_PURPOSE); ; std::memcpy(mem, ((self->noise).symm).h, static(len(((self->noise).symm).h))); ; identity::Signature mut * mut sig; ; unsafe { ; sig = (identity::Signature mut *)(self->pkt.mem + self->pkt.len - 64); ; } ; static_attest(safe(sig)); ; if !identity::verify(&r_identity, sig, signme, static(len(signme))) { ; err::fail(e, 1, "invalid signature"); ; return; ; } ; ; char mut r_identity_str[128] = {0}; ; identity::identity_to_str(e, r_identity_str, static(len(r_identity_str)), &r_identity); ; if err::check(e) { ; return; ; } ; ; // parse the rest of the cleartext, after signature passed ; ; ; // move instructions ; if flag_mov { ; u16 mut instruction_len = 0; ; unsafe { ; instruction_len = byteorder::from_be64(*(u64*)pp); ; } ; pp = pp + 8; ; ; string::String+300 mut movinstr = {0}; ; string::append_bytes(&movinstr, pp, (usize)instruction_len); ; ; if bootstrap::parse_record(&movinstr, redirect) { ; //log::debug("cluster move %.*s", (int)movinstr.len, movinstr.mem); ; return; ; } ; } ; ; ; log::info("connected to broker %s", r_identity_str); ; *broker_chan = channel::from_symmetric( ; &self->noise.symm, ; route, ; false); ; } (declare-fun var1687___carrier__initiator__complete__t0 () (_ BitVec 64)) (declare-fun var1688_true__t0 () Bool) (assert (= var1688_true__t0 (theory1_safe var1687___carrier__initiator__complete__t0) ) ) (assert var1688_true__t0 ) ; : ./src/router.zz:22 ; Router ; : ./src/endpoint.zz:41 ; StateM ; : ./src/bootstrap.zz:96 ; export fn close(Bootstrap mut * self) { ; self->sock4.close(); ; self->sock6.close(); ; } (declare-fun var1691___carrier__bootstrap__close__t0 () (_ BitVec 64)) (declare-fun var1692_true__t0 () Bool) (assert (= var1692_true__t0 (theory1_safe var1691___carrier__bootstrap__close__t0) ) ) (assert var1692_true__t0 ) ; : /home/aep/proj/zz/modules/time/./src/lib.zz:13 ; Time ; : /home/aep/proj/zz/modules/io/./src/lib.zz:204 ; export fntype make_timeout_fn(Async *async, err::Err+et mut*e, time::Time t2) -> Io; ; : /home/aep/proj/zz/modules/time/./src/lib.zz:32 ; export fn to_seconds(Time *self) -> u64 { ; return self->secs; ; } (declare-fun var1695___time__to_seconds__t0 () (_ BitVec 64)) (declare-fun var1696_true__t0 () Bool) (assert (= var1696_true__t0 (theory1_safe var1695___time__to_seconds__t0) ) ) (assert var1696_true__t0 ) ; : /home/aep/proj/zz/modules/time/./src/lib.zz:36 ; export fn to_millis(Time *self) -> u64 { ; if self->secs > (u64)UINT64_MAX/1000 { ; return (u64)UINT64_MAX; ; } ; u64 mut r = self->secs * 1000; ; if r + (self->nano / 1000000) < r { ; return (u64)UINT64_MAX; ; } ; r += self->nano / 1000000; ; return r; ; } (declare-fun var1697___time__to_millis__t0 () (_ BitVec 64)) (declare-fun var1698_true__t0 () Bool) (assert (= var1698_true__t0 (theory1_safe var1697___time__to_millis__t0) ) ) (assert var1698_true__t0 ) ; : /home/aep/proj/zz/modules/time/./src/lib.zz:57 ; export fn more_than(Time *self, Time *other) -> bool { ; ; if !self->finite { ; if !other->finite { ; return false; ; } else { ; return true; ; } ; } ; ; if self->secs == other->secs { ; if self->nano > other->nano { ; return true; ; } ; return false; ; } else if self->secs > other->secs { ; return true; ; } ; return false; ; } (declare-fun var1699___time__more_than__t0 () (_ BitVec 64)) (declare-fun var1700_true__t0 () Bool) (assert (= var1700_true__t0 (theory1_safe var1699___time__more_than__t0) ) ) (assert var1700_true__t0 ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:206 ; export fn timeout(Async mut* this, err::Err+et mut*e, time::Time t2) -> Io ; where err::checked(*e) ; { ; if this->make_timeout != 0 { ; make_timeout_fn make_timeout = (make_timeout_fn)this->make_timeout; ; static_attest(safe(make_timeout)); ; return make_timeout(this, e, t2); ; } ; return Io{ ; read_impl: 0, ; }; ; } (declare-fun var1701___io__timeout__t0 () (_ BitVec 64)) (declare-fun var1702_true__t0 () Bool) (assert (= var1702_true__t0 (theory1_safe var1701___io__timeout__t0) ) ) (assert var1702_true__t0 ) ; : /home/aep/proj/zz/modules/time/./src/lib.zz:25 ; export fn from_seconds(u64 secs) -> Time { ; return Time { ; secs: secs, ; finite: true, ; }; ; } (declare-fun var1703___time__from_seconds__t0 () (_ BitVec 64)) (declare-fun var1704_true__t0 () Bool) (assert (= var1704_true__t0 (theory1_safe var1703___time__from_seconds__t0) ) ) (assert var1704_true__t0 ) ; : ./src/bootstrap.zz:167 ; DnsPacket ; : ./src/bootstrap.zz:176 ; fn send_query( ; err::Err+et mut *e, ; string::String+st *name, ; udp::Socket mut*sock, ; address::Address *dns_server ; ) ; where err::checked(*e) ; { ; ; /* ; { ; string::String+100 mut dbg = {0}; ; dns_server->to_string(&dbg); ; printf("sending to %.*s\n", dbg.len, dbg.mem); ; } ; */ ; ; string::String+1000 mut pkt = {0}; ; ; DnsPacket mut *head = (DnsPacket mut *)pkt.mem; ; ; head->id = byteorder::to_be16(0x1337); ; head->flags = byteorder::to_be16(0x100); //request recursion ; head->queries = byteorder::to_be16(1); ; head->answers = 0; ; head->authorities = 0; ; head->additionals = byteorder::to_be16(1); ; ; pkt.len += as(sizeof(DnsPacket)); ; ; usize mut it = 0; ; string::String+256 mut part = {0}; ; string::clear(&part); ; while (string::split(name, '.', &it, &part)) { ; if part.len >= 255 || (string::space(&part) < (1 + part.len)) { ; err::fail(e, 22, "name too long"); ; return; ; } ; pkt.push((char)part.len); ; pkt.append(&part); ; part.clear(); ; } ; static_attest(err::checked(*e)); ; ; ; u8 end[] = { ; 0, //end of labels ; 0, //16bit padding ; 0x10, //request TXT ; 0, //16bit padding ; 1, //inet class ; // opt ; 0, // root ; 0, 0x29, // type OPT ; 0x03, 0xe8, // 1000 bytes max response size ; 0, // dunno ; 0, // some other stuff ; 0, 0, // security flags i thing ; 0, 0, // no more data ; ; }; ; string::append_bytes(&pkt, end, static(len(end))); ; ; static_attest(len(pkt.mem) >= pkt.len); ; ; udp::sendto(sock, e, &pkt, dns_server); ; //e->abort(); ; // don't care if send failed ; err::new(e); ; } (declare-fun var1706___carrier__bootstrap__send_query__t0 () (_ BitVec 64)) (declare-fun var1707_true__t0 () Bool) (assert (= var1707_true__t0 (theory1_safe var1706___carrier__bootstrap__send_query__t0) ) ) (assert var1707_true__t0 ) ; : ./src/bootstrap.zz:27 ; Store ; : ./src/bootstrap.zz:247 ; pub fn parse_query(string::String+t *pkt, Store mut*store) -> bool ; { ; static_attest(len(pkt->mem) >= pkt->len); ; ; if pkt->len < as(sizeof(DnsPacket)) { ; return false; ; } ; ; DnsPacket mut *head = (DnsPacket mut *)pkt->mem; ; usize answers = (usize)byteorder::from_be16(head->answers); ; usize queries = (usize)byteorder::from_be16(head->queries); ; ; if answers < 1 { ; return false; ; } ; ; usize mut at = as(sizeof(DnsPacket)); ; ; // skip the query sections ; for (usize mut i = 0; i < queries; i++) { ; while at < pkt->len - 1 { ; static_attest(at < len(pkt->mem)); ; // find end of labels ; if (pkt->mem)[at] == 0 { ; // from here the section is 5 more bytes long ; at += 5; ; break; ; } ; at += 1; ; } ; } ; ; ; usize mut storepos = 0; ; ; for (usize mut i = 0; i < answers; i++) { ; // find start of answer header ; while at < pkt->len - 1 { ; static_attest(at < len(pkt->mem)); ; if (pkt->mem)[at] == 0 { ; break; ; } ; if as((pkt->mem)[at]) == 0xc0 { ; at += 1; ; break; ; } ; at += 1; ; } ; at += 1; ; ; if at + 2 >= pkt->len { ; break; ; } ; static_attest(at < len(pkt->mem)); ; ; u16 record_type = byteorder::from_be16(*as(&(pkt->mem)[at])); ; at += 2; ; ; if at + 6 >= pkt->len { ; break; ; } ; static_attest(at < len(pkt->mem)); ; u16 record_class = byteorder::from_be16(*as(&(pkt->mem)[at])); ; at += 6; ; ; if at + 2 >= pkt->len { ; break; ; } ; static_attest(at < len(pkt->mem)); ; u16 record_len = byteorder::from_be16(*as(&(pkt->mem)[at])); ; at += 2; ; ; if at + (usize)record_len + 1 >= pkt->len { ; break; ; } ; static_attest(at + 1 < len(pkt->mem)); ; ; if record_type == 0x10 && record_class == 0x01 { ; string::String+200 mut record ={0}; ; ; u8 *rm = (u8*)pkt->mem; ; static_attest(at + 1 < len(rm)); ; u8 * record_b = rm + (at + 1); ; static_attest(len(record_b) == (usize)record_len - 1); ; static_attest(safe(record_b)); ; string::append_bytes(&record, record_b, (usize)record_len - 1); ; ; bool parseok = parse_record(&record, store->broker + storepos); ; static_attest(storepos < len(store->broker)); ; if ((store->broker)[storepos]).protocol >0 && parseok { ; storepos += 1; ; if storepos > MAX_BROKERS { ; return true; ; } ; } else { ; static_attest(storepos < len(store->broker)); ; memset(&(store->broker)[storepos], 0, sizeof(Broker)); ; } ; ; } ; at += (usize)record_len; ; } ; ; return storepos != 0; ; } (declare-fun var1709___carrier__bootstrap__parse_query__t0 () (_ BitVec 64)) (declare-fun var1710_true__t0 () Bool) (assert (= var1710_true__t0 (theory1_safe var1709___carrier__bootstrap__parse_query__t0) ) ) (assert var1710_true__t0 ) ; : ./src/bootstrap.zz:45 ; export fn broker_count(Store * self) -> usize { ; usize mut c = 0; ; for (usize mut i = 0; i < MAX_BROKERS; i++) { ; if self->broker[i].protocol != 0 { ; c++; ; } ; } ; return c; ; } (declare-fun var1711___carrier__bootstrap__broker_count__t0 () (_ BitVec 64)) (declare-fun var1712_true__t0 () Bool) (assert (= var1712_true__t0 (theory1_safe var1711___carrier__bootstrap__broker_count__t0) ) ) (assert var1712_true__t0 ) ; : ./src/bootstrap.zz:101 ; export fn next(Bootstrap mut * self, err::Err+et mut * e, io::Async mut* async, Store mut* store) -> io::Result ; where err::checked(*e) ; { ; string::String+1500 mut xbuf = {0}; ; ; static_attest(self->dns_servers_count < len(self->dns_servers)); ; ; string::String+10 mut tb = {0}; ; if !(self->retry_timer).valid() || (self->retry_timer).read(e, &tb) == io::Result::Ready { ; if err::check(e) { ; return io::Result::Error; ; } ; ; (self->retry_timer).close(); ; self->retry_timer = io::timeout(async, e, time::from_seconds(1)); ; if err::check(e) { ; return io::Result::Error; ; } ; async->select(e, &self->retry_timer, io::Ready::Read); ; if err::check(e) { ; return io::Result::Error; ; } ; ; string::append_cstr(&xbuf, "4.carrier.devguard.io"); ; for (usize mut i = 0; i < self->dns_servers_count; i++) { ; switch self->dns_servers[i].type { ; address::Type::Invalid => { ; ; } ; address::Type::Ipv4 => { ; send_query(e, &xbuf, &self->sock4, self->dns_servers + i); ; } ; address::Type::Ipv6 => { ; send_query(e, &xbuf, &self->sock6, self->dns_servers + i); ; } ; } ; if err::check(e) { ; return io::Result::Error; ; } ; } ; } ; ; xbuf.clear(); ; address::Address mut from = address::new(); ; if (self->sock6).recvfrom(e, &xbuf, &from) == io::Result::Ready { ; if parse_query(&xbuf, store) { ; return io::Result::Ready; ; } ; } ; if err::check(e) { ; return io::Result::Error; ; } ; ; xbuf.clear(); ; if (self->sock4).recvfrom(e, &xbuf, &from) == io::Result::Ready { ; if parse_query(&xbuf, store) { ; return io::Result::Ready; ; } ; } ; if err::check(e) { ; return io::Result::Error; ; } ; ; return io::Result::Later; ; } (declare-fun var1713___carrier__bootstrap__next__t0 () (_ BitVec 64)) (declare-fun var1714_true__t0 () Bool) (assert (= var1714_true__t0 (theory1_safe var1713___carrier__bootstrap__next__t0) ) ) (assert var1714_true__t0 ) ; : ./src/router.zz:39 ; pub fn close(Router mut* self) ; { ; self->udp4.close(); ; self->udp6.close(); ; } (declare-fun var1715___carrier__router__close__t0 () (_ BitVec 64)) (declare-fun var1716_true__t0 () Bool) (assert (= var1716_true__t0 (theory1_safe var1715___carrier__router__close__t0) ) ) (assert var1716_true__t0 ) ; : ./src/router.zz:45 ; pub fn poll(Router mut*self, err::Err+et mut*e) -> io::Result ; where err::checked(*e) ; { ; address::Address mut fromaddr = {0}; ; self->pkt.clear(); ; if self->udp4.recvfrom(e, &self->pkt, &fromaddr) == io::Result::Ready { ; err::new(e); ; self->push(e); ; } ; if err::check(e) { ; e->eprint(); ; e->new(); ; } ; ; if self->broker.pull(e, &self->pkt) { ; //log::debug("sending pkt to broker"); ; //hex::dump((u8*)self->pkt.mem, self->pkt.len); ; if err::check(e) { return io::Result::Error; } ; for (usize mut i = 0; i < static(len(self->broker.peering.paths)); i++) { ; if self->broker.peering.paths[i].active { ; switch self->broker.peering.paths[i].addr.type { ; address::Type::Invalid => { ; } ; address::Type::Ipv4 => { ; self->udp4.sendto(e, &self->pkt, &self->broker.peering.paths[i].addr); ; } ; address::Type::Ipv6 => { ; self->udp6.sendto(e, &self->pkt, &self->broker.peering.paths[i].addr); ; } ; } ; } ; } ; } ; ; if err::check(e) { ; return io::Result::Error; ; } ; ; return io::Result::Later; ; } (declare-fun var1717___carrier__router__poll__t0 () (_ BitVec 64)) (declare-fun var1718_true__t0 () Bool) (assert (= var1718_true__t0 (theory1_safe var1717___carrier__router__poll__t0) ) ) (assert var1718_true__t0 ) ; : ./src/router.zz:86 ; pub fn push(Router mut* self, err::Err+et mut* e) ; where err::checked(*e) ; { ; if self->pkt.len < 4 + 8 + 8 + 16 { ; err::fail(e, 1, "too small"); ; return; ; } ; ; // version 1B ; if (self->pkt.mem)[0] != 9 { ; err::fail(e, 1, "invalid version"); ; return; ; } ; // reserved 3B ; // route 8B ; u8 *rkeymem = (u8*)self->pkt.mem + 4; ; static_attest(safe(rkeymem)); ; static_attest(len(rkeymem) > 8); ; u64 routingkey = read_routing_key(rkeymem, 0); ; // counter 8B ; u64 counter = byteorder::from_be64(*(u64*)&(self->pkt.mem)[12]); ; ; ; log::info("incomming pkt. size: %zu, counter: %zu, route: %zu", (self->pkt).len, counter, routingkey); ; ; usize mut at = 4 + 8 + 8; ; ; u8 mut * ciphertext = (u8 mut*)self->pkt.mem + at; ; usize ciphertext_len = self->pkt.len - at; ; static_attest(safe(ciphertext)); ; static_attest(len(ciphertext) >= ciphertext_len); ; ; if ciphertext_len <= 16 { ; err::fail(e, 1, "too small"); ; return; ; } ; ; if routingkey == (self->broker).route { ; channel::push(&(self->broker), e, ciphertext, ciphertext_len, counter); ; } ; } (declare-fun var1719___carrier__router__push__t0 () (_ BitVec 64)) (declare-fun var1720_true__t0 () Bool) (assert (= var1720_true__t0 (theory1_safe var1719___carrier__router__push__t0) ) ) (assert var1720_true__t0 ) ; : ./src/router.zz:31 ; pub fn new(channel::Channel brk, udp::Socket udp4, udp::Socket udp6) -> Router { ; return Router { ; broker: brk, ; udp4: udp4, ; udp6: udp6, ; }; ; } (declare-fun var1721___carrier__router__new__t0 () (_ BitVec 64)) (declare-fun var1722_true__t0 () Bool) (assert (= var1722_true__t0 (theory1_safe var1721___carrier__router__new__t0) ) ) (assert var1722_true__t0 ) ; : /home/aep/proj/zz/modules/time/./src/lib.zz:48 ; export fn from_millis(u64 millis) -> Time { ; return Time { ; secs: (millis / 1000), ; nano: ((millis % 1000) * 1000000), ; finite: true, ; }; ; } (declare-fun var1723___time__from_millis__t0 () (_ BitVec 64)) (declare-fun var1724_true__t0 () Bool) (assert (= var1724_true__t0 (theory1_safe var1723___time__from_millis__t0) ) ) (assert var1724_true__t0 ) ; : /home/aep/proj/zz/modules/time/./src/lib.zz:89 ; export fn real() -> Time { ; Time mut tr = {0}; ; tr.finite = os_time_real(&tr.secs, &tr.nano) == 0; ; return tr; ; } (declare-fun var1725___time__real__t0 () (_ BitVec 64)) (declare-fun var1726_true__t0 () Bool) (assert (= var1726_true__t0 (theory1_safe var1725___time__real__t0) ) ) (assert var1726_true__t0 ) ; : ./src/bootstrap.zz:35 ; export fn from_store(Broker *b, address::Address mut *ip4addr, address::Address mut *ip6addr, identity::Address mut *xaddr) -> bool { ; if b->protocol == 0 { ; return false; ; } ; address::set_ip(ip4addr, address::Type::Ipv4, b->ip4addr); ; address::set_ip(ip6addr, address::Type::Ipv6, b->ip6addr); ; memcpy(xaddr->k, b->xaddr, 32); ; return true; ; } (declare-fun var1727___carrier__bootstrap__from_store__t0 () (_ BitVec 64)) (declare-fun var1728_true__t0 () Bool) (assert (= var1728_true__t0 (theory1_safe var1727___carrier__bootstrap__from_store__t0) ) ) (assert var1728_true__t0 ) ; : ./src/identity.zz:130 ; export fn address_to_str (err::Err+et mut* e, char mut* to, usize l, Address* from) -> usize ; where err::checked(*e) ; where len(to) >= l && l > 0 ; model nullterm(to) ; { ; return to_str(32, e, to, l, 8, 6, from->k); ; } (declare-fun var1729___carrier__identity__address_to_str__t0 () (_ BitVec 64)) (declare-fun var1730_true__t0 () Bool) (assert (= var1730_true__t0 (theory1_safe var1729___carrier__identity__address_to_str__t0) ) ) (assert var1730_true__t0 ) ; : ./src/endpoint.zz:115 ; static u16 PORTS[] = {53, 443, 8443, 80, 123}; ; : ./src/endpoint.zz:115 ; {53, 443, 8443, 80, 123} ; : ./src/endpoint.zz:115 ; 53 ; literal expr (declare-fun var1732_literal_53__t0 () (_ BitVec 64)) (assert (= var1732_literal_53__t0 (_ bv53 64)) ) ; : ./src/endpoint.zz:115 ; 443 ; literal expr (declare-fun var1733_literal_443__t0 () (_ BitVec 64)) (assert (= var1733_literal_443__t0 (_ bv443 64)) ) ; : ./src/endpoint.zz:115 ; 8443 ; literal expr (declare-fun var1734_literal_8443__t0 () (_ BitVec 64)) (assert (= var1734_literal_8443__t0 (_ bv8443 64)) ) ; : ./src/endpoint.zz:115 ; 80 ; literal expr (declare-fun var1735_literal_80__t0 () (_ BitVec 64)) (assert (= var1735_literal_80__t0 (_ bv80 64)) ) ; : ./src/endpoint.zz:115 ; 123 ; literal expr (declare-fun var1736_literal_123__t0 () (_ BitVec 64)) (assert (= var1736_literal_123__t0 (_ bv123 64)) ) ; : ./src/endpoint.zz:115 ; {53, 443, 8443, 80, 123} (declare-fun var1737_literal_array_1737__t0 () (_ BitVec 64)) (declare-fun var1738_true__t0 () Bool) (assert (= var1738_true__t0 (theory1_safe var1737_literal_array_1737__t0) ) ) (assert var1738_true__t0 ) ; : ./src/endpoint.zz:115 ; static u16 PORTS[] = {53, 443, 8443, 80, 123}; (declare-fun var1739_safe_literal_array_1737_____safe___carrier__endpoint__PORTS___t0 () Bool) (assert (= var1739_safe_literal_array_1737_____safe___carrier__endpoint__PORTS___t0 (theory1_safe var1737_literal_array_1737__t0) ) ) (declare-fun var1731___carrier__endpoint__PORTS__t1 () (_ BitVec 64)) (assert (= var1739_safe_literal_array_1737_____safe___carrier__endpoint__PORTS___t0 (theory1_safe var1731___carrier__endpoint__PORTS__t1) ) ) (declare-fun var1740_nullterm_literal_array_1737_____nullterm___carrier__endpoint__PORTS___t0 () Bool) (assert (= var1740_nullterm_literal_array_1737_____nullterm___carrier__endpoint__PORTS___t0 (theory2_nullterm var1737_literal_array_1737__t0) ) ) (assert (= var1740_nullterm_literal_array_1737_____nullterm___carrier__endpoint__PORTS___t0 (theory2_nullterm var1731___carrier__endpoint__PORTS__t1) ) ) (declare-fun var1746_len___carrier__endpoint__PORTS___t0 () (_ BitVec 64)) (assert (= var1746_len___carrier__endpoint__PORTS___t0 (theory0_len var1731___carrier__endpoint__PORTS__t1) ) ) (assert (= var1746_len___carrier__endpoint__PORTS___t0 (_ bv5 64)) ) ; : /home/aep/proj/zz/modules/net/./src/lib.zz:9 ; Engine ; : ./src/endpoint.zz:47 ; Endpoint ; : /home/aep/proj/zz/modules/net/./src/lib.zz:7 ; export fntype new_udp_fn(Engine *self, err::Err+et mut*e, address::Address *local_addr, io::Async mut* unsafe async) -> udp::Socket; ; : /home/aep/proj/zz/modules/net/./src/lib.zz:27 ; export fn new_udp(Engine *self, err::Err+et mut*e, address::Address *local_addr, io::Async mut* unsafe async) -> udp::Socket ; where err::checked(*e) ; { ; new_udp_fn impl_new_udp = (new_udp_fn)self->impl_new_udp; ; if impl_new_udp == 0 { ; err::fail(e, 1, "no new_udp impl"); ; return udp::Socket { ; impl_sendto: 0, ; }; ; } ; static_attest(safe(impl_new_udp)); ; return impl_new_udp(self, e, local_addr, async); ; } (declare-fun var1750___net__new_udp__t0 () (_ BitVec 64)) (declare-fun var1751_true__t0 () Bool) (assert (= var1751_true__t0 (theory1_safe var1750___net__new_udp__t0) ) ) (assert var1751_true__t0 ) ; : ./src/endpoint.zz:149 ; export fn poll(Endpoint+xt mut* self, err::Err+et mut*e, io::Async mut* async) -> io::Result ; where err::checked(*e) ; { ; static_attest(safe(self->store)); ; ; switch self->state { ; // TODO retry timeout ; State::Bootstrap => { ; ; if self->statem.bootstrap.next(e, async, self->store) == io::Result::Ready { ; if err::check(e) { ; return io::Result::Error; ; } ; self->do_state_connect(e, async); ; if err::check(e) { ; return io::Result::Error; ; } ; return self->poll(e, async); ; } ; } ; // TODO retry timeout ; State::Connecting => { ; ; // make sure we always activate ; if io::valid(&self->timeout) { ; async->select(e, &self->timeout, io::Ready::Read); ; if err::check(e) {return io::Result::Error; } ; } ; if io::valid(&self->udp4) { ; async->select(e, &self->udp4, io::Ready::Read); ; if err::check(e) {return io::Result::Error; } ; } ; if io::valid(&self->udp6) { ; async->select(e, &self->udp6, io::Ready::Read); ; if err::check(e) {return io::Result::Error; } ; } ; ; // receive ; address::Address mut fromaddr = {0}; ; self->statem.connecting.initiator.pkt.clear(); ; if self->udp4.recvfrom(e, &self->statem.connecting.initiator.pkt, &fromaddr) == io::Result::Ready { ; err::new(e); ; ; ; channel::Channel mut broker_chan = {0}; ; bootstrap::Broker mut redir = {0}; ; self->statem.connecting.initiator.complete(e, &broker_chan, &redir); ; if err::check(e) { ; e->eprint(); ; err::new(e); ; // don't return here. we might have stuff to set the timer in the rest of the code ; } else if redir.protocol != 0 { ; memcpy(&self->statem.connecting.current_broker, &redir, sizeof(bootstrap::Broker)); ; self->statem.connecting.retry_sending = 0; ; self->timeout.close(); ; return self->poll(e, async); ; } else { ; self->state = State::Connected; ; memset(&self->statem , 0, sizeof(StateM)); ; broker_chan.peering.received(peering::Transport::Udp, fromaddr); ; broker_chan.q.allocator = &self->framebuffer; ; broker_chan.on_open = (channel::on_open_t)on_remote_open; ; self->statem.connected = router::new(broker_chan, self->udp4, self->udp6); ; return io::Result::Ready; ; } ; err::new(e); ; } ; if err::check(e) {return io::Result::Error; } ; ; // or timeout ; ; if self->timeout.valid() { ; u8 mut buf[16]; ; usize mut l = 16; ; io::Result rr = self->timeout.read_bytes(e, buf, &l); ; if err::check(e) {return io::Result::Error; } ; if rr != io::Result::Ready { ; return rr; ; } ; log::warn("timeout waiting for broker response"); ; } ; self->timeout.close(); ; ; ; usize mut wait = 0; ; switch self->statem.connecting.retry_sending { ; 0 => { wait = 100 } ; 1 => { wait = 300 } ; 2 => { wait = 600 } ; default => { wait = 2000 } ; } ; ; self->timeout = io::timeout(async, e, time::from_millis(wait)); ; if err::check(e) {return io::Result::Error; } ; async->select(e, &self->timeout, io::Ready::Read); ; if err::check(e) {return io::Result::Error; } ; ; if self->statem.connecting.retry_sending > 5 { ; self->statem.connecting.retry_sending = 0; ; self->next_broker(); ; } ; ; // TODO: abstract ; time::Time now = time::real(); ; self->store->time = now.to_seconds(); ; ; ; address::Address mut ip4addr = {0}; ; address::Address mut ip6addr = {0}; ; identity::Address mut xaddr = {0}; ; ; if !bootstrap::from_store(&self->statem.connecting.current_broker, &ip4addr, &ip6addr, &xaddr) { ; err::fail(e, 3, "current broker is empty"); ; return io::Result::Error; ; } ; ; self->statem.connecting.initiator.initiate(e, (identity::Secret*)&(self->store->secret), &xaddr, self->store->time); ; if err::check(e) {return io::Result::Error;} ; ; ; string::String+150 mut dbn = {0}; ; ip4addr.ip_to_string(&dbn); ; dbn.append_cstr(" "); ; static_attest(len(&dbn.mem) > dbn.len); ; dbn.len += identity::address_to_str(e, dbn.mem + dbn.len, 150 - dbn.len, &xaddr); ; if err::check(e) {return io::Result::Error; } ; ; log::debug("attempt %zu sending %zu bytes to %.*s", ; self->statem.connecting.retry_sending, ; self->statem.connecting.initiator.pkt.len, ; (int)dbn.len, dbn.mem); ; ; ++self->statem.connecting.retry_sending; ; ; for (usize mut i= 0; i < static(len(PORTS));i++) { ; ip4addr.set_port(PORTS[i]); ; ip6addr.set_port(PORTS[i]); ; ; self->udp4.sendto(e, &self->statem.connecting.initiator.pkt, &ip4addr); ; err::new(e); ; ; if io::valid(&self->udp6) && ip6addr.valid() { ; self->udp6.sendto(e, &self->statem.connecting.initiator.pkt, &ip6addr); ; err::new(e); ; } ; } ; ; ; async->select(e, &self->udp4, io::Ready::Read); ; ; ; return io::Result::Later; ; } ; State::Connected => { ; return self->statem.connected.poll(e); ; } ; } ; ; return io::Result::Later; ; } (declare-fun var1752___carrier__endpoint__poll__t0 () (_ BitVec 64)) (declare-fun var1753_true__t0 () Bool) (assert (= var1753_true__t0 (theory1_safe var1752___carrier__endpoint__poll__t0) ) ) (assert var1753_true__t0 ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:36 ; export fn from_cstr(char *s) -> Address ; where nullterm(s) ; { ; usize slen = string::strlen(s); ; static_attest(len(s) >= slen); ; ; return from_str(s, slen); ; } (declare-fun var1754___net__address__from_cstr__t0 () (_ BitVec 64)) (declare-fun var1755_true__t0 () Bool) (assert (= var1755_true__t0 (theory1_safe var1754___net__address__from_cstr__t0) ) ) (assert var1755_true__t0 ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:31 ; export fn from_string(string::String+st *s) -> Address ; { ; static_attest(len(s->mem) >= s->len); ; return from_str(s->mem, s->len); ; } (declare-fun var1756___net__address__from_string__t0 () (_ BitVec 64)) (declare-fun var1757_true__t0 () Bool) (assert (= var1757_true__t0 (theory1_safe var1756___net__address__from_string__t0) ) ) (assert var1757_true__t0 ) ; : ./src/bootstrap.zz:428 ; fn get_system_dns_servers(address::Address mut *dns_servers, usize mut *at) ; { ; FILE mut* fp = fopen("/etc/resolv.conf", "r"); ; if fp == 0 { ; return; ; } ; static_attest(safe(fp)); ; ; string::String+300 mut str; ; for (;;) { ; if *at >= 16 { ; break; ; } ; static_attest(*at < len(dns_servers)); ; ; string::clear(&str); ; if !string::fgets(&str, fp) { ; break; ; } ; string::pop(&str); ; ; if string::starts_with_cstr(&str, "nameserver") { ; string::String+100 mut sub = {0}; ; string::substr(&str, 11, 0, &sub); ; ; ; dns_servers[*at] = address::from_string(&sub); ; if (dns_servers[*at]).valid() { ; (dns_servers[*at]).set_port(53); ; *at += 1; ; } ; } ; } ; fclose(fp); ; } (declare-fun var1758___carrier__bootstrap__get_system_dns_servers__t0 () (_ BitVec 64)) (declare-fun var1759_true__t0 () Bool) (assert (= var1759_true__t0 (theory1_safe var1758___carrier__bootstrap__get_system_dns_servers__t0) ) ) (assert var1759_true__t0 ) ; : ./src/bootstrap.zz:64 ; export fn new(err::Err+et mut * e,io::Async mut* async, net::Engine *netengine) -> Bootstrap ; where err::checked(*e) ; { ; ; Bootstrap mut self = Bootstrap { ; dns_servers_count: 0 ; }; ; ; (self.dns_servers)[0] = address::from_cstr("8.8.8.8:53"); ; (self.dns_servers)[1] = address::from_cstr("1.1.1.1:53"); ; (self.dns_servers)[2] = address::from_cstr("[2001:4860:4860::8888]:53"); ; (self.dns_servers)[3] = address::from_cstr("[2620:119:35::35]:53"); ; self.dns_servers_count = 4; ; ; get_system_dns_servers(self.dns_servers, &self.dns_servers_count); ; ; address::Address addr4 = address::from_cstr("0.0.0.0:0"); ; self.sock4 = netengine->new_udp(e, &addr4, async); ; if err::check(e) { ; return self; ; } ; ; address::Address addr6 = address::from_cstr("[::1]:0"); ; self.sock6 = netengine->new_udp(e, &addr6, async); ; // ignore v6 creation error ; err::new(e); ; ; ; return self; ; } (declare-fun var1760___carrier__bootstrap__new__t0 () (_ BitVec 64)) (declare-fun var1761_true__t0 () Bool) (assert (= var1761_true__t0 (theory1_safe var1760___carrier__bootstrap__new__t0) ) ) (assert var1761_true__t0 ) ; : ./src/endpoint.zz:61 ; export fn start(Endpoint+xt mut* self, err::Err+et mut*e, net::Engine *netengine, bootstrap::Store mut* store, io::Async mut* async) ; where err::checked(*e) ; where xt > xt/32 ; { ; memset(self, 0, sizeof(Endpoint)); ; self->framebuffer.new(32); ; ; self->netengine = netengine; ; self->store = store; ; ; ; ; log::info("truststore is empty. bootstrap via dns"); ; self->state = State::Bootstrap; ; self->statem.bootstrap = bootstrap::new(e, async, netengine); ; } (declare-fun var1762___carrier__endpoint__start__t0 () (_ BitVec 64)) (declare-fun var1763_true__t0 () Bool) (assert (= var1763_true__t0 (theory1_safe var1762___carrier__endpoint__start__t0) ) ) (assert var1763_true__t0 ) ; : ./src/endpoint.zz:78 ; export fn close(Endpoint+xt mut* self) ; { ; switch self->state { ; State::Bootstrap => { ; self->statem.bootstrap.close(); ; } ; State::Connecting => { ; self->udp4.close(); ; self->udp6.close(); ; } ; State::Connected => { ; self->statem.connected.close(); ; } ; } ; } (declare-fun var1764___carrier__endpoint__close__t0 () (_ BitVec 64)) (declare-fun var1765_true__t0 () Bool) (assert (= var1765_true__t0 (theory1_safe var1764___carrier__endpoint__close__t0) ) ) (assert var1765_true__t0 ) ; : ./src/endpoint.zz:94 ; fn next_broker(Endpoint+xt mut* self) -> bool ; { ; static_attest(safe(self->store)); ; for (usize mut i = 0; i < bootstrap::MAX_BROKERS; i++) { ; if self->statem.connecting.trying_broker_index >= bootstrap::MAX_BROKERS { ; self->statem.connecting.trying_broker_index = 0; ; } ; static_attest(self->statem.connecting.trying_broker_index < len(self->store->broker)); ; if self->store->broker[self->statem.connecting.trying_broker_index].protocol != 0 { ; log::debug("loading broker slot %zu", self->statem.connecting.trying_broker_index); ; memcpy(&self->statem.connecting.current_broker, ; &self->store->broker[self->statem.connecting.trying_broker_index], ; sizeof(bootstrap::Broker)); ; self->statem.connecting.trying_broker_index += 1; ; return true; ; } ; self->statem.connecting.trying_broker_index += 1; ; } ; return false; ; } (declare-fun var1766___carrier__endpoint__next_broker__t0 () (_ BitVec 64)) (declare-fun var1767_true__t0 () Bool) (assert (= var1767_true__t0 (theory1_safe var1766___carrier__endpoint__next_broker__t0) ) ) (assert var1767_true__t0 ) ; : ./src/endpoint.zz:120 ; fn do_state_connect(Endpoint+xt mut* self, err::Err+et mut*e, io::Async mut* async) ; where err::checked(*e) ; { ; static_attest(safe(self->store)); ; log::info("trustvector complete, ring has %zu brokers", self->store->broker_count()); ; ; self->statem.bootstrap.close(); ; self->state = State::Connecting; ; memset(&self->statem.connecting, 0, sizeof(ConnectingState)); ; ; static_attest(safe(self->netengine)); ; address::Address addr4 = address::from_cstr("0.0.0.0:1212"); ; self->udp4 = self->netengine->new_udp(e, &addr4, async); ; if err::check(e) { ; return; ; } ; ; address::Address addr6 = address::from_cstr("[::1]:0"); ; self->udp6 = self->netengine->new_udp(e, &addr6, async); ; if err::check(e) { ; return; ; } ; ; if !self->next_broker(){ ; err::fail(e, 2, "no brokers in bootstrap store"); ; return; ; } ; } (declare-fun var1768___carrier__endpoint__do_state_connect__t0 () (_ BitVec 64)) (declare-fun var1769_true__t0 () Bool) (assert (= var1769_true__t0 (theory1_safe var1768___carrier__endpoint__do_state_connect__t0) ) ) (assert var1769_true__t0 ) ; ;---------------------------------------------- ;function ::carrier::endpoint::poll ;---------------------------------------------- (push 1) ; : ./src/endpoint.zz:149 ; Endpoint+xt mut* self ; : ./src/endpoint.zz:149 ; +xt (declare-fun var1773_deref_S1770_self__framebuffer__t0 () (_ BitVec 64)) (declare-fun var1774_len_deref_S1770_self____t0 () (_ BitVec 64)) (assert (= var1774_len_deref_S1770_self____t0 (theory0_len var1773_deref_S1770_self__framebuffer__t0) ) ) (declare-fun var1771_xt__t0 () (_ BitVec 64)) (assert (! (= var1774_len_deref_S1770_self____t0 var1771_xt__t0) :named A6)); : ./src/endpoint.zz:149 ; err::Err+et mut*e ; : ./src/endpoint.zz:149 ; +et (declare-fun var1778_deref_S1775_e__locations__t0 () (_ BitVec 64)) (declare-fun var1779_len_deref_S1775_e____t0 () (_ BitVec 64)) (assert (= var1779_len_deref_S1775_e____t0 (theory0_len var1778_deref_S1775_e__locations__t0) ) ) (declare-fun var1776_et__t0 () (_ BitVec 64)) (assert (! (= var1779_len_deref_S1775_e____t0 var1776_et__t0) :named A7)); : ./src/endpoint.zz:149 ; io::Async mut* async ; : ./src/endpoint.zz:149 ; * ; call of safe (declare-fun var1780_async__t0 () (_ BitVec 64)) (declare-fun var1781_interpretation_of_theory_safe_over_async__t0 () Bool) (assert (= var1781_interpretation_of_theory_safe_over_async__t0 (theory1_safe var1780_async__t0) ) ) (assert (! var1781_interpretation_of_theory_safe_over_async__t0 :named A8))(check-sat) ; : ./src/endpoint.zz:149 ; * ; call of safe (declare-fun var1775_e__t0 () (_ BitVec 64)) (declare-fun var1782_interpretation_of_theory_safe_over_e__t0 () Bool) (assert (= var1782_interpretation_of_theory_safe_over_e__t0 (theory1_safe var1775_e__t0) ) ) (assert (! var1782_interpretation_of_theory_safe_over_e__t0 :named A9))(check-sat) ; : ./src/endpoint.zz:149 ; * ; call of safe (declare-fun var1770_self__t0 () (_ BitVec 64)) (declare-fun var1783_interpretation_of_theory_safe_over_self__t0 () Bool) (assert (= var1783_interpretation_of_theory_safe_over_self__t0 (theory1_safe var1770_self__t0) ) ) (assert (! var1783_interpretation_of_theory_safe_over_self__t0 :named A10))(check-sat) ; : ./src/endpoint.zz:150 ; *e) ; call of ::err::checked ; : ./src/endpoint.zz:150 ; err::checked ; : ./src/endpoint.zz:150 ; *e ; : ./src/endpoint.zz:150 ; e ; : ./src/endpoint.zz:150 ; *e ; : ./src/endpoint.zz:150 ; e ; : ./src/endpoint.zz:150 ; *e (declare-fun var1784_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (declare-fun var1777_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var1784_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t0) :named A11)); : ./src/endpoint.zz:150 ; e ; : ./src/endpoint.zz:150 ; *e (declare-fun var1785_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var1785_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t0) :named A12)); : ./src/endpoint.zz:150 ; *e) (declare-fun var1786_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (assert (= var1786_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 (theory86___err__checked var1785_cast_of_deref_S1775_e___t0) ) ) (assert (! var1786_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 :named A13))(check-sat) ; : ./src/endpoint.zz:149 ; io::Result ; ; : ./src/endpoint.zz:152 ; safe(self->store)) ; call of static_attest ; static_attest ; : ./src/endpoint.zz:152 ; self->store) ; call of safe ; : ./src/endpoint.zz:152 ; safe ; : ./src/endpoint.zz:152 ; -> ; : ./src/endpoint.zz:152 ; self ; : ./src/endpoint.zz:152 ; -> ; : ./src/endpoint.zz:152 ; self ; : ./src/endpoint.zz:152 ; -> ; : ./src/endpoint.zz:152 ; self ; : ./src/endpoint.zz:152 ; self->store) (declare-fun var1788_deref_S1770_self__store__t0 () (_ BitVec 64)) (declare-fun var1789_interpretation_of_theory_safe_over_deref_S1770_self__store__t0 () Bool) (assert (= var1789_interpretation_of_theory_safe_over_deref_S1770_self__store__t0 (theory1_safe var1788_deref_S1770_self__store__t0) ) ) (assert (! var1789_interpretation_of_theory_safe_over_deref_S1770_self__store__t0 :named A14))(check-sat) ; : ./src/endpoint.zz:152 ; safe(self->store)) (declare-fun var1790_literal_1__t0 () (_ BitVec 64)) (assert (= var1790_literal_1__t0 (_ bv1 64)) ) ; : ./src/endpoint.zz:154 ; -> ; : ./src/endpoint.zz:154 ; self ; : ./src/endpoint.zz:154 ; -> ; : ./src/endpoint.zz:156 ; State::Bootstrap ; : ./src/endpoint.zz:28 ; State (declare-fun var1792_implicit_coercion_of___carrier__endpoint__State__Bootstrap__t0 () (_ BitVec 64)) (assert (! (= var1792_implicit_coercion_of___carrier__endpoint__State__Bootstrap__t0 var1410___carrier__endpoint__State__Bootstrap__t0) :named A15)); : ./src/endpoint.zz:156 ; State::Bootstrap (declare-fun var1793_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Bootstrap___t0 () Bool) (declare-fun var1791_deref_S1770_self__state__t0 () (_ BitVec 64)) (assert (= var1793_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Bootstrap___t0 (= var1791_deref_S1770_self__state__t0 var1792_implicit_coercion_of___carrier__endpoint__State__Bootstrap__t0)) ) ; : ./src/endpoint.zz:158 ; == ; : ./src/endpoint.zz:158 ; e, async, self->store) ; call ; : ./src/endpoint.zz:158 ; . ; : ./src/endpoint.zz:158 ; . ; : ./src/endpoint.zz:158 ; -> ; : ./src/endpoint.zz:158 ; self ; : ./src/endpoint.zz:158 ; -> ; : ./src/endpoint.zz:158 ; . ; : ./src/endpoint.zz:158 ; . ; : ./src/endpoint.zz:158 ; e, async, self->store) ; call of ::carrier::bootstrap::next ; : ./src/endpoint.zz:158 ; . ; : ./src/endpoint.zz:158 ; . ; : ./src/endpoint.zz:158 ; -> ; : ./src/endpoint.zz:158 ; self ; : ./src/endpoint.zz:158 ; . (declare-fun var1797_addressof_deref_S1770_self__statem_bootstrap___t0 () (_ BitVec 64)) (declare-fun var1798_len_addressof_deref_S1770_self__statem_bootstrap____t0 () (_ BitVec 64)) (assert (= var1798_len_addressof_deref_S1770_self__statem_bootstrap____t0 (theory0_len var1797_addressof_deref_S1770_self__statem_bootstrap___t0) ) ) (assert (= var1798_len_addressof_deref_S1770_self__statem_bootstrap____t0 (_ bv1 64)) ) (assert (= var1797_addressof_deref_S1770_self__statem_bootstrap___t0 (_ bv1795 64)) ) (declare-fun var1799_true__t0 () Bool) (assert (= var1799_true__t0 (theory1_safe var1797_addressof_deref_S1770_self__statem_bootstrap___t0) ) ) (assert var1799_true__t0 ) ; : ./src/endpoint.zz:158 ; . ; : ./src/endpoint.zz:158 ; -> ; : ./src/endpoint.zz:158 ; self ; : ./src/endpoint.zz:158 ; . (declare-fun var1800_addressof_deref_S1770_self__statem_bootstrap___t0 () (_ BitVec 64)) (declare-fun var1801_len_addressof_deref_S1770_self__statem_bootstrap____t0 () (_ BitVec 64)) (assert (= var1801_len_addressof_deref_S1770_self__statem_bootstrap____t0 (theory0_len var1800_addressof_deref_S1770_self__statem_bootstrap___t0) ) ) (assert (= var1801_len_addressof_deref_S1770_self__statem_bootstrap____t0 (_ bv1 64)) ) (assert (= var1800_addressof_deref_S1770_self__statem_bootstrap___t0 (_ bv1795 64)) ) (declare-fun var1802_true__t0 () Bool) (assert (= var1802_true__t0 (theory1_safe var1800_addressof_deref_S1770_self__statem_bootstrap___t0) ) ) (assert var1802_true__t0 ) ; : ./src/endpoint.zz:158 ; e ; : ./src/endpoint.zz:158 ; async ; : ./src/endpoint.zz:158 ; -> ; : ./src/endpoint.zz:158 ; self ; : ./src/endpoint.zz:158 ; -> ; : ./src/endpoint.zz:158 ; self ; : ./src/endpoint.zz:158 ; . ; : ./src/endpoint.zz:158 ; . ; : ./src/endpoint.zz:158 ; -> ; : ./src/endpoint.zz:158 ; self ; : ./src/endpoint.zz:158 ; . (declare-fun var1803_addressof_deref_S1770_self__statem_bootstrap___t0 () (_ BitVec 64)) (declare-fun var1804_len_addressof_deref_S1770_self__statem_bootstrap____t0 () (_ BitVec 64)) (assert (= var1804_len_addressof_deref_S1770_self__statem_bootstrap____t0 (theory0_len var1803_addressof_deref_S1770_self__statem_bootstrap___t0) ) ) (assert (= var1804_len_addressof_deref_S1770_self__statem_bootstrap____t0 (_ bv1 64)) ) (assert (= var1803_addressof_deref_S1770_self__statem_bootstrap___t0 (_ bv1795 64)) ) (declare-fun var1805_true__t0 () Bool) (assert (= var1805_true__t0 (theory1_safe var1803_addressof_deref_S1770_self__statem_bootstrap___t0) ) ) (assert var1805_true__t0 ) ; : ./src/endpoint.zz:158 ; e (declare-fun var1806_cast_of_e__t0 () (_ BitVec 64)) (assert (! (= var1806_cast_of_e__t0 var1775_e__t0) :named A16)); : ./src/endpoint.zz:149 ; +et ; : ./src/endpoint.zz:158 ; async ; : ./src/endpoint.zz:158 ; -> ; : ./src/endpoint.zz:158 ; self ;callsite_assert (push 1) ; : ./src/bootstrap.zz:101 ; * ; call of safe (declare-fun var1807_interpretation_of_theory_safe_over_deref_S1770_self__store__t0 () Bool) (assert (= var1807_interpretation_of_theory_safe_over_deref_S1770_self__store__t0 (theory1_safe var1788_deref_S1770_self__store__t0) ) ) ; : ./src/bootstrap.zz:101 ; * ; call of safe (declare-fun var1808_interpretation_of_theory_safe_over_async__t0 () Bool) (assert (= var1808_interpretation_of_theory_safe_over_async__t0 (theory1_safe var1780_async__t0) ) ) ; : ./src/bootstrap.zz:101 ; * ; call of safe (declare-fun var1809_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (assert (= var1809_interpretation_of_theory_safe_over_cast_of_e__t0 (theory1_safe var1806_cast_of_e__t0) ) ) ; : ./src/bootstrap.zz:101 ; * ; call of safe (declare-fun var1810_interpretation_of_theory_safe_over_addressof_deref_S1770_self__statem_bootstrap___t0 () Bool) (assert (= var1810_interpretation_of_theory_safe_over_addressof_deref_S1770_self__statem_bootstrap___t0 (theory1_safe var1803_addressof_deref_S1770_self__statem_bootstrap___t0) ) ) ; : ./src/bootstrap.zz:102 ; *e) ; call of ::err::checked ; : ./src/bootstrap.zz:102 ; err::checked ; : ./src/bootstrap.zz:102 ; *e ; : ./src/bootstrap.zz:102 ; e ; : ./src/bootstrap.zz:102 ; *e ; : ./src/bootstrap.zz:102 ; e ; : ./src/bootstrap.zz:102 ; *e (declare-fun var1811_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var1811_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t0) :named A17)); : ./src/bootstrap.zz:102 ; e ; : ./src/bootstrap.zz:102 ; *e (declare-fun var1812_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var1812_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t0) :named A18)); : ./src/bootstrap.zz:102 ; *e) (declare-fun var1813_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (assert (= var1813_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 (theory86___err__checked var1812_cast_of_deref_S1775_e___t0) ) ) (push 1) (assert (and var1793_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Bootstrap___t0 (or (not var1807_interpretation_of_theory_safe_over_deref_S1770_self__store__t0 ) (not var1808_interpretation_of_theory_safe_over_async__t0 ) (not var1809_interpretation_of_theory_safe_over_cast_of_e__t0 ) (not var1810_interpretation_of_theory_safe_over_addressof_deref_S1770_self__statem_bootstrap___t0 ) (not var1813_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var1807_interpretation_of_theory_safe_over_deref_S1770_self__store__t0 () Bool) (declare-fun var1808_interpretation_of_theory_safe_over_async__t0 () Bool) (declare-fun var1809_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var1810_interpretation_of_theory_safe_over_addressof_deref_S1770_self__statem_bootstrap___t0 () Bool) (declare-fun var1813_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) ; borrows after call ; 1795 to temporal +1 because of function borrow (declare-fun var1795_deref_S1770_self__statem_bootstrap__t1 () (_ BitVec 64)) (declare-fun var1795_deref_S1770_self__statem_bootstrap__t0 () (_ BitVec 64)) (assert (= var1795_deref_S1770_self__statem_bootstrap__t1 (ite var1793_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Bootstrap___t0 var1795_deref_S1770_self__statem_bootstrap__t1 var1795_deref_S1770_self__statem_bootstrap__t0) ) ) ; 1777 to temporal +1 because of function borrow (declare-fun var1777_deref_S1775_e___t1 () (_ BitVec 64)) (assert (= var1777_deref_S1775_e___t1 (ite var1793_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Bootstrap___t0 var1777_deref_S1775_e___t1 var1777_deref_S1775_e___t0) ) ) ; end of borrows after call ; : ./src/endpoint.zz:158 ; e, async, self->store) ; callsite effects ; end of callsite effects ; : ./src/endpoint.zz:158 ; io::Result::Ready ; : /home/aep/proj/zz/modules/io/./src/lib.zz:24 ; Result (declare-fun var1815_implicit_coercion_of___io__Result__Ready__t0 () (_ BitVec 64)) (assert (! (= var1815_implicit_coercion_of___io__Result__Ready__t0 var248___io__Result__Ready__t0) :named A19)); : ./src/endpoint.zz:158 ; == (declare-fun var1816_infix_expression__t0 () Bool) (declare-fun var1814_return_value_of___carrier__bootstrap__next__t0 () (_ BitVec 64)) (assert (= var1816_infix_expression__t0 (= var1814_return_value_of___carrier__bootstrap__next__t0 var1815_implicit_coercion_of___io__Result__Ready__t0)) ) (check-sat) (get-value ( var1816_infix_expression__t0 ) ) ; = "true" (push 1) (assert (not (= var1816_infix_expression__t0 true)) ) (check-sat) (pop 1) ; : ./src/endpoint.zz:158 ; if self->statem.bootstrap.next(e, async, self->store) == io::Result::Ready { ; if err::check(e) { ; return io::Result::Error; ; } ; self->do_state_connect(e, async); ; if err::check(e) { ; return io::Result::Error; ; } ; return self->poll(e, async); ; } ; : ./src/endpoint.zz:159 ; e) ; call of ::err::check ; : ./src/endpoint.zz:159 ; err::check ; : ./src/endpoint.zz:159 ; e (declare-fun var1817_cast_of_e__t0 () (_ BitVec 64)) (assert (! (= var1817_cast_of_e__t0 var1775_e__t0) :named A20)); : ./src/endpoint.zz:149 ; +et ; : /home/aep/proj/zz/modules/err/./src/lib.zz:28 ; callsite_source (declare-fun var1818_literal_string____src_endpoint_zz___t0 () (_ BitVec 64)) (declare-fun var1819_true__t0 () Bool) (assert (= var1819_true__t0 (theory1_safe var1818_literal_string____src_endpoint_zz___t0) ) ) (assert var1819_true__t0 ) (declare-fun var1820_true__t0 () Bool) (assert (= var1820_true__t0 (theory2_nullterm var1818_literal_string____src_endpoint_zz___t0) ) ) (assert var1820_true__t0 ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:29 ; callsite_source (declare-fun var1821_literal_string____carrier__endpoint__poll___t0 () (_ BitVec 64)) (declare-fun var1822_true__t0 () Bool) (assert (= var1822_true__t0 (theory1_safe var1821_literal_string____carrier__endpoint__poll___t0) ) ) (assert var1822_true__t0 ) (declare-fun var1823_true__t0 () Bool) (assert (= var1823_true__t0 (theory2_nullterm var1821_literal_string____carrier__endpoint__poll___t0) ) ) (assert var1823_true__t0 ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:30 ; callsite_source ; literal expr (declare-fun var1824_literal_159__t0 () (_ BitVec 64)) (assert (= var1824_literal_159__t0 (_ bv159 64)) ) ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:27 ; * ; call of safe (declare-fun var1825_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (assert (= var1825_interpretation_of_theory_safe_over_cast_of_e__t0 (theory1_safe var1817_cast_of_e__t0) ) ) (push 1) (assert (and ( and var1793_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Bootstrap___t0 var1816_infix_expression__t0 ) (or (not var1825_interpretation_of_theory_safe_over_cast_of_e__t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var1825_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) ; borrows after call ; 1777 to temporal +1 because of function borrow (declare-fun var1777_deref_S1775_e___t2 () (_ BitVec 64)) (assert (= var1777_deref_S1775_e___t2 (ite ( and var1793_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Bootstrap___t0 var1816_infix_expression__t0 ) var1777_deref_S1775_e___t2 var1777_deref_S1775_e___t1) ) ) ; end of borrows after call ; : ./src/endpoint.zz:159 ; e) ; callsite effects (declare-fun var1827_return__t1 () Bool) (declare-fun var1826_return_value_of___err__check__t0 () Bool) (declare-fun var1827_return__t0 () Bool) (assert (= var1827_return__t1 (ite ( and var1793_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Bootstrap___t0 var1816_infix_expression__t0 ) var1826_return_value_of___err__check__t0 var1827_return__t0) ) ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self) ; call of ::err::checked ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; checked ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self (declare-fun var1828_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var1828_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t2) :named A21)); : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self (declare-fun var1829_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var1829_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t2) :named A22)); : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self) (declare-fun var1830_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (assert (= var1830_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 (theory86___err__checked var1829_cast_of_deref_S1775_e___t0) ) ) (assert (! var1830_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 :named A23))(check-sat) (declare-fun var1826_return_value_of___err__check__t1 () Bool) (assert (= var1826_return_value_of___err__check__t1 (ite ( and var1793_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Bootstrap___t0 var1816_infix_expression__t0 ) var1827_return__t1 var1826_return_value_of___err__check__t0) ) ) ; end of callsite effects (check-sat) (get-value ( var1826_return_value_of___err__check__t1 ) ) ; = "false" (push 1) (assert (not (= var1826_return_value_of___err__check__t1 false)) ) (check-sat) (pop 1) ; : ./src/endpoint.zz:159 ; e) ; : ./src/endpoint.zz:159 ; if err::check(e) { ; return io::Result::Error; ; } ; : ./src/endpoint.zz:160 ; io::Result::Error (declare-fun var1831_safe___io__Result__Error_____safe_return___t0 () Bool) (assert (= var1831_safe___io__Result__Error_____safe_return___t0 (theory1_safe var250___io__Result__Error__t0) ) ) (declare-fun var1787_return__t1 () (_ BitVec 64)) (assert (= var1831_safe___io__Result__Error_____safe_return___t0 (theory1_safe var1787_return__t1) ) ) (declare-fun var1832_nullterm___io__Result__Error_____nullterm_return___t0 () Bool) (assert (= var1832_nullterm___io__Result__Error_____nullterm_return___t0 (theory2_nullterm var250___io__Result__Error__t0) ) ) (assert (= var1832_nullterm___io__Result__Error_____nullterm_return___t0 (theory2_nullterm var1787_return__t1) ) ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:24 ; Result (declare-fun var1833_implicit_coercion_of___io__Result__Error__t0 () (_ BitVec 64)) (assert (! (= var1833_implicit_coercion_of___io__Result__Error__t0 var250___io__Result__Error__t0) :named A24))(declare-fun var1787_return__t0 () (_ BitVec 64)) (assert (= var1787_return__t1 (ite ( and var1793_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Bootstrap___t0 var1816_infix_expression__t0 var1826_return_value_of___err__check__t1 ) var1833_implicit_coercion_of___io__Result__Error__t0 var1787_return__t0) ) ) ; end branch ; branch returned. the rest of the function only happens if the condition leading to return never happened ; (not ( and var1793_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Bootstrap___t0 var1816_infix_expression__t0 var1826_return_value_of___err__check__t1 )) (assert (not ( and var1793_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Bootstrap___t0 var1816_infix_expression__t0 var1826_return_value_of___err__check__t1 )) ) ; : ./src/endpoint.zz:162 ; e, async) ; call ; : ./src/endpoint.zz:162 ; -> ; : ./src/endpoint.zz:162 ; self ; : ./src/endpoint.zz:162 ; -> ; : ./src/endpoint.zz:162 ; e, async) ; call of ::carrier::endpoint::do_state_connect ; : ./src/endpoint.zz:162 ; -> ; : ./src/endpoint.zz:162 ; self ; : ./src/endpoint.zz:162 ; e ; : ./src/endpoint.zz:162 ; async ; : ./src/endpoint.zz:162 ; self (declare-fun var1835_cast_of_self__t0 () (_ BitVec 64)) (assert (! (= var1835_cast_of_self__t0 var1770_self__t0) :named A25)); : ./src/endpoint.zz:149 ; +xt ; : ./src/endpoint.zz:162 ; e (declare-fun var1836_cast_of_e__t0 () (_ BitVec 64)) (assert (! (= var1836_cast_of_e__t0 var1775_e__t0) :named A26)); : ./src/endpoint.zz:149 ; +et ; : ./src/endpoint.zz:162 ; async ;callsite_assert (push 1) ; : ./src/endpoint.zz:120 ; * ; call of safe (declare-fun var1837_interpretation_of_theory_safe_over_async__t0 () Bool) (assert (= var1837_interpretation_of_theory_safe_over_async__t0 (theory1_safe var1780_async__t0) ) ) ; : ./src/endpoint.zz:120 ; * ; call of safe (declare-fun var1838_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (assert (= var1838_interpretation_of_theory_safe_over_cast_of_e__t0 (theory1_safe var1836_cast_of_e__t0) ) ) ; : ./src/endpoint.zz:120 ; * ; call of safe (declare-fun var1839_interpretation_of_theory_safe_over_cast_of_self__t0 () Bool) (assert (= var1839_interpretation_of_theory_safe_over_cast_of_self__t0 (theory1_safe var1835_cast_of_self__t0) ) ) ; : ./src/endpoint.zz:121 ; *e) ; call of ::err::checked ; : ./src/endpoint.zz:121 ; err::checked ; : ./src/endpoint.zz:121 ; *e ; : ./src/endpoint.zz:121 ; e ; : ./src/endpoint.zz:121 ; *e ; : ./src/endpoint.zz:121 ; e ; : ./src/endpoint.zz:121 ; *e (declare-fun var1840_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var1840_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t2) :named A27)); : ./src/endpoint.zz:121 ; e ; : ./src/endpoint.zz:121 ; *e (declare-fun var1841_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var1841_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t2) :named A28)); : ./src/endpoint.zz:121 ; *e) (declare-fun var1842_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (assert (= var1842_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 (theory86___err__checked var1841_cast_of_deref_S1775_e___t0) ) ) (push 1) (assert (and ( and var1793_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Bootstrap___t0 var1816_infix_expression__t0 ) (or (not var1837_interpretation_of_theory_safe_over_async__t0 ) (not var1838_interpretation_of_theory_safe_over_cast_of_e__t0 ) (not var1839_interpretation_of_theory_safe_over_cast_of_self__t0 ) (not var1842_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var1837_interpretation_of_theory_safe_over_async__t0 () Bool) (declare-fun var1838_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var1839_interpretation_of_theory_safe_over_cast_of_self__t0 () Bool) (declare-fun var1842_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) ; borrows after call ; 1772 to temporal +1 because of function borrow (declare-fun var1772_deref_S1770_self___t1 () (_ BitVec 64)) (declare-fun var1772_deref_S1770_self___t0 () (_ BitVec 64)) (assert (= var1772_deref_S1770_self___t1 (ite ( and var1793_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Bootstrap___t0 var1816_infix_expression__t0 ) var1772_deref_S1770_self___t1 var1772_deref_S1770_self___t0) ) ) ; 1777 to temporal +1 because of function borrow (declare-fun var1777_deref_S1775_e___t3 () (_ BitVec 64)) (assert (= var1777_deref_S1775_e___t3 (ite ( and var1793_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Bootstrap___t0 var1816_infix_expression__t0 ) var1777_deref_S1775_e___t3 var1777_deref_S1775_e___t2) ) ) ; end of borrows after call ; : ./src/endpoint.zz:162 ; e, async) ; callsite effects ; end of callsite effects ; : ./src/endpoint.zz:163 ; e) ; call of ::err::check ; : ./src/endpoint.zz:163 ; err::check ; : ./src/endpoint.zz:163 ; e (declare-fun var1844_cast_of_e__t0 () (_ BitVec 64)) (assert (! (= var1844_cast_of_e__t0 var1775_e__t0) :named A29)); : ./src/endpoint.zz:149 ; +et ; : /home/aep/proj/zz/modules/err/./src/lib.zz:28 ; callsite_source (declare-fun var1845_literal_string____src_endpoint_zz___t0 () (_ BitVec 64)) (declare-fun var1846_true__t0 () Bool) (assert (= var1846_true__t0 (theory1_safe var1845_literal_string____src_endpoint_zz___t0) ) ) (assert var1846_true__t0 ) (declare-fun var1847_true__t0 () Bool) (assert (= var1847_true__t0 (theory2_nullterm var1845_literal_string____src_endpoint_zz___t0) ) ) (assert var1847_true__t0 ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:29 ; callsite_source (declare-fun var1848_literal_string____carrier__endpoint__poll___t0 () (_ BitVec 64)) (declare-fun var1849_true__t0 () Bool) (assert (= var1849_true__t0 (theory1_safe var1848_literal_string____carrier__endpoint__poll___t0) ) ) (assert var1849_true__t0 ) (declare-fun var1850_true__t0 () Bool) (assert (= var1850_true__t0 (theory2_nullterm var1848_literal_string____carrier__endpoint__poll___t0) ) ) (assert var1850_true__t0 ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:30 ; callsite_source ; literal expr (declare-fun var1851_literal_163__t0 () (_ BitVec 64)) (assert (= var1851_literal_163__t0 (_ bv163 64)) ) ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:27 ; * ; call of safe (declare-fun var1852_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (assert (= var1852_interpretation_of_theory_safe_over_cast_of_e__t0 (theory1_safe var1844_cast_of_e__t0) ) ) (push 1) (assert (and ( and var1793_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Bootstrap___t0 var1816_infix_expression__t0 ) (or (not var1852_interpretation_of_theory_safe_over_cast_of_e__t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var1852_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) ; borrows after call ; 1777 to temporal +1 because of function borrow (declare-fun var1777_deref_S1775_e___t4 () (_ BitVec 64)) (assert (= var1777_deref_S1775_e___t4 (ite ( and var1793_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Bootstrap___t0 var1816_infix_expression__t0 ) var1777_deref_S1775_e___t4 var1777_deref_S1775_e___t3) ) ) ; end of borrows after call ; : ./src/endpoint.zz:163 ; e) ; callsite effects (declare-fun var1854_return__t1 () Bool) (declare-fun var1853_return_value_of___err__check__t0 () Bool) (declare-fun var1854_return__t0 () Bool) (assert (= var1854_return__t1 (ite ( and var1793_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Bootstrap___t0 var1816_infix_expression__t0 ) var1853_return_value_of___err__check__t0 var1854_return__t0) ) ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self) ; call of ::err::checked ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; checked ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self (declare-fun var1855_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var1855_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t4) :named A30)); : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self (declare-fun var1856_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var1856_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t4) :named A31)); : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self) (declare-fun var1857_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (assert (= var1857_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 (theory86___err__checked var1856_cast_of_deref_S1775_e___t0) ) ) (assert (! var1857_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 :named A32))(check-sat) (declare-fun var1853_return_value_of___err__check__t1 () Bool) (assert (= var1853_return_value_of___err__check__t1 (ite ( and var1793_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Bootstrap___t0 var1816_infix_expression__t0 ) var1854_return__t1 var1853_return_value_of___err__check__t0) ) ) ; end of callsite effects (check-sat) (get-value ( var1853_return_value_of___err__check__t1 ) ) ; = "false" (push 1) (assert (not (= var1853_return_value_of___err__check__t1 false)) ) (check-sat) (pop 1) ; : ./src/endpoint.zz:163 ; e) ; : ./src/endpoint.zz:163 ; if err::check(e) { ; return io::Result::Error; ; } ; : ./src/endpoint.zz:164 ; io::Result::Error (declare-fun var1858_safe___io__Result__Error_____safe_return___t0 () Bool) (assert (= var1858_safe___io__Result__Error_____safe_return___t0 (theory1_safe var250___io__Result__Error__t0) ) ) (declare-fun var1787_return__t2 () (_ BitVec 64)) (assert (= var1858_safe___io__Result__Error_____safe_return___t0 (theory1_safe var1787_return__t2) ) ) (declare-fun var1859_nullterm___io__Result__Error_____nullterm_return___t0 () Bool) (assert (= var1859_nullterm___io__Result__Error_____nullterm_return___t0 (theory2_nullterm var250___io__Result__Error__t0) ) ) (assert (= var1859_nullterm___io__Result__Error_____nullterm_return___t0 (theory2_nullterm var1787_return__t2) ) ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:24 ; Result (declare-fun var1860_implicit_coercion_of___io__Result__Error__t0 () (_ BitVec 64)) (assert (! (= var1860_implicit_coercion_of___io__Result__Error__t0 var250___io__Result__Error__t0) :named A33))(assert (= var1787_return__t2 (ite ( and var1793_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Bootstrap___t0 var1816_infix_expression__t0 var1853_return_value_of___err__check__t1 ) var1860_implicit_coercion_of___io__Result__Error__t0 var1787_return__t1) ) ) ; end branch ; branch returned. the rest of the function only happens if the condition leading to return never happened ; (not ( and var1793_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Bootstrap___t0 var1816_infix_expression__t0 var1853_return_value_of___err__check__t1 )) (assert (not ( and var1793_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Bootstrap___t0 var1816_infix_expression__t0 var1853_return_value_of___err__check__t1 )) ) ; : ./src/endpoint.zz:166 ; e, async) ; call ; : ./src/endpoint.zz:166 ; -> ; : ./src/endpoint.zz:166 ; self ; : ./src/endpoint.zz:166 ; -> ; : ./src/endpoint.zz:166 ; e, async) ; call of ::carrier::endpoint::poll ; : ./src/endpoint.zz:166 ; -> ; : ./src/endpoint.zz:166 ; self ; : ./src/endpoint.zz:166 ; e ; : ./src/endpoint.zz:166 ; async ; : ./src/endpoint.zz:166 ; self (declare-fun var1862_cast_of_self__t0 () (_ BitVec 64)) (assert (! (= var1862_cast_of_self__t0 var1770_self__t0) :named A34)); : ./src/endpoint.zz:149 ; +xt ; : ./src/endpoint.zz:166 ; e (declare-fun var1863_cast_of_e__t0 () (_ BitVec 64)) (assert (! (= var1863_cast_of_e__t0 var1775_e__t0) :named A35)); : ./src/endpoint.zz:149 ; +et ; : ./src/endpoint.zz:166 ; async ;callsite_assert (push 1) ; : ./src/endpoint.zz:149 ; * ; call of safe (declare-fun var1864_interpretation_of_theory_safe_over_async__t0 () Bool) (assert (= var1864_interpretation_of_theory_safe_over_async__t0 (theory1_safe var1780_async__t0) ) ) ; : ./src/endpoint.zz:149 ; * ; call of safe (declare-fun var1865_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (assert (= var1865_interpretation_of_theory_safe_over_cast_of_e__t0 (theory1_safe var1863_cast_of_e__t0) ) ) ; : ./src/endpoint.zz:149 ; * ; call of safe (declare-fun var1866_interpretation_of_theory_safe_over_cast_of_self__t0 () Bool) (assert (= var1866_interpretation_of_theory_safe_over_cast_of_self__t0 (theory1_safe var1862_cast_of_self__t0) ) ) ; : ./src/endpoint.zz:150 ; *e) ; call of ::err::checked ; : ./src/endpoint.zz:150 ; err::checked ; : ./src/endpoint.zz:150 ; *e ; : ./src/endpoint.zz:150 ; e ; : ./src/endpoint.zz:150 ; *e ; : ./src/endpoint.zz:150 ; e ; : ./src/endpoint.zz:150 ; *e (declare-fun var1867_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var1867_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t4) :named A36)); : ./src/endpoint.zz:150 ; e ; : ./src/endpoint.zz:150 ; *e (declare-fun var1868_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var1868_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t4) :named A37)); : ./src/endpoint.zz:150 ; *e) (declare-fun var1869_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (assert (= var1869_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 (theory86___err__checked var1868_cast_of_deref_S1775_e___t0) ) ) (push 1) (assert (and ( and var1793_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Bootstrap___t0 var1816_infix_expression__t0 ) (or (not var1864_interpretation_of_theory_safe_over_async__t0 ) (not var1865_interpretation_of_theory_safe_over_cast_of_e__t0 ) (not var1866_interpretation_of_theory_safe_over_cast_of_self__t0 ) (not var1869_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var1864_interpretation_of_theory_safe_over_async__t0 () Bool) (declare-fun var1865_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var1866_interpretation_of_theory_safe_over_cast_of_self__t0 () Bool) (declare-fun var1869_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) ; borrows after call ; 1772 to temporal +1 because of function borrow (declare-fun var1772_deref_S1770_self___t2 () (_ BitVec 64)) (assert (= var1772_deref_S1770_self___t2 (ite ( and var1793_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Bootstrap___t0 var1816_infix_expression__t0 ) var1772_deref_S1770_self___t2 var1772_deref_S1770_self___t1) ) ) ; 1777 to temporal +1 because of function borrow (declare-fun var1777_deref_S1775_e___t5 () (_ BitVec 64)) (assert (= var1777_deref_S1775_e___t5 (ite ( and var1793_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Bootstrap___t0 var1816_infix_expression__t0 ) var1777_deref_S1775_e___t5 var1777_deref_S1775_e___t4) ) ) ; end of borrows after call ; : ./src/endpoint.zz:166 ; e, async) ; callsite effects ; end of callsite effects (declare-fun var1870_return_value_of___carrier__endpoint__poll__t0 () (_ BitVec 64)) (declare-fun var1871_safe_return_value_of___carrier__endpoint__poll_____safe_return___t0 () Bool) (assert (= var1871_safe_return_value_of___carrier__endpoint__poll_____safe_return___t0 (theory1_safe var1870_return_value_of___carrier__endpoint__poll__t0) ) ) (declare-fun var1787_return__t3 () (_ BitVec 64)) (assert (= var1871_safe_return_value_of___carrier__endpoint__poll_____safe_return___t0 (theory1_safe var1787_return__t3) ) ) (declare-fun var1872_nullterm_return_value_of___carrier__endpoint__poll_____nullterm_return___t0 () Bool) (assert (= var1872_nullterm_return_value_of___carrier__endpoint__poll_____nullterm_return___t0 (theory2_nullterm var1870_return_value_of___carrier__endpoint__poll__t0) ) ) (assert (= var1872_nullterm_return_value_of___carrier__endpoint__poll_____nullterm_return___t0 (theory2_nullterm var1787_return__t3) ) ) (assert (= var1787_return__t3 (ite ( and var1793_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Bootstrap___t0 var1816_infix_expression__t0 ) var1870_return_value_of___carrier__endpoint__poll__t0 var1787_return__t2) ) ) ; end branch ; branch returned. the rest of the function only happens if the condition leading to return never happened ; (not ( and var1793_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Bootstrap___t0 var1816_infix_expression__t0 )) (assert (not ( and var1793_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Bootstrap___t0 var1816_infix_expression__t0 )) ) ; : ./src/endpoint.zz:170 ; State::Connecting ; : ./src/endpoint.zz:28 ; State (declare-fun var1873_implicit_coercion_of___carrier__endpoint__State__Connecting__t0 () (_ BitVec 64)) (assert (! (= var1873_implicit_coercion_of___carrier__endpoint__State__Connecting__t0 var1411___carrier__endpoint__State__Connecting__t0) :named A38)); : ./src/endpoint.zz:170 ; State::Connecting (declare-fun var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 () Bool) (assert (= var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 (= var1791_deref_S1770_self__state__t0 var1873_implicit_coercion_of___carrier__endpoint__State__Connecting__t0)) ) ; : ./src/endpoint.zz:173 ; &self->timeout) ; call of ::io::valid ; : ./src/endpoint.zz:173 ; io::valid ; : ./src/endpoint.zz:173 ; &self->timeout ; : ./src/endpoint.zz:173 ; -> ; : ./src/endpoint.zz:173 ; self ; : ./src/endpoint.zz:173 ; -> ; : ./src/endpoint.zz:173 ; &self->timeout (declare-fun var1876_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var1877_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (assert (= var1877_len_addressof_deref_S1770_self__timeout____t0 (theory0_len var1876_addressof_deref_S1770_self__timeout___t0) ) ) (assert (= var1877_len_addressof_deref_S1770_self__timeout____t0 (_ bv1 64)) ) (assert (= var1876_addressof_deref_S1770_self__timeout___t0 (_ bv1875 64)) ) (declare-fun var1878_true__t0 () Bool) (assert (= var1878_true__t0 (theory1_safe var1876_addressof_deref_S1770_self__timeout___t0) ) ) (assert var1878_true__t0 ) ; : ./src/endpoint.zz:173 ; -> ; : ./src/endpoint.zz:173 ; self ; : ./src/endpoint.zz:173 ; &self->timeout (declare-fun var1879_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var1880_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (assert (= var1880_len_addressof_deref_S1770_self__timeout____t0 (theory0_len var1879_addressof_deref_S1770_self__timeout___t0) ) ) (assert (= var1880_len_addressof_deref_S1770_self__timeout____t0 (_ bv1 64)) ) (assert (= var1879_addressof_deref_S1770_self__timeout___t0 (_ bv1875 64)) ) (declare-fun var1881_true__t0 () Bool) (assert (= var1881_true__t0 (theory1_safe var1879_addressof_deref_S1770_self__timeout___t0) ) ) (assert var1881_true__t0 ) (declare-fun var1883_addressof_deref_S1770_self__timeout_ctx___t0 () (_ BitVec 64)) (declare-fun var1884_len_addressof_deref_S1770_self__timeout_ctx____t0 () (_ BitVec 64)) (assert (= var1884_len_addressof_deref_S1770_self__timeout_ctx____t0 (theory0_len var1883_addressof_deref_S1770_self__timeout_ctx___t0) ) ) (assert (= var1884_len_addressof_deref_S1770_self__timeout_ctx____t0 (_ bv1 64)) ) (assert (= var1883_addressof_deref_S1770_self__timeout_ctx___t0 (_ bv1882 64)) ) (declare-fun var1885_true__t0 () Bool) (assert (= var1885_true__t0 (theory1_safe var1883_addressof_deref_S1770_self__timeout_ctx___t0) ) ) (assert var1885_true__t0 ) ; : ./src/endpoint.zz:173 ; -> ; : ./src/endpoint.zz:173 ; self ; : ./src/endpoint.zz:173 ; &self->timeout (declare-fun var1886_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var1887_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (assert (= var1887_len_addressof_deref_S1770_self__timeout____t0 (theory0_len var1886_addressof_deref_S1770_self__timeout___t0) ) ) (assert (= var1887_len_addressof_deref_S1770_self__timeout____t0 (_ bv1 64)) ) (assert (= var1886_addressof_deref_S1770_self__timeout___t0 (_ bv1875 64)) ) (declare-fun var1888_true__t0 () Bool) (assert (= var1888_true__t0 (theory1_safe var1886_addressof_deref_S1770_self__timeout___t0) ) ) (assert var1888_true__t0 ) (declare-fun var1889_addressof_deref_S1770_self__timeout_ctx___t0 () (_ BitVec 64)) (declare-fun var1890_len_addressof_deref_S1770_self__timeout_ctx____t0 () (_ BitVec 64)) (assert (= var1890_len_addressof_deref_S1770_self__timeout_ctx____t0 (theory0_len var1889_addressof_deref_S1770_self__timeout_ctx___t0) ) ) (assert (= var1890_len_addressof_deref_S1770_self__timeout_ctx____t0 (_ bv1 64)) ) (assert (= var1889_addressof_deref_S1770_self__timeout_ctx___t0 (_ bv1882 64)) ) (declare-fun var1891_true__t0 () Bool) (assert (= var1891_true__t0 (theory1_safe var1889_addressof_deref_S1770_self__timeout_ctx___t0) ) ) (assert var1891_true__t0 ) ; : ./src/endpoint.zz:173 ; -> ; : ./src/endpoint.zz:173 ; self ; : ./src/endpoint.zz:173 ; &self->timeout (declare-fun var1892_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var1893_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (assert (= var1893_len_addressof_deref_S1770_self__timeout____t0 (theory0_len var1892_addressof_deref_S1770_self__timeout___t0) ) ) (assert (= var1893_len_addressof_deref_S1770_self__timeout____t0 (_ bv1 64)) ) (assert (= var1892_addressof_deref_S1770_self__timeout___t0 (_ bv1875 64)) ) (declare-fun var1894_true__t0 () Bool) (assert (= var1894_true__t0 (theory1_safe var1892_addressof_deref_S1770_self__timeout___t0) ) ) (assert var1894_true__t0 ) (declare-fun var1895_addressof_deref_S1770_self__timeout_ctx___t0 () (_ BitVec 64)) (declare-fun var1896_len_addressof_deref_S1770_self__timeout_ctx____t0 () (_ BitVec 64)) (assert (= var1896_len_addressof_deref_S1770_self__timeout_ctx____t0 (theory0_len var1895_addressof_deref_S1770_self__timeout_ctx___t0) ) ) (assert (= var1896_len_addressof_deref_S1770_self__timeout_ctx____t0 (_ bv1 64)) ) (assert (= var1895_addressof_deref_S1770_self__timeout_ctx___t0 (_ bv1882 64)) ) (declare-fun var1897_true__t0 () Bool) (assert (= var1897_true__t0 (theory1_safe var1895_addressof_deref_S1770_self__timeout_ctx___t0) ) ) (assert var1897_true__t0 ) ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:52 ; * ; call of safe (declare-fun var1898_interpretation_of_theory_safe_over_addressof_deref_S1770_self__timeout_ctx___t0 () Bool) (assert (= var1898_interpretation_of_theory_safe_over_addressof_deref_S1770_self__timeout_ctx___t0 (theory1_safe var1895_addressof_deref_S1770_self__timeout_ctx___t0) ) ) (push 1) (assert (and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 (or (not var1898_interpretation_of_theory_safe_over_addressof_deref_S1770_self__timeout_ctx___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var1898_interpretation_of_theory_safe_over_addressof_deref_S1770_self__timeout_ctx___t0 () Bool) ; borrows after call ; end of borrows after call ; : ./src/endpoint.zz:173 ; &self->timeout) ; callsite effects ; end of callsite effects (declare-fun var1899_return_value_of___io__valid__t0 () Bool) (check-sat) (get-value ( var1899_return_value_of___io__valid__t0 ) ) ; = "false" (push 1) (assert (not (= var1899_return_value_of___io__valid__t0 false)) ) (check-sat) (pop 1) ; : ./src/endpoint.zz:173 ; if io::valid(&self->timeout) { ; async->select(e, &self->timeout, io::Ready::Read); ; if err::check(e) {return io::Result::Error; } ; } ; : ./src/endpoint.zz:174 ; e, &self->timeout, io::Ready::Read) ; call ; : ./src/endpoint.zz:174 ; -> ; : ./src/endpoint.zz:174 ; async ; : ./src/endpoint.zz:174 ; -> ; begin safe ptr check (declare-fun var1901_safe_async___t0 () Bool) (assert (= var1901_safe_async___t0 (theory1_safe var1780_async__t0) ) ) (push 1) (assert (and ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1899_return_value_of___io__valid__t0 ) (or (not var1901_safe_async___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ; : ./src/endpoint.zz:174 ; e, &self->timeout, io::Ready::Read) ; call of ::io::select ; : ./src/endpoint.zz:174 ; -> ; : ./src/endpoint.zz:174 ; async ; : ./src/endpoint.zz:174 ; e ; : ./src/endpoint.zz:174 ; &self->timeout ; : ./src/endpoint.zz:174 ; -> ; : ./src/endpoint.zz:174 ; self ; : ./src/endpoint.zz:174 ; &self->timeout (declare-fun var1903_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var1904_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (assert (= var1904_len_addressof_deref_S1770_self__timeout____t0 (theory0_len var1903_addressof_deref_S1770_self__timeout___t0) ) ) (assert (= var1904_len_addressof_deref_S1770_self__timeout____t0 (_ bv1 64)) ) (assert (= var1903_addressof_deref_S1770_self__timeout___t0 (_ bv1875 64)) ) (declare-fun var1905_true__t0 () Bool) (assert (= var1905_true__t0 (theory1_safe var1903_addressof_deref_S1770_self__timeout___t0) ) ) (assert var1905_true__t0 ) ; : ./src/endpoint.zz:174 ; -> ; : ./src/endpoint.zz:174 ; self ; : ./src/endpoint.zz:174 ; &self->timeout (declare-fun var1906_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var1907_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (assert (= var1907_len_addressof_deref_S1770_self__timeout____t0 (theory0_len var1906_addressof_deref_S1770_self__timeout___t0) ) ) (assert (= var1907_len_addressof_deref_S1770_self__timeout____t0 (_ bv1 64)) ) (assert (= var1906_addressof_deref_S1770_self__timeout___t0 (_ bv1875 64)) ) (declare-fun var1908_true__t0 () Bool) (assert (= var1908_true__t0 (theory1_safe var1906_addressof_deref_S1770_self__timeout___t0) ) ) (assert var1908_true__t0 ) (declare-fun var1909_addressof_deref_S1770_self__timeout_ctx___t0 () (_ BitVec 64)) (declare-fun var1910_len_addressof_deref_S1770_self__timeout_ctx____t0 () (_ BitVec 64)) (assert (= var1910_len_addressof_deref_S1770_self__timeout_ctx____t0 (theory0_len var1909_addressof_deref_S1770_self__timeout_ctx___t0) ) ) (assert (= var1910_len_addressof_deref_S1770_self__timeout_ctx____t0 (_ bv1 64)) ) (assert (= var1909_addressof_deref_S1770_self__timeout_ctx___t0 (_ bv1882 64)) ) (declare-fun var1911_true__t0 () Bool) (assert (= var1911_true__t0 (theory1_safe var1909_addressof_deref_S1770_self__timeout_ctx___t0) ) ) (assert var1911_true__t0 ) ; : ./src/endpoint.zz:174 ; -> ; : ./src/endpoint.zz:174 ; self ; : ./src/endpoint.zz:174 ; &self->timeout (declare-fun var1912_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var1913_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (assert (= var1913_len_addressof_deref_S1770_self__timeout____t0 (theory0_len var1912_addressof_deref_S1770_self__timeout___t0) ) ) (assert (= var1913_len_addressof_deref_S1770_self__timeout____t0 (_ bv1 64)) ) (assert (= var1912_addressof_deref_S1770_self__timeout___t0 (_ bv1875 64)) ) (declare-fun var1914_true__t0 () Bool) (assert (= var1914_true__t0 (theory1_safe var1912_addressof_deref_S1770_self__timeout___t0) ) ) (assert var1914_true__t0 ) (declare-fun var1915_addressof_deref_S1770_self__timeout_ctx___t0 () (_ BitVec 64)) (declare-fun var1916_len_addressof_deref_S1770_self__timeout_ctx____t0 () (_ BitVec 64)) (assert (= var1916_len_addressof_deref_S1770_self__timeout_ctx____t0 (theory0_len var1915_addressof_deref_S1770_self__timeout_ctx___t0) ) ) (assert (= var1916_len_addressof_deref_S1770_self__timeout_ctx____t0 (_ bv1 64)) ) (assert (= var1915_addressof_deref_S1770_self__timeout_ctx___t0 (_ bv1882 64)) ) (declare-fun var1917_true__t0 () Bool) (assert (= var1917_true__t0 (theory1_safe var1915_addressof_deref_S1770_self__timeout_ctx___t0) ) ) (assert var1917_true__t0 ) ; : ./src/endpoint.zz:174 ; io::Ready::Read ; : ./src/endpoint.zz:174 ; async ; : ./src/endpoint.zz:174 ; e (declare-fun var1918_cast_of_e__t0 () (_ BitVec 64)) (assert (! (= var1918_cast_of_e__t0 var1775_e__t0) :named A39)); : ./src/endpoint.zz:149 ; +et ; : ./src/endpoint.zz:174 ; &self->timeout ; : ./src/endpoint.zz:174 ; -> ; : ./src/endpoint.zz:174 ; self ; : ./src/endpoint.zz:174 ; &self->timeout (declare-fun var1919_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var1920_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (assert (= var1920_len_addressof_deref_S1770_self__timeout____t0 (theory0_len var1919_addressof_deref_S1770_self__timeout___t0) ) ) (assert (= var1920_len_addressof_deref_S1770_self__timeout____t0 (_ bv1 64)) ) (assert (= var1919_addressof_deref_S1770_self__timeout___t0 (_ bv1875 64)) ) (declare-fun var1921_true__t0 () Bool) (assert (= var1921_true__t0 (theory1_safe var1919_addressof_deref_S1770_self__timeout___t0) ) ) (assert var1921_true__t0 ) (declare-fun var1922_addressof_deref_S1770_self__timeout_ctx___t0 () (_ BitVec 64)) (declare-fun var1923_len_addressof_deref_S1770_self__timeout_ctx____t0 () (_ BitVec 64)) (assert (= var1923_len_addressof_deref_S1770_self__timeout_ctx____t0 (theory0_len var1922_addressof_deref_S1770_self__timeout_ctx___t0) ) ) (assert (= var1923_len_addressof_deref_S1770_self__timeout_ctx____t0 (_ bv1 64)) ) (assert (= var1922_addressof_deref_S1770_self__timeout_ctx___t0 (_ bv1882 64)) ) (declare-fun var1924_true__t0 () Bool) (assert (= var1924_true__t0 (theory1_safe var1922_addressof_deref_S1770_self__timeout_ctx___t0) ) ) (assert var1924_true__t0 ) ; : ./src/endpoint.zz:174 ; io::Ready::Read ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:192 ; * ; call of safe (declare-fun var1925_interpretation_of_theory_safe_over_addressof_deref_S1770_self__timeout_ctx___t0 () Bool) (assert (= var1925_interpretation_of_theory_safe_over_addressof_deref_S1770_self__timeout_ctx___t0 (theory1_safe var1922_addressof_deref_S1770_self__timeout_ctx___t0) ) ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:192 ; * ; call of safe (declare-fun var1926_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (assert (= var1926_interpretation_of_theory_safe_over_cast_of_e__t0 (theory1_safe var1918_cast_of_e__t0) ) ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:192 ; * ; call of safe (declare-fun var1927_interpretation_of_theory_safe_over_async__t0 () Bool) (assert (= var1927_interpretation_of_theory_safe_over_async__t0 (theory1_safe var1780_async__t0) ) ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; *e) ; call of ::err::checked ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; err::checked ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; *e ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; e ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; *e ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; e ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; *e (declare-fun var1928_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var1928_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t5) :named A40)); : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; e ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; *e (declare-fun var1929_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var1929_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t5) :named A41)); : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; *e) (declare-fun var1930_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (assert (= var1930_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 (theory86___err__checked var1929_cast_of_deref_S1775_e___t0) ) ) (push 1) (assert (and ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1899_return_value_of___io__valid__t0 ) (or (not var1925_interpretation_of_theory_safe_over_addressof_deref_S1770_self__timeout_ctx___t0 ) (not var1926_interpretation_of_theory_safe_over_cast_of_e__t0 ) (not var1927_interpretation_of_theory_safe_over_async__t0 ) (not var1930_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var1925_interpretation_of_theory_safe_over_addressof_deref_S1770_self__timeout_ctx___t0 () Bool) (declare-fun var1926_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var1927_interpretation_of_theory_safe_over_async__t0 () Bool) (declare-fun var1930_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) ; borrows after call ; 1900 to temporal +1 because of function borrow (declare-fun var1900_deref_S1780_async___t1 () (_ BitVec 64)) (declare-fun var1900_deref_S1780_async___t0 () (_ BitVec 64)) (assert (= var1900_deref_S1780_async___t1 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1899_return_value_of___io__valid__t0 ) var1900_deref_S1780_async___t1 var1900_deref_S1780_async___t0) ) ) ; 1777 to temporal +1 because of function borrow (declare-fun var1777_deref_S1775_e___t6 () (_ BitVec 64)) (assert (= var1777_deref_S1775_e___t6 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1899_return_value_of___io__valid__t0 ) var1777_deref_S1775_e___t6 var1777_deref_S1775_e___t5) ) ) ; 1882 to temporal +1 because of function borrow (declare-fun var1882_deref_S1770_self__timeout_ctx__t1 () (_ BitVec 64)) (declare-fun var1882_deref_S1770_self__timeout_ctx__t0 () (_ BitVec 64)) (assert (= var1882_deref_S1770_self__timeout_ctx__t1 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1899_return_value_of___io__valid__t0 ) var1882_deref_S1770_self__timeout_ctx__t1 var1882_deref_S1770_self__timeout_ctx__t0) ) ) ; end of borrows after call ; : ./src/endpoint.zz:174 ; e, &self->timeout, io::Ready::Read) ; callsite effects ; end of callsite effects ; : ./src/endpoint.zz:175 ; e) ; call of ::err::check ; : ./src/endpoint.zz:175 ; err::check ; : ./src/endpoint.zz:175 ; e (declare-fun var1932_cast_of_e__t0 () (_ BitVec 64)) (assert (! (= var1932_cast_of_e__t0 var1775_e__t0) :named A42)); : ./src/endpoint.zz:149 ; +et ; : /home/aep/proj/zz/modules/err/./src/lib.zz:28 ; callsite_source (declare-fun var1933_literal_string____src_endpoint_zz___t0 () (_ BitVec 64)) (declare-fun var1934_true__t0 () Bool) (assert (= var1934_true__t0 (theory1_safe var1933_literal_string____src_endpoint_zz___t0) ) ) (assert var1934_true__t0 ) (declare-fun var1935_true__t0 () Bool) (assert (= var1935_true__t0 (theory2_nullterm var1933_literal_string____src_endpoint_zz___t0) ) ) (assert var1935_true__t0 ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:29 ; callsite_source (declare-fun var1936_literal_string____carrier__endpoint__poll___t0 () (_ BitVec 64)) (declare-fun var1937_true__t0 () Bool) (assert (= var1937_true__t0 (theory1_safe var1936_literal_string____carrier__endpoint__poll___t0) ) ) (assert var1937_true__t0 ) (declare-fun var1938_true__t0 () Bool) (assert (= var1938_true__t0 (theory2_nullterm var1936_literal_string____carrier__endpoint__poll___t0) ) ) (assert var1938_true__t0 ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:30 ; callsite_source ; literal expr (declare-fun var1939_literal_175__t0 () (_ BitVec 64)) (assert (= var1939_literal_175__t0 (_ bv175 64)) ) ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:27 ; * ; call of safe (declare-fun var1940_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (assert (= var1940_interpretation_of_theory_safe_over_cast_of_e__t0 (theory1_safe var1932_cast_of_e__t0) ) ) (push 1) (assert (and ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1899_return_value_of___io__valid__t0 ) (or (not var1940_interpretation_of_theory_safe_over_cast_of_e__t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var1940_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) ; borrows after call ; 1777 to temporal +1 because of function borrow (declare-fun var1777_deref_S1775_e___t7 () (_ BitVec 64)) (assert (= var1777_deref_S1775_e___t7 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1899_return_value_of___io__valid__t0 ) var1777_deref_S1775_e___t7 var1777_deref_S1775_e___t6) ) ) ; end of borrows after call ; : ./src/endpoint.zz:175 ; e) ; callsite effects (declare-fun var1942_return__t1 () Bool) (declare-fun var1941_return_value_of___err__check__t0 () Bool) (declare-fun var1942_return__t0 () Bool) (assert (= var1942_return__t1 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1899_return_value_of___io__valid__t0 ) var1941_return_value_of___err__check__t0 var1942_return__t0) ) ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self) ; call of ::err::checked ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; checked ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self (declare-fun var1943_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var1943_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t7) :named A43)); : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self (declare-fun var1944_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var1944_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t7) :named A44)); : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self) (declare-fun var1945_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (assert (= var1945_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 (theory86___err__checked var1944_cast_of_deref_S1775_e___t0) ) ) (assert (! var1945_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 :named A45))(check-sat) (declare-fun var1941_return_value_of___err__check__t1 () Bool) (assert (= var1941_return_value_of___err__check__t1 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1899_return_value_of___io__valid__t0 ) var1942_return__t1 var1941_return_value_of___err__check__t0) ) ) ; end of callsite effects (check-sat) (get-value ( var1941_return_value_of___err__check__t1 ) ) ; = "false" (push 1) (assert (not (= var1941_return_value_of___err__check__t1 false)) ) (check-sat) (pop 1) ; : ./src/endpoint.zz:175 ; e) ; : ./src/endpoint.zz:175 ; if err::check(e) {return io::Result::Error; } ; : ./src/endpoint.zz:175 ; io::Result::Error (declare-fun var1946_safe___io__Result__Error_____safe_return___t0 () Bool) (assert (= var1946_safe___io__Result__Error_____safe_return___t0 (theory1_safe var250___io__Result__Error__t0) ) ) (declare-fun var1787_return__t4 () (_ BitVec 64)) (assert (= var1946_safe___io__Result__Error_____safe_return___t0 (theory1_safe var1787_return__t4) ) ) (declare-fun var1947_nullterm___io__Result__Error_____nullterm_return___t0 () Bool) (assert (= var1947_nullterm___io__Result__Error_____nullterm_return___t0 (theory2_nullterm var250___io__Result__Error__t0) ) ) (assert (= var1947_nullterm___io__Result__Error_____nullterm_return___t0 (theory2_nullterm var1787_return__t4) ) ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:24 ; Result (declare-fun var1948_implicit_coercion_of___io__Result__Error__t0 () (_ BitVec 64)) (assert (! (= var1948_implicit_coercion_of___io__Result__Error__t0 var250___io__Result__Error__t0) :named A46))(assert (= var1787_return__t4 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1899_return_value_of___io__valid__t0 var1941_return_value_of___err__check__t1 ) var1948_implicit_coercion_of___io__Result__Error__t0 var1787_return__t3) ) ) ; end branch ; branch returned. the rest of the function only happens if the condition leading to return never happened ; (not ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1899_return_value_of___io__valid__t0 var1941_return_value_of___err__check__t1 )) (assert (not ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1899_return_value_of___io__valid__t0 var1941_return_value_of___err__check__t1 )) ) ; end branch ; : ./src/endpoint.zz:177 ; &self->udp4) ; call of ::io::valid ; : ./src/endpoint.zz:177 ; io::valid ; : ./src/endpoint.zz:177 ; &self->udp4 ; : ./src/endpoint.zz:177 ; -> ; : ./src/endpoint.zz:177 ; self ; : ./src/endpoint.zz:177 ; -> ; : ./src/endpoint.zz:177 ; &self->udp4 (declare-fun var1950_addressof_deref_S1770_self__udp4___t0 () (_ BitVec 64)) (declare-fun var1951_len_addressof_deref_S1770_self__udp4____t0 () (_ BitVec 64)) (assert (= var1951_len_addressof_deref_S1770_self__udp4____t0 (theory0_len var1950_addressof_deref_S1770_self__udp4___t0) ) ) (assert (= var1951_len_addressof_deref_S1770_self__udp4____t0 (_ bv1 64)) ) (assert (= var1950_addressof_deref_S1770_self__udp4___t0 (_ bv1949 64)) ) (declare-fun var1952_true__t0 () Bool) (assert (= var1952_true__t0 (theory1_safe var1950_addressof_deref_S1770_self__udp4___t0) ) ) (assert var1952_true__t0 ) ; : ./src/endpoint.zz:177 ; -> ; : ./src/endpoint.zz:177 ; self ; : ./src/endpoint.zz:177 ; &self->udp4 (declare-fun var1953_addressof_deref_S1770_self__udp4___t0 () (_ BitVec 64)) (declare-fun var1954_len_addressof_deref_S1770_self__udp4____t0 () (_ BitVec 64)) (assert (= var1954_len_addressof_deref_S1770_self__udp4____t0 (theory0_len var1953_addressof_deref_S1770_self__udp4___t0) ) ) (assert (= var1954_len_addressof_deref_S1770_self__udp4____t0 (_ bv1 64)) ) (assert (= var1953_addressof_deref_S1770_self__udp4___t0 (_ bv1949 64)) ) (declare-fun var1955_true__t0 () Bool) (assert (= var1955_true__t0 (theory1_safe var1953_addressof_deref_S1770_self__udp4___t0) ) ) (assert var1955_true__t0 ) (declare-fun var1957_addressof_deref_S1770_self__udp4_ctx___t0 () (_ BitVec 64)) (declare-fun var1958_len_addressof_deref_S1770_self__udp4_ctx____t0 () (_ BitVec 64)) (assert (= var1958_len_addressof_deref_S1770_self__udp4_ctx____t0 (theory0_len var1957_addressof_deref_S1770_self__udp4_ctx___t0) ) ) (assert (= var1958_len_addressof_deref_S1770_self__udp4_ctx____t0 (_ bv1 64)) ) (assert (= var1957_addressof_deref_S1770_self__udp4_ctx___t0 (_ bv1956 64)) ) (declare-fun var1959_true__t0 () Bool) (assert (= var1959_true__t0 (theory1_safe var1957_addressof_deref_S1770_self__udp4_ctx___t0) ) ) (assert var1959_true__t0 ) ; : ./src/endpoint.zz:177 ; -> ; : ./src/endpoint.zz:177 ; self ; : ./src/endpoint.zz:177 ; &self->udp4 (declare-fun var1960_addressof_deref_S1770_self__udp4___t0 () (_ BitVec 64)) (declare-fun var1961_len_addressof_deref_S1770_self__udp4____t0 () (_ BitVec 64)) (assert (= var1961_len_addressof_deref_S1770_self__udp4____t0 (theory0_len var1960_addressof_deref_S1770_self__udp4___t0) ) ) (assert (= var1961_len_addressof_deref_S1770_self__udp4____t0 (_ bv1 64)) ) (assert (= var1960_addressof_deref_S1770_self__udp4___t0 (_ bv1949 64)) ) (declare-fun var1962_true__t0 () Bool) (assert (= var1962_true__t0 (theory1_safe var1960_addressof_deref_S1770_self__udp4___t0) ) ) (assert var1962_true__t0 ) (declare-fun var1963_addressof_deref_S1770_self__udp4_ctx___t0 () (_ BitVec 64)) (declare-fun var1964_len_addressof_deref_S1770_self__udp4_ctx____t0 () (_ BitVec 64)) (assert (= var1964_len_addressof_deref_S1770_self__udp4_ctx____t0 (theory0_len var1963_addressof_deref_S1770_self__udp4_ctx___t0) ) ) (assert (= var1964_len_addressof_deref_S1770_self__udp4_ctx____t0 (_ bv1 64)) ) (assert (= var1963_addressof_deref_S1770_self__udp4_ctx___t0 (_ bv1956 64)) ) (declare-fun var1965_true__t0 () Bool) (assert (= var1965_true__t0 (theory1_safe var1963_addressof_deref_S1770_self__udp4_ctx___t0) ) ) (assert var1965_true__t0 ) ; : ./src/endpoint.zz:177 ; -> ; : ./src/endpoint.zz:177 ; self ; : ./src/endpoint.zz:177 ; &self->udp4 (declare-fun var1966_addressof_deref_S1770_self__udp4___t0 () (_ BitVec 64)) (declare-fun var1967_len_addressof_deref_S1770_self__udp4____t0 () (_ BitVec 64)) (assert (= var1967_len_addressof_deref_S1770_self__udp4____t0 (theory0_len var1966_addressof_deref_S1770_self__udp4___t0) ) ) (assert (= var1967_len_addressof_deref_S1770_self__udp4____t0 (_ bv1 64)) ) (assert (= var1966_addressof_deref_S1770_self__udp4___t0 (_ bv1949 64)) ) (declare-fun var1968_true__t0 () Bool) (assert (= var1968_true__t0 (theory1_safe var1966_addressof_deref_S1770_self__udp4___t0) ) ) (assert var1968_true__t0 ) (declare-fun var1969_addressof_deref_S1770_self__udp4_ctx___t0 () (_ BitVec 64)) (declare-fun var1970_len_addressof_deref_S1770_self__udp4_ctx____t0 () (_ BitVec 64)) (assert (= var1970_len_addressof_deref_S1770_self__udp4_ctx____t0 (theory0_len var1969_addressof_deref_S1770_self__udp4_ctx___t0) ) ) (assert (= var1970_len_addressof_deref_S1770_self__udp4_ctx____t0 (_ bv1 64)) ) (assert (= var1969_addressof_deref_S1770_self__udp4_ctx___t0 (_ bv1956 64)) ) (declare-fun var1971_true__t0 () Bool) (assert (= var1971_true__t0 (theory1_safe var1969_addressof_deref_S1770_self__udp4_ctx___t0) ) ) (assert var1971_true__t0 ) ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:52 ; * ; call of safe (declare-fun var1972_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp4_ctx___t0 () Bool) (assert (= var1972_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp4_ctx___t0 (theory1_safe var1969_addressof_deref_S1770_self__udp4_ctx___t0) ) ) (push 1) (assert (and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 (or (not var1972_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp4_ctx___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var1972_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp4_ctx___t0 () Bool) ; borrows after call ; end of borrows after call ; : ./src/endpoint.zz:177 ; &self->udp4) ; callsite effects ; end of callsite effects (declare-fun var1973_return_value_of___io__valid__t0 () Bool) (check-sat) (get-value ( var1973_return_value_of___io__valid__t0 ) ) ; = "false" (push 1) (assert (not (= var1973_return_value_of___io__valid__t0 false)) ) (check-sat) (pop 1) ; : ./src/endpoint.zz:177 ; if io::valid(&self->udp4) { ; async->select(e, &self->udp4, io::Ready::Read); ; if err::check(e) {return io::Result::Error; } ; } ; : ./src/endpoint.zz:178 ; e, &self->udp4, io::Ready::Read) ; call ; : ./src/endpoint.zz:178 ; -> ; : ./src/endpoint.zz:178 ; async ; : ./src/endpoint.zz:178 ; -> ; : ./src/endpoint.zz:178 ; e, &self->udp4, io::Ready::Read) ; call of ::io::select ; : ./src/endpoint.zz:178 ; -> ; : ./src/endpoint.zz:178 ; async ; : ./src/endpoint.zz:178 ; e ; : ./src/endpoint.zz:178 ; &self->udp4 ; : ./src/endpoint.zz:178 ; -> ; : ./src/endpoint.zz:178 ; self ; : ./src/endpoint.zz:178 ; &self->udp4 (declare-fun var1975_addressof_deref_S1770_self__udp4___t0 () (_ BitVec 64)) (declare-fun var1976_len_addressof_deref_S1770_self__udp4____t0 () (_ BitVec 64)) (assert (= var1976_len_addressof_deref_S1770_self__udp4____t0 (theory0_len var1975_addressof_deref_S1770_self__udp4___t0) ) ) (assert (= var1976_len_addressof_deref_S1770_self__udp4____t0 (_ bv1 64)) ) (assert (= var1975_addressof_deref_S1770_self__udp4___t0 (_ bv1949 64)) ) (declare-fun var1977_true__t0 () Bool) (assert (= var1977_true__t0 (theory1_safe var1975_addressof_deref_S1770_self__udp4___t0) ) ) (assert var1977_true__t0 ) ; : ./src/endpoint.zz:178 ; -> ; : ./src/endpoint.zz:178 ; self ; : ./src/endpoint.zz:178 ; &self->udp4 (declare-fun var1978_addressof_deref_S1770_self__udp4___t0 () (_ BitVec 64)) (declare-fun var1979_len_addressof_deref_S1770_self__udp4____t0 () (_ BitVec 64)) (assert (= var1979_len_addressof_deref_S1770_self__udp4____t0 (theory0_len var1978_addressof_deref_S1770_self__udp4___t0) ) ) (assert (= var1979_len_addressof_deref_S1770_self__udp4____t0 (_ bv1 64)) ) (assert (= var1978_addressof_deref_S1770_self__udp4___t0 (_ bv1949 64)) ) (declare-fun var1980_true__t0 () Bool) (assert (= var1980_true__t0 (theory1_safe var1978_addressof_deref_S1770_self__udp4___t0) ) ) (assert var1980_true__t0 ) (declare-fun var1981_addressof_deref_S1770_self__udp4_ctx___t0 () (_ BitVec 64)) (declare-fun var1982_len_addressof_deref_S1770_self__udp4_ctx____t0 () (_ BitVec 64)) (assert (= var1982_len_addressof_deref_S1770_self__udp4_ctx____t0 (theory0_len var1981_addressof_deref_S1770_self__udp4_ctx___t0) ) ) (assert (= var1982_len_addressof_deref_S1770_self__udp4_ctx____t0 (_ bv1 64)) ) (assert (= var1981_addressof_deref_S1770_self__udp4_ctx___t0 (_ bv1956 64)) ) (declare-fun var1983_true__t0 () Bool) (assert (= var1983_true__t0 (theory1_safe var1981_addressof_deref_S1770_self__udp4_ctx___t0) ) ) (assert var1983_true__t0 ) ; : ./src/endpoint.zz:178 ; -> ; : ./src/endpoint.zz:178 ; self ; : ./src/endpoint.zz:178 ; &self->udp4 (declare-fun var1984_addressof_deref_S1770_self__udp4___t0 () (_ BitVec 64)) (declare-fun var1985_len_addressof_deref_S1770_self__udp4____t0 () (_ BitVec 64)) (assert (= var1985_len_addressof_deref_S1770_self__udp4____t0 (theory0_len var1984_addressof_deref_S1770_self__udp4___t0) ) ) (assert (= var1985_len_addressof_deref_S1770_self__udp4____t0 (_ bv1 64)) ) (assert (= var1984_addressof_deref_S1770_self__udp4___t0 (_ bv1949 64)) ) (declare-fun var1986_true__t0 () Bool) (assert (= var1986_true__t0 (theory1_safe var1984_addressof_deref_S1770_self__udp4___t0) ) ) (assert var1986_true__t0 ) (declare-fun var1987_addressof_deref_S1770_self__udp4_ctx___t0 () (_ BitVec 64)) (declare-fun var1988_len_addressof_deref_S1770_self__udp4_ctx____t0 () (_ BitVec 64)) (assert (= var1988_len_addressof_deref_S1770_self__udp4_ctx____t0 (theory0_len var1987_addressof_deref_S1770_self__udp4_ctx___t0) ) ) (assert (= var1988_len_addressof_deref_S1770_self__udp4_ctx____t0 (_ bv1 64)) ) (assert (= var1987_addressof_deref_S1770_self__udp4_ctx___t0 (_ bv1956 64)) ) (declare-fun var1989_true__t0 () Bool) (assert (= var1989_true__t0 (theory1_safe var1987_addressof_deref_S1770_self__udp4_ctx___t0) ) ) (assert var1989_true__t0 ) ; : ./src/endpoint.zz:178 ; io::Ready::Read ; : ./src/endpoint.zz:178 ; async ; : ./src/endpoint.zz:178 ; e (declare-fun var1990_cast_of_e__t0 () (_ BitVec 64)) (assert (! (= var1990_cast_of_e__t0 var1775_e__t0) :named A47)); : ./src/endpoint.zz:149 ; +et ; : ./src/endpoint.zz:178 ; &self->udp4 ; : ./src/endpoint.zz:178 ; -> ; : ./src/endpoint.zz:178 ; self ; : ./src/endpoint.zz:178 ; &self->udp4 (declare-fun var1991_addressof_deref_S1770_self__udp4___t0 () (_ BitVec 64)) (declare-fun var1992_len_addressof_deref_S1770_self__udp4____t0 () (_ BitVec 64)) (assert (= var1992_len_addressof_deref_S1770_self__udp4____t0 (theory0_len var1991_addressof_deref_S1770_self__udp4___t0) ) ) (assert (= var1992_len_addressof_deref_S1770_self__udp4____t0 (_ bv1 64)) ) (assert (= var1991_addressof_deref_S1770_self__udp4___t0 (_ bv1949 64)) ) (declare-fun var1993_true__t0 () Bool) (assert (= var1993_true__t0 (theory1_safe var1991_addressof_deref_S1770_self__udp4___t0) ) ) (assert var1993_true__t0 ) (declare-fun var1994_addressof_deref_S1770_self__udp4_ctx___t0 () (_ BitVec 64)) (declare-fun var1995_len_addressof_deref_S1770_self__udp4_ctx____t0 () (_ BitVec 64)) (assert (= var1995_len_addressof_deref_S1770_self__udp4_ctx____t0 (theory0_len var1994_addressof_deref_S1770_self__udp4_ctx___t0) ) ) (assert (= var1995_len_addressof_deref_S1770_self__udp4_ctx____t0 (_ bv1 64)) ) (assert (= var1994_addressof_deref_S1770_self__udp4_ctx___t0 (_ bv1956 64)) ) (declare-fun var1996_true__t0 () Bool) (assert (= var1996_true__t0 (theory1_safe var1994_addressof_deref_S1770_self__udp4_ctx___t0) ) ) (assert var1996_true__t0 ) ; : ./src/endpoint.zz:178 ; io::Ready::Read ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:192 ; * ; call of safe (declare-fun var1997_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp4_ctx___t0 () Bool) (assert (= var1997_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp4_ctx___t0 (theory1_safe var1994_addressof_deref_S1770_self__udp4_ctx___t0) ) ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:192 ; * ; call of safe (declare-fun var1998_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (assert (= var1998_interpretation_of_theory_safe_over_cast_of_e__t0 (theory1_safe var1990_cast_of_e__t0) ) ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:192 ; * ; call of safe (declare-fun var1999_interpretation_of_theory_safe_over_async__t0 () Bool) (assert (= var1999_interpretation_of_theory_safe_over_async__t0 (theory1_safe var1780_async__t0) ) ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; *e) ; call of ::err::checked ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; err::checked ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; *e ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; e ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; *e ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; e ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; *e (declare-fun var2000_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2000_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t7) :named A48)); : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; e ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; *e (declare-fun var2001_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2001_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t7) :named A49)); : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; *e) (declare-fun var2002_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (assert (= var2002_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 (theory86___err__checked var2001_cast_of_deref_S1775_e___t0) ) ) (push 1) (assert (and ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1973_return_value_of___io__valid__t0 ) (or (not var1997_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp4_ctx___t0 ) (not var1998_interpretation_of_theory_safe_over_cast_of_e__t0 ) (not var1999_interpretation_of_theory_safe_over_async__t0 ) (not var2002_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var1997_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp4_ctx___t0 () Bool) (declare-fun var1998_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var1999_interpretation_of_theory_safe_over_async__t0 () Bool) (declare-fun var2002_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) ; borrows after call ; 1900 to temporal +1 because of function borrow (declare-fun var1900_deref_S1780_async___t2 () (_ BitVec 64)) (assert (= var1900_deref_S1780_async___t2 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1973_return_value_of___io__valid__t0 ) var1900_deref_S1780_async___t2 var1900_deref_S1780_async___t1) ) ) ; 1777 to temporal +1 because of function borrow (declare-fun var1777_deref_S1775_e___t8 () (_ BitVec 64)) (assert (= var1777_deref_S1775_e___t8 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1973_return_value_of___io__valid__t0 ) var1777_deref_S1775_e___t8 var1777_deref_S1775_e___t7) ) ) ; 1956 to temporal +1 because of function borrow (declare-fun var1956_deref_S1770_self__udp4_ctx__t1 () (_ BitVec 64)) (declare-fun var1956_deref_S1770_self__udp4_ctx__t0 () (_ BitVec 64)) (assert (= var1956_deref_S1770_self__udp4_ctx__t1 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1973_return_value_of___io__valid__t0 ) var1956_deref_S1770_self__udp4_ctx__t1 var1956_deref_S1770_self__udp4_ctx__t0) ) ) ; end of borrows after call ; : ./src/endpoint.zz:178 ; e, &self->udp4, io::Ready::Read) ; callsite effects ; end of callsite effects ; : ./src/endpoint.zz:179 ; e) ; call of ::err::check ; : ./src/endpoint.zz:179 ; err::check ; : ./src/endpoint.zz:179 ; e (declare-fun var2004_cast_of_e__t0 () (_ BitVec 64)) (assert (! (= var2004_cast_of_e__t0 var1775_e__t0) :named A50)); : ./src/endpoint.zz:149 ; +et ; : /home/aep/proj/zz/modules/err/./src/lib.zz:28 ; callsite_source (declare-fun var2005_literal_string____src_endpoint_zz___t0 () (_ BitVec 64)) (declare-fun var2006_true__t0 () Bool) (assert (= var2006_true__t0 (theory1_safe var2005_literal_string____src_endpoint_zz___t0) ) ) (assert var2006_true__t0 ) (declare-fun var2007_true__t0 () Bool) (assert (= var2007_true__t0 (theory2_nullterm var2005_literal_string____src_endpoint_zz___t0) ) ) (assert var2007_true__t0 ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:29 ; callsite_source (declare-fun var2008_literal_string____carrier__endpoint__poll___t0 () (_ BitVec 64)) (declare-fun var2009_true__t0 () Bool) (assert (= var2009_true__t0 (theory1_safe var2008_literal_string____carrier__endpoint__poll___t0) ) ) (assert var2009_true__t0 ) (declare-fun var2010_true__t0 () Bool) (assert (= var2010_true__t0 (theory2_nullterm var2008_literal_string____carrier__endpoint__poll___t0) ) ) (assert var2010_true__t0 ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:30 ; callsite_source ; literal expr (declare-fun var2011_literal_179__t0 () (_ BitVec 64)) (assert (= var2011_literal_179__t0 (_ bv179 64)) ) ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:27 ; * ; call of safe (declare-fun var2012_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (assert (= var2012_interpretation_of_theory_safe_over_cast_of_e__t0 (theory1_safe var2004_cast_of_e__t0) ) ) (push 1) (assert (and ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1973_return_value_of___io__valid__t0 ) (or (not var2012_interpretation_of_theory_safe_over_cast_of_e__t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var2012_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) ; borrows after call ; 1777 to temporal +1 because of function borrow (declare-fun var1777_deref_S1775_e___t9 () (_ BitVec 64)) (assert (= var1777_deref_S1775_e___t9 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1973_return_value_of___io__valid__t0 ) var1777_deref_S1775_e___t9 var1777_deref_S1775_e___t8) ) ) ; end of borrows after call ; : ./src/endpoint.zz:179 ; e) ; callsite effects (declare-fun var2014_return__t1 () Bool) (declare-fun var2013_return_value_of___err__check__t0 () Bool) (declare-fun var2014_return__t0 () Bool) (assert (= var2014_return__t1 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1973_return_value_of___io__valid__t0 ) var2013_return_value_of___err__check__t0 var2014_return__t0) ) ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self) ; call of ::err::checked ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; checked ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self (declare-fun var2015_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2015_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t9) :named A51)); : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self (declare-fun var2016_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2016_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t9) :named A52)); : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self) (declare-fun var2017_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (assert (= var2017_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 (theory86___err__checked var2016_cast_of_deref_S1775_e___t0) ) ) (assert (! var2017_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 :named A53))(check-sat) (declare-fun var2013_return_value_of___err__check__t1 () Bool) (assert (= var2013_return_value_of___err__check__t1 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1973_return_value_of___io__valid__t0 ) var2014_return__t1 var2013_return_value_of___err__check__t0) ) ) ; end of callsite effects (check-sat) (get-value ( var2013_return_value_of___err__check__t1 ) ) ; = "false" (push 1) (assert (not (= var2013_return_value_of___err__check__t1 false)) ) (check-sat) (pop 1) ; : ./src/endpoint.zz:179 ; e) ; : ./src/endpoint.zz:179 ; if err::check(e) {return io::Result::Error; } ; : ./src/endpoint.zz:179 ; io::Result::Error (declare-fun var2018_safe___io__Result__Error_____safe_return___t0 () Bool) (assert (= var2018_safe___io__Result__Error_____safe_return___t0 (theory1_safe var250___io__Result__Error__t0) ) ) (declare-fun var1787_return__t5 () (_ BitVec 64)) (assert (= var2018_safe___io__Result__Error_____safe_return___t0 (theory1_safe var1787_return__t5) ) ) (declare-fun var2019_nullterm___io__Result__Error_____nullterm_return___t0 () Bool) (assert (= var2019_nullterm___io__Result__Error_____nullterm_return___t0 (theory2_nullterm var250___io__Result__Error__t0) ) ) (assert (= var2019_nullterm___io__Result__Error_____nullterm_return___t0 (theory2_nullterm var1787_return__t5) ) ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:24 ; Result (declare-fun var2020_implicit_coercion_of___io__Result__Error__t0 () (_ BitVec 64)) (assert (! (= var2020_implicit_coercion_of___io__Result__Error__t0 var250___io__Result__Error__t0) :named A54))(assert (= var1787_return__t5 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1973_return_value_of___io__valid__t0 var2013_return_value_of___err__check__t1 ) var2020_implicit_coercion_of___io__Result__Error__t0 var1787_return__t4) ) ) ; end branch ; branch returned. the rest of the function only happens if the condition leading to return never happened ; (not ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1973_return_value_of___io__valid__t0 var2013_return_value_of___err__check__t1 )) (assert (not ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1973_return_value_of___io__valid__t0 var2013_return_value_of___err__check__t1 )) ) ; end branch ; : ./src/endpoint.zz:181 ; &self->udp6) ; call of ::io::valid ; : ./src/endpoint.zz:181 ; io::valid ; : ./src/endpoint.zz:181 ; &self->udp6 ; : ./src/endpoint.zz:181 ; -> ; : ./src/endpoint.zz:181 ; self ; : ./src/endpoint.zz:181 ; -> ; : ./src/endpoint.zz:181 ; &self->udp6 (declare-fun var2022_addressof_deref_S1770_self__udp6___t0 () (_ BitVec 64)) (declare-fun var2023_len_addressof_deref_S1770_self__udp6____t0 () (_ BitVec 64)) (assert (= var2023_len_addressof_deref_S1770_self__udp6____t0 (theory0_len var2022_addressof_deref_S1770_self__udp6___t0) ) ) (assert (= var2023_len_addressof_deref_S1770_self__udp6____t0 (_ bv1 64)) ) (assert (= var2022_addressof_deref_S1770_self__udp6___t0 (_ bv2021 64)) ) (declare-fun var2024_true__t0 () Bool) (assert (= var2024_true__t0 (theory1_safe var2022_addressof_deref_S1770_self__udp6___t0) ) ) (assert var2024_true__t0 ) ; : ./src/endpoint.zz:181 ; -> ; : ./src/endpoint.zz:181 ; self ; : ./src/endpoint.zz:181 ; &self->udp6 (declare-fun var2025_addressof_deref_S1770_self__udp6___t0 () (_ BitVec 64)) (declare-fun var2026_len_addressof_deref_S1770_self__udp6____t0 () (_ BitVec 64)) (assert (= var2026_len_addressof_deref_S1770_self__udp6____t0 (theory0_len var2025_addressof_deref_S1770_self__udp6___t0) ) ) (assert (= var2026_len_addressof_deref_S1770_self__udp6____t0 (_ bv1 64)) ) (assert (= var2025_addressof_deref_S1770_self__udp6___t0 (_ bv2021 64)) ) (declare-fun var2027_true__t0 () Bool) (assert (= var2027_true__t0 (theory1_safe var2025_addressof_deref_S1770_self__udp6___t0) ) ) (assert var2027_true__t0 ) (declare-fun var2029_addressof_deref_S1770_self__udp6_ctx___t0 () (_ BitVec 64)) (declare-fun var2030_len_addressof_deref_S1770_self__udp6_ctx____t0 () (_ BitVec 64)) (assert (= var2030_len_addressof_deref_S1770_self__udp6_ctx____t0 (theory0_len var2029_addressof_deref_S1770_self__udp6_ctx___t0) ) ) (assert (= var2030_len_addressof_deref_S1770_self__udp6_ctx____t0 (_ bv1 64)) ) (assert (= var2029_addressof_deref_S1770_self__udp6_ctx___t0 (_ bv2028 64)) ) (declare-fun var2031_true__t0 () Bool) (assert (= var2031_true__t0 (theory1_safe var2029_addressof_deref_S1770_self__udp6_ctx___t0) ) ) (assert var2031_true__t0 ) ; : ./src/endpoint.zz:181 ; -> ; : ./src/endpoint.zz:181 ; self ; : ./src/endpoint.zz:181 ; &self->udp6 (declare-fun var2032_addressof_deref_S1770_self__udp6___t0 () (_ BitVec 64)) (declare-fun var2033_len_addressof_deref_S1770_self__udp6____t0 () (_ BitVec 64)) (assert (= var2033_len_addressof_deref_S1770_self__udp6____t0 (theory0_len var2032_addressof_deref_S1770_self__udp6___t0) ) ) (assert (= var2033_len_addressof_deref_S1770_self__udp6____t0 (_ bv1 64)) ) (assert (= var2032_addressof_deref_S1770_self__udp6___t0 (_ bv2021 64)) ) (declare-fun var2034_true__t0 () Bool) (assert (= var2034_true__t0 (theory1_safe var2032_addressof_deref_S1770_self__udp6___t0) ) ) (assert var2034_true__t0 ) (declare-fun var2035_addressof_deref_S1770_self__udp6_ctx___t0 () (_ BitVec 64)) (declare-fun var2036_len_addressof_deref_S1770_self__udp6_ctx____t0 () (_ BitVec 64)) (assert (= var2036_len_addressof_deref_S1770_self__udp6_ctx____t0 (theory0_len var2035_addressof_deref_S1770_self__udp6_ctx___t0) ) ) (assert (= var2036_len_addressof_deref_S1770_self__udp6_ctx____t0 (_ bv1 64)) ) (assert (= var2035_addressof_deref_S1770_self__udp6_ctx___t0 (_ bv2028 64)) ) (declare-fun var2037_true__t0 () Bool) (assert (= var2037_true__t0 (theory1_safe var2035_addressof_deref_S1770_self__udp6_ctx___t0) ) ) (assert var2037_true__t0 ) ; : ./src/endpoint.zz:181 ; -> ; : ./src/endpoint.zz:181 ; self ; : ./src/endpoint.zz:181 ; &self->udp6 (declare-fun var2038_addressof_deref_S1770_self__udp6___t0 () (_ BitVec 64)) (declare-fun var2039_len_addressof_deref_S1770_self__udp6____t0 () (_ BitVec 64)) (assert (= var2039_len_addressof_deref_S1770_self__udp6____t0 (theory0_len var2038_addressof_deref_S1770_self__udp6___t0) ) ) (assert (= var2039_len_addressof_deref_S1770_self__udp6____t0 (_ bv1 64)) ) (assert (= var2038_addressof_deref_S1770_self__udp6___t0 (_ bv2021 64)) ) (declare-fun var2040_true__t0 () Bool) (assert (= var2040_true__t0 (theory1_safe var2038_addressof_deref_S1770_self__udp6___t0) ) ) (assert var2040_true__t0 ) (declare-fun var2041_addressof_deref_S1770_self__udp6_ctx___t0 () (_ BitVec 64)) (declare-fun var2042_len_addressof_deref_S1770_self__udp6_ctx____t0 () (_ BitVec 64)) (assert (= var2042_len_addressof_deref_S1770_self__udp6_ctx____t0 (theory0_len var2041_addressof_deref_S1770_self__udp6_ctx___t0) ) ) (assert (= var2042_len_addressof_deref_S1770_self__udp6_ctx____t0 (_ bv1 64)) ) (assert (= var2041_addressof_deref_S1770_self__udp6_ctx___t0 (_ bv2028 64)) ) (declare-fun var2043_true__t0 () Bool) (assert (= var2043_true__t0 (theory1_safe var2041_addressof_deref_S1770_self__udp6_ctx___t0) ) ) (assert var2043_true__t0 ) ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:52 ; * ; call of safe (declare-fun var2044_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp6_ctx___t0 () Bool) (assert (= var2044_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp6_ctx___t0 (theory1_safe var2041_addressof_deref_S1770_self__udp6_ctx___t0) ) ) (push 1) (assert (and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 (or (not var2044_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp6_ctx___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var2044_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp6_ctx___t0 () Bool) ; borrows after call ; end of borrows after call ; : ./src/endpoint.zz:181 ; &self->udp6) ; callsite effects ; end of callsite effects (declare-fun var2045_return_value_of___io__valid__t0 () Bool) (check-sat) (get-value ( var2045_return_value_of___io__valid__t0 ) ) ; = "false" (push 1) (assert (not (= var2045_return_value_of___io__valid__t0 false)) ) (check-sat) (pop 1) ; : ./src/endpoint.zz:181 ; if io::valid(&self->udp6) { ; async->select(e, &self->udp6, io::Ready::Read); ; if err::check(e) {return io::Result::Error; } ; } ; : ./src/endpoint.zz:182 ; e, &self->udp6, io::Ready::Read) ; call ; : ./src/endpoint.zz:182 ; -> ; : ./src/endpoint.zz:182 ; async ; : ./src/endpoint.zz:182 ; -> ; : ./src/endpoint.zz:182 ; e, &self->udp6, io::Ready::Read) ; call of ::io::select ; : ./src/endpoint.zz:182 ; -> ; : ./src/endpoint.zz:182 ; async ; : ./src/endpoint.zz:182 ; e ; : ./src/endpoint.zz:182 ; &self->udp6 ; : ./src/endpoint.zz:182 ; -> ; : ./src/endpoint.zz:182 ; self ; : ./src/endpoint.zz:182 ; &self->udp6 (declare-fun var2047_addressof_deref_S1770_self__udp6___t0 () (_ BitVec 64)) (declare-fun var2048_len_addressof_deref_S1770_self__udp6____t0 () (_ BitVec 64)) (assert (= var2048_len_addressof_deref_S1770_self__udp6____t0 (theory0_len var2047_addressof_deref_S1770_self__udp6___t0) ) ) (assert (= var2048_len_addressof_deref_S1770_self__udp6____t0 (_ bv1 64)) ) (assert (= var2047_addressof_deref_S1770_self__udp6___t0 (_ bv2021 64)) ) (declare-fun var2049_true__t0 () Bool) (assert (= var2049_true__t0 (theory1_safe var2047_addressof_deref_S1770_self__udp6___t0) ) ) (assert var2049_true__t0 ) ; : ./src/endpoint.zz:182 ; -> ; : ./src/endpoint.zz:182 ; self ; : ./src/endpoint.zz:182 ; &self->udp6 (declare-fun var2050_addressof_deref_S1770_self__udp6___t0 () (_ BitVec 64)) (declare-fun var2051_len_addressof_deref_S1770_self__udp6____t0 () (_ BitVec 64)) (assert (= var2051_len_addressof_deref_S1770_self__udp6____t0 (theory0_len var2050_addressof_deref_S1770_self__udp6___t0) ) ) (assert (= var2051_len_addressof_deref_S1770_self__udp6____t0 (_ bv1 64)) ) (assert (= var2050_addressof_deref_S1770_self__udp6___t0 (_ bv2021 64)) ) (declare-fun var2052_true__t0 () Bool) (assert (= var2052_true__t0 (theory1_safe var2050_addressof_deref_S1770_self__udp6___t0) ) ) (assert var2052_true__t0 ) (declare-fun var2053_addressof_deref_S1770_self__udp6_ctx___t0 () (_ BitVec 64)) (declare-fun var2054_len_addressof_deref_S1770_self__udp6_ctx____t0 () (_ BitVec 64)) (assert (= var2054_len_addressof_deref_S1770_self__udp6_ctx____t0 (theory0_len var2053_addressof_deref_S1770_self__udp6_ctx___t0) ) ) (assert (= var2054_len_addressof_deref_S1770_self__udp6_ctx____t0 (_ bv1 64)) ) (assert (= var2053_addressof_deref_S1770_self__udp6_ctx___t0 (_ bv2028 64)) ) (declare-fun var2055_true__t0 () Bool) (assert (= var2055_true__t0 (theory1_safe var2053_addressof_deref_S1770_self__udp6_ctx___t0) ) ) (assert var2055_true__t0 ) ; : ./src/endpoint.zz:182 ; -> ; : ./src/endpoint.zz:182 ; self ; : ./src/endpoint.zz:182 ; &self->udp6 (declare-fun var2056_addressof_deref_S1770_self__udp6___t0 () (_ BitVec 64)) (declare-fun var2057_len_addressof_deref_S1770_self__udp6____t0 () (_ BitVec 64)) (assert (= var2057_len_addressof_deref_S1770_self__udp6____t0 (theory0_len var2056_addressof_deref_S1770_self__udp6___t0) ) ) (assert (= var2057_len_addressof_deref_S1770_self__udp6____t0 (_ bv1 64)) ) (assert (= var2056_addressof_deref_S1770_self__udp6___t0 (_ bv2021 64)) ) (declare-fun var2058_true__t0 () Bool) (assert (= var2058_true__t0 (theory1_safe var2056_addressof_deref_S1770_self__udp6___t0) ) ) (assert var2058_true__t0 ) (declare-fun var2059_addressof_deref_S1770_self__udp6_ctx___t0 () (_ BitVec 64)) (declare-fun var2060_len_addressof_deref_S1770_self__udp6_ctx____t0 () (_ BitVec 64)) (assert (= var2060_len_addressof_deref_S1770_self__udp6_ctx____t0 (theory0_len var2059_addressof_deref_S1770_self__udp6_ctx___t0) ) ) (assert (= var2060_len_addressof_deref_S1770_self__udp6_ctx____t0 (_ bv1 64)) ) (assert (= var2059_addressof_deref_S1770_self__udp6_ctx___t0 (_ bv2028 64)) ) (declare-fun var2061_true__t0 () Bool) (assert (= var2061_true__t0 (theory1_safe var2059_addressof_deref_S1770_self__udp6_ctx___t0) ) ) (assert var2061_true__t0 ) ; : ./src/endpoint.zz:182 ; io::Ready::Read ; : ./src/endpoint.zz:182 ; async ; : ./src/endpoint.zz:182 ; e (declare-fun var2062_cast_of_e__t0 () (_ BitVec 64)) (assert (! (= var2062_cast_of_e__t0 var1775_e__t0) :named A55)); : ./src/endpoint.zz:149 ; +et ; : ./src/endpoint.zz:182 ; &self->udp6 ; : ./src/endpoint.zz:182 ; -> ; : ./src/endpoint.zz:182 ; self ; : ./src/endpoint.zz:182 ; &self->udp6 (declare-fun var2063_addressof_deref_S1770_self__udp6___t0 () (_ BitVec 64)) (declare-fun var2064_len_addressof_deref_S1770_self__udp6____t0 () (_ BitVec 64)) (assert (= var2064_len_addressof_deref_S1770_self__udp6____t0 (theory0_len var2063_addressof_deref_S1770_self__udp6___t0) ) ) (assert (= var2064_len_addressof_deref_S1770_self__udp6____t0 (_ bv1 64)) ) (assert (= var2063_addressof_deref_S1770_self__udp6___t0 (_ bv2021 64)) ) (declare-fun var2065_true__t0 () Bool) (assert (= var2065_true__t0 (theory1_safe var2063_addressof_deref_S1770_self__udp6___t0) ) ) (assert var2065_true__t0 ) (declare-fun var2066_addressof_deref_S1770_self__udp6_ctx___t0 () (_ BitVec 64)) (declare-fun var2067_len_addressof_deref_S1770_self__udp6_ctx____t0 () (_ BitVec 64)) (assert (= var2067_len_addressof_deref_S1770_self__udp6_ctx____t0 (theory0_len var2066_addressof_deref_S1770_self__udp6_ctx___t0) ) ) (assert (= var2067_len_addressof_deref_S1770_self__udp6_ctx____t0 (_ bv1 64)) ) (assert (= var2066_addressof_deref_S1770_self__udp6_ctx___t0 (_ bv2028 64)) ) (declare-fun var2068_true__t0 () Bool) (assert (= var2068_true__t0 (theory1_safe var2066_addressof_deref_S1770_self__udp6_ctx___t0) ) ) (assert var2068_true__t0 ) ; : ./src/endpoint.zz:182 ; io::Ready::Read ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:192 ; * ; call of safe (declare-fun var2069_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp6_ctx___t0 () Bool) (assert (= var2069_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp6_ctx___t0 (theory1_safe var2066_addressof_deref_S1770_self__udp6_ctx___t0) ) ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:192 ; * ; call of safe (declare-fun var2070_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (assert (= var2070_interpretation_of_theory_safe_over_cast_of_e__t0 (theory1_safe var2062_cast_of_e__t0) ) ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:192 ; * ; call of safe (declare-fun var2071_interpretation_of_theory_safe_over_async__t0 () Bool) (assert (= var2071_interpretation_of_theory_safe_over_async__t0 (theory1_safe var1780_async__t0) ) ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; *e) ; call of ::err::checked ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; err::checked ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; *e ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; e ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; *e ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; e ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; *e (declare-fun var2072_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2072_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t9) :named A56)); : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; e ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; *e (declare-fun var2073_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2073_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t9) :named A57)); : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; *e) (declare-fun var2074_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (assert (= var2074_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 (theory86___err__checked var2073_cast_of_deref_S1775_e___t0) ) ) (push 1) (assert (and ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2045_return_value_of___io__valid__t0 ) (or (not var2069_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp6_ctx___t0 ) (not var2070_interpretation_of_theory_safe_over_cast_of_e__t0 ) (not var2071_interpretation_of_theory_safe_over_async__t0 ) (not var2074_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var2069_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp6_ctx___t0 () Bool) (declare-fun var2070_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var2071_interpretation_of_theory_safe_over_async__t0 () Bool) (declare-fun var2074_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) ; borrows after call ; 1900 to temporal +1 because of function borrow (declare-fun var1900_deref_S1780_async___t3 () (_ BitVec 64)) (assert (= var1900_deref_S1780_async___t3 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2045_return_value_of___io__valid__t0 ) var1900_deref_S1780_async___t3 var1900_deref_S1780_async___t2) ) ) ; 1777 to temporal +1 because of function borrow (declare-fun var1777_deref_S1775_e___t10 () (_ BitVec 64)) (assert (= var1777_deref_S1775_e___t10 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2045_return_value_of___io__valid__t0 ) var1777_deref_S1775_e___t10 var1777_deref_S1775_e___t9) ) ) ; 2028 to temporal +1 because of function borrow (declare-fun var2028_deref_S1770_self__udp6_ctx__t1 () (_ BitVec 64)) (declare-fun var2028_deref_S1770_self__udp6_ctx__t0 () (_ BitVec 64)) (assert (= var2028_deref_S1770_self__udp6_ctx__t1 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2045_return_value_of___io__valid__t0 ) var2028_deref_S1770_self__udp6_ctx__t1 var2028_deref_S1770_self__udp6_ctx__t0) ) ) ; end of borrows after call ; : ./src/endpoint.zz:182 ; e, &self->udp6, io::Ready::Read) ; callsite effects ; end of callsite effects ; : ./src/endpoint.zz:183 ; e) ; call of ::err::check ; : ./src/endpoint.zz:183 ; err::check ; : ./src/endpoint.zz:183 ; e (declare-fun var2076_cast_of_e__t0 () (_ BitVec 64)) (assert (! (= var2076_cast_of_e__t0 var1775_e__t0) :named A58)); : ./src/endpoint.zz:149 ; +et ; : /home/aep/proj/zz/modules/err/./src/lib.zz:28 ; callsite_source (declare-fun var2077_literal_string____src_endpoint_zz___t0 () (_ BitVec 64)) (declare-fun var2078_true__t0 () Bool) (assert (= var2078_true__t0 (theory1_safe var2077_literal_string____src_endpoint_zz___t0) ) ) (assert var2078_true__t0 ) (declare-fun var2079_true__t0 () Bool) (assert (= var2079_true__t0 (theory2_nullterm var2077_literal_string____src_endpoint_zz___t0) ) ) (assert var2079_true__t0 ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:29 ; callsite_source (declare-fun var2080_literal_string____carrier__endpoint__poll___t0 () (_ BitVec 64)) (declare-fun var2081_true__t0 () Bool) (assert (= var2081_true__t0 (theory1_safe var2080_literal_string____carrier__endpoint__poll___t0) ) ) (assert var2081_true__t0 ) (declare-fun var2082_true__t0 () Bool) (assert (= var2082_true__t0 (theory2_nullterm var2080_literal_string____carrier__endpoint__poll___t0) ) ) (assert var2082_true__t0 ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:30 ; callsite_source ; literal expr (declare-fun var2083_literal_183__t0 () (_ BitVec 64)) (assert (= var2083_literal_183__t0 (_ bv183 64)) ) ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:27 ; * ; call of safe (declare-fun var2084_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (assert (= var2084_interpretation_of_theory_safe_over_cast_of_e__t0 (theory1_safe var2076_cast_of_e__t0) ) ) (push 1) (assert (and ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2045_return_value_of___io__valid__t0 ) (or (not var2084_interpretation_of_theory_safe_over_cast_of_e__t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var2084_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) ; borrows after call ; 1777 to temporal +1 because of function borrow (declare-fun var1777_deref_S1775_e___t11 () (_ BitVec 64)) (assert (= var1777_deref_S1775_e___t11 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2045_return_value_of___io__valid__t0 ) var1777_deref_S1775_e___t11 var1777_deref_S1775_e___t10) ) ) ; end of borrows after call ; : ./src/endpoint.zz:183 ; e) ; callsite effects (declare-fun var2086_return__t1 () Bool) (declare-fun var2085_return_value_of___err__check__t0 () Bool) (declare-fun var2086_return__t0 () Bool) (assert (= var2086_return__t1 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2045_return_value_of___io__valid__t0 ) var2085_return_value_of___err__check__t0 var2086_return__t0) ) ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self) ; call of ::err::checked ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; checked ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self (declare-fun var2087_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2087_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t11) :named A59)); : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self (declare-fun var2088_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2088_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t11) :named A60)); : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self) (declare-fun var2089_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (assert (= var2089_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 (theory86___err__checked var2088_cast_of_deref_S1775_e___t0) ) ) (assert (! var2089_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 :named A61))(check-sat) (declare-fun var2085_return_value_of___err__check__t1 () Bool) (assert (= var2085_return_value_of___err__check__t1 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2045_return_value_of___io__valid__t0 ) var2086_return__t1 var2085_return_value_of___err__check__t0) ) ) ; end of callsite effects (check-sat) (get-value ( var2085_return_value_of___err__check__t1 ) ) ; = "false" (push 1) (assert (not (= var2085_return_value_of___err__check__t1 false)) ) (check-sat) (pop 1) ; : ./src/endpoint.zz:183 ; e) ; : ./src/endpoint.zz:183 ; if err::check(e) {return io::Result::Error; } ; : ./src/endpoint.zz:183 ; io::Result::Error (declare-fun var2090_safe___io__Result__Error_____safe_return___t0 () Bool) (assert (= var2090_safe___io__Result__Error_____safe_return___t0 (theory1_safe var250___io__Result__Error__t0) ) ) (declare-fun var1787_return__t6 () (_ BitVec 64)) (assert (= var2090_safe___io__Result__Error_____safe_return___t0 (theory1_safe var1787_return__t6) ) ) (declare-fun var2091_nullterm___io__Result__Error_____nullterm_return___t0 () Bool) (assert (= var2091_nullterm___io__Result__Error_____nullterm_return___t0 (theory2_nullterm var250___io__Result__Error__t0) ) ) (assert (= var2091_nullterm___io__Result__Error_____nullterm_return___t0 (theory2_nullterm var1787_return__t6) ) ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:24 ; Result (declare-fun var2092_implicit_coercion_of___io__Result__Error__t0 () (_ BitVec 64)) (assert (! (= var2092_implicit_coercion_of___io__Result__Error__t0 var250___io__Result__Error__t0) :named A62))(assert (= var1787_return__t6 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2045_return_value_of___io__valid__t0 var2085_return_value_of___err__check__t1 ) var2092_implicit_coercion_of___io__Result__Error__t0 var1787_return__t5) ) ) ; end branch ; branch returned. the rest of the function only happens if the condition leading to return never happened ; (not ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2045_return_value_of___io__valid__t0 var2085_return_value_of___err__check__t1 )) (assert (not ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2045_return_value_of___io__valid__t0 var2085_return_value_of___err__check__t1 )) ) ; end branch ; : ./src/endpoint.zz:187 ; address::Address mut fromaddr = {0} ; : ./src/endpoint.zz:187 ; {0} ; : ./src/endpoint.zz:187 ; 0 ; literal expr (declare-fun var2094_literal_0__t0 () (_ BitVec 64)) (assert (= var2094_literal_0__t0 (_ bv0 64)) ) ; : ./src/endpoint.zz:187 ; {0} (declare-fun var2095_literal_array_2095__t0 () (_ BitVec 64)) (declare-fun var2096_true__t0 () Bool) (assert (= var2096_true__t0 (theory1_safe var2095_literal_array_2095__t0) ) ) (assert var2096_true__t0 ) ; : ./src/endpoint.zz:187 ; address::Address mut fromaddr = {0} (declare-fun var2097_safe_literal_array_2095_____safe_fromaddr___t0 () Bool) (assert (= var2097_safe_literal_array_2095_____safe_fromaddr___t0 (theory1_safe var2095_literal_array_2095__t0) ) ) (declare-fun var2093_fromaddr__t1 () (_ BitVec 64)) (assert (= var2097_safe_literal_array_2095_____safe_fromaddr___t0 (theory1_safe var2093_fromaddr__t1) ) ) (declare-fun var2098_nullterm_literal_array_2095_____nullterm_fromaddr___t0 () Bool) (assert (= var2098_nullterm_literal_array_2095_____nullterm_fromaddr___t0 (theory2_nullterm var2095_literal_array_2095__t0) ) ) (assert (= var2098_nullterm_literal_array_2095_____nullterm_fromaddr___t0 (theory2_nullterm var2093_fromaddr__t1) ) ) (declare-fun var2099_len_fromaddr___t0 () (_ BitVec 64)) (assert (= var2099_len_fromaddr___t0 (theory0_len var2093_fromaddr__t1) ) ) (assert (= var2099_len_fromaddr___t0 (_ bv1 64)) ) ; : ./src/endpoint.zz:188 ; ) ; call ; : ./src/endpoint.zz:188 ; . ; : ./src/endpoint.zz:188 ; . ; : ./src/endpoint.zz:188 ; . ; : ./src/endpoint.zz:188 ; . ; : ./src/endpoint.zz:188 ; -> ; : ./src/endpoint.zz:188 ; self ; : ./src/endpoint.zz:188 ; . ; : ./src/endpoint.zz:188 ; . ; : ./src/endpoint.zz:188 ; . ; : ./src/endpoint.zz:188 ; . ; : ./src/endpoint.zz:188 ; ) ; call of ::string::clear ; : ./src/endpoint.zz:188 ; . ; : ./src/endpoint.zz:188 ; . ; : ./src/endpoint.zz:188 ; . ; : ./src/endpoint.zz:188 ; . ; : ./src/endpoint.zz:188 ; -> ; : ./src/endpoint.zz:188 ; self ; : ./src/endpoint.zz:188 ; . (declare-fun var2104_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () (_ BitVec 64)) (declare-fun var2105_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 () (_ BitVec 64)) (assert (= var2105_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 (theory0_len var2104_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) ) ) (assert (= var2105_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 (_ bv1 64)) ) (assert (= var2104_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 (_ bv2102 64)) ) (declare-fun var2106_true__t0 () Bool) (assert (= var2106_true__t0 (theory1_safe var2104_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) ) ) (assert var2106_true__t0 ) ; : ./src/endpoint.zz:188 ; . ; : ./src/endpoint.zz:188 ; . ; : ./src/endpoint.zz:188 ; . ; : ./src/endpoint.zz:188 ; -> ; : ./src/endpoint.zz:188 ; self ; : ./src/endpoint.zz:188 ; . (declare-fun var2107_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () (_ BitVec 64)) (declare-fun var2108_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 () (_ BitVec 64)) (assert (= var2108_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 (theory0_len var2107_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) ) ) (assert (= var2108_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 (_ bv1 64)) ) (assert (= var2107_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 (_ bv2102 64)) ) (declare-fun var2109_true__t0 () Bool) (assert (= var2109_true__t0 (theory1_safe var2107_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) ) ) (assert var2109_true__t0 ) ; : ./src/endpoint.zz:188 ; . ; : ./src/endpoint.zz:188 ; . ; : ./src/endpoint.zz:188 ; . ; : ./src/endpoint.zz:188 ; -> ; : ./src/endpoint.zz:188 ; self ; : ./src/endpoint.zz:188 ; . (declare-fun var2110_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () (_ BitVec 64)) (declare-fun var2111_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 () (_ BitVec 64)) (assert (= var2111_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 (theory0_len var2110_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) ) ) (assert (= var2111_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 (_ bv1 64)) ) (assert (= var2110_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 (_ bv2102 64)) ) (declare-fun var2112_true__t0 () Bool) (assert (= var2112_true__t0 (theory1_safe var2110_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) ) ) (assert var2112_true__t0 ) ; : ./src/endpoint.zz:188 ; . ; : ./src/endpoint.zz:188 ; . ; : ./src/endpoint.zz:188 ; . ; : ./src/endpoint.zz:188 ; -> ; : ./src/endpoint.zz:188 ; self ; : ./src/endpoint.zz:188 ; . (declare-fun var2113_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () (_ BitVec 64)) (declare-fun var2114_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 () (_ BitVec 64)) (assert (= var2114_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 (theory0_len var2113_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) ) ) (assert (= var2114_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 (_ bv1 64)) ) (assert (= var2113_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 (_ bv2102 64)) ) (declare-fun var2115_true__t0 () Bool) (assert (= var2115_true__t0 (theory1_safe var2113_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) ) ) (assert var2115_true__t0 ) (declare-fun var2116_cast_of_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () (_ BitVec 64)) (assert (! (= var2116_cast_of_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 var2113_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) :named A63)); : ./src/initiator.zz:24 ; +1024 ; literal expr (declare-fun var2117_literal_1024__t0 () (_ BitVec 64)) (assert (= var2117_literal_1024__t0 (_ bv1024 64)) ) ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/string/./src/lib.zz:53 ; * ; call of safe (declare-fun var2118_interpretation_of_theory_safe_over_cast_of_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () Bool) (assert (= var2118_interpretation_of_theory_safe_over_cast_of_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 (theory1_safe var2116_cast_of_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) ) ) (push 1) (assert (and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 (or (not var2118_interpretation_of_theory_safe_over_cast_of_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var2118_interpretation_of_theory_safe_over_cast_of_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () Bool) ; borrows after call ; 2102 to temporal +1 because of function borrow (declare-fun var2102_deref_S1770_self__statem_connecting_initiator_pkt__t1 () (_ BitVec 64)) (declare-fun var2102_deref_S1770_self__statem_connecting_initiator_pkt__t0 () (_ BitVec 64)) (assert (= var2102_deref_S1770_self__statem_connecting_initiator_pkt__t1 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2102_deref_S1770_self__statem_connecting_initiator_pkt__t1 var2102_deref_S1770_self__statem_connecting_initiator_pkt__t0) ) ) ; end of borrows after call ; : ./src/endpoint.zz:188 ; ) ; callsite effects (declare-fun var2119_return_value_of___string__clear__t0 () (_ BitVec 64)) (declare-fun var2121_safe_return_value_of___string__clear_____safe_return___t0 () Bool) (assert (= var2121_safe_return_value_of___string__clear_____safe_return___t0 (theory1_safe var2119_return_value_of___string__clear__t0) ) ) (declare-fun var2120_return__t1 () (_ BitVec 64)) (assert (= var2121_safe_return_value_of___string__clear_____safe_return___t0 (theory1_safe var2120_return__t1) ) ) (declare-fun var2122_nullterm_return_value_of___string__clear_____nullterm_return___t0 () Bool) (assert (= var2122_nullterm_return_value_of___string__clear_____nullterm_return___t0 (theory2_nullterm var2119_return_value_of___string__clear__t0) ) ) (assert (= var2122_nullterm_return_value_of___string__clear_____nullterm_return___t0 (theory2_nullterm var2120_return__t1) ) ) (declare-fun var2120_return__t0 () (_ BitVec 64)) (assert (= var2120_return__t1 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2119_return_value_of___string__clear__t0 var2120_return__t0) ) ) ; : /home/aep/proj/zz/modules/string/./src/lib.zz:54 ; == ; : /home/aep/proj/zz/modules/string/./src/lib.zz:54 ; -> ; : /home/aep/proj/zz/modules/string/./src/lib.zz:54 ; self ; : /home/aep/proj/zz/modules/string/./src/lib.zz:54 ; -> ; : /home/aep/proj/zz/modules/string/./src/lib.zz:54 ; 0 ; literal expr (declare-fun var2124_literal_0__t0 () (_ BitVec 64)) (assert (= var2124_literal_0__t0 (_ bv0 64)) ) (declare-fun var2125_implicit_coercion_of_literal_0__t0 () (_ BitVec 64)) (assert (! (= var2125_implicit_coercion_of_literal_0__t0 var2124_literal_0__t0) :named A64)); : /home/aep/proj/zz/modules/string/./src/lib.zz:54 ; == (declare-fun var2126_infix_expression__t0 () Bool) (declare-fun var2123_deref_S1770_self__statem_connecting_initiator_pkt_len__t0 () (_ BitVec 64)) (assert (= var2126_infix_expression__t0 (= var2123_deref_S1770_self__statem_connecting_initiator_pkt_len__t0 var2125_implicit_coercion_of_literal_0__t0)) ) (assert (! var2126_infix_expression__t0 :named A65))(check-sat) ; : ./src/endpoint.zz:188 ; ) (declare-fun var2127_safe_return_____safe_return_value_of___string__clear___t0 () Bool) (assert (= var2127_safe_return_____safe_return_value_of___string__clear___t0 (theory1_safe var2120_return__t1) ) ) (declare-fun var2119_return_value_of___string__clear__t1 () (_ BitVec 64)) (assert (= var2127_safe_return_____safe_return_value_of___string__clear___t0 (theory1_safe var2119_return_value_of___string__clear__t1) ) ) (declare-fun var2128_nullterm_return_____nullterm_return_value_of___string__clear___t0 () Bool) (assert (= var2128_nullterm_return_____nullterm_return_value_of___string__clear___t0 (theory2_nullterm var2120_return__t1) ) ) (assert (= var2128_nullterm_return_____nullterm_return_value_of___string__clear___t0 (theory2_nullterm var2119_return_value_of___string__clear__t1) ) ) (assert (= var2119_return_value_of___string__clear__t1 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2120_return__t1 var2119_return_value_of___string__clear__t0) ) ) (declare-fun var2130_safe_return_value_of___string__clear_____safe_return___t0 () Bool) (assert (= var2130_safe_return_value_of___string__clear_____safe_return___t0 (theory1_safe var2119_return_value_of___string__clear__t1) ) ) (declare-fun var2129_return__t1 () (_ BitVec 64)) (assert (= var2130_safe_return_value_of___string__clear_____safe_return___t0 (theory1_safe var2129_return__t1) ) ) (declare-fun var2131_nullterm_return_value_of___string__clear_____nullterm_return___t0 () Bool) (assert (= var2131_nullterm_return_value_of___string__clear_____nullterm_return___t0 (theory2_nullterm var2119_return_value_of___string__clear__t1) ) ) (assert (= var2131_nullterm_return_value_of___string__clear_____nullterm_return___t0 (theory2_nullterm var2129_return__t1) ) ) (declare-fun var2129_return__t0 () (_ BitVec 64)) (assert (= var2129_return__t1 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2119_return_value_of___string__clear__t1 var2129_return__t0) ) ) ; : /home/aep/proj/zz/modules/string/./src/lib.zz:55 ; self->mem) ; call of nullterm ; : /home/aep/proj/zz/modules/string/./src/lib.zz:55 ; nullterm ; : /home/aep/proj/zz/modules/string/./src/lib.zz:55 ; -> ; : /home/aep/proj/zz/modules/string/./src/lib.zz:55 ; self ; : /home/aep/proj/zz/modules/string/./src/lib.zz:55 ; -> (declare-fun var2132_deref_S1770_self__statem_connecting_initiator_pkt_mem__t0 () (_ BitVec 64)) (declare-fun var2133_len_deref_S1770_self__statem_connecting_initiator_pkt_mem___t0 () (_ BitVec 64)) (assert (= var2133_len_deref_S1770_self__statem_connecting_initiator_pkt_mem___t0 (theory0_len var2132_deref_S1770_self__statem_connecting_initiator_pkt_mem__t0) ) ) (assert (= var2133_len_deref_S1770_self__statem_connecting_initiator_pkt_mem___t0 (_ bv1024 64)) ) (declare-fun var2134_true__t0 () Bool) (assert (= var2134_true__t0 (theory1_safe var2132_deref_S1770_self__statem_connecting_initiator_pkt_mem__t0) ) ) (assert var2134_true__t0 ) ; : /home/aep/proj/zz/modules/string/./src/lib.zz:55 ; self ; : /home/aep/proj/zz/modules/string/./src/lib.zz:55 ; -> ; : /home/aep/proj/zz/modules/string/./src/lib.zz:55 ; self ; : /home/aep/proj/zz/modules/string/./src/lib.zz:55 ; self->mem) (declare-fun var2135_interpretation_of_theory_nullterm_over_deref_S1770_self__statem_connecting_initiator_pkt_mem__t0 () Bool) (assert (= var2135_interpretation_of_theory_nullterm_over_deref_S1770_self__statem_connecting_initiator_pkt_mem__t0 (theory2_nullterm var2132_deref_S1770_self__statem_connecting_initiator_pkt_mem__t0) ) ) (assert (! var2135_interpretation_of_theory_nullterm_over_deref_S1770_self__statem_connecting_initiator_pkt_mem__t0 :named A66))(check-sat) ; : ./src/endpoint.zz:188 ; ) (declare-fun var2136_safe_return_____safe_return_value_of___string__clear___t0 () Bool) (assert (= var2136_safe_return_____safe_return_value_of___string__clear___t0 (theory1_safe var2129_return__t1) ) ) (declare-fun var2119_return_value_of___string__clear__t2 () (_ BitVec 64)) (assert (= var2136_safe_return_____safe_return_value_of___string__clear___t0 (theory1_safe var2119_return_value_of___string__clear__t2) ) ) (declare-fun var2137_nullterm_return_____nullterm_return_value_of___string__clear___t0 () Bool) (assert (= var2137_nullterm_return_____nullterm_return_value_of___string__clear___t0 (theory2_nullterm var2129_return__t1) ) ) (assert (= var2137_nullterm_return_____nullterm_return_value_of___string__clear___t0 (theory2_nullterm var2119_return_value_of___string__clear__t2) ) ) (assert (= var2119_return_value_of___string__clear__t2 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2129_return__t1 var2119_return_value_of___string__clear__t1) ) ) ; end of callsite effects ; : ./src/endpoint.zz:189 ; == ; : ./src/endpoint.zz:189 ; e, &self->statem.connecting.initiator.pkt, &fromaddr) ; call ; : ./src/endpoint.zz:189 ; . ; : ./src/endpoint.zz:189 ; -> ; : ./src/endpoint.zz:189 ; self ; : ./src/endpoint.zz:189 ; . ; : ./src/endpoint.zz:189 ; e, &self->statem.connecting.initiator.pkt, &fromaddr) ; call of ::net::udp::recvfrom ; : ./src/endpoint.zz:189 ; . ; : ./src/endpoint.zz:189 ; -> ; : ./src/endpoint.zz:189 ; self ; : ./src/endpoint.zz:189 ; . (declare-fun var2139_addressof_deref_S1770_self__udp4___t0 () (_ BitVec 64)) (declare-fun var2140_len_addressof_deref_S1770_self__udp4____t0 () (_ BitVec 64)) (assert (= var2140_len_addressof_deref_S1770_self__udp4____t0 (theory0_len var2139_addressof_deref_S1770_self__udp4___t0) ) ) (assert (= var2140_len_addressof_deref_S1770_self__udp4____t0 (_ bv1 64)) ) (assert (= var2139_addressof_deref_S1770_self__udp4___t0 (_ bv1949 64)) ) (declare-fun var2141_true__t0 () Bool) (assert (= var2141_true__t0 (theory1_safe var2139_addressof_deref_S1770_self__udp4___t0) ) ) (assert var2141_true__t0 ) ; : ./src/endpoint.zz:189 ; -> ; : ./src/endpoint.zz:189 ; self ; : ./src/endpoint.zz:189 ; . (declare-fun var2142_addressof_deref_S1770_self__udp4___t0 () (_ BitVec 64)) (declare-fun var2143_len_addressof_deref_S1770_self__udp4____t0 () (_ BitVec 64)) (assert (= var2143_len_addressof_deref_S1770_self__udp4____t0 (theory0_len var2142_addressof_deref_S1770_self__udp4___t0) ) ) (assert (= var2143_len_addressof_deref_S1770_self__udp4____t0 (_ bv1 64)) ) (assert (= var2142_addressof_deref_S1770_self__udp4___t0 (_ bv1949 64)) ) (declare-fun var2144_true__t0 () Bool) (assert (= var2144_true__t0 (theory1_safe var2142_addressof_deref_S1770_self__udp4___t0) ) ) (assert var2144_true__t0 ) ; : ./src/endpoint.zz:189 ; e ; : ./src/endpoint.zz:189 ; &self->statem.connecting.initiator.pkt ; : ./src/endpoint.zz:189 ; . ; : ./src/endpoint.zz:189 ; . ; : ./src/endpoint.zz:189 ; . ; : ./src/endpoint.zz:189 ; -> ; : ./src/endpoint.zz:189 ; self ; : ./src/endpoint.zz:189 ; &self->statem.connecting.initiator.pkt (declare-fun var2145_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () (_ BitVec 64)) (declare-fun var2146_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 () (_ BitVec 64)) (assert (= var2146_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 (theory0_len var2145_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) ) ) (assert (= var2146_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 (_ bv1 64)) ) (assert (= var2145_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 (_ bv2102 64)) ) (declare-fun var2147_true__t0 () Bool) (assert (= var2147_true__t0 (theory1_safe var2145_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) ) ) (assert var2147_true__t0 ) ; : ./src/endpoint.zz:189 ; . ; : ./src/endpoint.zz:189 ; . ; : ./src/endpoint.zz:189 ; . ; : ./src/endpoint.zz:189 ; -> ; : ./src/endpoint.zz:189 ; self ; : ./src/endpoint.zz:189 ; &self->statem.connecting.initiator.pkt (declare-fun var2148_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () (_ BitVec 64)) (declare-fun var2149_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 () (_ BitVec 64)) (assert (= var2149_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 (theory0_len var2148_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) ) ) (assert (= var2149_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 (_ bv1 64)) ) (assert (= var2148_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 (_ bv2102 64)) ) (declare-fun var2150_true__t0 () Bool) (assert (= var2150_true__t0 (theory1_safe var2148_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) ) ) (assert var2150_true__t0 ) ; : ./src/endpoint.zz:189 ; . ; : ./src/endpoint.zz:189 ; . ; : ./src/endpoint.zz:189 ; . ; : ./src/endpoint.zz:189 ; -> ; : ./src/endpoint.zz:189 ; self ; : ./src/endpoint.zz:189 ; &self->statem.connecting.initiator.pkt (declare-fun var2151_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () (_ BitVec 64)) (declare-fun var2152_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 () (_ BitVec 64)) (assert (= var2152_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 (theory0_len var2151_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) ) ) (assert (= var2152_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 (_ bv1 64)) ) (assert (= var2151_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 (_ bv2102 64)) ) (declare-fun var2153_true__t0 () Bool) (assert (= var2153_true__t0 (theory1_safe var2151_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) ) ) (assert var2153_true__t0 ) ; : ./src/endpoint.zz:189 ; &fromaddr ; : ./src/endpoint.zz:189 ; fromaddr ; : ./src/endpoint.zz:189 ; &fromaddr (declare-fun var2154_addressof_fromaddr___t0 () (_ BitVec 64)) (declare-fun var2155_len_addressof_fromaddr____t0 () (_ BitVec 64)) (assert (= var2155_len_addressof_fromaddr____t0 (theory0_len var2154_addressof_fromaddr___t0) ) ) (assert (= var2155_len_addressof_fromaddr____t0 (_ bv1 64)) ) (assert (= var2154_addressof_fromaddr___t0 (_ bv2093 64)) ) (declare-fun var2156_true__t0 () Bool) (assert (= var2156_true__t0 (theory1_safe var2154_addressof_fromaddr___t0) ) ) (assert var2156_true__t0 ) ; : ./src/endpoint.zz:189 ; fromaddr ; : ./src/endpoint.zz:189 ; &fromaddr (declare-fun var2157_addressof_fromaddr___t0 () (_ BitVec 64)) (declare-fun var2158_len_addressof_fromaddr____t0 () (_ BitVec 64)) (assert (= var2158_len_addressof_fromaddr____t0 (theory0_len var2157_addressof_fromaddr___t0) ) ) (assert (= var2158_len_addressof_fromaddr____t0 (_ bv1 64)) ) (assert (= var2157_addressof_fromaddr___t0 (_ bv2093 64)) ) (declare-fun var2159_true__t0 () Bool) (assert (= var2159_true__t0 (theory1_safe var2157_addressof_fromaddr___t0) ) ) (assert var2159_true__t0 ) ; : ./src/endpoint.zz:189 ; . ; : ./src/endpoint.zz:189 ; -> ; : ./src/endpoint.zz:189 ; self ; : ./src/endpoint.zz:189 ; . (declare-fun var2160_addressof_deref_S1770_self__udp4___t0 () (_ BitVec 64)) (declare-fun var2161_len_addressof_deref_S1770_self__udp4____t0 () (_ BitVec 64)) (assert (= var2161_len_addressof_deref_S1770_self__udp4____t0 (theory0_len var2160_addressof_deref_S1770_self__udp4___t0) ) ) (assert (= var2161_len_addressof_deref_S1770_self__udp4____t0 (_ bv1 64)) ) (assert (= var2160_addressof_deref_S1770_self__udp4___t0 (_ bv1949 64)) ) (declare-fun var2162_true__t0 () Bool) (assert (= var2162_true__t0 (theory1_safe var2160_addressof_deref_S1770_self__udp4___t0) ) ) (assert var2162_true__t0 ) ; : ./src/endpoint.zz:189 ; e (declare-fun var2163_cast_of_e__t0 () (_ BitVec 64)) (assert (! (= var2163_cast_of_e__t0 var1775_e__t0) :named A67)); : ./src/endpoint.zz:149 ; +et ; : ./src/endpoint.zz:189 ; &self->statem.connecting.initiator.pkt ; : ./src/endpoint.zz:189 ; . ; : ./src/endpoint.zz:189 ; . ; : ./src/endpoint.zz:189 ; . ; : ./src/endpoint.zz:189 ; -> ; : ./src/endpoint.zz:189 ; self ; : ./src/endpoint.zz:189 ; &self->statem.connecting.initiator.pkt (declare-fun var2164_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () (_ BitVec 64)) (declare-fun var2165_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 () (_ BitVec 64)) (assert (= var2165_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 (theory0_len var2164_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) ) ) (assert (= var2165_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 (_ bv1 64)) ) (assert (= var2164_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 (_ bv2102 64)) ) (declare-fun var2166_true__t0 () Bool) (assert (= var2166_true__t0 (theory1_safe var2164_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) ) ) (assert var2166_true__t0 ) (declare-fun var2167_cast_of_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () (_ BitVec 64)) (assert (! (= var2167_cast_of_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 var2164_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) :named A68)); : ./src/initiator.zz:24 ; +1024 ; literal expr (declare-fun var2168_literal_1024__t0 () (_ BitVec 64)) (assert (= var2168_literal_1024__t0 (_ bv1024 64)) ) ; : ./src/endpoint.zz:189 ; &fromaddr ; : ./src/endpoint.zz:189 ; fromaddr ; : ./src/endpoint.zz:189 ; &fromaddr (declare-fun var2169_addressof_fromaddr___t0 () (_ BitVec 64)) (declare-fun var2170_len_addressof_fromaddr____t0 () (_ BitVec 64)) (assert (= var2170_len_addressof_fromaddr____t0 (theory0_len var2169_addressof_fromaddr___t0) ) ) (assert (= var2170_len_addressof_fromaddr____t0 (_ bv1 64)) ) (assert (= var2169_addressof_fromaddr___t0 (_ bv2093 64)) ) (declare-fun var2171_true__t0 () Bool) (assert (= var2171_true__t0 (theory1_safe var2169_addressof_fromaddr___t0) ) ) (assert var2171_true__t0 ) ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/net/./src/udp.zz:78 ; * ; call of safe (declare-fun var2172_interpretation_of_theory_safe_over_addressof_fromaddr___t0 () Bool) (assert (= var2172_interpretation_of_theory_safe_over_addressof_fromaddr___t0 (theory1_safe var2169_addressof_fromaddr___t0) ) ) ; : /home/aep/proj/zz/modules/net/./src/udp.zz:78 ; * ; call of safe (declare-fun var2173_interpretation_of_theory_safe_over_cast_of_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () Bool) (assert (= var2173_interpretation_of_theory_safe_over_cast_of_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 (theory1_safe var2167_cast_of_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) ) ) ; : /home/aep/proj/zz/modules/net/./src/udp.zz:78 ; * ; call of safe (declare-fun var2174_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (assert (= var2174_interpretation_of_theory_safe_over_cast_of_e__t0 (theory1_safe var2163_cast_of_e__t0) ) ) ; : /home/aep/proj/zz/modules/net/./src/udp.zz:78 ; * ; call of safe (declare-fun var2175_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp4___t0 () Bool) (assert (= var2175_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp4___t0 (theory1_safe var2160_addressof_deref_S1770_self__udp4___t0) ) ) ; : /home/aep/proj/zz/modules/net/./src/udp.zz:79 ; *e) ; call of ::err::checked ; : /home/aep/proj/zz/modules/net/./src/udp.zz:79 ; err::checked ; : /home/aep/proj/zz/modules/net/./src/udp.zz:79 ; *e ; : /home/aep/proj/zz/modules/net/./src/udp.zz:79 ; e ; : /home/aep/proj/zz/modules/net/./src/udp.zz:79 ; *e ; : /home/aep/proj/zz/modules/net/./src/udp.zz:79 ; e ; : /home/aep/proj/zz/modules/net/./src/udp.zz:79 ; *e (declare-fun var2176_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2176_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t11) :named A69)); : /home/aep/proj/zz/modules/net/./src/udp.zz:79 ; e ; : /home/aep/proj/zz/modules/net/./src/udp.zz:79 ; *e (declare-fun var2177_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2177_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t11) :named A70)); : /home/aep/proj/zz/modules/net/./src/udp.zz:79 ; *e) (declare-fun var2178_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (assert (= var2178_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 (theory86___err__checked var2177_cast_of_deref_S1775_e___t0) ) ) (push 1) (assert (and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 (or (not var2172_interpretation_of_theory_safe_over_addressof_fromaddr___t0 ) (not var2173_interpretation_of_theory_safe_over_cast_of_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 ) (not var2174_interpretation_of_theory_safe_over_cast_of_e__t0 ) (not var2175_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp4___t0 ) (not var2178_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var2172_interpretation_of_theory_safe_over_addressof_fromaddr___t0 () Bool) (declare-fun var2173_interpretation_of_theory_safe_over_cast_of_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () Bool) (declare-fun var2174_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var2175_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp4___t0 () Bool) (declare-fun var2178_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) ; borrows after call ; 1949 to temporal +1 because of function borrow (declare-fun var1949_deref_S1770_self__udp4__t1 () (_ BitVec 64)) (declare-fun var1949_deref_S1770_self__udp4__t0 () (_ BitVec 64)) (assert (= var1949_deref_S1770_self__udp4__t1 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1949_deref_S1770_self__udp4__t1 var1949_deref_S1770_self__udp4__t0) ) ) ; 1777 to temporal +1 because of function borrow (declare-fun var1777_deref_S1775_e___t12 () (_ BitVec 64)) (assert (= var1777_deref_S1775_e___t12 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1777_deref_S1775_e___t12 var1777_deref_S1775_e___t11) ) ) ; 2102 to temporal +1 because of function borrow (declare-fun var2102_deref_S1770_self__statem_connecting_initiator_pkt__t2 () (_ BitVec 64)) (assert (= var2102_deref_S1770_self__statem_connecting_initiator_pkt__t2 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2102_deref_S1770_self__statem_connecting_initiator_pkt__t2 var2102_deref_S1770_self__statem_connecting_initiator_pkt__t1) ) ) ; 2093 to temporal +1 because of function borrow (declare-fun var2093_fromaddr__t2 () (_ BitVec 64)) (assert (= var2093_fromaddr__t2 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2093_fromaddr__t2 var2093_fromaddr__t1) ) ) ; end of borrows after call ; : ./src/endpoint.zz:189 ; e, &self->statem.connecting.initiator.pkt, &fromaddr) ; callsite effects ; end of callsite effects ; : ./src/endpoint.zz:189 ; io::Result::Ready ; : /home/aep/proj/zz/modules/io/./src/lib.zz:24 ; Result (declare-fun var2180_implicit_coercion_of___io__Result__Ready__t0 () (_ BitVec 64)) (assert (! (= var2180_implicit_coercion_of___io__Result__Ready__t0 var248___io__Result__Ready__t0) :named A71)); : ./src/endpoint.zz:189 ; == (declare-fun var2181_infix_expression__t0 () Bool) (declare-fun var2179_return_value_of___net__udp__recvfrom__t0 () (_ BitVec 64)) (assert (= var2181_infix_expression__t0 (= var2179_return_value_of___net__udp__recvfrom__t0 var2180_implicit_coercion_of___io__Result__Ready__t0)) ) (check-sat) (get-value ( var2181_infix_expression__t0 ) ) ; = "true" (push 1) (assert (not (= var2181_infix_expression__t0 true)) ) (check-sat) (pop 1) ; : ./src/endpoint.zz:189 ; if self->udp4.recvfrom(e, &self->statem.connecting.initiator.pkt, &fromaddr) == io::Result::Ready { ; err::new(e); ; ; ; channel::Channel mut broker_chan = {0}; ; bootstrap::Broker mut redir = {0}; ; self->statem.connecting.initiator.complete(e, &broker_chan, &redir); ; if err::check(e) { ; e->eprint(); ; err::new(e); ; // don't return here. we might have stuff to set the timer in the rest of the code ; } else if redir.protocol != 0 { ; memcpy(&self->statem.connecting.current_broker, &redir, sizeof(bootstrap::Broker)); ; self->statem.connecting.retry_sending = 0; ; self->timeout.close(); ; return self->poll(e, async); ; } else { ; self->state = State::Connected; ; memset(&self->statem , 0, sizeof(StateM)); ; broker_chan.peering.received(peering::Transport::Udp, fromaddr); ; broker_chan.q.allocator = &self->framebuffer; ; broker_chan.on_open = (channel::on_open_t)on_remote_open; ; self->statem.connected = router::new(broker_chan, self->udp4, self->udp6); ; return io::Result::Ready; ; } ; err::new(e); ; } ; : ./src/endpoint.zz:190 ; e) ; call of ::err::new ; : ./src/endpoint.zz:190 ; err::new ; : ./src/endpoint.zz:190 ; e (declare-fun var2182_cast_of_e__t0 () (_ BitVec 64)) (assert (! (= var2182_cast_of_e__t0 var1775_e__t0) :named A72)); : ./src/endpoint.zz:149 ; +et ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:18 ; * ; call of safe (declare-fun var2183_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (assert (= var2183_interpretation_of_theory_safe_over_cast_of_e__t0 (theory1_safe var2182_cast_of_e__t0) ) ) (push 1) (assert (and ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 ) (or (not var2183_interpretation_of_theory_safe_over_cast_of_e__t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var2183_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) ; borrows after call ; 1777 to temporal +1 because of function borrow (declare-fun var1777_deref_S1775_e___t13 () (_ BitVec 64)) (assert (= var1777_deref_S1775_e___t13 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 ) var1777_deref_S1775_e___t13 var1777_deref_S1775_e___t12) ) ) ; end of borrows after call ; : ./src/endpoint.zz:190 ; e) ; callsite effects (declare-fun var2184_return_value_of___err__new__t0 () (_ BitVec 64)) (declare-fun var2186_safe_return_value_of___err__new_____safe_return___t0 () Bool) (assert (= var2186_safe_return_value_of___err__new_____safe_return___t0 (theory1_safe var2184_return_value_of___err__new__t0) ) ) (declare-fun var2185_return__t1 () (_ BitVec 64)) (assert (= var2186_safe_return_value_of___err__new_____safe_return___t0 (theory1_safe var2185_return__t1) ) ) (declare-fun var2187_nullterm_return_value_of___err__new_____nullterm_return___t0 () Bool) (assert (= var2187_nullterm_return_value_of___err__new_____nullterm_return___t0 (theory2_nullterm var2184_return_value_of___err__new__t0) ) ) (assert (= var2187_nullterm_return_value_of___err__new_____nullterm_return___t0 (theory2_nullterm var2185_return__t1) ) ) (declare-fun var2185_return__t0 () (_ BitVec 64)) (assert (= var2185_return__t1 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 ) var2184_return_value_of___err__new__t0 var2185_return__t0) ) ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; *self) ; call of ::err::checked ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; checked ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; *self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; *self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; *self (declare-fun var2188_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2188_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t13) :named A73)); : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; *self (declare-fun var2189_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2189_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t13) :named A74)); : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; *self) (declare-fun var2190_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (assert (= var2190_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 (theory86___err__checked var2189_cast_of_deref_S1775_e___t0) ) ) (assert (! var2190_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 :named A75))(check-sat) ; : ./src/endpoint.zz:190 ; e) (declare-fun var2191_safe_return_____safe_return_value_of___err__new___t0 () Bool) (assert (= var2191_safe_return_____safe_return_value_of___err__new___t0 (theory1_safe var2185_return__t1) ) ) (declare-fun var2184_return_value_of___err__new__t1 () (_ BitVec 64)) (assert (= var2191_safe_return_____safe_return_value_of___err__new___t0 (theory1_safe var2184_return_value_of___err__new__t1) ) ) (declare-fun var2192_nullterm_return_____nullterm_return_value_of___err__new___t0 () Bool) (assert (= var2192_nullterm_return_____nullterm_return_value_of___err__new___t0 (theory2_nullterm var2185_return__t1) ) ) (assert (= var2192_nullterm_return_____nullterm_return_value_of___err__new___t0 (theory2_nullterm var2184_return_value_of___err__new__t1) ) ) (assert (= var2184_return_value_of___err__new__t1 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 ) var2185_return__t1 var2184_return_value_of___err__new__t0) ) ) ; end of callsite effects ; : ./src/endpoint.zz:193 ; channel::Channel mut broker_chan = {0} ; : ./src/endpoint.zz:193 ; {0} ; : ./src/endpoint.zz:193 ; 0 ; literal expr (declare-fun var2194_literal_0__t0 () (_ BitVec 64)) (assert (= var2194_literal_0__t0 (_ bv0 64)) ) ; : ./src/endpoint.zz:193 ; {0} (declare-fun var2195_literal_array_2195__t0 () (_ BitVec 64)) (declare-fun var2196_true__t0 () Bool) (assert (= var2196_true__t0 (theory1_safe var2195_literal_array_2195__t0) ) ) (assert var2196_true__t0 ) ; : ./src/endpoint.zz:193 ; channel::Channel mut broker_chan = {0} (declare-fun var2197_safe_literal_array_2195_____safe_broker_chan___t0 () Bool) (assert (= var2197_safe_literal_array_2195_____safe_broker_chan___t0 (theory1_safe var2195_literal_array_2195__t0) ) ) (declare-fun var2193_broker_chan__t1 () (_ BitVec 64)) (assert (= var2197_safe_literal_array_2195_____safe_broker_chan___t0 (theory1_safe var2193_broker_chan__t1) ) ) (declare-fun var2198_nullterm_literal_array_2195_____nullterm_broker_chan___t0 () Bool) (assert (= var2198_nullterm_literal_array_2195_____nullterm_broker_chan___t0 (theory2_nullterm var2195_literal_array_2195__t0) ) ) (assert (= var2198_nullterm_literal_array_2195_____nullterm_broker_chan___t0 (theory2_nullterm var2193_broker_chan__t1) ) ) (declare-fun var2199_len_broker_chan___t0 () (_ BitVec 64)) (assert (= var2199_len_broker_chan___t0 (theory0_len var2193_broker_chan__t1) ) ) (assert (= var2199_len_broker_chan___t0 (_ bv1 64)) ) ; : ./src/endpoint.zz:194 ; bootstrap::Broker mut redir = {0} ; : ./src/endpoint.zz:194 ; {0} ; : ./src/endpoint.zz:194 ; 0 ; literal expr (declare-fun var2201_literal_0__t0 () (_ BitVec 64)) (assert (= var2201_literal_0__t0 (_ bv0 64)) ) ; : ./src/endpoint.zz:194 ; {0} (declare-fun var2202_literal_array_2202__t0 () (_ BitVec 64)) (declare-fun var2203_true__t0 () Bool) (assert (= var2203_true__t0 (theory1_safe var2202_literal_array_2202__t0) ) ) (assert var2203_true__t0 ) ; : ./src/endpoint.zz:194 ; bootstrap::Broker mut redir = {0} (declare-fun var2204_safe_literal_array_2202_____safe_redir___t0 () Bool) (assert (= var2204_safe_literal_array_2202_____safe_redir___t0 (theory1_safe var2202_literal_array_2202__t0) ) ) (declare-fun var2200_redir__t1 () (_ BitVec 64)) (assert (= var2204_safe_literal_array_2202_____safe_redir___t0 (theory1_safe var2200_redir__t1) ) ) (declare-fun var2205_nullterm_literal_array_2202_____nullterm_redir___t0 () Bool) (assert (= var2205_nullterm_literal_array_2202_____nullterm_redir___t0 (theory2_nullterm var2202_literal_array_2202__t0) ) ) (assert (= var2205_nullterm_literal_array_2202_____nullterm_redir___t0 (theory2_nullterm var2200_redir__t1) ) ) (declare-fun var2206_len_redir___t0 () (_ BitVec 64)) (assert (= var2206_len_redir___t0 (theory0_len var2200_redir__t1) ) ) (assert (= var2206_len_redir___t0 (_ bv1 64)) ) ; : ./src/endpoint.zz:195 ; e, &broker_chan, &redir) ; call ; : ./src/endpoint.zz:195 ; . ; : ./src/endpoint.zz:195 ; . ; : ./src/endpoint.zz:195 ; . ; : ./src/endpoint.zz:195 ; -> ; : ./src/endpoint.zz:195 ; self ; : ./src/endpoint.zz:195 ; . ; : ./src/endpoint.zz:195 ; e, &broker_chan, &redir) ; call of ::carrier::initiator::complete ; : ./src/endpoint.zz:195 ; . ; : ./src/endpoint.zz:195 ; . ; : ./src/endpoint.zz:195 ; . ; : ./src/endpoint.zz:195 ; -> ; : ./src/endpoint.zz:195 ; self ; : ./src/endpoint.zz:195 ; . (declare-fun var2208_addressof_deref_S1770_self__statem_connecting_initiator___t0 () (_ BitVec 64)) (declare-fun var2209_len_addressof_deref_S1770_self__statem_connecting_initiator____t0 () (_ BitVec 64)) (assert (= var2209_len_addressof_deref_S1770_self__statem_connecting_initiator____t0 (theory0_len var2208_addressof_deref_S1770_self__statem_connecting_initiator___t0) ) ) (assert (= var2209_len_addressof_deref_S1770_self__statem_connecting_initiator____t0 (_ bv1 64)) ) (assert (= var2208_addressof_deref_S1770_self__statem_connecting_initiator___t0 (_ bv2101 64)) ) (declare-fun var2210_true__t0 () Bool) (assert (= var2210_true__t0 (theory1_safe var2208_addressof_deref_S1770_self__statem_connecting_initiator___t0) ) ) (assert var2210_true__t0 ) ; : ./src/endpoint.zz:195 ; . ; : ./src/endpoint.zz:195 ; . ; : ./src/endpoint.zz:195 ; -> ; : ./src/endpoint.zz:195 ; self ; : ./src/endpoint.zz:195 ; . (declare-fun var2211_addressof_deref_S1770_self__statem_connecting_initiator___t0 () (_ BitVec 64)) (declare-fun var2212_len_addressof_deref_S1770_self__statem_connecting_initiator____t0 () (_ BitVec 64)) (assert (= var2212_len_addressof_deref_S1770_self__statem_connecting_initiator____t0 (theory0_len var2211_addressof_deref_S1770_self__statem_connecting_initiator___t0) ) ) (assert (= var2212_len_addressof_deref_S1770_self__statem_connecting_initiator____t0 (_ bv1 64)) ) (assert (= var2211_addressof_deref_S1770_self__statem_connecting_initiator___t0 (_ bv2101 64)) ) (declare-fun var2213_true__t0 () Bool) (assert (= var2213_true__t0 (theory1_safe var2211_addressof_deref_S1770_self__statem_connecting_initiator___t0) ) ) (assert var2213_true__t0 ) ; : ./src/endpoint.zz:195 ; e ; : ./src/endpoint.zz:195 ; &broker_chan ; : ./src/endpoint.zz:195 ; broker_chan ; : ./src/endpoint.zz:195 ; &broker_chan (declare-fun var2214_addressof_broker_chan___t0 () (_ BitVec 64)) (declare-fun var2215_len_addressof_broker_chan____t0 () (_ BitVec 64)) (assert (= var2215_len_addressof_broker_chan____t0 (theory0_len var2214_addressof_broker_chan___t0) ) ) (assert (= var2215_len_addressof_broker_chan____t0 (_ bv1 64)) ) (assert (= var2214_addressof_broker_chan___t0 (_ bv2193 64)) ) (declare-fun var2216_true__t0 () Bool) (assert (= var2216_true__t0 (theory1_safe var2214_addressof_broker_chan___t0) ) ) (assert var2216_true__t0 ) ; : ./src/endpoint.zz:195 ; broker_chan ; : ./src/endpoint.zz:195 ; &broker_chan (declare-fun var2217_addressof_broker_chan___t0 () (_ BitVec 64)) (declare-fun var2218_len_addressof_broker_chan____t0 () (_ BitVec 64)) (assert (= var2218_len_addressof_broker_chan____t0 (theory0_len var2217_addressof_broker_chan___t0) ) ) (assert (= var2218_len_addressof_broker_chan____t0 (_ bv1 64)) ) (assert (= var2217_addressof_broker_chan___t0 (_ bv2193 64)) ) (declare-fun var2219_true__t0 () Bool) (assert (= var2219_true__t0 (theory1_safe var2217_addressof_broker_chan___t0) ) ) (assert var2219_true__t0 ) ; : ./src/endpoint.zz:195 ; &redir ; : ./src/endpoint.zz:195 ; redir ; : ./src/endpoint.zz:195 ; &redir (declare-fun var2220_addressof_redir___t0 () (_ BitVec 64)) (declare-fun var2221_len_addressof_redir____t0 () (_ BitVec 64)) (assert (= var2221_len_addressof_redir____t0 (theory0_len var2220_addressof_redir___t0) ) ) (assert (= var2221_len_addressof_redir____t0 (_ bv1 64)) ) (assert (= var2220_addressof_redir___t0 (_ bv2200 64)) ) (declare-fun var2222_true__t0 () Bool) (assert (= var2222_true__t0 (theory1_safe var2220_addressof_redir___t0) ) ) (assert var2222_true__t0 ) ; : ./src/endpoint.zz:195 ; redir ; : ./src/endpoint.zz:195 ; &redir (declare-fun var2223_addressof_redir___t0 () (_ BitVec 64)) (declare-fun var2224_len_addressof_redir____t0 () (_ BitVec 64)) (assert (= var2224_len_addressof_redir____t0 (theory0_len var2223_addressof_redir___t0) ) ) (assert (= var2224_len_addressof_redir____t0 (_ bv1 64)) ) (assert (= var2223_addressof_redir___t0 (_ bv2200 64)) ) (declare-fun var2225_true__t0 () Bool) (assert (= var2225_true__t0 (theory1_safe var2223_addressof_redir___t0) ) ) (assert var2225_true__t0 ) ; : ./src/endpoint.zz:195 ; . ; : ./src/endpoint.zz:195 ; . ; : ./src/endpoint.zz:195 ; . ; : ./src/endpoint.zz:195 ; -> ; : ./src/endpoint.zz:195 ; self ; : ./src/endpoint.zz:195 ; . (declare-fun var2226_addressof_deref_S1770_self__statem_connecting_initiator___t0 () (_ BitVec 64)) (declare-fun var2227_len_addressof_deref_S1770_self__statem_connecting_initiator____t0 () (_ BitVec 64)) (assert (= var2227_len_addressof_deref_S1770_self__statem_connecting_initiator____t0 (theory0_len var2226_addressof_deref_S1770_self__statem_connecting_initiator___t0) ) ) (assert (= var2227_len_addressof_deref_S1770_self__statem_connecting_initiator____t0 (_ bv1 64)) ) (assert (= var2226_addressof_deref_S1770_self__statem_connecting_initiator___t0 (_ bv2101 64)) ) (declare-fun var2228_true__t0 () Bool) (assert (= var2228_true__t0 (theory1_safe var2226_addressof_deref_S1770_self__statem_connecting_initiator___t0) ) ) (assert var2228_true__t0 ) ; : ./src/endpoint.zz:195 ; e (declare-fun var2229_cast_of_e__t0 () (_ BitVec 64)) (assert (! (= var2229_cast_of_e__t0 var1775_e__t0) :named A76)); : ./src/endpoint.zz:149 ; +et ; : ./src/endpoint.zz:195 ; &broker_chan ; : ./src/endpoint.zz:195 ; broker_chan ; : ./src/endpoint.zz:195 ; &broker_chan (declare-fun var2230_addressof_broker_chan___t0 () (_ BitVec 64)) (declare-fun var2231_len_addressof_broker_chan____t0 () (_ BitVec 64)) (assert (= var2231_len_addressof_broker_chan____t0 (theory0_len var2230_addressof_broker_chan___t0) ) ) (assert (= var2231_len_addressof_broker_chan____t0 (_ bv1 64)) ) (assert (= var2230_addressof_broker_chan___t0 (_ bv2193 64)) ) (declare-fun var2232_true__t0 () Bool) (assert (= var2232_true__t0 (theory1_safe var2230_addressof_broker_chan___t0) ) ) (assert var2232_true__t0 ) ; : ./src/endpoint.zz:195 ; &redir ; : ./src/endpoint.zz:195 ; redir ; : ./src/endpoint.zz:195 ; &redir (declare-fun var2233_addressof_redir___t0 () (_ BitVec 64)) (declare-fun var2234_len_addressof_redir____t0 () (_ BitVec 64)) (assert (= var2234_len_addressof_redir____t0 (theory0_len var2233_addressof_redir___t0) ) ) (assert (= var2234_len_addressof_redir____t0 (_ bv1 64)) ) (assert (= var2233_addressof_redir___t0 (_ bv2200 64)) ) (declare-fun var2235_true__t0 () Bool) (assert (= var2235_true__t0 (theory1_safe var2233_addressof_redir___t0) ) ) (assert var2235_true__t0 ) ;callsite_assert (push 1) ; : ./src/initiator.zz:146 ; * ; call of safe (declare-fun var2236_interpretation_of_theory_safe_over_addressof_redir___t0 () Bool) (assert (= var2236_interpretation_of_theory_safe_over_addressof_redir___t0 (theory1_safe var2233_addressof_redir___t0) ) ) ; : ./src/initiator.zz:145 ; * ; call of safe (declare-fun var2237_interpretation_of_theory_safe_over_addressof_broker_chan___t0 () Bool) (assert (= var2237_interpretation_of_theory_safe_over_addressof_broker_chan___t0 (theory1_safe var2230_addressof_broker_chan___t0) ) ) ; : ./src/initiator.zz:143 ; * ; call of safe (declare-fun var2238_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (assert (= var2238_interpretation_of_theory_safe_over_cast_of_e__t0 (theory1_safe var2229_cast_of_e__t0) ) ) ; : ./src/initiator.zz:142 ; * ; call of safe (declare-fun var2239_interpretation_of_theory_safe_over_addressof_deref_S1770_self__statem_connecting_initiator___t0 () Bool) (assert (= var2239_interpretation_of_theory_safe_over_addressof_deref_S1770_self__statem_connecting_initiator___t0 (theory1_safe var2226_addressof_deref_S1770_self__statem_connecting_initiator___t0) ) ) ; : ./src/initiator.zz:148 ; *e) ; call of ::err::checked ; : ./src/initiator.zz:148 ; err::checked ; : ./src/initiator.zz:148 ; *e ; : ./src/initiator.zz:148 ; e ; : ./src/initiator.zz:148 ; *e ; : ./src/initiator.zz:148 ; e ; : ./src/initiator.zz:148 ; *e (declare-fun var2240_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2240_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t13) :named A77)); : ./src/initiator.zz:148 ; e ; : ./src/initiator.zz:148 ; *e (declare-fun var2241_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2241_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t13) :named A78)); : ./src/initiator.zz:148 ; *e) (declare-fun var2242_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (assert (= var2242_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 (theory86___err__checked var2241_cast_of_deref_S1775_e___t0) ) ) (push 1) (assert (and ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 ) (or (not var2236_interpretation_of_theory_safe_over_addressof_redir___t0 ) (not var2237_interpretation_of_theory_safe_over_addressof_broker_chan___t0 ) (not var2238_interpretation_of_theory_safe_over_cast_of_e__t0 ) (not var2239_interpretation_of_theory_safe_over_addressof_deref_S1770_self__statem_connecting_initiator___t0 ) (not var2242_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var2236_interpretation_of_theory_safe_over_addressof_redir___t0 () Bool) (declare-fun var2237_interpretation_of_theory_safe_over_addressof_broker_chan___t0 () Bool) (declare-fun var2238_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var2239_interpretation_of_theory_safe_over_addressof_deref_S1770_self__statem_connecting_initiator___t0 () Bool) (declare-fun var2242_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) ; borrows after call ; 2101 to temporal +1 because of function borrow (declare-fun var2101_deref_S1770_self__statem_connecting_initiator__t1 () (_ BitVec 64)) (declare-fun var2101_deref_S1770_self__statem_connecting_initiator__t0 () (_ BitVec 64)) (assert (= var2101_deref_S1770_self__statem_connecting_initiator__t1 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 ) var2101_deref_S1770_self__statem_connecting_initiator__t1 var2101_deref_S1770_self__statem_connecting_initiator__t0) ) ) ; 1777 to temporal +1 because of function borrow (declare-fun var1777_deref_S1775_e___t14 () (_ BitVec 64)) (assert (= var1777_deref_S1775_e___t14 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 ) var1777_deref_S1775_e___t14 var1777_deref_S1775_e___t13) ) ) ; 2193 to temporal +1 because of function borrow (declare-fun var2193_broker_chan__t2 () (_ BitVec 64)) (assert (= var2193_broker_chan__t2 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 ) var2193_broker_chan__t2 var2193_broker_chan__t1) ) ) ; 2200 to temporal +1 because of function borrow (declare-fun var2200_redir__t2 () (_ BitVec 64)) (assert (= var2200_redir__t2 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 ) var2200_redir__t2 var2200_redir__t1) ) ) ; end of borrows after call ; : ./src/endpoint.zz:195 ; e, &broker_chan, &redir) ; callsite effects ; end of callsite effects ; : ./src/endpoint.zz:196 ; e) ; call of ::err::check ; : ./src/endpoint.zz:196 ; err::check ; : ./src/endpoint.zz:196 ; e (declare-fun var2244_cast_of_e__t0 () (_ BitVec 64)) (assert (! (= var2244_cast_of_e__t0 var1775_e__t0) :named A79)); : ./src/endpoint.zz:149 ; +et ; : /home/aep/proj/zz/modules/err/./src/lib.zz:28 ; callsite_source (declare-fun var2245_literal_string____src_endpoint_zz___t0 () (_ BitVec 64)) (declare-fun var2246_true__t0 () Bool) (assert (= var2246_true__t0 (theory1_safe var2245_literal_string____src_endpoint_zz___t0) ) ) (assert var2246_true__t0 ) (declare-fun var2247_true__t0 () Bool) (assert (= var2247_true__t0 (theory2_nullterm var2245_literal_string____src_endpoint_zz___t0) ) ) (assert var2247_true__t0 ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:29 ; callsite_source (declare-fun var2248_literal_string____carrier__endpoint__poll___t0 () (_ BitVec 64)) (declare-fun var2249_true__t0 () Bool) (assert (= var2249_true__t0 (theory1_safe var2248_literal_string____carrier__endpoint__poll___t0) ) ) (assert var2249_true__t0 ) (declare-fun var2250_true__t0 () Bool) (assert (= var2250_true__t0 (theory2_nullterm var2248_literal_string____carrier__endpoint__poll___t0) ) ) (assert var2250_true__t0 ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:30 ; callsite_source ; literal expr (declare-fun var2251_literal_196__t0 () (_ BitVec 64)) (assert (= var2251_literal_196__t0 (_ bv196 64)) ) ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:27 ; * ; call of safe (declare-fun var2252_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (assert (= var2252_interpretation_of_theory_safe_over_cast_of_e__t0 (theory1_safe var2244_cast_of_e__t0) ) ) (push 1) (assert (and ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 ) (or (not var2252_interpretation_of_theory_safe_over_cast_of_e__t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var2252_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) ; borrows after call ; 1777 to temporal +1 because of function borrow (declare-fun var1777_deref_S1775_e___t15 () (_ BitVec 64)) (assert (= var1777_deref_S1775_e___t15 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 ) var1777_deref_S1775_e___t15 var1777_deref_S1775_e___t14) ) ) ; end of borrows after call ; : ./src/endpoint.zz:196 ; e) ; callsite effects (declare-fun var2254_return__t1 () Bool) (declare-fun var2253_return_value_of___err__check__t0 () Bool) (declare-fun var2254_return__t0 () Bool) (assert (= var2254_return__t1 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 ) var2253_return_value_of___err__check__t0 var2254_return__t0) ) ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self) ; call of ::err::checked ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; checked ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self (declare-fun var2255_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2255_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t15) :named A80)); : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self (declare-fun var2256_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2256_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t15) :named A81)); : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self) (declare-fun var2257_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (assert (= var2257_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 (theory86___err__checked var2256_cast_of_deref_S1775_e___t0) ) ) (assert (! var2257_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 :named A82))(check-sat) (declare-fun var2253_return_value_of___err__check__t1 () Bool) (assert (= var2253_return_value_of___err__check__t1 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 ) var2254_return__t1 var2253_return_value_of___err__check__t0) ) ) ; end of callsite effects (check-sat) (get-value ( var2253_return_value_of___err__check__t1 ) ) ; = "false" (push 1) (assert (not (= var2253_return_value_of___err__check__t1 false)) ) (check-sat) (pop 1) ; : ./src/endpoint.zz:196 ; e) ; : ./src/endpoint.zz:196 ; if err::check(e) { ; e->eprint(); ; err::new(e); ; // don't return here. we might have stuff to set the timer in the rest of the code ; } ; : ./src/endpoint.zz:197 ; ) ; call ; : ./src/endpoint.zz:197 ; -> ; : ./src/endpoint.zz:197 ; e ; : ./src/endpoint.zz:197 ; -> ; : ./src/endpoint.zz:197 ; ) ; call of ::err::eprint ; : ./src/endpoint.zz:197 ; -> ; : ./src/endpoint.zz:197 ; e (declare-fun var2259_cast_of_e__t0 () (_ BitVec 64)) (assert (! (= var2259_cast_of_e__t0 var1775_e__t0) :named A83)); : ./src/endpoint.zz:149 ; +et ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:116 ; * ; call of safe (declare-fun var2260_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (assert (= var2260_interpretation_of_theory_safe_over_cast_of_e__t0 (theory1_safe var2259_cast_of_e__t0) ) ) (push 1) (assert (and ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 var2253_return_value_of___err__check__t1 ) (or (not var2260_interpretation_of_theory_safe_over_cast_of_e__t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var2260_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) ; borrows after call ; 1777 to temporal +1 because of function borrow (declare-fun var1777_deref_S1775_e___t16 () (_ BitVec 64)) (assert (= var1777_deref_S1775_e___t16 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 var2253_return_value_of___err__check__t1 ) var1777_deref_S1775_e___t16 var1777_deref_S1775_e___t15) ) ) ; end of borrows after call ; : ./src/endpoint.zz:197 ; ) ; callsite effects ; end of callsite effects ; : ./src/endpoint.zz:198 ; e) ; call of ::err::new ; : ./src/endpoint.zz:198 ; err::new ; : ./src/endpoint.zz:198 ; e (declare-fun var2262_cast_of_e__t0 () (_ BitVec 64)) (assert (! (= var2262_cast_of_e__t0 var1775_e__t0) :named A84)); : ./src/endpoint.zz:149 ; +et ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:18 ; * ; call of safe (declare-fun var2263_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (assert (= var2263_interpretation_of_theory_safe_over_cast_of_e__t0 (theory1_safe var2262_cast_of_e__t0) ) ) (push 1) (assert (and ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 var2253_return_value_of___err__check__t1 ) (or (not var2263_interpretation_of_theory_safe_over_cast_of_e__t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var2263_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) ; borrows after call ; 1777 to temporal +1 because of function borrow (declare-fun var1777_deref_S1775_e___t17 () (_ BitVec 64)) (assert (= var1777_deref_S1775_e___t17 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 var2253_return_value_of___err__check__t1 ) var1777_deref_S1775_e___t17 var1777_deref_S1775_e___t16) ) ) ; end of borrows after call ; : ./src/endpoint.zz:198 ; e) ; callsite effects (declare-fun var2264_return_value_of___err__new__t0 () (_ BitVec 64)) (declare-fun var2266_safe_return_value_of___err__new_____safe_return___t0 () Bool) (assert (= var2266_safe_return_value_of___err__new_____safe_return___t0 (theory1_safe var2264_return_value_of___err__new__t0) ) ) (declare-fun var2265_return__t1 () (_ BitVec 64)) (assert (= var2266_safe_return_value_of___err__new_____safe_return___t0 (theory1_safe var2265_return__t1) ) ) (declare-fun var2267_nullterm_return_value_of___err__new_____nullterm_return___t0 () Bool) (assert (= var2267_nullterm_return_value_of___err__new_____nullterm_return___t0 (theory2_nullterm var2264_return_value_of___err__new__t0) ) ) (assert (= var2267_nullterm_return_value_of___err__new_____nullterm_return___t0 (theory2_nullterm var2265_return__t1) ) ) (declare-fun var2265_return__t0 () (_ BitVec 64)) (assert (= var2265_return__t1 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 var2253_return_value_of___err__check__t1 ) var2264_return_value_of___err__new__t0 var2265_return__t0) ) ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; *self) ; call of ::err::checked ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; checked ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; *self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; *self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; *self (declare-fun var2268_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2268_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t17) :named A85)); : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; *self (declare-fun var2269_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2269_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t17) :named A86)); : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; *self) (declare-fun var2270_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (assert (= var2270_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 (theory86___err__checked var2269_cast_of_deref_S1775_e___t0) ) ) (assert (! var2270_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 :named A87))(check-sat) ; : ./src/endpoint.zz:198 ; e) (declare-fun var2271_safe_return_____safe_return_value_of___err__new___t0 () Bool) (assert (= var2271_safe_return_____safe_return_value_of___err__new___t0 (theory1_safe var2265_return__t1) ) ) (declare-fun var2264_return_value_of___err__new__t1 () (_ BitVec 64)) (assert (= var2271_safe_return_____safe_return_value_of___err__new___t0 (theory1_safe var2264_return_value_of___err__new__t1) ) ) (declare-fun var2272_nullterm_return_____nullterm_return_value_of___err__new___t0 () Bool) (assert (= var2272_nullterm_return_____nullterm_return_value_of___err__new___t0 (theory2_nullterm var2265_return__t1) ) ) (assert (= var2272_nullterm_return_____nullterm_return_value_of___err__new___t0 (theory2_nullterm var2264_return_value_of___err__new__t1) ) ) (assert (= var2264_return_value_of___err__new__t1 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 var2253_return_value_of___err__check__t1 ) var2265_return__t1 var2264_return_value_of___err__new__t0) ) ) ; end of callsite effects ; end branch ; : ./src/endpoint.zz:200 ; != ; : ./src/endpoint.zz:200 ; . ; : ./src/endpoint.zz:200 ; redir ; : ./src/endpoint.zz:200 ; . ; : ./src/endpoint.zz:200 ; 0 ; literal expr (declare-fun var2274_literal_0__t0 () (_ BitVec 64)) (assert (= var2274_literal_0__t0 (_ bv0 64)) ) (declare-fun var2275_implicit_coercion_of_literal_0__t0 () (_ BitVec 8)) (assert (! (= var2275_implicit_coercion_of_literal_0__t0 ( (_ extract 7 0) var2274_literal_0__t0 )) :named A88)); : ./src/endpoint.zz:200 ; != (declare-fun var2276_infix_expression__t0 () Bool) (declare-fun var2273_redir_protocol__t0 () (_ BitVec 8)) (assert (= var2276_infix_expression__t0 (not (= var2273_redir_protocol__t0 var2275_implicit_coercion_of_literal_0__t0))) ) (check-sat) (get-value ( var2276_infix_expression__t0 ) ) ; = "false" (push 1) (assert (not (= var2276_infix_expression__t0 false)) ) (check-sat) (pop 1) ; : ./src/endpoint.zz:200 ; else if redir.protocol != 0 { ; memcpy(&self->statem.connecting.current_broker, &redir, sizeof(bootstrap::Broker)); ; self->statem.connecting.retry_sending = 0; ; self->timeout.close(); ; return self->poll(e, async); ; } ; : ./src/endpoint.zz:201 ; &self->statem.connecting.current_broker, &redir, sizeof(bootstrap::Broker)) ; call of ::ext::::memcpy ; : ./src/endpoint.zz:201 ; memcpy ; : ./src/endpoint.zz:201 ; &self->statem.connecting.current_broker ; : ./src/endpoint.zz:201 ; . ; : ./src/endpoint.zz:201 ; . ; : ./src/endpoint.zz:201 ; -> ; : ./src/endpoint.zz:201 ; self ; : ./src/endpoint.zz:201 ; . ; : ./src/endpoint.zz:201 ; &self->statem.connecting.current_broker (declare-fun var2278_addressof_deref_S1770_self__statem_connecting_current_broker___t0 () (_ BitVec 64)) (declare-fun var2279_len_addressof_deref_S1770_self__statem_connecting_current_broker____t0 () (_ BitVec 64)) (assert (= var2279_len_addressof_deref_S1770_self__statem_connecting_current_broker____t0 (theory0_len var2278_addressof_deref_S1770_self__statem_connecting_current_broker___t0) ) ) (assert (= var2279_len_addressof_deref_S1770_self__statem_connecting_current_broker____t0 (_ bv1 64)) ) (assert (= var2278_addressof_deref_S1770_self__statem_connecting_current_broker___t0 (_ bv2277 64)) ) (declare-fun var2280_true__t0 () Bool) (assert (= var2280_true__t0 (theory1_safe var2278_addressof_deref_S1770_self__statem_connecting_current_broker___t0) ) ) (assert var2280_true__t0 ) ; : ./src/endpoint.zz:201 ; &redir ; : ./src/endpoint.zz:201 ; redir ; : ./src/endpoint.zz:201 ; &redir (declare-fun var2281_addressof_redir___t0 () (_ BitVec 64)) (declare-fun var2282_len_addressof_redir____t0 () (_ BitVec 64)) (assert (= var2282_len_addressof_redir____t0 (theory0_len var2281_addressof_redir___t0) ) ) (assert (= var2282_len_addressof_redir____t0 (_ bv1 64)) ) (assert (= var2281_addressof_redir___t0 (_ bv2200 64)) ) (declare-fun var2283_true__t0 () Bool) (assert (= var2283_true__t0 (theory1_safe var2281_addressof_redir___t0) ) ) (assert var2283_true__t0 ) ; : ./src/endpoint.zz:201 ; bootstrap::Broker) ; call of ::ext::::sizeof ; : ./src/endpoint.zz:201 ; sizeof ; : ./src/endpoint.zz:201 ; bootstrap::Broker ; : ./src/endpoint.zz:201 ; bootstrap::Broker) ; : ./src/endpoint.zz:201 ; &self->statem.connecting.current_broker, &redir, sizeof(bootstrap::Broker)) ; : ./src/endpoint.zz:202 ; . ; : ./src/endpoint.zz:202 ; . ; : ./src/endpoint.zz:202 ; -> ; : ./src/endpoint.zz:202 ; self ; : ./src/endpoint.zz:202 ; . ; : ./src/endpoint.zz:202 ; 0 ; literal expr (declare-fun var2288_literal_0__t0 () (_ BitVec 64)) (assert (= var2288_literal_0__t0 (_ bv0 64)) ) (declare-fun var2289_implicit_coercion_of_literal_0__t0 () (_ BitVec 64)) (assert (! (= var2289_implicit_coercion_of_literal_0__t0 var2288_literal_0__t0) :named A89)); : ./src/endpoint.zz:202 ; self->statem.connecting.retry_sending = 0 (declare-fun var2290_safe_implicit_coercion_of_literal_0_____safe_deref_S1770_self__statem_connecting_retry_sending___t0 () Bool) (assert (= var2290_safe_implicit_coercion_of_literal_0_____safe_deref_S1770_self__statem_connecting_retry_sending___t0 (theory1_safe var2289_implicit_coercion_of_literal_0__t0) ) ) (declare-fun var2287_deref_S1770_self__statem_connecting_retry_sending__t1 () (_ BitVec 64)) (assert (= var2290_safe_implicit_coercion_of_literal_0_____safe_deref_S1770_self__statem_connecting_retry_sending___t0 (theory1_safe var2287_deref_S1770_self__statem_connecting_retry_sending__t1) ) ) (declare-fun var2291_nullterm_implicit_coercion_of_literal_0_____nullterm_deref_S1770_self__statem_connecting_retry_sending___t0 () Bool) (assert (= var2291_nullterm_implicit_coercion_of_literal_0_____nullterm_deref_S1770_self__statem_connecting_retry_sending___t0 (theory2_nullterm var2289_implicit_coercion_of_literal_0__t0) ) ) (assert (= var2291_nullterm_implicit_coercion_of_literal_0_____nullterm_deref_S1770_self__statem_connecting_retry_sending___t0 (theory2_nullterm var2287_deref_S1770_self__statem_connecting_retry_sending__t1) ) ) (declare-fun var2287_deref_S1770_self__statem_connecting_retry_sending__t0 () (_ BitVec 64)) (assert (= var2287_deref_S1770_self__statem_connecting_retry_sending__t1 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 var2276_infix_expression__t0 (not var2253_return_value_of___err__check__t1) ) var2289_implicit_coercion_of_literal_0__t0 var2287_deref_S1770_self__statem_connecting_retry_sending__t0) ) ) ; : ./src/endpoint.zz:203 ; ) ; call ; : ./src/endpoint.zz:203 ; . ; : ./src/endpoint.zz:203 ; -> ; : ./src/endpoint.zz:203 ; self ; : ./src/endpoint.zz:203 ; . ; : ./src/endpoint.zz:203 ; ) ; call of ::io::close ; : ./src/endpoint.zz:203 ; . ; : ./src/endpoint.zz:203 ; -> ; : ./src/endpoint.zz:203 ; self ; : ./src/endpoint.zz:203 ; . (declare-fun var2293_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var2294_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (assert (= var2294_len_addressof_deref_S1770_self__timeout____t0 (theory0_len var2293_addressof_deref_S1770_self__timeout___t0) ) ) (assert (= var2294_len_addressof_deref_S1770_self__timeout____t0 (_ bv1 64)) ) (assert (= var2293_addressof_deref_S1770_self__timeout___t0 (_ bv1875 64)) ) (declare-fun var2295_true__t0 () Bool) (assert (= var2295_true__t0 (theory1_safe var2293_addressof_deref_S1770_self__timeout___t0) ) ) (assert var2295_true__t0 ) ; : ./src/endpoint.zz:203 ; -> ; : ./src/endpoint.zz:203 ; self ; : ./src/endpoint.zz:203 ; . (declare-fun var2296_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var2297_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (assert (= var2297_len_addressof_deref_S1770_self__timeout____t0 (theory0_len var2296_addressof_deref_S1770_self__timeout___t0) ) ) (assert (= var2297_len_addressof_deref_S1770_self__timeout____t0 (_ bv1 64)) ) (assert (= var2296_addressof_deref_S1770_self__timeout___t0 (_ bv1875 64)) ) (declare-fun var2298_true__t0 () Bool) (assert (= var2298_true__t0 (theory1_safe var2296_addressof_deref_S1770_self__timeout___t0) ) ) (assert var2298_true__t0 ) ; : ./src/endpoint.zz:203 ; -> ; : ./src/endpoint.zz:203 ; self ; : ./src/endpoint.zz:203 ; . (declare-fun var2299_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var2300_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (assert (= var2300_len_addressof_deref_S1770_self__timeout____t0 (theory0_len var2299_addressof_deref_S1770_self__timeout___t0) ) ) (assert (= var2300_len_addressof_deref_S1770_self__timeout____t0 (_ bv1 64)) ) (assert (= var2299_addressof_deref_S1770_self__timeout___t0 (_ bv1875 64)) ) (declare-fun var2301_true__t0 () Bool) (assert (= var2301_true__t0 (theory1_safe var2299_addressof_deref_S1770_self__timeout___t0) ) ) (assert var2301_true__t0 ) ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:183 ; * ; call of safe (declare-fun var2302_interpretation_of_theory_safe_over_addressof_deref_S1770_self__timeout___t0 () Bool) (assert (= var2302_interpretation_of_theory_safe_over_addressof_deref_S1770_self__timeout___t0 (theory1_safe var2299_addressof_deref_S1770_self__timeout___t0) ) ) (push 1) (assert (and ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 var2276_infix_expression__t0 (not var2253_return_value_of___err__check__t1) ) (or (not var2302_interpretation_of_theory_safe_over_addressof_deref_S1770_self__timeout___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var2302_interpretation_of_theory_safe_over_addressof_deref_S1770_self__timeout___t0 () Bool) ; borrows after call ; 1875 to temporal +1 because of function borrow (declare-fun var1875_deref_S1770_self__timeout__t1 () (_ BitVec 64)) (declare-fun var1875_deref_S1770_self__timeout__t0 () (_ BitVec 64)) (assert (= var1875_deref_S1770_self__timeout__t1 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 var2276_infix_expression__t0 (not var2253_return_value_of___err__check__t1) ) var1875_deref_S1770_self__timeout__t1 var1875_deref_S1770_self__timeout__t0) ) ) ; end of borrows after call ; : ./src/endpoint.zz:203 ; ) ; callsite effects ; end of callsite effects ; : ./src/endpoint.zz:204 ; e, async) ; call ; : ./src/endpoint.zz:204 ; -> ; : ./src/endpoint.zz:204 ; self ; : ./src/endpoint.zz:204 ; -> ; : ./src/endpoint.zz:204 ; e, async) ; call of ::carrier::endpoint::poll ; : ./src/endpoint.zz:204 ; -> ; : ./src/endpoint.zz:204 ; self ; : ./src/endpoint.zz:204 ; e ; : ./src/endpoint.zz:204 ; async ; : ./src/endpoint.zz:204 ; self (declare-fun var2305_cast_of_self__t0 () (_ BitVec 64)) (assert (! (= var2305_cast_of_self__t0 var1770_self__t0) :named A90)); : ./src/endpoint.zz:149 ; +xt ; : ./src/endpoint.zz:204 ; e (declare-fun var2306_cast_of_e__t0 () (_ BitVec 64)) (assert (! (= var2306_cast_of_e__t0 var1775_e__t0) :named A91)); : ./src/endpoint.zz:149 ; +et ; : ./src/endpoint.zz:204 ; async ;callsite_assert (push 1) ; : ./src/endpoint.zz:149 ; * ; call of safe (declare-fun var2307_interpretation_of_theory_safe_over_async__t0 () Bool) (assert (= var2307_interpretation_of_theory_safe_over_async__t0 (theory1_safe var1780_async__t0) ) ) ; : ./src/endpoint.zz:149 ; * ; call of safe (declare-fun var2308_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (assert (= var2308_interpretation_of_theory_safe_over_cast_of_e__t0 (theory1_safe var2306_cast_of_e__t0) ) ) ; : ./src/endpoint.zz:149 ; * ; call of safe (declare-fun var2309_interpretation_of_theory_safe_over_cast_of_self__t0 () Bool) (assert (= var2309_interpretation_of_theory_safe_over_cast_of_self__t0 (theory1_safe var2305_cast_of_self__t0) ) ) ; : ./src/endpoint.zz:150 ; *e) ; call of ::err::checked ; : ./src/endpoint.zz:150 ; err::checked ; : ./src/endpoint.zz:150 ; *e ; : ./src/endpoint.zz:150 ; e ; : ./src/endpoint.zz:150 ; *e ; : ./src/endpoint.zz:150 ; e ; : ./src/endpoint.zz:150 ; *e (declare-fun var2310_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2310_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t17) :named A92)); : ./src/endpoint.zz:150 ; e ; : ./src/endpoint.zz:150 ; *e (declare-fun var2311_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2311_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t17) :named A93)); : ./src/endpoint.zz:150 ; *e) (declare-fun var2312_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (assert (= var2312_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 (theory86___err__checked var2311_cast_of_deref_S1775_e___t0) ) ) (push 1) (assert (and ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 var2276_infix_expression__t0 (not var2253_return_value_of___err__check__t1) ) (or (not var2307_interpretation_of_theory_safe_over_async__t0 ) (not var2308_interpretation_of_theory_safe_over_cast_of_e__t0 ) (not var2309_interpretation_of_theory_safe_over_cast_of_self__t0 ) (not var2312_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var2307_interpretation_of_theory_safe_over_async__t0 () Bool) (declare-fun var2308_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var2309_interpretation_of_theory_safe_over_cast_of_self__t0 () Bool) (declare-fun var2312_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) ; borrows after call ; 1772 to temporal +1 because of function borrow (declare-fun var1772_deref_S1770_self___t3 () (_ BitVec 64)) (assert (= var1772_deref_S1770_self___t3 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 var2276_infix_expression__t0 (not var2253_return_value_of___err__check__t1) ) var1772_deref_S1770_self___t3 var1772_deref_S1770_self___t2) ) ) ; 1777 to temporal +1 because of function borrow (declare-fun var1777_deref_S1775_e___t18 () (_ BitVec 64)) (assert (= var1777_deref_S1775_e___t18 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 var2276_infix_expression__t0 (not var2253_return_value_of___err__check__t1) ) var1777_deref_S1775_e___t18 var1777_deref_S1775_e___t17) ) ) ; 1900 to temporal +1 because of function borrow (declare-fun var1900_deref_S1780_async___t4 () (_ BitVec 64)) (assert (= var1900_deref_S1780_async___t4 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 var2276_infix_expression__t0 (not var2253_return_value_of___err__check__t1) ) var1900_deref_S1780_async___t4 var1900_deref_S1780_async___t3) ) ) ; end of borrows after call ; : ./src/endpoint.zz:204 ; e, async) ; callsite effects ; end of callsite effects (declare-fun var2313_return_value_of___carrier__endpoint__poll__t0 () (_ BitVec 64)) (declare-fun var2314_safe_return_value_of___carrier__endpoint__poll_____safe_return___t0 () Bool) (assert (= var2314_safe_return_value_of___carrier__endpoint__poll_____safe_return___t0 (theory1_safe var2313_return_value_of___carrier__endpoint__poll__t0) ) ) (declare-fun var1787_return__t7 () (_ BitVec 64)) (assert (= var2314_safe_return_value_of___carrier__endpoint__poll_____safe_return___t0 (theory1_safe var1787_return__t7) ) ) (declare-fun var2315_nullterm_return_value_of___carrier__endpoint__poll_____nullterm_return___t0 () Bool) (assert (= var2315_nullterm_return_value_of___carrier__endpoint__poll_____nullterm_return___t0 (theory2_nullterm var2313_return_value_of___carrier__endpoint__poll__t0) ) ) (assert (= var2315_nullterm_return_value_of___carrier__endpoint__poll_____nullterm_return___t0 (theory2_nullterm var1787_return__t7) ) ) (assert (= var1787_return__t7 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 var2276_infix_expression__t0 (not var2253_return_value_of___err__check__t1) ) var2313_return_value_of___carrier__endpoint__poll__t0 var1787_return__t6) ) ) ; end branch ; branch returned. the rest of the function only happens if the condition leading to return never happened ; (not ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 var2276_infix_expression__t0 (not var2253_return_value_of___err__check__t1) )) (assert (not ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 var2276_infix_expression__t0 (not var2253_return_value_of___err__check__t1) )) ) ; : ./src/endpoint.zz:205 ; else { ; self->state = State::Connected; ; memset(&self->statem , 0, sizeof(StateM)); ; broker_chan.peering.received(peering::Transport::Udp, fromaddr); ; broker_chan.q.allocator = &self->framebuffer; ; broker_chan.on_open = (channel::on_open_t)on_remote_open; ; self->statem.connected = router::new(broker_chan, self->udp4, self->udp6); ; return io::Result::Ready; ; } ; : ./src/endpoint.zz:206 ; -> ; : ./src/endpoint.zz:206 ; self ; : ./src/endpoint.zz:206 ; State::Connected ; : ./src/endpoint.zz:28 ; State (declare-fun var2316_implicit_coercion_of___carrier__endpoint__State__Connected__t0 () (_ BitVec 64)) (assert (! (= var2316_implicit_coercion_of___carrier__endpoint__State__Connected__t0 var1412___carrier__endpoint__State__Connected__t0) :named A94)); : ./src/endpoint.zz:206 ; self->state = State::Connected (declare-fun var2317_safe_implicit_coercion_of___carrier__endpoint__State__Connected_____safe_deref_S1770_self__state___t0 () Bool) (assert (= var2317_safe_implicit_coercion_of___carrier__endpoint__State__Connected_____safe_deref_S1770_self__state___t0 (theory1_safe var2316_implicit_coercion_of___carrier__endpoint__State__Connected__t0) ) ) (declare-fun var1791_deref_S1770_self__state__t1 () (_ BitVec 64)) (assert (= var2317_safe_implicit_coercion_of___carrier__endpoint__State__Connected_____safe_deref_S1770_self__state___t0 (theory1_safe var1791_deref_S1770_self__state__t1) ) ) (declare-fun var2318_nullterm_implicit_coercion_of___carrier__endpoint__State__Connected_____nullterm_deref_S1770_self__state___t0 () Bool) (assert (= var2318_nullterm_implicit_coercion_of___carrier__endpoint__State__Connected_____nullterm_deref_S1770_self__state___t0 (theory2_nullterm var2316_implicit_coercion_of___carrier__endpoint__State__Connected__t0) ) ) (assert (= var2318_nullterm_implicit_coercion_of___carrier__endpoint__State__Connected_____nullterm_deref_S1770_self__state___t0 (theory2_nullterm var1791_deref_S1770_self__state__t1) ) ) (assert (= var1791_deref_S1770_self__state__t1 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 (not var2253_return_value_of___err__check__t1) (not var2276_infix_expression__t0) ) var2316_implicit_coercion_of___carrier__endpoint__State__Connected__t0 var1791_deref_S1770_self__state__t0) ) ) ; : ./src/endpoint.zz:207 ; &self->statem , 0, sizeof(StateM)) ; call of ::ext::::memset ; : ./src/endpoint.zz:207 ; memset ; : ./src/endpoint.zz:207 ; &self->statem ; : ./src/endpoint.zz:207 ; -> ; : ./src/endpoint.zz:207 ; self ; : ./src/endpoint.zz:207 ; &self->statem (declare-fun var2319_addressof_deref_S1770_self__statem___t0 () (_ BitVec 64)) (declare-fun var2320_len_addressof_deref_S1770_self__statem____t0 () (_ BitVec 64)) (assert (= var2320_len_addressof_deref_S1770_self__statem____t0 (theory0_len var2319_addressof_deref_S1770_self__statem___t0) ) ) (assert (= var2320_len_addressof_deref_S1770_self__statem____t0 (_ bv1 64)) ) (assert (= var2319_addressof_deref_S1770_self__statem___t0 (_ bv1794 64)) ) (declare-fun var2321_true__t0 () Bool) (assert (= var2321_true__t0 (theory1_safe var2319_addressof_deref_S1770_self__statem___t0) ) ) (assert var2321_true__t0 ) ; : ./src/endpoint.zz:207 ; 0 ; literal expr (declare-fun var2322_literal_0__t0 () (_ BitVec 64)) (assert (= var2322_literal_0__t0 (_ bv0 64)) ) ; : ./src/endpoint.zz:207 ; StateM) ; call of ::ext::::sizeof ; : ./src/endpoint.zz:207 ; sizeof ; : ./src/endpoint.zz:207 ; StateM ; : ./src/endpoint.zz:207 ; StateM) ; : ./src/endpoint.zz:207 ; &self->statem , 0, sizeof(StateM)) ; : ./src/endpoint.zz:208 ; peering::Transport::Udp, fromaddr) ; call ; : ./src/endpoint.zz:208 ; . ; : ./src/endpoint.zz:208 ; . ; : ./src/endpoint.zz:208 ; broker_chan ; : ./src/endpoint.zz:208 ; . ; : ./src/endpoint.zz:208 ; . ; : ./src/endpoint.zz:208 ; peering::Transport::Udp, fromaddr) ; call of ::carrier::peering::received ; : ./src/endpoint.zz:208 ; . ; : ./src/endpoint.zz:208 ; . ; : ./src/endpoint.zz:208 ; broker_chan ; : ./src/endpoint.zz:208 ; . (declare-fun var2328_addressof_broker_chan_peering___t0 () (_ BitVec 64)) (declare-fun var2329_len_addressof_broker_chan_peering____t0 () (_ BitVec 64)) (assert (= var2329_len_addressof_broker_chan_peering____t0 (theory0_len var2328_addressof_broker_chan_peering___t0) ) ) (assert (= var2329_len_addressof_broker_chan_peering____t0 (_ bv1 64)) ) (assert (= var2328_addressof_broker_chan_peering___t0 (_ bv2326 64)) ) (declare-fun var2330_true__t0 () Bool) (assert (= var2330_true__t0 (theory1_safe var2328_addressof_broker_chan_peering___t0) ) ) (assert var2330_true__t0 ) ; : ./src/endpoint.zz:208 ; . ; : ./src/endpoint.zz:208 ; broker_chan ; : ./src/endpoint.zz:208 ; . (declare-fun var2331_addressof_broker_chan_peering___t0 () (_ BitVec 64)) (declare-fun var2332_len_addressof_broker_chan_peering____t0 () (_ BitVec 64)) (assert (= var2332_len_addressof_broker_chan_peering____t0 (theory0_len var2331_addressof_broker_chan_peering___t0) ) ) (assert (= var2332_len_addressof_broker_chan_peering____t0 (_ bv1 64)) ) (assert (= var2331_addressof_broker_chan_peering___t0 (_ bv2326 64)) ) (declare-fun var2333_true__t0 () Bool) (assert (= var2333_true__t0 (theory1_safe var2331_addressof_broker_chan_peering___t0) ) ) (assert var2333_true__t0 ) ; : ./src/endpoint.zz:208 ; peering::Transport::Udp ; : ./src/endpoint.zz:208 ; fromaddr ; : ./src/endpoint.zz:208 ; . ; : ./src/endpoint.zz:208 ; . ; : ./src/endpoint.zz:208 ; broker_chan ; : ./src/endpoint.zz:208 ; . (declare-fun var2334_addressof_broker_chan_peering___t0 () (_ BitVec 64)) (declare-fun var2335_len_addressof_broker_chan_peering____t0 () (_ BitVec 64)) (assert (= var2335_len_addressof_broker_chan_peering____t0 (theory0_len var2334_addressof_broker_chan_peering___t0) ) ) (assert (= var2335_len_addressof_broker_chan_peering____t0 (_ bv1 64)) ) (assert (= var2334_addressof_broker_chan_peering___t0 (_ bv2326 64)) ) (declare-fun var2336_true__t0 () Bool) (assert (= var2336_true__t0 (theory1_safe var2334_addressof_broker_chan_peering___t0) ) ) (assert var2336_true__t0 ) ; : ./src/endpoint.zz:208 ; peering::Transport::Udp ; : ./src/endpoint.zz:208 ; fromaddr ;callsite_assert (push 1) ; : ./src/peering.zz:21 ; * ; call of safe (declare-fun var2337_interpretation_of_theory_safe_over_addressof_broker_chan_peering___t0 () Bool) (assert (= var2337_interpretation_of_theory_safe_over_addressof_broker_chan_peering___t0 (theory1_safe var2334_addressof_broker_chan_peering___t0) ) ) (push 1) (assert (and ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 (not var2253_return_value_of___err__check__t1) (not var2276_infix_expression__t0) ) (or (not var2337_interpretation_of_theory_safe_over_addressof_broker_chan_peering___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var2337_interpretation_of_theory_safe_over_addressof_broker_chan_peering___t0 () Bool) ; borrows after call ; 2326 to temporal +1 because of function borrow (declare-fun var2326_broker_chan_peering__t1 () (_ BitVec 64)) (declare-fun var2326_broker_chan_peering__t0 () (_ BitVec 64)) (assert (= var2326_broker_chan_peering__t1 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 (not var2253_return_value_of___err__check__t1) (not var2276_infix_expression__t0) ) var2326_broker_chan_peering__t1 var2326_broker_chan_peering__t0) ) ) ; end of borrows after call ; : ./src/endpoint.zz:208 ; peering::Transport::Udp, fromaddr) ; callsite effects ; end of callsite effects ; : ./src/endpoint.zz:209 ; . ; : ./src/endpoint.zz:209 ; . ; : ./src/endpoint.zz:209 ; broker_chan ; : ./src/endpoint.zz:209 ; . ; : ./src/endpoint.zz:209 ; . ; : ./src/endpoint.zz:209 ; &self->framebuffer ; : ./src/endpoint.zz:209 ; -> ; : ./src/endpoint.zz:209 ; self ; : ./src/endpoint.zz:209 ; &self->framebuffer (declare-fun var2341_addressof_deref_S1770_self__framebuffer___t0 () (_ BitVec 64)) (declare-fun var2342_len_addressof_deref_S1770_self__framebuffer____t0 () (_ BitVec 64)) (assert (= var2342_len_addressof_deref_S1770_self__framebuffer____t0 (theory0_len var2341_addressof_deref_S1770_self__framebuffer___t0) ) ) (assert (= var2342_len_addressof_deref_S1770_self__framebuffer____t0 (_ bv1 64)) ) (assert (= var2341_addressof_deref_S1770_self__framebuffer___t0 (_ bv1773 64)) ) (declare-fun var2343_true__t0 () Bool) (assert (= var2343_true__t0 (theory1_safe var2341_addressof_deref_S1770_self__framebuffer___t0) ) ) (assert var2343_true__t0 ) ; : ./src/endpoint.zz:209 ; broker_chan.q.allocator = &self->framebuffer (declare-fun var2344_implicit_cast_of_addressof_deref_S1770_self__framebuffer___t0 () (_ BitVec 64)) (assert (! (= var2344_implicit_cast_of_addressof_deref_S1770_self__framebuffer___t0 var2341_addressof_deref_S1770_self__framebuffer___t0) :named A95))(declare-fun var2345_safe_implicit_cast_of_addressof_deref_S1770_self__framebuffer______safe_broker_chan_q_allocator___t0 () Bool) (assert (= var2345_safe_implicit_cast_of_addressof_deref_S1770_self__framebuffer______safe_broker_chan_q_allocator___t0 (theory1_safe var2344_implicit_cast_of_addressof_deref_S1770_self__framebuffer___t0) ) ) (declare-fun var2340_broker_chan_q_allocator__t1 () (_ BitVec 64)) (assert (= var2345_safe_implicit_cast_of_addressof_deref_S1770_self__framebuffer______safe_broker_chan_q_allocator___t0 (theory1_safe var2340_broker_chan_q_allocator__t1) ) ) (declare-fun var2346_nullterm_implicit_cast_of_addressof_deref_S1770_self__framebuffer______nullterm_broker_chan_q_allocator___t0 () Bool) (assert (= var2346_nullterm_implicit_cast_of_addressof_deref_S1770_self__framebuffer______nullterm_broker_chan_q_allocator___t0 (theory2_nullterm var2344_implicit_cast_of_addressof_deref_S1770_self__framebuffer___t0) ) ) (assert (= var2346_nullterm_implicit_cast_of_addressof_deref_S1770_self__framebuffer______nullterm_broker_chan_q_allocator___t0 (theory2_nullterm var2340_broker_chan_q_allocator__t1) ) ) (declare-fun var2340_broker_chan_q_allocator__t0 () (_ BitVec 64)) (assert (= var2340_broker_chan_q_allocator__t1 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 (not var2253_return_value_of___err__check__t1) (not var2276_infix_expression__t0) ) var2344_implicit_cast_of_addressof_deref_S1770_self__framebuffer___t0 var2340_broker_chan_q_allocator__t0) ) ) ; : ./src/endpoint.zz:210 ; . ; : ./src/endpoint.zz:210 ; broker_chan ; : ./src/endpoint.zz:210 ; . ; : ./src/endpoint.zz:210 ; (channel::on_open_t)on_remote_open ; : ./src/endpoint.zz:210 ; on_remote_open ; : ./src/endpoint.zz:210 ; (channel::on_open_t)on_remote_open (declare-fun var2348_cast_of___carrier__endpoint__on_remote_open__t0 () (_ BitVec 64)) (assert (! (= var2348_cast_of___carrier__endpoint__on_remote_open__t0 var1387___carrier__endpoint__on_remote_open__t0) :named A96)); : ./src/endpoint.zz:210 ; broker_chan.on_open = (channel::on_open_t)on_remote_open (declare-fun var2349_safe_cast_of___carrier__endpoint__on_remote_open_____safe_broker_chan_on_open___t0 () Bool) (assert (= var2349_safe_cast_of___carrier__endpoint__on_remote_open_____safe_broker_chan_on_open___t0 (theory1_safe var2348_cast_of___carrier__endpoint__on_remote_open__t0) ) ) (declare-fun var2347_broker_chan_on_open__t1 () (_ BitVec 64)) (assert (= var2349_safe_cast_of___carrier__endpoint__on_remote_open_____safe_broker_chan_on_open___t0 (theory1_safe var2347_broker_chan_on_open__t1) ) ) (declare-fun var2350_nullterm_cast_of___carrier__endpoint__on_remote_open_____nullterm_broker_chan_on_open___t0 () Bool) (assert (= var2350_nullterm_cast_of___carrier__endpoint__on_remote_open_____nullterm_broker_chan_on_open___t0 (theory2_nullterm var2348_cast_of___carrier__endpoint__on_remote_open__t0) ) ) (assert (= var2350_nullterm_cast_of___carrier__endpoint__on_remote_open_____nullterm_broker_chan_on_open___t0 (theory2_nullterm var2347_broker_chan_on_open__t1) ) ) (declare-fun var2347_broker_chan_on_open__t0 () (_ BitVec 64)) (assert (= var2347_broker_chan_on_open__t1 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 (not var2253_return_value_of___err__check__t1) (not var2276_infix_expression__t0) ) var2348_cast_of___carrier__endpoint__on_remote_open__t0 var2347_broker_chan_on_open__t0) ) ) ; : ./src/endpoint.zz:211 ; . ; : ./src/endpoint.zz:211 ; -> ; : ./src/endpoint.zz:211 ; self ; : ./src/endpoint.zz:211 ; . ; : ./src/endpoint.zz:211 ; broker_chan, self->udp4, self->udp6) ; call of ::carrier::router::new ; : ./src/endpoint.zz:211 ; router::new ; : ./src/endpoint.zz:211 ; broker_chan ; : ./src/endpoint.zz:211 ; -> ; : ./src/endpoint.zz:211 ; self ; : ./src/endpoint.zz:211 ; -> ; : ./src/endpoint.zz:211 ; self ; : ./src/endpoint.zz:211 ; -> ; : ./src/endpoint.zz:211 ; self ; : ./src/endpoint.zz:211 ; -> ; : ./src/endpoint.zz:211 ; self ; : ./src/endpoint.zz:211 ; broker_chan ; : ./src/endpoint.zz:211 ; -> ; : ./src/endpoint.zz:211 ; self ; : ./src/endpoint.zz:211 ; -> ; : ./src/endpoint.zz:211 ; self ; borrows after call ; end of borrows after call ; : ./src/endpoint.zz:211 ; broker_chan, self->udp4, self->udp6) ; callsite effects ; end of callsite effects ; : ./src/endpoint.zz:211 ; self->statem.connected = router::new(broker_chan, self->udp4, self->udp6) (declare-fun var2352_return_value_of___carrier__router__new__t0 () (_ BitVec 64)) (declare-fun var2353_safe_return_value_of___carrier__router__new_____safe_deref_S1770_self__statem_connected___t0 () Bool) (assert (= var2353_safe_return_value_of___carrier__router__new_____safe_deref_S1770_self__statem_connected___t0 (theory1_safe var2352_return_value_of___carrier__router__new__t0) ) ) (declare-fun var2351_deref_S1770_self__statem_connected__t1 () (_ BitVec 64)) (assert (= var2353_safe_return_value_of___carrier__router__new_____safe_deref_S1770_self__statem_connected___t0 (theory1_safe var2351_deref_S1770_self__statem_connected__t1) ) ) (declare-fun var2354_nullterm_return_value_of___carrier__router__new_____nullterm_deref_S1770_self__statem_connected___t0 () Bool) (assert (= var2354_nullterm_return_value_of___carrier__router__new_____nullterm_deref_S1770_self__statem_connected___t0 (theory2_nullterm var2352_return_value_of___carrier__router__new__t0) ) ) (assert (= var2354_nullterm_return_value_of___carrier__router__new_____nullterm_deref_S1770_self__statem_connected___t0 (theory2_nullterm var2351_deref_S1770_self__statem_connected__t1) ) ) (declare-fun var2351_deref_S1770_self__statem_connected__t0 () (_ BitVec 64)) (assert (= var2351_deref_S1770_self__statem_connected__t1 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 (not var2253_return_value_of___err__check__t1) (not var2276_infix_expression__t0) ) var2352_return_value_of___carrier__router__new__t0 var2351_deref_S1770_self__statem_connected__t0) ) ) ; : ./src/endpoint.zz:212 ; io::Result::Ready (declare-fun var2355_safe___io__Result__Ready_____safe_return___t0 () Bool) (assert (= var2355_safe___io__Result__Ready_____safe_return___t0 (theory1_safe var248___io__Result__Ready__t0) ) ) (declare-fun var1787_return__t8 () (_ BitVec 64)) (assert (= var2355_safe___io__Result__Ready_____safe_return___t0 (theory1_safe var1787_return__t8) ) ) (declare-fun var2356_nullterm___io__Result__Ready_____nullterm_return___t0 () Bool) (assert (= var2356_nullterm___io__Result__Ready_____nullterm_return___t0 (theory2_nullterm var248___io__Result__Ready__t0) ) ) (assert (= var2356_nullterm___io__Result__Ready_____nullterm_return___t0 (theory2_nullterm var1787_return__t8) ) ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:24 ; Result (declare-fun var2357_implicit_coercion_of___io__Result__Ready__t0 () (_ BitVec 64)) (assert (! (= var2357_implicit_coercion_of___io__Result__Ready__t0 var248___io__Result__Ready__t0) :named A97))(assert (= var1787_return__t8 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 (not var2253_return_value_of___err__check__t1) (not var2276_infix_expression__t0) ) var2357_implicit_coercion_of___io__Result__Ready__t0 var1787_return__t7) ) ) ; end branch ; branch returned. the rest of the function only happens if the condition leading to return never happened ; (not ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 (not var2253_return_value_of___err__check__t1) (not var2276_infix_expression__t0) )) (assert (not ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 (not var2253_return_value_of___err__check__t1) (not var2276_infix_expression__t0) )) ) ; : ./src/endpoint.zz:214 ; e) ; call of ::err::new ; : ./src/endpoint.zz:214 ; err::new ; : ./src/endpoint.zz:214 ; e (declare-fun var2358_cast_of_e__t0 () (_ BitVec 64)) (assert (! (= var2358_cast_of_e__t0 var1775_e__t0) :named A98)); : ./src/endpoint.zz:149 ; +et ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:18 ; * ; call of safe (declare-fun var2359_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (assert (= var2359_interpretation_of_theory_safe_over_cast_of_e__t0 (theory1_safe var2358_cast_of_e__t0) ) ) (push 1) (assert (and ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 ) (or (not var2359_interpretation_of_theory_safe_over_cast_of_e__t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var2359_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) ; borrows after call ; 1777 to temporal +1 because of function borrow (declare-fun var1777_deref_S1775_e___t19 () (_ BitVec 64)) (assert (= var1777_deref_S1775_e___t19 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 ) var1777_deref_S1775_e___t19 var1777_deref_S1775_e___t18) ) ) ; end of borrows after call ; : ./src/endpoint.zz:214 ; e) ; callsite effects (declare-fun var2360_return_value_of___err__new__t0 () (_ BitVec 64)) (declare-fun var2362_safe_return_value_of___err__new_____safe_return___t0 () Bool) (assert (= var2362_safe_return_value_of___err__new_____safe_return___t0 (theory1_safe var2360_return_value_of___err__new__t0) ) ) (declare-fun var2361_return__t1 () (_ BitVec 64)) (assert (= var2362_safe_return_value_of___err__new_____safe_return___t0 (theory1_safe var2361_return__t1) ) ) (declare-fun var2363_nullterm_return_value_of___err__new_____nullterm_return___t0 () Bool) (assert (= var2363_nullterm_return_value_of___err__new_____nullterm_return___t0 (theory2_nullterm var2360_return_value_of___err__new__t0) ) ) (assert (= var2363_nullterm_return_value_of___err__new_____nullterm_return___t0 (theory2_nullterm var2361_return__t1) ) ) (declare-fun var2361_return__t0 () (_ BitVec 64)) (assert (= var2361_return__t1 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 ) var2360_return_value_of___err__new__t0 var2361_return__t0) ) ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; *self) ; call of ::err::checked ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; checked ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; *self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; *self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; *self (declare-fun var2364_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2364_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t19) :named A99)); : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; *self (declare-fun var2365_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2365_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t19) :named A100)); : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; *self) (declare-fun var2366_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (assert (= var2366_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 (theory86___err__checked var2365_cast_of_deref_S1775_e___t0) ) ) (assert (! var2366_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 :named A101))(check-sat) ; : ./src/endpoint.zz:214 ; e) (declare-fun var2367_safe_return_____safe_return_value_of___err__new___t0 () Bool) (assert (= var2367_safe_return_____safe_return_value_of___err__new___t0 (theory1_safe var2361_return__t1) ) ) (declare-fun var2360_return_value_of___err__new__t1 () (_ BitVec 64)) (assert (= var2367_safe_return_____safe_return_value_of___err__new___t0 (theory1_safe var2360_return_value_of___err__new__t1) ) ) (declare-fun var2368_nullterm_return_____nullterm_return_value_of___err__new___t0 () Bool) (assert (= var2368_nullterm_return_____nullterm_return_value_of___err__new___t0 (theory2_nullterm var2361_return__t1) ) ) (assert (= var2368_nullterm_return_____nullterm_return_value_of___err__new___t0 (theory2_nullterm var2360_return_value_of___err__new__t1) ) ) (assert (= var2360_return_value_of___err__new__t1 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2181_infix_expression__t0 ) var2361_return__t1 var2360_return_value_of___err__new__t0) ) ) ; end of callsite effects ; end branch ; : ./src/endpoint.zz:216 ; e) ; call of ::err::check ; : ./src/endpoint.zz:216 ; err::check ; : ./src/endpoint.zz:216 ; e (declare-fun var2369_cast_of_e__t0 () (_ BitVec 64)) (assert (! (= var2369_cast_of_e__t0 var1775_e__t0) :named A102)); : ./src/endpoint.zz:149 ; +et ; : /home/aep/proj/zz/modules/err/./src/lib.zz:28 ; callsite_source (declare-fun var2370_literal_string____src_endpoint_zz___t0 () (_ BitVec 64)) (declare-fun var2371_true__t0 () Bool) (assert (= var2371_true__t0 (theory1_safe var2370_literal_string____src_endpoint_zz___t0) ) ) (assert var2371_true__t0 ) (declare-fun var2372_true__t0 () Bool) (assert (= var2372_true__t0 (theory2_nullterm var2370_literal_string____src_endpoint_zz___t0) ) ) (assert var2372_true__t0 ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:29 ; callsite_source (declare-fun var2373_literal_string____carrier__endpoint__poll___t0 () (_ BitVec 64)) (declare-fun var2374_true__t0 () Bool) (assert (= var2374_true__t0 (theory1_safe var2373_literal_string____carrier__endpoint__poll___t0) ) ) (assert var2374_true__t0 ) (declare-fun var2375_true__t0 () Bool) (assert (= var2375_true__t0 (theory2_nullterm var2373_literal_string____carrier__endpoint__poll___t0) ) ) (assert var2375_true__t0 ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:30 ; callsite_source ; literal expr (declare-fun var2376_literal_216__t0 () (_ BitVec 64)) (assert (= var2376_literal_216__t0 (_ bv216 64)) ) ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:27 ; * ; call of safe (declare-fun var2377_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (assert (= var2377_interpretation_of_theory_safe_over_cast_of_e__t0 (theory1_safe var2369_cast_of_e__t0) ) ) (push 1) (assert (and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 (or (not var2377_interpretation_of_theory_safe_over_cast_of_e__t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var2377_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) ; borrows after call ; 1777 to temporal +1 because of function borrow (declare-fun var1777_deref_S1775_e___t20 () (_ BitVec 64)) (assert (= var1777_deref_S1775_e___t20 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1777_deref_S1775_e___t20 var1777_deref_S1775_e___t19) ) ) ; end of borrows after call ; : ./src/endpoint.zz:216 ; e) ; callsite effects (declare-fun var2379_return__t1 () Bool) (declare-fun var2378_return_value_of___err__check__t0 () Bool) (declare-fun var2379_return__t0 () Bool) (assert (= var2379_return__t1 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2378_return_value_of___err__check__t0 var2379_return__t0) ) ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self) ; call of ::err::checked ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; checked ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self (declare-fun var2380_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2380_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t20) :named A103)); : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self (declare-fun var2381_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2381_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t20) :named A104)); : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self) (declare-fun var2382_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (assert (= var2382_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 (theory86___err__checked var2381_cast_of_deref_S1775_e___t0) ) ) (assert (! var2382_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 :named A105))(check-sat) (declare-fun var2378_return_value_of___err__check__t1 () Bool) (assert (= var2378_return_value_of___err__check__t1 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2379_return__t1 var2378_return_value_of___err__check__t0) ) ) ; end of callsite effects (check-sat) (get-value ( var2378_return_value_of___err__check__t1 ) ) ; = "false" (push 1) (assert (not (= var2378_return_value_of___err__check__t1 false)) ) (check-sat) (pop 1) ; : ./src/endpoint.zz:216 ; e) ; : ./src/endpoint.zz:216 ; if err::check(e) {return io::Result::Error; } ; : ./src/endpoint.zz:216 ; io::Result::Error (declare-fun var2383_safe___io__Result__Error_____safe_return___t0 () Bool) (assert (= var2383_safe___io__Result__Error_____safe_return___t0 (theory1_safe var250___io__Result__Error__t0) ) ) (declare-fun var1787_return__t9 () (_ BitVec 64)) (assert (= var2383_safe___io__Result__Error_____safe_return___t0 (theory1_safe var1787_return__t9) ) ) (declare-fun var2384_nullterm___io__Result__Error_____nullterm_return___t0 () Bool) (assert (= var2384_nullterm___io__Result__Error_____nullterm_return___t0 (theory2_nullterm var250___io__Result__Error__t0) ) ) (assert (= var2384_nullterm___io__Result__Error_____nullterm_return___t0 (theory2_nullterm var1787_return__t9) ) ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:24 ; Result (declare-fun var2385_implicit_coercion_of___io__Result__Error__t0 () (_ BitVec 64)) (assert (! (= var2385_implicit_coercion_of___io__Result__Error__t0 var250___io__Result__Error__t0) :named A106))(assert (= var1787_return__t9 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2378_return_value_of___err__check__t1 ) var2385_implicit_coercion_of___io__Result__Error__t0 var1787_return__t8) ) ) ; end branch ; branch returned. the rest of the function only happens if the condition leading to return never happened ; (not ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2378_return_value_of___err__check__t1 )) (assert (not ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2378_return_value_of___err__check__t1 )) ) ; : ./src/endpoint.zz:220 ; ) ; call ; : ./src/endpoint.zz:220 ; . ; : ./src/endpoint.zz:220 ; -> ; : ./src/endpoint.zz:220 ; self ; : ./src/endpoint.zz:220 ; . ; : ./src/endpoint.zz:220 ; ) ; call of ::io::valid ; : ./src/endpoint.zz:220 ; . ; : ./src/endpoint.zz:220 ; -> ; : ./src/endpoint.zz:220 ; self ; : ./src/endpoint.zz:220 ; . (declare-fun var2387_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var2388_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (assert (= var2388_len_addressof_deref_S1770_self__timeout____t0 (theory0_len var2387_addressof_deref_S1770_self__timeout___t0) ) ) (assert (= var2388_len_addressof_deref_S1770_self__timeout____t0 (_ bv1 64)) ) (assert (= var2387_addressof_deref_S1770_self__timeout___t0 (_ bv1875 64)) ) (declare-fun var2389_true__t0 () Bool) (assert (= var2389_true__t0 (theory1_safe var2387_addressof_deref_S1770_self__timeout___t0) ) ) (assert var2389_true__t0 ) ; : ./src/endpoint.zz:220 ; -> ; : ./src/endpoint.zz:220 ; self ; : ./src/endpoint.zz:220 ; . (declare-fun var2390_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var2391_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (assert (= var2391_len_addressof_deref_S1770_self__timeout____t0 (theory0_len var2390_addressof_deref_S1770_self__timeout___t0) ) ) (assert (= var2391_len_addressof_deref_S1770_self__timeout____t0 (_ bv1 64)) ) (assert (= var2390_addressof_deref_S1770_self__timeout___t0 (_ bv1875 64)) ) (declare-fun var2392_true__t0 () Bool) (assert (= var2392_true__t0 (theory1_safe var2390_addressof_deref_S1770_self__timeout___t0) ) ) (assert var2392_true__t0 ) (declare-fun var2393_addressof_deref_S1770_self__timeout_ctx___t0 () (_ BitVec 64)) (declare-fun var2394_len_addressof_deref_S1770_self__timeout_ctx____t0 () (_ BitVec 64)) (assert (= var2394_len_addressof_deref_S1770_self__timeout_ctx____t0 (theory0_len var2393_addressof_deref_S1770_self__timeout_ctx___t0) ) ) (assert (= var2394_len_addressof_deref_S1770_self__timeout_ctx____t0 (_ bv1 64)) ) (assert (= var2393_addressof_deref_S1770_self__timeout_ctx___t0 (_ bv1882 64)) ) (declare-fun var2395_true__t0 () Bool) (assert (= var2395_true__t0 (theory1_safe var2393_addressof_deref_S1770_self__timeout_ctx___t0) ) ) (assert var2395_true__t0 ) ; : ./src/endpoint.zz:220 ; -> ; : ./src/endpoint.zz:220 ; self ; : ./src/endpoint.zz:220 ; . (declare-fun var2396_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var2397_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (assert (= var2397_len_addressof_deref_S1770_self__timeout____t0 (theory0_len var2396_addressof_deref_S1770_self__timeout___t0) ) ) (assert (= var2397_len_addressof_deref_S1770_self__timeout____t0 (_ bv1 64)) ) (assert (= var2396_addressof_deref_S1770_self__timeout___t0 (_ bv1875 64)) ) (declare-fun var2398_true__t0 () Bool) (assert (= var2398_true__t0 (theory1_safe var2396_addressof_deref_S1770_self__timeout___t0) ) ) (assert var2398_true__t0 ) (declare-fun var2399_addressof_deref_S1770_self__timeout_ctx___t0 () (_ BitVec 64)) (declare-fun var2400_len_addressof_deref_S1770_self__timeout_ctx____t0 () (_ BitVec 64)) (assert (= var2400_len_addressof_deref_S1770_self__timeout_ctx____t0 (theory0_len var2399_addressof_deref_S1770_self__timeout_ctx___t0) ) ) (assert (= var2400_len_addressof_deref_S1770_self__timeout_ctx____t0 (_ bv1 64)) ) (assert (= var2399_addressof_deref_S1770_self__timeout_ctx___t0 (_ bv1882 64)) ) (declare-fun var2401_true__t0 () Bool) (assert (= var2401_true__t0 (theory1_safe var2399_addressof_deref_S1770_self__timeout_ctx___t0) ) ) (assert var2401_true__t0 ) ; : ./src/endpoint.zz:220 ; -> ; : ./src/endpoint.zz:220 ; self ; : ./src/endpoint.zz:220 ; . (declare-fun var2402_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var2403_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (assert (= var2403_len_addressof_deref_S1770_self__timeout____t0 (theory0_len var2402_addressof_deref_S1770_self__timeout___t0) ) ) (assert (= var2403_len_addressof_deref_S1770_self__timeout____t0 (_ bv1 64)) ) (assert (= var2402_addressof_deref_S1770_self__timeout___t0 (_ bv1875 64)) ) (declare-fun var2404_true__t0 () Bool) (assert (= var2404_true__t0 (theory1_safe var2402_addressof_deref_S1770_self__timeout___t0) ) ) (assert var2404_true__t0 ) (declare-fun var2405_addressof_deref_S1770_self__timeout_ctx___t0 () (_ BitVec 64)) (declare-fun var2406_len_addressof_deref_S1770_self__timeout_ctx____t0 () (_ BitVec 64)) (assert (= var2406_len_addressof_deref_S1770_self__timeout_ctx____t0 (theory0_len var2405_addressof_deref_S1770_self__timeout_ctx___t0) ) ) (assert (= var2406_len_addressof_deref_S1770_self__timeout_ctx____t0 (_ bv1 64)) ) (assert (= var2405_addressof_deref_S1770_self__timeout_ctx___t0 (_ bv1882 64)) ) (declare-fun var2407_true__t0 () Bool) (assert (= var2407_true__t0 (theory1_safe var2405_addressof_deref_S1770_self__timeout_ctx___t0) ) ) (assert var2407_true__t0 ) ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:52 ; * ; call of safe (declare-fun var2408_interpretation_of_theory_safe_over_addressof_deref_S1770_self__timeout_ctx___t0 () Bool) (assert (= var2408_interpretation_of_theory_safe_over_addressof_deref_S1770_self__timeout_ctx___t0 (theory1_safe var2405_addressof_deref_S1770_self__timeout_ctx___t0) ) ) (push 1) (assert (and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 (or (not var2408_interpretation_of_theory_safe_over_addressof_deref_S1770_self__timeout_ctx___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var2408_interpretation_of_theory_safe_over_addressof_deref_S1770_self__timeout_ctx___t0 () Bool) ; borrows after call ; end of borrows after call ; : ./src/endpoint.zz:220 ; ) ; callsite effects ; end of callsite effects (declare-fun var2409_return_value_of___io__valid__t0 () Bool) (check-sat) (get-value ( var2409_return_value_of___io__valid__t0 ) ) ; = "false" (push 1) (assert (not (= var2409_return_value_of___io__valid__t0 false)) ) (check-sat) (pop 1) ; : ./src/endpoint.zz:220 ; if self->timeout.valid() { ; u8 mut buf[16]; ; usize mut l = 16; ; io::Result rr = self->timeout.read_bytes(e, buf, &l); ; if err::check(e) {return io::Result::Error; } ; if rr != io::Result::Ready { ; return rr; ; } ; log::warn("timeout waiting for broker response"); ; } ; : ./src/endpoint.zz:221 ; u8 mut buf[16] (declare-fun var2410_buf__t0 () (_ BitVec 64)) (declare-fun var2411_true__t0 () Bool) (assert (= var2411_true__t0 (theory1_safe var2410_buf__t0) ) ) (assert var2411_true__t0 ) ; : ./src/endpoint.zz:221 ; 16 ; literal expr (declare-fun var2412_literal_16__t0 () (_ BitVec 64)) (assert (= var2412_literal_16__t0 (_ bv16 64)) ) (check-sat) (get-value ( var2412_literal_16__t0 ) ) ; = "#b0000000000000000000000000000000000000000000000000000000000010000" (push 1) (assert (not (= var2412_literal_16__t0 #b0000000000000000000000000000000000000000000000000000000000010000)) ) (check-sat) (pop 1) (push 1) (check-sat) (pop 1) (declare-fun var2413_len_buf___t0 () (_ BitVec 64)) (assert (= var2413_len_buf___t0 (theory0_len var2410_buf__t0) ) ) (assert (= var2413_len_buf___t0 (_ bv16 64)) ) ; : ./src/endpoint.zz:221 ; u8 mut buf[16] ; : ./src/endpoint.zz:222 ; usize mut l = 16 ; : ./src/endpoint.zz:222 ; 16 ; literal expr (declare-fun var2415_literal_16__t0 () (_ BitVec 64)) (assert (= var2415_literal_16__t0 (_ bv16 64)) ) ; : ./src/endpoint.zz:222 ; usize mut l = 16 (declare-fun var2416_safe_literal_16_____safe_l___t0 () Bool) (assert (= var2416_safe_literal_16_____safe_l___t0 (theory1_safe var2415_literal_16__t0) ) ) (declare-fun var2414_l__t1 () (_ BitVec 64)) (assert (= var2416_safe_literal_16_____safe_l___t0 (theory1_safe var2414_l__t1) ) ) (declare-fun var2417_nullterm_literal_16_____nullterm_l___t0 () Bool) (assert (= var2417_nullterm_literal_16_____nullterm_l___t0 (theory2_nullterm var2415_literal_16__t0) ) ) (assert (= var2417_nullterm_literal_16_____nullterm_l___t0 (theory2_nullterm var2414_l__t1) ) ) ; : ./src/endpoint.zz:222 ; 16 (declare-fun var2418_implicit_coercion_of_literal_16__t0 () (_ BitVec 64)) (assert (! (= var2418_implicit_coercion_of_literal_16__t0 var2415_literal_16__t0) :named A107))(declare-fun var2414_l__t0 () (_ BitVec 64)) (assert (= var2414_l__t1 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2409_return_value_of___io__valid__t0 ) var2418_implicit_coercion_of_literal_16__t0 var2414_l__t0) ) ) ; : ./src/endpoint.zz:223 ; io::Result rr = self->timeout.read_bytes(e, buf, &l) ; : ./src/endpoint.zz:223 ; e, buf, &l) ; call ; : ./src/endpoint.zz:223 ; . ; : ./src/endpoint.zz:223 ; -> ; : ./src/endpoint.zz:223 ; self ; : ./src/endpoint.zz:223 ; . ; : ./src/endpoint.zz:223 ; e, buf, &l) ; call of ::io::read_bytes ; : ./src/endpoint.zz:223 ; . ; : ./src/endpoint.zz:223 ; -> ; : ./src/endpoint.zz:223 ; self ; : ./src/endpoint.zz:223 ; . (declare-fun var2421_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var2422_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (assert (= var2422_len_addressof_deref_S1770_self__timeout____t0 (theory0_len var2421_addressof_deref_S1770_self__timeout___t0) ) ) (assert (= var2422_len_addressof_deref_S1770_self__timeout____t0 (_ bv1 64)) ) (assert (= var2421_addressof_deref_S1770_self__timeout___t0 (_ bv1875 64)) ) (declare-fun var2423_true__t0 () Bool) (assert (= var2423_true__t0 (theory1_safe var2421_addressof_deref_S1770_self__timeout___t0) ) ) (assert var2423_true__t0 ) ; : ./src/endpoint.zz:223 ; -> ; : ./src/endpoint.zz:223 ; self ; : ./src/endpoint.zz:223 ; . (declare-fun var2424_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var2425_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (assert (= var2425_len_addressof_deref_S1770_self__timeout____t0 (theory0_len var2424_addressof_deref_S1770_self__timeout___t0) ) ) (assert (= var2425_len_addressof_deref_S1770_self__timeout____t0 (_ bv1 64)) ) (assert (= var2424_addressof_deref_S1770_self__timeout___t0 (_ bv1875 64)) ) (declare-fun var2426_true__t0 () Bool) (assert (= var2426_true__t0 (theory1_safe var2424_addressof_deref_S1770_self__timeout___t0) ) ) (assert var2426_true__t0 ) ; : ./src/endpoint.zz:223 ; e ; : ./src/endpoint.zz:223 ; buf ; : ./src/endpoint.zz:223 ; &l ; : ./src/endpoint.zz:223 ; l ; : ./src/endpoint.zz:223 ; &l (declare-fun var2427_addressof_l___t0 () (_ BitVec 64)) (declare-fun var2428_len_addressof_l____t0 () (_ BitVec 64)) (assert (= var2428_len_addressof_l____t0 (theory0_len var2427_addressof_l___t0) ) ) (assert (= var2428_len_addressof_l____t0 (_ bv1 64)) ) (assert (= var2427_addressof_l___t0 (_ bv2414 64)) ) (declare-fun var2429_true__t0 () Bool) (assert (= var2429_true__t0 (theory1_safe var2427_addressof_l___t0) ) ) (assert var2429_true__t0 ) ; : ./src/endpoint.zz:223 ; l ; : ./src/endpoint.zz:223 ; &l (declare-fun var2430_addressof_l___t0 () (_ BitVec 64)) (declare-fun var2431_len_addressof_l____t0 () (_ BitVec 64)) (assert (= var2431_len_addressof_l____t0 (theory0_len var2430_addressof_l___t0) ) ) (assert (= var2431_len_addressof_l____t0 (_ bv1 64)) ) (assert (= var2430_addressof_l___t0 (_ bv2414 64)) ) (declare-fun var2432_true__t0 () Bool) (assert (= var2432_true__t0 (theory1_safe var2430_addressof_l___t0) ) ) (assert var2432_true__t0 ) ; : ./src/endpoint.zz:223 ; . ; : ./src/endpoint.zz:223 ; -> ; : ./src/endpoint.zz:223 ; self ; : ./src/endpoint.zz:223 ; . (declare-fun var2433_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var2434_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (assert (= var2434_len_addressof_deref_S1770_self__timeout____t0 (theory0_len var2433_addressof_deref_S1770_self__timeout___t0) ) ) (assert (= var2434_len_addressof_deref_S1770_self__timeout____t0 (_ bv1 64)) ) (assert (= var2433_addressof_deref_S1770_self__timeout___t0 (_ bv1875 64)) ) (declare-fun var2435_true__t0 () Bool) (assert (= var2435_true__t0 (theory1_safe var2433_addressof_deref_S1770_self__timeout___t0) ) ) (assert var2435_true__t0 ) ; : ./src/endpoint.zz:223 ; e (declare-fun var2436_cast_of_e__t0 () (_ BitVec 64)) (assert (! (= var2436_cast_of_e__t0 var1775_e__t0) :named A108)); : ./src/endpoint.zz:149 ; +et ; : ./src/endpoint.zz:223 ; buf ; : ./src/endpoint.zz:223 ; &l ; : ./src/endpoint.zz:223 ; l ; : ./src/endpoint.zz:223 ; &l (declare-fun var2437_addressof_l___t0 () (_ BitVec 64)) (declare-fun var2438_len_addressof_l____t0 () (_ BitVec 64)) (assert (= var2438_len_addressof_l____t0 (theory0_len var2437_addressof_l___t0) ) ) (assert (= var2438_len_addressof_l____t0 (_ bv1 64)) ) (assert (= var2437_addressof_l___t0 (_ bv2414 64)) ) (declare-fun var2439_true__t0 () Bool) (assert (= var2439_true__t0 (theory1_safe var2437_addressof_l___t0) ) ) (assert var2439_true__t0 ) ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:83 ; * ; call of safe (declare-fun var2440_interpretation_of_theory_safe_over_addressof_l___t0 () Bool) (assert (= var2440_interpretation_of_theory_safe_over_addressof_l___t0 (theory1_safe var2437_addressof_l___t0) ) ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:83 ; * ; call of safe (declare-fun var2441_interpretation_of_theory_safe_over_buf__t0 () Bool) (assert (= var2441_interpretation_of_theory_safe_over_buf__t0 (theory1_safe var2410_buf__t0) ) ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:83 ; * ; call of safe (declare-fun var2442_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (assert (= var2442_interpretation_of_theory_safe_over_cast_of_e__t0 (theory1_safe var2436_cast_of_e__t0) ) ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:83 ; * ; call of safe (declare-fun var2443_interpretation_of_theory_safe_over_addressof_deref_S1770_self__timeout___t0 () Bool) (assert (= var2443_interpretation_of_theory_safe_over_addressof_deref_S1770_self__timeout___t0 (theory1_safe var2433_addressof_deref_S1770_self__timeout___t0) ) ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:84 ; *e) ; call of ::err::checked ; : /home/aep/proj/zz/modules/io/./src/lib.zz:84 ; err::checked ; : /home/aep/proj/zz/modules/io/./src/lib.zz:84 ; *e ; : /home/aep/proj/zz/modules/io/./src/lib.zz:84 ; e ; : /home/aep/proj/zz/modules/io/./src/lib.zz:84 ; *e ; : /home/aep/proj/zz/modules/io/./src/lib.zz:84 ; e ; : /home/aep/proj/zz/modules/io/./src/lib.zz:84 ; *e (declare-fun var2444_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2444_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t20) :named A109)); : /home/aep/proj/zz/modules/io/./src/lib.zz:84 ; e ; : /home/aep/proj/zz/modules/io/./src/lib.zz:84 ; *e (declare-fun var2445_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2445_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t20) :named A110)); : /home/aep/proj/zz/modules/io/./src/lib.zz:84 ; *e) (declare-fun var2446_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (assert (= var2446_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 (theory86___err__checked var2445_cast_of_deref_S1775_e___t0) ) ) (push 1) (assert (and ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2409_return_value_of___io__valid__t0 ) (or (not var2440_interpretation_of_theory_safe_over_addressof_l___t0 ) (not var2441_interpretation_of_theory_safe_over_buf__t0 ) (not var2442_interpretation_of_theory_safe_over_cast_of_e__t0 ) (not var2443_interpretation_of_theory_safe_over_addressof_deref_S1770_self__timeout___t0 ) (not var2446_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var2440_interpretation_of_theory_safe_over_addressof_l___t0 () Bool) (declare-fun var2441_interpretation_of_theory_safe_over_buf__t0 () Bool) (declare-fun var2442_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var2443_interpretation_of_theory_safe_over_addressof_deref_S1770_self__timeout___t0 () Bool) (declare-fun var2446_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) ; borrows after call ; 1875 to temporal +1 because of function borrow (declare-fun var1875_deref_S1770_self__timeout__t2 () (_ BitVec 64)) (assert (= var1875_deref_S1770_self__timeout__t2 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2409_return_value_of___io__valid__t0 ) var1875_deref_S1770_self__timeout__t2 var1875_deref_S1770_self__timeout__t1) ) ) ; 1777 to temporal +1 because of function borrow (declare-fun var1777_deref_S1775_e___t21 () (_ BitVec 64)) (assert (= var1777_deref_S1775_e___t21 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2409_return_value_of___io__valid__t0 ) var1777_deref_S1775_e___t21 var1777_deref_S1775_e___t20) ) ) ; 2414 to temporal +1 because of function borrow (declare-fun var2414_l__t2 () (_ BitVec 64)) (assert (= var2414_l__t2 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2409_return_value_of___io__valid__t0 ) var2414_l__t2 var2414_l__t1) ) ) ; end of borrows after call ; : ./src/endpoint.zz:223 ; e, buf, &l) ; callsite effects ; end of callsite effects ; : ./src/endpoint.zz:223 ; io::Result rr = self->timeout.read_bytes(e, buf, &l) (declare-fun var2447_return_value_of___io__read_bytes__t0 () (_ BitVec 64)) (declare-fun var2448_safe_return_value_of___io__read_bytes_____safe_rr___t0 () Bool) (assert (= var2448_safe_return_value_of___io__read_bytes_____safe_rr___t0 (theory1_safe var2447_return_value_of___io__read_bytes__t0) ) ) (declare-fun var2419_rr__t1 () (_ BitVec 64)) (assert (= var2448_safe_return_value_of___io__read_bytes_____safe_rr___t0 (theory1_safe var2419_rr__t1) ) ) (declare-fun var2449_nullterm_return_value_of___io__read_bytes_____nullterm_rr___t0 () Bool) (assert (= var2449_nullterm_return_value_of___io__read_bytes_____nullterm_rr___t0 (theory2_nullterm var2447_return_value_of___io__read_bytes__t0) ) ) (assert (= var2449_nullterm_return_value_of___io__read_bytes_____nullterm_rr___t0 (theory2_nullterm var2419_rr__t1) ) ) (declare-fun var2419_rr__t0 () (_ BitVec 64)) (assert (= var2419_rr__t1 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2409_return_value_of___io__valid__t0 ) var2447_return_value_of___io__read_bytes__t0 var2419_rr__t0) ) ) ; : ./src/endpoint.zz:224 ; e) ; call of ::err::check ; : ./src/endpoint.zz:224 ; err::check ; : ./src/endpoint.zz:224 ; e (declare-fun var2450_cast_of_e__t0 () (_ BitVec 64)) (assert (! (= var2450_cast_of_e__t0 var1775_e__t0) :named A111)); : ./src/endpoint.zz:149 ; +et ; : /home/aep/proj/zz/modules/err/./src/lib.zz:28 ; callsite_source (declare-fun var2451_literal_string____src_endpoint_zz___t0 () (_ BitVec 64)) (declare-fun var2452_true__t0 () Bool) (assert (= var2452_true__t0 (theory1_safe var2451_literal_string____src_endpoint_zz___t0) ) ) (assert var2452_true__t0 ) (declare-fun var2453_true__t0 () Bool) (assert (= var2453_true__t0 (theory2_nullterm var2451_literal_string____src_endpoint_zz___t0) ) ) (assert var2453_true__t0 ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:29 ; callsite_source (declare-fun var2454_literal_string____carrier__endpoint__poll___t0 () (_ BitVec 64)) (declare-fun var2455_true__t0 () Bool) (assert (= var2455_true__t0 (theory1_safe var2454_literal_string____carrier__endpoint__poll___t0) ) ) (assert var2455_true__t0 ) (declare-fun var2456_true__t0 () Bool) (assert (= var2456_true__t0 (theory2_nullterm var2454_literal_string____carrier__endpoint__poll___t0) ) ) (assert var2456_true__t0 ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:30 ; callsite_source ; literal expr (declare-fun var2457_literal_224__t0 () (_ BitVec 64)) (assert (= var2457_literal_224__t0 (_ bv224 64)) ) ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:27 ; * ; call of safe (declare-fun var2458_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (assert (= var2458_interpretation_of_theory_safe_over_cast_of_e__t0 (theory1_safe var2450_cast_of_e__t0) ) ) (push 1) (assert (and ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2409_return_value_of___io__valid__t0 ) (or (not var2458_interpretation_of_theory_safe_over_cast_of_e__t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var2458_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) ; borrows after call ; 1777 to temporal +1 because of function borrow (declare-fun var1777_deref_S1775_e___t22 () (_ BitVec 64)) (assert (= var1777_deref_S1775_e___t22 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2409_return_value_of___io__valid__t0 ) var1777_deref_S1775_e___t22 var1777_deref_S1775_e___t21) ) ) ; end of borrows after call ; : ./src/endpoint.zz:224 ; e) ; callsite effects (declare-fun var2460_return__t1 () Bool) (declare-fun var2459_return_value_of___err__check__t0 () Bool) (declare-fun var2460_return__t0 () Bool) (assert (= var2460_return__t1 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2409_return_value_of___io__valid__t0 ) var2459_return_value_of___err__check__t0 var2460_return__t0) ) ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self) ; call of ::err::checked ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; checked ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self (declare-fun var2461_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2461_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t22) :named A112)); : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self (declare-fun var2462_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2462_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t22) :named A113)); : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self) (declare-fun var2463_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (assert (= var2463_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 (theory86___err__checked var2462_cast_of_deref_S1775_e___t0) ) ) (assert (! var2463_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 :named A114))(check-sat) (declare-fun var2459_return_value_of___err__check__t1 () Bool) (assert (= var2459_return_value_of___err__check__t1 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2409_return_value_of___io__valid__t0 ) var2460_return__t1 var2459_return_value_of___err__check__t0) ) ) ; end of callsite effects (check-sat) (get-value ( var2459_return_value_of___err__check__t1 ) ) ; = "false" (push 1) (assert (not (= var2459_return_value_of___err__check__t1 false)) ) (check-sat) (pop 1) ; : ./src/endpoint.zz:224 ; e) ; : ./src/endpoint.zz:224 ; if err::check(e) {return io::Result::Error; } ; : ./src/endpoint.zz:224 ; io::Result::Error (declare-fun var2464_safe___io__Result__Error_____safe_return___t0 () Bool) (assert (= var2464_safe___io__Result__Error_____safe_return___t0 (theory1_safe var250___io__Result__Error__t0) ) ) (declare-fun var1787_return__t10 () (_ BitVec 64)) (assert (= var2464_safe___io__Result__Error_____safe_return___t0 (theory1_safe var1787_return__t10) ) ) (declare-fun var2465_nullterm___io__Result__Error_____nullterm_return___t0 () Bool) (assert (= var2465_nullterm___io__Result__Error_____nullterm_return___t0 (theory2_nullterm var250___io__Result__Error__t0) ) ) (assert (= var2465_nullterm___io__Result__Error_____nullterm_return___t0 (theory2_nullterm var1787_return__t10) ) ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:24 ; Result (declare-fun var2466_implicit_coercion_of___io__Result__Error__t0 () (_ BitVec 64)) (assert (! (= var2466_implicit_coercion_of___io__Result__Error__t0 var250___io__Result__Error__t0) :named A115))(assert (= var1787_return__t10 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2409_return_value_of___io__valid__t0 var2459_return_value_of___err__check__t1 ) var2466_implicit_coercion_of___io__Result__Error__t0 var1787_return__t9) ) ) ; end branch ; branch returned. the rest of the function only happens if the condition leading to return never happened ; (not ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2409_return_value_of___io__valid__t0 var2459_return_value_of___err__check__t1 )) (assert (not ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2409_return_value_of___io__valid__t0 var2459_return_value_of___err__check__t1 )) ) ; : ./src/endpoint.zz:225 ; != ; : ./src/endpoint.zz:225 ; rr ; : ./src/endpoint.zz:225 ; io::Result::Ready ; : /home/aep/proj/zz/modules/io/./src/lib.zz:24 ; Result (declare-fun var2467_implicit_coercion_of___io__Result__Ready__t0 () (_ BitVec 64)) (assert (! (= var2467_implicit_coercion_of___io__Result__Ready__t0 var248___io__Result__Ready__t0) :named A116)); : ./src/endpoint.zz:225 ; != (declare-fun var2468_infix_expression__t0 () Bool) (assert (= var2468_infix_expression__t0 (not (= var2419_rr__t1 var2467_implicit_coercion_of___io__Result__Ready__t0))) ) (check-sat) (get-value ( var2468_infix_expression__t0 ) ) ; = "false" (push 1) (assert (not (= var2468_infix_expression__t0 false)) ) (check-sat) (pop 1) ; : ./src/endpoint.zz:225 ; if rr != io::Result::Ready { ; return rr; ; } ; : ./src/endpoint.zz:226 ; rr (declare-fun var2469_safe_rr_____safe_return___t0 () Bool) (assert (= var2469_safe_rr_____safe_return___t0 (theory1_safe var2419_rr__t1) ) ) (declare-fun var1787_return__t11 () (_ BitVec 64)) (assert (= var2469_safe_rr_____safe_return___t0 (theory1_safe var1787_return__t11) ) ) (declare-fun var2470_nullterm_rr_____nullterm_return___t0 () Bool) (assert (= var2470_nullterm_rr_____nullterm_return___t0 (theory2_nullterm var2419_rr__t1) ) ) (assert (= var2470_nullterm_rr_____nullterm_return___t0 (theory2_nullterm var1787_return__t11) ) ) (assert (= var1787_return__t11 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2409_return_value_of___io__valid__t0 var2468_infix_expression__t0 ) var2419_rr__t1 var1787_return__t10) ) ) ; end branch ; branch returned. the rest of the function only happens if the condition leading to return never happened ; (not ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2409_return_value_of___io__valid__t0 var2468_infix_expression__t0 )) (assert (not ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2409_return_value_of___io__valid__t0 var2468_infix_expression__t0 )) ) ; : ./src/endpoint.zz:228 ; "timeout waiting for broker response") ; call of ::log::warn ; : ./src/endpoint.zz:228 ; log::warn ; : ./src/endpoint.zz:228 ; "timeout waiting for broker response" (declare-fun var2471_literal_string__timeout_waiting_for_broker_response___t0 () (_ BitVec 64)) (declare-fun var2472_true__t0 () Bool) (assert (= var2472_true__t0 (theory1_safe var2471_literal_string__timeout_waiting_for_broker_response___t0) ) ) (assert var2472_true__t0 ) (declare-fun var2473_true__t0 () Bool) (assert (= var2473_true__t0 (theory2_nullterm var2471_literal_string__timeout_waiting_for_broker_response___t0) ) ) (assert var2473_true__t0 ) (declare-fun var2474_literal_string__timeout_waiting_for_broker_response___t0 () (_ BitVec 64)) (declare-fun var2475_true__t0 () Bool) (assert (= var2475_true__t0 (theory1_safe var2474_literal_string__timeout_waiting_for_broker_response___t0) ) ) (assert var2475_true__t0 ) (declare-fun var2476_true__t0 () Bool) (assert (= var2476_true__t0 (theory2_nullterm var2474_literal_string__timeout_waiting_for_broker_response___t0) ) ) (assert var2476_true__t0 ) ; : /home/aep/proj/zz/modules/log/./src/lib.zz:19 ; callsite_source (declare-fun var2477_literal_string__carrier__endpoint___t0 () (_ BitVec 64)) (declare-fun var2478_true__t0 () Bool) (assert (= var2478_true__t0 (theory1_safe var2477_literal_string__carrier__endpoint___t0) ) ) (assert var2478_true__t0 ) (declare-fun var2479_true__t0 () Bool) (assert (= var2479_true__t0 (theory2_nullterm var2477_literal_string__carrier__endpoint___t0) ) ) (assert var2479_true__t0 ) ; : ./src/endpoint.zz:228 ; "timeout waiting for broker response" (declare-fun var2480_literal_string__timeout_waiting_for_broker_response___t0 () (_ BitVec 64)) (declare-fun var2481_true__t0 () Bool) (assert (= var2481_true__t0 (theory1_safe var2480_literal_string__timeout_waiting_for_broker_response___t0) ) ) (assert var2481_true__t0 ) (declare-fun var2482_true__t0 () Bool) (assert (= var2482_true__t0 (theory2_nullterm var2480_literal_string__timeout_waiting_for_broker_response___t0) ) ) (assert var2482_true__t0 ) ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/log/./src/lib.zz:19 ; * ; call of safe (declare-fun var2483_interpretation_of_theory_safe_over_literal_string__timeout_waiting_for_broker_response___t0 () Bool) (assert (= var2483_interpretation_of_theory_safe_over_literal_string__timeout_waiting_for_broker_response___t0 (theory1_safe var2480_literal_string__timeout_waiting_for_broker_response___t0) ) ) ; : /home/aep/proj/zz/modules/log/./src/lib.zz:19 ; * ; call of safe (declare-fun var2484_interpretation_of_theory_safe_over_literal_string__carrier__endpoint___t0 () Bool) (assert (= var2484_interpretation_of_theory_safe_over_literal_string__carrier__endpoint___t0 (theory1_safe var2477_literal_string__carrier__endpoint___t0) ) ) (push 1) (assert (and ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2409_return_value_of___io__valid__t0 ) (or (not var2483_interpretation_of_theory_safe_over_literal_string__timeout_waiting_for_broker_response___t0 ) (not var2484_interpretation_of_theory_safe_over_literal_string__carrier__endpoint___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var2483_interpretation_of_theory_safe_over_literal_string__timeout_waiting_for_broker_response___t0 () Bool) (declare-fun var2484_interpretation_of_theory_safe_over_literal_string__carrier__endpoint___t0 () Bool) ; borrows after call ; end of borrows after call ; : ./src/endpoint.zz:228 ; "timeout waiting for broker response") ; callsite effects ; end of callsite effects ; end branch ; : ./src/endpoint.zz:230 ; ) ; call ; : ./src/endpoint.zz:230 ; . ; : ./src/endpoint.zz:230 ; -> ; : ./src/endpoint.zz:230 ; self ; : ./src/endpoint.zz:230 ; . ; : ./src/endpoint.zz:230 ; ) ; call of ::io::close ; : ./src/endpoint.zz:230 ; . ; : ./src/endpoint.zz:230 ; -> ; : ./src/endpoint.zz:230 ; self ; : ./src/endpoint.zz:230 ; . (declare-fun var2487_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var2488_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (assert (= var2488_len_addressof_deref_S1770_self__timeout____t0 (theory0_len var2487_addressof_deref_S1770_self__timeout___t0) ) ) (assert (= var2488_len_addressof_deref_S1770_self__timeout____t0 (_ bv1 64)) ) (assert (= var2487_addressof_deref_S1770_self__timeout___t0 (_ bv1875 64)) ) (declare-fun var2489_true__t0 () Bool) (assert (= var2489_true__t0 (theory1_safe var2487_addressof_deref_S1770_self__timeout___t0) ) ) (assert var2489_true__t0 ) ; : ./src/endpoint.zz:230 ; -> ; : ./src/endpoint.zz:230 ; self ; : ./src/endpoint.zz:230 ; . (declare-fun var2490_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var2491_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (assert (= var2491_len_addressof_deref_S1770_self__timeout____t0 (theory0_len var2490_addressof_deref_S1770_self__timeout___t0) ) ) (assert (= var2491_len_addressof_deref_S1770_self__timeout____t0 (_ bv1 64)) ) (assert (= var2490_addressof_deref_S1770_self__timeout___t0 (_ bv1875 64)) ) (declare-fun var2492_true__t0 () Bool) (assert (= var2492_true__t0 (theory1_safe var2490_addressof_deref_S1770_self__timeout___t0) ) ) (assert var2492_true__t0 ) ; : ./src/endpoint.zz:230 ; -> ; : ./src/endpoint.zz:230 ; self ; : ./src/endpoint.zz:230 ; . (declare-fun var2493_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var2494_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (assert (= var2494_len_addressof_deref_S1770_self__timeout____t0 (theory0_len var2493_addressof_deref_S1770_self__timeout___t0) ) ) (assert (= var2494_len_addressof_deref_S1770_self__timeout____t0 (_ bv1 64)) ) (assert (= var2493_addressof_deref_S1770_self__timeout___t0 (_ bv1875 64)) ) (declare-fun var2495_true__t0 () Bool) (assert (= var2495_true__t0 (theory1_safe var2493_addressof_deref_S1770_self__timeout___t0) ) ) (assert var2495_true__t0 ) ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:183 ; * ; call of safe (declare-fun var2496_interpretation_of_theory_safe_over_addressof_deref_S1770_self__timeout___t0 () Bool) (assert (= var2496_interpretation_of_theory_safe_over_addressof_deref_S1770_self__timeout___t0 (theory1_safe var2493_addressof_deref_S1770_self__timeout___t0) ) ) (push 1) (assert (and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 (or (not var2496_interpretation_of_theory_safe_over_addressof_deref_S1770_self__timeout___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var2496_interpretation_of_theory_safe_over_addressof_deref_S1770_self__timeout___t0 () Bool) ; borrows after call ; 1875 to temporal +1 because of function borrow (declare-fun var1875_deref_S1770_self__timeout__t3 () (_ BitVec 64)) (assert (= var1875_deref_S1770_self__timeout__t3 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1875_deref_S1770_self__timeout__t3 var1875_deref_S1770_self__timeout__t2) ) ) ; end of borrows after call ; : ./src/endpoint.zz:230 ; ) ; callsite effects ; end of callsite effects ; : ./src/endpoint.zz:233 ; usize mut wait = 0 ; : ./src/endpoint.zz:233 ; 0 ; literal expr (declare-fun var2499_literal_0__t0 () (_ BitVec 64)) (assert (= var2499_literal_0__t0 (_ bv0 64)) ) ; : ./src/endpoint.zz:233 ; usize mut wait = 0 (declare-fun var2500_safe_literal_0_____safe_wait___t0 () Bool) (assert (= var2500_safe_literal_0_____safe_wait___t0 (theory1_safe var2499_literal_0__t0) ) ) (declare-fun var2498_wait__t1 () (_ BitVec 64)) (assert (= var2500_safe_literal_0_____safe_wait___t0 (theory1_safe var2498_wait__t1) ) ) (declare-fun var2501_nullterm_literal_0_____nullterm_wait___t0 () Bool) (assert (= var2501_nullterm_literal_0_____nullterm_wait___t0 (theory2_nullterm var2499_literal_0__t0) ) ) (assert (= var2501_nullterm_literal_0_____nullterm_wait___t0 (theory2_nullterm var2498_wait__t1) ) ) ; : ./src/endpoint.zz:233 ; 0 (declare-fun var2502_implicit_coercion_of_literal_0__t0 () (_ BitVec 64)) (assert (! (= var2502_implicit_coercion_of_literal_0__t0 var2499_literal_0__t0) :named A117))(declare-fun var2498_wait__t0 () (_ BitVec 64)) (assert (= var2498_wait__t1 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2502_implicit_coercion_of_literal_0__t0 var2498_wait__t0) ) ) ; : ./src/endpoint.zz:234 ; . ; : ./src/endpoint.zz:234 ; . ; : ./src/endpoint.zz:234 ; -> ; : ./src/endpoint.zz:234 ; self ; : ./src/endpoint.zz:235 ; 0 ; literal expr (declare-fun var2503_literal_0__t0 () (_ BitVec 64)) (assert (= var2503_literal_0__t0 (_ bv0 64)) ) (declare-fun var2504_implicit_coercion_of_literal_0__t0 () (_ BitVec 64)) (assert (! (= var2504_implicit_coercion_of_literal_0__t0 var2503_literal_0__t0) :named A118))(declare-fun var2505_switch_branch__deref_S1770_self__statem_connecting_retry_sending__implicit_coercion_of_literal_0___t0 () Bool) (assert (= var2505_switch_branch__deref_S1770_self__statem_connecting_retry_sending__implicit_coercion_of_literal_0___t0 (= var2287_deref_S1770_self__statem_connecting_retry_sending__t1 var2504_implicit_coercion_of_literal_0__t0)) ) ; : ./src/endpoint.zz:235 ; wait ; : ./src/endpoint.zz:235 ; 100 ; literal expr (declare-fun var2506_literal_100__t0 () (_ BitVec 64)) (assert (= var2506_literal_100__t0 (_ bv100 64)) ) (declare-fun var2507_implicit_coercion_of_literal_100__t0 () (_ BitVec 64)) (assert (! (= var2507_implicit_coercion_of_literal_100__t0 var2506_literal_100__t0) :named A119)); : ./src/endpoint.zz:235 ; wait = 100 (declare-fun var2508_safe_implicit_coercion_of_literal_100_____safe_wait___t0 () Bool) (assert (= var2508_safe_implicit_coercion_of_literal_100_____safe_wait___t0 (theory1_safe var2507_implicit_coercion_of_literal_100__t0) ) ) (declare-fun var2498_wait__t2 () (_ BitVec 64)) (assert (= var2508_safe_implicit_coercion_of_literal_100_____safe_wait___t0 (theory1_safe var2498_wait__t2) ) ) (declare-fun var2509_nullterm_implicit_coercion_of_literal_100_____nullterm_wait___t0 () Bool) (assert (= var2509_nullterm_implicit_coercion_of_literal_100_____nullterm_wait___t0 (theory2_nullterm var2507_implicit_coercion_of_literal_100__t0) ) ) (assert (= var2509_nullterm_implicit_coercion_of_literal_100_____nullterm_wait___t0 (theory2_nullterm var2498_wait__t2) ) ) (assert (= var2498_wait__t2 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2505_switch_branch__deref_S1770_self__statem_connecting_retry_sending__implicit_coercion_of_literal_0___t0 ) var2507_implicit_coercion_of_literal_100__t0 var2498_wait__t1) ) ) ; : ./src/endpoint.zz:236 ; 1 ; literal expr (declare-fun var2510_literal_1__t0 () (_ BitVec 64)) (assert (= var2510_literal_1__t0 (_ bv1 64)) ) (declare-fun var2511_implicit_coercion_of_literal_1__t0 () (_ BitVec 64)) (assert (! (= var2511_implicit_coercion_of_literal_1__t0 var2510_literal_1__t0) :named A120))(declare-fun var2512_switch_branch__deref_S1770_self__statem_connecting_retry_sending__implicit_coercion_of_literal_1___t0 () Bool) (assert (= var2512_switch_branch__deref_S1770_self__statem_connecting_retry_sending__implicit_coercion_of_literal_1___t0 (= var2287_deref_S1770_self__statem_connecting_retry_sending__t1 var2511_implicit_coercion_of_literal_1__t0)) ) ; : ./src/endpoint.zz:236 ; wait ; : ./src/endpoint.zz:236 ; 300 ; literal expr (declare-fun var2513_literal_300__t0 () (_ BitVec 64)) (assert (= var2513_literal_300__t0 (_ bv300 64)) ) (declare-fun var2514_implicit_coercion_of_literal_300__t0 () (_ BitVec 64)) (assert (! (= var2514_implicit_coercion_of_literal_300__t0 var2513_literal_300__t0) :named A121)); : ./src/endpoint.zz:236 ; wait = 300 (declare-fun var2515_safe_implicit_coercion_of_literal_300_____safe_wait___t0 () Bool) (assert (= var2515_safe_implicit_coercion_of_literal_300_____safe_wait___t0 (theory1_safe var2514_implicit_coercion_of_literal_300__t0) ) ) (declare-fun var2498_wait__t3 () (_ BitVec 64)) (assert (= var2515_safe_implicit_coercion_of_literal_300_____safe_wait___t0 (theory1_safe var2498_wait__t3) ) ) (declare-fun var2516_nullterm_implicit_coercion_of_literal_300_____nullterm_wait___t0 () Bool) (assert (= var2516_nullterm_implicit_coercion_of_literal_300_____nullterm_wait___t0 (theory2_nullterm var2514_implicit_coercion_of_literal_300__t0) ) ) (assert (= var2516_nullterm_implicit_coercion_of_literal_300_____nullterm_wait___t0 (theory2_nullterm var2498_wait__t3) ) ) (assert (= var2498_wait__t3 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2512_switch_branch__deref_S1770_self__statem_connecting_retry_sending__implicit_coercion_of_literal_1___t0 ) var2514_implicit_coercion_of_literal_300__t0 var2498_wait__t2) ) ) ; : ./src/endpoint.zz:237 ; 2 ; literal expr (declare-fun var2517_literal_2__t0 () (_ BitVec 64)) (assert (= var2517_literal_2__t0 (_ bv2 64)) ) (declare-fun var2518_implicit_coercion_of_literal_2__t0 () (_ BitVec 64)) (assert (! (= var2518_implicit_coercion_of_literal_2__t0 var2517_literal_2__t0) :named A122))(declare-fun var2519_switch_branch__deref_S1770_self__statem_connecting_retry_sending__implicit_coercion_of_literal_2___t0 () Bool) (assert (= var2519_switch_branch__deref_S1770_self__statem_connecting_retry_sending__implicit_coercion_of_literal_2___t0 (= var2287_deref_S1770_self__statem_connecting_retry_sending__t1 var2518_implicit_coercion_of_literal_2__t0)) ) ; : ./src/endpoint.zz:237 ; wait ; : ./src/endpoint.zz:237 ; 600 ; literal expr (declare-fun var2520_literal_600__t0 () (_ BitVec 64)) (assert (= var2520_literal_600__t0 (_ bv600 64)) ) (declare-fun var2521_implicit_coercion_of_literal_600__t0 () (_ BitVec 64)) (assert (! (= var2521_implicit_coercion_of_literal_600__t0 var2520_literal_600__t0) :named A123)); : ./src/endpoint.zz:237 ; wait = 600 (declare-fun var2522_safe_implicit_coercion_of_literal_600_____safe_wait___t0 () Bool) (assert (= var2522_safe_implicit_coercion_of_literal_600_____safe_wait___t0 (theory1_safe var2521_implicit_coercion_of_literal_600__t0) ) ) (declare-fun var2498_wait__t4 () (_ BitVec 64)) (assert (= var2522_safe_implicit_coercion_of_literal_600_____safe_wait___t0 (theory1_safe var2498_wait__t4) ) ) (declare-fun var2523_nullterm_implicit_coercion_of_literal_600_____nullterm_wait___t0 () Bool) (assert (= var2523_nullterm_implicit_coercion_of_literal_600_____nullterm_wait___t0 (theory2_nullterm var2521_implicit_coercion_of_literal_600__t0) ) ) (assert (= var2523_nullterm_implicit_coercion_of_literal_600_____nullterm_wait___t0 (theory2_nullterm var2498_wait__t4) ) ) (assert (= var2498_wait__t4 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2519_switch_branch__deref_S1770_self__statem_connecting_retry_sending__implicit_coercion_of_literal_2___t0 ) var2521_implicit_coercion_of_literal_600__t0 var2498_wait__t3) ) ) ; : ./src/endpoint.zz:238 ; wait ; : ./src/endpoint.zz:238 ; 2000 ; literal expr (declare-fun var2524_literal_2000__t0 () (_ BitVec 64)) (assert (= var2524_literal_2000__t0 (_ bv2000 64)) ) (declare-fun var2525_implicit_coercion_of_literal_2000__t0 () (_ BitVec 64)) (assert (! (= var2525_implicit_coercion_of_literal_2000__t0 var2524_literal_2000__t0) :named A124)); : ./src/endpoint.zz:238 ; wait = 2000 (declare-fun var2526_safe_implicit_coercion_of_literal_2000_____safe_wait___t0 () Bool) (assert (= var2526_safe_implicit_coercion_of_literal_2000_____safe_wait___t0 (theory1_safe var2525_implicit_coercion_of_literal_2000__t0) ) ) (declare-fun var2498_wait__t5 () (_ BitVec 64)) (assert (= var2526_safe_implicit_coercion_of_literal_2000_____safe_wait___t0 (theory1_safe var2498_wait__t5) ) ) (declare-fun var2527_nullterm_implicit_coercion_of_literal_2000_____nullterm_wait___t0 () Bool) (assert (= var2527_nullterm_implicit_coercion_of_literal_2000_____nullterm_wait___t0 (theory2_nullterm var2525_implicit_coercion_of_literal_2000__t0) ) ) (assert (= var2527_nullterm_implicit_coercion_of_literal_2000_____nullterm_wait___t0 (theory2_nullterm var2498_wait__t5) ) ) (assert (= var2498_wait__t5 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2525_implicit_coercion_of_literal_2000__t0 var2498_wait__t4) ) ) ; : ./src/endpoint.zz:241 ; -> ; : ./src/endpoint.zz:241 ; self ; : ./src/endpoint.zz:241 ; async, e, time::from_millis(wait)) ; call of ::io::timeout ; : ./src/endpoint.zz:241 ; io::timeout ; : ./src/endpoint.zz:241 ; async ; : ./src/endpoint.zz:241 ; e ; : ./src/endpoint.zz:241 ; wait) ; call of ::time::from_millis ; : ./src/endpoint.zz:241 ; time::from_millis ; : ./src/endpoint.zz:241 ; wait ; borrows after call ; end of borrows after call ; : ./src/endpoint.zz:241 ; wait) ; callsite effects ; end of callsite effects ; call of ::time::from_millis ; : ./src/endpoint.zz:241 ; time::from_millis ; : ./src/endpoint.zz:241 ; wait ; borrows after call ; end of borrows after call ; : ./src/endpoint.zz:241 ; wait) ; callsite effects ; end of callsite effects ; : ./src/endpoint.zz:241 ; async ; : ./src/endpoint.zz:241 ; e (declare-fun var2530_cast_of_e__t0 () (_ BitVec 64)) (assert (! (= var2530_cast_of_e__t0 var1775_e__t0) :named A125)); : ./src/endpoint.zz:149 ; +et ; : ./src/endpoint.zz:241 ; wait) ; call of ::time::from_millis ; : ./src/endpoint.zz:241 ; time::from_millis ; : ./src/endpoint.zz:241 ; wait ; borrows after call ; end of borrows after call ; : ./src/endpoint.zz:241 ; wait) ; callsite effects ; end of callsite effects ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:206 ; * ; call of safe (declare-fun var2532_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (assert (= var2532_interpretation_of_theory_safe_over_cast_of_e__t0 (theory1_safe var2530_cast_of_e__t0) ) ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:206 ; * ; call of safe (declare-fun var2533_interpretation_of_theory_safe_over_async__t0 () Bool) (assert (= var2533_interpretation_of_theory_safe_over_async__t0 (theory1_safe var1780_async__t0) ) ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:207 ; *e) ; call of ::err::checked ; : /home/aep/proj/zz/modules/io/./src/lib.zz:207 ; err::checked ; : /home/aep/proj/zz/modules/io/./src/lib.zz:207 ; *e ; : /home/aep/proj/zz/modules/io/./src/lib.zz:207 ; e ; : /home/aep/proj/zz/modules/io/./src/lib.zz:207 ; *e ; : /home/aep/proj/zz/modules/io/./src/lib.zz:207 ; e ; : /home/aep/proj/zz/modules/io/./src/lib.zz:207 ; *e (declare-fun var2534_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2534_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t22) :named A126)); : /home/aep/proj/zz/modules/io/./src/lib.zz:207 ; e ; : /home/aep/proj/zz/modules/io/./src/lib.zz:207 ; *e (declare-fun var2535_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2535_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t22) :named A127)); : /home/aep/proj/zz/modules/io/./src/lib.zz:207 ; *e) (declare-fun var2536_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (assert (= var2536_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 (theory86___err__checked var2535_cast_of_deref_S1775_e___t0) ) ) (push 1) (assert (and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 (or (not var2532_interpretation_of_theory_safe_over_cast_of_e__t0 ) (not var2533_interpretation_of_theory_safe_over_async__t0 ) (not var2536_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var2532_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var2533_interpretation_of_theory_safe_over_async__t0 () Bool) (declare-fun var2536_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) ; borrows after call ; 1900 to temporal +1 because of function borrow (declare-fun var1900_deref_S1780_async___t5 () (_ BitVec 64)) (assert (= var1900_deref_S1780_async___t5 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1900_deref_S1780_async___t5 var1900_deref_S1780_async___t4) ) ) ; 1777 to temporal +1 because of function borrow (declare-fun var1777_deref_S1775_e___t23 () (_ BitVec 64)) (assert (= var1777_deref_S1775_e___t23 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1777_deref_S1775_e___t23 var1777_deref_S1775_e___t22) ) ) ; end of borrows after call ; : ./src/endpoint.zz:241 ; async, e, time::from_millis(wait)) ; callsite effects ; end of callsite effects ; : ./src/endpoint.zz:241 ; self->timeout = io::timeout(async, e, time::from_millis(wait)) (declare-fun var2537_return_value_of___io__timeout__t0 () (_ BitVec 64)) (declare-fun var2538_safe_return_value_of___io__timeout_____safe_deref_S1770_self__timeout___t0 () Bool) (assert (= var2538_safe_return_value_of___io__timeout_____safe_deref_S1770_self__timeout___t0 (theory1_safe var2537_return_value_of___io__timeout__t0) ) ) (declare-fun var1875_deref_S1770_self__timeout__t4 () (_ BitVec 64)) (assert (= var2538_safe_return_value_of___io__timeout_____safe_deref_S1770_self__timeout___t0 (theory1_safe var1875_deref_S1770_self__timeout__t4) ) ) (declare-fun var2539_nullterm_return_value_of___io__timeout_____nullterm_deref_S1770_self__timeout___t0 () Bool) (assert (= var2539_nullterm_return_value_of___io__timeout_____nullterm_deref_S1770_self__timeout___t0 (theory2_nullterm var2537_return_value_of___io__timeout__t0) ) ) (assert (= var2539_nullterm_return_value_of___io__timeout_____nullterm_deref_S1770_self__timeout___t0 (theory2_nullterm var1875_deref_S1770_self__timeout__t4) ) ) (assert (= var1875_deref_S1770_self__timeout__t4 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2537_return_value_of___io__timeout__t0 var1875_deref_S1770_self__timeout__t3) ) ) ; : ./src/endpoint.zz:242 ; e) ; call of ::err::check ; : ./src/endpoint.zz:242 ; err::check ; : ./src/endpoint.zz:242 ; e (declare-fun var2540_cast_of_e__t0 () (_ BitVec 64)) (assert (! (= var2540_cast_of_e__t0 var1775_e__t0) :named A128)); : ./src/endpoint.zz:149 ; +et ; : /home/aep/proj/zz/modules/err/./src/lib.zz:28 ; callsite_source (declare-fun var2541_literal_string____src_endpoint_zz___t0 () (_ BitVec 64)) (declare-fun var2542_true__t0 () Bool) (assert (= var2542_true__t0 (theory1_safe var2541_literal_string____src_endpoint_zz___t0) ) ) (assert var2542_true__t0 ) (declare-fun var2543_true__t0 () Bool) (assert (= var2543_true__t0 (theory2_nullterm var2541_literal_string____src_endpoint_zz___t0) ) ) (assert var2543_true__t0 ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:29 ; callsite_source (declare-fun var2544_literal_string____carrier__endpoint__poll___t0 () (_ BitVec 64)) (declare-fun var2545_true__t0 () Bool) (assert (= var2545_true__t0 (theory1_safe var2544_literal_string____carrier__endpoint__poll___t0) ) ) (assert var2545_true__t0 ) (declare-fun var2546_true__t0 () Bool) (assert (= var2546_true__t0 (theory2_nullterm var2544_literal_string____carrier__endpoint__poll___t0) ) ) (assert var2546_true__t0 ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:30 ; callsite_source ; literal expr (declare-fun var2547_literal_242__t0 () (_ BitVec 64)) (assert (= var2547_literal_242__t0 (_ bv242 64)) ) ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:27 ; * ; call of safe (declare-fun var2548_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (assert (= var2548_interpretation_of_theory_safe_over_cast_of_e__t0 (theory1_safe var2540_cast_of_e__t0) ) ) (push 1) (assert (and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 (or (not var2548_interpretation_of_theory_safe_over_cast_of_e__t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var2548_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) ; borrows after call ; 1777 to temporal +1 because of function borrow (declare-fun var1777_deref_S1775_e___t24 () (_ BitVec 64)) (assert (= var1777_deref_S1775_e___t24 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1777_deref_S1775_e___t24 var1777_deref_S1775_e___t23) ) ) ; end of borrows after call ; : ./src/endpoint.zz:242 ; e) ; callsite effects (declare-fun var2550_return__t1 () Bool) (declare-fun var2549_return_value_of___err__check__t0 () Bool) (declare-fun var2550_return__t0 () Bool) (assert (= var2550_return__t1 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2549_return_value_of___err__check__t0 var2550_return__t0) ) ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self) ; call of ::err::checked ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; checked ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self (declare-fun var2551_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2551_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t24) :named A129)); : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self (declare-fun var2552_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2552_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t24) :named A130)); : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self) (declare-fun var2553_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (assert (= var2553_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 (theory86___err__checked var2552_cast_of_deref_S1775_e___t0) ) ) (assert (! var2553_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 :named A131))(check-sat) (declare-fun var2549_return_value_of___err__check__t1 () Bool) (assert (= var2549_return_value_of___err__check__t1 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2550_return__t1 var2549_return_value_of___err__check__t0) ) ) ; end of callsite effects (check-sat) (get-value ( var2549_return_value_of___err__check__t1 ) ) ; = "false" (push 1) (assert (not (= var2549_return_value_of___err__check__t1 false)) ) (check-sat) (pop 1) ; : ./src/endpoint.zz:242 ; e) ; : ./src/endpoint.zz:242 ; if err::check(e) {return io::Result::Error; } ; : ./src/endpoint.zz:242 ; io::Result::Error (declare-fun var2554_safe___io__Result__Error_____safe_return___t0 () Bool) (assert (= var2554_safe___io__Result__Error_____safe_return___t0 (theory1_safe var250___io__Result__Error__t0) ) ) (declare-fun var1787_return__t12 () (_ BitVec 64)) (assert (= var2554_safe___io__Result__Error_____safe_return___t0 (theory1_safe var1787_return__t12) ) ) (declare-fun var2555_nullterm___io__Result__Error_____nullterm_return___t0 () Bool) (assert (= var2555_nullterm___io__Result__Error_____nullterm_return___t0 (theory2_nullterm var250___io__Result__Error__t0) ) ) (assert (= var2555_nullterm___io__Result__Error_____nullterm_return___t0 (theory2_nullterm var1787_return__t12) ) ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:24 ; Result (declare-fun var2556_implicit_coercion_of___io__Result__Error__t0 () (_ BitVec 64)) (assert (! (= var2556_implicit_coercion_of___io__Result__Error__t0 var250___io__Result__Error__t0) :named A132))(assert (= var1787_return__t12 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2549_return_value_of___err__check__t1 ) var2556_implicit_coercion_of___io__Result__Error__t0 var1787_return__t11) ) ) ; end branch ; branch returned. the rest of the function only happens if the condition leading to return never happened ; (not ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2549_return_value_of___err__check__t1 )) (assert (not ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2549_return_value_of___err__check__t1 )) ) ; : ./src/endpoint.zz:243 ; e, &self->timeout, io::Ready::Read) ; call ; : ./src/endpoint.zz:243 ; -> ; : ./src/endpoint.zz:243 ; async ; : ./src/endpoint.zz:243 ; -> ; : ./src/endpoint.zz:243 ; e, &self->timeout, io::Ready::Read) ; call of ::io::select ; : ./src/endpoint.zz:243 ; -> ; : ./src/endpoint.zz:243 ; async ; : ./src/endpoint.zz:243 ; e ; : ./src/endpoint.zz:243 ; &self->timeout ; : ./src/endpoint.zz:243 ; -> ; : ./src/endpoint.zz:243 ; self ; : ./src/endpoint.zz:243 ; &self->timeout (declare-fun var2558_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var2559_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (assert (= var2559_len_addressof_deref_S1770_self__timeout____t0 (theory0_len var2558_addressof_deref_S1770_self__timeout___t0) ) ) (assert (= var2559_len_addressof_deref_S1770_self__timeout____t0 (_ bv1 64)) ) (assert (= var2558_addressof_deref_S1770_self__timeout___t0 (_ bv1875 64)) ) (declare-fun var2560_true__t0 () Bool) (assert (= var2560_true__t0 (theory1_safe var2558_addressof_deref_S1770_self__timeout___t0) ) ) (assert var2560_true__t0 ) ; : ./src/endpoint.zz:243 ; -> ; : ./src/endpoint.zz:243 ; self ; : ./src/endpoint.zz:243 ; &self->timeout (declare-fun var2561_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var2562_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (assert (= var2562_len_addressof_deref_S1770_self__timeout____t0 (theory0_len var2561_addressof_deref_S1770_self__timeout___t0) ) ) (assert (= var2562_len_addressof_deref_S1770_self__timeout____t0 (_ bv1 64)) ) (assert (= var2561_addressof_deref_S1770_self__timeout___t0 (_ bv1875 64)) ) (declare-fun var2563_true__t0 () Bool) (assert (= var2563_true__t0 (theory1_safe var2561_addressof_deref_S1770_self__timeout___t0) ) ) (assert var2563_true__t0 ) (declare-fun var2565_addressof_deref_S1770_self__timeout_ctx___t0 () (_ BitVec 64)) (declare-fun var2566_len_addressof_deref_S1770_self__timeout_ctx____t0 () (_ BitVec 64)) (assert (= var2566_len_addressof_deref_S1770_self__timeout_ctx____t0 (theory0_len var2565_addressof_deref_S1770_self__timeout_ctx___t0) ) ) (assert (= var2566_len_addressof_deref_S1770_self__timeout_ctx____t0 (_ bv1 64)) ) (assert (= var2565_addressof_deref_S1770_self__timeout_ctx___t0 (_ bv2564 64)) ) (declare-fun var2567_true__t0 () Bool) (assert (= var2567_true__t0 (theory1_safe var2565_addressof_deref_S1770_self__timeout_ctx___t0) ) ) (assert var2567_true__t0 ) ; : ./src/endpoint.zz:243 ; -> ; : ./src/endpoint.zz:243 ; self ; : ./src/endpoint.zz:243 ; &self->timeout (declare-fun var2568_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var2569_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (assert (= var2569_len_addressof_deref_S1770_self__timeout____t0 (theory0_len var2568_addressof_deref_S1770_self__timeout___t0) ) ) (assert (= var2569_len_addressof_deref_S1770_self__timeout____t0 (_ bv1 64)) ) (assert (= var2568_addressof_deref_S1770_self__timeout___t0 (_ bv1875 64)) ) (declare-fun var2570_true__t0 () Bool) (assert (= var2570_true__t0 (theory1_safe var2568_addressof_deref_S1770_self__timeout___t0) ) ) (assert var2570_true__t0 ) (declare-fun var2571_addressof_deref_S1770_self__timeout_ctx___t0 () (_ BitVec 64)) (declare-fun var2572_len_addressof_deref_S1770_self__timeout_ctx____t0 () (_ BitVec 64)) (assert (= var2572_len_addressof_deref_S1770_self__timeout_ctx____t0 (theory0_len var2571_addressof_deref_S1770_self__timeout_ctx___t0) ) ) (assert (= var2572_len_addressof_deref_S1770_self__timeout_ctx____t0 (_ bv1 64)) ) (assert (= var2571_addressof_deref_S1770_self__timeout_ctx___t0 (_ bv2564 64)) ) (declare-fun var2573_true__t0 () Bool) (assert (= var2573_true__t0 (theory1_safe var2571_addressof_deref_S1770_self__timeout_ctx___t0) ) ) (assert var2573_true__t0 ) ; : ./src/endpoint.zz:243 ; io::Ready::Read ; : ./src/endpoint.zz:243 ; async ; : ./src/endpoint.zz:243 ; e (declare-fun var2574_cast_of_e__t0 () (_ BitVec 64)) (assert (! (= var2574_cast_of_e__t0 var1775_e__t0) :named A133)); : ./src/endpoint.zz:149 ; +et ; : ./src/endpoint.zz:243 ; &self->timeout ; : ./src/endpoint.zz:243 ; -> ; : ./src/endpoint.zz:243 ; self ; : ./src/endpoint.zz:243 ; &self->timeout (declare-fun var2575_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var2576_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (assert (= var2576_len_addressof_deref_S1770_self__timeout____t0 (theory0_len var2575_addressof_deref_S1770_self__timeout___t0) ) ) (assert (= var2576_len_addressof_deref_S1770_self__timeout____t0 (_ bv1 64)) ) (assert (= var2575_addressof_deref_S1770_self__timeout___t0 (_ bv1875 64)) ) (declare-fun var2577_true__t0 () Bool) (assert (= var2577_true__t0 (theory1_safe var2575_addressof_deref_S1770_self__timeout___t0) ) ) (assert var2577_true__t0 ) (declare-fun var2578_addressof_deref_S1770_self__timeout_ctx___t0 () (_ BitVec 64)) (declare-fun var2579_len_addressof_deref_S1770_self__timeout_ctx____t0 () (_ BitVec 64)) (assert (= var2579_len_addressof_deref_S1770_self__timeout_ctx____t0 (theory0_len var2578_addressof_deref_S1770_self__timeout_ctx___t0) ) ) (assert (= var2579_len_addressof_deref_S1770_self__timeout_ctx____t0 (_ bv1 64)) ) (assert (= var2578_addressof_deref_S1770_self__timeout_ctx___t0 (_ bv2564 64)) ) (declare-fun var2580_true__t0 () Bool) (assert (= var2580_true__t0 (theory1_safe var2578_addressof_deref_S1770_self__timeout_ctx___t0) ) ) (assert var2580_true__t0 ) ; : ./src/endpoint.zz:243 ; io::Ready::Read ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:192 ; * ; call of safe (declare-fun var2581_interpretation_of_theory_safe_over_addressof_deref_S1770_self__timeout_ctx___t0 () Bool) (assert (= var2581_interpretation_of_theory_safe_over_addressof_deref_S1770_self__timeout_ctx___t0 (theory1_safe var2578_addressof_deref_S1770_self__timeout_ctx___t0) ) ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:192 ; * ; call of safe (declare-fun var2582_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (assert (= var2582_interpretation_of_theory_safe_over_cast_of_e__t0 (theory1_safe var2574_cast_of_e__t0) ) ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:192 ; * ; call of safe (declare-fun var2583_interpretation_of_theory_safe_over_async__t0 () Bool) (assert (= var2583_interpretation_of_theory_safe_over_async__t0 (theory1_safe var1780_async__t0) ) ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; *e) ; call of ::err::checked ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; err::checked ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; *e ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; e ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; *e ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; e ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; *e (declare-fun var2584_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2584_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t24) :named A134)); : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; e ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; *e (declare-fun var2585_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2585_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t24) :named A135)); : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; *e) (declare-fun var2586_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (assert (= var2586_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 (theory86___err__checked var2585_cast_of_deref_S1775_e___t0) ) ) (push 1) (assert (and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 (or (not var2581_interpretation_of_theory_safe_over_addressof_deref_S1770_self__timeout_ctx___t0 ) (not var2582_interpretation_of_theory_safe_over_cast_of_e__t0 ) (not var2583_interpretation_of_theory_safe_over_async__t0 ) (not var2586_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var2581_interpretation_of_theory_safe_over_addressof_deref_S1770_self__timeout_ctx___t0 () Bool) (declare-fun var2582_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var2583_interpretation_of_theory_safe_over_async__t0 () Bool) (declare-fun var2586_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) ; borrows after call ; 1900 to temporal +1 because of function borrow (declare-fun var1900_deref_S1780_async___t6 () (_ BitVec 64)) (assert (= var1900_deref_S1780_async___t6 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1900_deref_S1780_async___t6 var1900_deref_S1780_async___t5) ) ) ; 1777 to temporal +1 because of function borrow (declare-fun var1777_deref_S1775_e___t25 () (_ BitVec 64)) (assert (= var1777_deref_S1775_e___t25 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1777_deref_S1775_e___t25 var1777_deref_S1775_e___t24) ) ) ; 2564 to temporal +1 because of function borrow (declare-fun var2564_deref_S1770_self__timeout_ctx__t1 () (_ BitVec 64)) (declare-fun var2564_deref_S1770_self__timeout_ctx__t0 () (_ BitVec 64)) (assert (= var2564_deref_S1770_self__timeout_ctx__t1 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2564_deref_S1770_self__timeout_ctx__t1 var2564_deref_S1770_self__timeout_ctx__t0) ) ) ; end of borrows after call ; : ./src/endpoint.zz:243 ; e, &self->timeout, io::Ready::Read) ; callsite effects ; end of callsite effects ; : ./src/endpoint.zz:244 ; e) ; call of ::err::check ; : ./src/endpoint.zz:244 ; err::check ; : ./src/endpoint.zz:244 ; e (declare-fun var2588_cast_of_e__t0 () (_ BitVec 64)) (assert (! (= var2588_cast_of_e__t0 var1775_e__t0) :named A136)); : ./src/endpoint.zz:149 ; +et ; : /home/aep/proj/zz/modules/err/./src/lib.zz:28 ; callsite_source (declare-fun var2589_literal_string____src_endpoint_zz___t0 () (_ BitVec 64)) (declare-fun var2590_true__t0 () Bool) (assert (= var2590_true__t0 (theory1_safe var2589_literal_string____src_endpoint_zz___t0) ) ) (assert var2590_true__t0 ) (declare-fun var2591_true__t0 () Bool) (assert (= var2591_true__t0 (theory2_nullterm var2589_literal_string____src_endpoint_zz___t0) ) ) (assert var2591_true__t0 ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:29 ; callsite_source (declare-fun var2592_literal_string____carrier__endpoint__poll___t0 () (_ BitVec 64)) (declare-fun var2593_true__t0 () Bool) (assert (= var2593_true__t0 (theory1_safe var2592_literal_string____carrier__endpoint__poll___t0) ) ) (assert var2593_true__t0 ) (declare-fun var2594_true__t0 () Bool) (assert (= var2594_true__t0 (theory2_nullterm var2592_literal_string____carrier__endpoint__poll___t0) ) ) (assert var2594_true__t0 ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:30 ; callsite_source ; literal expr (declare-fun var2595_literal_244__t0 () (_ BitVec 64)) (assert (= var2595_literal_244__t0 (_ bv244 64)) ) ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:27 ; * ; call of safe (declare-fun var2596_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (assert (= var2596_interpretation_of_theory_safe_over_cast_of_e__t0 (theory1_safe var2588_cast_of_e__t0) ) ) (push 1) (assert (and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 (or (not var2596_interpretation_of_theory_safe_over_cast_of_e__t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var2596_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) ; borrows after call ; 1777 to temporal +1 because of function borrow (declare-fun var1777_deref_S1775_e___t26 () (_ BitVec 64)) (assert (= var1777_deref_S1775_e___t26 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1777_deref_S1775_e___t26 var1777_deref_S1775_e___t25) ) ) ; end of borrows after call ; : ./src/endpoint.zz:244 ; e) ; callsite effects (declare-fun var2598_return__t1 () Bool) (declare-fun var2597_return_value_of___err__check__t0 () Bool) (declare-fun var2598_return__t0 () Bool) (assert (= var2598_return__t1 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2597_return_value_of___err__check__t0 var2598_return__t0) ) ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self) ; call of ::err::checked ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; checked ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self (declare-fun var2599_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2599_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t26) :named A137)); : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self (declare-fun var2600_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2600_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t26) :named A138)); : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self) (declare-fun var2601_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (assert (= var2601_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 (theory86___err__checked var2600_cast_of_deref_S1775_e___t0) ) ) (assert (! var2601_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 :named A139))(check-sat) (declare-fun var2597_return_value_of___err__check__t1 () Bool) (assert (= var2597_return_value_of___err__check__t1 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2598_return__t1 var2597_return_value_of___err__check__t0) ) ) ; end of callsite effects (check-sat) (get-value ( var2597_return_value_of___err__check__t1 ) ) ; = "false" (push 1) (assert (not (= var2597_return_value_of___err__check__t1 false)) ) (check-sat) (pop 1) ; : ./src/endpoint.zz:244 ; e) ; : ./src/endpoint.zz:244 ; if err::check(e) {return io::Result::Error; } ; : ./src/endpoint.zz:244 ; io::Result::Error (declare-fun var2602_safe___io__Result__Error_____safe_return___t0 () Bool) (assert (= var2602_safe___io__Result__Error_____safe_return___t0 (theory1_safe var250___io__Result__Error__t0) ) ) (declare-fun var1787_return__t13 () (_ BitVec 64)) (assert (= var2602_safe___io__Result__Error_____safe_return___t0 (theory1_safe var1787_return__t13) ) ) (declare-fun var2603_nullterm___io__Result__Error_____nullterm_return___t0 () Bool) (assert (= var2603_nullterm___io__Result__Error_____nullterm_return___t0 (theory2_nullterm var250___io__Result__Error__t0) ) ) (assert (= var2603_nullterm___io__Result__Error_____nullterm_return___t0 (theory2_nullterm var1787_return__t13) ) ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:24 ; Result (declare-fun var2604_implicit_coercion_of___io__Result__Error__t0 () (_ BitVec 64)) (assert (! (= var2604_implicit_coercion_of___io__Result__Error__t0 var250___io__Result__Error__t0) :named A140))(assert (= var1787_return__t13 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2597_return_value_of___err__check__t1 ) var2604_implicit_coercion_of___io__Result__Error__t0 var1787_return__t12) ) ) ; end branch ; branch returned. the rest of the function only happens if the condition leading to return never happened ; (not ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2597_return_value_of___err__check__t1 )) (assert (not ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2597_return_value_of___err__check__t1 )) ) ; : ./src/endpoint.zz:246 ; > ; : ./src/endpoint.zz:246 ; . ; : ./src/endpoint.zz:246 ; . ; : ./src/endpoint.zz:246 ; -> ; : ./src/endpoint.zz:246 ; self ; : ./src/endpoint.zz:246 ; 5 ; literal expr (declare-fun var2605_literal_5__t0 () (_ BitVec 64)) (assert (= var2605_literal_5__t0 (_ bv5 64)) ) (declare-fun var2606_implicit_coercion_of_literal_5__t0 () (_ BitVec 64)) (assert (! (= var2606_implicit_coercion_of_literal_5__t0 var2605_literal_5__t0) :named A141)); : ./src/endpoint.zz:246 ; > (declare-fun var2607_infix_expression__t0 () Bool) (assert (= var2607_infix_expression__t0 (bvugt var2287_deref_S1770_self__statem_connecting_retry_sending__t1 var2606_implicit_coercion_of_literal_5__t0)) ) (check-sat) (get-value ( var2607_infix_expression__t0 ) ) ; = "false" (push 1) (assert (not (= var2607_infix_expression__t0 false)) ) (check-sat) (pop 1) ; : ./src/endpoint.zz:246 ; if self->statem.connecting.retry_sending > 5 { ; self->statem.connecting.retry_sending = 0; ; self->next_broker(); ; } ; : ./src/endpoint.zz:247 ; . ; : ./src/endpoint.zz:247 ; . ; : ./src/endpoint.zz:247 ; -> ; : ./src/endpoint.zz:247 ; self ; : ./src/endpoint.zz:247 ; 0 ; literal expr (declare-fun var2608_literal_0__t0 () (_ BitVec 64)) (assert (= var2608_literal_0__t0 (_ bv0 64)) ) (declare-fun var2609_implicit_coercion_of_literal_0__t0 () (_ BitVec 64)) (assert (! (= var2609_implicit_coercion_of_literal_0__t0 var2608_literal_0__t0) :named A142)); : ./src/endpoint.zz:247 ; self->statem.connecting.retry_sending = 0 (declare-fun var2610_safe_implicit_coercion_of_literal_0_____safe_deref_S1770_self__statem_connecting_retry_sending___t0 () Bool) (assert (= var2610_safe_implicit_coercion_of_literal_0_____safe_deref_S1770_self__statem_connecting_retry_sending___t0 (theory1_safe var2609_implicit_coercion_of_literal_0__t0) ) ) (declare-fun var2287_deref_S1770_self__statem_connecting_retry_sending__t2 () (_ BitVec 64)) (assert (= var2610_safe_implicit_coercion_of_literal_0_____safe_deref_S1770_self__statem_connecting_retry_sending___t0 (theory1_safe var2287_deref_S1770_self__statem_connecting_retry_sending__t2) ) ) (declare-fun var2611_nullterm_implicit_coercion_of_literal_0_____nullterm_deref_S1770_self__statem_connecting_retry_sending___t0 () Bool) (assert (= var2611_nullterm_implicit_coercion_of_literal_0_____nullterm_deref_S1770_self__statem_connecting_retry_sending___t0 (theory2_nullterm var2609_implicit_coercion_of_literal_0__t0) ) ) (assert (= var2611_nullterm_implicit_coercion_of_literal_0_____nullterm_deref_S1770_self__statem_connecting_retry_sending___t0 (theory2_nullterm var2287_deref_S1770_self__statem_connecting_retry_sending__t2) ) ) (assert (= var2287_deref_S1770_self__statem_connecting_retry_sending__t2 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2607_infix_expression__t0 ) var2609_implicit_coercion_of_literal_0__t0 var2287_deref_S1770_self__statem_connecting_retry_sending__t1) ) ) ; : ./src/endpoint.zz:248 ; ) ; call ; : ./src/endpoint.zz:248 ; -> ; : ./src/endpoint.zz:248 ; self ; : ./src/endpoint.zz:248 ; -> ; : ./src/endpoint.zz:248 ; ) ; call of ::carrier::endpoint::next_broker ; : ./src/endpoint.zz:248 ; -> ; : ./src/endpoint.zz:248 ; self (declare-fun var2613_cast_of_self__t0 () (_ BitVec 64)) (assert (! (= var2613_cast_of_self__t0 var1770_self__t0) :named A143)); : ./src/endpoint.zz:149 ; +xt ;callsite_assert (push 1) ; : ./src/endpoint.zz:94 ; * ; call of safe (declare-fun var2614_interpretation_of_theory_safe_over_cast_of_self__t0 () Bool) (assert (= var2614_interpretation_of_theory_safe_over_cast_of_self__t0 (theory1_safe var2613_cast_of_self__t0) ) ) (push 1) (assert (and ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2607_infix_expression__t0 ) (or (not var2614_interpretation_of_theory_safe_over_cast_of_self__t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var2614_interpretation_of_theory_safe_over_cast_of_self__t0 () Bool) ; borrows after call ; 1772 to temporal +1 because of function borrow (declare-fun var1772_deref_S1770_self___t4 () (_ BitVec 64)) (assert (= var1772_deref_S1770_self___t4 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2607_infix_expression__t0 ) var1772_deref_S1770_self___t4 var1772_deref_S1770_self___t3) ) ) ; end of borrows after call ; : ./src/endpoint.zz:248 ; ) ; callsite effects ; end of callsite effects ; end branch ; : ./src/endpoint.zz:252 ; time::Time now = time::real() ; : ./src/endpoint.zz:252 ; ) ; call of ::time::real ; : ./src/endpoint.zz:252 ; time::real ; borrows after call ; end of borrows after call ; : ./src/endpoint.zz:252 ; ) ; callsite effects ; end of callsite effects ; : ./src/endpoint.zz:252 ; time::Time now = time::real() (declare-fun var2617_return_value_of___time__real__t0 () (_ BitVec 64)) (declare-fun var2618_safe_return_value_of___time__real_____safe_now___t0 () Bool) (assert (= var2618_safe_return_value_of___time__real_____safe_now___t0 (theory1_safe var2617_return_value_of___time__real__t0) ) ) (declare-fun var2616_now__t1 () (_ BitVec 64)) (assert (= var2618_safe_return_value_of___time__real_____safe_now___t0 (theory1_safe var2616_now__t1) ) ) (declare-fun var2619_nullterm_return_value_of___time__real_____nullterm_now___t0 () Bool) (assert (= var2619_nullterm_return_value_of___time__real_____nullterm_now___t0 (theory2_nullterm var2617_return_value_of___time__real__t0) ) ) (assert (= var2619_nullterm_return_value_of___time__real_____nullterm_now___t0 (theory2_nullterm var2616_now__t1) ) ) (declare-fun var2616_now__t0 () (_ BitVec 64)) (assert (= var2616_now__t1 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2617_return_value_of___time__real__t0 var2616_now__t0) ) ) ; : ./src/endpoint.zz:253 ; -> ; : ./src/endpoint.zz:253 ; -> ; : ./src/endpoint.zz:253 ; self ; : ./src/endpoint.zz:253 ; -> ; begin safe ptr check (declare-fun var2621_safe_deref_S1770_self__store___t0 () Bool) (assert (= var2621_safe_deref_S1770_self__store___t0 (theory1_safe var1788_deref_S1770_self__store__t0) ) ) (push 1) (assert (and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 (or (not var2621_safe_deref_S1770_self__store___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ; : ./src/endpoint.zz:253 ; ) ; call ; : ./src/endpoint.zz:253 ; . ; : ./src/endpoint.zz:253 ; now ; : ./src/endpoint.zz:253 ; . ; : ./src/endpoint.zz:253 ; ) ; call of ::time::to_seconds ; : ./src/endpoint.zz:253 ; . ; : ./src/endpoint.zz:253 ; now ; : ./src/endpoint.zz:253 ; . (declare-fun var2624_addressof_now___t0 () (_ BitVec 64)) (declare-fun var2625_len_addressof_now____t0 () (_ BitVec 64)) (assert (= var2625_len_addressof_now____t0 (theory0_len var2624_addressof_now___t0) ) ) (assert (= var2625_len_addressof_now____t0 (_ bv1 64)) ) (assert (= var2624_addressof_now___t0 (_ bv2616 64)) ) (declare-fun var2626_true__t0 () Bool) (assert (= var2626_true__t0 (theory1_safe var2624_addressof_now___t0) ) ) (assert var2626_true__t0 ) ; : ./src/endpoint.zz:253 ; now ; : ./src/endpoint.zz:253 ; . (declare-fun var2627_addressof_now___t0 () (_ BitVec 64)) (declare-fun var2628_len_addressof_now____t0 () (_ BitVec 64)) (assert (= var2628_len_addressof_now____t0 (theory0_len var2627_addressof_now___t0) ) ) (assert (= var2628_len_addressof_now____t0 (_ bv1 64)) ) (assert (= var2627_addressof_now___t0 (_ bv2616 64)) ) (declare-fun var2629_true__t0 () Bool) (assert (= var2629_true__t0 (theory1_safe var2627_addressof_now___t0) ) ) (assert var2629_true__t0 ) ; : ./src/endpoint.zz:253 ; now ; : ./src/endpoint.zz:253 ; . (declare-fun var2630_addressof_now___t0 () (_ BitVec 64)) (declare-fun var2631_len_addressof_now____t0 () (_ BitVec 64)) (assert (= var2631_len_addressof_now____t0 (theory0_len var2630_addressof_now___t0) ) ) (assert (= var2631_len_addressof_now____t0 (_ bv1 64)) ) (assert (= var2630_addressof_now___t0 (_ bv2616 64)) ) (declare-fun var2632_true__t0 () Bool) (assert (= var2632_true__t0 (theory1_safe var2630_addressof_now___t0) ) ) (assert var2632_true__t0 ) ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/time/./src/lib.zz:32 ; * ; call of safe (declare-fun var2633_interpretation_of_theory_safe_over_addressof_now___t0 () Bool) (assert (= var2633_interpretation_of_theory_safe_over_addressof_now___t0 (theory1_safe var2630_addressof_now___t0) ) ) (push 1) (assert (and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 (or (not var2633_interpretation_of_theory_safe_over_addressof_now___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var2633_interpretation_of_theory_safe_over_addressof_now___t0 () Bool) ; borrows after call ; end of borrows after call ; : ./src/endpoint.zz:253 ; ) ; callsite effects ; end of callsite effects ; : ./src/endpoint.zz:253 ; self->store->time = now.to_seconds() (declare-fun var2634_return_value_of___time__to_seconds__t0 () (_ BitVec 64)) (declare-fun var2635_safe_return_value_of___time__to_seconds_____safe_deref_S1788_deref_S1770_self__store__time___t0 () Bool) (assert (= var2635_safe_return_value_of___time__to_seconds_____safe_deref_S1788_deref_S1770_self__store__time___t0 (theory1_safe var2634_return_value_of___time__to_seconds__t0) ) ) (declare-fun var2622_deref_S1788_deref_S1770_self__store__time__t1 () (_ BitVec 64)) (assert (= var2635_safe_return_value_of___time__to_seconds_____safe_deref_S1788_deref_S1770_self__store__time___t0 (theory1_safe var2622_deref_S1788_deref_S1770_self__store__time__t1) ) ) (declare-fun var2636_nullterm_return_value_of___time__to_seconds_____nullterm_deref_S1788_deref_S1770_self__store__time___t0 () Bool) (assert (= var2636_nullterm_return_value_of___time__to_seconds_____nullterm_deref_S1788_deref_S1770_self__store__time___t0 (theory2_nullterm var2634_return_value_of___time__to_seconds__t0) ) ) (assert (= var2636_nullterm_return_value_of___time__to_seconds_____nullterm_deref_S1788_deref_S1770_self__store__time___t0 (theory2_nullterm var2622_deref_S1788_deref_S1770_self__store__time__t1) ) ) (declare-fun var2622_deref_S1788_deref_S1770_self__store__time__t0 () (_ BitVec 64)) (assert (= var2622_deref_S1788_deref_S1770_self__store__time__t1 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2634_return_value_of___time__to_seconds__t0 var2622_deref_S1788_deref_S1770_self__store__time__t0) ) ) ; : ./src/endpoint.zz:256 ; address::Address mut ip4addr = {0} ; : ./src/endpoint.zz:256 ; {0} ; : ./src/endpoint.zz:256 ; 0 ; literal expr (declare-fun var2638_literal_0__t0 () (_ BitVec 64)) (assert (= var2638_literal_0__t0 (_ bv0 64)) ) ; : ./src/endpoint.zz:256 ; {0} (declare-fun var2639_literal_array_2639__t0 () (_ BitVec 64)) (declare-fun var2640_true__t0 () Bool) (assert (= var2640_true__t0 (theory1_safe var2639_literal_array_2639__t0) ) ) (assert var2640_true__t0 ) ; : ./src/endpoint.zz:256 ; address::Address mut ip4addr = {0} (declare-fun var2641_safe_literal_array_2639_____safe_ip4addr___t0 () Bool) (assert (= var2641_safe_literal_array_2639_____safe_ip4addr___t0 (theory1_safe var2639_literal_array_2639__t0) ) ) (declare-fun var2637_ip4addr__t1 () (_ BitVec 64)) (assert (= var2641_safe_literal_array_2639_____safe_ip4addr___t0 (theory1_safe var2637_ip4addr__t1) ) ) (declare-fun var2642_nullterm_literal_array_2639_____nullterm_ip4addr___t0 () Bool) (assert (= var2642_nullterm_literal_array_2639_____nullterm_ip4addr___t0 (theory2_nullterm var2639_literal_array_2639__t0) ) ) (assert (= var2642_nullterm_literal_array_2639_____nullterm_ip4addr___t0 (theory2_nullterm var2637_ip4addr__t1) ) ) (declare-fun var2643_len_ip4addr___t0 () (_ BitVec 64)) (assert (= var2643_len_ip4addr___t0 (theory0_len var2637_ip4addr__t1) ) ) (assert (= var2643_len_ip4addr___t0 (_ bv1 64)) ) ; : ./src/endpoint.zz:257 ; address::Address mut ip6addr = {0} ; : ./src/endpoint.zz:257 ; {0} ; : ./src/endpoint.zz:257 ; 0 ; literal expr (declare-fun var2645_literal_0__t0 () (_ BitVec 64)) (assert (= var2645_literal_0__t0 (_ bv0 64)) ) ; : ./src/endpoint.zz:257 ; {0} (declare-fun var2646_literal_array_2646__t0 () (_ BitVec 64)) (declare-fun var2647_true__t0 () Bool) (assert (= var2647_true__t0 (theory1_safe var2646_literal_array_2646__t0) ) ) (assert var2647_true__t0 ) ; : ./src/endpoint.zz:257 ; address::Address mut ip6addr = {0} (declare-fun var2648_safe_literal_array_2646_____safe_ip6addr___t0 () Bool) (assert (= var2648_safe_literal_array_2646_____safe_ip6addr___t0 (theory1_safe var2646_literal_array_2646__t0) ) ) (declare-fun var2644_ip6addr__t1 () (_ BitVec 64)) (assert (= var2648_safe_literal_array_2646_____safe_ip6addr___t0 (theory1_safe var2644_ip6addr__t1) ) ) (declare-fun var2649_nullterm_literal_array_2646_____nullterm_ip6addr___t0 () Bool) (assert (= var2649_nullterm_literal_array_2646_____nullterm_ip6addr___t0 (theory2_nullterm var2646_literal_array_2646__t0) ) ) (assert (= var2649_nullterm_literal_array_2646_____nullterm_ip6addr___t0 (theory2_nullterm var2644_ip6addr__t1) ) ) (declare-fun var2650_len_ip6addr___t0 () (_ BitVec 64)) (assert (= var2650_len_ip6addr___t0 (theory0_len var2644_ip6addr__t1) ) ) (assert (= var2650_len_ip6addr___t0 (_ bv1 64)) ) ; : ./src/endpoint.zz:258 ; identity::Address mut xaddr = {0} ; : ./src/endpoint.zz:258 ; {0} ; : ./src/endpoint.zz:258 ; 0 ; literal expr (declare-fun var2652_literal_0__t0 () (_ BitVec 64)) (assert (= var2652_literal_0__t0 (_ bv0 64)) ) ; : ./src/endpoint.zz:258 ; {0} (declare-fun var2653_literal_array_2653__t0 () (_ BitVec 64)) (declare-fun var2654_true__t0 () Bool) (assert (= var2654_true__t0 (theory1_safe var2653_literal_array_2653__t0) ) ) (assert var2654_true__t0 ) ; : ./src/endpoint.zz:258 ; identity::Address mut xaddr = {0} (declare-fun var2655_safe_literal_array_2653_____safe_xaddr___t0 () Bool) (assert (= var2655_safe_literal_array_2653_____safe_xaddr___t0 (theory1_safe var2653_literal_array_2653__t0) ) ) (declare-fun var2651_xaddr__t1 () (_ BitVec 64)) (assert (= var2655_safe_literal_array_2653_____safe_xaddr___t0 (theory1_safe var2651_xaddr__t1) ) ) (declare-fun var2656_nullterm_literal_array_2653_____nullterm_xaddr___t0 () Bool) (assert (= var2656_nullterm_literal_array_2653_____nullterm_xaddr___t0 (theory2_nullterm var2653_literal_array_2653__t0) ) ) (assert (= var2656_nullterm_literal_array_2653_____nullterm_xaddr___t0 (theory2_nullterm var2651_xaddr__t1) ) ) (declare-fun var2657_len_xaddr___t0 () (_ BitVec 64)) (assert (= var2657_len_xaddr___t0 (theory0_len var2651_xaddr__t1) ) ) (assert (= var2657_len_xaddr___t0 (_ bv1 64)) ) ; : ./src/endpoint.zz:260 ; !bootstrap::from_store(&self->statem.connecting.current_broker, &ip4addr, &ip6addr, &xaddr) ; : ./src/endpoint.zz:260 ; &self->statem.connecting.current_broker, &ip4addr, &ip6addr, &xaddr) ; call of ::carrier::bootstrap::from_store ; : ./src/endpoint.zz:260 ; bootstrap::from_store ; : ./src/endpoint.zz:260 ; &self->statem.connecting.current_broker ; : ./src/endpoint.zz:260 ; . ; : ./src/endpoint.zz:260 ; . ; : ./src/endpoint.zz:260 ; -> ; : ./src/endpoint.zz:260 ; self ; : ./src/endpoint.zz:260 ; &self->statem.connecting.current_broker (declare-fun var2658_addressof_deref_S1770_self__statem_connecting_current_broker___t0 () (_ BitVec 64)) (declare-fun var2659_len_addressof_deref_S1770_self__statem_connecting_current_broker____t0 () (_ BitVec 64)) (assert (= var2659_len_addressof_deref_S1770_self__statem_connecting_current_broker____t0 (theory0_len var2658_addressof_deref_S1770_self__statem_connecting_current_broker___t0) ) ) (assert (= var2659_len_addressof_deref_S1770_self__statem_connecting_current_broker____t0 (_ bv1 64)) ) (assert (= var2658_addressof_deref_S1770_self__statem_connecting_current_broker___t0 (_ bv2277 64)) ) (declare-fun var2660_true__t0 () Bool) (assert (= var2660_true__t0 (theory1_safe var2658_addressof_deref_S1770_self__statem_connecting_current_broker___t0) ) ) (assert var2660_true__t0 ) ; : ./src/endpoint.zz:260 ; . ; : ./src/endpoint.zz:260 ; . ; : ./src/endpoint.zz:260 ; -> ; : ./src/endpoint.zz:260 ; self ; : ./src/endpoint.zz:260 ; &self->statem.connecting.current_broker (declare-fun var2661_addressof_deref_S1770_self__statem_connecting_current_broker___t0 () (_ BitVec 64)) (declare-fun var2662_len_addressof_deref_S1770_self__statem_connecting_current_broker____t0 () (_ BitVec 64)) (assert (= var2662_len_addressof_deref_S1770_self__statem_connecting_current_broker____t0 (theory0_len var2661_addressof_deref_S1770_self__statem_connecting_current_broker___t0) ) ) (assert (= var2662_len_addressof_deref_S1770_self__statem_connecting_current_broker____t0 (_ bv1 64)) ) (assert (= var2661_addressof_deref_S1770_self__statem_connecting_current_broker___t0 (_ bv2277 64)) ) (declare-fun var2663_true__t0 () Bool) (assert (= var2663_true__t0 (theory1_safe var2661_addressof_deref_S1770_self__statem_connecting_current_broker___t0) ) ) (assert var2663_true__t0 ) ; : ./src/endpoint.zz:260 ; &ip4addr ; : ./src/endpoint.zz:260 ; ip4addr ; : ./src/endpoint.zz:260 ; &ip4addr (declare-fun var2664_addressof_ip4addr___t0 () (_ BitVec 64)) (declare-fun var2665_len_addressof_ip4addr____t0 () (_ BitVec 64)) (assert (= var2665_len_addressof_ip4addr____t0 (theory0_len var2664_addressof_ip4addr___t0) ) ) (assert (= var2665_len_addressof_ip4addr____t0 (_ bv1 64)) ) (assert (= var2664_addressof_ip4addr___t0 (_ bv2637 64)) ) (declare-fun var2666_true__t0 () Bool) (assert (= var2666_true__t0 (theory1_safe var2664_addressof_ip4addr___t0) ) ) (assert var2666_true__t0 ) ; : ./src/endpoint.zz:260 ; ip4addr ; : ./src/endpoint.zz:260 ; &ip4addr (declare-fun var2667_addressof_ip4addr___t0 () (_ BitVec 64)) (declare-fun var2668_len_addressof_ip4addr____t0 () (_ BitVec 64)) (assert (= var2668_len_addressof_ip4addr____t0 (theory0_len var2667_addressof_ip4addr___t0) ) ) (assert (= var2668_len_addressof_ip4addr____t0 (_ bv1 64)) ) (assert (= var2667_addressof_ip4addr___t0 (_ bv2637 64)) ) (declare-fun var2669_true__t0 () Bool) (assert (= var2669_true__t0 (theory1_safe var2667_addressof_ip4addr___t0) ) ) (assert var2669_true__t0 ) ; : ./src/endpoint.zz:260 ; &ip6addr ; : ./src/endpoint.zz:260 ; ip6addr ; : ./src/endpoint.zz:260 ; &ip6addr (declare-fun var2670_addressof_ip6addr___t0 () (_ BitVec 64)) (declare-fun var2671_len_addressof_ip6addr____t0 () (_ BitVec 64)) (assert (= var2671_len_addressof_ip6addr____t0 (theory0_len var2670_addressof_ip6addr___t0) ) ) (assert (= var2671_len_addressof_ip6addr____t0 (_ bv1 64)) ) (assert (= var2670_addressof_ip6addr___t0 (_ bv2644 64)) ) (declare-fun var2672_true__t0 () Bool) (assert (= var2672_true__t0 (theory1_safe var2670_addressof_ip6addr___t0) ) ) (assert var2672_true__t0 ) ; : ./src/endpoint.zz:260 ; ip6addr ; : ./src/endpoint.zz:260 ; &ip6addr (declare-fun var2673_addressof_ip6addr___t0 () (_ BitVec 64)) (declare-fun var2674_len_addressof_ip6addr____t0 () (_ BitVec 64)) (assert (= var2674_len_addressof_ip6addr____t0 (theory0_len var2673_addressof_ip6addr___t0) ) ) (assert (= var2674_len_addressof_ip6addr____t0 (_ bv1 64)) ) (assert (= var2673_addressof_ip6addr___t0 (_ bv2644 64)) ) (declare-fun var2675_true__t0 () Bool) (assert (= var2675_true__t0 (theory1_safe var2673_addressof_ip6addr___t0) ) ) (assert var2675_true__t0 ) ; : ./src/endpoint.zz:260 ; &xaddr ; : ./src/endpoint.zz:260 ; xaddr ; : ./src/endpoint.zz:260 ; &xaddr (declare-fun var2676_addressof_xaddr___t0 () (_ BitVec 64)) (declare-fun var2677_len_addressof_xaddr____t0 () (_ BitVec 64)) (assert (= var2677_len_addressof_xaddr____t0 (theory0_len var2676_addressof_xaddr___t0) ) ) (assert (= var2677_len_addressof_xaddr____t0 (_ bv1 64)) ) (assert (= var2676_addressof_xaddr___t0 (_ bv2651 64)) ) (declare-fun var2678_true__t0 () Bool) (assert (= var2678_true__t0 (theory1_safe var2676_addressof_xaddr___t0) ) ) (assert var2678_true__t0 ) ; : ./src/endpoint.zz:260 ; xaddr ; : ./src/endpoint.zz:260 ; &xaddr (declare-fun var2679_addressof_xaddr___t0 () (_ BitVec 64)) (declare-fun var2680_len_addressof_xaddr____t0 () (_ BitVec 64)) (assert (= var2680_len_addressof_xaddr____t0 (theory0_len var2679_addressof_xaddr___t0) ) ) (assert (= var2680_len_addressof_xaddr____t0 (_ bv1 64)) ) (assert (= var2679_addressof_xaddr___t0 (_ bv2651 64)) ) (declare-fun var2681_true__t0 () Bool) (assert (= var2681_true__t0 (theory1_safe var2679_addressof_xaddr___t0) ) ) (assert var2681_true__t0 ) ; : ./src/endpoint.zz:260 ; &self->statem.connecting.current_broker ; : ./src/endpoint.zz:260 ; . ; : ./src/endpoint.zz:260 ; . ; : ./src/endpoint.zz:260 ; -> ; : ./src/endpoint.zz:260 ; self ; : ./src/endpoint.zz:260 ; &self->statem.connecting.current_broker (declare-fun var2682_addressof_deref_S1770_self__statem_connecting_current_broker___t0 () (_ BitVec 64)) (declare-fun var2683_len_addressof_deref_S1770_self__statem_connecting_current_broker____t0 () (_ BitVec 64)) (assert (= var2683_len_addressof_deref_S1770_self__statem_connecting_current_broker____t0 (theory0_len var2682_addressof_deref_S1770_self__statem_connecting_current_broker___t0) ) ) (assert (= var2683_len_addressof_deref_S1770_self__statem_connecting_current_broker____t0 (_ bv1 64)) ) (assert (= var2682_addressof_deref_S1770_self__statem_connecting_current_broker___t0 (_ bv2277 64)) ) (declare-fun var2684_true__t0 () Bool) (assert (= var2684_true__t0 (theory1_safe var2682_addressof_deref_S1770_self__statem_connecting_current_broker___t0) ) ) (assert var2684_true__t0 ) ; : ./src/endpoint.zz:260 ; &ip4addr ; : ./src/endpoint.zz:260 ; ip4addr ; : ./src/endpoint.zz:260 ; &ip4addr (declare-fun var2685_addressof_ip4addr___t0 () (_ BitVec 64)) (declare-fun var2686_len_addressof_ip4addr____t0 () (_ BitVec 64)) (assert (= var2686_len_addressof_ip4addr____t0 (theory0_len var2685_addressof_ip4addr___t0) ) ) (assert (= var2686_len_addressof_ip4addr____t0 (_ bv1 64)) ) (assert (= var2685_addressof_ip4addr___t0 (_ bv2637 64)) ) (declare-fun var2687_true__t0 () Bool) (assert (= var2687_true__t0 (theory1_safe var2685_addressof_ip4addr___t0) ) ) (assert var2687_true__t0 ) ; : ./src/endpoint.zz:260 ; &ip6addr ; : ./src/endpoint.zz:260 ; ip6addr ; : ./src/endpoint.zz:260 ; &ip6addr (declare-fun var2688_addressof_ip6addr___t0 () (_ BitVec 64)) (declare-fun var2689_len_addressof_ip6addr____t0 () (_ BitVec 64)) (assert (= var2689_len_addressof_ip6addr____t0 (theory0_len var2688_addressof_ip6addr___t0) ) ) (assert (= var2689_len_addressof_ip6addr____t0 (_ bv1 64)) ) (assert (= var2688_addressof_ip6addr___t0 (_ bv2644 64)) ) (declare-fun var2690_true__t0 () Bool) (assert (= var2690_true__t0 (theory1_safe var2688_addressof_ip6addr___t0) ) ) (assert var2690_true__t0 ) ; : ./src/endpoint.zz:260 ; &xaddr ; : ./src/endpoint.zz:260 ; xaddr ; : ./src/endpoint.zz:260 ; &xaddr (declare-fun var2691_addressof_xaddr___t0 () (_ BitVec 64)) (declare-fun var2692_len_addressof_xaddr____t0 () (_ BitVec 64)) (assert (= var2692_len_addressof_xaddr____t0 (theory0_len var2691_addressof_xaddr___t0) ) ) (assert (= var2692_len_addressof_xaddr____t0 (_ bv1 64)) ) (assert (= var2691_addressof_xaddr___t0 (_ bv2651 64)) ) (declare-fun var2693_true__t0 () Bool) (assert (= var2693_true__t0 (theory1_safe var2691_addressof_xaddr___t0) ) ) (assert var2693_true__t0 ) ;callsite_assert (push 1) ; : ./src/bootstrap.zz:35 ; * ; call of safe (declare-fun var2694_interpretation_of_theory_safe_over_addressof_xaddr___t0 () Bool) (assert (= var2694_interpretation_of_theory_safe_over_addressof_xaddr___t0 (theory1_safe var2691_addressof_xaddr___t0) ) ) ; : ./src/bootstrap.zz:35 ; * ; call of safe (declare-fun var2695_interpretation_of_theory_safe_over_addressof_ip6addr___t0 () Bool) (assert (= var2695_interpretation_of_theory_safe_over_addressof_ip6addr___t0 (theory1_safe var2688_addressof_ip6addr___t0) ) ) ; : ./src/bootstrap.zz:35 ; * ; call of safe (declare-fun var2696_interpretation_of_theory_safe_over_addressof_ip4addr___t0 () Bool) (assert (= var2696_interpretation_of_theory_safe_over_addressof_ip4addr___t0 (theory1_safe var2685_addressof_ip4addr___t0) ) ) ; : ./src/bootstrap.zz:35 ; * ; call of safe (declare-fun var2697_interpretation_of_theory_safe_over_addressof_deref_S1770_self__statem_connecting_current_broker___t0 () Bool) (assert (= var2697_interpretation_of_theory_safe_over_addressof_deref_S1770_self__statem_connecting_current_broker___t0 (theory1_safe var2682_addressof_deref_S1770_self__statem_connecting_current_broker___t0) ) ) (push 1) (assert (and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 (or (not var2694_interpretation_of_theory_safe_over_addressof_xaddr___t0 ) (not var2695_interpretation_of_theory_safe_over_addressof_ip6addr___t0 ) (not var2696_interpretation_of_theory_safe_over_addressof_ip4addr___t0 ) (not var2697_interpretation_of_theory_safe_over_addressof_deref_S1770_self__statem_connecting_current_broker___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var2694_interpretation_of_theory_safe_over_addressof_xaddr___t0 () Bool) (declare-fun var2695_interpretation_of_theory_safe_over_addressof_ip6addr___t0 () Bool) (declare-fun var2696_interpretation_of_theory_safe_over_addressof_ip4addr___t0 () Bool) (declare-fun var2697_interpretation_of_theory_safe_over_addressof_deref_S1770_self__statem_connecting_current_broker___t0 () Bool) ; borrows after call ; 2637 to temporal +1 because of function borrow (declare-fun var2637_ip4addr__t2 () (_ BitVec 64)) (assert (= var2637_ip4addr__t2 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2637_ip4addr__t2 var2637_ip4addr__t1) ) ) ; 2644 to temporal +1 because of function borrow (declare-fun var2644_ip6addr__t2 () (_ BitVec 64)) (assert (= var2644_ip6addr__t2 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2644_ip6addr__t2 var2644_ip6addr__t1) ) ) ; 2651 to temporal +1 because of function borrow (declare-fun var2651_xaddr__t2 () (_ BitVec 64)) (assert (= var2651_xaddr__t2 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2651_xaddr__t2 var2651_xaddr__t1) ) ) ; end of borrows after call ; : ./src/endpoint.zz:260 ; &self->statem.connecting.current_broker, &ip4addr, &ip6addr, &xaddr) ; callsite effects ; end of callsite effects ; : ./src/endpoint.zz:260 ; !bootstrap::from_store(&self->statem.connecting.current_broker, &ip4addr, &ip6addr, &xaddr) (declare-fun var2699_unary_expression__t0 () Bool) (declare-fun var2698_return_value_of___carrier__bootstrap__from_store__t0 () Bool) (assert (= var2699_unary_expression__t0 (not var2698_return_value_of___carrier__bootstrap__from_store__t0 )) ) (check-sat) (get-value ( var2699_unary_expression__t0 ) ) ; = "false" (push 1) (assert (not (= var2699_unary_expression__t0 false)) ) (check-sat) (pop 1) ; : ./src/endpoint.zz:260 ; if !bootstrap::from_store(&self->statem.connecting.current_broker, &ip4addr, &ip6addr, &xaddr) { ; err::fail(e, 3, "current broker is empty"); ; return io::Result::Error; ; } ; : ./src/endpoint.zz:261 ; e, 3, "current broker is empty") ; call of ::err::fail ; : ./src/endpoint.zz:261 ; err::fail ; : ./src/endpoint.zz:261 ; e ; : ./src/endpoint.zz:261 ; 3 ; literal expr (declare-fun var2700_literal_3__t0 () (_ BitVec 64)) (assert (= var2700_literal_3__t0 (_ bv3 64)) ) ; literal expr (declare-fun var2701_literal_3__t0 () (_ BitVec 64)) (assert (= var2701_literal_3__t0 (_ bv3 64)) ) ; : ./src/endpoint.zz:261 ; "current broker is empty" (declare-fun var2702_literal_string__current_broker_is_empty___t0 () (_ BitVec 64)) (declare-fun var2703_true__t0 () Bool) (assert (= var2703_true__t0 (theory1_safe var2702_literal_string__current_broker_is_empty___t0) ) ) (assert var2703_true__t0 ) (declare-fun var2704_true__t0 () Bool) (assert (= var2704_true__t0 (theory2_nullterm var2702_literal_string__current_broker_is_empty___t0) ) ) (assert var2704_true__t0 ) (declare-fun var2705_literal_string__current_broker_is_empty___t0 () (_ BitVec 64)) (declare-fun var2706_true__t0 () Bool) (assert (= var2706_true__t0 (theory1_safe var2705_literal_string__current_broker_is_empty___t0) ) ) (assert var2706_true__t0 ) (declare-fun var2707_true__t0 () Bool) (assert (= var2707_true__t0 (theory2_nullterm var2705_literal_string__current_broker_is_empty___t0) ) ) (assert var2707_true__t0 ) ; : ./src/endpoint.zz:261 ; e (declare-fun var2708_cast_of_e__t0 () (_ BitVec 64)) (assert (! (= var2708_cast_of_e__t0 var1775_e__t0) :named A144)); : ./src/endpoint.zz:149 ; +et ; : ./src/endpoint.zz:261 ; 3 ; literal expr (declare-fun var2709_literal_3__t0 () (_ BitVec 64)) (assert (= var2709_literal_3__t0 (_ bv3 64)) ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:79 ; callsite_source (declare-fun var2710_literal_string____src_endpoint_zz___t0 () (_ BitVec 64)) (declare-fun var2711_true__t0 () Bool) (assert (= var2711_true__t0 (theory1_safe var2710_literal_string____src_endpoint_zz___t0) ) ) (assert var2711_true__t0 ) (declare-fun var2712_true__t0 () Bool) (assert (= var2712_true__t0 (theory2_nullterm var2710_literal_string____src_endpoint_zz___t0) ) ) (assert var2712_true__t0 ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:80 ; callsite_source (declare-fun var2713_literal_string____carrier__endpoint__poll___t0 () (_ BitVec 64)) (declare-fun var2714_true__t0 () Bool) (assert (= var2714_true__t0 (theory1_safe var2713_literal_string____carrier__endpoint__poll___t0) ) ) (assert var2714_true__t0 ) (declare-fun var2715_true__t0 () Bool) (assert (= var2715_true__t0 (theory2_nullterm var2713_literal_string____carrier__endpoint__poll___t0) ) ) (assert var2715_true__t0 ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:81 ; callsite_source ; literal expr (declare-fun var2716_literal_261__t0 () (_ BitVec 64)) (assert (= var2716_literal_261__t0 (_ bv261 64)) ) ; : ./src/endpoint.zz:261 ; "current broker is empty" (declare-fun var2717_literal_string__current_broker_is_empty___t0 () (_ BitVec 64)) (declare-fun var2718_true__t0 () Bool) (assert (= var2718_true__t0 (theory1_safe var2717_literal_string__current_broker_is_empty___t0) ) ) (assert var2718_true__t0 ) (declare-fun var2719_true__t0 () Bool) (assert (= var2719_true__t0 (theory2_nullterm var2717_literal_string__current_broker_is_empty___t0) ) ) (assert var2719_true__t0 ) ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:82 ; * ; call of safe (declare-fun var2720_interpretation_of_theory_safe_over_literal_string__current_broker_is_empty___t0 () Bool) (assert (= var2720_interpretation_of_theory_safe_over_literal_string__current_broker_is_empty___t0 (theory1_safe var2717_literal_string__current_broker_is_empty___t0) ) ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:77 ; * ; call of safe (declare-fun var2721_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (assert (= var2721_interpretation_of_theory_safe_over_cast_of_e__t0 (theory1_safe var2708_cast_of_e__t0) ) ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:85 ; *self) ; call of ::err::checked ; : /home/aep/proj/zz/modules/err/./src/lib.zz:85 ; checked ; : /home/aep/proj/zz/modules/err/./src/lib.zz:85 ; *self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:85 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:85 ; *self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:85 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:85 ; *self (declare-fun var2722_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2722_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t26) :named A145)); : /home/aep/proj/zz/modules/err/./src/lib.zz:85 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:85 ; *self (declare-fun var2723_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2723_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t26) :named A146)); : /home/aep/proj/zz/modules/err/./src/lib.zz:85 ; *self) (declare-fun var2724_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (assert (= var2724_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 (theory86___err__checked var2723_cast_of_deref_S1775_e___t0) ) ) (push 1) (assert (and ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2699_unary_expression__t0 ) (or (not var2720_interpretation_of_theory_safe_over_literal_string__current_broker_is_empty___t0 ) (not var2721_interpretation_of_theory_safe_over_cast_of_e__t0 ) (not var2724_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var2720_interpretation_of_theory_safe_over_literal_string__current_broker_is_empty___t0 () Bool) (declare-fun var2721_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var2724_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) ; borrows after call ; 1777 to temporal +1 because of function borrow (declare-fun var1777_deref_S1775_e___t27 () (_ BitVec 64)) (assert (= var1777_deref_S1775_e___t27 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2699_unary_expression__t0 ) var1777_deref_S1775_e___t27 var1777_deref_S1775_e___t26) ) ) ; end of borrows after call ; : ./src/endpoint.zz:261 ; e, 3, "current broker is empty") ; callsite effects (declare-fun var2725_return_value_of___err__fail__t0 () (_ BitVec 64)) (declare-fun var2727_safe_return_value_of___err__fail_____safe_return___t0 () Bool) (assert (= var2727_safe_return_value_of___err__fail_____safe_return___t0 (theory1_safe var2725_return_value_of___err__fail__t0) ) ) (declare-fun var2726_return__t1 () (_ BitVec 64)) (assert (= var2727_safe_return_value_of___err__fail_____safe_return___t0 (theory1_safe var2726_return__t1) ) ) (declare-fun var2728_nullterm_return_value_of___err__fail_____nullterm_return___t0 () Bool) (assert (= var2728_nullterm_return_value_of___err__fail_____nullterm_return___t0 (theory2_nullterm var2725_return_value_of___err__fail__t0) ) ) (assert (= var2728_nullterm_return_value_of___err__fail_____nullterm_return___t0 (theory2_nullterm var2726_return__t1) ) ) (declare-fun var2726_return__t0 () (_ BitVec 64)) (assert (= var2726_return__t1 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2699_unary_expression__t0 ) var2725_return_value_of___err__fail__t0 var2726_return__t0) ) ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:86 ; *self) ; call of ::err::checked ; : /home/aep/proj/zz/modules/err/./src/lib.zz:86 ; checked ; : /home/aep/proj/zz/modules/err/./src/lib.zz:86 ; *self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:86 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:86 ; *self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:86 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:86 ; *self (declare-fun var2729_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2729_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t27) :named A147)); : /home/aep/proj/zz/modules/err/./src/lib.zz:86 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:86 ; *self (declare-fun var2730_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2730_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t27) :named A148)); : /home/aep/proj/zz/modules/err/./src/lib.zz:86 ; *self) (declare-fun var2731_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (assert (= var2731_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 (theory86___err__checked var2730_cast_of_deref_S1775_e___t0) ) ) (assert (! var2731_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 :named A149))(check-sat) ; : ./src/endpoint.zz:261 ; e, 3, "current broker is empty") (declare-fun var2732_safe_return_____safe_return_value_of___err__fail___t0 () Bool) (assert (= var2732_safe_return_____safe_return_value_of___err__fail___t0 (theory1_safe var2726_return__t1) ) ) (declare-fun var2725_return_value_of___err__fail__t1 () (_ BitVec 64)) (assert (= var2732_safe_return_____safe_return_value_of___err__fail___t0 (theory1_safe var2725_return_value_of___err__fail__t1) ) ) (declare-fun var2733_nullterm_return_____nullterm_return_value_of___err__fail___t0 () Bool) (assert (= var2733_nullterm_return_____nullterm_return_value_of___err__fail___t0 (theory2_nullterm var2726_return__t1) ) ) (assert (= var2733_nullterm_return_____nullterm_return_value_of___err__fail___t0 (theory2_nullterm var2725_return_value_of___err__fail__t1) ) ) (assert (= var2725_return_value_of___err__fail__t1 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2699_unary_expression__t0 ) var2726_return__t1 var2725_return_value_of___err__fail__t0) ) ) ; end of callsite effects ; : ./src/endpoint.zz:262 ; io::Result::Error (declare-fun var2734_safe___io__Result__Error_____safe_return___t0 () Bool) (assert (= var2734_safe___io__Result__Error_____safe_return___t0 (theory1_safe var250___io__Result__Error__t0) ) ) (declare-fun var1787_return__t14 () (_ BitVec 64)) (assert (= var2734_safe___io__Result__Error_____safe_return___t0 (theory1_safe var1787_return__t14) ) ) (declare-fun var2735_nullterm___io__Result__Error_____nullterm_return___t0 () Bool) (assert (= var2735_nullterm___io__Result__Error_____nullterm_return___t0 (theory2_nullterm var250___io__Result__Error__t0) ) ) (assert (= var2735_nullterm___io__Result__Error_____nullterm_return___t0 (theory2_nullterm var1787_return__t14) ) ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:24 ; Result (declare-fun var2736_implicit_coercion_of___io__Result__Error__t0 () (_ BitVec 64)) (assert (! (= var2736_implicit_coercion_of___io__Result__Error__t0 var250___io__Result__Error__t0) :named A150))(assert (= var1787_return__t14 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2699_unary_expression__t0 ) var2736_implicit_coercion_of___io__Result__Error__t0 var1787_return__t13) ) ) ; end branch ; branch returned. the rest of the function only happens if the condition leading to return never happened ; (not ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2699_unary_expression__t0 )) (assert (not ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2699_unary_expression__t0 )) ) ; : ./src/endpoint.zz:265 ; e, (identity::Secret*)&(self->store->secret), &xaddr, self->store->time) ; call ; : ./src/endpoint.zz:265 ; . ; : ./src/endpoint.zz:265 ; . ; : ./src/endpoint.zz:265 ; . ; : ./src/endpoint.zz:265 ; -> ; : ./src/endpoint.zz:265 ; self ; : ./src/endpoint.zz:265 ; . ; : ./src/endpoint.zz:265 ; e, (identity::Secret*)&(self->store->secret), &xaddr, self->store->time) ; call of ::carrier::initiator::initiate ; : ./src/endpoint.zz:265 ; . ; : ./src/endpoint.zz:265 ; . ; : ./src/endpoint.zz:265 ; . ; : ./src/endpoint.zz:265 ; -> ; : ./src/endpoint.zz:265 ; self ; : ./src/endpoint.zz:265 ; . (declare-fun var2738_addressof_deref_S1770_self__statem_connecting_initiator___t0 () (_ BitVec 64)) (declare-fun var2739_len_addressof_deref_S1770_self__statem_connecting_initiator____t0 () (_ BitVec 64)) (assert (= var2739_len_addressof_deref_S1770_self__statem_connecting_initiator____t0 (theory0_len var2738_addressof_deref_S1770_self__statem_connecting_initiator___t0) ) ) (assert (= var2739_len_addressof_deref_S1770_self__statem_connecting_initiator____t0 (_ bv1 64)) ) (assert (= var2738_addressof_deref_S1770_self__statem_connecting_initiator___t0 (_ bv2101 64)) ) (declare-fun var2740_true__t0 () Bool) (assert (= var2740_true__t0 (theory1_safe var2738_addressof_deref_S1770_self__statem_connecting_initiator___t0) ) ) (assert var2740_true__t0 ) ; : ./src/endpoint.zz:265 ; . ; : ./src/endpoint.zz:265 ; . ; : ./src/endpoint.zz:265 ; -> ; : ./src/endpoint.zz:265 ; self ; : ./src/endpoint.zz:265 ; . (declare-fun var2741_addressof_deref_S1770_self__statem_connecting_initiator___t0 () (_ BitVec 64)) (declare-fun var2742_len_addressof_deref_S1770_self__statem_connecting_initiator____t0 () (_ BitVec 64)) (assert (= var2742_len_addressof_deref_S1770_self__statem_connecting_initiator____t0 (theory0_len var2741_addressof_deref_S1770_self__statem_connecting_initiator___t0) ) ) (assert (= var2742_len_addressof_deref_S1770_self__statem_connecting_initiator____t0 (_ bv1 64)) ) (assert (= var2741_addressof_deref_S1770_self__statem_connecting_initiator___t0 (_ bv2101 64)) ) (declare-fun var2743_true__t0 () Bool) (assert (= var2743_true__t0 (theory1_safe var2741_addressof_deref_S1770_self__statem_connecting_initiator___t0) ) ) (assert var2743_true__t0 ) ; : ./src/endpoint.zz:265 ; e ; : ./src/endpoint.zz:265 ; (identity::Secret*)&(self->store->secret) ; : ./src/endpoint.zz:265 ; &(self->store->secret) ; : ./src/endpoint.zz:265 ; -> ; : ./src/endpoint.zz:265 ; -> ; : ./src/endpoint.zz:265 ; self ; : ./src/bootstrap.zz:29 ; 32 ; literal expr (declare-fun var2744_literal_32__t0 () (_ BitVec 64)) (assert (= var2744_literal_32__t0 (_ bv32 64)) ) (check-sat) (get-value ( var2744_literal_32__t0 ) ) ; = "#b0000000000000000000000000000000000000000000000000000000000100000" (push 1) (assert (not (= var2744_literal_32__t0 #b0000000000000000000000000000000000000000000000000000000000100000)) ) (check-sat) (pop 1) (push 1) (check-sat) (pop 1) ; : ./src/endpoint.zz:265 ; -> (declare-fun var2745_deref_S1788_deref_S1770_self__store__secret__t0 () (_ BitVec 64)) (declare-fun var2746_len_deref_S1788_deref_S1770_self__store__secret___t0 () (_ BitVec 64)) (assert (= var2746_len_deref_S1788_deref_S1770_self__store__secret___t0 (theory0_len var2745_deref_S1788_deref_S1770_self__store__secret__t0) ) ) (assert (= var2746_len_deref_S1788_deref_S1770_self__store__secret___t0 (_ bv32 64)) ) (declare-fun var2747_true__t0 () Bool) (assert (= var2747_true__t0 (theory1_safe var2745_deref_S1788_deref_S1770_self__store__secret__t0) ) ) (assert var2747_true__t0 ) ; : ./src/endpoint.zz:265 ; &(self->store->secret) (declare-fun var2748_addressof_deref_S1788_deref_S1770_self__store__secret___t0 () (_ BitVec 64)) (declare-fun var2749_len_addressof_deref_S1788_deref_S1770_self__store__secret____t0 () (_ BitVec 64)) (assert (= var2749_len_addressof_deref_S1788_deref_S1770_self__store__secret____t0 (theory0_len var2748_addressof_deref_S1788_deref_S1770_self__store__secret___t0) ) ) (assert (= var2749_len_addressof_deref_S1788_deref_S1770_self__store__secret____t0 (_ bv1 64)) ) (assert (= var2748_addressof_deref_S1788_deref_S1770_self__store__secret___t0 (_ bv2745 64)) ) (declare-fun var2750_true__t0 () Bool) (assert (= var2750_true__t0 (theory1_safe var2748_addressof_deref_S1788_deref_S1770_self__store__secret___t0) ) ) (assert var2750_true__t0 ) ; : ./src/endpoint.zz:265 ; (identity::Secret*)&(self->store->secret) (declare-fun var2751_cast_of_addressof_deref_S1788_deref_S1770_self__store__secret___t0 () (_ BitVec 64)) (assert (! (= var2751_cast_of_addressof_deref_S1788_deref_S1770_self__store__secret___t0 var2748_addressof_deref_S1788_deref_S1770_self__store__secret___t0) :named A151)); : ./src/endpoint.zz:265 ; &(self->store->secret) ; : ./src/endpoint.zz:265 ; -> ; : ./src/endpoint.zz:265 ; -> ; : ./src/endpoint.zz:265 ; self ; : ./src/endpoint.zz:265 ; &(self->store->secret) (declare-fun var2752_addressof_deref_S1788_deref_S1770_self__store__secret___t0 () (_ BitVec 64)) (declare-fun var2753_len_addressof_deref_S1788_deref_S1770_self__store__secret____t0 () (_ BitVec 64)) (assert (= var2753_len_addressof_deref_S1788_deref_S1770_self__store__secret____t0 (theory0_len var2752_addressof_deref_S1788_deref_S1770_self__store__secret___t0) ) ) (assert (= var2753_len_addressof_deref_S1788_deref_S1770_self__store__secret____t0 (_ bv1 64)) ) (assert (= var2752_addressof_deref_S1788_deref_S1770_self__store__secret___t0 (_ bv2745 64)) ) (declare-fun var2754_true__t0 () Bool) (assert (= var2754_true__t0 (theory1_safe var2752_addressof_deref_S1788_deref_S1770_self__store__secret___t0) ) ) (assert var2754_true__t0 ) ; : ./src/endpoint.zz:265 ; (identity::Secret*)&(self->store->secret) (declare-fun var2755_cast_of_addressof_deref_S1788_deref_S1770_self__store__secret___t0 () (_ BitVec 64)) (assert (! (= var2755_cast_of_addressof_deref_S1788_deref_S1770_self__store__secret___t0 var2752_addressof_deref_S1788_deref_S1770_self__store__secret___t0) :named A152)); : ./src/endpoint.zz:265 ; &xaddr ; : ./src/endpoint.zz:265 ; xaddr ; : ./src/endpoint.zz:265 ; &xaddr (declare-fun var2756_addressof_xaddr___t0 () (_ BitVec 64)) (declare-fun var2757_len_addressof_xaddr____t0 () (_ BitVec 64)) (assert (= var2757_len_addressof_xaddr____t0 (theory0_len var2756_addressof_xaddr___t0) ) ) (assert (= var2757_len_addressof_xaddr____t0 (_ bv1 64)) ) (assert (= var2756_addressof_xaddr___t0 (_ bv2651 64)) ) (declare-fun var2758_true__t0 () Bool) (assert (= var2758_true__t0 (theory1_safe var2756_addressof_xaddr___t0) ) ) (assert var2758_true__t0 ) ; : ./src/endpoint.zz:265 ; xaddr ; : ./src/endpoint.zz:265 ; &xaddr (declare-fun var2759_addressof_xaddr___t0 () (_ BitVec 64)) (declare-fun var2760_len_addressof_xaddr____t0 () (_ BitVec 64)) (assert (= var2760_len_addressof_xaddr____t0 (theory0_len var2759_addressof_xaddr___t0) ) ) (assert (= var2760_len_addressof_xaddr____t0 (_ bv1 64)) ) (assert (= var2759_addressof_xaddr___t0 (_ bv2651 64)) ) (declare-fun var2761_true__t0 () Bool) (assert (= var2761_true__t0 (theory1_safe var2759_addressof_xaddr___t0) ) ) (assert var2761_true__t0 ) ; : ./src/endpoint.zz:265 ; -> ; : ./src/endpoint.zz:265 ; -> ; : ./src/endpoint.zz:265 ; self ; : ./src/endpoint.zz:265 ; -> ; : ./src/endpoint.zz:265 ; -> ; : ./src/endpoint.zz:265 ; self ; : ./src/endpoint.zz:265 ; . ; : ./src/endpoint.zz:265 ; . ; : ./src/endpoint.zz:265 ; . ; : ./src/endpoint.zz:265 ; -> ; : ./src/endpoint.zz:265 ; self ; : ./src/endpoint.zz:265 ; . (declare-fun var2762_addressof_deref_S1770_self__statem_connecting_initiator___t0 () (_ BitVec 64)) (declare-fun var2763_len_addressof_deref_S1770_self__statem_connecting_initiator____t0 () (_ BitVec 64)) (assert (= var2763_len_addressof_deref_S1770_self__statem_connecting_initiator____t0 (theory0_len var2762_addressof_deref_S1770_self__statem_connecting_initiator___t0) ) ) (assert (= var2763_len_addressof_deref_S1770_self__statem_connecting_initiator____t0 (_ bv1 64)) ) (assert (= var2762_addressof_deref_S1770_self__statem_connecting_initiator___t0 (_ bv2101 64)) ) (declare-fun var2764_true__t0 () Bool) (assert (= var2764_true__t0 (theory1_safe var2762_addressof_deref_S1770_self__statem_connecting_initiator___t0) ) ) (assert var2764_true__t0 ) ; : ./src/endpoint.zz:265 ; e (declare-fun var2765_cast_of_e__t0 () (_ BitVec 64)) (assert (! (= var2765_cast_of_e__t0 var1775_e__t0) :named A153)); : ./src/endpoint.zz:149 ; +et ; : ./src/endpoint.zz:265 ; (identity::Secret*)&(self->store->secret) ; : ./src/endpoint.zz:265 ; &(self->store->secret) ; : ./src/endpoint.zz:265 ; -> ; : ./src/endpoint.zz:265 ; -> ; : ./src/endpoint.zz:265 ; self ; : ./src/endpoint.zz:265 ; &(self->store->secret) (declare-fun var2766_addressof_deref_S1788_deref_S1770_self__store__secret___t0 () (_ BitVec 64)) (declare-fun var2767_len_addressof_deref_S1788_deref_S1770_self__store__secret____t0 () (_ BitVec 64)) (assert (= var2767_len_addressof_deref_S1788_deref_S1770_self__store__secret____t0 (theory0_len var2766_addressof_deref_S1788_deref_S1770_self__store__secret___t0) ) ) (assert (= var2767_len_addressof_deref_S1788_deref_S1770_self__store__secret____t0 (_ bv1 64)) ) (assert (= var2766_addressof_deref_S1788_deref_S1770_self__store__secret___t0 (_ bv2745 64)) ) (declare-fun var2768_true__t0 () Bool) (assert (= var2768_true__t0 (theory1_safe var2766_addressof_deref_S1788_deref_S1770_self__store__secret___t0) ) ) (assert var2768_true__t0 ) ; : ./src/endpoint.zz:265 ; (identity::Secret*)&(self->store->secret) (declare-fun var2769_cast_of_addressof_deref_S1788_deref_S1770_self__store__secret___t0 () (_ BitVec 64)) (assert (! (= var2769_cast_of_addressof_deref_S1788_deref_S1770_self__store__secret___t0 var2766_addressof_deref_S1788_deref_S1770_self__store__secret___t0) :named A154)); : ./src/endpoint.zz:265 ; &xaddr ; : ./src/endpoint.zz:265 ; xaddr ; : ./src/endpoint.zz:265 ; &xaddr (declare-fun var2770_addressof_xaddr___t0 () (_ BitVec 64)) (declare-fun var2771_len_addressof_xaddr____t0 () (_ BitVec 64)) (assert (= var2771_len_addressof_xaddr____t0 (theory0_len var2770_addressof_xaddr___t0) ) ) (assert (= var2771_len_addressof_xaddr____t0 (_ bv1 64)) ) (assert (= var2770_addressof_xaddr___t0 (_ bv2651 64)) ) (declare-fun var2772_true__t0 () Bool) (assert (= var2772_true__t0 (theory1_safe var2770_addressof_xaddr___t0) ) ) (assert var2772_true__t0 ) ; : ./src/endpoint.zz:265 ; -> ; : ./src/endpoint.zz:265 ; -> ; : ./src/endpoint.zz:265 ; self ;callsite_assert (push 1) ; : ./src/initiator.zz:34 ; * ; call of safe (declare-fun var2773_interpretation_of_theory_safe_over_addressof_xaddr___t0 () Bool) (assert (= var2773_interpretation_of_theory_safe_over_addressof_xaddr___t0 (theory1_safe var2770_addressof_xaddr___t0) ) ) ; : ./src/initiator.zz:33 ; * ; call of safe (declare-fun var2774_interpretation_of_theory_safe_over_cast_of_addressof_deref_S1788_deref_S1770_self__store__secret___t0 () Bool) (assert (= var2774_interpretation_of_theory_safe_over_cast_of_addressof_deref_S1788_deref_S1770_self__store__secret___t0 (theory1_safe var2769_cast_of_addressof_deref_S1788_deref_S1770_self__store__secret___t0) ) ) ; : ./src/initiator.zz:32 ; * ; call of safe (declare-fun var2775_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (assert (= var2775_interpretation_of_theory_safe_over_cast_of_e__t0 (theory1_safe var2765_cast_of_e__t0) ) ) ; : ./src/initiator.zz:31 ; * ; call of safe (declare-fun var2776_interpretation_of_theory_safe_over_addressof_deref_S1770_self__statem_connecting_initiator___t0 () Bool) (assert (= var2776_interpretation_of_theory_safe_over_addressof_deref_S1770_self__statem_connecting_initiator___t0 (theory1_safe var2762_addressof_deref_S1770_self__statem_connecting_initiator___t0) ) ) ; : ./src/initiator.zz:37 ; *e) ; call of ::err::checked ; : ./src/initiator.zz:37 ; err::checked ; : ./src/initiator.zz:37 ; *e ; : ./src/initiator.zz:37 ; e ; : ./src/initiator.zz:37 ; *e ; : ./src/initiator.zz:37 ; e ; : ./src/initiator.zz:37 ; *e (declare-fun var2777_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2777_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t27) :named A155)); : ./src/initiator.zz:37 ; e ; : ./src/initiator.zz:37 ; *e (declare-fun var2778_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2778_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t27) :named A156)); : ./src/initiator.zz:37 ; *e) (declare-fun var2779_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (assert (= var2779_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 (theory86___err__checked var2778_cast_of_deref_S1775_e___t0) ) ) (push 1) (assert (and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 (or (not var2773_interpretation_of_theory_safe_over_addressof_xaddr___t0 ) (not var2774_interpretation_of_theory_safe_over_cast_of_addressof_deref_S1788_deref_S1770_self__store__secret___t0 ) (not var2775_interpretation_of_theory_safe_over_cast_of_e__t0 ) (not var2776_interpretation_of_theory_safe_over_addressof_deref_S1770_self__statem_connecting_initiator___t0 ) (not var2779_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var2773_interpretation_of_theory_safe_over_addressof_xaddr___t0 () Bool) (declare-fun var2774_interpretation_of_theory_safe_over_cast_of_addressof_deref_S1788_deref_S1770_self__store__secret___t0 () Bool) (declare-fun var2775_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var2776_interpretation_of_theory_safe_over_addressof_deref_S1770_self__statem_connecting_initiator___t0 () Bool) (declare-fun var2779_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) ; borrows after call ; 2101 to temporal +1 because of function borrow (declare-fun var2101_deref_S1770_self__statem_connecting_initiator__t2 () (_ BitVec 64)) (assert (= var2101_deref_S1770_self__statem_connecting_initiator__t2 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2101_deref_S1770_self__statem_connecting_initiator__t2 var2101_deref_S1770_self__statem_connecting_initiator__t1) ) ) ; 1777 to temporal +1 because of function borrow (declare-fun var1777_deref_S1775_e___t28 () (_ BitVec 64)) (assert (= var1777_deref_S1775_e___t28 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1777_deref_S1775_e___t28 var1777_deref_S1775_e___t27) ) ) ; end of borrows after call ; : ./src/endpoint.zz:265 ; e, (identity::Secret*)&(self->store->secret), &xaddr, self->store->time) ; callsite effects ; end of callsite effects ; : ./src/endpoint.zz:266 ; e) ; call of ::err::check ; : ./src/endpoint.zz:266 ; err::check ; : ./src/endpoint.zz:266 ; e (declare-fun var2781_cast_of_e__t0 () (_ BitVec 64)) (assert (! (= var2781_cast_of_e__t0 var1775_e__t0) :named A157)); : ./src/endpoint.zz:149 ; +et ; : /home/aep/proj/zz/modules/err/./src/lib.zz:28 ; callsite_source (declare-fun var2782_literal_string____src_endpoint_zz___t0 () (_ BitVec 64)) (declare-fun var2783_true__t0 () Bool) (assert (= var2783_true__t0 (theory1_safe var2782_literal_string____src_endpoint_zz___t0) ) ) (assert var2783_true__t0 ) (declare-fun var2784_true__t0 () Bool) (assert (= var2784_true__t0 (theory2_nullterm var2782_literal_string____src_endpoint_zz___t0) ) ) (assert var2784_true__t0 ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:29 ; callsite_source (declare-fun var2785_literal_string____carrier__endpoint__poll___t0 () (_ BitVec 64)) (declare-fun var2786_true__t0 () Bool) (assert (= var2786_true__t0 (theory1_safe var2785_literal_string____carrier__endpoint__poll___t0) ) ) (assert var2786_true__t0 ) (declare-fun var2787_true__t0 () Bool) (assert (= var2787_true__t0 (theory2_nullterm var2785_literal_string____carrier__endpoint__poll___t0) ) ) (assert var2787_true__t0 ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:30 ; callsite_source ; literal expr (declare-fun var2788_literal_266__t0 () (_ BitVec 64)) (assert (= var2788_literal_266__t0 (_ bv266 64)) ) ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:27 ; * ; call of safe (declare-fun var2789_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (assert (= var2789_interpretation_of_theory_safe_over_cast_of_e__t0 (theory1_safe var2781_cast_of_e__t0) ) ) (push 1) (assert (and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 (or (not var2789_interpretation_of_theory_safe_over_cast_of_e__t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var2789_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) ; borrows after call ; 1777 to temporal +1 because of function borrow (declare-fun var1777_deref_S1775_e___t29 () (_ BitVec 64)) (assert (= var1777_deref_S1775_e___t29 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1777_deref_S1775_e___t29 var1777_deref_S1775_e___t28) ) ) ; end of borrows after call ; : ./src/endpoint.zz:266 ; e) ; callsite effects (declare-fun var2791_return__t1 () Bool) (declare-fun var2790_return_value_of___err__check__t0 () Bool) (declare-fun var2791_return__t0 () Bool) (assert (= var2791_return__t1 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2790_return_value_of___err__check__t0 var2791_return__t0) ) ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self) ; call of ::err::checked ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; checked ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self (declare-fun var2792_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2792_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t29) :named A158)); : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self (declare-fun var2793_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2793_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t29) :named A159)); : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self) (declare-fun var2794_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (assert (= var2794_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 (theory86___err__checked var2793_cast_of_deref_S1775_e___t0) ) ) (assert (! var2794_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 :named A160))(check-sat) (declare-fun var2790_return_value_of___err__check__t1 () Bool) (assert (= var2790_return_value_of___err__check__t1 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2791_return__t1 var2790_return_value_of___err__check__t0) ) ) ; end of callsite effects (check-sat) (get-value ( var2790_return_value_of___err__check__t1 ) ) ; = "false" (push 1) (assert (not (= var2790_return_value_of___err__check__t1 false)) ) (check-sat) (pop 1) ; : ./src/endpoint.zz:266 ; e) ; : ./src/endpoint.zz:266 ; if err::check(e) {return io::Result::Error;} ; : ./src/endpoint.zz:266 ; io::Result::Error (declare-fun var2795_safe___io__Result__Error_____safe_return___t0 () Bool) (assert (= var2795_safe___io__Result__Error_____safe_return___t0 (theory1_safe var250___io__Result__Error__t0) ) ) (declare-fun var1787_return__t15 () (_ BitVec 64)) (assert (= var2795_safe___io__Result__Error_____safe_return___t0 (theory1_safe var1787_return__t15) ) ) (declare-fun var2796_nullterm___io__Result__Error_____nullterm_return___t0 () Bool) (assert (= var2796_nullterm___io__Result__Error_____nullterm_return___t0 (theory2_nullterm var250___io__Result__Error__t0) ) ) (assert (= var2796_nullterm___io__Result__Error_____nullterm_return___t0 (theory2_nullterm var1787_return__t15) ) ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:24 ; Result (declare-fun var2797_implicit_coercion_of___io__Result__Error__t0 () (_ BitVec 64)) (assert (! (= var2797_implicit_coercion_of___io__Result__Error__t0 var250___io__Result__Error__t0) :named A161))(assert (= var1787_return__t15 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2790_return_value_of___err__check__t1 ) var2797_implicit_coercion_of___io__Result__Error__t0 var1787_return__t14) ) ) ; end branch ; branch returned. the rest of the function only happens if the condition leading to return never happened ; (not ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2790_return_value_of___err__check__t1 )) (assert (not ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2790_return_value_of___err__check__t1 )) ) ; : ./src/endpoint.zz:269 ; string::String+150 mut dbn = {0} (declare-fun var2799_dbn_mem__t0 () (_ BitVec 64)) (declare-fun var2800_len_dbn_mem___t0 () (_ BitVec 64)) (assert (= var2800_len_dbn_mem___t0 (theory0_len var2799_dbn_mem__t0) ) ) (assert (= var2800_len_dbn_mem___t0 (_ bv150 64)) ) (declare-fun var2801_true__t0 () Bool) (assert (= var2801_true__t0 (theory1_safe var2799_dbn_mem__t0) ) ) (assert var2801_true__t0 ) (declare-fun var2802_len_dbn_mem___t0 () (_ BitVec 64)) (assert (= var2802_len_dbn_mem___t0 (theory0_len var2799_dbn_mem__t0) ) ) (assert (= var2802_len_dbn_mem___t0 (_ bv150 64)) ) ; : ./src/endpoint.zz:269 ; {0} ; : ./src/endpoint.zz:269 ; 0 ; literal expr (declare-fun var2803_literal_0__t0 () (_ BitVec 64)) (assert (= var2803_literal_0__t0 (_ bv0 64)) ) ; : ./src/endpoint.zz:269 ; {0} (declare-fun var2804_literal_array_2804__t0 () (_ BitVec 64)) (declare-fun var2805_true__t0 () Bool) (assert (= var2805_true__t0 (theory1_safe var2804_literal_array_2804__t0) ) ) (assert var2805_true__t0 ) ; : ./src/endpoint.zz:269 ; string::String+150 mut dbn = {0} (declare-fun var2806_safe_literal_array_2804_____safe_dbn___t0 () Bool) (assert (= var2806_safe_literal_array_2804_____safe_dbn___t0 (theory1_safe var2804_literal_array_2804__t0) ) ) (declare-fun var2798_dbn__t1 () (_ BitVec 64)) (assert (= var2806_safe_literal_array_2804_____safe_dbn___t0 (theory1_safe var2798_dbn__t1) ) ) (declare-fun var2807_nullterm_literal_array_2804_____nullterm_dbn___t0 () Bool) (assert (= var2807_nullterm_literal_array_2804_____nullterm_dbn___t0 (theory2_nullterm var2804_literal_array_2804__t0) ) ) (assert (= var2807_nullterm_literal_array_2804_____nullterm_dbn___t0 (theory2_nullterm var2798_dbn__t1) ) ) (declare-fun var2808_len_dbn___t0 () (_ BitVec 64)) (assert (= var2808_len_dbn___t0 (theory0_len var2798_dbn__t1) ) ) (assert (= var2808_len_dbn___t0 (_ bv1 64)) ) ; : ./src/endpoint.zz:270 ; &dbn) ; call ; : ./src/endpoint.zz:270 ; . ; : ./src/endpoint.zz:270 ; ip4addr ; : ./src/endpoint.zz:270 ; . ; : ./src/endpoint.zz:270 ; &dbn) ; call of ::net::address::ip_to_string ; : ./src/endpoint.zz:270 ; . ; : ./src/endpoint.zz:270 ; ip4addr ; : ./src/endpoint.zz:270 ; . (declare-fun var2810_addressof_ip4addr___t0 () (_ BitVec 64)) (declare-fun var2811_len_addressof_ip4addr____t0 () (_ BitVec 64)) (assert (= var2811_len_addressof_ip4addr____t0 (theory0_len var2810_addressof_ip4addr___t0) ) ) (assert (= var2811_len_addressof_ip4addr____t0 (_ bv1 64)) ) (assert (= var2810_addressof_ip4addr___t0 (_ bv2637 64)) ) (declare-fun var2812_true__t0 () Bool) (assert (= var2812_true__t0 (theory1_safe var2810_addressof_ip4addr___t0) ) ) (assert var2812_true__t0 ) ; : ./src/endpoint.zz:270 ; ip4addr ; : ./src/endpoint.zz:270 ; . (declare-fun var2813_addressof_ip4addr___t0 () (_ BitVec 64)) (declare-fun var2814_len_addressof_ip4addr____t0 () (_ BitVec 64)) (assert (= var2814_len_addressof_ip4addr____t0 (theory0_len var2813_addressof_ip4addr___t0) ) ) (assert (= var2814_len_addressof_ip4addr____t0 (_ bv1 64)) ) (assert (= var2813_addressof_ip4addr___t0 (_ bv2637 64)) ) (declare-fun var2815_true__t0 () Bool) (assert (= var2815_true__t0 (theory1_safe var2813_addressof_ip4addr___t0) ) ) (assert var2815_true__t0 ) ; : ./src/endpoint.zz:270 ; &dbn ; : ./src/endpoint.zz:270 ; dbn ; : ./src/endpoint.zz:270 ; &dbn (declare-fun var2816_addressof_dbn___t0 () (_ BitVec 64)) (declare-fun var2817_len_addressof_dbn____t0 () (_ BitVec 64)) (assert (= var2817_len_addressof_dbn____t0 (theory0_len var2816_addressof_dbn___t0) ) ) (assert (= var2817_len_addressof_dbn____t0 (_ bv1 64)) ) (assert (= var2816_addressof_dbn___t0 (_ bv2798 64)) ) (declare-fun var2818_true__t0 () Bool) (assert (= var2818_true__t0 (theory1_safe var2816_addressof_dbn___t0) ) ) (assert var2818_true__t0 ) ; : ./src/endpoint.zz:270 ; dbn ; : ./src/endpoint.zz:270 ; &dbn (declare-fun var2819_addressof_dbn___t0 () (_ BitVec 64)) (declare-fun var2820_len_addressof_dbn____t0 () (_ BitVec 64)) (assert (= var2820_len_addressof_dbn____t0 (theory0_len var2819_addressof_dbn___t0) ) ) (assert (= var2820_len_addressof_dbn____t0 (_ bv1 64)) ) (assert (= var2819_addressof_dbn___t0 (_ bv2798 64)) ) (declare-fun var2821_true__t0 () Bool) (assert (= var2821_true__t0 (theory1_safe var2819_addressof_dbn___t0) ) ) (assert var2821_true__t0 ) ; : ./src/endpoint.zz:270 ; dbn ; : ./src/endpoint.zz:270 ; &dbn (declare-fun var2822_addressof_dbn___t0 () (_ BitVec 64)) (declare-fun var2823_len_addressof_dbn____t0 () (_ BitVec 64)) (assert (= var2823_len_addressof_dbn____t0 (theory0_len var2822_addressof_dbn___t0) ) ) (assert (= var2823_len_addressof_dbn____t0 (_ bv1 64)) ) (assert (= var2822_addressof_dbn___t0 (_ bv2798 64)) ) (declare-fun var2824_true__t0 () Bool) (assert (= var2824_true__t0 (theory1_safe var2822_addressof_dbn___t0) ) ) (assert var2824_true__t0 ) ; : ./src/endpoint.zz:270 ; . ; : ./src/endpoint.zz:270 ; ip4addr ; : ./src/endpoint.zz:270 ; . (declare-fun var2825_addressof_ip4addr___t0 () (_ BitVec 64)) (declare-fun var2826_len_addressof_ip4addr____t0 () (_ BitVec 64)) (assert (= var2826_len_addressof_ip4addr____t0 (theory0_len var2825_addressof_ip4addr___t0) ) ) (assert (= var2826_len_addressof_ip4addr____t0 (_ bv1 64)) ) (assert (= var2825_addressof_ip4addr___t0 (_ bv2637 64)) ) (declare-fun var2827_true__t0 () Bool) (assert (= var2827_true__t0 (theory1_safe var2825_addressof_ip4addr___t0) ) ) (assert var2827_true__t0 ) ; : ./src/endpoint.zz:270 ; &dbn ; : ./src/endpoint.zz:270 ; dbn ; : ./src/endpoint.zz:270 ; &dbn (declare-fun var2828_addressof_dbn___t0 () (_ BitVec 64)) (declare-fun var2829_len_addressof_dbn____t0 () (_ BitVec 64)) (assert (= var2829_len_addressof_dbn____t0 (theory0_len var2828_addressof_dbn___t0) ) ) (assert (= var2829_len_addressof_dbn____t0 (_ bv1 64)) ) (assert (= var2828_addressof_dbn___t0 (_ bv2798 64)) ) (declare-fun var2830_true__t0 () Bool) (assert (= var2830_true__t0 (theory1_safe var2828_addressof_dbn___t0) ) ) (assert var2830_true__t0 ) (declare-fun var2831_cast_of_addressof_dbn___t0 () (_ BitVec 64)) (assert (! (= var2831_cast_of_addressof_dbn___t0 var2828_addressof_dbn___t0) :named A162)); : ./src/endpoint.zz:269 ; +150 ; literal expr (declare-fun var2832_literal_150__t0 () (_ BitVec 64)) (assert (= var2832_literal_150__t0 (_ bv150 64)) ) ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/net/./src/address.zz:211 ; * ; call of safe (declare-fun var2833_interpretation_of_theory_safe_over_cast_of_addressof_dbn___t0 () Bool) (assert (= var2833_interpretation_of_theory_safe_over_cast_of_addressof_dbn___t0 (theory1_safe var2831_cast_of_addressof_dbn___t0) ) ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:211 ; * ; call of safe (declare-fun var2834_interpretation_of_theory_safe_over_addressof_ip4addr___t0 () Bool) (assert (= var2834_interpretation_of_theory_safe_over_addressof_ip4addr___t0 (theory1_safe var2825_addressof_ip4addr___t0) ) ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:212 ; > ; : /home/aep/proj/zz/modules/net/./src/address.zz:212 ; st ; : /home/aep/proj/zz/modules/net/./src/address.zz:212 ; 2 ; literal expr (declare-fun var2835_literal_2__t0 () (_ BitVec 64)) (assert (= var2835_literal_2__t0 (_ bv2 64)) ) ; : /home/aep/proj/zz/modules/net/./src/address.zz:212 ; > (declare-fun var2836_infix_expression__t0 () Bool) (assert (= var2836_infix_expression__t0 (bvugt var2832_literal_150__t0 var2835_literal_2__t0)) ) (push 1) (assert (and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 (or (not var2833_interpretation_of_theory_safe_over_cast_of_addressof_dbn___t0 ) (not var2834_interpretation_of_theory_safe_over_addressof_ip4addr___t0 ) (not var2836_infix_expression__t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var2833_interpretation_of_theory_safe_over_cast_of_addressof_dbn___t0 () Bool) (declare-fun var2834_interpretation_of_theory_safe_over_addressof_ip4addr___t0 () Bool) (declare-fun var2835_literal_2__t0 () (_ BitVec 64)) ; borrows after call ; 2798 to temporal +1 because of function borrow (declare-fun var2798_dbn__t2 () (_ BitVec 64)) (assert (= var2798_dbn__t2 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2798_dbn__t2 var2798_dbn__t1) ) ) ; end of borrows after call ; : ./src/endpoint.zz:270 ; &dbn) ; callsite effects ; end of callsite effects ; : ./src/endpoint.zz:271 ; " ") ; call ; : ./src/endpoint.zz:271 ; . ; : ./src/endpoint.zz:271 ; dbn ; : ./src/endpoint.zz:271 ; . ; : ./src/endpoint.zz:271 ; " ") ; call of ::string::append_cstr ; : ./src/endpoint.zz:271 ; . ; : ./src/endpoint.zz:271 ; dbn ; : ./src/endpoint.zz:271 ; . (declare-fun var2839_addressof_dbn___t0 () (_ BitVec 64)) (declare-fun var2840_len_addressof_dbn____t0 () (_ BitVec 64)) (assert (= var2840_len_addressof_dbn____t0 (theory0_len var2839_addressof_dbn___t0) ) ) (assert (= var2840_len_addressof_dbn____t0 (_ bv1 64)) ) (assert (= var2839_addressof_dbn___t0 (_ bv2798 64)) ) (declare-fun var2841_true__t0 () Bool) (assert (= var2841_true__t0 (theory1_safe var2839_addressof_dbn___t0) ) ) (assert var2841_true__t0 ) ; : ./src/endpoint.zz:271 ; dbn ; : ./src/endpoint.zz:271 ; . (declare-fun var2842_addressof_dbn___t0 () (_ BitVec 64)) (declare-fun var2843_len_addressof_dbn____t0 () (_ BitVec 64)) (assert (= var2843_len_addressof_dbn____t0 (theory0_len var2842_addressof_dbn___t0) ) ) (assert (= var2843_len_addressof_dbn____t0 (_ bv1 64)) ) (assert (= var2842_addressof_dbn___t0 (_ bv2798 64)) ) (declare-fun var2844_true__t0 () Bool) (assert (= var2844_true__t0 (theory1_safe var2842_addressof_dbn___t0) ) ) (assert var2844_true__t0 ) ; : ./src/endpoint.zz:271 ; dbn ; : ./src/endpoint.zz:271 ; . (declare-fun var2845_addressof_dbn___t0 () (_ BitVec 64)) (declare-fun var2846_len_addressof_dbn____t0 () (_ BitVec 64)) (assert (= var2846_len_addressof_dbn____t0 (theory0_len var2845_addressof_dbn___t0) ) ) (assert (= var2846_len_addressof_dbn____t0 (_ bv1 64)) ) (assert (= var2845_addressof_dbn___t0 (_ bv2798 64)) ) (declare-fun var2847_true__t0 () Bool) (assert (= var2847_true__t0 (theory1_safe var2845_addressof_dbn___t0) ) ) (assert var2847_true__t0 ) ; : ./src/endpoint.zz:271 ; " " (declare-fun var2848_literal_string______t0 () (_ BitVec 64)) (declare-fun var2849_true__t0 () Bool) (assert (= var2849_true__t0 (theory1_safe var2848_literal_string______t0) ) ) (assert var2849_true__t0 ) (declare-fun var2850_true__t0 () Bool) (assert (= var2850_true__t0 (theory2_nullterm var2848_literal_string______t0) ) ) (assert var2850_true__t0 ) (declare-fun var2851_literal_string______t0 () (_ BitVec 64)) (declare-fun var2852_true__t0 () Bool) (assert (= var2852_true__t0 (theory1_safe var2851_literal_string______t0) ) ) (assert var2852_true__t0 ) (declare-fun var2853_true__t0 () Bool) (assert (= var2853_true__t0 (theory2_nullterm var2851_literal_string______t0) ) ) (assert var2853_true__t0 ) ; : ./src/endpoint.zz:271 ; . ; : ./src/endpoint.zz:271 ; dbn ; : ./src/endpoint.zz:271 ; . (declare-fun var2854_addressof_dbn___t0 () (_ BitVec 64)) (declare-fun var2855_len_addressof_dbn____t0 () (_ BitVec 64)) (assert (= var2855_len_addressof_dbn____t0 (theory0_len var2854_addressof_dbn___t0) ) ) (assert (= var2855_len_addressof_dbn____t0 (_ bv1 64)) ) (assert (= var2854_addressof_dbn___t0 (_ bv2798 64)) ) (declare-fun var2856_true__t0 () Bool) (assert (= var2856_true__t0 (theory1_safe var2854_addressof_dbn___t0) ) ) (assert var2856_true__t0 ) (declare-fun var2857_cast_of_addressof_dbn___t0 () (_ BitVec 64)) (assert (! (= var2857_cast_of_addressof_dbn___t0 var2854_addressof_dbn___t0) :named A163)); : ./src/endpoint.zz:269 ; +150 ; literal expr (declare-fun var2858_literal_150__t0 () (_ BitVec 64)) (assert (= var2858_literal_150__t0 (_ bv150 64)) ) ; : ./src/endpoint.zz:271 ; " " (declare-fun var2859_literal_string______t0 () (_ BitVec 64)) (declare-fun var2860_true__t0 () Bool) (assert (= var2860_true__t0 (theory1_safe var2859_literal_string______t0) ) ) (assert var2860_true__t0 ) (declare-fun var2861_true__t0 () Bool) (assert (= var2861_true__t0 (theory2_nullterm var2859_literal_string______t0) ) ) (assert var2861_true__t0 ) ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/string/./src/lib.zz:95 ; * ; call of safe (declare-fun var2862_interpretation_of_theory_safe_over_literal_string______t0 () Bool) (assert (= var2862_interpretation_of_theory_safe_over_literal_string______t0 (theory1_safe var2859_literal_string______t0) ) ) ; : /home/aep/proj/zz/modules/string/./src/lib.zz:95 ; * ; call of safe (declare-fun var2863_interpretation_of_theory_safe_over_cast_of_addressof_dbn___t0 () Bool) (assert (= var2863_interpretation_of_theory_safe_over_cast_of_addressof_dbn___t0 (theory1_safe var2857_cast_of_addressof_dbn___t0) ) ) ; : /home/aep/proj/zz/modules/string/./src/lib.zz:96 ; cstr) ; call of nullterm ; : /home/aep/proj/zz/modules/string/./src/lib.zz:96 ; nullterm ; : /home/aep/proj/zz/modules/string/./src/lib.zz:96 ; cstr ; : /home/aep/proj/zz/modules/string/./src/lib.zz:96 ; cstr) (declare-fun var2864_interpretation_of_theory_nullterm_over_literal_string______t0 () Bool) (assert (= var2864_interpretation_of_theory_nullterm_over_literal_string______t0 (theory2_nullterm var2859_literal_string______t0) ) ) (push 1) (assert (and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 (or (not var2862_interpretation_of_theory_safe_over_literal_string______t0 ) (not var2863_interpretation_of_theory_safe_over_cast_of_addressof_dbn___t0 ) (not var2864_interpretation_of_theory_nullterm_over_literal_string______t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var2862_interpretation_of_theory_safe_over_literal_string______t0 () Bool) (declare-fun var2863_interpretation_of_theory_safe_over_cast_of_addressof_dbn___t0 () Bool) (declare-fun var2864_interpretation_of_theory_nullterm_over_literal_string______t0 () Bool) ; borrows after call ; 2798 to temporal +1 because of function borrow (declare-fun var2798_dbn__t3 () (_ BitVec 64)) (assert (= var2798_dbn__t3 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2798_dbn__t3 var2798_dbn__t2) ) ) ; end of borrows after call ; : ./src/endpoint.zz:271 ; " ") ; callsite effects (declare-fun var2865_return_value_of___string__append_cstr__t0 () (_ BitVec 64)) (declare-fun var2867_safe_return_value_of___string__append_cstr_____safe_return___t0 () Bool) (assert (= var2867_safe_return_value_of___string__append_cstr_____safe_return___t0 (theory1_safe var2865_return_value_of___string__append_cstr__t0) ) ) (declare-fun var2866_return__t1 () (_ BitVec 64)) (assert (= var2867_safe_return_value_of___string__append_cstr_____safe_return___t0 (theory1_safe var2866_return__t1) ) ) (declare-fun var2868_nullterm_return_value_of___string__append_cstr_____nullterm_return___t0 () Bool) (assert (= var2868_nullterm_return_value_of___string__append_cstr_____nullterm_return___t0 (theory2_nullterm var2865_return_value_of___string__append_cstr__t0) ) ) (assert (= var2868_nullterm_return_value_of___string__append_cstr_____nullterm_return___t0 (theory2_nullterm var2866_return__t1) ) ) (declare-fun var2866_return__t0 () (_ BitVec 64)) (assert (= var2866_return__t1 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2865_return_value_of___string__append_cstr__t0 var2866_return__t0) ) ) ; : /home/aep/proj/zz/modules/string/./src/lib.zz:97 ; self->mem) ; call of nullterm ; : /home/aep/proj/zz/modules/string/./src/lib.zz:97 ; nullterm ; : /home/aep/proj/zz/modules/string/./src/lib.zz:97 ; -> ; : /home/aep/proj/zz/modules/string/./src/lib.zz:97 ; self ; : /home/aep/proj/zz/modules/string/./src/lib.zz:97 ; -> ; : /home/aep/proj/zz/modules/string/./src/lib.zz:97 ; self ; : /home/aep/proj/zz/modules/string/./src/lib.zz:97 ; -> ; : /home/aep/proj/zz/modules/string/./src/lib.zz:97 ; self ; : /home/aep/proj/zz/modules/string/./src/lib.zz:97 ; self->mem) (declare-fun var2869_interpretation_of_theory_nullterm_over_dbn_mem__t0 () Bool) (assert (= var2869_interpretation_of_theory_nullterm_over_dbn_mem__t0 (theory2_nullterm var2799_dbn_mem__t0) ) ) (assert (! var2869_interpretation_of_theory_nullterm_over_dbn_mem__t0 :named A164))(check-sat) ; : ./src/endpoint.zz:271 ; " ") (declare-fun var2870_safe_return_____safe_return_value_of___string__append_cstr___t0 () Bool) (assert (= var2870_safe_return_____safe_return_value_of___string__append_cstr___t0 (theory1_safe var2866_return__t1) ) ) (declare-fun var2865_return_value_of___string__append_cstr__t1 () (_ BitVec 64)) (assert (= var2870_safe_return_____safe_return_value_of___string__append_cstr___t0 (theory1_safe var2865_return_value_of___string__append_cstr__t1) ) ) (declare-fun var2871_nullterm_return_____nullterm_return_value_of___string__append_cstr___t0 () Bool) (assert (= var2871_nullterm_return_____nullterm_return_value_of___string__append_cstr___t0 (theory2_nullterm var2866_return__t1) ) ) (assert (= var2871_nullterm_return_____nullterm_return_value_of___string__append_cstr___t0 (theory2_nullterm var2865_return_value_of___string__append_cstr__t1) ) ) (assert (= var2865_return_value_of___string__append_cstr__t1 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2866_return__t1 var2865_return_value_of___string__append_cstr__t0) ) ) (declare-fun var2873_safe_return_value_of___string__append_cstr_____safe_return___t0 () Bool) (assert (= var2873_safe_return_value_of___string__append_cstr_____safe_return___t0 (theory1_safe var2865_return_value_of___string__append_cstr__t1) ) ) (declare-fun var2872_return__t1 () (_ BitVec 64)) (assert (= var2873_safe_return_value_of___string__append_cstr_____safe_return___t0 (theory1_safe var2872_return__t1) ) ) (declare-fun var2874_nullterm_return_value_of___string__append_cstr_____nullterm_return___t0 () Bool) (assert (= var2874_nullterm_return_value_of___string__append_cstr_____nullterm_return___t0 (theory2_nullterm var2865_return_value_of___string__append_cstr__t1) ) ) (assert (= var2874_nullterm_return_value_of___string__append_cstr_____nullterm_return___t0 (theory2_nullterm var2872_return__t1) ) ) (declare-fun var2872_return__t0 () (_ BitVec 64)) (assert (= var2872_return__t1 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2865_return_value_of___string__append_cstr__t1 var2872_return__t0) ) ) ; : /home/aep/proj/zz/modules/string/./src/lib.zz:98 ; < ; : /home/aep/proj/zz/modules/string/./src/lib.zz:98 ; -> ; : /home/aep/proj/zz/modules/string/./src/lib.zz:98 ; self ; : /home/aep/proj/zz/modules/string/./src/lib.zz:98 ; -> ; : /home/aep/proj/zz/modules/string/./src/lib.zz:98 ; t ; : ./src/endpoint.zz:269 ; +150 (declare-fun var2876_implicit_coercion_of_literal_150__t0 () (_ BitVec 64)) (assert (! (= var2876_implicit_coercion_of_literal_150__t0 var2858_literal_150__t0) :named A165)); : /home/aep/proj/zz/modules/string/./src/lib.zz:98 ; < (declare-fun var2877_infix_expression__t0 () Bool) (declare-fun var2875_dbn_len__t0 () (_ BitVec 64)) (assert (= var2877_infix_expression__t0 (bvult var2875_dbn_len__t0 var2876_implicit_coercion_of_literal_150__t0)) ) (assert (! var2877_infix_expression__t0 :named A166))(check-sat) ; : ./src/endpoint.zz:271 ; " ") (declare-fun var2878_safe_return_____safe_return_value_of___string__append_cstr___t0 () Bool) (assert (= var2878_safe_return_____safe_return_value_of___string__append_cstr___t0 (theory1_safe var2872_return__t1) ) ) (declare-fun var2865_return_value_of___string__append_cstr__t2 () (_ BitVec 64)) (assert (= var2878_safe_return_____safe_return_value_of___string__append_cstr___t0 (theory1_safe var2865_return_value_of___string__append_cstr__t2) ) ) (declare-fun var2879_nullterm_return_____nullterm_return_value_of___string__append_cstr___t0 () Bool) (assert (= var2879_nullterm_return_____nullterm_return_value_of___string__append_cstr___t0 (theory2_nullterm var2872_return__t1) ) ) (assert (= var2879_nullterm_return_____nullterm_return_value_of___string__append_cstr___t0 (theory2_nullterm var2865_return_value_of___string__append_cstr__t2) ) ) (assert (= var2865_return_value_of___string__append_cstr__t2 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2872_return__t1 var2865_return_value_of___string__append_cstr__t1) ) ) ; end of callsite effects ; : ./src/endpoint.zz:272 ; len(&dbn.mem) > dbn.len) ; call of static_attest ; static_attest ; : ./src/endpoint.zz:272 ; > ; : ./src/endpoint.zz:272 ; &dbn.mem) ; call of len ; : ./src/endpoint.zz:272 ; &dbn.mem ; : ./src/endpoint.zz:272 ; . ; : ./src/endpoint.zz:272 ; dbn ; : ./src/endpoint.zz:272 ; &dbn.mem (declare-fun var2880_addressof_dbn_mem___t0 () (_ BitVec 64)) (declare-fun var2881_len_addressof_dbn_mem____t0 () (_ BitVec 64)) (assert (= var2881_len_addressof_dbn_mem____t0 (theory0_len var2880_addressof_dbn_mem___t0) ) ) (assert (= var2881_len_addressof_dbn_mem____t0 (_ bv1 64)) ) (assert (= var2880_addressof_dbn_mem___t0 (_ bv2799 64)) ) (declare-fun var2882_true__t0 () Bool) (assert (= var2882_true__t0 (theory1_safe var2880_addressof_dbn_mem___t0) ) ) (assert var2882_true__t0 ) ; : ./src/endpoint.zz:272 ; len ; : ./src/endpoint.zz:272 ; &dbn.mem ; : ./src/endpoint.zz:272 ; . ; : ./src/endpoint.zz:272 ; dbn ; : ./src/endpoint.zz:272 ; &dbn.mem (declare-fun var2883_addressof_dbn_mem___t0 () (_ BitVec 64)) (declare-fun var2884_len_addressof_dbn_mem____t0 () (_ BitVec 64)) (assert (= var2884_len_addressof_dbn_mem____t0 (theory0_len var2883_addressof_dbn_mem___t0) ) ) (assert (= var2884_len_addressof_dbn_mem____t0 (_ bv1 64)) ) (assert (= var2883_addressof_dbn_mem___t0 (_ bv2799 64)) ) (declare-fun var2885_true__t0 () Bool) (assert (= var2885_true__t0 (theory1_safe var2883_addressof_dbn_mem___t0) ) ) (assert var2885_true__t0 ) ; : ./src/endpoint.zz:272 ; . ; : ./src/endpoint.zz:272 ; dbn ; : ./src/endpoint.zz:272 ; &dbn.mem (declare-fun var2886_addressof_dbn_mem___t0 () (_ BitVec 64)) (declare-fun var2887_len_addressof_dbn_mem____t0 () (_ BitVec 64)) (assert (= var2887_len_addressof_dbn_mem____t0 (theory0_len var2886_addressof_dbn_mem___t0) ) ) (assert (= var2887_len_addressof_dbn_mem____t0 (_ bv1 64)) ) (assert (= var2886_addressof_dbn_mem___t0 (_ bv2799 64)) ) (declare-fun var2888_true__t0 () Bool) (assert (= var2888_true__t0 (theory1_safe var2886_addressof_dbn_mem___t0) ) ) (assert var2888_true__t0 ) ; : ./src/endpoint.zz:272 ; . ; : ./src/endpoint.zz:272 ; dbn ; : ./src/endpoint.zz:272 ; &dbn.mem (declare-fun var2889_addressof_dbn_mem___t0 () (_ BitVec 64)) (declare-fun var2890_len_addressof_dbn_mem____t0 () (_ BitVec 64)) (assert (= var2890_len_addressof_dbn_mem____t0 (theory0_len var2889_addressof_dbn_mem___t0) ) ) (assert (= var2890_len_addressof_dbn_mem____t0 (_ bv1 64)) ) (assert (= var2889_addressof_dbn_mem___t0 (_ bv2799 64)) ) (declare-fun var2891_true__t0 () Bool) (assert (= var2891_true__t0 (theory1_safe var2889_addressof_dbn_mem___t0) ) ) (assert var2891_true__t0 ) ; : ./src/endpoint.zz:272 ; &dbn.mem) (declare-fun var2892_interpretation_of_theory_len_over_addressof_dbn_mem___t0 () (_ BitVec 64)) (assert (= var2892_interpretation_of_theory_len_over_addressof_dbn_mem___t0 (theory0_len var2889_addressof_dbn_mem___t0) ) ) ; : ./src/endpoint.zz:272 ; . ; : ./src/endpoint.zz:272 ; dbn ; : ./src/endpoint.zz:272 ; > (declare-fun var2893_infix_expression__t0 () Bool) (assert (= var2893_infix_expression__t0 (bvugt var2892_interpretation_of_theory_len_over_addressof_dbn_mem___t0 var2875_dbn_len__t0)) ) (assert (! var2893_infix_expression__t0 :named A167))(check-sat) ; : ./src/endpoint.zz:272 ; len(&dbn.mem) > dbn.len) (declare-fun var2894_literal_1__t0 () (_ BitVec 64)) (assert (= var2894_literal_1__t0 (_ bv1 64)) ) ; : ./src/endpoint.zz:273 ; . ; : ./src/endpoint.zz:273 ; dbn ; : ./src/endpoint.zz:273 ; e, dbn.mem + dbn.len, 150 - dbn.len, &xaddr) ; call of ::carrier::identity::address_to_str ; : ./src/endpoint.zz:273 ; identity::address_to_str ; : ./src/endpoint.zz:273 ; e ; : ./src/endpoint.zz:273 ; + ; : ./src/endpoint.zz:273 ; . ; : ./src/endpoint.zz:273 ; dbn ; : ./src/endpoint.zz:273 ; . ; : ./src/endpoint.zz:273 ; dbn ; : ./src/endpoint.zz:273 ; + (declare-fun var2895_implicit_cast_of_dbn_len__t0 () (_ BitVec 64)) (assert (! (= var2895_implicit_cast_of_dbn_len__t0 var2875_dbn_len__t0) :named A168)); begin pointer arithmetic (declare-fun var2897_len_dbn_mem___t0 () (_ BitVec 64)) (assert (= var2897_len_dbn_mem___t0 (theory0_len var2799_dbn_mem__t0) ) ) (declare-fun var2898_implicit_cast_of_dbn_len___len_dbn_mem___t0 () Bool) (assert (= var2898_implicit_cast_of_dbn_len___len_dbn_mem___t0 (bvult var2895_implicit_cast_of_dbn_len__t0 var2897_len_dbn_mem___t0)) ) ; assert that length less than index is true (push 1) (assert (and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 (or (not var2898_implicit_cast_of_dbn_len___len_dbn_mem___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) (declare-fun var2896_infix_expression__t0 () (_ BitVec 64)) (declare-fun var2899_true__t0 () Bool) (assert (= var2899_true__t0 (theory1_safe var2896_infix_expression__t0) ) ) (assert var2899_true__t0 ) (declare-fun var2900_len_dbn_mem___t0 () (_ BitVec 64)) (assert (= var2900_len_dbn_mem___t0 (theory0_len var2896_infix_expression__t0) ) ) (assert (= var2900_len_dbn_mem___t0 (bvsub var2897_len_dbn_mem___t0 var2895_implicit_cast_of_dbn_len__t0)) ) (check-sat) (get-value ( var2900_len_dbn_mem___t0 ) ) ; = "#b0000000000000000000000000000000000000000000000000000000010010110" (push 1) (assert (not (= var2900_len_dbn_mem___t0 #b0000000000000000000000000000000000000000000000000000000010010110)) ) (check-sat) (pop 1) (push 1) (check-sat) (pop 1) ; : ./src/endpoint.zz:273 ; . ; : ./src/endpoint.zz:273 ; dbn ; : ./src/endpoint.zz:273 ; . ; : ./src/endpoint.zz:273 ; dbn ; : ./src/endpoint.zz:273 ; + (declare-fun var2901_implicit_cast_of_dbn_len__t0 () (_ BitVec 64)) (assert (! (= var2901_implicit_cast_of_dbn_len__t0 var2875_dbn_len__t0) :named A169)); begin pointer arithmetic (declare-fun var2903_len_dbn_mem___t0 () (_ BitVec 64)) (assert (= var2903_len_dbn_mem___t0 (theory0_len var2799_dbn_mem__t0) ) ) (declare-fun var2904_implicit_cast_of_dbn_len___len_dbn_mem___t0 () Bool) (assert (= var2904_implicit_cast_of_dbn_len___len_dbn_mem___t0 (bvult var2901_implicit_cast_of_dbn_len__t0 var2903_len_dbn_mem___t0)) ) ; assert that length less than index is true (push 1) (assert (and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 (or (not var2904_implicit_cast_of_dbn_len___len_dbn_mem___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) (declare-fun var2902_infix_expression__t0 () (_ BitVec 64)) (declare-fun var2905_true__t0 () Bool) (assert (= var2905_true__t0 (theory1_safe var2902_infix_expression__t0) ) ) (assert var2905_true__t0 ) (declare-fun var2906_len_dbn_mem___t0 () (_ BitVec 64)) (assert (= var2906_len_dbn_mem___t0 (theory0_len var2902_infix_expression__t0) ) ) (assert (= var2906_len_dbn_mem___t0 (bvsub var2903_len_dbn_mem___t0 var2901_implicit_cast_of_dbn_len__t0)) ) (check-sat) (get-value ( var2906_len_dbn_mem___t0 ) ) ; = "#b0000000000000000000000000000000000000000000000000000000010010110" (push 1) (assert (not (= var2906_len_dbn_mem___t0 #b0000000000000000000000000000000000000000000000000000000010010110)) ) (check-sat) (pop 1) (push 1) (check-sat) (pop 1) ; : ./src/endpoint.zz:273 ; - ; : ./src/endpoint.zz:273 ; 150 ; literal expr (declare-fun var2907_literal_150__t0 () (_ BitVec 64)) (assert (= var2907_literal_150__t0 (_ bv150 64)) ) ; : ./src/endpoint.zz:273 ; . ; : ./src/endpoint.zz:273 ; dbn ; : ./src/endpoint.zz:273 ; 150 (declare-fun var2908_implicit_coercion_of_literal_150__t0 () (_ BitVec 64)) (assert (! (= var2908_implicit_coercion_of_literal_150__t0 var2907_literal_150__t0) :named A170)); : ./src/endpoint.zz:273 ; - (declare-fun var2909_infix_expression__t0 () (_ BitVec 64)) (assert (= var2909_infix_expression__t0 (bvsub var2908_implicit_coercion_of_literal_150__t0 var2875_dbn_len__t0)) ) ; : ./src/endpoint.zz:273 ; 150 ; literal expr (declare-fun var2910_literal_150__t0 () (_ BitVec 64)) (assert (= var2910_literal_150__t0 (_ bv150 64)) ) ; : ./src/endpoint.zz:273 ; . ; : ./src/endpoint.zz:273 ; dbn ; : ./src/endpoint.zz:273 ; 150 (declare-fun var2911_implicit_coercion_of_literal_150__t0 () (_ BitVec 64)) (assert (! (= var2911_implicit_coercion_of_literal_150__t0 var2910_literal_150__t0) :named A171)); : ./src/endpoint.zz:273 ; - (declare-fun var2912_infix_expression__t0 () (_ BitVec 64)) (assert (= var2912_infix_expression__t0 (bvsub var2911_implicit_coercion_of_literal_150__t0 var2875_dbn_len__t0)) ) ; : ./src/endpoint.zz:273 ; &xaddr ; : ./src/endpoint.zz:273 ; xaddr ; : ./src/endpoint.zz:273 ; &xaddr (declare-fun var2913_addressof_xaddr___t0 () (_ BitVec 64)) (declare-fun var2914_len_addressof_xaddr____t0 () (_ BitVec 64)) (assert (= var2914_len_addressof_xaddr____t0 (theory0_len var2913_addressof_xaddr___t0) ) ) (assert (= var2914_len_addressof_xaddr____t0 (_ bv1 64)) ) (assert (= var2913_addressof_xaddr___t0 (_ bv2651 64)) ) (declare-fun var2915_true__t0 () Bool) (assert (= var2915_true__t0 (theory1_safe var2913_addressof_xaddr___t0) ) ) (assert var2915_true__t0 ) ; : ./src/endpoint.zz:273 ; xaddr ; : ./src/endpoint.zz:273 ; &xaddr (declare-fun var2916_addressof_xaddr___t0 () (_ BitVec 64)) (declare-fun var2917_len_addressof_xaddr____t0 () (_ BitVec 64)) (assert (= var2917_len_addressof_xaddr____t0 (theory0_len var2916_addressof_xaddr___t0) ) ) (assert (= var2917_len_addressof_xaddr____t0 (_ bv1 64)) ) (assert (= var2916_addressof_xaddr___t0 (_ bv2651 64)) ) (declare-fun var2918_true__t0 () Bool) (assert (= var2918_true__t0 (theory1_safe var2916_addressof_xaddr___t0) ) ) (assert var2918_true__t0 ) ; : ./src/endpoint.zz:273 ; e (declare-fun var2919_cast_of_e__t0 () (_ BitVec 64)) (assert (! (= var2919_cast_of_e__t0 var1775_e__t0) :named A172)); : ./src/endpoint.zz:149 ; +et ; : ./src/endpoint.zz:273 ; + ; : ./src/endpoint.zz:273 ; . ; : ./src/endpoint.zz:273 ; dbn ; : ./src/endpoint.zz:273 ; . ; : ./src/endpoint.zz:273 ; dbn ; : ./src/endpoint.zz:273 ; + (declare-fun var2920_implicit_cast_of_dbn_len__t0 () (_ BitVec 64)) (assert (! (= var2920_implicit_cast_of_dbn_len__t0 var2875_dbn_len__t0) :named A173)); begin pointer arithmetic (declare-fun var2922_len_dbn_mem___t0 () (_ BitVec 64)) (assert (= var2922_len_dbn_mem___t0 (theory0_len var2799_dbn_mem__t0) ) ) (declare-fun var2923_implicit_cast_of_dbn_len___len_dbn_mem___t0 () Bool) (assert (= var2923_implicit_cast_of_dbn_len___len_dbn_mem___t0 (bvult var2920_implicit_cast_of_dbn_len__t0 var2922_len_dbn_mem___t0)) ) ; assert that length less than index is true (push 1) (assert (and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 (or (not var2923_implicit_cast_of_dbn_len___len_dbn_mem___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) (declare-fun var2921_infix_expression__t0 () (_ BitVec 64)) (declare-fun var2924_true__t0 () Bool) (assert (= var2924_true__t0 (theory1_safe var2921_infix_expression__t0) ) ) (assert var2924_true__t0 ) (declare-fun var2925_len_dbn_mem___t0 () (_ BitVec 64)) (assert (= var2925_len_dbn_mem___t0 (theory0_len var2921_infix_expression__t0) ) ) (assert (= var2925_len_dbn_mem___t0 (bvsub var2922_len_dbn_mem___t0 var2920_implicit_cast_of_dbn_len__t0)) ) (check-sat) (get-value ( var2925_len_dbn_mem___t0 ) ) ; = "#b0000000000000000000000000000000000000000000000000000000010010110" (push 1) (assert (not (= var2925_len_dbn_mem___t0 #b0000000000000000000000000000000000000000000000000000000010010110)) ) (check-sat) (pop 1) (push 1) (check-sat) (pop 1) ; : ./src/endpoint.zz:273 ; - ; : ./src/endpoint.zz:273 ; 150 ; literal expr (declare-fun var2926_literal_150__t0 () (_ BitVec 64)) (assert (= var2926_literal_150__t0 (_ bv150 64)) ) ; : ./src/endpoint.zz:273 ; . ; : ./src/endpoint.zz:273 ; dbn ; : ./src/endpoint.zz:273 ; 150 (declare-fun var2927_implicit_coercion_of_literal_150__t0 () (_ BitVec 64)) (assert (! (= var2927_implicit_coercion_of_literal_150__t0 var2926_literal_150__t0) :named A174)); : ./src/endpoint.zz:273 ; - (declare-fun var2928_infix_expression__t0 () (_ BitVec 64)) (assert (= var2928_infix_expression__t0 (bvsub var2927_implicit_coercion_of_literal_150__t0 var2875_dbn_len__t0)) ) ; : ./src/endpoint.zz:273 ; &xaddr ; : ./src/endpoint.zz:273 ; xaddr ; : ./src/endpoint.zz:273 ; &xaddr (declare-fun var2929_addressof_xaddr___t0 () (_ BitVec 64)) (declare-fun var2930_len_addressof_xaddr____t0 () (_ BitVec 64)) (assert (= var2930_len_addressof_xaddr____t0 (theory0_len var2929_addressof_xaddr___t0) ) ) (assert (= var2930_len_addressof_xaddr____t0 (_ bv1 64)) ) (assert (= var2929_addressof_xaddr___t0 (_ bv2651 64)) ) (declare-fun var2931_true__t0 () Bool) (assert (= var2931_true__t0 (theory1_safe var2929_addressof_xaddr___t0) ) ) (assert var2931_true__t0 ) ;callsite_assert (push 1) ; : ./src/identity.zz:130 ; * ; call of safe (declare-fun var2932_interpretation_of_theory_safe_over_addressof_xaddr___t0 () Bool) (assert (= var2932_interpretation_of_theory_safe_over_addressof_xaddr___t0 (theory1_safe var2929_addressof_xaddr___t0) ) ) ; : ./src/identity.zz:130 ; * ; call of safe (declare-fun var2933_interpretation_of_theory_safe_over_infix_expression__t0 () Bool) (assert (= var2933_interpretation_of_theory_safe_over_infix_expression__t0 (theory1_safe var2921_infix_expression__t0) ) ) ; : ./src/identity.zz:130 ; * ; call of safe (declare-fun var2934_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (assert (= var2934_interpretation_of_theory_safe_over_cast_of_e__t0 (theory1_safe var2919_cast_of_e__t0) ) ) ; : ./src/identity.zz:131 ; *e) ; call of ::err::checked ; : ./src/identity.zz:131 ; err::checked ; : ./src/identity.zz:131 ; *e ; : ./src/identity.zz:131 ; e ; : ./src/identity.zz:131 ; *e ; : ./src/identity.zz:131 ; e ; : ./src/identity.zz:131 ; *e (declare-fun var2935_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2935_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t29) :named A175)); : ./src/identity.zz:131 ; e ; : ./src/identity.zz:131 ; *e (declare-fun var2936_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2936_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t29) :named A176)); : ./src/identity.zz:131 ; *e) (declare-fun var2937_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (assert (= var2937_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 (theory86___err__checked var2936_cast_of_deref_S1775_e___t0) ) ) ; : ./src/identity.zz:132 ; && ; : ./src/identity.zz:132 ; >= ; : ./src/identity.zz:132 ; to) ; call of len ; : ./src/identity.zz:132 ; to ; : ./src/identity.zz:132 ; to) (declare-fun var2938_literal_150__t0 () (_ BitVec 64)) (assert (= var2938_literal_150__t0 (_ bv150 64)) ) ; : ./src/identity.zz:132 ; l ; : ./src/identity.zz:132 ; to) (declare-fun var2939_implicit_coercion_of_literal_150__t0 () (_ BitVec 64)) (assert (! (= var2939_implicit_coercion_of_literal_150__t0 var2938_literal_150__t0) :named A177)); : ./src/identity.zz:132 ; >= (declare-fun var2940_infix_expression__t0 () Bool) (assert (= var2940_infix_expression__t0 (bvuge var2939_implicit_coercion_of_literal_150__t0 var2928_infix_expression__t0)) ) ; : ./src/identity.zz:132 ; > ; : ./src/identity.zz:132 ; l ; : ./src/identity.zz:132 ; 0 ; literal expr (declare-fun var2941_literal_0__t0 () (_ BitVec 64)) (assert (= var2941_literal_0__t0 (_ bv0 64)) ) (declare-fun var2942_implicit_coercion_of_literal_0__t0 () (_ BitVec 64)) (assert (! (= var2942_implicit_coercion_of_literal_0__t0 var2941_literal_0__t0) :named A178)); : ./src/identity.zz:132 ; > (declare-fun var2943_infix_expression__t0 () Bool) (assert (= var2943_infix_expression__t0 (bvugt var2928_infix_expression__t0 var2942_implicit_coercion_of_literal_0__t0)) ) ; : ./src/identity.zz:132 ; && (declare-fun var2944_infix_expression__t0 () Bool) (assert (= var2944_infix_expression__t0 (and var2940_infix_expression__t0 var2943_infix_expression__t0)) ) (push 1) (assert (and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 (or (not var2932_interpretation_of_theory_safe_over_addressof_xaddr___t0 ) (not var2933_interpretation_of_theory_safe_over_infix_expression__t0 ) (not var2934_interpretation_of_theory_safe_over_cast_of_e__t0 ) (not var2937_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 ) (not var2944_infix_expression__t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var2932_interpretation_of_theory_safe_over_addressof_xaddr___t0 () Bool) (declare-fun var2933_interpretation_of_theory_safe_over_infix_expression__t0 () Bool) (declare-fun var2934_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var2937_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (declare-fun var2938_literal_150__t0 () (_ BitVec 64)) (declare-fun var2941_literal_0__t0 () (_ BitVec 64)) ; borrows after call ; 1777 to temporal +1 because of function borrow (declare-fun var1777_deref_S1775_e___t30 () (_ BitVec 64)) (assert (= var1777_deref_S1775_e___t30 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1777_deref_S1775_e___t30 var1777_deref_S1775_e___t29) ) ) ; end of borrows after call ; : ./src/endpoint.zz:273 ; e, dbn.mem + dbn.len, 150 - dbn.len, &xaddr) ; callsite effects (declare-fun var2945_return_value_of___carrier__identity__address_to_str__t0 () (_ BitVec 64)) (declare-fun var2947_safe_return_value_of___carrier__identity__address_to_str_____safe_return___t0 () Bool) (assert (= var2947_safe_return_value_of___carrier__identity__address_to_str_____safe_return___t0 (theory1_safe var2945_return_value_of___carrier__identity__address_to_str__t0) ) ) (declare-fun var2946_return__t1 () (_ BitVec 64)) (assert (= var2947_safe_return_value_of___carrier__identity__address_to_str_____safe_return___t0 (theory1_safe var2946_return__t1) ) ) (declare-fun var2948_nullterm_return_value_of___carrier__identity__address_to_str_____nullterm_return___t0 () Bool) (assert (= var2948_nullterm_return_value_of___carrier__identity__address_to_str_____nullterm_return___t0 (theory2_nullterm var2945_return_value_of___carrier__identity__address_to_str__t0) ) ) (assert (= var2948_nullterm_return_value_of___carrier__identity__address_to_str_____nullterm_return___t0 (theory2_nullterm var2946_return__t1) ) ) (declare-fun var2946_return__t0 () (_ BitVec 64)) (assert (= var2946_return__t1 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2945_return_value_of___carrier__identity__address_to_str__t0 var2946_return__t0) ) ) ; : ./src/identity.zz:133 ; to) ; call of nullterm ; : ./src/identity.zz:133 ; nullterm ; : ./src/identity.zz:133 ; to ; : ./src/identity.zz:133 ; to) (declare-fun var2949_interpretation_of_theory_nullterm_over_infix_expression__t0 () Bool) (assert (= var2949_interpretation_of_theory_nullterm_over_infix_expression__t0 (theory2_nullterm var2921_infix_expression__t0) ) ) (assert (! var2949_interpretation_of_theory_nullterm_over_infix_expression__t0 :named A179))(check-sat) ; : ./src/endpoint.zz:273 ; e, dbn.mem + dbn.len, 150 - dbn.len, &xaddr) (declare-fun var2950_safe_return_____safe_return_value_of___carrier__identity__address_to_str___t0 () Bool) (assert (= var2950_safe_return_____safe_return_value_of___carrier__identity__address_to_str___t0 (theory1_safe var2946_return__t1) ) ) (declare-fun var2945_return_value_of___carrier__identity__address_to_str__t1 () (_ BitVec 64)) (assert (= var2950_safe_return_____safe_return_value_of___carrier__identity__address_to_str___t0 (theory1_safe var2945_return_value_of___carrier__identity__address_to_str__t1) ) ) (declare-fun var2951_nullterm_return_____nullterm_return_value_of___carrier__identity__address_to_str___t0 () Bool) (assert (= var2951_nullterm_return_____nullterm_return_value_of___carrier__identity__address_to_str___t0 (theory2_nullterm var2946_return__t1) ) ) (assert (= var2951_nullterm_return_____nullterm_return_value_of___carrier__identity__address_to_str___t0 (theory2_nullterm var2945_return_value_of___carrier__identity__address_to_str__t1) ) ) (assert (= var2945_return_value_of___carrier__identity__address_to_str__t1 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2946_return__t1 var2945_return_value_of___carrier__identity__address_to_str__t0) ) ) ; end of callsite effects ; : ./src/endpoint.zz:273 ; dbn.len += identity::address_to_str(e, dbn.mem + dbn.len, 150 - dbn.len, &xaddr) (declare-fun var2952_assign_inter__t0 () (_ BitVec 64)) (assert (= var2952_assign_inter__t0 (bvadd var2875_dbn_len__t0 var2945_return_value_of___carrier__identity__address_to_str__t1)) ) (declare-fun var2953_safe_assign_inter_____safe_dbn_len___t0 () Bool) (assert (= var2953_safe_assign_inter_____safe_dbn_len___t0 (theory1_safe var2952_assign_inter__t0) ) ) (declare-fun var2875_dbn_len__t1 () (_ BitVec 64)) (assert (= var2953_safe_assign_inter_____safe_dbn_len___t0 (theory1_safe var2875_dbn_len__t1) ) ) (declare-fun var2954_nullterm_assign_inter_____nullterm_dbn_len___t0 () Bool) (assert (= var2954_nullterm_assign_inter_____nullterm_dbn_len___t0 (theory2_nullterm var2952_assign_inter__t0) ) ) (assert (= var2954_nullterm_assign_inter_____nullterm_dbn_len___t0 (theory2_nullterm var2875_dbn_len__t1) ) ) (assert (= var2875_dbn_len__t1 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2952_assign_inter__t0 var2875_dbn_len__t0) ) ) ; : ./src/endpoint.zz:274 ; e) ; call of ::err::check ; : ./src/endpoint.zz:274 ; err::check ; : ./src/endpoint.zz:274 ; e (declare-fun var2955_cast_of_e__t0 () (_ BitVec 64)) (assert (! (= var2955_cast_of_e__t0 var1775_e__t0) :named A180)); : ./src/endpoint.zz:149 ; +et ; : /home/aep/proj/zz/modules/err/./src/lib.zz:28 ; callsite_source (declare-fun var2956_literal_string____src_endpoint_zz___t0 () (_ BitVec 64)) (declare-fun var2957_true__t0 () Bool) (assert (= var2957_true__t0 (theory1_safe var2956_literal_string____src_endpoint_zz___t0) ) ) (assert var2957_true__t0 ) (declare-fun var2958_true__t0 () Bool) (assert (= var2958_true__t0 (theory2_nullterm var2956_literal_string____src_endpoint_zz___t0) ) ) (assert var2958_true__t0 ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:29 ; callsite_source (declare-fun var2959_literal_string____carrier__endpoint__poll___t0 () (_ BitVec 64)) (declare-fun var2960_true__t0 () Bool) (assert (= var2960_true__t0 (theory1_safe var2959_literal_string____carrier__endpoint__poll___t0) ) ) (assert var2960_true__t0 ) (declare-fun var2961_true__t0 () Bool) (assert (= var2961_true__t0 (theory2_nullterm var2959_literal_string____carrier__endpoint__poll___t0) ) ) (assert var2961_true__t0 ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:30 ; callsite_source ; literal expr (declare-fun var2962_literal_274__t0 () (_ BitVec 64)) (assert (= var2962_literal_274__t0 (_ bv274 64)) ) ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:27 ; * ; call of safe (declare-fun var2963_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (assert (= var2963_interpretation_of_theory_safe_over_cast_of_e__t0 (theory1_safe var2955_cast_of_e__t0) ) ) (push 1) (assert (and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 (or (not var2963_interpretation_of_theory_safe_over_cast_of_e__t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var2963_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) ; borrows after call ; 1777 to temporal +1 because of function borrow (declare-fun var1777_deref_S1775_e___t31 () (_ BitVec 64)) (assert (= var1777_deref_S1775_e___t31 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1777_deref_S1775_e___t31 var1777_deref_S1775_e___t30) ) ) ; end of borrows after call ; : ./src/endpoint.zz:274 ; e) ; callsite effects (declare-fun var2965_return__t1 () Bool) (declare-fun var2964_return_value_of___err__check__t0 () Bool) (declare-fun var2965_return__t0 () Bool) (assert (= var2965_return__t1 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2964_return_value_of___err__check__t0 var2965_return__t0) ) ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self) ; call of ::err::checked ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; checked ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self (declare-fun var2966_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2966_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t31) :named A181)); : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self (declare-fun var2967_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var2967_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t31) :named A182)); : /home/aep/proj/zz/modules/err/./src/lib.zz:32 ; *self) (declare-fun var2968_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (assert (= var2968_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 (theory86___err__checked var2967_cast_of_deref_S1775_e___t0) ) ) (assert (! var2968_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 :named A183))(check-sat) (declare-fun var2964_return_value_of___err__check__t1 () Bool) (assert (= var2964_return_value_of___err__check__t1 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2965_return__t1 var2964_return_value_of___err__check__t0) ) ) ; end of callsite effects (check-sat) (get-value ( var2964_return_value_of___err__check__t1 ) ) ; = "false" (push 1) (assert (not (= var2964_return_value_of___err__check__t1 false)) ) (check-sat) (pop 1) ; : ./src/endpoint.zz:274 ; e) ; : ./src/endpoint.zz:274 ; if err::check(e) {return io::Result::Error; } ; : ./src/endpoint.zz:274 ; io::Result::Error (declare-fun var2969_safe___io__Result__Error_____safe_return___t0 () Bool) (assert (= var2969_safe___io__Result__Error_____safe_return___t0 (theory1_safe var250___io__Result__Error__t0) ) ) (declare-fun var1787_return__t16 () (_ BitVec 64)) (assert (= var2969_safe___io__Result__Error_____safe_return___t0 (theory1_safe var1787_return__t16) ) ) (declare-fun var2970_nullterm___io__Result__Error_____nullterm_return___t0 () Bool) (assert (= var2970_nullterm___io__Result__Error_____nullterm_return___t0 (theory2_nullterm var250___io__Result__Error__t0) ) ) (assert (= var2970_nullterm___io__Result__Error_____nullterm_return___t0 (theory2_nullterm var1787_return__t16) ) ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:24 ; Result (declare-fun var2971_implicit_coercion_of___io__Result__Error__t0 () (_ BitVec 64)) (assert (! (= var2971_implicit_coercion_of___io__Result__Error__t0 var250___io__Result__Error__t0) :named A184))(assert (= var1787_return__t16 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2964_return_value_of___err__check__t1 ) var2971_implicit_coercion_of___io__Result__Error__t0 var1787_return__t15) ) ) ; end branch ; branch returned. the rest of the function only happens if the condition leading to return never happened ; (not ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2964_return_value_of___err__check__t1 )) (assert (not ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2964_return_value_of___err__check__t1 )) ) ; : ./src/endpoint.zz:276 ; "attempt %zu sending %zu bytes to %.*s", ; self->statem.connecting.retry_sending, ; self->statem.connecting.initiator.pkt.len, ; (int)dbn.len, dbn.mem) ; call of ::log::debug ; : ./src/endpoint.zz:276 ; log::debug ; : ./src/endpoint.zz:276 ; "attempt %zu sending %zu bytes to %.*s" (declare-fun var2972_literal_string__attempt__zu_sending__zu_bytes_to____s___t0 () (_ BitVec 64)) (declare-fun var2973_true__t0 () Bool) (assert (= var2973_true__t0 (theory1_safe var2972_literal_string__attempt__zu_sending__zu_bytes_to____s___t0) ) ) (assert var2973_true__t0 ) (declare-fun var2974_true__t0 () Bool) (assert (= var2974_true__t0 (theory2_nullterm var2972_literal_string__attempt__zu_sending__zu_bytes_to____s___t0) ) ) (assert var2974_true__t0 ) (declare-fun var2975_literal_string__attempt__zu_sending__zu_bytes_to____s___t0 () (_ BitVec 64)) (declare-fun var2976_true__t0 () Bool) (assert (= var2976_true__t0 (theory1_safe var2975_literal_string__attempt__zu_sending__zu_bytes_to____s___t0) ) ) (assert var2976_true__t0 ) (declare-fun var2977_true__t0 () Bool) (assert (= var2977_true__t0 (theory2_nullterm var2975_literal_string__attempt__zu_sending__zu_bytes_to____s___t0) ) ) (assert var2977_true__t0 ) ; : /home/aep/proj/zz/modules/log/./src/lib.zz:47 ; callsite_source (declare-fun var2978_literal_string__carrier__endpoint___t0 () (_ BitVec 64)) (declare-fun var2979_true__t0 () Bool) (assert (= var2979_true__t0 (theory1_safe var2978_literal_string__carrier__endpoint___t0) ) ) (assert var2979_true__t0 ) (declare-fun var2980_true__t0 () Bool) (assert (= var2980_true__t0 (theory2_nullterm var2978_literal_string__carrier__endpoint___t0) ) ) (assert var2980_true__t0 ) ; : ./src/endpoint.zz:276 ; "attempt %zu sending %zu bytes to %.*s" (declare-fun var2981_literal_string__attempt__zu_sending__zu_bytes_to____s___t0 () (_ BitVec 64)) (declare-fun var2982_true__t0 () Bool) (assert (= var2982_true__t0 (theory1_safe var2981_literal_string__attempt__zu_sending__zu_bytes_to____s___t0) ) ) (assert var2982_true__t0 ) (declare-fun var2983_true__t0 () Bool) (assert (= var2983_true__t0 (theory2_nullterm var2981_literal_string__attempt__zu_sending__zu_bytes_to____s___t0) ) ) (assert var2983_true__t0 ) ; : ./src/endpoint.zz:277 ; . ; : ./src/endpoint.zz:277 ; . ; : ./src/endpoint.zz:277 ; -> ; : ./src/endpoint.zz:277 ; self ; : ./src/endpoint.zz:278 ; . ; : ./src/endpoint.zz:278 ; . ; : ./src/endpoint.zz:278 ; . ; : ./src/endpoint.zz:278 ; . ; : ./src/endpoint.zz:278 ; -> ; : ./src/endpoint.zz:278 ; self ; : ./src/endpoint.zz:279 ; (int)dbn.len ; : ./src/endpoint.zz:279 ; . ; : ./src/endpoint.zz:279 ; dbn ; : ./src/endpoint.zz:279 ; (int)dbn.len (declare-fun var2984_cast_of_dbn_len__t0 () (_ BitVec 64)) (assert (! (= var2984_cast_of_dbn_len__t0 var2875_dbn_len__t1) :named A185)); : ./src/endpoint.zz:279 ; . ; : ./src/endpoint.zz:279 ; dbn ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/log/./src/lib.zz:47 ; * ; call of safe (declare-fun var2985_interpretation_of_theory_safe_over_literal_string__attempt__zu_sending__zu_bytes_to____s___t0 () Bool) (assert (= var2985_interpretation_of_theory_safe_over_literal_string__attempt__zu_sending__zu_bytes_to____s___t0 (theory1_safe var2981_literal_string__attempt__zu_sending__zu_bytes_to____s___t0) ) ) ; : /home/aep/proj/zz/modules/log/./src/lib.zz:47 ; * ; call of safe (declare-fun var2986_interpretation_of_theory_safe_over_literal_string__carrier__endpoint___t0 () Bool) (assert (= var2986_interpretation_of_theory_safe_over_literal_string__carrier__endpoint___t0 (theory1_safe var2978_literal_string__carrier__endpoint___t0) ) ) (push 1) (assert (and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 (or (not var2985_interpretation_of_theory_safe_over_literal_string__attempt__zu_sending__zu_bytes_to____s___t0 ) (not var2986_interpretation_of_theory_safe_over_literal_string__carrier__endpoint___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var2985_interpretation_of_theory_safe_over_literal_string__attempt__zu_sending__zu_bytes_to____s___t0 () Bool) (declare-fun var2986_interpretation_of_theory_safe_over_literal_string__carrier__endpoint___t0 () Bool) ; borrows after call ; end of borrows after call ; : ./src/endpoint.zz:276 ; "attempt %zu sending %zu bytes to %.*s", ; self->statem.connecting.retry_sending, ; self->statem.connecting.initiator.pkt.len, ; (int)dbn.len, dbn.mem) ; callsite effects ; end of callsite effects ; : ./src/endpoint.zz:281 ; ++self->statem.connecting.retry_sending ; : ./src/endpoint.zz:281 ; . ; : ./src/endpoint.zz:281 ; . ; : ./src/endpoint.zz:281 ; -> ; : ./src/endpoint.zz:281 ; self ; : ./src/endpoint.zz:281 ; ++self->statem.connecting.retry_sending (declare-fun var2989_safe_deref_S1770_self__statem_connecting_retry_sending_____safe_copy_of_deref_S1770_self__statem_connecting_retry_sending_before_unary___t0 () Bool) (assert (= var2989_safe_deref_S1770_self__statem_connecting_retry_sending_____safe_copy_of_deref_S1770_self__statem_connecting_retry_sending_before_unary___t0 (theory1_safe var2287_deref_S1770_self__statem_connecting_retry_sending__t2) ) ) (declare-fun var2988_copy_of_deref_S1770_self__statem_connecting_retry_sending_before_unary__t1 () (_ BitVec 64)) (assert (= var2989_safe_deref_S1770_self__statem_connecting_retry_sending_____safe_copy_of_deref_S1770_self__statem_connecting_retry_sending_before_unary___t0 (theory1_safe var2988_copy_of_deref_S1770_self__statem_connecting_retry_sending_before_unary__t1) ) ) (declare-fun var2990_nullterm_deref_S1770_self__statem_connecting_retry_sending_____nullterm_copy_of_deref_S1770_self__statem_connecting_retry_sending_before_unary___t0 () Bool) (assert (= var2990_nullterm_deref_S1770_self__statem_connecting_retry_sending_____nullterm_copy_of_deref_S1770_self__statem_connecting_retry_sending_before_unary___t0 (theory2_nullterm var2287_deref_S1770_self__statem_connecting_retry_sending__t2) ) ) (assert (= var2990_nullterm_deref_S1770_self__statem_connecting_retry_sending_____nullterm_copy_of_deref_S1770_self__statem_connecting_retry_sending_before_unary___t0 (theory2_nullterm var2988_copy_of_deref_S1770_self__statem_connecting_retry_sending_before_unary__t1) ) ) (declare-fun var2988_copy_of_deref_S1770_self__statem_connecting_retry_sending_before_unary__t0 () (_ BitVec 64)) (assert (= var2988_copy_of_deref_S1770_self__statem_connecting_retry_sending_before_unary__t1 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2287_deref_S1770_self__statem_connecting_retry_sending__t2 var2988_copy_of_deref_S1770_self__statem_connecting_retry_sending_before_unary__t0) ) ) (declare-fun var2287_deref_S1770_self__statem_connecting_retry_sending__t3 () (_ BitVec 64)) (assert (= var2287_deref_S1770_self__statem_connecting_retry_sending__t3 (bvadd var2287_deref_S1770_self__statem_connecting_retry_sending__t2 (_ bv1 64)) ) ) ; : ./src/endpoint.zz:283 ; usize mut i= 0 ; : ./src/endpoint.zz:283 ; 0 ; literal expr (declare-fun var2992_literal_0__t0 () (_ BitVec 64)) (assert (= var2992_literal_0__t0 (_ bv0 64)) ) ; : ./src/endpoint.zz:283 ; usize mut i= 0 (declare-fun var2993_safe_literal_0_____safe_i___t0 () Bool) (assert (= var2993_safe_literal_0_____safe_i___t0 (theory1_safe var2992_literal_0__t0) ) ) (declare-fun var2991_i__t1 () (_ BitVec 64)) (assert (= var2993_safe_literal_0_____safe_i___t0 (theory1_safe var2991_i__t1) ) ) (declare-fun var2994_nullterm_literal_0_____nullterm_i___t0 () Bool) (assert (= var2994_nullterm_literal_0_____nullterm_i___t0 (theory2_nullterm var2992_literal_0__t0) ) ) (assert (= var2994_nullterm_literal_0_____nullterm_i___t0 (theory2_nullterm var2991_i__t1) ) ) ; : ./src/endpoint.zz:283 ; 0 (declare-fun var2995_implicit_coercion_of_literal_0__t0 () (_ BitVec 64)) (assert (! (= var2995_implicit_coercion_of_literal_0__t0 var2992_literal_0__t0) :named A186))(declare-fun var2991_i__t0 () (_ BitVec 64)) (assert (= var2991_i__t1 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2995_implicit_coercion_of_literal_0__t0 var2991_i__t0) ) ) ; : ./src/endpoint.zz:283 ; i++ ; : ./src/endpoint.zz:283 ; i ; : ./src/endpoint.zz:283 ; i++ (declare-fun var2991_i__t2 () (_ BitVec 64)) (declare-fun var2996_previous_value_of_i__t1 () (_ BitVec 64)) (assert (= var2991_i__t2 (bvadd var2996_previous_value_of_i__t1 (_ bv1 64)) ) ) ; : ./src/endpoint.zz:283 ; < ; : ./src/endpoint.zz:283 ; i ; : ./src/endpoint.zz:283 ; len(PORTS)) ; call of static ; : ./src/endpoint.zz:283 ; PORTS) ; call of len ; : ./src/endpoint.zz:283 ; PORTS ; : ./src/endpoint.zz:283 ; PORTS) (declare-fun var2997_literal_5__t0 () (_ BitVec 64)) (assert (= var2997_literal_5__t0 (_ bv5 64)) ) (check-sat) (get-value ( var2997_literal_5__t0 ) ) ; = "#b0000000000000000000000000000000000000000000000000000000000000101" (push 1) (assert (not (= var2997_literal_5__t0 #b0000000000000000000000000000000000000000000000000000000000000101)) ) (check-sat) (pop 1) (push 1) (check-sat) (pop 1) ; : ./src/endpoint.zz:283 ; len(PORTS)) (declare-fun var2998_literal_5__t0 () (_ BitVec 64)) (assert (= var2998_literal_5__t0 (_ bv5 64)) ) (declare-fun var2999_implicit_coercion_of_literal_5__t0 () (_ BitVec 64)) (assert (! (= var2999_implicit_coercion_of_literal_5__t0 var2998_literal_5__t0) :named A187)); : ./src/endpoint.zz:283 ; < (declare-fun var3000_infix_expression__t0 () Bool) (assert (= var3000_infix_expression__t0 (bvult var2991_i__t2 var2999_implicit_coercion_of_literal_5__t0)) ) (assert (! var3000_infix_expression__t0 :named A188))(check-sat) ; : ./src/endpoint.zz:284 ; PORTS[i]) ; call ; : ./src/endpoint.zz:284 ; . ; : ./src/endpoint.zz:284 ; ip4addr ; : ./src/endpoint.zz:284 ; . ; : ./src/endpoint.zz:284 ; PORTS[i]) ; call of ::net::address::set_port ; : ./src/endpoint.zz:284 ; . ; : ./src/endpoint.zz:284 ; ip4addr ; : ./src/endpoint.zz:284 ; . (declare-fun var3002_addressof_ip4addr___t0 () (_ BitVec 64)) (declare-fun var3003_len_addressof_ip4addr____t0 () (_ BitVec 64)) (assert (= var3003_len_addressof_ip4addr____t0 (theory0_len var3002_addressof_ip4addr___t0) ) ) (assert (= var3003_len_addressof_ip4addr____t0 (_ bv1 64)) ) (assert (= var3002_addressof_ip4addr___t0 (_ bv2637 64)) ) (declare-fun var3004_true__t0 () Bool) (assert (= var3004_true__t0 (theory1_safe var3002_addressof_ip4addr___t0) ) ) (assert var3004_true__t0 ) ; : ./src/endpoint.zz:284 ; ip4addr ; : ./src/endpoint.zz:284 ; . (declare-fun var3005_addressof_ip4addr___t0 () (_ BitVec 64)) (declare-fun var3006_len_addressof_ip4addr____t0 () (_ BitVec 64)) (assert (= var3006_len_addressof_ip4addr____t0 (theory0_len var3005_addressof_ip4addr___t0) ) ) (assert (= var3006_len_addressof_ip4addr____t0 (_ bv1 64)) ) (assert (= var3005_addressof_ip4addr___t0 (_ bv2637 64)) ) (declare-fun var3007_true__t0 () Bool) (assert (= var3007_true__t0 (theory1_safe var3005_addressof_ip4addr___t0) ) ) (assert var3007_true__t0 ) ; : ./src/endpoint.zz:284 ; [ ; : ./src/endpoint.zz:284 ; PORTS ; : ./src/endpoint.zz:284 ; i (check-sat) (get-value ( var2991_i__t2 ) ) ; = "#b0000000000000000000000000000000000000000000000000000000000000001" (push 1) (assert (not (= var2991_i__t2 #b0000000000000000000000000000000000000000000000000000000000000001)) ) (check-sat) (pop 1) ; begin array bounds ; : ./src/endpoint.zz:284 ; [ (declare-fun var3008_len___carrier__endpoint__PORTS___t0 () (_ BitVec 64)) (assert (= var3008_len___carrier__endpoint__PORTS___t0 (theory0_len var1731___carrier__endpoint__PORTS__t1) ) ) (declare-fun var3009_i___len___carrier__endpoint__PORTS___t0 () Bool) (assert (= var3009_i___len___carrier__endpoint__PORTS___t0 (bvult var2991_i__t2 var3008_len___carrier__endpoint__PORTS___t0)) ) ; assert that length less than index is true (push 1) (assert (and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 (or (not var3009_i___len___carrier__endpoint__PORTS___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ; : ./src/endpoint.zz:284 ; PORTS ; : ./src/endpoint.zz:284 ; i (check-sat) (get-value ( var2991_i__t2 ) ) ; = "#b0000000000000000000000000000000000000000000000000000000000000011" (push 1) (assert (not (= var2991_i__t2 #b0000000000000000000000000000000000000000000000000000000000000011)) ) (check-sat) (pop 1) ; begin array bounds ; : ./src/endpoint.zz:284 ; [ (declare-fun var3011_len___carrier__endpoint__PORTS___t0 () (_ BitVec 64)) (assert (= var3011_len___carrier__endpoint__PORTS___t0 (theory0_len var1731___carrier__endpoint__PORTS__t1) ) ) (declare-fun var3012_i___len___carrier__endpoint__PORTS___t0 () Bool) (assert (= var3012_i___len___carrier__endpoint__PORTS___t0 (bvult var2991_i__t2 var3011_len___carrier__endpoint__PORTS___t0)) ) ; assert that length less than index is true (push 1) (assert (and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 (or (not var3012_i___len___carrier__endpoint__PORTS___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ; : ./src/endpoint.zz:284 ; . ; : ./src/endpoint.zz:284 ; ip4addr ; : ./src/endpoint.zz:284 ; . (declare-fun var3014_addressof_ip4addr___t0 () (_ BitVec 64)) (declare-fun var3015_len_addressof_ip4addr____t0 () (_ BitVec 64)) (assert (= var3015_len_addressof_ip4addr____t0 (theory0_len var3014_addressof_ip4addr___t0) ) ) (assert (= var3015_len_addressof_ip4addr____t0 (_ bv1 64)) ) (assert (= var3014_addressof_ip4addr___t0 (_ bv2637 64)) ) (declare-fun var3016_true__t0 () Bool) (assert (= var3016_true__t0 (theory1_safe var3014_addressof_ip4addr___t0) ) ) (assert var3016_true__t0 ) ; : ./src/endpoint.zz:284 ; [ ; : ./src/endpoint.zz:284 ; PORTS ; : ./src/endpoint.zz:284 ; i (check-sat) (get-value ( var2991_i__t2 ) ) ; = "#b0000000000000000000000000000000000000000000000000000000000000001" (push 1) (assert (not (= var2991_i__t2 #b0000000000000000000000000000000000000000000000000000000000000001)) ) (check-sat) (pop 1) ; begin array bounds ; : ./src/endpoint.zz:284 ; [ (declare-fun var3017_len___carrier__endpoint__PORTS___t0 () (_ BitVec 64)) (assert (= var3017_len___carrier__endpoint__PORTS___t0 (theory0_len var1731___carrier__endpoint__PORTS__t1) ) ) (declare-fun var3018_i___len___carrier__endpoint__PORTS___t0 () Bool) (assert (= var3018_i___len___carrier__endpoint__PORTS___t0 (bvult var2991_i__t2 var3017_len___carrier__endpoint__PORTS___t0)) ) ; assert that length less than index is true (push 1) (assert (and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 (or (not var3018_i___len___carrier__endpoint__PORTS___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/net/./src/address.zz:313 ; * ; call of safe (declare-fun var3020_interpretation_of_theory_safe_over_addressof_ip4addr___t0 () Bool) (assert (= var3020_interpretation_of_theory_safe_over_addressof_ip4addr___t0 (theory1_safe var3014_addressof_ip4addr___t0) ) ) (push 1) (assert (and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 (or (not var3020_interpretation_of_theory_safe_over_addressof_ip4addr___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var3020_interpretation_of_theory_safe_over_addressof_ip4addr___t0 () Bool) ; borrows after call ; 2637 to temporal +1 because of function borrow (declare-fun var2637_ip4addr__t3 () (_ BitVec 64)) (assert (= var2637_ip4addr__t3 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2637_ip4addr__t3 var2637_ip4addr__t2) ) ) ; end of borrows after call ; : ./src/endpoint.zz:284 ; PORTS[i]) ; callsite effects ; end of callsite effects ; : ./src/endpoint.zz:285 ; PORTS[i]) ; call ; : ./src/endpoint.zz:285 ; . ; : ./src/endpoint.zz:285 ; ip6addr ; : ./src/endpoint.zz:285 ; . ; : ./src/endpoint.zz:285 ; PORTS[i]) ; call of ::net::address::set_port ; : ./src/endpoint.zz:285 ; . ; : ./src/endpoint.zz:285 ; ip6addr ; : ./src/endpoint.zz:285 ; . (declare-fun var3023_addressof_ip6addr___t0 () (_ BitVec 64)) (declare-fun var3024_len_addressof_ip6addr____t0 () (_ BitVec 64)) (assert (= var3024_len_addressof_ip6addr____t0 (theory0_len var3023_addressof_ip6addr___t0) ) ) (assert (= var3024_len_addressof_ip6addr____t0 (_ bv1 64)) ) (assert (= var3023_addressof_ip6addr___t0 (_ bv2644 64)) ) (declare-fun var3025_true__t0 () Bool) (assert (= var3025_true__t0 (theory1_safe var3023_addressof_ip6addr___t0) ) ) (assert var3025_true__t0 ) ; : ./src/endpoint.zz:285 ; ip6addr ; : ./src/endpoint.zz:285 ; . (declare-fun var3026_addressof_ip6addr___t0 () (_ BitVec 64)) (declare-fun var3027_len_addressof_ip6addr____t0 () (_ BitVec 64)) (assert (= var3027_len_addressof_ip6addr____t0 (theory0_len var3026_addressof_ip6addr___t0) ) ) (assert (= var3027_len_addressof_ip6addr____t0 (_ bv1 64)) ) (assert (= var3026_addressof_ip6addr___t0 (_ bv2644 64)) ) (declare-fun var3028_true__t0 () Bool) (assert (= var3028_true__t0 (theory1_safe var3026_addressof_ip6addr___t0) ) ) (assert var3028_true__t0 ) ; : ./src/endpoint.zz:285 ; [ ; : ./src/endpoint.zz:285 ; PORTS ; : ./src/endpoint.zz:285 ; i (check-sat) (get-value ( var2991_i__t2 ) ) ; = "#b0000000000000000000000000000000000000000000000000000000000000011" (push 1) (assert (not (= var2991_i__t2 #b0000000000000000000000000000000000000000000000000000000000000011)) ) (check-sat) (pop 1) ; begin array bounds ; : ./src/endpoint.zz:285 ; [ (declare-fun var3029_len___carrier__endpoint__PORTS___t0 () (_ BitVec 64)) (assert (= var3029_len___carrier__endpoint__PORTS___t0 (theory0_len var1731___carrier__endpoint__PORTS__t1) ) ) (declare-fun var3030_i___len___carrier__endpoint__PORTS___t0 () Bool) (assert (= var3030_i___len___carrier__endpoint__PORTS___t0 (bvult var2991_i__t2 var3029_len___carrier__endpoint__PORTS___t0)) ) ; assert that length less than index is true (push 1) (assert (and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 (or (not var3030_i___len___carrier__endpoint__PORTS___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ; : ./src/endpoint.zz:285 ; PORTS ; : ./src/endpoint.zz:285 ; i (check-sat) (get-value ( var2991_i__t2 ) ) ; = "#b0000000000000000000000000000000000000000000000000000000000000001" (push 1) (assert (not (= var2991_i__t2 #b0000000000000000000000000000000000000000000000000000000000000001)) ) (check-sat) (pop 1) ; begin array bounds ; : ./src/endpoint.zz:285 ; [ (declare-fun var3032_len___carrier__endpoint__PORTS___t0 () (_ BitVec 64)) (assert (= var3032_len___carrier__endpoint__PORTS___t0 (theory0_len var1731___carrier__endpoint__PORTS__t1) ) ) (declare-fun var3033_i___len___carrier__endpoint__PORTS___t0 () Bool) (assert (= var3033_i___len___carrier__endpoint__PORTS___t0 (bvult var2991_i__t2 var3032_len___carrier__endpoint__PORTS___t0)) ) ; assert that length less than index is true (push 1) (assert (and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 (or (not var3033_i___len___carrier__endpoint__PORTS___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ; : ./src/endpoint.zz:285 ; . ; : ./src/endpoint.zz:285 ; ip6addr ; : ./src/endpoint.zz:285 ; . (declare-fun var3035_addressof_ip6addr___t0 () (_ BitVec 64)) (declare-fun var3036_len_addressof_ip6addr____t0 () (_ BitVec 64)) (assert (= var3036_len_addressof_ip6addr____t0 (theory0_len var3035_addressof_ip6addr___t0) ) ) (assert (= var3036_len_addressof_ip6addr____t0 (_ bv1 64)) ) (assert (= var3035_addressof_ip6addr___t0 (_ bv2644 64)) ) (declare-fun var3037_true__t0 () Bool) (assert (= var3037_true__t0 (theory1_safe var3035_addressof_ip6addr___t0) ) ) (assert var3037_true__t0 ) ; : ./src/endpoint.zz:285 ; [ ; : ./src/endpoint.zz:285 ; PORTS ; : ./src/endpoint.zz:285 ; i (check-sat) (get-value ( var2991_i__t2 ) ) ; = "#b0000000000000000000000000000000000000000000000000000000000000011" (push 1) (assert (not (= var2991_i__t2 #b0000000000000000000000000000000000000000000000000000000000000011)) ) (check-sat) (pop 1) ; begin array bounds ; : ./src/endpoint.zz:285 ; [ (declare-fun var3038_len___carrier__endpoint__PORTS___t0 () (_ BitVec 64)) (assert (= var3038_len___carrier__endpoint__PORTS___t0 (theory0_len var1731___carrier__endpoint__PORTS__t1) ) ) (declare-fun var3039_i___len___carrier__endpoint__PORTS___t0 () Bool) (assert (= var3039_i___len___carrier__endpoint__PORTS___t0 (bvult var2991_i__t2 var3038_len___carrier__endpoint__PORTS___t0)) ) ; assert that length less than index is true (push 1) (assert (and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 (or (not var3039_i___len___carrier__endpoint__PORTS___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/net/./src/address.zz:313 ; * ; call of safe (declare-fun var3041_interpretation_of_theory_safe_over_addressof_ip6addr___t0 () Bool) (assert (= var3041_interpretation_of_theory_safe_over_addressof_ip6addr___t0 (theory1_safe var3035_addressof_ip6addr___t0) ) ) (push 1) (assert (and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 (or (not var3041_interpretation_of_theory_safe_over_addressof_ip6addr___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var3041_interpretation_of_theory_safe_over_addressof_ip6addr___t0 () Bool) ; borrows after call ; 2644 to temporal +1 because of function borrow (declare-fun var2644_ip6addr__t3 () (_ BitVec 64)) (assert (= var2644_ip6addr__t3 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var2644_ip6addr__t3 var2644_ip6addr__t2) ) ) ; end of borrows after call ; : ./src/endpoint.zz:285 ; PORTS[i]) ; callsite effects ; end of callsite effects ; : ./src/endpoint.zz:287 ; e, &self->statem.connecting.initiator.pkt, &ip4addr) ; call ; : ./src/endpoint.zz:287 ; . ; : ./src/endpoint.zz:287 ; -> ; : ./src/endpoint.zz:287 ; self ; : ./src/endpoint.zz:287 ; . ; : ./src/endpoint.zz:287 ; e, &self->statem.connecting.initiator.pkt, &ip4addr) ; call of ::net::udp::sendto ; : ./src/endpoint.zz:287 ; . ; : ./src/endpoint.zz:287 ; -> ; : ./src/endpoint.zz:287 ; self ; : ./src/endpoint.zz:287 ; . (declare-fun var3044_addressof_deref_S1770_self__udp4___t0 () (_ BitVec 64)) (declare-fun var3045_len_addressof_deref_S1770_self__udp4____t0 () (_ BitVec 64)) (assert (= var3045_len_addressof_deref_S1770_self__udp4____t0 (theory0_len var3044_addressof_deref_S1770_self__udp4___t0) ) ) (assert (= var3045_len_addressof_deref_S1770_self__udp4____t0 (_ bv1 64)) ) (assert (= var3044_addressof_deref_S1770_self__udp4___t0 (_ bv1949 64)) ) (declare-fun var3046_true__t0 () Bool) (assert (= var3046_true__t0 (theory1_safe var3044_addressof_deref_S1770_self__udp4___t0) ) ) (assert var3046_true__t0 ) ; : ./src/endpoint.zz:287 ; -> ; : ./src/endpoint.zz:287 ; self ; : ./src/endpoint.zz:287 ; . (declare-fun var3047_addressof_deref_S1770_self__udp4___t0 () (_ BitVec 64)) (declare-fun var3048_len_addressof_deref_S1770_self__udp4____t0 () (_ BitVec 64)) (assert (= var3048_len_addressof_deref_S1770_self__udp4____t0 (theory0_len var3047_addressof_deref_S1770_self__udp4___t0) ) ) (assert (= var3048_len_addressof_deref_S1770_self__udp4____t0 (_ bv1 64)) ) (assert (= var3047_addressof_deref_S1770_self__udp4___t0 (_ bv1949 64)) ) (declare-fun var3049_true__t0 () Bool) (assert (= var3049_true__t0 (theory1_safe var3047_addressof_deref_S1770_self__udp4___t0) ) ) (assert var3049_true__t0 ) ; : ./src/endpoint.zz:287 ; e ; : ./src/endpoint.zz:287 ; &self->statem.connecting.initiator.pkt ; : ./src/endpoint.zz:287 ; . ; : ./src/endpoint.zz:287 ; . ; : ./src/endpoint.zz:287 ; . ; : ./src/endpoint.zz:287 ; -> ; : ./src/endpoint.zz:287 ; self ; : ./src/endpoint.zz:287 ; &self->statem.connecting.initiator.pkt (declare-fun var3050_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () (_ BitVec 64)) (declare-fun var3051_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 () (_ BitVec 64)) (assert (= var3051_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 (theory0_len var3050_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) ) ) (assert (= var3051_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 (_ bv1 64)) ) (assert (= var3050_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 (_ bv2102 64)) ) (declare-fun var3052_true__t0 () Bool) (assert (= var3052_true__t0 (theory1_safe var3050_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) ) ) (assert var3052_true__t0 ) ; : ./src/endpoint.zz:287 ; . ; : ./src/endpoint.zz:287 ; . ; : ./src/endpoint.zz:287 ; . ; : ./src/endpoint.zz:287 ; -> ; : ./src/endpoint.zz:287 ; self ; : ./src/endpoint.zz:287 ; &self->statem.connecting.initiator.pkt (declare-fun var3053_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () (_ BitVec 64)) (declare-fun var3054_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 () (_ BitVec 64)) (assert (= var3054_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 (theory0_len var3053_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) ) ) (assert (= var3054_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 (_ bv1 64)) ) (assert (= var3053_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 (_ bv2102 64)) ) (declare-fun var3055_true__t0 () Bool) (assert (= var3055_true__t0 (theory1_safe var3053_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) ) ) (assert var3055_true__t0 ) ; : ./src/endpoint.zz:287 ; . ; : ./src/endpoint.zz:287 ; . ; : ./src/endpoint.zz:287 ; . ; : ./src/endpoint.zz:287 ; -> ; : ./src/endpoint.zz:287 ; self ; : ./src/endpoint.zz:287 ; &self->statem.connecting.initiator.pkt (declare-fun var3056_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () (_ BitVec 64)) (declare-fun var3057_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 () (_ BitVec 64)) (assert (= var3057_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 (theory0_len var3056_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) ) ) (assert (= var3057_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 (_ bv1 64)) ) (assert (= var3056_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 (_ bv2102 64)) ) (declare-fun var3058_true__t0 () Bool) (assert (= var3058_true__t0 (theory1_safe var3056_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) ) ) (assert var3058_true__t0 ) ; : ./src/endpoint.zz:287 ; &ip4addr ; : ./src/endpoint.zz:287 ; ip4addr ; : ./src/endpoint.zz:287 ; &ip4addr (declare-fun var3059_addressof_ip4addr___t0 () (_ BitVec 64)) (declare-fun var3060_len_addressof_ip4addr____t0 () (_ BitVec 64)) (assert (= var3060_len_addressof_ip4addr____t0 (theory0_len var3059_addressof_ip4addr___t0) ) ) (assert (= var3060_len_addressof_ip4addr____t0 (_ bv1 64)) ) (assert (= var3059_addressof_ip4addr___t0 (_ bv2637 64)) ) (declare-fun var3061_true__t0 () Bool) (assert (= var3061_true__t0 (theory1_safe var3059_addressof_ip4addr___t0) ) ) (assert var3061_true__t0 ) ; : ./src/endpoint.zz:287 ; ip4addr ; : ./src/endpoint.zz:287 ; &ip4addr (declare-fun var3062_addressof_ip4addr___t0 () (_ BitVec 64)) (declare-fun var3063_len_addressof_ip4addr____t0 () (_ BitVec 64)) (assert (= var3063_len_addressof_ip4addr____t0 (theory0_len var3062_addressof_ip4addr___t0) ) ) (assert (= var3063_len_addressof_ip4addr____t0 (_ bv1 64)) ) (assert (= var3062_addressof_ip4addr___t0 (_ bv2637 64)) ) (declare-fun var3064_true__t0 () Bool) (assert (= var3064_true__t0 (theory1_safe var3062_addressof_ip4addr___t0) ) ) (assert var3064_true__t0 ) ; : ./src/endpoint.zz:287 ; . ; : ./src/endpoint.zz:287 ; -> ; : ./src/endpoint.zz:287 ; self ; : ./src/endpoint.zz:287 ; . (declare-fun var3065_addressof_deref_S1770_self__udp4___t0 () (_ BitVec 64)) (declare-fun var3066_len_addressof_deref_S1770_self__udp4____t0 () (_ BitVec 64)) (assert (= var3066_len_addressof_deref_S1770_self__udp4____t0 (theory0_len var3065_addressof_deref_S1770_self__udp4___t0) ) ) (assert (= var3066_len_addressof_deref_S1770_self__udp4____t0 (_ bv1 64)) ) (assert (= var3065_addressof_deref_S1770_self__udp4___t0 (_ bv1949 64)) ) (declare-fun var3067_true__t0 () Bool) (assert (= var3067_true__t0 (theory1_safe var3065_addressof_deref_S1770_self__udp4___t0) ) ) (assert var3067_true__t0 ) ; : ./src/endpoint.zz:287 ; e (declare-fun var3068_cast_of_e__t0 () (_ BitVec 64)) (assert (! (= var3068_cast_of_e__t0 var1775_e__t0) :named A189)); : ./src/endpoint.zz:149 ; +et ; : ./src/endpoint.zz:287 ; &self->statem.connecting.initiator.pkt ; : ./src/endpoint.zz:287 ; . ; : ./src/endpoint.zz:287 ; . ; : ./src/endpoint.zz:287 ; . ; : ./src/endpoint.zz:287 ; -> ; : ./src/endpoint.zz:287 ; self ; : ./src/endpoint.zz:287 ; &self->statem.connecting.initiator.pkt (declare-fun var3069_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () (_ BitVec 64)) (declare-fun var3070_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 () (_ BitVec 64)) (assert (= var3070_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 (theory0_len var3069_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) ) ) (assert (= var3070_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 (_ bv1 64)) ) (assert (= var3069_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 (_ bv2102 64)) ) (declare-fun var3071_true__t0 () Bool) (assert (= var3071_true__t0 (theory1_safe var3069_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) ) ) (assert var3071_true__t0 ) (declare-fun var3072_cast_of_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () (_ BitVec 64)) (assert (! (= var3072_cast_of_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 var3069_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) :named A190)); : ./src/initiator.zz:24 ; +1024 ; literal expr (declare-fun var3073_literal_1024__t0 () (_ BitVec 64)) (assert (= var3073_literal_1024__t0 (_ bv1024 64)) ) ; : ./src/endpoint.zz:287 ; &ip4addr ; : ./src/endpoint.zz:287 ; ip4addr ; : ./src/endpoint.zz:287 ; &ip4addr (declare-fun var3074_addressof_ip4addr___t0 () (_ BitVec 64)) (declare-fun var3075_len_addressof_ip4addr____t0 () (_ BitVec 64)) (assert (= var3075_len_addressof_ip4addr____t0 (theory0_len var3074_addressof_ip4addr___t0) ) ) (assert (= var3075_len_addressof_ip4addr____t0 (_ bv1 64)) ) (assert (= var3074_addressof_ip4addr___t0 (_ bv2637 64)) ) (declare-fun var3076_true__t0 () Bool) (assert (= var3076_true__t0 (theory1_safe var3074_addressof_ip4addr___t0) ) ) (assert var3076_true__t0 ) ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/net/./src/udp.zz:98 ; * ; call of safe (declare-fun var3077_interpretation_of_theory_safe_over_addressof_ip4addr___t0 () Bool) (assert (= var3077_interpretation_of_theory_safe_over_addressof_ip4addr___t0 (theory1_safe var3074_addressof_ip4addr___t0) ) ) ; : /home/aep/proj/zz/modules/net/./src/udp.zz:98 ; * ; call of safe (declare-fun var3078_interpretation_of_theory_safe_over_cast_of_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () Bool) (assert (= var3078_interpretation_of_theory_safe_over_cast_of_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 (theory1_safe var3072_cast_of_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) ) ) ; : /home/aep/proj/zz/modules/net/./src/udp.zz:98 ; * ; call of safe (declare-fun var3079_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (assert (= var3079_interpretation_of_theory_safe_over_cast_of_e__t0 (theory1_safe var3068_cast_of_e__t0) ) ) ; : /home/aep/proj/zz/modules/net/./src/udp.zz:98 ; * ; call of safe (declare-fun var3080_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp4___t0 () Bool) (assert (= var3080_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp4___t0 (theory1_safe var3065_addressof_deref_S1770_self__udp4___t0) ) ) ; : /home/aep/proj/zz/modules/net/./src/udp.zz:99 ; *e) ; call of ::err::checked ; : /home/aep/proj/zz/modules/net/./src/udp.zz:99 ; err::checked ; : /home/aep/proj/zz/modules/net/./src/udp.zz:99 ; *e ; : /home/aep/proj/zz/modules/net/./src/udp.zz:99 ; e ; : /home/aep/proj/zz/modules/net/./src/udp.zz:99 ; *e ; : /home/aep/proj/zz/modules/net/./src/udp.zz:99 ; e ; : /home/aep/proj/zz/modules/net/./src/udp.zz:99 ; *e (declare-fun var3081_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var3081_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t31) :named A191)); : /home/aep/proj/zz/modules/net/./src/udp.zz:99 ; e ; : /home/aep/proj/zz/modules/net/./src/udp.zz:99 ; *e (declare-fun var3082_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var3082_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t31) :named A192)); : /home/aep/proj/zz/modules/net/./src/udp.zz:99 ; *e) (declare-fun var3083_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (assert (= var3083_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 (theory86___err__checked var3082_cast_of_deref_S1775_e___t0) ) ) (push 1) (assert (and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 (or (not var3077_interpretation_of_theory_safe_over_addressof_ip4addr___t0 ) (not var3078_interpretation_of_theory_safe_over_cast_of_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 ) (not var3079_interpretation_of_theory_safe_over_cast_of_e__t0 ) (not var3080_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp4___t0 ) (not var3083_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var3077_interpretation_of_theory_safe_over_addressof_ip4addr___t0 () Bool) (declare-fun var3078_interpretation_of_theory_safe_over_cast_of_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () Bool) (declare-fun var3079_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var3080_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp4___t0 () Bool) (declare-fun var3083_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) ; borrows after call ; 1949 to temporal +1 because of function borrow (declare-fun var1949_deref_S1770_self__udp4__t2 () (_ BitVec 64)) (assert (= var1949_deref_S1770_self__udp4__t2 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1949_deref_S1770_self__udp4__t2 var1949_deref_S1770_self__udp4__t1) ) ) ; 1777 to temporal +1 because of function borrow (declare-fun var1777_deref_S1775_e___t32 () (_ BitVec 64)) (assert (= var1777_deref_S1775_e___t32 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1777_deref_S1775_e___t32 var1777_deref_S1775_e___t31) ) ) ; end of borrows after call ; : ./src/endpoint.zz:287 ; e, &self->statem.connecting.initiator.pkt, &ip4addr) ; callsite effects ; end of callsite effects ; : ./src/endpoint.zz:288 ; e) ; call of ::err::new ; : ./src/endpoint.zz:288 ; err::new ; : ./src/endpoint.zz:288 ; e (declare-fun var3085_cast_of_e__t0 () (_ BitVec 64)) (assert (! (= var3085_cast_of_e__t0 var1775_e__t0) :named A193)); : ./src/endpoint.zz:149 ; +et ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:18 ; * ; call of safe (declare-fun var3086_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (assert (= var3086_interpretation_of_theory_safe_over_cast_of_e__t0 (theory1_safe var3085_cast_of_e__t0) ) ) (push 1) (assert (and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 (or (not var3086_interpretation_of_theory_safe_over_cast_of_e__t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var3086_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) ; borrows after call ; 1777 to temporal +1 because of function borrow (declare-fun var1777_deref_S1775_e___t33 () (_ BitVec 64)) (assert (= var1777_deref_S1775_e___t33 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1777_deref_S1775_e___t33 var1777_deref_S1775_e___t32) ) ) ; end of borrows after call ; : ./src/endpoint.zz:288 ; e) ; callsite effects (declare-fun var3087_return_value_of___err__new__t0 () (_ BitVec 64)) (declare-fun var3089_safe_return_value_of___err__new_____safe_return___t0 () Bool) (assert (= var3089_safe_return_value_of___err__new_____safe_return___t0 (theory1_safe var3087_return_value_of___err__new__t0) ) ) (declare-fun var3088_return__t1 () (_ BitVec 64)) (assert (= var3089_safe_return_value_of___err__new_____safe_return___t0 (theory1_safe var3088_return__t1) ) ) (declare-fun var3090_nullterm_return_value_of___err__new_____nullterm_return___t0 () Bool) (assert (= var3090_nullterm_return_value_of___err__new_____nullterm_return___t0 (theory2_nullterm var3087_return_value_of___err__new__t0) ) ) (assert (= var3090_nullterm_return_value_of___err__new_____nullterm_return___t0 (theory2_nullterm var3088_return__t1) ) ) (declare-fun var3088_return__t0 () (_ BitVec 64)) (assert (= var3088_return__t1 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var3087_return_value_of___err__new__t0 var3088_return__t0) ) ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; *self) ; call of ::err::checked ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; checked ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; *self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; *self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; *self (declare-fun var3091_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var3091_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t33) :named A194)); : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; *self (declare-fun var3092_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var3092_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t33) :named A195)); : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; *self) (declare-fun var3093_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (assert (= var3093_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 (theory86___err__checked var3092_cast_of_deref_S1775_e___t0) ) ) (assert (! var3093_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 :named A196))(check-sat) ; : ./src/endpoint.zz:288 ; e) (declare-fun var3094_safe_return_____safe_return_value_of___err__new___t0 () Bool) (assert (= var3094_safe_return_____safe_return_value_of___err__new___t0 (theory1_safe var3088_return__t1) ) ) (declare-fun var3087_return_value_of___err__new__t1 () (_ BitVec 64)) (assert (= var3094_safe_return_____safe_return_value_of___err__new___t0 (theory1_safe var3087_return_value_of___err__new__t1) ) ) (declare-fun var3095_nullterm_return_____nullterm_return_value_of___err__new___t0 () Bool) (assert (= var3095_nullterm_return_____nullterm_return_value_of___err__new___t0 (theory2_nullterm var3088_return__t1) ) ) (assert (= var3095_nullterm_return_____nullterm_return_value_of___err__new___t0 (theory2_nullterm var3087_return_value_of___err__new__t1) ) ) (assert (= var3087_return_value_of___err__new__t1 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var3088_return__t1 var3087_return_value_of___err__new__t0) ) ) ; end of callsite effects ; : ./src/endpoint.zz:290 ; && ; : ./src/endpoint.zz:290 ; &self->udp6) ; call of ::io::valid ; : ./src/endpoint.zz:290 ; io::valid ; : ./src/endpoint.zz:290 ; &self->udp6 ; : ./src/endpoint.zz:290 ; -> ; : ./src/endpoint.zz:290 ; self ; : ./src/endpoint.zz:290 ; &self->udp6 (declare-fun var3096_addressof_deref_S1770_self__udp6___t0 () (_ BitVec 64)) (declare-fun var3097_len_addressof_deref_S1770_self__udp6____t0 () (_ BitVec 64)) (assert (= var3097_len_addressof_deref_S1770_self__udp6____t0 (theory0_len var3096_addressof_deref_S1770_self__udp6___t0) ) ) (assert (= var3097_len_addressof_deref_S1770_self__udp6____t0 (_ bv1 64)) ) (assert (= var3096_addressof_deref_S1770_self__udp6___t0 (_ bv2021 64)) ) (declare-fun var3098_true__t0 () Bool) (assert (= var3098_true__t0 (theory1_safe var3096_addressof_deref_S1770_self__udp6___t0) ) ) (assert var3098_true__t0 ) ; : ./src/endpoint.zz:290 ; -> ; : ./src/endpoint.zz:290 ; self ; : ./src/endpoint.zz:290 ; &self->udp6 (declare-fun var3099_addressof_deref_S1770_self__udp6___t0 () (_ BitVec 64)) (declare-fun var3100_len_addressof_deref_S1770_self__udp6____t0 () (_ BitVec 64)) (assert (= var3100_len_addressof_deref_S1770_self__udp6____t0 (theory0_len var3099_addressof_deref_S1770_self__udp6___t0) ) ) (assert (= var3100_len_addressof_deref_S1770_self__udp6____t0 (_ bv1 64)) ) (assert (= var3099_addressof_deref_S1770_self__udp6___t0 (_ bv2021 64)) ) (declare-fun var3101_true__t0 () Bool) (assert (= var3101_true__t0 (theory1_safe var3099_addressof_deref_S1770_self__udp6___t0) ) ) (assert var3101_true__t0 ) (declare-fun var3102_addressof_deref_S1770_self__udp6_ctx___t0 () (_ BitVec 64)) (declare-fun var3103_len_addressof_deref_S1770_self__udp6_ctx____t0 () (_ BitVec 64)) (assert (= var3103_len_addressof_deref_S1770_self__udp6_ctx____t0 (theory0_len var3102_addressof_deref_S1770_self__udp6_ctx___t0) ) ) (assert (= var3103_len_addressof_deref_S1770_self__udp6_ctx____t0 (_ bv1 64)) ) (assert (= var3102_addressof_deref_S1770_self__udp6_ctx___t0 (_ bv2028 64)) ) (declare-fun var3104_true__t0 () Bool) (assert (= var3104_true__t0 (theory1_safe var3102_addressof_deref_S1770_self__udp6_ctx___t0) ) ) (assert var3104_true__t0 ) ; : ./src/endpoint.zz:290 ; -> ; : ./src/endpoint.zz:290 ; self ; : ./src/endpoint.zz:290 ; &self->udp6 (declare-fun var3105_addressof_deref_S1770_self__udp6___t0 () (_ BitVec 64)) (declare-fun var3106_len_addressof_deref_S1770_self__udp6____t0 () (_ BitVec 64)) (assert (= var3106_len_addressof_deref_S1770_self__udp6____t0 (theory0_len var3105_addressof_deref_S1770_self__udp6___t0) ) ) (assert (= var3106_len_addressof_deref_S1770_self__udp6____t0 (_ bv1 64)) ) (assert (= var3105_addressof_deref_S1770_self__udp6___t0 (_ bv2021 64)) ) (declare-fun var3107_true__t0 () Bool) (assert (= var3107_true__t0 (theory1_safe var3105_addressof_deref_S1770_self__udp6___t0) ) ) (assert var3107_true__t0 ) (declare-fun var3108_addressof_deref_S1770_self__udp6_ctx___t0 () (_ BitVec 64)) (declare-fun var3109_len_addressof_deref_S1770_self__udp6_ctx____t0 () (_ BitVec 64)) (assert (= var3109_len_addressof_deref_S1770_self__udp6_ctx____t0 (theory0_len var3108_addressof_deref_S1770_self__udp6_ctx___t0) ) ) (assert (= var3109_len_addressof_deref_S1770_self__udp6_ctx____t0 (_ bv1 64)) ) (assert (= var3108_addressof_deref_S1770_self__udp6_ctx___t0 (_ bv2028 64)) ) (declare-fun var3110_true__t0 () Bool) (assert (= var3110_true__t0 (theory1_safe var3108_addressof_deref_S1770_self__udp6_ctx___t0) ) ) (assert var3110_true__t0 ) ; : ./src/endpoint.zz:290 ; -> ; : ./src/endpoint.zz:290 ; self ; : ./src/endpoint.zz:290 ; &self->udp6 (declare-fun var3111_addressof_deref_S1770_self__udp6___t0 () (_ BitVec 64)) (declare-fun var3112_len_addressof_deref_S1770_self__udp6____t0 () (_ BitVec 64)) (assert (= var3112_len_addressof_deref_S1770_self__udp6____t0 (theory0_len var3111_addressof_deref_S1770_self__udp6___t0) ) ) (assert (= var3112_len_addressof_deref_S1770_self__udp6____t0 (_ bv1 64)) ) (assert (= var3111_addressof_deref_S1770_self__udp6___t0 (_ bv2021 64)) ) (declare-fun var3113_true__t0 () Bool) (assert (= var3113_true__t0 (theory1_safe var3111_addressof_deref_S1770_self__udp6___t0) ) ) (assert var3113_true__t0 ) (declare-fun var3114_addressof_deref_S1770_self__udp6_ctx___t0 () (_ BitVec 64)) (declare-fun var3115_len_addressof_deref_S1770_self__udp6_ctx____t0 () (_ BitVec 64)) (assert (= var3115_len_addressof_deref_S1770_self__udp6_ctx____t0 (theory0_len var3114_addressof_deref_S1770_self__udp6_ctx___t0) ) ) (assert (= var3115_len_addressof_deref_S1770_self__udp6_ctx____t0 (_ bv1 64)) ) (assert (= var3114_addressof_deref_S1770_self__udp6_ctx___t0 (_ bv2028 64)) ) (declare-fun var3116_true__t0 () Bool) (assert (= var3116_true__t0 (theory1_safe var3114_addressof_deref_S1770_self__udp6_ctx___t0) ) ) (assert var3116_true__t0 ) ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:52 ; * ; call of safe (declare-fun var3117_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp6_ctx___t0 () Bool) (assert (= var3117_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp6_ctx___t0 (theory1_safe var3114_addressof_deref_S1770_self__udp6_ctx___t0) ) ) (push 1) (assert (and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 (or (not var3117_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp6_ctx___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var3117_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp6_ctx___t0 () Bool) ; borrows after call ; end of borrows after call ; : ./src/endpoint.zz:290 ; &self->udp6) ; callsite effects ; end of callsite effects ; : ./src/endpoint.zz:290 ; ) ; call ; : ./src/endpoint.zz:290 ; . ; : ./src/endpoint.zz:290 ; ip6addr ; : ./src/endpoint.zz:290 ; . ; : ./src/endpoint.zz:290 ; ) ; call of ::net::address::valid ; : ./src/endpoint.zz:290 ; . ; : ./src/endpoint.zz:290 ; ip6addr ; : ./src/endpoint.zz:290 ; . (declare-fun var3120_addressof_ip6addr___t0 () (_ BitVec 64)) (declare-fun var3121_len_addressof_ip6addr____t0 () (_ BitVec 64)) (assert (= var3121_len_addressof_ip6addr____t0 (theory0_len var3120_addressof_ip6addr___t0) ) ) (assert (= var3121_len_addressof_ip6addr____t0 (_ bv1 64)) ) (assert (= var3120_addressof_ip6addr___t0 (_ bv2644 64)) ) (declare-fun var3122_true__t0 () Bool) (assert (= var3122_true__t0 (theory1_safe var3120_addressof_ip6addr___t0) ) ) (assert var3122_true__t0 ) ; : ./src/endpoint.zz:290 ; ip6addr ; : ./src/endpoint.zz:290 ; . (declare-fun var3123_addressof_ip6addr___t0 () (_ BitVec 64)) (declare-fun var3124_len_addressof_ip6addr____t0 () (_ BitVec 64)) (assert (= var3124_len_addressof_ip6addr____t0 (theory0_len var3123_addressof_ip6addr___t0) ) ) (assert (= var3124_len_addressof_ip6addr____t0 (_ bv1 64)) ) (assert (= var3123_addressof_ip6addr___t0 (_ bv2644 64)) ) (declare-fun var3125_true__t0 () Bool) (assert (= var3125_true__t0 (theory1_safe var3123_addressof_ip6addr___t0) ) ) (assert var3125_true__t0 ) ; : ./src/endpoint.zz:290 ; ip6addr ; : ./src/endpoint.zz:290 ; . (declare-fun var3126_addressof_ip6addr___t0 () (_ BitVec 64)) (declare-fun var3127_len_addressof_ip6addr____t0 () (_ BitVec 64)) (assert (= var3127_len_addressof_ip6addr____t0 (theory0_len var3126_addressof_ip6addr___t0) ) ) (assert (= var3127_len_addressof_ip6addr____t0 (_ bv1 64)) ) (assert (= var3126_addressof_ip6addr___t0 (_ bv2644 64)) ) (declare-fun var3128_true__t0 () Bool) (assert (= var3128_true__t0 (theory1_safe var3126_addressof_ip6addr___t0) ) ) (assert var3128_true__t0 ) ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/net/./src/address.zz:27 ; * ; call of safe (declare-fun var3129_interpretation_of_theory_safe_over_addressof_ip6addr___t0 () Bool) (assert (= var3129_interpretation_of_theory_safe_over_addressof_ip6addr___t0 (theory1_safe var3126_addressof_ip6addr___t0) ) ) (push 1) (assert (and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 (or (not var3129_interpretation_of_theory_safe_over_addressof_ip6addr___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var3129_interpretation_of_theory_safe_over_addressof_ip6addr___t0 () Bool) ; borrows after call ; end of borrows after call ; : ./src/endpoint.zz:290 ; ) ; callsite effects ; end of callsite effects ; : ./src/endpoint.zz:290 ; && (declare-fun var3131_infix_expression__t0 () Bool) (declare-fun var3118_return_value_of___io__valid__t0 () Bool) (declare-fun var3130_return_value_of___net__address__valid__t0 () Bool) (assert (= var3131_infix_expression__t0 (and var3118_return_value_of___io__valid__t0 var3130_return_value_of___net__address__valid__t0)) ) (check-sat) (get-value ( var3131_infix_expression__t0 ) ) ; = "false" (push 1) (assert (not (= var3131_infix_expression__t0 false)) ) (check-sat) (pop 1) ; : ./src/endpoint.zz:290 ; if io::valid(&self->udp6) && ip6addr.valid() { ; self->udp6.sendto(e, &self->statem.connecting.initiator.pkt, &ip6addr); ; err::new(e); ; } ; : ./src/endpoint.zz:291 ; e, &self->statem.connecting.initiator.pkt, &ip6addr) ; call ; : ./src/endpoint.zz:291 ; . ; : ./src/endpoint.zz:291 ; -> ; : ./src/endpoint.zz:291 ; self ; : ./src/endpoint.zz:291 ; . ; : ./src/endpoint.zz:291 ; e, &self->statem.connecting.initiator.pkt, &ip6addr) ; call of ::net::udp::sendto ; : ./src/endpoint.zz:291 ; . ; : ./src/endpoint.zz:291 ; -> ; : ./src/endpoint.zz:291 ; self ; : ./src/endpoint.zz:291 ; . (declare-fun var3133_addressof_deref_S1770_self__udp6___t0 () (_ BitVec 64)) (declare-fun var3134_len_addressof_deref_S1770_self__udp6____t0 () (_ BitVec 64)) (assert (= var3134_len_addressof_deref_S1770_self__udp6____t0 (theory0_len var3133_addressof_deref_S1770_self__udp6___t0) ) ) (assert (= var3134_len_addressof_deref_S1770_self__udp6____t0 (_ bv1 64)) ) (assert (= var3133_addressof_deref_S1770_self__udp6___t0 (_ bv2021 64)) ) (declare-fun var3135_true__t0 () Bool) (assert (= var3135_true__t0 (theory1_safe var3133_addressof_deref_S1770_self__udp6___t0) ) ) (assert var3135_true__t0 ) ; : ./src/endpoint.zz:291 ; -> ; : ./src/endpoint.zz:291 ; self ; : ./src/endpoint.zz:291 ; . (declare-fun var3136_addressof_deref_S1770_self__udp6___t0 () (_ BitVec 64)) (declare-fun var3137_len_addressof_deref_S1770_self__udp6____t0 () (_ BitVec 64)) (assert (= var3137_len_addressof_deref_S1770_self__udp6____t0 (theory0_len var3136_addressof_deref_S1770_self__udp6___t0) ) ) (assert (= var3137_len_addressof_deref_S1770_self__udp6____t0 (_ bv1 64)) ) (assert (= var3136_addressof_deref_S1770_self__udp6___t0 (_ bv2021 64)) ) (declare-fun var3138_true__t0 () Bool) (assert (= var3138_true__t0 (theory1_safe var3136_addressof_deref_S1770_self__udp6___t0) ) ) (assert var3138_true__t0 ) ; : ./src/endpoint.zz:291 ; e ; : ./src/endpoint.zz:291 ; &self->statem.connecting.initiator.pkt ; : ./src/endpoint.zz:291 ; . ; : ./src/endpoint.zz:291 ; . ; : ./src/endpoint.zz:291 ; . ; : ./src/endpoint.zz:291 ; -> ; : ./src/endpoint.zz:291 ; self ; : ./src/endpoint.zz:291 ; &self->statem.connecting.initiator.pkt (declare-fun var3139_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () (_ BitVec 64)) (declare-fun var3140_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 () (_ BitVec 64)) (assert (= var3140_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 (theory0_len var3139_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) ) ) (assert (= var3140_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 (_ bv1 64)) ) (assert (= var3139_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 (_ bv2102 64)) ) (declare-fun var3141_true__t0 () Bool) (assert (= var3141_true__t0 (theory1_safe var3139_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) ) ) (assert var3141_true__t0 ) ; : ./src/endpoint.zz:291 ; . ; : ./src/endpoint.zz:291 ; . ; : ./src/endpoint.zz:291 ; . ; : ./src/endpoint.zz:291 ; -> ; : ./src/endpoint.zz:291 ; self ; : ./src/endpoint.zz:291 ; &self->statem.connecting.initiator.pkt (declare-fun var3142_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () (_ BitVec 64)) (declare-fun var3143_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 () (_ BitVec 64)) (assert (= var3143_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 (theory0_len var3142_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) ) ) (assert (= var3143_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 (_ bv1 64)) ) (assert (= var3142_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 (_ bv2102 64)) ) (declare-fun var3144_true__t0 () Bool) (assert (= var3144_true__t0 (theory1_safe var3142_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) ) ) (assert var3144_true__t0 ) ; : ./src/endpoint.zz:291 ; . ; : ./src/endpoint.zz:291 ; . ; : ./src/endpoint.zz:291 ; . ; : ./src/endpoint.zz:291 ; -> ; : ./src/endpoint.zz:291 ; self ; : ./src/endpoint.zz:291 ; &self->statem.connecting.initiator.pkt (declare-fun var3145_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () (_ BitVec 64)) (declare-fun var3146_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 () (_ BitVec 64)) (assert (= var3146_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 (theory0_len var3145_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) ) ) (assert (= var3146_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 (_ bv1 64)) ) (assert (= var3145_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 (_ bv2102 64)) ) (declare-fun var3147_true__t0 () Bool) (assert (= var3147_true__t0 (theory1_safe var3145_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) ) ) (assert var3147_true__t0 ) ; : ./src/endpoint.zz:291 ; &ip6addr ; : ./src/endpoint.zz:291 ; ip6addr ; : ./src/endpoint.zz:291 ; &ip6addr (declare-fun var3148_addressof_ip6addr___t0 () (_ BitVec 64)) (declare-fun var3149_len_addressof_ip6addr____t0 () (_ BitVec 64)) (assert (= var3149_len_addressof_ip6addr____t0 (theory0_len var3148_addressof_ip6addr___t0) ) ) (assert (= var3149_len_addressof_ip6addr____t0 (_ bv1 64)) ) (assert (= var3148_addressof_ip6addr___t0 (_ bv2644 64)) ) (declare-fun var3150_true__t0 () Bool) (assert (= var3150_true__t0 (theory1_safe var3148_addressof_ip6addr___t0) ) ) (assert var3150_true__t0 ) ; : ./src/endpoint.zz:291 ; ip6addr ; : ./src/endpoint.zz:291 ; &ip6addr (declare-fun var3151_addressof_ip6addr___t0 () (_ BitVec 64)) (declare-fun var3152_len_addressof_ip6addr____t0 () (_ BitVec 64)) (assert (= var3152_len_addressof_ip6addr____t0 (theory0_len var3151_addressof_ip6addr___t0) ) ) (assert (= var3152_len_addressof_ip6addr____t0 (_ bv1 64)) ) (assert (= var3151_addressof_ip6addr___t0 (_ bv2644 64)) ) (declare-fun var3153_true__t0 () Bool) (assert (= var3153_true__t0 (theory1_safe var3151_addressof_ip6addr___t0) ) ) (assert var3153_true__t0 ) ; : ./src/endpoint.zz:291 ; . ; : ./src/endpoint.zz:291 ; -> ; : ./src/endpoint.zz:291 ; self ; : ./src/endpoint.zz:291 ; . (declare-fun var3154_addressof_deref_S1770_self__udp6___t0 () (_ BitVec 64)) (declare-fun var3155_len_addressof_deref_S1770_self__udp6____t0 () (_ BitVec 64)) (assert (= var3155_len_addressof_deref_S1770_self__udp6____t0 (theory0_len var3154_addressof_deref_S1770_self__udp6___t0) ) ) (assert (= var3155_len_addressof_deref_S1770_self__udp6____t0 (_ bv1 64)) ) (assert (= var3154_addressof_deref_S1770_self__udp6___t0 (_ bv2021 64)) ) (declare-fun var3156_true__t0 () Bool) (assert (= var3156_true__t0 (theory1_safe var3154_addressof_deref_S1770_self__udp6___t0) ) ) (assert var3156_true__t0 ) ; : ./src/endpoint.zz:291 ; e (declare-fun var3157_cast_of_e__t0 () (_ BitVec 64)) (assert (! (= var3157_cast_of_e__t0 var1775_e__t0) :named A197)); : ./src/endpoint.zz:149 ; +et ; : ./src/endpoint.zz:291 ; &self->statem.connecting.initiator.pkt ; : ./src/endpoint.zz:291 ; . ; : ./src/endpoint.zz:291 ; . ; : ./src/endpoint.zz:291 ; . ; : ./src/endpoint.zz:291 ; -> ; : ./src/endpoint.zz:291 ; self ; : ./src/endpoint.zz:291 ; &self->statem.connecting.initiator.pkt (declare-fun var3158_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () (_ BitVec 64)) (declare-fun var3159_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 () (_ BitVec 64)) (assert (= var3159_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 (theory0_len var3158_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) ) ) (assert (= var3159_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 (_ bv1 64)) ) (assert (= var3158_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 (_ bv2102 64)) ) (declare-fun var3160_true__t0 () Bool) (assert (= var3160_true__t0 (theory1_safe var3158_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) ) ) (assert var3160_true__t0 ) (declare-fun var3161_cast_of_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () (_ BitVec 64)) (assert (! (= var3161_cast_of_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 var3158_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) :named A198)); : ./src/initiator.zz:24 ; +1024 ; literal expr (declare-fun var3162_literal_1024__t0 () (_ BitVec 64)) (assert (= var3162_literal_1024__t0 (_ bv1024 64)) ) ; : ./src/endpoint.zz:291 ; &ip6addr ; : ./src/endpoint.zz:291 ; ip6addr ; : ./src/endpoint.zz:291 ; &ip6addr (declare-fun var3163_addressof_ip6addr___t0 () (_ BitVec 64)) (declare-fun var3164_len_addressof_ip6addr____t0 () (_ BitVec 64)) (assert (= var3164_len_addressof_ip6addr____t0 (theory0_len var3163_addressof_ip6addr___t0) ) ) (assert (= var3164_len_addressof_ip6addr____t0 (_ bv1 64)) ) (assert (= var3163_addressof_ip6addr___t0 (_ bv2644 64)) ) (declare-fun var3165_true__t0 () Bool) (assert (= var3165_true__t0 (theory1_safe var3163_addressof_ip6addr___t0) ) ) (assert var3165_true__t0 ) ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/net/./src/udp.zz:98 ; * ; call of safe (declare-fun var3166_interpretation_of_theory_safe_over_addressof_ip6addr___t0 () Bool) (assert (= var3166_interpretation_of_theory_safe_over_addressof_ip6addr___t0 (theory1_safe var3163_addressof_ip6addr___t0) ) ) ; : /home/aep/proj/zz/modules/net/./src/udp.zz:98 ; * ; call of safe (declare-fun var3167_interpretation_of_theory_safe_over_cast_of_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () Bool) (assert (= var3167_interpretation_of_theory_safe_over_cast_of_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 (theory1_safe var3161_cast_of_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0) ) ) ; : /home/aep/proj/zz/modules/net/./src/udp.zz:98 ; * ; call of safe (declare-fun var3168_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (assert (= var3168_interpretation_of_theory_safe_over_cast_of_e__t0 (theory1_safe var3157_cast_of_e__t0) ) ) ; : /home/aep/proj/zz/modules/net/./src/udp.zz:98 ; * ; call of safe (declare-fun var3169_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp6___t0 () Bool) (assert (= var3169_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp6___t0 (theory1_safe var3154_addressof_deref_S1770_self__udp6___t0) ) ) ; : /home/aep/proj/zz/modules/net/./src/udp.zz:99 ; *e) ; call of ::err::checked ; : /home/aep/proj/zz/modules/net/./src/udp.zz:99 ; err::checked ; : /home/aep/proj/zz/modules/net/./src/udp.zz:99 ; *e ; : /home/aep/proj/zz/modules/net/./src/udp.zz:99 ; e ; : /home/aep/proj/zz/modules/net/./src/udp.zz:99 ; *e ; : /home/aep/proj/zz/modules/net/./src/udp.zz:99 ; e ; : /home/aep/proj/zz/modules/net/./src/udp.zz:99 ; *e (declare-fun var3170_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var3170_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t33) :named A199)); : /home/aep/proj/zz/modules/net/./src/udp.zz:99 ; e ; : /home/aep/proj/zz/modules/net/./src/udp.zz:99 ; *e (declare-fun var3171_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var3171_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t33) :named A200)); : /home/aep/proj/zz/modules/net/./src/udp.zz:99 ; *e) (declare-fun var3172_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (assert (= var3172_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 (theory86___err__checked var3171_cast_of_deref_S1775_e___t0) ) ) (push 1) (assert (and ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var3131_infix_expression__t0 ) (or (not var3166_interpretation_of_theory_safe_over_addressof_ip6addr___t0 ) (not var3167_interpretation_of_theory_safe_over_cast_of_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 ) (not var3168_interpretation_of_theory_safe_over_cast_of_e__t0 ) (not var3169_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp6___t0 ) (not var3172_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var3166_interpretation_of_theory_safe_over_addressof_ip6addr___t0 () Bool) (declare-fun var3167_interpretation_of_theory_safe_over_cast_of_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () Bool) (declare-fun var3168_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var3169_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp6___t0 () Bool) (declare-fun var3172_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) ; borrows after call ; 2021 to temporal +1 because of function borrow (declare-fun var2021_deref_S1770_self__udp6__t1 () (_ BitVec 64)) (declare-fun var2021_deref_S1770_self__udp6__t0 () (_ BitVec 64)) (assert (= var2021_deref_S1770_self__udp6__t1 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var3131_infix_expression__t0 ) var2021_deref_S1770_self__udp6__t1 var2021_deref_S1770_self__udp6__t0) ) ) ; 1777 to temporal +1 because of function borrow (declare-fun var1777_deref_S1775_e___t34 () (_ BitVec 64)) (assert (= var1777_deref_S1775_e___t34 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var3131_infix_expression__t0 ) var1777_deref_S1775_e___t34 var1777_deref_S1775_e___t33) ) ) ; end of borrows after call ; : ./src/endpoint.zz:291 ; e, &self->statem.connecting.initiator.pkt, &ip6addr) ; callsite effects ; end of callsite effects ; : ./src/endpoint.zz:292 ; e) ; call of ::err::new ; : ./src/endpoint.zz:292 ; err::new ; : ./src/endpoint.zz:292 ; e (declare-fun var3174_cast_of_e__t0 () (_ BitVec 64)) (assert (! (= var3174_cast_of_e__t0 var1775_e__t0) :named A201)); : ./src/endpoint.zz:149 ; +et ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:18 ; * ; call of safe (declare-fun var3175_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (assert (= var3175_interpretation_of_theory_safe_over_cast_of_e__t0 (theory1_safe var3174_cast_of_e__t0) ) ) (push 1) (assert (and ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var3131_infix_expression__t0 ) (or (not var3175_interpretation_of_theory_safe_over_cast_of_e__t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var3175_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) ; borrows after call ; 1777 to temporal +1 because of function borrow (declare-fun var1777_deref_S1775_e___t35 () (_ BitVec 64)) (assert (= var1777_deref_S1775_e___t35 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var3131_infix_expression__t0 ) var1777_deref_S1775_e___t35 var1777_deref_S1775_e___t34) ) ) ; end of borrows after call ; : ./src/endpoint.zz:292 ; e) ; callsite effects (declare-fun var3176_return_value_of___err__new__t0 () (_ BitVec 64)) (declare-fun var3178_safe_return_value_of___err__new_____safe_return___t0 () Bool) (assert (= var3178_safe_return_value_of___err__new_____safe_return___t0 (theory1_safe var3176_return_value_of___err__new__t0) ) ) (declare-fun var3177_return__t1 () (_ BitVec 64)) (assert (= var3178_safe_return_value_of___err__new_____safe_return___t0 (theory1_safe var3177_return__t1) ) ) (declare-fun var3179_nullterm_return_value_of___err__new_____nullterm_return___t0 () Bool) (assert (= var3179_nullterm_return_value_of___err__new_____nullterm_return___t0 (theory2_nullterm var3176_return_value_of___err__new__t0) ) ) (assert (= var3179_nullterm_return_value_of___err__new_____nullterm_return___t0 (theory2_nullterm var3177_return__t1) ) ) (declare-fun var3177_return__t0 () (_ BitVec 64)) (assert (= var3177_return__t1 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var3131_infix_expression__t0 ) var3176_return_value_of___err__new__t0 var3177_return__t0) ) ) ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; *self) ; call of ::err::checked ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; checked ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; *self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; *self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; *self (declare-fun var3180_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var3180_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t35) :named A202)); : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; self ; : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; *self (declare-fun var3181_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var3181_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t35) :named A203)); : /home/aep/proj/zz/modules/err/./src/lib.zz:19 ; *self) (declare-fun var3182_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (assert (= var3182_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 (theory86___err__checked var3181_cast_of_deref_S1775_e___t0) ) ) (assert (! var3182_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 :named A204))(check-sat) ; : ./src/endpoint.zz:292 ; e) (declare-fun var3183_safe_return_____safe_return_value_of___err__new___t0 () Bool) (assert (= var3183_safe_return_____safe_return_value_of___err__new___t0 (theory1_safe var3177_return__t1) ) ) (declare-fun var3176_return_value_of___err__new__t1 () (_ BitVec 64)) (assert (= var3183_safe_return_____safe_return_value_of___err__new___t0 (theory1_safe var3176_return_value_of___err__new__t1) ) ) (declare-fun var3184_nullterm_return_____nullterm_return_value_of___err__new___t0 () Bool) (assert (= var3184_nullterm_return_____nullterm_return_value_of___err__new___t0 (theory2_nullterm var3177_return__t1) ) ) (assert (= var3184_nullterm_return_____nullterm_return_value_of___err__new___t0 (theory2_nullterm var3176_return_value_of___err__new__t1) ) ) (assert (= var3176_return_value_of___err__new__t1 (ite ( and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var3131_infix_expression__t0 ) var3177_return__t1 var3176_return_value_of___err__new__t0) ) ) ; end of callsite effects ; end branch ; : ./src/endpoint.zz:297 ; e, &self->udp4, io::Ready::Read) ; call ; : ./src/endpoint.zz:297 ; -> ; : ./src/endpoint.zz:297 ; async ; : ./src/endpoint.zz:297 ; -> ; : ./src/endpoint.zz:297 ; e, &self->udp4, io::Ready::Read) ; call of ::io::select ; : ./src/endpoint.zz:297 ; -> ; : ./src/endpoint.zz:297 ; async ; : ./src/endpoint.zz:297 ; e ; : ./src/endpoint.zz:297 ; &self->udp4 ; : ./src/endpoint.zz:297 ; -> ; : ./src/endpoint.zz:297 ; self ; : ./src/endpoint.zz:297 ; &self->udp4 (declare-fun var3186_addressof_deref_S1770_self__udp4___t0 () (_ BitVec 64)) (declare-fun var3187_len_addressof_deref_S1770_self__udp4____t0 () (_ BitVec 64)) (assert (= var3187_len_addressof_deref_S1770_self__udp4____t0 (theory0_len var3186_addressof_deref_S1770_self__udp4___t0) ) ) (assert (= var3187_len_addressof_deref_S1770_self__udp4____t0 (_ bv1 64)) ) (assert (= var3186_addressof_deref_S1770_self__udp4___t0 (_ bv1949 64)) ) (declare-fun var3188_true__t0 () Bool) (assert (= var3188_true__t0 (theory1_safe var3186_addressof_deref_S1770_self__udp4___t0) ) ) (assert var3188_true__t0 ) ; : ./src/endpoint.zz:297 ; -> ; : ./src/endpoint.zz:297 ; self ; : ./src/endpoint.zz:297 ; &self->udp4 (declare-fun var3189_addressof_deref_S1770_self__udp4___t0 () (_ BitVec 64)) (declare-fun var3190_len_addressof_deref_S1770_self__udp4____t0 () (_ BitVec 64)) (assert (= var3190_len_addressof_deref_S1770_self__udp4____t0 (theory0_len var3189_addressof_deref_S1770_self__udp4___t0) ) ) (assert (= var3190_len_addressof_deref_S1770_self__udp4____t0 (_ bv1 64)) ) (assert (= var3189_addressof_deref_S1770_self__udp4___t0 (_ bv1949 64)) ) (declare-fun var3191_true__t0 () Bool) (assert (= var3191_true__t0 (theory1_safe var3189_addressof_deref_S1770_self__udp4___t0) ) ) (assert var3191_true__t0 ) (declare-fun var3192_addressof_deref_S1770_self__udp4_ctx___t0 () (_ BitVec 64)) (declare-fun var3193_len_addressof_deref_S1770_self__udp4_ctx____t0 () (_ BitVec 64)) (assert (= var3193_len_addressof_deref_S1770_self__udp4_ctx____t0 (theory0_len var3192_addressof_deref_S1770_self__udp4_ctx___t0) ) ) (assert (= var3193_len_addressof_deref_S1770_self__udp4_ctx____t0 (_ bv1 64)) ) (assert (= var3192_addressof_deref_S1770_self__udp4_ctx___t0 (_ bv1956 64)) ) (declare-fun var3194_true__t0 () Bool) (assert (= var3194_true__t0 (theory1_safe var3192_addressof_deref_S1770_self__udp4_ctx___t0) ) ) (assert var3194_true__t0 ) ; : ./src/endpoint.zz:297 ; -> ; : ./src/endpoint.zz:297 ; self ; : ./src/endpoint.zz:297 ; &self->udp4 (declare-fun var3195_addressof_deref_S1770_self__udp4___t0 () (_ BitVec 64)) (declare-fun var3196_len_addressof_deref_S1770_self__udp4____t0 () (_ BitVec 64)) (assert (= var3196_len_addressof_deref_S1770_self__udp4____t0 (theory0_len var3195_addressof_deref_S1770_self__udp4___t0) ) ) (assert (= var3196_len_addressof_deref_S1770_self__udp4____t0 (_ bv1 64)) ) (assert (= var3195_addressof_deref_S1770_self__udp4___t0 (_ bv1949 64)) ) (declare-fun var3197_true__t0 () Bool) (assert (= var3197_true__t0 (theory1_safe var3195_addressof_deref_S1770_self__udp4___t0) ) ) (assert var3197_true__t0 ) (declare-fun var3198_addressof_deref_S1770_self__udp4_ctx___t0 () (_ BitVec 64)) (declare-fun var3199_len_addressof_deref_S1770_self__udp4_ctx____t0 () (_ BitVec 64)) (assert (= var3199_len_addressof_deref_S1770_self__udp4_ctx____t0 (theory0_len var3198_addressof_deref_S1770_self__udp4_ctx___t0) ) ) (assert (= var3199_len_addressof_deref_S1770_self__udp4_ctx____t0 (_ bv1 64)) ) (assert (= var3198_addressof_deref_S1770_self__udp4_ctx___t0 (_ bv1956 64)) ) (declare-fun var3200_true__t0 () Bool) (assert (= var3200_true__t0 (theory1_safe var3198_addressof_deref_S1770_self__udp4_ctx___t0) ) ) (assert var3200_true__t0 ) ; : ./src/endpoint.zz:297 ; io::Ready::Read ; : ./src/endpoint.zz:297 ; async ; : ./src/endpoint.zz:297 ; e (declare-fun var3201_cast_of_e__t0 () (_ BitVec 64)) (assert (! (= var3201_cast_of_e__t0 var1775_e__t0) :named A205)); : ./src/endpoint.zz:149 ; +et ; : ./src/endpoint.zz:297 ; &self->udp4 ; : ./src/endpoint.zz:297 ; -> ; : ./src/endpoint.zz:297 ; self ; : ./src/endpoint.zz:297 ; &self->udp4 (declare-fun var3202_addressof_deref_S1770_self__udp4___t0 () (_ BitVec 64)) (declare-fun var3203_len_addressof_deref_S1770_self__udp4____t0 () (_ BitVec 64)) (assert (= var3203_len_addressof_deref_S1770_self__udp4____t0 (theory0_len var3202_addressof_deref_S1770_self__udp4___t0) ) ) (assert (= var3203_len_addressof_deref_S1770_self__udp4____t0 (_ bv1 64)) ) (assert (= var3202_addressof_deref_S1770_self__udp4___t0 (_ bv1949 64)) ) (declare-fun var3204_true__t0 () Bool) (assert (= var3204_true__t0 (theory1_safe var3202_addressof_deref_S1770_self__udp4___t0) ) ) (assert var3204_true__t0 ) (declare-fun var3205_addressof_deref_S1770_self__udp4_ctx___t0 () (_ BitVec 64)) (declare-fun var3206_len_addressof_deref_S1770_self__udp4_ctx____t0 () (_ BitVec 64)) (assert (= var3206_len_addressof_deref_S1770_self__udp4_ctx____t0 (theory0_len var3205_addressof_deref_S1770_self__udp4_ctx___t0) ) ) (assert (= var3206_len_addressof_deref_S1770_self__udp4_ctx____t0 (_ bv1 64)) ) (assert (= var3205_addressof_deref_S1770_self__udp4_ctx___t0 (_ bv1956 64)) ) (declare-fun var3207_true__t0 () Bool) (assert (= var3207_true__t0 (theory1_safe var3205_addressof_deref_S1770_self__udp4_ctx___t0) ) ) (assert var3207_true__t0 ) ; : ./src/endpoint.zz:297 ; io::Ready::Read ;callsite_assert (push 1) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:192 ; * ; call of safe (declare-fun var3208_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp4_ctx___t0 () Bool) (assert (= var3208_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp4_ctx___t0 (theory1_safe var3205_addressof_deref_S1770_self__udp4_ctx___t0) ) ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:192 ; * ; call of safe (declare-fun var3209_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (assert (= var3209_interpretation_of_theory_safe_over_cast_of_e__t0 (theory1_safe var3201_cast_of_e__t0) ) ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:192 ; * ; call of safe (declare-fun var3210_interpretation_of_theory_safe_over_async__t0 () Bool) (assert (= var3210_interpretation_of_theory_safe_over_async__t0 (theory1_safe var1780_async__t0) ) ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; *e) ; call of ::err::checked ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; err::checked ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; *e ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; e ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; *e ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; e ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; *e (declare-fun var3211_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var3211_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t35) :named A206)); : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; e ; : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; *e (declare-fun var3212_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var3212_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t35) :named A207)); : /home/aep/proj/zz/modules/io/./src/lib.zz:193 ; *e) (declare-fun var3213_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (assert (= var3213_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 (theory86___err__checked var3212_cast_of_deref_S1775_e___t0) ) ) (push 1) (assert (and var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 (or (not var3208_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp4_ctx___t0 ) (not var3209_interpretation_of_theory_safe_over_cast_of_e__t0 ) (not var3210_interpretation_of_theory_safe_over_async__t0 ) (not var3213_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var3208_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp4_ctx___t0 () Bool) (declare-fun var3209_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var3210_interpretation_of_theory_safe_over_async__t0 () Bool) (declare-fun var3213_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) ; borrows after call ; 1900 to temporal +1 because of function borrow (declare-fun var1900_deref_S1780_async___t7 () (_ BitVec 64)) (assert (= var1900_deref_S1780_async___t7 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1900_deref_S1780_async___t7 var1900_deref_S1780_async___t6) ) ) ; 1777 to temporal +1 because of function borrow (declare-fun var1777_deref_S1775_e___t36 () (_ BitVec 64)) (assert (= var1777_deref_S1775_e___t36 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1777_deref_S1775_e___t36 var1777_deref_S1775_e___t35) ) ) ; 1956 to temporal +1 because of function borrow (declare-fun var1956_deref_S1770_self__udp4_ctx__t2 () (_ BitVec 64)) (assert (= var1956_deref_S1770_self__udp4_ctx__t2 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var1956_deref_S1770_self__udp4_ctx__t2 var1956_deref_S1770_self__udp4_ctx__t1) ) ) ; end of borrows after call ; : ./src/endpoint.zz:297 ; e, &self->udp4, io::Ready::Read) ; callsite effects ; end of callsite effects ; : ./src/endpoint.zz:300 ; io::Result::Later (declare-fun var3215_safe___io__Result__Later_____safe_return___t0 () Bool) (assert (= var3215_safe___io__Result__Later_____safe_return___t0 (theory1_safe var249___io__Result__Later__t0) ) ) (declare-fun var1787_return__t17 () (_ BitVec 64)) (assert (= var3215_safe___io__Result__Later_____safe_return___t0 (theory1_safe var1787_return__t17) ) ) (declare-fun var3216_nullterm___io__Result__Later_____nullterm_return___t0 () Bool) (assert (= var3216_nullterm___io__Result__Later_____nullterm_return___t0 (theory2_nullterm var249___io__Result__Later__t0) ) ) (assert (= var3216_nullterm___io__Result__Later_____nullterm_return___t0 (theory2_nullterm var1787_return__t17) ) ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:24 ; Result (declare-fun var3217_implicit_coercion_of___io__Result__Later__t0 () (_ BitVec 64)) (assert (! (= var3217_implicit_coercion_of___io__Result__Later__t0 var249___io__Result__Later__t0) :named A208))(assert (= var1787_return__t17 (ite var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0 var3217_implicit_coercion_of___io__Result__Later__t0 var1787_return__t16) ) ) ; branch returned. the rest of the function only happens if the condition leading to return never happened ; (not var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0) (assert (not var1874_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connecting___t0) ) ; : ./src/endpoint.zz:302 ; State::Connected ; : ./src/endpoint.zz:28 ; State (declare-fun var3218_implicit_coercion_of___carrier__endpoint__State__Connected__t0 () (_ BitVec 64)) (assert (! (= var3218_implicit_coercion_of___carrier__endpoint__State__Connected__t0 var1412___carrier__endpoint__State__Connected__t0) :named A209)); : ./src/endpoint.zz:302 ; State::Connected (declare-fun var3219_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connected___t0 () Bool) (assert (= var3219_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connected___t0 (= var1791_deref_S1770_self__state__t1 var3218_implicit_coercion_of___carrier__endpoint__State__Connected__t0)) ) ; : ./src/endpoint.zz:303 ; e) ; call ; : ./src/endpoint.zz:303 ; . ; : ./src/endpoint.zz:303 ; . ; : ./src/endpoint.zz:303 ; -> ; : ./src/endpoint.zz:303 ; self ; : ./src/endpoint.zz:303 ; . ; : ./src/endpoint.zz:303 ; e) ; call of ::carrier::router::poll ; : ./src/endpoint.zz:303 ; . ; : ./src/endpoint.zz:303 ; . ; : ./src/endpoint.zz:303 ; -> ; : ./src/endpoint.zz:303 ; self ; : ./src/endpoint.zz:303 ; . (declare-fun var3221_addressof_deref_S1770_self__statem_connected___t0 () (_ BitVec 64)) (declare-fun var3222_len_addressof_deref_S1770_self__statem_connected____t0 () (_ BitVec 64)) (assert (= var3222_len_addressof_deref_S1770_self__statem_connected____t0 (theory0_len var3221_addressof_deref_S1770_self__statem_connected___t0) ) ) (assert (= var3222_len_addressof_deref_S1770_self__statem_connected____t0 (_ bv1 64)) ) (assert (= var3221_addressof_deref_S1770_self__statem_connected___t0 (_ bv2351 64)) ) (declare-fun var3223_true__t0 () Bool) (assert (= var3223_true__t0 (theory1_safe var3221_addressof_deref_S1770_self__statem_connected___t0) ) ) (assert var3223_true__t0 ) ; : ./src/endpoint.zz:303 ; . ; : ./src/endpoint.zz:303 ; -> ; : ./src/endpoint.zz:303 ; self ; : ./src/endpoint.zz:303 ; . (declare-fun var3224_addressof_deref_S1770_self__statem_connected___t0 () (_ BitVec 64)) (declare-fun var3225_len_addressof_deref_S1770_self__statem_connected____t0 () (_ BitVec 64)) (assert (= var3225_len_addressof_deref_S1770_self__statem_connected____t0 (theory0_len var3224_addressof_deref_S1770_self__statem_connected___t0) ) ) (assert (= var3225_len_addressof_deref_S1770_self__statem_connected____t0 (_ bv1 64)) ) (assert (= var3224_addressof_deref_S1770_self__statem_connected___t0 (_ bv2351 64)) ) (declare-fun var3226_true__t0 () Bool) (assert (= var3226_true__t0 (theory1_safe var3224_addressof_deref_S1770_self__statem_connected___t0) ) ) (assert var3226_true__t0 ) ; : ./src/endpoint.zz:303 ; e ; : ./src/endpoint.zz:303 ; . ; : ./src/endpoint.zz:303 ; . ; : ./src/endpoint.zz:303 ; -> ; : ./src/endpoint.zz:303 ; self ; : ./src/endpoint.zz:303 ; . (declare-fun var3227_addressof_deref_S1770_self__statem_connected___t0 () (_ BitVec 64)) (declare-fun var3228_len_addressof_deref_S1770_self__statem_connected____t0 () (_ BitVec 64)) (assert (= var3228_len_addressof_deref_S1770_self__statem_connected____t0 (theory0_len var3227_addressof_deref_S1770_self__statem_connected___t0) ) ) (assert (= var3228_len_addressof_deref_S1770_self__statem_connected____t0 (_ bv1 64)) ) (assert (= var3227_addressof_deref_S1770_self__statem_connected___t0 (_ bv2351 64)) ) (declare-fun var3229_true__t0 () Bool) (assert (= var3229_true__t0 (theory1_safe var3227_addressof_deref_S1770_self__statem_connected___t0) ) ) (assert var3229_true__t0 ) ; : ./src/endpoint.zz:303 ; e (declare-fun var3230_cast_of_e__t0 () (_ BitVec 64)) (assert (! (= var3230_cast_of_e__t0 var1775_e__t0) :named A210)); : ./src/endpoint.zz:149 ; +et ;callsite_assert (push 1) ; : ./src/router.zz:45 ; * ; call of safe (declare-fun var3231_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (assert (= var3231_interpretation_of_theory_safe_over_cast_of_e__t0 (theory1_safe var3230_cast_of_e__t0) ) ) ; : ./src/router.zz:45 ; * ; call of safe (declare-fun var3232_interpretation_of_theory_safe_over_addressof_deref_S1770_self__statem_connected___t0 () Bool) (assert (= var3232_interpretation_of_theory_safe_over_addressof_deref_S1770_self__statem_connected___t0 (theory1_safe var3227_addressof_deref_S1770_self__statem_connected___t0) ) ) ; : ./src/router.zz:46 ; *e) ; call of ::err::checked ; : ./src/router.zz:46 ; err::checked ; : ./src/router.zz:46 ; *e ; : ./src/router.zz:46 ; e ; : ./src/router.zz:46 ; *e ; : ./src/router.zz:46 ; e ; : ./src/router.zz:46 ; *e (declare-fun var3233_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var3233_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t36) :named A211)); : ./src/router.zz:46 ; e ; : ./src/router.zz:46 ; *e (declare-fun var3234_cast_of_deref_S1775_e___t0 () (_ BitVec 64)) (assert (! (= var3234_cast_of_deref_S1775_e___t0 var1777_deref_S1775_e___t36) :named A212)); : ./src/router.zz:46 ; *e) (declare-fun var3235_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (assert (= var3235_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 (theory86___err__checked var3234_cast_of_deref_S1775_e___t0) ) ) (push 1) (assert (and var3219_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connected___t0 (or (not var3231_interpretation_of_theory_safe_over_cast_of_e__t0 ) (not var3232_interpretation_of_theory_safe_over_addressof_deref_S1770_self__statem_connected___t0 ) (not var3235_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 ) )) ) (check-sat) ; unsat / pass (pop 1) ;end of callsite_assert (pop 1) (declare-fun var3231_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var3232_interpretation_of_theory_safe_over_addressof_deref_S1770_self__statem_connected___t0 () Bool) (declare-fun var3235_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) ; borrows after call ; 2351 to temporal +1 because of function borrow (declare-fun var2351_deref_S1770_self__statem_connected__t2 () (_ BitVec 64)) (assert (= var2351_deref_S1770_self__statem_connected__t2 (ite var3219_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connected___t0 var2351_deref_S1770_self__statem_connected__t2 var2351_deref_S1770_self__statem_connected__t1) ) ) ; 1777 to temporal +1 because of function borrow (declare-fun var1777_deref_S1775_e___t37 () (_ BitVec 64)) (assert (= var1777_deref_S1775_e___t37 (ite var3219_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connected___t0 var1777_deref_S1775_e___t37 var1777_deref_S1775_e___t36) ) ) ; end of borrows after call ; : ./src/endpoint.zz:303 ; e) ; callsite effects ; end of callsite effects (declare-fun var3236_return_value_of___carrier__router__poll__t0 () (_ BitVec 64)) (declare-fun var3237_safe_return_value_of___carrier__router__poll_____safe_return___t0 () Bool) (assert (= var3237_safe_return_value_of___carrier__router__poll_____safe_return___t0 (theory1_safe var3236_return_value_of___carrier__router__poll__t0) ) ) (declare-fun var1787_return__t18 () (_ BitVec 64)) (assert (= var3237_safe_return_value_of___carrier__router__poll_____safe_return___t0 (theory1_safe var1787_return__t18) ) ) (declare-fun var3238_nullterm_return_value_of___carrier__router__poll_____nullterm_return___t0 () Bool) (assert (= var3238_nullterm_return_value_of___carrier__router__poll_____nullterm_return___t0 (theory2_nullterm var3236_return_value_of___carrier__router__poll__t0) ) ) (assert (= var3238_nullterm_return_value_of___carrier__router__poll_____nullterm_return___t0 (theory2_nullterm var1787_return__t18) ) ) (assert (= var1787_return__t18 (ite var3219_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connected___t0 var3236_return_value_of___carrier__router__poll__t0 var1787_return__t17) ) ) ; branch returned. the rest of the function only happens if the condition leading to return never happened ; (not var3219_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connected___t0) (assert (not var3219_switch_branch__deref_S1770_self__state__implicit_coercion_of___carrier__endpoint__State__Connected___t0) ) ; : ./src/endpoint.zz:307 ; io::Result::Later (declare-fun var3239_safe___io__Result__Later_____safe_return___t0 () Bool) (assert (= var3239_safe___io__Result__Later_____safe_return___t0 (theory1_safe var249___io__Result__Later__t0) ) ) (declare-fun var1787_return__t19 () (_ BitVec 64)) (assert (= var3239_safe___io__Result__Later_____safe_return___t0 (theory1_safe var1787_return__t19) ) ) (declare-fun var3240_nullterm___io__Result__Later_____nullterm_return___t0 () Bool) (assert (= var3240_nullterm___io__Result__Later_____nullterm_return___t0 (theory2_nullterm var249___io__Result__Later__t0) ) ) (assert (= var3240_nullterm___io__Result__Later_____nullterm_return___t0 (theory2_nullterm var1787_return__t19) ) ) ; : /home/aep/proj/zz/modules/io/./src/lib.zz:24 ; Result (declare-fun var3241_implicit_coercion_of___io__Result__Later__t0 () (_ BitVec 64)) (assert (! (= var3241_implicit_coercion_of___io__Result__Later__t0 var249___io__Result__Later__t0) :named A213))(assert (= var1787_return__t19 (ite true var3241_implicit_coercion_of___io__Result__Later__t0 var1787_return__t18) ) ) ;end of function ::carrier::endpoint::poll (pop 1) (declare-fun var1773_deref_S1770_self__framebuffer__t0 () (_ BitVec 64)) (declare-fun var1774_len_deref_S1770_self____t0 () (_ BitVec 64)) (declare-fun var1778_deref_S1775_e__locations__t0 () (_ BitVec 64)) (declare-fun var1779_len_deref_S1775_e____t0 () (_ BitVec 64)) (declare-fun var1780_async__t0 () (_ BitVec 64)) (declare-fun var1781_interpretation_of_theory_safe_over_async__t0 () Bool) (declare-fun var1775_e__t0 () (_ BitVec 64)) (declare-fun var1782_interpretation_of_theory_safe_over_e__t0 () Bool) (declare-fun var1770_self__t0 () (_ BitVec 64)) (declare-fun var1783_interpretation_of_theory_safe_over_self__t0 () Bool) (declare-fun var1786_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (declare-fun var1788_deref_S1770_self__store__t0 () (_ BitVec 64)) (declare-fun var1789_interpretation_of_theory_safe_over_deref_S1770_self__store__t0 () Bool) (declare-fun var1790_literal_1__t0 () (_ BitVec 64)) (declare-fun var1791_deref_S1770_self__state__t0 () (_ BitVec 64)) (declare-fun var1797_addressof_deref_S1770_self__statem_bootstrap___t0 () (_ BitVec 64)) (declare-fun var1798_len_addressof_deref_S1770_self__statem_bootstrap____t0 () (_ BitVec 64)) (declare-fun var1799_true__t0 () Bool) (declare-fun var1800_addressof_deref_S1770_self__statem_bootstrap___t0 () (_ BitVec 64)) (declare-fun var1801_len_addressof_deref_S1770_self__statem_bootstrap____t0 () (_ BitVec 64)) (declare-fun var1802_true__t0 () Bool) (declare-fun var1803_addressof_deref_S1770_self__statem_bootstrap___t0 () (_ BitVec 64)) (declare-fun var1804_len_addressof_deref_S1770_self__statem_bootstrap____t0 () (_ BitVec 64)) (declare-fun var1805_true__t0 () Bool) (declare-fun var1807_interpretation_of_theory_safe_over_deref_S1770_self__store__t0 () Bool) (declare-fun var1808_interpretation_of_theory_safe_over_async__t0 () Bool) (declare-fun var1809_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var1810_interpretation_of_theory_safe_over_addressof_deref_S1770_self__statem_bootstrap___t0 () Bool) (declare-fun var1813_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (declare-fun var1814_return_value_of___carrier__bootstrap__next__t0 () (_ BitVec 64)) (declare-fun var1818_literal_string____src_endpoint_zz___t0 () (_ BitVec 64)) (declare-fun var1819_true__t0 () Bool) (declare-fun var1820_true__t0 () Bool) (declare-fun var1821_literal_string____carrier__endpoint__poll___t0 () (_ BitVec 64)) (declare-fun var1822_true__t0 () Bool) (declare-fun var1823_true__t0 () Bool) (declare-fun var1824_literal_159__t0 () (_ BitVec 64)) (declare-fun var1825_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var1830_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (declare-fun var1831_safe___io__Result__Error_____safe_return___t0 () Bool) (declare-fun var1787_return__t1 () (_ BitVec 64)) (declare-fun var1832_nullterm___io__Result__Error_____nullterm_return___t0 () Bool) (declare-fun var1837_interpretation_of_theory_safe_over_async__t0 () Bool) (declare-fun var1838_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var1839_interpretation_of_theory_safe_over_cast_of_self__t0 () Bool) (declare-fun var1842_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (declare-fun var1845_literal_string____src_endpoint_zz___t0 () (_ BitVec 64)) (declare-fun var1846_true__t0 () Bool) (declare-fun var1847_true__t0 () Bool) (declare-fun var1848_literal_string____carrier__endpoint__poll___t0 () (_ BitVec 64)) (declare-fun var1849_true__t0 () Bool) (declare-fun var1850_true__t0 () Bool) (declare-fun var1851_literal_163__t0 () (_ BitVec 64)) (declare-fun var1852_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var1857_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (declare-fun var1858_safe___io__Result__Error_____safe_return___t0 () Bool) (declare-fun var1787_return__t2 () (_ BitVec 64)) (declare-fun var1859_nullterm___io__Result__Error_____nullterm_return___t0 () Bool) (declare-fun var1864_interpretation_of_theory_safe_over_async__t0 () Bool) (declare-fun var1865_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var1866_interpretation_of_theory_safe_over_cast_of_self__t0 () Bool) (declare-fun var1869_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (declare-fun var1870_return_value_of___carrier__endpoint__poll__t0 () (_ BitVec 64)) (declare-fun var1871_safe_return_value_of___carrier__endpoint__poll_____safe_return___t0 () Bool) (declare-fun var1787_return__t3 () (_ BitVec 64)) (declare-fun var1872_nullterm_return_value_of___carrier__endpoint__poll_____nullterm_return___t0 () Bool) (declare-fun var1876_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var1877_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (declare-fun var1878_true__t0 () Bool) (declare-fun var1879_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var1880_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (declare-fun var1881_true__t0 () Bool) (declare-fun var1883_addressof_deref_S1770_self__timeout_ctx___t0 () (_ BitVec 64)) (declare-fun var1884_len_addressof_deref_S1770_self__timeout_ctx____t0 () (_ BitVec 64)) (declare-fun var1885_true__t0 () Bool) (declare-fun var1886_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var1887_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (declare-fun var1888_true__t0 () Bool) (declare-fun var1889_addressof_deref_S1770_self__timeout_ctx___t0 () (_ BitVec 64)) (declare-fun var1890_len_addressof_deref_S1770_self__timeout_ctx____t0 () (_ BitVec 64)) (declare-fun var1891_true__t0 () Bool) (declare-fun var1892_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var1893_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (declare-fun var1894_true__t0 () Bool) (declare-fun var1895_addressof_deref_S1770_self__timeout_ctx___t0 () (_ BitVec 64)) (declare-fun var1896_len_addressof_deref_S1770_self__timeout_ctx____t0 () (_ BitVec 64)) (declare-fun var1897_true__t0 () Bool) (declare-fun var1898_interpretation_of_theory_safe_over_addressof_deref_S1770_self__timeout_ctx___t0 () Bool) (declare-fun var1899_return_value_of___io__valid__t0 () Bool) (declare-fun var1901_safe_async___t0 () Bool) (declare-fun var1903_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var1904_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (declare-fun var1905_true__t0 () Bool) (declare-fun var1906_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var1907_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (declare-fun var1908_true__t0 () Bool) (declare-fun var1909_addressof_deref_S1770_self__timeout_ctx___t0 () (_ BitVec 64)) (declare-fun var1910_len_addressof_deref_S1770_self__timeout_ctx____t0 () (_ BitVec 64)) (declare-fun var1911_true__t0 () Bool) (declare-fun var1912_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var1913_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (declare-fun var1914_true__t0 () Bool) (declare-fun var1915_addressof_deref_S1770_self__timeout_ctx___t0 () (_ BitVec 64)) (declare-fun var1916_len_addressof_deref_S1770_self__timeout_ctx____t0 () (_ BitVec 64)) (declare-fun var1917_true__t0 () Bool) (declare-fun var1919_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var1920_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (declare-fun var1921_true__t0 () Bool) (declare-fun var1922_addressof_deref_S1770_self__timeout_ctx___t0 () (_ BitVec 64)) (declare-fun var1923_len_addressof_deref_S1770_self__timeout_ctx____t0 () (_ BitVec 64)) (declare-fun var1924_true__t0 () Bool) (declare-fun var1925_interpretation_of_theory_safe_over_addressof_deref_S1770_self__timeout_ctx___t0 () Bool) (declare-fun var1926_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var1927_interpretation_of_theory_safe_over_async__t0 () Bool) (declare-fun var1930_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (declare-fun var1933_literal_string____src_endpoint_zz___t0 () (_ BitVec 64)) (declare-fun var1934_true__t0 () Bool) (declare-fun var1935_true__t0 () Bool) (declare-fun var1936_literal_string____carrier__endpoint__poll___t0 () (_ BitVec 64)) (declare-fun var1937_true__t0 () Bool) (declare-fun var1938_true__t0 () Bool) (declare-fun var1939_literal_175__t0 () (_ BitVec 64)) (declare-fun var1940_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var1945_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (declare-fun var1946_safe___io__Result__Error_____safe_return___t0 () Bool) (declare-fun var1787_return__t4 () (_ BitVec 64)) (declare-fun var1947_nullterm___io__Result__Error_____nullterm_return___t0 () Bool) (declare-fun var1950_addressof_deref_S1770_self__udp4___t0 () (_ BitVec 64)) (declare-fun var1951_len_addressof_deref_S1770_self__udp4____t0 () (_ BitVec 64)) (declare-fun var1952_true__t0 () Bool) (declare-fun var1953_addressof_deref_S1770_self__udp4___t0 () (_ BitVec 64)) (declare-fun var1954_len_addressof_deref_S1770_self__udp4____t0 () (_ BitVec 64)) (declare-fun var1955_true__t0 () Bool) (declare-fun var1957_addressof_deref_S1770_self__udp4_ctx___t0 () (_ BitVec 64)) (declare-fun var1958_len_addressof_deref_S1770_self__udp4_ctx____t0 () (_ BitVec 64)) (declare-fun var1959_true__t0 () Bool) (declare-fun var1960_addressof_deref_S1770_self__udp4___t0 () (_ BitVec 64)) (declare-fun var1961_len_addressof_deref_S1770_self__udp4____t0 () (_ BitVec 64)) (declare-fun var1962_true__t0 () Bool) (declare-fun var1963_addressof_deref_S1770_self__udp4_ctx___t0 () (_ BitVec 64)) (declare-fun var1964_len_addressof_deref_S1770_self__udp4_ctx____t0 () (_ BitVec 64)) (declare-fun var1965_true__t0 () Bool) (declare-fun var1966_addressof_deref_S1770_self__udp4___t0 () (_ BitVec 64)) (declare-fun var1967_len_addressof_deref_S1770_self__udp4____t0 () (_ BitVec 64)) (declare-fun var1968_true__t0 () Bool) (declare-fun var1969_addressof_deref_S1770_self__udp4_ctx___t0 () (_ BitVec 64)) (declare-fun var1970_len_addressof_deref_S1770_self__udp4_ctx____t0 () (_ BitVec 64)) (declare-fun var1971_true__t0 () Bool) (declare-fun var1972_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp4_ctx___t0 () Bool) (declare-fun var1973_return_value_of___io__valid__t0 () Bool) (declare-fun var1975_addressof_deref_S1770_self__udp4___t0 () (_ BitVec 64)) (declare-fun var1976_len_addressof_deref_S1770_self__udp4____t0 () (_ BitVec 64)) (declare-fun var1977_true__t0 () Bool) (declare-fun var1978_addressof_deref_S1770_self__udp4___t0 () (_ BitVec 64)) (declare-fun var1979_len_addressof_deref_S1770_self__udp4____t0 () (_ BitVec 64)) (declare-fun var1980_true__t0 () Bool) (declare-fun var1981_addressof_deref_S1770_self__udp4_ctx___t0 () (_ BitVec 64)) (declare-fun var1982_len_addressof_deref_S1770_self__udp4_ctx____t0 () (_ BitVec 64)) (declare-fun var1983_true__t0 () Bool) (declare-fun var1984_addressof_deref_S1770_self__udp4___t0 () (_ BitVec 64)) (declare-fun var1985_len_addressof_deref_S1770_self__udp4____t0 () (_ BitVec 64)) (declare-fun var1986_true__t0 () Bool) (declare-fun var1987_addressof_deref_S1770_self__udp4_ctx___t0 () (_ BitVec 64)) (declare-fun var1988_len_addressof_deref_S1770_self__udp4_ctx____t0 () (_ BitVec 64)) (declare-fun var1989_true__t0 () Bool) (declare-fun var1991_addressof_deref_S1770_self__udp4___t0 () (_ BitVec 64)) (declare-fun var1992_len_addressof_deref_S1770_self__udp4____t0 () (_ BitVec 64)) (declare-fun var1993_true__t0 () Bool) (declare-fun var1994_addressof_deref_S1770_self__udp4_ctx___t0 () (_ BitVec 64)) (declare-fun var1995_len_addressof_deref_S1770_self__udp4_ctx____t0 () (_ BitVec 64)) (declare-fun var1996_true__t0 () Bool) (declare-fun var1997_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp4_ctx___t0 () Bool) (declare-fun var1998_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var1999_interpretation_of_theory_safe_over_async__t0 () Bool) (declare-fun var2002_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (declare-fun var2005_literal_string____src_endpoint_zz___t0 () (_ BitVec 64)) (declare-fun var2006_true__t0 () Bool) (declare-fun var2007_true__t0 () Bool) (declare-fun var2008_literal_string____carrier__endpoint__poll___t0 () (_ BitVec 64)) (declare-fun var2009_true__t0 () Bool) (declare-fun var2010_true__t0 () Bool) (declare-fun var2011_literal_179__t0 () (_ BitVec 64)) (declare-fun var2012_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var2017_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (declare-fun var2018_safe___io__Result__Error_____safe_return___t0 () Bool) (declare-fun var1787_return__t5 () (_ BitVec 64)) (declare-fun var2019_nullterm___io__Result__Error_____nullterm_return___t0 () Bool) (declare-fun var2022_addressof_deref_S1770_self__udp6___t0 () (_ BitVec 64)) (declare-fun var2023_len_addressof_deref_S1770_self__udp6____t0 () (_ BitVec 64)) (declare-fun var2024_true__t0 () Bool) (declare-fun var2025_addressof_deref_S1770_self__udp6___t0 () (_ BitVec 64)) (declare-fun var2026_len_addressof_deref_S1770_self__udp6____t0 () (_ BitVec 64)) (declare-fun var2027_true__t0 () Bool) (declare-fun var2029_addressof_deref_S1770_self__udp6_ctx___t0 () (_ BitVec 64)) (declare-fun var2030_len_addressof_deref_S1770_self__udp6_ctx____t0 () (_ BitVec 64)) (declare-fun var2031_true__t0 () Bool) (declare-fun var2032_addressof_deref_S1770_self__udp6___t0 () (_ BitVec 64)) (declare-fun var2033_len_addressof_deref_S1770_self__udp6____t0 () (_ BitVec 64)) (declare-fun var2034_true__t0 () Bool) (declare-fun var2035_addressof_deref_S1770_self__udp6_ctx___t0 () (_ BitVec 64)) (declare-fun var2036_len_addressof_deref_S1770_self__udp6_ctx____t0 () (_ BitVec 64)) (declare-fun var2037_true__t0 () Bool) (declare-fun var2038_addressof_deref_S1770_self__udp6___t0 () (_ BitVec 64)) (declare-fun var2039_len_addressof_deref_S1770_self__udp6____t0 () (_ BitVec 64)) (declare-fun var2040_true__t0 () Bool) (declare-fun var2041_addressof_deref_S1770_self__udp6_ctx___t0 () (_ BitVec 64)) (declare-fun var2042_len_addressof_deref_S1770_self__udp6_ctx____t0 () (_ BitVec 64)) (declare-fun var2043_true__t0 () Bool) (declare-fun var2044_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp6_ctx___t0 () Bool) (declare-fun var2045_return_value_of___io__valid__t0 () Bool) (declare-fun var2047_addressof_deref_S1770_self__udp6___t0 () (_ BitVec 64)) (declare-fun var2048_len_addressof_deref_S1770_self__udp6____t0 () (_ BitVec 64)) (declare-fun var2049_true__t0 () Bool) (declare-fun var2050_addressof_deref_S1770_self__udp6___t0 () (_ BitVec 64)) (declare-fun var2051_len_addressof_deref_S1770_self__udp6____t0 () (_ BitVec 64)) (declare-fun var2052_true__t0 () Bool) (declare-fun var2053_addressof_deref_S1770_self__udp6_ctx___t0 () (_ BitVec 64)) (declare-fun var2054_len_addressof_deref_S1770_self__udp6_ctx____t0 () (_ BitVec 64)) (declare-fun var2055_true__t0 () Bool) (declare-fun var2056_addressof_deref_S1770_self__udp6___t0 () (_ BitVec 64)) (declare-fun var2057_len_addressof_deref_S1770_self__udp6____t0 () (_ BitVec 64)) (declare-fun var2058_true__t0 () Bool) (declare-fun var2059_addressof_deref_S1770_self__udp6_ctx___t0 () (_ BitVec 64)) (declare-fun var2060_len_addressof_deref_S1770_self__udp6_ctx____t0 () (_ BitVec 64)) (declare-fun var2061_true__t0 () Bool) (declare-fun var2063_addressof_deref_S1770_self__udp6___t0 () (_ BitVec 64)) (declare-fun var2064_len_addressof_deref_S1770_self__udp6____t0 () (_ BitVec 64)) (declare-fun var2065_true__t0 () Bool) (declare-fun var2066_addressof_deref_S1770_self__udp6_ctx___t0 () (_ BitVec 64)) (declare-fun var2067_len_addressof_deref_S1770_self__udp6_ctx____t0 () (_ BitVec 64)) (declare-fun var2068_true__t0 () Bool) (declare-fun var2069_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp6_ctx___t0 () Bool) (declare-fun var2070_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var2071_interpretation_of_theory_safe_over_async__t0 () Bool) (declare-fun var2074_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (declare-fun var2077_literal_string____src_endpoint_zz___t0 () (_ BitVec 64)) (declare-fun var2078_true__t0 () Bool) (declare-fun var2079_true__t0 () Bool) (declare-fun var2080_literal_string____carrier__endpoint__poll___t0 () (_ BitVec 64)) (declare-fun var2081_true__t0 () Bool) (declare-fun var2082_true__t0 () Bool) (declare-fun var2083_literal_183__t0 () (_ BitVec 64)) (declare-fun var2084_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var2089_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (declare-fun var2090_safe___io__Result__Error_____safe_return___t0 () Bool) (declare-fun var1787_return__t6 () (_ BitVec 64)) (declare-fun var2091_nullterm___io__Result__Error_____nullterm_return___t0 () Bool) (declare-fun var2094_literal_0__t0 () (_ BitVec 64)) (declare-fun var2095_literal_array_2095__t0 () (_ BitVec 64)) (declare-fun var2096_true__t0 () Bool) (declare-fun var2097_safe_literal_array_2095_____safe_fromaddr___t0 () Bool) (declare-fun var2093_fromaddr__t1 () (_ BitVec 64)) (declare-fun var2098_nullterm_literal_array_2095_____nullterm_fromaddr___t0 () Bool) (declare-fun var2099_len_fromaddr___t0 () (_ BitVec 64)) (declare-fun var2104_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () (_ BitVec 64)) (declare-fun var2105_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 () (_ BitVec 64)) (declare-fun var2106_true__t0 () Bool) (declare-fun var2107_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () (_ BitVec 64)) (declare-fun var2108_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 () (_ BitVec 64)) (declare-fun var2109_true__t0 () Bool) (declare-fun var2110_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () (_ BitVec 64)) (declare-fun var2111_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 () (_ BitVec 64)) (declare-fun var2112_true__t0 () Bool) (declare-fun var2113_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () (_ BitVec 64)) (declare-fun var2114_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 () (_ BitVec 64)) (declare-fun var2115_true__t0 () Bool) (declare-fun var2117_literal_1024__t0 () (_ BitVec 64)) (declare-fun var2118_interpretation_of_theory_safe_over_cast_of_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () Bool) (declare-fun var2119_return_value_of___string__clear__t0 () (_ BitVec 64)) (declare-fun var2121_safe_return_value_of___string__clear_____safe_return___t0 () Bool) (declare-fun var2120_return__t1 () (_ BitVec 64)) (declare-fun var2122_nullterm_return_value_of___string__clear_____nullterm_return___t0 () Bool) (declare-fun var2124_literal_0__t0 () (_ BitVec 64)) (declare-fun var2123_deref_S1770_self__statem_connecting_initiator_pkt_len__t0 () (_ BitVec 64)) (declare-fun var2127_safe_return_____safe_return_value_of___string__clear___t0 () Bool) (declare-fun var2119_return_value_of___string__clear__t1 () (_ BitVec 64)) (declare-fun var2128_nullterm_return_____nullterm_return_value_of___string__clear___t0 () Bool) (declare-fun var2130_safe_return_value_of___string__clear_____safe_return___t0 () Bool) (declare-fun var2129_return__t1 () (_ BitVec 64)) (declare-fun var2131_nullterm_return_value_of___string__clear_____nullterm_return___t0 () Bool) (declare-fun var2132_deref_S1770_self__statem_connecting_initiator_pkt_mem__t0 () (_ BitVec 64)) (declare-fun var2133_len_deref_S1770_self__statem_connecting_initiator_pkt_mem___t0 () (_ BitVec 64)) (declare-fun var2134_true__t0 () Bool) (declare-fun var2135_interpretation_of_theory_nullterm_over_deref_S1770_self__statem_connecting_initiator_pkt_mem__t0 () Bool) (declare-fun var2136_safe_return_____safe_return_value_of___string__clear___t0 () Bool) (declare-fun var2119_return_value_of___string__clear__t2 () (_ BitVec 64)) (declare-fun var2137_nullterm_return_____nullterm_return_value_of___string__clear___t0 () Bool) (declare-fun var2139_addressof_deref_S1770_self__udp4___t0 () (_ BitVec 64)) (declare-fun var2140_len_addressof_deref_S1770_self__udp4____t0 () (_ BitVec 64)) (declare-fun var2141_true__t0 () Bool) (declare-fun var2142_addressof_deref_S1770_self__udp4___t0 () (_ BitVec 64)) (declare-fun var2143_len_addressof_deref_S1770_self__udp4____t0 () (_ BitVec 64)) (declare-fun var2144_true__t0 () Bool) (declare-fun var2145_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () (_ BitVec 64)) (declare-fun var2146_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 () (_ BitVec 64)) (declare-fun var2147_true__t0 () Bool) (declare-fun var2148_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () (_ BitVec 64)) (declare-fun var2149_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 () (_ BitVec 64)) (declare-fun var2150_true__t0 () Bool) (declare-fun var2151_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () (_ BitVec 64)) (declare-fun var2152_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 () (_ BitVec 64)) (declare-fun var2153_true__t0 () Bool) (declare-fun var2154_addressof_fromaddr___t0 () (_ BitVec 64)) (declare-fun var2155_len_addressof_fromaddr____t0 () (_ BitVec 64)) (declare-fun var2156_true__t0 () Bool) (declare-fun var2157_addressof_fromaddr___t0 () (_ BitVec 64)) (declare-fun var2158_len_addressof_fromaddr____t0 () (_ BitVec 64)) (declare-fun var2159_true__t0 () Bool) (declare-fun var2160_addressof_deref_S1770_self__udp4___t0 () (_ BitVec 64)) (declare-fun var2161_len_addressof_deref_S1770_self__udp4____t0 () (_ BitVec 64)) (declare-fun var2162_true__t0 () Bool) (declare-fun var2164_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () (_ BitVec 64)) (declare-fun var2165_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 () (_ BitVec 64)) (declare-fun var2166_true__t0 () Bool) (declare-fun var2168_literal_1024__t0 () (_ BitVec 64)) (declare-fun var2169_addressof_fromaddr___t0 () (_ BitVec 64)) (declare-fun var2170_len_addressof_fromaddr____t0 () (_ BitVec 64)) (declare-fun var2171_true__t0 () Bool) (declare-fun var2172_interpretation_of_theory_safe_over_addressof_fromaddr___t0 () Bool) (declare-fun var2173_interpretation_of_theory_safe_over_cast_of_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () Bool) (declare-fun var2174_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var2175_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp4___t0 () Bool) (declare-fun var2178_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (declare-fun var2179_return_value_of___net__udp__recvfrom__t0 () (_ BitVec 64)) (declare-fun var2183_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var2184_return_value_of___err__new__t0 () (_ BitVec 64)) (declare-fun var2186_safe_return_value_of___err__new_____safe_return___t0 () Bool) (declare-fun var2185_return__t1 () (_ BitVec 64)) (declare-fun var2187_nullterm_return_value_of___err__new_____nullterm_return___t0 () Bool) (declare-fun var2190_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (declare-fun var2191_safe_return_____safe_return_value_of___err__new___t0 () Bool) (declare-fun var2184_return_value_of___err__new__t1 () (_ BitVec 64)) (declare-fun var2192_nullterm_return_____nullterm_return_value_of___err__new___t0 () Bool) (declare-fun var2194_literal_0__t0 () (_ BitVec 64)) (declare-fun var2195_literal_array_2195__t0 () (_ BitVec 64)) (declare-fun var2196_true__t0 () Bool) (declare-fun var2197_safe_literal_array_2195_____safe_broker_chan___t0 () Bool) (declare-fun var2193_broker_chan__t1 () (_ BitVec 64)) (declare-fun var2198_nullterm_literal_array_2195_____nullterm_broker_chan___t0 () Bool) (declare-fun var2199_len_broker_chan___t0 () (_ BitVec 64)) (declare-fun var2201_literal_0__t0 () (_ BitVec 64)) (declare-fun var2202_literal_array_2202__t0 () (_ BitVec 64)) (declare-fun var2203_true__t0 () Bool) (declare-fun var2204_safe_literal_array_2202_____safe_redir___t0 () Bool) (declare-fun var2200_redir__t1 () (_ BitVec 64)) (declare-fun var2205_nullterm_literal_array_2202_____nullterm_redir___t0 () Bool) (declare-fun var2206_len_redir___t0 () (_ BitVec 64)) (declare-fun var2208_addressof_deref_S1770_self__statem_connecting_initiator___t0 () (_ BitVec 64)) (declare-fun var2209_len_addressof_deref_S1770_self__statem_connecting_initiator____t0 () (_ BitVec 64)) (declare-fun var2210_true__t0 () Bool) (declare-fun var2211_addressof_deref_S1770_self__statem_connecting_initiator___t0 () (_ BitVec 64)) (declare-fun var2212_len_addressof_deref_S1770_self__statem_connecting_initiator____t0 () (_ BitVec 64)) (declare-fun var2213_true__t0 () Bool) (declare-fun var2214_addressof_broker_chan___t0 () (_ BitVec 64)) (declare-fun var2215_len_addressof_broker_chan____t0 () (_ BitVec 64)) (declare-fun var2216_true__t0 () Bool) (declare-fun var2217_addressof_broker_chan___t0 () (_ BitVec 64)) (declare-fun var2218_len_addressof_broker_chan____t0 () (_ BitVec 64)) (declare-fun var2219_true__t0 () Bool) (declare-fun var2220_addressof_redir___t0 () (_ BitVec 64)) (declare-fun var2221_len_addressof_redir____t0 () (_ BitVec 64)) (declare-fun var2222_true__t0 () Bool) (declare-fun var2223_addressof_redir___t0 () (_ BitVec 64)) (declare-fun var2224_len_addressof_redir____t0 () (_ BitVec 64)) (declare-fun var2225_true__t0 () Bool) (declare-fun var2226_addressof_deref_S1770_self__statem_connecting_initiator___t0 () (_ BitVec 64)) (declare-fun var2227_len_addressof_deref_S1770_self__statem_connecting_initiator____t0 () (_ BitVec 64)) (declare-fun var2228_true__t0 () Bool) (declare-fun var2230_addressof_broker_chan___t0 () (_ BitVec 64)) (declare-fun var2231_len_addressof_broker_chan____t0 () (_ BitVec 64)) (declare-fun var2232_true__t0 () Bool) (declare-fun var2233_addressof_redir___t0 () (_ BitVec 64)) (declare-fun var2234_len_addressof_redir____t0 () (_ BitVec 64)) (declare-fun var2235_true__t0 () Bool) (declare-fun var2236_interpretation_of_theory_safe_over_addressof_redir___t0 () Bool) (declare-fun var2237_interpretation_of_theory_safe_over_addressof_broker_chan___t0 () Bool) (declare-fun var2238_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var2239_interpretation_of_theory_safe_over_addressof_deref_S1770_self__statem_connecting_initiator___t0 () Bool) (declare-fun var2242_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (declare-fun var2245_literal_string____src_endpoint_zz___t0 () (_ BitVec 64)) (declare-fun var2246_true__t0 () Bool) (declare-fun var2247_true__t0 () Bool) (declare-fun var2248_literal_string____carrier__endpoint__poll___t0 () (_ BitVec 64)) (declare-fun var2249_true__t0 () Bool) (declare-fun var2250_true__t0 () Bool) (declare-fun var2251_literal_196__t0 () (_ BitVec 64)) (declare-fun var2252_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var2257_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (declare-fun var2260_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var2263_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var2264_return_value_of___err__new__t0 () (_ BitVec 64)) (declare-fun var2266_safe_return_value_of___err__new_____safe_return___t0 () Bool) (declare-fun var2265_return__t1 () (_ BitVec 64)) (declare-fun var2267_nullterm_return_value_of___err__new_____nullterm_return___t0 () Bool) (declare-fun var2270_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (declare-fun var2271_safe_return_____safe_return_value_of___err__new___t0 () Bool) (declare-fun var2264_return_value_of___err__new__t1 () (_ BitVec 64)) (declare-fun var2272_nullterm_return_____nullterm_return_value_of___err__new___t0 () Bool) (declare-fun var2274_literal_0__t0 () (_ BitVec 64)) (declare-fun var2273_redir_protocol__t0 () (_ BitVec 8)) (declare-fun var2278_addressof_deref_S1770_self__statem_connecting_current_broker___t0 () (_ BitVec 64)) (declare-fun var2279_len_addressof_deref_S1770_self__statem_connecting_current_broker____t0 () (_ BitVec 64)) (declare-fun var2280_true__t0 () Bool) (declare-fun var2281_addressof_redir___t0 () (_ BitVec 64)) (declare-fun var2282_len_addressof_redir____t0 () (_ BitVec 64)) (declare-fun var2283_true__t0 () Bool) (declare-fun var2288_literal_0__t0 () (_ BitVec 64)) (declare-fun var2290_safe_implicit_coercion_of_literal_0_____safe_deref_S1770_self__statem_connecting_retry_sending___t0 () Bool) (declare-fun var2287_deref_S1770_self__statem_connecting_retry_sending__t1 () (_ BitVec 64)) (declare-fun var2291_nullterm_implicit_coercion_of_literal_0_____nullterm_deref_S1770_self__statem_connecting_retry_sending___t0 () Bool) (declare-fun var2293_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var2294_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (declare-fun var2295_true__t0 () Bool) (declare-fun var2296_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var2297_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (declare-fun var2298_true__t0 () Bool) (declare-fun var2299_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var2300_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (declare-fun var2301_true__t0 () Bool) (declare-fun var2302_interpretation_of_theory_safe_over_addressof_deref_S1770_self__timeout___t0 () Bool) (declare-fun var2307_interpretation_of_theory_safe_over_async__t0 () Bool) (declare-fun var2308_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var2309_interpretation_of_theory_safe_over_cast_of_self__t0 () Bool) (declare-fun var2312_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (declare-fun var2313_return_value_of___carrier__endpoint__poll__t0 () (_ BitVec 64)) (declare-fun var2314_safe_return_value_of___carrier__endpoint__poll_____safe_return___t0 () Bool) (declare-fun var1787_return__t7 () (_ BitVec 64)) (declare-fun var2315_nullterm_return_value_of___carrier__endpoint__poll_____nullterm_return___t0 () Bool) (declare-fun var2317_safe_implicit_coercion_of___carrier__endpoint__State__Connected_____safe_deref_S1770_self__state___t0 () Bool) (declare-fun var1791_deref_S1770_self__state__t1 () (_ BitVec 64)) (declare-fun var2318_nullterm_implicit_coercion_of___carrier__endpoint__State__Connected_____nullterm_deref_S1770_self__state___t0 () Bool) (declare-fun var2319_addressof_deref_S1770_self__statem___t0 () (_ BitVec 64)) (declare-fun var2320_len_addressof_deref_S1770_self__statem____t0 () (_ BitVec 64)) (declare-fun var2321_true__t0 () Bool) (declare-fun var2322_literal_0__t0 () (_ BitVec 64)) (declare-fun var2328_addressof_broker_chan_peering___t0 () (_ BitVec 64)) (declare-fun var2329_len_addressof_broker_chan_peering____t0 () (_ BitVec 64)) (declare-fun var2330_true__t0 () Bool) (declare-fun var2331_addressof_broker_chan_peering___t0 () (_ BitVec 64)) (declare-fun var2332_len_addressof_broker_chan_peering____t0 () (_ BitVec 64)) (declare-fun var2333_true__t0 () Bool) (declare-fun var2334_addressof_broker_chan_peering___t0 () (_ BitVec 64)) (declare-fun var2335_len_addressof_broker_chan_peering____t0 () (_ BitVec 64)) (declare-fun var2336_true__t0 () Bool) (declare-fun var2337_interpretation_of_theory_safe_over_addressof_broker_chan_peering___t0 () Bool) (declare-fun var2341_addressof_deref_S1770_self__framebuffer___t0 () (_ BitVec 64)) (declare-fun var2342_len_addressof_deref_S1770_self__framebuffer____t0 () (_ BitVec 64)) (declare-fun var2343_true__t0 () Bool) (declare-fun var2345_safe_implicit_cast_of_addressof_deref_S1770_self__framebuffer______safe_broker_chan_q_allocator___t0 () Bool) (declare-fun var2340_broker_chan_q_allocator__t1 () (_ BitVec 64)) (declare-fun var2346_nullterm_implicit_cast_of_addressof_deref_S1770_self__framebuffer______nullterm_broker_chan_q_allocator___t0 () Bool) (declare-fun var2349_safe_cast_of___carrier__endpoint__on_remote_open_____safe_broker_chan_on_open___t0 () Bool) (declare-fun var2347_broker_chan_on_open__t1 () (_ BitVec 64)) (declare-fun var2350_nullterm_cast_of___carrier__endpoint__on_remote_open_____nullterm_broker_chan_on_open___t0 () Bool) (declare-fun var2352_return_value_of___carrier__router__new__t0 () (_ BitVec 64)) (declare-fun var2353_safe_return_value_of___carrier__router__new_____safe_deref_S1770_self__statem_connected___t0 () Bool) (declare-fun var2351_deref_S1770_self__statem_connected__t1 () (_ BitVec 64)) (declare-fun var2354_nullterm_return_value_of___carrier__router__new_____nullterm_deref_S1770_self__statem_connected___t0 () Bool) (declare-fun var2355_safe___io__Result__Ready_____safe_return___t0 () Bool) (declare-fun var1787_return__t8 () (_ BitVec 64)) (declare-fun var2356_nullterm___io__Result__Ready_____nullterm_return___t0 () Bool) (declare-fun var2359_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var2360_return_value_of___err__new__t0 () (_ BitVec 64)) (declare-fun var2362_safe_return_value_of___err__new_____safe_return___t0 () Bool) (declare-fun var2361_return__t1 () (_ BitVec 64)) (declare-fun var2363_nullterm_return_value_of___err__new_____nullterm_return___t0 () Bool) (declare-fun var2366_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (declare-fun var2367_safe_return_____safe_return_value_of___err__new___t0 () Bool) (declare-fun var2360_return_value_of___err__new__t1 () (_ BitVec 64)) (declare-fun var2368_nullterm_return_____nullterm_return_value_of___err__new___t0 () Bool) (declare-fun var2370_literal_string____src_endpoint_zz___t0 () (_ BitVec 64)) (declare-fun var2371_true__t0 () Bool) (declare-fun var2372_true__t0 () Bool) (declare-fun var2373_literal_string____carrier__endpoint__poll___t0 () (_ BitVec 64)) (declare-fun var2374_true__t0 () Bool) (declare-fun var2375_true__t0 () Bool) (declare-fun var2376_literal_216__t0 () (_ BitVec 64)) (declare-fun var2377_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var2382_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (declare-fun var2383_safe___io__Result__Error_____safe_return___t0 () Bool) (declare-fun var1787_return__t9 () (_ BitVec 64)) (declare-fun var2384_nullterm___io__Result__Error_____nullterm_return___t0 () Bool) (declare-fun var2387_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var2388_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (declare-fun var2389_true__t0 () Bool) (declare-fun var2390_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var2391_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (declare-fun var2392_true__t0 () Bool) (declare-fun var2393_addressof_deref_S1770_self__timeout_ctx___t0 () (_ BitVec 64)) (declare-fun var2394_len_addressof_deref_S1770_self__timeout_ctx____t0 () (_ BitVec 64)) (declare-fun var2395_true__t0 () Bool) (declare-fun var2396_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var2397_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (declare-fun var2398_true__t0 () Bool) (declare-fun var2399_addressof_deref_S1770_self__timeout_ctx___t0 () (_ BitVec 64)) (declare-fun var2400_len_addressof_deref_S1770_self__timeout_ctx____t0 () (_ BitVec 64)) (declare-fun var2401_true__t0 () Bool) (declare-fun var2402_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var2403_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (declare-fun var2404_true__t0 () Bool) (declare-fun var2405_addressof_deref_S1770_self__timeout_ctx___t0 () (_ BitVec 64)) (declare-fun var2406_len_addressof_deref_S1770_self__timeout_ctx____t0 () (_ BitVec 64)) (declare-fun var2407_true__t0 () Bool) (declare-fun var2408_interpretation_of_theory_safe_over_addressof_deref_S1770_self__timeout_ctx___t0 () Bool) (declare-fun var2409_return_value_of___io__valid__t0 () Bool) (declare-fun var2410_buf__t0 () (_ BitVec 64)) (declare-fun var2411_true__t0 () Bool) (declare-fun var2412_literal_16__t0 () (_ BitVec 64)) (declare-fun var2413_len_buf___t0 () (_ BitVec 64)) (declare-fun var2415_literal_16__t0 () (_ BitVec 64)) (declare-fun var2416_safe_literal_16_____safe_l___t0 () Bool) (declare-fun var2414_l__t1 () (_ BitVec 64)) (declare-fun var2417_nullterm_literal_16_____nullterm_l___t0 () Bool) (declare-fun var2421_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var2422_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (declare-fun var2423_true__t0 () Bool) (declare-fun var2424_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var2425_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (declare-fun var2426_true__t0 () Bool) (declare-fun var2427_addressof_l___t0 () (_ BitVec 64)) (declare-fun var2428_len_addressof_l____t0 () (_ BitVec 64)) (declare-fun var2429_true__t0 () Bool) (declare-fun var2430_addressof_l___t0 () (_ BitVec 64)) (declare-fun var2431_len_addressof_l____t0 () (_ BitVec 64)) (declare-fun var2432_true__t0 () Bool) (declare-fun var2433_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var2434_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (declare-fun var2435_true__t0 () Bool) (declare-fun var2437_addressof_l___t0 () (_ BitVec 64)) (declare-fun var2438_len_addressof_l____t0 () (_ BitVec 64)) (declare-fun var2439_true__t0 () Bool) (declare-fun var2440_interpretation_of_theory_safe_over_addressof_l___t0 () Bool) (declare-fun var2441_interpretation_of_theory_safe_over_buf__t0 () Bool) (declare-fun var2442_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var2443_interpretation_of_theory_safe_over_addressof_deref_S1770_self__timeout___t0 () Bool) (declare-fun var2446_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (declare-fun var2447_return_value_of___io__read_bytes__t0 () (_ BitVec 64)) (declare-fun var2448_safe_return_value_of___io__read_bytes_____safe_rr___t0 () Bool) (declare-fun var2419_rr__t1 () (_ BitVec 64)) (declare-fun var2449_nullterm_return_value_of___io__read_bytes_____nullterm_rr___t0 () Bool) (declare-fun var2451_literal_string____src_endpoint_zz___t0 () (_ BitVec 64)) (declare-fun var2452_true__t0 () Bool) (declare-fun var2453_true__t0 () Bool) (declare-fun var2454_literal_string____carrier__endpoint__poll___t0 () (_ BitVec 64)) (declare-fun var2455_true__t0 () Bool) (declare-fun var2456_true__t0 () Bool) (declare-fun var2457_literal_224__t0 () (_ BitVec 64)) (declare-fun var2458_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var2463_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (declare-fun var2464_safe___io__Result__Error_____safe_return___t0 () Bool) (declare-fun var1787_return__t10 () (_ BitVec 64)) (declare-fun var2465_nullterm___io__Result__Error_____nullterm_return___t0 () Bool) (declare-fun var2469_safe_rr_____safe_return___t0 () Bool) (declare-fun var1787_return__t11 () (_ BitVec 64)) (declare-fun var2470_nullterm_rr_____nullterm_return___t0 () Bool) (declare-fun var2471_literal_string__timeout_waiting_for_broker_response___t0 () (_ BitVec 64)) (declare-fun var2472_true__t0 () Bool) (declare-fun var2473_true__t0 () Bool) (declare-fun var2474_literal_string__timeout_waiting_for_broker_response___t0 () (_ BitVec 64)) (declare-fun var2475_true__t0 () Bool) (declare-fun var2476_true__t0 () Bool) (declare-fun var2477_literal_string__carrier__endpoint___t0 () (_ BitVec 64)) (declare-fun var2478_true__t0 () Bool) (declare-fun var2479_true__t0 () Bool) (declare-fun var2480_literal_string__timeout_waiting_for_broker_response___t0 () (_ BitVec 64)) (declare-fun var2481_true__t0 () Bool) (declare-fun var2482_true__t0 () Bool) (declare-fun var2483_interpretation_of_theory_safe_over_literal_string__timeout_waiting_for_broker_response___t0 () Bool) (declare-fun var2484_interpretation_of_theory_safe_over_literal_string__carrier__endpoint___t0 () Bool) (declare-fun var2487_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var2488_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (declare-fun var2489_true__t0 () Bool) (declare-fun var2490_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var2491_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (declare-fun var2492_true__t0 () Bool) (declare-fun var2493_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var2494_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (declare-fun var2495_true__t0 () Bool) (declare-fun var2496_interpretation_of_theory_safe_over_addressof_deref_S1770_self__timeout___t0 () Bool) (declare-fun var2499_literal_0__t0 () (_ BitVec 64)) (declare-fun var2500_safe_literal_0_____safe_wait___t0 () Bool) (declare-fun var2498_wait__t1 () (_ BitVec 64)) (declare-fun var2501_nullterm_literal_0_____nullterm_wait___t0 () Bool) (declare-fun var2503_literal_0__t0 () (_ BitVec 64)) (declare-fun var2506_literal_100__t0 () (_ BitVec 64)) (declare-fun var2508_safe_implicit_coercion_of_literal_100_____safe_wait___t0 () Bool) (declare-fun var2498_wait__t2 () (_ BitVec 64)) (declare-fun var2509_nullterm_implicit_coercion_of_literal_100_____nullterm_wait___t0 () Bool) (declare-fun var2510_literal_1__t0 () (_ BitVec 64)) (declare-fun var2513_literal_300__t0 () (_ BitVec 64)) (declare-fun var2515_safe_implicit_coercion_of_literal_300_____safe_wait___t0 () Bool) (declare-fun var2498_wait__t3 () (_ BitVec 64)) (declare-fun var2516_nullterm_implicit_coercion_of_literal_300_____nullterm_wait___t0 () Bool) (declare-fun var2517_literal_2__t0 () (_ BitVec 64)) (declare-fun var2520_literal_600__t0 () (_ BitVec 64)) (declare-fun var2522_safe_implicit_coercion_of_literal_600_____safe_wait___t0 () Bool) (declare-fun var2498_wait__t4 () (_ BitVec 64)) (declare-fun var2523_nullterm_implicit_coercion_of_literal_600_____nullterm_wait___t0 () Bool) (declare-fun var2524_literal_2000__t0 () (_ BitVec 64)) (declare-fun var2526_safe_implicit_coercion_of_literal_2000_____safe_wait___t0 () Bool) (declare-fun var2498_wait__t5 () (_ BitVec 64)) (declare-fun var2527_nullterm_implicit_coercion_of_literal_2000_____nullterm_wait___t0 () Bool) (declare-fun var2532_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var2533_interpretation_of_theory_safe_over_async__t0 () Bool) (declare-fun var2536_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (declare-fun var2537_return_value_of___io__timeout__t0 () (_ BitVec 64)) (declare-fun var2538_safe_return_value_of___io__timeout_____safe_deref_S1770_self__timeout___t0 () Bool) (declare-fun var1875_deref_S1770_self__timeout__t4 () (_ BitVec 64)) (declare-fun var2539_nullterm_return_value_of___io__timeout_____nullterm_deref_S1770_self__timeout___t0 () Bool) (declare-fun var2541_literal_string____src_endpoint_zz___t0 () (_ BitVec 64)) (declare-fun var2542_true__t0 () Bool) (declare-fun var2543_true__t0 () Bool) (declare-fun var2544_literal_string____carrier__endpoint__poll___t0 () (_ BitVec 64)) (declare-fun var2545_true__t0 () Bool) (declare-fun var2546_true__t0 () Bool) (declare-fun var2547_literal_242__t0 () (_ BitVec 64)) (declare-fun var2548_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var2553_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (declare-fun var2554_safe___io__Result__Error_____safe_return___t0 () Bool) (declare-fun var1787_return__t12 () (_ BitVec 64)) (declare-fun var2555_nullterm___io__Result__Error_____nullterm_return___t0 () Bool) (declare-fun var2558_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var2559_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (declare-fun var2560_true__t0 () Bool) (declare-fun var2561_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var2562_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (declare-fun var2563_true__t0 () Bool) (declare-fun var2565_addressof_deref_S1770_self__timeout_ctx___t0 () (_ BitVec 64)) (declare-fun var2566_len_addressof_deref_S1770_self__timeout_ctx____t0 () (_ BitVec 64)) (declare-fun var2567_true__t0 () Bool) (declare-fun var2568_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var2569_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (declare-fun var2570_true__t0 () Bool) (declare-fun var2571_addressof_deref_S1770_self__timeout_ctx___t0 () (_ BitVec 64)) (declare-fun var2572_len_addressof_deref_S1770_self__timeout_ctx____t0 () (_ BitVec 64)) (declare-fun var2573_true__t0 () Bool) (declare-fun var2575_addressof_deref_S1770_self__timeout___t0 () (_ BitVec 64)) (declare-fun var2576_len_addressof_deref_S1770_self__timeout____t0 () (_ BitVec 64)) (declare-fun var2577_true__t0 () Bool) (declare-fun var2578_addressof_deref_S1770_self__timeout_ctx___t0 () (_ BitVec 64)) (declare-fun var2579_len_addressof_deref_S1770_self__timeout_ctx____t0 () (_ BitVec 64)) (declare-fun var2580_true__t0 () Bool) (declare-fun var2581_interpretation_of_theory_safe_over_addressof_deref_S1770_self__timeout_ctx___t0 () Bool) (declare-fun var2582_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var2583_interpretation_of_theory_safe_over_async__t0 () Bool) (declare-fun var2586_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (declare-fun var2589_literal_string____src_endpoint_zz___t0 () (_ BitVec 64)) (declare-fun var2590_true__t0 () Bool) (declare-fun var2591_true__t0 () Bool) (declare-fun var2592_literal_string____carrier__endpoint__poll___t0 () (_ BitVec 64)) (declare-fun var2593_true__t0 () Bool) (declare-fun var2594_true__t0 () Bool) (declare-fun var2595_literal_244__t0 () (_ BitVec 64)) (declare-fun var2596_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var2601_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (declare-fun var2602_safe___io__Result__Error_____safe_return___t0 () Bool) (declare-fun var1787_return__t13 () (_ BitVec 64)) (declare-fun var2603_nullterm___io__Result__Error_____nullterm_return___t0 () Bool) (declare-fun var2605_literal_5__t0 () (_ BitVec 64)) (declare-fun var2608_literal_0__t0 () (_ BitVec 64)) (declare-fun var2610_safe_implicit_coercion_of_literal_0_____safe_deref_S1770_self__statem_connecting_retry_sending___t0 () Bool) (declare-fun var2287_deref_S1770_self__statem_connecting_retry_sending__t2 () (_ BitVec 64)) (declare-fun var2611_nullterm_implicit_coercion_of_literal_0_____nullterm_deref_S1770_self__statem_connecting_retry_sending___t0 () Bool) (declare-fun var2614_interpretation_of_theory_safe_over_cast_of_self__t0 () Bool) (declare-fun var2617_return_value_of___time__real__t0 () (_ BitVec 64)) (declare-fun var2618_safe_return_value_of___time__real_____safe_now___t0 () Bool) (declare-fun var2616_now__t1 () (_ BitVec 64)) (declare-fun var2619_nullterm_return_value_of___time__real_____nullterm_now___t0 () Bool) (declare-fun var2621_safe_deref_S1770_self__store___t0 () Bool) (declare-fun var2624_addressof_now___t0 () (_ BitVec 64)) (declare-fun var2625_len_addressof_now____t0 () (_ BitVec 64)) (declare-fun var2626_true__t0 () Bool) (declare-fun var2627_addressof_now___t0 () (_ BitVec 64)) (declare-fun var2628_len_addressof_now____t0 () (_ BitVec 64)) (declare-fun var2629_true__t0 () Bool) (declare-fun var2630_addressof_now___t0 () (_ BitVec 64)) (declare-fun var2631_len_addressof_now____t0 () (_ BitVec 64)) (declare-fun var2632_true__t0 () Bool) (declare-fun var2633_interpretation_of_theory_safe_over_addressof_now___t0 () Bool) (declare-fun var2634_return_value_of___time__to_seconds__t0 () (_ BitVec 64)) (declare-fun var2635_safe_return_value_of___time__to_seconds_____safe_deref_S1788_deref_S1770_self__store__time___t0 () Bool) (declare-fun var2622_deref_S1788_deref_S1770_self__store__time__t1 () (_ BitVec 64)) (declare-fun var2636_nullterm_return_value_of___time__to_seconds_____nullterm_deref_S1788_deref_S1770_self__store__time___t0 () Bool) (declare-fun var2638_literal_0__t0 () (_ BitVec 64)) (declare-fun var2639_literal_array_2639__t0 () (_ BitVec 64)) (declare-fun var2640_true__t0 () Bool) (declare-fun var2641_safe_literal_array_2639_____safe_ip4addr___t0 () Bool) (declare-fun var2637_ip4addr__t1 () (_ BitVec 64)) (declare-fun var2642_nullterm_literal_array_2639_____nullterm_ip4addr___t0 () Bool) (declare-fun var2643_len_ip4addr___t0 () (_ BitVec 64)) (declare-fun var2645_literal_0__t0 () (_ BitVec 64)) (declare-fun var2646_literal_array_2646__t0 () (_ BitVec 64)) (declare-fun var2647_true__t0 () Bool) (declare-fun var2648_safe_literal_array_2646_____safe_ip6addr___t0 () Bool) (declare-fun var2644_ip6addr__t1 () (_ BitVec 64)) (declare-fun var2649_nullterm_literal_array_2646_____nullterm_ip6addr___t0 () Bool) (declare-fun var2650_len_ip6addr___t0 () (_ BitVec 64)) (declare-fun var2652_literal_0__t0 () (_ BitVec 64)) (declare-fun var2653_literal_array_2653__t0 () (_ BitVec 64)) (declare-fun var2654_true__t0 () Bool) (declare-fun var2655_safe_literal_array_2653_____safe_xaddr___t0 () Bool) (declare-fun var2651_xaddr__t1 () (_ BitVec 64)) (declare-fun var2656_nullterm_literal_array_2653_____nullterm_xaddr___t0 () Bool) (declare-fun var2657_len_xaddr___t0 () (_ BitVec 64)) (declare-fun var2658_addressof_deref_S1770_self__statem_connecting_current_broker___t0 () (_ BitVec 64)) (declare-fun var2659_len_addressof_deref_S1770_self__statem_connecting_current_broker____t0 () (_ BitVec 64)) (declare-fun var2660_true__t0 () Bool) (declare-fun var2661_addressof_deref_S1770_self__statem_connecting_current_broker___t0 () (_ BitVec 64)) (declare-fun var2662_len_addressof_deref_S1770_self__statem_connecting_current_broker____t0 () (_ BitVec 64)) (declare-fun var2663_true__t0 () Bool) (declare-fun var2664_addressof_ip4addr___t0 () (_ BitVec 64)) (declare-fun var2665_len_addressof_ip4addr____t0 () (_ BitVec 64)) (declare-fun var2666_true__t0 () Bool) (declare-fun var2667_addressof_ip4addr___t0 () (_ BitVec 64)) (declare-fun var2668_len_addressof_ip4addr____t0 () (_ BitVec 64)) (declare-fun var2669_true__t0 () Bool) (declare-fun var2670_addressof_ip6addr___t0 () (_ BitVec 64)) (declare-fun var2671_len_addressof_ip6addr____t0 () (_ BitVec 64)) (declare-fun var2672_true__t0 () Bool) (declare-fun var2673_addressof_ip6addr___t0 () (_ BitVec 64)) (declare-fun var2674_len_addressof_ip6addr____t0 () (_ BitVec 64)) (declare-fun var2675_true__t0 () Bool) (declare-fun var2676_addressof_xaddr___t0 () (_ BitVec 64)) (declare-fun var2677_len_addressof_xaddr____t0 () (_ BitVec 64)) (declare-fun var2678_true__t0 () Bool) (declare-fun var2679_addressof_xaddr___t0 () (_ BitVec 64)) (declare-fun var2680_len_addressof_xaddr____t0 () (_ BitVec 64)) (declare-fun var2681_true__t0 () Bool) (declare-fun var2682_addressof_deref_S1770_self__statem_connecting_current_broker___t0 () (_ BitVec 64)) (declare-fun var2683_len_addressof_deref_S1770_self__statem_connecting_current_broker____t0 () (_ BitVec 64)) (declare-fun var2684_true__t0 () Bool) (declare-fun var2685_addressof_ip4addr___t0 () (_ BitVec 64)) (declare-fun var2686_len_addressof_ip4addr____t0 () (_ BitVec 64)) (declare-fun var2687_true__t0 () Bool) (declare-fun var2688_addressof_ip6addr___t0 () (_ BitVec 64)) (declare-fun var2689_len_addressof_ip6addr____t0 () (_ BitVec 64)) (declare-fun var2690_true__t0 () Bool) (declare-fun var2691_addressof_xaddr___t0 () (_ BitVec 64)) (declare-fun var2692_len_addressof_xaddr____t0 () (_ BitVec 64)) (declare-fun var2693_true__t0 () Bool) (declare-fun var2694_interpretation_of_theory_safe_over_addressof_xaddr___t0 () Bool) (declare-fun var2695_interpretation_of_theory_safe_over_addressof_ip6addr___t0 () Bool) (declare-fun var2696_interpretation_of_theory_safe_over_addressof_ip4addr___t0 () Bool) (declare-fun var2697_interpretation_of_theory_safe_over_addressof_deref_S1770_self__statem_connecting_current_broker___t0 () Bool) (declare-fun var2700_literal_3__t0 () (_ BitVec 64)) (declare-fun var2701_literal_3__t0 () (_ BitVec 64)) (declare-fun var2702_literal_string__current_broker_is_empty___t0 () (_ BitVec 64)) (declare-fun var2703_true__t0 () Bool) (declare-fun var2704_true__t0 () Bool) (declare-fun var2705_literal_string__current_broker_is_empty___t0 () (_ BitVec 64)) (declare-fun var2706_true__t0 () Bool) (declare-fun var2707_true__t0 () Bool) (declare-fun var2709_literal_3__t0 () (_ BitVec 64)) (declare-fun var2710_literal_string____src_endpoint_zz___t0 () (_ BitVec 64)) (declare-fun var2711_true__t0 () Bool) (declare-fun var2712_true__t0 () Bool) (declare-fun var2713_literal_string____carrier__endpoint__poll___t0 () (_ BitVec 64)) (declare-fun var2714_true__t0 () Bool) (declare-fun var2715_true__t0 () Bool) (declare-fun var2716_literal_261__t0 () (_ BitVec 64)) (declare-fun var2717_literal_string__current_broker_is_empty___t0 () (_ BitVec 64)) (declare-fun var2718_true__t0 () Bool) (declare-fun var2719_true__t0 () Bool) (declare-fun var2720_interpretation_of_theory_safe_over_literal_string__current_broker_is_empty___t0 () Bool) (declare-fun var2721_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var2724_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (declare-fun var2725_return_value_of___err__fail__t0 () (_ BitVec 64)) (declare-fun var2727_safe_return_value_of___err__fail_____safe_return___t0 () Bool) (declare-fun var2726_return__t1 () (_ BitVec 64)) (declare-fun var2728_nullterm_return_value_of___err__fail_____nullterm_return___t0 () Bool) (declare-fun var2731_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (declare-fun var2732_safe_return_____safe_return_value_of___err__fail___t0 () Bool) (declare-fun var2725_return_value_of___err__fail__t1 () (_ BitVec 64)) (declare-fun var2733_nullterm_return_____nullterm_return_value_of___err__fail___t0 () Bool) (declare-fun var2734_safe___io__Result__Error_____safe_return___t0 () Bool) (declare-fun var1787_return__t14 () (_ BitVec 64)) (declare-fun var2735_nullterm___io__Result__Error_____nullterm_return___t0 () Bool) (declare-fun var2738_addressof_deref_S1770_self__statem_connecting_initiator___t0 () (_ BitVec 64)) (declare-fun var2739_len_addressof_deref_S1770_self__statem_connecting_initiator____t0 () (_ BitVec 64)) (declare-fun var2740_true__t0 () Bool) (declare-fun var2741_addressof_deref_S1770_self__statem_connecting_initiator___t0 () (_ BitVec 64)) (declare-fun var2742_len_addressof_deref_S1770_self__statem_connecting_initiator____t0 () (_ BitVec 64)) (declare-fun var2743_true__t0 () Bool) (declare-fun var2744_literal_32__t0 () (_ BitVec 64)) (declare-fun var2745_deref_S1788_deref_S1770_self__store__secret__t0 () (_ BitVec 64)) (declare-fun var2746_len_deref_S1788_deref_S1770_self__store__secret___t0 () (_ BitVec 64)) (declare-fun var2747_true__t0 () Bool) (declare-fun var2748_addressof_deref_S1788_deref_S1770_self__store__secret___t0 () (_ BitVec 64)) (declare-fun var2749_len_addressof_deref_S1788_deref_S1770_self__store__secret____t0 () (_ BitVec 64)) (declare-fun var2750_true__t0 () Bool) (declare-fun var2752_addressof_deref_S1788_deref_S1770_self__store__secret___t0 () (_ BitVec 64)) (declare-fun var2753_len_addressof_deref_S1788_deref_S1770_self__store__secret____t0 () (_ BitVec 64)) (declare-fun var2754_true__t0 () Bool) (declare-fun var2756_addressof_xaddr___t0 () (_ BitVec 64)) (declare-fun var2757_len_addressof_xaddr____t0 () (_ BitVec 64)) (declare-fun var2758_true__t0 () Bool) (declare-fun var2759_addressof_xaddr___t0 () (_ BitVec 64)) (declare-fun var2760_len_addressof_xaddr____t0 () (_ BitVec 64)) (declare-fun var2761_true__t0 () Bool) (declare-fun var2762_addressof_deref_S1770_self__statem_connecting_initiator___t0 () (_ BitVec 64)) (declare-fun var2763_len_addressof_deref_S1770_self__statem_connecting_initiator____t0 () (_ BitVec 64)) (declare-fun var2764_true__t0 () Bool) (declare-fun var2766_addressof_deref_S1788_deref_S1770_self__store__secret___t0 () (_ BitVec 64)) (declare-fun var2767_len_addressof_deref_S1788_deref_S1770_self__store__secret____t0 () (_ BitVec 64)) (declare-fun var2768_true__t0 () Bool) (declare-fun var2770_addressof_xaddr___t0 () (_ BitVec 64)) (declare-fun var2771_len_addressof_xaddr____t0 () (_ BitVec 64)) (declare-fun var2772_true__t0 () Bool) (declare-fun var2773_interpretation_of_theory_safe_over_addressof_xaddr___t0 () Bool) (declare-fun var2774_interpretation_of_theory_safe_over_cast_of_addressof_deref_S1788_deref_S1770_self__store__secret___t0 () Bool) (declare-fun var2775_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var2776_interpretation_of_theory_safe_over_addressof_deref_S1770_self__statem_connecting_initiator___t0 () Bool) (declare-fun var2779_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (declare-fun var2782_literal_string____src_endpoint_zz___t0 () (_ BitVec 64)) (declare-fun var2783_true__t0 () Bool) (declare-fun var2784_true__t0 () Bool) (declare-fun var2785_literal_string____carrier__endpoint__poll___t0 () (_ BitVec 64)) (declare-fun var2786_true__t0 () Bool) (declare-fun var2787_true__t0 () Bool) (declare-fun var2788_literal_266__t0 () (_ BitVec 64)) (declare-fun var2789_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var2794_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (declare-fun var2795_safe___io__Result__Error_____safe_return___t0 () Bool) (declare-fun var1787_return__t15 () (_ BitVec 64)) (declare-fun var2796_nullterm___io__Result__Error_____nullterm_return___t0 () Bool) (declare-fun var2799_dbn_mem__t0 () (_ BitVec 64)) (declare-fun var2800_len_dbn_mem___t0 () (_ BitVec 64)) (declare-fun var2801_true__t0 () Bool) (declare-fun var2802_len_dbn_mem___t0 () (_ BitVec 64)) (declare-fun var2803_literal_0__t0 () (_ BitVec 64)) (declare-fun var2804_literal_array_2804__t0 () (_ BitVec 64)) (declare-fun var2805_true__t0 () Bool) (declare-fun var2806_safe_literal_array_2804_____safe_dbn___t0 () Bool) (declare-fun var2798_dbn__t1 () (_ BitVec 64)) (declare-fun var2807_nullterm_literal_array_2804_____nullterm_dbn___t0 () Bool) (declare-fun var2808_len_dbn___t0 () (_ BitVec 64)) (declare-fun var2810_addressof_ip4addr___t0 () (_ BitVec 64)) (declare-fun var2811_len_addressof_ip4addr____t0 () (_ BitVec 64)) (declare-fun var2812_true__t0 () Bool) (declare-fun var2813_addressof_ip4addr___t0 () (_ BitVec 64)) (declare-fun var2814_len_addressof_ip4addr____t0 () (_ BitVec 64)) (declare-fun var2815_true__t0 () Bool) (declare-fun var2816_addressof_dbn___t0 () (_ BitVec 64)) (declare-fun var2817_len_addressof_dbn____t0 () (_ BitVec 64)) (declare-fun var2818_true__t0 () Bool) (declare-fun var2819_addressof_dbn___t0 () (_ BitVec 64)) (declare-fun var2820_len_addressof_dbn____t0 () (_ BitVec 64)) (declare-fun var2821_true__t0 () Bool) (declare-fun var2822_addressof_dbn___t0 () (_ BitVec 64)) (declare-fun var2823_len_addressof_dbn____t0 () (_ BitVec 64)) (declare-fun var2824_true__t0 () Bool) (declare-fun var2825_addressof_ip4addr___t0 () (_ BitVec 64)) (declare-fun var2826_len_addressof_ip4addr____t0 () (_ BitVec 64)) (declare-fun var2827_true__t0 () Bool) (declare-fun var2828_addressof_dbn___t0 () (_ BitVec 64)) (declare-fun var2829_len_addressof_dbn____t0 () (_ BitVec 64)) (declare-fun var2830_true__t0 () Bool) (declare-fun var2832_literal_150__t0 () (_ BitVec 64)) (declare-fun var2833_interpretation_of_theory_safe_over_cast_of_addressof_dbn___t0 () Bool) (declare-fun var2834_interpretation_of_theory_safe_over_addressof_ip4addr___t0 () Bool) (declare-fun var2835_literal_2__t0 () (_ BitVec 64)) (declare-fun var2839_addressof_dbn___t0 () (_ BitVec 64)) (declare-fun var2840_len_addressof_dbn____t0 () (_ BitVec 64)) (declare-fun var2841_true__t0 () Bool) (declare-fun var2842_addressof_dbn___t0 () (_ BitVec 64)) (declare-fun var2843_len_addressof_dbn____t0 () (_ BitVec 64)) (declare-fun var2844_true__t0 () Bool) (declare-fun var2845_addressof_dbn___t0 () (_ BitVec 64)) (declare-fun var2846_len_addressof_dbn____t0 () (_ BitVec 64)) (declare-fun var2847_true__t0 () Bool) (declare-fun var2848_literal_string______t0 () (_ BitVec 64)) (declare-fun var2849_true__t0 () Bool) (declare-fun var2850_true__t0 () Bool) (declare-fun var2851_literal_string______t0 () (_ BitVec 64)) (declare-fun var2852_true__t0 () Bool) (declare-fun var2853_true__t0 () Bool) (declare-fun var2854_addressof_dbn___t0 () (_ BitVec 64)) (declare-fun var2855_len_addressof_dbn____t0 () (_ BitVec 64)) (declare-fun var2856_true__t0 () Bool) (declare-fun var2858_literal_150__t0 () (_ BitVec 64)) (declare-fun var2859_literal_string______t0 () (_ BitVec 64)) (declare-fun var2860_true__t0 () Bool) (declare-fun var2861_true__t0 () Bool) (declare-fun var2862_interpretation_of_theory_safe_over_literal_string______t0 () Bool) (declare-fun var2863_interpretation_of_theory_safe_over_cast_of_addressof_dbn___t0 () Bool) (declare-fun var2864_interpretation_of_theory_nullterm_over_literal_string______t0 () Bool) (declare-fun var2865_return_value_of___string__append_cstr__t0 () (_ BitVec 64)) (declare-fun var2867_safe_return_value_of___string__append_cstr_____safe_return___t0 () Bool) (declare-fun var2866_return__t1 () (_ BitVec 64)) (declare-fun var2868_nullterm_return_value_of___string__append_cstr_____nullterm_return___t0 () Bool) (declare-fun var2869_interpretation_of_theory_nullterm_over_dbn_mem__t0 () Bool) (declare-fun var2870_safe_return_____safe_return_value_of___string__append_cstr___t0 () Bool) (declare-fun var2865_return_value_of___string__append_cstr__t1 () (_ BitVec 64)) (declare-fun var2871_nullterm_return_____nullterm_return_value_of___string__append_cstr___t0 () Bool) (declare-fun var2873_safe_return_value_of___string__append_cstr_____safe_return___t0 () Bool) (declare-fun var2872_return__t1 () (_ BitVec 64)) (declare-fun var2874_nullterm_return_value_of___string__append_cstr_____nullterm_return___t0 () Bool) (declare-fun var2875_dbn_len__t0 () (_ BitVec 64)) (declare-fun var2878_safe_return_____safe_return_value_of___string__append_cstr___t0 () Bool) (declare-fun var2865_return_value_of___string__append_cstr__t2 () (_ BitVec 64)) (declare-fun var2879_nullterm_return_____nullterm_return_value_of___string__append_cstr___t0 () Bool) (declare-fun var2880_addressof_dbn_mem___t0 () (_ BitVec 64)) (declare-fun var2881_len_addressof_dbn_mem____t0 () (_ BitVec 64)) (declare-fun var2882_true__t0 () Bool) (declare-fun var2883_addressof_dbn_mem___t0 () (_ BitVec 64)) (declare-fun var2884_len_addressof_dbn_mem____t0 () (_ BitVec 64)) (declare-fun var2885_true__t0 () Bool) (declare-fun var2886_addressof_dbn_mem___t0 () (_ BitVec 64)) (declare-fun var2887_len_addressof_dbn_mem____t0 () (_ BitVec 64)) (declare-fun var2888_true__t0 () Bool) (declare-fun var2889_addressof_dbn_mem___t0 () (_ BitVec 64)) (declare-fun var2890_len_addressof_dbn_mem____t0 () (_ BitVec 64)) (declare-fun var2891_true__t0 () Bool) (declare-fun var2892_interpretation_of_theory_len_over_addressof_dbn_mem___t0 () (_ BitVec 64)) (declare-fun var2894_literal_1__t0 () (_ BitVec 64)) (declare-fun var2897_len_dbn_mem___t0 () (_ BitVec 64)) (declare-fun var2896_infix_expression__t0 () (_ BitVec 64)) (declare-fun var2899_true__t0 () Bool) (declare-fun var2900_len_dbn_mem___t0 () (_ BitVec 64)) (declare-fun var2903_len_dbn_mem___t0 () (_ BitVec 64)) (declare-fun var2902_infix_expression__t0 () (_ BitVec 64)) (declare-fun var2905_true__t0 () Bool) (declare-fun var2906_len_dbn_mem___t0 () (_ BitVec 64)) (declare-fun var2907_literal_150__t0 () (_ BitVec 64)) (declare-fun var2910_literal_150__t0 () (_ BitVec 64)) (declare-fun var2913_addressof_xaddr___t0 () (_ BitVec 64)) (declare-fun var2914_len_addressof_xaddr____t0 () (_ BitVec 64)) (declare-fun var2915_true__t0 () Bool) (declare-fun var2916_addressof_xaddr___t0 () (_ BitVec 64)) (declare-fun var2917_len_addressof_xaddr____t0 () (_ BitVec 64)) (declare-fun var2918_true__t0 () Bool) (declare-fun var2922_len_dbn_mem___t0 () (_ BitVec 64)) (declare-fun var2921_infix_expression__t0 () (_ BitVec 64)) (declare-fun var2924_true__t0 () Bool) (declare-fun var2925_len_dbn_mem___t0 () (_ BitVec 64)) (declare-fun var2926_literal_150__t0 () (_ BitVec 64)) (declare-fun var2929_addressof_xaddr___t0 () (_ BitVec 64)) (declare-fun var2930_len_addressof_xaddr____t0 () (_ BitVec 64)) (declare-fun var2931_true__t0 () Bool) (declare-fun var2932_interpretation_of_theory_safe_over_addressof_xaddr___t0 () Bool) (declare-fun var2933_interpretation_of_theory_safe_over_infix_expression__t0 () Bool) (declare-fun var2934_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var2937_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (declare-fun var2938_literal_150__t0 () (_ BitVec 64)) (declare-fun var2941_literal_0__t0 () (_ BitVec 64)) (declare-fun var2945_return_value_of___carrier__identity__address_to_str__t0 () (_ BitVec 64)) (declare-fun var2947_safe_return_value_of___carrier__identity__address_to_str_____safe_return___t0 () Bool) (declare-fun var2946_return__t1 () (_ BitVec 64)) (declare-fun var2948_nullterm_return_value_of___carrier__identity__address_to_str_____nullterm_return___t0 () Bool) (declare-fun var2949_interpretation_of_theory_nullterm_over_infix_expression__t0 () Bool) (declare-fun var2950_safe_return_____safe_return_value_of___carrier__identity__address_to_str___t0 () Bool) (declare-fun var2945_return_value_of___carrier__identity__address_to_str__t1 () (_ BitVec 64)) (declare-fun var2951_nullterm_return_____nullterm_return_value_of___carrier__identity__address_to_str___t0 () Bool) (declare-fun var2953_safe_assign_inter_____safe_dbn_len___t0 () Bool) (declare-fun var2875_dbn_len__t1 () (_ BitVec 64)) (declare-fun var2954_nullterm_assign_inter_____nullterm_dbn_len___t0 () Bool) (declare-fun var2956_literal_string____src_endpoint_zz___t0 () (_ BitVec 64)) (declare-fun var2957_true__t0 () Bool) (declare-fun var2958_true__t0 () Bool) (declare-fun var2959_literal_string____carrier__endpoint__poll___t0 () (_ BitVec 64)) (declare-fun var2960_true__t0 () Bool) (declare-fun var2961_true__t0 () Bool) (declare-fun var2962_literal_274__t0 () (_ BitVec 64)) (declare-fun var2963_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var2968_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (declare-fun var2969_safe___io__Result__Error_____safe_return___t0 () Bool) (declare-fun var1787_return__t16 () (_ BitVec 64)) (declare-fun var2970_nullterm___io__Result__Error_____nullterm_return___t0 () Bool) (declare-fun var2972_literal_string__attempt__zu_sending__zu_bytes_to____s___t0 () (_ BitVec 64)) (declare-fun var2973_true__t0 () Bool) (declare-fun var2974_true__t0 () Bool) (declare-fun var2975_literal_string__attempt__zu_sending__zu_bytes_to____s___t0 () (_ BitVec 64)) (declare-fun var2976_true__t0 () Bool) (declare-fun var2977_true__t0 () Bool) (declare-fun var2978_literal_string__carrier__endpoint___t0 () (_ BitVec 64)) (declare-fun var2979_true__t0 () Bool) (declare-fun var2980_true__t0 () Bool) (declare-fun var2981_literal_string__attempt__zu_sending__zu_bytes_to____s___t0 () (_ BitVec 64)) (declare-fun var2982_true__t0 () Bool) (declare-fun var2983_true__t0 () Bool) (declare-fun var2985_interpretation_of_theory_safe_over_literal_string__attempt__zu_sending__zu_bytes_to____s___t0 () Bool) (declare-fun var2986_interpretation_of_theory_safe_over_literal_string__carrier__endpoint___t0 () Bool) (declare-fun var2989_safe_deref_S1770_self__statem_connecting_retry_sending_____safe_copy_of_deref_S1770_self__statem_connecting_retry_sending_before_unary___t0 () Bool) (declare-fun var2988_copy_of_deref_S1770_self__statem_connecting_retry_sending_before_unary__t1 () (_ BitVec 64)) (declare-fun var2990_nullterm_deref_S1770_self__statem_connecting_retry_sending_____nullterm_copy_of_deref_S1770_self__statem_connecting_retry_sending_before_unary___t0 () Bool) (declare-fun var2992_literal_0__t0 () (_ BitVec 64)) (declare-fun var2993_safe_literal_0_____safe_i___t0 () Bool) (declare-fun var2991_i__t1 () (_ BitVec 64)) (declare-fun var2994_nullterm_literal_0_____nullterm_i___t0 () Bool) (declare-fun var2997_literal_5__t0 () (_ BitVec 64)) (declare-fun var2998_literal_5__t0 () (_ BitVec 64)) (declare-fun var3002_addressof_ip4addr___t0 () (_ BitVec 64)) (declare-fun var3003_len_addressof_ip4addr____t0 () (_ BitVec 64)) (declare-fun var3004_true__t0 () Bool) (declare-fun var3005_addressof_ip4addr___t0 () (_ BitVec 64)) (declare-fun var3006_len_addressof_ip4addr____t0 () (_ BitVec 64)) (declare-fun var3007_true__t0 () Bool) (declare-fun var3008_len___carrier__endpoint__PORTS___t0 () (_ BitVec 64)) (declare-fun var3011_len___carrier__endpoint__PORTS___t0 () (_ BitVec 64)) (declare-fun var3014_addressof_ip4addr___t0 () (_ BitVec 64)) (declare-fun var3015_len_addressof_ip4addr____t0 () (_ BitVec 64)) (declare-fun var3016_true__t0 () Bool) (declare-fun var3017_len___carrier__endpoint__PORTS___t0 () (_ BitVec 64)) (declare-fun var3020_interpretation_of_theory_safe_over_addressof_ip4addr___t0 () Bool) (declare-fun var3023_addressof_ip6addr___t0 () (_ BitVec 64)) (declare-fun var3024_len_addressof_ip6addr____t0 () (_ BitVec 64)) (declare-fun var3025_true__t0 () Bool) (declare-fun var3026_addressof_ip6addr___t0 () (_ BitVec 64)) (declare-fun var3027_len_addressof_ip6addr____t0 () (_ BitVec 64)) (declare-fun var3028_true__t0 () Bool) (declare-fun var3029_len___carrier__endpoint__PORTS___t0 () (_ BitVec 64)) (declare-fun var3032_len___carrier__endpoint__PORTS___t0 () (_ BitVec 64)) (declare-fun var3035_addressof_ip6addr___t0 () (_ BitVec 64)) (declare-fun var3036_len_addressof_ip6addr____t0 () (_ BitVec 64)) (declare-fun var3037_true__t0 () Bool) (declare-fun var3038_len___carrier__endpoint__PORTS___t0 () (_ BitVec 64)) (declare-fun var3041_interpretation_of_theory_safe_over_addressof_ip6addr___t0 () Bool) (declare-fun var3044_addressof_deref_S1770_self__udp4___t0 () (_ BitVec 64)) (declare-fun var3045_len_addressof_deref_S1770_self__udp4____t0 () (_ BitVec 64)) (declare-fun var3046_true__t0 () Bool) (declare-fun var3047_addressof_deref_S1770_self__udp4___t0 () (_ BitVec 64)) (declare-fun var3048_len_addressof_deref_S1770_self__udp4____t0 () (_ BitVec 64)) (declare-fun var3049_true__t0 () Bool) (declare-fun var3050_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () (_ BitVec 64)) (declare-fun var3051_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 () (_ BitVec 64)) (declare-fun var3052_true__t0 () Bool) (declare-fun var3053_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () (_ BitVec 64)) (declare-fun var3054_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 () (_ BitVec 64)) (declare-fun var3055_true__t0 () Bool) (declare-fun var3056_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () (_ BitVec 64)) (declare-fun var3057_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 () (_ BitVec 64)) (declare-fun var3058_true__t0 () Bool) (declare-fun var3059_addressof_ip4addr___t0 () (_ BitVec 64)) (declare-fun var3060_len_addressof_ip4addr____t0 () (_ BitVec 64)) (declare-fun var3061_true__t0 () Bool) (declare-fun var3062_addressof_ip4addr___t0 () (_ BitVec 64)) (declare-fun var3063_len_addressof_ip4addr____t0 () (_ BitVec 64)) (declare-fun var3064_true__t0 () Bool) (declare-fun var3065_addressof_deref_S1770_self__udp4___t0 () (_ BitVec 64)) (declare-fun var3066_len_addressof_deref_S1770_self__udp4____t0 () (_ BitVec 64)) (declare-fun var3067_true__t0 () Bool) (declare-fun var3069_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () (_ BitVec 64)) (declare-fun var3070_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 () (_ BitVec 64)) (declare-fun var3071_true__t0 () Bool) (declare-fun var3073_literal_1024__t0 () (_ BitVec 64)) (declare-fun var3074_addressof_ip4addr___t0 () (_ BitVec 64)) (declare-fun var3075_len_addressof_ip4addr____t0 () (_ BitVec 64)) (declare-fun var3076_true__t0 () Bool) (declare-fun var3077_interpretation_of_theory_safe_over_addressof_ip4addr___t0 () Bool) (declare-fun var3078_interpretation_of_theory_safe_over_cast_of_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () Bool) (declare-fun var3079_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var3080_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp4___t0 () Bool) (declare-fun var3083_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (declare-fun var3086_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var3087_return_value_of___err__new__t0 () (_ BitVec 64)) (declare-fun var3089_safe_return_value_of___err__new_____safe_return___t0 () Bool) (declare-fun var3088_return__t1 () (_ BitVec 64)) (declare-fun var3090_nullterm_return_value_of___err__new_____nullterm_return___t0 () Bool) (declare-fun var3093_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (declare-fun var3094_safe_return_____safe_return_value_of___err__new___t0 () Bool) (declare-fun var3087_return_value_of___err__new__t1 () (_ BitVec 64)) (declare-fun var3095_nullterm_return_____nullterm_return_value_of___err__new___t0 () Bool) (declare-fun var3096_addressof_deref_S1770_self__udp6___t0 () (_ BitVec 64)) (declare-fun var3097_len_addressof_deref_S1770_self__udp6____t0 () (_ BitVec 64)) (declare-fun var3098_true__t0 () Bool) (declare-fun var3099_addressof_deref_S1770_self__udp6___t0 () (_ BitVec 64)) (declare-fun var3100_len_addressof_deref_S1770_self__udp6____t0 () (_ BitVec 64)) (declare-fun var3101_true__t0 () Bool) (declare-fun var3102_addressof_deref_S1770_self__udp6_ctx___t0 () (_ BitVec 64)) (declare-fun var3103_len_addressof_deref_S1770_self__udp6_ctx____t0 () (_ BitVec 64)) (declare-fun var3104_true__t0 () Bool) (declare-fun var3105_addressof_deref_S1770_self__udp6___t0 () (_ BitVec 64)) (declare-fun var3106_len_addressof_deref_S1770_self__udp6____t0 () (_ BitVec 64)) (declare-fun var3107_true__t0 () Bool) (declare-fun var3108_addressof_deref_S1770_self__udp6_ctx___t0 () (_ BitVec 64)) (declare-fun var3109_len_addressof_deref_S1770_self__udp6_ctx____t0 () (_ BitVec 64)) (declare-fun var3110_true__t0 () Bool) (declare-fun var3111_addressof_deref_S1770_self__udp6___t0 () (_ BitVec 64)) (declare-fun var3112_len_addressof_deref_S1770_self__udp6____t0 () (_ BitVec 64)) (declare-fun var3113_true__t0 () Bool) (declare-fun var3114_addressof_deref_S1770_self__udp6_ctx___t0 () (_ BitVec 64)) (declare-fun var3115_len_addressof_deref_S1770_self__udp6_ctx____t0 () (_ BitVec 64)) (declare-fun var3116_true__t0 () Bool) (declare-fun var3117_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp6_ctx___t0 () Bool) (declare-fun var3120_addressof_ip6addr___t0 () (_ BitVec 64)) (declare-fun var3121_len_addressof_ip6addr____t0 () (_ BitVec 64)) (declare-fun var3122_true__t0 () Bool) (declare-fun var3123_addressof_ip6addr___t0 () (_ BitVec 64)) (declare-fun var3124_len_addressof_ip6addr____t0 () (_ BitVec 64)) (declare-fun var3125_true__t0 () Bool) (declare-fun var3126_addressof_ip6addr___t0 () (_ BitVec 64)) (declare-fun var3127_len_addressof_ip6addr____t0 () (_ BitVec 64)) (declare-fun var3128_true__t0 () Bool) (declare-fun var3129_interpretation_of_theory_safe_over_addressof_ip6addr___t0 () Bool) (declare-fun var3118_return_value_of___io__valid__t0 () Bool) (declare-fun var3130_return_value_of___net__address__valid__t0 () Bool) (declare-fun var3133_addressof_deref_S1770_self__udp6___t0 () (_ BitVec 64)) (declare-fun var3134_len_addressof_deref_S1770_self__udp6____t0 () (_ BitVec 64)) (declare-fun var3135_true__t0 () Bool) (declare-fun var3136_addressof_deref_S1770_self__udp6___t0 () (_ BitVec 64)) (declare-fun var3137_len_addressof_deref_S1770_self__udp6____t0 () (_ BitVec 64)) (declare-fun var3138_true__t0 () Bool) (declare-fun var3139_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () (_ BitVec 64)) (declare-fun var3140_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 () (_ BitVec 64)) (declare-fun var3141_true__t0 () Bool) (declare-fun var3142_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () (_ BitVec 64)) (declare-fun var3143_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 () (_ BitVec 64)) (declare-fun var3144_true__t0 () Bool) (declare-fun var3145_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () (_ BitVec 64)) (declare-fun var3146_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 () (_ BitVec 64)) (declare-fun var3147_true__t0 () Bool) (declare-fun var3148_addressof_ip6addr___t0 () (_ BitVec 64)) (declare-fun var3149_len_addressof_ip6addr____t0 () (_ BitVec 64)) (declare-fun var3150_true__t0 () Bool) (declare-fun var3151_addressof_ip6addr___t0 () (_ BitVec 64)) (declare-fun var3152_len_addressof_ip6addr____t0 () (_ BitVec 64)) (declare-fun var3153_true__t0 () Bool) (declare-fun var3154_addressof_deref_S1770_self__udp6___t0 () (_ BitVec 64)) (declare-fun var3155_len_addressof_deref_S1770_self__udp6____t0 () (_ BitVec 64)) (declare-fun var3156_true__t0 () Bool) (declare-fun var3158_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () (_ BitVec 64)) (declare-fun var3159_len_addressof_deref_S1770_self__statem_connecting_initiator_pkt____t0 () (_ BitVec 64)) (declare-fun var3160_true__t0 () Bool) (declare-fun var3162_literal_1024__t0 () (_ BitVec 64)) (declare-fun var3163_addressof_ip6addr___t0 () (_ BitVec 64)) (declare-fun var3164_len_addressof_ip6addr____t0 () (_ BitVec 64)) (declare-fun var3165_true__t0 () Bool) (declare-fun var3166_interpretation_of_theory_safe_over_addressof_ip6addr___t0 () Bool) (declare-fun var3167_interpretation_of_theory_safe_over_cast_of_addressof_deref_S1770_self__statem_connecting_initiator_pkt___t0 () Bool) (declare-fun var3168_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var3169_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp6___t0 () Bool) (declare-fun var3172_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (declare-fun var3175_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var3176_return_value_of___err__new__t0 () (_ BitVec 64)) (declare-fun var3178_safe_return_value_of___err__new_____safe_return___t0 () Bool) (declare-fun var3177_return__t1 () (_ BitVec 64)) (declare-fun var3179_nullterm_return_value_of___err__new_____nullterm_return___t0 () Bool) (declare-fun var3182_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (declare-fun var3183_safe_return_____safe_return_value_of___err__new___t0 () Bool) (declare-fun var3176_return_value_of___err__new__t1 () (_ BitVec 64)) (declare-fun var3184_nullterm_return_____nullterm_return_value_of___err__new___t0 () Bool) (declare-fun var3186_addressof_deref_S1770_self__udp4___t0 () (_ BitVec 64)) (declare-fun var3187_len_addressof_deref_S1770_self__udp4____t0 () (_ BitVec 64)) (declare-fun var3188_true__t0 () Bool) (declare-fun var3189_addressof_deref_S1770_self__udp4___t0 () (_ BitVec 64)) (declare-fun var3190_len_addressof_deref_S1770_self__udp4____t0 () (_ BitVec 64)) (declare-fun var3191_true__t0 () Bool) (declare-fun var3192_addressof_deref_S1770_self__udp4_ctx___t0 () (_ BitVec 64)) (declare-fun var3193_len_addressof_deref_S1770_self__udp4_ctx____t0 () (_ BitVec 64)) (declare-fun var3194_true__t0 () Bool) (declare-fun var3195_addressof_deref_S1770_self__udp4___t0 () (_ BitVec 64)) (declare-fun var3196_len_addressof_deref_S1770_self__udp4____t0 () (_ BitVec 64)) (declare-fun var3197_true__t0 () Bool) (declare-fun var3198_addressof_deref_S1770_self__udp4_ctx___t0 () (_ BitVec 64)) (declare-fun var3199_len_addressof_deref_S1770_self__udp4_ctx____t0 () (_ BitVec 64)) (declare-fun var3200_true__t0 () Bool) (declare-fun var3202_addressof_deref_S1770_self__udp4___t0 () (_ BitVec 64)) (declare-fun var3203_len_addressof_deref_S1770_self__udp4____t0 () (_ BitVec 64)) (declare-fun var3204_true__t0 () Bool) (declare-fun var3205_addressof_deref_S1770_self__udp4_ctx___t0 () (_ BitVec 64)) (declare-fun var3206_len_addressof_deref_S1770_self__udp4_ctx____t0 () (_ BitVec 64)) (declare-fun var3207_true__t0 () Bool) (declare-fun var3208_interpretation_of_theory_safe_over_addressof_deref_S1770_self__udp4_ctx___t0 () Bool) (declare-fun var3209_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var3210_interpretation_of_theory_safe_over_async__t0 () Bool) (declare-fun var3213_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (declare-fun var3215_safe___io__Result__Later_____safe_return___t0 () Bool) (declare-fun var1787_return__t17 () (_ BitVec 64)) (declare-fun var3216_nullterm___io__Result__Later_____nullterm_return___t0 () Bool) (declare-fun var3221_addressof_deref_S1770_self__statem_connected___t0 () (_ BitVec 64)) (declare-fun var3222_len_addressof_deref_S1770_self__statem_connected____t0 () (_ BitVec 64)) (declare-fun var3223_true__t0 () Bool) (declare-fun var3224_addressof_deref_S1770_self__statem_connected___t0 () (_ BitVec 64)) (declare-fun var3225_len_addressof_deref_S1770_self__statem_connected____t0 () (_ BitVec 64)) (declare-fun var3226_true__t0 () Bool) (declare-fun var3227_addressof_deref_S1770_self__statem_connected___t0 () (_ BitVec 64)) (declare-fun var3228_len_addressof_deref_S1770_self__statem_connected____t0 () (_ BitVec 64)) (declare-fun var3229_true__t0 () Bool) (declare-fun var3231_interpretation_of_theory_safe_over_cast_of_e__t0 () Bool) (declare-fun var3232_interpretation_of_theory_safe_over_addressof_deref_S1770_self__statem_connected___t0 () Bool) (declare-fun var3235_interpretation_of_theory___err__checked_over_cast_of_deref_S1775_e___t0 () Bool) (declare-fun var3236_return_value_of___carrier__router__poll__t0 () (_ BitVec 64)) (declare-fun var3237_safe_return_value_of___carrier__router__poll_____safe_return___t0 () Bool) (declare-fun var1787_return__t18 () (_ BitVec 64)) (declare-fun var3238_nullterm_return_value_of___carrier__router__poll_____nullterm_return___t0 () Bool) (declare-fun var3239_safe___io__Result__Later_____safe_return___t0 () Bool) (declare-fun var1787_return__t19 () (_ BitVec 64)) (declare-fun var3240_nullterm___io__Result__Later_____nullterm_return___t0 () Bool) (check-sat)