; LLVM IR from fwip/fastqz :: libzpaq.ll (ZN7libzpaq5ZPAQL7executeEv)

; Unoptimized IR (clang -disable-llvm-passes):
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"

%"class.libzpaq::ZPAQL" = type { ptr, ptr, %"class.libzpaq::Array.0", i32, i32, i32, [4 x i8], %"class.libzpaq::Array.0", %"class.libzpaq::Array", %"class.libzpaq::Array", %"class.libzpaq::Array.4", i32, i32, i32, i32, i32, i32, i32, i32, ptr }
%"class.libzpaq::Array.0" = type <{ ptr, i64, i32, [4 x i8] }>
%"class.libzpaq::Array" = type <{ ptr, i64, i32, [4 x i8] }>
%"class.libzpaq::Array.4" = type <{ ptr, i64, i32, [4 x i8] }>

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20), i64 noundef) #0 align 2

; Function Attrs: mustprogress uwtable
define dso_local noundef i32 @_ZN7libzpaq5ZPAQL7executeEv(ptr noundef nonnull align 8 dereferenceable(192) %0) #1 align 2 {
  %2 = alloca i32, align 4
  %3 = alloca ptr, align 8
  store ptr %0, ptr %3, align 8, !tbaa !5
  %4 = load ptr, ptr %3, align 8
  %5 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 2
  %6 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 17
  %7 = load i32, ptr %6, align 8, !tbaa !9
  %8 = add nsw i32 %7, 1
  store i32 %8, ptr %6, align 8, !tbaa !9
  %9 = sext i32 %7 to i64
  %10 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %5, i64 noundef %9)
  %11 = load i8, ptr %10, align 1, !tbaa !16
  %12 = zext i8 %11 to i32
  switch i32 %12, label %1835 [
    i32 0, label %13
    i32 1, label %14
    i32 2, label %18
    i32 3, label %22
    i32 4, label %27
    i32 7, label %29
    i32 8, label %42
    i32 9, label %44
    i32 10, label %48
    i32 11, label %52
    i32 12, label %57
    i32 15, label %59
    i32 16, label %72
    i32 17, label %74
    i32 18, label %78
    i32 19, label %82
    i32 20, label %87
    i32 23, label %89
    i32 24, label %102
    i32 25, label %104
    i32 26, label %108
    i32 27, label %112
    i32 28, label %117
    i32 31, label %119
    i32 32, label %132
    i32 33, label %138
    i32 34, label %146
    i32 35, label %154
    i32 36, label %169
    i32 39, label %175
    i32 40, label %198
    i32 41, label %204
    i32 42, label %212
    i32 43, label %220
    i32 44, label %235
    i32 47, label %241
    i32 48, label %264
    i32 49, label %270
    i32 50, label %278
    i32 51, label %286
    i32 52, label %299
    i32 55, label %305
    i32 56, label %318
    i32 57, label %319
    i32 59, label %323
    i32 60, label %337
    i32 63, label %354
    i32 64, label %368
    i32 65, label %372
    i32 66, label %376
    i32 67, label %380
    i32 68, label %384
    i32 69, label %393
    i32 70, label %402
    i32 71, label %410
    i32 72, label %420
    i32 73, label %424
    i32 74, label %428
    i32 75, label %432
    i32 76, label %436
    i32 77, label %445
    i32 78, label %454
    i32 79, label %462
    i32 80, label %472
    i32 81, label %476
    i32 82, label %480
    i32 83, label %484
    i32 84, label %488
    i32 85, label %497
    i32 86, label %506
    i32 87, label %514
    i32 88, label %524
    i32 89, label %528
    i32 90, label %532
    i32 91, label %536
    i32 92, label %540
    i32 93, label %549
    i32 94, label %558
    i32 95, label %566
    i32 96, label %576
    i32 97, label %585
    i32 98, label %594
    i32 99, label %603
    i32 100, label %612
    i32 101, label %624
    i32 102, label %636
    i32 103, label %649
    i32 104, label %662
    i32 105, label %671
    i32 106, label %680
    i32 107, label %689
    i32 108, label %698
    i32 109, label %710
    i32 110, label %722
    i32 111, label %735
    i32 112, label %748
    i32 113, label %756
    i32 114, label %764
    i32 115, label %772
    i32 116, label %780
    i32 117, label %793
    i32 118, label %806
    i32 119, label %818
    i32 128, label %832
    i32 129, label %838
    i32 130, label %844
    i32 131, label %850
    i32 132, label %856
    i32 133, label %867
    i32 134, label %878
    i32 135, label %888
    i32 136, label %900
    i32 137, label %906
    i32 138, label %912
    i32 139, label %918
    i32 140, label %924
    i32 141, label %935
    i32 142, label %946
    i32 143, label %956
    i32 144, label %968
    i32 145, label %974
    i32 146, label %980
    i32 147, label %986
    i32 148, label %992
    i32 149, label %1003
    i32 150, label %1014
    i32 151, label %1024
    i32 152, label %1036
    i32 153, label %1039
    i32 154, label %1042
    i32 155, label %1045
    i32 156, label %1048
    i32 157, label %1056
    i32 158, label %1064
    i32 159, label %1071
    i32 160, label %1080
    i32 161, label %1083
    i32 162, label %1086
    i32 163, label %1089
    i32 164, label %1092
    i32 165, label %1100
    i32 166, label %1108
    i32 167, label %1115
    i32 168, label %1124
    i32 169, label %1130
    i32 170, label %1136
    i32 171, label %1142
    i32 172, label %1148
    i32 173, label %1159
    i32 174, label %1170
    i32 175, label %1180
    i32 176, label %1192
    i32 177, label %1199
    i32 178, label %1206
    i32 179, label %1213
    i32 180, label %1220
    i32 181, label %1232
    i32 182, label %1244
    i32 183, label %1255
    i32 184, label %1268
    i32 185, label %1274
    i32 186, label %1280
    i32 187, label %1286
    i32 188, label %1292
    i32 189, label %1303
    i32 190, label %1314
    i32 191, label %1324
    i32 192, label %1336
    i32 193, label %1342
    i32 194, label %1348
    i32 195, label %1354
    i32 196, label %1360
    i32 197, label %1371
    i32 198, label %1382
    i32 199, label %1392
    i32 200, label %1404
    i32 201, label %1411
    i32 202, label %1418
    i32 203, label %1425
    i32 204, label %1432
    i32 205, label %1444
    i32 206, label %1456
    i32 207, label %1467
    i32 208, label %1480
    i32 209, label %1487
    i32 210, label %1494
    i32 211, label %1501
    i32 212, label %1508
    i32 213, label %1520
    i32 214, label %1532
    i32 215, label %1543
    i32 216, label %1556
    i32 217, label %1564
    i32 218, label %1572
    i32 219, label %1580
    i32 220, label %1588
    i32 221, label %1601
    i32 222, label %1614
    i32 223, label %1626
    i32 224, label %1640
    i32 225, label %1648
    i32 226, label %1656
    i32 227, label %1664
    i32 228, label %1672
    i32 229, label %1685
    i32 230, label %1698
    i32 231, label %1710
    i32 232, label %1724
    i32 233, label %1732
    i32 234, label %1740
    i32 235, label %1748
    i32 236, label %1756
    i32 237, label %1769
    i32 238, label %1782
    i32 239, label %1794
    i32 255, label %1808
  ]

13:                                               ; preds = %1
  call void @_ZN7libzpaq5ZPAQL3errEv(ptr noundef nonnull align 8 dereferenceable(192) %4)
  br label %1836

14:                                               ; preds = %1
  %15 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %16 = load i32, ptr %15, align 4, !tbaa !17
  %17 = add i32 %16, 1
  store i32 %17, ptr %15, align 4, !tbaa !17
  br label %1836

18:                                               ; preds = %1
  %19 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %20 = load i32, ptr %19, align 4, !tbaa !17
  %21 = add i32 %20, -1
  store i32 %21, ptr %19, align 4, !tbaa !17
  br label %1836

22:                                               ; preds = %1
  %23 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %24 = load i32, ptr %23, align 4, !tbaa !17
  %25 = xor i32 %24, -1
  %26 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  store i32 %25, ptr %26, align 4, !tbaa !17
  br label %1836

27:                                               ; preds = %1
  %28 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  store i32 0, ptr %28, align 4, !tbaa !17
  br label %1836

29:                                               ; preds = %1
  %30 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 9
  %31 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 2
  %32 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 17
  %33 = load i32, ptr %32, align 8, !tbaa !9
  %34 = add nsw i32 %33, 1
  store i32 %34, ptr %32, align 8, !tbaa !9
  %35 = sext i32 %33 to i64
  %36 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %31, i64 noundef %35)
  %37 = load i8, ptr %36, align 1, !tbaa !16
  %38 = zext i8 %37 to i64
  %39 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEixEm(ptr noundef nonnull align 8 dereferenceable(20) %30, i64 noundef %38)
  %40 = load i32, ptr %39, align 4, !tbaa !18
  %41 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  store i32 %40, ptr %41, align 4, !tbaa !17
  br label %1836

42:                                               ; preds = %1
  %43 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  call void @_ZN7libzpaq5ZPAQL4swapERj(ptr noundef nonnull align 8 dereferenceable(192) %4, ptr noundef nonnull align 4 dereferenceable(4) %43)
  br label %1836

44:                                               ; preds = %1
  %45 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %46 = load i32, ptr %45, align 8, !tbaa !19
  %47 = add i32 %46, 1
  store i32 %47, ptr %45, align 8, !tbaa !19
  br label %1836

48:                                               ; preds = %1
  %49 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %50 = load i32, ptr %49, align 8, !tbaa !19
  %51 = add i32 %50, -1
  store i32 %51, ptr %49, align 8, !tbaa !19
  br label %1836

52:                                               ; preds = %1
  %53 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %54 = load i32, ptr %53, align 8, !tbaa !19
  %55 = xor i32 %54, -1
  %56 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  store i32 %55, ptr %56, align 8, !tbaa !19
  br label %1836

57:                                               ; preds = %1
  %58 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  store i32 0, ptr %58, align 8, !tbaa !19
  br label %1836

59:                                               ; preds = %1
  %60 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 9
  %61 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 2
  %62 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 17
  %63 = load i32, ptr %62, align 8, !tbaa !9
  %64 = add nsw i32 %63, 1
  store i32 %64, ptr %62, align 8, !tbaa !9
  %65 = sext i32 %63 to i64
  %66 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %61, i64 noundef %65)
  %67 = load i8, ptr %66, align 1, !tbaa !16
  %68 = zext i8 %67 to i64
  %69 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEixEm(ptr noundef nonnull align 8 dereferenceable(20) %60, i64 noundef %68)
  %70 = load i32, ptr %69, align 4, !tbaa !18
  %71 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  store i32 %70, ptr %71, align 8, !tbaa !19
  br label %1836

72:                                               ; preds = %1
  %73 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  call void @_ZN7libzpaq5ZPAQL4swapERj(ptr noundef nonnull align 8 dereferenceable(192) %4, ptr noundef nonnull align 4 dereferenceable(4) %73)
  br label %1836

74:                                               ; preds = %1
  %75 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %76 = load i32, ptr %75, align 4, !tbaa !20
  %77 = add i32 %76, 1
  store i32 %77, ptr %75, align 4, !tbaa !20
  br label %1836

78:                                               ; preds = %1
  %79 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %80 = load i32, ptr %79, align 4, !tbaa !20
  %81 = add i32 %80, -1
  store i32 %81, ptr %79, align 4, !tbaa !20
  br label %1836

82:                                               ; preds = %1
  %83 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %84 = load i32, ptr %83, align 4, !tbaa !20
  %85 = xor i32 %84, -1
  %86 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  store i32 %85, ptr %86, align 4, !tbaa !20
  br label %1836

87:                                               ; preds = %1
  %88 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  store i32 0, ptr %88, align 4, !tbaa !20
  br label %1836

89:                                               ; preds = %1
  %90 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 9
  %91 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 2
  %92 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 17
  %93 = load i32, ptr %92, align 8, !tbaa !9
  %94 = add nsw i32 %93, 1
  store i32 %94, ptr %92, align 8, !tbaa !9
  %95 = sext i32 %93 to i64
  %96 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %91, i64 noundef %95)
  %97 = load i8, ptr %96, align 1, !tbaa !16
  %98 = zext i8 %97 to i64
  %99 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEixEm(ptr noundef nonnull align 8 dereferenceable(20) %90, i64 noundef %98)
  %100 = load i32, ptr %99, align 4, !tbaa !18
  %101 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  store i32 %100, ptr %101, align 4, !tbaa !20
  br label %1836

102:                                              ; preds = %1
  %103 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  call void @_ZN7libzpaq5ZPAQL4swapERj(ptr noundef nonnull align 8 dereferenceable(192) %4, ptr noundef nonnull align 4 dereferenceable(4) %103)
  br label %1836

104:                                              ; preds = %1
  %105 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %106 = load i32, ptr %105, align 8, !tbaa !21
  %107 = add i32 %106, 1
  store i32 %107, ptr %105, align 8, !tbaa !21
  br label %1836

108:                                              ; preds = %1
  %109 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %110 = load i32, ptr %109, align 8, !tbaa !21
  %111 = add i32 %110, -1
  store i32 %111, ptr %109, align 8, !tbaa !21
  br label %1836

112:                                              ; preds = %1
  %113 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %114 = load i32, ptr %113, align 8, !tbaa !21
  %115 = xor i32 %114, -1
  %116 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  store i32 %115, ptr %116, align 8, !tbaa !21
  br label %1836

117:                                              ; preds = %1
  %118 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  store i32 0, ptr %118, align 8, !tbaa !21
  br label %1836

119:                                              ; preds = %1
  %120 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 9
  %121 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 2
  %122 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 17
  %123 = load i32, ptr %122, align 8, !tbaa !9
  %124 = add nsw i32 %123, 1
  store i32 %124, ptr %122, align 8, !tbaa !9
  %125 = sext i32 %123 to i64
  %126 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %121, i64 noundef %125)
  %127 = load i8, ptr %126, align 1, !tbaa !16
  %128 = zext i8 %127 to i64
  %129 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEixEm(ptr noundef nonnull align 8 dereferenceable(20) %120, i64 noundef %128)
  %130 = load i32, ptr %129, align 4, !tbaa !18
  %131 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  store i32 %130, ptr %131, align 8, !tbaa !21
  br label %1836

132:                                              ; preds = %1
  %133 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %134 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %135 = load i32, ptr %134, align 8, !tbaa !19
  %136 = zext i32 %135 to i64
  %137 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %133, i64 noundef %136)
  call void @_ZN7libzpaq5ZPAQL4swapERh(ptr noundef nonnull align 8 dereferenceable(192) %4, ptr noundef nonnull align 1 dereferenceable(1) %137)
  br label %1836

138:                                              ; preds = %1
  %139 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %140 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %141 = load i32, ptr %140, align 8, !tbaa !19
  %142 = zext i32 %141 to i64
  %143 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %139, i64 noundef %142)
  %144 = load i8, ptr %143, align 1, !tbaa !16
  %145 = add i8 %144, 1
  store i8 %145, ptr %143, align 1, !tbaa !16
  br label %1836

146:                                              ; preds = %1
  %147 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %148 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %149 = load i32, ptr %148, align 8, !tbaa !19
  %150 = zext i32 %149 to i64
  %151 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %147, i64 noundef %150)
  %152 = load i8, ptr %151, align 1, !tbaa !16
  %153 = add i8 %152, -1
  store i8 %153, ptr %151, align 1, !tbaa !16
  br label %1836

154:                                              ; preds = %1
  %155 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %156 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %157 = load i32, ptr %156, align 8, !tbaa !19
  %158 = zext i32 %157 to i64
  %159 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %155, i64 noundef %158)
  %160 = load i8, ptr %159, align 1, !tbaa !16
  %161 = zext i8 %160 to i32
  %162 = xor i32 %161, -1
  %163 = trunc i32 %162 to i8
  %164 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %165 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %166 = load i32, ptr %165, align 8, !tbaa !19
  %167 = zext i32 %166 to i64
  %168 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %164, i64 noundef %167)
  store i8 %163, ptr %168, align 1, !tbaa !16
  br label %1836

169:                                              ; preds = %1
  %170 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %171 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %172 = load i32, ptr %171, align 8, !tbaa !19
  %173 = zext i32 %172 to i64
  %174 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %170, i64 noundef %173)
  store i8 0, ptr %174, align 1, !tbaa !16
  br label %1836

175:                                              ; preds = %1
  %176 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 16
  %177 = load i32, ptr %176, align 4, !tbaa !22
  %178 = icmp ne i32 %177, 0
  br i1 %178, label %179, label %193

179:                                              ; preds = %175
  %180 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 2
  %181 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 17
  %182 = load i32, ptr %181, align 8, !tbaa !9
  %183 = sext i32 %182 to i64
  %184 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %180, i64 noundef %183)
  %185 = load i8, ptr %184, align 1, !tbaa !16
  %186 = zext i8 %185 to i32
  %187 = add nsw i32 %186, 128
  %188 = and i32 %187, 255
  %189 = sub nsw i32 %188, 127
  %190 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 17
  %191 = load i32, ptr %190, align 8, !tbaa !9
  %192 = add nsw i32 %191, %189
  store i32 %192, ptr %190, align 8, !tbaa !9
  br label %197

193:                                              ; preds = %175
  %194 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 17
  %195 = load i32, ptr %194, align 8, !tbaa !9
  %196 = add nsw i32 %195, 1
  store i32 %196, ptr %194, align 8, !tbaa !9
  br label %197

197:                                              ; preds = %193, %179
  br label %1836

198:                                              ; preds = %1
  %199 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %200 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %201 = load i32, ptr %200, align 4, !tbaa !20
  %202 = zext i32 %201 to i64
  %203 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %199, i64 noundef %202)
  call void @_ZN7libzpaq5ZPAQL4swapERh(ptr noundef nonnull align 8 dereferenceable(192) %4, ptr noundef nonnull align 1 dereferenceable(1) %203)
  br label %1836

204:                                              ; preds = %1
  %205 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %206 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %207 = load i32, ptr %206, align 4, !tbaa !20
  %208 = zext i32 %207 to i64
  %209 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %205, i64 noundef %208)
  %210 = load i8, ptr %209, align 1, !tbaa !16
  %211 = add i8 %210, 1
  store i8 %211, ptr %209, align 1, !tbaa !16
  br label %1836

212:                                              ; preds = %1
  %213 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %214 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %215 = load i32, ptr %214, align 4, !tbaa !20
  %216 = zext i32 %215 to i64
  %217 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %213, i64 noundef %216)
  %218 = load i8, ptr %217, align 1, !tbaa !16
  %219 = add i8 %218, -1
  store i8 %219, ptr %217, align 1, !tbaa !16
  br label %1836

220:                                              ; preds = %1
  %221 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %222 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %223 = load i32, ptr %222, align 4, !tbaa !20
  %224 = zext i32 %223 to i64
  %225 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %221, i64 noundef %224)
  %226 = load i8, ptr %225, align 1, !tbaa !16
  %227 = zext i8 %226 to i32
  %228 = xor i32 %227, -1
  %229 = trunc i32 %228 to i8
  %230 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %231 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %232 = load i32, ptr %231, align 4, !tbaa !20
  %233 = zext i32 %232 to i64
  %234 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %230, i64 noundef %233)
  store i8 %229, ptr %234, align 1, !tbaa !16
  br label %1836

235:                                              ; preds = %1
  %236 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %237 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %238 = load i32, ptr %237, align 4, !tbaa !20
  %239 = zext i32 %238 to i64
  %240 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %236, i64 noundef %239)
  store i8 0, ptr %240, align 1, !tbaa !16
  br label %1836

241:                                              ; preds = %1
  %242 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 16
  %243 = load i32, ptr %242, align 4, !tbaa !22
  %244 = icmp ne i32 %243, 0
  br i1 %244, label %259, label %245

245:                                              ; preds = %241
  %246 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 2
  %247 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 17
  %248 = load i32, ptr %247, align 8, !tbaa !9
  %249 = sext i32 %248 to i64
  %250 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %246, i64 noundef %249)
  %251 = load i8, ptr %250, align 1, !tbaa !16
  %252 = zext i8 %251 to i32
  %253 = add nsw i32 %252, 128
  %254 = and i32 %253, 255
  %255 = sub nsw i32 %254, 127
  %256 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 17
  %257 = load i32, ptr %256, align 8, !tbaa !9
  %258 = add nsw i32 %257, %255
  store i32 %258, ptr %256, align 8, !tbaa !9
  br label %263

259:                                              ; preds = %241
  %260 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 17
  %261 = load i32, ptr %260, align 8, !tbaa !9
  %262 = add nsw i32 %261, 1
  store i32 %262, ptr %260, align 8, !tbaa !9
  br label %263

263:                                              ; preds = %259, %245
  br label %1836

264:                                              ; preds = %1
  %265 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 8
  %266 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %267 = load i32, ptr %266, align 8, !tbaa !21
  %268 = zext i32 %267 to i64
  %269 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %265, i64 noundef %268)
  call void @_ZN7libzpaq5ZPAQL4swapERj(ptr noundef nonnull align 8 dereferenceable(192) %4, ptr noundef nonnull align 4 dereferenceable(4) %269)
  br label %1836

270:                                              ; preds = %1
  %271 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 8
  %272 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %273 = load i32, ptr %272, align 8, !tbaa !21
  %274 = zext i32 %273 to i64
  %275 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %271, i64 noundef %274)
  %276 = load i32, ptr %275, align 4, !tbaa !18
  %277 = add i32 %276, 1
  store i32 %277, ptr %275, align 4, !tbaa !18
  br label %1836

278:                                              ; preds = %1
  %279 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 8
  %280 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %281 = load i32, ptr %280, align 8, !tbaa !21
  %282 = zext i32 %281 to i64
  %283 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %279, i64 noundef %282)
  %284 = load i32, ptr %283, align 4, !tbaa !18
  %285 = add i32 %284, -1
  store i32 %285, ptr %283, align 4, !tbaa !18
  br label %1836

286:                                              ; preds = %1
  %287 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 8
  %288 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %289 = load i32, ptr %288, align 8, !tbaa !21
  %290 = zext i32 %289 to i64
  %291 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %287, i64 noundef %290)
  %292 = load i32, ptr %291, align 4, !tbaa !18
  %293 = xor i32 %292, -1
  %294 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 8
  %295 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %296 = load i32, ptr %295, align 8, !tbaa !21
  %297 = zext i32 %296 to i64
  %298 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %294, i64 noundef %297)
  store i32 %293, ptr %298, align 4, !tbaa !18
  br label %1836

299:                                              ; preds = %1
  %300 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 8
  %301 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %302 = load i32, ptr %301, align 8, !tbaa !21
  %303 = zext i32 %302 to i64
  %304 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %300, i64 noundef %303)
  store i32 0, ptr %304, align 4, !tbaa !18
  br label %1836

305:                                              ; preds = %1
  %306 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %307 = load i32, ptr %306, align 4, !tbaa !17
  %308 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 9
  %309 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 2
  %310 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 17
  %311 = load i32, ptr %310, align 8, !tbaa !9
  %312 = add nsw i32 %311, 1
  store i32 %312, ptr %310, align 8, !tbaa !9
  %313 = sext i32 %311 to i64
  %314 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %309, i64 noundef %313)
  %315 = load i8, ptr %314, align 1, !tbaa !16
  %316 = zext i8 %315 to i64
  %317 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEixEm(ptr noundef nonnull align 8 dereferenceable(20) %308, i64 noundef %316)
  store i32 %307, ptr %317, align 4, !tbaa !18
  br label %1836

318:                                              ; preds = %1
  store i32 0, ptr %2, align 4
  br label %1837

319:                                              ; preds = %1
  %320 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %321 = load i32, ptr %320, align 4, !tbaa !17
  %322 = and i32 %321, 255
  call void @_ZN7libzpaq5ZPAQL4outcEi(ptr noundef nonnull align 8 dereferenceable(192) %4, i32 noundef %322)
  br label %1836

323:                                              ; preds = %1
  %324 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %325 = load i32, ptr %324, align 4, !tbaa !17
  %326 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %327 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %328 = load i32, ptr %327, align 8, !tbaa !19
  %329 = zext i32 %328 to i64
  %330 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %326, i64 noundef %329)
  %331 = load i8, ptr %330, align 1, !tbaa !16
  %332 = zext i8 %331 to i32
  %333 = add i32 %325, %332
  %334 = add i32 %333, 512
  %335 = mul i32 %334, 773
  %336 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  store i32 %335, ptr %336, align 4, !tbaa !17
  br label %1836

337:                                              ; preds = %1
  %338 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 8
  %339 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %340 = load i32, ptr %339, align 8, !tbaa !21
  %341 = zext i32 %340 to i64
  %342 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %338, i64 noundef %341)
  %343 = load i32, ptr %342, align 4, !tbaa !18
  %344 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %345 = load i32, ptr %344, align 4, !tbaa !17
  %346 = add i32 %343, %345
  %347 = add i32 %346, 512
  %348 = mul i32 %347, 773
  %349 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 8
  %350 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %351 = load i32, ptr %350, align 8, !tbaa !21
  %352 = zext i32 %351 to i64
  %353 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %349, i64 noundef %352)
  store i32 %348, ptr %353, align 4, !tbaa !18
  br label %1836

354:                                              ; preds = %1
  %355 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 2
  %356 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 17
  %357 = load i32, ptr %356, align 8, !tbaa !9
  %358 = sext i32 %357 to i64
  %359 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %355, i64 noundef %358)
  %360 = load i8, ptr %359, align 1, !tbaa !16
  %361 = zext i8 %360 to i32
  %362 = add nsw i32 %361, 128
  %363 = and i32 %362, 255
  %364 = sub nsw i32 %363, 127
  %365 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 17
  %366 = load i32, ptr %365, align 8, !tbaa !9
  %367 = add nsw i32 %366, %364
  store i32 %367, ptr %365, align 8, !tbaa !9
  br label %1836

368:                                              ; preds = %1
  %369 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %370 = load i32, ptr %369, align 4, !tbaa !17
  %371 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  store i32 %370, ptr %371, align 4, !tbaa !17
  br label %1836

372:                                              ; preds = %1
  %373 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %374 = load i32, ptr %373, align 8, !tbaa !19
  %375 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  store i32 %374, ptr %375, align 4, !tbaa !17
  br label %1836

376:                                              ; preds = %1
  %377 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %378 = load i32, ptr %377, align 4, !tbaa !20
  %379 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  store i32 %378, ptr %379, align 4, !tbaa !17
  br label %1836

380:                                              ; preds = %1
  %381 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %382 = load i32, ptr %381, align 8, !tbaa !21
  %383 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  store i32 %382, ptr %383, align 4, !tbaa !17
  br label %1836

384:                                              ; preds = %1
  %385 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %386 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %387 = load i32, ptr %386, align 8, !tbaa !19
  %388 = zext i32 %387 to i64
  %389 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %385, i64 noundef %388)
  %390 = load i8, ptr %389, align 1, !tbaa !16
  %391 = zext i8 %390 to i32
  %392 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  store i32 %391, ptr %392, align 4, !tbaa !17
  br label %1836

393:                                              ; preds = %1
  %394 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %395 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %396 = load i32, ptr %395, align 4, !tbaa !20
  %397 = zext i32 %396 to i64
  %398 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %394, i64 noundef %397)
  %399 = load i8, ptr %398, align 1, !tbaa !16
  %400 = zext i8 %399 to i32
  %401 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  store i32 %400, ptr %401, align 4, !tbaa !17
  br label %1836

402:                                              ; preds = %1
  %403 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 8
  %404 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %405 = load i32, ptr %404, align 8, !tbaa !21
  %406 = zext i32 %405 to i64
  %407 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %403, i64 noundef %406)
  %408 = load i32, ptr %407, align 4, !tbaa !18
  %409 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  store i32 %408, ptr %409, align 4, !tbaa !17
  br label %1836

410:                                              ; preds = %1
  %411 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 2
  %412 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 17
  %413 = load i32, ptr %412, align 8, !tbaa !9
  %414 = add nsw i32 %413, 1
  store i32 %414, ptr %412, align 8, !tbaa !9
  %415 = sext i32 %413 to i64
  %416 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %411, i64 noundef %415)
  %417 = load i8, ptr %416, align 1, !tbaa !16
  %418 = zext i8 %417 to i32
  %419 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  store i32 %418, ptr %419, align 4, !tbaa !17
  br label %1836

420:                                              ; preds = %1
  %421 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %422 = load i32, ptr %421, align 4, !tbaa !17
  %423 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  store i32 %422, ptr %423, align 8, !tbaa !19
  br label %1836

424:                                              ; preds = %1
  %425 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %426 = load i32, ptr %425, align 8, !tbaa !19
  %427 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  store i32 %426, ptr %427, align 8, !tbaa !19
  br label %1836

