; LLVM IR from romerojosh/zefr :: src (gimmik_cpu)

; 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"

; Function Attrs: nocallback nofree nosync nounwind willreturn memory(argmem: readwrite)
declare void @llvm.lifetime.start.p0(i64 immarg, ptr nocapture) #0

; Function Attrs: nocallback nofree nosync nounwind speculatable willreturn memory(none)
declare double @llvm.fmuladd.f64(double, double, double) #1

; Function Attrs: nocallback nofree nosync nounwind willreturn memory(argmem: readwrite)
declare void @llvm.lifetime.end.p0(i64 immarg, ptr nocapture) #0

; Function Attrs: nounwind uwtable
define dso_local void @gimmik_mm_cpu_14215087946191635781_b0(i32 noundef %0, ptr noalias noundef %1, i32 noundef %2, ptr noalias noundef %3, i32 noundef %4) #2 {
  %6 = alloca i32, align 4
  %7 = alloca ptr, align 8
  %8 = alloca i32, align 4
  %9 = alloca ptr, align 8
  %10 = alloca i32, align 4
  %11 = alloca double, align 8
  %12 = alloca i32, align 4
  store i32 %0, ptr %6, align 4, !tbaa !5
  store ptr %1, ptr %7, align 8, !tbaa !9
  store i32 %2, ptr %8, align 4, !tbaa !5
  store ptr %3, ptr %9, align 8, !tbaa !9
  store i32 %4, ptr %10, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %11) #3
  call void @llvm.lifetime.start.p0(i64 4, ptr %12) #3
  store i32 0, ptr %12, align 4, !tbaa !5
  br label %13

13:                                               ; preds = %30211, %5
  %14 = load i32, ptr %12, align 4, !tbaa !5
  %15 = load i32, ptr %6, align 4, !tbaa !5
  %16 = icmp slt i32 %14, %15
  br i1 %16, label %18, label %17

17:                                               ; preds = %13
  call void @llvm.lifetime.end.p0(i64 4, ptr %12) #3
  br label %30214

18:                                               ; preds = %13
  %19 = load ptr, ptr %7, align 8, !tbaa !9
  %20 = load i32, ptr %12, align 4, !tbaa !5
  %21 = load i32, ptr %8, align 4, !tbaa !5
  %22 = mul nsw i32 36, %21
  %23 = add nsw i32 %20, %22
  %24 = sext i32 %23 to i64
  %25 = getelementptr inbounds double, ptr %19, i64 %24
  %26 = load double, ptr %25, align 8, !tbaa !11
  %27 = load ptr, ptr %7, align 8, !tbaa !9
  %28 = load i32, ptr %12, align 4, !tbaa !5
  %29 = load i32, ptr %8, align 4, !tbaa !5
  %30 = mul nsw i32 37, %29
  %31 = add nsw i32 %28, %30
  %32 = sext i32 %31 to i64
  %33 = getelementptr inbounds double, ptr %27, i64 %32
  %34 = load double, ptr %33, align 8, !tbaa !11
  %35 = fmul double 0x3FEC2894019C8AD0, %34
  %36 = call double @llvm.fmuladd.f64(double 0x3FA789B66AF4F458, double %26, double %35)
  %37 = load ptr, ptr %7, align 8, !tbaa !9
  %38 = load i32, ptr %12, align 4, !tbaa !5
  %39 = load i32, ptr %8, align 4, !tbaa !5
  %40 = mul nsw i32 38, %39
  %41 = add nsw i32 %38, %40
  %42 = sext i32 %41 to i64
  %43 = getelementptr inbounds double, ptr %37, i64 %42
  %44 = load double, ptr %43, align 8, !tbaa !11
  %45 = call double @llvm.fmuladd.f64(double 0x3FEC2894019C8AC0, double %44, double %36)
  %46 = load ptr, ptr %7, align 8, !tbaa !9
  %47 = load i32, ptr %12, align 4, !tbaa !5
  %48 = load i32, ptr %8, align 4, !tbaa !5
  %49 = mul nsw i32 39, %48
  %50 = add nsw i32 %47, %49
  %51 = sext i32 %50 to i64
  %52 = getelementptr inbounds double, ptr %46, i64 %51
  %53 = load double, ptr %52, align 8, !tbaa !11
  %54 = call double @llvm.fmuladd.f64(double 0x3FA789B66AF4F551, double %53, double %45)
  %55 = load ptr, ptr %7, align 8, !tbaa !9
  %56 = load i32, ptr %12, align 4, !tbaa !5
  %57 = load i32, ptr %8, align 4, !tbaa !5
  %58 = mul nsw i32 40, %57
  %59 = add nsw i32 %56, %58
  %60 = sext i32 %59 to i64
  %61 = getelementptr inbounds double, ptr %55, i64 %60
  %62 = load double, ptr %61, align 8, !tbaa !11
  %63 = call double @llvm.fmuladd.f64(double 0x3C89000000000000, double %62, double %54)
  %64 = load ptr, ptr %7, align 8, !tbaa !9
  %65 = load i32, ptr %12, align 4, !tbaa !5
  %66 = load i32, ptr %8, align 4, !tbaa !5
  %67 = mul nsw i32 41, %66
  %68 = add nsw i32 %65, %67
  %69 = sext i32 %68 to i64
  %70 = getelementptr inbounds double, ptr %64, i64 %69
  %71 = load double, ptr %70, align 8, !tbaa !11
  %72 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %71, double %63)
  %73 = load ptr, ptr %7, align 8, !tbaa !9
  %74 = load i32, ptr %12, align 4, !tbaa !5
  %75 = load i32, ptr %8, align 4, !tbaa !5
  %76 = mul nsw i32 42, %75
  %77 = add nsw i32 %74, %76
  %78 = sext i32 %77 to i64
  %79 = getelementptr inbounds double, ptr %73, i64 %78
  %80 = load double, ptr %79, align 8, !tbaa !11
  %81 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %80, double %72)
  %82 = load ptr, ptr %7, align 8, !tbaa !9
  %83 = load i32, ptr %12, align 4, !tbaa !5
  %84 = load i32, ptr %8, align 4, !tbaa !5
  %85 = mul nsw i32 43, %84
  %86 = add nsw i32 %83, %85
  %87 = sext i32 %86 to i64
  %88 = getelementptr inbounds double, ptr %82, i64 %87
  %89 = load double, ptr %88, align 8, !tbaa !11
  %90 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %89, double %81)
  %91 = load ptr, ptr %7, align 8, !tbaa !9
  %92 = load i32, ptr %12, align 4, !tbaa !5
  %93 = load i32, ptr %8, align 4, !tbaa !5
  %94 = mul nsw i32 44, %93
  %95 = add nsw i32 %92, %94
  %96 = sext i32 %95 to i64
  %97 = getelementptr inbounds double, ptr %91, i64 %96
  %98 = load double, ptr %97, align 8, !tbaa !11
  %99 = call double @llvm.fmuladd.f64(double 0x3C7E000000000001, double %98, double %90)
  %100 = load ptr, ptr %7, align 8, !tbaa !9
  %101 = load i32, ptr %12, align 4, !tbaa !5
  %102 = load i32, ptr %8, align 4, !tbaa !5
  %103 = mul nsw i32 45, %102
  %104 = add nsw i32 %101, %103
  %105 = sext i32 %104 to i64
  %106 = getelementptr inbounds double, ptr %100, i64 %105
  %107 = load double, ptr %106, align 8, !tbaa !11
  %108 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %107, double %99)
  %109 = load ptr, ptr %7, align 8, !tbaa !9
  %110 = load i32, ptr %12, align 4, !tbaa !5
  %111 = load i32, ptr %8, align 4, !tbaa !5
  %112 = mul nsw i32 46, %111
  %113 = add nsw i32 %110, %112
  %114 = sext i32 %113 to i64
  %115 = getelementptr inbounds double, ptr %109, i64 %114
  %116 = load double, ptr %115, align 8, !tbaa !11
  %117 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %116, double %108)
  %118 = load ptr, ptr %7, align 8, !tbaa !9
  %119 = load i32, ptr %12, align 4, !tbaa !5
  %120 = load i32, ptr %8, align 4, !tbaa !5
  %121 = mul nsw i32 47, %120
  %122 = add nsw i32 %119, %121
  %123 = sext i32 %122 to i64
  %124 = getelementptr inbounds double, ptr %118, i64 %123
  %125 = load double, ptr %124, align 8, !tbaa !11
  %126 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %125, double %117)
  %127 = load ptr, ptr %7, align 8, !tbaa !9
  %128 = load i32, ptr %12, align 4, !tbaa !5
  %129 = load i32, ptr %8, align 4, !tbaa !5
  %130 = mul nsw i32 48, %129
  %131 = add nsw i32 %128, %130
  %132 = sext i32 %131 to i64
  %133 = getelementptr inbounds double, ptr %127, i64 %132
  %134 = load double, ptr %133, align 8, !tbaa !11
  %135 = call double @llvm.fmuladd.f64(double 0xBC9D3FFFFFFFFFFF, double %134, double %126)
  %136 = load ptr, ptr %7, align 8, !tbaa !9
  %137 = load i32, ptr %12, align 4, !tbaa !5
  %138 = load i32, ptr %8, align 4, !tbaa !5
  %139 = mul nsw i32 49, %138
  %140 = add nsw i32 %137, %139
  %141 = sext i32 %140 to i64
  %142 = getelementptr inbounds double, ptr %136, i64 %141
  %143 = load double, ptr %142, align 8, !tbaa !11
  %144 = call double @llvm.fmuladd.f64(double 0x3CA7000000000002, double %143, double %135)
  %145 = load ptr, ptr %7, align 8, !tbaa !9
  %146 = load i32, ptr %12, align 4, !tbaa !5
  %147 = load i32, ptr %8, align 4, !tbaa !5
  %148 = mul nsw i32 50, %147
  %149 = add nsw i32 %146, %148
  %150 = sext i32 %149 to i64
  %151 = getelementptr inbounds double, ptr %145, i64 %150
  %152 = load double, ptr %151, align 8, !tbaa !11
  %153 = call double @llvm.fmuladd.f64(double 0x3CA9FFFFFFFFFFFE, double %152, double %144)
  %154 = load ptr, ptr %7, align 8, !tbaa !9
  %155 = load i32, ptr %12, align 4, !tbaa !5
  %156 = load i32, ptr %8, align 4, !tbaa !5
  %157 = mul nsw i32 51, %156
  %158 = add nsw i32 %155, %157
  %159 = sext i32 %158 to i64
  %160 = getelementptr inbounds double, ptr %154, i64 %159
  %161 = load double, ptr %160, align 8, !tbaa !11
  %162 = call double @llvm.fmuladd.f64(double 0xBC60000000000000, double %161, double %153)
  %163 = load ptr, ptr %7, align 8, !tbaa !9
  %164 = load i32, ptr %12, align 4, !tbaa !5
  %165 = load i32, ptr %8, align 4, !tbaa !5
  %166 = mul nsw i32 52, %165
  %167 = add nsw i32 %164, %166
  %168 = sext i32 %167 to i64
  %169 = getelementptr inbounds double, ptr %163, i64 %168
  %170 = load double, ptr %169, align 8, !tbaa !11
  %171 = call double @llvm.fmuladd.f64(double 0xBFA0A4D27CF86DC6, double %170, double %162)
  %172 = load ptr, ptr %7, align 8, !tbaa !9
  %173 = load i32, ptr %12, align 4, !tbaa !5
  %174 = load i32, ptr %8, align 4, !tbaa !5
  %175 = mul nsw i32 53, %174
  %176 = add nsw i32 %173, %175
  %177 = sext i32 %176 to i64
  %178 = getelementptr inbounds double, ptr %172, i64 %177
  %179 = load double, ptr %178, align 8, !tbaa !11
  %180 = call double @llvm.fmuladd.f64(double 0xBFE3E93C07AFC380, double %179, double %171)
  %181 = load ptr, ptr %7, align 8, !tbaa !9
  %182 = load i32, ptr %12, align 4, !tbaa !5
  %183 = load i32, ptr %8, align 4, !tbaa !5
  %184 = mul nsw i32 54, %183
  %185 = add nsw i32 %182, %184
  %186 = sext i32 %185 to i64
  %187 = getelementptr inbounds double, ptr %181, i64 %186
  %188 = load double, ptr %187, align 8, !tbaa !11
  %189 = call double @llvm.fmuladd.f64(double 0xBFE3E93C07AFC37E, double %188, double %180)
  %190 = load ptr, ptr %7, align 8, !tbaa !9
  %191 = load i32, ptr %12, align 4, !tbaa !5
  %192 = load i32, ptr %8, align 4, !tbaa !5
  %193 = mul nsw i32 55, %192
  %194 = add nsw i32 %191, %193
  %195 = sext i32 %194 to i64
  %196 = getelementptr inbounds double, ptr %190, i64 %195
  %197 = load double, ptr %196, align 8, !tbaa !11
  %198 = call double @llvm.fmuladd.f64(double 0xBFA0A4D27CF86DAF, double %197, double %189)
  %199 = load ptr, ptr %7, align 8, !tbaa !9
  %200 = load i32, ptr %12, align 4, !tbaa !5
  %201 = load i32, ptr %8, align 4, !tbaa !5
  %202 = mul nsw i32 56, %201
  %203 = add nsw i32 %200, %202
  %204 = sext i32 %203 to i64
  %205 = getelementptr inbounds double, ptr %199, i64 %204
  %206 = load double, ptr %205, align 8, !tbaa !11
  %207 = call double @llvm.fmuladd.f64(double 0xBC85EB99734B41EF, double %206, double %198)
  %208 = load ptr, ptr %7, align 8, !tbaa !9
  %209 = load i32, ptr %12, align 4, !tbaa !5
  %210 = load i32, ptr %8, align 4, !tbaa !5
  %211 = mul nsw i32 57, %210
  %212 = add nsw i32 %209, %211
  %213 = sext i32 %212 to i64
  %214 = getelementptr inbounds double, ptr %208, i64 %213
  %215 = load double, ptr %214, align 8, !tbaa !11
  %216 = call double @llvm.fmuladd.f64(double 0xBCA80AA84CE72F89, double %215, double %207)
  %217 = load ptr, ptr %7, align 8, !tbaa !9
  %218 = load i32, ptr %12, align 4, !tbaa !5
  %219 = load i32, ptr %8, align 4, !tbaa !5
  %220 = mul nsw i32 58, %219
  %221 = add nsw i32 %218, %220
  %222 = sext i32 %221 to i64
  %223 = getelementptr inbounds double, ptr %217, i64 %222
  %224 = load double, ptr %223, align 8, !tbaa !11
  %225 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %224, double %216)
  %226 = load ptr, ptr %7, align 8, !tbaa !9
  %227 = load i32, ptr %12, align 4, !tbaa !5
  %228 = load i32, ptr %8, align 4, !tbaa !5
  %229 = mul nsw i32 59, %228
  %230 = add nsw i32 %227, %229
  %231 = sext i32 %230 to i64
  %232 = getelementptr inbounds double, ptr %226, i64 %231
  %233 = load double, ptr %232, align 8, !tbaa !11
  %234 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %233, double %225)
  %235 = load ptr, ptr %7, align 8, !tbaa !9
  %236 = load i32, ptr %12, align 4, !tbaa !5
  %237 = load i32, ptr %8, align 4, !tbaa !5
  %238 = mul nsw i32 60, %237
  %239 = add nsw i32 %236, %238
  %240 = sext i32 %239 to i64
  %241 = getelementptr inbounds double, ptr %235, i64 %240
  %242 = load double, ptr %241, align 8, !tbaa !11
  %243 = call double @llvm.fmuladd.f64(double 0xBC81AD7BC01366B8, double %242, double %234)
  %244 = load ptr, ptr %7, align 8, !tbaa !9
  %245 = load i32, ptr %12, align 4, !tbaa !5
  %246 = load i32, ptr %8, align 4, !tbaa !5
  %247 = mul nsw i32 61, %246
  %248 = add nsw i32 %245, %247
  %249 = sext i32 %248 to i64
  %250 = getelementptr inbounds double, ptr %244, i64 %249
  %251 = load double, ptr %250, align 8, !tbaa !11
  %252 = call double @llvm.fmuladd.f64(double 0xBC93CC8A99AF5452, double %251, double %243)
  %253 = load ptr, ptr %7, align 8, !tbaa !9
  %254 = load i32, ptr %12, align 4, !tbaa !5
  %255 = load i32, ptr %8, align 4, !tbaa !5
  %256 = mul nsw i32 62, %255
  %257 = add nsw i32 %254, %256
  %258 = sext i32 %257 to i64
  %259 = getelementptr inbounds double, ptr %253, i64 %258
  %260 = load double, ptr %259, align 8, !tbaa !11
  %261 = call double @llvm.fmuladd.f64(double 0xBC93CC8A99AF5452, double %260, double %252)
  %262 = load ptr, ptr %7, align 8, !tbaa !9
  %263 = load i32, ptr %12, align 4, !tbaa !5
  %264 = load i32, ptr %8, align 4, !tbaa !5
  %265 = mul nsw i32 63, %264
  %266 = add nsw i32 %263, %265
  %267 = sext i32 %266 to i64
  %268 = getelementptr inbounds double, ptr %262, i64 %267
  %269 = load double, ptr %268, align 8, !tbaa !11
  %270 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %269, double %261)
  %271 = load ptr, ptr %7, align 8, !tbaa !9
  %272 = load i32, ptr %12, align 4, !tbaa !5
  %273 = load i32, ptr %8, align 4, !tbaa !5
  %274 = mul nsw i32 64, %273
  %275 = add nsw i32 %272, %274
  %276 = sext i32 %275 to i64
  %277 = getelementptr inbounds double, ptr %271, i64 %276
  %278 = load double, ptr %277, align 8, !tbaa !11
  %279 = call double @llvm.fmuladd.f64(double 0x3C7FD1DEC022EC17, double %278, double %270)
  %280 = load ptr, ptr %7, align 8, !tbaa !9
  %281 = load i32, ptr %12, align 4, !tbaa !5
  %282 = load i32, ptr %8, align 4, !tbaa !5
  %283 = mul nsw i32 65, %282
  %284 = add nsw i32 %281, %283
  %285 = sext i32 %284 to i64
  %286 = getelementptr inbounds double, ptr %280, i64 %285
  %287 = load double, ptr %286, align 8, !tbaa !11
  %288 = call double @llvm.fmuladd.f64(double 0xBCA6A09E667F3BCC, double %287, double %279)
  %289 = load ptr, ptr %7, align 8, !tbaa !9
  %290 = load i32, ptr %12, align 4, !tbaa !5
  %291 = load i32, ptr %8, align 4, !tbaa !5
  %292 = mul nsw i32 66, %291
  %293 = add nsw i32 %290, %292
  %294 = sext i32 %293 to i64
  %295 = getelementptr inbounds double, ptr %289, i64 %294
  %296 = load double, ptr %295, align 8, !tbaa !11
  %297 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %296, double %288)
  %298 = load ptr, ptr %7, align 8, !tbaa !9
  %299 = load i32, ptr %12, align 4, !tbaa !5
  %300 = load i32, ptr %8, align 4, !tbaa !5
  %301 = mul nsw i32 67, %300
  %302 = add nsw i32 %299, %301
  %303 = sext i32 %302 to i64
  %304 = getelementptr inbounds double, ptr %298, i64 %303
  %305 = load double, ptr %304, align 8, !tbaa !11
  %306 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %305, double %297)
  store double %306, ptr %11, align 8, !tbaa !11
  %307 = load double, ptr %11, align 8, !tbaa !11
  %308 = load ptr, ptr %9, align 8, !tbaa !9
  %309 = load i32, ptr %12, align 4, !tbaa !5
  %310 = load i32, ptr %10, align 4, !tbaa !5
  %311 = mul nsw i32 0, %310
  %312 = add nsw i32 %309, %311
  %313 = sext i32 %312 to i64
  %314 = getelementptr inbounds double, ptr %308, i64 %313
  store double %307, ptr %314, align 8, !tbaa !11
  %315 = load ptr, ptr %7, align 8, !tbaa !9
  %316 = load i32, ptr %12, align 4, !tbaa !5
  %317 = load i32, ptr %8, align 4, !tbaa !5
  %318 = mul nsw i32 36, %317
  %319 = add nsw i32 %316, %318
  %320 = sext i32 %319 to i64
  %321 = getelementptr inbounds double, ptr %315, i64 %320
  %322 = load double, ptr %321, align 8, !tbaa !11
  %323 = load ptr, ptr %7, align 8, !tbaa !9
  %324 = load i32, ptr %12, align 4, !tbaa !5
  %325 = load i32, ptr %8, align 4, !tbaa !5
  %326 = mul nsw i32 37, %325
  %327 = add nsw i32 %324, %326
  %328 = sext i32 %327 to i64
  %329 = getelementptr inbounds double, ptr %323, i64 %328
  %330 = load double, ptr %329, align 8, !tbaa !11
  %331 = fmul double 0x3FCEFDC8894D082A, %330
  %332 = call double @llvm.fmuladd.f64(double 0xBFACD49071EC5F52, double %322, double %331)
  %333 = load ptr, ptr %7, align 8, !tbaa !9
  %334 = load i32, ptr %12, align 4, !tbaa !5
  %335 = load i32, ptr %8, align 4, !tbaa !5
  %336 = mul nsw i32 38, %335
  %337 = add nsw i32 %334, %336
  %338 = sext i32 %337 to i64
  %339 = getelementptr inbounds double, ptr %333, i64 %338
  %340 = load double, ptr %339, align 8, !tbaa !11
  %341 = call double @llvm.fmuladd.f64(double 0xBFDD2EB9CCB3BDE5, double %340, double %332)
  %342 = load ptr, ptr %7, align 8, !tbaa !9
  %343 = load i32, ptr %12, align 4, !tbaa !5
  %344 = load i32, ptr %8, align 4, !tbaa !5
  %345 = mul nsw i32 39, %344
  %346 = add nsw i32 %343, %345
  %347 = sext i32 %346 to i64
  %348 = getelementptr inbounds double, ptr %342, i64 %347
  %349 = load double, ptr %348, align 8, !tbaa !11
  %350 = call double @llvm.fmuladd.f64(double 0xC01569E165D79415, double %349, double %341)
  %351 = load ptr, ptr %7, align 8, !tbaa !9
  %352 = load i32, ptr %12, align 4, !tbaa !5
  %353 = load i32, ptr %8, align 4, !tbaa !5
  %354 = mul nsw i32 40, %353
  %355 = add nsw i32 %352, %354
  %356 = sext i32 %355 to i64
  %357 = getelementptr inbounds double, ptr %351, i64 %356
  %358 = load double, ptr %357, align 8, !tbaa !11
  %359 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %358, double %350)
  %360 = load ptr, ptr %7, align 8, !tbaa !9
  %361 = load i32, ptr %12, align 4, !tbaa !5
  %362 = load i32, ptr %8, align 4, !tbaa !5
  %363 = mul nsw i32 41, %362
  %364 = add nsw i32 %361, %363
  %365 = sext i32 %364 to i64
  %366 = getelementptr inbounds double, ptr %360, i64 %365
  %367 = load double, ptr %366, align 8, !tbaa !11
  %368 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %367, double %359)
  %369 = load ptr, ptr %7, align 8, !tbaa !9
  %370 = load i32, ptr %12, align 4, !tbaa !5
  %371 = load i32, ptr %8, align 4, !tbaa !5
  %372 = mul nsw i32 42, %371
  %373 = add nsw i32 %370, %372
  %374 = sext i32 %373 to i64
  %375 = getelementptr inbounds double, ptr %369, i64 %374
  %376 = load double, ptr %375, align 8, !tbaa !11
  %377 = call double @llvm.fmuladd.f64(double 0xBCB0000000000000, double %376, double %368)
  %378 = load ptr, ptr %7, align 8, !tbaa !9
  %379 = load i32, ptr %12, align 4, !tbaa !5
  %380 = load i32, ptr %8, align 4, !tbaa !5
  %381 = mul nsw i32 43, %380
  %382 = add nsw i32 %379, %381
  %383 = sext i32 %382 to i64
  %384 = getelementptr inbounds double, ptr %378, i64 %383
  %385 = load double, ptr %384, align 8, !tbaa !11
  %386 = call double @llvm.fmuladd.f64(double 0xBCC4000000000000, double %385, double %377)
  %387 = load ptr, ptr %7, align 8, !tbaa !9
  %388 = load i32, ptr %12, align 4, !tbaa !5
  %389 = load i32, ptr %8, align 4, !tbaa !5
  %390 = mul nsw i32 44, %389
  %391 = add nsw i32 %388, %390
  %392 = sext i32 %391 to i64
  %393 = getelementptr inbounds double, ptr %387, i64 %392
  %394 = load double, ptr %393, align 8, !tbaa !11
  %395 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %394, double %386)
  %396 = load ptr, ptr %7, align 8, !tbaa !9
  %397 = load i32, ptr %12, align 4, !tbaa !5
  %398 = load i32, ptr %8, align 4, !tbaa !5
  %399 = mul nsw i32 45, %398
  %400 = add nsw i32 %397, %399
  %401 = sext i32 %400 to i64
  %402 = getelementptr inbounds double, ptr %396, i64 %401
  %403 = load double, ptr %402, align 8, !tbaa !11
  %404 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %403, double %395)
  %405 = load ptr, ptr %7, align 8, !tbaa !9
  %406 = load i32, ptr %12, align 4, !tbaa !5
  %407 = load i32, ptr %8, align 4, !tbaa !5
  %408 = mul nsw i32 46, %407
  %409 = add nsw i32 %406, %408
  %410 = sext i32 %409 to i64
  %411 = getelementptr inbounds double, ptr %405, i64 %410
  %412 = load double, ptr %411, align 8, !tbaa !11
  %413 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %412, double %404)
  %414 = load ptr, ptr %7, align 8, !tbaa !9
  %415 = load i32, ptr %12, align 4, !tbaa !5
  %416 = load i32, ptr %8, align 4, !tbaa !5
  %417 = mul nsw i32 47, %416
  %418 = add nsw i32 %415, %417
  %419 = sext i32 %418 to i64
  %420 = getelementptr inbounds double, ptr %414, i64 %419
  %421 = load double, ptr %420, align 8, !tbaa !11
  %422 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %421, double %413)
  %423 = load ptr, ptr %7, align 8, !tbaa !9
  %424 = load i32, ptr %12, align 4, !tbaa !5
  %425 = load i32, ptr %8, align 4, !tbaa !5
  %426 = mul nsw i32 48, %425
  %427 = add nsw i32 %424, %426
  %428 = sext i32 %427 to i64
  %429 = getelementptr inbounds double, ptr %423, i64 %428
  %430 = load double, ptr %429, align 8, !tbaa !11
  %431 = call double @llvm.fmuladd.f64(double 0xBC89FFFFFFFFFFFF, double %430, double %422)
  %432 = load ptr, ptr %7, align 8, !tbaa !9
  %433 = load i32, ptr %12, align 4, !tbaa !5
  %434 = load i32, ptr %8, align 4, !tbaa !5
  %435 = mul nsw i32 49, %434
  %436 = add nsw i32 %433, %435
  %437 = sext i32 %436 to i64
  %438 = getelementptr inbounds double, ptr %432, i64 %437
  %439 = load double, ptr %438, align 8, !tbaa !11
  %440 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %439, double %431)
  %441 = load ptr, ptr %7, align 8, !tbaa !9
  %442 = load i32, ptr %12, align 4, !tbaa !5
  %443 = load i32, ptr %8, align 4, !tbaa !5
  %444 = mul nsw i32 50, %443
  %445 = add nsw i32 %442, %444
  %446 = sext i32 %445 to i64
  %447 = getelementptr inbounds double, ptr %441, i64 %446
  %448 = load double, ptr %447, align 8, !tbaa !11
  %449 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %448, double %440)
  %450 = load ptr, ptr %7, align 8, !tbaa !9
  %451 = load i32, ptr %12, align 4, !tbaa !5
  %452 = load i32, ptr %8, align 4, !tbaa !5
  %453 = mul nsw i32 51, %452
  %454 = add nsw i32 %451, %453
  %455 = sext i32 %454 to i64
  %456 = getelementptr inbounds double, ptr %450, i64 %455
  %457 = load double, ptr %456, align 8, !tbaa !11
  %458 = call double @llvm.fmuladd.f64(double 0xBCC8000000000000, double %457, double %449)
  %459 = load ptr, ptr %7, align 8, !tbaa !9
  %460 = load i32, ptr %12, align 4, !tbaa !5
  %461 = load i32, ptr %8, align 4, !tbaa !5
  %462 = mul nsw i32 52, %461
  %463 = add nsw i32 %460, %462
  %464 = sext i32 %463 to i64
  %465 = getelementptr inbounds double, ptr %459, i64 %464
  %466 = load double, ptr %465, align 8, !tbaa !11
  %467 = call double @llvm.fmuladd.f64(double 0x3FA462D8D66D7FC4, double %466, double %458)
  %468 = load ptr, ptr %7, align 8, !tbaa !9
  %469 = load i32, ptr %12, align 4, !tbaa !5
  %470 = load i32, ptr %8, align 4, !tbaa !5
  %471 = mul nsw i32 53, %470
  %472 = add nsw i32 %469, %471
  %473 = sext i32 %472 to i64
  %474 = getelementptr inbounds double, ptr %468, i64 %473
  %475 = load double, ptr %474, align 8, !tbaa !11
  %476 = call double @llvm.fmuladd.f64(double 0xBFC5EA083165C4F6, double %475, double %467)
  %477 = load ptr, ptr %7, align 8, !tbaa !9
  %478 = load i32, ptr %12, align 4, !tbaa !5
  %479 = load i32, ptr %8, align 4, !tbaa !5
  %480 = mul nsw i32 54, %479
  %481 = add nsw i32 %478, %480
  %482 = sext i32 %481 to i64
  %483 = getelementptr inbounds double, ptr %477, i64 %482
  %484 = load double, ptr %483, align 8, !tbaa !11
  %485 = call double @llvm.fmuladd.f64(double 0x3FD4A299D1E9700E, double %484, double %476)
  %486 = load ptr, ptr %7, align 8, !tbaa !9
  %487 = load i32, ptr %12, align 4, !tbaa !5
  %488 = load i32, ptr %8, align 4, !tbaa !5
  %489 = mul nsw i32 55, %488
  %490 = add nsw i32 %487, %489
  %491 = sext i32 %490 to i64
  %492 = getelementptr inbounds double, ptr %486, i64 %491
  %493 = load double, ptr %492, align 8, !tbaa !11
  %494 = call double @llvm.fmuladd.f64(double 0x400E488CB8C1EA74, double %493, double %485)
  %495 = load ptr, ptr %7, align 8, !tbaa !9
  %496 = load i32, ptr %12, align 4, !tbaa !5
  %497 = load i32, ptr %8, align 4, !tbaa !5
  %498 = mul nsw i32 56, %497
  %499 = add nsw i32 %496, %498
  %500 = sext i32 %499 to i64
  %501 = getelementptr inbounds double, ptr %495, i64 %500
  %502 = load double, ptr %501, align 8, !tbaa !11
  %503 = call double @llvm.fmuladd.f64(double 0x3C66A09E667F3BCC, double %502, double %494)
  %504 = load ptr, ptr %7, align 8, !tbaa !9
  %505 = load i32, ptr %12, align 4, !tbaa !5
  %506 = load i32, ptr %8, align 4, !tbaa !5
  %507 = mul nsw i32 57, %506
  %508 = add nsw i32 %505, %507
  %509 = sext i32 %508 to i64
  %510 = getelementptr inbounds double, ptr %504, i64 %509
  %511 = load double, ptr %510, align 8, !tbaa !11
  %512 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %511, double %503)
  %513 = load ptr, ptr %7, align 8, !tbaa !9
  %514 = load i32, ptr %12, align 4, !tbaa !5
  %515 = load i32, ptr %8, align 4, !tbaa !5
  %516 = mul nsw i32 58, %515
  %517 = add nsw i32 %514, %516
  %518 = sext i32 %517 to i64
  %519 = getelementptr inbounds double, ptr %513, i64 %518
  %520 = load double, ptr %519, align 8, !tbaa !11
  %521 = call double @llvm.fmuladd.f64(double 0x3CA0F876CCDF6CD8, double %520, double %512)
  %522 = load ptr, ptr %7, align 8, !tbaa !9
  %523 = load i32, ptr %12, align 4, !tbaa !5
  %524 = load i32, ptr %8, align 4, !tbaa !5
  %525 = mul nsw i32 59, %524
  %526 = add nsw i32 %523, %525
  %527 = sext i32 %526 to i64
  %528 = getelementptr inbounds double, ptr %522, i64 %527
  %529 = load double, ptr %528, align 8, !tbaa !11
  %530 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %529, double %521)
  %531 = load ptr, ptr %7, align 8, !tbaa !9
  %532 = load i32, ptr %12, align 4, !tbaa !5
  %533 = load i32, ptr %8, align 4, !tbaa !5
  %534 = mul nsw i32 61, %533
  %535 = add nsw i32 %532, %534
  %536 = sext i32 %535 to i64
  %537 = getelementptr inbounds double, ptr %531, i64 %536
  %538 = load double, ptr %537, align 8, !tbaa !11
  %539 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %538, double %530)
  %540 = load ptr, ptr %7, align 8, !tbaa !9
  %541 = load i32, ptr %12, align 4, !tbaa !5
  %542 = load i32, ptr %8, align 4, !tbaa !5
  %543 = mul nsw i32 62, %542
  %544 = add nsw i32 %541, %543
  %545 = sext i32 %544 to i64
  %546 = getelementptr inbounds double, ptr %540, i64 %545
  %547 = load double, ptr %546, align 8, !tbaa !11
  %548 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %547, double %539)
  %549 = load ptr, ptr %7, align 8, !tbaa !9
  %550 = load i32, ptr %12, align 4, !tbaa !5
  %551 = load i32, ptr %8, align 4, !tbaa !5
  %552 = mul nsw i32 63, %551
  %553 = add nsw i32 %550, %552
  %554 = sext i32 %553 to i64
  %555 = getelementptr inbounds double, ptr %549, i64 %554
  %556 = load double, ptr %555, align 8, !tbaa !11
  %557 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %556, double %548)
  %558 = load ptr, ptr %7, align 8, !tbaa !9
  %559 = load i32, ptr %12, align 4, !tbaa !5
  %560 = load i32, ptr %8, align 4, !tbaa !5
  %561 = mul nsw i32 64, %560
  %562 = add nsw i32 %559, %561
  %563 = sext i32 %562 to i64
  %564 = getelementptr inbounds double, ptr %558, i64 %563
  %565 = load double, ptr %564, align 8, !tbaa !11
  %566 = call double @llvm.fmuladd.f64(double 0x3C91AD7BC01366B7, double %565, double %557)
  %567 = load ptr, ptr %7, align 8, !tbaa !9
  %568 = load i32, ptr %12, align 4, !tbaa !5
  %569 = load i32, ptr %8, align 4, !tbaa !5
  %570 = mul nsw i32 65, %569
  %571 = add nsw i32 %568, %570
  %572 = sext i32 %571 to i64
  %573 = getelementptr inbounds double, ptr %567, i64 %572
  %574 = load double, ptr %573, align 8, !tbaa !11
  %575 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %574, double %566)
  %576 = load ptr, ptr %7, align 8, !tbaa !9
  %577 = load i32, ptr %12, align 4, !tbaa !5
  %578 = load i32, ptr %8, align 4, !tbaa !5
  %579 = mul nsw i32 66, %578
  %580 = add nsw i32 %577, %579
  %581 = sext i32 %580 to i64
  %582 = getelementptr inbounds double, ptr %576, i64 %581
  %583 = load double, ptr %582, align 8, !tbaa !11
  %584 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %583, double %575)
  %585 = load ptr, ptr %7, align 8, !tbaa !9
  %586 = load i32, ptr %12, align 4, !tbaa !5
  %587 = load i32, ptr %8, align 4, !tbaa !5
  %588 = mul nsw i32 67, %587
  %589 = add nsw i32 %586, %588
  %590 = sext i32 %589 to i64
  %591 = getelementptr inbounds double, ptr %585, i64 %590
  %592 = load double, ptr %591, align 8, !tbaa !11
  %593 = call double @llvm.fmuladd.f64(double 0x3CC0F876CCDF6CD9, double %592, double %584)
  store double %593, ptr %11, align 8, !tbaa !11
  %594 = load double, ptr %11, align 8, !tbaa !11
  %595 = load ptr, ptr %9, align 8, !tbaa !9
  %596 = load i32, ptr %12, align 4, !tbaa !5
  %597 = load i32, ptr %10, align 4, !tbaa !5
  %598 = mul nsw i32 1, %597
  %599 = add nsw i32 %596, %598
  %600 = sext i32 %599 to i64
  %601 = getelementptr inbounds double, ptr %595, i64 %600
  store double %594, ptr %601, align 8, !tbaa !11
  %602 = load ptr, ptr %7, align 8, !tbaa !9
  %603 = load i32, ptr %12, align 4, !tbaa !5
  %604 = load i32, ptr %8, align 4, !tbaa !5
  %605 = mul nsw i32 36, %604
  %606 = add nsw i32 %603, %605
  %607 = sext i32 %606 to i64
  %608 = getelementptr inbounds double, ptr %602, i64 %607
  %609 = load double, ptr %608, align 8, !tbaa !11
  %610 = load ptr, ptr %7, align 8, !tbaa !9
  %611 = load i32, ptr %12, align 4, !tbaa !5
  %612 = load i32, ptr %8, align 4, !tbaa !5
  %613 = mul nsw i32 37, %612
  %614 = add nsw i32 %611, %613
  %615 = sext i32 %614 to i64
  %616 = getelementptr inbounds double, ptr %610, i64 %615
  %617 = load double, ptr %616, align 8, !tbaa !11
  %618 = fmul double 0x3FEAEBF44A8E7A7E, %617
  %619 = call double @llvm.fmuladd.f64(double 0x3FD6F2A1D7A49290, double %609, double %618)
  %620 = load ptr, ptr %7, align 8, !tbaa !9
  %621 = load i32, ptr %12, align 4, !tbaa !5
  %622 = load i32, ptr %8, align 4, !tbaa !5
  %623 = mul nsw i32 38, %622
  %624 = add nsw i32 %621, %623
  %625 = sext i32 %624 to i64
  %626 = getelementptr inbounds double, ptr %620, i64 %625
  %627 = load double, ptr %626, align 8, !tbaa !11
  %628 = call double @llvm.fmuladd.f64(double 0x3FEAEBF44A8E7A78, double %627, double %619)
  %629 = load ptr, ptr %7, align 8, !tbaa !9
  %630 = load i32, ptr %12, align 4, !tbaa !5
  %631 = load i32, ptr %8, align 4, !tbaa !5
  %632 = mul nsw i32 39, %631
  %633 = add nsw i32 %630, %632
  %634 = sext i32 %633 to i64
  %635 = getelementptr inbounds double, ptr %629, i64 %634
  %636 = load double, ptr %635, align 8, !tbaa !11
  %637 = call double @llvm.fmuladd.f64(double 0x3FD6F2A1D7A492C1, double %636, double %628)
  %638 = load ptr, ptr %7, align 8, !tbaa !9
  %639 = load i32, ptr %12, align 4, !tbaa !5
  %640 = load i32, ptr %8, align 4, !tbaa !5
  %641 = mul nsw i32 40, %640
  %642 = add nsw i32 %639, %641
  %643 = sext i32 %642 to i64
  %644 = getelementptr inbounds double, ptr %638, i64 %643
  %645 = load double, ptr %644, align 8, !tbaa !11
  %646 = call double @llvm.fmuladd.f64(double 0xBC71FFFFFFFFFFFF, double %645, double %637)
  %647 = load ptr, ptr %7, align 8, !tbaa !9
  %648 = load i32, ptr %12, align 4, !tbaa !5
  %649 = load i32, ptr %8, align 4, !tbaa !5
  %650 = mul nsw i32 41, %649
  %651 = add nsw i32 %648, %650
  %652 = sext i32 %651 to i64
  %653 = getelementptr inbounds double, ptr %647, i64 %652
  %654 = load double, ptr %653, align 8, !tbaa !11
  %655 = call double @llvm.fmuladd.f64(double 0x3CB1000000000001, double %654, double %646)
  %656 = load ptr, ptr %7, align 8, !tbaa !9
  %657 = load i32, ptr %12, align 4, !tbaa !5
  %658 = load i32, ptr %8, align 4, !tbaa !5
  %659 = mul nsw i32 42, %658
  %660 = add nsw i32 %657, %659
  %661 = sext i32 %660 to i64
  %662 = getelementptr inbounds double, ptr %656, i64 %661
  %663 = load double, ptr %662, align 8, !tbaa !11
  %664 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %663, double %655)
  %665 = load ptr, ptr %7, align 8, !tbaa !9
  %666 = load i32, ptr %12, align 4, !tbaa !5
  %667 = load i32, ptr %8, align 4, !tbaa !5
  %668 = mul nsw i32 43, %667
  %669 = add nsw i32 %666, %668
  %670 = sext i32 %669 to i64
  %671 = getelementptr inbounds double, ptr %665, i64 %670
  %672 = load double, ptr %671, align 8, !tbaa !11
  %673 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %672, double %664)
  %674 = load ptr, ptr %7, align 8, !tbaa !9
  %675 = load i32, ptr %12, align 4, !tbaa !5
  %676 = load i32, ptr %8, align 4, !tbaa !5
  %677 = mul nsw i32 44, %676
  %678 = add nsw i32 %675, %677
  %679 = sext i32 %678 to i64
  %680 = getelementptr inbounds double, ptr %674, i64 %679
  %681 = load double, ptr %680, align 8, !tbaa !11
  %682 = call double @llvm.fmuladd.f64(double 0x3CB91FFFFFFFFFFF, double %681, double %673)
  %683 = load ptr, ptr %7, align 8, !tbaa !9
  %684 = load i32, ptr %12, align 4, !tbaa !5
  %685 = load i32, ptr %8, align 4, !tbaa !5
  %686 = mul nsw i32 45, %685
  %687 = add nsw i32 %684, %686
  %688 = sext i32 %687 to i64
  %689 = getelementptr inbounds double, ptr %683, i64 %688
  %690 = load double, ptr %689, align 8, !tbaa !11
  %691 = call double @llvm.fmuladd.f64(double 0x3CAE000000000002, double %690, double %682)
  %692 = load ptr, ptr %7, align 8, !tbaa !9
  %693 = load i32, ptr %12, align 4, !tbaa !5
  %694 = load i32, ptr %8, align 4, !tbaa !5
  %695 = mul nsw i32 46, %694
  %696 = add nsw i32 %693, %695
  %697 = sext i32 %696 to i64
  %698 = getelementptr inbounds double, ptr %692, i64 %697
  %699 = load double, ptr %698, align 8, !tbaa !11
  %700 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %699, double %691)
  %701 = load ptr, ptr %7, align 8, !tbaa !9
  %702 = load i32, ptr %12, align 4, !tbaa !5
  %703 = load i32, ptr %8, align 4, !tbaa !5
  %704 = mul nsw i32 47, %703
  %705 = add nsw i32 %702, %704
  %706 = sext i32 %705 to i64
  %707 = getelementptr inbounds double, ptr %701, i64 %706
  %708 = load double, ptr %707, align 8, !tbaa !11
  %709 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %708, double %700)
  %710 = load ptr, ptr %7, align 8, !tbaa !9
  %711 = load i32, ptr %12, align 4, !tbaa !5
  %712 = load i32, ptr %8, align 4, !tbaa !5
  %713 = mul nsw i32 48, %712
  %714 = add nsw i32 %711, %713
  %715 = sext i32 %714 to i64
  %716 = getelementptr inbounds double, ptr %710, i64 %715
  %717 = load double, ptr %716, align 8, !tbaa !11
  %718 = call double @llvm.fmuladd.f64(double 0x3CA7800000000001, double %717, double %709)
  %719 = load ptr, ptr %7, align 8, !tbaa !9
  %720 = load i32, ptr %12, align 4, !tbaa !5
  %721 = load i32, ptr %8, align 4, !tbaa !5
  %722 = mul nsw i32 49, %721
  %723 = add nsw i32 %720, %722
  %724 = sext i32 %723 to i64
  %725 = getelementptr inbounds double, ptr %719, i64 %724
  %726 = load double, ptr %725, align 8, !tbaa !11
  %727 = call double @llvm.fmuladd.f64(double 0x3CA2BFFFFFFFFFFF, double %726, double %718)
  %728 = load ptr, ptr %7, align 8, !tbaa !9
  %729 = load i32, ptr %12, align 4, !tbaa !5
  %730 = load i32, ptr %8, align 4, !tbaa !5
  %731 = mul nsw i32 50, %730
  %732 = add nsw i32 %729, %731
  %733 = sext i32 %732 to i64
  %734 = getelementptr inbounds double, ptr %728, i64 %733
  %735 = load double, ptr %734, align 8, !tbaa !11
  %736 = call double @llvm.fmuladd.f64(double 0x3C91000000000000, double %735, double %727)
  %737 = load ptr, ptr %7, align 8, !tbaa !9
  %738 = load i32, ptr %12, align 4, !tbaa !5
  %739 = load i32, ptr %8, align 4, !tbaa !5
  %740 = mul nsw i32 51, %739
  %741 = add nsw i32 %738, %740
  %742 = sext i32 %741 to i64
  %743 = getelementptr inbounds double, ptr %737, i64 %742
  %744 = load double, ptr %743, align 8, !tbaa !11
  %745 = call double @llvm.fmuladd.f64(double 0x3CA5FFFFFFFFFFFF, double %744, double %736)
  %746 = load ptr, ptr %7, align 8, !tbaa !9
  %747 = load i32, ptr %12, align 4, !tbaa !5
  %748 = load i32, ptr %8, align 4, !tbaa !5
  %749 = mul nsw i32 52, %748
  %750 = add nsw i32 %747, %749
  %751 = sext i32 %750 to i64
  %752 = getelementptr inbounds double, ptr %746, i64 %751
  %753 = load double, ptr %752, align 8, !tbaa !11
  %754 = call double @llvm.fmuladd.f64(double 0x400E488CB8C1EA66, double %753, double %745)
  %755 = load ptr, ptr %7, align 8, !tbaa !9
  %756 = load i32, ptr %12, align 4, !tbaa !5
  %757 = load i32, ptr %8, align 4, !tbaa !5
  %758 = mul nsw i32 53, %757
  %759 = add nsw i32 %756, %758
  %760 = sext i32 %759 to i64
  %761 = getelementptr inbounds double, ptr %755, i64 %760
  %762 = load double, ptr %761, align 8, !tbaa !11
  %763 = call double @llvm.fmuladd.f64(double 0x3FD4A299D1E9700C, double %762, double %754)
  %764 = load ptr, ptr %7, align 8, !tbaa !9
  %765 = load i32, ptr %12, align 4, !tbaa !5
  %766 = load i32, ptr %8, align 4, !tbaa !5
  %767 = mul nsw i32 54, %766
  %768 = add nsw i32 %765, %767
  %769 = sext i32 %768 to i64
  %770 = getelementptr inbounds double, ptr %764, i64 %769
  %771 = load double, ptr %770, align 8, !tbaa !11
  %772 = call double @llvm.fmuladd.f64(double 0xBFC5EA083165C4F9, double %771, double %763)
  %773 = load ptr, ptr %7, align 8, !tbaa !9
  %774 = load i32, ptr %12, align 4, !tbaa !5
  %775 = load i32, ptr %8, align 4, !tbaa !5
  %776 = mul nsw i32 55, %775
  %777 = add nsw i32 %774, %776
  %778 = sext i32 %777 to i64
  %779 = getelementptr inbounds double, ptr %773, i64 %778
  %780 = load double, ptr %779, align 8, !tbaa !11
  %781 = call double @llvm.fmuladd.f64(double 0x3FA462D8D66D7F94, double %780, double %772)
  %782 = load ptr, ptr %7, align 8, !tbaa !9
  %783 = load i32, ptr %12, align 4, !tbaa !5
  %784 = load i32, ptr %8, align 4, !tbaa !5
  %785 = mul nsw i32 56, %784
  %786 = add nsw i32 %783, %785
  %787 = sext i32 %786 to i64
  %788 = getelementptr inbounds double, ptr %782, i64 %787
  %789 = load double, ptr %788, align 8, !tbaa !11
  %790 = call double @llvm.fmuladd.f64(double 0x3C9152F9467969C8, double %789, double %781)
  %791 = load ptr, ptr %7, align 8, !tbaa !9
  %792 = load i32, ptr %12, align 4, !tbaa !5
  %793 = load i32, ptr %8, align 4, !tbaa !5
  %794 = mul nsw i32 57, %793
  %795 = add nsw i32 %792, %794
  %796 = sext i32 %795 to i64
  %797 = getelementptr inbounds double, ptr %791, i64 %796
  %798 = load double, ptr %797, align 8, !tbaa !11
  %799 = call double @llvm.fmuladd.f64(double 0xBCADB2CFE686FE7D, double %798, double %790)
  %800 = load ptr, ptr %7, align 8, !tbaa !9
  %801 = load i32, ptr %12, align 4, !tbaa !5
  %802 = load i32, ptr %8, align 4, !tbaa !5
  %803 = mul nsw i32 58, %802
  %804 = add nsw i32 %801, %803
  %805 = sext i32 %804 to i64
  %806 = getelementptr inbounds double, ptr %800, i64 %805
  %807 = load double, ptr %806, align 8, !tbaa !11
  %808 = call double @llvm.fmuladd.f64(double 0xBCA26280B3476095, double %807, double %799)
  %809 = load ptr, ptr %7, align 8, !tbaa !9
  %810 = load i32, ptr %12, align 4, !tbaa !5
  %811 = load i32, ptr %8, align 4, !tbaa !5
  %812 = mul nsw i32 59, %811
  %813 = add nsw i32 %810, %812
  %814 = sext i32 %813 to i64
  %815 = getelementptr inbounds double, ptr %809, i64 %814
  %816 = load double, ptr %815, align 8, !tbaa !11
  %817 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %816, double %808)
  %818 = load ptr, ptr %7, align 8, !tbaa !9
  %819 = load i32, ptr %12, align 4, !tbaa !5
  %820 = load i32, ptr %8, align 4, !tbaa !5
  %821 = mul nsw i32 60, %820
  %822 = add nsw i32 %819, %821
  %823 = sext i32 %822 to i64
  %824 = getelementptr inbounds double, ptr %818, i64 %823
  %825 = load double, ptr %824, align 8, !tbaa !11
  %826 = call double @llvm.fmuladd.f64(double 0xBCAF4A1B09BBF0AE, double %825, double %817)
  %827 = load ptr, ptr %7, align 8, !tbaa !9
  %828 = load i32, ptr %12, align 4, !tbaa !5
  %829 = load i32, ptr %8, align 4, !tbaa !5
  %830 = mul nsw i32 61, %829
  %831 = add nsw i32 %828, %830
  %832 = sext i32 %831 to i64
  %833 = getelementptr inbounds double, ptr %827, i64 %832
  %834 = load double, ptr %833, align 8, !tbaa !11
  %835 = call double @llvm.fmuladd.f64(double 0x3CADB2CFE686FE7D, double %834, double %826)
  %836 = load ptr, ptr %7, align 8, !tbaa !9
  %837 = load i32, ptr %12, align 4, !tbaa !5
  %838 = load i32, ptr %8, align 4, !tbaa !5
  %839 = mul nsw i32 62, %838
  %840 = add nsw i32 %837, %839
  %841 = sext i32 %840 to i64
  %842 = getelementptr inbounds double, ptr %836, i64 %841
  %843 = load double, ptr %842, align 8, !tbaa !11
  %844 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %843, double %835)
  %845 = load ptr, ptr %7, align 8, !tbaa !9
  %846 = load i32, ptr %12, align 4, !tbaa !5
  %847 = load i32, ptr %8, align 4, !tbaa !5
  %848 = mul nsw i32 63, %847
  %849 = add nsw i32 %846, %848
  %850 = sext i32 %849 to i64
  %851 = getelementptr inbounds double, ptr %845, i64 %850
  %852 = load double, ptr %851, align 8, !tbaa !11
  %853 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %852, double %844)
  %854 = load ptr, ptr %7, align 8, !tbaa !9
  %855 = load i32, ptr %12, align 4, !tbaa !5
  %856 = load i32, ptr %8, align 4, !tbaa !5
  %857 = mul nsw i32 64, %856
  %858 = add nsw i32 %855, %857
  %859 = sext i32 %858 to i64
  %860 = getelementptr inbounds double, ptr %854, i64 %859
  %861 = load double, ptr %860, align 8, !tbaa !11
  %862 = call double @llvm.fmuladd.f64(double 0x3CC689FDC818BC8F, double %861, double %853)
  %863 = load ptr, ptr %7, align 8, !tbaa !9
  %864 = load i32, ptr %12, align 4, !tbaa !5
  %865 = load i32, ptr %8, align 4, !tbaa !5
  %866 = mul nsw i32 65, %865
  %867 = add nsw i32 %864, %866
  %868 = sext i32 %867 to i64
  %869 = getelementptr inbounds double, ptr %863, i64 %868
  %870 = load double, ptr %869, align 8, !tbaa !11
  %871 = call double @llvm.fmuladd.f64(double 0x3CB16999E4DFE903, double %870, double %862)
  %872 = load ptr, ptr %7, align 8, !tbaa !9
  %873 = load i32, ptr %12, align 4, !tbaa !5
  %874 = load i32, ptr %8, align 4, !tbaa !5
  %875 = mul nsw i32 66, %874
  %876 = add nsw i32 %873, %875
  %877 = sext i32 %876 to i64
  %878 = getelementptr inbounds double, ptr %872, i64 %877
  %879 = load double, ptr %878, align 8, !tbaa !11
  %880 = call double @llvm.fmuladd.f64(double 0xBC880AA84CE72F89, double %879, double %871)
  %881 = load ptr, ptr %7, align 8, !tbaa !9
  %882 = load i32, ptr %12, align 4, !tbaa !5
  %883 = load i32, ptr %8, align 4, !tbaa !5
  %884 = mul nsw i32 67, %883
  %885 = add nsw i32 %882, %884
  %886 = sext i32 %885 to i64
  %887 = getelementptr inbounds double, ptr %881, i64 %886
  %888 = load double, ptr %887, align 8, !tbaa !11
  %889 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %888, double %880)
  store double %889, ptr %11, align 8, !tbaa !11
  %890 = load double, ptr %11, align 8, !tbaa !11
  %891 = load ptr, ptr %9, align 8, !tbaa !9
  %892 = load i32, ptr %12, align 4, !tbaa !5
  %893 = load i32, ptr %10, align 4, !tbaa !5
  %894 = mul nsw i32 2, %893
  %895 = add nsw i32 %892, %894
  %896 = sext i32 %895 to i64
  %897 = getelementptr inbounds double, ptr %891, i64 %896
  store double %890, ptr %897, align 8, !tbaa !11
  %898 = load ptr, ptr %7, align 8, !tbaa !9
  %899 = load i32, ptr %12, align 4, !tbaa !5
  %900 = load i32, ptr %8, align 4, !tbaa !5
  %901 = mul nsw i32 36, %900
  %902 = add nsw i32 %899, %901
  %903 = sext i32 %902 to i64
  %904 = getelementptr inbounds double, ptr %898, i64 %903
  %905 = load double, ptr %904, align 8, !tbaa !11
  %906 = load ptr, ptr %7, align 8, !tbaa !9
  %907 = load i32, ptr %12, align 4, !tbaa !5
  %908 = load i32, ptr %8, align 4, !tbaa !5
  %909 = mul nsw i32 37, %908
  %910 = add nsw i32 %907, %909
  %911 = sext i32 %910 to i64
  %912 = getelementptr inbounds double, ptr %906, i64 %911
  %913 = load double, ptr %912, align 8, !tbaa !11
  %914 = fmul double 0xBFDD2EB9CCB3BDE4, %913
  %915 = call double @llvm.fmuladd.f64(double 0xC01569E165D79412, double %905, double %914)
  %916 = load ptr, ptr %7, align 8, !tbaa !9
  %917 = load i32, ptr %12, align 4, !tbaa !5
  %918 = load i32, ptr %8, align 4, !tbaa !5
  %919 = mul nsw i32 38, %918
  %920 = add nsw i32 %917, %919
  %921 = sext i32 %920 to i64
  %922 = getelementptr inbounds double, ptr %916, i64 %921
  %923 = load double, ptr %922, align 8, !tbaa !11
  %924 = call double @llvm.fmuladd.f64(double 0x3FCEFDC8894D0822, double %923, double %915)
  %925 = load ptr, ptr %7, align 8, !tbaa !9
  %926 = load i32, ptr %12, align 4, !tbaa !5
  %927 = load i32, ptr %8, align 4, !tbaa !5
  %928 = mul nsw i32 39, %927
  %929 = add nsw i32 %926, %928
  %930 = sext i32 %929 to i64
  %931 = getelementptr inbounds double, ptr %925, i64 %930
  %932 = load double, ptr %931, align 8, !tbaa !11
  %933 = call double @llvm.fmuladd.f64(double 0xBFACD49071EC5F0E, double %932, double %924)
  %934 = load ptr, ptr %7, align 8, !tbaa !9
  %935 = load i32, ptr %12, align 4, !tbaa !5
  %936 = load i32, ptr %8, align 4, !tbaa !5
  %937 = mul nsw i32 40, %936
  %938 = add nsw i32 %935, %937
  %939 = sext i32 %938 to i64
  %940 = getelementptr inbounds double, ptr %934, i64 %939
  %941 = load double, ptr %940, align 8, !tbaa !11
  %942 = call double @llvm.fmuladd.f64(double 0x3C91800000000000, double %941, double %933)
  %943 = load ptr, ptr %7, align 8, !tbaa !9
  %944 = load i32, ptr %12, align 4, !tbaa !5
  %945 = load i32, ptr %8, align 4, !tbaa !5
  %946 = mul nsw i32 41, %945
  %947 = add nsw i32 %944, %946
  %948 = sext i32 %947 to i64
  %949 = getelementptr inbounds double, ptr %943, i64 %948
  %950 = load double, ptr %949, align 8, !tbaa !11
  %951 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %950, double %942)
  %952 = load ptr, ptr %7, align 8, !tbaa !9
  %953 = load i32, ptr %12, align 4, !tbaa !5
  %954 = load i32, ptr %8, align 4, !tbaa !5
  %955 = mul nsw i32 42, %954
  %956 = add nsw i32 %953, %955
  %957 = sext i32 %956 to i64
  %958 = getelementptr inbounds double, ptr %952, i64 %957
  %959 = load double, ptr %958, align 8, !tbaa !11
  %960 = call double @llvm.fmuladd.f64(double 0x3CB9000000000000, double %959, double %951)
  %961 = load ptr, ptr %7, align 8, !tbaa !9
  %962 = load i32, ptr %12, align 4, !tbaa !5
  %963 = load i32, ptr %8, align 4, !tbaa !5
  %964 = mul nsw i32 43, %963
  %965 = add nsw i32 %962, %964
  %966 = sext i32 %965 to i64
  %967 = getelementptr inbounds double, ptr %961, i64 %966
  %968 = load double, ptr %967, align 8, !tbaa !11
  %969 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %968, double %960)
  %970 = load ptr, ptr %7, align 8, !tbaa !9
  %971 = load i32, ptr %12, align 4, !tbaa !5
  %972 = load i32, ptr %8, align 4, !tbaa !5
  %973 = mul nsw i32 44, %972
  %974 = add nsw i32 %971, %973
  %975 = sext i32 %974 to i64
  %976 = getelementptr inbounds double, ptr %970, i64 %975
  %977 = load double, ptr %976, align 8, !tbaa !11
  %978 = call double @llvm.fmuladd.f64(double 0x3CA7400000000002, double %977, double %969)
  %979 = load ptr, ptr %7, align 8, !tbaa !9
  %980 = load i32, ptr %12, align 4, !tbaa !5
  %981 = load i32, ptr %8, align 4, !tbaa !5
  %982 = mul nsw i32 45, %981
  %983 = add nsw i32 %980, %982
  %984 = sext i32 %983 to i64
  %985 = getelementptr inbounds double, ptr %979, i64 %984
  %986 = load double, ptr %985, align 8, !tbaa !11
  %987 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %986, double %978)
  %988 = load ptr, ptr %7, align 8, !tbaa !9
  %989 = load i32, ptr %12, align 4, !tbaa !5
  %990 = load i32, ptr %8, align 4, !tbaa !5
  %991 = mul nsw i32 46, %990
  %992 = add nsw i32 %989, %991
  %993 = sext i32 %992 to i64
  %994 = getelementptr inbounds double, ptr %988, i64 %993
  %995 = load double, ptr %994, align 8, !tbaa !11
  %996 = call double @llvm.fmuladd.f64(double 0x3CB7000000000000, double %995, double %987)
  %997 = load ptr, ptr %7, align 8, !tbaa !9
  %998 = load i32, ptr %12, align 4, !tbaa !5
  %999 = load i32, ptr %8, align 4, !tbaa !5
  %1000 = mul nsw i32 47, %999
  %1001 = add nsw i32 %998, %1000
  %1002 = sext i32 %1001 to i64
  %1003 = getelementptr inbounds double, ptr %997, i64 %1002
  %1004 = load double, ptr %1003, align 8, !tbaa !11
  %1005 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %1004, double %996)
  %1006 = load ptr, ptr %7, align 8, !tbaa !9
  %1007 = load i32, ptr %12, align 4, !tbaa !5
  %1008 = load i32, ptr %8, align 4, !tbaa !5
  %1009 = mul nsw i32 48, %1008
  %1010 = add nsw i32 %1007, %1009
  %1011 = sext i32 %1010 to i64
  %1012 = getelementptr inbounds double, ptr %1006, i64 %1011
  %1013 = load double, ptr %1012, align 8, !tbaa !11
  %1014 = call double @llvm.fmuladd.f64(double 0xBCC2000000000000, double %1013, double %1005)
  %1015 = load ptr, ptr %7, align 8, !tbaa !9
  %1016 = load i32, ptr %12, align 4, !tbaa !5
  %1017 = load i32, ptr %8, align 4, !tbaa !5
  %1018 = mul nsw i32 49, %1017
  %1019 = add nsw i32 %1016, %1018
  %1020 = sext i32 %1019 to i64
  %1021 = getelementptr inbounds double, ptr %1015, i64 %1020
  %1022 = load double, ptr %1021, align 8, !tbaa !11
  %1023 = call double @llvm.fmuladd.f64(double 0xBCA5400000000000, double %1022, double %1014)
  %1024 = load ptr, ptr %7, align 8, !tbaa !9
  %1025 = load i32, ptr %12, align 4, !tbaa !5
  %1026 = load i32, ptr %8, align 4, !tbaa !5
  %1027 = mul nsw i32 50, %1026
  %1028 = add nsw i32 %1025, %1027
  %1029 = sext i32 %1028 to i64
  %1030 = getelementptr inbounds double, ptr %1024, i64 %1029
  %1031 = load double, ptr %1030, align 8, !tbaa !11
  %1032 = call double @llvm.fmuladd.f64(double 0x3CAA800000000002, double %1031, double %1023)
  %1033 = load ptr, ptr %7, align 8, !tbaa !9
  %1034 = load i32, ptr %12, align 4, !tbaa !5
  %1035 = load i32, ptr %8, align 4, !tbaa !5
  %1036 = mul nsw i32 51, %1035
  %1037 = add nsw i32 %1034, %1036
  %1038 = sext i32 %1037 to i64
  %1039 = getelementptr inbounds double, ptr %1033, i64 %1038
  %1040 = load double, ptr %1039, align 8, !tbaa !11
  %1041 = call double @llvm.fmuladd.f64(double 0x3CA9000000000000, double %1040, double %1032)
  %1042 = load ptr, ptr %7, align 8, !tbaa !9
  %1043 = load i32, ptr %12, align 4, !tbaa !5
  %1044 = load i32, ptr %8, align 4, !tbaa !5
  %1045 = mul nsw i32 52, %1044
  %1046 = add nsw i32 %1043, %1045
  %1047 = sext i32 %1046 to i64
  %1048 = getelementptr inbounds double, ptr %1042, i64 %1047
  %1049 = load double, ptr %1048, align 8, !tbaa !11
  %1050 = call double @llvm.fmuladd.f64(double 0xBFD039FE04F7163A, double %1049, double %1041)
  %1051 = load ptr, ptr %7, align 8, !tbaa !9
  %1052 = load i32, ptr %12, align 4, !tbaa !5
  %1053 = load i32, ptr %8, align 4, !tbaa !5
  %1054 = mul nsw i32 53, %1053
  %1055 = add nsw i32 %1052, %1054
  %1056 = sext i32 %1055 to i64
  %1057 = getelementptr inbounds double, ptr %1051, i64 %1056
  %1058 = load double, ptr %1057, align 8, !tbaa !11
  %1059 = call double @llvm.fmuladd.f64(double 0xBFE30958FBF81242, double %1058, double %1050)
  %1060 = load ptr, ptr %7, align 8, !tbaa !9
  %1061 = load i32, ptr %12, align 4, !tbaa !5
  %1062 = load i32, ptr %8, align 4, !tbaa !5
  %1063 = mul nsw i32 54, %1062
  %1064 = add nsw i32 %1061, %1063
  %1065 = sext i32 %1064 to i64
  %1066 = getelementptr inbounds double, ptr %1060, i64 %1065
  %1067 = load double, ptr %1066, align 8, !tbaa !11
  %1068 = call double @llvm.fmuladd.f64(double 0xBFE30958FBF81231, double %1067, double %1059)
  %1069 = load ptr, ptr %7, align 8, !tbaa !9
  %1070 = load i32, ptr %12, align 4, !tbaa !5
  %1071 = load i32, ptr %8, align 4, !tbaa !5
  %1072 = mul nsw i32 55, %1071
  %1073 = add nsw i32 %1070, %1072
  %1074 = sext i32 %1073 to i64
  %1075 = getelementptr inbounds double, ptr %1069, i64 %1074
  %1076 = load double, ptr %1075, align 8, !tbaa !11
  %1077 = call double @llvm.fmuladd.f64(double 0xBFD039FE04F71632, double %1076, double %1068)
  %1078 = load ptr, ptr %7, align 8, !tbaa !9
  %1079 = load i32, ptr %12, align 4, !tbaa !5
  %1080 = load i32, ptr %8, align 4, !tbaa !5
  %1081 = mul nsw i32 56, %1080
  %1082 = add nsw i32 %1079, %1081
  %1083 = sext i32 %1082 to i64
  %1084 = getelementptr inbounds double, ptr %1078, i64 %1083
  %1085 = load double, ptr %1084, align 8, !tbaa !11
  %1086 = call double @llvm.fmuladd.f64(double 0x3C959116F9B144FE, double %1085, double %1077)
  %1087 = load ptr, ptr %7, align 8, !tbaa !9
  %1088 = load i32, ptr %12, align 4, !tbaa !5
  %1089 = load i32, ptr %8, align 4, !tbaa !5
  %1090 = mul nsw i32 57, %1089
  %1091 = add nsw i32 %1088, %1090
  %1092 = sext i32 %1091 to i64
  %1093 = getelementptr inbounds double, ptr %1087, i64 %1092
  %1094 = load double, ptr %1093, align 8, !tbaa !11
  %1095 = call double @llvm.fmuladd.f64(double 0xBCA80AA84CE72F89, double %1094, double %1086)
  %1096 = load ptr, ptr %7, align 8, !tbaa !9
  %1097 = load i32, ptr %12, align 4, !tbaa !5
  %1098 = load i32, ptr %8, align 4, !tbaa !5
  %1099 = mul nsw i32 58, %1098
  %1100 = add nsw i32 %1097, %1099
  %1101 = sext i32 %1100 to i64
  %1102 = getelementptr inbounds double, ptr %1096, i64 %1101
  %1103 = load double, ptr %1102, align 8, !tbaa !11
  %1104 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %1103, double %1095)
  %1105 = load ptr, ptr %7, align 8, !tbaa !9
  %1106 = load i32, ptr %12, align 4, !tbaa !5
  %1107 = load i32, ptr %8, align 4, !tbaa !5
  %1108 = mul nsw i32 59, %1107
  %1109 = add nsw i32 %1106, %1108
  %1110 = sext i32 %1109 to i64
  %1111 = getelementptr inbounds double, ptr %1105, i64 %1110
  %1112 = load double, ptr %1111, align 8, !tbaa !11
  %1113 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %1112, double %1104)
  %1114 = load ptr, ptr %7, align 8, !tbaa !9
  %1115 = load i32, ptr %12, align 4, !tbaa !5
  %1116 = load i32, ptr %8, align 4, !tbaa !5
  %1117 = mul nsw i32 60, %1116
  %1118 = add nsw i32 %1115, %1117
  %1119 = sext i32 %1118 to i64
  %1120 = getelementptr inbounds double, ptr %1114, i64 %1119
  %1121 = load double, ptr %1120, align 8, !tbaa !11
  %1122 = call double @llvm.fmuladd.f64(double 0xBCB0B494F1ABEF27, double %1121, double %1113)
  %1123 = load ptr, ptr %7, align 8, !tbaa !9
  %1124 = load i32, ptr %12, align 4, !tbaa !5
  %1125 = load i32, ptr %8, align 4, !tbaa !5
  %1126 = mul nsw i32 61, %1125
  %1127 = add nsw i32 %1124, %1126
  %1128 = sext i32 %1127 to i64
  %1129 = getelementptr inbounds double, ptr %1123, i64 %1128
  %1130 = load double, ptr %1129, align 8, !tbaa !11
  %1131 = call double @llvm.fmuladd.f64(double 0xBCA536948017480F, double %1130, double %1122)
  %1132 = load ptr, ptr %7, align 8, !tbaa !9
  %1133 = load i32, ptr %12, align 4, !tbaa !5
  %1134 = load i32, ptr %8, align 4, !tbaa !5
  %1135 = mul nsw i32 62, %1134
  %1136 = add nsw i32 %1133, %1135
  %1137 = sext i32 %1136 to i64
  %1138 = getelementptr inbounds double, ptr %1132, i64 %1137
  %1139 = load double, ptr %1138, align 8, !tbaa !11
  %1140 = call double @llvm.fmuladd.f64(double 0x3CADB2CFE686FE7D, double %1139, double %1131)
  %1141 = load ptr, ptr %7, align 8, !tbaa !9
  %1142 = load i32, ptr %12, align 4, !tbaa !5
  %1143 = load i32, ptr %8, align 4, !tbaa !5
  %1144 = mul nsw i32 63, %1143
  %1145 = add nsw i32 %1142, %1144
  %1146 = sext i32 %1145 to i64
  %1147 = getelementptr inbounds double, ptr %1141, i64 %1146
  %1148 = load double, ptr %1147, align 8, !tbaa !11
  %1149 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %1148, double %1140)
  %1150 = load ptr, ptr %7, align 8, !tbaa !9
  %1151 = load i32, ptr %12, align 4, !tbaa !5
  %1152 = load i32, ptr %8, align 4, !tbaa !5
  %1153 = mul nsw i32 64, %1152
  %1154 = add nsw i32 %1151, %1153
  %1155 = sext i32 %1154 to i64
  %1156 = getelementptr inbounds double, ptr %1150, i64 %1155
  %1157 = load double, ptr %1156, align 8, !tbaa !11
  %1158 = call double @llvm.fmuladd.f64(double 0xBC9F1CD9CCEEF236, double %1157, double %1149)
  %1159 = load ptr, ptr %7, align 8, !tbaa !9
  %1160 = load i32, ptr %12, align 4, !tbaa !5
  %1161 = load i32, ptr %8, align 4, !tbaa !5
  %1162 = mul nsw i32 65, %1161
  %1163 = add nsw i32 %1160, %1162
  %1164 = sext i32 %1163 to i64
  %1165 = getelementptr inbounds double, ptr %1159, i64 %1164
  %1166 = load double, ptr %1165, align 8, !tbaa !11
  %1167 = call double @llvm.fmuladd.f64(double 0xBCA016309CDE7482, double %1166, double %1158)
  %1168 = load ptr, ptr %7, align 8, !tbaa !9
  %1169 = load i32, ptr %12, align 4, !tbaa !5
  %1170 = load i32, ptr %8, align 4, !tbaa !5
  %1171 = mul nsw i32 66, %1170
  %1172 = add nsw i32 %1169, %1171
  %1173 = sext i32 %1172 to i64
  %1174 = getelementptr inbounds double, ptr %1168, i64 %1173
  %1175 = load double, ptr %1174, align 8, !tbaa !11
  %1176 = call double @llvm.fmuladd.f64(double 0x3C98BFAD401B2967, double %1175, double %1167)
  %1177 = load ptr, ptr %7, align 8, !tbaa !9
  %1178 = load i32, ptr %12, align 4, !tbaa !5
  %1179 = load i32, ptr %8, align 4, !tbaa !5
  %1180 = mul nsw i32 67, %1179
  %1181 = add nsw i32 %1178, %1180
  %1182 = sext i32 %1181 to i64
  %1183 = getelementptr inbounds double, ptr %1177, i64 %1182
  %1184 = load double, ptr %1183, align 8, !tbaa !11
  %1185 = call double @llvm.fmuladd.f64(double 0xBC93CC8A99AF5452, double %1184, double %1176)
  store double %1185, ptr %11, align 8, !tbaa !11
  %1186 = load double, ptr %11, align 8, !tbaa !11
  %1187 = load ptr, ptr %9, align 8, !tbaa !9
  %1188 = load i32, ptr %12, align 4, !tbaa !5
  %1189 = load i32, ptr %10, align 4, !tbaa !5
  %1190 = mul nsw i32 3, %1189
  %1191 = add nsw i32 %1188, %1190
  %1192 = sext i32 %1191 to i64
  %1193 = getelementptr inbounds double, ptr %1187, i64 %1192
  store double %1186, ptr %1193, align 8, !tbaa !11
  %1194 = load ptr, ptr %7, align 8, !tbaa !9
  %1195 = load i32, ptr %12, align 4, !tbaa !5
  %1196 = load i32, ptr %8, align 4, !tbaa !5
  %1197 = mul nsw i32 36, %1196
  %1198 = add nsw i32 %1195, %1197
  %1199 = sext i32 %1198 to i64
  %1200 = getelementptr inbounds double, ptr %1194, i64 %1199
  %1201 = load double, ptr %1200, align 8, !tbaa !11
  %1202 = load ptr, ptr %7, align 8, !tbaa !9
  %1203 = load i32, ptr %12, align 4, !tbaa !5
  %1204 = load i32, ptr %8, align 4, !tbaa !5
  %1205 = mul nsw i32 37, %1204
  %1206 = add nsw i32 %1203, %1205
  %1207 = sext i32 %1206 to i64
  %1208 = getelementptr inbounds double, ptr %1202, i64 %1207
  %1209 = load double, ptr %1208, align 8, !tbaa !11
  %1210 = fmul double 0xBFD4C0B9406BCBDE, %1209
  %1211 = call double @llvm.fmuladd.f64(double 0x3F980EB0AE1D48E6, double %1201, double %1210)
  %1212 = load ptr, ptr %7, align 8, !tbaa !9
  %1213 = load i32, ptr %12, align 4, !tbaa !5
  %1214 = load i32, ptr %8, align 4, !tbaa !5
  %1215 = mul nsw i32 38, %1214
  %1216 = add nsw i32 %1213, %1215
  %1217 = sext i32 %1216 to i64
  %1218 = getelementptr inbounds double, ptr %1212, i64 %1217
  %1219 = load double, ptr %1218, align 8, !tbaa !11
  %1220 = call double @llvm.fmuladd.f64(double 0xBFEBF462FB348EF6, double %1219, double %1211)
  %1221 = load ptr, ptr %7, align 8, !tbaa !9
  %1222 = load i32, ptr %12, align 4, !tbaa !5
  %1223 = load i32, ptr %8, align 4, !tbaa !5
  %1224 = mul nsw i32 39, %1223
  %1225 = add nsw i32 %1222, %1224
  %1226 = sext i32 %1225 to i64
  %1227 = getelementptr inbounds double, ptr %1221, i64 %1226
  %1228 = load double, ptr %1227, align 8, !tbaa !11
  %1229 = call double @llvm.fmuladd.f64(double 0xBFE002F9665DF3D7, double %1228, double %1220)
  %1230 = load ptr, ptr %7, align 8, !tbaa !9
  %1231 = load i32, ptr %12, align 4, !tbaa !5
  %1232 = load i32, ptr %8, align 4, !tbaa !5
  %1233 = mul nsw i32 40, %1232
  %1234 = add nsw i32 %1231, %1233
  %1235 = sext i32 %1234 to i64
  %1236 = getelementptr inbounds double, ptr %1230, i64 %1235
  %1237 = load double, ptr %1236, align 8, !tbaa !11
  %1238 = call double @llvm.fmuladd.f64(double 0xBC99800000000000, double %1237, double %1229)
  %1239 = load ptr, ptr %7, align 8, !tbaa !9
  %1240 = load i32, ptr %12, align 4, !tbaa !5
  %1241 = load i32, ptr %8, align 4, !tbaa !5
  %1242 = mul nsw i32 41, %1241
  %1243 = add nsw i32 %1240, %1242
  %1244 = sext i32 %1243 to i64
  %1245 = getelementptr inbounds double, ptr %1239, i64 %1244
  %1246 = load double, ptr %1245, align 8, !tbaa !11
  %1247 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %1246, double %1238)
  %1248 = load ptr, ptr %7, align 8, !tbaa !9
  %1249 = load i32, ptr %12, align 4, !tbaa !5
  %1250 = load i32, ptr %8, align 4, !tbaa !5
  %1251 = mul nsw i32 42, %1250
  %1252 = add nsw i32 %1249, %1251
  %1253 = sext i32 %1252 to i64
  %1254 = getelementptr inbounds double, ptr %1248, i64 %1253
  %1255 = load double, ptr %1254, align 8, !tbaa !11
  %1256 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %1255, double %1247)
  %1257 = load ptr, ptr %7, align 8, !tbaa !9
  %1258 = load i32, ptr %12, align 4, !tbaa !5
  %1259 = load i32, ptr %8, align 4, !tbaa !5
  %1260 = mul nsw i32 44, %1259
  %1261 = add nsw i32 %1258, %1260
  %1262 = sext i32 %1261 to i64
  %1263 = getelementptr inbounds double, ptr %1257, i64 %1262
  %1264 = load double, ptr %1263, align 8, !tbaa !11
  %1265 = call double @llvm.fmuladd.f64(double 0x3C91800000000000, double %1264, double %1256)
  %1266 = load ptr, ptr %7, align 8, !tbaa !9
  %1267 = load i32, ptr %12, align 4, !tbaa !5
  %1268 = load i32, ptr %8, align 4, !tbaa !5
  %1269 = mul nsw i32 45, %1268
  %1270 = add nsw i32 %1267, %1269
  %1271 = sext i32 %1270 to i64
  %1272 = getelementptr inbounds double, ptr %1266, i64 %1271
  %1273 = load double, ptr %1272, align 8, !tbaa !11
  %1274 = call double @llvm.fmuladd.f64(double 0x3CA7000000000002, double %1273, double %1265)
  %1275 = load ptr, ptr %7, align 8, !tbaa !9
  %1276 = load i32, ptr %12, align 4, !tbaa !5
  %1277 = load i32, ptr %8, align 4, !tbaa !5
  %1278 = mul nsw i32 46, %1277
  %1279 = add nsw i32 %1276, %1278
  %1280 = sext i32 %1279 to i64
  %1281 = getelementptr inbounds double, ptr %1275, i64 %1280
  %1282 = load double, ptr %1281, align 8, !tbaa !11
  %1283 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %1282, double %1274)
  %1284 = load ptr, ptr %7, align 8, !tbaa !9
  %1285 = load i32, ptr %12, align 4, !tbaa !5
  %1286 = load i32, ptr %8, align 4, !tbaa !5
  %1287 = mul nsw i32 47, %1286
  %1288 = add nsw i32 %1285, %1287
  %1289 = sext i32 %1288 to i64
  %1290 = getelementptr inbounds double, ptr %1284, i64 %1289
  %1291 = load double, ptr %1290, align 8, !tbaa !11
  %1292 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %1291, double %1283)
  %1293 = load ptr, ptr %7, align 8, !tbaa !9
  %1294 = load i32, ptr %12, align 4, !tbaa !5
  %1295 = load i32, ptr %8, align 4, !tbaa !5
  %1296 = mul nsw i32 48, %1295
  %1297 = add nsw i32 %1294, %1296
  %1298 = sext i32 %1297 to i64
  %1299 = getelementptr inbounds double, ptr %1293, i64 %1298
  %1300 = load double, ptr %1299, align 8, !tbaa !11
  %1301 = call double @llvm.fmuladd.f64(double 0x3C98400000000000, double %1300, double %1292)
  %1302 = load ptr, ptr %7, align 8, !tbaa !9
  %1303 = load i32, ptr %12, align 4, !tbaa !5
  %1304 = load i32, ptr %8, align 4, !tbaa !5
  %1305 = mul nsw i32 49, %1304
  %1306 = add nsw i32 %1303, %1305
  %1307 = sext i32 %1306 to i64
  %1308 = getelementptr inbounds double, ptr %1302, i64 %1307
  %1309 = load double, ptr %1308, align 8, !tbaa !11
  %1310 = call double @llvm.fmuladd.f64(double 0xBC99000000000000, double %1309, double %1301)
  %1311 = load ptr, ptr %7, align 8, !tbaa !9
  %1312 = load i32, ptr %12, align 4, !tbaa !5
  %1313 = load i32, ptr %8, align 4, !tbaa !5
  %1314 = mul nsw i32 50, %1313
  %1315 = add nsw i32 %1312, %1314
  %1316 = sext i32 %1315 to i64
  %1317 = getelementptr inbounds double, ptr %1311, i64 %1316
  %1318 = load double, ptr %1317, align 8, !tbaa !11
  %1319 = call double @llvm.fmuladd.f64(double 0xBCAE000000000002, double %1318, double %1310)
  %1320 = load ptr, ptr %7, align 8, !tbaa !9
  %1321 = load i32, ptr %12, align 4, !tbaa !5
  %1322 = load i32, ptr %8, align 4, !tbaa !5
  %1323 = mul nsw i32 51, %1322
  %1324 = add nsw i32 %1321, %1323
  %1325 = sext i32 %1324 to i64
  %1326 = getelementptr inbounds double, ptr %1320, i64 %1325
  %1327 = load double, ptr %1326, align 8, !tbaa !11
  %1328 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %1327, double %1319)
  %1329 = load ptr, ptr %7, align 8, !tbaa !9
  %1330 = load i32, ptr %12, align 4, !tbaa !5
  %1331 = load i32, ptr %8, align 4, !tbaa !5
  %1332 = mul nsw i32 52, %1331
  %1333 = add nsw i32 %1330, %1332
  %1334 = sext i32 %1333 to i64
  %1335 = getelementptr inbounds double, ptr %1329, i64 %1334
  %1336 = load double, ptr %1335, align 8, !tbaa !11
  %1337 = call double @llvm.fmuladd.f64(double 0x3FD08C54FF101A12, double %1336, double %1328)
  %1338 = load ptr, ptr %7, align 8, !tbaa !9
  %1339 = load i32, ptr %12, align 4, !tbaa !5
  %1340 = load i32, ptr %8, align 4, !tbaa !5
  %1341 = mul nsw i32 53, %1340
  %1342 = add nsw i32 %1339, %1341
  %1343 = sext i32 %1342 to i64
  %1344 = getelementptr inbounds double, ptr %1338, i64 %1343
  %1345 = load double, ptr %1344, align 8, !tbaa !11
  %1346 = call double @llvm.fmuladd.f64(double 0x4007001BD846D0B0, double %1345, double %1337)
  %1347 = load ptr, ptr %7, align 8, !tbaa !9
  %1348 = load i32, ptr %12, align 4, !tbaa !5
  %1349 = load i32, ptr %8, align 4, !tbaa !5
  %1350 = mul nsw i32 54, %1349
  %1351 = add nsw i32 %1348, %1350
  %1352 = sext i32 %1351 to i64
  %1353 = getelementptr inbounds double, ptr %1347, i64 %1352
  %1354 = load double, ptr %1353, align 8, !tbaa !11
  %1355 = call double @llvm.fmuladd.f64(double 0x3FD0C7817D9C3131, double %1354, double %1346)
  %1356 = load ptr, ptr %7, align 8, !tbaa !9
  %1357 = load i32, ptr %12, align 4, !tbaa !5
  %1358 = load i32, ptr %8, align 4, !tbaa !5
  %1359 = mul nsw i32 55, %1358
  %1360 = add nsw i32 %1357, %1359
  %1361 = sext i32 %1360 to i64
  %1362 = getelementptr inbounds double, ptr %1356, i64 %1361
  %1363 = load double, ptr %1362, align 8, !tbaa !11
  %1364 = call double @llvm.fmuladd.f64(double 0xBFB8DF388696F54B, double %1363, double %1355)
  %1365 = load ptr, ptr %7, align 8, !tbaa !9
  %1366 = load i32, ptr %12, align 4, !tbaa !5
  %1367 = load i32, ptr %8, align 4, !tbaa !5
  %1368 = mul nsw i32 56, %1367
  %1369 = add nsw i32 %1366, %1368
  %1370 = sext i32 %1369 to i64
  %1371 = getelementptr inbounds double, ptr %1365, i64 %1370
  %1372 = load double, ptr %1371, align 8, !tbaa !11
  %1373 = call double @llvm.fmuladd.f64(double 0xBC8CFDCAF353049C, double %1372, double %1364)
  %1374 = load ptr, ptr %7, align 8, !tbaa !9
  %1375 = load i32, ptr %12, align 4, !tbaa !5
  %1376 = load i32, ptr %8, align 4, !tbaa !5
  %1377 = mul nsw i32 57, %1376
  %1378 = add nsw i32 %1375, %1377
  %1379 = sext i32 %1378 to i64
  %1380 = getelementptr inbounds double, ptr %1374, i64 %1379
  %1381 = load double, ptr %1380, align 8, !tbaa !11
  %1382 = call double @llvm.fmuladd.f64(double 0x3CB6461BECE53EDD, double %1381, double %1373)
  %1383 = load ptr, ptr %7, align 8, !tbaa !9
  %1384 = load i32, ptr %12, align 4, !tbaa !5
  %1385 = load i32, ptr %8, align 4, !tbaa !5
  %1386 = mul nsw i32 58, %1385
  %1387 = add nsw i32 %1384, %1386
  %1388 = sext i32 %1387 to i64
  %1389 = getelementptr inbounds double, ptr %1383, i64 %1388
  %1390 = load double, ptr %1389, align 8, !tbaa !11
  %1391 = call double @llvm.fmuladd.f64(double 0x3CA3CC8A99AF5452, double %1390, double %1382)
  %1392 = load ptr, ptr %7, align 8, !tbaa !9
  %1393 = load i32, ptr %12, align 4, !tbaa !5
  %1394 = load i32, ptr %8, align 4, !tbaa !5
  %1395 = mul nsw i32 59, %1394
  %1396 = add nsw i32 %1393, %1395
  %1397 = sext i32 %1396 to i64
  %1398 = getelementptr inbounds double, ptr %1392, i64 %1397
  %1399 = load double, ptr %1398, align 8, !tbaa !11
  %1400 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %1399, double %1391)
  %1401 = load ptr, ptr %7, align 8, !tbaa !9
  %1402 = load i32, ptr %12, align 4, !tbaa !5
  %1403 = load i32, ptr %8, align 4, !tbaa !5
  %1404 = mul nsw i32 60, %1403
  %1405 = add nsw i32 %1402, %1404
  %1406 = sext i32 %1405 to i64
  %1407 = getelementptr inbounds double, ptr %1401, i64 %1406
  %1408 = load double, ptr %1407, align 8, !tbaa !11
  %1409 = call double @llvm.fmuladd.f64(double 0x3C6974B2334F2344, double %1408, double %1400)
  %1410 = load ptr, ptr %7, align 8, !tbaa !9
  %1411 = load i32, ptr %12, align 4, !tbaa !5
  %1412 = load i32, ptr %8, align 4, !tbaa !5
  %1413 = mul nsw i32 61, %1412
  %1414 = add nsw i32 %1411, %1413
  %1415 = sext i32 %1414 to i64
  %1416 = getelementptr inbounds double, ptr %1410, i64 %1415
  %1417 = load double, ptr %1416, align 8, !tbaa !11
  %1418 = call double @llvm.fmuladd.f64(double 0xBCA5EB99734B41EE, double %1417, double %1409)
  %1419 = load ptr, ptr %7, align 8, !tbaa !9
  %1420 = load i32, ptr %12, align 4, !tbaa !5
  %1421 = load i32, ptr %8, align 4, !tbaa !5
  %1422 = mul nsw i32 62, %1421
  %1423 = add nsw i32 %1420, %1422
  %1424 = sext i32 %1423 to i64
  %1425 = getelementptr inbounds double, ptr %1419, i64 %1424
  %1426 = load double, ptr %1425, align 8, !tbaa !11
  %1427 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %1426, double %1418)
  %1428 = load ptr, ptr %7, align 8, !tbaa !9
  %1429 = load i32, ptr %12, align 4, !tbaa !5
  %1430 = load i32, ptr %8, align 4, !tbaa !5
  %1431 = mul nsw i32 63, %1430
  %1432 = add nsw i32 %1429, %1431
  %1433 = sext i32 %1432 to i64
  %1434 = getelementptr inbounds double, ptr %1428, i64 %1433
  %1435 = load double, ptr %1434, align 8, !tbaa !11
  %1436 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %1435, double %1427)
  %1437 = load ptr, ptr %7, align 8, !tbaa !9
  %1438 = load i32, ptr %12, align 4, !tbaa !5
  %1439 = load i32, ptr %8, align 4, !tbaa !5
  %1440 = mul nsw i32 64, %1439
  %1441 = add nsw i32 %1438, %1440
  %1442 = sext i32 %1441 to i64
  %1443 = getelementptr inbounds double, ptr %1437, i64 %1442
  %1444 = load double, ptr %1443, align 8, !tbaa !11
  %1445 = call double @llvm.fmuladd.f64(double 0x3C8BEE4386850DD0, double %1444, double %1436)
  %1446 = load ptr, ptr %7, align 8, !tbaa !9
  %1447 = load i32, ptr %12, align 4, !tbaa !5
  %1448 = load i32, ptr %8, align 4, !tbaa !5
  %1449 = mul nsw i32 65, %1448
  %1450 = add nsw i32 %1447, %1449
  %1451 = sext i32 %1450 to i64
  %1452 = getelementptr inbounds double, ptr %1446, i64 %1451
  %1453 = load double, ptr %1452, align 8, !tbaa !11
  %1454 = call double @llvm.fmuladd.f64(double 0x3CC196DB21ACE77C, double %1453, double %1445)
  %1455 = load ptr, ptr %7, align 8, !tbaa !9
  %1456 = load i32, ptr %12, align 4, !tbaa !5
  %1457 = load i32, ptr %8, align 4, !tbaa !5
  %1458 = mul nsw i32 66, %1457
  %1459 = add nsw i32 %1456, %1458
  %1460 = sext i32 %1459 to i64
  %1461 = getelementptr inbounds double, ptr %1455, i64 %1460
  %1462 = load double, ptr %1461, align 8, !tbaa !11
  %1463 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %1462, double %1454)
  %1464 = load ptr, ptr %7, align 8, !tbaa !9
  %1465 = load i32, ptr %12, align 4, !tbaa !5
  %1466 = load i32, ptr %8, align 4, !tbaa !5
  %1467 = mul nsw i32 67, %1466
  %1468 = add nsw i32 %1465, %1467
  %1469 = sext i32 %1468 to i64
  %1470 = getelementptr inbounds double, ptr %1464, i64 %1469
  %1471 = load double, ptr %1470, align 8, !tbaa !11
  %1472 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %1471, double %1463)
  store double %1472, ptr %11, align 8, !tbaa !11
  %1473 = load double, ptr %11, align 8, !tbaa !11
  %1474 = load ptr, ptr %9, align 8, !tbaa !9
  %1475 = load i32, ptr %12, align 4, !tbaa !5
  %1476 = load i32, ptr %10, align 4, !tbaa !5
  %1477 = mul nsw i32 4, %1476
  %1478 = add nsw i32 %1475, %1477
  %1479 = sext i32 %1478 to i64
  %1480 = getelementptr inbounds double, ptr %1474, i64 %1479
  store double %1473, ptr %1480, align 8, !tbaa !11
  %1481 = load ptr, ptr %7, align 8, !tbaa !9
  %1482 = load i32, ptr %12, align 4, !tbaa !5
  %1483 = load i32, ptr %8, align 4, !tbaa !5
  %1484 = mul nsw i32 36, %1483
  %1485 = add nsw i32 %1482, %1484
  %1486 = sext i32 %1485 to i64
  %1487 = getelementptr inbounds double, ptr %1481, i64 %1486
  %1488 = load double, ptr %1487, align 8, !tbaa !11
  %1489 = load ptr, ptr %7, align 8, !tbaa !9
  %1490 = load i32, ptr %12, align 4, !tbaa !5
  %1491 = load i32, ptr %8, align 4, !tbaa !5
  %1492 = mul nsw i32 37, %1491
  %1493 = add nsw i32 %1490, %1492
  %1494 = sext i32 %1493 to i64
  %1495 = getelementptr inbounds double, ptr %1489, i64 %1494
  %1496 = load double, ptr %1495, align 8, !tbaa !11
  %1497 = fmul double 0xC01043858A1F5994, %1496
  %1498 = call double @llvm.fmuladd.f64(double 0xBFD7671404765127, double %1488, double %1497)
  %1499 = load ptr, ptr %7, align 8, !tbaa !9
  %1500 = load i32, ptr %12, align 4, !tbaa !5
  %1501 = load i32, ptr %8, align 4, !tbaa !5
  %1502 = mul nsw i32 38, %1501
  %1503 = add nsw i32 %1500, %1502
  %1504 = sext i32 %1503 to i64
  %1505 = getelementptr inbounds double, ptr %1499, i64 %1504
  %1506 = load double, ptr %1505, align 8, !tbaa !11
  %1507 = call double @llvm.fmuladd.f64(double 0xBFD7BAC3393ADDB7, double %1506, double %1498)
  %1508 = load ptr, ptr %7, align 8, !tbaa !9
  %1509 = load i32, ptr %12, align 4, !tbaa !5
  %1510 = load i32, ptr %8, align 4, !tbaa !5
  %1511 = mul nsw i32 39, %1510
  %1512 = add nsw i32 %1509, %1511
  %1513 = sext i32 %1512 to i64
  %1514 = getelementptr inbounds double, ptr %1508, i64 %1513
  %1515 = load double, ptr %1514, align 8, !tbaa !11
  %1516 = call double @llvm.fmuladd.f64(double 0x3FC1964E14FA3C89, double %1515, double %1507)
  %1517 = load ptr, ptr %7, align 8, !tbaa !9
  %1518 = load i32, ptr %12, align 4, !tbaa !5
  %1519 = load i32, ptr %8, align 4, !tbaa !5
  %1520 = mul nsw i32 40, %1519
  %1521 = add nsw i32 %1518, %1520
  %1522 = sext i32 %1521 to i64
  %1523 = getelementptr inbounds double, ptr %1517, i64 %1522
  %1524 = load double, ptr %1523, align 8, !tbaa !11
  %1525 = call double @llvm.fmuladd.f64(double 0x3CA8400000000000, double %1524, double %1516)
  %1526 = load ptr, ptr %7, align 8, !tbaa !9
  %1527 = load i32, ptr %12, align 4, !tbaa !5
  %1528 = load i32, ptr %8, align 4, !tbaa !5
  %1529 = mul nsw i32 41, %1528
  %1530 = add nsw i32 %1527, %1529
  %1531 = sext i32 %1530 to i64
  %1532 = getelementptr inbounds double, ptr %1526, i64 %1531
  %1533 = load double, ptr %1532, align 8, !tbaa !11
  %1534 = call double @llvm.fmuladd.f64(double 0xBCC5C00000000000, double %1533, double %1525)
  %1535 = load ptr, ptr %7, align 8, !tbaa !9
  %1536 = load i32, ptr %12, align 4, !tbaa !5
  %1537 = load i32, ptr %8, align 4, !tbaa !5
  %1538 = mul nsw i32 42, %1537
  %1539 = add nsw i32 %1536, %1538
  %1540 = sext i32 %1539 to i64
  %1541 = getelementptr inbounds double, ptr %1535, i64 %1540
  %1542 = load double, ptr %1541, align 8, !tbaa !11
  %1543 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %1542, double %1534)
  %1544 = load ptr, ptr %7, align 8, !tbaa !9
  %1545 = load i32, ptr %12, align 4, !tbaa !5
  %1546 = load i32, ptr %8, align 4, !tbaa !5
  %1547 = mul nsw i32 43, %1546
  %1548 = add nsw i32 %1545, %1547
  %1549 = sext i32 %1548 to i64
  %1550 = getelementptr inbounds double, ptr %1544, i64 %1549
  %1551 = load double, ptr %1550, align 8, !tbaa !11
  %1552 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %1551, double %1543)
  %1553 = load ptr, ptr %7, align 8, !tbaa !9
  %1554 = load i32, ptr %12, align 4, !tbaa !5
  %1555 = load i32, ptr %8, align 4, !tbaa !5
  %1556 = mul nsw i32 44, %1555
  %1557 = add nsw i32 %1554, %1556
  %1558 = sext i32 %1557 to i64
  %1559 = getelementptr inbounds double, ptr %1553, i64 %1558
  %1560 = load double, ptr %1559, align 8, !tbaa !11
  %1561 = call double @llvm.fmuladd.f64(double 0x3C9F7FFFFFFFFFFC, double %1560, double %1552)
  %1562 = load ptr, ptr %7, align 8, !tbaa !9
  %1563 = load i32, ptr %12, align 4, !tbaa !5
  %1564 = load i32, ptr %8, align 4, !tbaa !5
  %1565 = mul nsw i32 45, %1564
  %1566 = add nsw i32 %1563, %1565
  %1567 = sext i32 %1566 to i64
  %1568 = getelementptr inbounds double, ptr %1562, i64 %1567
  %1569 = load double, ptr %1568, align 8, !tbaa !11
  %1570 = call double @llvm.fmuladd.f64(double 0x3CA7000000000002, double %1569, double %1561)
  %1571 = load ptr, ptr %7, align 8, !tbaa !9
  %1572 = load i32, ptr %12, align 4, !tbaa !5
  %1573 = load i32, ptr %8, align 4, !tbaa !5
  %1574 = mul nsw i32 46, %1573
  %1575 = add nsw i32 %1572, %1574
  %1576 = sext i32 %1575 to i64
  %1577 = getelementptr inbounds double, ptr %1571, i64 %1576
  %1578 = load double, ptr %1577, align 8, !tbaa !11
  %1579 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %1578, double %1570)
  %1580 = load ptr, ptr %7, align 8, !tbaa !9
  %1581 = load i32, ptr %12, align 4, !tbaa !5
  %1582 = load i32, ptr %8, align 4, !tbaa !5
  %1583 = mul nsw i32 48, %1582
  %1584 = add nsw i32 %1581, %1583
  %1585 = sext i32 %1584 to i64
  %1586 = getelementptr inbounds double, ptr %1580, i64 %1585
  %1587 = load double, ptr %1586, align 8, !tbaa !11
  %1588 = call double @llvm.fmuladd.f64(double 0xBC93C00000000000, double %1587, double %1579)
  %1589 = load ptr, ptr %7, align 8, !tbaa !9
  %1590 = load i32, ptr %12, align 4, !tbaa !5
  %1591 = load i32, ptr %8, align 4, !tbaa !5
  %1592 = mul nsw i32 49, %1591
  %1593 = add nsw i32 %1590, %1592
  %1594 = sext i32 %1593 to i64
  %1595 = getelementptr inbounds double, ptr %1589, i64 %1594
  %1596 = load double, ptr %1595, align 8, !tbaa !11
  %1597 = call double @llvm.fmuladd.f64(double 0xBCC0600000000000, double %1596, double %1588)
  %1598 = load ptr, ptr %7, align 8, !tbaa !9
  %1599 = load i32, ptr %12, align 4, !tbaa !5
  %1600 = load i32, ptr %8, align 4, !tbaa !5
  %1601 = mul nsw i32 50, %1600
  %1602 = add nsw i32 %1599, %1601
  %1603 = sext i32 %1602 to i64
  %1604 = getelementptr inbounds double, ptr %1598, i64 %1603
  %1605 = load double, ptr %1604, align 8, !tbaa !11
  %1606 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %1605, double %1597)
  %1607 = load ptr, ptr %7, align 8, !tbaa !9
  %1608 = load i32, ptr %12, align 4, !tbaa !5
  %1609 = load i32, ptr %8, align 4, !tbaa !5
  %1610 = mul nsw i32 51, %1609
  %1611 = add nsw i32 %1608, %1610
  %1612 = sext i32 %1611 to i64
  %1613 = getelementptr inbounds double, ptr %1607, i64 %1612
  %1614 = load double, ptr %1613, align 8, !tbaa !11
  %1615 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %1614, double %1606)
  %1616 = load ptr, ptr %7, align 8, !tbaa !9
  %1617 = load i32, ptr %12, align 4, !tbaa !5
  %1618 = load i32, ptr %8, align 4, !tbaa !5
  %1619 = mul nsw i32 52, %1618
  %1620 = add nsw i32 %1617, %1619
  %1621 = sext i32 %1620 to i64
  %1622 = getelementptr inbounds double, ptr %1616, i64 %1621
  %1623 = load double, ptr %1622, align 8, !tbaa !11
  %1624 = call double @llvm.fmuladd.f64(double 0xBF9102DA00B18A5A, double %1623, double %1615)
  %1625 = load ptr, ptr %7, align 8, !tbaa !9
  %1626 = load i32, ptr %12, align 4, !tbaa !5
  %1627 = load i32, ptr %8, align 4, !tbaa !5
  %1628 = mul nsw i32 53, %1627
  %1629 = add nsw i32 %1626, %1628
  %1630 = sext i32 %1629 to i64
  %1631 = getelementptr inbounds double, ptr %1625, i64 %1630
  %1632 = load double, ptr %1631, align 8, !tbaa !11
  %1633 = call double @llvm.fmuladd.f64(double 0x3FCD5953692F6EA6, double %1632, double %1624)
  %1634 = load ptr, ptr %7, align 8, !tbaa !9
  %1635 = load i32, ptr %12, align 4, !tbaa !5
  %1636 = load i32, ptr %8, align 4, !tbaa !5
  %1637 = mul nsw i32 54, %1636
  %1638 = add nsw i32 %1635, %1637
  %1639 = sext i32 %1638 to i64
  %1640 = getelementptr inbounds double, ptr %1634, i64 %1639
  %1641 = load double, ptr %1640, align 8, !tbaa !11
  %1642 = call double @llvm.fmuladd.f64(double 0x3FE3C4545BCF030B, double %1641, double %1633)
  %1643 = load ptr, ptr %7, align 8, !tbaa !9
  %1644 = load i32, ptr %12, align 4, !tbaa !5
  %1645 = load i32, ptr %8, align 4, !tbaa !5
  %1646 = mul nsw i32 55, %1645
  %1647 = add nsw i32 %1644, %1646
  %1648 = sext i32 %1647 to i64
  %1649 = getelementptr inbounds double, ptr %1643, i64 %1648
  %1650 = load double, ptr %1649, align 8, !tbaa !11
  %1651 = call double @llvm.fmuladd.f64(double 0x3FD6A4D32EB1F70D, double %1650, double %1642)
  %1652 = load ptr, ptr %7, align 8, !tbaa !9
  %1653 = load i32, ptr %12, align 4, !tbaa !5
  %1654 = load i32, ptr %8, align 4, !tbaa !5
  %1655 = mul nsw i32 56, %1654
  %1656 = add nsw i32 %1653, %1655
  %1657 = sext i32 %1656 to i64
  %1658 = getelementptr inbounds double, ptr %1652, i64 %1657
  %1659 = load double, ptr %1658, align 8, !tbaa !11
  %1660 = call double @llvm.fmuladd.f64(double 0x3C6F1CD9CCEEF238, double %1659, double %1651)
  %1661 = load ptr, ptr %7, align 8, !tbaa !9
  %1662 = load i32, ptr %12, align 4, !tbaa !5
  %1663 = load i32, ptr %8, align 4, !tbaa !5
  %1664 = mul nsw i32 57, %1663
  %1665 = add nsw i32 %1662, %1664
  %1666 = sext i32 %1665 to i64
  %1667 = getelementptr inbounds double, ptr %1661, i64 %1666
  %1668 = load double, ptr %1667, align 8, !tbaa !11
  %1669 = call double @llvm.fmuladd.f64(double 0x3C9ADEBC19B71702, double %1668, double %1660)
  %1670 = load ptr, ptr %7, align 8, !tbaa !9
  %1671 = load i32, ptr %12, align 4, !tbaa !5
  %1672 = load i32, ptr %8, align 4, !tbaa !5
  %1673 = mul nsw i32 58, %1672
  %1674 = add nsw i32 %1671, %1673
  %1675 = sext i32 %1674 to i64
  %1676 = getelementptr inbounds double, ptr %1670, i64 %1675
  %1677 = load double, ptr %1676, align 8, !tbaa !11
  %1678 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %1677, double %1669)
  %1679 = load ptr, ptr %7, align 8, !tbaa !9
  %1680 = load i32, ptr %12, align 4, !tbaa !5
  %1681 = load i32, ptr %8, align 4, !tbaa !5
  %1682 = mul nsw i32 60, %1681
  %1683 = add nsw i32 %1680, %1682
  %1684 = sext i32 %1683 to i64
  %1685 = getelementptr inbounds double, ptr %1679, i64 %1684
  %1686 = load double, ptr %1685, align 8, !tbaa !11
  %1687 = call double @llvm.fmuladd.f64(double 0xBC94DC12067D4B20, double %1686, double %1678)
  %1688 = load ptr, ptr %7, align 8, !tbaa !9
  %1689 = load i32, ptr %12, align 4, !tbaa !5
  %1690 = load i32, ptr %8, align 4, !tbaa !5
  %1691 = mul nsw i32 61, %1690
  %1692 = add nsw i32 %1689, %1691
  %1693 = sext i32 %1692 to i64
  %1694 = getelementptr inbounds double, ptr %1688, i64 %1693
  %1695 = load double, ptr %1694, align 8, !tbaa !11
  %1696 = call double @llvm.fmuladd.f64(double 0xBC9536948017480F, double %1695, double %1687)
  %1697 = load ptr, ptr %7, align 8, !tbaa !9
  %1698 = load i32, ptr %12, align 4, !tbaa !5
  %1699 = load i32, ptr %8, align 4, !tbaa !5
  %1700 = mul nsw i32 62, %1699
  %1701 = add nsw i32 %1698, %1700
  %1702 = sext i32 %1701 to i64
  %1703 = getelementptr inbounds double, ptr %1697, i64 %1702
  %1704 = load double, ptr %1703, align 8, !tbaa !11
  %1705 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %1704, double %1696)
  %1706 = load ptr, ptr %7, align 8, !tbaa !9
  %1707 = load i32, ptr %12, align 4, !tbaa !5
  %1708 = load i32, ptr %8, align 4, !tbaa !5
  %1709 = mul nsw i32 63, %1708
  %1710 = add nsw i32 %1707, %1709
  %1711 = sext i32 %1710 to i64
  %1712 = getelementptr inbounds double, ptr %1706, i64 %1711
  %1713 = load double, ptr %1712, align 8, !tbaa !11
  %1714 = call double @llvm.fmuladd.f64(double 0x3C96A09E667F3BCC, double %1713, double %1705)
  %1715 = load ptr, ptr %7, align 8, !tbaa !9
  %1716 = load i32, ptr %12, align 4, !tbaa !5
  %1717 = load i32, ptr %8, align 4, !tbaa !5
  %1718 = mul nsw i32 64, %1717
  %1719 = add nsw i32 %1716, %1718
  %1720 = sext i32 %1719 to i64
  %1721 = getelementptr inbounds double, ptr %1715, i64 %1720
  %1722 = load double, ptr %1721, align 8, !tbaa !11
  %1723 = call double @llvm.fmuladd.f64(double 0x3C53CC8A99AF5452, double %1722, double %1714)
  %1724 = load ptr, ptr %7, align 8, !tbaa !9
  %1725 = load i32, ptr %12, align 4, !tbaa !5
  %1726 = load i32, ptr %8, align 4, !tbaa !5
  %1727 = mul nsw i32 65, %1726
  %1728 = add nsw i32 %1725, %1727
  %1729 = sext i32 %1728 to i64
  %1730 = getelementptr inbounds double, ptr %1724, i64 %1729
  %1731 = load double, ptr %1730, align 8, !tbaa !11
  %1732 = call double @llvm.fmuladd.f64(double 0x3C8536948017480E, double %1731, double %1723)
  %1733 = load ptr, ptr %7, align 8, !tbaa !9
  %1734 = load i32, ptr %12, align 4, !tbaa !5
  %1735 = load i32, ptr %8, align 4, !tbaa !5
  %1736 = mul nsw i32 66, %1735
  %1737 = add nsw i32 %1734, %1736
  %1738 = sext i32 %1737 to i64
  %1739 = getelementptr inbounds double, ptr %1733, i64 %1738
  %1740 = load double, ptr %1739, align 8, !tbaa !11
  %1741 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %1740, double %1732)
  %1742 = load ptr, ptr %7, align 8, !tbaa !9
  %1743 = load i32, ptr %12, align 4, !tbaa !5
  %1744 = load i32, ptr %8, align 4, !tbaa !5
  %1745 = mul nsw i32 67, %1744
  %1746 = add nsw i32 %1743, %1745
  %1747 = sext i32 %1746 to i64
  %1748 = getelementptr inbounds double, ptr %1742, i64 %1747
  %1749 = load double, ptr %1748, align 8, !tbaa !11
  %1750 = call double @llvm.fmuladd.f64(double 0x3C93CC8A99AF5452, double %1749, double %1741)
  store double %1750, ptr %11, align 8, !tbaa !11
  %1751 = load double, ptr %11, align 8, !tbaa !11
  %1752 = load ptr, ptr %9, align 8, !tbaa !9
  %1753 = load i32, ptr %12, align 4, !tbaa !5
  %1754 = load i32, ptr %10, align 4, !tbaa !5
  %1755 = mul nsw i32 5, %1754
  %1756 = add nsw i32 %1753, %1755
  %1757 = sext i32 %1756 to i64
  %1758 = getelementptr inbounds double, ptr %1752, i64 %1757
  store double %1751, ptr %1758, align 8, !tbaa !11
  %1759 = load ptr, ptr %7, align 8, !tbaa !9
  %1760 = load i32, ptr %12, align 4, !tbaa !5
  %1761 = load i32, ptr %8, align 4, !tbaa !5
  %1762 = mul nsw i32 36, %1761
  %1763 = add nsw i32 %1760, %1762
  %1764 = sext i32 %1763 to i64
  %1765 = getelementptr inbounds double, ptr %1759, i64 %1764
  %1766 = load double, ptr %1765, align 8, !tbaa !11
  %1767 = load ptr, ptr %7, align 8, !tbaa !9
  %1768 = load i32, ptr %12, align 4, !tbaa !5
  %1769 = load i32, ptr %8, align 4, !tbaa !5
  %1770 = mul nsw i32 37, %1769
  %1771 = add nsw i32 %1768, %1770
  %1772 = sext i32 %1771 to i64
  %1773 = getelementptr inbounds double, ptr %1767, i64 %1772
  %1774 = load double, ptr %1773, align 8, !tbaa !11
  %1775 = fmul double 0x3FEFAD7976B5DE20, %1774
  %1776 = call double @llvm.fmuladd.f64(double 0x3FF043C98657E80E, double %1766, double %1775)
  %1777 = load ptr, ptr %7, align 8, !tbaa !9
  %1778 = load i32, ptr %12, align 4, !tbaa !5
  %1779 = load i32, ptr %8, align 4, !tbaa !5
  %1780 = mul nsw i32 38, %1779
  %1781 = add nsw i32 %1778, %1780
  %1782 = sext i32 %1781 to i64
  %1783 = getelementptr inbounds double, ptr %1777, i64 %1782
  %1784 = load double, ptr %1783, align 8, !tbaa !11
  %1785 = call double @llvm.fmuladd.f64(double 0xBFB4C23AD63BEF81, double %1784, double %1776)
  %1786 = load ptr, ptr %7, align 8, !tbaa !9
  %1787 = load i32, ptr %12, align 4, !tbaa !5
  %1788 = load i32, ptr %8, align 4, !tbaa !5
  %1789 = mul nsw i32 39, %1788
  %1790 = add nsw i32 %1787, %1789
  %1791 = sext i32 %1790 to i64
  %1792 = getelementptr inbounds double, ptr %1786, i64 %1791
  %1793 = load double, ptr %1792, align 8, !tbaa !11
  %1794 = call double @llvm.fmuladd.f64(double 0xBFAC37F3CCE9FD3B, double %1793, double %1785)
  %1795 = load ptr, ptr %7, align 8, !tbaa !9
  %1796 = load i32, ptr %12, align 4, !tbaa !5
  %1797 = load i32, ptr %8, align 4, !tbaa !5
  %1798 = mul nsw i32 40, %1797
  %1799 = add nsw i32 %1796, %1798
  %1800 = sext i32 %1799 to i64
  %1801 = getelementptr inbounds double, ptr %1795, i64 %1800
  %1802 = load double, ptr %1801, align 8, !tbaa !11
  %1803 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %1802, double %1794)
  %1804 = load ptr, ptr %7, align 8, !tbaa !9
  %1805 = load i32, ptr %12, align 4, !tbaa !5
  %1806 = load i32, ptr %8, align 4, !tbaa !5
  %1807 = mul nsw i32 41, %1806
  %1808 = add nsw i32 %1805, %1807
  %1809 = sext i32 %1808 to i64
  %1810 = getelementptr inbounds double, ptr %1804, i64 %1809
  %1811 = load double, ptr %1810, align 8, !tbaa !11
  %1812 = call double @llvm.fmuladd.f64(double 0x3C97000000000000, double %1811, double %1803)
  %1813 = load ptr, ptr %7, align 8, !tbaa !9
  %1814 = load i32, ptr %12, align 4, !tbaa !5
  %1815 = load i32, ptr %8, align 4, !tbaa !5
  %1816 = mul nsw i32 42, %1815
  %1817 = add nsw i32 %1814, %1816
  %1818 = sext i32 %1817 to i64
  %1819 = getelementptr inbounds double, ptr %1813, i64 %1818
  %1820 = load double, ptr %1819, align 8, !tbaa !11
  %1821 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %1820, double %1812)
  %1822 = load ptr, ptr %7, align 8, !tbaa !9
  %1823 = load i32, ptr %12, align 4, !tbaa !5
  %1824 = load i32, ptr %8, align 4, !tbaa !5
  %1825 = mul nsw i32 43, %1824
  %1826 = add nsw i32 %1823, %1825
  %1827 = sext i32 %1826 to i64
  %1828 = getelementptr inbounds double, ptr %1822, i64 %1827
  %1829 = load double, ptr %1828, align 8, !tbaa !11
  %1830 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %1829, double %1821)
  %1831 = load ptr, ptr %7, align 8, !tbaa !9
  %1832 = load i32, ptr %12, align 4, !tbaa !5
  %1833 = load i32, ptr %8, align 4, !tbaa !5
  %1834 = mul nsw i32 44, %1833
  %1835 = add nsw i32 %1832, %1834
  %1836 = sext i32 %1835 to i64
  %1837 = getelementptr inbounds double, ptr %1831, i64 %1836
  %1838 = load double, ptr %1837, align 8, !tbaa !11
  %1839 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %1838, double %1830)
  %1840 = load ptr, ptr %7, align 8, !tbaa !9
  %1841 = load i32, ptr %12, align 4, !tbaa !5
  %1842 = load i32, ptr %8, align 4, !tbaa !5
  %1843 = mul nsw i32 45, %1842
  %1844 = add nsw i32 %1841, %1843
  %1845 = sext i32 %1844 to i64
  %1846 = getelementptr inbounds double, ptr %1840, i64 %1845
  %1847 = load double, ptr %1846, align 8, !tbaa !11
  %1848 = call double @llvm.fmuladd.f64(double 0x3C82000000000000, double %1847, double %1839)
  %1849 = load ptr, ptr %7, align 8, !tbaa !9
  %1850 = load i32, ptr %12, align 4, !tbaa !5
  %1851 = load i32, ptr %8, align 4, !tbaa !5
  %1852 = mul nsw i32 46, %1851
  %1853 = add nsw i32 %1850, %1852
  %1854 = sext i32 %1853 to i64
  %1855 = getelementptr inbounds double, ptr %1849, i64 %1854
  %1856 = load double, ptr %1855, align 8, !tbaa !11
  %1857 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %1856, double %1848)
  %1858 = load ptr, ptr %7, align 8, !tbaa !9
  %1859 = load i32, ptr %12, align 4, !tbaa !5
  %1860 = load i32, ptr %8, align 4, !tbaa !5
  %1861 = mul nsw i32 47, %1860
  %1862 = add nsw i32 %1859, %1861
  %1863 = sext i32 %1862 to i64
  %1864 = getelementptr inbounds double, ptr %1858, i64 %1863
  %1865 = load double, ptr %1864, align 8, !tbaa !11
  %1866 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %1865, double %1857)
  %1867 = load ptr, ptr %7, align 8, !tbaa !9
  %1868 = load i32, ptr %12, align 4, !tbaa !5
  %1869 = load i32, ptr %8, align 4, !tbaa !5
  %1870 = mul nsw i32 48, %1869
  %1871 = add nsw i32 %1868, %1870
  %1872 = sext i32 %1871 to i64
  %1873 = getelementptr inbounds double, ptr %1867, i64 %1872
  %1874 = load double, ptr %1873, align 8, !tbaa !11
  %1875 = call double @llvm.fmuladd.f64(double 0x3CAD5FFFFFFFFFFF, double %1874, double %1866)
  %1876 = load ptr, ptr %7, align 8, !tbaa !9
  %1877 = load i32, ptr %12, align 4, !tbaa !5
  %1878 = load i32, ptr %8, align 4, !tbaa !5
  %1879 = mul nsw i32 49, %1878
  %1880 = add nsw i32 %1877, %1879
  %1881 = sext i32 %1880 to i64
  %1882 = getelementptr inbounds double, ptr %1876, i64 %1881
  %1883 = load double, ptr %1882, align 8, !tbaa !11
  %1884 = call double @llvm.fmuladd.f64(double 0x3CA1200000000001, double %1883, double %1875)
  %1885 = load ptr, ptr %7, align 8, !tbaa !9
  %1886 = load i32, ptr %12, align 4, !tbaa !5
  %1887 = load i32, ptr %8, align 4, !tbaa !5
  %1888 = mul nsw i32 50, %1887
  %1889 = add nsw i32 %1886, %1888
  %1890 = sext i32 %1889 to i64
  %1891 = getelementptr inbounds double, ptr %1885, i64 %1890
  %1892 = load double, ptr %1891, align 8, !tbaa !11
  %1893 = call double @llvm.fmuladd.f64(double 0xBCA1000000000001, double %1892, double %1884)
  %1894 = load ptr, ptr %7, align 8, !tbaa !9
  %1895 = load i32, ptr %12, align 4, !tbaa !5
  %1896 = load i32, ptr %8, align 4, !tbaa !5
  %1897 = mul nsw i32 51, %1896
  %1898 = add nsw i32 %1895, %1897
  %1899 = sext i32 %1898 to i64
  %1900 = getelementptr inbounds double, ptr %1894, i64 %1899
  %1901 = load double, ptr %1900, align 8, !tbaa !11
  %1902 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %1901, double %1893)
  %1903 = load ptr, ptr %7, align 8, !tbaa !9
  %1904 = load i32, ptr %12, align 4, !tbaa !5
  %1905 = load i32, ptr %8, align 4, !tbaa !5
  %1906 = mul nsw i32 52, %1905
  %1907 = add nsw i32 %1904, %1906
  %1908 = sext i32 %1907 to i64
  %1909 = getelementptr inbounds double, ptr %1903, i64 %1908
  %1910 = load double, ptr %1909, align 8, !tbaa !11
  %1911 = call double @llvm.fmuladd.f64(double 0x3FD6A4D32EB1F718, double %1910, double %1902)
  %1912 = load ptr, ptr %7, align 8, !tbaa !9
  %1913 = load i32, ptr %12, align 4, !tbaa !5
  %1914 = load i32, ptr %8, align 4, !tbaa !5
  %1915 = mul nsw i32 53, %1914
  %1916 = add nsw i32 %1913, %1915
  %1917 = sext i32 %1916 to i64
  %1918 = getelementptr inbounds double, ptr %1912, i64 %1917
  %1919 = load double, ptr %1918, align 8, !tbaa !11
  %1920 = call double @llvm.fmuladd.f64(double 0x3FE3C4545BCF030B, double %1919, double %1911)
  %1921 = load ptr, ptr %7, align 8, !tbaa !9
  %1922 = load i32, ptr %12, align 4, !tbaa !5
  %1923 = load i32, ptr %8, align 4, !tbaa !5
  %1924 = mul nsw i32 54, %1923
  %1925 = add nsw i32 %1922, %1924
  %1926 = sext i32 %1925 to i64
  %1927 = getelementptr inbounds double, ptr %1921, i64 %1926
  %1928 = load double, ptr %1927, align 8, !tbaa !11
  %1929 = call double @llvm.fmuladd.f64(double 0x3FCD5953692F6EA3, double %1928, double %1920)
  %1930 = load ptr, ptr %7, align 8, !tbaa !9
  %1931 = load i32, ptr %12, align 4, !tbaa !5
  %1932 = load i32, ptr %8, align 4, !tbaa !5
  %1933 = mul nsw i32 55, %1932
  %1934 = add nsw i32 %1931, %1933
  %1935 = sext i32 %1934 to i64
  %1936 = getelementptr inbounds double, ptr %1930, i64 %1935
  %1937 = load double, ptr %1936, align 8, !tbaa !11
  %1938 = call double @llvm.fmuladd.f64(double 0xBF9102DA00B18A2C, double %1937, double %1929)
  %1939 = load ptr, ptr %7, align 8, !tbaa !9
  %1940 = load i32, ptr %12, align 4, !tbaa !5
  %1941 = load i32, ptr %8, align 4, !tbaa !5
  %1942 = mul nsw i32 56, %1941
  %1943 = add nsw i32 %1940, %1942
  %1944 = sext i32 %1943 to i64
  %1945 = getelementptr inbounds double, ptr %1939, i64 %1944
  %1946 = load double, ptr %1945, align 8, !tbaa !11
  %1947 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %1946, double %1938)
  %1948 = load ptr, ptr %7, align 8, !tbaa !9
  %1949 = load i32, ptr %12, align 4, !tbaa !5
  %1950 = load i32, ptr %8, align 4, !tbaa !5
  %1951 = mul nsw i32 57, %1950
  %1952 = add nsw i32 %1949, %1951
  %1953 = sext i32 %1952 to i64
  %1954 = getelementptr inbounds double, ptr %1948, i64 %1953
  %1955 = load double, ptr %1954, align 8, !tbaa !11
  %1956 = call double @llvm.fmuladd.f64(double 0x3CB344C6E34858EB, double %1955, double %1947)
  %1957 = load ptr, ptr %7, align 8, !tbaa !9
  %1958 = load i32, ptr %12, align 4, !tbaa !5
  %1959 = load i32, ptr %8, align 4, !tbaa !5
  %1960 = mul nsw i32 58, %1959
  %1961 = add nsw i32 %1958, %1960
  %1962 = sext i32 %1961 to i64
  %1963 = getelementptr inbounds double, ptr %1957, i64 %1962
  %1964 = load double, ptr %1963, align 8, !tbaa !11
  %1965 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %1964, double %1956)
  %1966 = load ptr, ptr %7, align 8, !tbaa !9
  %1967 = load i32, ptr %12, align 4, !tbaa !5
  %1968 = load i32, ptr %8, align 4, !tbaa !5
  %1969 = mul nsw i32 59, %1968
  %1970 = add nsw i32 %1967, %1969
  %1971 = sext i32 %1970 to i64
  %1972 = getelementptr inbounds double, ptr %1966, i64 %1971
  %1973 = load double, ptr %1972, align 8, !tbaa !11
  %1974 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %1973, double %1965)
  %1975 = load ptr, ptr %7, align 8, !tbaa !9
  %1976 = load i32, ptr %12, align 4, !tbaa !5
  %1977 = load i32, ptr %8, align 4, !tbaa !5
  %1978 = mul nsw i32 60, %1977
  %1979 = add nsw i32 %1976, %1978
  %1980 = sext i32 %1979 to i64
  %1981 = getelementptr inbounds double, ptr %1975, i64 %1980
  %1982 = load double, ptr %1981, align 8, !tbaa !11
  %1983 = call double @llvm.fmuladd.f64(double 0xBC9C48C6001F0ABF, double %1982, double %1974)
  %1984 = load ptr, ptr %7, align 8, !tbaa !9
  %1985 = load i32, ptr %12, align 4, !tbaa !5
  %1986 = load i32, ptr %8, align 4, !tbaa !5
  %1987 = mul nsw i32 61, %1986
  %1988 = add nsw i32 %1985, %1987
  %1989 = sext i32 %1988 to i64
  %1990 = getelementptr inbounds double, ptr %1984, i64 %1989
  %1991 = load double, ptr %1990, align 8, !tbaa !11
  %1992 = call double @llvm.fmuladd.f64(double 0xBC9FD1DEC022EC15, double %1991, double %1983)
  %1993 = load ptr, ptr %7, align 8, !tbaa !9
  %1994 = load i32, ptr %12, align 4, !tbaa !5
  %1995 = load i32, ptr %8, align 4, !tbaa !5
  %1996 = mul nsw i32 62, %1995
  %1997 = add nsw i32 %1994, %1996
  %1998 = sext i32 %1997 to i64
  %1999 = getelementptr inbounds double, ptr %1993, i64 %1998
  %2000 = load double, ptr %1999, align 8, !tbaa !11
  %2001 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %2000, double %1992)
  %2002 = load ptr, ptr %7, align 8, !tbaa !9
  %2003 = load i32, ptr %12, align 4, !tbaa !5
  %2004 = load i32, ptr %8, align 4, !tbaa !5
  %2005 = mul nsw i32 63, %2004
  %2006 = add nsw i32 %2003, %2005
  %2007 = sext i32 %2006 to i64
  %2008 = getelementptr inbounds double, ptr %2002, i64 %2007
  %2009 = load double, ptr %2008, align 8, !tbaa !11
  %2010 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %2009, double %2001)
  %2011 = load ptr, ptr %7, align 8, !tbaa !9
  %2012 = load i32, ptr %12, align 4, !tbaa !5
  %2013 = load i32, ptr %8, align 4, !tbaa !5
  %2014 = mul nsw i32 64, %2013
  %2015 = add nsw i32 %2012, %2014
  %2016 = sext i32 %2015 to i64
  %2017 = getelementptr inbounds double, ptr %2011, i64 %2016
  %2018 = load double, ptr %2017, align 8, !tbaa !11
  %2019 = call double @llvm.fmuladd.f64(double 0x3C86461BECE53EDC, double %2018, double %2010)
  %2020 = load ptr, ptr %7, align 8, !tbaa !9
  %2021 = load i32, ptr %12, align 4, !tbaa !5
  %2022 = load i32, ptr %8, align 4, !tbaa !5
  %2023 = mul nsw i32 65, %2022
  %2024 = add nsw i32 %2021, %2023
  %2025 = sext i32 %2024 to i64
  %2026 = getelementptr inbounds double, ptr %2020, i64 %2025
  %2027 = load double, ptr %2026, align 8, !tbaa !11
  %2028 = call double @llvm.fmuladd.f64(double 0x3CA196DB21ACE77D, double %2027, double %2019)
  %2029 = load ptr, ptr %7, align 8, !tbaa !9
  %2030 = load i32, ptr %12, align 4, !tbaa !5
  %2031 = load i32, ptr %8, align 4, !tbaa !5
  %2032 = mul nsw i32 66, %2031
  %2033 = add nsw i32 %2030, %2032
  %2034 = sext i32 %2033 to i64
  %2035 = getelementptr inbounds double, ptr %2029, i64 %2034
  %2036 = load double, ptr %2035, align 8, !tbaa !11
  %2037 = call double @llvm.fmuladd.f64(double 0x3C9ADEBC19B71702, double %2036, double %2028)
  store double %2037, ptr %11, align 8, !tbaa !11
  %2038 = load double, ptr %11, align 8, !tbaa !11
  %2039 = load ptr, ptr %9, align 8, !tbaa !9
  %2040 = load i32, ptr %12, align 4, !tbaa !5
  %2041 = load i32, ptr %10, align 4, !tbaa !5
  %2042 = mul nsw i32 6, %2041
  %2043 = add nsw i32 %2040, %2042
  %2044 = sext i32 %2043 to i64
  %2045 = getelementptr inbounds double, ptr %2039, i64 %2044
  store double %2038, ptr %2045, align 8, !tbaa !11
  %2046 = load ptr, ptr %7, align 8, !tbaa !9
  %2047 = load i32, ptr %12, align 4, !tbaa !5
  %2048 = load i32, ptr %8, align 4, !tbaa !5
  %2049 = mul nsw i32 36, %2048
  %2050 = add nsw i32 %2047, %2049
  %2051 = sext i32 %2050 to i64
  %2052 = getelementptr inbounds double, ptr %2046, i64 %2051
  %2053 = load double, ptr %2052, align 8, !tbaa !11
  %2054 = load ptr, ptr %7, align 8, !tbaa !9
  %2055 = load i32, ptr %12, align 4, !tbaa !5
  %2056 = load i32, ptr %8, align 4, !tbaa !5
  %2057 = mul nsw i32 37, %2056
  %2058 = add nsw i32 %2055, %2057
  %2059 = sext i32 %2058 to i64
  %2060 = getelementptr inbounds double, ptr %2054, i64 %2059
  %2061 = load double, ptr %2060, align 8, !tbaa !11
  %2062 = fmul double 0xBFEBF462FB348EF2, %2061
  %2063 = call double @llvm.fmuladd.f64(double 0xBFE002F9665DF3E5, double %2053, double %2062)
  %2064 = load ptr, ptr %7, align 8, !tbaa !9
  %2065 = load i32, ptr %12, align 4, !tbaa !5
  %2066 = load i32, ptr %8, align 4, !tbaa !5
  %2067 = mul nsw i32 38, %2066
  %2068 = add nsw i32 %2065, %2067
  %2069 = sext i32 %2068 to i64
  %2070 = getelementptr inbounds double, ptr %2064, i64 %2069
  %2071 = load double, ptr %2070, align 8, !tbaa !11
  %2072 = call double @llvm.fmuladd.f64(double 0xBFD4C0B9406BCBCC, double %2071, double %2063)
  %2073 = load ptr, ptr %7, align 8, !tbaa !9
  %2074 = load i32, ptr %12, align 4, !tbaa !5
  %2075 = load i32, ptr %8, align 4, !tbaa !5
  %2076 = mul nsw i32 39, %2075
  %2077 = add nsw i32 %2074, %2076
  %2078 = sext i32 %2077 to i64
  %2079 = getelementptr inbounds double, ptr %2073, i64 %2078
  %2080 = load double, ptr %2079, align 8, !tbaa !11
  %2081 = call double @llvm.fmuladd.f64(double 0x3F980EB0AE1D483F, double %2080, double %2072)
  %2082 = load ptr, ptr %7, align 8, !tbaa !9
  %2083 = load i32, ptr %12, align 4, !tbaa !5
  %2084 = load i32, ptr %8, align 4, !tbaa !5
  %2085 = mul nsw i32 40, %2084
  %2086 = add nsw i32 %2083, %2085
  %2087 = sext i32 %2086 to i64
  %2088 = getelementptr inbounds double, ptr %2082, i64 %2087
  %2089 = load double, ptr %2088, align 8, !tbaa !11
  %2090 = call double @llvm.fmuladd.f64(double 0x3C91800000000000, double %2089, double %2081)
  %2091 = load ptr, ptr %7, align 8, !tbaa !9
  %2092 = load i32, ptr %12, align 4, !tbaa !5
  %2093 = load i32, ptr %8, align 4, !tbaa !5
  %2094 = mul nsw i32 41, %2093
  %2095 = add nsw i32 %2092, %2094
  %2096 = sext i32 %2095 to i64
  %2097 = getelementptr inbounds double, ptr %2091, i64 %2096
  %2098 = load double, ptr %2097, align 8, !tbaa !11
  %2099 = call double @llvm.fmuladd.f64(double 0xBCB3400000000000, double %2098, double %2090)
  %2100 = load ptr, ptr %7, align 8, !tbaa !9
  %2101 = load i32, ptr %12, align 4, !tbaa !5
  %2102 = load i32, ptr %8, align 4, !tbaa !5
  %2103 = mul nsw i32 43, %2102
  %2104 = add nsw i32 %2101, %2103
  %2105 = sext i32 %2104 to i64
  %2106 = getelementptr inbounds double, ptr %2100, i64 %2105
  %2107 = load double, ptr %2106, align 8, !tbaa !11
  %2108 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %2107, double %2099)
  %2109 = load ptr, ptr %7, align 8, !tbaa !9
  %2110 = load i32, ptr %12, align 4, !tbaa !5
  %2111 = load i32, ptr %8, align 4, !tbaa !5
  %2112 = mul nsw i32 44, %2111
  %2113 = add nsw i32 %2110, %2112
  %2114 = sext i32 %2113 to i64
  %2115 = getelementptr inbounds double, ptr %2109, i64 %2114
  %2116 = load double, ptr %2115, align 8, !tbaa !11
  %2117 = call double @llvm.fmuladd.f64(double 0x3C9E7FFFFFFFFFFD, double %2116, double %2108)
  %2118 = load ptr, ptr %7, align 8, !tbaa !9
  %2119 = load i32, ptr %12, align 4, !tbaa !5
  %2120 = load i32, ptr %8, align 4, !tbaa !5
  %2121 = mul nsw i32 45, %2120
  %2122 = add nsw i32 %2119, %2121
  %2123 = sext i32 %2122 to i64
  %2124 = getelementptr inbounds double, ptr %2118, i64 %2123
  %2125 = load double, ptr %2124, align 8, !tbaa !11
  %2126 = call double @llvm.fmuladd.f64(double 0x3CA67FFFFFFFFFFE, double %2125, double %2117)
  %2127 = load ptr, ptr %7, align 8, !tbaa !9
  %2128 = load i32, ptr %12, align 4, !tbaa !5
  %2129 = load i32, ptr %8, align 4, !tbaa !5
  %2130 = mul nsw i32 46, %2129
  %2131 = add nsw i32 %2128, %2130
  %2132 = sext i32 %2131 to i64
  %2133 = getelementptr inbounds double, ptr %2127, i64 %2132
  %2134 = load double, ptr %2133, align 8, !tbaa !11
  %2135 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %2134, double %2126)
  %2136 = load ptr, ptr %7, align 8, !tbaa !9
  %2137 = load i32, ptr %12, align 4, !tbaa !5
  %2138 = load i32, ptr %8, align 4, !tbaa !5
  %2139 = mul nsw i32 47, %2138
  %2140 = add nsw i32 %2137, %2139
  %2141 = sext i32 %2140 to i64
  %2142 = getelementptr inbounds double, ptr %2136, i64 %2141
  %2143 = load double, ptr %2142, align 8, !tbaa !11
  %2144 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %2143, double %2135)
  %2145 = load ptr, ptr %7, align 8, !tbaa !9
  %2146 = load i32, ptr %12, align 4, !tbaa !5
  %2147 = load i32, ptr %8, align 4, !tbaa !5
  %2148 = mul nsw i32 48, %2147
  %2149 = add nsw i32 %2146, %2148
  %2150 = sext i32 %2149 to i64
  %2151 = getelementptr inbounds double, ptr %2145, i64 %2150
  %2152 = load double, ptr %2151, align 8, !tbaa !11
  %2153 = call double @llvm.fmuladd.f64(double 0xBCADDFFFFFFFFFFE, double %2152, double %2144)
  %2154 = load ptr, ptr %7, align 8, !tbaa !9
  %2155 = load i32, ptr %12, align 4, !tbaa !5
  %2156 = load i32, ptr %8, align 4, !tbaa !5
  %2157 = mul nsw i32 49, %2156
  %2158 = add nsw i32 %2155, %2157
  %2159 = sext i32 %2158 to i64
  %2160 = getelementptr inbounds double, ptr %2154, i64 %2159
  %2161 = load double, ptr %2160, align 8, !tbaa !11
  %2162 = call double @llvm.fmuladd.f64(double 0xBC5C000000000000, double %2161, double %2153)
  %2163 = load ptr, ptr %7, align 8, !tbaa !9
  %2164 = load i32, ptr %12, align 4, !tbaa !5
  %2165 = load i32, ptr %8, align 4, !tbaa !5
  %2166 = mul nsw i32 50, %2165
  %2167 = add nsw i32 %2164, %2166
  %2168 = sext i32 %2167 to i64
  %2169 = getelementptr inbounds double, ptr %2163, i64 %2168
  %2170 = load double, ptr %2169, align 8, !tbaa !11
  %2171 = call double @llvm.fmuladd.f64(double 0xBCA1000000000001, double %2170, double %2162)
  %2172 = load ptr, ptr %7, align 8, !tbaa !9
  %2173 = load i32, ptr %12, align 4, !tbaa !5
  %2174 = load i32, ptr %8, align 4, !tbaa !5
  %2175 = mul nsw i32 52, %2174
  %2176 = add nsw i32 %2173, %2175
  %2177 = sext i32 %2176 to i64
  %2178 = getelementptr inbounds double, ptr %2172, i64 %2177
  %2179 = load double, ptr %2178, align 8, !tbaa !11
  %2180 = call double @llvm.fmuladd.f64(double 0xBFE7007BFD8FD859, double %2179, double %2171)
  %2181 = load ptr, ptr %7, align 8, !tbaa !9
  %2182 = load i32, ptr %12, align 4, !tbaa !5
  %2183 = load i32, ptr %8, align 4, !tbaa !5
  %2184 = mul nsw i32 53, %2183
  %2185 = add nsw i32 %2182, %2184
  %2186 = sext i32 %2185 to i64
  %2187 = getelementptr inbounds double, ptr %2181, i64 %2186
  %2188 = load double, ptr %2187, align 8, !tbaa !11
  %2189 = call double @llvm.fmuladd.f64(double 0xBFE66643AEED3706, double %2188, double %2180)
  %2190 = load ptr, ptr %7, align 8, !tbaa !9
  %2191 = load i32, ptr %12, align 4, !tbaa !5
  %2192 = load i32, ptr %8, align 4, !tbaa !5
  %2193 = mul nsw i32 54, %2192
  %2194 = add nsw i32 %2191, %2193
  %2195 = sext i32 %2194 to i64
  %2196 = getelementptr inbounds double, ptr %2190, i64 %2195
  %2197 = load double, ptr %2196, align 8, !tbaa !11
  %2198 = call double @llvm.fmuladd.f64(double 0x3FAD5B74B5F10E94, double %2197, double %2189)
  %2199 = load ptr, ptr %7, align 8, !tbaa !9
  %2200 = load i32, ptr %12, align 4, !tbaa !5
  %2201 = load i32, ptr %8, align 4, !tbaa !5
  %2202 = mul nsw i32 55, %2201
  %2203 = add nsw i32 %2200, %2202
  %2204 = sext i32 %2203 to i64
  %2205 = getelementptr inbounds double, ptr %2199, i64 %2204
  %2206 = load double, ptr %2205, align 8, !tbaa !11
  %2207 = call double @llvm.fmuladd.f64(double 0x3FA3F41B0E87BFBB, double %2206, double %2198)
  %2208 = load ptr, ptr %7, align 8, !tbaa !9
  %2209 = load i32, ptr %12, align 4, !tbaa !5
  %2210 = load i32, ptr %8, align 4, !tbaa !5
  %2211 = mul nsw i32 56, %2210
  %2212 = add nsw i32 %2209, %2211
  %2213 = sext i32 %2212 to i64
  %2214 = getelementptr inbounds double, ptr %2208, i64 %2213
  %2215 = load double, ptr %2214, align 8, !tbaa !11
  %2216 = call double @llvm.fmuladd.f64(double 0xBCA344C6E34858EB, double %2215, double %2207)
  %2217 = load ptr, ptr %7, align 8, !tbaa !9
  %2218 = load i32, ptr %12, align 4, !tbaa !5
  %2219 = load i32, ptr %8, align 4, !tbaa !5
  %2220 = mul nsw i32 57, %2219
  %2221 = add nsw i32 %2218, %2220
  %2222 = sext i32 %2221 to i64
  %2223 = getelementptr inbounds double, ptr %2217, i64 %2222
  %2224 = load double, ptr %2223, align 8, !tbaa !11
  %2225 = call double @llvm.fmuladd.f64(double 0x3C91AD7BC01366B7, double %2224, double %2216)
  %2226 = load ptr, ptr %7, align 8, !tbaa !9
  %2227 = load i32, ptr %12, align 4, !tbaa !5
  %2228 = load i32, ptr %8, align 4, !tbaa !5
  %2229 = mul nsw i32 58, %2228
  %2230 = add nsw i32 %2227, %2229
  %2231 = sext i32 %2230 to i64
  %2232 = getelementptr inbounds double, ptr %2226, i64 %2231
  %2233 = load double, ptr %2232, align 8, !tbaa !11
  %2234 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %2233, double %2225)
  %2235 = load ptr, ptr %7, align 8, !tbaa !9
  %2236 = load i32, ptr %12, align 4, !tbaa !5
  %2237 = load i32, ptr %8, align 4, !tbaa !5
  %2238 = mul nsw i32 59, %2237
  %2239 = add nsw i32 %2236, %2238
  %2240 = sext i32 %2239 to i64
  %2241 = getelementptr inbounds double, ptr %2235, i64 %2240
  %2242 = load double, ptr %2241, align 8, !tbaa !11
  %2243 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %2242, double %2234)
  %2244 = load ptr, ptr %7, align 8, !tbaa !9
  %2245 = load i32, ptr %12, align 4, !tbaa !5
  %2246 = load i32, ptr %8, align 4, !tbaa !5
  %2247 = mul nsw i32 60, %2246
  %2248 = add nsw i32 %2245, %2247
  %2249 = sext i32 %2248 to i64
  %2250 = getelementptr inbounds double, ptr %2244, i64 %2249
  %2251 = load double, ptr %2250, align 8, !tbaa !11
  %2252 = call double @llvm.fmuladd.f64(double 0x3CA344C6E34858EB, double %2251, double %2243)
  %2253 = load ptr, ptr %7, align 8, !tbaa !9
  %2254 = load i32, ptr %12, align 4, !tbaa !5
  %2255 = load i32, ptr %8, align 4, !tbaa !5
  %2256 = mul nsw i32 61, %2255
  %2257 = add nsw i32 %2254, %2256
  %2258 = sext i32 %2257 to i64
  %2259 = getelementptr inbounds double, ptr %2253, i64 %2258
  %2260 = load double, ptr %2259, align 8, !tbaa !11
  %2261 = call double @llvm.fmuladd.f64(double 0x3C73CC8A99AF5453, double %2260, double %2252)
  %2262 = load ptr, ptr %7, align 8, !tbaa !9
  %2263 = load i32, ptr %12, align 4, !tbaa !5
  %2264 = load i32, ptr %8, align 4, !tbaa !5
  %2265 = mul nsw i32 62, %2264
  %2266 = add nsw i32 %2263, %2265
  %2267 = sext i32 %2266 to i64
  %2268 = getelementptr inbounds double, ptr %2262, i64 %2267
  %2269 = load double, ptr %2268, align 8, !tbaa !11
  %2270 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %2269, double %2261)
  %2271 = load ptr, ptr %7, align 8, !tbaa !9
  %2272 = load i32, ptr %12, align 4, !tbaa !5
  %2273 = load i32, ptr %8, align 4, !tbaa !5
  %2274 = mul nsw i32 63, %2273
  %2275 = add nsw i32 %2272, %2274
  %2276 = sext i32 %2275 to i64
  %2277 = getelementptr inbounds double, ptr %2271, i64 %2276
  %2278 = load double, ptr %2277, align 8, !tbaa !11
  %2279 = call double @llvm.fmuladd.f64(double 0xBCA0F876CCDF6CD8, double %2278, double %2270)
  %2280 = load ptr, ptr %7, align 8, !tbaa !9
  %2281 = load i32, ptr %12, align 4, !tbaa !5
  %2282 = load i32, ptr %8, align 4, !tbaa !5
  %2283 = mul nsw i32 64, %2282
  %2284 = add nsw i32 %2281, %2283
  %2285 = sext i32 %2284 to i64
  %2286 = getelementptr inbounds double, ptr %2280, i64 %2285
  %2287 = load double, ptr %2286, align 8, !tbaa !11
  %2288 = call double @llvm.fmuladd.f64(double 0xBCA13C58A812EA8E, double %2287, double %2279)
  %2289 = load ptr, ptr %7, align 8, !tbaa !9
  %2290 = load i32, ptr %12, align 4, !tbaa !5
  %2291 = load i32, ptr %8, align 4, !tbaa !5
  %2292 = mul nsw i32 65, %2291
  %2293 = add nsw i32 %2290, %2292
  %2294 = sext i32 %2293 to i64
  %2295 = getelementptr inbounds double, ptr %2289, i64 %2294
  %2296 = load double, ptr %2295, align 8, !tbaa !11
  %2297 = call double @llvm.fmuladd.f64(double 0xBCA6023A11B1C128, double %2296, double %2288)
  %2298 = load ptr, ptr %7, align 8, !tbaa !9
  %2299 = load i32, ptr %12, align 4, !tbaa !5
  %2300 = load i32, ptr %8, align 4, !tbaa !5
  %2301 = mul nsw i32 66, %2300
  %2302 = add nsw i32 %2299, %2301
  %2303 = sext i32 %2302 to i64
  %2304 = getelementptr inbounds double, ptr %2298, i64 %2303
  %2305 = load double, ptr %2304, align 8, !tbaa !11
  %2306 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %2305, double %2297)
  store double %2306, ptr %11, align 8, !tbaa !11
  %2307 = load double, ptr %11, align 8, !tbaa !11
  %2308 = load ptr, ptr %9, align 8, !tbaa !9
  %2309 = load i32, ptr %12, align 4, !tbaa !5
  %2310 = load i32, ptr %10, align 4, !tbaa !5
  %2311 = mul nsw i32 7, %2310
  %2312 = add nsw i32 %2309, %2311
  %2313 = sext i32 %2312 to i64
  %2314 = getelementptr inbounds double, ptr %2308, i64 %2313
  store double %2307, ptr %2314, align 8, !tbaa !11
  %2315 = load ptr, ptr %7, align 8, !tbaa !9
  %2316 = load i32, ptr %12, align 4, !tbaa !5
  %2317 = load i32, ptr %8, align 4, !tbaa !5
  %2318 = mul nsw i32 36, %2317
  %2319 = add nsw i32 %2316, %2318
  %2320 = sext i32 %2319 to i64
  %2321 = getelementptr inbounds double, ptr %2315, i64 %2320
  %2322 = load double, ptr %2321, align 8, !tbaa !11
  %2323 = load ptr, ptr %7, align 8, !tbaa !9
  %2324 = load i32, ptr %12, align 4, !tbaa !5
  %2325 = load i32, ptr %8, align 4, !tbaa !5
  %2326 = mul nsw i32 37, %2325
  %2327 = add nsw i32 %2324, %2326
  %2328 = sext i32 %2327 to i64
  %2329 = getelementptr inbounds double, ptr %2323, i64 %2328
  %2330 = load double, ptr %2329, align 8, !tbaa !11
  %2331 = fmul double 0xBFD7BAC3393ADDAB, %2330
  %2332 = call double @llvm.fmuladd.f64(double 0x3FC1964E14FA3C91, double %2322, double %2331)
  %2333 = load ptr, ptr %7, align 8, !tbaa !9
  %2334 = load i32, ptr %12, align 4, !tbaa !5
  %2335 = load i32, ptr %8, align 4, !tbaa !5
  %2336 = mul nsw i32 38, %2335
  %2337 = add nsw i32 %2334, %2336
  %2338 = sext i32 %2337 to i64
  %2339 = getelementptr inbounds double, ptr %2333, i64 %2338
  %2340 = load double, ptr %2339, align 8, !tbaa !11
  %2341 = call double @llvm.fmuladd.f64(double 0xC01043858A1F5991, double %2340, double %2332)
  %2342 = load ptr, ptr %7, align 8, !tbaa !9
  %2343 = load i32, ptr %12, align 4, !tbaa !5
  %2344 = load i32, ptr %8, align 4, !tbaa !5
  %2345 = mul nsw i32 39, %2344
  %2346 = add nsw i32 %2343, %2345
  %2347 = sext i32 %2346 to i64
  %2348 = getelementptr inbounds double, ptr %2342, i64 %2347
  %2349 = load double, ptr %2348, align 8, !tbaa !11
  %2350 = call double @llvm.fmuladd.f64(double 0xBFD767140476510C, double %2349, double %2341)
  %2351 = load ptr, ptr %7, align 8, !tbaa !9
  %2352 = load i32, ptr %12, align 4, !tbaa !5
  %2353 = load i32, ptr %8, align 4, !tbaa !5
  %2354 = mul nsw i32 40, %2353
  %2355 = add nsw i32 %2352, %2354
  %2356 = sext i32 %2355 to i64
  %2357 = getelementptr inbounds double, ptr %2351, i64 %2356
  %2358 = load double, ptr %2357, align 8, !tbaa !11
  %2359 = call double @llvm.fmuladd.f64(double 0x3C86000000000001, double %2358, double %2350)
  %2360 = load ptr, ptr %7, align 8, !tbaa !9
  %2361 = load i32, ptr %12, align 4, !tbaa !5
  %2362 = load i32, ptr %8, align 4, !tbaa !5
  %2363 = mul nsw i32 41, %2362
  %2364 = add nsw i32 %2361, %2363
  %2365 = sext i32 %2364 to i64
  %2366 = getelementptr inbounds double, ptr %2360, i64 %2365
  %2367 = load double, ptr %2366, align 8, !tbaa !11
  %2368 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %2367, double %2359)
  %2369 = load ptr, ptr %7, align 8, !tbaa !9
  %2370 = load i32, ptr %12, align 4, !tbaa !5
  %2371 = load i32, ptr %8, align 4, !tbaa !5
  %2372 = mul nsw i32 42, %2371
  %2373 = add nsw i32 %2370, %2372
  %2374 = sext i32 %2373 to i64
  %2375 = getelementptr inbounds double, ptr %2369, i64 %2374
  %2376 = load double, ptr %2375, align 8, !tbaa !11
  %2377 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %2376, double %2368)
  %2378 = load ptr, ptr %7, align 8, !tbaa !9
  %2379 = load i32, ptr %12, align 4, !tbaa !5
  %2380 = load i32, ptr %8, align 4, !tbaa !5
  %2381 = mul nsw i32 43, %2380
  %2382 = add nsw i32 %2379, %2381
  %2383 = sext i32 %2382 to i64
  %2384 = getelementptr inbounds double, ptr %2378, i64 %2383
  %2385 = load double, ptr %2384, align 8, !tbaa !11
  %2386 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %2385, double %2377)
  %2387 = load ptr, ptr %7, align 8, !tbaa !9
  %2388 = load i32, ptr %12, align 4, !tbaa !5
  %2389 = load i32, ptr %8, align 4, !tbaa !5
  %2390 = mul nsw i32 44, %2389
  %2391 = add nsw i32 %2388, %2390
  %2392 = sext i32 %2391 to i64
  %2393 = getelementptr inbounds double, ptr %2387, i64 %2392
  %2394 = load double, ptr %2393, align 8, !tbaa !11
  %2395 = call double @llvm.fmuladd.f64(double 0x3C74000000000000, double %2394, double %2386)
  %2396 = load ptr, ptr %7, align 8, !tbaa !9
  %2397 = load i32, ptr %12, align 4, !tbaa !5
  %2398 = load i32, ptr %8, align 4, !tbaa !5
  %2399 = mul nsw i32 45, %2398
  %2400 = add nsw i32 %2397, %2399
  %2401 = sext i32 %2400 to i64
  %2402 = getelementptr inbounds double, ptr %2396, i64 %2401
  %2403 = load double, ptr %2402, align 8, !tbaa !11
  %2404 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %2403, double %2395)
  %2405 = load ptr, ptr %7, align 8, !tbaa !9
  %2406 = load i32, ptr %12, align 4, !tbaa !5
  %2407 = load i32, ptr %8, align 4, !tbaa !5
  %2408 = mul nsw i32 46, %2407
  %2409 = add nsw i32 %2406, %2408
  %2410 = sext i32 %2409 to i64
  %2411 = getelementptr inbounds double, ptr %2405, i64 %2410
  %2412 = load double, ptr %2411, align 8, !tbaa !11
  %2413 = call double @llvm.fmuladd.f64(double 0xBCC3000000000000, double %2412, double %2404)
  %2414 = load ptr, ptr %7, align 8, !tbaa !9
  %2415 = load i32, ptr %12, align 4, !tbaa !5
  %2416 = load i32, ptr %8, align 4, !tbaa !5
  %2417 = mul nsw i32 47, %2416
  %2418 = add nsw i32 %2415, %2417
  %2419 = sext i32 %2418 to i64
  %2420 = getelementptr inbounds double, ptr %2414, i64 %2419
  %2421 = load double, ptr %2420, align 8, !tbaa !11
  %2422 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %2421, double %2413)
  %2423 = load ptr, ptr %7, align 8, !tbaa !9
  %2424 = load i32, ptr %12, align 4, !tbaa !5
  %2425 = load i32, ptr %8, align 4, !tbaa !5
  %2426 = mul nsw i32 48, %2425
  %2427 = add nsw i32 %2424, %2426
  %2428 = sext i32 %2427 to i64
  %2429 = getelementptr inbounds double, ptr %2423, i64 %2428
  %2430 = load double, ptr %2429, align 8, !tbaa !11
  %2431 = call double @llvm.fmuladd.f64(double 0x3C58000000000000, double %2430, double %2422)
  %2432 = load ptr, ptr %7, align 8, !tbaa !9
  %2433 = load i32, ptr %12, align 4, !tbaa !5
  %2434 = load i32, ptr %8, align 4, !tbaa !5
  %2435 = mul nsw i32 49, %2434
  %2436 = add nsw i32 %2433, %2435
  %2437 = sext i32 %2436 to i64
  %2438 = getelementptr inbounds double, ptr %2432, i64 %2437
  %2439 = load double, ptr %2438, align 8, !tbaa !11
  %2440 = call double @llvm.fmuladd.f64(double 0xBCA7000000000002, double %2439, double %2431)
  %2441 = load ptr, ptr %7, align 8, !tbaa !9
  %2442 = load i32, ptr %12, align 4, !tbaa !5
  %2443 = load i32, ptr %8, align 4, !tbaa !5
  %2444 = mul nsw i32 50, %2443
  %2445 = add nsw i32 %2442, %2444
  %2446 = sext i32 %2445 to i64
  %2447 = getelementptr inbounds double, ptr %2441, i64 %2446
  %2448 = load double, ptr %2447, align 8, !tbaa !11
  %2449 = call double @llvm.fmuladd.f64(double 0xBCC3000000000000, double %2448, double %2440)
  %2450 = load ptr, ptr %7, align 8, !tbaa !9
  %2451 = load i32, ptr %12, align 4, !tbaa !5
  %2452 = load i32, ptr %8, align 4, !tbaa !5
  %2453 = mul nsw i32 51, %2452
  %2454 = add nsw i32 %2451, %2453
  %2455 = sext i32 %2454 to i64
  %2456 = getelementptr inbounds double, ptr %2450, i64 %2455
  %2457 = load double, ptr %2456, align 8, !tbaa !11
  %2458 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %2457, double %2449)
  %2459 = load ptr, ptr %7, align 8, !tbaa !9
  %2460 = load i32, ptr %12, align 4, !tbaa !5
  %2461 = load i32, ptr %8, align 4, !tbaa !5
  %2462 = mul nsw i32 52, %2461
  %2463 = add nsw i32 %2460, %2462
  %2464 = sext i32 %2463 to i64
  %2465 = getelementptr inbounds double, ptr %2459, i64 %2464
  %2466 = load double, ptr %2465, align 8, !tbaa !11
  %2467 = call double @llvm.fmuladd.f64(double 0x3FA3F41B0E87BFEB, double %2466, double %2458)
  %2468 = load ptr, ptr %7, align 8, !tbaa !9
  %2469 = load i32, ptr %12, align 4, !tbaa !5
  %2470 = load i32, ptr %8, align 4, !tbaa !5
  %2471 = mul nsw i32 53, %2470
  %2472 = add nsw i32 %2469, %2471
  %2473 = sext i32 %2472 to i64
  %2474 = getelementptr inbounds double, ptr %2468, i64 %2473
  %2475 = load double, ptr %2474, align 8, !tbaa !11
  %2476 = call double @llvm.fmuladd.f64(double 0x3FAD5B74B5F10E92, double %2475, double %2467)
  %2477 = load ptr, ptr %7, align 8, !tbaa !9
  %2478 = load i32, ptr %12, align 4, !tbaa !5
  %2479 = load i32, ptr %8, align 4, !tbaa !5
  %2480 = mul nsw i32 54, %2479
  %2481 = add nsw i32 %2478, %2480
  %2482 = sext i32 %2481 to i64
  %2483 = getelementptr inbounds double, ptr %2477, i64 %2482
  %2484 = load double, ptr %2483, align 8, !tbaa !11
  %2485 = call double @llvm.fmuladd.f64(double 0xBFE66643AEED36FA, double %2484, double %2476)
  %2486 = load ptr, ptr %7, align 8, !tbaa !9
  %2487 = load i32, ptr %12, align 4, !tbaa !5
  %2488 = load i32, ptr %8, align 4, !tbaa !5
  %2489 = mul nsw i32 55, %2488
  %2490 = add nsw i32 %2487, %2489
  %2491 = sext i32 %2490 to i64
  %2492 = getelementptr inbounds double, ptr %2486, i64 %2491
  %2493 = load double, ptr %2492, align 8, !tbaa !11
  %2494 = call double @llvm.fmuladd.f64(double 0xBFE7007BFD8FD85B, double %2493, double %2485)
  %2495 = load ptr, ptr %7, align 8, !tbaa !9
  %2496 = load i32, ptr %12, align 4, !tbaa !5
  %2497 = load i32, ptr %8, align 4, !tbaa !5
  %2498 = mul nsw i32 56, %2497
  %2499 = add nsw i32 %2496, %2498
  %2500 = sext i32 %2499 to i64
  %2501 = getelementptr inbounds double, ptr %2495, i64 %2500
  %2502 = load double, ptr %2501, align 8, !tbaa !11
  %2503 = call double @llvm.fmuladd.f64(double 0x3C826280B3476096, double %2502, double %2494)
  %2504 = load ptr, ptr %7, align 8, !tbaa !9
  %2505 = load i32, ptr %12, align 4, !tbaa !5
  %2506 = load i32, ptr %8, align 4, !tbaa !5
  %2507 = mul nsw i32 57, %2506
  %2508 = add nsw i32 %2505, %2507
  %2509 = sext i32 %2508 to i64
  %2510 = getelementptr inbounds double, ptr %2504, i64 %2509
  %2511 = load double, ptr %2510, align 8, !tbaa !11
  %2512 = call double @llvm.fmuladd.f64(double 0x3C8C48C6001F0AC0, double %2511, double %2503)
  %2513 = load ptr, ptr %7, align 8, !tbaa !9
  %2514 = load i32, ptr %12, align 4, !tbaa !5
  %2515 = load i32, ptr %8, align 4, !tbaa !5
  %2516 = mul nsw i32 59, %2515
  %2517 = add nsw i32 %2514, %2516
  %2518 = sext i32 %2517 to i64
  %2519 = getelementptr inbounds double, ptr %2513, i64 %2518
  %2520 = load double, ptr %2519, align 8, !tbaa !11
  %2521 = call double @llvm.fmuladd.f64(double 0x3C96A09E667F3BCC, double %2520, double %2512)
  %2522 = load ptr, ptr %7, align 8, !tbaa !9
  %2523 = load i32, ptr %12, align 4, !tbaa !5
  %2524 = load i32, ptr %8, align 4, !tbaa !5
  %2525 = mul nsw i32 60, %2524
  %2526 = add nsw i32 %2523, %2525
  %2527 = sext i32 %2526 to i64
  %2528 = getelementptr inbounds double, ptr %2522, i64 %2527
  %2529 = load double, ptr %2528, align 8, !tbaa !11
  %2530 = call double @llvm.fmuladd.f64(double 0x3C60F876CCDF6CD9, double %2529, double %2521)
  %2531 = load ptr, ptr %7, align 8, !tbaa !9
  %2532 = load i32, ptr %12, align 4, !tbaa !5
  %2533 = load i32, ptr %8, align 4, !tbaa !5
  %2534 = mul nsw i32 61, %2533
  %2535 = add nsw i32 %2532, %2534
  %2536 = sext i32 %2535 to i64
  %2537 = getelementptr inbounds double, ptr %2531, i64 %2536
  %2538 = load double, ptr %2537, align 8, !tbaa !11
  %2539 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %2538, double %2530)
  %2540 = load ptr, ptr %7, align 8, !tbaa !9
  %2541 = load i32, ptr %12, align 4, !tbaa !5
  %2542 = load i32, ptr %8, align 4, !tbaa !5
  %2543 = mul nsw i32 62, %2542
  %2544 = add nsw i32 %2541, %2543
  %2545 = sext i32 %2544 to i64
  %2546 = getelementptr inbounds double, ptr %2540, i64 %2545
  %2547 = load double, ptr %2546, align 8, !tbaa !11
  %2548 = call double @llvm.fmuladd.f64(double 0xBCA6A09E667F3BCC, double %2547, double %2539)
  %2549 = load ptr, ptr %7, align 8, !tbaa !9
  %2550 = load i32, ptr %12, align 4, !tbaa !5
  %2551 = load i32, ptr %8, align 4, !tbaa !5
  %2552 = mul nsw i32 63, %2551
  %2553 = add nsw i32 %2550, %2552
  %2554 = sext i32 %2553 to i64
  %2555 = getelementptr inbounds double, ptr %2549, i64 %2554
  %2556 = load double, ptr %2555, align 8, !tbaa !11
  %2557 = call double @llvm.fmuladd.f64(double 0xBCA6A09E667F3BCC, double %2556, double %2548)
  %2558 = load ptr, ptr %7, align 8, !tbaa !9
  %2559 = load i32, ptr %12, align 4, !tbaa !5
  %2560 = load i32, ptr %8, align 4, !tbaa !5
  %2561 = mul nsw i32 64, %2560
  %2562 = add nsw i32 %2559, %2561
  %2563 = sext i32 %2562 to i64
  %2564 = getelementptr inbounds double, ptr %2558, i64 %2563
  %2565 = load double, ptr %2564, align 8, !tbaa !11
  %2566 = call double @llvm.fmuladd.f64(double 0x3C6F1CD9CCEEF238, double %2565, double %2557)
  %2567 = load ptr, ptr %7, align 8, !tbaa !9
  %2568 = load i32, ptr %12, align 4, !tbaa !5
  %2569 = load i32, ptr %8, align 4, !tbaa !5
  %2570 = mul nsw i32 65, %2569
  %2571 = add nsw i32 %2568, %2570
  %2572 = sext i32 %2571 to i64
  %2573 = getelementptr inbounds double, ptr %2567, i64 %2572
  %2574 = load double, ptr %2573, align 8, !tbaa !11
  %2575 = call double @llvm.fmuladd.f64(double 0x3C8974B2334F2346, double %2574, double %2566)
  %2576 = load ptr, ptr %7, align 8, !tbaa !9
  %2577 = load i32, ptr %12, align 4, !tbaa !5
  %2578 = load i32, ptr %8, align 4, !tbaa !5
  %2579 = mul nsw i32 66, %2578
  %2580 = add nsw i32 %2577, %2579
  %2581 = sext i32 %2580 to i64
  %2582 = getelementptr inbounds double, ptr %2576, i64 %2581
  %2583 = load double, ptr %2582, align 8, !tbaa !11
  %2584 = call double @llvm.fmuladd.f64(double 0xBCAADEBC19B71703, double %2583, double %2575)
  %2585 = load ptr, ptr %7, align 8, !tbaa !9
  %2586 = load i32, ptr %12, align 4, !tbaa !5
  %2587 = load i32, ptr %8, align 4, !tbaa !5
  %2588 = mul nsw i32 67, %2587
  %2589 = add nsw i32 %2586, %2588
  %2590 = sext i32 %2589 to i64
  %2591 = getelementptr inbounds double, ptr %2585, i64 %2590
  %2592 = load double, ptr %2591, align 8, !tbaa !11
  %2593 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %2592, double %2584)
  store double %2593, ptr %11, align 8, !tbaa !11
  %2594 = load double, ptr %11, align 8, !tbaa !11
  %2595 = load ptr, ptr %9, align 8, !tbaa !9
  %2596 = load i32, ptr %12, align 4, !tbaa !5
  %2597 = load i32, ptr %10, align 4, !tbaa !5
  %2598 = mul nsw i32 8, %2597
  %2599 = add nsw i32 %2596, %2598
  %2600 = sext i32 %2599 to i64
  %2601 = getelementptr inbounds double, ptr %2595, i64 %2600
  store double %2594, ptr %2601, align 8, !tbaa !11
  %2602 = load ptr, ptr %7, align 8, !tbaa !9
  %2603 = load i32, ptr %12, align 4, !tbaa !5
  %2604 = load i32, ptr %8, align 4, !tbaa !5
  %2605 = mul nsw i32 36, %2604
  %2606 = add nsw i32 %2603, %2605
  %2607 = sext i32 %2606 to i64
  %2608 = getelementptr inbounds double, ptr %2602, i64 %2607
  %2609 = load double, ptr %2608, align 8, !tbaa !11
  %2610 = load ptr, ptr %7, align 8, !tbaa !9
  %2611 = load i32, ptr %12, align 4, !tbaa !5
  %2612 = load i32, ptr %8, align 4, !tbaa !5
  %2613 = mul nsw i32 37, %2612
  %2614 = add nsw i32 %2611, %2613
  %2615 = sext i32 %2614 to i64
  %2616 = getelementptr inbounds double, ptr %2610, i64 %2615
  %2617 = load double, ptr %2616, align 8, !tbaa !11
  %2618 = fmul double 0xBFB4C23AD63BEF7C, %2617
  %2619 = call double @llvm.fmuladd.f64(double 0xBFAC37F3CCE9FD85, double %2609, double %2618)
  %2620 = load ptr, ptr %7, align 8, !tbaa !9
  %2621 = load i32, ptr %12, align 4, !tbaa !5
  %2622 = load i32, ptr %8, align 4, !tbaa !5
  %2623 = mul nsw i32 38, %2622
  %2624 = add nsw i32 %2621, %2623
  %2625 = sext i32 %2624 to i64
  %2626 = getelementptr inbounds double, ptr %2620, i64 %2625
  %2627 = load double, ptr %2626, align 8, !tbaa !11
  %2628 = call double @llvm.fmuladd.f64(double 0x3FEFAD7976B5DE10, double %2627, double %2619)
  %2629 = load ptr, ptr %7, align 8, !tbaa !9
  %2630 = load i32, ptr %12, align 4, !tbaa !5
  %2631 = load i32, ptr %8, align 4, !tbaa !5
  %2632 = mul nsw i32 39, %2631
  %2633 = add nsw i32 %2630, %2632
  %2634 = sext i32 %2633 to i64
  %2635 = getelementptr inbounds double, ptr %2629, i64 %2634
  %2636 = load double, ptr %2635, align 8, !tbaa !11
  %2637 = call double @llvm.fmuladd.f64(double 0x3FF043C98657E80E, double %2636, double %2628)
  %2638 = load ptr, ptr %7, align 8, !tbaa !9
  %2639 = load i32, ptr %12, align 4, !tbaa !5
  %2640 = load i32, ptr %8, align 4, !tbaa !5
  %2641 = mul nsw i32 40, %2640
  %2642 = add nsw i32 %2639, %2641
  %2643 = sext i32 %2642 to i64
  %2644 = getelementptr inbounds double, ptr %2638, i64 %2643
  %2645 = load double, ptr %2644, align 8, !tbaa !11
  %2646 = call double @llvm.fmuladd.f64(double 0xBC89FFFFFFFFFFFF, double %2645, double %2637)
  %2647 = load ptr, ptr %7, align 8, !tbaa !9
  %2648 = load i32, ptr %12, align 4, !tbaa !5
  %2649 = load i32, ptr %8, align 4, !tbaa !5
  %2650 = mul nsw i32 41, %2649
  %2651 = add nsw i32 %2648, %2650
  %2652 = sext i32 %2651 to i64
  %2653 = getelementptr inbounds double, ptr %2647, i64 %2652
  %2654 = load double, ptr %2653, align 8, !tbaa !11
  %2655 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %2654, double %2646)
  %2656 = load ptr, ptr %7, align 8, !tbaa !9
  %2657 = load i32, ptr %12, align 4, !tbaa !5
  %2658 = load i32, ptr %8, align 4, !tbaa !5
  %2659 = mul nsw i32 43, %2658
  %2660 = add nsw i32 %2657, %2659
  %2661 = sext i32 %2660 to i64
  %2662 = getelementptr inbounds double, ptr %2656, i64 %2661
  %2663 = load double, ptr %2662, align 8, !tbaa !11
  %2664 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %2663, double %2655)
  %2665 = load ptr, ptr %7, align 8, !tbaa !9
  %2666 = load i32, ptr %12, align 4, !tbaa !5
  %2667 = load i32, ptr %8, align 4, !tbaa !5
  %2668 = mul nsw i32 44, %2667
  %2669 = add nsw i32 %2666, %2668
  %2670 = sext i32 %2669 to i64
  %2671 = getelementptr inbounds double, ptr %2665, i64 %2670
  %2672 = load double, ptr %2671, align 8, !tbaa !11
  %2673 = call double @llvm.fmuladd.f64(double 0xBC67FFFFFFFFFFFE, double %2672, double %2664)
  %2674 = load ptr, ptr %7, align 8, !tbaa !9
  %2675 = load i32, ptr %12, align 4, !tbaa !5
  %2676 = load i32, ptr %8, align 4, !tbaa !5
  %2677 = mul nsw i32 45, %2676
  %2678 = add nsw i32 %2675, %2677
  %2679 = sext i32 %2678 to i64
  %2680 = getelementptr inbounds double, ptr %2674, i64 %2679
  %2681 = load double, ptr %2680, align 8, !tbaa !11
  %2682 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %2681, double %2673)
  %2683 = load ptr, ptr %7, align 8, !tbaa !9
  %2684 = load i32, ptr %12, align 4, !tbaa !5
  %2685 = load i32, ptr %8, align 4, !tbaa !5
  %2686 = mul nsw i32 46, %2685
  %2687 = add nsw i32 %2684, %2686
  %2688 = sext i32 %2687 to i64
  %2689 = getelementptr inbounds double, ptr %2683, i64 %2688
  %2690 = load double, ptr %2689, align 8, !tbaa !11
  %2691 = call double @llvm.fmuladd.f64(double 0x3CB0000000000000, double %2690, double %2682)
  %2692 = load ptr, ptr %7, align 8, !tbaa !9
  %2693 = load i32, ptr %12, align 4, !tbaa !5
  %2694 = load i32, ptr %8, align 4, !tbaa !5
  %2695 = mul nsw i32 47, %2694
  %2696 = add nsw i32 %2693, %2695
  %2697 = sext i32 %2696 to i64
  %2698 = getelementptr inbounds double, ptr %2692, i64 %2697
  %2699 = load double, ptr %2698, align 8, !tbaa !11
  %2700 = call double @llvm.fmuladd.f64(double 0x3CB0000000000000, double %2699, double %2691)
  %2701 = load ptr, ptr %7, align 8, !tbaa !9
  %2702 = load i32, ptr %12, align 4, !tbaa !5
  %2703 = load i32, ptr %8, align 4, !tbaa !5
  %2704 = mul nsw i32 48, %2703
  %2705 = add nsw i32 %2702, %2704
  %2706 = sext i32 %2705 to i64
  %2707 = getelementptr inbounds double, ptr %2701, i64 %2706
  %2708 = load double, ptr %2707, align 8, !tbaa !11
  %2709 = call double @llvm.fmuladd.f64(double 0xBC76000000000001, double %2708, double %2700)
  %2710 = load ptr, ptr %7, align 8, !tbaa !9
  %2711 = load i32, ptr %12, align 4, !tbaa !5
  %2712 = load i32, ptr %8, align 4, !tbaa !5
  %2713 = mul nsw i32 49, %2712
  %2714 = add nsw i32 %2711, %2713
  %2715 = sext i32 %2714 to i64
  %2716 = getelementptr inbounds double, ptr %2710, i64 %2715
  %2717 = load double, ptr %2716, align 8, !tbaa !11
  %2718 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %2717, double %2709)
  %2719 = load ptr, ptr %7, align 8, !tbaa !9
  %2720 = load i32, ptr %12, align 4, !tbaa !5
  %2721 = load i32, ptr %8, align 4, !tbaa !5
  %2722 = mul nsw i32 50, %2721
  %2723 = add nsw i32 %2720, %2722
  %2724 = sext i32 %2723 to i64
  %2725 = getelementptr inbounds double, ptr %2719, i64 %2724
  %2726 = load double, ptr %2725, align 8, !tbaa !11
  %2727 = call double @llvm.fmuladd.f64(double 0x3CB3000000000000, double %2726, double %2718)
  %2728 = load ptr, ptr %7, align 8, !tbaa !9
  %2729 = load i32, ptr %12, align 4, !tbaa !5
  %2730 = load i32, ptr %8, align 4, !tbaa !5
  %2731 = mul nsw i32 51, %2730
  %2732 = add nsw i32 %2729, %2731
  %2733 = sext i32 %2732 to i64
  %2734 = getelementptr inbounds double, ptr %2728, i64 %2733
  %2735 = load double, ptr %2734, align 8, !tbaa !11
  %2736 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %2735, double %2727)
  %2737 = load ptr, ptr %7, align 8, !tbaa !9
  %2738 = load i32, ptr %12, align 4, !tbaa !5
  %2739 = load i32, ptr %8, align 4, !tbaa !5
  %2740 = mul nsw i32 52, %2739
  %2741 = add nsw i32 %2738, %2740
  %2742 = sext i32 %2741 to i64
  %2743 = getelementptr inbounds double, ptr %2737, i64 %2742
  %2744 = load double, ptr %2743, align 8, !tbaa !11
  %2745 = call double @llvm.fmuladd.f64(double 0xBFB8DF388696F557, double %2744, double %2736)
  %2746 = load ptr, ptr %7, align 8, !tbaa !9
  %2747 = load i32, ptr %12, align 4, !tbaa !5
  %2748 = load i32, ptr %8, align 4, !tbaa !5
  %2749 = mul nsw i32 53, %2748
  %2750 = add nsw i32 %2747, %2749
  %2751 = sext i32 %2750 to i64
  %2752 = getelementptr inbounds double, ptr %2746, i64 %2751
  %2753 = load double, ptr %2752, align 8, !tbaa !11
  %2754 = call double @llvm.fmuladd.f64(double 0x3FD0C7817D9C3121, double %2753, double %2745)
  %2755 = load ptr, ptr %7, align 8, !tbaa !9
  %2756 = load i32, ptr %12, align 4, !tbaa !5
  %2757 = load i32, ptr %8, align 4, !tbaa !5
  %2758 = mul nsw i32 54, %2757
  %2759 = add nsw i32 %2756, %2758
  %2760 = sext i32 %2759 to i64
  %2761 = getelementptr inbounds double, ptr %2755, i64 %2760
  %2762 = load double, ptr %2761, align 8, !tbaa !11
  %2763 = call double @llvm.fmuladd.f64(double 0x4007001BD846D0A7, double %2762, double %2754)
  %2764 = load ptr, ptr %7, align 8, !tbaa !9
  %2765 = load i32, ptr %12, align 4, !tbaa !5
  %2766 = load i32, ptr %8, align 4, !tbaa !5
  %2767 = mul nsw i32 55, %2766
  %2768 = add nsw i32 %2765, %2767
  %2769 = sext i32 %2768 to i64
  %2770 = getelementptr inbounds double, ptr %2764, i64 %2769
  %2771 = load double, ptr %2770, align 8, !tbaa !11
  %2772 = call double @llvm.fmuladd.f64(double 0x3FD08C54FF1019F7, double %2771, double %2763)
  %2773 = load ptr, ptr %7, align 8, !tbaa !9
  %2774 = load i32, ptr %12, align 4, !tbaa !5
  %2775 = load i32, ptr %8, align 4, !tbaa !5
  %2776 = mul nsw i32 56, %2775
  %2777 = add nsw i32 %2774, %2776
  %2778 = sext i32 %2777 to i64
  %2779 = getelementptr inbounds double, ptr %2773, i64 %2778
  %2780 = load double, ptr %2779, align 8, !tbaa !11
  %2781 = call double @llvm.fmuladd.f64(double 0xBC7F1CD9CCEEF238, double %2780, double %2772)
  %2782 = load ptr, ptr %7, align 8, !tbaa !9
  %2783 = load i32, ptr %12, align 4, !tbaa !5
  %2784 = load i32, ptr %8, align 4, !tbaa !5
  %2785 = mul nsw i32 57, %2784
  %2786 = add nsw i32 %2783, %2785
  %2787 = sext i32 %2786 to i64
  %2788 = getelementptr inbounds double, ptr %2782, i64 %2787
  %2789 = load double, ptr %2788, align 8, !tbaa !11
  %2790 = call double @llvm.fmuladd.f64(double 0x3C80F876CCDF6CD9, double %2789, double %2781)
  %2791 = load ptr, ptr %7, align 8, !tbaa !9
  %2792 = load i32, ptr %12, align 4, !tbaa !5
  %2793 = load i32, ptr %8, align 4, !tbaa !5
  %2794 = mul nsw i32 58, %2793
  %2795 = add nsw i32 %2792, %2794
  %2796 = sext i32 %2795 to i64
  %2797 = getelementptr inbounds double, ptr %2791, i64 %2796
  %2798 = load double, ptr %2797, align 8, !tbaa !11
  %2799 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %2798, double %2790)
  %2800 = load ptr, ptr %7, align 8, !tbaa !9
  %2801 = load i32, ptr %12, align 4, !tbaa !5
  %2802 = load i32, ptr %8, align 4, !tbaa !5
  %2803 = mul nsw i32 59, %2802
  %2804 = add nsw i32 %2801, %2803
  %2805 = sext i32 %2804 to i64
  %2806 = getelementptr inbounds double, ptr %2800, i64 %2805
  %2807 = load double, ptr %2806, align 8, !tbaa !11
  %2808 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %2807, double %2799)
  %2809 = load ptr, ptr %7, align 8, !tbaa !9
  %2810 = load i32, ptr %12, align 4, !tbaa !5
  %2811 = load i32, ptr %8, align 4, !tbaa !5
  %2812 = mul nsw i32 60, %2811
  %2813 = add nsw i32 %2810, %2812
  %2814 = sext i32 %2813 to i64
  %2815 = getelementptr inbounds double, ptr %2809, i64 %2814
  %2816 = load double, ptr %2815, align 8, !tbaa !11
  %2817 = call double @llvm.fmuladd.f64(double 0xBC6C48C6001F0ABE, double %2816, double %2808)
  %2818 = load ptr, ptr %7, align 8, !tbaa !9
  %2819 = load i32, ptr %12, align 4, !tbaa !5
  %2820 = load i32, ptr %8, align 4, !tbaa !5
  %2821 = mul nsw i32 61, %2820
  %2822 = add nsw i32 %2819, %2821
  %2823 = sext i32 %2822 to i64
  %2824 = getelementptr inbounds double, ptr %2818, i64 %2823
  %2825 = load double, ptr %2824, align 8, !tbaa !11
  %2826 = call double @llvm.fmuladd.f64(double 0x3C9974B2334F2346, double %2825, double %2817)
  %2827 = load ptr, ptr %7, align 8, !tbaa !9
  %2828 = load i32, ptr %12, align 4, !tbaa !5
  %2829 = load i32, ptr %8, align 4, !tbaa !5
  %2830 = mul nsw i32 62, %2829
  %2831 = add nsw i32 %2828, %2830
  %2832 = sext i32 %2831 to i64
  %2833 = getelementptr inbounds double, ptr %2827, i64 %2832
  %2834 = load double, ptr %2833, align 8, !tbaa !11
  %2835 = call double @llvm.fmuladd.f64(double 0x3CBADEBC19B71701, double %2834, double %2826)
  %2836 = load ptr, ptr %7, align 8, !tbaa !9
  %2837 = load i32, ptr %12, align 4, !tbaa !5
  %2838 = load i32, ptr %8, align 4, !tbaa !5
  %2839 = mul nsw i32 63, %2838
  %2840 = add nsw i32 %2837, %2839
  %2841 = sext i32 %2840 to i64
  %2842 = getelementptr inbounds double, ptr %2836, i64 %2841
  %2843 = load double, ptr %2842, align 8, !tbaa !11
  %2844 = call double @llvm.fmuladd.f64(double 0x3C96A09E667F3BCC, double %2843, double %2835)
  %2845 = load ptr, ptr %7, align 8, !tbaa !9
  %2846 = load i32, ptr %12, align 4, !tbaa !5
  %2847 = load i32, ptr %8, align 4, !tbaa !5
  %2848 = mul nsw i32 64, %2847
  %2849 = add nsw i32 %2846, %2848
  %2850 = sext i32 %2849 to i64
  %2851 = getelementptr inbounds double, ptr %2845, i64 %2850
  %2852 = load double, ptr %2851, align 8, !tbaa !11
  %2853 = call double @llvm.fmuladd.f64(double 0xBC50F876CCDF6CD8, double %2852, double %2844)
  %2854 = load ptr, ptr %7, align 8, !tbaa !9
  %2855 = load i32, ptr %12, align 4, !tbaa !5
  %2856 = load i32, ptr %8, align 4, !tbaa !5
  %2857 = mul nsw i32 65, %2856
  %2858 = add nsw i32 %2855, %2857
  %2859 = sext i32 %2858 to i64
  %2860 = getelementptr inbounds double, ptr %2854, i64 %2859
  %2861 = load double, ptr %2860, align 8, !tbaa !11
  %2862 = call double @llvm.fmuladd.f64(double 0x3CA04371D9AB72FA, double %2861, double %2853)
  %2863 = load ptr, ptr %7, align 8, !tbaa !9
  %2864 = load i32, ptr %12, align 4, !tbaa !5
  %2865 = load i32, ptr %8, align 4, !tbaa !5
  %2866 = mul nsw i32 66, %2865
  %2867 = add nsw i32 %2864, %2866
  %2868 = sext i32 %2867 to i64
  %2869 = getelementptr inbounds double, ptr %2863, i64 %2868
  %2870 = load double, ptr %2869, align 8, !tbaa !11
  %2871 = call double @llvm.fmuladd.f64(double 0x3CBADEBC19B71701, double %2870, double %2862)
  %2872 = load ptr, ptr %7, align 8, !tbaa !9
  %2873 = load i32, ptr %12, align 4, !tbaa !5
  %2874 = load i32, ptr %8, align 4, !tbaa !5
  %2875 = mul nsw i32 67, %2874
  %2876 = add nsw i32 %2873, %2875
  %2877 = sext i32 %2876 to i64
  %2878 = getelementptr inbounds double, ptr %2872, i64 %2877
  %2879 = load double, ptr %2878, align 8, !tbaa !11
  %2880 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %2879, double %2871)
  store double %2880, ptr %11, align 8, !tbaa !11
  %2881 = load double, ptr %11, align 8, !tbaa !11
  %2882 = load ptr, ptr %9, align 8, !tbaa !9
  %2883 = load i32, ptr %12, align 4, !tbaa !5
  %2884 = load i32, ptr %10, align 4, !tbaa !5
  %2885 = mul nsw i32 9, %2884
  %2886 = add nsw i32 %2883, %2885
  %2887 = sext i32 %2886 to i64
  %2888 = getelementptr inbounds double, ptr %2882, i64 %2887
  store double %2881, ptr %2888, align 8, !tbaa !11
  %2889 = load ptr, ptr %7, align 8, !tbaa !9
  %2890 = load i32, ptr %12, align 4, !tbaa !5
  %2891 = load i32, ptr %8, align 4, !tbaa !5
  %2892 = mul nsw i32 36, %2891
  %2893 = add nsw i32 %2890, %2892
  %2894 = sext i32 %2893 to i64
  %2895 = getelementptr inbounds double, ptr %2889, i64 %2894
  %2896 = load double, ptr %2895, align 8, !tbaa !11
  %2897 = load ptr, ptr %7, align 8, !tbaa !9
  %2898 = load i32, ptr %12, align 4, !tbaa !5
  %2899 = load i32, ptr %8, align 4, !tbaa !5
  %2900 = mul nsw i32 37, %2899
  %2901 = add nsw i32 %2898, %2900
  %2902 = sext i32 %2901 to i64
  %2903 = getelementptr inbounds double, ptr %2897, i64 %2902
  %2904 = load double, ptr %2903, align 8, !tbaa !11
  %2905 = fmul double 0xBC93000000000000, %2904
  %2906 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %2896, double %2905)
  %2907 = load ptr, ptr %7, align 8, !tbaa !9
  %2908 = load i32, ptr %12, align 4, !tbaa !5
  %2909 = load i32, ptr %8, align 4, !tbaa !5
  %2910 = mul nsw i32 38, %2909
  %2911 = add nsw i32 %2908, %2910
  %2912 = sext i32 %2911 to i64
  %2913 = getelementptr inbounds double, ptr %2907, i64 %2912
  %2914 = load double, ptr %2913, align 8, !tbaa !11
  %2915 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %2914, double %2906)
  %2916 = load ptr, ptr %7, align 8, !tbaa !9
  %2917 = load i32, ptr %12, align 4, !tbaa !5
  %2918 = load i32, ptr %8, align 4, !tbaa !5
  %2919 = mul nsw i32 39, %2918
  %2920 = add nsw i32 %2917, %2919
  %2921 = sext i32 %2920 to i64
  %2922 = getelementptr inbounds double, ptr %2916, i64 %2921
  %2923 = load double, ptr %2922, align 8, !tbaa !11
  %2924 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %2923, double %2915)
  %2925 = load ptr, ptr %7, align 8, !tbaa !9
  %2926 = load i32, ptr %12, align 4, !tbaa !5
  %2927 = load i32, ptr %8, align 4, !tbaa !5
  %2928 = mul nsw i32 40, %2927
  %2929 = add nsw i32 %2926, %2928
  %2930 = sext i32 %2929 to i64
  %2931 = getelementptr inbounds double, ptr %2925, i64 %2930
  %2932 = load double, ptr %2931, align 8, !tbaa !11
  %2933 = call double @llvm.fmuladd.f64(double 0x3FA789B66AF4F45E, double %2932, double %2924)
  %2934 = load ptr, ptr %7, align 8, !tbaa !9
  %2935 = load i32, ptr %12, align 4, !tbaa !5
  %2936 = load i32, ptr %8, align 4, !tbaa !5
  %2937 = mul nsw i32 41, %2936
  %2938 = add nsw i32 %2935, %2937
  %2939 = sext i32 %2938 to i64
  %2940 = getelementptr inbounds double, ptr %2934, i64 %2939
  %2941 = load double, ptr %2940, align 8, !tbaa !11
  %2942 = call double @llvm.fmuladd.f64(double 0x3FEC2894019C8AD1, double %2941, double %2933)
  %2943 = load ptr, ptr %7, align 8, !tbaa !9
  %2944 = load i32, ptr %12, align 4, !tbaa !5
  %2945 = load i32, ptr %8, align 4, !tbaa !5
  %2946 = mul nsw i32 42, %2945
  %2947 = add nsw i32 %2944, %2946
  %2948 = sext i32 %2947 to i64
  %2949 = getelementptr inbounds double, ptr %2943, i64 %2948
  %2950 = load double, ptr %2949, align 8, !tbaa !11
  %2951 = call double @llvm.fmuladd.f64(double 0x3FEC2894019C8AC2, double %2950, double %2942)
  %2952 = load ptr, ptr %7, align 8, !tbaa !9
  %2953 = load i32, ptr %12, align 4, !tbaa !5
  %2954 = load i32, ptr %8, align 4, !tbaa !5
  %2955 = mul nsw i32 43, %2954
  %2956 = add nsw i32 %2953, %2955
  %2957 = sext i32 %2956 to i64
  %2958 = getelementptr inbounds double, ptr %2952, i64 %2957
  %2959 = load double, ptr %2958, align 8, !tbaa !11
  %2960 = call double @llvm.fmuladd.f64(double 0x3FA789B66AF4F55B, double %2959, double %2951)
  %2961 = load ptr, ptr %7, align 8, !tbaa !9
  %2962 = load i32, ptr %12, align 4, !tbaa !5
  %2963 = load i32, ptr %8, align 4, !tbaa !5
  %2964 = mul nsw i32 44, %2963
  %2965 = add nsw i32 %2962, %2964
  %2966 = sext i32 %2965 to i64
  %2967 = getelementptr inbounds double, ptr %2961, i64 %2966
  %2968 = load double, ptr %2967, align 8, !tbaa !11
  %2969 = call double @llvm.fmuladd.f64(double 0x3C6C000000000000, double %2968, double %2960)
  %2970 = load ptr, ptr %7, align 8, !tbaa !9
  %2971 = load i32, ptr %12, align 4, !tbaa !5
  %2972 = load i32, ptr %8, align 4, !tbaa !5
  %2973 = mul nsw i32 45, %2972
  %2974 = add nsw i32 %2971, %2973
  %2975 = sext i32 %2974 to i64
  %2976 = getelementptr inbounds double, ptr %2970, i64 %2975
  %2977 = load double, ptr %2976, align 8, !tbaa !11
  %2978 = call double @llvm.fmuladd.f64(double 0x3C9A000000000000, double %2977, double %2969)
  %2979 = load ptr, ptr %7, align 8, !tbaa !9
  %2980 = load i32, ptr %12, align 4, !tbaa !5
  %2981 = load i32, ptr %8, align 4, !tbaa !5
  %2982 = mul nsw i32 46, %2981
  %2983 = add nsw i32 %2980, %2982
  %2984 = sext i32 %2983 to i64
  %2985 = getelementptr inbounds double, ptr %2979, i64 %2984
  %2986 = load double, ptr %2985, align 8, !tbaa !11
  %2987 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %2986, double %2978)
  %2988 = load ptr, ptr %7, align 8, !tbaa !9
  %2989 = load i32, ptr %12, align 4, !tbaa !5
  %2990 = load i32, ptr %8, align 4, !tbaa !5
  %2991 = mul nsw i32 47, %2990
  %2992 = add nsw i32 %2989, %2991
  %2993 = sext i32 %2992 to i64
  %2994 = getelementptr inbounds double, ptr %2988, i64 %2993
  %2995 = load double, ptr %2994, align 8, !tbaa !11
  %2996 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %2995, double %2987)
  %2997 = load ptr, ptr %7, align 8, !tbaa !9
  %2998 = load i32, ptr %12, align 4, !tbaa !5
  %2999 = load i32, ptr %8, align 4, !tbaa !5
  %3000 = mul nsw i32 48, %2999
  %3001 = add nsw i32 %2998, %3000
  %3002 = sext i32 %3001 to i64
  %3003 = getelementptr inbounds double, ptr %2997, i64 %3002
  %3004 = load double, ptr %3003, align 8, !tbaa !11
  %3005 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %3004, double %2996)
  %3006 = load ptr, ptr %7, align 8, !tbaa !9
  %3007 = load i32, ptr %12, align 4, !tbaa !5
  %3008 = load i32, ptr %8, align 4, !tbaa !5
  %3009 = mul nsw i32 49, %3008
  %3010 = add nsw i32 %3007, %3009
  %3011 = sext i32 %3010 to i64
  %3012 = getelementptr inbounds double, ptr %3006, i64 %3011
  %3013 = load double, ptr %3012, align 8, !tbaa !11
  %3014 = call double @llvm.fmuladd.f64(double 0xBC89FFFFFFFFFFFF, double %3013, double %3005)
  %3015 = load ptr, ptr %7, align 8, !tbaa !9
  %3016 = load i32, ptr %12, align 4, !tbaa !5
  %3017 = load i32, ptr %8, align 4, !tbaa !5
  %3018 = mul nsw i32 50, %3017
  %3019 = add nsw i32 %3016, %3018
  %3020 = sext i32 %3019 to i64
  %3021 = getelementptr inbounds double, ptr %3015, i64 %3020
  %3022 = load double, ptr %3021, align 8, !tbaa !11
  %3023 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %3022, double %3014)
  %3024 = load ptr, ptr %7, align 8, !tbaa !9
  %3025 = load i32, ptr %12, align 4, !tbaa !5
  %3026 = load i32, ptr %8, align 4, !tbaa !5
  %3027 = mul nsw i32 51, %3026
  %3028 = add nsw i32 %3025, %3027
  %3029 = sext i32 %3028 to i64
  %3030 = getelementptr inbounds double, ptr %3024, i64 %3029
  %3031 = load double, ptr %3030, align 8, !tbaa !11
  %3032 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %3031, double %3023)
  %3033 = load ptr, ptr %7, align 8, !tbaa !9
  %3034 = load i32, ptr %12, align 4, !tbaa !5
  %3035 = load i32, ptr %8, align 4, !tbaa !5
  %3036 = mul nsw i32 52, %3035
  %3037 = add nsw i32 %3034, %3036
  %3038 = sext i32 %3037 to i64
  %3039 = getelementptr inbounds double, ptr %3033, i64 %3038
  %3040 = load double, ptr %3039, align 8, !tbaa !11
  %3041 = call double @llvm.fmuladd.f64(double 0xBC84818F8CE34E32, double %3040, double %3032)
  %3042 = load ptr, ptr %7, align 8, !tbaa !9
  %3043 = load i32, ptr %12, align 4, !tbaa !5
  %3044 = load i32, ptr %8, align 4, !tbaa !5
  %3045 = mul nsw i32 53, %3044
  %3046 = add nsw i32 %3043, %3045
  %3047 = sext i32 %3046 to i64
  %3048 = getelementptr inbounds double, ptr %3042, i64 %3047
  %3049 = load double, ptr %3048, align 8, !tbaa !11
  %3050 = call double @llvm.fmuladd.f64(double 0x3C6C48C6001F0ABE, double %3049, double %3041)
  %3051 = load ptr, ptr %7, align 8, !tbaa !9
  %3052 = load i32, ptr %12, align 4, !tbaa !5
  %3053 = load i32, ptr %8, align 4, !tbaa !5
  %3054 = mul nsw i32 54, %3053
  %3055 = add nsw i32 %3052, %3054
  %3056 = sext i32 %3055 to i64
  %3057 = getelementptr inbounds double, ptr %3051, i64 %3056
  %3058 = load double, ptr %3057, align 8, !tbaa !11
  %3059 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %3058, double %3050)
  %3060 = load ptr, ptr %7, align 8, !tbaa !9
  %3061 = load i32, ptr %12, align 4, !tbaa !5
  %3062 = load i32, ptr %8, align 4, !tbaa !5
  %3063 = mul nsw i32 55, %3062
  %3064 = add nsw i32 %3061, %3063
  %3065 = sext i32 %3064 to i64
  %3066 = getelementptr inbounds double, ptr %3060, i64 %3065
  %3067 = load double, ptr %3066, align 8, !tbaa !11
  %3068 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %3067, double %3059)
  %3069 = load ptr, ptr %7, align 8, !tbaa !9
  %3070 = load i32, ptr %12, align 4, !tbaa !5
  %3071 = load i32, ptr %8, align 4, !tbaa !5
  %3072 = mul nsw i32 56, %3071
  %3073 = add nsw i32 %3070, %3072
  %3074 = sext i32 %3073 to i64
  %3075 = getelementptr inbounds double, ptr %3069, i64 %3074
  %3076 = load double, ptr %3075, align 8, !tbaa !11
  %3077 = call double @llvm.fmuladd.f64(double 0xBFA0A4D27CF86DCE, double %3076, double %3068)
  %3078 = load ptr, ptr %7, align 8, !tbaa !9
  %3079 = load i32, ptr %12, align 4, !tbaa !5
  %3080 = load i32, ptr %8, align 4, !tbaa !5
  %3081 = mul nsw i32 57, %3080
  %3082 = add nsw i32 %3079, %3081
  %3083 = sext i32 %3082 to i64
  %3084 = getelementptr inbounds double, ptr %3078, i64 %3083
  %3085 = load double, ptr %3084, align 8, !tbaa !11
  %3086 = call double @llvm.fmuladd.f64(double 0xBFE3E93C07AFC382, double %3085, double %3077)
  %3087 = load ptr, ptr %7, align 8, !tbaa !9
  %3088 = load i32, ptr %12, align 4, !tbaa !5
  %3089 = load i32, ptr %8, align 4, !tbaa !5
  %3090 = mul nsw i32 58, %3089
  %3091 = add nsw i32 %3088, %3090
  %3092 = sext i32 %3091 to i64
  %3093 = getelementptr inbounds double, ptr %3087, i64 %3092
  %3094 = load double, ptr %3093, align 8, !tbaa !11
  %3095 = call double @llvm.fmuladd.f64(double 0xBFE3E93C07AFC37F, double %3094, double %3086)
  %3096 = load ptr, ptr %7, align 8, !tbaa !9
  %3097 = load i32, ptr %12, align 4, !tbaa !5
  %3098 = load i32, ptr %8, align 4, !tbaa !5
  %3099 = mul nsw i32 59, %3098
  %3100 = add nsw i32 %3097, %3099
  %3101 = sext i32 %3100 to i64
  %3102 = getelementptr inbounds double, ptr %3096, i64 %3101
  %3103 = load double, ptr %3102, align 8, !tbaa !11
  %3104 = call double @llvm.fmuladd.f64(double 0xBFA0A4D27CF86DB4, double %3103, double %3095)
  %3105 = load ptr, ptr %7, align 8, !tbaa !9
  %3106 = load i32, ptr %12, align 4, !tbaa !5
  %3107 = load i32, ptr %8, align 4, !tbaa !5
  %3108 = mul nsw i32 60, %3107
  %3109 = add nsw i32 %3106, %3108
  %3110 = sext i32 %3109 to i64
  %3111 = getelementptr inbounds double, ptr %3105, i64 %3110
  %3112 = load double, ptr %3111, align 8, !tbaa !11
  %3113 = call double @llvm.fmuladd.f64(double 0xBC9207FE39AD63A7, double %3112, double %3104)
  %3114 = load ptr, ptr %7, align 8, !tbaa !9
  %3115 = load i32, ptr %12, align 4, !tbaa !5
  %3116 = load i32, ptr %8, align 4, !tbaa !5
  %3117 = mul nsw i32 61, %3116
  %3118 = add nsw i32 %3115, %3117
  %3119 = sext i32 %3118 to i64
  %3120 = getelementptr inbounds double, ptr %3114, i64 %3119
  %3121 = load double, ptr %3120, align 8, !tbaa !11
  %3122 = call double @llvm.fmuladd.f64(double 0xBC83CC8A99AF5451, double %3121, double %3113)
  %3123 = load ptr, ptr %7, align 8, !tbaa !9
  %3124 = load i32, ptr %12, align 4, !tbaa !5
  %3125 = load i32, ptr %8, align 4, !tbaa !5
  %3126 = mul nsw i32 63, %3125
  %3127 = add nsw i32 %3124, %3126
  %3128 = sext i32 %3127 to i64
  %3129 = getelementptr inbounds double, ptr %3123, i64 %3128
  %3130 = load double, ptr %3129, align 8, !tbaa !11
  %3131 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %3130, double %3122)
  %3132 = load ptr, ptr %7, align 8, !tbaa !9
  %3133 = load i32, ptr %12, align 4, !tbaa !5
  %3134 = load i32, ptr %8, align 4, !tbaa !5
  %3135 = mul nsw i32 64, %3134
  %3136 = add nsw i32 %3133, %3135
  %3137 = sext i32 %3136 to i64
  %3138 = getelementptr inbounds double, ptr %3132, i64 %3137
  %3139 = load double, ptr %3138, align 8, !tbaa !11
  %3140 = call double @llvm.fmuladd.f64(double 0xBC50F876CCDF6CD8, double %3139, double %3131)
  %3141 = load ptr, ptr %7, align 8, !tbaa !9
  %3142 = load i32, ptr %12, align 4, !tbaa !5
  %3143 = load i32, ptr %8, align 4, !tbaa !5
  %3144 = mul nsw i32 65, %3143
  %3145 = add nsw i32 %3142, %3144
  %3146 = sext i32 %3145 to i64
  %3147 = getelementptr inbounds double, ptr %3141, i64 %3146
  %3148 = load double, ptr %3147, align 8, !tbaa !11
  %3149 = call double @llvm.fmuladd.f64(double 0x3C7F1CD9CCEEF238, double %3148, double %3140)
  %3150 = load ptr, ptr %7, align 8, !tbaa !9
  %3151 = load i32, ptr %12, align 4, !tbaa !5
  %3152 = load i32, ptr %8, align 4, !tbaa !5
  %3153 = mul nsw i32 66, %3152
  %3154 = add nsw i32 %3151, %3153
  %3155 = sext i32 %3154 to i64
  %3156 = getelementptr inbounds double, ptr %3150, i64 %3155
  %3157 = load double, ptr %3156, align 8, !tbaa !11
  %3158 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %3157, double %3149)
  %3159 = load ptr, ptr %7, align 8, !tbaa !9
  %3160 = load i32, ptr %12, align 4, !tbaa !5
  %3161 = load i32, ptr %8, align 4, !tbaa !5
  %3162 = mul nsw i32 67, %3161
  %3163 = add nsw i32 %3160, %3162
  %3164 = sext i32 %3163 to i64
  %3165 = getelementptr inbounds double, ptr %3159, i64 %3164
  %3166 = load double, ptr %3165, align 8, !tbaa !11
  %3167 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %3166, double %3158)
  store double %3167, ptr %11, align 8, !tbaa !11
  %3168 = load double, ptr %11, align 8, !tbaa !11
  %3169 = load ptr, ptr %9, align 8, !tbaa !9
  %3170 = load i32, ptr %12, align 4, !tbaa !5
  %3171 = load i32, ptr %10, align 4, !tbaa !5
  %3172 = mul nsw i32 10, %3171
  %3173 = add nsw i32 %3170, %3172
  %3174 = sext i32 %3173 to i64
  %3175 = getelementptr inbounds double, ptr %3169, i64 %3174
  store double %3168, ptr %3175, align 8, !tbaa !11
  %3176 = load ptr, ptr %7, align 8, !tbaa !9
  %3177 = load i32, ptr %12, align 4, !tbaa !5
  %3178 = load i32, ptr %8, align 4, !tbaa !5
  %3179 = mul nsw i32 36, %3178
  %3180 = add nsw i32 %3177, %3179
  %3181 = sext i32 %3180 to i64
  %3182 = getelementptr inbounds double, ptr %3176, i64 %3181
  %3183 = load double, ptr %3182, align 8, !tbaa !11
  %3184 = load ptr, ptr %7, align 8, !tbaa !9
  %3185 = load i32, ptr %12, align 4, !tbaa !5
  %3186 = load i32, ptr %8, align 4, !tbaa !5
  %3187 = mul nsw i32 37, %3186
  %3188 = add nsw i32 %3185, %3187
  %3189 = sext i32 %3188 to i64
  %3190 = getelementptr inbounds double, ptr %3184, i64 %3189
  %3191 = load double, ptr %3190, align 8, !tbaa !11
  %3192 = fmul double 0xBC90000000000000, %3191
  %3193 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %3183, double %3192)
  %3194 = load ptr, ptr %7, align 8, !tbaa !9
  %3195 = load i32, ptr %12, align 4, !tbaa !5
  %3196 = load i32, ptr %8, align 4, !tbaa !5
  %3197 = mul nsw i32 38, %3196
  %3198 = add nsw i32 %3195, %3197
  %3199 = sext i32 %3198 to i64
  %3200 = getelementptr inbounds double, ptr %3194, i64 %3199
  %3201 = load double, ptr %3200, align 8, !tbaa !11
  %3202 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %3201, double %3193)
  %3203 = load ptr, ptr %7, align 8, !tbaa !9
  %3204 = load i32, ptr %12, align 4, !tbaa !5
  %3205 = load i32, ptr %8, align 4, !tbaa !5
  %3206 = mul nsw i32 39, %3205
  %3207 = add nsw i32 %3204, %3206
  %3208 = sext i32 %3207 to i64
  %3209 = getelementptr inbounds double, ptr %3203, i64 %3208
  %3210 = load double, ptr %3209, align 8, !tbaa !11
  %3211 = call double @llvm.fmuladd.f64(double 0xBCB0000000000000, double %3210, double %3202)
  %3212 = load ptr, ptr %7, align 8, !tbaa !9
  %3213 = load i32, ptr %12, align 4, !tbaa !5
  %3214 = load i32, ptr %8, align 4, !tbaa !5
  %3215 = mul nsw i32 40, %3214
  %3216 = add nsw i32 %3213, %3215
  %3217 = sext i32 %3216 to i64
  %3218 = getelementptr inbounds double, ptr %3212, i64 %3217
  %3219 = load double, ptr %3218, align 8, !tbaa !11
  %3220 = call double @llvm.fmuladd.f64(double 0xBFACD49071EC5F4A, double %3219, double %3211)
  %3221 = load ptr, ptr %7, align 8, !tbaa !9
  %3222 = load i32, ptr %12, align 4, !tbaa !5
  %3223 = load i32, ptr %8, align 4, !tbaa !5
  %3224 = mul nsw i32 41, %3223
  %3225 = add nsw i32 %3222, %3224
  %3226 = sext i32 %3225 to i64
  %3227 = getelementptr inbounds double, ptr %3221, i64 %3226
  %3228 = load double, ptr %3227, align 8, !tbaa !11
  %3229 = call double @llvm.fmuladd.f64(double 0x3FCEFDC8894D082A, double %3228, double %3220)
  %3230 = load ptr, ptr %7, align 8, !tbaa !9
  %3231 = load i32, ptr %12, align 4, !tbaa !5
  %3232 = load i32, ptr %8, align 4, !tbaa !5
  %3233 = mul nsw i32 42, %3232
  %3234 = add nsw i32 %3231, %3233
  %3235 = sext i32 %3234 to i64
  %3236 = getelementptr inbounds double, ptr %3230, i64 %3235
  %3237 = load double, ptr %3236, align 8, !tbaa !11
  %3238 = call double @llvm.fmuladd.f64(double 0xBFDD2EB9CCB3BDEB, double %3237, double %3229)
  %3239 = load ptr, ptr %7, align 8, !tbaa !9
  %3240 = load i32, ptr %12, align 4, !tbaa !5
  %3241 = load i32, ptr %8, align 4, !tbaa !5
  %3242 = mul nsw i32 43, %3241
  %3243 = add nsw i32 %3240, %3242
  %3244 = sext i32 %3243 to i64
  %3245 = getelementptr inbounds double, ptr %3239, i64 %3244
  %3246 = load double, ptr %3245, align 8, !tbaa !11
  %3247 = call double @llvm.fmuladd.f64(double 0xC01569E165D79419, double %3246, double %3238)
  %3248 = load ptr, ptr %7, align 8, !tbaa !9
  %3249 = load i32, ptr %12, align 4, !tbaa !5
  %3250 = load i32, ptr %8, align 4, !tbaa !5
  %3251 = mul nsw i32 44, %3250
  %3252 = add nsw i32 %3249, %3251
  %3253 = sext i32 %3252 to i64
  %3254 = getelementptr inbounds double, ptr %3248, i64 %3253
  %3255 = load double, ptr %3254, align 8, !tbaa !11
  %3256 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %3255, double %3247)
  %3257 = load ptr, ptr %7, align 8, !tbaa !9
  %3258 = load i32, ptr %12, align 4, !tbaa !5
  %3259 = load i32, ptr %8, align 4, !tbaa !5
  %3260 = mul nsw i32 46, %3259
  %3261 = add nsw i32 %3258, %3260
  %3262 = sext i32 %3261 to i64
  %3263 = getelementptr inbounds double, ptr %3257, i64 %3262
  %3264 = load double, ptr %3263, align 8, !tbaa !11
  %3265 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %3264, double %3256)
  %3266 = load ptr, ptr %7, align 8, !tbaa !9
  %3267 = load i32, ptr %12, align 4, !tbaa !5
  %3268 = load i32, ptr %8, align 4, !tbaa !5
  %3269 = mul nsw i32 47, %3268
  %3270 = add nsw i32 %3267, %3269
  %3271 = sext i32 %3270 to i64
  %3272 = getelementptr inbounds double, ptr %3266, i64 %3271
  %3273 = load double, ptr %3272, align 8, !tbaa !11
  %3274 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %3273, double %3265)
  %3275 = load ptr, ptr %7, align 8, !tbaa !9
  %3276 = load i32, ptr %12, align 4, !tbaa !5
  %3277 = load i32, ptr %8, align 4, !tbaa !5
  %3278 = mul nsw i32 48, %3277
  %3279 = add nsw i32 %3276, %3278
  %3280 = sext i32 %3279 to i64
  %3281 = getelementptr inbounds double, ptr %3275, i64 %3280
  %3282 = load double, ptr %3281, align 8, !tbaa !11
  %3283 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %3282, double %3274)
  %3284 = load ptr, ptr %7, align 8, !tbaa !9
  %3285 = load i32, ptr %12, align 4, !tbaa !5
  %3286 = load i32, ptr %8, align 4, !tbaa !5
  %3287 = mul nsw i32 49, %3286
  %3288 = add nsw i32 %3285, %3287
  %3289 = sext i32 %3288 to i64
  %3290 = getelementptr inbounds double, ptr %3284, i64 %3289
  %3291 = load double, ptr %3290, align 8, !tbaa !11
  %3292 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %3291, double %3283)
  %3293 = load ptr, ptr %7, align 8, !tbaa !9
  %3294 = load i32, ptr %12, align 4, !tbaa !5
  %3295 = load i32, ptr %8, align 4, !tbaa !5
  %3296 = mul nsw i32 50, %3295
  %3297 = add nsw i32 %3294, %3296
  %3298 = sext i32 %3297 to i64
  %3299 = getelementptr inbounds double, ptr %3293, i64 %3298
  %3300 = load double, ptr %3299, align 8, !tbaa !11
  %3301 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %3300, double %3292)
  %3302 = load ptr, ptr %7, align 8, !tbaa !9
  %3303 = load i32, ptr %12, align 4, !tbaa !5
  %3304 = load i32, ptr %8, align 4, !tbaa !5
  %3305 = mul nsw i32 51, %3304
  %3306 = add nsw i32 %3303, %3305
  %3307 = sext i32 %3306 to i64
  %3308 = getelementptr inbounds double, ptr %3302, i64 %3307
  %3309 = load double, ptr %3308, align 8, !tbaa !11
  %3310 = call double @llvm.fmuladd.f64(double 0xBCB0000000000000, double %3309, double %3301)
  %3311 = load ptr, ptr %7, align 8, !tbaa !9
  %3312 = load i32, ptr %12, align 4, !tbaa !5
  %3313 = load i32, ptr %8, align 4, !tbaa !5
  %3314 = mul nsw i32 52, %3313
  %3315 = add nsw i32 %3312, %3314
  %3316 = sext i32 %3315 to i64
  %3317 = getelementptr inbounds double, ptr %3311, i64 %3316
  %3318 = load double, ptr %3317, align 8, !tbaa !11
  %3319 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %3318, double %3310)
  %3320 = load ptr, ptr %7, align 8, !tbaa !9
  %3321 = load i32, ptr %12, align 4, !tbaa !5
  %3322 = load i32, ptr %8, align 4, !tbaa !5
  %3323 = mul nsw i32 53, %3322
  %3324 = add nsw i32 %3321, %3323
  %3325 = sext i32 %3324 to i64
  %3326 = getelementptr inbounds double, ptr %3320, i64 %3325
  %3327 = load double, ptr %3326, align 8, !tbaa !11
  %3328 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %3327, double %3319)
  %3329 = load ptr, ptr %7, align 8, !tbaa !9
  %3330 = load i32, ptr %12, align 4, !tbaa !5
  %3331 = load i32, ptr %8, align 4, !tbaa !5
  %3332 = mul nsw i32 54, %3331
  %3333 = add nsw i32 %3330, %3332
  %3334 = sext i32 %3333 to i64
  %3335 = getelementptr inbounds double, ptr %3329, i64 %3334
  %3336 = load double, ptr %3335, align 8, !tbaa !11
  %3337 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %3336, double %3328)
  %3338 = load ptr, ptr %7, align 8, !tbaa !9
  %3339 = load i32, ptr %12, align 4, !tbaa !5
  %3340 = load i32, ptr %8, align 4, !tbaa !5
  %3341 = mul nsw i32 55, %3340
  %3342 = add nsw i32 %3339, %3341
  %3343 = sext i32 %3342 to i64
  %3344 = getelementptr inbounds double, ptr %3338, i64 %3343
  %3345 = load double, ptr %3344, align 8, !tbaa !11
  %3346 = call double @llvm.fmuladd.f64(double 0x3CB0F876CCDF6CD8, double %3345, double %3337)
  %3347 = load ptr, ptr %7, align 8, !tbaa !9
  %3348 = load i32, ptr %12, align 4, !tbaa !5
  %3349 = load i32, ptr %8, align 4, !tbaa !5
  %3350 = mul nsw i32 56, %3349
  %3351 = add nsw i32 %3348, %3350
  %3352 = sext i32 %3351 to i64
  %3353 = getelementptr inbounds double, ptr %3347, i64 %3352
  %3354 = load double, ptr %3353, align 8, !tbaa !11
  %3355 = call double @llvm.fmuladd.f64(double 0x3FA462D8D66D7FBE, double %3354, double %3346)
  %3356 = load ptr, ptr %7, align 8, !tbaa !9
  %3357 = load i32, ptr %12, align 4, !tbaa !5
  %3358 = load i32, ptr %8, align 4, !tbaa !5
  %3359 = mul nsw i32 57, %3358
  %3360 = add nsw i32 %3357, %3359
  %3361 = sext i32 %3360 to i64
  %3362 = getelementptr inbounds double, ptr %3356, i64 %3361
  %3363 = load double, ptr %3362, align 8, !tbaa !11
  %3364 = call double @llvm.fmuladd.f64(double 0xBFC5EA083165C4F6, double %3363, double %3355)
  %3365 = load ptr, ptr %7, align 8, !tbaa !9
  %3366 = load i32, ptr %12, align 4, !tbaa !5
  %3367 = load i32, ptr %8, align 4, !tbaa !5
  %3368 = mul nsw i32 58, %3367
  %3369 = add nsw i32 %3366, %3368
  %3370 = sext i32 %3369 to i64
  %3371 = getelementptr inbounds double, ptr %3365, i64 %3370
  %3372 = load double, ptr %3371, align 8, !tbaa !11
  %3373 = call double @llvm.fmuladd.f64(double 0x3FD4A299D1E97012, double %3372, double %3364)
  %3374 = load ptr, ptr %7, align 8, !tbaa !9
  %3375 = load i32, ptr %12, align 4, !tbaa !5
  %3376 = load i32, ptr %8, align 4, !tbaa !5
  %3377 = mul nsw i32 59, %3376
  %3378 = add nsw i32 %3375, %3377
  %3379 = sext i32 %3378 to i64
  %3380 = getelementptr inbounds double, ptr %3374, i64 %3379
  %3381 = load double, ptr %3380, align 8, !tbaa !11
  %3382 = call double @llvm.fmuladd.f64(double 0x400E488CB8C1EA78, double %3381, double %3373)
  %3383 = load ptr, ptr %7, align 8, !tbaa !9
  %3384 = load i32, ptr %12, align 4, !tbaa !5
  %3385 = load i32, ptr %8, align 4, !tbaa !5
  %3386 = mul nsw i32 60, %3385
  %3387 = add nsw i32 %3384, %3386
  %3388 = sext i32 %3387 to i64
  %3389 = getelementptr inbounds double, ptr %3383, i64 %3388
  %3390 = load double, ptr %3389, align 8, !tbaa !11
  %3391 = call double @llvm.fmuladd.f64(double 0x3C70F876CCDF6CD9, double %3390, double %3382)
  %3392 = load ptr, ptr %7, align 8, !tbaa !9
  %3393 = load i32, ptr %12, align 4, !tbaa !5
  %3394 = load i32, ptr %8, align 4, !tbaa !5
  %3395 = mul nsw i32 61, %3394
  %3396 = add nsw i32 %3393, %3395
  %3397 = sext i32 %3396 to i64
  %3398 = getelementptr inbounds double, ptr %3392, i64 %3397
  %3399 = load double, ptr %3398, align 8, !tbaa !11
  %3400 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %3399, double %3391)
  %3401 = load ptr, ptr %7, align 8, !tbaa !9
  %3402 = load i32, ptr %12, align 4, !tbaa !5
  %3403 = load i32, ptr %8, align 4, !tbaa !5
  %3404 = mul nsw i32 62, %3403
  %3405 = add nsw i32 %3402, %3404
  %3406 = sext i32 %3405 to i64
  %3407 = getelementptr inbounds double, ptr %3401, i64 %3406
  %3408 = load double, ptr %3407, align 8, !tbaa !11
  %3409 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %3408, double %3400)
  %3410 = load ptr, ptr %7, align 8, !tbaa !9
  %3411 = load i32, ptr %12, align 4, !tbaa !5
  %3412 = load i32, ptr %8, align 4, !tbaa !5
  %3413 = mul nsw i32 63, %3412
  %3414 = add nsw i32 %3411, %3413
  %3415 = sext i32 %3414 to i64
  %3416 = getelementptr inbounds double, ptr %3410, i64 %3415
  %3417 = load double, ptr %3416, align 8, !tbaa !11
  %3418 = call double @llvm.fmuladd.f64(double 0xBCC3CC8A99AF5452, double %3417, double %3409)
  %3419 = load ptr, ptr %7, align 8, !tbaa !9
  %3420 = load i32, ptr %12, align 4, !tbaa !5
  %3421 = load i32, ptr %8, align 4, !tbaa !5
  %3422 = mul nsw i32 64, %3421
  %3423 = add nsw i32 %3420, %3422
  %3424 = sext i32 %3423 to i64
  %3425 = getelementptr inbounds double, ptr %3419, i64 %3424
  %3426 = load double, ptr %3425, align 8, !tbaa !11
  %3427 = call double @llvm.fmuladd.f64(double 0x3C70F876CCDF6CD9, double %3426, double %3418)
  %3428 = load ptr, ptr %7, align 8, !tbaa !9
  %3429 = load i32, ptr %12, align 4, !tbaa !5
  %3430 = load i32, ptr %8, align 4, !tbaa !5
  %3431 = mul nsw i32 65, %3430
  %3432 = add nsw i32 %3429, %3431
  %3433 = sext i32 %3432 to i64
  %3434 = getelementptr inbounds double, ptr %3428, i64 %3433
  %3435 = load double, ptr %3434, align 8, !tbaa !11
  %3436 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %3435, double %3427)
  %3437 = load ptr, ptr %7, align 8, !tbaa !9
  %3438 = load i32, ptr %12, align 4, !tbaa !5
  %3439 = load i32, ptr %8, align 4, !tbaa !5
  %3440 = mul nsw i32 66, %3439
  %3441 = add nsw i32 %3438, %3440
  %3442 = sext i32 %3441 to i64
  %3443 = getelementptr inbounds double, ptr %3437, i64 %3442
  %3444 = load double, ptr %3443, align 8, !tbaa !11
  %3445 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %3444, double %3436)
  %3446 = load ptr, ptr %7, align 8, !tbaa !9
  %3447 = load i32, ptr %12, align 4, !tbaa !5
  %3448 = load i32, ptr %8, align 4, !tbaa !5
  %3449 = mul nsw i32 67, %3448
  %3450 = add nsw i32 %3447, %3449
  %3451 = sext i32 %3450 to i64
  %3452 = getelementptr inbounds double, ptr %3446, i64 %3451
  %3453 = load double, ptr %3452, align 8, !tbaa !11
  %3454 = call double @llvm.fmuladd.f64(double 0x3C96A09E667F3BCC, double %3453, double %3445)
  store double %3454, ptr %11, align 8, !tbaa !11
  %3455 = load double, ptr %11, align 8, !tbaa !11
  %3456 = load ptr, ptr %9, align 8, !tbaa !9
  %3457 = load i32, ptr %12, align 4, !tbaa !5
  %3458 = load i32, ptr %10, align 4, !tbaa !5
  %3459 = mul nsw i32 11, %3458
  %3460 = add nsw i32 %3457, %3459
  %3461 = sext i32 %3460 to i64
  %3462 = getelementptr inbounds double, ptr %3456, i64 %3461
  store double %3455, ptr %3462, align 8, !tbaa !11
  %3463 = load ptr, ptr %7, align 8, !tbaa !9
  %3464 = load i32, ptr %12, align 4, !tbaa !5
  %3465 = load i32, ptr %8, align 4, !tbaa !5
  %3466 = mul nsw i32 36, %3465
  %3467 = add nsw i32 %3464, %3466
  %3468 = sext i32 %3467 to i64
  %3469 = getelementptr inbounds double, ptr %3463, i64 %3468
  %3470 = load double, ptr %3469, align 8, !tbaa !11
  %3471 = load ptr, ptr %7, align 8, !tbaa !9
  %3472 = load i32, ptr %12, align 4, !tbaa !5
  %3473 = load i32, ptr %8, align 4, !tbaa !5
  %3474 = mul nsw i32 37, %3473
  %3475 = add nsw i32 %3472, %3474
  %3476 = sext i32 %3475 to i64
  %3477 = getelementptr inbounds double, ptr %3471, i64 %3476
  %3478 = load double, ptr %3477, align 8, !tbaa !11
  %3479 = fmul double 0xBCA8000000000001, %3478
  %3480 = call double @llvm.fmuladd.f64(double 0xBC62000000000000, double %3470, double %3479)
  %3481 = load ptr, ptr %7, align 8, !tbaa !9
  %3482 = load i32, ptr %12, align 4, !tbaa !5
  %3483 = load i32, ptr %8, align 4, !tbaa !5
  %3484 = mul nsw i32 38, %3483
  %3485 = add nsw i32 %3482, %3484
  %3486 = sext i32 %3485 to i64
  %3487 = getelementptr inbounds double, ptr %3481, i64 %3486
  %3488 = load double, ptr %3487, align 8, !tbaa !11
  %3489 = call double @llvm.fmuladd.f64(double 0x3CA2FFFFFFFFFFFE, double %3488, double %3480)
  %3490 = load ptr, ptr %7, align 8, !tbaa !9
  %3491 = load i32, ptr %12, align 4, !tbaa !5
  %3492 = load i32, ptr %8, align 4, !tbaa !5
  %3493 = mul nsw i32 39, %3492
  %3494 = add nsw i32 %3491, %3493
  %3495 = sext i32 %3494 to i64
  %3496 = getelementptr inbounds double, ptr %3490, i64 %3495
  %3497 = load double, ptr %3496, align 8, !tbaa !11
  %3498 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %3497, double %3489)
  %3499 = load ptr, ptr %7, align 8, !tbaa !9
  %3500 = load i32, ptr %12, align 4, !tbaa !5
  %3501 = load i32, ptr %8, align 4, !tbaa !5
  %3502 = mul nsw i32 40, %3501
  %3503 = add nsw i32 %3500, %3502
  %3504 = sext i32 %3503 to i64
  %3505 = getelementptr inbounds double, ptr %3499, i64 %3504
  %3506 = load double, ptr %3505, align 8, !tbaa !11
  %3507 = call double @llvm.fmuladd.f64(double 0x3FD6F2A1D7A49299, double %3506, double %3498)
  %3508 = load ptr, ptr %7, align 8, !tbaa !9
  %3509 = load i32, ptr %12, align 4, !tbaa !5
  %3510 = load i32, ptr %8, align 4, !tbaa !5
  %3511 = mul nsw i32 41, %3510
  %3512 = add nsw i32 %3509, %3511
  %3513 = sext i32 %3512 to i64
  %3514 = getelementptr inbounds double, ptr %3508, i64 %3513
  %3515 = load double, ptr %3514, align 8, !tbaa !11
  %3516 = call double @llvm.fmuladd.f64(double 0x3FEAEBF44A8E7A7F, double %3515, double %3507)
  %3517 = load ptr, ptr %7, align 8, !tbaa !9
  %3518 = load i32, ptr %12, align 4, !tbaa !5
  %3519 = load i32, ptr %8, align 4, !tbaa !5
  %3520 = mul nsw i32 42, %3519
  %3521 = add nsw i32 %3518, %3520
  %3522 = sext i32 %3521 to i64
  %3523 = getelementptr inbounds double, ptr %3517, i64 %3522
  %3524 = load double, ptr %3523, align 8, !tbaa !11
  %3525 = call double @llvm.fmuladd.f64(double 0x3FEAEBF44A8E7A7D, double %3524, double %3516)
  %3526 = load ptr, ptr %7, align 8, !tbaa !9
  %3527 = load i32, ptr %12, align 4, !tbaa !5
  %3528 = load i32, ptr %8, align 4, !tbaa !5
  %3529 = mul nsw i32 43, %3528
  %3530 = add nsw i32 %3527, %3529
  %3531 = sext i32 %3530 to i64
  %3532 = getelementptr inbounds double, ptr %3526, i64 %3531
  %3533 = load double, ptr %3532, align 8, !tbaa !11
  %3534 = call double @llvm.fmuladd.f64(double 0x3FD6F2A1D7A492C6, double %3533, double %3525)
  %3535 = load ptr, ptr %7, align 8, !tbaa !9
  %3536 = load i32, ptr %12, align 4, !tbaa !5
  %3537 = load i32, ptr %8, align 4, !tbaa !5
  %3538 = mul nsw i32 44, %3537
  %3539 = add nsw i32 %3536, %3538
  %3540 = sext i32 %3539 to i64
  %3541 = getelementptr inbounds double, ptr %3535, i64 %3540
  %3542 = load double, ptr %3541, align 8, !tbaa !11
  %3543 = call double @llvm.fmuladd.f64(double 0xBC91000000000000, double %3542, double %3534)
  %3544 = load ptr, ptr %7, align 8, !tbaa !9
  %3545 = load i32, ptr %12, align 4, !tbaa !5
  %3546 = load i32, ptr %8, align 4, !tbaa !5
  %3547 = mul nsw i32 45, %3546
  %3548 = add nsw i32 %3545, %3547
  %3549 = sext i32 %3548 to i64
  %3550 = getelementptr inbounds double, ptr %3544, i64 %3549
  %3551 = load double, ptr %3550, align 8, !tbaa !11
  %3552 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %3551, double %3543)
  %3553 = load ptr, ptr %7, align 8, !tbaa !9
  %3554 = load i32, ptr %12, align 4, !tbaa !5
  %3555 = load i32, ptr %8, align 4, !tbaa !5
  %3556 = mul nsw i32 46, %3555
  %3557 = add nsw i32 %3554, %3556
  %3558 = sext i32 %3557 to i64
  %3559 = getelementptr inbounds double, ptr %3553, i64 %3558
  %3560 = load double, ptr %3559, align 8, !tbaa !11
  %3561 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %3560, double %3552)
  %3562 = load ptr, ptr %7, align 8, !tbaa !9
  %3563 = load i32, ptr %12, align 4, !tbaa !5
  %3564 = load i32, ptr %8, align 4, !tbaa !5
  %3565 = mul nsw i32 47, %3564
  %3566 = add nsw i32 %3563, %3565
  %3567 = sext i32 %3566 to i64
  %3568 = getelementptr inbounds double, ptr %3562, i64 %3567
  %3569 = load double, ptr %3568, align 8, !tbaa !11
  %3570 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %3569, double %3561)
  %3571 = load ptr, ptr %7, align 8, !tbaa !9
  %3572 = load i32, ptr %12, align 4, !tbaa !5
  %3573 = load i32, ptr %8, align 4, !tbaa !5
  %3574 = mul nsw i32 48, %3573
  %3575 = add nsw i32 %3572, %3574
  %3576 = sext i32 %3575 to i64
  %3577 = getelementptr inbounds double, ptr %3571, i64 %3576
  %3578 = load double, ptr %3577, align 8, !tbaa !11
  %3579 = call double @llvm.fmuladd.f64(double 0x3C9A400000000000, double %3578, double %3570)
  %3580 = load ptr, ptr %7, align 8, !tbaa !9
  %3581 = load i32, ptr %12, align 4, !tbaa !5
  %3582 = load i32, ptr %8, align 4, !tbaa !5
  %3583 = mul nsw i32 49, %3582
  %3584 = add nsw i32 %3581, %3583
  %3585 = sext i32 %3584 to i64
  %3586 = getelementptr inbounds double, ptr %3580, i64 %3585
  %3587 = load double, ptr %3586, align 8, !tbaa !11
  %3588 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %3587, double %3579)
  %3589 = load ptr, ptr %7, align 8, !tbaa !9
  %3590 = load i32, ptr %12, align 4, !tbaa !5
  %3591 = load i32, ptr %8, align 4, !tbaa !5
  %3592 = mul nsw i32 50, %3591
  %3593 = add nsw i32 %3590, %3592
  %3594 = sext i32 %3593 to i64
  %3595 = getelementptr inbounds double, ptr %3589, i64 %3594
  %3596 = load double, ptr %3595, align 8, !tbaa !11
  %3597 = call double @llvm.fmuladd.f64(double 0x3C9A000000000000, double %3596, double %3588)
  %3598 = load ptr, ptr %7, align 8, !tbaa !9
  %3599 = load i32, ptr %12, align 4, !tbaa !5
  %3600 = load i32, ptr %8, align 4, !tbaa !5
  %3601 = mul nsw i32 51, %3600
  %3602 = add nsw i32 %3599, %3601
  %3603 = sext i32 %3602 to i64
  %3604 = getelementptr inbounds double, ptr %3598, i64 %3603
  %3605 = load double, ptr %3604, align 8, !tbaa !11
  %3606 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %3605, double %3597)
  %3607 = load ptr, ptr %7, align 8, !tbaa !9
  %3608 = load i32, ptr %12, align 4, !tbaa !5
  %3609 = load i32, ptr %8, align 4, !tbaa !5
  %3610 = mul nsw i32 52, %3609
  %3611 = add nsw i32 %3608, %3610
  %3612 = sext i32 %3611 to i64
  %3613 = getelementptr inbounds double, ptr %3607, i64 %3612
  %3614 = load double, ptr %3613, align 8, !tbaa !11
  %3615 = call double @llvm.fmuladd.f64(double 0x3CB9DA84FC1C5FD3, double %3614, double %3606)
  %3616 = load ptr, ptr %7, align 8, !tbaa !9
  %3617 = load i32, ptr %12, align 4, !tbaa !5
  %3618 = load i32, ptr %8, align 4, !tbaa !5
  %3619 = mul nsw i32 54, %3618
  %3620 = add nsw i32 %3617, %3619
  %3621 = sext i32 %3620 to i64
  %3622 = getelementptr inbounds double, ptr %3616, i64 %3621
  %3623 = load double, ptr %3622, align 8, !tbaa !11
  %3624 = call double @llvm.fmuladd.f64(double 0xBC70F876CCDF6CD9, double %3623, double %3615)
  %3625 = load ptr, ptr %7, align 8, !tbaa !9
  %3626 = load i32, ptr %12, align 4, !tbaa !5
  %3627 = load i32, ptr %8, align 4, !tbaa !5
  %3628 = mul nsw i32 55, %3627
  %3629 = add nsw i32 %3626, %3628
  %3630 = sext i32 %3629 to i64
  %3631 = getelementptr inbounds double, ptr %3625, i64 %3630
  %3632 = load double, ptr %3631, align 8, !tbaa !11
  %3633 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %3632, double %3624)
  %3634 = load ptr, ptr %7, align 8, !tbaa !9
  %3635 = load i32, ptr %12, align 4, !tbaa !5
  %3636 = load i32, ptr %8, align 4, !tbaa !5
  %3637 = mul nsw i32 56, %3636
  %3638 = add nsw i32 %3635, %3637
  %3639 = sext i32 %3638 to i64
  %3640 = getelementptr inbounds double, ptr %3634, i64 %3639
  %3641 = load double, ptr %3640, align 8, !tbaa !11
  %3642 = call double @llvm.fmuladd.f64(double 0x400E488CB8C1EA66, double %3641, double %3633)
  %3643 = load ptr, ptr %7, align 8, !tbaa !9
  %3644 = load i32, ptr %12, align 4, !tbaa !5
  %3645 = load i32, ptr %8, align 4, !tbaa !5
  %3646 = mul nsw i32 57, %3645
  %3647 = add nsw i32 %3644, %3646
  %3648 = sext i32 %3647 to i64
  %3649 = getelementptr inbounds double, ptr %3643, i64 %3648
  %3650 = load double, ptr %3649, align 8, !tbaa !11
  %3651 = call double @llvm.fmuladd.f64(double 0x3FD4A299D1E9700C, double %3650, double %3642)
  %3652 = load ptr, ptr %7, align 8, !tbaa !9
  %3653 = load i32, ptr %12, align 4, !tbaa !5
  %3654 = load i32, ptr %8, align 4, !tbaa !5
  %3655 = mul nsw i32 58, %3654
  %3656 = add nsw i32 %3653, %3655
  %3657 = sext i32 %3656 to i64
  %3658 = getelementptr inbounds double, ptr %3652, i64 %3657
  %3659 = load double, ptr %3658, align 8, !tbaa !11
  %3660 = call double @llvm.fmuladd.f64(double 0xBFC5EA083165C4F9, double %3659, double %3651)
  %3661 = load ptr, ptr %7, align 8, !tbaa !9
  %3662 = load i32, ptr %12, align 4, !tbaa !5
  %3663 = load i32, ptr %8, align 4, !tbaa !5
  %3664 = mul nsw i32 59, %3663
  %3665 = add nsw i32 %3662, %3664
  %3666 = sext i32 %3665 to i64
  %3667 = getelementptr inbounds double, ptr %3661, i64 %3666
  %3668 = load double, ptr %3667, align 8, !tbaa !11
  %3669 = call double @llvm.fmuladd.f64(double 0x3FA462D8D66D7F7F, double %3668, double %3660)
  %3670 = load ptr, ptr %7, align 8, !tbaa !9
  %3671 = load i32, ptr %12, align 4, !tbaa !5
  %3672 = load i32, ptr %8, align 4, !tbaa !5
  %3673 = mul nsw i32 60, %3672
  %3674 = add nsw i32 %3671, %3673
  %3675 = sext i32 %3674 to i64
  %3676 = getelementptr inbounds double, ptr %3670, i64 %3675
  %3677 = load double, ptr %3676, align 8, !tbaa !11
  %3678 = call double @llvm.fmuladd.f64(double 0xBCABEE4386850DD1, double %3677, double %3669)
  %3679 = load ptr, ptr %7, align 8, !tbaa !9
  %3680 = load i32, ptr %12, align 4, !tbaa !5
  %3681 = load i32, ptr %8, align 4, !tbaa !5
  %3682 = mul nsw i32 61, %3681
  %3683 = add nsw i32 %3680, %3682
  %3684 = sext i32 %3683 to i64
  %3685 = getelementptr inbounds double, ptr %3679, i64 %3684
  %3686 = load double, ptr %3685, align 8, !tbaa !11
  %3687 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %3686, double %3678)
  %3688 = load ptr, ptr %7, align 8, !tbaa !9
  %3689 = load i32, ptr %12, align 4, !tbaa !5
  %3690 = load i32, ptr %8, align 4, !tbaa !5
  %3691 = mul nsw i32 62, %3690
  %3692 = add nsw i32 %3689, %3691
  %3693 = sext i32 %3692 to i64
  %3694 = getelementptr inbounds double, ptr %3688, i64 %3693
  %3695 = load double, ptr %3694, align 8, !tbaa !11
  %3696 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %3695, double %3687)
  %3697 = load ptr, ptr %7, align 8, !tbaa !9
  %3698 = load i32, ptr %12, align 4, !tbaa !5
  %3699 = load i32, ptr %8, align 4, !tbaa !5
  %3700 = mul nsw i32 63, %3699
  %3701 = add nsw i32 %3698, %3700
  %3702 = sext i32 %3701 to i64
  %3703 = getelementptr inbounds double, ptr %3697, i64 %3702
  %3704 = load double, ptr %3703, align 8, !tbaa !11
  %3705 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %3704, double %3696)
  %3706 = load ptr, ptr %7, align 8, !tbaa !9
  %3707 = load i32, ptr %12, align 4, !tbaa !5
  %3708 = load i32, ptr %8, align 4, !tbaa !5
  %3709 = mul nsw i32 64, %3708
  %3710 = add nsw i32 %3707, %3709
  %3711 = sext i32 %3710 to i64
  %3712 = getelementptr inbounds double, ptr %3706, i64 %3711
  %3713 = load double, ptr %3712, align 8, !tbaa !11
  %3714 = call double @llvm.fmuladd.f64(double 0x3CA02CD13B44F3C0, double %3713, double %3705)
  %3715 = load ptr, ptr %7, align 8, !tbaa !9
  %3716 = load i32, ptr %12, align 4, !tbaa !5
  %3717 = load i32, ptr %8, align 4, !tbaa !5
  %3718 = mul nsw i32 66, %3717
  %3719 = add nsw i32 %3716, %3718
  %3720 = sext i32 %3719 to i64
  %3721 = getelementptr inbounds double, ptr %3715, i64 %3720
  %3722 = load double, ptr %3721, align 8, !tbaa !11
  %3723 = call double @llvm.fmuladd.f64(double 0x3C70F876CCDF6CD9, double %3722, double %3714)
  %3724 = load ptr, ptr %7, align 8, !tbaa !9
  %3725 = load i32, ptr %12, align 4, !tbaa !5
  %3726 = load i32, ptr %8, align 4, !tbaa !5
  %3727 = mul nsw i32 67, %3726
  %3728 = add nsw i32 %3725, %3727
  %3729 = sext i32 %3728 to i64
  %3730 = getelementptr inbounds double, ptr %3724, i64 %3729
  %3731 = load double, ptr %3730, align 8, !tbaa !11
  %3732 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %3731, double %3723)
  store double %3732, ptr %11, align 8, !tbaa !11
  %3733 = load double, ptr %11, align 8, !tbaa !11
  %3734 = load ptr, ptr %9, align 8, !tbaa !9
  %3735 = load i32, ptr %12, align 4, !tbaa !5
  %3736 = load i32, ptr %10, align 4, !tbaa !5
  %3737 = mul nsw i32 12, %3736
  %3738 = add nsw i32 %3735, %3737
  %3739 = sext i32 %3738 to i64
  %3740 = getelementptr inbounds double, ptr %3734, i64 %3739
  store double %3733, ptr %3740, align 8, !tbaa !11
  %3741 = load ptr, ptr %7, align 8, !tbaa !9
  %3742 = load i32, ptr %12, align 4, !tbaa !5
  %3743 = load i32, ptr %8, align 4, !tbaa !5
  %3744 = mul nsw i32 36, %3743
  %3745 = add nsw i32 %3742, %3744
  %3746 = sext i32 %3745 to i64
  %3747 = getelementptr inbounds double, ptr %3741, i64 %3746
  %3748 = load double, ptr %3747, align 8, !tbaa !11
  %3749 = load ptr, ptr %7, align 8, !tbaa !9
  %3750 = load i32, ptr %12, align 4, !tbaa !5
  %3751 = load i32, ptr %8, align 4, !tbaa !5
  %3752 = mul nsw i32 37, %3751
  %3753 = add nsw i32 %3750, %3752
  %3754 = sext i32 %3753 to i64
  %3755 = getelementptr inbounds double, ptr %3749, i64 %3754
  %3756 = load double, ptr %3755, align 8, !tbaa !11
  %3757 = fmul double 0x3C90000000000000, %3756
  %3758 = call double @llvm.fmuladd.f64(double 0x3CABE00000000000, double %3748, double %3757)
  %3759 = load ptr, ptr %7, align 8, !tbaa !9
  %3760 = load i32, ptr %12, align 4, !tbaa !5
  %3761 = load i32, ptr %8, align 4, !tbaa !5
  %3762 = mul nsw i32 38, %3761
  %3763 = add nsw i32 %3760, %3762
  %3764 = sext i32 %3763 to i64
  %3765 = getelementptr inbounds double, ptr %3759, i64 %3764
  %3766 = load double, ptr %3765, align 8, !tbaa !11
  %3767 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %3766, double %3758)
  %3768 = load ptr, ptr %7, align 8, !tbaa !9
  %3769 = load i32, ptr %12, align 4, !tbaa !5
  %3770 = load i32, ptr %8, align 4, !tbaa !5
  %3771 = mul nsw i32 39, %3770
  %3772 = add nsw i32 %3769, %3771
  %3773 = sext i32 %3772 to i64
  %3774 = getelementptr inbounds double, ptr %3768, i64 %3773
  %3775 = load double, ptr %3774, align 8, !tbaa !11
  %3776 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %3775, double %3767)
  %3777 = load ptr, ptr %7, align 8, !tbaa !9
  %3778 = load i32, ptr %12, align 4, !tbaa !5
  %3779 = load i32, ptr %8, align 4, !tbaa !5
  %3780 = mul nsw i32 40, %3779
  %3781 = add nsw i32 %3778, %3780
  %3782 = sext i32 %3781 to i64
  %3783 = getelementptr inbounds double, ptr %3777, i64 %3782
  %3784 = load double, ptr %3783, align 8, !tbaa !11
  %3785 = call double @llvm.fmuladd.f64(double 0xC01569E165D79417, double %3784, double %3776)
  %3786 = load ptr, ptr %7, align 8, !tbaa !9
  %3787 = load i32, ptr %12, align 4, !tbaa !5
  %3788 = load i32, ptr %8, align 4, !tbaa !5
  %3789 = mul nsw i32 41, %3788
  %3790 = add nsw i32 %3787, %3789
  %3791 = sext i32 %3790 to i64
  %3792 = getelementptr inbounds double, ptr %3786, i64 %3791
  %3793 = load double, ptr %3792, align 8, !tbaa !11
  %3794 = call double @llvm.fmuladd.f64(double 0xBFDD2EB9CCB3BDF4, double %3793, double %3785)
  %3795 = load ptr, ptr %7, align 8, !tbaa !9
  %3796 = load i32, ptr %12, align 4, !tbaa !5
  %3797 = load i32, ptr %8, align 4, !tbaa !5
  %3798 = mul nsw i32 42, %3797
  %3799 = add nsw i32 %3796, %3798
  %3800 = sext i32 %3799 to i64
  %3801 = getelementptr inbounds double, ptr %3795, i64 %3800
  %3802 = load double, ptr %3801, align 8, !tbaa !11
  %3803 = call double @llvm.fmuladd.f64(double 0x3FCEFDC8894D0831, double %3802, double %3794)
  %3804 = load ptr, ptr %7, align 8, !tbaa !9
  %3805 = load i32, ptr %12, align 4, !tbaa !5
  %3806 = load i32, ptr %8, align 4, !tbaa !5
  %3807 = mul nsw i32 43, %3806
  %3808 = add nsw i32 %3805, %3807
  %3809 = sext i32 %3808 to i64
  %3810 = getelementptr inbounds double, ptr %3804, i64 %3809
  %3811 = load double, ptr %3810, align 8, !tbaa !11
  %3812 = call double @llvm.fmuladd.f64(double 0xBFACD49071EC5EF0, double %3811, double %3803)
  %3813 = load ptr, ptr %7, align 8, !tbaa !9
  %3814 = load i32, ptr %12, align 4, !tbaa !5
  %3815 = load i32, ptr %8, align 4, !tbaa !5
  %3816 = mul nsw i32 44, %3815
  %3817 = add nsw i32 %3814, %3816
  %3818 = sext i32 %3817 to i64
  %3819 = getelementptr inbounds double, ptr %3813, i64 %3818
  %3820 = load double, ptr %3819, align 8, !tbaa !11
  %3821 = call double @llvm.fmuladd.f64(double 0x3CB5BFFFFFFFFFFF, double %3820, double %3812)
  %3822 = load ptr, ptr %7, align 8, !tbaa !9
  %3823 = load i32, ptr %12, align 4, !tbaa !5
  %3824 = load i32, ptr %8, align 4, !tbaa !5
  %3825 = mul nsw i32 45, %3824
  %3826 = add nsw i32 %3823, %3825
  %3827 = sext i32 %3826 to i64
  %3828 = getelementptr inbounds double, ptr %3822, i64 %3827
  %3829 = load double, ptr %3828, align 8, !tbaa !11
  %3830 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %3829, double %3821)
  %3831 = load ptr, ptr %7, align 8, !tbaa !9
  %3832 = load i32, ptr %12, align 4, !tbaa !5
  %3833 = load i32, ptr %8, align 4, !tbaa !5
  %3834 = mul nsw i32 46, %3833
  %3835 = add nsw i32 %3832, %3834
  %3836 = sext i32 %3835 to i64
  %3837 = getelementptr inbounds double, ptr %3831, i64 %3836
  %3838 = load double, ptr %3837, align 8, !tbaa !11
  %3839 = call double @llvm.fmuladd.f64(double 0x3CB5FFFFFFFFFFFF, double %3838, double %3830)
  %3840 = load ptr, ptr %7, align 8, !tbaa !9
  %3841 = load i32, ptr %12, align 4, !tbaa !5
  %3842 = load i32, ptr %8, align 4, !tbaa !5
  %3843 = mul nsw i32 48, %3842
  %3844 = add nsw i32 %3841, %3843
  %3845 = sext i32 %3844 to i64
  %3846 = getelementptr inbounds double, ptr %3840, i64 %3845
  %3847 = load double, ptr %3846, align 8, !tbaa !11
  %3848 = call double @llvm.fmuladd.f64(double 0x3C80800000000000, double %3847, double %3839)
  %3849 = load ptr, ptr %7, align 8, !tbaa !9
  %3850 = load i32, ptr %12, align 4, !tbaa !5
  %3851 = load i32, ptr %8, align 4, !tbaa !5
  %3852 = mul nsw i32 49, %3851
  %3853 = add nsw i32 %3850, %3852
  %3854 = sext i32 %3853 to i64
  %3855 = getelementptr inbounds double, ptr %3849, i64 %3854
  %3856 = load double, ptr %3855, align 8, !tbaa !11
  %3857 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %3856, double %3848)
  %3858 = load ptr, ptr %7, align 8, !tbaa !9
  %3859 = load i32, ptr %12, align 4, !tbaa !5
  %3860 = load i32, ptr %8, align 4, !tbaa !5
  %3861 = mul nsw i32 50, %3860
  %3862 = add nsw i32 %3859, %3861
  %3863 = sext i32 %3862 to i64
  %3864 = getelementptr inbounds double, ptr %3858, i64 %3863
  %3865 = load double, ptr %3864, align 8, !tbaa !11
  %3866 = call double @llvm.fmuladd.f64(double 0xBCAB000000000001, double %3865, double %3857)
  %3867 = load ptr, ptr %7, align 8, !tbaa !9
  %3868 = load i32, ptr %12, align 4, !tbaa !5
  %3869 = load i32, ptr %8, align 4, !tbaa !5
  %3870 = mul nsw i32 52, %3869
  %3871 = add nsw i32 %3868, %3870
  %3872 = sext i32 %3871 to i64
  %3873 = getelementptr inbounds double, ptr %3867, i64 %3872
  %3874 = load double, ptr %3873, align 8, !tbaa !11
  %3875 = call double @llvm.fmuladd.f64(double 0x3C93F9CBD67C52CA, double %3874, double %3866)
  %3876 = load ptr, ptr %7, align 8, !tbaa !9
  %3877 = load i32, ptr %12, align 4, !tbaa !5
  %3878 = load i32, ptr %8, align 4, !tbaa !5
  %3879 = mul nsw i32 53, %3878
  %3880 = add nsw i32 %3877, %3879
  %3881 = sext i32 %3880 to i64
  %3882 = getelementptr inbounds double, ptr %3876, i64 %3881
  %3883 = load double, ptr %3882, align 8, !tbaa !11
  %3884 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %3883, double %3875)
  %3885 = load ptr, ptr %7, align 8, !tbaa !9
  %3886 = load i32, ptr %12, align 4, !tbaa !5
  %3887 = load i32, ptr %8, align 4, !tbaa !5
  %3888 = mul nsw i32 54, %3887
  %3889 = add nsw i32 %3886, %3888
  %3890 = sext i32 %3889 to i64
  %3891 = getelementptr inbounds double, ptr %3885, i64 %3890
  %3892 = load double, ptr %3891, align 8, !tbaa !11
  %3893 = call double @llvm.fmuladd.f64(double 0xBC8F1CD9CCEEF238, double %3892, double %3884)
  %3894 = load ptr, ptr %7, align 8, !tbaa !9
  %3895 = load i32, ptr %12, align 4, !tbaa !5
  %3896 = load i32, ptr %8, align 4, !tbaa !5
  %3897 = mul nsw i32 55, %3896
  %3898 = add nsw i32 %3895, %3897
  %3899 = sext i32 %3898 to i64
  %3900 = getelementptr inbounds double, ptr %3894, i64 %3899
  %3901 = load double, ptr %3900, align 8, !tbaa !11
  %3902 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %3901, double %3893)
  %3903 = load ptr, ptr %7, align 8, !tbaa !9
  %3904 = load i32, ptr %12, align 4, !tbaa !5
  %3905 = load i32, ptr %8, align 4, !tbaa !5
  %3906 = mul nsw i32 56, %3905
  %3907 = add nsw i32 %3904, %3906
  %3908 = sext i32 %3907 to i64
  %3909 = getelementptr inbounds double, ptr %3903, i64 %3908
  %3910 = load double, ptr %3909, align 8, !tbaa !11
  %3911 = call double @llvm.fmuladd.f64(double 0xBFD039FE04F71643, double %3910, double %3902)
  %3912 = load ptr, ptr %7, align 8, !tbaa !9
  %3913 = load i32, ptr %12, align 4, !tbaa !5
  %3914 = load i32, ptr %8, align 4, !tbaa !5
  %3915 = mul nsw i32 57, %3914
  %3916 = add nsw i32 %3913, %3915
  %3917 = sext i32 %3916 to i64
  %3918 = getelementptr inbounds double, ptr %3912, i64 %3917
  %3919 = load double, ptr %3918, align 8, !tbaa !11
  %3920 = call double @llvm.fmuladd.f64(double 0xBFE30958FBF81244, double %3919, double %3911)
  %3921 = load ptr, ptr %7, align 8, !tbaa !9
  %3922 = load i32, ptr %12, align 4, !tbaa !5
  %3923 = load i32, ptr %8, align 4, !tbaa !5
  %3924 = mul nsw i32 58, %3923
  %3925 = add nsw i32 %3922, %3924
  %3926 = sext i32 %3925 to i64
  %3927 = getelementptr inbounds double, ptr %3921, i64 %3926
  %3928 = load double, ptr %3927, align 8, !tbaa !11
  %3929 = call double @llvm.fmuladd.f64(double 0xBFE30958FBF81231, double %3928, double %3920)
  %3930 = load ptr, ptr %7, align 8, !tbaa !9
  %3931 = load i32, ptr %12, align 4, !tbaa !5
  %3932 = load i32, ptr %8, align 4, !tbaa !5
  %3933 = mul nsw i32 59, %3932
  %3934 = add nsw i32 %3931, %3933
  %3935 = sext i32 %3934 to i64
  %3936 = getelementptr inbounds double, ptr %3930, i64 %3935
  %3937 = load double, ptr %3936, align 8, !tbaa !11
  %3938 = call double @llvm.fmuladd.f64(double 0xBFD039FE04F71638, double %3937, double %3929)
  %3939 = load ptr, ptr %7, align 8, !tbaa !9
  %3940 = load i32, ptr %12, align 4, !tbaa !5
  %3941 = load i32, ptr %8, align 4, !tbaa !5
  %3942 = mul nsw i32 60, %3941
  %3943 = add nsw i32 %3940, %3942
  %3944 = sext i32 %3943 to i64
  %3945 = getelementptr inbounds double, ptr %3939, i64 %3944
  %3946 = load double, ptr %3945, align 8, !tbaa !11
  %3947 = call double @llvm.fmuladd.f64(double 0x3C9CFDCAF353049B, double %3946, double %3938)
  %3948 = load ptr, ptr %7, align 8, !tbaa !9
  %3949 = load i32, ptr %12, align 4, !tbaa !5
  %3950 = load i32, ptr %8, align 4, !tbaa !5
  %3951 = mul nsw i32 61, %3950
  %3952 = add nsw i32 %3949, %3951
  %3953 = sext i32 %3952 to i64
  %3954 = getelementptr inbounds double, ptr %3948, i64 %3953
  %3955 = load double, ptr %3954, align 8, !tbaa !11
  %3956 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %3955, double %3947)
  %3957 = load ptr, ptr %7, align 8, !tbaa !9
  %3958 = load i32, ptr %12, align 4, !tbaa !5
  %3959 = load i32, ptr %8, align 4, !tbaa !5
  %3960 = mul nsw i32 62, %3959
  %3961 = add nsw i32 %3958, %3960
  %3962 = sext i32 %3961 to i64
  %3963 = getelementptr inbounds double, ptr %3957, i64 %3962
  %3964 = load double, ptr %3963, align 8, !tbaa !11
  %3965 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %3964, double %3956)
  %3966 = load ptr, ptr %7, align 8, !tbaa !9
  %3967 = load i32, ptr %12, align 4, !tbaa !5
  %3968 = load i32, ptr %8, align 4, !tbaa !5
  %3969 = mul nsw i32 63, %3968
  %3970 = add nsw i32 %3967, %3969
  %3971 = sext i32 %3970 to i64
  %3972 = getelementptr inbounds double, ptr %3966, i64 %3971
  %3973 = load double, ptr %3972, align 8, !tbaa !11
  %3974 = call double @llvm.fmuladd.f64(double 0x3CA3CC8A99AF5452, double %3973, double %3965)
  %3975 = load ptr, ptr %7, align 8, !tbaa !9
  %3976 = load i32, ptr %12, align 4, !tbaa !5
  %3977 = load i32, ptr %8, align 4, !tbaa !5
  %3978 = mul nsw i32 64, %3977
  %3979 = add nsw i32 %3976, %3978
  %3980 = sext i32 %3979 to i64
  %3981 = getelementptr inbounds double, ptr %3975, i64 %3980
  %3982 = load double, ptr %3981, align 8, !tbaa !11
  %3983 = call double @llvm.fmuladd.f64(double 0xBC8152F9467969C8, double %3982, double %3974)
  %3984 = load ptr, ptr %7, align 8, !tbaa !9
  %3985 = load i32, ptr %12, align 4, !tbaa !5
  %3986 = load i32, ptr %8, align 4, !tbaa !5
  %3987 = mul nsw i32 65, %3986
  %3988 = add nsw i32 %3985, %3987
  %3989 = sext i32 %3988 to i64
  %3990 = getelementptr inbounds double, ptr %3984, i64 %3989
  %3991 = load double, ptr %3990, align 8, !tbaa !11
  %3992 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %3991, double %3983)
  %3993 = load ptr, ptr %7, align 8, !tbaa !9
  %3994 = load i32, ptr %12, align 4, !tbaa !5
  %3995 = load i32, ptr %8, align 4, !tbaa !5
  %3996 = mul nsw i32 66, %3995
  %3997 = add nsw i32 %3994, %3996
  %3998 = sext i32 %3997 to i64
  %3999 = getelementptr inbounds double, ptr %3993, i64 %3998
  %4000 = load double, ptr %3999, align 8, !tbaa !11
  %4001 = call double @llvm.fmuladd.f64(double 0xBC926280B3476096, double %4000, double %3992)
  %4002 = load ptr, ptr %7, align 8, !tbaa !9
  %4003 = load i32, ptr %12, align 4, !tbaa !5
  %4004 = load i32, ptr %8, align 4, !tbaa !5
  %4005 = mul nsw i32 67, %4004
  %4006 = add nsw i32 %4003, %4005
  %4007 = sext i32 %4006 to i64
  %4008 = getelementptr inbounds double, ptr %4002, i64 %4007
  %4009 = load double, ptr %4008, align 8, !tbaa !11
  %4010 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %4009, double %4001)
  store double %4010, ptr %11, align 8, !tbaa !11
  %4011 = load double, ptr %11, align 8, !tbaa !11
  %4012 = load ptr, ptr %9, align 8, !tbaa !9
  %4013 = load i32, ptr %12, align 4, !tbaa !5
  %4014 = load i32, ptr %10, align 4, !tbaa !5
  %4015 = mul nsw i32 13, %4014
  %4016 = add nsw i32 %4013, %4015
  %4017 = sext i32 %4016 to i64
  %4018 = getelementptr inbounds double, ptr %4012, i64 %4017
  store double %4011, ptr %4018, align 8, !tbaa !11
  %4019 = load ptr, ptr %7, align 8, !tbaa !9
  %4020 = load i32, ptr %12, align 4, !tbaa !5
  %4021 = load i32, ptr %8, align 4, !tbaa !5
  %4022 = mul nsw i32 36, %4021
  %4023 = add nsw i32 %4020, %4022
  %4024 = sext i32 %4023 to i64
  %4025 = getelementptr inbounds double, ptr %4019, i64 %4024
  %4026 = load double, ptr %4025, align 8, !tbaa !11
  %4027 = load ptr, ptr %7, align 8, !tbaa !9
  %4028 = load i32, ptr %12, align 4, !tbaa !5
  %4029 = load i32, ptr %8, align 4, !tbaa !5
  %4030 = mul nsw i32 37, %4029
  %4031 = add nsw i32 %4028, %4030
  %4032 = sext i32 %4031 to i64
  %4033 = getelementptr inbounds double, ptr %4027, i64 %4032
  %4034 = load double, ptr %4033, align 8, !tbaa !11
  %4035 = fmul double 0xBC82000000000000, %4034
  %4036 = call double @llvm.fmuladd.f64(double 0xBC85000000000000, double %4026, double %4035)
  %4037 = load ptr, ptr %7, align 8, !tbaa !9
  %4038 = load i32, ptr %12, align 4, !tbaa !5
  %4039 = load i32, ptr %8, align 4, !tbaa !5
  %4040 = mul nsw i32 38, %4039
  %4041 = add nsw i32 %4038, %4040
  %4042 = sext i32 %4041 to i64
  %4043 = getelementptr inbounds double, ptr %4037, i64 %4042
  %4044 = load double, ptr %4043, align 8, !tbaa !11
  %4045 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %4044, double %4036)
  %4046 = load ptr, ptr %7, align 8, !tbaa !9
  %4047 = load i32, ptr %12, align 4, !tbaa !5
  %4048 = load i32, ptr %8, align 4, !tbaa !5
  %4049 = mul nsw i32 40, %4048
  %4050 = add nsw i32 %4047, %4049
  %4051 = sext i32 %4050 to i64
  %4052 = getelementptr inbounds double, ptr %4046, i64 %4051
  %4053 = load double, ptr %4052, align 8, !tbaa !11
  %4054 = call double @llvm.fmuladd.f64(double 0x3F980EB0AE1D48EC, double %4053, double %4045)
  %4055 = load ptr, ptr %7, align 8, !tbaa !9
  %4056 = load i32, ptr %12, align 4, !tbaa !5
  %4057 = load i32, ptr %8, align 4, !tbaa !5
  %4058 = mul nsw i32 41, %4057
  %4059 = add nsw i32 %4056, %4058
  %4060 = sext i32 %4059 to i64
  %4061 = getelementptr inbounds double, ptr %4055, i64 %4060
  %4062 = load double, ptr %4061, align 8, !tbaa !11
  %4063 = call double @llvm.fmuladd.f64(double 0xBFD4C0B9406BCBDC, double %4062, double %4054)
  %4064 = load ptr, ptr %7, align 8, !tbaa !9
  %4065 = load i32, ptr %12, align 4, !tbaa !5
  %4066 = load i32, ptr %8, align 4, !tbaa !5
  %4067 = mul nsw i32 42, %4066
  %4068 = add nsw i32 %4065, %4067
  %4069 = sext i32 %4068 to i64
  %4070 = getelementptr inbounds double, ptr %4064, i64 %4069
  %4071 = load double, ptr %4070, align 8, !tbaa !11
  %4072 = call double @llvm.fmuladd.f64(double 0xBFEBF462FB348EF8, double %4071, double %4063)
  %4073 = load ptr, ptr %7, align 8, !tbaa !9
  %4074 = load i32, ptr %12, align 4, !tbaa !5
  %4075 = load i32, ptr %8, align 4, !tbaa !5
  %4076 = mul nsw i32 43, %4075
  %4077 = add nsw i32 %4074, %4076
  %4078 = sext i32 %4077 to i64
  %4079 = getelementptr inbounds double, ptr %4073, i64 %4078
  %4080 = load double, ptr %4079, align 8, !tbaa !11
  %4081 = call double @llvm.fmuladd.f64(double 0xBFE002F9665DF3DA, double %4080, double %4072)
  %4082 = load ptr, ptr %7, align 8, !tbaa !9
  %4083 = load i32, ptr %12, align 4, !tbaa !5
  %4084 = load i32, ptr %8, align 4, !tbaa !5
  %4085 = mul nsw i32 44, %4084
  %4086 = add nsw i32 %4083, %4085
  %4087 = sext i32 %4086 to i64
  %4088 = getelementptr inbounds double, ptr %4082, i64 %4087
  %4089 = load double, ptr %4088, align 8, !tbaa !11
  %4090 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %4089, double %4081)
  %4091 = load ptr, ptr %7, align 8, !tbaa !9
  %4092 = load i32, ptr %12, align 4, !tbaa !5
  %4093 = load i32, ptr %8, align 4, !tbaa !5
  %4094 = mul nsw i32 46, %4093
  %4095 = add nsw i32 %4092, %4094
  %4096 = sext i32 %4095 to i64
  %4097 = getelementptr inbounds double, ptr %4091, i64 %4096
  %4098 = load double, ptr %4097, align 8, !tbaa !11
  %4099 = call double @llvm.fmuladd.f64(double 0x3CB5FFFFFFFFFFFF, double %4098, double %4090)
  %4100 = load ptr, ptr %7, align 8, !tbaa !9
  %4101 = load i32, ptr %12, align 4, !tbaa !5
  %4102 = load i32, ptr %8, align 4, !tbaa !5
  %4103 = mul nsw i32 47, %4102
  %4104 = add nsw i32 %4101, %4103
  %4105 = sext i32 %4104 to i64
  %4106 = getelementptr inbounds double, ptr %4100, i64 %4105
  %4107 = load double, ptr %4106, align 8, !tbaa !11
  %4108 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %4107, double %4099)
  %4109 = load ptr, ptr %7, align 8, !tbaa !9
  %4110 = load i32, ptr %12, align 4, !tbaa !5
  %4111 = load i32, ptr %8, align 4, !tbaa !5
  %4112 = mul nsw i32 48, %4111
  %4113 = add nsw i32 %4110, %4112
  %4114 = sext i32 %4113 to i64
  %4115 = getelementptr inbounds double, ptr %4109, i64 %4114
  %4116 = load double, ptr %4115, align 8, !tbaa !11
  %4117 = call double @llvm.fmuladd.f64(double 0x3C96800000000000, double %4116, double %4108)
  %4118 = load ptr, ptr %7, align 8, !tbaa !9
  %4119 = load i32, ptr %12, align 4, !tbaa !5
  %4120 = load i32, ptr %8, align 4, !tbaa !5
  %4121 = mul nsw i32 49, %4120
  %4122 = add nsw i32 %4119, %4121
  %4123 = sext i32 %4122 to i64
  %4124 = getelementptr inbounds double, ptr %4118, i64 %4123
  %4125 = load double, ptr %4124, align 8, !tbaa !11
  %4126 = call double @llvm.fmuladd.f64(double 0x3C91000000000000, double %4125, double %4117)
  %4127 = load ptr, ptr %7, align 8, !tbaa !9
  %4128 = load i32, ptr %12, align 4, !tbaa !5
  %4129 = load i32, ptr %8, align 4, !tbaa !5
  %4130 = mul nsw i32 50, %4129
  %4131 = add nsw i32 %4128, %4130
  %4132 = sext i32 %4131 to i64
  %4133 = getelementptr inbounds double, ptr %4127, i64 %4132
  %4134 = load double, ptr %4133, align 8, !tbaa !11
  %4135 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %4134, double %4126)
  %4136 = load ptr, ptr %7, align 8, !tbaa !9
  %4137 = load i32, ptr %12, align 4, !tbaa !5
  %4138 = load i32, ptr %8, align 4, !tbaa !5
  %4139 = mul nsw i32 51, %4138
  %4140 = add nsw i32 %4137, %4139
  %4141 = sext i32 %4140 to i64
  %4142 = getelementptr inbounds double, ptr %4136, i64 %4141
  %4143 = load double, ptr %4142, align 8, !tbaa !11
  %4144 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %4143, double %4135)
  %4145 = load ptr, ptr %7, align 8, !tbaa !9
  %4146 = load i32, ptr %12, align 4, !tbaa !5
  %4147 = load i32, ptr %8, align 4, !tbaa !5
  %4148 = mul nsw i32 52, %4147
  %4149 = add nsw i32 %4146, %4148
  %4150 = sext i32 %4149 to i64
  %4151 = getelementptr inbounds double, ptr %4145, i64 %4150
  %4152 = load double, ptr %4151, align 8, !tbaa !11
  %4153 = call double @llvm.fmuladd.f64(double 0x3C7DB2CFE686FE7B, double %4152, double %4144)
  %4154 = load ptr, ptr %7, align 8, !tbaa !9
  %4155 = load i32, ptr %12, align 4, !tbaa !5
  %4156 = load i32, ptr %8, align 4, !tbaa !5
  %4157 = mul nsw i32 53, %4156
  %4158 = add nsw i32 %4155, %4157
  %4159 = sext i32 %4158 to i64
  %4160 = getelementptr inbounds double, ptr %4154, i64 %4159
  %4161 = load double, ptr %4160, align 8, !tbaa !11
  %4162 = call double @llvm.fmuladd.f64(double 0x3C91AD7BC01366B7, double %4161, double %4153)
  %4163 = load ptr, ptr %7, align 8, !tbaa !9
  %4164 = load i32, ptr %12, align 4, !tbaa !5
  %4165 = load i32, ptr %8, align 4, !tbaa !5
  %4166 = mul nsw i32 54, %4165
  %4167 = add nsw i32 %4164, %4166
  %4168 = sext i32 %4167 to i64
  %4169 = getelementptr inbounds double, ptr %4163, i64 %4168
  %4170 = load double, ptr %4169, align 8, !tbaa !11
  %4171 = call double @llvm.fmuladd.f64(double 0x3C56A09E667F3BCC, double %4170, double %4162)
  %4172 = load ptr, ptr %7, align 8, !tbaa !9
  %4173 = load i32, ptr %12, align 4, !tbaa !5
  %4174 = load i32, ptr %8, align 4, !tbaa !5
  %4175 = mul nsw i32 55, %4174
  %4176 = add nsw i32 %4173, %4175
  %4177 = sext i32 %4176 to i64
  %4178 = getelementptr inbounds double, ptr %4172, i64 %4177
  %4179 = load double, ptr %4178, align 8, !tbaa !11
  %4180 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %4179, double %4171)
  %4181 = load ptr, ptr %7, align 8, !tbaa !9
  %4182 = load i32, ptr %12, align 4, !tbaa !5
  %4183 = load i32, ptr %8, align 4, !tbaa !5
  %4184 = mul nsw i32 56, %4183
  %4185 = add nsw i32 %4182, %4184
  %4186 = sext i32 %4185 to i64
  %4187 = getelementptr inbounds double, ptr %4181, i64 %4186
  %4188 = load double, ptr %4187, align 8, !tbaa !11
  %4189 = call double @llvm.fmuladd.f64(double 0x3FD08C54FF101A10, double %4188, double %4180)
  %4190 = load ptr, ptr %7, align 8, !tbaa !9
  %4191 = load i32, ptr %12, align 4, !tbaa !5
  %4192 = load i32, ptr %8, align 4, !tbaa !5
  %4193 = mul nsw i32 57, %4192
  %4194 = add nsw i32 %4191, %4193
  %4195 = sext i32 %4194 to i64
  %4196 = getelementptr inbounds double, ptr %4190, i64 %4195
  %4197 = load double, ptr %4196, align 8, !tbaa !11
  %4198 = call double @llvm.fmuladd.f64(double 0x4007001BD846D0B2, double %4197, double %4189)
  %4199 = load ptr, ptr %7, align 8, !tbaa !9
  %4200 = load i32, ptr %12, align 4, !tbaa !5
  %4201 = load i32, ptr %8, align 4, !tbaa !5
  %4202 = mul nsw i32 58, %4201
  %4203 = add nsw i32 %4200, %4202
  %4204 = sext i32 %4203 to i64
  %4205 = getelementptr inbounds double, ptr %4199, i64 %4204
  %4206 = load double, ptr %4205, align 8, !tbaa !11
  %4207 = call double @llvm.fmuladd.f64(double 0x3FD0C7817D9C3137, double %4206, double %4198)
  %4208 = load ptr, ptr %7, align 8, !tbaa !9
  %4209 = load i32, ptr %12, align 4, !tbaa !5
  %4210 = load i32, ptr %8, align 4, !tbaa !5
  %4211 = mul nsw i32 59, %4210
  %4212 = add nsw i32 %4209, %4211
  %4213 = sext i32 %4212 to i64
  %4214 = getelementptr inbounds double, ptr %4208, i64 %4213
  %4215 = load double, ptr %4214, align 8, !tbaa !11
  %4216 = call double @llvm.fmuladd.f64(double 0xBFB8DF388696F54E, double %4215, double %4207)
  %4217 = load ptr, ptr %7, align 8, !tbaa !9
  %4218 = load i32, ptr %12, align 4, !tbaa !5
  %4219 = load i32, ptr %8, align 4, !tbaa !5
  %4220 = mul nsw i32 60, %4219
  %4221 = add nsw i32 %4218, %4220
  %4222 = sext i32 %4221 to i64
  %4223 = getelementptr inbounds double, ptr %4217, i64 %4222
  %4224 = load double, ptr %4223, align 8, !tbaa !11
  %4225 = call double @llvm.fmuladd.f64(double 0xBC93CC8A99AF5452, double %4224, double %4216)
  %4226 = load ptr, ptr %7, align 8, !tbaa !9
  %4227 = load i32, ptr %12, align 4, !tbaa !5
  %4228 = load i32, ptr %8, align 4, !tbaa !5
  %4229 = mul nsw i32 61, %4228
  %4230 = add nsw i32 %4227, %4229
  %4231 = sext i32 %4230 to i64
  %4232 = getelementptr inbounds double, ptr %4226, i64 %4231
  %4233 = load double, ptr %4232, align 8, !tbaa !11
  %4234 = call double @llvm.fmuladd.f64(double 0xBCA6A09E667F3BCC, double %4233, double %4225)
  %4235 = load ptr, ptr %7, align 8, !tbaa !9
  %4236 = load i32, ptr %12, align 4, !tbaa !5
  %4237 = load i32, ptr %8, align 4, !tbaa !5
  %4238 = mul nsw i32 62, %4237
  %4239 = add nsw i32 %4236, %4238
  %4240 = sext i32 %4239 to i64
  %4241 = getelementptr inbounds double, ptr %4235, i64 %4240
  %4242 = load double, ptr %4241, align 8, !tbaa !11
  %4243 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %4242, double %4234)
  %4244 = load ptr, ptr %7, align 8, !tbaa !9
  %4245 = load i32, ptr %12, align 4, !tbaa !5
  %4246 = load i32, ptr %8, align 4, !tbaa !5
  %4247 = mul nsw i32 63, %4246
  %4248 = add nsw i32 %4245, %4247
  %4249 = sext i32 %4248 to i64
  %4250 = getelementptr inbounds double, ptr %4244, i64 %4249
  %4251 = load double, ptr %4250, align 8, !tbaa !11
  %4252 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %4251, double %4243)
  %4253 = load ptr, ptr %7, align 8, !tbaa !9
  %4254 = load i32, ptr %12, align 4, !tbaa !5
  %4255 = load i32, ptr %8, align 4, !tbaa !5
  %4256 = mul nsw i32 64, %4255
  %4257 = add nsw i32 %4254, %4256
  %4258 = sext i32 %4257 to i64
  %4259 = getelementptr inbounds double, ptr %4253, i64 %4258
  %4260 = load double, ptr %4259, align 8, !tbaa !11
  %4261 = call double @llvm.fmuladd.f64(double 0xBC8A29B726831D24, double %4260, double %4252)
  %4262 = load ptr, ptr %7, align 8, !tbaa !9
  %4263 = load i32, ptr %12, align 4, !tbaa !5
  %4264 = load i32, ptr %8, align 4, !tbaa !5
  %4265 = mul nsw i32 65, %4264
  %4266 = add nsw i32 %4263, %4265
  %4267 = sext i32 %4266 to i64
  %4268 = getelementptr inbounds double, ptr %4262, i64 %4267
  %4269 = load double, ptr %4268, align 8, !tbaa !11
  %4270 = call double @llvm.fmuladd.f64(double 0x3C73CC8A99AF5453, double %4269, double %4261)
  %4271 = load ptr, ptr %7, align 8, !tbaa !9
  %4272 = load i32, ptr %12, align 4, !tbaa !5
  %4273 = load i32, ptr %8, align 4, !tbaa !5
  %4274 = mul nsw i32 66, %4273
  %4275 = add nsw i32 %4272, %4274
  %4276 = sext i32 %4275 to i64
  %4277 = getelementptr inbounds double, ptr %4271, i64 %4276
  %4278 = load double, ptr %4277, align 8, !tbaa !11
  %4279 = call double @llvm.fmuladd.f64(double 0xBC56A09E667F3BCC, double %4278, double %4270)
  %4280 = load ptr, ptr %7, align 8, !tbaa !9
  %4281 = load i32, ptr %12, align 4, !tbaa !5
  %4282 = load i32, ptr %8, align 4, !tbaa !5
  %4283 = mul nsw i32 67, %4282
  %4284 = add nsw i32 %4281, %4283
  %4285 = sext i32 %4284 to i64
  %4286 = getelementptr inbounds double, ptr %4280, i64 %4285
  %4287 = load double, ptr %4286, align 8, !tbaa !11
  %4288 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %4287, double %4279)
  store double %4288, ptr %11, align 8, !tbaa !11
  %4289 = load double, ptr %11, align 8, !tbaa !11
  %4290 = load ptr, ptr %9, align 8, !tbaa !9
  %4291 = load i32, ptr %12, align 4, !tbaa !5
  %4292 = load i32, ptr %10, align 4, !tbaa !5
  %4293 = mul nsw i32 14, %4292
  %4294 = add nsw i32 %4291, %4293
  %4295 = sext i32 %4294 to i64
  %4296 = getelementptr inbounds double, ptr %4290, i64 %4295
  store double %4289, ptr %4296, align 8, !tbaa !11
  %4297 = load ptr, ptr %7, align 8, !tbaa !9
  %4298 = load i32, ptr %12, align 4, !tbaa !5
  %4299 = load i32, ptr %8, align 4, !tbaa !5
  %4300 = mul nsw i32 36, %4299
  %4301 = add nsw i32 %4298, %4300
  %4302 = sext i32 %4301 to i64
  %4303 = getelementptr inbounds double, ptr %4297, i64 %4302
  %4304 = load double, ptr %4303, align 8, !tbaa !11
  %4305 = load ptr, ptr %7, align 8, !tbaa !9
  %4306 = load i32, ptr %12, align 4, !tbaa !5
  %4307 = load i32, ptr %8, align 4, !tbaa !5
  %4308 = mul nsw i32 37, %4307
  %4309 = add nsw i32 %4306, %4308
  %4310 = sext i32 %4309 to i64
  %4311 = getelementptr inbounds double, ptr %4305, i64 %4310
  %4312 = load double, ptr %4311, align 8, !tbaa !11
  %4313 = fmul double 0xBCBE400000000000, %4312
  %4314 = call double @llvm.fmuladd.f64(double 0x3C6C000000000000, double %4304, double %4313)
  %4315 = load ptr, ptr %7, align 8, !tbaa !9
  %4316 = load i32, ptr %12, align 4, !tbaa !5
  %4317 = load i32, ptr %8, align 4, !tbaa !5
  %4318 = mul nsw i32 38, %4317
  %4319 = add nsw i32 %4316, %4318
  %4320 = sext i32 %4319 to i64
  %4321 = getelementptr inbounds double, ptr %4315, i64 %4320
  %4322 = load double, ptr %4321, align 8, !tbaa !11
  %4323 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %4322, double %4314)
  %4324 = load ptr, ptr %7, align 8, !tbaa !9
  %4325 = load i32, ptr %12, align 4, !tbaa !5
  %4326 = load i32, ptr %8, align 4, !tbaa !5
  %4327 = mul nsw i32 39, %4326
  %4328 = add nsw i32 %4325, %4327
  %4329 = sext i32 %4328 to i64
  %4330 = getelementptr inbounds double, ptr %4324, i64 %4329
  %4331 = load double, ptr %4330, align 8, !tbaa !11
  %4332 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %4331, double %4323)
  %4333 = load ptr, ptr %7, align 8, !tbaa !9
  %4334 = load i32, ptr %12, align 4, !tbaa !5
  %4335 = load i32, ptr %8, align 4, !tbaa !5
  %4336 = mul nsw i32 40, %4335
  %4337 = add nsw i32 %4334, %4336
  %4338 = sext i32 %4337 to i64
  %4339 = getelementptr inbounds double, ptr %4333, i64 %4338
  %4340 = load double, ptr %4339, align 8, !tbaa !11
  %4341 = call double @llvm.fmuladd.f64(double 0xBFD7671404765126, double %4340, double %4332)
  %4342 = load ptr, ptr %7, align 8, !tbaa !9
  %4343 = load i32, ptr %12, align 4, !tbaa !5
  %4344 = load i32, ptr %8, align 4, !tbaa !5
  %4345 = mul nsw i32 41, %4344
  %4346 = add nsw i32 %4343, %4345
  %4347 = sext i32 %4346 to i64
  %4348 = getelementptr inbounds double, ptr %4342, i64 %4347
  %4349 = load double, ptr %4348, align 8, !tbaa !11
  %4350 = call double @llvm.fmuladd.f64(double 0xC01043858A1F5996, double %4349, double %4341)
  %4351 = load ptr, ptr %7, align 8, !tbaa !9
  %4352 = load i32, ptr %12, align 4, !tbaa !5
  %4353 = load i32, ptr %8, align 4, !tbaa !5
  %4354 = mul nsw i32 42, %4353
  %4355 = add nsw i32 %4352, %4354
  %4356 = sext i32 %4355 to i64
  %4357 = getelementptr inbounds double, ptr %4351, i64 %4356
  %4358 = load double, ptr %4357, align 8, !tbaa !11
  %4359 = call double @llvm.fmuladd.f64(double 0xBFD7BAC3393ADDBB, double %4358, double %4350)
  %4360 = load ptr, ptr %7, align 8, !tbaa !9
  %4361 = load i32, ptr %12, align 4, !tbaa !5
  %4362 = load i32, ptr %8, align 4, !tbaa !5
  %4363 = mul nsw i32 43, %4362
  %4364 = add nsw i32 %4361, %4363
  %4365 = sext i32 %4364 to i64
  %4366 = getelementptr inbounds double, ptr %4360, i64 %4365
  %4367 = load double, ptr %4366, align 8, !tbaa !11
  %4368 = call double @llvm.fmuladd.f64(double 0x3FC1964E14FA3C8D, double %4367, double %4359)
  %4369 = load ptr, ptr %7, align 8, !tbaa !9
  %4370 = load i32, ptr %12, align 4, !tbaa !5
  %4371 = load i32, ptr %8, align 4, !tbaa !5
  %4372 = mul nsw i32 44, %4371
  %4373 = add nsw i32 %4370, %4372
  %4374 = sext i32 %4373 to i64
  %4375 = getelementptr inbounds double, ptr %4369, i64 %4374
  %4376 = load double, ptr %4375, align 8, !tbaa !11
  %4377 = call double @llvm.fmuladd.f64(double 0x3CA5FFFFFFFFFFFF, double %4376, double %4368)
  %4378 = load ptr, ptr %7, align 8, !tbaa !9
  %4379 = load i32, ptr %12, align 4, !tbaa !5
  %4380 = load i32, ptr %8, align 4, !tbaa !5
  %4381 = mul nsw i32 45, %4380
  %4382 = add nsw i32 %4379, %4381
  %4383 = sext i32 %4382 to i64
  %4384 = getelementptr inbounds double, ptr %4378, i64 %4383
  %4385 = load double, ptr %4384, align 8, !tbaa !11
  %4386 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %4385, double %4377)
  %4387 = load ptr, ptr %7, align 8, !tbaa !9
  %4388 = load i32, ptr %12, align 4, !tbaa !5
  %4389 = load i32, ptr %8, align 4, !tbaa !5
  %4390 = mul nsw i32 46, %4389
  %4391 = add nsw i32 %4388, %4390
  %4392 = sext i32 %4391 to i64
  %4393 = getelementptr inbounds double, ptr %4387, i64 %4392
  %4394 = load double, ptr %4393, align 8, !tbaa !11
  %4395 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %4394, double %4386)
  %4396 = load ptr, ptr %7, align 8, !tbaa !9
  %4397 = load i32, ptr %12, align 4, !tbaa !5
  %4398 = load i32, ptr %8, align 4, !tbaa !5
  %4399 = mul nsw i32 47, %4398
  %4400 = add nsw i32 %4397, %4399
  %4401 = sext i32 %4400 to i64
  %4402 = getelementptr inbounds double, ptr %4396, i64 %4401
  %4403 = load double, ptr %4402, align 8, !tbaa !11
  %4404 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %4403, double %4395)
  %4405 = load ptr, ptr %7, align 8, !tbaa !9
  %4406 = load i32, ptr %12, align 4, !tbaa !5
  %4407 = load i32, ptr %8, align 4, !tbaa !5
  %4408 = mul nsw i32 48, %4407
  %4409 = add nsw i32 %4406, %4408
  %4410 = sext i32 %4409 to i64
  %4411 = getelementptr inbounds double, ptr %4405, i64 %4410
  %4412 = load double, ptr %4411, align 8, !tbaa !11
  %4413 = call double @llvm.fmuladd.f64(double 0x3C89000000000000, double %4412, double %4404)
  %4414 = load ptr, ptr %7, align 8, !tbaa !9
  %4415 = load i32, ptr %12, align 4, !tbaa !5
  %4416 = load i32, ptr %8, align 4, !tbaa !5
  %4417 = mul nsw i32 49, %4416
  %4418 = add nsw i32 %4415, %4417
  %4419 = sext i32 %4418 to i64
  %4420 = getelementptr inbounds double, ptr %4414, i64 %4419
  %4421 = load double, ptr %4420, align 8, !tbaa !11
  %4422 = call double @llvm.fmuladd.f64(double 0xBCA3800000000002, double %4421, double %4413)
  %4423 = load ptr, ptr %7, align 8, !tbaa !9
  %4424 = load i32, ptr %12, align 4, !tbaa !5
  %4425 = load i32, ptr %8, align 4, !tbaa !5
  %4426 = mul nsw i32 50, %4425
  %4427 = add nsw i32 %4424, %4426
  %4428 = sext i32 %4427 to i64
  %4429 = getelementptr inbounds double, ptr %4423, i64 %4428
  %4430 = load double, ptr %4429, align 8, !tbaa !11
  %4431 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %4430, double %4422)
  %4432 = load ptr, ptr %7, align 8, !tbaa !9
  %4433 = load i32, ptr %12, align 4, !tbaa !5
  %4434 = load i32, ptr %8, align 4, !tbaa !5
  %4435 = mul nsw i32 51, %4434
  %4436 = add nsw i32 %4433, %4435
  %4437 = sext i32 %4436 to i64
  %4438 = getelementptr inbounds double, ptr %4432, i64 %4437
  %4439 = load double, ptr %4438, align 8, !tbaa !11
  %4440 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %4439, double %4431)
  %4441 = load ptr, ptr %7, align 8, !tbaa !9
  %4442 = load i32, ptr %12, align 4, !tbaa !5
  %4443 = load i32, ptr %8, align 4, !tbaa !5
  %4444 = mul nsw i32 52, %4443
  %4445 = add nsw i32 %4442, %4444
  %4446 = sext i32 %4445 to i64
  %4447 = getelementptr inbounds double, ptr %4441, i64 %4446
  %4448 = load double, ptr %4447, align 8, !tbaa !11
  %4449 = call double @llvm.fmuladd.f64(double 0x3C726280B3476096, double %4448, double %4440)
  %4450 = load ptr, ptr %7, align 8, !tbaa !9
  %4451 = load i32, ptr %12, align 4, !tbaa !5
  %4452 = load i32, ptr %8, align 4, !tbaa !5
  %4453 = mul nsw i32 53, %4452
  %4454 = add nsw i32 %4451, %4453
  %4455 = sext i32 %4454 to i64
  %4456 = getelementptr inbounds double, ptr %4450, i64 %4455
  %4457 = load double, ptr %4456, align 8, !tbaa !11
  %4458 = call double @llvm.fmuladd.f64(double 0x3C46A09E667F3BCB, double %4457, double %4449)
  %4459 = load ptr, ptr %7, align 8, !tbaa !9
  %4460 = load i32, ptr %12, align 4, !tbaa !5
  %4461 = load i32, ptr %8, align 4, !tbaa !5
  %4462 = mul nsw i32 54, %4461
  %4463 = add nsw i32 %4460, %4462
  %4464 = sext i32 %4463 to i64
  %4465 = getelementptr inbounds double, ptr %4459, i64 %4464
  %4466 = load double, ptr %4465, align 8, !tbaa !11
  %4467 = call double @llvm.fmuladd.f64(double 0xBC9536948017480F, double %4466, double %4458)
  %4468 = load ptr, ptr %7, align 8, !tbaa !9
  %4469 = load i32, ptr %12, align 4, !tbaa !5
  %4470 = load i32, ptr %8, align 4, !tbaa !5
  %4471 = mul nsw i32 55, %4470
  %4472 = add nsw i32 %4469, %4471
  %4473 = sext i32 %4472 to i64
  %4474 = getelementptr inbounds double, ptr %4468, i64 %4473
  %4475 = load double, ptr %4474, align 8, !tbaa !11
  %4476 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %4475, double %4467)
  %4477 = load ptr, ptr %7, align 8, !tbaa !9
  %4478 = load i32, ptr %12, align 4, !tbaa !5
  %4479 = load i32, ptr %8, align 4, !tbaa !5
  %4480 = mul nsw i32 56, %4479
  %4481 = add nsw i32 %4478, %4480
  %4482 = sext i32 %4481 to i64
  %4483 = getelementptr inbounds double, ptr %4477, i64 %4482
  %4484 = load double, ptr %4483, align 8, !tbaa !11
  %4485 = call double @llvm.fmuladd.f64(double 0xBF9102DA00B18A68, double %4484, double %4476)
  %4486 = load ptr, ptr %7, align 8, !tbaa !9
  %4487 = load i32, ptr %12, align 4, !tbaa !5
  %4488 = load i32, ptr %8, align 4, !tbaa !5
  %4489 = mul nsw i32 57, %4488
  %4490 = add nsw i32 %4487, %4489
  %4491 = sext i32 %4490 to i64
  %4492 = getelementptr inbounds double, ptr %4486, i64 %4491
  %4493 = load double, ptr %4492, align 8, !tbaa !11
  %4494 = call double @llvm.fmuladd.f64(double 0x3FCD5953692F6EA6, double %4493, double %4485)
  %4495 = load ptr, ptr %7, align 8, !tbaa !9
  %4496 = load i32, ptr %12, align 4, !tbaa !5
  %4497 = load i32, ptr %8, align 4, !tbaa !5
  %4498 = mul nsw i32 58, %4497
  %4499 = add nsw i32 %4496, %4498
  %4500 = sext i32 %4499 to i64
  %4501 = getelementptr inbounds double, ptr %4495, i64 %4500
  %4502 = load double, ptr %4501, align 8, !tbaa !11
  %4503 = call double @llvm.fmuladd.f64(double 0x3FE3C4545BCF030C, double %4502, double %4494)
  %4504 = load ptr, ptr %7, align 8, !tbaa !9
  %4505 = load i32, ptr %12, align 4, !tbaa !5
  %4506 = load i32, ptr %8, align 4, !tbaa !5
  %4507 = mul nsw i32 59, %4506
  %4508 = add nsw i32 %4505, %4507
  %4509 = sext i32 %4508 to i64
  %4510 = getelementptr inbounds double, ptr %4504, i64 %4509
  %4511 = load double, ptr %4510, align 8, !tbaa !11
  %4512 = call double @llvm.fmuladd.f64(double 0x3FD6A4D32EB1F710, double %4511, double %4503)
  %4513 = load ptr, ptr %7, align 8, !tbaa !9
  %4514 = load i32, ptr %12, align 4, !tbaa !5
  %4515 = load i32, ptr %8, align 4, !tbaa !5
  %4516 = mul nsw i32 60, %4515
  %4517 = add nsw i32 %4514, %4516
  %4518 = sext i32 %4517 to i64
  %4519 = getelementptr inbounds double, ptr %4513, i64 %4518
  %4520 = load double, ptr %4519, align 8, !tbaa !11
  %4521 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %4520, double %4512)
  %4522 = load ptr, ptr %7, align 8, !tbaa !9
  %4523 = load i32, ptr %12, align 4, !tbaa !5
  %4524 = load i32, ptr %8, align 4, !tbaa !5
  %4525 = mul nsw i32 61, %4524
  %4526 = add nsw i32 %4523, %4525
  %4527 = sext i32 %4526 to i64
  %4528 = getelementptr inbounds double, ptr %4522, i64 %4527
  %4529 = load double, ptr %4528, align 8, !tbaa !11
  %4530 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %4529, double %4521)
  %4531 = load ptr, ptr %7, align 8, !tbaa !9
  %4532 = load i32, ptr %12, align 4, !tbaa !5
  %4533 = load i32, ptr %8, align 4, !tbaa !5
  %4534 = mul nsw i32 62, %4533
  %4535 = add nsw i32 %4532, %4534
  %4536 = sext i32 %4535 to i64
  %4537 = getelementptr inbounds double, ptr %4531, i64 %4536
  %4538 = load double, ptr %4537, align 8, !tbaa !11
  %4539 = call double @llvm.fmuladd.f64(double 0xBCA974B2334F2346, double %4538, double %4530)
  %4540 = load ptr, ptr %7, align 8, !tbaa !9
  %4541 = load i32, ptr %12, align 4, !tbaa !5
  %4542 = load i32, ptr %8, align 4, !tbaa !5
  %4543 = mul nsw i32 63, %4542
  %4544 = add nsw i32 %4541, %4543
  %4545 = sext i32 %4544 to i64
  %4546 = getelementptr inbounds double, ptr %4540, i64 %4545
  %4547 = load double, ptr %4546, align 8, !tbaa !11
  %4548 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %4547, double %4539)
  %4549 = load ptr, ptr %7, align 8, !tbaa !9
  %4550 = load i32, ptr %12, align 4, !tbaa !5
  %4551 = load i32, ptr %8, align 4, !tbaa !5
  %4552 = mul nsw i32 64, %4551
  %4553 = add nsw i32 %4550, %4552
  %4554 = sext i32 %4553 to i64
  %4555 = getelementptr inbounds double, ptr %4549, i64 %4554
  %4556 = load double, ptr %4555, align 8, !tbaa !11
  %4557 = call double @llvm.fmuladd.f64(double 0xBC84818F8CE34E32, double %4556, double %4548)
  %4558 = load ptr, ptr %7, align 8, !tbaa !9
  %4559 = load i32, ptr %12, align 4, !tbaa !5
  %4560 = load i32, ptr %8, align 4, !tbaa !5
  %4561 = mul nsw i32 65, %4560
  %4562 = add nsw i32 %4559, %4561
  %4563 = sext i32 %4562 to i64
  %4564 = getelementptr inbounds double, ptr %4558, i64 %4563
  %4565 = load double, ptr %4564, align 8, !tbaa !11
  %4566 = call double @llvm.fmuladd.f64(double 0x3C73CC8A99AF5453, double %4565, double %4557)
  %4567 = load ptr, ptr %7, align 8, !tbaa !9
  %4568 = load i32, ptr %12, align 4, !tbaa !5
  %4569 = load i32, ptr %8, align 4, !tbaa !5
  %4570 = mul nsw i32 66, %4569
  %4571 = add nsw i32 %4568, %4570
  %4572 = sext i32 %4571 to i64
  %4573 = getelementptr inbounds double, ptr %4567, i64 %4572
  %4574 = load double, ptr %4573, align 8, !tbaa !11
  %4575 = call double @llvm.fmuladd.f64(double 0x3C83CC8A99AF5451, double %4574, double %4566)
  %4576 = load ptr, ptr %7, align 8, !tbaa !9
  %4577 = load i32, ptr %12, align 4, !tbaa !5
  %4578 = load i32, ptr %8, align 4, !tbaa !5
  %4579 = mul nsw i32 67, %4578
  %4580 = add nsw i32 %4577, %4579
  %4581 = sext i32 %4580 to i64
  %4582 = getelementptr inbounds double, ptr %4576, i64 %4581
  %4583 = load double, ptr %4582, align 8, !tbaa !11
  %4584 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %4583, double %4575)
  store double %4584, ptr %11, align 8, !tbaa !11
  %4585 = load double, ptr %11, align 8, !tbaa !11
  %4586 = load ptr, ptr %9, align 8, !tbaa !9
  %4587 = load i32, ptr %12, align 4, !tbaa !5
  %4588 = load i32, ptr %10, align 4, !tbaa !5
  %4589 = mul nsw i32 15, %4588
  %4590 = add nsw i32 %4587, %4589
  %4591 = sext i32 %4590 to i64
  %4592 = getelementptr inbounds double, ptr %4586, i64 %4591
  store double %4585, ptr %4592, align 8, !tbaa !11
  %4593 = load ptr, ptr %7, align 8, !tbaa !9
  %4594 = load i32, ptr %12, align 4, !tbaa !5
  %4595 = load i32, ptr %8, align 4, !tbaa !5
  %4596 = mul nsw i32 36, %4595
  %4597 = add nsw i32 %4594, %4596
  %4598 = sext i32 %4597 to i64
  %4599 = getelementptr inbounds double, ptr %4593, i64 %4598
  %4600 = load double, ptr %4599, align 8, !tbaa !11
  %4601 = load ptr, ptr %7, align 8, !tbaa !9
  %4602 = load i32, ptr %12, align 4, !tbaa !5
  %4603 = load i32, ptr %8, align 4, !tbaa !5
  %4604 = mul nsw i32 37, %4603
  %4605 = add nsw i32 %4602, %4604
  %4606 = sext i32 %4605 to i64
  %4607 = getelementptr inbounds double, ptr %4601, i64 %4606
  %4608 = load double, ptr %4607, align 8, !tbaa !11
  %4609 = fmul double 0x3C90000000000000, %4608
  %4610 = call double @llvm.fmuladd.f64(double 0x3C76800000000000, double %4600, double %4609)
  %4611 = load ptr, ptr %7, align 8, !tbaa !9
  %4612 = load i32, ptr %12, align 4, !tbaa !5
  %4613 = load i32, ptr %8, align 4, !tbaa !5
  %4614 = mul nsw i32 38, %4613
  %4615 = add nsw i32 %4612, %4614
  %4616 = sext i32 %4615 to i64
  %4617 = getelementptr inbounds double, ptr %4611, i64 %4616
  %4618 = load double, ptr %4617, align 8, !tbaa !11
  %4619 = call double @llvm.fmuladd.f64(double 0x3C9A000000000000, double %4618, double %4610)
  %4620 = load ptr, ptr %7, align 8, !tbaa !9
  %4621 = load i32, ptr %12, align 4, !tbaa !5
  %4622 = load i32, ptr %8, align 4, !tbaa !5
  %4623 = mul nsw i32 39, %4622
  %4624 = add nsw i32 %4621, %4623
  %4625 = sext i32 %4624 to i64
  %4626 = getelementptr inbounds double, ptr %4620, i64 %4625
  %4627 = load double, ptr %4626, align 8, !tbaa !11
  %4628 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %4627, double %4619)
  %4629 = load ptr, ptr %7, align 8, !tbaa !9
  %4630 = load i32, ptr %12, align 4, !tbaa !5
  %4631 = load i32, ptr %8, align 4, !tbaa !5
  %4632 = mul nsw i32 40, %4631
  %4633 = add nsw i32 %4630, %4632
  %4634 = sext i32 %4633 to i64
  %4635 = getelementptr inbounds double, ptr %4629, i64 %4634
  %4636 = load double, ptr %4635, align 8, !tbaa !11
  %4637 = call double @llvm.fmuladd.f64(double 0x3FF043C98657E812, double %4636, double %4628)
  %4638 = load ptr, ptr %7, align 8, !tbaa !9
  %4639 = load i32, ptr %12, align 4, !tbaa !5
  %4640 = load i32, ptr %8, align 4, !tbaa !5
  %4641 = mul nsw i32 41, %4640
  %4642 = add nsw i32 %4639, %4641
  %4643 = sext i32 %4642 to i64
  %4644 = getelementptr inbounds double, ptr %4638, i64 %4643
  %4645 = load double, ptr %4644, align 8, !tbaa !11
  %4646 = call double @llvm.fmuladd.f64(double 0x3FEFAD7976B5DE1F, double %4645, double %4637)
  %4647 = load ptr, ptr %7, align 8, !tbaa !9
  %4648 = load i32, ptr %12, align 4, !tbaa !5
  %4649 = load i32, ptr %8, align 4, !tbaa !5
  %4650 = mul nsw i32 42, %4649
  %4651 = add nsw i32 %4648, %4650
  %4652 = sext i32 %4651 to i64
  %4653 = getelementptr inbounds double, ptr %4647, i64 %4652
  %4654 = load double, ptr %4653, align 8, !tbaa !11
  %4655 = call double @llvm.fmuladd.f64(double 0xBFB4C23AD63BEF8D, double %4654, double %4646)
  %4656 = load ptr, ptr %7, align 8, !tbaa !9
  %4657 = load i32, ptr %12, align 4, !tbaa !5
  %4658 = load i32, ptr %8, align 4, !tbaa !5
  %4659 = mul nsw i32 43, %4658
  %4660 = add nsw i32 %4657, %4659
  %4661 = sext i32 %4660 to i64
  %4662 = getelementptr inbounds double, ptr %4656, i64 %4661
  %4663 = load double, ptr %4662, align 8, !tbaa !11
  %4664 = call double @llvm.fmuladd.f64(double 0xBFAC37F3CCE9FD36, double %4663, double %4655)
  %4665 = load ptr, ptr %7, align 8, !tbaa !9
  %4666 = load i32, ptr %12, align 4, !tbaa !5
  %4667 = load i32, ptr %8, align 4, !tbaa !5
  %4668 = mul nsw i32 44, %4667
  %4669 = add nsw i32 %4666, %4668
  %4670 = sext i32 %4669 to i64
  %4671 = getelementptr inbounds double, ptr %4665, i64 %4670
  %4672 = load double, ptr %4671, align 8, !tbaa !11
  %4673 = call double @llvm.fmuladd.f64(double 0x3C74FFFFFFFFFFFF, double %4672, double %4664)
  %4674 = load ptr, ptr %7, align 8, !tbaa !9
  %4675 = load i32, ptr %12, align 4, !tbaa !5
  %4676 = load i32, ptr %8, align 4, !tbaa !5
  %4677 = mul nsw i32 45, %4676
  %4678 = add nsw i32 %4675, %4677
  %4679 = sext i32 %4678 to i64
  %4680 = getelementptr inbounds double, ptr %4674, i64 %4679
  %4681 = load double, ptr %4680, align 8, !tbaa !11
  %4682 = call double @llvm.fmuladd.f64(double 0xBCA4800000000001, double %4681, double %4673)
  %4683 = load ptr, ptr %7, align 8, !tbaa !9
  %4684 = load i32, ptr %12, align 4, !tbaa !5
  %4685 = load i32, ptr %8, align 4, !tbaa !5
  %4686 = mul nsw i32 46, %4685
  %4687 = add nsw i32 %4684, %4686
  %4688 = sext i32 %4687 to i64
  %4689 = getelementptr inbounds double, ptr %4683, i64 %4688
  %4690 = load double, ptr %4689, align 8, !tbaa !11
  %4691 = call double @llvm.fmuladd.f64(double 0x3CA9FFFFFFFFFFFE, double %4690, double %4682)
  %4692 = load ptr, ptr %7, align 8, !tbaa !9
  %4693 = load i32, ptr %12, align 4, !tbaa !5
  %4694 = load i32, ptr %8, align 4, !tbaa !5
  %4695 = mul nsw i32 47, %4694
  %4696 = add nsw i32 %4693, %4695
  %4697 = sext i32 %4696 to i64
  %4698 = getelementptr inbounds double, ptr %4692, i64 %4697
  %4699 = load double, ptr %4698, align 8, !tbaa !11
  %4700 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %4699, double %4691)
  %4701 = load ptr, ptr %7, align 8, !tbaa !9
  %4702 = load i32, ptr %12, align 4, !tbaa !5
  %4703 = load i32, ptr %8, align 4, !tbaa !5
  %4704 = mul nsw i32 48, %4703
  %4705 = add nsw i32 %4702, %4704
  %4706 = sext i32 %4705 to i64
  %4707 = getelementptr inbounds double, ptr %4701, i64 %4706
  %4708 = load double, ptr %4707, align 8, !tbaa !11
  %4709 = call double @llvm.fmuladd.f64(double 0x3C9A600000000000, double %4708, double %4700)
  %4710 = load ptr, ptr %7, align 8, !tbaa !9
  %4711 = load i32, ptr %12, align 4, !tbaa !5
  %4712 = load i32, ptr %8, align 4, !tbaa !5
  %4713 = mul nsw i32 49, %4712
  %4714 = add nsw i32 %4711, %4713
  %4715 = sext i32 %4714 to i64
  %4716 = getelementptr inbounds double, ptr %4710, i64 %4715
  %4717 = load double, ptr %4716, align 8, !tbaa !11
  %4718 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %4717, double %4709)
  %4719 = load ptr, ptr %7, align 8, !tbaa !9
  %4720 = load i32, ptr %12, align 4, !tbaa !5
  %4721 = load i32, ptr %8, align 4, !tbaa !5
  %4722 = mul nsw i32 50, %4721
  %4723 = add nsw i32 %4720, %4722
  %4724 = sext i32 %4723 to i64
  %4725 = getelementptr inbounds double, ptr %4719, i64 %4724
  %4726 = load double, ptr %4725, align 8, !tbaa !11
  %4727 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %4726, double %4718)
  %4728 = load ptr, ptr %7, align 8, !tbaa !9
  %4729 = load i32, ptr %12, align 4, !tbaa !5
  %4730 = load i32, ptr %8, align 4, !tbaa !5
  %4731 = mul nsw i32 51, %4730
  %4732 = add nsw i32 %4729, %4731
  %4733 = sext i32 %4732 to i64
  %4734 = getelementptr inbounds double, ptr %4728, i64 %4733
  %4735 = load double, ptr %4734, align 8, !tbaa !11
  %4736 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %4735, double %4727)
  %4737 = load ptr, ptr %7, align 8, !tbaa !9
  %4738 = load i32, ptr %12, align 4, !tbaa !5
  %4739 = load i32, ptr %8, align 4, !tbaa !5
  %4740 = mul nsw i32 52, %4739
  %4741 = add nsw i32 %4738, %4740
  %4742 = sext i32 %4741 to i64
  %4743 = getelementptr inbounds double, ptr %4737, i64 %4742
  %4744 = load double, ptr %4743, align 8, !tbaa !11
  %4745 = call double @llvm.fmuladd.f64(double 0xBCA0D685DF45AE00, double %4744, double %4736)
  %4746 = load ptr, ptr %7, align 8, !tbaa !9
  %4747 = load i32, ptr %12, align 4, !tbaa !5
  %4748 = load i32, ptr %8, align 4, !tbaa !5
  %4749 = mul nsw i32 53, %4748
  %4750 = add nsw i32 %4747, %4749
  %4751 = sext i32 %4750 to i64
  %4752 = getelementptr inbounds double, ptr %4746, i64 %4751
  %4753 = load double, ptr %4752, align 8, !tbaa !11
  %4754 = call double @llvm.fmuladd.f64(double 0x3C56A09E667F3BCC, double %4753, double %4745)
  %4755 = load ptr, ptr %7, align 8, !tbaa !9
  %4756 = load i32, ptr %12, align 4, !tbaa !5
  %4757 = load i32, ptr %8, align 4, !tbaa !5
  %4758 = mul nsw i32 54, %4757
  %4759 = add nsw i32 %4756, %4758
  %4760 = sext i32 %4759 to i64
  %4761 = getelementptr inbounds double, ptr %4755, i64 %4760
  %4762 = load double, ptr %4761, align 8, !tbaa !11
  %4763 = call double @llvm.fmuladd.f64(double 0xBC46A09E667F3BCB, double %4762, double %4754)
  %4764 = load ptr, ptr %7, align 8, !tbaa !9
  %4765 = load i32, ptr %12, align 4, !tbaa !5
  %4766 = load i32, ptr %8, align 4, !tbaa !5
  %4767 = mul nsw i32 55, %4766
  %4768 = add nsw i32 %4765, %4767
  %4769 = sext i32 %4768 to i64
  %4770 = getelementptr inbounds double, ptr %4764, i64 %4769
  %4771 = load double, ptr %4770, align 8, !tbaa !11
  %4772 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %4771, double %4763)
  %4773 = load ptr, ptr %7, align 8, !tbaa !9
  %4774 = load i32, ptr %12, align 4, !tbaa !5
  %4775 = load i32, ptr %8, align 4, !tbaa !5
  %4776 = mul nsw i32 56, %4775
  %4777 = add nsw i32 %4774, %4776
  %4778 = sext i32 %4777 to i64
  %4779 = getelementptr inbounds double, ptr %4773, i64 %4778
  %4780 = load double, ptr %4779, align 8, !tbaa !11
  %4781 = call double @llvm.fmuladd.f64(double 0x3FD6A4D32EB1F71D, double %4780, double %4772)
  %4782 = load ptr, ptr %7, align 8, !tbaa !9
  %4783 = load i32, ptr %12, align 4, !tbaa !5
  %4784 = load i32, ptr %8, align 4, !tbaa !5
  %4785 = mul nsw i32 57, %4784
  %4786 = add nsw i32 %4783, %4785
  %4787 = sext i32 %4786 to i64
  %4788 = getelementptr inbounds double, ptr %4782, i64 %4787
  %4789 = load double, ptr %4788, align 8, !tbaa !11
  %4790 = call double @llvm.fmuladd.f64(double 0x3FE3C4545BCF030E, double %4789, double %4781)
  %4791 = load ptr, ptr %7, align 8, !tbaa !9
  %4792 = load i32, ptr %12, align 4, !tbaa !5
  %4793 = load i32, ptr %8, align 4, !tbaa !5
  %4794 = mul nsw i32 58, %4793
  %4795 = add nsw i32 %4792, %4794
  %4796 = sext i32 %4795 to i64
  %4797 = getelementptr inbounds double, ptr %4791, i64 %4796
  %4798 = load double, ptr %4797, align 8, !tbaa !11
  %4799 = call double @llvm.fmuladd.f64(double 0x3FCD5953692F6EA6, double %4798, double %4790)
  %4800 = load ptr, ptr %7, align 8, !tbaa !9
  %4801 = load i32, ptr %12, align 4, !tbaa !5
  %4802 = load i32, ptr %8, align 4, !tbaa !5
  %4803 = mul nsw i32 59, %4802
  %4804 = add nsw i32 %4801, %4803
  %4805 = sext i32 %4804 to i64
  %4806 = getelementptr inbounds double, ptr %4800, i64 %4805
  %4807 = load double, ptr %4806, align 8, !tbaa !11
  %4808 = call double @llvm.fmuladd.f64(double 0xBF9102DA00B18A34, double %4807, double %4799)
  %4809 = load ptr, ptr %7, align 8, !tbaa !9
  %4810 = load i32, ptr %12, align 4, !tbaa !5
  %4811 = load i32, ptr %8, align 4, !tbaa !5
  %4812 = mul nsw i32 60, %4811
  %4813 = add nsw i32 %4810, %4812
  %4814 = sext i32 %4813 to i64
  %4815 = getelementptr inbounds double, ptr %4809, i64 %4814
  %4816 = load double, ptr %4815, align 8, !tbaa !11
  %4817 = call double @llvm.fmuladd.f64(double 0xBCA16999E4DFE905, double %4816, double %4808)
  %4818 = load ptr, ptr %7, align 8, !tbaa !9
  %4819 = load i32, ptr %12, align 4, !tbaa !5
  %4820 = load i32, ptr %8, align 4, !tbaa !5
  %4821 = mul nsw i32 61, %4820
  %4822 = add nsw i32 %4819, %4821
  %4823 = sext i32 %4822 to i64
  %4824 = getelementptr inbounds double, ptr %4818, i64 %4823
  %4825 = load double, ptr %4824, align 8, !tbaa !11
  %4826 = call double @llvm.fmuladd.f64(double 0xBCA91A2FB9B52657, double %4825, double %4817)
  %4827 = load ptr, ptr %7, align 8, !tbaa !9
  %4828 = load i32, ptr %12, align 4, !tbaa !5
  %4829 = load i32, ptr %8, align 4, !tbaa !5
  %4830 = mul nsw i32 62, %4829
  %4831 = add nsw i32 %4828, %4830
  %4832 = sext i32 %4831 to i64
  %4833 = getelementptr inbounds double, ptr %4827, i64 %4832
  %4834 = load double, ptr %4833, align 8, !tbaa !11
  %4835 = call double @llvm.fmuladd.f64(double 0xBC9974B2334F2346, double %4834, double %4826)
  %4836 = load ptr, ptr %7, align 8, !tbaa !9
  %4837 = load i32, ptr %12, align 4, !tbaa !5
  %4838 = load i32, ptr %8, align 4, !tbaa !5
  %4839 = mul nsw i32 63, %4838
  %4840 = add nsw i32 %4837, %4839
  %4841 = sext i32 %4840 to i64
  %4842 = getelementptr inbounds double, ptr %4836, i64 %4841
  %4843 = load double, ptr %4842, align 8, !tbaa !11
  %4844 = call double @llvm.fmuladd.f64(double 0x3C80F876CCDF6CD9, double %4843, double %4835)
  %4845 = load ptr, ptr %7, align 8, !tbaa !9
  %4846 = load i32, ptr %12, align 4, !tbaa !5
  %4847 = load i32, ptr %8, align 4, !tbaa !5
  %4848 = mul nsw i32 64, %4847
  %4849 = add nsw i32 %4846, %4848
  %4850 = sext i32 %4849 to i64
  %4851 = getelementptr inbounds double, ptr %4845, i64 %4850
  %4852 = load double, ptr %4851, align 8, !tbaa !11
  %4853 = call double @llvm.fmuladd.f64(double 0x3C759116F9B144FE, double %4852, double %4844)
  %4854 = load ptr, ptr %7, align 8, !tbaa !9
  %4855 = load i32, ptr %12, align 4, !tbaa !5
  %4856 = load i32, ptr %8, align 4, !tbaa !5
  %4857 = mul nsw i32 65, %4856
  %4858 = add nsw i32 %4855, %4857
  %4859 = sext i32 %4858 to i64
  %4860 = getelementptr inbounds double, ptr %4854, i64 %4859
  %4861 = load double, ptr %4860, align 8, !tbaa !11
  %4862 = call double @llvm.fmuladd.f64(double 0x3C70F876CCDF6CD9, double %4861, double %4853)
  %4863 = load ptr, ptr %7, align 8, !tbaa !9
  %4864 = load i32, ptr %12, align 4, !tbaa !5
  %4865 = load i32, ptr %8, align 4, !tbaa !5
  %4866 = mul nsw i32 66, %4865
  %4867 = add nsw i32 %4864, %4866
  %4868 = sext i32 %4867 to i64
  %4869 = getelementptr inbounds double, ptr %4863, i64 %4868
  %4870 = load double, ptr %4869, align 8, !tbaa !11
  %4871 = call double @llvm.fmuladd.f64(double 0xBC73CC8A99AF5453, double %4870, double %4862)
  %4872 = load ptr, ptr %7, align 8, !tbaa !9
  %4873 = load i32, ptr %12, align 4, !tbaa !5
  %4874 = load i32, ptr %8, align 4, !tbaa !5
  %4875 = mul nsw i32 67, %4874
  %4876 = add nsw i32 %4873, %4875
  %4877 = sext i32 %4876 to i64
  %4878 = getelementptr inbounds double, ptr %4872, i64 %4877
  %4879 = load double, ptr %4878, align 8, !tbaa !11
  %4880 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %4879, double %4871)
  store double %4880, ptr %11, align 8, !tbaa !11
  %4881 = load double, ptr %11, align 8, !tbaa !11
  %4882 = load ptr, ptr %9, align 8, !tbaa !9
  %4883 = load i32, ptr %12, align 4, !tbaa !5
  %4884 = load i32, ptr %10, align 4, !tbaa !5
  %4885 = mul nsw i32 16, %4884
  %4886 = add nsw i32 %4883, %4885
  %4887 = sext i32 %4886 to i64
  %4888 = getelementptr inbounds double, ptr %4882, i64 %4887
  store double %4881, ptr %4888, align 8, !tbaa !11
  %4889 = load ptr, ptr %7, align 8, !tbaa !9
  %4890 = load i32, ptr %12, align 4, !tbaa !5
  %4891 = load i32, ptr %8, align 4, !tbaa !5
  %4892 = mul nsw i32 36, %4891
  %4893 = add nsw i32 %4890, %4892
  %4894 = sext i32 %4893 to i64
  %4895 = getelementptr inbounds double, ptr %4889, i64 %4894
  %4896 = load double, ptr %4895, align 8, !tbaa !11
  %4897 = load ptr, ptr %7, align 8, !tbaa !9
  %4898 = load i32, ptr %12, align 4, !tbaa !5
  %4899 = load i32, ptr %8, align 4, !tbaa !5
  %4900 = mul nsw i32 37, %4899
  %4901 = add nsw i32 %4898, %4900
  %4902 = sext i32 %4901 to i64
  %4903 = getelementptr inbounds double, ptr %4897, i64 %4902
  %4904 = load double, ptr %4903, align 8, !tbaa !11
  %4905 = fmul double 0xBC8C000000000000, %4904
  %4906 = call double @llvm.fmuladd.f64(double 0x3CA22FFFFFFFFFFF, double %4896, double %4905)
  %4907 = load ptr, ptr %7, align 8, !tbaa !9
  %4908 = load i32, ptr %12, align 4, !tbaa !5
  %4909 = load i32, ptr %8, align 4, !tbaa !5
  %4910 = mul nsw i32 38, %4909
  %4911 = add nsw i32 %4908, %4910
  %4912 = sext i32 %4911 to i64
  %4913 = getelementptr inbounds double, ptr %4907, i64 %4912
  %4914 = load double, ptr %4913, align 8, !tbaa !11
  %4915 = call double @llvm.fmuladd.f64(double 0x3C82000000000000, double %4914, double %4906)
  %4916 = load ptr, ptr %7, align 8, !tbaa !9
  %4917 = load i32, ptr %12, align 4, !tbaa !5
  %4918 = load i32, ptr %8, align 4, !tbaa !5
  %4919 = mul nsw i32 39, %4918
  %4920 = add nsw i32 %4917, %4919
  %4921 = sext i32 %4920 to i64
  %4922 = getelementptr inbounds double, ptr %4916, i64 %4921
  %4923 = load double, ptr %4922, align 8, !tbaa !11
  %4924 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %4923, double %4915)
  %4925 = load ptr, ptr %7, align 8, !tbaa !9
  %4926 = load i32, ptr %12, align 4, !tbaa !5
  %4927 = load i32, ptr %8, align 4, !tbaa !5
  %4928 = mul nsw i32 40, %4927
  %4929 = add nsw i32 %4926, %4928
  %4930 = sext i32 %4929 to i64
  %4931 = getelementptr inbounds double, ptr %4925, i64 %4930
  %4932 = load double, ptr %4931, align 8, !tbaa !11
  %4933 = call double @llvm.fmuladd.f64(double 0xBFE002F9665DF3E9, double %4932, double %4924)
  %4934 = load ptr, ptr %7, align 8, !tbaa !9
  %4935 = load i32, ptr %12, align 4, !tbaa !5
  %4936 = load i32, ptr %8, align 4, !tbaa !5
  %4937 = mul nsw i32 41, %4936
  %4938 = add nsw i32 %4935, %4937
  %4939 = sext i32 %4938 to i64
  %4940 = getelementptr inbounds double, ptr %4934, i64 %4939
  %4941 = load double, ptr %4940, align 8, !tbaa !11
  %4942 = call double @llvm.fmuladd.f64(double 0xBFEBF462FB348EF9, double %4941, double %4933)
  %4943 = load ptr, ptr %7, align 8, !tbaa !9
  %4944 = load i32, ptr %12, align 4, !tbaa !5
  %4945 = load i32, ptr %8, align 4, !tbaa !5
  %4946 = mul nsw i32 42, %4945
  %4947 = add nsw i32 %4944, %4946
  %4948 = sext i32 %4947 to i64
  %4949 = getelementptr inbounds double, ptr %4943, i64 %4948
  %4950 = load double, ptr %4949, align 8, !tbaa !11
  %4951 = call double @llvm.fmuladd.f64(double 0xBFD4C0B9406BCBCC, double %4950, double %4942)
  %4952 = load ptr, ptr %7, align 8, !tbaa !9
  %4953 = load i32, ptr %12, align 4, !tbaa !5
  %4954 = load i32, ptr %8, align 4, !tbaa !5
  %4955 = mul nsw i32 43, %4954
  %4956 = add nsw i32 %4953, %4955
  %4957 = sext i32 %4956 to i64
  %4958 = getelementptr inbounds double, ptr %4952, i64 %4957
  %4959 = load double, ptr %4958, align 8, !tbaa !11
  %4960 = call double @llvm.fmuladd.f64(double 0x3F980EB0AE1D4853, double %4959, double %4951)
  %4961 = load ptr, ptr %7, align 8, !tbaa !9
  %4962 = load i32, ptr %12, align 4, !tbaa !5
  %4963 = load i32, ptr %8, align 4, !tbaa !5
  %4964 = mul nsw i32 44, %4963
  %4965 = add nsw i32 %4962, %4964
  %4966 = sext i32 %4965 to i64
  %4967 = getelementptr inbounds double, ptr %4961, i64 %4966
  %4968 = load double, ptr %4967, align 8, !tbaa !11
  %4969 = call double @llvm.fmuladd.f64(double 0x3CB3900000000000, double %4968, double %4960)
  %4970 = load ptr, ptr %7, align 8, !tbaa !9
  %4971 = load i32, ptr %12, align 4, !tbaa !5
  %4972 = load i32, ptr %8, align 4, !tbaa !5
  %4973 = mul nsw i32 45, %4972
  %4974 = add nsw i32 %4971, %4973
  %4975 = sext i32 %4974 to i64
  %4976 = getelementptr inbounds double, ptr %4970, i64 %4975
  %4977 = load double, ptr %4976, align 8, !tbaa !11
  %4978 = call double @llvm.fmuladd.f64(double 0x3CAD7FFFFFFFFFFE, double %4977, double %4969)
  %4979 = load ptr, ptr %7, align 8, !tbaa !9
  %4980 = load i32, ptr %12, align 4, !tbaa !5
  %4981 = load i32, ptr %8, align 4, !tbaa !5
  %4982 = mul nsw i32 46, %4981
  %4983 = add nsw i32 %4980, %4982
  %4984 = sext i32 %4983 to i64
  %4985 = getelementptr inbounds double, ptr %4979, i64 %4984
  %4986 = load double, ptr %4985, align 8, !tbaa !11
  %4987 = call double @llvm.fmuladd.f64(double 0x3CB2000000000000, double %4986, double %4978)
  %4988 = load ptr, ptr %7, align 8, !tbaa !9
  %4989 = load i32, ptr %12, align 4, !tbaa !5
  %4990 = load i32, ptr %8, align 4, !tbaa !5
  %4991 = mul nsw i32 47, %4990
  %4992 = add nsw i32 %4989, %4991
  %4993 = sext i32 %4992 to i64
  %4994 = getelementptr inbounds double, ptr %4988, i64 %4993
  %4995 = load double, ptr %4994, align 8, !tbaa !11
  %4996 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %4995, double %4987)
  %4997 = load ptr, ptr %7, align 8, !tbaa !9
  %4998 = load i32, ptr %12, align 4, !tbaa !5
  %4999 = load i32, ptr %8, align 4, !tbaa !5
  %5000 = mul nsw i32 48, %4999
  %5001 = add nsw i32 %4998, %5000
  %5002 = sext i32 %5001 to i64
  %5003 = getelementptr inbounds double, ptr %4997, i64 %5002
  %5004 = load double, ptr %5003, align 8, !tbaa !11
  %5005 = call double @llvm.fmuladd.f64(double 0xBCA22FFFFFFFFFFF, double %5004, double %4996)
  %5006 = load ptr, ptr %7, align 8, !tbaa !9
  %5007 = load i32, ptr %12, align 4, !tbaa !5
  %5008 = load i32, ptr %8, align 4, !tbaa !5
  %5009 = mul nsw i32 49, %5008
  %5010 = add nsw i32 %5007, %5009
  %5011 = sext i32 %5010 to i64
  %5012 = getelementptr inbounds double, ptr %5006, i64 %5011
  %5013 = load double, ptr %5012, align 8, !tbaa !11
  %5014 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %5013, double %5005)
  %5015 = load ptr, ptr %7, align 8, !tbaa !9
  %5016 = load i32, ptr %12, align 4, !tbaa !5
  %5017 = load i32, ptr %8, align 4, !tbaa !5
  %5018 = mul nsw i32 50, %5017
  %5019 = add nsw i32 %5016, %5018
  %5020 = sext i32 %5019 to i64
  %5021 = getelementptr inbounds double, ptr %5015, i64 %5020
  %5022 = load double, ptr %5021, align 8, !tbaa !11
  %5023 = call double @llvm.fmuladd.f64(double 0x3C8E000000000000, double %5022, double %5014)
  %5024 = load ptr, ptr %7, align 8, !tbaa !9
  %5025 = load i32, ptr %12, align 4, !tbaa !5
  %5026 = load i32, ptr %8, align 4, !tbaa !5
  %5027 = mul nsw i32 51, %5026
  %5028 = add nsw i32 %5025, %5027
  %5029 = sext i32 %5028 to i64
  %5030 = getelementptr inbounds double, ptr %5024, i64 %5029
  %5031 = load double, ptr %5030, align 8, !tbaa !11
  %5032 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %5031, double %5023)
  %5033 = load ptr, ptr %7, align 8, !tbaa !9
  %5034 = load i32, ptr %12, align 4, !tbaa !5
  %5035 = load i32, ptr %8, align 4, !tbaa !5
  %5036 = mul nsw i32 52, %5035
  %5037 = add nsw i32 %5034, %5036
  %5038 = sext i32 %5037 to i64
  %5039 = getelementptr inbounds double, ptr %5033, i64 %5038
  %5040 = load double, ptr %5039, align 8, !tbaa !11
  %5041 = call double @llvm.fmuladd.f64(double 0x3C7F775C4688EF29, double %5040, double %5032)
  %5042 = load ptr, ptr %7, align 8, !tbaa !9
  %5043 = load i32, ptr %12, align 4, !tbaa !5
  %5044 = load i32, ptr %8, align 4, !tbaa !5
  %5045 = mul nsw i32 53, %5044
  %5046 = add nsw i32 %5043, %5045
  %5047 = sext i32 %5046 to i64
  %5048 = getelementptr inbounds double, ptr %5042, i64 %5047
  %5049 = load double, ptr %5048, align 8, !tbaa !11
  %5050 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %5049, double %5041)
  %5051 = load ptr, ptr %7, align 8, !tbaa !9
  %5052 = load i32, ptr %12, align 4, !tbaa !5
  %5053 = load i32, ptr %8, align 4, !tbaa !5
  %5054 = mul nsw i32 54, %5053
  %5055 = add nsw i32 %5052, %5054
  %5056 = sext i32 %5055 to i64
  %5057 = getelementptr inbounds double, ptr %5051, i64 %5056
  %5058 = load double, ptr %5057, align 8, !tbaa !11
  %5059 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %5058, double %5050)
  %5060 = load ptr, ptr %7, align 8, !tbaa !9
  %5061 = load i32, ptr %12, align 4, !tbaa !5
  %5062 = load i32, ptr %8, align 4, !tbaa !5
  %5063 = mul nsw i32 55, %5062
  %5064 = add nsw i32 %5061, %5063
  %5065 = sext i32 %5064 to i64
  %5066 = getelementptr inbounds double, ptr %5060, i64 %5065
  %5067 = load double, ptr %5066, align 8, !tbaa !11
  %5068 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %5067, double %5059)
  %5069 = load ptr, ptr %7, align 8, !tbaa !9
  %5070 = load i32, ptr %12, align 4, !tbaa !5
  %5071 = load i32, ptr %8, align 4, !tbaa !5
  %5072 = mul nsw i32 56, %5071
  %5073 = add nsw i32 %5070, %5072
  %5074 = sext i32 %5073 to i64
  %5075 = getelementptr inbounds double, ptr %5069, i64 %5074
  %5076 = load double, ptr %5075, align 8, !tbaa !11
  %5077 = call double @llvm.fmuladd.f64(double 0xBFE7007BFD8FD85D, double %5076, double %5068)
  %5078 = load ptr, ptr %7, align 8, !tbaa !9
  %5079 = load i32, ptr %12, align 4, !tbaa !5
  %5080 = load i32, ptr %8, align 4, !tbaa !5
  %5081 = mul nsw i32 57, %5080
  %5082 = add nsw i32 %5079, %5081
  %5083 = sext i32 %5082 to i64
  %5084 = getelementptr inbounds double, ptr %5078, i64 %5083
  %5085 = load double, ptr %5084, align 8, !tbaa !11
  %5086 = call double @llvm.fmuladd.f64(double 0xBFE66643AEED3708, double %5085, double %5077)
  %5087 = load ptr, ptr %7, align 8, !tbaa !9
  %5088 = load i32, ptr %12, align 4, !tbaa !5
  %5089 = load i32, ptr %8, align 4, !tbaa !5
  %5090 = mul nsw i32 58, %5089
  %5091 = add nsw i32 %5088, %5090
  %5092 = sext i32 %5091 to i64
  %5093 = getelementptr inbounds double, ptr %5087, i64 %5092
  %5094 = load double, ptr %5093, align 8, !tbaa !11
  %5095 = call double @llvm.fmuladd.f64(double 0x3FAD5B74B5F10E9B, double %5094, double %5086)
  %5096 = load ptr, ptr %7, align 8, !tbaa !9
  %5097 = load i32, ptr %12, align 4, !tbaa !5
  %5098 = load i32, ptr %8, align 4, !tbaa !5
  %5099 = mul nsw i32 59, %5098
  %5100 = add nsw i32 %5097, %5099
  %5101 = sext i32 %5100 to i64
  %5102 = getelementptr inbounds double, ptr %5096, i64 %5101
  %5103 = load double, ptr %5102, align 8, !tbaa !11
  %5104 = call double @llvm.fmuladd.f64(double 0x3FA3F41B0E87BFB6, double %5103, double %5095)
  %5105 = load ptr, ptr %7, align 8, !tbaa !9
  %5106 = load i32, ptr %12, align 4, !tbaa !5
  %5107 = load i32, ptr %8, align 4, !tbaa !5
  %5108 = mul nsw i32 60, %5107
  %5109 = add nsw i32 %5106, %5108
  %5110 = sext i32 %5109 to i64
  %5111 = getelementptr inbounds double, ptr %5105, i64 %5110
  %5112 = load double, ptr %5111, align 8, !tbaa !11
  %5113 = call double @llvm.fmuladd.f64(double 0xBC9125B809AC6B51, double %5112, double %5104)
  %5114 = load ptr, ptr %7, align 8, !tbaa !9
  %5115 = load i32, ptr %12, align 4, !tbaa !5
  %5116 = load i32, ptr %8, align 4, !tbaa !5
  %5117 = mul nsw i32 61, %5116
  %5118 = add nsw i32 %5115, %5117
  %5119 = sext i32 %5118 to i64
  %5120 = getelementptr inbounds double, ptr %5114, i64 %5119
  %5121 = load double, ptr %5120, align 8, !tbaa !11
  %5122 = call double @llvm.fmuladd.f64(double 0x3C826280B3476096, double %5121, double %5113)
  %5123 = load ptr, ptr %7, align 8, !tbaa !9
  %5124 = load i32, ptr %12, align 4, !tbaa !5
  %5125 = load i32, ptr %8, align 4, !tbaa !5
  %5126 = mul nsw i32 62, %5125
  %5127 = add nsw i32 %5124, %5126
  %5128 = sext i32 %5127 to i64
  %5129 = getelementptr inbounds double, ptr %5123, i64 %5128
  %5130 = load double, ptr %5129, align 8, !tbaa !11
  %5131 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %5130, double %5122)
  %5132 = load ptr, ptr %7, align 8, !tbaa !9
  %5133 = load i32, ptr %12, align 4, !tbaa !5
  %5134 = load i32, ptr %8, align 4, !tbaa !5
  %5135 = mul nsw i32 63, %5134
  %5136 = add nsw i32 %5133, %5135
  %5137 = sext i32 %5136 to i64
  %5138 = getelementptr inbounds double, ptr %5132, i64 %5137
  %5139 = load double, ptr %5138, align 8, !tbaa !11
  %5140 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %5139, double %5131)
  %5141 = load ptr, ptr %7, align 8, !tbaa !9
  %5142 = load i32, ptr %12, align 4, !tbaa !5
  %5143 = load i32, ptr %8, align 4, !tbaa !5
  %5144 = mul nsw i32 64, %5143
  %5145 = add nsw i32 %5142, %5144
  %5146 = sext i32 %5145 to i64
  %5147 = getelementptr inbounds double, ptr %5141, i64 %5146
  %5148 = load double, ptr %5147, align 8, !tbaa !11
  %5149 = call double @llvm.fmuladd.f64(double 0x3C6B93C10CEB10E3, double %5148, double %5140)
  %5150 = load ptr, ptr %7, align 8, !tbaa !9
  %5151 = load i32, ptr %12, align 4, !tbaa !5
  %5152 = load i32, ptr %8, align 4, !tbaa !5
  %5153 = mul nsw i32 65, %5152
  %5154 = add nsw i32 %5151, %5153
  %5155 = sext i32 %5154 to i64
  %5156 = getelementptr inbounds double, ptr %5150, i64 %5155
  %5157 = load double, ptr %5156, align 8, !tbaa !11
  %5158 = call double @llvm.fmuladd.f64(double 0x3C8C48C6001F0AC0, double %5157, double %5149)
  %5159 = load ptr, ptr %7, align 8, !tbaa !9
  %5160 = load i32, ptr %12, align 4, !tbaa !5
  %5161 = load i32, ptr %8, align 4, !tbaa !5
  %5162 = mul nsw i32 66, %5161
  %5163 = add nsw i32 %5160, %5162
  %5164 = sext i32 %5163 to i64
  %5165 = getelementptr inbounds double, ptr %5159, i64 %5164
  %5166 = load double, ptr %5165, align 8, !tbaa !11
  %5167 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %5166, double %5158)
  %5168 = load ptr, ptr %7, align 8, !tbaa !9
  %5169 = load i32, ptr %12, align 4, !tbaa !5
  %5170 = load i32, ptr %8, align 4, !tbaa !5
  %5171 = mul nsw i32 67, %5170
  %5172 = add nsw i32 %5169, %5171
  %5173 = sext i32 %5172 to i64
  %5174 = getelementptr inbounds double, ptr %5168, i64 %5173
  %5175 = load double, ptr %5174, align 8, !tbaa !11
  %5176 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %5175, double %5167)
  store double %5176, ptr %11, align 8, !tbaa !11
  %5177 = load double, ptr %11, align 8, !tbaa !11
  %5178 = load ptr, ptr %9, align 8, !tbaa !9
  %5179 = load i32, ptr %12, align 4, !tbaa !5
  %5180 = load i32, ptr %10, align 4, !tbaa !5
  %5181 = mul nsw i32 17, %5180
  %5182 = add nsw i32 %5179, %5181
  %5183 = sext i32 %5182 to i64
  %5184 = getelementptr inbounds double, ptr %5178, i64 %5183
  store double %5177, ptr %5184, align 8, !tbaa !11
  %5185 = load ptr, ptr %7, align 8, !tbaa !9
  %5186 = load i32, ptr %12, align 4, !tbaa !5
  %5187 = load i32, ptr %8, align 4, !tbaa !5
  %5188 = mul nsw i32 36, %5187
  %5189 = add nsw i32 %5186, %5188
  %5190 = sext i32 %5189 to i64
  %5191 = getelementptr inbounds double, ptr %5185, i64 %5190
  %5192 = load double, ptr %5191, align 8, !tbaa !11
  %5193 = load ptr, ptr %7, align 8, !tbaa !9
  %5194 = load i32, ptr %12, align 4, !tbaa !5
  %5195 = load i32, ptr %8, align 4, !tbaa !5
  %5196 = mul nsw i32 37, %5195
  %5197 = add nsw i32 %5194, %5196
  %5198 = sext i32 %5197 to i64
  %5199 = getelementptr inbounds double, ptr %5193, i64 %5198
  %5200 = load double, ptr %5199, align 8, !tbaa !11
  %5201 = fmul double 0xBC98000000000000, %5200
  %5202 = call double @llvm.fmuladd.f64(double 0x3C98800000000000, double %5192, double %5201)
  %5203 = load ptr, ptr %7, align 8, !tbaa !9
  %5204 = load i32, ptr %12, align 4, !tbaa !5
  %5205 = load i32, ptr %8, align 4, !tbaa !5
  %5206 = mul nsw i32 38, %5205
  %5207 = add nsw i32 %5204, %5206
  %5208 = sext i32 %5207 to i64
  %5209 = getelementptr inbounds double, ptr %5203, i64 %5208
  %5210 = load double, ptr %5209, align 8, !tbaa !11
  %5211 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %5210, double %5202)
  %5212 = load ptr, ptr %7, align 8, !tbaa !9
  %5213 = load i32, ptr %12, align 4, !tbaa !5
  %5214 = load i32, ptr %8, align 4, !tbaa !5
  %5215 = mul nsw i32 39, %5214
  %5216 = add nsw i32 %5213, %5215
  %5217 = sext i32 %5216 to i64
  %5218 = getelementptr inbounds double, ptr %5212, i64 %5217
  %5219 = load double, ptr %5218, align 8, !tbaa !11
  %5220 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %5219, double %5211)
  %5221 = load ptr, ptr %7, align 8, !tbaa !9
  %5222 = load i32, ptr %12, align 4, !tbaa !5
  %5223 = load i32, ptr %8, align 4, !tbaa !5
  %5224 = mul nsw i32 40, %5223
  %5225 = add nsw i32 %5222, %5224
  %5226 = sext i32 %5225 to i64
  %5227 = getelementptr inbounds double, ptr %5221, i64 %5226
  %5228 = load double, ptr %5227, align 8, !tbaa !11
  %5229 = call double @llvm.fmuladd.f64(double 0x3FC1964E14FA3C8D, double %5228, double %5220)
  %5230 = load ptr, ptr %7, align 8, !tbaa !9
  %5231 = load i32, ptr %12, align 4, !tbaa !5
  %5232 = load i32, ptr %8, align 4, !tbaa !5
  %5233 = mul nsw i32 41, %5232
  %5234 = add nsw i32 %5231, %5233
  %5235 = sext i32 %5234 to i64
  %5236 = getelementptr inbounds double, ptr %5230, i64 %5235
  %5237 = load double, ptr %5236, align 8, !tbaa !11
  %5238 = call double @llvm.fmuladd.f64(double 0xBFD7BAC3393ADDAC, double %5237, double %5229)
  %5239 = load ptr, ptr %7, align 8, !tbaa !9
  %5240 = load i32, ptr %12, align 4, !tbaa !5
  %5241 = load i32, ptr %8, align 4, !tbaa !5
  %5242 = mul nsw i32 42, %5241
  %5243 = add nsw i32 %5240, %5242
  %5244 = sext i32 %5243 to i64
  %5245 = getelementptr inbounds double, ptr %5239, i64 %5244
  %5246 = load double, ptr %5245, align 8, !tbaa !11
  %5247 = call double @llvm.fmuladd.f64(double 0xC01043858A1F5994, double %5246, double %5238)
  %5248 = load ptr, ptr %7, align 8, !tbaa !9
  %5249 = load i32, ptr %12, align 4, !tbaa !5
  %5250 = load i32, ptr %8, align 4, !tbaa !5
  %5251 = mul nsw i32 43, %5250
  %5252 = add nsw i32 %5249, %5251
  %5253 = sext i32 %5252 to i64
  %5254 = getelementptr inbounds double, ptr %5248, i64 %5253
  %5255 = load double, ptr %5254, align 8, !tbaa !11
  %5256 = call double @llvm.fmuladd.f64(double 0xBFD7671404765114, double %5255, double %5247)
  %5257 = load ptr, ptr %7, align 8, !tbaa !9
  %5258 = load i32, ptr %12, align 4, !tbaa !5
  %5259 = load i32, ptr %8, align 4, !tbaa !5
  %5260 = mul nsw i32 44, %5259
  %5261 = add nsw i32 %5258, %5260
  %5262 = sext i32 %5261 to i64
  %5263 = getelementptr inbounds double, ptr %5257, i64 %5262
  %5264 = load double, ptr %5263, align 8, !tbaa !11
  %5265 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %5264, double %5256)
  %5266 = load ptr, ptr %7, align 8, !tbaa !9
  %5267 = load i32, ptr %12, align 4, !tbaa !5
  %5268 = load i32, ptr %8, align 4, !tbaa !5
  %5269 = mul nsw i32 45, %5268
  %5270 = add nsw i32 %5267, %5269
  %5271 = sext i32 %5270 to i64
  %5272 = getelementptr inbounds double, ptr %5266, i64 %5271
  %5273 = load double, ptr %5272, align 8, !tbaa !11
  %5274 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %5273, double %5265)
  %5275 = load ptr, ptr %7, align 8, !tbaa !9
  %5276 = load i32, ptr %12, align 4, !tbaa !5
  %5277 = load i32, ptr %8, align 4, !tbaa !5
  %5278 = mul nsw i32 46, %5277
  %5279 = add nsw i32 %5276, %5278
  %5280 = sext i32 %5279 to i64
  %5281 = getelementptr inbounds double, ptr %5275, i64 %5280
  %5282 = load double, ptr %5281, align 8, !tbaa !11
  %5283 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %5282, double %5274)
  %5284 = load ptr, ptr %7, align 8, !tbaa !9
  %5285 = load i32, ptr %12, align 4, !tbaa !5
  %5286 = load i32, ptr %8, align 4, !tbaa !5
  %5287 = mul nsw i32 47, %5286
  %5288 = add nsw i32 %5285, %5287
  %5289 = sext i32 %5288 to i64
  %5290 = getelementptr inbounds double, ptr %5284, i64 %5289
  %5291 = load double, ptr %5290, align 8, !tbaa !11
  %5292 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %5291, double %5283)
  %5293 = load ptr, ptr %7, align 8, !tbaa !9
  %5294 = load i32, ptr %12, align 4, !tbaa !5
  %5295 = load i32, ptr %8, align 4, !tbaa !5
  %5296 = mul nsw i32 48, %5295
  %5297 = add nsw i32 %5294, %5296
  %5298 = sext i32 %5297 to i64
  %5299 = getelementptr inbounds double, ptr %5293, i64 %5298
  %5300 = load double, ptr %5299, align 8, !tbaa !11
  %5301 = call double @llvm.fmuladd.f64(double 0x3C7E000000000001, double %5300, double %5292)
  %5302 = load ptr, ptr %7, align 8, !tbaa !9
  %5303 = load i32, ptr %12, align 4, !tbaa !5
  %5304 = load i32, ptr %8, align 4, !tbaa !5
  %5305 = mul nsw i32 49, %5304
  %5306 = add nsw i32 %5303, %5305
  %5307 = sext i32 %5306 to i64
  %5308 = getelementptr inbounds double, ptr %5302, i64 %5307
  %5309 = load double, ptr %5308, align 8, !tbaa !11
  %5310 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %5309, double %5301)
  %5311 = load ptr, ptr %7, align 8, !tbaa !9
  %5312 = load i32, ptr %12, align 4, !tbaa !5
  %5313 = load i32, ptr %8, align 4, !tbaa !5
  %5314 = mul nsw i32 50, %5313
  %5315 = add nsw i32 %5312, %5314
  %5316 = sext i32 %5315 to i64
  %5317 = getelementptr inbounds double, ptr %5311, i64 %5316
  %5318 = load double, ptr %5317, align 8, !tbaa !11
  %5319 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %5318, double %5310)
  %5320 = load ptr, ptr %7, align 8, !tbaa !9
  %5321 = load i32, ptr %12, align 4, !tbaa !5
  %5322 = load i32, ptr %8, align 4, !tbaa !5
  %5323 = mul nsw i32 51, %5322
  %5324 = add nsw i32 %5321, %5323
  %5325 = sext i32 %5324 to i64
  %5326 = getelementptr inbounds double, ptr %5320, i64 %5325
  %5327 = load double, ptr %5326, align 8, !tbaa !11
  %5328 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %5327, double %5319)
  %5329 = load ptr, ptr %7, align 8, !tbaa !9
  %5330 = load i32, ptr %12, align 4, !tbaa !5
  %5331 = load i32, ptr %8, align 4, !tbaa !5
  %5332 = mul nsw i32 52, %5331
  %5333 = add nsw i32 %5330, %5332
  %5334 = sext i32 %5333 to i64
  %5335 = getelementptr inbounds double, ptr %5329, i64 %5334
  %5336 = load double, ptr %5335, align 8, !tbaa !11
  %5337 = call double @llvm.fmuladd.f64(double 0x3C7ADEBC19B71701, double %5336, double %5328)
  %5338 = load ptr, ptr %7, align 8, !tbaa !9
  %5339 = load i32, ptr %12, align 4, !tbaa !5
  %5340 = load i32, ptr %8, align 4, !tbaa !5
  %5341 = mul nsw i32 53, %5340
  %5342 = add nsw i32 %5339, %5341
  %5343 = sext i32 %5342 to i64
  %5344 = getelementptr inbounds double, ptr %5338, i64 %5343
  %5345 = load double, ptr %5344, align 8, !tbaa !11
  %5346 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %5345, double %5337)
  %5347 = load ptr, ptr %7, align 8, !tbaa !9
  %5348 = load i32, ptr %12, align 4, !tbaa !5
  %5349 = load i32, ptr %8, align 4, !tbaa !5
  %5350 = mul nsw i32 54, %5349
  %5351 = add nsw i32 %5348, %5350
  %5352 = sext i32 %5351 to i64
  %5353 = getelementptr inbounds double, ptr %5347, i64 %5352
  %5354 = load double, ptr %5353, align 8, !tbaa !11
  %5355 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %5354, double %5346)
  %5356 = load ptr, ptr %7, align 8, !tbaa !9
  %5357 = load i32, ptr %12, align 4, !tbaa !5
  %5358 = load i32, ptr %8, align 4, !tbaa !5
  %5359 = mul nsw i32 56, %5358
  %5360 = add nsw i32 %5357, %5359
  %5361 = sext i32 %5360 to i64
  %5362 = getelementptr inbounds double, ptr %5356, i64 %5361
  %5363 = load double, ptr %5362, align 8, !tbaa !11
  %5364 = call double @llvm.fmuladd.f64(double 0x3FA3F41B0E87BFE9, double %5363, double %5355)
  %5365 = load ptr, ptr %7, align 8, !tbaa !9
  %5366 = load i32, ptr %12, align 4, !tbaa !5
  %5367 = load i32, ptr %8, align 4, !tbaa !5
  %5368 = mul nsw i32 57, %5367
  %5369 = add nsw i32 %5366, %5368
  %5370 = sext i32 %5369 to i64
  %5371 = getelementptr inbounds double, ptr %5365, i64 %5370
  %5372 = load double, ptr %5371, align 8, !tbaa !11
  %5373 = call double @llvm.fmuladd.f64(double 0x3FAD5B74B5F10E92, double %5372, double %5364)
  %5374 = load ptr, ptr %7, align 8, !tbaa !9
  %5375 = load i32, ptr %12, align 4, !tbaa !5
  %5376 = load i32, ptr %8, align 4, !tbaa !5
  %5377 = mul nsw i32 58, %5376
  %5378 = add nsw i32 %5375, %5377
  %5379 = sext i32 %5378 to i64
  %5380 = getelementptr inbounds double, ptr %5374, i64 %5379
  %5381 = load double, ptr %5380, align 8, !tbaa !11
  %5382 = call double @llvm.fmuladd.f64(double 0xBFE66643AEED36FA, double %5381, double %5373)
  %5383 = load ptr, ptr %7, align 8, !tbaa !9
  %5384 = load i32, ptr %12, align 4, !tbaa !5
  %5385 = load i32, ptr %8, align 4, !tbaa !5
  %5386 = mul nsw i32 59, %5385
  %5387 = add nsw i32 %5384, %5386
  %5388 = sext i32 %5387 to i64
  %5389 = getelementptr inbounds double, ptr %5383, i64 %5388
  %5390 = load double, ptr %5389, align 8, !tbaa !11
  %5391 = call double @llvm.fmuladd.f64(double 0xBFE7007BFD8FD85D, double %5390, double %5382)
  %5392 = load ptr, ptr %7, align 8, !tbaa !9
  %5393 = load i32, ptr %12, align 4, !tbaa !5
  %5394 = load i32, ptr %8, align 4, !tbaa !5
  %5395 = mul nsw i32 60, %5394
  %5396 = add nsw i32 %5393, %5395
  %5397 = sext i32 %5396 to i64
  %5398 = getelementptr inbounds double, ptr %5392, i64 %5397
  %5399 = load double, ptr %5398, align 8, !tbaa !11
  %5400 = call double @llvm.fmuladd.f64(double 0xBC70F876CCDF6CD9, double %5399, double %5391)
  %5401 = load ptr, ptr %7, align 8, !tbaa !9
  %5402 = load i32, ptr %12, align 4, !tbaa !5
  %5403 = load i32, ptr %8, align 4, !tbaa !5
  %5404 = mul nsw i32 61, %5403
  %5405 = add nsw i32 %5402, %5404
  %5406 = sext i32 %5405 to i64
  %5407 = getelementptr inbounds double, ptr %5401, i64 %5406
  %5408 = load double, ptr %5407, align 8, !tbaa !11
  %5409 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %5408, double %5400)
  %5410 = load ptr, ptr %7, align 8, !tbaa !9
  %5411 = load i32, ptr %12, align 4, !tbaa !5
  %5412 = load i32, ptr %8, align 4, !tbaa !5
  %5413 = mul nsw i32 62, %5412
  %5414 = add nsw i32 %5411, %5413
  %5415 = sext i32 %5414 to i64
  %5416 = getelementptr inbounds double, ptr %5410, i64 %5415
  %5417 = load double, ptr %5416, align 8, !tbaa !11
  %5418 = call double @llvm.fmuladd.f64(double 0x3CA3CC8A99AF5452, double %5417, double %5409)
  %5419 = load ptr, ptr %7, align 8, !tbaa !9
  %5420 = load i32, ptr %12, align 4, !tbaa !5
  %5421 = load i32, ptr %8, align 4, !tbaa !5
  %5422 = mul nsw i32 63, %5421
  %5423 = add nsw i32 %5420, %5422
  %5424 = sext i32 %5423 to i64
  %5425 = getelementptr inbounds double, ptr %5419, i64 %5424
  %5426 = load double, ptr %5425, align 8, !tbaa !11
  %5427 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %5426, double %5418)
  %5428 = load ptr, ptr %7, align 8, !tbaa !9
  %5429 = load i32, ptr %12, align 4, !tbaa !5
  %5430 = load i32, ptr %8, align 4, !tbaa !5
  %5431 = mul nsw i32 64, %5430
  %5432 = add nsw i32 %5429, %5431
  %5433 = sext i32 %5432 to i64
  %5434 = getelementptr inbounds double, ptr %5428, i64 %5433
  %5435 = load double, ptr %5434, align 8, !tbaa !11
  %5436 = call double @llvm.fmuladd.f64(double 0x3C7DB2CFE686FE7B, double %5435, double %5427)
  %5437 = load ptr, ptr %7, align 8, !tbaa !9
  %5438 = load i32, ptr %12, align 4, !tbaa !5
  %5439 = load i32, ptr %8, align 4, !tbaa !5
  %5440 = mul nsw i32 65, %5439
  %5441 = add nsw i32 %5438, %5440
  %5442 = sext i32 %5441 to i64
  %5443 = getelementptr inbounds double, ptr %5437, i64 %5442
  %5444 = load double, ptr %5443, align 8, !tbaa !11
  %5445 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %5444, double %5436)
  %5446 = load ptr, ptr %7, align 8, !tbaa !9
  %5447 = load i32, ptr %12, align 4, !tbaa !5
  %5448 = load i32, ptr %8, align 4, !tbaa !5
  %5449 = mul nsw i32 66, %5448
  %5450 = add nsw i32 %5447, %5449
  %5451 = sext i32 %5450 to i64
  %5452 = getelementptr inbounds double, ptr %5446, i64 %5451
  %5453 = load double, ptr %5452, align 8, !tbaa !11
  %5454 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %5453, double %5445)
  store double %5454, ptr %11, align 8, !tbaa !11
  %5455 = load double, ptr %11, align 8, !tbaa !11
  %5456 = load ptr, ptr %9, align 8, !tbaa !9
  %5457 = load i32, ptr %12, align 4, !tbaa !5
  %5458 = load i32, ptr %10, align 4, !tbaa !5
  %5459 = mul nsw i32 18, %5458
  %5460 = add nsw i32 %5457, %5459
  %5461 = sext i32 %5460 to i64
  %5462 = getelementptr inbounds double, ptr %5456, i64 %5461
  store double %5455, ptr %5462, align 8, !tbaa !11
  %5463 = load ptr, ptr %7, align 8, !tbaa !9
  %5464 = load i32, ptr %12, align 4, !tbaa !5
  %5465 = load i32, ptr %8, align 4, !tbaa !5
  %5466 = mul nsw i32 36, %5465
  %5467 = add nsw i32 %5464, %5466
  %5468 = sext i32 %5467 to i64
  %5469 = getelementptr inbounds double, ptr %5463, i64 %5468
  %5470 = load double, ptr %5469, align 8, !tbaa !11
  %5471 = load ptr, ptr %7, align 8, !tbaa !9
  %5472 = load i32, ptr %12, align 4, !tbaa !5
  %5473 = load i32, ptr %8, align 4, !tbaa !5
  %5474 = mul nsw i32 37, %5473
  %5475 = add nsw i32 %5472, %5474
  %5476 = sext i32 %5475 to i64
  %5477 = getelementptr inbounds double, ptr %5471, i64 %5476
  %5478 = load double, ptr %5477, align 8, !tbaa !11
  %5479 = fmul double 0x3C98000000000000, %5478
  %5480 = call double @llvm.fmuladd.f64(double 0xBC82FFFFFFFFFFFF, double %5470, double %5479)
  %5481 = load ptr, ptr %7, align 8, !tbaa !9
  %5482 = load i32, ptr %12, align 4, !tbaa !5
  %5483 = load i32, ptr %8, align 4, !tbaa !5
  %5484 = mul nsw i32 38, %5483
  %5485 = add nsw i32 %5482, %5484
  %5486 = sext i32 %5485 to i64
  %5487 = getelementptr inbounds double, ptr %5481, i64 %5486
  %5488 = load double, ptr %5487, align 8, !tbaa !11
  %5489 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %5488, double %5480)
  %5490 = load ptr, ptr %7, align 8, !tbaa !9
  %5491 = load i32, ptr %12, align 4, !tbaa !5
  %5492 = load i32, ptr %8, align 4, !tbaa !5
  %5493 = mul nsw i32 40, %5492
  %5494 = add nsw i32 %5491, %5493
  %5495 = sext i32 %5494 to i64
  %5496 = getelementptr inbounds double, ptr %5490, i64 %5495
  %5497 = load double, ptr %5496, align 8, !tbaa !11
  %5498 = call double @llvm.fmuladd.f64(double 0xBFAC37F3CCE9FD85, double %5497, double %5489)
  %5499 = load ptr, ptr %7, align 8, !tbaa !9
  %5500 = load i32, ptr %12, align 4, !tbaa !5
  %5501 = load i32, ptr %8, align 4, !tbaa !5
  %5502 = mul nsw i32 41, %5501
  %5503 = add nsw i32 %5500, %5502
  %5504 = sext i32 %5503 to i64
  %5505 = getelementptr inbounds double, ptr %5499, i64 %5504
  %5506 = load double, ptr %5505, align 8, !tbaa !11
  %5507 = call double @llvm.fmuladd.f64(double 0xBFB4C23AD63BEF7C, double %5506, double %5498)
  %5508 = load ptr, ptr %7, align 8, !tbaa !9
  %5509 = load i32, ptr %12, align 4, !tbaa !5
  %5510 = load i32, ptr %8, align 4, !tbaa !5
  %5511 = mul nsw i32 42, %5510
  %5512 = add nsw i32 %5509, %5511
  %5513 = sext i32 %5512 to i64
  %5514 = getelementptr inbounds double, ptr %5508, i64 %5513
  %5515 = load double, ptr %5514, align 8, !tbaa !11
  %5516 = call double @llvm.fmuladd.f64(double 0x3FEFAD7976B5DE11, double %5515, double %5507)
  %5517 = load ptr, ptr %7, align 8, !tbaa !9
  %5518 = load i32, ptr %12, align 4, !tbaa !5
  %5519 = load i32, ptr %8, align 4, !tbaa !5
  %5520 = mul nsw i32 43, %5519
  %5521 = add nsw i32 %5518, %5520
  %5522 = sext i32 %5521 to i64
  %5523 = getelementptr inbounds double, ptr %5517, i64 %5522
  %5524 = load double, ptr %5523, align 8, !tbaa !11
  %5525 = call double @llvm.fmuladd.f64(double 0x3FF043C98657E812, double %5524, double %5516)
  %5526 = load ptr, ptr %7, align 8, !tbaa !9
  %5527 = load i32, ptr %12, align 4, !tbaa !5
  %5528 = load i32, ptr %8, align 4, !tbaa !5
  %5529 = mul nsw i32 44, %5528
  %5530 = add nsw i32 %5527, %5529
  %5531 = sext i32 %5530 to i64
  %5532 = getelementptr inbounds double, ptr %5526, i64 %5531
  %5533 = load double, ptr %5532, align 8, !tbaa !11
  %5534 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %5533, double %5525)
  %5535 = load ptr, ptr %7, align 8, !tbaa !9
  %5536 = load i32, ptr %12, align 4, !tbaa !5
  %5537 = load i32, ptr %8, align 4, !tbaa !5
  %5538 = mul nsw i32 45, %5537
  %5539 = add nsw i32 %5536, %5538
  %5540 = sext i32 %5539 to i64
  %5541 = getelementptr inbounds double, ptr %5535, i64 %5540
  %5542 = load double, ptr %5541, align 8, !tbaa !11
  %5543 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %5542, double %5534)
  %5544 = load ptr, ptr %7, align 8, !tbaa !9
  %5545 = load i32, ptr %12, align 4, !tbaa !5
  %5546 = load i32, ptr %8, align 4, !tbaa !5
  %5547 = mul nsw i32 46, %5546
  %5548 = add nsw i32 %5545, %5547
  %5549 = sext i32 %5548 to i64
  %5550 = getelementptr inbounds double, ptr %5544, i64 %5549
  %5551 = load double, ptr %5550, align 8, !tbaa !11
  %5552 = call double @llvm.fmuladd.f64(double 0xBCAC000000000000, double %5551, double %5543)
  %5553 = load ptr, ptr %7, align 8, !tbaa !9
  %5554 = load i32, ptr %12, align 4, !tbaa !5
  %5555 = load i32, ptr %8, align 4, !tbaa !5
  %5556 = mul nsw i32 47, %5555
  %5557 = add nsw i32 %5554, %5556
  %5558 = sext i32 %5557 to i64
  %5559 = getelementptr inbounds double, ptr %5553, i64 %5558
  %5560 = load double, ptr %5559, align 8, !tbaa !11
  %5561 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %5560, double %5552)
  %5562 = load ptr, ptr %7, align 8, !tbaa !9
  %5563 = load i32, ptr %12, align 4, !tbaa !5
  %5564 = load i32, ptr %8, align 4, !tbaa !5
  %5565 = mul nsw i32 48, %5564
  %5566 = add nsw i32 %5563, %5565
  %5567 = sext i32 %5566 to i64
  %5568 = getelementptr inbounds double, ptr %5562, i64 %5567
  %5569 = load double, ptr %5568, align 8, !tbaa !11
  %5570 = call double @llvm.fmuladd.f64(double 0xBC85000000000000, double %5569, double %5561)
  %5571 = load ptr, ptr %7, align 8, !tbaa !9
  %5572 = load i32, ptr %12, align 4, !tbaa !5
  %5573 = load i32, ptr %8, align 4, !tbaa !5
  %5574 = mul nsw i32 49, %5573
  %5575 = add nsw i32 %5572, %5574
  %5576 = sext i32 %5575 to i64
  %5577 = getelementptr inbounds double, ptr %5571, i64 %5576
  %5578 = load double, ptr %5577, align 8, !tbaa !11
  %5579 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %5578, double %5570)
  %5580 = load ptr, ptr %7, align 8, !tbaa !9
  %5581 = load i32, ptr %12, align 4, !tbaa !5
  %5582 = load i32, ptr %8, align 4, !tbaa !5
  %5583 = mul nsw i32 50, %5582
  %5584 = add nsw i32 %5581, %5583
  %5585 = sext i32 %5584 to i64
  %5586 = getelementptr inbounds double, ptr %5580, i64 %5585
  %5587 = load double, ptr %5586, align 8, !tbaa !11
  %5588 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %5587, double %5579)
  %5589 = load ptr, ptr %7, align 8, !tbaa !9
  %5590 = load i32, ptr %12, align 4, !tbaa !5
  %5591 = load i32, ptr %8, align 4, !tbaa !5
  %5592 = mul nsw i32 52, %5591
  %5593 = add nsw i32 %5590, %5592
  %5594 = sext i32 %5593 to i64
  %5595 = getelementptr inbounds double, ptr %5589, i64 %5594
  %5596 = load double, ptr %5595, align 8, !tbaa !11
  %5597 = call double @llvm.fmuladd.f64(double 0xBC9152F9467969C8, double %5596, double %5588)
  %5598 = load ptr, ptr %7, align 8, !tbaa !9
  %5599 = load i32, ptr %12, align 4, !tbaa !5
  %5600 = load i32, ptr %8, align 4, !tbaa !5
  %5601 = mul nsw i32 53, %5600
  %5602 = add nsw i32 %5599, %5601
  %5603 = sext i32 %5602 to i64
  %5604 = getelementptr inbounds double, ptr %5598, i64 %5603
  %5605 = load double, ptr %5604, align 8, !tbaa !11
  %5606 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %5605, double %5597)
  %5607 = load ptr, ptr %7, align 8, !tbaa !9
  %5608 = load i32, ptr %12, align 4, !tbaa !5
  %5609 = load i32, ptr %8, align 4, !tbaa !5
  %5610 = mul nsw i32 54, %5609
  %5611 = add nsw i32 %5608, %5610
  %5612 = sext i32 %5611 to i64
  %5613 = getelementptr inbounds double, ptr %5607, i64 %5612
  %5614 = load double, ptr %5613, align 8, !tbaa !11
  %5615 = call double @llvm.fmuladd.f64(double 0x3C9974B2334F2346, double %5614, double %5606)
  %5616 = load ptr, ptr %7, align 8, !tbaa !9
  %5617 = load i32, ptr %12, align 4, !tbaa !5
  %5618 = load i32, ptr %8, align 4, !tbaa !5
  %5619 = mul nsw i32 55, %5618
  %5620 = add nsw i32 %5617, %5619
  %5621 = sext i32 %5620 to i64
  %5622 = getelementptr inbounds double, ptr %5616, i64 %5621
  %5623 = load double, ptr %5622, align 8, !tbaa !11
  %5624 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %5623, double %5615)
  %5625 = load ptr, ptr %7, align 8, !tbaa !9
  %5626 = load i32, ptr %12, align 4, !tbaa !5
  %5627 = load i32, ptr %8, align 4, !tbaa !5
  %5628 = mul nsw i32 56, %5627
  %5629 = add nsw i32 %5626, %5628
  %5630 = sext i32 %5629 to i64
  %5631 = getelementptr inbounds double, ptr %5625, i64 %5630
  %5632 = load double, ptr %5631, align 8, !tbaa !11
  %5633 = call double @llvm.fmuladd.f64(double 0xBFB8DF388696F554, double %5632, double %5624)
  %5634 = load ptr, ptr %7, align 8, !tbaa !9
  %5635 = load i32, ptr %12, align 4, !tbaa !5
  %5636 = load i32, ptr %8, align 4, !tbaa !5
  %5637 = mul nsw i32 57, %5636
  %5638 = add nsw i32 %5635, %5637
  %5639 = sext i32 %5638 to i64
  %5640 = getelementptr inbounds double, ptr %5634, i64 %5639
  %5641 = load double, ptr %5640, align 8, !tbaa !11
  %5642 = call double @llvm.fmuladd.f64(double 0x3FD0C7817D9C3121, double %5641, double %5633)
  %5643 = load ptr, ptr %7, align 8, !tbaa !9
  %5644 = load i32, ptr %12, align 4, !tbaa !5
  %5645 = load i32, ptr %8, align 4, !tbaa !5
  %5646 = mul nsw i32 58, %5645
  %5647 = add nsw i32 %5644, %5646
  %5648 = sext i32 %5647 to i64
  %5649 = getelementptr inbounds double, ptr %5643, i64 %5648
  %5650 = load double, ptr %5649, align 8, !tbaa !11
  %5651 = call double @llvm.fmuladd.f64(double 0x4007001BD846D0AE, double %5650, double %5642)
  %5652 = load ptr, ptr %7, align 8, !tbaa !9
  %5653 = load i32, ptr %12, align 4, !tbaa !5
  %5654 = load i32, ptr %8, align 4, !tbaa !5
  %5655 = mul nsw i32 59, %5654
  %5656 = add nsw i32 %5653, %5655
  %5657 = sext i32 %5656 to i64
  %5658 = getelementptr inbounds double, ptr %5652, i64 %5657
  %5659 = load double, ptr %5658, align 8, !tbaa !11
  %5660 = call double @llvm.fmuladd.f64(double 0x3FD08C54FF1019FC, double %5659, double %5651)
  %5661 = load ptr, ptr %7, align 8, !tbaa !9
  %5662 = load i32, ptr %12, align 4, !tbaa !5
  %5663 = load i32, ptr %8, align 4, !tbaa !5
  %5664 = mul nsw i32 60, %5663
  %5665 = add nsw i32 %5662, %5664
  %5666 = sext i32 %5665 to i64
  %5667 = getelementptr inbounds double, ptr %5661, i64 %5666
  %5668 = load double, ptr %5667, align 8, !tbaa !11
  %5669 = call double @llvm.fmuladd.f64(double 0x3C8974B2334F2346, double %5668, double %5660)
  %5670 = load ptr, ptr %7, align 8, !tbaa !9
  %5671 = load i32, ptr %12, align 4, !tbaa !5
  %5672 = load i32, ptr %8, align 4, !tbaa !5
  %5673 = mul nsw i32 61, %5672
  %5674 = add nsw i32 %5671, %5673
  %5675 = sext i32 %5674 to i64
  %5676 = getelementptr inbounds double, ptr %5670, i64 %5675
  %5677 = load double, ptr %5676, align 8, !tbaa !11
  %5678 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %5677, double %5669)
  %5679 = load ptr, ptr %7, align 8, !tbaa !9
  %5680 = load i32, ptr %12, align 4, !tbaa !5
  %5681 = load i32, ptr %8, align 4, !tbaa !5
  %5682 = mul nsw i32 62, %5681
  %5683 = add nsw i32 %5680, %5682
  %5684 = sext i32 %5683 to i64
  %5685 = getelementptr inbounds double, ptr %5679, i64 %5684
  %5686 = load double, ptr %5685, align 8, !tbaa !11
  %5687 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %5686, double %5678)
  %5688 = load ptr, ptr %7, align 8, !tbaa !9
  %5689 = load i32, ptr %12, align 4, !tbaa !5
  %5690 = load i32, ptr %8, align 4, !tbaa !5
  %5691 = mul nsw i32 63, %5690
  %5692 = add nsw i32 %5689, %5691
  %5693 = sext i32 %5692 to i64
  %5694 = getelementptr inbounds double, ptr %5688, i64 %5693
  %5695 = load double, ptr %5694, align 8, !tbaa !11
  %5696 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %5695, double %5687)
  %5697 = load ptr, ptr %7, align 8, !tbaa !9
  %5698 = load i32, ptr %12, align 4, !tbaa !5
  %5699 = load i32, ptr %8, align 4, !tbaa !5
  %5700 = mul nsw i32 64, %5699
  %5701 = add nsw i32 %5698, %5700
  %5702 = sext i32 %5701 to i64
  %5703 = getelementptr inbounds double, ptr %5697, i64 %5702
  %5704 = load double, ptr %5703, align 8, !tbaa !11
  %5705 = call double @llvm.fmuladd.f64(double 0xBC75369480174810, double %5704, double %5696)
  %5706 = load ptr, ptr %7, align 8, !tbaa !9
  %5707 = load i32, ptr %12, align 4, !tbaa !5
  %5708 = load i32, ptr %8, align 4, !tbaa !5
  %5709 = mul nsw i32 65, %5708
  %5710 = add nsw i32 %5707, %5709
  %5711 = sext i32 %5710 to i64
  %5712 = getelementptr inbounds double, ptr %5706, i64 %5711
  %5713 = load double, ptr %5712, align 8, !tbaa !11
  %5714 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %5713, double %5705)
  %5715 = load ptr, ptr %7, align 8, !tbaa !9
  %5716 = load i32, ptr %12, align 4, !tbaa !5
  %5717 = load i32, ptr %8, align 4, !tbaa !5
  %5718 = mul nsw i32 66, %5717
  %5719 = add nsw i32 %5716, %5718
  %5720 = sext i32 %5719 to i64
  %5721 = getelementptr inbounds double, ptr %5715, i64 %5720
  %5722 = load double, ptr %5721, align 8, !tbaa !11
  %5723 = call double @llvm.fmuladd.f64(double 0x3C93CC8A99AF5452, double %5722, double %5714)
  %5724 = load ptr, ptr %7, align 8, !tbaa !9
  %5725 = load i32, ptr %12, align 4, !tbaa !5
  %5726 = load i32, ptr %8, align 4, !tbaa !5
  %5727 = mul nsw i32 67, %5726
  %5728 = add nsw i32 %5725, %5727
  %5729 = sext i32 %5728 to i64
  %5730 = getelementptr inbounds double, ptr %5724, i64 %5729
  %5731 = load double, ptr %5730, align 8, !tbaa !11
  %5732 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %5731, double %5723)
  store double %5732, ptr %11, align 8, !tbaa !11
  %5733 = load double, ptr %11, align 8, !tbaa !11
  %5734 = load ptr, ptr %9, align 8, !tbaa !9
  %5735 = load i32, ptr %12, align 4, !tbaa !5
  %5736 = load i32, ptr %10, align 4, !tbaa !5
  %5737 = mul nsw i32 19, %5736
  %5738 = add nsw i32 %5735, %5737
  %5739 = sext i32 %5738 to i64
  %5740 = getelementptr inbounds double, ptr %5734, i64 %5739
  store double %5733, ptr %5740, align 8, !tbaa !11
  %5741 = load ptr, ptr %7, align 8, !tbaa !9
  %5742 = load i32, ptr %12, align 4, !tbaa !5
  %5743 = load i32, ptr %8, align 4, !tbaa !5
  %5744 = mul nsw i32 36, %5743
  %5745 = add nsw i32 %5742, %5744
  %5746 = sext i32 %5745 to i64
  %5747 = getelementptr inbounds double, ptr %5741, i64 %5746
  %5748 = load double, ptr %5747, align 8, !tbaa !11
  %5749 = load ptr, ptr %7, align 8, !tbaa !9
  %5750 = load i32, ptr %12, align 4, !tbaa !5
  %5751 = load i32, ptr %8, align 4, !tbaa !5
  %5752 = mul nsw i32 37, %5751
  %5753 = add nsw i32 %5750, %5752
  %5754 = sext i32 %5753 to i64
  %5755 = getelementptr inbounds double, ptr %5749, i64 %5754
  %5756 = load double, ptr %5755, align 8, !tbaa !11
  %5757 = fmul double 0xBC89FFFFFFFFFFFF, %5756
  %5758 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %5748, double %5757)
  %5759 = load ptr, ptr %7, align 8, !tbaa !9
  %5760 = load i32, ptr %12, align 4, !tbaa !5
  %5761 = load i32, ptr %8, align 4, !tbaa !5
  %5762 = mul nsw i32 38, %5761
  %5763 = add nsw i32 %5760, %5762
  %5764 = sext i32 %5763 to i64
  %5765 = getelementptr inbounds double, ptr %5759, i64 %5764
  %5766 = load double, ptr %5765, align 8, !tbaa !11
  %5767 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %5766, double %5758)
  %5768 = load ptr, ptr %7, align 8, !tbaa !9
  %5769 = load i32, ptr %12, align 4, !tbaa !5
  %5770 = load i32, ptr %8, align 4, !tbaa !5
  %5771 = mul nsw i32 39, %5770
  %5772 = add nsw i32 %5769, %5771
  %5773 = sext i32 %5772 to i64
  %5774 = getelementptr inbounds double, ptr %5768, i64 %5773
  %5775 = load double, ptr %5774, align 8, !tbaa !11
  %5776 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %5775, double %5767)
  %5777 = load ptr, ptr %7, align 8, !tbaa !9
  %5778 = load i32, ptr %12, align 4, !tbaa !5
  %5779 = load i32, ptr %8, align 4, !tbaa !5
  %5780 = mul nsw i32 40, %5779
  %5781 = add nsw i32 %5778, %5780
  %5782 = sext i32 %5781 to i64
  %5783 = getelementptr inbounds double, ptr %5777, i64 %5782
  %5784 = load double, ptr %5783, align 8, !tbaa !11
  %5785 = call double @llvm.fmuladd.f64(double 0x3C6C000000000000, double %5784, double %5776)
  %5786 = load ptr, ptr %7, align 8, !tbaa !9
  %5787 = load i32, ptr %12, align 4, !tbaa !5
  %5788 = load i32, ptr %8, align 4, !tbaa !5
  %5789 = mul nsw i32 41, %5788
  %5790 = add nsw i32 %5787, %5789
  %5791 = sext i32 %5790 to i64
  %5792 = getelementptr inbounds double, ptr %5786, i64 %5791
  %5793 = load double, ptr %5792, align 8, !tbaa !11
  %5794 = call double @llvm.fmuladd.f64(double 0x3C9A000000000000, double %5793, double %5785)
  %5795 = load ptr, ptr %7, align 8, !tbaa !9
  %5796 = load i32, ptr %12, align 4, !tbaa !5
  %5797 = load i32, ptr %8, align 4, !tbaa !5
  %5798 = mul nsw i32 42, %5797
  %5799 = add nsw i32 %5796, %5798
  %5800 = sext i32 %5799 to i64
  %5801 = getelementptr inbounds double, ptr %5795, i64 %5800
  %5802 = load double, ptr %5801, align 8, !tbaa !11
  %5803 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %5802, double %5794)
  %5804 = load ptr, ptr %7, align 8, !tbaa !9
  %5805 = load i32, ptr %12, align 4, !tbaa !5
  %5806 = load i32, ptr %8, align 4, !tbaa !5
  %5807 = mul nsw i32 43, %5806
  %5808 = add nsw i32 %5805, %5807
  %5809 = sext i32 %5808 to i64
  %5810 = getelementptr inbounds double, ptr %5804, i64 %5809
  %5811 = load double, ptr %5810, align 8, !tbaa !11
  %5812 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %5811, double %5803)
  %5813 = load ptr, ptr %7, align 8, !tbaa !9
  %5814 = load i32, ptr %12, align 4, !tbaa !5
  %5815 = load i32, ptr %8, align 4, !tbaa !5
  %5816 = mul nsw i32 44, %5815
  %5817 = add nsw i32 %5814, %5816
  %5818 = sext i32 %5817 to i64
  %5819 = getelementptr inbounds double, ptr %5813, i64 %5818
  %5820 = load double, ptr %5819, align 8, !tbaa !11
  %5821 = call double @llvm.fmuladd.f64(double 0x3FA789B66AF4F45E, double %5820, double %5812)
  %5822 = load ptr, ptr %7, align 8, !tbaa !9
  %5823 = load i32, ptr %12, align 4, !tbaa !5
  %5824 = load i32, ptr %8, align 4, !tbaa !5
  %5825 = mul nsw i32 45, %5824
  %5826 = add nsw i32 %5823, %5825
  %5827 = sext i32 %5826 to i64
  %5828 = getelementptr inbounds double, ptr %5822, i64 %5827
  %5829 = load double, ptr %5828, align 8, !tbaa !11
  %5830 = call double @llvm.fmuladd.f64(double 0x3FEC2894019C8AD1, double %5829, double %5821)
  %5831 = load ptr, ptr %7, align 8, !tbaa !9
  %5832 = load i32, ptr %12, align 4, !tbaa !5
  %5833 = load i32, ptr %8, align 4, !tbaa !5
  %5834 = mul nsw i32 46, %5833
  %5835 = add nsw i32 %5832, %5834
  %5836 = sext i32 %5835 to i64
  %5837 = getelementptr inbounds double, ptr %5831, i64 %5836
  %5838 = load double, ptr %5837, align 8, !tbaa !11
  %5839 = call double @llvm.fmuladd.f64(double 0x3FEC2894019C8AC2, double %5838, double %5830)
  %5840 = load ptr, ptr %7, align 8, !tbaa !9
  %5841 = load i32, ptr %12, align 4, !tbaa !5
  %5842 = load i32, ptr %8, align 4, !tbaa !5
  %5843 = mul nsw i32 47, %5842
  %5844 = add nsw i32 %5841, %5843
  %5845 = sext i32 %5844 to i64
  %5846 = getelementptr inbounds double, ptr %5840, i64 %5845
  %5847 = load double, ptr %5846, align 8, !tbaa !11
  %5848 = call double @llvm.fmuladd.f64(double 0x3FA789B66AF4F55B, double %5847, double %5839)
  %5849 = load ptr, ptr %7, align 8, !tbaa !9
  %5850 = load i32, ptr %12, align 4, !tbaa !5
  %5851 = load i32, ptr %8, align 4, !tbaa !5
  %5852 = mul nsw i32 48, %5851
  %5853 = add nsw i32 %5850, %5852
  %5854 = sext i32 %5853 to i64
  %5855 = getelementptr inbounds double, ptr %5849, i64 %5854
  %5856 = load double, ptr %5855, align 8, !tbaa !11
  %5857 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %5856, double %5848)
  %5858 = load ptr, ptr %7, align 8, !tbaa !9
  %5859 = load i32, ptr %12, align 4, !tbaa !5
  %5860 = load i32, ptr %8, align 4, !tbaa !5
  %5861 = mul nsw i32 49, %5860
  %5862 = add nsw i32 %5859, %5861
  %5863 = sext i32 %5862 to i64
  %5864 = getelementptr inbounds double, ptr %5858, i64 %5863
  %5865 = load double, ptr %5864, align 8, !tbaa !11
  %5866 = call double @llvm.fmuladd.f64(double 0xBC93000000000000, double %5865, double %5857)
  %5867 = load ptr, ptr %7, align 8, !tbaa !9
  %5868 = load i32, ptr %12, align 4, !tbaa !5
  %5869 = load i32, ptr %8, align 4, !tbaa !5
  %5870 = mul nsw i32 50, %5869
  %5871 = add nsw i32 %5868, %5870
  %5872 = sext i32 %5871 to i64
  %5873 = getelementptr inbounds double, ptr %5867, i64 %5872
  %5874 = load double, ptr %5873, align 8, !tbaa !11
  %5875 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %5874, double %5866)
  %5876 = load ptr, ptr %7, align 8, !tbaa !9
  %5877 = load i32, ptr %12, align 4, !tbaa !5
  %5878 = load i32, ptr %8, align 4, !tbaa !5
  %5879 = mul nsw i32 51, %5878
  %5880 = add nsw i32 %5877, %5879
  %5881 = sext i32 %5880 to i64
  %5882 = getelementptr inbounds double, ptr %5876, i64 %5881
  %5883 = load double, ptr %5882, align 8, !tbaa !11
  %5884 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %5883, double %5875)
  %5885 = load ptr, ptr %7, align 8, !tbaa !9
  %5886 = load i32, ptr %12, align 4, !tbaa !5
  %5887 = load i32, ptr %8, align 4, !tbaa !5
  %5888 = mul nsw i32 52, %5887
  %5889 = add nsw i32 %5886, %5888
  %5890 = sext i32 %5889 to i64
  %5891 = getelementptr inbounds double, ptr %5885, i64 %5890
  %5892 = load double, ptr %5891, align 8, !tbaa !11
  %5893 = call double @llvm.fmuladd.f64(double 0xBC50F876CCDF6CD8, double %5892, double %5884)
  %5894 = load ptr, ptr %7, align 8, !tbaa !9
  %5895 = load i32, ptr %12, align 4, !tbaa !5
  %5896 = load i32, ptr %8, align 4, !tbaa !5
  %5897 = mul nsw i32 53, %5896
  %5898 = add nsw i32 %5895, %5897
  %5899 = sext i32 %5898 to i64
  %5900 = getelementptr inbounds double, ptr %5894, i64 %5899
  %5901 = load double, ptr %5900, align 8, !tbaa !11
  %5902 = call double @llvm.fmuladd.f64(double 0x3C7F1CD9CCEEF238, double %5901, double %5893)
  %5903 = load ptr, ptr %7, align 8, !tbaa !9
  %5904 = load i32, ptr %12, align 4, !tbaa !5
  %5905 = load i32, ptr %8, align 4, !tbaa !5
  %5906 = mul nsw i32 54, %5905
  %5907 = add nsw i32 %5904, %5906
  %5908 = sext i32 %5907 to i64
  %5909 = getelementptr inbounds double, ptr %5903, i64 %5908
  %5910 = load double, ptr %5909, align 8, !tbaa !11
  %5911 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %5910, double %5902)
  %5912 = load ptr, ptr %7, align 8, !tbaa !9
  %5913 = load i32, ptr %12, align 4, !tbaa !5
  %5914 = load i32, ptr %8, align 4, !tbaa !5
  %5915 = mul nsw i32 55, %5914
  %5916 = add nsw i32 %5913, %5915
  %5917 = sext i32 %5916 to i64
  %5918 = getelementptr inbounds double, ptr %5912, i64 %5917
  %5919 = load double, ptr %5918, align 8, !tbaa !11
  %5920 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %5919, double %5911)
  %5921 = load ptr, ptr %7, align 8, !tbaa !9
  %5922 = load i32, ptr %12, align 4, !tbaa !5
  %5923 = load i32, ptr %8, align 4, !tbaa !5
  %5924 = mul nsw i32 56, %5923
  %5925 = add nsw i32 %5922, %5924
  %5926 = sext i32 %5925 to i64
  %5927 = getelementptr inbounds double, ptr %5921, i64 %5926
  %5928 = load double, ptr %5927, align 8, !tbaa !11
  %5929 = call double @llvm.fmuladd.f64(double 0xBC9207FE39AD63A7, double %5928, double %5920)
  %5930 = load ptr, ptr %7, align 8, !tbaa !9
  %5931 = load i32, ptr %12, align 4, !tbaa !5
  %5932 = load i32, ptr %8, align 4, !tbaa !5
  %5933 = mul nsw i32 57, %5932
  %5934 = add nsw i32 %5931, %5933
  %5935 = sext i32 %5934 to i64
  %5936 = getelementptr inbounds double, ptr %5930, i64 %5935
  %5937 = load double, ptr %5936, align 8, !tbaa !11
  %5938 = call double @llvm.fmuladd.f64(double 0xBC83CC8A99AF5451, double %5937, double %5929)
  %5939 = load ptr, ptr %7, align 8, !tbaa !9
  %5940 = load i32, ptr %12, align 4, !tbaa !5
  %5941 = load i32, ptr %8, align 4, !tbaa !5
  %5942 = mul nsw i32 59, %5941
  %5943 = add nsw i32 %5940, %5942
  %5944 = sext i32 %5943 to i64
  %5945 = getelementptr inbounds double, ptr %5939, i64 %5944
  %5946 = load double, ptr %5945, align 8, !tbaa !11
  %5947 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %5946, double %5938)
  %5948 = load ptr, ptr %7, align 8, !tbaa !9
  %5949 = load i32, ptr %12, align 4, !tbaa !5
  %5950 = load i32, ptr %8, align 4, !tbaa !5
  %5951 = mul nsw i32 60, %5950
  %5952 = add nsw i32 %5949, %5951
  %5953 = sext i32 %5952 to i64
  %5954 = getelementptr inbounds double, ptr %5948, i64 %5953
  %5955 = load double, ptr %5954, align 8, !tbaa !11
  %5956 = call double @llvm.fmuladd.f64(double 0xBFA0A4D27CF86DCE, double %5955, double %5947)
  %5957 = load ptr, ptr %7, align 8, !tbaa !9
  %5958 = load i32, ptr %12, align 4, !tbaa !5
  %5959 = load i32, ptr %8, align 4, !tbaa !5
  %5960 = mul nsw i32 61, %5959
  %5961 = add nsw i32 %5958, %5960
  %5962 = sext i32 %5961 to i64
  %5963 = getelementptr inbounds double, ptr %5957, i64 %5962
  %5964 = load double, ptr %5963, align 8, !tbaa !11
  %5965 = call double @llvm.fmuladd.f64(double 0xBFE3E93C07AFC382, double %5964, double %5956)
  %5966 = load ptr, ptr %7, align 8, !tbaa !9
  %5967 = load i32, ptr %12, align 4, !tbaa !5
  %5968 = load i32, ptr %8, align 4, !tbaa !5
  %5969 = mul nsw i32 62, %5968
  %5970 = add nsw i32 %5967, %5969
  %5971 = sext i32 %5970 to i64
  %5972 = getelementptr inbounds double, ptr %5966, i64 %5971
  %5973 = load double, ptr %5972, align 8, !tbaa !11
  %5974 = call double @llvm.fmuladd.f64(double 0xBFE3E93C07AFC37F, double %5973, double %5965)
  %5975 = load ptr, ptr %7, align 8, !tbaa !9
  %5976 = load i32, ptr %12, align 4, !tbaa !5
  %5977 = load i32, ptr %8, align 4, !tbaa !5
  %5978 = mul nsw i32 63, %5977
  %5979 = add nsw i32 %5976, %5978
  %5980 = sext i32 %5979 to i64
  %5981 = getelementptr inbounds double, ptr %5975, i64 %5980
  %5982 = load double, ptr %5981, align 8, !tbaa !11
  %5983 = call double @llvm.fmuladd.f64(double 0xBFA0A4D27CF86DB4, double %5982, double %5974)
  %5984 = load ptr, ptr %7, align 8, !tbaa !9
  %5985 = load i32, ptr %12, align 4, !tbaa !5
  %5986 = load i32, ptr %8, align 4, !tbaa !5
  %5987 = mul nsw i32 64, %5986
  %5988 = add nsw i32 %5985, %5987
  %5989 = sext i32 %5988 to i64
  %5990 = getelementptr inbounds double, ptr %5984, i64 %5989
  %5991 = load double, ptr %5990, align 8, !tbaa !11
  %5992 = call double @llvm.fmuladd.f64(double 0xBC84818F8CE34E32, double %5991, double %5983)
  %5993 = load ptr, ptr %7, align 8, !tbaa !9
  %5994 = load i32, ptr %12, align 4, !tbaa !5
  %5995 = load i32, ptr %8, align 4, !tbaa !5
  %5996 = mul nsw i32 65, %5995
  %5997 = add nsw i32 %5994, %5996
  %5998 = sext i32 %5997 to i64
  %5999 = getelementptr inbounds double, ptr %5993, i64 %5998
  %6000 = load double, ptr %5999, align 8, !tbaa !11
  %6001 = call double @llvm.fmuladd.f64(double 0x3C6C48C6001F0ABE, double %6000, double %5992)
  %6002 = load ptr, ptr %7, align 8, !tbaa !9
  %6003 = load i32, ptr %12, align 4, !tbaa !5
  %6004 = load i32, ptr %8, align 4, !tbaa !5
  %6005 = mul nsw i32 66, %6004
  %6006 = add nsw i32 %6003, %6005
  %6007 = sext i32 %6006 to i64
  %6008 = getelementptr inbounds double, ptr %6002, i64 %6007
  %6009 = load double, ptr %6008, align 8, !tbaa !11
  %6010 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %6009, double %6001)
  %6011 = load ptr, ptr %7, align 8, !tbaa !9
  %6012 = load i32, ptr %12, align 4, !tbaa !5
  %6013 = load i32, ptr %8, align 4, !tbaa !5
  %6014 = mul nsw i32 67, %6013
  %6015 = add nsw i32 %6012, %6014
  %6016 = sext i32 %6015 to i64
  %6017 = getelementptr inbounds double, ptr %6011, i64 %6016
  %6018 = load double, ptr %6017, align 8, !tbaa !11
  %6019 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %6018, double %6010)
  store double %6019, ptr %11, align 8, !tbaa !11
  %6020 = load double, ptr %11, align 8, !tbaa !11
  %6021 = load ptr, ptr %9, align 8, !tbaa !9
  %6022 = load i32, ptr %12, align 4, !tbaa !5
  %6023 = load i32, ptr %10, align 4, !tbaa !5
  %6024 = mul nsw i32 20, %6023
  %6025 = add nsw i32 %6022, %6024
  %6026 = sext i32 %6025 to i64
  %6027 = getelementptr inbounds double, ptr %6021, i64 %6026
  store double %6020, ptr %6027, align 8, !tbaa !11
  %6028 = load ptr, ptr %7, align 8, !tbaa !9
  %6029 = load i32, ptr %12, align 4, !tbaa !5
  %6030 = load i32, ptr %8, align 4, !tbaa !5
  %6031 = mul nsw i32 36, %6030
  %6032 = add nsw i32 %6029, %6031
  %6033 = sext i32 %6032 to i64
  %6034 = getelementptr inbounds double, ptr %6028, i64 %6033
  %6035 = load double, ptr %6034, align 8, !tbaa !11
  %6036 = load ptr, ptr %7, align 8, !tbaa !9
  %6037 = load i32, ptr %12, align 4, !tbaa !5
  %6038 = load i32, ptr %8, align 4, !tbaa !5
  %6039 = mul nsw i32 37, %6038
  %6040 = add nsw i32 %6037, %6039
  %6041 = sext i32 %6040 to i64
  %6042 = getelementptr inbounds double, ptr %6036, i64 %6041
  %6043 = load double, ptr %6042, align 8, !tbaa !11
  %6044 = fmul double 0xBC98000000000000, %6043
  %6045 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %6035, double %6044)
  %6046 = load ptr, ptr %7, align 8, !tbaa !9
  %6047 = load i32, ptr %12, align 4, !tbaa !5
  %6048 = load i32, ptr %8, align 4, !tbaa !5
  %6049 = mul nsw i32 38, %6048
  %6050 = add nsw i32 %6047, %6049
  %6051 = sext i32 %6050 to i64
  %6052 = getelementptr inbounds double, ptr %6046, i64 %6051
  %6053 = load double, ptr %6052, align 8, !tbaa !11
  %6054 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %6053, double %6045)
  %6055 = load ptr, ptr %7, align 8, !tbaa !9
  %6056 = load i32, ptr %12, align 4, !tbaa !5
  %6057 = load i32, ptr %8, align 4, !tbaa !5
  %6058 = mul nsw i32 39, %6057
  %6059 = add nsw i32 %6056, %6058
  %6060 = sext i32 %6059 to i64
  %6061 = getelementptr inbounds double, ptr %6055, i64 %6060
  %6062 = load double, ptr %6061, align 8, !tbaa !11
  %6063 = call double @llvm.fmuladd.f64(double 0xBCB0000000000000, double %6062, double %6054)
  %6064 = load ptr, ptr %7, align 8, !tbaa !9
  %6065 = load i32, ptr %12, align 4, !tbaa !5
  %6066 = load i32, ptr %8, align 4, !tbaa !5
  %6067 = mul nsw i32 40, %6066
  %6068 = add nsw i32 %6065, %6067
  %6069 = sext i32 %6068 to i64
  %6070 = getelementptr inbounds double, ptr %6064, i64 %6069
  %6071 = load double, ptr %6070, align 8, !tbaa !11
  %6072 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %6071, double %6063)
  %6073 = load ptr, ptr %7, align 8, !tbaa !9
  %6074 = load i32, ptr %12, align 4, !tbaa !5
  %6075 = load i32, ptr %8, align 4, !tbaa !5
  %6076 = mul nsw i32 42, %6075
  %6077 = add nsw i32 %6074, %6076
  %6078 = sext i32 %6077 to i64
  %6079 = getelementptr inbounds double, ptr %6073, i64 %6078
  %6080 = load double, ptr %6079, align 8, !tbaa !11
  %6081 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %6080, double %6072)
  %6082 = load ptr, ptr %7, align 8, !tbaa !9
  %6083 = load i32, ptr %12, align 4, !tbaa !5
  %6084 = load i32, ptr %8, align 4, !tbaa !5
  %6085 = mul nsw i32 43, %6084
  %6086 = add nsw i32 %6083, %6085
  %6087 = sext i32 %6086 to i64
  %6088 = getelementptr inbounds double, ptr %6082, i64 %6087
  %6089 = load double, ptr %6088, align 8, !tbaa !11
  %6090 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %6089, double %6081)
  %6091 = load ptr, ptr %7, align 8, !tbaa !9
  %6092 = load i32, ptr %12, align 4, !tbaa !5
  %6093 = load i32, ptr %8, align 4, !tbaa !5
  %6094 = mul nsw i32 44, %6093
  %6095 = add nsw i32 %6092, %6094
  %6096 = sext i32 %6095 to i64
  %6097 = getelementptr inbounds double, ptr %6091, i64 %6096
  %6098 = load double, ptr %6097, align 8, !tbaa !11
  %6099 = call double @llvm.fmuladd.f64(double 0xBFACD49071EC5F4A, double %6098, double %6090)
  %6100 = load ptr, ptr %7, align 8, !tbaa !9
  %6101 = load i32, ptr %12, align 4, !tbaa !5
  %6102 = load i32, ptr %8, align 4, !tbaa !5
  %6103 = mul nsw i32 45, %6102
  %6104 = add nsw i32 %6101, %6103
  %6105 = sext i32 %6104 to i64
  %6106 = getelementptr inbounds double, ptr %6100, i64 %6105
  %6107 = load double, ptr %6106, align 8, !tbaa !11
  %6108 = call double @llvm.fmuladd.f64(double 0x3FCEFDC8894D082A, double %6107, double %6099)
  %6109 = load ptr, ptr %7, align 8, !tbaa !9
  %6110 = load i32, ptr %12, align 4, !tbaa !5
  %6111 = load i32, ptr %8, align 4, !tbaa !5
  %6112 = mul nsw i32 46, %6111
  %6113 = add nsw i32 %6110, %6112
  %6114 = sext i32 %6113 to i64
  %6115 = getelementptr inbounds double, ptr %6109, i64 %6114
  %6116 = load double, ptr %6115, align 8, !tbaa !11
  %6117 = call double @llvm.fmuladd.f64(double 0xBFDD2EB9CCB3BDEB, double %6116, double %6108)
  %6118 = load ptr, ptr %7, align 8, !tbaa !9
  %6119 = load i32, ptr %12, align 4, !tbaa !5
  %6120 = load i32, ptr %8, align 4, !tbaa !5
  %6121 = mul nsw i32 47, %6120
  %6122 = add nsw i32 %6119, %6121
  %6123 = sext i32 %6122 to i64
  %6124 = getelementptr inbounds double, ptr %6118, i64 %6123
  %6125 = load double, ptr %6124, align 8, !tbaa !11
  %6126 = call double @llvm.fmuladd.f64(double 0xC01569E165D79419, double %6125, double %6117)
  %6127 = load ptr, ptr %7, align 8, !tbaa !9
  %6128 = load i32, ptr %12, align 4, !tbaa !5
  %6129 = load i32, ptr %8, align 4, !tbaa !5
  %6130 = mul nsw i32 48, %6129
  %6131 = add nsw i32 %6128, %6130
  %6132 = sext i32 %6131 to i64
  %6133 = getelementptr inbounds double, ptr %6127, i64 %6132
  %6134 = load double, ptr %6133, align 8, !tbaa !11
  %6135 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %6134, double %6126)
  %6136 = load ptr, ptr %7, align 8, !tbaa !9
  %6137 = load i32, ptr %12, align 4, !tbaa !5
  %6138 = load i32, ptr %8, align 4, !tbaa !5
  %6139 = mul nsw i32 49, %6138
  %6140 = add nsw i32 %6137, %6139
  %6141 = sext i32 %6140 to i64
  %6142 = getelementptr inbounds double, ptr %6136, i64 %6141
  %6143 = load double, ptr %6142, align 8, !tbaa !11
  %6144 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %6143, double %6135)
  %6145 = load ptr, ptr %7, align 8, !tbaa !9
  %6146 = load i32, ptr %12, align 4, !tbaa !5
  %6147 = load i32, ptr %8, align 4, !tbaa !5
  %6148 = mul nsw i32 50, %6147
  %6149 = add nsw i32 %6146, %6148
  %6150 = sext i32 %6149 to i64
  %6151 = getelementptr inbounds double, ptr %6145, i64 %6150
  %6152 = load double, ptr %6151, align 8, !tbaa !11
  %6153 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %6152, double %6144)
  %6154 = load ptr, ptr %7, align 8, !tbaa !9
  %6155 = load i32, ptr %12, align 4, !tbaa !5
  %6156 = load i32, ptr %8, align 4, !tbaa !5
  %6157 = mul nsw i32 51, %6156
  %6158 = add nsw i32 %6155, %6157
  %6159 = sext i32 %6158 to i64
  %6160 = getelementptr inbounds double, ptr %6154, i64 %6159
  %6161 = load double, ptr %6160, align 8, !tbaa !11
  %6162 = call double @llvm.fmuladd.f64(double 0xBCB0000000000000, double %6161, double %6153)
  %6163 = load ptr, ptr %7, align 8, !tbaa !9
  %6164 = load i32, ptr %12, align 4, !tbaa !5
  %6165 = load i32, ptr %8, align 4, !tbaa !5
  %6166 = mul nsw i32 52, %6165
  %6167 = add nsw i32 %6164, %6166
  %6168 = sext i32 %6167 to i64
  %6169 = getelementptr inbounds double, ptr %6163, i64 %6168
  %6170 = load double, ptr %6169, align 8, !tbaa !11
  %6171 = call double @llvm.fmuladd.f64(double 0x3C70F876CCDF6CD9, double %6170, double %6162)
  %6172 = load ptr, ptr %7, align 8, !tbaa !9
  %6173 = load i32, ptr %12, align 4, !tbaa !5
  %6174 = load i32, ptr %8, align 4, !tbaa !5
  %6175 = mul nsw i32 53, %6174
  %6176 = add nsw i32 %6173, %6175
  %6177 = sext i32 %6176 to i64
  %6178 = getelementptr inbounds double, ptr %6172, i64 %6177
  %6179 = load double, ptr %6178, align 8, !tbaa !11
  %6180 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %6179, double %6171)
  %6181 = load ptr, ptr %7, align 8, !tbaa !9
  %6182 = load i32, ptr %12, align 4, !tbaa !5
  %6183 = load i32, ptr %8, align 4, !tbaa !5
  %6184 = mul nsw i32 54, %6183
  %6185 = add nsw i32 %6182, %6184
  %6186 = sext i32 %6185 to i64
  %6187 = getelementptr inbounds double, ptr %6181, i64 %6186
  %6188 = load double, ptr %6187, align 8, !tbaa !11
  %6189 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %6188, double %6180)
  %6190 = load ptr, ptr %7, align 8, !tbaa !9
  %6191 = load i32, ptr %12, align 4, !tbaa !5
  %6192 = load i32, ptr %8, align 4, !tbaa !5
  %6193 = mul nsw i32 55, %6192
  %6194 = add nsw i32 %6191, %6193
  %6195 = sext i32 %6194 to i64
  %6196 = getelementptr inbounds double, ptr %6190, i64 %6195
  %6197 = load double, ptr %6196, align 8, !tbaa !11
  %6198 = call double @llvm.fmuladd.f64(double 0x3C96A09E667F3BCC, double %6197, double %6189)
  %6199 = load ptr, ptr %7, align 8, !tbaa !9
  %6200 = load i32, ptr %12, align 4, !tbaa !5
  %6201 = load i32, ptr %8, align 4, !tbaa !5
  %6202 = mul nsw i32 56, %6201
  %6203 = add nsw i32 %6200, %6202
  %6204 = sext i32 %6203 to i64
  %6205 = getelementptr inbounds double, ptr %6199, i64 %6204
  %6206 = load double, ptr %6205, align 8, !tbaa !11
  %6207 = call double @llvm.fmuladd.f64(double 0x3C70F876CCDF6CD9, double %6206, double %6198)
  %6208 = load ptr, ptr %7, align 8, !tbaa !9
  %6209 = load i32, ptr %12, align 4, !tbaa !5
  %6210 = load i32, ptr %8, align 4, !tbaa !5
  %6211 = mul nsw i32 57, %6210
  %6212 = add nsw i32 %6209, %6211
  %6213 = sext i32 %6212 to i64
  %6214 = getelementptr inbounds double, ptr %6208, i64 %6213
  %6215 = load double, ptr %6214, align 8, !tbaa !11
  %6216 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %6215, double %6207)
  %6217 = load ptr, ptr %7, align 8, !tbaa !9
  %6218 = load i32, ptr %12, align 4, !tbaa !5
  %6219 = load i32, ptr %8, align 4, !tbaa !5
  %6220 = mul nsw i32 58, %6219
  %6221 = add nsw i32 %6218, %6220
  %6222 = sext i32 %6221 to i64
  %6223 = getelementptr inbounds double, ptr %6217, i64 %6222
  %6224 = load double, ptr %6223, align 8, !tbaa !11
  %6225 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %6224, double %6216)
  %6226 = load ptr, ptr %7, align 8, !tbaa !9
  %6227 = load i32, ptr %12, align 4, !tbaa !5
  %6228 = load i32, ptr %8, align 4, !tbaa !5
  %6229 = mul nsw i32 59, %6228
  %6230 = add nsw i32 %6227, %6229
  %6231 = sext i32 %6230 to i64
  %6232 = getelementptr inbounds double, ptr %6226, i64 %6231
  %6233 = load double, ptr %6232, align 8, !tbaa !11
  %6234 = call double @llvm.fmuladd.f64(double 0xBCC3CC8A99AF5452, double %6233, double %6225)
  %6235 = load ptr, ptr %7, align 8, !tbaa !9
  %6236 = load i32, ptr %12, align 4, !tbaa !5
  %6237 = load i32, ptr %8, align 4, !tbaa !5
  %6238 = mul nsw i32 60, %6237
  %6239 = add nsw i32 %6236, %6238
  %6240 = sext i32 %6239 to i64
  %6241 = getelementptr inbounds double, ptr %6235, i64 %6240
  %6242 = load double, ptr %6241, align 8, !tbaa !11
  %6243 = call double @llvm.fmuladd.f64(double 0x3FA462D8D66D7FBE, double %6242, double %6234)
  %6244 = load ptr, ptr %7, align 8, !tbaa !9
  %6245 = load i32, ptr %12, align 4, !tbaa !5
  %6246 = load i32, ptr %8, align 4, !tbaa !5
  %6247 = mul nsw i32 61, %6246
  %6248 = add nsw i32 %6245, %6247
  %6249 = sext i32 %6248 to i64
  %6250 = getelementptr inbounds double, ptr %6244, i64 %6249
  %6251 = load double, ptr %6250, align 8, !tbaa !11
  %6252 = call double @llvm.fmuladd.f64(double 0xBFC5EA083165C4F6, double %6251, double %6243)
  %6253 = load ptr, ptr %7, align 8, !tbaa !9
  %6254 = load i32, ptr %12, align 4, !tbaa !5
  %6255 = load i32, ptr %8, align 4, !tbaa !5
  %6256 = mul nsw i32 62, %6255
  %6257 = add nsw i32 %6254, %6256
  %6258 = sext i32 %6257 to i64
  %6259 = getelementptr inbounds double, ptr %6253, i64 %6258
  %6260 = load double, ptr %6259, align 8, !tbaa !11
  %6261 = call double @llvm.fmuladd.f64(double 0x3FD4A299D1E97012, double %6260, double %6252)
  %6262 = load ptr, ptr %7, align 8, !tbaa !9
  %6263 = load i32, ptr %12, align 4, !tbaa !5
  %6264 = load i32, ptr %8, align 4, !tbaa !5
  %6265 = mul nsw i32 63, %6264
  %6266 = add nsw i32 %6263, %6265
  %6267 = sext i32 %6266 to i64
  %6268 = getelementptr inbounds double, ptr %6262, i64 %6267
  %6269 = load double, ptr %6268, align 8, !tbaa !11
  %6270 = call double @llvm.fmuladd.f64(double 0x400E488CB8C1EA78, double %6269, double %6261)
  %6271 = load ptr, ptr %7, align 8, !tbaa !9
  %6272 = load i32, ptr %12, align 4, !tbaa !5
  %6273 = load i32, ptr %8, align 4, !tbaa !5
  %6274 = mul nsw i32 64, %6273
  %6275 = add nsw i32 %6272, %6274
  %6276 = sext i32 %6275 to i64
  %6277 = getelementptr inbounds double, ptr %6271, i64 %6276
  %6278 = load double, ptr %6277, align 8, !tbaa !11
  %6279 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %6278, double %6270)
  %6280 = load ptr, ptr %7, align 8, !tbaa !9
  %6281 = load i32, ptr %12, align 4, !tbaa !5
  %6282 = load i32, ptr %8, align 4, !tbaa !5
  %6283 = mul nsw i32 65, %6282
  %6284 = add nsw i32 %6281, %6283
  %6285 = sext i32 %6284 to i64
  %6286 = getelementptr inbounds double, ptr %6280, i64 %6285
  %6287 = load double, ptr %6286, align 8, !tbaa !11
  %6288 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %6287, double %6279)
  %6289 = load ptr, ptr %7, align 8, !tbaa !9
  %6290 = load i32, ptr %12, align 4, !tbaa !5
  %6291 = load i32, ptr %8, align 4, !tbaa !5
  %6292 = mul nsw i32 66, %6291
  %6293 = add nsw i32 %6290, %6292
  %6294 = sext i32 %6293 to i64
  %6295 = getelementptr inbounds double, ptr %6289, i64 %6294
  %6296 = load double, ptr %6295, align 8, !tbaa !11
  %6297 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %6296, double %6288)
  %6298 = load ptr, ptr %7, align 8, !tbaa !9
  %6299 = load i32, ptr %12, align 4, !tbaa !5
  %6300 = load i32, ptr %8, align 4, !tbaa !5
  %6301 = mul nsw i32 67, %6300
  %6302 = add nsw i32 %6299, %6301
  %6303 = sext i32 %6302 to i64
  %6304 = getelementptr inbounds double, ptr %6298, i64 %6303
  %6305 = load double, ptr %6304, align 8, !tbaa !11
  %6306 = call double @llvm.fmuladd.f64(double 0x3CB0F876CCDF6CD8, double %6305, double %6297)
  store double %6306, ptr %11, align 8, !tbaa !11
  %6307 = load double, ptr %11, align 8, !tbaa !11
  %6308 = load ptr, ptr %9, align 8, !tbaa !9
  %6309 = load i32, ptr %12, align 4, !tbaa !5
  %6310 = load i32, ptr %10, align 4, !tbaa !5
  %6311 = mul nsw i32 21, %6310
  %6312 = add nsw i32 %6309, %6311
  %6313 = sext i32 %6312 to i64
  %6314 = getelementptr inbounds double, ptr %6308, i64 %6313
  store double %6307, ptr %6314, align 8, !tbaa !11
  %6315 = load ptr, ptr %7, align 8, !tbaa !9
  %6316 = load i32, ptr %12, align 4, !tbaa !5
  %6317 = load i32, ptr %8, align 4, !tbaa !5
  %6318 = mul nsw i32 36, %6317
  %6319 = add nsw i32 %6316, %6318
  %6320 = sext i32 %6319 to i64
  %6321 = getelementptr inbounds double, ptr %6315, i64 %6320
  %6322 = load double, ptr %6321, align 8, !tbaa !11
  %6323 = load ptr, ptr %7, align 8, !tbaa !9
  %6324 = load i32, ptr %12, align 4, !tbaa !5
  %6325 = load i32, ptr %8, align 4, !tbaa !5
  %6326 = mul nsw i32 37, %6325
  %6327 = add nsw i32 %6324, %6326
  %6328 = sext i32 %6327 to i64
  %6329 = getelementptr inbounds double, ptr %6323, i64 %6328
  %6330 = load double, ptr %6329, align 8, !tbaa !11
  %6331 = fmul double 0x3C90000000000000, %6330
  %6332 = call double @llvm.fmuladd.f64(double 0x3C9A400000000000, double %6322, double %6331)
  %6333 = load ptr, ptr %7, align 8, !tbaa !9
  %6334 = load i32, ptr %12, align 4, !tbaa !5
  %6335 = load i32, ptr %8, align 4, !tbaa !5
  %6336 = mul nsw i32 38, %6335
  %6337 = add nsw i32 %6334, %6336
  %6338 = sext i32 %6337 to i64
  %6339 = getelementptr inbounds double, ptr %6333, i64 %6338
  %6340 = load double, ptr %6339, align 8, !tbaa !11
  %6341 = call double @llvm.fmuladd.f64(double 0x3C9A000000000000, double %6340, double %6332)
  %6342 = load ptr, ptr %7, align 8, !tbaa !9
  %6343 = load i32, ptr %12, align 4, !tbaa !5
  %6344 = load i32, ptr %8, align 4, !tbaa !5
  %6345 = mul nsw i32 39, %6344
  %6346 = add nsw i32 %6343, %6345
  %6347 = sext i32 %6346 to i64
  %6348 = getelementptr inbounds double, ptr %6342, i64 %6347
  %6349 = load double, ptr %6348, align 8, !tbaa !11
  %6350 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %6349, double %6341)
  %6351 = load ptr, ptr %7, align 8, !tbaa !9
  %6352 = load i32, ptr %12, align 4, !tbaa !5
  %6353 = load i32, ptr %8, align 4, !tbaa !5
  %6354 = mul nsw i32 40, %6353
  %6355 = add nsw i32 %6352, %6354
  %6356 = sext i32 %6355 to i64
  %6357 = getelementptr inbounds double, ptr %6351, i64 %6356
  %6358 = load double, ptr %6357, align 8, !tbaa !11
  %6359 = call double @llvm.fmuladd.f64(double 0xBC91000000000000, double %6358, double %6350)
  %6360 = load ptr, ptr %7, align 8, !tbaa !9
  %6361 = load i32, ptr %12, align 4, !tbaa !5
  %6362 = load i32, ptr %8, align 4, !tbaa !5
  %6363 = mul nsw i32 41, %6362
  %6364 = add nsw i32 %6361, %6363
  %6365 = sext i32 %6364 to i64
  %6366 = getelementptr inbounds double, ptr %6360, i64 %6365
  %6367 = load double, ptr %6366, align 8, !tbaa !11
  %6368 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %6367, double %6359)
  %6369 = load ptr, ptr %7, align 8, !tbaa !9
  %6370 = load i32, ptr %12, align 4, !tbaa !5
  %6371 = load i32, ptr %8, align 4, !tbaa !5
  %6372 = mul nsw i32 42, %6371
  %6373 = add nsw i32 %6370, %6372
  %6374 = sext i32 %6373 to i64
  %6375 = getelementptr inbounds double, ptr %6369, i64 %6374
  %6376 = load double, ptr %6375, align 8, !tbaa !11
  %6377 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %6376, double %6368)
  %6378 = load ptr, ptr %7, align 8, !tbaa !9
  %6379 = load i32, ptr %12, align 4, !tbaa !5
  %6380 = load i32, ptr %8, align 4, !tbaa !5
  %6381 = mul nsw i32 43, %6380
  %6382 = add nsw i32 %6379, %6381
  %6383 = sext i32 %6382 to i64
  %6384 = getelementptr inbounds double, ptr %6378, i64 %6383
  %6385 = load double, ptr %6384, align 8, !tbaa !11
  %6386 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %6385, double %6377)
  %6387 = load ptr, ptr %7, align 8, !tbaa !9
  %6388 = load i32, ptr %12, align 4, !tbaa !5
  %6389 = load i32, ptr %8, align 4, !tbaa !5
  %6390 = mul nsw i32 44, %6389
  %6391 = add nsw i32 %6388, %6390
  %6392 = sext i32 %6391 to i64
  %6393 = getelementptr inbounds double, ptr %6387, i64 %6392
  %6394 = load double, ptr %6393, align 8, !tbaa !11
  %6395 = call double @llvm.fmuladd.f64(double 0x3FD6F2A1D7A49299, double %6394, double %6386)
  %6396 = load ptr, ptr %7, align 8, !tbaa !9
  %6397 = load i32, ptr %12, align 4, !tbaa !5
  %6398 = load i32, ptr %8, align 4, !tbaa !5
  %6399 = mul nsw i32 45, %6398
  %6400 = add nsw i32 %6397, %6399
  %6401 = sext i32 %6400 to i64
  %6402 = getelementptr inbounds double, ptr %6396, i64 %6401
  %6403 = load double, ptr %6402, align 8, !tbaa !11
  %6404 = call double @llvm.fmuladd.f64(double 0x3FEAEBF44A8E7A7F, double %6403, double %6395)
  %6405 = load ptr, ptr %7, align 8, !tbaa !9
  %6406 = load i32, ptr %12, align 4, !tbaa !5
  %6407 = load i32, ptr %8, align 4, !tbaa !5
  %6408 = mul nsw i32 46, %6407
  %6409 = add nsw i32 %6406, %6408
  %6410 = sext i32 %6409 to i64
  %6411 = getelementptr inbounds double, ptr %6405, i64 %6410
  %6412 = load double, ptr %6411, align 8, !tbaa !11
  %6413 = call double @llvm.fmuladd.f64(double 0x3FEAEBF44A8E7A7D, double %6412, double %6404)
  %6414 = load ptr, ptr %7, align 8, !tbaa !9
  %6415 = load i32, ptr %12, align 4, !tbaa !5
  %6416 = load i32, ptr %8, align 4, !tbaa !5
  %6417 = mul nsw i32 47, %6416
  %6418 = add nsw i32 %6415, %6417
  %6419 = sext i32 %6418 to i64
  %6420 = getelementptr inbounds double, ptr %6414, i64 %6419
  %6421 = load double, ptr %6420, align 8, !tbaa !11
  %6422 = call double @llvm.fmuladd.f64(double 0x3FD6F2A1D7A492C6, double %6421, double %6413)
  %6423 = load ptr, ptr %7, align 8, !tbaa !9
  %6424 = load i32, ptr %12, align 4, !tbaa !5
  %6425 = load i32, ptr %8, align 4, !tbaa !5
  %6426 = mul nsw i32 48, %6425
  %6427 = add nsw i32 %6424, %6426
  %6428 = sext i32 %6427 to i64
  %6429 = getelementptr inbounds double, ptr %6423, i64 %6428
  %6430 = load double, ptr %6429, align 8, !tbaa !11
  %6431 = call double @llvm.fmuladd.f64(double 0xBC62000000000000, double %6430, double %6422)
  %6432 = load ptr, ptr %7, align 8, !tbaa !9
  %6433 = load i32, ptr %12, align 4, !tbaa !5
  %6434 = load i32, ptr %8, align 4, !tbaa !5
  %6435 = mul nsw i32 49, %6434
  %6436 = add nsw i32 %6433, %6435
  %6437 = sext i32 %6436 to i64
  %6438 = getelementptr inbounds double, ptr %6432, i64 %6437
  %6439 = load double, ptr %6438, align 8, !tbaa !11
  %6440 = call double @llvm.fmuladd.f64(double 0xBCA8000000000001, double %6439, double %6431)
  %6441 = load ptr, ptr %7, align 8, !tbaa !9
  %6442 = load i32, ptr %12, align 4, !tbaa !5
  %6443 = load i32, ptr %8, align 4, !tbaa !5
  %6444 = mul nsw i32 50, %6443
  %6445 = add nsw i32 %6442, %6444
  %6446 = sext i32 %6445 to i64
  %6447 = getelementptr inbounds double, ptr %6441, i64 %6446
  %6448 = load double, ptr %6447, align 8, !tbaa !11
  %6449 = call double @llvm.fmuladd.f64(double 0x3CA2FFFFFFFFFFFE, double %6448, double %6440)
  %6450 = load ptr, ptr %7, align 8, !tbaa !9
  %6451 = load i32, ptr %12, align 4, !tbaa !5
  %6452 = load i32, ptr %8, align 4, !tbaa !5
  %6453 = mul nsw i32 51, %6452
  %6454 = add nsw i32 %6451, %6453
  %6455 = sext i32 %6454 to i64
  %6456 = getelementptr inbounds double, ptr %6450, i64 %6455
  %6457 = load double, ptr %6456, align 8, !tbaa !11
  %6458 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %6457, double %6449)
  %6459 = load ptr, ptr %7, align 8, !tbaa !9
  %6460 = load i32, ptr %12, align 4, !tbaa !5
  %6461 = load i32, ptr %8, align 4, !tbaa !5
  %6462 = mul nsw i32 52, %6461
  %6463 = add nsw i32 %6460, %6462
  %6464 = sext i32 %6463 to i64
  %6465 = getelementptr inbounds double, ptr %6459, i64 %6464
  %6466 = load double, ptr %6465, align 8, !tbaa !11
  %6467 = call double @llvm.fmuladd.f64(double 0x3CA02CD13B44F3C0, double %6466, double %6458)
  %6468 = load ptr, ptr %7, align 8, !tbaa !9
  %6469 = load i32, ptr %12, align 4, !tbaa !5
  %6470 = load i32, ptr %8, align 4, !tbaa !5
  %6471 = mul nsw i32 54, %6470
  %6472 = add nsw i32 %6469, %6471
  %6473 = sext i32 %6472 to i64
  %6474 = getelementptr inbounds double, ptr %6468, i64 %6473
  %6475 = load double, ptr %6474, align 8, !tbaa !11
  %6476 = call double @llvm.fmuladd.f64(double 0x3C70F876CCDF6CD9, double %6475, double %6467)
  %6477 = load ptr, ptr %7, align 8, !tbaa !9
  %6478 = load i32, ptr %12, align 4, !tbaa !5
  %6479 = load i32, ptr %8, align 4, !tbaa !5
  %6480 = mul nsw i32 55, %6479
  %6481 = add nsw i32 %6478, %6480
  %6482 = sext i32 %6481 to i64
  %6483 = getelementptr inbounds double, ptr %6477, i64 %6482
  %6484 = load double, ptr %6483, align 8, !tbaa !11
  %6485 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %6484, double %6476)
  %6486 = load ptr, ptr %7, align 8, !tbaa !9
  %6487 = load i32, ptr %12, align 4, !tbaa !5
  %6488 = load i32, ptr %8, align 4, !tbaa !5
  %6489 = mul nsw i32 56, %6488
  %6490 = add nsw i32 %6487, %6489
  %6491 = sext i32 %6490 to i64
  %6492 = getelementptr inbounds double, ptr %6486, i64 %6491
  %6493 = load double, ptr %6492, align 8, !tbaa !11
  %6494 = call double @llvm.fmuladd.f64(double 0xBCABEE4386850DD1, double %6493, double %6485)
  %6495 = load ptr, ptr %7, align 8, !tbaa !9
  %6496 = load i32, ptr %12, align 4, !tbaa !5
  %6497 = load i32, ptr %8, align 4, !tbaa !5
  %6498 = mul nsw i32 57, %6497
  %6499 = add nsw i32 %6496, %6498
  %6500 = sext i32 %6499 to i64
  %6501 = getelementptr inbounds double, ptr %6495, i64 %6500
  %6502 = load double, ptr %6501, align 8, !tbaa !11
  %6503 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %6502, double %6494)
  %6504 = load ptr, ptr %7, align 8, !tbaa !9
  %6505 = load i32, ptr %12, align 4, !tbaa !5
  %6506 = load i32, ptr %8, align 4, !tbaa !5
  %6507 = mul nsw i32 58, %6506
  %6508 = add nsw i32 %6505, %6507
  %6509 = sext i32 %6508 to i64
  %6510 = getelementptr inbounds double, ptr %6504, i64 %6509
  %6511 = load double, ptr %6510, align 8, !tbaa !11
  %6512 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %6511, double %6503)
  %6513 = load ptr, ptr %7, align 8, !tbaa !9
  %6514 = load i32, ptr %12, align 4, !tbaa !5
  %6515 = load i32, ptr %8, align 4, !tbaa !5
  %6516 = mul nsw i32 59, %6515
  %6517 = add nsw i32 %6514, %6516
  %6518 = sext i32 %6517 to i64
  %6519 = getelementptr inbounds double, ptr %6513, i64 %6518
  %6520 = load double, ptr %6519, align 8, !tbaa !11
  %6521 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %6520, double %6512)
  %6522 = load ptr, ptr %7, align 8, !tbaa !9
  %6523 = load i32, ptr %12, align 4, !tbaa !5
  %6524 = load i32, ptr %8, align 4, !tbaa !5
  %6525 = mul nsw i32 60, %6524
  %6526 = add nsw i32 %6523, %6525
  %6527 = sext i32 %6526 to i64
  %6528 = getelementptr inbounds double, ptr %6522, i64 %6527
  %6529 = load double, ptr %6528, align 8, !tbaa !11
  %6530 = call double @llvm.fmuladd.f64(double 0x400E488CB8C1EA66, double %6529, double %6521)
  %6531 = load ptr, ptr %7, align 8, !tbaa !9
  %6532 = load i32, ptr %12, align 4, !tbaa !5
  %6533 = load i32, ptr %8, align 4, !tbaa !5
  %6534 = mul nsw i32 61, %6533
  %6535 = add nsw i32 %6532, %6534
  %6536 = sext i32 %6535 to i64
  %6537 = getelementptr inbounds double, ptr %6531, i64 %6536
  %6538 = load double, ptr %6537, align 8, !tbaa !11
  %6539 = call double @llvm.fmuladd.f64(double 0x3FD4A299D1E9700C, double %6538, double %6530)
  %6540 = load ptr, ptr %7, align 8, !tbaa !9
  %6541 = load i32, ptr %12, align 4, !tbaa !5
  %6542 = load i32, ptr %8, align 4, !tbaa !5
  %6543 = mul nsw i32 62, %6542
  %6544 = add nsw i32 %6541, %6543
  %6545 = sext i32 %6544 to i64
  %6546 = getelementptr inbounds double, ptr %6540, i64 %6545
  %6547 = load double, ptr %6546, align 8, !tbaa !11
  %6548 = call double @llvm.fmuladd.f64(double 0xBFC5EA083165C4F9, double %6547, double %6539)
  %6549 = load ptr, ptr %7, align 8, !tbaa !9
  %6550 = load i32, ptr %12, align 4, !tbaa !5
  %6551 = load i32, ptr %8, align 4, !tbaa !5
  %6552 = mul nsw i32 63, %6551
  %6553 = add nsw i32 %6550, %6552
  %6554 = sext i32 %6553 to i64
  %6555 = getelementptr inbounds double, ptr %6549, i64 %6554
  %6556 = load double, ptr %6555, align 8, !tbaa !11
  %6557 = call double @llvm.fmuladd.f64(double 0x3FA462D8D66D7F7F, double %6556, double %6548)
  %6558 = load ptr, ptr %7, align 8, !tbaa !9
  %6559 = load i32, ptr %12, align 4, !tbaa !5
  %6560 = load i32, ptr %8, align 4, !tbaa !5
  %6561 = mul nsw i32 64, %6560
  %6562 = add nsw i32 %6559, %6561
  %6563 = sext i32 %6562 to i64
  %6564 = getelementptr inbounds double, ptr %6558, i64 %6563
  %6565 = load double, ptr %6564, align 8, !tbaa !11
  %6566 = call double @llvm.fmuladd.f64(double 0x3CB9DA84FC1C5FD3, double %6565, double %6557)
  %6567 = load ptr, ptr %7, align 8, !tbaa !9
  %6568 = load i32, ptr %12, align 4, !tbaa !5
  %6569 = load i32, ptr %8, align 4, !tbaa !5
  %6570 = mul nsw i32 66, %6569
  %6571 = add nsw i32 %6568, %6570
  %6572 = sext i32 %6571 to i64
  %6573 = getelementptr inbounds double, ptr %6567, i64 %6572
  %6574 = load double, ptr %6573, align 8, !tbaa !11
  %6575 = call double @llvm.fmuladd.f64(double 0xBC70F876CCDF6CD9, double %6574, double %6566)
  %6576 = load ptr, ptr %7, align 8, !tbaa !9
  %6577 = load i32, ptr %12, align 4, !tbaa !5
  %6578 = load i32, ptr %8, align 4, !tbaa !5
  %6579 = mul nsw i32 67, %6578
  %6580 = add nsw i32 %6577, %6579
  %6581 = sext i32 %6580 to i64
  %6582 = getelementptr inbounds double, ptr %6576, i64 %6581
  %6583 = load double, ptr %6582, align 8, !tbaa !11
  %6584 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %6583, double %6575)
  store double %6584, ptr %11, align 8, !tbaa !11
  %6585 = load double, ptr %11, align 8, !tbaa !11
  %6586 = load ptr, ptr %9, align 8, !tbaa !9
  %6587 = load i32, ptr %12, align 4, !tbaa !5
  %6588 = load i32, ptr %10, align 4, !tbaa !5
  %6589 = mul nsw i32 22, %6588
  %6590 = add nsw i32 %6587, %6589
  %6591 = sext i32 %6590 to i64
  %6592 = getelementptr inbounds double, ptr %6586, i64 %6591
  store double %6585, ptr %6592, align 8, !tbaa !11
  %6593 = load ptr, ptr %7, align 8, !tbaa !9
  %6594 = load i32, ptr %12, align 4, !tbaa !5
  %6595 = load i32, ptr %8, align 4, !tbaa !5
  %6596 = mul nsw i32 36, %6595
  %6597 = add nsw i32 %6594, %6596
  %6598 = sext i32 %6597 to i64
  %6599 = getelementptr inbounds double, ptr %6593, i64 %6598
  %6600 = load double, ptr %6599, align 8, !tbaa !11
  %6601 = load ptr, ptr %7, align 8, !tbaa !9
  %6602 = load i32, ptr %12, align 4, !tbaa !5
  %6603 = load i32, ptr %8, align 4, !tbaa !5
  %6604 = mul nsw i32 37, %6603
  %6605 = add nsw i32 %6602, %6604
  %6606 = sext i32 %6605 to i64
  %6607 = getelementptr inbounds double, ptr %6601, i64 %6606
  %6608 = load double, ptr %6607, align 8, !tbaa !11
  %6609 = fmul double 0xBCA0000000000002, %6608
  %6610 = call double @llvm.fmuladd.f64(double 0x3C80800000000000, double %6600, double %6609)
  %6611 = load ptr, ptr %7, align 8, !tbaa !9
  %6612 = load i32, ptr %12, align 4, !tbaa !5
  %6613 = load i32, ptr %8, align 4, !tbaa !5
  %6614 = mul nsw i32 38, %6613
  %6615 = add nsw i32 %6612, %6614
  %6616 = sext i32 %6615 to i64
  %6617 = getelementptr inbounds double, ptr %6611, i64 %6616
  %6618 = load double, ptr %6617, align 8, !tbaa !11
  %6619 = call double @llvm.fmuladd.f64(double 0xBCAB000000000001, double %6618, double %6610)
  %6620 = load ptr, ptr %7, align 8, !tbaa !9
  %6621 = load i32, ptr %12, align 4, !tbaa !5
  %6622 = load i32, ptr %8, align 4, !tbaa !5
  %6623 = mul nsw i32 40, %6622
  %6624 = add nsw i32 %6621, %6623
  %6625 = sext i32 %6624 to i64
  %6626 = getelementptr inbounds double, ptr %6620, i64 %6625
  %6627 = load double, ptr %6626, align 8, !tbaa !11
  %6628 = call double @llvm.fmuladd.f64(double 0x3CB5BFFFFFFFFFFF, double %6627, double %6619)
  %6629 = load ptr, ptr %7, align 8, !tbaa !9
  %6630 = load i32, ptr %12, align 4, !tbaa !5
  %6631 = load i32, ptr %8, align 4, !tbaa !5
  %6632 = mul nsw i32 41, %6631
  %6633 = add nsw i32 %6630, %6632
  %6634 = sext i32 %6633 to i64
  %6635 = getelementptr inbounds double, ptr %6629, i64 %6634
  %6636 = load double, ptr %6635, align 8, !tbaa !11
  %6637 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %6636, double %6628)
  %6638 = load ptr, ptr %7, align 8, !tbaa !9
  %6639 = load i32, ptr %12, align 4, !tbaa !5
  %6640 = load i32, ptr %8, align 4, !tbaa !5
  %6641 = mul nsw i32 42, %6640
  %6642 = add nsw i32 %6639, %6641
  %6643 = sext i32 %6642 to i64
  %6644 = getelementptr inbounds double, ptr %6638, i64 %6643
  %6645 = load double, ptr %6644, align 8, !tbaa !11
  %6646 = call double @llvm.fmuladd.f64(double 0x3CB5FFFFFFFFFFFF, double %6645, double %6637)
  %6647 = load ptr, ptr %7, align 8, !tbaa !9
  %6648 = load i32, ptr %12, align 4, !tbaa !5
  %6649 = load i32, ptr %8, align 4, !tbaa !5
  %6650 = mul nsw i32 44, %6649
  %6651 = add nsw i32 %6648, %6650
  %6652 = sext i32 %6651 to i64
  %6653 = getelementptr inbounds double, ptr %6647, i64 %6652
  %6654 = load double, ptr %6653, align 8, !tbaa !11
  %6655 = call double @llvm.fmuladd.f64(double 0xC01569E165D79417, double %6654, double %6646)
  %6656 = load ptr, ptr %7, align 8, !tbaa !9
  %6657 = load i32, ptr %12, align 4, !tbaa !5
  %6658 = load i32, ptr %8, align 4, !tbaa !5
  %6659 = mul nsw i32 45, %6658
  %6660 = add nsw i32 %6657, %6659
  %6661 = sext i32 %6660 to i64
  %6662 = getelementptr inbounds double, ptr %6656, i64 %6661
  %6663 = load double, ptr %6662, align 8, !tbaa !11
  %6664 = call double @llvm.fmuladd.f64(double 0xBFDD2EB9CCB3BDF4, double %6663, double %6655)
  %6665 = load ptr, ptr %7, align 8, !tbaa !9
  %6666 = load i32, ptr %12, align 4, !tbaa !5
  %6667 = load i32, ptr %8, align 4, !tbaa !5
  %6668 = mul nsw i32 46, %6667
  %6669 = add nsw i32 %6666, %6668
  %6670 = sext i32 %6669 to i64
  %6671 = getelementptr inbounds double, ptr %6665, i64 %6670
  %6672 = load double, ptr %6671, align 8, !tbaa !11
  %6673 = call double @llvm.fmuladd.f64(double 0x3FCEFDC8894D0831, double %6672, double %6664)
  %6674 = load ptr, ptr %7, align 8, !tbaa !9
  %6675 = load i32, ptr %12, align 4, !tbaa !5
  %6676 = load i32, ptr %8, align 4, !tbaa !5
  %6677 = mul nsw i32 47, %6676
  %6678 = add nsw i32 %6675, %6677
  %6679 = sext i32 %6678 to i64
  %6680 = getelementptr inbounds double, ptr %6674, i64 %6679
  %6681 = load double, ptr %6680, align 8, !tbaa !11
  %6682 = call double @llvm.fmuladd.f64(double 0xBFACD49071EC5EF0, double %6681, double %6673)
  %6683 = load ptr, ptr %7, align 8, !tbaa !9
  %6684 = load i32, ptr %12, align 4, !tbaa !5
  %6685 = load i32, ptr %8, align 4, !tbaa !5
  %6686 = mul nsw i32 48, %6685
  %6687 = add nsw i32 %6684, %6686
  %6688 = sext i32 %6687 to i64
  %6689 = getelementptr inbounds double, ptr %6683, i64 %6688
  %6690 = load double, ptr %6689, align 8, !tbaa !11
  %6691 = call double @llvm.fmuladd.f64(double 0x3CABE00000000000, double %6690, double %6682)
  %6692 = load ptr, ptr %7, align 8, !tbaa !9
  %6693 = load i32, ptr %12, align 4, !tbaa !5
  %6694 = load i32, ptr %8, align 4, !tbaa !5
  %6695 = mul nsw i32 49, %6694
  %6696 = add nsw i32 %6693, %6695
  %6697 = sext i32 %6696 to i64
  %6698 = getelementptr inbounds double, ptr %6692, i64 %6697
  %6699 = load double, ptr %6698, align 8, !tbaa !11
  %6700 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %6699, double %6691)
  %6701 = load ptr, ptr %7, align 8, !tbaa !9
  %6702 = load i32, ptr %12, align 4, !tbaa !5
  %6703 = load i32, ptr %8, align 4, !tbaa !5
  %6704 = mul nsw i32 50, %6703
  %6705 = add nsw i32 %6702, %6704
  %6706 = sext i32 %6705 to i64
  %6707 = getelementptr inbounds double, ptr %6701, i64 %6706
  %6708 = load double, ptr %6707, align 8, !tbaa !11
  %6709 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %6708, double %6700)
  %6710 = load ptr, ptr %7, align 8, !tbaa !9
  %6711 = load i32, ptr %12, align 4, !tbaa !5
  %6712 = load i32, ptr %8, align 4, !tbaa !5
  %6713 = mul nsw i32 51, %6712
  %6714 = add nsw i32 %6711, %6713
  %6715 = sext i32 %6714 to i64
  %6716 = getelementptr inbounds double, ptr %6710, i64 %6715
  %6717 = load double, ptr %6716, align 8, !tbaa !11
  %6718 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %6717, double %6709)
  %6719 = load ptr, ptr %7, align 8, !tbaa !9
  %6720 = load i32, ptr %12, align 4, !tbaa !5
  %6721 = load i32, ptr %8, align 4, !tbaa !5
  %6722 = mul nsw i32 52, %6721
  %6723 = add nsw i32 %6720, %6722
  %6724 = sext i32 %6723 to i64
  %6725 = getelementptr inbounds double, ptr %6719, i64 %6724
  %6726 = load double, ptr %6725, align 8, !tbaa !11
  %6727 = call double @llvm.fmuladd.f64(double 0xBC8152F9467969C8, double %6726, double %6718)
  %6728 = load ptr, ptr %7, align 8, !tbaa !9
  %6729 = load i32, ptr %12, align 4, !tbaa !5
  %6730 = load i32, ptr %8, align 4, !tbaa !5
  %6731 = mul nsw i32 53, %6730
  %6732 = add nsw i32 %6729, %6731
  %6733 = sext i32 %6732 to i64
  %6734 = getelementptr inbounds double, ptr %6728, i64 %6733
  %6735 = load double, ptr %6734, align 8, !tbaa !11
  %6736 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %6735, double %6727)
  %6737 = load ptr, ptr %7, align 8, !tbaa !9
  %6738 = load i32, ptr %12, align 4, !tbaa !5
  %6739 = load i32, ptr %8, align 4, !tbaa !5
  %6740 = mul nsw i32 54, %6739
  %6741 = add nsw i32 %6738, %6740
  %6742 = sext i32 %6741 to i64
  %6743 = getelementptr inbounds double, ptr %6737, i64 %6742
  %6744 = load double, ptr %6743, align 8, !tbaa !11
  %6745 = call double @llvm.fmuladd.f64(double 0xBC926280B3476096, double %6744, double %6736)
  %6746 = load ptr, ptr %7, align 8, !tbaa !9
  %6747 = load i32, ptr %12, align 4, !tbaa !5
  %6748 = load i32, ptr %8, align 4, !tbaa !5
  %6749 = mul nsw i32 55, %6748
  %6750 = add nsw i32 %6747, %6749
  %6751 = sext i32 %6750 to i64
  %6752 = getelementptr inbounds double, ptr %6746, i64 %6751
  %6753 = load double, ptr %6752, align 8, !tbaa !11
  %6754 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %6753, double %6745)
  %6755 = load ptr, ptr %7, align 8, !tbaa !9
  %6756 = load i32, ptr %12, align 4, !tbaa !5
  %6757 = load i32, ptr %8, align 4, !tbaa !5
  %6758 = mul nsw i32 56, %6757
  %6759 = add nsw i32 %6756, %6758
  %6760 = sext i32 %6759 to i64
  %6761 = getelementptr inbounds double, ptr %6755, i64 %6760
  %6762 = load double, ptr %6761, align 8, !tbaa !11
  %6763 = call double @llvm.fmuladd.f64(double 0x3C9CFDCAF353049B, double %6762, double %6754)
  %6764 = load ptr, ptr %7, align 8, !tbaa !9
  %6765 = load i32, ptr %12, align 4, !tbaa !5
  %6766 = load i32, ptr %8, align 4, !tbaa !5
  %6767 = mul nsw i32 57, %6766
  %6768 = add nsw i32 %6765, %6767
  %6769 = sext i32 %6768 to i64
  %6770 = getelementptr inbounds double, ptr %6764, i64 %6769
  %6771 = load double, ptr %6770, align 8, !tbaa !11
  %6772 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %6771, double %6763)
  %6773 = load ptr, ptr %7, align 8, !tbaa !9
  %6774 = load i32, ptr %12, align 4, !tbaa !5
  %6775 = load i32, ptr %8, align 4, !tbaa !5
  %6776 = mul nsw i32 58, %6775
  %6777 = add nsw i32 %6774, %6776
  %6778 = sext i32 %6777 to i64
  %6779 = getelementptr inbounds double, ptr %6773, i64 %6778
  %6780 = load double, ptr %6779, align 8, !tbaa !11
  %6781 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %6780, double %6772)
  %6782 = load ptr, ptr %7, align 8, !tbaa !9
  %6783 = load i32, ptr %12, align 4, !tbaa !5
  %6784 = load i32, ptr %8, align 4, !tbaa !5
  %6785 = mul nsw i32 59, %6784
  %6786 = add nsw i32 %6783, %6785
  %6787 = sext i32 %6786 to i64
  %6788 = getelementptr inbounds double, ptr %6782, i64 %6787
  %6789 = load double, ptr %6788, align 8, !tbaa !11
  %6790 = call double @llvm.fmuladd.f64(double 0x3CA3CC8A99AF5452, double %6789, double %6781)
  %6791 = load ptr, ptr %7, align 8, !tbaa !9
  %6792 = load i32, ptr %12, align 4, !tbaa !5
  %6793 = load i32, ptr %8, align 4, !tbaa !5
  %6794 = mul nsw i32 60, %6793
  %6795 = add nsw i32 %6792, %6794
  %6796 = sext i32 %6795 to i64
  %6797 = getelementptr inbounds double, ptr %6791, i64 %6796
  %6798 = load double, ptr %6797, align 8, !tbaa !11
  %6799 = call double @llvm.fmuladd.f64(double 0xBFD039FE04F71643, double %6798, double %6790)
  %6800 = load ptr, ptr %7, align 8, !tbaa !9
  %6801 = load i32, ptr %12, align 4, !tbaa !5
  %6802 = load i32, ptr %8, align 4, !tbaa !5
  %6803 = mul nsw i32 61, %6802
  %6804 = add nsw i32 %6801, %6803
  %6805 = sext i32 %6804 to i64
  %6806 = getelementptr inbounds double, ptr %6800, i64 %6805
  %6807 = load double, ptr %6806, align 8, !tbaa !11
  %6808 = call double @llvm.fmuladd.f64(double 0xBFE30958FBF81244, double %6807, double %6799)
  %6809 = load ptr, ptr %7, align 8, !tbaa !9
  %6810 = load i32, ptr %12, align 4, !tbaa !5
  %6811 = load i32, ptr %8, align 4, !tbaa !5
  %6812 = mul nsw i32 62, %6811
  %6813 = add nsw i32 %6810, %6812
  %6814 = sext i32 %6813 to i64
  %6815 = getelementptr inbounds double, ptr %6809, i64 %6814
  %6816 = load double, ptr %6815, align 8, !tbaa !11
  %6817 = call double @llvm.fmuladd.f64(double 0xBFE30958FBF81231, double %6816, double %6808)
  %6818 = load ptr, ptr %7, align 8, !tbaa !9
  %6819 = load i32, ptr %12, align 4, !tbaa !5
  %6820 = load i32, ptr %8, align 4, !tbaa !5
  %6821 = mul nsw i32 63, %6820
  %6822 = add nsw i32 %6819, %6821
  %6823 = sext i32 %6822 to i64
  %6824 = getelementptr inbounds double, ptr %6818, i64 %6823
  %6825 = load double, ptr %6824, align 8, !tbaa !11
  %6826 = call double @llvm.fmuladd.f64(double 0xBFD039FE04F71638, double %6825, double %6817)
  %6827 = load ptr, ptr %7, align 8, !tbaa !9
  %6828 = load i32, ptr %12, align 4, !tbaa !5
  %6829 = load i32, ptr %8, align 4, !tbaa !5
  %6830 = mul nsw i32 64, %6829
  %6831 = add nsw i32 %6828, %6830
  %6832 = sext i32 %6831 to i64
  %6833 = getelementptr inbounds double, ptr %6827, i64 %6832
  %6834 = load double, ptr %6833, align 8, !tbaa !11
  %6835 = call double @llvm.fmuladd.f64(double 0x3C93F9CBD67C52CA, double %6834, double %6826)
  %6836 = load ptr, ptr %7, align 8, !tbaa !9
  %6837 = load i32, ptr %12, align 4, !tbaa !5
  %6838 = load i32, ptr %8, align 4, !tbaa !5
  %6839 = mul nsw i32 65, %6838
  %6840 = add nsw i32 %6837, %6839
  %6841 = sext i32 %6840 to i64
  %6842 = getelementptr inbounds double, ptr %6836, i64 %6841
  %6843 = load double, ptr %6842, align 8, !tbaa !11
  %6844 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %6843, double %6835)
  %6845 = load ptr, ptr %7, align 8, !tbaa !9
  %6846 = load i32, ptr %12, align 4, !tbaa !5
  %6847 = load i32, ptr %8, align 4, !tbaa !5
  %6848 = mul nsw i32 66, %6847
  %6849 = add nsw i32 %6846, %6848
  %6850 = sext i32 %6849 to i64
  %6851 = getelementptr inbounds double, ptr %6845, i64 %6850
  %6852 = load double, ptr %6851, align 8, !tbaa !11
  %6853 = call double @llvm.fmuladd.f64(double 0xBC8F1CD9CCEEF238, double %6852, double %6844)
  %6854 = load ptr, ptr %7, align 8, !tbaa !9
  %6855 = load i32, ptr %12, align 4, !tbaa !5
  %6856 = load i32, ptr %8, align 4, !tbaa !5
  %6857 = mul nsw i32 67, %6856
  %6858 = add nsw i32 %6855, %6857
  %6859 = sext i32 %6858 to i64
  %6860 = getelementptr inbounds double, ptr %6854, i64 %6859
  %6861 = load double, ptr %6860, align 8, !tbaa !11
  %6862 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %6861, double %6853)
  store double %6862, ptr %11, align 8, !tbaa !11
  %6863 = load double, ptr %11, align 8, !tbaa !11
  %6864 = load ptr, ptr %9, align 8, !tbaa !9
  %6865 = load i32, ptr %12, align 4, !tbaa !5
  %6866 = load i32, ptr %10, align 4, !tbaa !5
  %6867 = mul nsw i32 23, %6866
  %6868 = add nsw i32 %6865, %6867
  %6869 = sext i32 %6868 to i64
  %6870 = getelementptr inbounds double, ptr %6864, i64 %6869
  store double %6863, ptr %6870, align 8, !tbaa !11
  %6871 = load ptr, ptr %7, align 8, !tbaa !9
  %6872 = load i32, ptr %12, align 4, !tbaa !5
  %6873 = load i32, ptr %8, align 4, !tbaa !5
  %6874 = mul nsw i32 36, %6873
  %6875 = add nsw i32 %6872, %6874
  %6876 = sext i32 %6875 to i64
  %6877 = getelementptr inbounds double, ptr %6871, i64 %6876
  %6878 = load double, ptr %6877, align 8, !tbaa !11
  %6879 = load ptr, ptr %7, align 8, !tbaa !9
  %6880 = load i32, ptr %12, align 4, !tbaa !5
  %6881 = load i32, ptr %8, align 4, !tbaa !5
  %6882 = mul nsw i32 37, %6881
  %6883 = add nsw i32 %6880, %6882
  %6884 = sext i32 %6883 to i64
  %6885 = getelementptr inbounds double, ptr %6879, i64 %6884
  %6886 = load double, ptr %6885, align 8, !tbaa !11
  %6887 = fmul double 0x3C91000000000000, %6886
  %6888 = call double @llvm.fmuladd.f64(double 0x3C96800000000000, double %6878, double %6887)
  %6889 = load ptr, ptr %7, align 8, !tbaa !9
  %6890 = load i32, ptr %12, align 4, !tbaa !5
  %6891 = load i32, ptr %8, align 4, !tbaa !5
  %6892 = mul nsw i32 38, %6891
  %6893 = add nsw i32 %6890, %6892
  %6894 = sext i32 %6893 to i64
  %6895 = getelementptr inbounds double, ptr %6889, i64 %6894
  %6896 = load double, ptr %6895, align 8, !tbaa !11
  %6897 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %6896, double %6888)
  %6898 = load ptr, ptr %7, align 8, !tbaa !9
  %6899 = load i32, ptr %12, align 4, !tbaa !5
  %6900 = load i32, ptr %8, align 4, !tbaa !5
  %6901 = mul nsw i32 39, %6900
  %6902 = add nsw i32 %6899, %6901
  %6903 = sext i32 %6902 to i64
  %6904 = getelementptr inbounds double, ptr %6898, i64 %6903
  %6905 = load double, ptr %6904, align 8, !tbaa !11
  %6906 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %6905, double %6897)
  %6907 = load ptr, ptr %7, align 8, !tbaa !9
  %6908 = load i32, ptr %12, align 4, !tbaa !5
  %6909 = load i32, ptr %8, align 4, !tbaa !5
  %6910 = mul nsw i32 40, %6909
  %6911 = add nsw i32 %6908, %6910
  %6912 = sext i32 %6911 to i64
  %6913 = getelementptr inbounds double, ptr %6907, i64 %6912
  %6914 = load double, ptr %6913, align 8, !tbaa !11
  %6915 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %6914, double %6906)
  %6916 = load ptr, ptr %7, align 8, !tbaa !9
  %6917 = load i32, ptr %12, align 4, !tbaa !5
  %6918 = load i32, ptr %8, align 4, !tbaa !5
  %6919 = mul nsw i32 42, %6918
  %6920 = add nsw i32 %6917, %6919
  %6921 = sext i32 %6920 to i64
  %6922 = getelementptr inbounds double, ptr %6916, i64 %6921
  %6923 = load double, ptr %6922, align 8, !tbaa !11
  %6924 = call double @llvm.fmuladd.f64(double 0x3CB5FFFFFFFFFFFF, double %6923, double %6915)
  %6925 = load ptr, ptr %7, align 8, !tbaa !9
  %6926 = load i32, ptr %12, align 4, !tbaa !5
  %6927 = load i32, ptr %8, align 4, !tbaa !5
  %6928 = mul nsw i32 43, %6927
  %6929 = add nsw i32 %6926, %6928
  %6930 = sext i32 %6929 to i64
  %6931 = getelementptr inbounds double, ptr %6925, i64 %6930
  %6932 = load double, ptr %6931, align 8, !tbaa !11
  %6933 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %6932, double %6924)
  %6934 = load ptr, ptr %7, align 8, !tbaa !9
  %6935 = load i32, ptr %12, align 4, !tbaa !5
  %6936 = load i32, ptr %8, align 4, !tbaa !5
  %6937 = mul nsw i32 44, %6936
  %6938 = add nsw i32 %6935, %6937
  %6939 = sext i32 %6938 to i64
  %6940 = getelementptr inbounds double, ptr %6934, i64 %6939
  %6941 = load double, ptr %6940, align 8, !tbaa !11
  %6942 = call double @llvm.fmuladd.f64(double 0x3F980EB0AE1D48EC, double %6941, double %6933)
  %6943 = load ptr, ptr %7, align 8, !tbaa !9
  %6944 = load i32, ptr %12, align 4, !tbaa !5
  %6945 = load i32, ptr %8, align 4, !tbaa !5
  %6946 = mul nsw i32 45, %6945
  %6947 = add nsw i32 %6944, %6946
  %6948 = sext i32 %6947 to i64
  %6949 = getelementptr inbounds double, ptr %6943, i64 %6948
  %6950 = load double, ptr %6949, align 8, !tbaa !11
  %6951 = call double @llvm.fmuladd.f64(double 0xBFD4C0B9406BCBDC, double %6950, double %6942)
  %6952 = load ptr, ptr %7, align 8, !tbaa !9
  %6953 = load i32, ptr %12, align 4, !tbaa !5
  %6954 = load i32, ptr %8, align 4, !tbaa !5
  %6955 = mul nsw i32 46, %6954
  %6956 = add nsw i32 %6953, %6955
  %6957 = sext i32 %6956 to i64
  %6958 = getelementptr inbounds double, ptr %6952, i64 %6957
  %6959 = load double, ptr %6958, align 8, !tbaa !11
  %6960 = call double @llvm.fmuladd.f64(double 0xBFEBF462FB348EF8, double %6959, double %6951)
  %6961 = load ptr, ptr %7, align 8, !tbaa !9
  %6962 = load i32, ptr %12, align 4, !tbaa !5
  %6963 = load i32, ptr %8, align 4, !tbaa !5
  %6964 = mul nsw i32 47, %6963
  %6965 = add nsw i32 %6962, %6964
  %6966 = sext i32 %6965 to i64
  %6967 = getelementptr inbounds double, ptr %6961, i64 %6966
  %6968 = load double, ptr %6967, align 8, !tbaa !11
  %6969 = call double @llvm.fmuladd.f64(double 0xBFE002F9665DF3DA, double %6968, double %6960)
  %6970 = load ptr, ptr %7, align 8, !tbaa !9
  %6971 = load i32, ptr %12, align 4, !tbaa !5
  %6972 = load i32, ptr %8, align 4, !tbaa !5
  %6973 = mul nsw i32 48, %6972
  %6974 = add nsw i32 %6971, %6973
  %6975 = sext i32 %6974 to i64
  %6976 = getelementptr inbounds double, ptr %6970, i64 %6975
  %6977 = load double, ptr %6976, align 8, !tbaa !11
  %6978 = call double @llvm.fmuladd.f64(double 0xBC85000000000000, double %6977, double %6969)
  %6979 = load ptr, ptr %7, align 8, !tbaa !9
  %6980 = load i32, ptr %12, align 4, !tbaa !5
  %6981 = load i32, ptr %8, align 4, !tbaa !5
  %6982 = mul nsw i32 49, %6981
  %6983 = add nsw i32 %6980, %6982
  %6984 = sext i32 %6983 to i64
  %6985 = getelementptr inbounds double, ptr %6979, i64 %6984
  %6986 = load double, ptr %6985, align 8, !tbaa !11
  %6987 = call double @llvm.fmuladd.f64(double 0xBC82000000000000, double %6986, double %6978)
  %6988 = load ptr, ptr %7, align 8, !tbaa !9
  %6989 = load i32, ptr %12, align 4, !tbaa !5
  %6990 = load i32, ptr %8, align 4, !tbaa !5
  %6991 = mul nsw i32 50, %6990
  %6992 = add nsw i32 %6989, %6991
  %6993 = sext i32 %6992 to i64
  %6994 = getelementptr inbounds double, ptr %6988, i64 %6993
  %6995 = load double, ptr %6994, align 8, !tbaa !11
  %6996 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %6995, double %6987)
  %6997 = load ptr, ptr %7, align 8, !tbaa !9
  %6998 = load i32, ptr %12, align 4, !tbaa !5
  %6999 = load i32, ptr %8, align 4, !tbaa !5
  %7000 = mul nsw i32 52, %6999
  %7001 = add nsw i32 %6998, %7000
  %7002 = sext i32 %7001 to i64
  %7003 = getelementptr inbounds double, ptr %6997, i64 %7002
  %7004 = load double, ptr %7003, align 8, !tbaa !11
  %7005 = call double @llvm.fmuladd.f64(double 0xBC8A29B726831D24, double %7004, double %6996)
  %7006 = load ptr, ptr %7, align 8, !tbaa !9
  %7007 = load i32, ptr %12, align 4, !tbaa !5
  %7008 = load i32, ptr %8, align 4, !tbaa !5
  %7009 = mul nsw i32 53, %7008
  %7010 = add nsw i32 %7007, %7009
  %7011 = sext i32 %7010 to i64
  %7012 = getelementptr inbounds double, ptr %7006, i64 %7011
  %7013 = load double, ptr %7012, align 8, !tbaa !11
  %7014 = call double @llvm.fmuladd.f64(double 0x3C73CC8A99AF5453, double %7013, double %7005)
  %7015 = load ptr, ptr %7, align 8, !tbaa !9
  %7016 = load i32, ptr %12, align 4, !tbaa !5
  %7017 = load i32, ptr %8, align 4, !tbaa !5
  %7018 = mul nsw i32 54, %7017
  %7019 = add nsw i32 %7016, %7018
  %7020 = sext i32 %7019 to i64
  %7021 = getelementptr inbounds double, ptr %7015, i64 %7020
  %7022 = load double, ptr %7021, align 8, !tbaa !11
  %7023 = call double @llvm.fmuladd.f64(double 0xBC56A09E667F3BCC, double %7022, double %7014)
  %7024 = load ptr, ptr %7, align 8, !tbaa !9
  %7025 = load i32, ptr %12, align 4, !tbaa !5
  %7026 = load i32, ptr %8, align 4, !tbaa !5
  %7027 = mul nsw i32 55, %7026
  %7028 = add nsw i32 %7025, %7027
  %7029 = sext i32 %7028 to i64
  %7030 = getelementptr inbounds double, ptr %7024, i64 %7029
  %7031 = load double, ptr %7030, align 8, !tbaa !11
  %7032 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %7031, double %7023)
  %7033 = load ptr, ptr %7, align 8, !tbaa !9
  %7034 = load i32, ptr %12, align 4, !tbaa !5
  %7035 = load i32, ptr %8, align 4, !tbaa !5
  %7036 = mul nsw i32 56, %7035
  %7037 = add nsw i32 %7034, %7036
  %7038 = sext i32 %7037 to i64
  %7039 = getelementptr inbounds double, ptr %7033, i64 %7038
  %7040 = load double, ptr %7039, align 8, !tbaa !11
  %7041 = call double @llvm.fmuladd.f64(double 0xBC93CC8A99AF5452, double %7040, double %7032)
  %7042 = load ptr, ptr %7, align 8, !tbaa !9
  %7043 = load i32, ptr %12, align 4, !tbaa !5
  %7044 = load i32, ptr %8, align 4, !tbaa !5
  %7045 = mul nsw i32 57, %7044
  %7046 = add nsw i32 %7043, %7045
  %7047 = sext i32 %7046 to i64
  %7048 = getelementptr inbounds double, ptr %7042, i64 %7047
  %7049 = load double, ptr %7048, align 8, !tbaa !11
  %7050 = call double @llvm.fmuladd.f64(double 0xBCA6A09E667F3BCC, double %7049, double %7041)
  %7051 = load ptr, ptr %7, align 8, !tbaa !9
  %7052 = load i32, ptr %12, align 4, !tbaa !5
  %7053 = load i32, ptr %8, align 4, !tbaa !5
  %7054 = mul nsw i32 58, %7053
  %7055 = add nsw i32 %7052, %7054
  %7056 = sext i32 %7055 to i64
  %7057 = getelementptr inbounds double, ptr %7051, i64 %7056
  %7058 = load double, ptr %7057, align 8, !tbaa !11
  %7059 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %7058, double %7050)
  %7060 = load ptr, ptr %7, align 8, !tbaa !9
  %7061 = load i32, ptr %12, align 4, !tbaa !5
  %7062 = load i32, ptr %8, align 4, !tbaa !5
  %7063 = mul nsw i32 59, %7062
  %7064 = add nsw i32 %7061, %7063
  %7065 = sext i32 %7064 to i64
  %7066 = getelementptr inbounds double, ptr %7060, i64 %7065
  %7067 = load double, ptr %7066, align 8, !tbaa !11
  %7068 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %7067, double %7059)
  %7069 = load ptr, ptr %7, align 8, !tbaa !9
  %7070 = load i32, ptr %12, align 4, !tbaa !5
  %7071 = load i32, ptr %8, align 4, !tbaa !5
  %7072 = mul nsw i32 60, %7071
  %7073 = add nsw i32 %7070, %7072
  %7074 = sext i32 %7073 to i64
  %7075 = getelementptr inbounds double, ptr %7069, i64 %7074
  %7076 = load double, ptr %7075, align 8, !tbaa !11
  %7077 = call double @llvm.fmuladd.f64(double 0x3FD08C54FF101A10, double %7076, double %7068)
  %7078 = load ptr, ptr %7, align 8, !tbaa !9
  %7079 = load i32, ptr %12, align 4, !tbaa !5
  %7080 = load i32, ptr %8, align 4, !tbaa !5
  %7081 = mul nsw i32 61, %7080
  %7082 = add nsw i32 %7079, %7081
  %7083 = sext i32 %7082 to i64
  %7084 = getelementptr inbounds double, ptr %7078, i64 %7083
  %7085 = load double, ptr %7084, align 8, !tbaa !11
  %7086 = call double @llvm.fmuladd.f64(double 0x4007001BD846D0B2, double %7085, double %7077)
  %7087 = load ptr, ptr %7, align 8, !tbaa !9
  %7088 = load i32, ptr %12, align 4, !tbaa !5
  %7089 = load i32, ptr %8, align 4, !tbaa !5
  %7090 = mul nsw i32 62, %7089
  %7091 = add nsw i32 %7088, %7090
  %7092 = sext i32 %7091 to i64
  %7093 = getelementptr inbounds double, ptr %7087, i64 %7092
  %7094 = load double, ptr %7093, align 8, !tbaa !11
  %7095 = call double @llvm.fmuladd.f64(double 0x3FD0C7817D9C3137, double %7094, double %7086)
  %7096 = load ptr, ptr %7, align 8, !tbaa !9
  %7097 = load i32, ptr %12, align 4, !tbaa !5
  %7098 = load i32, ptr %8, align 4, !tbaa !5
  %7099 = mul nsw i32 63, %7098
  %7100 = add nsw i32 %7097, %7099
  %7101 = sext i32 %7100 to i64
  %7102 = getelementptr inbounds double, ptr %7096, i64 %7101
  %7103 = load double, ptr %7102, align 8, !tbaa !11
  %7104 = call double @llvm.fmuladd.f64(double 0xBFB8DF388696F54E, double %7103, double %7095)
  %7105 = load ptr, ptr %7, align 8, !tbaa !9
  %7106 = load i32, ptr %12, align 4, !tbaa !5
  %7107 = load i32, ptr %8, align 4, !tbaa !5
  %7108 = mul nsw i32 64, %7107
  %7109 = add nsw i32 %7106, %7108
  %7110 = sext i32 %7109 to i64
  %7111 = getelementptr inbounds double, ptr %7105, i64 %7110
  %7112 = load double, ptr %7111, align 8, !tbaa !11
  %7113 = call double @llvm.fmuladd.f64(double 0x3C7DB2CFE686FE7B, double %7112, double %7104)
  %7114 = load ptr, ptr %7, align 8, !tbaa !9
  %7115 = load i32, ptr %12, align 4, !tbaa !5
  %7116 = load i32, ptr %8, align 4, !tbaa !5
  %7117 = mul nsw i32 65, %7116
  %7118 = add nsw i32 %7115, %7117
  %7119 = sext i32 %7118 to i64
  %7120 = getelementptr inbounds double, ptr %7114, i64 %7119
  %7121 = load double, ptr %7120, align 8, !tbaa !11
  %7122 = call double @llvm.fmuladd.f64(double 0x3C91AD7BC01366B7, double %7121, double %7113)
  %7123 = load ptr, ptr %7, align 8, !tbaa !9
  %7124 = load i32, ptr %12, align 4, !tbaa !5
  %7125 = load i32, ptr %8, align 4, !tbaa !5
  %7126 = mul nsw i32 66, %7125
  %7127 = add nsw i32 %7124, %7126
  %7128 = sext i32 %7127 to i64
  %7129 = getelementptr inbounds double, ptr %7123, i64 %7128
  %7130 = load double, ptr %7129, align 8, !tbaa !11
  %7131 = call double @llvm.fmuladd.f64(double 0x3C56A09E667F3BCC, double %7130, double %7122)
  %7132 = load ptr, ptr %7, align 8, !tbaa !9
  %7133 = load i32, ptr %12, align 4, !tbaa !5
  %7134 = load i32, ptr %8, align 4, !tbaa !5
  %7135 = mul nsw i32 67, %7134
  %7136 = add nsw i32 %7133, %7135
  %7137 = sext i32 %7136 to i64
  %7138 = getelementptr inbounds double, ptr %7132, i64 %7137
  %7139 = load double, ptr %7138, align 8, !tbaa !11
  %7140 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %7139, double %7131)
  store double %7140, ptr %11, align 8, !tbaa !11
  %7141 = load double, ptr %11, align 8, !tbaa !11
  %7142 = load ptr, ptr %9, align 8, !tbaa !9
  %7143 = load i32, ptr %12, align 4, !tbaa !5
  %7144 = load i32, ptr %10, align 4, !tbaa !5
  %7145 = mul nsw i32 24, %7144
  %7146 = add nsw i32 %7143, %7145
  %7147 = sext i32 %7146 to i64
  %7148 = getelementptr inbounds double, ptr %7142, i64 %7147
  store double %7141, ptr %7148, align 8, !tbaa !11
  %7149 = load ptr, ptr %7, align 8, !tbaa !9
  %7150 = load i32, ptr %12, align 4, !tbaa !5
  %7151 = load i32, ptr %8, align 4, !tbaa !5
  %7152 = mul nsw i32 36, %7151
  %7153 = add nsw i32 %7150, %7152
  %7154 = sext i32 %7153 to i64
  %7155 = getelementptr inbounds double, ptr %7149, i64 %7154
  %7156 = load double, ptr %7155, align 8, !tbaa !11
  %7157 = load ptr, ptr %7, align 8, !tbaa !9
  %7158 = load i32, ptr %12, align 4, !tbaa !5
  %7159 = load i32, ptr %8, align 4, !tbaa !5
  %7160 = mul nsw i32 37, %7159
  %7161 = add nsw i32 %7158, %7160
  %7162 = sext i32 %7161 to i64
  %7163 = getelementptr inbounds double, ptr %7157, i64 %7162
  %7164 = load double, ptr %7163, align 8, !tbaa !11
  %7165 = fmul double 0xBCA3800000000002, %7164
  %7166 = call double @llvm.fmuladd.f64(double 0x3C89000000000000, double %7156, double %7165)
  %7167 = load ptr, ptr %7, align 8, !tbaa !9
  %7168 = load i32, ptr %12, align 4, !tbaa !5
  %7169 = load i32, ptr %8, align 4, !tbaa !5
  %7170 = mul nsw i32 38, %7169
  %7171 = add nsw i32 %7168, %7170
  %7172 = sext i32 %7171 to i64
  %7173 = getelementptr inbounds double, ptr %7167, i64 %7172
  %7174 = load double, ptr %7173, align 8, !tbaa !11
  %7175 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %7174, double %7166)
  %7176 = load ptr, ptr %7, align 8, !tbaa !9
  %7177 = load i32, ptr %12, align 4, !tbaa !5
  %7178 = load i32, ptr %8, align 4, !tbaa !5
  %7179 = mul nsw i32 39, %7178
  %7180 = add nsw i32 %7177, %7179
  %7181 = sext i32 %7180 to i64
  %7182 = getelementptr inbounds double, ptr %7176, i64 %7181
  %7183 = load double, ptr %7182, align 8, !tbaa !11
  %7184 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %7183, double %7175)
  %7185 = load ptr, ptr %7, align 8, !tbaa !9
  %7186 = load i32, ptr %12, align 4, !tbaa !5
  %7187 = load i32, ptr %8, align 4, !tbaa !5
  %7188 = mul nsw i32 40, %7187
  %7189 = add nsw i32 %7186, %7188
  %7190 = sext i32 %7189 to i64
  %7191 = getelementptr inbounds double, ptr %7185, i64 %7190
  %7192 = load double, ptr %7191, align 8, !tbaa !11
  %7193 = call double @llvm.fmuladd.f64(double 0x3CA5FFFFFFFFFFFF, double %7192, double %7184)
  %7194 = load ptr, ptr %7, align 8, !tbaa !9
  %7195 = load i32, ptr %12, align 4, !tbaa !5
  %7196 = load i32, ptr %8, align 4, !tbaa !5
  %7197 = mul nsw i32 41, %7196
  %7198 = add nsw i32 %7195, %7197
  %7199 = sext i32 %7198 to i64
  %7200 = getelementptr inbounds double, ptr %7194, i64 %7199
  %7201 = load double, ptr %7200, align 8, !tbaa !11
  %7202 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %7201, double %7193)
  %7203 = load ptr, ptr %7, align 8, !tbaa !9
  %7204 = load i32, ptr %12, align 4, !tbaa !5
  %7205 = load i32, ptr %8, align 4, !tbaa !5
  %7206 = mul nsw i32 42, %7205
  %7207 = add nsw i32 %7204, %7206
  %7208 = sext i32 %7207 to i64
  %7209 = getelementptr inbounds double, ptr %7203, i64 %7208
  %7210 = load double, ptr %7209, align 8, !tbaa !11
  %7211 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %7210, double %7202)
  %7212 = load ptr, ptr %7, align 8, !tbaa !9
  %7213 = load i32, ptr %12, align 4, !tbaa !5
  %7214 = load i32, ptr %8, align 4, !tbaa !5
  %7215 = mul nsw i32 43, %7214
  %7216 = add nsw i32 %7213, %7215
  %7217 = sext i32 %7216 to i64
  %7218 = getelementptr inbounds double, ptr %7212, i64 %7217
  %7219 = load double, ptr %7218, align 8, !tbaa !11
  %7220 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %7219, double %7211)
  %7221 = load ptr, ptr %7, align 8, !tbaa !9
  %7222 = load i32, ptr %12, align 4, !tbaa !5
  %7223 = load i32, ptr %8, align 4, !tbaa !5
  %7224 = mul nsw i32 44, %7223
  %7225 = add nsw i32 %7222, %7224
  %7226 = sext i32 %7225 to i64
  %7227 = getelementptr inbounds double, ptr %7221, i64 %7226
  %7228 = load double, ptr %7227, align 8, !tbaa !11
  %7229 = call double @llvm.fmuladd.f64(double 0xBFD7671404765126, double %7228, double %7220)
  %7230 = load ptr, ptr %7, align 8, !tbaa !9
  %7231 = load i32, ptr %12, align 4, !tbaa !5
  %7232 = load i32, ptr %8, align 4, !tbaa !5
  %7233 = mul nsw i32 45, %7232
  %7234 = add nsw i32 %7231, %7233
  %7235 = sext i32 %7234 to i64
  %7236 = getelementptr inbounds double, ptr %7230, i64 %7235
  %7237 = load double, ptr %7236, align 8, !tbaa !11
  %7238 = call double @llvm.fmuladd.f64(double 0xC01043858A1F5996, double %7237, double %7229)
  %7239 = load ptr, ptr %7, align 8, !tbaa !9
  %7240 = load i32, ptr %12, align 4, !tbaa !5
  %7241 = load i32, ptr %8, align 4, !tbaa !5
  %7242 = mul nsw i32 46, %7241
  %7243 = add nsw i32 %7240, %7242
  %7244 = sext i32 %7243 to i64
  %7245 = getelementptr inbounds double, ptr %7239, i64 %7244
  %7246 = load double, ptr %7245, align 8, !tbaa !11
  %7247 = call double @llvm.fmuladd.f64(double 0xBFD7BAC3393ADDBB, double %7246, double %7238)
  %7248 = load ptr, ptr %7, align 8, !tbaa !9
  %7249 = load i32, ptr %12, align 4, !tbaa !5
  %7250 = load i32, ptr %8, align 4, !tbaa !5
  %7251 = mul nsw i32 47, %7250
  %7252 = add nsw i32 %7249, %7251
  %7253 = sext i32 %7252 to i64
  %7254 = getelementptr inbounds double, ptr %7248, i64 %7253
  %7255 = load double, ptr %7254, align 8, !tbaa !11
  %7256 = call double @llvm.fmuladd.f64(double 0x3FC1964E14FA3C8D, double %7255, double %7247)
  %7257 = load ptr, ptr %7, align 8, !tbaa !9
  %7258 = load i32, ptr %12, align 4, !tbaa !5
  %7259 = load i32, ptr %8, align 4, !tbaa !5
  %7260 = mul nsw i32 48, %7259
  %7261 = add nsw i32 %7258, %7260
  %7262 = sext i32 %7261 to i64
  %7263 = getelementptr inbounds double, ptr %7257, i64 %7262
  %7264 = load double, ptr %7263, align 8, !tbaa !11
  %7265 = call double @llvm.fmuladd.f64(double 0x3C6C000000000000, double %7264, double %7256)
  %7266 = load ptr, ptr %7, align 8, !tbaa !9
  %7267 = load i32, ptr %12, align 4, !tbaa !5
  %7268 = load i32, ptr %8, align 4, !tbaa !5
  %7269 = mul nsw i32 49, %7268
  %7270 = add nsw i32 %7267, %7269
  %7271 = sext i32 %7270 to i64
  %7272 = getelementptr inbounds double, ptr %7266, i64 %7271
  %7273 = load double, ptr %7272, align 8, !tbaa !11
  %7274 = call double @llvm.fmuladd.f64(double 0xBCBE400000000000, double %7273, double %7265)
  %7275 = load ptr, ptr %7, align 8, !tbaa !9
  %7276 = load i32, ptr %12, align 4, !tbaa !5
  %7277 = load i32, ptr %8, align 4, !tbaa !5
  %7278 = mul nsw i32 50, %7277
  %7279 = add nsw i32 %7276, %7278
  %7280 = sext i32 %7279 to i64
  %7281 = getelementptr inbounds double, ptr %7275, i64 %7280
  %7282 = load double, ptr %7281, align 8, !tbaa !11
  %7283 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %7282, double %7274)
  %7284 = load ptr, ptr %7, align 8, !tbaa !9
  %7285 = load i32, ptr %12, align 4, !tbaa !5
  %7286 = load i32, ptr %8, align 4, !tbaa !5
  %7287 = mul nsw i32 51, %7286
  %7288 = add nsw i32 %7285, %7287
  %7289 = sext i32 %7288 to i64
  %7290 = getelementptr inbounds double, ptr %7284, i64 %7289
  %7291 = load double, ptr %7290, align 8, !tbaa !11
  %7292 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %7291, double %7283)
  %7293 = load ptr, ptr %7, align 8, !tbaa !9
  %7294 = load i32, ptr %12, align 4, !tbaa !5
  %7295 = load i32, ptr %8, align 4, !tbaa !5
  %7296 = mul nsw i32 52, %7295
  %7297 = add nsw i32 %7294, %7296
  %7298 = sext i32 %7297 to i64
  %7299 = getelementptr inbounds double, ptr %7293, i64 %7298
  %7300 = load double, ptr %7299, align 8, !tbaa !11
  %7301 = call double @llvm.fmuladd.f64(double 0xBC84818F8CE34E32, double %7300, double %7292)
  %7302 = load ptr, ptr %7, align 8, !tbaa !9
  %7303 = load i32, ptr %12, align 4, !tbaa !5
  %7304 = load i32, ptr %8, align 4, !tbaa !5
  %7305 = mul nsw i32 53, %7304
  %7306 = add nsw i32 %7303, %7305
  %7307 = sext i32 %7306 to i64
  %7308 = getelementptr inbounds double, ptr %7302, i64 %7307
  %7309 = load double, ptr %7308, align 8, !tbaa !11
  %7310 = call double @llvm.fmuladd.f64(double 0x3C73CC8A99AF5453, double %7309, double %7301)
  %7311 = load ptr, ptr %7, align 8, !tbaa !9
  %7312 = load i32, ptr %12, align 4, !tbaa !5
  %7313 = load i32, ptr %8, align 4, !tbaa !5
  %7314 = mul nsw i32 54, %7313
  %7315 = add nsw i32 %7312, %7314
  %7316 = sext i32 %7315 to i64
  %7317 = getelementptr inbounds double, ptr %7311, i64 %7316
  %7318 = load double, ptr %7317, align 8, !tbaa !11
  %7319 = call double @llvm.fmuladd.f64(double 0x3C83CC8A99AF5451, double %7318, double %7310)
  %7320 = load ptr, ptr %7, align 8, !tbaa !9
  %7321 = load i32, ptr %12, align 4, !tbaa !5
  %7322 = load i32, ptr %8, align 4, !tbaa !5
  %7323 = mul nsw i32 55, %7322
  %7324 = add nsw i32 %7321, %7323
  %7325 = sext i32 %7324 to i64
  %7326 = getelementptr inbounds double, ptr %7320, i64 %7325
  %7327 = load double, ptr %7326, align 8, !tbaa !11
  %7328 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %7327, double %7319)
  %7329 = load ptr, ptr %7, align 8, !tbaa !9
  %7330 = load i32, ptr %12, align 4, !tbaa !5
  %7331 = load i32, ptr %8, align 4, !tbaa !5
  %7332 = mul nsw i32 56, %7331
  %7333 = add nsw i32 %7330, %7332
  %7334 = sext i32 %7333 to i64
  %7335 = getelementptr inbounds double, ptr %7329, i64 %7334
  %7336 = load double, ptr %7335, align 8, !tbaa !11
  %7337 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %7336, double %7328)
  %7338 = load ptr, ptr %7, align 8, !tbaa !9
  %7339 = load i32, ptr %12, align 4, !tbaa !5
  %7340 = load i32, ptr %8, align 4, !tbaa !5
  %7341 = mul nsw i32 57, %7340
  %7342 = add nsw i32 %7339, %7341
  %7343 = sext i32 %7342 to i64
  %7344 = getelementptr inbounds double, ptr %7338, i64 %7343
  %7345 = load double, ptr %7344, align 8, !tbaa !11
  %7346 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %7345, double %7337)
  %7347 = load ptr, ptr %7, align 8, !tbaa !9
  %7348 = load i32, ptr %12, align 4, !tbaa !5
  %7349 = load i32, ptr %8, align 4, !tbaa !5
  %7350 = mul nsw i32 58, %7349
  %7351 = add nsw i32 %7348, %7350
  %7352 = sext i32 %7351 to i64
  %7353 = getelementptr inbounds double, ptr %7347, i64 %7352
  %7354 = load double, ptr %7353, align 8, !tbaa !11
  %7355 = call double @llvm.fmuladd.f64(double 0xBCA974B2334F2346, double %7354, double %7346)
  %7356 = load ptr, ptr %7, align 8, !tbaa !9
  %7357 = load i32, ptr %12, align 4, !tbaa !5
  %7358 = load i32, ptr %8, align 4, !tbaa !5
  %7359 = mul nsw i32 59, %7358
  %7360 = add nsw i32 %7357, %7359
  %7361 = sext i32 %7360 to i64
  %7362 = getelementptr inbounds double, ptr %7356, i64 %7361
  %7363 = load double, ptr %7362, align 8, !tbaa !11
  %7364 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %7363, double %7355)
  %7365 = load ptr, ptr %7, align 8, !tbaa !9
  %7366 = load i32, ptr %12, align 4, !tbaa !5
  %7367 = load i32, ptr %8, align 4, !tbaa !5
  %7368 = mul nsw i32 60, %7367
  %7369 = add nsw i32 %7366, %7368
  %7370 = sext i32 %7369 to i64
  %7371 = getelementptr inbounds double, ptr %7365, i64 %7370
  %7372 = load double, ptr %7371, align 8, !tbaa !11
  %7373 = call double @llvm.fmuladd.f64(double 0xBF9102DA00B18A68, double %7372, double %7364)
  %7374 = load ptr, ptr %7, align 8, !tbaa !9
  %7375 = load i32, ptr %12, align 4, !tbaa !5
  %7376 = load i32, ptr %8, align 4, !tbaa !5
  %7377 = mul nsw i32 61, %7376
  %7378 = add nsw i32 %7375, %7377
  %7379 = sext i32 %7378 to i64
  %7380 = getelementptr inbounds double, ptr %7374, i64 %7379
  %7381 = load double, ptr %7380, align 8, !tbaa !11
  %7382 = call double @llvm.fmuladd.f64(double 0x3FCD5953692F6EA6, double %7381, double %7373)
  %7383 = load ptr, ptr %7, align 8, !tbaa !9
  %7384 = load i32, ptr %12, align 4, !tbaa !5
  %7385 = load i32, ptr %8, align 4, !tbaa !5
  %7386 = mul nsw i32 62, %7385
  %7387 = add nsw i32 %7384, %7386
  %7388 = sext i32 %7387 to i64
  %7389 = getelementptr inbounds double, ptr %7383, i64 %7388
  %7390 = load double, ptr %7389, align 8, !tbaa !11
  %7391 = call double @llvm.fmuladd.f64(double 0x3FE3C4545BCF030C, double %7390, double %7382)
  %7392 = load ptr, ptr %7, align 8, !tbaa !9
  %7393 = load i32, ptr %12, align 4, !tbaa !5
  %7394 = load i32, ptr %8, align 4, !tbaa !5
  %7395 = mul nsw i32 63, %7394
  %7396 = add nsw i32 %7393, %7395
  %7397 = sext i32 %7396 to i64
  %7398 = getelementptr inbounds double, ptr %7392, i64 %7397
  %7399 = load double, ptr %7398, align 8, !tbaa !11
  %7400 = call double @llvm.fmuladd.f64(double 0x3FD6A4D32EB1F710, double %7399, double %7391)
  %7401 = load ptr, ptr %7, align 8, !tbaa !9
  %7402 = load i32, ptr %12, align 4, !tbaa !5
  %7403 = load i32, ptr %8, align 4, !tbaa !5
  %7404 = mul nsw i32 64, %7403
  %7405 = add nsw i32 %7402, %7404
  %7406 = sext i32 %7405 to i64
  %7407 = getelementptr inbounds double, ptr %7401, i64 %7406
  %7408 = load double, ptr %7407, align 8, !tbaa !11
  %7409 = call double @llvm.fmuladd.f64(double 0x3C726280B3476096, double %7408, double %7400)
  %7410 = load ptr, ptr %7, align 8, !tbaa !9
  %7411 = load i32, ptr %12, align 4, !tbaa !5
  %7412 = load i32, ptr %8, align 4, !tbaa !5
  %7413 = mul nsw i32 65, %7412
  %7414 = add nsw i32 %7411, %7413
  %7415 = sext i32 %7414 to i64
  %7416 = getelementptr inbounds double, ptr %7410, i64 %7415
  %7417 = load double, ptr %7416, align 8, !tbaa !11
  %7418 = call double @llvm.fmuladd.f64(double 0x3C46A09E667F3BCB, double %7417, double %7409)
  %7419 = load ptr, ptr %7, align 8, !tbaa !9
  %7420 = load i32, ptr %12, align 4, !tbaa !5
  %7421 = load i32, ptr %8, align 4, !tbaa !5
  %7422 = mul nsw i32 66, %7421
  %7423 = add nsw i32 %7420, %7422
  %7424 = sext i32 %7423 to i64
  %7425 = getelementptr inbounds double, ptr %7419, i64 %7424
  %7426 = load double, ptr %7425, align 8, !tbaa !11
  %7427 = call double @llvm.fmuladd.f64(double 0xBC9536948017480F, double %7426, double %7418)
  %7428 = load ptr, ptr %7, align 8, !tbaa !9
  %7429 = load i32, ptr %12, align 4, !tbaa !5
  %7430 = load i32, ptr %8, align 4, !tbaa !5
  %7431 = mul nsw i32 67, %7430
  %7432 = add nsw i32 %7429, %7431
  %7433 = sext i32 %7432 to i64
  %7434 = getelementptr inbounds double, ptr %7428, i64 %7433
  %7435 = load double, ptr %7434, align 8, !tbaa !11
  %7436 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %7435, double %7427)
  store double %7436, ptr %11, align 8, !tbaa !11
  %7437 = load double, ptr %11, align 8, !tbaa !11
  %7438 = load ptr, ptr %9, align 8, !tbaa !9
  %7439 = load i32, ptr %12, align 4, !tbaa !5
  %7440 = load i32, ptr %10, align 4, !tbaa !5
  %7441 = mul nsw i32 25, %7440
  %7442 = add nsw i32 %7439, %7441
  %7443 = sext i32 %7442 to i64
  %7444 = getelementptr inbounds double, ptr %7438, i64 %7443
  store double %7437, ptr %7444, align 8, !tbaa !11
  %7445 = load ptr, ptr %7, align 8, !tbaa !9
  %7446 = load i32, ptr %12, align 4, !tbaa !5
  %7447 = load i32, ptr %8, align 4, !tbaa !5
  %7448 = mul nsw i32 36, %7447
  %7449 = add nsw i32 %7446, %7448
  %7450 = sext i32 %7449 to i64
  %7451 = getelementptr inbounds double, ptr %7445, i64 %7450
  %7452 = load double, ptr %7451, align 8, !tbaa !11
  %7453 = load ptr, ptr %7, align 8, !tbaa !9
  %7454 = load i32, ptr %12, align 4, !tbaa !5
  %7455 = load i32, ptr %8, align 4, !tbaa !5
  %7456 = mul nsw i32 37, %7455
  %7457 = add nsw i32 %7454, %7456
  %7458 = sext i32 %7457 to i64
  %7459 = getelementptr inbounds double, ptr %7453, i64 %7458
  %7460 = load double, ptr %7459, align 8, !tbaa !11
  %7461 = fmul double 0xBC90000000000000, %7460
  %7462 = call double @llvm.fmuladd.f64(double 0x3C9A600000000000, double %7452, double %7461)
  %7463 = load ptr, ptr %7, align 8, !tbaa !9
  %7464 = load i32, ptr %12, align 4, !tbaa !5
  %7465 = load i32, ptr %8, align 4, !tbaa !5
  %7466 = mul nsw i32 38, %7465
  %7467 = add nsw i32 %7464, %7466
  %7468 = sext i32 %7467 to i64
  %7469 = getelementptr inbounds double, ptr %7463, i64 %7468
  %7470 = load double, ptr %7469, align 8, !tbaa !11
  %7471 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %7470, double %7462)
  %7472 = load ptr, ptr %7, align 8, !tbaa !9
  %7473 = load i32, ptr %12, align 4, !tbaa !5
  %7474 = load i32, ptr %8, align 4, !tbaa !5
  %7475 = mul nsw i32 39, %7474
  %7476 = add nsw i32 %7473, %7475
  %7477 = sext i32 %7476 to i64
  %7478 = getelementptr inbounds double, ptr %7472, i64 %7477
  %7479 = load double, ptr %7478, align 8, !tbaa !11
  %7480 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %7479, double %7471)
  %7481 = load ptr, ptr %7, align 8, !tbaa !9
  %7482 = load i32, ptr %12, align 4, !tbaa !5
  %7483 = load i32, ptr %8, align 4, !tbaa !5
  %7484 = mul nsw i32 40, %7483
  %7485 = add nsw i32 %7482, %7484
  %7486 = sext i32 %7485 to i64
  %7487 = getelementptr inbounds double, ptr %7481, i64 %7486
  %7488 = load double, ptr %7487, align 8, !tbaa !11
  %7489 = call double @llvm.fmuladd.f64(double 0x3C74FFFFFFFFFFFF, double %7488, double %7480)
  %7490 = load ptr, ptr %7, align 8, !tbaa !9
  %7491 = load i32, ptr %12, align 4, !tbaa !5
  %7492 = load i32, ptr %8, align 4, !tbaa !5
  %7493 = mul nsw i32 41, %7492
  %7494 = add nsw i32 %7491, %7493
  %7495 = sext i32 %7494 to i64
  %7496 = getelementptr inbounds double, ptr %7490, i64 %7495
  %7497 = load double, ptr %7496, align 8, !tbaa !11
  %7498 = call double @llvm.fmuladd.f64(double 0xBCA4800000000001, double %7497, double %7489)
  %7499 = load ptr, ptr %7, align 8, !tbaa !9
  %7500 = load i32, ptr %12, align 4, !tbaa !5
  %7501 = load i32, ptr %8, align 4, !tbaa !5
  %7502 = mul nsw i32 42, %7501
  %7503 = add nsw i32 %7500, %7502
  %7504 = sext i32 %7503 to i64
  %7505 = getelementptr inbounds double, ptr %7499, i64 %7504
  %7506 = load double, ptr %7505, align 8, !tbaa !11
  %7507 = call double @llvm.fmuladd.f64(double 0x3CA9FFFFFFFFFFFE, double %7506, double %7498)
  %7508 = load ptr, ptr %7, align 8, !tbaa !9
  %7509 = load i32, ptr %12, align 4, !tbaa !5
  %7510 = load i32, ptr %8, align 4, !tbaa !5
  %7511 = mul nsw i32 43, %7510
  %7512 = add nsw i32 %7509, %7511
  %7513 = sext i32 %7512 to i64
  %7514 = getelementptr inbounds double, ptr %7508, i64 %7513
  %7515 = load double, ptr %7514, align 8, !tbaa !11
  %7516 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %7515, double %7507)
  %7517 = load ptr, ptr %7, align 8, !tbaa !9
  %7518 = load i32, ptr %12, align 4, !tbaa !5
  %7519 = load i32, ptr %8, align 4, !tbaa !5
  %7520 = mul nsw i32 44, %7519
  %7521 = add nsw i32 %7518, %7520
  %7522 = sext i32 %7521 to i64
  %7523 = getelementptr inbounds double, ptr %7517, i64 %7522
  %7524 = load double, ptr %7523, align 8, !tbaa !11
  %7525 = call double @llvm.fmuladd.f64(double 0x3FF043C98657E812, double %7524, double %7516)
  %7526 = load ptr, ptr %7, align 8, !tbaa !9
  %7527 = load i32, ptr %12, align 4, !tbaa !5
  %7528 = load i32, ptr %8, align 4, !tbaa !5
  %7529 = mul nsw i32 45, %7528
  %7530 = add nsw i32 %7527, %7529
  %7531 = sext i32 %7530 to i64
  %7532 = getelementptr inbounds double, ptr %7526, i64 %7531
  %7533 = load double, ptr %7532, align 8, !tbaa !11
  %7534 = call double @llvm.fmuladd.f64(double 0x3FEFAD7976B5DE1F, double %7533, double %7525)
  %7535 = load ptr, ptr %7, align 8, !tbaa !9
  %7536 = load i32, ptr %12, align 4, !tbaa !5
  %7537 = load i32, ptr %8, align 4, !tbaa !5
  %7538 = mul nsw i32 46, %7537
  %7539 = add nsw i32 %7536, %7538
  %7540 = sext i32 %7539 to i64
  %7541 = getelementptr inbounds double, ptr %7535, i64 %7540
  %7542 = load double, ptr %7541, align 8, !tbaa !11
  %7543 = call double @llvm.fmuladd.f64(double 0xBFB4C23AD63BEF8D, double %7542, double %7534)
  %7544 = load ptr, ptr %7, align 8, !tbaa !9
  %7545 = load i32, ptr %12, align 4, !tbaa !5
  %7546 = load i32, ptr %8, align 4, !tbaa !5
  %7547 = mul nsw i32 47, %7546
  %7548 = add nsw i32 %7545, %7547
  %7549 = sext i32 %7548 to i64
  %7550 = getelementptr inbounds double, ptr %7544, i64 %7549
  %7551 = load double, ptr %7550, align 8, !tbaa !11
  %7552 = call double @llvm.fmuladd.f64(double 0xBFAC37F3CCE9FD36, double %7551, double %7543)
  %7553 = load ptr, ptr %7, align 8, !tbaa !9
  %7554 = load i32, ptr %12, align 4, !tbaa !5
  %7555 = load i32, ptr %8, align 4, !tbaa !5
  %7556 = mul nsw i32 48, %7555
  %7557 = add nsw i32 %7554, %7556
  %7558 = sext i32 %7557 to i64
  %7559 = getelementptr inbounds double, ptr %7553, i64 %7558
  %7560 = load double, ptr %7559, align 8, !tbaa !11
  %7561 = call double @llvm.fmuladd.f64(double 0x3C76800000000000, double %7560, double %7552)
  %7562 = load ptr, ptr %7, align 8, !tbaa !9
  %7563 = load i32, ptr %12, align 4, !tbaa !5
  %7564 = load i32, ptr %8, align 4, !tbaa !5
  %7565 = mul nsw i32 49, %7564
  %7566 = add nsw i32 %7563, %7565
  %7567 = sext i32 %7566 to i64
  %7568 = getelementptr inbounds double, ptr %7562, i64 %7567
  %7569 = load double, ptr %7568, align 8, !tbaa !11
  %7570 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %7569, double %7561)
  %7571 = load ptr, ptr %7, align 8, !tbaa !9
  %7572 = load i32, ptr %12, align 4, !tbaa !5
  %7573 = load i32, ptr %8, align 4, !tbaa !5
  %7574 = mul nsw i32 50, %7573
  %7575 = add nsw i32 %7572, %7574
  %7576 = sext i32 %7575 to i64
  %7577 = getelementptr inbounds double, ptr %7571, i64 %7576
  %7578 = load double, ptr %7577, align 8, !tbaa !11
  %7579 = call double @llvm.fmuladd.f64(double 0x3C9A000000000000, double %7578, double %7570)
  %7580 = load ptr, ptr %7, align 8, !tbaa !9
  %7581 = load i32, ptr %12, align 4, !tbaa !5
  %7582 = load i32, ptr %8, align 4, !tbaa !5
  %7583 = mul nsw i32 51, %7582
  %7584 = add nsw i32 %7581, %7583
  %7585 = sext i32 %7584 to i64
  %7586 = getelementptr inbounds double, ptr %7580, i64 %7585
  %7587 = load double, ptr %7586, align 8, !tbaa !11
  %7588 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %7587, double %7579)
  %7589 = load ptr, ptr %7, align 8, !tbaa !9
  %7590 = load i32, ptr %12, align 4, !tbaa !5
  %7591 = load i32, ptr %8, align 4, !tbaa !5
  %7592 = mul nsw i32 52, %7591
  %7593 = add nsw i32 %7590, %7592
  %7594 = sext i32 %7593 to i64
  %7595 = getelementptr inbounds double, ptr %7589, i64 %7594
  %7596 = load double, ptr %7595, align 8, !tbaa !11
  %7597 = call double @llvm.fmuladd.f64(double 0x3C759116F9B144FE, double %7596, double %7588)
  %7598 = load ptr, ptr %7, align 8, !tbaa !9
  %7599 = load i32, ptr %12, align 4, !tbaa !5
  %7600 = load i32, ptr %8, align 4, !tbaa !5
  %7601 = mul nsw i32 53, %7600
  %7602 = add nsw i32 %7599, %7601
  %7603 = sext i32 %7602 to i64
  %7604 = getelementptr inbounds double, ptr %7598, i64 %7603
  %7605 = load double, ptr %7604, align 8, !tbaa !11
  %7606 = call double @llvm.fmuladd.f64(double 0x3C70F876CCDF6CD9, double %7605, double %7597)
  %7607 = load ptr, ptr %7, align 8, !tbaa !9
  %7608 = load i32, ptr %12, align 4, !tbaa !5
  %7609 = load i32, ptr %8, align 4, !tbaa !5
  %7610 = mul nsw i32 54, %7609
  %7611 = add nsw i32 %7608, %7610
  %7612 = sext i32 %7611 to i64
  %7613 = getelementptr inbounds double, ptr %7607, i64 %7612
  %7614 = load double, ptr %7613, align 8, !tbaa !11
  %7615 = call double @llvm.fmuladd.f64(double 0xBC73CC8A99AF5453, double %7614, double %7606)
  %7616 = load ptr, ptr %7, align 8, !tbaa !9
  %7617 = load i32, ptr %12, align 4, !tbaa !5
  %7618 = load i32, ptr %8, align 4, !tbaa !5
  %7619 = mul nsw i32 55, %7618
  %7620 = add nsw i32 %7617, %7619
  %7621 = sext i32 %7620 to i64
  %7622 = getelementptr inbounds double, ptr %7616, i64 %7621
  %7623 = load double, ptr %7622, align 8, !tbaa !11
  %7624 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %7623, double %7615)
  %7625 = load ptr, ptr %7, align 8, !tbaa !9
  %7626 = load i32, ptr %12, align 4, !tbaa !5
  %7627 = load i32, ptr %8, align 4, !tbaa !5
  %7628 = mul nsw i32 56, %7627
  %7629 = add nsw i32 %7626, %7628
  %7630 = sext i32 %7629 to i64
  %7631 = getelementptr inbounds double, ptr %7625, i64 %7630
  %7632 = load double, ptr %7631, align 8, !tbaa !11
  %7633 = call double @llvm.fmuladd.f64(double 0xBCA16999E4DFE905, double %7632, double %7624)
  %7634 = load ptr, ptr %7, align 8, !tbaa !9
  %7635 = load i32, ptr %12, align 4, !tbaa !5
  %7636 = load i32, ptr %8, align 4, !tbaa !5
  %7637 = mul nsw i32 57, %7636
  %7638 = add nsw i32 %7635, %7637
  %7639 = sext i32 %7638 to i64
  %7640 = getelementptr inbounds double, ptr %7634, i64 %7639
  %7641 = load double, ptr %7640, align 8, !tbaa !11
  %7642 = call double @llvm.fmuladd.f64(double 0xBCA91A2FB9B52657, double %7641, double %7633)
  %7643 = load ptr, ptr %7, align 8, !tbaa !9
  %7644 = load i32, ptr %12, align 4, !tbaa !5
  %7645 = load i32, ptr %8, align 4, !tbaa !5
  %7646 = mul nsw i32 58, %7645
  %7647 = add nsw i32 %7644, %7646
  %7648 = sext i32 %7647 to i64
  %7649 = getelementptr inbounds double, ptr %7643, i64 %7648
  %7650 = load double, ptr %7649, align 8, !tbaa !11
  %7651 = call double @llvm.fmuladd.f64(double 0xBC9974B2334F2346, double %7650, double %7642)
  %7652 = load ptr, ptr %7, align 8, !tbaa !9
  %7653 = load i32, ptr %12, align 4, !tbaa !5
  %7654 = load i32, ptr %8, align 4, !tbaa !5
  %7655 = mul nsw i32 59, %7654
  %7656 = add nsw i32 %7653, %7655
  %7657 = sext i32 %7656 to i64
  %7658 = getelementptr inbounds double, ptr %7652, i64 %7657
  %7659 = load double, ptr %7658, align 8, !tbaa !11
  %7660 = call double @llvm.fmuladd.f64(double 0x3C80F876CCDF6CD9, double %7659, double %7651)
  %7661 = load ptr, ptr %7, align 8, !tbaa !9
  %7662 = load i32, ptr %12, align 4, !tbaa !5
  %7663 = load i32, ptr %8, align 4, !tbaa !5
  %7664 = mul nsw i32 60, %7663
  %7665 = add nsw i32 %7662, %7664
  %7666 = sext i32 %7665 to i64
  %7667 = getelementptr inbounds double, ptr %7661, i64 %7666
  %7668 = load double, ptr %7667, align 8, !tbaa !11
  %7669 = call double @llvm.fmuladd.f64(double 0x3FD6A4D32EB1F71D, double %7668, double %7660)
  %7670 = load ptr, ptr %7, align 8, !tbaa !9
  %7671 = load i32, ptr %12, align 4, !tbaa !5
  %7672 = load i32, ptr %8, align 4, !tbaa !5
  %7673 = mul nsw i32 61, %7672
  %7674 = add nsw i32 %7671, %7673
  %7675 = sext i32 %7674 to i64
  %7676 = getelementptr inbounds double, ptr %7670, i64 %7675
  %7677 = load double, ptr %7676, align 8, !tbaa !11
  %7678 = call double @llvm.fmuladd.f64(double 0x3FE3C4545BCF030E, double %7677, double %7669)
  %7679 = load ptr, ptr %7, align 8, !tbaa !9
  %7680 = load i32, ptr %12, align 4, !tbaa !5
  %7681 = load i32, ptr %8, align 4, !tbaa !5
  %7682 = mul nsw i32 62, %7681
  %7683 = add nsw i32 %7680, %7682
  %7684 = sext i32 %7683 to i64
  %7685 = getelementptr inbounds double, ptr %7679, i64 %7684
  %7686 = load double, ptr %7685, align 8, !tbaa !11
  %7687 = call double @llvm.fmuladd.f64(double 0x3FCD5953692F6EA6, double %7686, double %7678)
  %7688 = load ptr, ptr %7, align 8, !tbaa !9
  %7689 = load i32, ptr %12, align 4, !tbaa !5
  %7690 = load i32, ptr %8, align 4, !tbaa !5
  %7691 = mul nsw i32 63, %7690
  %7692 = add nsw i32 %7689, %7691
  %7693 = sext i32 %7692 to i64
  %7694 = getelementptr inbounds double, ptr %7688, i64 %7693
  %7695 = load double, ptr %7694, align 8, !tbaa !11
  %7696 = call double @llvm.fmuladd.f64(double 0xBF9102DA00B18A34, double %7695, double %7687)
  %7697 = load ptr, ptr %7, align 8, !tbaa !9
  %7698 = load i32, ptr %12, align 4, !tbaa !5
  %7699 = load i32, ptr %8, align 4, !tbaa !5
  %7700 = mul nsw i32 64, %7699
  %7701 = add nsw i32 %7698, %7700
  %7702 = sext i32 %7701 to i64
  %7703 = getelementptr inbounds double, ptr %7697, i64 %7702
  %7704 = load double, ptr %7703, align 8, !tbaa !11
  %7705 = call double @llvm.fmuladd.f64(double 0xBCA0D685DF45AE00, double %7704, double %7696)
  %7706 = load ptr, ptr %7, align 8, !tbaa !9
  %7707 = load i32, ptr %12, align 4, !tbaa !5
  %7708 = load i32, ptr %8, align 4, !tbaa !5
  %7709 = mul nsw i32 65, %7708
  %7710 = add nsw i32 %7707, %7709
  %7711 = sext i32 %7710 to i64
  %7712 = getelementptr inbounds double, ptr %7706, i64 %7711
  %7713 = load double, ptr %7712, align 8, !tbaa !11
  %7714 = call double @llvm.fmuladd.f64(double 0x3C56A09E667F3BCC, double %7713, double %7705)
  %7715 = load ptr, ptr %7, align 8, !tbaa !9
  %7716 = load i32, ptr %12, align 4, !tbaa !5
  %7717 = load i32, ptr %8, align 4, !tbaa !5
  %7718 = mul nsw i32 66, %7717
  %7719 = add nsw i32 %7716, %7718
  %7720 = sext i32 %7719 to i64
  %7721 = getelementptr inbounds double, ptr %7715, i64 %7720
  %7722 = load double, ptr %7721, align 8, !tbaa !11
  %7723 = call double @llvm.fmuladd.f64(double 0xBC46A09E667F3BCB, double %7722, double %7714)
  %7724 = load ptr, ptr %7, align 8, !tbaa !9
  %7725 = load i32, ptr %12, align 4, !tbaa !5
  %7726 = load i32, ptr %8, align 4, !tbaa !5
  %7727 = mul nsw i32 67, %7726
  %7728 = add nsw i32 %7725, %7727
  %7729 = sext i32 %7728 to i64
  %7730 = getelementptr inbounds double, ptr %7724, i64 %7729
  %7731 = load double, ptr %7730, align 8, !tbaa !11
  %7732 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %7731, double %7723)
  store double %7732, ptr %11, align 8, !tbaa !11
  %7733 = load double, ptr %11, align 8, !tbaa !11
  %7734 = load ptr, ptr %9, align 8, !tbaa !9
  %7735 = load i32, ptr %12, align 4, !tbaa !5
  %7736 = load i32, ptr %10, align 4, !tbaa !5
  %7737 = mul nsw i32 26, %7736
  %7738 = add nsw i32 %7735, %7737
  %7739 = sext i32 %7738 to i64
  %7740 = getelementptr inbounds double, ptr %7734, i64 %7739
  store double %7733, ptr %7740, align 8, !tbaa !11
  %7741 = load ptr, ptr %7, align 8, !tbaa !9
  %7742 = load i32, ptr %12, align 4, !tbaa !5
  %7743 = load i32, ptr %8, align 4, !tbaa !5
  %7744 = mul nsw i32 36, %7743
  %7745 = add nsw i32 %7742, %7744
  %7746 = sext i32 %7745 to i64
  %7747 = getelementptr inbounds double, ptr %7741, i64 %7746
  %7748 = load double, ptr %7747, align 8, !tbaa !11
  %7749 = load ptr, ptr %7, align 8, !tbaa !9
  %7750 = load i32, ptr %12, align 4, !tbaa !5
  %7751 = load i32, ptr %8, align 4, !tbaa !5
  %7752 = mul nsw i32 37, %7751
  %7753 = add nsw i32 %7750, %7752
  %7754 = sext i32 %7753 to i64
  %7755 = getelementptr inbounds double, ptr %7749, i64 %7754
  %7756 = load double, ptr %7755, align 8, !tbaa !11
  %7757 = fmul double 0xBC84000000000000, %7756
  %7758 = call double @llvm.fmuladd.f64(double 0xBCA22FFFFFFFFFFF, double %7748, double %7757)
  %7759 = load ptr, ptr %7, align 8, !tbaa !9
  %7760 = load i32, ptr %12, align 4, !tbaa !5
  %7761 = load i32, ptr %8, align 4, !tbaa !5
  %7762 = mul nsw i32 38, %7761
  %7763 = add nsw i32 %7760, %7762
  %7764 = sext i32 %7763 to i64
  %7765 = getelementptr inbounds double, ptr %7759, i64 %7764
  %7766 = load double, ptr %7765, align 8, !tbaa !11
  %7767 = call double @llvm.fmuladd.f64(double 0x3C8E000000000000, double %7766, double %7758)
  %7768 = load ptr, ptr %7, align 8, !tbaa !9
  %7769 = load i32, ptr %12, align 4, !tbaa !5
  %7770 = load i32, ptr %8, align 4, !tbaa !5
  %7771 = mul nsw i32 39, %7770
  %7772 = add nsw i32 %7769, %7771
  %7773 = sext i32 %7772 to i64
  %7774 = getelementptr inbounds double, ptr %7768, i64 %7773
  %7775 = load double, ptr %7774, align 8, !tbaa !11
  %7776 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %7775, double %7767)
  %7777 = load ptr, ptr %7, align 8, !tbaa !9
  %7778 = load i32, ptr %12, align 4, !tbaa !5
  %7779 = load i32, ptr %8, align 4, !tbaa !5
  %7780 = mul nsw i32 40, %7779
  %7781 = add nsw i32 %7778, %7780
  %7782 = sext i32 %7781 to i64
  %7783 = getelementptr inbounds double, ptr %7777, i64 %7782
  %7784 = load double, ptr %7783, align 8, !tbaa !11
  %7785 = call double @llvm.fmuladd.f64(double 0x3CB3900000000000, double %7784, double %7776)
  %7786 = load ptr, ptr %7, align 8, !tbaa !9
  %7787 = load i32, ptr %12, align 4, !tbaa !5
  %7788 = load i32, ptr %8, align 4, !tbaa !5
  %7789 = mul nsw i32 41, %7788
  %7790 = add nsw i32 %7787, %7789
  %7791 = sext i32 %7790 to i64
  %7792 = getelementptr inbounds double, ptr %7786, i64 %7791
  %7793 = load double, ptr %7792, align 8, !tbaa !11
  %7794 = call double @llvm.fmuladd.f64(double 0x3CAD7FFFFFFFFFFE, double %7793, double %7785)
  %7795 = load ptr, ptr %7, align 8, !tbaa !9
  %7796 = load i32, ptr %12, align 4, !tbaa !5
  %7797 = load i32, ptr %8, align 4, !tbaa !5
  %7798 = mul nsw i32 42, %7797
  %7799 = add nsw i32 %7796, %7798
  %7800 = sext i32 %7799 to i64
  %7801 = getelementptr inbounds double, ptr %7795, i64 %7800
  %7802 = load double, ptr %7801, align 8, !tbaa !11
  %7803 = call double @llvm.fmuladd.f64(double 0x3CB2000000000000, double %7802, double %7794)
  %7804 = load ptr, ptr %7, align 8, !tbaa !9
  %7805 = load i32, ptr %12, align 4, !tbaa !5
  %7806 = load i32, ptr %8, align 4, !tbaa !5
  %7807 = mul nsw i32 43, %7806
  %7808 = add nsw i32 %7805, %7807
  %7809 = sext i32 %7808 to i64
  %7810 = getelementptr inbounds double, ptr %7804, i64 %7809
  %7811 = load double, ptr %7810, align 8, !tbaa !11
  %7812 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %7811, double %7803)
  %7813 = load ptr, ptr %7, align 8, !tbaa !9
  %7814 = load i32, ptr %12, align 4, !tbaa !5
  %7815 = load i32, ptr %8, align 4, !tbaa !5
  %7816 = mul nsw i32 44, %7815
  %7817 = add nsw i32 %7814, %7816
  %7818 = sext i32 %7817 to i64
  %7819 = getelementptr inbounds double, ptr %7813, i64 %7818
  %7820 = load double, ptr %7819, align 8, !tbaa !11
  %7821 = call double @llvm.fmuladd.f64(double 0xBFE002F9665DF3E9, double %7820, double %7812)
  %7822 = load ptr, ptr %7, align 8, !tbaa !9
  %7823 = load i32, ptr %12, align 4, !tbaa !5
  %7824 = load i32, ptr %8, align 4, !tbaa !5
  %7825 = mul nsw i32 45, %7824
  %7826 = add nsw i32 %7823, %7825
  %7827 = sext i32 %7826 to i64
  %7828 = getelementptr inbounds double, ptr %7822, i64 %7827
  %7829 = load double, ptr %7828, align 8, !tbaa !11
  %7830 = call double @llvm.fmuladd.f64(double 0xBFEBF462FB348EF9, double %7829, double %7821)
  %7831 = load ptr, ptr %7, align 8, !tbaa !9
  %7832 = load i32, ptr %12, align 4, !tbaa !5
  %7833 = load i32, ptr %8, align 4, !tbaa !5
  %7834 = mul nsw i32 46, %7833
  %7835 = add nsw i32 %7832, %7834
  %7836 = sext i32 %7835 to i64
  %7837 = getelementptr inbounds double, ptr %7831, i64 %7836
  %7838 = load double, ptr %7837, align 8, !tbaa !11
  %7839 = call double @llvm.fmuladd.f64(double 0xBFD4C0B9406BCBCC, double %7838, double %7830)
  %7840 = load ptr, ptr %7, align 8, !tbaa !9
  %7841 = load i32, ptr %12, align 4, !tbaa !5
  %7842 = load i32, ptr %8, align 4, !tbaa !5
  %7843 = mul nsw i32 47, %7842
  %7844 = add nsw i32 %7841, %7843
  %7845 = sext i32 %7844 to i64
  %7846 = getelementptr inbounds double, ptr %7840, i64 %7845
  %7847 = load double, ptr %7846, align 8, !tbaa !11
  %7848 = call double @llvm.fmuladd.f64(double 0x3F980EB0AE1D4853, double %7847, double %7839)
  %7849 = load ptr, ptr %7, align 8, !tbaa !9
  %7850 = load i32, ptr %12, align 4, !tbaa !5
  %7851 = load i32, ptr %8, align 4, !tbaa !5
  %7852 = mul nsw i32 48, %7851
  %7853 = add nsw i32 %7850, %7852
  %7854 = sext i32 %7853 to i64
  %7855 = getelementptr inbounds double, ptr %7849, i64 %7854
  %7856 = load double, ptr %7855, align 8, !tbaa !11
  %7857 = call double @llvm.fmuladd.f64(double 0x3CA22FFFFFFFFFFF, double %7856, double %7848)
  %7858 = load ptr, ptr %7, align 8, !tbaa !9
  %7859 = load i32, ptr %12, align 4, !tbaa !5
  %7860 = load i32, ptr %8, align 4, !tbaa !5
  %7861 = mul nsw i32 49, %7860
  %7862 = add nsw i32 %7859, %7861
  %7863 = sext i32 %7862 to i64
  %7864 = getelementptr inbounds double, ptr %7858, i64 %7863
  %7865 = load double, ptr %7864, align 8, !tbaa !11
  %7866 = call double @llvm.fmuladd.f64(double 0xBC8C000000000000, double %7865, double %7857)
  %7867 = load ptr, ptr %7, align 8, !tbaa !9
  %7868 = load i32, ptr %12, align 4, !tbaa !5
  %7869 = load i32, ptr %8, align 4, !tbaa !5
  %7870 = mul nsw i32 50, %7869
  %7871 = add nsw i32 %7868, %7870
  %7872 = sext i32 %7871 to i64
  %7873 = getelementptr inbounds double, ptr %7867, i64 %7872
  %7874 = load double, ptr %7873, align 8, !tbaa !11
  %7875 = call double @llvm.fmuladd.f64(double 0x3C82000000000000, double %7874, double %7866)
  %7876 = load ptr, ptr %7, align 8, !tbaa !9
  %7877 = load i32, ptr %12, align 4, !tbaa !5
  %7878 = load i32, ptr %8, align 4, !tbaa !5
  %7879 = mul nsw i32 51, %7878
  %7880 = add nsw i32 %7877, %7879
  %7881 = sext i32 %7880 to i64
  %7882 = getelementptr inbounds double, ptr %7876, i64 %7881
  %7883 = load double, ptr %7882, align 8, !tbaa !11
  %7884 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %7883, double %7875)
  %7885 = load ptr, ptr %7, align 8, !tbaa !9
  %7886 = load i32, ptr %12, align 4, !tbaa !5
  %7887 = load i32, ptr %8, align 4, !tbaa !5
  %7888 = mul nsw i32 52, %7887
  %7889 = add nsw i32 %7886, %7888
  %7890 = sext i32 %7889 to i64
  %7891 = getelementptr inbounds double, ptr %7885, i64 %7890
  %7892 = load double, ptr %7891, align 8, !tbaa !11
  %7893 = call double @llvm.fmuladd.f64(double 0x3C6B93C10CEB10E3, double %7892, double %7884)
  %7894 = load ptr, ptr %7, align 8, !tbaa !9
  %7895 = load i32, ptr %12, align 4, !tbaa !5
  %7896 = load i32, ptr %8, align 4, !tbaa !5
  %7897 = mul nsw i32 53, %7896
  %7898 = add nsw i32 %7895, %7897
  %7899 = sext i32 %7898 to i64
  %7900 = getelementptr inbounds double, ptr %7894, i64 %7899
  %7901 = load double, ptr %7900, align 8, !tbaa !11
  %7902 = call double @llvm.fmuladd.f64(double 0x3C8C48C6001F0AC0, double %7901, double %7893)
  %7903 = load ptr, ptr %7, align 8, !tbaa !9
  %7904 = load i32, ptr %12, align 4, !tbaa !5
  %7905 = load i32, ptr %8, align 4, !tbaa !5
  %7906 = mul nsw i32 54, %7905
  %7907 = add nsw i32 %7904, %7906
  %7908 = sext i32 %7907 to i64
  %7909 = getelementptr inbounds double, ptr %7903, i64 %7908
  %7910 = load double, ptr %7909, align 8, !tbaa !11
  %7911 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %7910, double %7902)
  %7912 = load ptr, ptr %7, align 8, !tbaa !9
  %7913 = load i32, ptr %12, align 4, !tbaa !5
  %7914 = load i32, ptr %8, align 4, !tbaa !5
  %7915 = mul nsw i32 55, %7914
  %7916 = add nsw i32 %7913, %7915
  %7917 = sext i32 %7916 to i64
  %7918 = getelementptr inbounds double, ptr %7912, i64 %7917
  %7919 = load double, ptr %7918, align 8, !tbaa !11
  %7920 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %7919, double %7911)
  %7921 = load ptr, ptr %7, align 8, !tbaa !9
  %7922 = load i32, ptr %12, align 4, !tbaa !5
  %7923 = load i32, ptr %8, align 4, !tbaa !5
  %7924 = mul nsw i32 56, %7923
  %7925 = add nsw i32 %7922, %7924
  %7926 = sext i32 %7925 to i64
  %7927 = getelementptr inbounds double, ptr %7921, i64 %7926
  %7928 = load double, ptr %7927, align 8, !tbaa !11
  %7929 = call double @llvm.fmuladd.f64(double 0xBC9125B809AC6B51, double %7928, double %7920)
  %7930 = load ptr, ptr %7, align 8, !tbaa !9
  %7931 = load i32, ptr %12, align 4, !tbaa !5
  %7932 = load i32, ptr %8, align 4, !tbaa !5
  %7933 = mul nsw i32 57, %7932
  %7934 = add nsw i32 %7931, %7933
  %7935 = sext i32 %7934 to i64
  %7936 = getelementptr inbounds double, ptr %7930, i64 %7935
  %7937 = load double, ptr %7936, align 8, !tbaa !11
  %7938 = call double @llvm.fmuladd.f64(double 0x3C826280B3476096, double %7937, double %7929)
  %7939 = load ptr, ptr %7, align 8, !tbaa !9
  %7940 = load i32, ptr %12, align 4, !tbaa !5
  %7941 = load i32, ptr %8, align 4, !tbaa !5
  %7942 = mul nsw i32 58, %7941
  %7943 = add nsw i32 %7940, %7942
  %7944 = sext i32 %7943 to i64
  %7945 = getelementptr inbounds double, ptr %7939, i64 %7944
  %7946 = load double, ptr %7945, align 8, !tbaa !11
  %7947 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %7946, double %7938)
  %7948 = load ptr, ptr %7, align 8, !tbaa !9
  %7949 = load i32, ptr %12, align 4, !tbaa !5
  %7950 = load i32, ptr %8, align 4, !tbaa !5
  %7951 = mul nsw i32 59, %7950
  %7952 = add nsw i32 %7949, %7951
  %7953 = sext i32 %7952 to i64
  %7954 = getelementptr inbounds double, ptr %7948, i64 %7953
  %7955 = load double, ptr %7954, align 8, !tbaa !11
  %7956 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %7955, double %7947)
  %7957 = load ptr, ptr %7, align 8, !tbaa !9
  %7958 = load i32, ptr %12, align 4, !tbaa !5
  %7959 = load i32, ptr %8, align 4, !tbaa !5
  %7960 = mul nsw i32 60, %7959
  %7961 = add nsw i32 %7958, %7960
  %7962 = sext i32 %7961 to i64
  %7963 = getelementptr inbounds double, ptr %7957, i64 %7962
  %7964 = load double, ptr %7963, align 8, !tbaa !11
  %7965 = call double @llvm.fmuladd.f64(double 0xBFE7007BFD8FD85D, double %7964, double %7956)
  %7966 = load ptr, ptr %7, align 8, !tbaa !9
  %7967 = load i32, ptr %12, align 4, !tbaa !5
  %7968 = load i32, ptr %8, align 4, !tbaa !5
  %7969 = mul nsw i32 61, %7968
  %7970 = add nsw i32 %7967, %7969
  %7971 = sext i32 %7970 to i64
  %7972 = getelementptr inbounds double, ptr %7966, i64 %7971
  %7973 = load double, ptr %7972, align 8, !tbaa !11
  %7974 = call double @llvm.fmuladd.f64(double 0xBFE66643AEED3708, double %7973, double %7965)
  %7975 = load ptr, ptr %7, align 8, !tbaa !9
  %7976 = load i32, ptr %12, align 4, !tbaa !5
  %7977 = load i32, ptr %8, align 4, !tbaa !5
  %7978 = mul nsw i32 62, %7977
  %7979 = add nsw i32 %7976, %7978
  %7980 = sext i32 %7979 to i64
  %7981 = getelementptr inbounds double, ptr %7975, i64 %7980
  %7982 = load double, ptr %7981, align 8, !tbaa !11
  %7983 = call double @llvm.fmuladd.f64(double 0x3FAD5B74B5F10E9B, double %7982, double %7974)
  %7984 = load ptr, ptr %7, align 8, !tbaa !9
  %7985 = load i32, ptr %12, align 4, !tbaa !5
  %7986 = load i32, ptr %8, align 4, !tbaa !5
  %7987 = mul nsw i32 63, %7986
  %7988 = add nsw i32 %7985, %7987
  %7989 = sext i32 %7988 to i64
  %7990 = getelementptr inbounds double, ptr %7984, i64 %7989
  %7991 = load double, ptr %7990, align 8, !tbaa !11
  %7992 = call double @llvm.fmuladd.f64(double 0x3FA3F41B0E87BFB6, double %7991, double %7983)
  %7993 = load ptr, ptr %7, align 8, !tbaa !9
  %7994 = load i32, ptr %12, align 4, !tbaa !5
  %7995 = load i32, ptr %8, align 4, !tbaa !5
  %7996 = mul nsw i32 64, %7995
  %7997 = add nsw i32 %7994, %7996
  %7998 = sext i32 %7997 to i64
  %7999 = getelementptr inbounds double, ptr %7993, i64 %7998
  %8000 = load double, ptr %7999, align 8, !tbaa !11
  %8001 = call double @llvm.fmuladd.f64(double 0x3C7F775C4688EF29, double %8000, double %7992)
  %8002 = load ptr, ptr %7, align 8, !tbaa !9
  %8003 = load i32, ptr %12, align 4, !tbaa !5
  %8004 = load i32, ptr %8, align 4, !tbaa !5
  %8005 = mul nsw i32 65, %8004
  %8006 = add nsw i32 %8003, %8005
  %8007 = sext i32 %8006 to i64
  %8008 = getelementptr inbounds double, ptr %8002, i64 %8007
  %8009 = load double, ptr %8008, align 8, !tbaa !11
  %8010 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %8009, double %8001)
  %8011 = load ptr, ptr %7, align 8, !tbaa !9
  %8012 = load i32, ptr %12, align 4, !tbaa !5
  %8013 = load i32, ptr %8, align 4, !tbaa !5
  %8014 = mul nsw i32 66, %8013
  %8015 = add nsw i32 %8012, %8014
  %8016 = sext i32 %8015 to i64
  %8017 = getelementptr inbounds double, ptr %8011, i64 %8016
  %8018 = load double, ptr %8017, align 8, !tbaa !11
  %8019 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %8018, double %8010)
  %8020 = load ptr, ptr %7, align 8, !tbaa !9
  %8021 = load i32, ptr %12, align 4, !tbaa !5
  %8022 = load i32, ptr %8, align 4, !tbaa !5
  %8023 = mul nsw i32 67, %8022
  %8024 = add nsw i32 %8021, %8023
  %8025 = sext i32 %8024 to i64
  %8026 = getelementptr inbounds double, ptr %8020, i64 %8025
  %8027 = load double, ptr %8026, align 8, !tbaa !11
  %8028 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %8027, double %8019)
  store double %8028, ptr %11, align 8, !tbaa !11
  %8029 = load double, ptr %11, align 8, !tbaa !11
  %8030 = load ptr, ptr %9, align 8, !tbaa !9
  %8031 = load i32, ptr %12, align 4, !tbaa !5
  %8032 = load i32, ptr %10, align 4, !tbaa !5
  %8033 = mul nsw i32 27, %8032
  %8034 = add nsw i32 %8031, %8033
  %8035 = sext i32 %8034 to i64
  %8036 = getelementptr inbounds double, ptr %8030, i64 %8035
  store double %8029, ptr %8036, align 8, !tbaa !11
  %8037 = load ptr, ptr %7, align 8, !tbaa !9
  %8038 = load i32, ptr %12, align 4, !tbaa !5
  %8039 = load i32, ptr %8, align 4, !tbaa !5
  %8040 = mul nsw i32 36, %8039
  %8041 = add nsw i32 %8038, %8040
  %8042 = sext i32 %8041 to i64
  %8043 = getelementptr inbounds double, ptr %8037, i64 %8042
  %8044 = load double, ptr %8043, align 8, !tbaa !11
  %8045 = load ptr, ptr %7, align 8, !tbaa !9
  %8046 = load i32, ptr %12, align 4, !tbaa !5
  %8047 = load i32, ptr %8, align 4, !tbaa !5
  %8048 = mul nsw i32 37, %8047
  %8049 = add nsw i32 %8046, %8048
  %8050 = sext i32 %8049 to i64
  %8051 = getelementptr inbounds double, ptr %8045, i64 %8050
  %8052 = load double, ptr %8051, align 8, !tbaa !11
  %8053 = fmul double 0xBC90000000000000, %8052
  %8054 = call double @llvm.fmuladd.f64(double 0x3C7E000000000001, double %8044, double %8053)
  %8055 = load ptr, ptr %7, align 8, !tbaa !9
  %8056 = load i32, ptr %12, align 4, !tbaa !5
  %8057 = load i32, ptr %8, align 4, !tbaa !5
  %8058 = mul nsw i32 38, %8057
  %8059 = add nsw i32 %8056, %8058
  %8060 = sext i32 %8059 to i64
  %8061 = getelementptr inbounds double, ptr %8055, i64 %8060
  %8062 = load double, ptr %8061, align 8, !tbaa !11
  %8063 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %8062, double %8054)
  %8064 = load ptr, ptr %7, align 8, !tbaa !9
  %8065 = load i32, ptr %12, align 4, !tbaa !5
  %8066 = load i32, ptr %8, align 4, !tbaa !5
  %8067 = mul nsw i32 39, %8066
  %8068 = add nsw i32 %8065, %8067
  %8069 = sext i32 %8068 to i64
  %8070 = getelementptr inbounds double, ptr %8064, i64 %8069
  %8071 = load double, ptr %8070, align 8, !tbaa !11
  %8072 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %8071, double %8063)
  %8073 = load ptr, ptr %7, align 8, !tbaa !9
  %8074 = load i32, ptr %12, align 4, !tbaa !5
  %8075 = load i32, ptr %8, align 4, !tbaa !5
  %8076 = mul nsw i32 40, %8075
  %8077 = add nsw i32 %8074, %8076
  %8078 = sext i32 %8077 to i64
  %8079 = getelementptr inbounds double, ptr %8073, i64 %8078
  %8080 = load double, ptr %8079, align 8, !tbaa !11
  %8081 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %8080, double %8072)
  %8082 = load ptr, ptr %7, align 8, !tbaa !9
  %8083 = load i32, ptr %12, align 4, !tbaa !5
  %8084 = load i32, ptr %8, align 4, !tbaa !5
  %8085 = mul nsw i32 41, %8084
  %8086 = add nsw i32 %8083, %8085
  %8087 = sext i32 %8086 to i64
  %8088 = getelementptr inbounds double, ptr %8082, i64 %8087
  %8089 = load double, ptr %8088, align 8, !tbaa !11
  %8090 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %8089, double %8081)
  %8091 = load ptr, ptr %7, align 8, !tbaa !9
  %8092 = load i32, ptr %12, align 4, !tbaa !5
  %8093 = load i32, ptr %8, align 4, !tbaa !5
  %8094 = mul nsw i32 42, %8093
  %8095 = add nsw i32 %8092, %8094
  %8096 = sext i32 %8095 to i64
  %8097 = getelementptr inbounds double, ptr %8091, i64 %8096
  %8098 = load double, ptr %8097, align 8, !tbaa !11
  %8099 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %8098, double %8090)
  %8100 = load ptr, ptr %7, align 8, !tbaa !9
  %8101 = load i32, ptr %12, align 4, !tbaa !5
  %8102 = load i32, ptr %8, align 4, !tbaa !5
  %8103 = mul nsw i32 43, %8102
  %8104 = add nsw i32 %8101, %8103
  %8105 = sext i32 %8104 to i64
  %8106 = getelementptr inbounds double, ptr %8100, i64 %8105
  %8107 = load double, ptr %8106, align 8, !tbaa !11
  %8108 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %8107, double %8099)
  %8109 = load ptr, ptr %7, align 8, !tbaa !9
  %8110 = load i32, ptr %12, align 4, !tbaa !5
  %8111 = load i32, ptr %8, align 4, !tbaa !5
  %8112 = mul nsw i32 44, %8111
  %8113 = add nsw i32 %8110, %8112
  %8114 = sext i32 %8113 to i64
  %8115 = getelementptr inbounds double, ptr %8109, i64 %8114
  %8116 = load double, ptr %8115, align 8, !tbaa !11
  %8117 = call double @llvm.fmuladd.f64(double 0x3FC1964E14FA3C8D, double %8116, double %8108)
  %8118 = load ptr, ptr %7, align 8, !tbaa !9
  %8119 = load i32, ptr %12, align 4, !tbaa !5
  %8120 = load i32, ptr %8, align 4, !tbaa !5
  %8121 = mul nsw i32 45, %8120
  %8122 = add nsw i32 %8119, %8121
  %8123 = sext i32 %8122 to i64
  %8124 = getelementptr inbounds double, ptr %8118, i64 %8123
  %8125 = load double, ptr %8124, align 8, !tbaa !11
  %8126 = call double @llvm.fmuladd.f64(double 0xBFD7BAC3393ADDAC, double %8125, double %8117)
  %8127 = load ptr, ptr %7, align 8, !tbaa !9
  %8128 = load i32, ptr %12, align 4, !tbaa !5
  %8129 = load i32, ptr %8, align 4, !tbaa !5
  %8130 = mul nsw i32 46, %8129
  %8131 = add nsw i32 %8128, %8130
  %8132 = sext i32 %8131 to i64
  %8133 = getelementptr inbounds double, ptr %8127, i64 %8132
  %8134 = load double, ptr %8133, align 8, !tbaa !11
  %8135 = call double @llvm.fmuladd.f64(double 0xC01043858A1F5994, double %8134, double %8126)
  %8136 = load ptr, ptr %7, align 8, !tbaa !9
  %8137 = load i32, ptr %12, align 4, !tbaa !5
  %8138 = load i32, ptr %8, align 4, !tbaa !5
  %8139 = mul nsw i32 47, %8138
  %8140 = add nsw i32 %8137, %8139
  %8141 = sext i32 %8140 to i64
  %8142 = getelementptr inbounds double, ptr %8136, i64 %8141
  %8143 = load double, ptr %8142, align 8, !tbaa !11
  %8144 = call double @llvm.fmuladd.f64(double 0xBFD7671404765114, double %8143, double %8135)
  %8145 = load ptr, ptr %7, align 8, !tbaa !9
  %8146 = load i32, ptr %12, align 4, !tbaa !5
  %8147 = load i32, ptr %8, align 4, !tbaa !5
  %8148 = mul nsw i32 48, %8147
  %8149 = add nsw i32 %8146, %8148
  %8150 = sext i32 %8149 to i64
  %8151 = getelementptr inbounds double, ptr %8145, i64 %8150
  %8152 = load double, ptr %8151, align 8, !tbaa !11
  %8153 = call double @llvm.fmuladd.f64(double 0x3C98800000000000, double %8152, double %8144)
  %8154 = load ptr, ptr %7, align 8, !tbaa !9
  %8155 = load i32, ptr %12, align 4, !tbaa !5
  %8156 = load i32, ptr %8, align 4, !tbaa !5
  %8157 = mul nsw i32 49, %8156
  %8158 = add nsw i32 %8155, %8157
  %8159 = sext i32 %8158 to i64
  %8160 = getelementptr inbounds double, ptr %8154, i64 %8159
  %8161 = load double, ptr %8160, align 8, !tbaa !11
  %8162 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %8161, double %8153)
  %8163 = load ptr, ptr %7, align 8, !tbaa !9
  %8164 = load i32, ptr %12, align 4, !tbaa !5
  %8165 = load i32, ptr %8, align 4, !tbaa !5
  %8166 = mul nsw i32 50, %8165
  %8167 = add nsw i32 %8164, %8166
  %8168 = sext i32 %8167 to i64
  %8169 = getelementptr inbounds double, ptr %8163, i64 %8168
  %8170 = load double, ptr %8169, align 8, !tbaa !11
  %8171 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %8170, double %8162)
  %8172 = load ptr, ptr %7, align 8, !tbaa !9
  %8173 = load i32, ptr %12, align 4, !tbaa !5
  %8174 = load i32, ptr %8, align 4, !tbaa !5
  %8175 = mul nsw i32 51, %8174
  %8176 = add nsw i32 %8173, %8175
  %8177 = sext i32 %8176 to i64
  %8178 = getelementptr inbounds double, ptr %8172, i64 %8177
  %8179 = load double, ptr %8178, align 8, !tbaa !11
  %8180 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %8179, double %8171)
  %8181 = load ptr, ptr %7, align 8, !tbaa !9
  %8182 = load i32, ptr %12, align 4, !tbaa !5
  %8183 = load i32, ptr %8, align 4, !tbaa !5
  %8184 = mul nsw i32 52, %8183
  %8185 = add nsw i32 %8182, %8184
  %8186 = sext i32 %8185 to i64
  %8187 = getelementptr inbounds double, ptr %8181, i64 %8186
  %8188 = load double, ptr %8187, align 8, !tbaa !11
  %8189 = call double @llvm.fmuladd.f64(double 0x3C7DB2CFE686FE7B, double %8188, double %8180)
  %8190 = load ptr, ptr %7, align 8, !tbaa !9
  %8191 = load i32, ptr %12, align 4, !tbaa !5
  %8192 = load i32, ptr %8, align 4, !tbaa !5
  %8193 = mul nsw i32 53, %8192
  %8194 = add nsw i32 %8191, %8193
  %8195 = sext i32 %8194 to i64
  %8196 = getelementptr inbounds double, ptr %8190, i64 %8195
  %8197 = load double, ptr %8196, align 8, !tbaa !11
  %8198 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %8197, double %8189)
  %8199 = load ptr, ptr %7, align 8, !tbaa !9
  %8200 = load i32, ptr %12, align 4, !tbaa !5
  %8201 = load i32, ptr %8, align 4, !tbaa !5
  %8202 = mul nsw i32 54, %8201
  %8203 = add nsw i32 %8200, %8202
  %8204 = sext i32 %8203 to i64
  %8205 = getelementptr inbounds double, ptr %8199, i64 %8204
  %8206 = load double, ptr %8205, align 8, !tbaa !11
  %8207 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %8206, double %8198)
  %8208 = load ptr, ptr %7, align 8, !tbaa !9
  %8209 = load i32, ptr %12, align 4, !tbaa !5
  %8210 = load i32, ptr %8, align 4, !tbaa !5
  %8211 = mul nsw i32 56, %8210
  %8212 = add nsw i32 %8209, %8211
  %8213 = sext i32 %8212 to i64
  %8214 = getelementptr inbounds double, ptr %8208, i64 %8213
  %8215 = load double, ptr %8214, align 8, !tbaa !11
  %8216 = call double @llvm.fmuladd.f64(double 0xBC70F876CCDF6CD9, double %8215, double %8207)
  %8217 = load ptr, ptr %7, align 8, !tbaa !9
  %8218 = load i32, ptr %12, align 4, !tbaa !5
  %8219 = load i32, ptr %8, align 4, !tbaa !5
  %8220 = mul nsw i32 57, %8219
  %8221 = add nsw i32 %8218, %8220
  %8222 = sext i32 %8221 to i64
  %8223 = getelementptr inbounds double, ptr %8217, i64 %8222
  %8224 = load double, ptr %8223, align 8, !tbaa !11
  %8225 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %8224, double %8216)
  %8226 = load ptr, ptr %7, align 8, !tbaa !9
  %8227 = load i32, ptr %12, align 4, !tbaa !5
  %8228 = load i32, ptr %8, align 4, !tbaa !5
  %8229 = mul nsw i32 58, %8228
  %8230 = add nsw i32 %8227, %8229
  %8231 = sext i32 %8230 to i64
  %8232 = getelementptr inbounds double, ptr %8226, i64 %8231
  %8233 = load double, ptr %8232, align 8, !tbaa !11
  %8234 = call double @llvm.fmuladd.f64(double 0x3CA3CC8A99AF5452, double %8233, double %8225)
  %8235 = load ptr, ptr %7, align 8, !tbaa !9
  %8236 = load i32, ptr %12, align 4, !tbaa !5
  %8237 = load i32, ptr %8, align 4, !tbaa !5
  %8238 = mul nsw i32 59, %8237
  %8239 = add nsw i32 %8236, %8238
  %8240 = sext i32 %8239 to i64
  %8241 = getelementptr inbounds double, ptr %8235, i64 %8240
  %8242 = load double, ptr %8241, align 8, !tbaa !11
  %8243 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %8242, double %8234)
  %8244 = load ptr, ptr %7, align 8, !tbaa !9
  %8245 = load i32, ptr %12, align 4, !tbaa !5
  %8246 = load i32, ptr %8, align 4, !tbaa !5
  %8247 = mul nsw i32 60, %8246
  %8248 = add nsw i32 %8245, %8247
  %8249 = sext i32 %8248 to i64
  %8250 = getelementptr inbounds double, ptr %8244, i64 %8249
  %8251 = load double, ptr %8250, align 8, !tbaa !11
  %8252 = call double @llvm.fmuladd.f64(double 0x3FA3F41B0E87BFE9, double %8251, double %8243)
  %8253 = load ptr, ptr %7, align 8, !tbaa !9
  %8254 = load i32, ptr %12, align 4, !tbaa !5
  %8255 = load i32, ptr %8, align 4, !tbaa !5
  %8256 = mul nsw i32 61, %8255
  %8257 = add nsw i32 %8254, %8256
  %8258 = sext i32 %8257 to i64
  %8259 = getelementptr inbounds double, ptr %8253, i64 %8258
  %8260 = load double, ptr %8259, align 8, !tbaa !11
  %8261 = call double @llvm.fmuladd.f64(double 0x3FAD5B74B5F10E92, double %8260, double %8252)
  %8262 = load ptr, ptr %7, align 8, !tbaa !9
  %8263 = load i32, ptr %12, align 4, !tbaa !5
  %8264 = load i32, ptr %8, align 4, !tbaa !5
  %8265 = mul nsw i32 62, %8264
  %8266 = add nsw i32 %8263, %8265
  %8267 = sext i32 %8266 to i64
  %8268 = getelementptr inbounds double, ptr %8262, i64 %8267
  %8269 = load double, ptr %8268, align 8, !tbaa !11
  %8270 = call double @llvm.fmuladd.f64(double 0xBFE66643AEED36FA, double %8269, double %8261)
  %8271 = load ptr, ptr %7, align 8, !tbaa !9
  %8272 = load i32, ptr %12, align 4, !tbaa !5
  %8273 = load i32, ptr %8, align 4, !tbaa !5
  %8274 = mul nsw i32 63, %8273
  %8275 = add nsw i32 %8272, %8274
  %8276 = sext i32 %8275 to i64
  %8277 = getelementptr inbounds double, ptr %8271, i64 %8276
  %8278 = load double, ptr %8277, align 8, !tbaa !11
  %8279 = call double @llvm.fmuladd.f64(double 0xBFE7007BFD8FD85D, double %8278, double %8270)
  %8280 = load ptr, ptr %7, align 8, !tbaa !9
  %8281 = load i32, ptr %12, align 4, !tbaa !5
  %8282 = load i32, ptr %8, align 4, !tbaa !5
  %8283 = mul nsw i32 64, %8282
  %8284 = add nsw i32 %8281, %8283
  %8285 = sext i32 %8284 to i64
  %8286 = getelementptr inbounds double, ptr %8280, i64 %8285
  %8287 = load double, ptr %8286, align 8, !tbaa !11
  %8288 = call double @llvm.fmuladd.f64(double 0x3C7ADEBC19B71701, double %8287, double %8279)
  %8289 = load ptr, ptr %7, align 8, !tbaa !9
  %8290 = load i32, ptr %12, align 4, !tbaa !5
  %8291 = load i32, ptr %8, align 4, !tbaa !5
  %8292 = mul nsw i32 65, %8291
  %8293 = add nsw i32 %8290, %8292
  %8294 = sext i32 %8293 to i64
  %8295 = getelementptr inbounds double, ptr %8289, i64 %8294
  %8296 = load double, ptr %8295, align 8, !tbaa !11
  %8297 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %8296, double %8288)
  %8298 = load ptr, ptr %7, align 8, !tbaa !9
  %8299 = load i32, ptr %12, align 4, !tbaa !5
  %8300 = load i32, ptr %8, align 4, !tbaa !5
  %8301 = mul nsw i32 66, %8300
  %8302 = add nsw i32 %8299, %8301
  %8303 = sext i32 %8302 to i64
  %8304 = getelementptr inbounds double, ptr %8298, i64 %8303
  %8305 = load double, ptr %8304, align 8, !tbaa !11
  %8306 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %8305, double %8297)
  store double %8306, ptr %11, align 8, !tbaa !11
  %8307 = load double, ptr %11, align 8, !tbaa !11
  %8308 = load ptr, ptr %9, align 8, !tbaa !9
  %8309 = load i32, ptr %12, align 4, !tbaa !5
  %8310 = load i32, ptr %10, align 4, !tbaa !5
  %8311 = mul nsw i32 28, %8310
  %8312 = add nsw i32 %8309, %8311
  %8313 = sext i32 %8312 to i64
  %8314 = getelementptr inbounds double, ptr %8308, i64 %8313
  store double %8307, ptr %8314, align 8, !tbaa !11
  %8315 = load ptr, ptr %7, align 8, !tbaa !9
  %8316 = load i32, ptr %12, align 4, !tbaa !5
  %8317 = load i32, ptr %8, align 4, !tbaa !5
  %8318 = mul nsw i32 36, %8317
  %8319 = add nsw i32 %8316, %8318
  %8320 = sext i32 %8319 to i64
  %8321 = getelementptr inbounds double, ptr %8315, i64 %8320
  %8322 = load double, ptr %8321, align 8, !tbaa !11
  %8323 = load ptr, ptr %7, align 8, !tbaa !9
  %8324 = load i32, ptr %12, align 4, !tbaa !5
  %8325 = load i32, ptr %8, align 4, !tbaa !5
  %8326 = mul nsw i32 37, %8325
  %8327 = add nsw i32 %8324, %8326
  %8328 = sext i32 %8327 to i64
  %8329 = getelementptr inbounds double, ptr %8323, i64 %8328
  %8330 = load double, ptr %8329, align 8, !tbaa !11
  %8331 = fmul double 0x3C7FFFFFFFFFFFFF, %8330
  %8332 = call double @llvm.fmuladd.f64(double 0xBC85000000000000, double %8322, double %8331)
  %8333 = load ptr, ptr %7, align 8, !tbaa !9
  %8334 = load i32, ptr %12, align 4, !tbaa !5
  %8335 = load i32, ptr %8, align 4, !tbaa !5
  %8336 = mul nsw i32 38, %8335
  %8337 = add nsw i32 %8334, %8336
  %8338 = sext i32 %8337 to i64
  %8339 = getelementptr inbounds double, ptr %8333, i64 %8338
  %8340 = load double, ptr %8339, align 8, !tbaa !11
  %8341 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %8340, double %8332)
  %8342 = load ptr, ptr %7, align 8, !tbaa !9
  %8343 = load i32, ptr %12, align 4, !tbaa !5
  %8344 = load i32, ptr %8, align 4, !tbaa !5
  %8345 = mul nsw i32 40, %8344
  %8346 = add nsw i32 %8343, %8345
  %8347 = sext i32 %8346 to i64
  %8348 = getelementptr inbounds double, ptr %8342, i64 %8347
  %8349 = load double, ptr %8348, align 8, !tbaa !11
  %8350 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %8349, double %8341)
  %8351 = load ptr, ptr %7, align 8, !tbaa !9
  %8352 = load i32, ptr %12, align 4, !tbaa !5
  %8353 = load i32, ptr %8, align 4, !tbaa !5
  %8354 = mul nsw i32 41, %8353
  %8355 = add nsw i32 %8352, %8354
  %8356 = sext i32 %8355 to i64
  %8357 = getelementptr inbounds double, ptr %8351, i64 %8356
  %8358 = load double, ptr %8357, align 8, !tbaa !11
  %8359 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %8358, double %8350)
  %8360 = load ptr, ptr %7, align 8, !tbaa !9
  %8361 = load i32, ptr %12, align 4, !tbaa !5
  %8362 = load i32, ptr %8, align 4, !tbaa !5
  %8363 = mul nsw i32 42, %8362
  %8364 = add nsw i32 %8361, %8363
  %8365 = sext i32 %8364 to i64
  %8366 = getelementptr inbounds double, ptr %8360, i64 %8365
  %8367 = load double, ptr %8366, align 8, !tbaa !11
  %8368 = call double @llvm.fmuladd.f64(double 0xBCAC000000000000, double %8367, double %8359)
  %8369 = load ptr, ptr %7, align 8, !tbaa !9
  %8370 = load i32, ptr %12, align 4, !tbaa !5
  %8371 = load i32, ptr %8, align 4, !tbaa !5
  %8372 = mul nsw i32 43, %8371
  %8373 = add nsw i32 %8370, %8372
  %8374 = sext i32 %8373 to i64
  %8375 = getelementptr inbounds double, ptr %8369, i64 %8374
  %8376 = load double, ptr %8375, align 8, !tbaa !11
  %8377 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %8376, double %8368)
  %8378 = load ptr, ptr %7, align 8, !tbaa !9
  %8379 = load i32, ptr %12, align 4, !tbaa !5
  %8380 = load i32, ptr %8, align 4, !tbaa !5
  %8381 = mul nsw i32 44, %8380
  %8382 = add nsw i32 %8379, %8381
  %8383 = sext i32 %8382 to i64
  %8384 = getelementptr inbounds double, ptr %8378, i64 %8383
  %8385 = load double, ptr %8384, align 8, !tbaa !11
  %8386 = call double @llvm.fmuladd.f64(double 0xBFAC37F3CCE9FD85, double %8385, double %8377)
  %8387 = load ptr, ptr %7, align 8, !tbaa !9
  %8388 = load i32, ptr %12, align 4, !tbaa !5
  %8389 = load i32, ptr %8, align 4, !tbaa !5
  %8390 = mul nsw i32 45, %8389
  %8391 = add nsw i32 %8388, %8390
  %8392 = sext i32 %8391 to i64
  %8393 = getelementptr inbounds double, ptr %8387, i64 %8392
  %8394 = load double, ptr %8393, align 8, !tbaa !11
  %8395 = call double @llvm.fmuladd.f64(double 0xBFB4C23AD63BEF7C, double %8394, double %8386)
  %8396 = load ptr, ptr %7, align 8, !tbaa !9
  %8397 = load i32, ptr %12, align 4, !tbaa !5
  %8398 = load i32, ptr %8, align 4, !tbaa !5
  %8399 = mul nsw i32 46, %8398
  %8400 = add nsw i32 %8397, %8399
  %8401 = sext i32 %8400 to i64
  %8402 = getelementptr inbounds double, ptr %8396, i64 %8401
  %8403 = load double, ptr %8402, align 8, !tbaa !11
  %8404 = call double @llvm.fmuladd.f64(double 0x3FEFAD7976B5DE11, double %8403, double %8395)
  %8405 = load ptr, ptr %7, align 8, !tbaa !9
  %8406 = load i32, ptr %12, align 4, !tbaa !5
  %8407 = load i32, ptr %8, align 4, !tbaa !5
  %8408 = mul nsw i32 47, %8407
  %8409 = add nsw i32 %8406, %8408
  %8410 = sext i32 %8409 to i64
  %8411 = getelementptr inbounds double, ptr %8405, i64 %8410
  %8412 = load double, ptr %8411, align 8, !tbaa !11
  %8413 = call double @llvm.fmuladd.f64(double 0x3FF043C98657E812, double %8412, double %8404)
  %8414 = load ptr, ptr %7, align 8, !tbaa !9
  %8415 = load i32, ptr %12, align 4, !tbaa !5
  %8416 = load i32, ptr %8, align 4, !tbaa !5
  %8417 = mul nsw i32 48, %8416
  %8418 = add nsw i32 %8415, %8417
  %8419 = sext i32 %8418 to i64
  %8420 = getelementptr inbounds double, ptr %8414, i64 %8419
  %8421 = load double, ptr %8420, align 8, !tbaa !11
  %8422 = call double @llvm.fmuladd.f64(double 0xBC82FFFFFFFFFFFF, double %8421, double %8413)
  %8423 = load ptr, ptr %7, align 8, !tbaa !9
  %8424 = load i32, ptr %12, align 4, !tbaa !5
  %8425 = load i32, ptr %8, align 4, !tbaa !5
  %8426 = mul nsw i32 49, %8425
  %8427 = add nsw i32 %8424, %8426
  %8428 = sext i32 %8427 to i64
  %8429 = getelementptr inbounds double, ptr %8423, i64 %8428
  %8430 = load double, ptr %8429, align 8, !tbaa !11
  %8431 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %8430, double %8422)
  %8432 = load ptr, ptr %7, align 8, !tbaa !9
  %8433 = load i32, ptr %12, align 4, !tbaa !5
  %8434 = load i32, ptr %8, align 4, !tbaa !5
  %8435 = mul nsw i32 50, %8434
  %8436 = add nsw i32 %8433, %8435
  %8437 = sext i32 %8436 to i64
  %8438 = getelementptr inbounds double, ptr %8432, i64 %8437
  %8439 = load double, ptr %8438, align 8, !tbaa !11
  %8440 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %8439, double %8431)
  %8441 = load ptr, ptr %7, align 8, !tbaa !9
  %8442 = load i32, ptr %12, align 4, !tbaa !5
  %8443 = load i32, ptr %8, align 4, !tbaa !5
  %8444 = mul nsw i32 52, %8443
  %8445 = add nsw i32 %8442, %8444
  %8446 = sext i32 %8445 to i64
  %8447 = getelementptr inbounds double, ptr %8441, i64 %8446
  %8448 = load double, ptr %8447, align 8, !tbaa !11
  %8449 = call double @llvm.fmuladd.f64(double 0xBC75369480174810, double %8448, double %8440)
  %8450 = load ptr, ptr %7, align 8, !tbaa !9
  %8451 = load i32, ptr %12, align 4, !tbaa !5
  %8452 = load i32, ptr %8, align 4, !tbaa !5
  %8453 = mul nsw i32 53, %8452
  %8454 = add nsw i32 %8451, %8453
  %8455 = sext i32 %8454 to i64
  %8456 = getelementptr inbounds double, ptr %8450, i64 %8455
  %8457 = load double, ptr %8456, align 8, !tbaa !11
  %8458 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %8457, double %8449)
  %8459 = load ptr, ptr %7, align 8, !tbaa !9
  %8460 = load i32, ptr %12, align 4, !tbaa !5
  %8461 = load i32, ptr %8, align 4, !tbaa !5
  %8462 = mul nsw i32 54, %8461
  %8463 = add nsw i32 %8460, %8462
  %8464 = sext i32 %8463 to i64
  %8465 = getelementptr inbounds double, ptr %8459, i64 %8464
  %8466 = load double, ptr %8465, align 8, !tbaa !11
  %8467 = call double @llvm.fmuladd.f64(double 0x3C93CC8A99AF5452, double %8466, double %8458)
  %8468 = load ptr, ptr %7, align 8, !tbaa !9
  %8469 = load i32, ptr %12, align 4, !tbaa !5
  %8470 = load i32, ptr %8, align 4, !tbaa !5
  %8471 = mul nsw i32 55, %8470
  %8472 = add nsw i32 %8469, %8471
  %8473 = sext i32 %8472 to i64
  %8474 = getelementptr inbounds double, ptr %8468, i64 %8473
  %8475 = load double, ptr %8474, align 8, !tbaa !11
  %8476 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %8475, double %8467)
  %8477 = load ptr, ptr %7, align 8, !tbaa !9
  %8478 = load i32, ptr %12, align 4, !tbaa !5
  %8479 = load i32, ptr %8, align 4, !tbaa !5
  %8480 = mul nsw i32 56, %8479
  %8481 = add nsw i32 %8478, %8480
  %8482 = sext i32 %8481 to i64
  %8483 = getelementptr inbounds double, ptr %8477, i64 %8482
  %8484 = load double, ptr %8483, align 8, !tbaa !11
  %8485 = call double @llvm.fmuladd.f64(double 0x3C8974B2334F2346, double %8484, double %8476)
  %8486 = load ptr, ptr %7, align 8, !tbaa !9
  %8487 = load i32, ptr %12, align 4, !tbaa !5
  %8488 = load i32, ptr %8, align 4, !tbaa !5
  %8489 = mul nsw i32 57, %8488
  %8490 = add nsw i32 %8487, %8489
  %8491 = sext i32 %8490 to i64
  %8492 = getelementptr inbounds double, ptr %8486, i64 %8491
  %8493 = load double, ptr %8492, align 8, !tbaa !11
  %8494 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %8493, double %8485)
  %8495 = load ptr, ptr %7, align 8, !tbaa !9
  %8496 = load i32, ptr %12, align 4, !tbaa !5
  %8497 = load i32, ptr %8, align 4, !tbaa !5
  %8498 = mul nsw i32 58, %8497
  %8499 = add nsw i32 %8496, %8498
  %8500 = sext i32 %8499 to i64
  %8501 = getelementptr inbounds double, ptr %8495, i64 %8500
  %8502 = load double, ptr %8501, align 8, !tbaa !11
  %8503 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %8502, double %8494)
  %8504 = load ptr, ptr %7, align 8, !tbaa !9
  %8505 = load i32, ptr %12, align 4, !tbaa !5
  %8506 = load i32, ptr %8, align 4, !tbaa !5
  %8507 = mul nsw i32 59, %8506
  %8508 = add nsw i32 %8505, %8507
  %8509 = sext i32 %8508 to i64
  %8510 = getelementptr inbounds double, ptr %8504, i64 %8509
  %8511 = load double, ptr %8510, align 8, !tbaa !11
  %8512 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %8511, double %8503)
  %8513 = load ptr, ptr %7, align 8, !tbaa !9
  %8514 = load i32, ptr %12, align 4, !tbaa !5
  %8515 = load i32, ptr %8, align 4, !tbaa !5
  %8516 = mul nsw i32 60, %8515
  %8517 = add nsw i32 %8514, %8516
  %8518 = sext i32 %8517 to i64
  %8519 = getelementptr inbounds double, ptr %8513, i64 %8518
  %8520 = load double, ptr %8519, align 8, !tbaa !11
  %8521 = call double @llvm.fmuladd.f64(double 0xBFB8DF388696F554, double %8520, double %8512)
  %8522 = load ptr, ptr %7, align 8, !tbaa !9
  %8523 = load i32, ptr %12, align 4, !tbaa !5
  %8524 = load i32, ptr %8, align 4, !tbaa !5
  %8525 = mul nsw i32 61, %8524
  %8526 = add nsw i32 %8523, %8525
  %8527 = sext i32 %8526 to i64
  %8528 = getelementptr inbounds double, ptr %8522, i64 %8527
  %8529 = load double, ptr %8528, align 8, !tbaa !11
  %8530 = call double @llvm.fmuladd.f64(double 0x3FD0C7817D9C3121, double %8529, double %8521)
  %8531 = load ptr, ptr %7, align 8, !tbaa !9
  %8532 = load i32, ptr %12, align 4, !tbaa !5
  %8533 = load i32, ptr %8, align 4, !tbaa !5
  %8534 = mul nsw i32 62, %8533
  %8535 = add nsw i32 %8532, %8534
  %8536 = sext i32 %8535 to i64
  %8537 = getelementptr inbounds double, ptr %8531, i64 %8536
  %8538 = load double, ptr %8537, align 8, !tbaa !11
  %8539 = call double @llvm.fmuladd.f64(double 0x4007001BD846D0AE, double %8538, double %8530)
  %8540 = load ptr, ptr %7, align 8, !tbaa !9
  %8541 = load i32, ptr %12, align 4, !tbaa !5
  %8542 = load i32, ptr %8, align 4, !tbaa !5
  %8543 = mul nsw i32 63, %8542
  %8544 = add nsw i32 %8541, %8543
  %8545 = sext i32 %8544 to i64
  %8546 = getelementptr inbounds double, ptr %8540, i64 %8545
  %8547 = load double, ptr %8546, align 8, !tbaa !11
  %8548 = call double @llvm.fmuladd.f64(double 0x3FD08C54FF1019FC, double %8547, double %8539)
  %8549 = load ptr, ptr %7, align 8, !tbaa !9
  %8550 = load i32, ptr %12, align 4, !tbaa !5
  %8551 = load i32, ptr %8, align 4, !tbaa !5
  %8552 = mul nsw i32 64, %8551
  %8553 = add nsw i32 %8550, %8552
  %8554 = sext i32 %8553 to i64
  %8555 = getelementptr inbounds double, ptr %8549, i64 %8554
  %8556 = load double, ptr %8555, align 8, !tbaa !11
  %8557 = call double @llvm.fmuladd.f64(double 0xBC9152F9467969C8, double %8556, double %8548)
  %8558 = load ptr, ptr %7, align 8, !tbaa !9
  %8559 = load i32, ptr %12, align 4, !tbaa !5
  %8560 = load i32, ptr %8, align 4, !tbaa !5
  %8561 = mul nsw i32 65, %8560
  %8562 = add nsw i32 %8559, %8561
  %8563 = sext i32 %8562 to i64
  %8564 = getelementptr inbounds double, ptr %8558, i64 %8563
  %8565 = load double, ptr %8564, align 8, !tbaa !11
  %8566 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %8565, double %8557)
  %8567 = load ptr, ptr %7, align 8, !tbaa !9
  %8568 = load i32, ptr %12, align 4, !tbaa !5
  %8569 = load i32, ptr %8, align 4, !tbaa !5
  %8570 = mul nsw i32 66, %8569
  %8571 = add nsw i32 %8568, %8570
  %8572 = sext i32 %8571 to i64
  %8573 = getelementptr inbounds double, ptr %8567, i64 %8572
  %8574 = load double, ptr %8573, align 8, !tbaa !11
  %8575 = call double @llvm.fmuladd.f64(double 0x3C9974B2334F2346, double %8574, double %8566)
  %8576 = load ptr, ptr %7, align 8, !tbaa !9
  %8577 = load i32, ptr %12, align 4, !tbaa !5
  %8578 = load i32, ptr %8, align 4, !tbaa !5
  %8579 = mul nsw i32 67, %8578
  %8580 = add nsw i32 %8577, %8579
  %8581 = sext i32 %8580 to i64
  %8582 = getelementptr inbounds double, ptr %8576, i64 %8581
  %8583 = load double, ptr %8582, align 8, !tbaa !11
  %8584 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %8583, double %8575)
  store double %8584, ptr %11, align 8, !tbaa !11
  %8585 = load double, ptr %11, align 8, !tbaa !11
  %8586 = load ptr, ptr %9, align 8, !tbaa !9
  %8587 = load i32, ptr %12, align 4, !tbaa !5
  %8588 = load i32, ptr %10, align 4, !tbaa !5
  %8589 = mul nsw i32 29, %8588
  %8590 = add nsw i32 %8587, %8589
  %8591 = sext i32 %8590 to i64
  %8592 = getelementptr inbounds double, ptr %8586, i64 %8591
  store double %8585, ptr %8592, align 8, !tbaa !11
  %8593 = load ptr, ptr %7, align 8, !tbaa !9
  %8594 = load i32, ptr %12, align 4, !tbaa !5
  %8595 = load i32, ptr %8, align 4, !tbaa !5
  %8596 = mul nsw i32 36, %8595
  %8597 = add nsw i32 %8594, %8596
  %8598 = sext i32 %8597 to i64
  %8599 = getelementptr inbounds double, ptr %8593, i64 %8598
  %8600 = load double, ptr %8599, align 8, !tbaa !11
  %8601 = load ptr, ptr %7, align 8, !tbaa !9
  %8602 = load i32, ptr %12, align 4, !tbaa !5
  %8603 = load i32, ptr %8, align 4, !tbaa !5
  %8604 = mul nsw i32 37, %8603
  %8605 = add nsw i32 %8602, %8604
  %8606 = sext i32 %8605 to i64
  %8607 = getelementptr inbounds double, ptr %8601, i64 %8606
  %8608 = load double, ptr %8607, align 8, !tbaa !11
  %8609 = fmul double 0x3CA7000000000002, %8608
  %8610 = call double @llvm.fmuladd.f64(double 0xBC9D3FFFFFFFFFFF, double %8600, double %8609)
  %8611 = load ptr, ptr %7, align 8, !tbaa !9
  %8612 = load i32, ptr %12, align 4, !tbaa !5
  %8613 = load i32, ptr %8, align 4, !tbaa !5
  %8614 = mul nsw i32 38, %8613
  %8615 = add nsw i32 %8612, %8614
  %8616 = sext i32 %8615 to i64
  %8617 = getelementptr inbounds double, ptr %8611, i64 %8616
  %8618 = load double, ptr %8617, align 8, !tbaa !11
  %8619 = call double @llvm.fmuladd.f64(double 0x3CA9FFFFFFFFFFFE, double %8618, double %8610)
  %8620 = load ptr, ptr %7, align 8, !tbaa !9
  %8621 = load i32, ptr %12, align 4, !tbaa !5
  %8622 = load i32, ptr %8, align 4, !tbaa !5
  %8623 = mul nsw i32 39, %8622
  %8624 = add nsw i32 %8621, %8623
  %8625 = sext i32 %8624 to i64
  %8626 = getelementptr inbounds double, ptr %8620, i64 %8625
  %8627 = load double, ptr %8626, align 8, !tbaa !11
  %8628 = call double @llvm.fmuladd.f64(double 0xBC60000000000000, double %8627, double %8619)
  %8629 = load ptr, ptr %7, align 8, !tbaa !9
  %8630 = load i32, ptr %12, align 4, !tbaa !5
  %8631 = load i32, ptr %8, align 4, !tbaa !5
  %8632 = mul nsw i32 40, %8631
  %8633 = add nsw i32 %8630, %8632
  %8634 = sext i32 %8633 to i64
  %8635 = getelementptr inbounds double, ptr %8629, i64 %8634
  %8636 = load double, ptr %8635, align 8, !tbaa !11
  %8637 = call double @llvm.fmuladd.f64(double 0x3C7E000000000001, double %8636, double %8628)
  %8638 = load ptr, ptr %7, align 8, !tbaa !9
  %8639 = load i32, ptr %12, align 4, !tbaa !5
  %8640 = load i32, ptr %8, align 4, !tbaa !5
  %8641 = mul nsw i32 41, %8640
  %8642 = add nsw i32 %8639, %8641
  %8643 = sext i32 %8642 to i64
  %8644 = getelementptr inbounds double, ptr %8638, i64 %8643
  %8645 = load double, ptr %8644, align 8, !tbaa !11
  %8646 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %8645, double %8637)
  %8647 = load ptr, ptr %7, align 8, !tbaa !9
  %8648 = load i32, ptr %12, align 4, !tbaa !5
  %8649 = load i32, ptr %8, align 4, !tbaa !5
  %8650 = mul nsw i32 42, %8649
  %8651 = add nsw i32 %8648, %8650
  %8652 = sext i32 %8651 to i64
  %8653 = getelementptr inbounds double, ptr %8647, i64 %8652
  %8654 = load double, ptr %8653, align 8, !tbaa !11
  %8655 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %8654, double %8646)
  %8656 = load ptr, ptr %7, align 8, !tbaa !9
  %8657 = load i32, ptr %12, align 4, !tbaa !5
  %8658 = load i32, ptr %8, align 4, !tbaa !5
  %8659 = mul nsw i32 43, %8658
  %8660 = add nsw i32 %8657, %8659
  %8661 = sext i32 %8660 to i64
  %8662 = getelementptr inbounds double, ptr %8656, i64 %8661
  %8663 = load double, ptr %8662, align 8, !tbaa !11
  %8664 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %8663, double %8655)
  %8665 = load ptr, ptr %7, align 8, !tbaa !9
  %8666 = load i32, ptr %12, align 4, !tbaa !5
  %8667 = load i32, ptr %8, align 4, !tbaa !5
  %8668 = mul nsw i32 44, %8667
  %8669 = add nsw i32 %8666, %8668
  %8670 = sext i32 %8669 to i64
  %8671 = getelementptr inbounds double, ptr %8665, i64 %8670
  %8672 = load double, ptr %8671, align 8, !tbaa !11
  %8673 = call double @llvm.fmuladd.f64(double 0x3C89000000000000, double %8672, double %8664)
  %8674 = load ptr, ptr %7, align 8, !tbaa !9
  %8675 = load i32, ptr %12, align 4, !tbaa !5
  %8676 = load i32, ptr %8, align 4, !tbaa !5
  %8677 = mul nsw i32 45, %8676
  %8678 = add nsw i32 %8675, %8677
  %8679 = sext i32 %8678 to i64
  %8680 = getelementptr inbounds double, ptr %8674, i64 %8679
  %8681 = load double, ptr %8680, align 8, !tbaa !11
  %8682 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %8681, double %8673)
  %8683 = load ptr, ptr %7, align 8, !tbaa !9
  %8684 = load i32, ptr %12, align 4, !tbaa !5
  %8685 = load i32, ptr %8, align 4, !tbaa !5
  %8686 = mul nsw i32 46, %8685
  %8687 = add nsw i32 %8684, %8686
  %8688 = sext i32 %8687 to i64
  %8689 = getelementptr inbounds double, ptr %8683, i64 %8688
  %8690 = load double, ptr %8689, align 8, !tbaa !11
  %8691 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %8690, double %8682)
  %8692 = load ptr, ptr %7, align 8, !tbaa !9
  %8693 = load i32, ptr %12, align 4, !tbaa !5
  %8694 = load i32, ptr %8, align 4, !tbaa !5
  %8695 = mul nsw i32 47, %8694
  %8696 = add nsw i32 %8693, %8695
  %8697 = sext i32 %8696 to i64
  %8698 = getelementptr inbounds double, ptr %8692, i64 %8697
  %8699 = load double, ptr %8698, align 8, !tbaa !11
  %8700 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %8699, double %8691)
  %8701 = load ptr, ptr %7, align 8, !tbaa !9
  %8702 = load i32, ptr %12, align 4, !tbaa !5
  %8703 = load i32, ptr %8, align 4, !tbaa !5
  %8704 = mul nsw i32 48, %8703
  %8705 = add nsw i32 %8702, %8704
  %8706 = sext i32 %8705 to i64
  %8707 = getelementptr inbounds double, ptr %8701, i64 %8706
  %8708 = load double, ptr %8707, align 8, !tbaa !11
  %8709 = call double @llvm.fmuladd.f64(double 0x3FA789B66AF4F458, double %8708, double %8700)
  %8710 = load ptr, ptr %7, align 8, !tbaa !9
  %8711 = load i32, ptr %12, align 4, !tbaa !5
  %8712 = load i32, ptr %8, align 4, !tbaa !5
  %8713 = mul nsw i32 49, %8712
  %8714 = add nsw i32 %8711, %8713
  %8715 = sext i32 %8714 to i64
  %8716 = getelementptr inbounds double, ptr %8710, i64 %8715
  %8717 = load double, ptr %8716, align 8, !tbaa !11
  %8718 = call double @llvm.fmuladd.f64(double 0x3FEC2894019C8AD0, double %8717, double %8709)
  %8719 = load ptr, ptr %7, align 8, !tbaa !9
  %8720 = load i32, ptr %12, align 4, !tbaa !5
  %8721 = load i32, ptr %8, align 4, !tbaa !5
  %8722 = mul nsw i32 50, %8721
  %8723 = add nsw i32 %8720, %8722
  %8724 = sext i32 %8723 to i64
  %8725 = getelementptr inbounds double, ptr %8719, i64 %8724
  %8726 = load double, ptr %8725, align 8, !tbaa !11
  %8727 = call double @llvm.fmuladd.f64(double 0x3FEC2894019C8AC0, double %8726, double %8718)
  %8728 = load ptr, ptr %7, align 8, !tbaa !9
  %8729 = load i32, ptr %12, align 4, !tbaa !5
  %8730 = load i32, ptr %8, align 4, !tbaa !5
  %8731 = mul nsw i32 51, %8730
  %8732 = add nsw i32 %8729, %8731
  %8733 = sext i32 %8732 to i64
  %8734 = getelementptr inbounds double, ptr %8728, i64 %8733
  %8735 = load double, ptr %8734, align 8, !tbaa !11
  %8736 = call double @llvm.fmuladd.f64(double 0x3FA789B66AF4F551, double %8735, double %8727)
  %8737 = load ptr, ptr %7, align 8, !tbaa !9
  %8738 = load i32, ptr %12, align 4, !tbaa !5
  %8739 = load i32, ptr %8, align 4, !tbaa !5
  %8740 = mul nsw i32 52, %8739
  %8741 = add nsw i32 %8738, %8740
  %8742 = sext i32 %8741 to i64
  %8743 = getelementptr inbounds double, ptr %8737, i64 %8742
  %8744 = load double, ptr %8743, align 8, !tbaa !11
  %8745 = call double @llvm.fmuladd.f64(double 0x3C7FD1DEC022EC17, double %8744, double %8736)
  %8746 = load ptr, ptr %7, align 8, !tbaa !9
  %8747 = load i32, ptr %12, align 4, !tbaa !5
  %8748 = load i32, ptr %8, align 4, !tbaa !5
  %8749 = mul nsw i32 53, %8748
  %8750 = add nsw i32 %8747, %8749
  %8751 = sext i32 %8750 to i64
  %8752 = getelementptr inbounds double, ptr %8746, i64 %8751
  %8753 = load double, ptr %8752, align 8, !tbaa !11
  %8754 = call double @llvm.fmuladd.f64(double 0xBCA6A09E667F3BCC, double %8753, double %8745)
  %8755 = load ptr, ptr %7, align 8, !tbaa !9
  %8756 = load i32, ptr %12, align 4, !tbaa !5
  %8757 = load i32, ptr %8, align 4, !tbaa !5
  %8758 = mul nsw i32 54, %8757
  %8759 = add nsw i32 %8756, %8758
  %8760 = sext i32 %8759 to i64
  %8761 = getelementptr inbounds double, ptr %8755, i64 %8760
  %8762 = load double, ptr %8761, align 8, !tbaa !11
  %8763 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %8762, double %8754)
  %8764 = load ptr, ptr %7, align 8, !tbaa !9
  %8765 = load i32, ptr %12, align 4, !tbaa !5
  %8766 = load i32, ptr %8, align 4, !tbaa !5
  %8767 = mul nsw i32 55, %8766
  %8768 = add nsw i32 %8765, %8767
  %8769 = sext i32 %8768 to i64
  %8770 = getelementptr inbounds double, ptr %8764, i64 %8769
  %8771 = load double, ptr %8770, align 8, !tbaa !11
  %8772 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %8771, double %8763)
  %8773 = load ptr, ptr %7, align 8, !tbaa !9
  %8774 = load i32, ptr %12, align 4, !tbaa !5
  %8775 = load i32, ptr %8, align 4, !tbaa !5
  %8776 = mul nsw i32 56, %8775
  %8777 = add nsw i32 %8774, %8776
  %8778 = sext i32 %8777 to i64
  %8779 = getelementptr inbounds double, ptr %8773, i64 %8778
  %8780 = load double, ptr %8779, align 8, !tbaa !11
  %8781 = call double @llvm.fmuladd.f64(double 0xBC81AD7BC01366B8, double %8780, double %8772)
  %8782 = load ptr, ptr %7, align 8, !tbaa !9
  %8783 = load i32, ptr %12, align 4, !tbaa !5
  %8784 = load i32, ptr %8, align 4, !tbaa !5
  %8785 = mul nsw i32 57, %8784
  %8786 = add nsw i32 %8783, %8785
  %8787 = sext i32 %8786 to i64
  %8788 = getelementptr inbounds double, ptr %8782, i64 %8787
  %8789 = load double, ptr %8788, align 8, !tbaa !11
  %8790 = call double @llvm.fmuladd.f64(double 0xBC93CC8A99AF5452, double %8789, double %8781)
  %8791 = load ptr, ptr %7, align 8, !tbaa !9
  %8792 = load i32, ptr %12, align 4, !tbaa !5
  %8793 = load i32, ptr %8, align 4, !tbaa !5
  %8794 = mul nsw i32 58, %8793
  %8795 = add nsw i32 %8792, %8794
  %8796 = sext i32 %8795 to i64
  %8797 = getelementptr inbounds double, ptr %8791, i64 %8796
  %8798 = load double, ptr %8797, align 8, !tbaa !11
  %8799 = call double @llvm.fmuladd.f64(double 0xBC93CC8A99AF5452, double %8798, double %8790)
  %8800 = load ptr, ptr %7, align 8, !tbaa !9
  %8801 = load i32, ptr %12, align 4, !tbaa !5
  %8802 = load i32, ptr %8, align 4, !tbaa !5
  %8803 = mul nsw i32 59, %8802
  %8804 = add nsw i32 %8801, %8803
  %8805 = sext i32 %8804 to i64
  %8806 = getelementptr inbounds double, ptr %8800, i64 %8805
  %8807 = load double, ptr %8806, align 8, !tbaa !11
  %8808 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %8807, double %8799)
  %8809 = load ptr, ptr %7, align 8, !tbaa !9
  %8810 = load i32, ptr %12, align 4, !tbaa !5
  %8811 = load i32, ptr %8, align 4, !tbaa !5
  %8812 = mul nsw i32 60, %8811
  %8813 = add nsw i32 %8810, %8812
  %8814 = sext i32 %8813 to i64
  %8815 = getelementptr inbounds double, ptr %8809, i64 %8814
  %8816 = load double, ptr %8815, align 8, !tbaa !11
  %8817 = call double @llvm.fmuladd.f64(double 0xBC85EB99734B41EF, double %8816, double %8808)
  %8818 = load ptr, ptr %7, align 8, !tbaa !9
  %8819 = load i32, ptr %12, align 4, !tbaa !5
  %8820 = load i32, ptr %8, align 4, !tbaa !5
  %8821 = mul nsw i32 61, %8820
  %8822 = add nsw i32 %8819, %8821
  %8823 = sext i32 %8822 to i64
  %8824 = getelementptr inbounds double, ptr %8818, i64 %8823
  %8825 = load double, ptr %8824, align 8, !tbaa !11
  %8826 = call double @llvm.fmuladd.f64(double 0xBCA80AA84CE72F89, double %8825, double %8817)
  %8827 = load ptr, ptr %7, align 8, !tbaa !9
  %8828 = load i32, ptr %12, align 4, !tbaa !5
  %8829 = load i32, ptr %8, align 4, !tbaa !5
  %8830 = mul nsw i32 62, %8829
  %8831 = add nsw i32 %8828, %8830
  %8832 = sext i32 %8831 to i64
  %8833 = getelementptr inbounds double, ptr %8827, i64 %8832
  %8834 = load double, ptr %8833, align 8, !tbaa !11
  %8835 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %8834, double %8826)
  %8836 = load ptr, ptr %7, align 8, !tbaa !9
  %8837 = load i32, ptr %12, align 4, !tbaa !5
  %8838 = load i32, ptr %8, align 4, !tbaa !5
  %8839 = mul nsw i32 63, %8838
  %8840 = add nsw i32 %8837, %8839
  %8841 = sext i32 %8840 to i64
  %8842 = getelementptr inbounds double, ptr %8836, i64 %8841
  %8843 = load double, ptr %8842, align 8, !tbaa !11
  %8844 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %8843, double %8835)
  %8845 = load ptr, ptr %7, align 8, !tbaa !9
  %8846 = load i32, ptr %12, align 4, !tbaa !5
  %8847 = load i32, ptr %8, align 4, !tbaa !5
  %8848 = mul nsw i32 64, %8847
  %8849 = add nsw i32 %8846, %8848
  %8850 = sext i32 %8849 to i64
  %8851 = getelementptr inbounds double, ptr %8845, i64 %8850
  %8852 = load double, ptr %8851, align 8, !tbaa !11
  %8853 = call double @llvm.fmuladd.f64(double 0xBFA0A4D27CF86DC6, double %8852, double %8844)
  %8854 = load ptr, ptr %7, align 8, !tbaa !9
  %8855 = load i32, ptr %12, align 4, !tbaa !5
  %8856 = load i32, ptr %8, align 4, !tbaa !5
  %8857 = mul nsw i32 65, %8856
  %8858 = add nsw i32 %8855, %8857
  %8859 = sext i32 %8858 to i64
  %8860 = getelementptr inbounds double, ptr %8854, i64 %8859
  %8861 = load double, ptr %8860, align 8, !tbaa !11
  %8862 = call double @llvm.fmuladd.f64(double 0xBFE3E93C07AFC380, double %8861, double %8853)
  %8863 = load ptr, ptr %7, align 8, !tbaa !9
  %8864 = load i32, ptr %12, align 4, !tbaa !5
  %8865 = load i32, ptr %8, align 4, !tbaa !5
  %8866 = mul nsw i32 66, %8865
  %8867 = add nsw i32 %8864, %8866
  %8868 = sext i32 %8867 to i64
  %8869 = getelementptr inbounds double, ptr %8863, i64 %8868
  %8870 = load double, ptr %8869, align 8, !tbaa !11
  %8871 = call double @llvm.fmuladd.f64(double 0xBFE3E93C07AFC37E, double %8870, double %8862)
  %8872 = load ptr, ptr %7, align 8, !tbaa !9
  %8873 = load i32, ptr %12, align 4, !tbaa !5
  %8874 = load i32, ptr %8, align 4, !tbaa !5
  %8875 = mul nsw i32 67, %8874
  %8876 = add nsw i32 %8873, %8875
  %8877 = sext i32 %8876 to i64
  %8878 = getelementptr inbounds double, ptr %8872, i64 %8877
  %8879 = load double, ptr %8878, align 8, !tbaa !11
  %8880 = call double @llvm.fmuladd.f64(double 0xBFA0A4D27CF86DAF, double %8879, double %8871)
  store double %8880, ptr %11, align 8, !tbaa !11
  %8881 = load double, ptr %11, align 8, !tbaa !11
  %8882 = load ptr, ptr %9, align 8, !tbaa !9
  %8883 = load i32, ptr %12, align 4, !tbaa !5
  %8884 = load i32, ptr %10, align 4, !tbaa !5
  %8885 = mul nsw i32 30, %8884
  %8886 = add nsw i32 %8883, %8885
  %8887 = sext i32 %8886 to i64
  %8888 = getelementptr inbounds double, ptr %8882, i64 %8887
  store double %8881, ptr %8888, align 8, !tbaa !11
  %8889 = load ptr, ptr %7, align 8, !tbaa !9
  %8890 = load i32, ptr %12, align 4, !tbaa !5
  %8891 = load i32, ptr %8, align 4, !tbaa !5
  %8892 = mul nsw i32 36, %8891
  %8893 = add nsw i32 %8890, %8892
  %8894 = sext i32 %8893 to i64
  %8895 = getelementptr inbounds double, ptr %8889, i64 %8894
  %8896 = load double, ptr %8895, align 8, !tbaa !11
  %8897 = load ptr, ptr %7, align 8, !tbaa !9
  %8898 = load i32, ptr %12, align 4, !tbaa !5
  %8899 = load i32, ptr %8, align 4, !tbaa !5
  %8900 = mul nsw i32 37, %8899
  %8901 = add nsw i32 %8898, %8900
  %8902 = sext i32 %8901 to i64
  %8903 = getelementptr inbounds double, ptr %8897, i64 %8902
  %8904 = load double, ptr %8903, align 8, !tbaa !11
  %8905 = fmul double 0x3C7FFFFFFFFFFFFF, %8904
  %8906 = call double @llvm.fmuladd.f64(double 0xBC89FFFFFFFFFFFF, double %8896, double %8905)
  %8907 = load ptr, ptr %7, align 8, !tbaa !9
  %8908 = load i32, ptr %12, align 4, !tbaa !5
  %8909 = load i32, ptr %8, align 4, !tbaa !5
  %8910 = mul nsw i32 38, %8909
  %8911 = add nsw i32 %8908, %8910
  %8912 = sext i32 %8911 to i64
  %8913 = getelementptr inbounds double, ptr %8907, i64 %8912
  %8914 = load double, ptr %8913, align 8, !tbaa !11
  %8915 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %8914, double %8906)
  %8916 = load ptr, ptr %7, align 8, !tbaa !9
  %8917 = load i32, ptr %12, align 4, !tbaa !5
  %8918 = load i32, ptr %8, align 4, !tbaa !5
  %8919 = mul nsw i32 39, %8918
  %8920 = add nsw i32 %8917, %8919
  %8921 = sext i32 %8920 to i64
  %8922 = getelementptr inbounds double, ptr %8916, i64 %8921
  %8923 = load double, ptr %8922, align 8, !tbaa !11
  %8924 = call double @llvm.fmuladd.f64(double 0xBCC8000000000000, double %8923, double %8915)
  %8925 = load ptr, ptr %7, align 8, !tbaa !9
  %8926 = load i32, ptr %12, align 4, !tbaa !5
  %8927 = load i32, ptr %8, align 4, !tbaa !5
  %8928 = mul nsw i32 40, %8927
  %8929 = add nsw i32 %8926, %8928
  %8930 = sext i32 %8929 to i64
  %8931 = getelementptr inbounds double, ptr %8925, i64 %8930
  %8932 = load double, ptr %8931, align 8, !tbaa !11
  %8933 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %8932, double %8924)
  %8934 = load ptr, ptr %7, align 8, !tbaa !9
  %8935 = load i32, ptr %12, align 4, !tbaa !5
  %8936 = load i32, ptr %8, align 4, !tbaa !5
  %8937 = mul nsw i32 41, %8936
  %8938 = add nsw i32 %8935, %8937
  %8939 = sext i32 %8938 to i64
  %8940 = getelementptr inbounds double, ptr %8934, i64 %8939
  %8941 = load double, ptr %8940, align 8, !tbaa !11
  %8942 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %8941, double %8933)
  %8943 = load ptr, ptr %7, align 8, !tbaa !9
  %8944 = load i32, ptr %12, align 4, !tbaa !5
  %8945 = load i32, ptr %8, align 4, !tbaa !5
  %8946 = mul nsw i32 42, %8945
  %8947 = add nsw i32 %8944, %8946
  %8948 = sext i32 %8947 to i64
  %8949 = getelementptr inbounds double, ptr %8943, i64 %8948
  %8950 = load double, ptr %8949, align 8, !tbaa !11
  %8951 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %8950, double %8942)
  %8952 = load ptr, ptr %7, align 8, !tbaa !9
  %8953 = load i32, ptr %12, align 4, !tbaa !5
  %8954 = load i32, ptr %8, align 4, !tbaa !5
  %8955 = mul nsw i32 43, %8954
  %8956 = add nsw i32 %8953, %8955
  %8957 = sext i32 %8956 to i64
  %8958 = getelementptr inbounds double, ptr %8952, i64 %8957
  %8959 = load double, ptr %8958, align 8, !tbaa !11
  %8960 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %8959, double %8951)
  %8961 = load ptr, ptr %7, align 8, !tbaa !9
  %8962 = load i32, ptr %12, align 4, !tbaa !5
  %8963 = load i32, ptr %8, align 4, !tbaa !5
  %8964 = mul nsw i32 44, %8963
  %8965 = add nsw i32 %8962, %8964
  %8966 = sext i32 %8965 to i64
  %8967 = getelementptr inbounds double, ptr %8961, i64 %8966
  %8968 = load double, ptr %8967, align 8, !tbaa !11
  %8969 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %8968, double %8960)
  %8970 = load ptr, ptr %7, align 8, !tbaa !9
  %8971 = load i32, ptr %12, align 4, !tbaa !5
  %8972 = load i32, ptr %8, align 4, !tbaa !5
  %8973 = mul nsw i32 45, %8972
  %8974 = add nsw i32 %8971, %8973
  %8975 = sext i32 %8974 to i64
  %8976 = getelementptr inbounds double, ptr %8970, i64 %8975
  %8977 = load double, ptr %8976, align 8, !tbaa !11
  %8978 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %8977, double %8969)
  %8979 = load ptr, ptr %7, align 8, !tbaa !9
  %8980 = load i32, ptr %12, align 4, !tbaa !5
  %8981 = load i32, ptr %8, align 4, !tbaa !5
  %8982 = mul nsw i32 46, %8981
  %8983 = add nsw i32 %8980, %8982
  %8984 = sext i32 %8983 to i64
  %8985 = getelementptr inbounds double, ptr %8979, i64 %8984
  %8986 = load double, ptr %8985, align 8, !tbaa !11
  %8987 = call double @llvm.fmuladd.f64(double 0xBCB0000000000000, double %8986, double %8978)
  %8988 = load ptr, ptr %7, align 8, !tbaa !9
  %8989 = load i32, ptr %12, align 4, !tbaa !5
  %8990 = load i32, ptr %8, align 4, !tbaa !5
  %8991 = mul nsw i32 47, %8990
  %8992 = add nsw i32 %8989, %8991
  %8993 = sext i32 %8992 to i64
  %8994 = getelementptr inbounds double, ptr %8988, i64 %8993
  %8995 = load double, ptr %8994, align 8, !tbaa !11
  %8996 = call double @llvm.fmuladd.f64(double 0xBCC4000000000000, double %8995, double %8987)
  %8997 = load ptr, ptr %7, align 8, !tbaa !9
  %8998 = load i32, ptr %12, align 4, !tbaa !5
  %8999 = load i32, ptr %8, align 4, !tbaa !5
  %9000 = mul nsw i32 48, %8999
  %9001 = add nsw i32 %8998, %9000
  %9002 = sext i32 %9001 to i64
  %9003 = getelementptr inbounds double, ptr %8997, i64 %9002
  %9004 = load double, ptr %9003, align 8, !tbaa !11
  %9005 = call double @llvm.fmuladd.f64(double 0xBFACD49071EC5F52, double %9004, double %8996)
  %9006 = load ptr, ptr %7, align 8, !tbaa !9
  %9007 = load i32, ptr %12, align 4, !tbaa !5
  %9008 = load i32, ptr %8, align 4, !tbaa !5
  %9009 = mul nsw i32 49, %9008
  %9010 = add nsw i32 %9007, %9009
  %9011 = sext i32 %9010 to i64
  %9012 = getelementptr inbounds double, ptr %9006, i64 %9011
  %9013 = load double, ptr %9012, align 8, !tbaa !11
  %9014 = call double @llvm.fmuladd.f64(double 0x3FCEFDC8894D082A, double %9013, double %9005)
  %9015 = load ptr, ptr %7, align 8, !tbaa !9
  %9016 = load i32, ptr %12, align 4, !tbaa !5
  %9017 = load i32, ptr %8, align 4, !tbaa !5
  %9018 = mul nsw i32 50, %9017
  %9019 = add nsw i32 %9016, %9018
  %9020 = sext i32 %9019 to i64
  %9021 = getelementptr inbounds double, ptr %9015, i64 %9020
  %9022 = load double, ptr %9021, align 8, !tbaa !11
  %9023 = call double @llvm.fmuladd.f64(double 0xBFDD2EB9CCB3BDE5, double %9022, double %9014)
  %9024 = load ptr, ptr %7, align 8, !tbaa !9
  %9025 = load i32, ptr %12, align 4, !tbaa !5
  %9026 = load i32, ptr %8, align 4, !tbaa !5
  %9027 = mul nsw i32 51, %9026
  %9028 = add nsw i32 %9025, %9027
  %9029 = sext i32 %9028 to i64
  %9030 = getelementptr inbounds double, ptr %9024, i64 %9029
  %9031 = load double, ptr %9030, align 8, !tbaa !11
  %9032 = call double @llvm.fmuladd.f64(double 0xC01569E165D79415, double %9031, double %9023)
  %9033 = load ptr, ptr %7, align 8, !tbaa !9
  %9034 = load i32, ptr %12, align 4, !tbaa !5
  %9035 = load i32, ptr %8, align 4, !tbaa !5
  %9036 = mul nsw i32 52, %9035
  %9037 = add nsw i32 %9034, %9036
  %9038 = sext i32 %9037 to i64
  %9039 = getelementptr inbounds double, ptr %9033, i64 %9038
  %9040 = load double, ptr %9039, align 8, !tbaa !11
  %9041 = call double @llvm.fmuladd.f64(double 0x3C91AD7BC01366B7, double %9040, double %9032)
  %9042 = load ptr, ptr %7, align 8, !tbaa !9
  %9043 = load i32, ptr %12, align 4, !tbaa !5
  %9044 = load i32, ptr %8, align 4, !tbaa !5
  %9045 = mul nsw i32 53, %9044
  %9046 = add nsw i32 %9043, %9045
  %9047 = sext i32 %9046 to i64
  %9048 = getelementptr inbounds double, ptr %9042, i64 %9047
  %9049 = load double, ptr %9048, align 8, !tbaa !11
  %9050 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %9049, double %9041)
  %9051 = load ptr, ptr %7, align 8, !tbaa !9
  %9052 = load i32, ptr %12, align 4, !tbaa !5
  %9053 = load i32, ptr %8, align 4, !tbaa !5
  %9054 = mul nsw i32 54, %9053
  %9055 = add nsw i32 %9052, %9054
  %9056 = sext i32 %9055 to i64
  %9057 = getelementptr inbounds double, ptr %9051, i64 %9056
  %9058 = load double, ptr %9057, align 8, !tbaa !11
  %9059 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %9058, double %9050)
  %9060 = load ptr, ptr %7, align 8, !tbaa !9
  %9061 = load i32, ptr %12, align 4, !tbaa !5
  %9062 = load i32, ptr %8, align 4, !tbaa !5
  %9063 = mul nsw i32 55, %9062
  %9064 = add nsw i32 %9061, %9063
  %9065 = sext i32 %9064 to i64
  %9066 = getelementptr inbounds double, ptr %9060, i64 %9065
  %9067 = load double, ptr %9066, align 8, !tbaa !11
  %9068 = call double @llvm.fmuladd.f64(double 0x3CC0F876CCDF6CD9, double %9067, double %9059)
  %9069 = load ptr, ptr %7, align 8, !tbaa !9
  %9070 = load i32, ptr %12, align 4, !tbaa !5
  %9071 = load i32, ptr %8, align 4, !tbaa !5
  %9072 = mul nsw i32 57, %9071
  %9073 = add nsw i32 %9070, %9072
  %9074 = sext i32 %9073 to i64
  %9075 = getelementptr inbounds double, ptr %9069, i64 %9074
  %9076 = load double, ptr %9075, align 8, !tbaa !11
  %9077 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %9076, double %9068)
  %9078 = load ptr, ptr %7, align 8, !tbaa !9
  %9079 = load i32, ptr %12, align 4, !tbaa !5
  %9080 = load i32, ptr %8, align 4, !tbaa !5
  %9081 = mul nsw i32 58, %9080
  %9082 = add nsw i32 %9079, %9081
  %9083 = sext i32 %9082 to i64
  %9084 = getelementptr inbounds double, ptr %9078, i64 %9083
  %9085 = load double, ptr %9084, align 8, !tbaa !11
  %9086 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %9085, double %9077)
  %9087 = load ptr, ptr %7, align 8, !tbaa !9
  %9088 = load i32, ptr %12, align 4, !tbaa !5
  %9089 = load i32, ptr %8, align 4, !tbaa !5
  %9090 = mul nsw i32 59, %9089
  %9091 = add nsw i32 %9088, %9090
  %9092 = sext i32 %9091 to i64
  %9093 = getelementptr inbounds double, ptr %9087, i64 %9092
  %9094 = load double, ptr %9093, align 8, !tbaa !11
  %9095 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %9094, double %9086)
  %9096 = load ptr, ptr %7, align 8, !tbaa !9
  %9097 = load i32, ptr %12, align 4, !tbaa !5
  %9098 = load i32, ptr %8, align 4, !tbaa !5
  %9099 = mul nsw i32 60, %9098
  %9100 = add nsw i32 %9097, %9099
  %9101 = sext i32 %9100 to i64
  %9102 = getelementptr inbounds double, ptr %9096, i64 %9101
  %9103 = load double, ptr %9102, align 8, !tbaa !11
  %9104 = call double @llvm.fmuladd.f64(double 0x3C66A09E667F3BCC, double %9103, double %9095)
  %9105 = load ptr, ptr %7, align 8, !tbaa !9
  %9106 = load i32, ptr %12, align 4, !tbaa !5
  %9107 = load i32, ptr %8, align 4, !tbaa !5
  %9108 = mul nsw i32 61, %9107
  %9109 = add nsw i32 %9106, %9108
  %9110 = sext i32 %9109 to i64
  %9111 = getelementptr inbounds double, ptr %9105, i64 %9110
  %9112 = load double, ptr %9111, align 8, !tbaa !11
  %9113 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %9112, double %9104)
  %9114 = load ptr, ptr %7, align 8, !tbaa !9
  %9115 = load i32, ptr %12, align 4, !tbaa !5
  %9116 = load i32, ptr %8, align 4, !tbaa !5
  %9117 = mul nsw i32 62, %9116
  %9118 = add nsw i32 %9115, %9117
  %9119 = sext i32 %9118 to i64
  %9120 = getelementptr inbounds double, ptr %9114, i64 %9119
  %9121 = load double, ptr %9120, align 8, !tbaa !11
  %9122 = call double @llvm.fmuladd.f64(double 0x3CA0F876CCDF6CD8, double %9121, double %9113)
  %9123 = load ptr, ptr %7, align 8, !tbaa !9
  %9124 = load i32, ptr %12, align 4, !tbaa !5
  %9125 = load i32, ptr %8, align 4, !tbaa !5
  %9126 = mul nsw i32 63, %9125
  %9127 = add nsw i32 %9124, %9126
  %9128 = sext i32 %9127 to i64
  %9129 = getelementptr inbounds double, ptr %9123, i64 %9128
  %9130 = load double, ptr %9129, align 8, !tbaa !11
  %9131 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %9130, double %9122)
  %9132 = load ptr, ptr %7, align 8, !tbaa !9
  %9133 = load i32, ptr %12, align 4, !tbaa !5
  %9134 = load i32, ptr %8, align 4, !tbaa !5
  %9135 = mul nsw i32 64, %9134
  %9136 = add nsw i32 %9133, %9135
  %9137 = sext i32 %9136 to i64
  %9138 = getelementptr inbounds double, ptr %9132, i64 %9137
  %9139 = load double, ptr %9138, align 8, !tbaa !11
  %9140 = call double @llvm.fmuladd.f64(double 0x3FA462D8D66D7FC4, double %9139, double %9131)
  %9141 = load ptr, ptr %7, align 8, !tbaa !9
  %9142 = load i32, ptr %12, align 4, !tbaa !5
  %9143 = load i32, ptr %8, align 4, !tbaa !5
  %9144 = mul nsw i32 65, %9143
  %9145 = add nsw i32 %9142, %9144
  %9146 = sext i32 %9145 to i64
  %9147 = getelementptr inbounds double, ptr %9141, i64 %9146
  %9148 = load double, ptr %9147, align 8, !tbaa !11
  %9149 = call double @llvm.fmuladd.f64(double 0xBFC5EA083165C4F6, double %9148, double %9140)
  %9150 = load ptr, ptr %7, align 8, !tbaa !9
  %9151 = load i32, ptr %12, align 4, !tbaa !5
  %9152 = load i32, ptr %8, align 4, !tbaa !5
  %9153 = mul nsw i32 66, %9152
  %9154 = add nsw i32 %9151, %9153
  %9155 = sext i32 %9154 to i64
  %9156 = getelementptr inbounds double, ptr %9150, i64 %9155
  %9157 = load double, ptr %9156, align 8, !tbaa !11
  %9158 = call double @llvm.fmuladd.f64(double 0x3FD4A299D1E9700E, double %9157, double %9149)
  %9159 = load ptr, ptr %7, align 8, !tbaa !9
  %9160 = load i32, ptr %12, align 4, !tbaa !5
  %9161 = load i32, ptr %8, align 4, !tbaa !5
  %9162 = mul nsw i32 67, %9161
  %9163 = add nsw i32 %9160, %9162
  %9164 = sext i32 %9163 to i64
  %9165 = getelementptr inbounds double, ptr %9159, i64 %9164
  %9166 = load double, ptr %9165, align 8, !tbaa !11
  %9167 = call double @llvm.fmuladd.f64(double 0x400E488CB8C1EA74, double %9166, double %9158)
  store double %9167, ptr %11, align 8, !tbaa !11
  %9168 = load double, ptr %11, align 8, !tbaa !11
  %9169 = load ptr, ptr %9, align 8, !tbaa !9
  %9170 = load i32, ptr %12, align 4, !tbaa !5
  %9171 = load i32, ptr %10, align 4, !tbaa !5
  %9172 = mul nsw i32 31, %9171
  %9173 = add nsw i32 %9170, %9172
  %9174 = sext i32 %9173 to i64
  %9175 = getelementptr inbounds double, ptr %9169, i64 %9174
  store double %9168, ptr %9175, align 8, !tbaa !11
  %9176 = load ptr, ptr %7, align 8, !tbaa !9
  %9177 = load i32, ptr %12, align 4, !tbaa !5
  %9178 = load i32, ptr %8, align 4, !tbaa !5
  %9179 = mul nsw i32 36, %9178
  %9180 = add nsw i32 %9177, %9179
  %9181 = sext i32 %9180 to i64
  %9182 = getelementptr inbounds double, ptr %9176, i64 %9181
  %9183 = load double, ptr %9182, align 8, !tbaa !11
  %9184 = load ptr, ptr %7, align 8, !tbaa !9
  %9185 = load i32, ptr %12, align 4, !tbaa !5
  %9186 = load i32, ptr %8, align 4, !tbaa !5
  %9187 = mul nsw i32 37, %9186
  %9188 = add nsw i32 %9185, %9187
  %9189 = sext i32 %9188 to i64
  %9190 = getelementptr inbounds double, ptr %9184, i64 %9189
  %9191 = load double, ptr %9190, align 8, !tbaa !11
  %9192 = fmul double 0x3CA2BFFFFFFFFFFF, %9191
  %9193 = call double @llvm.fmuladd.f64(double 0x3CA7800000000001, double %9183, double %9192)
  %9194 = load ptr, ptr %7, align 8, !tbaa !9
  %9195 = load i32, ptr %12, align 4, !tbaa !5
  %9196 = load i32, ptr %8, align 4, !tbaa !5
  %9197 = mul nsw i32 38, %9196
  %9198 = add nsw i32 %9195, %9197
  %9199 = sext i32 %9198 to i64
  %9200 = getelementptr inbounds double, ptr %9194, i64 %9199
  %9201 = load double, ptr %9200, align 8, !tbaa !11
  %9202 = call double @llvm.fmuladd.f64(double 0x3C91000000000000, double %9201, double %9193)
  %9203 = load ptr, ptr %7, align 8, !tbaa !9
  %9204 = load i32, ptr %12, align 4, !tbaa !5
  %9205 = load i32, ptr %8, align 4, !tbaa !5
  %9206 = mul nsw i32 39, %9205
  %9207 = add nsw i32 %9204, %9206
  %9208 = sext i32 %9207 to i64
  %9209 = getelementptr inbounds double, ptr %9203, i64 %9208
  %9210 = load double, ptr %9209, align 8, !tbaa !11
  %9211 = call double @llvm.fmuladd.f64(double 0x3CA5FFFFFFFFFFFF, double %9210, double %9202)
  %9212 = load ptr, ptr %7, align 8, !tbaa !9
  %9213 = load i32, ptr %12, align 4, !tbaa !5
  %9214 = load i32, ptr %8, align 4, !tbaa !5
  %9215 = mul nsw i32 40, %9214
  %9216 = add nsw i32 %9213, %9215
  %9217 = sext i32 %9216 to i64
  %9218 = getelementptr inbounds double, ptr %9212, i64 %9217
  %9219 = load double, ptr %9218, align 8, !tbaa !11
  %9220 = call double @llvm.fmuladd.f64(double 0x3CB91FFFFFFFFFFF, double %9219, double %9211)
  %9221 = load ptr, ptr %7, align 8, !tbaa !9
  %9222 = load i32, ptr %12, align 4, !tbaa !5
  %9223 = load i32, ptr %8, align 4, !tbaa !5
  %9224 = mul nsw i32 41, %9223
  %9225 = add nsw i32 %9222, %9224
  %9226 = sext i32 %9225 to i64
  %9227 = getelementptr inbounds double, ptr %9221, i64 %9226
  %9228 = load double, ptr %9227, align 8, !tbaa !11
  %9229 = call double @llvm.fmuladd.f64(double 0x3CAE000000000002, double %9228, double %9220)
  %9230 = load ptr, ptr %7, align 8, !tbaa !9
  %9231 = load i32, ptr %12, align 4, !tbaa !5
  %9232 = load i32, ptr %8, align 4, !tbaa !5
  %9233 = mul nsw i32 42, %9232
  %9234 = add nsw i32 %9231, %9233
  %9235 = sext i32 %9234 to i64
  %9236 = getelementptr inbounds double, ptr %9230, i64 %9235
  %9237 = load double, ptr %9236, align 8, !tbaa !11
  %9238 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %9237, double %9229)
  %9239 = load ptr, ptr %7, align 8, !tbaa !9
  %9240 = load i32, ptr %12, align 4, !tbaa !5
  %9241 = load i32, ptr %8, align 4, !tbaa !5
  %9242 = mul nsw i32 43, %9241
  %9243 = add nsw i32 %9240, %9242
  %9244 = sext i32 %9243 to i64
  %9245 = getelementptr inbounds double, ptr %9239, i64 %9244
  %9246 = load double, ptr %9245, align 8, !tbaa !11
  %9247 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %9246, double %9238)
  %9248 = load ptr, ptr %7, align 8, !tbaa !9
  %9249 = load i32, ptr %12, align 4, !tbaa !5
  %9250 = load i32, ptr %8, align 4, !tbaa !5
  %9251 = mul nsw i32 44, %9250
  %9252 = add nsw i32 %9249, %9251
  %9253 = sext i32 %9252 to i64
  %9254 = getelementptr inbounds double, ptr %9248, i64 %9253
  %9255 = load double, ptr %9254, align 8, !tbaa !11
  %9256 = call double @llvm.fmuladd.f64(double 0xBC71FFFFFFFFFFFF, double %9255, double %9247)
  %9257 = load ptr, ptr %7, align 8, !tbaa !9
  %9258 = load i32, ptr %12, align 4, !tbaa !5
  %9259 = load i32, ptr %8, align 4, !tbaa !5
  %9260 = mul nsw i32 45, %9259
  %9261 = add nsw i32 %9258, %9260
  %9262 = sext i32 %9261 to i64
  %9263 = getelementptr inbounds double, ptr %9257, i64 %9262
  %9264 = load double, ptr %9263, align 8, !tbaa !11
  %9265 = call double @llvm.fmuladd.f64(double 0x3CB1000000000001, double %9264, double %9256)
  %9266 = load ptr, ptr %7, align 8, !tbaa !9
  %9267 = load i32, ptr %12, align 4, !tbaa !5
  %9268 = load i32, ptr %8, align 4, !tbaa !5
  %9269 = mul nsw i32 46, %9268
  %9270 = add nsw i32 %9267, %9269
  %9271 = sext i32 %9270 to i64
  %9272 = getelementptr inbounds double, ptr %9266, i64 %9271
  %9273 = load double, ptr %9272, align 8, !tbaa !11
  %9274 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %9273, double %9265)
  %9275 = load ptr, ptr %7, align 8, !tbaa !9
  %9276 = load i32, ptr %12, align 4, !tbaa !5
  %9277 = load i32, ptr %8, align 4, !tbaa !5
  %9278 = mul nsw i32 47, %9277
  %9279 = add nsw i32 %9276, %9278
  %9280 = sext i32 %9279 to i64
  %9281 = getelementptr inbounds double, ptr %9275, i64 %9280
  %9282 = load double, ptr %9281, align 8, !tbaa !11
  %9283 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %9282, double %9274)
  %9284 = load ptr, ptr %7, align 8, !tbaa !9
  %9285 = load i32, ptr %12, align 4, !tbaa !5
  %9286 = load i32, ptr %8, align 4, !tbaa !5
  %9287 = mul nsw i32 48, %9286
  %9288 = add nsw i32 %9285, %9287
  %9289 = sext i32 %9288 to i64
  %9290 = getelementptr inbounds double, ptr %9284, i64 %9289
  %9291 = load double, ptr %9290, align 8, !tbaa !11
  %9292 = call double @llvm.fmuladd.f64(double 0x3FD6F2A1D7A49290, double %9291, double %9283)
  %9293 = load ptr, ptr %7, align 8, !tbaa !9
  %9294 = load i32, ptr %12, align 4, !tbaa !5
  %9295 = load i32, ptr %8, align 4, !tbaa !5
  %9296 = mul nsw i32 49, %9295
  %9297 = add nsw i32 %9294, %9296
  %9298 = sext i32 %9297 to i64
  %9299 = getelementptr inbounds double, ptr %9293, i64 %9298
  %9300 = load double, ptr %9299, align 8, !tbaa !11
  %9301 = call double @llvm.fmuladd.f64(double 0x3FEAEBF44A8E7A7E, double %9300, double %9292)
  %9302 = load ptr, ptr %7, align 8, !tbaa !9
  %9303 = load i32, ptr %12, align 4, !tbaa !5
  %9304 = load i32, ptr %8, align 4, !tbaa !5
  %9305 = mul nsw i32 50, %9304
  %9306 = add nsw i32 %9303, %9305
  %9307 = sext i32 %9306 to i64
  %9308 = getelementptr inbounds double, ptr %9302, i64 %9307
  %9309 = load double, ptr %9308, align 8, !tbaa !11
  %9310 = call double @llvm.fmuladd.f64(double 0x3FEAEBF44A8E7A78, double %9309, double %9301)
  %9311 = load ptr, ptr %7, align 8, !tbaa !9
  %9312 = load i32, ptr %12, align 4, !tbaa !5
  %9313 = load i32, ptr %8, align 4, !tbaa !5
  %9314 = mul nsw i32 51, %9313
  %9315 = add nsw i32 %9312, %9314
  %9316 = sext i32 %9315 to i64
  %9317 = getelementptr inbounds double, ptr %9311, i64 %9316
  %9318 = load double, ptr %9317, align 8, !tbaa !11
  %9319 = call double @llvm.fmuladd.f64(double 0x3FD6F2A1D7A492C1, double %9318, double %9310)
  %9320 = load ptr, ptr %7, align 8, !tbaa !9
  %9321 = load i32, ptr %12, align 4, !tbaa !5
  %9322 = load i32, ptr %8, align 4, !tbaa !5
  %9323 = mul nsw i32 52, %9322
  %9324 = add nsw i32 %9321, %9323
  %9325 = sext i32 %9324 to i64
  %9326 = getelementptr inbounds double, ptr %9320, i64 %9325
  %9327 = load double, ptr %9326, align 8, !tbaa !11
  %9328 = call double @llvm.fmuladd.f64(double 0x3CC689FDC818BC8F, double %9327, double %9319)
  %9329 = load ptr, ptr %7, align 8, !tbaa !9
  %9330 = load i32, ptr %12, align 4, !tbaa !5
  %9331 = load i32, ptr %8, align 4, !tbaa !5
  %9332 = mul nsw i32 53, %9331
  %9333 = add nsw i32 %9330, %9332
  %9334 = sext i32 %9333 to i64
  %9335 = getelementptr inbounds double, ptr %9329, i64 %9334
  %9336 = load double, ptr %9335, align 8, !tbaa !11
  %9337 = call double @llvm.fmuladd.f64(double 0x3CB16999E4DFE903, double %9336, double %9328)
  %9338 = load ptr, ptr %7, align 8, !tbaa !9
  %9339 = load i32, ptr %12, align 4, !tbaa !5
  %9340 = load i32, ptr %8, align 4, !tbaa !5
  %9341 = mul nsw i32 54, %9340
  %9342 = add nsw i32 %9339, %9341
  %9343 = sext i32 %9342 to i64
  %9344 = getelementptr inbounds double, ptr %9338, i64 %9343
  %9345 = load double, ptr %9344, align 8, !tbaa !11
  %9346 = call double @llvm.fmuladd.f64(double 0xBC880AA84CE72F89, double %9345, double %9337)
  %9347 = load ptr, ptr %7, align 8, !tbaa !9
  %9348 = load i32, ptr %12, align 4, !tbaa !5
  %9349 = load i32, ptr %8, align 4, !tbaa !5
  %9350 = mul nsw i32 55, %9349
  %9351 = add nsw i32 %9348, %9350
  %9352 = sext i32 %9351 to i64
  %9353 = getelementptr inbounds double, ptr %9347, i64 %9352
  %9354 = load double, ptr %9353, align 8, !tbaa !11
  %9355 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %9354, double %9346)
  %9356 = load ptr, ptr %7, align 8, !tbaa !9
  %9357 = load i32, ptr %12, align 4, !tbaa !5
  %9358 = load i32, ptr %8, align 4, !tbaa !5
  %9359 = mul nsw i32 56, %9358
  %9360 = add nsw i32 %9357, %9359
  %9361 = sext i32 %9360 to i64
  %9362 = getelementptr inbounds double, ptr %9356, i64 %9361
  %9363 = load double, ptr %9362, align 8, !tbaa !11
  %9364 = call double @llvm.fmuladd.f64(double 0xBCAF4A1B09BBF0AE, double %9363, double %9355)
  %9365 = load ptr, ptr %7, align 8, !tbaa !9
  %9366 = load i32, ptr %12, align 4, !tbaa !5
  %9367 = load i32, ptr %8, align 4, !tbaa !5
  %9368 = mul nsw i32 57, %9367
  %9369 = add nsw i32 %9366, %9368
  %9370 = sext i32 %9369 to i64
  %9371 = getelementptr inbounds double, ptr %9365, i64 %9370
  %9372 = load double, ptr %9371, align 8, !tbaa !11
  %9373 = call double @llvm.fmuladd.f64(double 0x3CADB2CFE686FE7D, double %9372, double %9364)
  %9374 = load ptr, ptr %7, align 8, !tbaa !9
  %9375 = load i32, ptr %12, align 4, !tbaa !5
  %9376 = load i32, ptr %8, align 4, !tbaa !5
  %9377 = mul nsw i32 58, %9376
  %9378 = add nsw i32 %9375, %9377
  %9379 = sext i32 %9378 to i64
  %9380 = getelementptr inbounds double, ptr %9374, i64 %9379
  %9381 = load double, ptr %9380, align 8, !tbaa !11
  %9382 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %9381, double %9373)
  %9383 = load ptr, ptr %7, align 8, !tbaa !9
  %9384 = load i32, ptr %12, align 4, !tbaa !5
  %9385 = load i32, ptr %8, align 4, !tbaa !5
  %9386 = mul nsw i32 59, %9385
  %9387 = add nsw i32 %9384, %9386
  %9388 = sext i32 %9387 to i64
  %9389 = getelementptr inbounds double, ptr %9383, i64 %9388
  %9390 = load double, ptr %9389, align 8, !tbaa !11
  %9391 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %9390, double %9382)
  %9392 = load ptr, ptr %7, align 8, !tbaa !9
  %9393 = load i32, ptr %12, align 4, !tbaa !5
  %9394 = load i32, ptr %8, align 4, !tbaa !5
  %9395 = mul nsw i32 60, %9394
  %9396 = add nsw i32 %9393, %9395
  %9397 = sext i32 %9396 to i64
  %9398 = getelementptr inbounds double, ptr %9392, i64 %9397
  %9399 = load double, ptr %9398, align 8, !tbaa !11
  %9400 = call double @llvm.fmuladd.f64(double 0x3C9152F9467969C8, double %9399, double %9391)
  %9401 = load ptr, ptr %7, align 8, !tbaa !9
  %9402 = load i32, ptr %12, align 4, !tbaa !5
  %9403 = load i32, ptr %8, align 4, !tbaa !5
  %9404 = mul nsw i32 61, %9403
  %9405 = add nsw i32 %9402, %9404
  %9406 = sext i32 %9405 to i64
  %9407 = getelementptr inbounds double, ptr %9401, i64 %9406
  %9408 = load double, ptr %9407, align 8, !tbaa !11
  %9409 = call double @llvm.fmuladd.f64(double 0xBCADB2CFE686FE7D, double %9408, double %9400)
  %9410 = load ptr, ptr %7, align 8, !tbaa !9
  %9411 = load i32, ptr %12, align 4, !tbaa !5
  %9412 = load i32, ptr %8, align 4, !tbaa !5
  %9413 = mul nsw i32 62, %9412
  %9414 = add nsw i32 %9411, %9413
  %9415 = sext i32 %9414 to i64
  %9416 = getelementptr inbounds double, ptr %9410, i64 %9415
  %9417 = load double, ptr %9416, align 8, !tbaa !11
  %9418 = call double @llvm.fmuladd.f64(double 0xBCA26280B3476095, double %9417, double %9409)
  %9419 = load ptr, ptr %7, align 8, !tbaa !9
  %9420 = load i32, ptr %12, align 4, !tbaa !5
  %9421 = load i32, ptr %8, align 4, !tbaa !5
  %9422 = mul nsw i32 63, %9421
  %9423 = add nsw i32 %9420, %9422
  %9424 = sext i32 %9423 to i64
  %9425 = getelementptr inbounds double, ptr %9419, i64 %9424
  %9426 = load double, ptr %9425, align 8, !tbaa !11
  %9427 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %9426, double %9418)
  %9428 = load ptr, ptr %7, align 8, !tbaa !9
  %9429 = load i32, ptr %12, align 4, !tbaa !5
  %9430 = load i32, ptr %8, align 4, !tbaa !5
  %9431 = mul nsw i32 64, %9430
  %9432 = add nsw i32 %9429, %9431
  %9433 = sext i32 %9432 to i64
  %9434 = getelementptr inbounds double, ptr %9428, i64 %9433
  %9435 = load double, ptr %9434, align 8, !tbaa !11
  %9436 = call double @llvm.fmuladd.f64(double 0x400E488CB8C1EA66, double %9435, double %9427)
  %9437 = load ptr, ptr %7, align 8, !tbaa !9
  %9438 = load i32, ptr %12, align 4, !tbaa !5
  %9439 = load i32, ptr %8, align 4, !tbaa !5
  %9440 = mul nsw i32 65, %9439
  %9441 = add nsw i32 %9438, %9440
  %9442 = sext i32 %9441 to i64
  %9443 = getelementptr inbounds double, ptr %9437, i64 %9442
  %9444 = load double, ptr %9443, align 8, !tbaa !11
  %9445 = call double @llvm.fmuladd.f64(double 0x3FD4A299D1E9700C, double %9444, double %9436)
  %9446 = load ptr, ptr %7, align 8, !tbaa !9
  %9447 = load i32, ptr %12, align 4, !tbaa !5
  %9448 = load i32, ptr %8, align 4, !tbaa !5
  %9449 = mul nsw i32 66, %9448
  %9450 = add nsw i32 %9447, %9449
  %9451 = sext i32 %9450 to i64
  %9452 = getelementptr inbounds double, ptr %9446, i64 %9451
  %9453 = load double, ptr %9452, align 8, !tbaa !11
  %9454 = call double @llvm.fmuladd.f64(double 0xBFC5EA083165C4F9, double %9453, double %9445)
  %9455 = load ptr, ptr %7, align 8, !tbaa !9
  %9456 = load i32, ptr %12, align 4, !tbaa !5
  %9457 = load i32, ptr %8, align 4, !tbaa !5
  %9458 = mul nsw i32 67, %9457
  %9459 = add nsw i32 %9456, %9458
  %9460 = sext i32 %9459 to i64
  %9461 = getelementptr inbounds double, ptr %9455, i64 %9460
  %9462 = load double, ptr %9461, align 8, !tbaa !11
  %9463 = call double @llvm.fmuladd.f64(double 0x3FA462D8D66D7F94, double %9462, double %9454)
  store double %9463, ptr %11, align 8, !tbaa !11
  %9464 = load double, ptr %11, align 8, !tbaa !11
  %9465 = load ptr, ptr %9, align 8, !tbaa !9
  %9466 = load i32, ptr %12, align 4, !tbaa !5
  %9467 = load i32, ptr %10, align 4, !tbaa !5
  %9468 = mul nsw i32 32, %9467
  %9469 = add nsw i32 %9466, %9468
  %9470 = sext i32 %9469 to i64
  %9471 = getelementptr inbounds double, ptr %9465, i64 %9470
  store double %9464, ptr %9471, align 8, !tbaa !11
  %9472 = load ptr, ptr %7, align 8, !tbaa !9
  %9473 = load i32, ptr %12, align 4, !tbaa !5
  %9474 = load i32, ptr %8, align 4, !tbaa !5
  %9475 = mul nsw i32 36, %9474
  %9476 = add nsw i32 %9473, %9475
  %9477 = sext i32 %9476 to i64
  %9478 = getelementptr inbounds double, ptr %9472, i64 %9477
  %9479 = load double, ptr %9478, align 8, !tbaa !11
  %9480 = load ptr, ptr %7, align 8, !tbaa !9
  %9481 = load i32, ptr %12, align 4, !tbaa !5
  %9482 = load i32, ptr %8, align 4, !tbaa !5
  %9483 = mul nsw i32 37, %9482
  %9484 = add nsw i32 %9481, %9483
  %9485 = sext i32 %9484 to i64
  %9486 = getelementptr inbounds double, ptr %9480, i64 %9485
  %9487 = load double, ptr %9486, align 8, !tbaa !11
  %9488 = fmul double 0xBCA5400000000000, %9487
  %9489 = call double @llvm.fmuladd.f64(double 0xBCC2000000000000, double %9479, double %9488)
  %9490 = load ptr, ptr %7, align 8, !tbaa !9
  %9491 = load i32, ptr %12, align 4, !tbaa !5
  %9492 = load i32, ptr %8, align 4, !tbaa !5
  %9493 = mul nsw i32 38, %9492
  %9494 = add nsw i32 %9491, %9493
  %9495 = sext i32 %9494 to i64
  %9496 = getelementptr inbounds double, ptr %9490, i64 %9495
  %9497 = load double, ptr %9496, align 8, !tbaa !11
  %9498 = call double @llvm.fmuladd.f64(double 0x3CAA800000000002, double %9497, double %9489)
  %9499 = load ptr, ptr %7, align 8, !tbaa !9
  %9500 = load i32, ptr %12, align 4, !tbaa !5
  %9501 = load i32, ptr %8, align 4, !tbaa !5
  %9502 = mul nsw i32 39, %9501
  %9503 = add nsw i32 %9500, %9502
  %9504 = sext i32 %9503 to i64
  %9505 = getelementptr inbounds double, ptr %9499, i64 %9504
  %9506 = load double, ptr %9505, align 8, !tbaa !11
  %9507 = call double @llvm.fmuladd.f64(double 0x3CA9000000000000, double %9506, double %9498)
  %9508 = load ptr, ptr %7, align 8, !tbaa !9
  %9509 = load i32, ptr %12, align 4, !tbaa !5
  %9510 = load i32, ptr %8, align 4, !tbaa !5
  %9511 = mul nsw i32 40, %9510
  %9512 = add nsw i32 %9509, %9511
  %9513 = sext i32 %9512 to i64
  %9514 = getelementptr inbounds double, ptr %9508, i64 %9513
  %9515 = load double, ptr %9514, align 8, !tbaa !11
  %9516 = call double @llvm.fmuladd.f64(double 0x3CA7400000000002, double %9515, double %9507)
  %9517 = load ptr, ptr %7, align 8, !tbaa !9
  %9518 = load i32, ptr %12, align 4, !tbaa !5
  %9519 = load i32, ptr %8, align 4, !tbaa !5
  %9520 = mul nsw i32 41, %9519
  %9521 = add nsw i32 %9518, %9520
  %9522 = sext i32 %9521 to i64
  %9523 = getelementptr inbounds double, ptr %9517, i64 %9522
  %9524 = load double, ptr %9523, align 8, !tbaa !11
  %9525 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %9524, double %9516)
  %9526 = load ptr, ptr %7, align 8, !tbaa !9
  %9527 = load i32, ptr %12, align 4, !tbaa !5
  %9528 = load i32, ptr %8, align 4, !tbaa !5
  %9529 = mul nsw i32 42, %9528
  %9530 = add nsw i32 %9527, %9529
  %9531 = sext i32 %9530 to i64
  %9532 = getelementptr inbounds double, ptr %9526, i64 %9531
  %9533 = load double, ptr %9532, align 8, !tbaa !11
  %9534 = call double @llvm.fmuladd.f64(double 0x3CB7000000000000, double %9533, double %9525)
  %9535 = load ptr, ptr %7, align 8, !tbaa !9
  %9536 = load i32, ptr %12, align 4, !tbaa !5
  %9537 = load i32, ptr %8, align 4, !tbaa !5
  %9538 = mul nsw i32 43, %9537
  %9539 = add nsw i32 %9536, %9538
  %9540 = sext i32 %9539 to i64
  %9541 = getelementptr inbounds double, ptr %9535, i64 %9540
  %9542 = load double, ptr %9541, align 8, !tbaa !11
  %9543 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %9542, double %9534)
  %9544 = load ptr, ptr %7, align 8, !tbaa !9
  %9545 = load i32, ptr %12, align 4, !tbaa !5
  %9546 = load i32, ptr %8, align 4, !tbaa !5
  %9547 = mul nsw i32 44, %9546
  %9548 = add nsw i32 %9545, %9547
  %9549 = sext i32 %9548 to i64
  %9550 = getelementptr inbounds double, ptr %9544, i64 %9549
  %9551 = load double, ptr %9550, align 8, !tbaa !11
  %9552 = call double @llvm.fmuladd.f64(double 0x3C91800000000000, double %9551, double %9543)
  %9553 = load ptr, ptr %7, align 8, !tbaa !9
  %9554 = load i32, ptr %12, align 4, !tbaa !5
  %9555 = load i32, ptr %8, align 4, !tbaa !5
  %9556 = mul nsw i32 45, %9555
  %9557 = add nsw i32 %9554, %9556
  %9558 = sext i32 %9557 to i64
  %9559 = getelementptr inbounds double, ptr %9553, i64 %9558
  %9560 = load double, ptr %9559, align 8, !tbaa !11
  %9561 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %9560, double %9552)
  %9562 = load ptr, ptr %7, align 8, !tbaa !9
  %9563 = load i32, ptr %12, align 4, !tbaa !5
  %9564 = load i32, ptr %8, align 4, !tbaa !5
  %9565 = mul nsw i32 46, %9564
  %9566 = add nsw i32 %9563, %9565
  %9567 = sext i32 %9566 to i64
  %9568 = getelementptr inbounds double, ptr %9562, i64 %9567
  %9569 = load double, ptr %9568, align 8, !tbaa !11
  %9570 = call double @llvm.fmuladd.f64(double 0x3CB9000000000000, double %9569, double %9561)
  %9571 = load ptr, ptr %7, align 8, !tbaa !9
  %9572 = load i32, ptr %12, align 4, !tbaa !5
  %9573 = load i32, ptr %8, align 4, !tbaa !5
  %9574 = mul nsw i32 47, %9573
  %9575 = add nsw i32 %9572, %9574
  %9576 = sext i32 %9575 to i64
  %9577 = getelementptr inbounds double, ptr %9571, i64 %9576
  %9578 = load double, ptr %9577, align 8, !tbaa !11
  %9579 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %9578, double %9570)
  %9580 = load ptr, ptr %7, align 8, !tbaa !9
  %9581 = load i32, ptr %12, align 4, !tbaa !5
  %9582 = load i32, ptr %8, align 4, !tbaa !5
  %9583 = mul nsw i32 48, %9582
  %9584 = add nsw i32 %9581, %9583
  %9585 = sext i32 %9584 to i64
  %9586 = getelementptr inbounds double, ptr %9580, i64 %9585
  %9587 = load double, ptr %9586, align 8, !tbaa !11
  %9588 = call double @llvm.fmuladd.f64(double 0xC01569E165D79412, double %9587, double %9579)
  %9589 = load ptr, ptr %7, align 8, !tbaa !9
  %9590 = load i32, ptr %12, align 4, !tbaa !5
  %9591 = load i32, ptr %8, align 4, !tbaa !5
  %9592 = mul nsw i32 49, %9591
  %9593 = add nsw i32 %9590, %9592
  %9594 = sext i32 %9593 to i64
  %9595 = getelementptr inbounds double, ptr %9589, i64 %9594
  %9596 = load double, ptr %9595, align 8, !tbaa !11
  %9597 = call double @llvm.fmuladd.f64(double 0xBFDD2EB9CCB3BDE4, double %9596, double %9588)
  %9598 = load ptr, ptr %7, align 8, !tbaa !9
  %9599 = load i32, ptr %12, align 4, !tbaa !5
  %9600 = load i32, ptr %8, align 4, !tbaa !5
  %9601 = mul nsw i32 50, %9600
  %9602 = add nsw i32 %9599, %9601
  %9603 = sext i32 %9602 to i64
  %9604 = getelementptr inbounds double, ptr %9598, i64 %9603
  %9605 = load double, ptr %9604, align 8, !tbaa !11
  %9606 = call double @llvm.fmuladd.f64(double 0x3FCEFDC8894D0822, double %9605, double %9597)
  %9607 = load ptr, ptr %7, align 8, !tbaa !9
  %9608 = load i32, ptr %12, align 4, !tbaa !5
  %9609 = load i32, ptr %8, align 4, !tbaa !5
  %9610 = mul nsw i32 51, %9609
  %9611 = add nsw i32 %9608, %9610
  %9612 = sext i32 %9611 to i64
  %9613 = getelementptr inbounds double, ptr %9607, i64 %9612
  %9614 = load double, ptr %9613, align 8, !tbaa !11
  %9615 = call double @llvm.fmuladd.f64(double 0xBFACD49071EC5F0E, double %9614, double %9606)
  %9616 = load ptr, ptr %7, align 8, !tbaa !9
  %9617 = load i32, ptr %12, align 4, !tbaa !5
  %9618 = load i32, ptr %8, align 4, !tbaa !5
  %9619 = mul nsw i32 52, %9618
  %9620 = add nsw i32 %9617, %9619
  %9621 = sext i32 %9620 to i64
  %9622 = getelementptr inbounds double, ptr %9616, i64 %9621
  %9623 = load double, ptr %9622, align 8, !tbaa !11
  %9624 = call double @llvm.fmuladd.f64(double 0xBC9F1CD9CCEEF236, double %9623, double %9615)
  %9625 = load ptr, ptr %7, align 8, !tbaa !9
  %9626 = load i32, ptr %12, align 4, !tbaa !5
  %9627 = load i32, ptr %8, align 4, !tbaa !5
  %9628 = mul nsw i32 53, %9627
  %9629 = add nsw i32 %9626, %9628
  %9630 = sext i32 %9629 to i64
  %9631 = getelementptr inbounds double, ptr %9625, i64 %9630
  %9632 = load double, ptr %9631, align 8, !tbaa !11
  %9633 = call double @llvm.fmuladd.f64(double 0xBCA016309CDE7482, double %9632, double %9624)
  %9634 = load ptr, ptr %7, align 8, !tbaa !9
  %9635 = load i32, ptr %12, align 4, !tbaa !5
  %9636 = load i32, ptr %8, align 4, !tbaa !5
  %9637 = mul nsw i32 54, %9636
  %9638 = add nsw i32 %9635, %9637
  %9639 = sext i32 %9638 to i64
  %9640 = getelementptr inbounds double, ptr %9634, i64 %9639
  %9641 = load double, ptr %9640, align 8, !tbaa !11
  %9642 = call double @llvm.fmuladd.f64(double 0x3C98BFAD401B2967, double %9641, double %9633)
  %9643 = load ptr, ptr %7, align 8, !tbaa !9
  %9644 = load i32, ptr %12, align 4, !tbaa !5
  %9645 = load i32, ptr %8, align 4, !tbaa !5
  %9646 = mul nsw i32 55, %9645
  %9647 = add nsw i32 %9644, %9646
  %9648 = sext i32 %9647 to i64
  %9649 = getelementptr inbounds double, ptr %9643, i64 %9648
  %9650 = load double, ptr %9649, align 8, !tbaa !11
  %9651 = call double @llvm.fmuladd.f64(double 0xBC93CC8A99AF5452, double %9650, double %9642)
  %9652 = load ptr, ptr %7, align 8, !tbaa !9
  %9653 = load i32, ptr %12, align 4, !tbaa !5
  %9654 = load i32, ptr %8, align 4, !tbaa !5
  %9655 = mul nsw i32 56, %9654
  %9656 = add nsw i32 %9653, %9655
  %9657 = sext i32 %9656 to i64
  %9658 = getelementptr inbounds double, ptr %9652, i64 %9657
  %9659 = load double, ptr %9658, align 8, !tbaa !11
  %9660 = call double @llvm.fmuladd.f64(double 0xBCB0B494F1ABEF27, double %9659, double %9651)
  %9661 = load ptr, ptr %7, align 8, !tbaa !9
  %9662 = load i32, ptr %12, align 4, !tbaa !5
  %9663 = load i32, ptr %8, align 4, !tbaa !5
  %9664 = mul nsw i32 57, %9663
  %9665 = add nsw i32 %9662, %9664
  %9666 = sext i32 %9665 to i64
  %9667 = getelementptr inbounds double, ptr %9661, i64 %9666
  %9668 = load double, ptr %9667, align 8, !tbaa !11
  %9669 = call double @llvm.fmuladd.f64(double 0xBCA536948017480F, double %9668, double %9660)
  %9670 = load ptr, ptr %7, align 8, !tbaa !9
  %9671 = load i32, ptr %12, align 4, !tbaa !5
  %9672 = load i32, ptr %8, align 4, !tbaa !5
  %9673 = mul nsw i32 58, %9672
  %9674 = add nsw i32 %9671, %9673
  %9675 = sext i32 %9674 to i64
  %9676 = getelementptr inbounds double, ptr %9670, i64 %9675
  %9677 = load double, ptr %9676, align 8, !tbaa !11
  %9678 = call double @llvm.fmuladd.f64(double 0x3CADB2CFE686FE7D, double %9677, double %9669)
  %9679 = load ptr, ptr %7, align 8, !tbaa !9
  %9680 = load i32, ptr %12, align 4, !tbaa !5
  %9681 = load i32, ptr %8, align 4, !tbaa !5
  %9682 = mul nsw i32 59, %9681
  %9683 = add nsw i32 %9680, %9682
  %9684 = sext i32 %9683 to i64
  %9685 = getelementptr inbounds double, ptr %9679, i64 %9684
  %9686 = load double, ptr %9685, align 8, !tbaa !11
  %9687 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %9686, double %9678)
  %9688 = load ptr, ptr %7, align 8, !tbaa !9
  %9689 = load i32, ptr %12, align 4, !tbaa !5
  %9690 = load i32, ptr %8, align 4, !tbaa !5
  %9691 = mul nsw i32 60, %9690
  %9692 = add nsw i32 %9689, %9691
  %9693 = sext i32 %9692 to i64
  %9694 = getelementptr inbounds double, ptr %9688, i64 %9693
  %9695 = load double, ptr %9694, align 8, !tbaa !11
  %9696 = call double @llvm.fmuladd.f64(double 0x3C959116F9B144FE, double %9695, double %9687)
  %9697 = load ptr, ptr %7, align 8, !tbaa !9
  %9698 = load i32, ptr %12, align 4, !tbaa !5
  %9699 = load i32, ptr %8, align 4, !tbaa !5
  %9700 = mul nsw i32 61, %9699
  %9701 = add nsw i32 %9698, %9700
  %9702 = sext i32 %9701 to i64
  %9703 = getelementptr inbounds double, ptr %9697, i64 %9702
  %9704 = load double, ptr %9703, align 8, !tbaa !11
  %9705 = call double @llvm.fmuladd.f64(double 0xBCA80AA84CE72F89, double %9704, double %9696)
  %9706 = load ptr, ptr %7, align 8, !tbaa !9
  %9707 = load i32, ptr %12, align 4, !tbaa !5
  %9708 = load i32, ptr %8, align 4, !tbaa !5
  %9709 = mul nsw i32 62, %9708
  %9710 = add nsw i32 %9707, %9709
  %9711 = sext i32 %9710 to i64
  %9712 = getelementptr inbounds double, ptr %9706, i64 %9711
  %9713 = load double, ptr %9712, align 8, !tbaa !11
  %9714 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %9713, double %9705)
  %9715 = load ptr, ptr %7, align 8, !tbaa !9
  %9716 = load i32, ptr %12, align 4, !tbaa !5
  %9717 = load i32, ptr %8, align 4, !tbaa !5
  %9718 = mul nsw i32 63, %9717
  %9719 = add nsw i32 %9716, %9718
  %9720 = sext i32 %9719 to i64
  %9721 = getelementptr inbounds double, ptr %9715, i64 %9720
  %9722 = load double, ptr %9721, align 8, !tbaa !11
  %9723 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %9722, double %9714)
  %9724 = load ptr, ptr %7, align 8, !tbaa !9
  %9725 = load i32, ptr %12, align 4, !tbaa !5
  %9726 = load i32, ptr %8, align 4, !tbaa !5
  %9727 = mul nsw i32 64, %9726
  %9728 = add nsw i32 %9725, %9727
  %9729 = sext i32 %9728 to i64
  %9730 = getelementptr inbounds double, ptr %9724, i64 %9729
  %9731 = load double, ptr %9730, align 8, !tbaa !11
  %9732 = call double @llvm.fmuladd.f64(double 0xBFD039FE04F7163A, double %9731, double %9723)
  %9733 = load ptr, ptr %7, align 8, !tbaa !9
  %9734 = load i32, ptr %12, align 4, !tbaa !5
  %9735 = load i32, ptr %8, align 4, !tbaa !5
  %9736 = mul nsw i32 65, %9735
  %9737 = add nsw i32 %9734, %9736
  %9738 = sext i32 %9737 to i64
  %9739 = getelementptr inbounds double, ptr %9733, i64 %9738
  %9740 = load double, ptr %9739, align 8, !tbaa !11
  %9741 = call double @llvm.fmuladd.f64(double 0xBFE30958FBF81242, double %9740, double %9732)
  %9742 = load ptr, ptr %7, align 8, !tbaa !9
  %9743 = load i32, ptr %12, align 4, !tbaa !5
  %9744 = load i32, ptr %8, align 4, !tbaa !5
  %9745 = mul nsw i32 66, %9744
  %9746 = add nsw i32 %9743, %9745
  %9747 = sext i32 %9746 to i64
  %9748 = getelementptr inbounds double, ptr %9742, i64 %9747
  %9749 = load double, ptr %9748, align 8, !tbaa !11
  %9750 = call double @llvm.fmuladd.f64(double 0xBFE30958FBF81231, double %9749, double %9741)
  %9751 = load ptr, ptr %7, align 8, !tbaa !9
  %9752 = load i32, ptr %12, align 4, !tbaa !5
  %9753 = load i32, ptr %8, align 4, !tbaa !5
  %9754 = mul nsw i32 67, %9753
  %9755 = add nsw i32 %9752, %9754
  %9756 = sext i32 %9755 to i64
  %9757 = getelementptr inbounds double, ptr %9751, i64 %9756
  %9758 = load double, ptr %9757, align 8, !tbaa !11
  %9759 = call double @llvm.fmuladd.f64(double 0xBFD039FE04F71632, double %9758, double %9750)
  store double %9759, ptr %11, align 8, !tbaa !11
  %9760 = load double, ptr %11, align 8, !tbaa !11
  %9761 = load ptr, ptr %9, align 8, !tbaa !9
  %9762 = load i32, ptr %12, align 4, !tbaa !5
  %9763 = load i32, ptr %10, align 4, !tbaa !5
  %9764 = mul nsw i32 33, %9763
  %9765 = add nsw i32 %9762, %9764
  %9766 = sext i32 %9765 to i64
  %9767 = getelementptr inbounds double, ptr %9761, i64 %9766
  store double %9760, ptr %9767, align 8, !tbaa !11
  %9768 = load ptr, ptr %7, align 8, !tbaa !9
  %9769 = load i32, ptr %12, align 4, !tbaa !5
  %9770 = load i32, ptr %8, align 4, !tbaa !5
  %9771 = mul nsw i32 36, %9770
  %9772 = add nsw i32 %9769, %9771
  %9773 = sext i32 %9772 to i64
  %9774 = getelementptr inbounds double, ptr %9768, i64 %9773
  %9775 = load double, ptr %9774, align 8, !tbaa !11
  %9776 = load ptr, ptr %7, align 8, !tbaa !9
  %9777 = load i32, ptr %12, align 4, !tbaa !5
  %9778 = load i32, ptr %8, align 4, !tbaa !5
  %9779 = mul nsw i32 37, %9778
  %9780 = add nsw i32 %9777, %9779
  %9781 = sext i32 %9780 to i64
  %9782 = getelementptr inbounds double, ptr %9776, i64 %9781
  %9783 = load double, ptr %9782, align 8, !tbaa !11
  %9784 = fmul double 0xBC99000000000000, %9783
  %9785 = call double @llvm.fmuladd.f64(double 0x3C98400000000000, double %9775, double %9784)
  %9786 = load ptr, ptr %7, align 8, !tbaa !9
  %9787 = load i32, ptr %12, align 4, !tbaa !5
  %9788 = load i32, ptr %8, align 4, !tbaa !5
  %9789 = mul nsw i32 38, %9788
  %9790 = add nsw i32 %9787, %9789
  %9791 = sext i32 %9790 to i64
  %9792 = getelementptr inbounds double, ptr %9786, i64 %9791
  %9793 = load double, ptr %9792, align 8, !tbaa !11
  %9794 = call double @llvm.fmuladd.f64(double 0xBCAE000000000002, double %9793, double %9785)
  %9795 = load ptr, ptr %7, align 8, !tbaa !9
  %9796 = load i32, ptr %12, align 4, !tbaa !5
  %9797 = load i32, ptr %8, align 4, !tbaa !5
  %9798 = mul nsw i32 39, %9797
  %9799 = add nsw i32 %9796, %9798
  %9800 = sext i32 %9799 to i64
  %9801 = getelementptr inbounds double, ptr %9795, i64 %9800
  %9802 = load double, ptr %9801, align 8, !tbaa !11
  %9803 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %9802, double %9794)
  %9804 = load ptr, ptr %7, align 8, !tbaa !9
  %9805 = load i32, ptr %12, align 4, !tbaa !5
  %9806 = load i32, ptr %8, align 4, !tbaa !5
  %9807 = mul nsw i32 40, %9806
  %9808 = add nsw i32 %9805, %9807
  %9809 = sext i32 %9808 to i64
  %9810 = getelementptr inbounds double, ptr %9804, i64 %9809
  %9811 = load double, ptr %9810, align 8, !tbaa !11
  %9812 = call double @llvm.fmuladd.f64(double 0x3C91800000000000, double %9811, double %9803)
  %9813 = load ptr, ptr %7, align 8, !tbaa !9
  %9814 = load i32, ptr %12, align 4, !tbaa !5
  %9815 = load i32, ptr %8, align 4, !tbaa !5
  %9816 = mul nsw i32 41, %9815
  %9817 = add nsw i32 %9814, %9816
  %9818 = sext i32 %9817 to i64
  %9819 = getelementptr inbounds double, ptr %9813, i64 %9818
  %9820 = load double, ptr %9819, align 8, !tbaa !11
  %9821 = call double @llvm.fmuladd.f64(double 0x3CA7000000000002, double %9820, double %9812)
  %9822 = load ptr, ptr %7, align 8, !tbaa !9
  %9823 = load i32, ptr %12, align 4, !tbaa !5
  %9824 = load i32, ptr %8, align 4, !tbaa !5
  %9825 = mul nsw i32 42, %9824
  %9826 = add nsw i32 %9823, %9825
  %9827 = sext i32 %9826 to i64
  %9828 = getelementptr inbounds double, ptr %9822, i64 %9827
  %9829 = load double, ptr %9828, align 8, !tbaa !11
  %9830 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %9829, double %9821)
  %9831 = load ptr, ptr %7, align 8, !tbaa !9
  %9832 = load i32, ptr %12, align 4, !tbaa !5
  %9833 = load i32, ptr %8, align 4, !tbaa !5
  %9834 = mul nsw i32 43, %9833
  %9835 = add nsw i32 %9832, %9834
  %9836 = sext i32 %9835 to i64
  %9837 = getelementptr inbounds double, ptr %9831, i64 %9836
  %9838 = load double, ptr %9837, align 8, !tbaa !11
  %9839 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %9838, double %9830)
  %9840 = load ptr, ptr %7, align 8, !tbaa !9
  %9841 = load i32, ptr %12, align 4, !tbaa !5
  %9842 = load i32, ptr %8, align 4, !tbaa !5
  %9843 = mul nsw i32 44, %9842
  %9844 = add nsw i32 %9841, %9843
  %9845 = sext i32 %9844 to i64
  %9846 = getelementptr inbounds double, ptr %9840, i64 %9845
  %9847 = load double, ptr %9846, align 8, !tbaa !11
  %9848 = call double @llvm.fmuladd.f64(double 0xBC99800000000000, double %9847, double %9839)
  %9849 = load ptr, ptr %7, align 8, !tbaa !9
  %9850 = load i32, ptr %12, align 4, !tbaa !5
  %9851 = load i32, ptr %8, align 4, !tbaa !5
  %9852 = mul nsw i32 45, %9851
  %9853 = add nsw i32 %9850, %9852
  %9854 = sext i32 %9853 to i64
  %9855 = getelementptr inbounds double, ptr %9849, i64 %9854
  %9856 = load double, ptr %9855, align 8, !tbaa !11
  %9857 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %9856, double %9848)
  %9858 = load ptr, ptr %7, align 8, !tbaa !9
  %9859 = load i32, ptr %12, align 4, !tbaa !5
  %9860 = load i32, ptr %8, align 4, !tbaa !5
  %9861 = mul nsw i32 46, %9860
  %9862 = add nsw i32 %9859, %9861
  %9863 = sext i32 %9862 to i64
  %9864 = getelementptr inbounds double, ptr %9858, i64 %9863
  %9865 = load double, ptr %9864, align 8, !tbaa !11
  %9866 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %9865, double %9857)
  %9867 = load ptr, ptr %7, align 8, !tbaa !9
  %9868 = load i32, ptr %12, align 4, !tbaa !5
  %9869 = load i32, ptr %8, align 4, !tbaa !5
  %9870 = mul nsw i32 48, %9869
  %9871 = add nsw i32 %9868, %9870
  %9872 = sext i32 %9871 to i64
  %9873 = getelementptr inbounds double, ptr %9867, i64 %9872
  %9874 = load double, ptr %9873, align 8, !tbaa !11
  %9875 = call double @llvm.fmuladd.f64(double 0x3F980EB0AE1D48E6, double %9874, double %9866)
  %9876 = load ptr, ptr %7, align 8, !tbaa !9
  %9877 = load i32, ptr %12, align 4, !tbaa !5
  %9878 = load i32, ptr %8, align 4, !tbaa !5
  %9879 = mul nsw i32 49, %9878
  %9880 = add nsw i32 %9877, %9879
  %9881 = sext i32 %9880 to i64
  %9882 = getelementptr inbounds double, ptr %9876, i64 %9881
  %9883 = load double, ptr %9882, align 8, !tbaa !11
  %9884 = call double @llvm.fmuladd.f64(double 0xBFD4C0B9406BCBDE, double %9883, double %9875)
  %9885 = load ptr, ptr %7, align 8, !tbaa !9
  %9886 = load i32, ptr %12, align 4, !tbaa !5
  %9887 = load i32, ptr %8, align 4, !tbaa !5
  %9888 = mul nsw i32 50, %9887
  %9889 = add nsw i32 %9886, %9888
  %9890 = sext i32 %9889 to i64
  %9891 = getelementptr inbounds double, ptr %9885, i64 %9890
  %9892 = load double, ptr %9891, align 8, !tbaa !11
  %9893 = call double @llvm.fmuladd.f64(double 0xBFEBF462FB348EF6, double %9892, double %9884)
  %9894 = load ptr, ptr %7, align 8, !tbaa !9
  %9895 = load i32, ptr %12, align 4, !tbaa !5
  %9896 = load i32, ptr %8, align 4, !tbaa !5
  %9897 = mul nsw i32 51, %9896
  %9898 = add nsw i32 %9895, %9897
  %9899 = sext i32 %9898 to i64
  %9900 = getelementptr inbounds double, ptr %9894, i64 %9899
  %9901 = load double, ptr %9900, align 8, !tbaa !11
  %9902 = call double @llvm.fmuladd.f64(double 0xBFE002F9665DF3D7, double %9901, double %9893)
  %9903 = load ptr, ptr %7, align 8, !tbaa !9
  %9904 = load i32, ptr %12, align 4, !tbaa !5
  %9905 = load i32, ptr %8, align 4, !tbaa !5
  %9906 = mul nsw i32 52, %9905
  %9907 = add nsw i32 %9904, %9906
  %9908 = sext i32 %9907 to i64
  %9909 = getelementptr inbounds double, ptr %9903, i64 %9908
  %9910 = load double, ptr %9909, align 8, !tbaa !11
  %9911 = call double @llvm.fmuladd.f64(double 0x3C8BEE4386850DD0, double %9910, double %9902)
  %9912 = load ptr, ptr %7, align 8, !tbaa !9
  %9913 = load i32, ptr %12, align 4, !tbaa !5
  %9914 = load i32, ptr %8, align 4, !tbaa !5
  %9915 = mul nsw i32 53, %9914
  %9916 = add nsw i32 %9913, %9915
  %9917 = sext i32 %9916 to i64
  %9918 = getelementptr inbounds double, ptr %9912, i64 %9917
  %9919 = load double, ptr %9918, align 8, !tbaa !11
  %9920 = call double @llvm.fmuladd.f64(double 0x3CC196DB21ACE77C, double %9919, double %9911)
  %9921 = load ptr, ptr %7, align 8, !tbaa !9
  %9922 = load i32, ptr %12, align 4, !tbaa !5
  %9923 = load i32, ptr %8, align 4, !tbaa !5
  %9924 = mul nsw i32 54, %9923
  %9925 = add nsw i32 %9922, %9924
  %9926 = sext i32 %9925 to i64
  %9927 = getelementptr inbounds double, ptr %9921, i64 %9926
  %9928 = load double, ptr %9927, align 8, !tbaa !11
  %9929 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %9928, double %9920)
  %9930 = load ptr, ptr %7, align 8, !tbaa !9
  %9931 = load i32, ptr %12, align 4, !tbaa !5
  %9932 = load i32, ptr %8, align 4, !tbaa !5
  %9933 = mul nsw i32 55, %9932
  %9934 = add nsw i32 %9931, %9933
  %9935 = sext i32 %9934 to i64
  %9936 = getelementptr inbounds double, ptr %9930, i64 %9935
  %9937 = load double, ptr %9936, align 8, !tbaa !11
  %9938 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %9937, double %9929)
  %9939 = load ptr, ptr %7, align 8, !tbaa !9
  %9940 = load i32, ptr %12, align 4, !tbaa !5
  %9941 = load i32, ptr %8, align 4, !tbaa !5
  %9942 = mul nsw i32 56, %9941
  %9943 = add nsw i32 %9940, %9942
  %9944 = sext i32 %9943 to i64
  %9945 = getelementptr inbounds double, ptr %9939, i64 %9944
  %9946 = load double, ptr %9945, align 8, !tbaa !11
  %9947 = call double @llvm.fmuladd.f64(double 0x3C6974B2334F2344, double %9946, double %9938)
  %9948 = load ptr, ptr %7, align 8, !tbaa !9
  %9949 = load i32, ptr %12, align 4, !tbaa !5
  %9950 = load i32, ptr %8, align 4, !tbaa !5
  %9951 = mul nsw i32 57, %9950
  %9952 = add nsw i32 %9949, %9951
  %9953 = sext i32 %9952 to i64
  %9954 = getelementptr inbounds double, ptr %9948, i64 %9953
  %9955 = load double, ptr %9954, align 8, !tbaa !11
  %9956 = call double @llvm.fmuladd.f64(double 0xBCA5EB99734B41EE, double %9955, double %9947)
  %9957 = load ptr, ptr %7, align 8, !tbaa !9
  %9958 = load i32, ptr %12, align 4, !tbaa !5
  %9959 = load i32, ptr %8, align 4, !tbaa !5
  %9960 = mul nsw i32 58, %9959
  %9961 = add nsw i32 %9958, %9960
  %9962 = sext i32 %9961 to i64
  %9963 = getelementptr inbounds double, ptr %9957, i64 %9962
  %9964 = load double, ptr %9963, align 8, !tbaa !11
  %9965 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %9964, double %9956)
  %9966 = load ptr, ptr %7, align 8, !tbaa !9
  %9967 = load i32, ptr %12, align 4, !tbaa !5
  %9968 = load i32, ptr %8, align 4, !tbaa !5
  %9969 = mul nsw i32 59, %9968
  %9970 = add nsw i32 %9967, %9969
  %9971 = sext i32 %9970 to i64
  %9972 = getelementptr inbounds double, ptr %9966, i64 %9971
  %9973 = load double, ptr %9972, align 8, !tbaa !11
  %9974 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %9973, double %9965)
  %9975 = load ptr, ptr %7, align 8, !tbaa !9
  %9976 = load i32, ptr %12, align 4, !tbaa !5
  %9977 = load i32, ptr %8, align 4, !tbaa !5
  %9978 = mul nsw i32 60, %9977
  %9979 = add nsw i32 %9976, %9978
  %9980 = sext i32 %9979 to i64
  %9981 = getelementptr inbounds double, ptr %9975, i64 %9980
  %9982 = load double, ptr %9981, align 8, !tbaa !11
  %9983 = call double @llvm.fmuladd.f64(double 0xBC8CFDCAF353049C, double %9982, double %9974)
  %9984 = load ptr, ptr %7, align 8, !tbaa !9
  %9985 = load i32, ptr %12, align 4, !tbaa !5
  %9986 = load i32, ptr %8, align 4, !tbaa !5
  %9987 = mul nsw i32 61, %9986
  %9988 = add nsw i32 %9985, %9987
  %9989 = sext i32 %9988 to i64
  %9990 = getelementptr inbounds double, ptr %9984, i64 %9989
  %9991 = load double, ptr %9990, align 8, !tbaa !11
  %9992 = call double @llvm.fmuladd.f64(double 0x3CB6461BECE53EDD, double %9991, double %9983)
  %9993 = load ptr, ptr %7, align 8, !tbaa !9
  %9994 = load i32, ptr %12, align 4, !tbaa !5
  %9995 = load i32, ptr %8, align 4, !tbaa !5
  %9996 = mul nsw i32 62, %9995
  %9997 = add nsw i32 %9994, %9996
  %9998 = sext i32 %9997 to i64
  %9999 = getelementptr inbounds double, ptr %9993, i64 %9998
  %10000 = load double, ptr %9999, align 8, !tbaa !11
  %10001 = call double @llvm.fmuladd.f64(double 0x3CA3CC8A99AF5452, double %10000, double %9992)
  %10002 = load ptr, ptr %7, align 8, !tbaa !9
  %10003 = load i32, ptr %12, align 4, !tbaa !5
  %10004 = load i32, ptr %8, align 4, !tbaa !5
  %10005 = mul nsw i32 63, %10004
  %10006 = add nsw i32 %10003, %10005
  %10007 = sext i32 %10006 to i64
  %10008 = getelementptr inbounds double, ptr %10002, i64 %10007
  %10009 = load double, ptr %10008, align 8, !tbaa !11
  %10010 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %10009, double %10001)
  %10011 = load ptr, ptr %7, align 8, !tbaa !9
  %10012 = load i32, ptr %12, align 4, !tbaa !5
  %10013 = load i32, ptr %8, align 4, !tbaa !5
  %10014 = mul nsw i32 64, %10013
  %10015 = add nsw i32 %10012, %10014
  %10016 = sext i32 %10015 to i64
  %10017 = getelementptr inbounds double, ptr %10011, i64 %10016
  %10018 = load double, ptr %10017, align 8, !tbaa !11
  %10019 = call double @llvm.fmuladd.f64(double 0x3FD08C54FF101A12, double %10018, double %10010)
  %10020 = load ptr, ptr %7, align 8, !tbaa !9
  %10021 = load i32, ptr %12, align 4, !tbaa !5
  %10022 = load i32, ptr %8, align 4, !tbaa !5
  %10023 = mul nsw i32 65, %10022
  %10024 = add nsw i32 %10021, %10023
  %10025 = sext i32 %10024 to i64
  %10026 = getelementptr inbounds double, ptr %10020, i64 %10025
  %10027 = load double, ptr %10026, align 8, !tbaa !11
  %10028 = call double @llvm.fmuladd.f64(double 0x4007001BD846D0B0, double %10027, double %10019)
  %10029 = load ptr, ptr %7, align 8, !tbaa !9
  %10030 = load i32, ptr %12, align 4, !tbaa !5
  %10031 = load i32, ptr %8, align 4, !tbaa !5
  %10032 = mul nsw i32 66, %10031
  %10033 = add nsw i32 %10030, %10032
  %10034 = sext i32 %10033 to i64
  %10035 = getelementptr inbounds double, ptr %10029, i64 %10034
  %10036 = load double, ptr %10035, align 8, !tbaa !11
  %10037 = call double @llvm.fmuladd.f64(double 0x3FD0C7817D9C3131, double %10036, double %10028)
  %10038 = load ptr, ptr %7, align 8, !tbaa !9
  %10039 = load i32, ptr %12, align 4, !tbaa !5
  %10040 = load i32, ptr %8, align 4, !tbaa !5
  %10041 = mul nsw i32 67, %10040
  %10042 = add nsw i32 %10039, %10041
  %10043 = sext i32 %10042 to i64
  %10044 = getelementptr inbounds double, ptr %10038, i64 %10043
  %10045 = load double, ptr %10044, align 8, !tbaa !11
  %10046 = call double @llvm.fmuladd.f64(double 0xBFB8DF388696F54B, double %10045, double %10037)
  store double %10046, ptr %11, align 8, !tbaa !11
  %10047 = load double, ptr %11, align 8, !tbaa !11
  %10048 = load ptr, ptr %9, align 8, !tbaa !9
  %10049 = load i32, ptr %12, align 4, !tbaa !5
  %10050 = load i32, ptr %10, align 4, !tbaa !5
  %10051 = mul nsw i32 34, %10050
  %10052 = add nsw i32 %10049, %10051
  %10053 = sext i32 %10052 to i64
  %10054 = getelementptr inbounds double, ptr %10048, i64 %10053
  store double %10047, ptr %10054, align 8, !tbaa !11
  %10055 = load ptr, ptr %7, align 8, !tbaa !9
  %10056 = load i32, ptr %12, align 4, !tbaa !5
  %10057 = load i32, ptr %8, align 4, !tbaa !5
  %10058 = mul nsw i32 36, %10057
  %10059 = add nsw i32 %10056, %10058
  %10060 = sext i32 %10059 to i64
  %10061 = getelementptr inbounds double, ptr %10055, i64 %10060
  %10062 = load double, ptr %10061, align 8, !tbaa !11
  %10063 = load ptr, ptr %7, align 8, !tbaa !9
  %10064 = load i32, ptr %12, align 4, !tbaa !5
  %10065 = load i32, ptr %8, align 4, !tbaa !5
  %10066 = mul nsw i32 37, %10065
  %10067 = add nsw i32 %10064, %10066
  %10068 = sext i32 %10067 to i64
  %10069 = getelementptr inbounds double, ptr %10063, i64 %10068
  %10070 = load double, ptr %10069, align 8, !tbaa !11
  %10071 = fmul double 0xBCC0600000000000, %10070
  %10072 = call double @llvm.fmuladd.f64(double 0xBC93C00000000000, double %10062, double %10071)
  %10073 = load ptr, ptr %7, align 8, !tbaa !9
  %10074 = load i32, ptr %12, align 4, !tbaa !5
  %10075 = load i32, ptr %8, align 4, !tbaa !5
  %10076 = mul nsw i32 38, %10075
  %10077 = add nsw i32 %10074, %10076
  %10078 = sext i32 %10077 to i64
  %10079 = getelementptr inbounds double, ptr %10073, i64 %10078
  %10080 = load double, ptr %10079, align 8, !tbaa !11
  %10081 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %10080, double %10072)
  %10082 = load ptr, ptr %7, align 8, !tbaa !9
  %10083 = load i32, ptr %12, align 4, !tbaa !5
  %10084 = load i32, ptr %8, align 4, !tbaa !5
  %10085 = mul nsw i32 39, %10084
  %10086 = add nsw i32 %10083, %10085
  %10087 = sext i32 %10086 to i64
  %10088 = getelementptr inbounds double, ptr %10082, i64 %10087
  %10089 = load double, ptr %10088, align 8, !tbaa !11
  %10090 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %10089, double %10081)
  %10091 = load ptr, ptr %7, align 8, !tbaa !9
  %10092 = load i32, ptr %12, align 4, !tbaa !5
  %10093 = load i32, ptr %8, align 4, !tbaa !5
  %10094 = mul nsw i32 40, %10093
  %10095 = add nsw i32 %10092, %10094
  %10096 = sext i32 %10095 to i64
  %10097 = getelementptr inbounds double, ptr %10091, i64 %10096
  %10098 = load double, ptr %10097, align 8, !tbaa !11
  %10099 = call double @llvm.fmuladd.f64(double 0x3C9F7FFFFFFFFFFC, double %10098, double %10090)
  %10100 = load ptr, ptr %7, align 8, !tbaa !9
  %10101 = load i32, ptr %12, align 4, !tbaa !5
  %10102 = load i32, ptr %8, align 4, !tbaa !5
  %10103 = mul nsw i32 41, %10102
  %10104 = add nsw i32 %10101, %10103
  %10105 = sext i32 %10104 to i64
  %10106 = getelementptr inbounds double, ptr %10100, i64 %10105
  %10107 = load double, ptr %10106, align 8, !tbaa !11
  %10108 = call double @llvm.fmuladd.f64(double 0x3CA7000000000002, double %10107, double %10099)
  %10109 = load ptr, ptr %7, align 8, !tbaa !9
  %10110 = load i32, ptr %12, align 4, !tbaa !5
  %10111 = load i32, ptr %8, align 4, !tbaa !5
  %10112 = mul nsw i32 42, %10111
  %10113 = add nsw i32 %10110, %10112
  %10114 = sext i32 %10113 to i64
  %10115 = getelementptr inbounds double, ptr %10109, i64 %10114
  %10116 = load double, ptr %10115, align 8, !tbaa !11
  %10117 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %10116, double %10108)
  %10118 = load ptr, ptr %7, align 8, !tbaa !9
  %10119 = load i32, ptr %12, align 4, !tbaa !5
  %10120 = load i32, ptr %8, align 4, !tbaa !5
  %10121 = mul nsw i32 44, %10120
  %10122 = add nsw i32 %10119, %10121
  %10123 = sext i32 %10122 to i64
  %10124 = getelementptr inbounds double, ptr %10118, i64 %10123
  %10125 = load double, ptr %10124, align 8, !tbaa !11
  %10126 = call double @llvm.fmuladd.f64(double 0x3CA8400000000000, double %10125, double %10117)
  %10127 = load ptr, ptr %7, align 8, !tbaa !9
  %10128 = load i32, ptr %12, align 4, !tbaa !5
  %10129 = load i32, ptr %8, align 4, !tbaa !5
  %10130 = mul nsw i32 45, %10129
  %10131 = add nsw i32 %10128, %10130
  %10132 = sext i32 %10131 to i64
  %10133 = getelementptr inbounds double, ptr %10127, i64 %10132
  %10134 = load double, ptr %10133, align 8, !tbaa !11
  %10135 = call double @llvm.fmuladd.f64(double 0xBCC5C00000000000, double %10134, double %10126)
  %10136 = load ptr, ptr %7, align 8, !tbaa !9
  %10137 = load i32, ptr %12, align 4, !tbaa !5
  %10138 = load i32, ptr %8, align 4, !tbaa !5
  %10139 = mul nsw i32 46, %10138
  %10140 = add nsw i32 %10137, %10139
  %10141 = sext i32 %10140 to i64
  %10142 = getelementptr inbounds double, ptr %10136, i64 %10141
  %10143 = load double, ptr %10142, align 8, !tbaa !11
  %10144 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %10143, double %10135)
  %10145 = load ptr, ptr %7, align 8, !tbaa !9
  %10146 = load i32, ptr %12, align 4, !tbaa !5
  %10147 = load i32, ptr %8, align 4, !tbaa !5
  %10148 = mul nsw i32 47, %10147
  %10149 = add nsw i32 %10146, %10148
  %10150 = sext i32 %10149 to i64
  %10151 = getelementptr inbounds double, ptr %10145, i64 %10150
  %10152 = load double, ptr %10151, align 8, !tbaa !11
  %10153 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %10152, double %10144)
  %10154 = load ptr, ptr %7, align 8, !tbaa !9
  %10155 = load i32, ptr %12, align 4, !tbaa !5
  %10156 = load i32, ptr %8, align 4, !tbaa !5
  %10157 = mul nsw i32 48, %10156
  %10158 = add nsw i32 %10155, %10157
  %10159 = sext i32 %10158 to i64
  %10160 = getelementptr inbounds double, ptr %10154, i64 %10159
  %10161 = load double, ptr %10160, align 8, !tbaa !11
  %10162 = call double @llvm.fmuladd.f64(double 0xBFD7671404765127, double %10161, double %10153)
  %10163 = load ptr, ptr %7, align 8, !tbaa !9
  %10164 = load i32, ptr %12, align 4, !tbaa !5
  %10165 = load i32, ptr %8, align 4, !tbaa !5
  %10166 = mul nsw i32 49, %10165
  %10167 = add nsw i32 %10164, %10166
  %10168 = sext i32 %10167 to i64
  %10169 = getelementptr inbounds double, ptr %10163, i64 %10168
  %10170 = load double, ptr %10169, align 8, !tbaa !11
  %10171 = call double @llvm.fmuladd.f64(double 0xC01043858A1F5994, double %10170, double %10162)
  %10172 = load ptr, ptr %7, align 8, !tbaa !9
  %10173 = load i32, ptr %12, align 4, !tbaa !5
  %10174 = load i32, ptr %8, align 4, !tbaa !5
  %10175 = mul nsw i32 50, %10174
  %10176 = add nsw i32 %10173, %10175
  %10177 = sext i32 %10176 to i64
  %10178 = getelementptr inbounds double, ptr %10172, i64 %10177
  %10179 = load double, ptr %10178, align 8, !tbaa !11
  %10180 = call double @llvm.fmuladd.f64(double 0xBFD7BAC3393ADDB7, double %10179, double %10171)
  %10181 = load ptr, ptr %7, align 8, !tbaa !9
  %10182 = load i32, ptr %12, align 4, !tbaa !5
  %10183 = load i32, ptr %8, align 4, !tbaa !5
  %10184 = mul nsw i32 51, %10183
  %10185 = add nsw i32 %10182, %10184
  %10186 = sext i32 %10185 to i64
  %10187 = getelementptr inbounds double, ptr %10181, i64 %10186
  %10188 = load double, ptr %10187, align 8, !tbaa !11
  %10189 = call double @llvm.fmuladd.f64(double 0x3FC1964E14FA3C89, double %10188, double %10180)
  %10190 = load ptr, ptr %7, align 8, !tbaa !9
  %10191 = load i32, ptr %12, align 4, !tbaa !5
  %10192 = load i32, ptr %8, align 4, !tbaa !5
  %10193 = mul nsw i32 52, %10192
  %10194 = add nsw i32 %10191, %10193
  %10195 = sext i32 %10194 to i64
  %10196 = getelementptr inbounds double, ptr %10190, i64 %10195
  %10197 = load double, ptr %10196, align 8, !tbaa !11
  %10198 = call double @llvm.fmuladd.f64(double 0x3C53CC8A99AF5452, double %10197, double %10189)
  %10199 = load ptr, ptr %7, align 8, !tbaa !9
  %10200 = load i32, ptr %12, align 4, !tbaa !5
  %10201 = load i32, ptr %8, align 4, !tbaa !5
  %10202 = mul nsw i32 53, %10201
  %10203 = add nsw i32 %10200, %10202
  %10204 = sext i32 %10203 to i64
  %10205 = getelementptr inbounds double, ptr %10199, i64 %10204
  %10206 = load double, ptr %10205, align 8, !tbaa !11
  %10207 = call double @llvm.fmuladd.f64(double 0x3C8536948017480E, double %10206, double %10198)
  %10208 = load ptr, ptr %7, align 8, !tbaa !9
  %10209 = load i32, ptr %12, align 4, !tbaa !5
  %10210 = load i32, ptr %8, align 4, !tbaa !5
  %10211 = mul nsw i32 54, %10210
  %10212 = add nsw i32 %10209, %10211
  %10213 = sext i32 %10212 to i64
  %10214 = getelementptr inbounds double, ptr %10208, i64 %10213
  %10215 = load double, ptr %10214, align 8, !tbaa !11
  %10216 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %10215, double %10207)
  %10217 = load ptr, ptr %7, align 8, !tbaa !9
  %10218 = load i32, ptr %12, align 4, !tbaa !5
  %10219 = load i32, ptr %8, align 4, !tbaa !5
  %10220 = mul nsw i32 55, %10219
  %10221 = add nsw i32 %10218, %10220
  %10222 = sext i32 %10221 to i64
  %10223 = getelementptr inbounds double, ptr %10217, i64 %10222
  %10224 = load double, ptr %10223, align 8, !tbaa !11
  %10225 = call double @llvm.fmuladd.f64(double 0x3C93CC8A99AF5452, double %10224, double %10216)
  %10226 = load ptr, ptr %7, align 8, !tbaa !9
  %10227 = load i32, ptr %12, align 4, !tbaa !5
  %10228 = load i32, ptr %8, align 4, !tbaa !5
  %10229 = mul nsw i32 56, %10228
  %10230 = add nsw i32 %10227, %10229
  %10231 = sext i32 %10230 to i64
  %10232 = getelementptr inbounds double, ptr %10226, i64 %10231
  %10233 = load double, ptr %10232, align 8, !tbaa !11
  %10234 = call double @llvm.fmuladd.f64(double 0xBC94DC12067D4B20, double %10233, double %10225)
  %10235 = load ptr, ptr %7, align 8, !tbaa !9
  %10236 = load i32, ptr %12, align 4, !tbaa !5
  %10237 = load i32, ptr %8, align 4, !tbaa !5
  %10238 = mul nsw i32 57, %10237
  %10239 = add nsw i32 %10236, %10238
  %10240 = sext i32 %10239 to i64
  %10241 = getelementptr inbounds double, ptr %10235, i64 %10240
  %10242 = load double, ptr %10241, align 8, !tbaa !11
  %10243 = call double @llvm.fmuladd.f64(double 0xBC9536948017480F, double %10242, double %10234)
  %10244 = load ptr, ptr %7, align 8, !tbaa !9
  %10245 = load i32, ptr %12, align 4, !tbaa !5
  %10246 = load i32, ptr %8, align 4, !tbaa !5
  %10247 = mul nsw i32 58, %10246
  %10248 = add nsw i32 %10245, %10247
  %10249 = sext i32 %10248 to i64
  %10250 = getelementptr inbounds double, ptr %10244, i64 %10249
  %10251 = load double, ptr %10250, align 8, !tbaa !11
  %10252 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %10251, double %10243)
  %10253 = load ptr, ptr %7, align 8, !tbaa !9
  %10254 = load i32, ptr %12, align 4, !tbaa !5
  %10255 = load i32, ptr %8, align 4, !tbaa !5
  %10256 = mul nsw i32 59, %10255
  %10257 = add nsw i32 %10254, %10256
  %10258 = sext i32 %10257 to i64
  %10259 = getelementptr inbounds double, ptr %10253, i64 %10258
  %10260 = load double, ptr %10259, align 8, !tbaa !11
  %10261 = call double @llvm.fmuladd.f64(double 0x3C96A09E667F3BCC, double %10260, double %10252)
  %10262 = load ptr, ptr %7, align 8, !tbaa !9
  %10263 = load i32, ptr %12, align 4, !tbaa !5
  %10264 = load i32, ptr %8, align 4, !tbaa !5
  %10265 = mul nsw i32 60, %10264
  %10266 = add nsw i32 %10263, %10265
  %10267 = sext i32 %10266 to i64
  %10268 = getelementptr inbounds double, ptr %10262, i64 %10267
  %10269 = load double, ptr %10268, align 8, !tbaa !11
  %10270 = call double @llvm.fmuladd.f64(double 0x3C6F1CD9CCEEF238, double %10269, double %10261)
  %10271 = load ptr, ptr %7, align 8, !tbaa !9
  %10272 = load i32, ptr %12, align 4, !tbaa !5
  %10273 = load i32, ptr %8, align 4, !tbaa !5
  %10274 = mul nsw i32 61, %10273
  %10275 = add nsw i32 %10272, %10274
  %10276 = sext i32 %10275 to i64
  %10277 = getelementptr inbounds double, ptr %10271, i64 %10276
  %10278 = load double, ptr %10277, align 8, !tbaa !11
  %10279 = call double @llvm.fmuladd.f64(double 0x3C9ADEBC19B71702, double %10278, double %10270)
  %10280 = load ptr, ptr %7, align 8, !tbaa !9
  %10281 = load i32, ptr %12, align 4, !tbaa !5
  %10282 = load i32, ptr %8, align 4, !tbaa !5
  %10283 = mul nsw i32 62, %10282
  %10284 = add nsw i32 %10281, %10283
  %10285 = sext i32 %10284 to i64
  %10286 = getelementptr inbounds double, ptr %10280, i64 %10285
  %10287 = load double, ptr %10286, align 8, !tbaa !11
  %10288 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %10287, double %10279)
  %10289 = load ptr, ptr %7, align 8, !tbaa !9
  %10290 = load i32, ptr %12, align 4, !tbaa !5
  %10291 = load i32, ptr %8, align 4, !tbaa !5
  %10292 = mul nsw i32 64, %10291
  %10293 = add nsw i32 %10290, %10292
  %10294 = sext i32 %10293 to i64
  %10295 = getelementptr inbounds double, ptr %10289, i64 %10294
  %10296 = load double, ptr %10295, align 8, !tbaa !11
  %10297 = call double @llvm.fmuladd.f64(double 0xBF9102DA00B18A5A, double %10296, double %10288)
  %10298 = load ptr, ptr %7, align 8, !tbaa !9
  %10299 = load i32, ptr %12, align 4, !tbaa !5
  %10300 = load i32, ptr %8, align 4, !tbaa !5
  %10301 = mul nsw i32 65, %10300
  %10302 = add nsw i32 %10299, %10301
  %10303 = sext i32 %10302 to i64
  %10304 = getelementptr inbounds double, ptr %10298, i64 %10303
  %10305 = load double, ptr %10304, align 8, !tbaa !11
  %10306 = call double @llvm.fmuladd.f64(double 0x3FCD5953692F6EA6, double %10305, double %10297)
  %10307 = load ptr, ptr %7, align 8, !tbaa !9
  %10308 = load i32, ptr %12, align 4, !tbaa !5
  %10309 = load i32, ptr %8, align 4, !tbaa !5
  %10310 = mul nsw i32 66, %10309
  %10311 = add nsw i32 %10308, %10310
  %10312 = sext i32 %10311 to i64
  %10313 = getelementptr inbounds double, ptr %10307, i64 %10312
  %10314 = load double, ptr %10313, align 8, !tbaa !11
  %10315 = call double @llvm.fmuladd.f64(double 0x3FE3C4545BCF030B, double %10314, double %10306)
  %10316 = load ptr, ptr %7, align 8, !tbaa !9
  %10317 = load i32, ptr %12, align 4, !tbaa !5
  %10318 = load i32, ptr %8, align 4, !tbaa !5
  %10319 = mul nsw i32 67, %10318
  %10320 = add nsw i32 %10317, %10319
  %10321 = sext i32 %10320 to i64
  %10322 = getelementptr inbounds double, ptr %10316, i64 %10321
  %10323 = load double, ptr %10322, align 8, !tbaa !11
  %10324 = call double @llvm.fmuladd.f64(double 0x3FD6A4D32EB1F70D, double %10323, double %10315)
  store double %10324, ptr %11, align 8, !tbaa !11
  %10325 = load double, ptr %11, align 8, !tbaa !11
  %10326 = load ptr, ptr %9, align 8, !tbaa !9
  %10327 = load i32, ptr %12, align 4, !tbaa !5
  %10328 = load i32, ptr %10, align 4, !tbaa !5
  %10329 = mul nsw i32 35, %10328
  %10330 = add nsw i32 %10327, %10329
  %10331 = sext i32 %10330 to i64
  %10332 = getelementptr inbounds double, ptr %10326, i64 %10331
  store double %10325, ptr %10332, align 8, !tbaa !11
  %10333 = load ptr, ptr %7, align 8, !tbaa !9
  %10334 = load i32, ptr %12, align 4, !tbaa !5
  %10335 = load i32, ptr %8, align 4, !tbaa !5
  %10336 = mul nsw i32 36, %10335
  %10337 = add nsw i32 %10334, %10336
  %10338 = sext i32 %10337 to i64
  %10339 = getelementptr inbounds double, ptr %10333, i64 %10338
  %10340 = load double, ptr %10339, align 8, !tbaa !11
  %10341 = load ptr, ptr %7, align 8, !tbaa !9
  %10342 = load i32, ptr %12, align 4, !tbaa !5
  %10343 = load i32, ptr %8, align 4, !tbaa !5
  %10344 = mul nsw i32 37, %10343
  %10345 = add nsw i32 %10342, %10344
  %10346 = sext i32 %10345 to i64
  %10347 = getelementptr inbounds double, ptr %10341, i64 %10346
  %10348 = load double, ptr %10347, align 8, !tbaa !11
  %10349 = fmul double 0x3CA1200000000001, %10348
  %10350 = call double @llvm.fmuladd.f64(double 0x3CAD5FFFFFFFFFFF, double %10340, double %10349)
  %10351 = load ptr, ptr %7, align 8, !tbaa !9
  %10352 = load i32, ptr %12, align 4, !tbaa !5
  %10353 = load i32, ptr %8, align 4, !tbaa !5
  %10354 = mul nsw i32 38, %10353
  %10355 = add nsw i32 %10352, %10354
  %10356 = sext i32 %10355 to i64
  %10357 = getelementptr inbounds double, ptr %10351, i64 %10356
  %10358 = load double, ptr %10357, align 8, !tbaa !11
  %10359 = call double @llvm.fmuladd.f64(double 0xBCA1000000000001, double %10358, double %10350)
  %10360 = load ptr, ptr %7, align 8, !tbaa !9
  %10361 = load i32, ptr %12, align 4, !tbaa !5
  %10362 = load i32, ptr %8, align 4, !tbaa !5
  %10363 = mul nsw i32 39, %10362
  %10364 = add nsw i32 %10361, %10363
  %10365 = sext i32 %10364 to i64
  %10366 = getelementptr inbounds double, ptr %10360, i64 %10365
  %10367 = load double, ptr %10366, align 8, !tbaa !11
  %10368 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %10367, double %10359)
  %10369 = load ptr, ptr %7, align 8, !tbaa !9
  %10370 = load i32, ptr %12, align 4, !tbaa !5
  %10371 = load i32, ptr %8, align 4, !tbaa !5
  %10372 = mul nsw i32 40, %10371
  %10373 = add nsw i32 %10370, %10372
  %10374 = sext i32 %10373 to i64
  %10375 = getelementptr inbounds double, ptr %10369, i64 %10374
  %10376 = load double, ptr %10375, align 8, !tbaa !11
  %10377 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %10376, double %10368)
  %10378 = load ptr, ptr %7, align 8, !tbaa !9
  %10379 = load i32, ptr %12, align 4, !tbaa !5
  %10380 = load i32, ptr %8, align 4, !tbaa !5
  %10381 = mul nsw i32 41, %10380
  %10382 = add nsw i32 %10379, %10381
  %10383 = sext i32 %10382 to i64
  %10384 = getelementptr inbounds double, ptr %10378, i64 %10383
  %10385 = load double, ptr %10384, align 8, !tbaa !11
  %10386 = call double @llvm.fmuladd.f64(double 0x3C82000000000000, double %10385, double %10377)
  %10387 = load ptr, ptr %7, align 8, !tbaa !9
  %10388 = load i32, ptr %12, align 4, !tbaa !5
  %10389 = load i32, ptr %8, align 4, !tbaa !5
  %10390 = mul nsw i32 42, %10389
  %10391 = add nsw i32 %10388, %10390
  %10392 = sext i32 %10391 to i64
  %10393 = getelementptr inbounds double, ptr %10387, i64 %10392
  %10394 = load double, ptr %10393, align 8, !tbaa !11
  %10395 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %10394, double %10386)
  %10396 = load ptr, ptr %7, align 8, !tbaa !9
  %10397 = load i32, ptr %12, align 4, !tbaa !5
  %10398 = load i32, ptr %8, align 4, !tbaa !5
  %10399 = mul nsw i32 43, %10398
  %10400 = add nsw i32 %10397, %10399
  %10401 = sext i32 %10400 to i64
  %10402 = getelementptr inbounds double, ptr %10396, i64 %10401
  %10403 = load double, ptr %10402, align 8, !tbaa !11
  %10404 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %10403, double %10395)
  %10405 = load ptr, ptr %7, align 8, !tbaa !9
  %10406 = load i32, ptr %12, align 4, !tbaa !5
  %10407 = load i32, ptr %8, align 4, !tbaa !5
  %10408 = mul nsw i32 44, %10407
  %10409 = add nsw i32 %10406, %10408
  %10410 = sext i32 %10409 to i64
  %10411 = getelementptr inbounds double, ptr %10405, i64 %10410
  %10412 = load double, ptr %10411, align 8, !tbaa !11
  %10413 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %10412, double %10404)
  %10414 = load ptr, ptr %7, align 8, !tbaa !9
  %10415 = load i32, ptr %12, align 4, !tbaa !5
  %10416 = load i32, ptr %8, align 4, !tbaa !5
  %10417 = mul nsw i32 45, %10416
  %10418 = add nsw i32 %10415, %10417
  %10419 = sext i32 %10418 to i64
  %10420 = getelementptr inbounds double, ptr %10414, i64 %10419
  %10421 = load double, ptr %10420, align 8, !tbaa !11
  %10422 = call double @llvm.fmuladd.f64(double 0x3C97000000000000, double %10421, double %10413)
  %10423 = load ptr, ptr %7, align 8, !tbaa !9
  %10424 = load i32, ptr %12, align 4, !tbaa !5
  %10425 = load i32, ptr %8, align 4, !tbaa !5
  %10426 = mul nsw i32 46, %10425
  %10427 = add nsw i32 %10424, %10426
  %10428 = sext i32 %10427 to i64
  %10429 = getelementptr inbounds double, ptr %10423, i64 %10428
  %10430 = load double, ptr %10429, align 8, !tbaa !11
  %10431 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %10430, double %10422)
  %10432 = load ptr, ptr %7, align 8, !tbaa !9
  %10433 = load i32, ptr %12, align 4, !tbaa !5
  %10434 = load i32, ptr %8, align 4, !tbaa !5
  %10435 = mul nsw i32 47, %10434
  %10436 = add nsw i32 %10433, %10435
  %10437 = sext i32 %10436 to i64
  %10438 = getelementptr inbounds double, ptr %10432, i64 %10437
  %10439 = load double, ptr %10438, align 8, !tbaa !11
  %10440 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %10439, double %10431)
  %10441 = load ptr, ptr %7, align 8, !tbaa !9
  %10442 = load i32, ptr %12, align 4, !tbaa !5
  %10443 = load i32, ptr %8, align 4, !tbaa !5
  %10444 = mul nsw i32 48, %10443
  %10445 = add nsw i32 %10442, %10444
  %10446 = sext i32 %10445 to i64
  %10447 = getelementptr inbounds double, ptr %10441, i64 %10446
  %10448 = load double, ptr %10447, align 8, !tbaa !11
  %10449 = call double @llvm.fmuladd.f64(double 0x3FF043C98657E80E, double %10448, double %10440)
  %10450 = load ptr, ptr %7, align 8, !tbaa !9
  %10451 = load i32, ptr %12, align 4, !tbaa !5
  %10452 = load i32, ptr %8, align 4, !tbaa !5
  %10453 = mul nsw i32 49, %10452
  %10454 = add nsw i32 %10451, %10453
  %10455 = sext i32 %10454 to i64
  %10456 = getelementptr inbounds double, ptr %10450, i64 %10455
  %10457 = load double, ptr %10456, align 8, !tbaa !11
  %10458 = call double @llvm.fmuladd.f64(double 0x3FEFAD7976B5DE20, double %10457, double %10449)
  %10459 = load ptr, ptr %7, align 8, !tbaa !9
  %10460 = load i32, ptr %12, align 4, !tbaa !5
  %10461 = load i32, ptr %8, align 4, !tbaa !5
  %10462 = mul nsw i32 50, %10461
  %10463 = add nsw i32 %10460, %10462
  %10464 = sext i32 %10463 to i64
  %10465 = getelementptr inbounds double, ptr %10459, i64 %10464
  %10466 = load double, ptr %10465, align 8, !tbaa !11
  %10467 = call double @llvm.fmuladd.f64(double 0xBFB4C23AD63BEF81, double %10466, double %10458)
  %10468 = load ptr, ptr %7, align 8, !tbaa !9
  %10469 = load i32, ptr %12, align 4, !tbaa !5
  %10470 = load i32, ptr %8, align 4, !tbaa !5
  %10471 = mul nsw i32 51, %10470
  %10472 = add nsw i32 %10469, %10471
  %10473 = sext i32 %10472 to i64
  %10474 = getelementptr inbounds double, ptr %10468, i64 %10473
  %10475 = load double, ptr %10474, align 8, !tbaa !11
  %10476 = call double @llvm.fmuladd.f64(double 0xBFAC37F3CCE9FD3B, double %10475, double %10467)
  %10477 = load ptr, ptr %7, align 8, !tbaa !9
  %10478 = load i32, ptr %12, align 4, !tbaa !5
  %10479 = load i32, ptr %8, align 4, !tbaa !5
  %10480 = mul nsw i32 52, %10479
  %10481 = add nsw i32 %10478, %10480
  %10482 = sext i32 %10481 to i64
  %10483 = getelementptr inbounds double, ptr %10477, i64 %10482
  %10484 = load double, ptr %10483, align 8, !tbaa !11
  %10485 = call double @llvm.fmuladd.f64(double 0x3C86461BECE53EDC, double %10484, double %10476)
  %10486 = load ptr, ptr %7, align 8, !tbaa !9
  %10487 = load i32, ptr %12, align 4, !tbaa !5
  %10488 = load i32, ptr %8, align 4, !tbaa !5
  %10489 = mul nsw i32 53, %10488
  %10490 = add nsw i32 %10487, %10489
  %10491 = sext i32 %10490 to i64
  %10492 = getelementptr inbounds double, ptr %10486, i64 %10491
  %10493 = load double, ptr %10492, align 8, !tbaa !11
  %10494 = call double @llvm.fmuladd.f64(double 0x3CA196DB21ACE77D, double %10493, double %10485)
  %10495 = load ptr, ptr %7, align 8, !tbaa !9
  %10496 = load i32, ptr %12, align 4, !tbaa !5
  %10497 = load i32, ptr %8, align 4, !tbaa !5
  %10498 = mul nsw i32 54, %10497
  %10499 = add nsw i32 %10496, %10498
  %10500 = sext i32 %10499 to i64
  %10501 = getelementptr inbounds double, ptr %10495, i64 %10500
  %10502 = load double, ptr %10501, align 8, !tbaa !11
  %10503 = call double @llvm.fmuladd.f64(double 0x3C9ADEBC19B71702, double %10502, double %10494)
  %10504 = load ptr, ptr %7, align 8, !tbaa !9
  %10505 = load i32, ptr %12, align 4, !tbaa !5
  %10506 = load i32, ptr %8, align 4, !tbaa !5
  %10507 = mul nsw i32 56, %10506
  %10508 = add nsw i32 %10505, %10507
  %10509 = sext i32 %10508 to i64
  %10510 = getelementptr inbounds double, ptr %10504, i64 %10509
  %10511 = load double, ptr %10510, align 8, !tbaa !11
  %10512 = call double @llvm.fmuladd.f64(double 0xBC9C48C6001F0ABF, double %10511, double %10503)
  %10513 = load ptr, ptr %7, align 8, !tbaa !9
  %10514 = load i32, ptr %12, align 4, !tbaa !5
  %10515 = load i32, ptr %8, align 4, !tbaa !5
  %10516 = mul nsw i32 57, %10515
  %10517 = add nsw i32 %10514, %10516
  %10518 = sext i32 %10517 to i64
  %10519 = getelementptr inbounds double, ptr %10513, i64 %10518
  %10520 = load double, ptr %10519, align 8, !tbaa !11
  %10521 = call double @llvm.fmuladd.f64(double 0xBC9FD1DEC022EC15, double %10520, double %10512)
  %10522 = load ptr, ptr %7, align 8, !tbaa !9
  %10523 = load i32, ptr %12, align 4, !tbaa !5
  %10524 = load i32, ptr %8, align 4, !tbaa !5
  %10525 = mul nsw i32 58, %10524
  %10526 = add nsw i32 %10523, %10525
  %10527 = sext i32 %10526 to i64
  %10528 = getelementptr inbounds double, ptr %10522, i64 %10527
  %10529 = load double, ptr %10528, align 8, !tbaa !11
  %10530 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %10529, double %10521)
  %10531 = load ptr, ptr %7, align 8, !tbaa !9
  %10532 = load i32, ptr %12, align 4, !tbaa !5
  %10533 = load i32, ptr %8, align 4, !tbaa !5
  %10534 = mul nsw i32 59, %10533
  %10535 = add nsw i32 %10532, %10534
  %10536 = sext i32 %10535 to i64
  %10537 = getelementptr inbounds double, ptr %10531, i64 %10536
  %10538 = load double, ptr %10537, align 8, !tbaa !11
  %10539 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %10538, double %10530)
  %10540 = load ptr, ptr %7, align 8, !tbaa !9
  %10541 = load i32, ptr %12, align 4, !tbaa !5
  %10542 = load i32, ptr %8, align 4, !tbaa !5
  %10543 = mul nsw i32 60, %10542
  %10544 = add nsw i32 %10541, %10543
  %10545 = sext i32 %10544 to i64
  %10546 = getelementptr inbounds double, ptr %10540, i64 %10545
  %10547 = load double, ptr %10546, align 8, !tbaa !11
  %10548 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %10547, double %10539)
  %10549 = load ptr, ptr %7, align 8, !tbaa !9
  %10550 = load i32, ptr %12, align 4, !tbaa !5
  %10551 = load i32, ptr %8, align 4, !tbaa !5
  %10552 = mul nsw i32 61, %10551
  %10553 = add nsw i32 %10550, %10552
  %10554 = sext i32 %10553 to i64
  %10555 = getelementptr inbounds double, ptr %10549, i64 %10554
  %10556 = load double, ptr %10555, align 8, !tbaa !11
  %10557 = call double @llvm.fmuladd.f64(double 0x3CB344C6E34858EB, double %10556, double %10548)
  %10558 = load ptr, ptr %7, align 8, !tbaa !9
  %10559 = load i32, ptr %12, align 4, !tbaa !5
  %10560 = load i32, ptr %8, align 4, !tbaa !5
  %10561 = mul nsw i32 62, %10560
  %10562 = add nsw i32 %10559, %10561
  %10563 = sext i32 %10562 to i64
  %10564 = getelementptr inbounds double, ptr %10558, i64 %10563
  %10565 = load double, ptr %10564, align 8, !tbaa !11
  %10566 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %10565, double %10557)
  %10567 = load ptr, ptr %7, align 8, !tbaa !9
  %10568 = load i32, ptr %12, align 4, !tbaa !5
  %10569 = load i32, ptr %8, align 4, !tbaa !5
  %10570 = mul nsw i32 63, %10569
  %10571 = add nsw i32 %10568, %10570
  %10572 = sext i32 %10571 to i64
  %10573 = getelementptr inbounds double, ptr %10567, i64 %10572
  %10574 = load double, ptr %10573, align 8, !tbaa !11
  %10575 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %10574, double %10566)
  %10576 = load ptr, ptr %7, align 8, !tbaa !9
  %10577 = load i32, ptr %12, align 4, !tbaa !5
  %10578 = load i32, ptr %8, align 4, !tbaa !5
  %10579 = mul nsw i32 64, %10578
  %10580 = add nsw i32 %10577, %10579
  %10581 = sext i32 %10580 to i64
  %10582 = getelementptr inbounds double, ptr %10576, i64 %10581
  %10583 = load double, ptr %10582, align 8, !tbaa !11
  %10584 = call double @llvm.fmuladd.f64(double 0x3FD6A4D32EB1F718, double %10583, double %10575)
  %10585 = load ptr, ptr %7, align 8, !tbaa !9
  %10586 = load i32, ptr %12, align 4, !tbaa !5
  %10587 = load i32, ptr %8, align 4, !tbaa !5
  %10588 = mul nsw i32 65, %10587
  %10589 = add nsw i32 %10586, %10588
  %10590 = sext i32 %10589 to i64
  %10591 = getelementptr inbounds double, ptr %10585, i64 %10590
  %10592 = load double, ptr %10591, align 8, !tbaa !11
  %10593 = call double @llvm.fmuladd.f64(double 0x3FE3C4545BCF030B, double %10592, double %10584)
  %10594 = load ptr, ptr %7, align 8, !tbaa !9
  %10595 = load i32, ptr %12, align 4, !tbaa !5
  %10596 = load i32, ptr %8, align 4, !tbaa !5
  %10597 = mul nsw i32 66, %10596
  %10598 = add nsw i32 %10595, %10597
  %10599 = sext i32 %10598 to i64
  %10600 = getelementptr inbounds double, ptr %10594, i64 %10599
  %10601 = load double, ptr %10600, align 8, !tbaa !11
  %10602 = call double @llvm.fmuladd.f64(double 0x3FCD5953692F6EA3, double %10601, double %10593)
  %10603 = load ptr, ptr %7, align 8, !tbaa !9
  %10604 = load i32, ptr %12, align 4, !tbaa !5
  %10605 = load i32, ptr %8, align 4, !tbaa !5
  %10606 = mul nsw i32 67, %10605
  %10607 = add nsw i32 %10604, %10606
  %10608 = sext i32 %10607 to i64
  %10609 = getelementptr inbounds double, ptr %10603, i64 %10608
  %10610 = load double, ptr %10609, align 8, !tbaa !11
  %10611 = call double @llvm.fmuladd.f64(double 0xBF9102DA00B18A2C, double %10610, double %10602)
  store double %10611, ptr %11, align 8, !tbaa !11
  %10612 = load double, ptr %11, align 8, !tbaa !11
  %10613 = load ptr, ptr %9, align 8, !tbaa !9
  %10614 = load i32, ptr %12, align 4, !tbaa !5
  %10615 = load i32, ptr %10, align 4, !tbaa !5
  %10616 = mul nsw i32 36, %10615
  %10617 = add nsw i32 %10614, %10616
  %10618 = sext i32 %10617 to i64
  %10619 = getelementptr inbounds double, ptr %10613, i64 %10618
  store double %10612, ptr %10619, align 8, !tbaa !11
  %10620 = load ptr, ptr %7, align 8, !tbaa !9
  %10621 = load i32, ptr %12, align 4, !tbaa !5
  %10622 = load i32, ptr %8, align 4, !tbaa !5
  %10623 = mul nsw i32 36, %10622
  %10624 = add nsw i32 %10621, %10623
  %10625 = sext i32 %10624 to i64
  %10626 = getelementptr inbounds double, ptr %10620, i64 %10625
  %10627 = load double, ptr %10626, align 8, !tbaa !11
  %10628 = load ptr, ptr %7, align 8, !tbaa !9
  %10629 = load i32, ptr %12, align 4, !tbaa !5
  %10630 = load i32, ptr %8, align 4, !tbaa !5
  %10631 = mul nsw i32 37, %10630
  %10632 = add nsw i32 %10629, %10631
  %10633 = sext i32 %10632 to i64
  %10634 = getelementptr inbounds double, ptr %10628, i64 %10633
  %10635 = load double, ptr %10634, align 8, !tbaa !11
  %10636 = fmul double 0xBC5C000000000000, %10635
  %10637 = call double @llvm.fmuladd.f64(double 0xBCADDFFFFFFFFFFE, double %10627, double %10636)
  %10638 = load ptr, ptr %7, align 8, !tbaa !9
  %10639 = load i32, ptr %12, align 4, !tbaa !5
  %10640 = load i32, ptr %8, align 4, !tbaa !5
  %10641 = mul nsw i32 38, %10640
  %10642 = add nsw i32 %10639, %10641
  %10643 = sext i32 %10642 to i64
  %10644 = getelementptr inbounds double, ptr %10638, i64 %10643
  %10645 = load double, ptr %10644, align 8, !tbaa !11
  %10646 = call double @llvm.fmuladd.f64(double 0xBCA1000000000001, double %10645, double %10637)
  %10647 = load ptr, ptr %7, align 8, !tbaa !9
  %10648 = load i32, ptr %12, align 4, !tbaa !5
  %10649 = load i32, ptr %8, align 4, !tbaa !5
  %10650 = mul nsw i32 40, %10649
  %10651 = add nsw i32 %10648, %10650
  %10652 = sext i32 %10651 to i64
  %10653 = getelementptr inbounds double, ptr %10647, i64 %10652
  %10654 = load double, ptr %10653, align 8, !tbaa !11
  %10655 = call double @llvm.fmuladd.f64(double 0x3C9E7FFFFFFFFFFD, double %10654, double %10646)
  %10656 = load ptr, ptr %7, align 8, !tbaa !9
  %10657 = load i32, ptr %12, align 4, !tbaa !5
  %10658 = load i32, ptr %8, align 4, !tbaa !5
  %10659 = mul nsw i32 41, %10658
  %10660 = add nsw i32 %10657, %10659
  %10661 = sext i32 %10660 to i64
  %10662 = getelementptr inbounds double, ptr %10656, i64 %10661
  %10663 = load double, ptr %10662, align 8, !tbaa !11
  %10664 = call double @llvm.fmuladd.f64(double 0x3CA67FFFFFFFFFFE, double %10663, double %10655)
  %10665 = load ptr, ptr %7, align 8, !tbaa !9
  %10666 = load i32, ptr %12, align 4, !tbaa !5
  %10667 = load i32, ptr %8, align 4, !tbaa !5
  %10668 = mul nsw i32 42, %10667
  %10669 = add nsw i32 %10666, %10668
  %10670 = sext i32 %10669 to i64
  %10671 = getelementptr inbounds double, ptr %10665, i64 %10670
  %10672 = load double, ptr %10671, align 8, !tbaa !11
  %10673 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %10672, double %10664)
  %10674 = load ptr, ptr %7, align 8, !tbaa !9
  %10675 = load i32, ptr %12, align 4, !tbaa !5
  %10676 = load i32, ptr %8, align 4, !tbaa !5
  %10677 = mul nsw i32 43, %10676
  %10678 = add nsw i32 %10675, %10677
  %10679 = sext i32 %10678 to i64
  %10680 = getelementptr inbounds double, ptr %10674, i64 %10679
  %10681 = load double, ptr %10680, align 8, !tbaa !11
  %10682 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %10681, double %10673)
  %10683 = load ptr, ptr %7, align 8, !tbaa !9
  %10684 = load i32, ptr %12, align 4, !tbaa !5
  %10685 = load i32, ptr %8, align 4, !tbaa !5
  %10686 = mul nsw i32 44, %10685
  %10687 = add nsw i32 %10684, %10686
  %10688 = sext i32 %10687 to i64
  %10689 = getelementptr inbounds double, ptr %10683, i64 %10688
  %10690 = load double, ptr %10689, align 8, !tbaa !11
  %10691 = call double @llvm.fmuladd.f64(double 0x3C91800000000000, double %10690, double %10682)
  %10692 = load ptr, ptr %7, align 8, !tbaa !9
  %10693 = load i32, ptr %12, align 4, !tbaa !5
  %10694 = load i32, ptr %8, align 4, !tbaa !5
  %10695 = mul nsw i32 45, %10694
  %10696 = add nsw i32 %10693, %10695
  %10697 = sext i32 %10696 to i64
  %10698 = getelementptr inbounds double, ptr %10692, i64 %10697
  %10699 = load double, ptr %10698, align 8, !tbaa !11
  %10700 = call double @llvm.fmuladd.f64(double 0xBCB3400000000000, double %10699, double %10691)
  %10701 = load ptr, ptr %7, align 8, !tbaa !9
  %10702 = load i32, ptr %12, align 4, !tbaa !5
  %10703 = load i32, ptr %8, align 4, !tbaa !5
  %10704 = mul nsw i32 47, %10703
  %10705 = add nsw i32 %10702, %10704
  %10706 = sext i32 %10705 to i64
  %10707 = getelementptr inbounds double, ptr %10701, i64 %10706
  %10708 = load double, ptr %10707, align 8, !tbaa !11
  %10709 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %10708, double %10700)
  %10710 = load ptr, ptr %7, align 8, !tbaa !9
  %10711 = load i32, ptr %12, align 4, !tbaa !5
  %10712 = load i32, ptr %8, align 4, !tbaa !5
  %10713 = mul nsw i32 48, %10712
  %10714 = add nsw i32 %10711, %10713
  %10715 = sext i32 %10714 to i64
  %10716 = getelementptr inbounds double, ptr %10710, i64 %10715
  %10717 = load double, ptr %10716, align 8, !tbaa !11
  %10718 = call double @llvm.fmuladd.f64(double 0xBFE002F9665DF3E5, double %10717, double %10709)
  %10719 = load ptr, ptr %7, align 8, !tbaa !9
  %10720 = load i32, ptr %12, align 4, !tbaa !5
  %10721 = load i32, ptr %8, align 4, !tbaa !5
  %10722 = mul nsw i32 49, %10721
  %10723 = add nsw i32 %10720, %10722
  %10724 = sext i32 %10723 to i64
  %10725 = getelementptr inbounds double, ptr %10719, i64 %10724
  %10726 = load double, ptr %10725, align 8, !tbaa !11
  %10727 = call double @llvm.fmuladd.f64(double 0xBFEBF462FB348EF2, double %10726, double %10718)
  %10728 = load ptr, ptr %7, align 8, !tbaa !9
  %10729 = load i32, ptr %12, align 4, !tbaa !5
  %10730 = load i32, ptr %8, align 4, !tbaa !5
  %10731 = mul nsw i32 50, %10730
  %10732 = add nsw i32 %10729, %10731
  %10733 = sext i32 %10732 to i64
  %10734 = getelementptr inbounds double, ptr %10728, i64 %10733
  %10735 = load double, ptr %10734, align 8, !tbaa !11
  %10736 = call double @llvm.fmuladd.f64(double 0xBFD4C0B9406BCBCC, double %10735, double %10727)
  %10737 = load ptr, ptr %7, align 8, !tbaa !9
  %10738 = load i32, ptr %12, align 4, !tbaa !5
  %10739 = load i32, ptr %8, align 4, !tbaa !5
  %10740 = mul nsw i32 51, %10739
  %10741 = add nsw i32 %10738, %10740
  %10742 = sext i32 %10741 to i64
  %10743 = getelementptr inbounds double, ptr %10737, i64 %10742
  %10744 = load double, ptr %10743, align 8, !tbaa !11
  %10745 = call double @llvm.fmuladd.f64(double 0x3F980EB0AE1D483F, double %10744, double %10736)
  %10746 = load ptr, ptr %7, align 8, !tbaa !9
  %10747 = load i32, ptr %12, align 4, !tbaa !5
  %10748 = load i32, ptr %8, align 4, !tbaa !5
  %10749 = mul nsw i32 52, %10748
  %10750 = add nsw i32 %10747, %10749
  %10751 = sext i32 %10750 to i64
  %10752 = getelementptr inbounds double, ptr %10746, i64 %10751
  %10753 = load double, ptr %10752, align 8, !tbaa !11
  %10754 = call double @llvm.fmuladd.f64(double 0xBCA13C58A812EA8E, double %10753, double %10745)
  %10755 = load ptr, ptr %7, align 8, !tbaa !9
  %10756 = load i32, ptr %12, align 4, !tbaa !5
  %10757 = load i32, ptr %8, align 4, !tbaa !5
  %10758 = mul nsw i32 53, %10757
  %10759 = add nsw i32 %10756, %10758
  %10760 = sext i32 %10759 to i64
  %10761 = getelementptr inbounds double, ptr %10755, i64 %10760
  %10762 = load double, ptr %10761, align 8, !tbaa !11
  %10763 = call double @llvm.fmuladd.f64(double 0xBCA6023A11B1C128, double %10762, double %10754)
  %10764 = load ptr, ptr %7, align 8, !tbaa !9
  %10765 = load i32, ptr %12, align 4, !tbaa !5
  %10766 = load i32, ptr %8, align 4, !tbaa !5
  %10767 = mul nsw i32 54, %10766
  %10768 = add nsw i32 %10765, %10767
  %10769 = sext i32 %10768 to i64
  %10770 = getelementptr inbounds double, ptr %10764, i64 %10769
  %10771 = load double, ptr %10770, align 8, !tbaa !11
  %10772 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %10771, double %10763)
  %10773 = load ptr, ptr %7, align 8, !tbaa !9
  %10774 = load i32, ptr %12, align 4, !tbaa !5
  %10775 = load i32, ptr %8, align 4, !tbaa !5
  %10776 = mul nsw i32 56, %10775
  %10777 = add nsw i32 %10774, %10776
  %10778 = sext i32 %10777 to i64
  %10779 = getelementptr inbounds double, ptr %10773, i64 %10778
  %10780 = load double, ptr %10779, align 8, !tbaa !11
  %10781 = call double @llvm.fmuladd.f64(double 0x3CA344C6E34858EB, double %10780, double %10772)
  %10782 = load ptr, ptr %7, align 8, !tbaa !9
  %10783 = load i32, ptr %12, align 4, !tbaa !5
  %10784 = load i32, ptr %8, align 4, !tbaa !5
  %10785 = mul nsw i32 57, %10784
  %10786 = add nsw i32 %10783, %10785
  %10787 = sext i32 %10786 to i64
  %10788 = getelementptr inbounds double, ptr %10782, i64 %10787
  %10789 = load double, ptr %10788, align 8, !tbaa !11
  %10790 = call double @llvm.fmuladd.f64(double 0x3C73CC8A99AF5453, double %10789, double %10781)
  %10791 = load ptr, ptr %7, align 8, !tbaa !9
  %10792 = load i32, ptr %12, align 4, !tbaa !5
  %10793 = load i32, ptr %8, align 4, !tbaa !5
  %10794 = mul nsw i32 58, %10793
  %10795 = add nsw i32 %10792, %10794
  %10796 = sext i32 %10795 to i64
  %10797 = getelementptr inbounds double, ptr %10791, i64 %10796
  %10798 = load double, ptr %10797, align 8, !tbaa !11
  %10799 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %10798, double %10790)
  %10800 = load ptr, ptr %7, align 8, !tbaa !9
  %10801 = load i32, ptr %12, align 4, !tbaa !5
  %10802 = load i32, ptr %8, align 4, !tbaa !5
  %10803 = mul nsw i32 59, %10802
  %10804 = add nsw i32 %10801, %10803
  %10805 = sext i32 %10804 to i64
  %10806 = getelementptr inbounds double, ptr %10800, i64 %10805
  %10807 = load double, ptr %10806, align 8, !tbaa !11
  %10808 = call double @llvm.fmuladd.f64(double 0xBCA0F876CCDF6CD8, double %10807, double %10799)
  %10809 = load ptr, ptr %7, align 8, !tbaa !9
  %10810 = load i32, ptr %12, align 4, !tbaa !5
  %10811 = load i32, ptr %8, align 4, !tbaa !5
  %10812 = mul nsw i32 60, %10811
  %10813 = add nsw i32 %10810, %10812
  %10814 = sext i32 %10813 to i64
  %10815 = getelementptr inbounds double, ptr %10809, i64 %10814
  %10816 = load double, ptr %10815, align 8, !tbaa !11
  %10817 = call double @llvm.fmuladd.f64(double 0xBCA344C6E34858EB, double %10816, double %10808)
  %10818 = load ptr, ptr %7, align 8, !tbaa !9
  %10819 = load i32, ptr %12, align 4, !tbaa !5
  %10820 = load i32, ptr %8, align 4, !tbaa !5
  %10821 = mul nsw i32 61, %10820
  %10822 = add nsw i32 %10819, %10821
  %10823 = sext i32 %10822 to i64
  %10824 = getelementptr inbounds double, ptr %10818, i64 %10823
  %10825 = load double, ptr %10824, align 8, !tbaa !11
  %10826 = call double @llvm.fmuladd.f64(double 0x3C91AD7BC01366B7, double %10825, double %10817)
  %10827 = load ptr, ptr %7, align 8, !tbaa !9
  %10828 = load i32, ptr %12, align 4, !tbaa !5
  %10829 = load i32, ptr %8, align 4, !tbaa !5
  %10830 = mul nsw i32 62, %10829
  %10831 = add nsw i32 %10828, %10830
  %10832 = sext i32 %10831 to i64
  %10833 = getelementptr inbounds double, ptr %10827, i64 %10832
  %10834 = load double, ptr %10833, align 8, !tbaa !11
  %10835 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %10834, double %10826)
  %10836 = load ptr, ptr %7, align 8, !tbaa !9
  %10837 = load i32, ptr %12, align 4, !tbaa !5
  %10838 = load i32, ptr %8, align 4, !tbaa !5
  %10839 = mul nsw i32 63, %10838
  %10840 = add nsw i32 %10837, %10839
  %10841 = sext i32 %10840 to i64
  %10842 = getelementptr inbounds double, ptr %10836, i64 %10841
  %10843 = load double, ptr %10842, align 8, !tbaa !11
  %10844 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %10843, double %10835)
  %10845 = load ptr, ptr %7, align 8, !tbaa !9
  %10846 = load i32, ptr %12, align 4, !tbaa !5
  %10847 = load i32, ptr %8, align 4, !tbaa !5
  %10848 = mul nsw i32 64, %10847
  %10849 = add nsw i32 %10846, %10848
  %10850 = sext i32 %10849 to i64
  %10851 = getelementptr inbounds double, ptr %10845, i64 %10850
  %10852 = load double, ptr %10851, align 8, !tbaa !11
  %10853 = call double @llvm.fmuladd.f64(double 0xBFE7007BFD8FD859, double %10852, double %10844)
  %10854 = load ptr, ptr %7, align 8, !tbaa !9
  %10855 = load i32, ptr %12, align 4, !tbaa !5
  %10856 = load i32, ptr %8, align 4, !tbaa !5
  %10857 = mul nsw i32 65, %10856
  %10858 = add nsw i32 %10855, %10857
  %10859 = sext i32 %10858 to i64
  %10860 = getelementptr inbounds double, ptr %10854, i64 %10859
  %10861 = load double, ptr %10860, align 8, !tbaa !11
  %10862 = call double @llvm.fmuladd.f64(double 0xBFE66643AEED3706, double %10861, double %10853)
  %10863 = load ptr, ptr %7, align 8, !tbaa !9
  %10864 = load i32, ptr %12, align 4, !tbaa !5
  %10865 = load i32, ptr %8, align 4, !tbaa !5
  %10866 = mul nsw i32 66, %10865
  %10867 = add nsw i32 %10864, %10866
  %10868 = sext i32 %10867 to i64
  %10869 = getelementptr inbounds double, ptr %10863, i64 %10868
  %10870 = load double, ptr %10869, align 8, !tbaa !11
  %10871 = call double @llvm.fmuladd.f64(double 0x3FAD5B74B5F10E94, double %10870, double %10862)
  %10872 = load ptr, ptr %7, align 8, !tbaa !9
  %10873 = load i32, ptr %12, align 4, !tbaa !5
  %10874 = load i32, ptr %8, align 4, !tbaa !5
  %10875 = mul nsw i32 67, %10874
  %10876 = add nsw i32 %10873, %10875
  %10877 = sext i32 %10876 to i64
  %10878 = getelementptr inbounds double, ptr %10872, i64 %10877
  %10879 = load double, ptr %10878, align 8, !tbaa !11
  %10880 = call double @llvm.fmuladd.f64(double 0x3FA3F41B0E87BFBB, double %10879, double %10871)
  store double %10880, ptr %11, align 8, !tbaa !11
  %10881 = load double, ptr %11, align 8, !tbaa !11
  %10882 = load ptr, ptr %9, align 8, !tbaa !9
  %10883 = load i32, ptr %12, align 4, !tbaa !5
  %10884 = load i32, ptr %10, align 4, !tbaa !5
  %10885 = mul nsw i32 37, %10884
  %10886 = add nsw i32 %10883, %10885
  %10887 = sext i32 %10886 to i64
  %10888 = getelementptr inbounds double, ptr %10882, i64 %10887
  store double %10881, ptr %10888, align 8, !tbaa !11
  %10889 = load ptr, ptr %7, align 8, !tbaa !9
  %10890 = load i32, ptr %12, align 4, !tbaa !5
  %10891 = load i32, ptr %8, align 4, !tbaa !5
  %10892 = mul nsw i32 36, %10891
  %10893 = add nsw i32 %10890, %10892
  %10894 = sext i32 %10893 to i64
  %10895 = getelementptr inbounds double, ptr %10889, i64 %10894
  %10896 = load double, ptr %10895, align 8, !tbaa !11
  %10897 = load ptr, ptr %7, align 8, !tbaa !9
  %10898 = load i32, ptr %12, align 4, !tbaa !5
  %10899 = load i32, ptr %8, align 4, !tbaa !5
  %10900 = mul nsw i32 37, %10899
  %10901 = add nsw i32 %10898, %10900
  %10902 = sext i32 %10901 to i64
  %10903 = getelementptr inbounds double, ptr %10897, i64 %10902
  %10904 = load double, ptr %10903, align 8, !tbaa !11
  %10905 = fmul double 0xBCA7000000000002, %10904
  %10906 = call double @llvm.fmuladd.f64(double 0x3C58000000000000, double %10896, double %10905)
  %10907 = load ptr, ptr %7, align 8, !tbaa !9
  %10908 = load i32, ptr %12, align 4, !tbaa !5
  %10909 = load i32, ptr %8, align 4, !tbaa !5
  %10910 = mul nsw i32 38, %10909
  %10911 = add nsw i32 %10908, %10910
  %10912 = sext i32 %10911 to i64
  %10913 = getelementptr inbounds double, ptr %10907, i64 %10912
  %10914 = load double, ptr %10913, align 8, !tbaa !11
  %10915 = call double @llvm.fmuladd.f64(double 0xBCC3000000000000, double %10914, double %10906)
  %10916 = load ptr, ptr %7, align 8, !tbaa !9
  %10917 = load i32, ptr %12, align 4, !tbaa !5
  %10918 = load i32, ptr %8, align 4, !tbaa !5
  %10919 = mul nsw i32 39, %10918
  %10920 = add nsw i32 %10917, %10919
  %10921 = sext i32 %10920 to i64
  %10922 = getelementptr inbounds double, ptr %10916, i64 %10921
  %10923 = load double, ptr %10922, align 8, !tbaa !11
  %10924 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %10923, double %10915)
  %10925 = load ptr, ptr %7, align 8, !tbaa !9
  %10926 = load i32, ptr %12, align 4, !tbaa !5
  %10927 = load i32, ptr %8, align 4, !tbaa !5
  %10928 = mul nsw i32 40, %10927
  %10929 = add nsw i32 %10926, %10928
  %10930 = sext i32 %10929 to i64
  %10931 = getelementptr inbounds double, ptr %10925, i64 %10930
  %10932 = load double, ptr %10931, align 8, !tbaa !11
  %10933 = call double @llvm.fmuladd.f64(double 0x3C74000000000000, double %10932, double %10924)
  %10934 = load ptr, ptr %7, align 8, !tbaa !9
  %10935 = load i32, ptr %12, align 4, !tbaa !5
  %10936 = load i32, ptr %8, align 4, !tbaa !5
  %10937 = mul nsw i32 41, %10936
  %10938 = add nsw i32 %10935, %10937
  %10939 = sext i32 %10938 to i64
  %10940 = getelementptr inbounds double, ptr %10934, i64 %10939
  %10941 = load double, ptr %10940, align 8, !tbaa !11
  %10942 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %10941, double %10933)
  %10943 = load ptr, ptr %7, align 8, !tbaa !9
  %10944 = load i32, ptr %12, align 4, !tbaa !5
  %10945 = load i32, ptr %8, align 4, !tbaa !5
  %10946 = mul nsw i32 42, %10945
  %10947 = add nsw i32 %10944, %10946
  %10948 = sext i32 %10947 to i64
  %10949 = getelementptr inbounds double, ptr %10943, i64 %10948
  %10950 = load double, ptr %10949, align 8, !tbaa !11
  %10951 = call double @llvm.fmuladd.f64(double 0xBCC3000000000000, double %10950, double %10942)
  %10952 = load ptr, ptr %7, align 8, !tbaa !9
  %10953 = load i32, ptr %12, align 4, !tbaa !5
  %10954 = load i32, ptr %8, align 4, !tbaa !5
  %10955 = mul nsw i32 43, %10954
  %10956 = add nsw i32 %10953, %10955
  %10957 = sext i32 %10956 to i64
  %10958 = getelementptr inbounds double, ptr %10952, i64 %10957
  %10959 = load double, ptr %10958, align 8, !tbaa !11
  %10960 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %10959, double %10951)
  %10961 = load ptr, ptr %7, align 8, !tbaa !9
  %10962 = load i32, ptr %12, align 4, !tbaa !5
  %10963 = load i32, ptr %8, align 4, !tbaa !5
  %10964 = mul nsw i32 44, %10963
  %10965 = add nsw i32 %10962, %10964
  %10966 = sext i32 %10965 to i64
  %10967 = getelementptr inbounds double, ptr %10961, i64 %10966
  %10968 = load double, ptr %10967, align 8, !tbaa !11
  %10969 = call double @llvm.fmuladd.f64(double 0x3C86000000000001, double %10968, double %10960)
  %10970 = load ptr, ptr %7, align 8, !tbaa !9
  %10971 = load i32, ptr %12, align 4, !tbaa !5
  %10972 = load i32, ptr %8, align 4, !tbaa !5
  %10973 = mul nsw i32 45, %10972
  %10974 = add nsw i32 %10971, %10973
  %10975 = sext i32 %10974 to i64
  %10976 = getelementptr inbounds double, ptr %10970, i64 %10975
  %10977 = load double, ptr %10976, align 8, !tbaa !11
  %10978 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %10977, double %10969)
  %10979 = load ptr, ptr %7, align 8, !tbaa !9
  %10980 = load i32, ptr %12, align 4, !tbaa !5
  %10981 = load i32, ptr %8, align 4, !tbaa !5
  %10982 = mul nsw i32 46, %10981
  %10983 = add nsw i32 %10980, %10982
  %10984 = sext i32 %10983 to i64
  %10985 = getelementptr inbounds double, ptr %10979, i64 %10984
  %10986 = load double, ptr %10985, align 8, !tbaa !11
  %10987 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %10986, double %10978)
  %10988 = load ptr, ptr %7, align 8, !tbaa !9
  %10989 = load i32, ptr %12, align 4, !tbaa !5
  %10990 = load i32, ptr %8, align 4, !tbaa !5
  %10991 = mul nsw i32 47, %10990
  %10992 = add nsw i32 %10989, %10991
  %10993 = sext i32 %10992 to i64
  %10994 = getelementptr inbounds double, ptr %10988, i64 %10993
  %10995 = load double, ptr %10994, align 8, !tbaa !11
  %10996 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %10995, double %10987)
  %10997 = load ptr, ptr %7, align 8, !tbaa !9
  %10998 = load i32, ptr %12, align 4, !tbaa !5
  %10999 = load i32, ptr %8, align 4, !tbaa !5
  %11000 = mul nsw i32 48, %10999
  %11001 = add nsw i32 %10998, %11000
  %11002 = sext i32 %11001 to i64
  %11003 = getelementptr inbounds double, ptr %10997, i64 %11002
  %11004 = load double, ptr %11003, align 8, !tbaa !11
  %11005 = call double @llvm.fmuladd.f64(double 0x3FC1964E14FA3C91, double %11004, double %10996)
  %11006 = load ptr, ptr %7, align 8, !tbaa !9
  %11007 = load i32, ptr %12, align 4, !tbaa !5
  %11008 = load i32, ptr %8, align 4, !tbaa !5
  %11009 = mul nsw i32 49, %11008
  %11010 = add nsw i32 %11007, %11009
  %11011 = sext i32 %11010 to i64
  %11012 = getelementptr inbounds double, ptr %11006, i64 %11011
  %11013 = load double, ptr %11012, align 8, !tbaa !11
  %11014 = call double @llvm.fmuladd.f64(double 0xBFD7BAC3393ADDAB, double %11013, double %11005)
  %11015 = load ptr, ptr %7, align 8, !tbaa !9
  %11016 = load i32, ptr %12, align 4, !tbaa !5
  %11017 = load i32, ptr %8, align 4, !tbaa !5
  %11018 = mul nsw i32 50, %11017
  %11019 = add nsw i32 %11016, %11018
  %11020 = sext i32 %11019 to i64
  %11021 = getelementptr inbounds double, ptr %11015, i64 %11020
  %11022 = load double, ptr %11021, align 8, !tbaa !11
  %11023 = call double @llvm.fmuladd.f64(double 0xC01043858A1F5991, double %11022, double %11014)
  %11024 = load ptr, ptr %7, align 8, !tbaa !9
  %11025 = load i32, ptr %12, align 4, !tbaa !5
  %11026 = load i32, ptr %8, align 4, !tbaa !5
  %11027 = mul nsw i32 51, %11026
  %11028 = add nsw i32 %11025, %11027
  %11029 = sext i32 %11028 to i64
  %11030 = getelementptr inbounds double, ptr %11024, i64 %11029
  %11031 = load double, ptr %11030, align 8, !tbaa !11
  %11032 = call double @llvm.fmuladd.f64(double 0xBFD767140476510C, double %11031, double %11023)
  %11033 = load ptr, ptr %7, align 8, !tbaa !9
  %11034 = load i32, ptr %12, align 4, !tbaa !5
  %11035 = load i32, ptr %8, align 4, !tbaa !5
  %11036 = mul nsw i32 52, %11035
  %11037 = add nsw i32 %11034, %11036
  %11038 = sext i32 %11037 to i64
  %11039 = getelementptr inbounds double, ptr %11033, i64 %11038
  %11040 = load double, ptr %11039, align 8, !tbaa !11
  %11041 = call double @llvm.fmuladd.f64(double 0x3C6F1CD9CCEEF238, double %11040, double %11032)
  %11042 = load ptr, ptr %7, align 8, !tbaa !9
  %11043 = load i32, ptr %12, align 4, !tbaa !5
  %11044 = load i32, ptr %8, align 4, !tbaa !5
  %11045 = mul nsw i32 53, %11044
  %11046 = add nsw i32 %11043, %11045
  %11047 = sext i32 %11046 to i64
  %11048 = getelementptr inbounds double, ptr %11042, i64 %11047
  %11049 = load double, ptr %11048, align 8, !tbaa !11
  %11050 = call double @llvm.fmuladd.f64(double 0x3C8974B2334F2346, double %11049, double %11041)
  %11051 = load ptr, ptr %7, align 8, !tbaa !9
  %11052 = load i32, ptr %12, align 4, !tbaa !5
  %11053 = load i32, ptr %8, align 4, !tbaa !5
  %11054 = mul nsw i32 54, %11053
  %11055 = add nsw i32 %11052, %11054
  %11056 = sext i32 %11055 to i64
  %11057 = getelementptr inbounds double, ptr %11051, i64 %11056
  %11058 = load double, ptr %11057, align 8, !tbaa !11
  %11059 = call double @llvm.fmuladd.f64(double 0xBCAADEBC19B71703, double %11058, double %11050)
  %11060 = load ptr, ptr %7, align 8, !tbaa !9
  %11061 = load i32, ptr %12, align 4, !tbaa !5
  %11062 = load i32, ptr %8, align 4, !tbaa !5
  %11063 = mul nsw i32 55, %11062
  %11064 = add nsw i32 %11061, %11063
  %11065 = sext i32 %11064 to i64
  %11066 = getelementptr inbounds double, ptr %11060, i64 %11065
  %11067 = load double, ptr %11066, align 8, !tbaa !11
  %11068 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %11067, double %11059)
  %11069 = load ptr, ptr %7, align 8, !tbaa !9
  %11070 = load i32, ptr %12, align 4, !tbaa !5
  %11071 = load i32, ptr %8, align 4, !tbaa !5
  %11072 = mul nsw i32 56, %11071
  %11073 = add nsw i32 %11070, %11072
  %11074 = sext i32 %11073 to i64
  %11075 = getelementptr inbounds double, ptr %11069, i64 %11074
  %11076 = load double, ptr %11075, align 8, !tbaa !11
  %11077 = call double @llvm.fmuladd.f64(double 0x3C60F876CCDF6CD9, double %11076, double %11068)
  %11078 = load ptr, ptr %7, align 8, !tbaa !9
  %11079 = load i32, ptr %12, align 4, !tbaa !5
  %11080 = load i32, ptr %8, align 4, !tbaa !5
  %11081 = mul nsw i32 57, %11080
  %11082 = add nsw i32 %11079, %11081
  %11083 = sext i32 %11082 to i64
  %11084 = getelementptr inbounds double, ptr %11078, i64 %11083
  %11085 = load double, ptr %11084, align 8, !tbaa !11
  %11086 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %11085, double %11077)
  %11087 = load ptr, ptr %7, align 8, !tbaa !9
  %11088 = load i32, ptr %12, align 4, !tbaa !5
  %11089 = load i32, ptr %8, align 4, !tbaa !5
  %11090 = mul nsw i32 58, %11089
  %11091 = add nsw i32 %11088, %11090
  %11092 = sext i32 %11091 to i64
  %11093 = getelementptr inbounds double, ptr %11087, i64 %11092
  %11094 = load double, ptr %11093, align 8, !tbaa !11
  %11095 = call double @llvm.fmuladd.f64(double 0xBCA6A09E667F3BCC, double %11094, double %11086)
  %11096 = load ptr, ptr %7, align 8, !tbaa !9
  %11097 = load i32, ptr %12, align 4, !tbaa !5
  %11098 = load i32, ptr %8, align 4, !tbaa !5
  %11099 = mul nsw i32 59, %11098
  %11100 = add nsw i32 %11097, %11099
  %11101 = sext i32 %11100 to i64
  %11102 = getelementptr inbounds double, ptr %11096, i64 %11101
  %11103 = load double, ptr %11102, align 8, !tbaa !11
  %11104 = call double @llvm.fmuladd.f64(double 0xBCA6A09E667F3BCC, double %11103, double %11095)
  %11105 = load ptr, ptr %7, align 8, !tbaa !9
  %11106 = load i32, ptr %12, align 4, !tbaa !5
  %11107 = load i32, ptr %8, align 4, !tbaa !5
  %11108 = mul nsw i32 60, %11107
  %11109 = add nsw i32 %11106, %11108
  %11110 = sext i32 %11109 to i64
  %11111 = getelementptr inbounds double, ptr %11105, i64 %11110
  %11112 = load double, ptr %11111, align 8, !tbaa !11
  %11113 = call double @llvm.fmuladd.f64(double 0x3C826280B3476096, double %11112, double %11104)
  %11114 = load ptr, ptr %7, align 8, !tbaa !9
  %11115 = load i32, ptr %12, align 4, !tbaa !5
  %11116 = load i32, ptr %8, align 4, !tbaa !5
  %11117 = mul nsw i32 61, %11116
  %11118 = add nsw i32 %11115, %11117
  %11119 = sext i32 %11118 to i64
  %11120 = getelementptr inbounds double, ptr %11114, i64 %11119
  %11121 = load double, ptr %11120, align 8, !tbaa !11
  %11122 = call double @llvm.fmuladd.f64(double 0x3C8C48C6001F0AC0, double %11121, double %11113)
  %11123 = load ptr, ptr %7, align 8, !tbaa !9
  %11124 = load i32, ptr %12, align 4, !tbaa !5
  %11125 = load i32, ptr %8, align 4, !tbaa !5
  %11126 = mul nsw i32 63, %11125
  %11127 = add nsw i32 %11124, %11126
  %11128 = sext i32 %11127 to i64
  %11129 = getelementptr inbounds double, ptr %11123, i64 %11128
  %11130 = load double, ptr %11129, align 8, !tbaa !11
  %11131 = call double @llvm.fmuladd.f64(double 0x3C96A09E667F3BCC, double %11130, double %11122)
  %11132 = load ptr, ptr %7, align 8, !tbaa !9
  %11133 = load i32, ptr %12, align 4, !tbaa !5
  %11134 = load i32, ptr %8, align 4, !tbaa !5
  %11135 = mul nsw i32 64, %11134
  %11136 = add nsw i32 %11133, %11135
  %11137 = sext i32 %11136 to i64
  %11138 = getelementptr inbounds double, ptr %11132, i64 %11137
  %11139 = load double, ptr %11138, align 8, !tbaa !11
  %11140 = call double @llvm.fmuladd.f64(double 0x3FA3F41B0E87BFEB, double %11139, double %11131)
  %11141 = load ptr, ptr %7, align 8, !tbaa !9
  %11142 = load i32, ptr %12, align 4, !tbaa !5
  %11143 = load i32, ptr %8, align 4, !tbaa !5
  %11144 = mul nsw i32 65, %11143
  %11145 = add nsw i32 %11142, %11144
  %11146 = sext i32 %11145 to i64
  %11147 = getelementptr inbounds double, ptr %11141, i64 %11146
  %11148 = load double, ptr %11147, align 8, !tbaa !11
  %11149 = call double @llvm.fmuladd.f64(double 0x3FAD5B74B5F10E92, double %11148, double %11140)
  %11150 = load ptr, ptr %7, align 8, !tbaa !9
  %11151 = load i32, ptr %12, align 4, !tbaa !5
  %11152 = load i32, ptr %8, align 4, !tbaa !5
  %11153 = mul nsw i32 66, %11152
  %11154 = add nsw i32 %11151, %11153
  %11155 = sext i32 %11154 to i64
  %11156 = getelementptr inbounds double, ptr %11150, i64 %11155
  %11157 = load double, ptr %11156, align 8, !tbaa !11
  %11158 = call double @llvm.fmuladd.f64(double 0xBFE66643AEED36FA, double %11157, double %11149)
  %11159 = load ptr, ptr %7, align 8, !tbaa !9
  %11160 = load i32, ptr %12, align 4, !tbaa !5
  %11161 = load i32, ptr %8, align 4, !tbaa !5
  %11162 = mul nsw i32 67, %11161
  %11163 = add nsw i32 %11160, %11162
  %11164 = sext i32 %11163 to i64
  %11165 = getelementptr inbounds double, ptr %11159, i64 %11164
  %11166 = load double, ptr %11165, align 8, !tbaa !11
  %11167 = call double @llvm.fmuladd.f64(double 0xBFE7007BFD8FD85B, double %11166, double %11158)
  store double %11167, ptr %11, align 8, !tbaa !11
  %11168 = load double, ptr %11, align 8, !tbaa !11
  %11169 = load ptr, ptr %9, align 8, !tbaa !9
  %11170 = load i32, ptr %12, align 4, !tbaa !5
  %11171 = load i32, ptr %10, align 4, !tbaa !5
  %11172 = mul nsw i32 38, %11171
  %11173 = add nsw i32 %11170, %11172
  %11174 = sext i32 %11173 to i64
  %11175 = getelementptr inbounds double, ptr %11169, i64 %11174
  store double %11168, ptr %11175, align 8, !tbaa !11
  %11176 = load ptr, ptr %7, align 8, !tbaa !9
  %11177 = load i32, ptr %12, align 4, !tbaa !5
  %11178 = load i32, ptr %8, align 4, !tbaa !5
  %11179 = mul nsw i32 36, %11178
  %11180 = add nsw i32 %11177, %11179
  %11181 = sext i32 %11180 to i64
  %11182 = getelementptr inbounds double, ptr %11176, i64 %11181
  %11183 = load double, ptr %11182, align 8, !tbaa !11
  %11184 = load ptr, ptr %7, align 8, !tbaa !9
  %11185 = load i32, ptr %12, align 4, !tbaa !5
  %11186 = load i32, ptr %8, align 4, !tbaa !5
  %11187 = mul nsw i32 37, %11186
  %11188 = add nsw i32 %11185, %11187
  %11189 = sext i32 %11188 to i64
  %11190 = getelementptr inbounds double, ptr %11184, i64 %11189
  %11191 = load double, ptr %11190, align 8, !tbaa !11
  %11192 = fmul double 0xBC92000000000000, %11191
  %11193 = call double @llvm.fmuladd.f64(double 0xBC76000000000001, double %11183, double %11192)
  %11194 = load ptr, ptr %7, align 8, !tbaa !9
  %11195 = load i32, ptr %12, align 4, !tbaa !5
  %11196 = load i32, ptr %8, align 4, !tbaa !5
  %11197 = mul nsw i32 38, %11196
  %11198 = add nsw i32 %11195, %11197
  %11199 = sext i32 %11198 to i64
  %11200 = getelementptr inbounds double, ptr %11194, i64 %11199
  %11201 = load double, ptr %11200, align 8, !tbaa !11
  %11202 = call double @llvm.fmuladd.f64(double 0x3CB3000000000000, double %11201, double %11193)
  %11203 = load ptr, ptr %7, align 8, !tbaa !9
  %11204 = load i32, ptr %12, align 4, !tbaa !5
  %11205 = load i32, ptr %8, align 4, !tbaa !5
  %11206 = mul nsw i32 39, %11205
  %11207 = add nsw i32 %11204, %11206
  %11208 = sext i32 %11207 to i64
  %11209 = getelementptr inbounds double, ptr %11203, i64 %11208
  %11210 = load double, ptr %11209, align 8, !tbaa !11
  %11211 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %11210, double %11202)
  %11212 = load ptr, ptr %7, align 8, !tbaa !9
  %11213 = load i32, ptr %12, align 4, !tbaa !5
  %11214 = load i32, ptr %8, align 4, !tbaa !5
  %11215 = mul nsw i32 40, %11214
  %11216 = add nsw i32 %11213, %11215
  %11217 = sext i32 %11216 to i64
  %11218 = getelementptr inbounds double, ptr %11212, i64 %11217
  %11219 = load double, ptr %11218, align 8, !tbaa !11
  %11220 = call double @llvm.fmuladd.f64(double 0xBC67FFFFFFFFFFFE, double %11219, double %11211)
  %11221 = load ptr, ptr %7, align 8, !tbaa !9
  %11222 = load i32, ptr %12, align 4, !tbaa !5
  %11223 = load i32, ptr %8, align 4, !tbaa !5
  %11224 = mul nsw i32 41, %11223
  %11225 = add nsw i32 %11222, %11224
  %11226 = sext i32 %11225 to i64
  %11227 = getelementptr inbounds double, ptr %11221, i64 %11226
  %11228 = load double, ptr %11227, align 8, !tbaa !11
  %11229 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %11228, double %11220)
  %11230 = load ptr, ptr %7, align 8, !tbaa !9
  %11231 = load i32, ptr %12, align 4, !tbaa !5
  %11232 = load i32, ptr %8, align 4, !tbaa !5
  %11233 = mul nsw i32 42, %11232
  %11234 = add nsw i32 %11231, %11233
  %11235 = sext i32 %11234 to i64
  %11236 = getelementptr inbounds double, ptr %11230, i64 %11235
  %11237 = load double, ptr %11236, align 8, !tbaa !11
  %11238 = call double @llvm.fmuladd.f64(double 0x3CB0000000000000, double %11237, double %11229)
  %11239 = load ptr, ptr %7, align 8, !tbaa !9
  %11240 = load i32, ptr %12, align 4, !tbaa !5
  %11241 = load i32, ptr %8, align 4, !tbaa !5
  %11242 = mul nsw i32 43, %11241
  %11243 = add nsw i32 %11240, %11242
  %11244 = sext i32 %11243 to i64
  %11245 = getelementptr inbounds double, ptr %11239, i64 %11244
  %11246 = load double, ptr %11245, align 8, !tbaa !11
  %11247 = call double @llvm.fmuladd.f64(double 0x3CB0000000000000, double %11246, double %11238)
  %11248 = load ptr, ptr %7, align 8, !tbaa !9
  %11249 = load i32, ptr %12, align 4, !tbaa !5
  %11250 = load i32, ptr %8, align 4, !tbaa !5
  %11251 = mul nsw i32 44, %11250
  %11252 = add nsw i32 %11249, %11251
  %11253 = sext i32 %11252 to i64
  %11254 = getelementptr inbounds double, ptr %11248, i64 %11253
  %11255 = load double, ptr %11254, align 8, !tbaa !11
  %11256 = call double @llvm.fmuladd.f64(double 0xBC89FFFFFFFFFFFF, double %11255, double %11247)
  %11257 = load ptr, ptr %7, align 8, !tbaa !9
  %11258 = load i32, ptr %12, align 4, !tbaa !5
  %11259 = load i32, ptr %8, align 4, !tbaa !5
  %11260 = mul nsw i32 45, %11259
  %11261 = add nsw i32 %11258, %11260
  %11262 = sext i32 %11261 to i64
  %11263 = getelementptr inbounds double, ptr %11257, i64 %11262
  %11264 = load double, ptr %11263, align 8, !tbaa !11
  %11265 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %11264, double %11256)
  %11266 = load ptr, ptr %7, align 8, !tbaa !9
  %11267 = load i32, ptr %12, align 4, !tbaa !5
  %11268 = load i32, ptr %8, align 4, !tbaa !5
  %11269 = mul nsw i32 47, %11268
  %11270 = add nsw i32 %11267, %11269
  %11271 = sext i32 %11270 to i64
  %11272 = getelementptr inbounds double, ptr %11266, i64 %11271
  %11273 = load double, ptr %11272, align 8, !tbaa !11
  %11274 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %11273, double %11265)
  %11275 = load ptr, ptr %7, align 8, !tbaa !9
  %11276 = load i32, ptr %12, align 4, !tbaa !5
  %11277 = load i32, ptr %8, align 4, !tbaa !5
  %11278 = mul nsw i32 48, %11277
  %11279 = add nsw i32 %11276, %11278
  %11280 = sext i32 %11279 to i64
  %11281 = getelementptr inbounds double, ptr %11275, i64 %11280
  %11282 = load double, ptr %11281, align 8, !tbaa !11
  %11283 = call double @llvm.fmuladd.f64(double 0xBFAC37F3CCE9FD85, double %11282, double %11274)
  %11284 = load ptr, ptr %7, align 8, !tbaa !9
  %11285 = load i32, ptr %12, align 4, !tbaa !5
  %11286 = load i32, ptr %8, align 4, !tbaa !5
  %11287 = mul nsw i32 49, %11286
  %11288 = add nsw i32 %11285, %11287
  %11289 = sext i32 %11288 to i64
  %11290 = getelementptr inbounds double, ptr %11284, i64 %11289
  %11291 = load double, ptr %11290, align 8, !tbaa !11
  %11292 = call double @llvm.fmuladd.f64(double 0xBFB4C23AD63BEF7C, double %11291, double %11283)
  %11293 = load ptr, ptr %7, align 8, !tbaa !9
  %11294 = load i32, ptr %12, align 4, !tbaa !5
  %11295 = load i32, ptr %8, align 4, !tbaa !5
  %11296 = mul nsw i32 50, %11295
  %11297 = add nsw i32 %11294, %11296
  %11298 = sext i32 %11297 to i64
  %11299 = getelementptr inbounds double, ptr %11293, i64 %11298
  %11300 = load double, ptr %11299, align 8, !tbaa !11
  %11301 = call double @llvm.fmuladd.f64(double 0x3FEFAD7976B5DE10, double %11300, double %11292)
  %11302 = load ptr, ptr %7, align 8, !tbaa !9
  %11303 = load i32, ptr %12, align 4, !tbaa !5
  %11304 = load i32, ptr %8, align 4, !tbaa !5
  %11305 = mul nsw i32 51, %11304
  %11306 = add nsw i32 %11303, %11305
  %11307 = sext i32 %11306 to i64
  %11308 = getelementptr inbounds double, ptr %11302, i64 %11307
  %11309 = load double, ptr %11308, align 8, !tbaa !11
  %11310 = call double @llvm.fmuladd.f64(double 0x3FF043C98657E80E, double %11309, double %11301)
  %11311 = load ptr, ptr %7, align 8, !tbaa !9
  %11312 = load i32, ptr %12, align 4, !tbaa !5
  %11313 = load i32, ptr %8, align 4, !tbaa !5
  %11314 = mul nsw i32 52, %11313
  %11315 = add nsw i32 %11312, %11314
  %11316 = sext i32 %11315 to i64
  %11317 = getelementptr inbounds double, ptr %11311, i64 %11316
  %11318 = load double, ptr %11317, align 8, !tbaa !11
  %11319 = call double @llvm.fmuladd.f64(double 0xBC50F876CCDF6CD8, double %11318, double %11310)
  %11320 = load ptr, ptr %7, align 8, !tbaa !9
  %11321 = load i32, ptr %12, align 4, !tbaa !5
  %11322 = load i32, ptr %8, align 4, !tbaa !5
  %11323 = mul nsw i32 53, %11322
  %11324 = add nsw i32 %11321, %11323
  %11325 = sext i32 %11324 to i64
  %11326 = getelementptr inbounds double, ptr %11320, i64 %11325
  %11327 = load double, ptr %11326, align 8, !tbaa !11
  %11328 = call double @llvm.fmuladd.f64(double 0x3CA04371D9AB72FA, double %11327, double %11319)
  %11329 = load ptr, ptr %7, align 8, !tbaa !9
  %11330 = load i32, ptr %12, align 4, !tbaa !5
  %11331 = load i32, ptr %8, align 4, !tbaa !5
  %11332 = mul nsw i32 54, %11331
  %11333 = add nsw i32 %11330, %11332
  %11334 = sext i32 %11333 to i64
  %11335 = getelementptr inbounds double, ptr %11329, i64 %11334
  %11336 = load double, ptr %11335, align 8, !tbaa !11
  %11337 = call double @llvm.fmuladd.f64(double 0x3CBADEBC19B71701, double %11336, double %11328)
  %11338 = load ptr, ptr %7, align 8, !tbaa !9
  %11339 = load i32, ptr %12, align 4, !tbaa !5
  %11340 = load i32, ptr %8, align 4, !tbaa !5
  %11341 = mul nsw i32 55, %11340
  %11342 = add nsw i32 %11339, %11341
  %11343 = sext i32 %11342 to i64
  %11344 = getelementptr inbounds double, ptr %11338, i64 %11343
  %11345 = load double, ptr %11344, align 8, !tbaa !11
  %11346 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %11345, double %11337)
  %11347 = load ptr, ptr %7, align 8, !tbaa !9
  %11348 = load i32, ptr %12, align 4, !tbaa !5
  %11349 = load i32, ptr %8, align 4, !tbaa !5
  %11350 = mul nsw i32 56, %11349
  %11351 = add nsw i32 %11348, %11350
  %11352 = sext i32 %11351 to i64
  %11353 = getelementptr inbounds double, ptr %11347, i64 %11352
  %11354 = load double, ptr %11353, align 8, !tbaa !11
  %11355 = call double @llvm.fmuladd.f64(double 0xBC6C48C6001F0ABE, double %11354, double %11346)
  %11356 = load ptr, ptr %7, align 8, !tbaa !9
  %11357 = load i32, ptr %12, align 4, !tbaa !5
  %11358 = load i32, ptr %8, align 4, !tbaa !5
  %11359 = mul nsw i32 57, %11358
  %11360 = add nsw i32 %11357, %11359
  %11361 = sext i32 %11360 to i64
  %11362 = getelementptr inbounds double, ptr %11356, i64 %11361
  %11363 = load double, ptr %11362, align 8, !tbaa !11
  %11364 = call double @llvm.fmuladd.f64(double 0x3C9974B2334F2346, double %11363, double %11355)
  %11365 = load ptr, ptr %7, align 8, !tbaa !9
  %11366 = load i32, ptr %12, align 4, !tbaa !5
  %11367 = load i32, ptr %8, align 4, !tbaa !5
  %11368 = mul nsw i32 58, %11367
  %11369 = add nsw i32 %11366, %11368
  %11370 = sext i32 %11369 to i64
  %11371 = getelementptr inbounds double, ptr %11365, i64 %11370
  %11372 = load double, ptr %11371, align 8, !tbaa !11
  %11373 = call double @llvm.fmuladd.f64(double 0x3CBADEBC19B71701, double %11372, double %11364)
  %11374 = load ptr, ptr %7, align 8, !tbaa !9
  %11375 = load i32, ptr %12, align 4, !tbaa !5
  %11376 = load i32, ptr %8, align 4, !tbaa !5
  %11377 = mul nsw i32 59, %11376
  %11378 = add nsw i32 %11375, %11377
  %11379 = sext i32 %11378 to i64
  %11380 = getelementptr inbounds double, ptr %11374, i64 %11379
  %11381 = load double, ptr %11380, align 8, !tbaa !11
  %11382 = call double @llvm.fmuladd.f64(double 0x3C96A09E667F3BCC, double %11381, double %11373)
  %11383 = load ptr, ptr %7, align 8, !tbaa !9
  %11384 = load i32, ptr %12, align 4, !tbaa !5
  %11385 = load i32, ptr %8, align 4, !tbaa !5
  %11386 = mul nsw i32 60, %11385
  %11387 = add nsw i32 %11384, %11386
  %11388 = sext i32 %11387 to i64
  %11389 = getelementptr inbounds double, ptr %11383, i64 %11388
  %11390 = load double, ptr %11389, align 8, !tbaa !11
  %11391 = call double @llvm.fmuladd.f64(double 0xBC7F1CD9CCEEF238, double %11390, double %11382)
  %11392 = load ptr, ptr %7, align 8, !tbaa !9
  %11393 = load i32, ptr %12, align 4, !tbaa !5
  %11394 = load i32, ptr %8, align 4, !tbaa !5
  %11395 = mul nsw i32 61, %11394
  %11396 = add nsw i32 %11393, %11395
  %11397 = sext i32 %11396 to i64
  %11398 = getelementptr inbounds double, ptr %11392, i64 %11397
  %11399 = load double, ptr %11398, align 8, !tbaa !11
  %11400 = call double @llvm.fmuladd.f64(double 0x3C80F876CCDF6CD9, double %11399, double %11391)
  %11401 = load ptr, ptr %7, align 8, !tbaa !9
  %11402 = load i32, ptr %12, align 4, !tbaa !5
  %11403 = load i32, ptr %8, align 4, !tbaa !5
  %11404 = mul nsw i32 62, %11403
  %11405 = add nsw i32 %11402, %11404
  %11406 = sext i32 %11405 to i64
  %11407 = getelementptr inbounds double, ptr %11401, i64 %11406
  %11408 = load double, ptr %11407, align 8, !tbaa !11
  %11409 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %11408, double %11400)
  %11410 = load ptr, ptr %7, align 8, !tbaa !9
  %11411 = load i32, ptr %12, align 4, !tbaa !5
  %11412 = load i32, ptr %8, align 4, !tbaa !5
  %11413 = mul nsw i32 63, %11412
  %11414 = add nsw i32 %11411, %11413
  %11415 = sext i32 %11414 to i64
  %11416 = getelementptr inbounds double, ptr %11410, i64 %11415
  %11417 = load double, ptr %11416, align 8, !tbaa !11
  %11418 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %11417, double %11409)
  %11419 = load ptr, ptr %7, align 8, !tbaa !9
  %11420 = load i32, ptr %12, align 4, !tbaa !5
  %11421 = load i32, ptr %8, align 4, !tbaa !5
  %11422 = mul nsw i32 64, %11421
  %11423 = add nsw i32 %11420, %11422
  %11424 = sext i32 %11423 to i64
  %11425 = getelementptr inbounds double, ptr %11419, i64 %11424
  %11426 = load double, ptr %11425, align 8, !tbaa !11
  %11427 = call double @llvm.fmuladd.f64(double 0xBFB8DF388696F557, double %11426, double %11418)
  %11428 = load ptr, ptr %7, align 8, !tbaa !9
  %11429 = load i32, ptr %12, align 4, !tbaa !5
  %11430 = load i32, ptr %8, align 4, !tbaa !5
  %11431 = mul nsw i32 65, %11430
  %11432 = add nsw i32 %11429, %11431
  %11433 = sext i32 %11432 to i64
  %11434 = getelementptr inbounds double, ptr %11428, i64 %11433
  %11435 = load double, ptr %11434, align 8, !tbaa !11
  %11436 = call double @llvm.fmuladd.f64(double 0x3FD0C7817D9C3121, double %11435, double %11427)
  %11437 = load ptr, ptr %7, align 8, !tbaa !9
  %11438 = load i32, ptr %12, align 4, !tbaa !5
  %11439 = load i32, ptr %8, align 4, !tbaa !5
  %11440 = mul nsw i32 66, %11439
  %11441 = add nsw i32 %11438, %11440
  %11442 = sext i32 %11441 to i64
  %11443 = getelementptr inbounds double, ptr %11437, i64 %11442
  %11444 = load double, ptr %11443, align 8, !tbaa !11
  %11445 = call double @llvm.fmuladd.f64(double 0x4007001BD846D0A7, double %11444, double %11436)
  %11446 = load ptr, ptr %7, align 8, !tbaa !9
  %11447 = load i32, ptr %12, align 4, !tbaa !5
  %11448 = load i32, ptr %8, align 4, !tbaa !5
  %11449 = mul nsw i32 67, %11448
  %11450 = add nsw i32 %11447, %11449
  %11451 = sext i32 %11450 to i64
  %11452 = getelementptr inbounds double, ptr %11446, i64 %11451
  %11453 = load double, ptr %11452, align 8, !tbaa !11
  %11454 = call double @llvm.fmuladd.f64(double 0x3FD08C54FF1019F7, double %11453, double %11445)
  store double %11454, ptr %11, align 8, !tbaa !11
  %11455 = load double, ptr %11, align 8, !tbaa !11
  %11456 = load ptr, ptr %9, align 8, !tbaa !9
  %11457 = load i32, ptr %12, align 4, !tbaa !5
  %11458 = load i32, ptr %10, align 4, !tbaa !5
  %11459 = mul nsw i32 39, %11458
  %11460 = add nsw i32 %11457, %11459
  %11461 = sext i32 %11460 to i64
  %11462 = getelementptr inbounds double, ptr %11456, i64 %11461
  store double %11455, ptr %11462, align 8, !tbaa !11
  %11463 = load ptr, ptr %7, align 8, !tbaa !9
  %11464 = load i32, ptr %12, align 4, !tbaa !5
  %11465 = load i32, ptr %8, align 4, !tbaa !5
  %11466 = mul nsw i32 20, %11465
  %11467 = add nsw i32 %11464, %11466
  %11468 = sext i32 %11467 to i64
  %11469 = getelementptr inbounds double, ptr %11463, i64 %11468
  %11470 = load double, ptr %11469, align 8, !tbaa !11
  %11471 = load ptr, ptr %7, align 8, !tbaa !9
  %11472 = load i32, ptr %12, align 4, !tbaa !5
  %11473 = load i32, ptr %8, align 4, !tbaa !5
  %11474 = mul nsw i32 21, %11473
  %11475 = add nsw i32 %11472, %11474
  %11476 = sext i32 %11475 to i64
  %11477 = getelementptr inbounds double, ptr %11471, i64 %11476
  %11478 = load double, ptr %11477, align 8, !tbaa !11
  %11479 = fmul double 0x3FEC2894019C8AD2, %11478
  %11480 = call double @llvm.fmuladd.f64(double 0x3FA789B66AF4F45E, double %11470, double %11479)
  %11481 = load ptr, ptr %7, align 8, !tbaa !9
  %11482 = load i32, ptr %12, align 4, !tbaa !5
  %11483 = load i32, ptr %8, align 4, !tbaa !5
  %11484 = mul nsw i32 22, %11483
  %11485 = add nsw i32 %11482, %11484
  %11486 = sext i32 %11485 to i64
  %11487 = getelementptr inbounds double, ptr %11481, i64 %11486
  %11488 = load double, ptr %11487, align 8, !tbaa !11
  %11489 = call double @llvm.fmuladd.f64(double 0x3FEC2894019C8AC4, double %11488, double %11480)
  %11490 = load ptr, ptr %7, align 8, !tbaa !9
  %11491 = load i32, ptr %12, align 4, !tbaa !5
  %11492 = load i32, ptr %8, align 4, !tbaa !5
  %11493 = mul nsw i32 23, %11492
  %11494 = add nsw i32 %11491, %11493
  %11495 = sext i32 %11494 to i64
  %11496 = getelementptr inbounds double, ptr %11490, i64 %11495
  %11497 = load double, ptr %11496, align 8, !tbaa !11
  %11498 = call double @llvm.fmuladd.f64(double 0x3FA789B66AF4F564, double %11497, double %11489)
  %11499 = load ptr, ptr %7, align 8, !tbaa !9
  %11500 = load i32, ptr %12, align 4, !tbaa !5
  %11501 = load i32, ptr %8, align 4, !tbaa !5
  %11502 = mul nsw i32 24, %11501
  %11503 = add nsw i32 %11500, %11502
  %11504 = sext i32 %11503 to i64
  %11505 = getelementptr inbounds double, ptr %11499, i64 %11504
  %11506 = load double, ptr %11505, align 8, !tbaa !11
  %11507 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %11506, double %11498)
  %11508 = load ptr, ptr %7, align 8, !tbaa !9
  %11509 = load i32, ptr %12, align 4, !tbaa !5
  %11510 = load i32, ptr %8, align 4, !tbaa !5
  %11511 = mul nsw i32 25, %11510
  %11512 = add nsw i32 %11509, %11511
  %11513 = sext i32 %11512 to i64
  %11514 = getelementptr inbounds double, ptr %11508, i64 %11513
  %11515 = load double, ptr %11514, align 8, !tbaa !11
  %11516 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %11515, double %11507)
  %11517 = load ptr, ptr %7, align 8, !tbaa !9
  %11518 = load i32, ptr %12, align 4, !tbaa !5
  %11519 = load i32, ptr %8, align 4, !tbaa !5
  %11520 = mul nsw i32 26, %11519
  %11521 = add nsw i32 %11518, %11520
  %11522 = sext i32 %11521 to i64
  %11523 = getelementptr inbounds double, ptr %11517, i64 %11522
  %11524 = load double, ptr %11523, align 8, !tbaa !11
  %11525 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %11524, double %11516)
  %11526 = load ptr, ptr %7, align 8, !tbaa !9
  %11527 = load i32, ptr %12, align 4, !tbaa !5
  %11528 = load i32, ptr %8, align 4, !tbaa !5
  %11529 = mul nsw i32 27, %11528
  %11530 = add nsw i32 %11527, %11529
  %11531 = sext i32 %11530 to i64
  %11532 = getelementptr inbounds double, ptr %11526, i64 %11531
  %11533 = load double, ptr %11532, align 8, !tbaa !11
  %11534 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %11533, double %11525)
  %11535 = load ptr, ptr %7, align 8, !tbaa !9
  %11536 = load i32, ptr %12, align 4, !tbaa !5
  %11537 = load i32, ptr %8, align 4, !tbaa !5
  %11538 = mul nsw i32 28, %11537
  %11539 = add nsw i32 %11536, %11538
  %11540 = sext i32 %11539 to i64
  %11541 = getelementptr inbounds double, ptr %11535, i64 %11540
  %11542 = load double, ptr %11541, align 8, !tbaa !11
  %11543 = call double @llvm.fmuladd.f64(double 0x3C84000000000000, double %11542, double %11534)
  %11544 = load ptr, ptr %7, align 8, !tbaa !9
  %11545 = load i32, ptr %12, align 4, !tbaa !5
  %11546 = load i32, ptr %8, align 4, !tbaa !5
  %11547 = mul nsw i32 29, %11546
  %11548 = add nsw i32 %11545, %11547
  %11549 = sext i32 %11548 to i64
  %11550 = getelementptr inbounds double, ptr %11544, i64 %11549
  %11551 = load double, ptr %11550, align 8, !tbaa !11
  %11552 = call double @llvm.fmuladd.f64(double 0x3CAE000000000002, double %11551, double %11543)
  %11553 = load ptr, ptr %7, align 8, !tbaa !9
  %11554 = load i32, ptr %12, align 4, !tbaa !5
  %11555 = load i32, ptr %8, align 4, !tbaa !5
  %11556 = mul nsw i32 30, %11555
  %11557 = add nsw i32 %11554, %11556
  %11558 = sext i32 %11557 to i64
  %11559 = getelementptr inbounds double, ptr %11553, i64 %11558
  %11560 = load double, ptr %11559, align 8, !tbaa !11
  %11561 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %11560, double %11552)
  %11562 = load ptr, ptr %7, align 8, !tbaa !9
  %11563 = load i32, ptr %12, align 4, !tbaa !5
  %11564 = load i32, ptr %8, align 4, !tbaa !5
  %11565 = mul nsw i32 31, %11564
  %11566 = add nsw i32 %11563, %11565
  %11567 = sext i32 %11566 to i64
  %11568 = getelementptr inbounds double, ptr %11562, i64 %11567
  %11569 = load double, ptr %11568, align 8, !tbaa !11
  %11570 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %11569, double %11561)
  %11571 = load ptr, ptr %7, align 8, !tbaa !9
  %11572 = load i32, ptr %12, align 4, !tbaa !5
  %11573 = load i32, ptr %8, align 4, !tbaa !5
  %11574 = mul nsw i32 32, %11573
  %11575 = add nsw i32 %11572, %11574
  %11576 = sext i32 %11575 to i64
  %11577 = getelementptr inbounds double, ptr %11571, i64 %11576
  %11578 = load double, ptr %11577, align 8, !tbaa !11
  %11579 = call double @llvm.fmuladd.f64(double 0xBC91000000000000, double %11578, double %11570)
  %11580 = load ptr, ptr %7, align 8, !tbaa !9
  %11581 = load i32, ptr %12, align 4, !tbaa !5
  %11582 = load i32, ptr %8, align 4, !tbaa !5
  %11583 = mul nsw i32 33, %11582
  %11584 = add nsw i32 %11581, %11583
  %11585 = sext i32 %11584 to i64
  %11586 = getelementptr inbounds double, ptr %11580, i64 %11585
  %11587 = load double, ptr %11586, align 8, !tbaa !11
  %11588 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %11587, double %11579)
  %11589 = load ptr, ptr %7, align 8, !tbaa !9
  %11590 = load i32, ptr %12, align 4, !tbaa !5
  %11591 = load i32, ptr %8, align 4, !tbaa !5
  %11592 = mul nsw i32 34, %11591
  %11593 = add nsw i32 %11590, %11592
  %11594 = sext i32 %11593 to i64
  %11595 = getelementptr inbounds double, ptr %11589, i64 %11594
  %11596 = load double, ptr %11595, align 8, !tbaa !11
  %11597 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %11596, double %11588)
  %11598 = load ptr, ptr %7, align 8, !tbaa !9
  %11599 = load i32, ptr %12, align 4, !tbaa !5
  %11600 = load i32, ptr %8, align 4, !tbaa !5
  %11601 = mul nsw i32 35, %11600
  %11602 = add nsw i32 %11599, %11601
  %11603 = sext i32 %11602 to i64
  %11604 = getelementptr inbounds double, ptr %11598, i64 %11603
  %11605 = load double, ptr %11604, align 8, !tbaa !11
  %11606 = call double @llvm.fmuladd.f64(double 0xBC50000000000000, double %11605, double %11597)
  %11607 = load ptr, ptr %7, align 8, !tbaa !9
  %11608 = load i32, ptr %12, align 4, !tbaa !5
  %11609 = load i32, ptr %8, align 4, !tbaa !5
  %11610 = mul nsw i32 52, %11609
  %11611 = add nsw i32 %11608, %11610
  %11612 = sext i32 %11611 to i64
  %11613 = getelementptr inbounds double, ptr %11607, i64 %11612
  %11614 = load double, ptr %11613, align 8, !tbaa !11
  %11615 = call double @llvm.fmuladd.f64(double 0xBFA0A4D27CF86DC6, double %11614, double %11606)
  %11616 = load ptr, ptr %7, align 8, !tbaa !9
  %11617 = load i32, ptr %12, align 4, !tbaa !5
  %11618 = load i32, ptr %8, align 4, !tbaa !5
  %11619 = mul nsw i32 53, %11618
  %11620 = add nsw i32 %11617, %11619
  %11621 = sext i32 %11620 to i64
  %11622 = getelementptr inbounds double, ptr %11616, i64 %11621
  %11623 = load double, ptr %11622, align 8, !tbaa !11
  %11624 = call double @llvm.fmuladd.f64(double 0xBFE3E93C07AFC380, double %11623, double %11615)
  %11625 = load ptr, ptr %7, align 8, !tbaa !9
  %11626 = load i32, ptr %12, align 4, !tbaa !5
  %11627 = load i32, ptr %8, align 4, !tbaa !5
  %11628 = mul nsw i32 54, %11627
  %11629 = add nsw i32 %11626, %11628
  %11630 = sext i32 %11629 to i64
  %11631 = getelementptr inbounds double, ptr %11625, i64 %11630
  %11632 = load double, ptr %11631, align 8, !tbaa !11
  %11633 = call double @llvm.fmuladd.f64(double 0xBFE3E93C07AFC37E, double %11632, double %11624)
  %11634 = load ptr, ptr %7, align 8, !tbaa !9
  %11635 = load i32, ptr %12, align 4, !tbaa !5
  %11636 = load i32, ptr %8, align 4, !tbaa !5
  %11637 = mul nsw i32 55, %11636
  %11638 = add nsw i32 %11635, %11637
  %11639 = sext i32 %11638 to i64
  %11640 = getelementptr inbounds double, ptr %11634, i64 %11639
  %11641 = load double, ptr %11640, align 8, !tbaa !11
  %11642 = call double @llvm.fmuladd.f64(double 0xBFA0A4D27CF86DAF, double %11641, double %11633)
  %11643 = load ptr, ptr %7, align 8, !tbaa !9
  %11644 = load i32, ptr %12, align 4, !tbaa !5
  %11645 = load i32, ptr %8, align 4, !tbaa !5
  %11646 = mul nsw i32 56, %11645
  %11647 = add nsw i32 %11644, %11646
  %11648 = sext i32 %11647 to i64
  %11649 = getelementptr inbounds double, ptr %11643, i64 %11648
  %11650 = load double, ptr %11649, align 8, !tbaa !11
  %11651 = call double @llvm.fmuladd.f64(double 0xBC85EB99734B41EF, double %11650, double %11642)
  %11652 = load ptr, ptr %7, align 8, !tbaa !9
  %11653 = load i32, ptr %12, align 4, !tbaa !5
  %11654 = load i32, ptr %8, align 4, !tbaa !5
  %11655 = mul nsw i32 57, %11654
  %11656 = add nsw i32 %11653, %11655
  %11657 = sext i32 %11656 to i64
  %11658 = getelementptr inbounds double, ptr %11652, i64 %11657
  %11659 = load double, ptr %11658, align 8, !tbaa !11
  %11660 = call double @llvm.fmuladd.f64(double 0xBCA80AA84CE72F89, double %11659, double %11651)
  %11661 = load ptr, ptr %7, align 8, !tbaa !9
  %11662 = load i32, ptr %12, align 4, !tbaa !5
  %11663 = load i32, ptr %8, align 4, !tbaa !5
  %11664 = mul nsw i32 58, %11663
  %11665 = add nsw i32 %11662, %11664
  %11666 = sext i32 %11665 to i64
  %11667 = getelementptr inbounds double, ptr %11661, i64 %11666
  %11668 = load double, ptr %11667, align 8, !tbaa !11
  %11669 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %11668, double %11660)
  %11670 = load ptr, ptr %7, align 8, !tbaa !9
  %11671 = load i32, ptr %12, align 4, !tbaa !5
  %11672 = load i32, ptr %8, align 4, !tbaa !5
  %11673 = mul nsw i32 59, %11672
  %11674 = add nsw i32 %11671, %11673
  %11675 = sext i32 %11674 to i64
  %11676 = getelementptr inbounds double, ptr %11670, i64 %11675
  %11677 = load double, ptr %11676, align 8, !tbaa !11
  %11678 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %11677, double %11669)
  %11679 = load ptr, ptr %7, align 8, !tbaa !9
  %11680 = load i32, ptr %12, align 4, !tbaa !5
  %11681 = load i32, ptr %8, align 4, !tbaa !5
  %11682 = mul nsw i32 60, %11681
  %11683 = add nsw i32 %11680, %11682
  %11684 = sext i32 %11683 to i64
  %11685 = getelementptr inbounds double, ptr %11679, i64 %11684
  %11686 = load double, ptr %11685, align 8, !tbaa !11
  %11687 = call double @llvm.fmuladd.f64(double 0xBC81AD7BC01366B8, double %11686, double %11678)
  %11688 = load ptr, ptr %7, align 8, !tbaa !9
  %11689 = load i32, ptr %12, align 4, !tbaa !5
  %11690 = load i32, ptr %8, align 4, !tbaa !5
  %11691 = mul nsw i32 61, %11690
  %11692 = add nsw i32 %11689, %11691
  %11693 = sext i32 %11692 to i64
  %11694 = getelementptr inbounds double, ptr %11688, i64 %11693
  %11695 = load double, ptr %11694, align 8, !tbaa !11
  %11696 = call double @llvm.fmuladd.f64(double 0xBC93CC8A99AF5452, double %11695, double %11687)
  %11697 = load ptr, ptr %7, align 8, !tbaa !9
  %11698 = load i32, ptr %12, align 4, !tbaa !5
  %11699 = load i32, ptr %8, align 4, !tbaa !5
  %11700 = mul nsw i32 62, %11699
  %11701 = add nsw i32 %11698, %11700
  %11702 = sext i32 %11701 to i64
  %11703 = getelementptr inbounds double, ptr %11697, i64 %11702
  %11704 = load double, ptr %11703, align 8, !tbaa !11
  %11705 = call double @llvm.fmuladd.f64(double 0xBC93CC8A99AF5452, double %11704, double %11696)
  %11706 = load ptr, ptr %7, align 8, !tbaa !9
  %11707 = load i32, ptr %12, align 4, !tbaa !5
  %11708 = load i32, ptr %8, align 4, !tbaa !5
  %11709 = mul nsw i32 63, %11708
  %11710 = add nsw i32 %11707, %11709
  %11711 = sext i32 %11710 to i64
  %11712 = getelementptr inbounds double, ptr %11706, i64 %11711
  %11713 = load double, ptr %11712, align 8, !tbaa !11
  %11714 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %11713, double %11705)
  %11715 = load ptr, ptr %7, align 8, !tbaa !9
  %11716 = load i32, ptr %12, align 4, !tbaa !5
  %11717 = load i32, ptr %8, align 4, !tbaa !5
  %11718 = mul nsw i32 64, %11717
  %11719 = add nsw i32 %11716, %11718
  %11720 = sext i32 %11719 to i64
  %11721 = getelementptr inbounds double, ptr %11715, i64 %11720
  %11722 = load double, ptr %11721, align 8, !tbaa !11
  %11723 = call double @llvm.fmuladd.f64(double 0x3C7FD1DEC022EC17, double %11722, double %11714)
  %11724 = load ptr, ptr %7, align 8, !tbaa !9
  %11725 = load i32, ptr %12, align 4, !tbaa !5
  %11726 = load i32, ptr %8, align 4, !tbaa !5
  %11727 = mul nsw i32 65, %11726
  %11728 = add nsw i32 %11725, %11727
  %11729 = sext i32 %11728 to i64
  %11730 = getelementptr inbounds double, ptr %11724, i64 %11729
  %11731 = load double, ptr %11730, align 8, !tbaa !11
  %11732 = call double @llvm.fmuladd.f64(double 0xBCA6A09E667F3BCC, double %11731, double %11723)
  %11733 = load ptr, ptr %7, align 8, !tbaa !9
  %11734 = load i32, ptr %12, align 4, !tbaa !5
  %11735 = load i32, ptr %8, align 4, !tbaa !5
  %11736 = mul nsw i32 66, %11735
  %11737 = add nsw i32 %11734, %11736
  %11738 = sext i32 %11737 to i64
  %11739 = getelementptr inbounds double, ptr %11733, i64 %11738
  %11740 = load double, ptr %11739, align 8, !tbaa !11
  %11741 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %11740, double %11732)
  %11742 = load ptr, ptr %7, align 8, !tbaa !9
  %11743 = load i32, ptr %12, align 4, !tbaa !5
  %11744 = load i32, ptr %8, align 4, !tbaa !5
  %11745 = mul nsw i32 67, %11744
  %11746 = add nsw i32 %11743, %11745
  %11747 = sext i32 %11746 to i64
  %11748 = getelementptr inbounds double, ptr %11742, i64 %11747
  %11749 = load double, ptr %11748, align 8, !tbaa !11
  %11750 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %11749, double %11741)
  store double %11750, ptr %11, align 8, !tbaa !11
  %11751 = load double, ptr %11, align 8, !tbaa !11
  %11752 = load ptr, ptr %9, align 8, !tbaa !9
  %11753 = load i32, ptr %12, align 4, !tbaa !5
  %11754 = load i32, ptr %10, align 4, !tbaa !5
  %11755 = mul nsw i32 40, %11754
  %11756 = add nsw i32 %11753, %11755
  %11757 = sext i32 %11756 to i64
  %11758 = getelementptr inbounds double, ptr %11752, i64 %11757
  store double %11751, ptr %11758, align 8, !tbaa !11
  %11759 = load ptr, ptr %7, align 8, !tbaa !9
  %11760 = load i32, ptr %12, align 4, !tbaa !5
  %11761 = load i32, ptr %8, align 4, !tbaa !5
  %11762 = mul nsw i32 20, %11761
  %11763 = add nsw i32 %11760, %11762
  %11764 = sext i32 %11763 to i64
  %11765 = getelementptr inbounds double, ptr %11759, i64 %11764
  %11766 = load double, ptr %11765, align 8, !tbaa !11
  %11767 = load ptr, ptr %7, align 8, !tbaa !9
  %11768 = load i32, ptr %12, align 4, !tbaa !5
  %11769 = load i32, ptr %8, align 4, !tbaa !5
  %11770 = mul nsw i32 21, %11769
  %11771 = add nsw i32 %11768, %11770
  %11772 = sext i32 %11771 to i64
  %11773 = getelementptr inbounds double, ptr %11767, i64 %11772
  %11774 = load double, ptr %11773, align 8, !tbaa !11
  %11775 = fmul double 0x3FEAEBF44A8E7A8E, %11774
  %11776 = call double @llvm.fmuladd.f64(double 0x3FD6F2A1D7A492BF, double %11766, double %11775)
  %11777 = load ptr, ptr %7, align 8, !tbaa !9
  %11778 = load i32, ptr %12, align 4, !tbaa !5
  %11779 = load i32, ptr %8, align 4, !tbaa !5
  %11780 = mul nsw i32 22, %11779
  %11781 = add nsw i32 %11778, %11780
  %11782 = sext i32 %11781 to i64
  %11783 = getelementptr inbounds double, ptr %11777, i64 %11782
  %11784 = load double, ptr %11783, align 8, !tbaa !11
  %11785 = call double @llvm.fmuladd.f64(double 0x3FEAEBF44A8E7A92, double %11784, double %11776)
  %11786 = load ptr, ptr %7, align 8, !tbaa !9
  %11787 = load i32, ptr %12, align 4, !tbaa !5
  %11788 = load i32, ptr %8, align 4, !tbaa !5
  %11789 = mul nsw i32 23, %11788
  %11790 = add nsw i32 %11787, %11789
  %11791 = sext i32 %11790 to i64
  %11792 = getelementptr inbounds double, ptr %11786, i64 %11791
  %11793 = load double, ptr %11792, align 8, !tbaa !11
  %11794 = call double @llvm.fmuladd.f64(double 0x3FD6F2A1D7A492CF, double %11793, double %11785)
  %11795 = load ptr, ptr %7, align 8, !tbaa !9
  %11796 = load i32, ptr %12, align 4, !tbaa !5
  %11797 = load i32, ptr %8, align 4, !tbaa !5
  %11798 = mul nsw i32 25, %11797
  %11799 = add nsw i32 %11796, %11798
  %11800 = sext i32 %11799 to i64
  %11801 = getelementptr inbounds double, ptr %11795, i64 %11800
  %11802 = load double, ptr %11801, align 8, !tbaa !11
  %11803 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %11802, double %11794)
  %11804 = load ptr, ptr %7, align 8, !tbaa !9
  %11805 = load i32, ptr %12, align 4, !tbaa !5
  %11806 = load i32, ptr %8, align 4, !tbaa !5
  %11807 = mul nsw i32 26, %11806
  %11808 = add nsw i32 %11805, %11807
  %11809 = sext i32 %11808 to i64
  %11810 = getelementptr inbounds double, ptr %11804, i64 %11809
  %11811 = load double, ptr %11810, align 8, !tbaa !11
  %11812 = call double @llvm.fmuladd.f64(double 0x3CC0000000000000, double %11811, double %11803)
  %11813 = load ptr, ptr %7, align 8, !tbaa !9
  %11814 = load i32, ptr %12, align 4, !tbaa !5
  %11815 = load i32, ptr %8, align 4, !tbaa !5
  %11816 = mul nsw i32 28, %11815
  %11817 = add nsw i32 %11814, %11816
  %11818 = sext i32 %11817 to i64
  %11819 = getelementptr inbounds double, ptr %11813, i64 %11818
  %11820 = load double, ptr %11819, align 8, !tbaa !11
  %11821 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %11820, double %11812)
  %11822 = load ptr, ptr %7, align 8, !tbaa !9
  %11823 = load i32, ptr %12, align 4, !tbaa !5
  %11824 = load i32, ptr %8, align 4, !tbaa !5
  %11825 = mul nsw i32 29, %11824
  %11826 = add nsw i32 %11823, %11825
  %11827 = sext i32 %11826 to i64
  %11828 = getelementptr inbounds double, ptr %11822, i64 %11827
  %11829 = load double, ptr %11828, align 8, !tbaa !11
  %11830 = call double @llvm.fmuladd.f64(double 0x3CB8000000000001, double %11829, double %11821)
  %11831 = load ptr, ptr %7, align 8, !tbaa !9
  %11832 = load i32, ptr %12, align 4, !tbaa !5
  %11833 = load i32, ptr %8, align 4, !tbaa !5
  %11834 = mul nsw i32 30, %11833
  %11835 = add nsw i32 %11832, %11834
  %11836 = sext i32 %11835 to i64
  %11837 = getelementptr inbounds double, ptr %11831, i64 %11836
  %11838 = load double, ptr %11837, align 8, !tbaa !11
  %11839 = call double @llvm.fmuladd.f64(double 0x3CB8000000000001, double %11838, double %11830)
  %11840 = load ptr, ptr %7, align 8, !tbaa !9
  %11841 = load i32, ptr %12, align 4, !tbaa !5
  %11842 = load i32, ptr %8, align 4, !tbaa !5
  %11843 = mul nsw i32 32, %11842
  %11844 = add nsw i32 %11841, %11843
  %11845 = sext i32 %11844 to i64
  %11846 = getelementptr inbounds double, ptr %11840, i64 %11845
  %11847 = load double, ptr %11846, align 8, !tbaa !11
  %11848 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %11847, double %11839)
  %11849 = load ptr, ptr %7, align 8, !tbaa !9
  %11850 = load i32, ptr %12, align 4, !tbaa !5
  %11851 = load i32, ptr %8, align 4, !tbaa !5
  %11852 = mul nsw i32 33, %11851
  %11853 = add nsw i32 %11850, %11852
  %11854 = sext i32 %11853 to i64
  %11855 = getelementptr inbounds double, ptr %11849, i64 %11854
  %11856 = load double, ptr %11855, align 8, !tbaa !11
  %11857 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %11856, double %11848)
  %11858 = load ptr, ptr %7, align 8, !tbaa !9
  %11859 = load i32, ptr %12, align 4, !tbaa !5
  %11860 = load i32, ptr %8, align 4, !tbaa !5
  %11861 = mul nsw i32 34, %11860
  %11862 = add nsw i32 %11859, %11861
  %11863 = sext i32 %11862 to i64
  %11864 = getelementptr inbounds double, ptr %11858, i64 %11863
  %11865 = load double, ptr %11864, align 8, !tbaa !11
  %11866 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %11865, double %11857)
  %11867 = load ptr, ptr %7, align 8, !tbaa !9
  %11868 = load i32, ptr %12, align 4, !tbaa !5
  %11869 = load i32, ptr %8, align 4, !tbaa !5
  %11870 = mul nsw i32 35, %11869
  %11871 = add nsw i32 %11868, %11870
  %11872 = sext i32 %11871 to i64
  %11873 = getelementptr inbounds double, ptr %11867, i64 %11872
  %11874 = load double, ptr %11873, align 8, !tbaa !11
  %11875 = call double @llvm.fmuladd.f64(double 0x3CB0000000000000, double %11874, double %11866)
  %11876 = load ptr, ptr %7, align 8, !tbaa !9
  %11877 = load i32, ptr %12, align 4, !tbaa !5
  %11878 = load i32, ptr %8, align 4, !tbaa !5
  %11879 = mul nsw i32 52, %11878
  %11880 = add nsw i32 %11877, %11879
  %11881 = sext i32 %11880 to i64
  %11882 = getelementptr inbounds double, ptr %11876, i64 %11881
  %11883 = load double, ptr %11882, align 8, !tbaa !11
  %11884 = call double @llvm.fmuladd.f64(double 0x3FA462D8D66D7FC4, double %11883, double %11875)
  %11885 = load ptr, ptr %7, align 8, !tbaa !9
  %11886 = load i32, ptr %12, align 4, !tbaa !5
  %11887 = load i32, ptr %8, align 4, !tbaa !5
  %11888 = mul nsw i32 53, %11887
  %11889 = add nsw i32 %11886, %11888
  %11890 = sext i32 %11889 to i64
  %11891 = getelementptr inbounds double, ptr %11885, i64 %11890
  %11892 = load double, ptr %11891, align 8, !tbaa !11
  %11893 = call double @llvm.fmuladd.f64(double 0xBFC5EA083165C4F6, double %11892, double %11884)
  %11894 = load ptr, ptr %7, align 8, !tbaa !9
  %11895 = load i32, ptr %12, align 4, !tbaa !5
  %11896 = load i32, ptr %8, align 4, !tbaa !5
  %11897 = mul nsw i32 54, %11896
  %11898 = add nsw i32 %11895, %11897
  %11899 = sext i32 %11898 to i64
  %11900 = getelementptr inbounds double, ptr %11894, i64 %11899
  %11901 = load double, ptr %11900, align 8, !tbaa !11
  %11902 = call double @llvm.fmuladd.f64(double 0x3FD4A299D1E9700E, double %11901, double %11893)
  %11903 = load ptr, ptr %7, align 8, !tbaa !9
  %11904 = load i32, ptr %12, align 4, !tbaa !5
  %11905 = load i32, ptr %8, align 4, !tbaa !5
  %11906 = mul nsw i32 55, %11905
  %11907 = add nsw i32 %11904, %11906
  %11908 = sext i32 %11907 to i64
  %11909 = getelementptr inbounds double, ptr %11903, i64 %11908
  %11910 = load double, ptr %11909, align 8, !tbaa !11
  %11911 = call double @llvm.fmuladd.f64(double 0x400E488CB8C1EA74, double %11910, double %11902)
  %11912 = load ptr, ptr %7, align 8, !tbaa !9
  %11913 = load i32, ptr %12, align 4, !tbaa !5
  %11914 = load i32, ptr %8, align 4, !tbaa !5
  %11915 = mul nsw i32 56, %11914
  %11916 = add nsw i32 %11913, %11915
  %11917 = sext i32 %11916 to i64
  %11918 = getelementptr inbounds double, ptr %11912, i64 %11917
  %11919 = load double, ptr %11918, align 8, !tbaa !11
  %11920 = call double @llvm.fmuladd.f64(double 0x3C66A09E667F3BCC, double %11919, double %11911)
  %11921 = load ptr, ptr %7, align 8, !tbaa !9
  %11922 = load i32, ptr %12, align 4, !tbaa !5
  %11923 = load i32, ptr %8, align 4, !tbaa !5
  %11924 = mul nsw i32 57, %11923
  %11925 = add nsw i32 %11922, %11924
  %11926 = sext i32 %11925 to i64
  %11927 = getelementptr inbounds double, ptr %11921, i64 %11926
  %11928 = load double, ptr %11927, align 8, !tbaa !11
  %11929 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %11928, double %11920)
  %11930 = load ptr, ptr %7, align 8, !tbaa !9
  %11931 = load i32, ptr %12, align 4, !tbaa !5
  %11932 = load i32, ptr %8, align 4, !tbaa !5
  %11933 = mul nsw i32 58, %11932
  %11934 = add nsw i32 %11931, %11933
  %11935 = sext i32 %11934 to i64
  %11936 = getelementptr inbounds double, ptr %11930, i64 %11935
  %11937 = load double, ptr %11936, align 8, !tbaa !11
  %11938 = call double @llvm.fmuladd.f64(double 0x3CA0F876CCDF6CD8, double %11937, double %11929)
  %11939 = load ptr, ptr %7, align 8, !tbaa !9
  %11940 = load i32, ptr %12, align 4, !tbaa !5
  %11941 = load i32, ptr %8, align 4, !tbaa !5
  %11942 = mul nsw i32 59, %11941
  %11943 = add nsw i32 %11940, %11942
  %11944 = sext i32 %11943 to i64
  %11945 = getelementptr inbounds double, ptr %11939, i64 %11944
  %11946 = load double, ptr %11945, align 8, !tbaa !11
  %11947 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %11946, double %11938)
  %11948 = load ptr, ptr %7, align 8, !tbaa !9
  %11949 = load i32, ptr %12, align 4, !tbaa !5
  %11950 = load i32, ptr %8, align 4, !tbaa !5
  %11951 = mul nsw i32 61, %11950
  %11952 = add nsw i32 %11949, %11951
  %11953 = sext i32 %11952 to i64
  %11954 = getelementptr inbounds double, ptr %11948, i64 %11953
  %11955 = load double, ptr %11954, align 8, !tbaa !11
  %11956 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %11955, double %11947)
  %11957 = load ptr, ptr %7, align 8, !tbaa !9
  %11958 = load i32, ptr %12, align 4, !tbaa !5
  %11959 = load i32, ptr %8, align 4, !tbaa !5
  %11960 = mul nsw i32 62, %11959
  %11961 = add nsw i32 %11958, %11960
  %11962 = sext i32 %11961 to i64
  %11963 = getelementptr inbounds double, ptr %11957, i64 %11962
  %11964 = load double, ptr %11963, align 8, !tbaa !11
  %11965 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %11964, double %11956)
  %11966 = load ptr, ptr %7, align 8, !tbaa !9
  %11967 = load i32, ptr %12, align 4, !tbaa !5
  %11968 = load i32, ptr %8, align 4, !tbaa !5
  %11969 = mul nsw i32 63, %11968
  %11970 = add nsw i32 %11967, %11969
  %11971 = sext i32 %11970 to i64
  %11972 = getelementptr inbounds double, ptr %11966, i64 %11971
  %11973 = load double, ptr %11972, align 8, !tbaa !11
  %11974 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %11973, double %11965)
  %11975 = load ptr, ptr %7, align 8, !tbaa !9
  %11976 = load i32, ptr %12, align 4, !tbaa !5
  %11977 = load i32, ptr %8, align 4, !tbaa !5
  %11978 = mul nsw i32 64, %11977
  %11979 = add nsw i32 %11976, %11978
  %11980 = sext i32 %11979 to i64
  %11981 = getelementptr inbounds double, ptr %11975, i64 %11980
  %11982 = load double, ptr %11981, align 8, !tbaa !11
  %11983 = call double @llvm.fmuladd.f64(double 0x3C91AD7BC01366B7, double %11982, double %11974)
  %11984 = load ptr, ptr %7, align 8, !tbaa !9
  %11985 = load i32, ptr %12, align 4, !tbaa !5
  %11986 = load i32, ptr %8, align 4, !tbaa !5
  %11987 = mul nsw i32 65, %11986
  %11988 = add nsw i32 %11985, %11987
  %11989 = sext i32 %11988 to i64
  %11990 = getelementptr inbounds double, ptr %11984, i64 %11989
  %11991 = load double, ptr %11990, align 8, !tbaa !11
  %11992 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %11991, double %11983)
  %11993 = load ptr, ptr %7, align 8, !tbaa !9
  %11994 = load i32, ptr %12, align 4, !tbaa !5
  %11995 = load i32, ptr %8, align 4, !tbaa !5
  %11996 = mul nsw i32 66, %11995
  %11997 = add nsw i32 %11994, %11996
  %11998 = sext i32 %11997 to i64
  %11999 = getelementptr inbounds double, ptr %11993, i64 %11998
  %12000 = load double, ptr %11999, align 8, !tbaa !11
  %12001 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %12000, double %11992)
  %12002 = load ptr, ptr %7, align 8, !tbaa !9
  %12003 = load i32, ptr %12, align 4, !tbaa !5
  %12004 = load i32, ptr %8, align 4, !tbaa !5
  %12005 = mul nsw i32 67, %12004
  %12006 = add nsw i32 %12003, %12005
  %12007 = sext i32 %12006 to i64
  %12008 = getelementptr inbounds double, ptr %12002, i64 %12007
  %12009 = load double, ptr %12008, align 8, !tbaa !11
  %12010 = call double @llvm.fmuladd.f64(double 0x3CC0F876CCDF6CD9, double %12009, double %12001)
  store double %12010, ptr %11, align 8, !tbaa !11
  %12011 = load double, ptr %11, align 8, !tbaa !11
  %12012 = load ptr, ptr %9, align 8, !tbaa !9
  %12013 = load i32, ptr %12, align 4, !tbaa !5
  %12014 = load i32, ptr %10, align 4, !tbaa !5
  %12015 = mul nsw i32 41, %12014
  %12016 = add nsw i32 %12013, %12015
  %12017 = sext i32 %12016 to i64
  %12018 = getelementptr inbounds double, ptr %12012, i64 %12017
  store double %12011, ptr %12018, align 8, !tbaa !11
  %12019 = load ptr, ptr %7, align 8, !tbaa !9
  %12020 = load i32, ptr %12, align 4, !tbaa !5
  %12021 = load i32, ptr %8, align 4, !tbaa !5
  %12022 = mul nsw i32 20, %12021
  %12023 = add nsw i32 %12020, %12022
  %12024 = sext i32 %12023 to i64
  %12025 = getelementptr inbounds double, ptr %12019, i64 %12024
  %12026 = load double, ptr %12025, align 8, !tbaa !11
  %12027 = load ptr, ptr %7, align 8, !tbaa !9
  %12028 = load i32, ptr %12, align 4, !tbaa !5
  %12029 = load i32, ptr %8, align 4, !tbaa !5
  %12030 = mul nsw i32 21, %12029
  %12031 = add nsw i32 %12028, %12030
  %12032 = sext i32 %12031 to i64
  %12033 = getelementptr inbounds double, ptr %12027, i64 %12032
  %12034 = load double, ptr %12033, align 8, !tbaa !11
  %12035 = fmul double 0x3FCEFDC8894D0802, %12034
  %12036 = call double @llvm.fmuladd.f64(double 0xBFACD49071EC6028, double %12026, double %12035)
  %12037 = load ptr, ptr %7, align 8, !tbaa !9
  %12038 = load i32, ptr %12, align 4, !tbaa !5
  %12039 = load i32, ptr %8, align 4, !tbaa !5
  %12040 = mul nsw i32 22, %12039
  %12041 = add nsw i32 %12038, %12040
  %12042 = sext i32 %12041 to i64
  %12043 = getelementptr inbounds double, ptr %12037, i64 %12042
  %12044 = load double, ptr %12043, align 8, !tbaa !11
  %12045 = call double @llvm.fmuladd.f64(double 0xBFDD2EB9CCB3BE35, double %12044, double %12036)
  %12046 = load ptr, ptr %7, align 8, !tbaa !9
  %12047 = load i32, ptr %12, align 4, !tbaa !5
  %12048 = load i32, ptr %8, align 4, !tbaa !5
  %12049 = mul nsw i32 23, %12048
  %12050 = add nsw i32 %12047, %12049
  %12051 = sext i32 %12050 to i64
  %12052 = getelementptr inbounds double, ptr %12046, i64 %12051
  %12053 = load double, ptr %12052, align 8, !tbaa !11
  %12054 = call double @llvm.fmuladd.f64(double 0xC01569E165D7940B, double %12053, double %12045)
  %12055 = load ptr, ptr %7, align 8, !tbaa !9
  %12056 = load i32, ptr %12, align 4, !tbaa !5
  %12057 = load i32, ptr %8, align 4, !tbaa !5
  %12058 = mul nsw i32 24, %12057
  %12059 = add nsw i32 %12056, %12058
  %12060 = sext i32 %12059 to i64
  %12061 = getelementptr inbounds double, ptr %12055, i64 %12060
  %12062 = load double, ptr %12061, align 8, !tbaa !11
  %12063 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %12062, double %12054)
  %12064 = load ptr, ptr %7, align 8, !tbaa !9
  %12065 = load i32, ptr %12, align 4, !tbaa !5
  %12066 = load i32, ptr %8, align 4, !tbaa !5
  %12067 = mul nsw i32 25, %12066
  %12068 = add nsw i32 %12065, %12067
  %12069 = sext i32 %12068 to i64
  %12070 = getelementptr inbounds double, ptr %12064, i64 %12069
  %12071 = load double, ptr %12070, align 8, !tbaa !11
  %12072 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %12071, double %12063)
  %12073 = load ptr, ptr %7, align 8, !tbaa !9
  %12074 = load i32, ptr %12, align 4, !tbaa !5
  %12075 = load i32, ptr %8, align 4, !tbaa !5
  %12076 = mul nsw i32 26, %12075
  %12077 = add nsw i32 %12074, %12076
  %12078 = sext i32 %12077 to i64
  %12079 = getelementptr inbounds double, ptr %12073, i64 %12078
  %12080 = load double, ptr %12079, align 8, !tbaa !11
  %12081 = call double @llvm.fmuladd.f64(double 0xBCA9FFFFFFFFFFFE, double %12080, double %12072)
  %12082 = load ptr, ptr %7, align 8, !tbaa !9
  %12083 = load i32, ptr %12, align 4, !tbaa !5
  %12084 = load i32, ptr %8, align 4, !tbaa !5
  %12085 = mul nsw i32 27, %12084
  %12086 = add nsw i32 %12083, %12085
  %12087 = sext i32 %12086 to i64
  %12088 = getelementptr inbounds double, ptr %12082, i64 %12087
  %12089 = load double, ptr %12088, align 8, !tbaa !11
  %12090 = call double @llvm.fmuladd.f64(double 0xBCC5800000000000, double %12089, double %12081)
  %12091 = load ptr, ptr %7, align 8, !tbaa !9
  %12092 = load i32, ptr %12, align 4, !tbaa !5
  %12093 = load i32, ptr %8, align 4, !tbaa !5
  %12094 = mul nsw i32 28, %12093
  %12095 = add nsw i32 %12092, %12094
  %12096 = sext i32 %12095 to i64
  %12097 = getelementptr inbounds double, ptr %12091, i64 %12096
  %12098 = load double, ptr %12097, align 8, !tbaa !11
  %12099 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %12098, double %12090)
  %12100 = load ptr, ptr %7, align 8, !tbaa !9
  %12101 = load i32, ptr %12, align 4, !tbaa !5
  %12102 = load i32, ptr %8, align 4, !tbaa !5
  %12103 = mul nsw i32 29, %12102
  %12104 = add nsw i32 %12101, %12103
  %12105 = sext i32 %12104 to i64
  %12106 = getelementptr inbounds double, ptr %12100, i64 %12105
  %12107 = load double, ptr %12106, align 8, !tbaa !11
  %12108 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %12107, double %12099)
  %12109 = load ptr, ptr %7, align 8, !tbaa !9
  %12110 = load i32, ptr %12, align 4, !tbaa !5
  %12111 = load i32, ptr %8, align 4, !tbaa !5
  %12112 = mul nsw i32 30, %12111
  %12113 = add nsw i32 %12110, %12112
  %12114 = sext i32 %12113 to i64
  %12115 = getelementptr inbounds double, ptr %12109, i64 %12114
  %12116 = load double, ptr %12115, align 8, !tbaa !11
  %12117 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %12116, double %12108)
  %12118 = load ptr, ptr %7, align 8, !tbaa !9
  %12119 = load i32, ptr %12, align 4, !tbaa !5
  %12120 = load i32, ptr %8, align 4, !tbaa !5
  %12121 = mul nsw i32 31, %12120
  %12122 = add nsw i32 %12119, %12121
  %12123 = sext i32 %12122 to i64
  %12124 = getelementptr inbounds double, ptr %12118, i64 %12123
  %12125 = load double, ptr %12124, align 8, !tbaa !11
  %12126 = call double @llvm.fmuladd.f64(double 0xBCB5000000000000, double %12125, double %12117)
  %12127 = load ptr, ptr %7, align 8, !tbaa !9
  %12128 = load i32, ptr %12, align 4, !tbaa !5
  %12129 = load i32, ptr %8, align 4, !tbaa !5
  %12130 = mul nsw i32 32, %12129
  %12131 = add nsw i32 %12128, %12130
  %12132 = sext i32 %12131 to i64
  %12133 = getelementptr inbounds double, ptr %12127, i64 %12132
  %12134 = load double, ptr %12133, align 8, !tbaa !11
  %12135 = call double @llvm.fmuladd.f64(double 0x3CA1000000000001, double %12134, double %12126)
  %12136 = load ptr, ptr %7, align 8, !tbaa !9
  %12137 = load i32, ptr %12, align 4, !tbaa !5
  %12138 = load i32, ptr %8, align 4, !tbaa !5
  %12139 = mul nsw i32 33, %12138
  %12140 = add nsw i32 %12137, %12139
  %12141 = sext i32 %12140 to i64
  %12142 = getelementptr inbounds double, ptr %12136, i64 %12141
  %12143 = load double, ptr %12142, align 8, !tbaa !11
  %12144 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %12143, double %12135)
  %12145 = load ptr, ptr %7, align 8, !tbaa !9
  %12146 = load i32, ptr %12, align 4, !tbaa !5
  %12147 = load i32, ptr %8, align 4, !tbaa !5
  %12148 = mul nsw i32 34, %12147
  %12149 = add nsw i32 %12146, %12148
  %12150 = sext i32 %12149 to i64
  %12151 = getelementptr inbounds double, ptr %12145, i64 %12150
  %12152 = load double, ptr %12151, align 8, !tbaa !11
  %12153 = call double @llvm.fmuladd.f64(double 0xBCA9FFFFFFFFFFFE, double %12152, double %12144)
  %12154 = load ptr, ptr %7, align 8, !tbaa !9
  %12155 = load i32, ptr %12, align 4, !tbaa !5
  %12156 = load i32, ptr %8, align 4, !tbaa !5
  %12157 = mul nsw i32 35, %12156
  %12158 = add nsw i32 %12155, %12157
  %12159 = sext i32 %12158 to i64
  %12160 = getelementptr inbounds double, ptr %12154, i64 %12159
  %12161 = load double, ptr %12160, align 8, !tbaa !11
  %12162 = call double @llvm.fmuladd.f64(double 0xBCD2000000000000, double %12161, double %12153)
  %12163 = load ptr, ptr %7, align 8, !tbaa !9
  %12164 = load i32, ptr %12, align 4, !tbaa !5
  %12165 = load i32, ptr %8, align 4, !tbaa !5
  %12166 = mul nsw i32 52, %12165
  %12167 = add nsw i32 %12164, %12166
  %12168 = sext i32 %12167 to i64
  %12169 = getelementptr inbounds double, ptr %12163, i64 %12168
  %12170 = load double, ptr %12169, align 8, !tbaa !11
  %12171 = call double @llvm.fmuladd.f64(double 0x400E488CB8C1EA66, double %12170, double %12162)
  %12172 = load ptr, ptr %7, align 8, !tbaa !9
  %12173 = load i32, ptr %12, align 4, !tbaa !5
  %12174 = load i32, ptr %8, align 4, !tbaa !5
  %12175 = mul nsw i32 53, %12174
  %12176 = add nsw i32 %12173, %12175
  %12177 = sext i32 %12176 to i64
  %12178 = getelementptr inbounds double, ptr %12172, i64 %12177
  %12179 = load double, ptr %12178, align 8, !tbaa !11
  %12180 = call double @llvm.fmuladd.f64(double 0x3FD4A299D1E9700C, double %12179, double %12171)
  %12181 = load ptr, ptr %7, align 8, !tbaa !9
  %12182 = load i32, ptr %12, align 4, !tbaa !5
  %12183 = load i32, ptr %8, align 4, !tbaa !5
  %12184 = mul nsw i32 54, %12183
  %12185 = add nsw i32 %12182, %12184
  %12186 = sext i32 %12185 to i64
  %12187 = getelementptr inbounds double, ptr %12181, i64 %12186
  %12188 = load double, ptr %12187, align 8, !tbaa !11
  %12189 = call double @llvm.fmuladd.f64(double 0xBFC5EA083165C4F9, double %12188, double %12180)
  %12190 = load ptr, ptr %7, align 8, !tbaa !9
  %12191 = load i32, ptr %12, align 4, !tbaa !5
  %12192 = load i32, ptr %8, align 4, !tbaa !5
  %12193 = mul nsw i32 55, %12192
  %12194 = add nsw i32 %12191, %12193
  %12195 = sext i32 %12194 to i64
  %12196 = getelementptr inbounds double, ptr %12190, i64 %12195
  %12197 = load double, ptr %12196, align 8, !tbaa !11
  %12198 = call double @llvm.fmuladd.f64(double 0x3FA462D8D66D7F94, double %12197, double %12189)
  %12199 = load ptr, ptr %7, align 8, !tbaa !9
  %12200 = load i32, ptr %12, align 4, !tbaa !5
  %12201 = load i32, ptr %8, align 4, !tbaa !5
  %12202 = mul nsw i32 56, %12201
  %12203 = add nsw i32 %12200, %12202
  %12204 = sext i32 %12203 to i64
  %12205 = getelementptr inbounds double, ptr %12199, i64 %12204
  %12206 = load double, ptr %12205, align 8, !tbaa !11
  %12207 = call double @llvm.fmuladd.f64(double 0x3C9152F9467969C8, double %12206, double %12198)
  %12208 = load ptr, ptr %7, align 8, !tbaa !9
  %12209 = load i32, ptr %12, align 4, !tbaa !5
  %12210 = load i32, ptr %8, align 4, !tbaa !5
  %12211 = mul nsw i32 57, %12210
  %12212 = add nsw i32 %12209, %12211
  %12213 = sext i32 %12212 to i64
  %12214 = getelementptr inbounds double, ptr %12208, i64 %12213
  %12215 = load double, ptr %12214, align 8, !tbaa !11
  %12216 = call double @llvm.fmuladd.f64(double 0xBCADB2CFE686FE7D, double %12215, double %12207)
  %12217 = load ptr, ptr %7, align 8, !tbaa !9
  %12218 = load i32, ptr %12, align 4, !tbaa !5
  %12219 = load i32, ptr %8, align 4, !tbaa !5
  %12220 = mul nsw i32 58, %12219
  %12221 = add nsw i32 %12218, %12220
  %12222 = sext i32 %12221 to i64
  %12223 = getelementptr inbounds double, ptr %12217, i64 %12222
  %12224 = load double, ptr %12223, align 8, !tbaa !11
  %12225 = call double @llvm.fmuladd.f64(double 0xBCA26280B3476095, double %12224, double %12216)
  %12226 = load ptr, ptr %7, align 8, !tbaa !9
  %12227 = load i32, ptr %12, align 4, !tbaa !5
  %12228 = load i32, ptr %8, align 4, !tbaa !5
  %12229 = mul nsw i32 59, %12228
  %12230 = add nsw i32 %12227, %12229
  %12231 = sext i32 %12230 to i64
  %12232 = getelementptr inbounds double, ptr %12226, i64 %12231
  %12233 = load double, ptr %12232, align 8, !tbaa !11
  %12234 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %12233, double %12225)
  %12235 = load ptr, ptr %7, align 8, !tbaa !9
  %12236 = load i32, ptr %12, align 4, !tbaa !5
  %12237 = load i32, ptr %8, align 4, !tbaa !5
  %12238 = mul nsw i32 60, %12237
  %12239 = add nsw i32 %12236, %12238
  %12240 = sext i32 %12239 to i64
  %12241 = getelementptr inbounds double, ptr %12235, i64 %12240
  %12242 = load double, ptr %12241, align 8, !tbaa !11
  %12243 = call double @llvm.fmuladd.f64(double 0xBCAF4A1B09BBF0AE, double %12242, double %12234)
  %12244 = load ptr, ptr %7, align 8, !tbaa !9
  %12245 = load i32, ptr %12, align 4, !tbaa !5
  %12246 = load i32, ptr %8, align 4, !tbaa !5
  %12247 = mul nsw i32 61, %12246
  %12248 = add nsw i32 %12245, %12247
  %12249 = sext i32 %12248 to i64
  %12250 = getelementptr inbounds double, ptr %12244, i64 %12249
  %12251 = load double, ptr %12250, align 8, !tbaa !11
  %12252 = call double @llvm.fmuladd.f64(double 0x3CADB2CFE686FE7D, double %12251, double %12243)
  %12253 = load ptr, ptr %7, align 8, !tbaa !9
  %12254 = load i32, ptr %12, align 4, !tbaa !5
  %12255 = load i32, ptr %8, align 4, !tbaa !5
  %12256 = mul nsw i32 62, %12255
  %12257 = add nsw i32 %12254, %12256
  %12258 = sext i32 %12257 to i64
  %12259 = getelementptr inbounds double, ptr %12253, i64 %12258
  %12260 = load double, ptr %12259, align 8, !tbaa !11
  %12261 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %12260, double %12252)
  %12262 = load ptr, ptr %7, align 8, !tbaa !9
  %12263 = load i32, ptr %12, align 4, !tbaa !5
  %12264 = load i32, ptr %8, align 4, !tbaa !5
  %12265 = mul nsw i32 63, %12264
  %12266 = add nsw i32 %12263, %12265
  %12267 = sext i32 %12266 to i64
  %12268 = getelementptr inbounds double, ptr %12262, i64 %12267
  %12269 = load double, ptr %12268, align 8, !tbaa !11
  %12270 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %12269, double %12261)
  %12271 = load ptr, ptr %7, align 8, !tbaa !9
  %12272 = load i32, ptr %12, align 4, !tbaa !5
  %12273 = load i32, ptr %8, align 4, !tbaa !5
  %12274 = mul nsw i32 64, %12273
  %12275 = add nsw i32 %12272, %12274
  %12276 = sext i32 %12275 to i64
  %12277 = getelementptr inbounds double, ptr %12271, i64 %12276
  %12278 = load double, ptr %12277, align 8, !tbaa !11
  %12279 = call double @llvm.fmuladd.f64(double 0x3CC689FDC818BC8F, double %12278, double %12270)
  %12280 = load ptr, ptr %7, align 8, !tbaa !9
  %12281 = load i32, ptr %12, align 4, !tbaa !5
  %12282 = load i32, ptr %8, align 4, !tbaa !5
  %12283 = mul nsw i32 65, %12282
  %12284 = add nsw i32 %12281, %12283
  %12285 = sext i32 %12284 to i64
  %12286 = getelementptr inbounds double, ptr %12280, i64 %12285
  %12287 = load double, ptr %12286, align 8, !tbaa !11
  %12288 = call double @llvm.fmuladd.f64(double 0x3CB16999E4DFE903, double %12287, double %12279)
  %12289 = load ptr, ptr %7, align 8, !tbaa !9
  %12290 = load i32, ptr %12, align 4, !tbaa !5
  %12291 = load i32, ptr %8, align 4, !tbaa !5
  %12292 = mul nsw i32 66, %12291
  %12293 = add nsw i32 %12290, %12292
  %12294 = sext i32 %12293 to i64
  %12295 = getelementptr inbounds double, ptr %12289, i64 %12294
  %12296 = load double, ptr %12295, align 8, !tbaa !11
  %12297 = call double @llvm.fmuladd.f64(double 0xBC880AA84CE72F89, double %12296, double %12288)
  %12298 = load ptr, ptr %7, align 8, !tbaa !9
  %12299 = load i32, ptr %12, align 4, !tbaa !5
  %12300 = load i32, ptr %8, align 4, !tbaa !5
  %12301 = mul nsw i32 67, %12300
  %12302 = add nsw i32 %12299, %12301
  %12303 = sext i32 %12302 to i64
  %12304 = getelementptr inbounds double, ptr %12298, i64 %12303
  %12305 = load double, ptr %12304, align 8, !tbaa !11
  %12306 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %12305, double %12297)
  store double %12306, ptr %11, align 8, !tbaa !11
  %12307 = load double, ptr %11, align 8, !tbaa !11
  %12308 = load ptr, ptr %9, align 8, !tbaa !9
  %12309 = load i32, ptr %12, align 4, !tbaa !5
  %12310 = load i32, ptr %10, align 4, !tbaa !5
  %12311 = mul nsw i32 42, %12310
  %12312 = add nsw i32 %12309, %12311
  %12313 = sext i32 %12312 to i64
  %12314 = getelementptr inbounds double, ptr %12308, i64 %12313
  store double %12307, ptr %12314, align 8, !tbaa !11
  %12315 = load ptr, ptr %7, align 8, !tbaa !9
  %12316 = load i32, ptr %12, align 4, !tbaa !5
  %12317 = load i32, ptr %8, align 4, !tbaa !5
  %12318 = mul nsw i32 20, %12317
  %12319 = add nsw i32 %12316, %12318
  %12320 = sext i32 %12319 to i64
  %12321 = getelementptr inbounds double, ptr %12315, i64 %12320
  %12322 = load double, ptr %12321, align 8, !tbaa !11
  %12323 = load ptr, ptr %7, align 8, !tbaa !9
  %12324 = load i32, ptr %12, align 4, !tbaa !5
  %12325 = load i32, ptr %8, align 4, !tbaa !5
  %12326 = mul nsw i32 21, %12325
  %12327 = add nsw i32 %12324, %12326
  %12328 = sext i32 %12327 to i64
  %12329 = getelementptr inbounds double, ptr %12323, i64 %12328
  %12330 = load double, ptr %12329, align 8, !tbaa !11
  %12331 = fmul double 0xBFDD2EB9CCB3BDB5, %12330
  %12332 = call double @llvm.fmuladd.f64(double 0xC01569E165D79412, double %12322, double %12331)
  %12333 = load ptr, ptr %7, align 8, !tbaa !9
  %12334 = load i32, ptr %12, align 4, !tbaa !5
  %12335 = load i32, ptr %8, align 4, !tbaa !5
  %12336 = mul nsw i32 22, %12335
  %12337 = add nsw i32 %12334, %12336
  %12338 = sext i32 %12337 to i64
  %12339 = getelementptr inbounds double, ptr %12333, i64 %12338
  %12340 = load double, ptr %12339, align 8, !tbaa !11
  %12341 = call double @llvm.fmuladd.f64(double 0x3FCEFDC8894D07B6, double %12340, double %12332)
  %12342 = load ptr, ptr %7, align 8, !tbaa !9
  %12343 = load i32, ptr %12, align 4, !tbaa !5
  %12344 = load i32, ptr %8, align 4, !tbaa !5
  %12345 = mul nsw i32 23, %12344
  %12346 = add nsw i32 %12343, %12345
  %12347 = sext i32 %12346 to i64
  %12348 = getelementptr inbounds double, ptr %12342, i64 %12347
  %12349 = load double, ptr %12348, align 8, !tbaa !11
  %12350 = call double @llvm.fmuladd.f64(double 0xBFACD49071EC5FF2, double %12349, double %12341)
  %12351 = load ptr, ptr %7, align 8, !tbaa !9
  %12352 = load i32, ptr %12, align 4, !tbaa !5
  %12353 = load i32, ptr %8, align 4, !tbaa !5
  %12354 = mul nsw i32 24, %12353
  %12355 = add nsw i32 %12352, %12354
  %12356 = sext i32 %12355 to i64
  %12357 = getelementptr inbounds double, ptr %12351, i64 %12356
  %12358 = load double, ptr %12357, align 8, !tbaa !11
  %12359 = call double @llvm.fmuladd.f64(double 0xBCD6C00000000002, double %12358, double %12350)
  %12360 = load ptr, ptr %7, align 8, !tbaa !9
  %12361 = load i32, ptr %12, align 4, !tbaa !5
  %12362 = load i32, ptr %8, align 4, !tbaa !5
  %12363 = mul nsw i32 25, %12362
  %12364 = add nsw i32 %12361, %12363
  %12365 = sext i32 %12364 to i64
  %12366 = getelementptr inbounds double, ptr %12360, i64 %12365
  %12367 = load double, ptr %12366, align 8, !tbaa !11
  %12368 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %12367, double %12359)
  %12369 = load ptr, ptr %7, align 8, !tbaa !9
  %12370 = load i32, ptr %12, align 4, !tbaa !5
  %12371 = load i32, ptr %8, align 4, !tbaa !5
  %12372 = mul nsw i32 26, %12371
  %12373 = add nsw i32 %12370, %12372
  %12374 = sext i32 %12373 to i64
  %12375 = getelementptr inbounds double, ptr %12369, i64 %12374
  %12376 = load double, ptr %12375, align 8, !tbaa !11
  %12377 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %12376, double %12368)
  %12378 = load ptr, ptr %7, align 8, !tbaa !9
  %12379 = load i32, ptr %12, align 4, !tbaa !5
  %12380 = load i32, ptr %8, align 4, !tbaa !5
  %12381 = mul nsw i32 27, %12380
  %12382 = add nsw i32 %12379, %12381
  %12383 = sext i32 %12382 to i64
  %12384 = getelementptr inbounds double, ptr %12378, i64 %12383
  %12385 = load double, ptr %12384, align 8, !tbaa !11
  %12386 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %12385, double %12377)
  %12387 = load ptr, ptr %7, align 8, !tbaa !9
  %12388 = load i32, ptr %12, align 4, !tbaa !5
  %12389 = load i32, ptr %8, align 4, !tbaa !5
  %12390 = mul nsw i32 28, %12389
  %12391 = add nsw i32 %12388, %12390
  %12392 = sext i32 %12391 to i64
  %12393 = getelementptr inbounds double, ptr %12387, i64 %12392
  %12394 = load double, ptr %12393, align 8, !tbaa !11
  %12395 = call double @llvm.fmuladd.f64(double 0xBCC2800000000000, double %12394, double %12386)
  %12396 = load ptr, ptr %7, align 8, !tbaa !9
  %12397 = load i32, ptr %12, align 4, !tbaa !5
  %12398 = load i32, ptr %8, align 4, !tbaa !5
  %12399 = mul nsw i32 29, %12398
  %12400 = add nsw i32 %12397, %12399
  %12401 = sext i32 %12400 to i64
  %12402 = getelementptr inbounds double, ptr %12396, i64 %12401
  %12403 = load double, ptr %12402, align 8, !tbaa !11
  %12404 = call double @llvm.fmuladd.f64(double 0x3CAE000000000002, double %12403, double %12395)
  %12405 = load ptr, ptr %7, align 8, !tbaa !9
  %12406 = load i32, ptr %12, align 4, !tbaa !5
  %12407 = load i32, ptr %8, align 4, !tbaa !5
  %12408 = mul nsw i32 30, %12407
  %12409 = add nsw i32 %12406, %12408
  %12410 = sext i32 %12409 to i64
  %12411 = getelementptr inbounds double, ptr %12405, i64 %12410
  %12412 = load double, ptr %12411, align 8, !tbaa !11
  %12413 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %12412, double %12404)
  %12414 = load ptr, ptr %7, align 8, !tbaa !9
  %12415 = load i32, ptr %12, align 4, !tbaa !5
  %12416 = load i32, ptr %8, align 4, !tbaa !5
  %12417 = mul nsw i32 31, %12416
  %12418 = add nsw i32 %12415, %12417
  %12419 = sext i32 %12418 to i64
  %12420 = getelementptr inbounds double, ptr %12414, i64 %12419
  %12421 = load double, ptr %12420, align 8, !tbaa !11
  %12422 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %12421, double %12413)
  %12423 = load ptr, ptr %7, align 8, !tbaa !9
  %12424 = load i32, ptr %12, align 4, !tbaa !5
  %12425 = load i32, ptr %8, align 4, !tbaa !5
  %12426 = mul nsw i32 32, %12425
  %12427 = add nsw i32 %12424, %12426
  %12428 = sext i32 %12427 to i64
  %12429 = getelementptr inbounds double, ptr %12423, i64 %12428
  %12430 = load double, ptr %12429, align 8, !tbaa !11
  %12431 = call double @llvm.fmuladd.f64(double 0xBCBF000000000001, double %12430, double %12422)
  %12432 = load ptr, ptr %7, align 8, !tbaa !9
  %12433 = load i32, ptr %12, align 4, !tbaa !5
  %12434 = load i32, ptr %8, align 4, !tbaa !5
  %12435 = mul nsw i32 33, %12434
  %12436 = add nsw i32 %12433, %12435
  %12437 = sext i32 %12436 to i64
  %12438 = getelementptr inbounds double, ptr %12432, i64 %12437
  %12439 = load double, ptr %12438, align 8, !tbaa !11
  %12440 = call double @llvm.fmuladd.f64(double 0xBCBAFFFFFFFFFFFF, double %12439, double %12431)
  %12441 = load ptr, ptr %7, align 8, !tbaa !9
  %12442 = load i32, ptr %12, align 4, !tbaa !5
  %12443 = load i32, ptr %8, align 4, !tbaa !5
  %12444 = mul nsw i32 34, %12443
  %12445 = add nsw i32 %12442, %12444
  %12446 = sext i32 %12445 to i64
  %12447 = getelementptr inbounds double, ptr %12441, i64 %12446
  %12448 = load double, ptr %12447, align 8, !tbaa !11
  %12449 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %12448, double %12440)
  %12450 = load ptr, ptr %7, align 8, !tbaa !9
  %12451 = load i32, ptr %12, align 4, !tbaa !5
  %12452 = load i32, ptr %8, align 4, !tbaa !5
  %12453 = mul nsw i32 35, %12452
  %12454 = add nsw i32 %12451, %12453
  %12455 = sext i32 %12454 to i64
  %12456 = getelementptr inbounds double, ptr %12450, i64 %12455
  %12457 = load double, ptr %12456, align 8, !tbaa !11
  %12458 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %12457, double %12449)
  %12459 = load ptr, ptr %7, align 8, !tbaa !9
  %12460 = load i32, ptr %12, align 4, !tbaa !5
  %12461 = load i32, ptr %8, align 4, !tbaa !5
  %12462 = mul nsw i32 52, %12461
  %12463 = add nsw i32 %12460, %12462
  %12464 = sext i32 %12463 to i64
  %12465 = getelementptr inbounds double, ptr %12459, i64 %12464
  %12466 = load double, ptr %12465, align 8, !tbaa !11
  %12467 = call double @llvm.fmuladd.f64(double 0xBFD039FE04F7163A, double %12466, double %12458)
  %12468 = load ptr, ptr %7, align 8, !tbaa !9
  %12469 = load i32, ptr %12, align 4, !tbaa !5
  %12470 = load i32, ptr %8, align 4, !tbaa !5
  %12471 = mul nsw i32 53, %12470
  %12472 = add nsw i32 %12469, %12471
  %12473 = sext i32 %12472 to i64
  %12474 = getelementptr inbounds double, ptr %12468, i64 %12473
  %12475 = load double, ptr %12474, align 8, !tbaa !11
  %12476 = call double @llvm.fmuladd.f64(double 0xBFE30958FBF81242, double %12475, double %12467)
  %12477 = load ptr, ptr %7, align 8, !tbaa !9
  %12478 = load i32, ptr %12, align 4, !tbaa !5
  %12479 = load i32, ptr %8, align 4, !tbaa !5
  %12480 = mul nsw i32 54, %12479
  %12481 = add nsw i32 %12478, %12480
  %12482 = sext i32 %12481 to i64
  %12483 = getelementptr inbounds double, ptr %12477, i64 %12482
  %12484 = load double, ptr %12483, align 8, !tbaa !11
  %12485 = call double @llvm.fmuladd.f64(double 0xBFE30958FBF81231, double %12484, double %12476)
  %12486 = load ptr, ptr %7, align 8, !tbaa !9
  %12487 = load i32, ptr %12, align 4, !tbaa !5
  %12488 = load i32, ptr %8, align 4, !tbaa !5
  %12489 = mul nsw i32 55, %12488
  %12490 = add nsw i32 %12487, %12489
  %12491 = sext i32 %12490 to i64
  %12492 = getelementptr inbounds double, ptr %12486, i64 %12491
  %12493 = load double, ptr %12492, align 8, !tbaa !11
  %12494 = call double @llvm.fmuladd.f64(double 0xBFD039FE04F71632, double %12493, double %12485)
  %12495 = load ptr, ptr %7, align 8, !tbaa !9
  %12496 = load i32, ptr %12, align 4, !tbaa !5
  %12497 = load i32, ptr %8, align 4, !tbaa !5
  %12498 = mul nsw i32 56, %12497
  %12499 = add nsw i32 %12496, %12498
  %12500 = sext i32 %12499 to i64
  %12501 = getelementptr inbounds double, ptr %12495, i64 %12500
  %12502 = load double, ptr %12501, align 8, !tbaa !11
  %12503 = call double @llvm.fmuladd.f64(double 0x3C959116F9B144FE, double %12502, double %12494)
  %12504 = load ptr, ptr %7, align 8, !tbaa !9
  %12505 = load i32, ptr %12, align 4, !tbaa !5
  %12506 = load i32, ptr %8, align 4, !tbaa !5
  %12507 = mul nsw i32 57, %12506
  %12508 = add nsw i32 %12505, %12507
  %12509 = sext i32 %12508 to i64
  %12510 = getelementptr inbounds double, ptr %12504, i64 %12509
  %12511 = load double, ptr %12510, align 8, !tbaa !11
  %12512 = call double @llvm.fmuladd.f64(double 0xBCA80AA84CE72F89, double %12511, double %12503)
  %12513 = load ptr, ptr %7, align 8, !tbaa !9
  %12514 = load i32, ptr %12, align 4, !tbaa !5
  %12515 = load i32, ptr %8, align 4, !tbaa !5
  %12516 = mul nsw i32 58, %12515
  %12517 = add nsw i32 %12514, %12516
  %12518 = sext i32 %12517 to i64
  %12519 = getelementptr inbounds double, ptr %12513, i64 %12518
  %12520 = load double, ptr %12519, align 8, !tbaa !11
  %12521 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %12520, double %12512)
  %12522 = load ptr, ptr %7, align 8, !tbaa !9
  %12523 = load i32, ptr %12, align 4, !tbaa !5
  %12524 = load i32, ptr %8, align 4, !tbaa !5
  %12525 = mul nsw i32 59, %12524
  %12526 = add nsw i32 %12523, %12525
  %12527 = sext i32 %12526 to i64
  %12528 = getelementptr inbounds double, ptr %12522, i64 %12527
  %12529 = load double, ptr %12528, align 8, !tbaa !11
  %12530 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %12529, double %12521)
  %12531 = load ptr, ptr %7, align 8, !tbaa !9
  %12532 = load i32, ptr %12, align 4, !tbaa !5
  %12533 = load i32, ptr %8, align 4, !tbaa !5
  %12534 = mul nsw i32 60, %12533
  %12535 = add nsw i32 %12532, %12534
  %12536 = sext i32 %12535 to i64
  %12537 = getelementptr inbounds double, ptr %12531, i64 %12536
  %12538 = load double, ptr %12537, align 8, !tbaa !11
  %12539 = call double @llvm.fmuladd.f64(double 0xBCB0B494F1ABEF27, double %12538, double %12530)
  %12540 = load ptr, ptr %7, align 8, !tbaa !9
  %12541 = load i32, ptr %12, align 4, !tbaa !5
  %12542 = load i32, ptr %8, align 4, !tbaa !5
  %12543 = mul nsw i32 61, %12542
  %12544 = add nsw i32 %12541, %12543
  %12545 = sext i32 %12544 to i64
  %12546 = getelementptr inbounds double, ptr %12540, i64 %12545
  %12547 = load double, ptr %12546, align 8, !tbaa !11
  %12548 = call double @llvm.fmuladd.f64(double 0xBCA536948017480F, double %12547, double %12539)
  %12549 = load ptr, ptr %7, align 8, !tbaa !9
  %12550 = load i32, ptr %12, align 4, !tbaa !5
  %12551 = load i32, ptr %8, align 4, !tbaa !5
  %12552 = mul nsw i32 62, %12551
  %12553 = add nsw i32 %12550, %12552
  %12554 = sext i32 %12553 to i64
  %12555 = getelementptr inbounds double, ptr %12549, i64 %12554
  %12556 = load double, ptr %12555, align 8, !tbaa !11
  %12557 = call double @llvm.fmuladd.f64(double 0x3CADB2CFE686FE7D, double %12556, double %12548)
  %12558 = load ptr, ptr %7, align 8, !tbaa !9
  %12559 = load i32, ptr %12, align 4, !tbaa !5
  %12560 = load i32, ptr %8, align 4, !tbaa !5
  %12561 = mul nsw i32 63, %12560
  %12562 = add nsw i32 %12559, %12561
  %12563 = sext i32 %12562 to i64
  %12564 = getelementptr inbounds double, ptr %12558, i64 %12563
  %12565 = load double, ptr %12564, align 8, !tbaa !11
  %12566 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %12565, double %12557)
  %12567 = load ptr, ptr %7, align 8, !tbaa !9
  %12568 = load i32, ptr %12, align 4, !tbaa !5
  %12569 = load i32, ptr %8, align 4, !tbaa !5
  %12570 = mul nsw i32 64, %12569
  %12571 = add nsw i32 %12568, %12570
  %12572 = sext i32 %12571 to i64
  %12573 = getelementptr inbounds double, ptr %12567, i64 %12572
  %12574 = load double, ptr %12573, align 8, !tbaa !11
  %12575 = call double @llvm.fmuladd.f64(double 0xBC9F1CD9CCEEF236, double %12574, double %12566)
  %12576 = load ptr, ptr %7, align 8, !tbaa !9
  %12577 = load i32, ptr %12, align 4, !tbaa !5
  %12578 = load i32, ptr %8, align 4, !tbaa !5
  %12579 = mul nsw i32 65, %12578
  %12580 = add nsw i32 %12577, %12579
  %12581 = sext i32 %12580 to i64
  %12582 = getelementptr inbounds double, ptr %12576, i64 %12581
  %12583 = load double, ptr %12582, align 8, !tbaa !11
  %12584 = call double @llvm.fmuladd.f64(double 0xBCA016309CDE7482, double %12583, double %12575)
  %12585 = load ptr, ptr %7, align 8, !tbaa !9
  %12586 = load i32, ptr %12, align 4, !tbaa !5
  %12587 = load i32, ptr %8, align 4, !tbaa !5
  %12588 = mul nsw i32 66, %12587
  %12589 = add nsw i32 %12586, %12588
  %12590 = sext i32 %12589 to i64
  %12591 = getelementptr inbounds double, ptr %12585, i64 %12590
  %12592 = load double, ptr %12591, align 8, !tbaa !11
  %12593 = call double @llvm.fmuladd.f64(double 0x3C98BFAD401B2967, double %12592, double %12584)
  %12594 = load ptr, ptr %7, align 8, !tbaa !9
  %12595 = load i32, ptr %12, align 4, !tbaa !5
  %12596 = load i32, ptr %8, align 4, !tbaa !5
  %12597 = mul nsw i32 67, %12596
  %12598 = add nsw i32 %12595, %12597
  %12599 = sext i32 %12598 to i64
  %12600 = getelementptr inbounds double, ptr %12594, i64 %12599
  %12601 = load double, ptr %12600, align 8, !tbaa !11
  %12602 = call double @llvm.fmuladd.f64(double 0xBC93CC8A99AF5452, double %12601, double %12593)
  store double %12602, ptr %11, align 8, !tbaa !11
  %12603 = load double, ptr %11, align 8, !tbaa !11
  %12604 = load ptr, ptr %9, align 8, !tbaa !9
  %12605 = load i32, ptr %12, align 4, !tbaa !5
  %12606 = load i32, ptr %10, align 4, !tbaa !5
  %12607 = mul nsw i32 43, %12606
  %12608 = add nsw i32 %12605, %12607
  %12609 = sext i32 %12608 to i64
  %12610 = getelementptr inbounds double, ptr %12604, i64 %12609
  store double %12603, ptr %12610, align 8, !tbaa !11
  %12611 = load ptr, ptr %7, align 8, !tbaa !9
  %12612 = load i32, ptr %12, align 4, !tbaa !5
  %12613 = load i32, ptr %8, align 4, !tbaa !5
  %12614 = mul nsw i32 20, %12613
  %12615 = add nsw i32 %12612, %12614
  %12616 = sext i32 %12615 to i64
  %12617 = getelementptr inbounds double, ptr %12611, i64 %12616
  %12618 = load double, ptr %12617, align 8, !tbaa !11
  %12619 = load ptr, ptr %7, align 8, !tbaa !9
  %12620 = load i32, ptr %12, align 4, !tbaa !5
  %12621 = load i32, ptr %8, align 4, !tbaa !5
  %12622 = mul nsw i32 21, %12621
  %12623 = add nsw i32 %12620, %12622
  %12624 = sext i32 %12623 to i64
  %12625 = getelementptr inbounds double, ptr %12619, i64 %12624
  %12626 = load double, ptr %12625, align 8, !tbaa !11
  %12627 = fmul double 0xBFB4C23AD63BEF88, %12626
  %12628 = call double @llvm.fmuladd.f64(double 0xBFAC37F3CCE9FCFE, double %12618, double %12627)
  %12629 = load ptr, ptr %7, align 8, !tbaa !9
  %12630 = load i32, ptr %12, align 4, !tbaa !5
  %12631 = load i32, ptr %8, align 4, !tbaa !5
  %12632 = mul nsw i32 22, %12631
  %12633 = add nsw i32 %12630, %12632
  %12634 = sext i32 %12633 to i64
  %12635 = getelementptr inbounds double, ptr %12629, i64 %12634
  %12636 = load double, ptr %12635, align 8, !tbaa !11
  %12637 = call double @llvm.fmuladd.f64(double 0x3FEFAD7976B5DE29, double %12636, double %12628)
  %12638 = load ptr, ptr %7, align 8, !tbaa !9
  %12639 = load i32, ptr %12, align 4, !tbaa !5
  %12640 = load i32, ptr %8, align 4, !tbaa !5
  %12641 = mul nsw i32 23, %12640
  %12642 = add nsw i32 %12639, %12641
  %12643 = sext i32 %12642 to i64
  %12644 = getelementptr inbounds double, ptr %12638, i64 %12643
  %12645 = load double, ptr %12644, align 8, !tbaa !11
  %12646 = call double @llvm.fmuladd.f64(double 0x3FF043C98657E812, double %12645, double %12637)
  %12647 = load ptr, ptr %7, align 8, !tbaa !9
  %12648 = load i32, ptr %12, align 4, !tbaa !5
  %12649 = load i32, ptr %8, align 4, !tbaa !5
  %12650 = mul nsw i32 24, %12649
  %12651 = add nsw i32 %12648, %12650
  %12652 = sext i32 %12651 to i64
  %12653 = getelementptr inbounds double, ptr %12647, i64 %12652
  %12654 = load double, ptr %12653, align 8, !tbaa !11
  %12655 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %12654, double %12646)
  %12656 = load ptr, ptr %7, align 8, !tbaa !9
  %12657 = load i32, ptr %12, align 4, !tbaa !5
  %12658 = load i32, ptr %8, align 4, !tbaa !5
  %12659 = mul nsw i32 26, %12658
  %12660 = add nsw i32 %12657, %12659
  %12661 = sext i32 %12660 to i64
  %12662 = getelementptr inbounds double, ptr %12656, i64 %12661
  %12663 = load double, ptr %12662, align 8, !tbaa !11
  %12664 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %12663, double %12655)
  %12665 = load ptr, ptr %7, align 8, !tbaa !9
  %12666 = load i32, ptr %12, align 4, !tbaa !5
  %12667 = load i32, ptr %8, align 4, !tbaa !5
  %12668 = mul nsw i32 27, %12667
  %12669 = add nsw i32 %12666, %12668
  %12670 = sext i32 %12669 to i64
  %12671 = getelementptr inbounds double, ptr %12665, i64 %12670
  %12672 = load double, ptr %12671, align 8, !tbaa !11
  %12673 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %12672, double %12664)
  %12674 = load ptr, ptr %7, align 8, !tbaa !9
  %12675 = load i32, ptr %12, align 4, !tbaa !5
  %12676 = load i32, ptr %8, align 4, !tbaa !5
  %12677 = mul nsw i32 28, %12676
  %12678 = add nsw i32 %12675, %12677
  %12679 = sext i32 %12678 to i64
  %12680 = getelementptr inbounds double, ptr %12674, i64 %12679
  %12681 = load double, ptr %12680, align 8, !tbaa !11
  %12682 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %12681, double %12673)
  %12683 = load ptr, ptr %7, align 8, !tbaa !9
  %12684 = load i32, ptr %12, align 4, !tbaa !5
  %12685 = load i32, ptr %8, align 4, !tbaa !5
  %12686 = mul nsw i32 29, %12685
  %12687 = add nsw i32 %12684, %12686
  %12688 = sext i32 %12687 to i64
  %12689 = getelementptr inbounds double, ptr %12683, i64 %12688
  %12690 = load double, ptr %12689, align 8, !tbaa !11
  %12691 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %12690, double %12682)
  %12692 = load ptr, ptr %7, align 8, !tbaa !9
  %12693 = load i32, ptr %12, align 4, !tbaa !5
  %12694 = load i32, ptr %8, align 4, !tbaa !5
  %12695 = mul nsw i32 30, %12694
  %12696 = add nsw i32 %12693, %12695
  %12697 = sext i32 %12696 to i64
  %12698 = getelementptr inbounds double, ptr %12692, i64 %12697
  %12699 = load double, ptr %12698, align 8, !tbaa !11
  %12700 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %12699, double %12691)
  %12701 = load ptr, ptr %7, align 8, !tbaa !9
  %12702 = load i32, ptr %12, align 4, !tbaa !5
  %12703 = load i32, ptr %8, align 4, !tbaa !5
  %12704 = mul nsw i32 31, %12703
  %12705 = add nsw i32 %12702, %12704
  %12706 = sext i32 %12705 to i64
  %12707 = getelementptr inbounds double, ptr %12701, i64 %12706
  %12708 = load double, ptr %12707, align 8, !tbaa !11
  %12709 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %12708, double %12700)
  %12710 = load ptr, ptr %7, align 8, !tbaa !9
  %12711 = load i32, ptr %12, align 4, !tbaa !5
  %12712 = load i32, ptr %8, align 4, !tbaa !5
  %12713 = mul nsw i32 32, %12712
  %12714 = add nsw i32 %12711, %12713
  %12715 = sext i32 %12714 to i64
  %12716 = getelementptr inbounds double, ptr %12710, i64 %12715
  %12717 = load double, ptr %12716, align 8, !tbaa !11
  %12718 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %12717, double %12709)
  %12719 = load ptr, ptr %7, align 8, !tbaa !9
  %12720 = load i32, ptr %12, align 4, !tbaa !5
  %12721 = load i32, ptr %8, align 4, !tbaa !5
  %12722 = mul nsw i32 33, %12721
  %12723 = add nsw i32 %12720, %12722
  %12724 = sext i32 %12723 to i64
  %12725 = getelementptr inbounds double, ptr %12719, i64 %12724
  %12726 = load double, ptr %12725, align 8, !tbaa !11
  %12727 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %12726, double %12718)
  %12728 = load ptr, ptr %7, align 8, !tbaa !9
  %12729 = load i32, ptr %12, align 4, !tbaa !5
  %12730 = load i32, ptr %8, align 4, !tbaa !5
  %12731 = mul nsw i32 34, %12730
  %12732 = add nsw i32 %12729, %12731
  %12733 = sext i32 %12732 to i64
  %12734 = getelementptr inbounds double, ptr %12728, i64 %12733
  %12735 = load double, ptr %12734, align 8, !tbaa !11
  %12736 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %12735, double %12727)
  %12737 = load ptr, ptr %7, align 8, !tbaa !9
  %12738 = load i32, ptr %12, align 4, !tbaa !5
  %12739 = load i32, ptr %8, align 4, !tbaa !5
  %12740 = mul nsw i32 35, %12739
  %12741 = add nsw i32 %12738, %12740
  %12742 = sext i32 %12741 to i64
  %12743 = getelementptr inbounds double, ptr %12737, i64 %12742
  %12744 = load double, ptr %12743, align 8, !tbaa !11
  %12745 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %12744, double %12736)
  %12746 = load ptr, ptr %7, align 8, !tbaa !9
  %12747 = load i32, ptr %12, align 4, !tbaa !5
  %12748 = load i32, ptr %8, align 4, !tbaa !5
  %12749 = mul nsw i32 52, %12748
  %12750 = add nsw i32 %12747, %12749
  %12751 = sext i32 %12750 to i64
  %12752 = getelementptr inbounds double, ptr %12746, i64 %12751
  %12753 = load double, ptr %12752, align 8, !tbaa !11
  %12754 = call double @llvm.fmuladd.f64(double 0x3FD08C54FF101A12, double %12753, double %12745)
  %12755 = load ptr, ptr %7, align 8, !tbaa !9
  %12756 = load i32, ptr %12, align 4, !tbaa !5
  %12757 = load i32, ptr %8, align 4, !tbaa !5
  %12758 = mul nsw i32 53, %12757
  %12759 = add nsw i32 %12756, %12758
  %12760 = sext i32 %12759 to i64
  %12761 = getelementptr inbounds double, ptr %12755, i64 %12760
  %12762 = load double, ptr %12761, align 8, !tbaa !11
  %12763 = call double @llvm.fmuladd.f64(double 0x4007001BD846D0B0, double %12762, double %12754)
  %12764 = load ptr, ptr %7, align 8, !tbaa !9
  %12765 = load i32, ptr %12, align 4, !tbaa !5
  %12766 = load i32, ptr %8, align 4, !tbaa !5
  %12767 = mul nsw i32 54, %12766
  %12768 = add nsw i32 %12765, %12767
  %12769 = sext i32 %12768 to i64
  %12770 = getelementptr inbounds double, ptr %12764, i64 %12769
  %12771 = load double, ptr %12770, align 8, !tbaa !11
  %12772 = call double @llvm.fmuladd.f64(double 0x3FD0C7817D9C3131, double %12771, double %12763)
  %12773 = load ptr, ptr %7, align 8, !tbaa !9
  %12774 = load i32, ptr %12, align 4, !tbaa !5
  %12775 = load i32, ptr %8, align 4, !tbaa !5
  %12776 = mul nsw i32 55, %12775
  %12777 = add nsw i32 %12774, %12776
  %12778 = sext i32 %12777 to i64
  %12779 = getelementptr inbounds double, ptr %12773, i64 %12778
  %12780 = load double, ptr %12779, align 8, !tbaa !11
  %12781 = call double @llvm.fmuladd.f64(double 0xBFB8DF388696F54B, double %12780, double %12772)
  %12782 = load ptr, ptr %7, align 8, !tbaa !9
  %12783 = load i32, ptr %12, align 4, !tbaa !5
  %12784 = load i32, ptr %8, align 4, !tbaa !5
  %12785 = mul nsw i32 56, %12784
  %12786 = add nsw i32 %12783, %12785
  %12787 = sext i32 %12786 to i64
  %12788 = getelementptr inbounds double, ptr %12782, i64 %12787
  %12789 = load double, ptr %12788, align 8, !tbaa !11
  %12790 = call double @llvm.fmuladd.f64(double 0xBC8CFDCAF353049C, double %12789, double %12781)
  %12791 = load ptr, ptr %7, align 8, !tbaa !9
  %12792 = load i32, ptr %12, align 4, !tbaa !5
  %12793 = load i32, ptr %8, align 4, !tbaa !5
  %12794 = mul nsw i32 57, %12793
  %12795 = add nsw i32 %12792, %12794
  %12796 = sext i32 %12795 to i64
  %12797 = getelementptr inbounds double, ptr %12791, i64 %12796
  %12798 = load double, ptr %12797, align 8, !tbaa !11
  %12799 = call double @llvm.fmuladd.f64(double 0x3CB6461BECE53EDD, double %12798, double %12790)
  %12800 = load ptr, ptr %7, align 8, !tbaa !9
  %12801 = load i32, ptr %12, align 4, !tbaa !5
  %12802 = load i32, ptr %8, align 4, !tbaa !5
  %12803 = mul nsw i32 58, %12802
  %12804 = add nsw i32 %12801, %12803
  %12805 = sext i32 %12804 to i64
  %12806 = getelementptr inbounds double, ptr %12800, i64 %12805
  %12807 = load double, ptr %12806, align 8, !tbaa !11
  %12808 = call double @llvm.fmuladd.f64(double 0x3CA3CC8A99AF5452, double %12807, double %12799)
  %12809 = load ptr, ptr %7, align 8, !tbaa !9
  %12810 = load i32, ptr %12, align 4, !tbaa !5
  %12811 = load i32, ptr %8, align 4, !tbaa !5
  %12812 = mul nsw i32 59, %12811
  %12813 = add nsw i32 %12810, %12812
  %12814 = sext i32 %12813 to i64
  %12815 = getelementptr inbounds double, ptr %12809, i64 %12814
  %12816 = load double, ptr %12815, align 8, !tbaa !11
  %12817 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %12816, double %12808)
  %12818 = load ptr, ptr %7, align 8, !tbaa !9
  %12819 = load i32, ptr %12, align 4, !tbaa !5
  %12820 = load i32, ptr %8, align 4, !tbaa !5
  %12821 = mul nsw i32 60, %12820
  %12822 = add nsw i32 %12819, %12821
  %12823 = sext i32 %12822 to i64
  %12824 = getelementptr inbounds double, ptr %12818, i64 %12823
  %12825 = load double, ptr %12824, align 8, !tbaa !11
  %12826 = call double @llvm.fmuladd.f64(double 0x3C6974B2334F2344, double %12825, double %12817)
  %12827 = load ptr, ptr %7, align 8, !tbaa !9
  %12828 = load i32, ptr %12, align 4, !tbaa !5
  %12829 = load i32, ptr %8, align 4, !tbaa !5
  %12830 = mul nsw i32 61, %12829
  %12831 = add nsw i32 %12828, %12830
  %12832 = sext i32 %12831 to i64
  %12833 = getelementptr inbounds double, ptr %12827, i64 %12832
  %12834 = load double, ptr %12833, align 8, !tbaa !11
  %12835 = call double @llvm.fmuladd.f64(double 0xBCA5EB99734B41EE, double %12834, double %12826)
  %12836 = load ptr, ptr %7, align 8, !tbaa !9
  %12837 = load i32, ptr %12, align 4, !tbaa !5
  %12838 = load i32, ptr %8, align 4, !tbaa !5
  %12839 = mul nsw i32 62, %12838
  %12840 = add nsw i32 %12837, %12839
  %12841 = sext i32 %12840 to i64
  %12842 = getelementptr inbounds double, ptr %12836, i64 %12841
  %12843 = load double, ptr %12842, align 8, !tbaa !11
  %12844 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %12843, double %12835)
  %12845 = load ptr, ptr %7, align 8, !tbaa !9
  %12846 = load i32, ptr %12, align 4, !tbaa !5
  %12847 = load i32, ptr %8, align 4, !tbaa !5
  %12848 = mul nsw i32 63, %12847
  %12849 = add nsw i32 %12846, %12848
  %12850 = sext i32 %12849 to i64
  %12851 = getelementptr inbounds double, ptr %12845, i64 %12850
  %12852 = load double, ptr %12851, align 8, !tbaa !11
  %12853 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %12852, double %12844)
  %12854 = load ptr, ptr %7, align 8, !tbaa !9
  %12855 = load i32, ptr %12, align 4, !tbaa !5
  %12856 = load i32, ptr %8, align 4, !tbaa !5
  %12857 = mul nsw i32 64, %12856
  %12858 = add nsw i32 %12855, %12857
  %12859 = sext i32 %12858 to i64
  %12860 = getelementptr inbounds double, ptr %12854, i64 %12859
  %12861 = load double, ptr %12860, align 8, !tbaa !11
  %12862 = call double @llvm.fmuladd.f64(double 0x3C8BEE4386850DD0, double %12861, double %12853)
  %12863 = load ptr, ptr %7, align 8, !tbaa !9
  %12864 = load i32, ptr %12, align 4, !tbaa !5
  %12865 = load i32, ptr %8, align 4, !tbaa !5
  %12866 = mul nsw i32 65, %12865
  %12867 = add nsw i32 %12864, %12866
  %12868 = sext i32 %12867 to i64
  %12869 = getelementptr inbounds double, ptr %12863, i64 %12868
  %12870 = load double, ptr %12869, align 8, !tbaa !11
  %12871 = call double @llvm.fmuladd.f64(double 0x3CC196DB21ACE77C, double %12870, double %12862)
  %12872 = load ptr, ptr %7, align 8, !tbaa !9
  %12873 = load i32, ptr %12, align 4, !tbaa !5
  %12874 = load i32, ptr %8, align 4, !tbaa !5
  %12875 = mul nsw i32 66, %12874
  %12876 = add nsw i32 %12873, %12875
  %12877 = sext i32 %12876 to i64
  %12878 = getelementptr inbounds double, ptr %12872, i64 %12877
  %12879 = load double, ptr %12878, align 8, !tbaa !11
  %12880 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %12879, double %12871)
  %12881 = load ptr, ptr %7, align 8, !tbaa !9
  %12882 = load i32, ptr %12, align 4, !tbaa !5
  %12883 = load i32, ptr %8, align 4, !tbaa !5
  %12884 = mul nsw i32 67, %12883
  %12885 = add nsw i32 %12882, %12884
  %12886 = sext i32 %12885 to i64
  %12887 = getelementptr inbounds double, ptr %12881, i64 %12886
  %12888 = load double, ptr %12887, align 8, !tbaa !11
  %12889 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %12888, double %12880)
  store double %12889, ptr %11, align 8, !tbaa !11
  %12890 = load double, ptr %11, align 8, !tbaa !11
  %12891 = load ptr, ptr %9, align 8, !tbaa !9
  %12892 = load i32, ptr %12, align 4, !tbaa !5
  %12893 = load i32, ptr %10, align 4, !tbaa !5
  %12894 = mul nsw i32 44, %12893
  %12895 = add nsw i32 %12892, %12894
  %12896 = sext i32 %12895 to i64
  %12897 = getelementptr inbounds double, ptr %12891, i64 %12896
  store double %12890, ptr %12897, align 8, !tbaa !11
  %12898 = load ptr, ptr %7, align 8, !tbaa !9
  %12899 = load i32, ptr %12, align 4, !tbaa !5
  %12900 = load i32, ptr %8, align 4, !tbaa !5
  %12901 = mul nsw i32 20, %12900
  %12902 = add nsw i32 %12899, %12901
  %12903 = sext i32 %12902 to i64
  %12904 = getelementptr inbounds double, ptr %12898, i64 %12903
  %12905 = load double, ptr %12904, align 8, !tbaa !11
  %12906 = load ptr, ptr %7, align 8, !tbaa !9
  %12907 = load i32, ptr %12, align 4, !tbaa !5
  %12908 = load i32, ptr %8, align 4, !tbaa !5
  %12909 = mul nsw i32 21, %12908
  %12910 = add nsw i32 %12907, %12909
  %12911 = sext i32 %12910 to i64
  %12912 = getelementptr inbounds double, ptr %12906, i64 %12911
  %12913 = load double, ptr %12912, align 8, !tbaa !11
  %12914 = fmul double 0x3FEFAD7976B5DE26, %12913
  %12915 = call double @llvm.fmuladd.f64(double 0x3FF043C98657E812, double %12905, double %12914)
  %12916 = load ptr, ptr %7, align 8, !tbaa !9
  %12917 = load i32, ptr %12, align 4, !tbaa !5
  %12918 = load i32, ptr %8, align 4, !tbaa !5
  %12919 = mul nsw i32 22, %12918
  %12920 = add nsw i32 %12917, %12919
  %12921 = sext i32 %12920 to i64
  %12922 = getelementptr inbounds double, ptr %12916, i64 %12921
  %12923 = load double, ptr %12922, align 8, !tbaa !11
  %12924 = call double @llvm.fmuladd.f64(double 0xBFB4C23AD63BEF60, double %12923, double %12915)
  %12925 = load ptr, ptr %7, align 8, !tbaa !9
  %12926 = load i32, ptr %12, align 4, !tbaa !5
  %12927 = load i32, ptr %8, align 4, !tbaa !5
  %12928 = mul nsw i32 23, %12927
  %12929 = add nsw i32 %12926, %12928
  %12930 = sext i32 %12929 to i64
  %12931 = getelementptr inbounds double, ptr %12925, i64 %12930
  %12932 = load double, ptr %12931, align 8, !tbaa !11
  %12933 = call double @llvm.fmuladd.f64(double 0xBFAC37F3CCE9FD17, double %12932, double %12924)
  %12934 = load ptr, ptr %7, align 8, !tbaa !9
  %12935 = load i32, ptr %12, align 4, !tbaa !5
  %12936 = load i32, ptr %8, align 4, !tbaa !5
  %12937 = mul nsw i32 24, %12936
  %12938 = add nsw i32 %12935, %12937
  %12939 = sext i32 %12938 to i64
  %12940 = getelementptr inbounds double, ptr %12934, i64 %12939
  %12941 = load double, ptr %12940, align 8, !tbaa !11
  %12942 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %12941, double %12933)
  %12943 = load ptr, ptr %7, align 8, !tbaa !9
  %12944 = load i32, ptr %12, align 4, !tbaa !5
  %12945 = load i32, ptr %8, align 4, !tbaa !5
  %12946 = mul nsw i32 25, %12945
  %12947 = add nsw i32 %12944, %12946
  %12948 = sext i32 %12947 to i64
  %12949 = getelementptr inbounds double, ptr %12943, i64 %12948
  %12950 = load double, ptr %12949, align 8, !tbaa !11
  %12951 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %12950, double %12942)
  %12952 = load ptr, ptr %7, align 8, !tbaa !9
  %12953 = load i32, ptr %12, align 4, !tbaa !5
  %12954 = load i32, ptr %8, align 4, !tbaa !5
  %12955 = mul nsw i32 26, %12954
  %12956 = add nsw i32 %12953, %12955
  %12957 = sext i32 %12956 to i64
  %12958 = getelementptr inbounds double, ptr %12952, i64 %12957
  %12959 = load double, ptr %12958, align 8, !tbaa !11
  %12960 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %12959, double %12951)
  %12961 = load ptr, ptr %7, align 8, !tbaa !9
  %12962 = load i32, ptr %12, align 4, !tbaa !5
  %12963 = load i32, ptr %8, align 4, !tbaa !5
  %12964 = mul nsw i32 27, %12963
  %12965 = add nsw i32 %12962, %12964
  %12966 = sext i32 %12965 to i64
  %12967 = getelementptr inbounds double, ptr %12961, i64 %12966
  %12968 = load double, ptr %12967, align 8, !tbaa !11
  %12969 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %12968, double %12960)
  %12970 = load ptr, ptr %7, align 8, !tbaa !9
  %12971 = load i32, ptr %12, align 4, !tbaa !5
  %12972 = load i32, ptr %8, align 4, !tbaa !5
  %12973 = mul nsw i32 28, %12972
  %12974 = add nsw i32 %12971, %12973
  %12975 = sext i32 %12974 to i64
  %12976 = getelementptr inbounds double, ptr %12970, i64 %12975
  %12977 = load double, ptr %12976, align 8, !tbaa !11
  %12978 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %12977, double %12969)
  %12979 = load ptr, ptr %7, align 8, !tbaa !9
  %12980 = load i32, ptr %12, align 4, !tbaa !5
  %12981 = load i32, ptr %8, align 4, !tbaa !5
  %12982 = mul nsw i32 29, %12981
  %12983 = add nsw i32 %12980, %12982
  %12984 = sext i32 %12983 to i64
  %12985 = getelementptr inbounds double, ptr %12979, i64 %12984
  %12986 = load double, ptr %12985, align 8, !tbaa !11
  %12987 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %12986, double %12978)
  %12988 = load ptr, ptr %7, align 8, !tbaa !9
  %12989 = load i32, ptr %12, align 4, !tbaa !5
  %12990 = load i32, ptr %8, align 4, !tbaa !5
  %12991 = mul nsw i32 31, %12990
  %12992 = add nsw i32 %12989, %12991
  %12993 = sext i32 %12992 to i64
  %12994 = getelementptr inbounds double, ptr %12988, i64 %12993
  %12995 = load double, ptr %12994, align 8, !tbaa !11
  %12996 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %12995, double %12987)
  %12997 = load ptr, ptr %7, align 8, !tbaa !9
  %12998 = load i32, ptr %12, align 4, !tbaa !5
  %12999 = load i32, ptr %8, align 4, !tbaa !5
  %13000 = mul nsw i32 32, %12999
  %13001 = add nsw i32 %12998, %13000
  %13002 = sext i32 %13001 to i64
  %13003 = getelementptr inbounds double, ptr %12997, i64 %13002
  %13004 = load double, ptr %13003, align 8, !tbaa !11
  %13005 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %13004, double %12996)
  %13006 = load ptr, ptr %7, align 8, !tbaa !9
  %13007 = load i32, ptr %12, align 4, !tbaa !5
  %13008 = load i32, ptr %8, align 4, !tbaa !5
  %13009 = mul nsw i32 33, %13008
  %13010 = add nsw i32 %13007, %13009
  %13011 = sext i32 %13010 to i64
  %13012 = getelementptr inbounds double, ptr %13006, i64 %13011
  %13013 = load double, ptr %13012, align 8, !tbaa !11
  %13014 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %13013, double %13005)
  %13015 = load ptr, ptr %7, align 8, !tbaa !9
  %13016 = load i32, ptr %12, align 4, !tbaa !5
  %13017 = load i32, ptr %8, align 4, !tbaa !5
  %13018 = mul nsw i32 34, %13017
  %13019 = add nsw i32 %13016, %13018
  %13020 = sext i32 %13019 to i64
  %13021 = getelementptr inbounds double, ptr %13015, i64 %13020
  %13022 = load double, ptr %13021, align 8, !tbaa !11
  %13023 = call double @llvm.fmuladd.f64(double 0xBC9A000000000000, double %13022, double %13014)
  %13024 = load ptr, ptr %7, align 8, !tbaa !9
  %13025 = load i32, ptr %12, align 4, !tbaa !5
  %13026 = load i32, ptr %8, align 4, !tbaa !5
  %13027 = mul nsw i32 35, %13026
  %13028 = add nsw i32 %13025, %13027
  %13029 = sext i32 %13028 to i64
  %13030 = getelementptr inbounds double, ptr %13024, i64 %13029
  %13031 = load double, ptr %13030, align 8, !tbaa !11
  %13032 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %13031, double %13023)
  %13033 = load ptr, ptr %7, align 8, !tbaa !9
  %13034 = load i32, ptr %12, align 4, !tbaa !5
  %13035 = load i32, ptr %8, align 4, !tbaa !5
  %13036 = mul nsw i32 52, %13035
  %13037 = add nsw i32 %13034, %13036
  %13038 = sext i32 %13037 to i64
  %13039 = getelementptr inbounds double, ptr %13033, i64 %13038
  %13040 = load double, ptr %13039, align 8, !tbaa !11
  %13041 = call double @llvm.fmuladd.f64(double 0xBF9102DA00B18A5A, double %13040, double %13032)
  %13042 = load ptr, ptr %7, align 8, !tbaa !9
  %13043 = load i32, ptr %12, align 4, !tbaa !5
  %13044 = load i32, ptr %8, align 4, !tbaa !5
  %13045 = mul nsw i32 53, %13044
  %13046 = add nsw i32 %13043, %13045
  %13047 = sext i32 %13046 to i64
  %13048 = getelementptr inbounds double, ptr %13042, i64 %13047
  %13049 = load double, ptr %13048, align 8, !tbaa !11
  %13050 = call double @llvm.fmuladd.f64(double 0x3FCD5953692F6EA6, double %13049, double %13041)
  %13051 = load ptr, ptr %7, align 8, !tbaa !9
  %13052 = load i32, ptr %12, align 4, !tbaa !5
  %13053 = load i32, ptr %8, align 4, !tbaa !5
  %13054 = mul nsw i32 54, %13053
  %13055 = add nsw i32 %13052, %13054
  %13056 = sext i32 %13055 to i64
  %13057 = getelementptr inbounds double, ptr %13051, i64 %13056
  %13058 = load double, ptr %13057, align 8, !tbaa !11
  %13059 = call double @llvm.fmuladd.f64(double 0x3FE3C4545BCF030B, double %13058, double %13050)
  %13060 = load ptr, ptr %7, align 8, !tbaa !9
  %13061 = load i32, ptr %12, align 4, !tbaa !5
  %13062 = load i32, ptr %8, align 4, !tbaa !5
  %13063 = mul nsw i32 55, %13062
  %13064 = add nsw i32 %13061, %13063
  %13065 = sext i32 %13064 to i64
  %13066 = getelementptr inbounds double, ptr %13060, i64 %13065
  %13067 = load double, ptr %13066, align 8, !tbaa !11
  %13068 = call double @llvm.fmuladd.f64(double 0x3FD6A4D32EB1F70D, double %13067, double %13059)
  %13069 = load ptr, ptr %7, align 8, !tbaa !9
  %13070 = load i32, ptr %12, align 4, !tbaa !5
  %13071 = load i32, ptr %8, align 4, !tbaa !5
  %13072 = mul nsw i32 56, %13071
  %13073 = add nsw i32 %13070, %13072
  %13074 = sext i32 %13073 to i64
  %13075 = getelementptr inbounds double, ptr %13069, i64 %13074
  %13076 = load double, ptr %13075, align 8, !tbaa !11
  %13077 = call double @llvm.fmuladd.f64(double 0x3C6F1CD9CCEEF238, double %13076, double %13068)
  %13078 = load ptr, ptr %7, align 8, !tbaa !9
  %13079 = load i32, ptr %12, align 4, !tbaa !5
  %13080 = load i32, ptr %8, align 4, !tbaa !5
  %13081 = mul nsw i32 57, %13080
  %13082 = add nsw i32 %13079, %13081
  %13083 = sext i32 %13082 to i64
  %13084 = getelementptr inbounds double, ptr %13078, i64 %13083
  %13085 = load double, ptr %13084, align 8, !tbaa !11
  %13086 = call double @llvm.fmuladd.f64(double 0x3C9ADEBC19B71702, double %13085, double %13077)
  %13087 = load ptr, ptr %7, align 8, !tbaa !9
  %13088 = load i32, ptr %12, align 4, !tbaa !5
  %13089 = load i32, ptr %8, align 4, !tbaa !5
  %13090 = mul nsw i32 58, %13089
  %13091 = add nsw i32 %13088, %13090
  %13092 = sext i32 %13091 to i64
  %13093 = getelementptr inbounds double, ptr %13087, i64 %13092
  %13094 = load double, ptr %13093, align 8, !tbaa !11
  %13095 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %13094, double %13086)
  %13096 = load ptr, ptr %7, align 8, !tbaa !9
  %13097 = load i32, ptr %12, align 4, !tbaa !5
  %13098 = load i32, ptr %8, align 4, !tbaa !5
  %13099 = mul nsw i32 60, %13098
  %13100 = add nsw i32 %13097, %13099
  %13101 = sext i32 %13100 to i64
  %13102 = getelementptr inbounds double, ptr %13096, i64 %13101
  %13103 = load double, ptr %13102, align 8, !tbaa !11
  %13104 = call double @llvm.fmuladd.f64(double 0xBC94DC12067D4B20, double %13103, double %13095)
  %13105 = load ptr, ptr %7, align 8, !tbaa !9
  %13106 = load i32, ptr %12, align 4, !tbaa !5
  %13107 = load i32, ptr %8, align 4, !tbaa !5
  %13108 = mul nsw i32 61, %13107
  %13109 = add nsw i32 %13106, %13108
  %13110 = sext i32 %13109 to i64
  %13111 = getelementptr inbounds double, ptr %13105, i64 %13110
  %13112 = load double, ptr %13111, align 8, !tbaa !11
  %13113 = call double @llvm.fmuladd.f64(double 0xBC9536948017480F, double %13112, double %13104)
  %13114 = load ptr, ptr %7, align 8, !tbaa !9
  %13115 = load i32, ptr %12, align 4, !tbaa !5
  %13116 = load i32, ptr %8, align 4, !tbaa !5
  %13117 = mul nsw i32 62, %13116
  %13118 = add nsw i32 %13115, %13117
  %13119 = sext i32 %13118 to i64
  %13120 = getelementptr inbounds double, ptr %13114, i64 %13119
  %13121 = load double, ptr %13120, align 8, !tbaa !11
  %13122 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %13121, double %13113)
  %13123 = load ptr, ptr %7, align 8, !tbaa !9
  %13124 = load i32, ptr %12, align 4, !tbaa !5
  %13125 = load i32, ptr %8, align 4, !tbaa !5
  %13126 = mul nsw i32 63, %13125
  %13127 = add nsw i32 %13124, %13126
  %13128 = sext i32 %13127 to i64
  %13129 = getelementptr inbounds double, ptr %13123, i64 %13128
  %13130 = load double, ptr %13129, align 8, !tbaa !11
  %13131 = call double @llvm.fmuladd.f64(double 0x3C96A09E667F3BCC, double %13130, double %13122)
  %13132 = load ptr, ptr %7, align 8, !tbaa !9
  %13133 = load i32, ptr %12, align 4, !tbaa !5
  %13134 = load i32, ptr %8, align 4, !tbaa !5
  %13135 = mul nsw i32 64, %13134
  %13136 = add nsw i32 %13133, %13135
  %13137 = sext i32 %13136 to i64
  %13138 = getelementptr inbounds double, ptr %13132, i64 %13137
  %13139 = load double, ptr %13138, align 8, !tbaa !11
  %13140 = call double @llvm.fmuladd.f64(double 0x3C53CC8A99AF5452, double %13139, double %13131)
  %13141 = load ptr, ptr %7, align 8, !tbaa !9
  %13142 = load i32, ptr %12, align 4, !tbaa !5
  %13143 = load i32, ptr %8, align 4, !tbaa !5
  %13144 = mul nsw i32 65, %13143
  %13145 = add nsw i32 %13142, %13144
  %13146 = sext i32 %13145 to i64
  %13147 = getelementptr inbounds double, ptr %13141, i64 %13146
  %13148 = load double, ptr %13147, align 8, !tbaa !11
  %13149 = call double @llvm.fmuladd.f64(double 0x3C8536948017480E, double %13148, double %13140)
  %13150 = load ptr, ptr %7, align 8, !tbaa !9
  %13151 = load i32, ptr %12, align 4, !tbaa !5
  %13152 = load i32, ptr %8, align 4, !tbaa !5
  %13153 = mul nsw i32 66, %13152
  %13154 = add nsw i32 %13151, %13153
  %13155 = sext i32 %13154 to i64
  %13156 = getelementptr inbounds double, ptr %13150, i64 %13155
  %13157 = load double, ptr %13156, align 8, !tbaa !11
  %13158 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %13157, double %13149)
  %13159 = load ptr, ptr %7, align 8, !tbaa !9
  %13160 = load i32, ptr %12, align 4, !tbaa !5
  %13161 = load i32, ptr %8, align 4, !tbaa !5
  %13162 = mul nsw i32 67, %13161
  %13163 = add nsw i32 %13160, %13162
  %13164 = sext i32 %13163 to i64
  %13165 = getelementptr inbounds double, ptr %13159, i64 %13164
  %13166 = load double, ptr %13165, align 8, !tbaa !11
  %13167 = call double @llvm.fmuladd.f64(double 0x3C93CC8A99AF5452, double %13166, double %13158)
  store double %13167, ptr %11, align 8, !tbaa !11
  %13168 = load double, ptr %11, align 8, !tbaa !11
  %13169 = load ptr, ptr %9, align 8, !tbaa !9
  %13170 = load i32, ptr %12, align 4, !tbaa !5
  %13171 = load i32, ptr %10, align 4, !tbaa !5
  %13172 = mul nsw i32 45, %13171
  %13173 = add nsw i32 %13170, %13172
  %13174 = sext i32 %13173 to i64
  %13175 = getelementptr inbounds double, ptr %13169, i64 %13174
  store double %13168, ptr %13175, align 8, !tbaa !11
  %13176 = load ptr, ptr %7, align 8, !tbaa !9
  %13177 = load i32, ptr %12, align 4, !tbaa !5
  %13178 = load i32, ptr %8, align 4, !tbaa !5
  %13179 = mul nsw i32 20, %13178
  %13180 = add nsw i32 %13177, %13179
  %13181 = sext i32 %13180 to i64
  %13182 = getelementptr inbounds double, ptr %13176, i64 %13181
  %13183 = load double, ptr %13182, align 8, !tbaa !11
  %13184 = load ptr, ptr %7, align 8, !tbaa !9
  %13185 = load i32, ptr %12, align 4, !tbaa !5
  %13186 = load i32, ptr %8, align 4, !tbaa !5
  %13187 = mul nsw i32 21, %13186
  %13188 = add nsw i32 %13185, %13187
  %13189 = sext i32 %13188 to i64
  %13190 = getelementptr inbounds double, ptr %13184, i64 %13189
  %13191 = load double, ptr %13190, align 8, !tbaa !11
  %13192 = fmul double 0xC01043858A1F5993, %13191
  %13193 = call double @llvm.fmuladd.f64(double 0xBFD767140476511D, double %13183, double %13192)
  %13194 = load ptr, ptr %7, align 8, !tbaa !9
  %13195 = load i32, ptr %12, align 4, !tbaa !5
  %13196 = load i32, ptr %8, align 4, !tbaa !5
  %13197 = mul nsw i32 22, %13196
  %13198 = add nsw i32 %13195, %13197
  %13199 = sext i32 %13198 to i64
  %13200 = getelementptr inbounds double, ptr %13194, i64 %13199
  %13201 = load double, ptr %13200, align 8, !tbaa !11
  %13202 = call double @llvm.fmuladd.f64(double 0xBFD7BAC3393ADDD9, double %13201, double %13193)
  %13203 = load ptr, ptr %7, align 8, !tbaa !9
  %13204 = load i32, ptr %12, align 4, !tbaa !5
  %13205 = load i32, ptr %8, align 4, !tbaa !5
  %13206 = mul nsw i32 23, %13205
  %13207 = add nsw i32 %13204, %13206
  %13208 = sext i32 %13207 to i64
  %13209 = getelementptr inbounds double, ptr %13203, i64 %13208
  %13210 = load double, ptr %13209, align 8, !tbaa !11
  %13211 = call double @llvm.fmuladd.f64(double 0x3FC1964E14FA3C62, double %13210, double %13202)
  %13212 = load ptr, ptr %7, align 8, !tbaa !9
  %13213 = load i32, ptr %12, align 4, !tbaa !5
  %13214 = load i32, ptr %8, align 4, !tbaa !5
  %13215 = mul nsw i32 25, %13214
  %13216 = add nsw i32 %13213, %13215
  %13217 = sext i32 %13216 to i64
  %13218 = getelementptr inbounds double, ptr %13212, i64 %13217
  %13219 = load double, ptr %13218, align 8, !tbaa !11
  %13220 = call double @llvm.fmuladd.f64(double 0xBCD3A00000000001, double %13219, double %13211)
  %13221 = load ptr, ptr %7, align 8, !tbaa !9
  %13222 = load i32, ptr %12, align 4, !tbaa !5
  %13223 = load i32, ptr %8, align 4, !tbaa !5
  %13224 = mul nsw i32 26, %13223
  %13225 = add nsw i32 %13222, %13224
  %13226 = sext i32 %13225 to i64
  %13227 = getelementptr inbounds double, ptr %13221, i64 %13226
  %13228 = load double, ptr %13227, align 8, !tbaa !11
  %13229 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %13228, double %13220)
  %13230 = load ptr, ptr %7, align 8, !tbaa !9
  %13231 = load i32, ptr %12, align 4, !tbaa !5
  %13232 = load i32, ptr %8, align 4, !tbaa !5
  %13233 = mul nsw i32 27, %13232
  %13234 = add nsw i32 %13231, %13233
  %13235 = sext i32 %13234 to i64
  %13236 = getelementptr inbounds double, ptr %13230, i64 %13235
  %13237 = load double, ptr %13236, align 8, !tbaa !11
  %13238 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %13237, double %13229)
  %13239 = load ptr, ptr %7, align 8, !tbaa !9
  %13240 = load i32, ptr %12, align 4, !tbaa !5
  %13241 = load i32, ptr %8, align 4, !tbaa !5
  %13242 = mul nsw i32 29, %13241
  %13243 = add nsw i32 %13240, %13242
  %13244 = sext i32 %13243 to i64
  %13245 = getelementptr inbounds double, ptr %13239, i64 %13244
  %13246 = load double, ptr %13245, align 8, !tbaa !11
  %13247 = call double @llvm.fmuladd.f64(double 0xBCC8C00000000000, double %13246, double %13238)
  %13248 = load ptr, ptr %7, align 8, !tbaa !9
  %13249 = load i32, ptr %12, align 4, !tbaa !5
  %13250 = load i32, ptr %8, align 4, !tbaa !5
  %13251 = mul nsw i32 30, %13250
  %13252 = add nsw i32 %13249, %13251
  %13253 = sext i32 %13252 to i64
  %13254 = getelementptr inbounds double, ptr %13248, i64 %13253
  %13255 = load double, ptr %13254, align 8, !tbaa !11
  %13256 = call double @llvm.fmuladd.f64(double 0xBC96000000000000, double %13255, double %13247)
  %13257 = load ptr, ptr %7, align 8, !tbaa !9
  %13258 = load i32, ptr %12, align 4, !tbaa !5
  %13259 = load i32, ptr %8, align 4, !tbaa !5
  %13260 = mul nsw i32 31, %13259
  %13261 = add nsw i32 %13258, %13260
  %13262 = sext i32 %13261 to i64
  %13263 = getelementptr inbounds double, ptr %13257, i64 %13262
  %13264 = load double, ptr %13263, align 8, !tbaa !11
  %13265 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %13264, double %13256)
  %13266 = load ptr, ptr %7, align 8, !tbaa !9
  %13267 = load i32, ptr %12, align 4, !tbaa !5
  %13268 = load i32, ptr %8, align 4, !tbaa !5
  %13269 = mul nsw i32 32, %13268
  %13270 = add nsw i32 %13267, %13269
  %13271 = sext i32 %13270 to i64
  %13272 = getelementptr inbounds double, ptr %13266, i64 %13271
  %13273 = load double, ptr %13272, align 8, !tbaa !11
  %13274 = call double @llvm.fmuladd.f64(double 0xBC9A000000000000, double %13273, double %13265)
  %13275 = load ptr, ptr %7, align 8, !tbaa !9
  %13276 = load i32, ptr %12, align 4, !tbaa !5
  %13277 = load i32, ptr %8, align 4, !tbaa !5
  %13278 = mul nsw i32 33, %13277
  %13279 = add nsw i32 %13276, %13278
  %13280 = sext i32 %13279 to i64
  %13281 = getelementptr inbounds double, ptr %13275, i64 %13280
  %13282 = load double, ptr %13281, align 8, !tbaa !11
  %13283 = call double @llvm.fmuladd.f64(double 0xBCC4400000000000, double %13282, double %13274)
  %13284 = load ptr, ptr %7, align 8, !tbaa !9
  %13285 = load i32, ptr %12, align 4, !tbaa !5
  %13286 = load i32, ptr %8, align 4, !tbaa !5
  %13287 = mul nsw i32 34, %13286
  %13288 = add nsw i32 %13285, %13287
  %13289 = sext i32 %13288 to i64
  %13290 = getelementptr inbounds double, ptr %13284, i64 %13289
  %13291 = load double, ptr %13290, align 8, !tbaa !11
  %13292 = call double @llvm.fmuladd.f64(double 0xBCA1000000000001, double %13291, double %13283)
  %13293 = load ptr, ptr %7, align 8, !tbaa !9
  %13294 = load i32, ptr %12, align 4, !tbaa !5
  %13295 = load i32, ptr %8, align 4, !tbaa !5
  %13296 = mul nsw i32 35, %13295
  %13297 = add nsw i32 %13294, %13296
  %13298 = sext i32 %13297 to i64
  %13299 = getelementptr inbounds double, ptr %13293, i64 %13298
  %13300 = load double, ptr %13299, align 8, !tbaa !11
  %13301 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %13300, double %13292)
  %13302 = load ptr, ptr %7, align 8, !tbaa !9
  %13303 = load i32, ptr %12, align 4, !tbaa !5
  %13304 = load i32, ptr %8, align 4, !tbaa !5
  %13305 = mul nsw i32 52, %13304
  %13306 = add nsw i32 %13303, %13305
  %13307 = sext i32 %13306 to i64
  %13308 = getelementptr inbounds double, ptr %13302, i64 %13307
  %13309 = load double, ptr %13308, align 8, !tbaa !11
  %13310 = call double @llvm.fmuladd.f64(double 0x3FD6A4D32EB1F718, double %13309, double %13301)
  %13311 = load ptr, ptr %7, align 8, !tbaa !9
  %13312 = load i32, ptr %12, align 4, !tbaa !5
  %13313 = load i32, ptr %8, align 4, !tbaa !5
  %13314 = mul nsw i32 53, %13313
  %13315 = add nsw i32 %13312, %13314
  %13316 = sext i32 %13315 to i64
  %13317 = getelementptr inbounds double, ptr %13311, i64 %13316
  %13318 = load double, ptr %13317, align 8, !tbaa !11
  %13319 = call double @llvm.fmuladd.f64(double 0x3FE3C4545BCF030B, double %13318, double %13310)
  %13320 = load ptr, ptr %7, align 8, !tbaa !9
  %13321 = load i32, ptr %12, align 4, !tbaa !5
  %13322 = load i32, ptr %8, align 4, !tbaa !5
  %13323 = mul nsw i32 54, %13322
  %13324 = add nsw i32 %13321, %13323
  %13325 = sext i32 %13324 to i64
  %13326 = getelementptr inbounds double, ptr %13320, i64 %13325
  %13327 = load double, ptr %13326, align 8, !tbaa !11
  %13328 = call double @llvm.fmuladd.f64(double 0x3FCD5953692F6EA3, double %13327, double %13319)
  %13329 = load ptr, ptr %7, align 8, !tbaa !9
  %13330 = load i32, ptr %12, align 4, !tbaa !5
  %13331 = load i32, ptr %8, align 4, !tbaa !5
  %13332 = mul nsw i32 55, %13331
  %13333 = add nsw i32 %13330, %13332
  %13334 = sext i32 %13333 to i64
  %13335 = getelementptr inbounds double, ptr %13329, i64 %13334
  %13336 = load double, ptr %13335, align 8, !tbaa !11
  %13337 = call double @llvm.fmuladd.f64(double 0xBF9102DA00B18A2C, double %13336, double %13328)
  %13338 = load ptr, ptr %7, align 8, !tbaa !9
  %13339 = load i32, ptr %12, align 4, !tbaa !5
  %13340 = load i32, ptr %8, align 4, !tbaa !5
  %13341 = mul nsw i32 56, %13340
  %13342 = add nsw i32 %13339, %13341
  %13343 = sext i32 %13342 to i64
  %13344 = getelementptr inbounds double, ptr %13338, i64 %13343
  %13345 = load double, ptr %13344, align 8, !tbaa !11
  %13346 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %13345, double %13337)
  %13347 = load ptr, ptr %7, align 8, !tbaa !9
  %13348 = load i32, ptr %12, align 4, !tbaa !5
  %13349 = load i32, ptr %8, align 4, !tbaa !5
  %13350 = mul nsw i32 57, %13349
  %13351 = add nsw i32 %13348, %13350
  %13352 = sext i32 %13351 to i64
  %13353 = getelementptr inbounds double, ptr %13347, i64 %13352
  %13354 = load double, ptr %13353, align 8, !tbaa !11
  %13355 = call double @llvm.fmuladd.f64(double 0x3CB344C6E34858EB, double %13354, double %13346)
  %13356 = load ptr, ptr %7, align 8, !tbaa !9
  %13357 = load i32, ptr %12, align 4, !tbaa !5
  %13358 = load i32, ptr %8, align 4, !tbaa !5
  %13359 = mul nsw i32 58, %13358
  %13360 = add nsw i32 %13357, %13359
  %13361 = sext i32 %13360 to i64
  %13362 = getelementptr inbounds double, ptr %13356, i64 %13361
  %13363 = load double, ptr %13362, align 8, !tbaa !11
  %13364 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %13363, double %13355)
  %13365 = load ptr, ptr %7, align 8, !tbaa !9
  %13366 = load i32, ptr %12, align 4, !tbaa !5
  %13367 = load i32, ptr %8, align 4, !tbaa !5
  %13368 = mul nsw i32 59, %13367
  %13369 = add nsw i32 %13366, %13368
  %13370 = sext i32 %13369 to i64
  %13371 = getelementptr inbounds double, ptr %13365, i64 %13370
  %13372 = load double, ptr %13371, align 8, !tbaa !11
  %13373 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %13372, double %13364)
  %13374 = load ptr, ptr %7, align 8, !tbaa !9
  %13375 = load i32, ptr %12, align 4, !tbaa !5
  %13376 = load i32, ptr %8, align 4, !tbaa !5
  %13377 = mul nsw i32 60, %13376
  %13378 = add nsw i32 %13375, %13377
  %13379 = sext i32 %13378 to i64
  %13380 = getelementptr inbounds double, ptr %13374, i64 %13379
  %13381 = load double, ptr %13380, align 8, !tbaa !11
  %13382 = call double @llvm.fmuladd.f64(double 0xBC9C48C6001F0ABF, double %13381, double %13373)
  %13383 = load ptr, ptr %7, align 8, !tbaa !9
  %13384 = load i32, ptr %12, align 4, !tbaa !5
  %13385 = load i32, ptr %8, align 4, !tbaa !5
  %13386 = mul nsw i32 61, %13385
  %13387 = add nsw i32 %13384, %13386
  %13388 = sext i32 %13387 to i64
  %13389 = getelementptr inbounds double, ptr %13383, i64 %13388
  %13390 = load double, ptr %13389, align 8, !tbaa !11
  %13391 = call double @llvm.fmuladd.f64(double 0xBC9FD1DEC022EC15, double %13390, double %13382)
  %13392 = load ptr, ptr %7, align 8, !tbaa !9
  %13393 = load i32, ptr %12, align 4, !tbaa !5
  %13394 = load i32, ptr %8, align 4, !tbaa !5
  %13395 = mul nsw i32 62, %13394
  %13396 = add nsw i32 %13393, %13395
  %13397 = sext i32 %13396 to i64
  %13398 = getelementptr inbounds double, ptr %13392, i64 %13397
  %13399 = load double, ptr %13398, align 8, !tbaa !11
  %13400 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %13399, double %13391)
  %13401 = load ptr, ptr %7, align 8, !tbaa !9
  %13402 = load i32, ptr %12, align 4, !tbaa !5
  %13403 = load i32, ptr %8, align 4, !tbaa !5
  %13404 = mul nsw i32 63, %13403
  %13405 = add nsw i32 %13402, %13404
  %13406 = sext i32 %13405 to i64
  %13407 = getelementptr inbounds double, ptr %13401, i64 %13406
  %13408 = load double, ptr %13407, align 8, !tbaa !11
  %13409 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %13408, double %13400)
  %13410 = load ptr, ptr %7, align 8, !tbaa !9
  %13411 = load i32, ptr %12, align 4, !tbaa !5
  %13412 = load i32, ptr %8, align 4, !tbaa !5
  %13413 = mul nsw i32 64, %13412
  %13414 = add nsw i32 %13411, %13413
  %13415 = sext i32 %13414 to i64
  %13416 = getelementptr inbounds double, ptr %13410, i64 %13415
  %13417 = load double, ptr %13416, align 8, !tbaa !11
  %13418 = call double @llvm.fmuladd.f64(double 0x3C86461BECE53EDC, double %13417, double %13409)
  %13419 = load ptr, ptr %7, align 8, !tbaa !9
  %13420 = load i32, ptr %12, align 4, !tbaa !5
  %13421 = load i32, ptr %8, align 4, !tbaa !5
  %13422 = mul nsw i32 65, %13421
  %13423 = add nsw i32 %13420, %13422
  %13424 = sext i32 %13423 to i64
  %13425 = getelementptr inbounds double, ptr %13419, i64 %13424
  %13426 = load double, ptr %13425, align 8, !tbaa !11
  %13427 = call double @llvm.fmuladd.f64(double 0x3CA196DB21ACE77D, double %13426, double %13418)
  %13428 = load ptr, ptr %7, align 8, !tbaa !9
  %13429 = load i32, ptr %12, align 4, !tbaa !5
  %13430 = load i32, ptr %8, align 4, !tbaa !5
  %13431 = mul nsw i32 66, %13430
  %13432 = add nsw i32 %13429, %13431
  %13433 = sext i32 %13432 to i64
  %13434 = getelementptr inbounds double, ptr %13428, i64 %13433
  %13435 = load double, ptr %13434, align 8, !tbaa !11
  %13436 = call double @llvm.fmuladd.f64(double 0x3C9ADEBC19B71702, double %13435, double %13427)
  store double %13436, ptr %11, align 8, !tbaa !11
  %13437 = load double, ptr %11, align 8, !tbaa !11
  %13438 = load ptr, ptr %9, align 8, !tbaa !9
  %13439 = load i32, ptr %12, align 4, !tbaa !5
  %13440 = load i32, ptr %10, align 4, !tbaa !5
  %13441 = mul nsw i32 46, %13440
  %13442 = add nsw i32 %13439, %13441
  %13443 = sext i32 %13442 to i64
  %13444 = getelementptr inbounds double, ptr %13438, i64 %13443
  store double %13437, ptr %13444, align 8, !tbaa !11
  %13445 = load ptr, ptr %7, align 8, !tbaa !9
  %13446 = load i32, ptr %12, align 4, !tbaa !5
  %13447 = load i32, ptr %8, align 4, !tbaa !5
  %13448 = mul nsw i32 20, %13447
  %13449 = add nsw i32 %13446, %13448
  %13450 = sext i32 %13449 to i64
  %13451 = getelementptr inbounds double, ptr %13445, i64 %13450
  %13452 = load double, ptr %13451, align 8, !tbaa !11
  %13453 = load ptr, ptr %7, align 8, !tbaa !9
  %13454 = load i32, ptr %12, align 4, !tbaa !5
  %13455 = load i32, ptr %8, align 4, !tbaa !5
  %13456 = mul nsw i32 21, %13455
  %13457 = add nsw i32 %13454, %13456
  %13458 = sext i32 %13457 to i64
  %13459 = getelementptr inbounds double, ptr %13453, i64 %13458
  %13460 = load double, ptr %13459, align 8, !tbaa !11
  %13461 = fmul double 0xBFD7BAC3393ADDC0, %13460
  %13462 = call double @llvm.fmuladd.f64(double 0x3FC1964E14FA3C4C, double %13452, double %13461)
  %13463 = load ptr, ptr %7, align 8, !tbaa !9
  %13464 = load i32, ptr %12, align 4, !tbaa !5
  %13465 = load i32, ptr %8, align 4, !tbaa !5
  %13466 = mul nsw i32 22, %13465
  %13467 = add nsw i32 %13464, %13466
  %13468 = sext i32 %13467 to i64
  %13469 = getelementptr inbounds double, ptr %13463, i64 %13468
  %13470 = load double, ptr %13469, align 8, !tbaa !11
  %13471 = call double @llvm.fmuladd.f64(double 0xC01043858A1F5994, double %13470, double %13462)
  %13472 = load ptr, ptr %7, align 8, !tbaa !9
  %13473 = load i32, ptr %12, align 4, !tbaa !5
  %13474 = load i32, ptr %8, align 4, !tbaa !5
  %13475 = mul nsw i32 23, %13474
  %13476 = add nsw i32 %13473, %13475
  %13477 = sext i32 %13476 to i64
  %13478 = getelementptr inbounds double, ptr %13472, i64 %13477
  %13479 = load double, ptr %13478, align 8, !tbaa !11
  %13480 = call double @llvm.fmuladd.f64(double 0xBFD7671404765136, double %13479, double %13471)
  %13481 = load ptr, ptr %7, align 8, !tbaa !9
  %13482 = load i32, ptr %12, align 4, !tbaa !5
  %13483 = load i32, ptr %8, align 4, !tbaa !5
  %13484 = mul nsw i32 24, %13483
  %13485 = add nsw i32 %13482, %13484
  %13486 = sext i32 %13485 to i64
  %13487 = getelementptr inbounds double, ptr %13481, i64 %13486
  %13488 = load double, ptr %13487, align 8, !tbaa !11
  %13489 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %13488, double %13480)
  %13490 = load ptr, ptr %7, align 8, !tbaa !9
  %13491 = load i32, ptr %12, align 4, !tbaa !5
  %13492 = load i32, ptr %8, align 4, !tbaa !5
  %13493 = mul nsw i32 26, %13492
  %13494 = add nsw i32 %13491, %13493
  %13495 = sext i32 %13494 to i64
  %13496 = getelementptr inbounds double, ptr %13490, i64 %13495
  %13497 = load double, ptr %13496, align 8, !tbaa !11
  %13498 = call double @llvm.fmuladd.f64(double 0xBCC0800000000000, double %13497, double %13489)
  %13499 = load ptr, ptr %7, align 8, !tbaa !9
  %13500 = load i32, ptr %12, align 4, !tbaa !5
  %13501 = load i32, ptr %8, align 4, !tbaa !5
  %13502 = mul nsw i32 27, %13501
  %13503 = add nsw i32 %13500, %13502
  %13504 = sext i32 %13503 to i64
  %13505 = getelementptr inbounds double, ptr %13499, i64 %13504
  %13506 = load double, ptr %13505, align 8, !tbaa !11
  %13507 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %13506, double %13498)
  %13508 = load ptr, ptr %7, align 8, !tbaa !9
  %13509 = load i32, ptr %12, align 4, !tbaa !5
  %13510 = load i32, ptr %8, align 4, !tbaa !5
  %13511 = mul nsw i32 28, %13510
  %13512 = add nsw i32 %13509, %13511
  %13513 = sext i32 %13512 to i64
  %13514 = getelementptr inbounds double, ptr %13508, i64 %13513
  %13515 = load double, ptr %13514, align 8, !tbaa !11
  %13516 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %13515, double %13507)
  %13517 = load ptr, ptr %7, align 8, !tbaa !9
  %13518 = load i32, ptr %12, align 4, !tbaa !5
  %13519 = load i32, ptr %8, align 4, !tbaa !5
  %13520 = mul nsw i32 29, %13519
  %13521 = add nsw i32 %13518, %13520
  %13522 = sext i32 %13521 to i64
  %13523 = getelementptr inbounds double, ptr %13517, i64 %13522
  %13524 = load double, ptr %13523, align 8, !tbaa !11
  %13525 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %13524, double %13516)
  %13526 = load ptr, ptr %7, align 8, !tbaa !9
  %13527 = load i32, ptr %12, align 4, !tbaa !5
  %13528 = load i32, ptr %8, align 4, !tbaa !5
  %13529 = mul nsw i32 30, %13528
  %13530 = add nsw i32 %13527, %13529
  %13531 = sext i32 %13530 to i64
  %13532 = getelementptr inbounds double, ptr %13526, i64 %13531
  %13533 = load double, ptr %13532, align 8, !tbaa !11
  %13534 = call double @llvm.fmuladd.f64(double 0xBCBF000000000001, double %13533, double %13525)
  %13535 = load ptr, ptr %7, align 8, !tbaa !9
  %13536 = load i32, ptr %12, align 4, !tbaa !5
  %13537 = load i32, ptr %8, align 4, !tbaa !5
  %13538 = mul nsw i32 31, %13537
  %13539 = add nsw i32 %13536, %13538
  %13540 = sext i32 %13539 to i64
  %13541 = getelementptr inbounds double, ptr %13535, i64 %13540
  %13542 = load double, ptr %13541, align 8, !tbaa !11
  %13543 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %13542, double %13534)
  %13544 = load ptr, ptr %7, align 8, !tbaa !9
  %13545 = load i32, ptr %12, align 4, !tbaa !5
  %13546 = load i32, ptr %8, align 4, !tbaa !5
  %13547 = mul nsw i32 32, %13546
  %13548 = add nsw i32 %13545, %13547
  %13549 = sext i32 %13548 to i64
  %13550 = getelementptr inbounds double, ptr %13544, i64 %13549
  %13551 = load double, ptr %13550, align 8, !tbaa !11
  %13552 = call double @llvm.fmuladd.f64(double 0x3C82000000000000, double %13551, double %13543)
  %13553 = load ptr, ptr %7, align 8, !tbaa !9
  %13554 = load i32, ptr %12, align 4, !tbaa !5
  %13555 = load i32, ptr %8, align 4, !tbaa !5
  %13556 = mul nsw i32 33, %13555
  %13557 = add nsw i32 %13554, %13556
  %13558 = sext i32 %13557 to i64
  %13559 = getelementptr inbounds double, ptr %13553, i64 %13558
  %13560 = load double, ptr %13559, align 8, !tbaa !11
  %13561 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %13560, double %13552)
  %13562 = load ptr, ptr %7, align 8, !tbaa !9
  %13563 = load i32, ptr %12, align 4, !tbaa !5
  %13564 = load i32, ptr %8, align 4, !tbaa !5
  %13565 = mul nsw i32 34, %13564
  %13566 = add nsw i32 %13563, %13565
  %13567 = sext i32 %13566 to i64
  %13568 = getelementptr inbounds double, ptr %13562, i64 %13567
  %13569 = load double, ptr %13568, align 8, !tbaa !11
  %13570 = call double @llvm.fmuladd.f64(double 0xBCC5000000000000, double %13569, double %13561)
  %13571 = load ptr, ptr %7, align 8, !tbaa !9
  %13572 = load i32, ptr %12, align 4, !tbaa !5
  %13573 = load i32, ptr %8, align 4, !tbaa !5
  %13574 = mul nsw i32 35, %13573
  %13575 = add nsw i32 %13572, %13574
  %13576 = sext i32 %13575 to i64
  %13577 = getelementptr inbounds double, ptr %13571, i64 %13576
  %13578 = load double, ptr %13577, align 8, !tbaa !11
  %13579 = call double @llvm.fmuladd.f64(double 0xBCA0800000000001, double %13578, double %13570)
  %13580 = load ptr, ptr %7, align 8, !tbaa !9
  %13581 = load i32, ptr %12, align 4, !tbaa !5
  %13582 = load i32, ptr %8, align 4, !tbaa !5
  %13583 = mul nsw i32 52, %13582
  %13584 = add nsw i32 %13581, %13583
  %13585 = sext i32 %13584 to i64
  %13586 = getelementptr inbounds double, ptr %13580, i64 %13585
  %13587 = load double, ptr %13586, align 8, !tbaa !11
  %13588 = call double @llvm.fmuladd.f64(double 0xBFE7007BFD8FD859, double %13587, double %13579)
  %13589 = load ptr, ptr %7, align 8, !tbaa !9
  %13590 = load i32, ptr %12, align 4, !tbaa !5
  %13591 = load i32, ptr %8, align 4, !tbaa !5
  %13592 = mul nsw i32 53, %13591
  %13593 = add nsw i32 %13590, %13592
  %13594 = sext i32 %13593 to i64
  %13595 = getelementptr inbounds double, ptr %13589, i64 %13594
  %13596 = load double, ptr %13595, align 8, !tbaa !11
  %13597 = call double @llvm.fmuladd.f64(double 0xBFE66643AEED3706, double %13596, double %13588)
  %13598 = load ptr, ptr %7, align 8, !tbaa !9
  %13599 = load i32, ptr %12, align 4, !tbaa !5
  %13600 = load i32, ptr %8, align 4, !tbaa !5
  %13601 = mul nsw i32 54, %13600
  %13602 = add nsw i32 %13599, %13601
  %13603 = sext i32 %13602 to i64
  %13604 = getelementptr inbounds double, ptr %13598, i64 %13603
  %13605 = load double, ptr %13604, align 8, !tbaa !11
  %13606 = call double @llvm.fmuladd.f64(double 0x3FAD5B74B5F10E94, double %13605, double %13597)
  %13607 = load ptr, ptr %7, align 8, !tbaa !9
  %13608 = load i32, ptr %12, align 4, !tbaa !5
  %13609 = load i32, ptr %8, align 4, !tbaa !5
  %13610 = mul nsw i32 55, %13609
  %13611 = add nsw i32 %13608, %13610
  %13612 = sext i32 %13611 to i64
  %13613 = getelementptr inbounds double, ptr %13607, i64 %13612
  %13614 = load double, ptr %13613, align 8, !tbaa !11
  %13615 = call double @llvm.fmuladd.f64(double 0x3FA3F41B0E87BFBB, double %13614, double %13606)
  %13616 = load ptr, ptr %7, align 8, !tbaa !9
  %13617 = load i32, ptr %12, align 4, !tbaa !5
  %13618 = load i32, ptr %8, align 4, !tbaa !5
  %13619 = mul nsw i32 56, %13618
  %13620 = add nsw i32 %13617, %13619
  %13621 = sext i32 %13620 to i64
  %13622 = getelementptr inbounds double, ptr %13616, i64 %13621
  %13623 = load double, ptr %13622, align 8, !tbaa !11
  %13624 = call double @llvm.fmuladd.f64(double 0xBCA344C6E34858EB, double %13623, double %13615)
  %13625 = load ptr, ptr %7, align 8, !tbaa !9
  %13626 = load i32, ptr %12, align 4, !tbaa !5
  %13627 = load i32, ptr %8, align 4, !tbaa !5
  %13628 = mul nsw i32 57, %13627
  %13629 = add nsw i32 %13626, %13628
  %13630 = sext i32 %13629 to i64
  %13631 = getelementptr inbounds double, ptr %13625, i64 %13630
  %13632 = load double, ptr %13631, align 8, !tbaa !11
  %13633 = call double @llvm.fmuladd.f64(double 0x3C91AD7BC01366B7, double %13632, double %13624)
  %13634 = load ptr, ptr %7, align 8, !tbaa !9
  %13635 = load i32, ptr %12, align 4, !tbaa !5
  %13636 = load i32, ptr %8, align 4, !tbaa !5
  %13637 = mul nsw i32 58, %13636
  %13638 = add nsw i32 %13635, %13637
  %13639 = sext i32 %13638 to i64
  %13640 = getelementptr inbounds double, ptr %13634, i64 %13639
  %13641 = load double, ptr %13640, align 8, !tbaa !11
  %13642 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %13641, double %13633)
  %13643 = load ptr, ptr %7, align 8, !tbaa !9
  %13644 = load i32, ptr %12, align 4, !tbaa !5
  %13645 = load i32, ptr %8, align 4, !tbaa !5
  %13646 = mul nsw i32 59, %13645
  %13647 = add nsw i32 %13644, %13646
  %13648 = sext i32 %13647 to i64
  %13649 = getelementptr inbounds double, ptr %13643, i64 %13648
  %13650 = load double, ptr %13649, align 8, !tbaa !11
  %13651 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %13650, double %13642)
  %13652 = load ptr, ptr %7, align 8, !tbaa !9
  %13653 = load i32, ptr %12, align 4, !tbaa !5
  %13654 = load i32, ptr %8, align 4, !tbaa !5
  %13655 = mul nsw i32 60, %13654
  %13656 = add nsw i32 %13653, %13655
  %13657 = sext i32 %13656 to i64
  %13658 = getelementptr inbounds double, ptr %13652, i64 %13657
  %13659 = load double, ptr %13658, align 8, !tbaa !11
  %13660 = call double @llvm.fmuladd.f64(double 0x3CA344C6E34858EB, double %13659, double %13651)
  %13661 = load ptr, ptr %7, align 8, !tbaa !9
  %13662 = load i32, ptr %12, align 4, !tbaa !5
  %13663 = load i32, ptr %8, align 4, !tbaa !5
  %13664 = mul nsw i32 61, %13663
  %13665 = add nsw i32 %13662, %13664
  %13666 = sext i32 %13665 to i64
  %13667 = getelementptr inbounds double, ptr %13661, i64 %13666
  %13668 = load double, ptr %13667, align 8, !tbaa !11
  %13669 = call double @llvm.fmuladd.f64(double 0x3C73CC8A99AF5453, double %13668, double %13660)
  %13670 = load ptr, ptr %7, align 8, !tbaa !9
  %13671 = load i32, ptr %12, align 4, !tbaa !5
  %13672 = load i32, ptr %8, align 4, !tbaa !5
  %13673 = mul nsw i32 62, %13672
  %13674 = add nsw i32 %13671, %13673
  %13675 = sext i32 %13674 to i64
  %13676 = getelementptr inbounds double, ptr %13670, i64 %13675
  %13677 = load double, ptr %13676, align 8, !tbaa !11
  %13678 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %13677, double %13669)
  %13679 = load ptr, ptr %7, align 8, !tbaa !9
  %13680 = load i32, ptr %12, align 4, !tbaa !5
  %13681 = load i32, ptr %8, align 4, !tbaa !5
  %13682 = mul nsw i32 63, %13681
  %13683 = add nsw i32 %13680, %13682
  %13684 = sext i32 %13683 to i64
  %13685 = getelementptr inbounds double, ptr %13679, i64 %13684
  %13686 = load double, ptr %13685, align 8, !tbaa !11
  %13687 = call double @llvm.fmuladd.f64(double 0xBCA0F876CCDF6CD8, double %13686, double %13678)
  %13688 = load ptr, ptr %7, align 8, !tbaa !9
  %13689 = load i32, ptr %12, align 4, !tbaa !5
  %13690 = load i32, ptr %8, align 4, !tbaa !5
  %13691 = mul nsw i32 64, %13690
  %13692 = add nsw i32 %13689, %13691
  %13693 = sext i32 %13692 to i64
  %13694 = getelementptr inbounds double, ptr %13688, i64 %13693
  %13695 = load double, ptr %13694, align 8, !tbaa !11
  %13696 = call double @llvm.fmuladd.f64(double 0xBCA13C58A812EA8E, double %13695, double %13687)
  %13697 = load ptr, ptr %7, align 8, !tbaa !9
  %13698 = load i32, ptr %12, align 4, !tbaa !5
  %13699 = load i32, ptr %8, align 4, !tbaa !5
  %13700 = mul nsw i32 65, %13699
  %13701 = add nsw i32 %13698, %13700
  %13702 = sext i32 %13701 to i64
  %13703 = getelementptr inbounds double, ptr %13697, i64 %13702
  %13704 = load double, ptr %13703, align 8, !tbaa !11
  %13705 = call double @llvm.fmuladd.f64(double 0xBCA6023A11B1C128, double %13704, double %13696)
  %13706 = load ptr, ptr %7, align 8, !tbaa !9
  %13707 = load i32, ptr %12, align 4, !tbaa !5
  %13708 = load i32, ptr %8, align 4, !tbaa !5
  %13709 = mul nsw i32 66, %13708
  %13710 = add nsw i32 %13707, %13709
  %13711 = sext i32 %13710 to i64
  %13712 = getelementptr inbounds double, ptr %13706, i64 %13711
  %13713 = load double, ptr %13712, align 8, !tbaa !11
  %13714 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %13713, double %13705)
  store double %13714, ptr %11, align 8, !tbaa !11
  %13715 = load double, ptr %11, align 8, !tbaa !11
  %13716 = load ptr, ptr %9, align 8, !tbaa !9
  %13717 = load i32, ptr %12, align 4, !tbaa !5
  %13718 = load i32, ptr %10, align 4, !tbaa !5
  %13719 = mul nsw i32 47, %13718
  %13720 = add nsw i32 %13717, %13719
  %13721 = sext i32 %13720 to i64
  %13722 = getelementptr inbounds double, ptr %13716, i64 %13721
  store double %13715, ptr %13722, align 8, !tbaa !11
  %13723 = load ptr, ptr %7, align 8, !tbaa !9
  %13724 = load i32, ptr %12, align 4, !tbaa !5
  %13725 = load i32, ptr %8, align 4, !tbaa !5
  %13726 = mul nsw i32 20, %13725
  %13727 = add nsw i32 %13724, %13726
  %13728 = sext i32 %13727 to i64
  %13729 = getelementptr inbounds double, ptr %13723, i64 %13728
  %13730 = load double, ptr %13729, align 8, !tbaa !11
  %13731 = load ptr, ptr %7, align 8, !tbaa !9
  %13732 = load i32, ptr %12, align 4, !tbaa !5
  %13733 = load i32, ptr %8, align 4, !tbaa !5
  %13734 = mul nsw i32 21, %13733
  %13735 = add nsw i32 %13732, %13734
  %13736 = sext i32 %13735 to i64
  %13737 = getelementptr inbounds double, ptr %13731, i64 %13736
  %13738 = load double, ptr %13737, align 8, !tbaa !11
  %13739 = fmul double 0xBFEBF462FB348EF3, %13738
  %13740 = call double @llvm.fmuladd.f64(double 0xBFE002F9665DF3D7, double %13730, double %13739)
  %13741 = load ptr, ptr %7, align 8, !tbaa !9
  %13742 = load i32, ptr %12, align 4, !tbaa !5
  %13743 = load i32, ptr %8, align 4, !tbaa !5
  %13744 = mul nsw i32 22, %13743
  %13745 = add nsw i32 %13742, %13744
  %13746 = sext i32 %13745 to i64
  %13747 = getelementptr inbounds double, ptr %13741, i64 %13746
  %13748 = load double, ptr %13747, align 8, !tbaa !11
  %13749 = call double @llvm.fmuladd.f64(double 0xBFD4C0B9406BCBCD, double %13748, double %13740)
  %13750 = load ptr, ptr %7, align 8, !tbaa !9
  %13751 = load i32, ptr %12, align 4, !tbaa !5
  %13752 = load i32, ptr %8, align 4, !tbaa !5
  %13753 = mul nsw i32 23, %13752
  %13754 = add nsw i32 %13751, %13753
  %13755 = sext i32 %13754 to i64
  %13756 = getelementptr inbounds double, ptr %13750, i64 %13755
  %13757 = load double, ptr %13756, align 8, !tbaa !11
  %13758 = call double @llvm.fmuladd.f64(double 0x3F980EB0AE1D4727, double %13757, double %13749)
  %13759 = load ptr, ptr %7, align 8, !tbaa !9
  %13760 = load i32, ptr %12, align 4, !tbaa !5
  %13761 = load i32, ptr %8, align 4, !tbaa !5
  %13762 = mul nsw i32 24, %13761
  %13763 = add nsw i32 %13760, %13762
  %13764 = sext i32 %13763 to i64
  %13765 = getelementptr inbounds double, ptr %13759, i64 %13764
  %13766 = load double, ptr %13765, align 8, !tbaa !11
  %13767 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %13766, double %13758)
  %13768 = load ptr, ptr %7, align 8, !tbaa !9
  %13769 = load i32, ptr %12, align 4, !tbaa !5
  %13770 = load i32, ptr %8, align 4, !tbaa !5
  %13771 = mul nsw i32 25, %13770
  %13772 = add nsw i32 %13769, %13771
  %13773 = sext i32 %13772 to i64
  %13774 = getelementptr inbounds double, ptr %13768, i64 %13773
  %13775 = load double, ptr %13774, align 8, !tbaa !11
  %13776 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %13775, double %13767)
  %13777 = load ptr, ptr %7, align 8, !tbaa !9
  %13778 = load i32, ptr %12, align 4, !tbaa !5
  %13779 = load i32, ptr %8, align 4, !tbaa !5
  %13780 = mul nsw i32 26, %13779
  %13781 = add nsw i32 %13778, %13780
  %13782 = sext i32 %13781 to i64
  %13783 = getelementptr inbounds double, ptr %13777, i64 %13782
  %13784 = load double, ptr %13783, align 8, !tbaa !11
  %13785 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %13784, double %13776)
  %13786 = load ptr, ptr %7, align 8, !tbaa !9
  %13787 = load i32, ptr %12, align 4, !tbaa !5
  %13788 = load i32, ptr %8, align 4, !tbaa !5
  %13789 = mul nsw i32 27, %13788
  %13790 = add nsw i32 %13787, %13789
  %13791 = sext i32 %13790 to i64
  %13792 = getelementptr inbounds double, ptr %13786, i64 %13791
  %13793 = load double, ptr %13792, align 8, !tbaa !11
  %13794 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %13793, double %13785)
  %13795 = load ptr, ptr %7, align 8, !tbaa !9
  %13796 = load i32, ptr %12, align 4, !tbaa !5
  %13797 = load i32, ptr %8, align 4, !tbaa !5
  %13798 = mul nsw i32 28, %13797
  %13799 = add nsw i32 %13796, %13798
  %13800 = sext i32 %13799 to i64
  %13801 = getelementptr inbounds double, ptr %13795, i64 %13800
  %13802 = load double, ptr %13801, align 8, !tbaa !11
  %13803 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %13802, double %13794)
  %13804 = load ptr, ptr %7, align 8, !tbaa !9
  %13805 = load i32, ptr %12, align 4, !tbaa !5
  %13806 = load i32, ptr %8, align 4, !tbaa !5
  %13807 = mul nsw i32 29, %13806
  %13808 = add nsw i32 %13805, %13807
  %13809 = sext i32 %13808 to i64
  %13810 = getelementptr inbounds double, ptr %13804, i64 %13809
  %13811 = load double, ptr %13810, align 8, !tbaa !11
  %13812 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %13811, double %13803)
  %13813 = load ptr, ptr %7, align 8, !tbaa !9
  %13814 = load i32, ptr %12, align 4, !tbaa !5
  %13815 = load i32, ptr %8, align 4, !tbaa !5
  %13816 = mul nsw i32 30, %13815
  %13817 = add nsw i32 %13814, %13816
  %13818 = sext i32 %13817 to i64
  %13819 = getelementptr inbounds double, ptr %13813, i64 %13818
  %13820 = load double, ptr %13819, align 8, !tbaa !11
  %13821 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %13820, double %13812)
  %13822 = load ptr, ptr %7, align 8, !tbaa !9
  %13823 = load i32, ptr %12, align 4, !tbaa !5
  %13824 = load i32, ptr %8, align 4, !tbaa !5
  %13825 = mul nsw i32 31, %13824
  %13826 = add nsw i32 %13823, %13825
  %13827 = sext i32 %13826 to i64
  %13828 = getelementptr inbounds double, ptr %13822, i64 %13827
  %13829 = load double, ptr %13828, align 8, !tbaa !11
  %13830 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %13829, double %13821)
  %13831 = load ptr, ptr %7, align 8, !tbaa !9
  %13832 = load i32, ptr %12, align 4, !tbaa !5
  %13833 = load i32, ptr %8, align 4, !tbaa !5
  %13834 = mul nsw i32 32, %13833
  %13835 = add nsw i32 %13832, %13834
  %13836 = sext i32 %13835 to i64
  %13837 = getelementptr inbounds double, ptr %13831, i64 %13836
  %13838 = load double, ptr %13837, align 8, !tbaa !11
  %13839 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %13838, double %13830)
  %13840 = load ptr, ptr %7, align 8, !tbaa !9
  %13841 = load i32, ptr %12, align 4, !tbaa !5
  %13842 = load i32, ptr %8, align 4, !tbaa !5
  %13843 = mul nsw i32 33, %13842
  %13844 = add nsw i32 %13841, %13843
  %13845 = sext i32 %13844 to i64
  %13846 = getelementptr inbounds double, ptr %13840, i64 %13845
  %13847 = load double, ptr %13846, align 8, !tbaa !11
  %13848 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %13847, double %13839)
  %13849 = load ptr, ptr %7, align 8, !tbaa !9
  %13850 = load i32, ptr %12, align 4, !tbaa !5
  %13851 = load i32, ptr %8, align 4, !tbaa !5
  %13852 = mul nsw i32 34, %13851
  %13853 = add nsw i32 %13850, %13852
  %13854 = sext i32 %13853 to i64
  %13855 = getelementptr inbounds double, ptr %13849, i64 %13854
  %13856 = load double, ptr %13855, align 8, !tbaa !11
  %13857 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %13856, double %13848)
  %13858 = load ptr, ptr %7, align 8, !tbaa !9
  %13859 = load i32, ptr %12, align 4, !tbaa !5
  %13860 = load i32, ptr %8, align 4, !tbaa !5
  %13861 = mul nsw i32 35, %13860
  %13862 = add nsw i32 %13859, %13861
  %13863 = sext i32 %13862 to i64
  %13864 = getelementptr inbounds double, ptr %13858, i64 %13863
  %13865 = load double, ptr %13864, align 8, !tbaa !11
  %13866 = call double @llvm.fmuladd.f64(double 0xBC96000000000000, double %13865, double %13857)
  %13867 = load ptr, ptr %7, align 8, !tbaa !9
  %13868 = load i32, ptr %12, align 4, !tbaa !5
  %13869 = load i32, ptr %8, align 4, !tbaa !5
  %13870 = mul nsw i32 52, %13869
  %13871 = add nsw i32 %13868, %13870
  %13872 = sext i32 %13871 to i64
  %13873 = getelementptr inbounds double, ptr %13867, i64 %13872
  %13874 = load double, ptr %13873, align 8, !tbaa !11
  %13875 = call double @llvm.fmuladd.f64(double 0x3FA3F41B0E87BFEB, double %13874, double %13866)
  %13876 = load ptr, ptr %7, align 8, !tbaa !9
  %13877 = load i32, ptr %12, align 4, !tbaa !5
  %13878 = load i32, ptr %8, align 4, !tbaa !5
  %13879 = mul nsw i32 53, %13878
  %13880 = add nsw i32 %13877, %13879
  %13881 = sext i32 %13880 to i64
  %13882 = getelementptr inbounds double, ptr %13876, i64 %13881
  %13883 = load double, ptr %13882, align 8, !tbaa !11
  %13884 = call double @llvm.fmuladd.f64(double 0x3FAD5B74B5F10E92, double %13883, double %13875)
  %13885 = load ptr, ptr %7, align 8, !tbaa !9
  %13886 = load i32, ptr %12, align 4, !tbaa !5
  %13887 = load i32, ptr %8, align 4, !tbaa !5
  %13888 = mul nsw i32 54, %13887
  %13889 = add nsw i32 %13886, %13888
  %13890 = sext i32 %13889 to i64
  %13891 = getelementptr inbounds double, ptr %13885, i64 %13890
  %13892 = load double, ptr %13891, align 8, !tbaa !11
  %13893 = call double @llvm.fmuladd.f64(double 0xBFE66643AEED36FA, double %13892, double %13884)
  %13894 = load ptr, ptr %7, align 8, !tbaa !9
  %13895 = load i32, ptr %12, align 4, !tbaa !5
  %13896 = load i32, ptr %8, align 4, !tbaa !5
  %13897 = mul nsw i32 55, %13896
  %13898 = add nsw i32 %13895, %13897
  %13899 = sext i32 %13898 to i64
  %13900 = getelementptr inbounds double, ptr %13894, i64 %13899
  %13901 = load double, ptr %13900, align 8, !tbaa !11
  %13902 = call double @llvm.fmuladd.f64(double 0xBFE7007BFD8FD85B, double %13901, double %13893)
  %13903 = load ptr, ptr %7, align 8, !tbaa !9
  %13904 = load i32, ptr %12, align 4, !tbaa !5
  %13905 = load i32, ptr %8, align 4, !tbaa !5
  %13906 = mul nsw i32 56, %13905
  %13907 = add nsw i32 %13904, %13906
  %13908 = sext i32 %13907 to i64
  %13909 = getelementptr inbounds double, ptr %13903, i64 %13908
  %13910 = load double, ptr %13909, align 8, !tbaa !11
  %13911 = call double @llvm.fmuladd.f64(double 0x3C826280B3476096, double %13910, double %13902)
  %13912 = load ptr, ptr %7, align 8, !tbaa !9
  %13913 = load i32, ptr %12, align 4, !tbaa !5
  %13914 = load i32, ptr %8, align 4, !tbaa !5
  %13915 = mul nsw i32 57, %13914
  %13916 = add nsw i32 %13913, %13915
  %13917 = sext i32 %13916 to i64
  %13918 = getelementptr inbounds double, ptr %13912, i64 %13917
  %13919 = load double, ptr %13918, align 8, !tbaa !11
  %13920 = call double @llvm.fmuladd.f64(double 0x3C8C48C6001F0AC0, double %13919, double %13911)
  %13921 = load ptr, ptr %7, align 8, !tbaa !9
  %13922 = load i32, ptr %12, align 4, !tbaa !5
  %13923 = load i32, ptr %8, align 4, !tbaa !5
  %13924 = mul nsw i32 59, %13923
  %13925 = add nsw i32 %13922, %13924
  %13926 = sext i32 %13925 to i64
  %13927 = getelementptr inbounds double, ptr %13921, i64 %13926
  %13928 = load double, ptr %13927, align 8, !tbaa !11
  %13929 = call double @llvm.fmuladd.f64(double 0x3C96A09E667F3BCC, double %13928, double %13920)
  %13930 = load ptr, ptr %7, align 8, !tbaa !9
  %13931 = load i32, ptr %12, align 4, !tbaa !5
  %13932 = load i32, ptr %8, align 4, !tbaa !5
  %13933 = mul nsw i32 60, %13932
  %13934 = add nsw i32 %13931, %13933
  %13935 = sext i32 %13934 to i64
  %13936 = getelementptr inbounds double, ptr %13930, i64 %13935
  %13937 = load double, ptr %13936, align 8, !tbaa !11
  %13938 = call double @llvm.fmuladd.f64(double 0x3C60F876CCDF6CD9, double %13937, double %13929)
  %13939 = load ptr, ptr %7, align 8, !tbaa !9
  %13940 = load i32, ptr %12, align 4, !tbaa !5
  %13941 = load i32, ptr %8, align 4, !tbaa !5
  %13942 = mul nsw i32 61, %13941
  %13943 = add nsw i32 %13940, %13942
  %13944 = sext i32 %13943 to i64
  %13945 = getelementptr inbounds double, ptr %13939, i64 %13944
  %13946 = load double, ptr %13945, align 8, !tbaa !11
  %13947 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %13946, double %13938)
  %13948 = load ptr, ptr %7, align 8, !tbaa !9
  %13949 = load i32, ptr %12, align 4, !tbaa !5
  %13950 = load i32, ptr %8, align 4, !tbaa !5
  %13951 = mul nsw i32 62, %13950
  %13952 = add nsw i32 %13949, %13951
  %13953 = sext i32 %13952 to i64
  %13954 = getelementptr inbounds double, ptr %13948, i64 %13953
  %13955 = load double, ptr %13954, align 8, !tbaa !11
  %13956 = call double @llvm.fmuladd.f64(double 0xBCA6A09E667F3BCC, double %13955, double %13947)
  %13957 = load ptr, ptr %7, align 8, !tbaa !9
  %13958 = load i32, ptr %12, align 4, !tbaa !5
  %13959 = load i32, ptr %8, align 4, !tbaa !5
  %13960 = mul nsw i32 63, %13959
  %13961 = add nsw i32 %13958, %13960
  %13962 = sext i32 %13961 to i64
  %13963 = getelementptr inbounds double, ptr %13957, i64 %13962
  %13964 = load double, ptr %13963, align 8, !tbaa !11
  %13965 = call double @llvm.fmuladd.f64(double 0xBCA6A09E667F3BCC, double %13964, double %13956)
  %13966 = load ptr, ptr %7, align 8, !tbaa !9
  %13967 = load i32, ptr %12, align 4, !tbaa !5
  %13968 = load i32, ptr %8, align 4, !tbaa !5
  %13969 = mul nsw i32 64, %13968
  %13970 = add nsw i32 %13967, %13969
  %13971 = sext i32 %13970 to i64
  %13972 = getelementptr inbounds double, ptr %13966, i64 %13971
  %13973 = load double, ptr %13972, align 8, !tbaa !11
  %13974 = call double @llvm.fmuladd.f64(double 0x3C6F1CD9CCEEF238, double %13973, double %13965)
  %13975 = load ptr, ptr %7, align 8, !tbaa !9
  %13976 = load i32, ptr %12, align 4, !tbaa !5
  %13977 = load i32, ptr %8, align 4, !tbaa !5
  %13978 = mul nsw i32 65, %13977
  %13979 = add nsw i32 %13976, %13978
  %13980 = sext i32 %13979 to i64
  %13981 = getelementptr inbounds double, ptr %13975, i64 %13980
  %13982 = load double, ptr %13981, align 8, !tbaa !11
  %13983 = call double @llvm.fmuladd.f64(double 0x3C8974B2334F2346, double %13982, double %13974)
  %13984 = load ptr, ptr %7, align 8, !tbaa !9
  %13985 = load i32, ptr %12, align 4, !tbaa !5
  %13986 = load i32, ptr %8, align 4, !tbaa !5
  %13987 = mul nsw i32 66, %13986
  %13988 = add nsw i32 %13985, %13987
  %13989 = sext i32 %13988 to i64
  %13990 = getelementptr inbounds double, ptr %13984, i64 %13989
  %13991 = load double, ptr %13990, align 8, !tbaa !11
  %13992 = call double @llvm.fmuladd.f64(double 0xBCAADEBC19B71703, double %13991, double %13983)
  %13993 = load ptr, ptr %7, align 8, !tbaa !9
  %13994 = load i32, ptr %12, align 4, !tbaa !5
  %13995 = load i32, ptr %8, align 4, !tbaa !5
  %13996 = mul nsw i32 67, %13995
  %13997 = add nsw i32 %13994, %13996
  %13998 = sext i32 %13997 to i64
  %13999 = getelementptr inbounds double, ptr %13993, i64 %13998
  %14000 = load double, ptr %13999, align 8, !tbaa !11
  %14001 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %14000, double %13992)
  store double %14001, ptr %11, align 8, !tbaa !11
  %14002 = load double, ptr %11, align 8, !tbaa !11
  %14003 = load ptr, ptr %9, align 8, !tbaa !9
  %14004 = load i32, ptr %12, align 4, !tbaa !5
  %14005 = load i32, ptr %10, align 4, !tbaa !5
  %14006 = mul nsw i32 48, %14005
  %14007 = add nsw i32 %14004, %14006
  %14008 = sext i32 %14007 to i64
  %14009 = getelementptr inbounds double, ptr %14003, i64 %14008
  store double %14002, ptr %14009, align 8, !tbaa !11
  %14010 = load ptr, ptr %7, align 8, !tbaa !9
  %14011 = load i32, ptr %12, align 4, !tbaa !5
  %14012 = load i32, ptr %8, align 4, !tbaa !5
  %14013 = mul nsw i32 20, %14012
  %14014 = add nsw i32 %14011, %14013
  %14015 = sext i32 %14014 to i64
  %14016 = getelementptr inbounds double, ptr %14010, i64 %14015
  %14017 = load double, ptr %14016, align 8, !tbaa !11
  %14018 = load ptr, ptr %7, align 8, !tbaa !9
  %14019 = load i32, ptr %12, align 4, !tbaa !5
  %14020 = load i32, ptr %8, align 4, !tbaa !5
  %14021 = mul nsw i32 21, %14020
  %14022 = add nsw i32 %14019, %14021
  %14023 = sext i32 %14022 to i64
  %14024 = getelementptr inbounds double, ptr %14018, i64 %14023
  %14025 = load double, ptr %14024, align 8, !tbaa !11
  %14026 = fmul double 0xBFD4C0B9406BCBCD, %14025
  %14027 = call double @llvm.fmuladd.f64(double 0x3F980EB0AE1D4719, double %14017, double %14026)
  %14028 = load ptr, ptr %7, align 8, !tbaa !9
  %14029 = load i32, ptr %12, align 4, !tbaa !5
  %14030 = load i32, ptr %8, align 4, !tbaa !5
  %14031 = mul nsw i32 22, %14030
  %14032 = add nsw i32 %14029, %14031
  %14033 = sext i32 %14032 to i64
  %14034 = getelementptr inbounds double, ptr %14028, i64 %14033
  %14035 = load double, ptr %14034, align 8, !tbaa !11
  %14036 = call double @llvm.fmuladd.f64(double 0xBFEBF462FB348EF3, double %14035, double %14027)
  %14037 = load ptr, ptr %7, align 8, !tbaa !9
  %14038 = load i32, ptr %12, align 4, !tbaa !5
  %14039 = load i32, ptr %8, align 4, !tbaa !5
  %14040 = mul nsw i32 23, %14039
  %14041 = add nsw i32 %14038, %14040
  %14042 = sext i32 %14041 to i64
  %14043 = getelementptr inbounds double, ptr %14037, i64 %14042
  %14044 = load double, ptr %14043, align 8, !tbaa !11
  %14045 = call double @llvm.fmuladd.f64(double 0xBFE002F9665DF3D7, double %14044, double %14036)
  %14046 = load ptr, ptr %7, align 8, !tbaa !9
  %14047 = load i32, ptr %12, align 4, !tbaa !5
  %14048 = load i32, ptr %8, align 4, !tbaa !5
  %14049 = mul nsw i32 24, %14048
  %14050 = add nsw i32 %14047, %14049
  %14051 = sext i32 %14050 to i64
  %14052 = getelementptr inbounds double, ptr %14046, i64 %14051
  %14053 = load double, ptr %14052, align 8, !tbaa !11
  %14054 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %14053, double %14045)
  %14055 = load ptr, ptr %7, align 8, !tbaa !9
  %14056 = load i32, ptr %12, align 4, !tbaa !5
  %14057 = load i32, ptr %8, align 4, !tbaa !5
  %14058 = mul nsw i32 25, %14057
  %14059 = add nsw i32 %14056, %14058
  %14060 = sext i32 %14059 to i64
  %14061 = getelementptr inbounds double, ptr %14055, i64 %14060
  %14062 = load double, ptr %14061, align 8, !tbaa !11
  %14063 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %14062, double %14054)
  %14064 = load ptr, ptr %7, align 8, !tbaa !9
  %14065 = load i32, ptr %12, align 4, !tbaa !5
  %14066 = load i32, ptr %8, align 4, !tbaa !5
  %14067 = mul nsw i32 26, %14066
  %14068 = add nsw i32 %14065, %14067
  %14069 = sext i32 %14068 to i64
  %14070 = getelementptr inbounds double, ptr %14064, i64 %14069
  %14071 = load double, ptr %14070, align 8, !tbaa !11
  %14072 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %14071, double %14063)
  %14073 = load ptr, ptr %7, align 8, !tbaa !9
  %14074 = load i32, ptr %12, align 4, !tbaa !5
  %14075 = load i32, ptr %8, align 4, !tbaa !5
  %14076 = mul nsw i32 27, %14075
  %14077 = add nsw i32 %14074, %14076
  %14078 = sext i32 %14077 to i64
  %14079 = getelementptr inbounds double, ptr %14073, i64 %14078
  %14080 = load double, ptr %14079, align 8, !tbaa !11
  %14081 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %14080, double %14072)
  %14082 = load ptr, ptr %7, align 8, !tbaa !9
  %14083 = load i32, ptr %12, align 4, !tbaa !5
  %14084 = load i32, ptr %8, align 4, !tbaa !5
  %14085 = mul nsw i32 28, %14084
  %14086 = add nsw i32 %14083, %14085
  %14087 = sext i32 %14086 to i64
  %14088 = getelementptr inbounds double, ptr %14082, i64 %14087
  %14089 = load double, ptr %14088, align 8, !tbaa !11
  %14090 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %14089, double %14081)
  %14091 = load ptr, ptr %7, align 8, !tbaa !9
  %14092 = load i32, ptr %12, align 4, !tbaa !5
  %14093 = load i32, ptr %8, align 4, !tbaa !5
  %14094 = mul nsw i32 29, %14093
  %14095 = add nsw i32 %14092, %14094
  %14096 = sext i32 %14095 to i64
  %14097 = getelementptr inbounds double, ptr %14091, i64 %14096
  %14098 = load double, ptr %14097, align 8, !tbaa !11
  %14099 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %14098, double %14090)
  %14100 = load ptr, ptr %7, align 8, !tbaa !9
  %14101 = load i32, ptr %12, align 4, !tbaa !5
  %14102 = load i32, ptr %8, align 4, !tbaa !5
  %14103 = mul nsw i32 30, %14102
  %14104 = add nsw i32 %14101, %14103
  %14105 = sext i32 %14104 to i64
  %14106 = getelementptr inbounds double, ptr %14100, i64 %14105
  %14107 = load double, ptr %14106, align 8, !tbaa !11
  %14108 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %14107, double %14099)
  %14109 = load ptr, ptr %7, align 8, !tbaa !9
  %14110 = load i32, ptr %12, align 4, !tbaa !5
  %14111 = load i32, ptr %8, align 4, !tbaa !5
  %14112 = mul nsw i32 31, %14111
  %14113 = add nsw i32 %14110, %14112
  %14114 = sext i32 %14113 to i64
  %14115 = getelementptr inbounds double, ptr %14109, i64 %14114
  %14116 = load double, ptr %14115, align 8, !tbaa !11
  %14117 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %14116, double %14108)
  %14118 = load ptr, ptr %7, align 8, !tbaa !9
  %14119 = load i32, ptr %12, align 4, !tbaa !5
  %14120 = load i32, ptr %8, align 4, !tbaa !5
  %14121 = mul nsw i32 32, %14120
  %14122 = add nsw i32 %14119, %14121
  %14123 = sext i32 %14122 to i64
  %14124 = getelementptr inbounds double, ptr %14118, i64 %14123
  %14125 = load double, ptr %14124, align 8, !tbaa !11
  %14126 = call double @llvm.fmuladd.f64(double 0xBC96000000000000, double %14125, double %14117)
  %14127 = load ptr, ptr %7, align 8, !tbaa !9
  %14128 = load i32, ptr %12, align 4, !tbaa !5
  %14129 = load i32, ptr %8, align 4, !tbaa !5
  %14130 = mul nsw i32 33, %14129
  %14131 = add nsw i32 %14128, %14130
  %14132 = sext i32 %14131 to i64
  %14133 = getelementptr inbounds double, ptr %14127, i64 %14132
  %14134 = load double, ptr %14133, align 8, !tbaa !11
  %14135 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %14134, double %14126)
  %14136 = load ptr, ptr %7, align 8, !tbaa !9
  %14137 = load i32, ptr %12, align 4, !tbaa !5
  %14138 = load i32, ptr %8, align 4, !tbaa !5
  %14139 = mul nsw i32 34, %14138
  %14140 = add nsw i32 %14137, %14139
  %14141 = sext i32 %14140 to i64
  %14142 = getelementptr inbounds double, ptr %14136, i64 %14141
  %14143 = load double, ptr %14142, align 8, !tbaa !11
  %14144 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %14143, double %14135)
  %14145 = load ptr, ptr %7, align 8, !tbaa !9
  %14146 = load i32, ptr %12, align 4, !tbaa !5
  %14147 = load i32, ptr %8, align 4, !tbaa !5
  %14148 = mul nsw i32 35, %14147
  %14149 = add nsw i32 %14146, %14148
  %14150 = sext i32 %14149 to i64
  %14151 = getelementptr inbounds double, ptr %14145, i64 %14150
  %14152 = load double, ptr %14151, align 8, !tbaa !11
  %14153 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %14152, double %14144)
  %14154 = load ptr, ptr %7, align 8, !tbaa !9
  %14155 = load i32, ptr %12, align 4, !tbaa !5
  %14156 = load i32, ptr %8, align 4, !tbaa !5
  %14157 = mul nsw i32 52, %14156
  %14158 = add nsw i32 %14155, %14157
  %14159 = sext i32 %14158 to i64
  %14160 = getelementptr inbounds double, ptr %14154, i64 %14159
  %14161 = load double, ptr %14160, align 8, !tbaa !11
  %14162 = call double @llvm.fmuladd.f64(double 0xBFB8DF388696F557, double %14161, double %14153)
  %14163 = load ptr, ptr %7, align 8, !tbaa !9
  %14164 = load i32, ptr %12, align 4, !tbaa !5
  %14165 = load i32, ptr %8, align 4, !tbaa !5
  %14166 = mul nsw i32 53, %14165
  %14167 = add nsw i32 %14164, %14166
  %14168 = sext i32 %14167 to i64
  %14169 = getelementptr inbounds double, ptr %14163, i64 %14168
  %14170 = load double, ptr %14169, align 8, !tbaa !11
  %14171 = call double @llvm.fmuladd.f64(double 0x3FD0C7817D9C3121, double %14170, double %14162)
  %14172 = load ptr, ptr %7, align 8, !tbaa !9
  %14173 = load i32, ptr %12, align 4, !tbaa !5
  %14174 = load i32, ptr %8, align 4, !tbaa !5
  %14175 = mul nsw i32 54, %14174
  %14176 = add nsw i32 %14173, %14175
  %14177 = sext i32 %14176 to i64
  %14178 = getelementptr inbounds double, ptr %14172, i64 %14177
  %14179 = load double, ptr %14178, align 8, !tbaa !11
  %14180 = call double @llvm.fmuladd.f64(double 0x4007001BD846D0A7, double %14179, double %14171)
  %14181 = load ptr, ptr %7, align 8, !tbaa !9
  %14182 = load i32, ptr %12, align 4, !tbaa !5
  %14183 = load i32, ptr %8, align 4, !tbaa !5
  %14184 = mul nsw i32 55, %14183
  %14185 = add nsw i32 %14182, %14184
  %14186 = sext i32 %14185 to i64
  %14187 = getelementptr inbounds double, ptr %14181, i64 %14186
  %14188 = load double, ptr %14187, align 8, !tbaa !11
  %14189 = call double @llvm.fmuladd.f64(double 0x3FD08C54FF1019F7, double %14188, double %14180)
  %14190 = load ptr, ptr %7, align 8, !tbaa !9
  %14191 = load i32, ptr %12, align 4, !tbaa !5
  %14192 = load i32, ptr %8, align 4, !tbaa !5
  %14193 = mul nsw i32 56, %14192
  %14194 = add nsw i32 %14191, %14193
  %14195 = sext i32 %14194 to i64
  %14196 = getelementptr inbounds double, ptr %14190, i64 %14195
  %14197 = load double, ptr %14196, align 8, !tbaa !11
  %14198 = call double @llvm.fmuladd.f64(double 0xBC7F1CD9CCEEF238, double %14197, double %14189)
  %14199 = load ptr, ptr %7, align 8, !tbaa !9
  %14200 = load i32, ptr %12, align 4, !tbaa !5
  %14201 = load i32, ptr %8, align 4, !tbaa !5
  %14202 = mul nsw i32 57, %14201
  %14203 = add nsw i32 %14200, %14202
  %14204 = sext i32 %14203 to i64
  %14205 = getelementptr inbounds double, ptr %14199, i64 %14204
  %14206 = load double, ptr %14205, align 8, !tbaa !11
  %14207 = call double @llvm.fmuladd.f64(double 0x3C80F876CCDF6CD9, double %14206, double %14198)
  %14208 = load ptr, ptr %7, align 8, !tbaa !9
  %14209 = load i32, ptr %12, align 4, !tbaa !5
  %14210 = load i32, ptr %8, align 4, !tbaa !5
  %14211 = mul nsw i32 58, %14210
  %14212 = add nsw i32 %14209, %14211
  %14213 = sext i32 %14212 to i64
  %14214 = getelementptr inbounds double, ptr %14208, i64 %14213
  %14215 = load double, ptr %14214, align 8, !tbaa !11
  %14216 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %14215, double %14207)
  %14217 = load ptr, ptr %7, align 8, !tbaa !9
  %14218 = load i32, ptr %12, align 4, !tbaa !5
  %14219 = load i32, ptr %8, align 4, !tbaa !5
  %14220 = mul nsw i32 59, %14219
  %14221 = add nsw i32 %14218, %14220
  %14222 = sext i32 %14221 to i64
  %14223 = getelementptr inbounds double, ptr %14217, i64 %14222
  %14224 = load double, ptr %14223, align 8, !tbaa !11
  %14225 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %14224, double %14216)
  %14226 = load ptr, ptr %7, align 8, !tbaa !9
  %14227 = load i32, ptr %12, align 4, !tbaa !5
  %14228 = load i32, ptr %8, align 4, !tbaa !5
  %14229 = mul nsw i32 60, %14228
  %14230 = add nsw i32 %14227, %14229
  %14231 = sext i32 %14230 to i64
  %14232 = getelementptr inbounds double, ptr %14226, i64 %14231
  %14233 = load double, ptr %14232, align 8, !tbaa !11
  %14234 = call double @llvm.fmuladd.f64(double 0xBC6C48C6001F0ABE, double %14233, double %14225)
  %14235 = load ptr, ptr %7, align 8, !tbaa !9
  %14236 = load i32, ptr %12, align 4, !tbaa !5
  %14237 = load i32, ptr %8, align 4, !tbaa !5
  %14238 = mul nsw i32 61, %14237
  %14239 = add nsw i32 %14236, %14238
  %14240 = sext i32 %14239 to i64
  %14241 = getelementptr inbounds double, ptr %14235, i64 %14240
  %14242 = load double, ptr %14241, align 8, !tbaa !11
  %14243 = call double @llvm.fmuladd.f64(double 0x3C9974B2334F2346, double %14242, double %14234)
  %14244 = load ptr, ptr %7, align 8, !tbaa !9
  %14245 = load i32, ptr %12, align 4, !tbaa !5
  %14246 = load i32, ptr %8, align 4, !tbaa !5
  %14247 = mul nsw i32 62, %14246
  %14248 = add nsw i32 %14245, %14247
  %14249 = sext i32 %14248 to i64
  %14250 = getelementptr inbounds double, ptr %14244, i64 %14249
  %14251 = load double, ptr %14250, align 8, !tbaa !11
  %14252 = call double @llvm.fmuladd.f64(double 0x3CBADEBC19B71701, double %14251, double %14243)
  %14253 = load ptr, ptr %7, align 8, !tbaa !9
  %14254 = load i32, ptr %12, align 4, !tbaa !5
  %14255 = load i32, ptr %8, align 4, !tbaa !5
  %14256 = mul nsw i32 63, %14255
  %14257 = add nsw i32 %14254, %14256
  %14258 = sext i32 %14257 to i64
  %14259 = getelementptr inbounds double, ptr %14253, i64 %14258
  %14260 = load double, ptr %14259, align 8, !tbaa !11
  %14261 = call double @llvm.fmuladd.f64(double 0x3C96A09E667F3BCC, double %14260, double %14252)
  %14262 = load ptr, ptr %7, align 8, !tbaa !9
  %14263 = load i32, ptr %12, align 4, !tbaa !5
  %14264 = load i32, ptr %8, align 4, !tbaa !5
  %14265 = mul nsw i32 64, %14264
  %14266 = add nsw i32 %14263, %14265
  %14267 = sext i32 %14266 to i64
  %14268 = getelementptr inbounds double, ptr %14262, i64 %14267
  %14269 = load double, ptr %14268, align 8, !tbaa !11
  %14270 = call double @llvm.fmuladd.f64(double 0xBC50F876CCDF6CD8, double %14269, double %14261)
  %14271 = load ptr, ptr %7, align 8, !tbaa !9
  %14272 = load i32, ptr %12, align 4, !tbaa !5
  %14273 = load i32, ptr %8, align 4, !tbaa !5
  %14274 = mul nsw i32 65, %14273
  %14275 = add nsw i32 %14272, %14274
  %14276 = sext i32 %14275 to i64
  %14277 = getelementptr inbounds double, ptr %14271, i64 %14276
  %14278 = load double, ptr %14277, align 8, !tbaa !11
  %14279 = call double @llvm.fmuladd.f64(double 0x3CA04371D9AB72FA, double %14278, double %14270)
  %14280 = load ptr, ptr %7, align 8, !tbaa !9
  %14281 = load i32, ptr %12, align 4, !tbaa !5
  %14282 = load i32, ptr %8, align 4, !tbaa !5
  %14283 = mul nsw i32 66, %14282
  %14284 = add nsw i32 %14281, %14283
  %14285 = sext i32 %14284 to i64
  %14286 = getelementptr inbounds double, ptr %14280, i64 %14285
  %14287 = load double, ptr %14286, align 8, !tbaa !11
  %14288 = call double @llvm.fmuladd.f64(double 0x3CBADEBC19B71701, double %14287, double %14279)
  %14289 = load ptr, ptr %7, align 8, !tbaa !9
  %14290 = load i32, ptr %12, align 4, !tbaa !5
  %14291 = load i32, ptr %8, align 4, !tbaa !5
  %14292 = mul nsw i32 67, %14291
  %14293 = add nsw i32 %14290, %14292
  %14294 = sext i32 %14293 to i64
  %14295 = getelementptr inbounds double, ptr %14289, i64 %14294
  %14296 = load double, ptr %14295, align 8, !tbaa !11
  %14297 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %14296, double %14288)
  store double %14297, ptr %11, align 8, !tbaa !11
  %14298 = load double, ptr %11, align 8, !tbaa !11
  %14299 = load ptr, ptr %9, align 8, !tbaa !9
  %14300 = load i32, ptr %12, align 4, !tbaa !5
  %14301 = load i32, ptr %10, align 4, !tbaa !5
  %14302 = mul nsw i32 49, %14301
  %14303 = add nsw i32 %14300, %14302
  %14304 = sext i32 %14303 to i64
  %14305 = getelementptr inbounds double, ptr %14299, i64 %14304
  store double %14298, ptr %14305, align 8, !tbaa !11
  %14306 = load ptr, ptr %7, align 8, !tbaa !9
  %14307 = load i32, ptr %12, align 4, !tbaa !5
  %14308 = load i32, ptr %8, align 4, !tbaa !5
  %14309 = mul nsw i32 20, %14308
  %14310 = add nsw i32 %14307, %14309
  %14311 = sext i32 %14310 to i64
  %14312 = getelementptr inbounds double, ptr %14306, i64 %14311
  %14313 = load double, ptr %14312, align 8, !tbaa !11
  %14314 = load ptr, ptr %7, align 8, !tbaa !9
  %14315 = load i32, ptr %12, align 4, !tbaa !5
  %14316 = load i32, ptr %8, align 4, !tbaa !5
  %14317 = mul nsw i32 21, %14316
  %14318 = add nsw i32 %14315, %14317
  %14319 = sext i32 %14318 to i64
  %14320 = getelementptr inbounds double, ptr %14314, i64 %14319
  %14321 = load double, ptr %14320, align 8, !tbaa !11
  %14322 = fmul double 0x3C70000000000001, %14321
  %14323 = call double @llvm.fmuladd.f64(double 0xBC60000000000000, double %14313, double %14322)
  %14324 = load ptr, ptr %7, align 8, !tbaa !9
  %14325 = load i32, ptr %12, align 4, !tbaa !5
  %14326 = load i32, ptr %8, align 4, !tbaa !5
  %14327 = mul nsw i32 23, %14326
  %14328 = add nsw i32 %14325, %14327
  %14329 = sext i32 %14328 to i64
  %14330 = getelementptr inbounds double, ptr %14324, i64 %14329
  %14331 = load double, ptr %14330, align 8, !tbaa !11
  %14332 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %14331, double %14323)
  %14333 = load ptr, ptr %7, align 8, !tbaa !9
  %14334 = load i32, ptr %12, align 4, !tbaa !5
  %14335 = load i32, ptr %8, align 4, !tbaa !5
  %14336 = mul nsw i32 24, %14335
  %14337 = add nsw i32 %14334, %14336
  %14338 = sext i32 %14337 to i64
  %14339 = getelementptr inbounds double, ptr %14333, i64 %14338
  %14340 = load double, ptr %14339, align 8, !tbaa !11
  %14341 = call double @llvm.fmuladd.f64(double 0x3FA789B66AF4F457, double %14340, double %14332)
  %14342 = load ptr, ptr %7, align 8, !tbaa !9
  %14343 = load i32, ptr %12, align 4, !tbaa !5
  %14344 = load i32, ptr %8, align 4, !tbaa !5
  %14345 = mul nsw i32 25, %14344
  %14346 = add nsw i32 %14343, %14345
  %14347 = sext i32 %14346 to i64
  %14348 = getelementptr inbounds double, ptr %14342, i64 %14347
  %14349 = load double, ptr %14348, align 8, !tbaa !11
  %14350 = call double @llvm.fmuladd.f64(double 0x3FEC2894019C8AD4, double %14349, double %14341)
  %14351 = load ptr, ptr %7, align 8, !tbaa !9
  %14352 = load i32, ptr %12, align 4, !tbaa !5
  %14353 = load i32, ptr %8, align 4, !tbaa !5
  %14354 = mul nsw i32 26, %14353
  %14355 = add nsw i32 %14352, %14354
  %14356 = sext i32 %14355 to i64
  %14357 = getelementptr inbounds double, ptr %14351, i64 %14356
  %14358 = load double, ptr %14357, align 8, !tbaa !11
  %14359 = call double @llvm.fmuladd.f64(double 0x3FEC2894019C8AC6, double %14358, double %14350)
  %14360 = load ptr, ptr %7, align 8, !tbaa !9
  %14361 = load i32, ptr %12, align 4, !tbaa !5
  %14362 = load i32, ptr %8, align 4, !tbaa !5
  %14363 = mul nsw i32 27, %14362
  %14364 = add nsw i32 %14361, %14363
  %14365 = sext i32 %14364 to i64
  %14366 = getelementptr inbounds double, ptr %14360, i64 %14365
  %14367 = load double, ptr %14366, align 8, !tbaa !11
  %14368 = call double @llvm.fmuladd.f64(double 0x3FA789B66AF4F575, double %14367, double %14359)
  %14369 = load ptr, ptr %7, align 8, !tbaa !9
  %14370 = load i32, ptr %12, align 4, !tbaa !5
  %14371 = load i32, ptr %8, align 4, !tbaa !5
  %14372 = mul nsw i32 28, %14371
  %14373 = add nsw i32 %14370, %14372
  %14374 = sext i32 %14373 to i64
  %14375 = getelementptr inbounds double, ptr %14369, i64 %14374
  %14376 = load double, ptr %14375, align 8, !tbaa !11
  %14377 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %14376, double %14368)
  %14378 = load ptr, ptr %7, align 8, !tbaa !9
  %14379 = load i32, ptr %12, align 4, !tbaa !5
  %14380 = load i32, ptr %8, align 4, !tbaa !5
  %14381 = mul nsw i32 29, %14380
  %14382 = add nsw i32 %14379, %14381
  %14383 = sext i32 %14382 to i64
  %14384 = getelementptr inbounds double, ptr %14378, i64 %14383
  %14385 = load double, ptr %14384, align 8, !tbaa !11
  %14386 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %14385, double %14377)
  %14387 = load ptr, ptr %7, align 8, !tbaa !9
  %14388 = load i32, ptr %12, align 4, !tbaa !5
  %14389 = load i32, ptr %8, align 4, !tbaa !5
  %14390 = mul nsw i32 30, %14389
  %14391 = add nsw i32 %14388, %14390
  %14392 = sext i32 %14391 to i64
  %14393 = getelementptr inbounds double, ptr %14387, i64 %14392
  %14394 = load double, ptr %14393, align 8, !tbaa !11
  %14395 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %14394, double %14386)
  %14396 = load ptr, ptr %7, align 8, !tbaa !9
  %14397 = load i32, ptr %12, align 4, !tbaa !5
  %14398 = load i32, ptr %8, align 4, !tbaa !5
  %14399 = mul nsw i32 31, %14398
  %14400 = add nsw i32 %14397, %14399
  %14401 = sext i32 %14400 to i64
  %14402 = getelementptr inbounds double, ptr %14396, i64 %14401
  %14403 = load double, ptr %14402, align 8, !tbaa !11
  %14404 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %14403, double %14395)
  %14405 = load ptr, ptr %7, align 8, !tbaa !9
  %14406 = load i32, ptr %12, align 4, !tbaa !5
  %14407 = load i32, ptr %8, align 4, !tbaa !5
  %14408 = mul nsw i32 32, %14407
  %14409 = add nsw i32 %14406, %14408
  %14410 = sext i32 %14409 to i64
  %14411 = getelementptr inbounds double, ptr %14405, i64 %14410
  %14412 = load double, ptr %14411, align 8, !tbaa !11
  %14413 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %14412, double %14404)
  %14414 = load ptr, ptr %7, align 8, !tbaa !9
  %14415 = load i32, ptr %12, align 4, !tbaa !5
  %14416 = load i32, ptr %8, align 4, !tbaa !5
  %14417 = mul nsw i32 33, %14416
  %14418 = add nsw i32 %14415, %14417
  %14419 = sext i32 %14418 to i64
  %14420 = getelementptr inbounds double, ptr %14414, i64 %14419
  %14421 = load double, ptr %14420, align 8, !tbaa !11
  %14422 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %14421, double %14413)
  %14423 = load ptr, ptr %7, align 8, !tbaa !9
  %14424 = load i32, ptr %12, align 4, !tbaa !5
  %14425 = load i32, ptr %8, align 4, !tbaa !5
  %14426 = mul nsw i32 34, %14425
  %14427 = add nsw i32 %14424, %14426
  %14428 = sext i32 %14427 to i64
  %14429 = getelementptr inbounds double, ptr %14423, i64 %14428
  %14430 = load double, ptr %14429, align 8, !tbaa !11
  %14431 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %14430, double %14422)
  %14432 = load ptr, ptr %7, align 8, !tbaa !9
  %14433 = load i32, ptr %12, align 4, !tbaa !5
  %14434 = load i32, ptr %8, align 4, !tbaa !5
  %14435 = mul nsw i32 35, %14434
  %14436 = add nsw i32 %14433, %14435
  %14437 = sext i32 %14436 to i64
  %14438 = getelementptr inbounds double, ptr %14432, i64 %14437
  %14439 = load double, ptr %14438, align 8, !tbaa !11
  %14440 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %14439, double %14431)
  %14441 = load ptr, ptr %7, align 8, !tbaa !9
  %14442 = load i32, ptr %12, align 4, !tbaa !5
  %14443 = load i32, ptr %8, align 4, !tbaa !5
  %14444 = mul nsw i32 52, %14443
  %14445 = add nsw i32 %14442, %14444
  %14446 = sext i32 %14445 to i64
  %14447 = getelementptr inbounds double, ptr %14441, i64 %14446
  %14448 = load double, ptr %14447, align 8, !tbaa !11
  %14449 = call double @llvm.fmuladd.f64(double 0xBC84818F8CE34E32, double %14448, double %14440)
  %14450 = load ptr, ptr %7, align 8, !tbaa !9
  %14451 = load i32, ptr %12, align 4, !tbaa !5
  %14452 = load i32, ptr %8, align 4, !tbaa !5
  %14453 = mul nsw i32 53, %14452
  %14454 = add nsw i32 %14451, %14453
  %14455 = sext i32 %14454 to i64
  %14456 = getelementptr inbounds double, ptr %14450, i64 %14455
  %14457 = load double, ptr %14456, align 8, !tbaa !11
  %14458 = call double @llvm.fmuladd.f64(double 0x3C6C48C6001F0ABE, double %14457, double %14449)
  %14459 = load ptr, ptr %7, align 8, !tbaa !9
  %14460 = load i32, ptr %12, align 4, !tbaa !5
  %14461 = load i32, ptr %8, align 4, !tbaa !5
  %14462 = mul nsw i32 54, %14461
  %14463 = add nsw i32 %14460, %14462
  %14464 = sext i32 %14463 to i64
  %14465 = getelementptr inbounds double, ptr %14459, i64 %14464
  %14466 = load double, ptr %14465, align 8, !tbaa !11
  %14467 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %14466, double %14458)
  %14468 = load ptr, ptr %7, align 8, !tbaa !9
  %14469 = load i32, ptr %12, align 4, !tbaa !5
  %14470 = load i32, ptr %8, align 4, !tbaa !5
  %14471 = mul nsw i32 55, %14470
  %14472 = add nsw i32 %14469, %14471
  %14473 = sext i32 %14472 to i64
  %14474 = getelementptr inbounds double, ptr %14468, i64 %14473
  %14475 = load double, ptr %14474, align 8, !tbaa !11
  %14476 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %14475, double %14467)
  %14477 = load ptr, ptr %7, align 8, !tbaa !9
  %14478 = load i32, ptr %12, align 4, !tbaa !5
  %14479 = load i32, ptr %8, align 4, !tbaa !5
  %14480 = mul nsw i32 56, %14479
  %14481 = add nsw i32 %14478, %14480
  %14482 = sext i32 %14481 to i64
  %14483 = getelementptr inbounds double, ptr %14477, i64 %14482
  %14484 = load double, ptr %14483, align 8, !tbaa !11
  %14485 = call double @llvm.fmuladd.f64(double 0xBFA0A4D27CF86DCE, double %14484, double %14476)
  %14486 = load ptr, ptr %7, align 8, !tbaa !9
  %14487 = load i32, ptr %12, align 4, !tbaa !5
  %14488 = load i32, ptr %8, align 4, !tbaa !5
  %14489 = mul nsw i32 57, %14488
  %14490 = add nsw i32 %14487, %14489
  %14491 = sext i32 %14490 to i64
  %14492 = getelementptr inbounds double, ptr %14486, i64 %14491
  %14493 = load double, ptr %14492, align 8, !tbaa !11
  %14494 = call double @llvm.fmuladd.f64(double 0xBFE3E93C07AFC382, double %14493, double %14485)
  %14495 = load ptr, ptr %7, align 8, !tbaa !9
  %14496 = load i32, ptr %12, align 4, !tbaa !5
  %14497 = load i32, ptr %8, align 4, !tbaa !5
  %14498 = mul nsw i32 58, %14497
  %14499 = add nsw i32 %14496, %14498
  %14500 = sext i32 %14499 to i64
  %14501 = getelementptr inbounds double, ptr %14495, i64 %14500
  %14502 = load double, ptr %14501, align 8, !tbaa !11
  %14503 = call double @llvm.fmuladd.f64(double 0xBFE3E93C07AFC37F, double %14502, double %14494)
  %14504 = load ptr, ptr %7, align 8, !tbaa !9
  %14505 = load i32, ptr %12, align 4, !tbaa !5
  %14506 = load i32, ptr %8, align 4, !tbaa !5
  %14507 = mul nsw i32 59, %14506
  %14508 = add nsw i32 %14505, %14507
  %14509 = sext i32 %14508 to i64
  %14510 = getelementptr inbounds double, ptr %14504, i64 %14509
  %14511 = load double, ptr %14510, align 8, !tbaa !11
  %14512 = call double @llvm.fmuladd.f64(double 0xBFA0A4D27CF86DB4, double %14511, double %14503)
  %14513 = load ptr, ptr %7, align 8, !tbaa !9
  %14514 = load i32, ptr %12, align 4, !tbaa !5
  %14515 = load i32, ptr %8, align 4, !tbaa !5
  %14516 = mul nsw i32 60, %14515
  %14517 = add nsw i32 %14514, %14516
  %14518 = sext i32 %14517 to i64
  %14519 = getelementptr inbounds double, ptr %14513, i64 %14518
  %14520 = load double, ptr %14519, align 8, !tbaa !11
  %14521 = call double @llvm.fmuladd.f64(double 0xBC9207FE39AD63A7, double %14520, double %14512)
  %14522 = load ptr, ptr %7, align 8, !tbaa !9
  %14523 = load i32, ptr %12, align 4, !tbaa !5
  %14524 = load i32, ptr %8, align 4, !tbaa !5
  %14525 = mul nsw i32 61, %14524
  %14526 = add nsw i32 %14523, %14525
  %14527 = sext i32 %14526 to i64
  %14528 = getelementptr inbounds double, ptr %14522, i64 %14527
  %14529 = load double, ptr %14528, align 8, !tbaa !11
  %14530 = call double @llvm.fmuladd.f64(double 0xBC83CC8A99AF5451, double %14529, double %14521)
  %14531 = load ptr, ptr %7, align 8, !tbaa !9
  %14532 = load i32, ptr %12, align 4, !tbaa !5
  %14533 = load i32, ptr %8, align 4, !tbaa !5
  %14534 = mul nsw i32 63, %14533
  %14535 = add nsw i32 %14532, %14534
  %14536 = sext i32 %14535 to i64
  %14537 = getelementptr inbounds double, ptr %14531, i64 %14536
  %14538 = load double, ptr %14537, align 8, !tbaa !11
  %14539 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %14538, double %14530)
  %14540 = load ptr, ptr %7, align 8, !tbaa !9
  %14541 = load i32, ptr %12, align 4, !tbaa !5
  %14542 = load i32, ptr %8, align 4, !tbaa !5
  %14543 = mul nsw i32 64, %14542
  %14544 = add nsw i32 %14541, %14543
  %14545 = sext i32 %14544 to i64
  %14546 = getelementptr inbounds double, ptr %14540, i64 %14545
  %14547 = load double, ptr %14546, align 8, !tbaa !11
  %14548 = call double @llvm.fmuladd.f64(double 0xBC50F876CCDF6CD8, double %14547, double %14539)
  %14549 = load ptr, ptr %7, align 8, !tbaa !9
  %14550 = load i32, ptr %12, align 4, !tbaa !5
  %14551 = load i32, ptr %8, align 4, !tbaa !5
  %14552 = mul nsw i32 65, %14551
  %14553 = add nsw i32 %14550, %14552
  %14554 = sext i32 %14553 to i64
  %14555 = getelementptr inbounds double, ptr %14549, i64 %14554
  %14556 = load double, ptr %14555, align 8, !tbaa !11
  %14557 = call double @llvm.fmuladd.f64(double 0x3C7F1CD9CCEEF238, double %14556, double %14548)
  %14558 = load ptr, ptr %7, align 8, !tbaa !9
  %14559 = load i32, ptr %12, align 4, !tbaa !5
  %14560 = load i32, ptr %8, align 4, !tbaa !5
  %14561 = mul nsw i32 66, %14560
  %14562 = add nsw i32 %14559, %14561
  %14563 = sext i32 %14562 to i64
  %14564 = getelementptr inbounds double, ptr %14558, i64 %14563
  %14565 = load double, ptr %14564, align 8, !tbaa !11
  %14566 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %14565, double %14557)
  %14567 = load ptr, ptr %7, align 8, !tbaa !9
  %14568 = load i32, ptr %12, align 4, !tbaa !5
  %14569 = load i32, ptr %8, align 4, !tbaa !5
  %14570 = mul nsw i32 67, %14569
  %14571 = add nsw i32 %14568, %14570
  %14572 = sext i32 %14571 to i64
  %14573 = getelementptr inbounds double, ptr %14567, i64 %14572
  %14574 = load double, ptr %14573, align 8, !tbaa !11
  %14575 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %14574, double %14566)
  store double %14575, ptr %11, align 8, !tbaa !11
  %14576 = load double, ptr %11, align 8, !tbaa !11
  %14577 = load ptr, ptr %9, align 8, !tbaa !9
  %14578 = load i32, ptr %12, align 4, !tbaa !5
  %14579 = load i32, ptr %10, align 4, !tbaa !5
  %14580 = mul nsw i32 50, %14579
  %14581 = add nsw i32 %14578, %14580
  %14582 = sext i32 %14581 to i64
  %14583 = getelementptr inbounds double, ptr %14577, i64 %14582
  store double %14576, ptr %14583, align 8, !tbaa !11
  %14584 = load ptr, ptr %7, align 8, !tbaa !9
  %14585 = load i32, ptr %12, align 4, !tbaa !5
  %14586 = load i32, ptr %8, align 4, !tbaa !5
  %14587 = mul nsw i32 21, %14586
  %14588 = add nsw i32 %14585, %14587
  %14589 = sext i32 %14588 to i64
  %14590 = getelementptr inbounds double, ptr %14584, i64 %14589
  %14591 = load double, ptr %14590, align 8, !tbaa !11
  %14592 = load ptr, ptr %7, align 8, !tbaa !9
  %14593 = load i32, ptr %12, align 4, !tbaa !5
  %14594 = load i32, ptr %8, align 4, !tbaa !5
  %14595 = mul nsw i32 22, %14594
  %14596 = add nsw i32 %14593, %14595
  %14597 = sext i32 %14596 to i64
  %14598 = getelementptr inbounds double, ptr %14592, i64 %14597
  %14599 = load double, ptr %14598, align 8, !tbaa !11
  %14600 = fmul double 0x3CB3FFFFFFFFFFFF, %14599
  %14601 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %14591, double %14600)
  %14602 = load ptr, ptr %7, align 8, !tbaa !9
  %14603 = load i32, ptr %12, align 4, !tbaa !5
  %14604 = load i32, ptr %8, align 4, !tbaa !5
  %14605 = mul nsw i32 23, %14604
  %14606 = add nsw i32 %14603, %14605
  %14607 = sext i32 %14606 to i64
  %14608 = getelementptr inbounds double, ptr %14602, i64 %14607
  %14609 = load double, ptr %14608, align 8, !tbaa !11
  %14610 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %14609, double %14601)
  %14611 = load ptr, ptr %7, align 8, !tbaa !9
  %14612 = load i32, ptr %12, align 4, !tbaa !5
  %14613 = load i32, ptr %8, align 4, !tbaa !5
  %14614 = mul nsw i32 24, %14613
  %14615 = add nsw i32 %14612, %14614
  %14616 = sext i32 %14615 to i64
  %14617 = getelementptr inbounds double, ptr %14611, i64 %14616
  %14618 = load double, ptr %14617, align 8, !tbaa !11
  %14619 = call double @llvm.fmuladd.f64(double 0x3FD6F2A1D7A492C4, double %14618, double %14610)
  %14620 = load ptr, ptr %7, align 8, !tbaa !9
  %14621 = load i32, ptr %12, align 4, !tbaa !5
  %14622 = load i32, ptr %8, align 4, !tbaa !5
  %14623 = mul nsw i32 25, %14622
  %14624 = add nsw i32 %14621, %14623
  %14625 = sext i32 %14624 to i64
  %14626 = getelementptr inbounds double, ptr %14620, i64 %14625
  %14627 = load double, ptr %14626, align 8, !tbaa !11
  %14628 = call double @llvm.fmuladd.f64(double 0x3FEAEBF44A8E7A95, double %14627, double %14619)
  %14629 = load ptr, ptr %7, align 8, !tbaa !9
  %14630 = load i32, ptr %12, align 4, !tbaa !5
  %14631 = load i32, ptr %8, align 4, !tbaa !5
  %14632 = mul nsw i32 26, %14631
  %14633 = add nsw i32 %14630, %14632
  %14634 = sext i32 %14633 to i64
  %14635 = getelementptr inbounds double, ptr %14629, i64 %14634
  %14636 = load double, ptr %14635, align 8, !tbaa !11
  %14637 = call double @llvm.fmuladd.f64(double 0x3FEAEBF44A8E7A9A, double %14636, double %14628)
  %14638 = load ptr, ptr %7, align 8, !tbaa !9
  %14639 = load i32, ptr %12, align 4, !tbaa !5
  %14640 = load i32, ptr %8, align 4, !tbaa !5
  %14641 = mul nsw i32 27, %14640
  %14642 = add nsw i32 %14639, %14641
  %14643 = sext i32 %14642 to i64
  %14644 = getelementptr inbounds double, ptr %14638, i64 %14643
  %14645 = load double, ptr %14644, align 8, !tbaa !11
  %14646 = call double @llvm.fmuladd.f64(double 0x3FD6F2A1D7A492D5, double %14645, double %14637)
  %14647 = load ptr, ptr %7, align 8, !tbaa !9
  %14648 = load i32, ptr %12, align 4, !tbaa !5
  %14649 = load i32, ptr %8, align 4, !tbaa !5
  %14650 = mul nsw i32 30, %14649
  %14651 = add nsw i32 %14648, %14650
  %14652 = sext i32 %14651 to i64
  %14653 = getelementptr inbounds double, ptr %14647, i64 %14652
  %14654 = load double, ptr %14653, align 8, !tbaa !11
  %14655 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %14654, double %14646)
  %14656 = load ptr, ptr %7, align 8, !tbaa !9
  %14657 = load i32, ptr %12, align 4, !tbaa !5
  %14658 = load i32, ptr %8, align 4, !tbaa !5
  %14659 = mul nsw i32 31, %14658
  %14660 = add nsw i32 %14657, %14659
  %14661 = sext i32 %14660 to i64
  %14662 = getelementptr inbounds double, ptr %14656, i64 %14661
  %14663 = load double, ptr %14662, align 8, !tbaa !11
  %14664 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %14663, double %14655)
  %14665 = load ptr, ptr %7, align 8, !tbaa !9
  %14666 = load i32, ptr %12, align 4, !tbaa !5
  %14667 = load i32, ptr %8, align 4, !tbaa !5
  %14668 = mul nsw i32 32, %14667
  %14669 = add nsw i32 %14666, %14668
  %14670 = sext i32 %14669 to i64
  %14671 = getelementptr inbounds double, ptr %14665, i64 %14670
  %14672 = load double, ptr %14671, align 8, !tbaa !11
  %14673 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %14672, double %14664)
  %14674 = load ptr, ptr %7, align 8, !tbaa !9
  %14675 = load i32, ptr %12, align 4, !tbaa !5
  %14676 = load i32, ptr %8, align 4, !tbaa !5
  %14677 = mul nsw i32 34, %14676
  %14678 = add nsw i32 %14675, %14677
  %14679 = sext i32 %14678 to i64
  %14680 = getelementptr inbounds double, ptr %14674, i64 %14679
  %14681 = load double, ptr %14680, align 8, !tbaa !11
  %14682 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %14681, double %14673)
  %14683 = load ptr, ptr %7, align 8, !tbaa !9
  %14684 = load i32, ptr %12, align 4, !tbaa !5
  %14685 = load i32, ptr %8, align 4, !tbaa !5
  %14686 = mul nsw i32 35, %14685
  %14687 = add nsw i32 %14684, %14686
  %14688 = sext i32 %14687 to i64
  %14689 = getelementptr inbounds double, ptr %14683, i64 %14688
  %14690 = load double, ptr %14689, align 8, !tbaa !11
  %14691 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %14690, double %14682)
  %14692 = load ptr, ptr %7, align 8, !tbaa !9
  %14693 = load i32, ptr %12, align 4, !tbaa !5
  %14694 = load i32, ptr %8, align 4, !tbaa !5
  %14695 = mul nsw i32 52, %14694
  %14696 = add nsw i32 %14693, %14695
  %14697 = sext i32 %14696 to i64
  %14698 = getelementptr inbounds double, ptr %14692, i64 %14697
  %14699 = load double, ptr %14698, align 8, !tbaa !11
  %14700 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %14699, double %14691)
  %14701 = load ptr, ptr %7, align 8, !tbaa !9
  %14702 = load i32, ptr %12, align 4, !tbaa !5
  %14703 = load i32, ptr %8, align 4, !tbaa !5
  %14704 = mul nsw i32 53, %14703
  %14705 = add nsw i32 %14702, %14704
  %14706 = sext i32 %14705 to i64
  %14707 = getelementptr inbounds double, ptr %14701, i64 %14706
  %14708 = load double, ptr %14707, align 8, !tbaa !11
  %14709 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %14708, double %14700)
  %14710 = load ptr, ptr %7, align 8, !tbaa !9
  %14711 = load i32, ptr %12, align 4, !tbaa !5
  %14712 = load i32, ptr %8, align 4, !tbaa !5
  %14713 = mul nsw i32 54, %14712
  %14714 = add nsw i32 %14711, %14713
  %14715 = sext i32 %14714 to i64
  %14716 = getelementptr inbounds double, ptr %14710, i64 %14715
  %14717 = load double, ptr %14716, align 8, !tbaa !11
  %14718 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %14717, double %14709)
  %14719 = load ptr, ptr %7, align 8, !tbaa !9
  %14720 = load i32, ptr %12, align 4, !tbaa !5
  %14721 = load i32, ptr %8, align 4, !tbaa !5
  %14722 = mul nsw i32 55, %14721
  %14723 = add nsw i32 %14720, %14722
  %14724 = sext i32 %14723 to i64
  %14725 = getelementptr inbounds double, ptr %14719, i64 %14724
  %14726 = load double, ptr %14725, align 8, !tbaa !11
  %14727 = call double @llvm.fmuladd.f64(double 0x3CB0F876CCDF6CD8, double %14726, double %14718)
  %14728 = load ptr, ptr %7, align 8, !tbaa !9
  %14729 = load i32, ptr %12, align 4, !tbaa !5
  %14730 = load i32, ptr %8, align 4, !tbaa !5
  %14731 = mul nsw i32 56, %14730
  %14732 = add nsw i32 %14729, %14731
  %14733 = sext i32 %14732 to i64
  %14734 = getelementptr inbounds double, ptr %14728, i64 %14733
  %14735 = load double, ptr %14734, align 8, !tbaa !11
  %14736 = call double @llvm.fmuladd.f64(double 0x3FA462D8D66D7FBE, double %14735, double %14727)
  %14737 = load ptr, ptr %7, align 8, !tbaa !9
  %14738 = load i32, ptr %12, align 4, !tbaa !5
  %14739 = load i32, ptr %8, align 4, !tbaa !5
  %14740 = mul nsw i32 57, %14739
  %14741 = add nsw i32 %14738, %14740
  %14742 = sext i32 %14741 to i64
  %14743 = getelementptr inbounds double, ptr %14737, i64 %14742
  %14744 = load double, ptr %14743, align 8, !tbaa !11
  %14745 = call double @llvm.fmuladd.f64(double 0xBFC5EA083165C4F6, double %14744, double %14736)
  %14746 = load ptr, ptr %7, align 8, !tbaa !9
  %14747 = load i32, ptr %12, align 4, !tbaa !5
  %14748 = load i32, ptr %8, align 4, !tbaa !5
  %14749 = mul nsw i32 58, %14748
  %14750 = add nsw i32 %14747, %14749
  %14751 = sext i32 %14750 to i64
  %14752 = getelementptr inbounds double, ptr %14746, i64 %14751
  %14753 = load double, ptr %14752, align 8, !tbaa !11
  %14754 = call double @llvm.fmuladd.f64(double 0x3FD4A299D1E97012, double %14753, double %14745)
  %14755 = load ptr, ptr %7, align 8, !tbaa !9
  %14756 = load i32, ptr %12, align 4, !tbaa !5
  %14757 = load i32, ptr %8, align 4, !tbaa !5
  %14758 = mul nsw i32 59, %14757
  %14759 = add nsw i32 %14756, %14758
  %14760 = sext i32 %14759 to i64
  %14761 = getelementptr inbounds double, ptr %14755, i64 %14760
  %14762 = load double, ptr %14761, align 8, !tbaa !11
  %14763 = call double @llvm.fmuladd.f64(double 0x400E488CB8C1EA78, double %14762, double %14754)
  %14764 = load ptr, ptr %7, align 8, !tbaa !9
  %14765 = load i32, ptr %12, align 4, !tbaa !5
  %14766 = load i32, ptr %8, align 4, !tbaa !5
  %14767 = mul nsw i32 60, %14766
  %14768 = add nsw i32 %14765, %14767
  %14769 = sext i32 %14768 to i64
  %14770 = getelementptr inbounds double, ptr %14764, i64 %14769
  %14771 = load double, ptr %14770, align 8, !tbaa !11
  %14772 = call double @llvm.fmuladd.f64(double 0x3C70F876CCDF6CD9, double %14771, double %14763)
  %14773 = load ptr, ptr %7, align 8, !tbaa !9
  %14774 = load i32, ptr %12, align 4, !tbaa !5
  %14775 = load i32, ptr %8, align 4, !tbaa !5
  %14776 = mul nsw i32 61, %14775
  %14777 = add nsw i32 %14774, %14776
  %14778 = sext i32 %14777 to i64
  %14779 = getelementptr inbounds double, ptr %14773, i64 %14778
  %14780 = load double, ptr %14779, align 8, !tbaa !11
  %14781 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %14780, double %14772)
  %14782 = load ptr, ptr %7, align 8, !tbaa !9
  %14783 = load i32, ptr %12, align 4, !tbaa !5
  %14784 = load i32, ptr %8, align 4, !tbaa !5
  %14785 = mul nsw i32 62, %14784
  %14786 = add nsw i32 %14783, %14785
  %14787 = sext i32 %14786 to i64
  %14788 = getelementptr inbounds double, ptr %14782, i64 %14787
  %14789 = load double, ptr %14788, align 8, !tbaa !11
  %14790 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %14789, double %14781)
  %14791 = load ptr, ptr %7, align 8, !tbaa !9
  %14792 = load i32, ptr %12, align 4, !tbaa !5
  %14793 = load i32, ptr %8, align 4, !tbaa !5
  %14794 = mul nsw i32 63, %14793
  %14795 = add nsw i32 %14792, %14794
  %14796 = sext i32 %14795 to i64
  %14797 = getelementptr inbounds double, ptr %14791, i64 %14796
  %14798 = load double, ptr %14797, align 8, !tbaa !11
  %14799 = call double @llvm.fmuladd.f64(double 0xBCC3CC8A99AF5452, double %14798, double %14790)
  %14800 = load ptr, ptr %7, align 8, !tbaa !9
  %14801 = load i32, ptr %12, align 4, !tbaa !5
  %14802 = load i32, ptr %8, align 4, !tbaa !5
  %14803 = mul nsw i32 64, %14802
  %14804 = add nsw i32 %14801, %14803
  %14805 = sext i32 %14804 to i64
  %14806 = getelementptr inbounds double, ptr %14800, i64 %14805
  %14807 = load double, ptr %14806, align 8, !tbaa !11
  %14808 = call double @llvm.fmuladd.f64(double 0x3C70F876CCDF6CD9, double %14807, double %14799)
  %14809 = load ptr, ptr %7, align 8, !tbaa !9
  %14810 = load i32, ptr %12, align 4, !tbaa !5
  %14811 = load i32, ptr %8, align 4, !tbaa !5
  %14812 = mul nsw i32 65, %14811
  %14813 = add nsw i32 %14810, %14812
  %14814 = sext i32 %14813 to i64
  %14815 = getelementptr inbounds double, ptr %14809, i64 %14814
  %14816 = load double, ptr %14815, align 8, !tbaa !11
  %14817 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %14816, double %14808)
  %14818 = load ptr, ptr %7, align 8, !tbaa !9
  %14819 = load i32, ptr %12, align 4, !tbaa !5
  %14820 = load i32, ptr %8, align 4, !tbaa !5
  %14821 = mul nsw i32 66, %14820
  %14822 = add nsw i32 %14819, %14821
  %14823 = sext i32 %14822 to i64
  %14824 = getelementptr inbounds double, ptr %14818, i64 %14823
  %14825 = load double, ptr %14824, align 8, !tbaa !11
  %14826 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %14825, double %14817)
  %14827 = load ptr, ptr %7, align 8, !tbaa !9
  %14828 = load i32, ptr %12, align 4, !tbaa !5
  %14829 = load i32, ptr %8, align 4, !tbaa !5
  %14830 = mul nsw i32 67, %14829
  %14831 = add nsw i32 %14828, %14830
  %14832 = sext i32 %14831 to i64
  %14833 = getelementptr inbounds double, ptr %14827, i64 %14832
  %14834 = load double, ptr %14833, align 8, !tbaa !11
  %14835 = call double @llvm.fmuladd.f64(double 0x3C96A09E667F3BCC, double %14834, double %14826)
  store double %14835, ptr %11, align 8, !tbaa !11
  %14836 = load double, ptr %11, align 8, !tbaa !11
  %14837 = load ptr, ptr %9, align 8, !tbaa !9
  %14838 = load i32, ptr %12, align 4, !tbaa !5
  %14839 = load i32, ptr %10, align 4, !tbaa !5
  %14840 = mul nsw i32 51, %14839
  %14841 = add nsw i32 %14838, %14840
  %14842 = sext i32 %14841 to i64
  %14843 = getelementptr inbounds double, ptr %14837, i64 %14842
  store double %14836, ptr %14843, align 8, !tbaa !11
  %14844 = load ptr, ptr %7, align 8, !tbaa !9
  %14845 = load i32, ptr %12, align 4, !tbaa !5
  %14846 = load i32, ptr %8, align 4, !tbaa !5
  %14847 = mul nsw i32 20, %14846
  %14848 = add nsw i32 %14845, %14847
  %14849 = sext i32 %14848 to i64
  %14850 = getelementptr inbounds double, ptr %14844, i64 %14849
  %14851 = load double, ptr %14850, align 8, !tbaa !11
  %14852 = load ptr, ptr %7, align 8, !tbaa !9
  %14853 = load i32, ptr %12, align 4, !tbaa !5
  %14854 = load i32, ptr %8, align 4, !tbaa !5
  %14855 = mul nsw i32 21, %14854
  %14856 = add nsw i32 %14853, %14855
  %14857 = sext i32 %14856 to i64
  %14858 = getelementptr inbounds double, ptr %14852, i64 %14857
  %14859 = load double, ptr %14858, align 8, !tbaa !11
  %14860 = fmul double 0x3C96000000000000, %14859
  %14861 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %14851, double %14860)
  %14862 = load ptr, ptr %7, align 8, !tbaa !9
  %14863 = load i32, ptr %12, align 4, !tbaa !5
  %14864 = load i32, ptr %8, align 4, !tbaa !5
  %14865 = mul nsw i32 22, %14864
  %14866 = add nsw i32 %14863, %14865
  %14867 = sext i32 %14866 to i64
  %14868 = getelementptr inbounds double, ptr %14862, i64 %14867
  %14869 = load double, ptr %14868, align 8, !tbaa !11
  %14870 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %14869, double %14861)
  %14871 = load ptr, ptr %7, align 8, !tbaa !9
  %14872 = load i32, ptr %12, align 4, !tbaa !5
  %14873 = load i32, ptr %8, align 4, !tbaa !5
  %14874 = mul nsw i32 23, %14873
  %14875 = add nsw i32 %14872, %14874
  %14876 = sext i32 %14875 to i64
  %14877 = getelementptr inbounds double, ptr %14871, i64 %14876
  %14878 = load double, ptr %14877, align 8, !tbaa !11
  %14879 = call double @llvm.fmuladd.f64(double 0x3CB8000000000001, double %14878, double %14870)
  %14880 = load ptr, ptr %7, align 8, !tbaa !9
  %14881 = load i32, ptr %12, align 4, !tbaa !5
  %14882 = load i32, ptr %8, align 4, !tbaa !5
  %14883 = mul nsw i32 24, %14882
  %14884 = add nsw i32 %14881, %14883
  %14885 = sext i32 %14884 to i64
  %14886 = getelementptr inbounds double, ptr %14880, i64 %14885
  %14887 = load double, ptr %14886, align 8, !tbaa !11
  %14888 = call double @llvm.fmuladd.f64(double 0xBFACD49071EC601E, double %14887, double %14879)
  %14889 = load ptr, ptr %7, align 8, !tbaa !9
  %14890 = load i32, ptr %12, align 4, !tbaa !5
  %14891 = load i32, ptr %8, align 4, !tbaa !5
  %14892 = mul nsw i32 25, %14891
  %14893 = add nsw i32 %14890, %14892
  %14894 = sext i32 %14893 to i64
  %14895 = getelementptr inbounds double, ptr %14889, i64 %14894
  %14896 = load double, ptr %14895, align 8, !tbaa !11
  %14897 = call double @llvm.fmuladd.f64(double 0x3FCEFDC8894D07FE, double %14896, double %14888)
  %14898 = load ptr, ptr %7, align 8, !tbaa !9
  %14899 = load i32, ptr %12, align 4, !tbaa !5
  %14900 = load i32, ptr %8, align 4, !tbaa !5
  %14901 = mul nsw i32 26, %14900
  %14902 = add nsw i32 %14899, %14901
  %14903 = sext i32 %14902 to i64
  %14904 = getelementptr inbounds double, ptr %14898, i64 %14903
  %14905 = load double, ptr %14904, align 8, !tbaa !11
  %14906 = call double @llvm.fmuladd.f64(double 0xBFDD2EB9CCB3BE36, double %14905, double %14897)
  %14907 = load ptr, ptr %7, align 8, !tbaa !9
  %14908 = load i32, ptr %12, align 4, !tbaa !5
  %14909 = load i32, ptr %8, align 4, !tbaa !5
  %14910 = mul nsw i32 27, %14909
  %14911 = add nsw i32 %14908, %14910
  %14912 = sext i32 %14911 to i64
  %14913 = getelementptr inbounds double, ptr %14907, i64 %14912
  %14914 = load double, ptr %14913, align 8, !tbaa !11
  %14915 = call double @llvm.fmuladd.f64(double 0xC01569E165D7940C, double %14914, double %14906)
  %14916 = load ptr, ptr %7, align 8, !tbaa !9
  %14917 = load i32, ptr %12, align 4, !tbaa !5
  %14918 = load i32, ptr %8, align 4, !tbaa !5
  %14919 = mul nsw i32 28, %14918
  %14920 = add nsw i32 %14917, %14919
  %14921 = sext i32 %14920 to i64
  %14922 = getelementptr inbounds double, ptr %14916, i64 %14921
  %14923 = load double, ptr %14922, align 8, !tbaa !11
  %14924 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %14923, double %14915)
  %14925 = load ptr, ptr %7, align 8, !tbaa !9
  %14926 = load i32, ptr %12, align 4, !tbaa !5
  %14927 = load i32, ptr %8, align 4, !tbaa !5
  %14928 = mul nsw i32 29, %14927
  %14929 = add nsw i32 %14926, %14928
  %14930 = sext i32 %14929 to i64
  %14931 = getelementptr inbounds double, ptr %14925, i64 %14930
  %14932 = load double, ptr %14931, align 8, !tbaa !11
  %14933 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %14932, double %14924)
  %14934 = load ptr, ptr %7, align 8, !tbaa !9
  %14935 = load i32, ptr %12, align 4, !tbaa !5
  %14936 = load i32, ptr %8, align 4, !tbaa !5
  %14937 = mul nsw i32 30, %14936
  %14938 = add nsw i32 %14935, %14937
  %14939 = sext i32 %14938 to i64
  %14940 = getelementptr inbounds double, ptr %14934, i64 %14939
  %14941 = load double, ptr %14940, align 8, !tbaa !11
  %14942 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %14941, double %14933)
  %14943 = load ptr, ptr %7, align 8, !tbaa !9
  %14944 = load i32, ptr %12, align 4, !tbaa !5
  %14945 = load i32, ptr %8, align 4, !tbaa !5
  %14946 = mul nsw i32 31, %14945
  %14947 = add nsw i32 %14944, %14946
  %14948 = sext i32 %14947 to i64
  %14949 = getelementptr inbounds double, ptr %14943, i64 %14948
  %14950 = load double, ptr %14949, align 8, !tbaa !11
  %14951 = call double @llvm.fmuladd.f64(double 0xBCC4800000000000, double %14950, double %14942)
  %14952 = load ptr, ptr %7, align 8, !tbaa !9
  %14953 = load i32, ptr %12, align 4, !tbaa !5
  %14954 = load i32, ptr %8, align 4, !tbaa !5
  %14955 = mul nsw i32 32, %14954
  %14956 = add nsw i32 %14953, %14955
  %14957 = sext i32 %14956 to i64
  %14958 = getelementptr inbounds double, ptr %14952, i64 %14957
  %14959 = load double, ptr %14958, align 8, !tbaa !11
  %14960 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %14959, double %14951)
  %14961 = load ptr, ptr %7, align 8, !tbaa !9
  %14962 = load i32, ptr %12, align 4, !tbaa !5
  %14963 = load i32, ptr %8, align 4, !tbaa !5
  %14964 = mul nsw i32 33, %14963
  %14965 = add nsw i32 %14962, %14964
  %14966 = sext i32 %14965 to i64
  %14967 = getelementptr inbounds double, ptr %14961, i64 %14966
  %14968 = load double, ptr %14967, align 8, !tbaa !11
  %14969 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %14968, double %14960)
  %14970 = load ptr, ptr %7, align 8, !tbaa !9
  %14971 = load i32, ptr %12, align 4, !tbaa !5
  %14972 = load i32, ptr %8, align 4, !tbaa !5
  %14973 = mul nsw i32 34, %14972
  %14974 = add nsw i32 %14971, %14973
  %14975 = sext i32 %14974 to i64
  %14976 = getelementptr inbounds double, ptr %14970, i64 %14975
  %14977 = load double, ptr %14976, align 8, !tbaa !11
  %14978 = call double @llvm.fmuladd.f64(double 0x3CA2FFFFFFFFFFFE, double %14977, double %14969)
  %14979 = load ptr, ptr %7, align 8, !tbaa !9
  %14980 = load i32, ptr %12, align 4, !tbaa !5
  %14981 = load i32, ptr %8, align 4, !tbaa !5
  %14982 = mul nsw i32 35, %14981
  %14983 = add nsw i32 %14980, %14982
  %14984 = sext i32 %14983 to i64
  %14985 = getelementptr inbounds double, ptr %14979, i64 %14984
  %14986 = load double, ptr %14985, align 8, !tbaa !11
  %14987 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %14986, double %14978)
  %14988 = load ptr, ptr %7, align 8, !tbaa !9
  %14989 = load i32, ptr %12, align 4, !tbaa !5
  %14990 = load i32, ptr %8, align 4, !tbaa !5
  %14991 = mul nsw i32 52, %14990
  %14992 = add nsw i32 %14989, %14991
  %14993 = sext i32 %14992 to i64
  %14994 = getelementptr inbounds double, ptr %14988, i64 %14993
  %14995 = load double, ptr %14994, align 8, !tbaa !11
  %14996 = call double @llvm.fmuladd.f64(double 0x3CB9DA84FC1C5FD3, double %14995, double %14987)
  %14997 = load ptr, ptr %7, align 8, !tbaa !9
  %14998 = load i32, ptr %12, align 4, !tbaa !5
  %14999 = load i32, ptr %8, align 4, !tbaa !5
  %15000 = mul nsw i32 54, %14999
  %15001 = add nsw i32 %14998, %15000
  %15002 = sext i32 %15001 to i64
  %15003 = getelementptr inbounds double, ptr %14997, i64 %15002
  %15004 = load double, ptr %15003, align 8, !tbaa !11
  %15005 = call double @llvm.fmuladd.f64(double 0xBC70F876CCDF6CD9, double %15004, double %14996)
  %15006 = load ptr, ptr %7, align 8, !tbaa !9
  %15007 = load i32, ptr %12, align 4, !tbaa !5
  %15008 = load i32, ptr %8, align 4, !tbaa !5
  %15009 = mul nsw i32 55, %15008
  %15010 = add nsw i32 %15007, %15009
  %15011 = sext i32 %15010 to i64
  %15012 = getelementptr inbounds double, ptr %15006, i64 %15011
  %15013 = load double, ptr %15012, align 8, !tbaa !11
  %15014 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %15013, double %15005)
  %15015 = load ptr, ptr %7, align 8, !tbaa !9
  %15016 = load i32, ptr %12, align 4, !tbaa !5
  %15017 = load i32, ptr %8, align 4, !tbaa !5
  %15018 = mul nsw i32 56, %15017
  %15019 = add nsw i32 %15016, %15018
  %15020 = sext i32 %15019 to i64
  %15021 = getelementptr inbounds double, ptr %15015, i64 %15020
  %15022 = load double, ptr %15021, align 8, !tbaa !11
  %15023 = call double @llvm.fmuladd.f64(double 0x400E488CB8C1EA66, double %15022, double %15014)
  %15024 = load ptr, ptr %7, align 8, !tbaa !9
  %15025 = load i32, ptr %12, align 4, !tbaa !5
  %15026 = load i32, ptr %8, align 4, !tbaa !5
  %15027 = mul nsw i32 57, %15026
  %15028 = add nsw i32 %15025, %15027
  %15029 = sext i32 %15028 to i64
  %15030 = getelementptr inbounds double, ptr %15024, i64 %15029
  %15031 = load double, ptr %15030, align 8, !tbaa !11
  %15032 = call double @llvm.fmuladd.f64(double 0x3FD4A299D1E9700C, double %15031, double %15023)
  %15033 = load ptr, ptr %7, align 8, !tbaa !9
  %15034 = load i32, ptr %12, align 4, !tbaa !5
  %15035 = load i32, ptr %8, align 4, !tbaa !5
  %15036 = mul nsw i32 58, %15035
  %15037 = add nsw i32 %15034, %15036
  %15038 = sext i32 %15037 to i64
  %15039 = getelementptr inbounds double, ptr %15033, i64 %15038
  %15040 = load double, ptr %15039, align 8, !tbaa !11
  %15041 = call double @llvm.fmuladd.f64(double 0xBFC5EA083165C4F9, double %15040, double %15032)
  %15042 = load ptr, ptr %7, align 8, !tbaa !9
  %15043 = load i32, ptr %12, align 4, !tbaa !5
  %15044 = load i32, ptr %8, align 4, !tbaa !5
  %15045 = mul nsw i32 59, %15044
  %15046 = add nsw i32 %15043, %15045
  %15047 = sext i32 %15046 to i64
  %15048 = getelementptr inbounds double, ptr %15042, i64 %15047
  %15049 = load double, ptr %15048, align 8, !tbaa !11
  %15050 = call double @llvm.fmuladd.f64(double 0x3FA462D8D66D7F7F, double %15049, double %15041)
  %15051 = load ptr, ptr %7, align 8, !tbaa !9
  %15052 = load i32, ptr %12, align 4, !tbaa !5
  %15053 = load i32, ptr %8, align 4, !tbaa !5
  %15054 = mul nsw i32 60, %15053
  %15055 = add nsw i32 %15052, %15054
  %15056 = sext i32 %15055 to i64
  %15057 = getelementptr inbounds double, ptr %15051, i64 %15056
  %15058 = load double, ptr %15057, align 8, !tbaa !11
  %15059 = call double @llvm.fmuladd.f64(double 0xBCABEE4386850DD1, double %15058, double %15050)
  %15060 = load ptr, ptr %7, align 8, !tbaa !9
  %15061 = load i32, ptr %12, align 4, !tbaa !5
  %15062 = load i32, ptr %8, align 4, !tbaa !5
  %15063 = mul nsw i32 61, %15062
  %15064 = add nsw i32 %15061, %15063
  %15065 = sext i32 %15064 to i64
  %15066 = getelementptr inbounds double, ptr %15060, i64 %15065
  %15067 = load double, ptr %15066, align 8, !tbaa !11
  %15068 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %15067, double %15059)
  %15069 = load ptr, ptr %7, align 8, !tbaa !9
  %15070 = load i32, ptr %12, align 4, !tbaa !5
  %15071 = load i32, ptr %8, align 4, !tbaa !5
  %15072 = mul nsw i32 62, %15071
  %15073 = add nsw i32 %15070, %15072
  %15074 = sext i32 %15073 to i64
  %15075 = getelementptr inbounds double, ptr %15069, i64 %15074
  %15076 = load double, ptr %15075, align 8, !tbaa !11
  %15077 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %15076, double %15068)
  %15078 = load ptr, ptr %7, align 8, !tbaa !9
  %15079 = load i32, ptr %12, align 4, !tbaa !5
  %15080 = load i32, ptr %8, align 4, !tbaa !5
  %15081 = mul nsw i32 63, %15080
  %15082 = add nsw i32 %15079, %15081
  %15083 = sext i32 %15082 to i64
  %15084 = getelementptr inbounds double, ptr %15078, i64 %15083
  %15085 = load double, ptr %15084, align 8, !tbaa !11
  %15086 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %15085, double %15077)
  %15087 = load ptr, ptr %7, align 8, !tbaa !9
  %15088 = load i32, ptr %12, align 4, !tbaa !5
  %15089 = load i32, ptr %8, align 4, !tbaa !5
  %15090 = mul nsw i32 64, %15089
  %15091 = add nsw i32 %15088, %15090
  %15092 = sext i32 %15091 to i64
  %15093 = getelementptr inbounds double, ptr %15087, i64 %15092
  %15094 = load double, ptr %15093, align 8, !tbaa !11
  %15095 = call double @llvm.fmuladd.f64(double 0x3CA02CD13B44F3C0, double %15094, double %15086)
  %15096 = load ptr, ptr %7, align 8, !tbaa !9
  %15097 = load i32, ptr %12, align 4, !tbaa !5
  %15098 = load i32, ptr %8, align 4, !tbaa !5
  %15099 = mul nsw i32 66, %15098
  %15100 = add nsw i32 %15097, %15099
  %15101 = sext i32 %15100 to i64
  %15102 = getelementptr inbounds double, ptr %15096, i64 %15101
  %15103 = load double, ptr %15102, align 8, !tbaa !11
  %15104 = call double @llvm.fmuladd.f64(double 0x3C70F876CCDF6CD9, double %15103, double %15095)
  %15105 = load ptr, ptr %7, align 8, !tbaa !9
  %15106 = load i32, ptr %12, align 4, !tbaa !5
  %15107 = load i32, ptr %8, align 4, !tbaa !5
  %15108 = mul nsw i32 67, %15107
  %15109 = add nsw i32 %15106, %15108
  %15110 = sext i32 %15109 to i64
  %15111 = getelementptr inbounds double, ptr %15105, i64 %15110
  %15112 = load double, ptr %15111, align 8, !tbaa !11
  %15113 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %15112, double %15104)
  store double %15113, ptr %11, align 8, !tbaa !11
  %15114 = load double, ptr %11, align 8, !tbaa !11
  %15115 = load ptr, ptr %9, align 8, !tbaa !9
  %15116 = load i32, ptr %12, align 4, !tbaa !5
  %15117 = load i32, ptr %10, align 4, !tbaa !5
  %15118 = mul nsw i32 52, %15117
  %15119 = add nsw i32 %15116, %15118
  %15120 = sext i32 %15119 to i64
  %15121 = getelementptr inbounds double, ptr %15115, i64 %15120
  store double %15114, ptr %15121, align 8, !tbaa !11
  %15122 = load ptr, ptr %7, align 8, !tbaa !9
  %15123 = load i32, ptr %12, align 4, !tbaa !5
  %15124 = load i32, ptr %8, align 4, !tbaa !5
  %15125 = mul nsw i32 20, %15124
  %15126 = add nsw i32 %15123, %15125
  %15127 = sext i32 %15126 to i64
  %15128 = getelementptr inbounds double, ptr %15122, i64 %15127
  %15129 = load double, ptr %15128, align 8, !tbaa !11
  %15130 = load ptr, ptr %7, align 8, !tbaa !9
  %15131 = load i32, ptr %12, align 4, !tbaa !5
  %15132 = load i32, ptr %8, align 4, !tbaa !5
  %15133 = mul nsw i32 21, %15132
  %15134 = add nsw i32 %15131, %15133
  %15135 = sext i32 %15134 to i64
  %15136 = getelementptr inbounds double, ptr %15130, i64 %15135
  %15137 = load double, ptr %15136, align 8, !tbaa !11
  %15138 = fmul double 0xBC78000000000002, %15137
  %15139 = call double @llvm.fmuladd.f64(double 0x3CB8000000000001, double %15129, double %15138)
  %15140 = load ptr, ptr %7, align 8, !tbaa !9
  %15141 = load i32, ptr %12, align 4, !tbaa !5
  %15142 = load i32, ptr %8, align 4, !tbaa !5
  %15143 = mul nsw i32 22, %15142
  %15144 = add nsw i32 %15141, %15143
  %15145 = sext i32 %15144 to i64
  %15146 = getelementptr inbounds double, ptr %15140, i64 %15145
  %15147 = load double, ptr %15146, align 8, !tbaa !11
  %15148 = call double @llvm.fmuladd.f64(double 0x3C92000000000000, double %15147, double %15139)
  %15149 = load ptr, ptr %7, align 8, !tbaa !9
  %15150 = load i32, ptr %12, align 4, !tbaa !5
  %15151 = load i32, ptr %8, align 4, !tbaa !5
  %15152 = mul nsw i32 23, %15151
  %15153 = add nsw i32 %15150, %15152
  %15154 = sext i32 %15153 to i64
  %15155 = getelementptr inbounds double, ptr %15149, i64 %15154
  %15156 = load double, ptr %15155, align 8, !tbaa !11
  %15157 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %15156, double %15148)
  %15158 = load ptr, ptr %7, align 8, !tbaa !9
  %15159 = load i32, ptr %12, align 4, !tbaa !5
  %15160 = load i32, ptr %8, align 4, !tbaa !5
  %15161 = mul nsw i32 24, %15160
  %15162 = add nsw i32 %15159, %15161
  %15163 = sext i32 %15162 to i64
  %15164 = getelementptr inbounds double, ptr %15158, i64 %15163
  %15165 = load double, ptr %15164, align 8, !tbaa !11
  %15166 = call double @llvm.fmuladd.f64(double 0xC01569E165D79415, double %15165, double %15157)
  %15167 = load ptr, ptr %7, align 8, !tbaa !9
  %15168 = load i32, ptr %12, align 4, !tbaa !5
  %15169 = load i32, ptr %8, align 4, !tbaa !5
  %15170 = mul nsw i32 25, %15169
  %15171 = add nsw i32 %15168, %15170
  %15172 = sext i32 %15171 to i64
  %15173 = getelementptr inbounds double, ptr %15167, i64 %15172
  %15174 = load double, ptr %15173, align 8, !tbaa !11
  %15175 = call double @llvm.fmuladd.f64(double 0xBFDD2EB9CCB3BDB8, double %15174, double %15166)
  %15176 = load ptr, ptr %7, align 8, !tbaa !9
  %15177 = load i32, ptr %12, align 4, !tbaa !5
  %15178 = load i32, ptr %8, align 4, !tbaa !5
  %15179 = mul nsw i32 26, %15178
  %15180 = add nsw i32 %15177, %15179
  %15181 = sext i32 %15180 to i64
  %15182 = getelementptr inbounds double, ptr %15176, i64 %15181
  %15183 = load double, ptr %15182, align 8, !tbaa !11
  %15184 = call double @llvm.fmuladd.f64(double 0x3FCEFDC8894D07B6, double %15183, double %15175)
  %15185 = load ptr, ptr %7, align 8, !tbaa !9
  %15186 = load i32, ptr %12, align 4, !tbaa !5
  %15187 = load i32, ptr %8, align 4, !tbaa !5
  %15188 = mul nsw i32 27, %15187
  %15189 = add nsw i32 %15186, %15188
  %15190 = sext i32 %15189 to i64
  %15191 = getelementptr inbounds double, ptr %15185, i64 %15190
  %15192 = load double, ptr %15191, align 8, !tbaa !11
  %15193 = call double @llvm.fmuladd.f64(double 0xBFACD49071EC5FCE, double %15192, double %15184)
  %15194 = load ptr, ptr %7, align 8, !tbaa !9
  %15195 = load i32, ptr %12, align 4, !tbaa !5
  %15196 = load i32, ptr %8, align 4, !tbaa !5
  %15197 = mul nsw i32 28, %15196
  %15198 = add nsw i32 %15195, %15197
  %15199 = sext i32 %15198 to i64
  %15200 = getelementptr inbounds double, ptr %15194, i64 %15199
  %15201 = load double, ptr %15200, align 8, !tbaa !11
  %15202 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %15201, double %15193)
  %15203 = load ptr, ptr %7, align 8, !tbaa !9
  %15204 = load i32, ptr %12, align 4, !tbaa !5
  %15205 = load i32, ptr %8, align 4, !tbaa !5
  %15206 = mul nsw i32 29, %15205
  %15207 = add nsw i32 %15204, %15206
  %15208 = sext i32 %15207 to i64
  %15209 = getelementptr inbounds double, ptr %15203, i64 %15208
  %15210 = load double, ptr %15209, align 8, !tbaa !11
  %15211 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %15210, double %15202)
  %15212 = load ptr, ptr %7, align 8, !tbaa !9
  %15213 = load i32, ptr %12, align 4, !tbaa !5
  %15214 = load i32, ptr %8, align 4, !tbaa !5
  %15215 = mul nsw i32 30, %15214
  %15216 = add nsw i32 %15213, %15215
  %15217 = sext i32 %15216 to i64
  %15218 = getelementptr inbounds double, ptr %15212, i64 %15217
  %15219 = load double, ptr %15218, align 8, !tbaa !11
  %15220 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %15219, double %15211)
  %15221 = load ptr, ptr %7, align 8, !tbaa !9
  %15222 = load i32, ptr %12, align 4, !tbaa !5
  %15223 = load i32, ptr %8, align 4, !tbaa !5
  %15224 = mul nsw i32 31, %15223
  %15225 = add nsw i32 %15222, %15224
  %15226 = sext i32 %15225 to i64
  %15227 = getelementptr inbounds double, ptr %15221, i64 %15226
  %15228 = load double, ptr %15227, align 8, !tbaa !11
  %15229 = call double @llvm.fmuladd.f64(double 0xBCA9FFFFFFFFFFFE, double %15228, double %15220)
  %15230 = load ptr, ptr %7, align 8, !tbaa !9
  %15231 = load i32, ptr %12, align 4, !tbaa !5
  %15232 = load i32, ptr %8, align 4, !tbaa !5
  %15233 = mul nsw i32 33, %15232
  %15234 = add nsw i32 %15231, %15233
  %15235 = sext i32 %15234 to i64
  %15236 = getelementptr inbounds double, ptr %15230, i64 %15235
  %15237 = load double, ptr %15236, align 8, !tbaa !11
  %15238 = call double @llvm.fmuladd.f64(double 0x3CA2FFFFFFFFFFFE, double %15237, double %15229)
  %15239 = load ptr, ptr %7, align 8, !tbaa !9
  %15240 = load i32, ptr %12, align 4, !tbaa !5
  %15241 = load i32, ptr %8, align 4, !tbaa !5
  %15242 = mul nsw i32 34, %15241
  %15243 = add nsw i32 %15240, %15242
  %15244 = sext i32 %15243 to i64
  %15245 = getelementptr inbounds double, ptr %15239, i64 %15244
  %15246 = load double, ptr %15245, align 8, !tbaa !11
  %15247 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %15246, double %15238)
  %15248 = load ptr, ptr %7, align 8, !tbaa !9
  %15249 = load i32, ptr %12, align 4, !tbaa !5
  %15250 = load i32, ptr %8, align 4, !tbaa !5
  %15251 = mul nsw i32 35, %15250
  %15252 = add nsw i32 %15249, %15251
  %15253 = sext i32 %15252 to i64
  %15254 = getelementptr inbounds double, ptr %15248, i64 %15253
  %15255 = load double, ptr %15254, align 8, !tbaa !11
  %15256 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %15255, double %15247)
  %15257 = load ptr, ptr %7, align 8, !tbaa !9
  %15258 = load i32, ptr %12, align 4, !tbaa !5
  %15259 = load i32, ptr %8, align 4, !tbaa !5
  %15260 = mul nsw i32 52, %15259
  %15261 = add nsw i32 %15258, %15260
  %15262 = sext i32 %15261 to i64
  %15263 = getelementptr inbounds double, ptr %15257, i64 %15262
  %15264 = load double, ptr %15263, align 8, !tbaa !11
  %15265 = call double @llvm.fmuladd.f64(double 0x3C93F9CBD67C52CA, double %15264, double %15256)
  %15266 = load ptr, ptr %7, align 8, !tbaa !9
  %15267 = load i32, ptr %12, align 4, !tbaa !5
  %15268 = load i32, ptr %8, align 4, !tbaa !5
  %15269 = mul nsw i32 53, %15268
  %15270 = add nsw i32 %15267, %15269
  %15271 = sext i32 %15270 to i64
  %15272 = getelementptr inbounds double, ptr %15266, i64 %15271
  %15273 = load double, ptr %15272, align 8, !tbaa !11
  %15274 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %15273, double %15265)
  %15275 = load ptr, ptr %7, align 8, !tbaa !9
  %15276 = load i32, ptr %12, align 4, !tbaa !5
  %15277 = load i32, ptr %8, align 4, !tbaa !5
  %15278 = mul nsw i32 54, %15277
  %15279 = add nsw i32 %15276, %15278
  %15280 = sext i32 %15279 to i64
  %15281 = getelementptr inbounds double, ptr %15275, i64 %15280
  %15282 = load double, ptr %15281, align 8, !tbaa !11
  %15283 = call double @llvm.fmuladd.f64(double 0xBC8F1CD9CCEEF238, double %15282, double %15274)
  %15284 = load ptr, ptr %7, align 8, !tbaa !9
  %15285 = load i32, ptr %12, align 4, !tbaa !5
  %15286 = load i32, ptr %8, align 4, !tbaa !5
  %15287 = mul nsw i32 55, %15286
  %15288 = add nsw i32 %15285, %15287
  %15289 = sext i32 %15288 to i64
  %15290 = getelementptr inbounds double, ptr %15284, i64 %15289
  %15291 = load double, ptr %15290, align 8, !tbaa !11
  %15292 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %15291, double %15283)
  %15293 = load ptr, ptr %7, align 8, !tbaa !9
  %15294 = load i32, ptr %12, align 4, !tbaa !5
  %15295 = load i32, ptr %8, align 4, !tbaa !5
  %15296 = mul nsw i32 56, %15295
  %15297 = add nsw i32 %15294, %15296
  %15298 = sext i32 %15297 to i64
  %15299 = getelementptr inbounds double, ptr %15293, i64 %15298
  %15300 = load double, ptr %15299, align 8, !tbaa !11
  %15301 = call double @llvm.fmuladd.f64(double 0xBFD039FE04F71643, double %15300, double %15292)
  %15302 = load ptr, ptr %7, align 8, !tbaa !9
  %15303 = load i32, ptr %12, align 4, !tbaa !5
  %15304 = load i32, ptr %8, align 4, !tbaa !5
  %15305 = mul nsw i32 57, %15304
  %15306 = add nsw i32 %15303, %15305
  %15307 = sext i32 %15306 to i64
  %15308 = getelementptr inbounds double, ptr %15302, i64 %15307
  %15309 = load double, ptr %15308, align 8, !tbaa !11
  %15310 = call double @llvm.fmuladd.f64(double 0xBFE30958FBF81244, double %15309, double %15301)
  %15311 = load ptr, ptr %7, align 8, !tbaa !9
  %15312 = load i32, ptr %12, align 4, !tbaa !5
  %15313 = load i32, ptr %8, align 4, !tbaa !5
  %15314 = mul nsw i32 58, %15313
  %15315 = add nsw i32 %15312, %15314
  %15316 = sext i32 %15315 to i64
  %15317 = getelementptr inbounds double, ptr %15311, i64 %15316
  %15318 = load double, ptr %15317, align 8, !tbaa !11
  %15319 = call double @llvm.fmuladd.f64(double 0xBFE30958FBF81231, double %15318, double %15310)
  %15320 = load ptr, ptr %7, align 8, !tbaa !9
  %15321 = load i32, ptr %12, align 4, !tbaa !5
  %15322 = load i32, ptr %8, align 4, !tbaa !5
  %15323 = mul nsw i32 59, %15322
  %15324 = add nsw i32 %15321, %15323
  %15325 = sext i32 %15324 to i64
  %15326 = getelementptr inbounds double, ptr %15320, i64 %15325
  %15327 = load double, ptr %15326, align 8, !tbaa !11
  %15328 = call double @llvm.fmuladd.f64(double 0xBFD039FE04F71638, double %15327, double %15319)
  %15329 = load ptr, ptr %7, align 8, !tbaa !9
  %15330 = load i32, ptr %12, align 4, !tbaa !5
  %15331 = load i32, ptr %8, align 4, !tbaa !5
  %15332 = mul nsw i32 60, %15331
  %15333 = add nsw i32 %15330, %15332
  %15334 = sext i32 %15333 to i64
  %15335 = getelementptr inbounds double, ptr %15329, i64 %15334
  %15336 = load double, ptr %15335, align 8, !tbaa !11
  %15337 = call double @llvm.fmuladd.f64(double 0x3C9CFDCAF353049B, double %15336, double %15328)
  %15338 = load ptr, ptr %7, align 8, !tbaa !9
  %15339 = load i32, ptr %12, align 4, !tbaa !5
  %15340 = load i32, ptr %8, align 4, !tbaa !5
  %15341 = mul nsw i32 61, %15340
  %15342 = add nsw i32 %15339, %15341
  %15343 = sext i32 %15342 to i64
  %15344 = getelementptr inbounds double, ptr %15338, i64 %15343
  %15345 = load double, ptr %15344, align 8, !tbaa !11
  %15346 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %15345, double %15337)
  %15347 = load ptr, ptr %7, align 8, !tbaa !9
  %15348 = load i32, ptr %12, align 4, !tbaa !5
  %15349 = load i32, ptr %8, align 4, !tbaa !5
  %15350 = mul nsw i32 62, %15349
  %15351 = add nsw i32 %15348, %15350
  %15352 = sext i32 %15351 to i64
  %15353 = getelementptr inbounds double, ptr %15347, i64 %15352
  %15354 = load double, ptr %15353, align 8, !tbaa !11
  %15355 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %15354, double %15346)
  %15356 = load ptr, ptr %7, align 8, !tbaa !9
  %15357 = load i32, ptr %12, align 4, !tbaa !5
  %15358 = load i32, ptr %8, align 4, !tbaa !5
  %15359 = mul nsw i32 63, %15358
  %15360 = add nsw i32 %15357, %15359
  %15361 = sext i32 %15360 to i64
  %15362 = getelementptr inbounds double, ptr %15356, i64 %15361
  %15363 = load double, ptr %15362, align 8, !tbaa !11
  %15364 = call double @llvm.fmuladd.f64(double 0x3CA3CC8A99AF5452, double %15363, double %15355)
  %15365 = load ptr, ptr %7, align 8, !tbaa !9
  %15366 = load i32, ptr %12, align 4, !tbaa !5
  %15367 = load i32, ptr %8, align 4, !tbaa !5
  %15368 = mul nsw i32 64, %15367
  %15369 = add nsw i32 %15366, %15368
  %15370 = sext i32 %15369 to i64
  %15371 = getelementptr inbounds double, ptr %15365, i64 %15370
  %15372 = load double, ptr %15371, align 8, !tbaa !11
  %15373 = call double @llvm.fmuladd.f64(double 0xBC8152F9467969C8, double %15372, double %15364)
  %15374 = load ptr, ptr %7, align 8, !tbaa !9
  %15375 = load i32, ptr %12, align 4, !tbaa !5
  %15376 = load i32, ptr %8, align 4, !tbaa !5
  %15377 = mul nsw i32 65, %15376
  %15378 = add nsw i32 %15375, %15377
  %15379 = sext i32 %15378 to i64
  %15380 = getelementptr inbounds double, ptr %15374, i64 %15379
  %15381 = load double, ptr %15380, align 8, !tbaa !11
  %15382 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %15381, double %15373)
  %15383 = load ptr, ptr %7, align 8, !tbaa !9
  %15384 = load i32, ptr %12, align 4, !tbaa !5
  %15385 = load i32, ptr %8, align 4, !tbaa !5
  %15386 = mul nsw i32 66, %15385
  %15387 = add nsw i32 %15384, %15386
  %15388 = sext i32 %15387 to i64
  %15389 = getelementptr inbounds double, ptr %15383, i64 %15388
  %15390 = load double, ptr %15389, align 8, !tbaa !11
  %15391 = call double @llvm.fmuladd.f64(double 0xBC926280B3476096, double %15390, double %15382)
  %15392 = load ptr, ptr %7, align 8, !tbaa !9
  %15393 = load i32, ptr %12, align 4, !tbaa !5
  %15394 = load i32, ptr %8, align 4, !tbaa !5
  %15395 = mul nsw i32 67, %15394
  %15396 = add nsw i32 %15393, %15395
  %15397 = sext i32 %15396 to i64
  %15398 = getelementptr inbounds double, ptr %15392, i64 %15397
  %15399 = load double, ptr %15398, align 8, !tbaa !11
  %15400 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %15399, double %15391)
  store double %15400, ptr %11, align 8, !tbaa !11
  %15401 = load double, ptr %11, align 8, !tbaa !11
  %15402 = load ptr, ptr %9, align 8, !tbaa !9
  %15403 = load i32, ptr %12, align 4, !tbaa !5
  %15404 = load i32, ptr %10, align 4, !tbaa !5
  %15405 = mul nsw i32 53, %15404
  %15406 = add nsw i32 %15403, %15405
  %15407 = sext i32 %15406 to i64
  %15408 = getelementptr inbounds double, ptr %15402, i64 %15407
  store double %15401, ptr %15408, align 8, !tbaa !11
  %15409 = load ptr, ptr %7, align 8, !tbaa !9
  %15410 = load i32, ptr %12, align 4, !tbaa !5
  %15411 = load i32, ptr %8, align 4, !tbaa !5
  %15412 = mul nsw i32 20, %15411
  %15413 = add nsw i32 %15410, %15412
  %15414 = sext i32 %15413 to i64
  %15415 = getelementptr inbounds double, ptr %15409, i64 %15414
  %15416 = load double, ptr %15415, align 8, !tbaa !11
  %15417 = load ptr, ptr %7, align 8, !tbaa !9
  %15418 = load i32, ptr %12, align 4, !tbaa !5
  %15419 = load i32, ptr %8, align 4, !tbaa !5
  %15420 = mul nsw i32 21, %15419
  %15421 = add nsw i32 %15418, %15420
  %15422 = sext i32 %15421 to i64
  %15423 = getelementptr inbounds double, ptr %15417, i64 %15422
  %15424 = load double, ptr %15423, align 8, !tbaa !11
  %15425 = fmul double 0x3C70000000000001, %15424
  %15426 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %15416, double %15425)
  %15427 = load ptr, ptr %7, align 8, !tbaa !9
  %15428 = load i32, ptr %12, align 4, !tbaa !5
  %15429 = load i32, ptr %8, align 4, !tbaa !5
  %15430 = mul nsw i32 22, %15429
  %15431 = add nsw i32 %15428, %15430
  %15432 = sext i32 %15431 to i64
  %15433 = getelementptr inbounds double, ptr %15427, i64 %15432
  %15434 = load double, ptr %15433, align 8, !tbaa !11
  %15435 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %15434, double %15426)
  %15436 = load ptr, ptr %7, align 8, !tbaa !9
  %15437 = load i32, ptr %12, align 4, !tbaa !5
  %15438 = load i32, ptr %8, align 4, !tbaa !5
  %15439 = mul nsw i32 24, %15438
  %15440 = add nsw i32 %15437, %15439
  %15441 = sext i32 %15440 to i64
  %15442 = getelementptr inbounds double, ptr %15436, i64 %15441
  %15443 = load double, ptr %15442, align 8, !tbaa !11
  %15444 = call double @llvm.fmuladd.f64(double 0xBFAC37F3CCE9FD18, double %15443, double %15435)
  %15445 = load ptr, ptr %7, align 8, !tbaa !9
  %15446 = load i32, ptr %12, align 4, !tbaa !5
  %15447 = load i32, ptr %8, align 4, !tbaa !5
  %15448 = mul nsw i32 25, %15447
  %15449 = add nsw i32 %15446, %15448
  %15450 = sext i32 %15449 to i64
  %15451 = getelementptr inbounds double, ptr %15445, i64 %15450
  %15452 = load double, ptr %15451, align 8, !tbaa !11
  %15453 = call double @llvm.fmuladd.f64(double 0xBFB4C23AD63BEF9A, double %15452, double %15444)
  %15454 = load ptr, ptr %7, align 8, !tbaa !9
  %15455 = load i32, ptr %12, align 4, !tbaa !5
  %15456 = load i32, ptr %8, align 4, !tbaa !5
  %15457 = mul nsw i32 26, %15456
  %15458 = add nsw i32 %15455, %15457
  %15459 = sext i32 %15458 to i64
  %15460 = getelementptr inbounds double, ptr %15454, i64 %15459
  %15461 = load double, ptr %15460, align 8, !tbaa !11
  %15462 = call double @llvm.fmuladd.f64(double 0x3FEFAD7976B5DE29, double %15461, double %15453)
  %15463 = load ptr, ptr %7, align 8, !tbaa !9
  %15464 = load i32, ptr %12, align 4, !tbaa !5
  %15465 = load i32, ptr %8, align 4, !tbaa !5
  %15466 = mul nsw i32 27, %15465
  %15467 = add nsw i32 %15464, %15466
  %15468 = sext i32 %15467 to i64
  %15469 = getelementptr inbounds double, ptr %15463, i64 %15468
  %15470 = load double, ptr %15469, align 8, !tbaa !11
  %15471 = call double @llvm.fmuladd.f64(double 0x3FF043C98657E812, double %15470, double %15462)
  %15472 = load ptr, ptr %7, align 8, !tbaa !9
  %15473 = load i32, ptr %12, align 4, !tbaa !5
  %15474 = load i32, ptr %8, align 4, !tbaa !5
  %15475 = mul nsw i32 28, %15474
  %15476 = add nsw i32 %15473, %15475
  %15477 = sext i32 %15476 to i64
  %15478 = getelementptr inbounds double, ptr %15472, i64 %15477
  %15479 = load double, ptr %15478, align 8, !tbaa !11
  %15480 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %15479, double %15471)
  %15481 = load ptr, ptr %7, align 8, !tbaa !9
  %15482 = load i32, ptr %12, align 4, !tbaa !5
  %15483 = load i32, ptr %8, align 4, !tbaa !5
  %15484 = mul nsw i32 30, %15483
  %15485 = add nsw i32 %15482, %15484
  %15486 = sext i32 %15485 to i64
  %15487 = getelementptr inbounds double, ptr %15481, i64 %15486
  %15488 = load double, ptr %15487, align 8, !tbaa !11
  %15489 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %15488, double %15480)
  %15490 = load ptr, ptr %7, align 8, !tbaa !9
  %15491 = load i32, ptr %12, align 4, !tbaa !5
  %15492 = load i32, ptr %8, align 4, !tbaa !5
  %15493 = mul nsw i32 31, %15492
  %15494 = add nsw i32 %15491, %15493
  %15495 = sext i32 %15494 to i64
  %15496 = getelementptr inbounds double, ptr %15490, i64 %15495
  %15497 = load double, ptr %15496, align 8, !tbaa !11
  %15498 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %15497, double %15489)
  %15499 = load ptr, ptr %7, align 8, !tbaa !9
  %15500 = load i32, ptr %12, align 4, !tbaa !5
  %15501 = load i32, ptr %8, align 4, !tbaa !5
  %15502 = mul nsw i32 32, %15501
  %15503 = add nsw i32 %15500, %15502
  %15504 = sext i32 %15503 to i64
  %15505 = getelementptr inbounds double, ptr %15499, i64 %15504
  %15506 = load double, ptr %15505, align 8, !tbaa !11
  %15507 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %15506, double %15498)
  %15508 = load ptr, ptr %7, align 8, !tbaa !9
  %15509 = load i32, ptr %12, align 4, !tbaa !5
  %15510 = load i32, ptr %8, align 4, !tbaa !5
  %15511 = mul nsw i32 33, %15510
  %15512 = add nsw i32 %15509, %15511
  %15513 = sext i32 %15512 to i64
  %15514 = getelementptr inbounds double, ptr %15508, i64 %15513
  %15515 = load double, ptr %15514, align 8, !tbaa !11
  %15516 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %15515, double %15507)
  %15517 = load ptr, ptr %7, align 8, !tbaa !9
  %15518 = load i32, ptr %12, align 4, !tbaa !5
  %15519 = load i32, ptr %8, align 4, !tbaa !5
  %15520 = mul nsw i32 52, %15519
  %15521 = add nsw i32 %15518, %15520
  %15522 = sext i32 %15521 to i64
  %15523 = getelementptr inbounds double, ptr %15517, i64 %15522
  %15524 = load double, ptr %15523, align 8, !tbaa !11
  %15525 = call double @llvm.fmuladd.f64(double 0x3C7DB2CFE686FE7B, double %15524, double %15516)
  %15526 = load ptr, ptr %7, align 8, !tbaa !9
  %15527 = load i32, ptr %12, align 4, !tbaa !5
  %15528 = load i32, ptr %8, align 4, !tbaa !5
  %15529 = mul nsw i32 53, %15528
  %15530 = add nsw i32 %15527, %15529
  %15531 = sext i32 %15530 to i64
  %15532 = getelementptr inbounds double, ptr %15526, i64 %15531
  %15533 = load double, ptr %15532, align 8, !tbaa !11
  %15534 = call double @llvm.fmuladd.f64(double 0x3C91AD7BC01366B7, double %15533, double %15525)
  %15535 = load ptr, ptr %7, align 8, !tbaa !9
  %15536 = load i32, ptr %12, align 4, !tbaa !5
  %15537 = load i32, ptr %8, align 4, !tbaa !5
  %15538 = mul nsw i32 54, %15537
  %15539 = add nsw i32 %15536, %15538
  %15540 = sext i32 %15539 to i64
  %15541 = getelementptr inbounds double, ptr %15535, i64 %15540
  %15542 = load double, ptr %15541, align 8, !tbaa !11
  %15543 = call double @llvm.fmuladd.f64(double 0x3C56A09E667F3BCC, double %15542, double %15534)
  %15544 = load ptr, ptr %7, align 8, !tbaa !9
  %15545 = load i32, ptr %12, align 4, !tbaa !5
  %15546 = load i32, ptr %8, align 4, !tbaa !5
  %15547 = mul nsw i32 55, %15546
  %15548 = add nsw i32 %15545, %15547
  %15549 = sext i32 %15548 to i64
  %15550 = getelementptr inbounds double, ptr %15544, i64 %15549
  %15551 = load double, ptr %15550, align 8, !tbaa !11
  %15552 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %15551, double %15543)
  %15553 = load ptr, ptr %7, align 8, !tbaa !9
  %15554 = load i32, ptr %12, align 4, !tbaa !5
  %15555 = load i32, ptr %8, align 4, !tbaa !5
  %15556 = mul nsw i32 56, %15555
  %15557 = add nsw i32 %15554, %15556
  %15558 = sext i32 %15557 to i64
  %15559 = getelementptr inbounds double, ptr %15553, i64 %15558
  %15560 = load double, ptr %15559, align 8, !tbaa !11
  %15561 = call double @llvm.fmuladd.f64(double 0x3FD08C54FF101A10, double %15560, double %15552)
  %15562 = load ptr, ptr %7, align 8, !tbaa !9
  %15563 = load i32, ptr %12, align 4, !tbaa !5
  %15564 = load i32, ptr %8, align 4, !tbaa !5
  %15565 = mul nsw i32 57, %15564
  %15566 = add nsw i32 %15563, %15565
  %15567 = sext i32 %15566 to i64
  %15568 = getelementptr inbounds double, ptr %15562, i64 %15567
  %15569 = load double, ptr %15568, align 8, !tbaa !11
  %15570 = call double @llvm.fmuladd.f64(double 0x4007001BD846D0B2, double %15569, double %15561)
  %15571 = load ptr, ptr %7, align 8, !tbaa !9
  %15572 = load i32, ptr %12, align 4, !tbaa !5
  %15573 = load i32, ptr %8, align 4, !tbaa !5
  %15574 = mul nsw i32 58, %15573
  %15575 = add nsw i32 %15572, %15574
  %15576 = sext i32 %15575 to i64
  %15577 = getelementptr inbounds double, ptr %15571, i64 %15576
  %15578 = load double, ptr %15577, align 8, !tbaa !11
  %15579 = call double @llvm.fmuladd.f64(double 0x3FD0C7817D9C3137, double %15578, double %15570)
  %15580 = load ptr, ptr %7, align 8, !tbaa !9
  %15581 = load i32, ptr %12, align 4, !tbaa !5
  %15582 = load i32, ptr %8, align 4, !tbaa !5
  %15583 = mul nsw i32 59, %15582
  %15584 = add nsw i32 %15581, %15583
  %15585 = sext i32 %15584 to i64
  %15586 = getelementptr inbounds double, ptr %15580, i64 %15585
  %15587 = load double, ptr %15586, align 8, !tbaa !11
  %15588 = call double @llvm.fmuladd.f64(double 0xBFB8DF388696F54E, double %15587, double %15579)
  %15589 = load ptr, ptr %7, align 8, !tbaa !9
  %15590 = load i32, ptr %12, align 4, !tbaa !5
  %15591 = load i32, ptr %8, align 4, !tbaa !5
  %15592 = mul nsw i32 60, %15591
  %15593 = add nsw i32 %15590, %15592
  %15594 = sext i32 %15593 to i64
  %15595 = getelementptr inbounds double, ptr %15589, i64 %15594
  %15596 = load double, ptr %15595, align 8, !tbaa !11
  %15597 = call double @llvm.fmuladd.f64(double 0xBC93CC8A99AF5452, double %15596, double %15588)
  %15598 = load ptr, ptr %7, align 8, !tbaa !9
  %15599 = load i32, ptr %12, align 4, !tbaa !5
  %15600 = load i32, ptr %8, align 4, !tbaa !5
  %15601 = mul nsw i32 61, %15600
  %15602 = add nsw i32 %15599, %15601
  %15603 = sext i32 %15602 to i64
  %15604 = getelementptr inbounds double, ptr %15598, i64 %15603
  %15605 = load double, ptr %15604, align 8, !tbaa !11
  %15606 = call double @llvm.fmuladd.f64(double 0xBCA6A09E667F3BCC, double %15605, double %15597)
  %15607 = load ptr, ptr %7, align 8, !tbaa !9
  %15608 = load i32, ptr %12, align 4, !tbaa !5
  %15609 = load i32, ptr %8, align 4, !tbaa !5
  %15610 = mul nsw i32 62, %15609
  %15611 = add nsw i32 %15608, %15610
  %15612 = sext i32 %15611 to i64
  %15613 = getelementptr inbounds double, ptr %15607, i64 %15612
  %15614 = load double, ptr %15613, align 8, !tbaa !11
  %15615 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %15614, double %15606)
  %15616 = load ptr, ptr %7, align 8, !tbaa !9
  %15617 = load i32, ptr %12, align 4, !tbaa !5
  %15618 = load i32, ptr %8, align 4, !tbaa !5
  %15619 = mul nsw i32 63, %15618
  %15620 = add nsw i32 %15617, %15619
  %15621 = sext i32 %15620 to i64
  %15622 = getelementptr inbounds double, ptr %15616, i64 %15621
  %15623 = load double, ptr %15622, align 8, !tbaa !11
  %15624 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %15623, double %15615)
  %15625 = load ptr, ptr %7, align 8, !tbaa !9
  %15626 = load i32, ptr %12, align 4, !tbaa !5
  %15627 = load i32, ptr %8, align 4, !tbaa !5
  %15628 = mul nsw i32 64, %15627
  %15629 = add nsw i32 %15626, %15628
  %15630 = sext i32 %15629 to i64
  %15631 = getelementptr inbounds double, ptr %15625, i64 %15630
  %15632 = load double, ptr %15631, align 8, !tbaa !11
  %15633 = call double @llvm.fmuladd.f64(double 0xBC8A29B726831D24, double %15632, double %15624)
  %15634 = load ptr, ptr %7, align 8, !tbaa !9
  %15635 = load i32, ptr %12, align 4, !tbaa !5
  %15636 = load i32, ptr %8, align 4, !tbaa !5
  %15637 = mul nsw i32 65, %15636
  %15638 = add nsw i32 %15635, %15637
  %15639 = sext i32 %15638 to i64
  %15640 = getelementptr inbounds double, ptr %15634, i64 %15639
  %15641 = load double, ptr %15640, align 8, !tbaa !11
  %15642 = call double @llvm.fmuladd.f64(double 0x3C73CC8A99AF5453, double %15641, double %15633)
  %15643 = load ptr, ptr %7, align 8, !tbaa !9
  %15644 = load i32, ptr %12, align 4, !tbaa !5
  %15645 = load i32, ptr %8, align 4, !tbaa !5
  %15646 = mul nsw i32 66, %15645
  %15647 = add nsw i32 %15644, %15646
  %15648 = sext i32 %15647 to i64
  %15649 = getelementptr inbounds double, ptr %15643, i64 %15648
  %15650 = load double, ptr %15649, align 8, !tbaa !11
  %15651 = call double @llvm.fmuladd.f64(double 0xBC56A09E667F3BCC, double %15650, double %15642)
  %15652 = load ptr, ptr %7, align 8, !tbaa !9
  %15653 = load i32, ptr %12, align 4, !tbaa !5
  %15654 = load i32, ptr %8, align 4, !tbaa !5
  %15655 = mul nsw i32 67, %15654
  %15656 = add nsw i32 %15653, %15655
  %15657 = sext i32 %15656 to i64
  %15658 = getelementptr inbounds double, ptr %15652, i64 %15657
  %15659 = load double, ptr %15658, align 8, !tbaa !11
  %15660 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %15659, double %15651)
  store double %15660, ptr %11, align 8, !tbaa !11
  %15661 = load double, ptr %11, align 8, !tbaa !11
  %15662 = load ptr, ptr %9, align 8, !tbaa !9
  %15663 = load i32, ptr %12, align 4, !tbaa !5
  %15664 = load i32, ptr %10, align 4, !tbaa !5
  %15665 = mul nsw i32 54, %15664
  %15666 = add nsw i32 %15663, %15665
  %15667 = sext i32 %15666 to i64
  %15668 = getelementptr inbounds double, ptr %15662, i64 %15667
  store double %15661, ptr %15668, align 8, !tbaa !11
  %15669 = load ptr, ptr %7, align 8, !tbaa !9
  %15670 = load i32, ptr %12, align 4, !tbaa !5
  %15671 = load i32, ptr %8, align 4, !tbaa !5
  %15672 = mul nsw i32 20, %15671
  %15673 = add nsw i32 %15670, %15672
  %15674 = sext i32 %15673 to i64
  %15675 = getelementptr inbounds double, ptr %15669, i64 %15674
  %15676 = load double, ptr %15675, align 8, !tbaa !11
  %15677 = load ptr, ptr %7, align 8, !tbaa !9
  %15678 = load i32, ptr %12, align 4, !tbaa !5
  %15679 = load i32, ptr %8, align 4, !tbaa !5
  %15680 = mul nsw i32 22, %15679
  %15681 = add nsw i32 %15678, %15680
  %15682 = sext i32 %15681 to i64
  %15683 = getelementptr inbounds double, ptr %15677, i64 %15682
  %15684 = load double, ptr %15683, align 8, !tbaa !11
  %15685 = fmul double 0x3C90000000000000, %15684
  %15686 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %15676, double %15685)
  %15687 = load ptr, ptr %7, align 8, !tbaa !9
  %15688 = load i32, ptr %12, align 4, !tbaa !5
  %15689 = load i32, ptr %8, align 4, !tbaa !5
  %15690 = mul nsw i32 23, %15689
  %15691 = add nsw i32 %15688, %15690
  %15692 = sext i32 %15691 to i64
  %15693 = getelementptr inbounds double, ptr %15687, i64 %15692
  %15694 = load double, ptr %15693, align 8, !tbaa !11
  %15695 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %15694, double %15686)
  %15696 = load ptr, ptr %7, align 8, !tbaa !9
  %15697 = load i32, ptr %12, align 4, !tbaa !5
  %15698 = load i32, ptr %8, align 4, !tbaa !5
  %15699 = mul nsw i32 24, %15698
  %15700 = add nsw i32 %15697, %15699
  %15701 = sext i32 %15700 to i64
  %15702 = getelementptr inbounds double, ptr %15696, i64 %15701
  %15703 = load double, ptr %15702, align 8, !tbaa !11
  %15704 = call double @llvm.fmuladd.f64(double 0x3FF043C98657E812, double %15703, double %15695)
  %15705 = load ptr, ptr %7, align 8, !tbaa !9
  %15706 = load i32, ptr %12, align 4, !tbaa !5
  %15707 = load i32, ptr %8, align 4, !tbaa !5
  %15708 = mul nsw i32 25, %15707
  %15709 = add nsw i32 %15706, %15708
  %15710 = sext i32 %15709 to i64
  %15711 = getelementptr inbounds double, ptr %15705, i64 %15710
  %15712 = load double, ptr %15711, align 8, !tbaa !11
  %15713 = call double @llvm.fmuladd.f64(double 0x3FEFAD7976B5DE25, double %15712, double %15704)
  %15714 = load ptr, ptr %7, align 8, !tbaa !9
  %15715 = load i32, ptr %12, align 4, !tbaa !5
  %15716 = load i32, ptr %8, align 4, !tbaa !5
  %15717 = mul nsw i32 26, %15716
  %15718 = add nsw i32 %15715, %15717
  %15719 = sext i32 %15718 to i64
  %15720 = getelementptr inbounds double, ptr %15714, i64 %15719
  %15721 = load double, ptr %15720, align 8, !tbaa !11
  %15722 = call double @llvm.fmuladd.f64(double 0xBFB4C23AD63BEF6E, double %15721, double %15713)
  %15723 = load ptr, ptr %7, align 8, !tbaa !9
  %15724 = load i32, ptr %12, align 4, !tbaa !5
  %15725 = load i32, ptr %8, align 4, !tbaa !5
  %15726 = mul nsw i32 27, %15725
  %15727 = add nsw i32 %15724, %15726
  %15728 = sext i32 %15727 to i64
  %15729 = getelementptr inbounds double, ptr %15723, i64 %15728
  %15730 = load double, ptr %15729, align 8, !tbaa !11
  %15731 = call double @llvm.fmuladd.f64(double 0xBFAC37F3CCE9FD3C, double %15730, double %15722)
  %15732 = load ptr, ptr %7, align 8, !tbaa !9
  %15733 = load i32, ptr %12, align 4, !tbaa !5
  %15734 = load i32, ptr %8, align 4, !tbaa !5
  %15735 = mul nsw i32 28, %15734
  %15736 = add nsw i32 %15733, %15735
  %15737 = sext i32 %15736 to i64
  %15738 = getelementptr inbounds double, ptr %15732, i64 %15737
  %15739 = load double, ptr %15738, align 8, !tbaa !11
  %15740 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %15739, double %15731)
  %15741 = load ptr, ptr %7, align 8, !tbaa !9
  %15742 = load i32, ptr %12, align 4, !tbaa !5
  %15743 = load i32, ptr %8, align 4, !tbaa !5
  %15744 = mul nsw i32 29, %15743
  %15745 = add nsw i32 %15742, %15744
  %15746 = sext i32 %15745 to i64
  %15747 = getelementptr inbounds double, ptr %15741, i64 %15746
  %15748 = load double, ptr %15747, align 8, !tbaa !11
  %15749 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %15748, double %15740)
  %15750 = load ptr, ptr %7, align 8, !tbaa !9
  %15751 = load i32, ptr %12, align 4, !tbaa !5
  %15752 = load i32, ptr %8, align 4, !tbaa !5
  %15753 = mul nsw i32 30, %15752
  %15754 = add nsw i32 %15751, %15753
  %15755 = sext i32 %15754 to i64
  %15756 = getelementptr inbounds double, ptr %15750, i64 %15755
  %15757 = load double, ptr %15756, align 8, !tbaa !11
  %15758 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %15757, double %15749)
  %15759 = load ptr, ptr %7, align 8, !tbaa !9
  %15760 = load i32, ptr %12, align 4, !tbaa !5
  %15761 = load i32, ptr %8, align 4, !tbaa !5
  %15762 = mul nsw i32 31, %15761
  %15763 = add nsw i32 %15760, %15762
  %15764 = sext i32 %15763 to i64
  %15765 = getelementptr inbounds double, ptr %15759, i64 %15764
  %15766 = load double, ptr %15765, align 8, !tbaa !11
  %15767 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %15766, double %15758)
  %15768 = load ptr, ptr %7, align 8, !tbaa !9
  %15769 = load i32, ptr %12, align 4, !tbaa !5
  %15770 = load i32, ptr %8, align 4, !tbaa !5
  %15771 = mul nsw i32 32, %15770
  %15772 = add nsw i32 %15769, %15771
  %15773 = sext i32 %15772 to i64
  %15774 = getelementptr inbounds double, ptr %15768, i64 %15773
  %15775 = load double, ptr %15774, align 8, !tbaa !11
  %15776 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %15775, double %15767)
  %15777 = load ptr, ptr %7, align 8, !tbaa !9
  %15778 = load i32, ptr %12, align 4, !tbaa !5
  %15779 = load i32, ptr %8, align 4, !tbaa !5
  %15780 = mul nsw i32 33, %15779
  %15781 = add nsw i32 %15778, %15780
  %15782 = sext i32 %15781 to i64
  %15783 = getelementptr inbounds double, ptr %15777, i64 %15782
  %15784 = load double, ptr %15783, align 8, !tbaa !11
  %15785 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %15784, double %15776)
  %15786 = load ptr, ptr %7, align 8, !tbaa !9
  %15787 = load i32, ptr %12, align 4, !tbaa !5
  %15788 = load i32, ptr %8, align 4, !tbaa !5
  %15789 = mul nsw i32 35, %15788
  %15790 = add nsw i32 %15787, %15789
  %15791 = sext i32 %15790 to i64
  %15792 = getelementptr inbounds double, ptr %15786, i64 %15791
  %15793 = load double, ptr %15792, align 8, !tbaa !11
  %15794 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %15793, double %15785)
  %15795 = load ptr, ptr %7, align 8, !tbaa !9
  %15796 = load i32, ptr %12, align 4, !tbaa !5
  %15797 = load i32, ptr %8, align 4, !tbaa !5
  %15798 = mul nsw i32 52, %15797
  %15799 = add nsw i32 %15796, %15798
  %15800 = sext i32 %15799 to i64
  %15801 = getelementptr inbounds double, ptr %15795, i64 %15800
  %15802 = load double, ptr %15801, align 8, !tbaa !11
  %15803 = call double @llvm.fmuladd.f64(double 0x3C726280B3476096, double %15802, double %15794)
  %15804 = load ptr, ptr %7, align 8, !tbaa !9
  %15805 = load i32, ptr %12, align 4, !tbaa !5
  %15806 = load i32, ptr %8, align 4, !tbaa !5
  %15807 = mul nsw i32 53, %15806
  %15808 = add nsw i32 %15805, %15807
  %15809 = sext i32 %15808 to i64
  %15810 = getelementptr inbounds double, ptr %15804, i64 %15809
  %15811 = load double, ptr %15810, align 8, !tbaa !11
  %15812 = call double @llvm.fmuladd.f64(double 0x3C46A09E667F3BCB, double %15811, double %15803)
  %15813 = load ptr, ptr %7, align 8, !tbaa !9
  %15814 = load i32, ptr %12, align 4, !tbaa !5
  %15815 = load i32, ptr %8, align 4, !tbaa !5
  %15816 = mul nsw i32 54, %15815
  %15817 = add nsw i32 %15814, %15816
  %15818 = sext i32 %15817 to i64
  %15819 = getelementptr inbounds double, ptr %15813, i64 %15818
  %15820 = load double, ptr %15819, align 8, !tbaa !11
  %15821 = call double @llvm.fmuladd.f64(double 0xBC9536948017480F, double %15820, double %15812)
  %15822 = load ptr, ptr %7, align 8, !tbaa !9
  %15823 = load i32, ptr %12, align 4, !tbaa !5
  %15824 = load i32, ptr %8, align 4, !tbaa !5
  %15825 = mul nsw i32 55, %15824
  %15826 = add nsw i32 %15823, %15825
  %15827 = sext i32 %15826 to i64
  %15828 = getelementptr inbounds double, ptr %15822, i64 %15827
  %15829 = load double, ptr %15828, align 8, !tbaa !11
  %15830 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %15829, double %15821)
  %15831 = load ptr, ptr %7, align 8, !tbaa !9
  %15832 = load i32, ptr %12, align 4, !tbaa !5
  %15833 = load i32, ptr %8, align 4, !tbaa !5
  %15834 = mul nsw i32 56, %15833
  %15835 = add nsw i32 %15832, %15834
  %15836 = sext i32 %15835 to i64
  %15837 = getelementptr inbounds double, ptr %15831, i64 %15836
  %15838 = load double, ptr %15837, align 8, !tbaa !11
  %15839 = call double @llvm.fmuladd.f64(double 0xBF9102DA00B18A68, double %15838, double %15830)
  %15840 = load ptr, ptr %7, align 8, !tbaa !9
  %15841 = load i32, ptr %12, align 4, !tbaa !5
  %15842 = load i32, ptr %8, align 4, !tbaa !5
  %15843 = mul nsw i32 57, %15842
  %15844 = add nsw i32 %15841, %15843
  %15845 = sext i32 %15844 to i64
  %15846 = getelementptr inbounds double, ptr %15840, i64 %15845
  %15847 = load double, ptr %15846, align 8, !tbaa !11
  %15848 = call double @llvm.fmuladd.f64(double 0x3FCD5953692F6EA6, double %15847, double %15839)
  %15849 = load ptr, ptr %7, align 8, !tbaa !9
  %15850 = load i32, ptr %12, align 4, !tbaa !5
  %15851 = load i32, ptr %8, align 4, !tbaa !5
  %15852 = mul nsw i32 58, %15851
  %15853 = add nsw i32 %15850, %15852
  %15854 = sext i32 %15853 to i64
  %15855 = getelementptr inbounds double, ptr %15849, i64 %15854
  %15856 = load double, ptr %15855, align 8, !tbaa !11
  %15857 = call double @llvm.fmuladd.f64(double 0x3FE3C4545BCF030C, double %15856, double %15848)
  %15858 = load ptr, ptr %7, align 8, !tbaa !9
  %15859 = load i32, ptr %12, align 4, !tbaa !5
  %15860 = load i32, ptr %8, align 4, !tbaa !5
  %15861 = mul nsw i32 59, %15860
  %15862 = add nsw i32 %15859, %15861
  %15863 = sext i32 %15862 to i64
  %15864 = getelementptr inbounds double, ptr %15858, i64 %15863
  %15865 = load double, ptr %15864, align 8, !tbaa !11
  %15866 = call double @llvm.fmuladd.f64(double 0x3FD6A4D32EB1F710, double %15865, double %15857)
  %15867 = load ptr, ptr %7, align 8, !tbaa !9
  %15868 = load i32, ptr %12, align 4, !tbaa !5
  %15869 = load i32, ptr %8, align 4, !tbaa !5
  %15870 = mul nsw i32 60, %15869
  %15871 = add nsw i32 %15868, %15870
  %15872 = sext i32 %15871 to i64
  %15873 = getelementptr inbounds double, ptr %15867, i64 %15872
  %15874 = load double, ptr %15873, align 8, !tbaa !11
  %15875 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %15874, double %15866)
  %15876 = load ptr, ptr %7, align 8, !tbaa !9
  %15877 = load i32, ptr %12, align 4, !tbaa !5
  %15878 = load i32, ptr %8, align 4, !tbaa !5
  %15879 = mul nsw i32 61, %15878
  %15880 = add nsw i32 %15877, %15879
  %15881 = sext i32 %15880 to i64
  %15882 = getelementptr inbounds double, ptr %15876, i64 %15881
  %15883 = load double, ptr %15882, align 8, !tbaa !11
  %15884 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %15883, double %15875)
  %15885 = load ptr, ptr %7, align 8, !tbaa !9
  %15886 = load i32, ptr %12, align 4, !tbaa !5
  %15887 = load i32, ptr %8, align 4, !tbaa !5
  %15888 = mul nsw i32 62, %15887
  %15889 = add nsw i32 %15886, %15888
  %15890 = sext i32 %15889 to i64
  %15891 = getelementptr inbounds double, ptr %15885, i64 %15890
  %15892 = load double, ptr %15891, align 8, !tbaa !11
  %15893 = call double @llvm.fmuladd.f64(double 0xBCA974B2334F2346, double %15892, double %15884)
  %15894 = load ptr, ptr %7, align 8, !tbaa !9
  %15895 = load i32, ptr %12, align 4, !tbaa !5
  %15896 = load i32, ptr %8, align 4, !tbaa !5
  %15897 = mul nsw i32 63, %15896
  %15898 = add nsw i32 %15895, %15897
  %15899 = sext i32 %15898 to i64
  %15900 = getelementptr inbounds double, ptr %15894, i64 %15899
  %15901 = load double, ptr %15900, align 8, !tbaa !11
  %15902 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %15901, double %15893)
  %15903 = load ptr, ptr %7, align 8, !tbaa !9
  %15904 = load i32, ptr %12, align 4, !tbaa !5
  %15905 = load i32, ptr %8, align 4, !tbaa !5
  %15906 = mul nsw i32 64, %15905
  %15907 = add nsw i32 %15904, %15906
  %15908 = sext i32 %15907 to i64
  %15909 = getelementptr inbounds double, ptr %15903, i64 %15908
  %15910 = load double, ptr %15909, align 8, !tbaa !11
  %15911 = call double @llvm.fmuladd.f64(double 0xBC84818F8CE34E32, double %15910, double %15902)
  %15912 = load ptr, ptr %7, align 8, !tbaa !9
  %15913 = load i32, ptr %12, align 4, !tbaa !5
  %15914 = load i32, ptr %8, align 4, !tbaa !5
  %15915 = mul nsw i32 65, %15914
  %15916 = add nsw i32 %15913, %15915
  %15917 = sext i32 %15916 to i64
  %15918 = getelementptr inbounds double, ptr %15912, i64 %15917
  %15919 = load double, ptr %15918, align 8, !tbaa !11
  %15920 = call double @llvm.fmuladd.f64(double 0x3C73CC8A99AF5453, double %15919, double %15911)
  %15921 = load ptr, ptr %7, align 8, !tbaa !9
  %15922 = load i32, ptr %12, align 4, !tbaa !5
  %15923 = load i32, ptr %8, align 4, !tbaa !5
  %15924 = mul nsw i32 66, %15923
  %15925 = add nsw i32 %15922, %15924
  %15926 = sext i32 %15925 to i64
  %15927 = getelementptr inbounds double, ptr %15921, i64 %15926
  %15928 = load double, ptr %15927, align 8, !tbaa !11
  %15929 = call double @llvm.fmuladd.f64(double 0x3C83CC8A99AF5451, double %15928, double %15920)
  %15930 = load ptr, ptr %7, align 8, !tbaa !9
  %15931 = load i32, ptr %12, align 4, !tbaa !5
  %15932 = load i32, ptr %8, align 4, !tbaa !5
  %15933 = mul nsw i32 67, %15932
  %15934 = add nsw i32 %15931, %15933
  %15935 = sext i32 %15934 to i64
  %15936 = getelementptr inbounds double, ptr %15930, i64 %15935
  %15937 = load double, ptr %15936, align 8, !tbaa !11
  %15938 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %15937, double %15929)
  store double %15938, ptr %11, align 8, !tbaa !11
  %15939 = load double, ptr %11, align 8, !tbaa !11
  %15940 = load ptr, ptr %9, align 8, !tbaa !9
  %15941 = load i32, ptr %12, align 4, !tbaa !5
  %15942 = load i32, ptr %10, align 4, !tbaa !5
  %15943 = mul nsw i32 55, %15942
  %15944 = add nsw i32 %15941, %15943
  %15945 = sext i32 %15944 to i64
  %15946 = getelementptr inbounds double, ptr %15940, i64 %15945
  store double %15939, ptr %15946, align 8, !tbaa !11
  %15947 = load ptr, ptr %7, align 8, !tbaa !9
  %15948 = load i32, ptr %12, align 4, !tbaa !5
  %15949 = load i32, ptr %8, align 4, !tbaa !5
  %15950 = mul nsw i32 20, %15949
  %15951 = add nsw i32 %15948, %15950
  %15952 = sext i32 %15951 to i64
  %15953 = getelementptr inbounds double, ptr %15947, i64 %15952
  %15954 = load double, ptr %15953, align 8, !tbaa !11
  %15955 = load ptr, ptr %7, align 8, !tbaa !9
  %15956 = load i32, ptr %12, align 4, !tbaa !5
  %15957 = load i32, ptr %8, align 4, !tbaa !5
  %15958 = mul nsw i32 21, %15957
  %15959 = add nsw i32 %15956, %15958
  %15960 = sext i32 %15959 to i64
  %15961 = getelementptr inbounds double, ptr %15955, i64 %15960
  %15962 = load double, ptr %15961, align 8, !tbaa !11
  %15963 = fmul double 0xBCA1000000000001, %15962
  %15964 = call double @llvm.fmuladd.f64(double 0xBC8C000000000000, double %15954, double %15963)
  %15965 = load ptr, ptr %7, align 8, !tbaa !9
  %15966 = load i32, ptr %12, align 4, !tbaa !5
  %15967 = load i32, ptr %8, align 4, !tbaa !5
  %15968 = mul nsw i32 22, %15967
  %15969 = add nsw i32 %15966, %15968
  %15970 = sext i32 %15969 to i64
  %15971 = getelementptr inbounds double, ptr %15965, i64 %15970
  %15972 = load double, ptr %15971, align 8, !tbaa !11
  %15973 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %15972, double %15964)
  %15974 = load ptr, ptr %7, align 8, !tbaa !9
  %15975 = load i32, ptr %12, align 4, !tbaa !5
  %15976 = load i32, ptr %8, align 4, !tbaa !5
  %15977 = mul nsw i32 23, %15976
  %15978 = add nsw i32 %15975, %15977
  %15979 = sext i32 %15978 to i64
  %15980 = getelementptr inbounds double, ptr %15974, i64 %15979
  %15981 = load double, ptr %15980, align 8, !tbaa !11
  %15982 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %15981, double %15973)
  %15983 = load ptr, ptr %7, align 8, !tbaa !9
  %15984 = load i32, ptr %12, align 4, !tbaa !5
  %15985 = load i32, ptr %8, align 4, !tbaa !5
  %15986 = mul nsw i32 24, %15985
  %15987 = add nsw i32 %15984, %15986
  %15988 = sext i32 %15987 to i64
  %15989 = getelementptr inbounds double, ptr %15983, i64 %15988
  %15990 = load double, ptr %15989, align 8, !tbaa !11
  %15991 = call double @llvm.fmuladd.f64(double 0xBFD7671404765120, double %15990, double %15982)
  %15992 = load ptr, ptr %7, align 8, !tbaa !9
  %15993 = load i32, ptr %12, align 4, !tbaa !5
  %15994 = load i32, ptr %8, align 4, !tbaa !5
  %15995 = mul nsw i32 25, %15994
  %15996 = add nsw i32 %15993, %15995
  %15997 = sext i32 %15996 to i64
  %15998 = getelementptr inbounds double, ptr %15992, i64 %15997
  %15999 = load double, ptr %15998, align 8, !tbaa !11
  %16000 = call double @llvm.fmuladd.f64(double 0xC01043858A1F5996, double %15999, double %15991)
  %16001 = load ptr, ptr %7, align 8, !tbaa !9
  %16002 = load i32, ptr %12, align 4, !tbaa !5
  %16003 = load i32, ptr %8, align 4, !tbaa !5
  %16004 = mul nsw i32 26, %16003
  %16005 = add nsw i32 %16002, %16004
  %16006 = sext i32 %16005 to i64
  %16007 = getelementptr inbounds double, ptr %16001, i64 %16006
  %16008 = load double, ptr %16007, align 8, !tbaa !11
  %16009 = call double @llvm.fmuladd.f64(double 0xBFD7BAC3393ADDD8, double %16008, double %16000)
  %16010 = load ptr, ptr %7, align 8, !tbaa !9
  %16011 = load i32, ptr %12, align 4, !tbaa !5
  %16012 = load i32, ptr %8, align 4, !tbaa !5
  %16013 = mul nsw i32 27, %16012
  %16014 = add nsw i32 %16011, %16013
  %16015 = sext i32 %16014 to i64
  %16016 = getelementptr inbounds double, ptr %16010, i64 %16015
  %16017 = load double, ptr %16016, align 8, !tbaa !11
  %16018 = call double @llvm.fmuladd.f64(double 0x3FC1964E14FA3C65, double %16017, double %16009)
  %16019 = load ptr, ptr %7, align 8, !tbaa !9
  %16020 = load i32, ptr %12, align 4, !tbaa !5
  %16021 = load i32, ptr %8, align 4, !tbaa !5
  %16022 = mul nsw i32 28, %16021
  %16023 = add nsw i32 %16020, %16022
  %16024 = sext i32 %16023 to i64
  %16025 = getelementptr inbounds double, ptr %16019, i64 %16024
  %16026 = load double, ptr %16025, align 8, !tbaa !11
  %16027 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %16026, double %16018)
  %16028 = load ptr, ptr %7, align 8, !tbaa !9
  %16029 = load i32, ptr %12, align 4, !tbaa !5
  %16030 = load i32, ptr %8, align 4, !tbaa !5
  %16031 = mul nsw i32 29, %16030
  %16032 = add nsw i32 %16029, %16031
  %16033 = sext i32 %16032 to i64
  %16034 = getelementptr inbounds double, ptr %16028, i64 %16033
  %16035 = load double, ptr %16034, align 8, !tbaa !11
  %16036 = call double @llvm.fmuladd.f64(double 0xBCB3000000000000, double %16035, double %16027)
  %16037 = load ptr, ptr %7, align 8, !tbaa !9
  %16038 = load i32, ptr %12, align 4, !tbaa !5
  %16039 = load i32, ptr %8, align 4, !tbaa !5
  %16040 = mul nsw i32 30, %16039
  %16041 = add nsw i32 %16038, %16040
  %16042 = sext i32 %16041 to i64
  %16043 = getelementptr inbounds double, ptr %16037, i64 %16042
  %16044 = load double, ptr %16043, align 8, !tbaa !11
  %16045 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %16044, double %16036)
  %16046 = load ptr, ptr %7, align 8, !tbaa !9
  %16047 = load i32, ptr %12, align 4, !tbaa !5
  %16048 = load i32, ptr %8, align 4, !tbaa !5
  %16049 = mul nsw i32 32, %16048
  %16050 = add nsw i32 %16047, %16049
  %16051 = sext i32 %16050 to i64
  %16052 = getelementptr inbounds double, ptr %16046, i64 %16051
  %16053 = load double, ptr %16052, align 8, !tbaa !11
  %16054 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %16053, double %16045)
  %16055 = load ptr, ptr %7, align 8, !tbaa !9
  %16056 = load i32, ptr %12, align 4, !tbaa !5
  %16057 = load i32, ptr %8, align 4, !tbaa !5
  %16058 = mul nsw i32 33, %16057
  %16059 = add nsw i32 %16056, %16058
  %16060 = sext i32 %16059 to i64
  %16061 = getelementptr inbounds double, ptr %16055, i64 %16060
  %16062 = load double, ptr %16061, align 8, !tbaa !11
  %16063 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %16062, double %16054)
  %16064 = load ptr, ptr %7, align 8, !tbaa !9
  %16065 = load i32, ptr %12, align 4, !tbaa !5
  %16066 = load i32, ptr %8, align 4, !tbaa !5
  %16067 = mul nsw i32 34, %16066
  %16068 = add nsw i32 %16065, %16067
  %16069 = sext i32 %16068 to i64
  %16070 = getelementptr inbounds double, ptr %16064, i64 %16069
  %16071 = load double, ptr %16070, align 8, !tbaa !11
  %16072 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %16071, double %16063)
  %16073 = load ptr, ptr %7, align 8, !tbaa !9
  %16074 = load i32, ptr %12, align 4, !tbaa !5
  %16075 = load i32, ptr %8, align 4, !tbaa !5
  %16076 = mul nsw i32 35, %16075
  %16077 = add nsw i32 %16074, %16076
  %16078 = sext i32 %16077 to i64
  %16079 = getelementptr inbounds double, ptr %16073, i64 %16078
  %16080 = load double, ptr %16079, align 8, !tbaa !11
  %16081 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %16080, double %16072)
  %16082 = load ptr, ptr %7, align 8, !tbaa !9
  %16083 = load i32, ptr %12, align 4, !tbaa !5
  %16084 = load i32, ptr %8, align 4, !tbaa !5
  %16085 = mul nsw i32 52, %16084
  %16086 = add nsw i32 %16083, %16085
  %16087 = sext i32 %16086 to i64
  %16088 = getelementptr inbounds double, ptr %16082, i64 %16087
  %16089 = load double, ptr %16088, align 8, !tbaa !11
  %16090 = call double @llvm.fmuladd.f64(double 0xBCA0D685DF45AE00, double %16089, double %16081)
  %16091 = load ptr, ptr %7, align 8, !tbaa !9
  %16092 = load i32, ptr %12, align 4, !tbaa !5
  %16093 = load i32, ptr %8, align 4, !tbaa !5
  %16094 = mul nsw i32 53, %16093
  %16095 = add nsw i32 %16092, %16094
  %16096 = sext i32 %16095 to i64
  %16097 = getelementptr inbounds double, ptr %16091, i64 %16096
  %16098 = load double, ptr %16097, align 8, !tbaa !11
  %16099 = call double @llvm.fmuladd.f64(double 0x3C56A09E667F3BCC, double %16098, double %16090)
  %16100 = load ptr, ptr %7, align 8, !tbaa !9
  %16101 = load i32, ptr %12, align 4, !tbaa !5
  %16102 = load i32, ptr %8, align 4, !tbaa !5
  %16103 = mul nsw i32 54, %16102
  %16104 = add nsw i32 %16101, %16103
  %16105 = sext i32 %16104 to i64
  %16106 = getelementptr inbounds double, ptr %16100, i64 %16105
  %16107 = load double, ptr %16106, align 8, !tbaa !11
  %16108 = call double @llvm.fmuladd.f64(double 0xBC46A09E667F3BCB, double %16107, double %16099)
  %16109 = load ptr, ptr %7, align 8, !tbaa !9
  %16110 = load i32, ptr %12, align 4, !tbaa !5
  %16111 = load i32, ptr %8, align 4, !tbaa !5
  %16112 = mul nsw i32 55, %16111
  %16113 = add nsw i32 %16110, %16112
  %16114 = sext i32 %16113 to i64
  %16115 = getelementptr inbounds double, ptr %16109, i64 %16114
  %16116 = load double, ptr %16115, align 8, !tbaa !11
  %16117 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %16116, double %16108)
  %16118 = load ptr, ptr %7, align 8, !tbaa !9
  %16119 = load i32, ptr %12, align 4, !tbaa !5
  %16120 = load i32, ptr %8, align 4, !tbaa !5
  %16121 = mul nsw i32 56, %16120
  %16122 = add nsw i32 %16119, %16121
  %16123 = sext i32 %16122 to i64
  %16124 = getelementptr inbounds double, ptr %16118, i64 %16123
  %16125 = load double, ptr %16124, align 8, !tbaa !11
  %16126 = call double @llvm.fmuladd.f64(double 0x3FD6A4D32EB1F71D, double %16125, double %16117)
  %16127 = load ptr, ptr %7, align 8, !tbaa !9
  %16128 = load i32, ptr %12, align 4, !tbaa !5
  %16129 = load i32, ptr %8, align 4, !tbaa !5
  %16130 = mul nsw i32 57, %16129
  %16131 = add nsw i32 %16128, %16130
  %16132 = sext i32 %16131 to i64
  %16133 = getelementptr inbounds double, ptr %16127, i64 %16132
  %16134 = load double, ptr %16133, align 8, !tbaa !11
  %16135 = call double @llvm.fmuladd.f64(double 0x3FE3C4545BCF030E, double %16134, double %16126)
  %16136 = load ptr, ptr %7, align 8, !tbaa !9
  %16137 = load i32, ptr %12, align 4, !tbaa !5
  %16138 = load i32, ptr %8, align 4, !tbaa !5
  %16139 = mul nsw i32 58, %16138
  %16140 = add nsw i32 %16137, %16139
  %16141 = sext i32 %16140 to i64
  %16142 = getelementptr inbounds double, ptr %16136, i64 %16141
  %16143 = load double, ptr %16142, align 8, !tbaa !11
  %16144 = call double @llvm.fmuladd.f64(double 0x3FCD5953692F6EA6, double %16143, double %16135)
  %16145 = load ptr, ptr %7, align 8, !tbaa !9
  %16146 = load i32, ptr %12, align 4, !tbaa !5
  %16147 = load i32, ptr %8, align 4, !tbaa !5
  %16148 = mul nsw i32 59, %16147
  %16149 = add nsw i32 %16146, %16148
  %16150 = sext i32 %16149 to i64
  %16151 = getelementptr inbounds double, ptr %16145, i64 %16150
  %16152 = load double, ptr %16151, align 8, !tbaa !11
  %16153 = call double @llvm.fmuladd.f64(double 0xBF9102DA00B18A34, double %16152, double %16144)
  %16154 = load ptr, ptr %7, align 8, !tbaa !9
  %16155 = load i32, ptr %12, align 4, !tbaa !5
  %16156 = load i32, ptr %8, align 4, !tbaa !5
  %16157 = mul nsw i32 60, %16156
  %16158 = add nsw i32 %16155, %16157
  %16159 = sext i32 %16158 to i64
  %16160 = getelementptr inbounds double, ptr %16154, i64 %16159
  %16161 = load double, ptr %16160, align 8, !tbaa !11
  %16162 = call double @llvm.fmuladd.f64(double 0xBCA16999E4DFE905, double %16161, double %16153)
  %16163 = load ptr, ptr %7, align 8, !tbaa !9
  %16164 = load i32, ptr %12, align 4, !tbaa !5
  %16165 = load i32, ptr %8, align 4, !tbaa !5
  %16166 = mul nsw i32 61, %16165
  %16167 = add nsw i32 %16164, %16166
  %16168 = sext i32 %16167 to i64
  %16169 = getelementptr inbounds double, ptr %16163, i64 %16168
  %16170 = load double, ptr %16169, align 8, !tbaa !11
  %16171 = call double @llvm.fmuladd.f64(double 0xBCA91A2FB9B52657, double %16170, double %16162)
  %16172 = load ptr, ptr %7, align 8, !tbaa !9
  %16173 = load i32, ptr %12, align 4, !tbaa !5
  %16174 = load i32, ptr %8, align 4, !tbaa !5
  %16175 = mul nsw i32 62, %16174
  %16176 = add nsw i32 %16173, %16175
  %16177 = sext i32 %16176 to i64
  %16178 = getelementptr inbounds double, ptr %16172, i64 %16177
  %16179 = load double, ptr %16178, align 8, !tbaa !11
  %16180 = call double @llvm.fmuladd.f64(double 0xBC9974B2334F2346, double %16179, double %16171)
  %16181 = load ptr, ptr %7, align 8, !tbaa !9
  %16182 = load i32, ptr %12, align 4, !tbaa !5
  %16183 = load i32, ptr %8, align 4, !tbaa !5
  %16184 = mul nsw i32 63, %16183
  %16185 = add nsw i32 %16182, %16184
  %16186 = sext i32 %16185 to i64
  %16187 = getelementptr inbounds double, ptr %16181, i64 %16186
  %16188 = load double, ptr %16187, align 8, !tbaa !11
  %16189 = call double @llvm.fmuladd.f64(double 0x3C80F876CCDF6CD9, double %16188, double %16180)
  %16190 = load ptr, ptr %7, align 8, !tbaa !9
  %16191 = load i32, ptr %12, align 4, !tbaa !5
  %16192 = load i32, ptr %8, align 4, !tbaa !5
  %16193 = mul nsw i32 64, %16192
  %16194 = add nsw i32 %16191, %16193
  %16195 = sext i32 %16194 to i64
  %16196 = getelementptr inbounds double, ptr %16190, i64 %16195
  %16197 = load double, ptr %16196, align 8, !tbaa !11
  %16198 = call double @llvm.fmuladd.f64(double 0x3C759116F9B144FE, double %16197, double %16189)
  %16199 = load ptr, ptr %7, align 8, !tbaa !9
  %16200 = load i32, ptr %12, align 4, !tbaa !5
  %16201 = load i32, ptr %8, align 4, !tbaa !5
  %16202 = mul nsw i32 65, %16201
  %16203 = add nsw i32 %16200, %16202
  %16204 = sext i32 %16203 to i64
  %16205 = getelementptr inbounds double, ptr %16199, i64 %16204
  %16206 = load double, ptr %16205, align 8, !tbaa !11
  %16207 = call double @llvm.fmuladd.f64(double 0x3C70F876CCDF6CD9, double %16206, double %16198)
  %16208 = load ptr, ptr %7, align 8, !tbaa !9
  %16209 = load i32, ptr %12, align 4, !tbaa !5
  %16210 = load i32, ptr %8, align 4, !tbaa !5
  %16211 = mul nsw i32 66, %16210
  %16212 = add nsw i32 %16209, %16211
  %16213 = sext i32 %16212 to i64
  %16214 = getelementptr inbounds double, ptr %16208, i64 %16213
  %16215 = load double, ptr %16214, align 8, !tbaa !11
  %16216 = call double @llvm.fmuladd.f64(double 0xBC73CC8A99AF5453, double %16215, double %16207)
  %16217 = load ptr, ptr %7, align 8, !tbaa !9
  %16218 = load i32, ptr %12, align 4, !tbaa !5
  %16219 = load i32, ptr %8, align 4, !tbaa !5
  %16220 = mul nsw i32 67, %16219
  %16221 = add nsw i32 %16218, %16220
  %16222 = sext i32 %16221 to i64
  %16223 = getelementptr inbounds double, ptr %16217, i64 %16222
  %16224 = load double, ptr %16223, align 8, !tbaa !11
  %16225 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %16224, double %16216)
  store double %16225, ptr %11, align 8, !tbaa !11
  %16226 = load double, ptr %11, align 8, !tbaa !11
  %16227 = load ptr, ptr %9, align 8, !tbaa !9
  %16228 = load i32, ptr %12, align 4, !tbaa !5
  %16229 = load i32, ptr %10, align 4, !tbaa !5
  %16230 = mul nsw i32 56, %16229
  %16231 = add nsw i32 %16228, %16230
  %16232 = sext i32 %16231 to i64
  %16233 = getelementptr inbounds double, ptr %16227, i64 %16232
  store double %16226, ptr %16233, align 8, !tbaa !11
  %16234 = load ptr, ptr %7, align 8, !tbaa !9
  %16235 = load i32, ptr %12, align 4, !tbaa !5
  %16236 = load i32, ptr %8, align 4, !tbaa !5
  %16237 = mul nsw i32 20, %16236
  %16238 = add nsw i32 %16235, %16237
  %16239 = sext i32 %16238 to i64
  %16240 = getelementptr inbounds double, ptr %16234, i64 %16239
  %16241 = load double, ptr %16240, align 8, !tbaa !11
  %16242 = load ptr, ptr %7, align 8, !tbaa !9
  %16243 = load i32, ptr %12, align 4, !tbaa !5
  %16244 = load i32, ptr %8, align 4, !tbaa !5
  %16245 = mul nsw i32 21, %16244
  %16246 = add nsw i32 %16243, %16245
  %16247 = sext i32 %16246 to i64
  %16248 = getelementptr inbounds double, ptr %16242, i64 %16247
  %16249 = load double, ptr %16248, align 8, !tbaa !11
  %16250 = fmul double 0x3C89FFFFFFFFFFFF, %16249
  %16251 = call double @llvm.fmuladd.f64(double 0x3C7C000000000000, double %16241, double %16250)
  %16252 = load ptr, ptr %7, align 8, !tbaa !9
  %16253 = load i32, ptr %12, align 4, !tbaa !5
  %16254 = load i32, ptr %8, align 4, !tbaa !5
  %16255 = mul nsw i32 22, %16254
  %16256 = add nsw i32 %16253, %16255
  %16257 = sext i32 %16256 to i64
  %16258 = getelementptr inbounds double, ptr %16252, i64 %16257
  %16259 = load double, ptr %16258, align 8, !tbaa !11
  %16260 = call double @llvm.fmuladd.f64(double 0x3C91000000000000, double %16259, double %16251)
  %16261 = load ptr, ptr %7, align 8, !tbaa !9
  %16262 = load i32, ptr %12, align 4, !tbaa !5
  %16263 = load i32, ptr %8, align 4, !tbaa !5
  %16264 = mul nsw i32 23, %16263
  %16265 = add nsw i32 %16262, %16264
  %16266 = sext i32 %16265 to i64
  %16267 = getelementptr inbounds double, ptr %16261, i64 %16266
  %16268 = load double, ptr %16267, align 8, !tbaa !11
  %16269 = call double @llvm.fmuladd.f64(double 0xBC95000000000000, double %16268, double %16260)
  %16270 = load ptr, ptr %7, align 8, !tbaa !9
  %16271 = load i32, ptr %12, align 4, !tbaa !5
  %16272 = load i32, ptr %8, align 4, !tbaa !5
  %16273 = mul nsw i32 24, %16272
  %16274 = add nsw i32 %16271, %16273
  %16275 = sext i32 %16274 to i64
  %16276 = getelementptr inbounds double, ptr %16270, i64 %16275
  %16277 = load double, ptr %16276, align 8, !tbaa !11
  %16278 = call double @llvm.fmuladd.f64(double 0x3FC1964E14FA3C53, double %16277, double %16269)
  %16279 = load ptr, ptr %7, align 8, !tbaa !9
  %16280 = load i32, ptr %12, align 4, !tbaa !5
  %16281 = load i32, ptr %8, align 4, !tbaa !5
  %16282 = mul nsw i32 25, %16281
  %16283 = add nsw i32 %16280, %16282
  %16284 = sext i32 %16283 to i64
  %16285 = getelementptr inbounds double, ptr %16279, i64 %16284
  %16286 = load double, ptr %16285, align 8, !tbaa !11
  %16287 = call double @llvm.fmuladd.f64(double 0xBFD7BAC3393ADDC4, double %16286, double %16278)
  %16288 = load ptr, ptr %7, align 8, !tbaa !9
  %16289 = load i32, ptr %12, align 4, !tbaa !5
  %16290 = load i32, ptr %8, align 4, !tbaa !5
  %16291 = mul nsw i32 26, %16290
  %16292 = add nsw i32 %16289, %16291
  %16293 = sext i32 %16292 to i64
  %16294 = getelementptr inbounds double, ptr %16288, i64 %16293
  %16295 = load double, ptr %16294, align 8, !tbaa !11
  %16296 = call double @llvm.fmuladd.f64(double 0xC01043858A1F5997, double %16295, double %16287)
  %16297 = load ptr, ptr %7, align 8, !tbaa !9
  %16298 = load i32, ptr %12, align 4, !tbaa !5
  %16299 = load i32, ptr %8, align 4, !tbaa !5
  %16300 = mul nsw i32 27, %16299
  %16301 = add nsw i32 %16298, %16300
  %16302 = sext i32 %16301 to i64
  %16303 = getelementptr inbounds double, ptr %16297, i64 %16302
  %16304 = load double, ptr %16303, align 8, !tbaa !11
  %16305 = call double @llvm.fmuladd.f64(double 0xBFD7671404765136, double %16304, double %16296)
  %16306 = load ptr, ptr %7, align 8, !tbaa !9
  %16307 = load i32, ptr %12, align 4, !tbaa !5
  %16308 = load i32, ptr %8, align 4, !tbaa !5
  %16309 = mul nsw i32 28, %16308
  %16310 = add nsw i32 %16307, %16309
  %16311 = sext i32 %16310 to i64
  %16312 = getelementptr inbounds double, ptr %16306, i64 %16311
  %16313 = load double, ptr %16312, align 8, !tbaa !11
  %16314 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %16313, double %16305)
  %16315 = load ptr, ptr %7, align 8, !tbaa !9
  %16316 = load i32, ptr %12, align 4, !tbaa !5
  %16317 = load i32, ptr %8, align 4, !tbaa !5
  %16318 = mul nsw i32 29, %16317
  %16319 = add nsw i32 %16316, %16318
  %16320 = sext i32 %16319 to i64
  %16321 = getelementptr inbounds double, ptr %16315, i64 %16320
  %16322 = load double, ptr %16321, align 8, !tbaa !11
  %16323 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %16322, double %16314)
  %16324 = load ptr, ptr %7, align 8, !tbaa !9
  %16325 = load i32, ptr %12, align 4, !tbaa !5
  %16326 = load i32, ptr %8, align 4, !tbaa !5
  %16327 = mul nsw i32 30, %16326
  %16328 = add nsw i32 %16325, %16327
  %16329 = sext i32 %16328 to i64
  %16330 = getelementptr inbounds double, ptr %16324, i64 %16329
  %16331 = load double, ptr %16330, align 8, !tbaa !11
  %16332 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %16331, double %16323)
  %16333 = load ptr, ptr %7, align 8, !tbaa !9
  %16334 = load i32, ptr %12, align 4, !tbaa !5
  %16335 = load i32, ptr %8, align 4, !tbaa !5
  %16336 = mul nsw i32 31, %16335
  %16337 = add nsw i32 %16334, %16336
  %16338 = sext i32 %16337 to i64
  %16339 = getelementptr inbounds double, ptr %16333, i64 %16338
  %16340 = load double, ptr %16339, align 8, !tbaa !11
  %16341 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %16340, double %16332)
  %16342 = load ptr, ptr %7, align 8, !tbaa !9
  %16343 = load i32, ptr %12, align 4, !tbaa !5
  %16344 = load i32, ptr %8, align 4, !tbaa !5
  %16345 = mul nsw i32 32, %16344
  %16346 = add nsw i32 %16343, %16345
  %16347 = sext i32 %16346 to i64
  %16348 = getelementptr inbounds double, ptr %16342, i64 %16347
  %16349 = load double, ptr %16348, align 8, !tbaa !11
  %16350 = call double @llvm.fmuladd.f64(double 0xBC93000000000000, double %16349, double %16341)
  %16351 = load ptr, ptr %7, align 8, !tbaa !9
  %16352 = load i32, ptr %12, align 4, !tbaa !5
  %16353 = load i32, ptr %8, align 4, !tbaa !5
  %16354 = mul nsw i32 33, %16353
  %16355 = add nsw i32 %16352, %16354
  %16356 = sext i32 %16355 to i64
  %16357 = getelementptr inbounds double, ptr %16351, i64 %16356
  %16358 = load double, ptr %16357, align 8, !tbaa !11
  %16359 = call double @llvm.fmuladd.f64(double 0xBC89FFFFFFFFFFFF, double %16358, double %16350)
  %16360 = load ptr, ptr %7, align 8, !tbaa !9
  %16361 = load i32, ptr %12, align 4, !tbaa !5
  %16362 = load i32, ptr %8, align 4, !tbaa !5
  %16363 = mul nsw i32 34, %16362
  %16364 = add nsw i32 %16361, %16363
  %16365 = sext i32 %16364 to i64
  %16366 = getelementptr inbounds double, ptr %16360, i64 %16365
  %16367 = load double, ptr %16366, align 8, !tbaa !11
  %16368 = call double @llvm.fmuladd.f64(double 0xBC91000000000000, double %16367, double %16359)
  %16369 = load ptr, ptr %7, align 8, !tbaa !9
  %16370 = load i32, ptr %12, align 4, !tbaa !5
  %16371 = load i32, ptr %8, align 4, !tbaa !5
  %16372 = mul nsw i32 35, %16371
  %16373 = add nsw i32 %16370, %16372
  %16374 = sext i32 %16373 to i64
  %16375 = getelementptr inbounds double, ptr %16369, i64 %16374
  %16376 = load double, ptr %16375, align 8, !tbaa !11
  %16377 = call double @llvm.fmuladd.f64(double 0xBC67FFFFFFFFFFFE, double %16376, double %16368)
  %16378 = load ptr, ptr %7, align 8, !tbaa !9
  %16379 = load i32, ptr %12, align 4, !tbaa !5
  %16380 = load i32, ptr %8, align 4, !tbaa !5
  %16381 = mul nsw i32 52, %16380
  %16382 = add nsw i32 %16379, %16381
  %16383 = sext i32 %16382 to i64
  %16384 = getelementptr inbounds double, ptr %16378, i64 %16383
  %16385 = load double, ptr %16384, align 8, !tbaa !11
  %16386 = call double @llvm.fmuladd.f64(double 0x3C7F775C4688EF29, double %16385, double %16377)
  %16387 = load ptr, ptr %7, align 8, !tbaa !9
  %16388 = load i32, ptr %12, align 4, !tbaa !5
  %16389 = load i32, ptr %8, align 4, !tbaa !5
  %16390 = mul nsw i32 53, %16389
  %16391 = add nsw i32 %16388, %16390
  %16392 = sext i32 %16391 to i64
  %16393 = getelementptr inbounds double, ptr %16387, i64 %16392
  %16394 = load double, ptr %16393, align 8, !tbaa !11
  %16395 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %16394, double %16386)
  %16396 = load ptr, ptr %7, align 8, !tbaa !9
  %16397 = load i32, ptr %12, align 4, !tbaa !5
  %16398 = load i32, ptr %8, align 4, !tbaa !5
  %16399 = mul nsw i32 54, %16398
  %16400 = add nsw i32 %16397, %16399
  %16401 = sext i32 %16400 to i64
  %16402 = getelementptr inbounds double, ptr %16396, i64 %16401
  %16403 = load double, ptr %16402, align 8, !tbaa !11
  %16404 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %16403, double %16395)
  %16405 = load ptr, ptr %7, align 8, !tbaa !9
  %16406 = load i32, ptr %12, align 4, !tbaa !5
  %16407 = load i32, ptr %8, align 4, !tbaa !5
  %16408 = mul nsw i32 55, %16407
  %16409 = add nsw i32 %16406, %16408
  %16410 = sext i32 %16409 to i64
  %16411 = getelementptr inbounds double, ptr %16405, i64 %16410
  %16412 = load double, ptr %16411, align 8, !tbaa !11
  %16413 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %16412, double %16404)
  %16414 = load ptr, ptr %7, align 8, !tbaa !9
  %16415 = load i32, ptr %12, align 4, !tbaa !5
  %16416 = load i32, ptr %8, align 4, !tbaa !5
  %16417 = mul nsw i32 56, %16416
  %16418 = add nsw i32 %16415, %16417
  %16419 = sext i32 %16418 to i64
  %16420 = getelementptr inbounds double, ptr %16414, i64 %16419
  %16421 = load double, ptr %16420, align 8, !tbaa !11
  %16422 = call double @llvm.fmuladd.f64(double 0xBFE7007BFD8FD85D, double %16421, double %16413)
  %16423 = load ptr, ptr %7, align 8, !tbaa !9
  %16424 = load i32, ptr %12, align 4, !tbaa !5
  %16425 = load i32, ptr %8, align 4, !tbaa !5
  %16426 = mul nsw i32 57, %16425
  %16427 = add nsw i32 %16424, %16426
  %16428 = sext i32 %16427 to i64
  %16429 = getelementptr inbounds double, ptr %16423, i64 %16428
  %16430 = load double, ptr %16429, align 8, !tbaa !11
  %16431 = call double @llvm.fmuladd.f64(double 0xBFE66643AEED3708, double %16430, double %16422)
  %16432 = load ptr, ptr %7, align 8, !tbaa !9
  %16433 = load i32, ptr %12, align 4, !tbaa !5
  %16434 = load i32, ptr %8, align 4, !tbaa !5
  %16435 = mul nsw i32 58, %16434
  %16436 = add nsw i32 %16433, %16435
  %16437 = sext i32 %16436 to i64
  %16438 = getelementptr inbounds double, ptr %16432, i64 %16437
  %16439 = load double, ptr %16438, align 8, !tbaa !11
  %16440 = call double @llvm.fmuladd.f64(double 0x3FAD5B74B5F10E9B, double %16439, double %16431)
  %16441 = load ptr, ptr %7, align 8, !tbaa !9
  %16442 = load i32, ptr %12, align 4, !tbaa !5
  %16443 = load i32, ptr %8, align 4, !tbaa !5
  %16444 = mul nsw i32 59, %16443
  %16445 = add nsw i32 %16442, %16444
  %16446 = sext i32 %16445 to i64
  %16447 = getelementptr inbounds double, ptr %16441, i64 %16446
  %16448 = load double, ptr %16447, align 8, !tbaa !11
  %16449 = call double @llvm.fmuladd.f64(double 0x3FA3F41B0E87BFB6, double %16448, double %16440)
  %16450 = load ptr, ptr %7, align 8, !tbaa !9
  %16451 = load i32, ptr %12, align 4, !tbaa !5
  %16452 = load i32, ptr %8, align 4, !tbaa !5
  %16453 = mul nsw i32 60, %16452
  %16454 = add nsw i32 %16451, %16453
  %16455 = sext i32 %16454 to i64
  %16456 = getelementptr inbounds double, ptr %16450, i64 %16455
  %16457 = load double, ptr %16456, align 8, !tbaa !11
  %16458 = call double @llvm.fmuladd.f64(double 0xBC9125B809AC6B51, double %16457, double %16449)
  %16459 = load ptr, ptr %7, align 8, !tbaa !9
  %16460 = load i32, ptr %12, align 4, !tbaa !5
  %16461 = load i32, ptr %8, align 4, !tbaa !5
  %16462 = mul nsw i32 61, %16461
  %16463 = add nsw i32 %16460, %16462
  %16464 = sext i32 %16463 to i64
  %16465 = getelementptr inbounds double, ptr %16459, i64 %16464
  %16466 = load double, ptr %16465, align 8, !tbaa !11
  %16467 = call double @llvm.fmuladd.f64(double 0x3C826280B3476096, double %16466, double %16458)
  %16468 = load ptr, ptr %7, align 8, !tbaa !9
  %16469 = load i32, ptr %12, align 4, !tbaa !5
  %16470 = load i32, ptr %8, align 4, !tbaa !5
  %16471 = mul nsw i32 62, %16470
  %16472 = add nsw i32 %16469, %16471
  %16473 = sext i32 %16472 to i64
  %16474 = getelementptr inbounds double, ptr %16468, i64 %16473
  %16475 = load double, ptr %16474, align 8, !tbaa !11
  %16476 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %16475, double %16467)
  %16477 = load ptr, ptr %7, align 8, !tbaa !9
  %16478 = load i32, ptr %12, align 4, !tbaa !5
  %16479 = load i32, ptr %8, align 4, !tbaa !5
  %16480 = mul nsw i32 63, %16479
  %16481 = add nsw i32 %16478, %16480
  %16482 = sext i32 %16481 to i64
  %16483 = getelementptr inbounds double, ptr %16477, i64 %16482
  %16484 = load double, ptr %16483, align 8, !tbaa !11
  %16485 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %16484, double %16476)
  %16486 = load ptr, ptr %7, align 8, !tbaa !9
  %16487 = load i32, ptr %12, align 4, !tbaa !5
  %16488 = load i32, ptr %8, align 4, !tbaa !5
  %16489 = mul nsw i32 64, %16488
  %16490 = add nsw i32 %16487, %16489
  %16491 = sext i32 %16490 to i64
  %16492 = getelementptr inbounds double, ptr %16486, i64 %16491
  %16493 = load double, ptr %16492, align 8, !tbaa !11
  %16494 = call double @llvm.fmuladd.f64(double 0x3C6B93C10CEB10E3, double %16493, double %16485)
  %16495 = load ptr, ptr %7, align 8, !tbaa !9
  %16496 = load i32, ptr %12, align 4, !tbaa !5
  %16497 = load i32, ptr %8, align 4, !tbaa !5
  %16498 = mul nsw i32 65, %16497
  %16499 = add nsw i32 %16496, %16498
  %16500 = sext i32 %16499 to i64
  %16501 = getelementptr inbounds double, ptr %16495, i64 %16500
  %16502 = load double, ptr %16501, align 8, !tbaa !11
  %16503 = call double @llvm.fmuladd.f64(double 0x3C8C48C6001F0AC0, double %16502, double %16494)
  %16504 = load ptr, ptr %7, align 8, !tbaa !9
  %16505 = load i32, ptr %12, align 4, !tbaa !5
  %16506 = load i32, ptr %8, align 4, !tbaa !5
  %16507 = mul nsw i32 66, %16506
  %16508 = add nsw i32 %16505, %16507
  %16509 = sext i32 %16508 to i64
  %16510 = getelementptr inbounds double, ptr %16504, i64 %16509
  %16511 = load double, ptr %16510, align 8, !tbaa !11
  %16512 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %16511, double %16503)
  %16513 = load ptr, ptr %7, align 8, !tbaa !9
  %16514 = load i32, ptr %12, align 4, !tbaa !5
  %16515 = load i32, ptr %8, align 4, !tbaa !5
  %16516 = mul nsw i32 67, %16515
  %16517 = add nsw i32 %16514, %16516
  %16518 = sext i32 %16517 to i64
  %16519 = getelementptr inbounds double, ptr %16513, i64 %16518
  %16520 = load double, ptr %16519, align 8, !tbaa !11
  %16521 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %16520, double %16512)
  store double %16521, ptr %11, align 8, !tbaa !11
  %16522 = load double, ptr %11, align 8, !tbaa !11
  %16523 = load ptr, ptr %9, align 8, !tbaa !9
  %16524 = load i32, ptr %12, align 4, !tbaa !5
  %16525 = load i32, ptr %10, align 4, !tbaa !5
  %16526 = mul nsw i32 57, %16525
  %16527 = add nsw i32 %16524, %16526
  %16528 = sext i32 %16527 to i64
  %16529 = getelementptr inbounds double, ptr %16523, i64 %16528
  store double %16522, ptr %16529, align 8, !tbaa !11
  %16530 = load ptr, ptr %7, align 8, !tbaa !9
  %16531 = load i32, ptr %12, align 4, !tbaa !5
  %16532 = load i32, ptr %8, align 4, !tbaa !5
  %16533 = mul nsw i32 21, %16532
  %16534 = add nsw i32 %16531, %16533
  %16535 = sext i32 %16534 to i64
  %16536 = getelementptr inbounds double, ptr %16530, i64 %16535
  %16537 = load double, ptr %16536, align 8, !tbaa !11
  %16538 = load ptr, ptr %7, align 8, !tbaa !9
  %16539 = load i32, ptr %12, align 4, !tbaa !5
  %16540 = load i32, ptr %8, align 4, !tbaa !5
  %16541 = mul nsw i32 22, %16540
  %16542 = add nsw i32 %16539, %16541
  %16543 = sext i32 %16542 to i64
  %16544 = getelementptr inbounds double, ptr %16538, i64 %16543
  %16545 = load double, ptr %16544, align 8, !tbaa !11
  %16546 = fmul double 0xBC7FFFFFFFFFFFFF, %16545
  %16547 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %16537, double %16546)
  %16548 = load ptr, ptr %7, align 8, !tbaa !9
  %16549 = load i32, ptr %12, align 4, !tbaa !5
  %16550 = load i32, ptr %8, align 4, !tbaa !5
  %16551 = mul nsw i32 24, %16550
  %16552 = add nsw i32 %16549, %16551
  %16553 = sext i32 %16552 to i64
  %16554 = getelementptr inbounds double, ptr %16548, i64 %16553
  %16555 = load double, ptr %16554, align 8, !tbaa !11
  %16556 = call double @llvm.fmuladd.f64(double 0xBFE002F9665DF3D9, double %16555, double %16547)
  %16557 = load ptr, ptr %7, align 8, !tbaa !9
  %16558 = load i32, ptr %12, align 4, !tbaa !5
  %16559 = load i32, ptr %8, align 4, !tbaa !5
  %16560 = mul nsw i32 25, %16559
  %16561 = add nsw i32 %16558, %16560
  %16562 = sext i32 %16561 to i64
  %16563 = getelementptr inbounds double, ptr %16557, i64 %16562
  %16564 = load double, ptr %16563, align 8, !tbaa !11
  %16565 = call double @llvm.fmuladd.f64(double 0xBFEBF462FB348EF6, double %16564, double %16556)
  %16566 = load ptr, ptr %7, align 8, !tbaa !9
  %16567 = load i32, ptr %12, align 4, !tbaa !5
  %16568 = load i32, ptr %8, align 4, !tbaa !5
  %16569 = mul nsw i32 26, %16568
  %16570 = add nsw i32 %16567, %16569
  %16571 = sext i32 %16570 to i64
  %16572 = getelementptr inbounds double, ptr %16566, i64 %16571
  %16573 = load double, ptr %16572, align 8, !tbaa !11
  %16574 = call double @llvm.fmuladd.f64(double 0xBFD4C0B9406BCBCC, double %16573, double %16565)
  %16575 = load ptr, ptr %7, align 8, !tbaa !9
  %16576 = load i32, ptr %12, align 4, !tbaa !5
  %16577 = load i32, ptr %8, align 4, !tbaa !5
  %16578 = mul nsw i32 27, %16577
  %16579 = add nsw i32 %16576, %16578
  %16580 = sext i32 %16579 to i64
  %16581 = getelementptr inbounds double, ptr %16575, i64 %16580
  %16582 = load double, ptr %16581, align 8, !tbaa !11
  %16583 = call double @llvm.fmuladd.f64(double 0x3F980EB0AE1D4750, double %16582, double %16574)
  %16584 = load ptr, ptr %7, align 8, !tbaa !9
  %16585 = load i32, ptr %12, align 4, !tbaa !5
  %16586 = load i32, ptr %8, align 4, !tbaa !5
  %16587 = mul nsw i32 28, %16586
  %16588 = add nsw i32 %16585, %16587
  %16589 = sext i32 %16588 to i64
  %16590 = getelementptr inbounds double, ptr %16584, i64 %16589
  %16591 = load double, ptr %16590, align 8, !tbaa !11
  %16592 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %16591, double %16583)
  %16593 = load ptr, ptr %7, align 8, !tbaa !9
  %16594 = load i32, ptr %12, align 4, !tbaa !5
  %16595 = load i32, ptr %8, align 4, !tbaa !5
  %16596 = mul nsw i32 29, %16595
  %16597 = add nsw i32 %16594, %16596
  %16598 = sext i32 %16597 to i64
  %16599 = getelementptr inbounds double, ptr %16593, i64 %16598
  %16600 = load double, ptr %16599, align 8, !tbaa !11
  %16601 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %16600, double %16592)
  %16602 = load ptr, ptr %7, align 8, !tbaa !9
  %16603 = load i32, ptr %12, align 4, !tbaa !5
  %16604 = load i32, ptr %8, align 4, !tbaa !5
  %16605 = mul nsw i32 30, %16604
  %16606 = add nsw i32 %16603, %16605
  %16607 = sext i32 %16606 to i64
  %16608 = getelementptr inbounds double, ptr %16602, i64 %16607
  %16609 = load double, ptr %16608, align 8, !tbaa !11
  %16610 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %16609, double %16601)
  %16611 = load ptr, ptr %7, align 8, !tbaa !9
  %16612 = load i32, ptr %12, align 4, !tbaa !5
  %16613 = load i32, ptr %8, align 4, !tbaa !5
  %16614 = mul nsw i32 31, %16613
  %16615 = add nsw i32 %16612, %16614
  %16616 = sext i32 %16615 to i64
  %16617 = getelementptr inbounds double, ptr %16611, i64 %16616
  %16618 = load double, ptr %16617, align 8, !tbaa !11
  %16619 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %16618, double %16610)
  %16620 = load ptr, ptr %7, align 8, !tbaa !9
  %16621 = load i32, ptr %12, align 4, !tbaa !5
  %16622 = load i32, ptr %8, align 4, !tbaa !5
  %16623 = mul nsw i32 32, %16622
  %16624 = add nsw i32 %16621, %16623
  %16625 = sext i32 %16624 to i64
  %16626 = getelementptr inbounds double, ptr %16620, i64 %16625
  %16627 = load double, ptr %16626, align 8, !tbaa !11
  %16628 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %16627, double %16619)
  %16629 = load ptr, ptr %7, align 8, !tbaa !9
  %16630 = load i32, ptr %12, align 4, !tbaa !5
  %16631 = load i32, ptr %8, align 4, !tbaa !5
  %16632 = mul nsw i32 33, %16631
  %16633 = add nsw i32 %16630, %16632
  %16634 = sext i32 %16633 to i64
  %16635 = getelementptr inbounds double, ptr %16629, i64 %16634
  %16636 = load double, ptr %16635, align 8, !tbaa !11
  %16637 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %16636, double %16628)
  %16638 = load ptr, ptr %7, align 8, !tbaa !9
  %16639 = load i32, ptr %12, align 4, !tbaa !5
  %16640 = load i32, ptr %8, align 4, !tbaa !5
  %16641 = mul nsw i32 34, %16640
  %16642 = add nsw i32 %16639, %16641
  %16643 = sext i32 %16642 to i64
  %16644 = getelementptr inbounds double, ptr %16638, i64 %16643
  %16645 = load double, ptr %16644, align 8, !tbaa !11
  %16646 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %16645, double %16637)
  %16647 = load ptr, ptr %7, align 8, !tbaa !9
  %16648 = load i32, ptr %12, align 4, !tbaa !5
  %16649 = load i32, ptr %8, align 4, !tbaa !5
  %16650 = mul nsw i32 35, %16649
  %16651 = add nsw i32 %16648, %16650
  %16652 = sext i32 %16651 to i64
  %16653 = getelementptr inbounds double, ptr %16647, i64 %16652
  %16654 = load double, ptr %16653, align 8, !tbaa !11
  %16655 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %16654, double %16646)
  %16656 = load ptr, ptr %7, align 8, !tbaa !9
  %16657 = load i32, ptr %12, align 4, !tbaa !5
  %16658 = load i32, ptr %8, align 4, !tbaa !5
  %16659 = mul nsw i32 52, %16658
  %16660 = add nsw i32 %16657, %16659
  %16661 = sext i32 %16660 to i64
  %16662 = getelementptr inbounds double, ptr %16656, i64 %16661
  %16663 = load double, ptr %16662, align 8, !tbaa !11
  %16664 = call double @llvm.fmuladd.f64(double 0x3C7ADEBC19B71701, double %16663, double %16655)
  %16665 = load ptr, ptr %7, align 8, !tbaa !9
  %16666 = load i32, ptr %12, align 4, !tbaa !5
  %16667 = load i32, ptr %8, align 4, !tbaa !5
  %16668 = mul nsw i32 53, %16667
  %16669 = add nsw i32 %16666, %16668
  %16670 = sext i32 %16669 to i64
  %16671 = getelementptr inbounds double, ptr %16665, i64 %16670
  %16672 = load double, ptr %16671, align 8, !tbaa !11
  %16673 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %16672, double %16664)
  %16674 = load ptr, ptr %7, align 8, !tbaa !9
  %16675 = load i32, ptr %12, align 4, !tbaa !5
  %16676 = load i32, ptr %8, align 4, !tbaa !5
  %16677 = mul nsw i32 54, %16676
  %16678 = add nsw i32 %16675, %16677
  %16679 = sext i32 %16678 to i64
  %16680 = getelementptr inbounds double, ptr %16674, i64 %16679
  %16681 = load double, ptr %16680, align 8, !tbaa !11
  %16682 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %16681, double %16673)
  %16683 = load ptr, ptr %7, align 8, !tbaa !9
  %16684 = load i32, ptr %12, align 4, !tbaa !5
  %16685 = load i32, ptr %8, align 4, !tbaa !5
  %16686 = mul nsw i32 56, %16685
  %16687 = add nsw i32 %16684, %16686
  %16688 = sext i32 %16687 to i64
  %16689 = getelementptr inbounds double, ptr %16683, i64 %16688
  %16690 = load double, ptr %16689, align 8, !tbaa !11
  %16691 = call double @llvm.fmuladd.f64(double 0x3FA3F41B0E87BFE9, double %16690, double %16682)
  %16692 = load ptr, ptr %7, align 8, !tbaa !9
  %16693 = load i32, ptr %12, align 4, !tbaa !5
  %16694 = load i32, ptr %8, align 4, !tbaa !5
  %16695 = mul nsw i32 57, %16694
  %16696 = add nsw i32 %16693, %16695
  %16697 = sext i32 %16696 to i64
  %16698 = getelementptr inbounds double, ptr %16692, i64 %16697
  %16699 = load double, ptr %16698, align 8, !tbaa !11
  %16700 = call double @llvm.fmuladd.f64(double 0x3FAD5B74B5F10E92, double %16699, double %16691)
  %16701 = load ptr, ptr %7, align 8, !tbaa !9
  %16702 = load i32, ptr %12, align 4, !tbaa !5
  %16703 = load i32, ptr %8, align 4, !tbaa !5
  %16704 = mul nsw i32 58, %16703
  %16705 = add nsw i32 %16702, %16704
  %16706 = sext i32 %16705 to i64
  %16707 = getelementptr inbounds double, ptr %16701, i64 %16706
  %16708 = load double, ptr %16707, align 8, !tbaa !11
  %16709 = call double @llvm.fmuladd.f64(double 0xBFE66643AEED36FA, double %16708, double %16700)
  %16710 = load ptr, ptr %7, align 8, !tbaa !9
  %16711 = load i32, ptr %12, align 4, !tbaa !5
  %16712 = load i32, ptr %8, align 4, !tbaa !5
  %16713 = mul nsw i32 59, %16712
  %16714 = add nsw i32 %16711, %16713
  %16715 = sext i32 %16714 to i64
  %16716 = getelementptr inbounds double, ptr %16710, i64 %16715
  %16717 = load double, ptr %16716, align 8, !tbaa !11
  %16718 = call double @llvm.fmuladd.f64(double 0xBFE7007BFD8FD85D, double %16717, double %16709)
  %16719 = load ptr, ptr %7, align 8, !tbaa !9
  %16720 = load i32, ptr %12, align 4, !tbaa !5
  %16721 = load i32, ptr %8, align 4, !tbaa !5
  %16722 = mul nsw i32 60, %16721
  %16723 = add nsw i32 %16720, %16722
  %16724 = sext i32 %16723 to i64
  %16725 = getelementptr inbounds double, ptr %16719, i64 %16724
  %16726 = load double, ptr %16725, align 8, !tbaa !11
  %16727 = call double @llvm.fmuladd.f64(double 0xBC70F876CCDF6CD9, double %16726, double %16718)
  %16728 = load ptr, ptr %7, align 8, !tbaa !9
  %16729 = load i32, ptr %12, align 4, !tbaa !5
  %16730 = load i32, ptr %8, align 4, !tbaa !5
  %16731 = mul nsw i32 61, %16730
  %16732 = add nsw i32 %16729, %16731
  %16733 = sext i32 %16732 to i64
  %16734 = getelementptr inbounds double, ptr %16728, i64 %16733
  %16735 = load double, ptr %16734, align 8, !tbaa !11
  %16736 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %16735, double %16727)
  %16737 = load ptr, ptr %7, align 8, !tbaa !9
  %16738 = load i32, ptr %12, align 4, !tbaa !5
  %16739 = load i32, ptr %8, align 4, !tbaa !5
  %16740 = mul nsw i32 62, %16739
  %16741 = add nsw i32 %16738, %16740
  %16742 = sext i32 %16741 to i64
  %16743 = getelementptr inbounds double, ptr %16737, i64 %16742
  %16744 = load double, ptr %16743, align 8, !tbaa !11
  %16745 = call double @llvm.fmuladd.f64(double 0x3CA3CC8A99AF5452, double %16744, double %16736)
  %16746 = load ptr, ptr %7, align 8, !tbaa !9
  %16747 = load i32, ptr %12, align 4, !tbaa !5
  %16748 = load i32, ptr %8, align 4, !tbaa !5
  %16749 = mul nsw i32 63, %16748
  %16750 = add nsw i32 %16747, %16749
  %16751 = sext i32 %16750 to i64
  %16752 = getelementptr inbounds double, ptr %16746, i64 %16751
  %16753 = load double, ptr %16752, align 8, !tbaa !11
  %16754 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %16753, double %16745)
  %16755 = load ptr, ptr %7, align 8, !tbaa !9
  %16756 = load i32, ptr %12, align 4, !tbaa !5
  %16757 = load i32, ptr %8, align 4, !tbaa !5
  %16758 = mul nsw i32 64, %16757
  %16759 = add nsw i32 %16756, %16758
  %16760 = sext i32 %16759 to i64
  %16761 = getelementptr inbounds double, ptr %16755, i64 %16760
  %16762 = load double, ptr %16761, align 8, !tbaa !11
  %16763 = call double @llvm.fmuladd.f64(double 0x3C7DB2CFE686FE7B, double %16762, double %16754)
  %16764 = load ptr, ptr %7, align 8, !tbaa !9
  %16765 = load i32, ptr %12, align 4, !tbaa !5
  %16766 = load i32, ptr %8, align 4, !tbaa !5
  %16767 = mul nsw i32 65, %16766
  %16768 = add nsw i32 %16765, %16767
  %16769 = sext i32 %16768 to i64
  %16770 = getelementptr inbounds double, ptr %16764, i64 %16769
  %16771 = load double, ptr %16770, align 8, !tbaa !11
  %16772 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %16771, double %16763)
  %16773 = load ptr, ptr %7, align 8, !tbaa !9
  %16774 = load i32, ptr %12, align 4, !tbaa !5
  %16775 = load i32, ptr %8, align 4, !tbaa !5
  %16776 = mul nsw i32 66, %16775
  %16777 = add nsw i32 %16774, %16776
  %16778 = sext i32 %16777 to i64
  %16779 = getelementptr inbounds double, ptr %16773, i64 %16778
  %16780 = load double, ptr %16779, align 8, !tbaa !11
  %16781 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %16780, double %16772)
  store double %16781, ptr %11, align 8, !tbaa !11
  %16782 = load double, ptr %11, align 8, !tbaa !11
  %16783 = load ptr, ptr %9, align 8, !tbaa !9
  %16784 = load i32, ptr %12, align 4, !tbaa !5
  %16785 = load i32, ptr %10, align 4, !tbaa !5
  %16786 = mul nsw i32 58, %16785
  %16787 = add nsw i32 %16784, %16786
  %16788 = sext i32 %16787 to i64
  %16789 = getelementptr inbounds double, ptr %16783, i64 %16788
  store double %16782, ptr %16789, align 8, !tbaa !11
  %16790 = load ptr, ptr %7, align 8, !tbaa !9
  %16791 = load i32, ptr %12, align 4, !tbaa !5
  %16792 = load i32, ptr %8, align 4, !tbaa !5
  %16793 = mul nsw i32 20, %16792
  %16794 = add nsw i32 %16791, %16793
  %16795 = sext i32 %16794 to i64
  %16796 = getelementptr inbounds double, ptr %16790, i64 %16795
  %16797 = load double, ptr %16796, align 8, !tbaa !11
  %16798 = load ptr, ptr %7, align 8, !tbaa !9
  %16799 = load i32, ptr %12, align 4, !tbaa !5
  %16800 = load i32, ptr %8, align 4, !tbaa !5
  %16801 = mul nsw i32 21, %16800
  %16802 = add nsw i32 %16799, %16801
  %16803 = sext i32 %16802 to i64
  %16804 = getelementptr inbounds double, ptr %16798, i64 %16803
  %16805 = load double, ptr %16804, align 8, !tbaa !11
  %16806 = fmul double 0xBC7FFFFFFFFFFFFF, %16805
  %16807 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %16797, double %16806)
  %16808 = load ptr, ptr %7, align 8, !tbaa !9
  %16809 = load i32, ptr %12, align 4, !tbaa !5
  %16810 = load i32, ptr %8, align 4, !tbaa !5
  %16811 = mul nsw i32 22, %16810
  %16812 = add nsw i32 %16809, %16811
  %16813 = sext i32 %16812 to i64
  %16814 = getelementptr inbounds double, ptr %16808, i64 %16813
  %16815 = load double, ptr %16814, align 8, !tbaa !11
  %16816 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %16815, double %16807)
  %16817 = load ptr, ptr %7, align 8, !tbaa !9
  %16818 = load i32, ptr %12, align 4, !tbaa !5
  %16819 = load i32, ptr %8, align 4, !tbaa !5
  %16820 = mul nsw i32 24, %16819
  %16821 = add nsw i32 %16818, %16820
  %16822 = sext i32 %16821 to i64
  %16823 = getelementptr inbounds double, ptr %16817, i64 %16822
  %16824 = load double, ptr %16823, align 8, !tbaa !11
  %16825 = call double @llvm.fmuladd.f64(double 0x3F980EB0AE1D4741, double %16824, double %16816)
  %16826 = load ptr, ptr %7, align 8, !tbaa !9
  %16827 = load i32, ptr %12, align 4, !tbaa !5
  %16828 = load i32, ptr %8, align 4, !tbaa !5
  %16829 = mul nsw i32 25, %16828
  %16830 = add nsw i32 %16827, %16829
  %16831 = sext i32 %16830 to i64
  %16832 = getelementptr inbounds double, ptr %16826, i64 %16831
  %16833 = load double, ptr %16832, align 8, !tbaa !11
  %16834 = call double @llvm.fmuladd.f64(double 0xBFD4C0B9406BCBCC, double %16833, double %16825)
  %16835 = load ptr, ptr %7, align 8, !tbaa !9
  %16836 = load i32, ptr %12, align 4, !tbaa !5
  %16837 = load i32, ptr %8, align 4, !tbaa !5
  %16838 = mul nsw i32 26, %16837
  %16839 = add nsw i32 %16836, %16838
  %16840 = sext i32 %16839 to i64
  %16841 = getelementptr inbounds double, ptr %16835, i64 %16840
  %16842 = load double, ptr %16841, align 8, !tbaa !11
  %16843 = call double @llvm.fmuladd.f64(double 0xBFEBF462FB348EF6, double %16842, double %16834)
  %16844 = load ptr, ptr %7, align 8, !tbaa !9
  %16845 = load i32, ptr %12, align 4, !tbaa !5
  %16846 = load i32, ptr %8, align 4, !tbaa !5
  %16847 = mul nsw i32 27, %16846
  %16848 = add nsw i32 %16845, %16847
  %16849 = sext i32 %16848 to i64
  %16850 = getelementptr inbounds double, ptr %16844, i64 %16849
  %16851 = load double, ptr %16850, align 8, !tbaa !11
  %16852 = call double @llvm.fmuladd.f64(double 0xBFE002F9665DF3D9, double %16851, double %16843)
  %16853 = load ptr, ptr %7, align 8, !tbaa !9
  %16854 = load i32, ptr %12, align 4, !tbaa !5
  %16855 = load i32, ptr %8, align 4, !tbaa !5
  %16856 = mul nsw i32 28, %16855
  %16857 = add nsw i32 %16854, %16856
  %16858 = sext i32 %16857 to i64
  %16859 = getelementptr inbounds double, ptr %16853, i64 %16858
  %16860 = load double, ptr %16859, align 8, !tbaa !11
  %16861 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %16860, double %16852)
  %16862 = load ptr, ptr %7, align 8, !tbaa !9
  %16863 = load i32, ptr %12, align 4, !tbaa !5
  %16864 = load i32, ptr %8, align 4, !tbaa !5
  %16865 = mul nsw i32 29, %16864
  %16866 = add nsw i32 %16863, %16865
  %16867 = sext i32 %16866 to i64
  %16868 = getelementptr inbounds double, ptr %16862, i64 %16867
  %16869 = load double, ptr %16868, align 8, !tbaa !11
  %16870 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %16869, double %16861)
  %16871 = load ptr, ptr %7, align 8, !tbaa !9
  %16872 = load i32, ptr %12, align 4, !tbaa !5
  %16873 = load i32, ptr %8, align 4, !tbaa !5
  %16874 = mul nsw i32 30, %16873
  %16875 = add nsw i32 %16872, %16874
  %16876 = sext i32 %16875 to i64
  %16877 = getelementptr inbounds double, ptr %16871, i64 %16876
  %16878 = load double, ptr %16877, align 8, !tbaa !11
  %16879 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %16878, double %16870)
  %16880 = load ptr, ptr %7, align 8, !tbaa !9
  %16881 = load i32, ptr %12, align 4, !tbaa !5
  %16882 = load i32, ptr %8, align 4, !tbaa !5
  %16883 = mul nsw i32 31, %16882
  %16884 = add nsw i32 %16881, %16883
  %16885 = sext i32 %16884 to i64
  %16886 = getelementptr inbounds double, ptr %16880, i64 %16885
  %16887 = load double, ptr %16886, align 8, !tbaa !11
  %16888 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %16887, double %16879)
  %16889 = load ptr, ptr %7, align 8, !tbaa !9
  %16890 = load i32, ptr %12, align 4, !tbaa !5
  %16891 = load i32, ptr %8, align 4, !tbaa !5
  %16892 = mul nsw i32 32, %16891
  %16893 = add nsw i32 %16890, %16892
  %16894 = sext i32 %16893 to i64
  %16895 = getelementptr inbounds double, ptr %16889, i64 %16894
  %16896 = load double, ptr %16895, align 8, !tbaa !11
  %16897 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %16896, double %16888)
  %16898 = load ptr, ptr %7, align 8, !tbaa !9
  %16899 = load i32, ptr %12, align 4, !tbaa !5
  %16900 = load i32, ptr %8, align 4, !tbaa !5
  %16901 = mul nsw i32 33, %16900
  %16902 = add nsw i32 %16899, %16901
  %16903 = sext i32 %16902 to i64
  %16904 = getelementptr inbounds double, ptr %16898, i64 %16903
  %16905 = load double, ptr %16904, align 8, !tbaa !11
  %16906 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %16905, double %16897)
  %16907 = load ptr, ptr %7, align 8, !tbaa !9
  %16908 = load i32, ptr %12, align 4, !tbaa !5
  %16909 = load i32, ptr %8, align 4, !tbaa !5
  %16910 = mul nsw i32 34, %16909
  %16911 = add nsw i32 %16908, %16910
  %16912 = sext i32 %16911 to i64
  %16913 = getelementptr inbounds double, ptr %16907, i64 %16912
  %16914 = load double, ptr %16913, align 8, !tbaa !11
  %16915 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %16914, double %16906)
  %16916 = load ptr, ptr %7, align 8, !tbaa !9
  %16917 = load i32, ptr %12, align 4, !tbaa !5
  %16918 = load i32, ptr %8, align 4, !tbaa !5
  %16919 = mul nsw i32 35, %16918
  %16920 = add nsw i32 %16917, %16919
  %16921 = sext i32 %16920 to i64
  %16922 = getelementptr inbounds double, ptr %16916, i64 %16921
  %16923 = load double, ptr %16922, align 8, !tbaa !11
  %16924 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %16923, double %16915)
  %16925 = load ptr, ptr %7, align 8, !tbaa !9
  %16926 = load i32, ptr %12, align 4, !tbaa !5
  %16927 = load i32, ptr %8, align 4, !tbaa !5
  %16928 = mul nsw i32 52, %16927
  %16929 = add nsw i32 %16926, %16928
  %16930 = sext i32 %16929 to i64
  %16931 = getelementptr inbounds double, ptr %16925, i64 %16930
  %16932 = load double, ptr %16931, align 8, !tbaa !11
  %16933 = call double @llvm.fmuladd.f64(double 0xBC9152F9467969C8, double %16932, double %16924)
  %16934 = load ptr, ptr %7, align 8, !tbaa !9
  %16935 = load i32, ptr %12, align 4, !tbaa !5
  %16936 = load i32, ptr %8, align 4, !tbaa !5
  %16937 = mul nsw i32 53, %16936
  %16938 = add nsw i32 %16935, %16937
  %16939 = sext i32 %16938 to i64
  %16940 = getelementptr inbounds double, ptr %16934, i64 %16939
  %16941 = load double, ptr %16940, align 8, !tbaa !11
  %16942 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %16941, double %16933)
  %16943 = load ptr, ptr %7, align 8, !tbaa !9
  %16944 = load i32, ptr %12, align 4, !tbaa !5
  %16945 = load i32, ptr %8, align 4, !tbaa !5
  %16946 = mul nsw i32 54, %16945
  %16947 = add nsw i32 %16944, %16946
  %16948 = sext i32 %16947 to i64
  %16949 = getelementptr inbounds double, ptr %16943, i64 %16948
  %16950 = load double, ptr %16949, align 8, !tbaa !11
  %16951 = call double @llvm.fmuladd.f64(double 0x3C9974B2334F2346, double %16950, double %16942)
  %16952 = load ptr, ptr %7, align 8, !tbaa !9
  %16953 = load i32, ptr %12, align 4, !tbaa !5
  %16954 = load i32, ptr %8, align 4, !tbaa !5
  %16955 = mul nsw i32 55, %16954
  %16956 = add nsw i32 %16953, %16955
  %16957 = sext i32 %16956 to i64
  %16958 = getelementptr inbounds double, ptr %16952, i64 %16957
  %16959 = load double, ptr %16958, align 8, !tbaa !11
  %16960 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %16959, double %16951)
  %16961 = load ptr, ptr %7, align 8, !tbaa !9
  %16962 = load i32, ptr %12, align 4, !tbaa !5
  %16963 = load i32, ptr %8, align 4, !tbaa !5
  %16964 = mul nsw i32 56, %16963
  %16965 = add nsw i32 %16962, %16964
  %16966 = sext i32 %16965 to i64
  %16967 = getelementptr inbounds double, ptr %16961, i64 %16966
  %16968 = load double, ptr %16967, align 8, !tbaa !11
  %16969 = call double @llvm.fmuladd.f64(double 0xBFB8DF388696F554, double %16968, double %16960)
  %16970 = load ptr, ptr %7, align 8, !tbaa !9
  %16971 = load i32, ptr %12, align 4, !tbaa !5
  %16972 = load i32, ptr %8, align 4, !tbaa !5
  %16973 = mul nsw i32 57, %16972
  %16974 = add nsw i32 %16971, %16973
  %16975 = sext i32 %16974 to i64
  %16976 = getelementptr inbounds double, ptr %16970, i64 %16975
  %16977 = load double, ptr %16976, align 8, !tbaa !11
  %16978 = call double @llvm.fmuladd.f64(double 0x3FD0C7817D9C3121, double %16977, double %16969)
  %16979 = load ptr, ptr %7, align 8, !tbaa !9
  %16980 = load i32, ptr %12, align 4, !tbaa !5
  %16981 = load i32, ptr %8, align 4, !tbaa !5
  %16982 = mul nsw i32 58, %16981
  %16983 = add nsw i32 %16980, %16982
  %16984 = sext i32 %16983 to i64
  %16985 = getelementptr inbounds double, ptr %16979, i64 %16984
  %16986 = load double, ptr %16985, align 8, !tbaa !11
  %16987 = call double @llvm.fmuladd.f64(double 0x4007001BD846D0AE, double %16986, double %16978)
  %16988 = load ptr, ptr %7, align 8, !tbaa !9
  %16989 = load i32, ptr %12, align 4, !tbaa !5
  %16990 = load i32, ptr %8, align 4, !tbaa !5
  %16991 = mul nsw i32 59, %16990
  %16992 = add nsw i32 %16989, %16991
  %16993 = sext i32 %16992 to i64
  %16994 = getelementptr inbounds double, ptr %16988, i64 %16993
  %16995 = load double, ptr %16994, align 8, !tbaa !11
  %16996 = call double @llvm.fmuladd.f64(double 0x3FD08C54FF1019FC, double %16995, double %16987)
  %16997 = load ptr, ptr %7, align 8, !tbaa !9
  %16998 = load i32, ptr %12, align 4, !tbaa !5
  %16999 = load i32, ptr %8, align 4, !tbaa !5
  %17000 = mul nsw i32 60, %16999
  %17001 = add nsw i32 %16998, %17000
  %17002 = sext i32 %17001 to i64
  %17003 = getelementptr inbounds double, ptr %16997, i64 %17002
  %17004 = load double, ptr %17003, align 8, !tbaa !11
  %17005 = call double @llvm.fmuladd.f64(double 0x3C8974B2334F2346, double %17004, double %16996)
  %17006 = load ptr, ptr %7, align 8, !tbaa !9
  %17007 = load i32, ptr %12, align 4, !tbaa !5
  %17008 = load i32, ptr %8, align 4, !tbaa !5
  %17009 = mul nsw i32 61, %17008
  %17010 = add nsw i32 %17007, %17009
  %17011 = sext i32 %17010 to i64
  %17012 = getelementptr inbounds double, ptr %17006, i64 %17011
  %17013 = load double, ptr %17012, align 8, !tbaa !11
  %17014 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %17013, double %17005)
  %17015 = load ptr, ptr %7, align 8, !tbaa !9
  %17016 = load i32, ptr %12, align 4, !tbaa !5
  %17017 = load i32, ptr %8, align 4, !tbaa !5
  %17018 = mul nsw i32 62, %17017
  %17019 = add nsw i32 %17016, %17018
  %17020 = sext i32 %17019 to i64
  %17021 = getelementptr inbounds double, ptr %17015, i64 %17020
  %17022 = load double, ptr %17021, align 8, !tbaa !11
  %17023 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %17022, double %17014)
  %17024 = load ptr, ptr %7, align 8, !tbaa !9
  %17025 = load i32, ptr %12, align 4, !tbaa !5
  %17026 = load i32, ptr %8, align 4, !tbaa !5
  %17027 = mul nsw i32 63, %17026
  %17028 = add nsw i32 %17025, %17027
  %17029 = sext i32 %17028 to i64
  %17030 = getelementptr inbounds double, ptr %17024, i64 %17029
  %17031 = load double, ptr %17030, align 8, !tbaa !11
  %17032 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %17031, double %17023)
  %17033 = load ptr, ptr %7, align 8, !tbaa !9
  %17034 = load i32, ptr %12, align 4, !tbaa !5
  %17035 = load i32, ptr %8, align 4, !tbaa !5
  %17036 = mul nsw i32 64, %17035
  %17037 = add nsw i32 %17034, %17036
  %17038 = sext i32 %17037 to i64
  %17039 = getelementptr inbounds double, ptr %17033, i64 %17038
  %17040 = load double, ptr %17039, align 8, !tbaa !11
  %17041 = call double @llvm.fmuladd.f64(double 0xBC75369480174810, double %17040, double %17032)
  %17042 = load ptr, ptr %7, align 8, !tbaa !9
  %17043 = load i32, ptr %12, align 4, !tbaa !5
  %17044 = load i32, ptr %8, align 4, !tbaa !5
  %17045 = mul nsw i32 65, %17044
  %17046 = add nsw i32 %17043, %17045
  %17047 = sext i32 %17046 to i64
  %17048 = getelementptr inbounds double, ptr %17042, i64 %17047
  %17049 = load double, ptr %17048, align 8, !tbaa !11
  %17050 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %17049, double %17041)
  %17051 = load ptr, ptr %7, align 8, !tbaa !9
  %17052 = load i32, ptr %12, align 4, !tbaa !5
  %17053 = load i32, ptr %8, align 4, !tbaa !5
  %17054 = mul nsw i32 66, %17053
  %17055 = add nsw i32 %17052, %17054
  %17056 = sext i32 %17055 to i64
  %17057 = getelementptr inbounds double, ptr %17051, i64 %17056
  %17058 = load double, ptr %17057, align 8, !tbaa !11
  %17059 = call double @llvm.fmuladd.f64(double 0x3C93CC8A99AF5452, double %17058, double %17050)
  %17060 = load ptr, ptr %7, align 8, !tbaa !9
  %17061 = load i32, ptr %12, align 4, !tbaa !5
  %17062 = load i32, ptr %8, align 4, !tbaa !5
  %17063 = mul nsw i32 67, %17062
  %17064 = add nsw i32 %17061, %17063
  %17065 = sext i32 %17064 to i64
  %17066 = getelementptr inbounds double, ptr %17060, i64 %17065
  %17067 = load double, ptr %17066, align 8, !tbaa !11
  %17068 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %17067, double %17059)
  store double %17068, ptr %11, align 8, !tbaa !11
  %17069 = load double, ptr %11, align 8, !tbaa !11
  %17070 = load ptr, ptr %9, align 8, !tbaa !9
  %17071 = load i32, ptr %12, align 4, !tbaa !5
  %17072 = load i32, ptr %10, align 4, !tbaa !5
  %17073 = mul nsw i32 59, %17072
  %17074 = add nsw i32 %17071, %17073
  %17075 = sext i32 %17074 to i64
  %17076 = getelementptr inbounds double, ptr %17070, i64 %17075
  store double %17069, ptr %17076, align 8, !tbaa !11
  %17077 = load ptr, ptr %7, align 8, !tbaa !9
  %17078 = load i32, ptr %12, align 4, !tbaa !5
  %17079 = load i32, ptr %8, align 4, !tbaa !5
  %17080 = mul nsw i32 20, %17079
  %17081 = add nsw i32 %17078, %17080
  %17082 = sext i32 %17081 to i64
  %17083 = getelementptr inbounds double, ptr %17077, i64 %17082
  %17084 = load double, ptr %17083, align 8, !tbaa !11
  %17085 = load ptr, ptr %7, align 8, !tbaa !9
  %17086 = load i32, ptr %12, align 4, !tbaa !5
  %17087 = load i32, ptr %8, align 4, !tbaa !5
  %17088 = mul nsw i32 21, %17087
  %17089 = add nsw i32 %17086, %17088
  %17090 = sext i32 %17089 to i64
  %17091 = getelementptr inbounds double, ptr %17085, i64 %17090
  %17092 = load double, ptr %17091, align 8, !tbaa !11
  %17093 = fmul double 0xBC94000000000000, %17092
  %17094 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %17084, double %17093)
  %17095 = load ptr, ptr %7, align 8, !tbaa !9
  %17096 = load i32, ptr %12, align 4, !tbaa !5
  %17097 = load i32, ptr %8, align 4, !tbaa !5
  %17098 = mul nsw i32 22, %17097
  %17099 = add nsw i32 %17096, %17098
  %17100 = sext i32 %17099 to i64
  %17101 = getelementptr inbounds double, ptr %17095, i64 %17100
  %17102 = load double, ptr %17101, align 8, !tbaa !11
  %17103 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %17102, double %17094)
  %17104 = load ptr, ptr %7, align 8, !tbaa !9
  %17105 = load i32, ptr %12, align 4, !tbaa !5
  %17106 = load i32, ptr %8, align 4, !tbaa !5
  %17107 = mul nsw i32 23, %17106
  %17108 = add nsw i32 %17105, %17107
  %17109 = sext i32 %17108 to i64
  %17110 = getelementptr inbounds double, ptr %17104, i64 %17109
  %17111 = load double, ptr %17110, align 8, !tbaa !11
  %17112 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %17111, double %17103)
  %17113 = load ptr, ptr %7, align 8, !tbaa !9
  %17114 = load i32, ptr %12, align 4, !tbaa !5
  %17115 = load i32, ptr %8, align 4, !tbaa !5
  %17116 = mul nsw i32 24, %17115
  %17117 = add nsw i32 %17114, %17116
  %17118 = sext i32 %17117 to i64
  %17119 = getelementptr inbounds double, ptr %17113, i64 %17118
  %17120 = load double, ptr %17119, align 8, !tbaa !11
  %17121 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %17120, double %17112)
  %17122 = load ptr, ptr %7, align 8, !tbaa !9
  %17123 = load i32, ptr %12, align 4, !tbaa !5
  %17124 = load i32, ptr %8, align 4, !tbaa !5
  %17125 = mul nsw i32 25, %17124
  %17126 = add nsw i32 %17123, %17125
  %17127 = sext i32 %17126 to i64
  %17128 = getelementptr inbounds double, ptr %17122, i64 %17127
  %17129 = load double, ptr %17128, align 8, !tbaa !11
  %17130 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %17129, double %17121)
  %17131 = load ptr, ptr %7, align 8, !tbaa !9
  %17132 = load i32, ptr %12, align 4, !tbaa !5
  %17133 = load i32, ptr %8, align 4, !tbaa !5
  %17134 = mul nsw i32 26, %17133
  %17135 = add nsw i32 %17132, %17134
  %17136 = sext i32 %17135 to i64
  %17137 = getelementptr inbounds double, ptr %17131, i64 %17136
  %17138 = load double, ptr %17137, align 8, !tbaa !11
  %17139 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %17138, double %17130)
  %17140 = load ptr, ptr %7, align 8, !tbaa !9
  %17141 = load i32, ptr %12, align 4, !tbaa !5
  %17142 = load i32, ptr %8, align 4, !tbaa !5
  %17143 = mul nsw i32 27, %17142
  %17144 = add nsw i32 %17141, %17143
  %17145 = sext i32 %17144 to i64
  %17146 = getelementptr inbounds double, ptr %17140, i64 %17145
  %17147 = load double, ptr %17146, align 8, !tbaa !11
  %17148 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %17147, double %17139)
  %17149 = load ptr, ptr %7, align 8, !tbaa !9
  %17150 = load i32, ptr %12, align 4, !tbaa !5
  %17151 = load i32, ptr %8, align 4, !tbaa !5
  %17152 = mul nsw i32 28, %17151
  %17153 = add nsw i32 %17150, %17152
  %17154 = sext i32 %17153 to i64
  %17155 = getelementptr inbounds double, ptr %17149, i64 %17154
  %17156 = load double, ptr %17155, align 8, !tbaa !11
  %17157 = call double @llvm.fmuladd.f64(double 0x3FA789B66AF4F457, double %17156, double %17148)
  %17158 = load ptr, ptr %7, align 8, !tbaa !9
  %17159 = load i32, ptr %12, align 4, !tbaa !5
  %17160 = load i32, ptr %8, align 4, !tbaa !5
  %17161 = mul nsw i32 29, %17160
  %17162 = add nsw i32 %17159, %17161
  %17163 = sext i32 %17162 to i64
  %17164 = getelementptr inbounds double, ptr %17158, i64 %17163
  %17165 = load double, ptr %17164, align 8, !tbaa !11
  %17166 = call double @llvm.fmuladd.f64(double 0x3FEC2894019C8AD4, double %17165, double %17157)
  %17167 = load ptr, ptr %7, align 8, !tbaa !9
  %17168 = load i32, ptr %12, align 4, !tbaa !5
  %17169 = load i32, ptr %8, align 4, !tbaa !5
  %17170 = mul nsw i32 30, %17169
  %17171 = add nsw i32 %17168, %17170
  %17172 = sext i32 %17171 to i64
  %17173 = getelementptr inbounds double, ptr %17167, i64 %17172
  %17174 = load double, ptr %17173, align 8, !tbaa !11
  %17175 = call double @llvm.fmuladd.f64(double 0x3FEC2894019C8AC6, double %17174, double %17166)
  %17176 = load ptr, ptr %7, align 8, !tbaa !9
  %17177 = load i32, ptr %12, align 4, !tbaa !5
  %17178 = load i32, ptr %8, align 4, !tbaa !5
  %17179 = mul nsw i32 31, %17178
  %17180 = add nsw i32 %17177, %17179
  %17181 = sext i32 %17180 to i64
  %17182 = getelementptr inbounds double, ptr %17176, i64 %17181
  %17183 = load double, ptr %17182, align 8, !tbaa !11
  %17184 = call double @llvm.fmuladd.f64(double 0x3FA789B66AF4F575, double %17183, double %17175)
  %17185 = load ptr, ptr %7, align 8, !tbaa !9
  %17186 = load i32, ptr %12, align 4, !tbaa !5
  %17187 = load i32, ptr %8, align 4, !tbaa !5
  %17188 = mul nsw i32 32, %17187
  %17189 = add nsw i32 %17186, %17188
  %17190 = sext i32 %17189 to i64
  %17191 = getelementptr inbounds double, ptr %17185, i64 %17190
  %17192 = load double, ptr %17191, align 8, !tbaa !11
  %17193 = call double @llvm.fmuladd.f64(double 0xBC60000000000000, double %17192, double %17184)
  %17194 = load ptr, ptr %7, align 8, !tbaa !9
  %17195 = load i32, ptr %12, align 4, !tbaa !5
  %17196 = load i32, ptr %8, align 4, !tbaa !5
  %17197 = mul nsw i32 33, %17196
  %17198 = add nsw i32 %17195, %17197
  %17199 = sext i32 %17198 to i64
  %17200 = getelementptr inbounds double, ptr %17194, i64 %17199
  %17201 = load double, ptr %17200, align 8, !tbaa !11
  %17202 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %17201, double %17193)
  %17203 = load ptr, ptr %7, align 8, !tbaa !9
  %17204 = load i32, ptr %12, align 4, !tbaa !5
  %17205 = load i32, ptr %8, align 4, !tbaa !5
  %17206 = mul nsw i32 35, %17205
  %17207 = add nsw i32 %17204, %17206
  %17208 = sext i32 %17207 to i64
  %17209 = getelementptr inbounds double, ptr %17203, i64 %17208
  %17210 = load double, ptr %17209, align 8, !tbaa !11
  %17211 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %17210, double %17202)
  %17212 = load ptr, ptr %7, align 8, !tbaa !9
  %17213 = load i32, ptr %12, align 4, !tbaa !5
  %17214 = load i32, ptr %8, align 4, !tbaa !5
  %17215 = mul nsw i32 52, %17214
  %17216 = add nsw i32 %17213, %17215
  %17217 = sext i32 %17216 to i64
  %17218 = getelementptr inbounds double, ptr %17212, i64 %17217
  %17219 = load double, ptr %17218, align 8, !tbaa !11
  %17220 = call double @llvm.fmuladd.f64(double 0xBC50F876CCDF6CD8, double %17219, double %17211)
  %17221 = load ptr, ptr %7, align 8, !tbaa !9
  %17222 = load i32, ptr %12, align 4, !tbaa !5
  %17223 = load i32, ptr %8, align 4, !tbaa !5
  %17224 = mul nsw i32 53, %17223
  %17225 = add nsw i32 %17222, %17224
  %17226 = sext i32 %17225 to i64
  %17227 = getelementptr inbounds double, ptr %17221, i64 %17226
  %17228 = load double, ptr %17227, align 8, !tbaa !11
  %17229 = call double @llvm.fmuladd.f64(double 0x3C7F1CD9CCEEF238, double %17228, double %17220)
  %17230 = load ptr, ptr %7, align 8, !tbaa !9
  %17231 = load i32, ptr %12, align 4, !tbaa !5
  %17232 = load i32, ptr %8, align 4, !tbaa !5
  %17233 = mul nsw i32 54, %17232
  %17234 = add nsw i32 %17231, %17233
  %17235 = sext i32 %17234 to i64
  %17236 = getelementptr inbounds double, ptr %17230, i64 %17235
  %17237 = load double, ptr %17236, align 8, !tbaa !11
  %17238 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %17237, double %17229)
  %17239 = load ptr, ptr %7, align 8, !tbaa !9
  %17240 = load i32, ptr %12, align 4, !tbaa !5
  %17241 = load i32, ptr %8, align 4, !tbaa !5
  %17242 = mul nsw i32 55, %17241
  %17243 = add nsw i32 %17240, %17242
  %17244 = sext i32 %17243 to i64
  %17245 = getelementptr inbounds double, ptr %17239, i64 %17244
  %17246 = load double, ptr %17245, align 8, !tbaa !11
  %17247 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %17246, double %17238)
  %17248 = load ptr, ptr %7, align 8, !tbaa !9
  %17249 = load i32, ptr %12, align 4, !tbaa !5
  %17250 = load i32, ptr %8, align 4, !tbaa !5
  %17251 = mul nsw i32 56, %17250
  %17252 = add nsw i32 %17249, %17251
  %17253 = sext i32 %17252 to i64
  %17254 = getelementptr inbounds double, ptr %17248, i64 %17253
  %17255 = load double, ptr %17254, align 8, !tbaa !11
  %17256 = call double @llvm.fmuladd.f64(double 0xBC9207FE39AD63A7, double %17255, double %17247)
  %17257 = load ptr, ptr %7, align 8, !tbaa !9
  %17258 = load i32, ptr %12, align 4, !tbaa !5
  %17259 = load i32, ptr %8, align 4, !tbaa !5
  %17260 = mul nsw i32 57, %17259
  %17261 = add nsw i32 %17258, %17260
  %17262 = sext i32 %17261 to i64
  %17263 = getelementptr inbounds double, ptr %17257, i64 %17262
  %17264 = load double, ptr %17263, align 8, !tbaa !11
  %17265 = call double @llvm.fmuladd.f64(double 0xBC83CC8A99AF5451, double %17264, double %17256)
  %17266 = load ptr, ptr %7, align 8, !tbaa !9
  %17267 = load i32, ptr %12, align 4, !tbaa !5
  %17268 = load i32, ptr %8, align 4, !tbaa !5
  %17269 = mul nsw i32 59, %17268
  %17270 = add nsw i32 %17267, %17269
  %17271 = sext i32 %17270 to i64
  %17272 = getelementptr inbounds double, ptr %17266, i64 %17271
  %17273 = load double, ptr %17272, align 8, !tbaa !11
  %17274 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %17273, double %17265)
  %17275 = load ptr, ptr %7, align 8, !tbaa !9
  %17276 = load i32, ptr %12, align 4, !tbaa !5
  %17277 = load i32, ptr %8, align 4, !tbaa !5
  %17278 = mul nsw i32 60, %17277
  %17279 = add nsw i32 %17276, %17278
  %17280 = sext i32 %17279 to i64
  %17281 = getelementptr inbounds double, ptr %17275, i64 %17280
  %17282 = load double, ptr %17281, align 8, !tbaa !11
  %17283 = call double @llvm.fmuladd.f64(double 0xBFA0A4D27CF86DCE, double %17282, double %17274)
  %17284 = load ptr, ptr %7, align 8, !tbaa !9
  %17285 = load i32, ptr %12, align 4, !tbaa !5
  %17286 = load i32, ptr %8, align 4, !tbaa !5
  %17287 = mul nsw i32 61, %17286
  %17288 = add nsw i32 %17285, %17287
  %17289 = sext i32 %17288 to i64
  %17290 = getelementptr inbounds double, ptr %17284, i64 %17289
  %17291 = load double, ptr %17290, align 8, !tbaa !11
  %17292 = call double @llvm.fmuladd.f64(double 0xBFE3E93C07AFC382, double %17291, double %17283)
  %17293 = load ptr, ptr %7, align 8, !tbaa !9
  %17294 = load i32, ptr %12, align 4, !tbaa !5
  %17295 = load i32, ptr %8, align 4, !tbaa !5
  %17296 = mul nsw i32 62, %17295
  %17297 = add nsw i32 %17294, %17296
  %17298 = sext i32 %17297 to i64
  %17299 = getelementptr inbounds double, ptr %17293, i64 %17298
  %17300 = load double, ptr %17299, align 8, !tbaa !11
  %17301 = call double @llvm.fmuladd.f64(double 0xBFE3E93C07AFC37F, double %17300, double %17292)
  %17302 = load ptr, ptr %7, align 8, !tbaa !9
  %17303 = load i32, ptr %12, align 4, !tbaa !5
  %17304 = load i32, ptr %8, align 4, !tbaa !5
  %17305 = mul nsw i32 63, %17304
  %17306 = add nsw i32 %17303, %17305
  %17307 = sext i32 %17306 to i64
  %17308 = getelementptr inbounds double, ptr %17302, i64 %17307
  %17309 = load double, ptr %17308, align 8, !tbaa !11
  %17310 = call double @llvm.fmuladd.f64(double 0xBFA0A4D27CF86DB4, double %17309, double %17301)
  %17311 = load ptr, ptr %7, align 8, !tbaa !9
  %17312 = load i32, ptr %12, align 4, !tbaa !5
  %17313 = load i32, ptr %8, align 4, !tbaa !5
  %17314 = mul nsw i32 64, %17313
  %17315 = add nsw i32 %17312, %17314
  %17316 = sext i32 %17315 to i64
  %17317 = getelementptr inbounds double, ptr %17311, i64 %17316
  %17318 = load double, ptr %17317, align 8, !tbaa !11
  %17319 = call double @llvm.fmuladd.f64(double 0xBC84818F8CE34E32, double %17318, double %17310)
  %17320 = load ptr, ptr %7, align 8, !tbaa !9
  %17321 = load i32, ptr %12, align 4, !tbaa !5
  %17322 = load i32, ptr %8, align 4, !tbaa !5
  %17323 = mul nsw i32 65, %17322
  %17324 = add nsw i32 %17321, %17323
  %17325 = sext i32 %17324 to i64
  %17326 = getelementptr inbounds double, ptr %17320, i64 %17325
  %17327 = load double, ptr %17326, align 8, !tbaa !11
  %17328 = call double @llvm.fmuladd.f64(double 0x3C6C48C6001F0ABE, double %17327, double %17319)
  %17329 = load ptr, ptr %7, align 8, !tbaa !9
  %17330 = load i32, ptr %12, align 4, !tbaa !5
  %17331 = load i32, ptr %8, align 4, !tbaa !5
  %17332 = mul nsw i32 66, %17331
  %17333 = add nsw i32 %17330, %17332
  %17334 = sext i32 %17333 to i64
  %17335 = getelementptr inbounds double, ptr %17329, i64 %17334
  %17336 = load double, ptr %17335, align 8, !tbaa !11
  %17337 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %17336, double %17328)
  %17338 = load ptr, ptr %7, align 8, !tbaa !9
  %17339 = load i32, ptr %12, align 4, !tbaa !5
  %17340 = load i32, ptr %8, align 4, !tbaa !5
  %17341 = mul nsw i32 67, %17340
  %17342 = add nsw i32 %17339, %17341
  %17343 = sext i32 %17342 to i64
  %17344 = getelementptr inbounds double, ptr %17338, i64 %17343
  %17345 = load double, ptr %17344, align 8, !tbaa !11
  %17346 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %17345, double %17337)
  store double %17346, ptr %11, align 8, !tbaa !11
  %17347 = load double, ptr %11, align 8, !tbaa !11
  %17348 = load ptr, ptr %9, align 8, !tbaa !9
  %17349 = load i32, ptr %12, align 4, !tbaa !5
  %17350 = load i32, ptr %10, align 4, !tbaa !5
  %17351 = mul nsw i32 60, %17350
  %17352 = add nsw i32 %17349, %17351
  %17353 = sext i32 %17352 to i64
  %17354 = getelementptr inbounds double, ptr %17348, i64 %17353
  store double %17347, ptr %17354, align 8, !tbaa !11
  %17355 = load ptr, ptr %7, align 8, !tbaa !9
  %17356 = load i32, ptr %12, align 4, !tbaa !5
  %17357 = load i32, ptr %8, align 4, !tbaa !5
  %17358 = mul nsw i32 20, %17357
  %17359 = add nsw i32 %17356, %17358
  %17360 = sext i32 %17359 to i64
  %17361 = getelementptr inbounds double, ptr %17355, i64 %17360
  %17362 = load double, ptr %17361, align 8, !tbaa !11
  %17363 = load ptr, ptr %7, align 8, !tbaa !9
  %17364 = load i32, ptr %12, align 4, !tbaa !5
  %17365 = load i32, ptr %8, align 4, !tbaa !5
  %17366 = mul nsw i32 22, %17365
  %17367 = add nsw i32 %17364, %17366
  %17368 = sext i32 %17367 to i64
  %17369 = getelementptr inbounds double, ptr %17363, i64 %17368
  %17370 = load double, ptr %17369, align 8, !tbaa !11
  %17371 = fmul double 0x3C90000000000000, %17370
  %17372 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %17362, double %17371)
  %17373 = load ptr, ptr %7, align 8, !tbaa !9
  %17374 = load i32, ptr %12, align 4, !tbaa !5
  %17375 = load i32, ptr %8, align 4, !tbaa !5
  %17376 = mul nsw i32 23, %17375
  %17377 = add nsw i32 %17374, %17376
  %17378 = sext i32 %17377 to i64
  %17379 = getelementptr inbounds double, ptr %17373, i64 %17378
  %17380 = load double, ptr %17379, align 8, !tbaa !11
  %17381 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %17380, double %17372)
  %17382 = load ptr, ptr %7, align 8, !tbaa !9
  %17383 = load i32, ptr %12, align 4, !tbaa !5
  %17384 = load i32, ptr %8, align 4, !tbaa !5
  %17385 = mul nsw i32 26, %17384
  %17386 = add nsw i32 %17383, %17385
  %17387 = sext i32 %17386 to i64
  %17388 = getelementptr inbounds double, ptr %17382, i64 %17387
  %17389 = load double, ptr %17388, align 8, !tbaa !11
  %17390 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %17389, double %17381)
  %17391 = load ptr, ptr %7, align 8, !tbaa !9
  %17392 = load i32, ptr %12, align 4, !tbaa !5
  %17393 = load i32, ptr %8, align 4, !tbaa !5
  %17394 = mul nsw i32 27, %17393
  %17395 = add nsw i32 %17392, %17394
  %17396 = sext i32 %17395 to i64
  %17397 = getelementptr inbounds double, ptr %17391, i64 %17396
  %17398 = load double, ptr %17397, align 8, !tbaa !11
  %17399 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %17398, double %17390)
  %17400 = load ptr, ptr %7, align 8, !tbaa !9
  %17401 = load i32, ptr %12, align 4, !tbaa !5
  %17402 = load i32, ptr %8, align 4, !tbaa !5
  %17403 = mul nsw i32 28, %17402
  %17404 = add nsw i32 %17401, %17403
  %17405 = sext i32 %17404 to i64
  %17406 = getelementptr inbounds double, ptr %17400, i64 %17405
  %17407 = load double, ptr %17406, align 8, !tbaa !11
  %17408 = call double @llvm.fmuladd.f64(double 0x3FD6F2A1D7A492C4, double %17407, double %17399)
  %17409 = load ptr, ptr %7, align 8, !tbaa !9
  %17410 = load i32, ptr %12, align 4, !tbaa !5
  %17411 = load i32, ptr %8, align 4, !tbaa !5
  %17412 = mul nsw i32 29, %17411
  %17413 = add nsw i32 %17410, %17412
  %17414 = sext i32 %17413 to i64
  %17415 = getelementptr inbounds double, ptr %17409, i64 %17414
  %17416 = load double, ptr %17415, align 8, !tbaa !11
  %17417 = call double @llvm.fmuladd.f64(double 0x3FEAEBF44A8E7A95, double %17416, double %17408)
  %17418 = load ptr, ptr %7, align 8, !tbaa !9
  %17419 = load i32, ptr %12, align 4, !tbaa !5
  %17420 = load i32, ptr %8, align 4, !tbaa !5
  %17421 = mul nsw i32 30, %17420
  %17422 = add nsw i32 %17419, %17421
  %17423 = sext i32 %17422 to i64
  %17424 = getelementptr inbounds double, ptr %17418, i64 %17423
  %17425 = load double, ptr %17424, align 8, !tbaa !11
  %17426 = call double @llvm.fmuladd.f64(double 0x3FEAEBF44A8E7A9A, double %17425, double %17417)
  %17427 = load ptr, ptr %7, align 8, !tbaa !9
  %17428 = load i32, ptr %12, align 4, !tbaa !5
  %17429 = load i32, ptr %8, align 4, !tbaa !5
  %17430 = mul nsw i32 31, %17429
  %17431 = add nsw i32 %17428, %17430
  %17432 = sext i32 %17431 to i64
  %17433 = getelementptr inbounds double, ptr %17427, i64 %17432
  %17434 = load double, ptr %17433, align 8, !tbaa !11
  %17435 = call double @llvm.fmuladd.f64(double 0x3FD6F2A1D7A492D5, double %17434, double %17426)
  %17436 = load ptr, ptr %7, align 8, !tbaa !9
  %17437 = load i32, ptr %12, align 4, !tbaa !5
  %17438 = load i32, ptr %8, align 4, !tbaa !5
  %17439 = mul nsw i32 33, %17438
  %17440 = add nsw i32 %17437, %17439
  %17441 = sext i32 %17440 to i64
  %17442 = getelementptr inbounds double, ptr %17436, i64 %17441
  %17443 = load double, ptr %17442, align 8, !tbaa !11
  %17444 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %17443, double %17435)
  %17445 = load ptr, ptr %7, align 8, !tbaa !9
  %17446 = load i32, ptr %12, align 4, !tbaa !5
  %17447 = load i32, ptr %8, align 4, !tbaa !5
  %17448 = mul nsw i32 34, %17447
  %17449 = add nsw i32 %17446, %17448
  %17450 = sext i32 %17449 to i64
  %17451 = getelementptr inbounds double, ptr %17445, i64 %17450
  %17452 = load double, ptr %17451, align 8, !tbaa !11
  %17453 = call double @llvm.fmuladd.f64(double 0x3CB3FFFFFFFFFFFF, double %17452, double %17444)
  %17454 = load ptr, ptr %7, align 8, !tbaa !9
  %17455 = load i32, ptr %12, align 4, !tbaa !5
  %17456 = load i32, ptr %8, align 4, !tbaa !5
  %17457 = mul nsw i32 35, %17456
  %17458 = add nsw i32 %17455, %17457
  %17459 = sext i32 %17458 to i64
  %17460 = getelementptr inbounds double, ptr %17454, i64 %17459
  %17461 = load double, ptr %17460, align 8, !tbaa !11
  %17462 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %17461, double %17453)
  %17463 = load ptr, ptr %7, align 8, !tbaa !9
  %17464 = load i32, ptr %12, align 4, !tbaa !5
  %17465 = load i32, ptr %8, align 4, !tbaa !5
  %17466 = mul nsw i32 52, %17465
  %17467 = add nsw i32 %17464, %17466
  %17468 = sext i32 %17467 to i64
  %17469 = getelementptr inbounds double, ptr %17463, i64 %17468
  %17470 = load double, ptr %17469, align 8, !tbaa !11
  %17471 = call double @llvm.fmuladd.f64(double 0x3C70F876CCDF6CD9, double %17470, double %17462)
  %17472 = load ptr, ptr %7, align 8, !tbaa !9
  %17473 = load i32, ptr %12, align 4, !tbaa !5
  %17474 = load i32, ptr %8, align 4, !tbaa !5
  %17475 = mul nsw i32 53, %17474
  %17476 = add nsw i32 %17473, %17475
  %17477 = sext i32 %17476 to i64
  %17478 = getelementptr inbounds double, ptr %17472, i64 %17477
  %17479 = load double, ptr %17478, align 8, !tbaa !11
  %17480 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %17479, double %17471)
  %17481 = load ptr, ptr %7, align 8, !tbaa !9
  %17482 = load i32, ptr %12, align 4, !tbaa !5
  %17483 = load i32, ptr %8, align 4, !tbaa !5
  %17484 = mul nsw i32 54, %17483
  %17485 = add nsw i32 %17482, %17484
  %17486 = sext i32 %17485 to i64
  %17487 = getelementptr inbounds double, ptr %17481, i64 %17486
  %17488 = load double, ptr %17487, align 8, !tbaa !11
  %17489 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %17488, double %17480)
  %17490 = load ptr, ptr %7, align 8, !tbaa !9
  %17491 = load i32, ptr %12, align 4, !tbaa !5
  %17492 = load i32, ptr %8, align 4, !tbaa !5
  %17493 = mul nsw i32 55, %17492
  %17494 = add nsw i32 %17491, %17493
  %17495 = sext i32 %17494 to i64
  %17496 = getelementptr inbounds double, ptr %17490, i64 %17495
  %17497 = load double, ptr %17496, align 8, !tbaa !11
  %17498 = call double @llvm.fmuladd.f64(double 0x3C96A09E667F3BCC, double %17497, double %17489)
  %17499 = load ptr, ptr %7, align 8, !tbaa !9
  %17500 = load i32, ptr %12, align 4, !tbaa !5
  %17501 = load i32, ptr %8, align 4, !tbaa !5
  %17502 = mul nsw i32 56, %17501
  %17503 = add nsw i32 %17500, %17502
  %17504 = sext i32 %17503 to i64
  %17505 = getelementptr inbounds double, ptr %17499, i64 %17504
  %17506 = load double, ptr %17505, align 8, !tbaa !11
  %17507 = call double @llvm.fmuladd.f64(double 0x3C70F876CCDF6CD9, double %17506, double %17498)
  %17508 = load ptr, ptr %7, align 8, !tbaa !9
  %17509 = load i32, ptr %12, align 4, !tbaa !5
  %17510 = load i32, ptr %8, align 4, !tbaa !5
  %17511 = mul nsw i32 57, %17510
  %17512 = add nsw i32 %17509, %17511
  %17513 = sext i32 %17512 to i64
  %17514 = getelementptr inbounds double, ptr %17508, i64 %17513
  %17515 = load double, ptr %17514, align 8, !tbaa !11
  %17516 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %17515, double %17507)
  %17517 = load ptr, ptr %7, align 8, !tbaa !9
  %17518 = load i32, ptr %12, align 4, !tbaa !5
  %17519 = load i32, ptr %8, align 4, !tbaa !5
  %17520 = mul nsw i32 58, %17519
  %17521 = add nsw i32 %17518, %17520
  %17522 = sext i32 %17521 to i64
  %17523 = getelementptr inbounds double, ptr %17517, i64 %17522
  %17524 = load double, ptr %17523, align 8, !tbaa !11
  %17525 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %17524, double %17516)
  %17526 = load ptr, ptr %7, align 8, !tbaa !9
  %17527 = load i32, ptr %12, align 4, !tbaa !5
  %17528 = load i32, ptr %8, align 4, !tbaa !5
  %17529 = mul nsw i32 59, %17528
  %17530 = add nsw i32 %17527, %17529
  %17531 = sext i32 %17530 to i64
  %17532 = getelementptr inbounds double, ptr %17526, i64 %17531
  %17533 = load double, ptr %17532, align 8, !tbaa !11
  %17534 = call double @llvm.fmuladd.f64(double 0xBCC3CC8A99AF5452, double %17533, double %17525)
  %17535 = load ptr, ptr %7, align 8, !tbaa !9
  %17536 = load i32, ptr %12, align 4, !tbaa !5
  %17537 = load i32, ptr %8, align 4, !tbaa !5
  %17538 = mul nsw i32 60, %17537
  %17539 = add nsw i32 %17536, %17538
  %17540 = sext i32 %17539 to i64
  %17541 = getelementptr inbounds double, ptr %17535, i64 %17540
  %17542 = load double, ptr %17541, align 8, !tbaa !11
  %17543 = call double @llvm.fmuladd.f64(double 0x3FA462D8D66D7FBE, double %17542, double %17534)
  %17544 = load ptr, ptr %7, align 8, !tbaa !9
  %17545 = load i32, ptr %12, align 4, !tbaa !5
  %17546 = load i32, ptr %8, align 4, !tbaa !5
  %17547 = mul nsw i32 61, %17546
  %17548 = add nsw i32 %17545, %17547
  %17549 = sext i32 %17548 to i64
  %17550 = getelementptr inbounds double, ptr %17544, i64 %17549
  %17551 = load double, ptr %17550, align 8, !tbaa !11
  %17552 = call double @llvm.fmuladd.f64(double 0xBFC5EA083165C4F6, double %17551, double %17543)
  %17553 = load ptr, ptr %7, align 8, !tbaa !9
  %17554 = load i32, ptr %12, align 4, !tbaa !5
  %17555 = load i32, ptr %8, align 4, !tbaa !5
  %17556 = mul nsw i32 62, %17555
  %17557 = add nsw i32 %17554, %17556
  %17558 = sext i32 %17557 to i64
  %17559 = getelementptr inbounds double, ptr %17553, i64 %17558
  %17560 = load double, ptr %17559, align 8, !tbaa !11
  %17561 = call double @llvm.fmuladd.f64(double 0x3FD4A299D1E97012, double %17560, double %17552)
  %17562 = load ptr, ptr %7, align 8, !tbaa !9
  %17563 = load i32, ptr %12, align 4, !tbaa !5
  %17564 = load i32, ptr %8, align 4, !tbaa !5
  %17565 = mul nsw i32 63, %17564
  %17566 = add nsw i32 %17563, %17565
  %17567 = sext i32 %17566 to i64
  %17568 = getelementptr inbounds double, ptr %17562, i64 %17567
  %17569 = load double, ptr %17568, align 8, !tbaa !11
  %17570 = call double @llvm.fmuladd.f64(double 0x400E488CB8C1EA78, double %17569, double %17561)
  %17571 = load ptr, ptr %7, align 8, !tbaa !9
  %17572 = load i32, ptr %12, align 4, !tbaa !5
  %17573 = load i32, ptr %8, align 4, !tbaa !5
  %17574 = mul nsw i32 64, %17573
  %17575 = add nsw i32 %17572, %17574
  %17576 = sext i32 %17575 to i64
  %17577 = getelementptr inbounds double, ptr %17571, i64 %17576
  %17578 = load double, ptr %17577, align 8, !tbaa !11
  %17579 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %17578, double %17570)
  %17580 = load ptr, ptr %7, align 8, !tbaa !9
  %17581 = load i32, ptr %12, align 4, !tbaa !5
  %17582 = load i32, ptr %8, align 4, !tbaa !5
  %17583 = mul nsw i32 65, %17582
  %17584 = add nsw i32 %17581, %17583
  %17585 = sext i32 %17584 to i64
  %17586 = getelementptr inbounds double, ptr %17580, i64 %17585
  %17587 = load double, ptr %17586, align 8, !tbaa !11
  %17588 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %17587, double %17579)
  %17589 = load ptr, ptr %7, align 8, !tbaa !9
  %17590 = load i32, ptr %12, align 4, !tbaa !5
  %17591 = load i32, ptr %8, align 4, !tbaa !5
  %17592 = mul nsw i32 66, %17591
  %17593 = add nsw i32 %17590, %17592
  %17594 = sext i32 %17593 to i64
  %17595 = getelementptr inbounds double, ptr %17589, i64 %17594
  %17596 = load double, ptr %17595, align 8, !tbaa !11
  %17597 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %17596, double %17588)
  %17598 = load ptr, ptr %7, align 8, !tbaa !9
  %17599 = load i32, ptr %12, align 4, !tbaa !5
  %17600 = load i32, ptr %8, align 4, !tbaa !5
  %17601 = mul nsw i32 67, %17600
  %17602 = add nsw i32 %17599, %17601
  %17603 = sext i32 %17602 to i64
  %17604 = getelementptr inbounds double, ptr %17598, i64 %17603
  %17605 = load double, ptr %17604, align 8, !tbaa !11
  %17606 = call double @llvm.fmuladd.f64(double 0x3CB0F876CCDF6CD8, double %17605, double %17597)
  store double %17606, ptr %11, align 8, !tbaa !11
  %17607 = load double, ptr %11, align 8, !tbaa !11
  %17608 = load ptr, ptr %9, align 8, !tbaa !9
  %17609 = load i32, ptr %12, align 4, !tbaa !5
  %17610 = load i32, ptr %10, align 4, !tbaa !5
  %17611 = mul nsw i32 61, %17610
  %17612 = add nsw i32 %17609, %17611
  %17613 = sext i32 %17612 to i64
  %17614 = getelementptr inbounds double, ptr %17608, i64 %17613
  store double %17607, ptr %17614, align 8, !tbaa !11
  %17615 = load ptr, ptr %7, align 8, !tbaa !9
  %17616 = load i32, ptr %12, align 4, !tbaa !5
  %17617 = load i32, ptr %8, align 4, !tbaa !5
  %17618 = mul nsw i32 20, %17617
  %17619 = add nsw i32 %17616, %17618
  %17620 = sext i32 %17619 to i64
  %17621 = getelementptr inbounds double, ptr %17615, i64 %17620
  %17622 = load double, ptr %17621, align 8, !tbaa !11
  %17623 = load ptr, ptr %7, align 8, !tbaa !9
  %17624 = load i32, ptr %12, align 4, !tbaa !5
  %17625 = load i32, ptr %8, align 4, !tbaa !5
  %17626 = mul nsw i32 21, %17625
  %17627 = add nsw i32 %17624, %17626
  %17628 = sext i32 %17627 to i64
  %17629 = getelementptr inbounds double, ptr %17623, i64 %17628
  %17630 = load double, ptr %17629, align 8, !tbaa !11
  %17631 = fmul double 0xBC78000000000002, %17630
  %17632 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %17622, double %17631)
  %17633 = load ptr, ptr %7, align 8, !tbaa !9
  %17634 = load i32, ptr %12, align 4, !tbaa !5
  %17635 = load i32, ptr %8, align 4, !tbaa !5
  %17636 = mul nsw i32 22, %17635
  %17637 = add nsw i32 %17634, %17636
  %17638 = sext i32 %17637 to i64
  %17639 = getelementptr inbounds double, ptr %17633, i64 %17638
  %17640 = load double, ptr %17639, align 8, !tbaa !11
  %17641 = call double @llvm.fmuladd.f64(double 0x3CA2FFFFFFFFFFFE, double %17640, double %17632)
  %17642 = load ptr, ptr %7, align 8, !tbaa !9
  %17643 = load i32, ptr %12, align 4, !tbaa !5
  %17644 = load i32, ptr %8, align 4, !tbaa !5
  %17645 = mul nsw i32 23, %17644
  %17646 = add nsw i32 %17643, %17645
  %17647 = sext i32 %17646 to i64
  %17648 = getelementptr inbounds double, ptr %17642, i64 %17647
  %17649 = load double, ptr %17648, align 8, !tbaa !11
  %17650 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %17649, double %17641)
  %17651 = load ptr, ptr %7, align 8, !tbaa !9
  %17652 = load i32, ptr %12, align 4, !tbaa !5
  %17653 = load i32, ptr %8, align 4, !tbaa !5
  %17654 = mul nsw i32 24, %17653
  %17655 = add nsw i32 %17652, %17654
  %17656 = sext i32 %17655 to i64
  %17657 = getelementptr inbounds double, ptr %17651, i64 %17656
  %17658 = load double, ptr %17657, align 8, !tbaa !11
  %17659 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %17658, double %17650)
  %17660 = load ptr, ptr %7, align 8, !tbaa !9
  %17661 = load i32, ptr %12, align 4, !tbaa !5
  %17662 = load i32, ptr %8, align 4, !tbaa !5
  %17663 = mul nsw i32 25, %17662
  %17664 = add nsw i32 %17661, %17663
  %17665 = sext i32 %17664 to i64
  %17666 = getelementptr inbounds double, ptr %17660, i64 %17665
  %17667 = load double, ptr %17666, align 8, !tbaa !11
  %17668 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %17667, double %17659)
  %17669 = load ptr, ptr %7, align 8, !tbaa !9
  %17670 = load i32, ptr %12, align 4, !tbaa !5
  %17671 = load i32, ptr %8, align 4, !tbaa !5
  %17672 = mul nsw i32 26, %17671
  %17673 = add nsw i32 %17670, %17672
  %17674 = sext i32 %17673 to i64
  %17675 = getelementptr inbounds double, ptr %17669, i64 %17674
  %17676 = load double, ptr %17675, align 8, !tbaa !11
  %17677 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %17676, double %17668)
  %17678 = load ptr, ptr %7, align 8, !tbaa !9
  %17679 = load i32, ptr %12, align 4, !tbaa !5
  %17680 = load i32, ptr %8, align 4, !tbaa !5
  %17681 = mul nsw i32 27, %17680
  %17682 = add nsw i32 %17679, %17681
  %17683 = sext i32 %17682 to i64
  %17684 = getelementptr inbounds double, ptr %17678, i64 %17683
  %17685 = load double, ptr %17684, align 8, !tbaa !11
  %17686 = call double @llvm.fmuladd.f64(double 0xBCC4800000000000, double %17685, double %17677)
  %17687 = load ptr, ptr %7, align 8, !tbaa !9
  %17688 = load i32, ptr %12, align 4, !tbaa !5
  %17689 = load i32, ptr %8, align 4, !tbaa !5
  %17690 = mul nsw i32 28, %17689
  %17691 = add nsw i32 %17688, %17690
  %17692 = sext i32 %17691 to i64
  %17693 = getelementptr inbounds double, ptr %17687, i64 %17692
  %17694 = load double, ptr %17693, align 8, !tbaa !11
  %17695 = call double @llvm.fmuladd.f64(double 0xBFACD49071EC601E, double %17694, double %17686)
  %17696 = load ptr, ptr %7, align 8, !tbaa !9
  %17697 = load i32, ptr %12, align 4, !tbaa !5
  %17698 = load i32, ptr %8, align 4, !tbaa !5
  %17699 = mul nsw i32 29, %17698
  %17700 = add nsw i32 %17697, %17699
  %17701 = sext i32 %17700 to i64
  %17702 = getelementptr inbounds double, ptr %17696, i64 %17701
  %17703 = load double, ptr %17702, align 8, !tbaa !11
  %17704 = call double @llvm.fmuladd.f64(double 0x3FCEFDC8894D07FE, double %17703, double %17695)
  %17705 = load ptr, ptr %7, align 8, !tbaa !9
  %17706 = load i32, ptr %12, align 4, !tbaa !5
  %17707 = load i32, ptr %8, align 4, !tbaa !5
  %17708 = mul nsw i32 30, %17707
  %17709 = add nsw i32 %17706, %17708
  %17710 = sext i32 %17709 to i64
  %17711 = getelementptr inbounds double, ptr %17705, i64 %17710
  %17712 = load double, ptr %17711, align 8, !tbaa !11
  %17713 = call double @llvm.fmuladd.f64(double 0xBFDD2EB9CCB3BE36, double %17712, double %17704)
  %17714 = load ptr, ptr %7, align 8, !tbaa !9
  %17715 = load i32, ptr %12, align 4, !tbaa !5
  %17716 = load i32, ptr %8, align 4, !tbaa !5
  %17717 = mul nsw i32 31, %17716
  %17718 = add nsw i32 %17715, %17717
  %17719 = sext i32 %17718 to i64
  %17720 = getelementptr inbounds double, ptr %17714, i64 %17719
  %17721 = load double, ptr %17720, align 8, !tbaa !11
  %17722 = call double @llvm.fmuladd.f64(double 0xC01569E165D7940C, double %17721, double %17713)
  %17723 = load ptr, ptr %7, align 8, !tbaa !9
  %17724 = load i32, ptr %12, align 4, !tbaa !5
  %17725 = load i32, ptr %8, align 4, !tbaa !5
  %17726 = mul nsw i32 32, %17725
  %17727 = add nsw i32 %17724, %17726
  %17728 = sext i32 %17727 to i64
  %17729 = getelementptr inbounds double, ptr %17723, i64 %17728
  %17730 = load double, ptr %17729, align 8, !tbaa !11
  %17731 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %17730, double %17722)
  %17732 = load ptr, ptr %7, align 8, !tbaa !9
  %17733 = load i32, ptr %12, align 4, !tbaa !5
  %17734 = load i32, ptr %8, align 4, !tbaa !5
  %17735 = mul nsw i32 33, %17734
  %17736 = add nsw i32 %17733, %17735
  %17737 = sext i32 %17736 to i64
  %17738 = getelementptr inbounds double, ptr %17732, i64 %17737
  %17739 = load double, ptr %17738, align 8, !tbaa !11
  %17740 = call double @llvm.fmuladd.f64(double 0x3C96000000000000, double %17739, double %17731)
  %17741 = load ptr, ptr %7, align 8, !tbaa !9
  %17742 = load i32, ptr %12, align 4, !tbaa !5
  %17743 = load i32, ptr %8, align 4, !tbaa !5
  %17744 = mul nsw i32 34, %17743
  %17745 = add nsw i32 %17742, %17744
  %17746 = sext i32 %17745 to i64
  %17747 = getelementptr inbounds double, ptr %17741, i64 %17746
  %17748 = load double, ptr %17747, align 8, !tbaa !11
  %17749 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %17748, double %17740)
  %17750 = load ptr, ptr %7, align 8, !tbaa !9
  %17751 = load i32, ptr %12, align 4, !tbaa !5
  %17752 = load i32, ptr %8, align 4, !tbaa !5
  %17753 = mul nsw i32 35, %17752
  %17754 = add nsw i32 %17751, %17753
  %17755 = sext i32 %17754 to i64
  %17756 = getelementptr inbounds double, ptr %17750, i64 %17755
  %17757 = load double, ptr %17756, align 8, !tbaa !11
  %17758 = call double @llvm.fmuladd.f64(double 0x3CB8000000000001, double %17757, double %17749)
  %17759 = load ptr, ptr %7, align 8, !tbaa !9
  %17760 = load i32, ptr %12, align 4, !tbaa !5
  %17761 = load i32, ptr %8, align 4, !tbaa !5
  %17762 = mul nsw i32 52, %17761
  %17763 = add nsw i32 %17760, %17762
  %17764 = sext i32 %17763 to i64
  %17765 = getelementptr inbounds double, ptr %17759, i64 %17764
  %17766 = load double, ptr %17765, align 8, !tbaa !11
  %17767 = call double @llvm.fmuladd.f64(double 0x3CA02CD13B44F3C0, double %17766, double %17758)
  %17768 = load ptr, ptr %7, align 8, !tbaa !9
  %17769 = load i32, ptr %12, align 4, !tbaa !5
  %17770 = load i32, ptr %8, align 4, !tbaa !5
  %17771 = mul nsw i32 54, %17770
  %17772 = add nsw i32 %17769, %17771
  %17773 = sext i32 %17772 to i64
  %17774 = getelementptr inbounds double, ptr %17768, i64 %17773
  %17775 = load double, ptr %17774, align 8, !tbaa !11
  %17776 = call double @llvm.fmuladd.f64(double 0x3C70F876CCDF6CD9, double %17775, double %17767)
  %17777 = load ptr, ptr %7, align 8, !tbaa !9
  %17778 = load i32, ptr %12, align 4, !tbaa !5
  %17779 = load i32, ptr %8, align 4, !tbaa !5
  %17780 = mul nsw i32 55, %17779
  %17781 = add nsw i32 %17778, %17780
  %17782 = sext i32 %17781 to i64
  %17783 = getelementptr inbounds double, ptr %17777, i64 %17782
  %17784 = load double, ptr %17783, align 8, !tbaa !11
  %17785 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %17784, double %17776)
  %17786 = load ptr, ptr %7, align 8, !tbaa !9
  %17787 = load i32, ptr %12, align 4, !tbaa !5
  %17788 = load i32, ptr %8, align 4, !tbaa !5
  %17789 = mul nsw i32 56, %17788
  %17790 = add nsw i32 %17787, %17789
  %17791 = sext i32 %17790 to i64
  %17792 = getelementptr inbounds double, ptr %17786, i64 %17791
  %17793 = load double, ptr %17792, align 8, !tbaa !11
  %17794 = call double @llvm.fmuladd.f64(double 0xBCABEE4386850DD1, double %17793, double %17785)
  %17795 = load ptr, ptr %7, align 8, !tbaa !9
  %17796 = load i32, ptr %12, align 4, !tbaa !5
  %17797 = load i32, ptr %8, align 4, !tbaa !5
  %17798 = mul nsw i32 57, %17797
  %17799 = add nsw i32 %17796, %17798
  %17800 = sext i32 %17799 to i64
  %17801 = getelementptr inbounds double, ptr %17795, i64 %17800
  %17802 = load double, ptr %17801, align 8, !tbaa !11
  %17803 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %17802, double %17794)
  %17804 = load ptr, ptr %7, align 8, !tbaa !9
  %17805 = load i32, ptr %12, align 4, !tbaa !5
  %17806 = load i32, ptr %8, align 4, !tbaa !5
  %17807 = mul nsw i32 58, %17806
  %17808 = add nsw i32 %17805, %17807
  %17809 = sext i32 %17808 to i64
  %17810 = getelementptr inbounds double, ptr %17804, i64 %17809
  %17811 = load double, ptr %17810, align 8, !tbaa !11
  %17812 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %17811, double %17803)
  %17813 = load ptr, ptr %7, align 8, !tbaa !9
  %17814 = load i32, ptr %12, align 4, !tbaa !5
  %17815 = load i32, ptr %8, align 4, !tbaa !5
  %17816 = mul nsw i32 59, %17815
  %17817 = add nsw i32 %17814, %17816
  %17818 = sext i32 %17817 to i64
  %17819 = getelementptr inbounds double, ptr %17813, i64 %17818
  %17820 = load double, ptr %17819, align 8, !tbaa !11
  %17821 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %17820, double %17812)
  %17822 = load ptr, ptr %7, align 8, !tbaa !9
  %17823 = load i32, ptr %12, align 4, !tbaa !5
  %17824 = load i32, ptr %8, align 4, !tbaa !5
  %17825 = mul nsw i32 60, %17824
  %17826 = add nsw i32 %17823, %17825
  %17827 = sext i32 %17826 to i64
  %17828 = getelementptr inbounds double, ptr %17822, i64 %17827
  %17829 = load double, ptr %17828, align 8, !tbaa !11
  %17830 = call double @llvm.fmuladd.f64(double 0x400E488CB8C1EA66, double %17829, double %17821)
  %17831 = load ptr, ptr %7, align 8, !tbaa !9
  %17832 = load i32, ptr %12, align 4, !tbaa !5
  %17833 = load i32, ptr %8, align 4, !tbaa !5
  %17834 = mul nsw i32 61, %17833
  %17835 = add nsw i32 %17832, %17834
  %17836 = sext i32 %17835 to i64
  %17837 = getelementptr inbounds double, ptr %17831, i64 %17836
  %17838 = load double, ptr %17837, align 8, !tbaa !11
  %17839 = call double @llvm.fmuladd.f64(double 0x3FD4A299D1E9700C, double %17838, double %17830)
  %17840 = load ptr, ptr %7, align 8, !tbaa !9
  %17841 = load i32, ptr %12, align 4, !tbaa !5
  %17842 = load i32, ptr %8, align 4, !tbaa !5
  %17843 = mul nsw i32 62, %17842
  %17844 = add nsw i32 %17841, %17843
  %17845 = sext i32 %17844 to i64
  %17846 = getelementptr inbounds double, ptr %17840, i64 %17845
  %17847 = load double, ptr %17846, align 8, !tbaa !11
  %17848 = call double @llvm.fmuladd.f64(double 0xBFC5EA083165C4F9, double %17847, double %17839)
  %17849 = load ptr, ptr %7, align 8, !tbaa !9
  %17850 = load i32, ptr %12, align 4, !tbaa !5
  %17851 = load i32, ptr %8, align 4, !tbaa !5
  %17852 = mul nsw i32 63, %17851
  %17853 = add nsw i32 %17850, %17852
  %17854 = sext i32 %17853 to i64
  %17855 = getelementptr inbounds double, ptr %17849, i64 %17854
  %17856 = load double, ptr %17855, align 8, !tbaa !11
  %17857 = call double @llvm.fmuladd.f64(double 0x3FA462D8D66D7F7F, double %17856, double %17848)
  %17858 = load ptr, ptr %7, align 8, !tbaa !9
  %17859 = load i32, ptr %12, align 4, !tbaa !5
  %17860 = load i32, ptr %8, align 4, !tbaa !5
  %17861 = mul nsw i32 64, %17860
  %17862 = add nsw i32 %17859, %17861
  %17863 = sext i32 %17862 to i64
  %17864 = getelementptr inbounds double, ptr %17858, i64 %17863
  %17865 = load double, ptr %17864, align 8, !tbaa !11
  %17866 = call double @llvm.fmuladd.f64(double 0x3CB9DA84FC1C5FD3, double %17865, double %17857)
  %17867 = load ptr, ptr %7, align 8, !tbaa !9
  %17868 = load i32, ptr %12, align 4, !tbaa !5
  %17869 = load i32, ptr %8, align 4, !tbaa !5
  %17870 = mul nsw i32 66, %17869
  %17871 = add nsw i32 %17868, %17870
  %17872 = sext i32 %17871 to i64
  %17873 = getelementptr inbounds double, ptr %17867, i64 %17872
  %17874 = load double, ptr %17873, align 8, !tbaa !11
  %17875 = call double @llvm.fmuladd.f64(double 0xBC70F876CCDF6CD9, double %17874, double %17866)
  %17876 = load ptr, ptr %7, align 8, !tbaa !9
  %17877 = load i32, ptr %12, align 4, !tbaa !5
  %17878 = load i32, ptr %8, align 4, !tbaa !5
  %17879 = mul nsw i32 67, %17878
  %17880 = add nsw i32 %17877, %17879
  %17881 = sext i32 %17880 to i64
  %17882 = getelementptr inbounds double, ptr %17876, i64 %17881
  %17883 = load double, ptr %17882, align 8, !tbaa !11
  %17884 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %17883, double %17875)
  store double %17884, ptr %11, align 8, !tbaa !11
  %17885 = load double, ptr %11, align 8, !tbaa !11
  %17886 = load ptr, ptr %9, align 8, !tbaa !9
  %17887 = load i32, ptr %12, align 4, !tbaa !5
  %17888 = load i32, ptr %10, align 4, !tbaa !5
  %17889 = mul nsw i32 62, %17888
  %17890 = add nsw i32 %17887, %17889
  %17891 = sext i32 %17890 to i64
  %17892 = getelementptr inbounds double, ptr %17886, i64 %17891
  store double %17885, ptr %17892, align 8, !tbaa !11
  %17893 = load ptr, ptr %7, align 8, !tbaa !9
  %17894 = load i32, ptr %12, align 4, !tbaa !5
  %17895 = load i32, ptr %8, align 4, !tbaa !5
  %17896 = mul nsw i32 21, %17895
  %17897 = add nsw i32 %17894, %17896
  %17898 = sext i32 %17897 to i64
  %17899 = getelementptr inbounds double, ptr %17893, i64 %17898
  %17900 = load double, ptr %17899, align 8, !tbaa !11
  %17901 = load ptr, ptr %7, align 8, !tbaa !9
  %17902 = load i32, ptr %12, align 4, !tbaa !5
  %17903 = load i32, ptr %8, align 4, !tbaa !5
  %17904 = mul nsw i32 22, %17903
  %17905 = add nsw i32 %17902, %17904
  %17906 = sext i32 %17905 to i64
  %17907 = getelementptr inbounds double, ptr %17901, i64 %17906
  %17908 = load double, ptr %17907, align 8, !tbaa !11
  %17909 = fmul double 0xBC92000000000000, %17908
  %17910 = call double @llvm.fmuladd.f64(double 0x3CA2FFFFFFFFFFFE, double %17900, double %17909)
  %17911 = load ptr, ptr %7, align 8, !tbaa !9
  %17912 = load i32, ptr %12, align 4, !tbaa !5
  %17913 = load i32, ptr %8, align 4, !tbaa !5
  %17914 = mul nsw i32 23, %17913
  %17915 = add nsw i32 %17912, %17914
  %17916 = sext i32 %17915 to i64
  %17917 = getelementptr inbounds double, ptr %17911, i64 %17916
  %17918 = load double, ptr %17917, align 8, !tbaa !11
  %17919 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %17918, double %17910)
  %17920 = load ptr, ptr %7, align 8, !tbaa !9
  %17921 = load i32, ptr %12, align 4, !tbaa !5
  %17922 = load i32, ptr %8, align 4, !tbaa !5
  %17923 = mul nsw i32 24, %17922
  %17924 = add nsw i32 %17921, %17923
  %17925 = sext i32 %17924 to i64
  %17926 = getelementptr inbounds double, ptr %17920, i64 %17925
  %17927 = load double, ptr %17926, align 8, !tbaa !11
  %17928 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %17927, double %17919)
  %17929 = load ptr, ptr %7, align 8, !tbaa !9
  %17930 = load i32, ptr %12, align 4, !tbaa !5
  %17931 = load i32, ptr %8, align 4, !tbaa !5
  %17932 = mul nsw i32 25, %17931
  %17933 = add nsw i32 %17930, %17932
  %17934 = sext i32 %17933 to i64
  %17935 = getelementptr inbounds double, ptr %17929, i64 %17934
  %17936 = load double, ptr %17935, align 8, !tbaa !11
  %17937 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %17936, double %17928)
  %17938 = load ptr, ptr %7, align 8, !tbaa !9
  %17939 = load i32, ptr %12, align 4, !tbaa !5
  %17940 = load i32, ptr %8, align 4, !tbaa !5
  %17941 = mul nsw i32 26, %17940
  %17942 = add nsw i32 %17939, %17941
  %17943 = sext i32 %17942 to i64
  %17944 = getelementptr inbounds double, ptr %17938, i64 %17943
  %17945 = load double, ptr %17944, align 8, !tbaa !11
  %17946 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %17945, double %17937)
  %17947 = load ptr, ptr %7, align 8, !tbaa !9
  %17948 = load i32, ptr %12, align 4, !tbaa !5
  %17949 = load i32, ptr %8, align 4, !tbaa !5
  %17950 = mul nsw i32 27, %17949
  %17951 = add nsw i32 %17948, %17950
  %17952 = sext i32 %17951 to i64
  %17953 = getelementptr inbounds double, ptr %17947, i64 %17952
  %17954 = load double, ptr %17953, align 8, !tbaa !11
  %17955 = call double @llvm.fmuladd.f64(double 0xBCA9FFFFFFFFFFFE, double %17954, double %17946)
  %17956 = load ptr, ptr %7, align 8, !tbaa !9
  %17957 = load i32, ptr %12, align 4, !tbaa !5
  %17958 = load i32, ptr %8, align 4, !tbaa !5
  %17959 = mul nsw i32 28, %17958
  %17960 = add nsw i32 %17957, %17959
  %17961 = sext i32 %17960 to i64
  %17962 = getelementptr inbounds double, ptr %17956, i64 %17961
  %17963 = load double, ptr %17962, align 8, !tbaa !11
  %17964 = call double @llvm.fmuladd.f64(double 0xC01569E165D79415, double %17963, double %17955)
  %17965 = load ptr, ptr %7, align 8, !tbaa !9
  %17966 = load i32, ptr %12, align 4, !tbaa !5
  %17967 = load i32, ptr %8, align 4, !tbaa !5
  %17968 = mul nsw i32 29, %17967
  %17969 = add nsw i32 %17966, %17968
  %17970 = sext i32 %17969 to i64
  %17971 = getelementptr inbounds double, ptr %17965, i64 %17970
  %17972 = load double, ptr %17971, align 8, !tbaa !11
  %17973 = call double @llvm.fmuladd.f64(double 0xBFDD2EB9CCB3BDB8, double %17972, double %17964)
  %17974 = load ptr, ptr %7, align 8, !tbaa !9
  %17975 = load i32, ptr %12, align 4, !tbaa !5
  %17976 = load i32, ptr %8, align 4, !tbaa !5
  %17977 = mul nsw i32 30, %17976
  %17978 = add nsw i32 %17975, %17977
  %17979 = sext i32 %17978 to i64
  %17980 = getelementptr inbounds double, ptr %17974, i64 %17979
  %17981 = load double, ptr %17980, align 8, !tbaa !11
  %17982 = call double @llvm.fmuladd.f64(double 0x3FCEFDC8894D07B6, double %17981, double %17973)
  %17983 = load ptr, ptr %7, align 8, !tbaa !9
  %17984 = load i32, ptr %12, align 4, !tbaa !5
  %17985 = load i32, ptr %8, align 4, !tbaa !5
  %17986 = mul nsw i32 31, %17985
  %17987 = add nsw i32 %17984, %17986
  %17988 = sext i32 %17987 to i64
  %17989 = getelementptr inbounds double, ptr %17983, i64 %17988
  %17990 = load double, ptr %17989, align 8, !tbaa !11
  %17991 = call double @llvm.fmuladd.f64(double 0xBFACD49071EC5FCE, double %17990, double %17982)
  %17992 = load ptr, ptr %7, align 8, !tbaa !9
  %17993 = load i32, ptr %12, align 4, !tbaa !5
  %17994 = load i32, ptr %8, align 4, !tbaa !5
  %17995 = mul nsw i32 32, %17994
  %17996 = add nsw i32 %17993, %17995
  %17997 = sext i32 %17996 to i64
  %17998 = getelementptr inbounds double, ptr %17992, i64 %17997
  %17999 = load double, ptr %17998, align 8, !tbaa !11
  %18000 = call double @llvm.fmuladd.f64(double 0x3CB8000000000001, double %17999, double %17991)
  %18001 = load ptr, ptr %7, align 8, !tbaa !9
  %18002 = load i32, ptr %12, align 4, !tbaa !5
  %18003 = load i32, ptr %8, align 4, !tbaa !5
  %18004 = mul nsw i32 33, %18003
  %18005 = add nsw i32 %18002, %18004
  %18006 = sext i32 %18005 to i64
  %18007 = getelementptr inbounds double, ptr %18001, i64 %18006
  %18008 = load double, ptr %18007, align 8, !tbaa !11
  %18009 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %18008, double %18000)
  %18010 = load ptr, ptr %7, align 8, !tbaa !9
  %18011 = load i32, ptr %12, align 4, !tbaa !5
  %18012 = load i32, ptr %8, align 4, !tbaa !5
  %18013 = mul nsw i32 34, %18012
  %18014 = add nsw i32 %18011, %18013
  %18015 = sext i32 %18014 to i64
  %18016 = getelementptr inbounds double, ptr %18010, i64 %18015
  %18017 = load double, ptr %18016, align 8, !tbaa !11
  %18018 = call double @llvm.fmuladd.f64(double 0x3C92000000000000, double %18017, double %18009)
  %18019 = load ptr, ptr %7, align 8, !tbaa !9
  %18020 = load i32, ptr %12, align 4, !tbaa !5
  %18021 = load i32, ptr %8, align 4, !tbaa !5
  %18022 = mul nsw i32 35, %18021
  %18023 = add nsw i32 %18020, %18022
  %18024 = sext i32 %18023 to i64
  %18025 = getelementptr inbounds double, ptr %18019, i64 %18024
  %18026 = load double, ptr %18025, align 8, !tbaa !11
  %18027 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %18026, double %18018)
  %18028 = load ptr, ptr %7, align 8, !tbaa !9
  %18029 = load i32, ptr %12, align 4, !tbaa !5
  %18030 = load i32, ptr %8, align 4, !tbaa !5
  %18031 = mul nsw i32 52, %18030
  %18032 = add nsw i32 %18029, %18031
  %18033 = sext i32 %18032 to i64
  %18034 = getelementptr inbounds double, ptr %18028, i64 %18033
  %18035 = load double, ptr %18034, align 8, !tbaa !11
  %18036 = call double @llvm.fmuladd.f64(double 0xBC8152F9467969C8, double %18035, double %18027)
  %18037 = load ptr, ptr %7, align 8, !tbaa !9
  %18038 = load i32, ptr %12, align 4, !tbaa !5
  %18039 = load i32, ptr %8, align 4, !tbaa !5
  %18040 = mul nsw i32 53, %18039
  %18041 = add nsw i32 %18038, %18040
  %18042 = sext i32 %18041 to i64
  %18043 = getelementptr inbounds double, ptr %18037, i64 %18042
  %18044 = load double, ptr %18043, align 8, !tbaa !11
  %18045 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %18044, double %18036)
  %18046 = load ptr, ptr %7, align 8, !tbaa !9
  %18047 = load i32, ptr %12, align 4, !tbaa !5
  %18048 = load i32, ptr %8, align 4, !tbaa !5
  %18049 = mul nsw i32 54, %18048
  %18050 = add nsw i32 %18047, %18049
  %18051 = sext i32 %18050 to i64
  %18052 = getelementptr inbounds double, ptr %18046, i64 %18051
  %18053 = load double, ptr %18052, align 8, !tbaa !11
  %18054 = call double @llvm.fmuladd.f64(double 0xBC926280B3476096, double %18053, double %18045)
  %18055 = load ptr, ptr %7, align 8, !tbaa !9
  %18056 = load i32, ptr %12, align 4, !tbaa !5
  %18057 = load i32, ptr %8, align 4, !tbaa !5
  %18058 = mul nsw i32 55, %18057
  %18059 = add nsw i32 %18056, %18058
  %18060 = sext i32 %18059 to i64
  %18061 = getelementptr inbounds double, ptr %18055, i64 %18060
  %18062 = load double, ptr %18061, align 8, !tbaa !11
  %18063 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %18062, double %18054)
  %18064 = load ptr, ptr %7, align 8, !tbaa !9
  %18065 = load i32, ptr %12, align 4, !tbaa !5
  %18066 = load i32, ptr %8, align 4, !tbaa !5
  %18067 = mul nsw i32 56, %18066
  %18068 = add nsw i32 %18065, %18067
  %18069 = sext i32 %18068 to i64
  %18070 = getelementptr inbounds double, ptr %18064, i64 %18069
  %18071 = load double, ptr %18070, align 8, !tbaa !11
  %18072 = call double @llvm.fmuladd.f64(double 0x3C9CFDCAF353049B, double %18071, double %18063)
  %18073 = load ptr, ptr %7, align 8, !tbaa !9
  %18074 = load i32, ptr %12, align 4, !tbaa !5
  %18075 = load i32, ptr %8, align 4, !tbaa !5
  %18076 = mul nsw i32 57, %18075
  %18077 = add nsw i32 %18074, %18076
  %18078 = sext i32 %18077 to i64
  %18079 = getelementptr inbounds double, ptr %18073, i64 %18078
  %18080 = load double, ptr %18079, align 8, !tbaa !11
  %18081 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %18080, double %18072)
  %18082 = load ptr, ptr %7, align 8, !tbaa !9
  %18083 = load i32, ptr %12, align 4, !tbaa !5
  %18084 = load i32, ptr %8, align 4, !tbaa !5
  %18085 = mul nsw i32 58, %18084
  %18086 = add nsw i32 %18083, %18085
  %18087 = sext i32 %18086 to i64
  %18088 = getelementptr inbounds double, ptr %18082, i64 %18087
  %18089 = load double, ptr %18088, align 8, !tbaa !11
  %18090 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %18089, double %18081)
  %18091 = load ptr, ptr %7, align 8, !tbaa !9
  %18092 = load i32, ptr %12, align 4, !tbaa !5
  %18093 = load i32, ptr %8, align 4, !tbaa !5
  %18094 = mul nsw i32 59, %18093
  %18095 = add nsw i32 %18092, %18094
  %18096 = sext i32 %18095 to i64
  %18097 = getelementptr inbounds double, ptr %18091, i64 %18096
  %18098 = load double, ptr %18097, align 8, !tbaa !11
  %18099 = call double @llvm.fmuladd.f64(double 0x3CA3CC8A99AF5452, double %18098, double %18090)
  %18100 = load ptr, ptr %7, align 8, !tbaa !9
  %18101 = load i32, ptr %12, align 4, !tbaa !5
  %18102 = load i32, ptr %8, align 4, !tbaa !5
  %18103 = mul nsw i32 60, %18102
  %18104 = add nsw i32 %18101, %18103
  %18105 = sext i32 %18104 to i64
  %18106 = getelementptr inbounds double, ptr %18100, i64 %18105
  %18107 = load double, ptr %18106, align 8, !tbaa !11
  %18108 = call double @llvm.fmuladd.f64(double 0xBFD039FE04F71643, double %18107, double %18099)
  %18109 = load ptr, ptr %7, align 8, !tbaa !9
  %18110 = load i32, ptr %12, align 4, !tbaa !5
  %18111 = load i32, ptr %8, align 4, !tbaa !5
  %18112 = mul nsw i32 61, %18111
  %18113 = add nsw i32 %18110, %18112
  %18114 = sext i32 %18113 to i64
  %18115 = getelementptr inbounds double, ptr %18109, i64 %18114
  %18116 = load double, ptr %18115, align 8, !tbaa !11
  %18117 = call double @llvm.fmuladd.f64(double 0xBFE30958FBF81244, double %18116, double %18108)
  %18118 = load ptr, ptr %7, align 8, !tbaa !9
  %18119 = load i32, ptr %12, align 4, !tbaa !5
  %18120 = load i32, ptr %8, align 4, !tbaa !5
  %18121 = mul nsw i32 62, %18120
  %18122 = add nsw i32 %18119, %18121
  %18123 = sext i32 %18122 to i64
  %18124 = getelementptr inbounds double, ptr %18118, i64 %18123
  %18125 = load double, ptr %18124, align 8, !tbaa !11
  %18126 = call double @llvm.fmuladd.f64(double 0xBFE30958FBF81231, double %18125, double %18117)
  %18127 = load ptr, ptr %7, align 8, !tbaa !9
  %18128 = load i32, ptr %12, align 4, !tbaa !5
  %18129 = load i32, ptr %8, align 4, !tbaa !5
  %18130 = mul nsw i32 63, %18129
  %18131 = add nsw i32 %18128, %18130
  %18132 = sext i32 %18131 to i64
  %18133 = getelementptr inbounds double, ptr %18127, i64 %18132
  %18134 = load double, ptr %18133, align 8, !tbaa !11
  %18135 = call double @llvm.fmuladd.f64(double 0xBFD039FE04F71638, double %18134, double %18126)
  %18136 = load ptr, ptr %7, align 8, !tbaa !9
  %18137 = load i32, ptr %12, align 4, !tbaa !5
  %18138 = load i32, ptr %8, align 4, !tbaa !5
  %18139 = mul nsw i32 64, %18138
  %18140 = add nsw i32 %18137, %18139
  %18141 = sext i32 %18140 to i64
  %18142 = getelementptr inbounds double, ptr %18136, i64 %18141
  %18143 = load double, ptr %18142, align 8, !tbaa !11
  %18144 = call double @llvm.fmuladd.f64(double 0x3C93F9CBD67C52CA, double %18143, double %18135)
  %18145 = load ptr, ptr %7, align 8, !tbaa !9
  %18146 = load i32, ptr %12, align 4, !tbaa !5
  %18147 = load i32, ptr %8, align 4, !tbaa !5
  %18148 = mul nsw i32 65, %18147
  %18149 = add nsw i32 %18146, %18148
  %18150 = sext i32 %18149 to i64
  %18151 = getelementptr inbounds double, ptr %18145, i64 %18150
  %18152 = load double, ptr %18151, align 8, !tbaa !11
  %18153 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %18152, double %18144)
  %18154 = load ptr, ptr %7, align 8, !tbaa !9
  %18155 = load i32, ptr %12, align 4, !tbaa !5
  %18156 = load i32, ptr %8, align 4, !tbaa !5
  %18157 = mul nsw i32 66, %18156
  %18158 = add nsw i32 %18155, %18157
  %18159 = sext i32 %18158 to i64
  %18160 = getelementptr inbounds double, ptr %18154, i64 %18159
  %18161 = load double, ptr %18160, align 8, !tbaa !11
  %18162 = call double @llvm.fmuladd.f64(double 0xBC8F1CD9CCEEF238, double %18161, double %18153)
  %18163 = load ptr, ptr %7, align 8, !tbaa !9
  %18164 = load i32, ptr %12, align 4, !tbaa !5
  %18165 = load i32, ptr %8, align 4, !tbaa !5
  %18166 = mul nsw i32 67, %18165
  %18167 = add nsw i32 %18164, %18166
  %18168 = sext i32 %18167 to i64
  %18169 = getelementptr inbounds double, ptr %18163, i64 %18168
  %18170 = load double, ptr %18169, align 8, !tbaa !11
  %18171 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %18170, double %18162)
  store double %18171, ptr %11, align 8, !tbaa !11
  %18172 = load double, ptr %11, align 8, !tbaa !11
  %18173 = load ptr, ptr %9, align 8, !tbaa !9
  %18174 = load i32, ptr %12, align 4, !tbaa !5
  %18175 = load i32, ptr %10, align 4, !tbaa !5
  %18176 = mul nsw i32 63, %18175
  %18177 = add nsw i32 %18174, %18176
  %18178 = sext i32 %18177 to i64
  %18179 = getelementptr inbounds double, ptr %18173, i64 %18178
  store double %18172, ptr %18179, align 8, !tbaa !11
  %18180 = load ptr, ptr %7, align 8, !tbaa !9
  %18181 = load i32, ptr %12, align 4, !tbaa !5
  %18182 = load i32, ptr %8, align 4, !tbaa !5
  %18183 = mul nsw i32 20, %18182
  %18184 = add nsw i32 %18181, %18183
  %18185 = sext i32 %18184 to i64
  %18186 = getelementptr inbounds double, ptr %18180, i64 %18185
  %18187 = load double, ptr %18186, align 8, !tbaa !11
  %18188 = load ptr, ptr %7, align 8, !tbaa !9
  %18189 = load i32, ptr %12, align 4, !tbaa !5
  %18190 = load i32, ptr %8, align 4, !tbaa !5
  %18191 = mul nsw i32 21, %18190
  %18192 = add nsw i32 %18189, %18191
  %18193 = sext i32 %18192 to i64
  %18194 = getelementptr inbounds double, ptr %18188, i64 %18193
  %18195 = load double, ptr %18194, align 8, !tbaa !11
  %18196 = fmul double 0xBC70000000000001, %18195
  %18197 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %18187, double %18196)
  %18198 = load ptr, ptr %7, align 8, !tbaa !9
  %18199 = load i32, ptr %12, align 4, !tbaa !5
  %18200 = load i32, ptr %8, align 4, !tbaa !5
  %18201 = mul nsw i32 24, %18200
  %18202 = add nsw i32 %18199, %18201
  %18203 = sext i32 %18202 to i64
  %18204 = getelementptr inbounds double, ptr %18198, i64 %18203
  %18205 = load double, ptr %18204, align 8, !tbaa !11
  %18206 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %18205, double %18197)
  %18207 = load ptr, ptr %7, align 8, !tbaa !9
  %18208 = load i32, ptr %12, align 4, !tbaa !5
  %18209 = load i32, ptr %8, align 4, !tbaa !5
  %18210 = mul nsw i32 26, %18209
  %18211 = add nsw i32 %18208, %18210
  %18212 = sext i32 %18211 to i64
  %18213 = getelementptr inbounds double, ptr %18207, i64 %18212
  %18214 = load double, ptr %18213, align 8, !tbaa !11
  %18215 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %18214, double %18206)
  %18216 = load ptr, ptr %7, align 8, !tbaa !9
  %18217 = load i32, ptr %12, align 4, !tbaa !5
  %18218 = load i32, ptr %8, align 4, !tbaa !5
  %18219 = mul nsw i32 27, %18218
  %18220 = add nsw i32 %18217, %18219
  %18221 = sext i32 %18220 to i64
  %18222 = getelementptr inbounds double, ptr %18216, i64 %18221
  %18223 = load double, ptr %18222, align 8, !tbaa !11
  %18224 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %18223, double %18215)
  %18225 = load ptr, ptr %7, align 8, !tbaa !9
  %18226 = load i32, ptr %12, align 4, !tbaa !5
  %18227 = load i32, ptr %8, align 4, !tbaa !5
  %18228 = mul nsw i32 28, %18227
  %18229 = add nsw i32 %18226, %18228
  %18230 = sext i32 %18229 to i64
  %18231 = getelementptr inbounds double, ptr %18225, i64 %18230
  %18232 = load double, ptr %18231, align 8, !tbaa !11
  %18233 = call double @llvm.fmuladd.f64(double 0xBFAC37F3CCE9FD18, double %18232, double %18224)
  %18234 = load ptr, ptr %7, align 8, !tbaa !9
  %18235 = load i32, ptr %12, align 4, !tbaa !5
  %18236 = load i32, ptr %8, align 4, !tbaa !5
  %18237 = mul nsw i32 29, %18236
  %18238 = add nsw i32 %18235, %18237
  %18239 = sext i32 %18238 to i64
  %18240 = getelementptr inbounds double, ptr %18234, i64 %18239
  %18241 = load double, ptr %18240, align 8, !tbaa !11
  %18242 = call double @llvm.fmuladd.f64(double 0xBFB4C23AD63BEF9A, double %18241, double %18233)
  %18243 = load ptr, ptr %7, align 8, !tbaa !9
  %18244 = load i32, ptr %12, align 4, !tbaa !5
  %18245 = load i32, ptr %8, align 4, !tbaa !5
  %18246 = mul nsw i32 30, %18245
  %18247 = add nsw i32 %18244, %18246
  %18248 = sext i32 %18247 to i64
  %18249 = getelementptr inbounds double, ptr %18243, i64 %18248
  %18250 = load double, ptr %18249, align 8, !tbaa !11
  %18251 = call double @llvm.fmuladd.f64(double 0x3FEFAD7976B5DE29, double %18250, double %18242)
  %18252 = load ptr, ptr %7, align 8, !tbaa !9
  %18253 = load i32, ptr %12, align 4, !tbaa !5
  %18254 = load i32, ptr %8, align 4, !tbaa !5
  %18255 = mul nsw i32 31, %18254
  %18256 = add nsw i32 %18253, %18255
  %18257 = sext i32 %18256 to i64
  %18258 = getelementptr inbounds double, ptr %18252, i64 %18257
  %18259 = load double, ptr %18258, align 8, !tbaa !11
  %18260 = call double @llvm.fmuladd.f64(double 0x3FF043C98657E812, double %18259, double %18251)
  %18261 = load ptr, ptr %7, align 8, !tbaa !9
  %18262 = load i32, ptr %12, align 4, !tbaa !5
  %18263 = load i32, ptr %8, align 4, !tbaa !5
  %18264 = mul nsw i32 32, %18263
  %18265 = add nsw i32 %18262, %18264
  %18266 = sext i32 %18265 to i64
  %18267 = getelementptr inbounds double, ptr %18261, i64 %18266
  %18268 = load double, ptr %18267, align 8, !tbaa !11
  %18269 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %18268, double %18260)
  %18270 = load ptr, ptr %7, align 8, !tbaa !9
  %18271 = load i32, ptr %12, align 4, !tbaa !5
  %18272 = load i32, ptr %8, align 4, !tbaa !5
  %18273 = mul nsw i32 33, %18272
  %18274 = add nsw i32 %18271, %18273
  %18275 = sext i32 %18274 to i64
  %18276 = getelementptr inbounds double, ptr %18270, i64 %18275
  %18277 = load double, ptr %18276, align 8, !tbaa !11
  %18278 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %18277, double %18269)
  %18279 = load ptr, ptr %7, align 8, !tbaa !9
  %18280 = load i32, ptr %12, align 4, !tbaa !5
  %18281 = load i32, ptr %8, align 4, !tbaa !5
  %18282 = mul nsw i32 34, %18281
  %18283 = add nsw i32 %18280, %18282
  %18284 = sext i32 %18283 to i64
  %18285 = getelementptr inbounds double, ptr %18279, i64 %18284
  %18286 = load double, ptr %18285, align 8, !tbaa !11
  %18287 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %18286, double %18278)
  %18288 = load ptr, ptr %7, align 8, !tbaa !9
  %18289 = load i32, ptr %12, align 4, !tbaa !5
  %18290 = load i32, ptr %8, align 4, !tbaa !5
  %18291 = mul nsw i32 52, %18290
  %18292 = add nsw i32 %18289, %18291
  %18293 = sext i32 %18292 to i64
  %18294 = getelementptr inbounds double, ptr %18288, i64 %18293
  %18295 = load double, ptr %18294, align 8, !tbaa !11
  %18296 = call double @llvm.fmuladd.f64(double 0xBC8A29B726831D24, double %18295, double %18287)
  %18297 = load ptr, ptr %7, align 8, !tbaa !9
  %18298 = load i32, ptr %12, align 4, !tbaa !5
  %18299 = load i32, ptr %8, align 4, !tbaa !5
  %18300 = mul nsw i32 53, %18299
  %18301 = add nsw i32 %18298, %18300
  %18302 = sext i32 %18301 to i64
  %18303 = getelementptr inbounds double, ptr %18297, i64 %18302
  %18304 = load double, ptr %18303, align 8, !tbaa !11
  %18305 = call double @llvm.fmuladd.f64(double 0x3C73CC8A99AF5453, double %18304, double %18296)
  %18306 = load ptr, ptr %7, align 8, !tbaa !9
  %18307 = load i32, ptr %12, align 4, !tbaa !5
  %18308 = load i32, ptr %8, align 4, !tbaa !5
  %18309 = mul nsw i32 54, %18308
  %18310 = add nsw i32 %18307, %18309
  %18311 = sext i32 %18310 to i64
  %18312 = getelementptr inbounds double, ptr %18306, i64 %18311
  %18313 = load double, ptr %18312, align 8, !tbaa !11
  %18314 = call double @llvm.fmuladd.f64(double 0xBC56A09E667F3BCC, double %18313, double %18305)
  %18315 = load ptr, ptr %7, align 8, !tbaa !9
  %18316 = load i32, ptr %12, align 4, !tbaa !5
  %18317 = load i32, ptr %8, align 4, !tbaa !5
  %18318 = mul nsw i32 55, %18317
  %18319 = add nsw i32 %18316, %18318
  %18320 = sext i32 %18319 to i64
  %18321 = getelementptr inbounds double, ptr %18315, i64 %18320
  %18322 = load double, ptr %18321, align 8, !tbaa !11
  %18323 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %18322, double %18314)
  %18324 = load ptr, ptr %7, align 8, !tbaa !9
  %18325 = load i32, ptr %12, align 4, !tbaa !5
  %18326 = load i32, ptr %8, align 4, !tbaa !5
  %18327 = mul nsw i32 56, %18326
  %18328 = add nsw i32 %18325, %18327
  %18329 = sext i32 %18328 to i64
  %18330 = getelementptr inbounds double, ptr %18324, i64 %18329
  %18331 = load double, ptr %18330, align 8, !tbaa !11
  %18332 = call double @llvm.fmuladd.f64(double 0xBC93CC8A99AF5452, double %18331, double %18323)
  %18333 = load ptr, ptr %7, align 8, !tbaa !9
  %18334 = load i32, ptr %12, align 4, !tbaa !5
  %18335 = load i32, ptr %8, align 4, !tbaa !5
  %18336 = mul nsw i32 57, %18335
  %18337 = add nsw i32 %18334, %18336
  %18338 = sext i32 %18337 to i64
  %18339 = getelementptr inbounds double, ptr %18333, i64 %18338
  %18340 = load double, ptr %18339, align 8, !tbaa !11
  %18341 = call double @llvm.fmuladd.f64(double 0xBCA6A09E667F3BCC, double %18340, double %18332)
  %18342 = load ptr, ptr %7, align 8, !tbaa !9
  %18343 = load i32, ptr %12, align 4, !tbaa !5
  %18344 = load i32, ptr %8, align 4, !tbaa !5
  %18345 = mul nsw i32 58, %18344
  %18346 = add nsw i32 %18343, %18345
  %18347 = sext i32 %18346 to i64
  %18348 = getelementptr inbounds double, ptr %18342, i64 %18347
  %18349 = load double, ptr %18348, align 8, !tbaa !11
  %18350 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %18349, double %18341)
  %18351 = load ptr, ptr %7, align 8, !tbaa !9
  %18352 = load i32, ptr %12, align 4, !tbaa !5
  %18353 = load i32, ptr %8, align 4, !tbaa !5
  %18354 = mul nsw i32 59, %18353
  %18355 = add nsw i32 %18352, %18354
  %18356 = sext i32 %18355 to i64
  %18357 = getelementptr inbounds double, ptr %18351, i64 %18356
  %18358 = load double, ptr %18357, align 8, !tbaa !11
  %18359 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %18358, double %18350)
  %18360 = load ptr, ptr %7, align 8, !tbaa !9
  %18361 = load i32, ptr %12, align 4, !tbaa !5
  %18362 = load i32, ptr %8, align 4, !tbaa !5
  %18363 = mul nsw i32 60, %18362
  %18364 = add nsw i32 %18361, %18363
  %18365 = sext i32 %18364 to i64
  %18366 = getelementptr inbounds double, ptr %18360, i64 %18365
  %18367 = load double, ptr %18366, align 8, !tbaa !11
  %18368 = call double @llvm.fmuladd.f64(double 0x3FD08C54FF101A10, double %18367, double %18359)
  %18369 = load ptr, ptr %7, align 8, !tbaa !9
  %18370 = load i32, ptr %12, align 4, !tbaa !5
  %18371 = load i32, ptr %8, align 4, !tbaa !5
  %18372 = mul nsw i32 61, %18371
  %18373 = add nsw i32 %18370, %18372
  %18374 = sext i32 %18373 to i64
  %18375 = getelementptr inbounds double, ptr %18369, i64 %18374
  %18376 = load double, ptr %18375, align 8, !tbaa !11
  %18377 = call double @llvm.fmuladd.f64(double 0x4007001BD846D0B2, double %18376, double %18368)
  %18378 = load ptr, ptr %7, align 8, !tbaa !9
  %18379 = load i32, ptr %12, align 4, !tbaa !5
  %18380 = load i32, ptr %8, align 4, !tbaa !5
  %18381 = mul nsw i32 62, %18380
  %18382 = add nsw i32 %18379, %18381
  %18383 = sext i32 %18382 to i64
  %18384 = getelementptr inbounds double, ptr %18378, i64 %18383
  %18385 = load double, ptr %18384, align 8, !tbaa !11
  %18386 = call double @llvm.fmuladd.f64(double 0x3FD0C7817D9C3137, double %18385, double %18377)
  %18387 = load ptr, ptr %7, align 8, !tbaa !9
  %18388 = load i32, ptr %12, align 4, !tbaa !5
  %18389 = load i32, ptr %8, align 4, !tbaa !5
  %18390 = mul nsw i32 63, %18389
  %18391 = add nsw i32 %18388, %18390
  %18392 = sext i32 %18391 to i64
  %18393 = getelementptr inbounds double, ptr %18387, i64 %18392
  %18394 = load double, ptr %18393, align 8, !tbaa !11
  %18395 = call double @llvm.fmuladd.f64(double 0xBFB8DF388696F54E, double %18394, double %18386)
  %18396 = load ptr, ptr %7, align 8, !tbaa !9
  %18397 = load i32, ptr %12, align 4, !tbaa !5
  %18398 = load i32, ptr %8, align 4, !tbaa !5
  %18399 = mul nsw i32 64, %18398
  %18400 = add nsw i32 %18397, %18399
  %18401 = sext i32 %18400 to i64
  %18402 = getelementptr inbounds double, ptr %18396, i64 %18401
  %18403 = load double, ptr %18402, align 8, !tbaa !11
  %18404 = call double @llvm.fmuladd.f64(double 0x3C7DB2CFE686FE7B, double %18403, double %18395)
  %18405 = load ptr, ptr %7, align 8, !tbaa !9
  %18406 = load i32, ptr %12, align 4, !tbaa !5
  %18407 = load i32, ptr %8, align 4, !tbaa !5
  %18408 = mul nsw i32 65, %18407
  %18409 = add nsw i32 %18406, %18408
  %18410 = sext i32 %18409 to i64
  %18411 = getelementptr inbounds double, ptr %18405, i64 %18410
  %18412 = load double, ptr %18411, align 8, !tbaa !11
  %18413 = call double @llvm.fmuladd.f64(double 0x3C91AD7BC01366B7, double %18412, double %18404)
  %18414 = load ptr, ptr %7, align 8, !tbaa !9
  %18415 = load i32, ptr %12, align 4, !tbaa !5
  %18416 = load i32, ptr %8, align 4, !tbaa !5
  %18417 = mul nsw i32 66, %18416
  %18418 = add nsw i32 %18415, %18417
  %18419 = sext i32 %18418 to i64
  %18420 = getelementptr inbounds double, ptr %18414, i64 %18419
  %18421 = load double, ptr %18420, align 8, !tbaa !11
  %18422 = call double @llvm.fmuladd.f64(double 0x3C56A09E667F3BCC, double %18421, double %18413)
  %18423 = load ptr, ptr %7, align 8, !tbaa !9
  %18424 = load i32, ptr %12, align 4, !tbaa !5
  %18425 = load i32, ptr %8, align 4, !tbaa !5
  %18426 = mul nsw i32 67, %18425
  %18427 = add nsw i32 %18424, %18426
  %18428 = sext i32 %18427 to i64
  %18429 = getelementptr inbounds double, ptr %18423, i64 %18428
  %18430 = load double, ptr %18429, align 8, !tbaa !11
  %18431 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %18430, double %18422)
  store double %18431, ptr %11, align 8, !tbaa !11
  %18432 = load double, ptr %11, align 8, !tbaa !11
  %18433 = load ptr, ptr %9, align 8, !tbaa !9
  %18434 = load i32, ptr %12, align 4, !tbaa !5
  %18435 = load i32, ptr %10, align 4, !tbaa !5
  %18436 = mul nsw i32 64, %18435
  %18437 = add nsw i32 %18434, %18436
  %18438 = sext i32 %18437 to i64
  %18439 = getelementptr inbounds double, ptr %18433, i64 %18438
  store double %18432, ptr %18439, align 8, !tbaa !11
  %18440 = load ptr, ptr %7, align 8, !tbaa !9
  %18441 = load i32, ptr %12, align 4, !tbaa !5
  %18442 = load i32, ptr %8, align 4, !tbaa !5
  %18443 = mul nsw i32 20, %18442
  %18444 = add nsw i32 %18441, %18443
  %18445 = sext i32 %18444 to i64
  %18446 = getelementptr inbounds double, ptr %18440, i64 %18445
  %18447 = load double, ptr %18446, align 8, !tbaa !11
  %18448 = load ptr, ptr %7, align 8, !tbaa !9
  %18449 = load i32, ptr %12, align 4, !tbaa !5
  %18450 = load i32, ptr %8, align 4, !tbaa !5
  %18451 = mul nsw i32 21, %18450
  %18452 = add nsw i32 %18449, %18451
  %18453 = sext i32 %18452 to i64
  %18454 = getelementptr inbounds double, ptr %18448, i64 %18453
  %18455 = load double, ptr %18454, align 8, !tbaa !11
  %18456 = fmul double 0xBC90000000000000, %18455
  %18457 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %18447, double %18456)
  %18458 = load ptr, ptr %7, align 8, !tbaa !9
  %18459 = load i32, ptr %12, align 4, !tbaa !5
  %18460 = load i32, ptr %8, align 4, !tbaa !5
  %18461 = mul nsw i32 23, %18460
  %18462 = add nsw i32 %18459, %18461
  %18463 = sext i32 %18462 to i64
  %18464 = getelementptr inbounds double, ptr %18458, i64 %18463
  %18465 = load double, ptr %18464, align 8, !tbaa !11
  %18466 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %18465, double %18457)
  %18467 = load ptr, ptr %7, align 8, !tbaa !9
  %18468 = load i32, ptr %12, align 4, !tbaa !5
  %18469 = load i32, ptr %8, align 4, !tbaa !5
  %18470 = mul nsw i32 24, %18469
  %18471 = add nsw i32 %18468, %18470
  %18472 = sext i32 %18471 to i64
  %18473 = getelementptr inbounds double, ptr %18467, i64 %18472
  %18474 = load double, ptr %18473, align 8, !tbaa !11
  %18475 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %18474, double %18466)
  %18476 = load ptr, ptr %7, align 8, !tbaa !9
  %18477 = load i32, ptr %12, align 4, !tbaa !5
  %18478 = load i32, ptr %8, align 4, !tbaa !5
  %18479 = mul nsw i32 25, %18478
  %18480 = add nsw i32 %18477, %18479
  %18481 = sext i32 %18480 to i64
  %18482 = getelementptr inbounds double, ptr %18476, i64 %18481
  %18483 = load double, ptr %18482, align 8, !tbaa !11
  %18484 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %18483, double %18475)
  %18485 = load ptr, ptr %7, align 8, !tbaa !9
  %18486 = load i32, ptr %12, align 4, !tbaa !5
  %18487 = load i32, ptr %8, align 4, !tbaa !5
  %18488 = mul nsw i32 26, %18487
  %18489 = add nsw i32 %18486, %18488
  %18490 = sext i32 %18489 to i64
  %18491 = getelementptr inbounds double, ptr %18485, i64 %18490
  %18492 = load double, ptr %18491, align 8, !tbaa !11
  %18493 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %18492, double %18484)
  %18494 = load ptr, ptr %7, align 8, !tbaa !9
  %18495 = load i32, ptr %12, align 4, !tbaa !5
  %18496 = load i32, ptr %8, align 4, !tbaa !5
  %18497 = mul nsw i32 27, %18496
  %18498 = add nsw i32 %18495, %18497
  %18499 = sext i32 %18498 to i64
  %18500 = getelementptr inbounds double, ptr %18494, i64 %18499
  %18501 = load double, ptr %18500, align 8, !tbaa !11
  %18502 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %18501, double %18493)
  %18503 = load ptr, ptr %7, align 8, !tbaa !9
  %18504 = load i32, ptr %12, align 4, !tbaa !5
  %18505 = load i32, ptr %8, align 4, !tbaa !5
  %18506 = mul nsw i32 28, %18505
  %18507 = add nsw i32 %18504, %18506
  %18508 = sext i32 %18507 to i64
  %18509 = getelementptr inbounds double, ptr %18503, i64 %18508
  %18510 = load double, ptr %18509, align 8, !tbaa !11
  %18511 = call double @llvm.fmuladd.f64(double 0x3FF043C98657E812, double %18510, double %18502)
  %18512 = load ptr, ptr %7, align 8, !tbaa !9
  %18513 = load i32, ptr %12, align 4, !tbaa !5
  %18514 = load i32, ptr %8, align 4, !tbaa !5
  %18515 = mul nsw i32 29, %18514
  %18516 = add nsw i32 %18513, %18515
  %18517 = sext i32 %18516 to i64
  %18518 = getelementptr inbounds double, ptr %18512, i64 %18517
  %18519 = load double, ptr %18518, align 8, !tbaa !11
  %18520 = call double @llvm.fmuladd.f64(double 0x3FEFAD7976B5DE25, double %18519, double %18511)
  %18521 = load ptr, ptr %7, align 8, !tbaa !9
  %18522 = load i32, ptr %12, align 4, !tbaa !5
  %18523 = load i32, ptr %8, align 4, !tbaa !5
  %18524 = mul nsw i32 30, %18523
  %18525 = add nsw i32 %18522, %18524
  %18526 = sext i32 %18525 to i64
  %18527 = getelementptr inbounds double, ptr %18521, i64 %18526
  %18528 = load double, ptr %18527, align 8, !tbaa !11
  %18529 = call double @llvm.fmuladd.f64(double 0xBFB4C23AD63BEF6E, double %18528, double %18520)
  %18530 = load ptr, ptr %7, align 8, !tbaa !9
  %18531 = load i32, ptr %12, align 4, !tbaa !5
  %18532 = load i32, ptr %8, align 4, !tbaa !5
  %18533 = mul nsw i32 31, %18532
  %18534 = add nsw i32 %18531, %18533
  %18535 = sext i32 %18534 to i64
  %18536 = getelementptr inbounds double, ptr %18530, i64 %18535
  %18537 = load double, ptr %18536, align 8, !tbaa !11
  %18538 = call double @llvm.fmuladd.f64(double 0xBFAC37F3CCE9FD3C, double %18537, double %18529)
  %18539 = load ptr, ptr %7, align 8, !tbaa !9
  %18540 = load i32, ptr %12, align 4, !tbaa !5
  %18541 = load i32, ptr %8, align 4, !tbaa !5
  %18542 = mul nsw i32 32, %18541
  %18543 = add nsw i32 %18540, %18542
  %18544 = sext i32 %18543 to i64
  %18545 = getelementptr inbounds double, ptr %18539, i64 %18544
  %18546 = load double, ptr %18545, align 8, !tbaa !11
  %18547 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %18546, double %18538)
  %18548 = load ptr, ptr %7, align 8, !tbaa !9
  %18549 = load i32, ptr %12, align 4, !tbaa !5
  %18550 = load i32, ptr %8, align 4, !tbaa !5
  %18551 = mul nsw i32 34, %18550
  %18552 = add nsw i32 %18549, %18551
  %18553 = sext i32 %18552 to i64
  %18554 = getelementptr inbounds double, ptr %18548, i64 %18553
  %18555 = load double, ptr %18554, align 8, !tbaa !11
  %18556 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %18555, double %18547)
  %18557 = load ptr, ptr %7, align 8, !tbaa !9
  %18558 = load i32, ptr %12, align 4, !tbaa !5
  %18559 = load i32, ptr %8, align 4, !tbaa !5
  %18560 = mul nsw i32 35, %18559
  %18561 = add nsw i32 %18558, %18560
  %18562 = sext i32 %18561 to i64
  %18563 = getelementptr inbounds double, ptr %18557, i64 %18562
  %18564 = load double, ptr %18563, align 8, !tbaa !11
  %18565 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %18564, double %18556)
  %18566 = load ptr, ptr %7, align 8, !tbaa !9
  %18567 = load i32, ptr %12, align 4, !tbaa !5
  %18568 = load i32, ptr %8, align 4, !tbaa !5
  %18569 = mul nsw i32 52, %18568
  %18570 = add nsw i32 %18567, %18569
  %18571 = sext i32 %18570 to i64
  %18572 = getelementptr inbounds double, ptr %18566, i64 %18571
  %18573 = load double, ptr %18572, align 8, !tbaa !11
  %18574 = call double @llvm.fmuladd.f64(double 0xBC84818F8CE34E32, double %18573, double %18565)
  %18575 = load ptr, ptr %7, align 8, !tbaa !9
  %18576 = load i32, ptr %12, align 4, !tbaa !5
  %18577 = load i32, ptr %8, align 4, !tbaa !5
  %18578 = mul nsw i32 53, %18577
  %18579 = add nsw i32 %18576, %18578
  %18580 = sext i32 %18579 to i64
  %18581 = getelementptr inbounds double, ptr %18575, i64 %18580
  %18582 = load double, ptr %18581, align 8, !tbaa !11
  %18583 = call double @llvm.fmuladd.f64(double 0x3C73CC8A99AF5453, double %18582, double %18574)
  %18584 = load ptr, ptr %7, align 8, !tbaa !9
  %18585 = load i32, ptr %12, align 4, !tbaa !5
  %18586 = load i32, ptr %8, align 4, !tbaa !5
  %18587 = mul nsw i32 54, %18586
  %18588 = add nsw i32 %18585, %18587
  %18589 = sext i32 %18588 to i64
  %18590 = getelementptr inbounds double, ptr %18584, i64 %18589
  %18591 = load double, ptr %18590, align 8, !tbaa !11
  %18592 = call double @llvm.fmuladd.f64(double 0x3C83CC8A99AF5451, double %18591, double %18583)
  %18593 = load ptr, ptr %7, align 8, !tbaa !9
  %18594 = load i32, ptr %12, align 4, !tbaa !5
  %18595 = load i32, ptr %8, align 4, !tbaa !5
  %18596 = mul nsw i32 55, %18595
  %18597 = add nsw i32 %18594, %18596
  %18598 = sext i32 %18597 to i64
  %18599 = getelementptr inbounds double, ptr %18593, i64 %18598
  %18600 = load double, ptr %18599, align 8, !tbaa !11
  %18601 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %18600, double %18592)
  %18602 = load ptr, ptr %7, align 8, !tbaa !9
  %18603 = load i32, ptr %12, align 4, !tbaa !5
  %18604 = load i32, ptr %8, align 4, !tbaa !5
  %18605 = mul nsw i32 56, %18604
  %18606 = add nsw i32 %18603, %18605
  %18607 = sext i32 %18606 to i64
  %18608 = getelementptr inbounds double, ptr %18602, i64 %18607
  %18609 = load double, ptr %18608, align 8, !tbaa !11
  %18610 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %18609, double %18601)
  %18611 = load ptr, ptr %7, align 8, !tbaa !9
  %18612 = load i32, ptr %12, align 4, !tbaa !5
  %18613 = load i32, ptr %8, align 4, !tbaa !5
  %18614 = mul nsw i32 57, %18613
  %18615 = add nsw i32 %18612, %18614
  %18616 = sext i32 %18615 to i64
  %18617 = getelementptr inbounds double, ptr %18611, i64 %18616
  %18618 = load double, ptr %18617, align 8, !tbaa !11
  %18619 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %18618, double %18610)
  %18620 = load ptr, ptr %7, align 8, !tbaa !9
  %18621 = load i32, ptr %12, align 4, !tbaa !5
  %18622 = load i32, ptr %8, align 4, !tbaa !5
  %18623 = mul nsw i32 58, %18622
  %18624 = add nsw i32 %18621, %18623
  %18625 = sext i32 %18624 to i64
  %18626 = getelementptr inbounds double, ptr %18620, i64 %18625
  %18627 = load double, ptr %18626, align 8, !tbaa !11
  %18628 = call double @llvm.fmuladd.f64(double 0xBCA974B2334F2346, double %18627, double %18619)
  %18629 = load ptr, ptr %7, align 8, !tbaa !9
  %18630 = load i32, ptr %12, align 4, !tbaa !5
  %18631 = load i32, ptr %8, align 4, !tbaa !5
  %18632 = mul nsw i32 59, %18631
  %18633 = add nsw i32 %18630, %18632
  %18634 = sext i32 %18633 to i64
  %18635 = getelementptr inbounds double, ptr %18629, i64 %18634
  %18636 = load double, ptr %18635, align 8, !tbaa !11
  %18637 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %18636, double %18628)
  %18638 = load ptr, ptr %7, align 8, !tbaa !9
  %18639 = load i32, ptr %12, align 4, !tbaa !5
  %18640 = load i32, ptr %8, align 4, !tbaa !5
  %18641 = mul nsw i32 60, %18640
  %18642 = add nsw i32 %18639, %18641
  %18643 = sext i32 %18642 to i64
  %18644 = getelementptr inbounds double, ptr %18638, i64 %18643
  %18645 = load double, ptr %18644, align 8, !tbaa !11
  %18646 = call double @llvm.fmuladd.f64(double 0xBF9102DA00B18A68, double %18645, double %18637)
  %18647 = load ptr, ptr %7, align 8, !tbaa !9
  %18648 = load i32, ptr %12, align 4, !tbaa !5
  %18649 = load i32, ptr %8, align 4, !tbaa !5
  %18650 = mul nsw i32 61, %18649
  %18651 = add nsw i32 %18648, %18650
  %18652 = sext i32 %18651 to i64
  %18653 = getelementptr inbounds double, ptr %18647, i64 %18652
  %18654 = load double, ptr %18653, align 8, !tbaa !11
  %18655 = call double @llvm.fmuladd.f64(double 0x3FCD5953692F6EA6, double %18654, double %18646)
  %18656 = load ptr, ptr %7, align 8, !tbaa !9
  %18657 = load i32, ptr %12, align 4, !tbaa !5
  %18658 = load i32, ptr %8, align 4, !tbaa !5
  %18659 = mul nsw i32 62, %18658
  %18660 = add nsw i32 %18657, %18659
  %18661 = sext i32 %18660 to i64
  %18662 = getelementptr inbounds double, ptr %18656, i64 %18661
  %18663 = load double, ptr %18662, align 8, !tbaa !11
  %18664 = call double @llvm.fmuladd.f64(double 0x3FE3C4545BCF030C, double %18663, double %18655)
  %18665 = load ptr, ptr %7, align 8, !tbaa !9
  %18666 = load i32, ptr %12, align 4, !tbaa !5
  %18667 = load i32, ptr %8, align 4, !tbaa !5
  %18668 = mul nsw i32 63, %18667
  %18669 = add nsw i32 %18666, %18668
  %18670 = sext i32 %18669 to i64
  %18671 = getelementptr inbounds double, ptr %18665, i64 %18670
  %18672 = load double, ptr %18671, align 8, !tbaa !11
  %18673 = call double @llvm.fmuladd.f64(double 0x3FD6A4D32EB1F710, double %18672, double %18664)
  %18674 = load ptr, ptr %7, align 8, !tbaa !9
  %18675 = load i32, ptr %12, align 4, !tbaa !5
  %18676 = load i32, ptr %8, align 4, !tbaa !5
  %18677 = mul nsw i32 64, %18676
  %18678 = add nsw i32 %18675, %18677
  %18679 = sext i32 %18678 to i64
  %18680 = getelementptr inbounds double, ptr %18674, i64 %18679
  %18681 = load double, ptr %18680, align 8, !tbaa !11
  %18682 = call double @llvm.fmuladd.f64(double 0x3C726280B3476096, double %18681, double %18673)
  %18683 = load ptr, ptr %7, align 8, !tbaa !9
  %18684 = load i32, ptr %12, align 4, !tbaa !5
  %18685 = load i32, ptr %8, align 4, !tbaa !5
  %18686 = mul nsw i32 65, %18685
  %18687 = add nsw i32 %18684, %18686
  %18688 = sext i32 %18687 to i64
  %18689 = getelementptr inbounds double, ptr %18683, i64 %18688
  %18690 = load double, ptr %18689, align 8, !tbaa !11
  %18691 = call double @llvm.fmuladd.f64(double 0x3C46A09E667F3BCB, double %18690, double %18682)
  %18692 = load ptr, ptr %7, align 8, !tbaa !9
  %18693 = load i32, ptr %12, align 4, !tbaa !5
  %18694 = load i32, ptr %8, align 4, !tbaa !5
  %18695 = mul nsw i32 66, %18694
  %18696 = add nsw i32 %18693, %18695
  %18697 = sext i32 %18696 to i64
  %18698 = getelementptr inbounds double, ptr %18692, i64 %18697
  %18699 = load double, ptr %18698, align 8, !tbaa !11
  %18700 = call double @llvm.fmuladd.f64(double 0xBC9536948017480F, double %18699, double %18691)
  %18701 = load ptr, ptr %7, align 8, !tbaa !9
  %18702 = load i32, ptr %12, align 4, !tbaa !5
  %18703 = load i32, ptr %8, align 4, !tbaa !5
  %18704 = mul nsw i32 67, %18703
  %18705 = add nsw i32 %18702, %18704
  %18706 = sext i32 %18705 to i64
  %18707 = getelementptr inbounds double, ptr %18701, i64 %18706
  %18708 = load double, ptr %18707, align 8, !tbaa !11
  %18709 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %18708, double %18700)
  store double %18709, ptr %11, align 8, !tbaa !11
  %18710 = load double, ptr %11, align 8, !tbaa !11
  %18711 = load ptr, ptr %9, align 8, !tbaa !9
  %18712 = load i32, ptr %12, align 4, !tbaa !5
  %18713 = load i32, ptr %10, align 4, !tbaa !5
  %18714 = mul nsw i32 65, %18713
  %18715 = add nsw i32 %18712, %18714
  %18716 = sext i32 %18715 to i64
  %18717 = getelementptr inbounds double, ptr %18711, i64 %18716
  store double %18710, ptr %18717, align 8, !tbaa !11
  %18718 = load ptr, ptr %7, align 8, !tbaa !9
  %18719 = load i32, ptr %12, align 4, !tbaa !5
  %18720 = load i32, ptr %8, align 4, !tbaa !5
  %18721 = mul nsw i32 20, %18720
  %18722 = add nsw i32 %18719, %18721
  %18723 = sext i32 %18722 to i64
  %18724 = getelementptr inbounds double, ptr %18718, i64 %18723
  %18725 = load double, ptr %18724, align 8, !tbaa !11
  %18726 = load ptr, ptr %7, align 8, !tbaa !9
  %18727 = load i32, ptr %12, align 4, !tbaa !5
  %18728 = load i32, ptr %8, align 4, !tbaa !5
  %18729 = mul nsw i32 21, %18728
  %18730 = add nsw i32 %18727, %18729
  %18731 = sext i32 %18730 to i64
  %18732 = getelementptr inbounds double, ptr %18726, i64 %18731
  %18733 = load double, ptr %18732, align 8, !tbaa !11
  %18734 = fmul double 0x3C60000000000000, %18733
  %18735 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %18725, double %18734)
  %18736 = load ptr, ptr %7, align 8, !tbaa !9
  %18737 = load i32, ptr %12, align 4, !tbaa !5
  %18738 = load i32, ptr %8, align 4, !tbaa !5
  %18739 = mul nsw i32 22, %18738
  %18740 = add nsw i32 %18737, %18739
  %18741 = sext i32 %18740 to i64
  %18742 = getelementptr inbounds double, ptr %18736, i64 %18741
  %18743 = load double, ptr %18742, align 8, !tbaa !11
  %18744 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %18743, double %18735)
  %18745 = load ptr, ptr %7, align 8, !tbaa !9
  %18746 = load i32, ptr %12, align 4, !tbaa !5
  %18747 = load i32, ptr %8, align 4, !tbaa !5
  %18748 = mul nsw i32 23, %18747
  %18749 = add nsw i32 %18746, %18748
  %18750 = sext i32 %18749 to i64
  %18751 = getelementptr inbounds double, ptr %18745, i64 %18750
  %18752 = load double, ptr %18751, align 8, !tbaa !11
  %18753 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %18752, double %18744)
  %18754 = load ptr, ptr %7, align 8, !tbaa !9
  %18755 = load i32, ptr %12, align 4, !tbaa !5
  %18756 = load i32, ptr %8, align 4, !tbaa !5
  %18757 = mul nsw i32 24, %18756
  %18758 = add nsw i32 %18755, %18757
  %18759 = sext i32 %18758 to i64
  %18760 = getelementptr inbounds double, ptr %18754, i64 %18759
  %18761 = load double, ptr %18760, align 8, !tbaa !11
  %18762 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %18761, double %18753)
  %18763 = load ptr, ptr %7, align 8, !tbaa !9
  %18764 = load i32, ptr %12, align 4, !tbaa !5
  %18765 = load i32, ptr %8, align 4, !tbaa !5
  %18766 = mul nsw i32 25, %18765
  %18767 = add nsw i32 %18764, %18766
  %18768 = sext i32 %18767 to i64
  %18769 = getelementptr inbounds double, ptr %18763, i64 %18768
  %18770 = load double, ptr %18769, align 8, !tbaa !11
  %18771 = call double @llvm.fmuladd.f64(double 0xBCB3000000000000, double %18770, double %18762)
  %18772 = load ptr, ptr %7, align 8, !tbaa !9
  %18773 = load i32, ptr %12, align 4, !tbaa !5
  %18774 = load i32, ptr %8, align 4, !tbaa !5
  %18775 = mul nsw i32 26, %18774
  %18776 = add nsw i32 %18773, %18775
  %18777 = sext i32 %18776 to i64
  %18778 = getelementptr inbounds double, ptr %18772, i64 %18777
  %18779 = load double, ptr %18778, align 8, !tbaa !11
  %18780 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %18779, double %18771)
  %18781 = load ptr, ptr %7, align 8, !tbaa !9
  %18782 = load i32, ptr %12, align 4, !tbaa !5
  %18783 = load i32, ptr %8, align 4, !tbaa !5
  %18784 = mul nsw i32 28, %18783
  %18785 = add nsw i32 %18782, %18784
  %18786 = sext i32 %18785 to i64
  %18787 = getelementptr inbounds double, ptr %18781, i64 %18786
  %18788 = load double, ptr %18787, align 8, !tbaa !11
  %18789 = call double @llvm.fmuladd.f64(double 0xBFD7671404765120, double %18788, double %18780)
  %18790 = load ptr, ptr %7, align 8, !tbaa !9
  %18791 = load i32, ptr %12, align 4, !tbaa !5
  %18792 = load i32, ptr %8, align 4, !tbaa !5
  %18793 = mul nsw i32 29, %18792
  %18794 = add nsw i32 %18791, %18793
  %18795 = sext i32 %18794 to i64
  %18796 = getelementptr inbounds double, ptr %18790, i64 %18795
  %18797 = load double, ptr %18796, align 8, !tbaa !11
  %18798 = call double @llvm.fmuladd.f64(double 0xC01043858A1F5996, double %18797, double %18789)
  %18799 = load ptr, ptr %7, align 8, !tbaa !9
  %18800 = load i32, ptr %12, align 4, !tbaa !5
  %18801 = load i32, ptr %8, align 4, !tbaa !5
  %18802 = mul nsw i32 30, %18801
  %18803 = add nsw i32 %18800, %18802
  %18804 = sext i32 %18803 to i64
  %18805 = getelementptr inbounds double, ptr %18799, i64 %18804
  %18806 = load double, ptr %18805, align 8, !tbaa !11
  %18807 = call double @llvm.fmuladd.f64(double 0xBFD7BAC3393ADDD8, double %18806, double %18798)
  %18808 = load ptr, ptr %7, align 8, !tbaa !9
  %18809 = load i32, ptr %12, align 4, !tbaa !5
  %18810 = load i32, ptr %8, align 4, !tbaa !5
  %18811 = mul nsw i32 31, %18810
  %18812 = add nsw i32 %18809, %18811
  %18813 = sext i32 %18812 to i64
  %18814 = getelementptr inbounds double, ptr %18808, i64 %18813
  %18815 = load double, ptr %18814, align 8, !tbaa !11
  %18816 = call double @llvm.fmuladd.f64(double 0x3FC1964E14FA3C65, double %18815, double %18807)
  %18817 = load ptr, ptr %7, align 8, !tbaa !9
  %18818 = load i32, ptr %12, align 4, !tbaa !5
  %18819 = load i32, ptr %8, align 4, !tbaa !5
  %18820 = mul nsw i32 32, %18819
  %18821 = add nsw i32 %18818, %18820
  %18822 = sext i32 %18821 to i64
  %18823 = getelementptr inbounds double, ptr %18817, i64 %18822
  %18824 = load double, ptr %18823, align 8, !tbaa !11
  %18825 = call double @llvm.fmuladd.f64(double 0xBC8C000000000000, double %18824, double %18816)
  %18826 = load ptr, ptr %7, align 8, !tbaa !9
  %18827 = load i32, ptr %12, align 4, !tbaa !5
  %18828 = load i32, ptr %8, align 4, !tbaa !5
  %18829 = mul nsw i32 33, %18828
  %18830 = add nsw i32 %18827, %18829
  %18831 = sext i32 %18830 to i64
  %18832 = getelementptr inbounds double, ptr %18826, i64 %18831
  %18833 = load double, ptr %18832, align 8, !tbaa !11
  %18834 = call double @llvm.fmuladd.f64(double 0xBCA1000000000001, double %18833, double %18825)
  %18835 = load ptr, ptr %7, align 8, !tbaa !9
  %18836 = load i32, ptr %12, align 4, !tbaa !5
  %18837 = load i32, ptr %8, align 4, !tbaa !5
  %18838 = mul nsw i32 34, %18837
  %18839 = add nsw i32 %18836, %18838
  %18840 = sext i32 %18839 to i64
  %18841 = getelementptr inbounds double, ptr %18835, i64 %18840
  %18842 = load double, ptr %18841, align 8, !tbaa !11
  %18843 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %18842, double %18834)
  %18844 = load ptr, ptr %7, align 8, !tbaa !9
  %18845 = load i32, ptr %12, align 4, !tbaa !5
  %18846 = load i32, ptr %8, align 4, !tbaa !5
  %18847 = mul nsw i32 35, %18846
  %18848 = add nsw i32 %18845, %18847
  %18849 = sext i32 %18848 to i64
  %18850 = getelementptr inbounds double, ptr %18844, i64 %18849
  %18851 = load double, ptr %18850, align 8, !tbaa !11
  %18852 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %18851, double %18843)
  %18853 = load ptr, ptr %7, align 8, !tbaa !9
  %18854 = load i32, ptr %12, align 4, !tbaa !5
  %18855 = load i32, ptr %8, align 4, !tbaa !5
  %18856 = mul nsw i32 52, %18855
  %18857 = add nsw i32 %18854, %18856
  %18858 = sext i32 %18857 to i64
  %18859 = getelementptr inbounds double, ptr %18853, i64 %18858
  %18860 = load double, ptr %18859, align 8, !tbaa !11
  %18861 = call double @llvm.fmuladd.f64(double 0x3C759116F9B144FE, double %18860, double %18852)
  %18862 = load ptr, ptr %7, align 8, !tbaa !9
  %18863 = load i32, ptr %12, align 4, !tbaa !5
  %18864 = load i32, ptr %8, align 4, !tbaa !5
  %18865 = mul nsw i32 53, %18864
  %18866 = add nsw i32 %18863, %18865
  %18867 = sext i32 %18866 to i64
  %18868 = getelementptr inbounds double, ptr %18862, i64 %18867
  %18869 = load double, ptr %18868, align 8, !tbaa !11
  %18870 = call double @llvm.fmuladd.f64(double 0x3C70F876CCDF6CD9, double %18869, double %18861)
  %18871 = load ptr, ptr %7, align 8, !tbaa !9
  %18872 = load i32, ptr %12, align 4, !tbaa !5
  %18873 = load i32, ptr %8, align 4, !tbaa !5
  %18874 = mul nsw i32 54, %18873
  %18875 = add nsw i32 %18872, %18874
  %18876 = sext i32 %18875 to i64
  %18877 = getelementptr inbounds double, ptr %18871, i64 %18876
  %18878 = load double, ptr %18877, align 8, !tbaa !11
  %18879 = call double @llvm.fmuladd.f64(double 0xBC73CC8A99AF5453, double %18878, double %18870)
  %18880 = load ptr, ptr %7, align 8, !tbaa !9
  %18881 = load i32, ptr %12, align 4, !tbaa !5
  %18882 = load i32, ptr %8, align 4, !tbaa !5
  %18883 = mul nsw i32 55, %18882
  %18884 = add nsw i32 %18881, %18883
  %18885 = sext i32 %18884 to i64
  %18886 = getelementptr inbounds double, ptr %18880, i64 %18885
  %18887 = load double, ptr %18886, align 8, !tbaa !11
  %18888 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %18887, double %18879)
  %18889 = load ptr, ptr %7, align 8, !tbaa !9
  %18890 = load i32, ptr %12, align 4, !tbaa !5
  %18891 = load i32, ptr %8, align 4, !tbaa !5
  %18892 = mul nsw i32 56, %18891
  %18893 = add nsw i32 %18890, %18892
  %18894 = sext i32 %18893 to i64
  %18895 = getelementptr inbounds double, ptr %18889, i64 %18894
  %18896 = load double, ptr %18895, align 8, !tbaa !11
  %18897 = call double @llvm.fmuladd.f64(double 0xBCA16999E4DFE905, double %18896, double %18888)
  %18898 = load ptr, ptr %7, align 8, !tbaa !9
  %18899 = load i32, ptr %12, align 4, !tbaa !5
  %18900 = load i32, ptr %8, align 4, !tbaa !5
  %18901 = mul nsw i32 57, %18900
  %18902 = add nsw i32 %18899, %18901
  %18903 = sext i32 %18902 to i64
  %18904 = getelementptr inbounds double, ptr %18898, i64 %18903
  %18905 = load double, ptr %18904, align 8, !tbaa !11
  %18906 = call double @llvm.fmuladd.f64(double 0xBCA91A2FB9B52657, double %18905, double %18897)
  %18907 = load ptr, ptr %7, align 8, !tbaa !9
  %18908 = load i32, ptr %12, align 4, !tbaa !5
  %18909 = load i32, ptr %8, align 4, !tbaa !5
  %18910 = mul nsw i32 58, %18909
  %18911 = add nsw i32 %18908, %18910
  %18912 = sext i32 %18911 to i64
  %18913 = getelementptr inbounds double, ptr %18907, i64 %18912
  %18914 = load double, ptr %18913, align 8, !tbaa !11
  %18915 = call double @llvm.fmuladd.f64(double 0xBC9974B2334F2346, double %18914, double %18906)
  %18916 = load ptr, ptr %7, align 8, !tbaa !9
  %18917 = load i32, ptr %12, align 4, !tbaa !5
  %18918 = load i32, ptr %8, align 4, !tbaa !5
  %18919 = mul nsw i32 59, %18918
  %18920 = add nsw i32 %18917, %18919
  %18921 = sext i32 %18920 to i64
  %18922 = getelementptr inbounds double, ptr %18916, i64 %18921
  %18923 = load double, ptr %18922, align 8, !tbaa !11
  %18924 = call double @llvm.fmuladd.f64(double 0x3C80F876CCDF6CD9, double %18923, double %18915)
  %18925 = load ptr, ptr %7, align 8, !tbaa !9
  %18926 = load i32, ptr %12, align 4, !tbaa !5
  %18927 = load i32, ptr %8, align 4, !tbaa !5
  %18928 = mul nsw i32 60, %18927
  %18929 = add nsw i32 %18926, %18928
  %18930 = sext i32 %18929 to i64
  %18931 = getelementptr inbounds double, ptr %18925, i64 %18930
  %18932 = load double, ptr %18931, align 8, !tbaa !11
  %18933 = call double @llvm.fmuladd.f64(double 0x3FD6A4D32EB1F71D, double %18932, double %18924)
  %18934 = load ptr, ptr %7, align 8, !tbaa !9
  %18935 = load i32, ptr %12, align 4, !tbaa !5
  %18936 = load i32, ptr %8, align 4, !tbaa !5
  %18937 = mul nsw i32 61, %18936
  %18938 = add nsw i32 %18935, %18937
  %18939 = sext i32 %18938 to i64
  %18940 = getelementptr inbounds double, ptr %18934, i64 %18939
  %18941 = load double, ptr %18940, align 8, !tbaa !11
  %18942 = call double @llvm.fmuladd.f64(double 0x3FE3C4545BCF030E, double %18941, double %18933)
  %18943 = load ptr, ptr %7, align 8, !tbaa !9
  %18944 = load i32, ptr %12, align 4, !tbaa !5
  %18945 = load i32, ptr %8, align 4, !tbaa !5
  %18946 = mul nsw i32 62, %18945
  %18947 = add nsw i32 %18944, %18946
  %18948 = sext i32 %18947 to i64
  %18949 = getelementptr inbounds double, ptr %18943, i64 %18948
  %18950 = load double, ptr %18949, align 8, !tbaa !11
  %18951 = call double @llvm.fmuladd.f64(double 0x3FCD5953692F6EA6, double %18950, double %18942)
  %18952 = load ptr, ptr %7, align 8, !tbaa !9
  %18953 = load i32, ptr %12, align 4, !tbaa !5
  %18954 = load i32, ptr %8, align 4, !tbaa !5
  %18955 = mul nsw i32 63, %18954
  %18956 = add nsw i32 %18953, %18955
  %18957 = sext i32 %18956 to i64
  %18958 = getelementptr inbounds double, ptr %18952, i64 %18957
  %18959 = load double, ptr %18958, align 8, !tbaa !11
  %18960 = call double @llvm.fmuladd.f64(double 0xBF9102DA00B18A34, double %18959, double %18951)
  %18961 = load ptr, ptr %7, align 8, !tbaa !9
  %18962 = load i32, ptr %12, align 4, !tbaa !5
  %18963 = load i32, ptr %8, align 4, !tbaa !5
  %18964 = mul nsw i32 64, %18963
  %18965 = add nsw i32 %18962, %18964
  %18966 = sext i32 %18965 to i64
  %18967 = getelementptr inbounds double, ptr %18961, i64 %18966
  %18968 = load double, ptr %18967, align 8, !tbaa !11
  %18969 = call double @llvm.fmuladd.f64(double 0xBCA0D685DF45AE00, double %18968, double %18960)
  %18970 = load ptr, ptr %7, align 8, !tbaa !9
  %18971 = load i32, ptr %12, align 4, !tbaa !5
  %18972 = load i32, ptr %8, align 4, !tbaa !5
  %18973 = mul nsw i32 65, %18972
  %18974 = add nsw i32 %18971, %18973
  %18975 = sext i32 %18974 to i64
  %18976 = getelementptr inbounds double, ptr %18970, i64 %18975
  %18977 = load double, ptr %18976, align 8, !tbaa !11
  %18978 = call double @llvm.fmuladd.f64(double 0x3C56A09E667F3BCC, double %18977, double %18969)
  %18979 = load ptr, ptr %7, align 8, !tbaa !9
  %18980 = load i32, ptr %12, align 4, !tbaa !5
  %18981 = load i32, ptr %8, align 4, !tbaa !5
  %18982 = mul nsw i32 66, %18981
  %18983 = add nsw i32 %18980, %18982
  %18984 = sext i32 %18983 to i64
  %18985 = getelementptr inbounds double, ptr %18979, i64 %18984
  %18986 = load double, ptr %18985, align 8, !tbaa !11
  %18987 = call double @llvm.fmuladd.f64(double 0xBC46A09E667F3BCB, double %18986, double %18978)
  %18988 = load ptr, ptr %7, align 8, !tbaa !9
  %18989 = load i32, ptr %12, align 4, !tbaa !5
  %18990 = load i32, ptr %8, align 4, !tbaa !5
  %18991 = mul nsw i32 67, %18990
  %18992 = add nsw i32 %18989, %18991
  %18993 = sext i32 %18992 to i64
  %18994 = getelementptr inbounds double, ptr %18988, i64 %18993
  %18995 = load double, ptr %18994, align 8, !tbaa !11
  %18996 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %18995, double %18987)
  store double %18996, ptr %11, align 8, !tbaa !11
  %18997 = load double, ptr %11, align 8, !tbaa !11
  %18998 = load ptr, ptr %9, align 8, !tbaa !9
  %18999 = load i32, ptr %12, align 4, !tbaa !5
  %19000 = load i32, ptr %10, align 4, !tbaa !5
  %19001 = mul nsw i32 66, %19000
  %19002 = add nsw i32 %18999, %19001
  %19003 = sext i32 %19002 to i64
  %19004 = getelementptr inbounds double, ptr %18998, i64 %19003
  store double %18997, ptr %19004, align 8, !tbaa !11
  %19005 = load ptr, ptr %7, align 8, !tbaa !9
  %19006 = load i32, ptr %12, align 4, !tbaa !5
  %19007 = load i32, ptr %8, align 4, !tbaa !5
  %19008 = mul nsw i32 20, %19007
  %19009 = add nsw i32 %19006, %19008
  %19010 = sext i32 %19009 to i64
  %19011 = getelementptr inbounds double, ptr %19005, i64 %19010
  %19012 = load double, ptr %19011, align 8, !tbaa !11
  %19013 = load ptr, ptr %7, align 8, !tbaa !9
  %19014 = load i32, ptr %12, align 4, !tbaa !5
  %19015 = load i32, ptr %8, align 4, !tbaa !5
  %19016 = mul nsw i32 21, %19015
  %19017 = add nsw i32 %19014, %19016
  %19018 = sext i32 %19017 to i64
  %19019 = getelementptr inbounds double, ptr %19013, i64 %19018
  %19020 = load double, ptr %19019, align 8, !tbaa !11
  %19021 = fmul double 0xBC89FFFFFFFFFFFF, %19020
  %19022 = call double @llvm.fmuladd.f64(double 0xBC93000000000000, double %19012, double %19021)
  %19023 = load ptr, ptr %7, align 8, !tbaa !9
  %19024 = load i32, ptr %12, align 4, !tbaa !5
  %19025 = load i32, ptr %8, align 4, !tbaa !5
  %19026 = mul nsw i32 22, %19025
  %19027 = add nsw i32 %19024, %19026
  %19028 = sext i32 %19027 to i64
  %19029 = getelementptr inbounds double, ptr %19023, i64 %19028
  %19030 = load double, ptr %19029, align 8, !tbaa !11
  %19031 = call double @llvm.fmuladd.f64(double 0xBC91000000000000, double %19030, double %19022)
  %19032 = load ptr, ptr %7, align 8, !tbaa !9
  %19033 = load i32, ptr %12, align 4, !tbaa !5
  %19034 = load i32, ptr %8, align 4, !tbaa !5
  %19035 = mul nsw i32 23, %19034
  %19036 = add nsw i32 %19033, %19035
  %19037 = sext i32 %19036 to i64
  %19038 = getelementptr inbounds double, ptr %19032, i64 %19037
  %19039 = load double, ptr %19038, align 8, !tbaa !11
  %19040 = call double @llvm.fmuladd.f64(double 0xBC67FFFFFFFFFFFE, double %19039, double %19031)
  %19041 = load ptr, ptr %7, align 8, !tbaa !9
  %19042 = load i32, ptr %12, align 4, !tbaa !5
  %19043 = load i32, ptr %8, align 4, !tbaa !5
  %19044 = mul nsw i32 24, %19043
  %19045 = add nsw i32 %19042, %19044
  %19046 = sext i32 %19045 to i64
  %19047 = getelementptr inbounds double, ptr %19041, i64 %19046
  %19048 = load double, ptr %19047, align 8, !tbaa !11
  %19049 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %19048, double %19040)
  %19050 = load ptr, ptr %7, align 8, !tbaa !9
  %19051 = load i32, ptr %12, align 4, !tbaa !5
  %19052 = load i32, ptr %8, align 4, !tbaa !5
  %19053 = mul nsw i32 25, %19052
  %19054 = add nsw i32 %19051, %19053
  %19055 = sext i32 %19054 to i64
  %19056 = getelementptr inbounds double, ptr %19050, i64 %19055
  %19057 = load double, ptr %19056, align 8, !tbaa !11
  %19058 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %19057, double %19049)
  %19059 = load ptr, ptr %7, align 8, !tbaa !9
  %19060 = load i32, ptr %12, align 4, !tbaa !5
  %19061 = load i32, ptr %8, align 4, !tbaa !5
  %19062 = mul nsw i32 26, %19061
  %19063 = add nsw i32 %19060, %19062
  %19064 = sext i32 %19063 to i64
  %19065 = getelementptr inbounds double, ptr %19059, i64 %19064
  %19066 = load double, ptr %19065, align 8, !tbaa !11
  %19067 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %19066, double %19058)
  %19068 = load ptr, ptr %7, align 8, !tbaa !9
  %19069 = load i32, ptr %12, align 4, !tbaa !5
  %19070 = load i32, ptr %8, align 4, !tbaa !5
  %19071 = mul nsw i32 27, %19070
  %19072 = add nsw i32 %19069, %19071
  %19073 = sext i32 %19072 to i64
  %19074 = getelementptr inbounds double, ptr %19068, i64 %19073
  %19075 = load double, ptr %19074, align 8, !tbaa !11
  %19076 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %19075, double %19067)
  %19077 = load ptr, ptr %7, align 8, !tbaa !9
  %19078 = load i32, ptr %12, align 4, !tbaa !5
  %19079 = load i32, ptr %8, align 4, !tbaa !5
  %19080 = mul nsw i32 28, %19079
  %19081 = add nsw i32 %19078, %19080
  %19082 = sext i32 %19081 to i64
  %19083 = getelementptr inbounds double, ptr %19077, i64 %19082
  %19084 = load double, ptr %19083, align 8, !tbaa !11
  %19085 = call double @llvm.fmuladd.f64(double 0x3FC1964E14FA3C53, double %19084, double %19076)
  %19086 = load ptr, ptr %7, align 8, !tbaa !9
  %19087 = load i32, ptr %12, align 4, !tbaa !5
  %19088 = load i32, ptr %8, align 4, !tbaa !5
  %19089 = mul nsw i32 29, %19088
  %19090 = add nsw i32 %19087, %19089
  %19091 = sext i32 %19090 to i64
  %19092 = getelementptr inbounds double, ptr %19086, i64 %19091
  %19093 = load double, ptr %19092, align 8, !tbaa !11
  %19094 = call double @llvm.fmuladd.f64(double 0xBFD7BAC3393ADDC4, double %19093, double %19085)
  %19095 = load ptr, ptr %7, align 8, !tbaa !9
  %19096 = load i32, ptr %12, align 4, !tbaa !5
  %19097 = load i32, ptr %8, align 4, !tbaa !5
  %19098 = mul nsw i32 30, %19097
  %19099 = add nsw i32 %19096, %19098
  %19100 = sext i32 %19099 to i64
  %19101 = getelementptr inbounds double, ptr %19095, i64 %19100
  %19102 = load double, ptr %19101, align 8, !tbaa !11
  %19103 = call double @llvm.fmuladd.f64(double 0xC01043858A1F5997, double %19102, double %19094)
  %19104 = load ptr, ptr %7, align 8, !tbaa !9
  %19105 = load i32, ptr %12, align 4, !tbaa !5
  %19106 = load i32, ptr %8, align 4, !tbaa !5
  %19107 = mul nsw i32 31, %19106
  %19108 = add nsw i32 %19105, %19107
  %19109 = sext i32 %19108 to i64
  %19110 = getelementptr inbounds double, ptr %19104, i64 %19109
  %19111 = load double, ptr %19110, align 8, !tbaa !11
  %19112 = call double @llvm.fmuladd.f64(double 0xBFD7671404765136, double %19111, double %19103)
  %19113 = load ptr, ptr %7, align 8, !tbaa !9
  %19114 = load i32, ptr %12, align 4, !tbaa !5
  %19115 = load i32, ptr %8, align 4, !tbaa !5
  %19116 = mul nsw i32 32, %19115
  %19117 = add nsw i32 %19114, %19116
  %19118 = sext i32 %19117 to i64
  %19119 = getelementptr inbounds double, ptr %19113, i64 %19118
  %19120 = load double, ptr %19119, align 8, !tbaa !11
  %19121 = call double @llvm.fmuladd.f64(double 0x3C7C000000000000, double %19120, double %19112)
  %19122 = load ptr, ptr %7, align 8, !tbaa !9
  %19123 = load i32, ptr %12, align 4, !tbaa !5
  %19124 = load i32, ptr %8, align 4, !tbaa !5
  %19125 = mul nsw i32 33, %19124
  %19126 = add nsw i32 %19123, %19125
  %19127 = sext i32 %19126 to i64
  %19128 = getelementptr inbounds double, ptr %19122, i64 %19127
  %19129 = load double, ptr %19128, align 8, !tbaa !11
  %19130 = call double @llvm.fmuladd.f64(double 0x3C89FFFFFFFFFFFF, double %19129, double %19121)
  %19131 = load ptr, ptr %7, align 8, !tbaa !9
  %19132 = load i32, ptr %12, align 4, !tbaa !5
  %19133 = load i32, ptr %8, align 4, !tbaa !5
  %19134 = mul nsw i32 34, %19133
  %19135 = add nsw i32 %19132, %19134
  %19136 = sext i32 %19135 to i64
  %19137 = getelementptr inbounds double, ptr %19131, i64 %19136
  %19138 = load double, ptr %19137, align 8, !tbaa !11
  %19139 = call double @llvm.fmuladd.f64(double 0x3C91000000000000, double %19138, double %19130)
  %19140 = load ptr, ptr %7, align 8, !tbaa !9
  %19141 = load i32, ptr %12, align 4, !tbaa !5
  %19142 = load i32, ptr %8, align 4, !tbaa !5
  %19143 = mul nsw i32 35, %19142
  %19144 = add nsw i32 %19141, %19143
  %19145 = sext i32 %19144 to i64
  %19146 = getelementptr inbounds double, ptr %19140, i64 %19145
  %19147 = load double, ptr %19146, align 8, !tbaa !11
  %19148 = call double @llvm.fmuladd.f64(double 0xBC95000000000000, double %19147, double %19139)
  %19149 = load ptr, ptr %7, align 8, !tbaa !9
  %19150 = load i32, ptr %12, align 4, !tbaa !5
  %19151 = load i32, ptr %8, align 4, !tbaa !5
  %19152 = mul nsw i32 52, %19151
  %19153 = add nsw i32 %19150, %19152
  %19154 = sext i32 %19153 to i64
  %19155 = getelementptr inbounds double, ptr %19149, i64 %19154
  %19156 = load double, ptr %19155, align 8, !tbaa !11
  %19157 = call double @llvm.fmuladd.f64(double 0x3C6B93C10CEB10E3, double %19156, double %19148)
  %19158 = load ptr, ptr %7, align 8, !tbaa !9
  %19159 = load i32, ptr %12, align 4, !tbaa !5
  %19160 = load i32, ptr %8, align 4, !tbaa !5
  %19161 = mul nsw i32 53, %19160
  %19162 = add nsw i32 %19159, %19161
  %19163 = sext i32 %19162 to i64
  %19164 = getelementptr inbounds double, ptr %19158, i64 %19163
  %19165 = load double, ptr %19164, align 8, !tbaa !11
  %19166 = call double @llvm.fmuladd.f64(double 0x3C8C48C6001F0AC0, double %19165, double %19157)
  %19167 = load ptr, ptr %7, align 8, !tbaa !9
  %19168 = load i32, ptr %12, align 4, !tbaa !5
  %19169 = load i32, ptr %8, align 4, !tbaa !5
  %19170 = mul nsw i32 54, %19169
  %19171 = add nsw i32 %19168, %19170
  %19172 = sext i32 %19171 to i64
  %19173 = getelementptr inbounds double, ptr %19167, i64 %19172
  %19174 = load double, ptr %19173, align 8, !tbaa !11
  %19175 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %19174, double %19166)
  %19176 = load ptr, ptr %7, align 8, !tbaa !9
  %19177 = load i32, ptr %12, align 4, !tbaa !5
  %19178 = load i32, ptr %8, align 4, !tbaa !5
  %19179 = mul nsw i32 55, %19178
  %19180 = add nsw i32 %19177, %19179
  %19181 = sext i32 %19180 to i64
  %19182 = getelementptr inbounds double, ptr %19176, i64 %19181
  %19183 = load double, ptr %19182, align 8, !tbaa !11
  %19184 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %19183, double %19175)
  %19185 = load ptr, ptr %7, align 8, !tbaa !9
  %19186 = load i32, ptr %12, align 4, !tbaa !5
  %19187 = load i32, ptr %8, align 4, !tbaa !5
  %19188 = mul nsw i32 56, %19187
  %19189 = add nsw i32 %19186, %19188
  %19190 = sext i32 %19189 to i64
  %19191 = getelementptr inbounds double, ptr %19185, i64 %19190
  %19192 = load double, ptr %19191, align 8, !tbaa !11
  %19193 = call double @llvm.fmuladd.f64(double 0xBC9125B809AC6B51, double %19192, double %19184)
  %19194 = load ptr, ptr %7, align 8, !tbaa !9
  %19195 = load i32, ptr %12, align 4, !tbaa !5
  %19196 = load i32, ptr %8, align 4, !tbaa !5
  %19197 = mul nsw i32 57, %19196
  %19198 = add nsw i32 %19195, %19197
  %19199 = sext i32 %19198 to i64
  %19200 = getelementptr inbounds double, ptr %19194, i64 %19199
  %19201 = load double, ptr %19200, align 8, !tbaa !11
  %19202 = call double @llvm.fmuladd.f64(double 0x3C826280B3476096, double %19201, double %19193)
  %19203 = load ptr, ptr %7, align 8, !tbaa !9
  %19204 = load i32, ptr %12, align 4, !tbaa !5
  %19205 = load i32, ptr %8, align 4, !tbaa !5
  %19206 = mul nsw i32 58, %19205
  %19207 = add nsw i32 %19204, %19206
  %19208 = sext i32 %19207 to i64
  %19209 = getelementptr inbounds double, ptr %19203, i64 %19208
  %19210 = load double, ptr %19209, align 8, !tbaa !11
  %19211 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %19210, double %19202)
  %19212 = load ptr, ptr %7, align 8, !tbaa !9
  %19213 = load i32, ptr %12, align 4, !tbaa !5
  %19214 = load i32, ptr %8, align 4, !tbaa !5
  %19215 = mul nsw i32 59, %19214
  %19216 = add nsw i32 %19213, %19215
  %19217 = sext i32 %19216 to i64
  %19218 = getelementptr inbounds double, ptr %19212, i64 %19217
  %19219 = load double, ptr %19218, align 8, !tbaa !11
  %19220 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %19219, double %19211)
  %19221 = load ptr, ptr %7, align 8, !tbaa !9
  %19222 = load i32, ptr %12, align 4, !tbaa !5
  %19223 = load i32, ptr %8, align 4, !tbaa !5
  %19224 = mul nsw i32 60, %19223
  %19225 = add nsw i32 %19222, %19224
  %19226 = sext i32 %19225 to i64
  %19227 = getelementptr inbounds double, ptr %19221, i64 %19226
  %19228 = load double, ptr %19227, align 8, !tbaa !11
  %19229 = call double @llvm.fmuladd.f64(double 0xBFE7007BFD8FD85D, double %19228, double %19220)
  %19230 = load ptr, ptr %7, align 8, !tbaa !9
  %19231 = load i32, ptr %12, align 4, !tbaa !5
  %19232 = load i32, ptr %8, align 4, !tbaa !5
  %19233 = mul nsw i32 61, %19232
  %19234 = add nsw i32 %19231, %19233
  %19235 = sext i32 %19234 to i64
  %19236 = getelementptr inbounds double, ptr %19230, i64 %19235
  %19237 = load double, ptr %19236, align 8, !tbaa !11
  %19238 = call double @llvm.fmuladd.f64(double 0xBFE66643AEED3708, double %19237, double %19229)
  %19239 = load ptr, ptr %7, align 8, !tbaa !9
  %19240 = load i32, ptr %12, align 4, !tbaa !5
  %19241 = load i32, ptr %8, align 4, !tbaa !5
  %19242 = mul nsw i32 62, %19241
  %19243 = add nsw i32 %19240, %19242
  %19244 = sext i32 %19243 to i64
  %19245 = getelementptr inbounds double, ptr %19239, i64 %19244
  %19246 = load double, ptr %19245, align 8, !tbaa !11
  %19247 = call double @llvm.fmuladd.f64(double 0x3FAD5B74B5F10E9B, double %19246, double %19238)
  %19248 = load ptr, ptr %7, align 8, !tbaa !9
  %19249 = load i32, ptr %12, align 4, !tbaa !5
  %19250 = load i32, ptr %8, align 4, !tbaa !5
  %19251 = mul nsw i32 63, %19250
  %19252 = add nsw i32 %19249, %19251
  %19253 = sext i32 %19252 to i64
  %19254 = getelementptr inbounds double, ptr %19248, i64 %19253
  %19255 = load double, ptr %19254, align 8, !tbaa !11
  %19256 = call double @llvm.fmuladd.f64(double 0x3FA3F41B0E87BFB6, double %19255, double %19247)
  %19257 = load ptr, ptr %7, align 8, !tbaa !9
  %19258 = load i32, ptr %12, align 4, !tbaa !5
  %19259 = load i32, ptr %8, align 4, !tbaa !5
  %19260 = mul nsw i32 64, %19259
  %19261 = add nsw i32 %19258, %19260
  %19262 = sext i32 %19261 to i64
  %19263 = getelementptr inbounds double, ptr %19257, i64 %19262
  %19264 = load double, ptr %19263, align 8, !tbaa !11
  %19265 = call double @llvm.fmuladd.f64(double 0x3C7F775C4688EF29, double %19264, double %19256)
  %19266 = load ptr, ptr %7, align 8, !tbaa !9
  %19267 = load i32, ptr %12, align 4, !tbaa !5
  %19268 = load i32, ptr %8, align 4, !tbaa !5
  %19269 = mul nsw i32 65, %19268
  %19270 = add nsw i32 %19267, %19269
  %19271 = sext i32 %19270 to i64
  %19272 = getelementptr inbounds double, ptr %19266, i64 %19271
  %19273 = load double, ptr %19272, align 8, !tbaa !11
  %19274 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %19273, double %19265)
  %19275 = load ptr, ptr %7, align 8, !tbaa !9
  %19276 = load i32, ptr %12, align 4, !tbaa !5
  %19277 = load i32, ptr %8, align 4, !tbaa !5
  %19278 = mul nsw i32 66, %19277
  %19279 = add nsw i32 %19276, %19278
  %19280 = sext i32 %19279 to i64
  %19281 = getelementptr inbounds double, ptr %19275, i64 %19280
  %19282 = load double, ptr %19281, align 8, !tbaa !11
  %19283 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %19282, double %19274)
  %19284 = load ptr, ptr %7, align 8, !tbaa !9
  %19285 = load i32, ptr %12, align 4, !tbaa !5
  %19286 = load i32, ptr %8, align 4, !tbaa !5
  %19287 = mul nsw i32 67, %19286
  %19288 = add nsw i32 %19285, %19287
  %19289 = sext i32 %19288 to i64
  %19290 = getelementptr inbounds double, ptr %19284, i64 %19289
  %19291 = load double, ptr %19290, align 8, !tbaa !11
  %19292 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %19291, double %19283)
  store double %19292, ptr %11, align 8, !tbaa !11
  %19293 = load double, ptr %11, align 8, !tbaa !11
  %19294 = load ptr, ptr %9, align 8, !tbaa !9
  %19295 = load i32, ptr %12, align 4, !tbaa !5
  %19296 = load i32, ptr %10, align 4, !tbaa !5
  %19297 = mul nsw i32 67, %19296
  %19298 = add nsw i32 %19295, %19297
  %19299 = sext i32 %19298 to i64
  %19300 = getelementptr inbounds double, ptr %19294, i64 %19299
  store double %19293, ptr %19300, align 8, !tbaa !11
  %19301 = load ptr, ptr %7, align 8, !tbaa !9
  %19302 = load i32, ptr %12, align 4, !tbaa !5
  %19303 = load i32, ptr %8, align 4, !tbaa !5
  %19304 = mul nsw i32 20, %19303
  %19305 = add nsw i32 %19302, %19304
  %19306 = sext i32 %19305 to i64
  %19307 = getelementptr inbounds double, ptr %19301, i64 %19306
  %19308 = load double, ptr %19307, align 8, !tbaa !11
  %19309 = load ptr, ptr %7, align 8, !tbaa !9
  %19310 = load i32, ptr %12, align 4, !tbaa !5
  %19311 = load i32, ptr %8, align 4, !tbaa !5
  %19312 = mul nsw i32 21, %19311
  %19313 = add nsw i32 %19310, %19312
  %19314 = sext i32 %19313 to i64
  %19315 = getelementptr inbounds double, ptr %19309, i64 %19314
  %19316 = load double, ptr %19315, align 8, !tbaa !11
  %19317 = fmul double 0x3C98000000000000, %19316
  %19318 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %19308, double %19317)
  %19319 = load ptr, ptr %7, align 8, !tbaa !9
  %19320 = load i32, ptr %12, align 4, !tbaa !5
  %19321 = load i32, ptr %8, align 4, !tbaa !5
  %19322 = mul nsw i32 22, %19321
  %19323 = add nsw i32 %19320, %19322
  %19324 = sext i32 %19323 to i64
  %19325 = getelementptr inbounds double, ptr %19319, i64 %19324
  %19326 = load double, ptr %19325, align 8, !tbaa !11
  %19327 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %19326, double %19318)
  %19328 = load ptr, ptr %7, align 8, !tbaa !9
  %19329 = load i32, ptr %12, align 4, !tbaa !5
  %19330 = load i32, ptr %8, align 4, !tbaa !5
  %19331 = mul nsw i32 23, %19330
  %19332 = add nsw i32 %19329, %19331
  %19333 = sext i32 %19332 to i64
  %19334 = getelementptr inbounds double, ptr %19328, i64 %19333
  %19335 = load double, ptr %19334, align 8, !tbaa !11
  %19336 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %19335, double %19327)
  %19337 = load ptr, ptr %7, align 8, !tbaa !9
  %19338 = load i32, ptr %12, align 4, !tbaa !5
  %19339 = load i32, ptr %8, align 4, !tbaa !5
  %19340 = mul nsw i32 24, %19339
  %19341 = add nsw i32 %19338, %19340
  %19342 = sext i32 %19341 to i64
  %19343 = getelementptr inbounds double, ptr %19337, i64 %19342
  %19344 = load double, ptr %19343, align 8, !tbaa !11
  %19345 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %19344, double %19336)
  %19346 = load ptr, ptr %7, align 8, !tbaa !9
  %19347 = load i32, ptr %12, align 4, !tbaa !5
  %19348 = load i32, ptr %8, align 4, !tbaa !5
  %19349 = mul nsw i32 25, %19348
  %19350 = add nsw i32 %19347, %19349
  %19351 = sext i32 %19350 to i64
  %19352 = getelementptr inbounds double, ptr %19346, i64 %19351
  %19353 = load double, ptr %19352, align 8, !tbaa !11
  %19354 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %19353, double %19345)
  %19355 = load ptr, ptr %7, align 8, !tbaa !9
  %19356 = load i32, ptr %12, align 4, !tbaa !5
  %19357 = load i32, ptr %8, align 4, !tbaa !5
  %19358 = mul nsw i32 26, %19357
  %19359 = add nsw i32 %19356, %19358
  %19360 = sext i32 %19359 to i64
  %19361 = getelementptr inbounds double, ptr %19355, i64 %19360
  %19362 = load double, ptr %19361, align 8, !tbaa !11
  %19363 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %19362, double %19354)
  %19364 = load ptr, ptr %7, align 8, !tbaa !9
  %19365 = load i32, ptr %12, align 4, !tbaa !5
  %19366 = load i32, ptr %8, align 4, !tbaa !5
  %19367 = mul nsw i32 27, %19366
  %19368 = add nsw i32 %19365, %19367
  %19369 = sext i32 %19368 to i64
  %19370 = getelementptr inbounds double, ptr %19364, i64 %19369
  %19371 = load double, ptr %19370, align 8, !tbaa !11
  %19372 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %19371, double %19363)
  %19373 = load ptr, ptr %7, align 8, !tbaa !9
  %19374 = load i32, ptr %12, align 4, !tbaa !5
  %19375 = load i32, ptr %8, align 4, !tbaa !5
  %19376 = mul nsw i32 28, %19375
  %19377 = add nsw i32 %19374, %19376
  %19378 = sext i32 %19377 to i64
  %19379 = getelementptr inbounds double, ptr %19373, i64 %19378
  %19380 = load double, ptr %19379, align 8, !tbaa !11
  %19381 = call double @llvm.fmuladd.f64(double 0xBFE002F9665DF3D9, double %19380, double %19372)
  %19382 = load ptr, ptr %7, align 8, !tbaa !9
  %19383 = load i32, ptr %12, align 4, !tbaa !5
  %19384 = load i32, ptr %8, align 4, !tbaa !5
  %19385 = mul nsw i32 29, %19384
  %19386 = add nsw i32 %19383, %19385
  %19387 = sext i32 %19386 to i64
  %19388 = getelementptr inbounds double, ptr %19382, i64 %19387
  %19389 = load double, ptr %19388, align 8, !tbaa !11
  %19390 = call double @llvm.fmuladd.f64(double 0xBFEBF462FB348EF6, double %19389, double %19381)
  %19391 = load ptr, ptr %7, align 8, !tbaa !9
  %19392 = load i32, ptr %12, align 4, !tbaa !5
  %19393 = load i32, ptr %8, align 4, !tbaa !5
  %19394 = mul nsw i32 30, %19393
  %19395 = add nsw i32 %19392, %19394
  %19396 = sext i32 %19395 to i64
  %19397 = getelementptr inbounds double, ptr %19391, i64 %19396
  %19398 = load double, ptr %19397, align 8, !tbaa !11
  %19399 = call double @llvm.fmuladd.f64(double 0xBFD4C0B9406BCBCC, double %19398, double %19390)
  %19400 = load ptr, ptr %7, align 8, !tbaa !9
  %19401 = load i32, ptr %12, align 4, !tbaa !5
  %19402 = load i32, ptr %8, align 4, !tbaa !5
  %19403 = mul nsw i32 31, %19402
  %19404 = add nsw i32 %19401, %19403
  %19405 = sext i32 %19404 to i64
  %19406 = getelementptr inbounds double, ptr %19400, i64 %19405
  %19407 = load double, ptr %19406, align 8, !tbaa !11
  %19408 = call double @llvm.fmuladd.f64(double 0x3F980EB0AE1D4750, double %19407, double %19399)
  %19409 = load ptr, ptr %7, align 8, !tbaa !9
  %19410 = load i32, ptr %12, align 4, !tbaa !5
  %19411 = load i32, ptr %8, align 4, !tbaa !5
  %19412 = mul nsw i32 33, %19411
  %19413 = add nsw i32 %19410, %19412
  %19414 = sext i32 %19413 to i64
  %19415 = getelementptr inbounds double, ptr %19409, i64 %19414
  %19416 = load double, ptr %19415, align 8, !tbaa !11
  %19417 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %19416, double %19408)
  %19418 = load ptr, ptr %7, align 8, !tbaa !9
  %19419 = load i32, ptr %12, align 4, !tbaa !5
  %19420 = load i32, ptr %8, align 4, !tbaa !5
  %19421 = mul nsw i32 34, %19420
  %19422 = add nsw i32 %19419, %19421
  %19423 = sext i32 %19422 to i64
  %19424 = getelementptr inbounds double, ptr %19418, i64 %19423
  %19425 = load double, ptr %19424, align 8, !tbaa !11
  %19426 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %19425, double %19417)
  %19427 = load ptr, ptr %7, align 8, !tbaa !9
  %19428 = load i32, ptr %12, align 4, !tbaa !5
  %19429 = load i32, ptr %8, align 4, !tbaa !5
  %19430 = mul nsw i32 52, %19429
  %19431 = add nsw i32 %19428, %19430
  %19432 = sext i32 %19431 to i64
  %19433 = getelementptr inbounds double, ptr %19427, i64 %19432
  %19434 = load double, ptr %19433, align 8, !tbaa !11
  %19435 = call double @llvm.fmuladd.f64(double 0x3C7DB2CFE686FE7B, double %19434, double %19426)
  %19436 = load ptr, ptr %7, align 8, !tbaa !9
  %19437 = load i32, ptr %12, align 4, !tbaa !5
  %19438 = load i32, ptr %8, align 4, !tbaa !5
  %19439 = mul nsw i32 53, %19438
  %19440 = add nsw i32 %19437, %19439
  %19441 = sext i32 %19440 to i64
  %19442 = getelementptr inbounds double, ptr %19436, i64 %19441
  %19443 = load double, ptr %19442, align 8, !tbaa !11
  %19444 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %19443, double %19435)
  %19445 = load ptr, ptr %7, align 8, !tbaa !9
  %19446 = load i32, ptr %12, align 4, !tbaa !5
  %19447 = load i32, ptr %8, align 4, !tbaa !5
  %19448 = mul nsw i32 54, %19447
  %19449 = add nsw i32 %19446, %19448
  %19450 = sext i32 %19449 to i64
  %19451 = getelementptr inbounds double, ptr %19445, i64 %19450
  %19452 = load double, ptr %19451, align 8, !tbaa !11
  %19453 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %19452, double %19444)
  %19454 = load ptr, ptr %7, align 8, !tbaa !9
  %19455 = load i32, ptr %12, align 4, !tbaa !5
  %19456 = load i32, ptr %8, align 4, !tbaa !5
  %19457 = mul nsw i32 56, %19456
  %19458 = add nsw i32 %19455, %19457
  %19459 = sext i32 %19458 to i64
  %19460 = getelementptr inbounds double, ptr %19454, i64 %19459
  %19461 = load double, ptr %19460, align 8, !tbaa !11
  %19462 = call double @llvm.fmuladd.f64(double 0xBC70F876CCDF6CD9, double %19461, double %19453)
  %19463 = load ptr, ptr %7, align 8, !tbaa !9
  %19464 = load i32, ptr %12, align 4, !tbaa !5
  %19465 = load i32, ptr %8, align 4, !tbaa !5
  %19466 = mul nsw i32 57, %19465
  %19467 = add nsw i32 %19464, %19466
  %19468 = sext i32 %19467 to i64
  %19469 = getelementptr inbounds double, ptr %19463, i64 %19468
  %19470 = load double, ptr %19469, align 8, !tbaa !11
  %19471 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %19470, double %19462)
  %19472 = load ptr, ptr %7, align 8, !tbaa !9
  %19473 = load i32, ptr %12, align 4, !tbaa !5
  %19474 = load i32, ptr %8, align 4, !tbaa !5
  %19475 = mul nsw i32 58, %19474
  %19476 = add nsw i32 %19473, %19475
  %19477 = sext i32 %19476 to i64
  %19478 = getelementptr inbounds double, ptr %19472, i64 %19477
  %19479 = load double, ptr %19478, align 8, !tbaa !11
  %19480 = call double @llvm.fmuladd.f64(double 0x3CA3CC8A99AF5452, double %19479, double %19471)
  %19481 = load ptr, ptr %7, align 8, !tbaa !9
  %19482 = load i32, ptr %12, align 4, !tbaa !5
  %19483 = load i32, ptr %8, align 4, !tbaa !5
  %19484 = mul nsw i32 59, %19483
  %19485 = add nsw i32 %19482, %19484
  %19486 = sext i32 %19485 to i64
  %19487 = getelementptr inbounds double, ptr %19481, i64 %19486
  %19488 = load double, ptr %19487, align 8, !tbaa !11
  %19489 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %19488, double %19480)
  %19490 = load ptr, ptr %7, align 8, !tbaa !9
  %19491 = load i32, ptr %12, align 4, !tbaa !5
  %19492 = load i32, ptr %8, align 4, !tbaa !5
  %19493 = mul nsw i32 60, %19492
  %19494 = add nsw i32 %19491, %19493
  %19495 = sext i32 %19494 to i64
  %19496 = getelementptr inbounds double, ptr %19490, i64 %19495
  %19497 = load double, ptr %19496, align 8, !tbaa !11
  %19498 = call double @llvm.fmuladd.f64(double 0x3FA3F41B0E87BFE9, double %19497, double %19489)
  %19499 = load ptr, ptr %7, align 8, !tbaa !9
  %19500 = load i32, ptr %12, align 4, !tbaa !5
  %19501 = load i32, ptr %8, align 4, !tbaa !5
  %19502 = mul nsw i32 61, %19501
  %19503 = add nsw i32 %19500, %19502
  %19504 = sext i32 %19503 to i64
  %19505 = getelementptr inbounds double, ptr %19499, i64 %19504
  %19506 = load double, ptr %19505, align 8, !tbaa !11
  %19507 = call double @llvm.fmuladd.f64(double 0x3FAD5B74B5F10E92, double %19506, double %19498)
  %19508 = load ptr, ptr %7, align 8, !tbaa !9
  %19509 = load i32, ptr %12, align 4, !tbaa !5
  %19510 = load i32, ptr %8, align 4, !tbaa !5
  %19511 = mul nsw i32 62, %19510
  %19512 = add nsw i32 %19509, %19511
  %19513 = sext i32 %19512 to i64
  %19514 = getelementptr inbounds double, ptr %19508, i64 %19513
  %19515 = load double, ptr %19514, align 8, !tbaa !11
  %19516 = call double @llvm.fmuladd.f64(double 0xBFE66643AEED36FA, double %19515, double %19507)
  %19517 = load ptr, ptr %7, align 8, !tbaa !9
  %19518 = load i32, ptr %12, align 4, !tbaa !5
  %19519 = load i32, ptr %8, align 4, !tbaa !5
  %19520 = mul nsw i32 63, %19519
  %19521 = add nsw i32 %19518, %19520
  %19522 = sext i32 %19521 to i64
  %19523 = getelementptr inbounds double, ptr %19517, i64 %19522
  %19524 = load double, ptr %19523, align 8, !tbaa !11
  %19525 = call double @llvm.fmuladd.f64(double 0xBFE7007BFD8FD85D, double %19524, double %19516)
  %19526 = load ptr, ptr %7, align 8, !tbaa !9
  %19527 = load i32, ptr %12, align 4, !tbaa !5
  %19528 = load i32, ptr %8, align 4, !tbaa !5
  %19529 = mul nsw i32 64, %19528
  %19530 = add nsw i32 %19527, %19529
  %19531 = sext i32 %19530 to i64
  %19532 = getelementptr inbounds double, ptr %19526, i64 %19531
  %19533 = load double, ptr %19532, align 8, !tbaa !11
  %19534 = call double @llvm.fmuladd.f64(double 0x3C7ADEBC19B71701, double %19533, double %19525)
  %19535 = load ptr, ptr %7, align 8, !tbaa !9
  %19536 = load i32, ptr %12, align 4, !tbaa !5
  %19537 = load i32, ptr %8, align 4, !tbaa !5
  %19538 = mul nsw i32 65, %19537
  %19539 = add nsw i32 %19536, %19538
  %19540 = sext i32 %19539 to i64
  %19541 = getelementptr inbounds double, ptr %19535, i64 %19540
  %19542 = load double, ptr %19541, align 8, !tbaa !11
  %19543 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %19542, double %19534)
  %19544 = load ptr, ptr %7, align 8, !tbaa !9
  %19545 = load i32, ptr %12, align 4, !tbaa !5
  %19546 = load i32, ptr %8, align 4, !tbaa !5
  %19547 = mul nsw i32 66, %19546
  %19548 = add nsw i32 %19545, %19547
  %19549 = sext i32 %19548 to i64
  %19550 = getelementptr inbounds double, ptr %19544, i64 %19549
  %19551 = load double, ptr %19550, align 8, !tbaa !11
  %19552 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %19551, double %19543)
  store double %19552, ptr %11, align 8, !tbaa !11
  %19553 = load double, ptr %11, align 8, !tbaa !11
  %19554 = load ptr, ptr %9, align 8, !tbaa !9
  %19555 = load i32, ptr %12, align 4, !tbaa !5
  %19556 = load i32, ptr %10, align 4, !tbaa !5
  %19557 = mul nsw i32 68, %19556
  %19558 = add nsw i32 %19555, %19557
  %19559 = sext i32 %19558 to i64
  %19560 = getelementptr inbounds double, ptr %19554, i64 %19559
  store double %19553, ptr %19560, align 8, !tbaa !11
  %19561 = load ptr, ptr %7, align 8, !tbaa !9
  %19562 = load i32, ptr %12, align 4, !tbaa !5
  %19563 = load i32, ptr %8, align 4, !tbaa !5
  %19564 = mul nsw i32 20, %19563
  %19565 = add nsw i32 %19562, %19564
  %19566 = sext i32 %19565 to i64
  %19567 = getelementptr inbounds double, ptr %19561, i64 %19566
  %19568 = load double, ptr %19567, align 8, !tbaa !11
  %19569 = load ptr, ptr %7, align 8, !tbaa !9
  %19570 = load i32, ptr %12, align 4, !tbaa !5
  %19571 = load i32, ptr %8, align 4, !tbaa !5
  %19572 = mul nsw i32 21, %19571
  %19573 = add nsw i32 %19570, %19572
  %19574 = sext i32 %19573 to i64
  %19575 = getelementptr inbounds double, ptr %19569, i64 %19574
  %19576 = load double, ptr %19575, align 8, !tbaa !11
  %19577 = fmul double 0x3C90000000000000, %19576
  %19578 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %19568, double %19577)
  %19579 = load ptr, ptr %7, align 8, !tbaa !9
  %19580 = load i32, ptr %12, align 4, !tbaa !5
  %19581 = load i32, ptr %8, align 4, !tbaa !5
  %19582 = mul nsw i32 22, %19581
  %19583 = add nsw i32 %19580, %19582
  %19584 = sext i32 %19583 to i64
  %19585 = getelementptr inbounds double, ptr %19579, i64 %19584
  %19586 = load double, ptr %19585, align 8, !tbaa !11
  %19587 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %19586, double %19578)
  %19588 = load ptr, ptr %7, align 8, !tbaa !9
  %19589 = load i32, ptr %12, align 4, !tbaa !5
  %19590 = load i32, ptr %8, align 4, !tbaa !5
  %19591 = mul nsw i32 23, %19590
  %19592 = add nsw i32 %19589, %19591
  %19593 = sext i32 %19592 to i64
  %19594 = getelementptr inbounds double, ptr %19588, i64 %19593
  %19595 = load double, ptr %19594, align 8, !tbaa !11
  %19596 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %19595, double %19587)
  %19597 = load ptr, ptr %7, align 8, !tbaa !9
  %19598 = load i32, ptr %12, align 4, !tbaa !5
  %19599 = load i32, ptr %8, align 4, !tbaa !5
  %19600 = mul nsw i32 24, %19599
  %19601 = add nsw i32 %19598, %19600
  %19602 = sext i32 %19601 to i64
  %19603 = getelementptr inbounds double, ptr %19597, i64 %19602
  %19604 = load double, ptr %19603, align 8, !tbaa !11
  %19605 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %19604, double %19596)
  %19606 = load ptr, ptr %7, align 8, !tbaa !9
  %19607 = load i32, ptr %12, align 4, !tbaa !5
  %19608 = load i32, ptr %8, align 4, !tbaa !5
  %19609 = mul nsw i32 25, %19608
  %19610 = add nsw i32 %19607, %19609
  %19611 = sext i32 %19610 to i64
  %19612 = getelementptr inbounds double, ptr %19606, i64 %19611
  %19613 = load double, ptr %19612, align 8, !tbaa !11
  %19614 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %19613, double %19605)
  %19615 = load ptr, ptr %7, align 8, !tbaa !9
  %19616 = load i32, ptr %12, align 4, !tbaa !5
  %19617 = load i32, ptr %8, align 4, !tbaa !5
  %19618 = mul nsw i32 26, %19617
  %19619 = add nsw i32 %19616, %19618
  %19620 = sext i32 %19619 to i64
  %19621 = getelementptr inbounds double, ptr %19615, i64 %19620
  %19622 = load double, ptr %19621, align 8, !tbaa !11
  %19623 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %19622, double %19614)
  %19624 = load ptr, ptr %7, align 8, !tbaa !9
  %19625 = load i32, ptr %12, align 4, !tbaa !5
  %19626 = load i32, ptr %8, align 4, !tbaa !5
  %19627 = mul nsw i32 27, %19626
  %19628 = add nsw i32 %19625, %19627
  %19629 = sext i32 %19628 to i64
  %19630 = getelementptr inbounds double, ptr %19624, i64 %19629
  %19631 = load double, ptr %19630, align 8, !tbaa !11
  %19632 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %19631, double %19623)
  %19633 = load ptr, ptr %7, align 8, !tbaa !9
  %19634 = load i32, ptr %12, align 4, !tbaa !5
  %19635 = load i32, ptr %8, align 4, !tbaa !5
  %19636 = mul nsw i32 28, %19635
  %19637 = add nsw i32 %19634, %19636
  %19638 = sext i32 %19637 to i64
  %19639 = getelementptr inbounds double, ptr %19633, i64 %19638
  %19640 = load double, ptr %19639, align 8, !tbaa !11
  %19641 = call double @llvm.fmuladd.f64(double 0x3F980EB0AE1D4741, double %19640, double %19632)
  %19642 = load ptr, ptr %7, align 8, !tbaa !9
  %19643 = load i32, ptr %12, align 4, !tbaa !5
  %19644 = load i32, ptr %8, align 4, !tbaa !5
  %19645 = mul nsw i32 29, %19644
  %19646 = add nsw i32 %19643, %19645
  %19647 = sext i32 %19646 to i64
  %19648 = getelementptr inbounds double, ptr %19642, i64 %19647
  %19649 = load double, ptr %19648, align 8, !tbaa !11
  %19650 = call double @llvm.fmuladd.f64(double 0xBFD4C0B9406BCBCC, double %19649, double %19641)
  %19651 = load ptr, ptr %7, align 8, !tbaa !9
  %19652 = load i32, ptr %12, align 4, !tbaa !5
  %19653 = load i32, ptr %8, align 4, !tbaa !5
  %19654 = mul nsw i32 30, %19653
  %19655 = add nsw i32 %19652, %19654
  %19656 = sext i32 %19655 to i64
  %19657 = getelementptr inbounds double, ptr %19651, i64 %19656
  %19658 = load double, ptr %19657, align 8, !tbaa !11
  %19659 = call double @llvm.fmuladd.f64(double 0xBFEBF462FB348EF6, double %19658, double %19650)
  %19660 = load ptr, ptr %7, align 8, !tbaa !9
  %19661 = load i32, ptr %12, align 4, !tbaa !5
  %19662 = load i32, ptr %8, align 4, !tbaa !5
  %19663 = mul nsw i32 31, %19662
  %19664 = add nsw i32 %19661, %19663
  %19665 = sext i32 %19664 to i64
  %19666 = getelementptr inbounds double, ptr %19660, i64 %19665
  %19667 = load double, ptr %19666, align 8, !tbaa !11
  %19668 = call double @llvm.fmuladd.f64(double 0xBFE002F9665DF3D9, double %19667, double %19659)
  %19669 = load ptr, ptr %7, align 8, !tbaa !9
  %19670 = load i32, ptr %12, align 4, !tbaa !5
  %19671 = load i32, ptr %8, align 4, !tbaa !5
  %19672 = mul nsw i32 32, %19671
  %19673 = add nsw i32 %19670, %19672
  %19674 = sext i32 %19673 to i64
  %19675 = getelementptr inbounds double, ptr %19669, i64 %19674
  %19676 = load double, ptr %19675, align 8, !tbaa !11
  %19677 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %19676, double %19668)
  %19678 = load ptr, ptr %7, align 8, !tbaa !9
  %19679 = load i32, ptr %12, align 4, !tbaa !5
  %19680 = load i32, ptr %8, align 4, !tbaa !5
  %19681 = mul nsw i32 33, %19680
  %19682 = add nsw i32 %19679, %19681
  %19683 = sext i32 %19682 to i64
  %19684 = getelementptr inbounds double, ptr %19678, i64 %19683
  %19685 = load double, ptr %19684, align 8, !tbaa !11
  %19686 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %19685, double %19677)
  %19687 = load ptr, ptr %7, align 8, !tbaa !9
  %19688 = load i32, ptr %12, align 4, !tbaa !5
  %19689 = load i32, ptr %8, align 4, !tbaa !5
  %19690 = mul nsw i32 34, %19689
  %19691 = add nsw i32 %19688, %19690
  %19692 = sext i32 %19691 to i64
  %19693 = getelementptr inbounds double, ptr %19687, i64 %19692
  %19694 = load double, ptr %19693, align 8, !tbaa !11
  %19695 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %19694, double %19686)
  %19696 = load ptr, ptr %7, align 8, !tbaa !9
  %19697 = load i32, ptr %12, align 4, !tbaa !5
  %19698 = load i32, ptr %8, align 4, !tbaa !5
  %19699 = mul nsw i32 52, %19698
  %19700 = add nsw i32 %19697, %19699
  %19701 = sext i32 %19700 to i64
  %19702 = getelementptr inbounds double, ptr %19696, i64 %19701
  %19703 = load double, ptr %19702, align 8, !tbaa !11
  %19704 = call double @llvm.fmuladd.f64(double 0xBC75369480174810, double %19703, double %19695)
  %19705 = load ptr, ptr %7, align 8, !tbaa !9
  %19706 = load i32, ptr %12, align 4, !tbaa !5
  %19707 = load i32, ptr %8, align 4, !tbaa !5
  %19708 = mul nsw i32 53, %19707
  %19709 = add nsw i32 %19706, %19708
  %19710 = sext i32 %19709 to i64
  %19711 = getelementptr inbounds double, ptr %19705, i64 %19710
  %19712 = load double, ptr %19711, align 8, !tbaa !11
  %19713 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %19712, double %19704)
  %19714 = load ptr, ptr %7, align 8, !tbaa !9
  %19715 = load i32, ptr %12, align 4, !tbaa !5
  %19716 = load i32, ptr %8, align 4, !tbaa !5
  %19717 = mul nsw i32 54, %19716
  %19718 = add nsw i32 %19715, %19717
  %19719 = sext i32 %19718 to i64
  %19720 = getelementptr inbounds double, ptr %19714, i64 %19719
  %19721 = load double, ptr %19720, align 8, !tbaa !11
  %19722 = call double @llvm.fmuladd.f64(double 0x3C93CC8A99AF5452, double %19721, double %19713)
  %19723 = load ptr, ptr %7, align 8, !tbaa !9
  %19724 = load i32, ptr %12, align 4, !tbaa !5
  %19725 = load i32, ptr %8, align 4, !tbaa !5
  %19726 = mul nsw i32 55, %19725
  %19727 = add nsw i32 %19724, %19726
  %19728 = sext i32 %19727 to i64
  %19729 = getelementptr inbounds double, ptr %19723, i64 %19728
  %19730 = load double, ptr %19729, align 8, !tbaa !11
  %19731 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %19730, double %19722)
  %19732 = load ptr, ptr %7, align 8, !tbaa !9
  %19733 = load i32, ptr %12, align 4, !tbaa !5
  %19734 = load i32, ptr %8, align 4, !tbaa !5
  %19735 = mul nsw i32 56, %19734
  %19736 = add nsw i32 %19733, %19735
  %19737 = sext i32 %19736 to i64
  %19738 = getelementptr inbounds double, ptr %19732, i64 %19737
  %19739 = load double, ptr %19738, align 8, !tbaa !11
  %19740 = call double @llvm.fmuladd.f64(double 0x3C8974B2334F2346, double %19739, double %19731)
  %19741 = load ptr, ptr %7, align 8, !tbaa !9
  %19742 = load i32, ptr %12, align 4, !tbaa !5
  %19743 = load i32, ptr %8, align 4, !tbaa !5
  %19744 = mul nsw i32 57, %19743
  %19745 = add nsw i32 %19742, %19744
  %19746 = sext i32 %19745 to i64
  %19747 = getelementptr inbounds double, ptr %19741, i64 %19746
  %19748 = load double, ptr %19747, align 8, !tbaa !11
  %19749 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %19748, double %19740)
  %19750 = load ptr, ptr %7, align 8, !tbaa !9
  %19751 = load i32, ptr %12, align 4, !tbaa !5
  %19752 = load i32, ptr %8, align 4, !tbaa !5
  %19753 = mul nsw i32 58, %19752
  %19754 = add nsw i32 %19751, %19753
  %19755 = sext i32 %19754 to i64
  %19756 = getelementptr inbounds double, ptr %19750, i64 %19755
  %19757 = load double, ptr %19756, align 8, !tbaa !11
  %19758 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %19757, double %19749)
  %19759 = load ptr, ptr %7, align 8, !tbaa !9
  %19760 = load i32, ptr %12, align 4, !tbaa !5
  %19761 = load i32, ptr %8, align 4, !tbaa !5
  %19762 = mul nsw i32 59, %19761
  %19763 = add nsw i32 %19760, %19762
  %19764 = sext i32 %19763 to i64
  %19765 = getelementptr inbounds double, ptr %19759, i64 %19764
  %19766 = load double, ptr %19765, align 8, !tbaa !11
  %19767 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %19766, double %19758)
  %19768 = load ptr, ptr %7, align 8, !tbaa !9
  %19769 = load i32, ptr %12, align 4, !tbaa !5
  %19770 = load i32, ptr %8, align 4, !tbaa !5
  %19771 = mul nsw i32 60, %19770
  %19772 = add nsw i32 %19769, %19771
  %19773 = sext i32 %19772 to i64
  %19774 = getelementptr inbounds double, ptr %19768, i64 %19773
  %19775 = load double, ptr %19774, align 8, !tbaa !11
  %19776 = call double @llvm.fmuladd.f64(double 0xBFB8DF388696F554, double %19775, double %19767)
  %19777 = load ptr, ptr %7, align 8, !tbaa !9
  %19778 = load i32, ptr %12, align 4, !tbaa !5
  %19779 = load i32, ptr %8, align 4, !tbaa !5
  %19780 = mul nsw i32 61, %19779
  %19781 = add nsw i32 %19778, %19780
  %19782 = sext i32 %19781 to i64
  %19783 = getelementptr inbounds double, ptr %19777, i64 %19782
  %19784 = load double, ptr %19783, align 8, !tbaa !11
  %19785 = call double @llvm.fmuladd.f64(double 0x3FD0C7817D9C3121, double %19784, double %19776)
  %19786 = load ptr, ptr %7, align 8, !tbaa !9
  %19787 = load i32, ptr %12, align 4, !tbaa !5
  %19788 = load i32, ptr %8, align 4, !tbaa !5
  %19789 = mul nsw i32 62, %19788
  %19790 = add nsw i32 %19787, %19789
  %19791 = sext i32 %19790 to i64
  %19792 = getelementptr inbounds double, ptr %19786, i64 %19791
  %19793 = load double, ptr %19792, align 8, !tbaa !11
  %19794 = call double @llvm.fmuladd.f64(double 0x4007001BD846D0AE, double %19793, double %19785)
  %19795 = load ptr, ptr %7, align 8, !tbaa !9
  %19796 = load i32, ptr %12, align 4, !tbaa !5
  %19797 = load i32, ptr %8, align 4, !tbaa !5
  %19798 = mul nsw i32 63, %19797
  %19799 = add nsw i32 %19796, %19798
  %19800 = sext i32 %19799 to i64
  %19801 = getelementptr inbounds double, ptr %19795, i64 %19800
  %19802 = load double, ptr %19801, align 8, !tbaa !11
  %19803 = call double @llvm.fmuladd.f64(double 0x3FD08C54FF1019FC, double %19802, double %19794)
  %19804 = load ptr, ptr %7, align 8, !tbaa !9
  %19805 = load i32, ptr %12, align 4, !tbaa !5
  %19806 = load i32, ptr %8, align 4, !tbaa !5
  %19807 = mul nsw i32 64, %19806
  %19808 = add nsw i32 %19805, %19807
  %19809 = sext i32 %19808 to i64
  %19810 = getelementptr inbounds double, ptr %19804, i64 %19809
  %19811 = load double, ptr %19810, align 8, !tbaa !11
  %19812 = call double @llvm.fmuladd.f64(double 0xBC9152F9467969C8, double %19811, double %19803)
  %19813 = load ptr, ptr %7, align 8, !tbaa !9
  %19814 = load i32, ptr %12, align 4, !tbaa !5
  %19815 = load i32, ptr %8, align 4, !tbaa !5
  %19816 = mul nsw i32 65, %19815
  %19817 = add nsw i32 %19814, %19816
  %19818 = sext i32 %19817 to i64
  %19819 = getelementptr inbounds double, ptr %19813, i64 %19818
  %19820 = load double, ptr %19819, align 8, !tbaa !11
  %19821 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %19820, double %19812)
  %19822 = load ptr, ptr %7, align 8, !tbaa !9
  %19823 = load i32, ptr %12, align 4, !tbaa !5
  %19824 = load i32, ptr %8, align 4, !tbaa !5
  %19825 = mul nsw i32 66, %19824
  %19826 = add nsw i32 %19823, %19825
  %19827 = sext i32 %19826 to i64
  %19828 = getelementptr inbounds double, ptr %19822, i64 %19827
  %19829 = load double, ptr %19828, align 8, !tbaa !11
  %19830 = call double @llvm.fmuladd.f64(double 0x3C9974B2334F2346, double %19829, double %19821)
  %19831 = load ptr, ptr %7, align 8, !tbaa !9
  %19832 = load i32, ptr %12, align 4, !tbaa !5
  %19833 = load i32, ptr %8, align 4, !tbaa !5
  %19834 = mul nsw i32 67, %19833
  %19835 = add nsw i32 %19832, %19834
  %19836 = sext i32 %19835 to i64
  %19837 = getelementptr inbounds double, ptr %19831, i64 %19836
  %19838 = load double, ptr %19837, align 8, !tbaa !11
  %19839 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %19838, double %19830)
  store double %19839, ptr %11, align 8, !tbaa !11
  %19840 = load double, ptr %11, align 8, !tbaa !11
  %19841 = load ptr, ptr %9, align 8, !tbaa !9
  %19842 = load i32, ptr %12, align 4, !tbaa !5
  %19843 = load i32, ptr %10, align 4, !tbaa !5
  %19844 = mul nsw i32 69, %19843
  %19845 = add nsw i32 %19842, %19844
  %19846 = sext i32 %19845 to i64
  %19847 = getelementptr inbounds double, ptr %19841, i64 %19846
  store double %19840, ptr %19847, align 8, !tbaa !11
  %19848 = load ptr, ptr %7, align 8, !tbaa !9
  %19849 = load i32, ptr %12, align 4, !tbaa !5
  %19850 = load i32, ptr %8, align 4, !tbaa !5
  %19851 = mul nsw i32 20, %19850
  %19852 = add nsw i32 %19849, %19851
  %19853 = sext i32 %19852 to i64
  %19854 = getelementptr inbounds double, ptr %19848, i64 %19853
  %19855 = load double, ptr %19854, align 8, !tbaa !11
  %19856 = load ptr, ptr %7, align 8, !tbaa !9
  %19857 = load i32, ptr %12, align 4, !tbaa !5
  %19858 = load i32, ptr %8, align 4, !tbaa !5
  %19859 = mul nsw i32 21, %19858
  %19860 = add nsw i32 %19857, %19859
  %19861 = sext i32 %19860 to i64
  %19862 = getelementptr inbounds double, ptr %19856, i64 %19861
  %19863 = load double, ptr %19862, align 8, !tbaa !11
  %19864 = fmul double 0x3C98000000000000, %19863
  %19865 = call double @llvm.fmuladd.f64(double 0xBC91000000000000, double %19855, double %19864)
  %19866 = load ptr, ptr %7, align 8, !tbaa !9
  %19867 = load i32, ptr %12, align 4, !tbaa !5
  %19868 = load i32, ptr %8, align 4, !tbaa !5
  %19869 = mul nsw i32 22, %19868
  %19870 = add nsw i32 %19867, %19869
  %19871 = sext i32 %19870 to i64
  %19872 = getelementptr inbounds double, ptr %19866, i64 %19871
  %19873 = load double, ptr %19872, align 8, !tbaa !11
  %19874 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %19873, double %19865)
  %19875 = load ptr, ptr %7, align 8, !tbaa !9
  %19876 = load i32, ptr %12, align 4, !tbaa !5
  %19877 = load i32, ptr %8, align 4, !tbaa !5
  %19878 = mul nsw i32 23, %19877
  %19879 = add nsw i32 %19876, %19878
  %19880 = sext i32 %19879 to i64
  %19881 = getelementptr inbounds double, ptr %19875, i64 %19880
  %19882 = load double, ptr %19881, align 8, !tbaa !11
  %19883 = call double @llvm.fmuladd.f64(double 0xBC50000000000000, double %19882, double %19874)
  %19884 = load ptr, ptr %7, align 8, !tbaa !9
  %19885 = load i32, ptr %12, align 4, !tbaa !5
  %19886 = load i32, ptr %8, align 4, !tbaa !5
  %19887 = mul nsw i32 24, %19886
  %19888 = add nsw i32 %19885, %19887
  %19889 = sext i32 %19888 to i64
  %19890 = getelementptr inbounds double, ptr %19884, i64 %19889
  %19891 = load double, ptr %19890, align 8, !tbaa !11
  %19892 = call double @llvm.fmuladd.f64(double 0x3C84000000000000, double %19891, double %19883)
  %19893 = load ptr, ptr %7, align 8, !tbaa !9
  %19894 = load i32, ptr %12, align 4, !tbaa !5
  %19895 = load i32, ptr %8, align 4, !tbaa !5
  %19896 = mul nsw i32 25, %19895
  %19897 = add nsw i32 %19894, %19896
  %19898 = sext i32 %19897 to i64
  %19899 = getelementptr inbounds double, ptr %19893, i64 %19898
  %19900 = load double, ptr %19899, align 8, !tbaa !11
  %19901 = call double @llvm.fmuladd.f64(double 0x3CAE000000000002, double %19900, double %19892)
  %19902 = load ptr, ptr %7, align 8, !tbaa !9
  %19903 = load i32, ptr %12, align 4, !tbaa !5
  %19904 = load i32, ptr %8, align 4, !tbaa !5
  %19905 = mul nsw i32 26, %19904
  %19906 = add nsw i32 %19903, %19905
  %19907 = sext i32 %19906 to i64
  %19908 = getelementptr inbounds double, ptr %19902, i64 %19907
  %19909 = load double, ptr %19908, align 8, !tbaa !11
  %19910 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %19909, double %19901)
  %19911 = load ptr, ptr %7, align 8, !tbaa !9
  %19912 = load i32, ptr %12, align 4, !tbaa !5
  %19913 = load i32, ptr %8, align 4, !tbaa !5
  %19914 = mul nsw i32 27, %19913
  %19915 = add nsw i32 %19912, %19914
  %19916 = sext i32 %19915 to i64
  %19917 = getelementptr inbounds double, ptr %19911, i64 %19916
  %19918 = load double, ptr %19917, align 8, !tbaa !11
  %19919 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %19918, double %19910)
  %19920 = load ptr, ptr %7, align 8, !tbaa !9
  %19921 = load i32, ptr %12, align 4, !tbaa !5
  %19922 = load i32, ptr %8, align 4, !tbaa !5
  %19923 = mul nsw i32 28, %19922
  %19924 = add nsw i32 %19921, %19923
  %19925 = sext i32 %19924 to i64
  %19926 = getelementptr inbounds double, ptr %19920, i64 %19925
  %19927 = load double, ptr %19926, align 8, !tbaa !11
  %19928 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %19927, double %19919)
  %19929 = load ptr, ptr %7, align 8, !tbaa !9
  %19930 = load i32, ptr %12, align 4, !tbaa !5
  %19931 = load i32, ptr %8, align 4, !tbaa !5
  %19932 = mul nsw i32 29, %19931
  %19933 = add nsw i32 %19930, %19932
  %19934 = sext i32 %19933 to i64
  %19935 = getelementptr inbounds double, ptr %19929, i64 %19934
  %19936 = load double, ptr %19935, align 8, !tbaa !11
  %19937 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %19936, double %19928)
  %19938 = load ptr, ptr %7, align 8, !tbaa !9
  %19939 = load i32, ptr %12, align 4, !tbaa !5
  %19940 = load i32, ptr %8, align 4, !tbaa !5
  %19941 = mul nsw i32 30, %19940
  %19942 = add nsw i32 %19939, %19941
  %19943 = sext i32 %19942 to i64
  %19944 = getelementptr inbounds double, ptr %19938, i64 %19943
  %19945 = load double, ptr %19944, align 8, !tbaa !11
  %19946 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %19945, double %19937)
  %19947 = load ptr, ptr %7, align 8, !tbaa !9
  %19948 = load i32, ptr %12, align 4, !tbaa !5
  %19949 = load i32, ptr %8, align 4, !tbaa !5
  %19950 = mul nsw i32 31, %19949
  %19951 = add nsw i32 %19948, %19950
  %19952 = sext i32 %19951 to i64
  %19953 = getelementptr inbounds double, ptr %19947, i64 %19952
  %19954 = load double, ptr %19953, align 8, !tbaa !11
  %19955 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %19954, double %19946)
  %19956 = load ptr, ptr %7, align 8, !tbaa !9
  %19957 = load i32, ptr %12, align 4, !tbaa !5
  %19958 = load i32, ptr %8, align 4, !tbaa !5
  %19959 = mul nsw i32 32, %19958
  %19960 = add nsw i32 %19957, %19959
  %19961 = sext i32 %19960 to i64
  %19962 = getelementptr inbounds double, ptr %19956, i64 %19961
  %19963 = load double, ptr %19962, align 8, !tbaa !11
  %19964 = call double @llvm.fmuladd.f64(double 0x3FA789B66AF4F45E, double %19963, double %19955)
  %19965 = load ptr, ptr %7, align 8, !tbaa !9
  %19966 = load i32, ptr %12, align 4, !tbaa !5
  %19967 = load i32, ptr %8, align 4, !tbaa !5
  %19968 = mul nsw i32 33, %19967
  %19969 = add nsw i32 %19966, %19968
  %19970 = sext i32 %19969 to i64
  %19971 = getelementptr inbounds double, ptr %19965, i64 %19970
  %19972 = load double, ptr %19971, align 8, !tbaa !11
  %19973 = call double @llvm.fmuladd.f64(double 0x3FEC2894019C8AD2, double %19972, double %19964)
  %19974 = load ptr, ptr %7, align 8, !tbaa !9
  %19975 = load i32, ptr %12, align 4, !tbaa !5
  %19976 = load i32, ptr %8, align 4, !tbaa !5
  %19977 = mul nsw i32 34, %19976
  %19978 = add nsw i32 %19975, %19977
  %19979 = sext i32 %19978 to i64
  %19980 = getelementptr inbounds double, ptr %19974, i64 %19979
  %19981 = load double, ptr %19980, align 8, !tbaa !11
  %19982 = call double @llvm.fmuladd.f64(double 0x3FEC2894019C8AC4, double %19981, double %19973)
  %19983 = load ptr, ptr %7, align 8, !tbaa !9
  %19984 = load i32, ptr %12, align 4, !tbaa !5
  %19985 = load i32, ptr %8, align 4, !tbaa !5
  %19986 = mul nsw i32 35, %19985
  %19987 = add nsw i32 %19984, %19986
  %19988 = sext i32 %19987 to i64
  %19989 = getelementptr inbounds double, ptr %19983, i64 %19988
  %19990 = load double, ptr %19989, align 8, !tbaa !11
  %19991 = call double @llvm.fmuladd.f64(double 0x3FA789B66AF4F564, double %19990, double %19982)
  %19992 = load ptr, ptr %7, align 8, !tbaa !9
  %19993 = load i32, ptr %12, align 4, !tbaa !5
  %19994 = load i32, ptr %8, align 4, !tbaa !5
  %19995 = mul nsw i32 52, %19994
  %19996 = add nsw i32 %19993, %19995
  %19997 = sext i32 %19996 to i64
  %19998 = getelementptr inbounds double, ptr %19992, i64 %19997
  %19999 = load double, ptr %19998, align 8, !tbaa !11
  %20000 = call double @llvm.fmuladd.f64(double 0x3C7FD1DEC022EC17, double %19999, double %19991)
  %20001 = load ptr, ptr %7, align 8, !tbaa !9
  %20002 = load i32, ptr %12, align 4, !tbaa !5
  %20003 = load i32, ptr %8, align 4, !tbaa !5
  %20004 = mul nsw i32 53, %20003
  %20005 = add nsw i32 %20002, %20004
  %20006 = sext i32 %20005 to i64
  %20007 = getelementptr inbounds double, ptr %20001, i64 %20006
  %20008 = load double, ptr %20007, align 8, !tbaa !11
  %20009 = call double @llvm.fmuladd.f64(double 0xBCA6A09E667F3BCC, double %20008, double %20000)
  %20010 = load ptr, ptr %7, align 8, !tbaa !9
  %20011 = load i32, ptr %12, align 4, !tbaa !5
  %20012 = load i32, ptr %8, align 4, !tbaa !5
  %20013 = mul nsw i32 54, %20012
  %20014 = add nsw i32 %20011, %20013
  %20015 = sext i32 %20014 to i64
  %20016 = getelementptr inbounds double, ptr %20010, i64 %20015
  %20017 = load double, ptr %20016, align 8, !tbaa !11
  %20018 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %20017, double %20009)
  %20019 = load ptr, ptr %7, align 8, !tbaa !9
  %20020 = load i32, ptr %12, align 4, !tbaa !5
  %20021 = load i32, ptr %8, align 4, !tbaa !5
  %20022 = mul nsw i32 55, %20021
  %20023 = add nsw i32 %20020, %20022
  %20024 = sext i32 %20023 to i64
  %20025 = getelementptr inbounds double, ptr %20019, i64 %20024
  %20026 = load double, ptr %20025, align 8, !tbaa !11
  %20027 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %20026, double %20018)
  %20028 = load ptr, ptr %7, align 8, !tbaa !9
  %20029 = load i32, ptr %12, align 4, !tbaa !5
  %20030 = load i32, ptr %8, align 4, !tbaa !5
  %20031 = mul nsw i32 56, %20030
  %20032 = add nsw i32 %20029, %20031
  %20033 = sext i32 %20032 to i64
  %20034 = getelementptr inbounds double, ptr %20028, i64 %20033
  %20035 = load double, ptr %20034, align 8, !tbaa !11
  %20036 = call double @llvm.fmuladd.f64(double 0xBC81AD7BC01366B8, double %20035, double %20027)
  %20037 = load ptr, ptr %7, align 8, !tbaa !9
  %20038 = load i32, ptr %12, align 4, !tbaa !5
  %20039 = load i32, ptr %8, align 4, !tbaa !5
  %20040 = mul nsw i32 57, %20039
  %20041 = add nsw i32 %20038, %20040
  %20042 = sext i32 %20041 to i64
  %20043 = getelementptr inbounds double, ptr %20037, i64 %20042
  %20044 = load double, ptr %20043, align 8, !tbaa !11
  %20045 = call double @llvm.fmuladd.f64(double 0xBC93CC8A99AF5452, double %20044, double %20036)
  %20046 = load ptr, ptr %7, align 8, !tbaa !9
  %20047 = load i32, ptr %12, align 4, !tbaa !5
  %20048 = load i32, ptr %8, align 4, !tbaa !5
  %20049 = mul nsw i32 58, %20048
  %20050 = add nsw i32 %20047, %20049
  %20051 = sext i32 %20050 to i64
  %20052 = getelementptr inbounds double, ptr %20046, i64 %20051
  %20053 = load double, ptr %20052, align 8, !tbaa !11
  %20054 = call double @llvm.fmuladd.f64(double 0xBC93CC8A99AF5452, double %20053, double %20045)
  %20055 = load ptr, ptr %7, align 8, !tbaa !9
  %20056 = load i32, ptr %12, align 4, !tbaa !5
  %20057 = load i32, ptr %8, align 4, !tbaa !5
  %20058 = mul nsw i32 59, %20057
  %20059 = add nsw i32 %20056, %20058
  %20060 = sext i32 %20059 to i64
  %20061 = getelementptr inbounds double, ptr %20055, i64 %20060
  %20062 = load double, ptr %20061, align 8, !tbaa !11
  %20063 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %20062, double %20054)
  %20064 = load ptr, ptr %7, align 8, !tbaa !9
  %20065 = load i32, ptr %12, align 4, !tbaa !5
  %20066 = load i32, ptr %8, align 4, !tbaa !5
  %20067 = mul nsw i32 60, %20066
  %20068 = add nsw i32 %20065, %20067
  %20069 = sext i32 %20068 to i64
  %20070 = getelementptr inbounds double, ptr %20064, i64 %20069
  %20071 = load double, ptr %20070, align 8, !tbaa !11
  %20072 = call double @llvm.fmuladd.f64(double 0xBC85EB99734B41EF, double %20071, double %20063)
  %20073 = load ptr, ptr %7, align 8, !tbaa !9
  %20074 = load i32, ptr %12, align 4, !tbaa !5
  %20075 = load i32, ptr %8, align 4, !tbaa !5
  %20076 = mul nsw i32 61, %20075
  %20077 = add nsw i32 %20074, %20076
  %20078 = sext i32 %20077 to i64
  %20079 = getelementptr inbounds double, ptr %20073, i64 %20078
  %20080 = load double, ptr %20079, align 8, !tbaa !11
  %20081 = call double @llvm.fmuladd.f64(double 0xBCA80AA84CE72F89, double %20080, double %20072)
  %20082 = load ptr, ptr %7, align 8, !tbaa !9
  %20083 = load i32, ptr %12, align 4, !tbaa !5
  %20084 = load i32, ptr %8, align 4, !tbaa !5
  %20085 = mul nsw i32 62, %20084
  %20086 = add nsw i32 %20083, %20085
  %20087 = sext i32 %20086 to i64
  %20088 = getelementptr inbounds double, ptr %20082, i64 %20087
  %20089 = load double, ptr %20088, align 8, !tbaa !11
  %20090 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %20089, double %20081)
  %20091 = load ptr, ptr %7, align 8, !tbaa !9
  %20092 = load i32, ptr %12, align 4, !tbaa !5
  %20093 = load i32, ptr %8, align 4, !tbaa !5
  %20094 = mul nsw i32 63, %20093
  %20095 = add nsw i32 %20092, %20094
  %20096 = sext i32 %20095 to i64
  %20097 = getelementptr inbounds double, ptr %20091, i64 %20096
  %20098 = load double, ptr %20097, align 8, !tbaa !11
  %20099 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %20098, double %20090)
  %20100 = load ptr, ptr %7, align 8, !tbaa !9
  %20101 = load i32, ptr %12, align 4, !tbaa !5
  %20102 = load i32, ptr %8, align 4, !tbaa !5
  %20103 = mul nsw i32 64, %20102
  %20104 = add nsw i32 %20101, %20103
  %20105 = sext i32 %20104 to i64
  %20106 = getelementptr inbounds double, ptr %20100, i64 %20105
  %20107 = load double, ptr %20106, align 8, !tbaa !11
  %20108 = call double @llvm.fmuladd.f64(double 0xBFA0A4D27CF86DC6, double %20107, double %20099)
  %20109 = load ptr, ptr %7, align 8, !tbaa !9
  %20110 = load i32, ptr %12, align 4, !tbaa !5
  %20111 = load i32, ptr %8, align 4, !tbaa !5
  %20112 = mul nsw i32 65, %20111
  %20113 = add nsw i32 %20110, %20112
  %20114 = sext i32 %20113 to i64
  %20115 = getelementptr inbounds double, ptr %20109, i64 %20114
  %20116 = load double, ptr %20115, align 8, !tbaa !11
  %20117 = call double @llvm.fmuladd.f64(double 0xBFE3E93C07AFC380, double %20116, double %20108)
  %20118 = load ptr, ptr %7, align 8, !tbaa !9
  %20119 = load i32, ptr %12, align 4, !tbaa !5
  %20120 = load i32, ptr %8, align 4, !tbaa !5
  %20121 = mul nsw i32 66, %20120
  %20122 = add nsw i32 %20119, %20121
  %20123 = sext i32 %20122 to i64
  %20124 = getelementptr inbounds double, ptr %20118, i64 %20123
  %20125 = load double, ptr %20124, align 8, !tbaa !11
  %20126 = call double @llvm.fmuladd.f64(double 0xBFE3E93C07AFC37E, double %20125, double %20117)
  %20127 = load ptr, ptr %7, align 8, !tbaa !9
  %20128 = load i32, ptr %12, align 4, !tbaa !5
  %20129 = load i32, ptr %8, align 4, !tbaa !5
  %20130 = mul nsw i32 67, %20129
  %20131 = add nsw i32 %20128, %20130
  %20132 = sext i32 %20131 to i64
  %20133 = getelementptr inbounds double, ptr %20127, i64 %20132
  %20134 = load double, ptr %20133, align 8, !tbaa !11
  %20135 = call double @llvm.fmuladd.f64(double 0xBFA0A4D27CF86DAF, double %20134, double %20126)
  store double %20135, ptr %11, align 8, !tbaa !11
  %20136 = load double, ptr %11, align 8, !tbaa !11
  %20137 = load ptr, ptr %9, align 8, !tbaa !9
  %20138 = load i32, ptr %12, align 4, !tbaa !5
  %20139 = load i32, ptr %10, align 4, !tbaa !5
  %20140 = mul nsw i32 70, %20139
  %20141 = add nsw i32 %20138, %20140
  %20142 = sext i32 %20141 to i64
  %20143 = getelementptr inbounds double, ptr %20137, i64 %20142
  store double %20136, ptr %20143, align 8, !tbaa !11
  %20144 = load ptr, ptr %7, align 8, !tbaa !9
  %20145 = load i32, ptr %12, align 4, !tbaa !5
  %20146 = load i32, ptr %8, align 4, !tbaa !5
  %20147 = mul nsw i32 20, %20146
  %20148 = add nsw i32 %20145, %20147
  %20149 = sext i32 %20148 to i64
  %20150 = getelementptr inbounds double, ptr %20144, i64 %20149
  %20151 = load double, ptr %20150, align 8, !tbaa !11
  %20152 = load ptr, ptr %7, align 8, !tbaa !9
  %20153 = load i32, ptr %12, align 4, !tbaa !5
  %20154 = load i32, ptr %8, align 4, !tbaa !5
  %20155 = mul nsw i32 21, %20154
  %20156 = add nsw i32 %20153, %20155
  %20157 = sext i32 %20156 to i64
  %20158 = getelementptr inbounds double, ptr %20152, i64 %20157
  %20159 = load double, ptr %20158, align 8, !tbaa !11
  %20160 = fmul double 0x3CA4000000000001, %20159
  %20161 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %20151, double %20160)
  %20162 = load ptr, ptr %7, align 8, !tbaa !9
  %20163 = load i32, ptr %12, align 4, !tbaa !5
  %20164 = load i32, ptr %8, align 4, !tbaa !5
  %20165 = mul nsw i32 22, %20164
  %20166 = add nsw i32 %20163, %20165
  %20167 = sext i32 %20166 to i64
  %20168 = getelementptr inbounds double, ptr %20162, i64 %20167
  %20169 = load double, ptr %20168, align 8, !tbaa !11
  %20170 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %20169, double %20161)
  %20171 = load ptr, ptr %7, align 8, !tbaa !9
  %20172 = load i32, ptr %12, align 4, !tbaa !5
  %20173 = load i32, ptr %8, align 4, !tbaa !5
  %20174 = mul nsw i32 23, %20173
  %20175 = add nsw i32 %20172, %20174
  %20176 = sext i32 %20175 to i64
  %20177 = getelementptr inbounds double, ptr %20171, i64 %20176
  %20178 = load double, ptr %20177, align 8, !tbaa !11
  %20179 = call double @llvm.fmuladd.f64(double 0x3CB0000000000000, double %20178, double %20170)
  %20180 = load ptr, ptr %7, align 8, !tbaa !9
  %20181 = load i32, ptr %12, align 4, !tbaa !5
  %20182 = load i32, ptr %8, align 4, !tbaa !5
  %20183 = mul nsw i32 24, %20182
  %20184 = add nsw i32 %20181, %20183
  %20185 = sext i32 %20184 to i64
  %20186 = getelementptr inbounds double, ptr %20180, i64 %20185
  %20187 = load double, ptr %20186, align 8, !tbaa !11
  %20188 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %20187, double %20179)
  %20189 = load ptr, ptr %7, align 8, !tbaa !9
  %20190 = load i32, ptr %12, align 4, !tbaa !5
  %20191 = load i32, ptr %8, align 4, !tbaa !5
  %20192 = mul nsw i32 25, %20191
  %20193 = add nsw i32 %20190, %20192
  %20194 = sext i32 %20193 to i64
  %20195 = getelementptr inbounds double, ptr %20189, i64 %20194
  %20196 = load double, ptr %20195, align 8, !tbaa !11
  %20197 = call double @llvm.fmuladd.f64(double 0x3CB8000000000001, double %20196, double %20188)
  %20198 = load ptr, ptr %7, align 8, !tbaa !9
  %20199 = load i32, ptr %12, align 4, !tbaa !5
  %20200 = load i32, ptr %8, align 4, !tbaa !5
  %20201 = mul nsw i32 26, %20200
  %20202 = add nsw i32 %20199, %20201
  %20203 = sext i32 %20202 to i64
  %20204 = getelementptr inbounds double, ptr %20198, i64 %20203
  %20205 = load double, ptr %20204, align 8, !tbaa !11
  %20206 = call double @llvm.fmuladd.f64(double 0x3CB8000000000001, double %20205, double %20197)
  %20207 = load ptr, ptr %7, align 8, !tbaa !9
  %20208 = load i32, ptr %12, align 4, !tbaa !5
  %20209 = load i32, ptr %8, align 4, !tbaa !5
  %20210 = mul nsw i32 29, %20209
  %20211 = add nsw i32 %20208, %20210
  %20212 = sext i32 %20211 to i64
  %20213 = getelementptr inbounds double, ptr %20207, i64 %20212
  %20214 = load double, ptr %20213, align 8, !tbaa !11
  %20215 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %20214, double %20206)
  %20216 = load ptr, ptr %7, align 8, !tbaa !9
  %20217 = load i32, ptr %12, align 4, !tbaa !5
  %20218 = load i32, ptr %8, align 4, !tbaa !5
  %20219 = mul nsw i32 30, %20218
  %20220 = add nsw i32 %20217, %20219
  %20221 = sext i32 %20220 to i64
  %20222 = getelementptr inbounds double, ptr %20216, i64 %20221
  %20223 = load double, ptr %20222, align 8, !tbaa !11
  %20224 = call double @llvm.fmuladd.f64(double 0x3CC0000000000000, double %20223, double %20215)
  %20225 = load ptr, ptr %7, align 8, !tbaa !9
  %20226 = load i32, ptr %12, align 4, !tbaa !5
  %20227 = load i32, ptr %8, align 4, !tbaa !5
  %20228 = mul nsw i32 32, %20227
  %20229 = add nsw i32 %20226, %20228
  %20230 = sext i32 %20229 to i64
  %20231 = getelementptr inbounds double, ptr %20225, i64 %20230
  %20232 = load double, ptr %20231, align 8, !tbaa !11
  %20233 = call double @llvm.fmuladd.f64(double 0x3FD6F2A1D7A492BF, double %20232, double %20224)
  %20234 = load ptr, ptr %7, align 8, !tbaa !9
  %20235 = load i32, ptr %12, align 4, !tbaa !5
  %20236 = load i32, ptr %8, align 4, !tbaa !5
  %20237 = mul nsw i32 33, %20236
  %20238 = add nsw i32 %20235, %20237
  %20239 = sext i32 %20238 to i64
  %20240 = getelementptr inbounds double, ptr %20234, i64 %20239
  %20241 = load double, ptr %20240, align 8, !tbaa !11
  %20242 = call double @llvm.fmuladd.f64(double 0x3FEAEBF44A8E7A8E, double %20241, double %20233)
  %20243 = load ptr, ptr %7, align 8, !tbaa !9
  %20244 = load i32, ptr %12, align 4, !tbaa !5
  %20245 = load i32, ptr %8, align 4, !tbaa !5
  %20246 = mul nsw i32 34, %20245
  %20247 = add nsw i32 %20244, %20246
  %20248 = sext i32 %20247 to i64
  %20249 = getelementptr inbounds double, ptr %20243, i64 %20248
  %20250 = load double, ptr %20249, align 8, !tbaa !11
  %20251 = call double @llvm.fmuladd.f64(double 0x3FEAEBF44A8E7A92, double %20250, double %20242)
  %20252 = load ptr, ptr %7, align 8, !tbaa !9
  %20253 = load i32, ptr %12, align 4, !tbaa !5
  %20254 = load i32, ptr %8, align 4, !tbaa !5
  %20255 = mul nsw i32 35, %20254
  %20256 = add nsw i32 %20253, %20255
  %20257 = sext i32 %20256 to i64
  %20258 = getelementptr inbounds double, ptr %20252, i64 %20257
  %20259 = load double, ptr %20258, align 8, !tbaa !11
  %20260 = call double @llvm.fmuladd.f64(double 0x3FD6F2A1D7A492CF, double %20259, double %20251)
  %20261 = load ptr, ptr %7, align 8, !tbaa !9
  %20262 = load i32, ptr %12, align 4, !tbaa !5
  %20263 = load i32, ptr %8, align 4, !tbaa !5
  %20264 = mul nsw i32 52, %20263
  %20265 = add nsw i32 %20262, %20264
  %20266 = sext i32 %20265 to i64
  %20267 = getelementptr inbounds double, ptr %20261, i64 %20266
  %20268 = load double, ptr %20267, align 8, !tbaa !11
  %20269 = call double @llvm.fmuladd.f64(double 0x3C91AD7BC01366B7, double %20268, double %20260)
  %20270 = load ptr, ptr %7, align 8, !tbaa !9
  %20271 = load i32, ptr %12, align 4, !tbaa !5
  %20272 = load i32, ptr %8, align 4, !tbaa !5
  %20273 = mul nsw i32 53, %20272
  %20274 = add nsw i32 %20271, %20273
  %20275 = sext i32 %20274 to i64
  %20276 = getelementptr inbounds double, ptr %20270, i64 %20275
  %20277 = load double, ptr %20276, align 8, !tbaa !11
  %20278 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %20277, double %20269)
  %20279 = load ptr, ptr %7, align 8, !tbaa !9
  %20280 = load i32, ptr %12, align 4, !tbaa !5
  %20281 = load i32, ptr %8, align 4, !tbaa !5
  %20282 = mul nsw i32 54, %20281
  %20283 = add nsw i32 %20280, %20282
  %20284 = sext i32 %20283 to i64
  %20285 = getelementptr inbounds double, ptr %20279, i64 %20284
  %20286 = load double, ptr %20285, align 8, !tbaa !11
  %20287 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %20286, double %20278)
  %20288 = load ptr, ptr %7, align 8, !tbaa !9
  %20289 = load i32, ptr %12, align 4, !tbaa !5
  %20290 = load i32, ptr %8, align 4, !tbaa !5
  %20291 = mul nsw i32 55, %20290
  %20292 = add nsw i32 %20289, %20291
  %20293 = sext i32 %20292 to i64
  %20294 = getelementptr inbounds double, ptr %20288, i64 %20293
  %20295 = load double, ptr %20294, align 8, !tbaa !11
  %20296 = call double @llvm.fmuladd.f64(double 0x3CC0F876CCDF6CD9, double %20295, double %20287)
  %20297 = load ptr, ptr %7, align 8, !tbaa !9
  %20298 = load i32, ptr %12, align 4, !tbaa !5
  %20299 = load i32, ptr %8, align 4, !tbaa !5
  %20300 = mul nsw i32 57, %20299
  %20301 = add nsw i32 %20298, %20300
  %20302 = sext i32 %20301 to i64
  %20303 = getelementptr inbounds double, ptr %20297, i64 %20302
  %20304 = load double, ptr %20303, align 8, !tbaa !11
  %20305 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %20304, double %20296)
  %20306 = load ptr, ptr %7, align 8, !tbaa !9
  %20307 = load i32, ptr %12, align 4, !tbaa !5
  %20308 = load i32, ptr %8, align 4, !tbaa !5
  %20309 = mul nsw i32 58, %20308
  %20310 = add nsw i32 %20307, %20309
  %20311 = sext i32 %20310 to i64
  %20312 = getelementptr inbounds double, ptr %20306, i64 %20311
  %20313 = load double, ptr %20312, align 8, !tbaa !11
  %20314 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %20313, double %20305)
  %20315 = load ptr, ptr %7, align 8, !tbaa !9
  %20316 = load i32, ptr %12, align 4, !tbaa !5
  %20317 = load i32, ptr %8, align 4, !tbaa !5
  %20318 = mul nsw i32 59, %20317
  %20319 = add nsw i32 %20316, %20318
  %20320 = sext i32 %20319 to i64
  %20321 = getelementptr inbounds double, ptr %20315, i64 %20320
  %20322 = load double, ptr %20321, align 8, !tbaa !11
  %20323 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %20322, double %20314)
  %20324 = load ptr, ptr %7, align 8, !tbaa !9
  %20325 = load i32, ptr %12, align 4, !tbaa !5
  %20326 = load i32, ptr %8, align 4, !tbaa !5
  %20327 = mul nsw i32 60, %20326
  %20328 = add nsw i32 %20325, %20327
  %20329 = sext i32 %20328 to i64
  %20330 = getelementptr inbounds double, ptr %20324, i64 %20329
  %20331 = load double, ptr %20330, align 8, !tbaa !11
  %20332 = call double @llvm.fmuladd.f64(double 0x3C66A09E667F3BCC, double %20331, double %20323)
  %20333 = load ptr, ptr %7, align 8, !tbaa !9
  %20334 = load i32, ptr %12, align 4, !tbaa !5
  %20335 = load i32, ptr %8, align 4, !tbaa !5
  %20336 = mul nsw i32 61, %20335
  %20337 = add nsw i32 %20334, %20336
  %20338 = sext i32 %20337 to i64
  %20339 = getelementptr inbounds double, ptr %20333, i64 %20338
  %20340 = load double, ptr %20339, align 8, !tbaa !11
  %20341 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %20340, double %20332)
  %20342 = load ptr, ptr %7, align 8, !tbaa !9
  %20343 = load i32, ptr %12, align 4, !tbaa !5
  %20344 = load i32, ptr %8, align 4, !tbaa !5
  %20345 = mul nsw i32 62, %20344
  %20346 = add nsw i32 %20343, %20345
  %20347 = sext i32 %20346 to i64
  %20348 = getelementptr inbounds double, ptr %20342, i64 %20347
  %20349 = load double, ptr %20348, align 8, !tbaa !11
  %20350 = call double @llvm.fmuladd.f64(double 0x3CA0F876CCDF6CD8, double %20349, double %20341)
  %20351 = load ptr, ptr %7, align 8, !tbaa !9
  %20352 = load i32, ptr %12, align 4, !tbaa !5
  %20353 = load i32, ptr %8, align 4, !tbaa !5
  %20354 = mul nsw i32 63, %20353
  %20355 = add nsw i32 %20352, %20354
  %20356 = sext i32 %20355 to i64
  %20357 = getelementptr inbounds double, ptr %20351, i64 %20356
  %20358 = load double, ptr %20357, align 8, !tbaa !11
  %20359 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %20358, double %20350)
  %20360 = load ptr, ptr %7, align 8, !tbaa !9
  %20361 = load i32, ptr %12, align 4, !tbaa !5
  %20362 = load i32, ptr %8, align 4, !tbaa !5
  %20363 = mul nsw i32 64, %20362
  %20364 = add nsw i32 %20361, %20363
  %20365 = sext i32 %20364 to i64
  %20366 = getelementptr inbounds double, ptr %20360, i64 %20365
  %20367 = load double, ptr %20366, align 8, !tbaa !11
  %20368 = call double @llvm.fmuladd.f64(double 0x3FA462D8D66D7FC4, double %20367, double %20359)
  %20369 = load ptr, ptr %7, align 8, !tbaa !9
  %20370 = load i32, ptr %12, align 4, !tbaa !5
  %20371 = load i32, ptr %8, align 4, !tbaa !5
  %20372 = mul nsw i32 65, %20371
  %20373 = add nsw i32 %20370, %20372
  %20374 = sext i32 %20373 to i64
  %20375 = getelementptr inbounds double, ptr %20369, i64 %20374
  %20376 = load double, ptr %20375, align 8, !tbaa !11
  %20377 = call double @llvm.fmuladd.f64(double 0xBFC5EA083165C4F6, double %20376, double %20368)
  %20378 = load ptr, ptr %7, align 8, !tbaa !9
  %20379 = load i32, ptr %12, align 4, !tbaa !5
  %20380 = load i32, ptr %8, align 4, !tbaa !5
  %20381 = mul nsw i32 66, %20380
  %20382 = add nsw i32 %20379, %20381
  %20383 = sext i32 %20382 to i64
  %20384 = getelementptr inbounds double, ptr %20378, i64 %20383
  %20385 = load double, ptr %20384, align 8, !tbaa !11
  %20386 = call double @llvm.fmuladd.f64(double 0x3FD4A299D1E9700E, double %20385, double %20377)
  %20387 = load ptr, ptr %7, align 8, !tbaa !9
  %20388 = load i32, ptr %12, align 4, !tbaa !5
  %20389 = load i32, ptr %8, align 4, !tbaa !5
  %20390 = mul nsw i32 67, %20389
  %20391 = add nsw i32 %20388, %20390
  %20392 = sext i32 %20391 to i64
  %20393 = getelementptr inbounds double, ptr %20387, i64 %20392
  %20394 = load double, ptr %20393, align 8, !tbaa !11
  %20395 = call double @llvm.fmuladd.f64(double 0x400E488CB8C1EA74, double %20394, double %20386)
  store double %20395, ptr %11, align 8, !tbaa !11
  %20396 = load double, ptr %11, align 8, !tbaa !11
  %20397 = load ptr, ptr %9, align 8, !tbaa !9
  %20398 = load i32, ptr %12, align 4, !tbaa !5
  %20399 = load i32, ptr %10, align 4, !tbaa !5
  %20400 = mul nsw i32 71, %20399
  %20401 = add nsw i32 %20398, %20400
  %20402 = sext i32 %20401 to i64
  %20403 = getelementptr inbounds double, ptr %20397, i64 %20402
  store double %20396, ptr %20403, align 8, !tbaa !11
  %20404 = load ptr, ptr %7, align 8, !tbaa !9
  %20405 = load i32, ptr %12, align 4, !tbaa !5
  %20406 = load i32, ptr %8, align 4, !tbaa !5
  %20407 = mul nsw i32 20, %20406
  %20408 = add nsw i32 %20405, %20407
  %20409 = sext i32 %20408 to i64
  %20410 = getelementptr inbounds double, ptr %20404, i64 %20409
  %20411 = load double, ptr %20410, align 8, !tbaa !11
  %20412 = load ptr, ptr %7, align 8, !tbaa !9
  %20413 = load i32, ptr %12, align 4, !tbaa !5
  %20414 = load i32, ptr %8, align 4, !tbaa !5
  %20415 = mul nsw i32 21, %20414
  %20416 = add nsw i32 %20413, %20415
  %20417 = sext i32 %20416 to i64
  %20418 = getelementptr inbounds double, ptr %20412, i64 %20417
  %20419 = load double, ptr %20418, align 8, !tbaa !11
  %20420 = fmul double 0x3CA0000000000002, %20419
  %20421 = call double @llvm.fmuladd.f64(double 0x3CA1000000000001, double %20411, double %20420)
  %20422 = load ptr, ptr %7, align 8, !tbaa !9
  %20423 = load i32, ptr %12, align 4, !tbaa !5
  %20424 = load i32, ptr %8, align 4, !tbaa !5
  %20425 = mul nsw i32 22, %20424
  %20426 = add nsw i32 %20423, %20425
  %20427 = sext i32 %20426 to i64
  %20428 = getelementptr inbounds double, ptr %20422, i64 %20427
  %20429 = load double, ptr %20428, align 8, !tbaa !11
  %20430 = call double @llvm.fmuladd.f64(double 0xBCA9FFFFFFFFFFFE, double %20429, double %20421)
  %20431 = load ptr, ptr %7, align 8, !tbaa !9
  %20432 = load i32, ptr %12, align 4, !tbaa !5
  %20433 = load i32, ptr %8, align 4, !tbaa !5
  %20434 = mul nsw i32 23, %20433
  %20435 = add nsw i32 %20432, %20434
  %20436 = sext i32 %20435 to i64
  %20437 = getelementptr inbounds double, ptr %20431, i64 %20436
  %20438 = load double, ptr %20437, align 8, !tbaa !11
  %20439 = call double @llvm.fmuladd.f64(double 0xBCD2000000000000, double %20438, double %20430)
  %20440 = load ptr, ptr %7, align 8, !tbaa !9
  %20441 = load i32, ptr %12, align 4, !tbaa !5
  %20442 = load i32, ptr %8, align 4, !tbaa !5
  %20443 = mul nsw i32 24, %20442
  %20444 = add nsw i32 %20441, %20443
  %20445 = sext i32 %20444 to i64
  %20446 = getelementptr inbounds double, ptr %20440, i64 %20445
  %20447 = load double, ptr %20446, align 8, !tbaa !11
  %20448 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %20447, double %20439)
  %20449 = load ptr, ptr %7, align 8, !tbaa !9
  %20450 = load i32, ptr %12, align 4, !tbaa !5
  %20451 = load i32, ptr %8, align 4, !tbaa !5
  %20452 = mul nsw i32 25, %20451
  %20453 = add nsw i32 %20450, %20452
  %20454 = sext i32 %20453 to i64
  %20455 = getelementptr inbounds double, ptr %20449, i64 %20454
  %20456 = load double, ptr %20455, align 8, !tbaa !11
  %20457 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %20456, double %20448)
  %20458 = load ptr, ptr %7, align 8, !tbaa !9
  %20459 = load i32, ptr %12, align 4, !tbaa !5
  %20460 = load i32, ptr %8, align 4, !tbaa !5
  %20461 = mul nsw i32 26, %20460
  %20462 = add nsw i32 %20459, %20461
  %20463 = sext i32 %20462 to i64
  %20464 = getelementptr inbounds double, ptr %20458, i64 %20463
  %20465 = load double, ptr %20464, align 8, !tbaa !11
  %20466 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %20465, double %20457)
  %20467 = load ptr, ptr %7, align 8, !tbaa !9
  %20468 = load i32, ptr %12, align 4, !tbaa !5
  %20469 = load i32, ptr %8, align 4, !tbaa !5
  %20470 = mul nsw i32 27, %20469
  %20471 = add nsw i32 %20468, %20470
  %20472 = sext i32 %20471 to i64
  %20473 = getelementptr inbounds double, ptr %20467, i64 %20472
  %20474 = load double, ptr %20473, align 8, !tbaa !11
  %20475 = call double @llvm.fmuladd.f64(double 0xBCB5000000000000, double %20474, double %20466)
  %20476 = load ptr, ptr %7, align 8, !tbaa !9
  %20477 = load i32, ptr %12, align 4, !tbaa !5
  %20478 = load i32, ptr %8, align 4, !tbaa !5
  %20479 = mul nsw i32 28, %20478
  %20480 = add nsw i32 %20477, %20479
  %20481 = sext i32 %20480 to i64
  %20482 = getelementptr inbounds double, ptr %20476, i64 %20481
  %20483 = load double, ptr %20482, align 8, !tbaa !11
  %20484 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %20483, double %20475)
  %20485 = load ptr, ptr %7, align 8, !tbaa !9
  %20486 = load i32, ptr %12, align 4, !tbaa !5
  %20487 = load i32, ptr %8, align 4, !tbaa !5
  %20488 = mul nsw i32 29, %20487
  %20489 = add nsw i32 %20486, %20488
  %20490 = sext i32 %20489 to i64
  %20491 = getelementptr inbounds double, ptr %20485, i64 %20490
  %20492 = load double, ptr %20491, align 8, !tbaa !11
  %20493 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %20492, double %20484)
  %20494 = load ptr, ptr %7, align 8, !tbaa !9
  %20495 = load i32, ptr %12, align 4, !tbaa !5
  %20496 = load i32, ptr %8, align 4, !tbaa !5
  %20497 = mul nsw i32 30, %20496
  %20498 = add nsw i32 %20495, %20497
  %20499 = sext i32 %20498 to i64
  %20500 = getelementptr inbounds double, ptr %20494, i64 %20499
  %20501 = load double, ptr %20500, align 8, !tbaa !11
  %20502 = call double @llvm.fmuladd.f64(double 0xBCA9FFFFFFFFFFFE, double %20501, double %20493)
  %20503 = load ptr, ptr %7, align 8, !tbaa !9
  %20504 = load i32, ptr %12, align 4, !tbaa !5
  %20505 = load i32, ptr %8, align 4, !tbaa !5
  %20506 = mul nsw i32 31, %20505
  %20507 = add nsw i32 %20504, %20506
  %20508 = sext i32 %20507 to i64
  %20509 = getelementptr inbounds double, ptr %20503, i64 %20508
  %20510 = load double, ptr %20509, align 8, !tbaa !11
  %20511 = call double @llvm.fmuladd.f64(double 0xBCC5800000000000, double %20510, double %20502)
  %20512 = load ptr, ptr %7, align 8, !tbaa !9
  %20513 = load i32, ptr %12, align 4, !tbaa !5
  %20514 = load i32, ptr %8, align 4, !tbaa !5
  %20515 = mul nsw i32 32, %20514
  %20516 = add nsw i32 %20513, %20515
  %20517 = sext i32 %20516 to i64
  %20518 = getelementptr inbounds double, ptr %20512, i64 %20517
  %20519 = load double, ptr %20518, align 8, !tbaa !11
  %20520 = call double @llvm.fmuladd.f64(double 0xBFACD49071EC6028, double %20519, double %20511)
  %20521 = load ptr, ptr %7, align 8, !tbaa !9
  %20522 = load i32, ptr %12, align 4, !tbaa !5
  %20523 = load i32, ptr %8, align 4, !tbaa !5
  %20524 = mul nsw i32 33, %20523
  %20525 = add nsw i32 %20522, %20524
  %20526 = sext i32 %20525 to i64
  %20527 = getelementptr inbounds double, ptr %20521, i64 %20526
  %20528 = load double, ptr %20527, align 8, !tbaa !11
  %20529 = call double @llvm.fmuladd.f64(double 0x3FCEFDC8894D0802, double %20528, double %20520)
  %20530 = load ptr, ptr %7, align 8, !tbaa !9
  %20531 = load i32, ptr %12, align 4, !tbaa !5
  %20532 = load i32, ptr %8, align 4, !tbaa !5
  %20533 = mul nsw i32 34, %20532
  %20534 = add nsw i32 %20531, %20533
  %20535 = sext i32 %20534 to i64
  %20536 = getelementptr inbounds double, ptr %20530, i64 %20535
  %20537 = load double, ptr %20536, align 8, !tbaa !11
  %20538 = call double @llvm.fmuladd.f64(double 0xBFDD2EB9CCB3BE35, double %20537, double %20529)
  %20539 = load ptr, ptr %7, align 8, !tbaa !9
  %20540 = load i32, ptr %12, align 4, !tbaa !5
  %20541 = load i32, ptr %8, align 4, !tbaa !5
  %20542 = mul nsw i32 35, %20541
  %20543 = add nsw i32 %20540, %20542
  %20544 = sext i32 %20543 to i64
  %20545 = getelementptr inbounds double, ptr %20539, i64 %20544
  %20546 = load double, ptr %20545, align 8, !tbaa !11
  %20547 = call double @llvm.fmuladd.f64(double 0xC01569E165D7940B, double %20546, double %20538)
  %20548 = load ptr, ptr %7, align 8, !tbaa !9
  %20549 = load i32, ptr %12, align 4, !tbaa !5
  %20550 = load i32, ptr %8, align 4, !tbaa !5
  %20551 = mul nsw i32 52, %20550
  %20552 = add nsw i32 %20549, %20551
  %20553 = sext i32 %20552 to i64
  %20554 = getelementptr inbounds double, ptr %20548, i64 %20553
  %20555 = load double, ptr %20554, align 8, !tbaa !11
  %20556 = call double @llvm.fmuladd.f64(double 0x3CC689FDC818BC8F, double %20555, double %20547)
  %20557 = load ptr, ptr %7, align 8, !tbaa !9
  %20558 = load i32, ptr %12, align 4, !tbaa !5
  %20559 = load i32, ptr %8, align 4, !tbaa !5
  %20560 = mul nsw i32 53, %20559
  %20561 = add nsw i32 %20558, %20560
  %20562 = sext i32 %20561 to i64
  %20563 = getelementptr inbounds double, ptr %20557, i64 %20562
  %20564 = load double, ptr %20563, align 8, !tbaa !11
  %20565 = call double @llvm.fmuladd.f64(double 0x3CB16999E4DFE903, double %20564, double %20556)
  %20566 = load ptr, ptr %7, align 8, !tbaa !9
  %20567 = load i32, ptr %12, align 4, !tbaa !5
  %20568 = load i32, ptr %8, align 4, !tbaa !5
  %20569 = mul nsw i32 54, %20568
  %20570 = add nsw i32 %20567, %20569
  %20571 = sext i32 %20570 to i64
  %20572 = getelementptr inbounds double, ptr %20566, i64 %20571
  %20573 = load double, ptr %20572, align 8, !tbaa !11
  %20574 = call double @llvm.fmuladd.f64(double 0xBC880AA84CE72F89, double %20573, double %20565)
  %20575 = load ptr, ptr %7, align 8, !tbaa !9
  %20576 = load i32, ptr %12, align 4, !tbaa !5
  %20577 = load i32, ptr %8, align 4, !tbaa !5
  %20578 = mul nsw i32 55, %20577
  %20579 = add nsw i32 %20576, %20578
  %20580 = sext i32 %20579 to i64
  %20581 = getelementptr inbounds double, ptr %20575, i64 %20580
  %20582 = load double, ptr %20581, align 8, !tbaa !11
  %20583 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %20582, double %20574)
  %20584 = load ptr, ptr %7, align 8, !tbaa !9
  %20585 = load i32, ptr %12, align 4, !tbaa !5
  %20586 = load i32, ptr %8, align 4, !tbaa !5
  %20587 = mul nsw i32 56, %20586
  %20588 = add nsw i32 %20585, %20587
  %20589 = sext i32 %20588 to i64
  %20590 = getelementptr inbounds double, ptr %20584, i64 %20589
  %20591 = load double, ptr %20590, align 8, !tbaa !11
  %20592 = call double @llvm.fmuladd.f64(double 0xBCAF4A1B09BBF0AE, double %20591, double %20583)
  %20593 = load ptr, ptr %7, align 8, !tbaa !9
  %20594 = load i32, ptr %12, align 4, !tbaa !5
  %20595 = load i32, ptr %8, align 4, !tbaa !5
  %20596 = mul nsw i32 57, %20595
  %20597 = add nsw i32 %20594, %20596
  %20598 = sext i32 %20597 to i64
  %20599 = getelementptr inbounds double, ptr %20593, i64 %20598
  %20600 = load double, ptr %20599, align 8, !tbaa !11
  %20601 = call double @llvm.fmuladd.f64(double 0x3CADB2CFE686FE7D, double %20600, double %20592)
  %20602 = load ptr, ptr %7, align 8, !tbaa !9
  %20603 = load i32, ptr %12, align 4, !tbaa !5
  %20604 = load i32, ptr %8, align 4, !tbaa !5
  %20605 = mul nsw i32 58, %20604
  %20606 = add nsw i32 %20603, %20605
  %20607 = sext i32 %20606 to i64
  %20608 = getelementptr inbounds double, ptr %20602, i64 %20607
  %20609 = load double, ptr %20608, align 8, !tbaa !11
  %20610 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %20609, double %20601)
  %20611 = load ptr, ptr %7, align 8, !tbaa !9
  %20612 = load i32, ptr %12, align 4, !tbaa !5
  %20613 = load i32, ptr %8, align 4, !tbaa !5
  %20614 = mul nsw i32 59, %20613
  %20615 = add nsw i32 %20612, %20614
  %20616 = sext i32 %20615 to i64
  %20617 = getelementptr inbounds double, ptr %20611, i64 %20616
  %20618 = load double, ptr %20617, align 8, !tbaa !11
  %20619 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %20618, double %20610)
  %20620 = load ptr, ptr %7, align 8, !tbaa !9
  %20621 = load i32, ptr %12, align 4, !tbaa !5
  %20622 = load i32, ptr %8, align 4, !tbaa !5
  %20623 = mul nsw i32 60, %20622
  %20624 = add nsw i32 %20621, %20623
  %20625 = sext i32 %20624 to i64
  %20626 = getelementptr inbounds double, ptr %20620, i64 %20625
  %20627 = load double, ptr %20626, align 8, !tbaa !11
  %20628 = call double @llvm.fmuladd.f64(double 0x3C9152F9467969C8, double %20627, double %20619)
  %20629 = load ptr, ptr %7, align 8, !tbaa !9
  %20630 = load i32, ptr %12, align 4, !tbaa !5
  %20631 = load i32, ptr %8, align 4, !tbaa !5
  %20632 = mul nsw i32 61, %20631
  %20633 = add nsw i32 %20630, %20632
  %20634 = sext i32 %20633 to i64
  %20635 = getelementptr inbounds double, ptr %20629, i64 %20634
  %20636 = load double, ptr %20635, align 8, !tbaa !11
  %20637 = call double @llvm.fmuladd.f64(double 0xBCADB2CFE686FE7D, double %20636, double %20628)
  %20638 = load ptr, ptr %7, align 8, !tbaa !9
  %20639 = load i32, ptr %12, align 4, !tbaa !5
  %20640 = load i32, ptr %8, align 4, !tbaa !5
  %20641 = mul nsw i32 62, %20640
  %20642 = add nsw i32 %20639, %20641
  %20643 = sext i32 %20642 to i64
  %20644 = getelementptr inbounds double, ptr %20638, i64 %20643
  %20645 = load double, ptr %20644, align 8, !tbaa !11
  %20646 = call double @llvm.fmuladd.f64(double 0xBCA26280B3476095, double %20645, double %20637)
  %20647 = load ptr, ptr %7, align 8, !tbaa !9
  %20648 = load i32, ptr %12, align 4, !tbaa !5
  %20649 = load i32, ptr %8, align 4, !tbaa !5
  %20650 = mul nsw i32 63, %20649
  %20651 = add nsw i32 %20648, %20650
  %20652 = sext i32 %20651 to i64
  %20653 = getelementptr inbounds double, ptr %20647, i64 %20652
  %20654 = load double, ptr %20653, align 8, !tbaa !11
  %20655 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %20654, double %20646)
  %20656 = load ptr, ptr %7, align 8, !tbaa !9
  %20657 = load i32, ptr %12, align 4, !tbaa !5
  %20658 = load i32, ptr %8, align 4, !tbaa !5
  %20659 = mul nsw i32 64, %20658
  %20660 = add nsw i32 %20657, %20659
  %20661 = sext i32 %20660 to i64
  %20662 = getelementptr inbounds double, ptr %20656, i64 %20661
  %20663 = load double, ptr %20662, align 8, !tbaa !11
  %20664 = call double @llvm.fmuladd.f64(double 0x400E488CB8C1EA66, double %20663, double %20655)
  %20665 = load ptr, ptr %7, align 8, !tbaa !9
  %20666 = load i32, ptr %12, align 4, !tbaa !5
  %20667 = load i32, ptr %8, align 4, !tbaa !5
  %20668 = mul nsw i32 65, %20667
  %20669 = add nsw i32 %20666, %20668
  %20670 = sext i32 %20669 to i64
  %20671 = getelementptr inbounds double, ptr %20665, i64 %20670
  %20672 = load double, ptr %20671, align 8, !tbaa !11
  %20673 = call double @llvm.fmuladd.f64(double 0x3FD4A299D1E9700C, double %20672, double %20664)
  %20674 = load ptr, ptr %7, align 8, !tbaa !9
  %20675 = load i32, ptr %12, align 4, !tbaa !5
  %20676 = load i32, ptr %8, align 4, !tbaa !5
  %20677 = mul nsw i32 66, %20676
  %20678 = add nsw i32 %20675, %20677
  %20679 = sext i32 %20678 to i64
  %20680 = getelementptr inbounds double, ptr %20674, i64 %20679
  %20681 = load double, ptr %20680, align 8, !tbaa !11
  %20682 = call double @llvm.fmuladd.f64(double 0xBFC5EA083165C4F9, double %20681, double %20673)
  %20683 = load ptr, ptr %7, align 8, !tbaa !9
  %20684 = load i32, ptr %12, align 4, !tbaa !5
  %20685 = load i32, ptr %8, align 4, !tbaa !5
  %20686 = mul nsw i32 67, %20685
  %20687 = add nsw i32 %20684, %20686
  %20688 = sext i32 %20687 to i64
  %20689 = getelementptr inbounds double, ptr %20683, i64 %20688
  %20690 = load double, ptr %20689, align 8, !tbaa !11
  %20691 = call double @llvm.fmuladd.f64(double 0x3FA462D8D66D7F94, double %20690, double %20682)
  store double %20691, ptr %11, align 8, !tbaa !11
  %20692 = load double, ptr %11, align 8, !tbaa !11
  %20693 = load ptr, ptr %9, align 8, !tbaa !9
  %20694 = load i32, ptr %12, align 4, !tbaa !5
  %20695 = load i32, ptr %10, align 4, !tbaa !5
  %20696 = mul nsw i32 72, %20695
  %20697 = add nsw i32 %20694, %20696
  %20698 = sext i32 %20697 to i64
  %20699 = getelementptr inbounds double, ptr %20693, i64 %20698
  store double %20692, ptr %20699, align 8, !tbaa !11
  %20700 = load ptr, ptr %7, align 8, !tbaa !9
  %20701 = load i32, ptr %12, align 4, !tbaa !5
  %20702 = load i32, ptr %8, align 4, !tbaa !5
  %20703 = mul nsw i32 20, %20702
  %20704 = add nsw i32 %20701, %20703
  %20705 = sext i32 %20704 to i64
  %20706 = getelementptr inbounds double, ptr %20700, i64 %20705
  %20707 = load double, ptr %20706, align 8, !tbaa !11
  %20708 = load ptr, ptr %7, align 8, !tbaa !9
  %20709 = load i32, ptr %12, align 4, !tbaa !5
  %20710 = load i32, ptr %8, align 4, !tbaa !5
  %20711 = mul nsw i32 21, %20710
  %20712 = add nsw i32 %20709, %20711
  %20713 = sext i32 %20712 to i64
  %20714 = getelementptr inbounds double, ptr %20708, i64 %20713
  %20715 = load double, ptr %20714, align 8, !tbaa !11
  %20716 = fmul double 0xBCBAFFFFFFFFFFFF, %20715
  %20717 = call double @llvm.fmuladd.f64(double 0xBCBF000000000001, double %20707, double %20716)
  %20718 = load ptr, ptr %7, align 8, !tbaa !9
  %20719 = load i32, ptr %12, align 4, !tbaa !5
  %20720 = load i32, ptr %8, align 4, !tbaa !5
  %20721 = mul nsw i32 22, %20720
  %20722 = add nsw i32 %20719, %20721
  %20723 = sext i32 %20722 to i64
  %20724 = getelementptr inbounds double, ptr %20718, i64 %20723
  %20725 = load double, ptr %20724, align 8, !tbaa !11
  %20726 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %20725, double %20717)
  %20727 = load ptr, ptr %7, align 8, !tbaa !9
  %20728 = load i32, ptr %12, align 4, !tbaa !5
  %20729 = load i32, ptr %8, align 4, !tbaa !5
  %20730 = mul nsw i32 23, %20729
  %20731 = add nsw i32 %20728, %20730
  %20732 = sext i32 %20731 to i64
  %20733 = getelementptr inbounds double, ptr %20727, i64 %20732
  %20734 = load double, ptr %20733, align 8, !tbaa !11
  %20735 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %20734, double %20726)
  %20736 = load ptr, ptr %7, align 8, !tbaa !9
  %20737 = load i32, ptr %12, align 4, !tbaa !5
  %20738 = load i32, ptr %8, align 4, !tbaa !5
  %20739 = mul nsw i32 24, %20738
  %20740 = add nsw i32 %20737, %20739
  %20741 = sext i32 %20740 to i64
  %20742 = getelementptr inbounds double, ptr %20736, i64 %20741
  %20743 = load double, ptr %20742, align 8, !tbaa !11
  %20744 = call double @llvm.fmuladd.f64(double 0xBCC2800000000000, double %20743, double %20735)
  %20745 = load ptr, ptr %7, align 8, !tbaa !9
  %20746 = load i32, ptr %12, align 4, !tbaa !5
  %20747 = load i32, ptr %8, align 4, !tbaa !5
  %20748 = mul nsw i32 25, %20747
  %20749 = add nsw i32 %20746, %20748
  %20750 = sext i32 %20749 to i64
  %20751 = getelementptr inbounds double, ptr %20745, i64 %20750
  %20752 = load double, ptr %20751, align 8, !tbaa !11
  %20753 = call double @llvm.fmuladd.f64(double 0x3CAE000000000002, double %20752, double %20744)
  %20754 = load ptr, ptr %7, align 8, !tbaa !9
  %20755 = load i32, ptr %12, align 4, !tbaa !5
  %20756 = load i32, ptr %8, align 4, !tbaa !5
  %20757 = mul nsw i32 26, %20756
  %20758 = add nsw i32 %20755, %20757
  %20759 = sext i32 %20758 to i64
  %20760 = getelementptr inbounds double, ptr %20754, i64 %20759
  %20761 = load double, ptr %20760, align 8, !tbaa !11
  %20762 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %20761, double %20753)
  %20763 = load ptr, ptr %7, align 8, !tbaa !9
  %20764 = load i32, ptr %12, align 4, !tbaa !5
  %20765 = load i32, ptr %8, align 4, !tbaa !5
  %20766 = mul nsw i32 27, %20765
  %20767 = add nsw i32 %20764, %20766
  %20768 = sext i32 %20767 to i64
  %20769 = getelementptr inbounds double, ptr %20763, i64 %20768
  %20770 = load double, ptr %20769, align 8, !tbaa !11
  %20771 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %20770, double %20762)
  %20772 = load ptr, ptr %7, align 8, !tbaa !9
  %20773 = load i32, ptr %12, align 4, !tbaa !5
  %20774 = load i32, ptr %8, align 4, !tbaa !5
  %20775 = mul nsw i32 28, %20774
  %20776 = add nsw i32 %20773, %20775
  %20777 = sext i32 %20776 to i64
  %20778 = getelementptr inbounds double, ptr %20772, i64 %20777
  %20779 = load double, ptr %20778, align 8, !tbaa !11
  %20780 = call double @llvm.fmuladd.f64(double 0xBCD6C00000000002, double %20779, double %20771)
  %20781 = load ptr, ptr %7, align 8, !tbaa !9
  %20782 = load i32, ptr %12, align 4, !tbaa !5
  %20783 = load i32, ptr %8, align 4, !tbaa !5
  %20784 = mul nsw i32 29, %20783
  %20785 = add nsw i32 %20782, %20784
  %20786 = sext i32 %20785 to i64
  %20787 = getelementptr inbounds double, ptr %20781, i64 %20786
  %20788 = load double, ptr %20787, align 8, !tbaa !11
  %20789 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %20788, double %20780)
  %20790 = load ptr, ptr %7, align 8, !tbaa !9
  %20791 = load i32, ptr %12, align 4, !tbaa !5
  %20792 = load i32, ptr %8, align 4, !tbaa !5
  %20793 = mul nsw i32 30, %20792
  %20794 = add nsw i32 %20791, %20793
  %20795 = sext i32 %20794 to i64
  %20796 = getelementptr inbounds double, ptr %20790, i64 %20795
  %20797 = load double, ptr %20796, align 8, !tbaa !11
  %20798 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %20797, double %20789)
  %20799 = load ptr, ptr %7, align 8, !tbaa !9
  %20800 = load i32, ptr %12, align 4, !tbaa !5
  %20801 = load i32, ptr %8, align 4, !tbaa !5
  %20802 = mul nsw i32 31, %20801
  %20803 = add nsw i32 %20800, %20802
  %20804 = sext i32 %20803 to i64
  %20805 = getelementptr inbounds double, ptr %20799, i64 %20804
  %20806 = load double, ptr %20805, align 8, !tbaa !11
  %20807 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %20806, double %20798)
  %20808 = load ptr, ptr %7, align 8, !tbaa !9
  %20809 = load i32, ptr %12, align 4, !tbaa !5
  %20810 = load i32, ptr %8, align 4, !tbaa !5
  %20811 = mul nsw i32 32, %20810
  %20812 = add nsw i32 %20809, %20811
  %20813 = sext i32 %20812 to i64
  %20814 = getelementptr inbounds double, ptr %20808, i64 %20813
  %20815 = load double, ptr %20814, align 8, !tbaa !11
  %20816 = call double @llvm.fmuladd.f64(double 0xC01569E165D79412, double %20815, double %20807)
  %20817 = load ptr, ptr %7, align 8, !tbaa !9
  %20818 = load i32, ptr %12, align 4, !tbaa !5
  %20819 = load i32, ptr %8, align 4, !tbaa !5
  %20820 = mul nsw i32 33, %20819
  %20821 = add nsw i32 %20818, %20820
  %20822 = sext i32 %20821 to i64
  %20823 = getelementptr inbounds double, ptr %20817, i64 %20822
  %20824 = load double, ptr %20823, align 8, !tbaa !11
  %20825 = call double @llvm.fmuladd.f64(double 0xBFDD2EB9CCB3BDB5, double %20824, double %20816)
  %20826 = load ptr, ptr %7, align 8, !tbaa !9
  %20827 = load i32, ptr %12, align 4, !tbaa !5
  %20828 = load i32, ptr %8, align 4, !tbaa !5
  %20829 = mul nsw i32 34, %20828
  %20830 = add nsw i32 %20827, %20829
  %20831 = sext i32 %20830 to i64
  %20832 = getelementptr inbounds double, ptr %20826, i64 %20831
  %20833 = load double, ptr %20832, align 8, !tbaa !11
  %20834 = call double @llvm.fmuladd.f64(double 0x3FCEFDC8894D07B6, double %20833, double %20825)
  %20835 = load ptr, ptr %7, align 8, !tbaa !9
  %20836 = load i32, ptr %12, align 4, !tbaa !5
  %20837 = load i32, ptr %8, align 4, !tbaa !5
  %20838 = mul nsw i32 35, %20837
  %20839 = add nsw i32 %20836, %20838
  %20840 = sext i32 %20839 to i64
  %20841 = getelementptr inbounds double, ptr %20835, i64 %20840
  %20842 = load double, ptr %20841, align 8, !tbaa !11
  %20843 = call double @llvm.fmuladd.f64(double 0xBFACD49071EC5FF2, double %20842, double %20834)
  %20844 = load ptr, ptr %7, align 8, !tbaa !9
  %20845 = load i32, ptr %12, align 4, !tbaa !5
  %20846 = load i32, ptr %8, align 4, !tbaa !5
  %20847 = mul nsw i32 52, %20846
  %20848 = add nsw i32 %20845, %20847
  %20849 = sext i32 %20848 to i64
  %20850 = getelementptr inbounds double, ptr %20844, i64 %20849
  %20851 = load double, ptr %20850, align 8, !tbaa !11
  %20852 = call double @llvm.fmuladd.f64(double 0xBC9F1CD9CCEEF236, double %20851, double %20843)
  %20853 = load ptr, ptr %7, align 8, !tbaa !9
  %20854 = load i32, ptr %12, align 4, !tbaa !5
  %20855 = load i32, ptr %8, align 4, !tbaa !5
  %20856 = mul nsw i32 53, %20855
  %20857 = add nsw i32 %20854, %20856
  %20858 = sext i32 %20857 to i64
  %20859 = getelementptr inbounds double, ptr %20853, i64 %20858
  %20860 = load double, ptr %20859, align 8, !tbaa !11
  %20861 = call double @llvm.fmuladd.f64(double 0xBCA016309CDE7482, double %20860, double %20852)
  %20862 = load ptr, ptr %7, align 8, !tbaa !9
  %20863 = load i32, ptr %12, align 4, !tbaa !5
  %20864 = load i32, ptr %8, align 4, !tbaa !5
  %20865 = mul nsw i32 54, %20864
  %20866 = add nsw i32 %20863, %20865
  %20867 = sext i32 %20866 to i64
  %20868 = getelementptr inbounds double, ptr %20862, i64 %20867
  %20869 = load double, ptr %20868, align 8, !tbaa !11
  %20870 = call double @llvm.fmuladd.f64(double 0x3C98BFAD401B2967, double %20869, double %20861)
  %20871 = load ptr, ptr %7, align 8, !tbaa !9
  %20872 = load i32, ptr %12, align 4, !tbaa !5
  %20873 = load i32, ptr %8, align 4, !tbaa !5
  %20874 = mul nsw i32 55, %20873
  %20875 = add nsw i32 %20872, %20874
  %20876 = sext i32 %20875 to i64
  %20877 = getelementptr inbounds double, ptr %20871, i64 %20876
  %20878 = load double, ptr %20877, align 8, !tbaa !11
  %20879 = call double @llvm.fmuladd.f64(double 0xBC93CC8A99AF5452, double %20878, double %20870)
  %20880 = load ptr, ptr %7, align 8, !tbaa !9
  %20881 = load i32, ptr %12, align 4, !tbaa !5
  %20882 = load i32, ptr %8, align 4, !tbaa !5
  %20883 = mul nsw i32 56, %20882
  %20884 = add nsw i32 %20881, %20883
  %20885 = sext i32 %20884 to i64
  %20886 = getelementptr inbounds double, ptr %20880, i64 %20885
  %20887 = load double, ptr %20886, align 8, !tbaa !11
  %20888 = call double @llvm.fmuladd.f64(double 0xBCB0B494F1ABEF27, double %20887, double %20879)
  %20889 = load ptr, ptr %7, align 8, !tbaa !9
  %20890 = load i32, ptr %12, align 4, !tbaa !5
  %20891 = load i32, ptr %8, align 4, !tbaa !5
  %20892 = mul nsw i32 57, %20891
  %20893 = add nsw i32 %20890, %20892
  %20894 = sext i32 %20893 to i64
  %20895 = getelementptr inbounds double, ptr %20889, i64 %20894
  %20896 = load double, ptr %20895, align 8, !tbaa !11
  %20897 = call double @llvm.fmuladd.f64(double 0xBCA536948017480F, double %20896, double %20888)
  %20898 = load ptr, ptr %7, align 8, !tbaa !9
  %20899 = load i32, ptr %12, align 4, !tbaa !5
  %20900 = load i32, ptr %8, align 4, !tbaa !5
  %20901 = mul nsw i32 58, %20900
  %20902 = add nsw i32 %20899, %20901
  %20903 = sext i32 %20902 to i64
  %20904 = getelementptr inbounds double, ptr %20898, i64 %20903
  %20905 = load double, ptr %20904, align 8, !tbaa !11
  %20906 = call double @llvm.fmuladd.f64(double 0x3CADB2CFE686FE7D, double %20905, double %20897)
  %20907 = load ptr, ptr %7, align 8, !tbaa !9
  %20908 = load i32, ptr %12, align 4, !tbaa !5
  %20909 = load i32, ptr %8, align 4, !tbaa !5
  %20910 = mul nsw i32 59, %20909
  %20911 = add nsw i32 %20908, %20910
  %20912 = sext i32 %20911 to i64
  %20913 = getelementptr inbounds double, ptr %20907, i64 %20912
  %20914 = load double, ptr %20913, align 8, !tbaa !11
  %20915 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %20914, double %20906)
  %20916 = load ptr, ptr %7, align 8, !tbaa !9
  %20917 = load i32, ptr %12, align 4, !tbaa !5
  %20918 = load i32, ptr %8, align 4, !tbaa !5
  %20919 = mul nsw i32 60, %20918
  %20920 = add nsw i32 %20917, %20919
  %20921 = sext i32 %20920 to i64
  %20922 = getelementptr inbounds double, ptr %20916, i64 %20921
  %20923 = load double, ptr %20922, align 8, !tbaa !11
  %20924 = call double @llvm.fmuladd.f64(double 0x3C959116F9B144FE, double %20923, double %20915)
  %20925 = load ptr, ptr %7, align 8, !tbaa !9
  %20926 = load i32, ptr %12, align 4, !tbaa !5
  %20927 = load i32, ptr %8, align 4, !tbaa !5
  %20928 = mul nsw i32 61, %20927
  %20929 = add nsw i32 %20926, %20928
  %20930 = sext i32 %20929 to i64
  %20931 = getelementptr inbounds double, ptr %20925, i64 %20930
  %20932 = load double, ptr %20931, align 8, !tbaa !11
  %20933 = call double @llvm.fmuladd.f64(double 0xBCA80AA84CE72F89, double %20932, double %20924)
  %20934 = load ptr, ptr %7, align 8, !tbaa !9
  %20935 = load i32, ptr %12, align 4, !tbaa !5
  %20936 = load i32, ptr %8, align 4, !tbaa !5
  %20937 = mul nsw i32 62, %20936
  %20938 = add nsw i32 %20935, %20937
  %20939 = sext i32 %20938 to i64
  %20940 = getelementptr inbounds double, ptr %20934, i64 %20939
  %20941 = load double, ptr %20940, align 8, !tbaa !11
  %20942 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %20941, double %20933)
  %20943 = load ptr, ptr %7, align 8, !tbaa !9
  %20944 = load i32, ptr %12, align 4, !tbaa !5
  %20945 = load i32, ptr %8, align 4, !tbaa !5
  %20946 = mul nsw i32 63, %20945
  %20947 = add nsw i32 %20944, %20946
  %20948 = sext i32 %20947 to i64
  %20949 = getelementptr inbounds double, ptr %20943, i64 %20948
  %20950 = load double, ptr %20949, align 8, !tbaa !11
  %20951 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %20950, double %20942)
  %20952 = load ptr, ptr %7, align 8, !tbaa !9
  %20953 = load i32, ptr %12, align 4, !tbaa !5
  %20954 = load i32, ptr %8, align 4, !tbaa !5
  %20955 = mul nsw i32 64, %20954
  %20956 = add nsw i32 %20953, %20955
  %20957 = sext i32 %20956 to i64
  %20958 = getelementptr inbounds double, ptr %20952, i64 %20957
  %20959 = load double, ptr %20958, align 8, !tbaa !11
  %20960 = call double @llvm.fmuladd.f64(double 0xBFD039FE04F7163A, double %20959, double %20951)
  %20961 = load ptr, ptr %7, align 8, !tbaa !9
  %20962 = load i32, ptr %12, align 4, !tbaa !5
  %20963 = load i32, ptr %8, align 4, !tbaa !5
  %20964 = mul nsw i32 65, %20963
  %20965 = add nsw i32 %20962, %20964
  %20966 = sext i32 %20965 to i64
  %20967 = getelementptr inbounds double, ptr %20961, i64 %20966
  %20968 = load double, ptr %20967, align 8, !tbaa !11
  %20969 = call double @llvm.fmuladd.f64(double 0xBFE30958FBF81242, double %20968, double %20960)
  %20970 = load ptr, ptr %7, align 8, !tbaa !9
  %20971 = load i32, ptr %12, align 4, !tbaa !5
  %20972 = load i32, ptr %8, align 4, !tbaa !5
  %20973 = mul nsw i32 66, %20972
  %20974 = add nsw i32 %20971, %20973
  %20975 = sext i32 %20974 to i64
  %20976 = getelementptr inbounds double, ptr %20970, i64 %20975
  %20977 = load double, ptr %20976, align 8, !tbaa !11
  %20978 = call double @llvm.fmuladd.f64(double 0xBFE30958FBF81231, double %20977, double %20969)
  %20979 = load ptr, ptr %7, align 8, !tbaa !9
  %20980 = load i32, ptr %12, align 4, !tbaa !5
  %20981 = load i32, ptr %8, align 4, !tbaa !5
  %20982 = mul nsw i32 67, %20981
  %20983 = add nsw i32 %20980, %20982
  %20984 = sext i32 %20983 to i64
  %20985 = getelementptr inbounds double, ptr %20979, i64 %20984
  %20986 = load double, ptr %20985, align 8, !tbaa !11
  %20987 = call double @llvm.fmuladd.f64(double 0xBFD039FE04F71632, double %20986, double %20978)
  store double %20987, ptr %11, align 8, !tbaa !11
  %20988 = load double, ptr %11, align 8, !tbaa !11
  %20989 = load ptr, ptr %9, align 8, !tbaa !9
  %20990 = load i32, ptr %12, align 4, !tbaa !5
  %20991 = load i32, ptr %10, align 4, !tbaa !5
  %20992 = mul nsw i32 73, %20991
  %20993 = add nsw i32 %20990, %20992
  %20994 = sext i32 %20993 to i64
  %20995 = getelementptr inbounds double, ptr %20989, i64 %20994
  store double %20988, ptr %20995, align 8, !tbaa !11
  %20996 = load ptr, ptr %7, align 8, !tbaa !9
  %20997 = load i32, ptr %12, align 4, !tbaa !5
  %20998 = load i32, ptr %8, align 4, !tbaa !5
  %20999 = mul nsw i32 20, %20998
  %21000 = add nsw i32 %20997, %20999
  %21001 = sext i32 %21000 to i64
  %21002 = getelementptr inbounds double, ptr %20996, i64 %21001
  %21003 = load double, ptr %21002, align 8, !tbaa !11
  %21004 = load ptr, ptr %7, align 8, !tbaa !9
  %21005 = load i32, ptr %12, align 4, !tbaa !5
  %21006 = load i32, ptr %8, align 4, !tbaa !5
  %21007 = mul nsw i32 21, %21006
  %21008 = add nsw i32 %21005, %21007
  %21009 = sext i32 %21008 to i64
  %21010 = getelementptr inbounds double, ptr %21004, i64 %21009
  %21011 = load double, ptr %21010, align 8, !tbaa !11
  %21012 = fmul double 0xBC9C000000000000, %21011
  %21013 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %21003, double %21012)
  %21014 = load ptr, ptr %7, align 8, !tbaa !9
  %21015 = load i32, ptr %12, align 4, !tbaa !5
  %21016 = load i32, ptr %8, align 4, !tbaa !5
  %21017 = mul nsw i32 22, %21016
  %21018 = add nsw i32 %21015, %21017
  %21019 = sext i32 %21018 to i64
  %21020 = getelementptr inbounds double, ptr %21014, i64 %21019
  %21021 = load double, ptr %21020, align 8, !tbaa !11
  %21022 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %21021, double %21013)
  %21023 = load ptr, ptr %7, align 8, !tbaa !9
  %21024 = load i32, ptr %12, align 4, !tbaa !5
  %21025 = load i32, ptr %8, align 4, !tbaa !5
  %21026 = mul nsw i32 23, %21025
  %21027 = add nsw i32 %21024, %21026
  %21028 = sext i32 %21027 to i64
  %21029 = getelementptr inbounds double, ptr %21023, i64 %21028
  %21030 = load double, ptr %21029, align 8, !tbaa !11
  %21031 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %21030, double %21022)
  %21032 = load ptr, ptr %7, align 8, !tbaa !9
  %21033 = load i32, ptr %12, align 4, !tbaa !5
  %21034 = load i32, ptr %8, align 4, !tbaa !5
  %21035 = mul nsw i32 24, %21034
  %21036 = add nsw i32 %21033, %21035
  %21037 = sext i32 %21036 to i64
  %21038 = getelementptr inbounds double, ptr %21032, i64 %21037
  %21039 = load double, ptr %21038, align 8, !tbaa !11
  %21040 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %21039, double %21031)
  %21041 = load ptr, ptr %7, align 8, !tbaa !9
  %21042 = load i32, ptr %12, align 4, !tbaa !5
  %21043 = load i32, ptr %8, align 4, !tbaa !5
  %21044 = mul nsw i32 25, %21043
  %21045 = add nsw i32 %21042, %21044
  %21046 = sext i32 %21045 to i64
  %21047 = getelementptr inbounds double, ptr %21041, i64 %21046
  %21048 = load double, ptr %21047, align 8, !tbaa !11
  %21049 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %21048, double %21040)
  %21050 = load ptr, ptr %7, align 8, !tbaa !9
  %21051 = load i32, ptr %12, align 4, !tbaa !5
  %21052 = load i32, ptr %8, align 4, !tbaa !5
  %21053 = mul nsw i32 26, %21052
  %21054 = add nsw i32 %21051, %21053
  %21055 = sext i32 %21054 to i64
  %21056 = getelementptr inbounds double, ptr %21050, i64 %21055
  %21057 = load double, ptr %21056, align 8, !tbaa !11
  %21058 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %21057, double %21049)
  %21059 = load ptr, ptr %7, align 8, !tbaa !9
  %21060 = load i32, ptr %12, align 4, !tbaa !5
  %21061 = load i32, ptr %8, align 4, !tbaa !5
  %21062 = mul nsw i32 27, %21061
  %21063 = add nsw i32 %21060, %21062
  %21064 = sext i32 %21063 to i64
  %21065 = getelementptr inbounds double, ptr %21059, i64 %21064
  %21066 = load double, ptr %21065, align 8, !tbaa !11
  %21067 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %21066, double %21058)
  %21068 = load ptr, ptr %7, align 8, !tbaa !9
  %21069 = load i32, ptr %12, align 4, !tbaa !5
  %21070 = load i32, ptr %8, align 4, !tbaa !5
  %21071 = mul nsw i32 28, %21070
  %21072 = add nsw i32 %21069, %21071
  %21073 = sext i32 %21072 to i64
  %21074 = getelementptr inbounds double, ptr %21068, i64 %21073
  %21075 = load double, ptr %21074, align 8, !tbaa !11
  %21076 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %21075, double %21067)
  %21077 = load ptr, ptr %7, align 8, !tbaa !9
  %21078 = load i32, ptr %12, align 4, !tbaa !5
  %21079 = load i32, ptr %8, align 4, !tbaa !5
  %21080 = mul nsw i32 30, %21079
  %21081 = add nsw i32 %21078, %21080
  %21082 = sext i32 %21081 to i64
  %21083 = getelementptr inbounds double, ptr %21077, i64 %21082
  %21084 = load double, ptr %21083, align 8, !tbaa !11
  %21085 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %21084, double %21076)
  %21086 = load ptr, ptr %7, align 8, !tbaa !9
  %21087 = load i32, ptr %12, align 4, !tbaa !5
  %21088 = load i32, ptr %8, align 4, !tbaa !5
  %21089 = mul nsw i32 31, %21088
  %21090 = add nsw i32 %21087, %21089
  %21091 = sext i32 %21090 to i64
  %21092 = getelementptr inbounds double, ptr %21086, i64 %21091
  %21093 = load double, ptr %21092, align 8, !tbaa !11
  %21094 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %21093, double %21085)
  %21095 = load ptr, ptr %7, align 8, !tbaa !9
  %21096 = load i32, ptr %12, align 4, !tbaa !5
  %21097 = load i32, ptr %8, align 4, !tbaa !5
  %21098 = mul nsw i32 32, %21097
  %21099 = add nsw i32 %21096, %21098
  %21100 = sext i32 %21099 to i64
  %21101 = getelementptr inbounds double, ptr %21095, i64 %21100
  %21102 = load double, ptr %21101, align 8, !tbaa !11
  %21103 = call double @llvm.fmuladd.f64(double 0xBFAC37F3CCE9FCFE, double %21102, double %21094)
  %21104 = load ptr, ptr %7, align 8, !tbaa !9
  %21105 = load i32, ptr %12, align 4, !tbaa !5
  %21106 = load i32, ptr %8, align 4, !tbaa !5
  %21107 = mul nsw i32 33, %21106
  %21108 = add nsw i32 %21105, %21107
  %21109 = sext i32 %21108 to i64
  %21110 = getelementptr inbounds double, ptr %21104, i64 %21109
  %21111 = load double, ptr %21110, align 8, !tbaa !11
  %21112 = call double @llvm.fmuladd.f64(double 0xBFB4C23AD63BEF88, double %21111, double %21103)
  %21113 = load ptr, ptr %7, align 8, !tbaa !9
  %21114 = load i32, ptr %12, align 4, !tbaa !5
  %21115 = load i32, ptr %8, align 4, !tbaa !5
  %21116 = mul nsw i32 34, %21115
  %21117 = add nsw i32 %21114, %21116
  %21118 = sext i32 %21117 to i64
  %21119 = getelementptr inbounds double, ptr %21113, i64 %21118
  %21120 = load double, ptr %21119, align 8, !tbaa !11
  %21121 = call double @llvm.fmuladd.f64(double 0x3FEFAD7976B5DE29, double %21120, double %21112)
  %21122 = load ptr, ptr %7, align 8, !tbaa !9
  %21123 = load i32, ptr %12, align 4, !tbaa !5
  %21124 = load i32, ptr %8, align 4, !tbaa !5
  %21125 = mul nsw i32 35, %21124
  %21126 = add nsw i32 %21123, %21125
  %21127 = sext i32 %21126 to i64
  %21128 = getelementptr inbounds double, ptr %21122, i64 %21127
  %21129 = load double, ptr %21128, align 8, !tbaa !11
  %21130 = call double @llvm.fmuladd.f64(double 0x3FF043C98657E812, double %21129, double %21121)
  %21131 = load ptr, ptr %7, align 8, !tbaa !9
  %21132 = load i32, ptr %12, align 4, !tbaa !5
  %21133 = load i32, ptr %8, align 4, !tbaa !5
  %21134 = mul nsw i32 52, %21133
  %21135 = add nsw i32 %21132, %21134
  %21136 = sext i32 %21135 to i64
  %21137 = getelementptr inbounds double, ptr %21131, i64 %21136
  %21138 = load double, ptr %21137, align 8, !tbaa !11
  %21139 = call double @llvm.fmuladd.f64(double 0x3C8BEE4386850DD0, double %21138, double %21130)
  %21140 = load ptr, ptr %7, align 8, !tbaa !9
  %21141 = load i32, ptr %12, align 4, !tbaa !5
  %21142 = load i32, ptr %8, align 4, !tbaa !5
  %21143 = mul nsw i32 53, %21142
  %21144 = add nsw i32 %21141, %21143
  %21145 = sext i32 %21144 to i64
  %21146 = getelementptr inbounds double, ptr %21140, i64 %21145
  %21147 = load double, ptr %21146, align 8, !tbaa !11
  %21148 = call double @llvm.fmuladd.f64(double 0x3CC196DB21ACE77C, double %21147, double %21139)
  %21149 = load ptr, ptr %7, align 8, !tbaa !9
  %21150 = load i32, ptr %12, align 4, !tbaa !5
  %21151 = load i32, ptr %8, align 4, !tbaa !5
  %21152 = mul nsw i32 54, %21151
  %21153 = add nsw i32 %21150, %21152
  %21154 = sext i32 %21153 to i64
  %21155 = getelementptr inbounds double, ptr %21149, i64 %21154
  %21156 = load double, ptr %21155, align 8, !tbaa !11
  %21157 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %21156, double %21148)
  %21158 = load ptr, ptr %7, align 8, !tbaa !9
  %21159 = load i32, ptr %12, align 4, !tbaa !5
  %21160 = load i32, ptr %8, align 4, !tbaa !5
  %21161 = mul nsw i32 55, %21160
  %21162 = add nsw i32 %21159, %21161
  %21163 = sext i32 %21162 to i64
  %21164 = getelementptr inbounds double, ptr %21158, i64 %21163
  %21165 = load double, ptr %21164, align 8, !tbaa !11
  %21166 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %21165, double %21157)
  %21167 = load ptr, ptr %7, align 8, !tbaa !9
  %21168 = load i32, ptr %12, align 4, !tbaa !5
  %21169 = load i32, ptr %8, align 4, !tbaa !5
  %21170 = mul nsw i32 56, %21169
  %21171 = add nsw i32 %21168, %21170
  %21172 = sext i32 %21171 to i64
  %21173 = getelementptr inbounds double, ptr %21167, i64 %21172
  %21174 = load double, ptr %21173, align 8, !tbaa !11
  %21175 = call double @llvm.fmuladd.f64(double 0x3C6974B2334F2344, double %21174, double %21166)
  %21176 = load ptr, ptr %7, align 8, !tbaa !9
  %21177 = load i32, ptr %12, align 4, !tbaa !5
  %21178 = load i32, ptr %8, align 4, !tbaa !5
  %21179 = mul nsw i32 57, %21178
  %21180 = add nsw i32 %21177, %21179
  %21181 = sext i32 %21180 to i64
  %21182 = getelementptr inbounds double, ptr %21176, i64 %21181
  %21183 = load double, ptr %21182, align 8, !tbaa !11
  %21184 = call double @llvm.fmuladd.f64(double 0xBCA5EB99734B41EE, double %21183, double %21175)
  %21185 = load ptr, ptr %7, align 8, !tbaa !9
  %21186 = load i32, ptr %12, align 4, !tbaa !5
  %21187 = load i32, ptr %8, align 4, !tbaa !5
  %21188 = mul nsw i32 58, %21187
  %21189 = add nsw i32 %21186, %21188
  %21190 = sext i32 %21189 to i64
  %21191 = getelementptr inbounds double, ptr %21185, i64 %21190
  %21192 = load double, ptr %21191, align 8, !tbaa !11
  %21193 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %21192, double %21184)
  %21194 = load ptr, ptr %7, align 8, !tbaa !9
  %21195 = load i32, ptr %12, align 4, !tbaa !5
  %21196 = load i32, ptr %8, align 4, !tbaa !5
  %21197 = mul nsw i32 59, %21196
  %21198 = add nsw i32 %21195, %21197
  %21199 = sext i32 %21198 to i64
  %21200 = getelementptr inbounds double, ptr %21194, i64 %21199
  %21201 = load double, ptr %21200, align 8, !tbaa !11
  %21202 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %21201, double %21193)
  %21203 = load ptr, ptr %7, align 8, !tbaa !9
  %21204 = load i32, ptr %12, align 4, !tbaa !5
  %21205 = load i32, ptr %8, align 4, !tbaa !5
  %21206 = mul nsw i32 60, %21205
  %21207 = add nsw i32 %21204, %21206
  %21208 = sext i32 %21207 to i64
  %21209 = getelementptr inbounds double, ptr %21203, i64 %21208
  %21210 = load double, ptr %21209, align 8, !tbaa !11
  %21211 = call double @llvm.fmuladd.f64(double 0xBC8CFDCAF353049C, double %21210, double %21202)
  %21212 = load ptr, ptr %7, align 8, !tbaa !9
  %21213 = load i32, ptr %12, align 4, !tbaa !5
  %21214 = load i32, ptr %8, align 4, !tbaa !5
  %21215 = mul nsw i32 61, %21214
  %21216 = add nsw i32 %21213, %21215
  %21217 = sext i32 %21216 to i64
  %21218 = getelementptr inbounds double, ptr %21212, i64 %21217
  %21219 = load double, ptr %21218, align 8, !tbaa !11
  %21220 = call double @llvm.fmuladd.f64(double 0x3CB6461BECE53EDD, double %21219, double %21211)
  %21221 = load ptr, ptr %7, align 8, !tbaa !9
  %21222 = load i32, ptr %12, align 4, !tbaa !5
  %21223 = load i32, ptr %8, align 4, !tbaa !5
  %21224 = mul nsw i32 62, %21223
  %21225 = add nsw i32 %21222, %21224
  %21226 = sext i32 %21225 to i64
  %21227 = getelementptr inbounds double, ptr %21221, i64 %21226
  %21228 = load double, ptr %21227, align 8, !tbaa !11
  %21229 = call double @llvm.fmuladd.f64(double 0x3CA3CC8A99AF5452, double %21228, double %21220)
  %21230 = load ptr, ptr %7, align 8, !tbaa !9
  %21231 = load i32, ptr %12, align 4, !tbaa !5
  %21232 = load i32, ptr %8, align 4, !tbaa !5
  %21233 = mul nsw i32 63, %21232
  %21234 = add nsw i32 %21231, %21233
  %21235 = sext i32 %21234 to i64
  %21236 = getelementptr inbounds double, ptr %21230, i64 %21235
  %21237 = load double, ptr %21236, align 8, !tbaa !11
  %21238 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %21237, double %21229)
  %21239 = load ptr, ptr %7, align 8, !tbaa !9
  %21240 = load i32, ptr %12, align 4, !tbaa !5
  %21241 = load i32, ptr %8, align 4, !tbaa !5
  %21242 = mul nsw i32 64, %21241
  %21243 = add nsw i32 %21240, %21242
  %21244 = sext i32 %21243 to i64
  %21245 = getelementptr inbounds double, ptr %21239, i64 %21244
  %21246 = load double, ptr %21245, align 8, !tbaa !11
  %21247 = call double @llvm.fmuladd.f64(double 0x3FD08C54FF101A12, double %21246, double %21238)
  %21248 = load ptr, ptr %7, align 8, !tbaa !9
  %21249 = load i32, ptr %12, align 4, !tbaa !5
  %21250 = load i32, ptr %8, align 4, !tbaa !5
  %21251 = mul nsw i32 65, %21250
  %21252 = add nsw i32 %21249, %21251
  %21253 = sext i32 %21252 to i64
  %21254 = getelementptr inbounds double, ptr %21248, i64 %21253
  %21255 = load double, ptr %21254, align 8, !tbaa !11
  %21256 = call double @llvm.fmuladd.f64(double 0x4007001BD846D0B0, double %21255, double %21247)
  %21257 = load ptr, ptr %7, align 8, !tbaa !9
  %21258 = load i32, ptr %12, align 4, !tbaa !5
  %21259 = load i32, ptr %8, align 4, !tbaa !5
  %21260 = mul nsw i32 66, %21259
  %21261 = add nsw i32 %21258, %21260
  %21262 = sext i32 %21261 to i64
  %21263 = getelementptr inbounds double, ptr %21257, i64 %21262
  %21264 = load double, ptr %21263, align 8, !tbaa !11
  %21265 = call double @llvm.fmuladd.f64(double 0x3FD0C7817D9C3131, double %21264, double %21256)
  %21266 = load ptr, ptr %7, align 8, !tbaa !9
  %21267 = load i32, ptr %12, align 4, !tbaa !5
  %21268 = load i32, ptr %8, align 4, !tbaa !5
  %21269 = mul nsw i32 67, %21268
  %21270 = add nsw i32 %21267, %21269
  %21271 = sext i32 %21270 to i64
  %21272 = getelementptr inbounds double, ptr %21266, i64 %21271
  %21273 = load double, ptr %21272, align 8, !tbaa !11
  %21274 = call double @llvm.fmuladd.f64(double 0xBFB8DF388696F54B, double %21273, double %21265)
  store double %21274, ptr %11, align 8, !tbaa !11
  %21275 = load double, ptr %11, align 8, !tbaa !11
  %21276 = load ptr, ptr %9, align 8, !tbaa !9
  %21277 = load i32, ptr %12, align 4, !tbaa !5
  %21278 = load i32, ptr %10, align 4, !tbaa !5
  %21279 = mul nsw i32 74, %21278
  %21280 = add nsw i32 %21277, %21279
  %21281 = sext i32 %21280 to i64
  %21282 = getelementptr inbounds double, ptr %21276, i64 %21281
  store double %21275, ptr %21282, align 8, !tbaa !11
  %21283 = load ptr, ptr %7, align 8, !tbaa !9
  %21284 = load i32, ptr %12, align 4, !tbaa !5
  %21285 = load i32, ptr %8, align 4, !tbaa !5
  %21286 = mul nsw i32 20, %21285
  %21287 = add nsw i32 %21284, %21286
  %21288 = sext i32 %21287 to i64
  %21289 = getelementptr inbounds double, ptr %21283, i64 %21288
  %21290 = load double, ptr %21289, align 8, !tbaa !11
  %21291 = load ptr, ptr %7, align 8, !tbaa !9
  %21292 = load i32, ptr %12, align 4, !tbaa !5
  %21293 = load i32, ptr %8, align 4, !tbaa !5
  %21294 = mul nsw i32 21, %21293
  %21295 = add nsw i32 %21292, %21294
  %21296 = sext i32 %21295 to i64
  %21297 = getelementptr inbounds double, ptr %21291, i64 %21296
  %21298 = load double, ptr %21297, align 8, !tbaa !11
  %21299 = fmul double 0x3C70000000000001, %21298
  %21300 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %21290, double %21299)
  %21301 = load ptr, ptr %7, align 8, !tbaa !9
  %21302 = load i32, ptr %12, align 4, !tbaa !5
  %21303 = load i32, ptr %8, align 4, !tbaa !5
  %21304 = mul nsw i32 22, %21303
  %21305 = add nsw i32 %21302, %21304
  %21306 = sext i32 %21305 to i64
  %21307 = getelementptr inbounds double, ptr %21301, i64 %21306
  %21308 = load double, ptr %21307, align 8, !tbaa !11
  %21309 = call double @llvm.fmuladd.f64(double 0xBC9A000000000000, double %21308, double %21300)
  %21310 = load ptr, ptr %7, align 8, !tbaa !9
  %21311 = load i32, ptr %12, align 4, !tbaa !5
  %21312 = load i32, ptr %8, align 4, !tbaa !5
  %21313 = mul nsw i32 23, %21312
  %21314 = add nsw i32 %21311, %21313
  %21315 = sext i32 %21314 to i64
  %21316 = getelementptr inbounds double, ptr %21310, i64 %21315
  %21317 = load double, ptr %21316, align 8, !tbaa !11
  %21318 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %21317, double %21309)
  %21319 = load ptr, ptr %7, align 8, !tbaa !9
  %21320 = load i32, ptr %12, align 4, !tbaa !5
  %21321 = load i32, ptr %8, align 4, !tbaa !5
  %21322 = mul nsw i32 24, %21321
  %21323 = add nsw i32 %21320, %21322
  %21324 = sext i32 %21323 to i64
  %21325 = getelementptr inbounds double, ptr %21319, i64 %21324
  %21326 = load double, ptr %21325, align 8, !tbaa !11
  %21327 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %21326, double %21318)
  %21328 = load ptr, ptr %7, align 8, !tbaa !9
  %21329 = load i32, ptr %12, align 4, !tbaa !5
  %21330 = load i32, ptr %8, align 4, !tbaa !5
  %21331 = mul nsw i32 25, %21330
  %21332 = add nsw i32 %21329, %21331
  %21333 = sext i32 %21332 to i64
  %21334 = getelementptr inbounds double, ptr %21328, i64 %21333
  %21335 = load double, ptr %21334, align 8, !tbaa !11
  %21336 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %21335, double %21327)
  %21337 = load ptr, ptr %7, align 8, !tbaa !9
  %21338 = load i32, ptr %12, align 4, !tbaa !5
  %21339 = load i32, ptr %8, align 4, !tbaa !5
  %21340 = mul nsw i32 27, %21339
  %21341 = add nsw i32 %21338, %21340
  %21342 = sext i32 %21341 to i64
  %21343 = getelementptr inbounds double, ptr %21337, i64 %21342
  %21344 = load double, ptr %21343, align 8, !tbaa !11
  %21345 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %21344, double %21336)
  %21346 = load ptr, ptr %7, align 8, !tbaa !9
  %21347 = load i32, ptr %12, align 4, !tbaa !5
  %21348 = load i32, ptr %8, align 4, !tbaa !5
  %21349 = mul nsw i32 28, %21348
  %21350 = add nsw i32 %21347, %21349
  %21351 = sext i32 %21350 to i64
  %21352 = getelementptr inbounds double, ptr %21346, i64 %21351
  %21353 = load double, ptr %21352, align 8, !tbaa !11
  %21354 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %21353, double %21345)
  %21355 = load ptr, ptr %7, align 8, !tbaa !9
  %21356 = load i32, ptr %12, align 4, !tbaa !5
  %21357 = load i32, ptr %8, align 4, !tbaa !5
  %21358 = mul nsw i32 29, %21357
  %21359 = add nsw i32 %21356, %21358
  %21360 = sext i32 %21359 to i64
  %21361 = getelementptr inbounds double, ptr %21355, i64 %21360
  %21362 = load double, ptr %21361, align 8, !tbaa !11
  %21363 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %21362, double %21354)
  %21364 = load ptr, ptr %7, align 8, !tbaa !9
  %21365 = load i32, ptr %12, align 4, !tbaa !5
  %21366 = load i32, ptr %8, align 4, !tbaa !5
  %21367 = mul nsw i32 30, %21366
  %21368 = add nsw i32 %21365, %21367
  %21369 = sext i32 %21368 to i64
  %21370 = getelementptr inbounds double, ptr %21364, i64 %21369
  %21371 = load double, ptr %21370, align 8, !tbaa !11
  %21372 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %21371, double %21363)
  %21373 = load ptr, ptr %7, align 8, !tbaa !9
  %21374 = load i32, ptr %12, align 4, !tbaa !5
  %21375 = load i32, ptr %8, align 4, !tbaa !5
  %21376 = mul nsw i32 31, %21375
  %21377 = add nsw i32 %21374, %21376
  %21378 = sext i32 %21377 to i64
  %21379 = getelementptr inbounds double, ptr %21373, i64 %21378
  %21380 = load double, ptr %21379, align 8, !tbaa !11
  %21381 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %21380, double %21372)
  %21382 = load ptr, ptr %7, align 8, !tbaa !9
  %21383 = load i32, ptr %12, align 4, !tbaa !5
  %21384 = load i32, ptr %8, align 4, !tbaa !5
  %21385 = mul nsw i32 32, %21384
  %21386 = add nsw i32 %21383, %21385
  %21387 = sext i32 %21386 to i64
  %21388 = getelementptr inbounds double, ptr %21382, i64 %21387
  %21389 = load double, ptr %21388, align 8, !tbaa !11
  %21390 = call double @llvm.fmuladd.f64(double 0x3FF043C98657E812, double %21389, double %21381)
  %21391 = load ptr, ptr %7, align 8, !tbaa !9
  %21392 = load i32, ptr %12, align 4, !tbaa !5
  %21393 = load i32, ptr %8, align 4, !tbaa !5
  %21394 = mul nsw i32 33, %21393
  %21395 = add nsw i32 %21392, %21394
  %21396 = sext i32 %21395 to i64
  %21397 = getelementptr inbounds double, ptr %21391, i64 %21396
  %21398 = load double, ptr %21397, align 8, !tbaa !11
  %21399 = call double @llvm.fmuladd.f64(double 0x3FEFAD7976B5DE26, double %21398, double %21390)
  %21400 = load ptr, ptr %7, align 8, !tbaa !9
  %21401 = load i32, ptr %12, align 4, !tbaa !5
  %21402 = load i32, ptr %8, align 4, !tbaa !5
  %21403 = mul nsw i32 34, %21402
  %21404 = add nsw i32 %21401, %21403
  %21405 = sext i32 %21404 to i64
  %21406 = getelementptr inbounds double, ptr %21400, i64 %21405
  %21407 = load double, ptr %21406, align 8, !tbaa !11
  %21408 = call double @llvm.fmuladd.f64(double 0xBFB4C23AD63BEF60, double %21407, double %21399)
  %21409 = load ptr, ptr %7, align 8, !tbaa !9
  %21410 = load i32, ptr %12, align 4, !tbaa !5
  %21411 = load i32, ptr %8, align 4, !tbaa !5
  %21412 = mul nsw i32 35, %21411
  %21413 = add nsw i32 %21410, %21412
  %21414 = sext i32 %21413 to i64
  %21415 = getelementptr inbounds double, ptr %21409, i64 %21414
  %21416 = load double, ptr %21415, align 8, !tbaa !11
  %21417 = call double @llvm.fmuladd.f64(double 0xBFAC37F3CCE9FD17, double %21416, double %21408)
  %21418 = load ptr, ptr %7, align 8, !tbaa !9
  %21419 = load i32, ptr %12, align 4, !tbaa !5
  %21420 = load i32, ptr %8, align 4, !tbaa !5
  %21421 = mul nsw i32 52, %21420
  %21422 = add nsw i32 %21419, %21421
  %21423 = sext i32 %21422 to i64
  %21424 = getelementptr inbounds double, ptr %21418, i64 %21423
  %21425 = load double, ptr %21424, align 8, !tbaa !11
  %21426 = call double @llvm.fmuladd.f64(double 0x3C53CC8A99AF5452, double %21425, double %21417)
  %21427 = load ptr, ptr %7, align 8, !tbaa !9
  %21428 = load i32, ptr %12, align 4, !tbaa !5
  %21429 = load i32, ptr %8, align 4, !tbaa !5
  %21430 = mul nsw i32 53, %21429
  %21431 = add nsw i32 %21428, %21430
  %21432 = sext i32 %21431 to i64
  %21433 = getelementptr inbounds double, ptr %21427, i64 %21432
  %21434 = load double, ptr %21433, align 8, !tbaa !11
  %21435 = call double @llvm.fmuladd.f64(double 0x3C8536948017480E, double %21434, double %21426)
  %21436 = load ptr, ptr %7, align 8, !tbaa !9
  %21437 = load i32, ptr %12, align 4, !tbaa !5
  %21438 = load i32, ptr %8, align 4, !tbaa !5
  %21439 = mul nsw i32 54, %21438
  %21440 = add nsw i32 %21437, %21439
  %21441 = sext i32 %21440 to i64
  %21442 = getelementptr inbounds double, ptr %21436, i64 %21441
  %21443 = load double, ptr %21442, align 8, !tbaa !11
  %21444 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %21443, double %21435)
  %21445 = load ptr, ptr %7, align 8, !tbaa !9
  %21446 = load i32, ptr %12, align 4, !tbaa !5
  %21447 = load i32, ptr %8, align 4, !tbaa !5
  %21448 = mul nsw i32 55, %21447
  %21449 = add nsw i32 %21446, %21448
  %21450 = sext i32 %21449 to i64
  %21451 = getelementptr inbounds double, ptr %21445, i64 %21450
  %21452 = load double, ptr %21451, align 8, !tbaa !11
  %21453 = call double @llvm.fmuladd.f64(double 0x3C93CC8A99AF5452, double %21452, double %21444)
  %21454 = load ptr, ptr %7, align 8, !tbaa !9
  %21455 = load i32, ptr %12, align 4, !tbaa !5
  %21456 = load i32, ptr %8, align 4, !tbaa !5
  %21457 = mul nsw i32 56, %21456
  %21458 = add nsw i32 %21455, %21457
  %21459 = sext i32 %21458 to i64
  %21460 = getelementptr inbounds double, ptr %21454, i64 %21459
  %21461 = load double, ptr %21460, align 8, !tbaa !11
  %21462 = call double @llvm.fmuladd.f64(double 0xBC94DC12067D4B20, double %21461, double %21453)
  %21463 = load ptr, ptr %7, align 8, !tbaa !9
  %21464 = load i32, ptr %12, align 4, !tbaa !5
  %21465 = load i32, ptr %8, align 4, !tbaa !5
  %21466 = mul nsw i32 57, %21465
  %21467 = add nsw i32 %21464, %21466
  %21468 = sext i32 %21467 to i64
  %21469 = getelementptr inbounds double, ptr %21463, i64 %21468
  %21470 = load double, ptr %21469, align 8, !tbaa !11
  %21471 = call double @llvm.fmuladd.f64(double 0xBC9536948017480F, double %21470, double %21462)
  %21472 = load ptr, ptr %7, align 8, !tbaa !9
  %21473 = load i32, ptr %12, align 4, !tbaa !5
  %21474 = load i32, ptr %8, align 4, !tbaa !5
  %21475 = mul nsw i32 58, %21474
  %21476 = add nsw i32 %21473, %21475
  %21477 = sext i32 %21476 to i64
  %21478 = getelementptr inbounds double, ptr %21472, i64 %21477
  %21479 = load double, ptr %21478, align 8, !tbaa !11
  %21480 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %21479, double %21471)
  %21481 = load ptr, ptr %7, align 8, !tbaa !9
  %21482 = load i32, ptr %12, align 4, !tbaa !5
  %21483 = load i32, ptr %8, align 4, !tbaa !5
  %21484 = mul nsw i32 59, %21483
  %21485 = add nsw i32 %21482, %21484
  %21486 = sext i32 %21485 to i64
  %21487 = getelementptr inbounds double, ptr %21481, i64 %21486
  %21488 = load double, ptr %21487, align 8, !tbaa !11
  %21489 = call double @llvm.fmuladd.f64(double 0x3C96A09E667F3BCC, double %21488, double %21480)
  %21490 = load ptr, ptr %7, align 8, !tbaa !9
  %21491 = load i32, ptr %12, align 4, !tbaa !5
  %21492 = load i32, ptr %8, align 4, !tbaa !5
  %21493 = mul nsw i32 60, %21492
  %21494 = add nsw i32 %21491, %21493
  %21495 = sext i32 %21494 to i64
  %21496 = getelementptr inbounds double, ptr %21490, i64 %21495
  %21497 = load double, ptr %21496, align 8, !tbaa !11
  %21498 = call double @llvm.fmuladd.f64(double 0x3C6F1CD9CCEEF238, double %21497, double %21489)
  %21499 = load ptr, ptr %7, align 8, !tbaa !9
  %21500 = load i32, ptr %12, align 4, !tbaa !5
  %21501 = load i32, ptr %8, align 4, !tbaa !5
  %21502 = mul nsw i32 61, %21501
  %21503 = add nsw i32 %21500, %21502
  %21504 = sext i32 %21503 to i64
  %21505 = getelementptr inbounds double, ptr %21499, i64 %21504
  %21506 = load double, ptr %21505, align 8, !tbaa !11
  %21507 = call double @llvm.fmuladd.f64(double 0x3C9ADEBC19B71702, double %21506, double %21498)
  %21508 = load ptr, ptr %7, align 8, !tbaa !9
  %21509 = load i32, ptr %12, align 4, !tbaa !5
  %21510 = load i32, ptr %8, align 4, !tbaa !5
  %21511 = mul nsw i32 62, %21510
  %21512 = add nsw i32 %21509, %21511
  %21513 = sext i32 %21512 to i64
  %21514 = getelementptr inbounds double, ptr %21508, i64 %21513
  %21515 = load double, ptr %21514, align 8, !tbaa !11
  %21516 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %21515, double %21507)
  %21517 = load ptr, ptr %7, align 8, !tbaa !9
  %21518 = load i32, ptr %12, align 4, !tbaa !5
  %21519 = load i32, ptr %8, align 4, !tbaa !5
  %21520 = mul nsw i32 64, %21519
  %21521 = add nsw i32 %21518, %21520
  %21522 = sext i32 %21521 to i64
  %21523 = getelementptr inbounds double, ptr %21517, i64 %21522
  %21524 = load double, ptr %21523, align 8, !tbaa !11
  %21525 = call double @llvm.fmuladd.f64(double 0xBF9102DA00B18A5A, double %21524, double %21516)
  %21526 = load ptr, ptr %7, align 8, !tbaa !9
  %21527 = load i32, ptr %12, align 4, !tbaa !5
  %21528 = load i32, ptr %8, align 4, !tbaa !5
  %21529 = mul nsw i32 65, %21528
  %21530 = add nsw i32 %21527, %21529
  %21531 = sext i32 %21530 to i64
  %21532 = getelementptr inbounds double, ptr %21526, i64 %21531
  %21533 = load double, ptr %21532, align 8, !tbaa !11
  %21534 = call double @llvm.fmuladd.f64(double 0x3FCD5953692F6EA6, double %21533, double %21525)
  %21535 = load ptr, ptr %7, align 8, !tbaa !9
  %21536 = load i32, ptr %12, align 4, !tbaa !5
  %21537 = load i32, ptr %8, align 4, !tbaa !5
  %21538 = mul nsw i32 66, %21537
  %21539 = add nsw i32 %21536, %21538
  %21540 = sext i32 %21539 to i64
  %21541 = getelementptr inbounds double, ptr %21535, i64 %21540
  %21542 = load double, ptr %21541, align 8, !tbaa !11
  %21543 = call double @llvm.fmuladd.f64(double 0x3FE3C4545BCF030B, double %21542, double %21534)
  %21544 = load ptr, ptr %7, align 8, !tbaa !9
  %21545 = load i32, ptr %12, align 4, !tbaa !5
  %21546 = load i32, ptr %8, align 4, !tbaa !5
  %21547 = mul nsw i32 67, %21546
  %21548 = add nsw i32 %21545, %21547
  %21549 = sext i32 %21548 to i64
  %21550 = getelementptr inbounds double, ptr %21544, i64 %21549
  %21551 = load double, ptr %21550, align 8, !tbaa !11
  %21552 = call double @llvm.fmuladd.f64(double 0x3FD6A4D32EB1F70D, double %21551, double %21543)
  store double %21552, ptr %11, align 8, !tbaa !11
  %21553 = load double, ptr %11, align 8, !tbaa !11
  %21554 = load ptr, ptr %9, align 8, !tbaa !9
  %21555 = load i32, ptr %12, align 4, !tbaa !5
  %21556 = load i32, ptr %10, align 4, !tbaa !5
  %21557 = mul nsw i32 75, %21556
  %21558 = add nsw i32 %21555, %21557
  %21559 = sext i32 %21558 to i64
  %21560 = getelementptr inbounds double, ptr %21554, i64 %21559
  store double %21553, ptr %21560, align 8, !tbaa !11
  %21561 = load ptr, ptr %7, align 8, !tbaa !9
  %21562 = load i32, ptr %12, align 4, !tbaa !5
  %21563 = load i32, ptr %8, align 4, !tbaa !5
  %21564 = mul nsw i32 20, %21563
  %21565 = add nsw i32 %21562, %21564
  %21566 = sext i32 %21565 to i64
  %21567 = getelementptr inbounds double, ptr %21561, i64 %21566
  %21568 = load double, ptr %21567, align 8, !tbaa !11
  %21569 = load ptr, ptr %7, align 8, !tbaa !9
  %21570 = load i32, ptr %12, align 4, !tbaa !5
  %21571 = load i32, ptr %8, align 4, !tbaa !5
  %21572 = mul nsw i32 21, %21571
  %21573 = add nsw i32 %21570, %21572
  %21574 = sext i32 %21573 to i64
  %21575 = getelementptr inbounds double, ptr %21569, i64 %21574
  %21576 = load double, ptr %21575, align 8, !tbaa !11
  %21577 = fmul double 0xBCC4400000000000, %21576
  %21578 = call double @llvm.fmuladd.f64(double 0xBC9A000000000000, double %21568, double %21577)
  %21579 = load ptr, ptr %7, align 8, !tbaa !9
  %21580 = load i32, ptr %12, align 4, !tbaa !5
  %21581 = load i32, ptr %8, align 4, !tbaa !5
  %21582 = mul nsw i32 22, %21581
  %21583 = add nsw i32 %21580, %21582
  %21584 = sext i32 %21583 to i64
  %21585 = getelementptr inbounds double, ptr %21579, i64 %21584
  %21586 = load double, ptr %21585, align 8, !tbaa !11
  %21587 = call double @llvm.fmuladd.f64(double 0xBCA1000000000001, double %21586, double %21578)
  %21588 = load ptr, ptr %7, align 8, !tbaa !9
  %21589 = load i32, ptr %12, align 4, !tbaa !5
  %21590 = load i32, ptr %8, align 4, !tbaa !5
  %21591 = mul nsw i32 23, %21590
  %21592 = add nsw i32 %21589, %21591
  %21593 = sext i32 %21592 to i64
  %21594 = getelementptr inbounds double, ptr %21588, i64 %21593
  %21595 = load double, ptr %21594, align 8, !tbaa !11
  %21596 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %21595, double %21587)
  %21597 = load ptr, ptr %7, align 8, !tbaa !9
  %21598 = load i32, ptr %12, align 4, !tbaa !5
  %21599 = load i32, ptr %8, align 4, !tbaa !5
  %21600 = mul nsw i32 25, %21599
  %21601 = add nsw i32 %21598, %21600
  %21602 = sext i32 %21601 to i64
  %21603 = getelementptr inbounds double, ptr %21597, i64 %21602
  %21604 = load double, ptr %21603, align 8, !tbaa !11
  %21605 = call double @llvm.fmuladd.f64(double 0xBCC8C00000000000, double %21604, double %21596)
  %21606 = load ptr, ptr %7, align 8, !tbaa !9
  %21607 = load i32, ptr %12, align 4, !tbaa !5
  %21608 = load i32, ptr %8, align 4, !tbaa !5
  %21609 = mul nsw i32 26, %21608
  %21610 = add nsw i32 %21607, %21609
  %21611 = sext i32 %21610 to i64
  %21612 = getelementptr inbounds double, ptr %21606, i64 %21611
  %21613 = load double, ptr %21612, align 8, !tbaa !11
  %21614 = call double @llvm.fmuladd.f64(double 0xBC96000000000000, double %21613, double %21605)
  %21615 = load ptr, ptr %7, align 8, !tbaa !9
  %21616 = load i32, ptr %12, align 4, !tbaa !5
  %21617 = load i32, ptr %8, align 4, !tbaa !5
  %21618 = mul nsw i32 27, %21617
  %21619 = add nsw i32 %21616, %21618
  %21620 = sext i32 %21619 to i64
  %21621 = getelementptr inbounds double, ptr %21615, i64 %21620
  %21622 = load double, ptr %21621, align 8, !tbaa !11
  %21623 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %21622, double %21614)
  %21624 = load ptr, ptr %7, align 8, !tbaa !9
  %21625 = load i32, ptr %12, align 4, !tbaa !5
  %21626 = load i32, ptr %8, align 4, !tbaa !5
  %21627 = mul nsw i32 29, %21626
  %21628 = add nsw i32 %21625, %21627
  %21629 = sext i32 %21628 to i64
  %21630 = getelementptr inbounds double, ptr %21624, i64 %21629
  %21631 = load double, ptr %21630, align 8, !tbaa !11
  %21632 = call double @llvm.fmuladd.f64(double 0xBCD3A00000000001, double %21631, double %21623)
  %21633 = load ptr, ptr %7, align 8, !tbaa !9
  %21634 = load i32, ptr %12, align 4, !tbaa !5
  %21635 = load i32, ptr %8, align 4, !tbaa !5
  %21636 = mul nsw i32 30, %21635
  %21637 = add nsw i32 %21634, %21636
  %21638 = sext i32 %21637 to i64
  %21639 = getelementptr inbounds double, ptr %21633, i64 %21638
  %21640 = load double, ptr %21639, align 8, !tbaa !11
  %21641 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %21640, double %21632)
  %21642 = load ptr, ptr %7, align 8, !tbaa !9
  %21643 = load i32, ptr %12, align 4, !tbaa !5
  %21644 = load i32, ptr %8, align 4, !tbaa !5
  %21645 = mul nsw i32 31, %21644
  %21646 = add nsw i32 %21643, %21645
  %21647 = sext i32 %21646 to i64
  %21648 = getelementptr inbounds double, ptr %21642, i64 %21647
  %21649 = load double, ptr %21648, align 8, !tbaa !11
  %21650 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %21649, double %21641)
  %21651 = load ptr, ptr %7, align 8, !tbaa !9
  %21652 = load i32, ptr %12, align 4, !tbaa !5
  %21653 = load i32, ptr %8, align 4, !tbaa !5
  %21654 = mul nsw i32 32, %21653
  %21655 = add nsw i32 %21652, %21654
  %21656 = sext i32 %21655 to i64
  %21657 = getelementptr inbounds double, ptr %21651, i64 %21656
  %21658 = load double, ptr %21657, align 8, !tbaa !11
  %21659 = call double @llvm.fmuladd.f64(double 0xBFD767140476511D, double %21658, double %21650)
  %21660 = load ptr, ptr %7, align 8, !tbaa !9
  %21661 = load i32, ptr %12, align 4, !tbaa !5
  %21662 = load i32, ptr %8, align 4, !tbaa !5
  %21663 = mul nsw i32 33, %21662
  %21664 = add nsw i32 %21661, %21663
  %21665 = sext i32 %21664 to i64
  %21666 = getelementptr inbounds double, ptr %21660, i64 %21665
  %21667 = load double, ptr %21666, align 8, !tbaa !11
  %21668 = call double @llvm.fmuladd.f64(double 0xC01043858A1F5993, double %21667, double %21659)
  %21669 = load ptr, ptr %7, align 8, !tbaa !9
  %21670 = load i32, ptr %12, align 4, !tbaa !5
  %21671 = load i32, ptr %8, align 4, !tbaa !5
  %21672 = mul nsw i32 34, %21671
  %21673 = add nsw i32 %21670, %21672
  %21674 = sext i32 %21673 to i64
  %21675 = getelementptr inbounds double, ptr %21669, i64 %21674
  %21676 = load double, ptr %21675, align 8, !tbaa !11
  %21677 = call double @llvm.fmuladd.f64(double 0xBFD7BAC3393ADDD9, double %21676, double %21668)
  %21678 = load ptr, ptr %7, align 8, !tbaa !9
  %21679 = load i32, ptr %12, align 4, !tbaa !5
  %21680 = load i32, ptr %8, align 4, !tbaa !5
  %21681 = mul nsw i32 35, %21680
  %21682 = add nsw i32 %21679, %21681
  %21683 = sext i32 %21682 to i64
  %21684 = getelementptr inbounds double, ptr %21678, i64 %21683
  %21685 = load double, ptr %21684, align 8, !tbaa !11
  %21686 = call double @llvm.fmuladd.f64(double 0x3FC1964E14FA3C62, double %21685, double %21677)
  %21687 = load ptr, ptr %7, align 8, !tbaa !9
  %21688 = load i32, ptr %12, align 4, !tbaa !5
  %21689 = load i32, ptr %8, align 4, !tbaa !5
  %21690 = mul nsw i32 52, %21689
  %21691 = add nsw i32 %21688, %21690
  %21692 = sext i32 %21691 to i64
  %21693 = getelementptr inbounds double, ptr %21687, i64 %21692
  %21694 = load double, ptr %21693, align 8, !tbaa !11
  %21695 = call double @llvm.fmuladd.f64(double 0x3C86461BECE53EDC, double %21694, double %21686)
  %21696 = load ptr, ptr %7, align 8, !tbaa !9
  %21697 = load i32, ptr %12, align 4, !tbaa !5
  %21698 = load i32, ptr %8, align 4, !tbaa !5
  %21699 = mul nsw i32 53, %21698
  %21700 = add nsw i32 %21697, %21699
  %21701 = sext i32 %21700 to i64
  %21702 = getelementptr inbounds double, ptr %21696, i64 %21701
  %21703 = load double, ptr %21702, align 8, !tbaa !11
  %21704 = call double @llvm.fmuladd.f64(double 0x3CA196DB21ACE77D, double %21703, double %21695)
  %21705 = load ptr, ptr %7, align 8, !tbaa !9
  %21706 = load i32, ptr %12, align 4, !tbaa !5
  %21707 = load i32, ptr %8, align 4, !tbaa !5
  %21708 = mul nsw i32 54, %21707
  %21709 = add nsw i32 %21706, %21708
  %21710 = sext i32 %21709 to i64
  %21711 = getelementptr inbounds double, ptr %21705, i64 %21710
  %21712 = load double, ptr %21711, align 8, !tbaa !11
  %21713 = call double @llvm.fmuladd.f64(double 0x3C9ADEBC19B71702, double %21712, double %21704)
  %21714 = load ptr, ptr %7, align 8, !tbaa !9
  %21715 = load i32, ptr %12, align 4, !tbaa !5
  %21716 = load i32, ptr %8, align 4, !tbaa !5
  %21717 = mul nsw i32 56, %21716
  %21718 = add nsw i32 %21715, %21717
  %21719 = sext i32 %21718 to i64
  %21720 = getelementptr inbounds double, ptr %21714, i64 %21719
  %21721 = load double, ptr %21720, align 8, !tbaa !11
  %21722 = call double @llvm.fmuladd.f64(double 0xBC9C48C6001F0ABF, double %21721, double %21713)
  %21723 = load ptr, ptr %7, align 8, !tbaa !9
  %21724 = load i32, ptr %12, align 4, !tbaa !5
  %21725 = load i32, ptr %8, align 4, !tbaa !5
  %21726 = mul nsw i32 57, %21725
  %21727 = add nsw i32 %21724, %21726
  %21728 = sext i32 %21727 to i64
  %21729 = getelementptr inbounds double, ptr %21723, i64 %21728
  %21730 = load double, ptr %21729, align 8, !tbaa !11
  %21731 = call double @llvm.fmuladd.f64(double 0xBC9FD1DEC022EC15, double %21730, double %21722)
  %21732 = load ptr, ptr %7, align 8, !tbaa !9
  %21733 = load i32, ptr %12, align 4, !tbaa !5
  %21734 = load i32, ptr %8, align 4, !tbaa !5
  %21735 = mul nsw i32 58, %21734
  %21736 = add nsw i32 %21733, %21735
  %21737 = sext i32 %21736 to i64
  %21738 = getelementptr inbounds double, ptr %21732, i64 %21737
  %21739 = load double, ptr %21738, align 8, !tbaa !11
  %21740 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %21739, double %21731)
  %21741 = load ptr, ptr %7, align 8, !tbaa !9
  %21742 = load i32, ptr %12, align 4, !tbaa !5
  %21743 = load i32, ptr %8, align 4, !tbaa !5
  %21744 = mul nsw i32 59, %21743
  %21745 = add nsw i32 %21742, %21744
  %21746 = sext i32 %21745 to i64
  %21747 = getelementptr inbounds double, ptr %21741, i64 %21746
  %21748 = load double, ptr %21747, align 8, !tbaa !11
  %21749 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %21748, double %21740)
  %21750 = load ptr, ptr %7, align 8, !tbaa !9
  %21751 = load i32, ptr %12, align 4, !tbaa !5
  %21752 = load i32, ptr %8, align 4, !tbaa !5
  %21753 = mul nsw i32 60, %21752
  %21754 = add nsw i32 %21751, %21753
  %21755 = sext i32 %21754 to i64
  %21756 = getelementptr inbounds double, ptr %21750, i64 %21755
  %21757 = load double, ptr %21756, align 8, !tbaa !11
  %21758 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %21757, double %21749)
  %21759 = load ptr, ptr %7, align 8, !tbaa !9
  %21760 = load i32, ptr %12, align 4, !tbaa !5
  %21761 = load i32, ptr %8, align 4, !tbaa !5
  %21762 = mul nsw i32 61, %21761
  %21763 = add nsw i32 %21760, %21762
  %21764 = sext i32 %21763 to i64
  %21765 = getelementptr inbounds double, ptr %21759, i64 %21764
  %21766 = load double, ptr %21765, align 8, !tbaa !11
  %21767 = call double @llvm.fmuladd.f64(double 0x3CB344C6E34858EB, double %21766, double %21758)
  %21768 = load ptr, ptr %7, align 8, !tbaa !9
  %21769 = load i32, ptr %12, align 4, !tbaa !5
  %21770 = load i32, ptr %8, align 4, !tbaa !5
  %21771 = mul nsw i32 62, %21770
  %21772 = add nsw i32 %21769, %21771
  %21773 = sext i32 %21772 to i64
  %21774 = getelementptr inbounds double, ptr %21768, i64 %21773
  %21775 = load double, ptr %21774, align 8, !tbaa !11
  %21776 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %21775, double %21767)
  %21777 = load ptr, ptr %7, align 8, !tbaa !9
  %21778 = load i32, ptr %12, align 4, !tbaa !5
  %21779 = load i32, ptr %8, align 4, !tbaa !5
  %21780 = mul nsw i32 63, %21779
  %21781 = add nsw i32 %21778, %21780
  %21782 = sext i32 %21781 to i64
  %21783 = getelementptr inbounds double, ptr %21777, i64 %21782
  %21784 = load double, ptr %21783, align 8, !tbaa !11
  %21785 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %21784, double %21776)
  %21786 = load ptr, ptr %7, align 8, !tbaa !9
  %21787 = load i32, ptr %12, align 4, !tbaa !5
  %21788 = load i32, ptr %8, align 4, !tbaa !5
  %21789 = mul nsw i32 64, %21788
  %21790 = add nsw i32 %21787, %21789
  %21791 = sext i32 %21790 to i64
  %21792 = getelementptr inbounds double, ptr %21786, i64 %21791
  %21793 = load double, ptr %21792, align 8, !tbaa !11
  %21794 = call double @llvm.fmuladd.f64(double 0x3FD6A4D32EB1F718, double %21793, double %21785)
  %21795 = load ptr, ptr %7, align 8, !tbaa !9
  %21796 = load i32, ptr %12, align 4, !tbaa !5
  %21797 = load i32, ptr %8, align 4, !tbaa !5
  %21798 = mul nsw i32 65, %21797
  %21799 = add nsw i32 %21796, %21798
  %21800 = sext i32 %21799 to i64
  %21801 = getelementptr inbounds double, ptr %21795, i64 %21800
  %21802 = load double, ptr %21801, align 8, !tbaa !11
  %21803 = call double @llvm.fmuladd.f64(double 0x3FE3C4545BCF030B, double %21802, double %21794)
  %21804 = load ptr, ptr %7, align 8, !tbaa !9
  %21805 = load i32, ptr %12, align 4, !tbaa !5
  %21806 = load i32, ptr %8, align 4, !tbaa !5
  %21807 = mul nsw i32 66, %21806
  %21808 = add nsw i32 %21805, %21807
  %21809 = sext i32 %21808 to i64
  %21810 = getelementptr inbounds double, ptr %21804, i64 %21809
  %21811 = load double, ptr %21810, align 8, !tbaa !11
  %21812 = call double @llvm.fmuladd.f64(double 0x3FCD5953692F6EA3, double %21811, double %21803)
  %21813 = load ptr, ptr %7, align 8, !tbaa !9
  %21814 = load i32, ptr %12, align 4, !tbaa !5
  %21815 = load i32, ptr %8, align 4, !tbaa !5
  %21816 = mul nsw i32 67, %21815
  %21817 = add nsw i32 %21814, %21816
  %21818 = sext i32 %21817 to i64
  %21819 = getelementptr inbounds double, ptr %21813, i64 %21818
  %21820 = load double, ptr %21819, align 8, !tbaa !11
  %21821 = call double @llvm.fmuladd.f64(double 0xBF9102DA00B18A2C, double %21820, double %21812)
  store double %21821, ptr %11, align 8, !tbaa !11
  %21822 = load double, ptr %11, align 8, !tbaa !11
  %21823 = load ptr, ptr %9, align 8, !tbaa !9
  %21824 = load i32, ptr %12, align 4, !tbaa !5
  %21825 = load i32, ptr %10, align 4, !tbaa !5
  %21826 = mul nsw i32 76, %21825
  %21827 = add nsw i32 %21824, %21826
  %21828 = sext i32 %21827 to i64
  %21829 = getelementptr inbounds double, ptr %21823, i64 %21828
  store double %21822, ptr %21829, align 8, !tbaa !11
  %21830 = load ptr, ptr %7, align 8, !tbaa !9
  %21831 = load i32, ptr %12, align 4, !tbaa !5
  %21832 = load i32, ptr %8, align 4, !tbaa !5
  %21833 = mul nsw i32 20, %21832
  %21834 = add nsw i32 %21831, %21833
  %21835 = sext i32 %21834 to i64
  %21836 = getelementptr inbounds double, ptr %21830, i64 %21835
  %21837 = load double, ptr %21836, align 8, !tbaa !11
  %21838 = load ptr, ptr %7, align 8, !tbaa !9
  %21839 = load i32, ptr %12, align 4, !tbaa !5
  %21840 = load i32, ptr %8, align 4, !tbaa !5
  %21841 = mul nsw i32 21, %21840
  %21842 = add nsw i32 %21839, %21841
  %21843 = sext i32 %21842 to i64
  %21844 = getelementptr inbounds double, ptr %21838, i64 %21843
  %21845 = load double, ptr %21844, align 8, !tbaa !11
  %21846 = fmul double 0xBCA2000000000000, %21845
  %21847 = call double @llvm.fmuladd.f64(double 0x3C82000000000000, double %21837, double %21846)
  %21848 = load ptr, ptr %7, align 8, !tbaa !9
  %21849 = load i32, ptr %12, align 4, !tbaa !5
  %21850 = load i32, ptr %8, align 4, !tbaa !5
  %21851 = mul nsw i32 22, %21850
  %21852 = add nsw i32 %21849, %21851
  %21853 = sext i32 %21852 to i64
  %21854 = getelementptr inbounds double, ptr %21848, i64 %21853
  %21855 = load double, ptr %21854, align 8, !tbaa !11
  %21856 = call double @llvm.fmuladd.f64(double 0xBCC5000000000000, double %21855, double %21847)
  %21857 = load ptr, ptr %7, align 8, !tbaa !9
  %21858 = load i32, ptr %12, align 4, !tbaa !5
  %21859 = load i32, ptr %8, align 4, !tbaa !5
  %21860 = mul nsw i32 23, %21859
  %21861 = add nsw i32 %21858, %21860
  %21862 = sext i32 %21861 to i64
  %21863 = getelementptr inbounds double, ptr %21857, i64 %21862
  %21864 = load double, ptr %21863, align 8, !tbaa !11
  %21865 = call double @llvm.fmuladd.f64(double 0xBCA0800000000001, double %21864, double %21856)
  %21866 = load ptr, ptr %7, align 8, !tbaa !9
  %21867 = load i32, ptr %12, align 4, !tbaa !5
  %21868 = load i32, ptr %8, align 4, !tbaa !5
  %21869 = mul nsw i32 24, %21868
  %21870 = add nsw i32 %21867, %21869
  %21871 = sext i32 %21870 to i64
  %21872 = getelementptr inbounds double, ptr %21866, i64 %21871
  %21873 = load double, ptr %21872, align 8, !tbaa !11
  %21874 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %21873, double %21865)
  %21875 = load ptr, ptr %7, align 8, !tbaa !9
  %21876 = load i32, ptr %12, align 4, !tbaa !5
  %21877 = load i32, ptr %8, align 4, !tbaa !5
  %21878 = mul nsw i32 25, %21877
  %21879 = add nsw i32 %21876, %21878
  %21880 = sext i32 %21879 to i64
  %21881 = getelementptr inbounds double, ptr %21875, i64 %21880
  %21882 = load double, ptr %21881, align 8, !tbaa !11
  %21883 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %21882, double %21874)
  %21884 = load ptr, ptr %7, align 8, !tbaa !9
  %21885 = load i32, ptr %12, align 4, !tbaa !5
  %21886 = load i32, ptr %8, align 4, !tbaa !5
  %21887 = mul nsw i32 26, %21886
  %21888 = add nsw i32 %21885, %21887
  %21889 = sext i32 %21888 to i64
  %21890 = getelementptr inbounds double, ptr %21884, i64 %21889
  %21891 = load double, ptr %21890, align 8, !tbaa !11
  %21892 = call double @llvm.fmuladd.f64(double 0xBCBF000000000001, double %21891, double %21883)
  %21893 = load ptr, ptr %7, align 8, !tbaa !9
  %21894 = load i32, ptr %12, align 4, !tbaa !5
  %21895 = load i32, ptr %8, align 4, !tbaa !5
  %21896 = mul nsw i32 27, %21895
  %21897 = add nsw i32 %21894, %21896
  %21898 = sext i32 %21897 to i64
  %21899 = getelementptr inbounds double, ptr %21893, i64 %21898
  %21900 = load double, ptr %21899, align 8, !tbaa !11
  %21901 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %21900, double %21892)
  %21902 = load ptr, ptr %7, align 8, !tbaa !9
  %21903 = load i32, ptr %12, align 4, !tbaa !5
  %21904 = load i32, ptr %8, align 4, !tbaa !5
  %21905 = mul nsw i32 28, %21904
  %21906 = add nsw i32 %21903, %21905
  %21907 = sext i32 %21906 to i64
  %21908 = getelementptr inbounds double, ptr %21902, i64 %21907
  %21909 = load double, ptr %21908, align 8, !tbaa !11
  %21910 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %21909, double %21901)
  %21911 = load ptr, ptr %7, align 8, !tbaa !9
  %21912 = load i32, ptr %12, align 4, !tbaa !5
  %21913 = load i32, ptr %8, align 4, !tbaa !5
  %21914 = mul nsw i32 30, %21913
  %21915 = add nsw i32 %21912, %21914
  %21916 = sext i32 %21915 to i64
  %21917 = getelementptr inbounds double, ptr %21911, i64 %21916
  %21918 = load double, ptr %21917, align 8, !tbaa !11
  %21919 = call double @llvm.fmuladd.f64(double 0xBCC0800000000000, double %21918, double %21910)
  %21920 = load ptr, ptr %7, align 8, !tbaa !9
  %21921 = load i32, ptr %12, align 4, !tbaa !5
  %21922 = load i32, ptr %8, align 4, !tbaa !5
  %21923 = mul nsw i32 31, %21922
  %21924 = add nsw i32 %21921, %21923
  %21925 = sext i32 %21924 to i64
  %21926 = getelementptr inbounds double, ptr %21920, i64 %21925
  %21927 = load double, ptr %21926, align 8, !tbaa !11
  %21928 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %21927, double %21919)
  %21929 = load ptr, ptr %7, align 8, !tbaa !9
  %21930 = load i32, ptr %12, align 4, !tbaa !5
  %21931 = load i32, ptr %8, align 4, !tbaa !5
  %21932 = mul nsw i32 32, %21931
  %21933 = add nsw i32 %21930, %21932
  %21934 = sext i32 %21933 to i64
  %21935 = getelementptr inbounds double, ptr %21929, i64 %21934
  %21936 = load double, ptr %21935, align 8, !tbaa !11
  %21937 = call double @llvm.fmuladd.f64(double 0x3FC1964E14FA3C4C, double %21936, double %21928)
  %21938 = load ptr, ptr %7, align 8, !tbaa !9
  %21939 = load i32, ptr %12, align 4, !tbaa !5
  %21940 = load i32, ptr %8, align 4, !tbaa !5
  %21941 = mul nsw i32 33, %21940
  %21942 = add nsw i32 %21939, %21941
  %21943 = sext i32 %21942 to i64
  %21944 = getelementptr inbounds double, ptr %21938, i64 %21943
  %21945 = load double, ptr %21944, align 8, !tbaa !11
  %21946 = call double @llvm.fmuladd.f64(double 0xBFD7BAC3393ADDC0, double %21945, double %21937)
  %21947 = load ptr, ptr %7, align 8, !tbaa !9
  %21948 = load i32, ptr %12, align 4, !tbaa !5
  %21949 = load i32, ptr %8, align 4, !tbaa !5
  %21950 = mul nsw i32 34, %21949
  %21951 = add nsw i32 %21948, %21950
  %21952 = sext i32 %21951 to i64
  %21953 = getelementptr inbounds double, ptr %21947, i64 %21952
  %21954 = load double, ptr %21953, align 8, !tbaa !11
  %21955 = call double @llvm.fmuladd.f64(double 0xC01043858A1F5994, double %21954, double %21946)
  %21956 = load ptr, ptr %7, align 8, !tbaa !9
  %21957 = load i32, ptr %12, align 4, !tbaa !5
  %21958 = load i32, ptr %8, align 4, !tbaa !5
  %21959 = mul nsw i32 35, %21958
  %21960 = add nsw i32 %21957, %21959
  %21961 = sext i32 %21960 to i64
  %21962 = getelementptr inbounds double, ptr %21956, i64 %21961
  %21963 = load double, ptr %21962, align 8, !tbaa !11
  %21964 = call double @llvm.fmuladd.f64(double 0xBFD7671404765136, double %21963, double %21955)
  %21965 = load ptr, ptr %7, align 8, !tbaa !9
  %21966 = load i32, ptr %12, align 4, !tbaa !5
  %21967 = load i32, ptr %8, align 4, !tbaa !5
  %21968 = mul nsw i32 52, %21967
  %21969 = add nsw i32 %21966, %21968
  %21970 = sext i32 %21969 to i64
  %21971 = getelementptr inbounds double, ptr %21965, i64 %21970
  %21972 = load double, ptr %21971, align 8, !tbaa !11
  %21973 = call double @llvm.fmuladd.f64(double 0xBCA13C58A812EA8E, double %21972, double %21964)
  %21974 = load ptr, ptr %7, align 8, !tbaa !9
  %21975 = load i32, ptr %12, align 4, !tbaa !5
  %21976 = load i32, ptr %8, align 4, !tbaa !5
  %21977 = mul nsw i32 53, %21976
  %21978 = add nsw i32 %21975, %21977
  %21979 = sext i32 %21978 to i64
  %21980 = getelementptr inbounds double, ptr %21974, i64 %21979
  %21981 = load double, ptr %21980, align 8, !tbaa !11
  %21982 = call double @llvm.fmuladd.f64(double 0xBCA6023A11B1C128, double %21981, double %21973)
  %21983 = load ptr, ptr %7, align 8, !tbaa !9
  %21984 = load i32, ptr %12, align 4, !tbaa !5
  %21985 = load i32, ptr %8, align 4, !tbaa !5
  %21986 = mul nsw i32 54, %21985
  %21987 = add nsw i32 %21984, %21986
  %21988 = sext i32 %21987 to i64
  %21989 = getelementptr inbounds double, ptr %21983, i64 %21988
  %21990 = load double, ptr %21989, align 8, !tbaa !11
  %21991 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %21990, double %21982)
  %21992 = load ptr, ptr %7, align 8, !tbaa !9
  %21993 = load i32, ptr %12, align 4, !tbaa !5
  %21994 = load i32, ptr %8, align 4, !tbaa !5
  %21995 = mul nsw i32 56, %21994
  %21996 = add nsw i32 %21993, %21995
  %21997 = sext i32 %21996 to i64
  %21998 = getelementptr inbounds double, ptr %21992, i64 %21997
  %21999 = load double, ptr %21998, align 8, !tbaa !11
  %22000 = call double @llvm.fmuladd.f64(double 0x3CA344C6E34858EB, double %21999, double %21991)
  %22001 = load ptr, ptr %7, align 8, !tbaa !9
  %22002 = load i32, ptr %12, align 4, !tbaa !5
  %22003 = load i32, ptr %8, align 4, !tbaa !5
  %22004 = mul nsw i32 57, %22003
  %22005 = add nsw i32 %22002, %22004
  %22006 = sext i32 %22005 to i64
  %22007 = getelementptr inbounds double, ptr %22001, i64 %22006
  %22008 = load double, ptr %22007, align 8, !tbaa !11
  %22009 = call double @llvm.fmuladd.f64(double 0x3C73CC8A99AF5453, double %22008, double %22000)
  %22010 = load ptr, ptr %7, align 8, !tbaa !9
  %22011 = load i32, ptr %12, align 4, !tbaa !5
  %22012 = load i32, ptr %8, align 4, !tbaa !5
  %22013 = mul nsw i32 58, %22012
  %22014 = add nsw i32 %22011, %22013
  %22015 = sext i32 %22014 to i64
  %22016 = getelementptr inbounds double, ptr %22010, i64 %22015
  %22017 = load double, ptr %22016, align 8, !tbaa !11
  %22018 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %22017, double %22009)
  %22019 = load ptr, ptr %7, align 8, !tbaa !9
  %22020 = load i32, ptr %12, align 4, !tbaa !5
  %22021 = load i32, ptr %8, align 4, !tbaa !5
  %22022 = mul nsw i32 59, %22021
  %22023 = add nsw i32 %22020, %22022
  %22024 = sext i32 %22023 to i64
  %22025 = getelementptr inbounds double, ptr %22019, i64 %22024
  %22026 = load double, ptr %22025, align 8, !tbaa !11
  %22027 = call double @llvm.fmuladd.f64(double 0xBCA0F876CCDF6CD8, double %22026, double %22018)
  %22028 = load ptr, ptr %7, align 8, !tbaa !9
  %22029 = load i32, ptr %12, align 4, !tbaa !5
  %22030 = load i32, ptr %8, align 4, !tbaa !5
  %22031 = mul nsw i32 60, %22030
  %22032 = add nsw i32 %22029, %22031
  %22033 = sext i32 %22032 to i64
  %22034 = getelementptr inbounds double, ptr %22028, i64 %22033
  %22035 = load double, ptr %22034, align 8, !tbaa !11
  %22036 = call double @llvm.fmuladd.f64(double 0xBCA344C6E34858EB, double %22035, double %22027)
  %22037 = load ptr, ptr %7, align 8, !tbaa !9
  %22038 = load i32, ptr %12, align 4, !tbaa !5
  %22039 = load i32, ptr %8, align 4, !tbaa !5
  %22040 = mul nsw i32 61, %22039
  %22041 = add nsw i32 %22038, %22040
  %22042 = sext i32 %22041 to i64
  %22043 = getelementptr inbounds double, ptr %22037, i64 %22042
  %22044 = load double, ptr %22043, align 8, !tbaa !11
  %22045 = call double @llvm.fmuladd.f64(double 0x3C91AD7BC01366B7, double %22044, double %22036)
  %22046 = load ptr, ptr %7, align 8, !tbaa !9
  %22047 = load i32, ptr %12, align 4, !tbaa !5
  %22048 = load i32, ptr %8, align 4, !tbaa !5
  %22049 = mul nsw i32 62, %22048
  %22050 = add nsw i32 %22047, %22049
  %22051 = sext i32 %22050 to i64
  %22052 = getelementptr inbounds double, ptr %22046, i64 %22051
  %22053 = load double, ptr %22052, align 8, !tbaa !11
  %22054 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %22053, double %22045)
  %22055 = load ptr, ptr %7, align 8, !tbaa !9
  %22056 = load i32, ptr %12, align 4, !tbaa !5
  %22057 = load i32, ptr %8, align 4, !tbaa !5
  %22058 = mul nsw i32 63, %22057
  %22059 = add nsw i32 %22056, %22058
  %22060 = sext i32 %22059 to i64
  %22061 = getelementptr inbounds double, ptr %22055, i64 %22060
  %22062 = load double, ptr %22061, align 8, !tbaa !11
  %22063 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %22062, double %22054)
  %22064 = load ptr, ptr %7, align 8, !tbaa !9
  %22065 = load i32, ptr %12, align 4, !tbaa !5
  %22066 = load i32, ptr %8, align 4, !tbaa !5
  %22067 = mul nsw i32 64, %22066
  %22068 = add nsw i32 %22065, %22067
  %22069 = sext i32 %22068 to i64
  %22070 = getelementptr inbounds double, ptr %22064, i64 %22069
  %22071 = load double, ptr %22070, align 8, !tbaa !11
  %22072 = call double @llvm.fmuladd.f64(double 0xBFE7007BFD8FD859, double %22071, double %22063)
  %22073 = load ptr, ptr %7, align 8, !tbaa !9
  %22074 = load i32, ptr %12, align 4, !tbaa !5
  %22075 = load i32, ptr %8, align 4, !tbaa !5
  %22076 = mul nsw i32 65, %22075
  %22077 = add nsw i32 %22074, %22076
  %22078 = sext i32 %22077 to i64
  %22079 = getelementptr inbounds double, ptr %22073, i64 %22078
  %22080 = load double, ptr %22079, align 8, !tbaa !11
  %22081 = call double @llvm.fmuladd.f64(double 0xBFE66643AEED3706, double %22080, double %22072)
  %22082 = load ptr, ptr %7, align 8, !tbaa !9
  %22083 = load i32, ptr %12, align 4, !tbaa !5
  %22084 = load i32, ptr %8, align 4, !tbaa !5
  %22085 = mul nsw i32 66, %22084
  %22086 = add nsw i32 %22083, %22085
  %22087 = sext i32 %22086 to i64
  %22088 = getelementptr inbounds double, ptr %22082, i64 %22087
  %22089 = load double, ptr %22088, align 8, !tbaa !11
  %22090 = call double @llvm.fmuladd.f64(double 0x3FAD5B74B5F10E94, double %22089, double %22081)
  %22091 = load ptr, ptr %7, align 8, !tbaa !9
  %22092 = load i32, ptr %12, align 4, !tbaa !5
  %22093 = load i32, ptr %8, align 4, !tbaa !5
  %22094 = mul nsw i32 67, %22093
  %22095 = add nsw i32 %22092, %22094
  %22096 = sext i32 %22095 to i64
  %22097 = getelementptr inbounds double, ptr %22091, i64 %22096
  %22098 = load double, ptr %22097, align 8, !tbaa !11
  %22099 = call double @llvm.fmuladd.f64(double 0x3FA3F41B0E87BFBB, double %22098, double %22090)
  store double %22099, ptr %11, align 8, !tbaa !11
  %22100 = load double, ptr %11, align 8, !tbaa !11
  %22101 = load ptr, ptr %9, align 8, !tbaa !9
  %22102 = load i32, ptr %12, align 4, !tbaa !5
  %22103 = load i32, ptr %10, align 4, !tbaa !5
  %22104 = mul nsw i32 77, %22103
  %22105 = add nsw i32 %22102, %22104
  %22106 = sext i32 %22105 to i64
  %22107 = getelementptr inbounds double, ptr %22101, i64 %22106
  store double %22100, ptr %22107, align 8, !tbaa !11
  %22108 = load ptr, ptr %7, align 8, !tbaa !9
  %22109 = load i32, ptr %12, align 4, !tbaa !5
  %22110 = load i32, ptr %8, align 4, !tbaa !5
  %22111 = mul nsw i32 20, %22110
  %22112 = add nsw i32 %22109, %22111
  %22113 = sext i32 %22112 to i64
  %22114 = getelementptr inbounds double, ptr %22108, i64 %22113
  %22115 = load double, ptr %22114, align 8, !tbaa !11
  %22116 = load ptr, ptr %7, align 8, !tbaa !9
  %22117 = load i32, ptr %12, align 4, !tbaa !5
  %22118 = load i32, ptr %8, align 4, !tbaa !5
  %22119 = mul nsw i32 21, %22118
  %22120 = add nsw i32 %22117, %22119
  %22121 = sext i32 %22120 to i64
  %22122 = getelementptr inbounds double, ptr %22116, i64 %22121
  %22123 = load double, ptr %22122, align 8, !tbaa !11
  %22124 = fmul double 0xBC70000000000001, %22123
  %22125 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %22115, double %22124)
  %22126 = load ptr, ptr %7, align 8, !tbaa !9
  %22127 = load i32, ptr %12, align 4, !tbaa !5
  %22128 = load i32, ptr %8, align 4, !tbaa !5
  %22129 = mul nsw i32 22, %22128
  %22130 = add nsw i32 %22127, %22129
  %22131 = sext i32 %22130 to i64
  %22132 = getelementptr inbounds double, ptr %22126, i64 %22131
  %22133 = load double, ptr %22132, align 8, !tbaa !11
  %22134 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %22133, double %22125)
  %22135 = load ptr, ptr %7, align 8, !tbaa !9
  %22136 = load i32, ptr %12, align 4, !tbaa !5
  %22137 = load i32, ptr %8, align 4, !tbaa !5
  %22138 = mul nsw i32 23, %22137
  %22139 = add nsw i32 %22136, %22138
  %22140 = sext i32 %22139 to i64
  %22141 = getelementptr inbounds double, ptr %22135, i64 %22140
  %22142 = load double, ptr %22141, align 8, !tbaa !11
  %22143 = call double @llvm.fmuladd.f64(double 0xBC96000000000000, double %22142, double %22134)
  %22144 = load ptr, ptr %7, align 8, !tbaa !9
  %22145 = load i32, ptr %12, align 4, !tbaa !5
  %22146 = load i32, ptr %8, align 4, !tbaa !5
  %22147 = mul nsw i32 24, %22146
  %22148 = add nsw i32 %22145, %22147
  %22149 = sext i32 %22148 to i64
  %22150 = getelementptr inbounds double, ptr %22144, i64 %22149
  %22151 = load double, ptr %22150, align 8, !tbaa !11
  %22152 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %22151, double %22143)
  %22153 = load ptr, ptr %7, align 8, !tbaa !9
  %22154 = load i32, ptr %12, align 4, !tbaa !5
  %22155 = load i32, ptr %8, align 4, !tbaa !5
  %22156 = mul nsw i32 25, %22155
  %22157 = add nsw i32 %22154, %22156
  %22158 = sext i32 %22157 to i64
  %22159 = getelementptr inbounds double, ptr %22153, i64 %22158
  %22160 = load double, ptr %22159, align 8, !tbaa !11
  %22161 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %22160, double %22152)
  %22162 = load ptr, ptr %7, align 8, !tbaa !9
  %22163 = load i32, ptr %12, align 4, !tbaa !5
  %22164 = load i32, ptr %8, align 4, !tbaa !5
  %22165 = mul nsw i32 26, %22164
  %22166 = add nsw i32 %22163, %22165
  %22167 = sext i32 %22166 to i64
  %22168 = getelementptr inbounds double, ptr %22162, i64 %22167
  %22169 = load double, ptr %22168, align 8, !tbaa !11
  %22170 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %22169, double %22161)
  %22171 = load ptr, ptr %7, align 8, !tbaa !9
  %22172 = load i32, ptr %12, align 4, !tbaa !5
  %22173 = load i32, ptr %8, align 4, !tbaa !5
  %22174 = mul nsw i32 27, %22173
  %22175 = add nsw i32 %22172, %22174
  %22176 = sext i32 %22175 to i64
  %22177 = getelementptr inbounds double, ptr %22171, i64 %22176
  %22178 = load double, ptr %22177, align 8, !tbaa !11
  %22179 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %22178, double %22170)
  %22180 = load ptr, ptr %7, align 8, !tbaa !9
  %22181 = load i32, ptr %12, align 4, !tbaa !5
  %22182 = load i32, ptr %8, align 4, !tbaa !5
  %22183 = mul nsw i32 28, %22182
  %22184 = add nsw i32 %22181, %22183
  %22185 = sext i32 %22184 to i64
  %22186 = getelementptr inbounds double, ptr %22180, i64 %22185
  %22187 = load double, ptr %22186, align 8, !tbaa !11
  %22188 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %22187, double %22179)
  %22189 = load ptr, ptr %7, align 8, !tbaa !9
  %22190 = load i32, ptr %12, align 4, !tbaa !5
  %22191 = load i32, ptr %8, align 4, !tbaa !5
  %22192 = mul nsw i32 29, %22191
  %22193 = add nsw i32 %22190, %22192
  %22194 = sext i32 %22193 to i64
  %22195 = getelementptr inbounds double, ptr %22189, i64 %22194
  %22196 = load double, ptr %22195, align 8, !tbaa !11
  %22197 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %22196, double %22188)
  %22198 = load ptr, ptr %7, align 8, !tbaa !9
  %22199 = load i32, ptr %12, align 4, !tbaa !5
  %22200 = load i32, ptr %8, align 4, !tbaa !5
  %22201 = mul nsw i32 30, %22200
  %22202 = add nsw i32 %22199, %22201
  %22203 = sext i32 %22202 to i64
  %22204 = getelementptr inbounds double, ptr %22198, i64 %22203
  %22205 = load double, ptr %22204, align 8, !tbaa !11
  %22206 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %22205, double %22197)
  %22207 = load ptr, ptr %7, align 8, !tbaa !9
  %22208 = load i32, ptr %12, align 4, !tbaa !5
  %22209 = load i32, ptr %8, align 4, !tbaa !5
  %22210 = mul nsw i32 31, %22209
  %22211 = add nsw i32 %22208, %22210
  %22212 = sext i32 %22211 to i64
  %22213 = getelementptr inbounds double, ptr %22207, i64 %22212
  %22214 = load double, ptr %22213, align 8, !tbaa !11
  %22215 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %22214, double %22206)
  %22216 = load ptr, ptr %7, align 8, !tbaa !9
  %22217 = load i32, ptr %12, align 4, !tbaa !5
  %22218 = load i32, ptr %8, align 4, !tbaa !5
  %22219 = mul nsw i32 32, %22218
  %22220 = add nsw i32 %22217, %22219
  %22221 = sext i32 %22220 to i64
  %22222 = getelementptr inbounds double, ptr %22216, i64 %22221
  %22223 = load double, ptr %22222, align 8, !tbaa !11
  %22224 = call double @llvm.fmuladd.f64(double 0xBFE002F9665DF3D7, double %22223, double %22215)
  %22225 = load ptr, ptr %7, align 8, !tbaa !9
  %22226 = load i32, ptr %12, align 4, !tbaa !5
  %22227 = load i32, ptr %8, align 4, !tbaa !5
  %22228 = mul nsw i32 33, %22227
  %22229 = add nsw i32 %22226, %22228
  %22230 = sext i32 %22229 to i64
  %22231 = getelementptr inbounds double, ptr %22225, i64 %22230
  %22232 = load double, ptr %22231, align 8, !tbaa !11
  %22233 = call double @llvm.fmuladd.f64(double 0xBFEBF462FB348EF3, double %22232, double %22224)
  %22234 = load ptr, ptr %7, align 8, !tbaa !9
  %22235 = load i32, ptr %12, align 4, !tbaa !5
  %22236 = load i32, ptr %8, align 4, !tbaa !5
  %22237 = mul nsw i32 34, %22236
  %22238 = add nsw i32 %22235, %22237
  %22239 = sext i32 %22238 to i64
  %22240 = getelementptr inbounds double, ptr %22234, i64 %22239
  %22241 = load double, ptr %22240, align 8, !tbaa !11
  %22242 = call double @llvm.fmuladd.f64(double 0xBFD4C0B9406BCBCD, double %22241, double %22233)
  %22243 = load ptr, ptr %7, align 8, !tbaa !9
  %22244 = load i32, ptr %12, align 4, !tbaa !5
  %22245 = load i32, ptr %8, align 4, !tbaa !5
  %22246 = mul nsw i32 35, %22245
  %22247 = add nsw i32 %22244, %22246
  %22248 = sext i32 %22247 to i64
  %22249 = getelementptr inbounds double, ptr %22243, i64 %22248
  %22250 = load double, ptr %22249, align 8, !tbaa !11
  %22251 = call double @llvm.fmuladd.f64(double 0x3F980EB0AE1D4727, double %22250, double %22242)
  %22252 = load ptr, ptr %7, align 8, !tbaa !9
  %22253 = load i32, ptr %12, align 4, !tbaa !5
  %22254 = load i32, ptr %8, align 4, !tbaa !5
  %22255 = mul nsw i32 52, %22254
  %22256 = add nsw i32 %22253, %22255
  %22257 = sext i32 %22256 to i64
  %22258 = getelementptr inbounds double, ptr %22252, i64 %22257
  %22259 = load double, ptr %22258, align 8, !tbaa !11
  %22260 = call double @llvm.fmuladd.f64(double 0x3C6F1CD9CCEEF238, double %22259, double %22251)
  %22261 = load ptr, ptr %7, align 8, !tbaa !9
  %22262 = load i32, ptr %12, align 4, !tbaa !5
  %22263 = load i32, ptr %8, align 4, !tbaa !5
  %22264 = mul nsw i32 53, %22263
  %22265 = add nsw i32 %22262, %22264
  %22266 = sext i32 %22265 to i64
  %22267 = getelementptr inbounds double, ptr %22261, i64 %22266
  %22268 = load double, ptr %22267, align 8, !tbaa !11
  %22269 = call double @llvm.fmuladd.f64(double 0x3C8974B2334F2346, double %22268, double %22260)
  %22270 = load ptr, ptr %7, align 8, !tbaa !9
  %22271 = load i32, ptr %12, align 4, !tbaa !5
  %22272 = load i32, ptr %8, align 4, !tbaa !5
  %22273 = mul nsw i32 54, %22272
  %22274 = add nsw i32 %22271, %22273
  %22275 = sext i32 %22274 to i64
  %22276 = getelementptr inbounds double, ptr %22270, i64 %22275
  %22277 = load double, ptr %22276, align 8, !tbaa !11
  %22278 = call double @llvm.fmuladd.f64(double 0xBCAADEBC19B71703, double %22277, double %22269)
  %22279 = load ptr, ptr %7, align 8, !tbaa !9
  %22280 = load i32, ptr %12, align 4, !tbaa !5
  %22281 = load i32, ptr %8, align 4, !tbaa !5
  %22282 = mul nsw i32 55, %22281
  %22283 = add nsw i32 %22280, %22282
  %22284 = sext i32 %22283 to i64
  %22285 = getelementptr inbounds double, ptr %22279, i64 %22284
  %22286 = load double, ptr %22285, align 8, !tbaa !11
  %22287 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %22286, double %22278)
  %22288 = load ptr, ptr %7, align 8, !tbaa !9
  %22289 = load i32, ptr %12, align 4, !tbaa !5
  %22290 = load i32, ptr %8, align 4, !tbaa !5
  %22291 = mul nsw i32 56, %22290
  %22292 = add nsw i32 %22289, %22291
  %22293 = sext i32 %22292 to i64
  %22294 = getelementptr inbounds double, ptr %22288, i64 %22293
  %22295 = load double, ptr %22294, align 8, !tbaa !11
  %22296 = call double @llvm.fmuladd.f64(double 0x3C60F876CCDF6CD9, double %22295, double %22287)
  %22297 = load ptr, ptr %7, align 8, !tbaa !9
  %22298 = load i32, ptr %12, align 4, !tbaa !5
  %22299 = load i32, ptr %8, align 4, !tbaa !5
  %22300 = mul nsw i32 57, %22299
  %22301 = add nsw i32 %22298, %22300
  %22302 = sext i32 %22301 to i64
  %22303 = getelementptr inbounds double, ptr %22297, i64 %22302
  %22304 = load double, ptr %22303, align 8, !tbaa !11
  %22305 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %22304, double %22296)
  %22306 = load ptr, ptr %7, align 8, !tbaa !9
  %22307 = load i32, ptr %12, align 4, !tbaa !5
  %22308 = load i32, ptr %8, align 4, !tbaa !5
  %22309 = mul nsw i32 58, %22308
  %22310 = add nsw i32 %22307, %22309
  %22311 = sext i32 %22310 to i64
  %22312 = getelementptr inbounds double, ptr %22306, i64 %22311
  %22313 = load double, ptr %22312, align 8, !tbaa !11
  %22314 = call double @llvm.fmuladd.f64(double 0xBCA6A09E667F3BCC, double %22313, double %22305)
  %22315 = load ptr, ptr %7, align 8, !tbaa !9
  %22316 = load i32, ptr %12, align 4, !tbaa !5
  %22317 = load i32, ptr %8, align 4, !tbaa !5
  %22318 = mul nsw i32 59, %22317
  %22319 = add nsw i32 %22316, %22318
  %22320 = sext i32 %22319 to i64
  %22321 = getelementptr inbounds double, ptr %22315, i64 %22320
  %22322 = load double, ptr %22321, align 8, !tbaa !11
  %22323 = call double @llvm.fmuladd.f64(double 0xBCA6A09E667F3BCC, double %22322, double %22314)
  %22324 = load ptr, ptr %7, align 8, !tbaa !9
  %22325 = load i32, ptr %12, align 4, !tbaa !5
  %22326 = load i32, ptr %8, align 4, !tbaa !5
  %22327 = mul nsw i32 60, %22326
  %22328 = add nsw i32 %22325, %22327
  %22329 = sext i32 %22328 to i64
  %22330 = getelementptr inbounds double, ptr %22324, i64 %22329
  %22331 = load double, ptr %22330, align 8, !tbaa !11
  %22332 = call double @llvm.fmuladd.f64(double 0x3C826280B3476096, double %22331, double %22323)
  %22333 = load ptr, ptr %7, align 8, !tbaa !9
  %22334 = load i32, ptr %12, align 4, !tbaa !5
  %22335 = load i32, ptr %8, align 4, !tbaa !5
  %22336 = mul nsw i32 61, %22335
  %22337 = add nsw i32 %22334, %22336
  %22338 = sext i32 %22337 to i64
  %22339 = getelementptr inbounds double, ptr %22333, i64 %22338
  %22340 = load double, ptr %22339, align 8, !tbaa !11
  %22341 = call double @llvm.fmuladd.f64(double 0x3C8C48C6001F0AC0, double %22340, double %22332)
  %22342 = load ptr, ptr %7, align 8, !tbaa !9
  %22343 = load i32, ptr %12, align 4, !tbaa !5
  %22344 = load i32, ptr %8, align 4, !tbaa !5
  %22345 = mul nsw i32 63, %22344
  %22346 = add nsw i32 %22343, %22345
  %22347 = sext i32 %22346 to i64
  %22348 = getelementptr inbounds double, ptr %22342, i64 %22347
  %22349 = load double, ptr %22348, align 8, !tbaa !11
  %22350 = call double @llvm.fmuladd.f64(double 0x3C96A09E667F3BCC, double %22349, double %22341)
  %22351 = load ptr, ptr %7, align 8, !tbaa !9
  %22352 = load i32, ptr %12, align 4, !tbaa !5
  %22353 = load i32, ptr %8, align 4, !tbaa !5
  %22354 = mul nsw i32 64, %22353
  %22355 = add nsw i32 %22352, %22354
  %22356 = sext i32 %22355 to i64
  %22357 = getelementptr inbounds double, ptr %22351, i64 %22356
  %22358 = load double, ptr %22357, align 8, !tbaa !11
  %22359 = call double @llvm.fmuladd.f64(double 0x3FA3F41B0E87BFEB, double %22358, double %22350)
  %22360 = load ptr, ptr %7, align 8, !tbaa !9
  %22361 = load i32, ptr %12, align 4, !tbaa !5
  %22362 = load i32, ptr %8, align 4, !tbaa !5
  %22363 = mul nsw i32 65, %22362
  %22364 = add nsw i32 %22361, %22363
  %22365 = sext i32 %22364 to i64
  %22366 = getelementptr inbounds double, ptr %22360, i64 %22365
  %22367 = load double, ptr %22366, align 8, !tbaa !11
  %22368 = call double @llvm.fmuladd.f64(double 0x3FAD5B74B5F10E92, double %22367, double %22359)
  %22369 = load ptr, ptr %7, align 8, !tbaa !9
  %22370 = load i32, ptr %12, align 4, !tbaa !5
  %22371 = load i32, ptr %8, align 4, !tbaa !5
  %22372 = mul nsw i32 66, %22371
  %22373 = add nsw i32 %22370, %22372
  %22374 = sext i32 %22373 to i64
  %22375 = getelementptr inbounds double, ptr %22369, i64 %22374
  %22376 = load double, ptr %22375, align 8, !tbaa !11
  %22377 = call double @llvm.fmuladd.f64(double 0xBFE66643AEED36FA, double %22376, double %22368)
  %22378 = load ptr, ptr %7, align 8, !tbaa !9
  %22379 = load i32, ptr %12, align 4, !tbaa !5
  %22380 = load i32, ptr %8, align 4, !tbaa !5
  %22381 = mul nsw i32 67, %22380
  %22382 = add nsw i32 %22379, %22381
  %22383 = sext i32 %22382 to i64
  %22384 = getelementptr inbounds double, ptr %22378, i64 %22383
  %22385 = load double, ptr %22384, align 8, !tbaa !11
  %22386 = call double @llvm.fmuladd.f64(double 0xBFE7007BFD8FD85B, double %22385, double %22377)
  store double %22386, ptr %11, align 8, !tbaa !11
  %22387 = load double, ptr %11, align 8, !tbaa !11
  %22388 = load ptr, ptr %9, align 8, !tbaa !9
  %22389 = load i32, ptr %12, align 4, !tbaa !5
  %22390 = load i32, ptr %10, align 4, !tbaa !5
  %22391 = mul nsw i32 78, %22390
  %22392 = add nsw i32 %22389, %22391
  %22393 = sext i32 %22392 to i64
  %22394 = getelementptr inbounds double, ptr %22388, i64 %22393
  store double %22387, ptr %22394, align 8, !tbaa !11
  %22395 = load ptr, ptr %7, align 8, !tbaa !9
  %22396 = load i32, ptr %12, align 4, !tbaa !5
  %22397 = load i32, ptr %8, align 4, !tbaa !5
  %22398 = mul nsw i32 20, %22397
  %22399 = add nsw i32 %22396, %22398
  %22400 = sext i32 %22399 to i64
  %22401 = getelementptr inbounds double, ptr %22395, i64 %22400
  %22402 = load double, ptr %22401, align 8, !tbaa !11
  %22403 = load ptr, ptr %7, align 8, !tbaa !9
  %22404 = load i32, ptr %12, align 4, !tbaa !5
  %22405 = load i32, ptr %8, align 4, !tbaa !5
  %22406 = mul nsw i32 21, %22405
  %22407 = add nsw i32 %22404, %22406
  %22408 = sext i32 %22407 to i64
  %22409 = getelementptr inbounds double, ptr %22403, i64 %22408
  %22410 = load double, ptr %22409, align 8, !tbaa !11
  %22411 = fmul double 0xBC88000000000000, %22410
  %22412 = call double @llvm.fmuladd.f64(double 0xBC96000000000000, double %22402, double %22411)
  %22413 = load ptr, ptr %7, align 8, !tbaa !9
  %22414 = load i32, ptr %12, align 4, !tbaa !5
  %22415 = load i32, ptr %8, align 4, !tbaa !5
  %22416 = mul nsw i32 22, %22415
  %22417 = add nsw i32 %22414, %22416
  %22418 = sext i32 %22417 to i64
  %22419 = getelementptr inbounds double, ptr %22413, i64 %22418
  %22420 = load double, ptr %22419, align 8, !tbaa !11
  %22421 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %22420, double %22412)
  %22422 = load ptr, ptr %7, align 8, !tbaa !9
  %22423 = load i32, ptr %12, align 4, !tbaa !5
  %22424 = load i32, ptr %8, align 4, !tbaa !5
  %22425 = mul nsw i32 23, %22424
  %22426 = add nsw i32 %22423, %22425
  %22427 = sext i32 %22426 to i64
  %22428 = getelementptr inbounds double, ptr %22422, i64 %22427
  %22429 = load double, ptr %22428, align 8, !tbaa !11
  %22430 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %22429, double %22421)
  %22431 = load ptr, ptr %7, align 8, !tbaa !9
  %22432 = load i32, ptr %12, align 4, !tbaa !5
  %22433 = load i32, ptr %8, align 4, !tbaa !5
  %22434 = mul nsw i32 24, %22433
  %22435 = add nsw i32 %22432, %22434
  %22436 = sext i32 %22435 to i64
  %22437 = getelementptr inbounds double, ptr %22431, i64 %22436
  %22438 = load double, ptr %22437, align 8, !tbaa !11
  %22439 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %22438, double %22430)
  %22440 = load ptr, ptr %7, align 8, !tbaa !9
  %22441 = load i32, ptr %12, align 4, !tbaa !5
  %22442 = load i32, ptr %8, align 4, !tbaa !5
  %22443 = mul nsw i32 25, %22442
  %22444 = add nsw i32 %22441, %22443
  %22445 = sext i32 %22444 to i64
  %22446 = getelementptr inbounds double, ptr %22440, i64 %22445
  %22447 = load double, ptr %22446, align 8, !tbaa !11
  %22448 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %22447, double %22439)
  %22449 = load ptr, ptr %7, align 8, !tbaa !9
  %22450 = load i32, ptr %12, align 4, !tbaa !5
  %22451 = load i32, ptr %8, align 4, !tbaa !5
  %22452 = mul nsw i32 26, %22451
  %22453 = add nsw i32 %22450, %22452
  %22454 = sext i32 %22453 to i64
  %22455 = getelementptr inbounds double, ptr %22449, i64 %22454
  %22456 = load double, ptr %22455, align 8, !tbaa !11
  %22457 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %22456, double %22448)
  %22458 = load ptr, ptr %7, align 8, !tbaa !9
  %22459 = load i32, ptr %12, align 4, !tbaa !5
  %22460 = load i32, ptr %8, align 4, !tbaa !5
  %22461 = mul nsw i32 27, %22460
  %22462 = add nsw i32 %22459, %22461
  %22463 = sext i32 %22462 to i64
  %22464 = getelementptr inbounds double, ptr %22458, i64 %22463
  %22465 = load double, ptr %22464, align 8, !tbaa !11
  %22466 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %22465, double %22457)
  %22467 = load ptr, ptr %7, align 8, !tbaa !9
  %22468 = load i32, ptr %12, align 4, !tbaa !5
  %22469 = load i32, ptr %8, align 4, !tbaa !5
  %22470 = mul nsw i32 28, %22469
  %22471 = add nsw i32 %22468, %22470
  %22472 = sext i32 %22471 to i64
  %22473 = getelementptr inbounds double, ptr %22467, i64 %22472
  %22474 = load double, ptr %22473, align 8, !tbaa !11
  %22475 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %22474, double %22466)
  %22476 = load ptr, ptr %7, align 8, !tbaa !9
  %22477 = load i32, ptr %12, align 4, !tbaa !5
  %22478 = load i32, ptr %8, align 4, !tbaa !5
  %22479 = mul nsw i32 29, %22478
  %22480 = add nsw i32 %22477, %22479
  %22481 = sext i32 %22480 to i64
  %22482 = getelementptr inbounds double, ptr %22476, i64 %22481
  %22483 = load double, ptr %22482, align 8, !tbaa !11
  %22484 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %22483, double %22475)
  %22485 = load ptr, ptr %7, align 8, !tbaa !9
  %22486 = load i32, ptr %12, align 4, !tbaa !5
  %22487 = load i32, ptr %8, align 4, !tbaa !5
  %22488 = mul nsw i32 30, %22487
  %22489 = add nsw i32 %22486, %22488
  %22490 = sext i32 %22489 to i64
  %22491 = getelementptr inbounds double, ptr %22485, i64 %22490
  %22492 = load double, ptr %22491, align 8, !tbaa !11
  %22493 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %22492, double %22484)
  %22494 = load ptr, ptr %7, align 8, !tbaa !9
  %22495 = load i32, ptr %12, align 4, !tbaa !5
  %22496 = load i32, ptr %8, align 4, !tbaa !5
  %22497 = mul nsw i32 31, %22496
  %22498 = add nsw i32 %22495, %22497
  %22499 = sext i32 %22498 to i64
  %22500 = getelementptr inbounds double, ptr %22494, i64 %22499
  %22501 = load double, ptr %22500, align 8, !tbaa !11
  %22502 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %22501, double %22493)
  %22503 = load ptr, ptr %7, align 8, !tbaa !9
  %22504 = load i32, ptr %12, align 4, !tbaa !5
  %22505 = load i32, ptr %8, align 4, !tbaa !5
  %22506 = mul nsw i32 32, %22505
  %22507 = add nsw i32 %22504, %22506
  %22508 = sext i32 %22507 to i64
  %22509 = getelementptr inbounds double, ptr %22503, i64 %22508
  %22510 = load double, ptr %22509, align 8, !tbaa !11
  %22511 = call double @llvm.fmuladd.f64(double 0x3F980EB0AE1D4719, double %22510, double %22502)
  %22512 = load ptr, ptr %7, align 8, !tbaa !9
  %22513 = load i32, ptr %12, align 4, !tbaa !5
  %22514 = load i32, ptr %8, align 4, !tbaa !5
  %22515 = mul nsw i32 33, %22514
  %22516 = add nsw i32 %22513, %22515
  %22517 = sext i32 %22516 to i64
  %22518 = getelementptr inbounds double, ptr %22512, i64 %22517
  %22519 = load double, ptr %22518, align 8, !tbaa !11
  %22520 = call double @llvm.fmuladd.f64(double 0xBFD4C0B9406BCBCD, double %22519, double %22511)
  %22521 = load ptr, ptr %7, align 8, !tbaa !9
  %22522 = load i32, ptr %12, align 4, !tbaa !5
  %22523 = load i32, ptr %8, align 4, !tbaa !5
  %22524 = mul nsw i32 34, %22523
  %22525 = add nsw i32 %22522, %22524
  %22526 = sext i32 %22525 to i64
  %22527 = getelementptr inbounds double, ptr %22521, i64 %22526
  %22528 = load double, ptr %22527, align 8, !tbaa !11
  %22529 = call double @llvm.fmuladd.f64(double 0xBFEBF462FB348EF3, double %22528, double %22520)
  %22530 = load ptr, ptr %7, align 8, !tbaa !9
  %22531 = load i32, ptr %12, align 4, !tbaa !5
  %22532 = load i32, ptr %8, align 4, !tbaa !5
  %22533 = mul nsw i32 35, %22532
  %22534 = add nsw i32 %22531, %22533
  %22535 = sext i32 %22534 to i64
  %22536 = getelementptr inbounds double, ptr %22530, i64 %22535
  %22537 = load double, ptr %22536, align 8, !tbaa !11
  %22538 = call double @llvm.fmuladd.f64(double 0xBFE002F9665DF3D7, double %22537, double %22529)
  %22539 = load ptr, ptr %7, align 8, !tbaa !9
  %22540 = load i32, ptr %12, align 4, !tbaa !5
  %22541 = load i32, ptr %8, align 4, !tbaa !5
  %22542 = mul nsw i32 52, %22541
  %22543 = add nsw i32 %22540, %22542
  %22544 = sext i32 %22543 to i64
  %22545 = getelementptr inbounds double, ptr %22539, i64 %22544
  %22546 = load double, ptr %22545, align 8, !tbaa !11
  %22547 = call double @llvm.fmuladd.f64(double 0xBC50F876CCDF6CD8, double %22546, double %22538)
  %22548 = load ptr, ptr %7, align 8, !tbaa !9
  %22549 = load i32, ptr %12, align 4, !tbaa !5
  %22550 = load i32, ptr %8, align 4, !tbaa !5
  %22551 = mul nsw i32 53, %22550
  %22552 = add nsw i32 %22549, %22551
  %22553 = sext i32 %22552 to i64
  %22554 = getelementptr inbounds double, ptr %22548, i64 %22553
  %22555 = load double, ptr %22554, align 8, !tbaa !11
  %22556 = call double @llvm.fmuladd.f64(double 0x3CA04371D9AB72FA, double %22555, double %22547)
  %22557 = load ptr, ptr %7, align 8, !tbaa !9
  %22558 = load i32, ptr %12, align 4, !tbaa !5
  %22559 = load i32, ptr %8, align 4, !tbaa !5
  %22560 = mul nsw i32 54, %22559
  %22561 = add nsw i32 %22558, %22560
  %22562 = sext i32 %22561 to i64
  %22563 = getelementptr inbounds double, ptr %22557, i64 %22562
  %22564 = load double, ptr %22563, align 8, !tbaa !11
  %22565 = call double @llvm.fmuladd.f64(double 0x3CBADEBC19B71701, double %22564, double %22556)
  %22566 = load ptr, ptr %7, align 8, !tbaa !9
  %22567 = load i32, ptr %12, align 4, !tbaa !5
  %22568 = load i32, ptr %8, align 4, !tbaa !5
  %22569 = mul nsw i32 55, %22568
  %22570 = add nsw i32 %22567, %22569
  %22571 = sext i32 %22570 to i64
  %22572 = getelementptr inbounds double, ptr %22566, i64 %22571
  %22573 = load double, ptr %22572, align 8, !tbaa !11
  %22574 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %22573, double %22565)
  %22575 = load ptr, ptr %7, align 8, !tbaa !9
  %22576 = load i32, ptr %12, align 4, !tbaa !5
  %22577 = load i32, ptr %8, align 4, !tbaa !5
  %22578 = mul nsw i32 56, %22577
  %22579 = add nsw i32 %22576, %22578
  %22580 = sext i32 %22579 to i64
  %22581 = getelementptr inbounds double, ptr %22575, i64 %22580
  %22582 = load double, ptr %22581, align 8, !tbaa !11
  %22583 = call double @llvm.fmuladd.f64(double 0xBC6C48C6001F0ABE, double %22582, double %22574)
  %22584 = load ptr, ptr %7, align 8, !tbaa !9
  %22585 = load i32, ptr %12, align 4, !tbaa !5
  %22586 = load i32, ptr %8, align 4, !tbaa !5
  %22587 = mul nsw i32 57, %22586
  %22588 = add nsw i32 %22585, %22587
  %22589 = sext i32 %22588 to i64
  %22590 = getelementptr inbounds double, ptr %22584, i64 %22589
  %22591 = load double, ptr %22590, align 8, !tbaa !11
  %22592 = call double @llvm.fmuladd.f64(double 0x3C9974B2334F2346, double %22591, double %22583)
  %22593 = load ptr, ptr %7, align 8, !tbaa !9
  %22594 = load i32, ptr %12, align 4, !tbaa !5
  %22595 = load i32, ptr %8, align 4, !tbaa !5
  %22596 = mul nsw i32 58, %22595
  %22597 = add nsw i32 %22594, %22596
  %22598 = sext i32 %22597 to i64
  %22599 = getelementptr inbounds double, ptr %22593, i64 %22598
  %22600 = load double, ptr %22599, align 8, !tbaa !11
  %22601 = call double @llvm.fmuladd.f64(double 0x3CBADEBC19B71701, double %22600, double %22592)
  %22602 = load ptr, ptr %7, align 8, !tbaa !9
  %22603 = load i32, ptr %12, align 4, !tbaa !5
  %22604 = load i32, ptr %8, align 4, !tbaa !5
  %22605 = mul nsw i32 59, %22604
  %22606 = add nsw i32 %22603, %22605
  %22607 = sext i32 %22606 to i64
  %22608 = getelementptr inbounds double, ptr %22602, i64 %22607
  %22609 = load double, ptr %22608, align 8, !tbaa !11
  %22610 = call double @llvm.fmuladd.f64(double 0x3C96A09E667F3BCC, double %22609, double %22601)
  %22611 = load ptr, ptr %7, align 8, !tbaa !9
  %22612 = load i32, ptr %12, align 4, !tbaa !5
  %22613 = load i32, ptr %8, align 4, !tbaa !5
  %22614 = mul nsw i32 60, %22613
  %22615 = add nsw i32 %22612, %22614
  %22616 = sext i32 %22615 to i64
  %22617 = getelementptr inbounds double, ptr %22611, i64 %22616
  %22618 = load double, ptr %22617, align 8, !tbaa !11
  %22619 = call double @llvm.fmuladd.f64(double 0xBC7F1CD9CCEEF238, double %22618, double %22610)
  %22620 = load ptr, ptr %7, align 8, !tbaa !9
  %22621 = load i32, ptr %12, align 4, !tbaa !5
  %22622 = load i32, ptr %8, align 4, !tbaa !5
  %22623 = mul nsw i32 61, %22622
  %22624 = add nsw i32 %22621, %22623
  %22625 = sext i32 %22624 to i64
  %22626 = getelementptr inbounds double, ptr %22620, i64 %22625
  %22627 = load double, ptr %22626, align 8, !tbaa !11
  %22628 = call double @llvm.fmuladd.f64(double 0x3C80F876CCDF6CD9, double %22627, double %22619)
  %22629 = load ptr, ptr %7, align 8, !tbaa !9
  %22630 = load i32, ptr %12, align 4, !tbaa !5
  %22631 = load i32, ptr %8, align 4, !tbaa !5
  %22632 = mul nsw i32 62, %22631
  %22633 = add nsw i32 %22630, %22632
  %22634 = sext i32 %22633 to i64
  %22635 = getelementptr inbounds double, ptr %22629, i64 %22634
  %22636 = load double, ptr %22635, align 8, !tbaa !11
  %22637 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %22636, double %22628)
  %22638 = load ptr, ptr %7, align 8, !tbaa !9
  %22639 = load i32, ptr %12, align 4, !tbaa !5
  %22640 = load i32, ptr %8, align 4, !tbaa !5
  %22641 = mul nsw i32 63, %22640
  %22642 = add nsw i32 %22639, %22641
  %22643 = sext i32 %22642 to i64
  %22644 = getelementptr inbounds double, ptr %22638, i64 %22643
  %22645 = load double, ptr %22644, align 8, !tbaa !11
  %22646 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %22645, double %22637)
  %22647 = load ptr, ptr %7, align 8, !tbaa !9
  %22648 = load i32, ptr %12, align 4, !tbaa !5
  %22649 = load i32, ptr %8, align 4, !tbaa !5
  %22650 = mul nsw i32 64, %22649
  %22651 = add nsw i32 %22648, %22650
  %22652 = sext i32 %22651 to i64
  %22653 = getelementptr inbounds double, ptr %22647, i64 %22652
  %22654 = load double, ptr %22653, align 8, !tbaa !11
  %22655 = call double @llvm.fmuladd.f64(double 0xBFB8DF388696F557, double %22654, double %22646)
  %22656 = load ptr, ptr %7, align 8, !tbaa !9
  %22657 = load i32, ptr %12, align 4, !tbaa !5
  %22658 = load i32, ptr %8, align 4, !tbaa !5
  %22659 = mul nsw i32 65, %22658
  %22660 = add nsw i32 %22657, %22659
  %22661 = sext i32 %22660 to i64
  %22662 = getelementptr inbounds double, ptr %22656, i64 %22661
  %22663 = load double, ptr %22662, align 8, !tbaa !11
  %22664 = call double @llvm.fmuladd.f64(double 0x3FD0C7817D9C3121, double %22663, double %22655)
  %22665 = load ptr, ptr %7, align 8, !tbaa !9
  %22666 = load i32, ptr %12, align 4, !tbaa !5
  %22667 = load i32, ptr %8, align 4, !tbaa !5
  %22668 = mul nsw i32 66, %22667
  %22669 = add nsw i32 %22666, %22668
  %22670 = sext i32 %22669 to i64
  %22671 = getelementptr inbounds double, ptr %22665, i64 %22670
  %22672 = load double, ptr %22671, align 8, !tbaa !11
  %22673 = call double @llvm.fmuladd.f64(double 0x4007001BD846D0A7, double %22672, double %22664)
  %22674 = load ptr, ptr %7, align 8, !tbaa !9
  %22675 = load i32, ptr %12, align 4, !tbaa !5
  %22676 = load i32, ptr %8, align 4, !tbaa !5
  %22677 = mul nsw i32 67, %22676
  %22678 = add nsw i32 %22675, %22677
  %22679 = sext i32 %22678 to i64
  %22680 = getelementptr inbounds double, ptr %22674, i64 %22679
  %22681 = load double, ptr %22680, align 8, !tbaa !11
  %22682 = call double @llvm.fmuladd.f64(double 0x3FD08C54FF1019F7, double %22681, double %22673)
  store double %22682, ptr %11, align 8, !tbaa !11
  %22683 = load double, ptr %11, align 8, !tbaa !11
  %22684 = load ptr, ptr %9, align 8, !tbaa !9
  %22685 = load i32, ptr %12, align 4, !tbaa !5
  %22686 = load i32, ptr %10, align 4, !tbaa !5
  %22687 = mul nsw i32 79, %22686
  %22688 = add nsw i32 %22685, %22687
  %22689 = sext i32 %22688 to i64
  %22690 = getelementptr inbounds double, ptr %22684, i64 %22689
  store double %22683, ptr %22690, align 8, !tbaa !11
  %22691 = load ptr, ptr %7, align 8, !tbaa !9
  %22692 = load i32, ptr %12, align 4, !tbaa !5
  %22693 = load i32, ptr %8, align 4, !tbaa !5
  %22694 = mul nsw i32 0, %22693
  %22695 = add nsw i32 %22692, %22694
  %22696 = sext i32 %22695 to i64
  %22697 = getelementptr inbounds double, ptr %22691, i64 %22696
  %22698 = load double, ptr %22697, align 8, !tbaa !11
  %22699 = load ptr, ptr %7, align 8, !tbaa !9
  %22700 = load i32, ptr %12, align 4, !tbaa !5
  %22701 = load i32, ptr %8, align 4, !tbaa !5
  %22702 = mul nsw i32 1, %22701
  %22703 = add nsw i32 %22700, %22702
  %22704 = sext i32 %22703 to i64
  %22705 = getelementptr inbounds double, ptr %22699, i64 %22704
  %22706 = load double, ptr %22705, align 8, !tbaa !11
  %22707 = fmul double 0x3CE1400000000000, %22706
  %22708 = call double @llvm.fmuladd.f64(double 0xC0118E7E1D8191B3, double %22698, double %22707)
  %22709 = load ptr, ptr %7, align 8, !tbaa !9
  %22710 = load i32, ptr %12, align 4, !tbaa !5
  %22711 = load i32, ptr %8, align 4, !tbaa !5
  %22712 = mul nsw i32 2, %22711
  %22713 = add nsw i32 %22710, %22712
  %22714 = sext i32 %22713 to i64
  %22715 = getelementptr inbounds double, ptr %22709, i64 %22714
  %22716 = load double, ptr %22715, align 8, !tbaa !11
  %22717 = call double @llvm.fmuladd.f64(double 0x3CE283FFFFFFFFFF, double %22716, double %22708)
  %22718 = load ptr, ptr %7, align 8, !tbaa !9
  %22719 = load i32, ptr %12, align 4, !tbaa !5
  %22720 = load i32, ptr %8, align 4, !tbaa !5
  %22721 = mul nsw i32 3, %22720
  %22722 = add nsw i32 %22719, %22721
  %22723 = sext i32 %22722 to i64
  %22724 = getelementptr inbounds double, ptr %22718, i64 %22723
  %22725 = load double, ptr %22724, align 8, !tbaa !11
  %22726 = call double @llvm.fmuladd.f64(double 0x3CE3740000000000, double %22725, double %22717)
  %22727 = load ptr, ptr %7, align 8, !tbaa !9
  %22728 = load i32, ptr %12, align 4, !tbaa !5
  %22729 = load i32, ptr %8, align 4, !tbaa !5
  %22730 = mul nsw i32 4, %22729
  %22731 = add nsw i32 %22728, %22730
  %22732 = sext i32 %22731 to i64
  %22733 = getelementptr inbounds double, ptr %22727, i64 %22732
  %22734 = load double, ptr %22733, align 8, !tbaa !11
  %22735 = call double @llvm.fmuladd.f64(double 0xBD07D80000000000, double %22734, double %22726)
  %22736 = load ptr, ptr %7, align 8, !tbaa !9
  %22737 = load i32, ptr %12, align 4, !tbaa !5
  %22738 = load i32, ptr %8, align 4, !tbaa !5
  %22739 = mul nsw i32 5, %22738
  %22740 = add nsw i32 %22737, %22739
  %22741 = sext i32 %22740 to i64
  %22742 = getelementptr inbounds double, ptr %22736, i64 %22741
  %22743 = load double, ptr %22742, align 8, !tbaa !11
  %22744 = call double @llvm.fmuladd.f64(double 0xBD07DFFFFFFFFFFD, double %22743, double %22735)
  %22745 = load ptr, ptr %7, align 8, !tbaa !9
  %22746 = load i32, ptr %12, align 4, !tbaa !5
  %22747 = load i32, ptr %8, align 4, !tbaa !5
  %22748 = mul nsw i32 6, %22747
  %22749 = add nsw i32 %22746, %22748
  %22750 = sext i32 %22749 to i64
  %22751 = getelementptr inbounds double, ptr %22745, i64 %22750
  %22752 = load double, ptr %22751, align 8, !tbaa !11
  %22753 = call double @llvm.fmuladd.f64(double 0xBD06F80000000003, double %22752, double %22744)
  %22754 = load ptr, ptr %7, align 8, !tbaa !9
  %22755 = load i32, ptr %12, align 4, !tbaa !5
  %22756 = load i32, ptr %8, align 4, !tbaa !5
  %22757 = mul nsw i32 7, %22756
  %22758 = add nsw i32 %22755, %22757
  %22759 = sext i32 %22758 to i64
  %22760 = getelementptr inbounds double, ptr %22754, i64 %22759
  %22761 = load double, ptr %22760, align 8, !tbaa !11
  %22762 = call double @llvm.fmuladd.f64(double 0xBD061A0000000000, double %22761, double %22753)
  %22763 = load ptr, ptr %7, align 8, !tbaa !9
  %22764 = load i32, ptr %12, align 4, !tbaa !5
  %22765 = load i32, ptr %8, align 4, !tbaa !5
  %22766 = mul nsw i32 8, %22765
  %22767 = add nsw i32 %22764, %22766
  %22768 = sext i32 %22767 to i64
  %22769 = getelementptr inbounds double, ptr %22763, i64 %22768
  %22770 = load double, ptr %22769, align 8, !tbaa !11
  %22771 = call double @llvm.fmuladd.f64(double 0xBD06DFFFFFFFFFFF, double %22770, double %22762)
  %22772 = load ptr, ptr %7, align 8, !tbaa !9
  %22773 = load i32, ptr %12, align 4, !tbaa !5
  %22774 = load i32, ptr %8, align 4, !tbaa !5
  %22775 = mul nsw i32 9, %22774
  %22776 = add nsw i32 %22773, %22775
  %22777 = sext i32 %22776 to i64
  %22778 = getelementptr inbounds double, ptr %22772, i64 %22777
  %22779 = load double, ptr %22778, align 8, !tbaa !11
  %22780 = call double @llvm.fmuladd.f64(double 0xBD06D80000000001, double %22779, double %22771)
  %22781 = load ptr, ptr %7, align 8, !tbaa !9
  %22782 = load i32, ptr %12, align 4, !tbaa !5
  %22783 = load i32, ptr %8, align 4, !tbaa !5
  %22784 = mul nsw i32 10, %22783
  %22785 = add nsw i32 %22782, %22784
  %22786 = sext i32 %22785 to i64
  %22787 = getelementptr inbounds double, ptr %22781, i64 %22786
  %22788 = load double, ptr %22787, align 8, !tbaa !11
  %22789 = call double @llvm.fmuladd.f64(double 0xBFD4F58312101B3F, double %22788, double %22780)
  %22790 = load ptr, ptr %7, align 8, !tbaa !9
  %22791 = load i32, ptr %12, align 4, !tbaa !5
  %22792 = load i32, ptr %8, align 4, !tbaa !5
  %22793 = mul nsw i32 11, %22792
  %22794 = add nsw i32 %22791, %22793
  %22795 = sext i32 %22794 to i64
  %22796 = getelementptr inbounds double, ptr %22790, i64 %22795
  %22797 = load double, ptr %22796, align 8, !tbaa !11
  %22798 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %22797, double %22789)
  %22799 = load ptr, ptr %7, align 8, !tbaa !9
  %22800 = load i32, ptr %12, align 4, !tbaa !5
  %22801 = load i32, ptr %8, align 4, !tbaa !5
  %22802 = mul nsw i32 12, %22801
  %22803 = add nsw i32 %22800, %22802
  %22804 = sext i32 %22803 to i64
  %22805 = getelementptr inbounds double, ptr %22799, i64 %22804
  %22806 = load double, ptr %22805, align 8, !tbaa !11
  %22807 = call double @llvm.fmuladd.f64(double 0x3CB0200000000000, double %22806, double %22798)
  %22808 = load ptr, ptr %7, align 8, !tbaa !9
  %22809 = load i32, ptr %12, align 4, !tbaa !5
  %22810 = load i32, ptr %8, align 4, !tbaa !5
  %22811 = mul nsw i32 13, %22810
  %22812 = add nsw i32 %22809, %22811
  %22813 = sext i32 %22812 to i64
  %22814 = getelementptr inbounds double, ptr %22808, i64 %22813
  %22815 = load double, ptr %22814, align 8, !tbaa !11
  %22816 = call double @llvm.fmuladd.f64(double 0x3CAD3FFFFFFFFFFF, double %22815, double %22807)
  %22817 = load ptr, ptr %7, align 8, !tbaa !9
  %22818 = load i32, ptr %12, align 4, !tbaa !5
  %22819 = load i32, ptr %8, align 4, !tbaa !5
  %22820 = mul nsw i32 14, %22819
  %22821 = add nsw i32 %22818, %22820
  %22822 = sext i32 %22821 to i64
  %22823 = getelementptr inbounds double, ptr %22817, i64 %22822
  %22824 = load double, ptr %22823, align 8, !tbaa !11
  %22825 = call double @llvm.fmuladd.f64(double 0xBCCF800000000000, double %22824, double %22816)
  %22826 = load ptr, ptr %7, align 8, !tbaa !9
  %22827 = load i32, ptr %12, align 4, !tbaa !5
  %22828 = load i32, ptr %8, align 4, !tbaa !5
  %22829 = mul nsw i32 15, %22828
  %22830 = add nsw i32 %22827, %22829
  %22831 = sext i32 %22830 to i64
  %22832 = getelementptr inbounds double, ptr %22826, i64 %22831
  %22833 = load double, ptr %22832, align 8, !tbaa !11
  %22834 = call double @llvm.fmuladd.f64(double 0xBCCE000000000000, double %22833, double %22825)
  %22835 = load ptr, ptr %7, align 8, !tbaa !9
  %22836 = load i32, ptr %12, align 4, !tbaa !5
  %22837 = load i32, ptr %8, align 4, !tbaa !5
  %22838 = mul nsw i32 16, %22837
  %22839 = add nsw i32 %22836, %22838
  %22840 = sext i32 %22839 to i64
  %22841 = getelementptr inbounds double, ptr %22835, i64 %22840
  %22842 = load double, ptr %22841, align 8, !tbaa !11
  %22843 = call double @llvm.fmuladd.f64(double 0xBCC9800000000000, double %22842, double %22834)
  %22844 = load ptr, ptr %7, align 8, !tbaa !9
  %22845 = load i32, ptr %12, align 4, !tbaa !5
  %22846 = load i32, ptr %8, align 4, !tbaa !5
  %22847 = mul nsw i32 17, %22846
  %22848 = add nsw i32 %22845, %22847
  %22849 = sext i32 %22848 to i64
  %22850 = getelementptr inbounds double, ptr %22844, i64 %22849
  %22851 = load double, ptr %22850, align 8, !tbaa !11
  %22852 = call double @llvm.fmuladd.f64(double 0xBCC7A00000000000, double %22851, double %22843)
  %22853 = load ptr, ptr %7, align 8, !tbaa !9
  %22854 = load i32, ptr %12, align 4, !tbaa !5
  %22855 = load i32, ptr %8, align 4, !tbaa !5
  %22856 = mul nsw i32 18, %22855
  %22857 = add nsw i32 %22854, %22856
  %22858 = sext i32 %22857 to i64
  %22859 = getelementptr inbounds double, ptr %22853, i64 %22858
  %22860 = load double, ptr %22859, align 8, !tbaa !11
  %22861 = call double @llvm.fmuladd.f64(double 0xBCCC000000000000, double %22860, double %22852)
  %22862 = load ptr, ptr %7, align 8, !tbaa !9
  %22863 = load i32, ptr %12, align 4, !tbaa !5
  %22864 = load i32, ptr %8, align 4, !tbaa !5
  %22865 = mul nsw i32 19, %22864
  %22866 = add nsw i32 %22863, %22865
  %22867 = sext i32 %22866 to i64
  %22868 = getelementptr inbounds double, ptr %22862, i64 %22867
  %22869 = load double, ptr %22868, align 8, !tbaa !11
  %22870 = call double @llvm.fmuladd.f64(double 0xBCCB800000000000, double %22869, double %22861)
  store double %22870, ptr %11, align 8, !tbaa !11
  %22871 = load double, ptr %11, align 8, !tbaa !11
  %22872 = load ptr, ptr %9, align 8, !tbaa !9
  %22873 = load i32, ptr %12, align 4, !tbaa !5
  %22874 = load i32, ptr %10, align 4, !tbaa !5
  %22875 = mul nsw i32 80, %22874
  %22876 = add nsw i32 %22873, %22875
  %22877 = sext i32 %22876 to i64
  %22878 = getelementptr inbounds double, ptr %22872, i64 %22877
  store double %22871, ptr %22878, align 8, !tbaa !11
  %22879 = load ptr, ptr %7, align 8, !tbaa !9
  %22880 = load i32, ptr %12, align 4, !tbaa !5
  %22881 = load i32, ptr %8, align 4, !tbaa !5
  %22882 = mul nsw i32 0, %22881
  %22883 = add nsw i32 %22880, %22882
  %22884 = sext i32 %22883 to i64
  %22885 = getelementptr inbounds double, ptr %22879, i64 %22884
  %22886 = load double, ptr %22885, align 8, !tbaa !11
  %22887 = load ptr, ptr %7, align 8, !tbaa !9
  %22888 = load i32, ptr %12, align 4, !tbaa !5
  %22889 = load i32, ptr %8, align 4, !tbaa !5
  %22890 = mul nsw i32 1, %22889
  %22891 = add nsw i32 %22888, %22890
  %22892 = sext i32 %22891 to i64
  %22893 = getelementptr inbounds double, ptr %22887, i64 %22892
  %22894 = load double, ptr %22893, align 8, !tbaa !11
  %22895 = fmul double 0xC0118E7E1D819110, %22894
  %22896 = call double @llvm.fmuladd.f64(double 0x3D128FFFFFFFFFFF, double %22886, double %22895)
  %22897 = load ptr, ptr %7, align 8, !tbaa !9
  %22898 = load i32, ptr %12, align 4, !tbaa !5
  %22899 = load i32, ptr %8, align 4, !tbaa !5
  %22900 = mul nsw i32 2, %22899
  %22901 = add nsw i32 %22898, %22900
  %22902 = sext i32 %22901 to i64
  %22903 = getelementptr inbounds double, ptr %22897, i64 %22902
  %22904 = load double, ptr %22903, align 8, !tbaa !11
  %22905 = call double @llvm.fmuladd.f64(double 0xBCFD900000000000, double %22904, double %22896)
  %22906 = load ptr, ptr %7, align 8, !tbaa !9
  %22907 = load i32, ptr %12, align 4, !tbaa !5
  %22908 = load i32, ptr %8, align 4, !tbaa !5
  %22909 = mul nsw i32 3, %22908
  %22910 = add nsw i32 %22907, %22909
  %22911 = sext i32 %22910 to i64
  %22912 = getelementptr inbounds double, ptr %22906, i64 %22911
  %22913 = load double, ptr %22912, align 8, !tbaa !11
  %22914 = call double @llvm.fmuladd.f64(double 0xBD01500000000000, double %22913, double %22905)
  %22915 = load ptr, ptr %7, align 8, !tbaa !9
  %22916 = load i32, ptr %12, align 4, !tbaa !5
  %22917 = load i32, ptr %8, align 4, !tbaa !5
  %22918 = mul nsw i32 4, %22917
  %22919 = add nsw i32 %22916, %22918
  %22920 = sext i32 %22919 to i64
  %22921 = getelementptr inbounds double, ptr %22915, i64 %22920
  %22922 = load double, ptr %22921, align 8, !tbaa !11
  %22923 = call double @llvm.fmuladd.f64(double 0x3D04A00000000000, double %22922, double %22914)
  %22924 = load ptr, ptr %7, align 8, !tbaa !9
  %22925 = load i32, ptr %12, align 4, !tbaa !5
  %22926 = load i32, ptr %8, align 4, !tbaa !5
  %22927 = mul nsw i32 5, %22926
  %22928 = add nsw i32 %22925, %22927
  %22929 = sext i32 %22928 to i64
  %22930 = getelementptr inbounds double, ptr %22924, i64 %22929
  %22931 = load double, ptr %22930, align 8, !tbaa !11
  %22932 = call double @llvm.fmuladd.f64(double 0x3D02E00000000000, double %22931, double %22923)
  %22933 = load ptr, ptr %7, align 8, !tbaa !9
  %22934 = load i32, ptr %12, align 4, !tbaa !5
  %22935 = load i32, ptr %8, align 4, !tbaa !5
  %22936 = mul nsw i32 6, %22935
  %22937 = add nsw i32 %22934, %22936
  %22938 = sext i32 %22937 to i64
  %22939 = getelementptr inbounds double, ptr %22933, i64 %22938
  %22940 = load double, ptr %22939, align 8, !tbaa !11
  %22941 = call double @llvm.fmuladd.f64(double 0xBD07300000000002, double %22940, double %22932)
  %22942 = load ptr, ptr %7, align 8, !tbaa !9
  %22943 = load i32, ptr %12, align 4, !tbaa !5
  %22944 = load i32, ptr %8, align 4, !tbaa !5
  %22945 = mul nsw i32 7, %22944
  %22946 = add nsw i32 %22943, %22945
  %22947 = sext i32 %22946 to i64
  %22948 = getelementptr inbounds double, ptr %22942, i64 %22947
  %22949 = load double, ptr %22948, align 8, !tbaa !11
  %22950 = call double @llvm.fmuladd.f64(double 0xBD03980000000000, double %22949, double %22941)
  %22951 = load ptr, ptr %7, align 8, !tbaa !9
  %22952 = load i32, ptr %12, align 4, !tbaa !5
  %22953 = load i32, ptr %8, align 4, !tbaa !5
  %22954 = mul nsw i32 8, %22953
  %22955 = add nsw i32 %22952, %22954
  %22956 = sext i32 %22955 to i64
  %22957 = getelementptr inbounds double, ptr %22951, i64 %22956
  %22958 = load double, ptr %22957, align 8, !tbaa !11
  %22959 = call double @llvm.fmuladd.f64(double 0xBD2A980000000000, double %22958, double %22950)
  %22960 = load ptr, ptr %7, align 8, !tbaa !9
  %22961 = load i32, ptr %12, align 4, !tbaa !5
  %22962 = load i32, ptr %8, align 4, !tbaa !5
  %22963 = mul nsw i32 9, %22962
  %22964 = add nsw i32 %22961, %22963
  %22965 = sext i32 %22964 to i64
  %22966 = getelementptr inbounds double, ptr %22960, i64 %22965
  %22967 = load double, ptr %22966, align 8, !tbaa !11
  %22968 = call double @llvm.fmuladd.f64(double 0xBD2A480000000000, double %22967, double %22959)
  %22969 = load ptr, ptr %7, align 8, !tbaa !9
  %22970 = load i32, ptr %12, align 4, !tbaa !5
  %22971 = load i32, ptr %8, align 4, !tbaa !5
  %22972 = mul nsw i32 10, %22971
  %22973 = add nsw i32 %22970, %22972
  %22974 = sext i32 %22973 to i64
  %22975 = getelementptr inbounds double, ptr %22969, i64 %22974
  %22976 = load double, ptr %22975, align 8, !tbaa !11
  %22977 = call double @llvm.fmuladd.f64(double 0x3CD1000000000000, double %22976, double %22968)
  %22978 = load ptr, ptr %7, align 8, !tbaa !9
  %22979 = load i32, ptr %12, align 4, !tbaa !5
  %22980 = load i32, ptr %8, align 4, !tbaa !5
  %22981 = mul nsw i32 11, %22980
  %22982 = add nsw i32 %22979, %22981
  %22983 = sext i32 %22982 to i64
  %22984 = getelementptr inbounds double, ptr %22978, i64 %22983
  %22985 = load double, ptr %22984, align 8, !tbaa !11
  %22986 = call double @llvm.fmuladd.f64(double 0xBFD4F58312101A82, double %22985, double %22977)
  %22987 = load ptr, ptr %7, align 8, !tbaa !9
  %22988 = load i32, ptr %12, align 4, !tbaa !5
  %22989 = load i32, ptr %8, align 4, !tbaa !5
  %22990 = mul nsw i32 12, %22989
  %22991 = add nsw i32 %22988, %22990
  %22992 = sext i32 %22991 to i64
  %22993 = getelementptr inbounds double, ptr %22987, i64 %22992
  %22994 = load double, ptr %22993, align 8, !tbaa !11
  %22995 = call double @llvm.fmuladd.f64(double 0xBCBA000000000000, double %22994, double %22986)
  %22996 = load ptr, ptr %7, align 8, !tbaa !9
  %22997 = load i32, ptr %12, align 4, !tbaa !5
  %22998 = load i32, ptr %8, align 4, !tbaa !5
  %22999 = mul nsw i32 13, %22998
  %23000 = add nsw i32 %22997, %22999
  %23001 = sext i32 %23000 to i64
  %23002 = getelementptr inbounds double, ptr %22996, i64 %23001
  %23003 = load double, ptr %23002, align 8, !tbaa !11
  %23004 = call double @llvm.fmuladd.f64(double 0xBCC5000000000000, double %23003, double %22995)
  %23005 = load ptr, ptr %7, align 8, !tbaa !9
  %23006 = load i32, ptr %12, align 4, !tbaa !5
  %23007 = load i32, ptr %8, align 4, !tbaa !5
  %23008 = mul nsw i32 14, %23007
  %23009 = add nsw i32 %23006, %23008
  %23010 = sext i32 %23009 to i64
  %23011 = getelementptr inbounds double, ptr %23005, i64 %23010
  %23012 = load double, ptr %23011, align 8, !tbaa !11
  %23013 = call double @llvm.fmuladd.f64(double 0x3CCA000000000000, double %23012, double %23004)
  %23014 = load ptr, ptr %7, align 8, !tbaa !9
  %23015 = load i32, ptr %12, align 4, !tbaa !5
  %23016 = load i32, ptr %8, align 4, !tbaa !5
  %23017 = mul nsw i32 15, %23016
  %23018 = add nsw i32 %23015, %23017
  %23019 = sext i32 %23018 to i64
  %23020 = getelementptr inbounds double, ptr %23014, i64 %23019
  %23021 = load double, ptr %23020, align 8, !tbaa !11
  %23022 = call double @llvm.fmuladd.f64(double 0x3CC2000000000000, double %23021, double %23013)
  %23023 = load ptr, ptr %7, align 8, !tbaa !9
  %23024 = load i32, ptr %12, align 4, !tbaa !5
  %23025 = load i32, ptr %8, align 4, !tbaa !5
  %23026 = mul nsw i32 16, %23025
  %23027 = add nsw i32 %23024, %23026
  %23028 = sext i32 %23027 to i64
  %23029 = getelementptr inbounds double, ptr %23023, i64 %23028
  %23030 = load double, ptr %23029, align 8, !tbaa !11
  %23031 = call double @llvm.fmuladd.f64(double 0xBCD1800000000000, double %23030, double %23022)
  %23032 = load ptr, ptr %7, align 8, !tbaa !9
  %23033 = load i32, ptr %12, align 4, !tbaa !5
  %23034 = load i32, ptr %8, align 4, !tbaa !5
  %23035 = mul nsw i32 17, %23034
  %23036 = add nsw i32 %23033, %23035
  %23037 = sext i32 %23036 to i64
  %23038 = getelementptr inbounds double, ptr %23032, i64 %23037
  %23039 = load double, ptr %23038, align 8, !tbaa !11
  %23040 = call double @llvm.fmuladd.f64(double 0xBCCF800000000000, double %23039, double %23031)
  %23041 = load ptr, ptr %7, align 8, !tbaa !9
  %23042 = load i32, ptr %12, align 4, !tbaa !5
  %23043 = load i32, ptr %8, align 4, !tbaa !5
  %23044 = mul nsw i32 18, %23043
  %23045 = add nsw i32 %23042, %23044
  %23046 = sext i32 %23045 to i64
  %23047 = getelementptr inbounds double, ptr %23041, i64 %23046
  %23048 = load double, ptr %23047, align 8, !tbaa !11
  %23049 = call double @llvm.fmuladd.f64(double 0xBCF1400000000000, double %23048, double %23040)
  %23050 = load ptr, ptr %7, align 8, !tbaa !9
  %23051 = load i32, ptr %12, align 4, !tbaa !5
  %23052 = load i32, ptr %8, align 4, !tbaa !5
  %23053 = mul nsw i32 19, %23052
  %23054 = add nsw i32 %23051, %23053
  %23055 = sext i32 %23054 to i64
  %23056 = getelementptr inbounds double, ptr %23050, i64 %23055
  %23057 = load double, ptr %23056, align 8, !tbaa !11
  %23058 = call double @llvm.fmuladd.f64(double 0xBCF0400000000000, double %23057, double %23049)
  store double %23058, ptr %11, align 8, !tbaa !11
  %23059 = load double, ptr %11, align 8, !tbaa !11
  %23060 = load ptr, ptr %9, align 8, !tbaa !9
  %23061 = load i32, ptr %12, align 4, !tbaa !5
  %23062 = load i32, ptr %10, align 4, !tbaa !5
  %23063 = mul nsw i32 81, %23062
  %23064 = add nsw i32 %23061, %23063
  %23065 = sext i32 %23064 to i64
  %23066 = getelementptr inbounds double, ptr %23060, i64 %23065
  store double %23059, ptr %23066, align 8, !tbaa !11
  %23067 = load ptr, ptr %7, align 8, !tbaa !9
  %23068 = load i32, ptr %12, align 4, !tbaa !5
  %23069 = load i32, ptr %8, align 4, !tbaa !5
  %23070 = mul nsw i32 0, %23069
  %23071 = add nsw i32 %23068, %23070
  %23072 = sext i32 %23071 to i64
  %23073 = getelementptr inbounds double, ptr %23067, i64 %23072
  %23074 = load double, ptr %23073, align 8, !tbaa !11
  %23075 = load ptr, ptr %7, align 8, !tbaa !9
  %23076 = load i32, ptr %12, align 4, !tbaa !5
  %23077 = load i32, ptr %8, align 4, !tbaa !5
  %23078 = mul nsw i32 1, %23077
  %23079 = add nsw i32 %23076, %23078
  %23080 = sext i32 %23079 to i64
  %23081 = getelementptr inbounds double, ptr %23075, i64 %23080
  %23082 = load double, ptr %23081, align 8, !tbaa !11
  %23083 = fmul double 0xBCFF700000000000, %23082
  %23084 = call double @llvm.fmuladd.f64(double 0x3D11640000000000, double %23074, double %23083)
  %23085 = load ptr, ptr %7, align 8, !tbaa !9
  %23086 = load i32, ptr %12, align 4, !tbaa !5
  %23087 = load i32, ptr %8, align 4, !tbaa !5
  %23088 = mul nsw i32 2, %23087
  %23089 = add nsw i32 %23086, %23088
  %23090 = sext i32 %23089 to i64
  %23091 = getelementptr inbounds double, ptr %23085, i64 %23090
  %23092 = load double, ptr %23091, align 8, !tbaa !11
  %23093 = call double @llvm.fmuladd.f64(double 0xC0118E7E1D81910D, double %23092, double %23084)
  %23094 = load ptr, ptr %7, align 8, !tbaa !9
  %23095 = load i32, ptr %12, align 4, !tbaa !5
  %23096 = load i32, ptr %8, align 4, !tbaa !5
  %23097 = mul nsw i32 3, %23096
  %23098 = add nsw i32 %23095, %23097
  %23099 = sext i32 %23098 to i64
  %23100 = getelementptr inbounds double, ptr %23094, i64 %23099
  %23101 = load double, ptr %23100, align 8, !tbaa !11
  %23102 = call double @llvm.fmuladd.f64(double 0xBCFDD00000000000, double %23101, double %23093)
  %23103 = load ptr, ptr %7, align 8, !tbaa !9
  %23104 = load i32, ptr %12, align 4, !tbaa !5
  %23105 = load i32, ptr %8, align 4, !tbaa !5
  %23106 = mul nsw i32 4, %23105
  %23107 = add nsw i32 %23104, %23106
  %23108 = sext i32 %23107 to i64
  %23109 = getelementptr inbounds double, ptr %23103, i64 %23108
  %23110 = load double, ptr %23109, align 8, !tbaa !11
  %23111 = call double @llvm.fmuladd.f64(double 0xBD2AFF0000000001, double %23110, double %23102)
  %23112 = load ptr, ptr %7, align 8, !tbaa !9
  %23113 = load i32, ptr %12, align 4, !tbaa !5
  %23114 = load i32, ptr %8, align 4, !tbaa !5
  %23115 = mul nsw i32 5, %23114
  %23116 = add nsw i32 %23113, %23115
  %23117 = sext i32 %23116 to i64
  %23118 = getelementptr inbounds double, ptr %23112, i64 %23117
  %23119 = load double, ptr %23118, align 8, !tbaa !11
  %23120 = call double @llvm.fmuladd.f64(double 0xBD05940000000000, double %23119, double %23111)
  %23121 = load ptr, ptr %7, align 8, !tbaa !9
  %23122 = load i32, ptr %12, align 4, !tbaa !5
  %23123 = load i32, ptr %8, align 4, !tbaa !5
  %23124 = mul nsw i32 6, %23123
  %23125 = add nsw i32 %23122, %23124
  %23126 = sext i32 %23125 to i64
  %23127 = getelementptr inbounds double, ptr %23121, i64 %23126
  %23128 = load double, ptr %23127, align 8, !tbaa !11
  %23129 = call double @llvm.fmuladd.f64(double 0x3CFD7C0000000000, double %23128, double %23120)
  %23130 = load ptr, ptr %7, align 8, !tbaa !9
  %23131 = load i32, ptr %12, align 4, !tbaa !5
  %23132 = load i32, ptr %8, align 4, !tbaa !5
  %23133 = mul nsw i32 7, %23132
  %23134 = add nsw i32 %23131, %23133
  %23135 = sext i32 %23134 to i64
  %23136 = getelementptr inbounds double, ptr %23130, i64 %23135
  %23137 = load double, ptr %23136, align 8, !tbaa !11
  %23138 = call double @llvm.fmuladd.f64(double 0xBD2BB78000000000, double %23137, double %23129)
  %23139 = load ptr, ptr %7, align 8, !tbaa !9
  %23140 = load i32, ptr %12, align 4, !tbaa !5
  %23141 = load i32, ptr %8, align 4, !tbaa !5
  %23142 = mul nsw i32 8, %23141
  %23143 = add nsw i32 %23140, %23142
  %23144 = sext i32 %23143 to i64
  %23145 = getelementptr inbounds double, ptr %23139, i64 %23144
  %23146 = load double, ptr %23145, align 8, !tbaa !11
  %23147 = call double @llvm.fmuladd.f64(double 0xBD06580000000000, double %23146, double %23138)
  %23148 = load ptr, ptr %7, align 8, !tbaa !9
  %23149 = load i32, ptr %12, align 4, !tbaa !5
  %23150 = load i32, ptr %8, align 4, !tbaa !5
  %23151 = mul nsw i32 9, %23150
  %23152 = add nsw i32 %23149, %23151
  %23153 = sext i32 %23152 to i64
  %23154 = getelementptr inbounds double, ptr %23148, i64 %23153
  %23155 = load double, ptr %23154, align 8, !tbaa !11
  %23156 = call double @llvm.fmuladd.f64(double 0x3D03000000000000, double %23155, double %23147)
  %23157 = load ptr, ptr %7, align 8, !tbaa !9
  %23158 = load i32, ptr %12, align 4, !tbaa !5
  %23159 = load i32, ptr %8, align 4, !tbaa !5
  %23160 = mul nsw i32 10, %23159
  %23161 = add nsw i32 %23158, %23160
  %23162 = sext i32 %23161 to i64
  %23163 = getelementptr inbounds double, ptr %23157, i64 %23162
  %23164 = load double, ptr %23163, align 8, !tbaa !11
  %23165 = call double @llvm.fmuladd.f64(double 0x3CDA400000000000, double %23164, double %23156)
  %23166 = load ptr, ptr %7, align 8, !tbaa !9
  %23167 = load i32, ptr %12, align 4, !tbaa !5
  %23168 = load i32, ptr %8, align 4, !tbaa !5
  %23169 = mul nsw i32 11, %23168
  %23170 = add nsw i32 %23167, %23169
  %23171 = sext i32 %23170 to i64
  %23172 = getelementptr inbounds double, ptr %23166, i64 %23171
  %23173 = load double, ptr %23172, align 8, !tbaa !11
  %23174 = call double @llvm.fmuladd.f64(double 0xBCC0800000000000, double %23173, double %23165)
  %23175 = load ptr, ptr %7, align 8, !tbaa !9
  %23176 = load i32, ptr %12, align 4, !tbaa !5
  %23177 = load i32, ptr %8, align 4, !tbaa !5
  %23178 = mul nsw i32 12, %23177
  %23179 = add nsw i32 %23176, %23178
  %23180 = sext i32 %23179 to i64
  %23181 = getelementptr inbounds double, ptr %23175, i64 %23180
  %23182 = load double, ptr %23181, align 8, !tbaa !11
  %23183 = call double @llvm.fmuladd.f64(double 0xBFD4F58312101A79, double %23182, double %23174)
  %23184 = load ptr, ptr %7, align 8, !tbaa !9
  %23185 = load i32, ptr %12, align 4, !tbaa !5
  %23186 = load i32, ptr %8, align 4, !tbaa !5
  %23187 = mul nsw i32 13, %23186
  %23188 = add nsw i32 %23185, %23187
  %23189 = sext i32 %23188 to i64
  %23190 = getelementptr inbounds double, ptr %23184, i64 %23189
  %23191 = load double, ptr %23190, align 8, !tbaa !11
  %23192 = call double @llvm.fmuladd.f64(double 0xBCCB800000000000, double %23191, double %23183)
  %23193 = load ptr, ptr %7, align 8, !tbaa !9
  %23194 = load i32, ptr %12, align 4, !tbaa !5
  %23195 = load i32, ptr %8, align 4, !tbaa !5
  %23196 = mul nsw i32 14, %23195
  %23197 = add nsw i32 %23194, %23196
  %23198 = sext i32 %23197 to i64
  %23199 = getelementptr inbounds double, ptr %23193, i64 %23198
  %23200 = load double, ptr %23199, align 8, !tbaa !11
  %23201 = call double @llvm.fmuladd.f64(double 0xBCEDEFFFFFFFFFFF, double %23200, double %23192)
  %23202 = load ptr, ptr %7, align 8, !tbaa !9
  %23203 = load i32, ptr %12, align 4, !tbaa !5
  %23204 = load i32, ptr %8, align 4, !tbaa !5
  %23205 = mul nsw i32 15, %23204
  %23206 = add nsw i32 %23203, %23205
  %23207 = sext i32 %23206 to i64
  %23208 = getelementptr inbounds double, ptr %23202, i64 %23207
  %23209 = load double, ptr %23208, align 8, !tbaa !11
  %23210 = call double @llvm.fmuladd.f64(double 0xBCC7400000000000, double %23209, double %23201)
  %23211 = load ptr, ptr %7, align 8, !tbaa !9
  %23212 = load i32, ptr %12, align 4, !tbaa !5
  %23213 = load i32, ptr %8, align 4, !tbaa !5
  %23214 = mul nsw i32 16, %23213
  %23215 = add nsw i32 %23212, %23214
  %23216 = sext i32 %23215 to i64
  %23217 = getelementptr inbounds double, ptr %23211, i64 %23216
  %23218 = load double, ptr %23217, align 8, !tbaa !11
  %23219 = call double @llvm.fmuladd.f64(double 0x3CBBC00000000001, double %23218, double %23210)
  %23220 = load ptr, ptr %7, align 8, !tbaa !9
  %23221 = load i32, ptr %12, align 4, !tbaa !5
  %23222 = load i32, ptr %8, align 4, !tbaa !5
  %23223 = mul nsw i32 17, %23222
  %23224 = add nsw i32 %23221, %23223
  %23225 = sext i32 %23224 to i64
  %23226 = getelementptr inbounds double, ptr %23220, i64 %23225
  %23227 = load double, ptr %23226, align 8, !tbaa !11
  %23228 = call double @llvm.fmuladd.f64(double 0xBCF03C0000000000, double %23227, double %23219)
  %23229 = load ptr, ptr %7, align 8, !tbaa !9
  %23230 = load i32, ptr %12, align 4, !tbaa !5
  %23231 = load i32, ptr %8, align 4, !tbaa !5
  %23232 = mul nsw i32 18, %23231
  %23233 = add nsw i32 %23230, %23232
  %23234 = sext i32 %23233 to i64
  %23235 = getelementptr inbounds double, ptr %23229, i64 %23234
  %23236 = load double, ptr %23235, align 8, !tbaa !11
  %23237 = call double @llvm.fmuladd.f64(double 0xBCC3800000000000, double %23236, double %23228)
  %23238 = load ptr, ptr %7, align 8, !tbaa !9
  %23239 = load i32, ptr %12, align 4, !tbaa !5
  %23240 = load i32, ptr %8, align 4, !tbaa !5
  %23241 = mul nsw i32 19, %23240
  %23242 = add nsw i32 %23239, %23241
  %23243 = sext i32 %23242 to i64
  %23244 = getelementptr inbounds double, ptr %23238, i64 %23243
  %23245 = load double, ptr %23244, align 8, !tbaa !11
  %23246 = call double @llvm.fmuladd.f64(double 0x3CD0000000000000, double %23245, double %23237)
  store double %23246, ptr %11, align 8, !tbaa !11
  %23247 = load double, ptr %11, align 8, !tbaa !11
  %23248 = load ptr, ptr %9, align 8, !tbaa !9
  %23249 = load i32, ptr %12, align 4, !tbaa !5
  %23250 = load i32, ptr %10, align 4, !tbaa !5
  %23251 = mul nsw i32 82, %23250
  %23252 = add nsw i32 %23249, %23251
  %23253 = sext i32 %23252 to i64
  %23254 = getelementptr inbounds double, ptr %23248, i64 %23253
  store double %23247, ptr %23254, align 8, !tbaa !11
  %23255 = load ptr, ptr %7, align 8, !tbaa !9
  %23256 = load i32, ptr %12, align 4, !tbaa !5
  %23257 = load i32, ptr %8, align 4, !tbaa !5
  %23258 = mul nsw i32 0, %23257
  %23259 = add nsw i32 %23256, %23258
  %23260 = sext i32 %23259 to i64
  %23261 = getelementptr inbounds double, ptr %23255, i64 %23260
  %23262 = load double, ptr %23261, align 8, !tbaa !11
  %23263 = load ptr, ptr %7, align 8, !tbaa !9
  %23264 = load i32, ptr %12, align 4, !tbaa !5
  %23265 = load i32, ptr %8, align 4, !tbaa !5
  %23266 = mul nsw i32 1, %23265
  %23267 = add nsw i32 %23264, %23266
  %23268 = sext i32 %23267 to i64
  %23269 = getelementptr inbounds double, ptr %23263, i64 %23268
  %23270 = load double, ptr %23269, align 8, !tbaa !11
  %23271 = fmul double 0xBCFDF00000000000, %23270
  %23272 = call double @llvm.fmuladd.f64(double 0x3D11F40000000000, double %23262, double %23271)
  %23273 = load ptr, ptr %7, align 8, !tbaa !9
  %23274 = load i32, ptr %12, align 4, !tbaa !5
  %23275 = load i32, ptr %8, align 4, !tbaa !5
  %23276 = mul nsw i32 2, %23275
  %23277 = add nsw i32 %23274, %23276
  %23278 = sext i32 %23277 to i64
  %23279 = getelementptr inbounds double, ptr %23273, i64 %23278
  %23280 = load double, ptr %23279, align 8, !tbaa !11
  %23281 = call double @llvm.fmuladd.f64(double 0xBCFE2C0000000000, double %23280, double %23272)
  %23282 = load ptr, ptr %7, align 8, !tbaa !9
  %23283 = load i32, ptr %12, align 4, !tbaa !5
  %23284 = load i32, ptr %8, align 4, !tbaa !5
  %23285 = mul nsw i32 3, %23284
  %23286 = add nsw i32 %23283, %23285
  %23287 = sext i32 %23286 to i64
  %23288 = getelementptr inbounds double, ptr %23282, i64 %23287
  %23289 = load double, ptr %23288, align 8, !tbaa !11
  %23290 = call double @llvm.fmuladd.f64(double 0xC0118E7E1D81910E, double %23289, double %23281)
  %23291 = load ptr, ptr %7, align 8, !tbaa !9
  %23292 = load i32, ptr %12, align 4, !tbaa !5
  %23293 = load i32, ptr %8, align 4, !tbaa !5
  %23294 = mul nsw i32 4, %23293
  %23295 = add nsw i32 %23292, %23294
  %23296 = sext i32 %23295 to i64
  %23297 = getelementptr inbounds double, ptr %23291, i64 %23296
  %23298 = load double, ptr %23297, align 8, !tbaa !11
  %23299 = call double @llvm.fmuladd.f64(double 0xBD05CC0000000000, double %23298, double %23290)
  %23300 = load ptr, ptr %7, align 8, !tbaa !9
  %23301 = load i32, ptr %12, align 4, !tbaa !5
  %23302 = load i32, ptr %8, align 4, !tbaa !5
  %23303 = mul nsw i32 5, %23302
  %23304 = add nsw i32 %23301, %23303
  %23305 = sext i32 %23304 to i64
  %23306 = getelementptr inbounds double, ptr %23300, i64 %23305
  %23307 = load double, ptr %23306, align 8, !tbaa !11
  %23308 = call double @llvm.fmuladd.f64(double 0xBD2B7D0000000001, double %23307, double %23299)
  %23309 = load ptr, ptr %7, align 8, !tbaa !9
  %23310 = load i32, ptr %12, align 4, !tbaa !5
  %23311 = load i32, ptr %8, align 4, !tbaa !5
  %23312 = mul nsw i32 6, %23311
  %23313 = add nsw i32 %23310, %23312
  %23314 = sext i32 %23313 to i64
  %23315 = getelementptr inbounds double, ptr %23309, i64 %23314
  %23316 = load double, ptr %23315, align 8, !tbaa !11
  %23317 = call double @llvm.fmuladd.f64(double 0xBD2A8F8000000000, double %23316, double %23308)
  %23318 = load ptr, ptr %7, align 8, !tbaa !9
  %23319 = load i32, ptr %12, align 4, !tbaa !5
  %23320 = load i32, ptr %8, align 4, !tbaa !5
  %23321 = mul nsw i32 7, %23320
  %23322 = add nsw i32 %23319, %23321
  %23323 = sext i32 %23322 to i64
  %23324 = getelementptr inbounds double, ptr %23318, i64 %23323
  %23325 = load double, ptr %23324, align 8, !tbaa !11
  %23326 = call double @llvm.fmuladd.f64(double 0x3CF99C0000000000, double %23325, double %23317)
  %23327 = load ptr, ptr %7, align 8, !tbaa !9
  %23328 = load i32, ptr %12, align 4, !tbaa !5
  %23329 = load i32, ptr %8, align 4, !tbaa !5
  %23330 = mul nsw i32 8, %23329
  %23331 = add nsw i32 %23328, %23330
  %23332 = sext i32 %23331 to i64
  %23333 = getelementptr inbounds double, ptr %23327, i64 %23332
  %23334 = load double, ptr %23333, align 8, !tbaa !11
  %23335 = call double @llvm.fmuladd.f64(double 0x3D02C00000000000, double %23334, double %23326)
  %23336 = load ptr, ptr %7, align 8, !tbaa !9
  %23337 = load i32, ptr %12, align 4, !tbaa !5
  %23338 = load i32, ptr %8, align 4, !tbaa !5
  %23339 = mul nsw i32 9, %23338
  %23340 = add nsw i32 %23337, %23339
  %23341 = sext i32 %23340 to i64
  %23342 = getelementptr inbounds double, ptr %23336, i64 %23341
  %23343 = load double, ptr %23342, align 8, !tbaa !11
  %23344 = call double @llvm.fmuladd.f64(double 0xBD06F80000000003, double %23343, double %23335)
  %23345 = load ptr, ptr %7, align 8, !tbaa !9
  %23346 = load i32, ptr %12, align 4, !tbaa !5
  %23347 = load i32, ptr %8, align 4, !tbaa !5
  %23348 = mul nsw i32 10, %23347
  %23349 = add nsw i32 %23346, %23348
  %23350 = sext i32 %23349 to i64
  %23351 = getelementptr inbounds double, ptr %23345, i64 %23350
  %23352 = load double, ptr %23351, align 8, !tbaa !11
  %23353 = call double @llvm.fmuladd.f64(double 0x3CD93FFFFFFFFFFF, double %23352, double %23344)
  %23354 = load ptr, ptr %7, align 8, !tbaa !9
  %23355 = load i32, ptr %12, align 4, !tbaa !5
  %23356 = load i32, ptr %8, align 4, !tbaa !5
  %23357 = mul nsw i32 11, %23356
  %23358 = add nsw i32 %23355, %23357
  %23359 = sext i32 %23358 to i64
  %23360 = getelementptr inbounds double, ptr %23354, i64 %23359
  %23361 = load double, ptr %23360, align 8, !tbaa !11
  %23362 = call double @llvm.fmuladd.f64(double 0xBCC0800000000000, double %23361, double %23353)
  %23363 = load ptr, ptr %7, align 8, !tbaa !9
  %23364 = load i32, ptr %12, align 4, !tbaa !5
  %23365 = load i32, ptr %8, align 4, !tbaa !5
  %23366 = mul nsw i32 12, %23365
  %23367 = add nsw i32 %23364, %23366
  %23368 = sext i32 %23367 to i64
  %23369 = getelementptr inbounds double, ptr %23363, i64 %23368
  %23370 = load double, ptr %23369, align 8, !tbaa !11
  %23371 = call double @llvm.fmuladd.f64(double 0xBCC0600000000000, double %23370, double %23362)
  %23372 = load ptr, ptr %7, align 8, !tbaa !9
  %23373 = load i32, ptr %12, align 4, !tbaa !5
  %23374 = load i32, ptr %8, align 4, !tbaa !5
  %23375 = mul nsw i32 13, %23374
  %23376 = add nsw i32 %23373, %23375
  %23377 = sext i32 %23376 to i64
  %23378 = getelementptr inbounds double, ptr %23372, i64 %23377
  %23379 = load double, ptr %23378, align 8, !tbaa !11
  %23380 = call double @llvm.fmuladd.f64(double 0xBFD4F58312101A7B, double %23379, double %23371)
  %23381 = load ptr, ptr %7, align 8, !tbaa !9
  %23382 = load i32, ptr %12, align 4, !tbaa !5
  %23383 = load i32, ptr %8, align 4, !tbaa !5
  %23384 = mul nsw i32 14, %23383
  %23385 = add nsw i32 %23382, %23384
  %23386 = sext i32 %23385 to i64
  %23387 = getelementptr inbounds double, ptr %23381, i64 %23386
  %23388 = load double, ptr %23387, align 8, !tbaa !11
  %23389 = call double @llvm.fmuladd.f64(double 0xBCC8C00000000000, double %23388, double %23380)
  %23390 = load ptr, ptr %7, align 8, !tbaa !9
  %23391 = load i32, ptr %12, align 4, !tbaa !5
  %23392 = load i32, ptr %8, align 4, !tbaa !5
  %23393 = mul nsw i32 15, %23392
  %23394 = add nsw i32 %23391, %23393
  %23395 = sext i32 %23394 to i64
  %23396 = getelementptr inbounds double, ptr %23390, i64 %23395
  %23397 = load double, ptr %23396, align 8, !tbaa !11
  %23398 = call double @llvm.fmuladd.f64(double 0xBCEED00000000001, double %23397, double %23389)
  %23399 = load ptr, ptr %7, align 8, !tbaa !9
  %23400 = load i32, ptr %12, align 4, !tbaa !5
  %23401 = load i32, ptr %8, align 4, !tbaa !5
  %23402 = mul nsw i32 16, %23401
  %23403 = add nsw i32 %23400, %23402
  %23404 = sext i32 %23403 to i64
  %23405 = getelementptr inbounds double, ptr %23399, i64 %23404
  %23406 = load double, ptr %23405, align 8, !tbaa !11
  %23407 = call double @llvm.fmuladd.f64(double 0xBCEFF7FFFFFFFFFF, double %23406, double %23398)
  %23408 = load ptr, ptr %7, align 8, !tbaa !9
  %23409 = load i32, ptr %12, align 4, !tbaa !5
  %23410 = load i32, ptr %8, align 4, !tbaa !5
  %23411 = mul nsw i32 17, %23410
  %23412 = add nsw i32 %23409, %23411
  %23413 = sext i32 %23412 to i64
  %23414 = getelementptr inbounds double, ptr %23408, i64 %23413
  %23415 = load double, ptr %23414, align 8, !tbaa !11
  %23416 = call double @llvm.fmuladd.f64(double 0x3CCCE00000000000, double %23415, double %23407)
  %23417 = load ptr, ptr %7, align 8, !tbaa !9
  %23418 = load i32, ptr %12, align 4, !tbaa !5
  %23419 = load i32, ptr %8, align 4, !tbaa !5
  %23420 = mul nsw i32 18, %23419
  %23421 = add nsw i32 %23418, %23420
  %23422 = sext i32 %23421 to i64
  %23423 = getelementptr inbounds double, ptr %23417, i64 %23422
  %23424 = load double, ptr %23423, align 8, !tbaa !11
  %23425 = call double @llvm.fmuladd.f64(double 0x3CC2000000000000, double %23424, double %23416)
  %23426 = load ptr, ptr %7, align 8, !tbaa !9
  %23427 = load i32, ptr %12, align 4, !tbaa !5
  %23428 = load i32, ptr %8, align 4, !tbaa !5
  %23429 = mul nsw i32 19, %23428
  %23430 = add nsw i32 %23427, %23429
  %23431 = sext i32 %23430 to i64
  %23432 = getelementptr inbounds double, ptr %23426, i64 %23431
  %23433 = load double, ptr %23432, align 8, !tbaa !11
  %23434 = call double @llvm.fmuladd.f64(double 0xBCC9800000000000, double %23433, double %23425)
  store double %23434, ptr %11, align 8, !tbaa !11
  %23435 = load double, ptr %11, align 8, !tbaa !11
  %23436 = load ptr, ptr %9, align 8, !tbaa !9
  %23437 = load i32, ptr %12, align 4, !tbaa !5
  %23438 = load i32, ptr %10, align 4, !tbaa !5
  %23439 = mul nsw i32 83, %23438
  %23440 = add nsw i32 %23437, %23439
  %23441 = sext i32 %23440 to i64
  %23442 = getelementptr inbounds double, ptr %23436, i64 %23441
  store double %23435, ptr %23442, align 8, !tbaa !11
  %23443 = load ptr, ptr %7, align 8, !tbaa !9
  %23444 = load i32, ptr %12, align 4, !tbaa !5
  %23445 = load i32, ptr %8, align 4, !tbaa !5
  %23446 = mul nsw i32 0, %23445
  %23447 = add nsw i32 %23444, %23446
  %23448 = sext i32 %23447 to i64
  %23449 = getelementptr inbounds double, ptr %23443, i64 %23448
  %23450 = load double, ptr %23449, align 8, !tbaa !11
  %23451 = load ptr, ptr %7, align 8, !tbaa !9
  %23452 = load i32, ptr %12, align 4, !tbaa !5
  %23453 = load i32, ptr %8, align 4, !tbaa !5
  %23454 = mul nsw i32 1, %23453
  %23455 = add nsw i32 %23452, %23454
  %23456 = sext i32 %23455 to i64
  %23457 = getelementptr inbounds double, ptr %23451, i64 %23456
  %23458 = load double, ptr %23457, align 8, !tbaa !11
  %23459 = fmul double 0x3CE5BFFFFFFFFFFF, %23458
  %23460 = call double @llvm.fmuladd.f64(double 0xBD15A3FFFFFFFFFF, double %23450, double %23459)
  %23461 = load ptr, ptr %7, align 8, !tbaa !9
  %23462 = load i32, ptr %12, align 4, !tbaa !5
  %23463 = load i32, ptr %8, align 4, !tbaa !5
  %23464 = mul nsw i32 2, %23463
  %23465 = add nsw i32 %23462, %23464
  %23466 = sext i32 %23465 to i64
  %23467 = getelementptr inbounds double, ptr %23461, i64 %23466
  %23468 = load double, ptr %23467, align 8, !tbaa !11
  %23469 = call double @llvm.fmuladd.f64(double 0xBD13BCFFFFFFFFFF, double %23468, double %23460)
  %23470 = load ptr, ptr %7, align 8, !tbaa !9
  %23471 = load i32, ptr %12, align 4, !tbaa !5
  %23472 = load i32, ptr %8, align 4, !tbaa !5
  %23473 = mul nsw i32 3, %23472
  %23474 = add nsw i32 %23471, %23473
  %23475 = sext i32 %23474 to i64
  %23476 = getelementptr inbounds double, ptr %23470, i64 %23475
  %23477 = load double, ptr %23476, align 8, !tbaa !11
  %23478 = call double @llvm.fmuladd.f64(double 0xBCEA980000000001, double %23477, double %23469)
  %23479 = load ptr, ptr %7, align 8, !tbaa !9
  %23480 = load i32, ptr %12, align 4, !tbaa !5
  %23481 = load i32, ptr %8, align 4, !tbaa !5
  %23482 = mul nsw i32 4, %23481
  %23483 = add nsw i32 %23480, %23482
  %23484 = sext i32 %23483 to i64
  %23485 = getelementptr inbounds double, ptr %23479, i64 %23484
  %23486 = load double, ptr %23485, align 8, !tbaa !11
  %23487 = call double @llvm.fmuladd.f64(double 0xC0118E7E1D8191B3, double %23486, double %23478)
  %23488 = load ptr, ptr %7, align 8, !tbaa !9
  %23489 = load i32, ptr %12, align 4, !tbaa !5
  %23490 = load i32, ptr %8, align 4, !tbaa !5
  %23491 = mul nsw i32 5, %23490
  %23492 = add nsw i32 %23489, %23491
  %23493 = sext i32 %23492 to i64
  %23494 = getelementptr inbounds double, ptr %23488, i64 %23493
  %23495 = load double, ptr %23494, align 8, !tbaa !11
  %23496 = call double @llvm.fmuladd.f64(double 0x3D07000000000000, double %23495, double %23487)
  %23497 = load ptr, ptr %7, align 8, !tbaa !9
  %23498 = load i32, ptr %12, align 4, !tbaa !5
  %23499 = load i32, ptr %8, align 4, !tbaa !5
  %23500 = mul nsw i32 6, %23499
  %23501 = add nsw i32 %23498, %23500
  %23502 = sext i32 %23501 to i64
  %23503 = getelementptr inbounds double, ptr %23497, i64 %23502
  %23504 = load double, ptr %23503, align 8, !tbaa !11
  %23505 = call double @llvm.fmuladd.f64(double 0x3CF4380000000000, double %23504, double %23496)
  %23506 = load ptr, ptr %7, align 8, !tbaa !9
  %23507 = load i32, ptr %12, align 4, !tbaa !5
  %23508 = load i32, ptr %8, align 4, !tbaa !5
  %23509 = mul nsw i32 7, %23508
  %23510 = add nsw i32 %23507, %23509
  %23511 = sext i32 %23510 to i64
  %23512 = getelementptr inbounds double, ptr %23506, i64 %23511
  %23513 = load double, ptr %23512, align 8, !tbaa !11
  %23514 = call double @llvm.fmuladd.f64(double 0xBD0AF40000000001, double %23513, double %23505)
  %23515 = load ptr, ptr %7, align 8, !tbaa !9
  %23516 = load i32, ptr %12, align 4, !tbaa !5
  %23517 = load i32, ptr %8, align 4, !tbaa !5
  %23518 = mul nsw i32 8, %23517
  %23519 = add nsw i32 %23516, %23518
  %23520 = sext i32 %23519 to i64
  %23521 = getelementptr inbounds double, ptr %23515, i64 %23520
  %23522 = load double, ptr %23521, align 8, !tbaa !11
  %23523 = call double @llvm.fmuladd.f64(double 0x3CF6000000000000, double %23522, double %23514)
  %23524 = load ptr, ptr %7, align 8, !tbaa !9
  %23525 = load i32, ptr %12, align 4, !tbaa !5
  %23526 = load i32, ptr %8, align 4, !tbaa !5
  %23527 = mul nsw i32 9, %23526
  %23528 = add nsw i32 %23525, %23527
  %23529 = sext i32 %23528 to i64
  %23530 = getelementptr inbounds double, ptr %23524, i64 %23529
  %23531 = load double, ptr %23530, align 8, !tbaa !11
  %23532 = call double @llvm.fmuladd.f64(double 0x3D18680000000000, double %23531, double %23523)
  %23533 = load ptr, ptr %7, align 8, !tbaa !9
  %23534 = load i32, ptr %12, align 4, !tbaa !5
  %23535 = load i32, ptr %8, align 4, !tbaa !5
  %23536 = mul nsw i32 10, %23535
  %23537 = add nsw i32 %23534, %23536
  %23538 = sext i32 %23537 to i64
  %23539 = getelementptr inbounds double, ptr %23533, i64 %23538
  %23540 = load double, ptr %23539, align 8, !tbaa !11
  %23541 = call double @llvm.fmuladd.f64(double 0xBCD73FFFFFFFFFFE, double %23540, double %23532)
  %23542 = load ptr, ptr %7, align 8, !tbaa !9
  %23543 = load i32, ptr %12, align 4, !tbaa !5
  %23544 = load i32, ptr %8, align 4, !tbaa !5
  %23545 = mul nsw i32 11, %23544
  %23546 = add nsw i32 %23543, %23545
  %23547 = sext i32 %23546 to i64
  %23548 = getelementptr inbounds double, ptr %23542, i64 %23547
  %23549 = load double, ptr %23548, align 8, !tbaa !11
  %23550 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %23549, double %23541)
  %23551 = load ptr, ptr %7, align 8, !tbaa !9
  %23552 = load i32, ptr %12, align 4, !tbaa !5
  %23553 = load i32, ptr %8, align 4, !tbaa !5
  %23554 = mul nsw i32 12, %23553
  %23555 = add nsw i32 %23552, %23554
  %23556 = sext i32 %23555 to i64
  %23557 = getelementptr inbounds double, ptr %23551, i64 %23556
  %23558 = load double, ptr %23557, align 8, !tbaa !11
  %23559 = call double @llvm.fmuladd.f64(double 0xBCDACFFFFFFFFFFE, double %23558, double %23550)
  %23560 = load ptr, ptr %7, align 8, !tbaa !9
  %23561 = load i32, ptr %12, align 4, !tbaa !5
  %23562 = load i32, ptr %8, align 4, !tbaa !5
  %23563 = mul nsw i32 13, %23562
  %23564 = add nsw i32 %23561, %23563
  %23565 = sext i32 %23564 to i64
  %23566 = getelementptr inbounds double, ptr %23560, i64 %23565
  %23567 = load double, ptr %23566, align 8, !tbaa !11
  %23568 = call double @llvm.fmuladd.f64(double 0xBCB2C00000000001, double %23567, double %23559)
  %23569 = load ptr, ptr %7, align 8, !tbaa !9
  %23570 = load i32, ptr %12, align 4, !tbaa !5
  %23571 = load i32, ptr %8, align 4, !tbaa !5
  %23572 = mul nsw i32 14, %23571
  %23573 = add nsw i32 %23570, %23572
  %23574 = sext i32 %23573 to i64
  %23575 = getelementptr inbounds double, ptr %23569, i64 %23574
  %23576 = load double, ptr %23575, align 8, !tbaa !11
  %23577 = call double @llvm.fmuladd.f64(double 0xBFD4F58312101B3F, double %23576, double %23568)
  %23578 = load ptr, ptr %7, align 8, !tbaa !9
  %23579 = load i32, ptr %12, align 4, !tbaa !5
  %23580 = load i32, ptr %8, align 4, !tbaa !5
  %23581 = mul nsw i32 15, %23580
  %23582 = add nsw i32 %23579, %23581
  %23583 = sext i32 %23582 to i64
  %23584 = getelementptr inbounds double, ptr %23578, i64 %23583
  %23585 = load double, ptr %23584, align 8, !tbaa !11
  %23586 = call double @llvm.fmuladd.f64(double 0x3CC8000000000000, double %23585, double %23577)
  %23587 = load ptr, ptr %7, align 8, !tbaa !9
  %23588 = load i32, ptr %12, align 4, !tbaa !5
  %23589 = load i32, ptr %8, align 4, !tbaa !5
  %23590 = mul nsw i32 16, %23589
  %23591 = add nsw i32 %23588, %23590
  %23592 = sext i32 %23591 to i64
  %23593 = getelementptr inbounds double, ptr %23587, i64 %23592
  %23594 = load double, ptr %23593, align 8, !tbaa !11
  %23595 = call double @llvm.fmuladd.f64(double 0x3CA7000000000002, double %23594, double %23586)
  %23596 = load ptr, ptr %7, align 8, !tbaa !9
  %23597 = load i32, ptr %12, align 4, !tbaa !5
  %23598 = load i32, ptr %8, align 4, !tbaa !5
  %23599 = mul nsw i32 17, %23598
  %23600 = add nsw i32 %23597, %23599
  %23601 = sext i32 %23600 to i64
  %23602 = getelementptr inbounds double, ptr %23596, i64 %23601
  %23603 = load double, ptr %23602, align 8, !tbaa !11
  %23604 = call double @llvm.fmuladd.f64(double 0xBCCF400000000000, double %23603, double %23595)
  %23605 = load ptr, ptr %7, align 8, !tbaa !9
  %23606 = load i32, ptr %12, align 4, !tbaa !5
  %23607 = load i32, ptr %8, align 4, !tbaa !5
  %23608 = mul nsw i32 18, %23607
  %23609 = add nsw i32 %23606, %23608
  %23610 = sext i32 %23609 to i64
  %23611 = getelementptr inbounds double, ptr %23605, i64 %23610
  %23612 = load double, ptr %23611, align 8, !tbaa !11
  %23613 = call double @llvm.fmuladd.f64(double 0x3CB0000000000000, double %23612, double %23604)
  %23614 = load ptr, ptr %7, align 8, !tbaa !9
  %23615 = load i32, ptr %12, align 4, !tbaa !5
  %23616 = load i32, ptr %8, align 4, !tbaa !5
  %23617 = mul nsw i32 19, %23616
  %23618 = add nsw i32 %23615, %23617
  %23619 = sext i32 %23618 to i64
  %23620 = getelementptr inbounds double, ptr %23614, i64 %23619
  %23621 = load double, ptr %23620, align 8, !tbaa !11
  %23622 = call double @llvm.fmuladd.f64(double 0x3CDD800000000001, double %23621, double %23613)
  store double %23622, ptr %11, align 8, !tbaa !11
  %23623 = load double, ptr %11, align 8, !tbaa !11
  %23624 = load ptr, ptr %9, align 8, !tbaa !9
  %23625 = load i32, ptr %12, align 4, !tbaa !5
  %23626 = load i32, ptr %10, align 4, !tbaa !5
  %23627 = mul nsw i32 84, %23626
  %23628 = add nsw i32 %23625, %23627
  %23629 = sext i32 %23628 to i64
  %23630 = getelementptr inbounds double, ptr %23624, i64 %23629
  store double %23623, ptr %23630, align 8, !tbaa !11
  %23631 = load ptr, ptr %7, align 8, !tbaa !9
  %23632 = load i32, ptr %12, align 4, !tbaa !5
  %23633 = load i32, ptr %8, align 4, !tbaa !5
  %23634 = mul nsw i32 0, %23633
  %23635 = add nsw i32 %23632, %23634
  %23636 = sext i32 %23635 to i64
  %23637 = getelementptr inbounds double, ptr %23631, i64 %23636
  %23638 = load double, ptr %23637, align 8, !tbaa !11
  %23639 = load ptr, ptr %7, align 8, !tbaa !9
  %23640 = load i32, ptr %12, align 4, !tbaa !5
  %23641 = load i32, ptr %8, align 4, !tbaa !5
  %23642 = mul nsw i32 1, %23641
  %23643 = add nsw i32 %23640, %23642
  %23644 = sext i32 %23643 to i64
  %23645 = getelementptr inbounds double, ptr %23639, i64 %23644
  %23646 = load double, ptr %23645, align 8, !tbaa !11
  %23647 = fmul double 0x3CEAC00000000001, %23646
  %23648 = call double @llvm.fmuladd.f64(double 0xBD17B40000000000, double %23638, double %23647)
  %23649 = load ptr, ptr %7, align 8, !tbaa !9
  %23650 = load i32, ptr %12, align 4, !tbaa !5
  %23651 = load i32, ptr %8, align 4, !tbaa !5
  %23652 = mul nsw i32 2, %23651
  %23653 = add nsw i32 %23650, %23652
  %23654 = sext i32 %23653 to i64
  %23655 = getelementptr inbounds double, ptr %23649, i64 %23654
  %23656 = load double, ptr %23655, align 8, !tbaa !11
  %23657 = call double @llvm.fmuladd.f64(double 0xBCE927FFFFFFFFFF, double %23656, double %23648)
  %23658 = load ptr, ptr %7, align 8, !tbaa !9
  %23659 = load i32, ptr %12, align 4, !tbaa !5
  %23660 = load i32, ptr %8, align 4, !tbaa !5
  %23661 = mul nsw i32 3, %23660
  %23662 = add nsw i32 %23659, %23661
  %23663 = sext i32 %23662 to i64
  %23664 = getelementptr inbounds double, ptr %23658, i64 %23663
  %23665 = load double, ptr %23664, align 8, !tbaa !11
  %23666 = call double @llvm.fmuladd.f64(double 0xBD13B90000000001, double %23665, double %23657)
  %23667 = load ptr, ptr %7, align 8, !tbaa !9
  %23668 = load i32, ptr %12, align 4, !tbaa !5
  %23669 = load i32, ptr %8, align 4, !tbaa !5
  %23670 = mul nsw i32 4, %23669
  %23671 = add nsw i32 %23668, %23670
  %23672 = sext i32 %23671 to i64
  %23673 = getelementptr inbounds double, ptr %23667, i64 %23672
  %23674 = load double, ptr %23673, align 8, !tbaa !11
  %23675 = call double @llvm.fmuladd.f64(double 0x3D04D00000000000, double %23674, double %23666)
  %23676 = load ptr, ptr %7, align 8, !tbaa !9
  %23677 = load i32, ptr %12, align 4, !tbaa !5
  %23678 = load i32, ptr %8, align 4, !tbaa !5
  %23679 = mul nsw i32 5, %23678
  %23680 = add nsw i32 %23677, %23679
  %23681 = sext i32 %23680 to i64
  %23682 = getelementptr inbounds double, ptr %23676, i64 %23681
  %23683 = load double, ptr %23682, align 8, !tbaa !11
  %23684 = call double @llvm.fmuladd.f64(double 0xC0118E7E1D8191B1, double %23683, double %23675)
  %23685 = load ptr, ptr %7, align 8, !tbaa !9
  %23686 = load i32, ptr %12, align 4, !tbaa !5
  %23687 = load i32, ptr %8, align 4, !tbaa !5
  %23688 = mul nsw i32 6, %23687
  %23689 = add nsw i32 %23686, %23688
  %23690 = sext i32 %23689 to i64
  %23691 = getelementptr inbounds double, ptr %23685, i64 %23690
  %23692 = load double, ptr %23691, align 8, !tbaa !11
  %23693 = call double @llvm.fmuladd.f64(double 0xBD0A1C0000000001, double %23692, double %23684)
  %23694 = load ptr, ptr %7, align 8, !tbaa !9
  %23695 = load i32, ptr %12, align 4, !tbaa !5
  %23696 = load i32, ptr %8, align 4, !tbaa !5
  %23697 = mul nsw i32 7, %23696
  %23698 = add nsw i32 %23695, %23697
  %23699 = sext i32 %23698 to i64
  %23700 = getelementptr inbounds double, ptr %23694, i64 %23699
  %23701 = load double, ptr %23700, align 8, !tbaa !11
  %23702 = call double @llvm.fmuladd.f64(double 0x3CF7180000000000, double %23701, double %23693)
  %23703 = load ptr, ptr %7, align 8, !tbaa !9
  %23704 = load i32, ptr %12, align 4, !tbaa !5
  %23705 = load i32, ptr %8, align 4, !tbaa !5
  %23706 = mul nsw i32 8, %23705
  %23707 = add nsw i32 %23704, %23706
  %23708 = sext i32 %23707 to i64
  %23709 = getelementptr inbounds double, ptr %23703, i64 %23708
  %23710 = load double, ptr %23709, align 8, !tbaa !11
  %23711 = call double @llvm.fmuladd.f64(double 0x3D19000000000000, double %23710, double %23702)
  %23712 = load ptr, ptr %7, align 8, !tbaa !9
  %23713 = load i32, ptr %12, align 4, !tbaa !5
  %23714 = load i32, ptr %8, align 4, !tbaa !5
  %23715 = mul nsw i32 9, %23714
  %23716 = add nsw i32 %23713, %23715
  %23717 = sext i32 %23716 to i64
  %23718 = getelementptr inbounds double, ptr %23712, i64 %23717
  %23719 = load double, ptr %23718, align 8, !tbaa !11
  %23720 = call double @llvm.fmuladd.f64(double 0x3CF9C00000000000, double %23719, double %23711)
  %23721 = load ptr, ptr %7, align 8, !tbaa !9
  %23722 = load i32, ptr %12, align 4, !tbaa !5
  %23723 = load i32, ptr %8, align 4, !tbaa !5
  %23724 = mul nsw i32 10, %23723
  %23725 = add nsw i32 %23722, %23724
  %23726 = sext i32 %23725 to i64
  %23727 = getelementptr inbounds double, ptr %23721, i64 %23726
  %23728 = load double, ptr %23727, align 8, !tbaa !11
  %23729 = call double @llvm.fmuladd.f64(double 0xBCDA400000000000, double %23728, double %23720)
  %23730 = load ptr, ptr %7, align 8, !tbaa !9
  %23731 = load i32, ptr %12, align 4, !tbaa !5
  %23732 = load i32, ptr %8, align 4, !tbaa !5
  %23733 = mul nsw i32 11, %23732
  %23734 = add nsw i32 %23731, %23733
  %23735 = sext i32 %23734 to i64
  %23736 = getelementptr inbounds double, ptr %23730, i64 %23735
  %23737 = load double, ptr %23736, align 8, !tbaa !11
  %23738 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %23737, double %23729)
  %23739 = load ptr, ptr %7, align 8, !tbaa !9
  %23740 = load i32, ptr %12, align 4, !tbaa !5
  %23741 = load i32, ptr %8, align 4, !tbaa !5
  %23742 = mul nsw i32 12, %23741
  %23743 = add nsw i32 %23740, %23742
  %23744 = sext i32 %23743 to i64
  %23745 = getelementptr inbounds double, ptr %23739, i64 %23744
  %23746 = load double, ptr %23745, align 8, !tbaa !11
  %23747 = call double @llvm.fmuladd.f64(double 0xBCB1400000000000, double %23746, double %23738)
  %23748 = load ptr, ptr %7, align 8, !tbaa !9
  %23749 = load i32, ptr %12, align 4, !tbaa !5
  %23750 = load i32, ptr %8, align 4, !tbaa !5
  %23751 = mul nsw i32 13, %23750
  %23752 = add nsw i32 %23749, %23751
  %23753 = sext i32 %23752 to i64
  %23754 = getelementptr inbounds double, ptr %23748, i64 %23753
  %23755 = load double, ptr %23754, align 8, !tbaa !11
  %23756 = call double @llvm.fmuladd.f64(double 0xBCDB900000000001, double %23755, double %23747)
  %23757 = load ptr, ptr %7, align 8, !tbaa !9
  %23758 = load i32, ptr %12, align 4, !tbaa !5
  %23759 = load i32, ptr %8, align 4, !tbaa !5
  %23760 = mul nsw i32 14, %23759
  %23761 = add nsw i32 %23758, %23760
  %23762 = sext i32 %23761 to i64
  %23763 = getelementptr inbounds double, ptr %23757, i64 %23762
  %23764 = load double, ptr %23763, align 8, !tbaa !11
  %23765 = call double @llvm.fmuladd.f64(double 0x3CCB000000000000, double %23764, double %23756)
  %23766 = load ptr, ptr %7, align 8, !tbaa !9
  %23767 = load i32, ptr %12, align 4, !tbaa !5
  %23768 = load i32, ptr %8, align 4, !tbaa !5
  %23769 = mul nsw i32 15, %23768
  %23770 = add nsw i32 %23767, %23769
  %23771 = sext i32 %23770 to i64
  %23772 = getelementptr inbounds double, ptr %23766, i64 %23771
  %23773 = load double, ptr %23772, align 8, !tbaa !11
  %23774 = call double @llvm.fmuladd.f64(double 0xBFD4F58312101B43, double %23773, double %23765)
  %23775 = load ptr, ptr %7, align 8, !tbaa !9
  %23776 = load i32, ptr %12, align 4, !tbaa !5
  %23777 = load i32, ptr %8, align 4, !tbaa !5
  %23778 = mul nsw i32 16, %23777
  %23779 = add nsw i32 %23776, %23778
  %23780 = sext i32 %23779 to i64
  %23781 = getelementptr inbounds double, ptr %23775, i64 %23780
  %23782 = load double, ptr %23781, align 8, !tbaa !11
  %23783 = call double @llvm.fmuladd.f64(double 0xBCD0E00000000000, double %23782, double %23774)
  %23784 = load ptr, ptr %7, align 8, !tbaa !9
  %23785 = load i32, ptr %12, align 4, !tbaa !5
  %23786 = load i32, ptr %8, align 4, !tbaa !5
  %23787 = mul nsw i32 17, %23786
  %23788 = add nsw i32 %23785, %23787
  %23789 = sext i32 %23788 to i64
  %23790 = getelementptr inbounds double, ptr %23784, i64 %23789
  %23791 = load double, ptr %23790, align 8, !tbaa !11
  %23792 = call double @llvm.fmuladd.f64(double 0x3CBD800000000001, double %23791, double %23783)
  %23793 = load ptr, ptr %7, align 8, !tbaa !9
  %23794 = load i32, ptr %12, align 4, !tbaa !5
  %23795 = load i32, ptr %8, align 4, !tbaa !5
  %23796 = mul nsw i32 18, %23795
  %23797 = add nsw i32 %23794, %23796
  %23798 = sext i32 %23797 to i64
  %23799 = getelementptr inbounds double, ptr %23793, i64 %23798
  %23800 = load double, ptr %23799, align 8, !tbaa !11
  %23801 = call double @llvm.fmuladd.f64(double 0x3CDFFFFFFFFFFFFE, double %23800, double %23792)
  %23802 = load ptr, ptr %7, align 8, !tbaa !9
  %23803 = load i32, ptr %12, align 4, !tbaa !5
  %23804 = load i32, ptr %8, align 4, !tbaa !5
  %23805 = mul nsw i32 19, %23804
  %23806 = add nsw i32 %23803, %23805
  %23807 = sext i32 %23806 to i64
  %23808 = getelementptr inbounds double, ptr %23802, i64 %23807
  %23809 = load double, ptr %23808, align 8, !tbaa !11
  %23810 = call double @llvm.fmuladd.f64(double 0x3CC4000000000000, double %23809, double %23801)
  store double %23810, ptr %11, align 8, !tbaa !11
  %23811 = load double, ptr %11, align 8, !tbaa !11
  %23812 = load ptr, ptr %9, align 8, !tbaa !9
  %23813 = load i32, ptr %12, align 4, !tbaa !5
  %23814 = load i32, ptr %10, align 4, !tbaa !5
  %23815 = mul nsw i32 85, %23814
  %23816 = add nsw i32 %23813, %23815
  %23817 = sext i32 %23816 to i64
  %23818 = getelementptr inbounds double, ptr %23812, i64 %23817
  store double %23811, ptr %23818, align 8, !tbaa !11
  %23819 = load ptr, ptr %7, align 8, !tbaa !9
  %23820 = load i32, ptr %12, align 4, !tbaa !5
  %23821 = load i32, ptr %8, align 4, !tbaa !5
  %23822 = mul nsw i32 0, %23821
  %23823 = add nsw i32 %23820, %23822
  %23824 = sext i32 %23823 to i64
  %23825 = getelementptr inbounds double, ptr %23819, i64 %23824
  %23826 = load double, ptr %23825, align 8, !tbaa !11
  %23827 = load ptr, ptr %7, align 8, !tbaa !9
  %23828 = load i32, ptr %12, align 4, !tbaa !5
  %23829 = load i32, ptr %8, align 4, !tbaa !5
  %23830 = mul nsw i32 1, %23829
  %23831 = add nsw i32 %23828, %23830
  %23832 = sext i32 %23831 to i64
  %23833 = getelementptr inbounds double, ptr %23827, i64 %23832
  %23834 = load double, ptr %23833, align 8, !tbaa !11
  %23835 = fmul double 0xBCED100000000000, %23834
  %23836 = call double @llvm.fmuladd.f64(double 0xBD167E0000000000, double %23826, double %23835)
  %23837 = load ptr, ptr %7, align 8, !tbaa !9
  %23838 = load i32, ptr %12, align 4, !tbaa !5
  %23839 = load i32, ptr %8, align 4, !tbaa !5
  %23840 = mul nsw i32 2, %23839
  %23841 = add nsw i32 %23838, %23840
  %23842 = sext i32 %23841 to i64
  %23843 = getelementptr inbounds double, ptr %23837, i64 %23842
  %23844 = load double, ptr %23843, align 8, !tbaa !11
  %23845 = call double @llvm.fmuladd.f64(double 0x3CE5A80000000001, double %23844, double %23836)
  %23846 = load ptr, ptr %7, align 8, !tbaa !9
  %23847 = load i32, ptr %12, align 4, !tbaa !5
  %23848 = load i32, ptr %8, align 4, !tbaa !5
  %23849 = mul nsw i32 3, %23848
  %23850 = add nsw i32 %23847, %23849
  %23851 = sext i32 %23850 to i64
  %23852 = getelementptr inbounds double, ptr %23846, i64 %23851
  %23853 = load double, ptr %23852, align 8, !tbaa !11
  %23854 = call double @llvm.fmuladd.f64(double 0xBD129C7FFFFFFFFE, double %23853, double %23845)
  %23855 = load ptr, ptr %7, align 8, !tbaa !9
  %23856 = load i32, ptr %12, align 4, !tbaa !5
  %23857 = load i32, ptr %8, align 4, !tbaa !5
  %23858 = mul nsw i32 4, %23857
  %23859 = add nsw i32 %23856, %23858
  %23860 = sext i32 %23859 to i64
  %23861 = getelementptr inbounds double, ptr %23855, i64 %23860
  %23862 = load double, ptr %23861, align 8, !tbaa !11
  %23863 = call double @llvm.fmuladd.f64(double 0x3CF3340000000000, double %23862, double %23854)
  %23864 = load ptr, ptr %7, align 8, !tbaa !9
  %23865 = load i32, ptr %12, align 4, !tbaa !5
  %23866 = load i32, ptr %8, align 4, !tbaa !5
  %23867 = mul nsw i32 5, %23866
  %23868 = add nsw i32 %23865, %23867
  %23869 = sext i32 %23868 to i64
  %23870 = getelementptr inbounds double, ptr %23864, i64 %23869
  %23871 = load double, ptr %23870, align 8, !tbaa !11
  %23872 = call double @llvm.fmuladd.f64(double 0xBD09760000000001, double %23871, double %23863)
  %23873 = load ptr, ptr %7, align 8, !tbaa !9
  %23874 = load i32, ptr %12, align 4, !tbaa !5
  %23875 = load i32, ptr %8, align 4, !tbaa !5
  %23876 = mul nsw i32 6, %23875
  %23877 = add nsw i32 %23874, %23876
  %23878 = sext i32 %23877 to i64
  %23879 = getelementptr inbounds double, ptr %23873, i64 %23878
  %23880 = load double, ptr %23879, align 8, !tbaa !11
  %23881 = call double @llvm.fmuladd.f64(double 0xC0118E7E1D8191B2, double %23880, double %23872)
  %23882 = load ptr, ptr %7, align 8, !tbaa !9
  %23883 = load i32, ptr %12, align 4, !tbaa !5
  %23884 = load i32, ptr %8, align 4, !tbaa !5
  %23885 = mul nsw i32 7, %23884
  %23886 = add nsw i32 %23883, %23885
  %23887 = sext i32 %23886 to i64
  %23888 = getelementptr inbounds double, ptr %23882, i64 %23887
  %23889 = load double, ptr %23888, align 8, !tbaa !11
  %23890 = call double @llvm.fmuladd.f64(double 0x3D17E57FFFFFFFFE, double %23889, double %23881)
  %23891 = load ptr, ptr %7, align 8, !tbaa !9
  %23892 = load i32, ptr %12, align 4, !tbaa !5
  %23893 = load i32, ptr %8, align 4, !tbaa !5
  %23894 = mul nsw i32 8, %23893
  %23895 = add nsw i32 %23892, %23894
  %23896 = sext i32 %23895 to i64
  %23897 = getelementptr inbounds double, ptr %23891, i64 %23896
  %23898 = load double, ptr %23897, align 8, !tbaa !11
  %23899 = call double @llvm.fmuladd.f64(double 0x3CF6D80000000000, double %23898, double %23890)
  %23900 = load ptr, ptr %7, align 8, !tbaa !9
  %23901 = load i32, ptr %12, align 4, !tbaa !5
  %23902 = load i32, ptr %8, align 4, !tbaa !5
  %23903 = mul nsw i32 9, %23902
  %23904 = add nsw i32 %23901, %23903
  %23905 = sext i32 %23904 to i64
  %23906 = getelementptr inbounds double, ptr %23900, i64 %23905
  %23907 = load double, ptr %23906, align 8, !tbaa !11
  %23908 = call double @llvm.fmuladd.f64(double 0x3D07C7FFFFFFFFFF, double %23907, double %23899)
  %23909 = load ptr, ptr %7, align 8, !tbaa !9
  %23910 = load i32, ptr %12, align 4, !tbaa !5
  %23911 = load i32, ptr %8, align 4, !tbaa !5
  %23912 = mul nsw i32 10, %23911
  %23913 = add nsw i32 %23910, %23912
  %23914 = sext i32 %23913 to i64
  %23915 = getelementptr inbounds double, ptr %23909, i64 %23914
  %23916 = load double, ptr %23915, align 8, !tbaa !11
  %23917 = call double @llvm.fmuladd.f64(double 0xBCDBE00000000000, double %23916, double %23908)
  %23918 = load ptr, ptr %7, align 8, !tbaa !9
  %23919 = load i32, ptr %12, align 4, !tbaa !5
  %23920 = load i32, ptr %8, align 4, !tbaa !5
  %23921 = mul nsw i32 11, %23920
  %23922 = add nsw i32 %23919, %23921
  %23923 = sext i32 %23922 to i64
  %23924 = getelementptr inbounds double, ptr %23918, i64 %23923
  %23925 = load double, ptr %23924, align 8, !tbaa !11
  %23926 = call double @llvm.fmuladd.f64(double 0xBC9DFFFFFFFFFFFE, double %23925, double %23917)
  %23927 = load ptr, ptr %7, align 8, !tbaa !9
  %23928 = load i32, ptr %12, align 4, !tbaa !5
  %23929 = load i32, ptr %8, align 4, !tbaa !5
  %23930 = mul nsw i32 12, %23929
  %23931 = add nsw i32 %23928, %23930
  %23932 = sext i32 %23931 to i64
  %23933 = getelementptr inbounds double, ptr %23927, i64 %23932
  %23934 = load double, ptr %23933, align 8, !tbaa !11
  %23935 = call double @llvm.fmuladd.f64(double 0x3C9CFFFFFFFFFFFF, double %23934, double %23926)
  %23936 = load ptr, ptr %7, align 8, !tbaa !9
  %23937 = load i32, ptr %12, align 4, !tbaa !5
  %23938 = load i32, ptr %8, align 4, !tbaa !5
  %23939 = mul nsw i32 13, %23938
  %23940 = add nsw i32 %23937, %23939
  %23941 = sext i32 %23940 to i64
  %23942 = getelementptr inbounds double, ptr %23936, i64 %23941
  %23943 = load double, ptr %23942, align 8, !tbaa !11
  %23944 = call double @llvm.fmuladd.f64(double 0xBCD6C7FFFFFFFFFE, double %23943, double %23935)
  %23945 = load ptr, ptr %7, align 8, !tbaa !9
  %23946 = load i32, ptr %12, align 4, !tbaa !5
  %23947 = load i32, ptr %8, align 4, !tbaa !5
  %23948 = mul nsw i32 14, %23947
  %23949 = add nsw i32 %23946, %23948
  %23950 = sext i32 %23949 to i64
  %23951 = getelementptr inbounds double, ptr %23945, i64 %23950
  %23952 = load double, ptr %23951, align 8, !tbaa !11
  %23953 = call double @llvm.fmuladd.f64(double 0x3CAE800000000001, double %23952, double %23944)
  %23954 = load ptr, ptr %7, align 8, !tbaa !9
  %23955 = load i32, ptr %12, align 4, !tbaa !5
  %23956 = load i32, ptr %8, align 4, !tbaa !5
  %23957 = mul nsw i32 15, %23956
  %23958 = add nsw i32 %23955, %23957
  %23959 = sext i32 %23958 to i64
  %23960 = getelementptr inbounds double, ptr %23954, i64 %23959
  %23961 = load double, ptr %23960, align 8, !tbaa !11
  %23962 = call double @llvm.fmuladd.f64(double 0xBCCD600000000000, double %23961, double %23953)
  %23963 = load ptr, ptr %7, align 8, !tbaa !9
  %23964 = load i32, ptr %12, align 4, !tbaa !5
  %23965 = load i32, ptr %8, align 4, !tbaa !5
  %23966 = mul nsw i32 16, %23965
  %23967 = add nsw i32 %23964, %23966
  %23968 = sext i32 %23967 to i64
  %23969 = getelementptr inbounds double, ptr %23963, i64 %23968
  %23970 = load double, ptr %23969, align 8, !tbaa !11
  %23971 = call double @llvm.fmuladd.f64(double 0xBFD4F58312101B3B, double %23970, double %23962)
  %23972 = load ptr, ptr %7, align 8, !tbaa !9
  %23973 = load i32, ptr %12, align 4, !tbaa !5
  %23974 = load i32, ptr %8, align 4, !tbaa !5
  %23975 = mul nsw i32 17, %23974
  %23976 = add nsw i32 %23973, %23975
  %23977 = sext i32 %23976 to i64
  %23978 = getelementptr inbounds double, ptr %23972, i64 %23977
  %23979 = load double, ptr %23978, align 8, !tbaa !11
  %23980 = call double @llvm.fmuladd.f64(double 0x3CE02BFFFFFFFFFF, double %23979, double %23971)
  %23981 = load ptr, ptr %7, align 8, !tbaa !9
  %23982 = load i32, ptr %12, align 4, !tbaa !5
  %23983 = load i32, ptr %8, align 4, !tbaa !5
  %23984 = mul nsw i32 18, %23983
  %23985 = add nsw i32 %23982, %23984
  %23986 = sext i32 %23985 to i64
  %23987 = getelementptr inbounds double, ptr %23981, i64 %23986
  %23988 = load double, ptr %23987, align 8, !tbaa !11
  %23989 = call double @llvm.fmuladd.f64(double 0x3CC3C00000000000, double %23988, double %23980)
  %23990 = load ptr, ptr %7, align 8, !tbaa !9
  %23991 = load i32, ptr %12, align 4, !tbaa !5
  %23992 = load i32, ptr %8, align 4, !tbaa !5
  %23993 = mul nsw i32 19, %23992
  %23994 = add nsw i32 %23991, %23993
  %23995 = sext i32 %23994 to i64
  %23996 = getelementptr inbounds double, ptr %23990, i64 %23995
  %23997 = load double, ptr %23996, align 8, !tbaa !11
  %23998 = call double @llvm.fmuladd.f64(double 0x3CCB800000000000, double %23997, double %23989)
  store double %23998, ptr %11, align 8, !tbaa !11
  %23999 = load double, ptr %11, align 8, !tbaa !11
  %24000 = load ptr, ptr %9, align 8, !tbaa !9
  %24001 = load i32, ptr %12, align 4, !tbaa !5
  %24002 = load i32, ptr %10, align 4, !tbaa !5
  %24003 = mul nsw i32 86, %24002
  %24004 = add nsw i32 %24001, %24003
  %24005 = sext i32 %24004 to i64
  %24006 = getelementptr inbounds double, ptr %24000, i64 %24005
  store double %23999, ptr %24006, align 8, !tbaa !11
  %24007 = load ptr, ptr %7, align 8, !tbaa !9
  %24008 = load i32, ptr %12, align 4, !tbaa !5
  %24009 = load i32, ptr %8, align 4, !tbaa !5
  %24010 = mul nsw i32 0, %24009
  %24011 = add nsw i32 %24008, %24010
  %24012 = sext i32 %24011 to i64
  %24013 = getelementptr inbounds double, ptr %24007, i64 %24012
  %24014 = load double, ptr %24013, align 8, !tbaa !11
  %24015 = load ptr, ptr %7, align 8, !tbaa !9
  %24016 = load i32, ptr %12, align 4, !tbaa !5
  %24017 = load i32, ptr %8, align 4, !tbaa !5
  %24018 = mul nsw i32 1, %24017
  %24019 = add nsw i32 %24016, %24018
  %24020 = sext i32 %24019 to i64
  %24021 = getelementptr inbounds double, ptr %24015, i64 %24020
  %24022 = load double, ptr %24021, align 8, !tbaa !11
  %24023 = fmul double 0xBCF0200000000000, %24022
  %24024 = call double @llvm.fmuladd.f64(double 0xBD1569FFFFFFFFFF, double %24014, double %24023)
  %24025 = load ptr, ptr %7, align 8, !tbaa !9
  %24026 = load i32, ptr %12, align 4, !tbaa !5
  %24027 = load i32, ptr %8, align 4, !tbaa !5
  %24028 = mul nsw i32 2, %24027
  %24029 = add nsw i32 %24026, %24028
  %24030 = sext i32 %24029 to i64
  %24031 = getelementptr inbounds double, ptr %24025, i64 %24030
  %24032 = load double, ptr %24031, align 8, !tbaa !11
  %24033 = call double @llvm.fmuladd.f64(double 0xBD1478FFFFFFFFFF, double %24032, double %24024)
  %24034 = load ptr, ptr %7, align 8, !tbaa !9
  %24035 = load i32, ptr %12, align 4, !tbaa !5
  %24036 = load i32, ptr %8, align 4, !tbaa !5
  %24037 = mul nsw i32 3, %24036
  %24038 = add nsw i32 %24035, %24037
  %24039 = sext i32 %24038 to i64
  %24040 = getelementptr inbounds double, ptr %24034, i64 %24039
  %24041 = load double, ptr %24040, align 8, !tbaa !11
  %24042 = call double @llvm.fmuladd.f64(double 0x3CE4140000000000, double %24041, double %24033)
  %24043 = load ptr, ptr %7, align 8, !tbaa !9
  %24044 = load i32, ptr %12, align 4, !tbaa !5
  %24045 = load i32, ptr %8, align 4, !tbaa !5
  %24046 = mul nsw i32 4, %24045
  %24047 = add nsw i32 %24044, %24046
  %24048 = sext i32 %24047 to i64
  %24049 = getelementptr inbounds double, ptr %24043, i64 %24048
  %24050 = load double, ptr %24049, align 8, !tbaa !11
  %24051 = call double @llvm.fmuladd.f64(double 0xBD0A620000000003, double %24050, double %24042)
  %24052 = load ptr, ptr %7, align 8, !tbaa !9
  %24053 = load i32, ptr %12, align 4, !tbaa !5
  %24054 = load i32, ptr %8, align 4, !tbaa !5
  %24055 = mul nsw i32 5, %24054
  %24056 = add nsw i32 %24053, %24055
  %24057 = sext i32 %24056 to i64
  %24058 = getelementptr inbounds double, ptr %24052, i64 %24057
  %24059 = load double, ptr %24058, align 8, !tbaa !11
  %24060 = call double @llvm.fmuladd.f64(double 0x3CF36BFFFFFFFFFF, double %24059, double %24051)
  %24061 = load ptr, ptr %7, align 8, !tbaa !9
  %24062 = load i32, ptr %12, align 4, !tbaa !5
  %24063 = load i32, ptr %8, align 4, !tbaa !5
  %24064 = mul nsw i32 6, %24063
  %24065 = add nsw i32 %24062, %24064
  %24066 = sext i32 %24065 to i64
  %24067 = getelementptr inbounds double, ptr %24061, i64 %24066
  %24068 = load double, ptr %24067, align 8, !tbaa !11
  %24069 = call double @llvm.fmuladd.f64(double 0x3D17E27FFFFFFFFF, double %24068, double %24060)
  %24070 = load ptr, ptr %7, align 8, !tbaa !9
  %24071 = load i32, ptr %12, align 4, !tbaa !5
  %24072 = load i32, ptr %8, align 4, !tbaa !5
  %24073 = mul nsw i32 7, %24072
  %24074 = add nsw i32 %24071, %24073
  %24075 = sext i32 %24074 to i64
  %24076 = getelementptr inbounds double, ptr %24070, i64 %24075
  %24077 = load double, ptr %24076, align 8, !tbaa !11
  %24078 = call double @llvm.fmuladd.f64(double 0xC0118E7E1D8191B1, double %24077, double %24069)
  %24079 = load ptr, ptr %7, align 8, !tbaa !9
  %24080 = load i32, ptr %12, align 4, !tbaa !5
  %24081 = load i32, ptr %8, align 4, !tbaa !5
  %24082 = mul nsw i32 8, %24081
  %24083 = add nsw i32 %24080, %24082
  %24084 = sext i32 %24083 to i64
  %24085 = getelementptr inbounds double, ptr %24079, i64 %24084
  %24086 = load double, ptr %24085, align 8, !tbaa !11
  %24087 = call double @llvm.fmuladd.f64(double 0x3D07F3FFFFFFFFFF, double %24086, double %24078)
  %24088 = load ptr, ptr %7, align 8, !tbaa !9
  %24089 = load i32, ptr %12, align 4, !tbaa !5
  %24090 = load i32, ptr %8, align 4, !tbaa !5
  %24091 = mul nsw i32 9, %24090
  %24092 = add nsw i32 %24089, %24091
  %24093 = sext i32 %24092 to i64
  %24094 = getelementptr inbounds double, ptr %24088, i64 %24093
  %24095 = load double, ptr %24094, align 8, !tbaa !11
  %24096 = call double @llvm.fmuladd.f64(double 0x3CF6F80000000000, double %24095, double %24087)
  %24097 = load ptr, ptr %7, align 8, !tbaa !9
  %24098 = load i32, ptr %12, align 4, !tbaa !5
  %24099 = load i32, ptr %8, align 4, !tbaa !5
  %24100 = mul nsw i32 10, %24099
  %24101 = add nsw i32 %24098, %24100
  %24102 = sext i32 %24101 to i64
  %24103 = getelementptr inbounds double, ptr %24097, i64 %24102
  %24104 = load double, ptr %24103, align 8, !tbaa !11
  %24105 = call double @llvm.fmuladd.f64(double 0xBCDAA00000000002, double %24104, double %24096)
  %24106 = load ptr, ptr %7, align 8, !tbaa !9
  %24107 = load i32, ptr %12, align 4, !tbaa !5
  %24108 = load i32, ptr %8, align 4, !tbaa !5
  %24109 = mul nsw i32 11, %24108
  %24110 = add nsw i32 %24107, %24109
  %24111 = sext i32 %24110 to i64
  %24112 = getelementptr inbounds double, ptr %24106, i64 %24111
  %24113 = load double, ptr %24112, align 8, !tbaa !11
  %24114 = call double @llvm.fmuladd.f64(double 0xBCA5FFFFFFFFFFFF, double %24113, double %24105)
  %24115 = load ptr, ptr %7, align 8, !tbaa !9
  %24116 = load i32, ptr %12, align 4, !tbaa !5
  %24117 = load i32, ptr %8, align 4, !tbaa !5
  %24118 = mul nsw i32 12, %24117
  %24119 = add nsw i32 %24116, %24118
  %24120 = sext i32 %24119 to i64
  %24121 = getelementptr inbounds double, ptr %24115, i64 %24120
  %24122 = load double, ptr %24121, align 8, !tbaa !11
  %24123 = call double @llvm.fmuladd.f64(double 0xBCD6100000000001, double %24122, double %24114)
  %24124 = load ptr, ptr %7, align 8, !tbaa !9
  %24125 = load i32, ptr %12, align 4, !tbaa !5
  %24126 = load i32, ptr %8, align 4, !tbaa !5
  %24127 = mul nsw i32 13, %24126
  %24128 = add nsw i32 %24125, %24127
  %24129 = sext i32 %24128 to i64
  %24130 = getelementptr inbounds double, ptr %24124, i64 %24129
  %24131 = load double, ptr %24130, align 8, !tbaa !11
  %24132 = call double @llvm.fmuladd.f64(double 0x3CB8A00000000000, double %24131, double %24123)
  %24133 = load ptr, ptr %7, align 8, !tbaa !9
  %24134 = load i32, ptr %12, align 4, !tbaa !5
  %24135 = load i32, ptr %8, align 4, !tbaa !5
  %24136 = mul nsw i32 14, %24135
  %24137 = add nsw i32 %24134, %24136
  %24138 = sext i32 %24137 to i64
  %24139 = getelementptr inbounds double, ptr %24133, i64 %24138
  %24140 = load double, ptr %24139, align 8, !tbaa !11
  %24141 = call double @llvm.fmuladd.f64(double 0xBCD30FFFFFFFFFFE, double %24140, double %24132)
  %24142 = load ptr, ptr %7, align 8, !tbaa !9
  %24143 = load i32, ptr %12, align 4, !tbaa !5
  %24144 = load i32, ptr %8, align 4, !tbaa !5
  %24145 = mul nsw i32 15, %24144
  %24146 = add nsw i32 %24143, %24145
  %24147 = sext i32 %24146 to i64
  %24148 = getelementptr inbounds double, ptr %24142, i64 %24147
  %24149 = load double, ptr %24148, align 8, !tbaa !11
  %24150 = call double @llvm.fmuladd.f64(double 0x3CB4C00000000000, double %24149, double %24141)
  %24151 = load ptr, ptr %7, align 8, !tbaa !9
  %24152 = load i32, ptr %12, align 4, !tbaa !5
  %24153 = load i32, ptr %8, align 4, !tbaa !5
  %24154 = mul nsw i32 16, %24153
  %24155 = add nsw i32 %24152, %24154
  %24156 = sext i32 %24155 to i64
  %24157 = getelementptr inbounds double, ptr %24151, i64 %24156
  %24158 = load double, ptr %24157, align 8, !tbaa !11
  %24159 = call double @llvm.fmuladd.f64(double 0x3CDD280000000000, double %24158, double %24150)
  %24160 = load ptr, ptr %7, align 8, !tbaa !9
  %24161 = load i32, ptr %12, align 4, !tbaa !5
  %24162 = load i32, ptr %8, align 4, !tbaa !5
  %24163 = mul nsw i32 17, %24162
  %24164 = add nsw i32 %24161, %24163
  %24165 = sext i32 %24164 to i64
  %24166 = getelementptr inbounds double, ptr %24160, i64 %24165
  %24167 = load double, ptr %24166, align 8, !tbaa !11
  %24168 = call double @llvm.fmuladd.f64(double 0xBFD4F58312101B3A, double %24167, double %24159)
  %24169 = load ptr, ptr %7, align 8, !tbaa !9
  %24170 = load i32, ptr %12, align 4, !tbaa !5
  %24171 = load i32, ptr %8, align 4, !tbaa !5
  %24172 = mul nsw i32 18, %24171
  %24173 = add nsw i32 %24170, %24172
  %24174 = sext i32 %24173 to i64
  %24175 = getelementptr inbounds double, ptr %24169, i64 %24174
  %24176 = load double, ptr %24175, align 8, !tbaa !11
  %24177 = call double @llvm.fmuladd.f64(double 0x3CD0200000000000, double %24176, double %24168)
  %24178 = load ptr, ptr %7, align 8, !tbaa !9
  %24179 = load i32, ptr %12, align 4, !tbaa !5
  %24180 = load i32, ptr %8, align 4, !tbaa !5
  %24181 = mul nsw i32 19, %24180
  %24182 = add nsw i32 %24179, %24181
  %24183 = sext i32 %24182 to i64
  %24184 = getelementptr inbounds double, ptr %24178, i64 %24183
  %24185 = load double, ptr %24184, align 8, !tbaa !11
  %24186 = call double @llvm.fmuladd.f64(double 0x3CC2C00000000000, double %24185, double %24177)
  store double %24186, ptr %11, align 8, !tbaa !11
  %24187 = load double, ptr %11, align 8, !tbaa !11
  %24188 = load ptr, ptr %9, align 8, !tbaa !9
  %24189 = load i32, ptr %12, align 4, !tbaa !5
  %24190 = load i32, ptr %10, align 4, !tbaa !5
  %24191 = mul nsw i32 87, %24190
  %24192 = add nsw i32 %24189, %24191
  %24193 = sext i32 %24192 to i64
  %24194 = getelementptr inbounds double, ptr %24188, i64 %24193
  store double %24187, ptr %24194, align 8, !tbaa !11
  %24195 = load ptr, ptr %7, align 8, !tbaa !9
  %24196 = load i32, ptr %12, align 4, !tbaa !5
  %24197 = load i32, ptr %8, align 4, !tbaa !5
  %24198 = mul nsw i32 0, %24197
  %24199 = add nsw i32 %24196, %24198
  %24200 = sext i32 %24199 to i64
  %24201 = getelementptr inbounds double, ptr %24195, i64 %24200
  %24202 = load double, ptr %24201, align 8, !tbaa !11
  %24203 = load ptr, ptr %7, align 8, !tbaa !9
  %24204 = load i32, ptr %12, align 4, !tbaa !5
  %24205 = load i32, ptr %8, align 4, !tbaa !5
  %24206 = mul nsw i32 1, %24205
  %24207 = add nsw i32 %24204, %24206
  %24208 = sext i32 %24207 to i64
  %24209 = getelementptr inbounds double, ptr %24203, i64 %24208
  %24210 = load double, ptr %24209, align 8, !tbaa !11
  %24211 = fmul double 0xBD13680000000001, %24210
  %24212 = call double @llvm.fmuladd.f64(double 0xBD16B00000000000, double %24202, double %24211)
  %24213 = load ptr, ptr %7, align 8, !tbaa !9
  %24214 = load i32, ptr %12, align 4, !tbaa !5
  %24215 = load i32, ptr %8, align 4, !tbaa !5
  %24216 = mul nsw i32 2, %24215
  %24217 = add nsw i32 %24214, %24216
  %24218 = sext i32 %24217 to i64
  %24219 = getelementptr inbounds double, ptr %24213, i64 %24218
  %24220 = load double, ptr %24219, align 8, !tbaa !11
  %24221 = call double @llvm.fmuladd.f64(double 0xBCEE600000000000, double %24220, double %24212)
  %24222 = load ptr, ptr %7, align 8, !tbaa !9
  %24223 = load i32, ptr %12, align 4, !tbaa !5
  %24224 = load i32, ptr %8, align 4, !tbaa !5
  %24225 = mul nsw i32 3, %24224
  %24226 = add nsw i32 %24223, %24225
  %24227 = sext i32 %24226 to i64
  %24228 = getelementptr inbounds double, ptr %24222, i64 %24227
  %24229 = load double, ptr %24228, align 8, !tbaa !11
  %24230 = call double @llvm.fmuladd.f64(double 0x3CE6500000000001, double %24229, double %24221)
  %24231 = load ptr, ptr %7, align 8, !tbaa !9
  %24232 = load i32, ptr %12, align 4, !tbaa !5
  %24233 = load i32, ptr %8, align 4, !tbaa !5
  %24234 = mul nsw i32 4, %24233
  %24235 = add nsw i32 %24232, %24234
  %24236 = sext i32 %24235 to i64
  %24237 = getelementptr inbounds double, ptr %24231, i64 %24236
  %24238 = load double, ptr %24237, align 8, !tbaa !11
  %24239 = call double @llvm.fmuladd.f64(double 0x3CF7A00000000000, double %24238, double %24230)
  %24240 = load ptr, ptr %7, align 8, !tbaa !9
  %24241 = load i32, ptr %12, align 4, !tbaa !5
  %24242 = load i32, ptr %8, align 4, !tbaa !5
  %24243 = mul nsw i32 5, %24242
  %24244 = add nsw i32 %24241, %24243
  %24245 = sext i32 %24244 to i64
  %24246 = getelementptr inbounds double, ptr %24240, i64 %24245
  %24247 = load double, ptr %24246, align 8, !tbaa !11
  %24248 = call double @llvm.fmuladd.f64(double 0x3D18C00000000000, double %24247, double %24239)
  %24249 = load ptr, ptr %7, align 8, !tbaa !9
  %24250 = load i32, ptr %12, align 4, !tbaa !5
  %24251 = load i32, ptr %8, align 4, !tbaa !5
  %24252 = mul nsw i32 6, %24251
  %24253 = add nsw i32 %24250, %24252
  %24254 = sext i32 %24253 to i64
  %24255 = getelementptr inbounds double, ptr %24249, i64 %24254
  %24256 = load double, ptr %24255, align 8, !tbaa !11
  %24257 = call double @llvm.fmuladd.f64(double 0x3CF6680000000000, double %24256, double %24248)
  %24258 = load ptr, ptr %7, align 8, !tbaa !9
  %24259 = load i32, ptr %12, align 4, !tbaa !5
  %24260 = load i32, ptr %8, align 4, !tbaa !5
  %24261 = mul nsw i32 7, %24260
  %24262 = add nsw i32 %24259, %24261
  %24263 = sext i32 %24262 to i64
  %24264 = getelementptr inbounds double, ptr %24258, i64 %24263
  %24265 = load double, ptr %24264, align 8, !tbaa !11
  %24266 = call double @llvm.fmuladd.f64(double 0x3D09800000000002, double %24265, double %24257)
  %24267 = load ptr, ptr %7, align 8, !tbaa !9
  %24268 = load i32, ptr %12, align 4, !tbaa !5
  %24269 = load i32, ptr %8, align 4, !tbaa !5
  %24270 = mul nsw i32 8, %24269
  %24271 = add nsw i32 %24268, %24270
  %24272 = sext i32 %24271 to i64
  %24273 = getelementptr inbounds double, ptr %24267, i64 %24272
  %24274 = load double, ptr %24273, align 8, !tbaa !11
  %24275 = call double @llvm.fmuladd.f64(double 0xC0118E7E1D8191B0, double %24274, double %24266)
  %24276 = load ptr, ptr %7, align 8, !tbaa !9
  %24277 = load i32, ptr %12, align 4, !tbaa !5
  %24278 = load i32, ptr %8, align 4, !tbaa !5
  %24279 = mul nsw i32 9, %24278
  %24280 = add nsw i32 %24277, %24279
  %24281 = sext i32 %24280 to i64
  %24282 = getelementptr inbounds double, ptr %24276, i64 %24281
  %24283 = load double, ptr %24282, align 8, !tbaa !11
  %24284 = call double @llvm.fmuladd.f64(double 0xBD0DA00000000003, double %24283, double %24275)
  %24285 = load ptr, ptr %7, align 8, !tbaa !9
  %24286 = load i32, ptr %12, align 4, !tbaa !5
  %24287 = load i32, ptr %8, align 4, !tbaa !5
  %24288 = mul nsw i32 10, %24287
  %24289 = add nsw i32 %24286, %24288
  %24290 = sext i32 %24289 to i64
  %24291 = getelementptr inbounds double, ptr %24285, i64 %24290
  %24292 = load double, ptr %24291, align 8, !tbaa !11
  %24293 = call double @llvm.fmuladd.f64(double 0xBCD7000000000000, double %24292, double %24284)
  %24294 = load ptr, ptr %7, align 8, !tbaa !9
  %24295 = load i32, ptr %12, align 4, !tbaa !5
  %24296 = load i32, ptr %8, align 4, !tbaa !5
  %24297 = mul nsw i32 11, %24296
  %24298 = add nsw i32 %24295, %24297
  %24299 = sext i32 %24298 to i64
  %24300 = getelementptr inbounds double, ptr %24294, i64 %24299
  %24301 = load double, ptr %24300, align 8, !tbaa !11
  %24302 = call double @llvm.fmuladd.f64(double 0xBCD9800000000002, double %24301, double %24293)
  %24303 = load ptr, ptr %7, align 8, !tbaa !9
  %24304 = load i32, ptr %12, align 4, !tbaa !5
  %24305 = load i32, ptr %8, align 4, !tbaa !5
  %24306 = mul nsw i32 12, %24305
  %24307 = add nsw i32 %24304, %24306
  %24308 = sext i32 %24307 to i64
  %24309 = getelementptr inbounds double, ptr %24303, i64 %24308
  %24310 = load double, ptr %24309, align 8, !tbaa !11
  %24311 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %24310, double %24302)
  %24312 = load ptr, ptr %7, align 8, !tbaa !9
  %24313 = load i32, ptr %12, align 4, !tbaa !5
  %24314 = load i32, ptr %8, align 4, !tbaa !5
  %24315 = mul nsw i32 13, %24314
  %24316 = add nsw i32 %24313, %24315
  %24317 = sext i32 %24316 to i64
  %24318 = getelementptr inbounds double, ptr %24312, i64 %24317
  %24319 = load double, ptr %24318, align 8, !tbaa !11
  %24320 = call double @llvm.fmuladd.f64(double 0x3C92000000000000, double %24319, double %24311)
  %24321 = load ptr, ptr %7, align 8, !tbaa !9
  %24322 = load i32, ptr %12, align 4, !tbaa !5
  %24323 = load i32, ptr %8, align 4, !tbaa !5
  %24324 = mul nsw i32 14, %24323
  %24325 = add nsw i32 %24322, %24324
  %24326 = sext i32 %24325 to i64
  %24327 = getelementptr inbounds double, ptr %24321, i64 %24326
  %24328 = load double, ptr %24327, align 8, !tbaa !11
  %24329 = call double @llvm.fmuladd.f64(double 0x3CB2000000000000, double %24328, double %24320)
  %24330 = load ptr, ptr %7, align 8, !tbaa !9
  %24331 = load i32, ptr %12, align 4, !tbaa !5
  %24332 = load i32, ptr %8, align 4, !tbaa !5
  %24333 = mul nsw i32 15, %24332
  %24334 = add nsw i32 %24331, %24333
  %24335 = sext i32 %24334 to i64
  %24336 = getelementptr inbounds double, ptr %24330, i64 %24335
  %24337 = load double, ptr %24336, align 8, !tbaa !11
  %24338 = call double @llvm.fmuladd.f64(double 0x3CE1000000000000, double %24337, double %24329)
  %24339 = load ptr, ptr %7, align 8, !tbaa !9
  %24340 = load i32, ptr %12, align 4, !tbaa !5
  %24341 = load i32, ptr %8, align 4, !tbaa !5
  %24342 = mul nsw i32 16, %24341
  %24343 = add nsw i32 %24340, %24342
  %24344 = sext i32 %24343 to i64
  %24345 = getelementptr inbounds double, ptr %24339, i64 %24344
  %24346 = load double, ptr %24345, align 8, !tbaa !11
  %24347 = call double @llvm.fmuladd.f64(double 0x3CC2400000000000, double %24346, double %24338)
  %24348 = load ptr, ptr %7, align 8, !tbaa !9
  %24349 = load i32, ptr %12, align 4, !tbaa !5
  %24350 = load i32, ptr %8, align 4, !tbaa !5
  %24351 = mul nsw i32 17, %24350
  %24352 = add nsw i32 %24349, %24351
  %24353 = sext i32 %24352 to i64
  %24354 = getelementptr inbounds double, ptr %24348, i64 %24353
  %24355 = load double, ptr %24354, align 8, !tbaa !11
  %24356 = call double @llvm.fmuladd.f64(double 0x3CCF000000000000, double %24355, double %24347)
  %24357 = load ptr, ptr %7, align 8, !tbaa !9
  %24358 = load i32, ptr %12, align 4, !tbaa !5
  %24359 = load i32, ptr %8, align 4, !tbaa !5
  %24360 = mul nsw i32 18, %24359
  %24361 = add nsw i32 %24358, %24360
  %24362 = sext i32 %24361 to i64
  %24363 = getelementptr inbounds double, ptr %24357, i64 %24362
  %24364 = load double, ptr %24363, align 8, !tbaa !11
  %24365 = call double @llvm.fmuladd.f64(double 0xBFD4F58312101B3D, double %24364, double %24356)
  %24366 = load ptr, ptr %7, align 8, !tbaa !9
  %24367 = load i32, ptr %12, align 4, !tbaa !5
  %24368 = load i32, ptr %8, align 4, !tbaa !5
  %24369 = mul nsw i32 19, %24368
  %24370 = add nsw i32 %24367, %24369
  %24371 = sext i32 %24370 to i64
  %24372 = getelementptr inbounds double, ptr %24366, i64 %24371
  %24373 = load double, ptr %24372, align 8, !tbaa !11
  %24374 = call double @llvm.fmuladd.f64(double 0xBCCE000000000000, double %24373, double %24365)
  store double %24374, ptr %11, align 8, !tbaa !11
  %24375 = load double, ptr %11, align 8, !tbaa !11
  %24376 = load ptr, ptr %9, align 8, !tbaa !9
  %24377 = load i32, ptr %12, align 4, !tbaa !5
  %24378 = load i32, ptr %10, align 4, !tbaa !5
  %24379 = mul nsw i32 88, %24378
  %24380 = add nsw i32 %24377, %24379
  %24381 = sext i32 %24380 to i64
  %24382 = getelementptr inbounds double, ptr %24376, i64 %24381
  store double %24375, ptr %24382, align 8, !tbaa !11
  %24383 = load ptr, ptr %7, align 8, !tbaa !9
  %24384 = load i32, ptr %12, align 4, !tbaa !5
  %24385 = load i32, ptr %8, align 4, !tbaa !5
  %24386 = mul nsw i32 0, %24385
  %24387 = add nsw i32 %24384, %24386
  %24388 = sext i32 %24387 to i64
  %24389 = getelementptr inbounds double, ptr %24383, i64 %24388
  %24390 = load double, ptr %24389, align 8, !tbaa !11
  %24391 = load ptr, ptr %7, align 8, !tbaa !9
  %24392 = load i32, ptr %12, align 4, !tbaa !5
  %24393 = load i32, ptr %8, align 4, !tbaa !5
  %24394 = mul nsw i32 1, %24393
  %24395 = add nsw i32 %24392, %24394
  %24396 = sext i32 %24395 to i64
  %24397 = getelementptr inbounds double, ptr %24391, i64 %24396
  %24398 = load double, ptr %24397, align 8, !tbaa !11
  %24399 = fmul double 0xBD12680000000000, %24398
  %24400 = call double @llvm.fmuladd.f64(double 0xBD17000000000000, double %24390, double %24399)
  %24401 = load ptr, ptr %7, align 8, !tbaa !9
  %24402 = load i32, ptr %12, align 4, !tbaa !5
  %24403 = load i32, ptr %8, align 4, !tbaa !5
  %24404 = mul nsw i32 2, %24403
  %24405 = add nsw i32 %24402, %24404
  %24406 = sext i32 %24405 to i64
  %24407 = getelementptr inbounds double, ptr %24401, i64 %24406
  %24408 = load double, ptr %24407, align 8, !tbaa !11
  %24409 = call double @llvm.fmuladd.f64(double 0x3CEADFFFFFFFFFFF, double %24408, double %24400)
  %24410 = load ptr, ptr %7, align 8, !tbaa !9
  %24411 = load i32, ptr %12, align 4, !tbaa !5
  %24412 = load i32, ptr %8, align 4, !tbaa !5
  %24413 = mul nsw i32 3, %24412
  %24414 = add nsw i32 %24411, %24413
  %24415 = sext i32 %24414 to i64
  %24416 = getelementptr inbounds double, ptr %24410, i64 %24415
  %24417 = load double, ptr %24416, align 8, !tbaa !11
  %24418 = call double @llvm.fmuladd.f64(double 0xBCF1380000000000, double %24417, double %24409)
  %24419 = load ptr, ptr %7, align 8, !tbaa !9
  %24420 = load i32, ptr %12, align 4, !tbaa !5
  %24421 = load i32, ptr %8, align 4, !tbaa !5
  %24422 = mul nsw i32 4, %24421
  %24423 = add nsw i32 %24420, %24422
  %24424 = sext i32 %24423 to i64
  %24425 = getelementptr inbounds double, ptr %24419, i64 %24424
  %24426 = load double, ptr %24425, align 8, !tbaa !11
  %24427 = call double @llvm.fmuladd.f64(double 0x3D19CFFFFFFFFFFF, double %24426, double %24418)
  %24428 = load ptr, ptr %7, align 8, !tbaa !9
  %24429 = load i32, ptr %12, align 4, !tbaa !5
  %24430 = load i32, ptr %8, align 4, !tbaa !5
  %24431 = mul nsw i32 5, %24430
  %24432 = add nsw i32 %24429, %24431
  %24433 = sext i32 %24432 to i64
  %24434 = getelementptr inbounds double, ptr %24428, i64 %24433
  %24435 = load double, ptr %24434, align 8, !tbaa !11
  %24436 = call double @llvm.fmuladd.f64(double 0x3CF7400000000000, double %24435, double %24427)
  %24437 = load ptr, ptr %7, align 8, !tbaa !9
  %24438 = load i32, ptr %12, align 4, !tbaa !5
  %24439 = load i32, ptr %8, align 4, !tbaa !5
  %24440 = mul nsw i32 6, %24439
  %24441 = add nsw i32 %24438, %24440
  %24442 = sext i32 %24441 to i64
  %24443 = getelementptr inbounds double, ptr %24437, i64 %24442
  %24444 = load double, ptr %24443, align 8, !tbaa !11
  %24445 = call double @llvm.fmuladd.f64(double 0x3D08700000000003, double %24444, double %24436)
  %24446 = load ptr, ptr %7, align 8, !tbaa !9
  %24447 = load i32, ptr %12, align 4, !tbaa !5
  %24448 = load i32, ptr %8, align 4, !tbaa !5
  %24449 = mul nsw i32 7, %24448
  %24450 = add nsw i32 %24447, %24449
  %24451 = sext i32 %24450 to i64
  %24452 = getelementptr inbounds double, ptr %24446, i64 %24451
  %24453 = load double, ptr %24452, align 8, !tbaa !11
  %24454 = call double @llvm.fmuladd.f64(double 0x3CF6E00000000000, double %24453, double %24445)
  %24455 = load ptr, ptr %7, align 8, !tbaa !9
  %24456 = load i32, ptr %12, align 4, !tbaa !5
  %24457 = load i32, ptr %8, align 4, !tbaa !5
  %24458 = mul nsw i32 8, %24457
  %24459 = add nsw i32 %24456, %24458
  %24460 = sext i32 %24459 to i64
  %24461 = getelementptr inbounds double, ptr %24455, i64 %24460
  %24462 = load double, ptr %24461, align 8, !tbaa !11
  %24463 = call double @llvm.fmuladd.f64(double 0xBD0FD00000000002, double %24462, double %24454)
  %24464 = load ptr, ptr %7, align 8, !tbaa !9
  %24465 = load i32, ptr %12, align 4, !tbaa !5
  %24466 = load i32, ptr %8, align 4, !tbaa !5
  %24467 = mul nsw i32 9, %24466
  %24468 = add nsw i32 %24465, %24467
  %24469 = sext i32 %24468 to i64
  %24470 = getelementptr inbounds double, ptr %24464, i64 %24469
  %24471 = load double, ptr %24470, align 8, !tbaa !11
  %24472 = call double @llvm.fmuladd.f64(double 0xC0118E7E1D8191B1, double %24471, double %24463)
  %24473 = load ptr, ptr %7, align 8, !tbaa !9
  %24474 = load i32, ptr %12, align 4, !tbaa !5
  %24475 = load i32, ptr %8, align 4, !tbaa !5
  %24476 = mul nsw i32 10, %24475
  %24477 = add nsw i32 %24474, %24476
  %24478 = sext i32 %24477 to i64
  %24479 = getelementptr inbounds double, ptr %24473, i64 %24478
  %24480 = load double, ptr %24479, align 8, !tbaa !11
  %24481 = call double @llvm.fmuladd.f64(double 0xBCD8000000000001, double %24480, double %24472)
  %24482 = load ptr, ptr %7, align 8, !tbaa !9
  %24483 = load i32, ptr %12, align 4, !tbaa !5
  %24484 = load i32, ptr %8, align 4, !tbaa !5
  %24485 = mul nsw i32 11, %24484
  %24486 = add nsw i32 %24483, %24485
  %24487 = sext i32 %24486 to i64
  %24488 = getelementptr inbounds double, ptr %24482, i64 %24487
  %24489 = load double, ptr %24488, align 8, !tbaa !11
  %24490 = call double @llvm.fmuladd.f64(double 0xBCD7800000000000, double %24489, double %24481)
  %24491 = load ptr, ptr %7, align 8, !tbaa !9
  %24492 = load i32, ptr %12, align 4, !tbaa !5
  %24493 = load i32, ptr %8, align 4, !tbaa !5
  %24494 = mul nsw i32 12, %24493
  %24495 = add nsw i32 %24492, %24494
  %24496 = sext i32 %24495 to i64
  %24497 = getelementptr inbounds double, ptr %24491, i64 %24496
  %24498 = load double, ptr %24497, align 8, !tbaa !11
  %24499 = call double @llvm.fmuladd.f64(double 0x3CAE000000000002, double %24498, double %24490)
  %24500 = load ptr, ptr %7, align 8, !tbaa !9
  %24501 = load i32, ptr %12, align 4, !tbaa !5
  %24502 = load i32, ptr %8, align 4, !tbaa !5
  %24503 = mul nsw i32 13, %24502
  %24504 = add nsw i32 %24501, %24503
  %24505 = sext i32 %24504 to i64
  %24506 = getelementptr inbounds double, ptr %24500, i64 %24505
  %24507 = load double, ptr %24506, align 8, !tbaa !11
  %24508 = call double @llvm.fmuladd.f64(double 0xBCA7000000000002, double %24507, double %24499)
  %24509 = load ptr, ptr %7, align 8, !tbaa !9
  %24510 = load i32, ptr %12, align 4, !tbaa !5
  %24511 = load i32, ptr %8, align 4, !tbaa !5
  %24512 = mul nsw i32 14, %24511
  %24513 = add nsw i32 %24510, %24512
  %24514 = sext i32 %24513 to i64
  %24515 = getelementptr inbounds double, ptr %24509, i64 %24514
  %24516 = load double, ptr %24515, align 8, !tbaa !11
  %24517 = call double @llvm.fmuladd.f64(double 0x3CE1800000000000, double %24516, double %24508)
  %24518 = load ptr, ptr %7, align 8, !tbaa !9
  %24519 = load i32, ptr %12, align 4, !tbaa !5
  %24520 = load i32, ptr %8, align 4, !tbaa !5
  %24521 = mul nsw i32 15, %24520
  %24522 = add nsw i32 %24519, %24521
  %24523 = sext i32 %24522 to i64
  %24524 = getelementptr inbounds double, ptr %24518, i64 %24523
  %24525 = load double, ptr %24524, align 8, !tbaa !11
  %24526 = call double @llvm.fmuladd.f64(double 0x3CBC000000000000, double %24525, double %24517)
  %24527 = load ptr, ptr %7, align 8, !tbaa !9
  %24528 = load i32, ptr %12, align 4, !tbaa !5
  %24529 = load i32, ptr %8, align 4, !tbaa !5
  %24530 = mul nsw i32 16, %24529
  %24531 = add nsw i32 %24528, %24530
  %24532 = sext i32 %24531 to i64
  %24533 = getelementptr inbounds double, ptr %24527, i64 %24532
  %24534 = load double, ptr %24533, align 8, !tbaa !11
  %24535 = call double @llvm.fmuladd.f64(double 0x3CC9000000000000, double %24534, double %24526)
  %24536 = load ptr, ptr %7, align 8, !tbaa !9
  %24537 = load i32, ptr %12, align 4, !tbaa !5
  %24538 = load i32, ptr %8, align 4, !tbaa !5
  %24539 = mul nsw i32 17, %24538
  %24540 = add nsw i32 %24537, %24539
  %24541 = sext i32 %24540 to i64
  %24542 = getelementptr inbounds double, ptr %24536, i64 %24541
  %24543 = load double, ptr %24542, align 8, !tbaa !11
  %24544 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %24543, double %24535)
  %24545 = load ptr, ptr %7, align 8, !tbaa !9
  %24546 = load i32, ptr %12, align 4, !tbaa !5
  %24547 = load i32, ptr %8, align 4, !tbaa !5
  %24548 = mul nsw i32 18, %24547
  %24549 = add nsw i32 %24546, %24548
  %24550 = sext i32 %24549 to i64
  %24551 = getelementptr inbounds double, ptr %24545, i64 %24550
  %24552 = load double, ptr %24551, align 8, !tbaa !11
  %24553 = call double @llvm.fmuladd.f64(double 0xBCCD000000000000, double %24552, double %24544)
  %24554 = load ptr, ptr %7, align 8, !tbaa !9
  %24555 = load i32, ptr %12, align 4, !tbaa !5
  %24556 = load i32, ptr %8, align 4, !tbaa !5
  %24557 = mul nsw i32 19, %24556
  %24558 = add nsw i32 %24555, %24557
  %24559 = sext i32 %24558 to i64
  %24560 = getelementptr inbounds double, ptr %24554, i64 %24559
  %24561 = load double, ptr %24560, align 8, !tbaa !11
  %24562 = call double @llvm.fmuladd.f64(double 0xBFD4F58312101B3D, double %24561, double %24553)
  store double %24562, ptr %11, align 8, !tbaa !11
  %24563 = load double, ptr %11, align 8, !tbaa !11
  %24564 = load ptr, ptr %9, align 8, !tbaa !9
  %24565 = load i32, ptr %12, align 4, !tbaa !5
  %24566 = load i32, ptr %10, align 4, !tbaa !5
  %24567 = mul nsw i32 89, %24566
  %24568 = add nsw i32 %24565, %24567
  %24569 = sext i32 %24568 to i64
  %24570 = getelementptr inbounds double, ptr %24564, i64 %24569
  store double %24563, ptr %24570, align 8, !tbaa !11
  %24571 = load ptr, ptr %7, align 8, !tbaa !9
  %24572 = load i32, ptr %12, align 4, !tbaa !5
  %24573 = load i32, ptr %8, align 4, !tbaa !5
  %24574 = mul nsw i32 0, %24573
  %24575 = add nsw i32 %24572, %24574
  %24576 = sext i32 %24575 to i64
  %24577 = getelementptr inbounds double, ptr %24571, i64 %24576
  %24578 = load double, ptr %24577, align 8, !tbaa !11
  %24579 = load ptr, ptr %7, align 8, !tbaa !9
  %24580 = load i32, ptr %12, align 4, !tbaa !5
  %24581 = load i32, ptr %8, align 4, !tbaa !5
  %24582 = mul nsw i32 1, %24581
  %24583 = add nsw i32 %24580, %24582
  %24584 = sext i32 %24583 to i64
  %24585 = getelementptr inbounds double, ptr %24579, i64 %24584
  %24586 = load double, ptr %24585, align 8, !tbaa !11
  %24587 = fmul double 0xBCC4800000000000, %24586
  %24588 = call double @llvm.fmuladd.f64(double 0x3FF3F64564513B1C, double %24578, double %24587)
  %24589 = load ptr, ptr %7, align 8, !tbaa !9
  %24590 = load i32, ptr %12, align 4, !tbaa !5
  %24591 = load i32, ptr %8, align 4, !tbaa !5
  %24592 = mul nsw i32 2, %24591
  %24593 = add nsw i32 %24590, %24592
  %24594 = sext i32 %24593 to i64
  %24595 = getelementptr inbounds double, ptr %24589, i64 %24594
  %24596 = load double, ptr %24595, align 8, !tbaa !11
  %24597 = call double @llvm.fmuladd.f64(double 0xBCC6200000000000, double %24596, double %24588)
  %24598 = load ptr, ptr %7, align 8, !tbaa !9
  %24599 = load i32, ptr %12, align 4, !tbaa !5
  %24600 = load i32, ptr %8, align 4, !tbaa !5
  %24601 = mul nsw i32 3, %24600
  %24602 = add nsw i32 %24599, %24601
  %24603 = sext i32 %24602 to i64
  %24604 = getelementptr inbounds double, ptr %24598, i64 %24603
  %24605 = load double, ptr %24604, align 8, !tbaa !11
  %24606 = call double @llvm.fmuladd.f64(double 0xBCC4600000000000, double %24605, double %24597)
  %24607 = load ptr, ptr %7, align 8, !tbaa !9
  %24608 = load i32, ptr %12, align 4, !tbaa !5
  %24609 = load i32, ptr %8, align 4, !tbaa !5
  %24610 = mul nsw i32 4, %24609
  %24611 = add nsw i32 %24608, %24610
  %24612 = sext i32 %24611 to i64
  %24613 = getelementptr inbounds double, ptr %24607, i64 %24612
  %24614 = load double, ptr %24613, align 8, !tbaa !11
  %24615 = call double @llvm.fmuladd.f64(double 0x3CEB600000000000, double %24614, double %24606)
  %24616 = load ptr, ptr %7, align 8, !tbaa !9
  %24617 = load i32, ptr %12, align 4, !tbaa !5
  %24618 = load i32, ptr %8, align 4, !tbaa !5
  %24619 = mul nsw i32 5, %24618
  %24620 = add nsw i32 %24617, %24619
  %24621 = sext i32 %24620 to i64
  %24622 = getelementptr inbounds double, ptr %24616, i64 %24621
  %24623 = load double, ptr %24622, align 8, !tbaa !11
  %24624 = call double @llvm.fmuladd.f64(double 0x3CEB200000000000, double %24623, double %24615)
  %24625 = load ptr, ptr %7, align 8, !tbaa !9
  %24626 = load i32, ptr %12, align 4, !tbaa !5
  %24627 = load i32, ptr %8, align 4, !tbaa !5
  %24628 = mul nsw i32 6, %24627
  %24629 = add nsw i32 %24626, %24628
  %24630 = sext i32 %24629 to i64
  %24631 = getelementptr inbounds double, ptr %24625, i64 %24630
  %24632 = load double, ptr %24631, align 8, !tbaa !11
  %24633 = call double @llvm.fmuladd.f64(double 0x3CEBA00000000000, double %24632, double %24624)
  %24634 = load ptr, ptr %7, align 8, !tbaa !9
  %24635 = load i32, ptr %12, align 4, !tbaa !5
  %24636 = load i32, ptr %8, align 4, !tbaa !5
  %24637 = mul nsw i32 7, %24636
  %24638 = add nsw i32 %24635, %24637
  %24639 = sext i32 %24638 to i64
  %24640 = getelementptr inbounds double, ptr %24634, i64 %24639
  %24641 = load double, ptr %24640, align 8, !tbaa !11
  %24642 = call double @llvm.fmuladd.f64(double 0x3CE9600000000001, double %24641, double %24633)
  %24643 = load ptr, ptr %7, align 8, !tbaa !9
  %24644 = load i32, ptr %12, align 4, !tbaa !5
  %24645 = load i32, ptr %8, align 4, !tbaa !5
  %24646 = mul nsw i32 8, %24645
  %24647 = add nsw i32 %24644, %24646
  %24648 = sext i32 %24647 to i64
  %24649 = getelementptr inbounds double, ptr %24643, i64 %24648
  %24650 = load double, ptr %24649, align 8, !tbaa !11
  %24651 = call double @llvm.fmuladd.f64(double 0x3CEAC00000000001, double %24650, double %24642)
  %24652 = load ptr, ptr %7, align 8, !tbaa !9
  %24653 = load i32, ptr %12, align 4, !tbaa !5
  %24654 = load i32, ptr %8, align 4, !tbaa !5
  %24655 = mul nsw i32 9, %24654
  %24656 = add nsw i32 %24653, %24655
  %24657 = sext i32 %24656 to i64
  %24658 = getelementptr inbounds double, ptr %24652, i64 %24657
  %24659 = load double, ptr %24658, align 8, !tbaa !11
  %24660 = call double @llvm.fmuladd.f64(double 0x3CE9C00000000000, double %24659, double %24651)
  %24661 = load ptr, ptr %7, align 8, !tbaa !9
  %24662 = load i32, ptr %12, align 4, !tbaa !5
  %24663 = load i32, ptr %8, align 4, !tbaa !5
  %24664 = mul nsw i32 10, %24663
  %24665 = add nsw i32 %24662, %24664
  %24666 = sext i32 %24665 to i64
  %24667 = getelementptr inbounds double, ptr %24661, i64 %24666
  %24668 = load double, ptr %24667, align 8, !tbaa !11
  %24669 = call double @llvm.fmuladd.f64(double 0x3FE3AA36D354D104, double %24668, double %24660)
  %24670 = load ptr, ptr %7, align 8, !tbaa !9
  %24671 = load i32, ptr %12, align 4, !tbaa !5
  %24672 = load i32, ptr %8, align 4, !tbaa !5
  %24673 = mul nsw i32 11, %24672
  %24674 = add nsw i32 %24671, %24673
  %24675 = sext i32 %24674 to i64
  %24676 = getelementptr inbounds double, ptr %24670, i64 %24675
  %24677 = load double, ptr %24676, align 8, !tbaa !11
  %24678 = call double @llvm.fmuladd.f64(double 0xBCB1000000000001, double %24677, double %24669)
  %24679 = load ptr, ptr %7, align 8, !tbaa !9
  %24680 = load i32, ptr %12, align 4, !tbaa !5
  %24681 = load i32, ptr %8, align 4, !tbaa !5
  %24682 = mul nsw i32 12, %24681
  %24683 = add nsw i32 %24680, %24682
  %24684 = sext i32 %24683 to i64
  %24685 = getelementptr inbounds double, ptr %24679, i64 %24684
  %24686 = load double, ptr %24685, align 8, !tbaa !11
  %24687 = call double @llvm.fmuladd.f64(double 0xBCB43FFFFFFFFFFF, double %24686, double %24678)
  %24688 = load ptr, ptr %7, align 8, !tbaa !9
  %24689 = load i32, ptr %12, align 4, !tbaa !5
  %24690 = load i32, ptr %8, align 4, !tbaa !5
  %24691 = mul nsw i32 13, %24690
  %24692 = add nsw i32 %24689, %24691
  %24693 = sext i32 %24692 to i64
  %24694 = getelementptr inbounds double, ptr %24688, i64 %24693
  %24695 = load double, ptr %24694, align 8, !tbaa !11
  %24696 = call double @llvm.fmuladd.f64(double 0xBCB2C00000000001, double %24695, double %24687)
  %24697 = load ptr, ptr %7, align 8, !tbaa !9
  %24698 = load i32, ptr %12, align 4, !tbaa !5
  %24699 = load i32, ptr %8, align 4, !tbaa !5
  %24700 = mul nsw i32 14, %24699
  %24701 = add nsw i32 %24698, %24700
  %24702 = sext i32 %24701 to i64
  %24703 = getelementptr inbounds double, ptr %24697, i64 %24702
  %24704 = load double, ptr %24703, align 8, !tbaa !11
  %24705 = call double @llvm.fmuladd.f64(double 0x3CDBC00000000002, double %24704, double %24696)
  %24706 = load ptr, ptr %7, align 8, !tbaa !9
  %24707 = load i32, ptr %12, align 4, !tbaa !5
  %24708 = load i32, ptr %8, align 4, !tbaa !5
  %24709 = mul nsw i32 15, %24708
  %24710 = add nsw i32 %24707, %24709
  %24711 = sext i32 %24710 to i64
  %24712 = getelementptr inbounds double, ptr %24706, i64 %24711
  %24713 = load double, ptr %24712, align 8, !tbaa !11
  %24714 = call double @llvm.fmuladd.f64(double 0x3CDBC00000000002, double %24713, double %24705)
  %24715 = load ptr, ptr %7, align 8, !tbaa !9
  %24716 = load i32, ptr %12, align 4, !tbaa !5
  %24717 = load i32, ptr %8, align 4, !tbaa !5
  %24718 = mul nsw i32 16, %24717
  %24719 = add nsw i32 %24716, %24718
  %24720 = sext i32 %24719 to i64
  %24721 = getelementptr inbounds double, ptr %24715, i64 %24720
  %24722 = load double, ptr %24721, align 8, !tbaa !11
  %24723 = call double @llvm.fmuladd.f64(double 0x3CDB400000000001, double %24722, double %24714)
  %24724 = load ptr, ptr %7, align 8, !tbaa !9
  %24725 = load i32, ptr %12, align 4, !tbaa !5
  %24726 = load i32, ptr %8, align 4, !tbaa !5
  %24727 = mul nsw i32 17, %24726
  %24728 = add nsw i32 %24725, %24727
  %24729 = sext i32 %24728 to i64
  %24730 = getelementptr inbounds double, ptr %24724, i64 %24729
  %24731 = load double, ptr %24730, align 8, !tbaa !11
  %24732 = call double @llvm.fmuladd.f64(double 0x3CDAC00000000001, double %24731, double %24723)
  %24733 = load ptr, ptr %7, align 8, !tbaa !9
  %24734 = load i32, ptr %12, align 4, !tbaa !5
  %24735 = load i32, ptr %8, align 4, !tbaa !5
  %24736 = mul nsw i32 18, %24735
  %24737 = add nsw i32 %24734, %24736
  %24738 = sext i32 %24737 to i64
  %24739 = getelementptr inbounds double, ptr %24733, i64 %24738
  %24740 = load double, ptr %24739, align 8, !tbaa !11
  %24741 = call double @llvm.fmuladd.f64(double 0x3CDB7FFFFFFFFFFF, double %24740, double %24732)
  %24742 = load ptr, ptr %7, align 8, !tbaa !9
  %24743 = load i32, ptr %12, align 4, !tbaa !5
  %24744 = load i32, ptr %8, align 4, !tbaa !5
  %24745 = mul nsw i32 19, %24744
  %24746 = add nsw i32 %24743, %24745
  %24747 = sext i32 %24746 to i64
  %24748 = getelementptr inbounds double, ptr %24742, i64 %24747
  %24749 = load double, ptr %24748, align 8, !tbaa !11
  %24750 = call double @llvm.fmuladd.f64(double 0x3CDA000000000003, double %24749, double %24741)
  store double %24750, ptr %11, align 8, !tbaa !11
  %24751 = load double, ptr %11, align 8, !tbaa !11
  %24752 = load ptr, ptr %9, align 8, !tbaa !9
  %24753 = load i32, ptr %12, align 4, !tbaa !5
  %24754 = load i32, ptr %10, align 4, !tbaa !5
  %24755 = mul nsw i32 90, %24754
  %24756 = add nsw i32 %24753, %24755
  %24757 = sext i32 %24756 to i64
  %24758 = getelementptr inbounds double, ptr %24752, i64 %24757
  store double %24751, ptr %24758, align 8, !tbaa !11
  %24759 = load ptr, ptr %7, align 8, !tbaa !9
  %24760 = load i32, ptr %12, align 4, !tbaa !5
  %24761 = load i32, ptr %8, align 4, !tbaa !5
  %24762 = mul nsw i32 0, %24761
  %24763 = add nsw i32 %24760, %24762
  %24764 = sext i32 %24763 to i64
  %24765 = getelementptr inbounds double, ptr %24759, i64 %24764
  %24766 = load double, ptr %24765, align 8, !tbaa !11
  %24767 = load ptr, ptr %7, align 8, !tbaa !9
  %24768 = load i32, ptr %12, align 4, !tbaa !5
  %24769 = load i32, ptr %8, align 4, !tbaa !5
  %24770 = mul nsw i32 1, %24769
  %24771 = add nsw i32 %24768, %24770
  %24772 = sext i32 %24771 to i64
  %24773 = getelementptr inbounds double, ptr %24767, i64 %24772
  %24774 = load double, ptr %24773, align 8, !tbaa !11
  %24775 = fmul double 0x3FF3F64564513A68, %24774
  %24776 = call double @llvm.fmuladd.f64(double 0xBCF4FFFFFFFFFFFF, double %24766, double %24775)
  %24777 = load ptr, ptr %7, align 8, !tbaa !9
  %24778 = load i32, ptr %12, align 4, !tbaa !5
  %24779 = load i32, ptr %8, align 4, !tbaa !5
  %24780 = mul nsw i32 2, %24779
  %24781 = add nsw i32 %24778, %24780
  %24782 = sext i32 %24781 to i64
  %24783 = getelementptr inbounds double, ptr %24777, i64 %24782
  %24784 = load double, ptr %24783, align 8, !tbaa !11
  %24785 = call double @llvm.fmuladd.f64(double 0x3CE07FFFFFFFFFFF, double %24784, double %24776)
  %24786 = load ptr, ptr %7, align 8, !tbaa !9
  %24787 = load i32, ptr %12, align 4, !tbaa !5
  %24788 = load i32, ptr %8, align 4, !tbaa !5
  %24789 = mul nsw i32 3, %24788
  %24790 = add nsw i32 %24787, %24789
  %24791 = sext i32 %24790 to i64
  %24792 = getelementptr inbounds double, ptr %24786, i64 %24791
  %24793 = load double, ptr %24792, align 8, !tbaa !11
  %24794 = call double @llvm.fmuladd.f64(double 0x3CE4DFFFFFFFFFFF, double %24793, double %24785)
  %24795 = load ptr, ptr %7, align 8, !tbaa !9
  %24796 = load i32, ptr %12, align 4, !tbaa !5
  %24797 = load i32, ptr %8, align 4, !tbaa !5
  %24798 = mul nsw i32 4, %24797
  %24799 = add nsw i32 %24796, %24798
  %24800 = sext i32 %24799 to i64
  %24801 = getelementptr inbounds double, ptr %24795, i64 %24800
  %24802 = load double, ptr %24801, align 8, !tbaa !11
  %24803 = call double @llvm.fmuladd.f64(double 0xBCE8000000000001, double %24802, double %24794)
  %24804 = load ptr, ptr %7, align 8, !tbaa !9
  %24805 = load i32, ptr %12, align 4, !tbaa !5
  %24806 = load i32, ptr %8, align 4, !tbaa !5
  %24807 = mul nsw i32 5, %24806
  %24808 = add nsw i32 %24805, %24807
  %24809 = sext i32 %24808 to i64
  %24810 = getelementptr inbounds double, ptr %24804, i64 %24809
  %24811 = load double, ptr %24810, align 8, !tbaa !11
  %24812 = call double @llvm.fmuladd.f64(double 0xBCE67FFFFFFFFFFF, double %24811, double %24803)
  %24813 = load ptr, ptr %7, align 8, !tbaa !9
  %24814 = load i32, ptr %12, align 4, !tbaa !5
  %24815 = load i32, ptr %8, align 4, !tbaa !5
  %24816 = mul nsw i32 6, %24815
  %24817 = add nsw i32 %24814, %24816
  %24818 = sext i32 %24817 to i64
  %24819 = getelementptr inbounds double, ptr %24813, i64 %24818
  %24820 = load double, ptr %24819, align 8, !tbaa !11
  %24821 = call double @llvm.fmuladd.f64(double 0x3CEAC00000000001, double %24820, double %24812)
  %24822 = load ptr, ptr %7, align 8, !tbaa !9
  %24823 = load i32, ptr %12, align 4, !tbaa !5
  %24824 = load i32, ptr %8, align 4, !tbaa !5
  %24825 = mul nsw i32 7, %24824
  %24826 = add nsw i32 %24823, %24825
  %24827 = sext i32 %24826 to i64
  %24828 = getelementptr inbounds double, ptr %24822, i64 %24827
  %24829 = load double, ptr %24828, align 8, !tbaa !11
  %24830 = call double @llvm.fmuladd.f64(double 0x3CE7C00000000001, double %24829, double %24821)
  %24831 = load ptr, ptr %7, align 8, !tbaa !9
  %24832 = load i32, ptr %12, align 4, !tbaa !5
  %24833 = load i32, ptr %8, align 4, !tbaa !5
  %24834 = mul nsw i32 8, %24833
  %24835 = add nsw i32 %24832, %24834
  %24836 = sext i32 %24835 to i64
  %24837 = getelementptr inbounds double, ptr %24831, i64 %24836
  %24838 = load double, ptr %24837, align 8, !tbaa !11
  %24839 = call double @llvm.fmuladd.f64(double 0x3D0E800000000000, double %24838, double %24830)
  %24840 = load ptr, ptr %7, align 8, !tbaa !9
  %24841 = load i32, ptr %12, align 4, !tbaa !5
  %24842 = load i32, ptr %8, align 4, !tbaa !5
  %24843 = mul nsw i32 9, %24842
  %24844 = add nsw i32 %24841, %24843
  %24845 = sext i32 %24844 to i64
  %24846 = getelementptr inbounds double, ptr %24840, i64 %24845
  %24847 = load double, ptr %24846, align 8, !tbaa !11
  %24848 = call double @llvm.fmuladd.f64(double 0x3D0E3FFFFFFFFFFD, double %24847, double %24839)
  %24849 = load ptr, ptr %7, align 8, !tbaa !9
  %24850 = load i32, ptr %12, align 4, !tbaa !5
  %24851 = load i32, ptr %8, align 4, !tbaa !5
  %24852 = mul nsw i32 10, %24851
  %24853 = add nsw i32 %24850, %24852
  %24854 = sext i32 %24853 to i64
  %24855 = getelementptr inbounds double, ptr %24849, i64 %24854
  %24856 = load double, ptr %24855, align 8, !tbaa !11
  %24857 = call double @llvm.fmuladd.f64(double 0xBCE2000000000001, double %24856, double %24848)
  %24858 = load ptr, ptr %7, align 8, !tbaa !9
  %24859 = load i32, ptr %12, align 4, !tbaa !5
  %24860 = load i32, ptr %8, align 4, !tbaa !5
  %24861 = mul nsw i32 11, %24860
  %24862 = add nsw i32 %24859, %24861
  %24863 = sext i32 %24862 to i64
  %24864 = getelementptr inbounds double, ptr %24858, i64 %24863
  %24865 = load double, ptr %24864, align 8, !tbaa !11
  %24866 = call double @llvm.fmuladd.f64(double 0x3FE3AA36D354D050, double %24865, double %24857)
  %24867 = load ptr, ptr %7, align 8, !tbaa !9
  %24868 = load i32, ptr %12, align 4, !tbaa !5
  %24869 = load i32, ptr %8, align 4, !tbaa !5
  %24870 = mul nsw i32 12, %24869
  %24871 = add nsw i32 %24868, %24870
  %24872 = sext i32 %24871 to i64
  %24873 = getelementptr inbounds double, ptr %24867, i64 %24872
  %24874 = load double, ptr %24873, align 8, !tbaa !11
  %24875 = call double @llvm.fmuladd.f64(double 0x3CCB000000000000, double %24874, double %24866)
  %24876 = load ptr, ptr %7, align 8, !tbaa !9
  %24877 = load i32, ptr %12, align 4, !tbaa !5
  %24878 = load i32, ptr %8, align 4, !tbaa !5
  %24879 = mul nsw i32 13, %24878
  %24880 = add nsw i32 %24877, %24879
  %24881 = sext i32 %24880 to i64
  %24882 = getelementptr inbounds double, ptr %24876, i64 %24881
  %24883 = load double, ptr %24882, align 8, !tbaa !11
  %24884 = call double @llvm.fmuladd.f64(double 0x3CD4C00000000000, double %24883, double %24875)
  %24885 = load ptr, ptr %7, align 8, !tbaa !9
  %24886 = load i32, ptr %12, align 4, !tbaa !5
  %24887 = load i32, ptr %8, align 4, !tbaa !5
  %24888 = mul nsw i32 14, %24887
  %24889 = add nsw i32 %24886, %24888
  %24890 = sext i32 %24889 to i64
  %24891 = getelementptr inbounds double, ptr %24885, i64 %24890
  %24892 = load double, ptr %24891, align 8, !tbaa !11
  %24893 = call double @llvm.fmuladd.f64(double 0xBCD4000000000002, double %24892, double %24884)
  %24894 = load ptr, ptr %7, align 8, !tbaa !9
  %24895 = load i32, ptr %12, align 4, !tbaa !5
  %24896 = load i32, ptr %8, align 4, !tbaa !5
  %24897 = mul nsw i32 15, %24896
  %24898 = add nsw i32 %24895, %24897
  %24899 = sext i32 %24898 to i64
  %24900 = getelementptr inbounds double, ptr %24894, i64 %24899
  %24901 = load double, ptr %24900, align 8, !tbaa !11
  %24902 = call double @llvm.fmuladd.f64(double 0xBCD7000000000000, double %24901, double %24893)
  %24903 = load ptr, ptr %7, align 8, !tbaa !9
  %24904 = load i32, ptr %12, align 4, !tbaa !5
  %24905 = load i32, ptr %8, align 4, !tbaa !5
  %24906 = mul nsw i32 16, %24905
  %24907 = add nsw i32 %24904, %24906
  %24908 = sext i32 %24907 to i64
  %24909 = getelementptr inbounds double, ptr %24903, i64 %24908
  %24910 = load double, ptr %24909, align 8, !tbaa !11
  %24911 = call double @llvm.fmuladd.f64(double 0x3CDE800000000001, double %24910, double %24902)
  %24912 = load ptr, ptr %7, align 8, !tbaa !9
  %24913 = load i32, ptr %12, align 4, !tbaa !5
  %24914 = load i32, ptr %8, align 4, !tbaa !5
  %24915 = mul nsw i32 17, %24914
  %24916 = add nsw i32 %24913, %24915
  %24917 = sext i32 %24916 to i64
  %24918 = getelementptr inbounds double, ptr %24912, i64 %24917
  %24919 = load double, ptr %24918, align 8, !tbaa !11
  %24920 = call double @llvm.fmuladd.f64(double 0x3CDA7FFFFFFFFFFE, double %24919, double %24911)
  %24921 = load ptr, ptr %7, align 8, !tbaa !9
  %24922 = load i32, ptr %12, align 4, !tbaa !5
  %24923 = load i32, ptr %8, align 4, !tbaa !5
  %24924 = mul nsw i32 18, %24923
  %24925 = add nsw i32 %24922, %24924
  %24926 = sext i32 %24925 to i64
  %24927 = getelementptr inbounds double, ptr %24921, i64 %24926
  %24928 = load double, ptr %24927, align 8, !tbaa !11
  %24929 = call double @llvm.fmuladd.f64(double 0x3D00000000000000, double %24928, double %24920)
  %24930 = load ptr, ptr %7, align 8, !tbaa !9
  %24931 = load i32, ptr %12, align 4, !tbaa !5
  %24932 = load i32, ptr %8, align 4, !tbaa !5
  %24933 = mul nsw i32 19, %24932
  %24934 = add nsw i32 %24931, %24933
  %24935 = sext i32 %24934 to i64
  %24936 = getelementptr inbounds double, ptr %24930, i64 %24935
  %24937 = load double, ptr %24936, align 8, !tbaa !11
  %24938 = call double @llvm.fmuladd.f64(double 0x3CFD800000000001, double %24937, double %24929)
  store double %24938, ptr %11, align 8, !tbaa !11
  %24939 = load double, ptr %11, align 8, !tbaa !11
  %24940 = load ptr, ptr %9, align 8, !tbaa !9
  %24941 = load i32, ptr %12, align 4, !tbaa !5
  %24942 = load i32, ptr %10, align 4, !tbaa !5
  %24943 = mul nsw i32 91, %24942
  %24944 = add nsw i32 %24941, %24943
  %24945 = sext i32 %24944 to i64
  %24946 = getelementptr inbounds double, ptr %24940, i64 %24945
  store double %24939, ptr %24946, align 8, !tbaa !11
  %24947 = load ptr, ptr %7, align 8, !tbaa !9
  %24948 = load i32, ptr %12, align 4, !tbaa !5
  %24949 = load i32, ptr %8, align 4, !tbaa !5
  %24950 = mul nsw i32 0, %24949
  %24951 = add nsw i32 %24948, %24950
  %24952 = sext i32 %24951 to i64
  %24953 = getelementptr inbounds double, ptr %24947, i64 %24952
  %24954 = load double, ptr %24953, align 8, !tbaa !11
  %24955 = load ptr, ptr %7, align 8, !tbaa !9
  %24956 = load i32, ptr %12, align 4, !tbaa !5
  %24957 = load i32, ptr %8, align 4, !tbaa !5
  %24958 = mul nsw i32 1, %24957
  %24959 = add nsw i32 %24956, %24958
  %24960 = sext i32 %24959 to i64
  %24961 = getelementptr inbounds double, ptr %24955, i64 %24960
  %24962 = load double, ptr %24961, align 8, !tbaa !11
  %24963 = fmul double 0x3CE2000000000001, %24962
  %24964 = call double @llvm.fmuladd.f64(double 0xBCF6000000000000, double %24954, double %24963)
  %24965 = load ptr, ptr %7, align 8, !tbaa !9
  %24966 = load i32, ptr %12, align 4, !tbaa !5
  %24967 = load i32, ptr %8, align 4, !tbaa !5
  %24968 = mul nsw i32 2, %24967
  %24969 = add nsw i32 %24966, %24968
  %24970 = sext i32 %24969 to i64
  %24971 = getelementptr inbounds double, ptr %24965, i64 %24970
  %24972 = load double, ptr %24971, align 8, !tbaa !11
  %24973 = call double @llvm.fmuladd.f64(double 0x3FF3F64564513A5F, double %24972, double %24964)
  %24974 = load ptr, ptr %7, align 8, !tbaa !9
  %24975 = load i32, ptr %12, align 4, !tbaa !5
  %24976 = load i32, ptr %8, align 4, !tbaa !5
  %24977 = mul nsw i32 3, %24976
  %24978 = add nsw i32 %24975, %24977
  %24979 = sext i32 %24978 to i64
  %24980 = getelementptr inbounds double, ptr %24974, i64 %24979
  %24981 = load double, ptr %24980, align 8, !tbaa !11
  %24982 = call double @llvm.fmuladd.f64(double 0x3CE1300000000000, double %24981, double %24973)
  %24983 = load ptr, ptr %7, align 8, !tbaa !9
  %24984 = load i32, ptr %12, align 4, !tbaa !5
  %24985 = load i32, ptr %8, align 4, !tbaa !5
  %24986 = mul nsw i32 4, %24985
  %24987 = add nsw i32 %24984, %24986
  %24988 = sext i32 %24987 to i64
  %24989 = getelementptr inbounds double, ptr %24983, i64 %24988
  %24990 = load double, ptr %24989, align 8, !tbaa !11
  %24991 = call double @llvm.fmuladd.f64(double 0x3D0E380000000000, double %24990, double %24982)
  %24992 = load ptr, ptr %7, align 8, !tbaa !9
  %24993 = load i32, ptr %12, align 4, !tbaa !5
  %24994 = load i32, ptr %8, align 4, !tbaa !5
  %24995 = mul nsw i32 5, %24994
  %24996 = add nsw i32 %24993, %24995
  %24997 = sext i32 %24996 to i64
  %24998 = getelementptr inbounds double, ptr %24992, i64 %24997
  %24999 = load double, ptr %24998, align 8, !tbaa !11
  %25000 = call double @llvm.fmuladd.f64(double 0x3CE75FFFFFFFFFFF, double %24999, double %24991)
  %25001 = load ptr, ptr %7, align 8, !tbaa !9
  %25002 = load i32, ptr %12, align 4, !tbaa !5
  %25003 = load i32, ptr %8, align 4, !tbaa !5
  %25004 = mul nsw i32 6, %25003
  %25005 = add nsw i32 %25002, %25004
  %25006 = sext i32 %25005 to i64
  %25007 = getelementptr inbounds double, ptr %25001, i64 %25006
  %25008 = load double, ptr %25007, align 8, !tbaa !11
  %25009 = call double @llvm.fmuladd.f64(double 0xBCE2400000000001, double %25008, double %25000)
  %25010 = load ptr, ptr %7, align 8, !tbaa !9
  %25011 = load i32, ptr %12, align 4, !tbaa !5
  %25012 = load i32, ptr %8, align 4, !tbaa !5
  %25013 = mul nsw i32 7, %25012
  %25014 = add nsw i32 %25011, %25013
  %25015 = sext i32 %25014 to i64
  %25016 = getelementptr inbounds double, ptr %25010, i64 %25015
  %25017 = load double, ptr %25016, align 8, !tbaa !11
  %25018 = call double @llvm.fmuladd.f64(double 0x3D0FC7FFFFFFFFFE, double %25017, double %25009)
  %25019 = load ptr, ptr %7, align 8, !tbaa !9
  %25020 = load i32, ptr %12, align 4, !tbaa !5
  %25021 = load i32, ptr %8, align 4, !tbaa !5
  %25022 = mul nsw i32 8, %25021
  %25023 = add nsw i32 %25020, %25022
  %25024 = sext i32 %25023 to i64
  %25025 = getelementptr inbounds double, ptr %25019, i64 %25024
  %25026 = load double, ptr %25025, align 8, !tbaa !11
  %25027 = call double @llvm.fmuladd.f64(double 0x3CE7C00000000001, double %25026, double %25018)
  %25028 = load ptr, ptr %7, align 8, !tbaa !9
  %25029 = load i32, ptr %12, align 4, !tbaa !5
  %25030 = load i32, ptr %8, align 4, !tbaa !5
  %25031 = mul nsw i32 9, %25030
  %25032 = add nsw i32 %25029, %25031
  %25033 = sext i32 %25032 to i64
  %25034 = getelementptr inbounds double, ptr %25028, i64 %25033
  %25035 = load double, ptr %25034, align 8, !tbaa !11
  %25036 = call double @llvm.fmuladd.f64(double 0xBCE5BFFFFFFFFFFF, double %25035, double %25027)
  %25037 = load ptr, ptr %7, align 8, !tbaa !9
  %25038 = load i32, ptr %12, align 4, !tbaa !5
  %25039 = load i32, ptr %8, align 4, !tbaa !5
  %25040 = mul nsw i32 10, %25039
  %25041 = add nsw i32 %25038, %25040
  %25042 = sext i32 %25041 to i64
  %25043 = getelementptr inbounds double, ptr %25037, i64 %25042
  %25044 = load double, ptr %25043, align 8, !tbaa !11
  %25045 = call double @llvm.fmuladd.f64(double 0xBCEA000000000000, double %25044, double %25036)
  %25046 = load ptr, ptr %7, align 8, !tbaa !9
  %25047 = load i32, ptr %12, align 4, !tbaa !5
  %25048 = load i32, ptr %8, align 4, !tbaa !5
  %25049 = mul nsw i32 11, %25048
  %25050 = add nsw i32 %25047, %25049
  %25051 = sext i32 %25050 to i64
  %25052 = getelementptr inbounds double, ptr %25046, i64 %25051
  %25053 = load double, ptr %25052, align 8, !tbaa !11
  %25054 = call double @llvm.fmuladd.f64(double 0x3CD1000000000000, double %25053, double %25045)
  %25055 = load ptr, ptr %7, align 8, !tbaa !9
  %25056 = load i32, ptr %12, align 4, !tbaa !5
  %25057 = load i32, ptr %8, align 4, !tbaa !5
  %25058 = mul nsw i32 12, %25057
  %25059 = add nsw i32 %25056, %25058
  %25060 = sext i32 %25059 to i64
  %25061 = getelementptr inbounds double, ptr %25055, i64 %25060
  %25062 = load double, ptr %25061, align 8, !tbaa !11
  %25063 = call double @llvm.fmuladd.f64(double 0x3FE3AA36D354D04B, double %25062, double %25054)
  %25064 = load ptr, ptr %7, align 8, !tbaa !9
  %25065 = load i32, ptr %12, align 4, !tbaa !5
  %25066 = load i32, ptr %8, align 4, !tbaa !5
  %25067 = mul nsw i32 13, %25066
  %25068 = add nsw i32 %25065, %25067
  %25069 = sext i32 %25068 to i64
  %25070 = getelementptr inbounds double, ptr %25064, i64 %25069
  %25071 = load double, ptr %25070, align 8, !tbaa !11
  %25072 = call double @llvm.fmuladd.f64(double 0x3CCEC00000000000, double %25071, double %25063)
  %25073 = load ptr, ptr %7, align 8, !tbaa !9
  %25074 = load i32, ptr %12, align 4, !tbaa !5
  %25075 = load i32, ptr %8, align 4, !tbaa !5
  %25076 = mul nsw i32 14, %25075
  %25077 = add nsw i32 %25074, %25076
  %25078 = sext i32 %25077 to i64
  %25079 = getelementptr inbounds double, ptr %25073, i64 %25078
  %25080 = load double, ptr %25079, align 8, !tbaa !11
  %25081 = call double @llvm.fmuladd.f64(double 0x3CFD700000000000, double %25080, double %25072)
  %25082 = load ptr, ptr %7, align 8, !tbaa !9
  %25083 = load i32, ptr %12, align 4, !tbaa !5
  %25084 = load i32, ptr %8, align 4, !tbaa !5
  %25085 = mul nsw i32 15, %25084
  %25086 = add nsw i32 %25083, %25085
  %25087 = sext i32 %25086 to i64
  %25088 = getelementptr inbounds double, ptr %25082, i64 %25087
  %25089 = load double, ptr %25088, align 8, !tbaa !11
  %25090 = call double @llvm.fmuladd.f64(double 0x3CDAC00000000001, double %25089, double %25081)
  %25091 = load ptr, ptr %7, align 8, !tbaa !9
  %25092 = load i32, ptr %12, align 4, !tbaa !5
  %25093 = load i32, ptr %8, align 4, !tbaa !5
  %25094 = mul nsw i32 16, %25093
  %25095 = add nsw i32 %25092, %25094
  %25096 = sext i32 %25095 to i64
  %25097 = getelementptr inbounds double, ptr %25091, i64 %25096
  %25098 = load double, ptr %25097, align 8, !tbaa !11
  %25099 = call double @llvm.fmuladd.f64(double 0xBCD47FFFFFFFFFFE, double %25098, double %25090)
  %25100 = load ptr, ptr %7, align 8, !tbaa !9
  %25101 = load i32, ptr %12, align 4, !tbaa !5
  %25102 = load i32, ptr %8, align 4, !tbaa !5
  %25103 = mul nsw i32 17, %25102
  %25104 = add nsw i32 %25101, %25103
  %25105 = sext i32 %25104 to i64
  %25106 = getelementptr inbounds double, ptr %25100, i64 %25105
  %25107 = load double, ptr %25106, align 8, !tbaa !11
  %25108 = call double @llvm.fmuladd.f64(double 0x3CFE900000000000, double %25107, double %25099)
  %25109 = load ptr, ptr %7, align 8, !tbaa !9
  %25110 = load i32, ptr %12, align 4, !tbaa !5
  %25111 = load i32, ptr %8, align 4, !tbaa !5
  %25112 = mul nsw i32 18, %25111
  %25113 = add nsw i32 %25110, %25112
  %25114 = sext i32 %25113 to i64
  %25115 = getelementptr inbounds double, ptr %25109, i64 %25114
  %25116 = load double, ptr %25115, align 8, !tbaa !11
  %25117 = call double @llvm.fmuladd.f64(double 0x3CD7800000000000, double %25116, double %25108)
  %25118 = load ptr, ptr %7, align 8, !tbaa !9
  %25119 = load i32, ptr %12, align 4, !tbaa !5
  %25120 = load i32, ptr %8, align 4, !tbaa !5
  %25121 = mul nsw i32 19, %25120
  %25122 = add nsw i32 %25119, %25121
  %25123 = sext i32 %25122 to i64
  %25124 = getelementptr inbounds double, ptr %25118, i64 %25123
  %25125 = load double, ptr %25124, align 8, !tbaa !11
  %25126 = call double @llvm.fmuladd.f64(double 0xBCD3800000000002, double %25125, double %25117)
  store double %25126, ptr %11, align 8, !tbaa !11
  %25127 = load double, ptr %11, align 8, !tbaa !11
  %25128 = load ptr, ptr %9, align 8, !tbaa !9
  %25129 = load i32, ptr %12, align 4, !tbaa !5
  %25130 = load i32, ptr %10, align 4, !tbaa !5
  %25131 = mul nsw i32 92, %25130
  %25132 = add nsw i32 %25129, %25131
  %25133 = sext i32 %25132 to i64
  %25134 = getelementptr inbounds double, ptr %25128, i64 %25133
  store double %25127, ptr %25134, align 8, !tbaa !11
  %25135 = load ptr, ptr %7, align 8, !tbaa !9
  %25136 = load i32, ptr %12, align 4, !tbaa !5
  %25137 = load i32, ptr %8, align 4, !tbaa !5
  %25138 = mul nsw i32 0, %25137
  %25139 = add nsw i32 %25136, %25138
  %25140 = sext i32 %25139 to i64
  %25141 = getelementptr inbounds double, ptr %25135, i64 %25140
  %25142 = load double, ptr %25141, align 8, !tbaa !11
  %25143 = load ptr, ptr %7, align 8, !tbaa !9
  %25144 = load i32, ptr %12, align 4, !tbaa !5
  %25145 = load i32, ptr %8, align 4, !tbaa !5
  %25146 = mul nsw i32 1, %25145
  %25147 = add nsw i32 %25144, %25146
  %25148 = sext i32 %25147 to i64
  %25149 = getelementptr inbounds double, ptr %25143, i64 %25148
  %25150 = load double, ptr %25149, align 8, !tbaa !11
  %25151 = fmul double 0x3CE15FFFFFFFFFFF, %25150
  %25152 = call double @llvm.fmuladd.f64(double 0xBCF5E00000000000, double %25142, double %25151)
  %25153 = load ptr, ptr %7, align 8, !tbaa !9
  %25154 = load i32, ptr %12, align 4, !tbaa !5
  %25155 = load i32, ptr %8, align 4, !tbaa !5
  %25156 = mul nsw i32 2, %25155
  %25157 = add nsw i32 %25154, %25156
  %25158 = sext i32 %25157 to i64
  %25159 = getelementptr inbounds double, ptr %25153, i64 %25158
  %25160 = load double, ptr %25159, align 8, !tbaa !11
  %25161 = call double @llvm.fmuladd.f64(double 0x3CE26FFFFFFFFFFF, double %25160, double %25152)
  %25162 = load ptr, ptr %7, align 8, !tbaa !9
  %25163 = load i32, ptr %12, align 4, !tbaa !5
  %25164 = load i32, ptr %8, align 4, !tbaa !5
  %25165 = mul nsw i32 3, %25164
  %25166 = add nsw i32 %25163, %25165
  %25167 = sext i32 %25166 to i64
  %25168 = getelementptr inbounds double, ptr %25162, i64 %25167
  %25169 = load double, ptr %25168, align 8, !tbaa !11
  %25170 = call double @llvm.fmuladd.f64(double 0x3FF3F64564513A5F, double %25169, double %25161)
  %25171 = load ptr, ptr %7, align 8, !tbaa !9
  %25172 = load i32, ptr %12, align 4, !tbaa !5
  %25173 = load i32, ptr %8, align 4, !tbaa !5
  %25174 = mul nsw i32 4, %25173
  %25175 = add nsw i32 %25172, %25174
  %25176 = sext i32 %25175 to i64
  %25177 = getelementptr inbounds double, ptr %25171, i64 %25176
  %25178 = load double, ptr %25177, align 8, !tbaa !11
  %25179 = call double @llvm.fmuladd.f64(double 0x3CE8E00000000000, double %25178, double %25170)
  %25180 = load ptr, ptr %7, align 8, !tbaa !9
  %25181 = load i32, ptr %12, align 4, !tbaa !5
  %25182 = load i32, ptr %8, align 4, !tbaa !5
  %25183 = mul nsw i32 5, %25182
  %25184 = add nsw i32 %25181, %25183
  %25185 = sext i32 %25184 to i64
  %25186 = getelementptr inbounds double, ptr %25180, i64 %25185
  %25187 = load double, ptr %25186, align 8, !tbaa !11
  %25188 = call double @llvm.fmuladd.f64(double 0x3D0E97FFFFFFFFFE, double %25187, double %25179)
  %25189 = load ptr, ptr %7, align 8, !tbaa !9
  %25190 = load i32, ptr %12, align 4, !tbaa !5
  %25191 = load i32, ptr %8, align 4, !tbaa !5
  %25192 = mul nsw i32 6, %25191
  %25193 = add nsw i32 %25190, %25192
  %25194 = sext i32 %25193 to i64
  %25195 = getelementptr inbounds double, ptr %25189, i64 %25194
  %25196 = load double, ptr %25195, align 8, !tbaa !11
  %25197 = call double @llvm.fmuladd.f64(double 0x3D0DD80000000002, double %25196, double %25188)
  %25198 = load ptr, ptr %7, align 8, !tbaa !9
  %25199 = load i32, ptr %12, align 4, !tbaa !5
  %25200 = load i32, ptr %8, align 4, !tbaa !5
  %25201 = mul nsw i32 7, %25200
  %25202 = add nsw i32 %25199, %25201
  %25203 = sext i32 %25202 to i64
  %25204 = getelementptr inbounds double, ptr %25198, i64 %25203
  %25205 = load double, ptr %25204, align 8, !tbaa !11
  %25206 = call double @llvm.fmuladd.f64(double 0xBCDE800000000001, double %25205, double %25197)
  %25207 = load ptr, ptr %7, align 8, !tbaa !9
  %25208 = load i32, ptr %12, align 4, !tbaa !5
  %25209 = load i32, ptr %8, align 4, !tbaa !5
  %25210 = mul nsw i32 8, %25209
  %25211 = add nsw i32 %25208, %25210
  %25212 = sext i32 %25211 to i64
  %25213 = getelementptr inbounds double, ptr %25207, i64 %25212
  %25214 = load double, ptr %25213, align 8, !tbaa !11
  %25215 = call double @llvm.fmuladd.f64(double 0xBCE5400000000001, double %25214, double %25206)
  %25216 = load ptr, ptr %7, align 8, !tbaa !9
  %25217 = load i32, ptr %12, align 4, !tbaa !5
  %25218 = load i32, ptr %8, align 4, !tbaa !5
  %25219 = mul nsw i32 9, %25218
  %25220 = add nsw i32 %25217, %25219
  %25221 = sext i32 %25220 to i64
  %25222 = getelementptr inbounds double, ptr %25216, i64 %25221
  %25223 = load double, ptr %25222, align 8, !tbaa !11
  %25224 = call double @llvm.fmuladd.f64(double 0x3CE9800000000000, double %25223, double %25215)
  %25225 = load ptr, ptr %7, align 8, !tbaa !9
  %25226 = load i32, ptr %12, align 4, !tbaa !5
  %25227 = load i32, ptr %8, align 4, !tbaa !5
  %25228 = mul nsw i32 10, %25227
  %25229 = add nsw i32 %25226, %25228
  %25230 = sext i32 %25229 to i64
  %25231 = getelementptr inbounds double, ptr %25225, i64 %25230
  %25232 = load double, ptr %25231, align 8, !tbaa !11
  %25233 = call double @llvm.fmuladd.f64(double 0xBCE9C00000000000, double %25232, double %25224)
  %25234 = load ptr, ptr %7, align 8, !tbaa !9
  %25235 = load i32, ptr %12, align 4, !tbaa !5
  %25236 = load i32, ptr %8, align 4, !tbaa !5
  %25237 = mul nsw i32 11, %25236
  %25238 = add nsw i32 %25235, %25237
  %25239 = sext i32 %25238 to i64
  %25240 = getelementptr inbounds double, ptr %25234, i64 %25239
  %25241 = load double, ptr %25240, align 8, !tbaa !11
  %25242 = call double @llvm.fmuladd.f64(double 0x3CD1400000000000, double %25241, double %25233)
  %25243 = load ptr, ptr %7, align 8, !tbaa !9
  %25244 = load i32, ptr %12, align 4, !tbaa !5
  %25245 = load i32, ptr %8, align 4, !tbaa !5
  %25246 = mul nsw i32 12, %25245
  %25247 = add nsw i32 %25244, %25246
  %25248 = sext i32 %25247 to i64
  %25249 = getelementptr inbounds double, ptr %25243, i64 %25248
  %25250 = load double, ptr %25249, align 8, !tbaa !11
  %25251 = call double @llvm.fmuladd.f64(double 0x3CD0E00000000000, double %25250, double %25242)
  %25252 = load ptr, ptr %7, align 8, !tbaa !9
  %25253 = load i32, ptr %12, align 4, !tbaa !5
  %25254 = load i32, ptr %8, align 4, !tbaa !5
  %25255 = mul nsw i32 13, %25254
  %25256 = add nsw i32 %25253, %25255
  %25257 = sext i32 %25256 to i64
  %25258 = getelementptr inbounds double, ptr %25252, i64 %25257
  %25259 = load double, ptr %25258, align 8, !tbaa !11
  %25260 = call double @llvm.fmuladd.f64(double 0x3FE3AA36D354D04F, double %25259, double %25251)
  %25261 = load ptr, ptr %7, align 8, !tbaa !9
  %25262 = load i32, ptr %12, align 4, !tbaa !5
  %25263 = load i32, ptr %8, align 4, !tbaa !5
  %25264 = mul nsw i32 14, %25263
  %25265 = add nsw i32 %25262, %25264
  %25266 = sext i32 %25265 to i64
  %25267 = getelementptr inbounds double, ptr %25261, i64 %25266
  %25268 = load double, ptr %25267, align 8, !tbaa !11
  %25269 = call double @llvm.fmuladd.f64(double 0x3CD7BFFFFFFFFFFE, double %25268, double %25260)
  %25270 = load ptr, ptr %7, align 8, !tbaa !9
  %25271 = load i32, ptr %12, align 4, !tbaa !5
  %25272 = load i32, ptr %8, align 4, !tbaa !5
  %25273 = mul nsw i32 15, %25272
  %25274 = add nsw i32 %25271, %25273
  %25275 = sext i32 %25274 to i64
  %25276 = getelementptr inbounds double, ptr %25270, i64 %25275
  %25277 = load double, ptr %25276, align 8, !tbaa !11
  %25278 = call double @llvm.fmuladd.f64(double 0x3CFD300000000000, double %25277, double %25269)
  %25279 = load ptr, ptr %7, align 8, !tbaa !9
  %25280 = load i32, ptr %12, align 4, !tbaa !5
  %25281 = load i32, ptr %8, align 4, !tbaa !5
  %25282 = mul nsw i32 16, %25281
  %25283 = add nsw i32 %25280, %25282
  %25284 = sext i32 %25283 to i64
  %25285 = getelementptr inbounds double, ptr %25279, i64 %25284
  %25286 = load double, ptr %25285, align 8, !tbaa !11
  %25287 = call double @llvm.fmuladd.f64(double 0x3CFD300000000000, double %25286, double %25278)
  %25288 = load ptr, ptr %7, align 8, !tbaa !9
  %25289 = load i32, ptr %12, align 4, !tbaa !5
  %25290 = load i32, ptr %8, align 4, !tbaa !5
  %25291 = mul nsw i32 17, %25290
  %25292 = add nsw i32 %25289, %25291
  %25293 = sext i32 %25292 to i64
  %25294 = getelementptr inbounds double, ptr %25288, i64 %25293
  %25295 = load double, ptr %25294, align 8, !tbaa !11
  %25296 = call double @llvm.fmuladd.f64(double 0xBCCD000000000000, double %25295, double %25287)
  %25297 = load ptr, ptr %7, align 8, !tbaa !9
  %25298 = load i32, ptr %12, align 4, !tbaa !5
  %25299 = load i32, ptr %8, align 4, !tbaa !5
  %25300 = mul nsw i32 18, %25299
  %25301 = add nsw i32 %25298, %25300
  %25302 = sext i32 %25301 to i64
  %25303 = getelementptr inbounds double, ptr %25297, i64 %25302
  %25304 = load double, ptr %25303, align 8, !tbaa !11
  %25305 = call double @llvm.fmuladd.f64(double 0xBCD67FFFFFFFFFFF, double %25304, double %25296)
  %25306 = load ptr, ptr %7, align 8, !tbaa !9
  %25307 = load i32, ptr %12, align 4, !tbaa !5
  %25308 = load i32, ptr %8, align 4, !tbaa !5
  %25309 = mul nsw i32 19, %25308
  %25310 = add nsw i32 %25307, %25309
  %25311 = sext i32 %25310 to i64
  %25312 = getelementptr inbounds double, ptr %25306, i64 %25311
  %25313 = load double, ptr %25312, align 8, !tbaa !11
  %25314 = call double @llvm.fmuladd.f64(double 0x3CD9000000000002, double %25313, double %25305)
  store double %25314, ptr %11, align 8, !tbaa !11
  %25315 = load double, ptr %11, align 8, !tbaa !11
  %25316 = load ptr, ptr %9, align 8, !tbaa !9
  %25317 = load i32, ptr %12, align 4, !tbaa !5
  %25318 = load i32, ptr %10, align 4, !tbaa !5
  %25319 = mul nsw i32 93, %25318
  %25320 = add nsw i32 %25317, %25319
  %25321 = sext i32 %25320 to i64
  %25322 = getelementptr inbounds double, ptr %25316, i64 %25321
  store double %25315, ptr %25322, align 8, !tbaa !11
  %25323 = load ptr, ptr %7, align 8, !tbaa !9
  %25324 = load i32, ptr %12, align 4, !tbaa !5
  %25325 = load i32, ptr %8, align 4, !tbaa !5
  %25326 = mul nsw i32 0, %25325
  %25327 = add nsw i32 %25324, %25326
  %25328 = sext i32 %25327 to i64
  %25329 = getelementptr inbounds double, ptr %25323, i64 %25328
  %25330 = load double, ptr %25329, align 8, !tbaa !11
  %25331 = load ptr, ptr %7, align 8, !tbaa !9
  %25332 = load i32, ptr %12, align 4, !tbaa !5
  %25333 = load i32, ptr %8, align 4, !tbaa !5
  %25334 = mul nsw i32 1, %25333
  %25335 = add nsw i32 %25332, %25334
  %25336 = sext i32 %25335 to i64
  %25337 = getelementptr inbounds double, ptr %25331, i64 %25336
  %25338 = load double, ptr %25337, align 8, !tbaa !11
  %25339 = fmul double 0xBCCA000000000000, %25338
  %25340 = call double @llvm.fmuladd.f64(double 0x3CF9A00000000000, double %25330, double %25339)
  %25341 = load ptr, ptr %7, align 8, !tbaa !9
  %25342 = load i32, ptr %12, align 4, !tbaa !5
  %25343 = load i32, ptr %8, align 4, !tbaa !5
  %25344 = mul nsw i32 2, %25343
  %25345 = add nsw i32 %25342, %25344
  %25346 = sext i32 %25345 to i64
  %25347 = getelementptr inbounds double, ptr %25341, i64 %25346
  %25348 = load double, ptr %25347, align 8, !tbaa !11
  %25349 = call double @llvm.fmuladd.f64(double 0x3CF6580000000000, double %25348, double %25340)
  %25350 = load ptr, ptr %7, align 8, !tbaa !9
  %25351 = load i32, ptr %12, align 4, !tbaa !5
  %25352 = load i32, ptr %8, align 4, !tbaa !5
  %25353 = mul nsw i32 3, %25352
  %25354 = add nsw i32 %25351, %25353
  %25355 = sext i32 %25354 to i64
  %25356 = getelementptr inbounds double, ptr %25350, i64 %25355
  %25357 = load double, ptr %25356, align 8, !tbaa !11
  %25358 = call double @llvm.fmuladd.f64(double 0x3CCC600000000000, double %25357, double %25349)
  %25359 = load ptr, ptr %7, align 8, !tbaa !9
  %25360 = load i32, ptr %12, align 4, !tbaa !5
  %25361 = load i32, ptr %8, align 4, !tbaa !5
  %25362 = mul nsw i32 4, %25361
  %25363 = add nsw i32 %25360, %25362
  %25364 = sext i32 %25363 to i64
  %25365 = getelementptr inbounds double, ptr %25359, i64 %25364
  %25366 = load double, ptr %25365, align 8, !tbaa !11
  %25367 = call double @llvm.fmuladd.f64(double 0x3FF3F64564513B21, double %25366, double %25358)
  %25368 = load ptr, ptr %7, align 8, !tbaa !9
  %25369 = load i32, ptr %12, align 4, !tbaa !5
  %25370 = load i32, ptr %8, align 4, !tbaa !5
  %25371 = mul nsw i32 5, %25370
  %25372 = add nsw i32 %25369, %25371
  %25373 = sext i32 %25372 to i64
  %25374 = getelementptr inbounds double, ptr %25368, i64 %25373
  %25375 = load double, ptr %25374, align 8, !tbaa !11
  %25376 = call double @llvm.fmuladd.f64(double 0xBCEAC00000000001, double %25375, double %25367)
  %25377 = load ptr, ptr %7, align 8, !tbaa !9
  %25378 = load i32, ptr %12, align 4, !tbaa !5
  %25379 = load i32, ptr %8, align 4, !tbaa !5
  %25380 = mul nsw i32 6, %25379
  %25381 = add nsw i32 %25378, %25380
  %25382 = sext i32 %25381 to i64
  %25383 = getelementptr inbounds double, ptr %25377, i64 %25382
  %25384 = load double, ptr %25383, align 8, !tbaa !11
  %25385 = call double @llvm.fmuladd.f64(double 0xBCD7BFFFFFFFFFFE, double %25384, double %25376)
  %25386 = load ptr, ptr %7, align 8, !tbaa !9
  %25387 = load i32, ptr %12, align 4, !tbaa !5
  %25388 = load i32, ptr %8, align 4, !tbaa !5
  %25389 = mul nsw i32 7, %25388
  %25390 = add nsw i32 %25387, %25389
  %25391 = sext i32 %25390 to i64
  %25392 = getelementptr inbounds double, ptr %25386, i64 %25391
  %25393 = load double, ptr %25392, align 8, !tbaa !11
  %25394 = call double @llvm.fmuladd.f64(double 0x3CEE400000000001, double %25393, double %25385)
  %25395 = load ptr, ptr %7, align 8, !tbaa !9
  %25396 = load i32, ptr %12, align 4, !tbaa !5
  %25397 = load i32, ptr %8, align 4, !tbaa !5
  %25398 = mul nsw i32 8, %25397
  %25399 = add nsw i32 %25396, %25398
  %25400 = sext i32 %25399 to i64
  %25401 = getelementptr inbounds double, ptr %25395, i64 %25400
  %25402 = load double, ptr %25401, align 8, !tbaa !11
  %25403 = call double @llvm.fmuladd.f64(double 0xBCD67FFFFFFFFFFF, double %25402, double %25394)
  %25404 = load ptr, ptr %7, align 8, !tbaa !9
  %25405 = load i32, ptr %12, align 4, !tbaa !5
  %25406 = load i32, ptr %8, align 4, !tbaa !5
  %25407 = mul nsw i32 9, %25406
  %25408 = add nsw i32 %25405, %25407
  %25409 = sext i32 %25408 to i64
  %25410 = getelementptr inbounds double, ptr %25404, i64 %25409
  %25411 = load double, ptr %25410, align 8, !tbaa !11
  %25412 = call double @llvm.fmuladd.f64(double 0xBCFC3FFFFFFFFFFF, double %25411, double %25403)
  %25413 = load ptr, ptr %7, align 8, !tbaa !9
  %25414 = load i32, ptr %12, align 4, !tbaa !5
  %25415 = load i32, ptr %8, align 4, !tbaa !5
  %25416 = mul nsw i32 10, %25415
  %25417 = add nsw i32 %25414, %25416
  %25418 = sext i32 %25417 to i64
  %25419 = getelementptr inbounds double, ptr %25413, i64 %25418
  %25420 = load double, ptr %25419, align 8, !tbaa !11
  %25421 = call double @llvm.fmuladd.f64(double 0x3CE9C00000000000, double %25420, double %25412)
  %25422 = load ptr, ptr %7, align 8, !tbaa !9
  %25423 = load i32, ptr %12, align 4, !tbaa !5
  %25424 = load i32, ptr %8, align 4, !tbaa !5
  %25425 = mul nsw i32 11, %25424
  %25426 = add nsw i32 %25423, %25425
  %25427 = sext i32 %25426 to i64
  %25428 = getelementptr inbounds double, ptr %25422, i64 %25427
  %25429 = load double, ptr %25428, align 8, !tbaa !11
  %25430 = call double @llvm.fmuladd.f64(double 0xBCB8000000000001, double %25429, double %25421)
  %25431 = load ptr, ptr %7, align 8, !tbaa !9
  %25432 = load i32, ptr %12, align 4, !tbaa !5
  %25433 = load i32, ptr %8, align 4, !tbaa !5
  %25434 = mul nsw i32 12, %25433
  %25435 = add nsw i32 %25432, %25434
  %25436 = sext i32 %25435 to i64
  %25437 = getelementptr inbounds double, ptr %25431, i64 %25436
  %25438 = load double, ptr %25437, align 8, !tbaa !11
  %25439 = call double @llvm.fmuladd.f64(double 0x3CE6B00000000000, double %25438, double %25430)
  %25440 = load ptr, ptr %7, align 8, !tbaa !9
  %25441 = load i32, ptr %12, align 4, !tbaa !5
  %25442 = load i32, ptr %8, align 4, !tbaa !5
  %25443 = mul nsw i32 13, %25442
  %25444 = add nsw i32 %25441, %25443
  %25445 = sext i32 %25444 to i64
  %25446 = getelementptr inbounds double, ptr %25440, i64 %25445
  %25447 = load double, ptr %25446, align 8, !tbaa !11
  %25448 = call double @llvm.fmuladd.f64(double 0x3CB9C00000000001, double %25447, double %25439)
  %25449 = load ptr, ptr %7, align 8, !tbaa !9
  %25450 = load i32, ptr %12, align 4, !tbaa !5
  %25451 = load i32, ptr %8, align 4, !tbaa !5
  %25452 = mul nsw i32 14, %25451
  %25453 = add nsw i32 %25450, %25452
  %25454 = sext i32 %25453 to i64
  %25455 = getelementptr inbounds double, ptr %25449, i64 %25454
  %25456 = load double, ptr %25455, align 8, !tbaa !11
  %25457 = call double @llvm.fmuladd.f64(double 0x3FE3AA36D354D104, double %25456, double %25448)
  %25458 = load ptr, ptr %7, align 8, !tbaa !9
  %25459 = load i32, ptr %12, align 4, !tbaa !5
  %25460 = load i32, ptr %8, align 4, !tbaa !5
  %25461 = mul nsw i32 15, %25460
  %25462 = add nsw i32 %25459, %25461
  %25463 = sext i32 %25462 to i64
  %25464 = getelementptr inbounds double, ptr %25458, i64 %25463
  %25465 = load double, ptr %25464, align 8, !tbaa !11
  %25466 = call double @llvm.fmuladd.f64(double 0xBCDA7FFFFFFFFFFE, double %25465, double %25457)
  %25467 = load ptr, ptr %7, align 8, !tbaa !9
  %25468 = load i32, ptr %12, align 4, !tbaa !5
  %25469 = load i32, ptr %8, align 4, !tbaa !5
  %25470 = mul nsw i32 16, %25469
  %25471 = add nsw i32 %25468, %25470
  %25472 = sext i32 %25471 to i64
  %25473 = getelementptr inbounds double, ptr %25467, i64 %25472
  %25474 = load double, ptr %25473, align 8, !tbaa !11
  %25475 = call double @llvm.fmuladd.f64(double 0xBCC4800000000000, double %25474, double %25466)
  %25476 = load ptr, ptr %7, align 8, !tbaa !9
  %25477 = load i32, ptr %12, align 4, !tbaa !5
  %25478 = load i32, ptr %8, align 4, !tbaa !5
  %25479 = mul nsw i32 17, %25478
  %25480 = add nsw i32 %25477, %25479
  %25481 = sext i32 %25480 to i64
  %25482 = getelementptr inbounds double, ptr %25476, i64 %25481
  %25483 = load double, ptr %25482, align 8, !tbaa !11
  %25484 = call double @llvm.fmuladd.f64(double 0x3CDE800000000001, double %25483, double %25475)
  %25485 = load ptr, ptr %7, align 8, !tbaa !9
  %25486 = load i32, ptr %12, align 4, !tbaa !5
  %25487 = load i32, ptr %8, align 4, !tbaa !5
  %25488 = mul nsw i32 18, %25487
  %25489 = add nsw i32 %25486, %25488
  %25490 = sext i32 %25489 to i64
  %25491 = getelementptr inbounds double, ptr %25485, i64 %25490
  %25492 = load double, ptr %25491, align 8, !tbaa !11
  %25493 = call double @llvm.fmuladd.f64(double 0xBCC1000000000000, double %25492, double %25484)
  %25494 = load ptr, ptr %7, align 8, !tbaa !9
  %25495 = load i32, ptr %12, align 4, !tbaa !5
  %25496 = load i32, ptr %8, align 4, !tbaa !5
  %25497 = mul nsw i32 19, %25496
  %25498 = add nsw i32 %25495, %25497
  %25499 = sext i32 %25498 to i64
  %25500 = getelementptr inbounds double, ptr %25494, i64 %25499
  %25501 = load double, ptr %25500, align 8, !tbaa !11
  %25502 = call double @llvm.fmuladd.f64(double 0xBCEC800000000000, double %25501, double %25493)
  store double %25502, ptr %11, align 8, !tbaa !11
  %25503 = load double, ptr %11, align 8, !tbaa !11
  %25504 = load ptr, ptr %9, align 8, !tbaa !9
  %25505 = load i32, ptr %12, align 4, !tbaa !5
  %25506 = load i32, ptr %10, align 4, !tbaa !5
  %25507 = mul nsw i32 94, %25506
  %25508 = add nsw i32 %25505, %25507
  %25509 = sext i32 %25508 to i64
  %25510 = getelementptr inbounds double, ptr %25504, i64 %25509
  store double %25503, ptr %25510, align 8, !tbaa !11
  %25511 = load ptr, ptr %7, align 8, !tbaa !9
  %25512 = load i32, ptr %12, align 4, !tbaa !5
  %25513 = load i32, ptr %8, align 4, !tbaa !5
  %25514 = mul nsw i32 0, %25513
  %25515 = add nsw i32 %25512, %25514
  %25516 = sext i32 %25515 to i64
  %25517 = getelementptr inbounds double, ptr %25511, i64 %25516
  %25518 = load double, ptr %25517, align 8, !tbaa !11
  %25519 = load ptr, ptr %7, align 8, !tbaa !9
  %25520 = load i32, ptr %12, align 4, !tbaa !5
  %25521 = load i32, ptr %8, align 4, !tbaa !5
  %25522 = mul nsw i32 1, %25521
  %25523 = add nsw i32 %25520, %25522
  %25524 = sext i32 %25523 to i64
  %25525 = getelementptr inbounds double, ptr %25519, i64 %25524
  %25526 = load double, ptr %25525, align 8, !tbaa !11
  %25527 = fmul double 0xBCD0800000000000, %25526
  %25528 = call double @llvm.fmuladd.f64(double 0x3CFB600000000000, double %25518, double %25527)
  %25529 = load ptr, ptr %7, align 8, !tbaa !9
  %25530 = load i32, ptr %12, align 4, !tbaa !5
  %25531 = load i32, ptr %8, align 4, !tbaa !5
  %25532 = mul nsw i32 2, %25531
  %25533 = add nsw i32 %25530, %25532
  %25534 = sext i32 %25533 to i64
  %25535 = getelementptr inbounds double, ptr %25529, i64 %25534
  %25536 = load double, ptr %25535, align 8, !tbaa !11
  %25537 = call double @llvm.fmuladd.f64(double 0x3CCC400000000000, double %25536, double %25528)
  %25538 = load ptr, ptr %7, align 8, !tbaa !9
  %25539 = load i32, ptr %12, align 4, !tbaa !5
  %25540 = load i32, ptr %8, align 4, !tbaa !5
  %25541 = mul nsw i32 3, %25540
  %25542 = add nsw i32 %25539, %25541
  %25543 = sext i32 %25542 to i64
  %25544 = getelementptr inbounds double, ptr %25538, i64 %25543
  %25545 = load double, ptr %25544, align 8, !tbaa !11
  %25546 = call double @llvm.fmuladd.f64(double 0x3CF62C0000000001, double %25545, double %25537)
  %25547 = load ptr, ptr %7, align 8, !tbaa !9
  %25548 = load i32, ptr %12, align 4, !tbaa !5
  %25549 = load i32, ptr %8, align 4, !tbaa !5
  %25550 = mul nsw i32 4, %25549
  %25551 = add nsw i32 %25548, %25550
  %25552 = sext i32 %25551 to i64
  %25553 = getelementptr inbounds double, ptr %25547, i64 %25552
  %25554 = load double, ptr %25553, align 8, !tbaa !11
  %25555 = call double @llvm.fmuladd.f64(double 0xBCE8E00000000000, double %25554, double %25546)
  %25556 = load ptr, ptr %7, align 8, !tbaa !9
  %25557 = load i32, ptr %12, align 4, !tbaa !5
  %25558 = load i32, ptr %8, align 4, !tbaa !5
  %25559 = mul nsw i32 5, %25558
  %25560 = add nsw i32 %25557, %25559
  %25561 = sext i32 %25560 to i64
  %25562 = getelementptr inbounds double, ptr %25556, i64 %25561
  %25563 = load double, ptr %25562, align 8, !tbaa !11
  %25564 = call double @llvm.fmuladd.f64(double 0x3FF3F64564513B1C, double %25563, double %25555)
  %25565 = load ptr, ptr %7, align 8, !tbaa !9
  %25566 = load i32, ptr %12, align 4, !tbaa !5
  %25567 = load i32, ptr %8, align 4, !tbaa !5
  %25568 = mul nsw i32 6, %25567
  %25569 = add nsw i32 %25566, %25568
  %25570 = sext i32 %25569 to i64
  %25571 = getelementptr inbounds double, ptr %25565, i64 %25570
  %25572 = load double, ptr %25571, align 8, !tbaa !11
  %25573 = call double @llvm.fmuladd.f64(double 0x3CEE200000000000, double %25572, double %25564)
  %25574 = load ptr, ptr %7, align 8, !tbaa !9
  %25575 = load i32, ptr %12, align 4, !tbaa !5
  %25576 = load i32, ptr %8, align 4, !tbaa !5
  %25577 = mul nsw i32 7, %25576
  %25578 = add nsw i32 %25575, %25577
  %25579 = sext i32 %25578 to i64
  %25580 = getelementptr inbounds double, ptr %25574, i64 %25579
  %25581 = load double, ptr %25580, align 8, !tbaa !11
  %25582 = call double @llvm.fmuladd.f64(double 0xBCD93FFFFFFFFFFF, double %25581, double %25573)
  %25583 = load ptr, ptr %7, align 8, !tbaa !9
  %25584 = load i32, ptr %12, align 4, !tbaa !5
  %25585 = load i32, ptr %8, align 4, !tbaa !5
  %25586 = mul nsw i32 8, %25585
  %25587 = add nsw i32 %25584, %25586
  %25588 = sext i32 %25587 to i64
  %25589 = getelementptr inbounds double, ptr %25583, i64 %25588
  %25590 = load double, ptr %25589, align 8, !tbaa !11
  %25591 = call double @llvm.fmuladd.f64(double 0xBCFCC00000000000, double %25590, double %25582)
  %25592 = load ptr, ptr %7, align 8, !tbaa !9
  %25593 = load i32, ptr %12, align 4, !tbaa !5
  %25594 = load i32, ptr %8, align 4, !tbaa !5
  %25595 = mul nsw i32 9, %25594
  %25596 = add nsw i32 %25593, %25595
  %25597 = sext i32 %25596 to i64
  %25598 = getelementptr inbounds double, ptr %25592, i64 %25597
  %25599 = load double, ptr %25598, align 8, !tbaa !11
  %25600 = call double @llvm.fmuladd.f64(double 0xBCDBFFFFFFFFFFFF, double %25599, double %25591)
  %25601 = load ptr, ptr %7, align 8, !tbaa !9
  %25602 = load i32, ptr %12, align 4, !tbaa !5
  %25603 = load i32, ptr %8, align 4, !tbaa !5
  %25604 = mul nsw i32 10, %25603
  %25605 = add nsw i32 %25602, %25604
  %25606 = sext i32 %25605 to i64
  %25607 = getelementptr inbounds double, ptr %25601, i64 %25606
  %25608 = load double, ptr %25607, align 8, !tbaa !11
  %25609 = call double @llvm.fmuladd.f64(double 0x3CEBBFFFFFFFFFFF, double %25608, double %25600)
  %25610 = load ptr, ptr %7, align 8, !tbaa !9
  %25611 = load i32, ptr %12, align 4, !tbaa !5
  %25612 = load i32, ptr %8, align 4, !tbaa !5
  %25613 = mul nsw i32 11, %25612
  %25614 = add nsw i32 %25611, %25613
  %25615 = sext i32 %25614 to i64
  %25616 = getelementptr inbounds double, ptr %25610, i64 %25615
  %25617 = load double, ptr %25616, align 8, !tbaa !11
  %25618 = call double @llvm.fmuladd.f64(double 0xBCC0000000000000, double %25617, double %25609)
  %25619 = load ptr, ptr %7, align 8, !tbaa !9
  %25620 = load i32, ptr %12, align 4, !tbaa !5
  %25621 = load i32, ptr %8, align 4, !tbaa !5
  %25622 = mul nsw i32 12, %25621
  %25623 = add nsw i32 %25620, %25622
  %25624 = sext i32 %25623 to i64
  %25625 = getelementptr inbounds double, ptr %25619, i64 %25624
  %25626 = load double, ptr %25625, align 8, !tbaa !11
  %25627 = call double @llvm.fmuladd.f64(double 0x3CB8800000000000, double %25626, double %25618)
  %25628 = load ptr, ptr %7, align 8, !tbaa !9
  %25629 = load i32, ptr %12, align 4, !tbaa !5
  %25630 = load i32, ptr %8, align 4, !tbaa !5
  %25631 = mul nsw i32 13, %25630
  %25632 = add nsw i32 %25629, %25631
  %25633 = sext i32 %25632 to i64
  %25634 = getelementptr inbounds double, ptr %25628, i64 %25633
  %25635 = load double, ptr %25634, align 8, !tbaa !11
  %25636 = call double @llvm.fmuladd.f64(double 0x3CE557FFFFFFFFFF, double %25635, double %25627)
  %25637 = load ptr, ptr %7, align 8, !tbaa !9
  %25638 = load i32, ptr %12, align 4, !tbaa !5
  %25639 = load i32, ptr %8, align 4, !tbaa !5
  %25640 = mul nsw i32 14, %25639
  %25641 = add nsw i32 %25638, %25640
  %25642 = sext i32 %25641 to i64
  %25643 = getelementptr inbounds double, ptr %25637, i64 %25642
  %25644 = load double, ptr %25643, align 8, !tbaa !11
  %25645 = call double @llvm.fmuladd.f64(double 0xBCD6C00000000002, double %25644, double %25636)
  %25646 = load ptr, ptr %7, align 8, !tbaa !9
  %25647 = load i32, ptr %12, align 4, !tbaa !5
  %25648 = load i32, ptr %8, align 4, !tbaa !5
  %25649 = mul nsw i32 15, %25648
  %25650 = add nsw i32 %25647, %25649
  %25651 = sext i32 %25650 to i64
  %25652 = getelementptr inbounds double, ptr %25646, i64 %25651
  %25653 = load double, ptr %25652, align 8, !tbaa !11
  %25654 = call double @llvm.fmuladd.f64(double 0x3FE3AA36D354D103, double %25653, double %25645)
  %25655 = load ptr, ptr %7, align 8, !tbaa !9
  %25656 = load i32, ptr %12, align 4, !tbaa !5
  %25657 = load i32, ptr %8, align 4, !tbaa !5
  %25658 = mul nsw i32 16, %25657
  %25659 = add nsw i32 %25656, %25658
  %25660 = sext i32 %25659 to i64
  %25661 = getelementptr inbounds double, ptr %25655, i64 %25660
  %25662 = load double, ptr %25661, align 8, !tbaa !11
  %25663 = call double @llvm.fmuladd.f64(double 0x3CE0200000000000, double %25662, double %25654)
  %25664 = load ptr, ptr %7, align 8, !tbaa !9
  %25665 = load i32, ptr %12, align 4, !tbaa !5
  %25666 = load i32, ptr %8, align 4, !tbaa !5
  %25667 = mul nsw i32 17, %25666
  %25668 = add nsw i32 %25665, %25667
  %25669 = sext i32 %25668 to i64
  %25670 = getelementptr inbounds double, ptr %25664, i64 %25669
  %25671 = load double, ptr %25670, align 8, !tbaa !11
  %25672 = call double @llvm.fmuladd.f64(double 0xBCCC800000000000, double %25671, double %25663)
  %25673 = load ptr, ptr %7, align 8, !tbaa !9
  %25674 = load i32, ptr %12, align 4, !tbaa !5
  %25675 = load i32, ptr %8, align 4, !tbaa !5
  %25676 = mul nsw i32 18, %25675
  %25677 = add nsw i32 %25674, %25676
  %25678 = sext i32 %25677 to i64
  %25679 = getelementptr inbounds double, ptr %25673, i64 %25678
  %25680 = load double, ptr %25679, align 8, !tbaa !11
  %25681 = call double @llvm.fmuladd.f64(double 0xBCEC800000000000, double %25680, double %25672)
  %25682 = load ptr, ptr %7, align 8, !tbaa !9
  %25683 = load i32, ptr %12, align 4, !tbaa !5
  %25684 = load i32, ptr %8, align 4, !tbaa !5
  %25685 = mul nsw i32 19, %25684
  %25686 = add nsw i32 %25683, %25685
  %25687 = sext i32 %25686 to i64
  %25688 = getelementptr inbounds double, ptr %25682, i64 %25687
  %25689 = load double, ptr %25688, align 8, !tbaa !11
  %25690 = call double @llvm.fmuladd.f64(double 0xBCC7000000000000, double %25689, double %25681)
  store double %25690, ptr %11, align 8, !tbaa !11
  %25691 = load double, ptr %11, align 8, !tbaa !11
  %25692 = load ptr, ptr %9, align 8, !tbaa !9
  %25693 = load i32, ptr %12, align 4, !tbaa !5
  %25694 = load i32, ptr %10, align 4, !tbaa !5
  %25695 = mul nsw i32 95, %25694
  %25696 = add nsw i32 %25693, %25695
  %25697 = sext i32 %25696 to i64
  %25698 = getelementptr inbounds double, ptr %25692, i64 %25697
  store double %25691, ptr %25698, align 8, !tbaa !11
  %25699 = load ptr, ptr %7, align 8, !tbaa !9
  %25700 = load i32, ptr %12, align 4, !tbaa !5
  %25701 = load i32, ptr %8, align 4, !tbaa !5
  %25702 = mul nsw i32 0, %25701
  %25703 = add nsw i32 %25700, %25702
  %25704 = sext i32 %25703 to i64
  %25705 = getelementptr inbounds double, ptr %25699, i64 %25704
  %25706 = load double, ptr %25705, align 8, !tbaa !11
  %25707 = load ptr, ptr %7, align 8, !tbaa !9
  %25708 = load i32, ptr %12, align 4, !tbaa !5
  %25709 = load i32, ptr %8, align 4, !tbaa !5
  %25710 = mul nsw i32 1, %25709
  %25711 = add nsw i32 %25708, %25710
  %25712 = sext i32 %25711 to i64
  %25713 = getelementptr inbounds double, ptr %25707, i64 %25712
  %25714 = load double, ptr %25713, align 8, !tbaa !11
  %25715 = fmul double 0x3CD1800000000000, %25714
  %25716 = call double @llvm.fmuladd.f64(double 0x3CF9480000000000, double %25706, double %25715)
  %25717 = load ptr, ptr %7, align 8, !tbaa !9
  %25718 = load i32, ptr %12, align 4, !tbaa !5
  %25719 = load i32, ptr %8, align 4, !tbaa !5
  %25720 = mul nsw i32 2, %25719
  %25721 = add nsw i32 %25718, %25720
  %25722 = sext i32 %25721 to i64
  %25723 = getelementptr inbounds double, ptr %25717, i64 %25722
  %25724 = load double, ptr %25723, align 8, !tbaa !11
  %25725 = call double @llvm.fmuladd.f64(double 0xBCC8C00000000000, double %25724, double %25716)
  %25726 = load ptr, ptr %7, align 8, !tbaa !9
  %25727 = load i32, ptr %12, align 4, !tbaa !5
  %25728 = load i32, ptr %8, align 4, !tbaa !5
  %25729 = mul nsw i32 3, %25728
  %25730 = add nsw i32 %25727, %25729
  %25731 = sext i32 %25730 to i64
  %25732 = getelementptr inbounds double, ptr %25726, i64 %25731
  %25733 = load double, ptr %25732, align 8, !tbaa !11
  %25734 = call double @llvm.fmuladd.f64(double 0x3CF59BFFFFFFFFFF, double %25733, double %25725)
  %25735 = load ptr, ptr %7, align 8, !tbaa !9
  %25736 = load i32, ptr %12, align 4, !tbaa !5
  %25737 = load i32, ptr %8, align 4, !tbaa !5
  %25738 = mul nsw i32 4, %25737
  %25739 = add nsw i32 %25736, %25738
  %25740 = sext i32 %25739 to i64
  %25741 = getelementptr inbounds double, ptr %25735, i64 %25740
  %25742 = load double, ptr %25741, align 8, !tbaa !11
  %25743 = call double @llvm.fmuladd.f64(double 0xBCD71FFFFFFFFFFF, double %25742, double %25734)
  %25744 = load ptr, ptr %7, align 8, !tbaa !9
  %25745 = load i32, ptr %12, align 4, !tbaa !5
  %25746 = load i32, ptr %8, align 4, !tbaa !5
  %25747 = mul nsw i32 5, %25746
  %25748 = add nsw i32 %25745, %25747
  %25749 = sext i32 %25748 to i64
  %25750 = getelementptr inbounds double, ptr %25744, i64 %25749
  %25751 = load double, ptr %25750, align 8, !tbaa !11
  %25752 = call double @llvm.fmuladd.f64(double 0x3CED300000000001, double %25751, double %25743)
  %25753 = load ptr, ptr %7, align 8, !tbaa !9
  %25754 = load i32, ptr %12, align 4, !tbaa !5
  %25755 = load i32, ptr %8, align 4, !tbaa !5
  %25756 = mul nsw i32 6, %25755
  %25757 = add nsw i32 %25754, %25756
  %25758 = sext i32 %25757 to i64
  %25759 = getelementptr inbounds double, ptr %25753, i64 %25758
  %25760 = load double, ptr %25759, align 8, !tbaa !11
  %25761 = call double @llvm.fmuladd.f64(double 0x3FF3F64564513B1C, double %25760, double %25752)
  %25762 = load ptr, ptr %7, align 8, !tbaa !9
  %25763 = load i32, ptr %12, align 4, !tbaa !5
  %25764 = load i32, ptr %8, align 4, !tbaa !5
  %25765 = mul nsw i32 7, %25764
  %25766 = add nsw i32 %25763, %25765
  %25767 = sext i32 %25766 to i64
  %25768 = getelementptr inbounds double, ptr %25762, i64 %25767
  %25769 = load double, ptr %25768, align 8, !tbaa !11
  %25770 = call double @llvm.fmuladd.f64(double 0xBCFADC0000000000, double %25769, double %25761)
  %25771 = load ptr, ptr %7, align 8, !tbaa !9
  %25772 = load i32, ptr %12, align 4, !tbaa !5
  %25773 = load i32, ptr %8, align 4, !tbaa !5
  %25774 = mul nsw i32 8, %25773
  %25775 = add nsw i32 %25772, %25774
  %25776 = sext i32 %25775 to i64
  %25777 = getelementptr inbounds double, ptr %25771, i64 %25776
  %25778 = load double, ptr %25777, align 8, !tbaa !11
  %25779 = call double @llvm.fmuladd.f64(double 0xBCD9000000000002, double %25778, double %25770)
  %25780 = load ptr, ptr %7, align 8, !tbaa !9
  %25781 = load i32, ptr %12, align 4, !tbaa !5
  %25782 = load i32, ptr %8, align 4, !tbaa !5
  %25783 = mul nsw i32 9, %25782
  %25784 = add nsw i32 %25781, %25783
  %25785 = sext i32 %25784 to i64
  %25786 = getelementptr inbounds double, ptr %25780, i64 %25785
  %25787 = load double, ptr %25786, align 8, !tbaa !11
  %25788 = call double @llvm.fmuladd.f64(double 0xBCEB7FFFFFFFFFFF, double %25787, double %25779)
  %25789 = load ptr, ptr %7, align 8, !tbaa !9
  %25790 = load i32, ptr %12, align 4, !tbaa !5
  %25791 = load i32, ptr %8, align 4, !tbaa !5
  %25792 = mul nsw i32 10, %25791
  %25793 = add nsw i32 %25790, %25792
  %25794 = sext i32 %25793 to i64
  %25795 = getelementptr inbounds double, ptr %25789, i64 %25794
  %25796 = load double, ptr %25795, align 8, !tbaa !11
  %25797 = call double @llvm.fmuladd.f64(double 0x3CEC8FFFFFFFFFFF, double %25796, double %25788)
  %25798 = load ptr, ptr %7, align 8, !tbaa !9
  %25799 = load i32, ptr %12, align 4, !tbaa !5
  %25800 = load i32, ptr %8, align 4, !tbaa !5
  %25801 = mul nsw i32 11, %25800
  %25802 = add nsw i32 %25799, %25801
  %25803 = sext i32 %25802 to i64
  %25804 = getelementptr inbounds double, ptr %25798, i64 %25803
  %25805 = load double, ptr %25804, align 8, !tbaa !11
  %25806 = call double @llvm.fmuladd.f64(double 0x3CBE000000000000, double %25805, double %25797)
  %25807 = load ptr, ptr %7, align 8, !tbaa !9
  %25808 = load i32, ptr %12, align 4, !tbaa !5
  %25809 = load i32, ptr %8, align 4, !tbaa !5
  %25810 = mul nsw i32 12, %25809
  %25811 = add nsw i32 %25808, %25810
  %25812 = sext i32 %25811 to i64
  %25813 = getelementptr inbounds double, ptr %25807, i64 %25812
  %25814 = load double, ptr %25813, align 8, !tbaa !11
  %25815 = call double @llvm.fmuladd.f64(double 0xBCB1800000000000, double %25814, double %25806)
  %25816 = load ptr, ptr %7, align 8, !tbaa !9
  %25817 = load i32, ptr %12, align 4, !tbaa !5
  %25818 = load i32, ptr %8, align 4, !tbaa !5
  %25819 = mul nsw i32 13, %25818
  %25820 = add nsw i32 %25817, %25819
  %25821 = sext i32 %25820 to i64
  %25822 = getelementptr inbounds double, ptr %25816, i64 %25821
  %25823 = load double, ptr %25822, align 8, !tbaa !11
  %25824 = call double @llvm.fmuladd.f64(double 0x3CE5380000000000, double %25823, double %25815)
  %25825 = load ptr, ptr %7, align 8, !tbaa !9
  %25826 = load i32, ptr %12, align 4, !tbaa !5
  %25827 = load i32, ptr %8, align 4, !tbaa !5
  %25828 = mul nsw i32 14, %25827
  %25829 = add nsw i32 %25826, %25828
  %25830 = sext i32 %25829 to i64
  %25831 = getelementptr inbounds double, ptr %25825, i64 %25830
  %25832 = load double, ptr %25831, align 8, !tbaa !11
  %25833 = call double @llvm.fmuladd.f64(double 0xBCC4400000000000, double %25832, double %25824)
  %25834 = load ptr, ptr %7, align 8, !tbaa !9
  %25835 = load i32, ptr %12, align 4, !tbaa !5
  %25836 = load i32, ptr %8, align 4, !tbaa !5
  %25837 = mul nsw i32 15, %25836
  %25838 = add nsw i32 %25835, %25837
  %25839 = sext i32 %25838 to i64
  %25840 = getelementptr inbounds double, ptr %25834, i64 %25839
  %25841 = load double, ptr %25840, align 8, !tbaa !11
  %25842 = call double @llvm.fmuladd.f64(double 0x3CDE5FFFFFFFFFFD, double %25841, double %25833)
  %25843 = load ptr, ptr %7, align 8, !tbaa !9
  %25844 = load i32, ptr %12, align 4, !tbaa !5
  %25845 = load i32, ptr %8, align 4, !tbaa !5
  %25846 = mul nsw i32 16, %25845
  %25847 = add nsw i32 %25844, %25846
  %25848 = sext i32 %25847 to i64
  %25849 = getelementptr inbounds double, ptr %25843, i64 %25848
  %25850 = load double, ptr %25849, align 8, !tbaa !11
  %25851 = call double @llvm.fmuladd.f64(double 0x3FE3AA36D354D105, double %25850, double %25842)
  %25852 = load ptr, ptr %7, align 8, !tbaa !9
  %25853 = load i32, ptr %12, align 4, !tbaa !5
  %25854 = load i32, ptr %8, align 4, !tbaa !5
  %25855 = mul nsw i32 17, %25854
  %25856 = add nsw i32 %25853, %25855
  %25857 = sext i32 %25856 to i64
  %25858 = getelementptr inbounds double, ptr %25852, i64 %25857
  %25859 = load double, ptr %25858, align 8, !tbaa !11
  %25860 = call double @llvm.fmuladd.f64(double 0xBCEBB80000000001, double %25859, double %25851)
  %25861 = load ptr, ptr %7, align 8, !tbaa !9
  %25862 = load i32, ptr %12, align 4, !tbaa !5
  %25863 = load i32, ptr %8, align 4, !tbaa !5
  %25864 = mul nsw i32 18, %25863
  %25865 = add nsw i32 %25862, %25864
  %25866 = sext i32 %25865 to i64
  %25867 = getelementptr inbounds double, ptr %25861, i64 %25866
  %25868 = load double, ptr %25867, align 8, !tbaa !11
  %25869 = call double @llvm.fmuladd.f64(double 0xBCCC000000000000, double %25868, double %25860)
  %25870 = load ptr, ptr %7, align 8, !tbaa !9
  %25871 = load i32, ptr %12, align 4, !tbaa !5
  %25872 = load i32, ptr %8, align 4, !tbaa !5
  %25873 = mul nsw i32 19, %25872
  %25874 = add nsw i32 %25871, %25873
  %25875 = sext i32 %25874 to i64
  %25876 = getelementptr inbounds double, ptr %25870, i64 %25875
  %25877 = load double, ptr %25876, align 8, !tbaa !11
  %25878 = call double @llvm.fmuladd.f64(double 0xBCDAFFFFFFFFFFFE, double %25877, double %25869)
  store double %25878, ptr %11, align 8, !tbaa !11
  %25879 = load double, ptr %11, align 8, !tbaa !11
  %25880 = load ptr, ptr %9, align 8, !tbaa !9
  %25881 = load i32, ptr %12, align 4, !tbaa !5
  %25882 = load i32, ptr %10, align 4, !tbaa !5
  %25883 = mul nsw i32 96, %25882
  %25884 = add nsw i32 %25881, %25883
  %25885 = sext i32 %25884 to i64
  %25886 = getelementptr inbounds double, ptr %25880, i64 %25885
  store double %25879, ptr %25886, align 8, !tbaa !11
  %25887 = load ptr, ptr %7, align 8, !tbaa !9
  %25888 = load i32, ptr %12, align 4, !tbaa !5
  %25889 = load i32, ptr %8, align 4, !tbaa !5
  %25890 = mul nsw i32 0, %25889
  %25891 = add nsw i32 %25888, %25890
  %25892 = sext i32 %25891 to i64
  %25893 = getelementptr inbounds double, ptr %25887, i64 %25892
  %25894 = load double, ptr %25893, align 8, !tbaa !11
  %25895 = load ptr, ptr %7, align 8, !tbaa !9
  %25896 = load i32, ptr %12, align 4, !tbaa !5
  %25897 = load i32, ptr %8, align 4, !tbaa !5
  %25898 = mul nsw i32 1, %25897
  %25899 = add nsw i32 %25896, %25898
  %25900 = sext i32 %25899 to i64
  %25901 = getelementptr inbounds double, ptr %25895, i64 %25900
  %25902 = load double, ptr %25901, align 8, !tbaa !11
  %25903 = fmul double 0x3CD2DFFFFFFFFFFE, %25902
  %25904 = call double @llvm.fmuladd.f64(double 0x3CF8B80000000000, double %25894, double %25903)
  %25905 = load ptr, ptr %7, align 8, !tbaa !9
  %25906 = load i32, ptr %12, align 4, !tbaa !5
  %25907 = load i32, ptr %8, align 4, !tbaa !5
  %25908 = mul nsw i32 2, %25907
  %25909 = add nsw i32 %25906, %25908
  %25910 = sext i32 %25909 to i64
  %25911 = getelementptr inbounds double, ptr %25905, i64 %25910
  %25912 = load double, ptr %25911, align 8, !tbaa !11
  %25913 = call double @llvm.fmuladd.f64(double 0x3CF7B80000000000, double %25912, double %25904)
  %25914 = load ptr, ptr %7, align 8, !tbaa !9
  %25915 = load i32, ptr %12, align 4, !tbaa !5
  %25916 = load i32, ptr %8, align 4, !tbaa !5
  %25917 = mul nsw i32 3, %25916
  %25918 = add nsw i32 %25915, %25917
  %25919 = sext i32 %25918 to i64
  %25920 = getelementptr inbounds double, ptr %25914, i64 %25919
  %25921 = load double, ptr %25920, align 8, !tbaa !11
  %25922 = call double @llvm.fmuladd.f64(double 0xBCC4200000000000, double %25921, double %25913)
  %25923 = load ptr, ptr %7, align 8, !tbaa !9
  %25924 = load i32, ptr %12, align 4, !tbaa !5
  %25925 = load i32, ptr %8, align 4, !tbaa !5
  %25926 = mul nsw i32 4, %25925
  %25927 = add nsw i32 %25924, %25926
  %25928 = sext i32 %25927 to i64
  %25929 = getelementptr inbounds double, ptr %25923, i64 %25928
  %25930 = load double, ptr %25929, align 8, !tbaa !11
  %25931 = call double @llvm.fmuladd.f64(double 0x3CEE500000000001, double %25930, double %25922)
  %25932 = load ptr, ptr %7, align 8, !tbaa !9
  %25933 = load i32, ptr %12, align 4, !tbaa !5
  %25934 = load i32, ptr %8, align 4, !tbaa !5
  %25935 = mul nsw i32 5, %25934
  %25936 = add nsw i32 %25933, %25935
  %25937 = sext i32 %25936 to i64
  %25938 = getelementptr inbounds double, ptr %25932, i64 %25937
  %25939 = load double, ptr %25938, align 8, !tbaa !11
  %25940 = call double @llvm.fmuladd.f64(double 0xBCD5A00000000002, double %25939, double %25931)
  %25941 = load ptr, ptr %7, align 8, !tbaa !9
  %25942 = load i32, ptr %12, align 4, !tbaa !5
  %25943 = load i32, ptr %8, align 4, !tbaa !5
  %25944 = mul nsw i32 6, %25943
  %25945 = add nsw i32 %25942, %25944
  %25946 = sext i32 %25945 to i64
  %25947 = getelementptr inbounds double, ptr %25941, i64 %25946
  %25948 = load double, ptr %25947, align 8, !tbaa !11
  %25949 = call double @llvm.fmuladd.f64(double 0xBCFBBC0000000000, double %25948, double %25940)
  %25950 = load ptr, ptr %7, align 8, !tbaa !9
  %25951 = load i32, ptr %12, align 4, !tbaa !5
  %25952 = load i32, ptr %8, align 4, !tbaa !5
  %25953 = mul nsw i32 7, %25952
  %25954 = add nsw i32 %25951, %25953
  %25955 = sext i32 %25954 to i64
  %25956 = getelementptr inbounds double, ptr %25950, i64 %25955
  %25957 = load double, ptr %25956, align 8, !tbaa !11
  %25958 = call double @llvm.fmuladd.f64(double 0x3FF3F64564513B1C, double %25957, double %25949)
  %25959 = load ptr, ptr %7, align 8, !tbaa !9
  %25960 = load i32, ptr %12, align 4, !tbaa !5
  %25961 = load i32, ptr %8, align 4, !tbaa !5
  %25962 = mul nsw i32 8, %25961
  %25963 = add nsw i32 %25960, %25962
  %25964 = sext i32 %25963 to i64
  %25965 = getelementptr inbounds double, ptr %25959, i64 %25964
  %25966 = load double, ptr %25965, align 8, !tbaa !11
  %25967 = call double @llvm.fmuladd.f64(double 0xBCEB7FFFFFFFFFFF, double %25966, double %25958)
  %25968 = load ptr, ptr %7, align 8, !tbaa !9
  %25969 = load i32, ptr %12, align 4, !tbaa !5
  %25970 = load i32, ptr %8, align 4, !tbaa !5
  %25971 = mul nsw i32 9, %25970
  %25972 = add nsw i32 %25969, %25971
  %25973 = sext i32 %25972 to i64
  %25974 = getelementptr inbounds double, ptr %25968, i64 %25973
  %25975 = load double, ptr %25974, align 8, !tbaa !11
  %25976 = call double @llvm.fmuladd.f64(double 0xBCD93FFFFFFFFFFF, double %25975, double %25967)
  %25977 = load ptr, ptr %7, align 8, !tbaa !9
  %25978 = load i32, ptr %12, align 4, !tbaa !5
  %25979 = load i32, ptr %8, align 4, !tbaa !5
  %25980 = mul nsw i32 10, %25979
  %25981 = add nsw i32 %25978, %25980
  %25982 = sext i32 %25981 to i64
  %25983 = getelementptr inbounds double, ptr %25977, i64 %25982
  %25984 = load double, ptr %25983, align 8, !tbaa !11
  %25985 = call double @llvm.fmuladd.f64(double 0x3CEB6FFFFFFFFFFF, double %25984, double %25976)
  %25986 = load ptr, ptr %7, align 8, !tbaa !9
  %25987 = load i32, ptr %12, align 4, !tbaa !5
  %25988 = load i32, ptr %8, align 4, !tbaa !5
  %25989 = mul nsw i32 11, %25988
  %25990 = add nsw i32 %25987, %25989
  %25991 = sext i32 %25990 to i64
  %25992 = getelementptr inbounds double, ptr %25986, i64 %25991
  %25993 = load double, ptr %25992, align 8, !tbaa !11
  %25994 = call double @llvm.fmuladd.f64(double 0x3CC0C00000000000, double %25993, double %25985)
  %25995 = load ptr, ptr %7, align 8, !tbaa !9
  %25996 = load i32, ptr %12, align 4, !tbaa !5
  %25997 = load i32, ptr %8, align 4, !tbaa !5
  %25998 = mul nsw i32 12, %25997
  %25999 = add nsw i32 %25996, %25998
  %26000 = sext i32 %25999 to i64
  %26001 = getelementptr inbounds double, ptr %25995, i64 %26000
  %26002 = load double, ptr %26001, align 8, !tbaa !11
  %26003 = call double @llvm.fmuladd.f64(double 0x3CE6700000000000, double %26002, double %25994)
  %26004 = load ptr, ptr %7, align 8, !tbaa !9
  %26005 = load i32, ptr %12, align 4, !tbaa !5
  %26006 = load i32, ptr %8, align 4, !tbaa !5
  %26007 = mul nsw i32 13, %26006
  %26008 = add nsw i32 %26005, %26007
  %26009 = sext i32 %26008 to i64
  %26010 = getelementptr inbounds double, ptr %26004, i64 %26009
  %26011 = load double, ptr %26010, align 8, !tbaa !11
  %26012 = call double @llvm.fmuladd.f64(double 0xBCB43FFFFFFFFFFF, double %26011, double %26003)
  %26013 = load ptr, ptr %7, align 8, !tbaa !9
  %26014 = load i32, ptr %12, align 4, !tbaa !5
  %26015 = load i32, ptr %8, align 4, !tbaa !5
  %26016 = mul nsw i32 14, %26015
  %26017 = add nsw i32 %26014, %26016
  %26018 = sext i32 %26017 to i64
  %26019 = getelementptr inbounds double, ptr %26013, i64 %26018
  %26020 = load double, ptr %26019, align 8, !tbaa !11
  %26021 = call double @llvm.fmuladd.f64(double 0x3CDEA00000000000, double %26020, double %26012)
  %26022 = load ptr, ptr %7, align 8, !tbaa !9
  %26023 = load i32, ptr %12, align 4, !tbaa !5
  %26024 = load i32, ptr %8, align 4, !tbaa !5
  %26025 = mul nsw i32 15, %26024
  %26026 = add nsw i32 %26023, %26025
  %26027 = sext i32 %26026 to i64
  %26028 = getelementptr inbounds double, ptr %26022, i64 %26027
  %26029 = load double, ptr %26028, align 8, !tbaa !11
  %26030 = call double @llvm.fmuladd.f64(double 0xBCC7400000000000, double %26029, double %26021)
  %26031 = load ptr, ptr %7, align 8, !tbaa !9
  %26032 = load i32, ptr %12, align 4, !tbaa !5
  %26033 = load i32, ptr %8, align 4, !tbaa !5
  %26034 = mul nsw i32 16, %26033
  %26035 = add nsw i32 %26032, %26034
  %26036 = sext i32 %26035 to i64
  %26037 = getelementptr inbounds double, ptr %26031, i64 %26036
  %26038 = load double, ptr %26037, align 8, !tbaa !11
  %26039 = call double @llvm.fmuladd.f64(double 0xBCEAF80000000000, double %26038, double %26030)
  %26040 = load ptr, ptr %7, align 8, !tbaa !9
  %26041 = load i32, ptr %12, align 4, !tbaa !5
  %26042 = load i32, ptr %8, align 4, !tbaa !5
  %26043 = mul nsw i32 17, %26042
  %26044 = add nsw i32 %26041, %26043
  %26045 = sext i32 %26044 to i64
  %26046 = getelementptr inbounds double, ptr %26040, i64 %26045
  %26047 = load double, ptr %26046, align 8, !tbaa !11
  %26048 = call double @llvm.fmuladd.f64(double 0x3FE3AA36D354D103, double %26047, double %26039)
  %26049 = load ptr, ptr %7, align 8, !tbaa !9
  %26050 = load i32, ptr %12, align 4, !tbaa !5
  %26051 = load i32, ptr %8, align 4, !tbaa !5
  %26052 = mul nsw i32 18, %26051
  %26053 = add nsw i32 %26050, %26052
  %26054 = sext i32 %26053 to i64
  %26055 = getelementptr inbounds double, ptr %26049, i64 %26054
  %26056 = load double, ptr %26055, align 8, !tbaa !11
  %26057 = call double @llvm.fmuladd.f64(double 0xBCDBFFFFFFFFFFFF, double %26056, double %26048)
  %26058 = load ptr, ptr %7, align 8, !tbaa !9
  %26059 = load i32, ptr %12, align 4, !tbaa !5
  %26060 = load i32, ptr %8, align 4, !tbaa !5
  %26061 = mul nsw i32 19, %26060
  %26062 = add nsw i32 %26059, %26061
  %26063 = sext i32 %26062 to i64
  %26064 = getelementptr inbounds double, ptr %26058, i64 %26063
  %26065 = load double, ptr %26064, align 8, !tbaa !11
  %26066 = call double @llvm.fmuladd.f64(double 0xBCC6800000000000, double %26065, double %26057)
  store double %26066, ptr %11, align 8, !tbaa !11
  %26067 = load double, ptr %11, align 8, !tbaa !11
  %26068 = load ptr, ptr %9, align 8, !tbaa !9
  %26069 = load i32, ptr %12, align 4, !tbaa !5
  %26070 = load i32, ptr %10, align 4, !tbaa !5
  %26071 = mul nsw i32 97, %26070
  %26072 = add nsw i32 %26069, %26071
  %26073 = sext i32 %26072 to i64
  %26074 = getelementptr inbounds double, ptr %26068, i64 %26073
  store double %26067, ptr %26074, align 8, !tbaa !11
  %26075 = load ptr, ptr %7, align 8, !tbaa !9
  %26076 = load i32, ptr %12, align 4, !tbaa !5
  %26077 = load i32, ptr %8, align 4, !tbaa !5
  %26078 = mul nsw i32 0, %26077
  %26079 = add nsw i32 %26076, %26078
  %26080 = sext i32 %26079 to i64
  %26081 = getelementptr inbounds double, ptr %26075, i64 %26080
  %26082 = load double, ptr %26081, align 8, !tbaa !11
  %26083 = load ptr, ptr %7, align 8, !tbaa !9
  %26084 = load i32, ptr %12, align 4, !tbaa !5
  %26085 = load i32, ptr %8, align 4, !tbaa !5
  %26086 = mul nsw i32 1, %26085
  %26087 = add nsw i32 %26084, %26086
  %26088 = sext i32 %26087 to i64
  %26089 = getelementptr inbounds double, ptr %26083, i64 %26088
  %26090 = load double, ptr %26089, align 8, !tbaa !11
  %26091 = fmul double 0x3CF6600000000001, %26090
  %26092 = call double @llvm.fmuladd.f64(double 0x3CF9E00000000000, double %26082, double %26091)
  %26093 = load ptr, ptr %7, align 8, !tbaa !9
  %26094 = load i32, ptr %12, align 4, !tbaa !5
  %26095 = load i32, ptr %8, align 4, !tbaa !5
  %26096 = mul nsw i32 2, %26095
  %26097 = add nsw i32 %26094, %26096
  %26098 = sext i32 %26097 to i64
  %26099 = getelementptr inbounds double, ptr %26093, i64 %26098
  %26100 = load double, ptr %26099, align 8, !tbaa !11
  %26101 = call double @llvm.fmuladd.f64(double 0x3CCF400000000000, double %26100, double %26092)
  %26102 = load ptr, ptr %7, align 8, !tbaa !9
  %26103 = load i32, ptr %12, align 4, !tbaa !5
  %26104 = load i32, ptr %8, align 4, !tbaa !5
  %26105 = mul nsw i32 3, %26104
  %26106 = add nsw i32 %26103, %26105
  %26107 = sext i32 %26106 to i64
  %26108 = getelementptr inbounds double, ptr %26102, i64 %26107
  %26109 = load double, ptr %26108, align 8, !tbaa !11
  %26110 = call double @llvm.fmuladd.f64(double 0xBCC5800000000000, double %26109, double %26101)
  %26111 = load ptr, ptr %7, align 8, !tbaa !9
  %26112 = load i32, ptr %12, align 4, !tbaa !5
  %26113 = load i32, ptr %8, align 4, !tbaa !5
  %26114 = mul nsw i32 4, %26113
  %26115 = add nsw i32 %26112, %26114
  %26116 = sext i32 %26115 to i64
  %26117 = getelementptr inbounds double, ptr %26111, i64 %26116
  %26118 = load double, ptr %26117, align 8, !tbaa !11
  %26119 = call double @llvm.fmuladd.f64(double 0xBCDBFFFFFFFFFFFF, double %26118, double %26110)
  %26120 = load ptr, ptr %7, align 8, !tbaa !9
  %26121 = load i32, ptr %12, align 4, !tbaa !5
  %26122 = load i32, ptr %8, align 4, !tbaa !5
  %26123 = mul nsw i32 5, %26122
  %26124 = add nsw i32 %26121, %26123
  %26125 = sext i32 %26124 to i64
  %26126 = getelementptr inbounds double, ptr %26120, i64 %26125
  %26127 = load double, ptr %26126, align 8, !tbaa !11
  %26128 = call double @llvm.fmuladd.f64(double 0xBCFBA00000000000, double %26127, double %26119)
  %26129 = load ptr, ptr %7, align 8, !tbaa !9
  %26130 = load i32, ptr %12, align 4, !tbaa !5
  %26131 = load i32, ptr %8, align 4, !tbaa !5
  %26132 = mul nsw i32 6, %26131
  %26133 = add nsw i32 %26130, %26132
  %26134 = sext i32 %26133 to i64
  %26135 = getelementptr inbounds double, ptr %26129, i64 %26134
  %26136 = load double, ptr %26135, align 8, !tbaa !11
  %26137 = call double @llvm.fmuladd.f64(double 0xBCD7BFFFFFFFFFFE, double %26136, double %26128)
  %26138 = load ptr, ptr %7, align 8, !tbaa !9
  %26139 = load i32, ptr %12, align 4, !tbaa !5
  %26140 = load i32, ptr %8, align 4, !tbaa !5
  %26141 = mul nsw i32 7, %26140
  %26142 = add nsw i32 %26139, %26141
  %26143 = sext i32 %26142 to i64
  %26144 = getelementptr inbounds double, ptr %26138, i64 %26143
  %26145 = load double, ptr %26144, align 8, !tbaa !11
  %26146 = call double @llvm.fmuladd.f64(double 0xBCED000000000000, double %26145, double %26137)
  %26147 = load ptr, ptr %7, align 8, !tbaa !9
  %26148 = load i32, ptr %12, align 4, !tbaa !5
  %26149 = load i32, ptr %8, align 4, !tbaa !5
  %26150 = mul nsw i32 8, %26149
  %26151 = add nsw i32 %26148, %26150
  %26152 = sext i32 %26151 to i64
  %26153 = getelementptr inbounds double, ptr %26147, i64 %26152
  %26154 = load double, ptr %26153, align 8, !tbaa !11
  %26155 = call double @llvm.fmuladd.f64(double 0x3FF3F64564513B1C, double %26154, double %26146)
  %26156 = load ptr, ptr %7, align 8, !tbaa !9
  %26157 = load i32, ptr %12, align 4, !tbaa !5
  %26158 = load i32, ptr %8, align 4, !tbaa !5
  %26159 = mul nsw i32 9, %26158
  %26160 = add nsw i32 %26157, %26159
  %26161 = sext i32 %26160 to i64
  %26162 = getelementptr inbounds double, ptr %26156, i64 %26161
  %26163 = load double, ptr %26162, align 8, !tbaa !11
  %26164 = call double @llvm.fmuladd.f64(double 0x3CF1800000000000, double %26163, double %26155)
  %26165 = load ptr, ptr %7, align 8, !tbaa !9
  %26166 = load i32, ptr %12, align 4, !tbaa !5
  %26167 = load i32, ptr %8, align 4, !tbaa !5
  %26168 = mul nsw i32 10, %26167
  %26169 = add nsw i32 %26166, %26168
  %26170 = sext i32 %26169 to i64
  %26171 = getelementptr inbounds double, ptr %26165, i64 %26170
  %26172 = load double, ptr %26171, align 8, !tbaa !11
  %26173 = call double @llvm.fmuladd.f64(double 0x3CEAC00000000001, double %26172, double %26164)
  %26174 = load ptr, ptr %7, align 8, !tbaa !9
  %26175 = load i32, ptr %12, align 4, !tbaa !5
  %26176 = load i32, ptr %8, align 4, !tbaa !5
  %26177 = mul nsw i32 11, %26176
  %26178 = add nsw i32 %26175, %26177
  %26179 = sext i32 %26178 to i64
  %26180 = getelementptr inbounds double, ptr %26174, i64 %26179
  %26181 = load double, ptr %26180, align 8, !tbaa !11
  %26182 = call double @llvm.fmuladd.f64(double 0x3CE5800000000001, double %26181, double %26173)
  %26183 = load ptr, ptr %7, align 8, !tbaa !9
  %26184 = load i32, ptr %12, align 4, !tbaa !5
  %26185 = load i32, ptr %8, align 4, !tbaa !5
  %26186 = mul nsw i32 12, %26185
  %26187 = add nsw i32 %26184, %26186
  %26188 = sext i32 %26187 to i64
  %26189 = getelementptr inbounds double, ptr %26183, i64 %26188
  %26190 = load double, ptr %26189, align 8, !tbaa !11
  %26191 = call double @llvm.fmuladd.f64(double 0x3CB97FFFFFFFFFFF, double %26190, double %26182)
  %26192 = load ptr, ptr %7, align 8, !tbaa !9
  %26193 = load i32, ptr %12, align 4, !tbaa !5
  %26194 = load i32, ptr %8, align 4, !tbaa !5
  %26195 = mul nsw i32 13, %26194
  %26196 = add nsw i32 %26193, %26195
  %26197 = sext i32 %26196 to i64
  %26198 = getelementptr inbounds double, ptr %26192, i64 %26197
  %26199 = load double, ptr %26198, align 8, !tbaa !11
  %26200 = call double @llvm.fmuladd.f64(double 0xBCB9000000000000, double %26199, double %26191)
  %26201 = load ptr, ptr %7, align 8, !tbaa !9
  %26202 = load i32, ptr %12, align 4, !tbaa !5
  %26203 = load i32, ptr %8, align 4, !tbaa !5
  %26204 = mul nsw i32 14, %26203
  %26205 = add nsw i32 %26202, %26204
  %26206 = sext i32 %26205 to i64
  %26207 = getelementptr inbounds double, ptr %26201, i64 %26206
  %26208 = load double, ptr %26207, align 8, !tbaa !11
  %26209 = call double @llvm.fmuladd.f64(double 0xBCCC000000000000, double %26208, double %26200)
  %26210 = load ptr, ptr %7, align 8, !tbaa !9
  %26211 = load i32, ptr %12, align 4, !tbaa !5
  %26212 = load i32, ptr %8, align 4, !tbaa !5
  %26213 = mul nsw i32 15, %26212
  %26214 = add nsw i32 %26211, %26213
  %26215 = sext i32 %26214 to i64
  %26216 = getelementptr inbounds double, ptr %26210, i64 %26215
  %26217 = load double, ptr %26216, align 8, !tbaa !11
  %26218 = call double @llvm.fmuladd.f64(double 0xBCEB400000000001, double %26217, double %26209)
  %26219 = load ptr, ptr %7, align 8, !tbaa !9
  %26220 = load i32, ptr %12, align 4, !tbaa !5
  %26221 = load i32, ptr %8, align 4, !tbaa !5
  %26222 = mul nsw i32 16, %26221
  %26223 = add nsw i32 %26220, %26222
  %26224 = sext i32 %26223 to i64
  %26225 = getelementptr inbounds double, ptr %26219, i64 %26224
  %26226 = load double, ptr %26225, align 8, !tbaa !11
  %26227 = call double @llvm.fmuladd.f64(double 0xBCC5800000000000, double %26226, double %26218)
  %26228 = load ptr, ptr %7, align 8, !tbaa !9
  %26229 = load i32, ptr %12, align 4, !tbaa !5
  %26230 = load i32, ptr %8, align 4, !tbaa !5
  %26231 = mul nsw i32 17, %26230
  %26232 = add nsw i32 %26229, %26231
  %26233 = sext i32 %26232 to i64
  %26234 = getelementptr inbounds double, ptr %26228, i64 %26233
  %26235 = load double, ptr %26234, align 8, !tbaa !11
  %26236 = call double @llvm.fmuladd.f64(double 0xBCDAFFFFFFFFFFFE, double %26235, double %26227)
  %26237 = load ptr, ptr %7, align 8, !tbaa !9
  %26238 = load i32, ptr %12, align 4, !tbaa !5
  %26239 = load i32, ptr %8, align 4, !tbaa !5
  %26240 = mul nsw i32 18, %26239
  %26241 = add nsw i32 %26238, %26240
  %26242 = sext i32 %26241 to i64
  %26243 = getelementptr inbounds double, ptr %26237, i64 %26242
  %26244 = load double, ptr %26243, align 8, !tbaa !11
  %26245 = call double @llvm.fmuladd.f64(double 0x3FE3AA36D354D103, double %26244, double %26236)
  %26246 = load ptr, ptr %7, align 8, !tbaa !9
  %26247 = load i32, ptr %12, align 4, !tbaa !5
  %26248 = load i32, ptr %8, align 4, !tbaa !5
  %26249 = mul nsw i32 19, %26248
  %26250 = add nsw i32 %26247, %26249
  %26251 = sext i32 %26250 to i64
  %26252 = getelementptr inbounds double, ptr %26246, i64 %26251
  %26253 = load double, ptr %26252, align 8, !tbaa !11
  %26254 = call double @llvm.fmuladd.f64(double 0x3CE1800000000000, double %26253, double %26245)
  store double %26254, ptr %11, align 8, !tbaa !11
  %26255 = load double, ptr %11, align 8, !tbaa !11
  %26256 = load ptr, ptr %9, align 8, !tbaa !9
  %26257 = load i32, ptr %12, align 4, !tbaa !5
  %26258 = load i32, ptr %10, align 4, !tbaa !5
  %26259 = mul nsw i32 98, %26258
  %26260 = add nsw i32 %26257, %26259
  %26261 = sext i32 %26260 to i64
  %26262 = getelementptr inbounds double, ptr %26256, i64 %26261
  store double %26255, ptr %26262, align 8, !tbaa !11
  %26263 = load ptr, ptr %7, align 8, !tbaa !9
  %26264 = load i32, ptr %12, align 4, !tbaa !5
  %26265 = load i32, ptr %8, align 4, !tbaa !5
  %26266 = mul nsw i32 0, %26265
  %26267 = add nsw i32 %26264, %26266
  %26268 = sext i32 %26267 to i64
  %26269 = getelementptr inbounds double, ptr %26263, i64 %26268
  %26270 = load double, ptr %26269, align 8, !tbaa !11
  %26271 = load ptr, ptr %7, align 8, !tbaa !9
  %26272 = load i32, ptr %12, align 4, !tbaa !5
  %26273 = load i32, ptr %8, align 4, !tbaa !5
  %26274 = mul nsw i32 1, %26273
  %26275 = add nsw i32 %26272, %26274
  %26276 = sext i32 %26275 to i64
  %26277 = getelementptr inbounds double, ptr %26271, i64 %26276
  %26278 = load double, ptr %26277, align 8, !tbaa !11
  %26279 = fmul double 0x3CF5200000000000, %26278
  %26280 = call double @llvm.fmuladd.f64(double 0x3CFA600000000000, double %26270, double %26279)
  %26281 = load ptr, ptr %7, align 8, !tbaa !9
  %26282 = load i32, ptr %12, align 4, !tbaa !5
  %26283 = load i32, ptr %8, align 4, !tbaa !5
  %26284 = mul nsw i32 2, %26283
  %26285 = add nsw i32 %26282, %26284
  %26286 = sext i32 %26285 to i64
  %26287 = getelementptr inbounds double, ptr %26281, i64 %26286
  %26288 = load double, ptr %26287, align 8, !tbaa !11
  %26289 = call double @llvm.fmuladd.f64(double 0xBCC7C00000000000, double %26288, double %26280)
  %26290 = load ptr, ptr %7, align 8, !tbaa !9
  %26291 = load i32, ptr %12, align 4, !tbaa !5
  %26292 = load i32, ptr %8, align 4, !tbaa !5
  %26293 = mul nsw i32 3, %26292
  %26294 = add nsw i32 %26291, %26293
  %26295 = sext i32 %26294 to i64
  %26296 = getelementptr inbounds double, ptr %26290, i64 %26295
  %26297 = load double, ptr %26296, align 8, !tbaa !11
  %26298 = call double @llvm.fmuladd.f64(double 0x3CD3A00000000001, double %26297, double %26289)
  %26299 = load ptr, ptr %7, align 8, !tbaa !9
  %26300 = load i32, ptr %12, align 4, !tbaa !5
  %26301 = load i32, ptr %8, align 4, !tbaa !5
  %26302 = mul nsw i32 4, %26301
  %26303 = add nsw i32 %26300, %26302
  %26304 = sext i32 %26303 to i64
  %26305 = getelementptr inbounds double, ptr %26299, i64 %26304
  %26306 = load double, ptr %26305, align 8, !tbaa !11
  %26307 = call double @llvm.fmuladd.f64(double 0xBCFD600000000000, double %26306, double %26298)
  %26308 = load ptr, ptr %7, align 8, !tbaa !9
  %26309 = load i32, ptr %12, align 4, !tbaa !5
  %26310 = load i32, ptr %8, align 4, !tbaa !5
  %26311 = mul nsw i32 5, %26310
  %26312 = add nsw i32 %26309, %26311
  %26313 = sext i32 %26312 to i64
  %26314 = getelementptr inbounds double, ptr %26308, i64 %26313
  %26315 = load double, ptr %26314, align 8, !tbaa !11
  %26316 = call double @llvm.fmuladd.f64(double 0xBCDB7FFFFFFFFFFF, double %26315, double %26307)
  %26317 = load ptr, ptr %7, align 8, !tbaa !9
  %26318 = load i32, ptr %12, align 4, !tbaa !5
  %26319 = load i32, ptr %8, align 4, !tbaa !5
  %26320 = mul nsw i32 6, %26319
  %26321 = add nsw i32 %26318, %26320
  %26322 = sext i32 %26321 to i64
  %26323 = getelementptr inbounds double, ptr %26317, i64 %26322
  %26324 = load double, ptr %26323, align 8, !tbaa !11
  %26325 = call double @llvm.fmuladd.f64(double 0xBCEC800000000000, double %26324, double %26316)
  %26326 = load ptr, ptr %7, align 8, !tbaa !9
  %26327 = load i32, ptr %12, align 4, !tbaa !5
  %26328 = load i32, ptr %8, align 4, !tbaa !5
  %26329 = mul nsw i32 7, %26328
  %26330 = add nsw i32 %26327, %26329
  %26331 = sext i32 %26330 to i64
  %26332 = getelementptr inbounds double, ptr %26326, i64 %26331
  %26333 = load double, ptr %26332, align 8, !tbaa !11
  %26334 = call double @llvm.fmuladd.f64(double 0xBCDA400000000000, double %26333, double %26325)
  %26335 = load ptr, ptr %7, align 8, !tbaa !9
  %26336 = load i32, ptr %12, align 4, !tbaa !5
  %26337 = load i32, ptr %8, align 4, !tbaa !5
  %26338 = mul nsw i32 8, %26337
  %26339 = add nsw i32 %26336, %26338
  %26340 = sext i32 %26339 to i64
  %26341 = getelementptr inbounds double, ptr %26335, i64 %26340
  %26342 = load double, ptr %26341, align 8, !tbaa !11
  %26343 = call double @llvm.fmuladd.f64(double 0x3CF2400000000000, double %26342, double %26334)
  %26344 = load ptr, ptr %7, align 8, !tbaa !9
  %26345 = load i32, ptr %12, align 4, !tbaa !5
  %26346 = load i32, ptr %8, align 4, !tbaa !5
  %26347 = mul nsw i32 9, %26346
  %26348 = add nsw i32 %26345, %26347
  %26349 = sext i32 %26348 to i64
  %26350 = getelementptr inbounds double, ptr %26344, i64 %26349
  %26351 = load double, ptr %26350, align 8, !tbaa !11
  %26352 = call double @llvm.fmuladd.f64(double 0x3FF3F64564513B1C, double %26351, double %26343)
  %26353 = load ptr, ptr %7, align 8, !tbaa !9
  %26354 = load i32, ptr %12, align 4, !tbaa !5
  %26355 = load i32, ptr %8, align 4, !tbaa !5
  %26356 = mul nsw i32 10, %26355
  %26357 = add nsw i32 %26354, %26356
  %26358 = sext i32 %26357 to i64
  %26359 = getelementptr inbounds double, ptr %26353, i64 %26358
  %26360 = load double, ptr %26359, align 8, !tbaa !11
  %26361 = call double @llvm.fmuladd.f64(double 0x3CEBBFFFFFFFFFFF, double %26360, double %26352)
  %26362 = load ptr, ptr %7, align 8, !tbaa !9
  %26363 = load i32, ptr %12, align 4, !tbaa !5
  %26364 = load i32, ptr %8, align 4, !tbaa !5
  %26365 = mul nsw i32 11, %26364
  %26366 = add nsw i32 %26363, %26365
  %26367 = sext i32 %26366 to i64
  %26368 = getelementptr inbounds double, ptr %26362, i64 %26367
  %26369 = load double, ptr %26368, align 8, !tbaa !11
  %26370 = call double @llvm.fmuladd.f64(double 0x3CE3C00000000000, double %26369, double %26361)
  %26371 = load ptr, ptr %7, align 8, !tbaa !9
  %26372 = load i32, ptr %12, align 4, !tbaa !5
  %26373 = load i32, ptr %8, align 4, !tbaa !5
  %26374 = mul nsw i32 12, %26373
  %26375 = add nsw i32 %26372, %26374
  %26376 = sext i32 %26375 to i64
  %26377 = getelementptr inbounds double, ptr %26371, i64 %26376
  %26378 = load double, ptr %26377, align 8, !tbaa !11
  %26379 = call double @llvm.fmuladd.f64(double 0xBCBB800000000001, double %26378, double %26370)
  %26380 = load ptr, ptr %7, align 8, !tbaa !9
  %26381 = load i32, ptr %12, align 4, !tbaa !5
  %26382 = load i32, ptr %8, align 4, !tbaa !5
  %26383 = mul nsw i32 13, %26382
  %26384 = add nsw i32 %26381, %26383
  %26385 = sext i32 %26384 to i64
  %26386 = getelementptr inbounds double, ptr %26380, i64 %26385
  %26387 = load double, ptr %26386, align 8, !tbaa !11
  %26388 = call double @llvm.fmuladd.f64(double 0x3CC3400000000000, double %26387, double %26379)
  %26389 = load ptr, ptr %7, align 8, !tbaa !9
  %26390 = load i32, ptr %12, align 4, !tbaa !5
  %26391 = load i32, ptr %8, align 4, !tbaa !5
  %26392 = mul nsw i32 14, %26391
  %26393 = add nsw i32 %26390, %26392
  %26394 = sext i32 %26393 to i64
  %26395 = getelementptr inbounds double, ptr %26389, i64 %26394
  %26396 = load double, ptr %26395, align 8, !tbaa !11
  %26397 = call double @llvm.fmuladd.f64(double 0xBCECC00000000000, double %26396, double %26388)
  %26398 = load ptr, ptr %7, align 8, !tbaa !9
  %26399 = load i32, ptr %12, align 4, !tbaa !5
  %26400 = load i32, ptr %8, align 4, !tbaa !5
  %26401 = mul nsw i32 15, %26400
  %26402 = add nsw i32 %26399, %26401
  %26403 = sext i32 %26402 to i64
  %26404 = getelementptr inbounds double, ptr %26398, i64 %26403
  %26405 = load double, ptr %26404, align 8, !tbaa !11
  %26406 = call double @llvm.fmuladd.f64(double 0xBCCB000000000000, double %26405, double %26397)
  %26407 = load ptr, ptr %7, align 8, !tbaa !9
  %26408 = load i32, ptr %12, align 4, !tbaa !5
  %26409 = load i32, ptr %8, align 4, !tbaa !5
  %26410 = mul nsw i32 16, %26409
  %26411 = add nsw i32 %26408, %26410
  %26412 = sext i32 %26411 to i64
  %26413 = getelementptr inbounds double, ptr %26407, i64 %26412
  %26414 = load double, ptr %26413, align 8, !tbaa !11
  %26415 = call double @llvm.fmuladd.f64(double 0xBCDAFFFFFFFFFFFE, double %26414, double %26406)
  %26416 = load ptr, ptr %7, align 8, !tbaa !9
  %26417 = load i32, ptr %12, align 4, !tbaa !5
  %26418 = load i32, ptr %8, align 4, !tbaa !5
  %26419 = mul nsw i32 17, %26418
  %26420 = add nsw i32 %26417, %26419
  %26421 = sext i32 %26420 to i64
  %26422 = getelementptr inbounds double, ptr %26416, i64 %26421
  %26423 = load double, ptr %26422, align 8, !tbaa !11
  %26424 = call double @llvm.fmuladd.f64(double 0xBCC6800000000000, double %26423, double %26415)
  %26425 = load ptr, ptr %7, align 8, !tbaa !9
  %26426 = load i32, ptr %12, align 4, !tbaa !5
  %26427 = load i32, ptr %8, align 4, !tbaa !5
  %26428 = mul nsw i32 18, %26427
  %26429 = add nsw i32 %26426, %26428
  %26430 = sext i32 %26429 to i64
  %26431 = getelementptr inbounds double, ptr %26425, i64 %26430
  %26432 = load double, ptr %26431, align 8, !tbaa !11
  %26433 = call double @llvm.fmuladd.f64(double 0x3CE1000000000000, double %26432, double %26424)
  %26434 = load ptr, ptr %7, align 8, !tbaa !9
  %26435 = load i32, ptr %12, align 4, !tbaa !5
  %26436 = load i32, ptr %8, align 4, !tbaa !5
  %26437 = mul nsw i32 19, %26436
  %26438 = add nsw i32 %26435, %26437
  %26439 = sext i32 %26438 to i64
  %26440 = getelementptr inbounds double, ptr %26434, i64 %26439
  %26441 = load double, ptr %26440, align 8, !tbaa !11
  %26442 = call double @llvm.fmuladd.f64(double 0x3FE3AA36D354D104, double %26441, double %26433)
  store double %26442, ptr %11, align 8, !tbaa !11
  %26443 = load double, ptr %11, align 8, !tbaa !11
  %26444 = load ptr, ptr %9, align 8, !tbaa !9
  %26445 = load i32, ptr %12, align 4, !tbaa !5
  %26446 = load i32, ptr %10, align 4, !tbaa !5
  %26447 = mul nsw i32 99, %26446
  %26448 = add nsw i32 %26445, %26447
  %26449 = sext i32 %26448 to i64
  %26450 = getelementptr inbounds double, ptr %26444, i64 %26449
  store double %26443, ptr %26450, align 8, !tbaa !11
  %26451 = load ptr, ptr %7, align 8, !tbaa !9
  %26452 = load i32, ptr %12, align 4, !tbaa !5
  %26453 = load i32, ptr %8, align 4, !tbaa !5
  %26454 = mul nsw i32 0, %26453
  %26455 = add nsw i32 %26452, %26454
  %26456 = sext i32 %26455 to i64
  %26457 = getelementptr inbounds double, ptr %26451, i64 %26456
  %26458 = load double, ptr %26457, align 8, !tbaa !11
  %26459 = load ptr, ptr %7, align 8, !tbaa !9
  %26460 = load i32, ptr %12, align 4, !tbaa !5
  %26461 = load i32, ptr %8, align 4, !tbaa !5
  %26462 = mul nsw i32 1, %26461
  %26463 = add nsw i32 %26460, %26462
  %26464 = sext i32 %26463 to i64
  %26465 = getelementptr inbounds double, ptr %26459, i64 %26464
  %26466 = load double, ptr %26465, align 8, !tbaa !11
  %26467 = fmul double 0x3CB1000000000001, %26466
  %26468 = call double @llvm.fmuladd.f64(double 0xBFE3AA36D354D104, double %26458, double %26467)
  %26469 = load ptr, ptr %7, align 8, !tbaa !9
  %26470 = load i32, ptr %12, align 4, !tbaa !5
  %26471 = load i32, ptr %8, align 4, !tbaa !5
  %26472 = mul nsw i32 2, %26471
  %26473 = add nsw i32 %26470, %26472
  %26474 = sext i32 %26473 to i64
  %26475 = getelementptr inbounds double, ptr %26469, i64 %26474
  %26476 = load double, ptr %26475, align 8, !tbaa !11
  %26477 = call double @llvm.fmuladd.f64(double 0x3CB43FFFFFFFFFFF, double %26476, double %26468)
  %26478 = load ptr, ptr %7, align 8, !tbaa !9
  %26479 = load i32, ptr %12, align 4, !tbaa !5
  %26480 = load i32, ptr %8, align 4, !tbaa !5
  %26481 = mul nsw i32 3, %26480
  %26482 = add nsw i32 %26479, %26481
  %26483 = sext i32 %26482 to i64
  %26484 = getelementptr inbounds double, ptr %26478, i64 %26483
  %26485 = load double, ptr %26484, align 8, !tbaa !11
  %26486 = call double @llvm.fmuladd.f64(double 0x3CB2C00000000001, double %26485, double %26477)
  %26487 = load ptr, ptr %7, align 8, !tbaa !9
  %26488 = load i32, ptr %12, align 4, !tbaa !5
  %26489 = load i32, ptr %8, align 4, !tbaa !5
  %26490 = mul nsw i32 4, %26489
  %26491 = add nsw i32 %26488, %26490
  %26492 = sext i32 %26491 to i64
  %26493 = getelementptr inbounds double, ptr %26487, i64 %26492
  %26494 = load double, ptr %26493, align 8, !tbaa !11
  %26495 = call double @llvm.fmuladd.f64(double 0xBCDBC00000000002, double %26494, double %26486)
  %26496 = load ptr, ptr %7, align 8, !tbaa !9
  %26497 = load i32, ptr %12, align 4, !tbaa !5
  %26498 = load i32, ptr %8, align 4, !tbaa !5
  %26499 = mul nsw i32 5, %26498
  %26500 = add nsw i32 %26497, %26499
  %26501 = sext i32 %26500 to i64
  %26502 = getelementptr inbounds double, ptr %26496, i64 %26501
  %26503 = load double, ptr %26502, align 8, !tbaa !11
  %26504 = call double @llvm.fmuladd.f64(double 0xBCDBC00000000002, double %26503, double %26495)
  %26505 = load ptr, ptr %7, align 8, !tbaa !9
  %26506 = load i32, ptr %12, align 4, !tbaa !5
  %26507 = load i32, ptr %8, align 4, !tbaa !5
  %26508 = mul nsw i32 6, %26507
  %26509 = add nsw i32 %26506, %26508
  %26510 = sext i32 %26509 to i64
  %26511 = getelementptr inbounds double, ptr %26505, i64 %26510
  %26512 = load double, ptr %26511, align 8, !tbaa !11
  %26513 = call double @llvm.fmuladd.f64(double 0xBCDB400000000001, double %26512, double %26504)
  %26514 = load ptr, ptr %7, align 8, !tbaa !9
  %26515 = load i32, ptr %12, align 4, !tbaa !5
  %26516 = load i32, ptr %8, align 4, !tbaa !5
  %26517 = mul nsw i32 7, %26516
  %26518 = add nsw i32 %26515, %26517
  %26519 = sext i32 %26518 to i64
  %26520 = getelementptr inbounds double, ptr %26514, i64 %26519
  %26521 = load double, ptr %26520, align 8, !tbaa !11
  %26522 = call double @llvm.fmuladd.f64(double 0xBCDAC00000000001, double %26521, double %26513)
  %26523 = load ptr, ptr %7, align 8, !tbaa !9
  %26524 = load i32, ptr %12, align 4, !tbaa !5
  %26525 = load i32, ptr %8, align 4, !tbaa !5
  %26526 = mul nsw i32 8, %26525
  %26527 = add nsw i32 %26524, %26526
  %26528 = sext i32 %26527 to i64
  %26529 = getelementptr inbounds double, ptr %26523, i64 %26528
  %26530 = load double, ptr %26529, align 8, !tbaa !11
  %26531 = call double @llvm.fmuladd.f64(double 0xBCDB7FFFFFFFFFFF, double %26530, double %26522)
  %26532 = load ptr, ptr %7, align 8, !tbaa !9
  %26533 = load i32, ptr %12, align 4, !tbaa !5
  %26534 = load i32, ptr %8, align 4, !tbaa !5
  %26535 = mul nsw i32 9, %26534
  %26536 = add nsw i32 %26533, %26535
  %26537 = sext i32 %26536 to i64
  %26538 = getelementptr inbounds double, ptr %26532, i64 %26537
  %26539 = load double, ptr %26538, align 8, !tbaa !11
  %26540 = call double @llvm.fmuladd.f64(double 0xBCDA000000000003, double %26539, double %26531)
  %26541 = load ptr, ptr %7, align 8, !tbaa !9
  %26542 = load i32, ptr %12, align 4, !tbaa !5
  %26543 = load i32, ptr %8, align 4, !tbaa !5
  %26544 = mul nsw i32 10, %26543
  %26545 = add nsw i32 %26542, %26544
  %26546 = sext i32 %26545 to i64
  %26547 = getelementptr inbounds double, ptr %26541, i64 %26546
  %26548 = load double, ptr %26547, align 8, !tbaa !11
  %26549 = call double @llvm.fmuladd.f64(double 0xBFF3F64564513B1C, double %26548, double %26540)
  %26550 = load ptr, ptr %7, align 8, !tbaa !9
  %26551 = load i32, ptr %12, align 4, !tbaa !5
  %26552 = load i32, ptr %8, align 4, !tbaa !5
  %26553 = mul nsw i32 11, %26552
  %26554 = add nsw i32 %26551, %26553
  %26555 = sext i32 %26554 to i64
  %26556 = getelementptr inbounds double, ptr %26550, i64 %26555
  %26557 = load double, ptr %26556, align 8, !tbaa !11
  %26558 = call double @llvm.fmuladd.f64(double 0x3CC4800000000000, double %26557, double %26549)
  %26559 = load ptr, ptr %7, align 8, !tbaa !9
  %26560 = load i32, ptr %12, align 4, !tbaa !5
  %26561 = load i32, ptr %8, align 4, !tbaa !5
  %26562 = mul nsw i32 12, %26561
  %26563 = add nsw i32 %26560, %26562
  %26564 = sext i32 %26563 to i64
  %26565 = getelementptr inbounds double, ptr %26559, i64 %26564
  %26566 = load double, ptr %26565, align 8, !tbaa !11
  %26567 = call double @llvm.fmuladd.f64(double 0x3CC6200000000000, double %26566, double %26558)
  %26568 = load ptr, ptr %7, align 8, !tbaa !9
  %26569 = load i32, ptr %12, align 4, !tbaa !5
  %26570 = load i32, ptr %8, align 4, !tbaa !5
  %26571 = mul nsw i32 13, %26570
  %26572 = add nsw i32 %26569, %26571
  %26573 = sext i32 %26572 to i64
  %26574 = getelementptr inbounds double, ptr %26568, i64 %26573
  %26575 = load double, ptr %26574, align 8, !tbaa !11
  %26576 = call double @llvm.fmuladd.f64(double 0x3CC4600000000000, double %26575, double %26567)
  %26577 = load ptr, ptr %7, align 8, !tbaa !9
  %26578 = load i32, ptr %12, align 4, !tbaa !5
  %26579 = load i32, ptr %8, align 4, !tbaa !5
  %26580 = mul nsw i32 14, %26579
  %26581 = add nsw i32 %26578, %26580
  %26582 = sext i32 %26581 to i64
  %26583 = getelementptr inbounds double, ptr %26577, i64 %26582
  %26584 = load double, ptr %26583, align 8, !tbaa !11
  %26585 = call double @llvm.fmuladd.f64(double 0xBCEB600000000000, double %26584, double %26576)
  %26586 = load ptr, ptr %7, align 8, !tbaa !9
  %26587 = load i32, ptr %12, align 4, !tbaa !5
  %26588 = load i32, ptr %8, align 4, !tbaa !5
  %26589 = mul nsw i32 15, %26588
  %26590 = add nsw i32 %26587, %26589
  %26591 = sext i32 %26590 to i64
  %26592 = getelementptr inbounds double, ptr %26586, i64 %26591
  %26593 = load double, ptr %26592, align 8, !tbaa !11
  %26594 = call double @llvm.fmuladd.f64(double 0xBCEB200000000000, double %26593, double %26585)
  %26595 = load ptr, ptr %7, align 8, !tbaa !9
  %26596 = load i32, ptr %12, align 4, !tbaa !5
  %26597 = load i32, ptr %8, align 4, !tbaa !5
  %26598 = mul nsw i32 16, %26597
  %26599 = add nsw i32 %26596, %26598
  %26600 = sext i32 %26599 to i64
  %26601 = getelementptr inbounds double, ptr %26595, i64 %26600
  %26602 = load double, ptr %26601, align 8, !tbaa !11
  %26603 = call double @llvm.fmuladd.f64(double 0xBCEBA00000000000, double %26602, double %26594)
  %26604 = load ptr, ptr %7, align 8, !tbaa !9
  %26605 = load i32, ptr %12, align 4, !tbaa !5
  %26606 = load i32, ptr %8, align 4, !tbaa !5
  %26607 = mul nsw i32 17, %26606
  %26608 = add nsw i32 %26605, %26607
  %26609 = sext i32 %26608 to i64
  %26610 = getelementptr inbounds double, ptr %26604, i64 %26609
  %26611 = load double, ptr %26610, align 8, !tbaa !11
  %26612 = call double @llvm.fmuladd.f64(double 0xBCE9600000000001, double %26611, double %26603)
  %26613 = load ptr, ptr %7, align 8, !tbaa !9
  %26614 = load i32, ptr %12, align 4, !tbaa !5
  %26615 = load i32, ptr %8, align 4, !tbaa !5
  %26616 = mul nsw i32 18, %26615
  %26617 = add nsw i32 %26614, %26616
  %26618 = sext i32 %26617 to i64
  %26619 = getelementptr inbounds double, ptr %26613, i64 %26618
  %26620 = load double, ptr %26619, align 8, !tbaa !11
  %26621 = call double @llvm.fmuladd.f64(double 0xBCEAC00000000001, double %26620, double %26612)
  %26622 = load ptr, ptr %7, align 8, !tbaa !9
  %26623 = load i32, ptr %12, align 4, !tbaa !5
  %26624 = load i32, ptr %8, align 4, !tbaa !5
  %26625 = mul nsw i32 19, %26624
  %26626 = add nsw i32 %26623, %26625
  %26627 = sext i32 %26626 to i64
  %26628 = getelementptr inbounds double, ptr %26622, i64 %26627
  %26629 = load double, ptr %26628, align 8, !tbaa !11
  %26630 = call double @llvm.fmuladd.f64(double 0xBCE9C00000000000, double %26629, double %26621)
  store double %26630, ptr %11, align 8, !tbaa !11
  %26631 = load double, ptr %11, align 8, !tbaa !11
  %26632 = load ptr, ptr %9, align 8, !tbaa !9
  %26633 = load i32, ptr %12, align 4, !tbaa !5
  %26634 = load i32, ptr %10, align 4, !tbaa !5
  %26635 = mul nsw i32 100, %26634
  %26636 = add nsw i32 %26633, %26635
  %26637 = sext i32 %26636 to i64
  %26638 = getelementptr inbounds double, ptr %26632, i64 %26637
  store double %26631, ptr %26638, align 8, !tbaa !11
  %26639 = load ptr, ptr %7, align 8, !tbaa !9
  %26640 = load i32, ptr %12, align 4, !tbaa !5
  %26641 = load i32, ptr %8, align 4, !tbaa !5
  %26642 = mul nsw i32 0, %26641
  %26643 = add nsw i32 %26640, %26642
  %26644 = sext i32 %26643 to i64
  %26645 = getelementptr inbounds double, ptr %26639, i64 %26644
  %26646 = load double, ptr %26645, align 8, !tbaa !11
  %26647 = load ptr, ptr %7, align 8, !tbaa !9
  %26648 = load i32, ptr %12, align 4, !tbaa !5
  %26649 = load i32, ptr %8, align 4, !tbaa !5
  %26650 = mul nsw i32 1, %26649
  %26651 = add nsw i32 %26648, %26650
  %26652 = sext i32 %26651 to i64
  %26653 = getelementptr inbounds double, ptr %26647, i64 %26652
  %26654 = load double, ptr %26653, align 8, !tbaa !11
  %26655 = fmul double 0xBFE3AA36D354D050, %26654
  %26656 = call double @llvm.fmuladd.f64(double 0x3CE2000000000001, double %26646, double %26655)
  %26657 = load ptr, ptr %7, align 8, !tbaa !9
  %26658 = load i32, ptr %12, align 4, !tbaa !5
  %26659 = load i32, ptr %8, align 4, !tbaa !5
  %26660 = mul nsw i32 2, %26659
  %26661 = add nsw i32 %26658, %26660
  %26662 = sext i32 %26661 to i64
  %26663 = getelementptr inbounds double, ptr %26657, i64 %26662
  %26664 = load double, ptr %26663, align 8, !tbaa !11
  %26665 = call double @llvm.fmuladd.f64(double 0xBCCB000000000000, double %26664, double %26656)
  %26666 = load ptr, ptr %7, align 8, !tbaa !9
  %26667 = load i32, ptr %12, align 4, !tbaa !5
  %26668 = load i32, ptr %8, align 4, !tbaa !5
  %26669 = mul nsw i32 3, %26668
  %26670 = add nsw i32 %26667, %26669
  %26671 = sext i32 %26670 to i64
  %26672 = getelementptr inbounds double, ptr %26666, i64 %26671
  %26673 = load double, ptr %26672, align 8, !tbaa !11
  %26674 = call double @llvm.fmuladd.f64(double 0xBCD4C00000000000, double %26673, double %26665)
  %26675 = load ptr, ptr %7, align 8, !tbaa !9
  %26676 = load i32, ptr %12, align 4, !tbaa !5
  %26677 = load i32, ptr %8, align 4, !tbaa !5
  %26678 = mul nsw i32 4, %26677
  %26679 = add nsw i32 %26676, %26678
  %26680 = sext i32 %26679 to i64
  %26681 = getelementptr inbounds double, ptr %26675, i64 %26680
  %26682 = load double, ptr %26681, align 8, !tbaa !11
  %26683 = call double @llvm.fmuladd.f64(double 0x3CD4000000000002, double %26682, double %26674)
  %26684 = load ptr, ptr %7, align 8, !tbaa !9
  %26685 = load i32, ptr %12, align 4, !tbaa !5
  %26686 = load i32, ptr %8, align 4, !tbaa !5
  %26687 = mul nsw i32 5, %26686
  %26688 = add nsw i32 %26685, %26687
  %26689 = sext i32 %26688 to i64
  %26690 = getelementptr inbounds double, ptr %26684, i64 %26689
  %26691 = load double, ptr %26690, align 8, !tbaa !11
  %26692 = call double @llvm.fmuladd.f64(double 0x3CD7000000000000, double %26691, double %26683)
  %26693 = load ptr, ptr %7, align 8, !tbaa !9
  %26694 = load i32, ptr %12, align 4, !tbaa !5
  %26695 = load i32, ptr %8, align 4, !tbaa !5
  %26696 = mul nsw i32 6, %26695
  %26697 = add nsw i32 %26694, %26696
  %26698 = sext i32 %26697 to i64
  %26699 = getelementptr inbounds double, ptr %26693, i64 %26698
  %26700 = load double, ptr %26699, align 8, !tbaa !11
  %26701 = call double @llvm.fmuladd.f64(double 0xBCDE800000000001, double %26700, double %26692)
  %26702 = load ptr, ptr %7, align 8, !tbaa !9
  %26703 = load i32, ptr %12, align 4, !tbaa !5
  %26704 = load i32, ptr %8, align 4, !tbaa !5
  %26705 = mul nsw i32 7, %26704
  %26706 = add nsw i32 %26703, %26705
  %26707 = sext i32 %26706 to i64
  %26708 = getelementptr inbounds double, ptr %26702, i64 %26707
  %26709 = load double, ptr %26708, align 8, !tbaa !11
  %26710 = call double @llvm.fmuladd.f64(double 0xBCDA7FFFFFFFFFFE, double %26709, double %26701)
  %26711 = load ptr, ptr %7, align 8, !tbaa !9
  %26712 = load i32, ptr %12, align 4, !tbaa !5
  %26713 = load i32, ptr %8, align 4, !tbaa !5
  %26714 = mul nsw i32 8, %26713
  %26715 = add nsw i32 %26712, %26714
  %26716 = sext i32 %26715 to i64
  %26717 = getelementptr inbounds double, ptr %26711, i64 %26716
  %26718 = load double, ptr %26717, align 8, !tbaa !11
  %26719 = call double @llvm.fmuladd.f64(double 0xBD00000000000000, double %26718, double %26710)
  %26720 = load ptr, ptr %7, align 8, !tbaa !9
  %26721 = load i32, ptr %12, align 4, !tbaa !5
  %26722 = load i32, ptr %8, align 4, !tbaa !5
  %26723 = mul nsw i32 9, %26722
  %26724 = add nsw i32 %26721, %26723
  %26725 = sext i32 %26724 to i64
  %26726 = getelementptr inbounds double, ptr %26720, i64 %26725
  %26727 = load double, ptr %26726, align 8, !tbaa !11
  %26728 = call double @llvm.fmuladd.f64(double 0xBCFD800000000001, double %26727, double %26719)
  %26729 = load ptr, ptr %7, align 8, !tbaa !9
  %26730 = load i32, ptr %12, align 4, !tbaa !5
  %26731 = load i32, ptr %8, align 4, !tbaa !5
  %26732 = mul nsw i32 10, %26731
  %26733 = add nsw i32 %26730, %26732
  %26734 = sext i32 %26733 to i64
  %26735 = getelementptr inbounds double, ptr %26729, i64 %26734
  %26736 = load double, ptr %26735, align 8, !tbaa !11
  %26737 = call double @llvm.fmuladd.f64(double 0x3CF4FFFFFFFFFFFF, double %26736, double %26728)
  %26738 = load ptr, ptr %7, align 8, !tbaa !9
  %26739 = load i32, ptr %12, align 4, !tbaa !5
  %26740 = load i32, ptr %8, align 4, !tbaa !5
  %26741 = mul nsw i32 11, %26740
  %26742 = add nsw i32 %26739, %26741
  %26743 = sext i32 %26742 to i64
  %26744 = getelementptr inbounds double, ptr %26738, i64 %26743
  %26745 = load double, ptr %26744, align 8, !tbaa !11
  %26746 = call double @llvm.fmuladd.f64(double 0xBFF3F64564513A68, double %26745, double %26737)
  %26747 = load ptr, ptr %7, align 8, !tbaa !9
  %26748 = load i32, ptr %12, align 4, !tbaa !5
  %26749 = load i32, ptr %8, align 4, !tbaa !5
  %26750 = mul nsw i32 12, %26749
  %26751 = add nsw i32 %26748, %26750
  %26752 = sext i32 %26751 to i64
  %26753 = getelementptr inbounds double, ptr %26747, i64 %26752
  %26754 = load double, ptr %26753, align 8, !tbaa !11
  %26755 = call double @llvm.fmuladd.f64(double 0xBCE07FFFFFFFFFFF, double %26754, double %26746)
  %26756 = load ptr, ptr %7, align 8, !tbaa !9
  %26757 = load i32, ptr %12, align 4, !tbaa !5
  %26758 = load i32, ptr %8, align 4, !tbaa !5
  %26759 = mul nsw i32 13, %26758
  %26760 = add nsw i32 %26757, %26759
  %26761 = sext i32 %26760 to i64
  %26762 = getelementptr inbounds double, ptr %26756, i64 %26761
  %26763 = load double, ptr %26762, align 8, !tbaa !11
  %26764 = call double @llvm.fmuladd.f64(double 0xBCE4DFFFFFFFFFFF, double %26763, double %26755)
  %26765 = load ptr, ptr %7, align 8, !tbaa !9
  %26766 = load i32, ptr %12, align 4, !tbaa !5
  %26767 = load i32, ptr %8, align 4, !tbaa !5
  %26768 = mul nsw i32 14, %26767
  %26769 = add nsw i32 %26766, %26768
  %26770 = sext i32 %26769 to i64
  %26771 = getelementptr inbounds double, ptr %26765, i64 %26770
  %26772 = load double, ptr %26771, align 8, !tbaa !11
  %26773 = call double @llvm.fmuladd.f64(double 0x3CE8000000000001, double %26772, double %26764)
  %26774 = load ptr, ptr %7, align 8, !tbaa !9
  %26775 = load i32, ptr %12, align 4, !tbaa !5
  %26776 = load i32, ptr %8, align 4, !tbaa !5
  %26777 = mul nsw i32 15, %26776
  %26778 = add nsw i32 %26775, %26777
  %26779 = sext i32 %26778 to i64
  %26780 = getelementptr inbounds double, ptr %26774, i64 %26779
  %26781 = load double, ptr %26780, align 8, !tbaa !11
  %26782 = call double @llvm.fmuladd.f64(double 0x3CE67FFFFFFFFFFF, double %26781, double %26773)
  %26783 = load ptr, ptr %7, align 8, !tbaa !9
  %26784 = load i32, ptr %12, align 4, !tbaa !5
  %26785 = load i32, ptr %8, align 4, !tbaa !5
  %26786 = mul nsw i32 16, %26785
  %26787 = add nsw i32 %26784, %26786
  %26788 = sext i32 %26787 to i64
  %26789 = getelementptr inbounds double, ptr %26783, i64 %26788
  %26790 = load double, ptr %26789, align 8, !tbaa !11
  %26791 = call double @llvm.fmuladd.f64(double 0xBCEAC00000000001, double %26790, double %26782)
  %26792 = load ptr, ptr %7, align 8, !tbaa !9
  %26793 = load i32, ptr %12, align 4, !tbaa !5
  %26794 = load i32, ptr %8, align 4, !tbaa !5
  %26795 = mul nsw i32 17, %26794
  %26796 = add nsw i32 %26793, %26795
  %26797 = sext i32 %26796 to i64
  %26798 = getelementptr inbounds double, ptr %26792, i64 %26797
  %26799 = load double, ptr %26798, align 8, !tbaa !11
  %26800 = call double @llvm.fmuladd.f64(double 0xBCE7C00000000001, double %26799, double %26791)
  %26801 = load ptr, ptr %7, align 8, !tbaa !9
  %26802 = load i32, ptr %12, align 4, !tbaa !5
  %26803 = load i32, ptr %8, align 4, !tbaa !5
  %26804 = mul nsw i32 18, %26803
  %26805 = add nsw i32 %26802, %26804
  %26806 = sext i32 %26805 to i64
  %26807 = getelementptr inbounds double, ptr %26801, i64 %26806
  %26808 = load double, ptr %26807, align 8, !tbaa !11
  %26809 = call double @llvm.fmuladd.f64(double 0xBD0E800000000000, double %26808, double %26800)
  %26810 = load ptr, ptr %7, align 8, !tbaa !9
  %26811 = load i32, ptr %12, align 4, !tbaa !5
  %26812 = load i32, ptr %8, align 4, !tbaa !5
  %26813 = mul nsw i32 19, %26812
  %26814 = add nsw i32 %26811, %26813
  %26815 = sext i32 %26814 to i64
  %26816 = getelementptr inbounds double, ptr %26810, i64 %26815
  %26817 = load double, ptr %26816, align 8, !tbaa !11
  %26818 = call double @llvm.fmuladd.f64(double 0xBD0E3FFFFFFFFFFD, double %26817, double %26809)
  store double %26818, ptr %11, align 8, !tbaa !11
  %26819 = load double, ptr %11, align 8, !tbaa !11
  %26820 = load ptr, ptr %9, align 8, !tbaa !9
  %26821 = load i32, ptr %12, align 4, !tbaa !5
  %26822 = load i32, ptr %10, align 4, !tbaa !5
  %26823 = mul nsw i32 101, %26822
  %26824 = add nsw i32 %26821, %26823
  %26825 = sext i32 %26824 to i64
  %26826 = getelementptr inbounds double, ptr %26820, i64 %26825
  store double %26819, ptr %26826, align 8, !tbaa !11
  %26827 = load ptr, ptr %7, align 8, !tbaa !9
  %26828 = load i32, ptr %12, align 4, !tbaa !5
  %26829 = load i32, ptr %8, align 4, !tbaa !5
  %26830 = mul nsw i32 0, %26829
  %26831 = add nsw i32 %26828, %26830
  %26832 = sext i32 %26831 to i64
  %26833 = getelementptr inbounds double, ptr %26827, i64 %26832
  %26834 = load double, ptr %26833, align 8, !tbaa !11
  %26835 = load ptr, ptr %7, align 8, !tbaa !9
  %26836 = load i32, ptr %12, align 4, !tbaa !5
  %26837 = load i32, ptr %8, align 4, !tbaa !5
  %26838 = mul nsw i32 1, %26837
  %26839 = add nsw i32 %26836, %26838
  %26840 = sext i32 %26839 to i64
  %26841 = getelementptr inbounds double, ptr %26835, i64 %26840
  %26842 = load double, ptr %26841, align 8, !tbaa !11
  %26843 = fmul double 0xBCD1000000000000, %26842
  %26844 = call double @llvm.fmuladd.f64(double 0x3CEA000000000000, double %26834, double %26843)
  %26845 = load ptr, ptr %7, align 8, !tbaa !9
  %26846 = load i32, ptr %12, align 4, !tbaa !5
  %26847 = load i32, ptr %8, align 4, !tbaa !5
  %26848 = mul nsw i32 2, %26847
  %26849 = add nsw i32 %26846, %26848
  %26850 = sext i32 %26849 to i64
  %26851 = getelementptr inbounds double, ptr %26845, i64 %26850
  %26852 = load double, ptr %26851, align 8, !tbaa !11
  %26853 = call double @llvm.fmuladd.f64(double 0xBFE3AA36D354D04B, double %26852, double %26844)
  %26854 = load ptr, ptr %7, align 8, !tbaa !9
  %26855 = load i32, ptr %12, align 4, !tbaa !5
  %26856 = load i32, ptr %8, align 4, !tbaa !5
  %26857 = mul nsw i32 3, %26856
  %26858 = add nsw i32 %26855, %26857
  %26859 = sext i32 %26858 to i64
  %26860 = getelementptr inbounds double, ptr %26854, i64 %26859
  %26861 = load double, ptr %26860, align 8, !tbaa !11
  %26862 = call double @llvm.fmuladd.f64(double 0xBCCEC00000000000, double %26861, double %26853)
  %26863 = load ptr, ptr %7, align 8, !tbaa !9
  %26864 = load i32, ptr %12, align 4, !tbaa !5
  %26865 = load i32, ptr %8, align 4, !tbaa !5
  %26866 = mul nsw i32 4, %26865
  %26867 = add nsw i32 %26864, %26866
  %26868 = sext i32 %26867 to i64
  %26869 = getelementptr inbounds double, ptr %26863, i64 %26868
  %26870 = load double, ptr %26869, align 8, !tbaa !11
  %26871 = call double @llvm.fmuladd.f64(double 0xBCFD700000000000, double %26870, double %26862)
  %26872 = load ptr, ptr %7, align 8, !tbaa !9
  %26873 = load i32, ptr %12, align 4, !tbaa !5
  %26874 = load i32, ptr %8, align 4, !tbaa !5
  %26875 = mul nsw i32 5, %26874
  %26876 = add nsw i32 %26873, %26875
  %26877 = sext i32 %26876 to i64
  %26878 = getelementptr inbounds double, ptr %26872, i64 %26877
  %26879 = load double, ptr %26878, align 8, !tbaa !11
  %26880 = call double @llvm.fmuladd.f64(double 0xBCDAC00000000001, double %26879, double %26871)
  %26881 = load ptr, ptr %7, align 8, !tbaa !9
  %26882 = load i32, ptr %12, align 4, !tbaa !5
  %26883 = load i32, ptr %8, align 4, !tbaa !5
  %26884 = mul nsw i32 6, %26883
  %26885 = add nsw i32 %26882, %26884
  %26886 = sext i32 %26885 to i64
  %26887 = getelementptr inbounds double, ptr %26881, i64 %26886
  %26888 = load double, ptr %26887, align 8, !tbaa !11
  %26889 = call double @llvm.fmuladd.f64(double 0x3CD47FFFFFFFFFFE, double %26888, double %26880)
  %26890 = load ptr, ptr %7, align 8, !tbaa !9
  %26891 = load i32, ptr %12, align 4, !tbaa !5
  %26892 = load i32, ptr %8, align 4, !tbaa !5
  %26893 = mul nsw i32 7, %26892
  %26894 = add nsw i32 %26891, %26893
  %26895 = sext i32 %26894 to i64
  %26896 = getelementptr inbounds double, ptr %26890, i64 %26895
  %26897 = load double, ptr %26896, align 8, !tbaa !11
  %26898 = call double @llvm.fmuladd.f64(double 0xBCFE900000000000, double %26897, double %26889)
  %26899 = load ptr, ptr %7, align 8, !tbaa !9
  %26900 = load i32, ptr %12, align 4, !tbaa !5
  %26901 = load i32, ptr %8, align 4, !tbaa !5
  %26902 = mul nsw i32 8, %26901
  %26903 = add nsw i32 %26900, %26902
  %26904 = sext i32 %26903 to i64
  %26905 = getelementptr inbounds double, ptr %26899, i64 %26904
  %26906 = load double, ptr %26905, align 8, !tbaa !11
  %26907 = call double @llvm.fmuladd.f64(double 0xBCD7800000000000, double %26906, double %26898)
  %26908 = load ptr, ptr %7, align 8, !tbaa !9
  %26909 = load i32, ptr %12, align 4, !tbaa !5
  %26910 = load i32, ptr %8, align 4, !tbaa !5
  %26911 = mul nsw i32 9, %26910
  %26912 = add nsw i32 %26909, %26911
  %26913 = sext i32 %26912 to i64
  %26914 = getelementptr inbounds double, ptr %26908, i64 %26913
  %26915 = load double, ptr %26914, align 8, !tbaa !11
  %26916 = call double @llvm.fmuladd.f64(double 0x3CD3800000000002, double %26915, double %26907)
  %26917 = load ptr, ptr %7, align 8, !tbaa !9
  %26918 = load i32, ptr %12, align 4, !tbaa !5
  %26919 = load i32, ptr %8, align 4, !tbaa !5
  %26920 = mul nsw i32 10, %26919
  %26921 = add nsw i32 %26918, %26920
  %26922 = sext i32 %26921 to i64
  %26923 = getelementptr inbounds double, ptr %26917, i64 %26922
  %26924 = load double, ptr %26923, align 8, !tbaa !11
  %26925 = call double @llvm.fmuladd.f64(double 0x3CF6000000000000, double %26924, double %26916)
  %26926 = load ptr, ptr %7, align 8, !tbaa !9
  %26927 = load i32, ptr %12, align 4, !tbaa !5
  %26928 = load i32, ptr %8, align 4, !tbaa !5
  %26929 = mul nsw i32 11, %26928
  %26930 = add nsw i32 %26927, %26929
  %26931 = sext i32 %26930 to i64
  %26932 = getelementptr inbounds double, ptr %26926, i64 %26931
  %26933 = load double, ptr %26932, align 8, !tbaa !11
  %26934 = call double @llvm.fmuladd.f64(double 0xBCE2000000000001, double %26933, double %26925)
  %26935 = load ptr, ptr %7, align 8, !tbaa !9
  %26936 = load i32, ptr %12, align 4, !tbaa !5
  %26937 = load i32, ptr %8, align 4, !tbaa !5
  %26938 = mul nsw i32 12, %26937
  %26939 = add nsw i32 %26936, %26938
  %26940 = sext i32 %26939 to i64
  %26941 = getelementptr inbounds double, ptr %26935, i64 %26940
  %26942 = load double, ptr %26941, align 8, !tbaa !11
  %26943 = call double @llvm.fmuladd.f64(double 0xBFF3F64564513A5F, double %26942, double %26934)
  %26944 = load ptr, ptr %7, align 8, !tbaa !9
  %26945 = load i32, ptr %12, align 4, !tbaa !5
  %26946 = load i32, ptr %8, align 4, !tbaa !5
  %26947 = mul nsw i32 13, %26946
  %26948 = add nsw i32 %26945, %26947
  %26949 = sext i32 %26948 to i64
  %26950 = getelementptr inbounds double, ptr %26944, i64 %26949
  %26951 = load double, ptr %26950, align 8, !tbaa !11
  %26952 = call double @llvm.fmuladd.f64(double 0xBCE1300000000000, double %26951, double %26943)
  %26953 = load ptr, ptr %7, align 8, !tbaa !9
  %26954 = load i32, ptr %12, align 4, !tbaa !5
  %26955 = load i32, ptr %8, align 4, !tbaa !5
  %26956 = mul nsw i32 14, %26955
  %26957 = add nsw i32 %26954, %26956
  %26958 = sext i32 %26957 to i64
  %26959 = getelementptr inbounds double, ptr %26953, i64 %26958
  %26960 = load double, ptr %26959, align 8, !tbaa !11
  %26961 = call double @llvm.fmuladd.f64(double 0xBD0E380000000000, double %26960, double %26952)
  %26962 = load ptr, ptr %7, align 8, !tbaa !9
  %26963 = load i32, ptr %12, align 4, !tbaa !5
  %26964 = load i32, ptr %8, align 4, !tbaa !5
  %26965 = mul nsw i32 15, %26964
  %26966 = add nsw i32 %26963, %26965
  %26967 = sext i32 %26966 to i64
  %26968 = getelementptr inbounds double, ptr %26962, i64 %26967
  %26969 = load double, ptr %26968, align 8, !tbaa !11
  %26970 = call double @llvm.fmuladd.f64(double 0xBCE75FFFFFFFFFFF, double %26969, double %26961)
  %26971 = load ptr, ptr %7, align 8, !tbaa !9
  %26972 = load i32, ptr %12, align 4, !tbaa !5
  %26973 = load i32, ptr %8, align 4, !tbaa !5
  %26974 = mul nsw i32 16, %26973
  %26975 = add nsw i32 %26972, %26974
  %26976 = sext i32 %26975 to i64
  %26977 = getelementptr inbounds double, ptr %26971, i64 %26976
  %26978 = load double, ptr %26977, align 8, !tbaa !11
  %26979 = call double @llvm.fmuladd.f64(double 0x3CE2400000000001, double %26978, double %26970)
  %26980 = load ptr, ptr %7, align 8, !tbaa !9
  %26981 = load i32, ptr %12, align 4, !tbaa !5
  %26982 = load i32, ptr %8, align 4, !tbaa !5
  %26983 = mul nsw i32 17, %26982
  %26984 = add nsw i32 %26981, %26983
  %26985 = sext i32 %26984 to i64
  %26986 = getelementptr inbounds double, ptr %26980, i64 %26985
  %26987 = load double, ptr %26986, align 8, !tbaa !11
  %26988 = call double @llvm.fmuladd.f64(double 0xBD0FC7FFFFFFFFFE, double %26987, double %26979)
  %26989 = load ptr, ptr %7, align 8, !tbaa !9
  %26990 = load i32, ptr %12, align 4, !tbaa !5
  %26991 = load i32, ptr %8, align 4, !tbaa !5
  %26992 = mul nsw i32 18, %26991
  %26993 = add nsw i32 %26990, %26992
  %26994 = sext i32 %26993 to i64
  %26995 = getelementptr inbounds double, ptr %26989, i64 %26994
  %26996 = load double, ptr %26995, align 8, !tbaa !11
  %26997 = call double @llvm.fmuladd.f64(double 0xBCE7C00000000001, double %26996, double %26988)
  %26998 = load ptr, ptr %7, align 8, !tbaa !9
  %26999 = load i32, ptr %12, align 4, !tbaa !5
  %27000 = load i32, ptr %8, align 4, !tbaa !5
  %27001 = mul nsw i32 19, %27000
  %27002 = add nsw i32 %26999, %27001
  %27003 = sext i32 %27002 to i64
  %27004 = getelementptr inbounds double, ptr %26998, i64 %27003
  %27005 = load double, ptr %27004, align 8, !tbaa !11
  %27006 = call double @llvm.fmuladd.f64(double 0x3CE5BFFFFFFFFFFF, double %27005, double %26997)
  store double %27006, ptr %11, align 8, !tbaa !11
  %27007 = load double, ptr %11, align 8, !tbaa !11
  %27008 = load ptr, ptr %9, align 8, !tbaa !9
  %27009 = load i32, ptr %12, align 4, !tbaa !5
  %27010 = load i32, ptr %10, align 4, !tbaa !5
  %27011 = mul nsw i32 102, %27010
  %27012 = add nsw i32 %27009, %27011
  %27013 = sext i32 %27012 to i64
  %27014 = getelementptr inbounds double, ptr %27008, i64 %27013
  store double %27007, ptr %27014, align 8, !tbaa !11
  %27015 = load ptr, ptr %7, align 8, !tbaa !9
  %27016 = load i32, ptr %12, align 4, !tbaa !5
  %27017 = load i32, ptr %8, align 4, !tbaa !5
  %27018 = mul nsw i32 0, %27017
  %27019 = add nsw i32 %27016, %27018
  %27020 = sext i32 %27019 to i64
  %27021 = getelementptr inbounds double, ptr %27015, i64 %27020
  %27022 = load double, ptr %27021, align 8, !tbaa !11
  %27023 = load ptr, ptr %7, align 8, !tbaa !9
  %27024 = load i32, ptr %12, align 4, !tbaa !5
  %27025 = load i32, ptr %8, align 4, !tbaa !5
  %27026 = mul nsw i32 1, %27025
  %27027 = add nsw i32 %27024, %27026
  %27028 = sext i32 %27027 to i64
  %27029 = getelementptr inbounds double, ptr %27023, i64 %27028
  %27030 = load double, ptr %27029, align 8, !tbaa !11
  %27031 = fmul double 0xBCD1400000000000, %27030
  %27032 = call double @llvm.fmuladd.f64(double 0x3CE9C00000000000, double %27022, double %27031)
  %27033 = load ptr, ptr %7, align 8, !tbaa !9
  %27034 = load i32, ptr %12, align 4, !tbaa !5
  %27035 = load i32, ptr %8, align 4, !tbaa !5
  %27036 = mul nsw i32 2, %27035
  %27037 = add nsw i32 %27034, %27036
  %27038 = sext i32 %27037 to i64
  %27039 = getelementptr inbounds double, ptr %27033, i64 %27038
  %27040 = load double, ptr %27039, align 8, !tbaa !11
  %27041 = call double @llvm.fmuladd.f64(double 0xBCD0E00000000000, double %27040, double %27032)
  %27042 = load ptr, ptr %7, align 8, !tbaa !9
  %27043 = load i32, ptr %12, align 4, !tbaa !5
  %27044 = load i32, ptr %8, align 4, !tbaa !5
  %27045 = mul nsw i32 3, %27044
  %27046 = add nsw i32 %27043, %27045
  %27047 = sext i32 %27046 to i64
  %27048 = getelementptr inbounds double, ptr %27042, i64 %27047
  %27049 = load double, ptr %27048, align 8, !tbaa !11
  %27050 = call double @llvm.fmuladd.f64(double 0xBFE3AA36D354D04F, double %27049, double %27041)
  %27051 = load ptr, ptr %7, align 8, !tbaa !9
  %27052 = load i32, ptr %12, align 4, !tbaa !5
  %27053 = load i32, ptr %8, align 4, !tbaa !5
  %27054 = mul nsw i32 4, %27053
  %27055 = add nsw i32 %27052, %27054
  %27056 = sext i32 %27055 to i64
  %27057 = getelementptr inbounds double, ptr %27051, i64 %27056
  %27058 = load double, ptr %27057, align 8, !tbaa !11
  %27059 = call double @llvm.fmuladd.f64(double 0xBCD7BFFFFFFFFFFE, double %27058, double %27050)
  %27060 = load ptr, ptr %7, align 8, !tbaa !9
  %27061 = load i32, ptr %12, align 4, !tbaa !5
  %27062 = load i32, ptr %8, align 4, !tbaa !5
  %27063 = mul nsw i32 5, %27062
  %27064 = add nsw i32 %27061, %27063
  %27065 = sext i32 %27064 to i64
  %27066 = getelementptr inbounds double, ptr %27060, i64 %27065
  %27067 = load double, ptr %27066, align 8, !tbaa !11
  %27068 = call double @llvm.fmuladd.f64(double 0xBCFD300000000000, double %27067, double %27059)
  %27069 = load ptr, ptr %7, align 8, !tbaa !9
  %27070 = load i32, ptr %12, align 4, !tbaa !5
  %27071 = load i32, ptr %8, align 4, !tbaa !5
  %27072 = mul nsw i32 6, %27071
  %27073 = add nsw i32 %27070, %27072
  %27074 = sext i32 %27073 to i64
  %27075 = getelementptr inbounds double, ptr %27069, i64 %27074
  %27076 = load double, ptr %27075, align 8, !tbaa !11
  %27077 = call double @llvm.fmuladd.f64(double 0xBCFD300000000000, double %27076, double %27068)
  %27078 = load ptr, ptr %7, align 8, !tbaa !9
  %27079 = load i32, ptr %12, align 4, !tbaa !5
  %27080 = load i32, ptr %8, align 4, !tbaa !5
  %27081 = mul nsw i32 7, %27080
  %27082 = add nsw i32 %27079, %27081
  %27083 = sext i32 %27082 to i64
  %27084 = getelementptr inbounds double, ptr %27078, i64 %27083
  %27085 = load double, ptr %27084, align 8, !tbaa !11
  %27086 = call double @llvm.fmuladd.f64(double 0x3CCD000000000000, double %27085, double %27077)
  %27087 = load ptr, ptr %7, align 8, !tbaa !9
  %27088 = load i32, ptr %12, align 4, !tbaa !5
  %27089 = load i32, ptr %8, align 4, !tbaa !5
  %27090 = mul nsw i32 8, %27089
  %27091 = add nsw i32 %27088, %27090
  %27092 = sext i32 %27091 to i64
  %27093 = getelementptr inbounds double, ptr %27087, i64 %27092
  %27094 = load double, ptr %27093, align 8, !tbaa !11
  %27095 = call double @llvm.fmuladd.f64(double 0x3CD67FFFFFFFFFFF, double %27094, double %27086)
  %27096 = load ptr, ptr %7, align 8, !tbaa !9
  %27097 = load i32, ptr %12, align 4, !tbaa !5
  %27098 = load i32, ptr %8, align 4, !tbaa !5
  %27099 = mul nsw i32 9, %27098
  %27100 = add nsw i32 %27097, %27099
  %27101 = sext i32 %27100 to i64
  %27102 = getelementptr inbounds double, ptr %27096, i64 %27101
  %27103 = load double, ptr %27102, align 8, !tbaa !11
  %27104 = call double @llvm.fmuladd.f64(double 0xBCD9000000000002, double %27103, double %27095)
  %27105 = load ptr, ptr %7, align 8, !tbaa !9
  %27106 = load i32, ptr %12, align 4, !tbaa !5
  %27107 = load i32, ptr %8, align 4, !tbaa !5
  %27108 = mul nsw i32 10, %27107
  %27109 = add nsw i32 %27106, %27108
  %27110 = sext i32 %27109 to i64
  %27111 = getelementptr inbounds double, ptr %27105, i64 %27110
  %27112 = load double, ptr %27111, align 8, !tbaa !11
  %27113 = call double @llvm.fmuladd.f64(double 0x3CF5E00000000000, double %27112, double %27104)
  %27114 = load ptr, ptr %7, align 8, !tbaa !9
  %27115 = load i32, ptr %12, align 4, !tbaa !5
  %27116 = load i32, ptr %8, align 4, !tbaa !5
  %27117 = mul nsw i32 11, %27116
  %27118 = add nsw i32 %27115, %27117
  %27119 = sext i32 %27118 to i64
  %27120 = getelementptr inbounds double, ptr %27114, i64 %27119
  %27121 = load double, ptr %27120, align 8, !tbaa !11
  %27122 = call double @llvm.fmuladd.f64(double 0xBCE15FFFFFFFFFFF, double %27121, double %27113)
  %27123 = load ptr, ptr %7, align 8, !tbaa !9
  %27124 = load i32, ptr %12, align 4, !tbaa !5
  %27125 = load i32, ptr %8, align 4, !tbaa !5
  %27126 = mul nsw i32 12, %27125
  %27127 = add nsw i32 %27124, %27126
  %27128 = sext i32 %27127 to i64
  %27129 = getelementptr inbounds double, ptr %27123, i64 %27128
  %27130 = load double, ptr %27129, align 8, !tbaa !11
  %27131 = call double @llvm.fmuladd.f64(double 0xBCE26FFFFFFFFFFF, double %27130, double %27122)
  %27132 = load ptr, ptr %7, align 8, !tbaa !9
  %27133 = load i32, ptr %12, align 4, !tbaa !5
  %27134 = load i32, ptr %8, align 4, !tbaa !5
  %27135 = mul nsw i32 13, %27134
  %27136 = add nsw i32 %27133, %27135
  %27137 = sext i32 %27136 to i64
  %27138 = getelementptr inbounds double, ptr %27132, i64 %27137
  %27139 = load double, ptr %27138, align 8, !tbaa !11
  %27140 = call double @llvm.fmuladd.f64(double 0xBFF3F64564513A5F, double %27139, double %27131)
  %27141 = load ptr, ptr %7, align 8, !tbaa !9
  %27142 = load i32, ptr %12, align 4, !tbaa !5
  %27143 = load i32, ptr %8, align 4, !tbaa !5
  %27144 = mul nsw i32 14, %27143
  %27145 = add nsw i32 %27142, %27144
  %27146 = sext i32 %27145 to i64
  %27147 = getelementptr inbounds double, ptr %27141, i64 %27146
  %27148 = load double, ptr %27147, align 8, !tbaa !11
  %27149 = call double @llvm.fmuladd.f64(double 0xBCE8E00000000000, double %27148, double %27140)
  %27150 = load ptr, ptr %7, align 8, !tbaa !9
  %27151 = load i32, ptr %12, align 4, !tbaa !5
  %27152 = load i32, ptr %8, align 4, !tbaa !5
  %27153 = mul nsw i32 15, %27152
  %27154 = add nsw i32 %27151, %27153
  %27155 = sext i32 %27154 to i64
  %27156 = getelementptr inbounds double, ptr %27150, i64 %27155
  %27157 = load double, ptr %27156, align 8, !tbaa !11
  %27158 = call double @llvm.fmuladd.f64(double 0xBD0E97FFFFFFFFFE, double %27157, double %27149)
  %27159 = load ptr, ptr %7, align 8, !tbaa !9
  %27160 = load i32, ptr %12, align 4, !tbaa !5
  %27161 = load i32, ptr %8, align 4, !tbaa !5
  %27162 = mul nsw i32 16, %27161
  %27163 = add nsw i32 %27160, %27162
  %27164 = sext i32 %27163 to i64
  %27165 = getelementptr inbounds double, ptr %27159, i64 %27164
  %27166 = load double, ptr %27165, align 8, !tbaa !11
  %27167 = call double @llvm.fmuladd.f64(double 0xBD0DD80000000002, double %27166, double %27158)
  %27168 = load ptr, ptr %7, align 8, !tbaa !9
  %27169 = load i32, ptr %12, align 4, !tbaa !5
  %27170 = load i32, ptr %8, align 4, !tbaa !5
  %27171 = mul nsw i32 17, %27170
  %27172 = add nsw i32 %27169, %27171
  %27173 = sext i32 %27172 to i64
  %27174 = getelementptr inbounds double, ptr %27168, i64 %27173
  %27175 = load double, ptr %27174, align 8, !tbaa !11
  %27176 = call double @llvm.fmuladd.f64(double 0x3CDE800000000001, double %27175, double %27167)
  %27177 = load ptr, ptr %7, align 8, !tbaa !9
  %27178 = load i32, ptr %12, align 4, !tbaa !5
  %27179 = load i32, ptr %8, align 4, !tbaa !5
  %27180 = mul nsw i32 18, %27179
  %27181 = add nsw i32 %27178, %27180
  %27182 = sext i32 %27181 to i64
  %27183 = getelementptr inbounds double, ptr %27177, i64 %27182
  %27184 = load double, ptr %27183, align 8, !tbaa !11
  %27185 = call double @llvm.fmuladd.f64(double 0x3CE5400000000001, double %27184, double %27176)
  %27186 = load ptr, ptr %7, align 8, !tbaa !9
  %27187 = load i32, ptr %12, align 4, !tbaa !5
  %27188 = load i32, ptr %8, align 4, !tbaa !5
  %27189 = mul nsw i32 19, %27188
  %27190 = add nsw i32 %27187, %27189
  %27191 = sext i32 %27190 to i64
  %27192 = getelementptr inbounds double, ptr %27186, i64 %27191
  %27193 = load double, ptr %27192, align 8, !tbaa !11
  %27194 = call double @llvm.fmuladd.f64(double 0xBCE9800000000000, double %27193, double %27185)
  store double %27194, ptr %11, align 8, !tbaa !11
  %27195 = load double, ptr %11, align 8, !tbaa !11
  %27196 = load ptr, ptr %9, align 8, !tbaa !9
  %27197 = load i32, ptr %12, align 4, !tbaa !5
  %27198 = load i32, ptr %10, align 4, !tbaa !5
  %27199 = mul nsw i32 103, %27198
  %27200 = add nsw i32 %27197, %27199
  %27201 = sext i32 %27200 to i64
  %27202 = getelementptr inbounds double, ptr %27196, i64 %27201
  store double %27195, ptr %27202, align 8, !tbaa !11
  %27203 = load ptr, ptr %7, align 8, !tbaa !9
  %27204 = load i32, ptr %12, align 4, !tbaa !5
  %27205 = load i32, ptr %8, align 4, !tbaa !5
  %27206 = mul nsw i32 0, %27205
  %27207 = add nsw i32 %27204, %27206
  %27208 = sext i32 %27207 to i64
  %27209 = getelementptr inbounds double, ptr %27203, i64 %27208
  %27210 = load double, ptr %27209, align 8, !tbaa !11
  %27211 = load ptr, ptr %7, align 8, !tbaa !9
  %27212 = load i32, ptr %12, align 4, !tbaa !5
  %27213 = load i32, ptr %8, align 4, !tbaa !5
  %27214 = mul nsw i32 1, %27213
  %27215 = add nsw i32 %27212, %27214
  %27216 = sext i32 %27215 to i64
  %27217 = getelementptr inbounds double, ptr %27211, i64 %27216
  %27218 = load double, ptr %27217, align 8, !tbaa !11
  %27219 = fmul double 0x3CB8000000000001, %27218
  %27220 = call double @llvm.fmuladd.f64(double 0xBCE9C00000000000, double %27210, double %27219)
  %27221 = load ptr, ptr %7, align 8, !tbaa !9
  %27222 = load i32, ptr %12, align 4, !tbaa !5
  %27223 = load i32, ptr %8, align 4, !tbaa !5
  %27224 = mul nsw i32 2, %27223
  %27225 = add nsw i32 %27222, %27224
  %27226 = sext i32 %27225 to i64
  %27227 = getelementptr inbounds double, ptr %27221, i64 %27226
  %27228 = load double, ptr %27227, align 8, !tbaa !11
  %27229 = call double @llvm.fmuladd.f64(double 0xBCE6B00000000000, double %27228, double %27220)
  %27230 = load ptr, ptr %7, align 8, !tbaa !9
  %27231 = load i32, ptr %12, align 4, !tbaa !5
  %27232 = load i32, ptr %8, align 4, !tbaa !5
  %27233 = mul nsw i32 3, %27232
  %27234 = add nsw i32 %27231, %27233
  %27235 = sext i32 %27234 to i64
  %27236 = getelementptr inbounds double, ptr %27230, i64 %27235
  %27237 = load double, ptr %27236, align 8, !tbaa !11
  %27238 = call double @llvm.fmuladd.f64(double 0xBCB9C00000000001, double %27237, double %27229)
  %27239 = load ptr, ptr %7, align 8, !tbaa !9
  %27240 = load i32, ptr %12, align 4, !tbaa !5
  %27241 = load i32, ptr %8, align 4, !tbaa !5
  %27242 = mul nsw i32 4, %27241
  %27243 = add nsw i32 %27240, %27242
  %27244 = sext i32 %27243 to i64
  %27245 = getelementptr inbounds double, ptr %27239, i64 %27244
  %27246 = load double, ptr %27245, align 8, !tbaa !11
  %27247 = call double @llvm.fmuladd.f64(double 0xBFE3AA36D354D104, double %27246, double %27238)
  %27248 = load ptr, ptr %7, align 8, !tbaa !9
  %27249 = load i32, ptr %12, align 4, !tbaa !5
  %27250 = load i32, ptr %8, align 4, !tbaa !5
  %27251 = mul nsw i32 5, %27250
  %27252 = add nsw i32 %27249, %27251
  %27253 = sext i32 %27252 to i64
  %27254 = getelementptr inbounds double, ptr %27248, i64 %27253
  %27255 = load double, ptr %27254, align 8, !tbaa !11
  %27256 = call double @llvm.fmuladd.f64(double 0x3CDA7FFFFFFFFFFE, double %27255, double %27247)
  %27257 = load ptr, ptr %7, align 8, !tbaa !9
  %27258 = load i32, ptr %12, align 4, !tbaa !5
  %27259 = load i32, ptr %8, align 4, !tbaa !5
  %27260 = mul nsw i32 6, %27259
  %27261 = add nsw i32 %27258, %27260
  %27262 = sext i32 %27261 to i64
  %27263 = getelementptr inbounds double, ptr %27257, i64 %27262
  %27264 = load double, ptr %27263, align 8, !tbaa !11
  %27265 = call double @llvm.fmuladd.f64(double 0x3CC4800000000000, double %27264, double %27256)
  %27266 = load ptr, ptr %7, align 8, !tbaa !9
  %27267 = load i32, ptr %12, align 4, !tbaa !5
  %27268 = load i32, ptr %8, align 4, !tbaa !5
  %27269 = mul nsw i32 7, %27268
  %27270 = add nsw i32 %27267, %27269
  %27271 = sext i32 %27270 to i64
  %27272 = getelementptr inbounds double, ptr %27266, i64 %27271
  %27273 = load double, ptr %27272, align 8, !tbaa !11
  %27274 = call double @llvm.fmuladd.f64(double 0xBCDE800000000001, double %27273, double %27265)
  %27275 = load ptr, ptr %7, align 8, !tbaa !9
  %27276 = load i32, ptr %12, align 4, !tbaa !5
  %27277 = load i32, ptr %8, align 4, !tbaa !5
  %27278 = mul nsw i32 8, %27277
  %27279 = add nsw i32 %27276, %27278
  %27280 = sext i32 %27279 to i64
  %27281 = getelementptr inbounds double, ptr %27275, i64 %27280
  %27282 = load double, ptr %27281, align 8, !tbaa !11
  %27283 = call double @llvm.fmuladd.f64(double 0x3CC1000000000000, double %27282, double %27274)
  %27284 = load ptr, ptr %7, align 8, !tbaa !9
  %27285 = load i32, ptr %12, align 4, !tbaa !5
  %27286 = load i32, ptr %8, align 4, !tbaa !5
  %27287 = mul nsw i32 9, %27286
  %27288 = add nsw i32 %27285, %27287
  %27289 = sext i32 %27288 to i64
  %27290 = getelementptr inbounds double, ptr %27284, i64 %27289
  %27291 = load double, ptr %27290, align 8, !tbaa !11
  %27292 = call double @llvm.fmuladd.f64(double 0x3CEC800000000000, double %27291, double %27283)
  %27293 = load ptr, ptr %7, align 8, !tbaa !9
  %27294 = load i32, ptr %12, align 4, !tbaa !5
  %27295 = load i32, ptr %8, align 4, !tbaa !5
  %27296 = mul nsw i32 10, %27295
  %27297 = add nsw i32 %27294, %27296
  %27298 = sext i32 %27297 to i64
  %27299 = getelementptr inbounds double, ptr %27293, i64 %27298
  %27300 = load double, ptr %27299, align 8, !tbaa !11
  %27301 = call double @llvm.fmuladd.f64(double 0xBCF9A00000000000, double %27300, double %27292)
  %27302 = load ptr, ptr %7, align 8, !tbaa !9
  %27303 = load i32, ptr %12, align 4, !tbaa !5
  %27304 = load i32, ptr %8, align 4, !tbaa !5
  %27305 = mul nsw i32 11, %27304
  %27306 = add nsw i32 %27303, %27305
  %27307 = sext i32 %27306 to i64
  %27308 = getelementptr inbounds double, ptr %27302, i64 %27307
  %27309 = load double, ptr %27308, align 8, !tbaa !11
  %27310 = call double @llvm.fmuladd.f64(double 0x3CCA000000000000, double %27309, double %27301)
  %27311 = load ptr, ptr %7, align 8, !tbaa !9
  %27312 = load i32, ptr %12, align 4, !tbaa !5
  %27313 = load i32, ptr %8, align 4, !tbaa !5
  %27314 = mul nsw i32 12, %27313
  %27315 = add nsw i32 %27312, %27314
  %27316 = sext i32 %27315 to i64
  %27317 = getelementptr inbounds double, ptr %27311, i64 %27316
  %27318 = load double, ptr %27317, align 8, !tbaa !11
  %27319 = call double @llvm.fmuladd.f64(double 0xBCF6580000000000, double %27318, double %27310)
  %27320 = load ptr, ptr %7, align 8, !tbaa !9
  %27321 = load i32, ptr %12, align 4, !tbaa !5
  %27322 = load i32, ptr %8, align 4, !tbaa !5
  %27323 = mul nsw i32 13, %27322
  %27324 = add nsw i32 %27321, %27323
  %27325 = sext i32 %27324 to i64
  %27326 = getelementptr inbounds double, ptr %27320, i64 %27325
  %27327 = load double, ptr %27326, align 8, !tbaa !11
  %27328 = call double @llvm.fmuladd.f64(double 0xBCCC600000000000, double %27327, double %27319)
  %27329 = load ptr, ptr %7, align 8, !tbaa !9
  %27330 = load i32, ptr %12, align 4, !tbaa !5
  %27331 = load i32, ptr %8, align 4, !tbaa !5
  %27332 = mul nsw i32 14, %27331
  %27333 = add nsw i32 %27330, %27332
  %27334 = sext i32 %27333 to i64
  %27335 = getelementptr inbounds double, ptr %27329, i64 %27334
  %27336 = load double, ptr %27335, align 8, !tbaa !11
  %27337 = call double @llvm.fmuladd.f64(double 0xBFF3F64564513B21, double %27336, double %27328)
  %27338 = load ptr, ptr %7, align 8, !tbaa !9
  %27339 = load i32, ptr %12, align 4, !tbaa !5
  %27340 = load i32, ptr %8, align 4, !tbaa !5
  %27341 = mul nsw i32 15, %27340
  %27342 = add nsw i32 %27339, %27341
  %27343 = sext i32 %27342 to i64
  %27344 = getelementptr inbounds double, ptr %27338, i64 %27343
  %27345 = load double, ptr %27344, align 8, !tbaa !11
  %27346 = call double @llvm.fmuladd.f64(double 0x3CEAC00000000001, double %27345, double %27337)
  %27347 = load ptr, ptr %7, align 8, !tbaa !9
  %27348 = load i32, ptr %12, align 4, !tbaa !5
  %27349 = load i32, ptr %8, align 4, !tbaa !5
  %27350 = mul nsw i32 16, %27349
  %27351 = add nsw i32 %27348, %27350
  %27352 = sext i32 %27351 to i64
  %27353 = getelementptr inbounds double, ptr %27347, i64 %27352
  %27354 = load double, ptr %27353, align 8, !tbaa !11
  %27355 = call double @llvm.fmuladd.f64(double 0x3CD7BFFFFFFFFFFE, double %27354, double %27346)
  %27356 = load ptr, ptr %7, align 8, !tbaa !9
  %27357 = load i32, ptr %12, align 4, !tbaa !5
  %27358 = load i32, ptr %8, align 4, !tbaa !5
  %27359 = mul nsw i32 17, %27358
  %27360 = add nsw i32 %27357, %27359
  %27361 = sext i32 %27360 to i64
  %27362 = getelementptr inbounds double, ptr %27356, i64 %27361
  %27363 = load double, ptr %27362, align 8, !tbaa !11
  %27364 = call double @llvm.fmuladd.f64(double 0xBCEE400000000001, double %27363, double %27355)
  %27365 = load ptr, ptr %7, align 8, !tbaa !9
  %27366 = load i32, ptr %12, align 4, !tbaa !5
  %27367 = load i32, ptr %8, align 4, !tbaa !5
  %27368 = mul nsw i32 18, %27367
  %27369 = add nsw i32 %27366, %27368
  %27370 = sext i32 %27369 to i64
  %27371 = getelementptr inbounds double, ptr %27365, i64 %27370
  %27372 = load double, ptr %27371, align 8, !tbaa !11
  %27373 = call double @llvm.fmuladd.f64(double 0x3CD67FFFFFFFFFFF, double %27372, double %27364)
  %27374 = load ptr, ptr %7, align 8, !tbaa !9
  %27375 = load i32, ptr %12, align 4, !tbaa !5
  %27376 = load i32, ptr %8, align 4, !tbaa !5
  %27377 = mul nsw i32 19, %27376
  %27378 = add nsw i32 %27375, %27377
  %27379 = sext i32 %27378 to i64
  %27380 = getelementptr inbounds double, ptr %27374, i64 %27379
  %27381 = load double, ptr %27380, align 8, !tbaa !11
  %27382 = call double @llvm.fmuladd.f64(double 0x3CFC3FFFFFFFFFFF, double %27381, double %27373)
  store double %27382, ptr %11, align 8, !tbaa !11
  %27383 = load double, ptr %11, align 8, !tbaa !11
  %27384 = load ptr, ptr %9, align 8, !tbaa !9
  %27385 = load i32, ptr %12, align 4, !tbaa !5
  %27386 = load i32, ptr %10, align 4, !tbaa !5
  %27387 = mul nsw i32 104, %27386
  %27388 = add nsw i32 %27385, %27387
  %27389 = sext i32 %27388 to i64
  %27390 = getelementptr inbounds double, ptr %27384, i64 %27389
  store double %27383, ptr %27390, align 8, !tbaa !11
  %27391 = load ptr, ptr %7, align 8, !tbaa !9
  %27392 = load i32, ptr %12, align 4, !tbaa !5
  %27393 = load i32, ptr %8, align 4, !tbaa !5
  %27394 = mul nsw i32 0, %27393
  %27395 = add nsw i32 %27392, %27394
  %27396 = sext i32 %27395 to i64
  %27397 = getelementptr inbounds double, ptr %27391, i64 %27396
  %27398 = load double, ptr %27397, align 8, !tbaa !11
  %27399 = load ptr, ptr %7, align 8, !tbaa !9
  %27400 = load i32, ptr %12, align 4, !tbaa !5
  %27401 = load i32, ptr %8, align 4, !tbaa !5
  %27402 = mul nsw i32 1, %27401
  %27403 = add nsw i32 %27400, %27402
  %27404 = sext i32 %27403 to i64
  %27405 = getelementptr inbounds double, ptr %27399, i64 %27404
  %27406 = load double, ptr %27405, align 8, !tbaa !11
  %27407 = fmul double 0x3CC0000000000000, %27406
  %27408 = call double @llvm.fmuladd.f64(double 0xBCEBBFFFFFFFFFFF, double %27398, double %27407)
  %27409 = load ptr, ptr %7, align 8, !tbaa !9
  %27410 = load i32, ptr %12, align 4, !tbaa !5
  %27411 = load i32, ptr %8, align 4, !tbaa !5
  %27412 = mul nsw i32 2, %27411
  %27413 = add nsw i32 %27410, %27412
  %27414 = sext i32 %27413 to i64
  %27415 = getelementptr inbounds double, ptr %27409, i64 %27414
  %27416 = load double, ptr %27415, align 8, !tbaa !11
  %27417 = call double @llvm.fmuladd.f64(double 0xBCB8800000000000, double %27416, double %27408)
  %27418 = load ptr, ptr %7, align 8, !tbaa !9
  %27419 = load i32, ptr %12, align 4, !tbaa !5
  %27420 = load i32, ptr %8, align 4, !tbaa !5
  %27421 = mul nsw i32 3, %27420
  %27422 = add nsw i32 %27419, %27421
  %27423 = sext i32 %27422 to i64
  %27424 = getelementptr inbounds double, ptr %27418, i64 %27423
  %27425 = load double, ptr %27424, align 8, !tbaa !11
  %27426 = call double @llvm.fmuladd.f64(double 0xBCE557FFFFFFFFFF, double %27425, double %27417)
  %27427 = load ptr, ptr %7, align 8, !tbaa !9
  %27428 = load i32, ptr %12, align 4, !tbaa !5
  %27429 = load i32, ptr %8, align 4, !tbaa !5
  %27430 = mul nsw i32 4, %27429
  %27431 = add nsw i32 %27428, %27430
  %27432 = sext i32 %27431 to i64
  %27433 = getelementptr inbounds double, ptr %27427, i64 %27432
  %27434 = load double, ptr %27433, align 8, !tbaa !11
  %27435 = call double @llvm.fmuladd.f64(double 0x3CD6C00000000002, double %27434, double %27426)
  %27436 = load ptr, ptr %7, align 8, !tbaa !9
  %27437 = load i32, ptr %12, align 4, !tbaa !5
  %27438 = load i32, ptr %8, align 4, !tbaa !5
  %27439 = mul nsw i32 5, %27438
  %27440 = add nsw i32 %27437, %27439
  %27441 = sext i32 %27440 to i64
  %27442 = getelementptr inbounds double, ptr %27436, i64 %27441
  %27443 = load double, ptr %27442, align 8, !tbaa !11
  %27444 = call double @llvm.fmuladd.f64(double 0xBFE3AA36D354D103, double %27443, double %27435)
  %27445 = load ptr, ptr %7, align 8, !tbaa !9
  %27446 = load i32, ptr %12, align 4, !tbaa !5
  %27447 = load i32, ptr %8, align 4, !tbaa !5
  %27448 = mul nsw i32 6, %27447
  %27449 = add nsw i32 %27446, %27448
  %27450 = sext i32 %27449 to i64
  %27451 = getelementptr inbounds double, ptr %27445, i64 %27450
  %27452 = load double, ptr %27451, align 8, !tbaa !11
  %27453 = call double @llvm.fmuladd.f64(double 0xBCE0200000000000, double %27452, double %27444)
  %27454 = load ptr, ptr %7, align 8, !tbaa !9
  %27455 = load i32, ptr %12, align 4, !tbaa !5
  %27456 = load i32, ptr %8, align 4, !tbaa !5
  %27457 = mul nsw i32 7, %27456
  %27458 = add nsw i32 %27455, %27457
  %27459 = sext i32 %27458 to i64
  %27460 = getelementptr inbounds double, ptr %27454, i64 %27459
  %27461 = load double, ptr %27460, align 8, !tbaa !11
  %27462 = call double @llvm.fmuladd.f64(double 0x3CCC800000000000, double %27461, double %27453)
  %27463 = load ptr, ptr %7, align 8, !tbaa !9
  %27464 = load i32, ptr %12, align 4, !tbaa !5
  %27465 = load i32, ptr %8, align 4, !tbaa !5
  %27466 = mul nsw i32 8, %27465
  %27467 = add nsw i32 %27464, %27466
  %27468 = sext i32 %27467 to i64
  %27469 = getelementptr inbounds double, ptr %27463, i64 %27468
  %27470 = load double, ptr %27469, align 8, !tbaa !11
  %27471 = call double @llvm.fmuladd.f64(double 0x3CEC800000000000, double %27470, double %27462)
  %27472 = load ptr, ptr %7, align 8, !tbaa !9
  %27473 = load i32, ptr %12, align 4, !tbaa !5
  %27474 = load i32, ptr %8, align 4, !tbaa !5
  %27475 = mul nsw i32 9, %27474
  %27476 = add nsw i32 %27473, %27475
  %27477 = sext i32 %27476 to i64
  %27478 = getelementptr inbounds double, ptr %27472, i64 %27477
  %27479 = load double, ptr %27478, align 8, !tbaa !11
  %27480 = call double @llvm.fmuladd.f64(double 0x3CC7000000000000, double %27479, double %27471)
  %27481 = load ptr, ptr %7, align 8, !tbaa !9
  %27482 = load i32, ptr %12, align 4, !tbaa !5
  %27483 = load i32, ptr %8, align 4, !tbaa !5
  %27484 = mul nsw i32 10, %27483
  %27485 = add nsw i32 %27482, %27484
  %27486 = sext i32 %27485 to i64
  %27487 = getelementptr inbounds double, ptr %27481, i64 %27486
  %27488 = load double, ptr %27487, align 8, !tbaa !11
  %27489 = call double @llvm.fmuladd.f64(double 0xBCFB600000000000, double %27488, double %27480)
  %27490 = load ptr, ptr %7, align 8, !tbaa !9
  %27491 = load i32, ptr %12, align 4, !tbaa !5
  %27492 = load i32, ptr %8, align 4, !tbaa !5
  %27493 = mul nsw i32 11, %27492
  %27494 = add nsw i32 %27491, %27493
  %27495 = sext i32 %27494 to i64
  %27496 = getelementptr inbounds double, ptr %27490, i64 %27495
  %27497 = load double, ptr %27496, align 8, !tbaa !11
  %27498 = call double @llvm.fmuladd.f64(double 0x3CD0800000000000, double %27497, double %27489)
  %27499 = load ptr, ptr %7, align 8, !tbaa !9
  %27500 = load i32, ptr %12, align 4, !tbaa !5
  %27501 = load i32, ptr %8, align 4, !tbaa !5
  %27502 = mul nsw i32 12, %27501
  %27503 = add nsw i32 %27500, %27502
  %27504 = sext i32 %27503 to i64
  %27505 = getelementptr inbounds double, ptr %27499, i64 %27504
  %27506 = load double, ptr %27505, align 8, !tbaa !11
  %27507 = call double @llvm.fmuladd.f64(double 0xBCCC400000000000, double %27506, double %27498)
  %27508 = load ptr, ptr %7, align 8, !tbaa !9
  %27509 = load i32, ptr %12, align 4, !tbaa !5
  %27510 = load i32, ptr %8, align 4, !tbaa !5
  %27511 = mul nsw i32 13, %27510
  %27512 = add nsw i32 %27509, %27511
  %27513 = sext i32 %27512 to i64
  %27514 = getelementptr inbounds double, ptr %27508, i64 %27513
  %27515 = load double, ptr %27514, align 8, !tbaa !11
  %27516 = call double @llvm.fmuladd.f64(double 0xBCF62C0000000001, double %27515, double %27507)
  %27517 = load ptr, ptr %7, align 8, !tbaa !9
  %27518 = load i32, ptr %12, align 4, !tbaa !5
  %27519 = load i32, ptr %8, align 4, !tbaa !5
  %27520 = mul nsw i32 14, %27519
  %27521 = add nsw i32 %27518, %27520
  %27522 = sext i32 %27521 to i64
  %27523 = getelementptr inbounds double, ptr %27517, i64 %27522
  %27524 = load double, ptr %27523, align 8, !tbaa !11
  %27525 = call double @llvm.fmuladd.f64(double 0x3CE8E00000000000, double %27524, double %27516)
  %27526 = load ptr, ptr %7, align 8, !tbaa !9
  %27527 = load i32, ptr %12, align 4, !tbaa !5
  %27528 = load i32, ptr %8, align 4, !tbaa !5
  %27529 = mul nsw i32 15, %27528
  %27530 = add nsw i32 %27527, %27529
  %27531 = sext i32 %27530 to i64
  %27532 = getelementptr inbounds double, ptr %27526, i64 %27531
  %27533 = load double, ptr %27532, align 8, !tbaa !11
  %27534 = call double @llvm.fmuladd.f64(double 0xBFF3F64564513B1C, double %27533, double %27525)
  %27535 = load ptr, ptr %7, align 8, !tbaa !9
  %27536 = load i32, ptr %12, align 4, !tbaa !5
  %27537 = load i32, ptr %8, align 4, !tbaa !5
  %27538 = mul nsw i32 16, %27537
  %27539 = add nsw i32 %27536, %27538
  %27540 = sext i32 %27539 to i64
  %27541 = getelementptr inbounds double, ptr %27535, i64 %27540
  %27542 = load double, ptr %27541, align 8, !tbaa !11
  %27543 = call double @llvm.fmuladd.f64(double 0xBCEE200000000000, double %27542, double %27534)
  %27544 = load ptr, ptr %7, align 8, !tbaa !9
  %27545 = load i32, ptr %12, align 4, !tbaa !5
  %27546 = load i32, ptr %8, align 4, !tbaa !5
  %27547 = mul nsw i32 17, %27546
  %27548 = add nsw i32 %27545, %27547
  %27549 = sext i32 %27548 to i64
  %27550 = getelementptr inbounds double, ptr %27544, i64 %27549
  %27551 = load double, ptr %27550, align 8, !tbaa !11
  %27552 = call double @llvm.fmuladd.f64(double 0x3CD93FFFFFFFFFFF, double %27551, double %27543)
  %27553 = load ptr, ptr %7, align 8, !tbaa !9
  %27554 = load i32, ptr %12, align 4, !tbaa !5
  %27555 = load i32, ptr %8, align 4, !tbaa !5
  %27556 = mul nsw i32 18, %27555
  %27557 = add nsw i32 %27554, %27556
  %27558 = sext i32 %27557 to i64
  %27559 = getelementptr inbounds double, ptr %27553, i64 %27558
  %27560 = load double, ptr %27559, align 8, !tbaa !11
  %27561 = call double @llvm.fmuladd.f64(double 0x3CFCC00000000000, double %27560, double %27552)
  %27562 = load ptr, ptr %7, align 8, !tbaa !9
  %27563 = load i32, ptr %12, align 4, !tbaa !5
  %27564 = load i32, ptr %8, align 4, !tbaa !5
  %27565 = mul nsw i32 19, %27564
  %27566 = add nsw i32 %27563, %27565
  %27567 = sext i32 %27566 to i64
  %27568 = getelementptr inbounds double, ptr %27562, i64 %27567
  %27569 = load double, ptr %27568, align 8, !tbaa !11
  %27570 = call double @llvm.fmuladd.f64(double 0x3CDBFFFFFFFFFFFF, double %27569, double %27561)
  store double %27570, ptr %11, align 8, !tbaa !11
  %27571 = load double, ptr %11, align 8, !tbaa !11
  %27572 = load ptr, ptr %9, align 8, !tbaa !9
  %27573 = load i32, ptr %12, align 4, !tbaa !5
  %27574 = load i32, ptr %10, align 4, !tbaa !5
  %27575 = mul nsw i32 105, %27574
  %27576 = add nsw i32 %27573, %27575
  %27577 = sext i32 %27576 to i64
  %27578 = getelementptr inbounds double, ptr %27572, i64 %27577
  store double %27571, ptr %27578, align 8, !tbaa !11
  %27579 = load ptr, ptr %7, align 8, !tbaa !9
  %27580 = load i32, ptr %12, align 4, !tbaa !5
  %27581 = load i32, ptr %8, align 4, !tbaa !5
  %27582 = mul nsw i32 0, %27581
  %27583 = add nsw i32 %27580, %27582
  %27584 = sext i32 %27583 to i64
  %27585 = getelementptr inbounds double, ptr %27579, i64 %27584
  %27586 = load double, ptr %27585, align 8, !tbaa !11
  %27587 = load ptr, ptr %7, align 8, !tbaa !9
  %27588 = load i32, ptr %12, align 4, !tbaa !5
  %27589 = load i32, ptr %8, align 4, !tbaa !5
  %27590 = mul nsw i32 1, %27589
  %27591 = add nsw i32 %27588, %27590
  %27592 = sext i32 %27591 to i64
  %27593 = getelementptr inbounds double, ptr %27587, i64 %27592
  %27594 = load double, ptr %27593, align 8, !tbaa !11
  %27595 = fmul double 0xBCBE000000000000, %27594
  %27596 = call double @llvm.fmuladd.f64(double 0xBCEC8FFFFFFFFFFF, double %27586, double %27595)
  %27597 = load ptr, ptr %7, align 8, !tbaa !9
  %27598 = load i32, ptr %12, align 4, !tbaa !5
  %27599 = load i32, ptr %8, align 4, !tbaa !5
  %27600 = mul nsw i32 2, %27599
  %27601 = add nsw i32 %27598, %27600
  %27602 = sext i32 %27601 to i64
  %27603 = getelementptr inbounds double, ptr %27597, i64 %27602
  %27604 = load double, ptr %27603, align 8, !tbaa !11
  %27605 = call double @llvm.fmuladd.f64(double 0x3CB1800000000000, double %27604, double %27596)
  %27606 = load ptr, ptr %7, align 8, !tbaa !9
  %27607 = load i32, ptr %12, align 4, !tbaa !5
  %27608 = load i32, ptr %8, align 4, !tbaa !5
  %27609 = mul nsw i32 3, %27608
  %27610 = add nsw i32 %27607, %27609
  %27611 = sext i32 %27610 to i64
  %27612 = getelementptr inbounds double, ptr %27606, i64 %27611
  %27613 = load double, ptr %27612, align 8, !tbaa !11
  %27614 = call double @llvm.fmuladd.f64(double 0xBCE5380000000000, double %27613, double %27605)
  %27615 = load ptr, ptr %7, align 8, !tbaa !9
  %27616 = load i32, ptr %12, align 4, !tbaa !5
  %27617 = load i32, ptr %8, align 4, !tbaa !5
  %27618 = mul nsw i32 4, %27617
  %27619 = add nsw i32 %27616, %27618
  %27620 = sext i32 %27619 to i64
  %27621 = getelementptr inbounds double, ptr %27615, i64 %27620
  %27622 = load double, ptr %27621, align 8, !tbaa !11
  %27623 = call double @llvm.fmuladd.f64(double 0x3CC4400000000000, double %27622, double %27614)
  %27624 = load ptr, ptr %7, align 8, !tbaa !9
  %27625 = load i32, ptr %12, align 4, !tbaa !5
  %27626 = load i32, ptr %8, align 4, !tbaa !5
  %27627 = mul nsw i32 5, %27626
  %27628 = add nsw i32 %27625, %27627
  %27629 = sext i32 %27628 to i64
  %27630 = getelementptr inbounds double, ptr %27624, i64 %27629
  %27631 = load double, ptr %27630, align 8, !tbaa !11
  %27632 = call double @llvm.fmuladd.f64(double 0xBCDE5FFFFFFFFFFD, double %27631, double %27623)
  %27633 = load ptr, ptr %7, align 8, !tbaa !9
  %27634 = load i32, ptr %12, align 4, !tbaa !5
  %27635 = load i32, ptr %8, align 4, !tbaa !5
  %27636 = mul nsw i32 6, %27635
  %27637 = add nsw i32 %27634, %27636
  %27638 = sext i32 %27637 to i64
  %27639 = getelementptr inbounds double, ptr %27633, i64 %27638
  %27640 = load double, ptr %27639, align 8, !tbaa !11
  %27641 = call double @llvm.fmuladd.f64(double 0xBFE3AA36D354D105, double %27640, double %27632)
  %27642 = load ptr, ptr %7, align 8, !tbaa !9
  %27643 = load i32, ptr %12, align 4, !tbaa !5
  %27644 = load i32, ptr %8, align 4, !tbaa !5
  %27645 = mul nsw i32 7, %27644
  %27646 = add nsw i32 %27643, %27645
  %27647 = sext i32 %27646 to i64
  %27648 = getelementptr inbounds double, ptr %27642, i64 %27647
  %27649 = load double, ptr %27648, align 8, !tbaa !11
  %27650 = call double @llvm.fmuladd.f64(double 0x3CEBB80000000001, double %27649, double %27641)
  %27651 = load ptr, ptr %7, align 8, !tbaa !9
  %27652 = load i32, ptr %12, align 4, !tbaa !5
  %27653 = load i32, ptr %8, align 4, !tbaa !5
  %27654 = mul nsw i32 8, %27653
  %27655 = add nsw i32 %27652, %27654
  %27656 = sext i32 %27655 to i64
  %27657 = getelementptr inbounds double, ptr %27651, i64 %27656
  %27658 = load double, ptr %27657, align 8, !tbaa !11
  %27659 = call double @llvm.fmuladd.f64(double 0x3CCC000000000000, double %27658, double %27650)
  %27660 = load ptr, ptr %7, align 8, !tbaa !9
  %27661 = load i32, ptr %12, align 4, !tbaa !5
  %27662 = load i32, ptr %8, align 4, !tbaa !5
  %27663 = mul nsw i32 9, %27662
  %27664 = add nsw i32 %27661, %27663
  %27665 = sext i32 %27664 to i64
  %27666 = getelementptr inbounds double, ptr %27660, i64 %27665
  %27667 = load double, ptr %27666, align 8, !tbaa !11
  %27668 = call double @llvm.fmuladd.f64(double 0x3CDAFFFFFFFFFFFE, double %27667, double %27659)
  %27669 = load ptr, ptr %7, align 8, !tbaa !9
  %27670 = load i32, ptr %12, align 4, !tbaa !5
  %27671 = load i32, ptr %8, align 4, !tbaa !5
  %27672 = mul nsw i32 10, %27671
  %27673 = add nsw i32 %27670, %27672
  %27674 = sext i32 %27673 to i64
  %27675 = getelementptr inbounds double, ptr %27669, i64 %27674
  %27676 = load double, ptr %27675, align 8, !tbaa !11
  %27677 = call double @llvm.fmuladd.f64(double 0xBCF9480000000000, double %27676, double %27668)
  %27678 = load ptr, ptr %7, align 8, !tbaa !9
  %27679 = load i32, ptr %12, align 4, !tbaa !5
  %27680 = load i32, ptr %8, align 4, !tbaa !5
  %27681 = mul nsw i32 11, %27680
  %27682 = add nsw i32 %27679, %27681
  %27683 = sext i32 %27682 to i64
  %27684 = getelementptr inbounds double, ptr %27678, i64 %27683
  %27685 = load double, ptr %27684, align 8, !tbaa !11
  %27686 = call double @llvm.fmuladd.f64(double 0xBCD1800000000000, double %27685, double %27677)
  %27687 = load ptr, ptr %7, align 8, !tbaa !9
  %27688 = load i32, ptr %12, align 4, !tbaa !5
  %27689 = load i32, ptr %8, align 4, !tbaa !5
  %27690 = mul nsw i32 12, %27689
  %27691 = add nsw i32 %27688, %27690
  %27692 = sext i32 %27691 to i64
  %27693 = getelementptr inbounds double, ptr %27687, i64 %27692
  %27694 = load double, ptr %27693, align 8, !tbaa !11
  %27695 = call double @llvm.fmuladd.f64(double 0x3CC8C00000000000, double %27694, double %27686)
  %27696 = load ptr, ptr %7, align 8, !tbaa !9
  %27697 = load i32, ptr %12, align 4, !tbaa !5
  %27698 = load i32, ptr %8, align 4, !tbaa !5
  %27699 = mul nsw i32 13, %27698
  %27700 = add nsw i32 %27697, %27699
  %27701 = sext i32 %27700 to i64
  %27702 = getelementptr inbounds double, ptr %27696, i64 %27701
  %27703 = load double, ptr %27702, align 8, !tbaa !11
  %27704 = call double @llvm.fmuladd.f64(double 0xBCF59BFFFFFFFFFF, double %27703, double %27695)
  %27705 = load ptr, ptr %7, align 8, !tbaa !9
  %27706 = load i32, ptr %12, align 4, !tbaa !5
  %27707 = load i32, ptr %8, align 4, !tbaa !5
  %27708 = mul nsw i32 14, %27707
  %27709 = add nsw i32 %27706, %27708
  %27710 = sext i32 %27709 to i64
  %27711 = getelementptr inbounds double, ptr %27705, i64 %27710
  %27712 = load double, ptr %27711, align 8, !tbaa !11
  %27713 = call double @llvm.fmuladd.f64(double 0x3CD71FFFFFFFFFFF, double %27712, double %27704)
  %27714 = load ptr, ptr %7, align 8, !tbaa !9
  %27715 = load i32, ptr %12, align 4, !tbaa !5
  %27716 = load i32, ptr %8, align 4, !tbaa !5
  %27717 = mul nsw i32 15, %27716
  %27718 = add nsw i32 %27715, %27717
  %27719 = sext i32 %27718 to i64
  %27720 = getelementptr inbounds double, ptr %27714, i64 %27719
  %27721 = load double, ptr %27720, align 8, !tbaa !11
  %27722 = call double @llvm.fmuladd.f64(double 0xBCED300000000001, double %27721, double %27713)
  %27723 = load ptr, ptr %7, align 8, !tbaa !9
  %27724 = load i32, ptr %12, align 4, !tbaa !5
  %27725 = load i32, ptr %8, align 4, !tbaa !5
  %27726 = mul nsw i32 16, %27725
  %27727 = add nsw i32 %27724, %27726
  %27728 = sext i32 %27727 to i64
  %27729 = getelementptr inbounds double, ptr %27723, i64 %27728
  %27730 = load double, ptr %27729, align 8, !tbaa !11
  %27731 = call double @llvm.fmuladd.f64(double 0xBFF3F64564513B1C, double %27730, double %27722)
  %27732 = load ptr, ptr %7, align 8, !tbaa !9
  %27733 = load i32, ptr %12, align 4, !tbaa !5
  %27734 = load i32, ptr %8, align 4, !tbaa !5
  %27735 = mul nsw i32 17, %27734
  %27736 = add nsw i32 %27733, %27735
  %27737 = sext i32 %27736 to i64
  %27738 = getelementptr inbounds double, ptr %27732, i64 %27737
  %27739 = load double, ptr %27738, align 8, !tbaa !11
  %27740 = call double @llvm.fmuladd.f64(double 0x3CFADC0000000000, double %27739, double %27731)
  %27741 = load ptr, ptr %7, align 8, !tbaa !9
  %27742 = load i32, ptr %12, align 4, !tbaa !5
  %27743 = load i32, ptr %8, align 4, !tbaa !5
  %27744 = mul nsw i32 18, %27743
  %27745 = add nsw i32 %27742, %27744
  %27746 = sext i32 %27745 to i64
  %27747 = getelementptr inbounds double, ptr %27741, i64 %27746
  %27748 = load double, ptr %27747, align 8, !tbaa !11
  %27749 = call double @llvm.fmuladd.f64(double 0x3CD9000000000002, double %27748, double %27740)
  %27750 = load ptr, ptr %7, align 8, !tbaa !9
  %27751 = load i32, ptr %12, align 4, !tbaa !5
  %27752 = load i32, ptr %8, align 4, !tbaa !5
  %27753 = mul nsw i32 19, %27752
  %27754 = add nsw i32 %27751, %27753
  %27755 = sext i32 %27754 to i64
  %27756 = getelementptr inbounds double, ptr %27750, i64 %27755
  %27757 = load double, ptr %27756, align 8, !tbaa !11
  %27758 = call double @llvm.fmuladd.f64(double 0x3CEB7FFFFFFFFFFF, double %27757, double %27749)
  store double %27758, ptr %11, align 8, !tbaa !11
  %27759 = load double, ptr %11, align 8, !tbaa !11
  %27760 = load ptr, ptr %9, align 8, !tbaa !9
  %27761 = load i32, ptr %12, align 4, !tbaa !5
  %27762 = load i32, ptr %10, align 4, !tbaa !5
  %27763 = mul nsw i32 106, %27762
  %27764 = add nsw i32 %27761, %27763
  %27765 = sext i32 %27764 to i64
  %27766 = getelementptr inbounds double, ptr %27760, i64 %27765
  store double %27759, ptr %27766, align 8, !tbaa !11
  %27767 = load ptr, ptr %7, align 8, !tbaa !9
  %27768 = load i32, ptr %12, align 4, !tbaa !5
  %27769 = load i32, ptr %8, align 4, !tbaa !5
  %27770 = mul nsw i32 0, %27769
  %27771 = add nsw i32 %27768, %27770
  %27772 = sext i32 %27771 to i64
  %27773 = getelementptr inbounds double, ptr %27767, i64 %27772
  %27774 = load double, ptr %27773, align 8, !tbaa !11
  %27775 = load ptr, ptr %7, align 8, !tbaa !9
  %27776 = load i32, ptr %12, align 4, !tbaa !5
  %27777 = load i32, ptr %8, align 4, !tbaa !5
  %27778 = mul nsw i32 1, %27777
  %27779 = add nsw i32 %27776, %27778
  %27780 = sext i32 %27779 to i64
  %27781 = getelementptr inbounds double, ptr %27775, i64 %27780
  %27782 = load double, ptr %27781, align 8, !tbaa !11
  %27783 = fmul double 0xBCC0C00000000000, %27782
  %27784 = call double @llvm.fmuladd.f64(double 0xBCEB6FFFFFFFFFFF, double %27774, double %27783)
  %27785 = load ptr, ptr %7, align 8, !tbaa !9
  %27786 = load i32, ptr %12, align 4, !tbaa !5
  %27787 = load i32, ptr %8, align 4, !tbaa !5
  %27788 = mul nsw i32 2, %27787
  %27789 = add nsw i32 %27786, %27788
  %27790 = sext i32 %27789 to i64
  %27791 = getelementptr inbounds double, ptr %27785, i64 %27790
  %27792 = load double, ptr %27791, align 8, !tbaa !11
  %27793 = call double @llvm.fmuladd.f64(double 0xBCE6700000000000, double %27792, double %27784)
  %27794 = load ptr, ptr %7, align 8, !tbaa !9
  %27795 = load i32, ptr %12, align 4, !tbaa !5
  %27796 = load i32, ptr %8, align 4, !tbaa !5
  %27797 = mul nsw i32 3, %27796
  %27798 = add nsw i32 %27795, %27797
  %27799 = sext i32 %27798 to i64
  %27800 = getelementptr inbounds double, ptr %27794, i64 %27799
  %27801 = load double, ptr %27800, align 8, !tbaa !11
  %27802 = call double @llvm.fmuladd.f64(double 0x3CB43FFFFFFFFFFF, double %27801, double %27793)
  %27803 = load ptr, ptr %7, align 8, !tbaa !9
  %27804 = load i32, ptr %12, align 4, !tbaa !5
  %27805 = load i32, ptr %8, align 4, !tbaa !5
  %27806 = mul nsw i32 4, %27805
  %27807 = add nsw i32 %27804, %27806
  %27808 = sext i32 %27807 to i64
  %27809 = getelementptr inbounds double, ptr %27803, i64 %27808
  %27810 = load double, ptr %27809, align 8, !tbaa !11
  %27811 = call double @llvm.fmuladd.f64(double 0xBCDEA00000000000, double %27810, double %27802)
  %27812 = load ptr, ptr %7, align 8, !tbaa !9
  %27813 = load i32, ptr %12, align 4, !tbaa !5
  %27814 = load i32, ptr %8, align 4, !tbaa !5
  %27815 = mul nsw i32 5, %27814
  %27816 = add nsw i32 %27813, %27815
  %27817 = sext i32 %27816 to i64
  %27818 = getelementptr inbounds double, ptr %27812, i64 %27817
  %27819 = load double, ptr %27818, align 8, !tbaa !11
  %27820 = call double @llvm.fmuladd.f64(double 0x3CC7400000000000, double %27819, double %27811)
  %27821 = load ptr, ptr %7, align 8, !tbaa !9
  %27822 = load i32, ptr %12, align 4, !tbaa !5
  %27823 = load i32, ptr %8, align 4, !tbaa !5
  %27824 = mul nsw i32 6, %27823
  %27825 = add nsw i32 %27822, %27824
  %27826 = sext i32 %27825 to i64
  %27827 = getelementptr inbounds double, ptr %27821, i64 %27826
  %27828 = load double, ptr %27827, align 8, !tbaa !11
  %27829 = call double @llvm.fmuladd.f64(double 0x3CEAF80000000000, double %27828, double %27820)
  %27830 = load ptr, ptr %7, align 8, !tbaa !9
  %27831 = load i32, ptr %12, align 4, !tbaa !5
  %27832 = load i32, ptr %8, align 4, !tbaa !5
  %27833 = mul nsw i32 7, %27832
  %27834 = add nsw i32 %27831, %27833
  %27835 = sext i32 %27834 to i64
  %27836 = getelementptr inbounds double, ptr %27830, i64 %27835
  %27837 = load double, ptr %27836, align 8, !tbaa !11
  %27838 = call double @llvm.fmuladd.f64(double 0xBFE3AA36D354D103, double %27837, double %27829)
  %27839 = load ptr, ptr %7, align 8, !tbaa !9
  %27840 = load i32, ptr %12, align 4, !tbaa !5
  %27841 = load i32, ptr %8, align 4, !tbaa !5
  %27842 = mul nsw i32 8, %27841
  %27843 = add nsw i32 %27840, %27842
  %27844 = sext i32 %27843 to i64
  %27845 = getelementptr inbounds double, ptr %27839, i64 %27844
  %27846 = load double, ptr %27845, align 8, !tbaa !11
  %27847 = call double @llvm.fmuladd.f64(double 0x3CDBFFFFFFFFFFFF, double %27846, double %27838)
  %27848 = load ptr, ptr %7, align 8, !tbaa !9
  %27849 = load i32, ptr %12, align 4, !tbaa !5
  %27850 = load i32, ptr %8, align 4, !tbaa !5
  %27851 = mul nsw i32 9, %27850
  %27852 = add nsw i32 %27849, %27851
  %27853 = sext i32 %27852 to i64
  %27854 = getelementptr inbounds double, ptr %27848, i64 %27853
  %27855 = load double, ptr %27854, align 8, !tbaa !11
  %27856 = call double @llvm.fmuladd.f64(double 0x3CC6800000000000, double %27855, double %27847)
  %27857 = load ptr, ptr %7, align 8, !tbaa !9
  %27858 = load i32, ptr %12, align 4, !tbaa !5
  %27859 = load i32, ptr %8, align 4, !tbaa !5
  %27860 = mul nsw i32 10, %27859
  %27861 = add nsw i32 %27858, %27860
  %27862 = sext i32 %27861 to i64
  %27863 = getelementptr inbounds double, ptr %27857, i64 %27862
  %27864 = load double, ptr %27863, align 8, !tbaa !11
  %27865 = call double @llvm.fmuladd.f64(double 0xBCF8B80000000000, double %27864, double %27856)
  %27866 = load ptr, ptr %7, align 8, !tbaa !9
  %27867 = load i32, ptr %12, align 4, !tbaa !5
  %27868 = load i32, ptr %8, align 4, !tbaa !5
  %27869 = mul nsw i32 11, %27868
  %27870 = add nsw i32 %27867, %27869
  %27871 = sext i32 %27870 to i64
  %27872 = getelementptr inbounds double, ptr %27866, i64 %27871
  %27873 = load double, ptr %27872, align 8, !tbaa !11
  %27874 = call double @llvm.fmuladd.f64(double 0xBCD2DFFFFFFFFFFE, double %27873, double %27865)
  %27875 = load ptr, ptr %7, align 8, !tbaa !9
  %27876 = load i32, ptr %12, align 4, !tbaa !5
  %27877 = load i32, ptr %8, align 4, !tbaa !5
  %27878 = mul nsw i32 12, %27877
  %27879 = add nsw i32 %27876, %27878
  %27880 = sext i32 %27879 to i64
  %27881 = getelementptr inbounds double, ptr %27875, i64 %27880
  %27882 = load double, ptr %27881, align 8, !tbaa !11
  %27883 = call double @llvm.fmuladd.f64(double 0xBCF7B80000000000, double %27882, double %27874)
  %27884 = load ptr, ptr %7, align 8, !tbaa !9
  %27885 = load i32, ptr %12, align 4, !tbaa !5
  %27886 = load i32, ptr %8, align 4, !tbaa !5
  %27887 = mul nsw i32 13, %27886
  %27888 = add nsw i32 %27885, %27887
  %27889 = sext i32 %27888 to i64
  %27890 = getelementptr inbounds double, ptr %27884, i64 %27889
  %27891 = load double, ptr %27890, align 8, !tbaa !11
  %27892 = call double @llvm.fmuladd.f64(double 0x3CC4200000000000, double %27891, double %27883)
  %27893 = load ptr, ptr %7, align 8, !tbaa !9
  %27894 = load i32, ptr %12, align 4, !tbaa !5
  %27895 = load i32, ptr %8, align 4, !tbaa !5
  %27896 = mul nsw i32 14, %27895
  %27897 = add nsw i32 %27894, %27896
  %27898 = sext i32 %27897 to i64
  %27899 = getelementptr inbounds double, ptr %27893, i64 %27898
  %27900 = load double, ptr %27899, align 8, !tbaa !11
  %27901 = call double @llvm.fmuladd.f64(double 0xBCEE500000000001, double %27900, double %27892)
  %27902 = load ptr, ptr %7, align 8, !tbaa !9
  %27903 = load i32, ptr %12, align 4, !tbaa !5
  %27904 = load i32, ptr %8, align 4, !tbaa !5
  %27905 = mul nsw i32 15, %27904
  %27906 = add nsw i32 %27903, %27905
  %27907 = sext i32 %27906 to i64
  %27908 = getelementptr inbounds double, ptr %27902, i64 %27907
  %27909 = load double, ptr %27908, align 8, !tbaa !11
  %27910 = call double @llvm.fmuladd.f64(double 0x3CD5A00000000002, double %27909, double %27901)
  %27911 = load ptr, ptr %7, align 8, !tbaa !9
  %27912 = load i32, ptr %12, align 4, !tbaa !5
  %27913 = load i32, ptr %8, align 4, !tbaa !5
  %27914 = mul nsw i32 16, %27913
  %27915 = add nsw i32 %27912, %27914
  %27916 = sext i32 %27915 to i64
  %27917 = getelementptr inbounds double, ptr %27911, i64 %27916
  %27918 = load double, ptr %27917, align 8, !tbaa !11
  %27919 = call double @llvm.fmuladd.f64(double 0x3CFBBC0000000000, double %27918, double %27910)
  %27920 = load ptr, ptr %7, align 8, !tbaa !9
  %27921 = load i32, ptr %12, align 4, !tbaa !5
  %27922 = load i32, ptr %8, align 4, !tbaa !5
  %27923 = mul nsw i32 17, %27922
  %27924 = add nsw i32 %27921, %27923
  %27925 = sext i32 %27924 to i64
  %27926 = getelementptr inbounds double, ptr %27920, i64 %27925
  %27927 = load double, ptr %27926, align 8, !tbaa !11
  %27928 = call double @llvm.fmuladd.f64(double 0xBFF3F64564513B1C, double %27927, double %27919)
  %27929 = load ptr, ptr %7, align 8, !tbaa !9
  %27930 = load i32, ptr %12, align 4, !tbaa !5
  %27931 = load i32, ptr %8, align 4, !tbaa !5
  %27932 = mul nsw i32 18, %27931
  %27933 = add nsw i32 %27930, %27932
  %27934 = sext i32 %27933 to i64
  %27935 = getelementptr inbounds double, ptr %27929, i64 %27934
  %27936 = load double, ptr %27935, align 8, !tbaa !11
  %27937 = call double @llvm.fmuladd.f64(double 0x3CEB7FFFFFFFFFFF, double %27936, double %27928)
  %27938 = load ptr, ptr %7, align 8, !tbaa !9
  %27939 = load i32, ptr %12, align 4, !tbaa !5
  %27940 = load i32, ptr %8, align 4, !tbaa !5
  %27941 = mul nsw i32 19, %27940
  %27942 = add nsw i32 %27939, %27941
  %27943 = sext i32 %27942 to i64
  %27944 = getelementptr inbounds double, ptr %27938, i64 %27943
  %27945 = load double, ptr %27944, align 8, !tbaa !11
  %27946 = call double @llvm.fmuladd.f64(double 0x3CD93FFFFFFFFFFF, double %27945, double %27937)
  store double %27946, ptr %11, align 8, !tbaa !11
  %27947 = load double, ptr %11, align 8, !tbaa !11
  %27948 = load ptr, ptr %9, align 8, !tbaa !9
  %27949 = load i32, ptr %12, align 4, !tbaa !5
  %27950 = load i32, ptr %10, align 4, !tbaa !5
  %27951 = mul nsw i32 107, %27950
  %27952 = add nsw i32 %27949, %27951
  %27953 = sext i32 %27952 to i64
  %27954 = getelementptr inbounds double, ptr %27948, i64 %27953
  store double %27947, ptr %27954, align 8, !tbaa !11
  %27955 = load ptr, ptr %7, align 8, !tbaa !9
  %27956 = load i32, ptr %12, align 4, !tbaa !5
  %27957 = load i32, ptr %8, align 4, !tbaa !5
  %27958 = mul nsw i32 0, %27957
  %27959 = add nsw i32 %27956, %27958
  %27960 = sext i32 %27959 to i64
  %27961 = getelementptr inbounds double, ptr %27955, i64 %27960
  %27962 = load double, ptr %27961, align 8, !tbaa !11
  %27963 = load ptr, ptr %7, align 8, !tbaa !9
  %27964 = load i32, ptr %12, align 4, !tbaa !5
  %27965 = load i32, ptr %8, align 4, !tbaa !5
  %27966 = mul nsw i32 1, %27965
  %27967 = add nsw i32 %27964, %27966
  %27968 = sext i32 %27967 to i64
  %27969 = getelementptr inbounds double, ptr %27963, i64 %27968
  %27970 = load double, ptr %27969, align 8, !tbaa !11
  %27971 = fmul double 0xBCE5800000000001, %27970
  %27972 = call double @llvm.fmuladd.f64(double 0xBCEAC00000000001, double %27962, double %27971)
  %27973 = load ptr, ptr %7, align 8, !tbaa !9
  %27974 = load i32, ptr %12, align 4, !tbaa !5
  %27975 = load i32, ptr %8, align 4, !tbaa !5
  %27976 = mul nsw i32 2, %27975
  %27977 = add nsw i32 %27974, %27976
  %27978 = sext i32 %27977 to i64
  %27979 = getelementptr inbounds double, ptr %27973, i64 %27978
  %27980 = load double, ptr %27979, align 8, !tbaa !11
  %27981 = call double @llvm.fmuladd.f64(double 0xBCB97FFFFFFFFFFF, double %27980, double %27972)
  %27982 = load ptr, ptr %7, align 8, !tbaa !9
  %27983 = load i32, ptr %12, align 4, !tbaa !5
  %27984 = load i32, ptr %8, align 4, !tbaa !5
  %27985 = mul nsw i32 3, %27984
  %27986 = add nsw i32 %27983, %27985
  %27987 = sext i32 %27986 to i64
  %27988 = getelementptr inbounds double, ptr %27982, i64 %27987
  %27989 = load double, ptr %27988, align 8, !tbaa !11
  %27990 = call double @llvm.fmuladd.f64(double 0x3CB9000000000000, double %27989, double %27981)
  %27991 = load ptr, ptr %7, align 8, !tbaa !9
  %27992 = load i32, ptr %12, align 4, !tbaa !5
  %27993 = load i32, ptr %8, align 4, !tbaa !5
  %27994 = mul nsw i32 4, %27993
  %27995 = add nsw i32 %27992, %27994
  %27996 = sext i32 %27995 to i64
  %27997 = getelementptr inbounds double, ptr %27991, i64 %27996
  %27998 = load double, ptr %27997, align 8, !tbaa !11
  %27999 = call double @llvm.fmuladd.f64(double 0x3CCC000000000000, double %27998, double %27990)
  %28000 = load ptr, ptr %7, align 8, !tbaa !9
  %28001 = load i32, ptr %12, align 4, !tbaa !5
  %28002 = load i32, ptr %8, align 4, !tbaa !5
  %28003 = mul nsw i32 5, %28002
  %28004 = add nsw i32 %28001, %28003
  %28005 = sext i32 %28004 to i64
  %28006 = getelementptr inbounds double, ptr %28000, i64 %28005
  %28007 = load double, ptr %28006, align 8, !tbaa !11
  %28008 = call double @llvm.fmuladd.f64(double 0x3CEB400000000001, double %28007, double %27999)
  %28009 = load ptr, ptr %7, align 8, !tbaa !9
  %28010 = load i32, ptr %12, align 4, !tbaa !5
  %28011 = load i32, ptr %8, align 4, !tbaa !5
  %28012 = mul nsw i32 6, %28011
  %28013 = add nsw i32 %28010, %28012
  %28014 = sext i32 %28013 to i64
  %28015 = getelementptr inbounds double, ptr %28009, i64 %28014
  %28016 = load double, ptr %28015, align 8, !tbaa !11
  %28017 = call double @llvm.fmuladd.f64(double 0x3CC5800000000000, double %28016, double %28008)
  %28018 = load ptr, ptr %7, align 8, !tbaa !9
  %28019 = load i32, ptr %12, align 4, !tbaa !5
  %28020 = load i32, ptr %8, align 4, !tbaa !5
  %28021 = mul nsw i32 7, %28020
  %28022 = add nsw i32 %28019, %28021
  %28023 = sext i32 %28022 to i64
  %28024 = getelementptr inbounds double, ptr %28018, i64 %28023
  %28025 = load double, ptr %28024, align 8, !tbaa !11
  %28026 = call double @llvm.fmuladd.f64(double 0x3CDAFFFFFFFFFFFE, double %28025, double %28017)
  %28027 = load ptr, ptr %7, align 8, !tbaa !9
  %28028 = load i32, ptr %12, align 4, !tbaa !5
  %28029 = load i32, ptr %8, align 4, !tbaa !5
  %28030 = mul nsw i32 8, %28029
  %28031 = add nsw i32 %28028, %28030
  %28032 = sext i32 %28031 to i64
  %28033 = getelementptr inbounds double, ptr %28027, i64 %28032
  %28034 = load double, ptr %28033, align 8, !tbaa !11
  %28035 = call double @llvm.fmuladd.f64(double 0xBFE3AA36D354D103, double %28034, double %28026)
  %28036 = load ptr, ptr %7, align 8, !tbaa !9
  %28037 = load i32, ptr %12, align 4, !tbaa !5
  %28038 = load i32, ptr %8, align 4, !tbaa !5
  %28039 = mul nsw i32 9, %28038
  %28040 = add nsw i32 %28037, %28039
  %28041 = sext i32 %28040 to i64
  %28042 = getelementptr inbounds double, ptr %28036, i64 %28041
  %28043 = load double, ptr %28042, align 8, !tbaa !11
  %28044 = call double @llvm.fmuladd.f64(double 0xBCE1800000000000, double %28043, double %28035)
  %28045 = load ptr, ptr %7, align 8, !tbaa !9
  %28046 = load i32, ptr %12, align 4, !tbaa !5
  %28047 = load i32, ptr %8, align 4, !tbaa !5
  %28048 = mul nsw i32 10, %28047
  %28049 = add nsw i32 %28046, %28048
  %28050 = sext i32 %28049 to i64
  %28051 = getelementptr inbounds double, ptr %28045, i64 %28050
  %28052 = load double, ptr %28051, align 8, !tbaa !11
  %28053 = call double @llvm.fmuladd.f64(double 0xBCF9E00000000000, double %28052, double %28044)
  %28054 = load ptr, ptr %7, align 8, !tbaa !9
  %28055 = load i32, ptr %12, align 4, !tbaa !5
  %28056 = load i32, ptr %8, align 4, !tbaa !5
  %28057 = mul nsw i32 11, %28056
  %28058 = add nsw i32 %28055, %28057
  %28059 = sext i32 %28058 to i64
  %28060 = getelementptr inbounds double, ptr %28054, i64 %28059
  %28061 = load double, ptr %28060, align 8, !tbaa !11
  %28062 = call double @llvm.fmuladd.f64(double 0xBCF6600000000001, double %28061, double %28053)
  %28063 = load ptr, ptr %7, align 8, !tbaa !9
  %28064 = load i32, ptr %12, align 4, !tbaa !5
  %28065 = load i32, ptr %8, align 4, !tbaa !5
  %28066 = mul nsw i32 12, %28065
  %28067 = add nsw i32 %28064, %28066
  %28068 = sext i32 %28067 to i64
  %28069 = getelementptr inbounds double, ptr %28063, i64 %28068
  %28070 = load double, ptr %28069, align 8, !tbaa !11
  %28071 = call double @llvm.fmuladd.f64(double 0xBCCF400000000000, double %28070, double %28062)
  %28072 = load ptr, ptr %7, align 8, !tbaa !9
  %28073 = load i32, ptr %12, align 4, !tbaa !5
  %28074 = load i32, ptr %8, align 4, !tbaa !5
  %28075 = mul nsw i32 13, %28074
  %28076 = add nsw i32 %28073, %28075
  %28077 = sext i32 %28076 to i64
  %28078 = getelementptr inbounds double, ptr %28072, i64 %28077
  %28079 = load double, ptr %28078, align 8, !tbaa !11
  %28080 = call double @llvm.fmuladd.f64(double 0x3CC5800000000000, double %28079, double %28071)
  %28081 = load ptr, ptr %7, align 8, !tbaa !9
  %28082 = load i32, ptr %12, align 4, !tbaa !5
  %28083 = load i32, ptr %8, align 4, !tbaa !5
  %28084 = mul nsw i32 14, %28083
  %28085 = add nsw i32 %28082, %28084
  %28086 = sext i32 %28085 to i64
  %28087 = getelementptr inbounds double, ptr %28081, i64 %28086
  %28088 = load double, ptr %28087, align 8, !tbaa !11
  %28089 = call double @llvm.fmuladd.f64(double 0x3CDBFFFFFFFFFFFF, double %28088, double %28080)
  %28090 = load ptr, ptr %7, align 8, !tbaa !9
  %28091 = load i32, ptr %12, align 4, !tbaa !5
  %28092 = load i32, ptr %8, align 4, !tbaa !5
  %28093 = mul nsw i32 15, %28092
  %28094 = add nsw i32 %28091, %28093
  %28095 = sext i32 %28094 to i64
  %28096 = getelementptr inbounds double, ptr %28090, i64 %28095
  %28097 = load double, ptr %28096, align 8, !tbaa !11
  %28098 = call double @llvm.fmuladd.f64(double 0x3CFBA00000000000, double %28097, double %28089)
  %28099 = load ptr, ptr %7, align 8, !tbaa !9
  %28100 = load i32, ptr %12, align 4, !tbaa !5
  %28101 = load i32, ptr %8, align 4, !tbaa !5
  %28102 = mul nsw i32 16, %28101
  %28103 = add nsw i32 %28100, %28102
  %28104 = sext i32 %28103 to i64
  %28105 = getelementptr inbounds double, ptr %28099, i64 %28104
  %28106 = load double, ptr %28105, align 8, !tbaa !11
  %28107 = call double @llvm.fmuladd.f64(double 0x3CD7BFFFFFFFFFFE, double %28106, double %28098)
  %28108 = load ptr, ptr %7, align 8, !tbaa !9
  %28109 = load i32, ptr %12, align 4, !tbaa !5
  %28110 = load i32, ptr %8, align 4, !tbaa !5
  %28111 = mul nsw i32 17, %28110
  %28112 = add nsw i32 %28109, %28111
  %28113 = sext i32 %28112 to i64
  %28114 = getelementptr inbounds double, ptr %28108, i64 %28113
  %28115 = load double, ptr %28114, align 8, !tbaa !11
  %28116 = call double @llvm.fmuladd.f64(double 0x3CED000000000000, double %28115, double %28107)
  %28117 = load ptr, ptr %7, align 8, !tbaa !9
  %28118 = load i32, ptr %12, align 4, !tbaa !5
  %28119 = load i32, ptr %8, align 4, !tbaa !5
  %28120 = mul nsw i32 18, %28119
  %28121 = add nsw i32 %28118, %28120
  %28122 = sext i32 %28121 to i64
  %28123 = getelementptr inbounds double, ptr %28117, i64 %28122
  %28124 = load double, ptr %28123, align 8, !tbaa !11
  %28125 = call double @llvm.fmuladd.f64(double 0xBFF3F64564513B1C, double %28124, double %28116)
  %28126 = load ptr, ptr %7, align 8, !tbaa !9
  %28127 = load i32, ptr %12, align 4, !tbaa !5
  %28128 = load i32, ptr %8, align 4, !tbaa !5
  %28129 = mul nsw i32 19, %28128
  %28130 = add nsw i32 %28127, %28129
  %28131 = sext i32 %28130 to i64
  %28132 = getelementptr inbounds double, ptr %28126, i64 %28131
  %28133 = load double, ptr %28132, align 8, !tbaa !11
  %28134 = call double @llvm.fmuladd.f64(double 0xBCF1800000000000, double %28133, double %28125)
  store double %28134, ptr %11, align 8, !tbaa !11
  %28135 = load double, ptr %11, align 8, !tbaa !11
  %28136 = load ptr, ptr %9, align 8, !tbaa !9
  %28137 = load i32, ptr %12, align 4, !tbaa !5
  %28138 = load i32, ptr %10, align 4, !tbaa !5
  %28139 = mul nsw i32 108, %28138
  %28140 = add nsw i32 %28137, %28139
  %28141 = sext i32 %28140 to i64
  %28142 = getelementptr inbounds double, ptr %28136, i64 %28141
  store double %28135, ptr %28142, align 8, !tbaa !11
  %28143 = load ptr, ptr %7, align 8, !tbaa !9
  %28144 = load i32, ptr %12, align 4, !tbaa !5
  %28145 = load i32, ptr %8, align 4, !tbaa !5
  %28146 = mul nsw i32 0, %28145
  %28147 = add nsw i32 %28144, %28146
  %28148 = sext i32 %28147 to i64
  %28149 = getelementptr inbounds double, ptr %28143, i64 %28148
  %28150 = load double, ptr %28149, align 8, !tbaa !11
  %28151 = load ptr, ptr %7, align 8, !tbaa !9
  %28152 = load i32, ptr %12, align 4, !tbaa !5
  %28153 = load i32, ptr %8, align 4, !tbaa !5
  %28154 = mul nsw i32 1, %28153
  %28155 = add nsw i32 %28152, %28154
  %28156 = sext i32 %28155 to i64
  %28157 = getelementptr inbounds double, ptr %28151, i64 %28156
  %28158 = load double, ptr %28157, align 8, !tbaa !11
  %28159 = fmul double 0xBCE3C00000000000, %28158
  %28160 = call double @llvm.fmuladd.f64(double 0xBCEBBFFFFFFFFFFF, double %28150, double %28159)
  %28161 = load ptr, ptr %7, align 8, !tbaa !9
  %28162 = load i32, ptr %12, align 4, !tbaa !5
  %28163 = load i32, ptr %8, align 4, !tbaa !5
  %28164 = mul nsw i32 2, %28163
  %28165 = add nsw i32 %28162, %28164
  %28166 = sext i32 %28165 to i64
  %28167 = getelementptr inbounds double, ptr %28161, i64 %28166
  %28168 = load double, ptr %28167, align 8, !tbaa !11
  %28169 = call double @llvm.fmuladd.f64(double 0x3CBB800000000001, double %28168, double %28160)
  %28170 = load ptr, ptr %7, align 8, !tbaa !9
  %28171 = load i32, ptr %12, align 4, !tbaa !5
  %28172 = load i32, ptr %8, align 4, !tbaa !5
  %28173 = mul nsw i32 3, %28172
  %28174 = add nsw i32 %28171, %28173
  %28175 = sext i32 %28174 to i64
  %28176 = getelementptr inbounds double, ptr %28170, i64 %28175
  %28177 = load double, ptr %28176, align 8, !tbaa !11
  %28178 = call double @llvm.fmuladd.f64(double 0xBCC3400000000000, double %28177, double %28169)
  %28179 = load ptr, ptr %7, align 8, !tbaa !9
  %28180 = load i32, ptr %12, align 4, !tbaa !5
  %28181 = load i32, ptr %8, align 4, !tbaa !5
  %28182 = mul nsw i32 4, %28181
  %28183 = add nsw i32 %28180, %28182
  %28184 = sext i32 %28183 to i64
  %28185 = getelementptr inbounds double, ptr %28179, i64 %28184
  %28186 = load double, ptr %28185, align 8, !tbaa !11
  %28187 = call double @llvm.fmuladd.f64(double 0x3CECC00000000000, double %28186, double %28178)
  %28188 = load ptr, ptr %7, align 8, !tbaa !9
  %28189 = load i32, ptr %12, align 4, !tbaa !5
  %28190 = load i32, ptr %8, align 4, !tbaa !5
  %28191 = mul nsw i32 5, %28190
  %28192 = add nsw i32 %28189, %28191
  %28193 = sext i32 %28192 to i64
  %28194 = getelementptr inbounds double, ptr %28188, i64 %28193
  %28195 = load double, ptr %28194, align 8, !tbaa !11
  %28196 = call double @llvm.fmuladd.f64(double 0x3CCB000000000000, double %28195, double %28187)
  %28197 = load ptr, ptr %7, align 8, !tbaa !9
  %28198 = load i32, ptr %12, align 4, !tbaa !5
  %28199 = load i32, ptr %8, align 4, !tbaa !5
  %28200 = mul nsw i32 6, %28199
  %28201 = add nsw i32 %28198, %28200
  %28202 = sext i32 %28201 to i64
  %28203 = getelementptr inbounds double, ptr %28197, i64 %28202
  %28204 = load double, ptr %28203, align 8, !tbaa !11
  %28205 = call double @llvm.fmuladd.f64(double 0x3CDAFFFFFFFFFFFE, double %28204, double %28196)
  %28206 = load ptr, ptr %7, align 8, !tbaa !9
  %28207 = load i32, ptr %12, align 4, !tbaa !5
  %28208 = load i32, ptr %8, align 4, !tbaa !5
  %28209 = mul nsw i32 7, %28208
  %28210 = add nsw i32 %28207, %28209
  %28211 = sext i32 %28210 to i64
  %28212 = getelementptr inbounds double, ptr %28206, i64 %28211
  %28213 = load double, ptr %28212, align 8, !tbaa !11
  %28214 = call double @llvm.fmuladd.f64(double 0x3CC6800000000000, double %28213, double %28205)
  %28215 = load ptr, ptr %7, align 8, !tbaa !9
  %28216 = load i32, ptr %12, align 4, !tbaa !5
  %28217 = load i32, ptr %8, align 4, !tbaa !5
  %28218 = mul nsw i32 8, %28217
  %28219 = add nsw i32 %28216, %28218
  %28220 = sext i32 %28219 to i64
  %28221 = getelementptr inbounds double, ptr %28215, i64 %28220
  %28222 = load double, ptr %28221, align 8, !tbaa !11
  %28223 = call double @llvm.fmuladd.f64(double 0xBCE1000000000000, double %28222, double %28214)
  %28224 = load ptr, ptr %7, align 8, !tbaa !9
  %28225 = load i32, ptr %12, align 4, !tbaa !5
  %28226 = load i32, ptr %8, align 4, !tbaa !5
  %28227 = mul nsw i32 9, %28226
  %28228 = add nsw i32 %28225, %28227
  %28229 = sext i32 %28228 to i64
  %28230 = getelementptr inbounds double, ptr %28224, i64 %28229
  %28231 = load double, ptr %28230, align 8, !tbaa !11
  %28232 = call double @llvm.fmuladd.f64(double 0xBFE3AA36D354D104, double %28231, double %28223)
  %28233 = load ptr, ptr %7, align 8, !tbaa !9
  %28234 = load i32, ptr %12, align 4, !tbaa !5
  %28235 = load i32, ptr %8, align 4, !tbaa !5
  %28236 = mul nsw i32 10, %28235
  %28237 = add nsw i32 %28234, %28236
  %28238 = sext i32 %28237 to i64
  %28239 = getelementptr inbounds double, ptr %28233, i64 %28238
  %28240 = load double, ptr %28239, align 8, !tbaa !11
  %28241 = call double @llvm.fmuladd.f64(double 0xBCFA600000000000, double %28240, double %28232)
  %28242 = load ptr, ptr %7, align 8, !tbaa !9
  %28243 = load i32, ptr %12, align 4, !tbaa !5
  %28244 = load i32, ptr %8, align 4, !tbaa !5
  %28245 = mul nsw i32 11, %28244
  %28246 = add nsw i32 %28243, %28245
  %28247 = sext i32 %28246 to i64
  %28248 = getelementptr inbounds double, ptr %28242, i64 %28247
  %28249 = load double, ptr %28248, align 8, !tbaa !11
  %28250 = call double @llvm.fmuladd.f64(double 0xBCF5200000000000, double %28249, double %28241)
  %28251 = load ptr, ptr %7, align 8, !tbaa !9
  %28252 = load i32, ptr %12, align 4, !tbaa !5
  %28253 = load i32, ptr %8, align 4, !tbaa !5
  %28254 = mul nsw i32 12, %28253
  %28255 = add nsw i32 %28252, %28254
  %28256 = sext i32 %28255 to i64
  %28257 = getelementptr inbounds double, ptr %28251, i64 %28256
  %28258 = load double, ptr %28257, align 8, !tbaa !11
  %28259 = call double @llvm.fmuladd.f64(double 0x3CC7C00000000000, double %28258, double %28250)
  %28260 = load ptr, ptr %7, align 8, !tbaa !9
  %28261 = load i32, ptr %12, align 4, !tbaa !5
  %28262 = load i32, ptr %8, align 4, !tbaa !5
  %28263 = mul nsw i32 13, %28262
  %28264 = add nsw i32 %28261, %28263
  %28265 = sext i32 %28264 to i64
  %28266 = getelementptr inbounds double, ptr %28260, i64 %28265
  %28267 = load double, ptr %28266, align 8, !tbaa !11
  %28268 = call double @llvm.fmuladd.f64(double 0xBCD3A00000000001, double %28267, double %28259)
  %28269 = load ptr, ptr %7, align 8, !tbaa !9
  %28270 = load i32, ptr %12, align 4, !tbaa !5
  %28271 = load i32, ptr %8, align 4, !tbaa !5
  %28272 = mul nsw i32 14, %28271
  %28273 = add nsw i32 %28270, %28272
  %28274 = sext i32 %28273 to i64
  %28275 = getelementptr inbounds double, ptr %28269, i64 %28274
  %28276 = load double, ptr %28275, align 8, !tbaa !11
  %28277 = call double @llvm.fmuladd.f64(double 0x3CFD600000000000, double %28276, double %28268)
  %28278 = load ptr, ptr %7, align 8, !tbaa !9
  %28279 = load i32, ptr %12, align 4, !tbaa !5
  %28280 = load i32, ptr %8, align 4, !tbaa !5
  %28281 = mul nsw i32 15, %28280
  %28282 = add nsw i32 %28279, %28281
  %28283 = sext i32 %28282 to i64
  %28284 = getelementptr inbounds double, ptr %28278, i64 %28283
  %28285 = load double, ptr %28284, align 8, !tbaa !11
  %28286 = call double @llvm.fmuladd.f64(double 0x3CDB7FFFFFFFFFFF, double %28285, double %28277)
  %28287 = load ptr, ptr %7, align 8, !tbaa !9
  %28288 = load i32, ptr %12, align 4, !tbaa !5
  %28289 = load i32, ptr %8, align 4, !tbaa !5
  %28290 = mul nsw i32 16, %28289
  %28291 = add nsw i32 %28288, %28290
  %28292 = sext i32 %28291 to i64
  %28293 = getelementptr inbounds double, ptr %28287, i64 %28292
  %28294 = load double, ptr %28293, align 8, !tbaa !11
  %28295 = call double @llvm.fmuladd.f64(double 0x3CEC800000000000, double %28294, double %28286)
  %28296 = load ptr, ptr %7, align 8, !tbaa !9
  %28297 = load i32, ptr %12, align 4, !tbaa !5
  %28298 = load i32, ptr %8, align 4, !tbaa !5
  %28299 = mul nsw i32 17, %28298
  %28300 = add nsw i32 %28297, %28299
  %28301 = sext i32 %28300 to i64
  %28302 = getelementptr inbounds double, ptr %28296, i64 %28301
  %28303 = load double, ptr %28302, align 8, !tbaa !11
  %28304 = call double @llvm.fmuladd.f64(double 0x3CDA400000000000, double %28303, double %28295)
  %28305 = load ptr, ptr %7, align 8, !tbaa !9
  %28306 = load i32, ptr %12, align 4, !tbaa !5
  %28307 = load i32, ptr %8, align 4, !tbaa !5
  %28308 = mul nsw i32 18, %28307
  %28309 = add nsw i32 %28306, %28308
  %28310 = sext i32 %28309 to i64
  %28311 = getelementptr inbounds double, ptr %28305, i64 %28310
  %28312 = load double, ptr %28311, align 8, !tbaa !11
  %28313 = call double @llvm.fmuladd.f64(double 0xBCF2400000000000, double %28312, double %28304)
  %28314 = load ptr, ptr %7, align 8, !tbaa !9
  %28315 = load i32, ptr %12, align 4, !tbaa !5
  %28316 = load i32, ptr %8, align 4, !tbaa !5
  %28317 = mul nsw i32 19, %28316
  %28318 = add nsw i32 %28315, %28317
  %28319 = sext i32 %28318 to i64
  %28320 = getelementptr inbounds double, ptr %28314, i64 %28319
  %28321 = load double, ptr %28320, align 8, !tbaa !11
  %28322 = call double @llvm.fmuladd.f64(double 0xBFF3F64564513B1C, double %28321, double %28313)
  store double %28322, ptr %11, align 8, !tbaa !11
  %28323 = load double, ptr %11, align 8, !tbaa !11
  %28324 = load ptr, ptr %9, align 8, !tbaa !9
  %28325 = load i32, ptr %12, align 4, !tbaa !5
  %28326 = load i32, ptr %10, align 4, !tbaa !5
  %28327 = mul nsw i32 109, %28326
  %28328 = add nsw i32 %28325, %28327
  %28329 = sext i32 %28328 to i64
  %28330 = getelementptr inbounds double, ptr %28324, i64 %28329
  store double %28323, ptr %28330, align 8, !tbaa !11
  %28331 = load ptr, ptr %7, align 8, !tbaa !9
  %28332 = load i32, ptr %12, align 4, !tbaa !5
  %28333 = load i32, ptr %8, align 4, !tbaa !5
  %28334 = mul nsw i32 0, %28333
  %28335 = add nsw i32 %28332, %28334
  %28336 = sext i32 %28335 to i64
  %28337 = getelementptr inbounds double, ptr %28331, i64 %28336
  %28338 = load double, ptr %28337, align 8, !tbaa !11
  %28339 = load ptr, ptr %7, align 8, !tbaa !9
  %28340 = load i32, ptr %12, align 4, !tbaa !5
  %28341 = load i32, ptr %8, align 4, !tbaa !5
  %28342 = mul nsw i32 1, %28341
  %28343 = add nsw i32 %28340, %28342
  %28344 = sext i32 %28343 to i64
  %28345 = getelementptr inbounds double, ptr %28339, i64 %28344
  %28346 = load double, ptr %28345, align 8, !tbaa !11
  %28347 = fmul double 0xBCA4000000000001, %28346
  %28348 = call double @llvm.fmuladd.f64(double 0x3FD4F58312101B3F, double %28338, double %28347)
  %28349 = load ptr, ptr %7, align 8, !tbaa !9
  %28350 = load i32, ptr %12, align 4, !tbaa !5
  %28351 = load i32, ptr %8, align 4, !tbaa !5
  %28352 = mul nsw i32 2, %28351
  %28353 = add nsw i32 %28350, %28352
  %28354 = sext i32 %28353 to i64
  %28355 = getelementptr inbounds double, ptr %28349, i64 %28354
  %28356 = load double, ptr %28355, align 8, !tbaa !11
  %28357 = call double @llvm.fmuladd.f64(double 0xBCB0200000000000, double %28356, double %28348)
  %28358 = load ptr, ptr %7, align 8, !tbaa !9
  %28359 = load i32, ptr %12, align 4, !tbaa !5
  %28360 = load i32, ptr %8, align 4, !tbaa !5
  %28361 = mul nsw i32 3, %28360
  %28362 = add nsw i32 %28359, %28361
  %28363 = sext i32 %28362 to i64
  %28364 = getelementptr inbounds double, ptr %28358, i64 %28363
  %28365 = load double, ptr %28364, align 8, !tbaa !11
  %28366 = call double @llvm.fmuladd.f64(double 0xBCAD3FFFFFFFFFFF, double %28365, double %28357)
  %28367 = load ptr, ptr %7, align 8, !tbaa !9
  %28368 = load i32, ptr %12, align 4, !tbaa !5
  %28369 = load i32, ptr %8, align 4, !tbaa !5
  %28370 = mul nsw i32 4, %28369
  %28371 = add nsw i32 %28368, %28370
  %28372 = sext i32 %28371 to i64
  %28373 = getelementptr inbounds double, ptr %28367, i64 %28372
  %28374 = load double, ptr %28373, align 8, !tbaa !11
  %28375 = call double @llvm.fmuladd.f64(double 0x3CCF800000000000, double %28374, double %28366)
  %28376 = load ptr, ptr %7, align 8, !tbaa !9
  %28377 = load i32, ptr %12, align 4, !tbaa !5
  %28378 = load i32, ptr %8, align 4, !tbaa !5
  %28379 = mul nsw i32 5, %28378
  %28380 = add nsw i32 %28377, %28379
  %28381 = sext i32 %28380 to i64
  %28382 = getelementptr inbounds double, ptr %28376, i64 %28381
  %28383 = load double, ptr %28382, align 8, !tbaa !11
  %28384 = call double @llvm.fmuladd.f64(double 0x3CCE000000000000, double %28383, double %28375)
  %28385 = load ptr, ptr %7, align 8, !tbaa !9
  %28386 = load i32, ptr %12, align 4, !tbaa !5
  %28387 = load i32, ptr %8, align 4, !tbaa !5
  %28388 = mul nsw i32 6, %28387
  %28389 = add nsw i32 %28386, %28388
  %28390 = sext i32 %28389 to i64
  %28391 = getelementptr inbounds double, ptr %28385, i64 %28390
  %28392 = load double, ptr %28391, align 8, !tbaa !11
  %28393 = call double @llvm.fmuladd.f64(double 0x3CC9800000000000, double %28392, double %28384)
  %28394 = load ptr, ptr %7, align 8, !tbaa !9
  %28395 = load i32, ptr %12, align 4, !tbaa !5
  %28396 = load i32, ptr %8, align 4, !tbaa !5
  %28397 = mul nsw i32 7, %28396
  %28398 = add nsw i32 %28395, %28397
  %28399 = sext i32 %28398 to i64
  %28400 = getelementptr inbounds double, ptr %28394, i64 %28399
  %28401 = load double, ptr %28400, align 8, !tbaa !11
  %28402 = call double @llvm.fmuladd.f64(double 0x3CC7A00000000000, double %28401, double %28393)
  %28403 = load ptr, ptr %7, align 8, !tbaa !9
  %28404 = load i32, ptr %12, align 4, !tbaa !5
  %28405 = load i32, ptr %8, align 4, !tbaa !5
  %28406 = mul nsw i32 8, %28405
  %28407 = add nsw i32 %28404, %28406
  %28408 = sext i32 %28407 to i64
  %28409 = getelementptr inbounds double, ptr %28403, i64 %28408
  %28410 = load double, ptr %28409, align 8, !tbaa !11
  %28411 = call double @llvm.fmuladd.f64(double 0x3CCC000000000000, double %28410, double %28402)
  %28412 = load ptr, ptr %7, align 8, !tbaa !9
  %28413 = load i32, ptr %12, align 4, !tbaa !5
  %28414 = load i32, ptr %8, align 4, !tbaa !5
  %28415 = mul nsw i32 9, %28414
  %28416 = add nsw i32 %28413, %28415
  %28417 = sext i32 %28416 to i64
  %28418 = getelementptr inbounds double, ptr %28412, i64 %28417
  %28419 = load double, ptr %28418, align 8, !tbaa !11
  %28420 = call double @llvm.fmuladd.f64(double 0x3CCB800000000000, double %28419, double %28411)
  %28421 = load ptr, ptr %7, align 8, !tbaa !9
  %28422 = load i32, ptr %12, align 4, !tbaa !5
  %28423 = load i32, ptr %8, align 4, !tbaa !5
  %28424 = mul nsw i32 10, %28423
  %28425 = add nsw i32 %28422, %28424
  %28426 = sext i32 %28425 to i64
  %28427 = getelementptr inbounds double, ptr %28421, i64 %28426
  %28428 = load double, ptr %28427, align 8, !tbaa !11
  %28429 = call double @llvm.fmuladd.f64(double 0x40118E7E1D8191B3, double %28428, double %28420)
  %28430 = load ptr, ptr %7, align 8, !tbaa !9
  %28431 = load i32, ptr %12, align 4, !tbaa !5
  %28432 = load i32, ptr %8, align 4, !tbaa !5
  %28433 = mul nsw i32 11, %28432
  %28434 = add nsw i32 %28431, %28433
  %28435 = sext i32 %28434 to i64
  %28436 = getelementptr inbounds double, ptr %28430, i64 %28435
  %28437 = load double, ptr %28436, align 8, !tbaa !11
  %28438 = call double @llvm.fmuladd.f64(double 0xBCE1400000000000, double %28437, double %28429)
  %28439 = load ptr, ptr %7, align 8, !tbaa !9
  %28440 = load i32, ptr %12, align 4, !tbaa !5
  %28441 = load i32, ptr %8, align 4, !tbaa !5
  %28442 = mul nsw i32 12, %28441
  %28443 = add nsw i32 %28440, %28442
  %28444 = sext i32 %28443 to i64
  %28445 = getelementptr inbounds double, ptr %28439, i64 %28444
  %28446 = load double, ptr %28445, align 8, !tbaa !11
  %28447 = call double @llvm.fmuladd.f64(double 0xBCE283FFFFFFFFFF, double %28446, double %28438)
  %28448 = load ptr, ptr %7, align 8, !tbaa !9
  %28449 = load i32, ptr %12, align 4, !tbaa !5
  %28450 = load i32, ptr %8, align 4, !tbaa !5
  %28451 = mul nsw i32 13, %28450
  %28452 = add nsw i32 %28449, %28451
  %28453 = sext i32 %28452 to i64
  %28454 = getelementptr inbounds double, ptr %28448, i64 %28453
  %28455 = load double, ptr %28454, align 8, !tbaa !11
  %28456 = call double @llvm.fmuladd.f64(double 0xBCE3740000000000, double %28455, double %28447)
  %28457 = load ptr, ptr %7, align 8, !tbaa !9
  %28458 = load i32, ptr %12, align 4, !tbaa !5
  %28459 = load i32, ptr %8, align 4, !tbaa !5
  %28460 = mul nsw i32 14, %28459
  %28461 = add nsw i32 %28458, %28460
  %28462 = sext i32 %28461 to i64
  %28463 = getelementptr inbounds double, ptr %28457, i64 %28462
  %28464 = load double, ptr %28463, align 8, !tbaa !11
  %28465 = call double @llvm.fmuladd.f64(double 0x3D07D80000000000, double %28464, double %28456)
  %28466 = load ptr, ptr %7, align 8, !tbaa !9
  %28467 = load i32, ptr %12, align 4, !tbaa !5
  %28468 = load i32, ptr %8, align 4, !tbaa !5
  %28469 = mul nsw i32 15, %28468
  %28470 = add nsw i32 %28467, %28469
  %28471 = sext i32 %28470 to i64
  %28472 = getelementptr inbounds double, ptr %28466, i64 %28471
  %28473 = load double, ptr %28472, align 8, !tbaa !11
  %28474 = call double @llvm.fmuladd.f64(double 0x3D07DFFFFFFFFFFD, double %28473, double %28465)
  %28475 = load ptr, ptr %7, align 8, !tbaa !9
  %28476 = load i32, ptr %12, align 4, !tbaa !5
  %28477 = load i32, ptr %8, align 4, !tbaa !5
  %28478 = mul nsw i32 16, %28477
  %28479 = add nsw i32 %28476, %28478
  %28480 = sext i32 %28479 to i64
  %28481 = getelementptr inbounds double, ptr %28475, i64 %28480
  %28482 = load double, ptr %28481, align 8, !tbaa !11
  %28483 = call double @llvm.fmuladd.f64(double 0x3D06F80000000003, double %28482, double %28474)
  %28484 = load ptr, ptr %7, align 8, !tbaa !9
  %28485 = load i32, ptr %12, align 4, !tbaa !5
  %28486 = load i32, ptr %8, align 4, !tbaa !5
  %28487 = mul nsw i32 17, %28486
  %28488 = add nsw i32 %28485, %28487
  %28489 = sext i32 %28488 to i64
  %28490 = getelementptr inbounds double, ptr %28484, i64 %28489
  %28491 = load double, ptr %28490, align 8, !tbaa !11
  %28492 = call double @llvm.fmuladd.f64(double 0x3D061A0000000000, double %28491, double %28483)
  %28493 = load ptr, ptr %7, align 8, !tbaa !9
  %28494 = load i32, ptr %12, align 4, !tbaa !5
  %28495 = load i32, ptr %8, align 4, !tbaa !5
  %28496 = mul nsw i32 18, %28495
  %28497 = add nsw i32 %28494, %28496
  %28498 = sext i32 %28497 to i64
  %28499 = getelementptr inbounds double, ptr %28493, i64 %28498
  %28500 = load double, ptr %28499, align 8, !tbaa !11
  %28501 = call double @llvm.fmuladd.f64(double 0x3D06DFFFFFFFFFFF, double %28500, double %28492)
  %28502 = load ptr, ptr %7, align 8, !tbaa !9
  %28503 = load i32, ptr %12, align 4, !tbaa !5
  %28504 = load i32, ptr %8, align 4, !tbaa !5
  %28505 = mul nsw i32 19, %28504
  %28506 = add nsw i32 %28503, %28505
  %28507 = sext i32 %28506 to i64
  %28508 = getelementptr inbounds double, ptr %28502, i64 %28507
  %28509 = load double, ptr %28508, align 8, !tbaa !11
  %28510 = call double @llvm.fmuladd.f64(double 0x3D06D80000000001, double %28509, double %28501)
  store double %28510, ptr %11, align 8, !tbaa !11
  %28511 = load double, ptr %11, align 8, !tbaa !11
  %28512 = load ptr, ptr %9, align 8, !tbaa !9
  %28513 = load i32, ptr %12, align 4, !tbaa !5
  %28514 = load i32, ptr %10, align 4, !tbaa !5
  %28515 = mul nsw i32 110, %28514
  %28516 = add nsw i32 %28513, %28515
  %28517 = sext i32 %28516 to i64
  %28518 = getelementptr inbounds double, ptr %28512, i64 %28517
  store double %28511, ptr %28518, align 8, !tbaa !11
  %28519 = load ptr, ptr %7, align 8, !tbaa !9
  %28520 = load i32, ptr %12, align 4, !tbaa !5
  %28521 = load i32, ptr %8, align 4, !tbaa !5
  %28522 = mul nsw i32 0, %28521
  %28523 = add nsw i32 %28520, %28522
  %28524 = sext i32 %28523 to i64
  %28525 = getelementptr inbounds double, ptr %28519, i64 %28524
  %28526 = load double, ptr %28525, align 8, !tbaa !11
  %28527 = load ptr, ptr %7, align 8, !tbaa !9
  %28528 = load i32, ptr %12, align 4, !tbaa !5
  %28529 = load i32, ptr %8, align 4, !tbaa !5
  %28530 = mul nsw i32 1, %28529
  %28531 = add nsw i32 %28528, %28530
  %28532 = sext i32 %28531 to i64
  %28533 = getelementptr inbounds double, ptr %28527, i64 %28532
  %28534 = load double, ptr %28533, align 8, !tbaa !11
  %28535 = fmul double 0x3FD4F58312101A82, %28534
  %28536 = call double @llvm.fmuladd.f64(double 0xBCD1000000000000, double %28526, double %28535)
  %28537 = load ptr, ptr %7, align 8, !tbaa !9
  %28538 = load i32, ptr %12, align 4, !tbaa !5
  %28539 = load i32, ptr %8, align 4, !tbaa !5
  %28540 = mul nsw i32 2, %28539
  %28541 = add nsw i32 %28538, %28540
  %28542 = sext i32 %28541 to i64
  %28543 = getelementptr inbounds double, ptr %28537, i64 %28542
  %28544 = load double, ptr %28543, align 8, !tbaa !11
  %28545 = call double @llvm.fmuladd.f64(double 0x3CBA000000000000, double %28544, double %28536)
  %28546 = load ptr, ptr %7, align 8, !tbaa !9
  %28547 = load i32, ptr %12, align 4, !tbaa !5
  %28548 = load i32, ptr %8, align 4, !tbaa !5
  %28549 = mul nsw i32 3, %28548
  %28550 = add nsw i32 %28547, %28549
  %28551 = sext i32 %28550 to i64
  %28552 = getelementptr inbounds double, ptr %28546, i64 %28551
  %28553 = load double, ptr %28552, align 8, !tbaa !11
  %28554 = call double @llvm.fmuladd.f64(double 0x3CC5000000000000, double %28553, double %28545)
  %28555 = load ptr, ptr %7, align 8, !tbaa !9
  %28556 = load i32, ptr %12, align 4, !tbaa !5
  %28557 = load i32, ptr %8, align 4, !tbaa !5
  %28558 = mul nsw i32 4, %28557
  %28559 = add nsw i32 %28556, %28558
  %28560 = sext i32 %28559 to i64
  %28561 = getelementptr inbounds double, ptr %28555, i64 %28560
  %28562 = load double, ptr %28561, align 8, !tbaa !11
  %28563 = call double @llvm.fmuladd.f64(double 0xBCCA000000000000, double %28562, double %28554)
  %28564 = load ptr, ptr %7, align 8, !tbaa !9
  %28565 = load i32, ptr %12, align 4, !tbaa !5
  %28566 = load i32, ptr %8, align 4, !tbaa !5
  %28567 = mul nsw i32 5, %28566
  %28568 = add nsw i32 %28565, %28567
  %28569 = sext i32 %28568 to i64
  %28570 = getelementptr inbounds double, ptr %28564, i64 %28569
  %28571 = load double, ptr %28570, align 8, !tbaa !11
  %28572 = call double @llvm.fmuladd.f64(double 0xBCC2000000000000, double %28571, double %28563)
  %28573 = load ptr, ptr %7, align 8, !tbaa !9
  %28574 = load i32, ptr %12, align 4, !tbaa !5
  %28575 = load i32, ptr %8, align 4, !tbaa !5
  %28576 = mul nsw i32 6, %28575
  %28577 = add nsw i32 %28574, %28576
  %28578 = sext i32 %28577 to i64
  %28579 = getelementptr inbounds double, ptr %28573, i64 %28578
  %28580 = load double, ptr %28579, align 8, !tbaa !11
  %28581 = call double @llvm.fmuladd.f64(double 0x3CD1800000000000, double %28580, double %28572)
  %28582 = load ptr, ptr %7, align 8, !tbaa !9
  %28583 = load i32, ptr %12, align 4, !tbaa !5
  %28584 = load i32, ptr %8, align 4, !tbaa !5
  %28585 = mul nsw i32 7, %28584
  %28586 = add nsw i32 %28583, %28585
  %28587 = sext i32 %28586 to i64
  %28588 = getelementptr inbounds double, ptr %28582, i64 %28587
  %28589 = load double, ptr %28588, align 8, !tbaa !11
  %28590 = call double @llvm.fmuladd.f64(double 0x3CCF800000000000, double %28589, double %28581)
  %28591 = load ptr, ptr %7, align 8, !tbaa !9
  %28592 = load i32, ptr %12, align 4, !tbaa !5
  %28593 = load i32, ptr %8, align 4, !tbaa !5
  %28594 = mul nsw i32 8, %28593
  %28595 = add nsw i32 %28592, %28594
  %28596 = sext i32 %28595 to i64
  %28597 = getelementptr inbounds double, ptr %28591, i64 %28596
  %28598 = load double, ptr %28597, align 8, !tbaa !11
  %28599 = call double @llvm.fmuladd.f64(double 0x3CF1400000000000, double %28598, double %28590)
  %28600 = load ptr, ptr %7, align 8, !tbaa !9
  %28601 = load i32, ptr %12, align 4, !tbaa !5
  %28602 = load i32, ptr %8, align 4, !tbaa !5
  %28603 = mul nsw i32 9, %28602
  %28604 = add nsw i32 %28601, %28603
  %28605 = sext i32 %28604 to i64
  %28606 = getelementptr inbounds double, ptr %28600, i64 %28605
  %28607 = load double, ptr %28606, align 8, !tbaa !11
  %28608 = call double @llvm.fmuladd.f64(double 0x3CF0400000000000, double %28607, double %28599)
  %28609 = load ptr, ptr %7, align 8, !tbaa !9
  %28610 = load i32, ptr %12, align 4, !tbaa !5
  %28611 = load i32, ptr %8, align 4, !tbaa !5
  %28612 = mul nsw i32 10, %28611
  %28613 = add nsw i32 %28610, %28612
  %28614 = sext i32 %28613 to i64
  %28615 = getelementptr inbounds double, ptr %28609, i64 %28614
  %28616 = load double, ptr %28615, align 8, !tbaa !11
  %28617 = call double @llvm.fmuladd.f64(double 0xBD128FFFFFFFFFFF, double %28616, double %28608)
  %28618 = load ptr, ptr %7, align 8, !tbaa !9
  %28619 = load i32, ptr %12, align 4, !tbaa !5
  %28620 = load i32, ptr %8, align 4, !tbaa !5
  %28621 = mul nsw i32 11, %28620
  %28622 = add nsw i32 %28619, %28621
  %28623 = sext i32 %28622 to i64
  %28624 = getelementptr inbounds double, ptr %28618, i64 %28623
  %28625 = load double, ptr %28624, align 8, !tbaa !11
  %28626 = call double @llvm.fmuladd.f64(double 0x40118E7E1D819110, double %28625, double %28617)
  %28627 = load ptr, ptr %7, align 8, !tbaa !9
  %28628 = load i32, ptr %12, align 4, !tbaa !5
  %28629 = load i32, ptr %8, align 4, !tbaa !5
  %28630 = mul nsw i32 12, %28629
  %28631 = add nsw i32 %28628, %28630
  %28632 = sext i32 %28631 to i64
  %28633 = getelementptr inbounds double, ptr %28627, i64 %28632
  %28634 = load double, ptr %28633, align 8, !tbaa !11
  %28635 = call double @llvm.fmuladd.f64(double 0x3CFD900000000000, double %28634, double %28626)
  %28636 = load ptr, ptr %7, align 8, !tbaa !9
  %28637 = load i32, ptr %12, align 4, !tbaa !5
  %28638 = load i32, ptr %8, align 4, !tbaa !5
  %28639 = mul nsw i32 13, %28638
  %28640 = add nsw i32 %28637, %28639
  %28641 = sext i32 %28640 to i64
  %28642 = getelementptr inbounds double, ptr %28636, i64 %28641
  %28643 = load double, ptr %28642, align 8, !tbaa !11
  %28644 = call double @llvm.fmuladd.f64(double 0x3D01500000000000, double %28643, double %28635)
  %28645 = load ptr, ptr %7, align 8, !tbaa !9
  %28646 = load i32, ptr %12, align 4, !tbaa !5
  %28647 = load i32, ptr %8, align 4, !tbaa !5
  %28648 = mul nsw i32 14, %28647
  %28649 = add nsw i32 %28646, %28648
  %28650 = sext i32 %28649 to i64
  %28651 = getelementptr inbounds double, ptr %28645, i64 %28650
  %28652 = load double, ptr %28651, align 8, !tbaa !11
  %28653 = call double @llvm.fmuladd.f64(double 0xBD04A00000000000, double %28652, double %28644)
  %28654 = load ptr, ptr %7, align 8, !tbaa !9
  %28655 = load i32, ptr %12, align 4, !tbaa !5
  %28656 = load i32, ptr %8, align 4, !tbaa !5
  %28657 = mul nsw i32 15, %28656
  %28658 = add nsw i32 %28655, %28657
  %28659 = sext i32 %28658 to i64
  %28660 = getelementptr inbounds double, ptr %28654, i64 %28659
  %28661 = load double, ptr %28660, align 8, !tbaa !11
  %28662 = call double @llvm.fmuladd.f64(double 0xBD02E00000000000, double %28661, double %28653)
  %28663 = load ptr, ptr %7, align 8, !tbaa !9
  %28664 = load i32, ptr %12, align 4, !tbaa !5
  %28665 = load i32, ptr %8, align 4, !tbaa !5
  %28666 = mul nsw i32 16, %28665
  %28667 = add nsw i32 %28664, %28666
  %28668 = sext i32 %28667 to i64
  %28669 = getelementptr inbounds double, ptr %28663, i64 %28668
  %28670 = load double, ptr %28669, align 8, !tbaa !11
  %28671 = call double @llvm.fmuladd.f64(double 0x3D07300000000002, double %28670, double %28662)
  %28672 = load ptr, ptr %7, align 8, !tbaa !9
  %28673 = load i32, ptr %12, align 4, !tbaa !5
  %28674 = load i32, ptr %8, align 4, !tbaa !5
  %28675 = mul nsw i32 17, %28674
  %28676 = add nsw i32 %28673, %28675
  %28677 = sext i32 %28676 to i64
  %28678 = getelementptr inbounds double, ptr %28672, i64 %28677
  %28679 = load double, ptr %28678, align 8, !tbaa !11
  %28680 = call double @llvm.fmuladd.f64(double 0x3D03980000000000, double %28679, double %28671)
  %28681 = load ptr, ptr %7, align 8, !tbaa !9
  %28682 = load i32, ptr %12, align 4, !tbaa !5
  %28683 = load i32, ptr %8, align 4, !tbaa !5
  %28684 = mul nsw i32 18, %28683
  %28685 = add nsw i32 %28682, %28684
  %28686 = sext i32 %28685 to i64
  %28687 = getelementptr inbounds double, ptr %28681, i64 %28686
  %28688 = load double, ptr %28687, align 8, !tbaa !11
  %28689 = call double @llvm.fmuladd.f64(double 0x3D2A980000000000, double %28688, double %28680)
  %28690 = load ptr, ptr %7, align 8, !tbaa !9
  %28691 = load i32, ptr %12, align 4, !tbaa !5
  %28692 = load i32, ptr %8, align 4, !tbaa !5
  %28693 = mul nsw i32 19, %28692
  %28694 = add nsw i32 %28691, %28693
  %28695 = sext i32 %28694 to i64
  %28696 = getelementptr inbounds double, ptr %28690, i64 %28695
  %28697 = load double, ptr %28696, align 8, !tbaa !11
  %28698 = call double @llvm.fmuladd.f64(double 0x3D2A480000000000, double %28697, double %28689)
  store double %28698, ptr %11, align 8, !tbaa !11
  %28699 = load double, ptr %11, align 8, !tbaa !11
  %28700 = load ptr, ptr %9, align 8, !tbaa !9
  %28701 = load i32, ptr %12, align 4, !tbaa !5
  %28702 = load i32, ptr %10, align 4, !tbaa !5
  %28703 = mul nsw i32 111, %28702
  %28704 = add nsw i32 %28701, %28703
  %28705 = sext i32 %28704 to i64
  %28706 = getelementptr inbounds double, ptr %28700, i64 %28705
  store double %28699, ptr %28706, align 8, !tbaa !11
  %28707 = load ptr, ptr %7, align 8, !tbaa !9
  %28708 = load i32, ptr %12, align 4, !tbaa !5
  %28709 = load i32, ptr %8, align 4, !tbaa !5
  %28710 = mul nsw i32 0, %28709
  %28711 = add nsw i32 %28708, %28710
  %28712 = sext i32 %28711 to i64
  %28713 = getelementptr inbounds double, ptr %28707, i64 %28712
  %28714 = load double, ptr %28713, align 8, !tbaa !11
  %28715 = load ptr, ptr %7, align 8, !tbaa !9
  %28716 = load i32, ptr %12, align 4, !tbaa !5
  %28717 = load i32, ptr %8, align 4, !tbaa !5
  %28718 = mul nsw i32 1, %28717
  %28719 = add nsw i32 %28716, %28718
  %28720 = sext i32 %28719 to i64
  %28721 = getelementptr inbounds double, ptr %28715, i64 %28720
  %28722 = load double, ptr %28721, align 8, !tbaa !11
  %28723 = fmul double 0x3CC0800000000000, %28722
  %28724 = call double @llvm.fmuladd.f64(double 0xBCDA400000000000, double %28714, double %28723)
  %28725 = load ptr, ptr %7, align 8, !tbaa !9
  %28726 = load i32, ptr %12, align 4, !tbaa !5
  %28727 = load i32, ptr %8, align 4, !tbaa !5
  %28728 = mul nsw i32 2, %28727
  %28729 = add nsw i32 %28726, %28728
  %28730 = sext i32 %28729 to i64
  %28731 = getelementptr inbounds double, ptr %28725, i64 %28730
  %28732 = load double, ptr %28731, align 8, !tbaa !11
  %28733 = call double @llvm.fmuladd.f64(double 0x3FD4F58312101A79, double %28732, double %28724)
  %28734 = load ptr, ptr %7, align 8, !tbaa !9
  %28735 = load i32, ptr %12, align 4, !tbaa !5
  %28736 = load i32, ptr %8, align 4, !tbaa !5
  %28737 = mul nsw i32 3, %28736
  %28738 = add nsw i32 %28735, %28737
  %28739 = sext i32 %28738 to i64
  %28740 = getelementptr inbounds double, ptr %28734, i64 %28739
  %28741 = load double, ptr %28740, align 8, !tbaa !11
  %28742 = call double @llvm.fmuladd.f64(double 0x3CCB800000000000, double %28741, double %28733)
  %28743 = load ptr, ptr %7, align 8, !tbaa !9
  %28744 = load i32, ptr %12, align 4, !tbaa !5
  %28745 = load i32, ptr %8, align 4, !tbaa !5
  %28746 = mul nsw i32 4, %28745
  %28747 = add nsw i32 %28744, %28746
  %28748 = sext i32 %28747 to i64
  %28749 = getelementptr inbounds double, ptr %28743, i64 %28748
  %28750 = load double, ptr %28749, align 8, !tbaa !11
  %28751 = call double @llvm.fmuladd.f64(double 0x3CEDEFFFFFFFFFFF, double %28750, double %28742)
  %28752 = load ptr, ptr %7, align 8, !tbaa !9
  %28753 = load i32, ptr %12, align 4, !tbaa !5
  %28754 = load i32, ptr %8, align 4, !tbaa !5
  %28755 = mul nsw i32 5, %28754
  %28756 = add nsw i32 %28753, %28755
  %28757 = sext i32 %28756 to i64
  %28758 = getelementptr inbounds double, ptr %28752, i64 %28757
  %28759 = load double, ptr %28758, align 8, !tbaa !11
  %28760 = call double @llvm.fmuladd.f64(double 0x3CC7400000000000, double %28759, double %28751)
  %28761 = load ptr, ptr %7, align 8, !tbaa !9
  %28762 = load i32, ptr %12, align 4, !tbaa !5
  %28763 = load i32, ptr %8, align 4, !tbaa !5
  %28764 = mul nsw i32 6, %28763
  %28765 = add nsw i32 %28762, %28764
  %28766 = sext i32 %28765 to i64
  %28767 = getelementptr inbounds double, ptr %28761, i64 %28766
  %28768 = load double, ptr %28767, align 8, !tbaa !11
  %28769 = call double @llvm.fmuladd.f64(double 0xBCBBC00000000001, double %28768, double %28760)
  %28770 = load ptr, ptr %7, align 8, !tbaa !9
  %28771 = load i32, ptr %12, align 4, !tbaa !5
  %28772 = load i32, ptr %8, align 4, !tbaa !5
  %28773 = mul nsw i32 7, %28772
  %28774 = add nsw i32 %28771, %28773
  %28775 = sext i32 %28774 to i64
  %28776 = getelementptr inbounds double, ptr %28770, i64 %28775
  %28777 = load double, ptr %28776, align 8, !tbaa !11
  %28778 = call double @llvm.fmuladd.f64(double 0x3CF03C0000000000, double %28777, double %28769)
  %28779 = load ptr, ptr %7, align 8, !tbaa !9
  %28780 = load i32, ptr %12, align 4, !tbaa !5
  %28781 = load i32, ptr %8, align 4, !tbaa !5
  %28782 = mul nsw i32 8, %28781
  %28783 = add nsw i32 %28780, %28782
  %28784 = sext i32 %28783 to i64
  %28785 = getelementptr inbounds double, ptr %28779, i64 %28784
  %28786 = load double, ptr %28785, align 8, !tbaa !11
  %28787 = call double @llvm.fmuladd.f64(double 0x3CC3800000000000, double %28786, double %28778)
  %28788 = load ptr, ptr %7, align 8, !tbaa !9
  %28789 = load i32, ptr %12, align 4, !tbaa !5
  %28790 = load i32, ptr %8, align 4, !tbaa !5
  %28791 = mul nsw i32 9, %28790
  %28792 = add nsw i32 %28789, %28791
  %28793 = sext i32 %28792 to i64
  %28794 = getelementptr inbounds double, ptr %28788, i64 %28793
  %28795 = load double, ptr %28794, align 8, !tbaa !11
  %28796 = call double @llvm.fmuladd.f64(double 0xBCD0000000000000, double %28795, double %28787)
  %28797 = load ptr, ptr %7, align 8, !tbaa !9
  %28798 = load i32, ptr %12, align 4, !tbaa !5
  %28799 = load i32, ptr %8, align 4, !tbaa !5
  %28800 = mul nsw i32 10, %28799
  %28801 = add nsw i32 %28798, %28800
  %28802 = sext i32 %28801 to i64
  %28803 = getelementptr inbounds double, ptr %28797, i64 %28802
  %28804 = load double, ptr %28803, align 8, !tbaa !11
  %28805 = call double @llvm.fmuladd.f64(double 0xBD11640000000000, double %28804, double %28796)
  %28806 = load ptr, ptr %7, align 8, !tbaa !9
  %28807 = load i32, ptr %12, align 4, !tbaa !5
  %28808 = load i32, ptr %8, align 4, !tbaa !5
  %28809 = mul nsw i32 11, %28808
  %28810 = add nsw i32 %28807, %28809
  %28811 = sext i32 %28810 to i64
  %28812 = getelementptr inbounds double, ptr %28806, i64 %28811
  %28813 = load double, ptr %28812, align 8, !tbaa !11
  %28814 = call double @llvm.fmuladd.f64(double 0x3CFF700000000000, double %28813, double %28805)
  %28815 = load ptr, ptr %7, align 8, !tbaa !9
  %28816 = load i32, ptr %12, align 4, !tbaa !5
  %28817 = load i32, ptr %8, align 4, !tbaa !5
  %28818 = mul nsw i32 12, %28817
  %28819 = add nsw i32 %28816, %28818
  %28820 = sext i32 %28819 to i64
  %28821 = getelementptr inbounds double, ptr %28815, i64 %28820
  %28822 = load double, ptr %28821, align 8, !tbaa !11
  %28823 = call double @llvm.fmuladd.f64(double 0x40118E7E1D81910D, double %28822, double %28814)
  %28824 = load ptr, ptr %7, align 8, !tbaa !9
  %28825 = load i32, ptr %12, align 4, !tbaa !5
  %28826 = load i32, ptr %8, align 4, !tbaa !5
  %28827 = mul nsw i32 13, %28826
  %28828 = add nsw i32 %28825, %28827
  %28829 = sext i32 %28828 to i64
  %28830 = getelementptr inbounds double, ptr %28824, i64 %28829
  %28831 = load double, ptr %28830, align 8, !tbaa !11
  %28832 = call double @llvm.fmuladd.f64(double 0x3CFDD00000000000, double %28831, double %28823)
  %28833 = load ptr, ptr %7, align 8, !tbaa !9
  %28834 = load i32, ptr %12, align 4, !tbaa !5
  %28835 = load i32, ptr %8, align 4, !tbaa !5
  %28836 = mul nsw i32 14, %28835
  %28837 = add nsw i32 %28834, %28836
  %28838 = sext i32 %28837 to i64
  %28839 = getelementptr inbounds double, ptr %28833, i64 %28838
  %28840 = load double, ptr %28839, align 8, !tbaa !11
  %28841 = call double @llvm.fmuladd.f64(double 0x3D2AFF0000000001, double %28840, double %28832)
  %28842 = load ptr, ptr %7, align 8, !tbaa !9
  %28843 = load i32, ptr %12, align 4, !tbaa !5
  %28844 = load i32, ptr %8, align 4, !tbaa !5
  %28845 = mul nsw i32 15, %28844
  %28846 = add nsw i32 %28843, %28845
  %28847 = sext i32 %28846 to i64
  %28848 = getelementptr inbounds double, ptr %28842, i64 %28847
  %28849 = load double, ptr %28848, align 8, !tbaa !11
  %28850 = call double @llvm.fmuladd.f64(double 0x3D05940000000000, double %28849, double %28841)
  %28851 = load ptr, ptr %7, align 8, !tbaa !9
  %28852 = load i32, ptr %12, align 4, !tbaa !5
  %28853 = load i32, ptr %8, align 4, !tbaa !5
  %28854 = mul nsw i32 16, %28853
  %28855 = add nsw i32 %28852, %28854
  %28856 = sext i32 %28855 to i64
  %28857 = getelementptr inbounds double, ptr %28851, i64 %28856
  %28858 = load double, ptr %28857, align 8, !tbaa !11
  %28859 = call double @llvm.fmuladd.f64(double 0xBCFD7C0000000000, double %28858, double %28850)
  %28860 = load ptr, ptr %7, align 8, !tbaa !9
  %28861 = load i32, ptr %12, align 4, !tbaa !5
  %28862 = load i32, ptr %8, align 4, !tbaa !5
  %28863 = mul nsw i32 17, %28862
  %28864 = add nsw i32 %28861, %28863
  %28865 = sext i32 %28864 to i64
  %28866 = getelementptr inbounds double, ptr %28860, i64 %28865
  %28867 = load double, ptr %28866, align 8, !tbaa !11
  %28868 = call double @llvm.fmuladd.f64(double 0x3D2BB78000000000, double %28867, double %28859)
  %28869 = load ptr, ptr %7, align 8, !tbaa !9
  %28870 = load i32, ptr %12, align 4, !tbaa !5
  %28871 = load i32, ptr %8, align 4, !tbaa !5
  %28872 = mul nsw i32 18, %28871
  %28873 = add nsw i32 %28870, %28872
  %28874 = sext i32 %28873 to i64
  %28875 = getelementptr inbounds double, ptr %28869, i64 %28874
  %28876 = load double, ptr %28875, align 8, !tbaa !11
  %28877 = call double @llvm.fmuladd.f64(double 0x3D06580000000000, double %28876, double %28868)
  %28878 = load ptr, ptr %7, align 8, !tbaa !9
  %28879 = load i32, ptr %12, align 4, !tbaa !5
  %28880 = load i32, ptr %8, align 4, !tbaa !5
  %28881 = mul nsw i32 19, %28880
  %28882 = add nsw i32 %28879, %28881
  %28883 = sext i32 %28882 to i64
  %28884 = getelementptr inbounds double, ptr %28878, i64 %28883
  %28885 = load double, ptr %28884, align 8, !tbaa !11
  %28886 = call double @llvm.fmuladd.f64(double 0xBD03000000000000, double %28885, double %28877)
  store double %28886, ptr %11, align 8, !tbaa !11
  %28887 = load double, ptr %11, align 8, !tbaa !11
  %28888 = load ptr, ptr %9, align 8, !tbaa !9
  %28889 = load i32, ptr %12, align 4, !tbaa !5
  %28890 = load i32, ptr %10, align 4, !tbaa !5
  %28891 = mul nsw i32 112, %28890
  %28892 = add nsw i32 %28889, %28891
  %28893 = sext i32 %28892 to i64
  %28894 = getelementptr inbounds double, ptr %28888, i64 %28893
  store double %28887, ptr %28894, align 8, !tbaa !11
  %28895 = load ptr, ptr %7, align 8, !tbaa !9
  %28896 = load i32, ptr %12, align 4, !tbaa !5
  %28897 = load i32, ptr %8, align 4, !tbaa !5
  %28898 = mul nsw i32 0, %28897
  %28899 = add nsw i32 %28896, %28898
  %28900 = sext i32 %28899 to i64
  %28901 = getelementptr inbounds double, ptr %28895, i64 %28900
  %28902 = load double, ptr %28901, align 8, !tbaa !11
  %28903 = load ptr, ptr %7, align 8, !tbaa !9
  %28904 = load i32, ptr %12, align 4, !tbaa !5
  %28905 = load i32, ptr %8, align 4, !tbaa !5
  %28906 = mul nsw i32 1, %28905
  %28907 = add nsw i32 %28904, %28906
  %28908 = sext i32 %28907 to i64
  %28909 = getelementptr inbounds double, ptr %28903, i64 %28908
  %28910 = load double, ptr %28909, align 8, !tbaa !11
  %28911 = fmul double 0x3CC0800000000000, %28910
  %28912 = call double @llvm.fmuladd.f64(double 0xBCD93FFFFFFFFFFF, double %28902, double %28911)
  %28913 = load ptr, ptr %7, align 8, !tbaa !9
  %28914 = load i32, ptr %12, align 4, !tbaa !5
  %28915 = load i32, ptr %8, align 4, !tbaa !5
  %28916 = mul nsw i32 2, %28915
  %28917 = add nsw i32 %28914, %28916
  %28918 = sext i32 %28917 to i64
  %28919 = getelementptr inbounds double, ptr %28913, i64 %28918
  %28920 = load double, ptr %28919, align 8, !tbaa !11
  %28921 = call double @llvm.fmuladd.f64(double 0x3CC0600000000000, double %28920, double %28912)
  %28922 = load ptr, ptr %7, align 8, !tbaa !9
  %28923 = load i32, ptr %12, align 4, !tbaa !5
  %28924 = load i32, ptr %8, align 4, !tbaa !5
  %28925 = mul nsw i32 3, %28924
  %28926 = add nsw i32 %28923, %28925
  %28927 = sext i32 %28926 to i64
  %28928 = getelementptr inbounds double, ptr %28922, i64 %28927
  %28929 = load double, ptr %28928, align 8, !tbaa !11
  %28930 = call double @llvm.fmuladd.f64(double 0x3FD4F58312101A7B, double %28929, double %28921)
  %28931 = load ptr, ptr %7, align 8, !tbaa !9
  %28932 = load i32, ptr %12, align 4, !tbaa !5
  %28933 = load i32, ptr %8, align 4, !tbaa !5
  %28934 = mul nsw i32 4, %28933
  %28935 = add nsw i32 %28932, %28934
  %28936 = sext i32 %28935 to i64
  %28937 = getelementptr inbounds double, ptr %28931, i64 %28936
  %28938 = load double, ptr %28937, align 8, !tbaa !11
  %28939 = call double @llvm.fmuladd.f64(double 0x3CC8C00000000000, double %28938, double %28930)
  %28940 = load ptr, ptr %7, align 8, !tbaa !9
  %28941 = load i32, ptr %12, align 4, !tbaa !5
  %28942 = load i32, ptr %8, align 4, !tbaa !5
  %28943 = mul nsw i32 5, %28942
  %28944 = add nsw i32 %28941, %28943
  %28945 = sext i32 %28944 to i64
  %28946 = getelementptr inbounds double, ptr %28940, i64 %28945
  %28947 = load double, ptr %28946, align 8, !tbaa !11
  %28948 = call double @llvm.fmuladd.f64(double 0x3CEED00000000001, double %28947, double %28939)
  %28949 = load ptr, ptr %7, align 8, !tbaa !9
  %28950 = load i32, ptr %12, align 4, !tbaa !5
  %28951 = load i32, ptr %8, align 4, !tbaa !5
  %28952 = mul nsw i32 6, %28951
  %28953 = add nsw i32 %28950, %28952
  %28954 = sext i32 %28953 to i64
  %28955 = getelementptr inbounds double, ptr %28949, i64 %28954
  %28956 = load double, ptr %28955, align 8, !tbaa !11
  %28957 = call double @llvm.fmuladd.f64(double 0x3CEFF7FFFFFFFFFF, double %28956, double %28948)
  %28958 = load ptr, ptr %7, align 8, !tbaa !9
  %28959 = load i32, ptr %12, align 4, !tbaa !5
  %28960 = load i32, ptr %8, align 4, !tbaa !5
  %28961 = mul nsw i32 7, %28960
  %28962 = add nsw i32 %28959, %28961
  %28963 = sext i32 %28962 to i64
  %28964 = getelementptr inbounds double, ptr %28958, i64 %28963
  %28965 = load double, ptr %28964, align 8, !tbaa !11
  %28966 = call double @llvm.fmuladd.f64(double 0xBCCCE00000000000, double %28965, double %28957)
  %28967 = load ptr, ptr %7, align 8, !tbaa !9
  %28968 = load i32, ptr %12, align 4, !tbaa !5
  %28969 = load i32, ptr %8, align 4, !tbaa !5
  %28970 = mul nsw i32 8, %28969
  %28971 = add nsw i32 %28968, %28970
  %28972 = sext i32 %28971 to i64
  %28973 = getelementptr inbounds double, ptr %28967, i64 %28972
  %28974 = load double, ptr %28973, align 8, !tbaa !11
  %28975 = call double @llvm.fmuladd.f64(double 0xBCC2000000000000, double %28974, double %28966)
  %28976 = load ptr, ptr %7, align 8, !tbaa !9
  %28977 = load i32, ptr %12, align 4, !tbaa !5
  %28978 = load i32, ptr %8, align 4, !tbaa !5
  %28979 = mul nsw i32 9, %28978
  %28980 = add nsw i32 %28977, %28979
  %28981 = sext i32 %28980 to i64
  %28982 = getelementptr inbounds double, ptr %28976, i64 %28981
  %28983 = load double, ptr %28982, align 8, !tbaa !11
  %28984 = call double @llvm.fmuladd.f64(double 0x3CC9800000000000, double %28983, double %28975)
  %28985 = load ptr, ptr %7, align 8, !tbaa !9
  %28986 = load i32, ptr %12, align 4, !tbaa !5
  %28987 = load i32, ptr %8, align 4, !tbaa !5
  %28988 = mul nsw i32 10, %28987
  %28989 = add nsw i32 %28986, %28988
  %28990 = sext i32 %28989 to i64
  %28991 = getelementptr inbounds double, ptr %28985, i64 %28990
  %28992 = load double, ptr %28991, align 8, !tbaa !11
  %28993 = call double @llvm.fmuladd.f64(double 0xBD11F40000000000, double %28992, double %28984)
  %28994 = load ptr, ptr %7, align 8, !tbaa !9
  %28995 = load i32, ptr %12, align 4, !tbaa !5
  %28996 = load i32, ptr %8, align 4, !tbaa !5
  %28997 = mul nsw i32 11, %28996
  %28998 = add nsw i32 %28995, %28997
  %28999 = sext i32 %28998 to i64
  %29000 = getelementptr inbounds double, ptr %28994, i64 %28999
  %29001 = load double, ptr %29000, align 8, !tbaa !11
  %29002 = call double @llvm.fmuladd.f64(double 0x3CFDF00000000000, double %29001, double %28993)
  %29003 = load ptr, ptr %7, align 8, !tbaa !9
  %29004 = load i32, ptr %12, align 4, !tbaa !5
  %29005 = load i32, ptr %8, align 4, !tbaa !5
  %29006 = mul nsw i32 12, %29005
  %29007 = add nsw i32 %29004, %29006
  %29008 = sext i32 %29007 to i64
  %29009 = getelementptr inbounds double, ptr %29003, i64 %29008
  %29010 = load double, ptr %29009, align 8, !tbaa !11
  %29011 = call double @llvm.fmuladd.f64(double 0x3CFE2C0000000000, double %29010, double %29002)
  %29012 = load ptr, ptr %7, align 8, !tbaa !9
  %29013 = load i32, ptr %12, align 4, !tbaa !5
  %29014 = load i32, ptr %8, align 4, !tbaa !5
  %29015 = mul nsw i32 13, %29014
  %29016 = add nsw i32 %29013, %29015
  %29017 = sext i32 %29016 to i64
  %29018 = getelementptr inbounds double, ptr %29012, i64 %29017
  %29019 = load double, ptr %29018, align 8, !tbaa !11
  %29020 = call double @llvm.fmuladd.f64(double 0x40118E7E1D81910E, double %29019, double %29011)
  %29021 = load ptr, ptr %7, align 8, !tbaa !9
  %29022 = load i32, ptr %12, align 4, !tbaa !5
  %29023 = load i32, ptr %8, align 4, !tbaa !5
  %29024 = mul nsw i32 14, %29023
  %29025 = add nsw i32 %29022, %29024
  %29026 = sext i32 %29025 to i64
  %29027 = getelementptr inbounds double, ptr %29021, i64 %29026
  %29028 = load double, ptr %29027, align 8, !tbaa !11
  %29029 = call double @llvm.fmuladd.f64(double 0x3D05CC0000000000, double %29028, double %29020)
  %29030 = load ptr, ptr %7, align 8, !tbaa !9
  %29031 = load i32, ptr %12, align 4, !tbaa !5
  %29032 = load i32, ptr %8, align 4, !tbaa !5
  %29033 = mul nsw i32 15, %29032
  %29034 = add nsw i32 %29031, %29033
  %29035 = sext i32 %29034 to i64
  %29036 = getelementptr inbounds double, ptr %29030, i64 %29035
  %29037 = load double, ptr %29036, align 8, !tbaa !11
  %29038 = call double @llvm.fmuladd.f64(double 0x3D2B7D0000000001, double %29037, double %29029)
  %29039 = load ptr, ptr %7, align 8, !tbaa !9
  %29040 = load i32, ptr %12, align 4, !tbaa !5
  %29041 = load i32, ptr %8, align 4, !tbaa !5
  %29042 = mul nsw i32 16, %29041
  %29043 = add nsw i32 %29040, %29042
  %29044 = sext i32 %29043 to i64
  %29045 = getelementptr inbounds double, ptr %29039, i64 %29044
  %29046 = load double, ptr %29045, align 8, !tbaa !11
  %29047 = call double @llvm.fmuladd.f64(double 0x3D2A8F8000000000, double %29046, double %29038)
  %29048 = load ptr, ptr %7, align 8, !tbaa !9
  %29049 = load i32, ptr %12, align 4, !tbaa !5
  %29050 = load i32, ptr %8, align 4, !tbaa !5
  %29051 = mul nsw i32 17, %29050
  %29052 = add nsw i32 %29049, %29051
  %29053 = sext i32 %29052 to i64
  %29054 = getelementptr inbounds double, ptr %29048, i64 %29053
  %29055 = load double, ptr %29054, align 8, !tbaa !11
  %29056 = call double @llvm.fmuladd.f64(double 0xBCF99C0000000000, double %29055, double %29047)
  %29057 = load ptr, ptr %7, align 8, !tbaa !9
  %29058 = load i32, ptr %12, align 4, !tbaa !5
  %29059 = load i32, ptr %8, align 4, !tbaa !5
  %29060 = mul nsw i32 18, %29059
  %29061 = add nsw i32 %29058, %29060
  %29062 = sext i32 %29061 to i64
  %29063 = getelementptr inbounds double, ptr %29057, i64 %29062
  %29064 = load double, ptr %29063, align 8, !tbaa !11
  %29065 = call double @llvm.fmuladd.f64(double 0xBD02C00000000000, double %29064, double %29056)
  %29066 = load ptr, ptr %7, align 8, !tbaa !9
  %29067 = load i32, ptr %12, align 4, !tbaa !5
  %29068 = load i32, ptr %8, align 4, !tbaa !5
  %29069 = mul nsw i32 19, %29068
  %29070 = add nsw i32 %29067, %29069
  %29071 = sext i32 %29070 to i64
  %29072 = getelementptr inbounds double, ptr %29066, i64 %29071
  %29073 = load double, ptr %29072, align 8, !tbaa !11
  %29074 = call double @llvm.fmuladd.f64(double 0x3D06F80000000003, double %29073, double %29065)
  store double %29074, ptr %11, align 8, !tbaa !11
  %29075 = load double, ptr %11, align 8, !tbaa !11
  %29076 = load ptr, ptr %9, align 8, !tbaa !9
  %29077 = load i32, ptr %12, align 4, !tbaa !5
  %29078 = load i32, ptr %10, align 4, !tbaa !5
  %29079 = mul nsw i32 113, %29078
  %29080 = add nsw i32 %29077, %29079
  %29081 = sext i32 %29080 to i64
  %29082 = getelementptr inbounds double, ptr %29076, i64 %29081
  store double %29075, ptr %29082, align 8, !tbaa !11
  %29083 = load ptr, ptr %7, align 8, !tbaa !9
  %29084 = load i32, ptr %12, align 4, !tbaa !5
  %29085 = load i32, ptr %8, align 4, !tbaa !5
  %29086 = mul nsw i32 0, %29085
  %29087 = add nsw i32 %29084, %29086
  %29088 = sext i32 %29087 to i64
  %29089 = getelementptr inbounds double, ptr %29083, i64 %29088
  %29090 = load double, ptr %29089, align 8, !tbaa !11
  %29091 = load ptr, ptr %7, align 8, !tbaa !9
  %29092 = load i32, ptr %12, align 4, !tbaa !5
  %29093 = load i32, ptr %8, align 4, !tbaa !5
  %29094 = mul nsw i32 1, %29093
  %29095 = add nsw i32 %29092, %29094
  %29096 = sext i32 %29095 to i64
  %29097 = getelementptr inbounds double, ptr %29091, i64 %29096
  %29098 = load double, ptr %29097, align 8, !tbaa !11
  %29099 = fmul double 0xBC98000000000000, %29098
  %29100 = call double @llvm.fmuladd.f64(double 0x3CD73FFFFFFFFFFE, double %29090, double %29099)
  %29101 = load ptr, ptr %7, align 8, !tbaa !9
  %29102 = load i32, ptr %12, align 4, !tbaa !5
  %29103 = load i32, ptr %8, align 4, !tbaa !5
  %29104 = mul nsw i32 2, %29103
  %29105 = add nsw i32 %29102, %29104
  %29106 = sext i32 %29105 to i64
  %29107 = getelementptr inbounds double, ptr %29101, i64 %29106
  %29108 = load double, ptr %29107, align 8, !tbaa !11
  %29109 = call double @llvm.fmuladd.f64(double 0x3CDACFFFFFFFFFFE, double %29108, double %29100)
  %29110 = load ptr, ptr %7, align 8, !tbaa !9
  %29111 = load i32, ptr %12, align 4, !tbaa !5
  %29112 = load i32, ptr %8, align 4, !tbaa !5
  %29113 = mul nsw i32 3, %29112
  %29114 = add nsw i32 %29111, %29113
  %29115 = sext i32 %29114 to i64
  %29116 = getelementptr inbounds double, ptr %29110, i64 %29115
  %29117 = load double, ptr %29116, align 8, !tbaa !11
  %29118 = call double @llvm.fmuladd.f64(double 0x3CB2C00000000001, double %29117, double %29109)
  %29119 = load ptr, ptr %7, align 8, !tbaa !9
  %29120 = load i32, ptr %12, align 4, !tbaa !5
  %29121 = load i32, ptr %8, align 4, !tbaa !5
  %29122 = mul nsw i32 4, %29121
  %29123 = add nsw i32 %29120, %29122
  %29124 = sext i32 %29123 to i64
  %29125 = getelementptr inbounds double, ptr %29119, i64 %29124
  %29126 = load double, ptr %29125, align 8, !tbaa !11
  %29127 = call double @llvm.fmuladd.f64(double 0x3FD4F58312101B3F, double %29126, double %29118)
  %29128 = load ptr, ptr %7, align 8, !tbaa !9
  %29129 = load i32, ptr %12, align 4, !tbaa !5
  %29130 = load i32, ptr %8, align 4, !tbaa !5
  %29131 = mul nsw i32 5, %29130
  %29132 = add nsw i32 %29129, %29131
  %29133 = sext i32 %29132 to i64
  %29134 = getelementptr inbounds double, ptr %29128, i64 %29133
  %29135 = load double, ptr %29134, align 8, !tbaa !11
  %29136 = call double @llvm.fmuladd.f64(double 0xBCC8000000000000, double %29135, double %29127)
  %29137 = load ptr, ptr %7, align 8, !tbaa !9
  %29138 = load i32, ptr %12, align 4, !tbaa !5
  %29139 = load i32, ptr %8, align 4, !tbaa !5
  %29140 = mul nsw i32 6, %29139
  %29141 = add nsw i32 %29138, %29140
  %29142 = sext i32 %29141 to i64
  %29143 = getelementptr inbounds double, ptr %29137, i64 %29142
  %29144 = load double, ptr %29143, align 8, !tbaa !11
  %29145 = call double @llvm.fmuladd.f64(double 0xBCA7000000000002, double %29144, double %29136)
  %29146 = load ptr, ptr %7, align 8, !tbaa !9
  %29147 = load i32, ptr %12, align 4, !tbaa !5
  %29148 = load i32, ptr %8, align 4, !tbaa !5
  %29149 = mul nsw i32 7, %29148
  %29150 = add nsw i32 %29147, %29149
  %29151 = sext i32 %29150 to i64
  %29152 = getelementptr inbounds double, ptr %29146, i64 %29151
  %29153 = load double, ptr %29152, align 8, !tbaa !11
  %29154 = call double @llvm.fmuladd.f64(double 0x3CCF400000000000, double %29153, double %29145)
  %29155 = load ptr, ptr %7, align 8, !tbaa !9
  %29156 = load i32, ptr %12, align 4, !tbaa !5
  %29157 = load i32, ptr %8, align 4, !tbaa !5
  %29158 = mul nsw i32 8, %29157
  %29159 = add nsw i32 %29156, %29158
  %29160 = sext i32 %29159 to i64
  %29161 = getelementptr inbounds double, ptr %29155, i64 %29160
  %29162 = load double, ptr %29161, align 8, !tbaa !11
  %29163 = call double @llvm.fmuladd.f64(double 0xBCB0000000000000, double %29162, double %29154)
  %29164 = load ptr, ptr %7, align 8, !tbaa !9
  %29165 = load i32, ptr %12, align 4, !tbaa !5
  %29166 = load i32, ptr %8, align 4, !tbaa !5
  %29167 = mul nsw i32 9, %29166
  %29168 = add nsw i32 %29165, %29167
  %29169 = sext i32 %29168 to i64
  %29170 = getelementptr inbounds double, ptr %29164, i64 %29169
  %29171 = load double, ptr %29170, align 8, !tbaa !11
  %29172 = call double @llvm.fmuladd.f64(double 0xBCDD800000000001, double %29171, double %29163)
  %29173 = load ptr, ptr %7, align 8, !tbaa !9
  %29174 = load i32, ptr %12, align 4, !tbaa !5
  %29175 = load i32, ptr %8, align 4, !tbaa !5
  %29176 = mul nsw i32 10, %29175
  %29177 = add nsw i32 %29174, %29176
  %29178 = sext i32 %29177 to i64
  %29179 = getelementptr inbounds double, ptr %29173, i64 %29178
  %29180 = load double, ptr %29179, align 8, !tbaa !11
  %29181 = call double @llvm.fmuladd.f64(double 0x3D15A3FFFFFFFFFF, double %29180, double %29172)
  %29182 = load ptr, ptr %7, align 8, !tbaa !9
  %29183 = load i32, ptr %12, align 4, !tbaa !5
  %29184 = load i32, ptr %8, align 4, !tbaa !5
  %29185 = mul nsw i32 11, %29184
  %29186 = add nsw i32 %29183, %29185
  %29187 = sext i32 %29186 to i64
  %29188 = getelementptr inbounds double, ptr %29182, i64 %29187
  %29189 = load double, ptr %29188, align 8, !tbaa !11
  %29190 = call double @llvm.fmuladd.f64(double 0xBCE5BFFFFFFFFFFF, double %29189, double %29181)
  %29191 = load ptr, ptr %7, align 8, !tbaa !9
  %29192 = load i32, ptr %12, align 4, !tbaa !5
  %29193 = load i32, ptr %8, align 4, !tbaa !5
  %29194 = mul nsw i32 12, %29193
  %29195 = add nsw i32 %29192, %29194
  %29196 = sext i32 %29195 to i64
  %29197 = getelementptr inbounds double, ptr %29191, i64 %29196
  %29198 = load double, ptr %29197, align 8, !tbaa !11
  %29199 = call double @llvm.fmuladd.f64(double 0x3D13BCFFFFFFFFFF, double %29198, double %29190)
  %29200 = load ptr, ptr %7, align 8, !tbaa !9
  %29201 = load i32, ptr %12, align 4, !tbaa !5
  %29202 = load i32, ptr %8, align 4, !tbaa !5
  %29203 = mul nsw i32 13, %29202
  %29204 = add nsw i32 %29201, %29203
  %29205 = sext i32 %29204 to i64
  %29206 = getelementptr inbounds double, ptr %29200, i64 %29205
  %29207 = load double, ptr %29206, align 8, !tbaa !11
  %29208 = call double @llvm.fmuladd.f64(double 0x3CEA980000000001, double %29207, double %29199)
  %29209 = load ptr, ptr %7, align 8, !tbaa !9
  %29210 = load i32, ptr %12, align 4, !tbaa !5
  %29211 = load i32, ptr %8, align 4, !tbaa !5
  %29212 = mul nsw i32 14, %29211
  %29213 = add nsw i32 %29210, %29212
  %29214 = sext i32 %29213 to i64
  %29215 = getelementptr inbounds double, ptr %29209, i64 %29214
  %29216 = load double, ptr %29215, align 8, !tbaa !11
  %29217 = call double @llvm.fmuladd.f64(double 0x40118E7E1D8191B3, double %29216, double %29208)
  %29218 = load ptr, ptr %7, align 8, !tbaa !9
  %29219 = load i32, ptr %12, align 4, !tbaa !5
  %29220 = load i32, ptr %8, align 4, !tbaa !5
  %29221 = mul nsw i32 15, %29220
  %29222 = add nsw i32 %29219, %29221
  %29223 = sext i32 %29222 to i64
  %29224 = getelementptr inbounds double, ptr %29218, i64 %29223
  %29225 = load double, ptr %29224, align 8, !tbaa !11
  %29226 = call double @llvm.fmuladd.f64(double 0xBD07000000000000, double %29225, double %29217)
  %29227 = load ptr, ptr %7, align 8, !tbaa !9
  %29228 = load i32, ptr %12, align 4, !tbaa !5
  %29229 = load i32, ptr %8, align 4, !tbaa !5
  %29230 = mul nsw i32 16, %29229
  %29231 = add nsw i32 %29228, %29230
  %29232 = sext i32 %29231 to i64
  %29233 = getelementptr inbounds double, ptr %29227, i64 %29232
  %29234 = load double, ptr %29233, align 8, !tbaa !11
  %29235 = call double @llvm.fmuladd.f64(double 0xBCF4380000000000, double %29234, double %29226)
  %29236 = load ptr, ptr %7, align 8, !tbaa !9
  %29237 = load i32, ptr %12, align 4, !tbaa !5
  %29238 = load i32, ptr %8, align 4, !tbaa !5
  %29239 = mul nsw i32 17, %29238
  %29240 = add nsw i32 %29237, %29239
  %29241 = sext i32 %29240 to i64
  %29242 = getelementptr inbounds double, ptr %29236, i64 %29241
  %29243 = load double, ptr %29242, align 8, !tbaa !11
  %29244 = call double @llvm.fmuladd.f64(double 0x3D0AF40000000001, double %29243, double %29235)
  %29245 = load ptr, ptr %7, align 8, !tbaa !9
  %29246 = load i32, ptr %12, align 4, !tbaa !5
  %29247 = load i32, ptr %8, align 4, !tbaa !5
  %29248 = mul nsw i32 18, %29247
  %29249 = add nsw i32 %29246, %29248
  %29250 = sext i32 %29249 to i64
  %29251 = getelementptr inbounds double, ptr %29245, i64 %29250
  %29252 = load double, ptr %29251, align 8, !tbaa !11
  %29253 = call double @llvm.fmuladd.f64(double 0xBCF6000000000000, double %29252, double %29244)
  %29254 = load ptr, ptr %7, align 8, !tbaa !9
  %29255 = load i32, ptr %12, align 4, !tbaa !5
  %29256 = load i32, ptr %8, align 4, !tbaa !5
  %29257 = mul nsw i32 19, %29256
  %29258 = add nsw i32 %29255, %29257
  %29259 = sext i32 %29258 to i64
  %29260 = getelementptr inbounds double, ptr %29254, i64 %29259
  %29261 = load double, ptr %29260, align 8, !tbaa !11
  %29262 = call double @llvm.fmuladd.f64(double 0xBD18680000000000, double %29261, double %29253)
  store double %29262, ptr %11, align 8, !tbaa !11
  %29263 = load double, ptr %11, align 8, !tbaa !11
  %29264 = load ptr, ptr %9, align 8, !tbaa !9
  %29265 = load i32, ptr %12, align 4, !tbaa !5
  %29266 = load i32, ptr %10, align 4, !tbaa !5
  %29267 = mul nsw i32 114, %29266
  %29268 = add nsw i32 %29265, %29267
  %29269 = sext i32 %29268 to i64
  %29270 = getelementptr inbounds double, ptr %29264, i64 %29269
  store double %29263, ptr %29270, align 8, !tbaa !11
  %29271 = load ptr, ptr %7, align 8, !tbaa !9
  %29272 = load i32, ptr %12, align 4, !tbaa !5
  %29273 = load i32, ptr %8, align 4, !tbaa !5
  %29274 = mul nsw i32 0, %29273
  %29275 = add nsw i32 %29272, %29274
  %29276 = sext i32 %29275 to i64
  %29277 = getelementptr inbounds double, ptr %29271, i64 %29276
  %29278 = load double, ptr %29277, align 8, !tbaa !11
  %29279 = load ptr, ptr %7, align 8, !tbaa !9
  %29280 = load i32, ptr %12, align 4, !tbaa !5
  %29281 = load i32, ptr %8, align 4, !tbaa !5
  %29282 = mul nsw i32 1, %29281
  %29283 = add nsw i32 %29280, %29282
  %29284 = sext i32 %29283 to i64
  %29285 = getelementptr inbounds double, ptr %29279, i64 %29284
  %29286 = load double, ptr %29285, align 8, !tbaa !11
  %29287 = fmul double 0xBCA4000000000001, %29286
  %29288 = call double @llvm.fmuladd.f64(double 0x3CDA400000000000, double %29278, double %29287)
  %29289 = load ptr, ptr %7, align 8, !tbaa !9
  %29290 = load i32, ptr %12, align 4, !tbaa !5
  %29291 = load i32, ptr %8, align 4, !tbaa !5
  %29292 = mul nsw i32 2, %29291
  %29293 = add nsw i32 %29290, %29292
  %29294 = sext i32 %29293 to i64
  %29295 = getelementptr inbounds double, ptr %29289, i64 %29294
  %29296 = load double, ptr %29295, align 8, !tbaa !11
  %29297 = call double @llvm.fmuladd.f64(double 0x3CB1400000000000, double %29296, double %29288)
  %29298 = load ptr, ptr %7, align 8, !tbaa !9
  %29299 = load i32, ptr %12, align 4, !tbaa !5
  %29300 = load i32, ptr %8, align 4, !tbaa !5
  %29301 = mul nsw i32 3, %29300
  %29302 = add nsw i32 %29299, %29301
  %29303 = sext i32 %29302 to i64
  %29304 = getelementptr inbounds double, ptr %29298, i64 %29303
  %29305 = load double, ptr %29304, align 8, !tbaa !11
  %29306 = call double @llvm.fmuladd.f64(double 0x3CDB900000000001, double %29305, double %29297)
  %29307 = load ptr, ptr %7, align 8, !tbaa !9
  %29308 = load i32, ptr %12, align 4, !tbaa !5
  %29309 = load i32, ptr %8, align 4, !tbaa !5
  %29310 = mul nsw i32 4, %29309
  %29311 = add nsw i32 %29308, %29310
  %29312 = sext i32 %29311 to i64
  %29313 = getelementptr inbounds double, ptr %29307, i64 %29312
  %29314 = load double, ptr %29313, align 8, !tbaa !11
  %29315 = call double @llvm.fmuladd.f64(double 0xBCCB000000000000, double %29314, double %29306)
  %29316 = load ptr, ptr %7, align 8, !tbaa !9
  %29317 = load i32, ptr %12, align 4, !tbaa !5
  %29318 = load i32, ptr %8, align 4, !tbaa !5
  %29319 = mul nsw i32 5, %29318
  %29320 = add nsw i32 %29317, %29319
  %29321 = sext i32 %29320 to i64
  %29322 = getelementptr inbounds double, ptr %29316, i64 %29321
  %29323 = load double, ptr %29322, align 8, !tbaa !11
  %29324 = call double @llvm.fmuladd.f64(double 0x3FD4F58312101B43, double %29323, double %29315)
  %29325 = load ptr, ptr %7, align 8, !tbaa !9
  %29326 = load i32, ptr %12, align 4, !tbaa !5
  %29327 = load i32, ptr %8, align 4, !tbaa !5
  %29328 = mul nsw i32 6, %29327
  %29329 = add nsw i32 %29326, %29328
  %29330 = sext i32 %29329 to i64
  %29331 = getelementptr inbounds double, ptr %29325, i64 %29330
  %29332 = load double, ptr %29331, align 8, !tbaa !11
  %29333 = call double @llvm.fmuladd.f64(double 0x3CD0E00000000000, double %29332, double %29324)
  %29334 = load ptr, ptr %7, align 8, !tbaa !9
  %29335 = load i32, ptr %12, align 4, !tbaa !5
  %29336 = load i32, ptr %8, align 4, !tbaa !5
  %29337 = mul nsw i32 7, %29336
  %29338 = add nsw i32 %29335, %29337
  %29339 = sext i32 %29338 to i64
  %29340 = getelementptr inbounds double, ptr %29334, i64 %29339
  %29341 = load double, ptr %29340, align 8, !tbaa !11
  %29342 = call double @llvm.fmuladd.f64(double 0xBCBD800000000001, double %29341, double %29333)
  %29343 = load ptr, ptr %7, align 8, !tbaa !9
  %29344 = load i32, ptr %12, align 4, !tbaa !5
  %29345 = load i32, ptr %8, align 4, !tbaa !5
  %29346 = mul nsw i32 8, %29345
  %29347 = add nsw i32 %29344, %29346
  %29348 = sext i32 %29347 to i64
  %29349 = getelementptr inbounds double, ptr %29343, i64 %29348
  %29350 = load double, ptr %29349, align 8, !tbaa !11
  %29351 = call double @llvm.fmuladd.f64(double 0xBCDFFFFFFFFFFFFE, double %29350, double %29342)
  %29352 = load ptr, ptr %7, align 8, !tbaa !9
  %29353 = load i32, ptr %12, align 4, !tbaa !5
  %29354 = load i32, ptr %8, align 4, !tbaa !5
  %29355 = mul nsw i32 9, %29354
  %29356 = add nsw i32 %29353, %29355
  %29357 = sext i32 %29356 to i64
  %29358 = getelementptr inbounds double, ptr %29352, i64 %29357
  %29359 = load double, ptr %29358, align 8, !tbaa !11
  %29360 = call double @llvm.fmuladd.f64(double 0xBCC4000000000000, double %29359, double %29351)
  %29361 = load ptr, ptr %7, align 8, !tbaa !9
  %29362 = load i32, ptr %12, align 4, !tbaa !5
  %29363 = load i32, ptr %8, align 4, !tbaa !5
  %29364 = mul nsw i32 10, %29363
  %29365 = add nsw i32 %29362, %29364
  %29366 = sext i32 %29365 to i64
  %29367 = getelementptr inbounds double, ptr %29361, i64 %29366
  %29368 = load double, ptr %29367, align 8, !tbaa !11
  %29369 = call double @llvm.fmuladd.f64(double 0x3D17B40000000000, double %29368, double %29360)
  %29370 = load ptr, ptr %7, align 8, !tbaa !9
  %29371 = load i32, ptr %12, align 4, !tbaa !5
  %29372 = load i32, ptr %8, align 4, !tbaa !5
  %29373 = mul nsw i32 11, %29372
  %29374 = add nsw i32 %29371, %29373
  %29375 = sext i32 %29374 to i64
  %29376 = getelementptr inbounds double, ptr %29370, i64 %29375
  %29377 = load double, ptr %29376, align 8, !tbaa !11
  %29378 = call double @llvm.fmuladd.f64(double 0xBCEAC00000000001, double %29377, double %29369)
  %29379 = load ptr, ptr %7, align 8, !tbaa !9
  %29380 = load i32, ptr %12, align 4, !tbaa !5
  %29381 = load i32, ptr %8, align 4, !tbaa !5
  %29382 = mul nsw i32 12, %29381
  %29383 = add nsw i32 %29380, %29382
  %29384 = sext i32 %29383 to i64
  %29385 = getelementptr inbounds double, ptr %29379, i64 %29384
  %29386 = load double, ptr %29385, align 8, !tbaa !11
  %29387 = call double @llvm.fmuladd.f64(double 0x3CE927FFFFFFFFFF, double %29386, double %29378)
  %29388 = load ptr, ptr %7, align 8, !tbaa !9
  %29389 = load i32, ptr %12, align 4, !tbaa !5
  %29390 = load i32, ptr %8, align 4, !tbaa !5
  %29391 = mul nsw i32 13, %29390
  %29392 = add nsw i32 %29389, %29391
  %29393 = sext i32 %29392 to i64
  %29394 = getelementptr inbounds double, ptr %29388, i64 %29393
  %29395 = load double, ptr %29394, align 8, !tbaa !11
  %29396 = call double @llvm.fmuladd.f64(double 0x3D13B90000000001, double %29395, double %29387)
  %29397 = load ptr, ptr %7, align 8, !tbaa !9
  %29398 = load i32, ptr %12, align 4, !tbaa !5
  %29399 = load i32, ptr %8, align 4, !tbaa !5
  %29400 = mul nsw i32 14, %29399
  %29401 = add nsw i32 %29398, %29400
  %29402 = sext i32 %29401 to i64
  %29403 = getelementptr inbounds double, ptr %29397, i64 %29402
  %29404 = load double, ptr %29403, align 8, !tbaa !11
  %29405 = call double @llvm.fmuladd.f64(double 0xBD04D00000000000, double %29404, double %29396)
  %29406 = load ptr, ptr %7, align 8, !tbaa !9
  %29407 = load i32, ptr %12, align 4, !tbaa !5
  %29408 = load i32, ptr %8, align 4, !tbaa !5
  %29409 = mul nsw i32 15, %29408
  %29410 = add nsw i32 %29407, %29409
  %29411 = sext i32 %29410 to i64
  %29412 = getelementptr inbounds double, ptr %29406, i64 %29411
  %29413 = load double, ptr %29412, align 8, !tbaa !11
  %29414 = call double @llvm.fmuladd.f64(double 0x40118E7E1D8191B1, double %29413, double %29405)
  %29415 = load ptr, ptr %7, align 8, !tbaa !9
  %29416 = load i32, ptr %12, align 4, !tbaa !5
  %29417 = load i32, ptr %8, align 4, !tbaa !5
  %29418 = mul nsw i32 16, %29417
  %29419 = add nsw i32 %29416, %29418
  %29420 = sext i32 %29419 to i64
  %29421 = getelementptr inbounds double, ptr %29415, i64 %29420
  %29422 = load double, ptr %29421, align 8, !tbaa !11
  %29423 = call double @llvm.fmuladd.f64(double 0x3D0A1C0000000001, double %29422, double %29414)
  %29424 = load ptr, ptr %7, align 8, !tbaa !9
  %29425 = load i32, ptr %12, align 4, !tbaa !5
  %29426 = load i32, ptr %8, align 4, !tbaa !5
  %29427 = mul nsw i32 17, %29426
  %29428 = add nsw i32 %29425, %29427
  %29429 = sext i32 %29428 to i64
  %29430 = getelementptr inbounds double, ptr %29424, i64 %29429
  %29431 = load double, ptr %29430, align 8, !tbaa !11
  %29432 = call double @llvm.fmuladd.f64(double 0xBCF7180000000000, double %29431, double %29423)
  %29433 = load ptr, ptr %7, align 8, !tbaa !9
  %29434 = load i32, ptr %12, align 4, !tbaa !5
  %29435 = load i32, ptr %8, align 4, !tbaa !5
  %29436 = mul nsw i32 18, %29435
  %29437 = add nsw i32 %29434, %29436
  %29438 = sext i32 %29437 to i64
  %29439 = getelementptr inbounds double, ptr %29433, i64 %29438
  %29440 = load double, ptr %29439, align 8, !tbaa !11
  %29441 = call double @llvm.fmuladd.f64(double 0xBD19000000000000, double %29440, double %29432)
  %29442 = load ptr, ptr %7, align 8, !tbaa !9
  %29443 = load i32, ptr %12, align 4, !tbaa !5
  %29444 = load i32, ptr %8, align 4, !tbaa !5
  %29445 = mul nsw i32 19, %29444
  %29446 = add nsw i32 %29443, %29445
  %29447 = sext i32 %29446 to i64
  %29448 = getelementptr inbounds double, ptr %29442, i64 %29447
  %29449 = load double, ptr %29448, align 8, !tbaa !11
  %29450 = call double @llvm.fmuladd.f64(double 0xBCF9C00000000000, double %29449, double %29441)
  store double %29450, ptr %11, align 8, !tbaa !11
  %29451 = load double, ptr %11, align 8, !tbaa !11
  %29452 = load ptr, ptr %9, align 8, !tbaa !9
  %29453 = load i32, ptr %12, align 4, !tbaa !5
  %29454 = load i32, ptr %10, align 4, !tbaa !5
  %29455 = mul nsw i32 115, %29454
  %29456 = add nsw i32 %29453, %29455
  %29457 = sext i32 %29456 to i64
  %29458 = getelementptr inbounds double, ptr %29452, i64 %29457
  store double %29451, ptr %29458, align 8, !tbaa !11
  %29459 = load ptr, ptr %7, align 8, !tbaa !9
  %29460 = load i32, ptr %12, align 4, !tbaa !5
  %29461 = load i32, ptr %8, align 4, !tbaa !5
  %29462 = mul nsw i32 0, %29461
  %29463 = add nsw i32 %29460, %29462
  %29464 = sext i32 %29463 to i64
  %29465 = getelementptr inbounds double, ptr %29459, i64 %29464
  %29466 = load double, ptr %29465, align 8, !tbaa !11
  %29467 = load ptr, ptr %7, align 8, !tbaa !9
  %29468 = load i32, ptr %12, align 4, !tbaa !5
  %29469 = load i32, ptr %8, align 4, !tbaa !5
  %29470 = mul nsw i32 1, %29469
  %29471 = add nsw i32 %29468, %29470
  %29472 = sext i32 %29471 to i64
  %29473 = getelementptr inbounds double, ptr %29467, i64 %29472
  %29474 = load double, ptr %29473, align 8, !tbaa !11
  %29475 = fmul double 0x3C9DFFFFFFFFFFFE, %29474
  %29476 = call double @llvm.fmuladd.f64(double 0x3CDBE00000000000, double %29466, double %29475)
  %29477 = load ptr, ptr %7, align 8, !tbaa !9
  %29478 = load i32, ptr %12, align 4, !tbaa !5
  %29479 = load i32, ptr %8, align 4, !tbaa !5
  %29480 = mul nsw i32 2, %29479
  %29481 = add nsw i32 %29478, %29480
  %29482 = sext i32 %29481 to i64
  %29483 = getelementptr inbounds double, ptr %29477, i64 %29482
  %29484 = load double, ptr %29483, align 8, !tbaa !11
  %29485 = call double @llvm.fmuladd.f64(double 0xBC9CFFFFFFFFFFFF, double %29484, double %29476)
  %29486 = load ptr, ptr %7, align 8, !tbaa !9
  %29487 = load i32, ptr %12, align 4, !tbaa !5
  %29488 = load i32, ptr %8, align 4, !tbaa !5
  %29489 = mul nsw i32 3, %29488
  %29490 = add nsw i32 %29487, %29489
  %29491 = sext i32 %29490 to i64
  %29492 = getelementptr inbounds double, ptr %29486, i64 %29491
  %29493 = load double, ptr %29492, align 8, !tbaa !11
  %29494 = call double @llvm.fmuladd.f64(double 0x3CD6C7FFFFFFFFFE, double %29493, double %29485)
  %29495 = load ptr, ptr %7, align 8, !tbaa !9
  %29496 = load i32, ptr %12, align 4, !tbaa !5
  %29497 = load i32, ptr %8, align 4, !tbaa !5
  %29498 = mul nsw i32 4, %29497
  %29499 = add nsw i32 %29496, %29498
  %29500 = sext i32 %29499 to i64
  %29501 = getelementptr inbounds double, ptr %29495, i64 %29500
  %29502 = load double, ptr %29501, align 8, !tbaa !11
  %29503 = call double @llvm.fmuladd.f64(double 0xBCAE800000000001, double %29502, double %29494)
  %29504 = load ptr, ptr %7, align 8, !tbaa !9
  %29505 = load i32, ptr %12, align 4, !tbaa !5
  %29506 = load i32, ptr %8, align 4, !tbaa !5
  %29507 = mul nsw i32 5, %29506
  %29508 = add nsw i32 %29505, %29507
  %29509 = sext i32 %29508 to i64
  %29510 = getelementptr inbounds double, ptr %29504, i64 %29509
  %29511 = load double, ptr %29510, align 8, !tbaa !11
  %29512 = call double @llvm.fmuladd.f64(double 0x3CCD600000000000, double %29511, double %29503)
  %29513 = load ptr, ptr %7, align 8, !tbaa !9
  %29514 = load i32, ptr %12, align 4, !tbaa !5
  %29515 = load i32, ptr %8, align 4, !tbaa !5
  %29516 = mul nsw i32 6, %29515
  %29517 = add nsw i32 %29514, %29516
  %29518 = sext i32 %29517 to i64
  %29519 = getelementptr inbounds double, ptr %29513, i64 %29518
  %29520 = load double, ptr %29519, align 8, !tbaa !11
  %29521 = call double @llvm.fmuladd.f64(double 0x3FD4F58312101B3B, double %29520, double %29512)
  %29522 = load ptr, ptr %7, align 8, !tbaa !9
  %29523 = load i32, ptr %12, align 4, !tbaa !5
  %29524 = load i32, ptr %8, align 4, !tbaa !5
  %29525 = mul nsw i32 7, %29524
  %29526 = add nsw i32 %29523, %29525
  %29527 = sext i32 %29526 to i64
  %29528 = getelementptr inbounds double, ptr %29522, i64 %29527
  %29529 = load double, ptr %29528, align 8, !tbaa !11
  %29530 = call double @llvm.fmuladd.f64(double 0xBCE02BFFFFFFFFFF, double %29529, double %29521)
  %29531 = load ptr, ptr %7, align 8, !tbaa !9
  %29532 = load i32, ptr %12, align 4, !tbaa !5
  %29533 = load i32, ptr %8, align 4, !tbaa !5
  %29534 = mul nsw i32 8, %29533
  %29535 = add nsw i32 %29532, %29534
  %29536 = sext i32 %29535 to i64
  %29537 = getelementptr inbounds double, ptr %29531, i64 %29536
  %29538 = load double, ptr %29537, align 8, !tbaa !11
  %29539 = call double @llvm.fmuladd.f64(double 0xBCC3C00000000000, double %29538, double %29530)
  %29540 = load ptr, ptr %7, align 8, !tbaa !9
  %29541 = load i32, ptr %12, align 4, !tbaa !5
  %29542 = load i32, ptr %8, align 4, !tbaa !5
  %29543 = mul nsw i32 9, %29542
  %29544 = add nsw i32 %29541, %29543
  %29545 = sext i32 %29544 to i64
  %29546 = getelementptr inbounds double, ptr %29540, i64 %29545
  %29547 = load double, ptr %29546, align 8, !tbaa !11
  %29548 = call double @llvm.fmuladd.f64(double 0xBCCB800000000000, double %29547, double %29539)
  %29549 = load ptr, ptr %7, align 8, !tbaa !9
  %29550 = load i32, ptr %12, align 4, !tbaa !5
  %29551 = load i32, ptr %8, align 4, !tbaa !5
  %29552 = mul nsw i32 10, %29551
  %29553 = add nsw i32 %29550, %29552
  %29554 = sext i32 %29553 to i64
  %29555 = getelementptr inbounds double, ptr %29549, i64 %29554
  %29556 = load double, ptr %29555, align 8, !tbaa !11
  %29557 = call double @llvm.fmuladd.f64(double 0x3D167E0000000000, double %29556, double %29548)
  %29558 = load ptr, ptr %7, align 8, !tbaa !9
  %29559 = load i32, ptr %12, align 4, !tbaa !5
  %29560 = load i32, ptr %8, align 4, !tbaa !5
  %29561 = mul nsw i32 11, %29560
  %29562 = add nsw i32 %29559, %29561
  %29563 = sext i32 %29562 to i64
  %29564 = getelementptr inbounds double, ptr %29558, i64 %29563
  %29565 = load double, ptr %29564, align 8, !tbaa !11
  %29566 = call double @llvm.fmuladd.f64(double 0x3CED100000000000, double %29565, double %29557)
  %29567 = load ptr, ptr %7, align 8, !tbaa !9
  %29568 = load i32, ptr %12, align 4, !tbaa !5
  %29569 = load i32, ptr %8, align 4, !tbaa !5
  %29570 = mul nsw i32 12, %29569
  %29571 = add nsw i32 %29568, %29570
  %29572 = sext i32 %29571 to i64
  %29573 = getelementptr inbounds double, ptr %29567, i64 %29572
  %29574 = load double, ptr %29573, align 8, !tbaa !11
  %29575 = call double @llvm.fmuladd.f64(double 0xBCE5A80000000001, double %29574, double %29566)
  %29576 = load ptr, ptr %7, align 8, !tbaa !9
  %29577 = load i32, ptr %12, align 4, !tbaa !5
  %29578 = load i32, ptr %8, align 4, !tbaa !5
  %29579 = mul nsw i32 13, %29578
  %29580 = add nsw i32 %29577, %29579
  %29581 = sext i32 %29580 to i64
  %29582 = getelementptr inbounds double, ptr %29576, i64 %29581
  %29583 = load double, ptr %29582, align 8, !tbaa !11
  %29584 = call double @llvm.fmuladd.f64(double 0x3D129C7FFFFFFFFE, double %29583, double %29575)
  %29585 = load ptr, ptr %7, align 8, !tbaa !9
  %29586 = load i32, ptr %12, align 4, !tbaa !5
  %29587 = load i32, ptr %8, align 4, !tbaa !5
  %29588 = mul nsw i32 14, %29587
  %29589 = add nsw i32 %29586, %29588
  %29590 = sext i32 %29589 to i64
  %29591 = getelementptr inbounds double, ptr %29585, i64 %29590
  %29592 = load double, ptr %29591, align 8, !tbaa !11
  %29593 = call double @llvm.fmuladd.f64(double 0xBCF3340000000000, double %29592, double %29584)
  %29594 = load ptr, ptr %7, align 8, !tbaa !9
  %29595 = load i32, ptr %12, align 4, !tbaa !5
  %29596 = load i32, ptr %8, align 4, !tbaa !5
  %29597 = mul nsw i32 15, %29596
  %29598 = add nsw i32 %29595, %29597
  %29599 = sext i32 %29598 to i64
  %29600 = getelementptr inbounds double, ptr %29594, i64 %29599
  %29601 = load double, ptr %29600, align 8, !tbaa !11
  %29602 = call double @llvm.fmuladd.f64(double 0x3D09760000000001, double %29601, double %29593)
  %29603 = load ptr, ptr %7, align 8, !tbaa !9
  %29604 = load i32, ptr %12, align 4, !tbaa !5
  %29605 = load i32, ptr %8, align 4, !tbaa !5
  %29606 = mul nsw i32 16, %29605
  %29607 = add nsw i32 %29604, %29606
  %29608 = sext i32 %29607 to i64
  %29609 = getelementptr inbounds double, ptr %29603, i64 %29608
  %29610 = load double, ptr %29609, align 8, !tbaa !11
  %29611 = call double @llvm.fmuladd.f64(double 0x40118E7E1D8191B2, double %29610, double %29602)
  %29612 = load ptr, ptr %7, align 8, !tbaa !9
  %29613 = load i32, ptr %12, align 4, !tbaa !5
  %29614 = load i32, ptr %8, align 4, !tbaa !5
  %29615 = mul nsw i32 17, %29614
  %29616 = add nsw i32 %29613, %29615
  %29617 = sext i32 %29616 to i64
  %29618 = getelementptr inbounds double, ptr %29612, i64 %29617
  %29619 = load double, ptr %29618, align 8, !tbaa !11
  %29620 = call double @llvm.fmuladd.f64(double 0xBD17E57FFFFFFFFE, double %29619, double %29611)
  %29621 = load ptr, ptr %7, align 8, !tbaa !9
  %29622 = load i32, ptr %12, align 4, !tbaa !5
  %29623 = load i32, ptr %8, align 4, !tbaa !5
  %29624 = mul nsw i32 18, %29623
  %29625 = add nsw i32 %29622, %29624
  %29626 = sext i32 %29625 to i64
  %29627 = getelementptr inbounds double, ptr %29621, i64 %29626
  %29628 = load double, ptr %29627, align 8, !tbaa !11
  %29629 = call double @llvm.fmuladd.f64(double 0xBCF6D80000000000, double %29628, double %29620)
  %29630 = load ptr, ptr %7, align 8, !tbaa !9
  %29631 = load i32, ptr %12, align 4, !tbaa !5
  %29632 = load i32, ptr %8, align 4, !tbaa !5
  %29633 = mul nsw i32 19, %29632
  %29634 = add nsw i32 %29631, %29633
  %29635 = sext i32 %29634 to i64
  %29636 = getelementptr inbounds double, ptr %29630, i64 %29635
  %29637 = load double, ptr %29636, align 8, !tbaa !11
  %29638 = call double @llvm.fmuladd.f64(double 0xBD07C7FFFFFFFFFF, double %29637, double %29629)
  store double %29638, ptr %11, align 8, !tbaa !11
  %29639 = load double, ptr %11, align 8, !tbaa !11
  %29640 = load ptr, ptr %9, align 8, !tbaa !9
  %29641 = load i32, ptr %12, align 4, !tbaa !5
  %29642 = load i32, ptr %10, align 4, !tbaa !5
  %29643 = mul nsw i32 116, %29642
  %29644 = add nsw i32 %29641, %29643
  %29645 = sext i32 %29644 to i64
  %29646 = getelementptr inbounds double, ptr %29640, i64 %29645
  store double %29639, ptr %29646, align 8, !tbaa !11
  %29647 = load ptr, ptr %7, align 8, !tbaa !9
  %29648 = load i32, ptr %12, align 4, !tbaa !5
  %29649 = load i32, ptr %8, align 4, !tbaa !5
  %29650 = mul nsw i32 0, %29649
  %29651 = add nsw i32 %29648, %29650
  %29652 = sext i32 %29651 to i64
  %29653 = getelementptr inbounds double, ptr %29647, i64 %29652
  %29654 = load double, ptr %29653, align 8, !tbaa !11
  %29655 = load ptr, ptr %7, align 8, !tbaa !9
  %29656 = load i32, ptr %12, align 4, !tbaa !5
  %29657 = load i32, ptr %8, align 4, !tbaa !5
  %29658 = mul nsw i32 1, %29657
  %29659 = add nsw i32 %29656, %29658
  %29660 = sext i32 %29659 to i64
  %29661 = getelementptr inbounds double, ptr %29655, i64 %29660
  %29662 = load double, ptr %29661, align 8, !tbaa !11
  %29663 = fmul double 0x3CA5FFFFFFFFFFFF, %29662
  %29664 = call double @llvm.fmuladd.f64(double 0x3CDAA00000000002, double %29654, double %29663)
  %29665 = load ptr, ptr %7, align 8, !tbaa !9
  %29666 = load i32, ptr %12, align 4, !tbaa !5
  %29667 = load i32, ptr %8, align 4, !tbaa !5
  %29668 = mul nsw i32 2, %29667
  %29669 = add nsw i32 %29666, %29668
  %29670 = sext i32 %29669 to i64
  %29671 = getelementptr inbounds double, ptr %29665, i64 %29670
  %29672 = load double, ptr %29671, align 8, !tbaa !11
  %29673 = call double @llvm.fmuladd.f64(double 0x3CD6100000000001, double %29672, double %29664)
  %29674 = load ptr, ptr %7, align 8, !tbaa !9
  %29675 = load i32, ptr %12, align 4, !tbaa !5
  %29676 = load i32, ptr %8, align 4, !tbaa !5
  %29677 = mul nsw i32 3, %29676
  %29678 = add nsw i32 %29675, %29677
  %29679 = sext i32 %29678 to i64
  %29680 = getelementptr inbounds double, ptr %29674, i64 %29679
  %29681 = load double, ptr %29680, align 8, !tbaa !11
  %29682 = call double @llvm.fmuladd.f64(double 0xBCB8A00000000000, double %29681, double %29673)
  %29683 = load ptr, ptr %7, align 8, !tbaa !9
  %29684 = load i32, ptr %12, align 4, !tbaa !5
  %29685 = load i32, ptr %8, align 4, !tbaa !5
  %29686 = mul nsw i32 4, %29685
  %29687 = add nsw i32 %29684, %29686
  %29688 = sext i32 %29687 to i64
  %29689 = getelementptr inbounds double, ptr %29683, i64 %29688
  %29690 = load double, ptr %29689, align 8, !tbaa !11
  %29691 = call double @llvm.fmuladd.f64(double 0x3CD30FFFFFFFFFFE, double %29690, double %29682)
  %29692 = load ptr, ptr %7, align 8, !tbaa !9
  %29693 = load i32, ptr %12, align 4, !tbaa !5
  %29694 = load i32, ptr %8, align 4, !tbaa !5
  %29695 = mul nsw i32 5, %29694
  %29696 = add nsw i32 %29693, %29695
  %29697 = sext i32 %29696 to i64
  %29698 = getelementptr inbounds double, ptr %29692, i64 %29697
  %29699 = load double, ptr %29698, align 8, !tbaa !11
  %29700 = call double @llvm.fmuladd.f64(double 0xBCB4C00000000000, double %29699, double %29691)
  %29701 = load ptr, ptr %7, align 8, !tbaa !9
  %29702 = load i32, ptr %12, align 4, !tbaa !5
  %29703 = load i32, ptr %8, align 4, !tbaa !5
  %29704 = mul nsw i32 6, %29703
  %29705 = add nsw i32 %29702, %29704
  %29706 = sext i32 %29705 to i64
  %29707 = getelementptr inbounds double, ptr %29701, i64 %29706
  %29708 = load double, ptr %29707, align 8, !tbaa !11
  %29709 = call double @llvm.fmuladd.f64(double 0xBCDD280000000000, double %29708, double %29700)
  %29710 = load ptr, ptr %7, align 8, !tbaa !9
  %29711 = load i32, ptr %12, align 4, !tbaa !5
  %29712 = load i32, ptr %8, align 4, !tbaa !5
  %29713 = mul nsw i32 7, %29712
  %29714 = add nsw i32 %29711, %29713
  %29715 = sext i32 %29714 to i64
  %29716 = getelementptr inbounds double, ptr %29710, i64 %29715
  %29717 = load double, ptr %29716, align 8, !tbaa !11
  %29718 = call double @llvm.fmuladd.f64(double 0x3FD4F58312101B3A, double %29717, double %29709)
  %29719 = load ptr, ptr %7, align 8, !tbaa !9
  %29720 = load i32, ptr %12, align 4, !tbaa !5
  %29721 = load i32, ptr %8, align 4, !tbaa !5
  %29722 = mul nsw i32 8, %29721
  %29723 = add nsw i32 %29720, %29722
  %29724 = sext i32 %29723 to i64
  %29725 = getelementptr inbounds double, ptr %29719, i64 %29724
  %29726 = load double, ptr %29725, align 8, !tbaa !11
  %29727 = call double @llvm.fmuladd.f64(double 0xBCD0200000000000, double %29726, double %29718)
  %29728 = load ptr, ptr %7, align 8, !tbaa !9
  %29729 = load i32, ptr %12, align 4, !tbaa !5
  %29730 = load i32, ptr %8, align 4, !tbaa !5
  %29731 = mul nsw i32 9, %29730
  %29732 = add nsw i32 %29729, %29731
  %29733 = sext i32 %29732 to i64
  %29734 = getelementptr inbounds double, ptr %29728, i64 %29733
  %29735 = load double, ptr %29734, align 8, !tbaa !11
  %29736 = call double @llvm.fmuladd.f64(double 0xBCC2C00000000000, double %29735, double %29727)
  %29737 = load ptr, ptr %7, align 8, !tbaa !9
  %29738 = load i32, ptr %12, align 4, !tbaa !5
  %29739 = load i32, ptr %8, align 4, !tbaa !5
  %29740 = mul nsw i32 10, %29739
  %29741 = add nsw i32 %29738, %29740
  %29742 = sext i32 %29741 to i64
  %29743 = getelementptr inbounds double, ptr %29737, i64 %29742
  %29744 = load double, ptr %29743, align 8, !tbaa !11
  %29745 = call double @llvm.fmuladd.f64(double 0x3D1569FFFFFFFFFF, double %29744, double %29736)
  %29746 = load ptr, ptr %7, align 8, !tbaa !9
  %29747 = load i32, ptr %12, align 4, !tbaa !5
  %29748 = load i32, ptr %8, align 4, !tbaa !5
  %29749 = mul nsw i32 11, %29748
  %29750 = add nsw i32 %29747, %29749
  %29751 = sext i32 %29750 to i64
  %29752 = getelementptr inbounds double, ptr %29746, i64 %29751
  %29753 = load double, ptr %29752, align 8, !tbaa !11
  %29754 = call double @llvm.fmuladd.f64(double 0x3CF0200000000000, double %29753, double %29745)
  %29755 = load ptr, ptr %7, align 8, !tbaa !9
  %29756 = load i32, ptr %12, align 4, !tbaa !5
  %29757 = load i32, ptr %8, align 4, !tbaa !5
  %29758 = mul nsw i32 12, %29757
  %29759 = add nsw i32 %29756, %29758
  %29760 = sext i32 %29759 to i64
  %29761 = getelementptr inbounds double, ptr %29755, i64 %29760
  %29762 = load double, ptr %29761, align 8, !tbaa !11
  %29763 = call double @llvm.fmuladd.f64(double 0x3D1478FFFFFFFFFF, double %29762, double %29754)
  %29764 = load ptr, ptr %7, align 8, !tbaa !9
  %29765 = load i32, ptr %12, align 4, !tbaa !5
  %29766 = load i32, ptr %8, align 4, !tbaa !5
  %29767 = mul nsw i32 13, %29766
  %29768 = add nsw i32 %29765, %29767
  %29769 = sext i32 %29768 to i64
  %29770 = getelementptr inbounds double, ptr %29764, i64 %29769
  %29771 = load double, ptr %29770, align 8, !tbaa !11
  %29772 = call double @llvm.fmuladd.f64(double 0xBCE4140000000000, double %29771, double %29763)
  %29773 = load ptr, ptr %7, align 8, !tbaa !9
  %29774 = load i32, ptr %12, align 4, !tbaa !5
  %29775 = load i32, ptr %8, align 4, !tbaa !5
  %29776 = mul nsw i32 14, %29775
  %29777 = add nsw i32 %29774, %29776
  %29778 = sext i32 %29777 to i64
  %29779 = getelementptr inbounds double, ptr %29773, i64 %29778
  %29780 = load double, ptr %29779, align 8, !tbaa !11
  %29781 = call double @llvm.fmuladd.f64(double 0x3D0A620000000003, double %29780, double %29772)
  %29782 = load ptr, ptr %7, align 8, !tbaa !9
  %29783 = load i32, ptr %12, align 4, !tbaa !5
  %29784 = load i32, ptr %8, align 4, !tbaa !5
  %29785 = mul nsw i32 15, %29784
  %29786 = add nsw i32 %29783, %29785
  %29787 = sext i32 %29786 to i64
  %29788 = getelementptr inbounds double, ptr %29782, i64 %29787
  %29789 = load double, ptr %29788, align 8, !tbaa !11
  %29790 = call double @llvm.fmuladd.f64(double 0xBCF36BFFFFFFFFFF, double %29789, double %29781)
  %29791 = load ptr, ptr %7, align 8, !tbaa !9
  %29792 = load i32, ptr %12, align 4, !tbaa !5
  %29793 = load i32, ptr %8, align 4, !tbaa !5
  %29794 = mul nsw i32 16, %29793
  %29795 = add nsw i32 %29792, %29794
  %29796 = sext i32 %29795 to i64
  %29797 = getelementptr inbounds double, ptr %29791, i64 %29796
  %29798 = load double, ptr %29797, align 8, !tbaa !11
  %29799 = call double @llvm.fmuladd.f64(double 0xBD17E27FFFFFFFFF, double %29798, double %29790)
  %29800 = load ptr, ptr %7, align 8, !tbaa !9
  %29801 = load i32, ptr %12, align 4, !tbaa !5
  %29802 = load i32, ptr %8, align 4, !tbaa !5
  %29803 = mul nsw i32 17, %29802
  %29804 = add nsw i32 %29801, %29803
  %29805 = sext i32 %29804 to i64
  %29806 = getelementptr inbounds double, ptr %29800, i64 %29805
  %29807 = load double, ptr %29806, align 8, !tbaa !11
  %29808 = call double @llvm.fmuladd.f64(double 0x40118E7E1D8191B1, double %29807, double %29799)
  %29809 = load ptr, ptr %7, align 8, !tbaa !9
  %29810 = load i32, ptr %12, align 4, !tbaa !5
  %29811 = load i32, ptr %8, align 4, !tbaa !5
  %29812 = mul nsw i32 18, %29811
  %29813 = add nsw i32 %29810, %29812
  %29814 = sext i32 %29813 to i64
  %29815 = getelementptr inbounds double, ptr %29809, i64 %29814
  %29816 = load double, ptr %29815, align 8, !tbaa !11
  %29817 = call double @llvm.fmuladd.f64(double 0xBD07F3FFFFFFFFFF, double %29816, double %29808)
  %29818 = load ptr, ptr %7, align 8, !tbaa !9
  %29819 = load i32, ptr %12, align 4, !tbaa !5
  %29820 = load i32, ptr %8, align 4, !tbaa !5
  %29821 = mul nsw i32 19, %29820
  %29822 = add nsw i32 %29819, %29821
  %29823 = sext i32 %29822 to i64
  %29824 = getelementptr inbounds double, ptr %29818, i64 %29823
  %29825 = load double, ptr %29824, align 8, !tbaa !11
  %29826 = call double @llvm.fmuladd.f64(double 0xBCF6F80000000000, double %29825, double %29817)
  store double %29826, ptr %11, align 8, !tbaa !11
  %29827 = load double, ptr %11, align 8, !tbaa !11
  %29828 = load ptr, ptr %9, align 8, !tbaa !9
  %29829 = load i32, ptr %12, align 4, !tbaa !5
  %29830 = load i32, ptr %10, align 4, !tbaa !5
  %29831 = mul nsw i32 117, %29830
  %29832 = add nsw i32 %29829, %29831
  %29833 = sext i32 %29832 to i64
  %29834 = getelementptr inbounds double, ptr %29828, i64 %29833
  store double %29827, ptr %29834, align 8, !tbaa !11
  %29835 = load ptr, ptr %7, align 8, !tbaa !9
  %29836 = load i32, ptr %12, align 4, !tbaa !5
  %29837 = load i32, ptr %8, align 4, !tbaa !5
  %29838 = mul nsw i32 0, %29837
  %29839 = add nsw i32 %29836, %29838
  %29840 = sext i32 %29839 to i64
  %29841 = getelementptr inbounds double, ptr %29835, i64 %29840
  %29842 = load double, ptr %29841, align 8, !tbaa !11
  %29843 = load ptr, ptr %7, align 8, !tbaa !9
  %29844 = load i32, ptr %12, align 4, !tbaa !5
  %29845 = load i32, ptr %8, align 4, !tbaa !5
  %29846 = mul nsw i32 1, %29845
  %29847 = add nsw i32 %29844, %29846
  %29848 = sext i32 %29847 to i64
  %29849 = getelementptr inbounds double, ptr %29843, i64 %29848
  %29850 = load double, ptr %29849, align 8, !tbaa !11
  %29851 = fmul double 0x3CD9800000000002, %29850
  %29852 = call double @llvm.fmuladd.f64(double 0x3CD7000000000000, double %29842, double %29851)
  %29853 = load ptr, ptr %7, align 8, !tbaa !9
  %29854 = load i32, ptr %12, align 4, !tbaa !5
  %29855 = load i32, ptr %8, align 4, !tbaa !5
  %29856 = mul nsw i32 2, %29855
  %29857 = add nsw i32 %29854, %29856
  %29858 = sext i32 %29857 to i64
  %29859 = getelementptr inbounds double, ptr %29853, i64 %29858
  %29860 = load double, ptr %29859, align 8, !tbaa !11
  %29861 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %29860, double %29852)
  %29862 = load ptr, ptr %7, align 8, !tbaa !9
  %29863 = load i32, ptr %12, align 4, !tbaa !5
  %29864 = load i32, ptr %8, align 4, !tbaa !5
  %29865 = mul nsw i32 3, %29864
  %29866 = add nsw i32 %29863, %29865
  %29867 = sext i32 %29866 to i64
  %29868 = getelementptr inbounds double, ptr %29862, i64 %29867
  %29869 = load double, ptr %29868, align 8, !tbaa !11
  %29870 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %29869, double %29861)
  %29871 = load ptr, ptr %7, align 8, !tbaa !9
  %29872 = load i32, ptr %12, align 4, !tbaa !5
  %29873 = load i32, ptr %8, align 4, !tbaa !5
  %29874 = mul nsw i32 4, %29873
  %29875 = add nsw i32 %29872, %29874
  %29876 = sext i32 %29875 to i64
  %29877 = getelementptr inbounds double, ptr %29871, i64 %29876
  %29878 = load double, ptr %29877, align 8, !tbaa !11
  %29879 = call double @llvm.fmuladd.f64(double 0xBCB2000000000000, double %29878, double %29870)
  %29880 = load ptr, ptr %7, align 8, !tbaa !9
  %29881 = load i32, ptr %12, align 4, !tbaa !5
  %29882 = load i32, ptr %8, align 4, !tbaa !5
  %29883 = mul nsw i32 5, %29882
  %29884 = add nsw i32 %29881, %29883
  %29885 = sext i32 %29884 to i64
  %29886 = getelementptr inbounds double, ptr %29880, i64 %29885
  %29887 = load double, ptr %29886, align 8, !tbaa !11
  %29888 = call double @llvm.fmuladd.f64(double 0xBCE1000000000000, double %29887, double %29879)
  %29889 = load ptr, ptr %7, align 8, !tbaa !9
  %29890 = load i32, ptr %12, align 4, !tbaa !5
  %29891 = load i32, ptr %8, align 4, !tbaa !5
  %29892 = mul nsw i32 6, %29891
  %29893 = add nsw i32 %29890, %29892
  %29894 = sext i32 %29893 to i64
  %29895 = getelementptr inbounds double, ptr %29889, i64 %29894
  %29896 = load double, ptr %29895, align 8, !tbaa !11
  %29897 = call double @llvm.fmuladd.f64(double 0xBCC2400000000000, double %29896, double %29888)
  %29898 = load ptr, ptr %7, align 8, !tbaa !9
  %29899 = load i32, ptr %12, align 4, !tbaa !5
  %29900 = load i32, ptr %8, align 4, !tbaa !5
  %29901 = mul nsw i32 7, %29900
  %29902 = add nsw i32 %29899, %29901
  %29903 = sext i32 %29902 to i64
  %29904 = getelementptr inbounds double, ptr %29898, i64 %29903
  %29905 = load double, ptr %29904, align 8, !tbaa !11
  %29906 = call double @llvm.fmuladd.f64(double 0xBCCF000000000000, double %29905, double %29897)
  %29907 = load ptr, ptr %7, align 8, !tbaa !9
  %29908 = load i32, ptr %12, align 4, !tbaa !5
  %29909 = load i32, ptr %8, align 4, !tbaa !5
  %29910 = mul nsw i32 8, %29909
  %29911 = add nsw i32 %29908, %29910
  %29912 = sext i32 %29911 to i64
  %29913 = getelementptr inbounds double, ptr %29907, i64 %29912
  %29914 = load double, ptr %29913, align 8, !tbaa !11
  %29915 = call double @llvm.fmuladd.f64(double 0x3FD4F58312101B3D, double %29914, double %29906)
  %29916 = load ptr, ptr %7, align 8, !tbaa !9
  %29917 = load i32, ptr %12, align 4, !tbaa !5
  %29918 = load i32, ptr %8, align 4, !tbaa !5
  %29919 = mul nsw i32 9, %29918
  %29920 = add nsw i32 %29917, %29919
  %29921 = sext i32 %29920 to i64
  %29922 = getelementptr inbounds double, ptr %29916, i64 %29921
  %29923 = load double, ptr %29922, align 8, !tbaa !11
  %29924 = call double @llvm.fmuladd.f64(double 0x3CCE000000000000, double %29923, double %29915)
  %29925 = load ptr, ptr %7, align 8, !tbaa !9
  %29926 = load i32, ptr %12, align 4, !tbaa !5
  %29927 = load i32, ptr %8, align 4, !tbaa !5
  %29928 = mul nsw i32 10, %29927
  %29929 = add nsw i32 %29926, %29928
  %29930 = sext i32 %29929 to i64
  %29931 = getelementptr inbounds double, ptr %29925, i64 %29930
  %29932 = load double, ptr %29931, align 8, !tbaa !11
  %29933 = call double @llvm.fmuladd.f64(double 0x3D16B00000000000, double %29932, double %29924)
  %29934 = load ptr, ptr %7, align 8, !tbaa !9
  %29935 = load i32, ptr %12, align 4, !tbaa !5
  %29936 = load i32, ptr %8, align 4, !tbaa !5
  %29937 = mul nsw i32 11, %29936
  %29938 = add nsw i32 %29935, %29937
  %29939 = sext i32 %29938 to i64
  %29940 = getelementptr inbounds double, ptr %29934, i64 %29939
  %29941 = load double, ptr %29940, align 8, !tbaa !11
  %29942 = call double @llvm.fmuladd.f64(double 0x3D13680000000001, double %29941, double %29933)
  %29943 = load ptr, ptr %7, align 8, !tbaa !9
  %29944 = load i32, ptr %12, align 4, !tbaa !5
  %29945 = load i32, ptr %8, align 4, !tbaa !5
  %29946 = mul nsw i32 12, %29945
  %29947 = add nsw i32 %29944, %29946
  %29948 = sext i32 %29947 to i64
  %29949 = getelementptr inbounds double, ptr %29943, i64 %29948
  %29950 = load double, ptr %29949, align 8, !tbaa !11
  %29951 = call double @llvm.fmuladd.f64(double 0x3CEE600000000000, double %29950, double %29942)
  %29952 = load ptr, ptr %7, align 8, !tbaa !9
  %29953 = load i32, ptr %12, align 4, !tbaa !5
  %29954 = load i32, ptr %8, align 4, !tbaa !5
  %29955 = mul nsw i32 13, %29954
  %29956 = add nsw i32 %29953, %29955
  %29957 = sext i32 %29956 to i64
  %29958 = getelementptr inbounds double, ptr %29952, i64 %29957
  %29959 = load double, ptr %29958, align 8, !tbaa !11
  %29960 = call double @llvm.fmuladd.f64(double 0xBCE6500000000001, double %29959, double %29951)
  %29961 = load ptr, ptr %7, align 8, !tbaa !9
  %29962 = load i32, ptr %12, align 4, !tbaa !5
  %29963 = load i32, ptr %8, align 4, !tbaa !5
  %29964 = mul nsw i32 14, %29963
  %29965 = add nsw i32 %29962, %29964
  %29966 = sext i32 %29965 to i64
  %29967 = getelementptr inbounds double, ptr %29961, i64 %29966
  %29968 = load double, ptr %29967, align 8, !tbaa !11
  %29969 = call double @llvm.fmuladd.f64(double 0xBCF7A00000000000, double %29968, double %29960)
  %29970 = load ptr, ptr %7, align 8, !tbaa !9
  %29971 = load i32, ptr %12, align 4, !tbaa !5
  %29972 = load i32, ptr %8, align 4, !tbaa !5
  %29973 = mul nsw i32 15, %29972
  %29974 = add nsw i32 %29971, %29973
  %29975 = sext i32 %29974 to i64
  %29976 = getelementptr inbounds double, ptr %29970, i64 %29975
  %29977 = load double, ptr %29976, align 8, !tbaa !11
  %29978 = call double @llvm.fmuladd.f64(double 0xBD18C00000000000, double %29977, double %29969)
  %29979 = load ptr, ptr %7, align 8, !tbaa !9
  %29980 = load i32, ptr %12, align 4, !tbaa !5
  %29981 = load i32, ptr %8, align 4, !tbaa !5
  %29982 = mul nsw i32 16, %29981
  %29983 = add nsw i32 %29980, %29982
  %29984 = sext i32 %29983 to i64
  %29985 = getelementptr inbounds double, ptr %29979, i64 %29984
  %29986 = load double, ptr %29985, align 8, !tbaa !11
  %29987 = call double @llvm.fmuladd.f64(double 0xBCF6680000000000, double %29986, double %29978)
  %29988 = load ptr, ptr %7, align 8, !tbaa !9
  %29989 = load i32, ptr %12, align 4, !tbaa !5
  %29990 = load i32, ptr %8, align 4, !tbaa !5
  %29991 = mul nsw i32 17, %29990
  %29992 = add nsw i32 %29989, %29991
  %29993 = sext i32 %29992 to i64
  %29994 = getelementptr inbounds double, ptr %29988, i64 %29993
  %29995 = load double, ptr %29994, align 8, !tbaa !11
  %29996 = call double @llvm.fmuladd.f64(double 0xBD09800000000002, double %29995, double %29987)
  %29997 = load ptr, ptr %7, align 8, !tbaa !9
  %29998 = load i32, ptr %12, align 4, !tbaa !5
  %29999 = load i32, ptr %8, align 4, !tbaa !5
  %30000 = mul nsw i32 18, %29999
  %30001 = add nsw i32 %29998, %30000
  %30002 = sext i32 %30001 to i64
  %30003 = getelementptr inbounds double, ptr %29997, i64 %30002
  %30004 = load double, ptr %30003, align 8, !tbaa !11
  %30005 = call double @llvm.fmuladd.f64(double 0x40118E7E1D8191B0, double %30004, double %29996)
  %30006 = load ptr, ptr %7, align 8, !tbaa !9
  %30007 = load i32, ptr %12, align 4, !tbaa !5
  %30008 = load i32, ptr %8, align 4, !tbaa !5
  %30009 = mul nsw i32 19, %30008
  %30010 = add nsw i32 %30007, %30009
  %30011 = sext i32 %30010 to i64
  %30012 = getelementptr inbounds double, ptr %30006, i64 %30011
  %30013 = load double, ptr %30012, align 8, !tbaa !11
  %30014 = call double @llvm.fmuladd.f64(double 0x3D0DA00000000003, double %30013, double %30005)
  store double %30014, ptr %11, align 8, !tbaa !11
  %30015 = load double, ptr %11, align 8, !tbaa !11
  %30016 = load ptr, ptr %9, align 8, !tbaa !9
  %30017 = load i32, ptr %12, align 4, !tbaa !5
  %30018 = load i32, ptr %10, align 4, !tbaa !5
  %30019 = mul nsw i32 118, %30018
  %30020 = add nsw i32 %30017, %30019
  %30021 = sext i32 %30020 to i64
  %30022 = getelementptr inbounds double, ptr %30016, i64 %30021
  store double %30015, ptr %30022, align 8, !tbaa !11
  %30023 = load ptr, ptr %7, align 8, !tbaa !9
  %30024 = load i32, ptr %12, align 4, !tbaa !5
  %30025 = load i32, ptr %8, align 4, !tbaa !5
  %30026 = mul nsw i32 0, %30025
  %30027 = add nsw i32 %30024, %30026
  %30028 = sext i32 %30027 to i64
  %30029 = getelementptr inbounds double, ptr %30023, i64 %30028
  %30030 = load double, ptr %30029, align 8, !tbaa !11
  %30031 = load ptr, ptr %7, align 8, !tbaa !9
  %30032 = load i32, ptr %12, align 4, !tbaa !5
  %30033 = load i32, ptr %8, align 4, !tbaa !5
  %30034 = mul nsw i32 1, %30033
  %30035 = add nsw i32 %30032, %30034
  %30036 = sext i32 %30035 to i64
  %30037 = getelementptr inbounds double, ptr %30031, i64 %30036
  %30038 = load double, ptr %30037, align 8, !tbaa !11
  %30039 = fmul double 0x3CD7800000000000, %30038
  %30040 = call double @llvm.fmuladd.f64(double 0x3CD8000000000001, double %30030, double %30039)
  %30041 = load ptr, ptr %7, align 8, !tbaa !9
  %30042 = load i32, ptr %12, align 4, !tbaa !5
  %30043 = load i32, ptr %8, align 4, !tbaa !5
  %30044 = mul nsw i32 2, %30043
  %30045 = add nsw i32 %30042, %30044
  %30046 = sext i32 %30045 to i64
  %30047 = getelementptr inbounds double, ptr %30041, i64 %30046
  %30048 = load double, ptr %30047, align 8, !tbaa !11
  %30049 = call double @llvm.fmuladd.f64(double 0xBCAE000000000002, double %30048, double %30040)
  %30050 = load ptr, ptr %7, align 8, !tbaa !9
  %30051 = load i32, ptr %12, align 4, !tbaa !5
  %30052 = load i32, ptr %8, align 4, !tbaa !5
  %30053 = mul nsw i32 3, %30052
  %30054 = add nsw i32 %30051, %30053
  %30055 = sext i32 %30054 to i64
  %30056 = getelementptr inbounds double, ptr %30050, i64 %30055
  %30057 = load double, ptr %30056, align 8, !tbaa !11
  %30058 = call double @llvm.fmuladd.f64(double 0x3CA7000000000002, double %30057, double %30049)
  %30059 = load ptr, ptr %7, align 8, !tbaa !9
  %30060 = load i32, ptr %12, align 4, !tbaa !5
  %30061 = load i32, ptr %8, align 4, !tbaa !5
  %30062 = mul nsw i32 4, %30061
  %30063 = add nsw i32 %30060, %30062
  %30064 = sext i32 %30063 to i64
  %30065 = getelementptr inbounds double, ptr %30059, i64 %30064
  %30066 = load double, ptr %30065, align 8, !tbaa !11
  %30067 = call double @llvm.fmuladd.f64(double 0xBCE1800000000000, double %30066, double %30058)
  %30068 = load ptr, ptr %7, align 8, !tbaa !9
  %30069 = load i32, ptr %12, align 4, !tbaa !5
  %30070 = load i32, ptr %8, align 4, !tbaa !5
  %30071 = mul nsw i32 5, %30070
  %30072 = add nsw i32 %30069, %30071
  %30073 = sext i32 %30072 to i64
  %30074 = getelementptr inbounds double, ptr %30068, i64 %30073
  %30075 = load double, ptr %30074, align 8, !tbaa !11
  %30076 = call double @llvm.fmuladd.f64(double 0xBCBC000000000000, double %30075, double %30067)
  %30077 = load ptr, ptr %7, align 8, !tbaa !9
  %30078 = load i32, ptr %12, align 4, !tbaa !5
  %30079 = load i32, ptr %8, align 4, !tbaa !5
  %30080 = mul nsw i32 6, %30079
  %30081 = add nsw i32 %30078, %30080
  %30082 = sext i32 %30081 to i64
  %30083 = getelementptr inbounds double, ptr %30077, i64 %30082
  %30084 = load double, ptr %30083, align 8, !tbaa !11
  %30085 = call double @llvm.fmuladd.f64(double 0xBCC9000000000000, double %30084, double %30076)
  %30086 = load ptr, ptr %7, align 8, !tbaa !9
  %30087 = load i32, ptr %12, align 4, !tbaa !5
  %30088 = load i32, ptr %8, align 4, !tbaa !5
  %30089 = mul nsw i32 7, %30088
  %30090 = add nsw i32 %30087, %30089
  %30091 = sext i32 %30090 to i64
  %30092 = getelementptr inbounds double, ptr %30086, i64 %30091
  %30093 = load double, ptr %30092, align 8, !tbaa !11
  %30094 = call double @llvm.fmuladd.f64(double 0xBCAC000000000000, double %30093, double %30085)
  %30095 = load ptr, ptr %7, align 8, !tbaa !9
  %30096 = load i32, ptr %12, align 4, !tbaa !5
  %30097 = load i32, ptr %8, align 4, !tbaa !5
  %30098 = mul nsw i32 8, %30097
  %30099 = add nsw i32 %30096, %30098
  %30100 = sext i32 %30099 to i64
  %30101 = getelementptr inbounds double, ptr %30095, i64 %30100
  %30102 = load double, ptr %30101, align 8, !tbaa !11
  %30103 = call double @llvm.fmuladd.f64(double 0x3CCD000000000000, double %30102, double %30094)
  %30104 = load ptr, ptr %7, align 8, !tbaa !9
  %30105 = load i32, ptr %12, align 4, !tbaa !5
  %30106 = load i32, ptr %8, align 4, !tbaa !5
  %30107 = mul nsw i32 9, %30106
  %30108 = add nsw i32 %30105, %30107
  %30109 = sext i32 %30108 to i64
  %30110 = getelementptr inbounds double, ptr %30104, i64 %30109
  %30111 = load double, ptr %30110, align 8, !tbaa !11
  %30112 = call double @llvm.fmuladd.f64(double 0x3FD4F58312101B3D, double %30111, double %30103)
  %30113 = load ptr, ptr %7, align 8, !tbaa !9
  %30114 = load i32, ptr %12, align 4, !tbaa !5
  %30115 = load i32, ptr %8, align 4, !tbaa !5
  %30116 = mul nsw i32 10, %30115
  %30117 = add nsw i32 %30114, %30116
  %30118 = sext i32 %30117 to i64
  %30119 = getelementptr inbounds double, ptr %30113, i64 %30118
  %30120 = load double, ptr %30119, align 8, !tbaa !11
  %30121 = call double @llvm.fmuladd.f64(double 0x3D17000000000000, double %30120, double %30112)
  %30122 = load ptr, ptr %7, align 8, !tbaa !9
  %30123 = load i32, ptr %12, align 4, !tbaa !5
  %30124 = load i32, ptr %8, align 4, !tbaa !5
  %30125 = mul nsw i32 11, %30124
  %30126 = add nsw i32 %30123, %30125
  %30127 = sext i32 %30126 to i64
  %30128 = getelementptr inbounds double, ptr %30122, i64 %30127
  %30129 = load double, ptr %30128, align 8, !tbaa !11
  %30130 = call double @llvm.fmuladd.f64(double 0x3D12680000000000, double %30129, double %30121)
  %30131 = load ptr, ptr %7, align 8, !tbaa !9
  %30132 = load i32, ptr %12, align 4, !tbaa !5
  %30133 = load i32, ptr %8, align 4, !tbaa !5
  %30134 = mul nsw i32 12, %30133
  %30135 = add nsw i32 %30132, %30134
  %30136 = sext i32 %30135 to i64
  %30137 = getelementptr inbounds double, ptr %30131, i64 %30136
  %30138 = load double, ptr %30137, align 8, !tbaa !11
  %30139 = call double @llvm.fmuladd.f64(double 0xBCEADFFFFFFFFFFF, double %30138, double %30130)
  %30140 = load ptr, ptr %7, align 8, !tbaa !9
  %30141 = load i32, ptr %12, align 4, !tbaa !5
  %30142 = load i32, ptr %8, align 4, !tbaa !5
  %30143 = mul nsw i32 13, %30142
  %30144 = add nsw i32 %30141, %30143
  %30145 = sext i32 %30144 to i64
  %30146 = getelementptr inbounds double, ptr %30140, i64 %30145
  %30147 = load double, ptr %30146, align 8, !tbaa !11
  %30148 = call double @llvm.fmuladd.f64(double 0x3CF1380000000000, double %30147, double %30139)
  %30149 = load ptr, ptr %7, align 8, !tbaa !9
  %30150 = load i32, ptr %12, align 4, !tbaa !5
  %30151 = load i32, ptr %8, align 4, !tbaa !5
  %30152 = mul nsw i32 14, %30151
  %30153 = add nsw i32 %30150, %30152
  %30154 = sext i32 %30153 to i64
  %30155 = getelementptr inbounds double, ptr %30149, i64 %30154
  %30156 = load double, ptr %30155, align 8, !tbaa !11
  %30157 = call double @llvm.fmuladd.f64(double 0xBD19CFFFFFFFFFFF, double %30156, double %30148)
  %30158 = load ptr, ptr %7, align 8, !tbaa !9
  %30159 = load i32, ptr %12, align 4, !tbaa !5
  %30160 = load i32, ptr %8, align 4, !tbaa !5
  %30161 = mul nsw i32 15, %30160
  %30162 = add nsw i32 %30159, %30161
  %30163 = sext i32 %30162 to i64
  %30164 = getelementptr inbounds double, ptr %30158, i64 %30163
  %30165 = load double, ptr %30164, align 8, !tbaa !11
  %30166 = call double @llvm.fmuladd.f64(double 0xBCF7400000000000, double %30165, double %30157)
  %30167 = load ptr, ptr %7, align 8, !tbaa !9
  %30168 = load i32, ptr %12, align 4, !tbaa !5
  %30169 = load i32, ptr %8, align 4, !tbaa !5
  %30170 = mul nsw i32 16, %30169
  %30171 = add nsw i32 %30168, %30170
  %30172 = sext i32 %30171 to i64
  %30173 = getelementptr inbounds double, ptr %30167, i64 %30172
  %30174 = load double, ptr %30173, align 8, !tbaa !11
  %30175 = call double @llvm.fmuladd.f64(double 0xBD08700000000003, double %30174, double %30166)
  %30176 = load ptr, ptr %7, align 8, !tbaa !9
  %30177 = load i32, ptr %12, align 4, !tbaa !5
  %30178 = load i32, ptr %8, align 4, !tbaa !5
  %30179 = mul nsw i32 17, %30178
  %30180 = add nsw i32 %30177, %30179
  %30181 = sext i32 %30180 to i64
  %30182 = getelementptr inbounds double, ptr %30176, i64 %30181
  %30183 = load double, ptr %30182, align 8, !tbaa !11
  %30184 = call double @llvm.fmuladd.f64(double 0xBCF6E00000000000, double %30183, double %30175)
  %30185 = load ptr, ptr %7, align 8, !tbaa !9
  %30186 = load i32, ptr %12, align 4, !tbaa !5
  %30187 = load i32, ptr %8, align 4, !tbaa !5
  %30188 = mul nsw i32 18, %30187
  %30189 = add nsw i32 %30186, %30188
  %30190 = sext i32 %30189 to i64
  %30191 = getelementptr inbounds double, ptr %30185, i64 %30190
  %30192 = load double, ptr %30191, align 8, !tbaa !11
  %30193 = call double @llvm.fmuladd.f64(double 0x3D0FD00000000002, double %30192, double %30184)
  %30194 = load ptr, ptr %7, align 8, !tbaa !9
  %30195 = load i32, ptr %12, align 4, !tbaa !5
  %30196 = load i32, ptr %8, align 4, !tbaa !5
  %30197 = mul nsw i32 19, %30196
  %30198 = add nsw i32 %30195, %30197
  %30199 = sext i32 %30198 to i64
  %30200 = getelementptr inbounds double, ptr %30194, i64 %30199
  %30201 = load double, ptr %30200, align 8, !tbaa !11
  %30202 = call double @llvm.fmuladd.f64(double 0x40118E7E1D8191B1, double %30201, double %30193)
  store double %30202, ptr %11, align 8, !tbaa !11
  %30203 = load double, ptr %11, align 8, !tbaa !11
  %30204 = load ptr, ptr %9, align 8, !tbaa !9
  %30205 = load i32, ptr %12, align 4, !tbaa !5
  %30206 = load i32, ptr %10, align 4, !tbaa !5
  %30207 = mul nsw i32 119, %30206
  %30208 = add nsw i32 %30205, %30207
  %30209 = sext i32 %30208 to i64
  %30210 = getelementptr inbounds double, ptr %30204, i64 %30209
  store double %30203, ptr %30210, align 8, !tbaa !11
  br label %30211

30211:                                            ; preds = %18
  %30212 = load i32, ptr %12, align 4, !tbaa !5
  %30213 = add nsw i32 %30212, 1
  store i32 %30213, ptr %12, align 4, !tbaa !5
  br label %13, !llvm.loop !13

30214:                                            ; preds = %17
  call void @llvm.lifetime.end.p0(i64 8, ptr %11) #3
  ret void
}

attributes #0 = { nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
attributes #1 = { nocallback nofree nosync nounwind speculatable willreturn memory(none) }
attributes #2 = { 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 #3 = { nounwind }

!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 = !{!"int", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C/C++ TBAA"}
!9 = !{!10, !10, i64 0}
!10 = !{!"any pointer", !7, i64 0}
!11 = !{!12, !12, i64 0}
!12 = !{!"double", !7, i64 0}
!13 = distinct !{!13, !14}
!14 = !{!"llvm.loop.mustprogress"}


; 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 nocallback nofree nosync nounwind speculatable willreturn memory(none)
declare double @llvm.fmuladd.f64(double, double, double) #0

; Function Attrs: nofree norecurse nosync nounwind memory(argmem: readwrite) uwtable
define dso_local void @gimmik_mm_cpu_14215087946191635781_b0(i32 noundef %0, ptr noalias noundef readonly %1, i32 noundef %2, ptr noalias noundef writeonly %3, i32 noundef %4) local_unnamed_addr #1 {
  %6 = icmp sgt i32 %0, 0
  br i1 %6, label %.lr.ph, label %._crit_edge

.lr.ph:                                           ; preds = %5
  %7 = mul nsw i32 %2, 36
  %8 = mul nsw i32 %2, 37
  %9 = mul nsw i32 %2, 38
  %10 = mul nsw i32 %2, 39
  %11 = mul nsw i32 %2, 40
  %12 = mul nsw i32 %2, 41
  %13 = mul nsw i32 %2, 42
  %14 = mul nsw i32 %2, 43
  %15 = mul nsw i32 %2, 44
  %16 = mul nsw i32 %2, 45
  %17 = mul nsw i32 %2, 46
  %18 = mul nsw i32 %2, 47
  %19 = mul nsw i32 %2, 48
  %20 = mul nsw i32 %2, 49
  %21 = mul nsw i32 %2, 50
  %22 = mul nsw i32 %2, 51
  %23 = mul nsw i32 %2, 52
  %24 = mul nsw i32 %2, 53
  %25 = mul nsw i32 %2, 54
  %26 = mul nsw i32 %2, 55
  %27 = mul nsw i32 %2, 56
  %28 = mul nsw i32 %2, 57
  %29 = mul nsw i32 %2, 58
  %30 = mul nsw i32 %2, 59
  %31 = mul nsw i32 %2, 60
  %32 = mul nsw i32 %2, 61
  %33 = mul nsw i32 %2, 62
  %34 = mul nsw i32 %2, 63
  %35 = shl nsw i32 %2, 6
  %36 = mul nsw i32 %2, 65
  %37 = mul nsw i32 %2, 66
  %38 = mul nsw i32 %2, 67
  %39 = shl nsw i32 %4, 1
  %40 = mul nsw i32 %4, 3
  %41 = shl nsw i32 %4, 2
  %42 = mul nsw i32 %4, 5
  %43 = mul nsw i32 %4, 6
  %44 = mul nsw i32 %4, 7
  %45 = shl nsw i32 %4, 3
  %46 = mul nsw i32 %4, 9
  %47 = mul nsw i32 %4, 10
  %48 = mul nsw i32 %4, 11
  %49 = mul nsw i32 %4, 12
  %50 = mul nsw i32 %4, 13
  %51 = mul nsw i32 %4, 14
  %52 = mul nsw i32 %4, 15
  %53 = shl nsw i32 %4, 4
  %54 = mul nsw i32 %4, 17
  %55 = mul nsw i32 %4, 18
  %56 = mul nsw i32 %4, 19
  %57 = mul nsw i32 %4, 20
  %58 = mul nsw i32 %4, 21
  %59 = mul nsw i32 %4, 22
  %60 = mul nsw i32 %4, 23
  %61 = mul nsw i32 %4, 24
  %62 = mul nsw i32 %4, 25
  %63 = mul nsw i32 %4, 26
  %64 = mul nsw i32 %4, 27
  %65 = mul nsw i32 %4, 28
  %66 = mul nsw i32 %4, 29
  %67 = mul nsw i32 %4, 30
  %68 = mul nsw i32 %4, 31
  %69 = shl nsw i32 %4, 5
  %70 = mul nsw i32 %4, 33
  %71 = mul nsw i32 %4, 34
  %72 = mul nsw i32 %4, 35
  %73 = mul nsw i32 %4, 36
  %74 = mul nsw i32 %4, 37
  %75 = mul nsw i32 %4, 38
  %76 = mul nsw i32 %4, 39
  %77 = mul nsw i32 %2, 20
  %78 = mul nsw i32 %2, 21
  %79 = mul nsw i32 %2, 22
  %80 = mul nsw i32 %2, 23
  %81 = mul nsw i32 %2, 24
  %82 = mul nsw i32 %2, 25
  %83 = mul nsw i32 %2, 26
  %84 = mul nsw i32 %2, 27
  %85 = mul nsw i32 %2, 28
  %86 = mul nsw i32 %2, 29
  %87 = mul nsw i32 %2, 30
  %88 = mul nsw i32 %2, 31
  %89 = shl nsw i32 %2, 5
  %90 = mul nsw i32 %2, 33
  %91 = mul nsw i32 %2, 34
  %92 = mul nsw i32 %2, 35
  %93 = mul nsw i32 %4, 40
  %94 = mul nsw i32 %4, 41
  %95 = mul nsw i32 %4, 42
  %96 = mul nsw i32 %4, 43
  %97 = mul nsw i32 %4, 44
  %98 = mul nsw i32 %4, 45
  %99 = mul nsw i32 %4, 46
  %100 = mul nsw i32 %4, 47
  %101 = mul nsw i32 %4, 48
  %102 = mul nsw i32 %4, 49
  %103 = mul nsw i32 %4, 50
  %104 = mul nsw i32 %4, 51
  %105 = mul nsw i32 %4, 52
  %106 = mul nsw i32 %4, 53
  %107 = mul nsw i32 %4, 54
  %108 = mul nsw i32 %4, 55
  %109 = mul nsw i32 %4, 56
  %110 = mul nsw i32 %4, 57
  %111 = mul nsw i32 %4, 58
  %112 = mul nsw i32 %4, 59
  %113 = mul nsw i32 %4, 60
  %114 = mul nsw i32 %4, 61
  %115 = mul nsw i32 %4, 62
  %116 = mul nsw i32 %4, 63
  %117 = shl nsw i32 %4, 6
  %118 = mul nsw i32 %4, 65
  %119 = mul nsw i32 %4, 66
  %120 = mul nsw i32 %4, 67
  %121 = mul nsw i32 %4, 68
  %122 = mul nsw i32 %4, 69
  %123 = mul nsw i32 %4, 70
  %124 = mul nsw i32 %4, 71
  %125 = mul nsw i32 %4, 72
  %126 = mul nsw i32 %4, 73
  %127 = mul nsw i32 %4, 74
  %128 = mul nsw i32 %4, 75
  %129 = mul nsw i32 %4, 76
  %130 = mul nsw i32 %4, 77
  %131 = mul nsw i32 %4, 78
  %132 = mul nsw i32 %4, 79
  %133 = shl nsw i32 %2, 1
  %134 = mul nsw i32 %2, 3
  %135 = shl nsw i32 %2, 2
  %136 = mul nsw i32 %2, 5
  %137 = mul nsw i32 %2, 6
  %138 = mul nsw i32 %2, 7
  %139 = shl nsw i32 %2, 3
  %140 = mul nsw i32 %2, 9
  %141 = mul nsw i32 %2, 10
  %142 = mul nsw i32 %2, 11
  %143 = mul nsw i32 %2, 12
  %144 = mul nsw i32 %2, 13
  %145 = mul nsw i32 %2, 14
  %146 = mul nsw i32 %2, 15
  %147 = shl nsw i32 %2, 4
  %148 = mul nsw i32 %2, 17
  %149 = mul nsw i32 %2, 18
  %150 = mul nsw i32 %2, 19
  %151 = mul nsw i32 %4, 80
  %152 = mul nsw i32 %4, 81
  %153 = mul nsw i32 %4, 82
  %154 = mul nsw i32 %4, 83
  %155 = mul nsw i32 %4, 84
  %156 = mul nsw i32 %4, 85
  %157 = mul nsw i32 %4, 86
  %158 = mul nsw i32 %4, 87
  %159 = mul nsw i32 %4, 88
  %160 = mul nsw i32 %4, 89
  %161 = mul nsw i32 %4, 90
  %162 = mul nsw i32 %4, 91
  %163 = mul nsw i32 %4, 92
  %164 = mul nsw i32 %4, 93
  %165 = mul nsw i32 %4, 94
  %166 = mul nsw i32 %4, 95
  %167 = mul nsw i32 %4, 96
  %168 = mul nsw i32 %4, 97
  %169 = mul nsw i32 %4, 98
  %170 = mul nsw i32 %4, 99
  %171 = mul nsw i32 %4, 100
  %172 = mul nsw i32 %4, 101
  %173 = mul nsw i32 %4, 102
  %174 = mul nsw i32 %4, 103
  %175 = mul nsw i32 %4, 104
  %176 = mul nsw i32 %4, 105
  %177 = mul nsw i32 %4, 106
  %178 = mul nsw i32 %4, 107
  %179 = mul nsw i32 %4, 108
  %180 = mul nsw i32 %4, 109
  %181 = mul nsw i32 %4, 110
  %182 = mul nsw i32 %4, 111
  %183 = mul nsw i32 %4, 112
  %184 = mul nsw i32 %4, 113
  %185 = mul nsw i32 %4, 114
  %186 = mul nsw i32 %4, 115
  %187 = mul nsw i32 %4, 116
  %188 = mul nsw i32 %4, 117
  %189 = mul nsw i32 %4, 118
  %190 = mul nsw i32 %4, 119
  %191 = sext i32 %7 to i64
  %192 = sext i32 %8 to i64
  %193 = sext i32 %9 to i64
  %194 = sext i32 %10 to i64
  %195 = sext i32 %11 to i64
  %196 = sext i32 %12 to i64
  %197 = sext i32 %13 to i64
  %198 = sext i32 %14 to i64
  %199 = sext i32 %15 to i64
  %200 = sext i32 %16 to i64
  %201 = sext i32 %17 to i64
  %202 = sext i32 %18 to i64
  %203 = sext i32 %19 to i64
  %204 = sext i32 %20 to i64
  %205 = sext i32 %21 to i64
  %206 = sext i32 %22 to i64
  %207 = sext i32 %23 to i64
  %208 = sext i32 %24 to i64
  %209 = sext i32 %25 to i64
  %210 = sext i32 %26 to i64
  %211 = sext i32 %27 to i64
  %212 = sext i32 %28 to i64
  %213 = sext i32 %29 to i64
  %214 = sext i32 %30 to i64
  %215 = sext i32 %31 to i64
  %216 = sext i32 %32 to i64
  %217 = sext i32 %33 to i64
  %218 = sext i32 %34 to i64
  %219 = sext i32 %35 to i64
  %220 = sext i32 %36 to i64
  %221 = sext i32 %37 to i64
  %222 = sext i32 %38 to i64
  %223 = sext i32 %4 to i64
  %224 = sext i32 %39 to i64
  %225 = sext i32 %40 to i64
  %226 = sext i32 %41 to i64
  %227 = sext i32 %42 to i64
  %228 = sext i32 %43 to i64
  %229 = sext i32 %44 to i64
  %230 = sext i32 %45 to i64
  %231 = sext i32 %46 to i64
  %232 = sext i32 %47 to i64
  %233 = sext i32 %48 to i64
  %234 = sext i32 %49 to i64
  %235 = sext i32 %50 to i64
  %236 = sext i32 %51 to i64
  %237 = sext i32 %52 to i64
  %238 = sext i32 %53 to i64
  %239 = sext i32 %54 to i64
  %240 = sext i32 %55 to i64
  %241 = sext i32 %56 to i64
  %242 = sext i32 %57 to i64
  %243 = sext i32 %58 to i64
  %244 = sext i32 %59 to i64
  %245 = sext i32 %60 to i64
  %246 = sext i32 %61 to i64
  %247 = sext i32 %62 to i64
  %248 = sext i32 %63 to i64
  %249 = sext i32 %64 to i64
  %250 = sext i32 %65 to i64
  %251 = sext i32 %66 to i64
  %252 = sext i32 %67 to i64
  %253 = sext i32 %68 to i64
  %254 = sext i32 %69 to i64
  %255 = sext i32 %70 to i64
  %256 = sext i32 %71 to i64
  %257 = sext i32 %72 to i64
  %258 = sext i32 %73 to i64
  %259 = sext i32 %74 to i64
  %260 = sext i32 %75 to i64
  %261 = sext i32 %76 to i64
  %262 = sext i32 %77 to i64
  %263 = sext i32 %78 to i64
  %264 = sext i32 %79 to i64
  %265 = sext i32 %80 to i64
  %266 = sext i32 %81 to i64
  %267 = sext i32 %82 to i64
  %268 = sext i32 %83 to i64
  %269 = sext i32 %84 to i64
  %270 = sext i32 %85 to i64
  %271 = sext i32 %86 to i64
  %272 = sext i32 %87 to i64
  %273 = sext i32 %88 to i64
  %274 = sext i32 %89 to i64
  %275 = sext i32 %90 to i64
  %276 = sext i32 %91 to i64
  %277 = sext i32 %92 to i64
  %278 = sext i32 %93 to i64
  %279 = sext i32 %94 to i64
  %280 = sext i32 %95 to i64
  %281 = sext i32 %96 to i64
  %282 = sext i32 %97 to i64
  %283 = sext i32 %98 to i64
  %284 = sext i32 %99 to i64
  %285 = sext i32 %100 to i64
  %286 = sext i32 %101 to i64
  %287 = sext i32 %102 to i64
  %288 = sext i32 %103 to i64
  %289 = sext i32 %104 to i64
  %290 = sext i32 %105 to i64
  %291 = sext i32 %106 to i64
  %292 = sext i32 %107 to i64
  %293 = sext i32 %108 to i64
  %294 = sext i32 %109 to i64
  %295 = sext i32 %110 to i64
  %296 = sext i32 %111 to i64
  %297 = sext i32 %112 to i64
  %298 = sext i32 %113 to i64
  %299 = sext i32 %114 to i64
  %300 = sext i32 %115 to i64
  %301 = sext i32 %116 to i64
  %302 = sext i32 %117 to i64
  %303 = sext i32 %118 to i64
  %304 = sext i32 %119 to i64
  %305 = sext i32 %120 to i64
  %306 = sext i32 %121 to i64
  %307 = sext i32 %122 to i64
  %308 = sext i32 %123 to i64
  %309 = sext i32 %124 to i64
  %310 = sext i32 %125 to i64
  %311 = sext i32 %126 to i64
  %312 = sext i32 %127 to i64
  %313 = sext i32 %128 to i64
  %314 = sext i32 %129 to i64
  %315 = sext i32 %130 to i64
  %316 = sext i32 %131 to i64
  %317 = sext i32 %132 to i64
  %318 = sext i32 %2 to i64
  %319 = sext i32 %133 to i64
  %320 = sext i32 %134 to i64
  %321 = sext i32 %135 to i64
  %322 = sext i32 %136 to i64
  %323 = sext i32 %137 to i64
  %324 = sext i32 %138 to i64
  %325 = sext i32 %139 to i64
  %326 = sext i32 %140 to i64
  %327 = sext i32 %141 to i64
  %328 = sext i32 %142 to i64
  %329 = sext i32 %143 to i64
  %330 = sext i32 %144 to i64
  %331 = sext i32 %145 to i64
  %332 = sext i32 %146 to i64
  %333 = sext i32 %147 to i64
  %334 = sext i32 %148 to i64
  %335 = sext i32 %149 to i64
  %336 = sext i32 %150 to i64
  %337 = sext i32 %151 to i64
  %338 = sext i32 %152 to i64
  %339 = sext i32 %153 to i64
  %340 = sext i32 %154 to i64
  %341 = sext i32 %155 to i64
  %342 = sext i32 %156 to i64
  %343 = sext i32 %157 to i64
  %344 = sext i32 %158 to i64
  %345 = sext i32 %159 to i64
  %346 = sext i32 %160 to i64
  %347 = sext i32 %161 to i64
  %348 = sext i32 %162 to i64
  %349 = sext i32 %163 to i64
  %350 = sext i32 %164 to i64
  %351 = sext i32 %165 to i64
  %352 = sext i32 %166 to i64
  %353 = sext i32 %167 to i64
  %354 = sext i32 %168 to i64
  %355 = sext i32 %169 to i64
  %356 = sext i32 %170 to i64
  %357 = sext i32 %171 to i64
  %358 = sext i32 %172 to i64
  %359 = sext i32 %173 to i64
  %360 = sext i32 %174 to i64
  %361 = sext i32 %175 to i64
  %362 = sext i32 %176 to i64
  %363 = sext i32 %177 to i64
  %364 = sext i32 %178 to i64
  %365 = sext i32 %179 to i64
  %366 = sext i32 %180 to i64
  %367 = sext i32 %181 to i64
  %368 = sext i32 %182 to i64
  %369 = sext i32 %183 to i64
  %370 = sext i32 %184 to i64
  %371 = sext i32 %185 to i64
  %372 = sext i32 %186 to i64
  %373 = sext i32 %187 to i64
  %374 = sext i32 %188 to i64
  %375 = sext i32 %189 to i64
  %376 = sext i32 %190 to i64
  %wide.trip.count = zext nneg i32 %0 to i64
  %invariant.gep = getelementptr double, ptr %1, i64 %191
  %invariant.gep10228 = getelementptr double, ptr %1, i64 %192
  %invariant.gep10230 = getelementptr double, ptr %1, i64 %193
  %invariant.gep10232 = getelementptr double, ptr %1, i64 %194
  %invariant.gep10234 = getelementptr double, ptr %1, i64 %195
  %invariant.gep10236 = getelementptr double, ptr %1, i64 %196
  %invariant.gep10238 = getelementptr double, ptr %1, i64 %197
  %invariant.gep10240 = getelementptr double, ptr %1, i64 %198
  %invariant.gep10242 = getelementptr double, ptr %1, i64 %199
  %invariant.gep10244 = getelementptr double, ptr %1, i64 %200
  %invariant.gep10246 = getelementptr double, ptr %1, i64 %201
  %invariant.gep10248 = getelementptr double, ptr %1, i64 %202
  %invariant.gep10250 = getelementptr double, ptr %1, i64 %203
  %invariant.gep10252 = getelementptr double, ptr %1, i64 %204
  %invariant.gep10254 = getelementptr double, ptr %1, i64 %205
  %invariant.gep10256 = getelementptr double, ptr %1, i64 %206
  %invariant.gep10258 = getelementptr double, ptr %1, i64 %207
  %invariant.gep10260 = getelementptr double, ptr %1, i64 %208
  %invariant.gep10262 = getelementptr double, ptr %1, i64 %209
  %invariant.gep10264 = getelementptr double, ptr %1, i64 %210
  %invariant.gep10266 = getelementptr double, ptr %1, i64 %211
  %invariant.gep10268 = getelementptr double, ptr %1, i64 %212
  %invariant.gep10270 = getelementptr double, ptr %1, i64 %213
  %invariant.gep10272 = getelementptr double, ptr %1, i64 %214
  %invariant.gep10274 = getelementptr double, ptr %1, i64 %215
  %invariant.gep10276 = getelementptr double, ptr %1, i64 %216
  %invariant.gep10278 = getelementptr double, ptr %1, i64 %217
  %invariant.gep10280 = getelementptr double, ptr %1, i64 %218
  %invariant.gep10282 = getelementptr double, ptr %1, i64 %219
  %invariant.gep10284 = getelementptr double, ptr %1, i64 %220
  %invariant.gep10286 = getelementptr double, ptr %1, i64 %221
  %invariant.gep10288 = getelementptr double, ptr %1, i64 %222
  %invariant.gep10290 = getelementptr double, ptr %3, i64 %223
  %invariant.gep10292 = getelementptr double, ptr %3, i64 %224
  %invariant.gep10294 = getelementptr double, ptr %3, i64 %225
  %invariant.gep10296 = getelementptr double, ptr %3, i64 %226
  %invariant.gep10298 = getelementptr double, ptr %3, i64 %227
  %invariant.gep10300 = getelementptr double, ptr %3, i64 %228
  %invariant.gep10302 = getelementptr double, ptr %3, i64 %229
  %invariant.gep10304 = getelementptr double, ptr %3, i64 %230
  %invariant.gep10306 = getelementptr double, ptr %3, i64 %231
  %invariant.gep10308 = getelementptr double, ptr %3, i64 %232
  %invariant.gep10310 = getelementptr double, ptr %3, i64 %233
  %invariant.gep10312 = getelementptr double, ptr %3, i64 %234
  %invariant.gep10314 = getelementptr double, ptr %3, i64 %235
  %invariant.gep10316 = getelementptr double, ptr %3, i64 %236
  %invariant.gep10318 = getelementptr double, ptr %3, i64 %237
  %invariant.gep10320 = getelementptr double, ptr %3, i64 %238
  %invariant.gep10322 = getelementptr double, ptr %3, i64 %239
  %invariant.gep10324 = getelementptr double, ptr %3, i64 %240
  %invariant.gep10326 = getelementptr double, ptr %3, i64 %241
  %invariant.gep10328 = getelementptr double, ptr %3, i64 %242
  %invariant.gep10330 = getelementptr double, ptr %3, i64 %243
  %invariant.gep10332 = getelementptr double, ptr %3, i64 %244
  %invariant.gep10334 = getelementptr double, ptr %3, i64 %245
  %invariant.gep10336 = getelementptr double, ptr %3, i64 %246
  %invariant.gep10338 = getelementptr double, ptr %3, i64 %247
  %invariant.gep10340 = getelementptr double, ptr %3, i64 %248
  %invariant.gep10342 = getelementptr double, ptr %3, i64 %249
  %invariant.gep10344 = getelementptr double, ptr %3, i64 %250
  %invariant.gep10346 = getelementptr double, ptr %3, i64 %251
  %invariant.gep10348 = getelementptr double, ptr %3, i64 %252
  %invariant.gep10350 = getelementptr double, ptr %3, i64 %253
  %invariant.gep10352 = getelementptr double, ptr %3, i64 %254
  %invariant.gep10354 = getelementptr double, ptr %3, i64 %255
  %invariant.gep10356 = getelementptr double, ptr %3, i64 %256
  %invariant.gep10358 = getelementptr double, ptr %3, i64 %257
  %invariant.gep10360 = getelementptr double, ptr %3, i64 %258
  %invariant.gep10362 = getelementptr double, ptr %3, i64 %259
  %invariant.gep10364 = getelementptr double, ptr %3, i64 %260
  %invariant.gep10366 = getelementptr double, ptr %3, i64 %261
  %invariant.gep10368 = getelementptr double, ptr %1, i64 %262
  %invariant.gep10370 = getelementptr double, ptr %1, i64 %263
  %invariant.gep10372 = getelementptr double, ptr %1, i64 %264
  %invariant.gep10374 = getelementptr double, ptr %1, i64 %265
  %invariant.gep10376 = getelementptr double, ptr %1, i64 %266
  %invariant.gep10378 = getelementptr double, ptr %1, i64 %267
  %invariant.gep10380 = getelementptr double, ptr %1, i64 %268
  %invariant.gep10382 = getelementptr double, ptr %1, i64 %269
  %invariant.gep10384 = getelementptr double, ptr %1, i64 %270
  %invariant.gep10386 = getelementptr double, ptr %1, i64 %271
  %invariant.gep10388 = getelementptr double, ptr %1, i64 %272
  %invariant.gep10390 = getelementptr double, ptr %1, i64 %273
  %invariant.gep10392 = getelementptr double, ptr %1, i64 %274
  %invariant.gep10394 = getelementptr double, ptr %1, i64 %275
  %invariant.gep10396 = getelementptr double, ptr %1, i64 %276
  %invariant.gep10398 = getelementptr double, ptr %1, i64 %277
  %invariant.gep10400 = getelementptr double, ptr %3, i64 %278
  %invariant.gep10402 = getelementptr double, ptr %3, i64 %279
  %invariant.gep10404 = getelementptr double, ptr %3, i64 %280
  %invariant.gep10406 = getelementptr double, ptr %3, i64 %281
  %invariant.gep10408 = getelementptr double, ptr %3, i64 %282
  %invariant.gep10410 = getelementptr double, ptr %3, i64 %283
  %invariant.gep10412 = getelementptr double, ptr %3, i64 %284
  %invariant.gep10414 = getelementptr double, ptr %3, i64 %285
  %invariant.gep10416 = getelementptr double, ptr %3, i64 %286
  %invariant.gep10418 = getelementptr double, ptr %3, i64 %287
  %invariant.gep10420 = getelementptr double, ptr %3, i64 %288
  %invariant.gep10422 = getelementptr double, ptr %3, i64 %289
  %invariant.gep10424 = getelementptr double, ptr %3, i64 %290
  %invariant.gep10426 = getelementptr double, ptr %3, i64 %291
  %invariant.gep10428 = getelementptr double, ptr %3, i64 %292
  %invariant.gep10430 = getelementptr double, ptr %3, i64 %293
  %invariant.gep10432 = getelementptr double, ptr %3, i64 %294
  %invariant.gep10434 = getelementptr double, ptr %3, i64 %295
  %invariant.gep10436 = getelementptr double, ptr %3, i64 %296
  %invariant.gep10438 = getelementptr double, ptr %3, i64 %297
  %invariant.gep10440 = getelementptr double, ptr %3, i64 %298
  %invariant.gep10442 = getelementptr double, ptr %3, i64 %299
  %invariant.gep10444 = getelementptr double, ptr %3, i64 %300
  %invariant.gep10446 = getelementptr double, ptr %3, i64 %301
  %invariant.gep10448 = getelementptr double, ptr %3, i64 %302
  %invariant.gep10450 = getelementptr double, ptr %3, i64 %303
  %invariant.gep10452 = getelementptr double, ptr %3, i64 %304
  %invariant.gep10454 = getelementptr double, ptr %3, i64 %305
  %invariant.gep10456 = getelementptr double, ptr %3, i64 %306
  %invariant.gep10458 = getelementptr double, ptr %3, i64 %307
  %invariant.gep10460 = getelementptr double, ptr %3, i64 %308
  %invariant.gep10462 = getelementptr double, ptr %3, i64 %309
  %invariant.gep10464 = getelementptr double, ptr %3, i64 %310
  %invariant.gep10466 = getelementptr double, ptr %3, i64 %311
  %invariant.gep10468 = getelementptr double, ptr %3, i64 %312
  %invariant.gep10470 = getelementptr double, ptr %3, i64 %313
  %invariant.gep10472 = getelementptr double, ptr %3, i64 %314
  %invariant.gep10474 = getelementptr double, ptr %3, i64 %315
  %invariant.gep10476 = getelementptr double, ptr %3, i64 %316
  %invariant.gep10478 = getelementptr double, ptr %3, i64 %317
  %invariant.gep10480 = getelementptr double, ptr %1, i64 %318
  %invariant.gep10482 = getelementptr double, ptr %1, i64 %319
  %invariant.gep10484 = getelementptr double, ptr %1, i64 %320
  %invariant.gep10486 = getelementptr double, ptr %1, i64 %321
  %invariant.gep10488 = getelementptr double, ptr %1, i64 %322
  %invariant.gep10490 = getelementptr double, ptr %1, i64 %323
  %invariant.gep10492 = getelementptr double, ptr %1, i64 %324
  %invariant.gep10494 = getelementptr double, ptr %1, i64 %325
  %invariant.gep10496 = getelementptr double, ptr %1, i64 %326
  %invariant.gep10498 = getelementptr double, ptr %1, i64 %327
  %invariant.gep10500 = getelementptr double, ptr %1, i64 %328
  %invariant.gep10502 = getelementptr double, ptr %1, i64 %329
  %invariant.gep10504 = getelementptr double, ptr %1, i64 %330
  %invariant.gep10506 = getelementptr double, ptr %1, i64 %331
  %invariant.gep10508 = getelementptr double, ptr %1, i64 %332
  %invariant.gep10510 = getelementptr double, ptr %1, i64 %333
  %invariant.gep10512 = getelementptr double, ptr %1, i64 %334
  %invariant.gep10514 = getelementptr double, ptr %1, i64 %335
  %invariant.gep10516 = getelementptr double, ptr %1, i64 %336
  %invariant.gep10518 = getelementptr double, ptr %3, i64 %337
  %invariant.gep10520 = getelementptr double, ptr %3, i64 %338
  %invariant.gep10522 = getelementptr double, ptr %3, i64 %339
  %invariant.gep10524 = getelementptr double, ptr %3, i64 %340
  %invariant.gep10526 = getelementptr double, ptr %3, i64 %341
  %invariant.gep10528 = getelementptr double, ptr %3, i64 %342
  %invariant.gep10530 = getelementptr double, ptr %3, i64 %343
  %invariant.gep10532 = getelementptr double, ptr %3, i64 %344
  %invariant.gep10534 = getelementptr double, ptr %3, i64 %345
  %invariant.gep10536 = getelementptr double, ptr %3, i64 %346
  %invariant.gep10538 = getelementptr double, ptr %3, i64 %347
  %invariant.gep10540 = getelementptr double, ptr %3, i64 %348
  %invariant.gep10542 = getelementptr double, ptr %3, i64 %349
  %invariant.gep10544 = getelementptr double, ptr %3, i64 %350
  %invariant.gep10546 = getelementptr double, ptr %3, i64 %351
  %invariant.gep10548 = getelementptr double, ptr %3, i64 %352
  %invariant.gep10550 = getelementptr double, ptr %3, i64 %353
  %invariant.gep10552 = getelementptr double, ptr %3, i64 %354
  %invariant.gep10554 = getelementptr double, ptr %3, i64 %355
  %invariant.gep10556 = getelementptr double, ptr %3, i64 %356
  %invariant.gep10558 = getelementptr double, ptr %3, i64 %357
  %invariant.gep10560 = getelementptr double, ptr %3, i64 %358
  %invariant.gep10562 = getelementptr double, ptr %3, i64 %359
  %invariant.gep10564 = getelementptr double, ptr %3, i64 %360
  %invariant.gep10566 = getelementptr double, ptr %3, i64 %361
  %invariant.gep10568 = getelementptr double, ptr %3, i64 %362
  %invariant.gep10570 = getelementptr double, ptr %3, i64 %363
  %invariant.gep10572 = getelementptr double, ptr %3, i64 %364
  %invariant.gep10574 = getelementptr double, ptr %3, i64 %365
  %invariant.gep10576 = getelementptr double, ptr %3, i64 %366
  %invariant.gep10578 = getelementptr double, ptr %3, i64 %367
  %invariant.gep10580 = getelementptr double, ptr %3, i64 %368
  %invariant.gep10582 = getelementptr double, ptr %3, i64 %369
  %invariant.gep10584 = getelementptr double, ptr %3, i64 %370
  %invariant.gep10586 = getelementptr double, ptr %3, i64 %371
  %invariant.gep10588 = getelementptr double, ptr %3, i64 %372
  %invariant.gep10590 = getelementptr double, ptr %3, i64 %373
  %invariant.gep10592 = getelementptr double, ptr %3, i64 %374
  %invariant.gep10594 = getelementptr double, ptr %3, i64 %375
  %invariant.gep10596 = getelementptr double, ptr %3, i64 %376
  br label %377

._crit_edge:                                      ; preds = %377, %5
  ret void

377:                                              ; preds = %.lr.ph, %377
  %indvars.iv = phi i64 [ 0, %.lr.ph ], [ %indvars.iv.next, %377 ]
  %gep = getelementptr double, ptr %invariant.gep, i64 %indvars.iv
  %378 = load double, ptr %gep, align 8, !tbaa !5
  %gep10229 = getelementptr double, ptr %invariant.gep10228, i64 %indvars.iv
  %379 = load double, ptr %gep10229, align 8, !tbaa !5
  %380 = fmul double %379, 0x3FEC2894019C8AD0
  %381 = tail call double @llvm.fmuladd.f64(double %378, double 0x3FA789B66AF4F458, double %380)
  %gep10231 = getelementptr double, ptr %invariant.gep10230, i64 %indvars.iv
  %382 = load double, ptr %gep10231, align 8, !tbaa !5
  %383 = tail call double @llvm.fmuladd.f64(double %382, double 0x3FEC2894019C8AC0, double %381)
  %gep10233 = getelementptr double, ptr %invariant.gep10232, i64 %indvars.iv
  %384 = load double, ptr %gep10233, align 8, !tbaa !5
  %385 = tail call double @llvm.fmuladd.f64(double %384, double 0x3FA789B66AF4F551, double %383)
  %gep10235 = getelementptr double, ptr %invariant.gep10234, i64 %indvars.iv
  %386 = load double, ptr %gep10235, align 8, !tbaa !5
  %387 = tail call double @llvm.fmuladd.f64(double %386, double 0x3C89000000000000, double %385)
  %gep10237 = getelementptr double, ptr %invariant.gep10236, i64 %indvars.iv
  %388 = load double, ptr %gep10237, align 8, !tbaa !5
  %389 = tail call double @llvm.fmuladd.f64(double %388, double 0xBC94000000000000, double %387)
  %gep10239 = getelementptr double, ptr %invariant.gep10238, i64 %indvars.iv
  %390 = load double, ptr %gep10239, align 8, !tbaa !5
  %391 = tail call double @llvm.fmuladd.f64(double %390, double 0x3C9C000000000000, double %389)
  %gep10241 = getelementptr double, ptr %invariant.gep10240, i64 %indvars.iv
  %392 = load double, ptr %gep10241, align 8, !tbaa !5
  %393 = tail call double @llvm.fmuladd.f64(double %392, double 0x3C90000000000000, double %391)
  %gep10243 = getelementptr double, ptr %invariant.gep10242, i64 %indvars.iv
  %394 = load double, ptr %gep10243, align 8, !tbaa !5
  %395 = tail call double @llvm.fmuladd.f64(double %394, double 0x3C7E000000000001, double %393)
  %gep10245 = getelementptr double, ptr %invariant.gep10244, i64 %indvars.iv
  %396 = load double, ptr %gep10245, align 8, !tbaa !5
  %397 = tail call double @llvm.fmuladd.f64(double %396, double 0x3C94000000000000, double %395)
  %gep10247 = getelementptr double, ptr %invariant.gep10246, i64 %indvars.iv
  %398 = load double, ptr %gep10247, align 8, !tbaa !5
  %399 = tail call double @llvm.fmuladd.f64(double %398, double 0x3C94000000000000, double %397)
  %gep10249 = getelementptr double, ptr %invariant.gep10248, i64 %indvars.iv
  %400 = load double, ptr %gep10249, align 8, !tbaa !5
  %401 = tail call double @llvm.fmuladd.f64(double %400, double 0x3CA0000000000002, double %399)
  %gep10251 = getelementptr double, ptr %invariant.gep10250, i64 %indvars.iv
  %402 = load double, ptr %gep10251, align 8, !tbaa !5
  %403 = tail call double @llvm.fmuladd.f64(double %402, double 0xBC9D3FFFFFFFFFFF, double %401)
  %gep10253 = getelementptr double, ptr %invariant.gep10252, i64 %indvars.iv
  %404 = load double, ptr %gep10253, align 8, !tbaa !5
  %405 = tail call double @llvm.fmuladd.f64(double %404, double 0x3CA7000000000002, double %403)
  %gep10255 = getelementptr double, ptr %invariant.gep10254, i64 %indvars.iv
  %406 = load double, ptr %gep10255, align 8, !tbaa !5
  %407 = tail call double @llvm.fmuladd.f64(double %406, double 0x3CA9FFFFFFFFFFFE, double %405)
  %gep10257 = getelementptr double, ptr %invariant.gep10256, i64 %indvars.iv
  %408 = load double, ptr %gep10257, align 8, !tbaa !5
  %409 = tail call double @llvm.fmuladd.f64(double %408, double 0xBC60000000000000, double %407)
  %gep10259 = getelementptr double, ptr %invariant.gep10258, i64 %indvars.iv
  %410 = load double, ptr %gep10259, align 8, !tbaa !5
  %411 = tail call double @llvm.fmuladd.f64(double %410, double 0xBFA0A4D27CF86DC6, double %409)
  %gep10261 = getelementptr double, ptr %invariant.gep10260, i64 %indvars.iv
  %412 = load double, ptr %gep10261, align 8, !tbaa !5
  %413 = tail call double @llvm.fmuladd.f64(double %412, double 0xBFE3E93C07AFC380, double %411)
  %gep10263 = getelementptr double, ptr %invariant.gep10262, i64 %indvars.iv
  %414 = load double, ptr %gep10263, align 8, !tbaa !5
  %415 = tail call double @llvm.fmuladd.f64(double %414, double 0xBFE3E93C07AFC37E, double %413)
  %gep10265 = getelementptr double, ptr %invariant.gep10264, i64 %indvars.iv
  %416 = load double, ptr %gep10265, align 8, !tbaa !5
  %417 = tail call double @llvm.fmuladd.f64(double %416, double 0xBFA0A4D27CF86DAF, double %415)
  %gep10267 = getelementptr double, ptr %invariant.gep10266, i64 %indvars.iv
  %418 = load double, ptr %gep10267, align 8, !tbaa !5
  %419 = tail call double @llvm.fmuladd.f64(double %418, double 0xBC85EB99734B41EF, double %417)
  %gep10269 = getelementptr double, ptr %invariant.gep10268, i64 %indvars.iv
  %420 = load double, ptr %gep10269, align 8, !tbaa !5
  %421 = tail call double @llvm.fmuladd.f64(double %420, double 0xBCA80AA84CE72F89, double %419)
  %gep10271 = getelementptr double, ptr %invariant.gep10270, i64 %indvars.iv
  %422 = load double, ptr %gep10271, align 8, !tbaa !5
  %423 = tail call double @llvm.fmuladd.f64(double %422, double 0xBC66A09E667F3BCC, double %421)
  %gep10273 = getelementptr double, ptr %invariant.gep10272, i64 %indvars.iv
  %424 = load double, ptr %gep10273, align 8, !tbaa !5
  %425 = tail call double @llvm.fmuladd.f64(double %424, double 0xBC86A09E667F3BCC, double %423)
  %gep10275 = getelementptr double, ptr %invariant.gep10274, i64 %indvars.iv
  %426 = load double, ptr %gep10275, align 8, !tbaa !5
  %427 = tail call double @llvm.fmuladd.f64(double %426, double 0xBC81AD7BC01366B8, double %425)
  %gep10277 = getelementptr double, ptr %invariant.gep10276, i64 %indvars.iv
  %428 = load double, ptr %gep10277, align 8, !tbaa !5
  %429 = tail call double @llvm.fmuladd.f64(double %428, double 0xBC93CC8A99AF5452, double %427)
  %gep10279 = getelementptr double, ptr %invariant.gep10278, i64 %indvars.iv
  %430 = load double, ptr %gep10279, align 8, !tbaa !5
  %431 = tail call double @llvm.fmuladd.f64(double %430, double 0xBC93CC8A99AF5452, double %429)
  %gep10281 = getelementptr double, ptr %invariant.gep10280, i64 %indvars.iv
  %432 = load double, ptr %gep10281, align 8, !tbaa !5
  %433 = tail call double @llvm.fmuladd.f64(double %432, double 0xBC96A09E667F3BCC, double %431)
  %gep10283 = getelementptr double, ptr %invariant.gep10282, i64 %indvars.iv
  %434 = load double, ptr %gep10283, align 8, !tbaa !5
  %435 = tail call double @llvm.fmuladd.f64(double %434, double 0x3C7FD1DEC022EC17, double %433)
  %gep10285 = getelementptr double, ptr %invariant.gep10284, i64 %indvars.iv
  %436 = load double, ptr %gep10285, align 8, !tbaa !5
  %437 = tail call double @llvm.fmuladd.f64(double %436, double 0xBCA6A09E667F3BCC, double %435)
  %gep10287 = getelementptr double, ptr %invariant.gep10286, i64 %indvars.iv
  %438 = load double, ptr %gep10287, align 8, !tbaa !5
  %439 = tail call double @llvm.fmuladd.f64(double %438, double 0xBC76A09E667F3BCD, double %437)
  %gep10289 = getelementptr double, ptr %invariant.gep10288, i64 %indvars.iv
  %440 = load double, ptr %gep10289, align 8, !tbaa !5
  %441 = tail call double @llvm.fmuladd.f64(double %440, double 0x3C86A09E667F3BCC, double %439)
  %442 = getelementptr inbounds double, ptr %3, i64 %indvars.iv
  store double %441, ptr %442, align 8, !tbaa !5
  %443 = fmul double %379, 0x3FCEFDC8894D082A
  %444 = tail call double @llvm.fmuladd.f64(double %378, double 0xBFACD49071EC5F52, double %443)
  %445 = tail call double @llvm.fmuladd.f64(double %382, double 0xBFDD2EB9CCB3BDE5, double %444)
  %446 = tail call double @llvm.fmuladd.f64(double %384, double 0xC01569E165D79415, double %445)
  %447 = tail call double @llvm.fmuladd.f64(double %386, double 0xBC7FFFFFFFFFFFFF, double %446)
  %448 = tail call double @llvm.fmuladd.f64(double %388, double 0x3C7FFFFFFFFFFFFF, double %447)
  %449 = tail call double @llvm.fmuladd.f64(double %390, double 0xBCB0000000000000, double %448)
  %450 = tail call double @llvm.fmuladd.f64(double %392, double 0xBCC4000000000000, double %449)
  %451 = tail call double @llvm.fmuladd.f64(double %394, double 0xBC70000000000001, double %450)
  %452 = tail call double @llvm.fmuladd.f64(double %396, double 0xBC90000000000000, double %451)
  %453 = tail call double @llvm.fmuladd.f64(double %398, double 0x3C90000000000000, double %452)
  %454 = tail call double @llvm.fmuladd.f64(double %400, double 0xBCA0000000000002, double %453)
  %455 = tail call double @llvm.fmuladd.f64(double %402, double 0xBC89FFFFFFFFFFFF, double %454)
  %456 = tail call double @llvm.fmuladd.f64(double %404, double 0x3C7FFFFFFFFFFFFF, double %455)
  %457 = tail call double @llvm.fmuladd.f64(double %406, double 0x3C90000000000000, double %456)
  %458 = tail call double @llvm.fmuladd.f64(double %408, double 0xBCC8000000000000, double %457)
  %459 = tail call double @llvm.fmuladd.f64(double %410, double 0x3FA462D8D66D7FC4, double %458)
  %460 = tail call double @llvm.fmuladd.f64(double %412, double 0xBFC5EA083165C4F6, double %459)
  %461 = tail call double @llvm.fmuladd.f64(double %414, double 0x3FD4A299D1E9700E, double %460)
  %462 = tail call double @llvm.fmuladd.f64(double %416, double 0x400E488CB8C1EA74, double %461)
  %463 = tail call double @llvm.fmuladd.f64(double %418, double 0x3C66A09E667F3BCC, double %462)
  %464 = tail call double @llvm.fmuladd.f64(double %420, double 0x3C76A09E667F3BCD, double %463)
  %465 = tail call double @llvm.fmuladd.f64(double %422, double 0x3CA0F876CCDF6CD8, double %464)
  %466 = tail call double @llvm.fmuladd.f64(double %424, double 0xBC96A09E667F3BCC, double %465)
  %467 = tail call double @llvm.fmuladd.f64(double %428, double 0x3C90F876CCDF6CD9, double %466)
  %468 = tail call double @llvm.fmuladd.f64(double %430, double 0xBC86A09E667F3BCC, double %467)
  %469 = tail call double @llvm.fmuladd.f64(double %432, double 0xBC96A09E667F3BCC, double %468)
  %470 = tail call double @llvm.fmuladd.f64(double %434, double 0x3C91AD7BC01366B7, double %469)
  %471 = tail call double @llvm.fmuladd.f64(double %436, double 0xBC76A09E667F3BCD, double %470)
  %472 = tail call double @llvm.fmuladd.f64(double %438, double 0x3C9C48C6001F0ABF, double %471)
  %473 = tail call double @llvm.fmuladd.f64(double %440, double 0x3CC0F876CCDF6CD9, double %472)
  %gep10291 = getelementptr double, ptr %invariant.gep10290, i64 %indvars.iv
  store double %473, ptr %gep10291, align 8, !tbaa !5
  %474 = fmul double %379, 0x3FEAEBF44A8E7A7E
  %475 = tail call double @llvm.fmuladd.f64(double %378, double 0x3FD6F2A1D7A49290, double %474)
  %476 = tail call double @llvm.fmuladd.f64(double %382, double 0x3FEAEBF44A8E7A78, double %475)
  %477 = tail call double @llvm.fmuladd.f64(double %384, double 0x3FD6F2A1D7A492C1, double %476)
  %478 = tail call double @llvm.fmuladd.f64(double %386, double 0xBC71FFFFFFFFFFFF, double %477)
  %479 = tail call double @llvm.fmuladd.f64(double %388, double 0x3CB1000000000001, double %478)
  %480 = tail call double @llvm.fmuladd.f64(double %390, double 0x3C70000000000001, double %479)
  %481 = tail call double @llvm.fmuladd.f64(double %392, double 0xBC98000000000000, double %480)
  %482 = tail call double @llvm.fmuladd.f64(double %394, double 0x3CB91FFFFFFFFFFF, double %481)
  %483 = tail call double @llvm.fmuladd.f64(double %396, double 0x3CAE000000000002, double %482)
  %484 = tail call double @llvm.fmuladd.f64(double %398, double 0xBC70000000000001, double %483)
  %485 = tail call double @llvm.fmuladd.f64(double %400, double 0xBC7FFFFFFFFFFFFF, double %484)
  %486 = tail call double @llvm.fmuladd.f64(double %402, double 0x3CA7800000000001, double %485)
  %487 = tail call double @llvm.fmuladd.f64(double %404, double 0x3CA2BFFFFFFFFFFF, double %486)
  %488 = tail call double @llvm.fmuladd.f64(double %406, double 0x3C91000000000000, double %487)
  %489 = tail call double @llvm.fmuladd.f64(double %408, double 0x3CA5FFFFFFFFFFFF, double %488)
  %490 = tail call double @llvm.fmuladd.f64(double %410, double 0x400E488CB8C1EA66, double %489)
  %491 = tail call double @llvm.fmuladd.f64(double %412, double 0x3FD4A299D1E9700C, double %490)
  %492 = tail call double @llvm.fmuladd.f64(double %414, double 0xBFC5EA083165C4F9, double %491)
  %493 = tail call double @llvm.fmuladd.f64(double %416, double 0x3FA462D8D66D7F94, double %492)
  %494 = tail call double @llvm.fmuladd.f64(double %418, double 0x3C9152F9467969C8, double %493)
  %495 = tail call double @llvm.fmuladd.f64(double %420, double 0xBCADB2CFE686FE7D, double %494)
  %496 = tail call double @llvm.fmuladd.f64(double %422, double 0xBCA26280B3476095, double %495)
  %497 = tail call double @llvm.fmuladd.f64(double %424, double 0x3C76A09E667F3BCD, double %496)
  %498 = tail call double @llvm.fmuladd.f64(double %426, double 0xBCAF4A1B09BBF0AE, double %497)
  %499 = tail call double @llvm.fmuladd.f64(double %428, double 0x3CADB2CFE686FE7D, double %498)
  %500 = tail call double @llvm.fmuladd.f64(double %430, double 0xBC80F876CCDF6CD9, double %499)
  %501 = tail call double @llvm.fmuladd.f64(double %432, double 0x3C76A09E667F3BCD, double %500)
  %502 = tail call double @llvm.fmuladd.f64(double %434, double 0x3CC689FDC818BC8F, double %501)
  %503 = tail call double @llvm.fmuladd.f64(double %436, double 0x3CB16999E4DFE903, double %502)
  %504 = tail call double @llvm.fmuladd.f64(double %438, double 0xBC880AA84CE72F89, double %503)
  %505 = tail call double @llvm.fmuladd.f64(double %440, double 0xBC80F876CCDF6CD9, double %504)
  %gep10293 = getelementptr double, ptr %invariant.gep10292, i64 %indvars.iv
  store double %505, ptr %gep10293, align 8, !tbaa !5
  %506 = fmul double %379, 0xBFDD2EB9CCB3BDE4
  %507 = tail call double @llvm.fmuladd.f64(double %378, double 0xC01569E165D79412, double %506)
  %508 = tail call double @llvm.fmuladd.f64(double %382, double 0x3FCEFDC8894D0822, double %507)
  %509 = tail call double @llvm.fmuladd.f64(double %384, double 0xBFACD49071EC5F0E, double %508)
  %510 = tail call double @llvm.fmuladd.f64(double %386, double 0x3C91800000000000, double %509)
  %511 = tail call double @llvm.fmuladd.f64(double %388, double 0x3C70000000000001, double %510)
  %512 = tail call double @llvm.fmuladd.f64(double %390, double 0x3CB9000000000000, double %511)
  %513 = tail call double @llvm.fmuladd.f64(double %392, double 0xBC7FFFFFFFFFFFFF, double %512)
  %514 = tail call double @llvm.fmuladd.f64(double %394, double 0x3CA7400000000002, double %513)
  %515 = tail call double @llvm.fmuladd.f64(double %396, double 0xBC70000000000001, double %514)
  %516 = tail call double @llvm.fmuladd.f64(double %398, double 0x3CB7000000000000, double %515)
  %517 = tail call double @llvm.fmuladd.f64(double %400, double 0xBC7FFFFFFFFFFFFF, double %516)
  %518 = tail call double @llvm.fmuladd.f64(double %402, double 0xBCC2000000000000, double %517)
  %519 = tail call double @llvm.fmuladd.f64(double %404, double 0xBCA5400000000000, double %518)
  %520 = tail call double @llvm.fmuladd.f64(double %406, double 0x3CAA800000000002, double %519)
  %521 = tail call double @llvm.fmuladd.f64(double %408, double 0x3CA9000000000000, double %520)
  %522 = tail call double @llvm.fmuladd.f64(double %410, double 0xBFD039FE04F7163A, double %521)
  %523 = tail call double @llvm.fmuladd.f64(double %412, double 0xBFE30958FBF81242, double %522)
  %524 = tail call double @llvm.fmuladd.f64(double %414, double 0xBFE30958FBF81231, double %523)
  %525 = tail call double @llvm.fmuladd.f64(double %416, double 0xBFD039FE04F71632, double %524)
  %526 = tail call double @llvm.fmuladd.f64(double %418, double 0x3C959116F9B144FE, double %525)
  %527 = tail call double @llvm.fmuladd.f64(double %420, double 0xBCA80AA84CE72F89, double %526)
  %528 = tail call double @llvm.fmuladd.f64(double %422, double 0xBC8C48C6001F0AC0, double %527)
  %529 = tail call double @llvm.fmuladd.f64(double %424, double 0x3C90F876CCDF6CD9, double %528)
  %530 = tail call double @llvm.fmuladd.f64(double %426, double 0xBCB0B494F1ABEF27, double %529)
  %531 = tail call double @llvm.fmuladd.f64(double %428, double 0xBCA536948017480F, double %530)
  %532 = tail call double @llvm.fmuladd.f64(double %430, double 0x3CADB2CFE686FE7D, double %531)
  %533 = tail call double @llvm.fmuladd.f64(double %432, double 0x3C9C48C6001F0ABF, double %532)
  %534 = tail call double @llvm.fmuladd.f64(double %434, double 0xBC9F1CD9CCEEF236, double %533)
  %535 = tail call double @llvm.fmuladd.f64(double %436, double 0xBCA016309CDE7482, double %534)
  %536 = tail call double @llvm.fmuladd.f64(double %438, double 0x3C98BFAD401B2967, double %535)
  %537 = tail call double @llvm.fmuladd.f64(double %440, double 0xBC93CC8A99AF5452, double %536)
  %gep10295 = getelementptr double, ptr %invariant.gep10294, i64 %indvars.iv
  store double %537, ptr %gep10295, align 8, !tbaa !5
  %538 = fmul double %379, 0xBFD4C0B9406BCBDE
  %539 = tail call double @llvm.fmuladd.f64(double %378, double 0x3F980EB0AE1D48E6, double %538)
  %540 = tail call double @llvm.fmuladd.f64(double %382, double 0xBFEBF462FB348EF6, double %539)
  %541 = tail call double @llvm.fmuladd.f64(double %384, double 0xBFE002F9665DF3D7, double %540)
  %542 = tail call double @llvm.fmuladd.f64(double %386, double 0xBC99800000000000, double %541)
  %543 = tail call double @llvm.fmuladd.f64(double %388, double 0x3C60000000000000, double %542)
  %544 = tail call double @llvm.fmuladd.f64(double %390, double 0xBC98000000000000, double %543)
  %545 = tail call double @llvm.fmuladd.f64(double %394, double 0x3C91800000000000, double %544)
  %546 = tail call double @llvm.fmuladd.f64(double %396, double 0x3CA7000000000002, double %545)
  %547 = tail call double @llvm.fmuladd.f64(double %398, double 0xBC7FFFFFFFFFFFFF, double %546)
  %548 = tail call double @llvm.fmuladd.f64(double %400, double 0xBCA0000000000002, double %547)
  %549 = tail call double @llvm.fmuladd.f64(double %402, double 0x3C98400000000000, double %548)
  %550 = tail call double @llvm.fmuladd.f64(double %404, double 0xBC99000000000000, double %549)
  %551 = tail call double @llvm.fmuladd.f64(double %406, double 0xBCAE000000000002, double %550)
  %552 = tail call double @llvm.fmuladd.f64(double %408, double 0xBC9C000000000000, double %551)
  %553 = tail call double @llvm.fmuladd.f64(double %410, double 0x3FD08C54FF101A12, double %552)
  %554 = tail call double @llvm.fmuladd.f64(double %412, double 0x4007001BD846D0B0, double %553)
  %555 = tail call double @llvm.fmuladd.f64(double %414, double 0x3FD0C7817D9C3131, double %554)
  %556 = tail call double @llvm.fmuladd.f64(double %416, double 0xBFB8DF388696F54B, double %555)
  %557 = tail call double @llvm.fmuladd.f64(double %418, double 0xBC8CFDCAF353049C, double %556)
  %558 = tail call double @llvm.fmuladd.f64(double %420, double 0x3CB6461BECE53EDD, double %557)
  %559 = tail call double @llvm.fmuladd.f64(double %422, double 0x3CA3CC8A99AF5452, double %558)
  %560 = tail call double @llvm.fmuladd.f64(double %424, double 0x3C90F876CCDF6CD9, double %559)
  %561 = tail call double @llvm.fmuladd.f64(double %426, double 0x3C6974B2334F2344, double %560)
  %562 = tail call double @llvm.fmuladd.f64(double %428, double 0xBCA5EB99734B41EE, double %561)
  %563 = tail call double @llvm.fmuladd.f64(double %430, double 0x3C9C48C6001F0ABF, double %562)
  %564 = tail call double @llvm.fmuladd.f64(double %432, double 0xBC76A09E667F3BCD, double %563)
  %565 = tail call double @llvm.fmuladd.f64(double %434, double 0x3C8BEE4386850DD0, double %564)
  %566 = tail call double @llvm.fmuladd.f64(double %436, double 0x3CC196DB21ACE77C, double %565)
  %567 = tail call double @llvm.fmuladd.f64(double %438, double 0x3C90F876CCDF6CD9, double %566)
  %568 = tail call double @llvm.fmuladd.f64(double %440, double 0xBC66A09E667F3BCC, double %567)
  %gep10297 = getelementptr double, ptr %invariant.gep10296, i64 %indvars.iv
  store double %568, ptr %gep10297, align 8, !tbaa !5
  %569 = fmul double %379, 0xC01043858A1F5994
  %570 = tail call double @llvm.fmuladd.f64(double %378, double 0xBFD7671404765127, double %569)
  %571 = tail call double @llvm.fmuladd.f64(double %382, double 0xBFD7BAC3393ADDB7, double %570)
  %572 = tail call double @llvm.fmuladd.f64(double %384, double 0x3FC1964E14FA3C89, double %571)
  %573 = tail call double @llvm.fmuladd.f64(double %386, double 0x3CA8400000000000, double %572)
  %574 = tail call double @llvm.fmuladd.f64(double %388, double 0xBCC5C00000000000, double %573)
  %575 = tail call double @llvm.fmuladd.f64(double %390, double 0xBCA4000000000001, double %574)
  %576 = tail call double @llvm.fmuladd.f64(double %392, double 0xBC98000000000000, double %575)
  %577 = tail call double @llvm.fmuladd.f64(double %394, double 0x3C9F7FFFFFFFFFFC, double %576)
  %578 = tail call double @llvm.fmuladd.f64(double %396, double 0x3CA7000000000002, double %577)
  %579 = tail call double @llvm.fmuladd.f64(double %398, double 0xBC98000000000000, double %578)
  %580 = tail call double @llvm.fmuladd.f64(double %402, double 0xBC93C00000000000, double %579)
  %581 = tail call double @llvm.fmuladd.f64(double %404, double 0xBCC0600000000000, double %580)
  %582 = tail call double @llvm.fmuladd.f64(double %406, double 0xBC7FFFFFFFFFFFFF, double %581)
  %583 = tail call double @llvm.fmuladd.f64(double %408, double 0xBC88000000000000, double %582)
  %584 = tail call double @llvm.fmuladd.f64(double %410, double 0xBF9102DA00B18A5A, double %583)
  %585 = tail call double @llvm.fmuladd.f64(double %412, double 0x3FCD5953692F6EA6, double %584)
  %586 = tail call double @llvm.fmuladd.f64(double %414, double 0x3FE3C4545BCF030B, double %585)
  %587 = tail call double @llvm.fmuladd.f64(double %416, double 0x3FD6A4D32EB1F70D, double %586)
  %588 = tail call double @llvm.fmuladd.f64(double %418, double 0x3C6F1CD9CCEEF238, double %587)
  %589 = tail call double @llvm.fmuladd.f64(double %420, double 0x3C9ADEBC19B71702, double %588)
  %590 = tail call double @llvm.fmuladd.f64(double %422, double 0x3C76A09E667F3BCD, double %589)
  %591 = tail call double @llvm.fmuladd.f64(double %426, double 0xBC94DC12067D4B20, double %590)
  %592 = tail call double @llvm.fmuladd.f64(double %428, double 0xBC9536948017480F, double %591)
  %593 = tail call double @llvm.fmuladd.f64(double %430, double 0xBC76A09E667F3BCD, double %592)
  %594 = tail call double @llvm.fmuladd.f64(double %432, double 0x3C96A09E667F3BCC, double %593)
  %595 = tail call double @llvm.fmuladd.f64(double %434, double 0x3C53CC8A99AF5452, double %594)
  %596 = tail call double @llvm.fmuladd.f64(double %436, double 0x3C8536948017480E, double %595)
  %597 = tail call double @llvm.fmuladd.f64(double %438, double 0x3C9C48C6001F0ABF, double %596)
  %598 = tail call double @llvm.fmuladd.f64(double %440, double 0x3C93CC8A99AF5452, double %597)
  %gep10299 = getelementptr double, ptr %invariant.gep10298, i64 %indvars.iv
  store double %598, ptr %gep10299, align 8, !tbaa !5
  %599 = fmul double %379, 0x3FEFAD7976B5DE20
  %600 = tail call double @llvm.fmuladd.f64(double %378, double 0x3FF043C98657E80E, double %599)
  %601 = tail call double @llvm.fmuladd.f64(double %382, double 0xBFB4C23AD63BEF81, double %600)
  %602 = tail call double @llvm.fmuladd.f64(double %384, double 0xBFAC37F3CCE9FD3B, double %601)
  %603 = tail call double @llvm.fmuladd.f64(double %386, double 0x3CA4000000000001, double %602)
  %604 = tail call double @llvm.fmuladd.f64(double %388, double 0x3C97000000000000, double %603)
  %605 = tail call double @llvm.fmuladd.f64(double %390, double 0x3C94000000000000, double %604)
  %606 = tail call double @llvm.fmuladd.f64(double %392, double 0x3C88000000000000, double %605)
  %607 = tail call double @llvm.fmuladd.f64(double %394, double 0xBCA4000000000001, double %606)
  %608 = tail call double @llvm.fmuladd.f64(double %396, double 0x3C82000000000000, double %607)
  %609 = tail call double @llvm.fmuladd.f64(double %398, double 0x3C94000000000000, double %608)
  %610 = tail call double @llvm.fmuladd.f64(double %400, double 0x3CA2000000000000, double %609)
  %611 = tail call double @llvm.fmuladd.f64(double %402, double 0x3CAD5FFFFFFFFFFF, double %610)
  %612 = tail call double @llvm.fmuladd.f64(double %404, double 0x3CA1200000000001, double %611)
  %613 = tail call double @llvm.fmuladd.f64(double %406, double 0xBCA1000000000001, double %612)
  %614 = tail call double @llvm.fmuladd.f64(double %408, double 0xBC90000000000000, double %613)
  %615 = tail call double @llvm.fmuladd.f64(double %410, double 0x3FD6A4D32EB1F718, double %614)
  %616 = tail call double @llvm.fmuladd.f64(double %412, double 0x3FE3C4545BCF030B, double %615)
  %617 = tail call double @llvm.fmuladd.f64(double %414, double 0x3FCD5953692F6EA3, double %616)
  %618 = tail call double @llvm.fmuladd.f64(double %416, double 0xBF9102DA00B18A2C, double %617)
  %619 = tail call double @llvm.fmuladd.f64(double %418, double 0xBC76A09E667F3BCD, double %618)
  %620 = tail call double @llvm.fmuladd.f64(double %420, double 0x3CB344C6E34858EB, double %619)
  %621 = tail call double @llvm.fmuladd.f64(double %422, double 0x3C90F876CCDF6CD9, double %620)
  %622 = tail call double @llvm.fmuladd.f64(double %424, double 0x3C76A09E667F3BCD, double %621)
  %623 = tail call double @llvm.fmuladd.f64(double %426, double 0xBC9C48C6001F0ABF, double %622)
  %624 = tail call double @llvm.fmuladd.f64(double %428, double 0xBC9FD1DEC022EC15, double %623)
  %625 = tail call double @llvm.fmuladd.f64(double %430, double 0x3C9C48C6001F0ABF, double %624)
  %626 = tail call double @llvm.fmuladd.f64(double %432, double 0xBC96A09E667F3BCC, double %625)
  %627 = tail call double @llvm.fmuladd.f64(double %434, double 0x3C86461BECE53EDC, double %626)
  %628 = tail call double @llvm.fmuladd.f64(double %436, double 0x3CA196DB21ACE77D, double %627)
  %629 = tail call double @llvm.fmuladd.f64(double %438, double 0x3C9ADEBC19B71702, double %628)
  %gep10301 = getelementptr double, ptr %invariant.gep10300, i64 %indvars.iv
  store double %629, ptr %gep10301, align 8, !tbaa !5
  %630 = fmul double %379, 0xBFEBF462FB348EF2
  %631 = tail call double @llvm.fmuladd.f64(double %378, double 0xBFE002F9665DF3E5, double %630)
  %632 = tail call double @llvm.fmuladd.f64(double %382, double 0xBFD4C0B9406BCBCC, double %631)
  %633 = tail call double @llvm.fmuladd.f64(double %384, double 0x3F980EB0AE1D483F, double %632)
  %634 = tail call double @llvm.fmuladd.f64(double %386, double 0x3C91800000000000, double %633)
  %635 = tail call double @llvm.fmuladd.f64(double %388, double 0xBCB3400000000000, double %634)
  %636 = tail call double @llvm.fmuladd.f64(double %392, double 0xBC70000000000001, double %635)
  %637 = tail call double @llvm.fmuladd.f64(double %394, double 0x3C9E7FFFFFFFFFFD, double %636)
  %638 = tail call double @llvm.fmuladd.f64(double %396, double 0x3CA67FFFFFFFFFFE, double %637)
  %639 = tail call double @llvm.fmuladd.f64(double %398, double 0xBCA0000000000002, double %638)
  %640 = tail call double @llvm.fmuladd.f64(double %400, double 0x3C9C000000000000, double %639)
  %641 = tail call double @llvm.fmuladd.f64(double %402, double 0xBCADDFFFFFFFFFFE, double %640)
  %642 = tail call double @llvm.fmuladd.f64(double %404, double 0xBC5C000000000000, double %641)
  %643 = tail call double @llvm.fmuladd.f64(double %406, double 0xBCA1000000000001, double %642)
  %644 = tail call double @llvm.fmuladd.f64(double %410, double 0xBFE7007BFD8FD859, double %643)
  %645 = tail call double @llvm.fmuladd.f64(double %412, double 0xBFE66643AEED3706, double %644)
  %646 = tail call double @llvm.fmuladd.f64(double %414, double 0x3FAD5B74B5F10E94, double %645)
  %647 = tail call double @llvm.fmuladd.f64(double %416, double 0x3FA3F41B0E87BFBB, double %646)
  %648 = tail call double @llvm.fmuladd.f64(double %418, double 0xBCA344C6E34858EB, double %647)
  %649 = tail call double @llvm.fmuladd.f64(double %420, double 0x3C91AD7BC01366B7, double %648)
  %650 = tail call double @llvm.fmuladd.f64(double %422, double 0xBC90F876CCDF6CD9, double %649)
  %651 = tail call double @llvm.fmuladd.f64(double %424, double 0x3C76A09E667F3BCD, double %650)
  %652 = tail call double @llvm.fmuladd.f64(double %426, double 0x3CA344C6E34858EB, double %651)
  %653 = tail call double @llvm.fmuladd.f64(double %428, double 0x3C73CC8A99AF5453, double %652)
  %654 = tail call double @llvm.fmuladd.f64(double %430, double 0x3C76A09E667F3BCD, double %653)
  %655 = tail call double @llvm.fmuladd.f64(double %432, double 0xBCA0F876CCDF6CD8, double %654)
  %656 = tail call double @llvm.fmuladd.f64(double %434, double 0xBCA13C58A812EA8E, double %655)
  %657 = tail call double @llvm.fmuladd.f64(double %436, double 0xBCA6023A11B1C128, double %656)
  %658 = tail call double @llvm.fmuladd.f64(double %438, double 0xBC80F876CCDF6CD9, double %657)
  %gep10303 = getelementptr double, ptr %invariant.gep10302, i64 %indvars.iv
  store double %658, ptr %gep10303, align 8, !tbaa !5
  %659 = fmul double %379, 0xBFD7BAC3393ADDAB
  %660 = tail call double @llvm.fmuladd.f64(double %378, double 0x3FC1964E14FA3C91, double %659)
  %661 = tail call double @llvm.fmuladd.f64(double %382, double 0xC01043858A1F5991, double %660)
  %662 = tail call double @llvm.fmuladd.f64(double %384, double 0xBFD767140476510C, double %661)
  %663 = tail call double @llvm.fmuladd.f64(double %386, double 0x3C86000000000001, double %662)
  %664 = tail call double @llvm.fmuladd.f64(double %388, double 0xBC88000000000000, double %663)
  %665 = tail call double @llvm.fmuladd.f64(double %390, double 0xBCA4000000000001, double %664)
  %666 = tail call double @llvm.fmuladd.f64(double %392, double 0xBC90000000000000, double %665)
  %667 = tail call double @llvm.fmuladd.f64(double %394, double 0x3C74000000000000, double %666)
  %668 = tail call double @llvm.fmuladd.f64(double %396, double 0xBCA2000000000000, double %667)
  %669 = tail call double @llvm.fmuladd.f64(double %398, double 0xBCC3000000000000, double %668)
  %670 = tail call double @llvm.fmuladd.f64(double %400, double 0xBCA0000000000002, double %669)
  %671 = tail call double @llvm.fmuladd.f64(double %402, double 0x3C58000000000000, double %670)
  %672 = tail call double @llvm.fmuladd.f64(double %404, double 0xBCA7000000000002, double %671)
  %673 = tail call double @llvm.fmuladd.f64(double %406, double 0xBCC3000000000000, double %672)
  %674 = tail call double @llvm.fmuladd.f64(double %408, double 0xBC98000000000000, double %673)
  %675 = tail call double @llvm.fmuladd.f64(double %410, double 0x3FA3F41B0E87BFEB, double %674)
  %676 = tail call double @llvm.fmuladd.f64(double %412, double 0x3FAD5B74B5F10E92, double %675)
  %677 = tail call double @llvm.fmuladd.f64(double %414, double 0xBFE66643AEED36FA, double %676)
  %678 = tail call double @llvm.fmuladd.f64(double %416, double 0xBFE7007BFD8FD85B, double %677)
  %679 = tail call double @llvm.fmuladd.f64(double %418, double 0x3C826280B3476096, double %678)
  %680 = tail call double @llvm.fmuladd.f64(double %420, double 0x3C8C48C6001F0AC0, double %679)
  %681 = tail call double @llvm.fmuladd.f64(double %424, double 0x3C96A09E667F3BCC, double %680)
  %682 = tail call double @llvm.fmuladd.f64(double %426, double 0x3C60F876CCDF6CD9, double %681)
  %683 = tail call double @llvm.fmuladd.f64(double %428, double 0xBC8C48C6001F0AC0, double %682)
  %684 = tail call double @llvm.fmuladd.f64(double %430, double 0xBCA6A09E667F3BCC, double %683)
  %685 = tail call double @llvm.fmuladd.f64(double %432, double 0xBCA6A09E667F3BCC, double %684)
  %686 = tail call double @llvm.fmuladd.f64(double %434, double 0x3C6F1CD9CCEEF238, double %685)
  %687 = tail call double @llvm.fmuladd.f64(double %436, double 0x3C8974B2334F2346, double %686)
  %688 = tail call double @llvm.fmuladd.f64(double %438, double 0xBCAADEBC19B71703, double %687)
  %689 = tail call double @llvm.fmuladd.f64(double %440, double 0x3C76A09E667F3BCD, double %688)
  %gep10305 = getelementptr double, ptr %invariant.gep10304, i64 %indvars.iv
  store double %689, ptr %gep10305, align 8, !tbaa !5
  %690 = fmul double %379, 0xBFB4C23AD63BEF7C
  %691 = tail call double @llvm.fmuladd.f64(double %378, double 0xBFAC37F3CCE9FD85, double %690)
  %692 = tail call double @llvm.fmuladd.f64(double %382, double 0x3FEFAD7976B5DE10, double %691)
  %693 = tail call double @llvm.fmuladd.f64(double %384, double 0x3FF043C98657E80E, double %692)
  %694 = tail call double @llvm.fmuladd.f64(double %386, double 0xBC89FFFFFFFFFFFF, double %693)
  %695 = tail call double @llvm.fmuladd.f64(double %388, double 0xBC94000000000000, double %694)
  %696 = tail call double @llvm.fmuladd.f64(double %392, double 0xBCA0000000000002, double %695)
  %697 = tail call double @llvm.fmuladd.f64(double %394, double 0xBC67FFFFFFFFFFFE, double %696)
  %698 = tail call double @llvm.fmuladd.f64(double %396, double 0x3C94000000000000, double %697)
  %699 = tail call double @llvm.fmuladd.f64(double %398, double 0x3CB0000000000000, double %698)
  %700 = tail call double @llvm.fmuladd.f64(double %400, double 0x3CB0000000000000, double %699)
  %701 = tail call double @llvm.fmuladd.f64(double %402, double 0xBC76000000000001, double %700)
  %702 = tail call double @llvm.fmuladd.f64(double %404, double 0xBC92000000000000, double %701)
  %703 = tail call double @llvm.fmuladd.f64(double %406, double 0x3CB3000000000000, double %702)
  %704 = tail call double @llvm.fmuladd.f64(double %408, double 0xBC7FFFFFFFFFFFFF, double %703)
  %705 = tail call double @llvm.fmuladd.f64(double %410, double 0xBFB8DF388696F557, double %704)
  %706 = tail call double @llvm.fmuladd.f64(double %412, double 0x3FD0C7817D9C3121, double %705)
  %707 = tail call double @llvm.fmuladd.f64(double %414, double 0x4007001BD846D0A7, double %706)
  %708 = tail call double @llvm.fmuladd.f64(double %416, double 0x3FD08C54FF1019F7, double %707)
  %709 = tail call double @llvm.fmuladd.f64(double %418, double 0xBC7F1CD9CCEEF238, double %708)
  %710 = tail call double @llvm.fmuladd.f64(double %420, double 0x3C80F876CCDF6CD9, double %709)
  %711 = tail call double @llvm.fmuladd.f64(double %422, double 0x3C9C48C6001F0ABF, double %710)
  %712 = tail call double @llvm.fmuladd.f64(double %424, double 0x3C86A09E667F3BCC, double %711)
  %713 = tail call double @llvm.fmuladd.f64(double %426, double 0xBC6C48C6001F0ABE, double %712)
  %714 = tail call double @llvm.fmuladd.f64(double %428, double 0x3C9974B2334F2346, double %713)
  %715 = tail call double @llvm.fmuladd.f64(double %430, double 0x3CBADEBC19B71701, double %714)
  %716 = tail call double @llvm.fmuladd.f64(double %432, double 0x3C96A09E667F3BCC, double %715)
  %717 = tail call double @llvm.fmuladd.f64(double %434, double 0xBC50F876CCDF6CD8, double %716)
  %718 = tail call double @llvm.fmuladd.f64(double %436, double 0x3CA04371D9AB72FA, double %717)
  %719 = tail call double @llvm.fmuladd.f64(double %438, double 0x3CBADEBC19B71701, double %718)
  %720 = tail call double @llvm.fmuladd.f64(double %440, double 0x3C90F876CCDF6CD9, double %719)
  %gep10307 = getelementptr double, ptr %invariant.gep10306, i64 %indvars.iv
  store double %720, ptr %gep10307, align 8, !tbaa !5
  %721 = fmul double %379, 0xBC93000000000000
  %722 = tail call double @llvm.fmuladd.f64(double %378, double 0x3C94000000000000, double %721)
  %723 = tail call double @llvm.fmuladd.f64(double %382, double 0xBC9C000000000000, double %722)
  %724 = tail call double @llvm.fmuladd.f64(double %384, double 0x3C7FFFFFFFFFFFFF, double %723)
  %725 = tail call double @llvm.fmuladd.f64(double %386, double 0x3FA789B66AF4F45E, double %724)
  %726 = tail call double @llvm.fmuladd.f64(double %388, double 0x3FEC2894019C8AD1, double %725)
  %727 = tail call double @llvm.fmuladd.f64(double %390, double 0x3FEC2894019C8AC2, double %726)
  %728 = tail call double @llvm.fmuladd.f64(double %392, double 0x3FA789B66AF4F55B, double %727)
  %729 = tail call double @llvm.fmuladd.f64(double %394, double 0x3C6C000000000000, double %728)
  %730 = tail call double @llvm.fmuladd.f64(double %396, double 0x3C9A000000000000, double %729)
  %731 = tail call double @llvm.fmuladd.f64(double %398, double 0xBC98000000000000, double %730)
  %732 = tail call double @llvm.fmuladd.f64(double %400, double 0x3CA0000000000002, double %731)
  %733 = tail call double @llvm.fmuladd.f64(double %402, double 0x3C70000000000001, double %732)
  %734 = tail call double @llvm.fmuladd.f64(double %404, double 0xBC89FFFFFFFFFFFF, double %733)
  %735 = tail call double @llvm.fmuladd.f64(double %406, double 0x3C70000000000001, double %734)
  %736 = tail call double @llvm.fmuladd.f64(double %408, double 0xBC7FFFFFFFFFFFFF, double %735)
  %737 = tail call double @llvm.fmuladd.f64(double %410, double 0xBC84818F8CE34E32, double %736)
  %738 = tail call double @llvm.fmuladd.f64(double %412, double 0x3C6C48C6001F0ABE, double %737)
  %739 = tail call double @llvm.fmuladd.f64(double %414, double 0xBC66A09E667F3BCC, double %738)
  %740 = tail call double @llvm.fmuladd.f64(double %416, double 0xBC76A09E667F3BCD, double %739)
  %741 = tail call double @llvm.fmuladd.f64(double %418, double 0xBFA0A4D27CF86DCE, double %740)
  %742 = tail call double @llvm.fmuladd.f64(double %420, double 0xBFE3E93C07AFC382, double %741)
  %743 = tail call double @llvm.fmuladd.f64(double %422, double 0xBFE3E93C07AFC37F, double %742)
  %744 = tail call double @llvm.fmuladd.f64(double %424, double 0xBFA0A4D27CF86DB4, double %743)
  %745 = tail call double @llvm.fmuladd.f64(double %426, double 0xBC9207FE39AD63A7, double %744)
  %746 = tail call double @llvm.fmuladd.f64(double %428, double 0xBC83CC8A99AF5451, double %745)
  %747 = tail call double @llvm.fmuladd.f64(double %432, double 0xBC90F876CCDF6CD9, double %746)
  %748 = tail call double @llvm.fmuladd.f64(double %434, double 0xBC50F876CCDF6CD8, double %747)
  %749 = tail call double @llvm.fmuladd.f64(double %436, double 0x3C7F1CD9CCEEF238, double %748)
  %750 = tail call double @llvm.fmuladd.f64(double %438, double 0xBC66A09E667F3BCC, double %749)
  %751 = tail call double @llvm.fmuladd.f64(double %440, double 0x3C76A09E667F3BCD, double %750)
  %gep10309 = getelementptr double, ptr %invariant.gep10308, i64 %indvars.iv
  store double %751, ptr %gep10309, align 8, !tbaa !5
  %752 = fmul double %379, 0xBC90000000000000
  %753 = tail call double @llvm.fmuladd.f64(double %378, double 0x3C90000000000000, double %752)
  %754 = tail call double @llvm.fmuladd.f64(double %382, double 0x3C7FFFFFFFFFFFFF, double %753)
  %755 = tail call double @llvm.fmuladd.f64(double %384, double 0xBCB0000000000000, double %754)
  %756 = tail call double @llvm.fmuladd.f64(double %386, double 0xBFACD49071EC5F4A, double %755)
  %757 = tail call double @llvm.fmuladd.f64(double %388, double 0x3FCEFDC8894D082A, double %756)
  %758 = tail call double @llvm.fmuladd.f64(double %390, double 0xBFDD2EB9CCB3BDEB, double %757)
  %759 = tail call double @llvm.fmuladd.f64(double %392, double 0xC01569E165D79419, double %758)
  %760 = tail call double @llvm.fmuladd.f64(double %394, double 0x3C60000000000000, double %759)
  %761 = tail call double @llvm.fmuladd.f64(double %398, double 0x3CA0000000000002, double %760)
  %762 = tail call double @llvm.fmuladd.f64(double %400, double 0x3CA0000000000002, double %761)
  %763 = tail call double @llvm.fmuladd.f64(double %402, double 0xBC78000000000002, double %762)
  %764 = tail call double @llvm.fmuladd.f64(double %404, double 0xBC98000000000000, double %763)
  %765 = tail call double @llvm.fmuladd.f64(double %406, double 0xBC7FFFFFFFFFFFFF, double %764)
  %766 = tail call double @llvm.fmuladd.f64(double %408, double 0xBCB0000000000000, double %765)
  %767 = tail call double @llvm.fmuladd.f64(double %410, double 0xBC80F876CCDF6CD9, double %766)
  %768 = tail call double @llvm.fmuladd.f64(double %412, double 0xBC76A09E667F3BCD, double %767)
  %769 = tail call double @llvm.fmuladd.f64(double %414, double 0x3C90F876CCDF6CD9, double %768)
  %770 = tail call double @llvm.fmuladd.f64(double %416, double 0x3CB0F876CCDF6CD8, double %769)
  %771 = tail call double @llvm.fmuladd.f64(double %418, double 0x3FA462D8D66D7FBE, double %770)
  %772 = tail call double @llvm.fmuladd.f64(double %420, double 0xBFC5EA083165C4F6, double %771)
  %773 = tail call double @llvm.fmuladd.f64(double %422, double 0x3FD4A299D1E97012, double %772)
  %774 = tail call double @llvm.fmuladd.f64(double %424, double 0x400E488CB8C1EA78, double %773)
  %775 = tail call double @llvm.fmuladd.f64(double %426, double 0x3C70F876CCDF6CD9, double %774)
  %776 = tail call double @llvm.fmuladd.f64(double %428, double 0x3C90F876CCDF6CD9, double %775)
  %777 = tail call double @llvm.fmuladd.f64(double %430, double 0x3C86A09E667F3BCC, double %776)
  %778 = tail call double @llvm.fmuladd.f64(double %432, double 0xBCC3CC8A99AF5452, double %777)
  %779 = tail call double @llvm.fmuladd.f64(double %434, double 0x3C70F876CCDF6CD9, double %778)
  %780 = tail call double @llvm.fmuladd.f64(double %436, double 0x3C86A09E667F3BCC, double %779)
  %781 = tail call double @llvm.fmuladd.f64(double %438, double 0x3C76A09E667F3BCD, double %780)
  %782 = tail call double @llvm.fmuladd.f64(double %440, double 0x3C96A09E667F3BCC, double %781)
  %gep10311 = getelementptr double, ptr %invariant.gep10310, i64 %indvars.iv
  store double %782, ptr %gep10311, align 8, !tbaa !5
  %783 = fmul double %379, 0xBCA8000000000001
  %784 = tail call double @llvm.fmuladd.f64(double %378, double 0xBC62000000000000, double %783)
  %785 = tail call double @llvm.fmuladd.f64(double %382, double 0x3CA2FFFFFFFFFFFE, double %784)
  %786 = tail call double @llvm.fmuladd.f64(double %384, double 0x3C70000000000001, double %785)
  %787 = tail call double @llvm.fmuladd.f64(double %386, double 0x3FD6F2A1D7A49299, double %786)
  %788 = tail call double @llvm.fmuladd.f64(double %388, double 0x3FEAEBF44A8E7A7F, double %787)
  %789 = tail call double @llvm.fmuladd.f64(double %390, double 0x3FEAEBF44A8E7A7D, double %788)
  %790 = tail call double @llvm.fmuladd.f64(double %392, double 0x3FD6F2A1D7A492C6, double %789)
  %791 = tail call double @llvm.fmuladd.f64(double %394, double 0xBC91000000000000, double %790)
  %792 = tail call double @llvm.fmuladd.f64(double %396, double 0xBC88000000000000, double %791)
  %793 = tail call double @llvm.fmuladd.f64(double %398, double 0x3C98000000000000, double %792)
  %794 = tail call double @llvm.fmuladd.f64(double %400, double 0xBC98000000000000, double %793)
  %795 = tail call double @llvm.fmuladd.f64(double %402, double 0x3C9A400000000000, double %794)
  %796 = tail call double @llvm.fmuladd.f64(double %404, double 0x3C90000000000000, double %795)
  %797 = tail call double @llvm.fmuladd.f64(double %406, double 0x3C9A000000000000, double %796)
  %798 = tail call double @llvm.fmuladd.f64(double %408, double 0x3C88000000000000, double %797)
  %799 = tail call double @llvm.fmuladd.f64(double %410, double 0x3CB9DA84FC1C5FD3, double %798)
  %800 = tail call double @llvm.fmuladd.f64(double %414, double 0xBC70F876CCDF6CD9, double %799)
  %801 = tail call double @llvm.fmuladd.f64(double %416, double 0xBC66A09E667F3BCC, double %800)
  %802 = tail call double @llvm.fmuladd.f64(double %418, double 0x400E488CB8C1EA66, double %801)
  %803 = tail call double @llvm.fmuladd.f64(double %420, double 0x3FD4A299D1E9700C, double %802)
  %804 = tail call double @llvm.fmuladd.f64(double %422, double 0xBFC5EA083165C4F9, double %803)
  %805 = tail call double @llvm.fmuladd.f64(double %424, double 0x3FA462D8D66D7F7F, double %804)
  %806 = tail call double @llvm.fmuladd.f64(double %426, double 0xBCABEE4386850DD1, double %805)
  %807 = tail call double @llvm.fmuladd.f64(double %428, double 0xBC66A09E667F3BCC, double %806)
  %808 = tail call double @llvm.fmuladd.f64(double %430, double 0xBC76A09E667F3BCD, double %807)
  %809 = tail call double @llvm.fmuladd.f64(double %432, double 0x3C90F876CCDF6CD9, double %808)
  %810 = tail call double @llvm.fmuladd.f64(double %434, double 0x3CA02CD13B44F3C0, double %809)
  %811 = tail call double @llvm.fmuladd.f64(double %438, double 0x3C70F876CCDF6CD9, double %810)
  %812 = tail call double @llvm.fmuladd.f64(double %440, double 0xBC66A09E667F3BCC, double %811)
  %gep10313 = getelementptr double, ptr %invariant.gep10312, i64 %indvars.iv
  store double %812, ptr %gep10313, align 8, !tbaa !5
  %813 = fmul double %379, 0x3C90000000000000
  %814 = tail call double @llvm.fmuladd.f64(double %378, double 0x3CABE00000000000, double %813)
  %815 = tail call double @llvm.fmuladd.f64(double %382, double 0x3C78000000000002, double %814)
  %816 = tail call double @llvm.fmuladd.f64(double %384, double 0x3C88000000000000, double %815)
  %817 = tail call double @llvm.fmuladd.f64(double %386, double 0xC01569E165D79417, double %816)
  %818 = tail call double @llvm.fmuladd.f64(double %388, double 0xBFDD2EB9CCB3BDF4, double %817)
  %819 = tail call double @llvm.fmuladd.f64(double %390, double 0x3FCEFDC8894D0831, double %818)
  %820 = tail call double @llvm.fmuladd.f64(double %392, double 0xBFACD49071EC5EF0, double %819)
  %821 = tail call double @llvm.fmuladd.f64(double %394, double 0x3CB5BFFFFFFFFFFF, double %820)
  %822 = tail call double @llvm.fmuladd.f64(double %396, double 0xBC70000000000001, double %821)
  %823 = tail call double @llvm.fmuladd.f64(double %398, double 0x3CB5FFFFFFFFFFFF, double %822)
  %824 = tail call double @llvm.fmuladd.f64(double %402, double 0x3C80800000000000, double %823)
  %825 = tail call double @llvm.fmuladd.f64(double %404, double 0xBCA0000000000002, double %824)
  %826 = tail call double @llvm.fmuladd.f64(double %406, double 0xBCAB000000000001, double %825)
  %827 = tail call double @llvm.fmuladd.f64(double %410, double 0x3C93F9CBD67C52CA, double %826)
  %828 = tail call double @llvm.fmuladd.f64(double %412, double 0x3C76A09E667F3BCD, double %827)
  %829 = tail call double @llvm.fmuladd.f64(double %414, double 0xBC8F1CD9CCEEF238, double %828)
  %830 = tail call double @llvm.fmuladd.f64(double %416, double 0xBC8C48C6001F0AC0, double %829)
  %831 = tail call double @llvm.fmuladd.f64(double %418, double 0xBFD039FE04F71643, double %830)
  %832 = tail call double @llvm.fmuladd.f64(double %420, double 0xBFE30958FBF81244, double %831)
  %833 = tail call double @llvm.fmuladd.f64(double %422, double 0xBFE30958FBF81231, double %832)
  %834 = tail call double @llvm.fmuladd.f64(double %424, double 0xBFD039FE04F71638, double %833)
  %835 = tail call double @llvm.fmuladd.f64(double %426, double 0x3C9CFDCAF353049B, double %834)
  %836 = tail call double @llvm.fmuladd.f64(double %428, double 0xBC80F876CCDF6CD9, double %835)
  %837 = tail call double @llvm.fmuladd.f64(double %430, double 0x3C90F876CCDF6CD9, double %836)
  %838 = tail call double @llvm.fmuladd.f64(double %432, double 0x3CA3CC8A99AF5452, double %837)
  %839 = tail call double @llvm.fmuladd.f64(double %434, double 0xBC8152F9467969C8, double %838)
  %840 = tail call double @llvm.fmuladd.f64(double %436, double 0xBC76A09E667F3BCD, double %839)
  %841 = tail call double @llvm.fmuladd.f64(double %438, double 0xBC926280B3476096, double %840)
  %842 = tail call double @llvm.fmuladd.f64(double %440, double 0xBC80F876CCDF6CD9, double %841)
  %gep10315 = getelementptr double, ptr %invariant.gep10314, i64 %indvars.iv
  store double %842, ptr %gep10315, align 8, !tbaa !5
  %843 = fmul double %379, 0xBC82000000000000
  %844 = tail call double @llvm.fmuladd.f64(double %378, double 0xBC85000000000000, double %843)
  %845 = tail call double @llvm.fmuladd.f64(double %382, double 0x3C8C000000000000, double %844)
  %846 = tail call double @llvm.fmuladd.f64(double %386, double 0x3F980EB0AE1D48EC, double %845)
  %847 = tail call double @llvm.fmuladd.f64(double %388, double 0xBFD4C0B9406BCBDC, double %846)
  %848 = tail call double @llvm.fmuladd.f64(double %390, double 0xBFEBF462FB348EF8, double %847)
  %849 = tail call double @llvm.fmuladd.f64(double %392, double 0xBFE002F9665DF3DA, double %848)
  %850 = tail call double @llvm.fmuladd.f64(double %394, double 0x3C70000000000001, double %849)
  %851 = tail call double @llvm.fmuladd.f64(double %398, double 0x3CB5FFFFFFFFFFFF, double %850)
  %852 = tail call double @llvm.fmuladd.f64(double %400, double 0x3CA0000000000002, double %851)
  %853 = tail call double @llvm.fmuladd.f64(double %402, double 0x3C96800000000000, double %852)
  %854 = tail call double @llvm.fmuladd.f64(double %404, double 0x3C91000000000000, double %853)
  %855 = tail call double @llvm.fmuladd.f64(double %406, double 0x3C60000000000000, double %854)
  %856 = tail call double @llvm.fmuladd.f64(double %408, double 0xBC7FFFFFFFFFFFFF, double %855)
  %857 = tail call double @llvm.fmuladd.f64(double %410, double 0x3C7DB2CFE686FE7B, double %856)
  %858 = tail call double @llvm.fmuladd.f64(double %412, double 0x3C91AD7BC01366B7, double %857)
  %859 = tail call double @llvm.fmuladd.f64(double %414, double 0x3C56A09E667F3BCC, double %858)
  %860 = tail call double @llvm.fmuladd.f64(double %416, double 0xBC86A09E667F3BCC, double %859)
  %861 = tail call double @llvm.fmuladd.f64(double %418, double 0x3FD08C54FF101A10, double %860)
  %862 = tail call double @llvm.fmuladd.f64(double %420, double 0x4007001BD846D0B2, double %861)
  %863 = tail call double @llvm.fmuladd.f64(double %422, double 0x3FD0C7817D9C3137, double %862)
  %864 = tail call double @llvm.fmuladd.f64(double %424, double 0xBFB8DF388696F54E, double %863)
  %865 = tail call double @llvm.fmuladd.f64(double %426, double 0xBC93CC8A99AF5452, double %864)
  %866 = tail call double @llvm.fmuladd.f64(double %428, double 0xBCA6A09E667F3BCC, double %865)
  %867 = tail call double @llvm.fmuladd.f64(double %430, double 0x3C76A09E667F3BCD, double %866)
  %868 = tail call double @llvm.fmuladd.f64(double %432, double 0x3C86A09E667F3BCC, double %867)
  %869 = tail call double @llvm.fmuladd.f64(double %434, double 0xBC8A29B726831D24, double %868)
  %870 = tail call double @llvm.fmuladd.f64(double %436, double 0x3C73CC8A99AF5453, double %869)
  %871 = tail call double @llvm.fmuladd.f64(double %438, double 0xBC56A09E667F3BCC, double %870)
  %872 = tail call double @llvm.fmuladd.f64(double %440, double 0xBC80F876CCDF6CD9, double %871)
  %gep10317 = getelementptr double, ptr %invariant.gep10316, i64 %indvars.iv
  store double %872, ptr %gep10317, align 8, !tbaa !5
  %873 = fmul double %379, 0xBCBE400000000000
  %874 = tail call double @llvm.fmuladd.f64(double %378, double 0x3C6C000000000000, double %873)
  %875 = tail call double @llvm.fmuladd.f64(double %382, double 0x3C8C000000000000, double %874)
  %876 = tail call double @llvm.fmuladd.f64(double %384, double 0x3C90000000000000, double %875)
  %877 = tail call double @llvm.fmuladd.f64(double %386, double 0xBFD7671404765126, double %876)
  %878 = tail call double @llvm.fmuladd.f64(double %388, double 0xC01043858A1F5996, double %877)
  %879 = tail call double @llvm.fmuladd.f64(double %390, double 0xBFD7BAC3393ADDBB, double %878)
  %880 = tail call double @llvm.fmuladd.f64(double %392, double 0x3FC1964E14FA3C8D, double %879)
  %881 = tail call double @llvm.fmuladd.f64(double %394, double 0x3CA5FFFFFFFFFFFF, double %880)
  %882 = tail call double @llvm.fmuladd.f64(double %396, double 0x3CA0000000000002, double %881)
  %883 = tail call double @llvm.fmuladd.f64(double %398, double 0x3C98000000000000, double %882)
  %884 = tail call double @llvm.fmuladd.f64(double %400, double 0xBC90000000000000, double %883)
  %885 = tail call double @llvm.fmuladd.f64(double %402, double 0x3C89000000000000, double %884)
  %886 = tail call double @llvm.fmuladd.f64(double %404, double 0xBCA3800000000002, double %885)
  %887 = tail call double @llvm.fmuladd.f64(double %406, double 0x3C60000000000000, double %886)
  %888 = tail call double @llvm.fmuladd.f64(double %408, double 0x3C88000000000000, double %887)
  %889 = tail call double @llvm.fmuladd.f64(double %410, double 0x3C726280B3476096, double %888)
  %890 = tail call double @llvm.fmuladd.f64(double %412, double 0x3C46A09E667F3BCB, double %889)
  %891 = tail call double @llvm.fmuladd.f64(double %414, double 0xBC9536948017480F, double %890)
  %892 = tail call double @llvm.fmuladd.f64(double %416, double 0xBC86A09E667F3BCC, double %891)
  %893 = tail call double @llvm.fmuladd.f64(double %418, double 0xBF9102DA00B18A68, double %892)
  %894 = tail call double @llvm.fmuladd.f64(double %420, double 0x3FCD5953692F6EA6, double %893)
  %895 = tail call double @llvm.fmuladd.f64(double %422, double 0x3FE3C4545BCF030C, double %894)
  %896 = tail call double @llvm.fmuladd.f64(double %424, double 0x3FD6A4D32EB1F710, double %895)
  %897 = tail call double @llvm.fmuladd.f64(double %426, double 0xBC8C48C6001F0AC0, double %896)
  %898 = tail call double @llvm.fmuladd.f64(double %428, double 0xBC96A09E667F3BCC, double %897)
  %899 = tail call double @llvm.fmuladd.f64(double %430, double 0xBCA974B2334F2346, double %898)
  %900 = tail call double @llvm.fmuladd.f64(double %432, double 0xBC96A09E667F3BCC, double %899)
  %901 = tail call double @llvm.fmuladd.f64(double %434, double 0xBC84818F8CE34E32, double %900)
  %902 = tail call double @llvm.fmuladd.f64(double %436, double 0x3C73CC8A99AF5453, double %901)
  %903 = tail call double @llvm.fmuladd.f64(double %438, double 0x3C83CC8A99AF5451, double %902)
  %904 = tail call double @llvm.fmuladd.f64(double %440, double 0xBC76A09E667F3BCD, double %903)
  %gep10319 = getelementptr double, ptr %invariant.gep10318, i64 %indvars.iv
  store double %904, ptr %gep10319, align 8, !tbaa !5
  %905 = tail call double @llvm.fmuladd.f64(double %378, double 0x3C76800000000000, double %813)
  %906 = tail call double @llvm.fmuladd.f64(double %382, double 0x3C9A000000000000, double %905)
  %907 = tail call double @llvm.fmuladd.f64(double %384, double 0xBC88000000000000, double %906)
  %908 = tail call double @llvm.fmuladd.f64(double %386, double 0x3FF043C98657E812, double %907)
  %909 = tail call double @llvm.fmuladd.f64(double %388, double 0x3FEFAD7976B5DE1F, double %908)
  %910 = tail call double @llvm.fmuladd.f64(double %390, double 0xBFB4C23AD63BEF8D, double %909)
  %911 = tail call double @llvm.fmuladd.f64(double %392, double 0xBFAC37F3CCE9FD36, double %910)
  %912 = tail call double @llvm.fmuladd.f64(double %394, double 0x3C74FFFFFFFFFFFF, double %911)
  %913 = tail call double @llvm.fmuladd.f64(double %396, double 0xBCA4800000000001, double %912)
  %914 = tail call double @llvm.fmuladd.f64(double %398, double 0x3CA9FFFFFFFFFFFE, double %913)
  %915 = tail call double @llvm.fmuladd.f64(double %400, double 0x3C88000000000000, double %914)
  %916 = tail call double @llvm.fmuladd.f64(double %402, double 0x3C9A600000000000, double %915)
  %917 = tail call double @llvm.fmuladd.f64(double %404, double 0xBC90000000000000, double %916)
  %918 = tail call double @llvm.fmuladd.f64(double %406, double 0xBC84000000000000, double %917)
  %919 = tail call double @llvm.fmuladd.f64(double %408, double 0x3C90000000000000, double %918)
  %920 = tail call double @llvm.fmuladd.f64(double %410, double 0xBCA0D685DF45AE00, double %919)
  %921 = tail call double @llvm.fmuladd.f64(double %412, double 0x3C56A09E667F3BCC, double %920)
  %922 = tail call double @llvm.fmuladd.f64(double %414, double 0xBC46A09E667F3BCB, double %921)
  %923 = tail call double @llvm.fmuladd.f64(double %416, double 0x3C76A09E667F3BCD, double %922)
  %924 = tail call double @llvm.fmuladd.f64(double %418, double 0x3FD6A4D32EB1F71D, double %923)
  %925 = tail call double @llvm.fmuladd.f64(double %420, double 0x3FE3C4545BCF030E, double %924)
  %926 = tail call double @llvm.fmuladd.f64(double %422, double 0x3FCD5953692F6EA6, double %925)
  %927 = tail call double @llvm.fmuladd.f64(double %424, double 0xBF9102DA00B18A34, double %926)
  %928 = tail call double @llvm.fmuladd.f64(double %426, double 0xBCA16999E4DFE905, double %927)
  %929 = tail call double @llvm.fmuladd.f64(double %428, double 0xBCA91A2FB9B52657, double %928)
  %930 = tail call double @llvm.fmuladd.f64(double %430, double 0xBC9974B2334F2346, double %929)
  %931 = tail call double @llvm.fmuladd.f64(double %432, double 0x3C80F876CCDF6CD9, double %930)
  %932 = tail call double @llvm.fmuladd.f64(double %434, double 0x3C759116F9B144FE, double %931)
  %933 = tail call double @llvm.fmuladd.f64(double %436, double 0x3C70F876CCDF6CD9, double %932)
  %934 = tail call double @llvm.fmuladd.f64(double %438, double 0xBC73CC8A99AF5453, double %933)
  %935 = tail call double @llvm.fmuladd.f64(double %440, double 0xBC8C48C6001F0AC0, double %934)
  %gep10321 = getelementptr double, ptr %invariant.gep10320, i64 %indvars.iv
  store double %935, ptr %gep10321, align 8, !tbaa !5
  %936 = fmul double %379, 0xBC8C000000000000
  %937 = tail call double @llvm.fmuladd.f64(double %378, double 0x3CA22FFFFFFFFFFF, double %936)
  %938 = tail call double @llvm.fmuladd.f64(double %382, double 0x3C82000000000000, double %937)
  %939 = tail call double @llvm.fmuladd.f64(double %384, double 0xBC88000000000000, double %938)
  %940 = tail call double @llvm.fmuladd.f64(double %386, double 0xBFE002F9665DF3E9, double %939)
  %941 = tail call double @llvm.fmuladd.f64(double %388, double 0xBFEBF462FB348EF9, double %940)
  %942 = tail call double @llvm.fmuladd.f64(double %390, double 0xBFD4C0B9406BCBCC, double %941)
  %943 = tail call double @llvm.fmuladd.f64(double %392, double 0x3F980EB0AE1D4853, double %942)
  %944 = tail call double @llvm.fmuladd.f64(double %394, double 0x3CB3900000000000, double %943)
  %945 = tail call double @llvm.fmuladd.f64(double %396, double 0x3CAD7FFFFFFFFFFE, double %944)
  %946 = tail call double @llvm.fmuladd.f64(double %398, double 0x3CB2000000000000, double %945)
  %947 = tail call double @llvm.fmuladd.f64(double %400, double 0xBC88000000000000, double %946)
  %948 = tail call double @llvm.fmuladd.f64(double %402, double 0xBCA22FFFFFFFFFFF, double %947)
  %949 = tail call double @llvm.fmuladd.f64(double %404, double 0xBC84000000000000, double %948)
  %950 = tail call double @llvm.fmuladd.f64(double %406, double 0x3C8E000000000000, double %949)
  %951 = tail call double @llvm.fmuladd.f64(double %408, double 0x3C94000000000000, double %950)
  %952 = tail call double @llvm.fmuladd.f64(double %410, double 0x3C7F775C4688EF29, double %951)
  %953 = tail call double @llvm.fmuladd.f64(double %412, double 0xBC8C48C6001F0AC0, double %952)
  %954 = tail call double @llvm.fmuladd.f64(double %414, double 0xBC80F876CCDF6CD9, double %953)
  %955 = tail call double @llvm.fmuladd.f64(double %416, double 0x3C76A09E667F3BCD, double %954)
  %956 = tail call double @llvm.fmuladd.f64(double %418, double 0xBFE7007BFD8FD85D, double %955)
  %957 = tail call double @llvm.fmuladd.f64(double %420, double 0xBFE66643AEED3708, double %956)
  %958 = tail call double @llvm.fmuladd.f64(double %422, double 0x3FAD5B74B5F10E9B, double %957)
  %959 = tail call double @llvm.fmuladd.f64(double %424, double 0x3FA3F41B0E87BFB6, double %958)
  %960 = tail call double @llvm.fmuladd.f64(double %426, double 0xBC9125B809AC6B51, double %959)
  %961 = tail call double @llvm.fmuladd.f64(double %428, double 0x3C826280B3476096, double %960)
  %962 = tail call double @llvm.fmuladd.f64(double %430, double 0xBC90F876CCDF6CD9, double %961)
  %963 = tail call double @llvm.fmuladd.f64(double %432, double 0xBC80F876CCDF6CD9, double %962)
  %964 = tail call double @llvm.fmuladd.f64(double %434, double 0x3C6B93C10CEB10E3, double %963)
  %965 = tail call double @llvm.fmuladd.f64(double %436, double 0x3C8C48C6001F0AC0, double %964)
  %966 = tail call double @llvm.fmuladd.f64(double %438, double 0xBC66A09E667F3BCC, double %965)
  %967 = tail call double @llvm.fmuladd.f64(double %440, double 0xBC8C48C6001F0AC0, double %966)
  %gep10323 = getelementptr double, ptr %invariant.gep10322, i64 %indvars.iv
  store double %967, ptr %gep10323, align 8, !tbaa !5
  %968 = fmul double %379, 0xBC98000000000000
  %969 = tail call double @llvm.fmuladd.f64(double %378, double 0x3C98800000000000, double %968)
  %970 = tail call double @llvm.fmuladd.f64(double %382, double 0xBCA2000000000000, double %969)
  %971 = tail call double @llvm.fmuladd.f64(double %384, double 0xBC90000000000000, double %970)
  %972 = tail call double @llvm.fmuladd.f64(double %386, double 0x3FC1964E14FA3C8D, double %971)
  %973 = tail call double @llvm.fmuladd.f64(double %388, double 0xBFD7BAC3393ADDAC, double %972)
  %974 = tail call double @llvm.fmuladd.f64(double %390, double 0xC01043858A1F5994, double %973)
  %975 = tail call double @llvm.fmuladd.f64(double %392, double 0xBFD7671404765114, double %974)
  %976 = tail call double @llvm.fmuladd.f64(double %394, double 0xBC92000000000000, double %975)
  %977 = tail call double @llvm.fmuladd.f64(double %396, double 0x3C90000000000000, double %976)
  %978 = tail call double @llvm.fmuladd.f64(double %398, double 0x3C98000000000000, double %977)
  %979 = tail call double @llvm.fmuladd.f64(double %400, double 0x3C90000000000000, double %978)
  %980 = tail call double @llvm.fmuladd.f64(double %402, double 0x3C7E000000000001, double %979)
  %981 = tail call double @llvm.fmuladd.f64(double %404, double 0xBC90000000000000, double %980)
  %982 = tail call double @llvm.fmuladd.f64(double %406, double 0xBC9C000000000000, double %981)
  %983 = tail call double @llvm.fmuladd.f64(double %408, double 0xBC7FFFFFFFFFFFFF, double %982)
  %984 = tail call double @llvm.fmuladd.f64(double %410, double 0x3C7ADEBC19B71701, double %983)
  %985 = tail call double @llvm.fmuladd.f64(double %412, double 0xBC90F876CCDF6CD9, double %984)
  %986 = tail call double @llvm.fmuladd.f64(double %414, double 0x3C9C48C6001F0ABF, double %985)
  %987 = tail call double @llvm.fmuladd.f64(double %418, double 0x3FA3F41B0E87BFE9, double %986)
  %988 = tail call double @llvm.fmuladd.f64(double %420, double 0x3FAD5B74B5F10E92, double %987)
  %989 = tail call double @llvm.fmuladd.f64(double %422, double 0xBFE66643AEED36FA, double %988)
  %990 = tail call double @llvm.fmuladd.f64(double %424, double 0xBFE7007BFD8FD85D, double %989)
  %991 = tail call double @llvm.fmuladd.f64(double %426, double 0xBC70F876CCDF6CD9, double %990)
  %992 = tail call double @llvm.fmuladd.f64(double %428, double 0xBC96A09E667F3BCC, double %991)
  %993 = tail call double @llvm.fmuladd.f64(double %430, double 0x3CA3CC8A99AF5452, double %992)
  %994 = tail call double @llvm.fmuladd.f64(double %432, double 0x3C86A09E667F3BCC, double %993)
  %995 = tail call double @llvm.fmuladd.f64(double %434, double 0x3C7DB2CFE686FE7B, double %994)
  %996 = tail call double @llvm.fmuladd.f64(double %436, double 0xBC76A09E667F3BCD, double %995)
  %997 = tail call double @llvm.fmuladd.f64(double %438, double 0xBC90F876CCDF6CD9, double %996)
  %gep10325 = getelementptr double, ptr %invariant.gep10324, i64 %indvars.iv
  store double %997, ptr %gep10325, align 8, !tbaa !5
  %998 = fmul double %379, 0x3C98000000000000
  %999 = tail call double @llvm.fmuladd.f64(double %378, double 0xBC82FFFFFFFFFFFF, double %998)
  %1000 = tail call double @llvm.fmuladd.f64(double %382, double 0xBCA4000000000001, double %999)
  %1001 = tail call double @llvm.fmuladd.f64(double %386, double 0xBFAC37F3CCE9FD85, double %1000)
  %1002 = tail call double @llvm.fmuladd.f64(double %388, double 0xBFB4C23AD63BEF7C, double %1001)
  %1003 = tail call double @llvm.fmuladd.f64(double %390, double 0x3FEFAD7976B5DE11, double %1002)
  %1004 = tail call double @llvm.fmuladd.f64(double %392, double 0x3FF043C98657E812, double %1003)
  %1005 = tail call double @llvm.fmuladd.f64(double %394, double 0x3C78000000000002, double %1004)
  %1006 = tail call double @llvm.fmuladd.f64(double %396, double 0x3CA0000000000002, double %1005)
  %1007 = tail call double @llvm.fmuladd.f64(double %398, double 0xBCAC000000000000, double %1006)
  %1008 = tail call double @llvm.fmuladd.f64(double %400, double 0xBC90000000000000, double %1007)
  %1009 = tail call double @llvm.fmuladd.f64(double %402, double 0xBC85000000000000, double %1008)
  %1010 = tail call double @llvm.fmuladd.f64(double %404, double 0x3C7FFFFFFFFFFFFF, double %1009)
  %1011 = tail call double @llvm.fmuladd.f64(double %406, double 0x3C98000000000000, double %1010)
  %1012 = tail call double @llvm.fmuladd.f64(double %410, double 0xBC9152F9467969C8, double %1011)
  %1013 = tail call double @llvm.fmuladd.f64(double %412, double 0x3C90F876CCDF6CD9, double %1012)
  %1014 = tail call double @llvm.fmuladd.f64(double %414, double 0x3C9974B2334F2346, double %1013)
  %1015 = tail call double @llvm.fmuladd.f64(double %416, double 0x3C86A09E667F3BCC, double %1014)
  %1016 = tail call double @llvm.fmuladd.f64(double %418, double 0xBFB8DF388696F554, double %1015)
  %1017 = tail call double @llvm.fmuladd.f64(double %420, double 0x3FD0C7817D9C3121, double %1016)
  %1018 = tail call double @llvm.fmuladd.f64(double %422, double 0x4007001BD846D0AE, double %1017)
  %1019 = tail call double @llvm.fmuladd.f64(double %424, double 0x3FD08C54FF1019FC, double %1018)
  %1020 = tail call double @llvm.fmuladd.f64(double %426, double 0x3C8974B2334F2346, double %1019)
  %1021 = tail call double @llvm.fmuladd.f64(double %428, double 0xBC86A09E667F3BCC, double %1020)
  %1022 = tail call double @llvm.fmuladd.f64(double %430, double 0xBC90F876CCDF6CD9, double %1021)
  %1023 = tail call double @llvm.fmuladd.f64(double %432, double 0xBC86A09E667F3BCC, double %1022)
  %1024 = tail call double @llvm.fmuladd.f64(double %434, double 0xBC75369480174810, double %1023)
  %1025 = tail call double @llvm.fmuladd.f64(double %436, double 0x3C86A09E667F3BCC, double %1024)
  %1026 = tail call double @llvm.fmuladd.f64(double %438, double 0x3C93CC8A99AF5452, double %1025)
  %1027 = tail call double @llvm.fmuladd.f64(double %440, double 0x3C76A09E667F3BCD, double %1026)
  %gep10327 = getelementptr double, ptr %invariant.gep10326, i64 %indvars.iv
  store double %1027, ptr %gep10327, align 8, !tbaa !5
  %1028 = fmul double %379, 0xBC89FFFFFFFFFFFF
  %1029 = tail call double @llvm.fmuladd.f64(double %378, double 0x3C70000000000001, double %1028)
  %1030 = tail call double @llvm.fmuladd.f64(double %382, double 0x3C70000000000001, double %1029)
  %1031 = tail call double @llvm.fmuladd.f64(double %384, double 0xBC7FFFFFFFFFFFFF, double %1030)
  %1032 = tail call double @llvm.fmuladd.f64(double %386, double 0x3C6C000000000000, double %1031)
  %1033 = tail call double @llvm.fmuladd.f64(double %388, double 0x3C9A000000000000, double %1032)
  %1034 = tail call double @llvm.fmuladd.f64(double %390, double 0xBC98000000000000, double %1033)
  %1035 = tail call double @llvm.fmuladd.f64(double %392, double 0x3CA0000000000002, double %1034)
  %1036 = tail call double @llvm.fmuladd.f64(double %394, double 0x3FA789B66AF4F45E, double %1035)
  %1037 = tail call double @llvm.fmuladd.f64(double %396, double 0x3FEC2894019C8AD1, double %1036)
  %1038 = tail call double @llvm.fmuladd.f64(double %398, double 0x3FEC2894019C8AC2, double %1037)
  %1039 = tail call double @llvm.fmuladd.f64(double %400, double 0x3FA789B66AF4F55B, double %1038)
  %1040 = tail call double @llvm.fmuladd.f64(double %402, double 0x3C94000000000000, double %1039)
  %1041 = tail call double @llvm.fmuladd.f64(double %404, double 0xBC93000000000000, double %1040)
  %1042 = tail call double @llvm.fmuladd.f64(double %406, double 0xBC9C000000000000, double %1041)
  %1043 = tail call double @llvm.fmuladd.f64(double %408, double 0x3C7FFFFFFFFFFFFF, double %1042)
  %1044 = tail call double @llvm.fmuladd.f64(double %410, double 0xBC50F876CCDF6CD8, double %1043)
  %1045 = tail call double @llvm.fmuladd.f64(double %412, double 0x3C7F1CD9CCEEF238, double %1044)
  %1046 = tail call double @llvm.fmuladd.f64(double %414, double 0xBC66A09E667F3BCC, double %1045)
  %1047 = tail call double @llvm.fmuladd.f64(double %416, double 0x3C76A09E667F3BCD, double %1046)
  %1048 = tail call double @llvm.fmuladd.f64(double %418, double 0xBC9207FE39AD63A7, double %1047)
  %1049 = tail call double @llvm.fmuladd.f64(double %420, double 0xBC83CC8A99AF5451, double %1048)
  %1050 = tail call double @llvm.fmuladd.f64(double %424, double 0xBC90F876CCDF6CD9, double %1049)
  %1051 = tail call double @llvm.fmuladd.f64(double %426, double 0xBFA0A4D27CF86DCE, double %1050)
  %1052 = tail call double @llvm.fmuladd.f64(double %428, double 0xBFE3E93C07AFC382, double %1051)
  %1053 = tail call double @llvm.fmuladd.f64(double %430, double 0xBFE3E93C07AFC37F, double %1052)
  %1054 = tail call double @llvm.fmuladd.f64(double %432, double 0xBFA0A4D27CF86DB4, double %1053)
  %1055 = tail call double @llvm.fmuladd.f64(double %434, double 0xBC84818F8CE34E32, double %1054)
  %1056 = tail call double @llvm.fmuladd.f64(double %436, double 0x3C6C48C6001F0ABE, double %1055)
  %1057 = tail call double @llvm.fmuladd.f64(double %438, double 0xBC66A09E667F3BCC, double %1056)
  %1058 = tail call double @llvm.fmuladd.f64(double %440, double 0xBC76A09E667F3BCD, double %1057)
  %gep10329 = getelementptr double, ptr %invariant.gep10328, i64 %indvars.iv
  store double %1058, ptr %gep10329, align 8, !tbaa !5
  %1059 = tail call double @llvm.fmuladd.f64(double %378, double 0xBC78000000000002, double %968)
  %1060 = tail call double @llvm.fmuladd.f64(double %382, double 0xBC7FFFFFFFFFFFFF, double %1059)
  %1061 = tail call double @llvm.fmuladd.f64(double %384, double 0xBCB0000000000000, double %1060)
  %1062 = tail call double @llvm.fmuladd.f64(double %386, double 0x3C60000000000000, double %1061)
  %1063 = tail call double @llvm.fmuladd.f64(double %390, double 0x3CA0000000000002, double %1062)
  %1064 = tail call double @llvm.fmuladd.f64(double %392, double 0x3CA0000000000002, double %1063)
  %1065 = tail call double @llvm.fmuladd.f64(double %394, double 0xBFACD49071EC5F4A, double %1064)
  %1066 = tail call double @llvm.fmuladd.f64(double %396, double 0x3FCEFDC8894D082A, double %1065)
  %1067 = tail call double @llvm.fmuladd.f64(double %398, double 0xBFDD2EB9CCB3BDEB, double %1066)
  %1068 = tail call double @llvm.fmuladd.f64(double %400, double 0xC01569E165D79419, double %1067)
  %1069 = tail call double @llvm.fmuladd.f64(double %402, double 0x3C90000000000000, double %1068)
  %1070 = tail call double @llvm.fmuladd.f64(double %404, double 0xBC90000000000000, double %1069)
  %1071 = tail call double @llvm.fmuladd.f64(double %406, double 0x3C7FFFFFFFFFFFFF, double %1070)
  %1072 = tail call double @llvm.fmuladd.f64(double %408, double 0xBCB0000000000000, double %1071)
  %1073 = tail call double @llvm.fmuladd.f64(double %410, double 0x3C70F876CCDF6CD9, double %1072)
  %1074 = tail call double @llvm.fmuladd.f64(double %412, double 0x3C86A09E667F3BCC, double %1073)
  %1075 = tail call double @llvm.fmuladd.f64(double %414, double 0x3C76A09E667F3BCD, double %1074)
  %1076 = tail call double @llvm.fmuladd.f64(double %416, double 0x3C96A09E667F3BCC, double %1075)
  %1077 = tail call double @llvm.fmuladd.f64(double %418, double 0x3C70F876CCDF6CD9, double %1076)
  %1078 = tail call double @llvm.fmuladd.f64(double %420, double 0x3C90F876CCDF6CD9, double %1077)
  %1079 = tail call double @llvm.fmuladd.f64(double %422, double 0x3C86A09E667F3BCC, double %1078)
  %1080 = tail call double @llvm.fmuladd.f64(double %424, double 0xBCC3CC8A99AF5452, double %1079)
  %1081 = tail call double @llvm.fmuladd.f64(double %426, double 0x3FA462D8D66D7FBE, double %1080)
  %1082 = tail call double @llvm.fmuladd.f64(double %428, double 0xBFC5EA083165C4F6, double %1081)
  %1083 = tail call double @llvm.fmuladd.f64(double %430, double 0x3FD4A299D1E97012, double %1082)
  %1084 = tail call double @llvm.fmuladd.f64(double %432, double 0x400E488CB8C1EA78, double %1083)
  %1085 = tail call double @llvm.fmuladd.f64(double %434, double 0xBC80F876CCDF6CD9, double %1084)
  %1086 = tail call double @llvm.fmuladd.f64(double %436, double 0xBC76A09E667F3BCD, double %1085)
  %1087 = tail call double @llvm.fmuladd.f64(double %438, double 0x3C90F876CCDF6CD9, double %1086)
  %1088 = tail call double @llvm.fmuladd.f64(double %440, double 0x3CB0F876CCDF6CD8, double %1087)
  %gep10331 = getelementptr double, ptr %invariant.gep10330, i64 %indvars.iv
  store double %1088, ptr %gep10331, align 8, !tbaa !5
  %1089 = tail call double @llvm.fmuladd.f64(double %378, double 0x3C9A400000000000, double %813)
  %1090 = tail call double @llvm.fmuladd.f64(double %382, double 0x3C9A000000000000, double %1089)
  %1091 = tail call double @llvm.fmuladd.f64(double %384, double 0x3C88000000000000, double %1090)
  %1092 = tail call double @llvm.fmuladd.f64(double %386, double 0xBC91000000000000, double %1091)
  %1093 = tail call double @llvm.fmuladd.f64(double %388, double 0xBC88000000000000, double %1092)
  %1094 = tail call double @llvm.fmuladd.f64(double %390, double 0x3C98000000000000, double %1093)
  %1095 = tail call double @llvm.fmuladd.f64(double %392, double 0xBC98000000000000, double %1094)
  %1096 = tail call double @llvm.fmuladd.f64(double %394, double 0x3FD6F2A1D7A49299, double %1095)
  %1097 = tail call double @llvm.fmuladd.f64(double %396, double 0x3FEAEBF44A8E7A7F, double %1096)
  %1098 = tail call double @llvm.fmuladd.f64(double %398, double 0x3FEAEBF44A8E7A7D, double %1097)
  %1099 = tail call double @llvm.fmuladd.f64(double %400, double 0x3FD6F2A1D7A492C6, double %1098)
  %1100 = tail call double @llvm.fmuladd.f64(double %402, double 0xBC62000000000000, double %1099)
  %1101 = tail call double @llvm.fmuladd.f64(double %404, double 0xBCA8000000000001, double %1100)
  %1102 = tail call double @llvm.fmuladd.f64(double %406, double 0x3CA2FFFFFFFFFFFE, double %1101)
  %1103 = tail call double @llvm.fmuladd.f64(double %408, double 0x3C70000000000001, double %1102)
  %1104 = tail call double @llvm.fmuladd.f64(double %410, double 0x3CA02CD13B44F3C0, double %1103)
  %1105 = tail call double @llvm.fmuladd.f64(double %414, double 0x3C70F876CCDF6CD9, double %1104)
  %1106 = tail call double @llvm.fmuladd.f64(double %416, double 0xBC66A09E667F3BCC, double %1105)
  %1107 = tail call double @llvm.fmuladd.f64(double %418, double 0xBCABEE4386850DD1, double %1106)
  %1108 = tail call double @llvm.fmuladd.f64(double %420, double 0xBC66A09E667F3BCC, double %1107)
  %1109 = tail call double @llvm.fmuladd.f64(double %422, double 0xBC76A09E667F3BCD, double %1108)
  %1110 = tail call double @llvm.fmuladd.f64(double %424, double 0x3C90F876CCDF6CD9, double %1109)
  %1111 = tail call double @llvm.fmuladd.f64(double %426, double 0x400E488CB8C1EA66, double %1110)
  %1112 = tail call double @llvm.fmuladd.f64(double %428, double 0x3FD4A299D1E9700C, double %1111)
  %1113 = tail call double @llvm.fmuladd.f64(double %430, double 0xBFC5EA083165C4F9, double %1112)
  %1114 = tail call double @llvm.fmuladd.f64(double %432, double 0x3FA462D8D66D7F7F, double %1113)
  %1115 = tail call double @llvm.fmuladd.f64(double %434, double 0x3CB9DA84FC1C5FD3, double %1114)
  %1116 = tail call double @llvm.fmuladd.f64(double %438, double 0xBC70F876CCDF6CD9, double %1115)
  %1117 = tail call double @llvm.fmuladd.f64(double %440, double 0xBC66A09E667F3BCC, double %1116)
  %gep10333 = getelementptr double, ptr %invariant.gep10332, i64 %indvars.iv
  store double %1117, ptr %gep10333, align 8, !tbaa !5
  %1118 = fmul double %379, 0xBCA0000000000002
  %1119 = tail call double @llvm.fmuladd.f64(double %378, double 0x3C80800000000000, double %1118)
  %1120 = tail call double @llvm.fmuladd.f64(double %382, double 0xBCAB000000000001, double %1119)
  %1121 = tail call double @llvm.fmuladd.f64(double %386, double 0x3CB5BFFFFFFFFFFF, double %1120)
  %1122 = tail call double @llvm.fmuladd.f64(double %388, double 0xBC70000000000001, double %1121)
  %1123 = tail call double @llvm.fmuladd.f64(double %390, double 0x3CB5FFFFFFFFFFFF, double %1122)
  %1124 = tail call double @llvm.fmuladd.f64(double %394, double 0xC01569E165D79417, double %1123)
  %1125 = tail call double @llvm.fmuladd.f64(double %396, double 0xBFDD2EB9CCB3BDF4, double %1124)
  %1126 = tail call double @llvm.fmuladd.f64(double %398, double 0x3FCEFDC8894D0831, double %1125)
  %1127 = tail call double @llvm.fmuladd.f64(double %400, double 0xBFACD49071EC5EF0, double %1126)
  %1128 = tail call double @llvm.fmuladd.f64(double %402, double 0x3CABE00000000000, double %1127)
  %1129 = tail call double @llvm.fmuladd.f64(double %404, double 0x3C90000000000000, double %1128)
  %1130 = tail call double @llvm.fmuladd.f64(double %406, double 0x3C78000000000002, double %1129)
  %1131 = tail call double @llvm.fmuladd.f64(double %408, double 0x3C88000000000000, double %1130)
  %1132 = tail call double @llvm.fmuladd.f64(double %410, double 0xBC8152F9467969C8, double %1131)
  %1133 = tail call double @llvm.fmuladd.f64(double %412, double 0xBC76A09E667F3BCD, double %1132)
  %1134 = tail call double @llvm.fmuladd.f64(double %414, double 0xBC926280B3476096, double %1133)
  %1135 = tail call double @llvm.fmuladd.f64(double %416, double 0xBC80F876CCDF6CD9, double %1134)
  %1136 = tail call double @llvm.fmuladd.f64(double %418, double 0x3C9CFDCAF353049B, double %1135)
  %1137 = tail call double @llvm.fmuladd.f64(double %420, double 0xBC80F876CCDF6CD9, double %1136)
  %1138 = tail call double @llvm.fmuladd.f64(double %422, double 0x3C90F876CCDF6CD9, double %1137)
  %1139 = tail call double @llvm.fmuladd.f64(double %424, double 0x3CA3CC8A99AF5452, double %1138)
  %1140 = tail call double @llvm.fmuladd.f64(double %426, double 0xBFD039FE04F71643, double %1139)
  %1141 = tail call double @llvm.fmuladd.f64(double %428, double 0xBFE30958FBF81244, double %1140)
  %1142 = tail call double @llvm.fmuladd.f64(double %430, double 0xBFE30958FBF81231, double %1141)
  %1143 = tail call double @llvm.fmuladd.f64(double %432, double 0xBFD039FE04F71638, double %1142)
  %1144 = tail call double @llvm.fmuladd.f64(double %434, double 0x3C93F9CBD67C52CA, double %1143)
  %1145 = tail call double @llvm.fmuladd.f64(double %436, double 0x3C76A09E667F3BCD, double %1144)
  %1146 = tail call double @llvm.fmuladd.f64(double %438, double 0xBC8F1CD9CCEEF238, double %1145)
  %1147 = tail call double @llvm.fmuladd.f64(double %440, double 0xBC8C48C6001F0AC0, double %1146)
  %gep10335 = getelementptr double, ptr %invariant.gep10334, i64 %indvars.iv
  store double %1147, ptr %gep10335, align 8, !tbaa !5
  %1148 = fmul double %379, 0x3C91000000000000
  %1149 = tail call double @llvm.fmuladd.f64(double %378, double 0x3C96800000000000, double %1148)
  %1150 = tail call double @llvm.fmuladd.f64(double %382, double 0x3C60000000000000, double %1149)
  %1151 = tail call double @llvm.fmuladd.f64(double %384, double 0xBC7FFFFFFFFFFFFF, double %1150)
  %1152 = tail call double @llvm.fmuladd.f64(double %386, double 0x3C70000000000001, double %1151)
  %1153 = tail call double @llvm.fmuladd.f64(double %390, double 0x3CB5FFFFFFFFFFFF, double %1152)
  %1154 = tail call double @llvm.fmuladd.f64(double %392, double 0x3CA0000000000002, double %1153)
  %1155 = tail call double @llvm.fmuladd.f64(double %394, double 0x3F980EB0AE1D48EC, double %1154)
  %1156 = tail call double @llvm.fmuladd.f64(double %396, double 0xBFD4C0B9406BCBDC, double %1155)
  %1157 = tail call double @llvm.fmuladd.f64(double %398, double 0xBFEBF462FB348EF8, double %1156)
  %1158 = tail call double @llvm.fmuladd.f64(double %400, double 0xBFE002F9665DF3DA, double %1157)
  %1159 = tail call double @llvm.fmuladd.f64(double %402, double 0xBC85000000000000, double %1158)
  %1160 = tail call double @llvm.fmuladd.f64(double %404, double 0xBC82000000000000, double %1159)
  %1161 = tail call double @llvm.fmuladd.f64(double %406, double 0x3C8C000000000000, double %1160)
  %1162 = tail call double @llvm.fmuladd.f64(double %410, double 0xBC8A29B726831D24, double %1161)
  %1163 = tail call double @llvm.fmuladd.f64(double %412, double 0x3C73CC8A99AF5453, double %1162)
  %1164 = tail call double @llvm.fmuladd.f64(double %414, double 0xBC56A09E667F3BCC, double %1163)
  %1165 = tail call double @llvm.fmuladd.f64(double %416, double 0xBC80F876CCDF6CD9, double %1164)
  %1166 = tail call double @llvm.fmuladd.f64(double %418, double 0xBC93CC8A99AF5452, double %1165)
  %1167 = tail call double @llvm.fmuladd.f64(double %420, double 0xBCA6A09E667F3BCC, double %1166)
  %1168 = tail call double @llvm.fmuladd.f64(double %422, double 0x3C76A09E667F3BCD, double %1167)
  %1169 = tail call double @llvm.fmuladd.f64(double %424, double 0x3C86A09E667F3BCC, double %1168)
  %1170 = tail call double @llvm.fmuladd.f64(double %426, double 0x3FD08C54FF101A10, double %1169)
  %1171 = tail call double @llvm.fmuladd.f64(double %428, double 0x4007001BD846D0B2, double %1170)
  %1172 = tail call double @llvm.fmuladd.f64(double %430, double 0x3FD0C7817D9C3137, double %1171)
  %1173 = tail call double @llvm.fmuladd.f64(double %432, double 0xBFB8DF388696F54E, double %1172)
  %1174 = tail call double @llvm.fmuladd.f64(double %434, double 0x3C7DB2CFE686FE7B, double %1173)
  %1175 = tail call double @llvm.fmuladd.f64(double %436, double 0x3C91AD7BC01366B7, double %1174)
  %1176 = tail call double @llvm.fmuladd.f64(double %438, double 0x3C56A09E667F3BCC, double %1175)
  %1177 = tail call double @llvm.fmuladd.f64(double %440, double 0xBC86A09E667F3BCC, double %1176)
  %gep10337 = getelementptr double, ptr %invariant.gep10336, i64 %indvars.iv
  store double %1177, ptr %gep10337, align 8, !tbaa !5
  %1178 = fmul double %379, 0xBCA3800000000002
  %1179 = tail call double @llvm.fmuladd.f64(double %378, double 0x3C89000000000000, double %1178)
  %1180 = tail call double @llvm.fmuladd.f64(double %382, double 0x3C60000000000000, double %1179)
  %1181 = tail call double @llvm.fmuladd.f64(double %384, double 0x3C88000000000000, double %1180)
  %1182 = tail call double @llvm.fmuladd.f64(double %386, double 0x3CA5FFFFFFFFFFFF, double %1181)
  %1183 = tail call double @llvm.fmuladd.f64(double %388, double 0x3CA0000000000002, double %1182)
  %1184 = tail call double @llvm.fmuladd.f64(double %390, double 0x3C98000000000000, double %1183)
  %1185 = tail call double @llvm.fmuladd.f64(double %392, double 0xBC90000000000000, double %1184)
  %1186 = tail call double @llvm.fmuladd.f64(double %394, double 0xBFD7671404765126, double %1185)
  %1187 = tail call double @llvm.fmuladd.f64(double %396, double 0xC01043858A1F5996, double %1186)
  %1188 = tail call double @llvm.fmuladd.f64(double %398, double 0xBFD7BAC3393ADDBB, double %1187)
  %1189 = tail call double @llvm.fmuladd.f64(double %400, double 0x3FC1964E14FA3C8D, double %1188)
  %1190 = tail call double @llvm.fmuladd.f64(double %402, double 0x3C6C000000000000, double %1189)
  %1191 = tail call double @llvm.fmuladd.f64(double %404, double 0xBCBE400000000000, double %1190)
  %1192 = tail call double @llvm.fmuladd.f64(double %406, double 0x3C8C000000000000, double %1191)
  %1193 = tail call double @llvm.fmuladd.f64(double %408, double 0x3C90000000000000, double %1192)
  %1194 = tail call double @llvm.fmuladd.f64(double %410, double 0xBC84818F8CE34E32, double %1193)
  %1195 = tail call double @llvm.fmuladd.f64(double %412, double 0x3C73CC8A99AF5453, double %1194)
  %1196 = tail call double @llvm.fmuladd.f64(double %414, double 0x3C83CC8A99AF5451, double %1195)
  %1197 = tail call double @llvm.fmuladd.f64(double %416, double 0xBC76A09E667F3BCD, double %1196)
  %1198 = tail call double @llvm.fmuladd.f64(double %418, double 0xBC8C48C6001F0AC0, double %1197)
  %1199 = tail call double @llvm.fmuladd.f64(double %420, double 0xBC96A09E667F3BCC, double %1198)
  %1200 = tail call double @llvm.fmuladd.f64(double %422, double 0xBCA974B2334F2346, double %1199)
  %1201 = tail call double @llvm.fmuladd.f64(double %424, double 0xBC96A09E667F3BCC, double %1200)
  %1202 = tail call double @llvm.fmuladd.f64(double %426, double 0xBF9102DA00B18A68, double %1201)
  %1203 = tail call double @llvm.fmuladd.f64(double %428, double 0x3FCD5953692F6EA6, double %1202)
  %1204 = tail call double @llvm.fmuladd.f64(double %430, double 0x3FE3C4545BCF030C, double %1203)
  %1205 = tail call double @llvm.fmuladd.f64(double %432, double 0x3FD6A4D32EB1F710, double %1204)
  %1206 = tail call double @llvm.fmuladd.f64(double %434, double 0x3C726280B3476096, double %1205)
  %1207 = tail call double @llvm.fmuladd.f64(double %436, double 0x3C46A09E667F3BCB, double %1206)
  %1208 = tail call double @llvm.fmuladd.f64(double %438, double 0xBC9536948017480F, double %1207)
  %1209 = tail call double @llvm.fmuladd.f64(double %440, double 0xBC86A09E667F3BCC, double %1208)
  %gep10339 = getelementptr double, ptr %invariant.gep10338, i64 %indvars.iv
  store double %1209, ptr %gep10339, align 8, !tbaa !5
  %1210 = tail call double @llvm.fmuladd.f64(double %378, double 0x3C9A600000000000, double %752)
  %1211 = tail call double @llvm.fmuladd.f64(double %382, double 0xBC84000000000000, double %1210)
  %1212 = tail call double @llvm.fmuladd.f64(double %384, double 0x3C90000000000000, double %1211)
  %1213 = tail call double @llvm.fmuladd.f64(double %386, double 0x3C74FFFFFFFFFFFF, double %1212)
  %1214 = tail call double @llvm.fmuladd.f64(double %388, double 0xBCA4800000000001, double %1213)
  %1215 = tail call double @llvm.fmuladd.f64(double %390, double 0x3CA9FFFFFFFFFFFE, double %1214)
  %1216 = tail call double @llvm.fmuladd.f64(double %392, double 0x3C88000000000000, double %1215)
  %1217 = tail call double @llvm.fmuladd.f64(double %394, double 0x3FF043C98657E812, double %1216)
  %1218 = tail call double @llvm.fmuladd.f64(double %396, double 0x3FEFAD7976B5DE1F, double %1217)
  %1219 = tail call double @llvm.fmuladd.f64(double %398, double 0xBFB4C23AD63BEF8D, double %1218)
  %1220 = tail call double @llvm.fmuladd.f64(double %400, double 0xBFAC37F3CCE9FD36, double %1219)
  %1221 = tail call double @llvm.fmuladd.f64(double %402, double 0x3C76800000000000, double %1220)
  %1222 = tail call double @llvm.fmuladd.f64(double %404, double 0x3C90000000000000, double %1221)
  %1223 = tail call double @llvm.fmuladd.f64(double %406, double 0x3C9A000000000000, double %1222)
  %1224 = tail call double @llvm.fmuladd.f64(double %408, double 0xBC88000000000000, double %1223)
  %1225 = tail call double @llvm.fmuladd.f64(double %410, double 0x3C759116F9B144FE, double %1224)
  %1226 = tail call double @llvm.fmuladd.f64(double %412, double 0x3C70F876CCDF6CD9, double %1225)
  %1227 = tail call double @llvm.fmuladd.f64(double %414, double 0xBC73CC8A99AF5453, double %1226)
  %1228 = tail call double @llvm.fmuladd.f64(double %416, double 0xBC8C48C6001F0AC0, double %1227)
  %1229 = tail call double @llvm.fmuladd.f64(double %418, double 0xBCA16999E4DFE905, double %1228)
  %1230 = tail call double @llvm.fmuladd.f64(double %420, double 0xBCA91A2FB9B52657, double %1229)
  %1231 = tail call double @llvm.fmuladd.f64(double %422, double 0xBC9974B2334F2346, double %1230)
  %1232 = tail call double @llvm.fmuladd.f64(double %424, double 0x3C80F876CCDF6CD9, double %1231)
  %1233 = tail call double @llvm.fmuladd.f64(double %426, double 0x3FD6A4D32EB1F71D, double %1232)
  %1234 = tail call double @llvm.fmuladd.f64(double %428, double 0x3FE3C4545BCF030E, double %1233)
  %1235 = tail call double @llvm.fmuladd.f64(double %430, double 0x3FCD5953692F6EA6, double %1234)
  %1236 = tail call double @llvm.fmuladd.f64(double %432, double 0xBF9102DA00B18A34, double %1235)
  %1237 = tail call double @llvm.fmuladd.f64(double %434, double 0xBCA0D685DF45AE00, double %1236)
  %1238 = tail call double @llvm.fmuladd.f64(double %436, double 0x3C56A09E667F3BCC, double %1237)
  %1239 = tail call double @llvm.fmuladd.f64(double %438, double 0xBC46A09E667F3BCB, double %1238)
  %1240 = tail call double @llvm.fmuladd.f64(double %440, double 0x3C76A09E667F3BCD, double %1239)
  %gep10341 = getelementptr double, ptr %invariant.gep10340, i64 %indvars.iv
  store double %1240, ptr %gep10341, align 8, !tbaa !5
  %1241 = fmul double %379, 0xBC84000000000000
  %1242 = tail call double @llvm.fmuladd.f64(double %378, double 0xBCA22FFFFFFFFFFF, double %1241)
  %1243 = tail call double @llvm.fmuladd.f64(double %382, double 0x3C8E000000000000, double %1242)
  %1244 = tail call double @llvm.fmuladd.f64(double %384, double 0x3C94000000000000, double %1243)
  %1245 = tail call double @llvm.fmuladd.f64(double %386, double 0x3CB3900000000000, double %1244)
  %1246 = tail call double @llvm.fmuladd.f64(double %388, double 0x3CAD7FFFFFFFFFFE, double %1245)
  %1247 = tail call double @llvm.fmuladd.f64(double %390, double 0x3CB2000000000000, double %1246)
  %1248 = tail call double @llvm.fmuladd.f64(double %392, double 0xBC88000000000000, double %1247)
  %1249 = tail call double @llvm.fmuladd.f64(double %394, double 0xBFE002F9665DF3E9, double %1248)
  %1250 = tail call double @llvm.fmuladd.f64(double %396, double 0xBFEBF462FB348EF9, double %1249)
  %1251 = tail call double @llvm.fmuladd.f64(double %398, double 0xBFD4C0B9406BCBCC, double %1250)
  %1252 = tail call double @llvm.fmuladd.f64(double %400, double 0x3F980EB0AE1D4853, double %1251)
  %1253 = tail call double @llvm.fmuladd.f64(double %402, double 0x3CA22FFFFFFFFFFF, double %1252)
  %1254 = tail call double @llvm.fmuladd.f64(double %404, double 0xBC8C000000000000, double %1253)
  %1255 = tail call double @llvm.fmuladd.f64(double %406, double 0x3C82000000000000, double %1254)
  %1256 = tail call double @llvm.fmuladd.f64(double %408, double 0xBC88000000000000, double %1255)
  %1257 = tail call double @llvm.fmuladd.f64(double %410, double 0x3C6B93C10CEB10E3, double %1256)
  %1258 = tail call double @llvm.fmuladd.f64(double %412, double 0x3C8C48C6001F0AC0, double %1257)
  %1259 = tail call double @llvm.fmuladd.f64(double %414, double 0xBC66A09E667F3BCC, double %1258)
  %1260 = tail call double @llvm.fmuladd.f64(double %416, double 0xBC8C48C6001F0AC0, double %1259)
  %1261 = tail call double @llvm.fmuladd.f64(double %418, double 0xBC9125B809AC6B51, double %1260)
  %1262 = tail call double @llvm.fmuladd.f64(double %420, double 0x3C826280B3476096, double %1261)
  %1263 = tail call double @llvm.fmuladd.f64(double %422, double 0xBC90F876CCDF6CD9, double %1262)
  %1264 = tail call double @llvm.fmuladd.f64(double %424, double 0xBC80F876CCDF6CD9, double %1263)
  %1265 = tail call double @llvm.fmuladd.f64(double %426, double 0xBFE7007BFD8FD85D, double %1264)
  %1266 = tail call double @llvm.fmuladd.f64(double %428, double 0xBFE66643AEED3708, double %1265)
  %1267 = tail call double @llvm.fmuladd.f64(double %430, double 0x3FAD5B74B5F10E9B, double %1266)
  %1268 = tail call double @llvm.fmuladd.f64(double %432, double 0x3FA3F41B0E87BFB6, double %1267)
  %1269 = tail call double @llvm.fmuladd.f64(double %434, double 0x3C7F775C4688EF29, double %1268)
  %1270 = tail call double @llvm.fmuladd.f64(double %436, double 0xBC8C48C6001F0AC0, double %1269)
  %1271 = tail call double @llvm.fmuladd.f64(double %438, double 0xBC80F876CCDF6CD9, double %1270)
  %1272 = tail call double @llvm.fmuladd.f64(double %440, double 0x3C76A09E667F3BCD, double %1271)
  %gep10343 = getelementptr double, ptr %invariant.gep10342, i64 %indvars.iv
  store double %1272, ptr %gep10343, align 8, !tbaa !5
  %1273 = tail call double @llvm.fmuladd.f64(double %378, double 0x3C7E000000000001, double %752)
  %1274 = tail call double @llvm.fmuladd.f64(double %382, double 0xBC9C000000000000, double %1273)
  %1275 = tail call double @llvm.fmuladd.f64(double %384, double 0xBC7FFFFFFFFFFFFF, double %1274)
  %1276 = tail call double @llvm.fmuladd.f64(double %386, double 0xBC92000000000000, double %1275)
  %1277 = tail call double @llvm.fmuladd.f64(double %388, double 0x3C90000000000000, double %1276)
  %1278 = tail call double @llvm.fmuladd.f64(double %390, double 0x3C98000000000000, double %1277)
  %1279 = tail call double @llvm.fmuladd.f64(double %392, double 0x3C90000000000000, double %1278)
  %1280 = tail call double @llvm.fmuladd.f64(double %394, double 0x3FC1964E14FA3C8D, double %1279)
  %1281 = tail call double @llvm.fmuladd.f64(double %396, double 0xBFD7BAC3393ADDAC, double %1280)
  %1282 = tail call double @llvm.fmuladd.f64(double %398, double 0xC01043858A1F5994, double %1281)
  %1283 = tail call double @llvm.fmuladd.f64(double %400, double 0xBFD7671404765114, double %1282)
  %1284 = tail call double @llvm.fmuladd.f64(double %402, double 0x3C98800000000000, double %1283)
  %1285 = tail call double @llvm.fmuladd.f64(double %404, double 0xBC98000000000000, double %1284)
  %1286 = tail call double @llvm.fmuladd.f64(double %406, double 0xBCA2000000000000, double %1285)
  %1287 = tail call double @llvm.fmuladd.f64(double %408, double 0xBC90000000000000, double %1286)
  %1288 = tail call double @llvm.fmuladd.f64(double %410, double 0x3C7DB2CFE686FE7B, double %1287)
  %1289 = tail call double @llvm.fmuladd.f64(double %412, double 0xBC76A09E667F3BCD, double %1288)
  %1290 = tail call double @llvm.fmuladd.f64(double %414, double 0xBC90F876CCDF6CD9, double %1289)
  %1291 = tail call double @llvm.fmuladd.f64(double %418, double 0xBC70F876CCDF6CD9, double %1290)
  %1292 = tail call double @llvm.fmuladd.f64(double %420, double 0xBC96A09E667F3BCC, double %1291)
  %1293 = tail call double @llvm.fmuladd.f64(double %422, double 0x3CA3CC8A99AF5452, double %1292)
  %1294 = tail call double @llvm.fmuladd.f64(double %424, double 0x3C86A09E667F3BCC, double %1293)
  %1295 = tail call double @llvm.fmuladd.f64(double %426, double 0x3FA3F41B0E87BFE9, double %1294)
  %1296 = tail call double @llvm.fmuladd.f64(double %428, double 0x3FAD5B74B5F10E92, double %1295)
  %1297 = tail call double @llvm.fmuladd.f64(double %430, double 0xBFE66643AEED36FA, double %1296)
  %1298 = tail call double @llvm.fmuladd.f64(double %432, double 0xBFE7007BFD8FD85D, double %1297)
  %1299 = tail call double @llvm.fmuladd.f64(double %434, double 0x3C7ADEBC19B71701, double %1298)
  %1300 = tail call double @llvm.fmuladd.f64(double %436, double 0xBC90F876CCDF6CD9, double %1299)
  %1301 = tail call double @llvm.fmuladd.f64(double %438, double 0x3C9C48C6001F0ABF, double %1300)
  %gep10345 = getelementptr double, ptr %invariant.gep10344, i64 %indvars.iv
  store double %1301, ptr %gep10345, align 8, !tbaa !5
  %1302 = fmul double %379, 0x3C7FFFFFFFFFFFFF
  %1303 = tail call double @llvm.fmuladd.f64(double %378, double 0xBC85000000000000, double %1302)
  %1304 = tail call double @llvm.fmuladd.f64(double %382, double 0x3C98000000000000, double %1303)
  %1305 = tail call double @llvm.fmuladd.f64(double %386, double 0x3C78000000000002, double %1304)
  %1306 = tail call double @llvm.fmuladd.f64(double %388, double 0x3CA0000000000002, double %1305)
  %1307 = tail call double @llvm.fmuladd.f64(double %390, double 0xBCAC000000000000, double %1306)
  %1308 = tail call double @llvm.fmuladd.f64(double %392, double 0xBC90000000000000, double %1307)
  %1309 = tail call double @llvm.fmuladd.f64(double %394, double 0xBFAC37F3CCE9FD85, double %1308)
  %1310 = tail call double @llvm.fmuladd.f64(double %396, double 0xBFB4C23AD63BEF7C, double %1309)
  %1311 = tail call double @llvm.fmuladd.f64(double %398, double 0x3FEFAD7976B5DE11, double %1310)
  %1312 = tail call double @llvm.fmuladd.f64(double %400, double 0x3FF043C98657E812, double %1311)
  %1313 = tail call double @llvm.fmuladd.f64(double %402, double 0xBC82FFFFFFFFFFFF, double %1312)
  %1314 = tail call double @llvm.fmuladd.f64(double %404, double 0x3C98000000000000, double %1313)
  %1315 = tail call double @llvm.fmuladd.f64(double %406, double 0xBCA4000000000001, double %1314)
  %1316 = tail call double @llvm.fmuladd.f64(double %410, double 0xBC75369480174810, double %1315)
  %1317 = tail call double @llvm.fmuladd.f64(double %412, double 0x3C86A09E667F3BCC, double %1316)
  %1318 = tail call double @llvm.fmuladd.f64(double %414, double 0x3C93CC8A99AF5452, double %1317)
  %1319 = tail call double @llvm.fmuladd.f64(double %416, double 0x3C76A09E667F3BCD, double %1318)
  %1320 = tail call double @llvm.fmuladd.f64(double %418, double 0x3C8974B2334F2346, double %1319)
  %1321 = tail call double @llvm.fmuladd.f64(double %420, double 0xBC86A09E667F3BCC, double %1320)
  %1322 = tail call double @llvm.fmuladd.f64(double %422, double 0xBC90F876CCDF6CD9, double %1321)
  %1323 = tail call double @llvm.fmuladd.f64(double %424, double 0xBC86A09E667F3BCC, double %1322)
  %1324 = tail call double @llvm.fmuladd.f64(double %426, double 0xBFB8DF388696F554, double %1323)
  %1325 = tail call double @llvm.fmuladd.f64(double %428, double 0x3FD0C7817D9C3121, double %1324)
  %1326 = tail call double @llvm.fmuladd.f64(double %430, double 0x4007001BD846D0AE, double %1325)
  %1327 = tail call double @llvm.fmuladd.f64(double %432, double 0x3FD08C54FF1019FC, double %1326)
  %1328 = tail call double @llvm.fmuladd.f64(double %434, double 0xBC9152F9467969C8, double %1327)
  %1329 = tail call double @llvm.fmuladd.f64(double %436, double 0x3C90F876CCDF6CD9, double %1328)
  %1330 = tail call double @llvm.fmuladd.f64(double %438, double 0x3C9974B2334F2346, double %1329)
  %1331 = tail call double @llvm.fmuladd.f64(double %440, double 0x3C86A09E667F3BCC, double %1330)
  %gep10347 = getelementptr double, ptr %invariant.gep10346, i64 %indvars.iv
  store double %1331, ptr %gep10347, align 8, !tbaa !5
  %1332 = fmul double %379, 0x3CA7000000000002
  %1333 = tail call double @llvm.fmuladd.f64(double %378, double 0xBC9D3FFFFFFFFFFF, double %1332)
  %1334 = tail call double @llvm.fmuladd.f64(double %382, double 0x3CA9FFFFFFFFFFFE, double %1333)
  %1335 = tail call double @llvm.fmuladd.f64(double %384, double 0xBC60000000000000, double %1334)
  %1336 = tail call double @llvm.fmuladd.f64(double %386, double 0x3C7E000000000001, double %1335)
  %1337 = tail call double @llvm.fmuladd.f64(double %388, double 0x3C94000000000000, double %1336)
  %1338 = tail call double @llvm.fmuladd.f64(double %390, double 0x3C94000000000000, double %1337)
  %1339 = tail call double @llvm.fmuladd.f64(double %392, double 0x3CA0000000000002, double %1338)
  %1340 = tail call double @llvm.fmuladd.f64(double %394, double 0x3C89000000000000, double %1339)
  %1341 = tail call double @llvm.fmuladd.f64(double %396, double 0xBC94000000000000, double %1340)
  %1342 = tail call double @llvm.fmuladd.f64(double %398, double 0x3C9C000000000000, double %1341)
  %1343 = tail call double @llvm.fmuladd.f64(double %400, double 0x3C90000000000000, double %1342)
  %1344 = tail call double @llvm.fmuladd.f64(double %402, double 0x3FA789B66AF4F458, double %1343)
  %1345 = tail call double @llvm.fmuladd.f64(double %404, double 0x3FEC2894019C8AD0, double %1344)
  %1346 = tail call double @llvm.fmuladd.f64(double %406, double 0x3FEC2894019C8AC0, double %1345)
  %1347 = tail call double @llvm.fmuladd.f64(double %408, double 0x3FA789B66AF4F551, double %1346)
  %1348 = tail call double @llvm.fmuladd.f64(double %410, double 0x3C7FD1DEC022EC17, double %1347)
  %1349 = tail call double @llvm.fmuladd.f64(double %412, double 0xBCA6A09E667F3BCC, double %1348)
  %1350 = tail call double @llvm.fmuladd.f64(double %414, double 0xBC76A09E667F3BCD, double %1349)
  %1351 = tail call double @llvm.fmuladd.f64(double %416, double 0x3C86A09E667F3BCC, double %1350)
  %1352 = tail call double @llvm.fmuladd.f64(double %418, double 0xBC81AD7BC01366B8, double %1351)
  %1353 = tail call double @llvm.fmuladd.f64(double %420, double 0xBC93CC8A99AF5452, double %1352)
  %1354 = tail call double @llvm.fmuladd.f64(double %422, double 0xBC93CC8A99AF5452, double %1353)
  %1355 = tail call double @llvm.fmuladd.f64(double %424, double 0xBC96A09E667F3BCC, double %1354)
  %1356 = tail call double @llvm.fmuladd.f64(double %426, double 0xBC85EB99734B41EF, double %1355)
  %1357 = tail call double @llvm.fmuladd.f64(double %428, double 0xBCA80AA84CE72F89, double %1356)
  %1358 = tail call double @llvm.fmuladd.f64(double %430, double 0xBC66A09E667F3BCC, double %1357)
  %1359 = tail call double @llvm.fmuladd.f64(double %432, double 0xBC86A09E667F3BCC, double %1358)
  %1360 = tail call double @llvm.fmuladd.f64(double %434, double 0xBFA0A4D27CF86DC6, double %1359)
  %1361 = tail call double @llvm.fmuladd.f64(double %436, double 0xBFE3E93C07AFC380, double %1360)
  %1362 = tail call double @llvm.fmuladd.f64(double %438, double 0xBFE3E93C07AFC37E, double %1361)
  %1363 = tail call double @llvm.fmuladd.f64(double %440, double 0xBFA0A4D27CF86DAF, double %1362)
  %gep10349 = getelementptr double, ptr %invariant.gep10348, i64 %indvars.iv
  store double %1363, ptr %gep10349, align 8, !tbaa !5
  %1364 = tail call double @llvm.fmuladd.f64(double %378, double 0xBC89FFFFFFFFFFFF, double %1302)
  %1365 = tail call double @llvm.fmuladd.f64(double %382, double 0x3C90000000000000, double %1364)
  %1366 = tail call double @llvm.fmuladd.f64(double %384, double 0xBCC8000000000000, double %1365)
  %1367 = tail call double @llvm.fmuladd.f64(double %386, double 0xBC70000000000001, double %1366)
  %1368 = tail call double @llvm.fmuladd.f64(double %388, double 0xBC90000000000000, double %1367)
  %1369 = tail call double @llvm.fmuladd.f64(double %390, double 0x3C90000000000000, double %1368)
  %1370 = tail call double @llvm.fmuladd.f64(double %392, double 0xBCA0000000000002, double %1369)
  %1371 = tail call double @llvm.fmuladd.f64(double %394, double 0xBC7FFFFFFFFFFFFF, double %1370)
  %1372 = tail call double @llvm.fmuladd.f64(double %396, double 0x3C7FFFFFFFFFFFFF, double %1371)
  %1373 = tail call double @llvm.fmuladd.f64(double %398, double 0xBCB0000000000000, double %1372)
  %1374 = tail call double @llvm.fmuladd.f64(double %400, double 0xBCC4000000000000, double %1373)
  %1375 = tail call double @llvm.fmuladd.f64(double %402, double 0xBFACD49071EC5F52, double %1374)
  %1376 = tail call double @llvm.fmuladd.f64(double %404, double 0x3FCEFDC8894D082A, double %1375)
  %1377 = tail call double @llvm.fmuladd.f64(double %406, double 0xBFDD2EB9CCB3BDE5, double %1376)
  %1378 = tail call double @llvm.fmuladd.f64(double %408, double 0xC01569E165D79415, double %1377)
  %1379 = tail call double @llvm.fmuladd.f64(double %410, double 0x3C91AD7BC01366B7, double %1378)
  %1380 = tail call double @llvm.fmuladd.f64(double %412, double 0xBC76A09E667F3BCD, double %1379)
  %1381 = tail call double @llvm.fmuladd.f64(double %414, double 0x3C9C48C6001F0ABF, double %1380)
  %1382 = tail call double @llvm.fmuladd.f64(double %416, double 0x3CC0F876CCDF6CD9, double %1381)
  %1383 = tail call double @llvm.fmuladd.f64(double %420, double 0x3C90F876CCDF6CD9, double %1382)
  %1384 = tail call double @llvm.fmuladd.f64(double %422, double 0xBC86A09E667F3BCC, double %1383)
  %1385 = tail call double @llvm.fmuladd.f64(double %424, double 0xBC96A09E667F3BCC, double %1384)
  %1386 = tail call double @llvm.fmuladd.f64(double %426, double 0x3C66A09E667F3BCC, double %1385)
  %1387 = tail call double @llvm.fmuladd.f64(double %428, double 0x3C76A09E667F3BCD, double %1386)
  %1388 = tail call double @llvm.fmuladd.f64(double %430, double 0x3CA0F876CCDF6CD8, double %1387)
  %1389 = tail call double @llvm.fmuladd.f64(double %432, double 0xBC96A09E667F3BCC, double %1388)
  %1390 = tail call double @llvm.fmuladd.f64(double %434, double 0x3FA462D8D66D7FC4, double %1389)
  %1391 = tail call double @llvm.fmuladd.f64(double %436, double 0xBFC5EA083165C4F6, double %1390)
  %1392 = tail call double @llvm.fmuladd.f64(double %438, double 0x3FD4A299D1E9700E, double %1391)
  %1393 = tail call double @llvm.fmuladd.f64(double %440, double 0x400E488CB8C1EA74, double %1392)
  %gep10351 = getelementptr double, ptr %invariant.gep10350, i64 %indvars.iv
  store double %1393, ptr %gep10351, align 8, !tbaa !5
  %1394 = fmul double %379, 0x3CA2BFFFFFFFFFFF
  %1395 = tail call double @llvm.fmuladd.f64(double %378, double 0x3CA7800000000001, double %1394)
  %1396 = tail call double @llvm.fmuladd.f64(double %382, double 0x3C91000000000000, double %1395)
  %1397 = tail call double @llvm.fmuladd.f64(double %384, double 0x3CA5FFFFFFFFFFFF, double %1396)
  %1398 = tail call double @llvm.fmuladd.f64(double %386, double 0x3CB91FFFFFFFFFFF, double %1397)
  %1399 = tail call double @llvm.fmuladd.f64(double %388, double 0x3CAE000000000002, double %1398)
  %1400 = tail call double @llvm.fmuladd.f64(double %390, double 0xBC70000000000001, double %1399)
  %1401 = tail call double @llvm.fmuladd.f64(double %392, double 0xBC7FFFFFFFFFFFFF, double %1400)
  %1402 = tail call double @llvm.fmuladd.f64(double %394, double 0xBC71FFFFFFFFFFFF, double %1401)
  %1403 = tail call double @llvm.fmuladd.f64(double %396, double 0x3CB1000000000001, double %1402)
  %1404 = tail call double @llvm.fmuladd.f64(double %398, double 0x3C70000000000001, double %1403)
  %1405 = tail call double @llvm.fmuladd.f64(double %400, double 0xBC98000000000000, double %1404)
  %1406 = tail call double @llvm.fmuladd.f64(double %402, double 0x3FD6F2A1D7A49290, double %1405)
  %1407 = tail call double @llvm.fmuladd.f64(double %404, double 0x3FEAEBF44A8E7A7E, double %1406)
  %1408 = tail call double @llvm.fmuladd.f64(double %406, double 0x3FEAEBF44A8E7A78, double %1407)
  %1409 = tail call double @llvm.fmuladd.f64(double %408, double 0x3FD6F2A1D7A492C1, double %1408)
  %1410 = tail call double @llvm.fmuladd.f64(double %410, double 0x3CC689FDC818BC8F, double %1409)
  %1411 = tail call double @llvm.fmuladd.f64(double %412, double 0x3CB16999E4DFE903, double %1410)
  %1412 = tail call double @llvm.fmuladd.f64(double %414, double 0xBC880AA84CE72F89, double %1411)
  %1413 = tail call double @llvm.fmuladd.f64(double %416, double 0xBC80F876CCDF6CD9, double %1412)
  %1414 = tail call double @llvm.fmuladd.f64(double %418, double 0xBCAF4A1B09BBF0AE, double %1413)
  %1415 = tail call double @llvm.fmuladd.f64(double %420, double 0x3CADB2CFE686FE7D, double %1414)
  %1416 = tail call double @llvm.fmuladd.f64(double %422, double 0xBC80F876CCDF6CD9, double %1415)
  %1417 = tail call double @llvm.fmuladd.f64(double %424, double 0x3C76A09E667F3BCD, double %1416)
  %1418 = tail call double @llvm.fmuladd.f64(double %426, double 0x3C9152F9467969C8, double %1417)
  %1419 = tail call double @llvm.fmuladd.f64(double %428, double 0xBCADB2CFE686FE7D, double %1418)
  %1420 = tail call double @llvm.fmuladd.f64(double %430, double 0xBCA26280B3476095, double %1419)
  %1421 = tail call double @llvm.fmuladd.f64(double %432, double 0x3C76A09E667F3BCD, double %1420)
  %1422 = tail call double @llvm.fmuladd.f64(double %434, double 0x400E488CB8C1EA66, double %1421)
  %1423 = tail call double @llvm.fmuladd.f64(double %436, double 0x3FD4A299D1E9700C, double %1422)
  %1424 = tail call double @llvm.fmuladd.f64(double %438, double 0xBFC5EA083165C4F9, double %1423)
  %1425 = tail call double @llvm.fmuladd.f64(double %440, double 0x3FA462D8D66D7F94, double %1424)
  %gep10353 = getelementptr double, ptr %invariant.gep10352, i64 %indvars.iv
  store double %1425, ptr %gep10353, align 8, !tbaa !5
  %1426 = fmul double %379, 0xBCA5400000000000
  %1427 = tail call double @llvm.fmuladd.f64(double %378, double 0xBCC2000000000000, double %1426)
  %1428 = tail call double @llvm.fmuladd.f64(double %382, double 0x3CAA800000000002, double %1427)
  %1429 = tail call double @llvm.fmuladd.f64(double %384, double 0x3CA9000000000000, double %1428)
  %1430 = tail call double @llvm.fmuladd.f64(double %386, double 0x3CA7400000000002, double %1429)
  %1431 = tail call double @llvm.fmuladd.f64(double %388, double 0xBC70000000000001, double %1430)
  %1432 = tail call double @llvm.fmuladd.f64(double %390, double 0x3CB7000000000000, double %1431)
  %1433 = tail call double @llvm.fmuladd.f64(double %392, double 0xBC7FFFFFFFFFFFFF, double %1432)
  %1434 = tail call double @llvm.fmuladd.f64(double %394, double 0x3C91800000000000, double %1433)
  %1435 = tail call double @llvm.fmuladd.f64(double %396, double 0x3C70000000000001, double %1434)
  %1436 = tail call double @llvm.fmuladd.f64(double %398, double 0x3CB9000000000000, double %1435)
  %1437 = tail call double @llvm.fmuladd.f64(double %400, double 0xBC7FFFFFFFFFFFFF, double %1436)
  %1438 = tail call double @llvm.fmuladd.f64(double %402, double 0xC01569E165D79412, double %1437)
  %1439 = tail call double @llvm.fmuladd.f64(double %404, double 0xBFDD2EB9CCB3BDE4, double %1438)
  %1440 = tail call double @llvm.fmuladd.f64(double %406, double 0x3FCEFDC8894D0822, double %1439)
  %1441 = tail call double @llvm.fmuladd.f64(double %408, double 0xBFACD49071EC5F0E, double %1440)
  %1442 = tail call double @llvm.fmuladd.f64(double %410, double 0xBC9F1CD9CCEEF236, double %1441)
  %1443 = tail call double @llvm.fmuladd.f64(double %412, double 0xBCA016309CDE7482, double %1442)
  %1444 = tail call double @llvm.fmuladd.f64(double %414, double 0x3C98BFAD401B2967, double %1443)
  %1445 = tail call double @llvm.fmuladd.f64(double %416, double 0xBC93CC8A99AF5452, double %1444)
  %1446 = tail call double @llvm.fmuladd.f64(double %418, double 0xBCB0B494F1ABEF27, double %1445)
  %1447 = tail call double @llvm.fmuladd.f64(double %420, double 0xBCA536948017480F, double %1446)
  %1448 = tail call double @llvm.fmuladd.f64(double %422, double 0x3CADB2CFE686FE7D, double %1447)
  %1449 = tail call double @llvm.fmuladd.f64(double %424, double 0x3C9C48C6001F0ABF, double %1448)
  %1450 = tail call double @llvm.fmuladd.f64(double %426, double 0x3C959116F9B144FE, double %1449)
  %1451 = tail call double @llvm.fmuladd.f64(double %428, double 0xBCA80AA84CE72F89, double %1450)
  %1452 = tail call double @llvm.fmuladd.f64(double %430, double 0xBC8C48C6001F0AC0, double %1451)
  %1453 = tail call double @llvm.fmuladd.f64(double %432, double 0x3C90F876CCDF6CD9, double %1452)
  %1454 = tail call double @llvm.fmuladd.f64(double %434, double 0xBFD039FE04F7163A, double %1453)
  %1455 = tail call double @llvm.fmuladd.f64(double %436, double 0xBFE30958FBF81242, double %1454)
  %1456 = tail call double @llvm.fmuladd.f64(double %438, double 0xBFE30958FBF81231, double %1455)
  %1457 = tail call double @llvm.fmuladd.f64(double %440, double 0xBFD039FE04F71632, double %1456)
  %gep10355 = getelementptr double, ptr %invariant.gep10354, i64 %indvars.iv
  store double %1457, ptr %gep10355, align 8, !tbaa !5
  %1458 = fmul double %379, 0xBC99000000000000
  %1459 = tail call double @llvm.fmuladd.f64(double %378, double 0x3C98400000000000, double %1458)
  %1460 = tail call double @llvm.fmuladd.f64(double %382, double 0xBCAE000000000002, double %1459)
  %1461 = tail call double @llvm.fmuladd.f64(double %384, double 0xBC9C000000000000, double %1460)
  %1462 = tail call double @llvm.fmuladd.f64(double %386, double 0x3C91800000000000, double %1461)
  %1463 = tail call double @llvm.fmuladd.f64(double %388, double 0x3CA7000000000002, double %1462)
  %1464 = tail call double @llvm.fmuladd.f64(double %390, double 0xBC7FFFFFFFFFFFFF, double %1463)
  %1465 = tail call double @llvm.fmuladd.f64(double %392, double 0xBCA0000000000002, double %1464)
  %1466 = tail call double @llvm.fmuladd.f64(double %394, double 0xBC99800000000000, double %1465)
  %1467 = tail call double @llvm.fmuladd.f64(double %396, double 0x3C60000000000000, double %1466)
  %1468 = tail call double @llvm.fmuladd.f64(double %398, double 0xBC98000000000000, double %1467)
  %1469 = tail call double @llvm.fmuladd.f64(double %402, double 0x3F980EB0AE1D48E6, double %1468)
  %1470 = tail call double @llvm.fmuladd.f64(double %404, double 0xBFD4C0B9406BCBDE, double %1469)
  %1471 = tail call double @llvm.fmuladd.f64(double %406, double 0xBFEBF462FB348EF6, double %1470)
  %1472 = tail call double @llvm.fmuladd.f64(double %408, double 0xBFE002F9665DF3D7, double %1471)
  %1473 = tail call double @llvm.fmuladd.f64(double %410, double 0x3C8BEE4386850DD0, double %1472)
  %1474 = tail call double @llvm.fmuladd.f64(double %412, double 0x3CC196DB21ACE77C, double %1473)
  %1475 = tail call double @llvm.fmuladd.f64(double %414, double 0x3C90F876CCDF6CD9, double %1474)
  %1476 = tail call double @llvm.fmuladd.f64(double %416, double 0xBC66A09E667F3BCC, double %1475)
  %1477 = tail call double @llvm.fmuladd.f64(double %418, double 0x3C6974B2334F2344, double %1476)
  %1478 = tail call double @llvm.fmuladd.f64(double %420, double 0xBCA5EB99734B41EE, double %1477)
  %1479 = tail call double @llvm.fmuladd.f64(double %422, double 0x3C9C48C6001F0ABF, double %1478)
  %1480 = tail call double @llvm.fmuladd.f64(double %424, double 0xBC76A09E667F3BCD, double %1479)
  %1481 = tail call double @llvm.fmuladd.f64(double %426, double 0xBC8CFDCAF353049C, double %1480)
  %1482 = tail call double @llvm.fmuladd.f64(double %428, double 0x3CB6461BECE53EDD, double %1481)
  %1483 = tail call double @llvm.fmuladd.f64(double %430, double 0x3CA3CC8A99AF5452, double %1482)
  %1484 = tail call double @llvm.fmuladd.f64(double %432, double 0x3C90F876CCDF6CD9, double %1483)
  %1485 = tail call double @llvm.fmuladd.f64(double %434, double 0x3FD08C54FF101A12, double %1484)
  %1486 = tail call double @llvm.fmuladd.f64(double %436, double 0x4007001BD846D0B0, double %1485)
  %1487 = tail call double @llvm.fmuladd.f64(double %438, double 0x3FD0C7817D9C3131, double %1486)
  %1488 = tail call double @llvm.fmuladd.f64(double %440, double 0xBFB8DF388696F54B, double %1487)
  %gep10357 = getelementptr double, ptr %invariant.gep10356, i64 %indvars.iv
  store double %1488, ptr %gep10357, align 8, !tbaa !5
  %1489 = fmul double %379, 0xBCC0600000000000
  %1490 = tail call double @llvm.fmuladd.f64(double %378, double 0xBC93C00000000000, double %1489)
  %1491 = tail call double @llvm.fmuladd.f64(double %382, double 0xBC7FFFFFFFFFFFFF, double %1490)
  %1492 = tail call double @llvm.fmuladd.f64(double %384, double 0xBC88000000000000, double %1491)
  %1493 = tail call double @llvm.fmuladd.f64(double %386, double 0x3C9F7FFFFFFFFFFC, double %1492)
  %1494 = tail call double @llvm.fmuladd.f64(double %388, double 0x3CA7000000000002, double %1493)
  %1495 = tail call double @llvm.fmuladd.f64(double %390, double 0xBC98000000000000, double %1494)
  %1496 = tail call double @llvm.fmuladd.f64(double %394, double 0x3CA8400000000000, double %1495)
  %1497 = tail call double @llvm.fmuladd.f64(double %396, double 0xBCC5C00000000000, double %1496)
  %1498 = tail call double @llvm.fmuladd.f64(double %398, double 0xBCA4000000000001, double %1497)
  %1499 = tail call double @llvm.fmuladd.f64(double %400, double 0xBC98000000000000, double %1498)
  %1500 = tail call double @llvm.fmuladd.f64(double %402, double 0xBFD7671404765127, double %1499)
  %1501 = tail call double @llvm.fmuladd.f64(double %404, double 0xC01043858A1F5994, double %1500)
  %1502 = tail call double @llvm.fmuladd.f64(double %406, double 0xBFD7BAC3393ADDB7, double %1501)
  %1503 = tail call double @llvm.fmuladd.f64(double %408, double 0x3FC1964E14FA3C89, double %1502)
  %1504 = tail call double @llvm.fmuladd.f64(double %410, double 0x3C53CC8A99AF5452, double %1503)
  %1505 = tail call double @llvm.fmuladd.f64(double %412, double 0x3C8536948017480E, double %1504)
  %1506 = tail call double @llvm.fmuladd.f64(double %414, double 0x3C9C48C6001F0ABF, double %1505)
  %1507 = tail call double @llvm.fmuladd.f64(double %416, double 0x3C93CC8A99AF5452, double %1506)
  %1508 = tail call double @llvm.fmuladd.f64(double %418, double 0xBC94DC12067D4B20, double %1507)
  %1509 = tail call double @llvm.fmuladd.f64(double %420, double 0xBC9536948017480F, double %1508)
  %1510 = tail call double @llvm.fmuladd.f64(double %422, double 0xBC76A09E667F3BCD, double %1509)
  %1511 = tail call double @llvm.fmuladd.f64(double %424, double 0x3C96A09E667F3BCC, double %1510)
  %1512 = tail call double @llvm.fmuladd.f64(double %426, double 0x3C6F1CD9CCEEF238, double %1511)
  %1513 = tail call double @llvm.fmuladd.f64(double %428, double 0x3C9ADEBC19B71702, double %1512)
  %1514 = tail call double @llvm.fmuladd.f64(double %430, double 0x3C76A09E667F3BCD, double %1513)
  %1515 = tail call double @llvm.fmuladd.f64(double %434, double 0xBF9102DA00B18A5A, double %1514)
  %1516 = tail call double @llvm.fmuladd.f64(double %436, double 0x3FCD5953692F6EA6, double %1515)
  %1517 = tail call double @llvm.fmuladd.f64(double %438, double 0x3FE3C4545BCF030B, double %1516)
  %1518 = tail call double @llvm.fmuladd.f64(double %440, double 0x3FD6A4D32EB1F70D, double %1517)
  %gep10359 = getelementptr double, ptr %invariant.gep10358, i64 %indvars.iv
  store double %1518, ptr %gep10359, align 8, !tbaa !5
  %1519 = fmul double %379, 0x3CA1200000000001
  %1520 = tail call double @llvm.fmuladd.f64(double %378, double 0x3CAD5FFFFFFFFFFF, double %1519)
  %1521 = tail call double @llvm.fmuladd.f64(double %382, double 0xBCA1000000000001, double %1520)
  %1522 = tail call double @llvm.fmuladd.f64(double %384, double 0xBC90000000000000, double %1521)
  %1523 = tail call double @llvm.fmuladd.f64(double %386, double 0xBCA4000000000001, double %1522)
  %1524 = tail call double @llvm.fmuladd.f64(double %388, double 0x3C82000000000000, double %1523)
  %1525 = tail call double @llvm.fmuladd.f64(double %390, double 0x3C94000000000000, double %1524)
  %1526 = tail call double @llvm.fmuladd.f64(double %392, double 0x3CA2000000000000, double %1525)
  %1527 = tail call double @llvm.fmuladd.f64(double %394, double 0x3CA4000000000001, double %1526)
  %1528 = tail call double @llvm.fmuladd.f64(double %396, double 0x3C97000000000000, double %1527)
  %1529 = tail call double @llvm.fmuladd.f64(double %398, double 0x3C94000000000000, double %1528)
  %1530 = tail call double @llvm.fmuladd.f64(double %400, double 0x3C88000000000000, double %1529)
  %1531 = tail call double @llvm.fmuladd.f64(double %402, double 0x3FF043C98657E80E, double %1530)
  %1532 = tail call double @llvm.fmuladd.f64(double %404, double 0x3FEFAD7976B5DE20, double %1531)
  %1533 = tail call double @llvm.fmuladd.f64(double %406, double 0xBFB4C23AD63BEF81, double %1532)
  %1534 = tail call double @llvm.fmuladd.f64(double %408, double 0xBFAC37F3CCE9FD3B, double %1533)
  %1535 = tail call double @llvm.fmuladd.f64(double %410, double 0x3C86461BECE53EDC, double %1534)
  %1536 = tail call double @llvm.fmuladd.f64(double %412, double 0x3CA196DB21ACE77D, double %1535)
  %1537 = tail call double @llvm.fmuladd.f64(double %414, double 0x3C9ADEBC19B71702, double %1536)
  %1538 = tail call double @llvm.fmuladd.f64(double %418, double 0xBC9C48C6001F0ABF, double %1537)
  %1539 = tail call double @llvm.fmuladd.f64(double %420, double 0xBC9FD1DEC022EC15, double %1538)
  %1540 = tail call double @llvm.fmuladd.f64(double %422, double 0x3C9C48C6001F0ABF, double %1539)
  %1541 = tail call double @llvm.fmuladd.f64(double %424, double 0xBC96A09E667F3BCC, double %1540)
  %1542 = tail call double @llvm.fmuladd.f64(double %426, double 0xBC76A09E667F3BCD, double %1541)
  %1543 = tail call double @llvm.fmuladd.f64(double %428, double 0x3CB344C6E34858EB, double %1542)
  %1544 = tail call double @llvm.fmuladd.f64(double %430, double 0x3C90F876CCDF6CD9, double %1543)
  %1545 = tail call double @llvm.fmuladd.f64(double %432, double 0x3C76A09E667F3BCD, double %1544)
  %1546 = tail call double @llvm.fmuladd.f64(double %434, double 0x3FD6A4D32EB1F718, double %1545)
  %1547 = tail call double @llvm.fmuladd.f64(double %436, double 0x3FE3C4545BCF030B, double %1546)
  %1548 = tail call double @llvm.fmuladd.f64(double %438, double 0x3FCD5953692F6EA3, double %1547)
  %1549 = tail call double @llvm.fmuladd.f64(double %440, double 0xBF9102DA00B18A2C, double %1548)
  %gep10361 = getelementptr double, ptr %invariant.gep10360, i64 %indvars.iv
  store double %1549, ptr %gep10361, align 8, !tbaa !5
  %1550 = fmul double %379, 0xBC5C000000000000
  %1551 = tail call double @llvm.fmuladd.f64(double %378, double 0xBCADDFFFFFFFFFFE, double %1550)
  %1552 = tail call double @llvm.fmuladd.f64(double %382, double 0xBCA1000000000001, double %1551)
  %1553 = tail call double @llvm.fmuladd.f64(double %386, double 0x3C9E7FFFFFFFFFFD, double %1552)
  %1554 = tail call double @llvm.fmuladd.f64(double %388, double 0x3CA67FFFFFFFFFFE, double %1553)
  %1555 = tail call double @llvm.fmuladd.f64(double %390, double 0xBCA0000000000002, double %1554)
  %1556 = tail call double @llvm.fmuladd.f64(double %392, double 0x3C9C000000000000, double %1555)
  %1557 = tail call double @llvm.fmuladd.f64(double %394, double 0x3C91800000000000, double %1556)
  %1558 = tail call double @llvm.fmuladd.f64(double %396, double 0xBCB3400000000000, double %1557)
  %1559 = tail call double @llvm.fmuladd.f64(double %400, double 0xBC70000000000001, double %1558)
  %1560 = tail call double @llvm.fmuladd.f64(double %402, double 0xBFE002F9665DF3E5, double %1559)
  %1561 = tail call double @llvm.fmuladd.f64(double %404, double 0xBFEBF462FB348EF2, double %1560)
  %1562 = tail call double @llvm.fmuladd.f64(double %406, double 0xBFD4C0B9406BCBCC, double %1561)
  %1563 = tail call double @llvm.fmuladd.f64(double %408, double 0x3F980EB0AE1D483F, double %1562)
  %1564 = tail call double @llvm.fmuladd.f64(double %410, double 0xBCA13C58A812EA8E, double %1563)
  %1565 = tail call double @llvm.fmuladd.f64(double %412, double 0xBCA6023A11B1C128, double %1564)
  %1566 = tail call double @llvm.fmuladd.f64(double %414, double 0xBC80F876CCDF6CD9, double %1565)
  %1567 = tail call double @llvm.fmuladd.f64(double %418, double 0x3CA344C6E34858EB, double %1566)
  %1568 = tail call double @llvm.fmuladd.f64(double %420, double 0x3C73CC8A99AF5453, double %1567)
  %1569 = tail call double @llvm.fmuladd.f64(double %422, double 0x3C76A09E667F3BCD, double %1568)
  %1570 = tail call double @llvm.fmuladd.f64(double %424, double 0xBCA0F876CCDF6CD8, double %1569)
  %1571 = tail call double @llvm.fmuladd.f64(double %426, double 0xBCA344C6E34858EB, double %1570)
  %1572 = tail call double @llvm.fmuladd.f64(double %428, double 0x3C91AD7BC01366B7, double %1571)
  %1573 = tail call double @llvm.fmuladd.f64(double %430, double 0xBC90F876CCDF6CD9, double %1572)
  %1574 = tail call double @llvm.fmuladd.f64(double %432, double 0x3C76A09E667F3BCD, double %1573)
  %1575 = tail call double @llvm.fmuladd.f64(double %434, double 0xBFE7007BFD8FD859, double %1574)
  %1576 = tail call double @llvm.fmuladd.f64(double %436, double 0xBFE66643AEED3706, double %1575)
  %1577 = tail call double @llvm.fmuladd.f64(double %438, double 0x3FAD5B74B5F10E94, double %1576)
  %1578 = tail call double @llvm.fmuladd.f64(double %440, double 0x3FA3F41B0E87BFBB, double %1577)
  %gep10363 = getelementptr double, ptr %invariant.gep10362, i64 %indvars.iv
  store double %1578, ptr %gep10363, align 8, !tbaa !5
  %1579 = fmul double %379, 0xBCA7000000000002
  %1580 = tail call double @llvm.fmuladd.f64(double %378, double 0x3C58000000000000, double %1579)
  %1581 = tail call double @llvm.fmuladd.f64(double %382, double 0xBCC3000000000000, double %1580)
  %1582 = tail call double @llvm.fmuladd.f64(double %384, double 0xBC98000000000000, double %1581)
  %1583 = tail call double @llvm.fmuladd.f64(double %386, double 0x3C74000000000000, double %1582)
  %1584 = tail call double @llvm.fmuladd.f64(double %388, double 0xBCA2000000000000, double %1583)
  %1585 = tail call double @llvm.fmuladd.f64(double %390, double 0xBCC3000000000000, double %1584)
  %1586 = tail call double @llvm.fmuladd.f64(double %392, double 0xBCA0000000000002, double %1585)
  %1587 = tail call double @llvm.fmuladd.f64(double %394, double 0x3C86000000000001, double %1586)
  %1588 = tail call double @llvm.fmuladd.f64(double %396, double 0xBC88000000000000, double %1587)
  %1589 = tail call double @llvm.fmuladd.f64(double %398, double 0xBCA4000000000001, double %1588)
  %1590 = tail call double @llvm.fmuladd.f64(double %400, double 0xBC90000000000000, double %1589)
  %1591 = tail call double @llvm.fmuladd.f64(double %402, double 0x3FC1964E14FA3C91, double %1590)
  %1592 = tail call double @llvm.fmuladd.f64(double %404, double 0xBFD7BAC3393ADDAB, double %1591)
  %1593 = tail call double @llvm.fmuladd.f64(double %406, double 0xC01043858A1F5991, double %1592)
  %1594 = tail call double @llvm.fmuladd.f64(double %408, double 0xBFD767140476510C, double %1593)
  %1595 = tail call double @llvm.fmuladd.f64(double %410, double 0x3C6F1CD9CCEEF238, double %1594)
  %1596 = tail call double @llvm.fmuladd.f64(double %412, double 0x3C8974B2334F2346, double %1595)
  %1597 = tail call double @llvm.fmuladd.f64(double %414, double 0xBCAADEBC19B71703, double %1596)
  %1598 = tail call double @llvm.fmuladd.f64(double %416, double 0x3C76A09E667F3BCD, double %1597)
  %1599 = tail call double @llvm.fmuladd.f64(double %418, double 0x3C60F876CCDF6CD9, double %1598)
  %1600 = tail call double @llvm.fmuladd.f64(double %420, double 0xBC8C48C6001F0AC0, double %1599)
  %1601 = tail call double @llvm.fmuladd.f64(double %422, double 0xBCA6A09E667F3BCC, double %1600)
  %1602 = tail call double @llvm.fmuladd.f64(double %424, double 0xBCA6A09E667F3BCC, double %1601)
  %1603 = tail call double @llvm.fmuladd.f64(double %426, double 0x3C826280B3476096, double %1602)
  %1604 = tail call double @llvm.fmuladd.f64(double %428, double 0x3C8C48C6001F0AC0, double %1603)
  %1605 = tail call double @llvm.fmuladd.f64(double %432, double 0x3C96A09E667F3BCC, double %1604)
  %1606 = tail call double @llvm.fmuladd.f64(double %434, double 0x3FA3F41B0E87BFEB, double %1605)
  %1607 = tail call double @llvm.fmuladd.f64(double %436, double 0x3FAD5B74B5F10E92, double %1606)
  %1608 = tail call double @llvm.fmuladd.f64(double %438, double 0xBFE66643AEED36FA, double %1607)
  %1609 = tail call double @llvm.fmuladd.f64(double %440, double 0xBFE7007BFD8FD85B, double %1608)
  %gep10365 = getelementptr double, ptr %invariant.gep10364, i64 %indvars.iv
  store double %1609, ptr %gep10365, align 8, !tbaa !5
  %1610 = fmul double %379, 0xBC92000000000000
  %1611 = tail call double @llvm.fmuladd.f64(double %378, double 0xBC76000000000001, double %1610)
  %1612 = tail call double @llvm.fmuladd.f64(double %382, double 0x3CB3000000000000, double %1611)
  %1613 = tail call double @llvm.fmuladd.f64(double %384, double 0xBC7FFFFFFFFFFFFF, double %1612)
  %1614 = tail call double @llvm.fmuladd.f64(double %386, double 0xBC67FFFFFFFFFFFE, double %1613)
  %1615 = tail call double @llvm.fmuladd.f64(double %388, double 0x3C94000000000000, double %1614)
  %1616 = tail call double @llvm.fmuladd.f64(double %390, double 0x3CB0000000000000, double %1615)
  %1617 = tail call double @llvm.fmuladd.f64(double %392, double 0x3CB0000000000000, double %1616)
  %1618 = tail call double @llvm.fmuladd.f64(double %394, double 0xBC89FFFFFFFFFFFF, double %1617)
  %1619 = tail call double @llvm.fmuladd.f64(double %396, double 0xBC94000000000000, double %1618)
  %1620 = tail call double @llvm.fmuladd.f64(double %400, double 0xBCA0000000000002, double %1619)
  %1621 = tail call double @llvm.fmuladd.f64(double %402, double 0xBFAC37F3CCE9FD85, double %1620)
  %1622 = tail call double @llvm.fmuladd.f64(double %404, double 0xBFB4C23AD63BEF7C, double %1621)
  %1623 = tail call double @llvm.fmuladd.f64(double %406, double 0x3FEFAD7976B5DE10, double %1622)
  %1624 = tail call double @llvm.fmuladd.f64(double %408, double 0x3FF043C98657E80E, double %1623)
  %1625 = tail call double @llvm.fmuladd.f64(double %410, double 0xBC50F876CCDF6CD8, double %1624)
  %1626 = tail call double @llvm.fmuladd.f64(double %412, double 0x3CA04371D9AB72FA, double %1625)
  %1627 = tail call double @llvm.fmuladd.f64(double %414, double 0x3CBADEBC19B71701, double %1626)
  %1628 = tail call double @llvm.fmuladd.f64(double %416, double 0x3C90F876CCDF6CD9, double %1627)
  %1629 = tail call double @llvm.fmuladd.f64(double %418, double 0xBC6C48C6001F0ABE, double %1628)
  %1630 = tail call double @llvm.fmuladd.f64(double %420, double 0x3C9974B2334F2346, double %1629)
  %1631 = tail call double @llvm.fmuladd.f64(double %422, double 0x3CBADEBC19B71701, double %1630)
  %1632 = tail call double @llvm.fmuladd.f64(double %424, double 0x3C96A09E667F3BCC, double %1631)
  %1633 = tail call double @llvm.fmuladd.f64(double %426, double 0xBC7F1CD9CCEEF238, double %1632)
  %1634 = tail call double @llvm.fmuladd.f64(double %428, double 0x3C80F876CCDF6CD9, double %1633)
  %1635 = tail call double @llvm.fmuladd.f64(double %430, double 0x3C9C48C6001F0ABF, double %1634)
  %1636 = tail call double @llvm.fmuladd.f64(double %432, double 0x3C86A09E667F3BCC, double %1635)
  %1637 = tail call double @llvm.fmuladd.f64(double %434, double 0xBFB8DF388696F557, double %1636)
  %1638 = tail call double @llvm.fmuladd.f64(double %436, double 0x3FD0C7817D9C3121, double %1637)
  %1639 = tail call double @llvm.fmuladd.f64(double %438, double 0x4007001BD846D0A7, double %1638)
  %1640 = tail call double @llvm.fmuladd.f64(double %440, double 0x3FD08C54FF1019F7, double %1639)
  %gep10367 = getelementptr double, ptr %invariant.gep10366, i64 %indvars.iv
  store double %1640, ptr %gep10367, align 8, !tbaa !5
  %gep10369 = getelementptr double, ptr %invariant.gep10368, i64 %indvars.iv
  %1641 = load double, ptr %gep10369, align 8, !tbaa !5
  %gep10371 = getelementptr double, ptr %invariant.gep10370, i64 %indvars.iv
  %1642 = load double, ptr %gep10371, align 8, !tbaa !5
  %1643 = fmul double %1642, 0x3FEC2894019C8AD2
  %1644 = tail call double @llvm.fmuladd.f64(double %1641, double 0x3FA789B66AF4F45E, double %1643)
  %gep10373 = getelementptr double, ptr %invariant.gep10372, i64 %indvars.iv
  %1645 = load double, ptr %gep10373, align 8, !tbaa !5
  %1646 = tail call double @llvm.fmuladd.f64(double %1645, double 0x3FEC2894019C8AC4, double %1644)
  %gep10375 = getelementptr double, ptr %invariant.gep10374, i64 %indvars.iv
  %1647 = load double, ptr %gep10375, align 8, !tbaa !5
  %1648 = tail call double @llvm.fmuladd.f64(double %1647, double 0x3FA789B66AF4F564, double %1646)
  %gep10377 = getelementptr double, ptr %invariant.gep10376, i64 %indvars.iv
  %1649 = load double, ptr %gep10377, align 8, !tbaa !5
  %1650 = tail call double @llvm.fmuladd.f64(double %1649, double 0x3C78000000000002, double %1648)
  %gep10379 = getelementptr double, ptr %invariant.gep10378, i64 %indvars.iv
  %1651 = load double, ptr %gep10379, align 8, !tbaa !5
  %1652 = tail call double @llvm.fmuladd.f64(double %1651, double 0x3CA2000000000000, double %1650)
  %gep10381 = getelementptr double, ptr %invariant.gep10380, i64 %indvars.iv
  %1653 = load double, ptr %gep10381, align 8, !tbaa !5
  %1654 = tail call double @llvm.fmuladd.f64(double %1653, double 0x3CA2000000000000, double %1652)
  %gep10383 = getelementptr double, ptr %invariant.gep10382, i64 %indvars.iv
  %1655 = load double, ptr %gep10383, align 8, !tbaa !5
  %1656 = tail call double @llvm.fmuladd.f64(double %1655, double 0x3C8C000000000000, double %1654)
  %gep10385 = getelementptr double, ptr %invariant.gep10384, i64 %indvars.iv
  %1657 = load double, ptr %gep10385, align 8, !tbaa !5
  %1658 = tail call double @llvm.fmuladd.f64(double %1657, double 0x3C84000000000000, double %1656)
  %gep10387 = getelementptr double, ptr %invariant.gep10386, i64 %indvars.iv
  %1659 = load double, ptr %gep10387, align 8, !tbaa !5
  %1660 = tail call double @llvm.fmuladd.f64(double %1659, double 0x3CAE000000000002, double %1658)
  %gep10389 = getelementptr double, ptr %invariant.gep10388, i64 %indvars.iv
  %1661 = load double, ptr %gep10389, align 8, !tbaa !5
  %1662 = tail call double @llvm.fmuladd.f64(double %1661, double 0x3C9C000000000000, double %1660)
  %gep10391 = getelementptr double, ptr %invariant.gep10390, i64 %indvars.iv
  %1663 = load double, ptr %gep10391, align 8, !tbaa !5
  %1664 = tail call double @llvm.fmuladd.f64(double %1663, double 0x3C8C000000000000, double %1662)
  %gep10393 = getelementptr double, ptr %invariant.gep10392, i64 %indvars.iv
  %1665 = load double, ptr %gep10393, align 8, !tbaa !5
  %1666 = tail call double @llvm.fmuladd.f64(double %1665, double 0xBC91000000000000, double %1664)
  %gep10395 = getelementptr double, ptr %invariant.gep10394, i64 %indvars.iv
  %1667 = load double, ptr %gep10395, align 8, !tbaa !5
  %1668 = tail call double @llvm.fmuladd.f64(double %1667, double 0x3C98000000000000, double %1666)
  %gep10397 = getelementptr double, ptr %invariant.gep10396, i64 %indvars.iv
  %1669 = load double, ptr %gep10397, align 8, !tbaa !5
  %1670 = tail call double @llvm.fmuladd.f64(double %1669, double 0x3C98000000000000, double %1668)
  %gep10399 = getelementptr double, ptr %invariant.gep10398, i64 %indvars.iv
  %1671 = load double, ptr %gep10399, align 8, !tbaa !5
  %1672 = tail call double @llvm.fmuladd.f64(double %1671, double 0xBC50000000000000, double %1670)
  %1673 = tail call double @llvm.fmuladd.f64(double %410, double 0xBFA0A4D27CF86DC6, double %1672)
  %1674 = tail call double @llvm.fmuladd.f64(double %412, double 0xBFE3E93C07AFC380, double %1673)
  %1675 = tail call double @llvm.fmuladd.f64(double %414, double 0xBFE3E93C07AFC37E, double %1674)
  %1676 = tail call double @llvm.fmuladd.f64(double %416, double 0xBFA0A4D27CF86DAF, double %1675)
  %1677 = tail call double @llvm.fmuladd.f64(double %418, double 0xBC85EB99734B41EF, double %1676)
  %1678 = tail call double @llvm.fmuladd.f64(double %420, double 0xBCA80AA84CE72F89, double %1677)
  %1679 = tail call double @llvm.fmuladd.f64(double %422, double 0xBC66A09E667F3BCC, double %1678)
  %1680 = tail call double @llvm.fmuladd.f64(double %424, double 0xBC86A09E667F3BCC, double %1679)
  %1681 = tail call double @llvm.fmuladd.f64(double %426, double 0xBC81AD7BC01366B8, double %1680)
  %1682 = tail call double @llvm.fmuladd.f64(double %428, double 0xBC93CC8A99AF5452, double %1681)
  %1683 = tail call double @llvm.fmuladd.f64(double %430, double 0xBC93CC8A99AF5452, double %1682)
  %1684 = tail call double @llvm.fmuladd.f64(double %432, double 0xBC96A09E667F3BCC, double %1683)
  %1685 = tail call double @llvm.fmuladd.f64(double %434, double 0x3C7FD1DEC022EC17, double %1684)
  %1686 = tail call double @llvm.fmuladd.f64(double %436, double 0xBCA6A09E667F3BCC, double %1685)
  %1687 = tail call double @llvm.fmuladd.f64(double %438, double 0xBC76A09E667F3BCD, double %1686)
  %1688 = tail call double @llvm.fmuladd.f64(double %440, double 0x3C86A09E667F3BCC, double %1687)
  %gep10401 = getelementptr double, ptr %invariant.gep10400, i64 %indvars.iv
  store double %1688, ptr %gep10401, align 8, !tbaa !5
  %1689 = fmul double %1642, 0x3FEAEBF44A8E7A8E
  %1690 = tail call double @llvm.fmuladd.f64(double %1641, double 0x3FD6F2A1D7A492BF, double %1689)
  %1691 = tail call double @llvm.fmuladd.f64(double %1645, double 0x3FEAEBF44A8E7A92, double %1690)
  %1692 = tail call double @llvm.fmuladd.f64(double %1647, double 0x3FD6F2A1D7A492CF, double %1691)
  %1693 = tail call double @llvm.fmuladd.f64(double %1651, double 0x3CA0000000000002, double %1692)
  %1694 = tail call double @llvm.fmuladd.f64(double %1653, double 0x3CC0000000000000, double %1693)
  %1695 = tail call double @llvm.fmuladd.f64(double %1657, double 0xBC90000000000000, double %1694)
  %1696 = tail call double @llvm.fmuladd.f64(double %1659, double 0x3CB8000000000001, double %1695)
  %1697 = tail call double @llvm.fmuladd.f64(double %1661, double 0x3CB8000000000001, double %1696)
  %1698 = tail call double @llvm.fmuladd.f64(double %1665, double 0x3CA8000000000001, double %1697)
  %1699 = tail call double @llvm.fmuladd.f64(double %1667, double 0x3CA4000000000001, double %1698)
  %1700 = tail call double @llvm.fmuladd.f64(double %1669, double 0x3C90000000000000, double %1699)
  %1701 = tail call double @llvm.fmuladd.f64(double %1671, double 0x3CB0000000000000, double %1700)
  %1702 = tail call double @llvm.fmuladd.f64(double %410, double 0x3FA462D8D66D7FC4, double %1701)
  %1703 = tail call double @llvm.fmuladd.f64(double %412, double 0xBFC5EA083165C4F6, double %1702)
  %1704 = tail call double @llvm.fmuladd.f64(double %414, double 0x3FD4A299D1E9700E, double %1703)
  %1705 = tail call double @llvm.fmuladd.f64(double %416, double 0x400E488CB8C1EA74, double %1704)
  %1706 = tail call double @llvm.fmuladd.f64(double %418, double 0x3C66A09E667F3BCC, double %1705)
  %1707 = tail call double @llvm.fmuladd.f64(double %420, double 0x3C76A09E667F3BCD, double %1706)
  %1708 = tail call double @llvm.fmuladd.f64(double %422, double 0x3CA0F876CCDF6CD8, double %1707)
  %1709 = tail call double @llvm.fmuladd.f64(double %424, double 0xBC96A09E667F3BCC, double %1708)
  %1710 = tail call double @llvm.fmuladd.f64(double %428, double 0x3C90F876CCDF6CD9, double %1709)
  %1711 = tail call double @llvm.fmuladd.f64(double %430, double 0xBC86A09E667F3BCC, double %1710)
  %1712 = tail call double @llvm.fmuladd.f64(double %432, double 0xBC96A09E667F3BCC, double %1711)
  %1713 = tail call double @llvm.fmuladd.f64(double %434, double 0x3C91AD7BC01366B7, double %1712)
  %1714 = tail call double @llvm.fmuladd.f64(double %436, double 0xBC76A09E667F3BCD, double %1713)
  %1715 = tail call double @llvm.fmuladd.f64(double %438, double 0x3C9C48C6001F0ABF, double %1714)
  %1716 = tail call double @llvm.fmuladd.f64(double %440, double 0x3CC0F876CCDF6CD9, double %1715)
  %gep10403 = getelementptr double, ptr %invariant.gep10402, i64 %indvars.iv
  store double %1716, ptr %gep10403, align 8, !tbaa !5
  %1717 = fmul double %1642, 0x3FCEFDC8894D0802
  %1718 = tail call double @llvm.fmuladd.f64(double %1641, double 0xBFACD49071EC6028, double %1717)
  %1719 = tail call double @llvm.fmuladd.f64(double %1645, double 0xBFDD2EB9CCB3BE35, double %1718)
  %1720 = tail call double @llvm.fmuladd.f64(double %1647, double 0xC01569E165D7940B, double %1719)
  %1721 = tail call double @llvm.fmuladd.f64(double %1649, double 0xBCA2000000000000, double %1720)
  %1722 = tail call double @llvm.fmuladd.f64(double %1651, double 0xBC88000000000000, double %1721)
  %1723 = tail call double @llvm.fmuladd.f64(double %1653, double 0xBCA9FFFFFFFFFFFE, double %1722)
  %1724 = tail call double @llvm.fmuladd.f64(double %1655, double 0xBCC5800000000000, double %1723)
  %1725 = tail call double @llvm.fmuladd.f64(double %1657, double 0x3C94000000000000, double %1724)
  %1726 = tail call double @llvm.fmuladd.f64(double %1659, double 0xBC94000000000000, double %1725)
  %1727 = tail call double @llvm.fmuladd.f64(double %1661, double 0x3C94000000000000, double %1726)
  %1728 = tail call double @llvm.fmuladd.f64(double %1663, double 0xBCB5000000000000, double %1727)
  %1729 = tail call double @llvm.fmuladd.f64(double %1665, double 0x3CA1000000000001, double %1728)
  %1730 = tail call double @llvm.fmuladd.f64(double %1667, double 0x3CA0000000000002, double %1729)
  %1731 = tail call double @llvm.fmuladd.f64(double %1669, double 0xBCA9FFFFFFFFFFFE, double %1730)
  %1732 = tail call double @llvm.fmuladd.f64(double %1671, double 0xBCD2000000000000, double %1731)
  %1733 = tail call double @llvm.fmuladd.f64(double %410, double 0x400E488CB8C1EA66, double %1732)
  %1734 = tail call double @llvm.fmuladd.f64(double %412, double 0x3FD4A299D1E9700C, double %1733)
  %1735 = tail call double @llvm.fmuladd.f64(double %414, double 0xBFC5EA083165C4F9, double %1734)
  %1736 = tail call double @llvm.fmuladd.f64(double %416, double 0x3FA462D8D66D7F94, double %1735)
  %1737 = tail call double @llvm.fmuladd.f64(double %418, double 0x3C9152F9467969C8, double %1736)
  %1738 = tail call double @llvm.fmuladd.f64(double %420, double 0xBCADB2CFE686FE7D, double %1737)
  %1739 = tail call double @llvm.fmuladd.f64(double %422, double 0xBCA26280B3476095, double %1738)
  %1740 = tail call double @llvm.fmuladd.f64(double %424, double 0x3C76A09E667F3BCD, double %1739)
  %1741 = tail call double @llvm.fmuladd.f64(double %426, double 0xBCAF4A1B09BBF0AE, double %1740)
  %1742 = tail call double @llvm.fmuladd.f64(double %428, double 0x3CADB2CFE686FE7D, double %1741)
  %1743 = tail call double @llvm.fmuladd.f64(double %430, double 0xBC80F876CCDF6CD9, double %1742)
  %1744 = tail call double @llvm.fmuladd.f64(double %432, double 0x3C76A09E667F3BCD, double %1743)
  %1745 = tail call double @llvm.fmuladd.f64(double %434, double 0x3CC689FDC818BC8F, double %1744)
  %1746 = tail call double @llvm.fmuladd.f64(double %436, double 0x3CB16999E4DFE903, double %1745)
  %1747 = tail call double @llvm.fmuladd.f64(double %438, double 0xBC880AA84CE72F89, double %1746)
  %1748 = tail call double @llvm.fmuladd.f64(double %440, double 0xBC80F876CCDF6CD9, double %1747)
  %gep10405 = getelementptr double, ptr %invariant.gep10404, i64 %indvars.iv
  store double %1748, ptr %gep10405, align 8, !tbaa !5
  %1749 = fmul double %1642, 0xBFDD2EB9CCB3BDB5
  %1750 = tail call double @llvm.fmuladd.f64(double %1641, double 0xC01569E165D79412, double %1749)
  %1751 = tail call double @llvm.fmuladd.f64(double %1645, double 0x3FCEFDC8894D07B6, double %1750)
  %1752 = tail call double @llvm.fmuladd.f64(double %1647, double 0xBFACD49071EC5FF2, double %1751)
  %1753 = tail call double @llvm.fmuladd.f64(double %1649, double 0xBCD6C00000000002, double %1752)
  %1754 = tail call double @llvm.fmuladd.f64(double %1651, double 0x3C94000000000000, double %1753)
  %1755 = tail call double @llvm.fmuladd.f64(double %1653, double 0x3C9C000000000000, double %1754)
  %1756 = tail call double @llvm.fmuladd.f64(double %1655, double 0xBC9C000000000000, double %1755)
  %1757 = tail call double @llvm.fmuladd.f64(double %1657, double 0xBCC2800000000000, double %1756)
  %1758 = tail call double @llvm.fmuladd.f64(double %1659, double 0x3CAE000000000002, double %1757)
  %1759 = tail call double @llvm.fmuladd.f64(double %1661, double 0x3C70000000000001, double %1758)
  %1760 = tail call double @llvm.fmuladd.f64(double %1663, double 0xBC70000000000001, double %1759)
  %1761 = tail call double @llvm.fmuladd.f64(double %1665, double 0xBCBF000000000001, double %1760)
  %1762 = tail call double @llvm.fmuladd.f64(double %1667, double 0xBCBAFFFFFFFFFFFF, double %1761)
  %1763 = tail call double @llvm.fmuladd.f64(double %1669, double 0xBC9C000000000000, double %1762)
  %1764 = tail call double @llvm.fmuladd.f64(double %1671, double 0x3C70000000000001, double %1763)
  %1765 = tail call double @llvm.fmuladd.f64(double %410, double 0xBFD039FE04F7163A, double %1764)
  %1766 = tail call double @llvm.fmuladd.f64(double %412, double 0xBFE30958FBF81242, double %1765)
  %1767 = tail call double @llvm.fmuladd.f64(double %414, double 0xBFE30958FBF81231, double %1766)
  %1768 = tail call double @llvm.fmuladd.f64(double %416, double 0xBFD039FE04F71632, double %1767)
  %1769 = tail call double @llvm.fmuladd.f64(double %418, double 0x3C959116F9B144FE, double %1768)
  %1770 = tail call double @llvm.fmuladd.f64(double %420, double 0xBCA80AA84CE72F89, double %1769)
  %1771 = tail call double @llvm.fmuladd.f64(double %422, double 0xBC8C48C6001F0AC0, double %1770)
  %1772 = tail call double @llvm.fmuladd.f64(double %424, double 0x3C90F876CCDF6CD9, double %1771)
  %1773 = tail call double @llvm.fmuladd.f64(double %426, double 0xBCB0B494F1ABEF27, double %1772)
  %1774 = tail call double @llvm.fmuladd.f64(double %428, double 0xBCA536948017480F, double %1773)
  %1775 = tail call double @llvm.fmuladd.f64(double %430, double 0x3CADB2CFE686FE7D, double %1774)
  %1776 = tail call double @llvm.fmuladd.f64(double %432, double 0x3C9C48C6001F0ABF, double %1775)
  %1777 = tail call double @llvm.fmuladd.f64(double %434, double 0xBC9F1CD9CCEEF236, double %1776)
  %1778 = tail call double @llvm.fmuladd.f64(double %436, double 0xBCA016309CDE7482, double %1777)
  %1779 = tail call double @llvm.fmuladd.f64(double %438, double 0x3C98BFAD401B2967, double %1778)
  %1780 = tail call double @llvm.fmuladd.f64(double %440, double 0xBC93CC8A99AF5452, double %1779)
  %gep10407 = getelementptr double, ptr %invariant.gep10406, i64 %indvars.iv
  store double %1780, ptr %gep10407, align 8, !tbaa !5
  %1781 = fmul double %1642, 0xBFB4C23AD63BEF88
  %1782 = tail call double @llvm.fmuladd.f64(double %1641, double 0xBFAC37F3CCE9FCFE, double %1781)
  %1783 = tail call double @llvm.fmuladd.f64(double %1645, double 0x3FEFAD7976B5DE29, double %1782)
  %1784 = tail call double @llvm.fmuladd.f64(double %1647, double 0x3FF043C98657E812, double %1783)
  %1785 = tail call double @llvm.fmuladd.f64(double %1649, double 0x3CA0000000000002, double %1784)
  %1786 = tail call double @llvm.fmuladd.f64(double %1653, double 0x3C98000000000000, double %1785)
  %1787 = tail call double @llvm.fmuladd.f64(double %1655, double 0x3CAC000000000000, double %1786)
  %1788 = tail call double @llvm.fmuladd.f64(double %1657, double 0x3C90000000000000, double %1787)
  %1789 = tail call double @llvm.fmuladd.f64(double %1659, double 0x3C90000000000000, double %1788)
  %1790 = tail call double @llvm.fmuladd.f64(double %1661, double 0x3C7FFFFFFFFFFFFF, double %1789)
  %1791 = tail call double @llvm.fmuladd.f64(double %1663, double 0x3CA4000000000001, double %1790)
  %1792 = tail call double @llvm.fmuladd.f64(double %1665, double 0x3C90000000000000, double %1791)
  %1793 = tail call double @llvm.fmuladd.f64(double %1667, double 0xBC9C000000000000, double %1792)
  %1794 = tail call double @llvm.fmuladd.f64(double %1669, double 0xBC70000000000001, double %1793)
  %1795 = tail call double @llvm.fmuladd.f64(double %1671, double 0xBC9C000000000000, double %1794)
  %1796 = tail call double @llvm.fmuladd.f64(double %410, double 0x3FD08C54FF101A12, double %1795)
  %1797 = tail call double @llvm.fmuladd.f64(double %412, double 0x4007001BD846D0B0, double %1796)
  %1798 = tail call double @llvm.fmuladd.f64(double %414, double 0x3FD0C7817D9C3131, double %1797)
  %1799 = tail call double @llvm.fmuladd.f64(double %416, double 0xBFB8DF388696F54B, double %1798)
  %1800 = tail call double @llvm.fmuladd.f64(double %418, double 0xBC8CFDCAF353049C, double %1799)
  %1801 = tail call double @llvm.fmuladd.f64(double %420, double 0x3CB6461BECE53EDD, double %1800)
  %1802 = tail call double @llvm.fmuladd.f64(double %422, double 0x3CA3CC8A99AF5452, double %1801)
  %1803 = tail call double @llvm.fmuladd.f64(double %424, double 0x3C90F876CCDF6CD9, double %1802)
  %1804 = tail call double @llvm.fmuladd.f64(double %426, double 0x3C6974B2334F2344, double %1803)
  %1805 = tail call double @llvm.fmuladd.f64(double %428, double 0xBCA5EB99734B41EE, double %1804)
  %1806 = tail call double @llvm.fmuladd.f64(double %430, double 0x3C9C48C6001F0ABF, double %1805)
  %1807 = tail call double @llvm.fmuladd.f64(double %432, double 0xBC76A09E667F3BCD, double %1806)
  %1808 = tail call double @llvm.fmuladd.f64(double %434, double 0x3C8BEE4386850DD0, double %1807)
  %1809 = tail call double @llvm.fmuladd.f64(double %436, double 0x3CC196DB21ACE77C, double %1808)
  %1810 = tail call double @llvm.fmuladd.f64(double %438, double 0x3C90F876CCDF6CD9, double %1809)
  %1811 = tail call double @llvm.fmuladd.f64(double %440, double 0xBC66A09E667F3BCC, double %1810)
  %gep10409 = getelementptr double, ptr %invariant.gep10408, i64 %indvars.iv
  store double %1811, ptr %gep10409, align 8, !tbaa !5
  %1812 = fmul double %1642, 0x3FEFAD7976B5DE26
  %1813 = tail call double @llvm.fmuladd.f64(double %1641, double 0x3FF043C98657E812, double %1812)
  %1814 = tail call double @llvm.fmuladd.f64(double %1645, double 0xBFB4C23AD63BEF60, double %1813)
  %1815 = tail call double @llvm.fmuladd.f64(double %1647, double 0xBFAC37F3CCE9FD17, double %1814)
  %1816 = tail call double @llvm.fmuladd.f64(double %1649, double 0x3CAC000000000000, double %1815)
  %1817 = tail call double @llvm.fmuladd.f64(double %1651, double 0xBCA4000000000001, double %1816)
  %1818 = tail call double @llvm.fmuladd.f64(double %1653, double 0x3C90000000000000, double %1817)
  %1819 = tail call double @llvm.fmuladd.f64(double %1655, double 0x3C98000000000000, double %1818)
  %1820 = tail call double @llvm.fmuladd.f64(double %1657, double 0x3CA4000000000001, double %1819)
  %1821 = tail call double @llvm.fmuladd.f64(double %1659, double 0xBC98000000000000, double %1820)
  %1822 = tail call double @llvm.fmuladd.f64(double %1663, double 0x3C7FFFFFFFFFFFFF, double %1821)
  %1823 = tail call double @llvm.fmuladd.f64(double %1665, double 0xBC7FFFFFFFFFFFFF, double %1822)
  %1824 = tail call double @llvm.fmuladd.f64(double %1667, double 0x3C70000000000001, double %1823)
  %1825 = tail call double @llvm.fmuladd.f64(double %1669, double 0xBC9A000000000000, double %1824)
  %1826 = tail call double @llvm.fmuladd.f64(double %1671, double 0x3C7FFFFFFFFFFFFF, double %1825)
  %1827 = tail call double @llvm.fmuladd.f64(double %410, double 0xBF9102DA00B18A5A, double %1826)
  %1828 = tail call double @llvm.fmuladd.f64(double %412, double 0x3FCD5953692F6EA6, double %1827)
  %1829 = tail call double @llvm.fmuladd.f64(double %414, double 0x3FE3C4545BCF030B, double %1828)
  %1830 = tail call double @llvm.fmuladd.f64(double %416, double 0x3FD6A4D32EB1F70D, double %1829)
  %1831 = tail call double @llvm.fmuladd.f64(double %418, double 0x3C6F1CD9CCEEF238, double %1830)
  %1832 = tail call double @llvm.fmuladd.f64(double %420, double 0x3C9ADEBC19B71702, double %1831)
  %1833 = tail call double @llvm.fmuladd.f64(double %422, double 0x3C76A09E667F3BCD, double %1832)
  %1834 = tail call double @llvm.fmuladd.f64(double %426, double 0xBC94DC12067D4B20, double %1833)
  %1835 = tail call double @llvm.fmuladd.f64(double %428, double 0xBC9536948017480F, double %1834)
  %1836 = tail call double @llvm.fmuladd.f64(double %430, double 0xBC76A09E667F3BCD, double %1835)
  %1837 = tail call double @llvm.fmuladd.f64(double %432, double 0x3C96A09E667F3BCC, double %1836)
  %1838 = tail call double @llvm.fmuladd.f64(double %434, double 0x3C53CC8A99AF5452, double %1837)
  %1839 = tail call double @llvm.fmuladd.f64(double %436, double 0x3C8536948017480E, double %1838)
  %1840 = tail call double @llvm.fmuladd.f64(double %438, double 0x3C9C48C6001F0ABF, double %1839)
  %1841 = tail call double @llvm.fmuladd.f64(double %440, double 0x3C93CC8A99AF5452, double %1840)
  %gep10411 = getelementptr double, ptr %invariant.gep10410, i64 %indvars.iv
  store double %1841, ptr %gep10411, align 8, !tbaa !5
  %1842 = fmul double %1642, 0xC01043858A1F5993
  %1843 = tail call double @llvm.fmuladd.f64(double %1641, double 0xBFD767140476511D, double %1842)
  %1844 = tail call double @llvm.fmuladd.f64(double %1645, double 0xBFD7BAC3393ADDD9, double %1843)
  %1845 = tail call double @llvm.fmuladd.f64(double %1647, double 0x3FC1964E14FA3C62, double %1844)
  %1846 = tail call double @llvm.fmuladd.f64(double %1651, double 0xBCD3A00000000001, double %1845)
  %1847 = tail call double @llvm.fmuladd.f64(double %1653, double 0xBC84000000000000, double %1846)
  %1848 = tail call double @llvm.fmuladd.f64(double %1655, double 0xBC94000000000000, double %1847)
  %1849 = tail call double @llvm.fmuladd.f64(double %1659, double 0xBCC8C00000000000, double %1848)
  %1850 = tail call double @llvm.fmuladd.f64(double %1661, double 0xBC96000000000000, double %1849)
  %1851 = tail call double @llvm.fmuladd.f64(double %1663, double 0x3CA8000000000001, double %1850)
  %1852 = tail call double @llvm.fmuladd.f64(double %1665, double 0xBC9A000000000000, double %1851)
  %1853 = tail call double @llvm.fmuladd.f64(double %1667, double 0xBCC4400000000000, double %1852)
  %1854 = tail call double @llvm.fmuladd.f64(double %1669, double 0xBCA1000000000001, double %1853)
  %1855 = tail call double @llvm.fmuladd.f64(double %1671, double 0x3C98000000000000, double %1854)
  %1856 = tail call double @llvm.fmuladd.f64(double %410, double 0x3FD6A4D32EB1F718, double %1855)
  %1857 = tail call double @llvm.fmuladd.f64(double %412, double 0x3FE3C4545BCF030B, double %1856)
  %1858 = tail call double @llvm.fmuladd.f64(double %414, double 0x3FCD5953692F6EA3, double %1857)
  %1859 = tail call double @llvm.fmuladd.f64(double %416, double 0xBF9102DA00B18A2C, double %1858)
  %1860 = tail call double @llvm.fmuladd.f64(double %418, double 0xBC76A09E667F3BCD, double %1859)
  %1861 = tail call double @llvm.fmuladd.f64(double %420, double 0x3CB344C6E34858EB, double %1860)
  %1862 = tail call double @llvm.fmuladd.f64(double %422, double 0x3C90F876CCDF6CD9, double %1861)
  %1863 = tail call double @llvm.fmuladd.f64(double %424, double 0x3C76A09E667F3BCD, double %1862)
  %1864 = tail call double @llvm.fmuladd.f64(double %426, double 0xBC9C48C6001F0ABF, double %1863)
  %1865 = tail call double @llvm.fmuladd.f64(double %428, double 0xBC9FD1DEC022EC15, double %1864)
  %1866 = tail call double @llvm.fmuladd.f64(double %430, double 0x3C9C48C6001F0ABF, double %1865)
  %1867 = tail call double @llvm.fmuladd.f64(double %432, double 0xBC96A09E667F3BCC, double %1866)
  %1868 = tail call double @llvm.fmuladd.f64(double %434, double 0x3C86461BECE53EDC, double %1867)
  %1869 = tail call double @llvm.fmuladd.f64(double %436, double 0x3CA196DB21ACE77D, double %1868)
  %1870 = tail call double @llvm.fmuladd.f64(double %438, double 0x3C9ADEBC19B71702, double %1869)
  %gep10413 = getelementptr double, ptr %invariant.gep10412, i64 %indvars.iv
  store double %1870, ptr %gep10413, align 8, !tbaa !5
  %1871 = fmul double %1642, 0xBFD7BAC3393ADDC0
  %1872 = tail call double @llvm.fmuladd.f64(double %1641, double 0x3FC1964E14FA3C4C, double %1871)
  %1873 = tail call double @llvm.fmuladd.f64(double %1645, double 0xC01043858A1F5994, double %1872)
  %1874 = tail call double @llvm.fmuladd.f64(double %1647, double 0xBFD7671404765136, double %1873)
  %1875 = tail call double @llvm.fmuladd.f64(double %1649, double 0x3C9C000000000000, double %1874)
  %1876 = tail call double @llvm.fmuladd.f64(double %1653, double 0xBCC0800000000000, double %1875)
  %1877 = tail call double @llvm.fmuladd.f64(double %1655, double 0x3C70000000000001, double %1876)
  %1878 = tail call double @llvm.fmuladd.f64(double %1657, double 0x3CA8000000000001, double %1877)
  %1879 = tail call double @llvm.fmuladd.f64(double %1659, double 0xBC90000000000000, double %1878)
  %1880 = tail call double @llvm.fmuladd.f64(double %1661, double 0xBCBF000000000001, double %1879)
  %1881 = tail call double @llvm.fmuladd.f64(double %1663, double 0x3C88000000000000, double %1880)
  %1882 = tail call double @llvm.fmuladd.f64(double %1665, double 0x3C82000000000000, double %1881)
  %1883 = tail call double @llvm.fmuladd.f64(double %1667, double 0xBCA2000000000000, double %1882)
  %1884 = tail call double @llvm.fmuladd.f64(double %1669, double 0xBCC5000000000000, double %1883)
  %1885 = tail call double @llvm.fmuladd.f64(double %1671, double 0xBCA0800000000001, double %1884)
  %1886 = tail call double @llvm.fmuladd.f64(double %410, double 0xBFE7007BFD8FD859, double %1885)
  %1887 = tail call double @llvm.fmuladd.f64(double %412, double 0xBFE66643AEED3706, double %1886)
  %1888 = tail call double @llvm.fmuladd.f64(double %414, double 0x3FAD5B74B5F10E94, double %1887)
  %1889 = tail call double @llvm.fmuladd.f64(double %416, double 0x3FA3F41B0E87BFBB, double %1888)
  %1890 = tail call double @llvm.fmuladd.f64(double %418, double 0xBCA344C6E34858EB, double %1889)
  %1891 = tail call double @llvm.fmuladd.f64(double %420, double 0x3C91AD7BC01366B7, double %1890)
  %1892 = tail call double @llvm.fmuladd.f64(double %422, double 0xBC90F876CCDF6CD9, double %1891)
  %1893 = tail call double @llvm.fmuladd.f64(double %424, double 0x3C76A09E667F3BCD, double %1892)
  %1894 = tail call double @llvm.fmuladd.f64(double %426, double 0x3CA344C6E34858EB, double %1893)
  %1895 = tail call double @llvm.fmuladd.f64(double %428, double 0x3C73CC8A99AF5453, double %1894)
  %1896 = tail call double @llvm.fmuladd.f64(double %430, double 0x3C76A09E667F3BCD, double %1895)
  %1897 = tail call double @llvm.fmuladd.f64(double %432, double 0xBCA0F876CCDF6CD8, double %1896)
  %1898 = tail call double @llvm.fmuladd.f64(double %434, double 0xBCA13C58A812EA8E, double %1897)
  %1899 = tail call double @llvm.fmuladd.f64(double %436, double 0xBCA6023A11B1C128, double %1898)
  %1900 = tail call double @llvm.fmuladd.f64(double %438, double 0xBC80F876CCDF6CD9, double %1899)
  %gep10415 = getelementptr double, ptr %invariant.gep10414, i64 %indvars.iv
  store double %1900, ptr %gep10415, align 8, !tbaa !5
  %1901 = fmul double %1642, 0xBFEBF462FB348EF3
  %1902 = tail call double @llvm.fmuladd.f64(double %1641, double 0xBFE002F9665DF3D7, double %1901)
  %1903 = tail call double @llvm.fmuladd.f64(double %1645, double 0xBFD4C0B9406BCBCD, double %1902)
  %1904 = tail call double @llvm.fmuladd.f64(double %1647, double 0x3F980EB0AE1D4727, double %1903)
  %1905 = tail call double @llvm.fmuladd.f64(double %1649, double 0x3C90000000000000, double %1904)
  %1906 = tail call double @llvm.fmuladd.f64(double %1651, double 0xBC90000000000000, double %1905)
  %1907 = tail call double @llvm.fmuladd.f64(double %1653, double 0x3C90000000000000, double %1906)
  %1908 = tail call double @llvm.fmuladd.f64(double %1655, double 0xBC7FFFFFFFFFFFFF, double %1907)
  %1909 = tail call double @llvm.fmuladd.f64(double %1657, double 0x3CA8000000000001, double %1908)
  %1910 = tail call double @llvm.fmuladd.f64(double %1659, double 0x3C90000000000000, double %1909)
  %1911 = tail call double @llvm.fmuladd.f64(double %1661, double 0x3C90000000000000, double %1910)
  %1912 = tail call double @llvm.fmuladd.f64(double %1663, double 0xBC7FFFFFFFFFFFFF, double %1911)
  %1913 = tail call double @llvm.fmuladd.f64(double %1665, double 0xBC90000000000000, double %1912)
  %1914 = tail call double @llvm.fmuladd.f64(double %1667, double 0xBC70000000000001, double %1913)
  %1915 = tail call double @llvm.fmuladd.f64(double %1669, double 0xBC88000000000000, double %1914)
  %1916 = tail call double @llvm.fmuladd.f64(double %1671, double 0xBC96000000000000, double %1915)
  %1917 = tail call double @llvm.fmuladd.f64(double %410, double 0x3FA3F41B0E87BFEB, double %1916)
  %1918 = tail call double @llvm.fmuladd.f64(double %412, double 0x3FAD5B74B5F10E92, double %1917)
  %1919 = tail call double @llvm.fmuladd.f64(double %414, double 0xBFE66643AEED36FA, double %1918)
  %1920 = tail call double @llvm.fmuladd.f64(double %416, double 0xBFE7007BFD8FD85B, double %1919)
  %1921 = tail call double @llvm.fmuladd.f64(double %418, double 0x3C826280B3476096, double %1920)
  %1922 = tail call double @llvm.fmuladd.f64(double %420, double 0x3C8C48C6001F0AC0, double %1921)
  %1923 = tail call double @llvm.fmuladd.f64(double %424, double 0x3C96A09E667F3BCC, double %1922)
  %1924 = tail call double @llvm.fmuladd.f64(double %426, double 0x3C60F876CCDF6CD9, double %1923)
  %1925 = tail call double @llvm.fmuladd.f64(double %428, double 0xBC8C48C6001F0AC0, double %1924)
  %1926 = tail call double @llvm.fmuladd.f64(double %430, double 0xBCA6A09E667F3BCC, double %1925)
  %1927 = tail call double @llvm.fmuladd.f64(double %432, double 0xBCA6A09E667F3BCC, double %1926)
  %1928 = tail call double @llvm.fmuladd.f64(double %434, double 0x3C6F1CD9CCEEF238, double %1927)
  %1929 = tail call double @llvm.fmuladd.f64(double %436, double 0x3C8974B2334F2346, double %1928)
  %1930 = tail call double @llvm.fmuladd.f64(double %438, double 0xBCAADEBC19B71703, double %1929)
  %1931 = tail call double @llvm.fmuladd.f64(double %440, double 0x3C76A09E667F3BCD, double %1930)
  %gep10417 = getelementptr double, ptr %invariant.gep10416, i64 %indvars.iv
  store double %1931, ptr %gep10417, align 8, !tbaa !5
  %1932 = fmul double %1642, 0xBFD4C0B9406BCBCD
  %1933 = tail call double @llvm.fmuladd.f64(double %1641, double 0x3F980EB0AE1D4719, double %1932)
  %1934 = tail call double @llvm.fmuladd.f64(double %1645, double 0xBFEBF462FB348EF3, double %1933)
  %1935 = tail call double @llvm.fmuladd.f64(double %1647, double 0xBFE002F9665DF3D7, double %1934)
  %1936 = tail call double @llvm.fmuladd.f64(double %1649, double 0xBC7FFFFFFFFFFFFF, double %1935)
  %1937 = tail call double @llvm.fmuladd.f64(double %1651, double 0x3C90000000000000, double %1936)
  %1938 = tail call double @llvm.fmuladd.f64(double %1653, double 0xBC90000000000000, double %1937)
  %1939 = tail call double @llvm.fmuladd.f64(double %1655, double 0x3C90000000000000, double %1938)
  %1940 = tail call double @llvm.fmuladd.f64(double %1657, double 0x3C7FFFFFFFFFFFFF, double %1939)
  %1941 = tail call double @llvm.fmuladd.f64(double %1659, double 0x3C90000000000000, double %1940)
  %1942 = tail call double @llvm.fmuladd.f64(double %1661, double 0x3C90000000000000, double %1941)
  %1943 = tail call double @llvm.fmuladd.f64(double %1663, double 0x3CA8000000000001, double %1942)
  %1944 = tail call double @llvm.fmuladd.f64(double %1665, double 0xBC96000000000000, double %1943)
  %1945 = tail call double @llvm.fmuladd.f64(double %1667, double 0xBC88000000000000, double %1944)
  %1946 = tail call double @llvm.fmuladd.f64(double %1669, double 0xBC70000000000001, double %1945)
  %1947 = tail call double @llvm.fmuladd.f64(double %1671, double 0xBCA0000000000002, double %1946)
  %1948 = tail call double @llvm.fmuladd.f64(double %410, double 0xBFB8DF388696F557, double %1947)
  %1949 = tail call double @llvm.fmuladd.f64(double %412, double 0x3FD0C7817D9C3121, double %1948)
  %1950 = tail call double @llvm.fmuladd.f64(double %414, double 0x4007001BD846D0A7, double %1949)
  %1951 = tail call double @llvm.fmuladd.f64(double %416, double 0x3FD08C54FF1019F7, double %1950)
  %1952 = tail call double @llvm.fmuladd.f64(double %418, double 0xBC7F1CD9CCEEF238, double %1951)
  %1953 = tail call double @llvm.fmuladd.f64(double %420, double 0x3C80F876CCDF6CD9, double %1952)
  %1954 = tail call double @llvm.fmuladd.f64(double %422, double 0x3C9C48C6001F0ABF, double %1953)
  %1955 = tail call double @llvm.fmuladd.f64(double %424, double 0x3C86A09E667F3BCC, double %1954)
  %1956 = tail call double @llvm.fmuladd.f64(double %426, double 0xBC6C48C6001F0ABE, double %1955)
  %1957 = tail call double @llvm.fmuladd.f64(double %428, double 0x3C9974B2334F2346, double %1956)
  %1958 = tail call double @llvm.fmuladd.f64(double %430, double 0x3CBADEBC19B71701, double %1957)
  %1959 = tail call double @llvm.fmuladd.f64(double %432, double 0x3C96A09E667F3BCC, double %1958)
  %1960 = tail call double @llvm.fmuladd.f64(double %434, double 0xBC50F876CCDF6CD8, double %1959)
  %1961 = tail call double @llvm.fmuladd.f64(double %436, double 0x3CA04371D9AB72FA, double %1960)
  %1962 = tail call double @llvm.fmuladd.f64(double %438, double 0x3CBADEBC19B71701, double %1961)
  %1963 = tail call double @llvm.fmuladd.f64(double %440, double 0x3C90F876CCDF6CD9, double %1962)
  %gep10419 = getelementptr double, ptr %invariant.gep10418, i64 %indvars.iv
  store double %1963, ptr %gep10419, align 8, !tbaa !5
  %1964 = fmul double %1642, 0x3C70000000000001
  %1965 = tail call double @llvm.fmuladd.f64(double %1641, double 0xBC60000000000000, double %1964)
  %1966 = tail call double @llvm.fmuladd.f64(double %1647, double 0xBC84000000000000, double %1965)
  %1967 = tail call double @llvm.fmuladd.f64(double %1649, double 0x3FA789B66AF4F457, double %1966)
  %1968 = tail call double @llvm.fmuladd.f64(double %1651, double 0x3FEC2894019C8AD4, double %1967)
  %1969 = tail call double @llvm.fmuladd.f64(double %1653, double 0x3FEC2894019C8AC6, double %1968)
  %1970 = tail call double @llvm.fmuladd.f64(double %1655, double 0x3FA789B66AF4F575, double %1969)
  %1971 = tail call double @llvm.fmuladd.f64(double %1657, double 0x3C70000000000001, double %1970)
  %1972 = tail call double @llvm.fmuladd.f64(double %1659, double 0x3CA0000000000002, double %1971)
  %1973 = tail call double @llvm.fmuladd.f64(double %1661, double 0x3C90000000000000, double %1972)
  %1974 = tail call double @llvm.fmuladd.f64(double %1663, double 0x3C70000000000001, double %1973)
  %1975 = tail call double @llvm.fmuladd.f64(double %1665, double 0x3C60000000000000, double %1974)
  %1976 = tail call double @llvm.fmuladd.f64(double %1667, double 0xBC94000000000000, double %1975)
  %1977 = tail call double @llvm.fmuladd.f64(double %1669, double 0xBC90000000000000, double %1976)
  %1978 = tail call double @llvm.fmuladd.f64(double %1671, double 0x3C60000000000000, double %1977)
  %1979 = tail call double @llvm.fmuladd.f64(double %410, double 0xBC84818F8CE34E32, double %1978)
  %1980 = tail call double @llvm.fmuladd.f64(double %412, double 0x3C6C48C6001F0ABE, double %1979)
  %1981 = tail call double @llvm.fmuladd.f64(double %414, double 0xBC66A09E667F3BCC, double %1980)
  %1982 = tail call double @llvm.fmuladd.f64(double %416, double 0xBC76A09E667F3BCD, double %1981)
  %1983 = tail call double @llvm.fmuladd.f64(double %418, double 0xBFA0A4D27CF86DCE, double %1982)
  %1984 = tail call double @llvm.fmuladd.f64(double %420, double 0xBFE3E93C07AFC382, double %1983)
  %1985 = tail call double @llvm.fmuladd.f64(double %422, double 0xBFE3E93C07AFC37F, double %1984)
  %1986 = tail call double @llvm.fmuladd.f64(double %424, double 0xBFA0A4D27CF86DB4, double %1985)
  %1987 = tail call double @llvm.fmuladd.f64(double %426, double 0xBC9207FE39AD63A7, double %1986)
  %1988 = tail call double @llvm.fmuladd.f64(double %428, double 0xBC83CC8A99AF5451, double %1987)
  %1989 = tail call double @llvm.fmuladd.f64(double %432, double 0xBC90F876CCDF6CD9, double %1988)
  %1990 = tail call double @llvm.fmuladd.f64(double %434, double 0xBC50F876CCDF6CD8, double %1989)
  %1991 = tail call double @llvm.fmuladd.f64(double %436, double 0x3C7F1CD9CCEEF238, double %1990)
  %1992 = tail call double @llvm.fmuladd.f64(double %438, double 0xBC66A09E667F3BCC, double %1991)
  %1993 = tail call double @llvm.fmuladd.f64(double %440, double 0x3C76A09E667F3BCD, double %1992)
  %gep10421 = getelementptr double, ptr %invariant.gep10420, i64 %indvars.iv
  store double %1993, ptr %gep10421, align 8, !tbaa !5
  %1994 = fmul double %1645, 0x3CB3FFFFFFFFFFFF
  %1995 = tail call double @llvm.fmuladd.f64(double %1642, double 0x3C90000000000000, double %1994)
  %1996 = tail call double @llvm.fmuladd.f64(double %1647, double 0x3C90000000000000, double %1995)
  %1997 = tail call double @llvm.fmuladd.f64(double %1649, double 0x3FD6F2A1D7A492C4, double %1996)
  %1998 = tail call double @llvm.fmuladd.f64(double %1651, double 0x3FEAEBF44A8E7A95, double %1997)
  %1999 = tail call double @llvm.fmuladd.f64(double %1653, double 0x3FEAEBF44A8E7A9A, double %1998)
  %2000 = tail call double @llvm.fmuladd.f64(double %1655, double 0x3FD6F2A1D7A492D5, double %1999)
  %2001 = tail call double @llvm.fmuladd.f64(double %1661, double 0xBCA0000000000002, double %2000)
  %2002 = tail call double @llvm.fmuladd.f64(double %1663, double 0x3C90000000000000, double %2001)
  %2003 = tail call double @llvm.fmuladd.f64(double %1665, double 0xBC7FFFFFFFFFFFFF, double %2002)
  %2004 = tail call double @llvm.fmuladd.f64(double %1669, double 0x3C90000000000000, double %2003)
  %2005 = tail call double @llvm.fmuladd.f64(double %1671, double 0xBC7FFFFFFFFFFFFF, double %2004)
  %2006 = tail call double @llvm.fmuladd.f64(double %410, double 0xBC80F876CCDF6CD9, double %2005)
  %2007 = tail call double @llvm.fmuladd.f64(double %412, double 0xBC76A09E667F3BCD, double %2006)
  %2008 = tail call double @llvm.fmuladd.f64(double %414, double 0x3C90F876CCDF6CD9, double %2007)
  %2009 = tail call double @llvm.fmuladd.f64(double %416, double 0x3CB0F876CCDF6CD8, double %2008)
  %2010 = tail call double @llvm.fmuladd.f64(double %418, double 0x3FA462D8D66D7FBE, double %2009)
  %2011 = tail call double @llvm.fmuladd.f64(double %420, double 0xBFC5EA083165C4F6, double %2010)
  %2012 = tail call double @llvm.fmuladd.f64(double %422, double 0x3FD4A299D1E97012, double %2011)
  %2013 = tail call double @llvm.fmuladd.f64(double %424, double 0x400E488CB8C1EA78, double %2012)
  %2014 = tail call double @llvm.fmuladd.f64(double %426, double 0x3C70F876CCDF6CD9, double %2013)
  %2015 = tail call double @llvm.fmuladd.f64(double %428, double 0x3C90F876CCDF6CD9, double %2014)
  %2016 = tail call double @llvm.fmuladd.f64(double %430, double 0x3C86A09E667F3BCC, double %2015)
  %2017 = tail call double @llvm.fmuladd.f64(double %432, double 0xBCC3CC8A99AF5452, double %2016)
  %2018 = tail call double @llvm.fmuladd.f64(double %434, double 0x3C70F876CCDF6CD9, double %2017)
  %2019 = tail call double @llvm.fmuladd.f64(double %436, double 0x3C86A09E667F3BCC, double %2018)
  %2020 = tail call double @llvm.fmuladd.f64(double %438, double 0x3C76A09E667F3BCD, double %2019)
  %2021 = tail call double @llvm.fmuladd.f64(double %440, double 0x3C96A09E667F3BCC, double %2020)
  %gep10423 = getelementptr double, ptr %invariant.gep10422, i64 %indvars.iv
  store double %2021, ptr %gep10423, align 8, !tbaa !5
  %2022 = fmul double %1642, 0x3C96000000000000
  %2023 = tail call double @llvm.fmuladd.f64(double %1641, double 0x3C7FFFFFFFFFFFFF, double %2022)
  %2024 = tail call double @llvm.fmuladd.f64(double %1645, double 0xBC78000000000002, double %2023)
  %2025 = tail call double @llvm.fmuladd.f64(double %1647, double 0x3CB8000000000001, double %2024)
  %2026 = tail call double @llvm.fmuladd.f64(double %1649, double 0xBFACD49071EC601E, double %2025)
  %2027 = tail call double @llvm.fmuladd.f64(double %1651, double 0x3FCEFDC8894D07FE, double %2026)
  %2028 = tail call double @llvm.fmuladd.f64(double %1653, double 0xBFDD2EB9CCB3BE36, double %2027)
  %2029 = tail call double @llvm.fmuladd.f64(double %1655, double 0xC01569E165D7940C, double %2028)
  %2030 = tail call double @llvm.fmuladd.f64(double %1657, double 0x3C9C000000000000, double %2029)
  %2031 = tail call double @llvm.fmuladd.f64(double %1659, double 0xBC90000000000000, double %2030)
  %2032 = tail call double @llvm.fmuladd.f64(double %1661, double 0x3C90000000000000, double %2031)
  %2033 = tail call double @llvm.fmuladd.f64(double %1663, double 0xBCC4800000000000, double %2032)
  %2034 = tail call double @llvm.fmuladd.f64(double %1665, double 0x3C88000000000000, double %2033)
  %2035 = tail call double @llvm.fmuladd.f64(double %1667, double 0xBC78000000000002, double %2034)
  %2036 = tail call double @llvm.fmuladd.f64(double %1669, double 0x3CA2FFFFFFFFFFFE, double %2035)
  %2037 = tail call double @llvm.fmuladd.f64(double %1671, double 0xBCA0000000000002, double %2036)
  %2038 = tail call double @llvm.fmuladd.f64(double %410, double 0x3CB9DA84FC1C5FD3, double %2037)
  %2039 = tail call double @llvm.fmuladd.f64(double %414, double 0xBC70F876CCDF6CD9, double %2038)
  %2040 = tail call double @llvm.fmuladd.f64(double %416, double 0xBC66A09E667F3BCC, double %2039)
  %2041 = tail call double @llvm.fmuladd.f64(double %418, double 0x400E488CB8C1EA66, double %2040)
  %2042 = tail call double @llvm.fmuladd.f64(double %420, double 0x3FD4A299D1E9700C, double %2041)
  %2043 = tail call double @llvm.fmuladd.f64(double %422, double 0xBFC5EA083165C4F9, double %2042)
  %2044 = tail call double @llvm.fmuladd.f64(double %424, double 0x3FA462D8D66D7F7F, double %2043)
  %2045 = tail call double @llvm.fmuladd.f64(double %426, double 0xBCABEE4386850DD1, double %2044)
  %2046 = tail call double @llvm.fmuladd.f64(double %428, double 0xBC66A09E667F3BCC, double %2045)
  %2047 = tail call double @llvm.fmuladd.f64(double %430, double 0xBC76A09E667F3BCD, double %2046)
  %2048 = tail call double @llvm.fmuladd.f64(double %432, double 0x3C90F876CCDF6CD9, double %2047)
  %2049 = tail call double @llvm.fmuladd.f64(double %434, double 0x3CA02CD13B44F3C0, double %2048)
  %2050 = tail call double @llvm.fmuladd.f64(double %438, double 0x3C70F876CCDF6CD9, double %2049)
  %2051 = tail call double @llvm.fmuladd.f64(double %440, double 0xBC66A09E667F3BCC, double %2050)
  %gep10425 = getelementptr double, ptr %invariant.gep10424, i64 %indvars.iv
  store double %2051, ptr %gep10425, align 8, !tbaa !5
  %2052 = fmul double %1642, 0xBC78000000000002
  %2053 = tail call double @llvm.fmuladd.f64(double %1641, double 0x3CB8000000000001, double %2052)
  %2054 = tail call double @llvm.fmuladd.f64(double %1645, double 0x3C92000000000000, double %2053)
  %2055 = tail call double @llvm.fmuladd.f64(double %1647, double 0xBC88000000000000, double %2054)
  %2056 = tail call double @llvm.fmuladd.f64(double %1649, double 0xC01569E165D79415, double %2055)
  %2057 = tail call double @llvm.fmuladd.f64(double %1651, double 0xBFDD2EB9CCB3BDB8, double %2056)
  %2058 = tail call double @llvm.fmuladd.f64(double %1653, double 0x3FCEFDC8894D07B6, double %2057)
  %2059 = tail call double @llvm.fmuladd.f64(double %1655, double 0xBFACD49071EC5FCE, double %2058)
  %2060 = tail call double @llvm.fmuladd.f64(double %1657, double 0xBCA2000000000000, double %2059)
  %2061 = tail call double @llvm.fmuladd.f64(double %1659, double 0x3CA8000000000001, double %2060)
  %2062 = tail call double @llvm.fmuladd.f64(double %1661, double 0xBC90000000000000, double %2061)
  %2063 = tail call double @llvm.fmuladd.f64(double %1663, double 0xBCA9FFFFFFFFFFFE, double %2062)
  %2064 = tail call double @llvm.fmuladd.f64(double %1667, double 0x3CA2FFFFFFFFFFFE, double %2063)
  %2065 = tail call double @llvm.fmuladd.f64(double %1669, double 0xBC92000000000000, double %2064)
  %2066 = tail call double @llvm.fmuladd.f64(double %1671, double 0x3C7FFFFFFFFFFFFF, double %2065)
  %2067 = tail call double @llvm.fmuladd.f64(double %410, double 0x3C93F9CBD67C52CA, double %2066)
  %2068 = tail call double @llvm.fmuladd.f64(double %412, double 0x3C76A09E667F3BCD, double %2067)
  %2069 = tail call double @llvm.fmuladd.f64(double %414, double 0xBC8F1CD9CCEEF238, double %2068)
  %2070 = tail call double @llvm.fmuladd.f64(double %416, double 0xBC8C48C6001F0AC0, double %2069)
  %2071 = tail call double @llvm.fmuladd.f64(double %418, double 0xBFD039FE04F71643, double %2070)
  %2072 = tail call double @llvm.fmuladd.f64(double %420, double 0xBFE30958FBF81244, double %2071)
  %2073 = tail call double @llvm.fmuladd.f64(double %422, double 0xBFE30958FBF81231, double %2072)
  %2074 = tail call double @llvm.fmuladd.f64(double %424, double 0xBFD039FE04F71638, double %2073)
  %2075 = tail call double @llvm.fmuladd.f64(double %426, double 0x3C9CFDCAF353049B, double %2074)
  %2076 = tail call double @llvm.fmuladd.f64(double %428, double 0xBC80F876CCDF6CD9, double %2075)
  %2077 = tail call double @llvm.fmuladd.f64(double %430, double 0x3C90F876CCDF6CD9, double %2076)
  %2078 = tail call double @llvm.fmuladd.f64(double %432, double 0x3CA3CC8A99AF5452, double %2077)
  %2079 = tail call double @llvm.fmuladd.f64(double %434, double 0xBC8152F9467969C8, double %2078)
  %2080 = tail call double @llvm.fmuladd.f64(double %436, double 0xBC76A09E667F3BCD, double %2079)
  %2081 = tail call double @llvm.fmuladd.f64(double %438, double 0xBC926280B3476096, double %2080)
  %2082 = tail call double @llvm.fmuladd.f64(double %440, double 0xBC80F876CCDF6CD9, double %2081)
  %gep10427 = getelementptr double, ptr %invariant.gep10426, i64 %indvars.iv
  store double %2082, ptr %gep10427, align 8, !tbaa !5
  %2083 = tail call double @llvm.fmuladd.f64(double %1641, double 0xBC7FFFFFFFFFFFFF, double %1964)
  %2084 = tail call double @llvm.fmuladd.f64(double %1645, double 0x3C90000000000000, double %2083)
  %2085 = tail call double @llvm.fmuladd.f64(double %1649, double 0xBFAC37F3CCE9FD18, double %2084)
  %2086 = tail call double @llvm.fmuladd.f64(double %1651, double 0xBFB4C23AD63BEF9A, double %2085)
  %2087 = tail call double @llvm.fmuladd.f64(double %1653, double 0x3FEFAD7976B5DE29, double %2086)
  %2088 = tail call double @llvm.fmuladd.f64(double %1655, double 0x3FF043C98657E812, double %2087)
  %2089 = tail call double @llvm.fmuladd.f64(double %1657, double 0x3C98000000000000, double %2088)
  %2090 = tail call double @llvm.fmuladd.f64(double %1661, double 0x3C90000000000000, double %2089)
  %2091 = tail call double @llvm.fmuladd.f64(double %1663, double 0x3CA4000000000001, double %2090)
  %2092 = tail call double @llvm.fmuladd.f64(double %1665, double 0x3C88000000000000, double %2091)
  %2093 = tail call double @llvm.fmuladd.f64(double %1667, double 0xBC70000000000001, double %2092)
  %2094 = tail call double @llvm.fmuladd.f64(double %410, double 0x3C7DB2CFE686FE7B, double %2093)
  %2095 = tail call double @llvm.fmuladd.f64(double %412, double 0x3C91AD7BC01366B7, double %2094)
  %2096 = tail call double @llvm.fmuladd.f64(double %414, double 0x3C56A09E667F3BCC, double %2095)
  %2097 = tail call double @llvm.fmuladd.f64(double %416, double 0xBC86A09E667F3BCC, double %2096)
  %2098 = tail call double @llvm.fmuladd.f64(double %418, double 0x3FD08C54FF101A10, double %2097)
  %2099 = tail call double @llvm.fmuladd.f64(double %420, double 0x4007001BD846D0B2, double %2098)
  %2100 = tail call double @llvm.fmuladd.f64(double %422, double 0x3FD0C7817D9C3137, double %2099)
  %2101 = tail call double @llvm.fmuladd.f64(double %424, double 0xBFB8DF388696F54E, double %2100)
  %2102 = tail call double @llvm.fmuladd.f64(double %426, double 0xBC93CC8A99AF5452, double %2101)
  %2103 = tail call double @llvm.fmuladd.f64(double %428, double 0xBCA6A09E667F3BCC, double %2102)
  %2104 = tail call double @llvm.fmuladd.f64(double %430, double 0x3C76A09E667F3BCD, double %2103)
  %2105 = tail call double @llvm.fmuladd.f64(double %432, double 0x3C86A09E667F3BCC, double %2104)
  %2106 = tail call double @llvm.fmuladd.f64(double %434, double 0xBC8A29B726831D24, double %2105)
  %2107 = tail call double @llvm.fmuladd.f64(double %436, double 0x3C73CC8A99AF5453, double %2106)
  %2108 = tail call double @llvm.fmuladd.f64(double %438, double 0xBC56A09E667F3BCC, double %2107)
  %2109 = tail call double @llvm.fmuladd.f64(double %440, double 0xBC80F876CCDF6CD9, double %2108)
  %gep10429 = getelementptr double, ptr %invariant.gep10428, i64 %indvars.iv
  store double %2109, ptr %gep10429, align 8, !tbaa !5
  %2110 = fmul double %1645, 0x3C90000000000000
  %2111 = tail call double @llvm.fmuladd.f64(double %1641, double 0xBC7FFFFFFFFFFFFF, double %2110)
  %2112 = tail call double @llvm.fmuladd.f64(double %1647, double 0xBC7FFFFFFFFFFFFF, double %2111)
  %2113 = tail call double @llvm.fmuladd.f64(double %1649, double 0x3FF043C98657E812, double %2112)
  %2114 = tail call double @llvm.fmuladd.f64(double %1651, double 0x3FEFAD7976B5DE25, double %2113)
  %2115 = tail call double @llvm.fmuladd.f64(double %1653, double 0xBFB4C23AD63BEF6E, double %2114)
  %2116 = tail call double @llvm.fmuladd.f64(double %1655, double 0xBFAC37F3CCE9FD3C, double %2115)
  %2117 = tail call double @llvm.fmuladd.f64(double %1657, double 0x3CAC000000000000, double %2116)
  %2118 = tail call double @llvm.fmuladd.f64(double %1659, double 0x3CA0000000000002, double %2117)
  %2119 = tail call double @llvm.fmuladd.f64(double %1661, double 0xBC7FFFFFFFFFFFFF, double %2118)
  %2120 = tail call double @llvm.fmuladd.f64(double %1663, double 0x3C90000000000000, double %2119)
  %2121 = tail call double @llvm.fmuladd.f64(double %1665, double 0x3C7FFFFFFFFFFFFF, double %2120)
  %2122 = tail call double @llvm.fmuladd.f64(double %1667, double 0xBC90000000000000, double %2121)
  %2123 = tail call double @llvm.fmuladd.f64(double %1671, double 0x3C88000000000000, double %2122)
  %2124 = tail call double @llvm.fmuladd.f64(double %410, double 0x3C726280B3476096, double %2123)
  %2125 = tail call double @llvm.fmuladd.f64(double %412, double 0x3C46A09E667F3BCB, double %2124)
  %2126 = tail call double @llvm.fmuladd.f64(double %414, double 0xBC9536948017480F, double %2125)
  %2127 = tail call double @llvm.fmuladd.f64(double %416, double 0xBC86A09E667F3BCC, double %2126)
  %2128 = tail call double @llvm.fmuladd.f64(double %418, double 0xBF9102DA00B18A68, double %2127)
  %2129 = tail call double @llvm.fmuladd.f64(double %420, double 0x3FCD5953692F6EA6, double %2128)
  %2130 = tail call double @llvm.fmuladd.f64(double %422, double 0x3FE3C4545BCF030C, double %2129)
  %2131 = tail call double @llvm.fmuladd.f64(double %424, double 0x3FD6A4D32EB1F710, double %2130)
  %2132 = tail call double @llvm.fmuladd.f64(double %426, double 0xBC8C48C6001F0AC0, double %2131)
  %2133 = tail call double @llvm.fmuladd.f64(double %428, double 0xBC96A09E667F3BCC, double %2132)
  %2134 = tail call double @llvm.fmuladd.f64(double %430, double 0xBCA974B2334F2346, double %2133)
  %2135 = tail call double @llvm.fmuladd.f64(double %432, double 0xBC96A09E667F3BCC, double %2134)
  %2136 = tail call double @llvm.fmuladd.f64(double %434, double 0xBC84818F8CE34E32, double %2135)
  %2137 = tail call double @llvm.fmuladd.f64(double %436, double 0x3C73CC8A99AF5453, double %2136)
  %2138 = tail call double @llvm.fmuladd.f64(double %438, double 0x3C83CC8A99AF5451, double %2137)
  %2139 = tail call double @llvm.fmuladd.f64(double %440, double 0xBC76A09E667F3BCD, double %2138)
  %gep10431 = getelementptr double, ptr %invariant.gep10430, i64 %indvars.iv
  store double %2139, ptr %gep10431, align 8, !tbaa !5
  %2140 = fmul double %1642, 0xBCA1000000000001
  %2141 = tail call double @llvm.fmuladd.f64(double %1641, double 0xBC8C000000000000, double %2140)
  %2142 = tail call double @llvm.fmuladd.f64(double %1645, double 0x3CA0000000000002, double %2141)
  %2143 = tail call double @llvm.fmuladd.f64(double %1647, double 0x3C70000000000001, double %2142)
  %2144 = tail call double @llvm.fmuladd.f64(double %1649, double 0xBFD7671404765120, double %2143)
  %2145 = tail call double @llvm.fmuladd.f64(double %1651, double 0xC01043858A1F5996, double %2144)
  %2146 = tail call double @llvm.fmuladd.f64(double %1653, double 0xBFD7BAC3393ADDD8, double %2145)
  %2147 = tail call double @llvm.fmuladd.f64(double %1655, double 0x3FC1964E14FA3C65, double %2146)
  %2148 = tail call double @llvm.fmuladd.f64(double %1657, double 0x3C70000000000001, double %2147)
  %2149 = tail call double @llvm.fmuladd.f64(double %1659, double 0xBCB3000000000000, double %2148)
  %2150 = tail call double @llvm.fmuladd.f64(double %1661, double 0x3C94000000000000, double %2149)
  %2151 = tail call double @llvm.fmuladd.f64(double %1665, double 0xBC92000000000000, double %2150)
  %2152 = tail call double @llvm.fmuladd.f64(double %1667, double 0x3C60000000000000, double %2151)
  %2153 = tail call double @llvm.fmuladd.f64(double %1669, double 0xBC90000000000000, double %2152)
  %2154 = tail call double @llvm.fmuladd.f64(double %1671, double 0x3C70000000000001, double %2153)
  %2155 = tail call double @llvm.fmuladd.f64(double %410, double 0xBCA0D685DF45AE00, double %2154)
  %2156 = tail call double @llvm.fmuladd.f64(double %412, double 0x3C56A09E667F3BCC, double %2155)
  %2157 = tail call double @llvm.fmuladd.f64(double %414, double 0xBC46A09E667F3BCB, double %2156)
  %2158 = tail call double @llvm.fmuladd.f64(double %416, double 0x3C76A09E667F3BCD, double %2157)
  %2159 = tail call double @llvm.fmuladd.f64(double %418, double 0x3FD6A4D32EB1F71D, double %2158)
  %2160 = tail call double @llvm.fmuladd.f64(double %420, double 0x3FE3C4545BCF030E, double %2159)
  %2161 = tail call double @llvm.fmuladd.f64(double %422, double 0x3FCD5953692F6EA6, double %2160)
  %2162 = tail call double @llvm.fmuladd.f64(double %424, double 0xBF9102DA00B18A34, double %2161)
  %2163 = tail call double @llvm.fmuladd.f64(double %426, double 0xBCA16999E4DFE905, double %2162)
  %2164 = tail call double @llvm.fmuladd.f64(double %428, double 0xBCA91A2FB9B52657, double %2163)
  %2165 = tail call double @llvm.fmuladd.f64(double %430, double 0xBC9974B2334F2346, double %2164)
  %2166 = tail call double @llvm.fmuladd.f64(double %432, double 0x3C80F876CCDF6CD9, double %2165)
  %2167 = tail call double @llvm.fmuladd.f64(double %434, double 0x3C759116F9B144FE, double %2166)
  %2168 = tail call double @llvm.fmuladd.f64(double %436, double 0x3C70F876CCDF6CD9, double %2167)
  %2169 = tail call double @llvm.fmuladd.f64(double %438, double 0xBC73CC8A99AF5453, double %2168)
  %2170 = tail call double @llvm.fmuladd.f64(double %440, double 0xBC8C48C6001F0AC0, double %2169)
  %gep10433 = getelementptr double, ptr %invariant.gep10432, i64 %indvars.iv
  store double %2170, ptr %gep10433, align 8, !tbaa !5
  %2171 = fmul double %1642, 0x3C89FFFFFFFFFFFF
  %2172 = tail call double @llvm.fmuladd.f64(double %1641, double 0x3C7C000000000000, double %2171)
  %2173 = tail call double @llvm.fmuladd.f64(double %1645, double 0x3C91000000000000, double %2172)
  %2174 = tail call double @llvm.fmuladd.f64(double %1647, double 0xBC95000000000000, double %2173)
  %2175 = tail call double @llvm.fmuladd.f64(double %1649, double 0x3FC1964E14FA3C53, double %2174)
  %2176 = tail call double @llvm.fmuladd.f64(double %1651, double 0xBFD7BAC3393ADDC4, double %2175)
  %2177 = tail call double @llvm.fmuladd.f64(double %1653, double 0xC01043858A1F5997, double %2176)
  %2178 = tail call double @llvm.fmuladd.f64(double %1655, double 0xBFD7671404765136, double %2177)
  %2179 = tail call double @llvm.fmuladd.f64(double %1657, double 0x3C94000000000000, double %2178)
  %2180 = tail call double @llvm.fmuladd.f64(double %1659, double 0xBCA4000000000001, double %2179)
  %2181 = tail call double @llvm.fmuladd.f64(double %1661, double 0x3C7FFFFFFFFFFFFF, double %2180)
  %2182 = tail call double @llvm.fmuladd.f64(double %1663, double 0x3CA2000000000000, double %2181)
  %2183 = tail call double @llvm.fmuladd.f64(double %1665, double 0xBC93000000000000, double %2182)
  %2184 = tail call double @llvm.fmuladd.f64(double %1667, double 0xBC89FFFFFFFFFFFF, double %2183)
  %2185 = tail call double @llvm.fmuladd.f64(double %1669, double 0xBC91000000000000, double %2184)
  %2186 = tail call double @llvm.fmuladd.f64(double %1671, double 0xBC67FFFFFFFFFFFE, double %2185)
  %2187 = tail call double @llvm.fmuladd.f64(double %410, double 0x3C7F775C4688EF29, double %2186)
  %2188 = tail call double @llvm.fmuladd.f64(double %412, double 0xBC8C48C6001F0AC0, double %2187)
  %2189 = tail call double @llvm.fmuladd.f64(double %414, double 0xBC80F876CCDF6CD9, double %2188)
  %2190 = tail call double @llvm.fmuladd.f64(double %416, double 0x3C76A09E667F3BCD, double %2189)
  %2191 = tail call double @llvm.fmuladd.f64(double %418, double 0xBFE7007BFD8FD85D, double %2190)
  %2192 = tail call double @llvm.fmuladd.f64(double %420, double 0xBFE66643AEED3708, double %2191)
  %2193 = tail call double @llvm.fmuladd.f64(double %422, double 0x3FAD5B74B5F10E9B, double %2192)
  %2194 = tail call double @llvm.fmuladd.f64(double %424, double 0x3FA3F41B0E87BFB6, double %2193)
  %2195 = tail call double @llvm.fmuladd.f64(double %426, double 0xBC9125B809AC6B51, double %2194)
  %2196 = tail call double @llvm.fmuladd.f64(double %428, double 0x3C826280B3476096, double %2195)
  %2197 = tail call double @llvm.fmuladd.f64(double %430, double 0xBC90F876CCDF6CD9, double %2196)
  %2198 = tail call double @llvm.fmuladd.f64(double %432, double 0xBC80F876CCDF6CD9, double %2197)
  %2199 = tail call double @llvm.fmuladd.f64(double %434, double 0x3C6B93C10CEB10E3, double %2198)
  %2200 = tail call double @llvm.fmuladd.f64(double %436, double 0x3C8C48C6001F0AC0, double %2199)
  %2201 = tail call double @llvm.fmuladd.f64(double %438, double 0xBC66A09E667F3BCC, double %2200)
  %2202 = tail call double @llvm.fmuladd.f64(double %440, double 0xBC8C48C6001F0AC0, double %2201)
  %gep10435 = getelementptr double, ptr %invariant.gep10434, i64 %indvars.iv
  store double %2202, ptr %gep10435, align 8, !tbaa !5
  %2203 = fmul double %1645, 0xBC7FFFFFFFFFFFFF
  %2204 = tail call double @llvm.fmuladd.f64(double %1642, double 0xBC7FFFFFFFFFFFFF, double %2203)
  %2205 = tail call double @llvm.fmuladd.f64(double %1649, double 0xBFE002F9665DF3D9, double %2204)
  %2206 = tail call double @llvm.fmuladd.f64(double %1651, double 0xBFEBF462FB348EF6, double %2205)
  %2207 = tail call double @llvm.fmuladd.f64(double %1653, double 0xBFD4C0B9406BCBCC, double %2206)
  %2208 = tail call double @llvm.fmuladd.f64(double %1655, double 0x3F980EB0AE1D4750, double %2207)
  %2209 = tail call double @llvm.fmuladd.f64(double %1657, double 0x3CA8000000000001, double %2208)
  %2210 = tail call double @llvm.fmuladd.f64(double %1659, double 0x3CA8000000000001, double %2209)
  %2211 = tail call double @llvm.fmuladd.f64(double %1661, double 0x3CA8000000000001, double %2210)
  %2212 = tail call double @llvm.fmuladd.f64(double %1663, double 0xBC90000000000000, double %2211)
  %2213 = tail call double @llvm.fmuladd.f64(double %1665, double 0xBC90000000000000, double %2212)
  %2214 = tail call double @llvm.fmuladd.f64(double %1667, double 0x3C98000000000000, double %2213)
  %2215 = tail call double @llvm.fmuladd.f64(double %1669, double 0x3C90000000000000, double %2214)
  %2216 = tail call double @llvm.fmuladd.f64(double %1671, double 0x3C88000000000000, double %2215)
  %2217 = tail call double @llvm.fmuladd.f64(double %410, double 0x3C7ADEBC19B71701, double %2216)
  %2218 = tail call double @llvm.fmuladd.f64(double %412, double 0xBC90F876CCDF6CD9, double %2217)
  %2219 = tail call double @llvm.fmuladd.f64(double %414, double 0x3C9C48C6001F0ABF, double %2218)
  %2220 = tail call double @llvm.fmuladd.f64(double %418, double 0x3FA3F41B0E87BFE9, double %2219)
  %2221 = tail call double @llvm.fmuladd.f64(double %420, double 0x3FAD5B74B5F10E92, double %2220)
  %2222 = tail call double @llvm.fmuladd.f64(double %422, double 0xBFE66643AEED36FA, double %2221)
  %2223 = tail call double @llvm.fmuladd.f64(double %424, double 0xBFE7007BFD8FD85D, double %2222)
  %2224 = tail call double @llvm.fmuladd.f64(double %426, double 0xBC70F876CCDF6CD9, double %2223)
  %2225 = tail call double @llvm.fmuladd.f64(double %428, double 0xBC96A09E667F3BCC, double %2224)
  %2226 = tail call double @llvm.fmuladd.f64(double %430, double 0x3CA3CC8A99AF5452, double %2225)
  %2227 = tail call double @llvm.fmuladd.f64(double %432, double 0x3C86A09E667F3BCC, double %2226)
  %2228 = tail call double @llvm.fmuladd.f64(double %434, double 0x3C7DB2CFE686FE7B, double %2227)
  %2229 = tail call double @llvm.fmuladd.f64(double %436, double 0xBC76A09E667F3BCD, double %2228)
  %2230 = tail call double @llvm.fmuladd.f64(double %438, double 0xBC90F876CCDF6CD9, double %2229)
  %gep10437 = getelementptr double, ptr %invariant.gep10436, i64 %indvars.iv
  store double %2230, ptr %gep10437, align 8, !tbaa !5
  %2231 = fmul double %1642, 0xBC7FFFFFFFFFFFFF
  %2232 = tail call double @llvm.fmuladd.f64(double %1641, double 0xBC7FFFFFFFFFFFFF, double %2231)
  %2233 = tail call double @llvm.fmuladd.f64(double %1645, double 0xBC7FFFFFFFFFFFFF, double %2232)
  %2234 = tail call double @llvm.fmuladd.f64(double %1649, double 0x3F980EB0AE1D4741, double %2233)
  %2235 = tail call double @llvm.fmuladd.f64(double %1651, double 0xBFD4C0B9406BCBCC, double %2234)
  %2236 = tail call double @llvm.fmuladd.f64(double %1653, double 0xBFEBF462FB348EF6, double %2235)
  %2237 = tail call double @llvm.fmuladd.f64(double %1655, double 0xBFE002F9665DF3D9, double %2236)
  %2238 = tail call double @llvm.fmuladd.f64(double %1657, double 0xBC90000000000000, double %2237)
  %2239 = tail call double @llvm.fmuladd.f64(double %1659, double 0x3CA8000000000001, double %2238)
  %2240 = tail call double @llvm.fmuladd.f64(double %1661, double 0x3CA8000000000001, double %2239)
  %2241 = tail call double @llvm.fmuladd.f64(double %1663, double 0x3CA8000000000001, double %2240)
  %2242 = tail call double @llvm.fmuladd.f64(double %1665, double 0x3C90000000000000, double %2241)
  %2243 = tail call double @llvm.fmuladd.f64(double %1667, double 0x3C90000000000000, double %2242)
  %2244 = tail call double @llvm.fmuladd.f64(double %1669, double 0x3C98000000000000, double %2243)
  %2245 = tail call double @llvm.fmuladd.f64(double %1671, double 0xBC90000000000000, double %2244)
  %2246 = tail call double @llvm.fmuladd.f64(double %410, double 0xBC9152F9467969C8, double %2245)
  %2247 = tail call double @llvm.fmuladd.f64(double %412, double 0x3C90F876CCDF6CD9, double %2246)
  %2248 = tail call double @llvm.fmuladd.f64(double %414, double 0x3C9974B2334F2346, double %2247)
  %2249 = tail call double @llvm.fmuladd.f64(double %416, double 0x3C86A09E667F3BCC, double %2248)
  %2250 = tail call double @llvm.fmuladd.f64(double %418, double 0xBFB8DF388696F554, double %2249)
  %2251 = tail call double @llvm.fmuladd.f64(double %420, double 0x3FD0C7817D9C3121, double %2250)
  %2252 = tail call double @llvm.fmuladd.f64(double %422, double 0x4007001BD846D0AE, double %2251)
  %2253 = tail call double @llvm.fmuladd.f64(double %424, double 0x3FD08C54FF1019FC, double %2252)
  %2254 = tail call double @llvm.fmuladd.f64(double %426, double 0x3C8974B2334F2346, double %2253)
  %2255 = tail call double @llvm.fmuladd.f64(double %428, double 0xBC86A09E667F3BCC, double %2254)
  %2256 = tail call double @llvm.fmuladd.f64(double %430, double 0xBC90F876CCDF6CD9, double %2255)
  %2257 = tail call double @llvm.fmuladd.f64(double %432, double 0xBC86A09E667F3BCC, double %2256)
  %2258 = tail call double @llvm.fmuladd.f64(double %434, double 0xBC75369480174810, double %2257)
  %2259 = tail call double @llvm.fmuladd.f64(double %436, double 0x3C86A09E667F3BCC, double %2258)
  %2260 = tail call double @llvm.fmuladd.f64(double %438, double 0x3C93CC8A99AF5452, double %2259)
  %2261 = tail call double @llvm.fmuladd.f64(double %440, double 0x3C76A09E667F3BCD, double %2260)
  %gep10439 = getelementptr double, ptr %invariant.gep10438, i64 %indvars.iv
  store double %2261, ptr %gep10439, align 8, !tbaa !5
  %2262 = fmul double %1642, 0xBC94000000000000
  %2263 = tail call double @llvm.fmuladd.f64(double %1641, double 0x3C60000000000000, double %2262)
  %2264 = tail call double @llvm.fmuladd.f64(double %1645, double 0xBC90000000000000, double %2263)
  %2265 = tail call double @llvm.fmuladd.f64(double %1647, double 0x3C60000000000000, double %2264)
  %2266 = tail call double @llvm.fmuladd.f64(double %1649, double 0x3C70000000000001, double %2265)
  %2267 = tail call double @llvm.fmuladd.f64(double %1651, double 0x3CA0000000000002, double %2266)
  %2268 = tail call double @llvm.fmuladd.f64(double %1653, double 0x3C90000000000000, double %2267)
  %2269 = tail call double @llvm.fmuladd.f64(double %1655, double 0x3C70000000000001, double %2268)
  %2270 = tail call double @llvm.fmuladd.f64(double %1657, double 0x3FA789B66AF4F457, double %2269)
  %2271 = tail call double @llvm.fmuladd.f64(double %1659, double 0x3FEC2894019C8AD4, double %2270)
  %2272 = tail call double @llvm.fmuladd.f64(double %1661, double 0x3FEC2894019C8AC6, double %2271)
  %2273 = tail call double @llvm.fmuladd.f64(double %1663, double 0x3FA789B66AF4F575, double %2272)
  %2274 = tail call double @llvm.fmuladd.f64(double %1665, double 0xBC60000000000000, double %2273)
  %2275 = tail call double @llvm.fmuladd.f64(double %1667, double 0x3C70000000000001, double %2274)
  %2276 = tail call double @llvm.fmuladd.f64(double %1671, double 0xBC84000000000000, double %2275)
  %2277 = tail call double @llvm.fmuladd.f64(double %410, double 0xBC50F876CCDF6CD8, double %2276)
  %2278 = tail call double @llvm.fmuladd.f64(double %412, double 0x3C7F1CD9CCEEF238, double %2277)
  %2279 = tail call double @llvm.fmuladd.f64(double %414, double 0xBC66A09E667F3BCC, double %2278)
  %2280 = tail call double @llvm.fmuladd.f64(double %416, double 0x3C76A09E667F3BCD, double %2279)
  %2281 = tail call double @llvm.fmuladd.f64(double %418, double 0xBC9207FE39AD63A7, double %2280)
  %2282 = tail call double @llvm.fmuladd.f64(double %420, double 0xBC83CC8A99AF5451, double %2281)
  %2283 = tail call double @llvm.fmuladd.f64(double %424, double 0xBC90F876CCDF6CD9, double %2282)
  %2284 = tail call double @llvm.fmuladd.f64(double %426, double 0xBFA0A4D27CF86DCE, double %2283)
  %2285 = tail call double @llvm.fmuladd.f64(double %428, double 0xBFE3E93C07AFC382, double %2284)
  %2286 = tail call double @llvm.fmuladd.f64(double %430, double 0xBFE3E93C07AFC37F, double %2285)
  %2287 = tail call double @llvm.fmuladd.f64(double %432, double 0xBFA0A4D27CF86DB4, double %2286)
  %2288 = tail call double @llvm.fmuladd.f64(double %434, double 0xBC84818F8CE34E32, double %2287)
  %2289 = tail call double @llvm.fmuladd.f64(double %436, double 0x3C6C48C6001F0ABE, double %2288)
  %2290 = tail call double @llvm.fmuladd.f64(double %438, double 0xBC66A09E667F3BCC, double %2289)
  %2291 = tail call double @llvm.fmuladd.f64(double %440, double 0xBC76A09E667F3BCD, double %2290)
  %gep10441 = getelementptr double, ptr %invariant.gep10440, i64 %indvars.iv
  store double %2291, ptr %gep10441, align 8, !tbaa !5
  %2292 = tail call double @llvm.fmuladd.f64(double %1653, double 0xBCA0000000000002, double %2112)
  %2293 = tail call double @llvm.fmuladd.f64(double %1655, double 0x3C90000000000000, double %2292)
  %2294 = tail call double @llvm.fmuladd.f64(double %1657, double 0x3FD6F2A1D7A492C4, double %2293)
  %2295 = tail call double @llvm.fmuladd.f64(double %1659, double 0x3FEAEBF44A8E7A95, double %2294)
  %2296 = tail call double @llvm.fmuladd.f64(double %1661, double 0x3FEAEBF44A8E7A9A, double %2295)
  %2297 = tail call double @llvm.fmuladd.f64(double %1663, double 0x3FD6F2A1D7A492D5, double %2296)
  %2298 = tail call double @llvm.fmuladd.f64(double %1667, double 0x3C90000000000000, double %2297)
  %2299 = tail call double @llvm.fmuladd.f64(double %1669, double 0x3CB3FFFFFFFFFFFF, double %2298)
  %2300 = tail call double @llvm.fmuladd.f64(double %1671, double 0x3C90000000000000, double %2299)
  %2301 = tail call double @llvm.fmuladd.f64(double %410, double 0x3C70F876CCDF6CD9, double %2300)
  %2302 = tail call double @llvm.fmuladd.f64(double %412, double 0x3C86A09E667F3BCC, double %2301)
  %2303 = tail call double @llvm.fmuladd.f64(double %414, double 0x3C76A09E667F3BCD, double %2302)
  %2304 = tail call double @llvm.fmuladd.f64(double %416, double 0x3C96A09E667F3BCC, double %2303)
  %2305 = tail call double @llvm.fmuladd.f64(double %418, double 0x3C70F876CCDF6CD9, double %2304)
  %2306 = tail call double @llvm.fmuladd.f64(double %420, double 0x3C90F876CCDF6CD9, double %2305)
  %2307 = tail call double @llvm.fmuladd.f64(double %422, double 0x3C86A09E667F3BCC, double %2306)
  %2308 = tail call double @llvm.fmuladd.f64(double %424, double 0xBCC3CC8A99AF5452, double %2307)
  %2309 = tail call double @llvm.fmuladd.f64(double %426, double 0x3FA462D8D66D7FBE, double %2308)
  %2310 = tail call double @llvm.fmuladd.f64(double %428, double 0xBFC5EA083165C4F6, double %2309)
  %2311 = tail call double @llvm.fmuladd.f64(double %430, double 0x3FD4A299D1E97012, double %2310)
  %2312 = tail call double @llvm.fmuladd.f64(double %432, double 0x400E488CB8C1EA78, double %2311)
  %2313 = tail call double @llvm.fmuladd.f64(double %434, double 0xBC80F876CCDF6CD9, double %2312)
  %2314 = tail call double @llvm.fmuladd.f64(double %436, double 0xBC76A09E667F3BCD, double %2313)
  %2315 = tail call double @llvm.fmuladd.f64(double %438, double 0x3C90F876CCDF6CD9, double %2314)
  %2316 = tail call double @llvm.fmuladd.f64(double %440, double 0x3CB0F876CCDF6CD8, double %2315)
  %gep10443 = getelementptr double, ptr %invariant.gep10442, i64 %indvars.iv
  store double %2316, ptr %gep10443, align 8, !tbaa !5
  %2317 = tail call double @llvm.fmuladd.f64(double %1641, double 0x3C88000000000000, double %2052)
  %2318 = tail call double @llvm.fmuladd.f64(double %1645, double 0x3CA2FFFFFFFFFFFE, double %2317)
  %2319 = tail call double @llvm.fmuladd.f64(double %1647, double 0xBCA0000000000002, double %2318)
  %2320 = tail call double @llvm.fmuladd.f64(double %1649, double 0x3C9C000000000000, double %2319)
  %2321 = tail call double @llvm.fmuladd.f64(double %1651, double 0xBC90000000000000, double %2320)
  %2322 = tail call double @llvm.fmuladd.f64(double %1653, double 0x3C90000000000000, double %2321)
  %2323 = tail call double @llvm.fmuladd.f64(double %1655, double 0xBCC4800000000000, double %2322)
  %2324 = tail call double @llvm.fmuladd.f64(double %1657, double 0xBFACD49071EC601E, double %2323)
  %2325 = tail call double @llvm.fmuladd.f64(double %1659, double 0x3FCEFDC8894D07FE, double %2324)
  %2326 = tail call double @llvm.fmuladd.f64(double %1661, double 0xBFDD2EB9CCB3BE36, double %2325)
  %2327 = tail call double @llvm.fmuladd.f64(double %1663, double 0xC01569E165D7940C, double %2326)
  %2328 = tail call double @llvm.fmuladd.f64(double %1665, double 0x3C7FFFFFFFFFFFFF, double %2327)
  %2329 = tail call double @llvm.fmuladd.f64(double %1667, double 0x3C96000000000000, double %2328)
  %2330 = tail call double @llvm.fmuladd.f64(double %1669, double 0xBC78000000000002, double %2329)
  %2331 = tail call double @llvm.fmuladd.f64(double %1671, double 0x3CB8000000000001, double %2330)
  %2332 = tail call double @llvm.fmuladd.f64(double %410, double 0x3CA02CD13B44F3C0, double %2331)
  %2333 = tail call double @llvm.fmuladd.f64(double %414, double 0x3C70F876CCDF6CD9, double %2332)
  %2334 = tail call double @llvm.fmuladd.f64(double %416, double 0xBC66A09E667F3BCC, double %2333)
  %2335 = tail call double @llvm.fmuladd.f64(double %418, double 0xBCABEE4386850DD1, double %2334)
  %2336 = tail call double @llvm.fmuladd.f64(double %420, double 0xBC66A09E667F3BCC, double %2335)
  %2337 = tail call double @llvm.fmuladd.f64(double %422, double 0xBC76A09E667F3BCD, double %2336)
  %2338 = tail call double @llvm.fmuladd.f64(double %424, double 0x3C90F876CCDF6CD9, double %2337)
  %2339 = tail call double @llvm.fmuladd.f64(double %426, double 0x400E488CB8C1EA66, double %2338)
  %2340 = tail call double @llvm.fmuladd.f64(double %428, double 0x3FD4A299D1E9700C, double %2339)
  %2341 = tail call double @llvm.fmuladd.f64(double %430, double 0xBFC5EA083165C4F9, double %2340)
  %2342 = tail call double @llvm.fmuladd.f64(double %432, double 0x3FA462D8D66D7F7F, double %2341)
  %2343 = tail call double @llvm.fmuladd.f64(double %434, double 0x3CB9DA84FC1C5FD3, double %2342)
  %2344 = tail call double @llvm.fmuladd.f64(double %438, double 0xBC70F876CCDF6CD9, double %2343)
  %2345 = tail call double @llvm.fmuladd.f64(double %440, double 0xBC66A09E667F3BCC, double %2344)
  %gep10445 = getelementptr double, ptr %invariant.gep10444, i64 %indvars.iv
  store double %2345, ptr %gep10445, align 8, !tbaa !5
  %2346 = fmul double %1645, 0xBC92000000000000
  %2347 = tail call double @llvm.fmuladd.f64(double %1642, double 0x3CA2FFFFFFFFFFFE, double %2346)
  %2348 = tail call double @llvm.fmuladd.f64(double %1647, double 0x3C7FFFFFFFFFFFFF, double %2347)
  %2349 = tail call double @llvm.fmuladd.f64(double %1649, double 0xBCA2000000000000, double %2348)
  %2350 = tail call double @llvm.fmuladd.f64(double %1651, double 0x3CA8000000000001, double %2349)
  %2351 = tail call double @llvm.fmuladd.f64(double %1653, double 0xBC90000000000000, double %2350)
  %2352 = tail call double @llvm.fmuladd.f64(double %1655, double 0xBCA9FFFFFFFFFFFE, double %2351)
  %2353 = tail call double @llvm.fmuladd.f64(double %1657, double 0xC01569E165D79415, double %2352)
  %2354 = tail call double @llvm.fmuladd.f64(double %1659, double 0xBFDD2EB9CCB3BDB8, double %2353)
  %2355 = tail call double @llvm.fmuladd.f64(double %1661, double 0x3FCEFDC8894D07B6, double %2354)
  %2356 = tail call double @llvm.fmuladd.f64(double %1663, double 0xBFACD49071EC5FCE, double %2355)
  %2357 = tail call double @llvm.fmuladd.f64(double %1665, double 0x3CB8000000000001, double %2356)
  %2358 = tail call double @llvm.fmuladd.f64(double %1667, double 0xBC78000000000002, double %2357)
  %2359 = tail call double @llvm.fmuladd.f64(double %1669, double 0x3C92000000000000, double %2358)
  %2360 = tail call double @llvm.fmuladd.f64(double %1671, double 0xBC88000000000000, double %2359)
  %2361 = tail call double @llvm.fmuladd.f64(double %410, double 0xBC8152F9467969C8, double %2360)
  %2362 = tail call double @llvm.fmuladd.f64(double %412, double 0xBC76A09E667F3BCD, double %2361)
  %2363 = tail call double @llvm.fmuladd.f64(double %414, double 0xBC926280B3476096, double %2362)
  %2364 = tail call double @llvm.fmuladd.f64(double %416, double 0xBC80F876CCDF6CD9, double %2363)
  %2365 = tail call double @llvm.fmuladd.f64(double %418, double 0x3C9CFDCAF353049B, double %2364)
  %2366 = tail call double @llvm.fmuladd.f64(double %420, double 0xBC80F876CCDF6CD9, double %2365)
  %2367 = tail call double @llvm.fmuladd.f64(double %422, double 0x3C90F876CCDF6CD9, double %2366)
  %2368 = tail call double @llvm.fmuladd.f64(double %424, double 0x3CA3CC8A99AF5452, double %2367)
  %2369 = tail call double @llvm.fmuladd.f64(double %426, double 0xBFD039FE04F71643, double %2368)
  %2370 = tail call double @llvm.fmuladd.f64(double %428, double 0xBFE30958FBF81244, double %2369)
  %2371 = tail call double @llvm.fmuladd.f64(double %430, double 0xBFE30958FBF81231, double %2370)
  %2372 = tail call double @llvm.fmuladd.f64(double %432, double 0xBFD039FE04F71638, double %2371)
  %2373 = tail call double @llvm.fmuladd.f64(double %434, double 0x3C93F9CBD67C52CA, double %2372)
  %2374 = tail call double @llvm.fmuladd.f64(double %436, double 0x3C76A09E667F3BCD, double %2373)
  %2375 = tail call double @llvm.fmuladd.f64(double %438, double 0xBC8F1CD9CCEEF238, double %2374)
  %2376 = tail call double @llvm.fmuladd.f64(double %440, double 0xBC8C48C6001F0AC0, double %2375)
  %gep10447 = getelementptr double, ptr %invariant.gep10446, i64 %indvars.iv
  store double %2376, ptr %gep10447, align 8, !tbaa !5
  %2377 = fmul double %1642, 0xBC70000000000001
  %2378 = tail call double @llvm.fmuladd.f64(double %1641, double 0x3C88000000000000, double %2377)
  %2379 = tail call double @llvm.fmuladd.f64(double %1649, double 0x3C98000000000000, double %2378)
  %2380 = tail call double @llvm.fmuladd.f64(double %1653, double 0x3C90000000000000, double %2379)
  %2381 = tail call double @llvm.fmuladd.f64(double %1655, double 0x3CA4000000000001, double %2380)
  %2382 = tail call double @llvm.fmuladd.f64(double %1657, double 0xBFAC37F3CCE9FD18, double %2381)
  %2383 = tail call double @llvm.fmuladd.f64(double %1659, double 0xBFB4C23AD63BEF9A, double %2382)
  %2384 = tail call double @llvm.fmuladd.f64(double %1661, double 0x3FEFAD7976B5DE29, double %2383)
  %2385 = tail call double @llvm.fmuladd.f64(double %1663, double 0x3FF043C98657E812, double %2384)
  %2386 = tail call double @llvm.fmuladd.f64(double %1665, double 0xBC7FFFFFFFFFFFFF, double %2385)
  %2387 = tail call double @llvm.fmuladd.f64(double %1667, double 0x3C70000000000001, double %2386)
  %2388 = tail call double @llvm.fmuladd.f64(double %1669, double 0x3C90000000000000, double %2387)
  %2389 = tail call double @llvm.fmuladd.f64(double %410, double 0xBC8A29B726831D24, double %2388)
  %2390 = tail call double @llvm.fmuladd.f64(double %412, double 0x3C73CC8A99AF5453, double %2389)
  %2391 = tail call double @llvm.fmuladd.f64(double %414, double 0xBC56A09E667F3BCC, double %2390)
  %2392 = tail call double @llvm.fmuladd.f64(double %416, double 0xBC80F876CCDF6CD9, double %2391)
  %2393 = tail call double @llvm.fmuladd.f64(double %418, double 0xBC93CC8A99AF5452, double %2392)
  %2394 = tail call double @llvm.fmuladd.f64(double %420, double 0xBCA6A09E667F3BCC, double %2393)
  %2395 = tail call double @llvm.fmuladd.f64(double %422, double 0x3C76A09E667F3BCD, double %2394)
  %2396 = tail call double @llvm.fmuladd.f64(double %424, double 0x3C86A09E667F3BCC, double %2395)
  %2397 = tail call double @llvm.fmuladd.f64(double %426, double 0x3FD08C54FF101A10, double %2396)
  %2398 = tail call double @llvm.fmuladd.f64(double %428, double 0x4007001BD846D0B2, double %2397)
  %2399 = tail call double @llvm.fmuladd.f64(double %430, double 0x3FD0C7817D9C3137, double %2398)
  %2400 = tail call double @llvm.fmuladd.f64(double %432, double 0xBFB8DF388696F54E, double %2399)
  %2401 = tail call double @llvm.fmuladd.f64(double %434, double 0x3C7DB2CFE686FE7B, double %2400)
  %2402 = tail call double @llvm.fmuladd.f64(double %436, double 0x3C91AD7BC01366B7, double %2401)
  %2403 = tail call double @llvm.fmuladd.f64(double %438, double 0x3C56A09E667F3BCC, double %2402)
  %2404 = tail call double @llvm.fmuladd.f64(double %440, double 0xBC86A09E667F3BCC, double %2403)
  %gep10449 = getelementptr double, ptr %invariant.gep10448, i64 %indvars.iv
  store double %2404, ptr %gep10449, align 8, !tbaa !5
  %2405 = fmul double %1642, 0xBC90000000000000
  %2406 = tail call double @llvm.fmuladd.f64(double %1641, double 0x3C7FFFFFFFFFFFFF, double %2405)
  %2407 = tail call double @llvm.fmuladd.f64(double %1647, double 0x3C88000000000000, double %2406)
  %2408 = tail call double @llvm.fmuladd.f64(double %1649, double 0x3CAC000000000000, double %2407)
  %2409 = tail call double @llvm.fmuladd.f64(double %1651, double 0x3CA0000000000002, double %2408)
  %2410 = tail call double @llvm.fmuladd.f64(double %1653, double 0xBC7FFFFFFFFFFFFF, double %2409)
  %2411 = tail call double @llvm.fmuladd.f64(double %1655, double 0x3C90000000000000, double %2410)
  %2412 = tail call double @llvm.fmuladd.f64(double %1657, double 0x3FF043C98657E812, double %2411)
  %2413 = tail call double @llvm.fmuladd.f64(double %1659, double 0x3FEFAD7976B5DE25, double %2412)
  %2414 = tail call double @llvm.fmuladd.f64(double %1661, double 0xBFB4C23AD63BEF6E, double %2413)
  %2415 = tail call double @llvm.fmuladd.f64(double %1663, double 0xBFAC37F3CCE9FD3C, double %2414)
  %2416 = tail call double @llvm.fmuladd.f64(double %1665, double 0xBC7FFFFFFFFFFFFF, double %2415)
  %2417 = tail call double @llvm.fmuladd.f64(double %1669, double 0x3C90000000000000, double %2416)
  %2418 = tail call double @llvm.fmuladd.f64(double %1671, double 0xBC7FFFFFFFFFFFFF, double %2417)
  %2419 = tail call double @llvm.fmuladd.f64(double %410, double 0xBC84818F8CE34E32, double %2418)
  %2420 = tail call double @llvm.fmuladd.f64(double %412, double 0x3C73CC8A99AF5453, double %2419)
  %2421 = tail call double @llvm.fmuladd.f64(double %414, double 0x3C83CC8A99AF5451, double %2420)
  %2422 = tail call double @llvm.fmuladd.f64(double %416, double 0xBC76A09E667F3BCD, double %2421)
  %2423 = tail call double @llvm.fmuladd.f64(double %418, double 0xBC8C48C6001F0AC0, double %2422)
  %2424 = tail call double @llvm.fmuladd.f64(double %420, double 0xBC96A09E667F3BCC, double %2423)
  %2425 = tail call double @llvm.fmuladd.f64(double %422, double 0xBCA974B2334F2346, double %2424)
  %2426 = tail call double @llvm.fmuladd.f64(double %424, double 0xBC96A09E667F3BCC, double %2425)
  %2427 = tail call double @llvm.fmuladd.f64(double %426, double 0xBF9102DA00B18A68, double %2426)
  %2428 = tail call double @llvm.fmuladd.f64(double %428, double 0x3FCD5953692F6EA6, double %2427)
  %2429 = tail call double @llvm.fmuladd.f64(double %430, double 0x3FE3C4545BCF030C, double %2428)
  %2430 = tail call double @llvm.fmuladd.f64(double %432, double 0x3FD6A4D32EB1F710, double %2429)
  %2431 = tail call double @llvm.fmuladd.f64(double %434, double 0x3C726280B3476096, double %2430)
  %2432 = tail call double @llvm.fmuladd.f64(double %436, double 0x3C46A09E667F3BCB, double %2431)
  %2433 = tail call double @llvm.fmuladd.f64(double %438, double 0xBC9536948017480F, double %2432)
  %2434 = tail call double @llvm.fmuladd.f64(double %440, double 0xBC86A09E667F3BCC, double %2433)
  %gep10451 = getelementptr double, ptr %invariant.gep10450, i64 %indvars.iv
  store double %2434, ptr %gep10451, align 8, !tbaa !5
  %2435 = fmul double %1642, 0x3C60000000000000
  %2436 = tail call double @llvm.fmuladd.f64(double %1641, double 0xBC92000000000000, double %2435)
  %2437 = tail call double @llvm.fmuladd.f64(double %1645, double 0xBC90000000000000, double %2436)
  %2438 = tail call double @llvm.fmuladd.f64(double %1647, double 0x3C70000000000001, double %2437)
  %2439 = tail call double @llvm.fmuladd.f64(double %1649, double 0x3C70000000000001, double %2438)
  %2440 = tail call double @llvm.fmuladd.f64(double %1651, double 0xBCB3000000000000, double %2439)
  %2441 = tail call double @llvm.fmuladd.f64(double %1653, double 0x3C94000000000000, double %2440)
  %2442 = tail call double @llvm.fmuladd.f64(double %1657, double 0xBFD7671404765120, double %2441)
  %2443 = tail call double @llvm.fmuladd.f64(double %1659, double 0xC01043858A1F5996, double %2442)
  %2444 = tail call double @llvm.fmuladd.f64(double %1661, double 0xBFD7BAC3393ADDD8, double %2443)
  %2445 = tail call double @llvm.fmuladd.f64(double %1663, double 0x3FC1964E14FA3C65, double %2444)
  %2446 = tail call double @llvm.fmuladd.f64(double %1665, double 0xBC8C000000000000, double %2445)
  %2447 = tail call double @llvm.fmuladd.f64(double %1667, double 0xBCA1000000000001, double %2446)
  %2448 = tail call double @llvm.fmuladd.f64(double %1669, double 0x3CA0000000000002, double %2447)
  %2449 = tail call double @llvm.fmuladd.f64(double %1671, double 0x3C70000000000001, double %2448)
  %2450 = tail call double @llvm.fmuladd.f64(double %410, double 0x3C759116F9B144FE, double %2449)
  %2451 = tail call double @llvm.fmuladd.f64(double %412, double 0x3C70F876CCDF6CD9, double %2450)
  %2452 = tail call double @llvm.fmuladd.f64(double %414, double 0xBC73CC8A99AF5453, double %2451)
  %2453 = tail call double @llvm.fmuladd.f64(double %416, double 0xBC8C48C6001F0AC0, double %2452)
  %2454 = tail call double @llvm.fmuladd.f64(double %418, double 0xBCA16999E4DFE905, double %2453)
  %2455 = tail call double @llvm.fmuladd.f64(double %420, double 0xBCA91A2FB9B52657, double %2454)
  %2456 = tail call double @llvm.fmuladd.f64(double %422, double 0xBC9974B2334F2346, double %2455)
  %2457 = tail call double @llvm.fmuladd.f64(double %424, double 0x3C80F876CCDF6CD9, double %2456)
  %2458 = tail call double @llvm.fmuladd.f64(double %426, double 0x3FD6A4D32EB1F71D, double %2457)
  %2459 = tail call double @llvm.fmuladd.f64(double %428, double 0x3FE3C4545BCF030E, double %2458)
  %2460 = tail call double @llvm.fmuladd.f64(double %430, double 0x3FCD5953692F6EA6, double %2459)
  %2461 = tail call double @llvm.fmuladd.f64(double %432, double 0xBF9102DA00B18A34, double %2460)
  %2462 = tail call double @llvm.fmuladd.f64(double %434, double 0xBCA0D685DF45AE00, double %2461)
  %2463 = tail call double @llvm.fmuladd.f64(double %436, double 0x3C56A09E667F3BCC, double %2462)
  %2464 = tail call double @llvm.fmuladd.f64(double %438, double 0xBC46A09E667F3BCB, double %2463)
  %2465 = tail call double @llvm.fmuladd.f64(double %440, double 0x3C76A09E667F3BCD, double %2464)
  %gep10453 = getelementptr double, ptr %invariant.gep10452, i64 %indvars.iv
  store double %2465, ptr %gep10453, align 8, !tbaa !5
  %2466 = fmul double %1642, 0xBC89FFFFFFFFFFFF
  %2467 = tail call double @llvm.fmuladd.f64(double %1641, double 0xBC93000000000000, double %2466)
  %2468 = tail call double @llvm.fmuladd.f64(double %1645, double 0xBC91000000000000, double %2467)
  %2469 = tail call double @llvm.fmuladd.f64(double %1647, double 0xBC67FFFFFFFFFFFE, double %2468)
  %2470 = tail call double @llvm.fmuladd.f64(double %1649, double 0x3C94000000000000, double %2469)
  %2471 = tail call double @llvm.fmuladd.f64(double %1651, double 0xBCA4000000000001, double %2470)
  %2472 = tail call double @llvm.fmuladd.f64(double %1653, double 0x3C7FFFFFFFFFFFFF, double %2471)
  %2473 = tail call double @llvm.fmuladd.f64(double %1655, double 0x3CA2000000000000, double %2472)
  %2474 = tail call double @llvm.fmuladd.f64(double %1657, double 0x3FC1964E14FA3C53, double %2473)
  %2475 = tail call double @llvm.fmuladd.f64(double %1659, double 0xBFD7BAC3393ADDC4, double %2474)
  %2476 = tail call double @llvm.fmuladd.f64(double %1661, double 0xC01043858A1F5997, double %2475)
  %2477 = tail call double @llvm.fmuladd.f64(double %1663, double 0xBFD7671404765136, double %2476)
  %2478 = tail call double @llvm.fmuladd.f64(double %1665, double 0x3C7C000000000000, double %2477)
  %2479 = tail call double @llvm.fmuladd.f64(double %1667, double 0x3C89FFFFFFFFFFFF, double %2478)
  %2480 = tail call double @llvm.fmuladd.f64(double %1669, double 0x3C91000000000000, double %2479)
  %2481 = tail call double @llvm.fmuladd.f64(double %1671, double 0xBC95000000000000, double %2480)
  %2482 = tail call double @llvm.fmuladd.f64(double %410, double 0x3C6B93C10CEB10E3, double %2481)
  %2483 = tail call double @llvm.fmuladd.f64(double %412, double 0x3C8C48C6001F0AC0, double %2482)
  %2484 = tail call double @llvm.fmuladd.f64(double %414, double 0xBC66A09E667F3BCC, double %2483)
  %2485 = tail call double @llvm.fmuladd.f64(double %416, double 0xBC8C48C6001F0AC0, double %2484)
  %2486 = tail call double @llvm.fmuladd.f64(double %418, double 0xBC9125B809AC6B51, double %2485)
  %2487 = tail call double @llvm.fmuladd.f64(double %420, double 0x3C826280B3476096, double %2486)
  %2488 = tail call double @llvm.fmuladd.f64(double %422, double 0xBC90F876CCDF6CD9, double %2487)
  %2489 = tail call double @llvm.fmuladd.f64(double %424, double 0xBC80F876CCDF6CD9, double %2488)
  %2490 = tail call double @llvm.fmuladd.f64(double %426, double 0xBFE7007BFD8FD85D, double %2489)
  %2491 = tail call double @llvm.fmuladd.f64(double %428, double 0xBFE66643AEED3708, double %2490)
  %2492 = tail call double @llvm.fmuladd.f64(double %430, double 0x3FAD5B74B5F10E9B, double %2491)
  %2493 = tail call double @llvm.fmuladd.f64(double %432, double 0x3FA3F41B0E87BFB6, double %2492)
  %2494 = tail call double @llvm.fmuladd.f64(double %434, double 0x3C7F775C4688EF29, double %2493)
  %2495 = tail call double @llvm.fmuladd.f64(double %436, double 0xBC8C48C6001F0AC0, double %2494)
  %2496 = tail call double @llvm.fmuladd.f64(double %438, double 0xBC80F876CCDF6CD9, double %2495)
  %2497 = tail call double @llvm.fmuladd.f64(double %440, double 0x3C76A09E667F3BCD, double %2496)
  %gep10455 = getelementptr double, ptr %invariant.gep10454, i64 %indvars.iv
  store double %2497, ptr %gep10455, align 8, !tbaa !5
  %2498 = fmul double %1642, 0x3C98000000000000
  %2499 = tail call double @llvm.fmuladd.f64(double %1641, double 0xBC90000000000000, double %2498)
  %2500 = tail call double @llvm.fmuladd.f64(double %1645, double 0x3C90000000000000, double %2499)
  %2501 = tail call double @llvm.fmuladd.f64(double %1647, double 0x3C88000000000000, double %2500)
  %2502 = tail call double @llvm.fmuladd.f64(double %1649, double 0x3CA8000000000001, double %2501)
  %2503 = tail call double @llvm.fmuladd.f64(double %1651, double 0x3CA8000000000001, double %2502)
  %2504 = tail call double @llvm.fmuladd.f64(double %1653, double 0x3CA8000000000001, double %2503)
  %2505 = tail call double @llvm.fmuladd.f64(double %1655, double 0xBC90000000000000, double %2504)
  %2506 = tail call double @llvm.fmuladd.f64(double %1657, double 0xBFE002F9665DF3D9, double %2505)
  %2507 = tail call double @llvm.fmuladd.f64(double %1659, double 0xBFEBF462FB348EF6, double %2506)
  %2508 = tail call double @llvm.fmuladd.f64(double %1661, double 0xBFD4C0B9406BCBCC, double %2507)
  %2509 = tail call double @llvm.fmuladd.f64(double %1663, double 0x3F980EB0AE1D4750, double %2508)
  %2510 = tail call double @llvm.fmuladd.f64(double %1667, double 0xBC7FFFFFFFFFFFFF, double %2509)
  %2511 = tail call double @llvm.fmuladd.f64(double %1669, double 0xBC7FFFFFFFFFFFFF, double %2510)
  %2512 = tail call double @llvm.fmuladd.f64(double %410, double 0x3C7DB2CFE686FE7B, double %2511)
  %2513 = tail call double @llvm.fmuladd.f64(double %412, double 0xBC76A09E667F3BCD, double %2512)
  %2514 = tail call double @llvm.fmuladd.f64(double %414, double 0xBC90F876CCDF6CD9, double %2513)
  %2515 = tail call double @llvm.fmuladd.f64(double %418, double 0xBC70F876CCDF6CD9, double %2514)
  %2516 = tail call double @llvm.fmuladd.f64(double %420, double 0xBC96A09E667F3BCC, double %2515)
  %2517 = tail call double @llvm.fmuladd.f64(double %422, double 0x3CA3CC8A99AF5452, double %2516)
  %2518 = tail call double @llvm.fmuladd.f64(double %424, double 0x3C86A09E667F3BCC, double %2517)
  %2519 = tail call double @llvm.fmuladd.f64(double %426, double 0x3FA3F41B0E87BFE9, double %2518)
  %2520 = tail call double @llvm.fmuladd.f64(double %428, double 0x3FAD5B74B5F10E92, double %2519)
  %2521 = tail call double @llvm.fmuladd.f64(double %430, double 0xBFE66643AEED36FA, double %2520)
  %2522 = tail call double @llvm.fmuladd.f64(double %432, double 0xBFE7007BFD8FD85D, double %2521)
  %2523 = tail call double @llvm.fmuladd.f64(double %434, double 0x3C7ADEBC19B71701, double %2522)
  %2524 = tail call double @llvm.fmuladd.f64(double %436, double 0xBC90F876CCDF6CD9, double %2523)
  %2525 = tail call double @llvm.fmuladd.f64(double %438, double 0x3C9C48C6001F0ABF, double %2524)
  %gep10457 = getelementptr double, ptr %invariant.gep10456, i64 %indvars.iv
  store double %2525, ptr %gep10457, align 8, !tbaa !5
  %2526 = fmul double %1642, 0x3C90000000000000
  %2527 = tail call double @llvm.fmuladd.f64(double %1641, double 0x3C90000000000000, double %2526)
  %2528 = tail call double @llvm.fmuladd.f64(double %1645, double 0x3C98000000000000, double %2527)
  %2529 = tail call double @llvm.fmuladd.f64(double %1647, double 0xBC90000000000000, double %2528)
  %2530 = tail call double @llvm.fmuladd.f64(double %1649, double 0xBC90000000000000, double %2529)
  %2531 = tail call double @llvm.fmuladd.f64(double %1651, double 0x3CA8000000000001, double %2530)
  %2532 = tail call double @llvm.fmuladd.f64(double %1653, double 0x3CA8000000000001, double %2531)
  %2533 = tail call double @llvm.fmuladd.f64(double %1655, double 0x3CA8000000000001, double %2532)
  %2534 = tail call double @llvm.fmuladd.f64(double %1657, double 0x3F980EB0AE1D4741, double %2533)
  %2535 = tail call double @llvm.fmuladd.f64(double %1659, double 0xBFD4C0B9406BCBCC, double %2534)
  %2536 = tail call double @llvm.fmuladd.f64(double %1661, double 0xBFEBF462FB348EF6, double %2535)
  %2537 = tail call double @llvm.fmuladd.f64(double %1663, double 0xBFE002F9665DF3D9, double %2536)
  %2538 = tail call double @llvm.fmuladd.f64(double %1665, double 0xBC7FFFFFFFFFFFFF, double %2537)
  %2539 = tail call double @llvm.fmuladd.f64(double %1667, double 0xBC7FFFFFFFFFFFFF, double %2538)
  %2540 = tail call double @llvm.fmuladd.f64(double %1669, double 0xBC7FFFFFFFFFFFFF, double %2539)
  %2541 = tail call double @llvm.fmuladd.f64(double %410, double 0xBC75369480174810, double %2540)
  %2542 = tail call double @llvm.fmuladd.f64(double %412, double 0x3C86A09E667F3BCC, double %2541)
  %2543 = tail call double @llvm.fmuladd.f64(double %414, double 0x3C93CC8A99AF5452, double %2542)
  %2544 = tail call double @llvm.fmuladd.f64(double %416, double 0x3C76A09E667F3BCD, double %2543)
  %2545 = tail call double @llvm.fmuladd.f64(double %418, double 0x3C8974B2334F2346, double %2544)
  %2546 = tail call double @llvm.fmuladd.f64(double %420, double 0xBC86A09E667F3BCC, double %2545)
  %2547 = tail call double @llvm.fmuladd.f64(double %422, double 0xBC90F876CCDF6CD9, double %2546)
  %2548 = tail call double @llvm.fmuladd.f64(double %424, double 0xBC86A09E667F3BCC, double %2547)
  %2549 = tail call double @llvm.fmuladd.f64(double %426, double 0xBFB8DF388696F554, double %2548)
  %2550 = tail call double @llvm.fmuladd.f64(double %428, double 0x3FD0C7817D9C3121, double %2549)
  %2551 = tail call double @llvm.fmuladd.f64(double %430, double 0x4007001BD846D0AE, double %2550)
  %2552 = tail call double @llvm.fmuladd.f64(double %432, double 0x3FD08C54FF1019FC, double %2551)
  %2553 = tail call double @llvm.fmuladd.f64(double %434, double 0xBC9152F9467969C8, double %2552)
  %2554 = tail call double @llvm.fmuladd.f64(double %436, double 0x3C90F876CCDF6CD9, double %2553)
  %2555 = tail call double @llvm.fmuladd.f64(double %438, double 0x3C9974B2334F2346, double %2554)
  %2556 = tail call double @llvm.fmuladd.f64(double %440, double 0x3C86A09E667F3BCC, double %2555)
  %gep10459 = getelementptr double, ptr %invariant.gep10458, i64 %indvars.iv
  store double %2556, ptr %gep10459, align 8, !tbaa !5
  %2557 = tail call double @llvm.fmuladd.f64(double %1641, double 0xBC91000000000000, double %2498)
  %2558 = tail call double @llvm.fmuladd.f64(double %1645, double 0x3C98000000000000, double %2557)
  %2559 = tail call double @llvm.fmuladd.f64(double %1647, double 0xBC50000000000000, double %2558)
  %2560 = tail call double @llvm.fmuladd.f64(double %1649, double 0x3C84000000000000, double %2559)
  %2561 = tail call double @llvm.fmuladd.f64(double %1651, double 0x3CAE000000000002, double %2560)
  %2562 = tail call double @llvm.fmuladd.f64(double %1653, double 0x3C9C000000000000, double %2561)
  %2563 = tail call double @llvm.fmuladd.f64(double %1655, double 0x3C8C000000000000, double %2562)
  %2564 = tail call double @llvm.fmuladd.f64(double %1657, double 0x3C78000000000002, double %2563)
  %2565 = tail call double @llvm.fmuladd.f64(double %1659, double 0x3CA2000000000000, double %2564)
  %2566 = tail call double @llvm.fmuladd.f64(double %1661, double 0x3CA2000000000000, double %2565)
  %2567 = tail call double @llvm.fmuladd.f64(double %1663, double 0x3C8C000000000000, double %2566)
  %2568 = tail call double @llvm.fmuladd.f64(double %1665, double 0x3FA789B66AF4F45E, double %2567)
  %2569 = tail call double @llvm.fmuladd.f64(double %1667, double 0x3FEC2894019C8AD2, double %2568)
  %2570 = tail call double @llvm.fmuladd.f64(double %1669, double 0x3FEC2894019C8AC4, double %2569)
  %2571 = tail call double @llvm.fmuladd.f64(double %1671, double 0x3FA789B66AF4F564, double %2570)
  %2572 = tail call double @llvm.fmuladd.f64(double %410, double 0x3C7FD1DEC022EC17, double %2571)
  %2573 = tail call double @llvm.fmuladd.f64(double %412, double 0xBCA6A09E667F3BCC, double %2572)
  %2574 = tail call double @llvm.fmuladd.f64(double %414, double 0xBC76A09E667F3BCD, double %2573)
  %2575 = tail call double @llvm.fmuladd.f64(double %416, double 0x3C86A09E667F3BCC, double %2574)
  %2576 = tail call double @llvm.fmuladd.f64(double %418, double 0xBC81AD7BC01366B8, double %2575)
  %2577 = tail call double @llvm.fmuladd.f64(double %420, double 0xBC93CC8A99AF5452, double %2576)
  %2578 = tail call double @llvm.fmuladd.f64(double %422, double 0xBC93CC8A99AF5452, double %2577)
  %2579 = tail call double @llvm.fmuladd.f64(double %424, double 0xBC96A09E667F3BCC, double %2578)
  %2580 = tail call double @llvm.fmuladd.f64(double %426, double 0xBC85EB99734B41EF, double %2579)
  %2581 = tail call double @llvm.fmuladd.f64(double %428, double 0xBCA80AA84CE72F89, double %2580)
  %2582 = tail call double @llvm.fmuladd.f64(double %430, double 0xBC66A09E667F3BCC, double %2581)
  %2583 = tail call double @llvm.fmuladd.f64(double %432, double 0xBC86A09E667F3BCC, double %2582)
  %2584 = tail call double @llvm.fmuladd.f64(double %434, double 0xBFA0A4D27CF86DC6, double %2583)
  %2585 = tail call double @llvm.fmuladd.f64(double %436, double 0xBFE3E93C07AFC380, double %2584)
  %2586 = tail call double @llvm.fmuladd.f64(double %438, double 0xBFE3E93C07AFC37E, double %2585)
  %2587 = tail call double @llvm.fmuladd.f64(double %440, double 0xBFA0A4D27CF86DAF, double %2586)
  %gep10461 = getelementptr double, ptr %invariant.gep10460, i64 %indvars.iv
  store double %2587, ptr %gep10461, align 8, !tbaa !5
  %2588 = fmul double %1642, 0x3CA4000000000001
  %2589 = tail call double @llvm.fmuladd.f64(double %1641, double 0x3CA8000000000001, double %2588)
  %2590 = tail call double @llvm.fmuladd.f64(double %1645, double 0x3C90000000000000, double %2589)
  %2591 = tail call double @llvm.fmuladd.f64(double %1647, double 0x3CB0000000000000, double %2590)
  %2592 = tail call double @llvm.fmuladd.f64(double %1649, double 0xBC90000000000000, double %2591)
  %2593 = tail call double @llvm.fmuladd.f64(double %1651, double 0x3CB8000000000001, double %2592)
  %2594 = tail call double @llvm.fmuladd.f64(double %1653, double 0x3CB8000000000001, double %2593)
  %2595 = tail call double @llvm.fmuladd.f64(double %1659, double 0x3CA0000000000002, double %2594)
  %2596 = tail call double @llvm.fmuladd.f64(double %1661, double 0x3CC0000000000000, double %2595)
  %2597 = tail call double @llvm.fmuladd.f64(double %1665, double 0x3FD6F2A1D7A492BF, double %2596)
  %2598 = tail call double @llvm.fmuladd.f64(double %1667, double 0x3FEAEBF44A8E7A8E, double %2597)
  %2599 = tail call double @llvm.fmuladd.f64(double %1669, double 0x3FEAEBF44A8E7A92, double %2598)
  %2600 = tail call double @llvm.fmuladd.f64(double %1671, double 0x3FD6F2A1D7A492CF, double %2599)
  %2601 = tail call double @llvm.fmuladd.f64(double %410, double 0x3C91AD7BC01366B7, double %2600)
  %2602 = tail call double @llvm.fmuladd.f64(double %412, double 0xBC76A09E667F3BCD, double %2601)
  %2603 = tail call double @llvm.fmuladd.f64(double %414, double 0x3C9C48C6001F0ABF, double %2602)
  %2604 = tail call double @llvm.fmuladd.f64(double %416, double 0x3CC0F876CCDF6CD9, double %2603)
  %2605 = tail call double @llvm.fmuladd.f64(double %420, double 0x3C90F876CCDF6CD9, double %2604)
  %2606 = tail call double @llvm.fmuladd.f64(double %422, double 0xBC86A09E667F3BCC, double %2605)
  %2607 = tail call double @llvm.fmuladd.f64(double %424, double 0xBC96A09E667F3BCC, double %2606)
  %2608 = tail call double @llvm.fmuladd.f64(double %426, double 0x3C66A09E667F3BCC, double %2607)
  %2609 = tail call double @llvm.fmuladd.f64(double %428, double 0x3C76A09E667F3BCD, double %2608)
  %2610 = tail call double @llvm.fmuladd.f64(double %430, double 0x3CA0F876CCDF6CD8, double %2609)
  %2611 = tail call double @llvm.fmuladd.f64(double %432, double 0xBC96A09E667F3BCC, double %2610)
  %2612 = tail call double @llvm.fmuladd.f64(double %434, double 0x3FA462D8D66D7FC4, double %2611)
  %2613 = tail call double @llvm.fmuladd.f64(double %436, double 0xBFC5EA083165C4F6, double %2612)
  %2614 = tail call double @llvm.fmuladd.f64(double %438, double 0x3FD4A299D1E9700E, double %2613)
  %2615 = tail call double @llvm.fmuladd.f64(double %440, double 0x400E488CB8C1EA74, double %2614)
  %gep10463 = getelementptr double, ptr %invariant.gep10462, i64 %indvars.iv
  store double %2615, ptr %gep10463, align 8, !tbaa !5
  %2616 = fmul double %1642, 0x3CA0000000000002
  %2617 = tail call double @llvm.fmuladd.f64(double %1641, double 0x3CA1000000000001, double %2616)
  %2618 = tail call double @llvm.fmuladd.f64(double %1645, double 0xBCA9FFFFFFFFFFFE, double %2617)
  %2619 = tail call double @llvm.fmuladd.f64(double %1647, double 0xBCD2000000000000, double %2618)
  %2620 = tail call double @llvm.fmuladd.f64(double %1649, double 0x3C94000000000000, double %2619)
  %2621 = tail call double @llvm.fmuladd.f64(double %1651, double 0xBC94000000000000, double %2620)
  %2622 = tail call double @llvm.fmuladd.f64(double %1653, double 0x3C94000000000000, double %2621)
  %2623 = tail call double @llvm.fmuladd.f64(double %1655, double 0xBCB5000000000000, double %2622)
  %2624 = tail call double @llvm.fmuladd.f64(double %1657, double 0xBCA2000000000000, double %2623)
  %2625 = tail call double @llvm.fmuladd.f64(double %1659, double 0xBC88000000000000, double %2624)
  %2626 = tail call double @llvm.fmuladd.f64(double %1661, double 0xBCA9FFFFFFFFFFFE, double %2625)
  %2627 = tail call double @llvm.fmuladd.f64(double %1663, double 0xBCC5800000000000, double %2626)
  %2628 = tail call double @llvm.fmuladd.f64(double %1665, double 0xBFACD49071EC6028, double %2627)
  %2629 = tail call double @llvm.fmuladd.f64(double %1667, double 0x3FCEFDC8894D0802, double %2628)
  %2630 = tail call double @llvm.fmuladd.f64(double %1669, double 0xBFDD2EB9CCB3BE35, double %2629)
  %2631 = tail call double @llvm.fmuladd.f64(double %1671, double 0xC01569E165D7940B, double %2630)
  %2632 = tail call double @llvm.fmuladd.f64(double %410, double 0x3CC689FDC818BC8F, double %2631)
  %2633 = tail call double @llvm.fmuladd.f64(double %412, double 0x3CB16999E4DFE903, double %2632)
  %2634 = tail call double @llvm.fmuladd.f64(double %414, double 0xBC880AA84CE72F89, double %2633)
  %2635 = tail call double @llvm.fmuladd.f64(double %416, double 0xBC80F876CCDF6CD9, double %2634)
  %2636 = tail call double @llvm.fmuladd.f64(double %418, double 0xBCAF4A1B09BBF0AE, double %2635)
  %2637 = tail call double @llvm.fmuladd.f64(double %420, double 0x3CADB2CFE686FE7D, double %2636)
  %2638 = tail call double @llvm.fmuladd.f64(double %422, double 0xBC80F876CCDF6CD9, double %2637)
  %2639 = tail call double @llvm.fmuladd.f64(double %424, double 0x3C76A09E667F3BCD, double %2638)
  %2640 = tail call double @llvm.fmuladd.f64(double %426, double 0x3C9152F9467969C8, double %2639)
  %2641 = tail call double @llvm.fmuladd.f64(double %428, double 0xBCADB2CFE686FE7D, double %2640)
  %2642 = tail call double @llvm.fmuladd.f64(double %430, double 0xBCA26280B3476095, double %2641)
  %2643 = tail call double @llvm.fmuladd.f64(double %432, double 0x3C76A09E667F3BCD, double %2642)
  %2644 = tail call double @llvm.fmuladd.f64(double %434, double 0x400E488CB8C1EA66, double %2643)
  %2645 = tail call double @llvm.fmuladd.f64(double %436, double 0x3FD4A299D1E9700C, double %2644)
  %2646 = tail call double @llvm.fmuladd.f64(double %438, double 0xBFC5EA083165C4F9, double %2645)
  %2647 = tail call double @llvm.fmuladd.f64(double %440, double 0x3FA462D8D66D7F94, double %2646)
  %gep10465 = getelementptr double, ptr %invariant.gep10464, i64 %indvars.iv
  store double %2647, ptr %gep10465, align 8, !tbaa !5
  %2648 = fmul double %1642, 0xBCBAFFFFFFFFFFFF
  %2649 = tail call double @llvm.fmuladd.f64(double %1641, double 0xBCBF000000000001, double %2648)
  %2650 = tail call double @llvm.fmuladd.f64(double %1645, double 0xBC9C000000000000, double %2649)
  %2651 = tail call double @llvm.fmuladd.f64(double %1647, double 0x3C70000000000001, double %2650)
  %2652 = tail call double @llvm.fmuladd.f64(double %1649, double 0xBCC2800000000000, double %2651)
  %2653 = tail call double @llvm.fmuladd.f64(double %1651, double 0x3CAE000000000002, double %2652)
  %2654 = tail call double @llvm.fmuladd.f64(double %1653, double 0x3C70000000000001, double %2653)
  %2655 = tail call double @llvm.fmuladd.f64(double %1655, double 0xBC70000000000001, double %2654)
  %2656 = tail call double @llvm.fmuladd.f64(double %1657, double 0xBCD6C00000000002, double %2655)
  %2657 = tail call double @llvm.fmuladd.f64(double %1659, double 0x3C94000000000000, double %2656)
  %2658 = tail call double @llvm.fmuladd.f64(double %1661, double 0x3C9C000000000000, double %2657)
  %2659 = tail call double @llvm.fmuladd.f64(double %1663, double 0xBC9C000000000000, double %2658)
  %2660 = tail call double @llvm.fmuladd.f64(double %1665, double 0xC01569E165D79412, double %2659)
  %2661 = tail call double @llvm.fmuladd.f64(double %1667, double 0xBFDD2EB9CCB3BDB5, double %2660)
  %2662 = tail call double @llvm.fmuladd.f64(double %1669, double 0x3FCEFDC8894D07B6, double %2661)
  %2663 = tail call double @llvm.fmuladd.f64(double %1671, double 0xBFACD49071EC5FF2, double %2662)
  %2664 = tail call double @llvm.fmuladd.f64(double %410, double 0xBC9F1CD9CCEEF236, double %2663)
  %2665 = tail call double @llvm.fmuladd.f64(double %412, double 0xBCA016309CDE7482, double %2664)
  %2666 = tail call double @llvm.fmuladd.f64(double %414, double 0x3C98BFAD401B2967, double %2665)
  %2667 = tail call double @llvm.fmuladd.f64(double %416, double 0xBC93CC8A99AF5452, double %2666)
  %2668 = tail call double @llvm.fmuladd.f64(double %418, double 0xBCB0B494F1ABEF27, double %2667)
  %2669 = tail call double @llvm.fmuladd.f64(double %420, double 0xBCA536948017480F, double %2668)
  %2670 = tail call double @llvm.fmuladd.f64(double %422, double 0x3CADB2CFE686FE7D, double %2669)
  %2671 = tail call double @llvm.fmuladd.f64(double %424, double 0x3C9C48C6001F0ABF, double %2670)
  %2672 = tail call double @llvm.fmuladd.f64(double %426, double 0x3C959116F9B144FE, double %2671)
  %2673 = tail call double @llvm.fmuladd.f64(double %428, double 0xBCA80AA84CE72F89, double %2672)
  %2674 = tail call double @llvm.fmuladd.f64(double %430, double 0xBC8C48C6001F0AC0, double %2673)
  %2675 = tail call double @llvm.fmuladd.f64(double %432, double 0x3C90F876CCDF6CD9, double %2674)
  %2676 = tail call double @llvm.fmuladd.f64(double %434, double 0xBFD039FE04F7163A, double %2675)
  %2677 = tail call double @llvm.fmuladd.f64(double %436, double 0xBFE30958FBF81242, double %2676)
  %2678 = tail call double @llvm.fmuladd.f64(double %438, double 0xBFE30958FBF81231, double %2677)
  %2679 = tail call double @llvm.fmuladd.f64(double %440, double 0xBFD039FE04F71632, double %2678)
  %gep10467 = getelementptr double, ptr %invariant.gep10466, i64 %indvars.iv
  store double %2679, ptr %gep10467, align 8, !tbaa !5
  %2680 = fmul double %1642, 0xBC9C000000000000
  %2681 = tail call double @llvm.fmuladd.f64(double %1641, double 0x3C90000000000000, double %2680)
  %2682 = tail call double @llvm.fmuladd.f64(double %1645, double 0xBC70000000000001, double %2681)
  %2683 = tail call double @llvm.fmuladd.f64(double %1647, double 0xBC9C000000000000, double %2682)
  %2684 = tail call double @llvm.fmuladd.f64(double %1649, double 0x3C90000000000000, double %2683)
  %2685 = tail call double @llvm.fmuladd.f64(double %1651, double 0x3C90000000000000, double %2684)
  %2686 = tail call double @llvm.fmuladd.f64(double %1653, double 0x3C7FFFFFFFFFFFFF, double %2685)
  %2687 = tail call double @llvm.fmuladd.f64(double %1655, double 0x3CA4000000000001, double %2686)
  %2688 = tail call double @llvm.fmuladd.f64(double %1657, double 0x3CA0000000000002, double %2687)
  %2689 = tail call double @llvm.fmuladd.f64(double %1661, double 0x3C98000000000000, double %2688)
  %2690 = tail call double @llvm.fmuladd.f64(double %1663, double 0x3CAC000000000000, double %2689)
  %2691 = tail call double @llvm.fmuladd.f64(double %1665, double 0xBFAC37F3CCE9FCFE, double %2690)
  %2692 = tail call double @llvm.fmuladd.f64(double %1667, double 0xBFB4C23AD63BEF88, double %2691)
  %2693 = tail call double @llvm.fmuladd.f64(double %1669, double 0x3FEFAD7976B5DE29, double %2692)
  %2694 = tail call double @llvm.fmuladd.f64(double %1671, double 0x3FF043C98657E812, double %2693)
  %2695 = tail call double @llvm.fmuladd.f64(double %410, double 0x3C8BEE4386850DD0, double %2694)
  %2696 = tail call double @llvm.fmuladd.f64(double %412, double 0x3CC196DB21ACE77C, double %2695)
  %2697 = tail call double @llvm.fmuladd.f64(double %414, double 0x3C90F876CCDF6CD9, double %2696)
  %2698 = tail call double @llvm.fmuladd.f64(double %416, double 0xBC66A09E667F3BCC, double %2697)
  %2699 = tail call double @llvm.fmuladd.f64(double %418, double 0x3C6974B2334F2344, double %2698)
  %2700 = tail call double @llvm.fmuladd.f64(double %420, double 0xBCA5EB99734B41EE, double %2699)
  %2701 = tail call double @llvm.fmuladd.f64(double %422, double 0x3C9C48C6001F0ABF, double %2700)
  %2702 = tail call double @llvm.fmuladd.f64(double %424, double 0xBC76A09E667F3BCD, double %2701)
  %2703 = tail call double @llvm.fmuladd.f64(double %426, double 0xBC8CFDCAF353049C, double %2702)
  %2704 = tail call double @llvm.fmuladd.f64(double %428, double 0x3CB6461BECE53EDD, double %2703)
  %2705 = tail call double @llvm.fmuladd.f64(double %430, double 0x3CA3CC8A99AF5452, double %2704)
  %2706 = tail call double @llvm.fmuladd.f64(double %432, double 0x3C90F876CCDF6CD9, double %2705)
  %2707 = tail call double @llvm.fmuladd.f64(double %434, double 0x3FD08C54FF101A12, double %2706)
  %2708 = tail call double @llvm.fmuladd.f64(double %436, double 0x4007001BD846D0B0, double %2707)
  %2709 = tail call double @llvm.fmuladd.f64(double %438, double 0x3FD0C7817D9C3131, double %2708)
  %2710 = tail call double @llvm.fmuladd.f64(double %440, double 0xBFB8DF388696F54B, double %2709)
  %gep10469 = getelementptr double, ptr %invariant.gep10468, i64 %indvars.iv
  store double %2710, ptr %gep10469, align 8, !tbaa !5
  %2711 = tail call double @llvm.fmuladd.f64(double %1645, double 0xBC9A000000000000, double %2083)
  %2712 = tail call double @llvm.fmuladd.f64(double %1647, double 0x3C7FFFFFFFFFFFFF, double %2711)
  %2713 = tail call double @llvm.fmuladd.f64(double %1649, double 0x3CA4000000000001, double %2712)
  %2714 = tail call double @llvm.fmuladd.f64(double %1651, double 0xBC98000000000000, double %2713)
  %2715 = tail call double @llvm.fmuladd.f64(double %1655, double 0x3C7FFFFFFFFFFFFF, double %2714)
  %2716 = tail call double @llvm.fmuladd.f64(double %1657, double 0x3CAC000000000000, double %2715)
  %2717 = tail call double @llvm.fmuladd.f64(double %1659, double 0xBCA4000000000001, double %2716)
  %2718 = tail call double @llvm.fmuladd.f64(double %1661, double 0x3C90000000000000, double %2717)
  %2719 = tail call double @llvm.fmuladd.f64(double %1663, double 0x3C98000000000000, double %2718)
  %2720 = tail call double @llvm.fmuladd.f64(double %1665, double 0x3FF043C98657E812, double %2719)
  %2721 = tail call double @llvm.fmuladd.f64(double %1667, double 0x3FEFAD7976B5DE26, double %2720)
  %2722 = tail call double @llvm.fmuladd.f64(double %1669, double 0xBFB4C23AD63BEF60, double %2721)
  %2723 = tail call double @llvm.fmuladd.f64(double %1671, double 0xBFAC37F3CCE9FD17, double %2722)
  %2724 = tail call double @llvm.fmuladd.f64(double %410, double 0x3C53CC8A99AF5452, double %2723)
  %2725 = tail call double @llvm.fmuladd.f64(double %412, double 0x3C8536948017480E, double %2724)
  %2726 = tail call double @llvm.fmuladd.f64(double %414, double 0x3C9C48C6001F0ABF, double %2725)
  %2727 = tail call double @llvm.fmuladd.f64(double %416, double 0x3C93CC8A99AF5452, double %2726)
  %2728 = tail call double @llvm.fmuladd.f64(double %418, double 0xBC94DC12067D4B20, double %2727)
  %2729 = tail call double @llvm.fmuladd.f64(double %420, double 0xBC9536948017480F, double %2728)
  %2730 = tail call double @llvm.fmuladd.f64(double %422, double 0xBC76A09E667F3BCD, double %2729)
  %2731 = tail call double @llvm.fmuladd.f64(double %424, double 0x3C96A09E667F3BCC, double %2730)
  %2732 = tail call double @llvm.fmuladd.f64(double %426, double 0x3C6F1CD9CCEEF238, double %2731)
  %2733 = tail call double @llvm.fmuladd.f64(double %428, double 0x3C9ADEBC19B71702, double %2732)
  %2734 = tail call double @llvm.fmuladd.f64(double %430, double 0x3C76A09E667F3BCD, double %2733)
  %2735 = tail call double @llvm.fmuladd.f64(double %434, double 0xBF9102DA00B18A5A, double %2734)
  %2736 = tail call double @llvm.fmuladd.f64(double %436, double 0x3FCD5953692F6EA6, double %2735)
  %2737 = tail call double @llvm.fmuladd.f64(double %438, double 0x3FE3C4545BCF030B, double %2736)
  %2738 = tail call double @llvm.fmuladd.f64(double %440, double 0x3FD6A4D32EB1F70D, double %2737)
  %gep10471 = getelementptr double, ptr %invariant.gep10470, i64 %indvars.iv
  store double %2738, ptr %gep10471, align 8, !tbaa !5
  %2739 = fmul double %1642, 0xBCC4400000000000
  %2740 = tail call double @llvm.fmuladd.f64(double %1641, double 0xBC9A000000000000, double %2739)
  %2741 = tail call double @llvm.fmuladd.f64(double %1645, double 0xBCA1000000000001, double %2740)
  %2742 = tail call double @llvm.fmuladd.f64(double %1647, double 0x3C98000000000000, double %2741)
  %2743 = tail call double @llvm.fmuladd.f64(double %1651, double 0xBCC8C00000000000, double %2742)
  %2744 = tail call double @llvm.fmuladd.f64(double %1653, double 0xBC96000000000000, double %2743)
  %2745 = tail call double @llvm.fmuladd.f64(double %1655, double 0x3CA8000000000001, double %2744)
  %2746 = tail call double @llvm.fmuladd.f64(double %1659, double 0xBCD3A00000000001, double %2745)
  %2747 = tail call double @llvm.fmuladd.f64(double %1661, double 0xBC84000000000000, double %2746)
  %2748 = tail call double @llvm.fmuladd.f64(double %1663, double 0xBC94000000000000, double %2747)
  %2749 = tail call double @llvm.fmuladd.f64(double %1665, double 0xBFD767140476511D, double %2748)
  %2750 = tail call double @llvm.fmuladd.f64(double %1667, double 0xC01043858A1F5993, double %2749)
  %2751 = tail call double @llvm.fmuladd.f64(double %1669, double 0xBFD7BAC3393ADDD9, double %2750)
  %2752 = tail call double @llvm.fmuladd.f64(double %1671, double 0x3FC1964E14FA3C62, double %2751)
  %2753 = tail call double @llvm.fmuladd.f64(double %410, double 0x3C86461BECE53EDC, double %2752)
  %2754 = tail call double @llvm.fmuladd.f64(double %412, double 0x3CA196DB21ACE77D, double %2753)
  %2755 = tail call double @llvm.fmuladd.f64(double %414, double 0x3C9ADEBC19B71702, double %2754)
  %2756 = tail call double @llvm.fmuladd.f64(double %418, double 0xBC9C48C6001F0ABF, double %2755)
  %2757 = tail call double @llvm.fmuladd.f64(double %420, double 0xBC9FD1DEC022EC15, double %2756)
  %2758 = tail call double @llvm.fmuladd.f64(double %422, double 0x3C9C48C6001F0ABF, double %2757)
  %2759 = tail call double @llvm.fmuladd.f64(double %424, double 0xBC96A09E667F3BCC, double %2758)
  %2760 = tail call double @llvm.fmuladd.f64(double %426, double 0xBC76A09E667F3BCD, double %2759)
  %2761 = tail call double @llvm.fmuladd.f64(double %428, double 0x3CB344C6E34858EB, double %2760)
  %2762 = tail call double @llvm.fmuladd.f64(double %430, double 0x3C90F876CCDF6CD9, double %2761)
  %2763 = tail call double @llvm.fmuladd.f64(double %432, double 0x3C76A09E667F3BCD, double %2762)
  %2764 = tail call double @llvm.fmuladd.f64(double %434, double 0x3FD6A4D32EB1F718, double %2763)
  %2765 = tail call double @llvm.fmuladd.f64(double %436, double 0x3FE3C4545BCF030B, double %2764)
  %2766 = tail call double @llvm.fmuladd.f64(double %438, double 0x3FCD5953692F6EA3, double %2765)
  %2767 = tail call double @llvm.fmuladd.f64(double %440, double 0xBF9102DA00B18A2C, double %2766)
  %gep10473 = getelementptr double, ptr %invariant.gep10472, i64 %indvars.iv
  store double %2767, ptr %gep10473, align 8, !tbaa !5
  %2768 = fmul double %1642, 0xBCA2000000000000
  %2769 = tail call double @llvm.fmuladd.f64(double %1641, double 0x3C82000000000000, double %2768)
  %2770 = tail call double @llvm.fmuladd.f64(double %1645, double 0xBCC5000000000000, double %2769)
  %2771 = tail call double @llvm.fmuladd.f64(double %1647, double 0xBCA0800000000001, double %2770)
  %2772 = tail call double @llvm.fmuladd.f64(double %1649, double 0x3CA8000000000001, double %2771)
  %2773 = tail call double @llvm.fmuladd.f64(double %1651, double 0xBC90000000000000, double %2772)
  %2774 = tail call double @llvm.fmuladd.f64(double %1653, double 0xBCBF000000000001, double %2773)
  %2775 = tail call double @llvm.fmuladd.f64(double %1655, double 0x3C88000000000000, double %2774)
  %2776 = tail call double @llvm.fmuladd.f64(double %1657, double 0x3C9C000000000000, double %2775)
  %2777 = tail call double @llvm.fmuladd.f64(double %1661, double 0xBCC0800000000000, double %2776)
  %2778 = tail call double @llvm.fmuladd.f64(double %1663, double 0x3C70000000000001, double %2777)
  %2779 = tail call double @llvm.fmuladd.f64(double %1665, double 0x3FC1964E14FA3C4C, double %2778)
  %2780 = tail call double @llvm.fmuladd.f64(double %1667, double 0xBFD7BAC3393ADDC0, double %2779)
  %2781 = tail call double @llvm.fmuladd.f64(double %1669, double 0xC01043858A1F5994, double %2780)
  %2782 = tail call double @llvm.fmuladd.f64(double %1671, double 0xBFD7671404765136, double %2781)
  %2783 = tail call double @llvm.fmuladd.f64(double %410, double 0xBCA13C58A812EA8E, double %2782)
  %2784 = tail call double @llvm.fmuladd.f64(double %412, double 0xBCA6023A11B1C128, double %2783)
  %2785 = tail call double @llvm.fmuladd.f64(double %414, double 0xBC80F876CCDF6CD9, double %2784)
  %2786 = tail call double @llvm.fmuladd.f64(double %418, double 0x3CA344C6E34858EB, double %2785)
  %2787 = tail call double @llvm.fmuladd.f64(double %420, double 0x3C73CC8A99AF5453, double %2786)
  %2788 = tail call double @llvm.fmuladd.f64(double %422, double 0x3C76A09E667F3BCD, double %2787)
  %2789 = tail call double @llvm.fmuladd.f64(double %424, double 0xBCA0F876CCDF6CD8, double %2788)
  %2790 = tail call double @llvm.fmuladd.f64(double %426, double 0xBCA344C6E34858EB, double %2789)
  %2791 = tail call double @llvm.fmuladd.f64(double %428, double 0x3C91AD7BC01366B7, double %2790)
  %2792 = tail call double @llvm.fmuladd.f64(double %430, double 0xBC90F876CCDF6CD9, double %2791)
  %2793 = tail call double @llvm.fmuladd.f64(double %432, double 0x3C76A09E667F3BCD, double %2792)
  %2794 = tail call double @llvm.fmuladd.f64(double %434, double 0xBFE7007BFD8FD859, double %2793)
  %2795 = tail call double @llvm.fmuladd.f64(double %436, double 0xBFE66643AEED3706, double %2794)
  %2796 = tail call double @llvm.fmuladd.f64(double %438, double 0x3FAD5B74B5F10E94, double %2795)
  %2797 = tail call double @llvm.fmuladd.f64(double %440, double 0x3FA3F41B0E87BFBB, double %2796)
  %gep10475 = getelementptr double, ptr %invariant.gep10474, i64 %indvars.iv
  store double %2797, ptr %gep10475, align 8, !tbaa !5
  %2798 = tail call double @llvm.fmuladd.f64(double %1641, double 0xBC90000000000000, double %2377)
  %2799 = tail call double @llvm.fmuladd.f64(double %1645, double 0xBC88000000000000, double %2798)
  %2800 = tail call double @llvm.fmuladd.f64(double %1647, double 0xBC96000000000000, double %2799)
  %2801 = tail call double @llvm.fmuladd.f64(double %1649, double 0x3CA8000000000001, double %2800)
  %2802 = tail call double @llvm.fmuladd.f64(double %1651, double 0x3C90000000000000, double %2801)
  %2803 = tail call double @llvm.fmuladd.f64(double %1653, double 0x3C90000000000000, double %2802)
  %2804 = tail call double @llvm.fmuladd.f64(double %1655, double 0xBC7FFFFFFFFFFFFF, double %2803)
  %2805 = tail call double @llvm.fmuladd.f64(double %1657, double 0x3C90000000000000, double %2804)
  %2806 = tail call double @llvm.fmuladd.f64(double %1659, double 0xBC90000000000000, double %2805)
  %2807 = tail call double @llvm.fmuladd.f64(double %1661, double 0x3C90000000000000, double %2806)
  %2808 = tail call double @llvm.fmuladd.f64(double %1663, double 0xBC7FFFFFFFFFFFFF, double %2807)
  %2809 = tail call double @llvm.fmuladd.f64(double %1665, double 0xBFE002F9665DF3D7, double %2808)
  %2810 = tail call double @llvm.fmuladd.f64(double %1667, double 0xBFEBF462FB348EF3, double %2809)
  %2811 = tail call double @llvm.fmuladd.f64(double %1669, double 0xBFD4C0B9406BCBCD, double %2810)
  %2812 = tail call double @llvm.fmuladd.f64(double %1671, double 0x3F980EB0AE1D4727, double %2811)
  %2813 = tail call double @llvm.fmuladd.f64(double %410, double 0x3C6F1CD9CCEEF238, double %2812)
  %2814 = tail call double @llvm.fmuladd.f64(double %412, double 0x3C8974B2334F2346, double %2813)
  %2815 = tail call double @llvm.fmuladd.f64(double %414, double 0xBCAADEBC19B71703, double %2814)
  %2816 = tail call double @llvm.fmuladd.f64(double %416, double 0x3C76A09E667F3BCD, double %2815)
  %2817 = tail call double @llvm.fmuladd.f64(double %418, double 0x3C60F876CCDF6CD9, double %2816)
  %2818 = tail call double @llvm.fmuladd.f64(double %420, double 0xBC8C48C6001F0AC0, double %2817)
  %2819 = tail call double @llvm.fmuladd.f64(double %422, double 0xBCA6A09E667F3BCC, double %2818)
  %2820 = tail call double @llvm.fmuladd.f64(double %424, double 0xBCA6A09E667F3BCC, double %2819)
  %2821 = tail call double @llvm.fmuladd.f64(double %426, double 0x3C826280B3476096, double %2820)
  %2822 = tail call double @llvm.fmuladd.f64(double %428, double 0x3C8C48C6001F0AC0, double %2821)
  %2823 = tail call double @llvm.fmuladd.f64(double %432, double 0x3C96A09E667F3BCC, double %2822)
  %2824 = tail call double @llvm.fmuladd.f64(double %434, double 0x3FA3F41B0E87BFEB, double %2823)
  %2825 = tail call double @llvm.fmuladd.f64(double %436, double 0x3FAD5B74B5F10E92, double %2824)
  %2826 = tail call double @llvm.fmuladd.f64(double %438, double 0xBFE66643AEED36FA, double %2825)
  %2827 = tail call double @llvm.fmuladd.f64(double %440, double 0xBFE7007BFD8FD85B, double %2826)
  %gep10477 = getelementptr double, ptr %invariant.gep10476, i64 %indvars.iv
  store double %2827, ptr %gep10477, align 8, !tbaa !5
  %2828 = fmul double %1642, 0xBC88000000000000
  %2829 = tail call double @llvm.fmuladd.f64(double %1641, double 0xBC96000000000000, double %2828)
  %2830 = tail call double @llvm.fmuladd.f64(double %1645, double 0xBC70000000000001, double %2829)
  %2831 = tail call double @llvm.fmuladd.f64(double %1647, double 0xBCA0000000000002, double %2830)
  %2832 = tail call double @llvm.fmuladd.f64(double %1649, double 0x3C7FFFFFFFFFFFFF, double %2831)
  %2833 = tail call double @llvm.fmuladd.f64(double %1651, double 0x3C90000000000000, double %2832)
  %2834 = tail call double @llvm.fmuladd.f64(double %1653, double 0x3C90000000000000, double %2833)
  %2835 = tail call double @llvm.fmuladd.f64(double %1655, double 0x3CA8000000000001, double %2834)
  %2836 = tail call double @llvm.fmuladd.f64(double %1657, double 0xBC7FFFFFFFFFFFFF, double %2835)
  %2837 = tail call double @llvm.fmuladd.f64(double %1659, double 0x3C90000000000000, double %2836)
  %2838 = tail call double @llvm.fmuladd.f64(double %1661, double 0xBC90000000000000, double %2837)
  %2839 = tail call double @llvm.fmuladd.f64(double %1663, double 0x3C90000000000000, double %2838)
  %2840 = tail call double @llvm.fmuladd.f64(double %1665, double 0x3F980EB0AE1D4719, double %2839)
  %2841 = tail call double @llvm.fmuladd.f64(double %1667, double 0xBFD4C0B9406BCBCD, double %2840)
  %2842 = tail call double @llvm.fmuladd.f64(double %1669, double 0xBFEBF462FB348EF3, double %2841)
  %2843 = tail call double @llvm.fmuladd.f64(double %1671, double 0xBFE002F9665DF3D7, double %2842)
  %2844 = tail call double @llvm.fmuladd.f64(double %410, double 0xBC50F876CCDF6CD8, double %2843)
  %2845 = tail call double @llvm.fmuladd.f64(double %412, double 0x3CA04371D9AB72FA, double %2844)
  %2846 = tail call double @llvm.fmuladd.f64(double %414, double 0x3CBADEBC19B71701, double %2845)
  %2847 = tail call double @llvm.fmuladd.f64(double %416, double 0x3C90F876CCDF6CD9, double %2846)
  %2848 = tail call double @llvm.fmuladd.f64(double %418, double 0xBC6C48C6001F0ABE, double %2847)
  %2849 = tail call double @llvm.fmuladd.f64(double %420, double 0x3C9974B2334F2346, double %2848)
  %2850 = tail call double @llvm.fmuladd.f64(double %422, double 0x3CBADEBC19B71701, double %2849)
  %2851 = tail call double @llvm.fmuladd.f64(double %424, double 0x3C96A09E667F3BCC, double %2850)
  %2852 = tail call double @llvm.fmuladd.f64(double %426, double 0xBC7F1CD9CCEEF238, double %2851)
  %2853 = tail call double @llvm.fmuladd.f64(double %428, double 0x3C80F876CCDF6CD9, double %2852)
  %2854 = tail call double @llvm.fmuladd.f64(double %430, double 0x3C9C48C6001F0ABF, double %2853)
  %2855 = tail call double @llvm.fmuladd.f64(double %432, double 0x3C86A09E667F3BCC, double %2854)
  %2856 = tail call double @llvm.fmuladd.f64(double %434, double 0xBFB8DF388696F557, double %2855)
  %2857 = tail call double @llvm.fmuladd.f64(double %436, double 0x3FD0C7817D9C3121, double %2856)
  %2858 = tail call double @llvm.fmuladd.f64(double %438, double 0x4007001BD846D0A7, double %2857)
  %2859 = tail call double @llvm.fmuladd.f64(double %440, double 0x3FD08C54FF1019F7, double %2858)
  %gep10479 = getelementptr double, ptr %invariant.gep10478, i64 %indvars.iv
  store double %2859, ptr %gep10479, align 8, !tbaa !5
  %2860 = getelementptr inbounds double, ptr %1, i64 %indvars.iv
  %2861 = load double, ptr %2860, align 8, !tbaa !5
  %gep10481 = getelementptr double, ptr %invariant.gep10480, i64 %indvars.iv
  %2862 = load double, ptr %gep10481, align 8, !tbaa !5
  %2863 = fmul double %2862, 0x3CE1400000000000
  %2864 = tail call double @llvm.fmuladd.f64(double %2861, double 0xC0118E7E1D8191B3, double %2863)
  %gep10483 = getelementptr double, ptr %invariant.gep10482, i64 %indvars.iv
  %2865 = load double, ptr %gep10483, align 8, !tbaa !5
  %2866 = tail call double @llvm.fmuladd.f64(double %2865, double 0x3CE283FFFFFFFFFF, double %2864)
  %gep10485 = getelementptr double, ptr %invariant.gep10484, i64 %indvars.iv
  %2867 = load double, ptr %gep10485, align 8, !tbaa !5
  %2868 = tail call double @llvm.fmuladd.f64(double %2867, double 0x3CE3740000000000, double %2866)
  %gep10487 = getelementptr double, ptr %invariant.gep10486, i64 %indvars.iv
  %2869 = load double, ptr %gep10487, align 8, !tbaa !5
  %2870 = tail call double @llvm.fmuladd.f64(double %2869, double 0xBD07D80000000000, double %2868)
  %gep10489 = getelementptr double, ptr %invariant.gep10488, i64 %indvars.iv
  %2871 = load double, ptr %gep10489, align 8, !tbaa !5
  %2872 = tail call double @llvm.fmuladd.f64(double %2871, double 0xBD07DFFFFFFFFFFD, double %2870)
  %gep10491 = getelementptr double, ptr %invariant.gep10490, i64 %indvars.iv
  %2873 = load double, ptr %gep10491, align 8, !tbaa !5
  %2874 = tail call double @llvm.fmuladd.f64(double %2873, double 0xBD06F80000000003, double %2872)
  %gep10493 = getelementptr double, ptr %invariant.gep10492, i64 %indvars.iv
  %2875 = load double, ptr %gep10493, align 8, !tbaa !5
  %2876 = tail call double @llvm.fmuladd.f64(double %2875, double 0xBD061A0000000000, double %2874)
  %gep10495 = getelementptr double, ptr %invariant.gep10494, i64 %indvars.iv
  %2877 = load double, ptr %gep10495, align 8, !tbaa !5
  %2878 = tail call double @llvm.fmuladd.f64(double %2877, double 0xBD06DFFFFFFFFFFF, double %2876)
  %gep10497 = getelementptr double, ptr %invariant.gep10496, i64 %indvars.iv
  %2879 = load double, ptr %gep10497, align 8, !tbaa !5
  %2880 = tail call double @llvm.fmuladd.f64(double %2879, double 0xBD06D80000000001, double %2878)
  %gep10499 = getelementptr double, ptr %invariant.gep10498, i64 %indvars.iv
  %2881 = load double, ptr %gep10499, align 8, !tbaa !5
  %2882 = tail call double @llvm.fmuladd.f64(double %2881, double 0xBFD4F58312101B3F, double %2880)
  %gep10501 = getelementptr double, ptr %invariant.gep10500, i64 %indvars.iv
  %2883 = load double, ptr %gep10501, align 8, !tbaa !5
  %2884 = tail call double @llvm.fmuladd.f64(double %2883, double 0x3CA4000000000001, double %2882)
  %gep10503 = getelementptr double, ptr %invariant.gep10502, i64 %indvars.iv
  %2885 = load double, ptr %gep10503, align 8, !tbaa !5
  %2886 = tail call double @llvm.fmuladd.f64(double %2885, double 0x3CB0200000000000, double %2884)
  %gep10505 = getelementptr double, ptr %invariant.gep10504, i64 %indvars.iv
  %2887 = load double, ptr %gep10505, align 8, !tbaa !5
  %2888 = tail call double @llvm.fmuladd.f64(double %2887, double 0x3CAD3FFFFFFFFFFF, double %2886)
  %gep10507 = getelementptr double, ptr %invariant.gep10506, i64 %indvars.iv
  %2889 = load double, ptr %gep10507, align 8, !tbaa !5
  %2890 = tail call double @llvm.fmuladd.f64(double %2889, double 0xBCCF800000000000, double %2888)
  %gep10509 = getelementptr double, ptr %invariant.gep10508, i64 %indvars.iv
  %2891 = load double, ptr %gep10509, align 8, !tbaa !5
  %2892 = tail call double @llvm.fmuladd.f64(double %2891, double 0xBCCE000000000000, double %2890)
  %gep10511 = getelementptr double, ptr %invariant.gep10510, i64 %indvars.iv
  %2893 = load double, ptr %gep10511, align 8, !tbaa !5
  %2894 = tail call double @llvm.fmuladd.f64(double %2893, double 0xBCC9800000000000, double %2892)
  %gep10513 = getelementptr double, ptr %invariant.gep10512, i64 %indvars.iv
  %2895 = load double, ptr %gep10513, align 8, !tbaa !5
  %2896 = tail call double @llvm.fmuladd.f64(double %2895, double 0xBCC7A00000000000, double %2894)
  %gep10515 = getelementptr double, ptr %invariant.gep10514, i64 %indvars.iv
  %2897 = load double, ptr %gep10515, align 8, !tbaa !5
  %2898 = tail call double @llvm.fmuladd.f64(double %2897, double 0xBCCC000000000000, double %2896)
  %gep10517 = getelementptr double, ptr %invariant.gep10516, i64 %indvars.iv
  %2899 = load double, ptr %gep10517, align 8, !tbaa !5
  %2900 = tail call double @llvm.fmuladd.f64(double %2899, double 0xBCCB800000000000, double %2898)
  %gep10519 = getelementptr double, ptr %invariant.gep10518, i64 %indvars.iv
  store double %2900, ptr %gep10519, align 8, !tbaa !5
  %2901 = fmul double %2862, 0xC0118E7E1D819110
  %2902 = tail call double @llvm.fmuladd.f64(double %2861, double 0x3D128FFFFFFFFFFF, double %2901)
  %2903 = tail call double @llvm.fmuladd.f64(double %2865, double 0xBCFD900000000000, double %2902)
  %2904 = tail call double @llvm.fmuladd.f64(double %2867, double 0xBD01500000000000, double %2903)
  %2905 = tail call double @llvm.fmuladd.f64(double %2869, double 0x3D04A00000000000, double %2904)
  %2906 = tail call double @llvm.fmuladd.f64(double %2871, double 0x3D02E00000000000, double %2905)
  %2907 = tail call double @llvm.fmuladd.f64(double %2873, double 0xBD07300000000002, double %2906)
  %2908 = tail call double @llvm.fmuladd.f64(double %2875, double 0xBD03980000000000, double %2907)
  %2909 = tail call double @llvm.fmuladd.f64(double %2877, double 0xBD2A980000000000, double %2908)
  %2910 = tail call double @llvm.fmuladd.f64(double %2879, double 0xBD2A480000000000, double %2909)
  %2911 = tail call double @llvm.fmuladd.f64(double %2881, double 0x3CD1000000000000, double %2910)
  %2912 = tail call double @llvm.fmuladd.f64(double %2883, double 0xBFD4F58312101A82, double %2911)
  %2913 = tail call double @llvm.fmuladd.f64(double %2885, double 0xBCBA000000000000, double %2912)
  %2914 = tail call double @llvm.fmuladd.f64(double %2887, double 0xBCC5000000000000, double %2913)
  %2915 = tail call double @llvm.fmuladd.f64(double %2889, double 0x3CCA000000000000, double %2914)
  %2916 = tail call double @llvm.fmuladd.f64(double %2891, double 0x3CC2000000000000, double %2915)
  %2917 = tail call double @llvm.fmuladd.f64(double %2893, double 0xBCD1800000000000, double %2916)
  %2918 = tail call double @llvm.fmuladd.f64(double %2895, double 0xBCCF800000000000, double %2917)
  %2919 = tail call double @llvm.fmuladd.f64(double %2897, double 0xBCF1400000000000, double %2918)
  %2920 = tail call double @llvm.fmuladd.f64(double %2899, double 0xBCF0400000000000, double %2919)
  %gep10521 = getelementptr double, ptr %invariant.gep10520, i64 %indvars.iv
  store double %2920, ptr %gep10521, align 8, !tbaa !5
  %2921 = fmul double %2862, 0xBCFF700000000000
  %2922 = tail call double @llvm.fmuladd.f64(double %2861, double 0x3D11640000000000, double %2921)
  %2923 = tail call double @llvm.fmuladd.f64(double %2865, double 0xC0118E7E1D81910D, double %2922)
  %2924 = tail call double @llvm.fmuladd.f64(double %2867, double 0xBCFDD00000000000, double %2923)
  %2925 = tail call double @llvm.fmuladd.f64(double %2869, double 0xBD2AFF0000000001, double %2924)
  %2926 = tail call double @llvm.fmuladd.f64(double %2871, double 0xBD05940000000000, double %2925)
  %2927 = tail call double @llvm.fmuladd.f64(double %2873, double 0x3CFD7C0000000000, double %2926)
  %2928 = tail call double @llvm.fmuladd.f64(double %2875, double 0xBD2BB78000000000, double %2927)
  %2929 = tail call double @llvm.fmuladd.f64(double %2877, double 0xBD06580000000000, double %2928)
  %2930 = tail call double @llvm.fmuladd.f64(double %2879, double 0x3D03000000000000, double %2929)
  %2931 = tail call double @llvm.fmuladd.f64(double %2881, double 0x3CDA400000000000, double %2930)
  %2932 = tail call double @llvm.fmuladd.f64(double %2883, double 0xBCC0800000000000, double %2931)
  %2933 = tail call double @llvm.fmuladd.f64(double %2885, double 0xBFD4F58312101A79, double %2932)
  %2934 = tail call double @llvm.fmuladd.f64(double %2887, double 0xBCCB800000000000, double %2933)
  %2935 = tail call double @llvm.fmuladd.f64(double %2889, double 0xBCEDEFFFFFFFFFFF, double %2934)
  %2936 = tail call double @llvm.fmuladd.f64(double %2891, double 0xBCC7400000000000, double %2935)
  %2937 = tail call double @llvm.fmuladd.f64(double %2893, double 0x3CBBC00000000001, double %2936)
  %2938 = tail call double @llvm.fmuladd.f64(double %2895, double 0xBCF03C0000000000, double %2937)
  %2939 = tail call double @llvm.fmuladd.f64(double %2897, double 0xBCC3800000000000, double %2938)
  %2940 = tail call double @llvm.fmuladd.f64(double %2899, double 0x3CD0000000000000, double %2939)
  %gep10523 = getelementptr double, ptr %invariant.gep10522, i64 %indvars.iv
  store double %2940, ptr %gep10523, align 8, !tbaa !5
  %2941 = fmul double %2862, 0xBCFDF00000000000
  %2942 = tail call double @llvm.fmuladd.f64(double %2861, double 0x3D11F40000000000, double %2941)
  %2943 = tail call double @llvm.fmuladd.f64(double %2865, double 0xBCFE2C0000000000, double %2942)
  %2944 = tail call double @llvm.fmuladd.f64(double %2867, double 0xC0118E7E1D81910E, double %2943)
  %2945 = tail call double @llvm.fmuladd.f64(double %2869, double 0xBD05CC0000000000, double %2944)
  %2946 = tail call double @llvm.fmuladd.f64(double %2871, double 0xBD2B7D0000000001, double %2945)
  %2947 = tail call double @llvm.fmuladd.f64(double %2873, double 0xBD2A8F8000000000, double %2946)
  %2948 = tail call double @llvm.fmuladd.f64(double %2875, double 0x3CF99C0000000000, double %2947)
  %2949 = tail call double @llvm.fmuladd.f64(double %2877, double 0x3D02C00000000000, double %2948)
  %2950 = tail call double @llvm.fmuladd.f64(double %2879, double 0xBD06F80000000003, double %2949)
  %2951 = tail call double @llvm.fmuladd.f64(double %2881, double 0x3CD93FFFFFFFFFFF, double %2950)
  %2952 = tail call double @llvm.fmuladd.f64(double %2883, double 0xBCC0800000000000, double %2951)
  %2953 = tail call double @llvm.fmuladd.f64(double %2885, double 0xBCC0600000000000, double %2952)
  %2954 = tail call double @llvm.fmuladd.f64(double %2887, double 0xBFD4F58312101A7B, double %2953)
  %2955 = tail call double @llvm.fmuladd.f64(double %2889, double 0xBCC8C00000000000, double %2954)
  %2956 = tail call double @llvm.fmuladd.f64(double %2891, double 0xBCEED00000000001, double %2955)
  %2957 = tail call double @llvm.fmuladd.f64(double %2893, double 0xBCEFF7FFFFFFFFFF, double %2956)
  %2958 = tail call double @llvm.fmuladd.f64(double %2895, double 0x3CCCE00000000000, double %2957)
  %2959 = tail call double @llvm.fmuladd.f64(double %2897, double 0x3CC2000000000000, double %2958)
  %2960 = tail call double @llvm.fmuladd.f64(double %2899, double 0xBCC9800000000000, double %2959)
  %gep10525 = getelementptr double, ptr %invariant.gep10524, i64 %indvars.iv
  store double %2960, ptr %gep10525, align 8, !tbaa !5
  %2961 = fmul double %2862, 0x3CE5BFFFFFFFFFFF
  %2962 = tail call double @llvm.fmuladd.f64(double %2861, double 0xBD15A3FFFFFFFFFF, double %2961)
  %2963 = tail call double @llvm.fmuladd.f64(double %2865, double 0xBD13BCFFFFFFFFFF, double %2962)
  %2964 = tail call double @llvm.fmuladd.f64(double %2867, double 0xBCEA980000000001, double %2963)
  %2965 = tail call double @llvm.fmuladd.f64(double %2869, double 0xC0118E7E1D8191B3, double %2964)
  %2966 = tail call double @llvm.fmuladd.f64(double %2871, double 0x3D07000000000000, double %2965)
  %2967 = tail call double @llvm.fmuladd.f64(double %2873, double 0x3CF4380000000000, double %2966)
  %2968 = tail call double @llvm.fmuladd.f64(double %2875, double 0xBD0AF40000000001, double %2967)
  %2969 = tail call double @llvm.fmuladd.f64(double %2877, double 0x3CF6000000000000, double %2968)
  %2970 = tail call double @llvm.fmuladd.f64(double %2879, double 0x3D18680000000000, double %2969)
  %2971 = tail call double @llvm.fmuladd.f64(double %2881, double 0xBCD73FFFFFFFFFFE, double %2970)
  %2972 = tail call double @llvm.fmuladd.f64(double %2883, double 0x3C98000000000000, double %2971)
  %2973 = tail call double @llvm.fmuladd.f64(double %2885, double 0xBCDACFFFFFFFFFFE, double %2972)
  %2974 = tail call double @llvm.fmuladd.f64(double %2887, double 0xBCB2C00000000001, double %2973)
  %2975 = tail call double @llvm.fmuladd.f64(double %2889, double 0xBFD4F58312101B3F, double %2974)
  %2976 = tail call double @llvm.fmuladd.f64(double %2891, double 0x3CC8000000000000, double %2975)
  %2977 = tail call double @llvm.fmuladd.f64(double %2893, double 0x3CA7000000000002, double %2976)
  %2978 = tail call double @llvm.fmuladd.f64(double %2895, double 0xBCCF400000000000, double %2977)
  %2979 = tail call double @llvm.fmuladd.f64(double %2897, double 0x3CB0000000000000, double %2978)
  %2980 = tail call double @llvm.fmuladd.f64(double %2899, double 0x3CDD800000000001, double %2979)
  %gep10527 = getelementptr double, ptr %invariant.gep10526, i64 %indvars.iv
  store double %2980, ptr %gep10527, align 8, !tbaa !5
  %2981 = fmul double %2862, 0x3CEAC00000000001
  %2982 = tail call double @llvm.fmuladd.f64(double %2861, double 0xBD17B40000000000, double %2981)
  %2983 = tail call double @llvm.fmuladd.f64(double %2865, double 0xBCE927FFFFFFFFFF, double %2982)
  %2984 = tail call double @llvm.fmuladd.f64(double %2867, double 0xBD13B90000000001, double %2983)
  %2985 = tail call double @llvm.fmuladd.f64(double %2869, double 0x3D04D00000000000, double %2984)
  %2986 = tail call double @llvm.fmuladd.f64(double %2871, double 0xC0118E7E1D8191B1, double %2985)
  %2987 = tail call double @llvm.fmuladd.f64(double %2873, double 0xBD0A1C0000000001, double %2986)
  %2988 = tail call double @llvm.fmuladd.f64(double %2875, double 0x3CF7180000000000, double %2987)
  %2989 = tail call double @llvm.fmuladd.f64(double %2877, double 0x3D19000000000000, double %2988)
  %2990 = tail call double @llvm.fmuladd.f64(double %2879, double 0x3CF9C00000000000, double %2989)
  %2991 = tail call double @llvm.fmuladd.f64(double %2881, double 0xBCDA400000000000, double %2990)
  %2992 = tail call double @llvm.fmuladd.f64(double %2883, double 0x3CA4000000000001, double %2991)
  %2993 = tail call double @llvm.fmuladd.f64(double %2885, double 0xBCB1400000000000, double %2992)
  %2994 = tail call double @llvm.fmuladd.f64(double %2887, double 0xBCDB900000000001, double %2993)
  %2995 = tail call double @llvm.fmuladd.f64(double %2889, double 0x3CCB000000000000, double %2994)
  %2996 = tail call double @llvm.fmuladd.f64(double %2891, double 0xBFD4F58312101B43, double %2995)
  %2997 = tail call double @llvm.fmuladd.f64(double %2893, double 0xBCD0E00000000000, double %2996)
  %2998 = tail call double @llvm.fmuladd.f64(double %2895, double 0x3CBD800000000001, double %2997)
  %2999 = tail call double @llvm.fmuladd.f64(double %2897, double 0x3CDFFFFFFFFFFFFE, double %2998)
  %3000 = tail call double @llvm.fmuladd.f64(double %2899, double 0x3CC4000000000000, double %2999)
  %gep10529 = getelementptr double, ptr %invariant.gep10528, i64 %indvars.iv
  store double %3000, ptr %gep10529, align 8, !tbaa !5
  %3001 = fmul double %2862, 0xBCED100000000000
  %3002 = tail call double @llvm.fmuladd.f64(double %2861, double 0xBD167E0000000000, double %3001)
  %3003 = tail call double @llvm.fmuladd.f64(double %2865, double 0x3CE5A80000000001, double %3002)
  %3004 = tail call double @llvm.fmuladd.f64(double %2867, double 0xBD129C7FFFFFFFFE, double %3003)
  %3005 = tail call double @llvm.fmuladd.f64(double %2869, double 0x3CF3340000000000, double %3004)
  %3006 = tail call double @llvm.fmuladd.f64(double %2871, double 0xBD09760000000001, double %3005)
  %3007 = tail call double @llvm.fmuladd.f64(double %2873, double 0xC0118E7E1D8191B2, double %3006)
  %3008 = tail call double @llvm.fmuladd.f64(double %2875, double 0x3D17E57FFFFFFFFE, double %3007)
  %3009 = tail call double @llvm.fmuladd.f64(double %2877, double 0x3CF6D80000000000, double %3008)
  %3010 = tail call double @llvm.fmuladd.f64(double %2879, double 0x3D07C7FFFFFFFFFF, double %3009)
  %3011 = tail call double @llvm.fmuladd.f64(double %2881, double 0xBCDBE00000000000, double %3010)
  %3012 = tail call double @llvm.fmuladd.f64(double %2883, double 0xBC9DFFFFFFFFFFFE, double %3011)
  %3013 = tail call double @llvm.fmuladd.f64(double %2885, double 0x3C9CFFFFFFFFFFFF, double %3012)
  %3014 = tail call double @llvm.fmuladd.f64(double %2887, double 0xBCD6C7FFFFFFFFFE, double %3013)
  %3015 = tail call double @llvm.fmuladd.f64(double %2889, double 0x3CAE800000000001, double %3014)
  %3016 = tail call double @llvm.fmuladd.f64(double %2891, double 0xBCCD600000000000, double %3015)
  %3017 = tail call double @llvm.fmuladd.f64(double %2893, double 0xBFD4F58312101B3B, double %3016)
  %3018 = tail call double @llvm.fmuladd.f64(double %2895, double 0x3CE02BFFFFFFFFFF, double %3017)
  %3019 = tail call double @llvm.fmuladd.f64(double %2897, double 0x3CC3C00000000000, double %3018)
  %3020 = tail call double @llvm.fmuladd.f64(double %2899, double 0x3CCB800000000000, double %3019)
  %gep10531 = getelementptr double, ptr %invariant.gep10530, i64 %indvars.iv
  store double %3020, ptr %gep10531, align 8, !tbaa !5
  %3021 = fmul double %2862, 0xBCF0200000000000
  %3022 = tail call double @llvm.fmuladd.f64(double %2861, double 0xBD1569FFFFFFFFFF, double %3021)
  %3023 = tail call double @llvm.fmuladd.f64(double %2865, double 0xBD1478FFFFFFFFFF, double %3022)
  %3024 = tail call double @llvm.fmuladd.f64(double %2867, double 0x3CE4140000000000, double %3023)
  %3025 = tail call double @llvm.fmuladd.f64(double %2869, double 0xBD0A620000000003, double %3024)
  %3026 = tail call double @llvm.fmuladd.f64(double %2871, double 0x3CF36BFFFFFFFFFF, double %3025)
  %3027 = tail call double @llvm.fmuladd.f64(double %2873, double 0x3D17E27FFFFFFFFF, double %3026)
  %3028 = tail call double @llvm.fmuladd.f64(double %2875, double 0xC0118E7E1D8191B1, double %3027)
  %3029 = tail call double @llvm.fmuladd.f64(double %2877, double 0x3D07F3FFFFFFFFFF, double %3028)
  %3030 = tail call double @llvm.fmuladd.f64(double %2879, double 0x3CF6F80000000000, double %3029)
  %3031 = tail call double @llvm.fmuladd.f64(double %2881, double 0xBCDAA00000000002, double %3030)
  %3032 = tail call double @llvm.fmuladd.f64(double %2883, double 0xBCA5FFFFFFFFFFFF, double %3031)
  %3033 = tail call double @llvm.fmuladd.f64(double %2885, double 0xBCD6100000000001, double %3032)
  %3034 = tail call double @llvm.fmuladd.f64(double %2887, double 0x3CB8A00000000000, double %3033)
  %3035 = tail call double @llvm.fmuladd.f64(double %2889, double 0xBCD30FFFFFFFFFFE, double %3034)
  %3036 = tail call double @llvm.fmuladd.f64(double %2891, double 0x3CB4C00000000000, double %3035)
  %3037 = tail call double @llvm.fmuladd.f64(double %2893, double 0x3CDD280000000000, double %3036)
  %3038 = tail call double @llvm.fmuladd.f64(double %2895, double 0xBFD4F58312101B3A, double %3037)
  %3039 = tail call double @llvm.fmuladd.f64(double %2897, double 0x3CD0200000000000, double %3038)
  %3040 = tail call double @llvm.fmuladd.f64(double %2899, double 0x3CC2C00000000000, double %3039)
  %gep10533 = getelementptr double, ptr %invariant.gep10532, i64 %indvars.iv
  store double %3040, ptr %gep10533, align 8, !tbaa !5
  %3041 = fmul double %2862, 0xBD13680000000001
  %3042 = tail call double @llvm.fmuladd.f64(double %2861, double 0xBD16B00000000000, double %3041)
  %3043 = tail call double @llvm.fmuladd.f64(double %2865, double 0xBCEE600000000000, double %3042)
  %3044 = tail call double @llvm.fmuladd.f64(double %2867, double 0x3CE6500000000001, double %3043)
  %3045 = tail call double @llvm.fmuladd.f64(double %2869, double 0x3CF7A00000000000, double %3044)
  %3046 = tail call double @llvm.fmuladd.f64(double %2871, double 0x3D18C00000000000, double %3045)
  %3047 = tail call double @llvm.fmuladd.f64(double %2873, double 0x3CF6680000000000, double %3046)
  %3048 = tail call double @llvm.fmuladd.f64(double %2875, double 0x3D09800000000002, double %3047)
  %3049 = tail call double @llvm.fmuladd.f64(double %2877, double 0xC0118E7E1D8191B0, double %3048)
  %3050 = tail call double @llvm.fmuladd.f64(double %2879, double 0xBD0DA00000000003, double %3049)
  %3051 = tail call double @llvm.fmuladd.f64(double %2881, double 0xBCD7000000000000, double %3050)
  %3052 = tail call double @llvm.fmuladd.f64(double %2883, double 0xBCD9800000000002, double %3051)
  %3053 = tail call double @llvm.fmuladd.f64(double %2885, double 0xBCA2000000000000, double %3052)
  %3054 = tail call double @llvm.fmuladd.f64(double %2887, double 0x3C92000000000000, double %3053)
  %3055 = tail call double @llvm.fmuladd.f64(double %2889, double 0x3CB2000000000000, double %3054)
  %3056 = tail call double @llvm.fmuladd.f64(double %2891, double 0x3CE1000000000000, double %3055)
  %3057 = tail call double @llvm.fmuladd.f64(double %2893, double 0x3CC2400000000000, double %3056)
  %3058 = tail call double @llvm.fmuladd.f64(double %2895, double 0x3CCF000000000000, double %3057)
  %3059 = tail call double @llvm.fmuladd.f64(double %2897, double 0xBFD4F58312101B3D, double %3058)
  %3060 = tail call double @llvm.fmuladd.f64(double %2899, double 0xBCCE000000000000, double %3059)
  %gep10535 = getelementptr double, ptr %invariant.gep10534, i64 %indvars.iv
  store double %3060, ptr %gep10535, align 8, !tbaa !5
  %3061 = fmul double %2862, 0xBD12680000000000
  %3062 = tail call double @llvm.fmuladd.f64(double %2861, double 0xBD17000000000000, double %3061)
  %3063 = tail call double @llvm.fmuladd.f64(double %2865, double 0x3CEADFFFFFFFFFFF, double %3062)
  %3064 = tail call double @llvm.fmuladd.f64(double %2867, double 0xBCF1380000000000, double %3063)
  %3065 = tail call double @llvm.fmuladd.f64(double %2869, double 0x3D19CFFFFFFFFFFF, double %3064)
  %3066 = tail call double @llvm.fmuladd.f64(double %2871, double 0x3CF7400000000000, double %3065)
  %3067 = tail call double @llvm.fmuladd.f64(double %2873, double 0x3D08700000000003, double %3066)
  %3068 = tail call double @llvm.fmuladd.f64(double %2875, double 0x3CF6E00000000000, double %3067)
  %3069 = tail call double @llvm.fmuladd.f64(double %2877, double 0xBD0FD00000000002, double %3068)
  %3070 = tail call double @llvm.fmuladd.f64(double %2879, double 0xC0118E7E1D8191B1, double %3069)
  %3071 = tail call double @llvm.fmuladd.f64(double %2881, double 0xBCD8000000000001, double %3070)
  %3072 = tail call double @llvm.fmuladd.f64(double %2883, double 0xBCD7800000000000, double %3071)
  %3073 = tail call double @llvm.fmuladd.f64(double %2885, double 0x3CAE000000000002, double %3072)
  %3074 = tail call double @llvm.fmuladd.f64(double %2887, double 0xBCA7000000000002, double %3073)
  %3075 = tail call double @llvm.fmuladd.f64(double %2889, double 0x3CE1800000000000, double %3074)
  %3076 = tail call double @llvm.fmuladd.f64(double %2891, double 0x3CBC000000000000, double %3075)
  %3077 = tail call double @llvm.fmuladd.f64(double %2893, double 0x3CC9000000000000, double %3076)
  %3078 = tail call double @llvm.fmuladd.f64(double %2895, double 0x3CAC000000000000, double %3077)
  %3079 = tail call double @llvm.fmuladd.f64(double %2897, double 0xBCCD000000000000, double %3078)
  %3080 = tail call double @llvm.fmuladd.f64(double %2899, double 0xBFD4F58312101B3D, double %3079)
  %gep10537 = getelementptr double, ptr %invariant.gep10536, i64 %indvars.iv
  store double %3080, ptr %gep10537, align 8, !tbaa !5
  %3081 = fmul double %2862, 0xBCC4800000000000
  %3082 = tail call double @llvm.fmuladd.f64(double %2861, double 0x3FF3F64564513B1C, double %3081)
  %3083 = tail call double @llvm.fmuladd.f64(double %2865, double 0xBCC6200000000000, double %3082)
  %3084 = tail call double @llvm.fmuladd.f64(double %2867, double 0xBCC4600000000000, double %3083)
  %3085 = tail call double @llvm.fmuladd.f64(double %2869, double 0x3CEB600000000000, double %3084)
  %3086 = tail call double @llvm.fmuladd.f64(double %2871, double 0x3CEB200000000000, double %3085)
  %3087 = tail call double @llvm.fmuladd.f64(double %2873, double 0x3CEBA00000000000, double %3086)
  %3088 = tail call double @llvm.fmuladd.f64(double %2875, double 0x3CE9600000000001, double %3087)
  %3089 = tail call double @llvm.fmuladd.f64(double %2877, double 0x3CEAC00000000001, double %3088)
  %3090 = tail call double @llvm.fmuladd.f64(double %2879, double 0x3CE9C00000000000, double %3089)
  %3091 = tail call double @llvm.fmuladd.f64(double %2881, double 0x3FE3AA36D354D104, double %3090)
  %3092 = tail call double @llvm.fmuladd.f64(double %2883, double 0xBCB1000000000001, double %3091)
  %3093 = tail call double @llvm.fmuladd.f64(double %2885, double 0xBCB43FFFFFFFFFFF, double %3092)
  %3094 = tail call double @llvm.fmuladd.f64(double %2887, double 0xBCB2C00000000001, double %3093)
  %3095 = tail call double @llvm.fmuladd.f64(double %2889, double 0x3CDBC00000000002, double %3094)
  %3096 = tail call double @llvm.fmuladd.f64(double %2891, double 0x3CDBC00000000002, double %3095)
  %3097 = tail call double @llvm.fmuladd.f64(double %2893, double 0x3CDB400000000001, double %3096)
  %3098 = tail call double @llvm.fmuladd.f64(double %2895, double 0x3CDAC00000000001, double %3097)
  %3099 = tail call double @llvm.fmuladd.f64(double %2897, double 0x3CDB7FFFFFFFFFFF, double %3098)
  %3100 = tail call double @llvm.fmuladd.f64(double %2899, double 0x3CDA000000000003, double %3099)
  %gep10539 = getelementptr double, ptr %invariant.gep10538, i64 %indvars.iv
  store double %3100, ptr %gep10539, align 8, !tbaa !5
  %3101 = fmul double %2862, 0x3FF3F64564513A68
  %3102 = tail call double @llvm.fmuladd.f64(double %2861, double 0xBCF4FFFFFFFFFFFF, double %3101)
  %3103 = tail call double @llvm.fmuladd.f64(double %2865, double 0x3CE07FFFFFFFFFFF, double %3102)
  %3104 = tail call double @llvm.fmuladd.f64(double %2867, double 0x3CE4DFFFFFFFFFFF, double %3103)
  %3105 = tail call double @llvm.fmuladd.f64(double %2869, double 0xBCE8000000000001, double %3104)
  %3106 = tail call double @llvm.fmuladd.f64(double %2871, double 0xBCE67FFFFFFFFFFF, double %3105)
  %3107 = tail call double @llvm.fmuladd.f64(double %2873, double 0x3CEAC00000000001, double %3106)
  %3108 = tail call double @llvm.fmuladd.f64(double %2875, double 0x3CE7C00000000001, double %3107)
  %3109 = tail call double @llvm.fmuladd.f64(double %2877, double 0x3D0E800000000000, double %3108)
  %3110 = tail call double @llvm.fmuladd.f64(double %2879, double 0x3D0E3FFFFFFFFFFD, double %3109)
  %3111 = tail call double @llvm.fmuladd.f64(double %2881, double 0xBCE2000000000001, double %3110)
  %3112 = tail call double @llvm.fmuladd.f64(double %2883, double 0x3FE3AA36D354D050, double %3111)
  %3113 = tail call double @llvm.fmuladd.f64(double %2885, double 0x3CCB000000000000, double %3112)
  %3114 = tail call double @llvm.fmuladd.f64(double %2887, double 0x3CD4C00000000000, double %3113)
  %3115 = tail call double @llvm.fmuladd.f64(double %2889, double 0xBCD4000000000002, double %3114)
  %3116 = tail call double @llvm.fmuladd.f64(double %2891, double 0xBCD7000000000000, double %3115)
  %3117 = tail call double @llvm.fmuladd.f64(double %2893, double 0x3CDE800000000001, double %3116)
  %3118 = tail call double @llvm.fmuladd.f64(double %2895, double 0x3CDA7FFFFFFFFFFE, double %3117)
  %3119 = tail call double @llvm.fmuladd.f64(double %2897, double 0x3D00000000000000, double %3118)
  %3120 = tail call double @llvm.fmuladd.f64(double %2899, double 0x3CFD800000000001, double %3119)
  %gep10541 = getelementptr double, ptr %invariant.gep10540, i64 %indvars.iv
  store double %3120, ptr %gep10541, align 8, !tbaa !5
  %3121 = fmul double %2862, 0x3CE2000000000001
  %3122 = tail call double @llvm.fmuladd.f64(double %2861, double 0xBCF6000000000000, double %3121)
  %3123 = tail call double @llvm.fmuladd.f64(double %2865, double 0x3FF3F64564513A5F, double %3122)
  %3124 = tail call double @llvm.fmuladd.f64(double %2867, double 0x3CE1300000000000, double %3123)
  %3125 = tail call double @llvm.fmuladd.f64(double %2869, double 0x3D0E380000000000, double %3124)
  %3126 = tail call double @llvm.fmuladd.f64(double %2871, double 0x3CE75FFFFFFFFFFF, double %3125)
  %3127 = tail call double @llvm.fmuladd.f64(double %2873, double 0xBCE2400000000001, double %3126)
  %3128 = tail call double @llvm.fmuladd.f64(double %2875, double 0x3D0FC7FFFFFFFFFE, double %3127)
  %3129 = tail call double @llvm.fmuladd.f64(double %2877, double 0x3CE7C00000000001, double %3128)
  %3130 = tail call double @llvm.fmuladd.f64(double %2879, double 0xBCE5BFFFFFFFFFFF, double %3129)
  %3131 = tail call double @llvm.fmuladd.f64(double %2881, double 0xBCEA000000000000, double %3130)
  %3132 = tail call double @llvm.fmuladd.f64(double %2883, double 0x3CD1000000000000, double %3131)
  %3133 = tail call double @llvm.fmuladd.f64(double %2885, double 0x3FE3AA36D354D04B, double %3132)
  %3134 = tail call double @llvm.fmuladd.f64(double %2887, double 0x3CCEC00000000000, double %3133)
  %3135 = tail call double @llvm.fmuladd.f64(double %2889, double 0x3CFD700000000000, double %3134)
  %3136 = tail call double @llvm.fmuladd.f64(double %2891, double 0x3CDAC00000000001, double %3135)
  %3137 = tail call double @llvm.fmuladd.f64(double %2893, double 0xBCD47FFFFFFFFFFE, double %3136)
  %3138 = tail call double @llvm.fmuladd.f64(double %2895, double 0x3CFE900000000000, double %3137)
  %3139 = tail call double @llvm.fmuladd.f64(double %2897, double 0x3CD7800000000000, double %3138)
  %3140 = tail call double @llvm.fmuladd.f64(double %2899, double 0xBCD3800000000002, double %3139)
  %gep10543 = getelementptr double, ptr %invariant.gep10542, i64 %indvars.iv
  store double %3140, ptr %gep10543, align 8, !tbaa !5
  %3141 = fmul double %2862, 0x3CE15FFFFFFFFFFF
  %3142 = tail call double @llvm.fmuladd.f64(double %2861, double 0xBCF5E00000000000, double %3141)
  %3143 = tail call double @llvm.fmuladd.f64(double %2865, double 0x3CE26FFFFFFFFFFF, double %3142)
  %3144 = tail call double @llvm.fmuladd.f64(double %2867, double 0x3FF3F64564513A5F, double %3143)
  %3145 = tail call double @llvm.fmuladd.f64(double %2869, double 0x3CE8E00000000000, double %3144)
  %3146 = tail call double @llvm.fmuladd.f64(double %2871, double 0x3D0E97FFFFFFFFFE, double %3145)
  %3147 = tail call double @llvm.fmuladd.f64(double %2873, double 0x3D0DD80000000002, double %3146)
  %3148 = tail call double @llvm.fmuladd.f64(double %2875, double 0xBCDE800000000001, double %3147)
  %3149 = tail call double @llvm.fmuladd.f64(double %2877, double 0xBCE5400000000001, double %3148)
  %3150 = tail call double @llvm.fmuladd.f64(double %2879, double 0x3CE9800000000000, double %3149)
  %3151 = tail call double @llvm.fmuladd.f64(double %2881, double 0xBCE9C00000000000, double %3150)
  %3152 = tail call double @llvm.fmuladd.f64(double %2883, double 0x3CD1400000000000, double %3151)
  %3153 = tail call double @llvm.fmuladd.f64(double %2885, double 0x3CD0E00000000000, double %3152)
  %3154 = tail call double @llvm.fmuladd.f64(double %2887, double 0x3FE3AA36D354D04F, double %3153)
  %3155 = tail call double @llvm.fmuladd.f64(double %2889, double 0x3CD7BFFFFFFFFFFE, double %3154)
  %3156 = tail call double @llvm.fmuladd.f64(double %2891, double 0x3CFD300000000000, double %3155)
  %3157 = tail call double @llvm.fmuladd.f64(double %2893, double 0x3CFD300000000000, double %3156)
  %3158 = tail call double @llvm.fmuladd.f64(double %2895, double 0xBCCD000000000000, double %3157)
  %3159 = tail call double @llvm.fmuladd.f64(double %2897, double 0xBCD67FFFFFFFFFFF, double %3158)
  %3160 = tail call double @llvm.fmuladd.f64(double %2899, double 0x3CD9000000000002, double %3159)
  %gep10545 = getelementptr double, ptr %invariant.gep10544, i64 %indvars.iv
  store double %3160, ptr %gep10545, align 8, !tbaa !5
  %3161 = fmul double %2862, 0xBCCA000000000000
  %3162 = tail call double @llvm.fmuladd.f64(double %2861, double 0x3CF9A00000000000, double %3161)
  %3163 = tail call double @llvm.fmuladd.f64(double %2865, double 0x3CF6580000000000, double %3162)
  %3164 = tail call double @llvm.fmuladd.f64(double %2867, double 0x3CCC600000000000, double %3163)
  %3165 = tail call double @llvm.fmuladd.f64(double %2869, double 0x3FF3F64564513B21, double %3164)
  %3166 = tail call double @llvm.fmuladd.f64(double %2871, double 0xBCEAC00000000001, double %3165)
  %3167 = tail call double @llvm.fmuladd.f64(double %2873, double 0xBCD7BFFFFFFFFFFE, double %3166)
  %3168 = tail call double @llvm.fmuladd.f64(double %2875, double 0x3CEE400000000001, double %3167)
  %3169 = tail call double @llvm.fmuladd.f64(double %2877, double 0xBCD67FFFFFFFFFFF, double %3168)
  %3170 = tail call double @llvm.fmuladd.f64(double %2879, double 0xBCFC3FFFFFFFFFFF, double %3169)
  %3171 = tail call double @llvm.fmuladd.f64(double %2881, double 0x3CE9C00000000000, double %3170)
  %3172 = tail call double @llvm.fmuladd.f64(double %2883, double 0xBCB8000000000001, double %3171)
  %3173 = tail call double @llvm.fmuladd.f64(double %2885, double 0x3CE6B00000000000, double %3172)
  %3174 = tail call double @llvm.fmuladd.f64(double %2887, double 0x3CB9C00000000001, double %3173)
  %3175 = tail call double @llvm.fmuladd.f64(double %2889, double 0x3FE3AA36D354D104, double %3174)
  %3176 = tail call double @llvm.fmuladd.f64(double %2891, double 0xBCDA7FFFFFFFFFFE, double %3175)
  %3177 = tail call double @llvm.fmuladd.f64(double %2893, double 0xBCC4800000000000, double %3176)
  %3178 = tail call double @llvm.fmuladd.f64(double %2895, double 0x3CDE800000000001, double %3177)
  %3179 = tail call double @llvm.fmuladd.f64(double %2897, double 0xBCC1000000000000, double %3178)
  %3180 = tail call double @llvm.fmuladd.f64(double %2899, double 0xBCEC800000000000, double %3179)
  %gep10547 = getelementptr double, ptr %invariant.gep10546, i64 %indvars.iv
  store double %3180, ptr %gep10547, align 8, !tbaa !5
  %3181 = fmul double %2862, 0xBCD0800000000000
  %3182 = tail call double @llvm.fmuladd.f64(double %2861, double 0x3CFB600000000000, double %3181)
  %3183 = tail call double @llvm.fmuladd.f64(double %2865, double 0x3CCC400000000000, double %3182)
  %3184 = tail call double @llvm.fmuladd.f64(double %2867, double 0x3CF62C0000000001, double %3183)
  %3185 = tail call double @llvm.fmuladd.f64(double %2869, double 0xBCE8E00000000000, double %3184)
  %3186 = tail call double @llvm.fmuladd.f64(double %2871, double 0x3FF3F64564513B1C, double %3185)
  %3187 = tail call double @llvm.fmuladd.f64(double %2873, double 0x3CEE200000000000, double %3186)
  %3188 = tail call double @llvm.fmuladd.f64(double %2875, double 0xBCD93FFFFFFFFFFF, double %3187)
  %3189 = tail call double @llvm.fmuladd.f64(double %2877, double 0xBCFCC00000000000, double %3188)
  %3190 = tail call double @llvm.fmuladd.f64(double %2879, double 0xBCDBFFFFFFFFFFFF, double %3189)
  %3191 = tail call double @llvm.fmuladd.f64(double %2881, double 0x3CEBBFFFFFFFFFFF, double %3190)
  %3192 = tail call double @llvm.fmuladd.f64(double %2883, double 0xBCC0000000000000, double %3191)
  %3193 = tail call double @llvm.fmuladd.f64(double %2885, double 0x3CB8800000000000, double %3192)
  %3194 = tail call double @llvm.fmuladd.f64(double %2887, double 0x3CE557FFFFFFFFFF, double %3193)
  %3195 = tail call double @llvm.fmuladd.f64(double %2889, double 0xBCD6C00000000002, double %3194)
  %3196 = tail call double @llvm.fmuladd.f64(double %2891, double 0x3FE3AA36D354D103, double %3195)
  %3197 = tail call double @llvm.fmuladd.f64(double %2893, double 0x3CE0200000000000, double %3196)
  %3198 = tail call double @llvm.fmuladd.f64(double %2895, double 0xBCCC800000000000, double %3197)
  %3199 = tail call double @llvm.fmuladd.f64(double %2897, double 0xBCEC800000000000, double %3198)
  %3200 = tail call double @llvm.fmuladd.f64(double %2899, double 0xBCC7000000000000, double %3199)
  %gep10549 = getelementptr double, ptr %invariant.gep10548, i64 %indvars.iv
  store double %3200, ptr %gep10549, align 8, !tbaa !5
  %3201 = fmul double %2862, 0x3CD1800000000000
  %3202 = tail call double @llvm.fmuladd.f64(double %2861, double 0x3CF9480000000000, double %3201)
  %3203 = tail call double @llvm.fmuladd.f64(double %2865, double 0xBCC8C00000000000, double %3202)
  %3204 = tail call double @llvm.fmuladd.f64(double %2867, double 0x3CF59BFFFFFFFFFF, double %3203)
  %3205 = tail call double @llvm.fmuladd.f64(double %2869, double 0xBCD71FFFFFFFFFFF, double %3204)
  %3206 = tail call double @llvm.fmuladd.f64(double %2871, double 0x3CED300000000001, double %3205)
  %3207 = tail call double @llvm.fmuladd.f64(double %2873, double 0x3FF3F64564513B1C, double %3206)
  %3208 = tail call double @llvm.fmuladd.f64(double %2875, double 0xBCFADC0000000000, double %3207)
  %3209 = tail call double @llvm.fmuladd.f64(double %2877, double 0xBCD9000000000002, double %3208)
  %3210 = tail call double @llvm.fmuladd.f64(double %2879, double 0xBCEB7FFFFFFFFFFF, double %3209)
  %3211 = tail call double @llvm.fmuladd.f64(double %2881, double 0x3CEC8FFFFFFFFFFF, double %3210)
  %3212 = tail call double @llvm.fmuladd.f64(double %2883, double 0x3CBE000000000000, double %3211)
  %3213 = tail call double @llvm.fmuladd.f64(double %2885, double 0xBCB1800000000000, double %3212)
  %3214 = tail call double @llvm.fmuladd.f64(double %2887, double 0x3CE5380000000000, double %3213)
  %3215 = tail call double @llvm.fmuladd.f64(double %2889, double 0xBCC4400000000000, double %3214)
  %3216 = tail call double @llvm.fmuladd.f64(double %2891, double 0x3CDE5FFFFFFFFFFD, double %3215)
  %3217 = tail call double @llvm.fmuladd.f64(double %2893, double 0x3FE3AA36D354D105, double %3216)
  %3218 = tail call double @llvm.fmuladd.f64(double %2895, double 0xBCEBB80000000001, double %3217)
  %3219 = tail call double @llvm.fmuladd.f64(double %2897, double 0xBCCC000000000000, double %3218)
  %3220 = tail call double @llvm.fmuladd.f64(double %2899, double 0xBCDAFFFFFFFFFFFE, double %3219)
  %gep10551 = getelementptr double, ptr %invariant.gep10550, i64 %indvars.iv
  store double %3220, ptr %gep10551, align 8, !tbaa !5
  %3221 = fmul double %2862, 0x3CD2DFFFFFFFFFFE
  %3222 = tail call double @llvm.fmuladd.f64(double %2861, double 0x3CF8B80000000000, double %3221)
  %3223 = tail call double @llvm.fmuladd.f64(double %2865, double 0x3CF7B80000000000, double %3222)
  %3224 = tail call double @llvm.fmuladd.f64(double %2867, double 0xBCC4200000000000, double %3223)
  %3225 = tail call double @llvm.fmuladd.f64(double %2869, double 0x3CEE500000000001, double %3224)
  %3226 = tail call double @llvm.fmuladd.f64(double %2871, double 0xBCD5A00000000002, double %3225)
  %3227 = tail call double @llvm.fmuladd.f64(double %2873, double 0xBCFBBC0000000000, double %3226)
  %3228 = tail call double @llvm.fmuladd.f64(double %2875, double 0x3FF3F64564513B1C, double %3227)
  %3229 = tail call double @llvm.fmuladd.f64(double %2877, double 0xBCEB7FFFFFFFFFFF, double %3228)
  %3230 = tail call double @llvm.fmuladd.f64(double %2879, double 0xBCD93FFFFFFFFFFF, double %3229)
  %3231 = tail call double @llvm.fmuladd.f64(double %2881, double 0x3CEB6FFFFFFFFFFF, double %3230)
  %3232 = tail call double @llvm.fmuladd.f64(double %2883, double 0x3CC0C00000000000, double %3231)
  %3233 = tail call double @llvm.fmuladd.f64(double %2885, double 0x3CE6700000000000, double %3232)
  %3234 = tail call double @llvm.fmuladd.f64(double %2887, double 0xBCB43FFFFFFFFFFF, double %3233)
  %3235 = tail call double @llvm.fmuladd.f64(double %2889, double 0x3CDEA00000000000, double %3234)
  %3236 = tail call double @llvm.fmuladd.f64(double %2891, double 0xBCC7400000000000, double %3235)
  %3237 = tail call double @llvm.fmuladd.f64(double %2893, double 0xBCEAF80000000000, double %3236)
  %3238 = tail call double @llvm.fmuladd.f64(double %2895, double 0x3FE3AA36D354D103, double %3237)
  %3239 = tail call double @llvm.fmuladd.f64(double %2897, double 0xBCDBFFFFFFFFFFFF, double %3238)
  %3240 = tail call double @llvm.fmuladd.f64(double %2899, double 0xBCC6800000000000, double %3239)
  %gep10553 = getelementptr double, ptr %invariant.gep10552, i64 %indvars.iv
  store double %3240, ptr %gep10553, align 8, !tbaa !5
  %3241 = fmul double %2862, 0x3CF6600000000001
  %3242 = tail call double @llvm.fmuladd.f64(double %2861, double 0x3CF9E00000000000, double %3241)
  %3243 = tail call double @llvm.fmuladd.f64(double %2865, double 0x3CCF400000000000, double %3242)
  %3244 = tail call double @llvm.fmuladd.f64(double %2867, double 0xBCC5800000000000, double %3243)
  %3245 = tail call double @llvm.fmuladd.f64(double %2869, double 0xBCDBFFFFFFFFFFFF, double %3244)
  %3246 = tail call double @llvm.fmuladd.f64(double %2871, double 0xBCFBA00000000000, double %3245)
  %3247 = tail call double @llvm.fmuladd.f64(double %2873, double 0xBCD7BFFFFFFFFFFE, double %3246)
  %3248 = tail call double @llvm.fmuladd.f64(double %2875, double 0xBCED000000000000, double %3247)
  %3249 = tail call double @llvm.fmuladd.f64(double %2877, double 0x3FF3F64564513B1C, double %3248)
  %3250 = tail call double @llvm.fmuladd.f64(double %2879, double 0x3CF1800000000000, double %3249)
  %3251 = tail call double @llvm.fmuladd.f64(double %2881, double 0x3CEAC00000000001, double %3250)
  %3252 = tail call double @llvm.fmuladd.f64(double %2883, double 0x3CE5800000000001, double %3251)
  %3253 = tail call double @llvm.fmuladd.f64(double %2885, double 0x3CB97FFFFFFFFFFF, double %3252)
  %3254 = tail call double @llvm.fmuladd.f64(double %2887, double 0xBCB9000000000000, double %3253)
  %3255 = tail call double @llvm.fmuladd.f64(double %2889, double 0xBCCC000000000000, double %3254)
  %3256 = tail call double @llvm.fmuladd.f64(double %2891, double 0xBCEB400000000001, double %3255)
  %3257 = tail call double @llvm.fmuladd.f64(double %2893, double 0xBCC5800000000000, double %3256)
  %3258 = tail call double @llvm.fmuladd.f64(double %2895, double 0xBCDAFFFFFFFFFFFE, double %3257)
  %3259 = tail call double @llvm.fmuladd.f64(double %2897, double 0x3FE3AA36D354D103, double %3258)
  %3260 = tail call double @llvm.fmuladd.f64(double %2899, double 0x3CE1800000000000, double %3259)
  %gep10555 = getelementptr double, ptr %invariant.gep10554, i64 %indvars.iv
  store double %3260, ptr %gep10555, align 8, !tbaa !5
  %3261 = fmul double %2862, 0x3CF5200000000000
  %3262 = tail call double @llvm.fmuladd.f64(double %2861, double 0x3CFA600000000000, double %3261)
  %3263 = tail call double @llvm.fmuladd.f64(double %2865, double 0xBCC7C00000000000, double %3262)
  %3264 = tail call double @llvm.fmuladd.f64(double %2867, double 0x3CD3A00000000001, double %3263)
  %3265 = tail call double @llvm.fmuladd.f64(double %2869, double 0xBCFD600000000000, double %3264)
  %3266 = tail call double @llvm.fmuladd.f64(double %2871, double 0xBCDB7FFFFFFFFFFF, double %3265)
  %3267 = tail call double @llvm.fmuladd.f64(double %2873, double 0xBCEC800000000000, double %3266)
  %3268 = tail call double @llvm.fmuladd.f64(double %2875, double 0xBCDA400000000000, double %3267)
  %3269 = tail call double @llvm.fmuladd.f64(double %2877, double 0x3CF2400000000000, double %3268)
  %3270 = tail call double @llvm.fmuladd.f64(double %2879, double 0x3FF3F64564513B1C, double %3269)
  %3271 = tail call double @llvm.fmuladd.f64(double %2881, double 0x3CEBBFFFFFFFFFFF, double %3270)
  %3272 = tail call double @llvm.fmuladd.f64(double %2883, double 0x3CE3C00000000000, double %3271)
  %3273 = tail call double @llvm.fmuladd.f64(double %2885, double 0xBCBB800000000001, double %3272)
  %3274 = tail call double @llvm.fmuladd.f64(double %2887, double 0x3CC3400000000000, double %3273)
  %3275 = tail call double @llvm.fmuladd.f64(double %2889, double 0xBCECC00000000000, double %3274)
  %3276 = tail call double @llvm.fmuladd.f64(double %2891, double 0xBCCB000000000000, double %3275)
  %3277 = tail call double @llvm.fmuladd.f64(double %2893, double 0xBCDAFFFFFFFFFFFE, double %3276)
  %3278 = tail call double @llvm.fmuladd.f64(double %2895, double 0xBCC6800000000000, double %3277)
  %3279 = tail call double @llvm.fmuladd.f64(double %2897, double 0x3CE1000000000000, double %3278)
  %3280 = tail call double @llvm.fmuladd.f64(double %2899, double 0x3FE3AA36D354D104, double %3279)
  %gep10557 = getelementptr double, ptr %invariant.gep10556, i64 %indvars.iv
  store double %3280, ptr %gep10557, align 8, !tbaa !5
  %3281 = fmul double %2862, 0x3CB1000000000001
  %3282 = tail call double @llvm.fmuladd.f64(double %2861, double 0xBFE3AA36D354D104, double %3281)
  %3283 = tail call double @llvm.fmuladd.f64(double %2865, double 0x3CB43FFFFFFFFFFF, double %3282)
  %3284 = tail call double @llvm.fmuladd.f64(double %2867, double 0x3CB2C00000000001, double %3283)
  %3285 = tail call double @llvm.fmuladd.f64(double %2869, double 0xBCDBC00000000002, double %3284)
  %3286 = tail call double @llvm.fmuladd.f64(double %2871, double 0xBCDBC00000000002, double %3285)
  %3287 = tail call double @llvm.fmuladd.f64(double %2873, double 0xBCDB400000000001, double %3286)
  %3288 = tail call double @llvm.fmuladd.f64(double %2875, double 0xBCDAC00000000001, double %3287)
  %3289 = tail call double @llvm.fmuladd.f64(double %2877, double 0xBCDB7FFFFFFFFFFF, double %3288)
  %3290 = tail call double @llvm.fmuladd.f64(double %2879, double 0xBCDA000000000003, double %3289)
  %3291 = tail call double @llvm.fmuladd.f64(double %2881, double 0xBFF3F64564513B1C, double %3290)
  %3292 = tail call double @llvm.fmuladd.f64(double %2883, double 0x3CC4800000000000, double %3291)
  %3293 = tail call double @llvm.fmuladd.f64(double %2885, double 0x3CC6200000000000, double %3292)
  %3294 = tail call double @llvm.fmuladd.f64(double %2887, double 0x3CC4600000000000, double %3293)
  %3295 = tail call double @llvm.fmuladd.f64(double %2889, double 0xBCEB600000000000, double %3294)
  %3296 = tail call double @llvm.fmuladd.f64(double %2891, double 0xBCEB200000000000, double %3295)
  %3297 = tail call double @llvm.fmuladd.f64(double %2893, double 0xBCEBA00000000000, double %3296)
  %3298 = tail call double @llvm.fmuladd.f64(double %2895, double 0xBCE9600000000001, double %3297)
  %3299 = tail call double @llvm.fmuladd.f64(double %2897, double 0xBCEAC00000000001, double %3298)
  %3300 = tail call double @llvm.fmuladd.f64(double %2899, double 0xBCE9C00000000000, double %3299)
  %gep10559 = getelementptr double, ptr %invariant.gep10558, i64 %indvars.iv
  store double %3300, ptr %gep10559, align 8, !tbaa !5
  %3301 = fmul double %2862, 0xBFE3AA36D354D050
  %3302 = tail call double @llvm.fmuladd.f64(double %2861, double 0x3CE2000000000001, double %3301)
  %3303 = tail call double @llvm.fmuladd.f64(double %2865, double 0xBCCB000000000000, double %3302)
  %3304 = tail call double @llvm.fmuladd.f64(double %2867, double 0xBCD4C00000000000, double %3303)
  %3305 = tail call double @llvm.fmuladd.f64(double %2869, double 0x3CD4000000000002, double %3304)
  %3306 = tail call double @llvm.fmuladd.f64(double %2871, double 0x3CD7000000000000, double %3305)
  %3307 = tail call double @llvm.fmuladd.f64(double %2873, double 0xBCDE800000000001, double %3306)
  %3308 = tail call double @llvm.fmuladd.f64(double %2875, double 0xBCDA7FFFFFFFFFFE, double %3307)
  %3309 = tail call double @llvm.fmuladd.f64(double %2877, double 0xBD00000000000000, double %3308)
  %3310 = tail call double @llvm.fmuladd.f64(double %2879, double 0xBCFD800000000001, double %3309)
  %3311 = tail call double @llvm.fmuladd.f64(double %2881, double 0x3CF4FFFFFFFFFFFF, double %3310)
  %3312 = tail call double @llvm.fmuladd.f64(double %2883, double 0xBFF3F64564513A68, double %3311)
  %3313 = tail call double @llvm.fmuladd.f64(double %2885, double 0xBCE07FFFFFFFFFFF, double %3312)
  %3314 = tail call double @llvm.fmuladd.f64(double %2887, double 0xBCE4DFFFFFFFFFFF, double %3313)
  %3315 = tail call double @llvm.fmuladd.f64(double %2889, double 0x3CE8000000000001, double %3314)
  %3316 = tail call double @llvm.fmuladd.f64(double %2891, double 0x3CE67FFFFFFFFFFF, double %3315)
  %3317 = tail call double @llvm.fmuladd.f64(double %2893, double 0xBCEAC00000000001, double %3316)
  %3318 = tail call double @llvm.fmuladd.f64(double %2895, double 0xBCE7C00000000001, double %3317)
  %3319 = tail call double @llvm.fmuladd.f64(double %2897, double 0xBD0E800000000000, double %3318)
  %3320 = tail call double @llvm.fmuladd.f64(double %2899, double 0xBD0E3FFFFFFFFFFD, double %3319)
  %gep10561 = getelementptr double, ptr %invariant.gep10560, i64 %indvars.iv
  store double %3320, ptr %gep10561, align 8, !tbaa !5
  %3321 = fmul double %2862, 0xBCD1000000000000
  %3322 = tail call double @llvm.fmuladd.f64(double %2861, double 0x3CEA000000000000, double %3321)
  %3323 = tail call double @llvm.fmuladd.f64(double %2865, double 0xBFE3AA36D354D04B, double %3322)
  %3324 = tail call double @llvm.fmuladd.f64(double %2867, double 0xBCCEC00000000000, double %3323)
  %3325 = tail call double @llvm.fmuladd.f64(double %2869, double 0xBCFD700000000000, double %3324)
  %3326 = tail call double @llvm.fmuladd.f64(double %2871, double 0xBCDAC00000000001, double %3325)
  %3327 = tail call double @llvm.fmuladd.f64(double %2873, double 0x3CD47FFFFFFFFFFE, double %3326)
  %3328 = tail call double @llvm.fmuladd.f64(double %2875, double 0xBCFE900000000000, double %3327)
  %3329 = tail call double @llvm.fmuladd.f64(double %2877, double 0xBCD7800000000000, double %3328)
  %3330 = tail call double @llvm.fmuladd.f64(double %2879, double 0x3CD3800000000002, double %3329)
  %3331 = tail call double @llvm.fmuladd.f64(double %2881, double 0x3CF6000000000000, double %3330)
  %3332 = tail call double @llvm.fmuladd.f64(double %2883, double 0xBCE2000000000001, double %3331)
  %3333 = tail call double @llvm.fmuladd.f64(double %2885, double 0xBFF3F64564513A5F, double %3332)
  %3334 = tail call double @llvm.fmuladd.f64(double %2887, double 0xBCE1300000000000, double %3333)
  %3335 = tail call double @llvm.fmuladd.f64(double %2889, double 0xBD0E380000000000, double %3334)
  %3336 = tail call double @llvm.fmuladd.f64(double %2891, double 0xBCE75FFFFFFFFFFF, double %3335)
  %3337 = tail call double @llvm.fmuladd.f64(double %2893, double 0x3CE2400000000001, double %3336)
  %3338 = tail call double @llvm.fmuladd.f64(double %2895, double 0xBD0FC7FFFFFFFFFE, double %3337)
  %3339 = tail call double @llvm.fmuladd.f64(double %2897, double 0xBCE7C00000000001, double %3338)
  %3340 = tail call double @llvm.fmuladd.f64(double %2899, double 0x3CE5BFFFFFFFFFFF, double %3339)
  %gep10563 = getelementptr double, ptr %invariant.gep10562, i64 %indvars.iv
  store double %3340, ptr %gep10563, align 8, !tbaa !5
  %3341 = fmul double %2862, 0xBCD1400000000000
  %3342 = tail call double @llvm.fmuladd.f64(double %2861, double 0x3CE9C00000000000, double %3341)
  %3343 = tail call double @llvm.fmuladd.f64(double %2865, double 0xBCD0E00000000000, double %3342)
  %3344 = tail call double @llvm.fmuladd.f64(double %2867, double 0xBFE3AA36D354D04F, double %3343)
  %3345 = tail call double @llvm.fmuladd.f64(double %2869, double 0xBCD7BFFFFFFFFFFE, double %3344)
  %3346 = tail call double @llvm.fmuladd.f64(double %2871, double 0xBCFD300000000000, double %3345)
  %3347 = tail call double @llvm.fmuladd.f64(double %2873, double 0xBCFD300000000000, double %3346)
  %3348 = tail call double @llvm.fmuladd.f64(double %2875, double 0x3CCD000000000000, double %3347)
  %3349 = tail call double @llvm.fmuladd.f64(double %2877, double 0x3CD67FFFFFFFFFFF, double %3348)
  %3350 = tail call double @llvm.fmuladd.f64(double %2879, double 0xBCD9000000000002, double %3349)
  %3351 = tail call double @llvm.fmuladd.f64(double %2881, double 0x3CF5E00000000000, double %3350)
  %3352 = tail call double @llvm.fmuladd.f64(double %2883, double 0xBCE15FFFFFFFFFFF, double %3351)
  %3353 = tail call double @llvm.fmuladd.f64(double %2885, double 0xBCE26FFFFFFFFFFF, double %3352)
  %3354 = tail call double @llvm.fmuladd.f64(double %2887, double 0xBFF3F64564513A5F, double %3353)
  %3355 = tail call double @llvm.fmuladd.f64(double %2889, double 0xBCE8E00000000000, double %3354)
  %3356 = tail call double @llvm.fmuladd.f64(double %2891, double 0xBD0E97FFFFFFFFFE, double %3355)
  %3357 = tail call double @llvm.fmuladd.f64(double %2893, double 0xBD0DD80000000002, double %3356)
  %3358 = tail call double @llvm.fmuladd.f64(double %2895, double 0x3CDE800000000001, double %3357)
  %3359 = tail call double @llvm.fmuladd.f64(double %2897, double 0x3CE5400000000001, double %3358)
  %3360 = tail call double @llvm.fmuladd.f64(double %2899, double 0xBCE9800000000000, double %3359)
  %gep10565 = getelementptr double, ptr %invariant.gep10564, i64 %indvars.iv
  store double %3360, ptr %gep10565, align 8, !tbaa !5
  %3361 = fmul double %2862, 0x3CB8000000000001
  %3362 = tail call double @llvm.fmuladd.f64(double %2861, double 0xBCE9C00000000000, double %3361)
  %3363 = tail call double @llvm.fmuladd.f64(double %2865, double 0xBCE6B00000000000, double %3362)
  %3364 = tail call double @llvm.fmuladd.f64(double %2867, double 0xBCB9C00000000001, double %3363)
  %3365 = tail call double @llvm.fmuladd.f64(double %2869, double 0xBFE3AA36D354D104, double %3364)
  %3366 = tail call double @llvm.fmuladd.f64(double %2871, double 0x3CDA7FFFFFFFFFFE, double %3365)
  %3367 = tail call double @llvm.fmuladd.f64(double %2873, double 0x3CC4800000000000, double %3366)
  %3368 = tail call double @llvm.fmuladd.f64(double %2875, double 0xBCDE800000000001, double %3367)
  %3369 = tail call double @llvm.fmuladd.f64(double %2877, double 0x3CC1000000000000, double %3368)
  %3370 = tail call double @llvm.fmuladd.f64(double %2879, double 0x3CEC800000000000, double %3369)
  %3371 = tail call double @llvm.fmuladd.f64(double %2881, double 0xBCF9A00000000000, double %3370)
  %3372 = tail call double @llvm.fmuladd.f64(double %2883, double 0x3CCA000000000000, double %3371)
  %3373 = tail call double @llvm.fmuladd.f64(double %2885, double 0xBCF6580000000000, double %3372)
  %3374 = tail call double @llvm.fmuladd.f64(double %2887, double 0xBCCC600000000000, double %3373)
  %3375 = tail call double @llvm.fmuladd.f64(double %2889, double 0xBFF3F64564513B21, double %3374)
  %3376 = tail call double @llvm.fmuladd.f64(double %2891, double 0x3CEAC00000000001, double %3375)
  %3377 = tail call double @llvm.fmuladd.f64(double %2893, double 0x3CD7BFFFFFFFFFFE, double %3376)
  %3378 = tail call double @llvm.fmuladd.f64(double %2895, double 0xBCEE400000000001, double %3377)
  %3379 = tail call double @llvm.fmuladd.f64(double %2897, double 0x3CD67FFFFFFFFFFF, double %3378)
  %3380 = tail call double @llvm.fmuladd.f64(double %2899, double 0x3CFC3FFFFFFFFFFF, double %3379)
  %gep10567 = getelementptr double, ptr %invariant.gep10566, i64 %indvars.iv
  store double %3380, ptr %gep10567, align 8, !tbaa !5
  %3381 = fmul double %2862, 0x3CC0000000000000
  %3382 = tail call double @llvm.fmuladd.f64(double %2861, double 0xBCEBBFFFFFFFFFFF, double %3381)
  %3383 = tail call double @llvm.fmuladd.f64(double %2865, double 0xBCB8800000000000, double %3382)
  %3384 = tail call double @llvm.fmuladd.f64(double %2867, double 0xBCE557FFFFFFFFFF, double %3383)
  %3385 = tail call double @llvm.fmuladd.f64(double %2869, double 0x3CD6C00000000002, double %3384)
  %3386 = tail call double @llvm.fmuladd.f64(double %2871, double 0xBFE3AA36D354D103, double %3385)
  %3387 = tail call double @llvm.fmuladd.f64(double %2873, double 0xBCE0200000000000, double %3386)
  %3388 = tail call double @llvm.fmuladd.f64(double %2875, double 0x3CCC800000000000, double %3387)
  %3389 = tail call double @llvm.fmuladd.f64(double %2877, double 0x3CEC800000000000, double %3388)
  %3390 = tail call double @llvm.fmuladd.f64(double %2879, double 0x3CC7000000000000, double %3389)
  %3391 = tail call double @llvm.fmuladd.f64(double %2881, double 0xBCFB600000000000, double %3390)
  %3392 = tail call double @llvm.fmuladd.f64(double %2883, double 0x3CD0800000000000, double %3391)
  %3393 = tail call double @llvm.fmuladd.f64(double %2885, double 0xBCCC400000000000, double %3392)
  %3394 = tail call double @llvm.fmuladd.f64(double %2887, double 0xBCF62C0000000001, double %3393)
  %3395 = tail call double @llvm.fmuladd.f64(double %2889, double 0x3CE8E00000000000, double %3394)
  %3396 = tail call double @llvm.fmuladd.f64(double %2891, double 0xBFF3F64564513B1C, double %3395)
  %3397 = tail call double @llvm.fmuladd.f64(double %2893, double 0xBCEE200000000000, double %3396)
  %3398 = tail call double @llvm.fmuladd.f64(double %2895, double 0x3CD93FFFFFFFFFFF, double %3397)
  %3399 = tail call double @llvm.fmuladd.f64(double %2897, double 0x3CFCC00000000000, double %3398)
  %3400 = tail call double @llvm.fmuladd.f64(double %2899, double 0x3CDBFFFFFFFFFFFF, double %3399)
  %gep10569 = getelementptr double, ptr %invariant.gep10568, i64 %indvars.iv
  store double %3400, ptr %gep10569, align 8, !tbaa !5
  %3401 = fmul double %2862, 0xBCBE000000000000
  %3402 = tail call double @llvm.fmuladd.f64(double %2861, double 0xBCEC8FFFFFFFFFFF, double %3401)
  %3403 = tail call double @llvm.fmuladd.f64(double %2865, double 0x3CB1800000000000, double %3402)
  %3404 = tail call double @llvm.fmuladd.f64(double %2867, double 0xBCE5380000000000, double %3403)
  %3405 = tail call double @llvm.fmuladd.f64(double %2869, double 0x3CC4400000000000, double %3404)
  %3406 = tail call double @llvm.fmuladd.f64(double %2871, double 0xBCDE5FFFFFFFFFFD, double %3405)
  %3407 = tail call double @llvm.fmuladd.f64(double %2873, double 0xBFE3AA36D354D105, double %3406)
  %3408 = tail call double @llvm.fmuladd.f64(double %2875, double 0x3CEBB80000000001, double %3407)
  %3409 = tail call double @llvm.fmuladd.f64(double %2877, double 0x3CCC000000000000, double %3408)
  %3410 = tail call double @llvm.fmuladd.f64(double %2879, double 0x3CDAFFFFFFFFFFFE, double %3409)
  %3411 = tail call double @llvm.fmuladd.f64(double %2881, double 0xBCF9480000000000, double %3410)
  %3412 = tail call double @llvm.fmuladd.f64(double %2883, double 0xBCD1800000000000, double %3411)
  %3413 = tail call double @llvm.fmuladd.f64(double %2885, double 0x3CC8C00000000000, double %3412)
  %3414 = tail call double @llvm.fmuladd.f64(double %2887, double 0xBCF59BFFFFFFFFFF, double %3413)
  %3415 = tail call double @llvm.fmuladd.f64(double %2889, double 0x3CD71FFFFFFFFFFF, double %3414)
  %3416 = tail call double @llvm.fmuladd.f64(double %2891, double 0xBCED300000000001, double %3415)
  %3417 = tail call double @llvm.fmuladd.f64(double %2893, double 0xBFF3F64564513B1C, double %3416)
  %3418 = tail call double @llvm.fmuladd.f64(double %2895, double 0x3CFADC0000000000, double %3417)
  %3419 = tail call double @llvm.fmuladd.f64(double %2897, double 0x3CD9000000000002, double %3418)
  %3420 = tail call double @llvm.fmuladd.f64(double %2899, double 0x3CEB7FFFFFFFFFFF, double %3419)
  %gep10571 = getelementptr double, ptr %invariant.gep10570, i64 %indvars.iv
  store double %3420, ptr %gep10571, align 8, !tbaa !5
  %3421 = fmul double %2862, 0xBCC0C00000000000
  %3422 = tail call double @llvm.fmuladd.f64(double %2861, double 0xBCEB6FFFFFFFFFFF, double %3421)
  %3423 = tail call double @llvm.fmuladd.f64(double %2865, double 0xBCE6700000000000, double %3422)
  %3424 = tail call double @llvm.fmuladd.f64(double %2867, double 0x3CB43FFFFFFFFFFF, double %3423)
  %3425 = tail call double @llvm.fmuladd.f64(double %2869, double 0xBCDEA00000000000, double %3424)
  %3426 = tail call double @llvm.fmuladd.f64(double %2871, double 0x3CC7400000000000, double %3425)
  %3427 = tail call double @llvm.fmuladd.f64(double %2873, double 0x3CEAF80000000000, double %3426)
  %3428 = tail call double @llvm.fmuladd.f64(double %2875, double 0xBFE3AA36D354D103, double %3427)
  %3429 = tail call double @llvm.fmuladd.f64(double %2877, double 0x3CDBFFFFFFFFFFFF, double %3428)
  %3430 = tail call double @llvm.fmuladd.f64(double %2879, double 0x3CC6800000000000, double %3429)
  %3431 = tail call double @llvm.fmuladd.f64(double %2881, double 0xBCF8B80000000000, double %3430)
  %3432 = tail call double @llvm.fmuladd.f64(double %2883, double 0xBCD2DFFFFFFFFFFE, double %3431)
  %3433 = tail call double @llvm.fmuladd.f64(double %2885, double 0xBCF7B80000000000, double %3432)
  %3434 = tail call double @llvm.fmuladd.f64(double %2887, double 0x3CC4200000000000, double %3433)
  %3435 = tail call double @llvm.fmuladd.f64(double %2889, double 0xBCEE500000000001, double %3434)
  %3436 = tail call double @llvm.fmuladd.f64(double %2891, double 0x3CD5A00000000002, double %3435)
  %3437 = tail call double @llvm.fmuladd.f64(double %2893, double 0x3CFBBC0000000000, double %3436)
  %3438 = tail call double @llvm.fmuladd.f64(double %2895, double 0xBFF3F64564513B1C, double %3437)
  %3439 = tail call double @llvm.fmuladd.f64(double %2897, double 0x3CEB7FFFFFFFFFFF, double %3438)
  %3440 = tail call double @llvm.fmuladd.f64(double %2899, double 0x3CD93FFFFFFFFFFF, double %3439)
  %gep10573 = getelementptr double, ptr %invariant.gep10572, i64 %indvars.iv
  store double %3440, ptr %gep10573, align 8, !tbaa !5
  %3441 = fmul double %2862, 0xBCE5800000000001
  %3442 = tail call double @llvm.fmuladd.f64(double %2861, double 0xBCEAC00000000001, double %3441)
  %3443 = tail call double @llvm.fmuladd.f64(double %2865, double 0xBCB97FFFFFFFFFFF, double %3442)
  %3444 = tail call double @llvm.fmuladd.f64(double %2867, double 0x3CB9000000000000, double %3443)
  %3445 = tail call double @llvm.fmuladd.f64(double %2869, double 0x3CCC000000000000, double %3444)
  %3446 = tail call double @llvm.fmuladd.f64(double %2871, double 0x3CEB400000000001, double %3445)
  %3447 = tail call double @llvm.fmuladd.f64(double %2873, double 0x3CC5800000000000, double %3446)
  %3448 = tail call double @llvm.fmuladd.f64(double %2875, double 0x3CDAFFFFFFFFFFFE, double %3447)
  %3449 = tail call double @llvm.fmuladd.f64(double %2877, double 0xBFE3AA36D354D103, double %3448)
  %3450 = tail call double @llvm.fmuladd.f64(double %2879, double 0xBCE1800000000000, double %3449)
  %3451 = tail call double @llvm.fmuladd.f64(double %2881, double 0xBCF9E00000000000, double %3450)
  %3452 = tail call double @llvm.fmuladd.f64(double %2883, double 0xBCF6600000000001, double %3451)
  %3453 = tail call double @llvm.fmuladd.f64(double %2885, double 0xBCCF400000000000, double %3452)
  %3454 = tail call double @llvm.fmuladd.f64(double %2887, double 0x3CC5800000000000, double %3453)
  %3455 = tail call double @llvm.fmuladd.f64(double %2889, double 0x3CDBFFFFFFFFFFFF, double %3454)
  %3456 = tail call double @llvm.fmuladd.f64(double %2891, double 0x3CFBA00000000000, double %3455)
  %3457 = tail call double @llvm.fmuladd.f64(double %2893, double 0x3CD7BFFFFFFFFFFE, double %3456)
  %3458 = tail call double @llvm.fmuladd.f64(double %2895, double 0x3CED000000000000, double %3457)
  %3459 = tail call double @llvm.fmuladd.f64(double %2897, double 0xBFF3F64564513B1C, double %3458)
  %3460 = tail call double @llvm.fmuladd.f64(double %2899, double 0xBCF1800000000000, double %3459)
  %gep10575 = getelementptr double, ptr %invariant.gep10574, i64 %indvars.iv
  store double %3460, ptr %gep10575, align 8, !tbaa !5
  %3461 = fmul double %2862, 0xBCE3C00000000000
  %3462 = tail call double @llvm.fmuladd.f64(double %2861, double 0xBCEBBFFFFFFFFFFF, double %3461)
  %3463 = tail call double @llvm.fmuladd.f64(double %2865, double 0x3CBB800000000001, double %3462)
  %3464 = tail call double @llvm.fmuladd.f64(double %2867, double 0xBCC3400000000000, double %3463)
  %3465 = tail call double @llvm.fmuladd.f64(double %2869, double 0x3CECC00000000000, double %3464)
  %3466 = tail call double @llvm.fmuladd.f64(double %2871, double 0x3CCB000000000000, double %3465)
  %3467 = tail call double @llvm.fmuladd.f64(double %2873, double 0x3CDAFFFFFFFFFFFE, double %3466)
  %3468 = tail call double @llvm.fmuladd.f64(double %2875, double 0x3CC6800000000000, double %3467)
  %3469 = tail call double @llvm.fmuladd.f64(double %2877, double 0xBCE1000000000000, double %3468)
  %3470 = tail call double @llvm.fmuladd.f64(double %2879, double 0xBFE3AA36D354D104, double %3469)
  %3471 = tail call double @llvm.fmuladd.f64(double %2881, double 0xBCFA600000000000, double %3470)
  %3472 = tail call double @llvm.fmuladd.f64(double %2883, double 0xBCF5200000000000, double %3471)
  %3473 = tail call double @llvm.fmuladd.f64(double %2885, double 0x3CC7C00000000000, double %3472)
  %3474 = tail call double @llvm.fmuladd.f64(double %2887, double 0xBCD3A00000000001, double %3473)
  %3475 = tail call double @llvm.fmuladd.f64(double %2889, double 0x3CFD600000000000, double %3474)
  %3476 = tail call double @llvm.fmuladd.f64(double %2891, double 0x3CDB7FFFFFFFFFFF, double %3475)
  %3477 = tail call double @llvm.fmuladd.f64(double %2893, double 0x3CEC800000000000, double %3476)
  %3478 = tail call double @llvm.fmuladd.f64(double %2895, double 0x3CDA400000000000, double %3477)
  %3479 = tail call double @llvm.fmuladd.f64(double %2897, double 0xBCF2400000000000, double %3478)
  %3480 = tail call double @llvm.fmuladd.f64(double %2899, double 0xBFF3F64564513B1C, double %3479)
  %gep10577 = getelementptr double, ptr %invariant.gep10576, i64 %indvars.iv
  store double %3480, ptr %gep10577, align 8, !tbaa !5
  %3481 = fmul double %2862, 0xBCA4000000000001
  %3482 = tail call double @llvm.fmuladd.f64(double %2861, double 0x3FD4F58312101B3F, double %3481)
  %3483 = tail call double @llvm.fmuladd.f64(double %2865, double 0xBCB0200000000000, double %3482)
  %3484 = tail call double @llvm.fmuladd.f64(double %2867, double 0xBCAD3FFFFFFFFFFF, double %3483)
  %3485 = tail call double @llvm.fmuladd.f64(double %2869, double 0x3CCF800000000000, double %3484)
  %3486 = tail call double @llvm.fmuladd.f64(double %2871, double 0x3CCE000000000000, double %3485)
  %3487 = tail call double @llvm.fmuladd.f64(double %2873, double 0x3CC9800000000000, double %3486)
  %3488 = tail call double @llvm.fmuladd.f64(double %2875, double 0x3CC7A00000000000, double %3487)
  %3489 = tail call double @llvm.fmuladd.f64(double %2877, double 0x3CCC000000000000, double %3488)
  %3490 = tail call double @llvm.fmuladd.f64(double %2879, double 0x3CCB800000000000, double %3489)
  %3491 = tail call double @llvm.fmuladd.f64(double %2881, double 0x40118E7E1D8191B3, double %3490)
  %3492 = tail call double @llvm.fmuladd.f64(double %2883, double 0xBCE1400000000000, double %3491)
  %3493 = tail call double @llvm.fmuladd.f64(double %2885, double 0xBCE283FFFFFFFFFF, double %3492)
  %3494 = tail call double @llvm.fmuladd.f64(double %2887, double 0xBCE3740000000000, double %3493)
  %3495 = tail call double @llvm.fmuladd.f64(double %2889, double 0x3D07D80000000000, double %3494)
  %3496 = tail call double @llvm.fmuladd.f64(double %2891, double 0x3D07DFFFFFFFFFFD, double %3495)
  %3497 = tail call double @llvm.fmuladd.f64(double %2893, double 0x3D06F80000000003, double %3496)
  %3498 = tail call double @llvm.fmuladd.f64(double %2895, double 0x3D061A0000000000, double %3497)
  %3499 = tail call double @llvm.fmuladd.f64(double %2897, double 0x3D06DFFFFFFFFFFF, double %3498)
  %3500 = tail call double @llvm.fmuladd.f64(double %2899, double 0x3D06D80000000001, double %3499)
  %gep10579 = getelementptr double, ptr %invariant.gep10578, i64 %indvars.iv
  store double %3500, ptr %gep10579, align 8, !tbaa !5
  %3501 = fmul double %2862, 0x3FD4F58312101A82
  %3502 = tail call double @llvm.fmuladd.f64(double %2861, double 0xBCD1000000000000, double %3501)
  %3503 = tail call double @llvm.fmuladd.f64(double %2865, double 0x3CBA000000000000, double %3502)
  %3504 = tail call double @llvm.fmuladd.f64(double %2867, double 0x3CC5000000000000, double %3503)
  %3505 = tail call double @llvm.fmuladd.f64(double %2869, double 0xBCCA000000000000, double %3504)
  %3506 = tail call double @llvm.fmuladd.f64(double %2871, double 0xBCC2000000000000, double %3505)
  %3507 = tail call double @llvm.fmuladd.f64(double %2873, double 0x3CD1800000000000, double %3506)
  %3508 = tail call double @llvm.fmuladd.f64(double %2875, double 0x3CCF800000000000, double %3507)
  %3509 = tail call double @llvm.fmuladd.f64(double %2877, double 0x3CF1400000000000, double %3508)
  %3510 = tail call double @llvm.fmuladd.f64(double %2879, double 0x3CF0400000000000, double %3509)
  %3511 = tail call double @llvm.fmuladd.f64(double %2881, double 0xBD128FFFFFFFFFFF, double %3510)
  %3512 = tail call double @llvm.fmuladd.f64(double %2883, double 0x40118E7E1D819110, double %3511)
  %3513 = tail call double @llvm.fmuladd.f64(double %2885, double 0x3CFD900000000000, double %3512)
  %3514 = tail call double @llvm.fmuladd.f64(double %2887, double 0x3D01500000000000, double %3513)
  %3515 = tail call double @llvm.fmuladd.f64(double %2889, double 0xBD04A00000000000, double %3514)
  %3516 = tail call double @llvm.fmuladd.f64(double %2891, double 0xBD02E00000000000, double %3515)
  %3517 = tail call double @llvm.fmuladd.f64(double %2893, double 0x3D07300000000002, double %3516)
  %3518 = tail call double @llvm.fmuladd.f64(double %2895, double 0x3D03980000000000, double %3517)
  %3519 = tail call double @llvm.fmuladd.f64(double %2897, double 0x3D2A980000000000, double %3518)
  %3520 = tail call double @llvm.fmuladd.f64(double %2899, double 0x3D2A480000000000, double %3519)
  %gep10581 = getelementptr double, ptr %invariant.gep10580, i64 %indvars.iv
  store double %3520, ptr %gep10581, align 8, !tbaa !5
  %3521 = fmul double %2862, 0x3CC0800000000000
  %3522 = tail call double @llvm.fmuladd.f64(double %2861, double 0xBCDA400000000000, double %3521)
  %3523 = tail call double @llvm.fmuladd.f64(double %2865, double 0x3FD4F58312101A79, double %3522)
  %3524 = tail call double @llvm.fmuladd.f64(double %2867, double 0x3CCB800000000000, double %3523)
  %3525 = tail call double @llvm.fmuladd.f64(double %2869, double 0x3CEDEFFFFFFFFFFF, double %3524)
  %3526 = tail call double @llvm.fmuladd.f64(double %2871, double 0x3CC7400000000000, double %3525)
  %3527 = tail call double @llvm.fmuladd.f64(double %2873, double 0xBCBBC00000000001, double %3526)
  %3528 = tail call double @llvm.fmuladd.f64(double %2875, double 0x3CF03C0000000000, double %3527)
  %3529 = tail call double @llvm.fmuladd.f64(double %2877, double 0x3CC3800000000000, double %3528)
  %3530 = tail call double @llvm.fmuladd.f64(double %2879, double 0xBCD0000000000000, double %3529)
  %3531 = tail call double @llvm.fmuladd.f64(double %2881, double 0xBD11640000000000, double %3530)
  %3532 = tail call double @llvm.fmuladd.f64(double %2883, double 0x3CFF700000000000, double %3531)
  %3533 = tail call double @llvm.fmuladd.f64(double %2885, double 0x40118E7E1D81910D, double %3532)
  %3534 = tail call double @llvm.fmuladd.f64(double %2887, double 0x3CFDD00000000000, double %3533)
  %3535 = tail call double @llvm.fmuladd.f64(double %2889, double 0x3D2AFF0000000001, double %3534)
  %3536 = tail call double @llvm.fmuladd.f64(double %2891, double 0x3D05940000000000, double %3535)
  %3537 = tail call double @llvm.fmuladd.f64(double %2893, double 0xBCFD7C0000000000, double %3536)
  %3538 = tail call double @llvm.fmuladd.f64(double %2895, double 0x3D2BB78000000000, double %3537)
  %3539 = tail call double @llvm.fmuladd.f64(double %2897, double 0x3D06580000000000, double %3538)
  %3540 = tail call double @llvm.fmuladd.f64(double %2899, double 0xBD03000000000000, double %3539)
  %gep10583 = getelementptr double, ptr %invariant.gep10582, i64 %indvars.iv
  store double %3540, ptr %gep10583, align 8, !tbaa !5
  %3541 = tail call double @llvm.fmuladd.f64(double %2861, double 0xBCD93FFFFFFFFFFF, double %3521)
  %3542 = tail call double @llvm.fmuladd.f64(double %2865, double 0x3CC0600000000000, double %3541)
  %3543 = tail call double @llvm.fmuladd.f64(double %2867, double 0x3FD4F58312101A7B, double %3542)
  %3544 = tail call double @llvm.fmuladd.f64(double %2869, double 0x3CC8C00000000000, double %3543)
  %3545 = tail call double @llvm.fmuladd.f64(double %2871, double 0x3CEED00000000001, double %3544)
  %3546 = tail call double @llvm.fmuladd.f64(double %2873, double 0x3CEFF7FFFFFFFFFF, double %3545)
  %3547 = tail call double @llvm.fmuladd.f64(double %2875, double 0xBCCCE00000000000, double %3546)
  %3548 = tail call double @llvm.fmuladd.f64(double %2877, double 0xBCC2000000000000, double %3547)
  %3549 = tail call double @llvm.fmuladd.f64(double %2879, double 0x3CC9800000000000, double %3548)
  %3550 = tail call double @llvm.fmuladd.f64(double %2881, double 0xBD11F40000000000, double %3549)
  %3551 = tail call double @llvm.fmuladd.f64(double %2883, double 0x3CFDF00000000000, double %3550)
  %3552 = tail call double @llvm.fmuladd.f64(double %2885, double 0x3CFE2C0000000000, double %3551)
  %3553 = tail call double @llvm.fmuladd.f64(double %2887, double 0x40118E7E1D81910E, double %3552)
  %3554 = tail call double @llvm.fmuladd.f64(double %2889, double 0x3D05CC0000000000, double %3553)
  %3555 = tail call double @llvm.fmuladd.f64(double %2891, double 0x3D2B7D0000000001, double %3554)
  %3556 = tail call double @llvm.fmuladd.f64(double %2893, double 0x3D2A8F8000000000, double %3555)
  %3557 = tail call double @llvm.fmuladd.f64(double %2895, double 0xBCF99C0000000000, double %3556)
  %3558 = tail call double @llvm.fmuladd.f64(double %2897, double 0xBD02C00000000000, double %3557)
  %3559 = tail call double @llvm.fmuladd.f64(double %2899, double 0x3D06F80000000003, double %3558)
  %gep10585 = getelementptr double, ptr %invariant.gep10584, i64 %indvars.iv
  store double %3559, ptr %gep10585, align 8, !tbaa !5
  %3560 = fmul double %2862, 0xBC98000000000000
  %3561 = tail call double @llvm.fmuladd.f64(double %2861, double 0x3CD73FFFFFFFFFFE, double %3560)
  %3562 = tail call double @llvm.fmuladd.f64(double %2865, double 0x3CDACFFFFFFFFFFE, double %3561)
  %3563 = tail call double @llvm.fmuladd.f64(double %2867, double 0x3CB2C00000000001, double %3562)
  %3564 = tail call double @llvm.fmuladd.f64(double %2869, double 0x3FD4F58312101B3F, double %3563)
  %3565 = tail call double @llvm.fmuladd.f64(double %2871, double 0xBCC8000000000000, double %3564)
  %3566 = tail call double @llvm.fmuladd.f64(double %2873, double 0xBCA7000000000002, double %3565)
  %3567 = tail call double @llvm.fmuladd.f64(double %2875, double 0x3CCF400000000000, double %3566)
  %3568 = tail call double @llvm.fmuladd.f64(double %2877, double 0xBCB0000000000000, double %3567)
  %3569 = tail call double @llvm.fmuladd.f64(double %2879, double 0xBCDD800000000001, double %3568)
  %3570 = tail call double @llvm.fmuladd.f64(double %2881, double 0x3D15A3FFFFFFFFFF, double %3569)
  %3571 = tail call double @llvm.fmuladd.f64(double %2883, double 0xBCE5BFFFFFFFFFFF, double %3570)
  %3572 = tail call double @llvm.fmuladd.f64(double %2885, double 0x3D13BCFFFFFFFFFF, double %3571)
  %3573 = tail call double @llvm.fmuladd.f64(double %2887, double 0x3CEA980000000001, double %3572)
  %3574 = tail call double @llvm.fmuladd.f64(double %2889, double 0x40118E7E1D8191B3, double %3573)
  %3575 = tail call double @llvm.fmuladd.f64(double %2891, double 0xBD07000000000000, double %3574)
  %3576 = tail call double @llvm.fmuladd.f64(double %2893, double 0xBCF4380000000000, double %3575)
  %3577 = tail call double @llvm.fmuladd.f64(double %2895, double 0x3D0AF40000000001, double %3576)
  %3578 = tail call double @llvm.fmuladd.f64(double %2897, double 0xBCF6000000000000, double %3577)
  %3579 = tail call double @llvm.fmuladd.f64(double %2899, double 0xBD18680000000000, double %3578)
  %gep10587 = getelementptr double, ptr %invariant.gep10586, i64 %indvars.iv
  store double %3579, ptr %gep10587, align 8, !tbaa !5
  %3580 = tail call double @llvm.fmuladd.f64(double %2861, double 0x3CDA400000000000, double %3481)
  %3581 = tail call double @llvm.fmuladd.f64(double %2865, double 0x3CB1400000000000, double %3580)
  %3582 = tail call double @llvm.fmuladd.f64(double %2867, double 0x3CDB900000000001, double %3581)
  %3583 = tail call double @llvm.fmuladd.f64(double %2869, double 0xBCCB000000000000, double %3582)
  %3584 = tail call double @llvm.fmuladd.f64(double %2871, double 0x3FD4F58312101B43, double %3583)
  %3585 = tail call double @llvm.fmuladd.f64(double %2873, double 0x3CD0E00000000000, double %3584)
  %3586 = tail call double @llvm.fmuladd.f64(double %2875, double 0xBCBD800000000001, double %3585)
  %3587 = tail call double @llvm.fmuladd.f64(double %2877, double 0xBCDFFFFFFFFFFFFE, double %3586)
  %3588 = tail call double @llvm.fmuladd.f64(double %2879, double 0xBCC4000000000000, double %3587)
  %3589 = tail call double @llvm.fmuladd.f64(double %2881, double 0x3D17B40000000000, double %3588)
  %3590 = tail call double @llvm.fmuladd.f64(double %2883, double 0xBCEAC00000000001, double %3589)
  %3591 = tail call double @llvm.fmuladd.f64(double %2885, double 0x3CE927FFFFFFFFFF, double %3590)
  %3592 = tail call double @llvm.fmuladd.f64(double %2887, double 0x3D13B90000000001, double %3591)
  %3593 = tail call double @llvm.fmuladd.f64(double %2889, double 0xBD04D00000000000, double %3592)
  %3594 = tail call double @llvm.fmuladd.f64(double %2891, double 0x40118E7E1D8191B1, double %3593)
  %3595 = tail call double @llvm.fmuladd.f64(double %2893, double 0x3D0A1C0000000001, double %3594)
  %3596 = tail call double @llvm.fmuladd.f64(double %2895, double 0xBCF7180000000000, double %3595)
  %3597 = tail call double @llvm.fmuladd.f64(double %2897, double 0xBD19000000000000, double %3596)
  %3598 = tail call double @llvm.fmuladd.f64(double %2899, double 0xBCF9C00000000000, double %3597)
  %gep10589 = getelementptr double, ptr %invariant.gep10588, i64 %indvars.iv
  store double %3598, ptr %gep10589, align 8, !tbaa !5
  %3599 = fmul double %2862, 0x3C9DFFFFFFFFFFFE
  %3600 = tail call double @llvm.fmuladd.f64(double %2861, double 0x3CDBE00000000000, double %3599)
  %3601 = tail call double @llvm.fmuladd.f64(double %2865, double 0xBC9CFFFFFFFFFFFF, double %3600)
  %3602 = tail call double @llvm.fmuladd.f64(double %2867, double 0x3CD6C7FFFFFFFFFE, double %3601)
  %3603 = tail call double @llvm.fmuladd.f64(double %2869, double 0xBCAE800000000001, double %3602)
  %3604 = tail call double @llvm.fmuladd.f64(double %2871, double 0x3CCD600000000000, double %3603)
  %3605 = tail call double @llvm.fmuladd.f64(double %2873, double 0x3FD4F58312101B3B, double %3604)
  %3606 = tail call double @llvm.fmuladd.f64(double %2875, double 0xBCE02BFFFFFFFFFF, double %3605)
  %3607 = tail call double @llvm.fmuladd.f64(double %2877, double 0xBCC3C00000000000, double %3606)
  %3608 = tail call double @llvm.fmuladd.f64(double %2879, double 0xBCCB800000000000, double %3607)
  %3609 = tail call double @llvm.fmuladd.f64(double %2881, double 0x3D167E0000000000, double %3608)
  %3610 = tail call double @llvm.fmuladd.f64(double %2883, double 0x3CED100000000000, double %3609)
  %3611 = tail call double @llvm.fmuladd.f64(double %2885, double 0xBCE5A80000000001, double %3610)
  %3612 = tail call double @llvm.fmuladd.f64(double %2887, double 0x3D129C7FFFFFFFFE, double %3611)
  %3613 = tail call double @llvm.fmuladd.f64(double %2889, double 0xBCF3340000000000, double %3612)
  %3614 = tail call double @llvm.fmuladd.f64(double %2891, double 0x3D09760000000001, double %3613)
  %3615 = tail call double @llvm.fmuladd.f64(double %2893, double 0x40118E7E1D8191B2, double %3614)
  %3616 = tail call double @llvm.fmuladd.f64(double %2895, double 0xBD17E57FFFFFFFFE, double %3615)
  %3617 = tail call double @llvm.fmuladd.f64(double %2897, double 0xBCF6D80000000000, double %3616)
  %3618 = tail call double @llvm.fmuladd.f64(double %2899, double 0xBD07C7FFFFFFFFFF, double %3617)
  %gep10591 = getelementptr double, ptr %invariant.gep10590, i64 %indvars.iv
  store double %3618, ptr %gep10591, align 8, !tbaa !5
  %3619 = fmul double %2862, 0x3CA5FFFFFFFFFFFF
  %3620 = tail call double @llvm.fmuladd.f64(double %2861, double 0x3CDAA00000000002, double %3619)
  %3621 = tail call double @llvm.fmuladd.f64(double %2865, double 0x3CD6100000000001, double %3620)
  %3622 = tail call double @llvm.fmuladd.f64(double %2867, double 0xBCB8A00000000000, double %3621)
  %3623 = tail call double @llvm.fmuladd.f64(double %2869, double 0x3CD30FFFFFFFFFFE, double %3622)
  %3624 = tail call double @llvm.fmuladd.f64(double %2871, double 0xBCB4C00000000000, double %3623)
  %3625 = tail call double @llvm.fmuladd.f64(double %2873, double 0xBCDD280000000000, double %3624)
  %3626 = tail call double @llvm.fmuladd.f64(double %2875, double 0x3FD4F58312101B3A, double %3625)
  %3627 = tail call double @llvm.fmuladd.f64(double %2877, double 0xBCD0200000000000, double %3626)
  %3628 = tail call double @llvm.fmuladd.f64(double %2879, double 0xBCC2C00000000000, double %3627)
  %3629 = tail call double @llvm.fmuladd.f64(double %2881, double 0x3D1569FFFFFFFFFF, double %3628)
  %3630 = tail call double @llvm.fmuladd.f64(double %2883, double 0x3CF0200000000000, double %3629)
  %3631 = tail call double @llvm.fmuladd.f64(double %2885, double 0x3D1478FFFFFFFFFF, double %3630)
  %3632 = tail call double @llvm.fmuladd.f64(double %2887, double 0xBCE4140000000000, double %3631)
  %3633 = tail call double @llvm.fmuladd.f64(double %2889, double 0x3D0A620000000003, double %3632)
  %3634 = tail call double @llvm.fmuladd.f64(double %2891, double 0xBCF36BFFFFFFFFFF, double %3633)
  %3635 = tail call double @llvm.fmuladd.f64(double %2893, double 0xBD17E27FFFFFFFFF, double %3634)
  %3636 = tail call double @llvm.fmuladd.f64(double %2895, double 0x40118E7E1D8191B1, double %3635)
  %3637 = tail call double @llvm.fmuladd.f64(double %2897, double 0xBD07F3FFFFFFFFFF, double %3636)
  %3638 = tail call double @llvm.fmuladd.f64(double %2899, double 0xBCF6F80000000000, double %3637)
  %gep10593 = getelementptr double, ptr %invariant.gep10592, i64 %indvars.iv
  store double %3638, ptr %gep10593, align 8, !tbaa !5
  %3639 = fmul double %2862, 0x3CD9800000000002
  %3640 = tail call double @llvm.fmuladd.f64(double %2861, double 0x3CD7000000000000, double %3639)
  %3641 = tail call double @llvm.fmuladd.f64(double %2865, double 0x3CA2000000000000, double %3640)
  %3642 = tail call double @llvm.fmuladd.f64(double %2867, double 0xBC92000000000000, double %3641)
  %3643 = tail call double @llvm.fmuladd.f64(double %2869, double 0xBCB2000000000000, double %3642)
  %3644 = tail call double @llvm.fmuladd.f64(double %2871, double 0xBCE1000000000000, double %3643)
  %3645 = tail call double @llvm.fmuladd.f64(double %2873, double 0xBCC2400000000000, double %3644)
  %3646 = tail call double @llvm.fmuladd.f64(double %2875, double 0xBCCF000000000000, double %3645)
  %3647 = tail call double @llvm.fmuladd.f64(double %2877, double 0x3FD4F58312101B3D, double %3646)
  %3648 = tail call double @llvm.fmuladd.f64(double %2879, double 0x3CCE000000000000, double %3647)
  %3649 = tail call double @llvm.fmuladd.f64(double %2881, double 0x3D16B00000000000, double %3648)
  %3650 = tail call double @llvm.fmuladd.f64(double %2883, double 0x3D13680000000001, double %3649)
  %3651 = tail call double @llvm.fmuladd.f64(double %2885, double 0x3CEE600000000000, double %3650)
  %3652 = tail call double @llvm.fmuladd.f64(double %2887, double 0xBCE6500000000001, double %3651)
  %3653 = tail call double @llvm.fmuladd.f64(double %2889, double 0xBCF7A00000000000, double %3652)
  %3654 = tail call double @llvm.fmuladd.f64(double %2891, double 0xBD18C00000000000, double %3653)
  %3655 = tail call double @llvm.fmuladd.f64(double %2893, double 0xBCF6680000000000, double %3654)
  %3656 = tail call double @llvm.fmuladd.f64(double %2895, double 0xBD09800000000002, double %3655)
  %3657 = tail call double @llvm.fmuladd.f64(double %2897, double 0x40118E7E1D8191B0, double %3656)
  %3658 = tail call double @llvm.fmuladd.f64(double %2899, double 0x3D0DA00000000003, double %3657)
  %gep10595 = getelementptr double, ptr %invariant.gep10594, i64 %indvars.iv
  store double %3658, ptr %gep10595, align 8, !tbaa !5
  %3659 = fmul double %2862, 0x3CD7800000000000
  %3660 = tail call double @llvm.fmuladd.f64(double %2861, double 0x3CD8000000000001, double %3659)
  %3661 = tail call double @llvm.fmuladd.f64(double %2865, double 0xBCAE000000000002, double %3660)
  %3662 = tail call double @llvm.fmuladd.f64(double %2867, double 0x3CA7000000000002, double %3661)
  %3663 = tail call double @llvm.fmuladd.f64(double %2869, double 0xBCE1800000000000, double %3662)
  %3664 = tail call double @llvm.fmuladd.f64(double %2871, double 0xBCBC000000000000, double %3663)
  %3665 = tail call double @llvm.fmuladd.f64(double %2873, double 0xBCC9000000000000, double %3664)
  %3666 = tail call double @llvm.fmuladd.f64(double %2875, double 0xBCAC000000000000, double %3665)
  %3667 = tail call double @llvm.fmuladd.f64(double %2877, double 0x3CCD000000000000, double %3666)
  %3668 = tail call double @llvm.fmuladd.f64(double %2879, double 0x3FD4F58312101B3D, double %3667)
  %3669 = tail call double @llvm.fmuladd.f64(double %2881, double 0x3D17000000000000, double %3668)
  %3670 = tail call double @llvm.fmuladd.f64(double %2883, double 0x3D12680000000000, double %3669)
  %3671 = tail call double @llvm.fmuladd.f64(double %2885, double 0xBCEADFFFFFFFFFFF, double %3670)
  %3672 = tail call double @llvm.fmuladd.f64(double %2887, double 0x3CF1380000000000, double %3671)
  %3673 = tail call double @llvm.fmuladd.f64(double %2889, double 0xBD19CFFFFFFFFFFF, double %3672)
  %3674 = tail call double @llvm.fmuladd.f64(double %2891, double 0xBCF7400000000000, double %3673)
  %3675 = tail call double @llvm.fmuladd.f64(double %2893, double 0xBD08700000000003, double %3674)
  %3676 = tail call double @llvm.fmuladd.f64(double %2895, double 0xBCF6E00000000000, double %3675)
  %3677 = tail call double @llvm.fmuladd.f64(double %2897, double 0x3D0FD00000000002, double %3676)
  %3678 = tail call double @llvm.fmuladd.f64(double %2899, double 0x40118E7E1D8191B1, double %3677)
  %gep10597 = getelementptr double, ptr %invariant.gep10596, i64 %indvars.iv
  store double %3678, ptr %gep10597, align 8, !tbaa !5
  %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1
  %exitcond.not = icmp eq i64 %indvars.iv.next, %wide.trip.count
  br i1 %exitcond.not, label %._crit_edge, label %377, !llvm.loop !9
}

attributes #0 = { mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none) }
attributes #1 = { nofree norecurse nosync nounwind memory(argmem: readwrite) 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 = !{!"double", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C/C++ TBAA"}
!9 = distinct !{!9, !10}
!10 = !{!"llvm.loop.mustprogress"}


; Effective O3 passes: EarlyCSEPass,GlobalOptPass,IndVarSimplifyPass,InferFunctionAttrsPass,InstCombinePass,JumpThreadingPass,LICMPass,LoopRotatePass,LoopSimplifyPass,LoopUnrollPass,PostOrderFunctionAttrsPass,ReassociatePass,SROAPass,SimplifyCFGPass,TailCallElimPass