428:                                              ; preds = %1
  %429 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %430 = load i32, ptr %429, align 4, !tbaa !20
  %431 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  store i32 %430, ptr %431, align 8, !tbaa !19
  br label %1836

432:                                              ; preds = %1
  %433 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %434 = load i32, ptr %433, align 8, !tbaa !21
  %435 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  store i32 %434, ptr %435, align 8, !tbaa !19
  br label %1836

436:                                              ; preds = %1
  %437 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %438 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %439 = load i32, ptr %438, align 8, !tbaa !19
  %440 = zext i32 %439 to i64
  %441 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %437, i64 noundef %440)
  %442 = load i8, ptr %441, align 1, !tbaa !16
  %443 = zext i8 %442 to i32
  %444 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  store i32 %443, ptr %444, align 8, !tbaa !19
  br label %1836

445:                                              ; preds = %1
  %446 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %447 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %448 = load i32, ptr %447, align 4, !tbaa !20
  %449 = zext i32 %448 to i64
  %450 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %446, i64 noundef %449)
  %451 = load i8, ptr %450, align 1, !tbaa !16
  %452 = zext i8 %451 to i32
  %453 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  store i32 %452, ptr %453, align 8, !tbaa !19
  br label %1836

454:                                              ; preds = %1
  %455 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 8
  %456 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %457 = load i32, ptr %456, align 8, !tbaa !21
  %458 = zext i32 %457 to i64
  %459 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %455, i64 noundef %458)
  %460 = load i32, ptr %459, align 4, !tbaa !18
  %461 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  store i32 %460, ptr %461, align 8, !tbaa !19
  br label %1836

462:                                              ; preds = %1
  %463 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 2
  %464 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 17
  %465 = load i32, ptr %464, align 8, !tbaa !9
  %466 = add nsw i32 %465, 1
  store i32 %466, ptr %464, align 8, !tbaa !9
  %467 = sext i32 %465 to i64
  %468 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %463, i64 noundef %467)
  %469 = load i8, ptr %468, align 1, !tbaa !16
  %470 = zext i8 %469 to i32
  %471 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  store i32 %470, ptr %471, align 8, !tbaa !19
  br label %1836

472:                                              ; preds = %1
  %473 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %474 = load i32, ptr %473, align 4, !tbaa !17
  %475 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  store i32 %474, ptr %475, align 4, !tbaa !20
  br label %1836

476:                                              ; preds = %1
  %477 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %478 = load i32, ptr %477, align 8, !tbaa !19
  %479 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  store i32 %478, ptr %479, align 4, !tbaa !20
  br label %1836

480:                                              ; preds = %1
  %481 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %482 = load i32, ptr %481, align 4, !tbaa !20
  %483 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  store i32 %482, ptr %483, align 4, !tbaa !20
  br label %1836

484:                                              ; preds = %1
  %485 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %486 = load i32, ptr %485, align 8, !tbaa !21
  %487 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  store i32 %486, ptr %487, align 4, !tbaa !20
  br label %1836

488:                                              ; preds = %1
  %489 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %490 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %491 = load i32, ptr %490, align 8, !tbaa !19
  %492 = zext i32 %491 to i64
  %493 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %489, i64 noundef %492)
  %494 = load i8, ptr %493, align 1, !tbaa !16
  %495 = zext i8 %494 to i32
  %496 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  store i32 %495, ptr %496, align 4, !tbaa !20
  br label %1836

497:                                              ; preds = %1
  %498 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %499 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %500 = load i32, ptr %499, align 4, !tbaa !20
  %501 = zext i32 %500 to i64
  %502 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %498, i64 noundef %501)
  %503 = load i8, ptr %502, align 1, !tbaa !16
  %504 = zext i8 %503 to i32
  %505 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  store i32 %504, ptr %505, align 4, !tbaa !20
  br label %1836

506:                                              ; preds = %1
  %507 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 8
  %508 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %509 = load i32, ptr %508, align 8, !tbaa !21
  %510 = zext i32 %509 to i64
  %511 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %507, i64 noundef %510)
  %512 = load i32, ptr %511, align 4, !tbaa !18
  %513 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  store i32 %512, ptr %513, align 4, !tbaa !20
  br label %1836

514:                                              ; preds = %1
  %515 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 2
  %516 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 17
  %517 = load i32, ptr %516, align 8, !tbaa !9
  %518 = add nsw i32 %517, 1
  store i32 %518, ptr %516, align 8, !tbaa !9
  %519 = sext i32 %517 to i64
  %520 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %515, i64 noundef %519)
  %521 = load i8, ptr %520, align 1, !tbaa !16
  %522 = zext i8 %521 to i32
  %523 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  store i32 %522, ptr %523, align 4, !tbaa !20
  br label %1836

524:                                              ; preds = %1
  %525 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %526 = load i32, ptr %525, align 4, !tbaa !17
  %527 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  store i32 %526, ptr %527, align 8, !tbaa !21
  br label %1836

528:                                              ; preds = %1
  %529 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %530 = load i32, ptr %529, align 8, !tbaa !19
  %531 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  store i32 %530, ptr %531, align 8, !tbaa !21
  br label %1836

532:                                              ; preds = %1
  %533 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %534 = load i32, ptr %533, align 4, !tbaa !20
  %535 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  store i32 %534, ptr %535, align 8, !tbaa !21
  br label %1836

536:                                              ; preds = %1
  %537 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %538 = load i32, ptr %537, align 8, !tbaa !21
  %539 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  store i32 %538, ptr %539, align 8, !tbaa !21
  br label %1836

540:                                              ; preds = %1
  %541 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %542 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %543 = load i32, ptr %542, align 8, !tbaa !19
  %544 = zext i32 %543 to i64
  %545 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %541, i64 noundef %544)
  %546 = load i8, ptr %545, align 1, !tbaa !16
  %547 = zext i8 %546 to i32
  %548 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  store i32 %547, ptr %548, align 8, !tbaa !21
  br label %1836

549:                                              ; preds = %1
  %550 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %551 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %552 = load i32, ptr %551, align 4, !tbaa !20
  %553 = zext i32 %552 to i64
  %554 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %550, i64 noundef %553)
  %555 = load i8, ptr %554, align 1, !tbaa !16
  %556 = zext i8 %555 to i32
  %557 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  store i32 %556, ptr %557, align 8, !tbaa !21
  br label %1836

558:                                              ; preds = %1
  %559 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 8
  %560 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %561 = load i32, ptr %560, align 8, !tbaa !21
  %562 = zext i32 %561 to i64
  %563 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %559, i64 noundef %562)
  %564 = load i32, ptr %563, align 4, !tbaa !18
  %565 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  store i32 %564, ptr %565, align 8, !tbaa !21
  br label %1836

566:                                              ; preds = %1
  %567 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 2
  %568 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 17
  %569 = load i32, ptr %568, align 8, !tbaa !9
  %570 = add nsw i32 %569, 1
  store i32 %570, ptr %568, align 8, !tbaa !9
  %571 = sext i32 %569 to i64
  %572 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %567, i64 noundef %571)
  %573 = load i8, ptr %572, align 1, !tbaa !16
  %574 = zext i8 %573 to i32
  %575 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  store i32 %574, ptr %575, align 8, !tbaa !21
  br label %1836

576:                                              ; preds = %1
  %577 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %578 = load i32, ptr %577, align 4, !tbaa !17
  %579 = trunc i32 %578 to i8
  %580 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %581 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %582 = load i32, ptr %581, align 8, !tbaa !19
  %583 = zext i32 %582 to i64
  %584 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %580, i64 noundef %583)
  store i8 %579, ptr %584, align 1, !tbaa !16
  br label %1836

585:                                              ; preds = %1
  %586 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %587 = load i32, ptr %586, align 8, !tbaa !19
  %588 = trunc i32 %587 to i8
  %589 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %590 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %591 = load i32, ptr %590, align 8, !tbaa !19
  %592 = zext i32 %591 to i64
  %593 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %589, i64 noundef %592)
  store i8 %588, ptr %593, align 1, !tbaa !16
  br label %1836

594:                                              ; preds = %1
  %595 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %596 = load i32, ptr %595, align 4, !tbaa !20
  %597 = trunc i32 %596 to i8
  %598 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %599 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %600 = load i32, ptr %599, align 8, !tbaa !19
  %601 = zext i32 %600 to i64
  %602 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %598, i64 noundef %601)
  store i8 %597, ptr %602, align 1, !tbaa !16
  br label %1836

603:                                              ; preds = %1
  %604 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %605 = load i32, ptr %604, align 8, !tbaa !21
  %606 = trunc i32 %605 to i8
  %607 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %608 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %609 = load i32, ptr %608, align 8, !tbaa !19
  %610 = zext i32 %609 to i64
  %611 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %607, i64 noundef %610)
  store i8 %606, ptr %611, align 1, !tbaa !16
  br label %1836

612:                                              ; preds = %1
  %613 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %614 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %615 = load i32, ptr %614, align 8, !tbaa !19
  %616 = zext i32 %615 to i64
  %617 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %613, i64 noundef %616)
  %618 = load i8, ptr %617, align 1, !tbaa !16
  %619 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %620 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %621 = load i32, ptr %620, align 8, !tbaa !19
  %622 = zext i32 %621 to i64
  %623 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %619, i64 noundef %622)
  store i8 %618, ptr %623, align 1, !tbaa !16
  br label %1836

624:                                              ; preds = %1
  %625 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %626 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %627 = load i32, ptr %626, align 4, !tbaa !20
  %628 = zext i32 %627 to i64
  %629 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %625, i64 noundef %628)
  %630 = load i8, ptr %629, align 1, !tbaa !16
  %631 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %632 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %633 = load i32, ptr %632, align 8, !tbaa !19
  %634 = zext i32 %633 to i64
  %635 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %631, i64 noundef %634)
  store i8 %630, ptr %635, align 1, !tbaa !16
  br label %1836

636:                                              ; preds = %1
  %637 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 8
  %638 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %639 = load i32, ptr %638, align 8, !tbaa !21
  %640 = zext i32 %639 to i64
  %641 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %637, i64 noundef %640)
  %642 = load i32, ptr %641, align 4, !tbaa !18
  %643 = trunc i32 %642 to i8
  %644 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %645 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %646 = load i32, ptr %645, align 8, !tbaa !19
  %647 = zext i32 %646 to i64
  %648 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %644, i64 noundef %647)
  store i8 %643, ptr %648, align 1, !tbaa !16
  br label %1836

649:                                              ; preds = %1
  %650 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 2
  %651 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 17
  %652 = load i32, ptr %651, align 8, !tbaa !9
  %653 = add nsw i32 %652, 1
  store i32 %653, ptr %651, align 8, !tbaa !9
  %654 = sext i32 %652 to i64
  %655 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %650, i64 noundef %654)
  %656 = load i8, ptr %655, align 1, !tbaa !16
  %657 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %658 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %659 = load i32, ptr %658, align 8, !tbaa !19
  %660 = zext i32 %659 to i64
  %661 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %657, i64 noundef %660)
  store i8 %656, ptr %661, align 1, !tbaa !16
  br label %1836

662:                                              ; preds = %1
  %663 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %664 = load i32, ptr %663, align 4, !tbaa !17
  %665 = trunc i32 %664 to i8
  %666 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %667 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %668 = load i32, ptr %667, align 4, !tbaa !20
  %669 = zext i32 %668 to i64
  %670 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %666, i64 noundef %669)
  store i8 %665, ptr %670, align 1, !tbaa !16
  br label %1836

671:                                              ; preds = %1
  %672 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %673 = load i32, ptr %672, align 8, !tbaa !19
  %674 = trunc i32 %673 to i8
  %675 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %676 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %677 = load i32, ptr %676, align 4, !tbaa !20
  %678 = zext i32 %677 to i64
  %679 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %675, i64 noundef %678)
  store i8 %674, ptr %679, align 1, !tbaa !16
  br label %1836

680:                                              ; preds = %1
  %681 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %682 = load i32, ptr %681, align 4, !tbaa !20
  %683 = trunc i32 %682 to i8
  %684 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %685 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %686 = load i32, ptr %685, align 4, !tbaa !20
  %687 = zext i32 %686 to i64
  %688 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %684, i64 noundef %687)
  store i8 %683, ptr %688, align 1, !tbaa !16
  br label %1836

689:                                              ; preds = %1
  %690 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %691 = load i32, ptr %690, align 8, !tbaa !21
  %692 = trunc i32 %691 to i8
  %693 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %694 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %695 = load i32, ptr %694, align 4, !tbaa !20
  %696 = zext i32 %695 to i64
  %697 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %693, i64 noundef %696)
  store i8 %692, ptr %697, align 1, !tbaa !16
  br label %1836

698:                                              ; preds = %1
  %699 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %700 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %701 = load i32, ptr %700, align 8, !tbaa !19
  %702 = zext i32 %701 to i64
  %703 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %699, i64 noundef %702)
  %704 = load i8, ptr %703, align 1, !tbaa !16
  %705 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %706 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %707 = load i32, ptr %706, align 4, !tbaa !20
  %708 = zext i32 %707 to i64
  %709 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %705, i64 noundef %708)
  store i8 %704, ptr %709, align 1, !tbaa !16
  br label %1836

710:                                              ; preds = %1
  %711 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %712 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %713 = load i32, ptr %712, align 4, !tbaa !20
  %714 = zext i32 %713 to i64
  %715 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %711, i64 noundef %714)
  %716 = load i8, ptr %715, align 1, !tbaa !16
  %717 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %718 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %719 = load i32, ptr %718, align 4, !tbaa !20
  %720 = zext i32 %719 to i64
  %721 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %717, i64 noundef %720)
  store i8 %716, ptr %721, align 1, !tbaa !16
  br label %1836

722:                                              ; preds = %1
  %723 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 8
  %724 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %725 = load i32, ptr %724, align 8, !tbaa !21
  %726 = zext i32 %725 to i64
  %727 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %723, i64 noundef %726)
  %728 = load i32, ptr %727, align 4, !tbaa !18
  %729 = trunc i32 %728 to i8
  %730 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %731 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %732 = load i32, ptr %731, align 4, !tbaa !20
  %733 = zext i32 %732 to i64
  %734 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %730, i64 noundef %733)
  store i8 %729, ptr %734, align 1, !tbaa !16
  br label %1836

735:                                              ; preds = %1
  %736 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 2
  %737 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 17
  %738 = load i32, ptr %737, align 8, !tbaa !9
  %739 = add nsw i32 %738, 1
  store i32 %739, ptr %737, align 8, !tbaa !9
  %740 = sext i32 %738 to i64
  %741 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %736, i64 noundef %740)
  %742 = load i8, ptr %741, align 1, !tbaa !16
  %743 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %744 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %745 = load i32, ptr %744, align 4, !tbaa !20
  %746 = zext i32 %745 to i64
  %747 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %743, i64 noundef %746)
  store i8 %742, ptr %747, align 1, !tbaa !16
  br label %1836

748:                                              ; preds = %1
  %749 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %750 = load i32, ptr %749, align 4, !tbaa !17
  %751 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 8
  %752 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %753 = load i32, ptr %752, align 8, !tbaa !21
  %754 = zext i32 %753 to i64
  %755 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %751, i64 noundef %754)
  store i32 %750, ptr %755, align 4, !tbaa !18
  br label %1836

756:                                              ; preds = %1
  %757 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %758 = load i32, ptr %757, align 8, !tbaa !19
  %759 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 8
  %760 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %761 = load i32, ptr %760, align 8, !tbaa !21
  %762 = zext i32 %761 to i64
  %763 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %759, i64 noundef %762)
  store i32 %758, ptr %763, align 4, !tbaa !18
  br label %1836

764:                                              ; preds = %1
  %765 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %766 = load i32, ptr %765, align 4, !tbaa !20
  %767 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 8
  %768 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %769 = load i32, ptr %768, align 8, !tbaa !21
  %770 = zext i32 %769 to i64
  %771 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %767, i64 noundef %770)
  store i32 %766, ptr %771, align 4, !tbaa !18
  br label %1836

772:                                              ; preds = %1
  %773 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %774 = load i32, ptr %773, align 8, !tbaa !21
  %775 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 8
  %776 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %777 = load i32, ptr %776, align 8, !tbaa !21
  %778 = zext i32 %777 to i64
  %779 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %775, i64 noundef %778)
  store i32 %774, ptr %779, align 4, !tbaa !18
  br label %1836

780:                                              ; preds = %1
  %781 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %782 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %783 = load i32, ptr %782, align 8, !tbaa !19
  %784 = zext i32 %783 to i64
  %785 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %781, i64 noundef %784)
  %786 = load i8, ptr %785, align 1, !tbaa !16
  %787 = zext i8 %786 to i32
  %788 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 8
  %789 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %790 = load i32, ptr %789, align 8, !tbaa !21
  %791 = zext i32 %790 to i64
  %792 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %788, i64 noundef %791)
  store i32 %787, ptr %792, align 4, !tbaa !18
  br label %1836

793:                                              ; preds = %1
  %794 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %795 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %796 = load i32, ptr %795, align 4, !tbaa !20
  %797 = zext i32 %796 to i64
  %798 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %794, i64 noundef %797)
  %799 = load i8, ptr %798, align 1, !tbaa !16
  %800 = zext i8 %799 to i32
  %801 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 8
  %802 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %803 = load i32, ptr %802, align 8, !tbaa !21
  %804 = zext i32 %803 to i64
  %805 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %801, i64 noundef %804)
  store i32 %800, ptr %805, align 4, !tbaa !18
  br label %1836

806:                                              ; preds = %1
  %807 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 8
  %808 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %809 = load i32, ptr %808, align 8, !tbaa !21
  %810 = zext i32 %809 to i64
  %811 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %807, i64 noundef %810)
  %812 = load i32, ptr %811, align 4, !tbaa !18
  %813 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 8
  %814 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %815 = load i32, ptr %814, align 8, !tbaa !21
  %816 = zext i32 %815 to i64
  %817 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %813, i64 noundef %816)
  store i32 %812, ptr %817, align 4, !tbaa !18
  br label %1836

818:                                              ; preds = %1
  %819 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 2
  %820 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 17
  %821 = load i32, ptr %820, align 8, !tbaa !9
  %822 = add nsw i32 %821, 1
  store i32 %822, ptr %820, align 8, !tbaa !9
  %823 = sext i32 %821 to i64
  %824 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %819, i64 noundef %823)
  %825 = load i8, ptr %824, align 1, !tbaa !16
  %826 = zext i8 %825 to i32
  %827 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 8
  %828 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %829 = load i32, ptr %828, align 8, !tbaa !21
  %830 = zext i32 %829 to i64
  %831 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %827, i64 noundef %830)
  store i32 %826, ptr %831, align 4, !tbaa !18
  br label %1836

832:                                              ; preds = %1
  %833 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %834 = load i32, ptr %833, align 4, !tbaa !17
  %835 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %836 = load i32, ptr %835, align 4, !tbaa !17
  %837 = add i32 %836, %834
  store i32 %837, ptr %835, align 4, !tbaa !17
  br label %1836

838:                                              ; preds = %1
  %839 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %840 = load i32, ptr %839, align 8, !tbaa !19
  %841 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %842 = load i32, ptr %841, align 4, !tbaa !17
  %843 = add i32 %842, %840
  store i32 %843, ptr %841, align 4, !tbaa !17
  br label %1836

844:                                              ; preds = %1
  %845 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %846 = load i32, ptr %845, align 4, !tbaa !20
  %847 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %848 = load i32, ptr %847, align 4, !tbaa !17
  %849 = add i32 %848, %846
  store i32 %849, ptr %847, align 4, !tbaa !17
  br label %1836

850:                                              ; preds = %1
  %851 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %852 = load i32, ptr %851, align 8, !tbaa !21
  %853 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %854 = load i32, ptr %853, align 4, !tbaa !17
  %855 = add i32 %854, %852
  store i32 %855, ptr %853, align 4, !tbaa !17
  br label %1836

856:                                              ; preds = %1
  %857 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %858 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %859 = load i32, ptr %858, align 8, !tbaa !19
  %860 = zext i32 %859 to i64
  %861 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %857, i64 noundef %860)
  %862 = load i8, ptr %861, align 1, !tbaa !16
  %863 = zext i8 %862 to i32
  %864 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %865 = load i32, ptr %864, align 4, !tbaa !17
  %866 = add i32 %865, %863
  store i32 %866, ptr %864, align 4, !tbaa !17
  br label %1836

867:                                              ; preds = %1
  %868 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %869 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %870 = load i32, ptr %869, align 4, !tbaa !20
  %871 = zext i32 %870 to i64
  %872 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %868, i64 noundef %871)
  %873 = load i8, ptr %872, align 1, !tbaa !16
  %874 = zext i8 %873 to i32
  %875 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %876 = load i32, ptr %875, align 4, !tbaa !17
  %877 = add i32 %876, %874
  store i32 %877, ptr %875, align 4, !tbaa !17
  br label %1836

878:                                              ; preds = %1
  %879 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 8
  %880 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %881 = load i32, ptr %880, align 8, !tbaa !21
  %882 = zext i32 %881 to i64
  %883 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %879, i64 noundef %882)
  %884 = load i32, ptr %883, align 4, !tbaa !18
  %885 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %886 = load i32, ptr %885, align 4, !tbaa !17
  %887 = add i32 %886, %884
  store i32 %887, ptr %885, align 4, !tbaa !17
  br label %1836

888:                                              ; preds = %1
  %889 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 2
  %890 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 17
  %891 = load i32, ptr %890, align 8, !tbaa !9
  %892 = add nsw i32 %891, 1
  store i32 %892, ptr %890, align 8, !tbaa !9
  %893 = sext i32 %891 to i64
  %894 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %889, i64 noundef %893)
  %895 = load i8, ptr %894, align 1, !tbaa !16
  %896 = zext i8 %895 to i32
  %897 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %898 = load i32, ptr %897, align 4, !tbaa !17
  %899 = add i32 %898, %896
  store i32 %899, ptr %897, align 4, !tbaa !17
  br label %1836

900:                                              ; preds = %1
  %901 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %902 = load i32, ptr %901, align 4, !tbaa !17
  %903 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %904 = load i32, ptr %903, align 4, !tbaa !17
  %905 = sub i32 %904, %902
  store i32 %905, ptr %903, align 4, !tbaa !17
  br label %1836

906:                                              ; preds = %1
  %907 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %908 = load i32, ptr %907, align 8, !tbaa !19
  %909 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %910 = load i32, ptr %909, align 4, !tbaa !17
  %911 = sub i32 %910, %908
  store i32 %911, ptr %909, align 4, !tbaa !17
  br label %1836

912:                                              ; preds = %1
  %913 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %914 = load i32, ptr %913, align 4, !tbaa !20
  %915 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %916 = load i32, ptr %915, align 4, !tbaa !17
  %917 = sub i32 %916, %914
  store i32 %917, ptr %915, align 4, !tbaa !17
  br label %1836

918:                                              ; preds = %1
  %919 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %920 = load i32, ptr %919, align 8, !tbaa !21
  %921 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %922 = load i32, ptr %921, align 4, !tbaa !17
  %923 = sub i32 %922, %920
  store i32 %923, ptr %921, align 4, !tbaa !17
  br label %1836

924:                                              ; preds = %1
  %925 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %926 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %927 = load i32, ptr %926, align 8, !tbaa !19
  %928 = zext i32 %927 to i64
  %929 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %925, i64 noundef %928)
  %930 = load i8, ptr %929, align 1, !tbaa !16
  %931 = zext i8 %930 to i32
  %932 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %933 = load i32, ptr %932, align 4, !tbaa !17
  %934 = sub i32 %933, %931
  store i32 %934, ptr %932, align 4, !tbaa !17
  br label %1836

935:                                              ; preds = %1
  %936 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %937 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %938 = load i32, ptr %937, align 4, !tbaa !20
  %939 = zext i32 %938 to i64
  %940 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %936, i64 noundef %939)
  %941 = load i8, ptr %940, align 1, !tbaa !16
  %942 = zext i8 %941 to i32
  %943 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %944 = load i32, ptr %943, align 4, !tbaa !17
  %945 = sub i32 %944, %942
  store i32 %945, ptr %943, align 4, !tbaa !17
  br label %1836

946:                                              ; preds = %1
  %947 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 8
  %948 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %949 = load i32, ptr %948, align 8, !tbaa !21
  %950 = zext i32 %949 to i64
  %951 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %947, i64 noundef %950)
  %952 = load i32, ptr %951, align 4, !tbaa !18
  %953 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %954 = load i32, ptr %953, align 4, !tbaa !17
  %955 = sub i32 %954, %952
  store i32 %955, ptr %953, align 4, !tbaa !17
  br label %1836

956:                                              ; preds = %1
  %957 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 2
  %958 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 17
  %959 = load i32, ptr %958, align 8, !tbaa !9
  %960 = add nsw i32 %959, 1
  store i32 %960, ptr %958, align 8, !tbaa !9
  %961 = sext i32 %959 to i64
  %962 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %957, i64 noundef %961)
  %963 = load i8, ptr %962, align 1, !tbaa !16
  %964 = zext i8 %963 to i32
  %965 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %966 = load i32, ptr %965, align 4, !tbaa !17
  %967 = sub i32 %966, %964
  store i32 %967, ptr %965, align 4, !tbaa !17
  br label %1836

968:                                              ; preds = %1
  %969 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %970 = load i32, ptr %969, align 4, !tbaa !17
  %971 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %972 = load i32, ptr %971, align 4, !tbaa !17
  %973 = mul i32 %972, %970
  store i32 %973, ptr %971, align 4, !tbaa !17
  br label %1836

974:                                              ; preds = %1
  %975 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %976 = load i32, ptr %975, align 8, !tbaa !19
  %977 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %978 = load i32, ptr %977, align 4, !tbaa !17
  %979 = mul i32 %978, %976
  store i32 %979, ptr %977, align 4, !tbaa !17
  br label %1836

980:                                              ; preds = %1
  %981 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %982 = load i32, ptr %981, align 4, !tbaa !20
  %983 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %984 = load i32, ptr %983, align 4, !tbaa !17
  %985 = mul i32 %984, %982
  store i32 %985, ptr %983, align 4, !tbaa !17
  br label %1836

986:                                              ; preds = %1
  %987 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %988 = load i32, ptr %987, align 8, !tbaa !21
  %989 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %990 = load i32, ptr %989, align 4, !tbaa !17
  %991 = mul i32 %990, %988
  store i32 %991, ptr %989, align 4, !tbaa !17
  br label %1836

992:                                              ; preds = %1
  %993 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %994 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %995 = load i32, ptr %994, align 8, !tbaa !19
  %996 = zext i32 %995 to i64
  %997 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %993, i64 noundef %996)
  %998 = load i8, ptr %997, align 1, !tbaa !16
  %999 = zext i8 %998 to i32
  %1000 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1001 = load i32, ptr %1000, align 4, !tbaa !17
  %1002 = mul i32 %1001, %999
  store i32 %1002, ptr %1000, align 4, !tbaa !17
  br label %1836

1003:                                             ; preds = %1
  %1004 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %1005 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %1006 = load i32, ptr %1005, align 4, !tbaa !20
  %1007 = zext i32 %1006 to i64
  %1008 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1004, i64 noundef %1007)
  %1009 = load i8, ptr %1008, align 1, !tbaa !16
  %1010 = zext i8 %1009 to i32
  %1011 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1012 = load i32, ptr %1011, align 4, !tbaa !17
  %1013 = mul i32 %1012, %1010
  store i32 %1013, ptr %1011, align 4, !tbaa !17
  br label %1836

1014:                                             ; preds = %1
  %1015 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 8
  %1016 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %1017 = load i32, ptr %1016, align 8, !tbaa !21
  %1018 = zext i32 %1017 to i64
  %1019 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1015, i64 noundef %1018)
  %1020 = load i32, ptr %1019, align 4, !tbaa !18
  %1021 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1022 = load i32, ptr %1021, align 4, !tbaa !17
  %1023 = mul i32 %1022, %1020
  store i32 %1023, ptr %1021, align 4, !tbaa !17
  br label %1836

1024:                                             ; preds = %1
  %1025 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 2
  %1026 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 17
  %1027 = load i32, ptr %1026, align 8, !tbaa !9
  %1028 = add nsw i32 %1027, 1
  store i32 %1028, ptr %1026, align 8, !tbaa !9
  %1029 = sext i32 %1027 to i64
  %1030 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %1025, i64 noundef %1029)
  %1031 = load i8, ptr %1030, align 1, !tbaa !16
  %1032 = zext i8 %1031 to i32
  %1033 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1034 = load i32, ptr %1033, align 4, !tbaa !17
  %1035 = mul i32 %1034, %1032
  store i32 %1035, ptr %1033, align 4, !tbaa !17
  br label %1836

1036:                                             ; preds = %1
  %1037 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1038 = load i32, ptr %1037, align 4, !tbaa !17
  call void @_ZN7libzpaq5ZPAQL3divEj(ptr noundef nonnull align 8 dereferenceable(192) %4, i32 noundef %1038)
  br label %1836

1039:                                             ; preds = %1
  %1040 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %1041 = load i32, ptr %1040, align 8, !tbaa !19
  call void @_ZN7libzpaq5ZPAQL3divEj(ptr noundef nonnull align 8 dereferenceable(192) %4, i32 noundef %1041)
  br label %1836

1042:                                             ; preds = %1
  %1043 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %1044 = load i32, ptr %1043, align 4, !tbaa !20
  call void @_ZN7libzpaq5ZPAQL3divEj(ptr noundef nonnull align 8 dereferenceable(192) %4, i32 noundef %1044)
  br label %1836

1045:                                             ; preds = %1
  %1046 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %1047 = load i32, ptr %1046, align 8, !tbaa !21
  call void @_ZN7libzpaq5ZPAQL3divEj(ptr noundef nonnull align 8 dereferenceable(192) %4, i32 noundef %1047)
  br label %1836

1048:                                             ; preds = %1
  %1049 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %1050 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %1051 = load i32, ptr %1050, align 8, !tbaa !19
  %1052 = zext i32 %1051 to i64
  %1053 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1049, i64 noundef %1052)
  %1054 = load i8, ptr %1053, align 1, !tbaa !16
  %1055 = zext i8 %1054 to i32
  call void @_ZN7libzpaq5ZPAQL3divEj(ptr noundef nonnull align 8 dereferenceable(192) %4, i32 noundef %1055)
  br label %1836

1056:                                             ; preds = %1
  %1057 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %1058 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %1059 = load i32, ptr %1058, align 4, !tbaa !20
  %1060 = zext i32 %1059 to i64
  %1061 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1057, i64 noundef %1060)
  %1062 = load i8, ptr %1061, align 1, !tbaa !16
  %1063 = zext i8 %1062 to i32
  call void @_ZN7libzpaq5ZPAQL3divEj(ptr noundef nonnull align 8 dereferenceable(192) %4, i32 noundef %1063)
  br label %1836

1064:                                             ; preds = %1
  %1065 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 8
  %1066 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %1067 = load i32, ptr %1066, align 8, !tbaa !21
  %1068 = zext i32 %1067 to i64
  %1069 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1065, i64 noundef %1068)
  %1070 = load i32, ptr %1069, align 4, !tbaa !18
  call void @_ZN7libzpaq5ZPAQL3divEj(ptr noundef nonnull align 8 dereferenceable(192) %4, i32 noundef %1070)
  br label %1836

1071:                                             ; preds = %1
  %1072 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 2
  %1073 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 17
  %1074 = load i32, ptr %1073, align 8, !tbaa !9
  %1075 = add nsw i32 %1074, 1
  store i32 %1075, ptr %1073, align 8, !tbaa !9
  %1076 = sext i32 %1074 to i64
  %1077 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %1072, i64 noundef %1076)
  %1078 = load i8, ptr %1077, align 1, !tbaa !16
  %1079 = zext i8 %1078 to i32
  call void @_ZN7libzpaq5ZPAQL3divEj(ptr noundef nonnull align 8 dereferenceable(192) %4, i32 noundef %1079)
  br label %1836

1080:                                             ; preds = %1
  %1081 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1082 = load i32, ptr %1081, align 4, !tbaa !17
  call void @_ZN7libzpaq5ZPAQL3modEj(ptr noundef nonnull align 8 dereferenceable(192) %4, i32 noundef %1082)
  br label %1836

1083:                                             ; preds = %1
  %1084 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %1085 = load i32, ptr %1084, align 8, !tbaa !19
  call void @_ZN7libzpaq5ZPAQL3modEj(ptr noundef nonnull align 8 dereferenceable(192) %4, i32 noundef %1085)
  br label %1836

1086:                                             ; preds = %1
  %1087 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %1088 = load i32, ptr %1087, align 4, !tbaa !20
  call void @_ZN7libzpaq5ZPAQL3modEj(ptr noundef nonnull align 8 dereferenceable(192) %4, i32 noundef %1088)
  br label %1836

1089:                                             ; preds = %1
  %1090 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %1091 = load i32, ptr %1090, align 8, !tbaa !21
  call void @_ZN7libzpaq5ZPAQL3modEj(ptr noundef nonnull align 8 dereferenceable(192) %4, i32 noundef %1091)
  br label %1836

1092:                                             ; preds = %1
  %1093 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %1094 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %1095 = load i32, ptr %1094, align 8, !tbaa !19
  %1096 = zext i32 %1095 to i64
  %1097 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1093, i64 noundef %1096)
  %1098 = load i8, ptr %1097, align 1, !tbaa !16
  %1099 = zext i8 %1098 to i32
  call void @_ZN7libzpaq5ZPAQL3modEj(ptr noundef nonnull align 8 dereferenceable(192) %4, i32 noundef %1099)
  br label %1836

1100:                                             ; preds = %1
  %1101 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %1102 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %1103 = load i32, ptr %1102, align 4, !tbaa !20
  %1104 = zext i32 %1103 to i64
  %1105 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1101, i64 noundef %1104)
  %1106 = load i8, ptr %1105, align 1, !tbaa !16
  %1107 = zext i8 %1106 to i32
  call void @_ZN7libzpaq5ZPAQL3modEj(ptr noundef nonnull align 8 dereferenceable(192) %4, i32 noundef %1107)
  br label %1836

1108:                                             ; preds = %1
  %1109 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 8
  %1110 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %1111 = load i32, ptr %1110, align 8, !tbaa !21
  %1112 = zext i32 %1111 to i64
  %1113 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1109, i64 noundef %1112)
  %1114 = load i32, ptr %1113, align 4, !tbaa !18
  call void @_ZN7libzpaq5ZPAQL3modEj(ptr noundef nonnull align 8 dereferenceable(192) %4, i32 noundef %1114)
  br label %1836

1115:                                             ; preds = %1
  %1116 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 2
  %1117 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 17
  %1118 = load i32, ptr %1117, align 8, !tbaa !9
  %1119 = add nsw i32 %1118, 1
  store i32 %1119, ptr %1117, align 8, !tbaa !9
  %1120 = sext i32 %1118 to i64
  %1121 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %1116, i64 noundef %1120)
  %1122 = load i8, ptr %1121, align 1, !tbaa !16
  %1123 = zext i8 %1122 to i32
  call void @_ZN7libzpaq5ZPAQL3modEj(ptr noundef nonnull align 8 dereferenceable(192) %4, i32 noundef %1123)
  br label %1836

1124:                                             ; preds = %1
  %1125 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1126 = load i32, ptr %1125, align 4, !tbaa !17
  %1127 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1128 = load i32, ptr %1127, align 4, !tbaa !17
  %1129 = and i32 %1128, %1126
  store i32 %1129, ptr %1127, align 4, !tbaa !17
  br label %1836

1130:                                             ; preds = %1
  %1131 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %1132 = load i32, ptr %1131, align 8, !tbaa !19
  %1133 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1134 = load i32, ptr %1133, align 4, !tbaa !17
  %1135 = and i32 %1134, %1132
  store i32 %1135, ptr %1133, align 4, !tbaa !17
  br label %1836

1136:                                             ; preds = %1
  %1137 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %1138 = load i32, ptr %1137, align 4, !tbaa !20
  %1139 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1140 = load i32, ptr %1139, align 4, !tbaa !17
  %1141 = and i32 %1140, %1138
  store i32 %1141, ptr %1139, align 4, !tbaa !17
  br label %1836

1142:                                             ; preds = %1
  %1143 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %1144 = load i32, ptr %1143, align 8, !tbaa !21
  %1145 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1146 = load i32, ptr %1145, align 4, !tbaa !17
  %1147 = and i32 %1146, %1144
  store i32 %1147, ptr %1145, align 4, !tbaa !17
  br label %1836

1148:                                             ; preds = %1
  %1149 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %1150 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %1151 = load i32, ptr %1150, align 8, !tbaa !19
  %1152 = zext i32 %1151 to i64
  %1153 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1149, i64 noundef %1152)
  %1154 = load i8, ptr %1153, align 1, !tbaa !16
  %1155 = zext i8 %1154 to i32
  %1156 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1157 = load i32, ptr %1156, align 4, !tbaa !17
  %1158 = and i32 %1157, %1155
  store i32 %1158, ptr %1156, align 4, !tbaa !17
  br label %1836

1159:                                             ; preds = %1
  %1160 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %1161 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %1162 = load i32, ptr %1161, align 4, !tbaa !20
  %1163 = zext i32 %1162 to i64
  %1164 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1160, i64 noundef %1163)
  %1165 = load i8, ptr %1164, align 1, !tbaa !16
  %1166 = zext i8 %1165 to i32
  %1167 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1168 = load i32, ptr %1167, align 4, !tbaa !17
  %1169 = and i32 %1168, %1166
  store i32 %1169, ptr %1167, align 4, !tbaa !17
  br label %1836

1170:                                             ; preds = %1
  %1171 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 8
  %1172 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %1173 = load i32, ptr %1172, align 8, !tbaa !21
  %1174 = zext i32 %1173 to i64
  %1175 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1171, i64 noundef %1174)
  %1176 = load i32, ptr %1175, align 4, !tbaa !18
  %1177 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1178 = load i32, ptr %1177, align 4, !tbaa !17
  %1179 = and i32 %1178, %1176
  store i32 %1179, ptr %1177, align 4, !tbaa !17
  br label %1836

1180:                                             ; preds = %1
  %1181 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 2
  %1182 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 17
  %1183 = load i32, ptr %1182, align 8, !tbaa !9
  %1184 = add nsw i32 %1183, 1
  store i32 %1184, ptr %1182, align 8, !tbaa !9
  %1185 = sext i32 %1183 to i64
  %1186 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %1181, i64 noundef %1185)
  %1187 = load i8, ptr %1186, align 1, !tbaa !16
  %1188 = zext i8 %1187 to i32
  %1189 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1190 = load i32, ptr %1189, align 4, !tbaa !17
  %1191 = and i32 %1190, %1188
  store i32 %1191, ptr %1189, align 4, !tbaa !17
  br label %1836

1192:                                             ; preds = %1
  %1193 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1194 = load i32, ptr %1193, align 4, !tbaa !17
  %1195 = xor i32 %1194, -1
  %1196 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1197 = load i32, ptr %1196, align 4, !tbaa !17
  %1198 = and i32 %1197, %1195
  store i32 %1198, ptr %1196, align 4, !tbaa !17
  br label %1836

1199:                                             ; preds = %1
  %1200 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %1201 = load i32, ptr %1200, align 8, !tbaa !19
  %1202 = xor i32 %1201, -1
  %1203 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1204 = load i32, ptr %1203, align 4, !tbaa !17
  %1205 = and i32 %1204, %1202
  store i32 %1205, ptr %1203, align 4, !tbaa !17
  br label %1836

1206:                                             ; preds = %1
  %1207 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %1208 = load i32, ptr %1207, align 4, !tbaa !20
  %1209 = xor i32 %1208, -1
  %1210 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1211 = load i32, ptr %1210, align 4, !tbaa !17
  %1212 = and i32 %1211, %1209
  store i32 %1212, ptr %1210, align 4, !tbaa !17
  br label %1836

1213:                                             ; preds = %1
  %1214 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %1215 = load i32, ptr %1214, align 8, !tbaa !21
  %1216 = xor i32 %1215, -1
  %1217 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1218 = load i32, ptr %1217, align 4, !tbaa !17
  %1219 = and i32 %1218, %1216
  store i32 %1219, ptr %1217, align 4, !tbaa !17
  br label %1836

1220:                                             ; preds = %1
  %1221 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %1222 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %1223 = load i32, ptr %1222, align 8, !tbaa !19
  %1224 = zext i32 %1223 to i64
  %1225 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1221, i64 noundef %1224)
  %1226 = load i8, ptr %1225, align 1, !tbaa !16
  %1227 = zext i8 %1226 to i32
  %1228 = xor i32 %1227, -1
  %1229 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1230 = load i32, ptr %1229, align 4, !tbaa !17
  %1231 = and i32 %1230, %1228
  store i32 %1231, ptr %1229, align 4, !tbaa !17
  br label %1836

1232:                                             ; preds = %1
  %1233 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %1234 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %1235 = load i32, ptr %1234, align 4, !tbaa !20
  %1236 = zext i32 %1235 to i64
  %1237 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1233, i64 noundef %1236)
  %1238 = load i8, ptr %1237, align 1, !tbaa !16
  %1239 = zext i8 %1238 to i32
  %1240 = xor i32 %1239, -1
  %1241 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1242 = load i32, ptr %1241, align 4, !tbaa !17
  %1243 = and i32 %1242, %1240
  store i32 %1243, ptr %1241, align 4, !tbaa !17
  br label %1836

1244:                                             ; preds = %1
  %1245 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 8
  %1246 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %1247 = load i32, ptr %1246, align 8, !tbaa !21
  %1248 = zext i32 %1247 to i64
  %1249 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1245, i64 noundef %1248)
  %1250 = load i32, ptr %1249, align 4, !tbaa !18
  %1251 = xor i32 %1250, -1
  %1252 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1253 = load i32, ptr %1252, align 4, !tbaa !17
  %1254 = and i32 %1253, %1251
  store i32 %1254, ptr %1252, align 4, !tbaa !17
  br label %1836

1255:                                             ; preds = %1
  %1256 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 2
  %1257 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 17
  %1258 = load i32, ptr %1257, align 8, !tbaa !9
  %1259 = add nsw i32 %1258, 1
  store i32 %1259, ptr %1257, align 8, !tbaa !9
  %1260 = sext i32 %1258 to i64
  %1261 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %1256, i64 noundef %1260)
  %1262 = load i8, ptr %1261, align 1, !tbaa !16
  %1263 = zext i8 %1262 to i32
  %1264 = xor i32 %1263, -1
  %1265 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1266 = load i32, ptr %1265, align 4, !tbaa !17
  %1267 = and i32 %1266, %1264
  store i32 %1267, ptr %1265, align 4, !tbaa !17
  br label %1836

1268:                                             ; preds = %1
  %1269 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1270 = load i32, ptr %1269, align 4, !tbaa !17
  %1271 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1272 = load i32, ptr %1271, align 4, !tbaa !17
  %1273 = or i32 %1272, %1270
  store i32 %1273, ptr %1271, align 4, !tbaa !17
  br label %1836

1274:                                             ; preds = %1
  %1275 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %1276 = load i32, ptr %1275, align 8, !tbaa !19
  %1277 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1278 = load i32, ptr %1277, align 4, !tbaa !17
  %1279 = or i32 %1278, %1276
  store i32 %1279, ptr %1277, align 4, !tbaa !17
  br label %1836

1280:                                             ; preds = %1
  %1281 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %1282 = load i32, ptr %1281, align 4, !tbaa !20
  %1283 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1284 = load i32, ptr %1283, align 4, !tbaa !17
  %1285 = or i32 %1284, %1282
  store i32 %1285, ptr %1283, align 4, !tbaa !17
  br label %1836

1286:                                             ; preds = %1
  %1287 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %1288 = load i32, ptr %1287, align 8, !tbaa !21
  %1289 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1290 = load i32, ptr %1289, align 4, !tbaa !17
  %1291 = or i32 %1290, %1288
  store i32 %1291, ptr %1289, align 4, !tbaa !17
  br label %1836

1292:                                             ; preds = %1
  %1293 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %1294 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %1295 = load i32, ptr %1294, align 8, !tbaa !19
  %1296 = zext i32 %1295 to i64
  %1297 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1293, i64 noundef %1296)
  %1298 = load i8, ptr %1297, align 1, !tbaa !16
  %1299 = zext i8 %1298 to i32
  %1300 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1301 = load i32, ptr %1300, align 4, !tbaa !17
  %1302 = or i32 %1301, %1299
  store i32 %1302, ptr %1300, align 4, !tbaa !17
  br label %1836

1303:                                             ; preds = %1
  %1304 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %1305 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %1306 = load i32, ptr %1305, align 4, !tbaa !20
  %1307 = zext i32 %1306 to i64
  %1308 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1304, i64 noundef %1307)
  %1309 = load i8, ptr %1308, align 1, !tbaa !16
  %1310 = zext i8 %1309 to i32
  %1311 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1312 = load i32, ptr %1311, align 4, !tbaa !17
  %1313 = or i32 %1312, %1310
  store i32 %1313, ptr %1311, align 4, !tbaa !17
  br label %1836

1314:                                             ; preds = %1
  %1315 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 8
  %1316 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %1317 = load i32, ptr %1316, align 8, !tbaa !21
  %1318 = zext i32 %1317 to i64
  %1319 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1315, i64 noundef %1318)
  %1320 = load i32, ptr %1319, align 4, !tbaa !18
  %1321 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1322 = load i32, ptr %1321, align 4, !tbaa !17
  %1323 = or i32 %1322, %1320
  store i32 %1323, ptr %1321, align 4, !tbaa !17
  br label %1836

1324:                                             ; preds = %1
  %1325 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 2
  %1326 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 17
  %1327 = load i32, ptr %1326, align 8, !tbaa !9
  %1328 = add nsw i32 %1327, 1
  store i32 %1328, ptr %1326, align 8, !tbaa !9
  %1329 = sext i32 %1327 to i64
  %1330 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %1325, i64 noundef %1329)
  %1331 = load i8, ptr %1330, align 1, !tbaa !16
  %1332 = zext i8 %1331 to i32
  %1333 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1334 = load i32, ptr %1333, align 4, !tbaa !17
  %1335 = or i32 %1334, %1332
  store i32 %1335, ptr %1333, align 4, !tbaa !17
  br label %1836

1336:                                             ; preds = %1
  %1337 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1338 = load i32, ptr %1337, align 4, !tbaa !17
  %1339 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1340 = load i32, ptr %1339, align 4, !tbaa !17
  %1341 = xor i32 %1340, %1338
  store i32 %1341, ptr %1339, align 4, !tbaa !17
  br label %1836

1342:                                             ; preds = %1
  %1343 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %1344 = load i32, ptr %1343, align 8, !tbaa !19
  %1345 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1346 = load i32, ptr %1345, align 4, !tbaa !17
  %1347 = xor i32 %1346, %1344
  store i32 %1347, ptr %1345, align 4, !tbaa !17
  br label %1836

1348:                                             ; preds = %1
  %1349 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %1350 = load i32, ptr %1349, align 4, !tbaa !20
  %1351 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1352 = load i32, ptr %1351, align 4, !tbaa !17
  %1353 = xor i32 %1352, %1350
  store i32 %1353, ptr %1351, align 4, !tbaa !17
  br label %1836

1354:                                             ; preds = %1
  %1355 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %1356 = load i32, ptr %1355, align 8, !tbaa !21
  %1357 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1358 = load i32, ptr %1357, align 4, !tbaa !17
  %1359 = xor i32 %1358, %1356
  store i32 %1359, ptr %1357, align 4, !tbaa !17
  br label %1836

1360:                                             ; preds = %1
  %1361 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %1362 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %1363 = load i32, ptr %1362, align 8, !tbaa !19
  %1364 = zext i32 %1363 to i64
  %1365 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1361, i64 noundef %1364)
  %1366 = load i8, ptr %1365, align 1, !tbaa !16
  %1367 = zext i8 %1366 to i32
  %1368 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1369 = load i32, ptr %1368, align 4, !tbaa !17
  %1370 = xor i32 %1369, %1367
  store i32 %1370, ptr %1368, align 4, !tbaa !17
  br label %1836

1371:                                             ; preds = %1
  %1372 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %1373 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %1374 = load i32, ptr %1373, align 4, !tbaa !20
  %1375 = zext i32 %1374 to i64
  %1376 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1372, i64 noundef %1375)
  %1377 = load i8, ptr %1376, align 1, !tbaa !16
  %1378 = zext i8 %1377 to i32
  %1379 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1380 = load i32, ptr %1379, align 4, !tbaa !17
  %1381 = xor i32 %1380, %1378
  store i32 %1381, ptr %1379, align 4, !tbaa !17
  br label %1836

1382:                                             ; preds = %1
  %1383 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 8
  %1384 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %1385 = load i32, ptr %1384, align 8, !tbaa !21
  %1386 = zext i32 %1385 to i64
  %1387 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1383, i64 noundef %1386)
  %1388 = load i32, ptr %1387, align 4, !tbaa !18
  %1389 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1390 = load i32, ptr %1389, align 4, !tbaa !17
  %1391 = xor i32 %1390, %1388
  store i32 %1391, ptr %1389, align 4, !tbaa !17
  br label %1836

1392:                                             ; preds = %1
  %1393 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 2
  %1394 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 17
  %1395 = load i32, ptr %1394, align 8, !tbaa !9
  %1396 = add nsw i32 %1395, 1
  store i32 %1396, ptr %1394, align 8, !tbaa !9
  %1397 = sext i32 %1395 to i64
  %1398 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %1393, i64 noundef %1397)
  %1399 = load i8, ptr %1398, align 1, !tbaa !16
  %1400 = zext i8 %1399 to i32
  %1401 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1402 = load i32, ptr %1401, align 4, !tbaa !17
  %1403 = xor i32 %1402, %1400
  store i32 %1403, ptr %1401, align 4, !tbaa !17
  br label %1836

1404:                                             ; preds = %1
  %1405 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1406 = load i32, ptr %1405, align 4, !tbaa !17
  %1407 = and i32 %1406, 31
  %1408 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1409 = load i32, ptr %1408, align 4, !tbaa !17
  %1410 = shl i32 %1409, %1407
  store i32 %1410, ptr %1408, align 4, !tbaa !17
  br label %1836

1411:                                             ; preds = %1
  %1412 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %1413 = load i32, ptr %1412, align 8, !tbaa !19
  %1414 = and i32 %1413, 31
  %1415 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1416 = load i32, ptr %1415, align 4, !tbaa !17
  %1417 = shl i32 %1416, %1414
  store i32 %1417, ptr %1415, align 4, !tbaa !17
  br label %1836

1418:                                             ; preds = %1
  %1419 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %1420 = load i32, ptr %1419, align 4, !tbaa !20
  %1421 = and i32 %1420, 31
  %1422 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1423 = load i32, ptr %1422, align 4, !tbaa !17
  %1424 = shl i32 %1423, %1421
  store i32 %1424, ptr %1422, align 4, !tbaa !17
  br label %1836

1425:                                             ; preds = %1
  %1426 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %1427 = load i32, ptr %1426, align 8, !tbaa !21
  %1428 = and i32 %1427, 31
  %1429 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1430 = load i32, ptr %1429, align 4, !tbaa !17
  %1431 = shl i32 %1430, %1428
  store i32 %1431, ptr %1429, align 4, !tbaa !17
  br label %1836

1432:                                             ; preds = %1
  %1433 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %1434 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %1435 = load i32, ptr %1434, align 8, !tbaa !19
  %1436 = zext i32 %1435 to i64
  %1437 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1433, i64 noundef %1436)
  %1438 = load i8, ptr %1437, align 1, !tbaa !16
  %1439 = zext i8 %1438 to i32
  %1440 = and i32 %1439, 31
  %1441 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1442 = load i32, ptr %1441, align 4, !tbaa !17
  %1443 = shl i32 %1442, %1440
  store i32 %1443, ptr %1441, align 4, !tbaa !17
  br label %1836

1444:                                             ; preds = %1
  %1445 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %1446 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %1447 = load i32, ptr %1446, align 4, !tbaa !20
  %1448 = zext i32 %1447 to i64
  %1449 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1445, i64 noundef %1448)
  %1450 = load i8, ptr %1449, align 1, !tbaa !16
  %1451 = zext i8 %1450 to i32
  %1452 = and i32 %1451, 31
  %1453 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1454 = load i32, ptr %1453, align 4, !tbaa !17
  %1455 = shl i32 %1454, %1452
  store i32 %1455, ptr %1453, align 4, !tbaa !17
  br label %1836

1456:                                             ; preds = %1
  %1457 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 8
  %1458 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %1459 = load i32, ptr %1458, align 8, !tbaa !21
  %1460 = zext i32 %1459 to i64
  %1461 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1457, i64 noundef %1460)
  %1462 = load i32, ptr %1461, align 4, !tbaa !18
  %1463 = and i32 %1462, 31
  %1464 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1465 = load i32, ptr %1464, align 4, !tbaa !17
  %1466 = shl i32 %1465, %1463
  store i32 %1466, ptr %1464, align 4, !tbaa !17
  br label %1836

1467:                                             ; preds = %1
  %1468 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 2
  %1469 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 17
  %1470 = load i32, ptr %1469, align 8, !tbaa !9
  %1471 = add nsw i32 %1470, 1
  store i32 %1471, ptr %1469, align 8, !tbaa !9
  %1472 = sext i32 %1470 to i64
  %1473 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %1468, i64 noundef %1472)
  %1474 = load i8, ptr %1473, align 1, !tbaa !16
  %1475 = zext i8 %1474 to i32
  %1476 = and i32 %1475, 31
  %1477 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1478 = load i32, ptr %1477, align 4, !tbaa !17
  %1479 = shl i32 %1478, %1476
  store i32 %1479, ptr %1477, align 4, !tbaa !17
  br label %1836

1480:                                             ; preds = %1
  %1481 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1482 = load i32, ptr %1481, align 4, !tbaa !17
  %1483 = and i32 %1482, 31
  %1484 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1485 = load i32, ptr %1484, align 4, !tbaa !17
  %1486 = lshr i32 %1485, %1483
  store i32 %1486, ptr %1484, align 4, !tbaa !17
  br label %1836

1487:                                             ; preds = %1
  %1488 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %1489 = load i32, ptr %1488, align 8, !tbaa !19
  %1490 = and i32 %1489, 31
  %1491 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1492 = load i32, ptr %1491, align 4, !tbaa !17
  %1493 = lshr i32 %1492, %1490
  store i32 %1493, ptr %1491, align 4, !tbaa !17
  br label %1836

1494:                                             ; preds = %1
  %1495 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %1496 = load i32, ptr %1495, align 4, !tbaa !20
  %1497 = and i32 %1496, 31
  %1498 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1499 = load i32, ptr %1498, align 4, !tbaa !17
  %1500 = lshr i32 %1499, %1497
  store i32 %1500, ptr %1498, align 4, !tbaa !17
  br label %1836

1501:                                             ; preds = %1
  %1502 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %1503 = load i32, ptr %1502, align 8, !tbaa !21
  %1504 = and i32 %1503, 31
  %1505 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1506 = load i32, ptr %1505, align 4, !tbaa !17
  %1507 = lshr i32 %1506, %1504
  store i32 %1507, ptr %1505, align 4, !tbaa !17
  br label %1836

1508:                                             ; preds = %1
  %1509 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %1510 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %1511 = load i32, ptr %1510, align 8, !tbaa !19
  %1512 = zext i32 %1511 to i64
  %1513 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1509, i64 noundef %1512)
  %1514 = load i8, ptr %1513, align 1, !tbaa !16
  %1515 = zext i8 %1514 to i32
  %1516 = and i32 %1515, 31
  %1517 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1518 = load i32, ptr %1517, align 4, !tbaa !17
  %1519 = lshr i32 %1518, %1516
  store i32 %1519, ptr %1517, align 4, !tbaa !17
  br label %1836

1520:                                             ; preds = %1
  %1521 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %1522 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %1523 = load i32, ptr %1522, align 4, !tbaa !20
  %1524 = zext i32 %1523 to i64
  %1525 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1521, i64 noundef %1524)
  %1526 = load i8, ptr %1525, align 1, !tbaa !16
  %1527 = zext i8 %1526 to i32
  %1528 = and i32 %1527, 31
  %1529 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1530 = load i32, ptr %1529, align 4, !tbaa !17
  %1531 = lshr i32 %1530, %1528
  store i32 %1531, ptr %1529, align 4, !tbaa !17
  br label %1836

1532:                                             ; preds = %1
  %1533 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 8
  %1534 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %1535 = load i32, ptr %1534, align 8, !tbaa !21
  %1536 = zext i32 %1535 to i64
  %1537 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1533, i64 noundef %1536)
  %1538 = load i32, ptr %1537, align 4, !tbaa !18
  %1539 = and i32 %1538, 31
  %1540 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1541 = load i32, ptr %1540, align 4, !tbaa !17
  %1542 = lshr i32 %1541, %1539
  store i32 %1542, ptr %1540, align 4, !tbaa !17
  br label %1836

1543:                                             ; preds = %1
  %1544 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 2
  %1545 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 17
  %1546 = load i32, ptr %1545, align 8, !tbaa !9
  %1547 = add nsw i32 %1546, 1
  store i32 %1547, ptr %1545, align 8, !tbaa !9
  %1548 = sext i32 %1546 to i64
  %1549 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %1544, i64 noundef %1548)
  %1550 = load i8, ptr %1549, align 1, !tbaa !16
  %1551 = zext i8 %1550 to i32
  %1552 = and i32 %1551, 31
  %1553 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1554 = load i32, ptr %1553, align 4, !tbaa !17
  %1555 = lshr i32 %1554, %1552
  store i32 %1555, ptr %1553, align 4, !tbaa !17
  br label %1836

1556:                                             ; preds = %1
  %1557 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1558 = load i32, ptr %1557, align 4, !tbaa !17
  %1559 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1560 = load i32, ptr %1559, align 4, !tbaa !17
  %1561 = icmp eq i32 %1558, %1560
  %1562 = zext i1 %1561 to i32
  %1563 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 16
  store i32 %1562, ptr %1563, align 4, !tbaa !22
  br label %1836

1564:                                             ; preds = %1
  %1565 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1566 = load i32, ptr %1565, align 4, !tbaa !17
  %1567 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %1568 = load i32, ptr %1567, align 8, !tbaa !19
  %1569 = icmp eq i32 %1566, %1568
  %1570 = zext i1 %1569 to i32
  %1571 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 16
  store i32 %1570, ptr %1571, align 4, !tbaa !22
  br label %1836

1572:                                             ; preds = %1
  %1573 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1574 = load i32, ptr %1573, align 4, !tbaa !17
  %1575 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %1576 = load i32, ptr %1575, align 4, !tbaa !20
  %1577 = icmp eq i32 %1574, %1576
  %1578 = zext i1 %1577 to i32
  %1579 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 16
  store i32 %1578, ptr %1579, align 4, !tbaa !22
  br label %1836

1580:                                             ; preds = %1
  %1581 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1582 = load i32, ptr %1581, align 4, !tbaa !17
  %1583 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %1584 = load i32, ptr %1583, align 8, !tbaa !21
  %1585 = icmp eq i32 %1582, %1584
  %1586 = zext i1 %1585 to i32
  %1587 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 16
  store i32 %1586, ptr %1587, align 4, !tbaa !22
  br label %1836

1588:                                             ; preds = %1
  %1589 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1590 = load i32, ptr %1589, align 4, !tbaa !17
  %1591 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %1592 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %1593 = load i32, ptr %1592, align 8, !tbaa !19
  %1594 = zext i32 %1593 to i64
  %1595 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1591, i64 noundef %1594)
  %1596 = load i8, ptr %1595, align 1, !tbaa !16
  %1597 = zext i8 %1596 to i32
  %1598 = icmp eq i32 %1590, %1597
  %1599 = zext i1 %1598 to i32
  %1600 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 16
  store i32 %1599, ptr %1600, align 4, !tbaa !22
  br label %1836

1601:                                             ; preds = %1
  %1602 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1603 = load i32, ptr %1602, align 4, !tbaa !17
  %1604 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %1605 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %1606 = load i32, ptr %1605, align 4, !tbaa !20
  %1607 = zext i32 %1606 to i64
  %1608 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1604, i64 noundef %1607)
  %1609 = load i8, ptr %1608, align 1, !tbaa !16
  %1610 = zext i8 %1609 to i32
  %1611 = icmp eq i32 %1603, %1610
  %1612 = zext i1 %1611 to i32
  %1613 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 16
  store i32 %1612, ptr %1613, align 4, !tbaa !22
  br label %1836

1614:                                             ; preds = %1
  %1615 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1616 = load i32, ptr %1615, align 4, !tbaa !17
  %1617 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 8
  %1618 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %1619 = load i32, ptr %1618, align 8, !tbaa !21
  %1620 = zext i32 %1619 to i64
  %1621 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1617, i64 noundef %1620)
  %1622 = load i32, ptr %1621, align 4, !tbaa !18
  %1623 = icmp eq i32 %1616, %1622
  %1624 = zext i1 %1623 to i32
  %1625 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 16
  store i32 %1624, ptr %1625, align 4, !tbaa !22
  br label %1836

1626:                                             ; preds = %1
  %1627 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1628 = load i32, ptr %1627, align 4, !tbaa !17
  %1629 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 2
  %1630 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 17
  %1631 = load i32, ptr %1630, align 8, !tbaa !9
  %1632 = add nsw i32 %1631, 1
  store i32 %1632, ptr %1630, align 8, !tbaa !9
  %1633 = sext i32 %1631 to i64
  %1634 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %1629, i64 noundef %1633)
  %1635 = load i8, ptr %1634, align 1, !tbaa !16
  %1636 = zext i8 %1635 to i32
  %1637 = icmp eq i32 %1628, %1636
  %1638 = zext i1 %1637 to i32
  %1639 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 16
  store i32 %1638, ptr %1639, align 4, !tbaa !22
  br label %1836

1640:                                             ; preds = %1
  %1641 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1642 = load i32, ptr %1641, align 4, !tbaa !17
  %1643 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1644 = load i32, ptr %1643, align 4, !tbaa !17
  %1645 = icmp ult i32 %1642, %1644
  %1646 = zext i1 %1645 to i32
  %1647 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 16
  store i32 %1646, ptr %1647, align 4, !tbaa !22
  br label %1836

1648:                                             ; preds = %1
  %1649 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1650 = load i32, ptr %1649, align 4, !tbaa !17
  %1651 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %1652 = load i32, ptr %1651, align 8, !tbaa !19
  %1653 = icmp ult i32 %1650, %1652
  %1654 = zext i1 %1653 to i32
  %1655 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 16
  store i32 %1654, ptr %1655, align 4, !tbaa !22
  br label %1836

1656:                                             ; preds = %1
  %1657 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1658 = load i32, ptr %1657, align 4, !tbaa !17
  %1659 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %1660 = load i32, ptr %1659, align 4, !tbaa !20
  %1661 = icmp ult i32 %1658, %1660
  %1662 = zext i1 %1661 to i32
  %1663 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 16
  store i32 %1662, ptr %1663, align 4, !tbaa !22
  br label %1836

1664:                                             ; preds = %1
  %1665 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1666 = load i32, ptr %1665, align 4, !tbaa !17
  %1667 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %1668 = load i32, ptr %1667, align 8, !tbaa !21
  %1669 = icmp ult i32 %1666, %1668
  %1670 = zext i1 %1669 to i32
  %1671 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 16
  store i32 %1670, ptr %1671, align 4, !tbaa !22
  br label %1836

1672:                                             ; preds = %1
  %1673 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1674 = load i32, ptr %1673, align 4, !tbaa !17
  %1675 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %1676 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %1677 = load i32, ptr %1676, align 8, !tbaa !19
  %1678 = zext i32 %1677 to i64
  %1679 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1675, i64 noundef %1678)
  %1680 = load i8, ptr %1679, align 1, !tbaa !16
  %1681 = zext i8 %1680 to i32
  %1682 = icmp ult i32 %1674, %1681
  %1683 = zext i1 %1682 to i32
  %1684 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 16
  store i32 %1683, ptr %1684, align 4, !tbaa !22
  br label %1836

1685:                                             ; preds = %1
  %1686 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1687 = load i32, ptr %1686, align 4, !tbaa !17
  %1688 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %1689 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %1690 = load i32, ptr %1689, align 4, !tbaa !20
  %1691 = zext i32 %1690 to i64
  %1692 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1688, i64 noundef %1691)
  %1693 = load i8, ptr %1692, align 1, !tbaa !16
  %1694 = zext i8 %1693 to i32
  %1695 = icmp ult i32 %1687, %1694
  %1696 = zext i1 %1695 to i32
  %1697 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 16
  store i32 %1696, ptr %1697, align 4, !tbaa !22
  br label %1836

1698:                                             ; preds = %1
  %1699 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1700 = load i32, ptr %1699, align 4, !tbaa !17
  %1701 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 8
  %1702 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %1703 = load i32, ptr %1702, align 8, !tbaa !21
  %1704 = zext i32 %1703 to i64
  %1705 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1701, i64 noundef %1704)
  %1706 = load i32, ptr %1705, align 4, !tbaa !18
  %1707 = icmp ult i32 %1700, %1706
  %1708 = zext i1 %1707 to i32
  %1709 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 16
  store i32 %1708, ptr %1709, align 4, !tbaa !22
  br label %1836

1710:                                             ; preds = %1
  %1711 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1712 = load i32, ptr %1711, align 4, !tbaa !17
  %1713 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 2
  %1714 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 17
  %1715 = load i32, ptr %1714, align 8, !tbaa !9
  %1716 = add nsw i32 %1715, 1
  store i32 %1716, ptr %1714, align 8, !tbaa !9
  %1717 = sext i32 %1715 to i64
  %1718 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %1713, i64 noundef %1717)
  %1719 = load i8, ptr %1718, align 1, !tbaa !16
  %1720 = zext i8 %1719 to i32
  %1721 = icmp ult i32 %1712, %1720
  %1722 = zext i1 %1721 to i32
  %1723 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 16
  store i32 %1722, ptr %1723, align 4, !tbaa !22
  br label %1836

1724:                                             ; preds = %1
  %1725 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1726 = load i32, ptr %1725, align 4, !tbaa !17
  %1727 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1728 = load i32, ptr %1727, align 4, !tbaa !17
  %1729 = icmp ugt i32 %1726, %1728
  %1730 = zext i1 %1729 to i32
  %1731 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 16
  store i32 %1730, ptr %1731, align 4, !tbaa !22
  br label %1836

1732:                                             ; preds = %1
  %1733 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1734 = load i32, ptr %1733, align 4, !tbaa !17
  %1735 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %1736 = load i32, ptr %1735, align 8, !tbaa !19
  %1737 = icmp ugt i32 %1734, %1736
  %1738 = zext i1 %1737 to i32
  %1739 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 16
  store i32 %1738, ptr %1739, align 4, !tbaa !22
  br label %1836

1740:                                             ; preds = %1
  %1741 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1742 = load i32, ptr %1741, align 4, !tbaa !17
  %1743 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %1744 = load i32, ptr %1743, align 4, !tbaa !20
  %1745 = icmp ugt i32 %1742, %1744
  %1746 = zext i1 %1745 to i32
  %1747 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 16
  store i32 %1746, ptr %1747, align 4, !tbaa !22
  br label %1836

1748:                                             ; preds = %1
  %1749 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1750 = load i32, ptr %1749, align 4, !tbaa !17
  %1751 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %1752 = load i32, ptr %1751, align 8, !tbaa !21
  %1753 = icmp ugt i32 %1750, %1752
  %1754 = zext i1 %1753 to i32
  %1755 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 16
  store i32 %1754, ptr %1755, align 4, !tbaa !22
  br label %1836

1756:                                             ; preds = %1
  %1757 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1758 = load i32, ptr %1757, align 4, !tbaa !17
  %1759 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %1760 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 13
  %1761 = load i32, ptr %1760, align 8, !tbaa !19
  %1762 = zext i32 %1761 to i64
  %1763 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1759, i64 noundef %1762)
  %1764 = load i8, ptr %1763, align 1, !tbaa !16
  %1765 = zext i8 %1764 to i32
  %1766 = icmp ugt i32 %1758, %1765
  %1767 = zext i1 %1766 to i32
  %1768 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 16
  store i32 %1767, ptr %1768, align 4, !tbaa !22
  br label %1836

1769:                                             ; preds = %1
  %1770 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1771 = load i32, ptr %1770, align 4, !tbaa !17
  %1772 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 7
  %1773 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 14
  %1774 = load i32, ptr %1773, align 4, !tbaa !20
  %1775 = zext i32 %1774 to i64
  %1776 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1772, i64 noundef %1775)
  %1777 = load i8, ptr %1776, align 1, !tbaa !16
  %1778 = zext i8 %1777 to i32
  %1779 = icmp ugt i32 %1771, %1778
  %1780 = zext i1 %1779 to i32
  %1781 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 16
  store i32 %1780, ptr %1781, align 4, !tbaa !22
  br label %1836

1782:                                             ; preds = %1
  %1783 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1784 = load i32, ptr %1783, align 4, !tbaa !17
  %1785 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 8
  %1786 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 15
  %1787 = load i32, ptr %1786, align 8, !tbaa !21
  %1788 = zext i32 %1787 to i64
  %1789 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1785, i64 noundef %1788)
  %1790 = load i32, ptr %1789, align 4, !tbaa !18
  %1791 = icmp ugt i32 %1784, %1790
  %1792 = zext i1 %1791 to i32
  %1793 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 16
  store i32 %1792, ptr %1793, align 4, !tbaa !22
  br label %1836

1794:                                             ; preds = %1
  %1795 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 12
  %1796 = load i32, ptr %1795, align 4, !tbaa !17
  %1797 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 2
  %1798 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 17
  %1799 = load i32, ptr %1798, align 8, !tbaa !9
  %1800 = add nsw i32 %1799, 1
  store i32 %1800, ptr %1798, align 8, !tbaa !9
  %1801 = sext i32 %1799 to i64
  %1802 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %1797, i64 noundef %1801)
  %1803 = load i8, ptr %1802, align 1, !tbaa !16
  %1804 = zext i8 %1803 to i32
  %1805 = icmp ugt i32 %1796, %1804
  %1806 = zext i1 %1805 to i32
  %1807 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 16
  store i32 %1806, ptr %1807, align 4, !tbaa !22
  br label %1836

1808:                                             ; preds = %1
  %1809 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 4
  %1810 = load i32, ptr %1809, align 4, !tbaa !23
  %1811 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 2
  %1812 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 17
  %1813 = load i32, ptr %1812, align 8, !tbaa !9
  %1814 = sext i32 %1813 to i64
  %1815 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %1811, i64 noundef %1814)
  %1816 = load i8, ptr %1815, align 1, !tbaa !16
  %1817 = zext i8 %1816 to i32
  %1818 = add nsw i32 %1810, %1817
  %1819 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 2
  %1820 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 17
  %1821 = load i32, ptr %1820, align 8, !tbaa !9
  %1822 = add nsw i32 %1821, 1
  %1823 = sext i32 %1822 to i64
  %1824 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %1819, i64 noundef %1823)
  %1825 = load i8, ptr %1824, align 1, !tbaa !16
  %1826 = zext i8 %1825 to i32
  %1827 = mul nsw i32 256, %1826
  %1828 = add nsw i32 %1818, %1827
  %1829 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 17
  store i32 %1828, ptr %1829, align 8, !tbaa !9
  %1830 = getelementptr inbounds %"class.libzpaq::ZPAQL", ptr %4, i32 0, i32 5
  %1831 = load i32, ptr %1830, align 8, !tbaa !24
  %1832 = icmp sge i32 %1828, %1831
  br i1 %1832, label %1833, label %1834

1833:                                             ; preds = %1808
  call void @_ZN7libzpaq5ZPAQL3errEv(ptr noundef nonnull align 8 dereferenceable(192) %4)
  br label %1834

1834:                                             ; preds = %1833, %1808
  br label %1836

1835:                                             ; preds = %1
  call void @_ZN7libzpaq5ZPAQL3errEv(ptr noundef nonnull align 8 dereferenceable(192) %4)
  br label %1836

1836:                                             ; preds = %1835, %1834, %1794, %1782, %1769, %1756, %1748, %1740, %1732, %1724, %1710, %1698, %1685, %1672, %1664, %1656, %1648, %1640, %1626, %1614, %1601, %1588, %1580, %1572, %1564, %1556, %1543, %1532, %1520, %1508, %1501, %1494, %1487, %1480, %1467, %1456, %1444, %1432, %1425, %1418, %1411, %1404, %1392, %1382, %1371, %1360, %1354, %1348, %1342, %1336, %1324, %1314, %1303, %1292, %1286, %1280, %1274, %1268, %1255, %1244, %1232, %1220, %1213, %1206, %1199, %1192, %1180, %1170, %1159, %1148, %1142, %1136, %1130, %1124, %1115, %1108, %1100, %1092, %1089, %1086, %1083, %1080, %1071, %1064, %1056, %1048, %1045, %1042, %1039, %1036, %1024, %1014, %1003, %992, %986, %980, %974, %968, %956, %946, %935, %924, %918, %912, %906, %900, %888, %878, %867, %856, %850, %844, %838, %832, %818, %806, %793, %780, %772, %764, %756, %748, %735, %722, %710, %698, %689, %680, %671, %662, %649, %636, %624, %612, %603, %594, %585, %576, %566, %558, %549, %540, %536, %532, %528, %524, %514, %506, %497, %488, %484, %480, %476, %472, %462, %454, %445, %436, %432, %428, %424, %420, %410, %402, %393, %384, %380, %376, %372, %368, %354, %337, %323, %319, %305, %299, %286, %278, %270, %264, %263, %235, %220, %212, %204, %198, %197, %169, %154, %146, %138, %132, %119, %117, %112, %108, %104, %102, %89, %87, %82, %78, %74, %72, %59, %57, %52, %48, %44, %42, %29, %27, %22, %18, %14, %13
  store i32 1, ptr %2, align 4
  br label %1837

1837:                                             ; preds = %1836, %318
  %1838 = load i32, ptr %2, align 4
  ret i32 %1838
}

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN7libzpaq5ZPAQL3errEv(ptr noundef nonnull align 8 dereferenceable(192)) #1 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEixEm(ptr noundef nonnull align 8 dereferenceable(20), i64 noundef) #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN7libzpaq5ZPAQL4swapERj(ptr noundef nonnull align 8 dereferenceable(192), ptr noundef nonnull align 4 dereferenceable(4)) #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN7libzpaq5ZPAQL4swapERh(ptr noundef nonnull align 8 dereferenceable(192), ptr noundef nonnull align 1 dereferenceable(1)) #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20), i64 noundef) #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20), i64 noundef) #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN7libzpaq5ZPAQL4outcEi(ptr noundef nonnull align 8 dereferenceable(192), i32 noundef) #1 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN7libzpaq5ZPAQL3divEj(ptr noundef nonnull align 8 dereferenceable(192), i32 noundef) #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN7libzpaq5ZPAQL3modEj(ptr noundef nonnull align 8 dereferenceable(192), i32 noundef) #0 align 2

attributes #0 = { mustprogress nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #1 = { mustprogress uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }

!llvm.module.flags = !{!0, !1, !2, !3}
!llvm.ident = !{!4}

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !6, i64 0}
!6 = !{!"any pointer", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C++ TBAA"}
!9 = !{!10, !13, i64 176}
!10 = !{!"_ZTSN7libzpaq5ZPAQLE", !6, i64 0, !6, i64 8, !11, i64 16, !13, i64 40, !13, i64 44, !13, i64 48, !11, i64 56, !14, i64 80, !14, i64 104, !15, i64 128, !13, i64 152, !13, i64 156, !13, i64 160, !13, i64 164, !13, i64 168, !13, i64 172, !13, i64 176, !13, i64 180, !6, i64 184}
!11 = !{!"_ZTSN7libzpaq5ArrayIhEE", !6, i64 0, !12, i64 8, !13, i64 16}
!12 = !{!"long", !7, i64 0}
!13 = !{!"int", !7, i64 0}
!14 = !{!"_ZTSN7libzpaq5ArrayIjEE", !6, i64 0, !12, i64 8, !13, i64 16}
!15 = !{!"_ZTSN7libzpaq5ArrayIcEE", !6, i64 0, !12, i64 8, !13, i64 16}
!16 = !{!7, !7, i64 0}
!17 = !{!10, !13, i64 156}
!18 = !{!13, !13, i64 0}
!19 = !{!10, !13, i64 160}
!20 = !{!10, !13, i64 164}
!21 = !{!10, !13, i64 168}
!22 = !{!10, !13, i64 172}
!23 = !{!10, !13, i64 44}
!24 = !{!10, !13, i64 48}


; Optimized IR (opt -passes='default<O3>'):
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20), i64 noundef) local_unnamed_addr #0 align 2

; Function Attrs: mustprogress uwtable
define dso_local noundef range(i32 0, 2) i32 @_ZN7libzpaq5ZPAQL7executeEv(ptr noundef nonnull align 8 dereferenceable(192) %0) local_unnamed_addr #1 align 2 {
  %2 = getelementptr inbounds i8, ptr %0, i64 16
  %3 = getelementptr inbounds i8, ptr %0, i64 176
  %4 = load i32, ptr %3, align 8, !tbaa !5
  %5 = add nsw i32 %4, 1
  store i32 %5, ptr %3, align 8, !tbaa !5
  %6 = sext i32 %4 to i64
  %7 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %2, i64 noundef %6)
  %8 = load i8, ptr %7, align 1, !tbaa !15
  switch i8 %8, label %1650 [
    i8 0, label %9
    i8 1, label %10
    i8 2, label %14
    i8 3, label %18
    i8 4, label %22
    i8 7, label %24
    i8 8, label %35
    i8 9, label %37
    i8 10, label %41
    i8 11, label %45
    i8 12, label %49
    i8 15, label %51
    i8 16, label %62
    i8 17, label %64
    i8 18, label %68
    i8 19, label %72
    i8 20, label %76
    i8 23, label %78
    i8 24, label %89
    i8 25, label %91
    i8 26, label %95
    i8 27, label %99
    i8 28, label %103
    i8 31, label %105
    i8 32, label %116
    i8 33, label %122
    i8 34, label %130
    i8 35, label %138
    i8 36, label %149
    i8 39, label %155
    i8 40, label %170
    i8 41, label %176
    i8 42, label %184
    i8 43, label %192
    i8 44, label %203
    i8 47, label %209
    i8 48, label %224
    i8 49, label %230
    i8 50, label %238
    i8 51, label %246
    i8 52, label %257
    i8 55, label %263
    i8 56, label %1652
    i8 57, label %274
    i8 59, label %278
    i8 60, label %291
    i8 63, label %306
    i8 64, label %1651
    i8 65, label %316
    i8 66, label %320
    i8 67, label %324
    i8 68, label %328
    i8 69, label %337
    i8 70, label %346
    i8 71, label %354
    i8 72, label %362
    i8 73, label %1651
    i8 74, label %366
    i8 75, label %370
    i8 76, label %374
    i8 77, label %382
    i8 78, label %391
    i8 79, label %399
    i8 80, label %407
    i8 81, label %411
    i8 82, label %1651
    i8 83, label %415
    i8 84, label %419
    i8 85, label %428
    i8 86, label %436
    i8 87, label %444
    i8 88, label %452
    i8 89, label %456
    i8 90, label %460
    i8 91, label %1651
    i8 92, label %464
    i8 93, label %473
    i8 94, label %482
    i8 95, label %489
    i8 96, label %497
    i8 97, label %506
    i8 98, label %513
    i8 99, label %522
    i8 100, label %531
    i8 101, label %541
    i8 102, label %552
    i8 103, label %565
    i8 104, label %576
    i8 105, label %585
    i8 106, label %594
    i8 107, label %601
    i8 108, label %610
    i8 109, label %621
    i8 110, label %631
    i8 111, label %644
    i8 112, label %655
    i8 113, label %663
    i8 114, label %671
    i8 115, label %679
    i8 116, label %685
    i8 117, label %698
    i8 118, label %711
    i8 119, label %721
    i8 -128, label %733
    i8 -127, label %737
    i8 -126, label %743
    i8 -125, label %749
    i8 -124, label %755
    i8 -123, label %766
    i8 -122, label %777
    i8 -121, label %787
    i8 -120, label %797
    i8 -119, label %799
    i8 -118, label %805
    i8 -117, label %811
    i8 -116, label %817
    i8 -115, label %828
    i8 -114, label %839
    i8 -113, label %849
    i8 -112, label %859
    i8 -111, label %863
    i8 -110, label %869
    i8 -109, label %875
    i8 -108, label %881
    i8 -107, label %892
    i8 -106, label %903
    i8 -105, label %913
    i8 -104, label %923
    i8 -103, label %926
    i8 -102, label %929
    i8 -101, label %932
    i8 -100, label %935
    i8 -99, label %943
    i8 -98, label %951
    i8 -97, label %958
    i8 -96, label %965
    i8 -95, label %968
    i8 -94, label %971
    i8 -93, label %974
    i8 -92, label %977
    i8 -91, label %985
    i8 -90, label %993
    i8 -89, label %1000
    i8 -88, label %1651
    i8 -87, label %1007
    i8 -86, label %1013
    i8 -85, label %1019
    i8 -84, label %1025
    i8 -83, label %1036
    i8 -82, label %1047
    i8 -81, label %1057
    i8 -80, label %1067
    i8 -79, label %1069
    i8 -78, label %1076
    i8 -77, label %1083
    i8 -76, label %1090
    i8 -75, label %1102
    i8 -74, label %1114
    i8 -73, label %1125
    i8 -72, label %1651
    i8 -71, label %1136
    i8 -70, label %1142
    i8 -69, label %1148
    i8 -68, label %1154
    i8 -67, label %1165
    i8 -66, label %1176
    i8 -65, label %1186
    i8 -64, label %1196
    i8 -63, label %1198
    i8 -62, label %1204
    i8 -61, label %1210
    i8 -60, label %1216
    i8 -59, label %1227
    i8 -58, label %1238
    i8 -57, label %1248
    i8 -56, label %1258
    i8 -55, label %1263
    i8 -54, label %1270
    i8 -53, label %1277
    i8 -52, label %1284
    i8 -51, label %1296
    i8 -50, label %1308
    i8 -49, label %1319
    i8 -48, label %1330
    i8 -47, label %1335
    i8 -46, label %1342
    i8 -45, label %1349
    i8 -44, label %1356
    i8 -43, label %1368
    i8 -42, label %1380
    i8 -41, label %1391
    i8 -40, label %1402
    i8 -39, label %1404
    i8 -38, label %1412
    i8 -37, label %1420
    i8 -36, label %1428
    i8 -35, label %1441
    i8 -34, label %1454
    i8 -33, label %1466
    i8 -32, label %1478
    i8 -31, label %1480
    i8 -30, label %1488
    i8 -29, label %1496
    i8 -28, label %1504
    i8 -27, label %1517
    i8 -26, label %1530
    i8 -25, label %1542
    i8 -24, label %1554
    i8 -23, label %1556
    i8 -22, label %1564
    i8 -21, label %1572
    i8 -20, label %1580
    i8 -19, label %1593
    i8 -18, label %1606
    i8 -17, label %1618
    i8 -1, label %1630
  ]

9:                                                ; preds = %1
  tail call void @_ZN7libzpaq5ZPAQL3errEv(ptr noundef nonnull align 8 dereferenceable(192) %0)
  br label %1651

10:                                               ; preds = %1
  %11 = getelementptr inbounds i8, ptr %0, i64 156
  %12 = load i32, ptr %11, align 4, !tbaa !16
  %13 = add i32 %12, 1
  store i32 %13, ptr %11, align 4, !tbaa !16
  br label %1651

14:                                               ; preds = %1
  %15 = getelementptr inbounds i8, ptr %0, i64 156
  %16 = load i32, ptr %15, align 4, !tbaa !16
  %17 = add i32 %16, -1
  store i32 %17, ptr %15, align 4, !tbaa !16
  br label %1651

18:                                               ; preds = %1
  %19 = getelementptr inbounds i8, ptr %0, i64 156
  %20 = load i32, ptr %19, align 4, !tbaa !16
  %21 = xor i32 %20, -1
  store i32 %21, ptr %19, align 4, !tbaa !16
  br label %1651

22:                                               ; preds = %1
  %23 = getelementptr inbounds i8, ptr %0, i64 156
  store i32 0, ptr %23, align 4, !tbaa !16
  br label %1651

24:                                               ; preds = %1
  %25 = getelementptr inbounds i8, ptr %0, i64 104
  %26 = load i32, ptr %3, align 8, !tbaa !5
  %27 = add nsw i32 %26, 1
  store i32 %27, ptr %3, align 8, !tbaa !5
  %28 = sext i32 %26 to i64
  %29 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %2, i64 noundef %28)
  %30 = load i8, ptr %29, align 1, !tbaa !15
  %31 = zext i8 %30 to i64
  %32 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEixEm(ptr noundef nonnull align 8 dereferenceable(20) %25, i64 noundef %31)
  %33 = load i32, ptr %32, align 4, !tbaa !17
  %34 = getelementptr inbounds i8, ptr %0, i64 156
  store i32 %33, ptr %34, align 4, !tbaa !16
  br label %1651

35:                                               ; preds = %1
  %36 = getelementptr inbounds i8, ptr %0, i64 160
  tail call void @_ZN7libzpaq5ZPAQL4swapERj(ptr noundef nonnull align 8 dereferenceable(192) %0, ptr noundef nonnull align 4 dereferenceable(4) %36)
  br label %1651

37:                                               ; preds = %1
  %38 = getelementptr inbounds i8, ptr %0, i64 160
  %39 = load i32, ptr %38, align 8, !tbaa !18
  %40 = add i32 %39, 1
  store i32 %40, ptr %38, align 8, !tbaa !18
  br label %1651

41:                                               ; preds = %1
  %42 = getelementptr inbounds i8, ptr %0, i64 160
  %43 = load i32, ptr %42, align 8, !tbaa !18
  %44 = add i32 %43, -1
  store i32 %44, ptr %42, align 8, !tbaa !18
  br label %1651

45:                                               ; preds = %1
  %46 = getelementptr inbounds i8, ptr %0, i64 160
  %47 = load i32, ptr %46, align 8, !tbaa !18
  %48 = xor i32 %47, -1
  store i32 %48, ptr %46, align 8, !tbaa !18
  br label %1651

49:                                               ; preds = %1
  %50 = getelementptr inbounds i8, ptr %0, i64 160
  store i32 0, ptr %50, align 8, !tbaa !18
  br label %1651

51:                                               ; preds = %1
  %52 = getelementptr inbounds i8, ptr %0, i64 104
  %53 = load i32, ptr %3, align 8, !tbaa !5
  %54 = add nsw i32 %53, 1
  store i32 %54, ptr %3, align 8, !tbaa !5
  %55 = sext i32 %53 to i64
  %56 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %2, i64 noundef %55)
  %57 = load i8, ptr %56, align 1, !tbaa !15
  %58 = zext i8 %57 to i64
  %59 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEixEm(ptr noundef nonnull align 8 dereferenceable(20) %52, i64 noundef %58)
  %60 = load i32, ptr %59, align 4, !tbaa !17
  %61 = getelementptr inbounds i8, ptr %0, i64 160
  store i32 %60, ptr %61, align 8, !tbaa !18
  br label %1651

62:                                               ; preds = %1
  %63 = getelementptr inbounds i8, ptr %0, i64 164
  tail call void @_ZN7libzpaq5ZPAQL4swapERj(ptr noundef nonnull align 8 dereferenceable(192) %0, ptr noundef nonnull align 4 dereferenceable(4) %63)
  br label %1651

64:                                               ; preds = %1
  %65 = getelementptr inbounds i8, ptr %0, i64 164
  %66 = load i32, ptr %65, align 4, !tbaa !19
  %67 = add i32 %66, 1
  store i32 %67, ptr %65, align 4, !tbaa !19
  br label %1651

68:                                               ; preds = %1
  %69 = getelementptr inbounds i8, ptr %0, i64 164
  %70 = load i32, ptr %69, align 4, !tbaa !19
  %71 = add i32 %70, -1
  store i32 %71, ptr %69, align 4, !tbaa !19
  br label %1651

72:                                               ; preds = %1
  %73 = getelementptr inbounds i8, ptr %0, i64 164
  %74 = load i32, ptr %73, align 4, !tbaa !19
  %75 = xor i32 %74, -1
  store i32 %75, ptr %73, align 4, !tbaa !19
  br label %1651

76:                                               ; preds = %1
  %77 = getelementptr inbounds i8, ptr %0, i64 164
  store i32 0, ptr %77, align 4, !tbaa !19
  br label %1651

78:                                               ; preds = %1
  %79 = getelementptr inbounds i8, ptr %0, i64 104
  %80 = load i32, ptr %3, align 8, !tbaa !5
  %81 = add nsw i32 %80, 1
  store i32 %81, ptr %3, align 8, !tbaa !5
  %82 = sext i32 %80 to i64
  %83 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %2, i64 noundef %82)
  %84 = load i8, ptr %83, align 1, !tbaa !15
  %85 = zext i8 %84 to i64
  %86 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEixEm(ptr noundef nonnull align 8 dereferenceable(20) %79, i64 noundef %85)
  %87 = load i32, ptr %86, align 4, !tbaa !17
  %88 = getelementptr inbounds i8, ptr %0, i64 164
  store i32 %87, ptr %88, align 4, !tbaa !19
  br label %1651

89:                                               ; preds = %1
  %90 = getelementptr inbounds i8, ptr %0, i64 168
  tail call void @_ZN7libzpaq5ZPAQL4swapERj(ptr noundef nonnull align 8 dereferenceable(192) %0, ptr noundef nonnull align 4 dereferenceable(4) %90)
  br label %1651

91:                                               ; preds = %1
  %92 = getelementptr inbounds i8, ptr %0, i64 168
  %93 = load i32, ptr %92, align 8, !tbaa !20
  %94 = add i32 %93, 1
  store i32 %94, ptr %92, align 8, !tbaa !20
  br label %1651

95:                                               ; preds = %1
  %96 = getelementptr inbounds i8, ptr %0, i64 168
  %97 = load i32, ptr %96, align 8, !tbaa !20
  %98 = add i32 %97, -1
  store i32 %98, ptr %96, align 8, !tbaa !20
  br label %1651

99:                                               ; preds = %1
  %100 = getelementptr inbounds i8, ptr %0, i64 168
  %101 = load i32, ptr %100, align 8, !tbaa !20
  %102 = xor i32 %101, -1
  store i32 %102, ptr %100, align 8, !tbaa !20
  br label %1651

103:                                              ; preds = %1
  %104 = getelementptr inbounds i8, ptr %0, i64 168
  store i32 0, ptr %104, align 8, !tbaa !20
  br label %1651

105:                                              ; preds = %1
  %106 = getelementptr inbounds i8, ptr %0, i64 104
  %107 = load i32, ptr %3, align 8, !tbaa !5
  %108 = add nsw i32 %107, 1
  store i32 %108, ptr %3, align 8, !tbaa !5
  %109 = sext i32 %107 to i64
  %110 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %2, i64 noundef %109)
  %111 = load i8, ptr %110, align 1, !tbaa !15
  %112 = zext i8 %111 to i64
  %113 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEixEm(ptr noundef nonnull align 8 dereferenceable(20) %106, i64 noundef %112)
  %114 = load i32, ptr %113, align 4, !tbaa !17
  %115 = getelementptr inbounds i8, ptr %0, i64 168
  store i32 %114, ptr %115, align 8, !tbaa !20
  br label %1651

116:                                              ; preds = %1
  %117 = getelementptr inbounds i8, ptr %0, i64 56
  %118 = getelementptr inbounds i8, ptr %0, i64 160
  %119 = load i32, ptr %118, align 8, !tbaa !18
  %120 = zext i32 %119 to i64
  %121 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %117, i64 noundef %120)
  tail call void @_ZN7libzpaq5ZPAQL4swapERh(ptr noundef nonnull align 8 dereferenceable(192) %0, ptr noundef nonnull align 1 dereferenceable(1) %121)
  br label %1651

122:                                              ; preds = %1
  %123 = getelementptr inbounds i8, ptr %0, i64 56
  %124 = getelementptr inbounds i8, ptr %0, i64 160
  %125 = load i32, ptr %124, align 8, !tbaa !18
  %126 = zext i32 %125 to i64
  %127 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %123, i64 noundef %126)
  %128 = load i8, ptr %127, align 1, !tbaa !15
  %129 = add i8 %128, 1
  store i8 %129, ptr %127, align 1, !tbaa !15
  br label %1651

130:                                              ; preds = %1
  %131 = getelementptr inbounds i8, ptr %0, i64 56
  %132 = getelementptr inbounds i8, ptr %0, i64 160
  %133 = load i32, ptr %132, align 8, !tbaa !18
  %134 = zext i32 %133 to i64
  %135 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %131, i64 noundef %134)
  %136 = load i8, ptr %135, align 1, !tbaa !15
  %137 = add i8 %136, -1
  store i8 %137, ptr %135, align 1, !tbaa !15
  br label %1651

138:                                              ; preds = %1
  %139 = getelementptr inbounds i8, ptr %0, i64 56
  %140 = getelementptr inbounds i8, ptr %0, i64 160
  %141 = load i32, ptr %140, align 8, !tbaa !18
  %142 = zext i32 %141 to i64
  %143 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %139, i64 noundef %142)
  %144 = load i8, ptr %143, align 1, !tbaa !15
  %145 = xor i8 %144, -1
  %146 = load i32, ptr %140, align 8, !tbaa !18
  %147 = zext i32 %146 to i64
  %148 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %139, i64 noundef %147)
  store i8 %145, ptr %148, align 1, !tbaa !15
  br label %1651

149:                                              ; preds = %1
  %150 = getelementptr inbounds i8, ptr %0, i64 56
  %151 = getelementptr inbounds i8, ptr %0, i64 160
  %152 = load i32, ptr %151, align 8, !tbaa !18
  %153 = zext i32 %152 to i64
  %154 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %150, i64 noundef %153)
  store i8 0, ptr %154, align 1, !tbaa !15
  br label %1651

155:                                              ; preds = %1
  %156 = getelementptr inbounds i8, ptr %0, i64 172
  %157 = load i32, ptr %156, align 4, !tbaa !21
  %.not2 = icmp eq i32 %157, 0
  %158 = load i32, ptr %3, align 8, !tbaa !5
  br i1 %.not2, label %168, label %159

159:                                              ; preds = %155
  %160 = sext i32 %158 to i64
  %161 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %2, i64 noundef %160)
  %162 = load i8, ptr %161, align 1, !tbaa !15
  %163 = xor i8 %162, -128
  %164 = zext i8 %163 to i32
  %165 = load i32, ptr %3, align 8, !tbaa !5
  %166 = add i32 %165, -127
  %167 = add i32 %166, %164
  store i32 %167, ptr %3, align 8, !tbaa !5
  br label %1651

168:                                              ; preds = %155
  %169 = add nsw i32 %158, 1
  store i32 %169, ptr %3, align 8, !tbaa !5
  br label %1651

170:                                              ; preds = %1
  %171 = getelementptr inbounds i8, ptr %0, i64 56
  %172 = getelementptr inbounds i8, ptr %0, i64 164
  %173 = load i32, ptr %172, align 4, !tbaa !19
  %174 = zext i32 %173 to i64
  %175 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %171, i64 noundef %174)
  tail call void @_ZN7libzpaq5ZPAQL4swapERh(ptr noundef nonnull align 8 dereferenceable(192) %0, ptr noundef nonnull align 1 dereferenceable(1) %175)
  br label %1651

176:                                              ; preds = %1
  %177 = getelementptr inbounds i8, ptr %0, i64 56
  %178 = getelementptr inbounds i8, ptr %0, i64 164
  %179 = load i32, ptr %178, align 4, !tbaa !19
  %180 = zext i32 %179 to i64
  %181 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %177, i64 noundef %180)
  %182 = load i8, ptr %181, align 1, !tbaa !15
  %183 = add i8 %182, 1
  store i8 %183, ptr %181, align 1, !tbaa !15
  br label %1651

184:                                              ; preds = %1
  %185 = getelementptr inbounds i8, ptr %0, i64 56
  %186 = getelementptr inbounds i8, ptr %0, i64 164
  %187 = load i32, ptr %186, align 4, !tbaa !19
  %188 = zext i32 %187 to i64
  %189 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %185, i64 noundef %188)
  %190 = load i8, ptr %189, align 1, !tbaa !15
  %191 = add i8 %190, -1
  store i8 %191, ptr %189, align 1, !tbaa !15
  br label %1651

192:                                              ; preds = %1
  %193 = getelementptr inbounds i8, ptr %0, i64 56
  %194 = getelementptr inbounds i8, ptr %0, i64 164
  %195 = load i32, ptr %194, align 4, !tbaa !19
  %196 = zext i32 %195 to i64
  %197 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %193, i64 noundef %196)
  %198 = load i8, ptr %197, align 1, !tbaa !15
  %199 = xor i8 %198, -1
  %200 = load i32, ptr %194, align 4, !tbaa !19
  %201 = zext i32 %200 to i64
  %202 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %193, i64 noundef %201)
  store i8 %199, ptr %202, align 1, !tbaa !15
  br label %1651

203:                                              ; preds = %1
  %204 = getelementptr inbounds i8, ptr %0, i64 56
  %205 = getelementptr inbounds i8, ptr %0, i64 164
  %206 = load i32, ptr %205, align 4, !tbaa !19
  %207 = zext i32 %206 to i64
  %208 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %204, i64 noundef %207)
  store i8 0, ptr %208, align 1, !tbaa !15
  br label %1651

209:                                              ; preds = %1
  %210 = getelementptr inbounds i8, ptr %0, i64 172
  %211 = load i32, ptr %210, align 4, !tbaa !21
  %.not1 = icmp eq i32 %211, 0
  %212 = load i32, ptr %3, align 8, !tbaa !5
  br i1 %.not1, label %213, label %222

213:                                              ; preds = %209
  %214 = sext i32 %212 to i64
  %215 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %2, i64 noundef %214)
  %216 = load i8, ptr %215, align 1, !tbaa !15
  %217 = xor i8 %216, -128
  %218 = zext i8 %217 to i32
  %219 = load i32, ptr %3, align 8, !tbaa !5
  %220 = add i32 %219, -127
  %221 = add i32 %220, %218
  store i32 %221, ptr %3, align 8, !tbaa !5
  br label %1651

222:                                              ; preds = %209
  %223 = add nsw i32 %212, 1
  store i32 %223, ptr %3, align 8, !tbaa !5
  br label %1651

224:                                              ; preds = %1
  %225 = getelementptr inbounds i8, ptr %0, i64 80
  %226 = getelementptr inbounds i8, ptr %0, i64 168
  %227 = load i32, ptr %226, align 8, !tbaa !20
  %228 = zext i32 %227 to i64
  %229 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %225, i64 noundef %228)
  tail call void @_ZN7libzpaq5ZPAQL4swapERj(ptr noundef nonnull align 8 dereferenceable(192) %0, ptr noundef nonnull align 4 dereferenceable(4) %229)
  br label %1651

230:                                              ; preds = %1
  %231 = getelementptr inbounds i8, ptr %0, i64 80
  %232 = getelementptr inbounds i8, ptr %0, i64 168
  %233 = load i32, ptr %232, align 8, !tbaa !20
  %234 = zext i32 %233 to i64
  %235 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %231, i64 noundef %234)
  %236 = load i32, ptr %235, align 4, !tbaa !17
  %237 = add i32 %236, 1
  store i32 %237, ptr %235, align 4, !tbaa !17
  br label %1651

238:                                              ; preds = %1
  %239 = getelementptr inbounds i8, ptr %0, i64 80
  %240 = getelementptr inbounds i8, ptr %0, i64 168
  %241 = load i32, ptr %240, align 8, !tbaa !20
  %242 = zext i32 %241 to i64
  %243 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %239, i64 noundef %242)
  %244 = load i32, ptr %243, align 4, !tbaa !17
  %245 = add i32 %244, -1
  store i32 %245, ptr %243, align 4, !tbaa !17
  br label %1651

246:                                              ; preds = %1
  %247 = getelementptr inbounds i8, ptr %0, i64 80
  %248 = getelementptr inbounds i8, ptr %0, i64 168
  %249 = load i32, ptr %248, align 8, !tbaa !20
  %250 = zext i32 %249 to i64
  %251 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %247, i64 noundef %250)
  %252 = load i32, ptr %251, align 4, !tbaa !17
  %253 = xor i32 %252, -1
  %254 = load i32, ptr %248, align 8, !tbaa !20
  %255 = zext i32 %254 to i64
  %256 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %247, i64 noundef %255)
  store i32 %253, ptr %256, align 4, !tbaa !17
  br label %1651

257:                                              ; preds = %1
  %258 = getelementptr inbounds i8, ptr %0, i64 80
  %259 = getelementptr inbounds i8, ptr %0, i64 168
  %260 = load i32, ptr %259, align 8, !tbaa !20
  %261 = zext i32 %260 to i64
  %262 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %258, i64 noundef %261)
  store i32 0, ptr %262, align 4, !tbaa !17
  br label %1651

263:                                              ; preds = %1
  %264 = getelementptr inbounds i8, ptr %0, i64 156
  %265 = load i32, ptr %264, align 4, !tbaa !16
  %266 = getelementptr inbounds i8, ptr %0, i64 104
  %267 = load i32, ptr %3, align 8, !tbaa !5
  %268 = add nsw i32 %267, 1
  store i32 %268, ptr %3, align 8, !tbaa !5
  %269 = sext i32 %267 to i64
  %270 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %2, i64 noundef %269)
  %271 = load i8, ptr %270, align 1, !tbaa !15
  %272 = zext i8 %271 to i64
  %273 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEixEm(ptr noundef nonnull align 8 dereferenceable(20) %266, i64 noundef %272)
  store i32 %265, ptr %273, align 4, !tbaa !17
  br label %1651

274:                                              ; preds = %1
  %275 = getelementptr inbounds i8, ptr %0, i64 156
  %276 = load i32, ptr %275, align 4, !tbaa !16
  %277 = and i32 %276, 255
  tail call void @_ZN7libzpaq5ZPAQL4outcEi(ptr noundef nonnull align 8 dereferenceable(192) %0, i32 noundef %277)
  br label %1651

278:                                              ; preds = %1
  %279 = getelementptr inbounds i8, ptr %0, i64 156
  %280 = load i32, ptr %279, align 4, !tbaa !16
  %281 = getelementptr inbounds i8, ptr %0, i64 56
  %282 = getelementptr inbounds i8, ptr %0, i64 160
  %283 = load i32, ptr %282, align 8, !tbaa !18
  %284 = zext i32 %283 to i64
  %285 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %281, i64 noundef %284)
  %286 = load i8, ptr %285, align 1, !tbaa !15
  %287 = zext i8 %286 to i32
  %288 = add i32 %280, %287
  %289 = mul i32 %288, 773
  %290 = add i32 %289, 395776
  store i32 %290, ptr %279, align 4, !tbaa !16
  br label %1651

291:                                              ; preds = %1
  %292 = getelementptr inbounds i8, ptr %0, i64 80
  %293 = getelementptr inbounds i8, ptr %0, i64 168
  %294 = load i32, ptr %293, align 8, !tbaa !20
  %295 = zext i32 %294 to i64
  %296 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %292, i64 noundef %295)
  %297 = load i32, ptr %296, align 4, !tbaa !17
  %298 = getelementptr inbounds i8, ptr %0, i64 156
  %299 = load i32, ptr %298, align 4, !tbaa !16
  %300 = add i32 %299, %297
  %301 = mul i32 %300, 773
  %302 = add i32 %301, 395776
  %303 = load i32, ptr %293, align 8, !tbaa !20
  %304 = zext i32 %303 to i64
  %305 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %292, i64 noundef %304)
  store i32 %302, ptr %305, align 4, !tbaa !17
  br label %1651

306:                                              ; preds = %1
  %307 = load i32, ptr %3, align 8, !tbaa !5
  %308 = sext i32 %307 to i64
  %309 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %2, i64 noundef %308)
  %310 = load i8, ptr %309, align 1, !tbaa !15
  %311 = xor i8 %310, -128
  %312 = zext i8 %311 to i32
  %313 = load i32, ptr %3, align 8, !tbaa !5
  %314 = add i32 %313, -127
  %315 = add i32 %314, %312
  store i32 %315, ptr %3, align 8, !tbaa !5
  br label %1651

316:                                              ; preds = %1
  %317 = getelementptr inbounds i8, ptr %0, i64 160
  %318 = load i32, ptr %317, align 8, !tbaa !18
  %319 = getelementptr inbounds i8, ptr %0, i64 156
  store i32 %318, ptr %319, align 4, !tbaa !16
  br label %1651

320:                                              ; preds = %1
  %321 = getelementptr inbounds i8, ptr %0, i64 164
  %322 = load i32, ptr %321, align 4, !tbaa !19
  %323 = getelementptr inbounds i8, ptr %0, i64 156
  store i32 %322, ptr %323, align 4, !tbaa !16
  br label %1651

324:                                              ; preds = %1
  %325 = getelementptr inbounds i8, ptr %0, i64 168
  %326 = load i32, ptr %325, align 8, !tbaa !20
  %327 = getelementptr inbounds i8, ptr %0, i64 156
  store i32 %326, ptr %327, align 4, !tbaa !16
  br label %1651

328:                                              ; preds = %1
  %329 = getelementptr inbounds i8, ptr %0, i64 56
  %330 = getelementptr inbounds i8, ptr %0, i64 160
  %331 = load i32, ptr %330, align 8, !tbaa !18
  %332 = zext i32 %331 to i64
  %333 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %329, i64 noundef %332)
  %334 = load i8, ptr %333, align 1, !tbaa !15
  %335 = zext i8 %334 to i32
  %336 = getelementptr inbounds i8, ptr %0, i64 156
  store i32 %335, ptr %336, align 4, !tbaa !16
  br label %1651

337:                                              ; preds = %1
  %338 = getelementptr inbounds i8, ptr %0, i64 56
  %339 = getelementptr inbounds i8, ptr %0, i64 164
  %340 = load i32, ptr %339, align 4, !tbaa !19
  %341 = zext i32 %340 to i64
  %342 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %338, i64 noundef %341)
  %343 = load i8, ptr %342, align 1, !tbaa !15
  %344 = zext i8 %343 to i32
  %345 = getelementptr inbounds i8, ptr %0, i64 156
  store i32 %344, ptr %345, align 4, !tbaa !16
  br label %1651

346:                                              ; preds = %1
  %347 = getelementptr inbounds i8, ptr %0, i64 80
  %348 = getelementptr inbounds i8, ptr %0, i64 168
  %349 = load i32, ptr %348, align 8, !tbaa !20
  %350 = zext i32 %349 to i64
  %351 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %347, i64 noundef %350)
  %352 = load i32, ptr %351, align 4, !tbaa !17
  %353 = getelementptr inbounds i8, ptr %0, i64 156
  store i32 %352, ptr %353, align 4, !tbaa !16
  br label %1651

354:                                              ; preds = %1
  %355 = load i32, ptr %3, align 8, !tbaa !5
  %356 = add nsw i32 %355, 1
  store i32 %356, ptr %3, align 8, !tbaa !5
  %357 = sext i32 %355 to i64
  %358 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %2, i64 noundef %357)
  %359 = load i8, ptr %358, align 1, !tbaa !15
  %360 = zext i8 %359 to i32
  %361 = getelementptr inbounds i8, ptr %0, i64 156
  store i32 %360, ptr %361, align 4, !tbaa !16
  br label %1651

362:                                              ; preds = %1
  %363 = getelementptr inbounds i8, ptr %0, i64 156
  %364 = load i32, ptr %363, align 4, !tbaa !16
  %365 = getelementptr inbounds i8, ptr %0, i64 160
  store i32 %364, ptr %365, align 8, !tbaa !18
  br label %1651

366:                                              ; preds = %1
  %367 = getelementptr inbounds i8, ptr %0, i64 164
  %368 = load i32, ptr %367, align 4, !tbaa !19
  %369 = getelementptr inbounds i8, ptr %0, i64 160
  store i32 %368, ptr %369, align 8, !tbaa !18
  br label %1651

370:                                              ; preds = %1
  %371 = getelementptr inbounds i8, ptr %0, i64 168
  %372 = load i32, ptr %371, align 8, !tbaa !20
  %373 = getelementptr inbounds i8, ptr %0, i64 160
  store i32 %372, ptr %373, align 8, !tbaa !18
  br label %1651

374:                                              ; preds = %1
  %375 = getelementptr inbounds i8, ptr %0, i64 56
  %376 = getelementptr inbounds i8, ptr %0, i64 160
  %377 = load i32, ptr %376, align 8, !tbaa !18
  %378 = zext i32 %377 to i64
  %379 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %375, i64 noundef %378)
  %380 = load i8, ptr %379, align 1, !tbaa !15
  %381 = zext i8 %380 to i32
  store i32 %381, ptr %376, align 8, !tbaa !18
  br label %1651

382:                                              ; preds = %1
  %383 = getelementptr inbounds i8, ptr %0, i64 56
  %384 = getelementptr inbounds i8, ptr %0, i64 164
  %385 = load i32, ptr %384, align 4, !tbaa !19
  %386 = zext i32 %385 to i64
  %387 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %383, i64 noundef %386)
  %388 = load i8, ptr %387, align 1, !tbaa !15
  %389 = zext i8 %388 to i32
  %390 = getelementptr inbounds i8, ptr %0, i64 160
  store i32 %389, ptr %390, align 8, !tbaa !18
  br label %1651

391:                                              ; preds = %1
  %392 = getelementptr inbounds i8, ptr %0, i64 80
  %393 = getelementptr inbounds i8, ptr %0, i64 168
  %394 = load i32, ptr %393, align 8, !tbaa !20
  %395 = zext i32 %394 to i64
  %396 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %392, i64 noundef %395)
  %397 = load i32, ptr %396, align 4, !tbaa !17
  %398 = getelementptr inbounds i8, ptr %0, i64 160
  store i32 %397, ptr %398, align 8, !tbaa !18
  br label %1651

399:                                              ; preds = %1
  %400 = load i32, ptr %3, align 8, !tbaa !5
  %401 = add nsw i32 %400, 1
  store i32 %401, ptr %3, align 8, !tbaa !5
  %402 = sext i32 %400 to i64
  %403 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %2, i64 noundef %402)
  %404 = load i8, ptr %403, align 1, !tbaa !15
  %405 = zext i8 %404 to i32
  %406 = getelementptr inbounds i8, ptr %0, i64 160
  store i32 %405, ptr %406, align 8, !tbaa !18
  br label %1651

407:                                              ; preds = %1
  %408 = getelementptr inbounds i8, ptr %0, i64 156
  %409 = load i32, ptr %408, align 4, !tbaa !16
  %410 = getelementptr inbounds i8, ptr %0, i64 164
  store i32 %409, ptr %410, align 4, !tbaa !19
  br label %1651

411:                                              ; preds = %1
  %412 = getelementptr inbounds i8, ptr %0, i64 160
  %413 = load i32, ptr %412, align 8, !tbaa !18
  %414 = getelementptr inbounds i8, ptr %0, i64 164
  store i32 %413, ptr %414, align 4, !tbaa !19
  br label %1651

415:                                              ; preds = %1
  %416 = getelementptr inbounds i8, ptr %0, i64 168
  %417 = load i32, ptr %416, align 8, !tbaa !20
  %418 = getelementptr inbounds i8, ptr %0, i64 164
  store i32 %417, ptr %418, align 4, !tbaa !19
  br label %1651

419:                                              ; preds = %1
  %420 = getelementptr inbounds i8, ptr %0, i64 56
  %421 = getelementptr inbounds i8, ptr %0, i64 160
  %422 = load i32, ptr %421, align 8, !tbaa !18
  %423 = zext i32 %422 to i64
  %424 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %420, i64 noundef %423)
  %425 = load i8, ptr %424, align 1, !tbaa !15
  %426 = zext i8 %425 to i32
  %427 = getelementptr inbounds i8, ptr %0, i64 164
  store i32 %426, ptr %427, align 4, !tbaa !19
  br label %1651

428:                                              ; preds = %1
  %429 = getelementptr inbounds i8, ptr %0, i64 56
  %430 = getelementptr inbounds i8, ptr %0, i64 164
  %431 = load i32, ptr %430, align 4, !tbaa !19
  %432 = zext i32 %431 to i64
  %433 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %429, i64 noundef %432)
  %434 = load i8, ptr %433, align 1, !tbaa !15
  %435 = zext i8 %434 to i32
  store i32 %435, ptr %430, align 4, !tbaa !19
  br label %1651

436:                                              ; preds = %1
  %437 = getelementptr inbounds i8, ptr %0, i64 80
  %438 = getelementptr inbounds i8, ptr %0, i64 168
  %439 = load i32, ptr %438, align 8, !tbaa !20
  %440 = zext i32 %439 to i64
  %441 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %437, i64 noundef %440)
  %442 = load i32, ptr %441, align 4, !tbaa !17
  %443 = getelementptr inbounds i8, ptr %0, i64 164
  store i32 %442, ptr %443, align 4, !tbaa !19
  br label %1651

444:                                              ; preds = %1
  %445 = load i32, ptr %3, align 8, !tbaa !5
  %446 = add nsw i32 %445, 1
  store i32 %446, ptr %3, align 8, !tbaa !5
  %447 = sext i32 %445 to i64
  %448 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %2, i64 noundef %447)
  %449 = load i8, ptr %448, align 1, !tbaa !15
  %450 = zext i8 %449 to i32
  %451 = getelementptr inbounds i8, ptr %0, i64 164
  store i32 %450, ptr %451, align 4, !tbaa !19
  br label %1651

452:                                              ; preds = %1
  %453 = getelementptr inbounds i8, ptr %0, i64 156
  %454 = load i32, ptr %453, align 4, !tbaa !16
  %455 = getelementptr inbounds i8, ptr %0, i64 168
  store i32 %454, ptr %455, align 8, !tbaa !20
  br label %1651

456:                                              ; preds = %1
  %457 = getelementptr inbounds i8, ptr %0, i64 160
  %458 = load i32, ptr %457, align 8, !tbaa !18
  %459 = getelementptr inbounds i8, ptr %0, i64 168
  store i32 %458, ptr %459, align 8, !tbaa !20
  br label %1651

460:                                              ; preds = %1
  %461 = getelementptr inbounds i8, ptr %0, i64 164
  %462 = load i32, ptr %461, align 4, !tbaa !19
  %463 = getelementptr inbounds i8, ptr %0, i64 168
  store i32 %462, ptr %463, align 8, !tbaa !20
  br label %1651

464:                                              ; preds = %1
  %465 = getelementptr inbounds i8, ptr %0, i64 56
  %466 = getelementptr inbounds i8, ptr %0, i64 160
  %467 = load i32, ptr %466, align 8, !tbaa !18
  %468 = zext i32 %467 to i64
  %469 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %465, i64 noundef %468)
  %470 = load i8, ptr %469, align 1, !tbaa !15
  %471 = zext i8 %470 to i32
  %472 = getelementptr inbounds i8, ptr %0, i64 168
  store i32 %471, ptr %472, align 8, !tbaa !20
  br label %1651

473:                                              ; preds = %1
  %474 = getelementptr inbounds i8, ptr %0, i64 56
  %475 = getelementptr inbounds i8, ptr %0, i64 164
  %476 = load i32, ptr %475, align 4, !tbaa !19
  %477 = zext i32 %476 to i64
  %478 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %474, i64 noundef %477)
  %479 = load i8, ptr %478, align 1, !tbaa !15
  %480 = zext i8 %479 to i32
  %481 = getelementptr inbounds i8, ptr %0, i64 168
  store i32 %480, ptr %481, align 8, !tbaa !20
  br label %1651

482:                                              ; preds = %1
  %483 = getelementptr inbounds i8, ptr %0, i64 80
  %484 = getelementptr inbounds i8, ptr %0, i64 168
  %485 = load i32, ptr %484, align 8, !tbaa !20
  %486 = zext i32 %485 to i64
  %487 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %483, i64 noundef %486)
  %488 = load i32, ptr %487, align 4, !tbaa !17
  store i32 %488, ptr %484, align 8, !tbaa !20
  br label %1651

489:                                              ; preds = %1
  %490 = load i32, ptr %3, align 8, !tbaa !5
  %491 = add nsw i32 %490, 1
  store i32 %491, ptr %3, align 8, !tbaa !5
  %492 = sext i32 %490 to i64
  %493 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %2, i64 noundef %492)
  %494 = load i8, ptr %493, align 1, !tbaa !15
  %495 = zext i8 %494 to i32
  %496 = getelementptr inbounds i8, ptr %0, i64 168
  store i32 %495, ptr %496, align 8, !tbaa !20
  br label %1651

497:                                              ; preds = %1
  %498 = getelementptr inbounds i8, ptr %0, i64 156
  %499 = load i32, ptr %498, align 4, !tbaa !16
  %500 = trunc i32 %499 to i8
  %501 = getelementptr inbounds i8, ptr %0, i64 56
  %502 = getelementptr inbounds i8, ptr %0, i64 160
  %503 = load i32, ptr %502, align 8, !tbaa !18
  %504 = zext i32 %503 to i64
  %505 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %501, i64 noundef %504)
  store i8 %500, ptr %505, align 1, !tbaa !15
  br label %1651

506:                                              ; preds = %1
  %507 = getelementptr inbounds i8, ptr %0, i64 160
  %508 = load i32, ptr %507, align 8, !tbaa !18
  %509 = trunc i32 %508 to i8
  %510 = getelementptr inbounds i8, ptr %0, i64 56
  %511 = zext i32 %508 to i64
  %512 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %510, i64 noundef %511)
  store i8 %509, ptr %512, align 1, !tbaa !15
  br label %1651

513:                                              ; preds = %1
  %514 = getelementptr inbounds i8, ptr %0, i64 164
  %515 = load i32, ptr %514, align 4, !tbaa !19
  %516 = trunc i32 %515 to i8
  %517 = getelementptr inbounds i8, ptr %0, i64 56
  %518 = getelementptr inbounds i8, ptr %0, i64 160
  %519 = load i32, ptr %518, align 8, !tbaa !18
  %520 = zext i32 %519 to i64
  %521 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %517, i64 noundef %520)
  store i8 %516, ptr %521, align 1, !tbaa !15
  br label %1651

522:                                              ; preds = %1
  %523 = getelementptr inbounds i8, ptr %0, i64 168
  %524 = load i32, ptr %523, align 8, !tbaa !20
  %525 = trunc i32 %524 to i8
  %526 = getelementptr inbounds i8, ptr %0, i64 56
  %527 = getelementptr inbounds i8, ptr %0, i64 160
  %528 = load i32, ptr %527, align 8, !tbaa !18
  %529 = zext i32 %528 to i64
  %530 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %526, i64 noundef %529)
  store i8 %525, ptr %530, align 1, !tbaa !15
  br label %1651

531:                                              ; preds = %1
  %532 = getelementptr inbounds i8, ptr %0, i64 56
  %533 = getelementptr inbounds i8, ptr %0, i64 160
  %534 = load i32, ptr %533, align 8, !tbaa !18
  %535 = zext i32 %534 to i64
  %536 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %532, i64 noundef %535)
  %537 = load i8, ptr %536, align 1, !tbaa !15
  %538 = load i32, ptr %533, align 8, !tbaa !18
  %539 = zext i32 %538 to i64
  %540 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %532, i64 noundef %539)
  store i8 %537, ptr %540, align 1, !tbaa !15
  br label %1651

541:                                              ; preds = %1
  %542 = getelementptr inbounds i8, ptr %0, i64 56
  %543 = getelementptr inbounds i8, ptr %0, i64 164
  %544 = load i32, ptr %543, align 4, !tbaa !19
  %545 = zext i32 %544 to i64
  %546 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %542, i64 noundef %545)
  %547 = load i8, ptr %546, align 1, !tbaa !15
  %548 = getelementptr inbounds i8, ptr %0, i64 160
  %549 = load i32, ptr %548, align 8, !tbaa !18
  %550 = zext i32 %549 to i64
  %551 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %542, i64 noundef %550)
  store i8 %547, ptr %551, align 1, !tbaa !15
  br label %1651

552:                                              ; preds = %1
  %553 = getelementptr inbounds i8, ptr %0, i64 80
  %554 = getelementptr inbounds i8, ptr %0, i64 168
  %555 = load i32, ptr %554, align 8, !tbaa !20
  %556 = zext i32 %555 to i64
  %557 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %553, i64 noundef %556)
  %558 = load i32, ptr %557, align 4, !tbaa !17
  %559 = trunc i32 %558 to i8
  %560 = getelementptr inbounds i8, ptr %0, i64 56
  %561 = getelementptr inbounds i8, ptr %0, i64 160
  %562 = load i32, ptr %561, align 8, !tbaa !18
  %563 = zext i32 %562 to i64
  %564 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %560, i64 noundef %563)
  store i8 %559, ptr %564, align 1, !tbaa !15
  br label %1651

565:                                              ; preds = %1
  %566 = load i32, ptr %3, align 8, !tbaa !5
  %567 = add nsw i32 %566, 1
  store i32 %567, ptr %3, align 8, !tbaa !5
  %568 = sext i32 %566 to i64
  %569 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %2, i64 noundef %568)
  %570 = load i8, ptr %569, align 1, !tbaa !15
  %571 = getelementptr inbounds i8, ptr %0, i64 56
  %572 = getelementptr inbounds i8, ptr %0, i64 160
  %573 = load i32, ptr %572, align 8, !tbaa !18
  %574 = zext i32 %573 to i64
  %575 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %571, i64 noundef %574)
  store i8 %570, ptr %575, align 1, !tbaa !15
  br label %1651

576:                                              ; preds = %1
  %577 = getelementptr inbounds i8, ptr %0, i64 156
  %578 = load i32, ptr %577, align 4, !tbaa !16
  %579 = trunc i32 %578 to i8
  %580 = getelementptr inbounds i8, ptr %0, i64 56
  %581 = getelementptr inbounds i8, ptr %0, i64 164
  %582 = load i32, ptr %581, align 4, !tbaa !19
  %583 = zext i32 %582 to i64
  %584 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %580, i64 noundef %583)
  store i8 %579, ptr %584, align 1, !tbaa !15
  br label %1651

585:                                              ; preds = %1
  %586 = getelementptr inbounds i8, ptr %0, i64 160
  %587 = load i32, ptr %586, align 8, !tbaa !18
  %588 = trunc i32 %587 to i8
  %589 = getelementptr inbounds i8, ptr %0, i64 56
  %590 = getelementptr inbounds i8, ptr %0, i64 164
  %591 = load i32, ptr %590, align 4, !tbaa !19
  %592 = zext i32 %591 to i64
  %593 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %589, i64 noundef %592)
  store i8 %588, ptr %593, align 1, !tbaa !15
  br label %1651

594:                                              ; preds = %1
  %595 = getelementptr inbounds i8, ptr %0, i64 164
  %596 = load i32, ptr %595, align 4, !tbaa !19
  %597 = trunc i32 %596 to i8
  %598 = getelementptr inbounds i8, ptr %0, i64 56
  %599 = zext i32 %596 to i64
  %600 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %598, i64 noundef %599)
  store i8 %597, ptr %600, align 1, !tbaa !15
  br label %1651

601:                                              ; preds = %1
  %602 = getelementptr inbounds i8, ptr %0, i64 168
  %603 = load i32, ptr %602, align 8, !tbaa !20
  %604 = trunc i32 %603 to i8
  %605 = getelementptr inbounds i8, ptr %0, i64 56
  %606 = getelementptr inbounds i8, ptr %0, i64 164
  %607 = load i32, ptr %606, align 4, !tbaa !19
  %608 = zext i32 %607 to i64
  %609 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %605, i64 noundef %608)
  store i8 %604, ptr %609, align 1, !tbaa !15
  br label %1651

610:                                              ; preds = %1
  %611 = getelementptr inbounds i8, ptr %0, i64 56
  %612 = getelementptr inbounds i8, ptr %0, i64 160
  %613 = load i32, ptr %612, align 8, !tbaa !18
  %614 = zext i32 %613 to i64
  %615 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %611, i64 noundef %614)
  %616 = load i8, ptr %615, align 1, !tbaa !15
  %617 = getelementptr inbounds i8, ptr %0, i64 164
  %618 = load i32, ptr %617, align 4, !tbaa !19
  %619 = zext i32 %618 to i64
  %620 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %611, i64 noundef %619)
  store i8 %616, ptr %620, align 1, !tbaa !15
  br label %1651

621:                                              ; preds = %1
  %622 = getelementptr inbounds i8, ptr %0, i64 56
  %623 = getelementptr inbounds i8, ptr %0, i64 164
  %624 = load i32, ptr %623, align 4, !tbaa !19
  %625 = zext i32 %624 to i64
  %626 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %622, i64 noundef %625)
  %627 = load i8, ptr %626, align 1, !tbaa !15
  %628 = load i32, ptr %623, align 4, !tbaa !19
  %629 = zext i32 %628 to i64
  %630 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %622, i64 noundef %629)
  store i8 %627, ptr %630, align 1, !tbaa !15
  br label %1651

631:                                              ; preds = %1
  %632 = getelementptr inbounds i8, ptr %0, i64 80
  %633 = getelementptr inbounds i8, ptr %0, i64 168
  %634 = load i32, ptr %633, align 8, !tbaa !20
  %635 = zext i32 %634 to i64
  %636 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %632, i64 noundef %635)
  %637 = load i32, ptr %636, align 4, !tbaa !17
  %638 = trunc i32 %637 to i8
  %639 = getelementptr inbounds i8, ptr %0, i64 56
  %640 = getelementptr inbounds i8, ptr %0, i64 164
  %641 = load i32, ptr %640, align 4, !tbaa !19
  %642 = zext i32 %641 to i64
  %643 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %639, i64 noundef %642)
  store i8 %638, ptr %643, align 1, !tbaa !15
  br label %1651

644:                                              ; preds = %1
  %645 = load i32, ptr %3, align 8, !tbaa !5
  %646 = add nsw i32 %645, 1
  store i32 %646, ptr %3, align 8, !tbaa !5
  %647 = sext i32 %645 to i64
  %648 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %2, i64 noundef %647)
  %649 = load i8, ptr %648, align 1, !tbaa !15
  %650 = getelementptr inbounds i8, ptr %0, i64 56
  %651 = getelementptr inbounds i8, ptr %0, i64 164
  %652 = load i32, ptr %651, align 4, !tbaa !19
  %653 = zext i32 %652 to i64
  %654 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %650, i64 noundef %653)
  store i8 %649, ptr %654, align 1, !tbaa !15
  br label %1651

655:                                              ; preds = %1
  %656 = getelementptr inbounds i8, ptr %0, i64 156
  %657 = load i32, ptr %656, align 4, !tbaa !16
  %658 = getelementptr inbounds i8, ptr %0, i64 80
  %659 = getelementptr inbounds i8, ptr %0, i64 168
  %660 = load i32, ptr %659, align 8, !tbaa !20
  %661 = zext i32 %660 to i64
  %662 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %658, i64 noundef %661)
  store i32 %657, ptr %662, align 4, !tbaa !17
  br label %1651

663:                                              ; preds = %1
  %664 = getelementptr inbounds i8, ptr %0, i64 160
  %665 = load i32, ptr %664, align 8, !tbaa !18
  %666 = getelementptr inbounds i8, ptr %0, i64 80
  %667 = getelementptr inbounds i8, ptr %0, i64 168
  %668 = load i32, ptr %667, align 8, !tbaa !20
  %669 = zext i32 %668 to i64
  %670 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %666, i64 noundef %669)
  store i32 %665, ptr %670, align 4, !tbaa !17
  br label %1651

671:                                              ; preds = %1
  %672 = getelementptr inbounds i8, ptr %0, i64 164
  %673 = load i32, ptr %672, align 4, !tbaa !19
  %674 = getelementptr inbounds i8, ptr %0, i64 80
  %675 = getelementptr inbounds i8, ptr %0, i64 168
  %676 = load i32, ptr %675, align 8, !tbaa !20
  %677 = zext i32 %676 to i64
  %678 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %674, i64 noundef %677)
  store i32 %673, ptr %678, align 4, !tbaa !17
  br label %1651

679:                                              ; preds = %1
  %680 = getelementptr inbounds i8, ptr %0, i64 168
  %681 = load i32, ptr %680, align 8, !tbaa !20
  %682 = getelementptr inbounds i8, ptr %0, i64 80
  %683 = zext i32 %681 to i64
  %684 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %682, i64 noundef %683)
  store i32 %681, ptr %684, align 4, !tbaa !17
  br label %1651

685:                                              ; preds = %1
  %686 = getelementptr inbounds i8, ptr %0, i64 56
  %687 = getelementptr inbounds i8, ptr %0, i64 160
  %688 = load i32, ptr %687, align 8, !tbaa !18
  %689 = zext i32 %688 to i64
  %690 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %686, i64 noundef %689)
  %691 = load i8, ptr %690, align 1, !tbaa !15
  %692 = zext i8 %691 to i32
  %693 = getelementptr inbounds i8, ptr %0, i64 80
  %694 = getelementptr inbounds i8, ptr %0, i64 168
  %695 = load i32, ptr %694, align 8, !tbaa !20
  %696 = zext i32 %695 to i64
  %697 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %693, i64 noundef %696)
  store i32 %692, ptr %697, align 4, !tbaa !17
  br label %1651

698:                                              ; preds = %1
  %699 = getelementptr inbounds i8, ptr %0, i64 56
  %700 = getelementptr inbounds i8, ptr %0, i64 164
  %701 = load i32, ptr %700, align 4, !tbaa !19
  %702 = zext i32 %701 to i64
  %703 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %699, i64 noundef %702)
  %704 = load i8, ptr %703, align 1, !tbaa !15
  %705 = zext i8 %704 to i32
  %706 = getelementptr inbounds i8, ptr %0, i64 80
  %707 = getelementptr inbounds i8, ptr %0, i64 168
  %708 = load i32, ptr %707, align 8, !tbaa !20
  %709 = zext i32 %708 to i64
  %710 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %706, i64 noundef %709)
  store i32 %705, ptr %710, align 4, !tbaa !17
  br label %1651

711:                                              ; preds = %1
  %712 = getelementptr inbounds i8, ptr %0, i64 80
  %713 = getelementptr inbounds i8, ptr %0, i64 168
  %714 = load i32, ptr %713, align 8, !tbaa !20
  %715 = zext i32 %714 to i64
  %716 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %712, i64 noundef %715)
  %717 = load i32, ptr %716, align 4, !tbaa !17
  %718 = load i32, ptr %713, align 8, !tbaa !20
  %719 = zext i32 %718 to i64
  %720 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %712, i64 noundef %719)
  store i32 %717, ptr %720, align 4, !tbaa !17
  br label %1651

721:                                              ; preds = %1
  %722 = load i32, ptr %3, align 8, !tbaa !5
  %723 = add nsw i32 %722, 1
  store i32 %723, ptr %3, align 8, !tbaa !5
  %724 = sext i32 %722 to i64
  %725 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %2, i64 noundef %724)
  %726 = load i8, ptr %725, align 1, !tbaa !15
  %727 = zext i8 %726 to i32
  %728 = getelementptr inbounds i8, ptr %0, i64 80
  %729 = getelementptr inbounds i8, ptr %0, i64 168
  %730 = load i32, ptr %729, align 8, !tbaa !20
  %731 = zext i32 %730 to i64
  %732 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %728, i64 noundef %731)
  store i32 %727, ptr %732, align 4, !tbaa !17
  br label %1651

733:                                              ; preds = %1
  %734 = getelementptr inbounds i8, ptr %0, i64 156
  %735 = load i32, ptr %734, align 4, !tbaa !16
  %736 = shl i32 %735, 1
  store i32 %736, ptr %734, align 4, !tbaa !16
  br label %1651

737:                                              ; preds = %1
  %738 = getelementptr inbounds i8, ptr %0, i64 160
  %739 = load i32, ptr %738, align 8, !tbaa !18
  %740 = getelementptr inbounds i8, ptr %0, i64 156
  %741 = load i32, ptr %740, align 4, !tbaa !16
  %742 = add i32 %741, %739
  store i32 %742, ptr %740, align 4, !tbaa !16
  br label %1651

743:                                              ; preds = %1
  %744 = getelementptr inbounds i8, ptr %0, i64 164
  %745 = load i32, ptr %744, align 4, !tbaa !19
  %746 = getelementptr inbounds i8, ptr %0, i64 156
  %747 = load i32, ptr %746, align 4, !tbaa !16
  %748 = add i32 %747, %745
  store i32 %748, ptr %746, align 4, !tbaa !16
  br label %1651

749:                                              ; preds = %1
  %750 = getelementptr inbounds i8, ptr %0, i64 168
  %751 = load i32, ptr %750, align 8, !tbaa !20
  %752 = getelementptr inbounds i8, ptr %0, i64 156
  %753 = load i32, ptr %752, align 4, !tbaa !16
  %754 = add i32 %753, %751
  store i32 %754, ptr %752, align 4, !tbaa !16
  br label %1651

755:                                              ; preds = %1
  %756 = getelementptr inbounds i8, ptr %0, i64 56
  %757 = getelementptr inbounds i8, ptr %0, i64 160
  %758 = load i32, ptr %757, align 8, !tbaa !18
  %759 = zext i32 %758 to i64
  %760 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %756, i64 noundef %759)
  %761 = load i8, ptr %760, align 1, !tbaa !15
  %762 = zext i8 %761 to i32
  %763 = getelementptr inbounds i8, ptr %0, i64 156
  %764 = load i32, ptr %763, align 4, !tbaa !16
  %765 = add i32 %764, %762
  store i32 %765, ptr %763, align 4, !tbaa !16
  br label %1651

766:                                              ; preds = %1
  %767 = getelementptr inbounds i8, ptr %0, i64 56
  %768 = getelementptr inbounds i8, ptr %0, i64 164
  %769 = load i32, ptr %768, align 4, !tbaa !19
  %770 = zext i32 %769 to i64
  %771 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %767, i64 noundef %770)
  %772 = load i8, ptr %771, align 1, !tbaa !15
  %773 = zext i8 %772 to i32
  %774 = getelementptr inbounds i8, ptr %0, i64 156
  %775 = load i32, ptr %774, align 4, !tbaa !16
  %776 = add i32 %775, %773
  store i32 %776, ptr %774, align 4, !tbaa !16
  br label %1651

777:                                              ; preds = %1
  %778 = getelementptr inbounds i8, ptr %0, i64 80
  %779 = getelementptr inbounds i8, ptr %0, i64 168
  %780 = load i32, ptr %779, align 8, !tbaa !20
  %781 = zext i32 %780 to i64
  %782 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %778, i64 noundef %781)
  %783 = load i32, ptr %782, align 4, !tbaa !17
  %784 = getelementptr inbounds i8, ptr %0, i64 156
  %785 = load i32, ptr %784, align 4, !tbaa !16
  %786 = add i32 %785, %783
  store i32 %786, ptr %784, align 4, !tbaa !16
  br label %1651

787:                                              ; preds = %1
  %788 = load i32, ptr %3, align 8, !tbaa !5
  %789 = add nsw i32 %788, 1
  store i32 %789, ptr %3, align 8, !tbaa !5
  %790 = sext i32 %788 to i64
  %791 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %2, i64 noundef %790)
  %792 = load i8, ptr %791, align 1, !tbaa !15
  %793 = zext i8 %792 to i32
  %794 = getelementptr inbounds i8, ptr %0, i64 156
  %795 = load i32, ptr %794, align 4, !tbaa !16
  %796 = add i32 %795, %793
  store i32 %796, ptr %794, align 4, !tbaa !16
  br label %1651

797:                                              ; preds = %1
  %798 = getelementptr inbounds i8, ptr %0, i64 156
  store i32 0, ptr %798, align 4, !tbaa !16
  br label %1651

799:                                              ; preds = %1
  %800 = getelementptr inbounds i8, ptr %0, i64 160
  %801 = load i32, ptr %800, align 8, !tbaa !18
  %802 = getelementptr inbounds i8, ptr %0, i64 156
  %803 = load i32, ptr %802, align 4, !tbaa !16
  %804 = sub i32 %803, %801
  store i32 %804, ptr %802, align 4, !tbaa !16
  br label %1651

805:                                              ; preds = %1
  %806 = getelementptr inbounds i8, ptr %0, i64 164
  %807 = load i32, ptr %806, align 4, !tbaa !19
  %808 = getelementptr inbounds i8, ptr %0, i64 156
  %809 = load i32, ptr %808, align 4, !tbaa !16
  %810 = sub i32 %809, %807
  store i32 %810, ptr %808, align 4, !tbaa !16
  br label %1651

811:                                              ; preds = %1
  %812 = getelementptr inbounds i8, ptr %0, i64 168
  %813 = load i32, ptr %812, align 8, !tbaa !20
  %814 = getelementptr inbounds i8, ptr %0, i64 156
  %815 = load i32, ptr %814, align 4, !tbaa !16
  %816 = sub i32 %815, %813
  store i32 %816, ptr %814, align 4, !tbaa !16
  br label %1651

817:                                              ; preds = %1
  %818 = getelementptr inbounds i8, ptr %0, i64 56
  %819 = getelementptr inbounds i8, ptr %0, i64 160
  %820 = load i32, ptr %819, align 8, !tbaa !18
  %821 = zext i32 %820 to i64
  %822 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %818, i64 noundef %821)
  %823 = load i8, ptr %822, align 1, !tbaa !15
  %824 = zext i8 %823 to i32
  %825 = getelementptr inbounds i8, ptr %0, i64 156
  %826 = load i32, ptr %825, align 4, !tbaa !16
  %827 = sub i32 %826, %824
  store i32 %827, ptr %825, align 4, !tbaa !16
  br label %1651

828:                                              ; preds = %1
  %829 = getelementptr inbounds i8, ptr %0, i64 56
  %830 = getelementptr inbounds i8, ptr %0, i64 164
  %831 = load i32, ptr %830, align 4, !tbaa !19
  %832 = zext i32 %831 to i64
  %833 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %829, i64 noundef %832)
  %834 = load i8, ptr %833, align 1, !tbaa !15
  %835 = zext i8 %834 to i32
  %836 = getelementptr inbounds i8, ptr %0, i64 156
  %837 = load i32, ptr %836, align 4, !tbaa !16
  %838 = sub i32 %837, %835
  store i32 %838, ptr %836, align 4, !tbaa !16
  br label %1651

839:                                              ; preds = %1
  %840 = getelementptr inbounds i8, ptr %0, i64 80
  %841 = getelementptr inbounds i8, ptr %0, i64 168
  %842 = load i32, ptr %841, align 8, !tbaa !20
  %843 = zext i32 %842 to i64
  %844 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %840, i64 noundef %843)
  %845 = load i32, ptr %844, align 4, !tbaa !17
  %846 = getelementptr inbounds i8, ptr %0, i64 156
  %847 = load i32, ptr %846, align 4, !tbaa !16
  %848 = sub i32 %847, %845
  store i32 %848, ptr %846, align 4, !tbaa !16
  br label %1651

849:                                              ; preds = %1
  %850 = load i32, ptr %3, align 8, !tbaa !5
  %851 = add nsw i32 %850, 1
  store i32 %851, ptr %3, align 8, !tbaa !5
  %852 = sext i32 %850 to i64
  %853 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %2, i64 noundef %852)
  %854 = load i8, ptr %853, align 1, !tbaa !15
  %855 = zext i8 %854 to i32
  %856 = getelementptr inbounds i8, ptr %0, i64 156
  %857 = load i32, ptr %856, align 4, !tbaa !16
  %858 = sub i32 %857, %855
  store i32 %858, ptr %856, align 4, !tbaa !16
  br label %1651

859:                                              ; preds = %1
  %860 = getelementptr inbounds i8, ptr %0, i64 156
  %861 = load i32, ptr %860, align 4, !tbaa !16
  %862 = mul i32 %861, %861
  store i32 %862, ptr %860, align 4, !tbaa !16
  br label %1651

863:                                              ; preds = %1
  %864 = getelementptr inbounds i8, ptr %0, i64 160
  %865 = load i32, ptr %864, align 8, !tbaa !18
  %866 = getelementptr inbounds i8, ptr %0, i64 156
  %867 = load i32, ptr %866, align 4, !tbaa !16
  %868 = mul i32 %867, %865
  store i32 %868, ptr %866, align 4, !tbaa !16
  br label %1651

869:                                              ; preds = %1
  %870 = getelementptr inbounds i8, ptr %0, i64 164
  %871 = load i32, ptr %870, align 4, !tbaa !19
  %872 = getelementptr inbounds i8, ptr %0, i64 156
  %873 = load i32, ptr %872, align 4, !tbaa !16
  %874 = mul i32 %873, %871
  store i32 %874, ptr %872, align 4, !tbaa !16
  br label %1651

875:                                              ; preds = %1
  %876 = getelementptr inbounds i8, ptr %0, i64 168
  %877 = load i32, ptr %876, align 8, !tbaa !20
  %878 = getelementptr inbounds i8, ptr %0, i64 156
  %879 = load i32, ptr %878, align 4, !tbaa !16
  %880 = mul i32 %879, %877
  store i32 %880, ptr %878, align 4, !tbaa !16
  br label %1651

881:                                              ; preds = %1
  %882 = getelementptr inbounds i8, ptr %0, i64 56
  %883 = getelementptr inbounds i8, ptr %0, i64 160
  %884 = load i32, ptr %883, align 8, !tbaa !18
  %885 = zext i32 %884 to i64
  %886 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %882, i64 noundef %885)
  %887 = load i8, ptr %886, align 1, !tbaa !15
  %888 = zext i8 %887 to i32
  %889 = getelementptr inbounds i8, ptr %0, i64 156
  %890 = load i32, ptr %889, align 4, !tbaa !16
  %891 = mul i32 %890, %888
  store i32 %891, ptr %889, align 4, !tbaa !16
  br label %1651

892:                                              ; preds = %1
  %893 = getelementptr inbounds i8, ptr %0, i64 56
  %894 = getelementptr inbounds i8, ptr %0, i64 164
  %895 = load i32, ptr %894, align 4, !tbaa !19
  %896 = zext i32 %895 to i64
  %897 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %893, i64 noundef %896)
  %898 = load i8, ptr %897, align 1, !tbaa !15
  %899 = zext i8 %898 to i32
  %900 = getelementptr inbounds i8, ptr %0, i64 156
  %901 = load i32, ptr %900, align 4, !tbaa !16
  %902 = mul i32 %901, %899
  store i32 %902, ptr %900, align 4, !tbaa !16
  br label %1651

903:                                              ; preds = %1
  %904 = getelementptr inbounds i8, ptr %0, i64 80
  %905 = getelementptr inbounds i8, ptr %0, i64 168
  %906 = load i32, ptr %905, align 8, !tbaa !20
  %907 = zext i32 %906 to i64
  %908 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %904, i64 noundef %907)
  %909 = load i32, ptr %908, align 4, !tbaa !17
  %910 = getelementptr inbounds i8, ptr %0, i64 156
  %911 = load i32, ptr %910, align 4, !tbaa !16
  %912 = mul i32 %911, %909
  store i32 %912, ptr %910, align 4, !tbaa !16
  br label %1651

913:                                              ; preds = %1
  %914 = load i32, ptr %3, align 8, !tbaa !5
  %915 = add nsw i32 %914, 1
  store i32 %915, ptr %3, align 8, !tbaa !5
  %916 = sext i32 %914 to i64
  %917 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %2, i64 noundef %916)
  %918 = load i8, ptr %917, align 1, !tbaa !15
  %919 = zext i8 %918 to i32
  %920 = getelementptr inbounds i8, ptr %0, i64 156
  %921 = load i32, ptr %920, align 4, !tbaa !16
  %922 = mul i32 %921, %919
  store i32 %922, ptr %920, align 4, !tbaa !16
  br label %1651

923:                                              ; preds = %1
  %924 = getelementptr inbounds i8, ptr %0, i64 156
  %925 = load i32, ptr %924, align 4, !tbaa !16
  tail call void @_ZN7libzpaq5ZPAQL3divEj(ptr noundef nonnull align 8 dereferenceable(192) %0, i32 noundef %925)
  br label %1651

926:                                              ; preds = %1
  %927 = getelementptr inbounds i8, ptr %0, i64 160
  %928 = load i32, ptr %927, align 8, !tbaa !18
  tail call void @_ZN7libzpaq5ZPAQL3divEj(ptr noundef nonnull align 8 dereferenceable(192) %0, i32 noundef %928)
  br label %1651

929:                                              ; preds = %1
  %930 = getelementptr inbounds i8, ptr %0, i64 164
  %931 = load i32, ptr %930, align 4, !tbaa !19
  tail call void @_ZN7libzpaq5ZPAQL3divEj(ptr noundef nonnull align 8 dereferenceable(192) %0, i32 noundef %931)
  br label %1651

932:                                              ; preds = %1
  %933 = getelementptr inbounds i8, ptr %0, i64 168
  %934 = load i32, ptr %933, align 8, !tbaa !20
  tail call void @_ZN7libzpaq5ZPAQL3divEj(ptr noundef nonnull align 8 dereferenceable(192) %0, i32 noundef %934)
  br label %1651

935:                                              ; preds = %1
  %936 = getelementptr inbounds i8, ptr %0, i64 56
  %937 = getelementptr inbounds i8, ptr %0, i64 160
  %938 = load i32, ptr %937, align 8, !tbaa !18
  %939 = zext i32 %938 to i64
  %940 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %936, i64 noundef %939)
  %941 = load i8, ptr %940, align 1, !tbaa !15
  %942 = zext i8 %941 to i32
  tail call void @_ZN7libzpaq5ZPAQL3divEj(ptr noundef nonnull align 8 dereferenceable(192) %0, i32 noundef %942)
  br label %1651

943:                                              ; preds = %1
  %944 = getelementptr inbounds i8, ptr %0, i64 56
  %945 = getelementptr inbounds i8, ptr %0, i64 164
  %946 = load i32, ptr %945, align 4, !tbaa !19
  %947 = zext i32 %946 to i64
  %948 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %944, i64 noundef %947)
  %949 = load i8, ptr %948, align 1, !tbaa !15
  %950 = zext i8 %949 to i32
  tail call void @_ZN7libzpaq5ZPAQL3divEj(ptr noundef nonnull align 8 dereferenceable(192) %0, i32 noundef %950)
  br label %1651

951:                                              ; preds = %1
  %952 = getelementptr inbounds i8, ptr %0, i64 80
  %953 = getelementptr inbounds i8, ptr %0, i64 168
  %954 = load i32, ptr %953, align 8, !tbaa !20
  %955 = zext i32 %954 to i64
  %956 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %952, i64 noundef %955)
  %957 = load i32, ptr %956, align 4, !tbaa !17
  tail call void @_ZN7libzpaq5ZPAQL3divEj(ptr noundef nonnull align 8 dereferenceable(192) %0, i32 noundef %957)
  br label %1651

958:                                              ; preds = %1
  %959 = load i32, ptr %3, align 8, !tbaa !5
  %960 = add nsw i32 %959, 1
  store i32 %960, ptr %3, align 8, !tbaa !5
  %961 = sext i32 %959 to i64
  %962 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %2, i64 noundef %961)
  %963 = load i8, ptr %962, align 1, !tbaa !15
  %964 = zext i8 %963 to i32
  tail call void @_ZN7libzpaq5ZPAQL3divEj(ptr noundef nonnull align 8 dereferenceable(192) %0, i32 noundef %964)
  br label %1651

965:                                              ; preds = %1
  %966 = getelementptr inbounds i8, ptr %0, i64 156
  %967 = load i32, ptr %966, align 4, !tbaa !16
  tail call void @_ZN7libzpaq5ZPAQL3modEj(ptr noundef nonnull align 8 dereferenceable(192) %0, i32 noundef %967)
  br label %1651

968:                                              ; preds = %1
  %969 = getelementptr inbounds i8, ptr %0, i64 160
  %970 = load i32, ptr %969, align 8, !tbaa !18
  tail call void @_ZN7libzpaq5ZPAQL3modEj(ptr noundef nonnull align 8 dereferenceable(192) %0, i32 noundef %970)
  br label %1651

971:                                              ; preds = %1
  %972 = getelementptr inbounds i8, ptr %0, i64 164
  %973 = load i32, ptr %972, align 4, !tbaa !19
  tail call void @_ZN7libzpaq5ZPAQL3modEj(ptr noundef nonnull align 8 dereferenceable(192) %0, i32 noundef %973)
  br label %1651

974:                                              ; preds = %1
  %975 = getelementptr inbounds i8, ptr %0, i64 168
  %976 = load i32, ptr %975, align 8, !tbaa !20
  tail call void @_ZN7libzpaq5ZPAQL3modEj(ptr noundef nonnull align 8 dereferenceable(192) %0, i32 noundef %976)
  br label %1651

977:                                              ; preds = %1
  %978 = getelementptr inbounds i8, ptr %0, i64 56
  %979 = getelementptr inbounds i8, ptr %0, i64 160
  %980 = load i32, ptr %979, align 8, !tbaa !18
  %981 = zext i32 %980 to i64
  %982 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %978, i64 noundef %981)
  %983 = load i8, ptr %982, align 1, !tbaa !15
  %984 = zext i8 %983 to i32
  tail call void @_ZN7libzpaq5ZPAQL3modEj(ptr noundef nonnull align 8 dereferenceable(192) %0, i32 noundef %984)
  br label %1651

985:                                              ; preds = %1
  %986 = getelementptr inbounds i8, ptr %0, i64 56
  %987 = getelementptr inbounds i8, ptr %0, i64 164
  %988 = load i32, ptr %987, align 4, !tbaa !19
  %989 = zext i32 %988 to i64
  %990 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %986, i64 noundef %989)
  %991 = load i8, ptr %990, align 1, !tbaa !15
  %992 = zext i8 %991 to i32
  tail call void @_ZN7libzpaq5ZPAQL3modEj(ptr noundef nonnull align 8 dereferenceable(192) %0, i32 noundef %992)
  br label %1651

993:                                              ; preds = %1
  %994 = getelementptr inbounds i8, ptr %0, i64 80
  %995 = getelementptr inbounds i8, ptr %0, i64 168
  %996 = load i32, ptr %995, align 8, !tbaa !20
  %997 = zext i32 %996 to i64
  %998 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %994, i64 noundef %997)
  %999 = load i32, ptr %998, align 4, !tbaa !17
  tail call void @_ZN7libzpaq5ZPAQL3modEj(ptr noundef nonnull align 8 dereferenceable(192) %0, i32 noundef %999)
  br label %1651

1000:                                             ; preds = %1
  %1001 = load i32, ptr %3, align 8, !tbaa !5
  %1002 = add nsw i32 %1001, 1
  store i32 %1002, ptr %3, align 8, !tbaa !5
  %1003 = sext i32 %1001 to i64
  %1004 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %2, i64 noundef %1003)
  %1005 = load i8, ptr %1004, align 1, !tbaa !15
  %1006 = zext i8 %1005 to i32
  tail call void @_ZN7libzpaq5ZPAQL3modEj(ptr noundef nonnull align 8 dereferenceable(192) %0, i32 noundef %1006)
  br label %1651

1007:                                             ; preds = %1
  %1008 = getelementptr inbounds i8, ptr %0, i64 160
  %1009 = load i32, ptr %1008, align 8, !tbaa !18
  %1010 = getelementptr inbounds i8, ptr %0, i64 156
  %1011 = load i32, ptr %1010, align 4, !tbaa !16
  %1012 = and i32 %1011, %1009
  store i32 %1012, ptr %1010, align 4, !tbaa !16
  br label %1651

1013:                                             ; preds = %1
  %1014 = getelementptr inbounds i8, ptr %0, i64 164
  %1015 = load i32, ptr %1014, align 4, !tbaa !19
  %1016 = getelementptr inbounds i8, ptr %0, i64 156
  %1017 = load i32, ptr %1016, align 4, !tbaa !16
  %1018 = and i32 %1017, %1015
  store i32 %1018, ptr %1016, align 4, !tbaa !16
  br label %1651

1019:                                             ; preds = %1
  %1020 = getelementptr inbounds i8, ptr %0, i64 168
  %1021 = load i32, ptr %1020, align 8, !tbaa !20
  %1022 = getelementptr inbounds i8, ptr %0, i64 156
  %1023 = load i32, ptr %1022, align 4, !tbaa !16
  %1024 = and i32 %1023, %1021
  store i32 %1024, ptr %1022, align 4, !tbaa !16
  br label %1651

1025:                                             ; preds = %1
  %1026 = getelementptr inbounds i8, ptr %0, i64 56
  %1027 = getelementptr inbounds i8, ptr %0, i64 160
  %1028 = load i32, ptr %1027, align 8, !tbaa !18
  %1029 = zext i32 %1028 to i64
  %1030 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1026, i64 noundef %1029)
  %1031 = load i8, ptr %1030, align 1, !tbaa !15
  %1032 = zext i8 %1031 to i32
  %1033 = getelementptr inbounds i8, ptr %0, i64 156
  %1034 = load i32, ptr %1033, align 4, !tbaa !16
  %1035 = and i32 %1034, %1032
  store i32 %1035, ptr %1033, align 4, !tbaa !16
  br label %1651

1036:                                             ; preds = %1
  %1037 = getelementptr inbounds i8, ptr %0, i64 56
  %1038 = getelementptr inbounds i8, ptr %0, i64 164
  %1039 = load i32, ptr %1038, align 4, !tbaa !19
  %1040 = zext i32 %1039 to i64
  %1041 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1037, i64 noundef %1040)
  %1042 = load i8, ptr %1041, align 1, !tbaa !15
  %1043 = zext i8 %1042 to i32
  %1044 = getelementptr inbounds i8, ptr %0, i64 156
  %1045 = load i32, ptr %1044, align 4, !tbaa !16
  %1046 = and i32 %1045, %1043
  store i32 %1046, ptr %1044, align 4, !tbaa !16
  br label %1651

1047:                                             ; preds = %1
  %1048 = getelementptr inbounds i8, ptr %0, i64 80
  %1049 = getelementptr inbounds i8, ptr %0, i64 168
  %1050 = load i32, ptr %1049, align 8, !tbaa !20
  %1051 = zext i32 %1050 to i64
  %1052 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1048, i64 noundef %1051)
  %1053 = load i32, ptr %1052, align 4, !tbaa !17
  %1054 = getelementptr inbounds i8, ptr %0, i64 156
  %1055 = load i32, ptr %1054, align 4, !tbaa !16
  %1056 = and i32 %1055, %1053
  store i32 %1056, ptr %1054, align 4, !tbaa !16
  br label %1651

1057:                                             ; preds = %1
  %1058 = load i32, ptr %3, align 8, !tbaa !5
  %1059 = add nsw i32 %1058, 1
  store i32 %1059, ptr %3, align 8, !tbaa !5
  %1060 = sext i32 %1058 to i64
  %1061 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %2, i64 noundef %1060)
  %1062 = load i8, ptr %1061, align 1, !tbaa !15
  %1063 = zext i8 %1062 to i32
  %1064 = getelementptr inbounds i8, ptr %0, i64 156
  %1065 = load i32, ptr %1064, align 4, !tbaa !16
  %1066 = and i32 %1065, %1063
  store i32 %1066, ptr %1064, align 4, !tbaa !16
  br label %1651

1067:                                             ; preds = %1
  %1068 = getelementptr inbounds i8, ptr %0, i64 156
  store i32 0, ptr %1068, align 4, !tbaa !16
  br label %1651

1069:                                             ; preds = %1
  %1070 = getelementptr inbounds i8, ptr %0, i64 160
  %1071 = load i32, ptr %1070, align 8, !tbaa !18
  %1072 = xor i32 %1071, -1
  %1073 = getelementptr inbounds i8, ptr %0, i64 156
  %1074 = load i32, ptr %1073, align 4, !tbaa !16
  %1075 = and i32 %1074, %1072
  store i32 %1075, ptr %1073, align 4, !tbaa !16
  br label %1651

1076:                                             ; preds = %1
  %1077 = getelementptr inbounds i8, ptr %0, i64 164
  %1078 = load i32, ptr %1077, align 4, !tbaa !19
  %1079 = xor i32 %1078, -1
  %1080 = getelementptr inbounds i8, ptr %0, i64 156
  %1081 = load i32, ptr %1080, align 4, !tbaa !16
  %1082 = and i32 %1081, %1079
  store i32 %1082, ptr %1080, align 4, !tbaa !16
  br label %1651

1083:                                             ; preds = %1
  %1084 = getelementptr inbounds i8, ptr %0, i64 168
  %1085 = load i32, ptr %1084, align 8, !tbaa !20
  %1086 = xor i32 %1085, -1
  %1087 = getelementptr inbounds i8, ptr %0, i64 156
  %1088 = load i32, ptr %1087, align 4, !tbaa !16
  %1089 = and i32 %1088, %1086
  store i32 %1089, ptr %1087, align 4, !tbaa !16
  br label %1651

1090:                                             ; preds = %1
  %1091 = getelementptr inbounds i8, ptr %0, i64 56
  %1092 = getelementptr inbounds i8, ptr %0, i64 160
  %1093 = load i32, ptr %1092, align 8, !tbaa !18
  %1094 = zext i32 %1093 to i64
  %1095 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1091, i64 noundef %1094)
  %1096 = load i8, ptr %1095, align 1, !tbaa !15
  %1097 = zext i8 %1096 to i32
  %1098 = xor i32 %1097, -1
  %1099 = getelementptr inbounds i8, ptr %0, i64 156
  %1100 = load i32, ptr %1099, align 4, !tbaa !16
  %1101 = and i32 %1100, %1098
  store i32 %1101, ptr %1099, align 4, !tbaa !16
  br label %1651

1102:                                             ; preds = %1
  %1103 = getelementptr inbounds i8, ptr %0, i64 56
  %1104 = getelementptr inbounds i8, ptr %0, i64 164
  %1105 = load i32, ptr %1104, align 4, !tbaa !19
  %1106 = zext i32 %1105 to i64
  %1107 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1103, i64 noundef %1106)
  %1108 = load i8, ptr %1107, align 1, !tbaa !15
  %1109 = zext i8 %1108 to i32
  %1110 = xor i32 %1109, -1
  %1111 = getelementptr inbounds i8, ptr %0, i64 156
  %1112 = load i32, ptr %1111, align 4, !tbaa !16
  %1113 = and i32 %1112, %1110
  store i32 %1113, ptr %1111, align 4, !tbaa !16
  br label %1651

1114:                                             ; preds = %1
  %1115 = getelementptr inbounds i8, ptr %0, i64 80
  %1116 = getelementptr inbounds i8, ptr %0, i64 168
  %1117 = load i32, ptr %1116, align 8, !tbaa !20
  %1118 = zext i32 %1117 to i64
  %1119 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1115, i64 noundef %1118)
  %1120 = load i32, ptr %1119, align 4, !tbaa !17
  %1121 = xor i32 %1120, -1
  %1122 = getelementptr inbounds i8, ptr %0, i64 156
  %1123 = load i32, ptr %1122, align 4, !tbaa !16
  %1124 = and i32 %1123, %1121
  store i32 %1124, ptr %1122, align 4, !tbaa !16
  br label %1651

1125:                                             ; preds = %1
  %1126 = load i32, ptr %3, align 8, !tbaa !5
  %1127 = add nsw i32 %1126, 1
  store i32 %1127, ptr %3, align 8, !tbaa !5
  %1128 = sext i32 %1126 to i64
  %1129 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %2, i64 noundef %1128)
  %1130 = load i8, ptr %1129, align 1, !tbaa !15
  %1131 = zext i8 %1130 to i32
  %1132 = xor i32 %1131, -1
  %1133 = getelementptr inbounds i8, ptr %0, i64 156
  %1134 = load i32, ptr %1133, align 4, !tbaa !16
  %1135 = and i32 %1134, %1132
  store i32 %1135, ptr %1133, align 4, !tbaa !16
  br label %1651

1136:                                             ; preds = %1
  %1137 = getelementptr inbounds i8, ptr %0, i64 160
  %1138 = load i32, ptr %1137, align 8, !tbaa !18
  %1139 = getelementptr inbounds i8, ptr %0, i64 156
  %1140 = load i32, ptr %1139, align 4, !tbaa !16
  %1141 = or i32 %1140, %1138
  store i32 %1141, ptr %1139, align 4, !tbaa !16
  br label %1651

1142:                                             ; preds = %1
  %1143 = getelementptr inbounds i8, ptr %0, i64 164
  %1144 = load i32, ptr %1143, align 4, !tbaa !19
  %1145 = getelementptr inbounds i8, ptr %0, i64 156
  %1146 = load i32, ptr %1145, align 4, !tbaa !16
  %1147 = or i32 %1146, %1144
  store i32 %1147, ptr %1145, align 4, !tbaa !16
  br label %1651

1148:                                             ; preds = %1
  %1149 = getelementptr inbounds i8, ptr %0, i64 168
  %1150 = load i32, ptr %1149, align 8, !tbaa !20
  %1151 = getelementptr inbounds i8, ptr %0, i64 156
  %1152 = load i32, ptr %1151, align 4, !tbaa !16
  %1153 = or i32 %1152, %1150
  store i32 %1153, ptr %1151, align 4, !tbaa !16
  br label %1651

1154:                                             ; preds = %1
  %1155 = getelementptr inbounds i8, ptr %0, i64 56
  %1156 = getelementptr inbounds i8, ptr %0, i64 160
  %1157 = load i32, ptr %1156, align 8, !tbaa !18
  %1158 = zext i32 %1157 to i64
  %1159 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1155, i64 noundef %1158)
  %1160 = load i8, ptr %1159, align 1, !tbaa !15
  %1161 = zext i8 %1160 to i32
  %1162 = getelementptr inbounds i8, ptr %0, i64 156
  %1163 = load i32, ptr %1162, align 4, !tbaa !16
  %1164 = or i32 %1163, %1161
  store i32 %1164, ptr %1162, align 4, !tbaa !16
  br label %1651

1165:                                             ; preds = %1
  %1166 = getelementptr inbounds i8, ptr %0, i64 56
  %1167 = getelementptr inbounds i8, ptr %0, i64 164
  %1168 = load i32, ptr %1167, align 4, !tbaa !19
  %1169 = zext i32 %1168 to i64
  %1170 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1166, i64 noundef %1169)
  %1171 = load i8, ptr %1170, align 1, !tbaa !15
  %1172 = zext i8 %1171 to i32
  %1173 = getelementptr inbounds i8, ptr %0, i64 156
  %1174 = load i32, ptr %1173, align 4, !tbaa !16
  %1175 = or i32 %1174, %1172
  store i32 %1175, ptr %1173, align 4, !tbaa !16
  br label %1651

1176:                                             ; preds = %1
  %1177 = getelementptr inbounds i8, ptr %0, i64 80
  %1178 = getelementptr inbounds i8, ptr %0, i64 168
  %1179 = load i32, ptr %1178, align 8, !tbaa !20
  %1180 = zext i32 %1179 to i64
  %1181 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1177, i64 noundef %1180)
  %1182 = load i32, ptr %1181, align 4, !tbaa !17
  %1183 = getelementptr inbounds i8, ptr %0, i64 156
  %1184 = load i32, ptr %1183, align 4, !tbaa !16
  %1185 = or i32 %1184, %1182
  store i32 %1185, ptr %1183, align 4, !tbaa !16
  br label %1651

1186:                                             ; preds = %1
  %1187 = load i32, ptr %3, align 8, !tbaa !5
  %1188 = add nsw i32 %1187, 1
  store i32 %1188, ptr %3, align 8, !tbaa !5
  %1189 = sext i32 %1187 to i64
  %1190 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %2, i64 noundef %1189)
  %1191 = load i8, ptr %1190, align 1, !tbaa !15
  %1192 = zext i8 %1191 to i32
  %1193 = getelementptr inbounds i8, ptr %0, i64 156
  %1194 = load i32, ptr %1193, align 4, !tbaa !16
  %1195 = or i32 %1194, %1192
  store i32 %1195, ptr %1193, align 4, !tbaa !16
  br label %1651

1196:                                             ; preds = %1
  %1197 = getelementptr inbounds i8, ptr %0, i64 156
  store i32 0, ptr %1197, align 4, !tbaa !16
  br label %1651

1198:                                             ; preds = %1
  %1199 = getelementptr inbounds i8, ptr %0, i64 160
  %1200 = load i32, ptr %1199, align 8, !tbaa !18
  %1201 = getelementptr inbounds i8, ptr %0, i64 156
  %1202 = load i32, ptr %1201, align 4, !tbaa !16
  %1203 = xor i32 %1202, %1200
  store i32 %1203, ptr %1201, align 4, !tbaa !16
  br label %1651

1204:                                             ; preds = %1
  %1205 = getelementptr inbounds i8, ptr %0, i64 164
  %1206 = load i32, ptr %1205, align 4, !tbaa !19
  %1207 = getelementptr inbounds i8, ptr %0, i64 156
  %1208 = load i32, ptr %1207, align 4, !tbaa !16
  %1209 = xor i32 %1208, %1206
  store i32 %1209, ptr %1207, align 4, !tbaa !16
  br label %1651

1210:                                             ; preds = %1
  %1211 = getelementptr inbounds i8, ptr %0, i64 168
  %1212 = load i32, ptr %1211, align 8, !tbaa !20
  %1213 = getelementptr inbounds i8, ptr %0, i64 156
  %1214 = load i32, ptr %1213, align 4, !tbaa !16
  %1215 = xor i32 %1214, %1212
  store i32 %1215, ptr %1213, align 4, !tbaa !16
  br label %1651

1216:                                             ; preds = %1
  %1217 = getelementptr inbounds i8, ptr %0, i64 56
  %1218 = getelementptr inbounds i8, ptr %0, i64 160
  %1219 = load i32, ptr %1218, align 8, !tbaa !18
  %1220 = zext i32 %1219 to i64
  %1221 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1217, i64 noundef %1220)
  %1222 = load i8, ptr %1221, align 1, !tbaa !15
  %1223 = zext i8 %1222 to i32
  %1224 = getelementptr inbounds i8, ptr %0, i64 156
  %1225 = load i32, ptr %1224, align 4, !tbaa !16
  %1226 = xor i32 %1225, %1223
  store i32 %1226, ptr %1224, align 4, !tbaa !16
  br label %1651

1227:                                             ; preds = %1
  %1228 = getelementptr inbounds i8, ptr %0, i64 56
  %1229 = getelementptr inbounds i8, ptr %0, i64 164
  %1230 = load i32, ptr %1229, align 4, !tbaa !19
  %1231 = zext i32 %1230 to i64
  %1232 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1228, i64 noundef %1231)
  %1233 = load i8, ptr %1232, align 1, !tbaa !15
  %1234 = zext i8 %1233 to i32
  %1235 = getelementptr inbounds i8, ptr %0, i64 156
  %1236 = load i32, ptr %1235, align 4, !tbaa !16
  %1237 = xor i32 %1236, %1234
  store i32 %1237, ptr %1235, align 4, !tbaa !16
  br label %1651

1238:                                             ; preds = %1
  %1239 = getelementptr inbounds i8, ptr %0, i64 80
  %1240 = getelementptr inbounds i8, ptr %0, i64 168
  %1241 = load i32, ptr %1240, align 8, !tbaa !20
  %1242 = zext i32 %1241 to i64
  %1243 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1239, i64 noundef %1242)
  %1244 = load i32, ptr %1243, align 4, !tbaa !17
  %1245 = getelementptr inbounds i8, ptr %0, i64 156
  %1246 = load i32, ptr %1245, align 4, !tbaa !16
  %1247 = xor i32 %1246, %1244
  store i32 %1247, ptr %1245, align 4, !tbaa !16
  br label %1651

1248:                                             ; preds = %1
  %1249 = load i32, ptr %3, align 8, !tbaa !5
  %1250 = add nsw i32 %1249, 1
  store i32 %1250, ptr %3, align 8, !tbaa !5
  %1251 = sext i32 %1249 to i64
  %1252 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %2, i64 noundef %1251)
  %1253 = load i8, ptr %1252, align 1, !tbaa !15
  %1254 = zext i8 %1253 to i32
  %1255 = getelementptr inbounds i8, ptr %0, i64 156
  %1256 = load i32, ptr %1255, align 4, !tbaa !16
  %1257 = xor i32 %1256, %1254
  store i32 %1257, ptr %1255, align 4, !tbaa !16
  br label %1651

1258:                                             ; preds = %1
  %1259 = getelementptr inbounds i8, ptr %0, i64 156
  %1260 = load i32, ptr %1259, align 4, !tbaa !16
  %1261 = and i32 %1260, 31
  %1262 = shl i32 %1260, %1261
  store i32 %1262, ptr %1259, align 4, !tbaa !16
  br label %1651

1263:                                             ; preds = %1
  %1264 = getelementptr inbounds i8, ptr %0, i64 160
  %1265 = load i32, ptr %1264, align 8, !tbaa !18
  %1266 = and i32 %1265, 31
  %1267 = getelementptr inbounds i8, ptr %0, i64 156
  %1268 = load i32, ptr %1267, align 4, !tbaa !16
  %1269 = shl i32 %1268, %1266
  store i32 %1269, ptr %1267, align 4, !tbaa !16
  br label %1651

1270:                                             ; preds = %1
  %1271 = getelementptr inbounds i8, ptr %0, i64 164
  %1272 = load i32, ptr %1271, align 4, !tbaa !19
  %1273 = and i32 %1272, 31
  %1274 = getelementptr inbounds i8, ptr %0, i64 156
  %1275 = load i32, ptr %1274, align 4, !tbaa !16
  %1276 = shl i32 %1275, %1273
  store i32 %1276, ptr %1274, align 4, !tbaa !16
  br label %1651

1277:                                             ; preds = %1
  %1278 = getelementptr inbounds i8, ptr %0, i64 168
  %1279 = load i32, ptr %1278, align 8, !tbaa !20
  %1280 = and i32 %1279, 31
  %1281 = getelementptr inbounds i8, ptr %0, i64 156
  %1282 = load i32, ptr %1281, align 4, !tbaa !16
  %1283 = shl i32 %1282, %1280
  store i32 %1283, ptr %1281, align 4, !tbaa !16
  br label %1651

1284:                                             ; preds = %1
  %1285 = getelementptr inbounds i8, ptr %0, i64 56
  %1286 = getelementptr inbounds i8, ptr %0, i64 160
  %1287 = load i32, ptr %1286, align 8, !tbaa !18
  %1288 = zext i32 %1287 to i64
  %1289 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1285, i64 noundef %1288)
  %1290 = load i8, ptr %1289, align 1, !tbaa !15
  %1291 = and i8 %1290, 31
  %1292 = zext nneg i8 %1291 to i32
  %1293 = getelementptr inbounds i8, ptr %0, i64 156
  %1294 = load i32, ptr %1293, align 4, !tbaa !16
  %1295 = shl i32 %1294, %1292
  store i32 %1295, ptr %1293, align 4, !tbaa !16
  br label %1651

1296:                                             ; preds = %1
  %1297 = getelementptr inbounds i8, ptr %0, i64 56
  %1298 = getelementptr inbounds i8, ptr %0, i64 164
  %1299 = load i32, ptr %1298, align 4, !tbaa !19
  %1300 = zext i32 %1299 to i64
  %1301 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1297, i64 noundef %1300)
  %1302 = load i8, ptr %1301, align 1, !tbaa !15
  %1303 = and i8 %1302, 31
  %1304 = zext nneg i8 %1303 to i32
  %1305 = getelementptr inbounds i8, ptr %0, i64 156
  %1306 = load i32, ptr %1305, align 4, !tbaa !16
  %1307 = shl i32 %1306, %1304
  store i32 %1307, ptr %1305, align 4, !tbaa !16
  br label %1651

1308:                                             ; preds = %1
  %1309 = getelementptr inbounds i8, ptr %0, i64 80
  %1310 = getelementptr inbounds i8, ptr %0, i64 168
  %1311 = load i32, ptr %1310, align 8, !tbaa !20
  %1312 = zext i32 %1311 to i64
  %1313 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1309, i64 noundef %1312)
  %1314 = load i32, ptr %1313, align 4, !tbaa !17
  %1315 = and i32 %1314, 31
  %1316 = getelementptr inbounds i8, ptr %0, i64 156
  %1317 = load i32, ptr %1316, align 4, !tbaa !16
  %1318 = shl i32 %1317, %1315
  store i32 %1318, ptr %1316, align 4, !tbaa !16
  br label %1651

1319:                                             ; preds = %1
  %1320 = load i32, ptr %3, align 8, !tbaa !5
  %1321 = add nsw i32 %1320, 1
  store i32 %1321, ptr %3, align 8, !tbaa !5
  %1322 = sext i32 %1320 to i64
  %1323 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %2, i64 noundef %1322)
  %1324 = load i8, ptr %1323, align 1, !tbaa !15
  %1325 = and i8 %1324, 31
  %1326 = zext nneg i8 %1325 to i32
  %1327 = getelementptr inbounds i8, ptr %0, i64 156
  %1328 = load i32, ptr %1327, align 4, !tbaa !16
  %1329 = shl i32 %1328, %1326
  store i32 %1329, ptr %1327, align 4, !tbaa !16
  br label %1651

1330:                                             ; preds = %1
  %1331 = getelementptr inbounds i8, ptr %0, i64 156
  %1332 = load i32, ptr %1331, align 4, !tbaa !16
  %1333 = and i32 %1332, 31
  %1334 = lshr i32 %1332, %1333
  store i32 %1334, ptr %1331, align 4, !tbaa !16
  br label %1651

1335:                                             ; preds = %1
  %1336 = getelementptr inbounds i8, ptr %0, i64 160
  %1337 = load i32, ptr %1336, align 8, !tbaa !18
  %1338 = and i32 %1337, 31
  %1339 = getelementptr inbounds i8, ptr %0, i64 156
  %1340 = load i32, ptr %1339, align 4, !tbaa !16
  %1341 = lshr i32 %1340, %1338
  store i32 %1341, ptr %1339, align 4, !tbaa !16
  br label %1651

1342:                                             ; preds = %1
  %1343 = getelementptr inbounds i8, ptr %0, i64 164
  %1344 = load i32, ptr %1343, align 4, !tbaa !19
  %1345 = and i32 %1344, 31
  %1346 = getelementptr inbounds i8, ptr %0, i64 156
  %1347 = load i32, ptr %1346, align 4, !tbaa !16
  %1348 = lshr i32 %1347, %1345
  store i32 %1348, ptr %1346, align 4, !tbaa !16
  br label %1651

1349:                                             ; preds = %1
  %1350 = getelementptr inbounds i8, ptr %0, i64 168
  %1351 = load i32, ptr %1350, align 8, !tbaa !20
  %1352 = and i32 %1351, 31
  %1353 = getelementptr inbounds i8, ptr %0, i64 156
  %1354 = load i32, ptr %1353, align 4, !tbaa !16
  %1355 = lshr i32 %1354, %1352
  store i32 %1355, ptr %1353, align 4, !tbaa !16
  br label %1651

1356:                                             ; preds = %1
  %1357 = getelementptr inbounds i8, ptr %0, i64 56
  %1358 = getelementptr inbounds i8, ptr %0, i64 160
  %1359 = load i32, ptr %1358, align 8, !tbaa !18
  %1360 = zext i32 %1359 to i64
  %1361 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1357, i64 noundef %1360)
  %1362 = load i8, ptr %1361, align 1, !tbaa !15
  %1363 = and i8 %1362, 31
  %1364 = zext nneg i8 %1363 to i32
  %1365 = getelementptr inbounds i8, ptr %0, i64 156
  %1366 = load i32, ptr %1365, align 4, !tbaa !16
  %1367 = lshr i32 %1366, %1364
  store i32 %1367, ptr %1365, align 4, !tbaa !16
  br label %1651

1368:                                             ; preds = %1
  %1369 = getelementptr inbounds i8, ptr %0, i64 56
  %1370 = getelementptr inbounds i8, ptr %0, i64 164
  %1371 = load i32, ptr %1370, align 4, !tbaa !19
  %1372 = zext i32 %1371 to i64
  %1373 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1369, i64 noundef %1372)
  %1374 = load i8, ptr %1373, align 1, !tbaa !15
  %1375 = and i8 %1374, 31
  %1376 = zext nneg i8 %1375 to i32
  %1377 = getelementptr inbounds i8, ptr %0, i64 156
  %1378 = load i32, ptr %1377, align 4, !tbaa !16
  %1379 = lshr i32 %1378, %1376
  store i32 %1379, ptr %1377, align 4, !tbaa !16
  br label %1651

1380:                                             ; preds = %1
  %1381 = getelementptr inbounds i8, ptr %0, i64 80
  %1382 = getelementptr inbounds i8, ptr %0, i64 168
  %1383 = load i32, ptr %1382, align 8, !tbaa !20
  %1384 = zext i32 %1383 to i64
  %1385 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1381, i64 noundef %1384)
  %1386 = load i32, ptr %1385, align 4, !tbaa !17
  %1387 = and i32 %1386, 31
  %1388 = getelementptr inbounds i8, ptr %0, i64 156
  %1389 = load i32, ptr %1388, align 4, !tbaa !16
  %1390 = lshr i32 %1389, %1387
  store i32 %1390, ptr %1388, align 4, !tbaa !16
  br label %1651

1391:                                             ; preds = %1
  %1392 = load i32, ptr %3, align 8, !tbaa !5
  %1393 = add nsw i32 %1392, 1
  store i32 %1393, ptr %3, align 8, !tbaa !5
  %1394 = sext i32 %1392 to i64
  %1395 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %2, i64 noundef %1394)
  %1396 = load i8, ptr %1395, align 1, !tbaa !15
  %1397 = and i8 %1396, 31
  %1398 = zext nneg i8 %1397 to i32
  %1399 = getelementptr inbounds i8, ptr %0, i64 156
  %1400 = load i32, ptr %1399, align 4, !tbaa !16
  %1401 = lshr i32 %1400, %1398
  store i32 %1401, ptr %1399, align 4, !tbaa !16
  br label %1651

1402:                                             ; preds = %1
  %1403 = getelementptr inbounds i8, ptr %0, i64 172
  store i32 1, ptr %1403, align 4, !tbaa !21
  br label %1651

1404:                                             ; preds = %1
  %1405 = getelementptr inbounds i8, ptr %0, i64 156
  %1406 = load i32, ptr %1405, align 4, !tbaa !16
  %1407 = getelementptr inbounds i8, ptr %0, i64 160
  %1408 = load i32, ptr %1407, align 8, !tbaa !18
  %1409 = icmp eq i32 %1406, %1408
  %1410 = zext i1 %1409 to i32
  %1411 = getelementptr inbounds i8, ptr %0, i64 172
  store i32 %1410, ptr %1411, align 4, !tbaa !21
  br label %1651

1412:                                             ; preds = %1
  %1413 = getelementptr inbounds i8, ptr %0, i64 156
  %1414 = load i32, ptr %1413, align 4, !tbaa !16
  %1415 = getelementptr inbounds i8, ptr %0, i64 164
  %1416 = load i32, ptr %1415, align 4, !tbaa !19
  %1417 = icmp eq i32 %1414, %1416
  %1418 = zext i1 %1417 to i32
  %1419 = getelementptr inbounds i8, ptr %0, i64 172
  store i32 %1418, ptr %1419, align 4, !tbaa !21
  br label %1651

1420:                                             ; preds = %1
  %1421 = getelementptr inbounds i8, ptr %0, i64 156
  %1422 = load i32, ptr %1421, align 4, !tbaa !16
  %1423 = getelementptr inbounds i8, ptr %0, i64 168
  %1424 = load i32, ptr %1423, align 8, !tbaa !20
  %1425 = icmp eq i32 %1422, %1424
  %1426 = zext i1 %1425 to i32
  %1427 = getelementptr inbounds i8, ptr %0, i64 172
  store i32 %1426, ptr %1427, align 4, !tbaa !21
  br label %1651

1428:                                             ; preds = %1
  %1429 = getelementptr inbounds i8, ptr %0, i64 156
  %1430 = load i32, ptr %1429, align 4, !tbaa !16
  %1431 = getelementptr inbounds i8, ptr %0, i64 56
  %1432 = getelementptr inbounds i8, ptr %0, i64 160
  %1433 = load i32, ptr %1432, align 8, !tbaa !18
  %1434 = zext i32 %1433 to i64
  %1435 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1431, i64 noundef %1434)
  %1436 = load i8, ptr %1435, align 1, !tbaa !15
  %1437 = zext i8 %1436 to i32
  %1438 = icmp eq i32 %1430, %1437
  %1439 = zext i1 %1438 to i32
  %1440 = getelementptr inbounds i8, ptr %0, i64 172
  store i32 %1439, ptr %1440, align 4, !tbaa !21
  br label %1651

1441:                                             ; preds = %1
  %1442 = getelementptr inbounds i8, ptr %0, i64 156
  %1443 = load i32, ptr %1442, align 4, !tbaa !16
  %1444 = getelementptr inbounds i8, ptr %0, i64 56
  %1445 = getelementptr inbounds i8, ptr %0, i64 164
  %1446 = load i32, ptr %1445, align 4, !tbaa !19
  %1447 = zext i32 %1446 to i64
  %1448 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1444, i64 noundef %1447)
  %1449 = load i8, ptr %1448, align 1, !tbaa !15
  %1450 = zext i8 %1449 to i32
  %1451 = icmp eq i32 %1443, %1450
  %1452 = zext i1 %1451 to i32
  %1453 = getelementptr inbounds i8, ptr %0, i64 172
  store i32 %1452, ptr %1453, align 4, !tbaa !21
  br label %1651

1454:                                             ; preds = %1
  %1455 = getelementptr inbounds i8, ptr %0, i64 156
  %1456 = load i32, ptr %1455, align 4, !tbaa !16
  %1457 = getelementptr inbounds i8, ptr %0, i64 80
  %1458 = getelementptr inbounds i8, ptr %0, i64 168
  %1459 = load i32, ptr %1458, align 8, !tbaa !20
  %1460 = zext i32 %1459 to i64
  %1461 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1457, i64 noundef %1460)
  %1462 = load i32, ptr %1461, align 4, !tbaa !17
  %1463 = icmp eq i32 %1456, %1462
  %1464 = zext i1 %1463 to i32
  %1465 = getelementptr inbounds i8, ptr %0, i64 172
  store i32 %1464, ptr %1465, align 4, !tbaa !21
  br label %1651

1466:                                             ; preds = %1
  %1467 = getelementptr inbounds i8, ptr %0, i64 156
  %1468 = load i32, ptr %1467, align 4, !tbaa !16
  %1469 = load i32, ptr %3, align 8, !tbaa !5
  %1470 = add nsw i32 %1469, 1
  store i32 %1470, ptr %3, align 8, !tbaa !5
  %1471 = sext i32 %1469 to i64
  %1472 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %2, i64 noundef %1471)
  %1473 = load i8, ptr %1472, align 1, !tbaa !15
  %1474 = zext i8 %1473 to i32
  %1475 = icmp eq i32 %1468, %1474
  %1476 = zext i1 %1475 to i32
  %1477 = getelementptr inbounds i8, ptr %0, i64 172
  store i32 %1476, ptr %1477, align 4, !tbaa !21
  br label %1651

1478:                                             ; preds = %1
  %1479 = getelementptr inbounds i8, ptr %0, i64 172
  store i32 0, ptr %1479, align 4, !tbaa !21
  br label %1651

1480:                                             ; preds = %1
  %1481 = getelementptr inbounds i8, ptr %0, i64 156
  %1482 = load i32, ptr %1481, align 4, !tbaa !16
  %1483 = getelementptr inbounds i8, ptr %0, i64 160
  %1484 = load i32, ptr %1483, align 8, !tbaa !18
  %1485 = icmp ult i32 %1482, %1484
  %1486 = zext i1 %1485 to i32
  %1487 = getelementptr inbounds i8, ptr %0, i64 172
  store i32 %1486, ptr %1487, align 4, !tbaa !21
  br label %1651

1488:                                             ; preds = %1
  %1489 = getelementptr inbounds i8, ptr %0, i64 156
  %1490 = load i32, ptr %1489, align 4, !tbaa !16
  %1491 = getelementptr inbounds i8, ptr %0, i64 164
  %1492 = load i32, ptr %1491, align 4, !tbaa !19
  %1493 = icmp ult i32 %1490, %1492
  %1494 = zext i1 %1493 to i32
  %1495 = getelementptr inbounds i8, ptr %0, i64 172
  store i32 %1494, ptr %1495, align 4, !tbaa !21
  br label %1651

1496:                                             ; preds = %1
  %1497 = getelementptr inbounds i8, ptr %0, i64 156
  %1498 = load i32, ptr %1497, align 4, !tbaa !16
  %1499 = getelementptr inbounds i8, ptr %0, i64 168
  %1500 = load i32, ptr %1499, align 8, !tbaa !20
  %1501 = icmp ult i32 %1498, %1500
  %1502 = zext i1 %1501 to i32
  %1503 = getelementptr inbounds i8, ptr %0, i64 172
  store i32 %1502, ptr %1503, align 4, !tbaa !21
  br label %1651

1504:                                             ; preds = %1
  %1505 = getelementptr inbounds i8, ptr %0, i64 156
  %1506 = load i32, ptr %1505, align 4, !tbaa !16
  %1507 = getelementptr inbounds i8, ptr %0, i64 56
  %1508 = getelementptr inbounds i8, ptr %0, i64 160
  %1509 = load i32, ptr %1508, align 8, !tbaa !18
  %1510 = zext i32 %1509 to i64
  %1511 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1507, i64 noundef %1510)
  %1512 = load i8, ptr %1511, align 1, !tbaa !15
  %1513 = zext i8 %1512 to i32
  %1514 = icmp ult i32 %1506, %1513
  %1515 = zext i1 %1514 to i32
  %1516 = getelementptr inbounds i8, ptr %0, i64 172
  store i32 %1515, ptr %1516, align 4, !tbaa !21
  br label %1651

1517:                                             ; preds = %1
  %1518 = getelementptr inbounds i8, ptr %0, i64 156
  %1519 = load i32, ptr %1518, align 4, !tbaa !16
  %1520 = getelementptr inbounds i8, ptr %0, i64 56
  %1521 = getelementptr inbounds i8, ptr %0, i64 164
  %1522 = load i32, ptr %1521, align 4, !tbaa !19
  %1523 = zext i32 %1522 to i64
  %1524 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1520, i64 noundef %1523)
  %1525 = load i8, ptr %1524, align 1, !tbaa !15
  %1526 = zext i8 %1525 to i32
  %1527 = icmp ult i32 %1519, %1526
  %1528 = zext i1 %1527 to i32
  %1529 = getelementptr inbounds i8, ptr %0, i64 172
  store i32 %1528, ptr %1529, align 4, !tbaa !21
  br label %1651

1530:                                             ; preds = %1
  %1531 = getelementptr inbounds i8, ptr %0, i64 156
  %1532 = load i32, ptr %1531, align 4, !tbaa !16
  %1533 = getelementptr inbounds i8, ptr %0, i64 80
  %1534 = getelementptr inbounds i8, ptr %0, i64 168
  %1535 = load i32, ptr %1534, align 8, !tbaa !20
  %1536 = zext i32 %1535 to i64
  %1537 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1533, i64 noundef %1536)
  %1538 = load i32, ptr %1537, align 4, !tbaa !17
  %1539 = icmp ult i32 %1532, %1538
  %1540 = zext i1 %1539 to i32
  %1541 = getelementptr inbounds i8, ptr %0, i64 172
  store i32 %1540, ptr %1541, align 4, !tbaa !21
  br label %1651

1542:                                             ; preds = %1
  %1543 = getelementptr inbounds i8, ptr %0, i64 156
  %1544 = load i32, ptr %1543, align 4, !tbaa !16
  %1545 = load i32, ptr %3, align 8, !tbaa !5
  %1546 = add nsw i32 %1545, 1
  store i32 %1546, ptr %3, align 8, !tbaa !5
  %1547 = sext i32 %1545 to i64
  %1548 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %2, i64 noundef %1547)
  %1549 = load i8, ptr %1548, align 1, !tbaa !15
  %1550 = zext i8 %1549 to i32
  %1551 = icmp ult i32 %1544, %1550
  %1552 = zext i1 %1551 to i32
  %1553 = getelementptr inbounds i8, ptr %0, i64 172
  store i32 %1552, ptr %1553, align 4, !tbaa !21
  br label %1651

1554:                                             ; preds = %1
  %1555 = getelementptr inbounds i8, ptr %0, i64 172
  store i32 0, ptr %1555, align 4, !tbaa !21
  br label %1651

1556:                                             ; preds = %1
  %1557 = getelementptr inbounds i8, ptr %0, i64 156
  %1558 = load i32, ptr %1557, align 4, !tbaa !16
  %1559 = getelementptr inbounds i8, ptr %0, i64 160
  %1560 = load i32, ptr %1559, align 8, !tbaa !18
  %1561 = icmp ugt i32 %1558, %1560
  %1562 = zext i1 %1561 to i32
  %1563 = getelementptr inbounds i8, ptr %0, i64 172
  store i32 %1562, ptr %1563, align 4, !tbaa !21
  br label %1651

1564:                                             ; preds = %1
  %1565 = getelementptr inbounds i8, ptr %0, i64 156
  %1566 = load i32, ptr %1565, align 4, !tbaa !16
  %1567 = getelementptr inbounds i8, ptr %0, i64 164
  %1568 = load i32, ptr %1567, align 4, !tbaa !19
  %1569 = icmp ugt i32 %1566, %1568
  %1570 = zext i1 %1569 to i32
  %1571 = getelementptr inbounds i8, ptr %0, i64 172
  store i32 %1570, ptr %1571, align 4, !tbaa !21
  br label %1651

1572:                                             ; preds = %1
  %1573 = getelementptr inbounds i8, ptr %0, i64 156
  %1574 = load i32, ptr %1573, align 4, !tbaa !16
  %1575 = getelementptr inbounds i8, ptr %0, i64 168
  %1576 = load i32, ptr %1575, align 8, !tbaa !20
  %1577 = icmp ugt i32 %1574, %1576
  %1578 = zext i1 %1577 to i32
  %1579 = getelementptr inbounds i8, ptr %0, i64 172
  store i32 %1578, ptr %1579, align 4, !tbaa !21
  br label %1651

1580:                                             ; preds = %1
  %1581 = getelementptr inbounds i8, ptr %0, i64 156
  %1582 = load i32, ptr %1581, align 4, !tbaa !16
  %1583 = getelementptr inbounds i8, ptr %0, i64 56
  %1584 = getelementptr inbounds i8, ptr %0, i64 160
  %1585 = load i32, ptr %1584, align 8, !tbaa !18
  %1586 = zext i32 %1585 to i64
  %1587 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1583, i64 noundef %1586)
  %1588 = load i8, ptr %1587, align 1, !tbaa !15
  %1589 = zext i8 %1588 to i32
  %1590 = icmp ugt i32 %1582, %1589
  %1591 = zext i1 %1590 to i32
  %1592 = getelementptr inbounds i8, ptr %0, i64 172
  store i32 %1591, ptr %1592, align 4, !tbaa !21
  br label %1651

1593:                                             ; preds = %1
  %1594 = getelementptr inbounds i8, ptr %0, i64 156
  %1595 = load i32, ptr %1594, align 4, !tbaa !16
  %1596 = getelementptr inbounds i8, ptr %0, i64 56
  %1597 = getelementptr inbounds i8, ptr %0, i64 164
  %1598 = load i32, ptr %1597, align 4, !tbaa !19
  %1599 = zext i32 %1598 to i64
  %1600 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1596, i64 noundef %1599)
  %1601 = load i8, ptr %1600, align 1, !tbaa !15
  %1602 = zext i8 %1601 to i32
  %1603 = icmp ugt i32 %1595, %1602
  %1604 = zext i1 %1603 to i32
  %1605 = getelementptr inbounds i8, ptr %0, i64 172
  store i32 %1604, ptr %1605, align 4, !tbaa !21
  br label %1651

1606:                                             ; preds = %1
  %1607 = getelementptr inbounds i8, ptr %0, i64 156
  %1608 = load i32, ptr %1607, align 4, !tbaa !16
  %1609 = getelementptr inbounds i8, ptr %0, i64 80
  %1610 = getelementptr inbounds i8, ptr %0, i64 168
  %1611 = load i32, ptr %1610, align 8, !tbaa !20
  %1612 = zext i32 %1611 to i64
  %1613 = tail call noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20) %1609, i64 noundef %1612)
  %1614 = load i32, ptr %1613, align 4, !tbaa !17
  %1615 = icmp ugt i32 %1608, %1614
  %1616 = zext i1 %1615 to i32
  %1617 = getelementptr inbounds i8, ptr %0, i64 172
  store i32 %1616, ptr %1617, align 4, !tbaa !21
  br label %1651

1618:                                             ; preds = %1
  %1619 = getelementptr inbounds i8, ptr %0, i64 156
  %1620 = load i32, ptr %1619, align 4, !tbaa !16
  %1621 = load i32, ptr %3, align 8, !tbaa !5
  %1622 = add nsw i32 %1621, 1
  store i32 %1622, ptr %3, align 8, !tbaa !5
  %1623 = sext i32 %1621 to i64
  %1624 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %2, i64 noundef %1623)
  %1625 = load i8, ptr %1624, align 1, !tbaa !15
  %1626 = zext i8 %1625 to i32
  %1627 = icmp ugt i32 %1620, %1626
  %1628 = zext i1 %1627 to i32
  %1629 = getelementptr inbounds i8, ptr %0, i64 172
  store i32 %1628, ptr %1629, align 4, !tbaa !21
  br label %1651

1630:                                             ; preds = %1
  %1631 = getelementptr inbounds i8, ptr %0, i64 44
  %1632 = load i32, ptr %1631, align 4, !tbaa !22
  %1633 = load i32, ptr %3, align 8, !tbaa !5
  %1634 = sext i32 %1633 to i64
  %1635 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %2, i64 noundef %1634)
  %1636 = load i8, ptr %1635, align 1, !tbaa !15
  %1637 = zext i8 %1636 to i32
  %1638 = add nsw i32 %1632, %1637
  %1639 = load i32, ptr %3, align 8, !tbaa !5
  %1640 = add nsw i32 %1639, 1
  %1641 = sext i32 %1640 to i64
  %1642 = tail call noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEixEm(ptr noundef nonnull align 8 dereferenceable(20) %2, i64 noundef %1641)
  %1643 = load i8, ptr %1642, align 1, !tbaa !15
  %1644 = zext i8 %1643 to i32
  %1645 = shl nuw nsw i32 %1644, 8
  %1646 = add nsw i32 %1638, %1645
  store i32 %1646, ptr %3, align 8, !tbaa !5
  %1647 = getelementptr inbounds i8, ptr %0, i64 48
  %1648 = load i32, ptr %1647, align 8, !tbaa !23
  %.not = icmp slt i32 %1646, %1648
  br i1 %.not, label %1651, label %1649

1649:                                             ; preds = %1630
  tail call void @_ZN7libzpaq5ZPAQL3errEv(ptr noundef nonnull align 8 dereferenceable(192) %0)
  br label %1651

1650:                                             ; preds = %1
  tail call void @_ZN7libzpaq5ZPAQL3errEv(ptr noundef nonnull align 8 dereferenceable(192) %0)
  br label %1651

1651:                                             ; preds = %1, %1, %1, %1, %1, %1, %1630, %1649, %213, %222, %159, %168, %1650, %1618, %1606, %1593, %1580, %1572, %1564, %1556, %1554, %1542, %1530, %1517, %1504, %1496, %1488, %1480, %1478, %1466, %1454, %1441, %1428, %1420, %1412, %1404, %1402, %1391, %1380, %1368, %1356, %1349, %1342, %1335, %1330, %1319, %1308, %1296, %1284, %1277, %1270, %1263, %1258, %1248, %1238, %1227, %1216, %1210, %1204, %1198, %1196, %1186, %1176, %1165, %1154, %1148, %1142, %1136, %1125, %1114, %1102, %1090, %1083, %1076, %1069, %1067, %1057, %1047, %1036, %1025, %1019, %1013, %1007, %1000, %993, %985, %977, %974, %971, %968, %965, %958, %951, %943, %935, %932, %929, %926, %923, %913, %903, %892, %881, %875, %869, %863, %859, %849, %839, %828, %817, %811, %805, %799, %797, %787, %777, %766, %755, %749, %743, %737, %733, %721, %711, %698, %685, %679, %671, %663, %655, %644, %631, %621, %610, %601, %594, %585, %576, %565, %552, %541, %531, %522, %513, %506, %497, %489, %482, %473, %464, %460, %456, %452, %444, %436, %428, %419, %415, %411, %407, %399, %391, %382, %374, %370, %366, %362, %354, %346, %337, %328, %324, %320, %316, %306, %291, %278, %274, %263, %257, %246, %238, %230, %224, %203, %192, %184, %176, %170, %149, %138, %130, %122, %116, %105, %103, %99, %95, %91, %89, %78, %76, %72, %68, %64, %62, %51, %49, %45, %41, %37, %35, %24, %22, %18, %14, %10, %9
  br label %1652

1652:                                             ; preds = %1, %1651
  %.0 = phi i32 [ 1, %1651 ], [ 0, %1 ]
  ret i32 %.0
}

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN7libzpaq5ZPAQL3errEv(ptr noundef nonnull align 8 dereferenceable(192)) local_unnamed_addr #1 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEixEm(ptr noundef nonnull align 8 dereferenceable(20), i64 noundef) local_unnamed_addr #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN7libzpaq5ZPAQL4swapERj(ptr noundef nonnull align 8 dereferenceable(192), ptr noundef nonnull align 4 dereferenceable(4)) local_unnamed_addr #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN7libzpaq5ZPAQL4swapERh(ptr noundef nonnull align 8 dereferenceable(192), ptr noundef nonnull align 1 dereferenceable(1)) local_unnamed_addr #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 1 dereferenceable(1) ptr @_ZN7libzpaq5ArrayIhEclEm(ptr noundef nonnull align 8 dereferenceable(20), i64 noundef) local_unnamed_addr #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 4 dereferenceable(4) ptr @_ZN7libzpaq5ArrayIjEclEm(ptr noundef nonnull align 8 dereferenceable(20), i64 noundef) local_unnamed_addr #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN7libzpaq5ZPAQL4outcEi(ptr noundef nonnull align 8 dereferenceable(192), i32 noundef) local_unnamed_addr #1 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN7libzpaq5ZPAQL3divEj(ptr noundef nonnull align 8 dereferenceable(192), i32 noundef) local_unnamed_addr #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN7libzpaq5ZPAQL3modEj(ptr noundef nonnull align 8 dereferenceable(192), i32 noundef) local_unnamed_addr #0 align 2

attributes #0 = { mustprogress nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #1 = { mustprogress uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }

!llvm.module.flags = !{!0, !1, !2, !3}
!llvm.ident = !{!4}

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !12, i64 176}
!6 = !{!"_ZTSN7libzpaq5ZPAQLE", !7, i64 0, !7, i64 8, !10, i64 16, !12, i64 40, !12, i64 44, !12, i64 48, !10, i64 56, !13, i64 80, !13, i64 104, !14, i64 128, !12, i64 152, !12, i64 156, !12, i64 160, !12, i64 164, !12, i64 168, !12, i64 172, !12, i64 176, !12, i64 180, !7, i64 184}
!7 = !{!"any pointer", !8, i64 0}
!8 = !{!"omnipotent char", !9, i64 0}
!9 = !{!"Simple C++ TBAA"}
!10 = !{!"_ZTSN7libzpaq5ArrayIhEE", !7, i64 0, !11, i64 8, !12, i64 16}
!11 = !{!"long", !8, i64 0}
!12 = !{!"int", !8, i64 0}
!13 = !{!"_ZTSN7libzpaq5ArrayIjEE", !7, i64 0, !11, i64 8, !12, i64 16}
!14 = !{!"_ZTSN7libzpaq5ArrayIcEE", !7, i64 0, !11, i64 8, !12, i64 16}
!15 = !{!8, !8, i64 0}
!16 = !{!6, !12, i64 156}
!17 = !{!12, !12, i64 0}
!18 = !{!6, !12, i64 160}
!19 = !{!6, !12, i64 164}
!20 = !{!6, !12, i64 168}
!21 = !{!6, !12, i64 172}
!22 = !{!6, !12, i64 44}
!23 = !{!6, !12, i64 48}


; Effective O3 passes: EarlyCSEPass,GlobalOptPass,IPSCCPPass,InstCombinePass,ReassociatePass,SROAPass,SimplifyCFGPass,TailCallElimPass