; 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_b1(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 = %30451, %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 %30454

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
  %315 = load double, ptr %314, align 8, !tbaa !11
  %316 = fadd double %315, %307
  store double %316, ptr %314, align 8, !tbaa !11
  %317 = load ptr, ptr %7, align 8, !tbaa !9
  %318 = load i32, ptr %12, align 4, !tbaa !5
  %319 = load i32, ptr %8, align 4, !tbaa !5
  %320 = mul nsw i32 36, %319
  %321 = add nsw i32 %318, %320
  %322 = sext i32 %321 to i64
  %323 = getelementptr inbounds double, ptr %317, i64 %322
  %324 = load double, ptr %323, align 8, !tbaa !11
  %325 = load ptr, ptr %7, align 8, !tbaa !9
  %326 = load i32, ptr %12, align 4, !tbaa !5
  %327 = load i32, ptr %8, align 4, !tbaa !5
  %328 = mul nsw i32 37, %327
  %329 = add nsw i32 %326, %328
  %330 = sext i32 %329 to i64
  %331 = getelementptr inbounds double, ptr %325, i64 %330
  %332 = load double, ptr %331, align 8, !tbaa !11
  %333 = fmul double 0x3FCEFDC8894D082A, %332
  %334 = call double @llvm.fmuladd.f64(double 0xBFACD49071EC5F52, double %324, double %333)
  %335 = load ptr, ptr %7, align 8, !tbaa !9
  %336 = load i32, ptr %12, align 4, !tbaa !5
  %337 = load i32, ptr %8, align 4, !tbaa !5
  %338 = mul nsw i32 38, %337
  %339 = add nsw i32 %336, %338
  %340 = sext i32 %339 to i64
  %341 = getelementptr inbounds double, ptr %335, i64 %340
  %342 = load double, ptr %341, align 8, !tbaa !11
  %343 = call double @llvm.fmuladd.f64(double 0xBFDD2EB9CCB3BDE5, double %342, double %334)
  %344 = load ptr, ptr %7, align 8, !tbaa !9
  %345 = load i32, ptr %12, align 4, !tbaa !5
  %346 = load i32, ptr %8, align 4, !tbaa !5
  %347 = mul nsw i32 39, %346
  %348 = add nsw i32 %345, %347
  %349 = sext i32 %348 to i64
  %350 = getelementptr inbounds double, ptr %344, i64 %349
  %351 = load double, ptr %350, align 8, !tbaa !11
  %352 = call double @llvm.fmuladd.f64(double 0xC01569E165D79415, double %351, double %343)
  %353 = load ptr, ptr %7, align 8, !tbaa !9
  %354 = load i32, ptr %12, align 4, !tbaa !5
  %355 = load i32, ptr %8, align 4, !tbaa !5
  %356 = mul nsw i32 40, %355
  %357 = add nsw i32 %354, %356
  %358 = sext i32 %357 to i64
  %359 = getelementptr inbounds double, ptr %353, i64 %358
  %360 = load double, ptr %359, align 8, !tbaa !11
  %361 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %360, double %352)
  %362 = load ptr, ptr %7, align 8, !tbaa !9
  %363 = load i32, ptr %12, align 4, !tbaa !5
  %364 = load i32, ptr %8, align 4, !tbaa !5
  %365 = mul nsw i32 41, %364
  %366 = add nsw i32 %363, %365
  %367 = sext i32 %366 to i64
  %368 = getelementptr inbounds double, ptr %362, i64 %367
  %369 = load double, ptr %368, align 8, !tbaa !11
  %370 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %369, double %361)
  %371 = load ptr, ptr %7, align 8, !tbaa !9
  %372 = load i32, ptr %12, align 4, !tbaa !5
  %373 = load i32, ptr %8, align 4, !tbaa !5
  %374 = mul nsw i32 42, %373
  %375 = add nsw i32 %372, %374
  %376 = sext i32 %375 to i64
  %377 = getelementptr inbounds double, ptr %371, i64 %376
  %378 = load double, ptr %377, align 8, !tbaa !11
  %379 = call double @llvm.fmuladd.f64(double 0xBCB0000000000000, double %378, double %370)
  %380 = load ptr, ptr %7, align 8, !tbaa !9
  %381 = load i32, ptr %12, align 4, !tbaa !5
  %382 = load i32, ptr %8, align 4, !tbaa !5
  %383 = mul nsw i32 43, %382
  %384 = add nsw i32 %381, %383
  %385 = sext i32 %384 to i64
  %386 = getelementptr inbounds double, ptr %380, i64 %385
  %387 = load double, ptr %386, align 8, !tbaa !11
  %388 = call double @llvm.fmuladd.f64(double 0xBCC4000000000000, double %387, double %379)
  %389 = load ptr, ptr %7, align 8, !tbaa !9
  %390 = load i32, ptr %12, align 4, !tbaa !5
  %391 = load i32, ptr %8, align 4, !tbaa !5
  %392 = mul nsw i32 44, %391
  %393 = add nsw i32 %390, %392
  %394 = sext i32 %393 to i64
  %395 = getelementptr inbounds double, ptr %389, i64 %394
  %396 = load double, ptr %395, align 8, !tbaa !11
  %397 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %396, double %388)
  %398 = load ptr, ptr %7, align 8, !tbaa !9
  %399 = load i32, ptr %12, align 4, !tbaa !5
  %400 = load i32, ptr %8, align 4, !tbaa !5
  %401 = mul nsw i32 45, %400
  %402 = add nsw i32 %399, %401
  %403 = sext i32 %402 to i64
  %404 = getelementptr inbounds double, ptr %398, i64 %403
  %405 = load double, ptr %404, align 8, !tbaa !11
  %406 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %405, double %397)
  %407 = load ptr, ptr %7, align 8, !tbaa !9
  %408 = load i32, ptr %12, align 4, !tbaa !5
  %409 = load i32, ptr %8, align 4, !tbaa !5
  %410 = mul nsw i32 46, %409
  %411 = add nsw i32 %408, %410
  %412 = sext i32 %411 to i64
  %413 = getelementptr inbounds double, ptr %407, i64 %412
  %414 = load double, ptr %413, align 8, !tbaa !11
  %415 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %414, double %406)
  %416 = load ptr, ptr %7, align 8, !tbaa !9
  %417 = load i32, ptr %12, align 4, !tbaa !5
  %418 = load i32, ptr %8, align 4, !tbaa !5
  %419 = mul nsw i32 47, %418
  %420 = add nsw i32 %417, %419
  %421 = sext i32 %420 to i64
  %422 = getelementptr inbounds double, ptr %416, i64 %421
  %423 = load double, ptr %422, align 8, !tbaa !11
  %424 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %423, double %415)
  %425 = load ptr, ptr %7, align 8, !tbaa !9
  %426 = load i32, ptr %12, align 4, !tbaa !5
  %427 = load i32, ptr %8, align 4, !tbaa !5
  %428 = mul nsw i32 48, %427
  %429 = add nsw i32 %426, %428
  %430 = sext i32 %429 to i64
  %431 = getelementptr inbounds double, ptr %425, i64 %430
  %432 = load double, ptr %431, align 8, !tbaa !11
  %433 = call double @llvm.fmuladd.f64(double 0xBC89FFFFFFFFFFFF, double %432, double %424)
  %434 = load ptr, ptr %7, align 8, !tbaa !9
  %435 = load i32, ptr %12, align 4, !tbaa !5
  %436 = load i32, ptr %8, align 4, !tbaa !5
  %437 = mul nsw i32 49, %436
  %438 = add nsw i32 %435, %437
  %439 = sext i32 %438 to i64
  %440 = getelementptr inbounds double, ptr %434, i64 %439
  %441 = load double, ptr %440, align 8, !tbaa !11
  %442 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %441, double %433)
  %443 = load ptr, ptr %7, align 8, !tbaa !9
  %444 = load i32, ptr %12, align 4, !tbaa !5
  %445 = load i32, ptr %8, align 4, !tbaa !5
  %446 = mul nsw i32 50, %445
  %447 = add nsw i32 %444, %446
  %448 = sext i32 %447 to i64
  %449 = getelementptr inbounds double, ptr %443, i64 %448
  %450 = load double, ptr %449, align 8, !tbaa !11
  %451 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %450, double %442)
  %452 = load ptr, ptr %7, align 8, !tbaa !9
  %453 = load i32, ptr %12, align 4, !tbaa !5
  %454 = load i32, ptr %8, align 4, !tbaa !5
  %455 = mul nsw i32 51, %454
  %456 = add nsw i32 %453, %455
  %457 = sext i32 %456 to i64
  %458 = getelementptr inbounds double, ptr %452, i64 %457
  %459 = load double, ptr %458, align 8, !tbaa !11
  %460 = call double @llvm.fmuladd.f64(double 0xBCC8000000000000, double %459, double %451)
  %461 = load ptr, ptr %7, align 8, !tbaa !9
  %462 = load i32, ptr %12, align 4, !tbaa !5
  %463 = load i32, ptr %8, align 4, !tbaa !5
  %464 = mul nsw i32 52, %463
  %465 = add nsw i32 %462, %464
  %466 = sext i32 %465 to i64
  %467 = getelementptr inbounds double, ptr %461, i64 %466
  %468 = load double, ptr %467, align 8, !tbaa !11
  %469 = call double @llvm.fmuladd.f64(double 0x3FA462D8D66D7FC4, double %468, double %460)
  %470 = load ptr, ptr %7, align 8, !tbaa !9
  %471 = load i32, ptr %12, align 4, !tbaa !5
  %472 = load i32, ptr %8, align 4, !tbaa !5
  %473 = mul nsw i32 53, %472
  %474 = add nsw i32 %471, %473
  %475 = sext i32 %474 to i64
  %476 = getelementptr inbounds double, ptr %470, i64 %475
  %477 = load double, ptr %476, align 8, !tbaa !11
  %478 = call double @llvm.fmuladd.f64(double 0xBFC5EA083165C4F6, double %477, double %469)
  %479 = load ptr, ptr %7, align 8, !tbaa !9
  %480 = load i32, ptr %12, align 4, !tbaa !5
  %481 = load i32, ptr %8, align 4, !tbaa !5
  %482 = mul nsw i32 54, %481
  %483 = add nsw i32 %480, %482
  %484 = sext i32 %483 to i64
  %485 = getelementptr inbounds double, ptr %479, i64 %484
  %486 = load double, ptr %485, align 8, !tbaa !11
  %487 = call double @llvm.fmuladd.f64(double 0x3FD4A299D1E9700E, double %486, double %478)
  %488 = load ptr, ptr %7, align 8, !tbaa !9
  %489 = load i32, ptr %12, align 4, !tbaa !5
  %490 = load i32, ptr %8, align 4, !tbaa !5
  %491 = mul nsw i32 55, %490
  %492 = add nsw i32 %489, %491
  %493 = sext i32 %492 to i64
  %494 = getelementptr inbounds double, ptr %488, i64 %493
  %495 = load double, ptr %494, align 8, !tbaa !11
  %496 = call double @llvm.fmuladd.f64(double 0x400E488CB8C1EA74, double %495, double %487)
  %497 = load ptr, ptr %7, align 8, !tbaa !9
  %498 = load i32, ptr %12, align 4, !tbaa !5
  %499 = load i32, ptr %8, align 4, !tbaa !5
  %500 = mul nsw i32 56, %499
  %501 = add nsw i32 %498, %500
  %502 = sext i32 %501 to i64
  %503 = getelementptr inbounds double, ptr %497, i64 %502
  %504 = load double, ptr %503, align 8, !tbaa !11
  %505 = call double @llvm.fmuladd.f64(double 0x3C66A09E667F3BCC, double %504, double %496)
  %506 = load ptr, ptr %7, align 8, !tbaa !9
  %507 = load i32, ptr %12, align 4, !tbaa !5
  %508 = load i32, ptr %8, align 4, !tbaa !5
  %509 = mul nsw i32 57, %508
  %510 = add nsw i32 %507, %509
  %511 = sext i32 %510 to i64
  %512 = getelementptr inbounds double, ptr %506, i64 %511
  %513 = load double, ptr %512, align 8, !tbaa !11
  %514 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %513, double %505)
  %515 = load ptr, ptr %7, align 8, !tbaa !9
  %516 = load i32, ptr %12, align 4, !tbaa !5
  %517 = load i32, ptr %8, align 4, !tbaa !5
  %518 = mul nsw i32 58, %517
  %519 = add nsw i32 %516, %518
  %520 = sext i32 %519 to i64
  %521 = getelementptr inbounds double, ptr %515, i64 %520
  %522 = load double, ptr %521, align 8, !tbaa !11
  %523 = call double @llvm.fmuladd.f64(double 0x3CA0F876CCDF6CD8, double %522, double %514)
  %524 = load ptr, ptr %7, align 8, !tbaa !9
  %525 = load i32, ptr %12, align 4, !tbaa !5
  %526 = load i32, ptr %8, align 4, !tbaa !5
  %527 = mul nsw i32 59, %526
  %528 = add nsw i32 %525, %527
  %529 = sext i32 %528 to i64
  %530 = getelementptr inbounds double, ptr %524, i64 %529
  %531 = load double, ptr %530, align 8, !tbaa !11
  %532 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %531, double %523)
  %533 = load ptr, ptr %7, align 8, !tbaa !9
  %534 = load i32, ptr %12, align 4, !tbaa !5
  %535 = load i32, ptr %8, align 4, !tbaa !5
  %536 = mul nsw i32 61, %535
  %537 = add nsw i32 %534, %536
  %538 = sext i32 %537 to i64
  %539 = getelementptr inbounds double, ptr %533, i64 %538
  %540 = load double, ptr %539, align 8, !tbaa !11
  %541 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %540, double %532)
  %542 = load ptr, ptr %7, align 8, !tbaa !9
  %543 = load i32, ptr %12, align 4, !tbaa !5
  %544 = load i32, ptr %8, align 4, !tbaa !5
  %545 = mul nsw i32 62, %544
  %546 = add nsw i32 %543, %545
  %547 = sext i32 %546 to i64
  %548 = getelementptr inbounds double, ptr %542, i64 %547
  %549 = load double, ptr %548, align 8, !tbaa !11
  %550 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %549, double %541)
  %551 = load ptr, ptr %7, align 8, !tbaa !9
  %552 = load i32, ptr %12, align 4, !tbaa !5
  %553 = load i32, ptr %8, align 4, !tbaa !5
  %554 = mul nsw i32 63, %553
  %555 = add nsw i32 %552, %554
  %556 = sext i32 %555 to i64
  %557 = getelementptr inbounds double, ptr %551, i64 %556
  %558 = load double, ptr %557, align 8, !tbaa !11
  %559 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %558, double %550)
  %560 = load ptr, ptr %7, align 8, !tbaa !9
  %561 = load i32, ptr %12, align 4, !tbaa !5
  %562 = load i32, ptr %8, align 4, !tbaa !5
  %563 = mul nsw i32 64, %562
  %564 = add nsw i32 %561, %563
  %565 = sext i32 %564 to i64
  %566 = getelementptr inbounds double, ptr %560, i64 %565
  %567 = load double, ptr %566, align 8, !tbaa !11
  %568 = call double @llvm.fmuladd.f64(double 0x3C91AD7BC01366B7, double %567, double %559)
  %569 = load ptr, ptr %7, align 8, !tbaa !9
  %570 = load i32, ptr %12, align 4, !tbaa !5
  %571 = load i32, ptr %8, align 4, !tbaa !5
  %572 = mul nsw i32 65, %571
  %573 = add nsw i32 %570, %572
  %574 = sext i32 %573 to i64
  %575 = getelementptr inbounds double, ptr %569, i64 %574
  %576 = load double, ptr %575, align 8, !tbaa !11
  %577 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %576, double %568)
  %578 = load ptr, ptr %7, align 8, !tbaa !9
  %579 = load i32, ptr %12, align 4, !tbaa !5
  %580 = load i32, ptr %8, align 4, !tbaa !5
  %581 = mul nsw i32 66, %580
  %582 = add nsw i32 %579, %581
  %583 = sext i32 %582 to i64
  %584 = getelementptr inbounds double, ptr %578, i64 %583
  %585 = load double, ptr %584, align 8, !tbaa !11
  %586 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %585, double %577)
  %587 = load ptr, ptr %7, align 8, !tbaa !9
  %588 = load i32, ptr %12, align 4, !tbaa !5
  %589 = load i32, ptr %8, align 4, !tbaa !5
  %590 = mul nsw i32 67, %589
  %591 = add nsw i32 %588, %590
  %592 = sext i32 %591 to i64
  %593 = getelementptr inbounds double, ptr %587, i64 %592
  %594 = load double, ptr %593, align 8, !tbaa !11
  %595 = call double @llvm.fmuladd.f64(double 0x3CC0F876CCDF6CD9, double %594, double %586)
  store double %595, ptr %11, align 8, !tbaa !11
  %596 = load double, ptr %11, align 8, !tbaa !11
  %597 = load ptr, ptr %9, align 8, !tbaa !9
  %598 = load i32, ptr %12, align 4, !tbaa !5
  %599 = load i32, ptr %10, align 4, !tbaa !5
  %600 = mul nsw i32 1, %599
  %601 = add nsw i32 %598, %600
  %602 = sext i32 %601 to i64
  %603 = getelementptr inbounds double, ptr %597, i64 %602
  %604 = load double, ptr %603, align 8, !tbaa !11
  %605 = fadd double %604, %596
  store double %605, ptr %603, align 8, !tbaa !11
  %606 = load ptr, ptr %7, align 8, !tbaa !9
  %607 = load i32, ptr %12, align 4, !tbaa !5
  %608 = load i32, ptr %8, align 4, !tbaa !5
  %609 = mul nsw i32 36, %608
  %610 = add nsw i32 %607, %609
  %611 = sext i32 %610 to i64
  %612 = getelementptr inbounds double, ptr %606, i64 %611
  %613 = load double, ptr %612, align 8, !tbaa !11
  %614 = load ptr, ptr %7, align 8, !tbaa !9
  %615 = load i32, ptr %12, align 4, !tbaa !5
  %616 = load i32, ptr %8, align 4, !tbaa !5
  %617 = mul nsw i32 37, %616
  %618 = add nsw i32 %615, %617
  %619 = sext i32 %618 to i64
  %620 = getelementptr inbounds double, ptr %614, i64 %619
  %621 = load double, ptr %620, align 8, !tbaa !11
  %622 = fmul double 0x3FEAEBF44A8E7A7E, %621
  %623 = call double @llvm.fmuladd.f64(double 0x3FD6F2A1D7A49290, double %613, double %622)
  %624 = load ptr, ptr %7, align 8, !tbaa !9
  %625 = load i32, ptr %12, align 4, !tbaa !5
  %626 = load i32, ptr %8, align 4, !tbaa !5
  %627 = mul nsw i32 38, %626
  %628 = add nsw i32 %625, %627
  %629 = sext i32 %628 to i64
  %630 = getelementptr inbounds double, ptr %624, i64 %629
  %631 = load double, ptr %630, align 8, !tbaa !11
  %632 = call double @llvm.fmuladd.f64(double 0x3FEAEBF44A8E7A78, double %631, double %623)
  %633 = load ptr, ptr %7, align 8, !tbaa !9
  %634 = load i32, ptr %12, align 4, !tbaa !5
  %635 = load i32, ptr %8, align 4, !tbaa !5
  %636 = mul nsw i32 39, %635
  %637 = add nsw i32 %634, %636
  %638 = sext i32 %637 to i64
  %639 = getelementptr inbounds double, ptr %633, i64 %638
  %640 = load double, ptr %639, align 8, !tbaa !11
  %641 = call double @llvm.fmuladd.f64(double 0x3FD6F2A1D7A492C1, double %640, double %632)
  %642 = load ptr, ptr %7, align 8, !tbaa !9
  %643 = load i32, ptr %12, align 4, !tbaa !5
  %644 = load i32, ptr %8, align 4, !tbaa !5
  %645 = mul nsw i32 40, %644
  %646 = add nsw i32 %643, %645
  %647 = sext i32 %646 to i64
  %648 = getelementptr inbounds double, ptr %642, i64 %647
  %649 = load double, ptr %648, align 8, !tbaa !11
  %650 = call double @llvm.fmuladd.f64(double 0xBC71FFFFFFFFFFFF, double %649, double %641)
  %651 = load ptr, ptr %7, align 8, !tbaa !9
  %652 = load i32, ptr %12, align 4, !tbaa !5
  %653 = load i32, ptr %8, align 4, !tbaa !5
  %654 = mul nsw i32 41, %653
  %655 = add nsw i32 %652, %654
  %656 = sext i32 %655 to i64
  %657 = getelementptr inbounds double, ptr %651, i64 %656
  %658 = load double, ptr %657, align 8, !tbaa !11
  %659 = call double @llvm.fmuladd.f64(double 0x3CB1000000000001, double %658, double %650)
  %660 = load ptr, ptr %7, align 8, !tbaa !9
  %661 = load i32, ptr %12, align 4, !tbaa !5
  %662 = load i32, ptr %8, align 4, !tbaa !5
  %663 = mul nsw i32 42, %662
  %664 = add nsw i32 %661, %663
  %665 = sext i32 %664 to i64
  %666 = getelementptr inbounds double, ptr %660, i64 %665
  %667 = load double, ptr %666, align 8, !tbaa !11
  %668 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %667, double %659)
  %669 = load ptr, ptr %7, align 8, !tbaa !9
  %670 = load i32, ptr %12, align 4, !tbaa !5
  %671 = load i32, ptr %8, align 4, !tbaa !5
  %672 = mul nsw i32 43, %671
  %673 = add nsw i32 %670, %672
  %674 = sext i32 %673 to i64
  %675 = getelementptr inbounds double, ptr %669, i64 %674
  %676 = load double, ptr %675, align 8, !tbaa !11
  %677 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %676, double %668)
  %678 = load ptr, ptr %7, align 8, !tbaa !9
  %679 = load i32, ptr %12, align 4, !tbaa !5
  %680 = load i32, ptr %8, align 4, !tbaa !5
  %681 = mul nsw i32 44, %680
  %682 = add nsw i32 %679, %681
  %683 = sext i32 %682 to i64
  %684 = getelementptr inbounds double, ptr %678, i64 %683
  %685 = load double, ptr %684, align 8, !tbaa !11
  %686 = call double @llvm.fmuladd.f64(double 0x3CB91FFFFFFFFFFF, double %685, double %677)
  %687 = load ptr, ptr %7, align 8, !tbaa !9
  %688 = load i32, ptr %12, align 4, !tbaa !5
  %689 = load i32, ptr %8, align 4, !tbaa !5
  %690 = mul nsw i32 45, %689
  %691 = add nsw i32 %688, %690
  %692 = sext i32 %691 to i64
  %693 = getelementptr inbounds double, ptr %687, i64 %692
  %694 = load double, ptr %693, align 8, !tbaa !11
  %695 = call double @llvm.fmuladd.f64(double 0x3CAE000000000002, double %694, double %686)
  %696 = load ptr, ptr %7, align 8, !tbaa !9
  %697 = load i32, ptr %12, align 4, !tbaa !5
  %698 = load i32, ptr %8, align 4, !tbaa !5
  %699 = mul nsw i32 46, %698
  %700 = add nsw i32 %697, %699
  %701 = sext i32 %700 to i64
  %702 = getelementptr inbounds double, ptr %696, i64 %701
  %703 = load double, ptr %702, align 8, !tbaa !11
  %704 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %703, double %695)
  %705 = load ptr, ptr %7, align 8, !tbaa !9
  %706 = load i32, ptr %12, align 4, !tbaa !5
  %707 = load i32, ptr %8, align 4, !tbaa !5
  %708 = mul nsw i32 47, %707
  %709 = add nsw i32 %706, %708
  %710 = sext i32 %709 to i64
  %711 = getelementptr inbounds double, ptr %705, i64 %710
  %712 = load double, ptr %711, align 8, !tbaa !11
  %713 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %712, double %704)
  %714 = load ptr, ptr %7, align 8, !tbaa !9
  %715 = load i32, ptr %12, align 4, !tbaa !5
  %716 = load i32, ptr %8, align 4, !tbaa !5
  %717 = mul nsw i32 48, %716
  %718 = add nsw i32 %715, %717
  %719 = sext i32 %718 to i64
  %720 = getelementptr inbounds double, ptr %714, i64 %719
  %721 = load double, ptr %720, align 8, !tbaa !11
  %722 = call double @llvm.fmuladd.f64(double 0x3CA7800000000001, double %721, double %713)
  %723 = load ptr, ptr %7, align 8, !tbaa !9
  %724 = load i32, ptr %12, align 4, !tbaa !5
  %725 = load i32, ptr %8, align 4, !tbaa !5
  %726 = mul nsw i32 49, %725
  %727 = add nsw i32 %724, %726
  %728 = sext i32 %727 to i64
  %729 = getelementptr inbounds double, ptr %723, i64 %728
  %730 = load double, ptr %729, align 8, !tbaa !11
  %731 = call double @llvm.fmuladd.f64(double 0x3CA2BFFFFFFFFFFF, double %730, double %722)
  %732 = load ptr, ptr %7, align 8, !tbaa !9
  %733 = load i32, ptr %12, align 4, !tbaa !5
  %734 = load i32, ptr %8, align 4, !tbaa !5
  %735 = mul nsw i32 50, %734
  %736 = add nsw i32 %733, %735
  %737 = sext i32 %736 to i64
  %738 = getelementptr inbounds double, ptr %732, i64 %737
  %739 = load double, ptr %738, align 8, !tbaa !11
  %740 = call double @llvm.fmuladd.f64(double 0x3C91000000000000, double %739, double %731)
  %741 = load ptr, ptr %7, align 8, !tbaa !9
  %742 = load i32, ptr %12, align 4, !tbaa !5
  %743 = load i32, ptr %8, align 4, !tbaa !5
  %744 = mul nsw i32 51, %743
  %745 = add nsw i32 %742, %744
  %746 = sext i32 %745 to i64
  %747 = getelementptr inbounds double, ptr %741, i64 %746
  %748 = load double, ptr %747, align 8, !tbaa !11
  %749 = call double @llvm.fmuladd.f64(double 0x3CA5FFFFFFFFFFFF, double %748, double %740)
  %750 = load ptr, ptr %7, align 8, !tbaa !9
  %751 = load i32, ptr %12, align 4, !tbaa !5
  %752 = load i32, ptr %8, align 4, !tbaa !5
  %753 = mul nsw i32 52, %752
  %754 = add nsw i32 %751, %753
  %755 = sext i32 %754 to i64
  %756 = getelementptr inbounds double, ptr %750, i64 %755
  %757 = load double, ptr %756, align 8, !tbaa !11
  %758 = call double @llvm.fmuladd.f64(double 0x400E488CB8C1EA66, double %757, double %749)
  %759 = load ptr, ptr %7, align 8, !tbaa !9
  %760 = load i32, ptr %12, align 4, !tbaa !5
  %761 = load i32, ptr %8, align 4, !tbaa !5
  %762 = mul nsw i32 53, %761
  %763 = add nsw i32 %760, %762
  %764 = sext i32 %763 to i64
  %765 = getelementptr inbounds double, ptr %759, i64 %764
  %766 = load double, ptr %765, align 8, !tbaa !11
  %767 = call double @llvm.fmuladd.f64(double 0x3FD4A299D1E9700C, double %766, double %758)
  %768 = load ptr, ptr %7, align 8, !tbaa !9
  %769 = load i32, ptr %12, align 4, !tbaa !5
  %770 = load i32, ptr %8, align 4, !tbaa !5
  %771 = mul nsw i32 54, %770
  %772 = add nsw i32 %769, %771
  %773 = sext i32 %772 to i64
  %774 = getelementptr inbounds double, ptr %768, i64 %773
  %775 = load double, ptr %774, align 8, !tbaa !11
  %776 = call double @llvm.fmuladd.f64(double 0xBFC5EA083165C4F9, double %775, double %767)
  %777 = load ptr, ptr %7, align 8, !tbaa !9
  %778 = load i32, ptr %12, align 4, !tbaa !5
  %779 = load i32, ptr %8, align 4, !tbaa !5
  %780 = mul nsw i32 55, %779
  %781 = add nsw i32 %778, %780
  %782 = sext i32 %781 to i64
  %783 = getelementptr inbounds double, ptr %777, i64 %782
  %784 = load double, ptr %783, align 8, !tbaa !11
  %785 = call double @llvm.fmuladd.f64(double 0x3FA462D8D66D7F94, double %784, double %776)
  %786 = load ptr, ptr %7, align 8, !tbaa !9
  %787 = load i32, ptr %12, align 4, !tbaa !5
  %788 = load i32, ptr %8, align 4, !tbaa !5
  %789 = mul nsw i32 56, %788
  %790 = add nsw i32 %787, %789
  %791 = sext i32 %790 to i64
  %792 = getelementptr inbounds double, ptr %786, i64 %791
  %793 = load double, ptr %792, align 8, !tbaa !11
  %794 = call double @llvm.fmuladd.f64(double 0x3C9152F9467969C8, double %793, double %785)
  %795 = load ptr, ptr %7, align 8, !tbaa !9
  %796 = load i32, ptr %12, align 4, !tbaa !5
  %797 = load i32, ptr %8, align 4, !tbaa !5
  %798 = mul nsw i32 57, %797
  %799 = add nsw i32 %796, %798
  %800 = sext i32 %799 to i64
  %801 = getelementptr inbounds double, ptr %795, i64 %800
  %802 = load double, ptr %801, align 8, !tbaa !11
  %803 = call double @llvm.fmuladd.f64(double 0xBCADB2CFE686FE7D, double %802, double %794)
  %804 = load ptr, ptr %7, align 8, !tbaa !9
  %805 = load i32, ptr %12, align 4, !tbaa !5
  %806 = load i32, ptr %8, align 4, !tbaa !5
  %807 = mul nsw i32 58, %806
  %808 = add nsw i32 %805, %807
  %809 = sext i32 %808 to i64
  %810 = getelementptr inbounds double, ptr %804, i64 %809
  %811 = load double, ptr %810, align 8, !tbaa !11
  %812 = call double @llvm.fmuladd.f64(double 0xBCA26280B3476095, double %811, double %803)
  %813 = load ptr, ptr %7, align 8, !tbaa !9
  %814 = load i32, ptr %12, align 4, !tbaa !5
  %815 = load i32, ptr %8, align 4, !tbaa !5
  %816 = mul nsw i32 59, %815
  %817 = add nsw i32 %814, %816
  %818 = sext i32 %817 to i64
  %819 = getelementptr inbounds double, ptr %813, i64 %818
  %820 = load double, ptr %819, align 8, !tbaa !11
  %821 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %820, double %812)
  %822 = load ptr, ptr %7, align 8, !tbaa !9
  %823 = load i32, ptr %12, align 4, !tbaa !5
  %824 = load i32, ptr %8, align 4, !tbaa !5
  %825 = mul nsw i32 60, %824
  %826 = add nsw i32 %823, %825
  %827 = sext i32 %826 to i64
  %828 = getelementptr inbounds double, ptr %822, i64 %827
  %829 = load double, ptr %828, align 8, !tbaa !11
  %830 = call double @llvm.fmuladd.f64(double 0xBCAF4A1B09BBF0AE, double %829, double %821)
  %831 = load ptr, ptr %7, align 8, !tbaa !9
  %832 = load i32, ptr %12, align 4, !tbaa !5
  %833 = load i32, ptr %8, align 4, !tbaa !5
  %834 = mul nsw i32 61, %833
  %835 = add nsw i32 %832, %834
  %836 = sext i32 %835 to i64
  %837 = getelementptr inbounds double, ptr %831, i64 %836
  %838 = load double, ptr %837, align 8, !tbaa !11
  %839 = call double @llvm.fmuladd.f64(double 0x3CADB2CFE686FE7D, double %838, double %830)
  %840 = load ptr, ptr %7, align 8, !tbaa !9
  %841 = load i32, ptr %12, align 4, !tbaa !5
  %842 = load i32, ptr %8, align 4, !tbaa !5
  %843 = mul nsw i32 62, %842
  %844 = add nsw i32 %841, %843
  %845 = sext i32 %844 to i64
  %846 = getelementptr inbounds double, ptr %840, i64 %845
  %847 = load double, ptr %846, align 8, !tbaa !11
  %848 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %847, double %839)
  %849 = load ptr, ptr %7, align 8, !tbaa !9
  %850 = load i32, ptr %12, align 4, !tbaa !5
  %851 = load i32, ptr %8, align 4, !tbaa !5
  %852 = mul nsw i32 63, %851
  %853 = add nsw i32 %850, %852
  %854 = sext i32 %853 to i64
  %855 = getelementptr inbounds double, ptr %849, i64 %854
  %856 = load double, ptr %855, align 8, !tbaa !11
  %857 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %856, double %848)
  %858 = load ptr, ptr %7, align 8, !tbaa !9
  %859 = load i32, ptr %12, align 4, !tbaa !5
  %860 = load i32, ptr %8, align 4, !tbaa !5
  %861 = mul nsw i32 64, %860
  %862 = add nsw i32 %859, %861
  %863 = sext i32 %862 to i64
  %864 = getelementptr inbounds double, ptr %858, i64 %863
  %865 = load double, ptr %864, align 8, !tbaa !11
  %866 = call double @llvm.fmuladd.f64(double 0x3CC689FDC818BC8F, double %865, double %857)
  %867 = load ptr, ptr %7, align 8, !tbaa !9
  %868 = load i32, ptr %12, align 4, !tbaa !5
  %869 = load i32, ptr %8, align 4, !tbaa !5
  %870 = mul nsw i32 65, %869
  %871 = add nsw i32 %868, %870
  %872 = sext i32 %871 to i64
  %873 = getelementptr inbounds double, ptr %867, i64 %872
  %874 = load double, ptr %873, align 8, !tbaa !11
  %875 = call double @llvm.fmuladd.f64(double 0x3CB16999E4DFE903, double %874, double %866)
  %876 = load ptr, ptr %7, align 8, !tbaa !9
  %877 = load i32, ptr %12, align 4, !tbaa !5
  %878 = load i32, ptr %8, align 4, !tbaa !5
  %879 = mul nsw i32 66, %878
  %880 = add nsw i32 %877, %879
  %881 = sext i32 %880 to i64
  %882 = getelementptr inbounds double, ptr %876, i64 %881
  %883 = load double, ptr %882, align 8, !tbaa !11
  %884 = call double @llvm.fmuladd.f64(double 0xBC880AA84CE72F89, double %883, double %875)
  %885 = load ptr, ptr %7, align 8, !tbaa !9
  %886 = load i32, ptr %12, align 4, !tbaa !5
  %887 = load i32, ptr %8, align 4, !tbaa !5
  %888 = mul nsw i32 67, %887
  %889 = add nsw i32 %886, %888
  %890 = sext i32 %889 to i64
  %891 = getelementptr inbounds double, ptr %885, i64 %890
  %892 = load double, ptr %891, align 8, !tbaa !11
  %893 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %892, double %884)
  store double %893, ptr %11, align 8, !tbaa !11
  %894 = load double, ptr %11, align 8, !tbaa !11
  %895 = load ptr, ptr %9, align 8, !tbaa !9
  %896 = load i32, ptr %12, align 4, !tbaa !5
  %897 = load i32, ptr %10, align 4, !tbaa !5
  %898 = mul nsw i32 2, %897
  %899 = add nsw i32 %896, %898
  %900 = sext i32 %899 to i64
  %901 = getelementptr inbounds double, ptr %895, i64 %900
  %902 = load double, ptr %901, align 8, !tbaa !11
  %903 = fadd double %902, %894
  store double %903, ptr %901, align 8, !tbaa !11
  %904 = load ptr, ptr %7, align 8, !tbaa !9
  %905 = load i32, ptr %12, align 4, !tbaa !5
  %906 = load i32, ptr %8, align 4, !tbaa !5
  %907 = mul nsw i32 36, %906
  %908 = add nsw i32 %905, %907
  %909 = sext i32 %908 to i64
  %910 = getelementptr inbounds double, ptr %904, i64 %909
  %911 = load double, ptr %910, align 8, !tbaa !11
  %912 = load ptr, ptr %7, align 8, !tbaa !9
  %913 = load i32, ptr %12, align 4, !tbaa !5
  %914 = load i32, ptr %8, align 4, !tbaa !5
  %915 = mul nsw i32 37, %914
  %916 = add nsw i32 %913, %915
  %917 = sext i32 %916 to i64
  %918 = getelementptr inbounds double, ptr %912, i64 %917
  %919 = load double, ptr %918, align 8, !tbaa !11
  %920 = fmul double 0xBFDD2EB9CCB3BDE4, %919
  %921 = call double @llvm.fmuladd.f64(double 0xC01569E165D79412, double %911, double %920)
  %922 = load ptr, ptr %7, align 8, !tbaa !9
  %923 = load i32, ptr %12, align 4, !tbaa !5
  %924 = load i32, ptr %8, align 4, !tbaa !5
  %925 = mul nsw i32 38, %924
  %926 = add nsw i32 %923, %925
  %927 = sext i32 %926 to i64
  %928 = getelementptr inbounds double, ptr %922, i64 %927
  %929 = load double, ptr %928, align 8, !tbaa !11
  %930 = call double @llvm.fmuladd.f64(double 0x3FCEFDC8894D0822, double %929, double %921)
  %931 = load ptr, ptr %7, align 8, !tbaa !9
  %932 = load i32, ptr %12, align 4, !tbaa !5
  %933 = load i32, ptr %8, align 4, !tbaa !5
  %934 = mul nsw i32 39, %933
  %935 = add nsw i32 %932, %934
  %936 = sext i32 %935 to i64
  %937 = getelementptr inbounds double, ptr %931, i64 %936
  %938 = load double, ptr %937, align 8, !tbaa !11
  %939 = call double @llvm.fmuladd.f64(double 0xBFACD49071EC5F0E, double %938, double %930)
  %940 = load ptr, ptr %7, align 8, !tbaa !9
  %941 = load i32, ptr %12, align 4, !tbaa !5
  %942 = load i32, ptr %8, align 4, !tbaa !5
  %943 = mul nsw i32 40, %942
  %944 = add nsw i32 %941, %943
  %945 = sext i32 %944 to i64
  %946 = getelementptr inbounds double, ptr %940, i64 %945
  %947 = load double, ptr %946, align 8, !tbaa !11
  %948 = call double @llvm.fmuladd.f64(double 0x3C91800000000000, double %947, double %939)
  %949 = load ptr, ptr %7, align 8, !tbaa !9
  %950 = load i32, ptr %12, align 4, !tbaa !5
  %951 = load i32, ptr %8, align 4, !tbaa !5
  %952 = mul nsw i32 41, %951
  %953 = add nsw i32 %950, %952
  %954 = sext i32 %953 to i64
  %955 = getelementptr inbounds double, ptr %949, i64 %954
  %956 = load double, ptr %955, align 8, !tbaa !11
  %957 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %956, double %948)
  %958 = load ptr, ptr %7, align 8, !tbaa !9
  %959 = load i32, ptr %12, align 4, !tbaa !5
  %960 = load i32, ptr %8, align 4, !tbaa !5
  %961 = mul nsw i32 42, %960
  %962 = add nsw i32 %959, %961
  %963 = sext i32 %962 to i64
  %964 = getelementptr inbounds double, ptr %958, i64 %963
  %965 = load double, ptr %964, align 8, !tbaa !11
  %966 = call double @llvm.fmuladd.f64(double 0x3CB9000000000000, double %965, double %957)
  %967 = load ptr, ptr %7, align 8, !tbaa !9
  %968 = load i32, ptr %12, align 4, !tbaa !5
  %969 = load i32, ptr %8, align 4, !tbaa !5
  %970 = mul nsw i32 43, %969
  %971 = add nsw i32 %968, %970
  %972 = sext i32 %971 to i64
  %973 = getelementptr inbounds double, ptr %967, i64 %972
  %974 = load double, ptr %973, align 8, !tbaa !11
  %975 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %974, double %966)
  %976 = load ptr, ptr %7, align 8, !tbaa !9
  %977 = load i32, ptr %12, align 4, !tbaa !5
  %978 = load i32, ptr %8, align 4, !tbaa !5
  %979 = mul nsw i32 44, %978
  %980 = add nsw i32 %977, %979
  %981 = sext i32 %980 to i64
  %982 = getelementptr inbounds double, ptr %976, i64 %981
  %983 = load double, ptr %982, align 8, !tbaa !11
  %984 = call double @llvm.fmuladd.f64(double 0x3CA7400000000002, double %983, double %975)
  %985 = load ptr, ptr %7, align 8, !tbaa !9
  %986 = load i32, ptr %12, align 4, !tbaa !5
  %987 = load i32, ptr %8, align 4, !tbaa !5
  %988 = mul nsw i32 45, %987
  %989 = add nsw i32 %986, %988
  %990 = sext i32 %989 to i64
  %991 = getelementptr inbounds double, ptr %985, i64 %990
  %992 = load double, ptr %991, align 8, !tbaa !11
  %993 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %992, double %984)
  %994 = load ptr, ptr %7, align 8, !tbaa !9
  %995 = load i32, ptr %12, align 4, !tbaa !5
  %996 = load i32, ptr %8, align 4, !tbaa !5
  %997 = mul nsw i32 46, %996
  %998 = add nsw i32 %995, %997
  %999 = sext i32 %998 to i64
  %1000 = getelementptr inbounds double, ptr %994, i64 %999
  %1001 = load double, ptr %1000, align 8, !tbaa !11
  %1002 = call double @llvm.fmuladd.f64(double 0x3CB7000000000000, double %1001, double %993)
  %1003 = load ptr, ptr %7, align 8, !tbaa !9
  %1004 = load i32, ptr %12, align 4, !tbaa !5
  %1005 = load i32, ptr %8, align 4, !tbaa !5
  %1006 = mul nsw i32 47, %1005
  %1007 = add nsw i32 %1004, %1006
  %1008 = sext i32 %1007 to i64
  %1009 = getelementptr inbounds double, ptr %1003, i64 %1008
  %1010 = load double, ptr %1009, align 8, !tbaa !11
  %1011 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %1010, double %1002)
  %1012 = load ptr, ptr %7, align 8, !tbaa !9
  %1013 = load i32, ptr %12, align 4, !tbaa !5
  %1014 = load i32, ptr %8, align 4, !tbaa !5
  %1015 = mul nsw i32 48, %1014
  %1016 = add nsw i32 %1013, %1015
  %1017 = sext i32 %1016 to i64
  %1018 = getelementptr inbounds double, ptr %1012, i64 %1017
  %1019 = load double, ptr %1018, align 8, !tbaa !11
  %1020 = call double @llvm.fmuladd.f64(double 0xBCC2000000000000, double %1019, double %1011)
  %1021 = load ptr, ptr %7, align 8, !tbaa !9
  %1022 = load i32, ptr %12, align 4, !tbaa !5
  %1023 = load i32, ptr %8, align 4, !tbaa !5
  %1024 = mul nsw i32 49, %1023
  %1025 = add nsw i32 %1022, %1024
  %1026 = sext i32 %1025 to i64
  %1027 = getelementptr inbounds double, ptr %1021, i64 %1026
  %1028 = load double, ptr %1027, align 8, !tbaa !11
  %1029 = call double @llvm.fmuladd.f64(double 0xBCA5400000000000, double %1028, double %1020)
  %1030 = load ptr, ptr %7, align 8, !tbaa !9
  %1031 = load i32, ptr %12, align 4, !tbaa !5
  %1032 = load i32, ptr %8, align 4, !tbaa !5
  %1033 = mul nsw i32 50, %1032
  %1034 = add nsw i32 %1031, %1033
  %1035 = sext i32 %1034 to i64
  %1036 = getelementptr inbounds double, ptr %1030, i64 %1035
  %1037 = load double, ptr %1036, align 8, !tbaa !11
  %1038 = call double @llvm.fmuladd.f64(double 0x3CAA800000000002, double %1037, double %1029)
  %1039 = load ptr, ptr %7, align 8, !tbaa !9
  %1040 = load i32, ptr %12, align 4, !tbaa !5
  %1041 = load i32, ptr %8, align 4, !tbaa !5
  %1042 = mul nsw i32 51, %1041
  %1043 = add nsw i32 %1040, %1042
  %1044 = sext i32 %1043 to i64
  %1045 = getelementptr inbounds double, ptr %1039, i64 %1044
  %1046 = load double, ptr %1045, align 8, !tbaa !11
  %1047 = call double @llvm.fmuladd.f64(double 0x3CA9000000000000, double %1046, double %1038)
  %1048 = load ptr, ptr %7, align 8, !tbaa !9
  %1049 = load i32, ptr %12, align 4, !tbaa !5
  %1050 = load i32, ptr %8, align 4, !tbaa !5
  %1051 = mul nsw i32 52, %1050
  %1052 = add nsw i32 %1049, %1051
  %1053 = sext i32 %1052 to i64
  %1054 = getelementptr inbounds double, ptr %1048, i64 %1053
  %1055 = load double, ptr %1054, align 8, !tbaa !11
  %1056 = call double @llvm.fmuladd.f64(double 0xBFD039FE04F7163A, double %1055, double %1047)
  %1057 = load ptr, ptr %7, align 8, !tbaa !9
  %1058 = load i32, ptr %12, align 4, !tbaa !5
  %1059 = load i32, ptr %8, align 4, !tbaa !5
  %1060 = mul nsw i32 53, %1059
  %1061 = add nsw i32 %1058, %1060
  %1062 = sext i32 %1061 to i64
  %1063 = getelementptr inbounds double, ptr %1057, i64 %1062
  %1064 = load double, ptr %1063, align 8, !tbaa !11
  %1065 = call double @llvm.fmuladd.f64(double 0xBFE30958FBF81242, double %1064, double %1056)
  %1066 = load ptr, ptr %7, align 8, !tbaa !9
  %1067 = load i32, ptr %12, align 4, !tbaa !5
  %1068 = load i32, ptr %8, align 4, !tbaa !5
  %1069 = mul nsw i32 54, %1068
  %1070 = add nsw i32 %1067, %1069
  %1071 = sext i32 %1070 to i64
  %1072 = getelementptr inbounds double, ptr %1066, i64 %1071
  %1073 = load double, ptr %1072, align 8, !tbaa !11
  %1074 = call double @llvm.fmuladd.f64(double 0xBFE30958FBF81231, double %1073, double %1065)
  %1075 = load ptr, ptr %7, align 8, !tbaa !9
  %1076 = load i32, ptr %12, align 4, !tbaa !5
  %1077 = load i32, ptr %8, align 4, !tbaa !5
  %1078 = mul nsw i32 55, %1077
  %1079 = add nsw i32 %1076, %1078
  %1080 = sext i32 %1079 to i64
  %1081 = getelementptr inbounds double, ptr %1075, i64 %1080
  %1082 = load double, ptr %1081, align 8, !tbaa !11
  %1083 = call double @llvm.fmuladd.f64(double 0xBFD039FE04F71632, double %1082, double %1074)
  %1084 = load ptr, ptr %7, align 8, !tbaa !9
  %1085 = load i32, ptr %12, align 4, !tbaa !5
  %1086 = load i32, ptr %8, align 4, !tbaa !5
  %1087 = mul nsw i32 56, %1086
  %1088 = add nsw i32 %1085, %1087
  %1089 = sext i32 %1088 to i64
  %1090 = getelementptr inbounds double, ptr %1084, i64 %1089
  %1091 = load double, ptr %1090, align 8, !tbaa !11
  %1092 = call double @llvm.fmuladd.f64(double 0x3C959116F9B144FE, double %1091, double %1083)
  %1093 = load ptr, ptr %7, align 8, !tbaa !9
  %1094 = load i32, ptr %12, align 4, !tbaa !5
  %1095 = load i32, ptr %8, align 4, !tbaa !5
  %1096 = mul nsw i32 57, %1095
  %1097 = add nsw i32 %1094, %1096
  %1098 = sext i32 %1097 to i64
  %1099 = getelementptr inbounds double, ptr %1093, i64 %1098
  %1100 = load double, ptr %1099, align 8, !tbaa !11
  %1101 = call double @llvm.fmuladd.f64(double 0xBCA80AA84CE72F89, double %1100, double %1092)
  %1102 = load ptr, ptr %7, align 8, !tbaa !9
  %1103 = load i32, ptr %12, align 4, !tbaa !5
  %1104 = load i32, ptr %8, align 4, !tbaa !5
  %1105 = mul nsw i32 58, %1104
  %1106 = add nsw i32 %1103, %1105
  %1107 = sext i32 %1106 to i64
  %1108 = getelementptr inbounds double, ptr %1102, i64 %1107
  %1109 = load double, ptr %1108, align 8, !tbaa !11
  %1110 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %1109, double %1101)
  %1111 = load ptr, ptr %7, align 8, !tbaa !9
  %1112 = load i32, ptr %12, align 4, !tbaa !5
  %1113 = load i32, ptr %8, align 4, !tbaa !5
  %1114 = mul nsw i32 59, %1113
  %1115 = add nsw i32 %1112, %1114
  %1116 = sext i32 %1115 to i64
  %1117 = getelementptr inbounds double, ptr %1111, i64 %1116
  %1118 = load double, ptr %1117, align 8, !tbaa !11
  %1119 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %1118, double %1110)
  %1120 = load ptr, ptr %7, align 8, !tbaa !9
  %1121 = load i32, ptr %12, align 4, !tbaa !5
  %1122 = load i32, ptr %8, align 4, !tbaa !5
  %1123 = mul nsw i32 60, %1122
  %1124 = add nsw i32 %1121, %1123
  %1125 = sext i32 %1124 to i64
  %1126 = getelementptr inbounds double, ptr %1120, i64 %1125
  %1127 = load double, ptr %1126, align 8, !tbaa !11
  %1128 = call double @llvm.fmuladd.f64(double 0xBCB0B494F1ABEF27, double %1127, double %1119)
  %1129 = load ptr, ptr %7, align 8, !tbaa !9
  %1130 = load i32, ptr %12, align 4, !tbaa !5
  %1131 = load i32, ptr %8, align 4, !tbaa !5
  %1132 = mul nsw i32 61, %1131
  %1133 = add nsw i32 %1130, %1132
  %1134 = sext i32 %1133 to i64
  %1135 = getelementptr inbounds double, ptr %1129, i64 %1134
  %1136 = load double, ptr %1135, align 8, !tbaa !11
  %1137 = call double @llvm.fmuladd.f64(double 0xBCA536948017480F, double %1136, double %1128)
  %1138 = load ptr, ptr %7, align 8, !tbaa !9
  %1139 = load i32, ptr %12, align 4, !tbaa !5
  %1140 = load i32, ptr %8, align 4, !tbaa !5
  %1141 = mul nsw i32 62, %1140
  %1142 = add nsw i32 %1139, %1141
  %1143 = sext i32 %1142 to i64
  %1144 = getelementptr inbounds double, ptr %1138, i64 %1143
  %1145 = load double, ptr %1144, align 8, !tbaa !11
  %1146 = call double @llvm.fmuladd.f64(double 0x3CADB2CFE686FE7D, double %1145, double %1137)
  %1147 = load ptr, ptr %7, align 8, !tbaa !9
  %1148 = load i32, ptr %12, align 4, !tbaa !5
  %1149 = load i32, ptr %8, align 4, !tbaa !5
  %1150 = mul nsw i32 63, %1149
  %1151 = add nsw i32 %1148, %1150
  %1152 = sext i32 %1151 to i64
  %1153 = getelementptr inbounds double, ptr %1147, i64 %1152
  %1154 = load double, ptr %1153, align 8, !tbaa !11
  %1155 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %1154, double %1146)
  %1156 = load ptr, ptr %7, align 8, !tbaa !9
  %1157 = load i32, ptr %12, align 4, !tbaa !5
  %1158 = load i32, ptr %8, align 4, !tbaa !5
  %1159 = mul nsw i32 64, %1158
  %1160 = add nsw i32 %1157, %1159
  %1161 = sext i32 %1160 to i64
  %1162 = getelementptr inbounds double, ptr %1156, i64 %1161
  %1163 = load double, ptr %1162, align 8, !tbaa !11
  %1164 = call double @llvm.fmuladd.f64(double 0xBC9F1CD9CCEEF236, double %1163, double %1155)
  %1165 = load ptr, ptr %7, align 8, !tbaa !9
  %1166 = load i32, ptr %12, align 4, !tbaa !5
  %1167 = load i32, ptr %8, align 4, !tbaa !5
  %1168 = mul nsw i32 65, %1167
  %1169 = add nsw i32 %1166, %1168
  %1170 = sext i32 %1169 to i64
  %1171 = getelementptr inbounds double, ptr %1165, i64 %1170
  %1172 = load double, ptr %1171, align 8, !tbaa !11
  %1173 = call double @llvm.fmuladd.f64(double 0xBCA016309CDE7482, double %1172, double %1164)
  %1174 = load ptr, ptr %7, align 8, !tbaa !9
  %1175 = load i32, ptr %12, align 4, !tbaa !5
  %1176 = load i32, ptr %8, align 4, !tbaa !5
  %1177 = mul nsw i32 66, %1176
  %1178 = add nsw i32 %1175, %1177
  %1179 = sext i32 %1178 to i64
  %1180 = getelementptr inbounds double, ptr %1174, i64 %1179
  %1181 = load double, ptr %1180, align 8, !tbaa !11
  %1182 = call double @llvm.fmuladd.f64(double 0x3C98BFAD401B2967, double %1181, double %1173)
  %1183 = load ptr, ptr %7, align 8, !tbaa !9
  %1184 = load i32, ptr %12, align 4, !tbaa !5
  %1185 = load i32, ptr %8, align 4, !tbaa !5
  %1186 = mul nsw i32 67, %1185
  %1187 = add nsw i32 %1184, %1186
  %1188 = sext i32 %1187 to i64
  %1189 = getelementptr inbounds double, ptr %1183, i64 %1188
  %1190 = load double, ptr %1189, align 8, !tbaa !11
  %1191 = call double @llvm.fmuladd.f64(double 0xBC93CC8A99AF5452, double %1190, double %1182)
  store double %1191, ptr %11, align 8, !tbaa !11
  %1192 = load double, ptr %11, align 8, !tbaa !11
  %1193 = load ptr, ptr %9, align 8, !tbaa !9
  %1194 = load i32, ptr %12, align 4, !tbaa !5
  %1195 = load i32, ptr %10, align 4, !tbaa !5
  %1196 = mul nsw i32 3, %1195
  %1197 = add nsw i32 %1194, %1196
  %1198 = sext i32 %1197 to i64
  %1199 = getelementptr inbounds double, ptr %1193, i64 %1198
  %1200 = load double, ptr %1199, align 8, !tbaa !11
  %1201 = fadd double %1200, %1192
  store double %1201, ptr %1199, 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 36, %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 = load ptr, ptr %7, align 8, !tbaa !9
  %1211 = load i32, ptr %12, align 4, !tbaa !5
  %1212 = load i32, ptr %8, align 4, !tbaa !5
  %1213 = mul nsw i32 37, %1212
  %1214 = add nsw i32 %1211, %1213
  %1215 = sext i32 %1214 to i64
  %1216 = getelementptr inbounds double, ptr %1210, i64 %1215
  %1217 = load double, ptr %1216, align 8, !tbaa !11
  %1218 = fmul double 0xBFD4C0B9406BCBDE, %1217
  %1219 = call double @llvm.fmuladd.f64(double 0x3F980EB0AE1D48E6, double %1209, double %1218)
  %1220 = load ptr, ptr %7, align 8, !tbaa !9
  %1221 = load i32, ptr %12, align 4, !tbaa !5
  %1222 = load i32, ptr %8, align 4, !tbaa !5
  %1223 = mul nsw i32 38, %1222
  %1224 = add nsw i32 %1221, %1223
  %1225 = sext i32 %1224 to i64
  %1226 = getelementptr inbounds double, ptr %1220, i64 %1225
  %1227 = load double, ptr %1226, align 8, !tbaa !11
  %1228 = call double @llvm.fmuladd.f64(double 0xBFEBF462FB348EF6, double %1227, double %1219)
  %1229 = load ptr, ptr %7, align 8, !tbaa !9
  %1230 = load i32, ptr %12, align 4, !tbaa !5
  %1231 = load i32, ptr %8, align 4, !tbaa !5
  %1232 = mul nsw i32 39, %1231
  %1233 = add nsw i32 %1230, %1232
  %1234 = sext i32 %1233 to i64
  %1235 = getelementptr inbounds double, ptr %1229, i64 %1234
  %1236 = load double, ptr %1235, align 8, !tbaa !11
  %1237 = call double @llvm.fmuladd.f64(double 0xBFE002F9665DF3D7, double %1236, double %1228)
  %1238 = load ptr, ptr %7, align 8, !tbaa !9
  %1239 = load i32, ptr %12, align 4, !tbaa !5
  %1240 = load i32, ptr %8, align 4, !tbaa !5
  %1241 = mul nsw i32 40, %1240
  %1242 = add nsw i32 %1239, %1241
  %1243 = sext i32 %1242 to i64
  %1244 = getelementptr inbounds double, ptr %1238, i64 %1243
  %1245 = load double, ptr %1244, align 8, !tbaa !11
  %1246 = call double @llvm.fmuladd.f64(double 0xBC99800000000000, double %1245, double %1237)
  %1247 = load ptr, ptr %7, align 8, !tbaa !9
  %1248 = load i32, ptr %12, align 4, !tbaa !5
  %1249 = load i32, ptr %8, align 4, !tbaa !5
  %1250 = mul nsw i32 41, %1249
  %1251 = add nsw i32 %1248, %1250
  %1252 = sext i32 %1251 to i64
  %1253 = getelementptr inbounds double, ptr %1247, i64 %1252
  %1254 = load double, ptr %1253, align 8, !tbaa !11
  %1255 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %1254, double %1246)
  %1256 = load ptr, ptr %7, align 8, !tbaa !9
  %1257 = load i32, ptr %12, align 4, !tbaa !5
  %1258 = load i32, ptr %8, align 4, !tbaa !5
  %1259 = mul nsw i32 42, %1258
  %1260 = add nsw i32 %1257, %1259
  %1261 = sext i32 %1260 to i64
  %1262 = getelementptr inbounds double, ptr %1256, i64 %1261
  %1263 = load double, ptr %1262, align 8, !tbaa !11
  %1264 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %1263, double %1255)
  %1265 = load ptr, ptr %7, align 8, !tbaa !9
  %1266 = load i32, ptr %12, align 4, !tbaa !5
  %1267 = load i32, ptr %8, align 4, !tbaa !5
  %1268 = mul nsw i32 44, %1267
  %1269 = add nsw i32 %1266, %1268
  %1270 = sext i32 %1269 to i64
  %1271 = getelementptr inbounds double, ptr %1265, i64 %1270
  %1272 = load double, ptr %1271, align 8, !tbaa !11
  %1273 = call double @llvm.fmuladd.f64(double 0x3C91800000000000, double %1272, double %1264)
  %1274 = load ptr, ptr %7, align 8, !tbaa !9
  %1275 = load i32, ptr %12, align 4, !tbaa !5
  %1276 = load i32, ptr %8, align 4, !tbaa !5
  %1277 = mul nsw i32 45, %1276
  %1278 = add nsw i32 %1275, %1277
  %1279 = sext i32 %1278 to i64
  %1280 = getelementptr inbounds double, ptr %1274, i64 %1279
  %1281 = load double, ptr %1280, align 8, !tbaa !11
  %1282 = call double @llvm.fmuladd.f64(double 0x3CA7000000000002, double %1281, double %1273)
  %1283 = load ptr, ptr %7, align 8, !tbaa !9
  %1284 = load i32, ptr %12, align 4, !tbaa !5
  %1285 = load i32, ptr %8, align 4, !tbaa !5
  %1286 = mul nsw i32 46, %1285
  %1287 = add nsw i32 %1284, %1286
  %1288 = sext i32 %1287 to i64
  %1289 = getelementptr inbounds double, ptr %1283, i64 %1288
  %1290 = load double, ptr %1289, align 8, !tbaa !11
  %1291 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %1290, double %1282)
  %1292 = load ptr, ptr %7, align 8, !tbaa !9
  %1293 = load i32, ptr %12, align 4, !tbaa !5
  %1294 = load i32, ptr %8, align 4, !tbaa !5
  %1295 = mul nsw i32 47, %1294
  %1296 = add nsw i32 %1293, %1295
  %1297 = sext i32 %1296 to i64
  %1298 = getelementptr inbounds double, ptr %1292, i64 %1297
  %1299 = load double, ptr %1298, align 8, !tbaa !11
  %1300 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %1299, double %1291)
  %1301 = load ptr, ptr %7, align 8, !tbaa !9
  %1302 = load i32, ptr %12, align 4, !tbaa !5
  %1303 = load i32, ptr %8, align 4, !tbaa !5
  %1304 = mul nsw i32 48, %1303
  %1305 = add nsw i32 %1302, %1304
  %1306 = sext i32 %1305 to i64
  %1307 = getelementptr inbounds double, ptr %1301, i64 %1306
  %1308 = load double, ptr %1307, align 8, !tbaa !11
  %1309 = call double @llvm.fmuladd.f64(double 0x3C98400000000000, double %1308, double %1300)
  %1310 = load ptr, ptr %7, align 8, !tbaa !9
  %1311 = load i32, ptr %12, align 4, !tbaa !5
  %1312 = load i32, ptr %8, align 4, !tbaa !5
  %1313 = mul nsw i32 49, %1312
  %1314 = add nsw i32 %1311, %1313
  %1315 = sext i32 %1314 to i64
  %1316 = getelementptr inbounds double, ptr %1310, i64 %1315
  %1317 = load double, ptr %1316, align 8, !tbaa !11
  %1318 = call double @llvm.fmuladd.f64(double 0xBC99000000000000, double %1317, double %1309)
  %1319 = load ptr, ptr %7, align 8, !tbaa !9
  %1320 = load i32, ptr %12, align 4, !tbaa !5
  %1321 = load i32, ptr %8, align 4, !tbaa !5
  %1322 = mul nsw i32 50, %1321
  %1323 = add nsw i32 %1320, %1322
  %1324 = sext i32 %1323 to i64
  %1325 = getelementptr inbounds double, ptr %1319, i64 %1324
  %1326 = load double, ptr %1325, align 8, !tbaa !11
  %1327 = call double @llvm.fmuladd.f64(double 0xBCAE000000000002, double %1326, double %1318)
  %1328 = load ptr, ptr %7, align 8, !tbaa !9
  %1329 = load i32, ptr %12, align 4, !tbaa !5
  %1330 = load i32, ptr %8, align 4, !tbaa !5
  %1331 = mul nsw i32 51, %1330
  %1332 = add nsw i32 %1329, %1331
  %1333 = sext i32 %1332 to i64
  %1334 = getelementptr inbounds double, ptr %1328, i64 %1333
  %1335 = load double, ptr %1334, align 8, !tbaa !11
  %1336 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %1335, double %1327)
  %1337 = load ptr, ptr %7, align 8, !tbaa !9
  %1338 = load i32, ptr %12, align 4, !tbaa !5
  %1339 = load i32, ptr %8, align 4, !tbaa !5
  %1340 = mul nsw i32 52, %1339
  %1341 = add nsw i32 %1338, %1340
  %1342 = sext i32 %1341 to i64
  %1343 = getelementptr inbounds double, ptr %1337, i64 %1342
  %1344 = load double, ptr %1343, align 8, !tbaa !11
  %1345 = call double @llvm.fmuladd.f64(double 0x3FD08C54FF101A12, double %1344, double %1336)
  %1346 = load ptr, ptr %7, align 8, !tbaa !9
  %1347 = load i32, ptr %12, align 4, !tbaa !5
  %1348 = load i32, ptr %8, align 4, !tbaa !5
  %1349 = mul nsw i32 53, %1348
  %1350 = add nsw i32 %1347, %1349
  %1351 = sext i32 %1350 to i64
  %1352 = getelementptr inbounds double, ptr %1346, i64 %1351
  %1353 = load double, ptr %1352, align 8, !tbaa !11
  %1354 = call double @llvm.fmuladd.f64(double 0x4007001BD846D0B0, double %1353, double %1345)
  %1355 = load ptr, ptr %7, align 8, !tbaa !9
  %1356 = load i32, ptr %12, align 4, !tbaa !5
  %1357 = load i32, ptr %8, align 4, !tbaa !5
  %1358 = mul nsw i32 54, %1357
  %1359 = add nsw i32 %1356, %1358
  %1360 = sext i32 %1359 to i64
  %1361 = getelementptr inbounds double, ptr %1355, i64 %1360
  %1362 = load double, ptr %1361, align 8, !tbaa !11
  %1363 = call double @llvm.fmuladd.f64(double 0x3FD0C7817D9C3131, double %1362, double %1354)
  %1364 = load ptr, ptr %7, align 8, !tbaa !9
  %1365 = load i32, ptr %12, align 4, !tbaa !5
  %1366 = load i32, ptr %8, align 4, !tbaa !5
  %1367 = mul nsw i32 55, %1366
  %1368 = add nsw i32 %1365, %1367
  %1369 = sext i32 %1368 to i64
  %1370 = getelementptr inbounds double, ptr %1364, i64 %1369
  %1371 = load double, ptr %1370, align 8, !tbaa !11
  %1372 = call double @llvm.fmuladd.f64(double 0xBFB8DF388696F54B, double %1371, double %1363)
  %1373 = load ptr, ptr %7, align 8, !tbaa !9
  %1374 = load i32, ptr %12, align 4, !tbaa !5
  %1375 = load i32, ptr %8, align 4, !tbaa !5
  %1376 = mul nsw i32 56, %1375
  %1377 = add nsw i32 %1374, %1376
  %1378 = sext i32 %1377 to i64
  %1379 = getelementptr inbounds double, ptr %1373, i64 %1378
  %1380 = load double, ptr %1379, align 8, !tbaa !11
  %1381 = call double @llvm.fmuladd.f64(double 0xBC8CFDCAF353049C, double %1380, double %1372)
  %1382 = load ptr, ptr %7, align 8, !tbaa !9
  %1383 = load i32, ptr %12, align 4, !tbaa !5
  %1384 = load i32, ptr %8, align 4, !tbaa !5
  %1385 = mul nsw i32 57, %1384
  %1386 = add nsw i32 %1383, %1385
  %1387 = sext i32 %1386 to i64
  %1388 = getelementptr inbounds double, ptr %1382, i64 %1387
  %1389 = load double, ptr %1388, align 8, !tbaa !11
  %1390 = call double @llvm.fmuladd.f64(double 0x3CB6461BECE53EDD, double %1389, double %1381)
  %1391 = load ptr, ptr %7, align 8, !tbaa !9
  %1392 = load i32, ptr %12, align 4, !tbaa !5
  %1393 = load i32, ptr %8, align 4, !tbaa !5
  %1394 = mul nsw i32 58, %1393
  %1395 = add nsw i32 %1392, %1394
  %1396 = sext i32 %1395 to i64
  %1397 = getelementptr inbounds double, ptr %1391, i64 %1396
  %1398 = load double, ptr %1397, align 8, !tbaa !11
  %1399 = call double @llvm.fmuladd.f64(double 0x3CA3CC8A99AF5452, double %1398, double %1390)
  %1400 = load ptr, ptr %7, align 8, !tbaa !9
  %1401 = load i32, ptr %12, align 4, !tbaa !5
  %1402 = load i32, ptr %8, align 4, !tbaa !5
  %1403 = mul nsw i32 59, %1402
  %1404 = add nsw i32 %1401, %1403
  %1405 = sext i32 %1404 to i64
  %1406 = getelementptr inbounds double, ptr %1400, i64 %1405
  %1407 = load double, ptr %1406, align 8, !tbaa !11
  %1408 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %1407, double %1399)
  %1409 = load ptr, ptr %7, align 8, !tbaa !9
  %1410 = load i32, ptr %12, align 4, !tbaa !5
  %1411 = load i32, ptr %8, align 4, !tbaa !5
  %1412 = mul nsw i32 60, %1411
  %1413 = add nsw i32 %1410, %1412
  %1414 = sext i32 %1413 to i64
  %1415 = getelementptr inbounds double, ptr %1409, i64 %1414
  %1416 = load double, ptr %1415, align 8, !tbaa !11
  %1417 = call double @llvm.fmuladd.f64(double 0x3C6974B2334F2344, double %1416, double %1408)
  %1418 = load ptr, ptr %7, align 8, !tbaa !9
  %1419 = load i32, ptr %12, align 4, !tbaa !5
  %1420 = load i32, ptr %8, align 4, !tbaa !5
  %1421 = mul nsw i32 61, %1420
  %1422 = add nsw i32 %1419, %1421
  %1423 = sext i32 %1422 to i64
  %1424 = getelementptr inbounds double, ptr %1418, i64 %1423
  %1425 = load double, ptr %1424, align 8, !tbaa !11
  %1426 = call double @llvm.fmuladd.f64(double 0xBCA5EB99734B41EE, double %1425, double %1417)
  %1427 = load ptr, ptr %7, align 8, !tbaa !9
  %1428 = load i32, ptr %12, align 4, !tbaa !5
  %1429 = load i32, ptr %8, align 4, !tbaa !5
  %1430 = mul nsw i32 62, %1429
  %1431 = add nsw i32 %1428, %1430
  %1432 = sext i32 %1431 to i64
  %1433 = getelementptr inbounds double, ptr %1427, i64 %1432
  %1434 = load double, ptr %1433, align 8, !tbaa !11
  %1435 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %1434, double %1426)
  %1436 = load ptr, ptr %7, align 8, !tbaa !9
  %1437 = load i32, ptr %12, align 4, !tbaa !5
  %1438 = load i32, ptr %8, align 4, !tbaa !5
  %1439 = mul nsw i32 63, %1438
  %1440 = add nsw i32 %1437, %1439
  %1441 = sext i32 %1440 to i64
  %1442 = getelementptr inbounds double, ptr %1436, i64 %1441
  %1443 = load double, ptr %1442, align 8, !tbaa !11
  %1444 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %1443, double %1435)
  %1445 = load ptr, ptr %7, align 8, !tbaa !9
  %1446 = load i32, ptr %12, align 4, !tbaa !5
  %1447 = load i32, ptr %8, align 4, !tbaa !5
  %1448 = mul nsw i32 64, %1447
  %1449 = add nsw i32 %1446, %1448
  %1450 = sext i32 %1449 to i64
  %1451 = getelementptr inbounds double, ptr %1445, i64 %1450
  %1452 = load double, ptr %1451, align 8, !tbaa !11
  %1453 = call double @llvm.fmuladd.f64(double 0x3C8BEE4386850DD0, double %1452, double %1444)
  %1454 = load ptr, ptr %7, align 8, !tbaa !9
  %1455 = load i32, ptr %12, align 4, !tbaa !5
  %1456 = load i32, ptr %8, align 4, !tbaa !5
  %1457 = mul nsw i32 65, %1456
  %1458 = add nsw i32 %1455, %1457
  %1459 = sext i32 %1458 to i64
  %1460 = getelementptr inbounds double, ptr %1454, i64 %1459
  %1461 = load double, ptr %1460, align 8, !tbaa !11
  %1462 = call double @llvm.fmuladd.f64(double 0x3CC196DB21ACE77C, double %1461, double %1453)
  %1463 = load ptr, ptr %7, align 8, !tbaa !9
  %1464 = load i32, ptr %12, align 4, !tbaa !5
  %1465 = load i32, ptr %8, align 4, !tbaa !5
  %1466 = mul nsw i32 66, %1465
  %1467 = add nsw i32 %1464, %1466
  %1468 = sext i32 %1467 to i64
  %1469 = getelementptr inbounds double, ptr %1463, i64 %1468
  %1470 = load double, ptr %1469, align 8, !tbaa !11
  %1471 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %1470, double %1462)
  %1472 = load ptr, ptr %7, align 8, !tbaa !9
  %1473 = load i32, ptr %12, align 4, !tbaa !5
  %1474 = load i32, ptr %8, align 4, !tbaa !5
  %1475 = mul nsw i32 67, %1474
  %1476 = add nsw i32 %1473, %1475
  %1477 = sext i32 %1476 to i64
  %1478 = getelementptr inbounds double, ptr %1472, i64 %1477
  %1479 = load double, ptr %1478, align 8, !tbaa !11
  %1480 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %1479, double %1471)
  store double %1480, ptr %11, align 8, !tbaa !11
  %1481 = load double, ptr %11, align 8, !tbaa !11
  %1482 = load ptr, ptr %9, align 8, !tbaa !9
  %1483 = load i32, ptr %12, align 4, !tbaa !5
  %1484 = load i32, ptr %10, align 4, !tbaa !5
  %1485 = mul nsw i32 4, %1484
  %1486 = add nsw i32 %1483, %1485
  %1487 = sext i32 %1486 to i64
  %1488 = getelementptr inbounds double, ptr %1482, i64 %1487
  %1489 = load double, ptr %1488, align 8, !tbaa !11
  %1490 = fadd double %1489, %1481
  store double %1490, ptr %1488, align 8, !tbaa !11
  %1491 = load ptr, ptr %7, align 8, !tbaa !9
  %1492 = load i32, ptr %12, align 4, !tbaa !5
  %1493 = load i32, ptr %8, align 4, !tbaa !5
  %1494 = mul nsw i32 36, %1493
  %1495 = add nsw i32 %1492, %1494
  %1496 = sext i32 %1495 to i64
  %1497 = getelementptr inbounds double, ptr %1491, i64 %1496
  %1498 = load double, ptr %1497, align 8, !tbaa !11
  %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 37, %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 = fmul double 0xC01043858A1F5994, %1506
  %1508 = call double @llvm.fmuladd.f64(double 0xBFD7671404765127, double %1498, double %1507)
  %1509 = load ptr, ptr %7, align 8, !tbaa !9
  %1510 = load i32, ptr %12, align 4, !tbaa !5
  %1511 = load i32, ptr %8, align 4, !tbaa !5
  %1512 = mul nsw i32 38, %1511
  %1513 = add nsw i32 %1510, %1512
  %1514 = sext i32 %1513 to i64
  %1515 = getelementptr inbounds double, ptr %1509, i64 %1514
  %1516 = load double, ptr %1515, align 8, !tbaa !11
  %1517 = call double @llvm.fmuladd.f64(double 0xBFD7BAC3393ADDB7, double %1516, double %1508)
  %1518 = load ptr, ptr %7, align 8, !tbaa !9
  %1519 = load i32, ptr %12, align 4, !tbaa !5
  %1520 = load i32, ptr %8, align 4, !tbaa !5
  %1521 = mul nsw i32 39, %1520
  %1522 = add nsw i32 %1519, %1521
  %1523 = sext i32 %1522 to i64
  %1524 = getelementptr inbounds double, ptr %1518, i64 %1523
  %1525 = load double, ptr %1524, align 8, !tbaa !11
  %1526 = call double @llvm.fmuladd.f64(double 0x3FC1964E14FA3C89, double %1525, double %1517)
  %1527 = load ptr, ptr %7, align 8, !tbaa !9
  %1528 = load i32, ptr %12, align 4, !tbaa !5
  %1529 = load i32, ptr %8, align 4, !tbaa !5
  %1530 = mul nsw i32 40, %1529
  %1531 = add nsw i32 %1528, %1530
  %1532 = sext i32 %1531 to i64
  %1533 = getelementptr inbounds double, ptr %1527, i64 %1532
  %1534 = load double, ptr %1533, align 8, !tbaa !11
  %1535 = call double @llvm.fmuladd.f64(double 0x3CA8400000000000, double %1534, double %1526)
  %1536 = load ptr, ptr %7, align 8, !tbaa !9
  %1537 = load i32, ptr %12, align 4, !tbaa !5
  %1538 = load i32, ptr %8, align 4, !tbaa !5
  %1539 = mul nsw i32 41, %1538
  %1540 = add nsw i32 %1537, %1539
  %1541 = sext i32 %1540 to i64
  %1542 = getelementptr inbounds double, ptr %1536, i64 %1541
  %1543 = load double, ptr %1542, align 8, !tbaa !11
  %1544 = call double @llvm.fmuladd.f64(double 0xBCC5C00000000000, double %1543, double %1535)
  %1545 = load ptr, ptr %7, align 8, !tbaa !9
  %1546 = load i32, ptr %12, align 4, !tbaa !5
  %1547 = load i32, ptr %8, align 4, !tbaa !5
  %1548 = mul nsw i32 42, %1547
  %1549 = add nsw i32 %1546, %1548
  %1550 = sext i32 %1549 to i64
  %1551 = getelementptr inbounds double, ptr %1545, i64 %1550
  %1552 = load double, ptr %1551, align 8, !tbaa !11
  %1553 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %1552, double %1544)
  %1554 = load ptr, ptr %7, align 8, !tbaa !9
  %1555 = load i32, ptr %12, align 4, !tbaa !5
  %1556 = load i32, ptr %8, align 4, !tbaa !5
  %1557 = mul nsw i32 43, %1556
  %1558 = add nsw i32 %1555, %1557
  %1559 = sext i32 %1558 to i64
  %1560 = getelementptr inbounds double, ptr %1554, i64 %1559
  %1561 = load double, ptr %1560, align 8, !tbaa !11
  %1562 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %1561, double %1553)
  %1563 = load ptr, ptr %7, align 8, !tbaa !9
  %1564 = load i32, ptr %12, align 4, !tbaa !5
  %1565 = load i32, ptr %8, align 4, !tbaa !5
  %1566 = mul nsw i32 44, %1565
  %1567 = add nsw i32 %1564, %1566
  %1568 = sext i32 %1567 to i64
  %1569 = getelementptr inbounds double, ptr %1563, i64 %1568
  %1570 = load double, ptr %1569, align 8, !tbaa !11
  %1571 = call double @llvm.fmuladd.f64(double 0x3C9F7FFFFFFFFFFC, double %1570, double %1562)
  %1572 = load ptr, ptr %7, align 8, !tbaa !9
  %1573 = load i32, ptr %12, align 4, !tbaa !5
  %1574 = load i32, ptr %8, align 4, !tbaa !5
  %1575 = mul nsw i32 45, %1574
  %1576 = add nsw i32 %1573, %1575
  %1577 = sext i32 %1576 to i64
  %1578 = getelementptr inbounds double, ptr %1572, i64 %1577
  %1579 = load double, ptr %1578, align 8, !tbaa !11
  %1580 = call double @llvm.fmuladd.f64(double 0x3CA7000000000002, double %1579, double %1571)
  %1581 = load ptr, ptr %7, align 8, !tbaa !9
  %1582 = load i32, ptr %12, align 4, !tbaa !5
  %1583 = load i32, ptr %8, align 4, !tbaa !5
  %1584 = mul nsw i32 46, %1583
  %1585 = add nsw i32 %1582, %1584
  %1586 = sext i32 %1585 to i64
  %1587 = getelementptr inbounds double, ptr %1581, i64 %1586
  %1588 = load double, ptr %1587, align 8, !tbaa !11
  %1589 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %1588, double %1580)
  %1590 = load ptr, ptr %7, align 8, !tbaa !9
  %1591 = load i32, ptr %12, align 4, !tbaa !5
  %1592 = load i32, ptr %8, align 4, !tbaa !5
  %1593 = mul nsw i32 48, %1592
  %1594 = add nsw i32 %1591, %1593
  %1595 = sext i32 %1594 to i64
  %1596 = getelementptr inbounds double, ptr %1590, i64 %1595
  %1597 = load double, ptr %1596, align 8, !tbaa !11
  %1598 = call double @llvm.fmuladd.f64(double 0xBC93C00000000000, double %1597, double %1589)
  %1599 = load ptr, ptr %7, align 8, !tbaa !9
  %1600 = load i32, ptr %12, align 4, !tbaa !5
  %1601 = load i32, ptr %8, align 4, !tbaa !5
  %1602 = mul nsw i32 49, %1601
  %1603 = add nsw i32 %1600, %1602
  %1604 = sext i32 %1603 to i64
  %1605 = getelementptr inbounds double, ptr %1599, i64 %1604
  %1606 = load double, ptr %1605, align 8, !tbaa !11
  %1607 = call double @llvm.fmuladd.f64(double 0xBCC0600000000000, double %1606, double %1598)
  %1608 = load ptr, ptr %7, align 8, !tbaa !9
  %1609 = load i32, ptr %12, align 4, !tbaa !5
  %1610 = load i32, ptr %8, align 4, !tbaa !5
  %1611 = mul nsw i32 50, %1610
  %1612 = add nsw i32 %1609, %1611
  %1613 = sext i32 %1612 to i64
  %1614 = getelementptr inbounds double, ptr %1608, i64 %1613
  %1615 = load double, ptr %1614, align 8, !tbaa !11
  %1616 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %1615, double %1607)
  %1617 = load ptr, ptr %7, align 8, !tbaa !9
  %1618 = load i32, ptr %12, align 4, !tbaa !5
  %1619 = load i32, ptr %8, align 4, !tbaa !5
  %1620 = mul nsw i32 51, %1619
  %1621 = add nsw i32 %1618, %1620
  %1622 = sext i32 %1621 to i64
  %1623 = getelementptr inbounds double, ptr %1617, i64 %1622
  %1624 = load double, ptr %1623, align 8, !tbaa !11
  %1625 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %1624, double %1616)
  %1626 = load ptr, ptr %7, align 8, !tbaa !9
  %1627 = load i32, ptr %12, align 4, !tbaa !5
  %1628 = load i32, ptr %8, align 4, !tbaa !5
  %1629 = mul nsw i32 52, %1628
  %1630 = add nsw i32 %1627, %1629
  %1631 = sext i32 %1630 to i64
  %1632 = getelementptr inbounds double, ptr %1626, i64 %1631
  %1633 = load double, ptr %1632, align 8, !tbaa !11
  %1634 = call double @llvm.fmuladd.f64(double 0xBF9102DA00B18A5A, double %1633, double %1625)
  %1635 = load ptr, ptr %7, align 8, !tbaa !9
  %1636 = load i32, ptr %12, align 4, !tbaa !5
  %1637 = load i32, ptr %8, align 4, !tbaa !5
  %1638 = mul nsw i32 53, %1637
  %1639 = add nsw i32 %1636, %1638
  %1640 = sext i32 %1639 to i64
  %1641 = getelementptr inbounds double, ptr %1635, i64 %1640
  %1642 = load double, ptr %1641, align 8, !tbaa !11
  %1643 = call double @llvm.fmuladd.f64(double 0x3FCD5953692F6EA6, double %1642, double %1634)
  %1644 = load ptr, ptr %7, align 8, !tbaa !9
  %1645 = load i32, ptr %12, align 4, !tbaa !5
  %1646 = load i32, ptr %8, align 4, !tbaa !5
  %1647 = mul nsw i32 54, %1646
  %1648 = add nsw i32 %1645, %1647
  %1649 = sext i32 %1648 to i64
  %1650 = getelementptr inbounds double, ptr %1644, i64 %1649
  %1651 = load double, ptr %1650, align 8, !tbaa !11
  %1652 = call double @llvm.fmuladd.f64(double 0x3FE3C4545BCF030B, double %1651, double %1643)
  %1653 = load ptr, ptr %7, align 8, !tbaa !9
  %1654 = load i32, ptr %12, align 4, !tbaa !5
  %1655 = load i32, ptr %8, align 4, !tbaa !5
  %1656 = mul nsw i32 55, %1655
  %1657 = add nsw i32 %1654, %1656
  %1658 = sext i32 %1657 to i64
  %1659 = getelementptr inbounds double, ptr %1653, i64 %1658
  %1660 = load double, ptr %1659, align 8, !tbaa !11
  %1661 = call double @llvm.fmuladd.f64(double 0x3FD6A4D32EB1F70D, double %1660, double %1652)
  %1662 = load ptr, ptr %7, align 8, !tbaa !9
  %1663 = load i32, ptr %12, align 4, !tbaa !5
  %1664 = load i32, ptr %8, align 4, !tbaa !5
  %1665 = mul nsw i32 56, %1664
  %1666 = add nsw i32 %1663, %1665
  %1667 = sext i32 %1666 to i64
  %1668 = getelementptr inbounds double, ptr %1662, i64 %1667
  %1669 = load double, ptr %1668, align 8, !tbaa !11
  %1670 = call double @llvm.fmuladd.f64(double 0x3C6F1CD9CCEEF238, double %1669, double %1661)
  %1671 = load ptr, ptr %7, align 8, !tbaa !9
  %1672 = load i32, ptr %12, align 4, !tbaa !5
  %1673 = load i32, ptr %8, align 4, !tbaa !5
  %1674 = mul nsw i32 57, %1673
  %1675 = add nsw i32 %1672, %1674
  %1676 = sext i32 %1675 to i64
  %1677 = getelementptr inbounds double, ptr %1671, i64 %1676
  %1678 = load double, ptr %1677, align 8, !tbaa !11
  %1679 = call double @llvm.fmuladd.f64(double 0x3C9ADEBC19B71702, double %1678, double %1670)
  %1680 = load ptr, ptr %7, align 8, !tbaa !9
  %1681 = load i32, ptr %12, align 4, !tbaa !5
  %1682 = load i32, ptr %8, align 4, !tbaa !5
  %1683 = mul nsw i32 58, %1682
  %1684 = add nsw i32 %1681, %1683
  %1685 = sext i32 %1684 to i64
  %1686 = getelementptr inbounds double, ptr %1680, i64 %1685
  %1687 = load double, ptr %1686, align 8, !tbaa !11
  %1688 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %1687, double %1679)
  %1689 = load ptr, ptr %7, align 8, !tbaa !9
  %1690 = load i32, ptr %12, align 4, !tbaa !5
  %1691 = load i32, ptr %8, align 4, !tbaa !5
  %1692 = mul nsw i32 60, %1691
  %1693 = add nsw i32 %1690, %1692
  %1694 = sext i32 %1693 to i64
  %1695 = getelementptr inbounds double, ptr %1689, i64 %1694
  %1696 = load double, ptr %1695, align 8, !tbaa !11
  %1697 = call double @llvm.fmuladd.f64(double 0xBC94DC12067D4B20, double %1696, double %1688)
  %1698 = load ptr, ptr %7, align 8, !tbaa !9
  %1699 = load i32, ptr %12, align 4, !tbaa !5
  %1700 = load i32, ptr %8, align 4, !tbaa !5
  %1701 = mul nsw i32 61, %1700
  %1702 = add nsw i32 %1699, %1701
  %1703 = sext i32 %1702 to i64
  %1704 = getelementptr inbounds double, ptr %1698, i64 %1703
  %1705 = load double, ptr %1704, align 8, !tbaa !11
  %1706 = call double @llvm.fmuladd.f64(double 0xBC9536948017480F, double %1705, double %1697)
  %1707 = load ptr, ptr %7, align 8, !tbaa !9
  %1708 = load i32, ptr %12, align 4, !tbaa !5
  %1709 = load i32, ptr %8, align 4, !tbaa !5
  %1710 = mul nsw i32 62, %1709
  %1711 = add nsw i32 %1708, %1710
  %1712 = sext i32 %1711 to i64
  %1713 = getelementptr inbounds double, ptr %1707, i64 %1712
  %1714 = load double, ptr %1713, align 8, !tbaa !11
  %1715 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %1714, double %1706)
  %1716 = load ptr, ptr %7, align 8, !tbaa !9
  %1717 = load i32, ptr %12, align 4, !tbaa !5
  %1718 = load i32, ptr %8, align 4, !tbaa !5
  %1719 = mul nsw i32 63, %1718
  %1720 = add nsw i32 %1717, %1719
  %1721 = sext i32 %1720 to i64
  %1722 = getelementptr inbounds double, ptr %1716, i64 %1721
  %1723 = load double, ptr %1722, align 8, !tbaa !11
  %1724 = call double @llvm.fmuladd.f64(double 0x3C96A09E667F3BCC, double %1723, double %1715)
  %1725 = load ptr, ptr %7, align 8, !tbaa !9
  %1726 = load i32, ptr %12, align 4, !tbaa !5
  %1727 = load i32, ptr %8, align 4, !tbaa !5
  %1728 = mul nsw i32 64, %1727
  %1729 = add nsw i32 %1726, %1728
  %1730 = sext i32 %1729 to i64
  %1731 = getelementptr inbounds double, ptr %1725, i64 %1730
  %1732 = load double, ptr %1731, align 8, !tbaa !11
  %1733 = call double @llvm.fmuladd.f64(double 0x3C53CC8A99AF5452, double %1732, double %1724)
  %1734 = load ptr, ptr %7, align 8, !tbaa !9
  %1735 = load i32, ptr %12, align 4, !tbaa !5
  %1736 = load i32, ptr %8, align 4, !tbaa !5
  %1737 = mul nsw i32 65, %1736
  %1738 = add nsw i32 %1735, %1737
  %1739 = sext i32 %1738 to i64
  %1740 = getelementptr inbounds double, ptr %1734, i64 %1739
  %1741 = load double, ptr %1740, align 8, !tbaa !11
  %1742 = call double @llvm.fmuladd.f64(double 0x3C8536948017480E, double %1741, double %1733)
  %1743 = load ptr, ptr %7, align 8, !tbaa !9
  %1744 = load i32, ptr %12, align 4, !tbaa !5
  %1745 = load i32, ptr %8, align 4, !tbaa !5
  %1746 = mul nsw i32 66, %1745
  %1747 = add nsw i32 %1744, %1746
  %1748 = sext i32 %1747 to i64
  %1749 = getelementptr inbounds double, ptr %1743, i64 %1748
  %1750 = load double, ptr %1749, align 8, !tbaa !11
  %1751 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %1750, double %1742)
  %1752 = load ptr, ptr %7, align 8, !tbaa !9
  %1753 = load i32, ptr %12, align 4, !tbaa !5
  %1754 = load i32, ptr %8, align 4, !tbaa !5
  %1755 = mul nsw i32 67, %1754
  %1756 = add nsw i32 %1753, %1755
  %1757 = sext i32 %1756 to i64
  %1758 = getelementptr inbounds double, ptr %1752, i64 %1757
  %1759 = load double, ptr %1758, align 8, !tbaa !11
  %1760 = call double @llvm.fmuladd.f64(double 0x3C93CC8A99AF5452, double %1759, double %1751)
  store double %1760, ptr %11, align 8, !tbaa !11
  %1761 = load double, ptr %11, align 8, !tbaa !11
  %1762 = load ptr, ptr %9, align 8, !tbaa !9
  %1763 = load i32, ptr %12, align 4, !tbaa !5
  %1764 = load i32, ptr %10, align 4, !tbaa !5
  %1765 = mul nsw i32 5, %1764
  %1766 = add nsw i32 %1763, %1765
  %1767 = sext i32 %1766 to i64
  %1768 = getelementptr inbounds double, ptr %1762, i64 %1767
  %1769 = load double, ptr %1768, align 8, !tbaa !11
  %1770 = fadd double %1769, %1761
  store double %1770, ptr %1768, align 8, !tbaa !11
  %1771 = load ptr, ptr %7, align 8, !tbaa !9
  %1772 = load i32, ptr %12, align 4, !tbaa !5
  %1773 = load i32, ptr %8, align 4, !tbaa !5
  %1774 = mul nsw i32 36, %1773
  %1775 = add nsw i32 %1772, %1774
  %1776 = sext i32 %1775 to i64
  %1777 = getelementptr inbounds double, ptr %1771, i64 %1776
  %1778 = load double, ptr %1777, align 8, !tbaa !11
  %1779 = load ptr, ptr %7, align 8, !tbaa !9
  %1780 = load i32, ptr %12, align 4, !tbaa !5
  %1781 = load i32, ptr %8, align 4, !tbaa !5
  %1782 = mul nsw i32 37, %1781
  %1783 = add nsw i32 %1780, %1782
  %1784 = sext i32 %1783 to i64
  %1785 = getelementptr inbounds double, ptr %1779, i64 %1784
  %1786 = load double, ptr %1785, align 8, !tbaa !11
  %1787 = fmul double 0x3FEFAD7976B5DE20, %1786
  %1788 = call double @llvm.fmuladd.f64(double 0x3FF043C98657E80E, double %1778, double %1787)
  %1789 = load ptr, ptr %7, align 8, !tbaa !9
  %1790 = load i32, ptr %12, align 4, !tbaa !5
  %1791 = load i32, ptr %8, align 4, !tbaa !5
  %1792 = mul nsw i32 38, %1791
  %1793 = add nsw i32 %1790, %1792
  %1794 = sext i32 %1793 to i64
  %1795 = getelementptr inbounds double, ptr %1789, i64 %1794
  %1796 = load double, ptr %1795, align 8, !tbaa !11
  %1797 = call double @llvm.fmuladd.f64(double 0xBFB4C23AD63BEF81, double %1796, double %1788)
  %1798 = load ptr, ptr %7, align 8, !tbaa !9
  %1799 = load i32, ptr %12, align 4, !tbaa !5
  %1800 = load i32, ptr %8, align 4, !tbaa !5
  %1801 = mul nsw i32 39, %1800
  %1802 = add nsw i32 %1799, %1801
  %1803 = sext i32 %1802 to i64
  %1804 = getelementptr inbounds double, ptr %1798, i64 %1803
  %1805 = load double, ptr %1804, align 8, !tbaa !11
  %1806 = call double @llvm.fmuladd.f64(double 0xBFAC37F3CCE9FD3B, double %1805, double %1797)
  %1807 = load ptr, ptr %7, align 8, !tbaa !9
  %1808 = load i32, ptr %12, align 4, !tbaa !5
  %1809 = load i32, ptr %8, align 4, !tbaa !5
  %1810 = mul nsw i32 40, %1809
  %1811 = add nsw i32 %1808, %1810
  %1812 = sext i32 %1811 to i64
  %1813 = getelementptr inbounds double, ptr %1807, i64 %1812
  %1814 = load double, ptr %1813, align 8, !tbaa !11
  %1815 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %1814, double %1806)
  %1816 = load ptr, ptr %7, align 8, !tbaa !9
  %1817 = load i32, ptr %12, align 4, !tbaa !5
  %1818 = load i32, ptr %8, align 4, !tbaa !5
  %1819 = mul nsw i32 41, %1818
  %1820 = add nsw i32 %1817, %1819
  %1821 = sext i32 %1820 to i64
  %1822 = getelementptr inbounds double, ptr %1816, i64 %1821
  %1823 = load double, ptr %1822, align 8, !tbaa !11
  %1824 = call double @llvm.fmuladd.f64(double 0x3C97000000000000, double %1823, double %1815)
  %1825 = load ptr, ptr %7, align 8, !tbaa !9
  %1826 = load i32, ptr %12, align 4, !tbaa !5
  %1827 = load i32, ptr %8, align 4, !tbaa !5
  %1828 = mul nsw i32 42, %1827
  %1829 = add nsw i32 %1826, %1828
  %1830 = sext i32 %1829 to i64
  %1831 = getelementptr inbounds double, ptr %1825, i64 %1830
  %1832 = load double, ptr %1831, align 8, !tbaa !11
  %1833 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %1832, double %1824)
  %1834 = load ptr, ptr %7, align 8, !tbaa !9
  %1835 = load i32, ptr %12, align 4, !tbaa !5
  %1836 = load i32, ptr %8, align 4, !tbaa !5
  %1837 = mul nsw i32 43, %1836
  %1838 = add nsw i32 %1835, %1837
  %1839 = sext i32 %1838 to i64
  %1840 = getelementptr inbounds double, ptr %1834, i64 %1839
  %1841 = load double, ptr %1840, align 8, !tbaa !11
  %1842 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %1841, double %1833)
  %1843 = load ptr, ptr %7, align 8, !tbaa !9
  %1844 = load i32, ptr %12, align 4, !tbaa !5
  %1845 = load i32, ptr %8, align 4, !tbaa !5
  %1846 = mul nsw i32 44, %1845
  %1847 = add nsw i32 %1844, %1846
  %1848 = sext i32 %1847 to i64
  %1849 = getelementptr inbounds double, ptr %1843, i64 %1848
  %1850 = load double, ptr %1849, align 8, !tbaa !11
  %1851 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %1850, double %1842)
  %1852 = load ptr, ptr %7, align 8, !tbaa !9
  %1853 = load i32, ptr %12, align 4, !tbaa !5
  %1854 = load i32, ptr %8, align 4, !tbaa !5
  %1855 = mul nsw i32 45, %1854
  %1856 = add nsw i32 %1853, %1855
  %1857 = sext i32 %1856 to i64
  %1858 = getelementptr inbounds double, ptr %1852, i64 %1857
  %1859 = load double, ptr %1858, align 8, !tbaa !11
  %1860 = call double @llvm.fmuladd.f64(double 0x3C82000000000000, double %1859, double %1851)
  %1861 = load ptr, ptr %7, align 8, !tbaa !9
  %1862 = load i32, ptr %12, align 4, !tbaa !5
  %1863 = load i32, ptr %8, align 4, !tbaa !5
  %1864 = mul nsw i32 46, %1863
  %1865 = add nsw i32 %1862, %1864
  %1866 = sext i32 %1865 to i64
  %1867 = getelementptr inbounds double, ptr %1861, i64 %1866
  %1868 = load double, ptr %1867, align 8, !tbaa !11
  %1869 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %1868, double %1860)
  %1870 = load ptr, ptr %7, align 8, !tbaa !9
  %1871 = load i32, ptr %12, align 4, !tbaa !5
  %1872 = load i32, ptr %8, align 4, !tbaa !5
  %1873 = mul nsw i32 47, %1872
  %1874 = add nsw i32 %1871, %1873
  %1875 = sext i32 %1874 to i64
  %1876 = getelementptr inbounds double, ptr %1870, i64 %1875
  %1877 = load double, ptr %1876, align 8, !tbaa !11
  %1878 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %1877, double %1869)
  %1879 = load ptr, ptr %7, align 8, !tbaa !9
  %1880 = load i32, ptr %12, align 4, !tbaa !5
  %1881 = load i32, ptr %8, align 4, !tbaa !5
  %1882 = mul nsw i32 48, %1881
  %1883 = add nsw i32 %1880, %1882
  %1884 = sext i32 %1883 to i64
  %1885 = getelementptr inbounds double, ptr %1879, i64 %1884
  %1886 = load double, ptr %1885, align 8, !tbaa !11
  %1887 = call double @llvm.fmuladd.f64(double 0x3CAD5FFFFFFFFFFF, double %1886, double %1878)
  %1888 = load ptr, ptr %7, align 8, !tbaa !9
  %1889 = load i32, ptr %12, align 4, !tbaa !5
  %1890 = load i32, ptr %8, align 4, !tbaa !5
  %1891 = mul nsw i32 49, %1890
  %1892 = add nsw i32 %1889, %1891
  %1893 = sext i32 %1892 to i64
  %1894 = getelementptr inbounds double, ptr %1888, i64 %1893
  %1895 = load double, ptr %1894, align 8, !tbaa !11
  %1896 = call double @llvm.fmuladd.f64(double 0x3CA1200000000001, double %1895, double %1887)
  %1897 = load ptr, ptr %7, align 8, !tbaa !9
  %1898 = load i32, ptr %12, align 4, !tbaa !5
  %1899 = load i32, ptr %8, align 4, !tbaa !5
  %1900 = mul nsw i32 50, %1899
  %1901 = add nsw i32 %1898, %1900
  %1902 = sext i32 %1901 to i64
  %1903 = getelementptr inbounds double, ptr %1897, i64 %1902
  %1904 = load double, ptr %1903, align 8, !tbaa !11
  %1905 = call double @llvm.fmuladd.f64(double 0xBCA1000000000001, double %1904, double %1896)
  %1906 = load ptr, ptr %7, align 8, !tbaa !9
  %1907 = load i32, ptr %12, align 4, !tbaa !5
  %1908 = load i32, ptr %8, align 4, !tbaa !5
  %1909 = mul nsw i32 51, %1908
  %1910 = add nsw i32 %1907, %1909
  %1911 = sext i32 %1910 to i64
  %1912 = getelementptr inbounds double, ptr %1906, i64 %1911
  %1913 = load double, ptr %1912, align 8, !tbaa !11
  %1914 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %1913, double %1905)
  %1915 = load ptr, ptr %7, align 8, !tbaa !9
  %1916 = load i32, ptr %12, align 4, !tbaa !5
  %1917 = load i32, ptr %8, align 4, !tbaa !5
  %1918 = mul nsw i32 52, %1917
  %1919 = add nsw i32 %1916, %1918
  %1920 = sext i32 %1919 to i64
  %1921 = getelementptr inbounds double, ptr %1915, i64 %1920
  %1922 = load double, ptr %1921, align 8, !tbaa !11
  %1923 = call double @llvm.fmuladd.f64(double 0x3FD6A4D32EB1F718, double %1922, double %1914)
  %1924 = load ptr, ptr %7, align 8, !tbaa !9
  %1925 = load i32, ptr %12, align 4, !tbaa !5
  %1926 = load i32, ptr %8, align 4, !tbaa !5
  %1927 = mul nsw i32 53, %1926
  %1928 = add nsw i32 %1925, %1927
  %1929 = sext i32 %1928 to i64
  %1930 = getelementptr inbounds double, ptr %1924, i64 %1929
  %1931 = load double, ptr %1930, align 8, !tbaa !11
  %1932 = call double @llvm.fmuladd.f64(double 0x3FE3C4545BCF030B, double %1931, double %1923)
  %1933 = load ptr, ptr %7, align 8, !tbaa !9
  %1934 = load i32, ptr %12, align 4, !tbaa !5
  %1935 = load i32, ptr %8, align 4, !tbaa !5
  %1936 = mul nsw i32 54, %1935
  %1937 = add nsw i32 %1934, %1936
  %1938 = sext i32 %1937 to i64
  %1939 = getelementptr inbounds double, ptr %1933, i64 %1938
  %1940 = load double, ptr %1939, align 8, !tbaa !11
  %1941 = call double @llvm.fmuladd.f64(double 0x3FCD5953692F6EA3, double %1940, double %1932)
  %1942 = load ptr, ptr %7, align 8, !tbaa !9
  %1943 = load i32, ptr %12, align 4, !tbaa !5
  %1944 = load i32, ptr %8, align 4, !tbaa !5
  %1945 = mul nsw i32 55, %1944
  %1946 = add nsw i32 %1943, %1945
  %1947 = sext i32 %1946 to i64
  %1948 = getelementptr inbounds double, ptr %1942, i64 %1947
  %1949 = load double, ptr %1948, align 8, !tbaa !11
  %1950 = call double @llvm.fmuladd.f64(double 0xBF9102DA00B18A2C, double %1949, double %1941)
  %1951 = load ptr, ptr %7, align 8, !tbaa !9
  %1952 = load i32, ptr %12, align 4, !tbaa !5
  %1953 = load i32, ptr %8, align 4, !tbaa !5
  %1954 = mul nsw i32 56, %1953
  %1955 = add nsw i32 %1952, %1954
  %1956 = sext i32 %1955 to i64
  %1957 = getelementptr inbounds double, ptr %1951, i64 %1956
  %1958 = load double, ptr %1957, align 8, !tbaa !11
  %1959 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %1958, double %1950)
  %1960 = load ptr, ptr %7, align 8, !tbaa !9
  %1961 = load i32, ptr %12, align 4, !tbaa !5
  %1962 = load i32, ptr %8, align 4, !tbaa !5
  %1963 = mul nsw i32 57, %1962
  %1964 = add nsw i32 %1961, %1963
  %1965 = sext i32 %1964 to i64
  %1966 = getelementptr inbounds double, ptr %1960, i64 %1965
  %1967 = load double, ptr %1966, align 8, !tbaa !11
  %1968 = call double @llvm.fmuladd.f64(double 0x3CB344C6E34858EB, double %1967, double %1959)
  %1969 = load ptr, ptr %7, align 8, !tbaa !9
  %1970 = load i32, ptr %12, align 4, !tbaa !5
  %1971 = load i32, ptr %8, align 4, !tbaa !5
  %1972 = mul nsw i32 58, %1971
  %1973 = add nsw i32 %1970, %1972
  %1974 = sext i32 %1973 to i64
  %1975 = getelementptr inbounds double, ptr %1969, i64 %1974
  %1976 = load double, ptr %1975, align 8, !tbaa !11
  %1977 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %1976, double %1968)
  %1978 = load ptr, ptr %7, align 8, !tbaa !9
  %1979 = load i32, ptr %12, align 4, !tbaa !5
  %1980 = load i32, ptr %8, align 4, !tbaa !5
  %1981 = mul nsw i32 59, %1980
  %1982 = add nsw i32 %1979, %1981
  %1983 = sext i32 %1982 to i64
  %1984 = getelementptr inbounds double, ptr %1978, i64 %1983
  %1985 = load double, ptr %1984, align 8, !tbaa !11
  %1986 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %1985, double %1977)
  %1987 = load ptr, ptr %7, align 8, !tbaa !9
  %1988 = load i32, ptr %12, align 4, !tbaa !5
  %1989 = load i32, ptr %8, align 4, !tbaa !5
  %1990 = mul nsw i32 60, %1989
  %1991 = add nsw i32 %1988, %1990
  %1992 = sext i32 %1991 to i64
  %1993 = getelementptr inbounds double, ptr %1987, i64 %1992
  %1994 = load double, ptr %1993, align 8, !tbaa !11
  %1995 = call double @llvm.fmuladd.f64(double 0xBC9C48C6001F0ABF, double %1994, double %1986)
  %1996 = load ptr, ptr %7, align 8, !tbaa !9
  %1997 = load i32, ptr %12, align 4, !tbaa !5
  %1998 = load i32, ptr %8, align 4, !tbaa !5
  %1999 = mul nsw i32 61, %1998
  %2000 = add nsw i32 %1997, %1999
  %2001 = sext i32 %2000 to i64
  %2002 = getelementptr inbounds double, ptr %1996, i64 %2001
  %2003 = load double, ptr %2002, align 8, !tbaa !11
  %2004 = call double @llvm.fmuladd.f64(double 0xBC9FD1DEC022EC15, double %2003, double %1995)
  %2005 = load ptr, ptr %7, align 8, !tbaa !9
  %2006 = load i32, ptr %12, align 4, !tbaa !5
  %2007 = load i32, ptr %8, align 4, !tbaa !5
  %2008 = mul nsw i32 62, %2007
  %2009 = add nsw i32 %2006, %2008
  %2010 = sext i32 %2009 to i64
  %2011 = getelementptr inbounds double, ptr %2005, i64 %2010
  %2012 = load double, ptr %2011, align 8, !tbaa !11
  %2013 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %2012, double %2004)
  %2014 = load ptr, ptr %7, align 8, !tbaa !9
  %2015 = load i32, ptr %12, align 4, !tbaa !5
  %2016 = load i32, ptr %8, align 4, !tbaa !5
  %2017 = mul nsw i32 63, %2016
  %2018 = add nsw i32 %2015, %2017
  %2019 = sext i32 %2018 to i64
  %2020 = getelementptr inbounds double, ptr %2014, i64 %2019
  %2021 = load double, ptr %2020, align 8, !tbaa !11
  %2022 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %2021, double %2013)
  %2023 = load ptr, ptr %7, align 8, !tbaa !9
  %2024 = load i32, ptr %12, align 4, !tbaa !5
  %2025 = load i32, ptr %8, align 4, !tbaa !5
  %2026 = mul nsw i32 64, %2025
  %2027 = add nsw i32 %2024, %2026
  %2028 = sext i32 %2027 to i64
  %2029 = getelementptr inbounds double, ptr %2023, i64 %2028
  %2030 = load double, ptr %2029, align 8, !tbaa !11
  %2031 = call double @llvm.fmuladd.f64(double 0x3C86461BECE53EDC, double %2030, double %2022)
  %2032 = load ptr, ptr %7, align 8, !tbaa !9
  %2033 = load i32, ptr %12, align 4, !tbaa !5
  %2034 = load i32, ptr %8, align 4, !tbaa !5
  %2035 = mul nsw i32 65, %2034
  %2036 = add nsw i32 %2033, %2035
  %2037 = sext i32 %2036 to i64
  %2038 = getelementptr inbounds double, ptr %2032, i64 %2037
  %2039 = load double, ptr %2038, align 8, !tbaa !11
  %2040 = call double @llvm.fmuladd.f64(double 0x3CA196DB21ACE77D, double %2039, double %2031)
  %2041 = load ptr, ptr %7, align 8, !tbaa !9
  %2042 = load i32, ptr %12, align 4, !tbaa !5
  %2043 = load i32, ptr %8, align 4, !tbaa !5
  %2044 = mul nsw i32 66, %2043
  %2045 = add nsw i32 %2042, %2044
  %2046 = sext i32 %2045 to i64
  %2047 = getelementptr inbounds double, ptr %2041, i64 %2046
  %2048 = load double, ptr %2047, align 8, !tbaa !11
  %2049 = call double @llvm.fmuladd.f64(double 0x3C9ADEBC19B71702, double %2048, double %2040)
  store double %2049, ptr %11, align 8, !tbaa !11
  %2050 = load double, ptr %11, align 8, !tbaa !11
  %2051 = load ptr, ptr %9, align 8, !tbaa !9
  %2052 = load i32, ptr %12, align 4, !tbaa !5
  %2053 = load i32, ptr %10, align 4, !tbaa !5
  %2054 = mul nsw i32 6, %2053
  %2055 = add nsw i32 %2052, %2054
  %2056 = sext i32 %2055 to i64
  %2057 = getelementptr inbounds double, ptr %2051, i64 %2056
  %2058 = load double, ptr %2057, align 8, !tbaa !11
  %2059 = fadd double %2058, %2050
  store double %2059, ptr %2057, align 8, !tbaa !11
  %2060 = load ptr, ptr %7, align 8, !tbaa !9
  %2061 = load i32, ptr %12, align 4, !tbaa !5
  %2062 = load i32, ptr %8, align 4, !tbaa !5
  %2063 = mul nsw i32 36, %2062
  %2064 = add nsw i32 %2061, %2063
  %2065 = sext i32 %2064 to i64
  %2066 = getelementptr inbounds double, ptr %2060, i64 %2065
  %2067 = load double, ptr %2066, align 8, !tbaa !11
  %2068 = load ptr, ptr %7, align 8, !tbaa !9
  %2069 = load i32, ptr %12, align 4, !tbaa !5
  %2070 = load i32, ptr %8, align 4, !tbaa !5
  %2071 = mul nsw i32 37, %2070
  %2072 = add nsw i32 %2069, %2071
  %2073 = sext i32 %2072 to i64
  %2074 = getelementptr inbounds double, ptr %2068, i64 %2073
  %2075 = load double, ptr %2074, align 8, !tbaa !11
  %2076 = fmul double 0xBFEBF462FB348EF2, %2075
  %2077 = call double @llvm.fmuladd.f64(double 0xBFE002F9665DF3E5, double %2067, double %2076)
  %2078 = load ptr, ptr %7, align 8, !tbaa !9
  %2079 = load i32, ptr %12, align 4, !tbaa !5
  %2080 = load i32, ptr %8, align 4, !tbaa !5
  %2081 = mul nsw i32 38, %2080
  %2082 = add nsw i32 %2079, %2081
  %2083 = sext i32 %2082 to i64
  %2084 = getelementptr inbounds double, ptr %2078, i64 %2083
  %2085 = load double, ptr %2084, align 8, !tbaa !11
  %2086 = call double @llvm.fmuladd.f64(double 0xBFD4C0B9406BCBCC, double %2085, double %2077)
  %2087 = load ptr, ptr %7, align 8, !tbaa !9
  %2088 = load i32, ptr %12, align 4, !tbaa !5
  %2089 = load i32, ptr %8, align 4, !tbaa !5
  %2090 = mul nsw i32 39, %2089
  %2091 = add nsw i32 %2088, %2090
  %2092 = sext i32 %2091 to i64
  %2093 = getelementptr inbounds double, ptr %2087, i64 %2092
  %2094 = load double, ptr %2093, align 8, !tbaa !11
  %2095 = call double @llvm.fmuladd.f64(double 0x3F980EB0AE1D483F, double %2094, double %2086)
  %2096 = load ptr, ptr %7, align 8, !tbaa !9
  %2097 = load i32, ptr %12, align 4, !tbaa !5
  %2098 = load i32, ptr %8, align 4, !tbaa !5
  %2099 = mul nsw i32 40, %2098
  %2100 = add nsw i32 %2097, %2099
  %2101 = sext i32 %2100 to i64
  %2102 = getelementptr inbounds double, ptr %2096, i64 %2101
  %2103 = load double, ptr %2102, align 8, !tbaa !11
  %2104 = call double @llvm.fmuladd.f64(double 0x3C91800000000000, double %2103, double %2095)
  %2105 = load ptr, ptr %7, align 8, !tbaa !9
  %2106 = load i32, ptr %12, align 4, !tbaa !5
  %2107 = load i32, ptr %8, align 4, !tbaa !5
  %2108 = mul nsw i32 41, %2107
  %2109 = add nsw i32 %2106, %2108
  %2110 = sext i32 %2109 to i64
  %2111 = getelementptr inbounds double, ptr %2105, i64 %2110
  %2112 = load double, ptr %2111, align 8, !tbaa !11
  %2113 = call double @llvm.fmuladd.f64(double 0xBCB3400000000000, double %2112, double %2104)
  %2114 = load ptr, ptr %7, align 8, !tbaa !9
  %2115 = load i32, ptr %12, align 4, !tbaa !5
  %2116 = load i32, ptr %8, align 4, !tbaa !5
  %2117 = mul nsw i32 43, %2116
  %2118 = add nsw i32 %2115, %2117
  %2119 = sext i32 %2118 to i64
  %2120 = getelementptr inbounds double, ptr %2114, i64 %2119
  %2121 = load double, ptr %2120, align 8, !tbaa !11
  %2122 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %2121, double %2113)
  %2123 = load ptr, ptr %7, align 8, !tbaa !9
  %2124 = load i32, ptr %12, align 4, !tbaa !5
  %2125 = load i32, ptr %8, align 4, !tbaa !5
  %2126 = mul nsw i32 44, %2125
  %2127 = add nsw i32 %2124, %2126
  %2128 = sext i32 %2127 to i64
  %2129 = getelementptr inbounds double, ptr %2123, i64 %2128
  %2130 = load double, ptr %2129, align 8, !tbaa !11
  %2131 = call double @llvm.fmuladd.f64(double 0x3C9E7FFFFFFFFFFD, double %2130, double %2122)
  %2132 = load ptr, ptr %7, align 8, !tbaa !9
  %2133 = load i32, ptr %12, align 4, !tbaa !5
  %2134 = load i32, ptr %8, align 4, !tbaa !5
  %2135 = mul nsw i32 45, %2134
  %2136 = add nsw i32 %2133, %2135
  %2137 = sext i32 %2136 to i64
  %2138 = getelementptr inbounds double, ptr %2132, i64 %2137
  %2139 = load double, ptr %2138, align 8, !tbaa !11
  %2140 = call double @llvm.fmuladd.f64(double 0x3CA67FFFFFFFFFFE, double %2139, double %2131)
  %2141 = load ptr, ptr %7, align 8, !tbaa !9
  %2142 = load i32, ptr %12, align 4, !tbaa !5
  %2143 = load i32, ptr %8, align 4, !tbaa !5
  %2144 = mul nsw i32 46, %2143
  %2145 = add nsw i32 %2142, %2144
  %2146 = sext i32 %2145 to i64
  %2147 = getelementptr inbounds double, ptr %2141, i64 %2146
  %2148 = load double, ptr %2147, align 8, !tbaa !11
  %2149 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %2148, double %2140)
  %2150 = load ptr, ptr %7, align 8, !tbaa !9
  %2151 = load i32, ptr %12, align 4, !tbaa !5
  %2152 = load i32, ptr %8, align 4, !tbaa !5
  %2153 = mul nsw i32 47, %2152
  %2154 = add nsw i32 %2151, %2153
  %2155 = sext i32 %2154 to i64
  %2156 = getelementptr inbounds double, ptr %2150, i64 %2155
  %2157 = load double, ptr %2156, align 8, !tbaa !11
  %2158 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %2157, double %2149)
  %2159 = load ptr, ptr %7, align 8, !tbaa !9
  %2160 = load i32, ptr %12, align 4, !tbaa !5
  %2161 = load i32, ptr %8, align 4, !tbaa !5
  %2162 = mul nsw i32 48, %2161
  %2163 = add nsw i32 %2160, %2162
  %2164 = sext i32 %2163 to i64
  %2165 = getelementptr inbounds double, ptr %2159, i64 %2164
  %2166 = load double, ptr %2165, align 8, !tbaa !11
  %2167 = call double @llvm.fmuladd.f64(double 0xBCADDFFFFFFFFFFE, double %2166, double %2158)
  %2168 = load ptr, ptr %7, align 8, !tbaa !9
  %2169 = load i32, ptr %12, align 4, !tbaa !5
  %2170 = load i32, ptr %8, align 4, !tbaa !5
  %2171 = mul nsw i32 49, %2170
  %2172 = add nsw i32 %2169, %2171
  %2173 = sext i32 %2172 to i64
  %2174 = getelementptr inbounds double, ptr %2168, i64 %2173
  %2175 = load double, ptr %2174, align 8, !tbaa !11
  %2176 = call double @llvm.fmuladd.f64(double 0xBC5C000000000000, double %2175, double %2167)
  %2177 = load ptr, ptr %7, align 8, !tbaa !9
  %2178 = load i32, ptr %12, align 4, !tbaa !5
  %2179 = load i32, ptr %8, align 4, !tbaa !5
  %2180 = mul nsw i32 50, %2179
  %2181 = add nsw i32 %2178, %2180
  %2182 = sext i32 %2181 to i64
  %2183 = getelementptr inbounds double, ptr %2177, i64 %2182
  %2184 = load double, ptr %2183, align 8, !tbaa !11
  %2185 = call double @llvm.fmuladd.f64(double 0xBCA1000000000001, double %2184, double %2176)
  %2186 = load ptr, ptr %7, align 8, !tbaa !9
  %2187 = load i32, ptr %12, align 4, !tbaa !5
  %2188 = load i32, ptr %8, align 4, !tbaa !5
  %2189 = mul nsw i32 52, %2188
  %2190 = add nsw i32 %2187, %2189
  %2191 = sext i32 %2190 to i64
  %2192 = getelementptr inbounds double, ptr %2186, i64 %2191
  %2193 = load double, ptr %2192, align 8, !tbaa !11
  %2194 = call double @llvm.fmuladd.f64(double 0xBFE7007BFD8FD859, double %2193, double %2185)
  %2195 = load ptr, ptr %7, align 8, !tbaa !9
  %2196 = load i32, ptr %12, align 4, !tbaa !5
  %2197 = load i32, ptr %8, align 4, !tbaa !5
  %2198 = mul nsw i32 53, %2197
  %2199 = add nsw i32 %2196, %2198
  %2200 = sext i32 %2199 to i64
  %2201 = getelementptr inbounds double, ptr %2195, i64 %2200
  %2202 = load double, ptr %2201, align 8, !tbaa !11
  %2203 = call double @llvm.fmuladd.f64(double 0xBFE66643AEED3706, double %2202, double %2194)
  %2204 = load ptr, ptr %7, align 8, !tbaa !9
  %2205 = load i32, ptr %12, align 4, !tbaa !5
  %2206 = load i32, ptr %8, align 4, !tbaa !5
  %2207 = mul nsw i32 54, %2206
  %2208 = add nsw i32 %2205, %2207
  %2209 = sext i32 %2208 to i64
  %2210 = getelementptr inbounds double, ptr %2204, i64 %2209
  %2211 = load double, ptr %2210, align 8, !tbaa !11
  %2212 = call double @llvm.fmuladd.f64(double 0x3FAD5B74B5F10E94, double %2211, double %2203)
  %2213 = load ptr, ptr %7, align 8, !tbaa !9
  %2214 = load i32, ptr %12, align 4, !tbaa !5
  %2215 = load i32, ptr %8, align 4, !tbaa !5
  %2216 = mul nsw i32 55, %2215
  %2217 = add nsw i32 %2214, %2216
  %2218 = sext i32 %2217 to i64
  %2219 = getelementptr inbounds double, ptr %2213, i64 %2218
  %2220 = load double, ptr %2219, align 8, !tbaa !11
  %2221 = call double @llvm.fmuladd.f64(double 0x3FA3F41B0E87BFBB, double %2220, double %2212)
  %2222 = load ptr, ptr %7, align 8, !tbaa !9
  %2223 = load i32, ptr %12, align 4, !tbaa !5
  %2224 = load i32, ptr %8, align 4, !tbaa !5
  %2225 = mul nsw i32 56, %2224
  %2226 = add nsw i32 %2223, %2225
  %2227 = sext i32 %2226 to i64
  %2228 = getelementptr inbounds double, ptr %2222, i64 %2227
  %2229 = load double, ptr %2228, align 8, !tbaa !11
  %2230 = call double @llvm.fmuladd.f64(double 0xBCA344C6E34858EB, double %2229, double %2221)
  %2231 = load ptr, ptr %7, align 8, !tbaa !9
  %2232 = load i32, ptr %12, align 4, !tbaa !5
  %2233 = load i32, ptr %8, align 4, !tbaa !5
  %2234 = mul nsw i32 57, %2233
  %2235 = add nsw i32 %2232, %2234
  %2236 = sext i32 %2235 to i64
  %2237 = getelementptr inbounds double, ptr %2231, i64 %2236
  %2238 = load double, ptr %2237, align 8, !tbaa !11
  %2239 = call double @llvm.fmuladd.f64(double 0x3C91AD7BC01366B7, double %2238, double %2230)
  %2240 = load ptr, ptr %7, align 8, !tbaa !9
  %2241 = load i32, ptr %12, align 4, !tbaa !5
  %2242 = load i32, ptr %8, align 4, !tbaa !5
  %2243 = mul nsw i32 58, %2242
  %2244 = add nsw i32 %2241, %2243
  %2245 = sext i32 %2244 to i64
  %2246 = getelementptr inbounds double, ptr %2240, i64 %2245
  %2247 = load double, ptr %2246, align 8, !tbaa !11
  %2248 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %2247, double %2239)
  %2249 = load ptr, ptr %7, align 8, !tbaa !9
  %2250 = load i32, ptr %12, align 4, !tbaa !5
  %2251 = load i32, ptr %8, align 4, !tbaa !5
  %2252 = mul nsw i32 59, %2251
  %2253 = add nsw i32 %2250, %2252
  %2254 = sext i32 %2253 to i64
  %2255 = getelementptr inbounds double, ptr %2249, i64 %2254
  %2256 = load double, ptr %2255, align 8, !tbaa !11
  %2257 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %2256, double %2248)
  %2258 = load ptr, ptr %7, align 8, !tbaa !9
  %2259 = load i32, ptr %12, align 4, !tbaa !5
  %2260 = load i32, ptr %8, align 4, !tbaa !5
  %2261 = mul nsw i32 60, %2260
  %2262 = add nsw i32 %2259, %2261
  %2263 = sext i32 %2262 to i64
  %2264 = getelementptr inbounds double, ptr %2258, i64 %2263
  %2265 = load double, ptr %2264, align 8, !tbaa !11
  %2266 = call double @llvm.fmuladd.f64(double 0x3CA344C6E34858EB, double %2265, double %2257)
  %2267 = load ptr, ptr %7, align 8, !tbaa !9
  %2268 = load i32, ptr %12, align 4, !tbaa !5
  %2269 = load i32, ptr %8, align 4, !tbaa !5
  %2270 = mul nsw i32 61, %2269
  %2271 = add nsw i32 %2268, %2270
  %2272 = sext i32 %2271 to i64
  %2273 = getelementptr inbounds double, ptr %2267, i64 %2272
  %2274 = load double, ptr %2273, align 8, !tbaa !11
  %2275 = call double @llvm.fmuladd.f64(double 0x3C73CC8A99AF5453, double %2274, double %2266)
  %2276 = load ptr, ptr %7, align 8, !tbaa !9
  %2277 = load i32, ptr %12, align 4, !tbaa !5
  %2278 = load i32, ptr %8, align 4, !tbaa !5
  %2279 = mul nsw i32 62, %2278
  %2280 = add nsw i32 %2277, %2279
  %2281 = sext i32 %2280 to i64
  %2282 = getelementptr inbounds double, ptr %2276, i64 %2281
  %2283 = load double, ptr %2282, align 8, !tbaa !11
  %2284 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %2283, double %2275)
  %2285 = load ptr, ptr %7, align 8, !tbaa !9
  %2286 = load i32, ptr %12, align 4, !tbaa !5
  %2287 = load i32, ptr %8, align 4, !tbaa !5
  %2288 = mul nsw i32 63, %2287
  %2289 = add nsw i32 %2286, %2288
  %2290 = sext i32 %2289 to i64
  %2291 = getelementptr inbounds double, ptr %2285, i64 %2290
  %2292 = load double, ptr %2291, align 8, !tbaa !11
  %2293 = call double @llvm.fmuladd.f64(double 0xBCA0F876CCDF6CD8, double %2292, double %2284)
  %2294 = load ptr, ptr %7, align 8, !tbaa !9
  %2295 = load i32, ptr %12, align 4, !tbaa !5
  %2296 = load i32, ptr %8, align 4, !tbaa !5
  %2297 = mul nsw i32 64, %2296
  %2298 = add nsw i32 %2295, %2297
  %2299 = sext i32 %2298 to i64
  %2300 = getelementptr inbounds double, ptr %2294, i64 %2299
  %2301 = load double, ptr %2300, align 8, !tbaa !11
  %2302 = call double @llvm.fmuladd.f64(double 0xBCA13C58A812EA8E, double %2301, double %2293)
  %2303 = load ptr, ptr %7, align 8, !tbaa !9
  %2304 = load i32, ptr %12, align 4, !tbaa !5
  %2305 = load i32, ptr %8, align 4, !tbaa !5
  %2306 = mul nsw i32 65, %2305
  %2307 = add nsw i32 %2304, %2306
  %2308 = sext i32 %2307 to i64
  %2309 = getelementptr inbounds double, ptr %2303, i64 %2308
  %2310 = load double, ptr %2309, align 8, !tbaa !11
  %2311 = call double @llvm.fmuladd.f64(double 0xBCA6023A11B1C128, double %2310, double %2302)
  %2312 = load ptr, ptr %7, align 8, !tbaa !9
  %2313 = load i32, ptr %12, align 4, !tbaa !5
  %2314 = load i32, ptr %8, align 4, !tbaa !5
  %2315 = mul nsw i32 66, %2314
  %2316 = add nsw i32 %2313, %2315
  %2317 = sext i32 %2316 to i64
  %2318 = getelementptr inbounds double, ptr %2312, i64 %2317
  %2319 = load double, ptr %2318, align 8, !tbaa !11
  %2320 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %2319, double %2311)
  store double %2320, ptr %11, align 8, !tbaa !11
  %2321 = load double, ptr %11, align 8, !tbaa !11
  %2322 = load ptr, ptr %9, align 8, !tbaa !9
  %2323 = load i32, ptr %12, align 4, !tbaa !5
  %2324 = load i32, ptr %10, align 4, !tbaa !5
  %2325 = mul nsw i32 7, %2324
  %2326 = add nsw i32 %2323, %2325
  %2327 = sext i32 %2326 to i64
  %2328 = getelementptr inbounds double, ptr %2322, i64 %2327
  %2329 = load double, ptr %2328, align 8, !tbaa !11
  %2330 = fadd double %2329, %2321
  store double %2330, ptr %2328, align 8, !tbaa !11
  %2331 = load ptr, ptr %7, align 8, !tbaa !9
  %2332 = load i32, ptr %12, align 4, !tbaa !5
  %2333 = load i32, ptr %8, align 4, !tbaa !5
  %2334 = mul nsw i32 36, %2333
  %2335 = add nsw i32 %2332, %2334
  %2336 = sext i32 %2335 to i64
  %2337 = getelementptr inbounds double, ptr %2331, i64 %2336
  %2338 = load double, ptr %2337, align 8, !tbaa !11
  %2339 = load ptr, ptr %7, align 8, !tbaa !9
  %2340 = load i32, ptr %12, align 4, !tbaa !5
  %2341 = load i32, ptr %8, align 4, !tbaa !5
  %2342 = mul nsw i32 37, %2341
  %2343 = add nsw i32 %2340, %2342
  %2344 = sext i32 %2343 to i64
  %2345 = getelementptr inbounds double, ptr %2339, i64 %2344
  %2346 = load double, ptr %2345, align 8, !tbaa !11
  %2347 = fmul double 0xBFD7BAC3393ADDAB, %2346
  %2348 = call double @llvm.fmuladd.f64(double 0x3FC1964E14FA3C91, double %2338, double %2347)
  %2349 = load ptr, ptr %7, align 8, !tbaa !9
  %2350 = load i32, ptr %12, align 4, !tbaa !5
  %2351 = load i32, ptr %8, align 4, !tbaa !5
  %2352 = mul nsw i32 38, %2351
  %2353 = add nsw i32 %2350, %2352
  %2354 = sext i32 %2353 to i64
  %2355 = getelementptr inbounds double, ptr %2349, i64 %2354
  %2356 = load double, ptr %2355, align 8, !tbaa !11
  %2357 = call double @llvm.fmuladd.f64(double 0xC01043858A1F5991, double %2356, double %2348)
  %2358 = load ptr, ptr %7, align 8, !tbaa !9
  %2359 = load i32, ptr %12, align 4, !tbaa !5
  %2360 = load i32, ptr %8, align 4, !tbaa !5
  %2361 = mul nsw i32 39, %2360
  %2362 = add nsw i32 %2359, %2361
  %2363 = sext i32 %2362 to i64
  %2364 = getelementptr inbounds double, ptr %2358, i64 %2363
  %2365 = load double, ptr %2364, align 8, !tbaa !11
  %2366 = call double @llvm.fmuladd.f64(double 0xBFD767140476510C, double %2365, double %2357)
  %2367 = load ptr, ptr %7, align 8, !tbaa !9
  %2368 = load i32, ptr %12, align 4, !tbaa !5
  %2369 = load i32, ptr %8, align 4, !tbaa !5
  %2370 = mul nsw i32 40, %2369
  %2371 = add nsw i32 %2368, %2370
  %2372 = sext i32 %2371 to i64
  %2373 = getelementptr inbounds double, ptr %2367, i64 %2372
  %2374 = load double, ptr %2373, align 8, !tbaa !11
  %2375 = call double @llvm.fmuladd.f64(double 0x3C86000000000001, double %2374, double %2366)
  %2376 = load ptr, ptr %7, align 8, !tbaa !9
  %2377 = load i32, ptr %12, align 4, !tbaa !5
  %2378 = load i32, ptr %8, align 4, !tbaa !5
  %2379 = mul nsw i32 41, %2378
  %2380 = add nsw i32 %2377, %2379
  %2381 = sext i32 %2380 to i64
  %2382 = getelementptr inbounds double, ptr %2376, i64 %2381
  %2383 = load double, ptr %2382, align 8, !tbaa !11
  %2384 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %2383, double %2375)
  %2385 = load ptr, ptr %7, align 8, !tbaa !9
  %2386 = load i32, ptr %12, align 4, !tbaa !5
  %2387 = load i32, ptr %8, align 4, !tbaa !5
  %2388 = mul nsw i32 42, %2387
  %2389 = add nsw i32 %2386, %2388
  %2390 = sext i32 %2389 to i64
  %2391 = getelementptr inbounds double, ptr %2385, i64 %2390
  %2392 = load double, ptr %2391, align 8, !tbaa !11
  %2393 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %2392, double %2384)
  %2394 = load ptr, ptr %7, align 8, !tbaa !9
  %2395 = load i32, ptr %12, align 4, !tbaa !5
  %2396 = load i32, ptr %8, align 4, !tbaa !5
  %2397 = mul nsw i32 43, %2396
  %2398 = add nsw i32 %2395, %2397
  %2399 = sext i32 %2398 to i64
  %2400 = getelementptr inbounds double, ptr %2394, i64 %2399
  %2401 = load double, ptr %2400, align 8, !tbaa !11
  %2402 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %2401, double %2393)
  %2403 = load ptr, ptr %7, align 8, !tbaa !9
  %2404 = load i32, ptr %12, align 4, !tbaa !5
  %2405 = load i32, ptr %8, align 4, !tbaa !5
  %2406 = mul nsw i32 44, %2405
  %2407 = add nsw i32 %2404, %2406
  %2408 = sext i32 %2407 to i64
  %2409 = getelementptr inbounds double, ptr %2403, i64 %2408
  %2410 = load double, ptr %2409, align 8, !tbaa !11
  %2411 = call double @llvm.fmuladd.f64(double 0x3C74000000000000, double %2410, double %2402)
  %2412 = load ptr, ptr %7, align 8, !tbaa !9
  %2413 = load i32, ptr %12, align 4, !tbaa !5
  %2414 = load i32, ptr %8, align 4, !tbaa !5
  %2415 = mul nsw i32 45, %2414
  %2416 = add nsw i32 %2413, %2415
  %2417 = sext i32 %2416 to i64
  %2418 = getelementptr inbounds double, ptr %2412, i64 %2417
  %2419 = load double, ptr %2418, align 8, !tbaa !11
  %2420 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %2419, double %2411)
  %2421 = load ptr, ptr %7, align 8, !tbaa !9
  %2422 = load i32, ptr %12, align 4, !tbaa !5
  %2423 = load i32, ptr %8, align 4, !tbaa !5
  %2424 = mul nsw i32 46, %2423
  %2425 = add nsw i32 %2422, %2424
  %2426 = sext i32 %2425 to i64
  %2427 = getelementptr inbounds double, ptr %2421, i64 %2426
  %2428 = load double, ptr %2427, align 8, !tbaa !11
  %2429 = call double @llvm.fmuladd.f64(double 0xBCC3000000000000, double %2428, double %2420)
  %2430 = load ptr, ptr %7, align 8, !tbaa !9
  %2431 = load i32, ptr %12, align 4, !tbaa !5
  %2432 = load i32, ptr %8, align 4, !tbaa !5
  %2433 = mul nsw i32 47, %2432
  %2434 = add nsw i32 %2431, %2433
  %2435 = sext i32 %2434 to i64
  %2436 = getelementptr inbounds double, ptr %2430, i64 %2435
  %2437 = load double, ptr %2436, align 8, !tbaa !11
  %2438 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %2437, double %2429)
  %2439 = load ptr, ptr %7, align 8, !tbaa !9
  %2440 = load i32, ptr %12, align 4, !tbaa !5
  %2441 = load i32, ptr %8, align 4, !tbaa !5
  %2442 = mul nsw i32 48, %2441
  %2443 = add nsw i32 %2440, %2442
  %2444 = sext i32 %2443 to i64
  %2445 = getelementptr inbounds double, ptr %2439, i64 %2444
  %2446 = load double, ptr %2445, align 8, !tbaa !11
  %2447 = call double @llvm.fmuladd.f64(double 0x3C58000000000000, double %2446, double %2438)
  %2448 = load ptr, ptr %7, align 8, !tbaa !9
  %2449 = load i32, ptr %12, align 4, !tbaa !5
  %2450 = load i32, ptr %8, align 4, !tbaa !5
  %2451 = mul nsw i32 49, %2450
  %2452 = add nsw i32 %2449, %2451
  %2453 = sext i32 %2452 to i64
  %2454 = getelementptr inbounds double, ptr %2448, i64 %2453
  %2455 = load double, ptr %2454, align 8, !tbaa !11
  %2456 = call double @llvm.fmuladd.f64(double 0xBCA7000000000002, double %2455, double %2447)
  %2457 = load ptr, ptr %7, align 8, !tbaa !9
  %2458 = load i32, ptr %12, align 4, !tbaa !5
  %2459 = load i32, ptr %8, align 4, !tbaa !5
  %2460 = mul nsw i32 50, %2459
  %2461 = add nsw i32 %2458, %2460
  %2462 = sext i32 %2461 to i64
  %2463 = getelementptr inbounds double, ptr %2457, i64 %2462
  %2464 = load double, ptr %2463, align 8, !tbaa !11
  %2465 = call double @llvm.fmuladd.f64(double 0xBCC3000000000000, double %2464, double %2456)
  %2466 = load ptr, ptr %7, align 8, !tbaa !9
  %2467 = load i32, ptr %12, align 4, !tbaa !5
  %2468 = load i32, ptr %8, align 4, !tbaa !5
  %2469 = mul nsw i32 51, %2468
  %2470 = add nsw i32 %2467, %2469
  %2471 = sext i32 %2470 to i64
  %2472 = getelementptr inbounds double, ptr %2466, i64 %2471
  %2473 = load double, ptr %2472, align 8, !tbaa !11
  %2474 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %2473, double %2465)
  %2475 = load ptr, ptr %7, align 8, !tbaa !9
  %2476 = load i32, ptr %12, align 4, !tbaa !5
  %2477 = load i32, ptr %8, align 4, !tbaa !5
  %2478 = mul nsw i32 52, %2477
  %2479 = add nsw i32 %2476, %2478
  %2480 = sext i32 %2479 to i64
  %2481 = getelementptr inbounds double, ptr %2475, i64 %2480
  %2482 = load double, ptr %2481, align 8, !tbaa !11
  %2483 = call double @llvm.fmuladd.f64(double 0x3FA3F41B0E87BFEB, double %2482, double %2474)
  %2484 = load ptr, ptr %7, align 8, !tbaa !9
  %2485 = load i32, ptr %12, align 4, !tbaa !5
  %2486 = load i32, ptr %8, align 4, !tbaa !5
  %2487 = mul nsw i32 53, %2486
  %2488 = add nsw i32 %2485, %2487
  %2489 = sext i32 %2488 to i64
  %2490 = getelementptr inbounds double, ptr %2484, i64 %2489
  %2491 = load double, ptr %2490, align 8, !tbaa !11
  %2492 = call double @llvm.fmuladd.f64(double 0x3FAD5B74B5F10E92, double %2491, double %2483)
  %2493 = load ptr, ptr %7, align 8, !tbaa !9
  %2494 = load i32, ptr %12, align 4, !tbaa !5
  %2495 = load i32, ptr %8, align 4, !tbaa !5
  %2496 = mul nsw i32 54, %2495
  %2497 = add nsw i32 %2494, %2496
  %2498 = sext i32 %2497 to i64
  %2499 = getelementptr inbounds double, ptr %2493, i64 %2498
  %2500 = load double, ptr %2499, align 8, !tbaa !11
  %2501 = call double @llvm.fmuladd.f64(double 0xBFE66643AEED36FA, double %2500, double %2492)
  %2502 = load ptr, ptr %7, align 8, !tbaa !9
  %2503 = load i32, ptr %12, align 4, !tbaa !5
  %2504 = load i32, ptr %8, align 4, !tbaa !5
  %2505 = mul nsw i32 55, %2504
  %2506 = add nsw i32 %2503, %2505
  %2507 = sext i32 %2506 to i64
  %2508 = getelementptr inbounds double, ptr %2502, i64 %2507
  %2509 = load double, ptr %2508, align 8, !tbaa !11
  %2510 = call double @llvm.fmuladd.f64(double 0xBFE7007BFD8FD85B, double %2509, double %2501)
  %2511 = load ptr, ptr %7, align 8, !tbaa !9
  %2512 = load i32, ptr %12, align 4, !tbaa !5
  %2513 = load i32, ptr %8, align 4, !tbaa !5
  %2514 = mul nsw i32 56, %2513
  %2515 = add nsw i32 %2512, %2514
  %2516 = sext i32 %2515 to i64
  %2517 = getelementptr inbounds double, ptr %2511, i64 %2516
  %2518 = load double, ptr %2517, align 8, !tbaa !11
  %2519 = call double @llvm.fmuladd.f64(double 0x3C826280B3476096, double %2518, double %2510)
  %2520 = load ptr, ptr %7, align 8, !tbaa !9
  %2521 = load i32, ptr %12, align 4, !tbaa !5
  %2522 = load i32, ptr %8, align 4, !tbaa !5
  %2523 = mul nsw i32 57, %2522
  %2524 = add nsw i32 %2521, %2523
  %2525 = sext i32 %2524 to i64
  %2526 = getelementptr inbounds double, ptr %2520, i64 %2525
  %2527 = load double, ptr %2526, align 8, !tbaa !11
  %2528 = call double @llvm.fmuladd.f64(double 0x3C8C48C6001F0AC0, double %2527, double %2519)
  %2529 = load ptr, ptr %7, align 8, !tbaa !9
  %2530 = load i32, ptr %12, align 4, !tbaa !5
  %2531 = load i32, ptr %8, align 4, !tbaa !5
  %2532 = mul nsw i32 59, %2531
  %2533 = add nsw i32 %2530, %2532
  %2534 = sext i32 %2533 to i64
  %2535 = getelementptr inbounds double, ptr %2529, i64 %2534
  %2536 = load double, ptr %2535, align 8, !tbaa !11
  %2537 = call double @llvm.fmuladd.f64(double 0x3C96A09E667F3BCC, double %2536, double %2528)
  %2538 = load ptr, ptr %7, align 8, !tbaa !9
  %2539 = load i32, ptr %12, align 4, !tbaa !5
  %2540 = load i32, ptr %8, align 4, !tbaa !5
  %2541 = mul nsw i32 60, %2540
  %2542 = add nsw i32 %2539, %2541
  %2543 = sext i32 %2542 to i64
  %2544 = getelementptr inbounds double, ptr %2538, i64 %2543
  %2545 = load double, ptr %2544, align 8, !tbaa !11
  %2546 = call double @llvm.fmuladd.f64(double 0x3C60F876CCDF6CD9, double %2545, double %2537)
  %2547 = load ptr, ptr %7, align 8, !tbaa !9
  %2548 = load i32, ptr %12, align 4, !tbaa !5
  %2549 = load i32, ptr %8, align 4, !tbaa !5
  %2550 = mul nsw i32 61, %2549
  %2551 = add nsw i32 %2548, %2550
  %2552 = sext i32 %2551 to i64
  %2553 = getelementptr inbounds double, ptr %2547, i64 %2552
  %2554 = load double, ptr %2553, align 8, !tbaa !11
  %2555 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %2554, double %2546)
  %2556 = load ptr, ptr %7, align 8, !tbaa !9
  %2557 = load i32, ptr %12, align 4, !tbaa !5
  %2558 = load i32, ptr %8, align 4, !tbaa !5
  %2559 = mul nsw i32 62, %2558
  %2560 = add nsw i32 %2557, %2559
  %2561 = sext i32 %2560 to i64
  %2562 = getelementptr inbounds double, ptr %2556, i64 %2561
  %2563 = load double, ptr %2562, align 8, !tbaa !11
  %2564 = call double @llvm.fmuladd.f64(double 0xBCA6A09E667F3BCC, double %2563, double %2555)
  %2565 = load ptr, ptr %7, align 8, !tbaa !9
  %2566 = load i32, ptr %12, align 4, !tbaa !5
  %2567 = load i32, ptr %8, align 4, !tbaa !5
  %2568 = mul nsw i32 63, %2567
  %2569 = add nsw i32 %2566, %2568
  %2570 = sext i32 %2569 to i64
  %2571 = getelementptr inbounds double, ptr %2565, i64 %2570
  %2572 = load double, ptr %2571, align 8, !tbaa !11
  %2573 = call double @llvm.fmuladd.f64(double 0xBCA6A09E667F3BCC, double %2572, double %2564)
  %2574 = load ptr, ptr %7, align 8, !tbaa !9
  %2575 = load i32, ptr %12, align 4, !tbaa !5
  %2576 = load i32, ptr %8, align 4, !tbaa !5
  %2577 = mul nsw i32 64, %2576
  %2578 = add nsw i32 %2575, %2577
  %2579 = sext i32 %2578 to i64
  %2580 = getelementptr inbounds double, ptr %2574, i64 %2579
  %2581 = load double, ptr %2580, align 8, !tbaa !11
  %2582 = call double @llvm.fmuladd.f64(double 0x3C6F1CD9CCEEF238, double %2581, double %2573)
  %2583 = load ptr, ptr %7, align 8, !tbaa !9
  %2584 = load i32, ptr %12, align 4, !tbaa !5
  %2585 = load i32, ptr %8, align 4, !tbaa !5
  %2586 = mul nsw i32 65, %2585
  %2587 = add nsw i32 %2584, %2586
  %2588 = sext i32 %2587 to i64
  %2589 = getelementptr inbounds double, ptr %2583, i64 %2588
  %2590 = load double, ptr %2589, align 8, !tbaa !11
  %2591 = call double @llvm.fmuladd.f64(double 0x3C8974B2334F2346, double %2590, double %2582)
  %2592 = load ptr, ptr %7, align 8, !tbaa !9
  %2593 = load i32, ptr %12, align 4, !tbaa !5
  %2594 = load i32, ptr %8, align 4, !tbaa !5
  %2595 = mul nsw i32 66, %2594
  %2596 = add nsw i32 %2593, %2595
  %2597 = sext i32 %2596 to i64
  %2598 = getelementptr inbounds double, ptr %2592, i64 %2597
  %2599 = load double, ptr %2598, align 8, !tbaa !11
  %2600 = call double @llvm.fmuladd.f64(double 0xBCAADEBC19B71703, double %2599, double %2591)
  %2601 = load ptr, ptr %7, align 8, !tbaa !9
  %2602 = load i32, ptr %12, align 4, !tbaa !5
  %2603 = load i32, ptr %8, align 4, !tbaa !5
  %2604 = mul nsw i32 67, %2603
  %2605 = add nsw i32 %2602, %2604
  %2606 = sext i32 %2605 to i64
  %2607 = getelementptr inbounds double, ptr %2601, i64 %2606
  %2608 = load double, ptr %2607, align 8, !tbaa !11
  %2609 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %2608, double %2600)
  store double %2609, ptr %11, align 8, !tbaa !11
  %2610 = load double, ptr %11, align 8, !tbaa !11
  %2611 = load ptr, ptr %9, align 8, !tbaa !9
  %2612 = load i32, ptr %12, align 4, !tbaa !5
  %2613 = load i32, ptr %10, align 4, !tbaa !5
  %2614 = mul nsw i32 8, %2613
  %2615 = add nsw i32 %2612, %2614
  %2616 = sext i32 %2615 to i64
  %2617 = getelementptr inbounds double, ptr %2611, i64 %2616
  %2618 = load double, ptr %2617, align 8, !tbaa !11
  %2619 = fadd double %2618, %2610
  store double %2619, ptr %2617, align 8, !tbaa !11
  %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 36, %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 = load ptr, ptr %7, align 8, !tbaa !9
  %2629 = load i32, ptr %12, align 4, !tbaa !5
  %2630 = load i32, ptr %8, align 4, !tbaa !5
  %2631 = mul nsw i32 37, %2630
  %2632 = add nsw i32 %2629, %2631
  %2633 = sext i32 %2632 to i64
  %2634 = getelementptr inbounds double, ptr %2628, i64 %2633
  %2635 = load double, ptr %2634, align 8, !tbaa !11
  %2636 = fmul double 0xBFB4C23AD63BEF7C, %2635
  %2637 = call double @llvm.fmuladd.f64(double 0xBFAC37F3CCE9FD85, double %2627, double %2636)
  %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 38, %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 0x3FEFAD7976B5DE10, 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 39, %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 0x3FF043C98657E80E, 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 40, %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 0xBC89FFFFFFFFFFFF, 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 41, %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 0xBC94000000000000, 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 43, %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 0xBCA0000000000002, 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 44, %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 0xBC67FFFFFFFFFFFE, 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 45, %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 0x3C94000000000000, 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 46, %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 0x3CB0000000000000, 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 47, %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 0x3CB0000000000000, 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 48, %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 0xBC76000000000001, 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 49, %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 0xBC92000000000000, 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 50, %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 0x3CB3000000000000, 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 51, %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 0xBC7FFFFFFFFFFFFF, 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 52, %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 0xBFB8DF388696F557, 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 53, %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 0x3FD0C7817D9C3121, 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 54, %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 0x4007001BD846D0A7, 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 55, %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 0x3FD08C54FF1019F7, 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 56, %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 0xBC7F1CD9CCEEF238, 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 57, %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 0x3C80F876CCDF6CD9, 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 58, %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 0x3C9C48C6001F0ABF, 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 59, %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 0x3C86A09E667F3BCC, 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 60, %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 0xBC6C48C6001F0ABE, 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 61, %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 0x3C9974B2334F2346, 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 62, %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 0x3CBADEBC19B71701, 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 63, %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 0x3C96A09E667F3BCC, 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 64, %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 0xBC50F876CCDF6CD8, 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 65, %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 0x3CA04371D9AB72FA, double %2879, double %2871)
  %2881 = load ptr, ptr %7, align 8, !tbaa !9
  %2882 = load i32, ptr %12, align 4, !tbaa !5
  %2883 = load i32, ptr %8, align 4, !tbaa !5
  %2884 = mul nsw i32 66, %2883
  %2885 = add nsw i32 %2882, %2884
  %2886 = sext i32 %2885 to i64
  %2887 = getelementptr inbounds double, ptr %2881, i64 %2886
  %2888 = load double, ptr %2887, align 8, !tbaa !11
  %2889 = call double @llvm.fmuladd.f64(double 0x3CBADEBC19B71701, double %2888, double %2880)
  %2890 = load ptr, ptr %7, align 8, !tbaa !9
  %2891 = load i32, ptr %12, align 4, !tbaa !5
  %2892 = load i32, ptr %8, align 4, !tbaa !5
  %2893 = mul nsw i32 67, %2892
  %2894 = add nsw i32 %2891, %2893
  %2895 = sext i32 %2894 to i64
  %2896 = getelementptr inbounds double, ptr %2890, i64 %2895
  %2897 = load double, ptr %2896, align 8, !tbaa !11
  %2898 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %2897, double %2889)
  store double %2898, ptr %11, align 8, !tbaa !11
  %2899 = load double, ptr %11, align 8, !tbaa !11
  %2900 = load ptr, ptr %9, align 8, !tbaa !9
  %2901 = load i32, ptr %12, align 4, !tbaa !5
  %2902 = load i32, ptr %10, align 4, !tbaa !5
  %2903 = mul nsw i32 9, %2902
  %2904 = add nsw i32 %2901, %2903
  %2905 = sext i32 %2904 to i64
  %2906 = getelementptr inbounds double, ptr %2900, i64 %2905
  %2907 = load double, ptr %2906, align 8, !tbaa !11
  %2908 = fadd double %2907, %2899
  store double %2908, ptr %2906, align 8, !tbaa !11
  %2909 = load ptr, ptr %7, align 8, !tbaa !9
  %2910 = load i32, ptr %12, align 4, !tbaa !5
  %2911 = load i32, ptr %8, align 4, !tbaa !5
  %2912 = mul nsw i32 36, %2911
  %2913 = add nsw i32 %2910, %2912
  %2914 = sext i32 %2913 to i64
  %2915 = getelementptr inbounds double, ptr %2909, i64 %2914
  %2916 = load double, ptr %2915, align 8, !tbaa !11
  %2917 = load ptr, ptr %7, align 8, !tbaa !9
  %2918 = load i32, ptr %12, align 4, !tbaa !5
  %2919 = load i32, ptr %8, align 4, !tbaa !5
  %2920 = mul nsw i32 37, %2919
  %2921 = add nsw i32 %2918, %2920
  %2922 = sext i32 %2921 to i64
  %2923 = getelementptr inbounds double, ptr %2917, i64 %2922
  %2924 = load double, ptr %2923, align 8, !tbaa !11
  %2925 = fmul double 0xBC93000000000000, %2924
  %2926 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %2916, double %2925)
  %2927 = load ptr, ptr %7, align 8, !tbaa !9
  %2928 = load i32, ptr %12, align 4, !tbaa !5
  %2929 = load i32, ptr %8, align 4, !tbaa !5
  %2930 = mul nsw i32 38, %2929
  %2931 = add nsw i32 %2928, %2930
  %2932 = sext i32 %2931 to i64
  %2933 = getelementptr inbounds double, ptr %2927, i64 %2932
  %2934 = load double, ptr %2933, align 8, !tbaa !11
  %2935 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %2934, double %2926)
  %2936 = load ptr, ptr %7, align 8, !tbaa !9
  %2937 = load i32, ptr %12, align 4, !tbaa !5
  %2938 = load i32, ptr %8, align 4, !tbaa !5
  %2939 = mul nsw i32 39, %2938
  %2940 = add nsw i32 %2937, %2939
  %2941 = sext i32 %2940 to i64
  %2942 = getelementptr inbounds double, ptr %2936, i64 %2941
  %2943 = load double, ptr %2942, align 8, !tbaa !11
  %2944 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %2943, double %2935)
  %2945 = load ptr, ptr %7, align 8, !tbaa !9
  %2946 = load i32, ptr %12, align 4, !tbaa !5
  %2947 = load i32, ptr %8, align 4, !tbaa !5
  %2948 = mul nsw i32 40, %2947
  %2949 = add nsw i32 %2946, %2948
  %2950 = sext i32 %2949 to i64
  %2951 = getelementptr inbounds double, ptr %2945, i64 %2950
  %2952 = load double, ptr %2951, align 8, !tbaa !11
  %2953 = call double @llvm.fmuladd.f64(double 0x3FA789B66AF4F45E, double %2952, double %2944)
  %2954 = load ptr, ptr %7, align 8, !tbaa !9
  %2955 = load i32, ptr %12, align 4, !tbaa !5
  %2956 = load i32, ptr %8, align 4, !tbaa !5
  %2957 = mul nsw i32 41, %2956
  %2958 = add nsw i32 %2955, %2957
  %2959 = sext i32 %2958 to i64
  %2960 = getelementptr inbounds double, ptr %2954, i64 %2959
  %2961 = load double, ptr %2960, align 8, !tbaa !11
  %2962 = call double @llvm.fmuladd.f64(double 0x3FEC2894019C8AD1, double %2961, double %2953)
  %2963 = load ptr, ptr %7, align 8, !tbaa !9
  %2964 = load i32, ptr %12, align 4, !tbaa !5
  %2965 = load i32, ptr %8, align 4, !tbaa !5
  %2966 = mul nsw i32 42, %2965
  %2967 = add nsw i32 %2964, %2966
  %2968 = sext i32 %2967 to i64
  %2969 = getelementptr inbounds double, ptr %2963, i64 %2968
  %2970 = load double, ptr %2969, align 8, !tbaa !11
  %2971 = call double @llvm.fmuladd.f64(double 0x3FEC2894019C8AC2, double %2970, double %2962)
  %2972 = load ptr, ptr %7, align 8, !tbaa !9
  %2973 = load i32, ptr %12, align 4, !tbaa !5
  %2974 = load i32, ptr %8, align 4, !tbaa !5
  %2975 = mul nsw i32 43, %2974
  %2976 = add nsw i32 %2973, %2975
  %2977 = sext i32 %2976 to i64
  %2978 = getelementptr inbounds double, ptr %2972, i64 %2977
  %2979 = load double, ptr %2978, align 8, !tbaa !11
  %2980 = call double @llvm.fmuladd.f64(double 0x3FA789B66AF4F55B, double %2979, double %2971)
  %2981 = load ptr, ptr %7, align 8, !tbaa !9
  %2982 = load i32, ptr %12, align 4, !tbaa !5
  %2983 = load i32, ptr %8, align 4, !tbaa !5
  %2984 = mul nsw i32 44, %2983
  %2985 = add nsw i32 %2982, %2984
  %2986 = sext i32 %2985 to i64
  %2987 = getelementptr inbounds double, ptr %2981, i64 %2986
  %2988 = load double, ptr %2987, align 8, !tbaa !11
  %2989 = call double @llvm.fmuladd.f64(double 0x3C6C000000000000, double %2988, double %2980)
  %2990 = load ptr, ptr %7, align 8, !tbaa !9
  %2991 = load i32, ptr %12, align 4, !tbaa !5
  %2992 = load i32, ptr %8, align 4, !tbaa !5
  %2993 = mul nsw i32 45, %2992
  %2994 = add nsw i32 %2991, %2993
  %2995 = sext i32 %2994 to i64
  %2996 = getelementptr inbounds double, ptr %2990, i64 %2995
  %2997 = load double, ptr %2996, align 8, !tbaa !11
  %2998 = call double @llvm.fmuladd.f64(double 0x3C9A000000000000, double %2997, double %2989)
  %2999 = load ptr, ptr %7, align 8, !tbaa !9
  %3000 = load i32, ptr %12, align 4, !tbaa !5
  %3001 = load i32, ptr %8, align 4, !tbaa !5
  %3002 = mul nsw i32 46, %3001
  %3003 = add nsw i32 %3000, %3002
  %3004 = sext i32 %3003 to i64
  %3005 = getelementptr inbounds double, ptr %2999, i64 %3004
  %3006 = load double, ptr %3005, align 8, !tbaa !11
  %3007 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %3006, double %2998)
  %3008 = load ptr, ptr %7, align 8, !tbaa !9
  %3009 = load i32, ptr %12, align 4, !tbaa !5
  %3010 = load i32, ptr %8, align 4, !tbaa !5
  %3011 = mul nsw i32 47, %3010
  %3012 = add nsw i32 %3009, %3011
  %3013 = sext i32 %3012 to i64
  %3014 = getelementptr inbounds double, ptr %3008, i64 %3013
  %3015 = load double, ptr %3014, align 8, !tbaa !11
  %3016 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %3015, double %3007)
  %3017 = load ptr, ptr %7, align 8, !tbaa !9
  %3018 = load i32, ptr %12, align 4, !tbaa !5
  %3019 = load i32, ptr %8, align 4, !tbaa !5
  %3020 = mul nsw i32 48, %3019
  %3021 = add nsw i32 %3018, %3020
  %3022 = sext i32 %3021 to i64
  %3023 = getelementptr inbounds double, ptr %3017, i64 %3022
  %3024 = load double, ptr %3023, align 8, !tbaa !11
  %3025 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %3024, double %3016)
  %3026 = load ptr, ptr %7, align 8, !tbaa !9
  %3027 = load i32, ptr %12, align 4, !tbaa !5
  %3028 = load i32, ptr %8, align 4, !tbaa !5
  %3029 = mul nsw i32 49, %3028
  %3030 = add nsw i32 %3027, %3029
  %3031 = sext i32 %3030 to i64
  %3032 = getelementptr inbounds double, ptr %3026, i64 %3031
  %3033 = load double, ptr %3032, align 8, !tbaa !11
  %3034 = call double @llvm.fmuladd.f64(double 0xBC89FFFFFFFFFFFF, double %3033, double %3025)
  %3035 = load ptr, ptr %7, align 8, !tbaa !9
  %3036 = load i32, ptr %12, align 4, !tbaa !5
  %3037 = load i32, ptr %8, align 4, !tbaa !5
  %3038 = mul nsw i32 50, %3037
  %3039 = add nsw i32 %3036, %3038
  %3040 = sext i32 %3039 to i64
  %3041 = getelementptr inbounds double, ptr %3035, i64 %3040
  %3042 = load double, ptr %3041, align 8, !tbaa !11
  %3043 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %3042, double %3034)
  %3044 = load ptr, ptr %7, align 8, !tbaa !9
  %3045 = load i32, ptr %12, align 4, !tbaa !5
  %3046 = load i32, ptr %8, align 4, !tbaa !5
  %3047 = mul nsw i32 51, %3046
  %3048 = add nsw i32 %3045, %3047
  %3049 = sext i32 %3048 to i64
  %3050 = getelementptr inbounds double, ptr %3044, i64 %3049
  %3051 = load double, ptr %3050, align 8, !tbaa !11
  %3052 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %3051, double %3043)
  %3053 = load ptr, ptr %7, align 8, !tbaa !9
  %3054 = load i32, ptr %12, align 4, !tbaa !5
  %3055 = load i32, ptr %8, align 4, !tbaa !5
  %3056 = mul nsw i32 52, %3055
  %3057 = add nsw i32 %3054, %3056
  %3058 = sext i32 %3057 to i64
  %3059 = getelementptr inbounds double, ptr %3053, i64 %3058
  %3060 = load double, ptr %3059, align 8, !tbaa !11
  %3061 = call double @llvm.fmuladd.f64(double 0xBC84818F8CE34E32, double %3060, double %3052)
  %3062 = load ptr, ptr %7, align 8, !tbaa !9
  %3063 = load i32, ptr %12, align 4, !tbaa !5
  %3064 = load i32, ptr %8, align 4, !tbaa !5
  %3065 = mul nsw i32 53, %3064
  %3066 = add nsw i32 %3063, %3065
  %3067 = sext i32 %3066 to i64
  %3068 = getelementptr inbounds double, ptr %3062, i64 %3067
  %3069 = load double, ptr %3068, align 8, !tbaa !11
  %3070 = call double @llvm.fmuladd.f64(double 0x3C6C48C6001F0ABE, double %3069, double %3061)
  %3071 = load ptr, ptr %7, align 8, !tbaa !9
  %3072 = load i32, ptr %12, align 4, !tbaa !5
  %3073 = load i32, ptr %8, align 4, !tbaa !5
  %3074 = mul nsw i32 54, %3073
  %3075 = add nsw i32 %3072, %3074
  %3076 = sext i32 %3075 to i64
  %3077 = getelementptr inbounds double, ptr %3071, i64 %3076
  %3078 = load double, ptr %3077, align 8, !tbaa !11
  %3079 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %3078, double %3070)
  %3080 = load ptr, ptr %7, align 8, !tbaa !9
  %3081 = load i32, ptr %12, align 4, !tbaa !5
  %3082 = load i32, ptr %8, align 4, !tbaa !5
  %3083 = mul nsw i32 55, %3082
  %3084 = add nsw i32 %3081, %3083
  %3085 = sext i32 %3084 to i64
  %3086 = getelementptr inbounds double, ptr %3080, i64 %3085
  %3087 = load double, ptr %3086, align 8, !tbaa !11
  %3088 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %3087, double %3079)
  %3089 = load ptr, ptr %7, align 8, !tbaa !9
  %3090 = load i32, ptr %12, align 4, !tbaa !5
  %3091 = load i32, ptr %8, align 4, !tbaa !5
  %3092 = mul nsw i32 56, %3091
  %3093 = add nsw i32 %3090, %3092
  %3094 = sext i32 %3093 to i64
  %3095 = getelementptr inbounds double, ptr %3089, i64 %3094
  %3096 = load double, ptr %3095, align 8, !tbaa !11
  %3097 = call double @llvm.fmuladd.f64(double 0xBFA0A4D27CF86DCE, double %3096, double %3088)
  %3098 = load ptr, ptr %7, align 8, !tbaa !9
  %3099 = load i32, ptr %12, align 4, !tbaa !5
  %3100 = load i32, ptr %8, align 4, !tbaa !5
  %3101 = mul nsw i32 57, %3100
  %3102 = add nsw i32 %3099, %3101
  %3103 = sext i32 %3102 to i64
  %3104 = getelementptr inbounds double, ptr %3098, i64 %3103
  %3105 = load double, ptr %3104, align 8, !tbaa !11
  %3106 = call double @llvm.fmuladd.f64(double 0xBFE3E93C07AFC382, double %3105, double %3097)
  %3107 = load ptr, ptr %7, align 8, !tbaa !9
  %3108 = load i32, ptr %12, align 4, !tbaa !5
  %3109 = load i32, ptr %8, align 4, !tbaa !5
  %3110 = mul nsw i32 58, %3109
  %3111 = add nsw i32 %3108, %3110
  %3112 = sext i32 %3111 to i64
  %3113 = getelementptr inbounds double, ptr %3107, i64 %3112
  %3114 = load double, ptr %3113, align 8, !tbaa !11
  %3115 = call double @llvm.fmuladd.f64(double 0xBFE3E93C07AFC37F, double %3114, double %3106)
  %3116 = load ptr, ptr %7, align 8, !tbaa !9
  %3117 = load i32, ptr %12, align 4, !tbaa !5
  %3118 = load i32, ptr %8, align 4, !tbaa !5
  %3119 = mul nsw i32 59, %3118
  %3120 = add nsw i32 %3117, %3119
  %3121 = sext i32 %3120 to i64
  %3122 = getelementptr inbounds double, ptr %3116, i64 %3121
  %3123 = load double, ptr %3122, align 8, !tbaa !11
  %3124 = call double @llvm.fmuladd.f64(double 0xBFA0A4D27CF86DB4, double %3123, double %3115)
  %3125 = load ptr, ptr %7, align 8, !tbaa !9
  %3126 = load i32, ptr %12, align 4, !tbaa !5
  %3127 = load i32, ptr %8, align 4, !tbaa !5
  %3128 = mul nsw i32 60, %3127
  %3129 = add nsw i32 %3126, %3128
  %3130 = sext i32 %3129 to i64
  %3131 = getelementptr inbounds double, ptr %3125, i64 %3130
  %3132 = load double, ptr %3131, align 8, !tbaa !11
  %3133 = call double @llvm.fmuladd.f64(double 0xBC9207FE39AD63A7, double %3132, double %3124)
  %3134 = load ptr, ptr %7, align 8, !tbaa !9
  %3135 = load i32, ptr %12, align 4, !tbaa !5
  %3136 = load i32, ptr %8, align 4, !tbaa !5
  %3137 = mul nsw i32 61, %3136
  %3138 = add nsw i32 %3135, %3137
  %3139 = sext i32 %3138 to i64
  %3140 = getelementptr inbounds double, ptr %3134, i64 %3139
  %3141 = load double, ptr %3140, align 8, !tbaa !11
  %3142 = call double @llvm.fmuladd.f64(double 0xBC83CC8A99AF5451, double %3141, double %3133)
  %3143 = load ptr, ptr %7, align 8, !tbaa !9
  %3144 = load i32, ptr %12, align 4, !tbaa !5
  %3145 = load i32, ptr %8, align 4, !tbaa !5
  %3146 = mul nsw i32 63, %3145
  %3147 = add nsw i32 %3144, %3146
  %3148 = sext i32 %3147 to i64
  %3149 = getelementptr inbounds double, ptr %3143, i64 %3148
  %3150 = load double, ptr %3149, align 8, !tbaa !11
  %3151 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %3150, double %3142)
  %3152 = load ptr, ptr %7, align 8, !tbaa !9
  %3153 = load i32, ptr %12, align 4, !tbaa !5
  %3154 = load i32, ptr %8, align 4, !tbaa !5
  %3155 = mul nsw i32 64, %3154
  %3156 = add nsw i32 %3153, %3155
  %3157 = sext i32 %3156 to i64
  %3158 = getelementptr inbounds double, ptr %3152, i64 %3157
  %3159 = load double, ptr %3158, align 8, !tbaa !11
  %3160 = call double @llvm.fmuladd.f64(double 0xBC50F876CCDF6CD8, double %3159, double %3151)
  %3161 = load ptr, ptr %7, align 8, !tbaa !9
  %3162 = load i32, ptr %12, align 4, !tbaa !5
  %3163 = load i32, ptr %8, align 4, !tbaa !5
  %3164 = mul nsw i32 65, %3163
  %3165 = add nsw i32 %3162, %3164
  %3166 = sext i32 %3165 to i64
  %3167 = getelementptr inbounds double, ptr %3161, i64 %3166
  %3168 = load double, ptr %3167, align 8, !tbaa !11
  %3169 = call double @llvm.fmuladd.f64(double 0x3C7F1CD9CCEEF238, double %3168, double %3160)
  %3170 = load ptr, ptr %7, align 8, !tbaa !9
  %3171 = load i32, ptr %12, align 4, !tbaa !5
  %3172 = load i32, ptr %8, align 4, !tbaa !5
  %3173 = mul nsw i32 66, %3172
  %3174 = add nsw i32 %3171, %3173
  %3175 = sext i32 %3174 to i64
  %3176 = getelementptr inbounds double, ptr %3170, i64 %3175
  %3177 = load double, ptr %3176, align 8, !tbaa !11
  %3178 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %3177, double %3169)
  %3179 = load ptr, ptr %7, align 8, !tbaa !9
  %3180 = load i32, ptr %12, align 4, !tbaa !5
  %3181 = load i32, ptr %8, align 4, !tbaa !5
  %3182 = mul nsw i32 67, %3181
  %3183 = add nsw i32 %3180, %3182
  %3184 = sext i32 %3183 to i64
  %3185 = getelementptr inbounds double, ptr %3179, i64 %3184
  %3186 = load double, ptr %3185, align 8, !tbaa !11
  %3187 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %3186, double %3178)
  store double %3187, ptr %11, align 8, !tbaa !11
  %3188 = load double, ptr %11, align 8, !tbaa !11
  %3189 = load ptr, ptr %9, align 8, !tbaa !9
  %3190 = load i32, ptr %12, align 4, !tbaa !5
  %3191 = load i32, ptr %10, align 4, !tbaa !5
  %3192 = mul nsw i32 10, %3191
  %3193 = add nsw i32 %3190, %3192
  %3194 = sext i32 %3193 to i64
  %3195 = getelementptr inbounds double, ptr %3189, i64 %3194
  %3196 = load double, ptr %3195, align 8, !tbaa !11
  %3197 = fadd double %3196, %3188
  store double %3197, ptr %3195, align 8, !tbaa !11
  %3198 = load ptr, ptr %7, align 8, !tbaa !9
  %3199 = load i32, ptr %12, align 4, !tbaa !5
  %3200 = load i32, ptr %8, align 4, !tbaa !5
  %3201 = mul nsw i32 36, %3200
  %3202 = add nsw i32 %3199, %3201
  %3203 = sext i32 %3202 to i64
  %3204 = getelementptr inbounds double, ptr %3198, i64 %3203
  %3205 = load double, ptr %3204, align 8, !tbaa !11
  %3206 = load ptr, ptr %7, align 8, !tbaa !9
  %3207 = load i32, ptr %12, align 4, !tbaa !5
  %3208 = load i32, ptr %8, align 4, !tbaa !5
  %3209 = mul nsw i32 37, %3208
  %3210 = add nsw i32 %3207, %3209
  %3211 = sext i32 %3210 to i64
  %3212 = getelementptr inbounds double, ptr %3206, i64 %3211
  %3213 = load double, ptr %3212, align 8, !tbaa !11
  %3214 = fmul double 0xBC90000000000000, %3213
  %3215 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %3205, double %3214)
  %3216 = load ptr, ptr %7, align 8, !tbaa !9
  %3217 = load i32, ptr %12, align 4, !tbaa !5
  %3218 = load i32, ptr %8, align 4, !tbaa !5
  %3219 = mul nsw i32 38, %3218
  %3220 = add nsw i32 %3217, %3219
  %3221 = sext i32 %3220 to i64
  %3222 = getelementptr inbounds double, ptr %3216, i64 %3221
  %3223 = load double, ptr %3222, align 8, !tbaa !11
  %3224 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %3223, double %3215)
  %3225 = load ptr, ptr %7, align 8, !tbaa !9
  %3226 = load i32, ptr %12, align 4, !tbaa !5
  %3227 = load i32, ptr %8, align 4, !tbaa !5
  %3228 = mul nsw i32 39, %3227
  %3229 = add nsw i32 %3226, %3228
  %3230 = sext i32 %3229 to i64
  %3231 = getelementptr inbounds double, ptr %3225, i64 %3230
  %3232 = load double, ptr %3231, align 8, !tbaa !11
  %3233 = call double @llvm.fmuladd.f64(double 0xBCB0000000000000, double %3232, double %3224)
  %3234 = load ptr, ptr %7, align 8, !tbaa !9
  %3235 = load i32, ptr %12, align 4, !tbaa !5
  %3236 = load i32, ptr %8, align 4, !tbaa !5
  %3237 = mul nsw i32 40, %3236
  %3238 = add nsw i32 %3235, %3237
  %3239 = sext i32 %3238 to i64
  %3240 = getelementptr inbounds double, ptr %3234, i64 %3239
  %3241 = load double, ptr %3240, align 8, !tbaa !11
  %3242 = call double @llvm.fmuladd.f64(double 0xBFACD49071EC5F4A, double %3241, double %3233)
  %3243 = load ptr, ptr %7, align 8, !tbaa !9
  %3244 = load i32, ptr %12, align 4, !tbaa !5
  %3245 = load i32, ptr %8, align 4, !tbaa !5
  %3246 = mul nsw i32 41, %3245
  %3247 = add nsw i32 %3244, %3246
  %3248 = sext i32 %3247 to i64
  %3249 = getelementptr inbounds double, ptr %3243, i64 %3248
  %3250 = load double, ptr %3249, align 8, !tbaa !11
  %3251 = call double @llvm.fmuladd.f64(double 0x3FCEFDC8894D082A, double %3250, double %3242)
  %3252 = load ptr, ptr %7, align 8, !tbaa !9
  %3253 = load i32, ptr %12, align 4, !tbaa !5
  %3254 = load i32, ptr %8, align 4, !tbaa !5
  %3255 = mul nsw i32 42, %3254
  %3256 = add nsw i32 %3253, %3255
  %3257 = sext i32 %3256 to i64
  %3258 = getelementptr inbounds double, ptr %3252, i64 %3257
  %3259 = load double, ptr %3258, align 8, !tbaa !11
  %3260 = call double @llvm.fmuladd.f64(double 0xBFDD2EB9CCB3BDEB, double %3259, double %3251)
  %3261 = load ptr, ptr %7, align 8, !tbaa !9
  %3262 = load i32, ptr %12, align 4, !tbaa !5
  %3263 = load i32, ptr %8, align 4, !tbaa !5
  %3264 = mul nsw i32 43, %3263
  %3265 = add nsw i32 %3262, %3264
  %3266 = sext i32 %3265 to i64
  %3267 = getelementptr inbounds double, ptr %3261, i64 %3266
  %3268 = load double, ptr %3267, align 8, !tbaa !11
  %3269 = call double @llvm.fmuladd.f64(double 0xC01569E165D79419, double %3268, double %3260)
  %3270 = load ptr, ptr %7, align 8, !tbaa !9
  %3271 = load i32, ptr %12, align 4, !tbaa !5
  %3272 = load i32, ptr %8, align 4, !tbaa !5
  %3273 = mul nsw i32 44, %3272
  %3274 = add nsw i32 %3271, %3273
  %3275 = sext i32 %3274 to i64
  %3276 = getelementptr inbounds double, ptr %3270, i64 %3275
  %3277 = load double, ptr %3276, align 8, !tbaa !11
  %3278 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %3277, double %3269)
  %3279 = load ptr, ptr %7, align 8, !tbaa !9
  %3280 = load i32, ptr %12, align 4, !tbaa !5
  %3281 = load i32, ptr %8, align 4, !tbaa !5
  %3282 = mul nsw i32 46, %3281
  %3283 = add nsw i32 %3280, %3282
  %3284 = sext i32 %3283 to i64
  %3285 = getelementptr inbounds double, ptr %3279, i64 %3284
  %3286 = load double, ptr %3285, align 8, !tbaa !11
  %3287 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %3286, double %3278)
  %3288 = load ptr, ptr %7, align 8, !tbaa !9
  %3289 = load i32, ptr %12, align 4, !tbaa !5
  %3290 = load i32, ptr %8, align 4, !tbaa !5
  %3291 = mul nsw i32 47, %3290
  %3292 = add nsw i32 %3289, %3291
  %3293 = sext i32 %3292 to i64
  %3294 = getelementptr inbounds double, ptr %3288, i64 %3293
  %3295 = load double, ptr %3294, align 8, !tbaa !11
  %3296 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %3295, double %3287)
  %3297 = load ptr, ptr %7, align 8, !tbaa !9
  %3298 = load i32, ptr %12, align 4, !tbaa !5
  %3299 = load i32, ptr %8, align 4, !tbaa !5
  %3300 = mul nsw i32 48, %3299
  %3301 = add nsw i32 %3298, %3300
  %3302 = sext i32 %3301 to i64
  %3303 = getelementptr inbounds double, ptr %3297, i64 %3302
  %3304 = load double, ptr %3303, align 8, !tbaa !11
  %3305 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %3304, double %3296)
  %3306 = load ptr, ptr %7, align 8, !tbaa !9
  %3307 = load i32, ptr %12, align 4, !tbaa !5
  %3308 = load i32, ptr %8, align 4, !tbaa !5
  %3309 = mul nsw i32 49, %3308
  %3310 = add nsw i32 %3307, %3309
  %3311 = sext i32 %3310 to i64
  %3312 = getelementptr inbounds double, ptr %3306, i64 %3311
  %3313 = load double, ptr %3312, align 8, !tbaa !11
  %3314 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %3313, double %3305)
  %3315 = load ptr, ptr %7, align 8, !tbaa !9
  %3316 = load i32, ptr %12, align 4, !tbaa !5
  %3317 = load i32, ptr %8, align 4, !tbaa !5
  %3318 = mul nsw i32 50, %3317
  %3319 = add nsw i32 %3316, %3318
  %3320 = sext i32 %3319 to i64
  %3321 = getelementptr inbounds double, ptr %3315, i64 %3320
  %3322 = load double, ptr %3321, align 8, !tbaa !11
  %3323 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %3322, double %3314)
  %3324 = load ptr, ptr %7, align 8, !tbaa !9
  %3325 = load i32, ptr %12, align 4, !tbaa !5
  %3326 = load i32, ptr %8, align 4, !tbaa !5
  %3327 = mul nsw i32 51, %3326
  %3328 = add nsw i32 %3325, %3327
  %3329 = sext i32 %3328 to i64
  %3330 = getelementptr inbounds double, ptr %3324, i64 %3329
  %3331 = load double, ptr %3330, align 8, !tbaa !11
  %3332 = call double @llvm.fmuladd.f64(double 0xBCB0000000000000, double %3331, double %3323)
  %3333 = load ptr, ptr %7, align 8, !tbaa !9
  %3334 = load i32, ptr %12, align 4, !tbaa !5
  %3335 = load i32, ptr %8, align 4, !tbaa !5
  %3336 = mul nsw i32 52, %3335
  %3337 = add nsw i32 %3334, %3336
  %3338 = sext i32 %3337 to i64
  %3339 = getelementptr inbounds double, ptr %3333, i64 %3338
  %3340 = load double, ptr %3339, align 8, !tbaa !11
  %3341 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %3340, double %3332)
  %3342 = load ptr, ptr %7, align 8, !tbaa !9
  %3343 = load i32, ptr %12, align 4, !tbaa !5
  %3344 = load i32, ptr %8, align 4, !tbaa !5
  %3345 = mul nsw i32 53, %3344
  %3346 = add nsw i32 %3343, %3345
  %3347 = sext i32 %3346 to i64
  %3348 = getelementptr inbounds double, ptr %3342, i64 %3347
  %3349 = load double, ptr %3348, align 8, !tbaa !11
  %3350 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %3349, double %3341)
  %3351 = load ptr, ptr %7, align 8, !tbaa !9
  %3352 = load i32, ptr %12, align 4, !tbaa !5
  %3353 = load i32, ptr %8, align 4, !tbaa !5
  %3354 = mul nsw i32 54, %3353
  %3355 = add nsw i32 %3352, %3354
  %3356 = sext i32 %3355 to i64
  %3357 = getelementptr inbounds double, ptr %3351, i64 %3356
  %3358 = load double, ptr %3357, align 8, !tbaa !11
  %3359 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %3358, double %3350)
  %3360 = load ptr, ptr %7, align 8, !tbaa !9
  %3361 = load i32, ptr %12, align 4, !tbaa !5
  %3362 = load i32, ptr %8, align 4, !tbaa !5
  %3363 = mul nsw i32 55, %3362
  %3364 = add nsw i32 %3361, %3363
  %3365 = sext i32 %3364 to i64
  %3366 = getelementptr inbounds double, ptr %3360, i64 %3365
  %3367 = load double, ptr %3366, align 8, !tbaa !11
  %3368 = call double @llvm.fmuladd.f64(double 0x3CB0F876CCDF6CD8, double %3367, double %3359)
  %3369 = load ptr, ptr %7, align 8, !tbaa !9
  %3370 = load i32, ptr %12, align 4, !tbaa !5
  %3371 = load i32, ptr %8, align 4, !tbaa !5
  %3372 = mul nsw i32 56, %3371
  %3373 = add nsw i32 %3370, %3372
  %3374 = sext i32 %3373 to i64
  %3375 = getelementptr inbounds double, ptr %3369, i64 %3374
  %3376 = load double, ptr %3375, align 8, !tbaa !11
  %3377 = call double @llvm.fmuladd.f64(double 0x3FA462D8D66D7FBE, double %3376, double %3368)
  %3378 = load ptr, ptr %7, align 8, !tbaa !9
  %3379 = load i32, ptr %12, align 4, !tbaa !5
  %3380 = load i32, ptr %8, align 4, !tbaa !5
  %3381 = mul nsw i32 57, %3380
  %3382 = add nsw i32 %3379, %3381
  %3383 = sext i32 %3382 to i64
  %3384 = getelementptr inbounds double, ptr %3378, i64 %3383
  %3385 = load double, ptr %3384, align 8, !tbaa !11
  %3386 = call double @llvm.fmuladd.f64(double 0xBFC5EA083165C4F6, double %3385, double %3377)
  %3387 = load ptr, ptr %7, align 8, !tbaa !9
  %3388 = load i32, ptr %12, align 4, !tbaa !5
  %3389 = load i32, ptr %8, align 4, !tbaa !5
  %3390 = mul nsw i32 58, %3389
  %3391 = add nsw i32 %3388, %3390
  %3392 = sext i32 %3391 to i64
  %3393 = getelementptr inbounds double, ptr %3387, i64 %3392
  %3394 = load double, ptr %3393, align 8, !tbaa !11
  %3395 = call double @llvm.fmuladd.f64(double 0x3FD4A299D1E97012, double %3394, double %3386)
  %3396 = load ptr, ptr %7, align 8, !tbaa !9
  %3397 = load i32, ptr %12, align 4, !tbaa !5
  %3398 = load i32, ptr %8, align 4, !tbaa !5
  %3399 = mul nsw i32 59, %3398
  %3400 = add nsw i32 %3397, %3399
  %3401 = sext i32 %3400 to i64
  %3402 = getelementptr inbounds double, ptr %3396, i64 %3401
  %3403 = load double, ptr %3402, align 8, !tbaa !11
  %3404 = call double @llvm.fmuladd.f64(double 0x400E488CB8C1EA78, double %3403, double %3395)
  %3405 = load ptr, ptr %7, align 8, !tbaa !9
  %3406 = load i32, ptr %12, align 4, !tbaa !5
  %3407 = load i32, ptr %8, align 4, !tbaa !5
  %3408 = mul nsw i32 60, %3407
  %3409 = add nsw i32 %3406, %3408
  %3410 = sext i32 %3409 to i64
  %3411 = getelementptr inbounds double, ptr %3405, i64 %3410
  %3412 = load double, ptr %3411, align 8, !tbaa !11
  %3413 = call double @llvm.fmuladd.f64(double 0x3C70F876CCDF6CD9, double %3412, double %3404)
  %3414 = load ptr, ptr %7, align 8, !tbaa !9
  %3415 = load i32, ptr %12, align 4, !tbaa !5
  %3416 = load i32, ptr %8, align 4, !tbaa !5
  %3417 = mul nsw i32 61, %3416
  %3418 = add nsw i32 %3415, %3417
  %3419 = sext i32 %3418 to i64
  %3420 = getelementptr inbounds double, ptr %3414, i64 %3419
  %3421 = load double, ptr %3420, align 8, !tbaa !11
  %3422 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %3421, double %3413)
  %3423 = load ptr, ptr %7, align 8, !tbaa !9
  %3424 = load i32, ptr %12, align 4, !tbaa !5
  %3425 = load i32, ptr %8, align 4, !tbaa !5
  %3426 = mul nsw i32 62, %3425
  %3427 = add nsw i32 %3424, %3426
  %3428 = sext i32 %3427 to i64
  %3429 = getelementptr inbounds double, ptr %3423, i64 %3428
  %3430 = load double, ptr %3429, align 8, !tbaa !11
  %3431 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %3430, double %3422)
  %3432 = load ptr, ptr %7, align 8, !tbaa !9
  %3433 = load i32, ptr %12, align 4, !tbaa !5
  %3434 = load i32, ptr %8, align 4, !tbaa !5
  %3435 = mul nsw i32 63, %3434
  %3436 = add nsw i32 %3433, %3435
  %3437 = sext i32 %3436 to i64
  %3438 = getelementptr inbounds double, ptr %3432, i64 %3437
  %3439 = load double, ptr %3438, align 8, !tbaa !11
  %3440 = call double @llvm.fmuladd.f64(double 0xBCC3CC8A99AF5452, double %3439, double %3431)
  %3441 = load ptr, ptr %7, align 8, !tbaa !9
  %3442 = load i32, ptr %12, align 4, !tbaa !5
  %3443 = load i32, ptr %8, align 4, !tbaa !5
  %3444 = mul nsw i32 64, %3443
  %3445 = add nsw i32 %3442, %3444
  %3446 = sext i32 %3445 to i64
  %3447 = getelementptr inbounds double, ptr %3441, i64 %3446
  %3448 = load double, ptr %3447, align 8, !tbaa !11
  %3449 = call double @llvm.fmuladd.f64(double 0x3C70F876CCDF6CD9, double %3448, double %3440)
  %3450 = load ptr, ptr %7, align 8, !tbaa !9
  %3451 = load i32, ptr %12, align 4, !tbaa !5
  %3452 = load i32, ptr %8, align 4, !tbaa !5
  %3453 = mul nsw i32 65, %3452
  %3454 = add nsw i32 %3451, %3453
  %3455 = sext i32 %3454 to i64
  %3456 = getelementptr inbounds double, ptr %3450, i64 %3455
  %3457 = load double, ptr %3456, align 8, !tbaa !11
  %3458 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %3457, double %3449)
  %3459 = load ptr, ptr %7, align 8, !tbaa !9
  %3460 = load i32, ptr %12, align 4, !tbaa !5
  %3461 = load i32, ptr %8, align 4, !tbaa !5
  %3462 = mul nsw i32 66, %3461
  %3463 = add nsw i32 %3460, %3462
  %3464 = sext i32 %3463 to i64
  %3465 = getelementptr inbounds double, ptr %3459, i64 %3464
  %3466 = load double, ptr %3465, align 8, !tbaa !11
  %3467 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %3466, double %3458)
  %3468 = load ptr, ptr %7, align 8, !tbaa !9
  %3469 = load i32, ptr %12, align 4, !tbaa !5
  %3470 = load i32, ptr %8, align 4, !tbaa !5
  %3471 = mul nsw i32 67, %3470
  %3472 = add nsw i32 %3469, %3471
  %3473 = sext i32 %3472 to i64
  %3474 = getelementptr inbounds double, ptr %3468, i64 %3473
  %3475 = load double, ptr %3474, align 8, !tbaa !11
  %3476 = call double @llvm.fmuladd.f64(double 0x3C96A09E667F3BCC, double %3475, double %3467)
  store double %3476, ptr %11, align 8, !tbaa !11
  %3477 = load double, ptr %11, align 8, !tbaa !11
  %3478 = load ptr, ptr %9, align 8, !tbaa !9
  %3479 = load i32, ptr %12, align 4, !tbaa !5
  %3480 = load i32, ptr %10, align 4, !tbaa !5
  %3481 = mul nsw i32 11, %3480
  %3482 = add nsw i32 %3479, %3481
  %3483 = sext i32 %3482 to i64
  %3484 = getelementptr inbounds double, ptr %3478, i64 %3483
  %3485 = load double, ptr %3484, align 8, !tbaa !11
  %3486 = fadd double %3485, %3477
  store double %3486, ptr %3484, align 8, !tbaa !11
  %3487 = load ptr, ptr %7, align 8, !tbaa !9
  %3488 = load i32, ptr %12, align 4, !tbaa !5
  %3489 = load i32, ptr %8, align 4, !tbaa !5
  %3490 = mul nsw i32 36, %3489
  %3491 = add nsw i32 %3488, %3490
  %3492 = sext i32 %3491 to i64
  %3493 = getelementptr inbounds double, ptr %3487, i64 %3492
  %3494 = load double, ptr %3493, align 8, !tbaa !11
  %3495 = load ptr, ptr %7, align 8, !tbaa !9
  %3496 = load i32, ptr %12, align 4, !tbaa !5
  %3497 = load i32, ptr %8, align 4, !tbaa !5
  %3498 = mul nsw i32 37, %3497
  %3499 = add nsw i32 %3496, %3498
  %3500 = sext i32 %3499 to i64
  %3501 = getelementptr inbounds double, ptr %3495, i64 %3500
  %3502 = load double, ptr %3501, align 8, !tbaa !11
  %3503 = fmul double 0xBCA8000000000001, %3502
  %3504 = call double @llvm.fmuladd.f64(double 0xBC62000000000000, double %3494, double %3503)
  %3505 = load ptr, ptr %7, align 8, !tbaa !9
  %3506 = load i32, ptr %12, align 4, !tbaa !5
  %3507 = load i32, ptr %8, align 4, !tbaa !5
  %3508 = mul nsw i32 38, %3507
  %3509 = add nsw i32 %3506, %3508
  %3510 = sext i32 %3509 to i64
  %3511 = getelementptr inbounds double, ptr %3505, i64 %3510
  %3512 = load double, ptr %3511, align 8, !tbaa !11
  %3513 = call double @llvm.fmuladd.f64(double 0x3CA2FFFFFFFFFFFE, double %3512, double %3504)
  %3514 = load ptr, ptr %7, align 8, !tbaa !9
  %3515 = load i32, ptr %12, align 4, !tbaa !5
  %3516 = load i32, ptr %8, align 4, !tbaa !5
  %3517 = mul nsw i32 39, %3516
  %3518 = add nsw i32 %3515, %3517
  %3519 = sext i32 %3518 to i64
  %3520 = getelementptr inbounds double, ptr %3514, i64 %3519
  %3521 = load double, ptr %3520, align 8, !tbaa !11
  %3522 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %3521, double %3513)
  %3523 = load ptr, ptr %7, align 8, !tbaa !9
  %3524 = load i32, ptr %12, align 4, !tbaa !5
  %3525 = load i32, ptr %8, align 4, !tbaa !5
  %3526 = mul nsw i32 40, %3525
  %3527 = add nsw i32 %3524, %3526
  %3528 = sext i32 %3527 to i64
  %3529 = getelementptr inbounds double, ptr %3523, i64 %3528
  %3530 = load double, ptr %3529, align 8, !tbaa !11
  %3531 = call double @llvm.fmuladd.f64(double 0x3FD6F2A1D7A49299, double %3530, double %3522)
  %3532 = load ptr, ptr %7, align 8, !tbaa !9
  %3533 = load i32, ptr %12, align 4, !tbaa !5
  %3534 = load i32, ptr %8, align 4, !tbaa !5
  %3535 = mul nsw i32 41, %3534
  %3536 = add nsw i32 %3533, %3535
  %3537 = sext i32 %3536 to i64
  %3538 = getelementptr inbounds double, ptr %3532, i64 %3537
  %3539 = load double, ptr %3538, align 8, !tbaa !11
  %3540 = call double @llvm.fmuladd.f64(double 0x3FEAEBF44A8E7A7F, double %3539, double %3531)
  %3541 = load ptr, ptr %7, align 8, !tbaa !9
  %3542 = load i32, ptr %12, align 4, !tbaa !5
  %3543 = load i32, ptr %8, align 4, !tbaa !5
  %3544 = mul nsw i32 42, %3543
  %3545 = add nsw i32 %3542, %3544
  %3546 = sext i32 %3545 to i64
  %3547 = getelementptr inbounds double, ptr %3541, i64 %3546
  %3548 = load double, ptr %3547, align 8, !tbaa !11
  %3549 = call double @llvm.fmuladd.f64(double 0x3FEAEBF44A8E7A7D, double %3548, double %3540)
  %3550 = load ptr, ptr %7, align 8, !tbaa !9
  %3551 = load i32, ptr %12, align 4, !tbaa !5
  %3552 = load i32, ptr %8, align 4, !tbaa !5
  %3553 = mul nsw i32 43, %3552
  %3554 = add nsw i32 %3551, %3553
  %3555 = sext i32 %3554 to i64
  %3556 = getelementptr inbounds double, ptr %3550, i64 %3555
  %3557 = load double, ptr %3556, align 8, !tbaa !11
  %3558 = call double @llvm.fmuladd.f64(double 0x3FD6F2A1D7A492C6, double %3557, double %3549)
  %3559 = load ptr, ptr %7, align 8, !tbaa !9
  %3560 = load i32, ptr %12, align 4, !tbaa !5
  %3561 = load i32, ptr %8, align 4, !tbaa !5
  %3562 = mul nsw i32 44, %3561
  %3563 = add nsw i32 %3560, %3562
  %3564 = sext i32 %3563 to i64
  %3565 = getelementptr inbounds double, ptr %3559, i64 %3564
  %3566 = load double, ptr %3565, align 8, !tbaa !11
  %3567 = call double @llvm.fmuladd.f64(double 0xBC91000000000000, double %3566, double %3558)
  %3568 = load ptr, ptr %7, align 8, !tbaa !9
  %3569 = load i32, ptr %12, align 4, !tbaa !5
  %3570 = load i32, ptr %8, align 4, !tbaa !5
  %3571 = mul nsw i32 45, %3570
  %3572 = add nsw i32 %3569, %3571
  %3573 = sext i32 %3572 to i64
  %3574 = getelementptr inbounds double, ptr %3568, i64 %3573
  %3575 = load double, ptr %3574, align 8, !tbaa !11
  %3576 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %3575, double %3567)
  %3577 = load ptr, ptr %7, align 8, !tbaa !9
  %3578 = load i32, ptr %12, align 4, !tbaa !5
  %3579 = load i32, ptr %8, align 4, !tbaa !5
  %3580 = mul nsw i32 46, %3579
  %3581 = add nsw i32 %3578, %3580
  %3582 = sext i32 %3581 to i64
  %3583 = getelementptr inbounds double, ptr %3577, i64 %3582
  %3584 = load double, ptr %3583, align 8, !tbaa !11
  %3585 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %3584, double %3576)
  %3586 = load ptr, ptr %7, align 8, !tbaa !9
  %3587 = load i32, ptr %12, align 4, !tbaa !5
  %3588 = load i32, ptr %8, align 4, !tbaa !5
  %3589 = mul nsw i32 47, %3588
  %3590 = add nsw i32 %3587, %3589
  %3591 = sext i32 %3590 to i64
  %3592 = getelementptr inbounds double, ptr %3586, i64 %3591
  %3593 = load double, ptr %3592, align 8, !tbaa !11
  %3594 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %3593, double %3585)
  %3595 = load ptr, ptr %7, align 8, !tbaa !9
  %3596 = load i32, ptr %12, align 4, !tbaa !5
  %3597 = load i32, ptr %8, align 4, !tbaa !5
  %3598 = mul nsw i32 48, %3597
  %3599 = add nsw i32 %3596, %3598
  %3600 = sext i32 %3599 to i64
  %3601 = getelementptr inbounds double, ptr %3595, i64 %3600
  %3602 = load double, ptr %3601, align 8, !tbaa !11
  %3603 = call double @llvm.fmuladd.f64(double 0x3C9A400000000000, double %3602, double %3594)
  %3604 = load ptr, ptr %7, align 8, !tbaa !9
  %3605 = load i32, ptr %12, align 4, !tbaa !5
  %3606 = load i32, ptr %8, align 4, !tbaa !5
  %3607 = mul nsw i32 49, %3606
  %3608 = add nsw i32 %3605, %3607
  %3609 = sext i32 %3608 to i64
  %3610 = getelementptr inbounds double, ptr %3604, i64 %3609
  %3611 = load double, ptr %3610, align 8, !tbaa !11
  %3612 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %3611, double %3603)
  %3613 = load ptr, ptr %7, align 8, !tbaa !9
  %3614 = load i32, ptr %12, align 4, !tbaa !5
  %3615 = load i32, ptr %8, align 4, !tbaa !5
  %3616 = mul nsw i32 50, %3615
  %3617 = add nsw i32 %3614, %3616
  %3618 = sext i32 %3617 to i64
  %3619 = getelementptr inbounds double, ptr %3613, i64 %3618
  %3620 = load double, ptr %3619, align 8, !tbaa !11
  %3621 = call double @llvm.fmuladd.f64(double 0x3C9A000000000000, double %3620, double %3612)
  %3622 = load ptr, ptr %7, align 8, !tbaa !9
  %3623 = load i32, ptr %12, align 4, !tbaa !5
  %3624 = load i32, ptr %8, align 4, !tbaa !5
  %3625 = mul nsw i32 51, %3624
  %3626 = add nsw i32 %3623, %3625
  %3627 = sext i32 %3626 to i64
  %3628 = getelementptr inbounds double, ptr %3622, i64 %3627
  %3629 = load double, ptr %3628, align 8, !tbaa !11
  %3630 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %3629, double %3621)
  %3631 = load ptr, ptr %7, align 8, !tbaa !9
  %3632 = load i32, ptr %12, align 4, !tbaa !5
  %3633 = load i32, ptr %8, align 4, !tbaa !5
  %3634 = mul nsw i32 52, %3633
  %3635 = add nsw i32 %3632, %3634
  %3636 = sext i32 %3635 to i64
  %3637 = getelementptr inbounds double, ptr %3631, i64 %3636
  %3638 = load double, ptr %3637, align 8, !tbaa !11
  %3639 = call double @llvm.fmuladd.f64(double 0x3CB9DA84FC1C5FD3, double %3638, double %3630)
  %3640 = load ptr, ptr %7, align 8, !tbaa !9
  %3641 = load i32, ptr %12, align 4, !tbaa !5
  %3642 = load i32, ptr %8, align 4, !tbaa !5
  %3643 = mul nsw i32 54, %3642
  %3644 = add nsw i32 %3641, %3643
  %3645 = sext i32 %3644 to i64
  %3646 = getelementptr inbounds double, ptr %3640, i64 %3645
  %3647 = load double, ptr %3646, align 8, !tbaa !11
  %3648 = call double @llvm.fmuladd.f64(double 0xBC70F876CCDF6CD9, double %3647, double %3639)
  %3649 = load ptr, ptr %7, align 8, !tbaa !9
  %3650 = load i32, ptr %12, align 4, !tbaa !5
  %3651 = load i32, ptr %8, align 4, !tbaa !5
  %3652 = mul nsw i32 55, %3651
  %3653 = add nsw i32 %3650, %3652
  %3654 = sext i32 %3653 to i64
  %3655 = getelementptr inbounds double, ptr %3649, i64 %3654
  %3656 = load double, ptr %3655, align 8, !tbaa !11
  %3657 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %3656, double %3648)
  %3658 = load ptr, ptr %7, align 8, !tbaa !9
  %3659 = load i32, ptr %12, align 4, !tbaa !5
  %3660 = load i32, ptr %8, align 4, !tbaa !5
  %3661 = mul nsw i32 56, %3660
  %3662 = add nsw i32 %3659, %3661
  %3663 = sext i32 %3662 to i64
  %3664 = getelementptr inbounds double, ptr %3658, i64 %3663
  %3665 = load double, ptr %3664, align 8, !tbaa !11
  %3666 = call double @llvm.fmuladd.f64(double 0x400E488CB8C1EA66, double %3665, double %3657)
  %3667 = load ptr, ptr %7, align 8, !tbaa !9
  %3668 = load i32, ptr %12, align 4, !tbaa !5
  %3669 = load i32, ptr %8, align 4, !tbaa !5
  %3670 = mul nsw i32 57, %3669
  %3671 = add nsw i32 %3668, %3670
  %3672 = sext i32 %3671 to i64
  %3673 = getelementptr inbounds double, ptr %3667, i64 %3672
  %3674 = load double, ptr %3673, align 8, !tbaa !11
  %3675 = call double @llvm.fmuladd.f64(double 0x3FD4A299D1E9700C, double %3674, double %3666)
  %3676 = load ptr, ptr %7, align 8, !tbaa !9
  %3677 = load i32, ptr %12, align 4, !tbaa !5
  %3678 = load i32, ptr %8, align 4, !tbaa !5
  %3679 = mul nsw i32 58, %3678
  %3680 = add nsw i32 %3677, %3679
  %3681 = sext i32 %3680 to i64
  %3682 = getelementptr inbounds double, ptr %3676, i64 %3681
  %3683 = load double, ptr %3682, align 8, !tbaa !11
  %3684 = call double @llvm.fmuladd.f64(double 0xBFC5EA083165C4F9, double %3683, double %3675)
  %3685 = load ptr, ptr %7, align 8, !tbaa !9
  %3686 = load i32, ptr %12, align 4, !tbaa !5
  %3687 = load i32, ptr %8, align 4, !tbaa !5
  %3688 = mul nsw i32 59, %3687
  %3689 = add nsw i32 %3686, %3688
  %3690 = sext i32 %3689 to i64
  %3691 = getelementptr inbounds double, ptr %3685, i64 %3690
  %3692 = load double, ptr %3691, align 8, !tbaa !11
  %3693 = call double @llvm.fmuladd.f64(double 0x3FA462D8D66D7F7F, double %3692, double %3684)
  %3694 = load ptr, ptr %7, align 8, !tbaa !9
  %3695 = load i32, ptr %12, align 4, !tbaa !5
  %3696 = load i32, ptr %8, align 4, !tbaa !5
  %3697 = mul nsw i32 60, %3696
  %3698 = add nsw i32 %3695, %3697
  %3699 = sext i32 %3698 to i64
  %3700 = getelementptr inbounds double, ptr %3694, i64 %3699
  %3701 = load double, ptr %3700, align 8, !tbaa !11
  %3702 = call double @llvm.fmuladd.f64(double 0xBCABEE4386850DD1, double %3701, double %3693)
  %3703 = load ptr, ptr %7, align 8, !tbaa !9
  %3704 = load i32, ptr %12, align 4, !tbaa !5
  %3705 = load i32, ptr %8, align 4, !tbaa !5
  %3706 = mul nsw i32 61, %3705
  %3707 = add nsw i32 %3704, %3706
  %3708 = sext i32 %3707 to i64
  %3709 = getelementptr inbounds double, ptr %3703, i64 %3708
  %3710 = load double, ptr %3709, align 8, !tbaa !11
  %3711 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %3710, double %3702)
  %3712 = load ptr, ptr %7, align 8, !tbaa !9
  %3713 = load i32, ptr %12, align 4, !tbaa !5
  %3714 = load i32, ptr %8, align 4, !tbaa !5
  %3715 = mul nsw i32 62, %3714
  %3716 = add nsw i32 %3713, %3715
  %3717 = sext i32 %3716 to i64
  %3718 = getelementptr inbounds double, ptr %3712, i64 %3717
  %3719 = load double, ptr %3718, align 8, !tbaa !11
  %3720 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %3719, double %3711)
  %3721 = load ptr, ptr %7, align 8, !tbaa !9
  %3722 = load i32, ptr %12, align 4, !tbaa !5
  %3723 = load i32, ptr %8, align 4, !tbaa !5
  %3724 = mul nsw i32 63, %3723
  %3725 = add nsw i32 %3722, %3724
  %3726 = sext i32 %3725 to i64
  %3727 = getelementptr inbounds double, ptr %3721, i64 %3726
  %3728 = load double, ptr %3727, align 8, !tbaa !11
  %3729 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %3728, double %3720)
  %3730 = load ptr, ptr %7, align 8, !tbaa !9
  %3731 = load i32, ptr %12, align 4, !tbaa !5
  %3732 = load i32, ptr %8, align 4, !tbaa !5
  %3733 = mul nsw i32 64, %3732
  %3734 = add nsw i32 %3731, %3733
  %3735 = sext i32 %3734 to i64
  %3736 = getelementptr inbounds double, ptr %3730, i64 %3735
  %3737 = load double, ptr %3736, align 8, !tbaa !11
  %3738 = call double @llvm.fmuladd.f64(double 0x3CA02CD13B44F3C0, double %3737, double %3729)
  %3739 = load ptr, ptr %7, align 8, !tbaa !9
  %3740 = load i32, ptr %12, align 4, !tbaa !5
  %3741 = load i32, ptr %8, align 4, !tbaa !5
  %3742 = mul nsw i32 66, %3741
  %3743 = add nsw i32 %3740, %3742
  %3744 = sext i32 %3743 to i64
  %3745 = getelementptr inbounds double, ptr %3739, i64 %3744
  %3746 = load double, ptr %3745, align 8, !tbaa !11
  %3747 = call double @llvm.fmuladd.f64(double 0x3C70F876CCDF6CD9, double %3746, double %3738)
  %3748 = load ptr, ptr %7, align 8, !tbaa !9
  %3749 = load i32, ptr %12, align 4, !tbaa !5
  %3750 = load i32, ptr %8, align 4, !tbaa !5
  %3751 = mul nsw i32 67, %3750
  %3752 = add nsw i32 %3749, %3751
  %3753 = sext i32 %3752 to i64
  %3754 = getelementptr inbounds double, ptr %3748, i64 %3753
  %3755 = load double, ptr %3754, align 8, !tbaa !11
  %3756 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %3755, double %3747)
  store double %3756, ptr %11, align 8, !tbaa !11
  %3757 = load double, ptr %11, align 8, !tbaa !11
  %3758 = load ptr, ptr %9, align 8, !tbaa !9
  %3759 = load i32, ptr %12, align 4, !tbaa !5
  %3760 = load i32, ptr %10, align 4, !tbaa !5
  %3761 = mul nsw i32 12, %3760
  %3762 = add nsw i32 %3759, %3761
  %3763 = sext i32 %3762 to i64
  %3764 = getelementptr inbounds double, ptr %3758, i64 %3763
  %3765 = load double, ptr %3764, align 8, !tbaa !11
  %3766 = fadd double %3765, %3757
  store double %3766, ptr %3764, align 8, !tbaa !11
  %3767 = load ptr, ptr %7, align 8, !tbaa !9
  %3768 = load i32, ptr %12, align 4, !tbaa !5
  %3769 = load i32, ptr %8, align 4, !tbaa !5
  %3770 = mul nsw i32 36, %3769
  %3771 = add nsw i32 %3768, %3770
  %3772 = sext i32 %3771 to i64
  %3773 = getelementptr inbounds double, ptr %3767, i64 %3772
  %3774 = load double, ptr %3773, align 8, !tbaa !11
  %3775 = load ptr, ptr %7, align 8, !tbaa !9
  %3776 = load i32, ptr %12, align 4, !tbaa !5
  %3777 = load i32, ptr %8, align 4, !tbaa !5
  %3778 = mul nsw i32 37, %3777
  %3779 = add nsw i32 %3776, %3778
  %3780 = sext i32 %3779 to i64
  %3781 = getelementptr inbounds double, ptr %3775, i64 %3780
  %3782 = load double, ptr %3781, align 8, !tbaa !11
  %3783 = fmul double 0x3C90000000000000, %3782
  %3784 = call double @llvm.fmuladd.f64(double 0x3CABE00000000000, double %3774, double %3783)
  %3785 = load ptr, ptr %7, align 8, !tbaa !9
  %3786 = load i32, ptr %12, align 4, !tbaa !5
  %3787 = load i32, ptr %8, align 4, !tbaa !5
  %3788 = mul nsw i32 38, %3787
  %3789 = add nsw i32 %3786, %3788
  %3790 = sext i32 %3789 to i64
  %3791 = getelementptr inbounds double, ptr %3785, i64 %3790
  %3792 = load double, ptr %3791, align 8, !tbaa !11
  %3793 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %3792, double %3784)
  %3794 = load ptr, ptr %7, align 8, !tbaa !9
  %3795 = load i32, ptr %12, align 4, !tbaa !5
  %3796 = load i32, ptr %8, align 4, !tbaa !5
  %3797 = mul nsw i32 39, %3796
  %3798 = add nsw i32 %3795, %3797
  %3799 = sext i32 %3798 to i64
  %3800 = getelementptr inbounds double, ptr %3794, i64 %3799
  %3801 = load double, ptr %3800, align 8, !tbaa !11
  %3802 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %3801, double %3793)
  %3803 = load ptr, ptr %7, align 8, !tbaa !9
  %3804 = load i32, ptr %12, align 4, !tbaa !5
  %3805 = load i32, ptr %8, align 4, !tbaa !5
  %3806 = mul nsw i32 40, %3805
  %3807 = add nsw i32 %3804, %3806
  %3808 = sext i32 %3807 to i64
  %3809 = getelementptr inbounds double, ptr %3803, i64 %3808
  %3810 = load double, ptr %3809, align 8, !tbaa !11
  %3811 = call double @llvm.fmuladd.f64(double 0xC01569E165D79417, double %3810, double %3802)
  %3812 = load ptr, ptr %7, align 8, !tbaa !9
  %3813 = load i32, ptr %12, align 4, !tbaa !5
  %3814 = load i32, ptr %8, align 4, !tbaa !5
  %3815 = mul nsw i32 41, %3814
  %3816 = add nsw i32 %3813, %3815
  %3817 = sext i32 %3816 to i64
  %3818 = getelementptr inbounds double, ptr %3812, i64 %3817
  %3819 = load double, ptr %3818, align 8, !tbaa !11
  %3820 = call double @llvm.fmuladd.f64(double 0xBFDD2EB9CCB3BDF4, double %3819, double %3811)
  %3821 = load ptr, ptr %7, align 8, !tbaa !9
  %3822 = load i32, ptr %12, align 4, !tbaa !5
  %3823 = load i32, ptr %8, align 4, !tbaa !5
  %3824 = mul nsw i32 42, %3823
  %3825 = add nsw i32 %3822, %3824
  %3826 = sext i32 %3825 to i64
  %3827 = getelementptr inbounds double, ptr %3821, i64 %3826
  %3828 = load double, ptr %3827, align 8, !tbaa !11
  %3829 = call double @llvm.fmuladd.f64(double 0x3FCEFDC8894D0831, double %3828, double %3820)
  %3830 = load ptr, ptr %7, align 8, !tbaa !9
  %3831 = load i32, ptr %12, align 4, !tbaa !5
  %3832 = load i32, ptr %8, align 4, !tbaa !5
  %3833 = mul nsw i32 43, %3832
  %3834 = add nsw i32 %3831, %3833
  %3835 = sext i32 %3834 to i64
  %3836 = getelementptr inbounds double, ptr %3830, i64 %3835
  %3837 = load double, ptr %3836, align 8, !tbaa !11
  %3838 = call double @llvm.fmuladd.f64(double 0xBFACD49071EC5EF0, double %3837, double %3829)
  %3839 = load ptr, ptr %7, align 8, !tbaa !9
  %3840 = load i32, ptr %12, align 4, !tbaa !5
  %3841 = load i32, ptr %8, align 4, !tbaa !5
  %3842 = mul nsw i32 44, %3841
  %3843 = add nsw i32 %3840, %3842
  %3844 = sext i32 %3843 to i64
  %3845 = getelementptr inbounds double, ptr %3839, i64 %3844
  %3846 = load double, ptr %3845, align 8, !tbaa !11
  %3847 = call double @llvm.fmuladd.f64(double 0x3CB5BFFFFFFFFFFF, double %3846, double %3838)
  %3848 = load ptr, ptr %7, align 8, !tbaa !9
  %3849 = load i32, ptr %12, align 4, !tbaa !5
  %3850 = load i32, ptr %8, align 4, !tbaa !5
  %3851 = mul nsw i32 45, %3850
  %3852 = add nsw i32 %3849, %3851
  %3853 = sext i32 %3852 to i64
  %3854 = getelementptr inbounds double, ptr %3848, i64 %3853
  %3855 = load double, ptr %3854, align 8, !tbaa !11
  %3856 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %3855, double %3847)
  %3857 = load ptr, ptr %7, align 8, !tbaa !9
  %3858 = load i32, ptr %12, align 4, !tbaa !5
  %3859 = load i32, ptr %8, align 4, !tbaa !5
  %3860 = mul nsw i32 46, %3859
  %3861 = add nsw i32 %3858, %3860
  %3862 = sext i32 %3861 to i64
  %3863 = getelementptr inbounds double, ptr %3857, i64 %3862
  %3864 = load double, ptr %3863, align 8, !tbaa !11
  %3865 = call double @llvm.fmuladd.f64(double 0x3CB5FFFFFFFFFFFF, double %3864, double %3856)
  %3866 = load ptr, ptr %7, align 8, !tbaa !9
  %3867 = load i32, ptr %12, align 4, !tbaa !5
  %3868 = load i32, ptr %8, align 4, !tbaa !5
  %3869 = mul nsw i32 48, %3868
  %3870 = add nsw i32 %3867, %3869
  %3871 = sext i32 %3870 to i64
  %3872 = getelementptr inbounds double, ptr %3866, i64 %3871
  %3873 = load double, ptr %3872, align 8, !tbaa !11
  %3874 = call double @llvm.fmuladd.f64(double 0x3C80800000000000, double %3873, double %3865)
  %3875 = load ptr, ptr %7, align 8, !tbaa !9
  %3876 = load i32, ptr %12, align 4, !tbaa !5
  %3877 = load i32, ptr %8, align 4, !tbaa !5
  %3878 = mul nsw i32 49, %3877
  %3879 = add nsw i32 %3876, %3878
  %3880 = sext i32 %3879 to i64
  %3881 = getelementptr inbounds double, ptr %3875, i64 %3880
  %3882 = load double, ptr %3881, align 8, !tbaa !11
  %3883 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %3882, double %3874)
  %3884 = load ptr, ptr %7, align 8, !tbaa !9
  %3885 = load i32, ptr %12, align 4, !tbaa !5
  %3886 = load i32, ptr %8, align 4, !tbaa !5
  %3887 = mul nsw i32 50, %3886
  %3888 = add nsw i32 %3885, %3887
  %3889 = sext i32 %3888 to i64
  %3890 = getelementptr inbounds double, ptr %3884, i64 %3889
  %3891 = load double, ptr %3890, align 8, !tbaa !11
  %3892 = call double @llvm.fmuladd.f64(double 0xBCAB000000000001, double %3891, double %3883)
  %3893 = load ptr, ptr %7, align 8, !tbaa !9
  %3894 = load i32, ptr %12, align 4, !tbaa !5
  %3895 = load i32, ptr %8, align 4, !tbaa !5
  %3896 = mul nsw i32 52, %3895
  %3897 = add nsw i32 %3894, %3896
  %3898 = sext i32 %3897 to i64
  %3899 = getelementptr inbounds double, ptr %3893, i64 %3898
  %3900 = load double, ptr %3899, align 8, !tbaa !11
  %3901 = call double @llvm.fmuladd.f64(double 0x3C93F9CBD67C52CA, double %3900, double %3892)
  %3902 = load ptr, ptr %7, align 8, !tbaa !9
  %3903 = load i32, ptr %12, align 4, !tbaa !5
  %3904 = load i32, ptr %8, align 4, !tbaa !5
  %3905 = mul nsw i32 53, %3904
  %3906 = add nsw i32 %3903, %3905
  %3907 = sext i32 %3906 to i64
  %3908 = getelementptr inbounds double, ptr %3902, i64 %3907
  %3909 = load double, ptr %3908, align 8, !tbaa !11
  %3910 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %3909, double %3901)
  %3911 = load ptr, ptr %7, align 8, !tbaa !9
  %3912 = load i32, ptr %12, align 4, !tbaa !5
  %3913 = load i32, ptr %8, align 4, !tbaa !5
  %3914 = mul nsw i32 54, %3913
  %3915 = add nsw i32 %3912, %3914
  %3916 = sext i32 %3915 to i64
  %3917 = getelementptr inbounds double, ptr %3911, i64 %3916
  %3918 = load double, ptr %3917, align 8, !tbaa !11
  %3919 = call double @llvm.fmuladd.f64(double 0xBC8F1CD9CCEEF238, double %3918, double %3910)
  %3920 = load ptr, ptr %7, align 8, !tbaa !9
  %3921 = load i32, ptr %12, align 4, !tbaa !5
  %3922 = load i32, ptr %8, align 4, !tbaa !5
  %3923 = mul nsw i32 55, %3922
  %3924 = add nsw i32 %3921, %3923
  %3925 = sext i32 %3924 to i64
  %3926 = getelementptr inbounds double, ptr %3920, i64 %3925
  %3927 = load double, ptr %3926, align 8, !tbaa !11
  %3928 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %3927, double %3919)
  %3929 = load ptr, ptr %7, align 8, !tbaa !9
  %3930 = load i32, ptr %12, align 4, !tbaa !5
  %3931 = load i32, ptr %8, align 4, !tbaa !5
  %3932 = mul nsw i32 56, %3931
  %3933 = add nsw i32 %3930, %3932
  %3934 = sext i32 %3933 to i64
  %3935 = getelementptr inbounds double, ptr %3929, i64 %3934
  %3936 = load double, ptr %3935, align 8, !tbaa !11
  %3937 = call double @llvm.fmuladd.f64(double 0xBFD039FE04F71643, double %3936, double %3928)
  %3938 = load ptr, ptr %7, align 8, !tbaa !9
  %3939 = load i32, ptr %12, align 4, !tbaa !5
  %3940 = load i32, ptr %8, align 4, !tbaa !5
  %3941 = mul nsw i32 57, %3940
  %3942 = add nsw i32 %3939, %3941
  %3943 = sext i32 %3942 to i64
  %3944 = getelementptr inbounds double, ptr %3938, i64 %3943
  %3945 = load double, ptr %3944, align 8, !tbaa !11
  %3946 = call double @llvm.fmuladd.f64(double 0xBFE30958FBF81244, double %3945, double %3937)
  %3947 = load ptr, ptr %7, align 8, !tbaa !9
  %3948 = load i32, ptr %12, align 4, !tbaa !5
  %3949 = load i32, ptr %8, align 4, !tbaa !5
  %3950 = mul nsw i32 58, %3949
  %3951 = add nsw i32 %3948, %3950
  %3952 = sext i32 %3951 to i64
  %3953 = getelementptr inbounds double, ptr %3947, i64 %3952
  %3954 = load double, ptr %3953, align 8, !tbaa !11
  %3955 = call double @llvm.fmuladd.f64(double 0xBFE30958FBF81231, double %3954, double %3946)
  %3956 = load ptr, ptr %7, align 8, !tbaa !9
  %3957 = load i32, ptr %12, align 4, !tbaa !5
  %3958 = load i32, ptr %8, align 4, !tbaa !5
  %3959 = mul nsw i32 59, %3958
  %3960 = add nsw i32 %3957, %3959
  %3961 = sext i32 %3960 to i64
  %3962 = getelementptr inbounds double, ptr %3956, i64 %3961
  %3963 = load double, ptr %3962, align 8, !tbaa !11
  %3964 = call double @llvm.fmuladd.f64(double 0xBFD039FE04F71638, double %3963, double %3955)
  %3965 = load ptr, ptr %7, align 8, !tbaa !9
  %3966 = load i32, ptr %12, align 4, !tbaa !5
  %3967 = load i32, ptr %8, align 4, !tbaa !5
  %3968 = mul nsw i32 60, %3967
  %3969 = add nsw i32 %3966, %3968
  %3970 = sext i32 %3969 to i64
  %3971 = getelementptr inbounds double, ptr %3965, i64 %3970
  %3972 = load double, ptr %3971, align 8, !tbaa !11
  %3973 = call double @llvm.fmuladd.f64(double 0x3C9CFDCAF353049B, double %3972, double %3964)
  %3974 = load ptr, ptr %7, align 8, !tbaa !9
  %3975 = load i32, ptr %12, align 4, !tbaa !5
  %3976 = load i32, ptr %8, align 4, !tbaa !5
  %3977 = mul nsw i32 61, %3976
  %3978 = add nsw i32 %3975, %3977
  %3979 = sext i32 %3978 to i64
  %3980 = getelementptr inbounds double, ptr %3974, i64 %3979
  %3981 = load double, ptr %3980, align 8, !tbaa !11
  %3982 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %3981, double %3973)
  %3983 = load ptr, ptr %7, align 8, !tbaa !9
  %3984 = load i32, ptr %12, align 4, !tbaa !5
  %3985 = load i32, ptr %8, align 4, !tbaa !5
  %3986 = mul nsw i32 62, %3985
  %3987 = add nsw i32 %3984, %3986
  %3988 = sext i32 %3987 to i64
  %3989 = getelementptr inbounds double, ptr %3983, i64 %3988
  %3990 = load double, ptr %3989, align 8, !tbaa !11
  %3991 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %3990, double %3982)
  %3992 = load ptr, ptr %7, align 8, !tbaa !9
  %3993 = load i32, ptr %12, align 4, !tbaa !5
  %3994 = load i32, ptr %8, align 4, !tbaa !5
  %3995 = mul nsw i32 63, %3994
  %3996 = add nsw i32 %3993, %3995
  %3997 = sext i32 %3996 to i64
  %3998 = getelementptr inbounds double, ptr %3992, i64 %3997
  %3999 = load double, ptr %3998, align 8, !tbaa !11
  %4000 = call double @llvm.fmuladd.f64(double 0x3CA3CC8A99AF5452, double %3999, double %3991)
  %4001 = load ptr, ptr %7, align 8, !tbaa !9
  %4002 = load i32, ptr %12, align 4, !tbaa !5
  %4003 = load i32, ptr %8, align 4, !tbaa !5
  %4004 = mul nsw i32 64, %4003
  %4005 = add nsw i32 %4002, %4004
  %4006 = sext i32 %4005 to i64
  %4007 = getelementptr inbounds double, ptr %4001, i64 %4006
  %4008 = load double, ptr %4007, align 8, !tbaa !11
  %4009 = call double @llvm.fmuladd.f64(double 0xBC8152F9467969C8, double %4008, double %4000)
  %4010 = load ptr, ptr %7, align 8, !tbaa !9
  %4011 = load i32, ptr %12, align 4, !tbaa !5
  %4012 = load i32, ptr %8, align 4, !tbaa !5
  %4013 = mul nsw i32 65, %4012
  %4014 = add nsw i32 %4011, %4013
  %4015 = sext i32 %4014 to i64
  %4016 = getelementptr inbounds double, ptr %4010, i64 %4015
  %4017 = load double, ptr %4016, align 8, !tbaa !11
  %4018 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %4017, double %4009)
  %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 66, %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 = call double @llvm.fmuladd.f64(double 0xBC926280B3476096, double %4026, double %4018)
  %4028 = load ptr, ptr %7, align 8, !tbaa !9
  %4029 = load i32, ptr %12, align 4, !tbaa !5
  %4030 = load i32, ptr %8, align 4, !tbaa !5
  %4031 = mul nsw i32 67, %4030
  %4032 = add nsw i32 %4029, %4031
  %4033 = sext i32 %4032 to i64
  %4034 = getelementptr inbounds double, ptr %4028, i64 %4033
  %4035 = load double, ptr %4034, align 8, !tbaa !11
  %4036 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %4035, double %4027)
  store double %4036, ptr %11, align 8, !tbaa !11
  %4037 = load double, ptr %11, align 8, !tbaa !11
  %4038 = load ptr, ptr %9, align 8, !tbaa !9
  %4039 = load i32, ptr %12, align 4, !tbaa !5
  %4040 = load i32, ptr %10, align 4, !tbaa !5
  %4041 = mul nsw i32 13, %4040
  %4042 = add nsw i32 %4039, %4041
  %4043 = sext i32 %4042 to i64
  %4044 = getelementptr inbounds double, ptr %4038, i64 %4043
  %4045 = load double, ptr %4044, align 8, !tbaa !11
  %4046 = fadd double %4045, %4037
  store double %4046, ptr %4044, align 8, !tbaa !11
  %4047 = load ptr, ptr %7, align 8, !tbaa !9
  %4048 = load i32, ptr %12, align 4, !tbaa !5
  %4049 = load i32, ptr %8, align 4, !tbaa !5
  %4050 = mul nsw i32 36, %4049
  %4051 = add nsw i32 %4048, %4050
  %4052 = sext i32 %4051 to i64
  %4053 = getelementptr inbounds double, ptr %4047, i64 %4052
  %4054 = load double, ptr %4053, align 8, !tbaa !11
  %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 37, %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 = fmul double 0xBC82000000000000, %4062
  %4064 = call double @llvm.fmuladd.f64(double 0xBC85000000000000, double %4054, double %4063)
  %4065 = load ptr, ptr %7, align 8, !tbaa !9
  %4066 = load i32, ptr %12, align 4, !tbaa !5
  %4067 = load i32, ptr %8, align 4, !tbaa !5
  %4068 = mul nsw i32 38, %4067
  %4069 = add nsw i32 %4066, %4068
  %4070 = sext i32 %4069 to i64
  %4071 = getelementptr inbounds double, ptr %4065, i64 %4070
  %4072 = load double, ptr %4071, align 8, !tbaa !11
  %4073 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %4072, double %4064)
  %4074 = load ptr, ptr %7, align 8, !tbaa !9
  %4075 = load i32, ptr %12, align 4, !tbaa !5
  %4076 = load i32, ptr %8, align 4, !tbaa !5
  %4077 = mul nsw i32 40, %4076
  %4078 = add nsw i32 %4075, %4077
  %4079 = sext i32 %4078 to i64
  %4080 = getelementptr inbounds double, ptr %4074, i64 %4079
  %4081 = load double, ptr %4080, align 8, !tbaa !11
  %4082 = call double @llvm.fmuladd.f64(double 0x3F980EB0AE1D48EC, double %4081, double %4073)
  %4083 = load ptr, ptr %7, align 8, !tbaa !9
  %4084 = load i32, ptr %12, align 4, !tbaa !5
  %4085 = load i32, ptr %8, align 4, !tbaa !5
  %4086 = mul nsw i32 41, %4085
  %4087 = add nsw i32 %4084, %4086
  %4088 = sext i32 %4087 to i64
  %4089 = getelementptr inbounds double, ptr %4083, i64 %4088
  %4090 = load double, ptr %4089, align 8, !tbaa !11
  %4091 = call double @llvm.fmuladd.f64(double 0xBFD4C0B9406BCBDC, double %4090, double %4082)
  %4092 = load ptr, ptr %7, align 8, !tbaa !9
  %4093 = load i32, ptr %12, align 4, !tbaa !5
  %4094 = load i32, ptr %8, align 4, !tbaa !5
  %4095 = mul nsw i32 42, %4094
  %4096 = add nsw i32 %4093, %4095
  %4097 = sext i32 %4096 to i64
  %4098 = getelementptr inbounds double, ptr %4092, i64 %4097
  %4099 = load double, ptr %4098, align 8, !tbaa !11
  %4100 = call double @llvm.fmuladd.f64(double 0xBFEBF462FB348EF8, double %4099, double %4091)
  %4101 = load ptr, ptr %7, align 8, !tbaa !9
  %4102 = load i32, ptr %12, align 4, !tbaa !5
  %4103 = load i32, ptr %8, align 4, !tbaa !5
  %4104 = mul nsw i32 43, %4103
  %4105 = add nsw i32 %4102, %4104
  %4106 = sext i32 %4105 to i64
  %4107 = getelementptr inbounds double, ptr %4101, i64 %4106
  %4108 = load double, ptr %4107, align 8, !tbaa !11
  %4109 = call double @llvm.fmuladd.f64(double 0xBFE002F9665DF3DA, double %4108, double %4100)
  %4110 = load ptr, ptr %7, align 8, !tbaa !9
  %4111 = load i32, ptr %12, align 4, !tbaa !5
  %4112 = load i32, ptr %8, align 4, !tbaa !5
  %4113 = mul nsw i32 44, %4112
  %4114 = add nsw i32 %4111, %4113
  %4115 = sext i32 %4114 to i64
  %4116 = getelementptr inbounds double, ptr %4110, i64 %4115
  %4117 = load double, ptr %4116, align 8, !tbaa !11
  %4118 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %4117, double %4109)
  %4119 = load ptr, ptr %7, align 8, !tbaa !9
  %4120 = load i32, ptr %12, align 4, !tbaa !5
  %4121 = load i32, ptr %8, align 4, !tbaa !5
  %4122 = mul nsw i32 46, %4121
  %4123 = add nsw i32 %4120, %4122
  %4124 = sext i32 %4123 to i64
  %4125 = getelementptr inbounds double, ptr %4119, i64 %4124
  %4126 = load double, ptr %4125, align 8, !tbaa !11
  %4127 = call double @llvm.fmuladd.f64(double 0x3CB5FFFFFFFFFFFF, double %4126, double %4118)
  %4128 = load ptr, ptr %7, align 8, !tbaa !9
  %4129 = load i32, ptr %12, align 4, !tbaa !5
  %4130 = load i32, ptr %8, align 4, !tbaa !5
  %4131 = mul nsw i32 47, %4130
  %4132 = add nsw i32 %4129, %4131
  %4133 = sext i32 %4132 to i64
  %4134 = getelementptr inbounds double, ptr %4128, i64 %4133
  %4135 = load double, ptr %4134, align 8, !tbaa !11
  %4136 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %4135, double %4127)
  %4137 = load ptr, ptr %7, align 8, !tbaa !9
  %4138 = load i32, ptr %12, align 4, !tbaa !5
  %4139 = load i32, ptr %8, align 4, !tbaa !5
  %4140 = mul nsw i32 48, %4139
  %4141 = add nsw i32 %4138, %4140
  %4142 = sext i32 %4141 to i64
  %4143 = getelementptr inbounds double, ptr %4137, i64 %4142
  %4144 = load double, ptr %4143, align 8, !tbaa !11
  %4145 = call double @llvm.fmuladd.f64(double 0x3C96800000000000, double %4144, double %4136)
  %4146 = load ptr, ptr %7, align 8, !tbaa !9
  %4147 = load i32, ptr %12, align 4, !tbaa !5
  %4148 = load i32, ptr %8, align 4, !tbaa !5
  %4149 = mul nsw i32 49, %4148
  %4150 = add nsw i32 %4147, %4149
  %4151 = sext i32 %4150 to i64
  %4152 = getelementptr inbounds double, ptr %4146, i64 %4151
  %4153 = load double, ptr %4152, align 8, !tbaa !11
  %4154 = call double @llvm.fmuladd.f64(double 0x3C91000000000000, double %4153, double %4145)
  %4155 = load ptr, ptr %7, align 8, !tbaa !9
  %4156 = load i32, ptr %12, align 4, !tbaa !5
  %4157 = load i32, ptr %8, align 4, !tbaa !5
  %4158 = mul nsw i32 50, %4157
  %4159 = add nsw i32 %4156, %4158
  %4160 = sext i32 %4159 to i64
  %4161 = getelementptr inbounds double, ptr %4155, i64 %4160
  %4162 = load double, ptr %4161, align 8, !tbaa !11
  %4163 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %4162, double %4154)
  %4164 = load ptr, ptr %7, align 8, !tbaa !9
  %4165 = load i32, ptr %12, align 4, !tbaa !5
  %4166 = load i32, ptr %8, align 4, !tbaa !5
  %4167 = mul nsw i32 51, %4166
  %4168 = add nsw i32 %4165, %4167
  %4169 = sext i32 %4168 to i64
  %4170 = getelementptr inbounds double, ptr %4164, i64 %4169
  %4171 = load double, ptr %4170, align 8, !tbaa !11
  %4172 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %4171, double %4163)
  %4173 = load ptr, ptr %7, align 8, !tbaa !9
  %4174 = load i32, ptr %12, align 4, !tbaa !5
  %4175 = load i32, ptr %8, align 4, !tbaa !5
  %4176 = mul nsw i32 52, %4175
  %4177 = add nsw i32 %4174, %4176
  %4178 = sext i32 %4177 to i64
  %4179 = getelementptr inbounds double, ptr %4173, i64 %4178
  %4180 = load double, ptr %4179, align 8, !tbaa !11
  %4181 = call double @llvm.fmuladd.f64(double 0x3C7DB2CFE686FE7B, double %4180, double %4172)
  %4182 = load ptr, ptr %7, align 8, !tbaa !9
  %4183 = load i32, ptr %12, align 4, !tbaa !5
  %4184 = load i32, ptr %8, align 4, !tbaa !5
  %4185 = mul nsw i32 53, %4184
  %4186 = add nsw i32 %4183, %4185
  %4187 = sext i32 %4186 to i64
  %4188 = getelementptr inbounds double, ptr %4182, i64 %4187
  %4189 = load double, ptr %4188, align 8, !tbaa !11
  %4190 = call double @llvm.fmuladd.f64(double 0x3C91AD7BC01366B7, double %4189, double %4181)
  %4191 = load ptr, ptr %7, align 8, !tbaa !9
  %4192 = load i32, ptr %12, align 4, !tbaa !5
  %4193 = load i32, ptr %8, align 4, !tbaa !5
  %4194 = mul nsw i32 54, %4193
  %4195 = add nsw i32 %4192, %4194
  %4196 = sext i32 %4195 to i64
  %4197 = getelementptr inbounds double, ptr %4191, i64 %4196
  %4198 = load double, ptr %4197, align 8, !tbaa !11
  %4199 = call double @llvm.fmuladd.f64(double 0x3C56A09E667F3BCC, double %4198, double %4190)
  %4200 = load ptr, ptr %7, align 8, !tbaa !9
  %4201 = load i32, ptr %12, align 4, !tbaa !5
  %4202 = load i32, ptr %8, align 4, !tbaa !5
  %4203 = mul nsw i32 55, %4202
  %4204 = add nsw i32 %4201, %4203
  %4205 = sext i32 %4204 to i64
  %4206 = getelementptr inbounds double, ptr %4200, i64 %4205
  %4207 = load double, ptr %4206, align 8, !tbaa !11
  %4208 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %4207, double %4199)
  %4209 = load ptr, ptr %7, align 8, !tbaa !9
  %4210 = load i32, ptr %12, align 4, !tbaa !5
  %4211 = load i32, ptr %8, align 4, !tbaa !5
  %4212 = mul nsw i32 56, %4211
  %4213 = add nsw i32 %4210, %4212
  %4214 = sext i32 %4213 to i64
  %4215 = getelementptr inbounds double, ptr %4209, i64 %4214
  %4216 = load double, ptr %4215, align 8, !tbaa !11
  %4217 = call double @llvm.fmuladd.f64(double 0x3FD08C54FF101A10, double %4216, double %4208)
  %4218 = load ptr, ptr %7, align 8, !tbaa !9
  %4219 = load i32, ptr %12, align 4, !tbaa !5
  %4220 = load i32, ptr %8, align 4, !tbaa !5
  %4221 = mul nsw i32 57, %4220
  %4222 = add nsw i32 %4219, %4221
  %4223 = sext i32 %4222 to i64
  %4224 = getelementptr inbounds double, ptr %4218, i64 %4223
  %4225 = load double, ptr %4224, align 8, !tbaa !11
  %4226 = call double @llvm.fmuladd.f64(double 0x4007001BD846D0B2, double %4225, double %4217)
  %4227 = load ptr, ptr %7, align 8, !tbaa !9
  %4228 = load i32, ptr %12, align 4, !tbaa !5
  %4229 = load i32, ptr %8, align 4, !tbaa !5
  %4230 = mul nsw i32 58, %4229
  %4231 = add nsw i32 %4228, %4230
  %4232 = sext i32 %4231 to i64
  %4233 = getelementptr inbounds double, ptr %4227, i64 %4232
  %4234 = load double, ptr %4233, align 8, !tbaa !11
  %4235 = call double @llvm.fmuladd.f64(double 0x3FD0C7817D9C3137, double %4234, double %4226)
  %4236 = load ptr, ptr %7, align 8, !tbaa !9
  %4237 = load i32, ptr %12, align 4, !tbaa !5
  %4238 = load i32, ptr %8, align 4, !tbaa !5
  %4239 = mul nsw i32 59, %4238
  %4240 = add nsw i32 %4237, %4239
  %4241 = sext i32 %4240 to i64
  %4242 = getelementptr inbounds double, ptr %4236, i64 %4241
  %4243 = load double, ptr %4242, align 8, !tbaa !11
  %4244 = call double @llvm.fmuladd.f64(double 0xBFB8DF388696F54E, double %4243, double %4235)
  %4245 = load ptr, ptr %7, align 8, !tbaa !9
  %4246 = load i32, ptr %12, align 4, !tbaa !5
  %4247 = load i32, ptr %8, align 4, !tbaa !5
  %4248 = mul nsw i32 60, %4247
  %4249 = add nsw i32 %4246, %4248
  %4250 = sext i32 %4249 to i64
  %4251 = getelementptr inbounds double, ptr %4245, i64 %4250
  %4252 = load double, ptr %4251, align 8, !tbaa !11
  %4253 = call double @llvm.fmuladd.f64(double 0xBC93CC8A99AF5452, double %4252, double %4244)
  %4254 = load ptr, ptr %7, align 8, !tbaa !9
  %4255 = load i32, ptr %12, align 4, !tbaa !5
  %4256 = load i32, ptr %8, align 4, !tbaa !5
  %4257 = mul nsw i32 61, %4256
  %4258 = add nsw i32 %4255, %4257
  %4259 = sext i32 %4258 to i64
  %4260 = getelementptr inbounds double, ptr %4254, i64 %4259
  %4261 = load double, ptr %4260, align 8, !tbaa !11
  %4262 = call double @llvm.fmuladd.f64(double 0xBCA6A09E667F3BCC, double %4261, double %4253)
  %4263 = load ptr, ptr %7, align 8, !tbaa !9
  %4264 = load i32, ptr %12, align 4, !tbaa !5
  %4265 = load i32, ptr %8, align 4, !tbaa !5
  %4266 = mul nsw i32 62, %4265
  %4267 = add nsw i32 %4264, %4266
  %4268 = sext i32 %4267 to i64
  %4269 = getelementptr inbounds double, ptr %4263, i64 %4268
  %4270 = load double, ptr %4269, align 8, !tbaa !11
  %4271 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %4270, double %4262)
  %4272 = load ptr, ptr %7, align 8, !tbaa !9
  %4273 = load i32, ptr %12, align 4, !tbaa !5
  %4274 = load i32, ptr %8, align 4, !tbaa !5
  %4275 = mul nsw i32 63, %4274
  %4276 = add nsw i32 %4273, %4275
  %4277 = sext i32 %4276 to i64
  %4278 = getelementptr inbounds double, ptr %4272, i64 %4277
  %4279 = load double, ptr %4278, align 8, !tbaa !11
  %4280 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %4279, double %4271)
  %4281 = load ptr, ptr %7, align 8, !tbaa !9
  %4282 = load i32, ptr %12, align 4, !tbaa !5
  %4283 = load i32, ptr %8, align 4, !tbaa !5
  %4284 = mul nsw i32 64, %4283
  %4285 = add nsw i32 %4282, %4284
  %4286 = sext i32 %4285 to i64
  %4287 = getelementptr inbounds double, ptr %4281, i64 %4286
  %4288 = load double, ptr %4287, align 8, !tbaa !11
  %4289 = call double @llvm.fmuladd.f64(double 0xBC8A29B726831D24, double %4288, double %4280)
  %4290 = load ptr, ptr %7, align 8, !tbaa !9
  %4291 = load i32, ptr %12, align 4, !tbaa !5
  %4292 = load i32, ptr %8, align 4, !tbaa !5
  %4293 = mul nsw i32 65, %4292
  %4294 = add nsw i32 %4291, %4293
  %4295 = sext i32 %4294 to i64
  %4296 = getelementptr inbounds double, ptr %4290, i64 %4295
  %4297 = load double, ptr %4296, align 8, !tbaa !11
  %4298 = call double @llvm.fmuladd.f64(double 0x3C73CC8A99AF5453, double %4297, double %4289)
  %4299 = load ptr, ptr %7, align 8, !tbaa !9
  %4300 = load i32, ptr %12, align 4, !tbaa !5
  %4301 = load i32, ptr %8, align 4, !tbaa !5
  %4302 = mul nsw i32 66, %4301
  %4303 = add nsw i32 %4300, %4302
  %4304 = sext i32 %4303 to i64
  %4305 = getelementptr inbounds double, ptr %4299, i64 %4304
  %4306 = load double, ptr %4305, align 8, !tbaa !11
  %4307 = call double @llvm.fmuladd.f64(double 0xBC56A09E667F3BCC, double %4306, double %4298)
  %4308 = load ptr, ptr %7, align 8, !tbaa !9
  %4309 = load i32, ptr %12, align 4, !tbaa !5
  %4310 = load i32, ptr %8, align 4, !tbaa !5
  %4311 = mul nsw i32 67, %4310
  %4312 = add nsw i32 %4309, %4311
  %4313 = sext i32 %4312 to i64
  %4314 = getelementptr inbounds double, ptr %4308, i64 %4313
  %4315 = load double, ptr %4314, align 8, !tbaa !11
  %4316 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %4315, double %4307)
  store double %4316, ptr %11, align 8, !tbaa !11
  %4317 = load double, ptr %11, align 8, !tbaa !11
  %4318 = load ptr, ptr %9, align 8, !tbaa !9
  %4319 = load i32, ptr %12, align 4, !tbaa !5
  %4320 = load i32, ptr %10, align 4, !tbaa !5
  %4321 = mul nsw i32 14, %4320
  %4322 = add nsw i32 %4319, %4321
  %4323 = sext i32 %4322 to i64
  %4324 = getelementptr inbounds double, ptr %4318, i64 %4323
  %4325 = load double, ptr %4324, align 8, !tbaa !11
  %4326 = fadd double %4325, %4317
  store double %4326, ptr %4324, align 8, !tbaa !11
  %4327 = load ptr, ptr %7, align 8, !tbaa !9
  %4328 = load i32, ptr %12, align 4, !tbaa !5
  %4329 = load i32, ptr %8, align 4, !tbaa !5
  %4330 = mul nsw i32 36, %4329
  %4331 = add nsw i32 %4328, %4330
  %4332 = sext i32 %4331 to i64
  %4333 = getelementptr inbounds double, ptr %4327, i64 %4332
  %4334 = load double, ptr %4333, align 8, !tbaa !11
  %4335 = load ptr, ptr %7, align 8, !tbaa !9
  %4336 = load i32, ptr %12, align 4, !tbaa !5
  %4337 = load i32, ptr %8, align 4, !tbaa !5
  %4338 = mul nsw i32 37, %4337
  %4339 = add nsw i32 %4336, %4338
  %4340 = sext i32 %4339 to i64
  %4341 = getelementptr inbounds double, ptr %4335, i64 %4340
  %4342 = load double, ptr %4341, align 8, !tbaa !11
  %4343 = fmul double 0xBCBE400000000000, %4342
  %4344 = call double @llvm.fmuladd.f64(double 0x3C6C000000000000, double %4334, double %4343)
  %4345 = load ptr, ptr %7, align 8, !tbaa !9
  %4346 = load i32, ptr %12, align 4, !tbaa !5
  %4347 = load i32, ptr %8, align 4, !tbaa !5
  %4348 = mul nsw i32 38, %4347
  %4349 = add nsw i32 %4346, %4348
  %4350 = sext i32 %4349 to i64
  %4351 = getelementptr inbounds double, ptr %4345, i64 %4350
  %4352 = load double, ptr %4351, align 8, !tbaa !11
  %4353 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %4352, double %4344)
  %4354 = load ptr, ptr %7, align 8, !tbaa !9
  %4355 = load i32, ptr %12, align 4, !tbaa !5
  %4356 = load i32, ptr %8, align 4, !tbaa !5
  %4357 = mul nsw i32 39, %4356
  %4358 = add nsw i32 %4355, %4357
  %4359 = sext i32 %4358 to i64
  %4360 = getelementptr inbounds double, ptr %4354, i64 %4359
  %4361 = load double, ptr %4360, align 8, !tbaa !11
  %4362 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %4361, double %4353)
  %4363 = load ptr, ptr %7, align 8, !tbaa !9
  %4364 = load i32, ptr %12, align 4, !tbaa !5
  %4365 = load i32, ptr %8, align 4, !tbaa !5
  %4366 = mul nsw i32 40, %4365
  %4367 = add nsw i32 %4364, %4366
  %4368 = sext i32 %4367 to i64
  %4369 = getelementptr inbounds double, ptr %4363, i64 %4368
  %4370 = load double, ptr %4369, align 8, !tbaa !11
  %4371 = call double @llvm.fmuladd.f64(double 0xBFD7671404765126, double %4370, double %4362)
  %4372 = load ptr, ptr %7, align 8, !tbaa !9
  %4373 = load i32, ptr %12, align 4, !tbaa !5
  %4374 = load i32, ptr %8, align 4, !tbaa !5
  %4375 = mul nsw i32 41, %4374
  %4376 = add nsw i32 %4373, %4375
  %4377 = sext i32 %4376 to i64
  %4378 = getelementptr inbounds double, ptr %4372, i64 %4377
  %4379 = load double, ptr %4378, align 8, !tbaa !11
  %4380 = call double @llvm.fmuladd.f64(double 0xC01043858A1F5996, double %4379, double %4371)
  %4381 = load ptr, ptr %7, align 8, !tbaa !9
  %4382 = load i32, ptr %12, align 4, !tbaa !5
  %4383 = load i32, ptr %8, align 4, !tbaa !5
  %4384 = mul nsw i32 42, %4383
  %4385 = add nsw i32 %4382, %4384
  %4386 = sext i32 %4385 to i64
  %4387 = getelementptr inbounds double, ptr %4381, i64 %4386
  %4388 = load double, ptr %4387, align 8, !tbaa !11
  %4389 = call double @llvm.fmuladd.f64(double 0xBFD7BAC3393ADDBB, double %4388, double %4380)
  %4390 = load ptr, ptr %7, align 8, !tbaa !9
  %4391 = load i32, ptr %12, align 4, !tbaa !5
  %4392 = load i32, ptr %8, align 4, !tbaa !5
  %4393 = mul nsw i32 43, %4392
  %4394 = add nsw i32 %4391, %4393
  %4395 = sext i32 %4394 to i64
  %4396 = getelementptr inbounds double, ptr %4390, i64 %4395
  %4397 = load double, ptr %4396, align 8, !tbaa !11
  %4398 = call double @llvm.fmuladd.f64(double 0x3FC1964E14FA3C8D, double %4397, double %4389)
  %4399 = load ptr, ptr %7, align 8, !tbaa !9
  %4400 = load i32, ptr %12, align 4, !tbaa !5
  %4401 = load i32, ptr %8, align 4, !tbaa !5
  %4402 = mul nsw i32 44, %4401
  %4403 = add nsw i32 %4400, %4402
  %4404 = sext i32 %4403 to i64
  %4405 = getelementptr inbounds double, ptr %4399, i64 %4404
  %4406 = load double, ptr %4405, align 8, !tbaa !11
  %4407 = call double @llvm.fmuladd.f64(double 0x3CA5FFFFFFFFFFFF, double %4406, double %4398)
  %4408 = load ptr, ptr %7, align 8, !tbaa !9
  %4409 = load i32, ptr %12, align 4, !tbaa !5
  %4410 = load i32, ptr %8, align 4, !tbaa !5
  %4411 = mul nsw i32 45, %4410
  %4412 = add nsw i32 %4409, %4411
  %4413 = sext i32 %4412 to i64
  %4414 = getelementptr inbounds double, ptr %4408, i64 %4413
  %4415 = load double, ptr %4414, align 8, !tbaa !11
  %4416 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %4415, double %4407)
  %4417 = load ptr, ptr %7, align 8, !tbaa !9
  %4418 = load i32, ptr %12, align 4, !tbaa !5
  %4419 = load i32, ptr %8, align 4, !tbaa !5
  %4420 = mul nsw i32 46, %4419
  %4421 = add nsw i32 %4418, %4420
  %4422 = sext i32 %4421 to i64
  %4423 = getelementptr inbounds double, ptr %4417, i64 %4422
  %4424 = load double, ptr %4423, align 8, !tbaa !11
  %4425 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %4424, double %4416)
  %4426 = load ptr, ptr %7, align 8, !tbaa !9
  %4427 = load i32, ptr %12, align 4, !tbaa !5
  %4428 = load i32, ptr %8, align 4, !tbaa !5
  %4429 = mul nsw i32 47, %4428
  %4430 = add nsw i32 %4427, %4429
  %4431 = sext i32 %4430 to i64
  %4432 = getelementptr inbounds double, ptr %4426, i64 %4431
  %4433 = load double, ptr %4432, align 8, !tbaa !11
  %4434 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %4433, double %4425)
  %4435 = load ptr, ptr %7, align 8, !tbaa !9
  %4436 = load i32, ptr %12, align 4, !tbaa !5
  %4437 = load i32, ptr %8, align 4, !tbaa !5
  %4438 = mul nsw i32 48, %4437
  %4439 = add nsw i32 %4436, %4438
  %4440 = sext i32 %4439 to i64
  %4441 = getelementptr inbounds double, ptr %4435, i64 %4440
  %4442 = load double, ptr %4441, align 8, !tbaa !11
  %4443 = call double @llvm.fmuladd.f64(double 0x3C89000000000000, double %4442, double %4434)
  %4444 = load ptr, ptr %7, align 8, !tbaa !9
  %4445 = load i32, ptr %12, align 4, !tbaa !5
  %4446 = load i32, ptr %8, align 4, !tbaa !5
  %4447 = mul nsw i32 49, %4446
  %4448 = add nsw i32 %4445, %4447
  %4449 = sext i32 %4448 to i64
  %4450 = getelementptr inbounds double, ptr %4444, i64 %4449
  %4451 = load double, ptr %4450, align 8, !tbaa !11
  %4452 = call double @llvm.fmuladd.f64(double 0xBCA3800000000002, double %4451, double %4443)
  %4453 = load ptr, ptr %7, align 8, !tbaa !9
  %4454 = load i32, ptr %12, align 4, !tbaa !5
  %4455 = load i32, ptr %8, align 4, !tbaa !5
  %4456 = mul nsw i32 50, %4455
  %4457 = add nsw i32 %4454, %4456
  %4458 = sext i32 %4457 to i64
  %4459 = getelementptr inbounds double, ptr %4453, i64 %4458
  %4460 = load double, ptr %4459, align 8, !tbaa !11
  %4461 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %4460, double %4452)
  %4462 = load ptr, ptr %7, align 8, !tbaa !9
  %4463 = load i32, ptr %12, align 4, !tbaa !5
  %4464 = load i32, ptr %8, align 4, !tbaa !5
  %4465 = mul nsw i32 51, %4464
  %4466 = add nsw i32 %4463, %4465
  %4467 = sext i32 %4466 to i64
  %4468 = getelementptr inbounds double, ptr %4462, i64 %4467
  %4469 = load double, ptr %4468, align 8, !tbaa !11
  %4470 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %4469, double %4461)
  %4471 = load ptr, ptr %7, align 8, !tbaa !9
  %4472 = load i32, ptr %12, align 4, !tbaa !5
  %4473 = load i32, ptr %8, align 4, !tbaa !5
  %4474 = mul nsw i32 52, %4473
  %4475 = add nsw i32 %4472, %4474
  %4476 = sext i32 %4475 to i64
  %4477 = getelementptr inbounds double, ptr %4471, i64 %4476
  %4478 = load double, ptr %4477, align 8, !tbaa !11
  %4479 = call double @llvm.fmuladd.f64(double 0x3C726280B3476096, double %4478, double %4470)
  %4480 = load ptr, ptr %7, align 8, !tbaa !9
  %4481 = load i32, ptr %12, align 4, !tbaa !5
  %4482 = load i32, ptr %8, align 4, !tbaa !5
  %4483 = mul nsw i32 53, %4482
  %4484 = add nsw i32 %4481, %4483
  %4485 = sext i32 %4484 to i64
  %4486 = getelementptr inbounds double, ptr %4480, i64 %4485
  %4487 = load double, ptr %4486, align 8, !tbaa !11
  %4488 = call double @llvm.fmuladd.f64(double 0x3C46A09E667F3BCB, double %4487, double %4479)
  %4489 = load ptr, ptr %7, align 8, !tbaa !9
  %4490 = load i32, ptr %12, align 4, !tbaa !5
  %4491 = load i32, ptr %8, align 4, !tbaa !5
  %4492 = mul nsw i32 54, %4491
  %4493 = add nsw i32 %4490, %4492
  %4494 = sext i32 %4493 to i64
  %4495 = getelementptr inbounds double, ptr %4489, i64 %4494
  %4496 = load double, ptr %4495, align 8, !tbaa !11
  %4497 = call double @llvm.fmuladd.f64(double 0xBC9536948017480F, double %4496, double %4488)
  %4498 = load ptr, ptr %7, align 8, !tbaa !9
  %4499 = load i32, ptr %12, align 4, !tbaa !5
  %4500 = load i32, ptr %8, align 4, !tbaa !5
  %4501 = mul nsw i32 55, %4500
  %4502 = add nsw i32 %4499, %4501
  %4503 = sext i32 %4502 to i64
  %4504 = getelementptr inbounds double, ptr %4498, i64 %4503
  %4505 = load double, ptr %4504, align 8, !tbaa !11
  %4506 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %4505, double %4497)
  %4507 = load ptr, ptr %7, align 8, !tbaa !9
  %4508 = load i32, ptr %12, align 4, !tbaa !5
  %4509 = load i32, ptr %8, align 4, !tbaa !5
  %4510 = mul nsw i32 56, %4509
  %4511 = add nsw i32 %4508, %4510
  %4512 = sext i32 %4511 to i64
  %4513 = getelementptr inbounds double, ptr %4507, i64 %4512
  %4514 = load double, ptr %4513, align 8, !tbaa !11
  %4515 = call double @llvm.fmuladd.f64(double 0xBF9102DA00B18A68, double %4514, double %4506)
  %4516 = load ptr, ptr %7, align 8, !tbaa !9
  %4517 = load i32, ptr %12, align 4, !tbaa !5
  %4518 = load i32, ptr %8, align 4, !tbaa !5
  %4519 = mul nsw i32 57, %4518
  %4520 = add nsw i32 %4517, %4519
  %4521 = sext i32 %4520 to i64
  %4522 = getelementptr inbounds double, ptr %4516, i64 %4521
  %4523 = load double, ptr %4522, align 8, !tbaa !11
  %4524 = call double @llvm.fmuladd.f64(double 0x3FCD5953692F6EA6, double %4523, double %4515)
  %4525 = load ptr, ptr %7, align 8, !tbaa !9
  %4526 = load i32, ptr %12, align 4, !tbaa !5
  %4527 = load i32, ptr %8, align 4, !tbaa !5
  %4528 = mul nsw i32 58, %4527
  %4529 = add nsw i32 %4526, %4528
  %4530 = sext i32 %4529 to i64
  %4531 = getelementptr inbounds double, ptr %4525, i64 %4530
  %4532 = load double, ptr %4531, align 8, !tbaa !11
  %4533 = call double @llvm.fmuladd.f64(double 0x3FE3C4545BCF030C, double %4532, double %4524)
  %4534 = load ptr, ptr %7, align 8, !tbaa !9
  %4535 = load i32, ptr %12, align 4, !tbaa !5
  %4536 = load i32, ptr %8, align 4, !tbaa !5
  %4537 = mul nsw i32 59, %4536
  %4538 = add nsw i32 %4535, %4537
  %4539 = sext i32 %4538 to i64
  %4540 = getelementptr inbounds double, ptr %4534, i64 %4539
  %4541 = load double, ptr %4540, align 8, !tbaa !11
  %4542 = call double @llvm.fmuladd.f64(double 0x3FD6A4D32EB1F710, double %4541, double %4533)
  %4543 = load ptr, ptr %7, align 8, !tbaa !9
  %4544 = load i32, ptr %12, align 4, !tbaa !5
  %4545 = load i32, ptr %8, align 4, !tbaa !5
  %4546 = mul nsw i32 60, %4545
  %4547 = add nsw i32 %4544, %4546
  %4548 = sext i32 %4547 to i64
  %4549 = getelementptr inbounds double, ptr %4543, i64 %4548
  %4550 = load double, ptr %4549, align 8, !tbaa !11
  %4551 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %4550, double %4542)
  %4552 = load ptr, ptr %7, align 8, !tbaa !9
  %4553 = load i32, ptr %12, align 4, !tbaa !5
  %4554 = load i32, ptr %8, align 4, !tbaa !5
  %4555 = mul nsw i32 61, %4554
  %4556 = add nsw i32 %4553, %4555
  %4557 = sext i32 %4556 to i64
  %4558 = getelementptr inbounds double, ptr %4552, i64 %4557
  %4559 = load double, ptr %4558, align 8, !tbaa !11
  %4560 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %4559, double %4551)
  %4561 = load ptr, ptr %7, align 8, !tbaa !9
  %4562 = load i32, ptr %12, align 4, !tbaa !5
  %4563 = load i32, ptr %8, align 4, !tbaa !5
  %4564 = mul nsw i32 62, %4563
  %4565 = add nsw i32 %4562, %4564
  %4566 = sext i32 %4565 to i64
  %4567 = getelementptr inbounds double, ptr %4561, i64 %4566
  %4568 = load double, ptr %4567, align 8, !tbaa !11
  %4569 = call double @llvm.fmuladd.f64(double 0xBCA974B2334F2346, double %4568, double %4560)
  %4570 = load ptr, ptr %7, align 8, !tbaa !9
  %4571 = load i32, ptr %12, align 4, !tbaa !5
  %4572 = load i32, ptr %8, align 4, !tbaa !5
  %4573 = mul nsw i32 63, %4572
  %4574 = add nsw i32 %4571, %4573
  %4575 = sext i32 %4574 to i64
  %4576 = getelementptr inbounds double, ptr %4570, i64 %4575
  %4577 = load double, ptr %4576, align 8, !tbaa !11
  %4578 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %4577, double %4569)
  %4579 = load ptr, ptr %7, align 8, !tbaa !9
  %4580 = load i32, ptr %12, align 4, !tbaa !5
  %4581 = load i32, ptr %8, align 4, !tbaa !5
  %4582 = mul nsw i32 64, %4581
  %4583 = add nsw i32 %4580, %4582
  %4584 = sext i32 %4583 to i64
  %4585 = getelementptr inbounds double, ptr %4579, i64 %4584
  %4586 = load double, ptr %4585, align 8, !tbaa !11
  %4587 = call double @llvm.fmuladd.f64(double 0xBC84818F8CE34E32, double %4586, double %4578)
  %4588 = load ptr, ptr %7, align 8, !tbaa !9
  %4589 = load i32, ptr %12, align 4, !tbaa !5
  %4590 = load i32, ptr %8, align 4, !tbaa !5
  %4591 = mul nsw i32 65, %4590
  %4592 = add nsw i32 %4589, %4591
  %4593 = sext i32 %4592 to i64
  %4594 = getelementptr inbounds double, ptr %4588, i64 %4593
  %4595 = load double, ptr %4594, align 8, !tbaa !11
  %4596 = call double @llvm.fmuladd.f64(double 0x3C73CC8A99AF5453, double %4595, double %4587)
  %4597 = load ptr, ptr %7, align 8, !tbaa !9
  %4598 = load i32, ptr %12, align 4, !tbaa !5
  %4599 = load i32, ptr %8, align 4, !tbaa !5
  %4600 = mul nsw i32 66, %4599
  %4601 = add nsw i32 %4598, %4600
  %4602 = sext i32 %4601 to i64
  %4603 = getelementptr inbounds double, ptr %4597, i64 %4602
  %4604 = load double, ptr %4603, align 8, !tbaa !11
  %4605 = call double @llvm.fmuladd.f64(double 0x3C83CC8A99AF5451, double %4604, double %4596)
  %4606 = load ptr, ptr %7, align 8, !tbaa !9
  %4607 = load i32, ptr %12, align 4, !tbaa !5
  %4608 = load i32, ptr %8, align 4, !tbaa !5
  %4609 = mul nsw i32 67, %4608
  %4610 = add nsw i32 %4607, %4609
  %4611 = sext i32 %4610 to i64
  %4612 = getelementptr inbounds double, ptr %4606, i64 %4611
  %4613 = load double, ptr %4612, align 8, !tbaa !11
  %4614 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %4613, double %4605)
  store double %4614, ptr %11, align 8, !tbaa !11
  %4615 = load double, ptr %11, align 8, !tbaa !11
  %4616 = load ptr, ptr %9, align 8, !tbaa !9
  %4617 = load i32, ptr %12, align 4, !tbaa !5
  %4618 = load i32, ptr %10, align 4, !tbaa !5
  %4619 = mul nsw i32 15, %4618
  %4620 = add nsw i32 %4617, %4619
  %4621 = sext i32 %4620 to i64
  %4622 = getelementptr inbounds double, ptr %4616, i64 %4621
  %4623 = load double, ptr %4622, align 8, !tbaa !11
  %4624 = fadd double %4623, %4615
  store double %4624, ptr %4622, align 8, !tbaa !11
  %4625 = load ptr, ptr %7, align 8, !tbaa !9
  %4626 = load i32, ptr %12, align 4, !tbaa !5
  %4627 = load i32, ptr %8, align 4, !tbaa !5
  %4628 = mul nsw i32 36, %4627
  %4629 = add nsw i32 %4626, %4628
  %4630 = sext i32 %4629 to i64
  %4631 = getelementptr inbounds double, ptr %4625, i64 %4630
  %4632 = load double, ptr %4631, align 8, !tbaa !11
  %4633 = load ptr, ptr %7, align 8, !tbaa !9
  %4634 = load i32, ptr %12, align 4, !tbaa !5
  %4635 = load i32, ptr %8, align 4, !tbaa !5
  %4636 = mul nsw i32 37, %4635
  %4637 = add nsw i32 %4634, %4636
  %4638 = sext i32 %4637 to i64
  %4639 = getelementptr inbounds double, ptr %4633, i64 %4638
  %4640 = load double, ptr %4639, align 8, !tbaa !11
  %4641 = fmul double 0x3C90000000000000, %4640
  %4642 = call double @llvm.fmuladd.f64(double 0x3C76800000000000, double %4632, double %4641)
  %4643 = load ptr, ptr %7, align 8, !tbaa !9
  %4644 = load i32, ptr %12, align 4, !tbaa !5
  %4645 = load i32, ptr %8, align 4, !tbaa !5
  %4646 = mul nsw i32 38, %4645
  %4647 = add nsw i32 %4644, %4646
  %4648 = sext i32 %4647 to i64
  %4649 = getelementptr inbounds double, ptr %4643, i64 %4648
  %4650 = load double, ptr %4649, align 8, !tbaa !11
  %4651 = call double @llvm.fmuladd.f64(double 0x3C9A000000000000, double %4650, double %4642)
  %4652 = load ptr, ptr %7, align 8, !tbaa !9
  %4653 = load i32, ptr %12, align 4, !tbaa !5
  %4654 = load i32, ptr %8, align 4, !tbaa !5
  %4655 = mul nsw i32 39, %4654
  %4656 = add nsw i32 %4653, %4655
  %4657 = sext i32 %4656 to i64
  %4658 = getelementptr inbounds double, ptr %4652, i64 %4657
  %4659 = load double, ptr %4658, align 8, !tbaa !11
  %4660 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %4659, double %4651)
  %4661 = load ptr, ptr %7, align 8, !tbaa !9
  %4662 = load i32, ptr %12, align 4, !tbaa !5
  %4663 = load i32, ptr %8, align 4, !tbaa !5
  %4664 = mul nsw i32 40, %4663
  %4665 = add nsw i32 %4662, %4664
  %4666 = sext i32 %4665 to i64
  %4667 = getelementptr inbounds double, ptr %4661, i64 %4666
  %4668 = load double, ptr %4667, align 8, !tbaa !11
  %4669 = call double @llvm.fmuladd.f64(double 0x3FF043C98657E812, double %4668, double %4660)
  %4670 = load ptr, ptr %7, align 8, !tbaa !9
  %4671 = load i32, ptr %12, align 4, !tbaa !5
  %4672 = load i32, ptr %8, align 4, !tbaa !5
  %4673 = mul nsw i32 41, %4672
  %4674 = add nsw i32 %4671, %4673
  %4675 = sext i32 %4674 to i64
  %4676 = getelementptr inbounds double, ptr %4670, i64 %4675
  %4677 = load double, ptr %4676, align 8, !tbaa !11
  %4678 = call double @llvm.fmuladd.f64(double 0x3FEFAD7976B5DE1F, double %4677, double %4669)
  %4679 = load ptr, ptr %7, align 8, !tbaa !9
  %4680 = load i32, ptr %12, align 4, !tbaa !5
  %4681 = load i32, ptr %8, align 4, !tbaa !5
  %4682 = mul nsw i32 42, %4681
  %4683 = add nsw i32 %4680, %4682
  %4684 = sext i32 %4683 to i64
  %4685 = getelementptr inbounds double, ptr %4679, i64 %4684
  %4686 = load double, ptr %4685, align 8, !tbaa !11
  %4687 = call double @llvm.fmuladd.f64(double 0xBFB4C23AD63BEF8D, double %4686, double %4678)
  %4688 = load ptr, ptr %7, align 8, !tbaa !9
  %4689 = load i32, ptr %12, align 4, !tbaa !5
  %4690 = load i32, ptr %8, align 4, !tbaa !5
  %4691 = mul nsw i32 43, %4690
  %4692 = add nsw i32 %4689, %4691
  %4693 = sext i32 %4692 to i64
  %4694 = getelementptr inbounds double, ptr %4688, i64 %4693
  %4695 = load double, ptr %4694, align 8, !tbaa !11
  %4696 = call double @llvm.fmuladd.f64(double 0xBFAC37F3CCE9FD36, double %4695, double %4687)
  %4697 = load ptr, ptr %7, align 8, !tbaa !9
  %4698 = load i32, ptr %12, align 4, !tbaa !5
  %4699 = load i32, ptr %8, align 4, !tbaa !5
  %4700 = mul nsw i32 44, %4699
  %4701 = add nsw i32 %4698, %4700
  %4702 = sext i32 %4701 to i64
  %4703 = getelementptr inbounds double, ptr %4697, i64 %4702
  %4704 = load double, ptr %4703, align 8, !tbaa !11
  %4705 = call double @llvm.fmuladd.f64(double 0x3C74FFFFFFFFFFFF, double %4704, double %4696)
  %4706 = load ptr, ptr %7, align 8, !tbaa !9
  %4707 = load i32, ptr %12, align 4, !tbaa !5
  %4708 = load i32, ptr %8, align 4, !tbaa !5
  %4709 = mul nsw i32 45, %4708
  %4710 = add nsw i32 %4707, %4709
  %4711 = sext i32 %4710 to i64
  %4712 = getelementptr inbounds double, ptr %4706, i64 %4711
  %4713 = load double, ptr %4712, align 8, !tbaa !11
  %4714 = call double @llvm.fmuladd.f64(double 0xBCA4800000000001, double %4713, double %4705)
  %4715 = load ptr, ptr %7, align 8, !tbaa !9
  %4716 = load i32, ptr %12, align 4, !tbaa !5
  %4717 = load i32, ptr %8, align 4, !tbaa !5
  %4718 = mul nsw i32 46, %4717
  %4719 = add nsw i32 %4716, %4718
  %4720 = sext i32 %4719 to i64
  %4721 = getelementptr inbounds double, ptr %4715, i64 %4720
  %4722 = load double, ptr %4721, align 8, !tbaa !11
  %4723 = call double @llvm.fmuladd.f64(double 0x3CA9FFFFFFFFFFFE, double %4722, double %4714)
  %4724 = load ptr, ptr %7, align 8, !tbaa !9
  %4725 = load i32, ptr %12, align 4, !tbaa !5
  %4726 = load i32, ptr %8, align 4, !tbaa !5
  %4727 = mul nsw i32 47, %4726
  %4728 = add nsw i32 %4725, %4727
  %4729 = sext i32 %4728 to i64
  %4730 = getelementptr inbounds double, ptr %4724, i64 %4729
  %4731 = load double, ptr %4730, align 8, !tbaa !11
  %4732 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %4731, double %4723)
  %4733 = load ptr, ptr %7, align 8, !tbaa !9
  %4734 = load i32, ptr %12, align 4, !tbaa !5
  %4735 = load i32, ptr %8, align 4, !tbaa !5
  %4736 = mul nsw i32 48, %4735
  %4737 = add nsw i32 %4734, %4736
  %4738 = sext i32 %4737 to i64
  %4739 = getelementptr inbounds double, ptr %4733, i64 %4738
  %4740 = load double, ptr %4739, align 8, !tbaa !11
  %4741 = call double @llvm.fmuladd.f64(double 0x3C9A600000000000, double %4740, double %4732)
  %4742 = load ptr, ptr %7, align 8, !tbaa !9
  %4743 = load i32, ptr %12, align 4, !tbaa !5
  %4744 = load i32, ptr %8, align 4, !tbaa !5
  %4745 = mul nsw i32 49, %4744
  %4746 = add nsw i32 %4743, %4745
  %4747 = sext i32 %4746 to i64
  %4748 = getelementptr inbounds double, ptr %4742, i64 %4747
  %4749 = load double, ptr %4748, align 8, !tbaa !11
  %4750 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %4749, double %4741)
  %4751 = load ptr, ptr %7, align 8, !tbaa !9
  %4752 = load i32, ptr %12, align 4, !tbaa !5
  %4753 = load i32, ptr %8, align 4, !tbaa !5
  %4754 = mul nsw i32 50, %4753
  %4755 = add nsw i32 %4752, %4754
  %4756 = sext i32 %4755 to i64
  %4757 = getelementptr inbounds double, ptr %4751, i64 %4756
  %4758 = load double, ptr %4757, align 8, !tbaa !11
  %4759 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %4758, double %4750)
  %4760 = load ptr, ptr %7, align 8, !tbaa !9
  %4761 = load i32, ptr %12, align 4, !tbaa !5
  %4762 = load i32, ptr %8, align 4, !tbaa !5
  %4763 = mul nsw i32 51, %4762
  %4764 = add nsw i32 %4761, %4763
  %4765 = sext i32 %4764 to i64
  %4766 = getelementptr inbounds double, ptr %4760, i64 %4765
  %4767 = load double, ptr %4766, align 8, !tbaa !11
  %4768 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %4767, double %4759)
  %4769 = load ptr, ptr %7, align 8, !tbaa !9
  %4770 = load i32, ptr %12, align 4, !tbaa !5
  %4771 = load i32, ptr %8, align 4, !tbaa !5
  %4772 = mul nsw i32 52, %4771
  %4773 = add nsw i32 %4770, %4772
  %4774 = sext i32 %4773 to i64
  %4775 = getelementptr inbounds double, ptr %4769, i64 %4774
  %4776 = load double, ptr %4775, align 8, !tbaa !11
  %4777 = call double @llvm.fmuladd.f64(double 0xBCA0D685DF45AE00, double %4776, double %4768)
  %4778 = load ptr, ptr %7, align 8, !tbaa !9
  %4779 = load i32, ptr %12, align 4, !tbaa !5
  %4780 = load i32, ptr %8, align 4, !tbaa !5
  %4781 = mul nsw i32 53, %4780
  %4782 = add nsw i32 %4779, %4781
  %4783 = sext i32 %4782 to i64
  %4784 = getelementptr inbounds double, ptr %4778, i64 %4783
  %4785 = load double, ptr %4784, align 8, !tbaa !11
  %4786 = call double @llvm.fmuladd.f64(double 0x3C56A09E667F3BCC, double %4785, double %4777)
  %4787 = load ptr, ptr %7, align 8, !tbaa !9
  %4788 = load i32, ptr %12, align 4, !tbaa !5
  %4789 = load i32, ptr %8, align 4, !tbaa !5
  %4790 = mul nsw i32 54, %4789
  %4791 = add nsw i32 %4788, %4790
  %4792 = sext i32 %4791 to i64
  %4793 = getelementptr inbounds double, ptr %4787, i64 %4792
  %4794 = load double, ptr %4793, align 8, !tbaa !11
  %4795 = call double @llvm.fmuladd.f64(double 0xBC46A09E667F3BCB, double %4794, double %4786)
  %4796 = load ptr, ptr %7, align 8, !tbaa !9
  %4797 = load i32, ptr %12, align 4, !tbaa !5
  %4798 = load i32, ptr %8, align 4, !tbaa !5
  %4799 = mul nsw i32 55, %4798
  %4800 = add nsw i32 %4797, %4799
  %4801 = sext i32 %4800 to i64
  %4802 = getelementptr inbounds double, ptr %4796, i64 %4801
  %4803 = load double, ptr %4802, align 8, !tbaa !11
  %4804 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %4803, double %4795)
  %4805 = load ptr, ptr %7, align 8, !tbaa !9
  %4806 = load i32, ptr %12, align 4, !tbaa !5
  %4807 = load i32, ptr %8, align 4, !tbaa !5
  %4808 = mul nsw i32 56, %4807
  %4809 = add nsw i32 %4806, %4808
  %4810 = sext i32 %4809 to i64
  %4811 = getelementptr inbounds double, ptr %4805, i64 %4810
  %4812 = load double, ptr %4811, align 8, !tbaa !11
  %4813 = call double @llvm.fmuladd.f64(double 0x3FD6A4D32EB1F71D, double %4812, double %4804)
  %4814 = load ptr, ptr %7, align 8, !tbaa !9
  %4815 = load i32, ptr %12, align 4, !tbaa !5
  %4816 = load i32, ptr %8, align 4, !tbaa !5
  %4817 = mul nsw i32 57, %4816
  %4818 = add nsw i32 %4815, %4817
  %4819 = sext i32 %4818 to i64
  %4820 = getelementptr inbounds double, ptr %4814, i64 %4819
  %4821 = load double, ptr %4820, align 8, !tbaa !11
  %4822 = call double @llvm.fmuladd.f64(double 0x3FE3C4545BCF030E, double %4821, double %4813)
  %4823 = load ptr, ptr %7, align 8, !tbaa !9
  %4824 = load i32, ptr %12, align 4, !tbaa !5
  %4825 = load i32, ptr %8, align 4, !tbaa !5
  %4826 = mul nsw i32 58, %4825
  %4827 = add nsw i32 %4824, %4826
  %4828 = sext i32 %4827 to i64
  %4829 = getelementptr inbounds double, ptr %4823, i64 %4828
  %4830 = load double, ptr %4829, align 8, !tbaa !11
  %4831 = call double @llvm.fmuladd.f64(double 0x3FCD5953692F6EA6, double %4830, double %4822)
  %4832 = load ptr, ptr %7, align 8, !tbaa !9
  %4833 = load i32, ptr %12, align 4, !tbaa !5
  %4834 = load i32, ptr %8, align 4, !tbaa !5
  %4835 = mul nsw i32 59, %4834
  %4836 = add nsw i32 %4833, %4835
  %4837 = sext i32 %4836 to i64
  %4838 = getelementptr inbounds double, ptr %4832, i64 %4837
  %4839 = load double, ptr %4838, align 8, !tbaa !11
  %4840 = call double @llvm.fmuladd.f64(double 0xBF9102DA00B18A34, double %4839, double %4831)
  %4841 = load ptr, ptr %7, align 8, !tbaa !9
  %4842 = load i32, ptr %12, align 4, !tbaa !5
  %4843 = load i32, ptr %8, align 4, !tbaa !5
  %4844 = mul nsw i32 60, %4843
  %4845 = add nsw i32 %4842, %4844
  %4846 = sext i32 %4845 to i64
  %4847 = getelementptr inbounds double, ptr %4841, i64 %4846
  %4848 = load double, ptr %4847, align 8, !tbaa !11
  %4849 = call double @llvm.fmuladd.f64(double 0xBCA16999E4DFE905, double %4848, double %4840)
  %4850 = load ptr, ptr %7, align 8, !tbaa !9
  %4851 = load i32, ptr %12, align 4, !tbaa !5
  %4852 = load i32, ptr %8, align 4, !tbaa !5
  %4853 = mul nsw i32 61, %4852
  %4854 = add nsw i32 %4851, %4853
  %4855 = sext i32 %4854 to i64
  %4856 = getelementptr inbounds double, ptr %4850, i64 %4855
  %4857 = load double, ptr %4856, align 8, !tbaa !11
  %4858 = call double @llvm.fmuladd.f64(double 0xBCA91A2FB9B52657, double %4857, double %4849)
  %4859 = load ptr, ptr %7, align 8, !tbaa !9
  %4860 = load i32, ptr %12, align 4, !tbaa !5
  %4861 = load i32, ptr %8, align 4, !tbaa !5
  %4862 = mul nsw i32 62, %4861
  %4863 = add nsw i32 %4860, %4862
  %4864 = sext i32 %4863 to i64
  %4865 = getelementptr inbounds double, ptr %4859, i64 %4864
  %4866 = load double, ptr %4865, align 8, !tbaa !11
  %4867 = call double @llvm.fmuladd.f64(double 0xBC9974B2334F2346, double %4866, double %4858)
  %4868 = load ptr, ptr %7, align 8, !tbaa !9
  %4869 = load i32, ptr %12, align 4, !tbaa !5
  %4870 = load i32, ptr %8, align 4, !tbaa !5
  %4871 = mul nsw i32 63, %4870
  %4872 = add nsw i32 %4869, %4871
  %4873 = sext i32 %4872 to i64
  %4874 = getelementptr inbounds double, ptr %4868, i64 %4873
  %4875 = load double, ptr %4874, align 8, !tbaa !11
  %4876 = call double @llvm.fmuladd.f64(double 0x3C80F876CCDF6CD9, double %4875, double %4867)
  %4877 = load ptr, ptr %7, align 8, !tbaa !9
  %4878 = load i32, ptr %12, align 4, !tbaa !5
  %4879 = load i32, ptr %8, align 4, !tbaa !5
  %4880 = mul nsw i32 64, %4879
  %4881 = add nsw i32 %4878, %4880
  %4882 = sext i32 %4881 to i64
  %4883 = getelementptr inbounds double, ptr %4877, i64 %4882
  %4884 = load double, ptr %4883, align 8, !tbaa !11
  %4885 = call double @llvm.fmuladd.f64(double 0x3C759116F9B144FE, double %4884, double %4876)
  %4886 = load ptr, ptr %7, align 8, !tbaa !9
  %4887 = load i32, ptr %12, align 4, !tbaa !5
  %4888 = load i32, ptr %8, align 4, !tbaa !5
  %4889 = mul nsw i32 65, %4888
  %4890 = add nsw i32 %4887, %4889
  %4891 = sext i32 %4890 to i64
  %4892 = getelementptr inbounds double, ptr %4886, i64 %4891
  %4893 = load double, ptr %4892, align 8, !tbaa !11
  %4894 = call double @llvm.fmuladd.f64(double 0x3C70F876CCDF6CD9, double %4893, double %4885)
  %4895 = load ptr, ptr %7, align 8, !tbaa !9
  %4896 = load i32, ptr %12, align 4, !tbaa !5
  %4897 = load i32, ptr %8, align 4, !tbaa !5
  %4898 = mul nsw i32 66, %4897
  %4899 = add nsw i32 %4896, %4898
  %4900 = sext i32 %4899 to i64
  %4901 = getelementptr inbounds double, ptr %4895, i64 %4900
  %4902 = load double, ptr %4901, align 8, !tbaa !11
  %4903 = call double @llvm.fmuladd.f64(double 0xBC73CC8A99AF5453, double %4902, double %4894)
  %4904 = load ptr, ptr %7, align 8, !tbaa !9
  %4905 = load i32, ptr %12, align 4, !tbaa !5
  %4906 = load i32, ptr %8, align 4, !tbaa !5
  %4907 = mul nsw i32 67, %4906
  %4908 = add nsw i32 %4905, %4907
  %4909 = sext i32 %4908 to i64
  %4910 = getelementptr inbounds double, ptr %4904, i64 %4909
  %4911 = load double, ptr %4910, align 8, !tbaa !11
  %4912 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %4911, double %4903)
  store double %4912, ptr %11, align 8, !tbaa !11
  %4913 = load double, ptr %11, align 8, !tbaa !11
  %4914 = load ptr, ptr %9, align 8, !tbaa !9
  %4915 = load i32, ptr %12, align 4, !tbaa !5
  %4916 = load i32, ptr %10, align 4, !tbaa !5
  %4917 = mul nsw i32 16, %4916
  %4918 = add nsw i32 %4915, %4917
  %4919 = sext i32 %4918 to i64
  %4920 = getelementptr inbounds double, ptr %4914, i64 %4919
  %4921 = load double, ptr %4920, align 8, !tbaa !11
  %4922 = fadd double %4921, %4913
  store double %4922, ptr %4920, align 8, !tbaa !11
  %4923 = load ptr, ptr %7, align 8, !tbaa !9
  %4924 = load i32, ptr %12, align 4, !tbaa !5
  %4925 = load i32, ptr %8, align 4, !tbaa !5
  %4926 = mul nsw i32 36, %4925
  %4927 = add nsw i32 %4924, %4926
  %4928 = sext i32 %4927 to i64
  %4929 = getelementptr inbounds double, ptr %4923, i64 %4928
  %4930 = load double, ptr %4929, align 8, !tbaa !11
  %4931 = load ptr, ptr %7, align 8, !tbaa !9
  %4932 = load i32, ptr %12, align 4, !tbaa !5
  %4933 = load i32, ptr %8, align 4, !tbaa !5
  %4934 = mul nsw i32 37, %4933
  %4935 = add nsw i32 %4932, %4934
  %4936 = sext i32 %4935 to i64
  %4937 = getelementptr inbounds double, ptr %4931, i64 %4936
  %4938 = load double, ptr %4937, align 8, !tbaa !11
  %4939 = fmul double 0xBC8C000000000000, %4938
  %4940 = call double @llvm.fmuladd.f64(double 0x3CA22FFFFFFFFFFF, double %4930, double %4939)
  %4941 = load ptr, ptr %7, align 8, !tbaa !9
  %4942 = load i32, ptr %12, align 4, !tbaa !5
  %4943 = load i32, ptr %8, align 4, !tbaa !5
  %4944 = mul nsw i32 38, %4943
  %4945 = add nsw i32 %4942, %4944
  %4946 = sext i32 %4945 to i64
  %4947 = getelementptr inbounds double, ptr %4941, i64 %4946
  %4948 = load double, ptr %4947, align 8, !tbaa !11
  %4949 = call double @llvm.fmuladd.f64(double 0x3C82000000000000, double %4948, double %4940)
  %4950 = load ptr, ptr %7, align 8, !tbaa !9
  %4951 = load i32, ptr %12, align 4, !tbaa !5
  %4952 = load i32, ptr %8, align 4, !tbaa !5
  %4953 = mul nsw i32 39, %4952
  %4954 = add nsw i32 %4951, %4953
  %4955 = sext i32 %4954 to i64
  %4956 = getelementptr inbounds double, ptr %4950, i64 %4955
  %4957 = load double, ptr %4956, align 8, !tbaa !11
  %4958 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %4957, double %4949)
  %4959 = load ptr, ptr %7, align 8, !tbaa !9
  %4960 = load i32, ptr %12, align 4, !tbaa !5
  %4961 = load i32, ptr %8, align 4, !tbaa !5
  %4962 = mul nsw i32 40, %4961
  %4963 = add nsw i32 %4960, %4962
  %4964 = sext i32 %4963 to i64
  %4965 = getelementptr inbounds double, ptr %4959, i64 %4964
  %4966 = load double, ptr %4965, align 8, !tbaa !11
  %4967 = call double @llvm.fmuladd.f64(double 0xBFE002F9665DF3E9, double %4966, double %4958)
  %4968 = load ptr, ptr %7, align 8, !tbaa !9
  %4969 = load i32, ptr %12, align 4, !tbaa !5
  %4970 = load i32, ptr %8, align 4, !tbaa !5
  %4971 = mul nsw i32 41, %4970
  %4972 = add nsw i32 %4969, %4971
  %4973 = sext i32 %4972 to i64
  %4974 = getelementptr inbounds double, ptr %4968, i64 %4973
  %4975 = load double, ptr %4974, align 8, !tbaa !11
  %4976 = call double @llvm.fmuladd.f64(double 0xBFEBF462FB348EF9, double %4975, double %4967)
  %4977 = load ptr, ptr %7, align 8, !tbaa !9
  %4978 = load i32, ptr %12, align 4, !tbaa !5
  %4979 = load i32, ptr %8, align 4, !tbaa !5
  %4980 = mul nsw i32 42, %4979
  %4981 = add nsw i32 %4978, %4980
  %4982 = sext i32 %4981 to i64
  %4983 = getelementptr inbounds double, ptr %4977, i64 %4982
  %4984 = load double, ptr %4983, align 8, !tbaa !11
  %4985 = call double @llvm.fmuladd.f64(double 0xBFD4C0B9406BCBCC, double %4984, double %4976)
  %4986 = load ptr, ptr %7, align 8, !tbaa !9
  %4987 = load i32, ptr %12, align 4, !tbaa !5
  %4988 = load i32, ptr %8, align 4, !tbaa !5
  %4989 = mul nsw i32 43, %4988
  %4990 = add nsw i32 %4987, %4989
  %4991 = sext i32 %4990 to i64
  %4992 = getelementptr inbounds double, ptr %4986, i64 %4991
  %4993 = load double, ptr %4992, align 8, !tbaa !11
  %4994 = call double @llvm.fmuladd.f64(double 0x3F980EB0AE1D4853, double %4993, double %4985)
  %4995 = load ptr, ptr %7, align 8, !tbaa !9
  %4996 = load i32, ptr %12, align 4, !tbaa !5
  %4997 = load i32, ptr %8, align 4, !tbaa !5
  %4998 = mul nsw i32 44, %4997
  %4999 = add nsw i32 %4996, %4998
  %5000 = sext i32 %4999 to i64
  %5001 = getelementptr inbounds double, ptr %4995, i64 %5000
  %5002 = load double, ptr %5001, align 8, !tbaa !11
  %5003 = call double @llvm.fmuladd.f64(double 0x3CB3900000000000, double %5002, double %4994)
  %5004 = load ptr, ptr %7, align 8, !tbaa !9
  %5005 = load i32, ptr %12, align 4, !tbaa !5
  %5006 = load i32, ptr %8, align 4, !tbaa !5
  %5007 = mul nsw i32 45, %5006
  %5008 = add nsw i32 %5005, %5007
  %5009 = sext i32 %5008 to i64
  %5010 = getelementptr inbounds double, ptr %5004, i64 %5009
  %5011 = load double, ptr %5010, align 8, !tbaa !11
  %5012 = call double @llvm.fmuladd.f64(double 0x3CAD7FFFFFFFFFFE, double %5011, double %5003)
  %5013 = load ptr, ptr %7, align 8, !tbaa !9
  %5014 = load i32, ptr %12, align 4, !tbaa !5
  %5015 = load i32, ptr %8, align 4, !tbaa !5
  %5016 = mul nsw i32 46, %5015
  %5017 = add nsw i32 %5014, %5016
  %5018 = sext i32 %5017 to i64
  %5019 = getelementptr inbounds double, ptr %5013, i64 %5018
  %5020 = load double, ptr %5019, align 8, !tbaa !11
  %5021 = call double @llvm.fmuladd.f64(double 0x3CB2000000000000, double %5020, double %5012)
  %5022 = load ptr, ptr %7, align 8, !tbaa !9
  %5023 = load i32, ptr %12, align 4, !tbaa !5
  %5024 = load i32, ptr %8, align 4, !tbaa !5
  %5025 = mul nsw i32 47, %5024
  %5026 = add nsw i32 %5023, %5025
  %5027 = sext i32 %5026 to i64
  %5028 = getelementptr inbounds double, ptr %5022, i64 %5027
  %5029 = load double, ptr %5028, align 8, !tbaa !11
  %5030 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %5029, double %5021)
  %5031 = load ptr, ptr %7, align 8, !tbaa !9
  %5032 = load i32, ptr %12, align 4, !tbaa !5
  %5033 = load i32, ptr %8, align 4, !tbaa !5
  %5034 = mul nsw i32 48, %5033
  %5035 = add nsw i32 %5032, %5034
  %5036 = sext i32 %5035 to i64
  %5037 = getelementptr inbounds double, ptr %5031, i64 %5036
  %5038 = load double, ptr %5037, align 8, !tbaa !11
  %5039 = call double @llvm.fmuladd.f64(double 0xBCA22FFFFFFFFFFF, double %5038, double %5030)
  %5040 = load ptr, ptr %7, align 8, !tbaa !9
  %5041 = load i32, ptr %12, align 4, !tbaa !5
  %5042 = load i32, ptr %8, align 4, !tbaa !5
  %5043 = mul nsw i32 49, %5042
  %5044 = add nsw i32 %5041, %5043
  %5045 = sext i32 %5044 to i64
  %5046 = getelementptr inbounds double, ptr %5040, i64 %5045
  %5047 = load double, ptr %5046, align 8, !tbaa !11
  %5048 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %5047, double %5039)
  %5049 = load ptr, ptr %7, align 8, !tbaa !9
  %5050 = load i32, ptr %12, align 4, !tbaa !5
  %5051 = load i32, ptr %8, align 4, !tbaa !5
  %5052 = mul nsw i32 50, %5051
  %5053 = add nsw i32 %5050, %5052
  %5054 = sext i32 %5053 to i64
  %5055 = getelementptr inbounds double, ptr %5049, i64 %5054
  %5056 = load double, ptr %5055, align 8, !tbaa !11
  %5057 = call double @llvm.fmuladd.f64(double 0x3C8E000000000000, double %5056, double %5048)
  %5058 = load ptr, ptr %7, align 8, !tbaa !9
  %5059 = load i32, ptr %12, align 4, !tbaa !5
  %5060 = load i32, ptr %8, align 4, !tbaa !5
  %5061 = mul nsw i32 51, %5060
  %5062 = add nsw i32 %5059, %5061
  %5063 = sext i32 %5062 to i64
  %5064 = getelementptr inbounds double, ptr %5058, i64 %5063
  %5065 = load double, ptr %5064, align 8, !tbaa !11
  %5066 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %5065, double %5057)
  %5067 = load ptr, ptr %7, align 8, !tbaa !9
  %5068 = load i32, ptr %12, align 4, !tbaa !5
  %5069 = load i32, ptr %8, align 4, !tbaa !5
  %5070 = mul nsw i32 52, %5069
  %5071 = add nsw i32 %5068, %5070
  %5072 = sext i32 %5071 to i64
  %5073 = getelementptr inbounds double, ptr %5067, i64 %5072
  %5074 = load double, ptr %5073, align 8, !tbaa !11
  %5075 = call double @llvm.fmuladd.f64(double 0x3C7F775C4688EF29, double %5074, double %5066)
  %5076 = load ptr, ptr %7, align 8, !tbaa !9
  %5077 = load i32, ptr %12, align 4, !tbaa !5
  %5078 = load i32, ptr %8, align 4, !tbaa !5
  %5079 = mul nsw i32 53, %5078
  %5080 = add nsw i32 %5077, %5079
  %5081 = sext i32 %5080 to i64
  %5082 = getelementptr inbounds double, ptr %5076, i64 %5081
  %5083 = load double, ptr %5082, align 8, !tbaa !11
  %5084 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %5083, double %5075)
  %5085 = load ptr, ptr %7, align 8, !tbaa !9
  %5086 = load i32, ptr %12, align 4, !tbaa !5
  %5087 = load i32, ptr %8, align 4, !tbaa !5
  %5088 = mul nsw i32 54, %5087
  %5089 = add nsw i32 %5086, %5088
  %5090 = sext i32 %5089 to i64
  %5091 = getelementptr inbounds double, ptr %5085, i64 %5090
  %5092 = load double, ptr %5091, align 8, !tbaa !11
  %5093 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %5092, double %5084)
  %5094 = load ptr, ptr %7, align 8, !tbaa !9
  %5095 = load i32, ptr %12, align 4, !tbaa !5
  %5096 = load i32, ptr %8, align 4, !tbaa !5
  %5097 = mul nsw i32 55, %5096
  %5098 = add nsw i32 %5095, %5097
  %5099 = sext i32 %5098 to i64
  %5100 = getelementptr inbounds double, ptr %5094, i64 %5099
  %5101 = load double, ptr %5100, align 8, !tbaa !11
  %5102 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %5101, double %5093)
  %5103 = load ptr, ptr %7, align 8, !tbaa !9
  %5104 = load i32, ptr %12, align 4, !tbaa !5
  %5105 = load i32, ptr %8, align 4, !tbaa !5
  %5106 = mul nsw i32 56, %5105
  %5107 = add nsw i32 %5104, %5106
  %5108 = sext i32 %5107 to i64
  %5109 = getelementptr inbounds double, ptr %5103, i64 %5108
  %5110 = load double, ptr %5109, align 8, !tbaa !11
  %5111 = call double @llvm.fmuladd.f64(double 0xBFE7007BFD8FD85D, double %5110, double %5102)
  %5112 = load ptr, ptr %7, align 8, !tbaa !9
  %5113 = load i32, ptr %12, align 4, !tbaa !5
  %5114 = load i32, ptr %8, align 4, !tbaa !5
  %5115 = mul nsw i32 57, %5114
  %5116 = add nsw i32 %5113, %5115
  %5117 = sext i32 %5116 to i64
  %5118 = getelementptr inbounds double, ptr %5112, i64 %5117
  %5119 = load double, ptr %5118, align 8, !tbaa !11
  %5120 = call double @llvm.fmuladd.f64(double 0xBFE66643AEED3708, double %5119, double %5111)
  %5121 = load ptr, ptr %7, align 8, !tbaa !9
  %5122 = load i32, ptr %12, align 4, !tbaa !5
  %5123 = load i32, ptr %8, align 4, !tbaa !5
  %5124 = mul nsw i32 58, %5123
  %5125 = add nsw i32 %5122, %5124
  %5126 = sext i32 %5125 to i64
  %5127 = getelementptr inbounds double, ptr %5121, i64 %5126
  %5128 = load double, ptr %5127, align 8, !tbaa !11
  %5129 = call double @llvm.fmuladd.f64(double 0x3FAD5B74B5F10E9B, double %5128, double %5120)
  %5130 = load ptr, ptr %7, align 8, !tbaa !9
  %5131 = load i32, ptr %12, align 4, !tbaa !5
  %5132 = load i32, ptr %8, align 4, !tbaa !5
  %5133 = mul nsw i32 59, %5132
  %5134 = add nsw i32 %5131, %5133
  %5135 = sext i32 %5134 to i64
  %5136 = getelementptr inbounds double, ptr %5130, i64 %5135
  %5137 = load double, ptr %5136, align 8, !tbaa !11
  %5138 = call double @llvm.fmuladd.f64(double 0x3FA3F41B0E87BFB6, double %5137, double %5129)
  %5139 = load ptr, ptr %7, align 8, !tbaa !9
  %5140 = load i32, ptr %12, align 4, !tbaa !5
  %5141 = load i32, ptr %8, align 4, !tbaa !5
  %5142 = mul nsw i32 60, %5141
  %5143 = add nsw i32 %5140, %5142
  %5144 = sext i32 %5143 to i64
  %5145 = getelementptr inbounds double, ptr %5139, i64 %5144
  %5146 = load double, ptr %5145, align 8, !tbaa !11
  %5147 = call double @llvm.fmuladd.f64(double 0xBC9125B809AC6B51, double %5146, double %5138)
  %5148 = load ptr, ptr %7, align 8, !tbaa !9
  %5149 = load i32, ptr %12, align 4, !tbaa !5
  %5150 = load i32, ptr %8, align 4, !tbaa !5
  %5151 = mul nsw i32 61, %5150
  %5152 = add nsw i32 %5149, %5151
  %5153 = sext i32 %5152 to i64
  %5154 = getelementptr inbounds double, ptr %5148, i64 %5153
  %5155 = load double, ptr %5154, align 8, !tbaa !11
  %5156 = call double @llvm.fmuladd.f64(double 0x3C826280B3476096, double %5155, double %5147)
  %5157 = load ptr, ptr %7, align 8, !tbaa !9
  %5158 = load i32, ptr %12, align 4, !tbaa !5
  %5159 = load i32, ptr %8, align 4, !tbaa !5
  %5160 = mul nsw i32 62, %5159
  %5161 = add nsw i32 %5158, %5160
  %5162 = sext i32 %5161 to i64
  %5163 = getelementptr inbounds double, ptr %5157, i64 %5162
  %5164 = load double, ptr %5163, align 8, !tbaa !11
  %5165 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %5164, double %5156)
  %5166 = load ptr, ptr %7, align 8, !tbaa !9
  %5167 = load i32, ptr %12, align 4, !tbaa !5
  %5168 = load i32, ptr %8, align 4, !tbaa !5
  %5169 = mul nsw i32 63, %5168
  %5170 = add nsw i32 %5167, %5169
  %5171 = sext i32 %5170 to i64
  %5172 = getelementptr inbounds double, ptr %5166, i64 %5171
  %5173 = load double, ptr %5172, align 8, !tbaa !11
  %5174 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %5173, double %5165)
  %5175 = load ptr, ptr %7, align 8, !tbaa !9
  %5176 = load i32, ptr %12, align 4, !tbaa !5
  %5177 = load i32, ptr %8, align 4, !tbaa !5
  %5178 = mul nsw i32 64, %5177
  %5179 = add nsw i32 %5176, %5178
  %5180 = sext i32 %5179 to i64
  %5181 = getelementptr inbounds double, ptr %5175, i64 %5180
  %5182 = load double, ptr %5181, align 8, !tbaa !11
  %5183 = call double @llvm.fmuladd.f64(double 0x3C6B93C10CEB10E3, double %5182, double %5174)
  %5184 = load ptr, ptr %7, align 8, !tbaa !9
  %5185 = load i32, ptr %12, align 4, !tbaa !5
  %5186 = load i32, ptr %8, align 4, !tbaa !5
  %5187 = mul nsw i32 65, %5186
  %5188 = add nsw i32 %5185, %5187
  %5189 = sext i32 %5188 to i64
  %5190 = getelementptr inbounds double, ptr %5184, i64 %5189
  %5191 = load double, ptr %5190, align 8, !tbaa !11
  %5192 = call double @llvm.fmuladd.f64(double 0x3C8C48C6001F0AC0, double %5191, double %5183)
  %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 66, %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 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %5200, double %5192)
  %5202 = load ptr, ptr %7, align 8, !tbaa !9
  %5203 = load i32, ptr %12, align 4, !tbaa !5
  %5204 = load i32, ptr %8, align 4, !tbaa !5
  %5205 = mul nsw i32 67, %5204
  %5206 = add nsw i32 %5203, %5205
  %5207 = sext i32 %5206 to i64
  %5208 = getelementptr inbounds double, ptr %5202, i64 %5207
  %5209 = load double, ptr %5208, align 8, !tbaa !11
  %5210 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %5209, double %5201)
  store double %5210, ptr %11, align 8, !tbaa !11
  %5211 = load double, ptr %11, align 8, !tbaa !11
  %5212 = load ptr, ptr %9, align 8, !tbaa !9
  %5213 = load i32, ptr %12, align 4, !tbaa !5
  %5214 = load i32, ptr %10, align 4, !tbaa !5
  %5215 = mul nsw i32 17, %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 = fadd double %5219, %5211
  store double %5220, ptr %5218, align 8, !tbaa !11
  %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 36, %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 = load ptr, ptr %7, align 8, !tbaa !9
  %5230 = load i32, ptr %12, align 4, !tbaa !5
  %5231 = load i32, ptr %8, align 4, !tbaa !5
  %5232 = mul nsw i32 37, %5231
  %5233 = add nsw i32 %5230, %5232
  %5234 = sext i32 %5233 to i64
  %5235 = getelementptr inbounds double, ptr %5229, i64 %5234
  %5236 = load double, ptr %5235, align 8, !tbaa !11
  %5237 = fmul double 0xBC98000000000000, %5236
  %5238 = call double @llvm.fmuladd.f64(double 0x3C98800000000000, double %5228, double %5237)
  %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 38, %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 0xBCA2000000000000, 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 39, %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 0xBC90000000000000, 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 40, %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 0x3FC1964E14FA3C8D, 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 41, %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 0xBFD7BAC3393ADDAC, 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 42, %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 0xC01043858A1F5994, 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 43, %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 0xBFD7671404765114, 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 44, %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 0xBC92000000000000, 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 45, %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 0x3C90000000000000, 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 46, %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 0x3C98000000000000, 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 47, %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 0x3C90000000000000, 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 48, %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 0x3C7E000000000001, 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 49, %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 0xBC90000000000000, 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 50, %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 0xBC9C000000000000, 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 51, %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 0xBC7FFFFFFFFFFFFF, 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 52, %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 0x3C7ADEBC19B71701, 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 53, %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 0xBC90F876CCDF6CD9, 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 54, %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 0x3C9C48C6001F0ABF, 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 56, %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 0x3FA3F41B0E87BFE9, 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 57, %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 0x3FAD5B74B5F10E92, 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 58, %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 0xBFE66643AEED36FA, 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 59, %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 0xBFE7007BFD8FD85D, 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 60, %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 0xBC70F876CCDF6CD9, 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 61, %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 0xBC96A09E667F3BCC, 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 62, %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 0x3CA3CC8A99AF5452, double %5453, double %5445)
  %5455 = load ptr, ptr %7, align 8, !tbaa !9
  %5456 = load i32, ptr %12, align 4, !tbaa !5
  %5457 = load i32, ptr %8, align 4, !tbaa !5
  %5458 = mul nsw i32 63, %5457
  %5459 = add nsw i32 %5456, %5458
  %5460 = sext i32 %5459 to i64
  %5461 = getelementptr inbounds double, ptr %5455, i64 %5460
  %5462 = load double, ptr %5461, align 8, !tbaa !11
  %5463 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %5462, double %5454)
  %5464 = load ptr, ptr %7, align 8, !tbaa !9
  %5465 = load i32, ptr %12, align 4, !tbaa !5
  %5466 = load i32, ptr %8, align 4, !tbaa !5
  %5467 = mul nsw i32 64, %5466
  %5468 = add nsw i32 %5465, %5467
  %5469 = sext i32 %5468 to i64
  %5470 = getelementptr inbounds double, ptr %5464, i64 %5469
  %5471 = load double, ptr %5470, align 8, !tbaa !11
  %5472 = call double @llvm.fmuladd.f64(double 0x3C7DB2CFE686FE7B, double %5471, double %5463)
  %5473 = load ptr, ptr %7, align 8, !tbaa !9
  %5474 = load i32, ptr %12, align 4, !tbaa !5
  %5475 = load i32, ptr %8, align 4, !tbaa !5
  %5476 = mul nsw i32 65, %5475
  %5477 = add nsw i32 %5474, %5476
  %5478 = sext i32 %5477 to i64
  %5479 = getelementptr inbounds double, ptr %5473, i64 %5478
  %5480 = load double, ptr %5479, align 8, !tbaa !11
  %5481 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %5480, double %5472)
  %5482 = load ptr, ptr %7, align 8, !tbaa !9
  %5483 = load i32, ptr %12, align 4, !tbaa !5
  %5484 = load i32, ptr %8, align 4, !tbaa !5
  %5485 = mul nsw i32 66, %5484
  %5486 = add nsw i32 %5483, %5485
  %5487 = sext i32 %5486 to i64
  %5488 = getelementptr inbounds double, ptr %5482, i64 %5487
  %5489 = load double, ptr %5488, align 8, !tbaa !11
  %5490 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %5489, double %5481)
  store double %5490, ptr %11, align 8, !tbaa !11
  %5491 = load double, ptr %11, align 8, !tbaa !11
  %5492 = load ptr, ptr %9, align 8, !tbaa !9
  %5493 = load i32, ptr %12, align 4, !tbaa !5
  %5494 = load i32, ptr %10, align 4, !tbaa !5
  %5495 = mul nsw i32 18, %5494
  %5496 = add nsw i32 %5493, %5495
  %5497 = sext i32 %5496 to i64
  %5498 = getelementptr inbounds double, ptr %5492, i64 %5497
  %5499 = load double, ptr %5498, align 8, !tbaa !11
  %5500 = fadd double %5499, %5491
  store double %5500, ptr %5498, align 8, !tbaa !11
  %5501 = load ptr, ptr %7, align 8, !tbaa !9
  %5502 = load i32, ptr %12, align 4, !tbaa !5
  %5503 = load i32, ptr %8, align 4, !tbaa !5
  %5504 = mul nsw i32 36, %5503
  %5505 = add nsw i32 %5502, %5504
  %5506 = sext i32 %5505 to i64
  %5507 = getelementptr inbounds double, ptr %5501, i64 %5506
  %5508 = load double, ptr %5507, align 8, !tbaa !11
  %5509 = load ptr, ptr %7, align 8, !tbaa !9
  %5510 = load i32, ptr %12, align 4, !tbaa !5
  %5511 = load i32, ptr %8, align 4, !tbaa !5
  %5512 = mul nsw i32 37, %5511
  %5513 = add nsw i32 %5510, %5512
  %5514 = sext i32 %5513 to i64
  %5515 = getelementptr inbounds double, ptr %5509, i64 %5514
  %5516 = load double, ptr %5515, align 8, !tbaa !11
  %5517 = fmul double 0x3C98000000000000, %5516
  %5518 = call double @llvm.fmuladd.f64(double 0xBC82FFFFFFFFFFFF, double %5508, double %5517)
  %5519 = load ptr, ptr %7, align 8, !tbaa !9
  %5520 = load i32, ptr %12, align 4, !tbaa !5
  %5521 = load i32, ptr %8, align 4, !tbaa !5
  %5522 = mul nsw i32 38, %5521
  %5523 = add nsw i32 %5520, %5522
  %5524 = sext i32 %5523 to i64
  %5525 = getelementptr inbounds double, ptr %5519, i64 %5524
  %5526 = load double, ptr %5525, align 8, !tbaa !11
  %5527 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %5526, double %5518)
  %5528 = load ptr, ptr %7, align 8, !tbaa !9
  %5529 = load i32, ptr %12, align 4, !tbaa !5
  %5530 = load i32, ptr %8, align 4, !tbaa !5
  %5531 = mul nsw i32 40, %5530
  %5532 = add nsw i32 %5529, %5531
  %5533 = sext i32 %5532 to i64
  %5534 = getelementptr inbounds double, ptr %5528, i64 %5533
  %5535 = load double, ptr %5534, align 8, !tbaa !11
  %5536 = call double @llvm.fmuladd.f64(double 0xBFAC37F3CCE9FD85, double %5535, double %5527)
  %5537 = load ptr, ptr %7, align 8, !tbaa !9
  %5538 = load i32, ptr %12, align 4, !tbaa !5
  %5539 = load i32, ptr %8, align 4, !tbaa !5
  %5540 = mul nsw i32 41, %5539
  %5541 = add nsw i32 %5538, %5540
  %5542 = sext i32 %5541 to i64
  %5543 = getelementptr inbounds double, ptr %5537, i64 %5542
  %5544 = load double, ptr %5543, align 8, !tbaa !11
  %5545 = call double @llvm.fmuladd.f64(double 0xBFB4C23AD63BEF7C, double %5544, double %5536)
  %5546 = load ptr, ptr %7, align 8, !tbaa !9
  %5547 = load i32, ptr %12, align 4, !tbaa !5
  %5548 = load i32, ptr %8, align 4, !tbaa !5
  %5549 = mul nsw i32 42, %5548
  %5550 = add nsw i32 %5547, %5549
  %5551 = sext i32 %5550 to i64
  %5552 = getelementptr inbounds double, ptr %5546, i64 %5551
  %5553 = load double, ptr %5552, align 8, !tbaa !11
  %5554 = call double @llvm.fmuladd.f64(double 0x3FEFAD7976B5DE11, double %5553, double %5545)
  %5555 = load ptr, ptr %7, align 8, !tbaa !9
  %5556 = load i32, ptr %12, align 4, !tbaa !5
  %5557 = load i32, ptr %8, align 4, !tbaa !5
  %5558 = mul nsw i32 43, %5557
  %5559 = add nsw i32 %5556, %5558
  %5560 = sext i32 %5559 to i64
  %5561 = getelementptr inbounds double, ptr %5555, i64 %5560
  %5562 = load double, ptr %5561, align 8, !tbaa !11
  %5563 = call double @llvm.fmuladd.f64(double 0x3FF043C98657E812, double %5562, double %5554)
  %5564 = load ptr, ptr %7, align 8, !tbaa !9
  %5565 = load i32, ptr %12, align 4, !tbaa !5
  %5566 = load i32, ptr %8, align 4, !tbaa !5
  %5567 = mul nsw i32 44, %5566
  %5568 = add nsw i32 %5565, %5567
  %5569 = sext i32 %5568 to i64
  %5570 = getelementptr inbounds double, ptr %5564, i64 %5569
  %5571 = load double, ptr %5570, align 8, !tbaa !11
  %5572 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %5571, double %5563)
  %5573 = load ptr, ptr %7, align 8, !tbaa !9
  %5574 = load i32, ptr %12, align 4, !tbaa !5
  %5575 = load i32, ptr %8, align 4, !tbaa !5
  %5576 = mul nsw i32 45, %5575
  %5577 = add nsw i32 %5574, %5576
  %5578 = sext i32 %5577 to i64
  %5579 = getelementptr inbounds double, ptr %5573, i64 %5578
  %5580 = load double, ptr %5579, align 8, !tbaa !11
  %5581 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %5580, double %5572)
  %5582 = load ptr, ptr %7, align 8, !tbaa !9
  %5583 = load i32, ptr %12, align 4, !tbaa !5
  %5584 = load i32, ptr %8, align 4, !tbaa !5
  %5585 = mul nsw i32 46, %5584
  %5586 = add nsw i32 %5583, %5585
  %5587 = sext i32 %5586 to i64
  %5588 = getelementptr inbounds double, ptr %5582, i64 %5587
  %5589 = load double, ptr %5588, align 8, !tbaa !11
  %5590 = call double @llvm.fmuladd.f64(double 0xBCAC000000000000, double %5589, double %5581)
  %5591 = load ptr, ptr %7, align 8, !tbaa !9
  %5592 = load i32, ptr %12, align 4, !tbaa !5
  %5593 = load i32, ptr %8, align 4, !tbaa !5
  %5594 = mul nsw i32 47, %5593
  %5595 = add nsw i32 %5592, %5594
  %5596 = sext i32 %5595 to i64
  %5597 = getelementptr inbounds double, ptr %5591, i64 %5596
  %5598 = load double, ptr %5597, align 8, !tbaa !11
  %5599 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %5598, double %5590)
  %5600 = load ptr, ptr %7, align 8, !tbaa !9
  %5601 = load i32, ptr %12, align 4, !tbaa !5
  %5602 = load i32, ptr %8, align 4, !tbaa !5
  %5603 = mul nsw i32 48, %5602
  %5604 = add nsw i32 %5601, %5603
  %5605 = sext i32 %5604 to i64
  %5606 = getelementptr inbounds double, ptr %5600, i64 %5605
  %5607 = load double, ptr %5606, align 8, !tbaa !11
  %5608 = call double @llvm.fmuladd.f64(double 0xBC85000000000000, double %5607, double %5599)
  %5609 = load ptr, ptr %7, align 8, !tbaa !9
  %5610 = load i32, ptr %12, align 4, !tbaa !5
  %5611 = load i32, ptr %8, align 4, !tbaa !5
  %5612 = mul nsw i32 49, %5611
  %5613 = add nsw i32 %5610, %5612
  %5614 = sext i32 %5613 to i64
  %5615 = getelementptr inbounds double, ptr %5609, i64 %5614
  %5616 = load double, ptr %5615, align 8, !tbaa !11
  %5617 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %5616, double %5608)
  %5618 = load ptr, ptr %7, align 8, !tbaa !9
  %5619 = load i32, ptr %12, align 4, !tbaa !5
  %5620 = load i32, ptr %8, align 4, !tbaa !5
  %5621 = mul nsw i32 50, %5620
  %5622 = add nsw i32 %5619, %5621
  %5623 = sext i32 %5622 to i64
  %5624 = getelementptr inbounds double, ptr %5618, i64 %5623
  %5625 = load double, ptr %5624, align 8, !tbaa !11
  %5626 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %5625, double %5617)
  %5627 = load ptr, ptr %7, align 8, !tbaa !9
  %5628 = load i32, ptr %12, align 4, !tbaa !5
  %5629 = load i32, ptr %8, align 4, !tbaa !5
  %5630 = mul nsw i32 52, %5629
  %5631 = add nsw i32 %5628, %5630
  %5632 = sext i32 %5631 to i64
  %5633 = getelementptr inbounds double, ptr %5627, i64 %5632
  %5634 = load double, ptr %5633, align 8, !tbaa !11
  %5635 = call double @llvm.fmuladd.f64(double 0xBC9152F9467969C8, double %5634, double %5626)
  %5636 = load ptr, ptr %7, align 8, !tbaa !9
  %5637 = load i32, ptr %12, align 4, !tbaa !5
  %5638 = load i32, ptr %8, align 4, !tbaa !5
  %5639 = mul nsw i32 53, %5638
  %5640 = add nsw i32 %5637, %5639
  %5641 = sext i32 %5640 to i64
  %5642 = getelementptr inbounds double, ptr %5636, i64 %5641
  %5643 = load double, ptr %5642, align 8, !tbaa !11
  %5644 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %5643, double %5635)
  %5645 = load ptr, ptr %7, align 8, !tbaa !9
  %5646 = load i32, ptr %12, align 4, !tbaa !5
  %5647 = load i32, ptr %8, align 4, !tbaa !5
  %5648 = mul nsw i32 54, %5647
  %5649 = add nsw i32 %5646, %5648
  %5650 = sext i32 %5649 to i64
  %5651 = getelementptr inbounds double, ptr %5645, i64 %5650
  %5652 = load double, ptr %5651, align 8, !tbaa !11
  %5653 = call double @llvm.fmuladd.f64(double 0x3C9974B2334F2346, double %5652, double %5644)
  %5654 = load ptr, ptr %7, align 8, !tbaa !9
  %5655 = load i32, ptr %12, align 4, !tbaa !5
  %5656 = load i32, ptr %8, align 4, !tbaa !5
  %5657 = mul nsw i32 55, %5656
  %5658 = add nsw i32 %5655, %5657
  %5659 = sext i32 %5658 to i64
  %5660 = getelementptr inbounds double, ptr %5654, i64 %5659
  %5661 = load double, ptr %5660, align 8, !tbaa !11
  %5662 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %5661, double %5653)
  %5663 = load ptr, ptr %7, align 8, !tbaa !9
  %5664 = load i32, ptr %12, align 4, !tbaa !5
  %5665 = load i32, ptr %8, align 4, !tbaa !5
  %5666 = mul nsw i32 56, %5665
  %5667 = add nsw i32 %5664, %5666
  %5668 = sext i32 %5667 to i64
  %5669 = getelementptr inbounds double, ptr %5663, i64 %5668
  %5670 = load double, ptr %5669, align 8, !tbaa !11
  %5671 = call double @llvm.fmuladd.f64(double 0xBFB8DF388696F554, double %5670, double %5662)
  %5672 = load ptr, ptr %7, align 8, !tbaa !9
  %5673 = load i32, ptr %12, align 4, !tbaa !5
  %5674 = load i32, ptr %8, align 4, !tbaa !5
  %5675 = mul nsw i32 57, %5674
  %5676 = add nsw i32 %5673, %5675
  %5677 = sext i32 %5676 to i64
  %5678 = getelementptr inbounds double, ptr %5672, i64 %5677
  %5679 = load double, ptr %5678, align 8, !tbaa !11
  %5680 = call double @llvm.fmuladd.f64(double 0x3FD0C7817D9C3121, double %5679, double %5671)
  %5681 = load ptr, ptr %7, align 8, !tbaa !9
  %5682 = load i32, ptr %12, align 4, !tbaa !5
  %5683 = load i32, ptr %8, align 4, !tbaa !5
  %5684 = mul nsw i32 58, %5683
  %5685 = add nsw i32 %5682, %5684
  %5686 = sext i32 %5685 to i64
  %5687 = getelementptr inbounds double, ptr %5681, i64 %5686
  %5688 = load double, ptr %5687, align 8, !tbaa !11
  %5689 = call double @llvm.fmuladd.f64(double 0x4007001BD846D0AE, double %5688, double %5680)
  %5690 = load ptr, ptr %7, align 8, !tbaa !9
  %5691 = load i32, ptr %12, align 4, !tbaa !5
  %5692 = load i32, ptr %8, align 4, !tbaa !5
  %5693 = mul nsw i32 59, %5692
  %5694 = add nsw i32 %5691, %5693
  %5695 = sext i32 %5694 to i64
  %5696 = getelementptr inbounds double, ptr %5690, i64 %5695
  %5697 = load double, ptr %5696, align 8, !tbaa !11
  %5698 = call double @llvm.fmuladd.f64(double 0x3FD08C54FF1019FC, double %5697, double %5689)
  %5699 = load ptr, ptr %7, align 8, !tbaa !9
  %5700 = load i32, ptr %12, align 4, !tbaa !5
  %5701 = load i32, ptr %8, align 4, !tbaa !5
  %5702 = mul nsw i32 60, %5701
  %5703 = add nsw i32 %5700, %5702
  %5704 = sext i32 %5703 to i64
  %5705 = getelementptr inbounds double, ptr %5699, i64 %5704
  %5706 = load double, ptr %5705, align 8, !tbaa !11
  %5707 = call double @llvm.fmuladd.f64(double 0x3C8974B2334F2346, double %5706, double %5698)
  %5708 = load ptr, ptr %7, align 8, !tbaa !9
  %5709 = load i32, ptr %12, align 4, !tbaa !5
  %5710 = load i32, ptr %8, align 4, !tbaa !5
  %5711 = mul nsw i32 61, %5710
  %5712 = add nsw i32 %5709, %5711
  %5713 = sext i32 %5712 to i64
  %5714 = getelementptr inbounds double, ptr %5708, i64 %5713
  %5715 = load double, ptr %5714, align 8, !tbaa !11
  %5716 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %5715, double %5707)
  %5717 = load ptr, ptr %7, align 8, !tbaa !9
  %5718 = load i32, ptr %12, align 4, !tbaa !5
  %5719 = load i32, ptr %8, align 4, !tbaa !5
  %5720 = mul nsw i32 62, %5719
  %5721 = add nsw i32 %5718, %5720
  %5722 = sext i32 %5721 to i64
  %5723 = getelementptr inbounds double, ptr %5717, i64 %5722
  %5724 = load double, ptr %5723, align 8, !tbaa !11
  %5725 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %5724, double %5716)
  %5726 = load ptr, ptr %7, align 8, !tbaa !9
  %5727 = load i32, ptr %12, align 4, !tbaa !5
  %5728 = load i32, ptr %8, align 4, !tbaa !5
  %5729 = mul nsw i32 63, %5728
  %5730 = add nsw i32 %5727, %5729
  %5731 = sext i32 %5730 to i64
  %5732 = getelementptr inbounds double, ptr %5726, i64 %5731
  %5733 = load double, ptr %5732, align 8, !tbaa !11
  %5734 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %5733, double %5725)
  %5735 = load ptr, ptr %7, align 8, !tbaa !9
  %5736 = load i32, ptr %12, align 4, !tbaa !5
  %5737 = load i32, ptr %8, align 4, !tbaa !5
  %5738 = mul nsw i32 64, %5737
  %5739 = add nsw i32 %5736, %5738
  %5740 = sext i32 %5739 to i64
  %5741 = getelementptr inbounds double, ptr %5735, i64 %5740
  %5742 = load double, ptr %5741, align 8, !tbaa !11
  %5743 = call double @llvm.fmuladd.f64(double 0xBC75369480174810, double %5742, double %5734)
  %5744 = load ptr, ptr %7, align 8, !tbaa !9
  %5745 = load i32, ptr %12, align 4, !tbaa !5
  %5746 = load i32, ptr %8, align 4, !tbaa !5
  %5747 = mul nsw i32 65, %5746
  %5748 = add nsw i32 %5745, %5747
  %5749 = sext i32 %5748 to i64
  %5750 = getelementptr inbounds double, ptr %5744, i64 %5749
  %5751 = load double, ptr %5750, align 8, !tbaa !11
  %5752 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %5751, double %5743)
  %5753 = load ptr, ptr %7, align 8, !tbaa !9
  %5754 = load i32, ptr %12, align 4, !tbaa !5
  %5755 = load i32, ptr %8, align 4, !tbaa !5
  %5756 = mul nsw i32 66, %5755
  %5757 = add nsw i32 %5754, %5756
  %5758 = sext i32 %5757 to i64
  %5759 = getelementptr inbounds double, ptr %5753, i64 %5758
  %5760 = load double, ptr %5759, align 8, !tbaa !11
  %5761 = call double @llvm.fmuladd.f64(double 0x3C93CC8A99AF5452, double %5760, double %5752)
  %5762 = load ptr, ptr %7, align 8, !tbaa !9
  %5763 = load i32, ptr %12, align 4, !tbaa !5
  %5764 = load i32, ptr %8, align 4, !tbaa !5
  %5765 = mul nsw i32 67, %5764
  %5766 = add nsw i32 %5763, %5765
  %5767 = sext i32 %5766 to i64
  %5768 = getelementptr inbounds double, ptr %5762, i64 %5767
  %5769 = load double, ptr %5768, align 8, !tbaa !11
  %5770 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %5769, double %5761)
  store double %5770, ptr %11, align 8, !tbaa !11
  %5771 = load double, ptr %11, align 8, !tbaa !11
  %5772 = load ptr, ptr %9, align 8, !tbaa !9
  %5773 = load i32, ptr %12, align 4, !tbaa !5
  %5774 = load i32, ptr %10, align 4, !tbaa !5
  %5775 = mul nsw i32 19, %5774
  %5776 = add nsw i32 %5773, %5775
  %5777 = sext i32 %5776 to i64
  %5778 = getelementptr inbounds double, ptr %5772, i64 %5777
  %5779 = load double, ptr %5778, align 8, !tbaa !11
  %5780 = fadd double %5779, %5771
  store double %5780, ptr %5778, align 8, !tbaa !11
  %5781 = load ptr, ptr %7, align 8, !tbaa !9
  %5782 = load i32, ptr %12, align 4, !tbaa !5
  %5783 = load i32, ptr %8, align 4, !tbaa !5
  %5784 = mul nsw i32 36, %5783
  %5785 = add nsw i32 %5782, %5784
  %5786 = sext i32 %5785 to i64
  %5787 = getelementptr inbounds double, ptr %5781, i64 %5786
  %5788 = load double, ptr %5787, align 8, !tbaa !11
  %5789 = load ptr, ptr %7, align 8, !tbaa !9
  %5790 = load i32, ptr %12, align 4, !tbaa !5
  %5791 = load i32, ptr %8, align 4, !tbaa !5
  %5792 = mul nsw i32 37, %5791
  %5793 = add nsw i32 %5790, %5792
  %5794 = sext i32 %5793 to i64
  %5795 = getelementptr inbounds double, ptr %5789, i64 %5794
  %5796 = load double, ptr %5795, align 8, !tbaa !11
  %5797 = fmul double 0xBC89FFFFFFFFFFFF, %5796
  %5798 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %5788, double %5797)
  %5799 = load ptr, ptr %7, align 8, !tbaa !9
  %5800 = load i32, ptr %12, align 4, !tbaa !5
  %5801 = load i32, ptr %8, align 4, !tbaa !5
  %5802 = mul nsw i32 38, %5801
  %5803 = add nsw i32 %5800, %5802
  %5804 = sext i32 %5803 to i64
  %5805 = getelementptr inbounds double, ptr %5799, i64 %5804
  %5806 = load double, ptr %5805, align 8, !tbaa !11
  %5807 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %5806, double %5798)
  %5808 = load ptr, ptr %7, align 8, !tbaa !9
  %5809 = load i32, ptr %12, align 4, !tbaa !5
  %5810 = load i32, ptr %8, align 4, !tbaa !5
  %5811 = mul nsw i32 39, %5810
  %5812 = add nsw i32 %5809, %5811
  %5813 = sext i32 %5812 to i64
  %5814 = getelementptr inbounds double, ptr %5808, i64 %5813
  %5815 = load double, ptr %5814, align 8, !tbaa !11
  %5816 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %5815, double %5807)
  %5817 = load ptr, ptr %7, align 8, !tbaa !9
  %5818 = load i32, ptr %12, align 4, !tbaa !5
  %5819 = load i32, ptr %8, align 4, !tbaa !5
  %5820 = mul nsw i32 40, %5819
  %5821 = add nsw i32 %5818, %5820
  %5822 = sext i32 %5821 to i64
  %5823 = getelementptr inbounds double, ptr %5817, i64 %5822
  %5824 = load double, ptr %5823, align 8, !tbaa !11
  %5825 = call double @llvm.fmuladd.f64(double 0x3C6C000000000000, double %5824, double %5816)
  %5826 = load ptr, ptr %7, align 8, !tbaa !9
  %5827 = load i32, ptr %12, align 4, !tbaa !5
  %5828 = load i32, ptr %8, align 4, !tbaa !5
  %5829 = mul nsw i32 41, %5828
  %5830 = add nsw i32 %5827, %5829
  %5831 = sext i32 %5830 to i64
  %5832 = getelementptr inbounds double, ptr %5826, i64 %5831
  %5833 = load double, ptr %5832, align 8, !tbaa !11
  %5834 = call double @llvm.fmuladd.f64(double 0x3C9A000000000000, double %5833, double %5825)
  %5835 = load ptr, ptr %7, align 8, !tbaa !9
  %5836 = load i32, ptr %12, align 4, !tbaa !5
  %5837 = load i32, ptr %8, align 4, !tbaa !5
  %5838 = mul nsw i32 42, %5837
  %5839 = add nsw i32 %5836, %5838
  %5840 = sext i32 %5839 to i64
  %5841 = getelementptr inbounds double, ptr %5835, i64 %5840
  %5842 = load double, ptr %5841, align 8, !tbaa !11
  %5843 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %5842, double %5834)
  %5844 = load ptr, ptr %7, align 8, !tbaa !9
  %5845 = load i32, ptr %12, align 4, !tbaa !5
  %5846 = load i32, ptr %8, align 4, !tbaa !5
  %5847 = mul nsw i32 43, %5846
  %5848 = add nsw i32 %5845, %5847
  %5849 = sext i32 %5848 to i64
  %5850 = getelementptr inbounds double, ptr %5844, i64 %5849
  %5851 = load double, ptr %5850, align 8, !tbaa !11
  %5852 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %5851, double %5843)
  %5853 = load ptr, ptr %7, align 8, !tbaa !9
  %5854 = load i32, ptr %12, align 4, !tbaa !5
  %5855 = load i32, ptr %8, align 4, !tbaa !5
  %5856 = mul nsw i32 44, %5855
  %5857 = add nsw i32 %5854, %5856
  %5858 = sext i32 %5857 to i64
  %5859 = getelementptr inbounds double, ptr %5853, i64 %5858
  %5860 = load double, ptr %5859, align 8, !tbaa !11
  %5861 = call double @llvm.fmuladd.f64(double 0x3FA789B66AF4F45E, double %5860, double %5852)
  %5862 = load ptr, ptr %7, align 8, !tbaa !9
  %5863 = load i32, ptr %12, align 4, !tbaa !5
  %5864 = load i32, ptr %8, align 4, !tbaa !5
  %5865 = mul nsw i32 45, %5864
  %5866 = add nsw i32 %5863, %5865
  %5867 = sext i32 %5866 to i64
  %5868 = getelementptr inbounds double, ptr %5862, i64 %5867
  %5869 = load double, ptr %5868, align 8, !tbaa !11
  %5870 = call double @llvm.fmuladd.f64(double 0x3FEC2894019C8AD1, double %5869, double %5861)
  %5871 = load ptr, ptr %7, align 8, !tbaa !9
  %5872 = load i32, ptr %12, align 4, !tbaa !5
  %5873 = load i32, ptr %8, align 4, !tbaa !5
  %5874 = mul nsw i32 46, %5873
  %5875 = add nsw i32 %5872, %5874
  %5876 = sext i32 %5875 to i64
  %5877 = getelementptr inbounds double, ptr %5871, i64 %5876
  %5878 = load double, ptr %5877, align 8, !tbaa !11
  %5879 = call double @llvm.fmuladd.f64(double 0x3FEC2894019C8AC2, double %5878, double %5870)
  %5880 = load ptr, ptr %7, align 8, !tbaa !9
  %5881 = load i32, ptr %12, align 4, !tbaa !5
  %5882 = load i32, ptr %8, align 4, !tbaa !5
  %5883 = mul nsw i32 47, %5882
  %5884 = add nsw i32 %5881, %5883
  %5885 = sext i32 %5884 to i64
  %5886 = getelementptr inbounds double, ptr %5880, i64 %5885
  %5887 = load double, ptr %5886, align 8, !tbaa !11
  %5888 = call double @llvm.fmuladd.f64(double 0x3FA789B66AF4F55B, double %5887, double %5879)
  %5889 = load ptr, ptr %7, align 8, !tbaa !9
  %5890 = load i32, ptr %12, align 4, !tbaa !5
  %5891 = load i32, ptr %8, align 4, !tbaa !5
  %5892 = mul nsw i32 48, %5891
  %5893 = add nsw i32 %5890, %5892
  %5894 = sext i32 %5893 to i64
  %5895 = getelementptr inbounds double, ptr %5889, i64 %5894
  %5896 = load double, ptr %5895, align 8, !tbaa !11
  %5897 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %5896, double %5888)
  %5898 = load ptr, ptr %7, align 8, !tbaa !9
  %5899 = load i32, ptr %12, align 4, !tbaa !5
  %5900 = load i32, ptr %8, align 4, !tbaa !5
  %5901 = mul nsw i32 49, %5900
  %5902 = add nsw i32 %5899, %5901
  %5903 = sext i32 %5902 to i64
  %5904 = getelementptr inbounds double, ptr %5898, i64 %5903
  %5905 = load double, ptr %5904, align 8, !tbaa !11
  %5906 = call double @llvm.fmuladd.f64(double 0xBC93000000000000, double %5905, double %5897)
  %5907 = load ptr, ptr %7, align 8, !tbaa !9
  %5908 = load i32, ptr %12, align 4, !tbaa !5
  %5909 = load i32, ptr %8, align 4, !tbaa !5
  %5910 = mul nsw i32 50, %5909
  %5911 = add nsw i32 %5908, %5910
  %5912 = sext i32 %5911 to i64
  %5913 = getelementptr inbounds double, ptr %5907, i64 %5912
  %5914 = load double, ptr %5913, align 8, !tbaa !11
  %5915 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %5914, double %5906)
  %5916 = load ptr, ptr %7, align 8, !tbaa !9
  %5917 = load i32, ptr %12, align 4, !tbaa !5
  %5918 = load i32, ptr %8, align 4, !tbaa !5
  %5919 = mul nsw i32 51, %5918
  %5920 = add nsw i32 %5917, %5919
  %5921 = sext i32 %5920 to i64
  %5922 = getelementptr inbounds double, ptr %5916, i64 %5921
  %5923 = load double, ptr %5922, align 8, !tbaa !11
  %5924 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %5923, double %5915)
  %5925 = load ptr, ptr %7, align 8, !tbaa !9
  %5926 = load i32, ptr %12, align 4, !tbaa !5
  %5927 = load i32, ptr %8, align 4, !tbaa !5
  %5928 = mul nsw i32 52, %5927
  %5929 = add nsw i32 %5926, %5928
  %5930 = sext i32 %5929 to i64
  %5931 = getelementptr inbounds double, ptr %5925, i64 %5930
  %5932 = load double, ptr %5931, align 8, !tbaa !11
  %5933 = call double @llvm.fmuladd.f64(double 0xBC50F876CCDF6CD8, double %5932, double %5924)
  %5934 = load ptr, ptr %7, align 8, !tbaa !9
  %5935 = load i32, ptr %12, align 4, !tbaa !5
  %5936 = load i32, ptr %8, align 4, !tbaa !5
  %5937 = mul nsw i32 53, %5936
  %5938 = add nsw i32 %5935, %5937
  %5939 = sext i32 %5938 to i64
  %5940 = getelementptr inbounds double, ptr %5934, i64 %5939
  %5941 = load double, ptr %5940, align 8, !tbaa !11
  %5942 = call double @llvm.fmuladd.f64(double 0x3C7F1CD9CCEEF238, double %5941, double %5933)
  %5943 = load ptr, ptr %7, align 8, !tbaa !9
  %5944 = load i32, ptr %12, align 4, !tbaa !5
  %5945 = load i32, ptr %8, align 4, !tbaa !5
  %5946 = mul nsw i32 54, %5945
  %5947 = add nsw i32 %5944, %5946
  %5948 = sext i32 %5947 to i64
  %5949 = getelementptr inbounds double, ptr %5943, i64 %5948
  %5950 = load double, ptr %5949, align 8, !tbaa !11
  %5951 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %5950, double %5942)
  %5952 = load ptr, ptr %7, align 8, !tbaa !9
  %5953 = load i32, ptr %12, align 4, !tbaa !5
  %5954 = load i32, ptr %8, align 4, !tbaa !5
  %5955 = mul nsw i32 55, %5954
  %5956 = add nsw i32 %5953, %5955
  %5957 = sext i32 %5956 to i64
  %5958 = getelementptr inbounds double, ptr %5952, i64 %5957
  %5959 = load double, ptr %5958, align 8, !tbaa !11
  %5960 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %5959, double %5951)
  %5961 = load ptr, ptr %7, align 8, !tbaa !9
  %5962 = load i32, ptr %12, align 4, !tbaa !5
  %5963 = load i32, ptr %8, align 4, !tbaa !5
  %5964 = mul nsw i32 56, %5963
  %5965 = add nsw i32 %5962, %5964
  %5966 = sext i32 %5965 to i64
  %5967 = getelementptr inbounds double, ptr %5961, i64 %5966
  %5968 = load double, ptr %5967, align 8, !tbaa !11
  %5969 = call double @llvm.fmuladd.f64(double 0xBC9207FE39AD63A7, double %5968, double %5960)
  %5970 = load ptr, ptr %7, align 8, !tbaa !9
  %5971 = load i32, ptr %12, align 4, !tbaa !5
  %5972 = load i32, ptr %8, align 4, !tbaa !5
  %5973 = mul nsw i32 57, %5972
  %5974 = add nsw i32 %5971, %5973
  %5975 = sext i32 %5974 to i64
  %5976 = getelementptr inbounds double, ptr %5970, i64 %5975
  %5977 = load double, ptr %5976, align 8, !tbaa !11
  %5978 = call double @llvm.fmuladd.f64(double 0xBC83CC8A99AF5451, double %5977, double %5969)
  %5979 = load ptr, ptr %7, align 8, !tbaa !9
  %5980 = load i32, ptr %12, align 4, !tbaa !5
  %5981 = load i32, ptr %8, align 4, !tbaa !5
  %5982 = mul nsw i32 59, %5981
  %5983 = add nsw i32 %5980, %5982
  %5984 = sext i32 %5983 to i64
  %5985 = getelementptr inbounds double, ptr %5979, i64 %5984
  %5986 = load double, ptr %5985, align 8, !tbaa !11
  %5987 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %5986, double %5978)
  %5988 = load ptr, ptr %7, align 8, !tbaa !9
  %5989 = load i32, ptr %12, align 4, !tbaa !5
  %5990 = load i32, ptr %8, align 4, !tbaa !5
  %5991 = mul nsw i32 60, %5990
  %5992 = add nsw i32 %5989, %5991
  %5993 = sext i32 %5992 to i64
  %5994 = getelementptr inbounds double, ptr %5988, i64 %5993
  %5995 = load double, ptr %5994, align 8, !tbaa !11
  %5996 = call double @llvm.fmuladd.f64(double 0xBFA0A4D27CF86DCE, double %5995, double %5987)
  %5997 = load ptr, ptr %7, align 8, !tbaa !9
  %5998 = load i32, ptr %12, align 4, !tbaa !5
  %5999 = load i32, ptr %8, align 4, !tbaa !5
  %6000 = mul nsw i32 61, %5999
  %6001 = add nsw i32 %5998, %6000
  %6002 = sext i32 %6001 to i64
  %6003 = getelementptr inbounds double, ptr %5997, i64 %6002
  %6004 = load double, ptr %6003, align 8, !tbaa !11
  %6005 = call double @llvm.fmuladd.f64(double 0xBFE3E93C07AFC382, double %6004, double %5996)
  %6006 = load ptr, ptr %7, align 8, !tbaa !9
  %6007 = load i32, ptr %12, align 4, !tbaa !5
  %6008 = load i32, ptr %8, align 4, !tbaa !5
  %6009 = mul nsw i32 62, %6008
  %6010 = add nsw i32 %6007, %6009
  %6011 = sext i32 %6010 to i64
  %6012 = getelementptr inbounds double, ptr %6006, i64 %6011
  %6013 = load double, ptr %6012, align 8, !tbaa !11
  %6014 = call double @llvm.fmuladd.f64(double 0xBFE3E93C07AFC37F, double %6013, double %6005)
  %6015 = load ptr, ptr %7, align 8, !tbaa !9
  %6016 = load i32, ptr %12, align 4, !tbaa !5
  %6017 = load i32, ptr %8, align 4, !tbaa !5
  %6018 = mul nsw i32 63, %6017
  %6019 = add nsw i32 %6016, %6018
  %6020 = sext i32 %6019 to i64
  %6021 = getelementptr inbounds double, ptr %6015, i64 %6020
  %6022 = load double, ptr %6021, align 8, !tbaa !11
  %6023 = call double @llvm.fmuladd.f64(double 0xBFA0A4D27CF86DB4, double %6022, double %6014)
  %6024 = load ptr, ptr %7, align 8, !tbaa !9
  %6025 = load i32, ptr %12, align 4, !tbaa !5
  %6026 = load i32, ptr %8, align 4, !tbaa !5
  %6027 = mul nsw i32 64, %6026
  %6028 = add nsw i32 %6025, %6027
  %6029 = sext i32 %6028 to i64
  %6030 = getelementptr inbounds double, ptr %6024, i64 %6029
  %6031 = load double, ptr %6030, align 8, !tbaa !11
  %6032 = call double @llvm.fmuladd.f64(double 0xBC84818F8CE34E32, double %6031, double %6023)
  %6033 = load ptr, ptr %7, align 8, !tbaa !9
  %6034 = load i32, ptr %12, align 4, !tbaa !5
  %6035 = load i32, ptr %8, align 4, !tbaa !5
  %6036 = mul nsw i32 65, %6035
  %6037 = add nsw i32 %6034, %6036
  %6038 = sext i32 %6037 to i64
  %6039 = getelementptr inbounds double, ptr %6033, i64 %6038
  %6040 = load double, ptr %6039, align 8, !tbaa !11
  %6041 = call double @llvm.fmuladd.f64(double 0x3C6C48C6001F0ABE, double %6040, double %6032)
  %6042 = load ptr, ptr %7, align 8, !tbaa !9
  %6043 = load i32, ptr %12, align 4, !tbaa !5
  %6044 = load i32, ptr %8, align 4, !tbaa !5
  %6045 = mul nsw i32 66, %6044
  %6046 = add nsw i32 %6043, %6045
  %6047 = sext i32 %6046 to i64
  %6048 = getelementptr inbounds double, ptr %6042, i64 %6047
  %6049 = load double, ptr %6048, align 8, !tbaa !11
  %6050 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %6049, double %6041)
  %6051 = load ptr, ptr %7, align 8, !tbaa !9
  %6052 = load i32, ptr %12, align 4, !tbaa !5
  %6053 = load i32, ptr %8, align 4, !tbaa !5
  %6054 = mul nsw i32 67, %6053
  %6055 = add nsw i32 %6052, %6054
  %6056 = sext i32 %6055 to i64
  %6057 = getelementptr inbounds double, ptr %6051, i64 %6056
  %6058 = load double, ptr %6057, align 8, !tbaa !11
  %6059 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %6058, double %6050)
  store double %6059, ptr %11, align 8, !tbaa !11
  %6060 = load double, ptr %11, align 8, !tbaa !11
  %6061 = load ptr, ptr %9, align 8, !tbaa !9
  %6062 = load i32, ptr %12, align 4, !tbaa !5
  %6063 = load i32, ptr %10, align 4, !tbaa !5
  %6064 = mul nsw i32 20, %6063
  %6065 = add nsw i32 %6062, %6064
  %6066 = sext i32 %6065 to i64
  %6067 = getelementptr inbounds double, ptr %6061, i64 %6066
  %6068 = load double, ptr %6067, align 8, !tbaa !11
  %6069 = fadd double %6068, %6060
  store double %6069, ptr %6067, align 8, !tbaa !11
  %6070 = load ptr, ptr %7, align 8, !tbaa !9
  %6071 = load i32, ptr %12, align 4, !tbaa !5
  %6072 = load i32, ptr %8, align 4, !tbaa !5
  %6073 = mul nsw i32 36, %6072
  %6074 = add nsw i32 %6071, %6073
  %6075 = sext i32 %6074 to i64
  %6076 = getelementptr inbounds double, ptr %6070, i64 %6075
  %6077 = load double, ptr %6076, align 8, !tbaa !11
  %6078 = load ptr, ptr %7, align 8, !tbaa !9
  %6079 = load i32, ptr %12, align 4, !tbaa !5
  %6080 = load i32, ptr %8, align 4, !tbaa !5
  %6081 = mul nsw i32 37, %6080
  %6082 = add nsw i32 %6079, %6081
  %6083 = sext i32 %6082 to i64
  %6084 = getelementptr inbounds double, ptr %6078, i64 %6083
  %6085 = load double, ptr %6084, align 8, !tbaa !11
  %6086 = fmul double 0xBC98000000000000, %6085
  %6087 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %6077, double %6086)
  %6088 = load ptr, ptr %7, align 8, !tbaa !9
  %6089 = load i32, ptr %12, align 4, !tbaa !5
  %6090 = load i32, ptr %8, align 4, !tbaa !5
  %6091 = mul nsw i32 38, %6090
  %6092 = add nsw i32 %6089, %6091
  %6093 = sext i32 %6092 to i64
  %6094 = getelementptr inbounds double, ptr %6088, i64 %6093
  %6095 = load double, ptr %6094, align 8, !tbaa !11
  %6096 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %6095, double %6087)
  %6097 = load ptr, ptr %7, align 8, !tbaa !9
  %6098 = load i32, ptr %12, align 4, !tbaa !5
  %6099 = load i32, ptr %8, align 4, !tbaa !5
  %6100 = mul nsw i32 39, %6099
  %6101 = add nsw i32 %6098, %6100
  %6102 = sext i32 %6101 to i64
  %6103 = getelementptr inbounds double, ptr %6097, i64 %6102
  %6104 = load double, ptr %6103, align 8, !tbaa !11
  %6105 = call double @llvm.fmuladd.f64(double 0xBCB0000000000000, double %6104, double %6096)
  %6106 = load ptr, ptr %7, align 8, !tbaa !9
  %6107 = load i32, ptr %12, align 4, !tbaa !5
  %6108 = load i32, ptr %8, align 4, !tbaa !5
  %6109 = mul nsw i32 40, %6108
  %6110 = add nsw i32 %6107, %6109
  %6111 = sext i32 %6110 to i64
  %6112 = getelementptr inbounds double, ptr %6106, i64 %6111
  %6113 = load double, ptr %6112, align 8, !tbaa !11
  %6114 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %6113, double %6105)
  %6115 = load ptr, ptr %7, align 8, !tbaa !9
  %6116 = load i32, ptr %12, align 4, !tbaa !5
  %6117 = load i32, ptr %8, align 4, !tbaa !5
  %6118 = mul nsw i32 42, %6117
  %6119 = add nsw i32 %6116, %6118
  %6120 = sext i32 %6119 to i64
  %6121 = getelementptr inbounds double, ptr %6115, i64 %6120
  %6122 = load double, ptr %6121, align 8, !tbaa !11
  %6123 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %6122, double %6114)
  %6124 = load ptr, ptr %7, align 8, !tbaa !9
  %6125 = load i32, ptr %12, align 4, !tbaa !5
  %6126 = load i32, ptr %8, align 4, !tbaa !5
  %6127 = mul nsw i32 43, %6126
  %6128 = add nsw i32 %6125, %6127
  %6129 = sext i32 %6128 to i64
  %6130 = getelementptr inbounds double, ptr %6124, i64 %6129
  %6131 = load double, ptr %6130, align 8, !tbaa !11
  %6132 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %6131, double %6123)
  %6133 = load ptr, ptr %7, align 8, !tbaa !9
  %6134 = load i32, ptr %12, align 4, !tbaa !5
  %6135 = load i32, ptr %8, align 4, !tbaa !5
  %6136 = mul nsw i32 44, %6135
  %6137 = add nsw i32 %6134, %6136
  %6138 = sext i32 %6137 to i64
  %6139 = getelementptr inbounds double, ptr %6133, i64 %6138
  %6140 = load double, ptr %6139, align 8, !tbaa !11
  %6141 = call double @llvm.fmuladd.f64(double 0xBFACD49071EC5F4A, double %6140, double %6132)
  %6142 = load ptr, ptr %7, align 8, !tbaa !9
  %6143 = load i32, ptr %12, align 4, !tbaa !5
  %6144 = load i32, ptr %8, align 4, !tbaa !5
  %6145 = mul nsw i32 45, %6144
  %6146 = add nsw i32 %6143, %6145
  %6147 = sext i32 %6146 to i64
  %6148 = getelementptr inbounds double, ptr %6142, i64 %6147
  %6149 = load double, ptr %6148, align 8, !tbaa !11
  %6150 = call double @llvm.fmuladd.f64(double 0x3FCEFDC8894D082A, double %6149, double %6141)
  %6151 = load ptr, ptr %7, align 8, !tbaa !9
  %6152 = load i32, ptr %12, align 4, !tbaa !5
  %6153 = load i32, ptr %8, align 4, !tbaa !5
  %6154 = mul nsw i32 46, %6153
  %6155 = add nsw i32 %6152, %6154
  %6156 = sext i32 %6155 to i64
  %6157 = getelementptr inbounds double, ptr %6151, i64 %6156
  %6158 = load double, ptr %6157, align 8, !tbaa !11
  %6159 = call double @llvm.fmuladd.f64(double 0xBFDD2EB9CCB3BDEB, double %6158, double %6150)
  %6160 = load ptr, ptr %7, align 8, !tbaa !9
  %6161 = load i32, ptr %12, align 4, !tbaa !5
  %6162 = load i32, ptr %8, align 4, !tbaa !5
  %6163 = mul nsw i32 47, %6162
  %6164 = add nsw i32 %6161, %6163
  %6165 = sext i32 %6164 to i64
  %6166 = getelementptr inbounds double, ptr %6160, i64 %6165
  %6167 = load double, ptr %6166, align 8, !tbaa !11
  %6168 = call double @llvm.fmuladd.f64(double 0xC01569E165D79419, double %6167, double %6159)
  %6169 = load ptr, ptr %7, align 8, !tbaa !9
  %6170 = load i32, ptr %12, align 4, !tbaa !5
  %6171 = load i32, ptr %8, align 4, !tbaa !5
  %6172 = mul nsw i32 48, %6171
  %6173 = add nsw i32 %6170, %6172
  %6174 = sext i32 %6173 to i64
  %6175 = getelementptr inbounds double, ptr %6169, i64 %6174
  %6176 = load double, ptr %6175, align 8, !tbaa !11
  %6177 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %6176, double %6168)
  %6178 = load ptr, ptr %7, align 8, !tbaa !9
  %6179 = load i32, ptr %12, align 4, !tbaa !5
  %6180 = load i32, ptr %8, align 4, !tbaa !5
  %6181 = mul nsw i32 49, %6180
  %6182 = add nsw i32 %6179, %6181
  %6183 = sext i32 %6182 to i64
  %6184 = getelementptr inbounds double, ptr %6178, i64 %6183
  %6185 = load double, ptr %6184, align 8, !tbaa !11
  %6186 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %6185, double %6177)
  %6187 = load ptr, ptr %7, align 8, !tbaa !9
  %6188 = load i32, ptr %12, align 4, !tbaa !5
  %6189 = load i32, ptr %8, align 4, !tbaa !5
  %6190 = mul nsw i32 50, %6189
  %6191 = add nsw i32 %6188, %6190
  %6192 = sext i32 %6191 to i64
  %6193 = getelementptr inbounds double, ptr %6187, i64 %6192
  %6194 = load double, ptr %6193, align 8, !tbaa !11
  %6195 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %6194, double %6186)
  %6196 = load ptr, ptr %7, align 8, !tbaa !9
  %6197 = load i32, ptr %12, align 4, !tbaa !5
  %6198 = load i32, ptr %8, align 4, !tbaa !5
  %6199 = mul nsw i32 51, %6198
  %6200 = add nsw i32 %6197, %6199
  %6201 = sext i32 %6200 to i64
  %6202 = getelementptr inbounds double, ptr %6196, i64 %6201
  %6203 = load double, ptr %6202, align 8, !tbaa !11
  %6204 = call double @llvm.fmuladd.f64(double 0xBCB0000000000000, double %6203, double %6195)
  %6205 = load ptr, ptr %7, align 8, !tbaa !9
  %6206 = load i32, ptr %12, align 4, !tbaa !5
  %6207 = load i32, ptr %8, align 4, !tbaa !5
  %6208 = mul nsw i32 52, %6207
  %6209 = add nsw i32 %6206, %6208
  %6210 = sext i32 %6209 to i64
  %6211 = getelementptr inbounds double, ptr %6205, i64 %6210
  %6212 = load double, ptr %6211, align 8, !tbaa !11
  %6213 = call double @llvm.fmuladd.f64(double 0x3C70F876CCDF6CD9, double %6212, double %6204)
  %6214 = load ptr, ptr %7, align 8, !tbaa !9
  %6215 = load i32, ptr %12, align 4, !tbaa !5
  %6216 = load i32, ptr %8, align 4, !tbaa !5
  %6217 = mul nsw i32 53, %6216
  %6218 = add nsw i32 %6215, %6217
  %6219 = sext i32 %6218 to i64
  %6220 = getelementptr inbounds double, ptr %6214, i64 %6219
  %6221 = load double, ptr %6220, align 8, !tbaa !11
  %6222 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %6221, double %6213)
  %6223 = load ptr, ptr %7, align 8, !tbaa !9
  %6224 = load i32, ptr %12, align 4, !tbaa !5
  %6225 = load i32, ptr %8, align 4, !tbaa !5
  %6226 = mul nsw i32 54, %6225
  %6227 = add nsw i32 %6224, %6226
  %6228 = sext i32 %6227 to i64
  %6229 = getelementptr inbounds double, ptr %6223, i64 %6228
  %6230 = load double, ptr %6229, align 8, !tbaa !11
  %6231 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %6230, double %6222)
  %6232 = load ptr, ptr %7, align 8, !tbaa !9
  %6233 = load i32, ptr %12, align 4, !tbaa !5
  %6234 = load i32, ptr %8, align 4, !tbaa !5
  %6235 = mul nsw i32 55, %6234
  %6236 = add nsw i32 %6233, %6235
  %6237 = sext i32 %6236 to i64
  %6238 = getelementptr inbounds double, ptr %6232, i64 %6237
  %6239 = load double, ptr %6238, align 8, !tbaa !11
  %6240 = call double @llvm.fmuladd.f64(double 0x3C96A09E667F3BCC, double %6239, double %6231)
  %6241 = load ptr, ptr %7, align 8, !tbaa !9
  %6242 = load i32, ptr %12, align 4, !tbaa !5
  %6243 = load i32, ptr %8, align 4, !tbaa !5
  %6244 = mul nsw i32 56, %6243
  %6245 = add nsw i32 %6242, %6244
  %6246 = sext i32 %6245 to i64
  %6247 = getelementptr inbounds double, ptr %6241, i64 %6246
  %6248 = load double, ptr %6247, align 8, !tbaa !11
  %6249 = call double @llvm.fmuladd.f64(double 0x3C70F876CCDF6CD9, double %6248, double %6240)
  %6250 = load ptr, ptr %7, align 8, !tbaa !9
  %6251 = load i32, ptr %12, align 4, !tbaa !5
  %6252 = load i32, ptr %8, align 4, !tbaa !5
  %6253 = mul nsw i32 57, %6252
  %6254 = add nsw i32 %6251, %6253
  %6255 = sext i32 %6254 to i64
  %6256 = getelementptr inbounds double, ptr %6250, i64 %6255
  %6257 = load double, ptr %6256, align 8, !tbaa !11
  %6258 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %6257, double %6249)
  %6259 = load ptr, ptr %7, align 8, !tbaa !9
  %6260 = load i32, ptr %12, align 4, !tbaa !5
  %6261 = load i32, ptr %8, align 4, !tbaa !5
  %6262 = mul nsw i32 58, %6261
  %6263 = add nsw i32 %6260, %6262
  %6264 = sext i32 %6263 to i64
  %6265 = getelementptr inbounds double, ptr %6259, i64 %6264
  %6266 = load double, ptr %6265, align 8, !tbaa !11
  %6267 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %6266, double %6258)
  %6268 = load ptr, ptr %7, align 8, !tbaa !9
  %6269 = load i32, ptr %12, align 4, !tbaa !5
  %6270 = load i32, ptr %8, align 4, !tbaa !5
  %6271 = mul nsw i32 59, %6270
  %6272 = add nsw i32 %6269, %6271
  %6273 = sext i32 %6272 to i64
  %6274 = getelementptr inbounds double, ptr %6268, i64 %6273
  %6275 = load double, ptr %6274, align 8, !tbaa !11
  %6276 = call double @llvm.fmuladd.f64(double 0xBCC3CC8A99AF5452, double %6275, double %6267)
  %6277 = load ptr, ptr %7, align 8, !tbaa !9
  %6278 = load i32, ptr %12, align 4, !tbaa !5
  %6279 = load i32, ptr %8, align 4, !tbaa !5
  %6280 = mul nsw i32 60, %6279
  %6281 = add nsw i32 %6278, %6280
  %6282 = sext i32 %6281 to i64
  %6283 = getelementptr inbounds double, ptr %6277, i64 %6282
  %6284 = load double, ptr %6283, align 8, !tbaa !11
  %6285 = call double @llvm.fmuladd.f64(double 0x3FA462D8D66D7FBE, double %6284, double %6276)
  %6286 = load ptr, ptr %7, align 8, !tbaa !9
  %6287 = load i32, ptr %12, align 4, !tbaa !5
  %6288 = load i32, ptr %8, align 4, !tbaa !5
  %6289 = mul nsw i32 61, %6288
  %6290 = add nsw i32 %6287, %6289
  %6291 = sext i32 %6290 to i64
  %6292 = getelementptr inbounds double, ptr %6286, i64 %6291
  %6293 = load double, ptr %6292, align 8, !tbaa !11
  %6294 = call double @llvm.fmuladd.f64(double 0xBFC5EA083165C4F6, double %6293, double %6285)
  %6295 = load ptr, ptr %7, align 8, !tbaa !9
  %6296 = load i32, ptr %12, align 4, !tbaa !5
  %6297 = load i32, ptr %8, align 4, !tbaa !5
  %6298 = mul nsw i32 62, %6297
  %6299 = add nsw i32 %6296, %6298
  %6300 = sext i32 %6299 to i64
  %6301 = getelementptr inbounds double, ptr %6295, i64 %6300
  %6302 = load double, ptr %6301, align 8, !tbaa !11
  %6303 = call double @llvm.fmuladd.f64(double 0x3FD4A299D1E97012, double %6302, double %6294)
  %6304 = load ptr, ptr %7, align 8, !tbaa !9
  %6305 = load i32, ptr %12, align 4, !tbaa !5
  %6306 = load i32, ptr %8, align 4, !tbaa !5
  %6307 = mul nsw i32 63, %6306
  %6308 = add nsw i32 %6305, %6307
  %6309 = sext i32 %6308 to i64
  %6310 = getelementptr inbounds double, ptr %6304, i64 %6309
  %6311 = load double, ptr %6310, align 8, !tbaa !11
  %6312 = call double @llvm.fmuladd.f64(double 0x400E488CB8C1EA78, double %6311, double %6303)
  %6313 = load ptr, ptr %7, align 8, !tbaa !9
  %6314 = load i32, ptr %12, align 4, !tbaa !5
  %6315 = load i32, ptr %8, align 4, !tbaa !5
  %6316 = mul nsw i32 64, %6315
  %6317 = add nsw i32 %6314, %6316
  %6318 = sext i32 %6317 to i64
  %6319 = getelementptr inbounds double, ptr %6313, i64 %6318
  %6320 = load double, ptr %6319, align 8, !tbaa !11
  %6321 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %6320, double %6312)
  %6322 = load ptr, ptr %7, align 8, !tbaa !9
  %6323 = load i32, ptr %12, align 4, !tbaa !5
  %6324 = load i32, ptr %8, align 4, !tbaa !5
  %6325 = mul nsw i32 65, %6324
  %6326 = add nsw i32 %6323, %6325
  %6327 = sext i32 %6326 to i64
  %6328 = getelementptr inbounds double, ptr %6322, i64 %6327
  %6329 = load double, ptr %6328, align 8, !tbaa !11
  %6330 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %6329, double %6321)
  %6331 = load ptr, ptr %7, align 8, !tbaa !9
  %6332 = load i32, ptr %12, align 4, !tbaa !5
  %6333 = load i32, ptr %8, align 4, !tbaa !5
  %6334 = mul nsw i32 66, %6333
  %6335 = add nsw i32 %6332, %6334
  %6336 = sext i32 %6335 to i64
  %6337 = getelementptr inbounds double, ptr %6331, i64 %6336
  %6338 = load double, ptr %6337, align 8, !tbaa !11
  %6339 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %6338, double %6330)
  %6340 = load ptr, ptr %7, align 8, !tbaa !9
  %6341 = load i32, ptr %12, align 4, !tbaa !5
  %6342 = load i32, ptr %8, align 4, !tbaa !5
  %6343 = mul nsw i32 67, %6342
  %6344 = add nsw i32 %6341, %6343
  %6345 = sext i32 %6344 to i64
  %6346 = getelementptr inbounds double, ptr %6340, i64 %6345
  %6347 = load double, ptr %6346, align 8, !tbaa !11
  %6348 = call double @llvm.fmuladd.f64(double 0x3CB0F876CCDF6CD8, double %6347, double %6339)
  store double %6348, ptr %11, align 8, !tbaa !11
  %6349 = load double, ptr %11, align 8, !tbaa !11
  %6350 = load ptr, ptr %9, align 8, !tbaa !9
  %6351 = load i32, ptr %12, align 4, !tbaa !5
  %6352 = load i32, ptr %10, align 4, !tbaa !5
  %6353 = mul nsw i32 21, %6352
  %6354 = add nsw i32 %6351, %6353
  %6355 = sext i32 %6354 to i64
  %6356 = getelementptr inbounds double, ptr %6350, i64 %6355
  %6357 = load double, ptr %6356, align 8, !tbaa !11
  %6358 = fadd double %6357, %6349
  store double %6358, ptr %6356, align 8, !tbaa !11
  %6359 = load ptr, ptr %7, align 8, !tbaa !9
  %6360 = load i32, ptr %12, align 4, !tbaa !5
  %6361 = load i32, ptr %8, align 4, !tbaa !5
  %6362 = mul nsw i32 36, %6361
  %6363 = add nsw i32 %6360, %6362
  %6364 = sext i32 %6363 to i64
  %6365 = getelementptr inbounds double, ptr %6359, i64 %6364
  %6366 = load double, ptr %6365, align 8, !tbaa !11
  %6367 = load ptr, ptr %7, align 8, !tbaa !9
  %6368 = load i32, ptr %12, align 4, !tbaa !5
  %6369 = load i32, ptr %8, align 4, !tbaa !5
  %6370 = mul nsw i32 37, %6369
  %6371 = add nsw i32 %6368, %6370
  %6372 = sext i32 %6371 to i64
  %6373 = getelementptr inbounds double, ptr %6367, i64 %6372
  %6374 = load double, ptr %6373, align 8, !tbaa !11
  %6375 = fmul double 0x3C90000000000000, %6374
  %6376 = call double @llvm.fmuladd.f64(double 0x3C9A400000000000, double %6366, double %6375)
  %6377 = load ptr, ptr %7, align 8, !tbaa !9
  %6378 = load i32, ptr %12, align 4, !tbaa !5
  %6379 = load i32, ptr %8, align 4, !tbaa !5
  %6380 = mul nsw i32 38, %6379
  %6381 = add nsw i32 %6378, %6380
  %6382 = sext i32 %6381 to i64
  %6383 = getelementptr inbounds double, ptr %6377, i64 %6382
  %6384 = load double, ptr %6383, align 8, !tbaa !11
  %6385 = call double @llvm.fmuladd.f64(double 0x3C9A000000000000, double %6384, double %6376)
  %6386 = load ptr, ptr %7, align 8, !tbaa !9
  %6387 = load i32, ptr %12, align 4, !tbaa !5
  %6388 = load i32, ptr %8, align 4, !tbaa !5
  %6389 = mul nsw i32 39, %6388
  %6390 = add nsw i32 %6387, %6389
  %6391 = sext i32 %6390 to i64
  %6392 = getelementptr inbounds double, ptr %6386, i64 %6391
  %6393 = load double, ptr %6392, align 8, !tbaa !11
  %6394 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %6393, double %6385)
  %6395 = load ptr, ptr %7, align 8, !tbaa !9
  %6396 = load i32, ptr %12, align 4, !tbaa !5
  %6397 = load i32, ptr %8, align 4, !tbaa !5
  %6398 = mul nsw i32 40, %6397
  %6399 = add nsw i32 %6396, %6398
  %6400 = sext i32 %6399 to i64
  %6401 = getelementptr inbounds double, ptr %6395, i64 %6400
  %6402 = load double, ptr %6401, align 8, !tbaa !11
  %6403 = call double @llvm.fmuladd.f64(double 0xBC91000000000000, double %6402, double %6394)
  %6404 = load ptr, ptr %7, align 8, !tbaa !9
  %6405 = load i32, ptr %12, align 4, !tbaa !5
  %6406 = load i32, ptr %8, align 4, !tbaa !5
  %6407 = mul nsw i32 41, %6406
  %6408 = add nsw i32 %6405, %6407
  %6409 = sext i32 %6408 to i64
  %6410 = getelementptr inbounds double, ptr %6404, i64 %6409
  %6411 = load double, ptr %6410, align 8, !tbaa !11
  %6412 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %6411, double %6403)
  %6413 = load ptr, ptr %7, align 8, !tbaa !9
  %6414 = load i32, ptr %12, align 4, !tbaa !5
  %6415 = load i32, ptr %8, align 4, !tbaa !5
  %6416 = mul nsw i32 42, %6415
  %6417 = add nsw i32 %6414, %6416
  %6418 = sext i32 %6417 to i64
  %6419 = getelementptr inbounds double, ptr %6413, i64 %6418
  %6420 = load double, ptr %6419, align 8, !tbaa !11
  %6421 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %6420, double %6412)
  %6422 = load ptr, ptr %7, align 8, !tbaa !9
  %6423 = load i32, ptr %12, align 4, !tbaa !5
  %6424 = load i32, ptr %8, align 4, !tbaa !5
  %6425 = mul nsw i32 43, %6424
  %6426 = add nsw i32 %6423, %6425
  %6427 = sext i32 %6426 to i64
  %6428 = getelementptr inbounds double, ptr %6422, i64 %6427
  %6429 = load double, ptr %6428, align 8, !tbaa !11
  %6430 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %6429, double %6421)
  %6431 = load ptr, ptr %7, align 8, !tbaa !9
  %6432 = load i32, ptr %12, align 4, !tbaa !5
  %6433 = load i32, ptr %8, align 4, !tbaa !5
  %6434 = mul nsw i32 44, %6433
  %6435 = add nsw i32 %6432, %6434
  %6436 = sext i32 %6435 to i64
  %6437 = getelementptr inbounds double, ptr %6431, i64 %6436
  %6438 = load double, ptr %6437, align 8, !tbaa !11
  %6439 = call double @llvm.fmuladd.f64(double 0x3FD6F2A1D7A49299, double %6438, double %6430)
  %6440 = load ptr, ptr %7, align 8, !tbaa !9
  %6441 = load i32, ptr %12, align 4, !tbaa !5
  %6442 = load i32, ptr %8, align 4, !tbaa !5
  %6443 = mul nsw i32 45, %6442
  %6444 = add nsw i32 %6441, %6443
  %6445 = sext i32 %6444 to i64
  %6446 = getelementptr inbounds double, ptr %6440, i64 %6445
  %6447 = load double, ptr %6446, align 8, !tbaa !11
  %6448 = call double @llvm.fmuladd.f64(double 0x3FEAEBF44A8E7A7F, double %6447, double %6439)
  %6449 = load ptr, ptr %7, align 8, !tbaa !9
  %6450 = load i32, ptr %12, align 4, !tbaa !5
  %6451 = load i32, ptr %8, align 4, !tbaa !5
  %6452 = mul nsw i32 46, %6451
  %6453 = add nsw i32 %6450, %6452
  %6454 = sext i32 %6453 to i64
  %6455 = getelementptr inbounds double, ptr %6449, i64 %6454
  %6456 = load double, ptr %6455, align 8, !tbaa !11
  %6457 = call double @llvm.fmuladd.f64(double 0x3FEAEBF44A8E7A7D, double %6456, double %6448)
  %6458 = load ptr, ptr %7, align 8, !tbaa !9
  %6459 = load i32, ptr %12, align 4, !tbaa !5
  %6460 = load i32, ptr %8, align 4, !tbaa !5
  %6461 = mul nsw i32 47, %6460
  %6462 = add nsw i32 %6459, %6461
  %6463 = sext i32 %6462 to i64
  %6464 = getelementptr inbounds double, ptr %6458, i64 %6463
  %6465 = load double, ptr %6464, align 8, !tbaa !11
  %6466 = call double @llvm.fmuladd.f64(double 0x3FD6F2A1D7A492C6, double %6465, double %6457)
  %6467 = load ptr, ptr %7, align 8, !tbaa !9
  %6468 = load i32, ptr %12, align 4, !tbaa !5
  %6469 = load i32, ptr %8, align 4, !tbaa !5
  %6470 = mul nsw i32 48, %6469
  %6471 = add nsw i32 %6468, %6470
  %6472 = sext i32 %6471 to i64
  %6473 = getelementptr inbounds double, ptr %6467, i64 %6472
  %6474 = load double, ptr %6473, align 8, !tbaa !11
  %6475 = call double @llvm.fmuladd.f64(double 0xBC62000000000000, double %6474, double %6466)
  %6476 = load ptr, ptr %7, align 8, !tbaa !9
  %6477 = load i32, ptr %12, align 4, !tbaa !5
  %6478 = load i32, ptr %8, align 4, !tbaa !5
  %6479 = mul nsw i32 49, %6478
  %6480 = add nsw i32 %6477, %6479
  %6481 = sext i32 %6480 to i64
  %6482 = getelementptr inbounds double, ptr %6476, i64 %6481
  %6483 = load double, ptr %6482, align 8, !tbaa !11
  %6484 = call double @llvm.fmuladd.f64(double 0xBCA8000000000001, double %6483, double %6475)
  %6485 = load ptr, ptr %7, align 8, !tbaa !9
  %6486 = load i32, ptr %12, align 4, !tbaa !5
  %6487 = load i32, ptr %8, align 4, !tbaa !5
  %6488 = mul nsw i32 50, %6487
  %6489 = add nsw i32 %6486, %6488
  %6490 = sext i32 %6489 to i64
  %6491 = getelementptr inbounds double, ptr %6485, i64 %6490
  %6492 = load double, ptr %6491, align 8, !tbaa !11
  %6493 = call double @llvm.fmuladd.f64(double 0x3CA2FFFFFFFFFFFE, double %6492, double %6484)
  %6494 = load ptr, ptr %7, align 8, !tbaa !9
  %6495 = load i32, ptr %12, align 4, !tbaa !5
  %6496 = load i32, ptr %8, align 4, !tbaa !5
  %6497 = mul nsw i32 51, %6496
  %6498 = add nsw i32 %6495, %6497
  %6499 = sext i32 %6498 to i64
  %6500 = getelementptr inbounds double, ptr %6494, i64 %6499
  %6501 = load double, ptr %6500, align 8, !tbaa !11
  %6502 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %6501, double %6493)
  %6503 = load ptr, ptr %7, align 8, !tbaa !9
  %6504 = load i32, ptr %12, align 4, !tbaa !5
  %6505 = load i32, ptr %8, align 4, !tbaa !5
  %6506 = mul nsw i32 52, %6505
  %6507 = add nsw i32 %6504, %6506
  %6508 = sext i32 %6507 to i64
  %6509 = getelementptr inbounds double, ptr %6503, i64 %6508
  %6510 = load double, ptr %6509, align 8, !tbaa !11
  %6511 = call double @llvm.fmuladd.f64(double 0x3CA02CD13B44F3C0, double %6510, double %6502)
  %6512 = load ptr, ptr %7, align 8, !tbaa !9
  %6513 = load i32, ptr %12, align 4, !tbaa !5
  %6514 = load i32, ptr %8, align 4, !tbaa !5
  %6515 = mul nsw i32 54, %6514
  %6516 = add nsw i32 %6513, %6515
  %6517 = sext i32 %6516 to i64
  %6518 = getelementptr inbounds double, ptr %6512, i64 %6517
  %6519 = load double, ptr %6518, align 8, !tbaa !11
  %6520 = call double @llvm.fmuladd.f64(double 0x3C70F876CCDF6CD9, double %6519, double %6511)
  %6521 = load ptr, ptr %7, align 8, !tbaa !9
  %6522 = load i32, ptr %12, align 4, !tbaa !5
  %6523 = load i32, ptr %8, align 4, !tbaa !5
  %6524 = mul nsw i32 55, %6523
  %6525 = add nsw i32 %6522, %6524
  %6526 = sext i32 %6525 to i64
  %6527 = getelementptr inbounds double, ptr %6521, i64 %6526
  %6528 = load double, ptr %6527, align 8, !tbaa !11
  %6529 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %6528, double %6520)
  %6530 = load ptr, ptr %7, align 8, !tbaa !9
  %6531 = load i32, ptr %12, align 4, !tbaa !5
  %6532 = load i32, ptr %8, align 4, !tbaa !5
  %6533 = mul nsw i32 56, %6532
  %6534 = add nsw i32 %6531, %6533
  %6535 = sext i32 %6534 to i64
  %6536 = getelementptr inbounds double, ptr %6530, i64 %6535
  %6537 = load double, ptr %6536, align 8, !tbaa !11
  %6538 = call double @llvm.fmuladd.f64(double 0xBCABEE4386850DD1, double %6537, double %6529)
  %6539 = load ptr, ptr %7, align 8, !tbaa !9
  %6540 = load i32, ptr %12, align 4, !tbaa !5
  %6541 = load i32, ptr %8, align 4, !tbaa !5
  %6542 = mul nsw i32 57, %6541
  %6543 = add nsw i32 %6540, %6542
  %6544 = sext i32 %6543 to i64
  %6545 = getelementptr inbounds double, ptr %6539, i64 %6544
  %6546 = load double, ptr %6545, align 8, !tbaa !11
  %6547 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %6546, double %6538)
  %6548 = load ptr, ptr %7, align 8, !tbaa !9
  %6549 = load i32, ptr %12, align 4, !tbaa !5
  %6550 = load i32, ptr %8, align 4, !tbaa !5
  %6551 = mul nsw i32 58, %6550
  %6552 = add nsw i32 %6549, %6551
  %6553 = sext i32 %6552 to i64
  %6554 = getelementptr inbounds double, ptr %6548, i64 %6553
  %6555 = load double, ptr %6554, align 8, !tbaa !11
  %6556 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %6555, double %6547)
  %6557 = load ptr, ptr %7, align 8, !tbaa !9
  %6558 = load i32, ptr %12, align 4, !tbaa !5
  %6559 = load i32, ptr %8, align 4, !tbaa !5
  %6560 = mul nsw i32 59, %6559
  %6561 = add nsw i32 %6558, %6560
  %6562 = sext i32 %6561 to i64
  %6563 = getelementptr inbounds double, ptr %6557, i64 %6562
  %6564 = load double, ptr %6563, align 8, !tbaa !11
  %6565 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %6564, double %6556)
  %6566 = load ptr, ptr %7, align 8, !tbaa !9
  %6567 = load i32, ptr %12, align 4, !tbaa !5
  %6568 = load i32, ptr %8, align 4, !tbaa !5
  %6569 = mul nsw i32 60, %6568
  %6570 = add nsw i32 %6567, %6569
  %6571 = sext i32 %6570 to i64
  %6572 = getelementptr inbounds double, ptr %6566, i64 %6571
  %6573 = load double, ptr %6572, align 8, !tbaa !11
  %6574 = call double @llvm.fmuladd.f64(double 0x400E488CB8C1EA66, double %6573, double %6565)
  %6575 = load ptr, ptr %7, align 8, !tbaa !9
  %6576 = load i32, ptr %12, align 4, !tbaa !5
  %6577 = load i32, ptr %8, align 4, !tbaa !5
  %6578 = mul nsw i32 61, %6577
  %6579 = add nsw i32 %6576, %6578
  %6580 = sext i32 %6579 to i64
  %6581 = getelementptr inbounds double, ptr %6575, i64 %6580
  %6582 = load double, ptr %6581, align 8, !tbaa !11
  %6583 = call double @llvm.fmuladd.f64(double 0x3FD4A299D1E9700C, double %6582, double %6574)
  %6584 = load ptr, ptr %7, align 8, !tbaa !9
  %6585 = load i32, ptr %12, align 4, !tbaa !5
  %6586 = load i32, ptr %8, align 4, !tbaa !5
  %6587 = mul nsw i32 62, %6586
  %6588 = add nsw i32 %6585, %6587
  %6589 = sext i32 %6588 to i64
  %6590 = getelementptr inbounds double, ptr %6584, i64 %6589
  %6591 = load double, ptr %6590, align 8, !tbaa !11
  %6592 = call double @llvm.fmuladd.f64(double 0xBFC5EA083165C4F9, double %6591, double %6583)
  %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 63, %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 = call double @llvm.fmuladd.f64(double 0x3FA462D8D66D7F7F, double %6600, double %6592)
  %6602 = load ptr, ptr %7, align 8, !tbaa !9
  %6603 = load i32, ptr %12, align 4, !tbaa !5
  %6604 = load i32, ptr %8, align 4, !tbaa !5
  %6605 = mul nsw i32 64, %6604
  %6606 = add nsw i32 %6603, %6605
  %6607 = sext i32 %6606 to i64
  %6608 = getelementptr inbounds double, ptr %6602, i64 %6607
  %6609 = load double, ptr %6608, align 8, !tbaa !11
  %6610 = call double @llvm.fmuladd.f64(double 0x3CB9DA84FC1C5FD3, double %6609, double %6601)
  %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 66, %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 0xBC70F876CCDF6CD9, 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 67, %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 0xBC66A09E667F3BCC, double %6627, double %6619)
  store double %6628, ptr %11, align 8, !tbaa !11
  %6629 = load double, ptr %11, align 8, !tbaa !11
  %6630 = load ptr, ptr %9, align 8, !tbaa !9
  %6631 = load i32, ptr %12, align 4, !tbaa !5
  %6632 = load i32, ptr %10, align 4, !tbaa !5
  %6633 = mul nsw i32 22, %6632
  %6634 = add nsw i32 %6631, %6633
  %6635 = sext i32 %6634 to i64
  %6636 = getelementptr inbounds double, ptr %6630, i64 %6635
  %6637 = load double, ptr %6636, align 8, !tbaa !11
  %6638 = fadd double %6637, %6629
  store double %6638, ptr %6636, align 8, !tbaa !11
  %6639 = load ptr, ptr %7, align 8, !tbaa !9
  %6640 = load i32, ptr %12, align 4, !tbaa !5
  %6641 = load i32, ptr %8, align 4, !tbaa !5
  %6642 = mul nsw i32 36, %6641
  %6643 = add nsw i32 %6640, %6642
  %6644 = sext i32 %6643 to i64
  %6645 = getelementptr inbounds double, ptr %6639, i64 %6644
  %6646 = load double, ptr %6645, align 8, !tbaa !11
  %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 37, %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 = fmul double 0xBCA0000000000002, %6654
  %6656 = call double @llvm.fmuladd.f64(double 0x3C80800000000000, double %6646, double %6655)
  %6657 = load ptr, ptr %7, align 8, !tbaa !9
  %6658 = load i32, ptr %12, align 4, !tbaa !5
  %6659 = load i32, ptr %8, align 4, !tbaa !5
  %6660 = mul nsw i32 38, %6659
  %6661 = add nsw i32 %6658, %6660
  %6662 = sext i32 %6661 to i64
  %6663 = getelementptr inbounds double, ptr %6657, i64 %6662
  %6664 = load double, ptr %6663, align 8, !tbaa !11
  %6665 = call double @llvm.fmuladd.f64(double 0xBCAB000000000001, double %6664, double %6656)
  %6666 = load ptr, ptr %7, align 8, !tbaa !9
  %6667 = load i32, ptr %12, align 4, !tbaa !5
  %6668 = load i32, ptr %8, align 4, !tbaa !5
  %6669 = mul nsw i32 40, %6668
  %6670 = add nsw i32 %6667, %6669
  %6671 = sext i32 %6670 to i64
  %6672 = getelementptr inbounds double, ptr %6666, i64 %6671
  %6673 = load double, ptr %6672, align 8, !tbaa !11
  %6674 = call double @llvm.fmuladd.f64(double 0x3CB5BFFFFFFFFFFF, double %6673, double %6665)
  %6675 = load ptr, ptr %7, align 8, !tbaa !9
  %6676 = load i32, ptr %12, align 4, !tbaa !5
  %6677 = load i32, ptr %8, align 4, !tbaa !5
  %6678 = mul nsw i32 41, %6677
  %6679 = add nsw i32 %6676, %6678
  %6680 = sext i32 %6679 to i64
  %6681 = getelementptr inbounds double, ptr %6675, i64 %6680
  %6682 = load double, ptr %6681, align 8, !tbaa !11
  %6683 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %6682, double %6674)
  %6684 = load ptr, ptr %7, align 8, !tbaa !9
  %6685 = load i32, ptr %12, align 4, !tbaa !5
  %6686 = load i32, ptr %8, align 4, !tbaa !5
  %6687 = mul nsw i32 42, %6686
  %6688 = add nsw i32 %6685, %6687
  %6689 = sext i32 %6688 to i64
  %6690 = getelementptr inbounds double, ptr %6684, i64 %6689
  %6691 = load double, ptr %6690, align 8, !tbaa !11
  %6692 = call double @llvm.fmuladd.f64(double 0x3CB5FFFFFFFFFFFF, double %6691, double %6683)
  %6693 = load ptr, ptr %7, align 8, !tbaa !9
  %6694 = load i32, ptr %12, align 4, !tbaa !5
  %6695 = load i32, ptr %8, align 4, !tbaa !5
  %6696 = mul nsw i32 44, %6695
  %6697 = add nsw i32 %6694, %6696
  %6698 = sext i32 %6697 to i64
  %6699 = getelementptr inbounds double, ptr %6693, i64 %6698
  %6700 = load double, ptr %6699, align 8, !tbaa !11
  %6701 = call double @llvm.fmuladd.f64(double 0xC01569E165D79417, double %6700, double %6692)
  %6702 = load ptr, ptr %7, align 8, !tbaa !9
  %6703 = load i32, ptr %12, align 4, !tbaa !5
  %6704 = load i32, ptr %8, align 4, !tbaa !5
  %6705 = mul nsw i32 45, %6704
  %6706 = add nsw i32 %6703, %6705
  %6707 = sext i32 %6706 to i64
  %6708 = getelementptr inbounds double, ptr %6702, i64 %6707
  %6709 = load double, ptr %6708, align 8, !tbaa !11
  %6710 = call double @llvm.fmuladd.f64(double 0xBFDD2EB9CCB3BDF4, double %6709, double %6701)
  %6711 = load ptr, ptr %7, align 8, !tbaa !9
  %6712 = load i32, ptr %12, align 4, !tbaa !5
  %6713 = load i32, ptr %8, align 4, !tbaa !5
  %6714 = mul nsw i32 46, %6713
  %6715 = add nsw i32 %6712, %6714
  %6716 = sext i32 %6715 to i64
  %6717 = getelementptr inbounds double, ptr %6711, i64 %6716
  %6718 = load double, ptr %6717, align 8, !tbaa !11
  %6719 = call double @llvm.fmuladd.f64(double 0x3FCEFDC8894D0831, double %6718, double %6710)
  %6720 = load ptr, ptr %7, align 8, !tbaa !9
  %6721 = load i32, ptr %12, align 4, !tbaa !5
  %6722 = load i32, ptr %8, align 4, !tbaa !5
  %6723 = mul nsw i32 47, %6722
  %6724 = add nsw i32 %6721, %6723
  %6725 = sext i32 %6724 to i64
  %6726 = getelementptr inbounds double, ptr %6720, i64 %6725
  %6727 = load double, ptr %6726, align 8, !tbaa !11
  %6728 = call double @llvm.fmuladd.f64(double 0xBFACD49071EC5EF0, double %6727, double %6719)
  %6729 = load ptr, ptr %7, align 8, !tbaa !9
  %6730 = load i32, ptr %12, align 4, !tbaa !5
  %6731 = load i32, ptr %8, align 4, !tbaa !5
  %6732 = mul nsw i32 48, %6731
  %6733 = add nsw i32 %6730, %6732
  %6734 = sext i32 %6733 to i64
  %6735 = getelementptr inbounds double, ptr %6729, i64 %6734
  %6736 = load double, ptr %6735, align 8, !tbaa !11
  %6737 = call double @llvm.fmuladd.f64(double 0x3CABE00000000000, double %6736, double %6728)
  %6738 = load ptr, ptr %7, align 8, !tbaa !9
  %6739 = load i32, ptr %12, align 4, !tbaa !5
  %6740 = load i32, ptr %8, align 4, !tbaa !5
  %6741 = mul nsw i32 49, %6740
  %6742 = add nsw i32 %6739, %6741
  %6743 = sext i32 %6742 to i64
  %6744 = getelementptr inbounds double, ptr %6738, i64 %6743
  %6745 = load double, ptr %6744, align 8, !tbaa !11
  %6746 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %6745, double %6737)
  %6747 = load ptr, ptr %7, align 8, !tbaa !9
  %6748 = load i32, ptr %12, align 4, !tbaa !5
  %6749 = load i32, ptr %8, align 4, !tbaa !5
  %6750 = mul nsw i32 50, %6749
  %6751 = add nsw i32 %6748, %6750
  %6752 = sext i32 %6751 to i64
  %6753 = getelementptr inbounds double, ptr %6747, i64 %6752
  %6754 = load double, ptr %6753, align 8, !tbaa !11
  %6755 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %6754, double %6746)
  %6756 = load ptr, ptr %7, align 8, !tbaa !9
  %6757 = load i32, ptr %12, align 4, !tbaa !5
  %6758 = load i32, ptr %8, align 4, !tbaa !5
  %6759 = mul nsw i32 51, %6758
  %6760 = add nsw i32 %6757, %6759
  %6761 = sext i32 %6760 to i64
  %6762 = getelementptr inbounds double, ptr %6756, i64 %6761
  %6763 = load double, ptr %6762, align 8, !tbaa !11
  %6764 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %6763, double %6755)
  %6765 = load ptr, ptr %7, align 8, !tbaa !9
  %6766 = load i32, ptr %12, align 4, !tbaa !5
  %6767 = load i32, ptr %8, align 4, !tbaa !5
  %6768 = mul nsw i32 52, %6767
  %6769 = add nsw i32 %6766, %6768
  %6770 = sext i32 %6769 to i64
  %6771 = getelementptr inbounds double, ptr %6765, i64 %6770
  %6772 = load double, ptr %6771, align 8, !tbaa !11
  %6773 = call double @llvm.fmuladd.f64(double 0xBC8152F9467969C8, double %6772, double %6764)
  %6774 = load ptr, ptr %7, align 8, !tbaa !9
  %6775 = load i32, ptr %12, align 4, !tbaa !5
  %6776 = load i32, ptr %8, align 4, !tbaa !5
  %6777 = mul nsw i32 53, %6776
  %6778 = add nsw i32 %6775, %6777
  %6779 = sext i32 %6778 to i64
  %6780 = getelementptr inbounds double, ptr %6774, i64 %6779
  %6781 = load double, ptr %6780, align 8, !tbaa !11
  %6782 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %6781, double %6773)
  %6783 = load ptr, ptr %7, align 8, !tbaa !9
  %6784 = load i32, ptr %12, align 4, !tbaa !5
  %6785 = load i32, ptr %8, align 4, !tbaa !5
  %6786 = mul nsw i32 54, %6785
  %6787 = add nsw i32 %6784, %6786
  %6788 = sext i32 %6787 to i64
  %6789 = getelementptr inbounds double, ptr %6783, i64 %6788
  %6790 = load double, ptr %6789, align 8, !tbaa !11
  %6791 = call double @llvm.fmuladd.f64(double 0xBC926280B3476096, double %6790, double %6782)
  %6792 = load ptr, ptr %7, align 8, !tbaa !9
  %6793 = load i32, ptr %12, align 4, !tbaa !5
  %6794 = load i32, ptr %8, align 4, !tbaa !5
  %6795 = mul nsw i32 55, %6794
  %6796 = add nsw i32 %6793, %6795
  %6797 = sext i32 %6796 to i64
  %6798 = getelementptr inbounds double, ptr %6792, i64 %6797
  %6799 = load double, ptr %6798, align 8, !tbaa !11
  %6800 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %6799, double %6791)
  %6801 = load ptr, ptr %7, align 8, !tbaa !9
  %6802 = load i32, ptr %12, align 4, !tbaa !5
  %6803 = load i32, ptr %8, align 4, !tbaa !5
  %6804 = mul nsw i32 56, %6803
  %6805 = add nsw i32 %6802, %6804
  %6806 = sext i32 %6805 to i64
  %6807 = getelementptr inbounds double, ptr %6801, i64 %6806
  %6808 = load double, ptr %6807, align 8, !tbaa !11
  %6809 = call double @llvm.fmuladd.f64(double 0x3C9CFDCAF353049B, double %6808, double %6800)
  %6810 = load ptr, ptr %7, align 8, !tbaa !9
  %6811 = load i32, ptr %12, align 4, !tbaa !5
  %6812 = load i32, ptr %8, align 4, !tbaa !5
  %6813 = mul nsw i32 57, %6812
  %6814 = add nsw i32 %6811, %6813
  %6815 = sext i32 %6814 to i64
  %6816 = getelementptr inbounds double, ptr %6810, i64 %6815
  %6817 = load double, ptr %6816, align 8, !tbaa !11
  %6818 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %6817, double %6809)
  %6819 = load ptr, ptr %7, align 8, !tbaa !9
  %6820 = load i32, ptr %12, align 4, !tbaa !5
  %6821 = load i32, ptr %8, align 4, !tbaa !5
  %6822 = mul nsw i32 58, %6821
  %6823 = add nsw i32 %6820, %6822
  %6824 = sext i32 %6823 to i64
  %6825 = getelementptr inbounds double, ptr %6819, i64 %6824
  %6826 = load double, ptr %6825, align 8, !tbaa !11
  %6827 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %6826, double %6818)
  %6828 = load ptr, ptr %7, align 8, !tbaa !9
  %6829 = load i32, ptr %12, align 4, !tbaa !5
  %6830 = load i32, ptr %8, align 4, !tbaa !5
  %6831 = mul nsw i32 59, %6830
  %6832 = add nsw i32 %6829, %6831
  %6833 = sext i32 %6832 to i64
  %6834 = getelementptr inbounds double, ptr %6828, i64 %6833
  %6835 = load double, ptr %6834, align 8, !tbaa !11
  %6836 = call double @llvm.fmuladd.f64(double 0x3CA3CC8A99AF5452, double %6835, double %6827)
  %6837 = load ptr, ptr %7, align 8, !tbaa !9
  %6838 = load i32, ptr %12, align 4, !tbaa !5
  %6839 = load i32, ptr %8, align 4, !tbaa !5
  %6840 = mul nsw i32 60, %6839
  %6841 = add nsw i32 %6838, %6840
  %6842 = sext i32 %6841 to i64
  %6843 = getelementptr inbounds double, ptr %6837, i64 %6842
  %6844 = load double, ptr %6843, align 8, !tbaa !11
  %6845 = call double @llvm.fmuladd.f64(double 0xBFD039FE04F71643, double %6844, double %6836)
  %6846 = load ptr, ptr %7, align 8, !tbaa !9
  %6847 = load i32, ptr %12, align 4, !tbaa !5
  %6848 = load i32, ptr %8, align 4, !tbaa !5
  %6849 = mul nsw i32 61, %6848
  %6850 = add nsw i32 %6847, %6849
  %6851 = sext i32 %6850 to i64
  %6852 = getelementptr inbounds double, ptr %6846, i64 %6851
  %6853 = load double, ptr %6852, align 8, !tbaa !11
  %6854 = call double @llvm.fmuladd.f64(double 0xBFE30958FBF81244, double %6853, double %6845)
  %6855 = load ptr, ptr %7, align 8, !tbaa !9
  %6856 = load i32, ptr %12, align 4, !tbaa !5
  %6857 = load i32, ptr %8, align 4, !tbaa !5
  %6858 = mul nsw i32 62, %6857
  %6859 = add nsw i32 %6856, %6858
  %6860 = sext i32 %6859 to i64
  %6861 = getelementptr inbounds double, ptr %6855, i64 %6860
  %6862 = load double, ptr %6861, align 8, !tbaa !11
  %6863 = call double @llvm.fmuladd.f64(double 0xBFE30958FBF81231, double %6862, double %6854)
  %6864 = load ptr, ptr %7, align 8, !tbaa !9
  %6865 = load i32, ptr %12, align 4, !tbaa !5
  %6866 = load i32, ptr %8, align 4, !tbaa !5
  %6867 = mul nsw i32 63, %6866
  %6868 = add nsw i32 %6865, %6867
  %6869 = sext i32 %6868 to i64
  %6870 = getelementptr inbounds double, ptr %6864, i64 %6869
  %6871 = load double, ptr %6870, align 8, !tbaa !11
  %6872 = call double @llvm.fmuladd.f64(double 0xBFD039FE04F71638, double %6871, double %6863)
  %6873 = load ptr, ptr %7, align 8, !tbaa !9
  %6874 = load i32, ptr %12, align 4, !tbaa !5
  %6875 = load i32, ptr %8, align 4, !tbaa !5
  %6876 = mul nsw i32 64, %6875
  %6877 = add nsw i32 %6874, %6876
  %6878 = sext i32 %6877 to i64
  %6879 = getelementptr inbounds double, ptr %6873, i64 %6878
  %6880 = load double, ptr %6879, align 8, !tbaa !11
  %6881 = call double @llvm.fmuladd.f64(double 0x3C93F9CBD67C52CA, double %6880, double %6872)
  %6882 = load ptr, ptr %7, align 8, !tbaa !9
  %6883 = load i32, ptr %12, align 4, !tbaa !5
  %6884 = load i32, ptr %8, align 4, !tbaa !5
  %6885 = mul nsw i32 65, %6884
  %6886 = add nsw i32 %6883, %6885
  %6887 = sext i32 %6886 to i64
  %6888 = getelementptr inbounds double, ptr %6882, i64 %6887
  %6889 = load double, ptr %6888, align 8, !tbaa !11
  %6890 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %6889, double %6881)
  %6891 = load ptr, ptr %7, align 8, !tbaa !9
  %6892 = load i32, ptr %12, align 4, !tbaa !5
  %6893 = load i32, ptr %8, align 4, !tbaa !5
  %6894 = mul nsw i32 66, %6893
  %6895 = add nsw i32 %6892, %6894
  %6896 = sext i32 %6895 to i64
  %6897 = getelementptr inbounds double, ptr %6891, i64 %6896
  %6898 = load double, ptr %6897, align 8, !tbaa !11
  %6899 = call double @llvm.fmuladd.f64(double 0xBC8F1CD9CCEEF238, double %6898, double %6890)
  %6900 = load ptr, ptr %7, align 8, !tbaa !9
  %6901 = load i32, ptr %12, align 4, !tbaa !5
  %6902 = load i32, ptr %8, align 4, !tbaa !5
  %6903 = mul nsw i32 67, %6902
  %6904 = add nsw i32 %6901, %6903
  %6905 = sext i32 %6904 to i64
  %6906 = getelementptr inbounds double, ptr %6900, i64 %6905
  %6907 = load double, ptr %6906, align 8, !tbaa !11
  %6908 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %6907, double %6899)
  store double %6908, ptr %11, align 8, !tbaa !11
  %6909 = load double, ptr %11, align 8, !tbaa !11
  %6910 = load ptr, ptr %9, align 8, !tbaa !9
  %6911 = load i32, ptr %12, align 4, !tbaa !5
  %6912 = load i32, ptr %10, align 4, !tbaa !5
  %6913 = mul nsw i32 23, %6912
  %6914 = add nsw i32 %6911, %6913
  %6915 = sext i32 %6914 to i64
  %6916 = getelementptr inbounds double, ptr %6910, i64 %6915
  %6917 = load double, ptr %6916, align 8, !tbaa !11
  %6918 = fadd double %6917, %6909
  store double %6918, ptr %6916, align 8, !tbaa !11
  %6919 = load ptr, ptr %7, align 8, !tbaa !9
  %6920 = load i32, ptr %12, align 4, !tbaa !5
  %6921 = load i32, ptr %8, align 4, !tbaa !5
  %6922 = mul nsw i32 36, %6921
  %6923 = add nsw i32 %6920, %6922
  %6924 = sext i32 %6923 to i64
  %6925 = getelementptr inbounds double, ptr %6919, i64 %6924
  %6926 = load double, ptr %6925, align 8, !tbaa !11
  %6927 = load ptr, ptr %7, align 8, !tbaa !9
  %6928 = load i32, ptr %12, align 4, !tbaa !5
  %6929 = load i32, ptr %8, align 4, !tbaa !5
  %6930 = mul nsw i32 37, %6929
  %6931 = add nsw i32 %6928, %6930
  %6932 = sext i32 %6931 to i64
  %6933 = getelementptr inbounds double, ptr %6927, i64 %6932
  %6934 = load double, ptr %6933, align 8, !tbaa !11
  %6935 = fmul double 0x3C91000000000000, %6934
  %6936 = call double @llvm.fmuladd.f64(double 0x3C96800000000000, double %6926, double %6935)
  %6937 = load ptr, ptr %7, align 8, !tbaa !9
  %6938 = load i32, ptr %12, align 4, !tbaa !5
  %6939 = load i32, ptr %8, align 4, !tbaa !5
  %6940 = mul nsw i32 38, %6939
  %6941 = add nsw i32 %6938, %6940
  %6942 = sext i32 %6941 to i64
  %6943 = getelementptr inbounds double, ptr %6937, i64 %6942
  %6944 = load double, ptr %6943, align 8, !tbaa !11
  %6945 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %6944, double %6936)
  %6946 = load ptr, ptr %7, align 8, !tbaa !9
  %6947 = load i32, ptr %12, align 4, !tbaa !5
  %6948 = load i32, ptr %8, align 4, !tbaa !5
  %6949 = mul nsw i32 39, %6948
  %6950 = add nsw i32 %6947, %6949
  %6951 = sext i32 %6950 to i64
  %6952 = getelementptr inbounds double, ptr %6946, i64 %6951
  %6953 = load double, ptr %6952, align 8, !tbaa !11
  %6954 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %6953, double %6945)
  %6955 = load ptr, ptr %7, align 8, !tbaa !9
  %6956 = load i32, ptr %12, align 4, !tbaa !5
  %6957 = load i32, ptr %8, align 4, !tbaa !5
  %6958 = mul nsw i32 40, %6957
  %6959 = add nsw i32 %6956, %6958
  %6960 = sext i32 %6959 to i64
  %6961 = getelementptr inbounds double, ptr %6955, i64 %6960
  %6962 = load double, ptr %6961, align 8, !tbaa !11
  %6963 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %6962, double %6954)
  %6964 = load ptr, ptr %7, align 8, !tbaa !9
  %6965 = load i32, ptr %12, align 4, !tbaa !5
  %6966 = load i32, ptr %8, align 4, !tbaa !5
  %6967 = mul nsw i32 42, %6966
  %6968 = add nsw i32 %6965, %6967
  %6969 = sext i32 %6968 to i64
  %6970 = getelementptr inbounds double, ptr %6964, i64 %6969
  %6971 = load double, ptr %6970, align 8, !tbaa !11
  %6972 = call double @llvm.fmuladd.f64(double 0x3CB5FFFFFFFFFFFF, double %6971, double %6963)
  %6973 = load ptr, ptr %7, align 8, !tbaa !9
  %6974 = load i32, ptr %12, align 4, !tbaa !5
  %6975 = load i32, ptr %8, align 4, !tbaa !5
  %6976 = mul nsw i32 43, %6975
  %6977 = add nsw i32 %6974, %6976
  %6978 = sext i32 %6977 to i64
  %6979 = getelementptr inbounds double, ptr %6973, i64 %6978
  %6980 = load double, ptr %6979, align 8, !tbaa !11
  %6981 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %6980, double %6972)
  %6982 = load ptr, ptr %7, align 8, !tbaa !9
  %6983 = load i32, ptr %12, align 4, !tbaa !5
  %6984 = load i32, ptr %8, align 4, !tbaa !5
  %6985 = mul nsw i32 44, %6984
  %6986 = add nsw i32 %6983, %6985
  %6987 = sext i32 %6986 to i64
  %6988 = getelementptr inbounds double, ptr %6982, i64 %6987
  %6989 = load double, ptr %6988, align 8, !tbaa !11
  %6990 = call double @llvm.fmuladd.f64(double 0x3F980EB0AE1D48EC, double %6989, double %6981)
  %6991 = load ptr, ptr %7, align 8, !tbaa !9
  %6992 = load i32, ptr %12, align 4, !tbaa !5
  %6993 = load i32, ptr %8, align 4, !tbaa !5
  %6994 = mul nsw i32 45, %6993
  %6995 = add nsw i32 %6992, %6994
  %6996 = sext i32 %6995 to i64
  %6997 = getelementptr inbounds double, ptr %6991, i64 %6996
  %6998 = load double, ptr %6997, align 8, !tbaa !11
  %6999 = call double @llvm.fmuladd.f64(double 0xBFD4C0B9406BCBDC, double %6998, double %6990)
  %7000 = load ptr, ptr %7, align 8, !tbaa !9
  %7001 = load i32, ptr %12, align 4, !tbaa !5
  %7002 = load i32, ptr %8, align 4, !tbaa !5
  %7003 = mul nsw i32 46, %7002
  %7004 = add nsw i32 %7001, %7003
  %7005 = sext i32 %7004 to i64
  %7006 = getelementptr inbounds double, ptr %7000, i64 %7005
  %7007 = load double, ptr %7006, align 8, !tbaa !11
  %7008 = call double @llvm.fmuladd.f64(double 0xBFEBF462FB348EF8, double %7007, double %6999)
  %7009 = load ptr, ptr %7, align 8, !tbaa !9
  %7010 = load i32, ptr %12, align 4, !tbaa !5
  %7011 = load i32, ptr %8, align 4, !tbaa !5
  %7012 = mul nsw i32 47, %7011
  %7013 = add nsw i32 %7010, %7012
  %7014 = sext i32 %7013 to i64
  %7015 = getelementptr inbounds double, ptr %7009, i64 %7014
  %7016 = load double, ptr %7015, align 8, !tbaa !11
  %7017 = call double @llvm.fmuladd.f64(double 0xBFE002F9665DF3DA, double %7016, double %7008)
  %7018 = load ptr, ptr %7, align 8, !tbaa !9
  %7019 = load i32, ptr %12, align 4, !tbaa !5
  %7020 = load i32, ptr %8, align 4, !tbaa !5
  %7021 = mul nsw i32 48, %7020
  %7022 = add nsw i32 %7019, %7021
  %7023 = sext i32 %7022 to i64
  %7024 = getelementptr inbounds double, ptr %7018, i64 %7023
  %7025 = load double, ptr %7024, align 8, !tbaa !11
  %7026 = call double @llvm.fmuladd.f64(double 0xBC85000000000000, double %7025, double %7017)
  %7027 = load ptr, ptr %7, align 8, !tbaa !9
  %7028 = load i32, ptr %12, align 4, !tbaa !5
  %7029 = load i32, ptr %8, align 4, !tbaa !5
  %7030 = mul nsw i32 49, %7029
  %7031 = add nsw i32 %7028, %7030
  %7032 = sext i32 %7031 to i64
  %7033 = getelementptr inbounds double, ptr %7027, i64 %7032
  %7034 = load double, ptr %7033, align 8, !tbaa !11
  %7035 = call double @llvm.fmuladd.f64(double 0xBC82000000000000, double %7034, double %7026)
  %7036 = load ptr, ptr %7, align 8, !tbaa !9
  %7037 = load i32, ptr %12, align 4, !tbaa !5
  %7038 = load i32, ptr %8, align 4, !tbaa !5
  %7039 = mul nsw i32 50, %7038
  %7040 = add nsw i32 %7037, %7039
  %7041 = sext i32 %7040 to i64
  %7042 = getelementptr inbounds double, ptr %7036, i64 %7041
  %7043 = load double, ptr %7042, align 8, !tbaa !11
  %7044 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %7043, double %7035)
  %7045 = load ptr, ptr %7, align 8, !tbaa !9
  %7046 = load i32, ptr %12, align 4, !tbaa !5
  %7047 = load i32, ptr %8, align 4, !tbaa !5
  %7048 = mul nsw i32 52, %7047
  %7049 = add nsw i32 %7046, %7048
  %7050 = sext i32 %7049 to i64
  %7051 = getelementptr inbounds double, ptr %7045, i64 %7050
  %7052 = load double, ptr %7051, align 8, !tbaa !11
  %7053 = call double @llvm.fmuladd.f64(double 0xBC8A29B726831D24, double %7052, double %7044)
  %7054 = load ptr, ptr %7, align 8, !tbaa !9
  %7055 = load i32, ptr %12, align 4, !tbaa !5
  %7056 = load i32, ptr %8, align 4, !tbaa !5
  %7057 = mul nsw i32 53, %7056
  %7058 = add nsw i32 %7055, %7057
  %7059 = sext i32 %7058 to i64
  %7060 = getelementptr inbounds double, ptr %7054, i64 %7059
  %7061 = load double, ptr %7060, align 8, !tbaa !11
  %7062 = call double @llvm.fmuladd.f64(double 0x3C73CC8A99AF5453, double %7061, double %7053)
  %7063 = load ptr, ptr %7, align 8, !tbaa !9
  %7064 = load i32, ptr %12, align 4, !tbaa !5
  %7065 = load i32, ptr %8, align 4, !tbaa !5
  %7066 = mul nsw i32 54, %7065
  %7067 = add nsw i32 %7064, %7066
  %7068 = sext i32 %7067 to i64
  %7069 = getelementptr inbounds double, ptr %7063, i64 %7068
  %7070 = load double, ptr %7069, align 8, !tbaa !11
  %7071 = call double @llvm.fmuladd.f64(double 0xBC56A09E667F3BCC, double %7070, double %7062)
  %7072 = load ptr, ptr %7, align 8, !tbaa !9
  %7073 = load i32, ptr %12, align 4, !tbaa !5
  %7074 = load i32, ptr %8, align 4, !tbaa !5
  %7075 = mul nsw i32 55, %7074
  %7076 = add nsw i32 %7073, %7075
  %7077 = sext i32 %7076 to i64
  %7078 = getelementptr inbounds double, ptr %7072, i64 %7077
  %7079 = load double, ptr %7078, align 8, !tbaa !11
  %7080 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %7079, double %7071)
  %7081 = load ptr, ptr %7, align 8, !tbaa !9
  %7082 = load i32, ptr %12, align 4, !tbaa !5
  %7083 = load i32, ptr %8, align 4, !tbaa !5
  %7084 = mul nsw i32 56, %7083
  %7085 = add nsw i32 %7082, %7084
  %7086 = sext i32 %7085 to i64
  %7087 = getelementptr inbounds double, ptr %7081, i64 %7086
  %7088 = load double, ptr %7087, align 8, !tbaa !11
  %7089 = call double @llvm.fmuladd.f64(double 0xBC93CC8A99AF5452, double %7088, double %7080)
  %7090 = load ptr, ptr %7, align 8, !tbaa !9
  %7091 = load i32, ptr %12, align 4, !tbaa !5
  %7092 = load i32, ptr %8, align 4, !tbaa !5
  %7093 = mul nsw i32 57, %7092
  %7094 = add nsw i32 %7091, %7093
  %7095 = sext i32 %7094 to i64
  %7096 = getelementptr inbounds double, ptr %7090, i64 %7095
  %7097 = load double, ptr %7096, align 8, !tbaa !11
  %7098 = call double @llvm.fmuladd.f64(double 0xBCA6A09E667F3BCC, double %7097, double %7089)
  %7099 = load ptr, ptr %7, align 8, !tbaa !9
  %7100 = load i32, ptr %12, align 4, !tbaa !5
  %7101 = load i32, ptr %8, align 4, !tbaa !5
  %7102 = mul nsw i32 58, %7101
  %7103 = add nsw i32 %7100, %7102
  %7104 = sext i32 %7103 to i64
  %7105 = getelementptr inbounds double, ptr %7099, i64 %7104
  %7106 = load double, ptr %7105, align 8, !tbaa !11
  %7107 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %7106, double %7098)
  %7108 = load ptr, ptr %7, align 8, !tbaa !9
  %7109 = load i32, ptr %12, align 4, !tbaa !5
  %7110 = load i32, ptr %8, align 4, !tbaa !5
  %7111 = mul nsw i32 59, %7110
  %7112 = add nsw i32 %7109, %7111
  %7113 = sext i32 %7112 to i64
  %7114 = getelementptr inbounds double, ptr %7108, i64 %7113
  %7115 = load double, ptr %7114, align 8, !tbaa !11
  %7116 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %7115, double %7107)
  %7117 = load ptr, ptr %7, align 8, !tbaa !9
  %7118 = load i32, ptr %12, align 4, !tbaa !5
  %7119 = load i32, ptr %8, align 4, !tbaa !5
  %7120 = mul nsw i32 60, %7119
  %7121 = add nsw i32 %7118, %7120
  %7122 = sext i32 %7121 to i64
  %7123 = getelementptr inbounds double, ptr %7117, i64 %7122
  %7124 = load double, ptr %7123, align 8, !tbaa !11
  %7125 = call double @llvm.fmuladd.f64(double 0x3FD08C54FF101A10, double %7124, double %7116)
  %7126 = load ptr, ptr %7, align 8, !tbaa !9
  %7127 = load i32, ptr %12, align 4, !tbaa !5
  %7128 = load i32, ptr %8, align 4, !tbaa !5
  %7129 = mul nsw i32 61, %7128
  %7130 = add nsw i32 %7127, %7129
  %7131 = sext i32 %7130 to i64
  %7132 = getelementptr inbounds double, ptr %7126, i64 %7131
  %7133 = load double, ptr %7132, align 8, !tbaa !11
  %7134 = call double @llvm.fmuladd.f64(double 0x4007001BD846D0B2, double %7133, double %7125)
  %7135 = load ptr, ptr %7, align 8, !tbaa !9
  %7136 = load i32, ptr %12, align 4, !tbaa !5
  %7137 = load i32, ptr %8, align 4, !tbaa !5
  %7138 = mul nsw i32 62, %7137
  %7139 = add nsw i32 %7136, %7138
  %7140 = sext i32 %7139 to i64
  %7141 = getelementptr inbounds double, ptr %7135, i64 %7140
  %7142 = load double, ptr %7141, align 8, !tbaa !11
  %7143 = call double @llvm.fmuladd.f64(double 0x3FD0C7817D9C3137, double %7142, double %7134)
  %7144 = load ptr, ptr %7, align 8, !tbaa !9
  %7145 = load i32, ptr %12, align 4, !tbaa !5
  %7146 = load i32, ptr %8, align 4, !tbaa !5
  %7147 = mul nsw i32 63, %7146
  %7148 = add nsw i32 %7145, %7147
  %7149 = sext i32 %7148 to i64
  %7150 = getelementptr inbounds double, ptr %7144, i64 %7149
  %7151 = load double, ptr %7150, align 8, !tbaa !11
  %7152 = call double @llvm.fmuladd.f64(double 0xBFB8DF388696F54E, double %7151, double %7143)
  %7153 = load ptr, ptr %7, align 8, !tbaa !9
  %7154 = load i32, ptr %12, align 4, !tbaa !5
  %7155 = load i32, ptr %8, align 4, !tbaa !5
  %7156 = mul nsw i32 64, %7155
  %7157 = add nsw i32 %7154, %7156
  %7158 = sext i32 %7157 to i64
  %7159 = getelementptr inbounds double, ptr %7153, i64 %7158
  %7160 = load double, ptr %7159, align 8, !tbaa !11
  %7161 = call double @llvm.fmuladd.f64(double 0x3C7DB2CFE686FE7B, double %7160, double %7152)
  %7162 = load ptr, ptr %7, align 8, !tbaa !9
  %7163 = load i32, ptr %12, align 4, !tbaa !5
  %7164 = load i32, ptr %8, align 4, !tbaa !5
  %7165 = mul nsw i32 65, %7164
  %7166 = add nsw i32 %7163, %7165
  %7167 = sext i32 %7166 to i64
  %7168 = getelementptr inbounds double, ptr %7162, i64 %7167
  %7169 = load double, ptr %7168, align 8, !tbaa !11
  %7170 = call double @llvm.fmuladd.f64(double 0x3C91AD7BC01366B7, double %7169, double %7161)
  %7171 = load ptr, ptr %7, align 8, !tbaa !9
  %7172 = load i32, ptr %12, align 4, !tbaa !5
  %7173 = load i32, ptr %8, align 4, !tbaa !5
  %7174 = mul nsw i32 66, %7173
  %7175 = add nsw i32 %7172, %7174
  %7176 = sext i32 %7175 to i64
  %7177 = getelementptr inbounds double, ptr %7171, i64 %7176
  %7178 = load double, ptr %7177, align 8, !tbaa !11
  %7179 = call double @llvm.fmuladd.f64(double 0x3C56A09E667F3BCC, double %7178, double %7170)
  %7180 = load ptr, ptr %7, align 8, !tbaa !9
  %7181 = load i32, ptr %12, align 4, !tbaa !5
  %7182 = load i32, ptr %8, align 4, !tbaa !5
  %7183 = mul nsw i32 67, %7182
  %7184 = add nsw i32 %7181, %7183
  %7185 = sext i32 %7184 to i64
  %7186 = getelementptr inbounds double, ptr %7180, i64 %7185
  %7187 = load double, ptr %7186, align 8, !tbaa !11
  %7188 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %7187, double %7179)
  store double %7188, ptr %11, align 8, !tbaa !11
  %7189 = load double, ptr %11, align 8, !tbaa !11
  %7190 = load ptr, ptr %9, align 8, !tbaa !9
  %7191 = load i32, ptr %12, align 4, !tbaa !5
  %7192 = load i32, ptr %10, align 4, !tbaa !5
  %7193 = mul nsw i32 24, %7192
  %7194 = add nsw i32 %7191, %7193
  %7195 = sext i32 %7194 to i64
  %7196 = getelementptr inbounds double, ptr %7190, i64 %7195
  %7197 = load double, ptr %7196, align 8, !tbaa !11
  %7198 = fadd double %7197, %7189
  store double %7198, ptr %7196, align 8, !tbaa !11
  %7199 = load ptr, ptr %7, align 8, !tbaa !9
  %7200 = load i32, ptr %12, align 4, !tbaa !5
  %7201 = load i32, ptr %8, align 4, !tbaa !5
  %7202 = mul nsw i32 36, %7201
  %7203 = add nsw i32 %7200, %7202
  %7204 = sext i32 %7203 to i64
  %7205 = getelementptr inbounds double, ptr %7199, i64 %7204
  %7206 = load double, ptr %7205, align 8, !tbaa !11
  %7207 = load ptr, ptr %7, align 8, !tbaa !9
  %7208 = load i32, ptr %12, align 4, !tbaa !5
  %7209 = load i32, ptr %8, align 4, !tbaa !5
  %7210 = mul nsw i32 37, %7209
  %7211 = add nsw i32 %7208, %7210
  %7212 = sext i32 %7211 to i64
  %7213 = getelementptr inbounds double, ptr %7207, i64 %7212
  %7214 = load double, ptr %7213, align 8, !tbaa !11
  %7215 = fmul double 0xBCA3800000000002, %7214
  %7216 = call double @llvm.fmuladd.f64(double 0x3C89000000000000, double %7206, double %7215)
  %7217 = load ptr, ptr %7, align 8, !tbaa !9
  %7218 = load i32, ptr %12, align 4, !tbaa !5
  %7219 = load i32, ptr %8, align 4, !tbaa !5
  %7220 = mul nsw i32 38, %7219
  %7221 = add nsw i32 %7218, %7220
  %7222 = sext i32 %7221 to i64
  %7223 = getelementptr inbounds double, ptr %7217, i64 %7222
  %7224 = load double, ptr %7223, align 8, !tbaa !11
  %7225 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %7224, double %7216)
  %7226 = load ptr, ptr %7, align 8, !tbaa !9
  %7227 = load i32, ptr %12, align 4, !tbaa !5
  %7228 = load i32, ptr %8, align 4, !tbaa !5
  %7229 = mul nsw i32 39, %7228
  %7230 = add nsw i32 %7227, %7229
  %7231 = sext i32 %7230 to i64
  %7232 = getelementptr inbounds double, ptr %7226, i64 %7231
  %7233 = load double, ptr %7232, align 8, !tbaa !11
  %7234 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %7233, double %7225)
  %7235 = load ptr, ptr %7, align 8, !tbaa !9
  %7236 = load i32, ptr %12, align 4, !tbaa !5
  %7237 = load i32, ptr %8, align 4, !tbaa !5
  %7238 = mul nsw i32 40, %7237
  %7239 = add nsw i32 %7236, %7238
  %7240 = sext i32 %7239 to i64
  %7241 = getelementptr inbounds double, ptr %7235, i64 %7240
  %7242 = load double, ptr %7241, align 8, !tbaa !11
  %7243 = call double @llvm.fmuladd.f64(double 0x3CA5FFFFFFFFFFFF, double %7242, double %7234)
  %7244 = load ptr, ptr %7, align 8, !tbaa !9
  %7245 = load i32, ptr %12, align 4, !tbaa !5
  %7246 = load i32, ptr %8, align 4, !tbaa !5
  %7247 = mul nsw i32 41, %7246
  %7248 = add nsw i32 %7245, %7247
  %7249 = sext i32 %7248 to i64
  %7250 = getelementptr inbounds double, ptr %7244, i64 %7249
  %7251 = load double, ptr %7250, align 8, !tbaa !11
  %7252 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %7251, double %7243)
  %7253 = load ptr, ptr %7, align 8, !tbaa !9
  %7254 = load i32, ptr %12, align 4, !tbaa !5
  %7255 = load i32, ptr %8, align 4, !tbaa !5
  %7256 = mul nsw i32 42, %7255
  %7257 = add nsw i32 %7254, %7256
  %7258 = sext i32 %7257 to i64
  %7259 = getelementptr inbounds double, ptr %7253, i64 %7258
  %7260 = load double, ptr %7259, align 8, !tbaa !11
  %7261 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %7260, double %7252)
  %7262 = load ptr, ptr %7, align 8, !tbaa !9
  %7263 = load i32, ptr %12, align 4, !tbaa !5
  %7264 = load i32, ptr %8, align 4, !tbaa !5
  %7265 = mul nsw i32 43, %7264
  %7266 = add nsw i32 %7263, %7265
  %7267 = sext i32 %7266 to i64
  %7268 = getelementptr inbounds double, ptr %7262, i64 %7267
  %7269 = load double, ptr %7268, align 8, !tbaa !11
  %7270 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %7269, double %7261)
  %7271 = load ptr, ptr %7, align 8, !tbaa !9
  %7272 = load i32, ptr %12, align 4, !tbaa !5
  %7273 = load i32, ptr %8, align 4, !tbaa !5
  %7274 = mul nsw i32 44, %7273
  %7275 = add nsw i32 %7272, %7274
  %7276 = sext i32 %7275 to i64
  %7277 = getelementptr inbounds double, ptr %7271, i64 %7276
  %7278 = load double, ptr %7277, align 8, !tbaa !11
  %7279 = call double @llvm.fmuladd.f64(double 0xBFD7671404765126, double %7278, double %7270)
  %7280 = load ptr, ptr %7, align 8, !tbaa !9
  %7281 = load i32, ptr %12, align 4, !tbaa !5
  %7282 = load i32, ptr %8, align 4, !tbaa !5
  %7283 = mul nsw i32 45, %7282
  %7284 = add nsw i32 %7281, %7283
  %7285 = sext i32 %7284 to i64
  %7286 = getelementptr inbounds double, ptr %7280, i64 %7285
  %7287 = load double, ptr %7286, align 8, !tbaa !11
  %7288 = call double @llvm.fmuladd.f64(double 0xC01043858A1F5996, double %7287, double %7279)
  %7289 = load ptr, ptr %7, align 8, !tbaa !9
  %7290 = load i32, ptr %12, align 4, !tbaa !5
  %7291 = load i32, ptr %8, align 4, !tbaa !5
  %7292 = mul nsw i32 46, %7291
  %7293 = add nsw i32 %7290, %7292
  %7294 = sext i32 %7293 to i64
  %7295 = getelementptr inbounds double, ptr %7289, i64 %7294
  %7296 = load double, ptr %7295, align 8, !tbaa !11
  %7297 = call double @llvm.fmuladd.f64(double 0xBFD7BAC3393ADDBB, double %7296, double %7288)
  %7298 = load ptr, ptr %7, align 8, !tbaa !9
  %7299 = load i32, ptr %12, align 4, !tbaa !5
  %7300 = load i32, ptr %8, align 4, !tbaa !5
  %7301 = mul nsw i32 47, %7300
  %7302 = add nsw i32 %7299, %7301
  %7303 = sext i32 %7302 to i64
  %7304 = getelementptr inbounds double, ptr %7298, i64 %7303
  %7305 = load double, ptr %7304, align 8, !tbaa !11
  %7306 = call double @llvm.fmuladd.f64(double 0x3FC1964E14FA3C8D, double %7305, double %7297)
  %7307 = load ptr, ptr %7, align 8, !tbaa !9
  %7308 = load i32, ptr %12, align 4, !tbaa !5
  %7309 = load i32, ptr %8, align 4, !tbaa !5
  %7310 = mul nsw i32 48, %7309
  %7311 = add nsw i32 %7308, %7310
  %7312 = sext i32 %7311 to i64
  %7313 = getelementptr inbounds double, ptr %7307, i64 %7312
  %7314 = load double, ptr %7313, align 8, !tbaa !11
  %7315 = call double @llvm.fmuladd.f64(double 0x3C6C000000000000, double %7314, double %7306)
  %7316 = load ptr, ptr %7, align 8, !tbaa !9
  %7317 = load i32, ptr %12, align 4, !tbaa !5
  %7318 = load i32, ptr %8, align 4, !tbaa !5
  %7319 = mul nsw i32 49, %7318
  %7320 = add nsw i32 %7317, %7319
  %7321 = sext i32 %7320 to i64
  %7322 = getelementptr inbounds double, ptr %7316, i64 %7321
  %7323 = load double, ptr %7322, align 8, !tbaa !11
  %7324 = call double @llvm.fmuladd.f64(double 0xBCBE400000000000, double %7323, double %7315)
  %7325 = load ptr, ptr %7, align 8, !tbaa !9
  %7326 = load i32, ptr %12, align 4, !tbaa !5
  %7327 = load i32, ptr %8, align 4, !tbaa !5
  %7328 = mul nsw i32 50, %7327
  %7329 = add nsw i32 %7326, %7328
  %7330 = sext i32 %7329 to i64
  %7331 = getelementptr inbounds double, ptr %7325, i64 %7330
  %7332 = load double, ptr %7331, align 8, !tbaa !11
  %7333 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %7332, double %7324)
  %7334 = load ptr, ptr %7, align 8, !tbaa !9
  %7335 = load i32, ptr %12, align 4, !tbaa !5
  %7336 = load i32, ptr %8, align 4, !tbaa !5
  %7337 = mul nsw i32 51, %7336
  %7338 = add nsw i32 %7335, %7337
  %7339 = sext i32 %7338 to i64
  %7340 = getelementptr inbounds double, ptr %7334, i64 %7339
  %7341 = load double, ptr %7340, align 8, !tbaa !11
  %7342 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %7341, double %7333)
  %7343 = load ptr, ptr %7, align 8, !tbaa !9
  %7344 = load i32, ptr %12, align 4, !tbaa !5
  %7345 = load i32, ptr %8, align 4, !tbaa !5
  %7346 = mul nsw i32 52, %7345
  %7347 = add nsw i32 %7344, %7346
  %7348 = sext i32 %7347 to i64
  %7349 = getelementptr inbounds double, ptr %7343, i64 %7348
  %7350 = load double, ptr %7349, align 8, !tbaa !11
  %7351 = call double @llvm.fmuladd.f64(double 0xBC84818F8CE34E32, double %7350, double %7342)
  %7352 = load ptr, ptr %7, align 8, !tbaa !9
  %7353 = load i32, ptr %12, align 4, !tbaa !5
  %7354 = load i32, ptr %8, align 4, !tbaa !5
  %7355 = mul nsw i32 53, %7354
  %7356 = add nsw i32 %7353, %7355
  %7357 = sext i32 %7356 to i64
  %7358 = getelementptr inbounds double, ptr %7352, i64 %7357
  %7359 = load double, ptr %7358, align 8, !tbaa !11
  %7360 = call double @llvm.fmuladd.f64(double 0x3C73CC8A99AF5453, double %7359, double %7351)
  %7361 = load ptr, ptr %7, align 8, !tbaa !9
  %7362 = load i32, ptr %12, align 4, !tbaa !5
  %7363 = load i32, ptr %8, align 4, !tbaa !5
  %7364 = mul nsw i32 54, %7363
  %7365 = add nsw i32 %7362, %7364
  %7366 = sext i32 %7365 to i64
  %7367 = getelementptr inbounds double, ptr %7361, i64 %7366
  %7368 = load double, ptr %7367, align 8, !tbaa !11
  %7369 = call double @llvm.fmuladd.f64(double 0x3C83CC8A99AF5451, double %7368, double %7360)
  %7370 = load ptr, ptr %7, align 8, !tbaa !9
  %7371 = load i32, ptr %12, align 4, !tbaa !5
  %7372 = load i32, ptr %8, align 4, !tbaa !5
  %7373 = mul nsw i32 55, %7372
  %7374 = add nsw i32 %7371, %7373
  %7375 = sext i32 %7374 to i64
  %7376 = getelementptr inbounds double, ptr %7370, i64 %7375
  %7377 = load double, ptr %7376, align 8, !tbaa !11
  %7378 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %7377, double %7369)
  %7379 = load ptr, ptr %7, align 8, !tbaa !9
  %7380 = load i32, ptr %12, align 4, !tbaa !5
  %7381 = load i32, ptr %8, align 4, !tbaa !5
  %7382 = mul nsw i32 56, %7381
  %7383 = add nsw i32 %7380, %7382
  %7384 = sext i32 %7383 to i64
  %7385 = getelementptr inbounds double, ptr %7379, i64 %7384
  %7386 = load double, ptr %7385, align 8, !tbaa !11
  %7387 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %7386, double %7378)
  %7388 = load ptr, ptr %7, align 8, !tbaa !9
  %7389 = load i32, ptr %12, align 4, !tbaa !5
  %7390 = load i32, ptr %8, align 4, !tbaa !5
  %7391 = mul nsw i32 57, %7390
  %7392 = add nsw i32 %7389, %7391
  %7393 = sext i32 %7392 to i64
  %7394 = getelementptr inbounds double, ptr %7388, i64 %7393
  %7395 = load double, ptr %7394, align 8, !tbaa !11
  %7396 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %7395, double %7387)
  %7397 = load ptr, ptr %7, align 8, !tbaa !9
  %7398 = load i32, ptr %12, align 4, !tbaa !5
  %7399 = load i32, ptr %8, align 4, !tbaa !5
  %7400 = mul nsw i32 58, %7399
  %7401 = add nsw i32 %7398, %7400
  %7402 = sext i32 %7401 to i64
  %7403 = getelementptr inbounds double, ptr %7397, i64 %7402
  %7404 = load double, ptr %7403, align 8, !tbaa !11
  %7405 = call double @llvm.fmuladd.f64(double 0xBCA974B2334F2346, double %7404, double %7396)
  %7406 = load ptr, ptr %7, align 8, !tbaa !9
  %7407 = load i32, ptr %12, align 4, !tbaa !5
  %7408 = load i32, ptr %8, align 4, !tbaa !5
  %7409 = mul nsw i32 59, %7408
  %7410 = add nsw i32 %7407, %7409
  %7411 = sext i32 %7410 to i64
  %7412 = getelementptr inbounds double, ptr %7406, i64 %7411
  %7413 = load double, ptr %7412, align 8, !tbaa !11
  %7414 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %7413, double %7405)
  %7415 = load ptr, ptr %7, align 8, !tbaa !9
  %7416 = load i32, ptr %12, align 4, !tbaa !5
  %7417 = load i32, ptr %8, align 4, !tbaa !5
  %7418 = mul nsw i32 60, %7417
  %7419 = add nsw i32 %7416, %7418
  %7420 = sext i32 %7419 to i64
  %7421 = getelementptr inbounds double, ptr %7415, i64 %7420
  %7422 = load double, ptr %7421, align 8, !tbaa !11
  %7423 = call double @llvm.fmuladd.f64(double 0xBF9102DA00B18A68, double %7422, double %7414)
  %7424 = load ptr, ptr %7, align 8, !tbaa !9
  %7425 = load i32, ptr %12, align 4, !tbaa !5
  %7426 = load i32, ptr %8, align 4, !tbaa !5
  %7427 = mul nsw i32 61, %7426
  %7428 = add nsw i32 %7425, %7427
  %7429 = sext i32 %7428 to i64
  %7430 = getelementptr inbounds double, ptr %7424, i64 %7429
  %7431 = load double, ptr %7430, align 8, !tbaa !11
  %7432 = call double @llvm.fmuladd.f64(double 0x3FCD5953692F6EA6, double %7431, double %7423)
  %7433 = load ptr, ptr %7, align 8, !tbaa !9
  %7434 = load i32, ptr %12, align 4, !tbaa !5
  %7435 = load i32, ptr %8, align 4, !tbaa !5
  %7436 = mul nsw i32 62, %7435
  %7437 = add nsw i32 %7434, %7436
  %7438 = sext i32 %7437 to i64
  %7439 = getelementptr inbounds double, ptr %7433, i64 %7438
  %7440 = load double, ptr %7439, align 8, !tbaa !11
  %7441 = call double @llvm.fmuladd.f64(double 0x3FE3C4545BCF030C, double %7440, double %7432)
  %7442 = load ptr, ptr %7, align 8, !tbaa !9
  %7443 = load i32, ptr %12, align 4, !tbaa !5
  %7444 = load i32, ptr %8, align 4, !tbaa !5
  %7445 = mul nsw i32 63, %7444
  %7446 = add nsw i32 %7443, %7445
  %7447 = sext i32 %7446 to i64
  %7448 = getelementptr inbounds double, ptr %7442, i64 %7447
  %7449 = load double, ptr %7448, align 8, !tbaa !11
  %7450 = call double @llvm.fmuladd.f64(double 0x3FD6A4D32EB1F710, double %7449, double %7441)
  %7451 = load ptr, ptr %7, align 8, !tbaa !9
  %7452 = load i32, ptr %12, align 4, !tbaa !5
  %7453 = load i32, ptr %8, align 4, !tbaa !5
  %7454 = mul nsw i32 64, %7453
  %7455 = add nsw i32 %7452, %7454
  %7456 = sext i32 %7455 to i64
  %7457 = getelementptr inbounds double, ptr %7451, i64 %7456
  %7458 = load double, ptr %7457, align 8, !tbaa !11
  %7459 = call double @llvm.fmuladd.f64(double 0x3C726280B3476096, double %7458, double %7450)
  %7460 = load ptr, ptr %7, align 8, !tbaa !9
  %7461 = load i32, ptr %12, align 4, !tbaa !5
  %7462 = load i32, ptr %8, align 4, !tbaa !5
  %7463 = mul nsw i32 65, %7462
  %7464 = add nsw i32 %7461, %7463
  %7465 = sext i32 %7464 to i64
  %7466 = getelementptr inbounds double, ptr %7460, i64 %7465
  %7467 = load double, ptr %7466, align 8, !tbaa !11
  %7468 = call double @llvm.fmuladd.f64(double 0x3C46A09E667F3BCB, double %7467, double %7459)
  %7469 = load ptr, ptr %7, align 8, !tbaa !9
  %7470 = load i32, ptr %12, align 4, !tbaa !5
  %7471 = load i32, ptr %8, align 4, !tbaa !5
  %7472 = mul nsw i32 66, %7471
  %7473 = add nsw i32 %7470, %7472
  %7474 = sext i32 %7473 to i64
  %7475 = getelementptr inbounds double, ptr %7469, i64 %7474
  %7476 = load double, ptr %7475, align 8, !tbaa !11
  %7477 = call double @llvm.fmuladd.f64(double 0xBC9536948017480F, double %7476, double %7468)
  %7478 = load ptr, ptr %7, align 8, !tbaa !9
  %7479 = load i32, ptr %12, align 4, !tbaa !5
  %7480 = load i32, ptr %8, align 4, !tbaa !5
  %7481 = mul nsw i32 67, %7480
  %7482 = add nsw i32 %7479, %7481
  %7483 = sext i32 %7482 to i64
  %7484 = getelementptr inbounds double, ptr %7478, i64 %7483
  %7485 = load double, ptr %7484, align 8, !tbaa !11
  %7486 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %7485, double %7477)
  store double %7486, ptr %11, align 8, !tbaa !11
  %7487 = load double, ptr %11, align 8, !tbaa !11
  %7488 = load ptr, ptr %9, align 8, !tbaa !9
  %7489 = load i32, ptr %12, align 4, !tbaa !5
  %7490 = load i32, ptr %10, align 4, !tbaa !5
  %7491 = mul nsw i32 25, %7490
  %7492 = add nsw i32 %7489, %7491
  %7493 = sext i32 %7492 to i64
  %7494 = getelementptr inbounds double, ptr %7488, i64 %7493
  %7495 = load double, ptr %7494, align 8, !tbaa !11
  %7496 = fadd double %7495, %7487
  store double %7496, ptr %7494, align 8, !tbaa !11
  %7497 = load ptr, ptr %7, align 8, !tbaa !9
  %7498 = load i32, ptr %12, align 4, !tbaa !5
  %7499 = load i32, ptr %8, align 4, !tbaa !5
  %7500 = mul nsw i32 36, %7499
  %7501 = add nsw i32 %7498, %7500
  %7502 = sext i32 %7501 to i64
  %7503 = getelementptr inbounds double, ptr %7497, i64 %7502
  %7504 = load double, ptr %7503, align 8, !tbaa !11
  %7505 = load ptr, ptr %7, align 8, !tbaa !9
  %7506 = load i32, ptr %12, align 4, !tbaa !5
  %7507 = load i32, ptr %8, align 4, !tbaa !5
  %7508 = mul nsw i32 37, %7507
  %7509 = add nsw i32 %7506, %7508
  %7510 = sext i32 %7509 to i64
  %7511 = getelementptr inbounds double, ptr %7505, i64 %7510
  %7512 = load double, ptr %7511, align 8, !tbaa !11
  %7513 = fmul double 0xBC90000000000000, %7512
  %7514 = call double @llvm.fmuladd.f64(double 0x3C9A600000000000, double %7504, double %7513)
  %7515 = load ptr, ptr %7, align 8, !tbaa !9
  %7516 = load i32, ptr %12, align 4, !tbaa !5
  %7517 = load i32, ptr %8, align 4, !tbaa !5
  %7518 = mul nsw i32 38, %7517
  %7519 = add nsw i32 %7516, %7518
  %7520 = sext i32 %7519 to i64
  %7521 = getelementptr inbounds double, ptr %7515, i64 %7520
  %7522 = load double, ptr %7521, align 8, !tbaa !11
  %7523 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %7522, double %7514)
  %7524 = load ptr, ptr %7, align 8, !tbaa !9
  %7525 = load i32, ptr %12, align 4, !tbaa !5
  %7526 = load i32, ptr %8, align 4, !tbaa !5
  %7527 = mul nsw i32 39, %7526
  %7528 = add nsw i32 %7525, %7527
  %7529 = sext i32 %7528 to i64
  %7530 = getelementptr inbounds double, ptr %7524, i64 %7529
  %7531 = load double, ptr %7530, align 8, !tbaa !11
  %7532 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %7531, double %7523)
  %7533 = load ptr, ptr %7, align 8, !tbaa !9
  %7534 = load i32, ptr %12, align 4, !tbaa !5
  %7535 = load i32, ptr %8, align 4, !tbaa !5
  %7536 = mul nsw i32 40, %7535
  %7537 = add nsw i32 %7534, %7536
  %7538 = sext i32 %7537 to i64
  %7539 = getelementptr inbounds double, ptr %7533, i64 %7538
  %7540 = load double, ptr %7539, align 8, !tbaa !11
  %7541 = call double @llvm.fmuladd.f64(double 0x3C74FFFFFFFFFFFF, double %7540, double %7532)
  %7542 = load ptr, ptr %7, align 8, !tbaa !9
  %7543 = load i32, ptr %12, align 4, !tbaa !5
  %7544 = load i32, ptr %8, align 4, !tbaa !5
  %7545 = mul nsw i32 41, %7544
  %7546 = add nsw i32 %7543, %7545
  %7547 = sext i32 %7546 to i64
  %7548 = getelementptr inbounds double, ptr %7542, i64 %7547
  %7549 = load double, ptr %7548, align 8, !tbaa !11
  %7550 = call double @llvm.fmuladd.f64(double 0xBCA4800000000001, double %7549, double %7541)
  %7551 = load ptr, ptr %7, align 8, !tbaa !9
  %7552 = load i32, ptr %12, align 4, !tbaa !5
  %7553 = load i32, ptr %8, align 4, !tbaa !5
  %7554 = mul nsw i32 42, %7553
  %7555 = add nsw i32 %7552, %7554
  %7556 = sext i32 %7555 to i64
  %7557 = getelementptr inbounds double, ptr %7551, i64 %7556
  %7558 = load double, ptr %7557, align 8, !tbaa !11
  %7559 = call double @llvm.fmuladd.f64(double 0x3CA9FFFFFFFFFFFE, double %7558, double %7550)
  %7560 = load ptr, ptr %7, align 8, !tbaa !9
  %7561 = load i32, ptr %12, align 4, !tbaa !5
  %7562 = load i32, ptr %8, align 4, !tbaa !5
  %7563 = mul nsw i32 43, %7562
  %7564 = add nsw i32 %7561, %7563
  %7565 = sext i32 %7564 to i64
  %7566 = getelementptr inbounds double, ptr %7560, i64 %7565
  %7567 = load double, ptr %7566, align 8, !tbaa !11
  %7568 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %7567, double %7559)
  %7569 = load ptr, ptr %7, align 8, !tbaa !9
  %7570 = load i32, ptr %12, align 4, !tbaa !5
  %7571 = load i32, ptr %8, align 4, !tbaa !5
  %7572 = mul nsw i32 44, %7571
  %7573 = add nsw i32 %7570, %7572
  %7574 = sext i32 %7573 to i64
  %7575 = getelementptr inbounds double, ptr %7569, i64 %7574
  %7576 = load double, ptr %7575, align 8, !tbaa !11
  %7577 = call double @llvm.fmuladd.f64(double 0x3FF043C98657E812, double %7576, double %7568)
  %7578 = load ptr, ptr %7, align 8, !tbaa !9
  %7579 = load i32, ptr %12, align 4, !tbaa !5
  %7580 = load i32, ptr %8, align 4, !tbaa !5
  %7581 = mul nsw i32 45, %7580
  %7582 = add nsw i32 %7579, %7581
  %7583 = sext i32 %7582 to i64
  %7584 = getelementptr inbounds double, ptr %7578, i64 %7583
  %7585 = load double, ptr %7584, align 8, !tbaa !11
  %7586 = call double @llvm.fmuladd.f64(double 0x3FEFAD7976B5DE1F, double %7585, double %7577)
  %7587 = load ptr, ptr %7, align 8, !tbaa !9
  %7588 = load i32, ptr %12, align 4, !tbaa !5
  %7589 = load i32, ptr %8, align 4, !tbaa !5
  %7590 = mul nsw i32 46, %7589
  %7591 = add nsw i32 %7588, %7590
  %7592 = sext i32 %7591 to i64
  %7593 = getelementptr inbounds double, ptr %7587, i64 %7592
  %7594 = load double, ptr %7593, align 8, !tbaa !11
  %7595 = call double @llvm.fmuladd.f64(double 0xBFB4C23AD63BEF8D, double %7594, double %7586)
  %7596 = load ptr, ptr %7, align 8, !tbaa !9
  %7597 = load i32, ptr %12, align 4, !tbaa !5
  %7598 = load i32, ptr %8, align 4, !tbaa !5
  %7599 = mul nsw i32 47, %7598
  %7600 = add nsw i32 %7597, %7599
  %7601 = sext i32 %7600 to i64
  %7602 = getelementptr inbounds double, ptr %7596, i64 %7601
  %7603 = load double, ptr %7602, align 8, !tbaa !11
  %7604 = call double @llvm.fmuladd.f64(double 0xBFAC37F3CCE9FD36, double %7603, double %7595)
  %7605 = load ptr, ptr %7, align 8, !tbaa !9
  %7606 = load i32, ptr %12, align 4, !tbaa !5
  %7607 = load i32, ptr %8, align 4, !tbaa !5
  %7608 = mul nsw i32 48, %7607
  %7609 = add nsw i32 %7606, %7608
  %7610 = sext i32 %7609 to i64
  %7611 = getelementptr inbounds double, ptr %7605, i64 %7610
  %7612 = load double, ptr %7611, align 8, !tbaa !11
  %7613 = call double @llvm.fmuladd.f64(double 0x3C76800000000000, double %7612, double %7604)
  %7614 = load ptr, ptr %7, align 8, !tbaa !9
  %7615 = load i32, ptr %12, align 4, !tbaa !5
  %7616 = load i32, ptr %8, align 4, !tbaa !5
  %7617 = mul nsw i32 49, %7616
  %7618 = add nsw i32 %7615, %7617
  %7619 = sext i32 %7618 to i64
  %7620 = getelementptr inbounds double, ptr %7614, i64 %7619
  %7621 = load double, ptr %7620, align 8, !tbaa !11
  %7622 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %7621, double %7613)
  %7623 = load ptr, ptr %7, align 8, !tbaa !9
  %7624 = load i32, ptr %12, align 4, !tbaa !5
  %7625 = load i32, ptr %8, align 4, !tbaa !5
  %7626 = mul nsw i32 50, %7625
  %7627 = add nsw i32 %7624, %7626
  %7628 = sext i32 %7627 to i64
  %7629 = getelementptr inbounds double, ptr %7623, i64 %7628
  %7630 = load double, ptr %7629, align 8, !tbaa !11
  %7631 = call double @llvm.fmuladd.f64(double 0x3C9A000000000000, double %7630, double %7622)
  %7632 = load ptr, ptr %7, align 8, !tbaa !9
  %7633 = load i32, ptr %12, align 4, !tbaa !5
  %7634 = load i32, ptr %8, align 4, !tbaa !5
  %7635 = mul nsw i32 51, %7634
  %7636 = add nsw i32 %7633, %7635
  %7637 = sext i32 %7636 to i64
  %7638 = getelementptr inbounds double, ptr %7632, i64 %7637
  %7639 = load double, ptr %7638, align 8, !tbaa !11
  %7640 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %7639, double %7631)
  %7641 = load ptr, ptr %7, align 8, !tbaa !9
  %7642 = load i32, ptr %12, align 4, !tbaa !5
  %7643 = load i32, ptr %8, align 4, !tbaa !5
  %7644 = mul nsw i32 52, %7643
  %7645 = add nsw i32 %7642, %7644
  %7646 = sext i32 %7645 to i64
  %7647 = getelementptr inbounds double, ptr %7641, i64 %7646
  %7648 = load double, ptr %7647, align 8, !tbaa !11
  %7649 = call double @llvm.fmuladd.f64(double 0x3C759116F9B144FE, double %7648, double %7640)
  %7650 = load ptr, ptr %7, align 8, !tbaa !9
  %7651 = load i32, ptr %12, align 4, !tbaa !5
  %7652 = load i32, ptr %8, align 4, !tbaa !5
  %7653 = mul nsw i32 53, %7652
  %7654 = add nsw i32 %7651, %7653
  %7655 = sext i32 %7654 to i64
  %7656 = getelementptr inbounds double, ptr %7650, i64 %7655
  %7657 = load double, ptr %7656, align 8, !tbaa !11
  %7658 = call double @llvm.fmuladd.f64(double 0x3C70F876CCDF6CD9, double %7657, double %7649)
  %7659 = load ptr, ptr %7, align 8, !tbaa !9
  %7660 = load i32, ptr %12, align 4, !tbaa !5
  %7661 = load i32, ptr %8, align 4, !tbaa !5
  %7662 = mul nsw i32 54, %7661
  %7663 = add nsw i32 %7660, %7662
  %7664 = sext i32 %7663 to i64
  %7665 = getelementptr inbounds double, ptr %7659, i64 %7664
  %7666 = load double, ptr %7665, align 8, !tbaa !11
  %7667 = call double @llvm.fmuladd.f64(double 0xBC73CC8A99AF5453, double %7666, double %7658)
  %7668 = load ptr, ptr %7, align 8, !tbaa !9
  %7669 = load i32, ptr %12, align 4, !tbaa !5
  %7670 = load i32, ptr %8, align 4, !tbaa !5
  %7671 = mul nsw i32 55, %7670
  %7672 = add nsw i32 %7669, %7671
  %7673 = sext i32 %7672 to i64
  %7674 = getelementptr inbounds double, ptr %7668, i64 %7673
  %7675 = load double, ptr %7674, align 8, !tbaa !11
  %7676 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %7675, double %7667)
  %7677 = load ptr, ptr %7, align 8, !tbaa !9
  %7678 = load i32, ptr %12, align 4, !tbaa !5
  %7679 = load i32, ptr %8, align 4, !tbaa !5
  %7680 = mul nsw i32 56, %7679
  %7681 = add nsw i32 %7678, %7680
  %7682 = sext i32 %7681 to i64
  %7683 = getelementptr inbounds double, ptr %7677, i64 %7682
  %7684 = load double, ptr %7683, align 8, !tbaa !11
  %7685 = call double @llvm.fmuladd.f64(double 0xBCA16999E4DFE905, double %7684, double %7676)
  %7686 = load ptr, ptr %7, align 8, !tbaa !9
  %7687 = load i32, ptr %12, align 4, !tbaa !5
  %7688 = load i32, ptr %8, align 4, !tbaa !5
  %7689 = mul nsw i32 57, %7688
  %7690 = add nsw i32 %7687, %7689
  %7691 = sext i32 %7690 to i64
  %7692 = getelementptr inbounds double, ptr %7686, i64 %7691
  %7693 = load double, ptr %7692, align 8, !tbaa !11
  %7694 = call double @llvm.fmuladd.f64(double 0xBCA91A2FB9B52657, double %7693, double %7685)
  %7695 = load ptr, ptr %7, align 8, !tbaa !9
  %7696 = load i32, ptr %12, align 4, !tbaa !5
  %7697 = load i32, ptr %8, align 4, !tbaa !5
  %7698 = mul nsw i32 58, %7697
  %7699 = add nsw i32 %7696, %7698
  %7700 = sext i32 %7699 to i64
  %7701 = getelementptr inbounds double, ptr %7695, i64 %7700
  %7702 = load double, ptr %7701, align 8, !tbaa !11
  %7703 = call double @llvm.fmuladd.f64(double 0xBC9974B2334F2346, double %7702, double %7694)
  %7704 = load ptr, ptr %7, align 8, !tbaa !9
  %7705 = load i32, ptr %12, align 4, !tbaa !5
  %7706 = load i32, ptr %8, align 4, !tbaa !5
  %7707 = mul nsw i32 59, %7706
  %7708 = add nsw i32 %7705, %7707
  %7709 = sext i32 %7708 to i64
  %7710 = getelementptr inbounds double, ptr %7704, i64 %7709
  %7711 = load double, ptr %7710, align 8, !tbaa !11
  %7712 = call double @llvm.fmuladd.f64(double 0x3C80F876CCDF6CD9, double %7711, double %7703)
  %7713 = load ptr, ptr %7, align 8, !tbaa !9
  %7714 = load i32, ptr %12, align 4, !tbaa !5
  %7715 = load i32, ptr %8, align 4, !tbaa !5
  %7716 = mul nsw i32 60, %7715
  %7717 = add nsw i32 %7714, %7716
  %7718 = sext i32 %7717 to i64
  %7719 = getelementptr inbounds double, ptr %7713, i64 %7718
  %7720 = load double, ptr %7719, align 8, !tbaa !11
  %7721 = call double @llvm.fmuladd.f64(double 0x3FD6A4D32EB1F71D, double %7720, double %7712)
  %7722 = load ptr, ptr %7, align 8, !tbaa !9
  %7723 = load i32, ptr %12, align 4, !tbaa !5
  %7724 = load i32, ptr %8, align 4, !tbaa !5
  %7725 = mul nsw i32 61, %7724
  %7726 = add nsw i32 %7723, %7725
  %7727 = sext i32 %7726 to i64
  %7728 = getelementptr inbounds double, ptr %7722, i64 %7727
  %7729 = load double, ptr %7728, align 8, !tbaa !11
  %7730 = call double @llvm.fmuladd.f64(double 0x3FE3C4545BCF030E, double %7729, double %7721)
  %7731 = load ptr, ptr %7, align 8, !tbaa !9
  %7732 = load i32, ptr %12, align 4, !tbaa !5
  %7733 = load i32, ptr %8, align 4, !tbaa !5
  %7734 = mul nsw i32 62, %7733
  %7735 = add nsw i32 %7732, %7734
  %7736 = sext i32 %7735 to i64
  %7737 = getelementptr inbounds double, ptr %7731, i64 %7736
  %7738 = load double, ptr %7737, align 8, !tbaa !11
  %7739 = call double @llvm.fmuladd.f64(double 0x3FCD5953692F6EA6, double %7738, double %7730)
  %7740 = load ptr, ptr %7, align 8, !tbaa !9
  %7741 = load i32, ptr %12, align 4, !tbaa !5
  %7742 = load i32, ptr %8, align 4, !tbaa !5
  %7743 = mul nsw i32 63, %7742
  %7744 = add nsw i32 %7741, %7743
  %7745 = sext i32 %7744 to i64
  %7746 = getelementptr inbounds double, ptr %7740, i64 %7745
  %7747 = load double, ptr %7746, align 8, !tbaa !11
  %7748 = call double @llvm.fmuladd.f64(double 0xBF9102DA00B18A34, double %7747, double %7739)
  %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 64, %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 = call double @llvm.fmuladd.f64(double 0xBCA0D685DF45AE00, double %7756, double %7748)
  %7758 = load ptr, ptr %7, align 8, !tbaa !9
  %7759 = load i32, ptr %12, align 4, !tbaa !5
  %7760 = load i32, ptr %8, align 4, !tbaa !5
  %7761 = mul nsw i32 65, %7760
  %7762 = add nsw i32 %7759, %7761
  %7763 = sext i32 %7762 to i64
  %7764 = getelementptr inbounds double, ptr %7758, i64 %7763
  %7765 = load double, ptr %7764, align 8, !tbaa !11
  %7766 = call double @llvm.fmuladd.f64(double 0x3C56A09E667F3BCC, double %7765, double %7757)
  %7767 = load ptr, ptr %7, align 8, !tbaa !9
  %7768 = load i32, ptr %12, align 4, !tbaa !5
  %7769 = load i32, ptr %8, align 4, !tbaa !5
  %7770 = mul nsw i32 66, %7769
  %7771 = add nsw i32 %7768, %7770
  %7772 = sext i32 %7771 to i64
  %7773 = getelementptr inbounds double, ptr %7767, i64 %7772
  %7774 = load double, ptr %7773, align 8, !tbaa !11
  %7775 = call double @llvm.fmuladd.f64(double 0xBC46A09E667F3BCB, double %7774, double %7766)
  %7776 = load ptr, ptr %7, align 8, !tbaa !9
  %7777 = load i32, ptr %12, align 4, !tbaa !5
  %7778 = load i32, ptr %8, align 4, !tbaa !5
  %7779 = mul nsw i32 67, %7778
  %7780 = add nsw i32 %7777, %7779
  %7781 = sext i32 %7780 to i64
  %7782 = getelementptr inbounds double, ptr %7776, i64 %7781
  %7783 = load double, ptr %7782, align 8, !tbaa !11
  %7784 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %7783, double %7775)
  store double %7784, ptr %11, align 8, !tbaa !11
  %7785 = load double, ptr %11, align 8, !tbaa !11
  %7786 = load ptr, ptr %9, align 8, !tbaa !9
  %7787 = load i32, ptr %12, align 4, !tbaa !5
  %7788 = load i32, ptr %10, align 4, !tbaa !5
  %7789 = mul nsw i32 26, %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 = fadd double %7793, %7785
  store double %7794, ptr %7792, align 8, !tbaa !11
  %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 36, %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 = load ptr, ptr %7, align 8, !tbaa !9
  %7804 = load i32, ptr %12, align 4, !tbaa !5
  %7805 = load i32, ptr %8, align 4, !tbaa !5
  %7806 = mul nsw i32 37, %7805
  %7807 = add nsw i32 %7804, %7806
  %7808 = sext i32 %7807 to i64
  %7809 = getelementptr inbounds double, ptr %7803, i64 %7808
  %7810 = load double, ptr %7809, align 8, !tbaa !11
  %7811 = fmul double 0xBC84000000000000, %7810
  %7812 = call double @llvm.fmuladd.f64(double 0xBCA22FFFFFFFFFFF, double %7802, double %7811)
  %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 38, %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 0x3C8E000000000000, 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 39, %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 0x3C94000000000000, 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 40, %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 0x3CB3900000000000, 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 41, %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 0x3CAD7FFFFFFFFFFE, 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 42, %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 0x3CB2000000000000, 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 43, %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 0xBC88000000000000, 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 44, %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 0xBFE002F9665DF3E9, 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 45, %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 0xBFEBF462FB348EF9, 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 46, %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 0xBFD4C0B9406BCBCC, 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 47, %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 0x3F980EB0AE1D4853, 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 48, %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 0x3CA22FFFFFFFFFFF, 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 49, %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 0xBC8C000000000000, 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 50, %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 0x3C82000000000000, 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 51, %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 0xBC88000000000000, 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 52, %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 0x3C6B93C10CEB10E3, 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 53, %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 0x3C8C48C6001F0AC0, 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 54, %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 0xBC66A09E667F3BCC, 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 55, %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 0xBC8C48C6001F0AC0, 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 56, %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 0xBC9125B809AC6B51, 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 57, %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 0x3C826280B3476096, 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 58, %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 0xBC90F876CCDF6CD9, 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 59, %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 0xBC80F876CCDF6CD9, 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 60, %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 0xBFE7007BFD8FD85D, 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 61, %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 0xBFE66643AEED3708, double %8027, double %8019)
  %8029 = load ptr, ptr %7, align 8, !tbaa !9
  %8030 = load i32, ptr %12, align 4, !tbaa !5
  %8031 = load i32, ptr %8, align 4, !tbaa !5
  %8032 = mul nsw i32 62, %8031
  %8033 = add nsw i32 %8030, %8032
  %8034 = sext i32 %8033 to i64
  %8035 = getelementptr inbounds double, ptr %8029, i64 %8034
  %8036 = load double, ptr %8035, align 8, !tbaa !11
  %8037 = call double @llvm.fmuladd.f64(double 0x3FAD5B74B5F10E9B, double %8036, double %8028)
  %8038 = load ptr, ptr %7, align 8, !tbaa !9
  %8039 = load i32, ptr %12, align 4, !tbaa !5
  %8040 = load i32, ptr %8, align 4, !tbaa !5
  %8041 = mul nsw i32 63, %8040
  %8042 = add nsw i32 %8039, %8041
  %8043 = sext i32 %8042 to i64
  %8044 = getelementptr inbounds double, ptr %8038, i64 %8043
  %8045 = load double, ptr %8044, align 8, !tbaa !11
  %8046 = call double @llvm.fmuladd.f64(double 0x3FA3F41B0E87BFB6, double %8045, double %8037)
  %8047 = load ptr, ptr %7, align 8, !tbaa !9
  %8048 = load i32, ptr %12, align 4, !tbaa !5
  %8049 = load i32, ptr %8, align 4, !tbaa !5
  %8050 = mul nsw i32 64, %8049
  %8051 = add nsw i32 %8048, %8050
  %8052 = sext i32 %8051 to i64
  %8053 = getelementptr inbounds double, ptr %8047, i64 %8052
  %8054 = load double, ptr %8053, align 8, !tbaa !11
  %8055 = call double @llvm.fmuladd.f64(double 0x3C7F775C4688EF29, double %8054, double %8046)
  %8056 = load ptr, ptr %7, align 8, !tbaa !9
  %8057 = load i32, ptr %12, align 4, !tbaa !5
  %8058 = load i32, ptr %8, align 4, !tbaa !5
  %8059 = mul nsw i32 65, %8058
  %8060 = add nsw i32 %8057, %8059
  %8061 = sext i32 %8060 to i64
  %8062 = getelementptr inbounds double, ptr %8056, i64 %8061
  %8063 = load double, ptr %8062, align 8, !tbaa !11
  %8064 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %8063, double %8055)
  %8065 = load ptr, ptr %7, align 8, !tbaa !9
  %8066 = load i32, ptr %12, align 4, !tbaa !5
  %8067 = load i32, ptr %8, align 4, !tbaa !5
  %8068 = mul nsw i32 66, %8067
  %8069 = add nsw i32 %8066, %8068
  %8070 = sext i32 %8069 to i64
  %8071 = getelementptr inbounds double, ptr %8065, i64 %8070
  %8072 = load double, ptr %8071, align 8, !tbaa !11
  %8073 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %8072, double %8064)
  %8074 = load ptr, ptr %7, align 8, !tbaa !9
  %8075 = load i32, ptr %12, align 4, !tbaa !5
  %8076 = load i32, ptr %8, align 4, !tbaa !5
  %8077 = mul nsw i32 67, %8076
  %8078 = add nsw i32 %8075, %8077
  %8079 = sext i32 %8078 to i64
  %8080 = getelementptr inbounds double, ptr %8074, i64 %8079
  %8081 = load double, ptr %8080, align 8, !tbaa !11
  %8082 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %8081, double %8073)
  store double %8082, ptr %11, align 8, !tbaa !11
  %8083 = load double, ptr %11, align 8, !tbaa !11
  %8084 = load ptr, ptr %9, align 8, !tbaa !9
  %8085 = load i32, ptr %12, align 4, !tbaa !5
  %8086 = load i32, ptr %10, align 4, !tbaa !5
  %8087 = mul nsw i32 27, %8086
  %8088 = add nsw i32 %8085, %8087
  %8089 = sext i32 %8088 to i64
  %8090 = getelementptr inbounds double, ptr %8084, i64 %8089
  %8091 = load double, ptr %8090, align 8, !tbaa !11
  %8092 = fadd double %8091, %8083
  store double %8092, ptr %8090, align 8, !tbaa !11
  %8093 = load ptr, ptr %7, align 8, !tbaa !9
  %8094 = load i32, ptr %12, align 4, !tbaa !5
  %8095 = load i32, ptr %8, align 4, !tbaa !5
  %8096 = mul nsw i32 36, %8095
  %8097 = add nsw i32 %8094, %8096
  %8098 = sext i32 %8097 to i64
  %8099 = getelementptr inbounds double, ptr %8093, i64 %8098
  %8100 = load double, ptr %8099, align 8, !tbaa !11
  %8101 = load ptr, ptr %7, align 8, !tbaa !9
  %8102 = load i32, ptr %12, align 4, !tbaa !5
  %8103 = load i32, ptr %8, align 4, !tbaa !5
  %8104 = mul nsw i32 37, %8103
  %8105 = add nsw i32 %8102, %8104
  %8106 = sext i32 %8105 to i64
  %8107 = getelementptr inbounds double, ptr %8101, i64 %8106
  %8108 = load double, ptr %8107, align 8, !tbaa !11
  %8109 = fmul double 0xBC90000000000000, %8108
  %8110 = call double @llvm.fmuladd.f64(double 0x3C7E000000000001, double %8100, double %8109)
  %8111 = load ptr, ptr %7, align 8, !tbaa !9
  %8112 = load i32, ptr %12, align 4, !tbaa !5
  %8113 = load i32, ptr %8, align 4, !tbaa !5
  %8114 = mul nsw i32 38, %8113
  %8115 = add nsw i32 %8112, %8114
  %8116 = sext i32 %8115 to i64
  %8117 = getelementptr inbounds double, ptr %8111, i64 %8116
  %8118 = load double, ptr %8117, align 8, !tbaa !11
  %8119 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %8118, double %8110)
  %8120 = load ptr, ptr %7, align 8, !tbaa !9
  %8121 = load i32, ptr %12, align 4, !tbaa !5
  %8122 = load i32, ptr %8, align 4, !tbaa !5
  %8123 = mul nsw i32 39, %8122
  %8124 = add nsw i32 %8121, %8123
  %8125 = sext i32 %8124 to i64
  %8126 = getelementptr inbounds double, ptr %8120, i64 %8125
  %8127 = load double, ptr %8126, align 8, !tbaa !11
  %8128 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %8127, double %8119)
  %8129 = load ptr, ptr %7, align 8, !tbaa !9
  %8130 = load i32, ptr %12, align 4, !tbaa !5
  %8131 = load i32, ptr %8, align 4, !tbaa !5
  %8132 = mul nsw i32 40, %8131
  %8133 = add nsw i32 %8130, %8132
  %8134 = sext i32 %8133 to i64
  %8135 = getelementptr inbounds double, ptr %8129, i64 %8134
  %8136 = load double, ptr %8135, align 8, !tbaa !11
  %8137 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %8136, double %8128)
  %8138 = load ptr, ptr %7, align 8, !tbaa !9
  %8139 = load i32, ptr %12, align 4, !tbaa !5
  %8140 = load i32, ptr %8, align 4, !tbaa !5
  %8141 = mul nsw i32 41, %8140
  %8142 = add nsw i32 %8139, %8141
  %8143 = sext i32 %8142 to i64
  %8144 = getelementptr inbounds double, ptr %8138, i64 %8143
  %8145 = load double, ptr %8144, align 8, !tbaa !11
  %8146 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %8145, double %8137)
  %8147 = load ptr, ptr %7, align 8, !tbaa !9
  %8148 = load i32, ptr %12, align 4, !tbaa !5
  %8149 = load i32, ptr %8, align 4, !tbaa !5
  %8150 = mul nsw i32 42, %8149
  %8151 = add nsw i32 %8148, %8150
  %8152 = sext i32 %8151 to i64
  %8153 = getelementptr inbounds double, ptr %8147, i64 %8152
  %8154 = load double, ptr %8153, align 8, !tbaa !11
  %8155 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %8154, double %8146)
  %8156 = load ptr, ptr %7, align 8, !tbaa !9
  %8157 = load i32, ptr %12, align 4, !tbaa !5
  %8158 = load i32, ptr %8, align 4, !tbaa !5
  %8159 = mul nsw i32 43, %8158
  %8160 = add nsw i32 %8157, %8159
  %8161 = sext i32 %8160 to i64
  %8162 = getelementptr inbounds double, ptr %8156, i64 %8161
  %8163 = load double, ptr %8162, align 8, !tbaa !11
  %8164 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %8163, double %8155)
  %8165 = load ptr, ptr %7, align 8, !tbaa !9
  %8166 = load i32, ptr %12, align 4, !tbaa !5
  %8167 = load i32, ptr %8, align 4, !tbaa !5
  %8168 = mul nsw i32 44, %8167
  %8169 = add nsw i32 %8166, %8168
  %8170 = sext i32 %8169 to i64
  %8171 = getelementptr inbounds double, ptr %8165, i64 %8170
  %8172 = load double, ptr %8171, align 8, !tbaa !11
  %8173 = call double @llvm.fmuladd.f64(double 0x3FC1964E14FA3C8D, double %8172, double %8164)
  %8174 = load ptr, ptr %7, align 8, !tbaa !9
  %8175 = load i32, ptr %12, align 4, !tbaa !5
  %8176 = load i32, ptr %8, align 4, !tbaa !5
  %8177 = mul nsw i32 45, %8176
  %8178 = add nsw i32 %8175, %8177
  %8179 = sext i32 %8178 to i64
  %8180 = getelementptr inbounds double, ptr %8174, i64 %8179
  %8181 = load double, ptr %8180, align 8, !tbaa !11
  %8182 = call double @llvm.fmuladd.f64(double 0xBFD7BAC3393ADDAC, double %8181, double %8173)
  %8183 = load ptr, ptr %7, align 8, !tbaa !9
  %8184 = load i32, ptr %12, align 4, !tbaa !5
  %8185 = load i32, ptr %8, align 4, !tbaa !5
  %8186 = mul nsw i32 46, %8185
  %8187 = add nsw i32 %8184, %8186
  %8188 = sext i32 %8187 to i64
  %8189 = getelementptr inbounds double, ptr %8183, i64 %8188
  %8190 = load double, ptr %8189, align 8, !tbaa !11
  %8191 = call double @llvm.fmuladd.f64(double 0xC01043858A1F5994, double %8190, double %8182)
  %8192 = load ptr, ptr %7, align 8, !tbaa !9
  %8193 = load i32, ptr %12, align 4, !tbaa !5
  %8194 = load i32, ptr %8, align 4, !tbaa !5
  %8195 = mul nsw i32 47, %8194
  %8196 = add nsw i32 %8193, %8195
  %8197 = sext i32 %8196 to i64
  %8198 = getelementptr inbounds double, ptr %8192, i64 %8197
  %8199 = load double, ptr %8198, align 8, !tbaa !11
  %8200 = call double @llvm.fmuladd.f64(double 0xBFD7671404765114, double %8199, double %8191)
  %8201 = load ptr, ptr %7, align 8, !tbaa !9
  %8202 = load i32, ptr %12, align 4, !tbaa !5
  %8203 = load i32, ptr %8, align 4, !tbaa !5
  %8204 = mul nsw i32 48, %8203
  %8205 = add nsw i32 %8202, %8204
  %8206 = sext i32 %8205 to i64
  %8207 = getelementptr inbounds double, ptr %8201, i64 %8206
  %8208 = load double, ptr %8207, align 8, !tbaa !11
  %8209 = call double @llvm.fmuladd.f64(double 0x3C98800000000000, double %8208, double %8200)
  %8210 = load ptr, ptr %7, align 8, !tbaa !9
  %8211 = load i32, ptr %12, align 4, !tbaa !5
  %8212 = load i32, ptr %8, align 4, !tbaa !5
  %8213 = mul nsw i32 49, %8212
  %8214 = add nsw i32 %8211, %8213
  %8215 = sext i32 %8214 to i64
  %8216 = getelementptr inbounds double, ptr %8210, i64 %8215
  %8217 = load double, ptr %8216, align 8, !tbaa !11
  %8218 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %8217, double %8209)
  %8219 = load ptr, ptr %7, align 8, !tbaa !9
  %8220 = load i32, ptr %12, align 4, !tbaa !5
  %8221 = load i32, ptr %8, align 4, !tbaa !5
  %8222 = mul nsw i32 50, %8221
  %8223 = add nsw i32 %8220, %8222
  %8224 = sext i32 %8223 to i64
  %8225 = getelementptr inbounds double, ptr %8219, i64 %8224
  %8226 = load double, ptr %8225, align 8, !tbaa !11
  %8227 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %8226, double %8218)
  %8228 = load ptr, ptr %7, align 8, !tbaa !9
  %8229 = load i32, ptr %12, align 4, !tbaa !5
  %8230 = load i32, ptr %8, align 4, !tbaa !5
  %8231 = mul nsw i32 51, %8230
  %8232 = add nsw i32 %8229, %8231
  %8233 = sext i32 %8232 to i64
  %8234 = getelementptr inbounds double, ptr %8228, i64 %8233
  %8235 = load double, ptr %8234, align 8, !tbaa !11
  %8236 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %8235, double %8227)
  %8237 = load ptr, ptr %7, align 8, !tbaa !9
  %8238 = load i32, ptr %12, align 4, !tbaa !5
  %8239 = load i32, ptr %8, align 4, !tbaa !5
  %8240 = mul nsw i32 52, %8239
  %8241 = add nsw i32 %8238, %8240
  %8242 = sext i32 %8241 to i64
  %8243 = getelementptr inbounds double, ptr %8237, i64 %8242
  %8244 = load double, ptr %8243, align 8, !tbaa !11
  %8245 = call double @llvm.fmuladd.f64(double 0x3C7DB2CFE686FE7B, double %8244, double %8236)
  %8246 = load ptr, ptr %7, align 8, !tbaa !9
  %8247 = load i32, ptr %12, align 4, !tbaa !5
  %8248 = load i32, ptr %8, align 4, !tbaa !5
  %8249 = mul nsw i32 53, %8248
  %8250 = add nsw i32 %8247, %8249
  %8251 = sext i32 %8250 to i64
  %8252 = getelementptr inbounds double, ptr %8246, i64 %8251
  %8253 = load double, ptr %8252, align 8, !tbaa !11
  %8254 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %8253, double %8245)
  %8255 = load ptr, ptr %7, align 8, !tbaa !9
  %8256 = load i32, ptr %12, align 4, !tbaa !5
  %8257 = load i32, ptr %8, align 4, !tbaa !5
  %8258 = mul nsw i32 54, %8257
  %8259 = add nsw i32 %8256, %8258
  %8260 = sext i32 %8259 to i64
  %8261 = getelementptr inbounds double, ptr %8255, i64 %8260
  %8262 = load double, ptr %8261, align 8, !tbaa !11
  %8263 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %8262, double %8254)
  %8264 = load ptr, ptr %7, align 8, !tbaa !9
  %8265 = load i32, ptr %12, align 4, !tbaa !5
  %8266 = load i32, ptr %8, align 4, !tbaa !5
  %8267 = mul nsw i32 56, %8266
  %8268 = add nsw i32 %8265, %8267
  %8269 = sext i32 %8268 to i64
  %8270 = getelementptr inbounds double, ptr %8264, i64 %8269
  %8271 = load double, ptr %8270, align 8, !tbaa !11
  %8272 = call double @llvm.fmuladd.f64(double 0xBC70F876CCDF6CD9, double %8271, double %8263)
  %8273 = load ptr, ptr %7, align 8, !tbaa !9
  %8274 = load i32, ptr %12, align 4, !tbaa !5
  %8275 = load i32, ptr %8, align 4, !tbaa !5
  %8276 = mul nsw i32 57, %8275
  %8277 = add nsw i32 %8274, %8276
  %8278 = sext i32 %8277 to i64
  %8279 = getelementptr inbounds double, ptr %8273, i64 %8278
  %8280 = load double, ptr %8279, align 8, !tbaa !11
  %8281 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %8280, double %8272)
  %8282 = load ptr, ptr %7, align 8, !tbaa !9
  %8283 = load i32, ptr %12, align 4, !tbaa !5
  %8284 = load i32, ptr %8, align 4, !tbaa !5
  %8285 = mul nsw i32 58, %8284
  %8286 = add nsw i32 %8283, %8285
  %8287 = sext i32 %8286 to i64
  %8288 = getelementptr inbounds double, ptr %8282, i64 %8287
  %8289 = load double, ptr %8288, align 8, !tbaa !11
  %8290 = call double @llvm.fmuladd.f64(double 0x3CA3CC8A99AF5452, double %8289, double %8281)
  %8291 = load ptr, ptr %7, align 8, !tbaa !9
  %8292 = load i32, ptr %12, align 4, !tbaa !5
  %8293 = load i32, ptr %8, align 4, !tbaa !5
  %8294 = mul nsw i32 59, %8293
  %8295 = add nsw i32 %8292, %8294
  %8296 = sext i32 %8295 to i64
  %8297 = getelementptr inbounds double, ptr %8291, i64 %8296
  %8298 = load double, ptr %8297, align 8, !tbaa !11
  %8299 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %8298, double %8290)
  %8300 = load ptr, ptr %7, align 8, !tbaa !9
  %8301 = load i32, ptr %12, align 4, !tbaa !5
  %8302 = load i32, ptr %8, align 4, !tbaa !5
  %8303 = mul nsw i32 60, %8302
  %8304 = add nsw i32 %8301, %8303
  %8305 = sext i32 %8304 to i64
  %8306 = getelementptr inbounds double, ptr %8300, i64 %8305
  %8307 = load double, ptr %8306, align 8, !tbaa !11
  %8308 = call double @llvm.fmuladd.f64(double 0x3FA3F41B0E87BFE9, double %8307, double %8299)
  %8309 = load ptr, ptr %7, align 8, !tbaa !9
  %8310 = load i32, ptr %12, align 4, !tbaa !5
  %8311 = load i32, ptr %8, align 4, !tbaa !5
  %8312 = mul nsw i32 61, %8311
  %8313 = add nsw i32 %8310, %8312
  %8314 = sext i32 %8313 to i64
  %8315 = getelementptr inbounds double, ptr %8309, i64 %8314
  %8316 = load double, ptr %8315, align 8, !tbaa !11
  %8317 = call double @llvm.fmuladd.f64(double 0x3FAD5B74B5F10E92, double %8316, double %8308)
  %8318 = load ptr, ptr %7, align 8, !tbaa !9
  %8319 = load i32, ptr %12, align 4, !tbaa !5
  %8320 = load i32, ptr %8, align 4, !tbaa !5
  %8321 = mul nsw i32 62, %8320
  %8322 = add nsw i32 %8319, %8321
  %8323 = sext i32 %8322 to i64
  %8324 = getelementptr inbounds double, ptr %8318, i64 %8323
  %8325 = load double, ptr %8324, align 8, !tbaa !11
  %8326 = call double @llvm.fmuladd.f64(double 0xBFE66643AEED36FA, double %8325, double %8317)
  %8327 = load ptr, ptr %7, align 8, !tbaa !9
  %8328 = load i32, ptr %12, align 4, !tbaa !5
  %8329 = load i32, ptr %8, align 4, !tbaa !5
  %8330 = mul nsw i32 63, %8329
  %8331 = add nsw i32 %8328, %8330
  %8332 = sext i32 %8331 to i64
  %8333 = getelementptr inbounds double, ptr %8327, i64 %8332
  %8334 = load double, ptr %8333, align 8, !tbaa !11
  %8335 = call double @llvm.fmuladd.f64(double 0xBFE7007BFD8FD85D, double %8334, double %8326)
  %8336 = load ptr, ptr %7, align 8, !tbaa !9
  %8337 = load i32, ptr %12, align 4, !tbaa !5
  %8338 = load i32, ptr %8, align 4, !tbaa !5
  %8339 = mul nsw i32 64, %8338
  %8340 = add nsw i32 %8337, %8339
  %8341 = sext i32 %8340 to i64
  %8342 = getelementptr inbounds double, ptr %8336, i64 %8341
  %8343 = load double, ptr %8342, align 8, !tbaa !11
  %8344 = call double @llvm.fmuladd.f64(double 0x3C7ADEBC19B71701, double %8343, double %8335)
  %8345 = load ptr, ptr %7, align 8, !tbaa !9
  %8346 = load i32, ptr %12, align 4, !tbaa !5
  %8347 = load i32, ptr %8, align 4, !tbaa !5
  %8348 = mul nsw i32 65, %8347
  %8349 = add nsw i32 %8346, %8348
  %8350 = sext i32 %8349 to i64
  %8351 = getelementptr inbounds double, ptr %8345, i64 %8350
  %8352 = load double, ptr %8351, align 8, !tbaa !11
  %8353 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %8352, double %8344)
  %8354 = load ptr, ptr %7, align 8, !tbaa !9
  %8355 = load i32, ptr %12, align 4, !tbaa !5
  %8356 = load i32, ptr %8, align 4, !tbaa !5
  %8357 = mul nsw i32 66, %8356
  %8358 = add nsw i32 %8355, %8357
  %8359 = sext i32 %8358 to i64
  %8360 = getelementptr inbounds double, ptr %8354, i64 %8359
  %8361 = load double, ptr %8360, align 8, !tbaa !11
  %8362 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %8361, double %8353)
  store double %8362, ptr %11, align 8, !tbaa !11
  %8363 = load double, ptr %11, align 8, !tbaa !11
  %8364 = load ptr, ptr %9, align 8, !tbaa !9
  %8365 = load i32, ptr %12, align 4, !tbaa !5
  %8366 = load i32, ptr %10, align 4, !tbaa !5
  %8367 = mul nsw i32 28, %8366
  %8368 = add nsw i32 %8365, %8367
  %8369 = sext i32 %8368 to i64
  %8370 = getelementptr inbounds double, ptr %8364, i64 %8369
  %8371 = load double, ptr %8370, align 8, !tbaa !11
  %8372 = fadd double %8371, %8363
  store double %8372, ptr %8370, align 8, !tbaa !11
  %8373 = load ptr, ptr %7, align 8, !tbaa !9
  %8374 = load i32, ptr %12, align 4, !tbaa !5
  %8375 = load i32, ptr %8, align 4, !tbaa !5
  %8376 = mul nsw i32 36, %8375
  %8377 = add nsw i32 %8374, %8376
  %8378 = sext i32 %8377 to i64
  %8379 = getelementptr inbounds double, ptr %8373, i64 %8378
  %8380 = load double, ptr %8379, align 8, !tbaa !11
  %8381 = load ptr, ptr %7, align 8, !tbaa !9
  %8382 = load i32, ptr %12, align 4, !tbaa !5
  %8383 = load i32, ptr %8, align 4, !tbaa !5
  %8384 = mul nsw i32 37, %8383
  %8385 = add nsw i32 %8382, %8384
  %8386 = sext i32 %8385 to i64
  %8387 = getelementptr inbounds double, ptr %8381, i64 %8386
  %8388 = load double, ptr %8387, align 8, !tbaa !11
  %8389 = fmul double 0x3C7FFFFFFFFFFFFF, %8388
  %8390 = call double @llvm.fmuladd.f64(double 0xBC85000000000000, double %8380, double %8389)
  %8391 = load ptr, ptr %7, align 8, !tbaa !9
  %8392 = load i32, ptr %12, align 4, !tbaa !5
  %8393 = load i32, ptr %8, align 4, !tbaa !5
  %8394 = mul nsw i32 38, %8393
  %8395 = add nsw i32 %8392, %8394
  %8396 = sext i32 %8395 to i64
  %8397 = getelementptr inbounds double, ptr %8391, i64 %8396
  %8398 = load double, ptr %8397, align 8, !tbaa !11
  %8399 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %8398, double %8390)
  %8400 = load ptr, ptr %7, align 8, !tbaa !9
  %8401 = load i32, ptr %12, align 4, !tbaa !5
  %8402 = load i32, ptr %8, align 4, !tbaa !5
  %8403 = mul nsw i32 40, %8402
  %8404 = add nsw i32 %8401, %8403
  %8405 = sext i32 %8404 to i64
  %8406 = getelementptr inbounds double, ptr %8400, i64 %8405
  %8407 = load double, ptr %8406, align 8, !tbaa !11
  %8408 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %8407, double %8399)
  %8409 = load ptr, ptr %7, align 8, !tbaa !9
  %8410 = load i32, ptr %12, align 4, !tbaa !5
  %8411 = load i32, ptr %8, align 4, !tbaa !5
  %8412 = mul nsw i32 41, %8411
  %8413 = add nsw i32 %8410, %8412
  %8414 = sext i32 %8413 to i64
  %8415 = getelementptr inbounds double, ptr %8409, i64 %8414
  %8416 = load double, ptr %8415, align 8, !tbaa !11
  %8417 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %8416, double %8408)
  %8418 = load ptr, ptr %7, align 8, !tbaa !9
  %8419 = load i32, ptr %12, align 4, !tbaa !5
  %8420 = load i32, ptr %8, align 4, !tbaa !5
  %8421 = mul nsw i32 42, %8420
  %8422 = add nsw i32 %8419, %8421
  %8423 = sext i32 %8422 to i64
  %8424 = getelementptr inbounds double, ptr %8418, i64 %8423
  %8425 = load double, ptr %8424, align 8, !tbaa !11
  %8426 = call double @llvm.fmuladd.f64(double 0xBCAC000000000000, double %8425, double %8417)
  %8427 = load ptr, ptr %7, align 8, !tbaa !9
  %8428 = load i32, ptr %12, align 4, !tbaa !5
  %8429 = load i32, ptr %8, align 4, !tbaa !5
  %8430 = mul nsw i32 43, %8429
  %8431 = add nsw i32 %8428, %8430
  %8432 = sext i32 %8431 to i64
  %8433 = getelementptr inbounds double, ptr %8427, i64 %8432
  %8434 = load double, ptr %8433, align 8, !tbaa !11
  %8435 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %8434, double %8426)
  %8436 = load ptr, ptr %7, align 8, !tbaa !9
  %8437 = load i32, ptr %12, align 4, !tbaa !5
  %8438 = load i32, ptr %8, align 4, !tbaa !5
  %8439 = mul nsw i32 44, %8438
  %8440 = add nsw i32 %8437, %8439
  %8441 = sext i32 %8440 to i64
  %8442 = getelementptr inbounds double, ptr %8436, i64 %8441
  %8443 = load double, ptr %8442, align 8, !tbaa !11
  %8444 = call double @llvm.fmuladd.f64(double 0xBFAC37F3CCE9FD85, double %8443, double %8435)
  %8445 = load ptr, ptr %7, align 8, !tbaa !9
  %8446 = load i32, ptr %12, align 4, !tbaa !5
  %8447 = load i32, ptr %8, align 4, !tbaa !5
  %8448 = mul nsw i32 45, %8447
  %8449 = add nsw i32 %8446, %8448
  %8450 = sext i32 %8449 to i64
  %8451 = getelementptr inbounds double, ptr %8445, i64 %8450
  %8452 = load double, ptr %8451, align 8, !tbaa !11
  %8453 = call double @llvm.fmuladd.f64(double 0xBFB4C23AD63BEF7C, double %8452, double %8444)
  %8454 = load ptr, ptr %7, align 8, !tbaa !9
  %8455 = load i32, ptr %12, align 4, !tbaa !5
  %8456 = load i32, ptr %8, align 4, !tbaa !5
  %8457 = mul nsw i32 46, %8456
  %8458 = add nsw i32 %8455, %8457
  %8459 = sext i32 %8458 to i64
  %8460 = getelementptr inbounds double, ptr %8454, i64 %8459
  %8461 = load double, ptr %8460, align 8, !tbaa !11
  %8462 = call double @llvm.fmuladd.f64(double 0x3FEFAD7976B5DE11, double %8461, double %8453)
  %8463 = load ptr, ptr %7, align 8, !tbaa !9
  %8464 = load i32, ptr %12, align 4, !tbaa !5
  %8465 = load i32, ptr %8, align 4, !tbaa !5
  %8466 = mul nsw i32 47, %8465
  %8467 = add nsw i32 %8464, %8466
  %8468 = sext i32 %8467 to i64
  %8469 = getelementptr inbounds double, ptr %8463, i64 %8468
  %8470 = load double, ptr %8469, align 8, !tbaa !11
  %8471 = call double @llvm.fmuladd.f64(double 0x3FF043C98657E812, double %8470, double %8462)
  %8472 = load ptr, ptr %7, align 8, !tbaa !9
  %8473 = load i32, ptr %12, align 4, !tbaa !5
  %8474 = load i32, ptr %8, align 4, !tbaa !5
  %8475 = mul nsw i32 48, %8474
  %8476 = add nsw i32 %8473, %8475
  %8477 = sext i32 %8476 to i64
  %8478 = getelementptr inbounds double, ptr %8472, i64 %8477
  %8479 = load double, ptr %8478, align 8, !tbaa !11
  %8480 = call double @llvm.fmuladd.f64(double 0xBC82FFFFFFFFFFFF, double %8479, double %8471)
  %8481 = load ptr, ptr %7, align 8, !tbaa !9
  %8482 = load i32, ptr %12, align 4, !tbaa !5
  %8483 = load i32, ptr %8, align 4, !tbaa !5
  %8484 = mul nsw i32 49, %8483
  %8485 = add nsw i32 %8482, %8484
  %8486 = sext i32 %8485 to i64
  %8487 = getelementptr inbounds double, ptr %8481, i64 %8486
  %8488 = load double, ptr %8487, align 8, !tbaa !11
  %8489 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %8488, double %8480)
  %8490 = load ptr, ptr %7, align 8, !tbaa !9
  %8491 = load i32, ptr %12, align 4, !tbaa !5
  %8492 = load i32, ptr %8, align 4, !tbaa !5
  %8493 = mul nsw i32 50, %8492
  %8494 = add nsw i32 %8491, %8493
  %8495 = sext i32 %8494 to i64
  %8496 = getelementptr inbounds double, ptr %8490, i64 %8495
  %8497 = load double, ptr %8496, align 8, !tbaa !11
  %8498 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %8497, double %8489)
  %8499 = load ptr, ptr %7, align 8, !tbaa !9
  %8500 = load i32, ptr %12, align 4, !tbaa !5
  %8501 = load i32, ptr %8, align 4, !tbaa !5
  %8502 = mul nsw i32 52, %8501
  %8503 = add nsw i32 %8500, %8502
  %8504 = sext i32 %8503 to i64
  %8505 = getelementptr inbounds double, ptr %8499, i64 %8504
  %8506 = load double, ptr %8505, align 8, !tbaa !11
  %8507 = call double @llvm.fmuladd.f64(double 0xBC75369480174810, double %8506, double %8498)
  %8508 = load ptr, ptr %7, align 8, !tbaa !9
  %8509 = load i32, ptr %12, align 4, !tbaa !5
  %8510 = load i32, ptr %8, align 4, !tbaa !5
  %8511 = mul nsw i32 53, %8510
  %8512 = add nsw i32 %8509, %8511
  %8513 = sext i32 %8512 to i64
  %8514 = getelementptr inbounds double, ptr %8508, i64 %8513
  %8515 = load double, ptr %8514, align 8, !tbaa !11
  %8516 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %8515, double %8507)
  %8517 = load ptr, ptr %7, align 8, !tbaa !9
  %8518 = load i32, ptr %12, align 4, !tbaa !5
  %8519 = load i32, ptr %8, align 4, !tbaa !5
  %8520 = mul nsw i32 54, %8519
  %8521 = add nsw i32 %8518, %8520
  %8522 = sext i32 %8521 to i64
  %8523 = getelementptr inbounds double, ptr %8517, i64 %8522
  %8524 = load double, ptr %8523, align 8, !tbaa !11
  %8525 = call double @llvm.fmuladd.f64(double 0x3C93CC8A99AF5452, double %8524, double %8516)
  %8526 = load ptr, ptr %7, align 8, !tbaa !9
  %8527 = load i32, ptr %12, align 4, !tbaa !5
  %8528 = load i32, ptr %8, align 4, !tbaa !5
  %8529 = mul nsw i32 55, %8528
  %8530 = add nsw i32 %8527, %8529
  %8531 = sext i32 %8530 to i64
  %8532 = getelementptr inbounds double, ptr %8526, i64 %8531
  %8533 = load double, ptr %8532, align 8, !tbaa !11
  %8534 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %8533, double %8525)
  %8535 = load ptr, ptr %7, align 8, !tbaa !9
  %8536 = load i32, ptr %12, align 4, !tbaa !5
  %8537 = load i32, ptr %8, align 4, !tbaa !5
  %8538 = mul nsw i32 56, %8537
  %8539 = add nsw i32 %8536, %8538
  %8540 = sext i32 %8539 to i64
  %8541 = getelementptr inbounds double, ptr %8535, i64 %8540
  %8542 = load double, ptr %8541, align 8, !tbaa !11
  %8543 = call double @llvm.fmuladd.f64(double 0x3C8974B2334F2346, double %8542, double %8534)
  %8544 = load ptr, ptr %7, align 8, !tbaa !9
  %8545 = load i32, ptr %12, align 4, !tbaa !5
  %8546 = load i32, ptr %8, align 4, !tbaa !5
  %8547 = mul nsw i32 57, %8546
  %8548 = add nsw i32 %8545, %8547
  %8549 = sext i32 %8548 to i64
  %8550 = getelementptr inbounds double, ptr %8544, i64 %8549
  %8551 = load double, ptr %8550, align 8, !tbaa !11
  %8552 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %8551, double %8543)
  %8553 = load ptr, ptr %7, align 8, !tbaa !9
  %8554 = load i32, ptr %12, align 4, !tbaa !5
  %8555 = load i32, ptr %8, align 4, !tbaa !5
  %8556 = mul nsw i32 58, %8555
  %8557 = add nsw i32 %8554, %8556
  %8558 = sext i32 %8557 to i64
  %8559 = getelementptr inbounds double, ptr %8553, i64 %8558
  %8560 = load double, ptr %8559, align 8, !tbaa !11
  %8561 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %8560, double %8552)
  %8562 = load ptr, ptr %7, align 8, !tbaa !9
  %8563 = load i32, ptr %12, align 4, !tbaa !5
  %8564 = load i32, ptr %8, align 4, !tbaa !5
  %8565 = mul nsw i32 59, %8564
  %8566 = add nsw i32 %8563, %8565
  %8567 = sext i32 %8566 to i64
  %8568 = getelementptr inbounds double, ptr %8562, i64 %8567
  %8569 = load double, ptr %8568, align 8, !tbaa !11
  %8570 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %8569, double %8561)
  %8571 = load ptr, ptr %7, align 8, !tbaa !9
  %8572 = load i32, ptr %12, align 4, !tbaa !5
  %8573 = load i32, ptr %8, align 4, !tbaa !5
  %8574 = mul nsw i32 60, %8573
  %8575 = add nsw i32 %8572, %8574
  %8576 = sext i32 %8575 to i64
  %8577 = getelementptr inbounds double, ptr %8571, i64 %8576
  %8578 = load double, ptr %8577, align 8, !tbaa !11
  %8579 = call double @llvm.fmuladd.f64(double 0xBFB8DF388696F554, double %8578, double %8570)
  %8580 = load ptr, ptr %7, align 8, !tbaa !9
  %8581 = load i32, ptr %12, align 4, !tbaa !5
  %8582 = load i32, ptr %8, align 4, !tbaa !5
  %8583 = mul nsw i32 61, %8582
  %8584 = add nsw i32 %8581, %8583
  %8585 = sext i32 %8584 to i64
  %8586 = getelementptr inbounds double, ptr %8580, i64 %8585
  %8587 = load double, ptr %8586, align 8, !tbaa !11
  %8588 = call double @llvm.fmuladd.f64(double 0x3FD0C7817D9C3121, double %8587, double %8579)
  %8589 = load ptr, ptr %7, align 8, !tbaa !9
  %8590 = load i32, ptr %12, align 4, !tbaa !5
  %8591 = load i32, ptr %8, align 4, !tbaa !5
  %8592 = mul nsw i32 62, %8591
  %8593 = add nsw i32 %8590, %8592
  %8594 = sext i32 %8593 to i64
  %8595 = getelementptr inbounds double, ptr %8589, i64 %8594
  %8596 = load double, ptr %8595, align 8, !tbaa !11
  %8597 = call double @llvm.fmuladd.f64(double 0x4007001BD846D0AE, double %8596, double %8588)
  %8598 = load ptr, ptr %7, align 8, !tbaa !9
  %8599 = load i32, ptr %12, align 4, !tbaa !5
  %8600 = load i32, ptr %8, align 4, !tbaa !5
  %8601 = mul nsw i32 63, %8600
  %8602 = add nsw i32 %8599, %8601
  %8603 = sext i32 %8602 to i64
  %8604 = getelementptr inbounds double, ptr %8598, i64 %8603
  %8605 = load double, ptr %8604, align 8, !tbaa !11
  %8606 = call double @llvm.fmuladd.f64(double 0x3FD08C54FF1019FC, double %8605, double %8597)
  %8607 = load ptr, ptr %7, align 8, !tbaa !9
  %8608 = load i32, ptr %12, align 4, !tbaa !5
  %8609 = load i32, ptr %8, align 4, !tbaa !5
  %8610 = mul nsw i32 64, %8609
  %8611 = add nsw i32 %8608, %8610
  %8612 = sext i32 %8611 to i64
  %8613 = getelementptr inbounds double, ptr %8607, i64 %8612
  %8614 = load double, ptr %8613, align 8, !tbaa !11
  %8615 = call double @llvm.fmuladd.f64(double 0xBC9152F9467969C8, double %8614, double %8606)
  %8616 = load ptr, ptr %7, align 8, !tbaa !9
  %8617 = load i32, ptr %12, align 4, !tbaa !5
  %8618 = load i32, ptr %8, align 4, !tbaa !5
  %8619 = mul nsw i32 65, %8618
  %8620 = add nsw i32 %8617, %8619
  %8621 = sext i32 %8620 to i64
  %8622 = getelementptr inbounds double, ptr %8616, i64 %8621
  %8623 = load double, ptr %8622, align 8, !tbaa !11
  %8624 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %8623, double %8615)
  %8625 = load ptr, ptr %7, align 8, !tbaa !9
  %8626 = load i32, ptr %12, align 4, !tbaa !5
  %8627 = load i32, ptr %8, align 4, !tbaa !5
  %8628 = mul nsw i32 66, %8627
  %8629 = add nsw i32 %8626, %8628
  %8630 = sext i32 %8629 to i64
  %8631 = getelementptr inbounds double, ptr %8625, i64 %8630
  %8632 = load double, ptr %8631, align 8, !tbaa !11
  %8633 = call double @llvm.fmuladd.f64(double 0x3C9974B2334F2346, double %8632, double %8624)
  %8634 = load ptr, ptr %7, align 8, !tbaa !9
  %8635 = load i32, ptr %12, align 4, !tbaa !5
  %8636 = load i32, ptr %8, align 4, !tbaa !5
  %8637 = mul nsw i32 67, %8636
  %8638 = add nsw i32 %8635, %8637
  %8639 = sext i32 %8638 to i64
  %8640 = getelementptr inbounds double, ptr %8634, i64 %8639
  %8641 = load double, ptr %8640, align 8, !tbaa !11
  %8642 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %8641, double %8633)
  store double %8642, ptr %11, align 8, !tbaa !11
  %8643 = load double, ptr %11, align 8, !tbaa !11
  %8644 = load ptr, ptr %9, align 8, !tbaa !9
  %8645 = load i32, ptr %12, align 4, !tbaa !5
  %8646 = load i32, ptr %10, align 4, !tbaa !5
  %8647 = mul nsw i32 29, %8646
  %8648 = add nsw i32 %8645, %8647
  %8649 = sext i32 %8648 to i64
  %8650 = getelementptr inbounds double, ptr %8644, i64 %8649
  %8651 = load double, ptr %8650, align 8, !tbaa !11
  %8652 = fadd double %8651, %8643
  store double %8652, ptr %8650, align 8, !tbaa !11
  %8653 = load ptr, ptr %7, align 8, !tbaa !9
  %8654 = load i32, ptr %12, align 4, !tbaa !5
  %8655 = load i32, ptr %8, align 4, !tbaa !5
  %8656 = mul nsw i32 36, %8655
  %8657 = add nsw i32 %8654, %8656
  %8658 = sext i32 %8657 to i64
  %8659 = getelementptr inbounds double, ptr %8653, i64 %8658
  %8660 = load double, ptr %8659, align 8, !tbaa !11
  %8661 = load ptr, ptr %7, align 8, !tbaa !9
  %8662 = load i32, ptr %12, align 4, !tbaa !5
  %8663 = load i32, ptr %8, align 4, !tbaa !5
  %8664 = mul nsw i32 37, %8663
  %8665 = add nsw i32 %8662, %8664
  %8666 = sext i32 %8665 to i64
  %8667 = getelementptr inbounds double, ptr %8661, i64 %8666
  %8668 = load double, ptr %8667, align 8, !tbaa !11
  %8669 = fmul double 0x3CA7000000000002, %8668
  %8670 = call double @llvm.fmuladd.f64(double 0xBC9D3FFFFFFFFFFF, double %8660, double %8669)
  %8671 = load ptr, ptr %7, align 8, !tbaa !9
  %8672 = load i32, ptr %12, align 4, !tbaa !5
  %8673 = load i32, ptr %8, align 4, !tbaa !5
  %8674 = mul nsw i32 38, %8673
  %8675 = add nsw i32 %8672, %8674
  %8676 = sext i32 %8675 to i64
  %8677 = getelementptr inbounds double, ptr %8671, i64 %8676
  %8678 = load double, ptr %8677, align 8, !tbaa !11
  %8679 = call double @llvm.fmuladd.f64(double 0x3CA9FFFFFFFFFFFE, double %8678, double %8670)
  %8680 = load ptr, ptr %7, align 8, !tbaa !9
  %8681 = load i32, ptr %12, align 4, !tbaa !5
  %8682 = load i32, ptr %8, align 4, !tbaa !5
  %8683 = mul nsw i32 39, %8682
  %8684 = add nsw i32 %8681, %8683
  %8685 = sext i32 %8684 to i64
  %8686 = getelementptr inbounds double, ptr %8680, i64 %8685
  %8687 = load double, ptr %8686, align 8, !tbaa !11
  %8688 = call double @llvm.fmuladd.f64(double 0xBC60000000000000, double %8687, double %8679)
  %8689 = load ptr, ptr %7, align 8, !tbaa !9
  %8690 = load i32, ptr %12, align 4, !tbaa !5
  %8691 = load i32, ptr %8, align 4, !tbaa !5
  %8692 = mul nsw i32 40, %8691
  %8693 = add nsw i32 %8690, %8692
  %8694 = sext i32 %8693 to i64
  %8695 = getelementptr inbounds double, ptr %8689, i64 %8694
  %8696 = load double, ptr %8695, align 8, !tbaa !11
  %8697 = call double @llvm.fmuladd.f64(double 0x3C7E000000000001, double %8696, double %8688)
  %8698 = load ptr, ptr %7, align 8, !tbaa !9
  %8699 = load i32, ptr %12, align 4, !tbaa !5
  %8700 = load i32, ptr %8, align 4, !tbaa !5
  %8701 = mul nsw i32 41, %8700
  %8702 = add nsw i32 %8699, %8701
  %8703 = sext i32 %8702 to i64
  %8704 = getelementptr inbounds double, ptr %8698, i64 %8703
  %8705 = load double, ptr %8704, align 8, !tbaa !11
  %8706 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %8705, double %8697)
  %8707 = load ptr, ptr %7, align 8, !tbaa !9
  %8708 = load i32, ptr %12, align 4, !tbaa !5
  %8709 = load i32, ptr %8, align 4, !tbaa !5
  %8710 = mul nsw i32 42, %8709
  %8711 = add nsw i32 %8708, %8710
  %8712 = sext i32 %8711 to i64
  %8713 = getelementptr inbounds double, ptr %8707, i64 %8712
  %8714 = load double, ptr %8713, align 8, !tbaa !11
  %8715 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %8714, double %8706)
  %8716 = load ptr, ptr %7, align 8, !tbaa !9
  %8717 = load i32, ptr %12, align 4, !tbaa !5
  %8718 = load i32, ptr %8, align 4, !tbaa !5
  %8719 = mul nsw i32 43, %8718
  %8720 = add nsw i32 %8717, %8719
  %8721 = sext i32 %8720 to i64
  %8722 = getelementptr inbounds double, ptr %8716, i64 %8721
  %8723 = load double, ptr %8722, align 8, !tbaa !11
  %8724 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %8723, double %8715)
  %8725 = load ptr, ptr %7, align 8, !tbaa !9
  %8726 = load i32, ptr %12, align 4, !tbaa !5
  %8727 = load i32, ptr %8, align 4, !tbaa !5
  %8728 = mul nsw i32 44, %8727
  %8729 = add nsw i32 %8726, %8728
  %8730 = sext i32 %8729 to i64
  %8731 = getelementptr inbounds double, ptr %8725, i64 %8730
  %8732 = load double, ptr %8731, align 8, !tbaa !11
  %8733 = call double @llvm.fmuladd.f64(double 0x3C89000000000000, double %8732, double %8724)
  %8734 = load ptr, ptr %7, align 8, !tbaa !9
  %8735 = load i32, ptr %12, align 4, !tbaa !5
  %8736 = load i32, ptr %8, align 4, !tbaa !5
  %8737 = mul nsw i32 45, %8736
  %8738 = add nsw i32 %8735, %8737
  %8739 = sext i32 %8738 to i64
  %8740 = getelementptr inbounds double, ptr %8734, i64 %8739
  %8741 = load double, ptr %8740, align 8, !tbaa !11
  %8742 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %8741, double %8733)
  %8743 = load ptr, ptr %7, align 8, !tbaa !9
  %8744 = load i32, ptr %12, align 4, !tbaa !5
  %8745 = load i32, ptr %8, align 4, !tbaa !5
  %8746 = mul nsw i32 46, %8745
  %8747 = add nsw i32 %8744, %8746
  %8748 = sext i32 %8747 to i64
  %8749 = getelementptr inbounds double, ptr %8743, i64 %8748
  %8750 = load double, ptr %8749, align 8, !tbaa !11
  %8751 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %8750, double %8742)
  %8752 = load ptr, ptr %7, align 8, !tbaa !9
  %8753 = load i32, ptr %12, align 4, !tbaa !5
  %8754 = load i32, ptr %8, align 4, !tbaa !5
  %8755 = mul nsw i32 47, %8754
  %8756 = add nsw i32 %8753, %8755
  %8757 = sext i32 %8756 to i64
  %8758 = getelementptr inbounds double, ptr %8752, i64 %8757
  %8759 = load double, ptr %8758, align 8, !tbaa !11
  %8760 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %8759, double %8751)
  %8761 = load ptr, ptr %7, align 8, !tbaa !9
  %8762 = load i32, ptr %12, align 4, !tbaa !5
  %8763 = load i32, ptr %8, align 4, !tbaa !5
  %8764 = mul nsw i32 48, %8763
  %8765 = add nsw i32 %8762, %8764
  %8766 = sext i32 %8765 to i64
  %8767 = getelementptr inbounds double, ptr %8761, i64 %8766
  %8768 = load double, ptr %8767, align 8, !tbaa !11
  %8769 = call double @llvm.fmuladd.f64(double 0x3FA789B66AF4F458, double %8768, double %8760)
  %8770 = load ptr, ptr %7, align 8, !tbaa !9
  %8771 = load i32, ptr %12, align 4, !tbaa !5
  %8772 = load i32, ptr %8, align 4, !tbaa !5
  %8773 = mul nsw i32 49, %8772
  %8774 = add nsw i32 %8771, %8773
  %8775 = sext i32 %8774 to i64
  %8776 = getelementptr inbounds double, ptr %8770, i64 %8775
  %8777 = load double, ptr %8776, align 8, !tbaa !11
  %8778 = call double @llvm.fmuladd.f64(double 0x3FEC2894019C8AD0, double %8777, double %8769)
  %8779 = load ptr, ptr %7, align 8, !tbaa !9
  %8780 = load i32, ptr %12, align 4, !tbaa !5
  %8781 = load i32, ptr %8, align 4, !tbaa !5
  %8782 = mul nsw i32 50, %8781
  %8783 = add nsw i32 %8780, %8782
  %8784 = sext i32 %8783 to i64
  %8785 = getelementptr inbounds double, ptr %8779, i64 %8784
  %8786 = load double, ptr %8785, align 8, !tbaa !11
  %8787 = call double @llvm.fmuladd.f64(double 0x3FEC2894019C8AC0, double %8786, double %8778)
  %8788 = load ptr, ptr %7, align 8, !tbaa !9
  %8789 = load i32, ptr %12, align 4, !tbaa !5
  %8790 = load i32, ptr %8, align 4, !tbaa !5
  %8791 = mul nsw i32 51, %8790
  %8792 = add nsw i32 %8789, %8791
  %8793 = sext i32 %8792 to i64
  %8794 = getelementptr inbounds double, ptr %8788, i64 %8793
  %8795 = load double, ptr %8794, align 8, !tbaa !11
  %8796 = call double @llvm.fmuladd.f64(double 0x3FA789B66AF4F551, double %8795, double %8787)
  %8797 = load ptr, ptr %7, align 8, !tbaa !9
  %8798 = load i32, ptr %12, align 4, !tbaa !5
  %8799 = load i32, ptr %8, align 4, !tbaa !5
  %8800 = mul nsw i32 52, %8799
  %8801 = add nsw i32 %8798, %8800
  %8802 = sext i32 %8801 to i64
  %8803 = getelementptr inbounds double, ptr %8797, i64 %8802
  %8804 = load double, ptr %8803, align 8, !tbaa !11
  %8805 = call double @llvm.fmuladd.f64(double 0x3C7FD1DEC022EC17, double %8804, double %8796)
  %8806 = load ptr, ptr %7, align 8, !tbaa !9
  %8807 = load i32, ptr %12, align 4, !tbaa !5
  %8808 = load i32, ptr %8, align 4, !tbaa !5
  %8809 = mul nsw i32 53, %8808
  %8810 = add nsw i32 %8807, %8809
  %8811 = sext i32 %8810 to i64
  %8812 = getelementptr inbounds double, ptr %8806, i64 %8811
  %8813 = load double, ptr %8812, align 8, !tbaa !11
  %8814 = call double @llvm.fmuladd.f64(double 0xBCA6A09E667F3BCC, double %8813, double %8805)
  %8815 = load ptr, ptr %7, align 8, !tbaa !9
  %8816 = load i32, ptr %12, align 4, !tbaa !5
  %8817 = load i32, ptr %8, align 4, !tbaa !5
  %8818 = mul nsw i32 54, %8817
  %8819 = add nsw i32 %8816, %8818
  %8820 = sext i32 %8819 to i64
  %8821 = getelementptr inbounds double, ptr %8815, i64 %8820
  %8822 = load double, ptr %8821, align 8, !tbaa !11
  %8823 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %8822, double %8814)
  %8824 = load ptr, ptr %7, align 8, !tbaa !9
  %8825 = load i32, ptr %12, align 4, !tbaa !5
  %8826 = load i32, ptr %8, align 4, !tbaa !5
  %8827 = mul nsw i32 55, %8826
  %8828 = add nsw i32 %8825, %8827
  %8829 = sext i32 %8828 to i64
  %8830 = getelementptr inbounds double, ptr %8824, i64 %8829
  %8831 = load double, ptr %8830, align 8, !tbaa !11
  %8832 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %8831, double %8823)
  %8833 = load ptr, ptr %7, align 8, !tbaa !9
  %8834 = load i32, ptr %12, align 4, !tbaa !5
  %8835 = load i32, ptr %8, align 4, !tbaa !5
  %8836 = mul nsw i32 56, %8835
  %8837 = add nsw i32 %8834, %8836
  %8838 = sext i32 %8837 to i64
  %8839 = getelementptr inbounds double, ptr %8833, i64 %8838
  %8840 = load double, ptr %8839, align 8, !tbaa !11
  %8841 = call double @llvm.fmuladd.f64(double 0xBC81AD7BC01366B8, double %8840, double %8832)
  %8842 = load ptr, ptr %7, align 8, !tbaa !9
  %8843 = load i32, ptr %12, align 4, !tbaa !5
  %8844 = load i32, ptr %8, align 4, !tbaa !5
  %8845 = mul nsw i32 57, %8844
  %8846 = add nsw i32 %8843, %8845
  %8847 = sext i32 %8846 to i64
  %8848 = getelementptr inbounds double, ptr %8842, i64 %8847
  %8849 = load double, ptr %8848, align 8, !tbaa !11
  %8850 = call double @llvm.fmuladd.f64(double 0xBC93CC8A99AF5452, double %8849, double %8841)
  %8851 = load ptr, ptr %7, align 8, !tbaa !9
  %8852 = load i32, ptr %12, align 4, !tbaa !5
  %8853 = load i32, ptr %8, align 4, !tbaa !5
  %8854 = mul nsw i32 58, %8853
  %8855 = add nsw i32 %8852, %8854
  %8856 = sext i32 %8855 to i64
  %8857 = getelementptr inbounds double, ptr %8851, i64 %8856
  %8858 = load double, ptr %8857, align 8, !tbaa !11
  %8859 = call double @llvm.fmuladd.f64(double 0xBC93CC8A99AF5452, double %8858, double %8850)
  %8860 = load ptr, ptr %7, align 8, !tbaa !9
  %8861 = load i32, ptr %12, align 4, !tbaa !5
  %8862 = load i32, ptr %8, align 4, !tbaa !5
  %8863 = mul nsw i32 59, %8862
  %8864 = add nsw i32 %8861, %8863
  %8865 = sext i32 %8864 to i64
  %8866 = getelementptr inbounds double, ptr %8860, i64 %8865
  %8867 = load double, ptr %8866, align 8, !tbaa !11
  %8868 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %8867, double %8859)
  %8869 = load ptr, ptr %7, align 8, !tbaa !9
  %8870 = load i32, ptr %12, align 4, !tbaa !5
  %8871 = load i32, ptr %8, align 4, !tbaa !5
  %8872 = mul nsw i32 60, %8871
  %8873 = add nsw i32 %8870, %8872
  %8874 = sext i32 %8873 to i64
  %8875 = getelementptr inbounds double, ptr %8869, i64 %8874
  %8876 = load double, ptr %8875, align 8, !tbaa !11
  %8877 = call double @llvm.fmuladd.f64(double 0xBC85EB99734B41EF, double %8876, double %8868)
  %8878 = load ptr, ptr %7, align 8, !tbaa !9
  %8879 = load i32, ptr %12, align 4, !tbaa !5
  %8880 = load i32, ptr %8, align 4, !tbaa !5
  %8881 = mul nsw i32 61, %8880
  %8882 = add nsw i32 %8879, %8881
  %8883 = sext i32 %8882 to i64
  %8884 = getelementptr inbounds double, ptr %8878, i64 %8883
  %8885 = load double, ptr %8884, align 8, !tbaa !11
  %8886 = call double @llvm.fmuladd.f64(double 0xBCA80AA84CE72F89, double %8885, double %8877)
  %8887 = load ptr, ptr %7, align 8, !tbaa !9
  %8888 = load i32, ptr %12, align 4, !tbaa !5
  %8889 = load i32, ptr %8, align 4, !tbaa !5
  %8890 = mul nsw i32 62, %8889
  %8891 = add nsw i32 %8888, %8890
  %8892 = sext i32 %8891 to i64
  %8893 = getelementptr inbounds double, ptr %8887, i64 %8892
  %8894 = load double, ptr %8893, align 8, !tbaa !11
  %8895 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %8894, double %8886)
  %8896 = load ptr, ptr %7, align 8, !tbaa !9
  %8897 = load i32, ptr %12, align 4, !tbaa !5
  %8898 = load i32, ptr %8, align 4, !tbaa !5
  %8899 = mul nsw i32 63, %8898
  %8900 = add nsw i32 %8897, %8899
  %8901 = sext i32 %8900 to i64
  %8902 = getelementptr inbounds double, ptr %8896, i64 %8901
  %8903 = load double, ptr %8902, align 8, !tbaa !11
  %8904 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %8903, double %8895)
  %8905 = load ptr, ptr %7, align 8, !tbaa !9
  %8906 = load i32, ptr %12, align 4, !tbaa !5
  %8907 = load i32, ptr %8, align 4, !tbaa !5
  %8908 = mul nsw i32 64, %8907
  %8909 = add nsw i32 %8906, %8908
  %8910 = sext i32 %8909 to i64
  %8911 = getelementptr inbounds double, ptr %8905, i64 %8910
  %8912 = load double, ptr %8911, align 8, !tbaa !11
  %8913 = call double @llvm.fmuladd.f64(double 0xBFA0A4D27CF86DC6, double %8912, double %8904)
  %8914 = load ptr, ptr %7, align 8, !tbaa !9
  %8915 = load i32, ptr %12, align 4, !tbaa !5
  %8916 = load i32, ptr %8, align 4, !tbaa !5
  %8917 = mul nsw i32 65, %8916
  %8918 = add nsw i32 %8915, %8917
  %8919 = sext i32 %8918 to i64
  %8920 = getelementptr inbounds double, ptr %8914, i64 %8919
  %8921 = load double, ptr %8920, align 8, !tbaa !11
  %8922 = call double @llvm.fmuladd.f64(double 0xBFE3E93C07AFC380, double %8921, double %8913)
  %8923 = load ptr, ptr %7, align 8, !tbaa !9
  %8924 = load i32, ptr %12, align 4, !tbaa !5
  %8925 = load i32, ptr %8, align 4, !tbaa !5
  %8926 = mul nsw i32 66, %8925
  %8927 = add nsw i32 %8924, %8926
  %8928 = sext i32 %8927 to i64
  %8929 = getelementptr inbounds double, ptr %8923, i64 %8928
  %8930 = load double, ptr %8929, align 8, !tbaa !11
  %8931 = call double @llvm.fmuladd.f64(double 0xBFE3E93C07AFC37E, double %8930, double %8922)
  %8932 = load ptr, ptr %7, align 8, !tbaa !9
  %8933 = load i32, ptr %12, align 4, !tbaa !5
  %8934 = load i32, ptr %8, align 4, !tbaa !5
  %8935 = mul nsw i32 67, %8934
  %8936 = add nsw i32 %8933, %8935
  %8937 = sext i32 %8936 to i64
  %8938 = getelementptr inbounds double, ptr %8932, i64 %8937
  %8939 = load double, ptr %8938, align 8, !tbaa !11
  %8940 = call double @llvm.fmuladd.f64(double 0xBFA0A4D27CF86DAF, double %8939, double %8931)
  store double %8940, ptr %11, align 8, !tbaa !11
  %8941 = load double, ptr %11, align 8, !tbaa !11
  %8942 = load ptr, ptr %9, align 8, !tbaa !9
  %8943 = load i32, ptr %12, align 4, !tbaa !5
  %8944 = load i32, ptr %10, align 4, !tbaa !5
  %8945 = mul nsw i32 30, %8944
  %8946 = add nsw i32 %8943, %8945
  %8947 = sext i32 %8946 to i64
  %8948 = getelementptr inbounds double, ptr %8942, i64 %8947
  %8949 = load double, ptr %8948, align 8, !tbaa !11
  %8950 = fadd double %8949, %8941
  store double %8950, ptr %8948, align 8, !tbaa !11
  %8951 = load ptr, ptr %7, align 8, !tbaa !9
  %8952 = load i32, ptr %12, align 4, !tbaa !5
  %8953 = load i32, ptr %8, align 4, !tbaa !5
  %8954 = mul nsw i32 36, %8953
  %8955 = add nsw i32 %8952, %8954
  %8956 = sext i32 %8955 to i64
  %8957 = getelementptr inbounds double, ptr %8951, i64 %8956
  %8958 = load double, ptr %8957, align 8, !tbaa !11
  %8959 = load ptr, ptr %7, align 8, !tbaa !9
  %8960 = load i32, ptr %12, align 4, !tbaa !5
  %8961 = load i32, ptr %8, align 4, !tbaa !5
  %8962 = mul nsw i32 37, %8961
  %8963 = add nsw i32 %8960, %8962
  %8964 = sext i32 %8963 to i64
  %8965 = getelementptr inbounds double, ptr %8959, i64 %8964
  %8966 = load double, ptr %8965, align 8, !tbaa !11
  %8967 = fmul double 0x3C7FFFFFFFFFFFFF, %8966
  %8968 = call double @llvm.fmuladd.f64(double 0xBC89FFFFFFFFFFFF, double %8958, double %8967)
  %8969 = load ptr, ptr %7, align 8, !tbaa !9
  %8970 = load i32, ptr %12, align 4, !tbaa !5
  %8971 = load i32, ptr %8, align 4, !tbaa !5
  %8972 = mul nsw i32 38, %8971
  %8973 = add nsw i32 %8970, %8972
  %8974 = sext i32 %8973 to i64
  %8975 = getelementptr inbounds double, ptr %8969, i64 %8974
  %8976 = load double, ptr %8975, align 8, !tbaa !11
  %8977 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %8976, double %8968)
  %8978 = load ptr, ptr %7, align 8, !tbaa !9
  %8979 = load i32, ptr %12, align 4, !tbaa !5
  %8980 = load i32, ptr %8, align 4, !tbaa !5
  %8981 = mul nsw i32 39, %8980
  %8982 = add nsw i32 %8979, %8981
  %8983 = sext i32 %8982 to i64
  %8984 = getelementptr inbounds double, ptr %8978, i64 %8983
  %8985 = load double, ptr %8984, align 8, !tbaa !11
  %8986 = call double @llvm.fmuladd.f64(double 0xBCC8000000000000, double %8985, double %8977)
  %8987 = load ptr, ptr %7, align 8, !tbaa !9
  %8988 = load i32, ptr %12, align 4, !tbaa !5
  %8989 = load i32, ptr %8, align 4, !tbaa !5
  %8990 = mul nsw i32 40, %8989
  %8991 = add nsw i32 %8988, %8990
  %8992 = sext i32 %8991 to i64
  %8993 = getelementptr inbounds double, ptr %8987, i64 %8992
  %8994 = load double, ptr %8993, align 8, !tbaa !11
  %8995 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %8994, double %8986)
  %8996 = load ptr, ptr %7, align 8, !tbaa !9
  %8997 = load i32, ptr %12, align 4, !tbaa !5
  %8998 = load i32, ptr %8, align 4, !tbaa !5
  %8999 = mul nsw i32 41, %8998
  %9000 = add nsw i32 %8997, %8999
  %9001 = sext i32 %9000 to i64
  %9002 = getelementptr inbounds double, ptr %8996, i64 %9001
  %9003 = load double, ptr %9002, align 8, !tbaa !11
  %9004 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %9003, double %8995)
  %9005 = load ptr, ptr %7, align 8, !tbaa !9
  %9006 = load i32, ptr %12, align 4, !tbaa !5
  %9007 = load i32, ptr %8, align 4, !tbaa !5
  %9008 = mul nsw i32 42, %9007
  %9009 = add nsw i32 %9006, %9008
  %9010 = sext i32 %9009 to i64
  %9011 = getelementptr inbounds double, ptr %9005, i64 %9010
  %9012 = load double, ptr %9011, align 8, !tbaa !11
  %9013 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %9012, double %9004)
  %9014 = load ptr, ptr %7, align 8, !tbaa !9
  %9015 = load i32, ptr %12, align 4, !tbaa !5
  %9016 = load i32, ptr %8, align 4, !tbaa !5
  %9017 = mul nsw i32 43, %9016
  %9018 = add nsw i32 %9015, %9017
  %9019 = sext i32 %9018 to i64
  %9020 = getelementptr inbounds double, ptr %9014, i64 %9019
  %9021 = load double, ptr %9020, align 8, !tbaa !11
  %9022 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %9021, double %9013)
  %9023 = load ptr, ptr %7, align 8, !tbaa !9
  %9024 = load i32, ptr %12, align 4, !tbaa !5
  %9025 = load i32, ptr %8, align 4, !tbaa !5
  %9026 = mul nsw i32 44, %9025
  %9027 = add nsw i32 %9024, %9026
  %9028 = sext i32 %9027 to i64
  %9029 = getelementptr inbounds double, ptr %9023, i64 %9028
  %9030 = load double, ptr %9029, align 8, !tbaa !11
  %9031 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %9030, double %9022)
  %9032 = load ptr, ptr %7, align 8, !tbaa !9
  %9033 = load i32, ptr %12, align 4, !tbaa !5
  %9034 = load i32, ptr %8, align 4, !tbaa !5
  %9035 = mul nsw i32 45, %9034
  %9036 = add nsw i32 %9033, %9035
  %9037 = sext i32 %9036 to i64
  %9038 = getelementptr inbounds double, ptr %9032, i64 %9037
  %9039 = load double, ptr %9038, align 8, !tbaa !11
  %9040 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %9039, double %9031)
  %9041 = load ptr, ptr %7, align 8, !tbaa !9
  %9042 = load i32, ptr %12, align 4, !tbaa !5
  %9043 = load i32, ptr %8, align 4, !tbaa !5
  %9044 = mul nsw i32 46, %9043
  %9045 = add nsw i32 %9042, %9044
  %9046 = sext i32 %9045 to i64
  %9047 = getelementptr inbounds double, ptr %9041, i64 %9046
  %9048 = load double, ptr %9047, align 8, !tbaa !11
  %9049 = call double @llvm.fmuladd.f64(double 0xBCB0000000000000, double %9048, double %9040)
  %9050 = load ptr, ptr %7, align 8, !tbaa !9
  %9051 = load i32, ptr %12, align 4, !tbaa !5
  %9052 = load i32, ptr %8, align 4, !tbaa !5
  %9053 = mul nsw i32 47, %9052
  %9054 = add nsw i32 %9051, %9053
  %9055 = sext i32 %9054 to i64
  %9056 = getelementptr inbounds double, ptr %9050, i64 %9055
  %9057 = load double, ptr %9056, align 8, !tbaa !11
  %9058 = call double @llvm.fmuladd.f64(double 0xBCC4000000000000, double %9057, double %9049)
  %9059 = load ptr, ptr %7, align 8, !tbaa !9
  %9060 = load i32, ptr %12, align 4, !tbaa !5
  %9061 = load i32, ptr %8, align 4, !tbaa !5
  %9062 = mul nsw i32 48, %9061
  %9063 = add nsw i32 %9060, %9062
  %9064 = sext i32 %9063 to i64
  %9065 = getelementptr inbounds double, ptr %9059, i64 %9064
  %9066 = load double, ptr %9065, align 8, !tbaa !11
  %9067 = call double @llvm.fmuladd.f64(double 0xBFACD49071EC5F52, double %9066, double %9058)
  %9068 = load ptr, ptr %7, align 8, !tbaa !9
  %9069 = load i32, ptr %12, align 4, !tbaa !5
  %9070 = load i32, ptr %8, align 4, !tbaa !5
  %9071 = mul nsw i32 49, %9070
  %9072 = add nsw i32 %9069, %9071
  %9073 = sext i32 %9072 to i64
  %9074 = getelementptr inbounds double, ptr %9068, i64 %9073
  %9075 = load double, ptr %9074, align 8, !tbaa !11
  %9076 = call double @llvm.fmuladd.f64(double 0x3FCEFDC8894D082A, double %9075, double %9067)
  %9077 = load ptr, ptr %7, align 8, !tbaa !9
  %9078 = load i32, ptr %12, align 4, !tbaa !5
  %9079 = load i32, ptr %8, align 4, !tbaa !5
  %9080 = mul nsw i32 50, %9079
  %9081 = add nsw i32 %9078, %9080
  %9082 = sext i32 %9081 to i64
  %9083 = getelementptr inbounds double, ptr %9077, i64 %9082
  %9084 = load double, ptr %9083, align 8, !tbaa !11
  %9085 = call double @llvm.fmuladd.f64(double 0xBFDD2EB9CCB3BDE5, double %9084, double %9076)
  %9086 = load ptr, ptr %7, align 8, !tbaa !9
  %9087 = load i32, ptr %12, align 4, !tbaa !5
  %9088 = load i32, ptr %8, align 4, !tbaa !5
  %9089 = mul nsw i32 51, %9088
  %9090 = add nsw i32 %9087, %9089
  %9091 = sext i32 %9090 to i64
  %9092 = getelementptr inbounds double, ptr %9086, i64 %9091
  %9093 = load double, ptr %9092, align 8, !tbaa !11
  %9094 = call double @llvm.fmuladd.f64(double 0xC01569E165D79415, double %9093, double %9085)
  %9095 = load ptr, ptr %7, align 8, !tbaa !9
  %9096 = load i32, ptr %12, align 4, !tbaa !5
  %9097 = load i32, ptr %8, align 4, !tbaa !5
  %9098 = mul nsw i32 52, %9097
  %9099 = add nsw i32 %9096, %9098
  %9100 = sext i32 %9099 to i64
  %9101 = getelementptr inbounds double, ptr %9095, i64 %9100
  %9102 = load double, ptr %9101, align 8, !tbaa !11
  %9103 = call double @llvm.fmuladd.f64(double 0x3C91AD7BC01366B7, double %9102, double %9094)
  %9104 = load ptr, ptr %7, align 8, !tbaa !9
  %9105 = load i32, ptr %12, align 4, !tbaa !5
  %9106 = load i32, ptr %8, align 4, !tbaa !5
  %9107 = mul nsw i32 53, %9106
  %9108 = add nsw i32 %9105, %9107
  %9109 = sext i32 %9108 to i64
  %9110 = getelementptr inbounds double, ptr %9104, i64 %9109
  %9111 = load double, ptr %9110, align 8, !tbaa !11
  %9112 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %9111, double %9103)
  %9113 = load ptr, ptr %7, align 8, !tbaa !9
  %9114 = load i32, ptr %12, align 4, !tbaa !5
  %9115 = load i32, ptr %8, align 4, !tbaa !5
  %9116 = mul nsw i32 54, %9115
  %9117 = add nsw i32 %9114, %9116
  %9118 = sext i32 %9117 to i64
  %9119 = getelementptr inbounds double, ptr %9113, i64 %9118
  %9120 = load double, ptr %9119, align 8, !tbaa !11
  %9121 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %9120, double %9112)
  %9122 = load ptr, ptr %7, align 8, !tbaa !9
  %9123 = load i32, ptr %12, align 4, !tbaa !5
  %9124 = load i32, ptr %8, align 4, !tbaa !5
  %9125 = mul nsw i32 55, %9124
  %9126 = add nsw i32 %9123, %9125
  %9127 = sext i32 %9126 to i64
  %9128 = getelementptr inbounds double, ptr %9122, i64 %9127
  %9129 = load double, ptr %9128, align 8, !tbaa !11
  %9130 = call double @llvm.fmuladd.f64(double 0x3CC0F876CCDF6CD9, double %9129, double %9121)
  %9131 = load ptr, ptr %7, align 8, !tbaa !9
  %9132 = load i32, ptr %12, align 4, !tbaa !5
  %9133 = load i32, ptr %8, align 4, !tbaa !5
  %9134 = mul nsw i32 57, %9133
  %9135 = add nsw i32 %9132, %9134
  %9136 = sext i32 %9135 to i64
  %9137 = getelementptr inbounds double, ptr %9131, i64 %9136
  %9138 = load double, ptr %9137, align 8, !tbaa !11
  %9139 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %9138, double %9130)
  %9140 = load ptr, ptr %7, align 8, !tbaa !9
  %9141 = load i32, ptr %12, align 4, !tbaa !5
  %9142 = load i32, ptr %8, align 4, !tbaa !5
  %9143 = mul nsw i32 58, %9142
  %9144 = add nsw i32 %9141, %9143
  %9145 = sext i32 %9144 to i64
  %9146 = getelementptr inbounds double, ptr %9140, i64 %9145
  %9147 = load double, ptr %9146, align 8, !tbaa !11
  %9148 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %9147, double %9139)
  %9149 = load ptr, ptr %7, align 8, !tbaa !9
  %9150 = load i32, ptr %12, align 4, !tbaa !5
  %9151 = load i32, ptr %8, align 4, !tbaa !5
  %9152 = mul nsw i32 59, %9151
  %9153 = add nsw i32 %9150, %9152
  %9154 = sext i32 %9153 to i64
  %9155 = getelementptr inbounds double, ptr %9149, i64 %9154
  %9156 = load double, ptr %9155, align 8, !tbaa !11
  %9157 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %9156, double %9148)
  %9158 = load ptr, ptr %7, align 8, !tbaa !9
  %9159 = load i32, ptr %12, align 4, !tbaa !5
  %9160 = load i32, ptr %8, align 4, !tbaa !5
  %9161 = mul nsw i32 60, %9160
  %9162 = add nsw i32 %9159, %9161
  %9163 = sext i32 %9162 to i64
  %9164 = getelementptr inbounds double, ptr %9158, i64 %9163
  %9165 = load double, ptr %9164, align 8, !tbaa !11
  %9166 = call double @llvm.fmuladd.f64(double 0x3C66A09E667F3BCC, double %9165, double %9157)
  %9167 = load ptr, ptr %7, align 8, !tbaa !9
  %9168 = load i32, ptr %12, align 4, !tbaa !5
  %9169 = load i32, ptr %8, align 4, !tbaa !5
  %9170 = mul nsw i32 61, %9169
  %9171 = add nsw i32 %9168, %9170
  %9172 = sext i32 %9171 to i64
  %9173 = getelementptr inbounds double, ptr %9167, i64 %9172
  %9174 = load double, ptr %9173, align 8, !tbaa !11
  %9175 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %9174, double %9166)
  %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 62, %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 = call double @llvm.fmuladd.f64(double 0x3CA0F876CCDF6CD8, double %9183, double %9175)
  %9185 = load ptr, ptr %7, align 8, !tbaa !9
  %9186 = load i32, ptr %12, align 4, !tbaa !5
  %9187 = load i32, ptr %8, align 4, !tbaa !5
  %9188 = mul nsw i32 63, %9187
  %9189 = add nsw i32 %9186, %9188
  %9190 = sext i32 %9189 to i64
  %9191 = getelementptr inbounds double, ptr %9185, i64 %9190
  %9192 = load double, ptr %9191, align 8, !tbaa !11
  %9193 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %9192, double %9184)
  %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 64, %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 0x3FA462D8D66D7FC4, 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 65, %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 0xBFC5EA083165C4F6, 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 66, %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 0x3FD4A299D1E9700E, 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 67, %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 0x400E488CB8C1EA74, double %9228, double %9220)
  store double %9229, ptr %11, align 8, !tbaa !11
  %9230 = load double, ptr %11, align 8, !tbaa !11
  %9231 = load ptr, ptr %9, align 8, !tbaa !9
  %9232 = load i32, ptr %12, align 4, !tbaa !5
  %9233 = load i32, ptr %10, align 4, !tbaa !5
  %9234 = mul nsw i32 31, %9233
  %9235 = add nsw i32 %9232, %9234
  %9236 = sext i32 %9235 to i64
  %9237 = getelementptr inbounds double, ptr %9231, i64 %9236
  %9238 = load double, ptr %9237, align 8, !tbaa !11
  %9239 = fadd double %9238, %9230
  store double %9239, ptr %9237, align 8, !tbaa !11
  %9240 = load ptr, ptr %7, align 8, !tbaa !9
  %9241 = load i32, ptr %12, align 4, !tbaa !5
  %9242 = load i32, ptr %8, align 4, !tbaa !5
  %9243 = mul nsw i32 36, %9242
  %9244 = add nsw i32 %9241, %9243
  %9245 = sext i32 %9244 to i64
  %9246 = getelementptr inbounds double, ptr %9240, i64 %9245
  %9247 = load double, ptr %9246, align 8, !tbaa !11
  %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 37, %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 = fmul double 0x3CA2BFFFFFFFFFFF, %9255
  %9257 = call double @llvm.fmuladd.f64(double 0x3CA7800000000001, double %9247, double %9256)
  %9258 = load ptr, ptr %7, align 8, !tbaa !9
  %9259 = load i32, ptr %12, align 4, !tbaa !5
  %9260 = load i32, ptr %8, align 4, !tbaa !5
  %9261 = mul nsw i32 38, %9260
  %9262 = add nsw i32 %9259, %9261
  %9263 = sext i32 %9262 to i64
  %9264 = getelementptr inbounds double, ptr %9258, i64 %9263
  %9265 = load double, ptr %9264, align 8, !tbaa !11
  %9266 = call double @llvm.fmuladd.f64(double 0x3C91000000000000, double %9265, double %9257)
  %9267 = load ptr, ptr %7, align 8, !tbaa !9
  %9268 = load i32, ptr %12, align 4, !tbaa !5
  %9269 = load i32, ptr %8, align 4, !tbaa !5
  %9270 = mul nsw i32 39, %9269
  %9271 = add nsw i32 %9268, %9270
  %9272 = sext i32 %9271 to i64
  %9273 = getelementptr inbounds double, ptr %9267, i64 %9272
  %9274 = load double, ptr %9273, align 8, !tbaa !11
  %9275 = call double @llvm.fmuladd.f64(double 0x3CA5FFFFFFFFFFFF, double %9274, double %9266)
  %9276 = load ptr, ptr %7, align 8, !tbaa !9
  %9277 = load i32, ptr %12, align 4, !tbaa !5
  %9278 = load i32, ptr %8, align 4, !tbaa !5
  %9279 = mul nsw i32 40, %9278
  %9280 = add nsw i32 %9277, %9279
  %9281 = sext i32 %9280 to i64
  %9282 = getelementptr inbounds double, ptr %9276, i64 %9281
  %9283 = load double, ptr %9282, align 8, !tbaa !11
  %9284 = call double @llvm.fmuladd.f64(double 0x3CB91FFFFFFFFFFF, double %9283, double %9275)
  %9285 = load ptr, ptr %7, align 8, !tbaa !9
  %9286 = load i32, ptr %12, align 4, !tbaa !5
  %9287 = load i32, ptr %8, align 4, !tbaa !5
  %9288 = mul nsw i32 41, %9287
  %9289 = add nsw i32 %9286, %9288
  %9290 = sext i32 %9289 to i64
  %9291 = getelementptr inbounds double, ptr %9285, i64 %9290
  %9292 = load double, ptr %9291, align 8, !tbaa !11
  %9293 = call double @llvm.fmuladd.f64(double 0x3CAE000000000002, double %9292, double %9284)
  %9294 = load ptr, ptr %7, align 8, !tbaa !9
  %9295 = load i32, ptr %12, align 4, !tbaa !5
  %9296 = load i32, ptr %8, align 4, !tbaa !5
  %9297 = mul nsw i32 42, %9296
  %9298 = add nsw i32 %9295, %9297
  %9299 = sext i32 %9298 to i64
  %9300 = getelementptr inbounds double, ptr %9294, i64 %9299
  %9301 = load double, ptr %9300, align 8, !tbaa !11
  %9302 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %9301, double %9293)
  %9303 = load ptr, ptr %7, align 8, !tbaa !9
  %9304 = load i32, ptr %12, align 4, !tbaa !5
  %9305 = load i32, ptr %8, align 4, !tbaa !5
  %9306 = mul nsw i32 43, %9305
  %9307 = add nsw i32 %9304, %9306
  %9308 = sext i32 %9307 to i64
  %9309 = getelementptr inbounds double, ptr %9303, i64 %9308
  %9310 = load double, ptr %9309, align 8, !tbaa !11
  %9311 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %9310, double %9302)
  %9312 = load ptr, ptr %7, align 8, !tbaa !9
  %9313 = load i32, ptr %12, align 4, !tbaa !5
  %9314 = load i32, ptr %8, align 4, !tbaa !5
  %9315 = mul nsw i32 44, %9314
  %9316 = add nsw i32 %9313, %9315
  %9317 = sext i32 %9316 to i64
  %9318 = getelementptr inbounds double, ptr %9312, i64 %9317
  %9319 = load double, ptr %9318, align 8, !tbaa !11
  %9320 = call double @llvm.fmuladd.f64(double 0xBC71FFFFFFFFFFFF, double %9319, double %9311)
  %9321 = load ptr, ptr %7, align 8, !tbaa !9
  %9322 = load i32, ptr %12, align 4, !tbaa !5
  %9323 = load i32, ptr %8, align 4, !tbaa !5
  %9324 = mul nsw i32 45, %9323
  %9325 = add nsw i32 %9322, %9324
  %9326 = sext i32 %9325 to i64
  %9327 = getelementptr inbounds double, ptr %9321, i64 %9326
  %9328 = load double, ptr %9327, align 8, !tbaa !11
  %9329 = call double @llvm.fmuladd.f64(double 0x3CB1000000000001, double %9328, double %9320)
  %9330 = load ptr, ptr %7, align 8, !tbaa !9
  %9331 = load i32, ptr %12, align 4, !tbaa !5
  %9332 = load i32, ptr %8, align 4, !tbaa !5
  %9333 = mul nsw i32 46, %9332
  %9334 = add nsw i32 %9331, %9333
  %9335 = sext i32 %9334 to i64
  %9336 = getelementptr inbounds double, ptr %9330, i64 %9335
  %9337 = load double, ptr %9336, align 8, !tbaa !11
  %9338 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %9337, double %9329)
  %9339 = load ptr, ptr %7, align 8, !tbaa !9
  %9340 = load i32, ptr %12, align 4, !tbaa !5
  %9341 = load i32, ptr %8, align 4, !tbaa !5
  %9342 = mul nsw i32 47, %9341
  %9343 = add nsw i32 %9340, %9342
  %9344 = sext i32 %9343 to i64
  %9345 = getelementptr inbounds double, ptr %9339, i64 %9344
  %9346 = load double, ptr %9345, align 8, !tbaa !11
  %9347 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %9346, double %9338)
  %9348 = load ptr, ptr %7, align 8, !tbaa !9
  %9349 = load i32, ptr %12, align 4, !tbaa !5
  %9350 = load i32, ptr %8, align 4, !tbaa !5
  %9351 = mul nsw i32 48, %9350
  %9352 = add nsw i32 %9349, %9351
  %9353 = sext i32 %9352 to i64
  %9354 = getelementptr inbounds double, ptr %9348, i64 %9353
  %9355 = load double, ptr %9354, align 8, !tbaa !11
  %9356 = call double @llvm.fmuladd.f64(double 0x3FD6F2A1D7A49290, double %9355, double %9347)
  %9357 = load ptr, ptr %7, align 8, !tbaa !9
  %9358 = load i32, ptr %12, align 4, !tbaa !5
  %9359 = load i32, ptr %8, align 4, !tbaa !5
  %9360 = mul nsw i32 49, %9359
  %9361 = add nsw i32 %9358, %9360
  %9362 = sext i32 %9361 to i64
  %9363 = getelementptr inbounds double, ptr %9357, i64 %9362
  %9364 = load double, ptr %9363, align 8, !tbaa !11
  %9365 = call double @llvm.fmuladd.f64(double 0x3FEAEBF44A8E7A7E, double %9364, double %9356)
  %9366 = load ptr, ptr %7, align 8, !tbaa !9
  %9367 = load i32, ptr %12, align 4, !tbaa !5
  %9368 = load i32, ptr %8, align 4, !tbaa !5
  %9369 = mul nsw i32 50, %9368
  %9370 = add nsw i32 %9367, %9369
  %9371 = sext i32 %9370 to i64
  %9372 = getelementptr inbounds double, ptr %9366, i64 %9371
  %9373 = load double, ptr %9372, align 8, !tbaa !11
  %9374 = call double @llvm.fmuladd.f64(double 0x3FEAEBF44A8E7A78, double %9373, double %9365)
  %9375 = load ptr, ptr %7, align 8, !tbaa !9
  %9376 = load i32, ptr %12, align 4, !tbaa !5
  %9377 = load i32, ptr %8, align 4, !tbaa !5
  %9378 = mul nsw i32 51, %9377
  %9379 = add nsw i32 %9376, %9378
  %9380 = sext i32 %9379 to i64
  %9381 = getelementptr inbounds double, ptr %9375, i64 %9380
  %9382 = load double, ptr %9381, align 8, !tbaa !11
  %9383 = call double @llvm.fmuladd.f64(double 0x3FD6F2A1D7A492C1, double %9382, double %9374)
  %9384 = load ptr, ptr %7, align 8, !tbaa !9
  %9385 = load i32, ptr %12, align 4, !tbaa !5
  %9386 = load i32, ptr %8, align 4, !tbaa !5
  %9387 = mul nsw i32 52, %9386
  %9388 = add nsw i32 %9385, %9387
  %9389 = sext i32 %9388 to i64
  %9390 = getelementptr inbounds double, ptr %9384, i64 %9389
  %9391 = load double, ptr %9390, align 8, !tbaa !11
  %9392 = call double @llvm.fmuladd.f64(double 0x3CC689FDC818BC8F, double %9391, double %9383)
  %9393 = load ptr, ptr %7, align 8, !tbaa !9
  %9394 = load i32, ptr %12, align 4, !tbaa !5
  %9395 = load i32, ptr %8, align 4, !tbaa !5
  %9396 = mul nsw i32 53, %9395
  %9397 = add nsw i32 %9394, %9396
  %9398 = sext i32 %9397 to i64
  %9399 = getelementptr inbounds double, ptr %9393, i64 %9398
  %9400 = load double, ptr %9399, align 8, !tbaa !11
  %9401 = call double @llvm.fmuladd.f64(double 0x3CB16999E4DFE903, double %9400, double %9392)
  %9402 = load ptr, ptr %7, align 8, !tbaa !9
  %9403 = load i32, ptr %12, align 4, !tbaa !5
  %9404 = load i32, ptr %8, align 4, !tbaa !5
  %9405 = mul nsw i32 54, %9404
  %9406 = add nsw i32 %9403, %9405
  %9407 = sext i32 %9406 to i64
  %9408 = getelementptr inbounds double, ptr %9402, i64 %9407
  %9409 = load double, ptr %9408, align 8, !tbaa !11
  %9410 = call double @llvm.fmuladd.f64(double 0xBC880AA84CE72F89, double %9409, double %9401)
  %9411 = load ptr, ptr %7, align 8, !tbaa !9
  %9412 = load i32, ptr %12, align 4, !tbaa !5
  %9413 = load i32, ptr %8, align 4, !tbaa !5
  %9414 = mul nsw i32 55, %9413
  %9415 = add nsw i32 %9412, %9414
  %9416 = sext i32 %9415 to i64
  %9417 = getelementptr inbounds double, ptr %9411, i64 %9416
  %9418 = load double, ptr %9417, align 8, !tbaa !11
  %9419 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %9418, double %9410)
  %9420 = load ptr, ptr %7, align 8, !tbaa !9
  %9421 = load i32, ptr %12, align 4, !tbaa !5
  %9422 = load i32, ptr %8, align 4, !tbaa !5
  %9423 = mul nsw i32 56, %9422
  %9424 = add nsw i32 %9421, %9423
  %9425 = sext i32 %9424 to i64
  %9426 = getelementptr inbounds double, ptr %9420, i64 %9425
  %9427 = load double, ptr %9426, align 8, !tbaa !11
  %9428 = call double @llvm.fmuladd.f64(double 0xBCAF4A1B09BBF0AE, double %9427, double %9419)
  %9429 = load ptr, ptr %7, align 8, !tbaa !9
  %9430 = load i32, ptr %12, align 4, !tbaa !5
  %9431 = load i32, ptr %8, align 4, !tbaa !5
  %9432 = mul nsw i32 57, %9431
  %9433 = add nsw i32 %9430, %9432
  %9434 = sext i32 %9433 to i64
  %9435 = getelementptr inbounds double, ptr %9429, i64 %9434
  %9436 = load double, ptr %9435, align 8, !tbaa !11
  %9437 = call double @llvm.fmuladd.f64(double 0x3CADB2CFE686FE7D, double %9436, double %9428)
  %9438 = load ptr, ptr %7, align 8, !tbaa !9
  %9439 = load i32, ptr %12, align 4, !tbaa !5
  %9440 = load i32, ptr %8, align 4, !tbaa !5
  %9441 = mul nsw i32 58, %9440
  %9442 = add nsw i32 %9439, %9441
  %9443 = sext i32 %9442 to i64
  %9444 = getelementptr inbounds double, ptr %9438, i64 %9443
  %9445 = load double, ptr %9444, align 8, !tbaa !11
  %9446 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %9445, double %9437)
  %9447 = load ptr, ptr %7, align 8, !tbaa !9
  %9448 = load i32, ptr %12, align 4, !tbaa !5
  %9449 = load i32, ptr %8, align 4, !tbaa !5
  %9450 = mul nsw i32 59, %9449
  %9451 = add nsw i32 %9448, %9450
  %9452 = sext i32 %9451 to i64
  %9453 = getelementptr inbounds double, ptr %9447, i64 %9452
  %9454 = load double, ptr %9453, align 8, !tbaa !11
  %9455 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %9454, double %9446)
  %9456 = load ptr, ptr %7, align 8, !tbaa !9
  %9457 = load i32, ptr %12, align 4, !tbaa !5
  %9458 = load i32, ptr %8, align 4, !tbaa !5
  %9459 = mul nsw i32 60, %9458
  %9460 = add nsw i32 %9457, %9459
  %9461 = sext i32 %9460 to i64
  %9462 = getelementptr inbounds double, ptr %9456, i64 %9461
  %9463 = load double, ptr %9462, align 8, !tbaa !11
  %9464 = call double @llvm.fmuladd.f64(double 0x3C9152F9467969C8, double %9463, double %9455)
  %9465 = load ptr, ptr %7, align 8, !tbaa !9
  %9466 = load i32, ptr %12, align 4, !tbaa !5
  %9467 = load i32, ptr %8, align 4, !tbaa !5
  %9468 = mul nsw i32 61, %9467
  %9469 = add nsw i32 %9466, %9468
  %9470 = sext i32 %9469 to i64
  %9471 = getelementptr inbounds double, ptr %9465, i64 %9470
  %9472 = load double, ptr %9471, align 8, !tbaa !11
  %9473 = call double @llvm.fmuladd.f64(double 0xBCADB2CFE686FE7D, double %9472, double %9464)
  %9474 = load ptr, ptr %7, align 8, !tbaa !9
  %9475 = load i32, ptr %12, align 4, !tbaa !5
  %9476 = load i32, ptr %8, align 4, !tbaa !5
  %9477 = mul nsw i32 62, %9476
  %9478 = add nsw i32 %9475, %9477
  %9479 = sext i32 %9478 to i64
  %9480 = getelementptr inbounds double, ptr %9474, i64 %9479
  %9481 = load double, ptr %9480, align 8, !tbaa !11
  %9482 = call double @llvm.fmuladd.f64(double 0xBCA26280B3476095, double %9481, double %9473)
  %9483 = load ptr, ptr %7, align 8, !tbaa !9
  %9484 = load i32, ptr %12, align 4, !tbaa !5
  %9485 = load i32, ptr %8, align 4, !tbaa !5
  %9486 = mul nsw i32 63, %9485
  %9487 = add nsw i32 %9484, %9486
  %9488 = sext i32 %9487 to i64
  %9489 = getelementptr inbounds double, ptr %9483, i64 %9488
  %9490 = load double, ptr %9489, align 8, !tbaa !11
  %9491 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %9490, double %9482)
  %9492 = load ptr, ptr %7, align 8, !tbaa !9
  %9493 = load i32, ptr %12, align 4, !tbaa !5
  %9494 = load i32, ptr %8, align 4, !tbaa !5
  %9495 = mul nsw i32 64, %9494
  %9496 = add nsw i32 %9493, %9495
  %9497 = sext i32 %9496 to i64
  %9498 = getelementptr inbounds double, ptr %9492, i64 %9497
  %9499 = load double, ptr %9498, align 8, !tbaa !11
  %9500 = call double @llvm.fmuladd.f64(double 0x400E488CB8C1EA66, double %9499, double %9491)
  %9501 = load ptr, ptr %7, align 8, !tbaa !9
  %9502 = load i32, ptr %12, align 4, !tbaa !5
  %9503 = load i32, ptr %8, align 4, !tbaa !5
  %9504 = mul nsw i32 65, %9503
  %9505 = add nsw i32 %9502, %9504
  %9506 = sext i32 %9505 to i64
  %9507 = getelementptr inbounds double, ptr %9501, i64 %9506
  %9508 = load double, ptr %9507, align 8, !tbaa !11
  %9509 = call double @llvm.fmuladd.f64(double 0x3FD4A299D1E9700C, double %9508, double %9500)
  %9510 = load ptr, ptr %7, align 8, !tbaa !9
  %9511 = load i32, ptr %12, align 4, !tbaa !5
  %9512 = load i32, ptr %8, align 4, !tbaa !5
  %9513 = mul nsw i32 66, %9512
  %9514 = add nsw i32 %9511, %9513
  %9515 = sext i32 %9514 to i64
  %9516 = getelementptr inbounds double, ptr %9510, i64 %9515
  %9517 = load double, ptr %9516, align 8, !tbaa !11
  %9518 = call double @llvm.fmuladd.f64(double 0xBFC5EA083165C4F9, double %9517, double %9509)
  %9519 = load ptr, ptr %7, align 8, !tbaa !9
  %9520 = load i32, ptr %12, align 4, !tbaa !5
  %9521 = load i32, ptr %8, align 4, !tbaa !5
  %9522 = mul nsw i32 67, %9521
  %9523 = add nsw i32 %9520, %9522
  %9524 = sext i32 %9523 to i64
  %9525 = getelementptr inbounds double, ptr %9519, i64 %9524
  %9526 = load double, ptr %9525, align 8, !tbaa !11
  %9527 = call double @llvm.fmuladd.f64(double 0x3FA462D8D66D7F94, double %9526, double %9518)
  store double %9527, ptr %11, align 8, !tbaa !11
  %9528 = load double, ptr %11, align 8, !tbaa !11
  %9529 = load ptr, ptr %9, align 8, !tbaa !9
  %9530 = load i32, ptr %12, align 4, !tbaa !5
  %9531 = load i32, ptr %10, align 4, !tbaa !5
  %9532 = mul nsw i32 32, %9531
  %9533 = add nsw i32 %9530, %9532
  %9534 = sext i32 %9533 to i64
  %9535 = getelementptr inbounds double, ptr %9529, i64 %9534
  %9536 = load double, ptr %9535, align 8, !tbaa !11
  %9537 = fadd double %9536, %9528
  store double %9537, ptr %9535, align 8, !tbaa !11
  %9538 = load ptr, ptr %7, align 8, !tbaa !9
  %9539 = load i32, ptr %12, align 4, !tbaa !5
  %9540 = load i32, ptr %8, align 4, !tbaa !5
  %9541 = mul nsw i32 36, %9540
  %9542 = add nsw i32 %9539, %9541
  %9543 = sext i32 %9542 to i64
  %9544 = getelementptr inbounds double, ptr %9538, i64 %9543
  %9545 = load double, ptr %9544, align 8, !tbaa !11
  %9546 = load ptr, ptr %7, align 8, !tbaa !9
  %9547 = load i32, ptr %12, align 4, !tbaa !5
  %9548 = load i32, ptr %8, align 4, !tbaa !5
  %9549 = mul nsw i32 37, %9548
  %9550 = add nsw i32 %9547, %9549
  %9551 = sext i32 %9550 to i64
  %9552 = getelementptr inbounds double, ptr %9546, i64 %9551
  %9553 = load double, ptr %9552, align 8, !tbaa !11
  %9554 = fmul double 0xBCA5400000000000, %9553
  %9555 = call double @llvm.fmuladd.f64(double 0xBCC2000000000000, double %9545, double %9554)
  %9556 = load ptr, ptr %7, align 8, !tbaa !9
  %9557 = load i32, ptr %12, align 4, !tbaa !5
  %9558 = load i32, ptr %8, align 4, !tbaa !5
  %9559 = mul nsw i32 38, %9558
  %9560 = add nsw i32 %9557, %9559
  %9561 = sext i32 %9560 to i64
  %9562 = getelementptr inbounds double, ptr %9556, i64 %9561
  %9563 = load double, ptr %9562, align 8, !tbaa !11
  %9564 = call double @llvm.fmuladd.f64(double 0x3CAA800000000002, double %9563, double %9555)
  %9565 = load ptr, ptr %7, align 8, !tbaa !9
  %9566 = load i32, ptr %12, align 4, !tbaa !5
  %9567 = load i32, ptr %8, align 4, !tbaa !5
  %9568 = mul nsw i32 39, %9567
  %9569 = add nsw i32 %9566, %9568
  %9570 = sext i32 %9569 to i64
  %9571 = getelementptr inbounds double, ptr %9565, i64 %9570
  %9572 = load double, ptr %9571, align 8, !tbaa !11
  %9573 = call double @llvm.fmuladd.f64(double 0x3CA9000000000000, double %9572, double %9564)
  %9574 = load ptr, ptr %7, align 8, !tbaa !9
  %9575 = load i32, ptr %12, align 4, !tbaa !5
  %9576 = load i32, ptr %8, align 4, !tbaa !5
  %9577 = mul nsw i32 40, %9576
  %9578 = add nsw i32 %9575, %9577
  %9579 = sext i32 %9578 to i64
  %9580 = getelementptr inbounds double, ptr %9574, i64 %9579
  %9581 = load double, ptr %9580, align 8, !tbaa !11
  %9582 = call double @llvm.fmuladd.f64(double 0x3CA7400000000002, double %9581, double %9573)
  %9583 = load ptr, ptr %7, align 8, !tbaa !9
  %9584 = load i32, ptr %12, align 4, !tbaa !5
  %9585 = load i32, ptr %8, align 4, !tbaa !5
  %9586 = mul nsw i32 41, %9585
  %9587 = add nsw i32 %9584, %9586
  %9588 = sext i32 %9587 to i64
  %9589 = getelementptr inbounds double, ptr %9583, i64 %9588
  %9590 = load double, ptr %9589, align 8, !tbaa !11
  %9591 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %9590, double %9582)
  %9592 = load ptr, ptr %7, align 8, !tbaa !9
  %9593 = load i32, ptr %12, align 4, !tbaa !5
  %9594 = load i32, ptr %8, align 4, !tbaa !5
  %9595 = mul nsw i32 42, %9594
  %9596 = add nsw i32 %9593, %9595
  %9597 = sext i32 %9596 to i64
  %9598 = getelementptr inbounds double, ptr %9592, i64 %9597
  %9599 = load double, ptr %9598, align 8, !tbaa !11
  %9600 = call double @llvm.fmuladd.f64(double 0x3CB7000000000000, double %9599, double %9591)
  %9601 = load ptr, ptr %7, align 8, !tbaa !9
  %9602 = load i32, ptr %12, align 4, !tbaa !5
  %9603 = load i32, ptr %8, align 4, !tbaa !5
  %9604 = mul nsw i32 43, %9603
  %9605 = add nsw i32 %9602, %9604
  %9606 = sext i32 %9605 to i64
  %9607 = getelementptr inbounds double, ptr %9601, i64 %9606
  %9608 = load double, ptr %9607, align 8, !tbaa !11
  %9609 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %9608, double %9600)
  %9610 = load ptr, ptr %7, align 8, !tbaa !9
  %9611 = load i32, ptr %12, align 4, !tbaa !5
  %9612 = load i32, ptr %8, align 4, !tbaa !5
  %9613 = mul nsw i32 44, %9612
  %9614 = add nsw i32 %9611, %9613
  %9615 = sext i32 %9614 to i64
  %9616 = getelementptr inbounds double, ptr %9610, i64 %9615
  %9617 = load double, ptr %9616, align 8, !tbaa !11
  %9618 = call double @llvm.fmuladd.f64(double 0x3C91800000000000, double %9617, double %9609)
  %9619 = load ptr, ptr %7, align 8, !tbaa !9
  %9620 = load i32, ptr %12, align 4, !tbaa !5
  %9621 = load i32, ptr %8, align 4, !tbaa !5
  %9622 = mul nsw i32 45, %9621
  %9623 = add nsw i32 %9620, %9622
  %9624 = sext i32 %9623 to i64
  %9625 = getelementptr inbounds double, ptr %9619, i64 %9624
  %9626 = load double, ptr %9625, align 8, !tbaa !11
  %9627 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %9626, double %9618)
  %9628 = load ptr, ptr %7, align 8, !tbaa !9
  %9629 = load i32, ptr %12, align 4, !tbaa !5
  %9630 = load i32, ptr %8, align 4, !tbaa !5
  %9631 = mul nsw i32 46, %9630
  %9632 = add nsw i32 %9629, %9631
  %9633 = sext i32 %9632 to i64
  %9634 = getelementptr inbounds double, ptr %9628, i64 %9633
  %9635 = load double, ptr %9634, align 8, !tbaa !11
  %9636 = call double @llvm.fmuladd.f64(double 0x3CB9000000000000, double %9635, double %9627)
  %9637 = load ptr, ptr %7, align 8, !tbaa !9
  %9638 = load i32, ptr %12, align 4, !tbaa !5
  %9639 = load i32, ptr %8, align 4, !tbaa !5
  %9640 = mul nsw i32 47, %9639
  %9641 = add nsw i32 %9638, %9640
  %9642 = sext i32 %9641 to i64
  %9643 = getelementptr inbounds double, ptr %9637, i64 %9642
  %9644 = load double, ptr %9643, align 8, !tbaa !11
  %9645 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %9644, double %9636)
  %9646 = load ptr, ptr %7, align 8, !tbaa !9
  %9647 = load i32, ptr %12, align 4, !tbaa !5
  %9648 = load i32, ptr %8, align 4, !tbaa !5
  %9649 = mul nsw i32 48, %9648
  %9650 = add nsw i32 %9647, %9649
  %9651 = sext i32 %9650 to i64
  %9652 = getelementptr inbounds double, ptr %9646, i64 %9651
  %9653 = load double, ptr %9652, align 8, !tbaa !11
  %9654 = call double @llvm.fmuladd.f64(double 0xC01569E165D79412, double %9653, double %9645)
  %9655 = load ptr, ptr %7, align 8, !tbaa !9
  %9656 = load i32, ptr %12, align 4, !tbaa !5
  %9657 = load i32, ptr %8, align 4, !tbaa !5
  %9658 = mul nsw i32 49, %9657
  %9659 = add nsw i32 %9656, %9658
  %9660 = sext i32 %9659 to i64
  %9661 = getelementptr inbounds double, ptr %9655, i64 %9660
  %9662 = load double, ptr %9661, align 8, !tbaa !11
  %9663 = call double @llvm.fmuladd.f64(double 0xBFDD2EB9CCB3BDE4, double %9662, double %9654)
  %9664 = load ptr, ptr %7, align 8, !tbaa !9
  %9665 = load i32, ptr %12, align 4, !tbaa !5
  %9666 = load i32, ptr %8, align 4, !tbaa !5
  %9667 = mul nsw i32 50, %9666
  %9668 = add nsw i32 %9665, %9667
  %9669 = sext i32 %9668 to i64
  %9670 = getelementptr inbounds double, ptr %9664, i64 %9669
  %9671 = load double, ptr %9670, align 8, !tbaa !11
  %9672 = call double @llvm.fmuladd.f64(double 0x3FCEFDC8894D0822, double %9671, double %9663)
  %9673 = load ptr, ptr %7, align 8, !tbaa !9
  %9674 = load i32, ptr %12, align 4, !tbaa !5
  %9675 = load i32, ptr %8, align 4, !tbaa !5
  %9676 = mul nsw i32 51, %9675
  %9677 = add nsw i32 %9674, %9676
  %9678 = sext i32 %9677 to i64
  %9679 = getelementptr inbounds double, ptr %9673, i64 %9678
  %9680 = load double, ptr %9679, align 8, !tbaa !11
  %9681 = call double @llvm.fmuladd.f64(double 0xBFACD49071EC5F0E, double %9680, double %9672)
  %9682 = load ptr, ptr %7, align 8, !tbaa !9
  %9683 = load i32, ptr %12, align 4, !tbaa !5
  %9684 = load i32, ptr %8, align 4, !tbaa !5
  %9685 = mul nsw i32 52, %9684
  %9686 = add nsw i32 %9683, %9685
  %9687 = sext i32 %9686 to i64
  %9688 = getelementptr inbounds double, ptr %9682, i64 %9687
  %9689 = load double, ptr %9688, align 8, !tbaa !11
  %9690 = call double @llvm.fmuladd.f64(double 0xBC9F1CD9CCEEF236, double %9689, double %9681)
  %9691 = load ptr, ptr %7, align 8, !tbaa !9
  %9692 = load i32, ptr %12, align 4, !tbaa !5
  %9693 = load i32, ptr %8, align 4, !tbaa !5
  %9694 = mul nsw i32 53, %9693
  %9695 = add nsw i32 %9692, %9694
  %9696 = sext i32 %9695 to i64
  %9697 = getelementptr inbounds double, ptr %9691, i64 %9696
  %9698 = load double, ptr %9697, align 8, !tbaa !11
  %9699 = call double @llvm.fmuladd.f64(double 0xBCA016309CDE7482, double %9698, double %9690)
  %9700 = load ptr, ptr %7, align 8, !tbaa !9
  %9701 = load i32, ptr %12, align 4, !tbaa !5
  %9702 = load i32, ptr %8, align 4, !tbaa !5
  %9703 = mul nsw i32 54, %9702
  %9704 = add nsw i32 %9701, %9703
  %9705 = sext i32 %9704 to i64
  %9706 = getelementptr inbounds double, ptr %9700, i64 %9705
  %9707 = load double, ptr %9706, align 8, !tbaa !11
  %9708 = call double @llvm.fmuladd.f64(double 0x3C98BFAD401B2967, double %9707, double %9699)
  %9709 = load ptr, ptr %7, align 8, !tbaa !9
  %9710 = load i32, ptr %12, align 4, !tbaa !5
  %9711 = load i32, ptr %8, align 4, !tbaa !5
  %9712 = mul nsw i32 55, %9711
  %9713 = add nsw i32 %9710, %9712
  %9714 = sext i32 %9713 to i64
  %9715 = getelementptr inbounds double, ptr %9709, i64 %9714
  %9716 = load double, ptr %9715, align 8, !tbaa !11
  %9717 = call double @llvm.fmuladd.f64(double 0xBC93CC8A99AF5452, double %9716, double %9708)
  %9718 = load ptr, ptr %7, align 8, !tbaa !9
  %9719 = load i32, ptr %12, align 4, !tbaa !5
  %9720 = load i32, ptr %8, align 4, !tbaa !5
  %9721 = mul nsw i32 56, %9720
  %9722 = add nsw i32 %9719, %9721
  %9723 = sext i32 %9722 to i64
  %9724 = getelementptr inbounds double, ptr %9718, i64 %9723
  %9725 = load double, ptr %9724, align 8, !tbaa !11
  %9726 = call double @llvm.fmuladd.f64(double 0xBCB0B494F1ABEF27, double %9725, double %9717)
  %9727 = load ptr, ptr %7, align 8, !tbaa !9
  %9728 = load i32, ptr %12, align 4, !tbaa !5
  %9729 = load i32, ptr %8, align 4, !tbaa !5
  %9730 = mul nsw i32 57, %9729
  %9731 = add nsw i32 %9728, %9730
  %9732 = sext i32 %9731 to i64
  %9733 = getelementptr inbounds double, ptr %9727, i64 %9732
  %9734 = load double, ptr %9733, align 8, !tbaa !11
  %9735 = call double @llvm.fmuladd.f64(double 0xBCA536948017480F, double %9734, double %9726)
  %9736 = load ptr, ptr %7, align 8, !tbaa !9
  %9737 = load i32, ptr %12, align 4, !tbaa !5
  %9738 = load i32, ptr %8, align 4, !tbaa !5
  %9739 = mul nsw i32 58, %9738
  %9740 = add nsw i32 %9737, %9739
  %9741 = sext i32 %9740 to i64
  %9742 = getelementptr inbounds double, ptr %9736, i64 %9741
  %9743 = load double, ptr %9742, align 8, !tbaa !11
  %9744 = call double @llvm.fmuladd.f64(double 0x3CADB2CFE686FE7D, double %9743, double %9735)
  %9745 = load ptr, ptr %7, align 8, !tbaa !9
  %9746 = load i32, ptr %12, align 4, !tbaa !5
  %9747 = load i32, ptr %8, align 4, !tbaa !5
  %9748 = mul nsw i32 59, %9747
  %9749 = add nsw i32 %9746, %9748
  %9750 = sext i32 %9749 to i64
  %9751 = getelementptr inbounds double, ptr %9745, i64 %9750
  %9752 = load double, ptr %9751, align 8, !tbaa !11
  %9753 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %9752, double %9744)
  %9754 = load ptr, ptr %7, align 8, !tbaa !9
  %9755 = load i32, ptr %12, align 4, !tbaa !5
  %9756 = load i32, ptr %8, align 4, !tbaa !5
  %9757 = mul nsw i32 60, %9756
  %9758 = add nsw i32 %9755, %9757
  %9759 = sext i32 %9758 to i64
  %9760 = getelementptr inbounds double, ptr %9754, i64 %9759
  %9761 = load double, ptr %9760, align 8, !tbaa !11
  %9762 = call double @llvm.fmuladd.f64(double 0x3C959116F9B144FE, double %9761, double %9753)
  %9763 = load ptr, ptr %7, align 8, !tbaa !9
  %9764 = load i32, ptr %12, align 4, !tbaa !5
  %9765 = load i32, ptr %8, align 4, !tbaa !5
  %9766 = mul nsw i32 61, %9765
  %9767 = add nsw i32 %9764, %9766
  %9768 = sext i32 %9767 to i64
  %9769 = getelementptr inbounds double, ptr %9763, i64 %9768
  %9770 = load double, ptr %9769, align 8, !tbaa !11
  %9771 = call double @llvm.fmuladd.f64(double 0xBCA80AA84CE72F89, double %9770, double %9762)
  %9772 = load ptr, ptr %7, align 8, !tbaa !9
  %9773 = load i32, ptr %12, align 4, !tbaa !5
  %9774 = load i32, ptr %8, align 4, !tbaa !5
  %9775 = mul nsw i32 62, %9774
  %9776 = add nsw i32 %9773, %9775
  %9777 = sext i32 %9776 to i64
  %9778 = getelementptr inbounds double, ptr %9772, i64 %9777
  %9779 = load double, ptr %9778, align 8, !tbaa !11
  %9780 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %9779, double %9771)
  %9781 = load ptr, ptr %7, align 8, !tbaa !9
  %9782 = load i32, ptr %12, align 4, !tbaa !5
  %9783 = load i32, ptr %8, align 4, !tbaa !5
  %9784 = mul nsw i32 63, %9783
  %9785 = add nsw i32 %9782, %9784
  %9786 = sext i32 %9785 to i64
  %9787 = getelementptr inbounds double, ptr %9781, i64 %9786
  %9788 = load double, ptr %9787, align 8, !tbaa !11
  %9789 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %9788, double %9780)
  %9790 = load ptr, ptr %7, align 8, !tbaa !9
  %9791 = load i32, ptr %12, align 4, !tbaa !5
  %9792 = load i32, ptr %8, align 4, !tbaa !5
  %9793 = mul nsw i32 64, %9792
  %9794 = add nsw i32 %9791, %9793
  %9795 = sext i32 %9794 to i64
  %9796 = getelementptr inbounds double, ptr %9790, i64 %9795
  %9797 = load double, ptr %9796, align 8, !tbaa !11
  %9798 = call double @llvm.fmuladd.f64(double 0xBFD039FE04F7163A, double %9797, double %9789)
  %9799 = load ptr, ptr %7, align 8, !tbaa !9
  %9800 = load i32, ptr %12, align 4, !tbaa !5
  %9801 = load i32, ptr %8, align 4, !tbaa !5
  %9802 = mul nsw i32 65, %9801
  %9803 = add nsw i32 %9800, %9802
  %9804 = sext i32 %9803 to i64
  %9805 = getelementptr inbounds double, ptr %9799, i64 %9804
  %9806 = load double, ptr %9805, align 8, !tbaa !11
  %9807 = call double @llvm.fmuladd.f64(double 0xBFE30958FBF81242, double %9806, double %9798)
  %9808 = load ptr, ptr %7, align 8, !tbaa !9
  %9809 = load i32, ptr %12, align 4, !tbaa !5
  %9810 = load i32, ptr %8, align 4, !tbaa !5
  %9811 = mul nsw i32 66, %9810
  %9812 = add nsw i32 %9809, %9811
  %9813 = sext i32 %9812 to i64
  %9814 = getelementptr inbounds double, ptr %9808, i64 %9813
  %9815 = load double, ptr %9814, align 8, !tbaa !11
  %9816 = call double @llvm.fmuladd.f64(double 0xBFE30958FBF81231, double %9815, double %9807)
  %9817 = load ptr, ptr %7, align 8, !tbaa !9
  %9818 = load i32, ptr %12, align 4, !tbaa !5
  %9819 = load i32, ptr %8, align 4, !tbaa !5
  %9820 = mul nsw i32 67, %9819
  %9821 = add nsw i32 %9818, %9820
  %9822 = sext i32 %9821 to i64
  %9823 = getelementptr inbounds double, ptr %9817, i64 %9822
  %9824 = load double, ptr %9823, align 8, !tbaa !11
  %9825 = call double @llvm.fmuladd.f64(double 0xBFD039FE04F71632, double %9824, double %9816)
  store double %9825, ptr %11, align 8, !tbaa !11
  %9826 = load double, ptr %11, align 8, !tbaa !11
  %9827 = load ptr, ptr %9, align 8, !tbaa !9
  %9828 = load i32, ptr %12, align 4, !tbaa !5
  %9829 = load i32, ptr %10, align 4, !tbaa !5
  %9830 = mul nsw i32 33, %9829
  %9831 = add nsw i32 %9828, %9830
  %9832 = sext i32 %9831 to i64
  %9833 = getelementptr inbounds double, ptr %9827, i64 %9832
  %9834 = load double, ptr %9833, align 8, !tbaa !11
  %9835 = fadd double %9834, %9826
  store double %9835, ptr %9833, align 8, !tbaa !11
  %9836 = load ptr, ptr %7, align 8, !tbaa !9
  %9837 = load i32, ptr %12, align 4, !tbaa !5
  %9838 = load i32, ptr %8, align 4, !tbaa !5
  %9839 = mul nsw i32 36, %9838
  %9840 = add nsw i32 %9837, %9839
  %9841 = sext i32 %9840 to i64
  %9842 = getelementptr inbounds double, ptr %9836, i64 %9841
  %9843 = load double, ptr %9842, align 8, !tbaa !11
  %9844 = load ptr, ptr %7, align 8, !tbaa !9
  %9845 = load i32, ptr %12, align 4, !tbaa !5
  %9846 = load i32, ptr %8, align 4, !tbaa !5
  %9847 = mul nsw i32 37, %9846
  %9848 = add nsw i32 %9845, %9847
  %9849 = sext i32 %9848 to i64
  %9850 = getelementptr inbounds double, ptr %9844, i64 %9849
  %9851 = load double, ptr %9850, align 8, !tbaa !11
  %9852 = fmul double 0xBC99000000000000, %9851
  %9853 = call double @llvm.fmuladd.f64(double 0x3C98400000000000, double %9843, double %9852)
  %9854 = load ptr, ptr %7, align 8, !tbaa !9
  %9855 = load i32, ptr %12, align 4, !tbaa !5
  %9856 = load i32, ptr %8, align 4, !tbaa !5
  %9857 = mul nsw i32 38, %9856
  %9858 = add nsw i32 %9855, %9857
  %9859 = sext i32 %9858 to i64
  %9860 = getelementptr inbounds double, ptr %9854, i64 %9859
  %9861 = load double, ptr %9860, align 8, !tbaa !11
  %9862 = call double @llvm.fmuladd.f64(double 0xBCAE000000000002, double %9861, double %9853)
  %9863 = load ptr, ptr %7, align 8, !tbaa !9
  %9864 = load i32, ptr %12, align 4, !tbaa !5
  %9865 = load i32, ptr %8, align 4, !tbaa !5
  %9866 = mul nsw i32 39, %9865
  %9867 = add nsw i32 %9864, %9866
  %9868 = sext i32 %9867 to i64
  %9869 = getelementptr inbounds double, ptr %9863, i64 %9868
  %9870 = load double, ptr %9869, align 8, !tbaa !11
  %9871 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %9870, double %9862)
  %9872 = load ptr, ptr %7, align 8, !tbaa !9
  %9873 = load i32, ptr %12, align 4, !tbaa !5
  %9874 = load i32, ptr %8, align 4, !tbaa !5
  %9875 = mul nsw i32 40, %9874
  %9876 = add nsw i32 %9873, %9875
  %9877 = sext i32 %9876 to i64
  %9878 = getelementptr inbounds double, ptr %9872, i64 %9877
  %9879 = load double, ptr %9878, align 8, !tbaa !11
  %9880 = call double @llvm.fmuladd.f64(double 0x3C91800000000000, double %9879, double %9871)
  %9881 = load ptr, ptr %7, align 8, !tbaa !9
  %9882 = load i32, ptr %12, align 4, !tbaa !5
  %9883 = load i32, ptr %8, align 4, !tbaa !5
  %9884 = mul nsw i32 41, %9883
  %9885 = add nsw i32 %9882, %9884
  %9886 = sext i32 %9885 to i64
  %9887 = getelementptr inbounds double, ptr %9881, i64 %9886
  %9888 = load double, ptr %9887, align 8, !tbaa !11
  %9889 = call double @llvm.fmuladd.f64(double 0x3CA7000000000002, double %9888, double %9880)
  %9890 = load ptr, ptr %7, align 8, !tbaa !9
  %9891 = load i32, ptr %12, align 4, !tbaa !5
  %9892 = load i32, ptr %8, align 4, !tbaa !5
  %9893 = mul nsw i32 42, %9892
  %9894 = add nsw i32 %9891, %9893
  %9895 = sext i32 %9894 to i64
  %9896 = getelementptr inbounds double, ptr %9890, i64 %9895
  %9897 = load double, ptr %9896, align 8, !tbaa !11
  %9898 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %9897, double %9889)
  %9899 = load ptr, ptr %7, align 8, !tbaa !9
  %9900 = load i32, ptr %12, align 4, !tbaa !5
  %9901 = load i32, ptr %8, align 4, !tbaa !5
  %9902 = mul nsw i32 43, %9901
  %9903 = add nsw i32 %9900, %9902
  %9904 = sext i32 %9903 to i64
  %9905 = getelementptr inbounds double, ptr %9899, i64 %9904
  %9906 = load double, ptr %9905, align 8, !tbaa !11
  %9907 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %9906, double %9898)
  %9908 = load ptr, ptr %7, align 8, !tbaa !9
  %9909 = load i32, ptr %12, align 4, !tbaa !5
  %9910 = load i32, ptr %8, align 4, !tbaa !5
  %9911 = mul nsw i32 44, %9910
  %9912 = add nsw i32 %9909, %9911
  %9913 = sext i32 %9912 to i64
  %9914 = getelementptr inbounds double, ptr %9908, i64 %9913
  %9915 = load double, ptr %9914, align 8, !tbaa !11
  %9916 = call double @llvm.fmuladd.f64(double 0xBC99800000000000, double %9915, double %9907)
  %9917 = load ptr, ptr %7, align 8, !tbaa !9
  %9918 = load i32, ptr %12, align 4, !tbaa !5
  %9919 = load i32, ptr %8, align 4, !tbaa !5
  %9920 = mul nsw i32 45, %9919
  %9921 = add nsw i32 %9918, %9920
  %9922 = sext i32 %9921 to i64
  %9923 = getelementptr inbounds double, ptr %9917, i64 %9922
  %9924 = load double, ptr %9923, align 8, !tbaa !11
  %9925 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %9924, double %9916)
  %9926 = load ptr, ptr %7, align 8, !tbaa !9
  %9927 = load i32, ptr %12, align 4, !tbaa !5
  %9928 = load i32, ptr %8, align 4, !tbaa !5
  %9929 = mul nsw i32 46, %9928
  %9930 = add nsw i32 %9927, %9929
  %9931 = sext i32 %9930 to i64
  %9932 = getelementptr inbounds double, ptr %9926, i64 %9931
  %9933 = load double, ptr %9932, align 8, !tbaa !11
  %9934 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %9933, double %9925)
  %9935 = load ptr, ptr %7, align 8, !tbaa !9
  %9936 = load i32, ptr %12, align 4, !tbaa !5
  %9937 = load i32, ptr %8, align 4, !tbaa !5
  %9938 = mul nsw i32 48, %9937
  %9939 = add nsw i32 %9936, %9938
  %9940 = sext i32 %9939 to i64
  %9941 = getelementptr inbounds double, ptr %9935, i64 %9940
  %9942 = load double, ptr %9941, align 8, !tbaa !11
  %9943 = call double @llvm.fmuladd.f64(double 0x3F980EB0AE1D48E6, double %9942, double %9934)
  %9944 = load ptr, ptr %7, align 8, !tbaa !9
  %9945 = load i32, ptr %12, align 4, !tbaa !5
  %9946 = load i32, ptr %8, align 4, !tbaa !5
  %9947 = mul nsw i32 49, %9946
  %9948 = add nsw i32 %9945, %9947
  %9949 = sext i32 %9948 to i64
  %9950 = getelementptr inbounds double, ptr %9944, i64 %9949
  %9951 = load double, ptr %9950, align 8, !tbaa !11
  %9952 = call double @llvm.fmuladd.f64(double 0xBFD4C0B9406BCBDE, double %9951, double %9943)
  %9953 = load ptr, ptr %7, align 8, !tbaa !9
  %9954 = load i32, ptr %12, align 4, !tbaa !5
  %9955 = load i32, ptr %8, align 4, !tbaa !5
  %9956 = mul nsw i32 50, %9955
  %9957 = add nsw i32 %9954, %9956
  %9958 = sext i32 %9957 to i64
  %9959 = getelementptr inbounds double, ptr %9953, i64 %9958
  %9960 = load double, ptr %9959, align 8, !tbaa !11
  %9961 = call double @llvm.fmuladd.f64(double 0xBFEBF462FB348EF6, double %9960, double %9952)
  %9962 = load ptr, ptr %7, align 8, !tbaa !9
  %9963 = load i32, ptr %12, align 4, !tbaa !5
  %9964 = load i32, ptr %8, align 4, !tbaa !5
  %9965 = mul nsw i32 51, %9964
  %9966 = add nsw i32 %9963, %9965
  %9967 = sext i32 %9966 to i64
  %9968 = getelementptr inbounds double, ptr %9962, i64 %9967
  %9969 = load double, ptr %9968, align 8, !tbaa !11
  %9970 = call double @llvm.fmuladd.f64(double 0xBFE002F9665DF3D7, double %9969, double %9961)
  %9971 = load ptr, ptr %7, align 8, !tbaa !9
  %9972 = load i32, ptr %12, align 4, !tbaa !5
  %9973 = load i32, ptr %8, align 4, !tbaa !5
  %9974 = mul nsw i32 52, %9973
  %9975 = add nsw i32 %9972, %9974
  %9976 = sext i32 %9975 to i64
  %9977 = getelementptr inbounds double, ptr %9971, i64 %9976
  %9978 = load double, ptr %9977, align 8, !tbaa !11
  %9979 = call double @llvm.fmuladd.f64(double 0x3C8BEE4386850DD0, double %9978, double %9970)
  %9980 = load ptr, ptr %7, align 8, !tbaa !9
  %9981 = load i32, ptr %12, align 4, !tbaa !5
  %9982 = load i32, ptr %8, align 4, !tbaa !5
  %9983 = mul nsw i32 53, %9982
  %9984 = add nsw i32 %9981, %9983
  %9985 = sext i32 %9984 to i64
  %9986 = getelementptr inbounds double, ptr %9980, i64 %9985
  %9987 = load double, ptr %9986, align 8, !tbaa !11
  %9988 = call double @llvm.fmuladd.f64(double 0x3CC196DB21ACE77C, double %9987, double %9979)
  %9989 = load ptr, ptr %7, align 8, !tbaa !9
  %9990 = load i32, ptr %12, align 4, !tbaa !5
  %9991 = load i32, ptr %8, align 4, !tbaa !5
  %9992 = mul nsw i32 54, %9991
  %9993 = add nsw i32 %9990, %9992
  %9994 = sext i32 %9993 to i64
  %9995 = getelementptr inbounds double, ptr %9989, i64 %9994
  %9996 = load double, ptr %9995, align 8, !tbaa !11
  %9997 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %9996, double %9988)
  %9998 = load ptr, ptr %7, align 8, !tbaa !9
  %9999 = load i32, ptr %12, align 4, !tbaa !5
  %10000 = load i32, ptr %8, align 4, !tbaa !5
  %10001 = mul nsw i32 55, %10000
  %10002 = add nsw i32 %9999, %10001
  %10003 = sext i32 %10002 to i64
  %10004 = getelementptr inbounds double, ptr %9998, i64 %10003
  %10005 = load double, ptr %10004, align 8, !tbaa !11
  %10006 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %10005, double %9997)
  %10007 = load ptr, ptr %7, align 8, !tbaa !9
  %10008 = load i32, ptr %12, align 4, !tbaa !5
  %10009 = load i32, ptr %8, align 4, !tbaa !5
  %10010 = mul nsw i32 56, %10009
  %10011 = add nsw i32 %10008, %10010
  %10012 = sext i32 %10011 to i64
  %10013 = getelementptr inbounds double, ptr %10007, i64 %10012
  %10014 = load double, ptr %10013, align 8, !tbaa !11
  %10015 = call double @llvm.fmuladd.f64(double 0x3C6974B2334F2344, double %10014, double %10006)
  %10016 = load ptr, ptr %7, align 8, !tbaa !9
  %10017 = load i32, ptr %12, align 4, !tbaa !5
  %10018 = load i32, ptr %8, align 4, !tbaa !5
  %10019 = mul nsw i32 57, %10018
  %10020 = add nsw i32 %10017, %10019
  %10021 = sext i32 %10020 to i64
  %10022 = getelementptr inbounds double, ptr %10016, i64 %10021
  %10023 = load double, ptr %10022, align 8, !tbaa !11
  %10024 = call double @llvm.fmuladd.f64(double 0xBCA5EB99734B41EE, double %10023, double %10015)
  %10025 = load ptr, ptr %7, align 8, !tbaa !9
  %10026 = load i32, ptr %12, align 4, !tbaa !5
  %10027 = load i32, ptr %8, align 4, !tbaa !5
  %10028 = mul nsw i32 58, %10027
  %10029 = add nsw i32 %10026, %10028
  %10030 = sext i32 %10029 to i64
  %10031 = getelementptr inbounds double, ptr %10025, i64 %10030
  %10032 = load double, ptr %10031, align 8, !tbaa !11
  %10033 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %10032, double %10024)
  %10034 = load ptr, ptr %7, align 8, !tbaa !9
  %10035 = load i32, ptr %12, align 4, !tbaa !5
  %10036 = load i32, ptr %8, align 4, !tbaa !5
  %10037 = mul nsw i32 59, %10036
  %10038 = add nsw i32 %10035, %10037
  %10039 = sext i32 %10038 to i64
  %10040 = getelementptr inbounds double, ptr %10034, i64 %10039
  %10041 = load double, ptr %10040, align 8, !tbaa !11
  %10042 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %10041, double %10033)
  %10043 = load ptr, ptr %7, align 8, !tbaa !9
  %10044 = load i32, ptr %12, align 4, !tbaa !5
  %10045 = load i32, ptr %8, align 4, !tbaa !5
  %10046 = mul nsw i32 60, %10045
  %10047 = add nsw i32 %10044, %10046
  %10048 = sext i32 %10047 to i64
  %10049 = getelementptr inbounds double, ptr %10043, i64 %10048
  %10050 = load double, ptr %10049, align 8, !tbaa !11
  %10051 = call double @llvm.fmuladd.f64(double 0xBC8CFDCAF353049C, double %10050, double %10042)
  %10052 = load ptr, ptr %7, align 8, !tbaa !9
  %10053 = load i32, ptr %12, align 4, !tbaa !5
  %10054 = load i32, ptr %8, align 4, !tbaa !5
  %10055 = mul nsw i32 61, %10054
  %10056 = add nsw i32 %10053, %10055
  %10057 = sext i32 %10056 to i64
  %10058 = getelementptr inbounds double, ptr %10052, i64 %10057
  %10059 = load double, ptr %10058, align 8, !tbaa !11
  %10060 = call double @llvm.fmuladd.f64(double 0x3CB6461BECE53EDD, double %10059, double %10051)
  %10061 = load ptr, ptr %7, align 8, !tbaa !9
  %10062 = load i32, ptr %12, align 4, !tbaa !5
  %10063 = load i32, ptr %8, align 4, !tbaa !5
  %10064 = mul nsw i32 62, %10063
  %10065 = add nsw i32 %10062, %10064
  %10066 = sext i32 %10065 to i64
  %10067 = getelementptr inbounds double, ptr %10061, i64 %10066
  %10068 = load double, ptr %10067, align 8, !tbaa !11
  %10069 = call double @llvm.fmuladd.f64(double 0x3CA3CC8A99AF5452, double %10068, double %10060)
  %10070 = load ptr, ptr %7, align 8, !tbaa !9
  %10071 = load i32, ptr %12, align 4, !tbaa !5
  %10072 = load i32, ptr %8, align 4, !tbaa !5
  %10073 = mul nsw i32 63, %10072
  %10074 = add nsw i32 %10071, %10073
  %10075 = sext i32 %10074 to i64
  %10076 = getelementptr inbounds double, ptr %10070, i64 %10075
  %10077 = load double, ptr %10076, align 8, !tbaa !11
  %10078 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %10077, double %10069)
  %10079 = load ptr, ptr %7, align 8, !tbaa !9
  %10080 = load i32, ptr %12, align 4, !tbaa !5
  %10081 = load i32, ptr %8, align 4, !tbaa !5
  %10082 = mul nsw i32 64, %10081
  %10083 = add nsw i32 %10080, %10082
  %10084 = sext i32 %10083 to i64
  %10085 = getelementptr inbounds double, ptr %10079, i64 %10084
  %10086 = load double, ptr %10085, align 8, !tbaa !11
  %10087 = call double @llvm.fmuladd.f64(double 0x3FD08C54FF101A12, double %10086, double %10078)
  %10088 = load ptr, ptr %7, align 8, !tbaa !9
  %10089 = load i32, ptr %12, align 4, !tbaa !5
  %10090 = load i32, ptr %8, align 4, !tbaa !5
  %10091 = mul nsw i32 65, %10090
  %10092 = add nsw i32 %10089, %10091
  %10093 = sext i32 %10092 to i64
  %10094 = getelementptr inbounds double, ptr %10088, i64 %10093
  %10095 = load double, ptr %10094, align 8, !tbaa !11
  %10096 = call double @llvm.fmuladd.f64(double 0x4007001BD846D0B0, double %10095, double %10087)
  %10097 = load ptr, ptr %7, align 8, !tbaa !9
  %10098 = load i32, ptr %12, align 4, !tbaa !5
  %10099 = load i32, ptr %8, align 4, !tbaa !5
  %10100 = mul nsw i32 66, %10099
  %10101 = add nsw i32 %10098, %10100
  %10102 = sext i32 %10101 to i64
  %10103 = getelementptr inbounds double, ptr %10097, i64 %10102
  %10104 = load double, ptr %10103, align 8, !tbaa !11
  %10105 = call double @llvm.fmuladd.f64(double 0x3FD0C7817D9C3131, double %10104, double %10096)
  %10106 = load ptr, ptr %7, align 8, !tbaa !9
  %10107 = load i32, ptr %12, align 4, !tbaa !5
  %10108 = load i32, ptr %8, align 4, !tbaa !5
  %10109 = mul nsw i32 67, %10108
  %10110 = add nsw i32 %10107, %10109
  %10111 = sext i32 %10110 to i64
  %10112 = getelementptr inbounds double, ptr %10106, i64 %10111
  %10113 = load double, ptr %10112, align 8, !tbaa !11
  %10114 = call double @llvm.fmuladd.f64(double 0xBFB8DF388696F54B, double %10113, double %10105)
  store double %10114, ptr %11, align 8, !tbaa !11
  %10115 = load double, ptr %11, align 8, !tbaa !11
  %10116 = load ptr, ptr %9, align 8, !tbaa !9
  %10117 = load i32, ptr %12, align 4, !tbaa !5
  %10118 = load i32, ptr %10, align 4, !tbaa !5
  %10119 = mul nsw i32 34, %10118
  %10120 = add nsw i32 %10117, %10119
  %10121 = sext i32 %10120 to i64
  %10122 = getelementptr inbounds double, ptr %10116, i64 %10121
  %10123 = load double, ptr %10122, align 8, !tbaa !11
  %10124 = fadd double %10123, %10115
  store double %10124, ptr %10122, align 8, !tbaa !11
  %10125 = load ptr, ptr %7, align 8, !tbaa !9
  %10126 = load i32, ptr %12, align 4, !tbaa !5
  %10127 = load i32, ptr %8, align 4, !tbaa !5
  %10128 = mul nsw i32 36, %10127
  %10129 = add nsw i32 %10126, %10128
  %10130 = sext i32 %10129 to i64
  %10131 = getelementptr inbounds double, ptr %10125, i64 %10130
  %10132 = load double, ptr %10131, align 8, !tbaa !11
  %10133 = load ptr, ptr %7, align 8, !tbaa !9
  %10134 = load i32, ptr %12, align 4, !tbaa !5
  %10135 = load i32, ptr %8, align 4, !tbaa !5
  %10136 = mul nsw i32 37, %10135
  %10137 = add nsw i32 %10134, %10136
  %10138 = sext i32 %10137 to i64
  %10139 = getelementptr inbounds double, ptr %10133, i64 %10138
  %10140 = load double, ptr %10139, align 8, !tbaa !11
  %10141 = fmul double 0xBCC0600000000000, %10140
  %10142 = call double @llvm.fmuladd.f64(double 0xBC93C00000000000, double %10132, double %10141)
  %10143 = load ptr, ptr %7, align 8, !tbaa !9
  %10144 = load i32, ptr %12, align 4, !tbaa !5
  %10145 = load i32, ptr %8, align 4, !tbaa !5
  %10146 = mul nsw i32 38, %10145
  %10147 = add nsw i32 %10144, %10146
  %10148 = sext i32 %10147 to i64
  %10149 = getelementptr inbounds double, ptr %10143, i64 %10148
  %10150 = load double, ptr %10149, align 8, !tbaa !11
  %10151 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %10150, double %10142)
  %10152 = load ptr, ptr %7, align 8, !tbaa !9
  %10153 = load i32, ptr %12, align 4, !tbaa !5
  %10154 = load i32, ptr %8, align 4, !tbaa !5
  %10155 = mul nsw i32 39, %10154
  %10156 = add nsw i32 %10153, %10155
  %10157 = sext i32 %10156 to i64
  %10158 = getelementptr inbounds double, ptr %10152, i64 %10157
  %10159 = load double, ptr %10158, align 8, !tbaa !11
  %10160 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %10159, double %10151)
  %10161 = load ptr, ptr %7, align 8, !tbaa !9
  %10162 = load i32, ptr %12, align 4, !tbaa !5
  %10163 = load i32, ptr %8, align 4, !tbaa !5
  %10164 = mul nsw i32 40, %10163
  %10165 = add nsw i32 %10162, %10164
  %10166 = sext i32 %10165 to i64
  %10167 = getelementptr inbounds double, ptr %10161, i64 %10166
  %10168 = load double, ptr %10167, align 8, !tbaa !11
  %10169 = call double @llvm.fmuladd.f64(double 0x3C9F7FFFFFFFFFFC, double %10168, double %10160)
  %10170 = load ptr, ptr %7, align 8, !tbaa !9
  %10171 = load i32, ptr %12, align 4, !tbaa !5
  %10172 = load i32, ptr %8, align 4, !tbaa !5
  %10173 = mul nsw i32 41, %10172
  %10174 = add nsw i32 %10171, %10173
  %10175 = sext i32 %10174 to i64
  %10176 = getelementptr inbounds double, ptr %10170, i64 %10175
  %10177 = load double, ptr %10176, align 8, !tbaa !11
  %10178 = call double @llvm.fmuladd.f64(double 0x3CA7000000000002, double %10177, double %10169)
  %10179 = load ptr, ptr %7, align 8, !tbaa !9
  %10180 = load i32, ptr %12, align 4, !tbaa !5
  %10181 = load i32, ptr %8, align 4, !tbaa !5
  %10182 = mul nsw i32 42, %10181
  %10183 = add nsw i32 %10180, %10182
  %10184 = sext i32 %10183 to i64
  %10185 = getelementptr inbounds double, ptr %10179, i64 %10184
  %10186 = load double, ptr %10185, align 8, !tbaa !11
  %10187 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %10186, double %10178)
  %10188 = load ptr, ptr %7, align 8, !tbaa !9
  %10189 = load i32, ptr %12, align 4, !tbaa !5
  %10190 = load i32, ptr %8, align 4, !tbaa !5
  %10191 = mul nsw i32 44, %10190
  %10192 = add nsw i32 %10189, %10191
  %10193 = sext i32 %10192 to i64
  %10194 = getelementptr inbounds double, ptr %10188, i64 %10193
  %10195 = load double, ptr %10194, align 8, !tbaa !11
  %10196 = call double @llvm.fmuladd.f64(double 0x3CA8400000000000, double %10195, double %10187)
  %10197 = load ptr, ptr %7, align 8, !tbaa !9
  %10198 = load i32, ptr %12, align 4, !tbaa !5
  %10199 = load i32, ptr %8, align 4, !tbaa !5
  %10200 = mul nsw i32 45, %10199
  %10201 = add nsw i32 %10198, %10200
  %10202 = sext i32 %10201 to i64
  %10203 = getelementptr inbounds double, ptr %10197, i64 %10202
  %10204 = load double, ptr %10203, align 8, !tbaa !11
  %10205 = call double @llvm.fmuladd.f64(double 0xBCC5C00000000000, double %10204, double %10196)
  %10206 = load ptr, ptr %7, align 8, !tbaa !9
  %10207 = load i32, ptr %12, align 4, !tbaa !5
  %10208 = load i32, ptr %8, align 4, !tbaa !5
  %10209 = mul nsw i32 46, %10208
  %10210 = add nsw i32 %10207, %10209
  %10211 = sext i32 %10210 to i64
  %10212 = getelementptr inbounds double, ptr %10206, i64 %10211
  %10213 = load double, ptr %10212, align 8, !tbaa !11
  %10214 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %10213, double %10205)
  %10215 = load ptr, ptr %7, align 8, !tbaa !9
  %10216 = load i32, ptr %12, align 4, !tbaa !5
  %10217 = load i32, ptr %8, align 4, !tbaa !5
  %10218 = mul nsw i32 47, %10217
  %10219 = add nsw i32 %10216, %10218
  %10220 = sext i32 %10219 to i64
  %10221 = getelementptr inbounds double, ptr %10215, i64 %10220
  %10222 = load double, ptr %10221, align 8, !tbaa !11
  %10223 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %10222, double %10214)
  %10224 = load ptr, ptr %7, align 8, !tbaa !9
  %10225 = load i32, ptr %12, align 4, !tbaa !5
  %10226 = load i32, ptr %8, align 4, !tbaa !5
  %10227 = mul nsw i32 48, %10226
  %10228 = add nsw i32 %10225, %10227
  %10229 = sext i32 %10228 to i64
  %10230 = getelementptr inbounds double, ptr %10224, i64 %10229
  %10231 = load double, ptr %10230, align 8, !tbaa !11
  %10232 = call double @llvm.fmuladd.f64(double 0xBFD7671404765127, double %10231, double %10223)
  %10233 = load ptr, ptr %7, align 8, !tbaa !9
  %10234 = load i32, ptr %12, align 4, !tbaa !5
  %10235 = load i32, ptr %8, align 4, !tbaa !5
  %10236 = mul nsw i32 49, %10235
  %10237 = add nsw i32 %10234, %10236
  %10238 = sext i32 %10237 to i64
  %10239 = getelementptr inbounds double, ptr %10233, i64 %10238
  %10240 = load double, ptr %10239, align 8, !tbaa !11
  %10241 = call double @llvm.fmuladd.f64(double 0xC01043858A1F5994, double %10240, double %10232)
  %10242 = load ptr, ptr %7, align 8, !tbaa !9
  %10243 = load i32, ptr %12, align 4, !tbaa !5
  %10244 = load i32, ptr %8, align 4, !tbaa !5
  %10245 = mul nsw i32 50, %10244
  %10246 = add nsw i32 %10243, %10245
  %10247 = sext i32 %10246 to i64
  %10248 = getelementptr inbounds double, ptr %10242, i64 %10247
  %10249 = load double, ptr %10248, align 8, !tbaa !11
  %10250 = call double @llvm.fmuladd.f64(double 0xBFD7BAC3393ADDB7, double %10249, double %10241)
  %10251 = load ptr, ptr %7, align 8, !tbaa !9
  %10252 = load i32, ptr %12, align 4, !tbaa !5
  %10253 = load i32, ptr %8, align 4, !tbaa !5
  %10254 = mul nsw i32 51, %10253
  %10255 = add nsw i32 %10252, %10254
  %10256 = sext i32 %10255 to i64
  %10257 = getelementptr inbounds double, ptr %10251, i64 %10256
  %10258 = load double, ptr %10257, align 8, !tbaa !11
  %10259 = call double @llvm.fmuladd.f64(double 0x3FC1964E14FA3C89, double %10258, double %10250)
  %10260 = load ptr, ptr %7, align 8, !tbaa !9
  %10261 = load i32, ptr %12, align 4, !tbaa !5
  %10262 = load i32, ptr %8, align 4, !tbaa !5
  %10263 = mul nsw i32 52, %10262
  %10264 = add nsw i32 %10261, %10263
  %10265 = sext i32 %10264 to i64
  %10266 = getelementptr inbounds double, ptr %10260, i64 %10265
  %10267 = load double, ptr %10266, align 8, !tbaa !11
  %10268 = call double @llvm.fmuladd.f64(double 0x3C53CC8A99AF5452, double %10267, double %10259)
  %10269 = load ptr, ptr %7, align 8, !tbaa !9
  %10270 = load i32, ptr %12, align 4, !tbaa !5
  %10271 = load i32, ptr %8, align 4, !tbaa !5
  %10272 = mul nsw i32 53, %10271
  %10273 = add nsw i32 %10270, %10272
  %10274 = sext i32 %10273 to i64
  %10275 = getelementptr inbounds double, ptr %10269, i64 %10274
  %10276 = load double, ptr %10275, align 8, !tbaa !11
  %10277 = call double @llvm.fmuladd.f64(double 0x3C8536948017480E, double %10276, double %10268)
  %10278 = load ptr, ptr %7, align 8, !tbaa !9
  %10279 = load i32, ptr %12, align 4, !tbaa !5
  %10280 = load i32, ptr %8, align 4, !tbaa !5
  %10281 = mul nsw i32 54, %10280
  %10282 = add nsw i32 %10279, %10281
  %10283 = sext i32 %10282 to i64
  %10284 = getelementptr inbounds double, ptr %10278, i64 %10283
  %10285 = load double, ptr %10284, align 8, !tbaa !11
  %10286 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %10285, double %10277)
  %10287 = load ptr, ptr %7, align 8, !tbaa !9
  %10288 = load i32, ptr %12, align 4, !tbaa !5
  %10289 = load i32, ptr %8, align 4, !tbaa !5
  %10290 = mul nsw i32 55, %10289
  %10291 = add nsw i32 %10288, %10290
  %10292 = sext i32 %10291 to i64
  %10293 = getelementptr inbounds double, ptr %10287, i64 %10292
  %10294 = load double, ptr %10293, align 8, !tbaa !11
  %10295 = call double @llvm.fmuladd.f64(double 0x3C93CC8A99AF5452, double %10294, double %10286)
  %10296 = load ptr, ptr %7, align 8, !tbaa !9
  %10297 = load i32, ptr %12, align 4, !tbaa !5
  %10298 = load i32, ptr %8, align 4, !tbaa !5
  %10299 = mul nsw i32 56, %10298
  %10300 = add nsw i32 %10297, %10299
  %10301 = sext i32 %10300 to i64
  %10302 = getelementptr inbounds double, ptr %10296, i64 %10301
  %10303 = load double, ptr %10302, align 8, !tbaa !11
  %10304 = call double @llvm.fmuladd.f64(double 0xBC94DC12067D4B20, double %10303, double %10295)
  %10305 = load ptr, ptr %7, align 8, !tbaa !9
  %10306 = load i32, ptr %12, align 4, !tbaa !5
  %10307 = load i32, ptr %8, align 4, !tbaa !5
  %10308 = mul nsw i32 57, %10307
  %10309 = add nsw i32 %10306, %10308
  %10310 = sext i32 %10309 to i64
  %10311 = getelementptr inbounds double, ptr %10305, i64 %10310
  %10312 = load double, ptr %10311, align 8, !tbaa !11
  %10313 = call double @llvm.fmuladd.f64(double 0xBC9536948017480F, double %10312, double %10304)
  %10314 = load ptr, ptr %7, align 8, !tbaa !9
  %10315 = load i32, ptr %12, align 4, !tbaa !5
  %10316 = load i32, ptr %8, align 4, !tbaa !5
  %10317 = mul nsw i32 58, %10316
  %10318 = add nsw i32 %10315, %10317
  %10319 = sext i32 %10318 to i64
  %10320 = getelementptr inbounds double, ptr %10314, i64 %10319
  %10321 = load double, ptr %10320, align 8, !tbaa !11
  %10322 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %10321, double %10313)
  %10323 = load ptr, ptr %7, align 8, !tbaa !9
  %10324 = load i32, ptr %12, align 4, !tbaa !5
  %10325 = load i32, ptr %8, align 4, !tbaa !5
  %10326 = mul nsw i32 59, %10325
  %10327 = add nsw i32 %10324, %10326
  %10328 = sext i32 %10327 to i64
  %10329 = getelementptr inbounds double, ptr %10323, i64 %10328
  %10330 = load double, ptr %10329, align 8, !tbaa !11
  %10331 = call double @llvm.fmuladd.f64(double 0x3C96A09E667F3BCC, double %10330, double %10322)
  %10332 = load ptr, ptr %7, align 8, !tbaa !9
  %10333 = load i32, ptr %12, align 4, !tbaa !5
  %10334 = load i32, ptr %8, align 4, !tbaa !5
  %10335 = mul nsw i32 60, %10334
  %10336 = add nsw i32 %10333, %10335
  %10337 = sext i32 %10336 to i64
  %10338 = getelementptr inbounds double, ptr %10332, i64 %10337
  %10339 = load double, ptr %10338, align 8, !tbaa !11
  %10340 = call double @llvm.fmuladd.f64(double 0x3C6F1CD9CCEEF238, double %10339, double %10331)
  %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 61, %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 = call double @llvm.fmuladd.f64(double 0x3C9ADEBC19B71702, double %10348, double %10340)
  %10350 = load ptr, ptr %7, align 8, !tbaa !9
  %10351 = load i32, ptr %12, align 4, !tbaa !5
  %10352 = load i32, ptr %8, align 4, !tbaa !5
  %10353 = mul nsw i32 62, %10352
  %10354 = add nsw i32 %10351, %10353
  %10355 = sext i32 %10354 to i64
  %10356 = getelementptr inbounds double, ptr %10350, i64 %10355
  %10357 = load double, ptr %10356, align 8, !tbaa !11
  %10358 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %10357, double %10349)
  %10359 = load ptr, ptr %7, align 8, !tbaa !9
  %10360 = load i32, ptr %12, align 4, !tbaa !5
  %10361 = load i32, ptr %8, align 4, !tbaa !5
  %10362 = mul nsw i32 64, %10361
  %10363 = add nsw i32 %10360, %10362
  %10364 = sext i32 %10363 to i64
  %10365 = getelementptr inbounds double, ptr %10359, i64 %10364
  %10366 = load double, ptr %10365, align 8, !tbaa !11
  %10367 = call double @llvm.fmuladd.f64(double 0xBF9102DA00B18A5A, double %10366, double %10358)
  %10368 = load ptr, ptr %7, align 8, !tbaa !9
  %10369 = load i32, ptr %12, align 4, !tbaa !5
  %10370 = load i32, ptr %8, align 4, !tbaa !5
  %10371 = mul nsw i32 65, %10370
  %10372 = add nsw i32 %10369, %10371
  %10373 = sext i32 %10372 to i64
  %10374 = getelementptr inbounds double, ptr %10368, i64 %10373
  %10375 = load double, ptr %10374, align 8, !tbaa !11
  %10376 = call double @llvm.fmuladd.f64(double 0x3FCD5953692F6EA6, double %10375, double %10367)
  %10377 = load ptr, ptr %7, align 8, !tbaa !9
  %10378 = load i32, ptr %12, align 4, !tbaa !5
  %10379 = load i32, ptr %8, align 4, !tbaa !5
  %10380 = mul nsw i32 66, %10379
  %10381 = add nsw i32 %10378, %10380
  %10382 = sext i32 %10381 to i64
  %10383 = getelementptr inbounds double, ptr %10377, i64 %10382
  %10384 = load double, ptr %10383, align 8, !tbaa !11
  %10385 = call double @llvm.fmuladd.f64(double 0x3FE3C4545BCF030B, double %10384, double %10376)
  %10386 = load ptr, ptr %7, align 8, !tbaa !9
  %10387 = load i32, ptr %12, align 4, !tbaa !5
  %10388 = load i32, ptr %8, align 4, !tbaa !5
  %10389 = mul nsw i32 67, %10388
  %10390 = add nsw i32 %10387, %10389
  %10391 = sext i32 %10390 to i64
  %10392 = getelementptr inbounds double, ptr %10386, i64 %10391
  %10393 = load double, ptr %10392, align 8, !tbaa !11
  %10394 = call double @llvm.fmuladd.f64(double 0x3FD6A4D32EB1F70D, double %10393, double %10385)
  store double %10394, ptr %11, align 8, !tbaa !11
  %10395 = load double, ptr %11, align 8, !tbaa !11
  %10396 = load ptr, ptr %9, align 8, !tbaa !9
  %10397 = load i32, ptr %12, align 4, !tbaa !5
  %10398 = load i32, ptr %10, align 4, !tbaa !5
  %10399 = mul nsw i32 35, %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 = fadd double %10403, %10395
  store double %10404, ptr %10402, align 8, !tbaa !11
  %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 36, %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 = load ptr, ptr %7, align 8, !tbaa !9
  %10414 = load i32, ptr %12, align 4, !tbaa !5
  %10415 = load i32, ptr %8, align 4, !tbaa !5
  %10416 = mul nsw i32 37, %10415
  %10417 = add nsw i32 %10414, %10416
  %10418 = sext i32 %10417 to i64
  %10419 = getelementptr inbounds double, ptr %10413, i64 %10418
  %10420 = load double, ptr %10419, align 8, !tbaa !11
  %10421 = fmul double 0x3CA1200000000001, %10420
  %10422 = call double @llvm.fmuladd.f64(double 0x3CAD5FFFFFFFFFFF, double %10412, double %10421)
  %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 38, %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 0xBCA1000000000001, 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 39, %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 0xBC90000000000000, 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 40, %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 0xBCA4000000000001, 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 41, %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 0x3C82000000000000, 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 42, %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 0x3C94000000000000, 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 43, %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 0x3CA2000000000000, 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 44, %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 0x3CA4000000000001, 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 45, %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 0x3C97000000000000, 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 46, %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 0x3C94000000000000, 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 47, %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 0x3C88000000000000, 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 48, %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 0x3FF043C98657E80E, 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 49, %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 0x3FEFAD7976B5DE20, 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 50, %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 0xBFB4C23AD63BEF81, 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 51, %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 0xBFAC37F3CCE9FD3B, 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 52, %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 0x3C86461BECE53EDC, 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 53, %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 0x3CA196DB21ACE77D, 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 54, %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 0x3C9ADEBC19B71702, 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 56, %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 0xBC9C48C6001F0ABF, 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 57, %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 0xBC9FD1DEC022EC15, 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 58, %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 0x3C9C48C6001F0ABF, 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 59, %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 0xBC96A09E667F3BCC, double %10610, double %10602)
  %10612 = load ptr, ptr %7, align 8, !tbaa !9
  %10613 = load i32, ptr %12, align 4, !tbaa !5
  %10614 = load i32, ptr %8, align 4, !tbaa !5
  %10615 = mul nsw i32 60, %10614
  %10616 = add nsw i32 %10613, %10615
  %10617 = sext i32 %10616 to i64
  %10618 = getelementptr inbounds double, ptr %10612, i64 %10617
  %10619 = load double, ptr %10618, align 8, !tbaa !11
  %10620 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %10619, double %10611)
  %10621 = load ptr, ptr %7, align 8, !tbaa !9
  %10622 = load i32, ptr %12, align 4, !tbaa !5
  %10623 = load i32, ptr %8, align 4, !tbaa !5
  %10624 = mul nsw i32 61, %10623
  %10625 = add nsw i32 %10622, %10624
  %10626 = sext i32 %10625 to i64
  %10627 = getelementptr inbounds double, ptr %10621, i64 %10626
  %10628 = load double, ptr %10627, align 8, !tbaa !11
  %10629 = call double @llvm.fmuladd.f64(double 0x3CB344C6E34858EB, double %10628, double %10620)
  %10630 = load ptr, ptr %7, align 8, !tbaa !9
  %10631 = load i32, ptr %12, align 4, !tbaa !5
  %10632 = load i32, ptr %8, align 4, !tbaa !5
  %10633 = mul nsw i32 62, %10632
  %10634 = add nsw i32 %10631, %10633
  %10635 = sext i32 %10634 to i64
  %10636 = getelementptr inbounds double, ptr %10630, i64 %10635
  %10637 = load double, ptr %10636, align 8, !tbaa !11
  %10638 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %10637, double %10629)
  %10639 = load ptr, ptr %7, align 8, !tbaa !9
  %10640 = load i32, ptr %12, align 4, !tbaa !5
  %10641 = load i32, ptr %8, align 4, !tbaa !5
  %10642 = mul nsw i32 63, %10641
  %10643 = add nsw i32 %10640, %10642
  %10644 = sext i32 %10643 to i64
  %10645 = getelementptr inbounds double, ptr %10639, i64 %10644
  %10646 = load double, ptr %10645, align 8, !tbaa !11
  %10647 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %10646, double %10638)
  %10648 = load ptr, ptr %7, align 8, !tbaa !9
  %10649 = load i32, ptr %12, align 4, !tbaa !5
  %10650 = load i32, ptr %8, align 4, !tbaa !5
  %10651 = mul nsw i32 64, %10650
  %10652 = add nsw i32 %10649, %10651
  %10653 = sext i32 %10652 to i64
  %10654 = getelementptr inbounds double, ptr %10648, i64 %10653
  %10655 = load double, ptr %10654, align 8, !tbaa !11
  %10656 = call double @llvm.fmuladd.f64(double 0x3FD6A4D32EB1F718, double %10655, double %10647)
  %10657 = load ptr, ptr %7, align 8, !tbaa !9
  %10658 = load i32, ptr %12, align 4, !tbaa !5
  %10659 = load i32, ptr %8, align 4, !tbaa !5
  %10660 = mul nsw i32 65, %10659
  %10661 = add nsw i32 %10658, %10660
  %10662 = sext i32 %10661 to i64
  %10663 = getelementptr inbounds double, ptr %10657, i64 %10662
  %10664 = load double, ptr %10663, align 8, !tbaa !11
  %10665 = call double @llvm.fmuladd.f64(double 0x3FE3C4545BCF030B, double %10664, double %10656)
  %10666 = load ptr, ptr %7, align 8, !tbaa !9
  %10667 = load i32, ptr %12, align 4, !tbaa !5
  %10668 = load i32, ptr %8, align 4, !tbaa !5
  %10669 = mul nsw i32 66, %10668
  %10670 = add nsw i32 %10667, %10669
  %10671 = sext i32 %10670 to i64
  %10672 = getelementptr inbounds double, ptr %10666, i64 %10671
  %10673 = load double, ptr %10672, align 8, !tbaa !11
  %10674 = call double @llvm.fmuladd.f64(double 0x3FCD5953692F6EA3, double %10673, double %10665)
  %10675 = load ptr, ptr %7, align 8, !tbaa !9
  %10676 = load i32, ptr %12, align 4, !tbaa !5
  %10677 = load i32, ptr %8, align 4, !tbaa !5
  %10678 = mul nsw i32 67, %10677
  %10679 = add nsw i32 %10676, %10678
  %10680 = sext i32 %10679 to i64
  %10681 = getelementptr inbounds double, ptr %10675, i64 %10680
  %10682 = load double, ptr %10681, align 8, !tbaa !11
  %10683 = call double @llvm.fmuladd.f64(double 0xBF9102DA00B18A2C, double %10682, double %10674)
  store double %10683, ptr %11, align 8, !tbaa !11
  %10684 = load double, ptr %11, align 8, !tbaa !11
  %10685 = load ptr, ptr %9, align 8, !tbaa !9
  %10686 = load i32, ptr %12, align 4, !tbaa !5
  %10687 = load i32, ptr %10, align 4, !tbaa !5
  %10688 = mul nsw i32 36, %10687
  %10689 = add nsw i32 %10686, %10688
  %10690 = sext i32 %10689 to i64
  %10691 = getelementptr inbounds double, ptr %10685, i64 %10690
  %10692 = load double, ptr %10691, align 8, !tbaa !11
  %10693 = fadd double %10692, %10684
  store double %10693, ptr %10691, align 8, !tbaa !11
  %10694 = load ptr, ptr %7, align 8, !tbaa !9
  %10695 = load i32, ptr %12, align 4, !tbaa !5
  %10696 = load i32, ptr %8, align 4, !tbaa !5
  %10697 = mul nsw i32 36, %10696
  %10698 = add nsw i32 %10695, %10697
  %10699 = sext i32 %10698 to i64
  %10700 = getelementptr inbounds double, ptr %10694, i64 %10699
  %10701 = load double, ptr %10700, align 8, !tbaa !11
  %10702 = load ptr, ptr %7, align 8, !tbaa !9
  %10703 = load i32, ptr %12, align 4, !tbaa !5
  %10704 = load i32, ptr %8, align 4, !tbaa !5
  %10705 = mul nsw i32 37, %10704
  %10706 = add nsw i32 %10703, %10705
  %10707 = sext i32 %10706 to i64
  %10708 = getelementptr inbounds double, ptr %10702, i64 %10707
  %10709 = load double, ptr %10708, align 8, !tbaa !11
  %10710 = fmul double 0xBC5C000000000000, %10709
  %10711 = call double @llvm.fmuladd.f64(double 0xBCADDFFFFFFFFFFE, double %10701, double %10710)
  %10712 = load ptr, ptr %7, align 8, !tbaa !9
  %10713 = load i32, ptr %12, align 4, !tbaa !5
  %10714 = load i32, ptr %8, align 4, !tbaa !5
  %10715 = mul nsw i32 38, %10714
  %10716 = add nsw i32 %10713, %10715
  %10717 = sext i32 %10716 to i64
  %10718 = getelementptr inbounds double, ptr %10712, i64 %10717
  %10719 = load double, ptr %10718, align 8, !tbaa !11
  %10720 = call double @llvm.fmuladd.f64(double 0xBCA1000000000001, double %10719, double %10711)
  %10721 = load ptr, ptr %7, align 8, !tbaa !9
  %10722 = load i32, ptr %12, align 4, !tbaa !5
  %10723 = load i32, ptr %8, align 4, !tbaa !5
  %10724 = mul nsw i32 40, %10723
  %10725 = add nsw i32 %10722, %10724
  %10726 = sext i32 %10725 to i64
  %10727 = getelementptr inbounds double, ptr %10721, i64 %10726
  %10728 = load double, ptr %10727, align 8, !tbaa !11
  %10729 = call double @llvm.fmuladd.f64(double 0x3C9E7FFFFFFFFFFD, double %10728, double %10720)
  %10730 = load ptr, ptr %7, align 8, !tbaa !9
  %10731 = load i32, ptr %12, align 4, !tbaa !5
  %10732 = load i32, ptr %8, align 4, !tbaa !5
  %10733 = mul nsw i32 41, %10732
  %10734 = add nsw i32 %10731, %10733
  %10735 = sext i32 %10734 to i64
  %10736 = getelementptr inbounds double, ptr %10730, i64 %10735
  %10737 = load double, ptr %10736, align 8, !tbaa !11
  %10738 = call double @llvm.fmuladd.f64(double 0x3CA67FFFFFFFFFFE, double %10737, double %10729)
  %10739 = load ptr, ptr %7, align 8, !tbaa !9
  %10740 = load i32, ptr %12, align 4, !tbaa !5
  %10741 = load i32, ptr %8, align 4, !tbaa !5
  %10742 = mul nsw i32 42, %10741
  %10743 = add nsw i32 %10740, %10742
  %10744 = sext i32 %10743 to i64
  %10745 = getelementptr inbounds double, ptr %10739, i64 %10744
  %10746 = load double, ptr %10745, align 8, !tbaa !11
  %10747 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %10746, double %10738)
  %10748 = load ptr, ptr %7, align 8, !tbaa !9
  %10749 = load i32, ptr %12, align 4, !tbaa !5
  %10750 = load i32, ptr %8, align 4, !tbaa !5
  %10751 = mul nsw i32 43, %10750
  %10752 = add nsw i32 %10749, %10751
  %10753 = sext i32 %10752 to i64
  %10754 = getelementptr inbounds double, ptr %10748, i64 %10753
  %10755 = load double, ptr %10754, align 8, !tbaa !11
  %10756 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %10755, double %10747)
  %10757 = load ptr, ptr %7, align 8, !tbaa !9
  %10758 = load i32, ptr %12, align 4, !tbaa !5
  %10759 = load i32, ptr %8, align 4, !tbaa !5
  %10760 = mul nsw i32 44, %10759
  %10761 = add nsw i32 %10758, %10760
  %10762 = sext i32 %10761 to i64
  %10763 = getelementptr inbounds double, ptr %10757, i64 %10762
  %10764 = load double, ptr %10763, align 8, !tbaa !11
  %10765 = call double @llvm.fmuladd.f64(double 0x3C91800000000000, double %10764, double %10756)
  %10766 = load ptr, ptr %7, align 8, !tbaa !9
  %10767 = load i32, ptr %12, align 4, !tbaa !5
  %10768 = load i32, ptr %8, align 4, !tbaa !5
  %10769 = mul nsw i32 45, %10768
  %10770 = add nsw i32 %10767, %10769
  %10771 = sext i32 %10770 to i64
  %10772 = getelementptr inbounds double, ptr %10766, i64 %10771
  %10773 = load double, ptr %10772, align 8, !tbaa !11
  %10774 = call double @llvm.fmuladd.f64(double 0xBCB3400000000000, double %10773, double %10765)
  %10775 = load ptr, ptr %7, align 8, !tbaa !9
  %10776 = load i32, ptr %12, align 4, !tbaa !5
  %10777 = load i32, ptr %8, align 4, !tbaa !5
  %10778 = mul nsw i32 47, %10777
  %10779 = add nsw i32 %10776, %10778
  %10780 = sext i32 %10779 to i64
  %10781 = getelementptr inbounds double, ptr %10775, i64 %10780
  %10782 = load double, ptr %10781, align 8, !tbaa !11
  %10783 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %10782, double %10774)
  %10784 = load ptr, ptr %7, align 8, !tbaa !9
  %10785 = load i32, ptr %12, align 4, !tbaa !5
  %10786 = load i32, ptr %8, align 4, !tbaa !5
  %10787 = mul nsw i32 48, %10786
  %10788 = add nsw i32 %10785, %10787
  %10789 = sext i32 %10788 to i64
  %10790 = getelementptr inbounds double, ptr %10784, i64 %10789
  %10791 = load double, ptr %10790, align 8, !tbaa !11
  %10792 = call double @llvm.fmuladd.f64(double 0xBFE002F9665DF3E5, double %10791, double %10783)
  %10793 = load ptr, ptr %7, align 8, !tbaa !9
  %10794 = load i32, ptr %12, align 4, !tbaa !5
  %10795 = load i32, ptr %8, align 4, !tbaa !5
  %10796 = mul nsw i32 49, %10795
  %10797 = add nsw i32 %10794, %10796
  %10798 = sext i32 %10797 to i64
  %10799 = getelementptr inbounds double, ptr %10793, i64 %10798
  %10800 = load double, ptr %10799, align 8, !tbaa !11
  %10801 = call double @llvm.fmuladd.f64(double 0xBFEBF462FB348EF2, double %10800, double %10792)
  %10802 = load ptr, ptr %7, align 8, !tbaa !9
  %10803 = load i32, ptr %12, align 4, !tbaa !5
  %10804 = load i32, ptr %8, align 4, !tbaa !5
  %10805 = mul nsw i32 50, %10804
  %10806 = add nsw i32 %10803, %10805
  %10807 = sext i32 %10806 to i64
  %10808 = getelementptr inbounds double, ptr %10802, i64 %10807
  %10809 = load double, ptr %10808, align 8, !tbaa !11
  %10810 = call double @llvm.fmuladd.f64(double 0xBFD4C0B9406BCBCC, double %10809, double %10801)
  %10811 = load ptr, ptr %7, align 8, !tbaa !9
  %10812 = load i32, ptr %12, align 4, !tbaa !5
  %10813 = load i32, ptr %8, align 4, !tbaa !5
  %10814 = mul nsw i32 51, %10813
  %10815 = add nsw i32 %10812, %10814
  %10816 = sext i32 %10815 to i64
  %10817 = getelementptr inbounds double, ptr %10811, i64 %10816
  %10818 = load double, ptr %10817, align 8, !tbaa !11
  %10819 = call double @llvm.fmuladd.f64(double 0x3F980EB0AE1D483F, double %10818, double %10810)
  %10820 = load ptr, ptr %7, align 8, !tbaa !9
  %10821 = load i32, ptr %12, align 4, !tbaa !5
  %10822 = load i32, ptr %8, align 4, !tbaa !5
  %10823 = mul nsw i32 52, %10822
  %10824 = add nsw i32 %10821, %10823
  %10825 = sext i32 %10824 to i64
  %10826 = getelementptr inbounds double, ptr %10820, i64 %10825
  %10827 = load double, ptr %10826, align 8, !tbaa !11
  %10828 = call double @llvm.fmuladd.f64(double 0xBCA13C58A812EA8E, double %10827, double %10819)
  %10829 = load ptr, ptr %7, align 8, !tbaa !9
  %10830 = load i32, ptr %12, align 4, !tbaa !5
  %10831 = load i32, ptr %8, align 4, !tbaa !5
  %10832 = mul nsw i32 53, %10831
  %10833 = add nsw i32 %10830, %10832
  %10834 = sext i32 %10833 to i64
  %10835 = getelementptr inbounds double, ptr %10829, i64 %10834
  %10836 = load double, ptr %10835, align 8, !tbaa !11
  %10837 = call double @llvm.fmuladd.f64(double 0xBCA6023A11B1C128, double %10836, double %10828)
  %10838 = load ptr, ptr %7, align 8, !tbaa !9
  %10839 = load i32, ptr %12, align 4, !tbaa !5
  %10840 = load i32, ptr %8, align 4, !tbaa !5
  %10841 = mul nsw i32 54, %10840
  %10842 = add nsw i32 %10839, %10841
  %10843 = sext i32 %10842 to i64
  %10844 = getelementptr inbounds double, ptr %10838, i64 %10843
  %10845 = load double, ptr %10844, align 8, !tbaa !11
  %10846 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %10845, double %10837)
  %10847 = load ptr, ptr %7, align 8, !tbaa !9
  %10848 = load i32, ptr %12, align 4, !tbaa !5
  %10849 = load i32, ptr %8, align 4, !tbaa !5
  %10850 = mul nsw i32 56, %10849
  %10851 = add nsw i32 %10848, %10850
  %10852 = sext i32 %10851 to i64
  %10853 = getelementptr inbounds double, ptr %10847, i64 %10852
  %10854 = load double, ptr %10853, align 8, !tbaa !11
  %10855 = call double @llvm.fmuladd.f64(double 0x3CA344C6E34858EB, double %10854, double %10846)
  %10856 = load ptr, ptr %7, align 8, !tbaa !9
  %10857 = load i32, ptr %12, align 4, !tbaa !5
  %10858 = load i32, ptr %8, align 4, !tbaa !5
  %10859 = mul nsw i32 57, %10858
  %10860 = add nsw i32 %10857, %10859
  %10861 = sext i32 %10860 to i64
  %10862 = getelementptr inbounds double, ptr %10856, i64 %10861
  %10863 = load double, ptr %10862, align 8, !tbaa !11
  %10864 = call double @llvm.fmuladd.f64(double 0x3C73CC8A99AF5453, double %10863, double %10855)
  %10865 = load ptr, ptr %7, align 8, !tbaa !9
  %10866 = load i32, ptr %12, align 4, !tbaa !5
  %10867 = load i32, ptr %8, align 4, !tbaa !5
  %10868 = mul nsw i32 58, %10867
  %10869 = add nsw i32 %10866, %10868
  %10870 = sext i32 %10869 to i64
  %10871 = getelementptr inbounds double, ptr %10865, i64 %10870
  %10872 = load double, ptr %10871, align 8, !tbaa !11
  %10873 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %10872, double %10864)
  %10874 = load ptr, ptr %7, align 8, !tbaa !9
  %10875 = load i32, ptr %12, align 4, !tbaa !5
  %10876 = load i32, ptr %8, align 4, !tbaa !5
  %10877 = mul nsw i32 59, %10876
  %10878 = add nsw i32 %10875, %10877
  %10879 = sext i32 %10878 to i64
  %10880 = getelementptr inbounds double, ptr %10874, i64 %10879
  %10881 = load double, ptr %10880, align 8, !tbaa !11
  %10882 = call double @llvm.fmuladd.f64(double 0xBCA0F876CCDF6CD8, double %10881, double %10873)
  %10883 = load ptr, ptr %7, align 8, !tbaa !9
  %10884 = load i32, ptr %12, align 4, !tbaa !5
  %10885 = load i32, ptr %8, align 4, !tbaa !5
  %10886 = mul nsw i32 60, %10885
  %10887 = add nsw i32 %10884, %10886
  %10888 = sext i32 %10887 to i64
  %10889 = getelementptr inbounds double, ptr %10883, i64 %10888
  %10890 = load double, ptr %10889, align 8, !tbaa !11
  %10891 = call double @llvm.fmuladd.f64(double 0xBCA344C6E34858EB, double %10890, double %10882)
  %10892 = load ptr, ptr %7, align 8, !tbaa !9
  %10893 = load i32, ptr %12, align 4, !tbaa !5
  %10894 = load i32, ptr %8, align 4, !tbaa !5
  %10895 = mul nsw i32 61, %10894
  %10896 = add nsw i32 %10893, %10895
  %10897 = sext i32 %10896 to i64
  %10898 = getelementptr inbounds double, ptr %10892, i64 %10897
  %10899 = load double, ptr %10898, align 8, !tbaa !11
  %10900 = call double @llvm.fmuladd.f64(double 0x3C91AD7BC01366B7, double %10899, double %10891)
  %10901 = load ptr, ptr %7, align 8, !tbaa !9
  %10902 = load i32, ptr %12, align 4, !tbaa !5
  %10903 = load i32, ptr %8, align 4, !tbaa !5
  %10904 = mul nsw i32 62, %10903
  %10905 = add nsw i32 %10902, %10904
  %10906 = sext i32 %10905 to i64
  %10907 = getelementptr inbounds double, ptr %10901, i64 %10906
  %10908 = load double, ptr %10907, align 8, !tbaa !11
  %10909 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %10908, double %10900)
  %10910 = load ptr, ptr %7, align 8, !tbaa !9
  %10911 = load i32, ptr %12, align 4, !tbaa !5
  %10912 = load i32, ptr %8, align 4, !tbaa !5
  %10913 = mul nsw i32 63, %10912
  %10914 = add nsw i32 %10911, %10913
  %10915 = sext i32 %10914 to i64
  %10916 = getelementptr inbounds double, ptr %10910, i64 %10915
  %10917 = load double, ptr %10916, align 8, !tbaa !11
  %10918 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %10917, double %10909)
  %10919 = load ptr, ptr %7, align 8, !tbaa !9
  %10920 = load i32, ptr %12, align 4, !tbaa !5
  %10921 = load i32, ptr %8, align 4, !tbaa !5
  %10922 = mul nsw i32 64, %10921
  %10923 = add nsw i32 %10920, %10922
  %10924 = sext i32 %10923 to i64
  %10925 = getelementptr inbounds double, ptr %10919, i64 %10924
  %10926 = load double, ptr %10925, align 8, !tbaa !11
  %10927 = call double @llvm.fmuladd.f64(double 0xBFE7007BFD8FD859, double %10926, double %10918)
  %10928 = load ptr, ptr %7, align 8, !tbaa !9
  %10929 = load i32, ptr %12, align 4, !tbaa !5
  %10930 = load i32, ptr %8, align 4, !tbaa !5
  %10931 = mul nsw i32 65, %10930
  %10932 = add nsw i32 %10929, %10931
  %10933 = sext i32 %10932 to i64
  %10934 = getelementptr inbounds double, ptr %10928, i64 %10933
  %10935 = load double, ptr %10934, align 8, !tbaa !11
  %10936 = call double @llvm.fmuladd.f64(double 0xBFE66643AEED3706, double %10935, double %10927)
  %10937 = load ptr, ptr %7, align 8, !tbaa !9
  %10938 = load i32, ptr %12, align 4, !tbaa !5
  %10939 = load i32, ptr %8, align 4, !tbaa !5
  %10940 = mul nsw i32 66, %10939
  %10941 = add nsw i32 %10938, %10940
  %10942 = sext i32 %10941 to i64
  %10943 = getelementptr inbounds double, ptr %10937, i64 %10942
  %10944 = load double, ptr %10943, align 8, !tbaa !11
  %10945 = call double @llvm.fmuladd.f64(double 0x3FAD5B74B5F10E94, double %10944, double %10936)
  %10946 = load ptr, ptr %7, align 8, !tbaa !9
  %10947 = load i32, ptr %12, align 4, !tbaa !5
  %10948 = load i32, ptr %8, align 4, !tbaa !5
  %10949 = mul nsw i32 67, %10948
  %10950 = add nsw i32 %10947, %10949
  %10951 = sext i32 %10950 to i64
  %10952 = getelementptr inbounds double, ptr %10946, i64 %10951
  %10953 = load double, ptr %10952, align 8, !tbaa !11
  %10954 = call double @llvm.fmuladd.f64(double 0x3FA3F41B0E87BFBB, double %10953, double %10945)
  store double %10954, ptr %11, align 8, !tbaa !11
  %10955 = load double, ptr %11, align 8, !tbaa !11
  %10956 = load ptr, ptr %9, align 8, !tbaa !9
  %10957 = load i32, ptr %12, align 4, !tbaa !5
  %10958 = load i32, ptr %10, align 4, !tbaa !5
  %10959 = mul nsw i32 37, %10958
  %10960 = add nsw i32 %10957, %10959
  %10961 = sext i32 %10960 to i64
  %10962 = getelementptr inbounds double, ptr %10956, i64 %10961
  %10963 = load double, ptr %10962, align 8, !tbaa !11
  %10964 = fadd double %10963, %10955
  store double %10964, ptr %10962, align 8, !tbaa !11
  %10965 = load ptr, ptr %7, align 8, !tbaa !9
  %10966 = load i32, ptr %12, align 4, !tbaa !5
  %10967 = load i32, ptr %8, align 4, !tbaa !5
  %10968 = mul nsw i32 36, %10967
  %10969 = add nsw i32 %10966, %10968
  %10970 = sext i32 %10969 to i64
  %10971 = getelementptr inbounds double, ptr %10965, i64 %10970
  %10972 = load double, ptr %10971, align 8, !tbaa !11
  %10973 = load ptr, ptr %7, align 8, !tbaa !9
  %10974 = load i32, ptr %12, align 4, !tbaa !5
  %10975 = load i32, ptr %8, align 4, !tbaa !5
  %10976 = mul nsw i32 37, %10975
  %10977 = add nsw i32 %10974, %10976
  %10978 = sext i32 %10977 to i64
  %10979 = getelementptr inbounds double, ptr %10973, i64 %10978
  %10980 = load double, ptr %10979, align 8, !tbaa !11
  %10981 = fmul double 0xBCA7000000000002, %10980
  %10982 = call double @llvm.fmuladd.f64(double 0x3C58000000000000, double %10972, double %10981)
  %10983 = load ptr, ptr %7, align 8, !tbaa !9
  %10984 = load i32, ptr %12, align 4, !tbaa !5
  %10985 = load i32, ptr %8, align 4, !tbaa !5
  %10986 = mul nsw i32 38, %10985
  %10987 = add nsw i32 %10984, %10986
  %10988 = sext i32 %10987 to i64
  %10989 = getelementptr inbounds double, ptr %10983, i64 %10988
  %10990 = load double, ptr %10989, align 8, !tbaa !11
  %10991 = call double @llvm.fmuladd.f64(double 0xBCC3000000000000, double %10990, double %10982)
  %10992 = load ptr, ptr %7, align 8, !tbaa !9
  %10993 = load i32, ptr %12, align 4, !tbaa !5
  %10994 = load i32, ptr %8, align 4, !tbaa !5
  %10995 = mul nsw i32 39, %10994
  %10996 = add nsw i32 %10993, %10995
  %10997 = sext i32 %10996 to i64
  %10998 = getelementptr inbounds double, ptr %10992, i64 %10997
  %10999 = load double, ptr %10998, align 8, !tbaa !11
  %11000 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %10999, double %10991)
  %11001 = load ptr, ptr %7, align 8, !tbaa !9
  %11002 = load i32, ptr %12, align 4, !tbaa !5
  %11003 = load i32, ptr %8, align 4, !tbaa !5
  %11004 = mul nsw i32 40, %11003
  %11005 = add nsw i32 %11002, %11004
  %11006 = sext i32 %11005 to i64
  %11007 = getelementptr inbounds double, ptr %11001, i64 %11006
  %11008 = load double, ptr %11007, align 8, !tbaa !11
  %11009 = call double @llvm.fmuladd.f64(double 0x3C74000000000000, double %11008, double %11000)
  %11010 = load ptr, ptr %7, align 8, !tbaa !9
  %11011 = load i32, ptr %12, align 4, !tbaa !5
  %11012 = load i32, ptr %8, align 4, !tbaa !5
  %11013 = mul nsw i32 41, %11012
  %11014 = add nsw i32 %11011, %11013
  %11015 = sext i32 %11014 to i64
  %11016 = getelementptr inbounds double, ptr %11010, i64 %11015
  %11017 = load double, ptr %11016, align 8, !tbaa !11
  %11018 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %11017, double %11009)
  %11019 = load ptr, ptr %7, align 8, !tbaa !9
  %11020 = load i32, ptr %12, align 4, !tbaa !5
  %11021 = load i32, ptr %8, align 4, !tbaa !5
  %11022 = mul nsw i32 42, %11021
  %11023 = add nsw i32 %11020, %11022
  %11024 = sext i32 %11023 to i64
  %11025 = getelementptr inbounds double, ptr %11019, i64 %11024
  %11026 = load double, ptr %11025, align 8, !tbaa !11
  %11027 = call double @llvm.fmuladd.f64(double 0xBCC3000000000000, double %11026, double %11018)
  %11028 = load ptr, ptr %7, align 8, !tbaa !9
  %11029 = load i32, ptr %12, align 4, !tbaa !5
  %11030 = load i32, ptr %8, align 4, !tbaa !5
  %11031 = mul nsw i32 43, %11030
  %11032 = add nsw i32 %11029, %11031
  %11033 = sext i32 %11032 to i64
  %11034 = getelementptr inbounds double, ptr %11028, i64 %11033
  %11035 = load double, ptr %11034, align 8, !tbaa !11
  %11036 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %11035, double %11027)
  %11037 = load ptr, ptr %7, align 8, !tbaa !9
  %11038 = load i32, ptr %12, align 4, !tbaa !5
  %11039 = load i32, ptr %8, align 4, !tbaa !5
  %11040 = mul nsw i32 44, %11039
  %11041 = add nsw i32 %11038, %11040
  %11042 = sext i32 %11041 to i64
  %11043 = getelementptr inbounds double, ptr %11037, i64 %11042
  %11044 = load double, ptr %11043, align 8, !tbaa !11
  %11045 = call double @llvm.fmuladd.f64(double 0x3C86000000000001, double %11044, double %11036)
  %11046 = load ptr, ptr %7, align 8, !tbaa !9
  %11047 = load i32, ptr %12, align 4, !tbaa !5
  %11048 = load i32, ptr %8, align 4, !tbaa !5
  %11049 = mul nsw i32 45, %11048
  %11050 = add nsw i32 %11047, %11049
  %11051 = sext i32 %11050 to i64
  %11052 = getelementptr inbounds double, ptr %11046, i64 %11051
  %11053 = load double, ptr %11052, align 8, !tbaa !11
  %11054 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %11053, double %11045)
  %11055 = load ptr, ptr %7, align 8, !tbaa !9
  %11056 = load i32, ptr %12, align 4, !tbaa !5
  %11057 = load i32, ptr %8, align 4, !tbaa !5
  %11058 = mul nsw i32 46, %11057
  %11059 = add nsw i32 %11056, %11058
  %11060 = sext i32 %11059 to i64
  %11061 = getelementptr inbounds double, ptr %11055, i64 %11060
  %11062 = load double, ptr %11061, align 8, !tbaa !11
  %11063 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %11062, double %11054)
  %11064 = load ptr, ptr %7, align 8, !tbaa !9
  %11065 = load i32, ptr %12, align 4, !tbaa !5
  %11066 = load i32, ptr %8, align 4, !tbaa !5
  %11067 = mul nsw i32 47, %11066
  %11068 = add nsw i32 %11065, %11067
  %11069 = sext i32 %11068 to i64
  %11070 = getelementptr inbounds double, ptr %11064, i64 %11069
  %11071 = load double, ptr %11070, align 8, !tbaa !11
  %11072 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %11071, double %11063)
  %11073 = load ptr, ptr %7, align 8, !tbaa !9
  %11074 = load i32, ptr %12, align 4, !tbaa !5
  %11075 = load i32, ptr %8, align 4, !tbaa !5
  %11076 = mul nsw i32 48, %11075
  %11077 = add nsw i32 %11074, %11076
  %11078 = sext i32 %11077 to i64
  %11079 = getelementptr inbounds double, ptr %11073, i64 %11078
  %11080 = load double, ptr %11079, align 8, !tbaa !11
  %11081 = call double @llvm.fmuladd.f64(double 0x3FC1964E14FA3C91, double %11080, double %11072)
  %11082 = load ptr, ptr %7, align 8, !tbaa !9
  %11083 = load i32, ptr %12, align 4, !tbaa !5
  %11084 = load i32, ptr %8, align 4, !tbaa !5
  %11085 = mul nsw i32 49, %11084
  %11086 = add nsw i32 %11083, %11085
  %11087 = sext i32 %11086 to i64
  %11088 = getelementptr inbounds double, ptr %11082, i64 %11087
  %11089 = load double, ptr %11088, align 8, !tbaa !11
  %11090 = call double @llvm.fmuladd.f64(double 0xBFD7BAC3393ADDAB, double %11089, double %11081)
  %11091 = load ptr, ptr %7, align 8, !tbaa !9
  %11092 = load i32, ptr %12, align 4, !tbaa !5
  %11093 = load i32, ptr %8, align 4, !tbaa !5
  %11094 = mul nsw i32 50, %11093
  %11095 = add nsw i32 %11092, %11094
  %11096 = sext i32 %11095 to i64
  %11097 = getelementptr inbounds double, ptr %11091, i64 %11096
  %11098 = load double, ptr %11097, align 8, !tbaa !11
  %11099 = call double @llvm.fmuladd.f64(double 0xC01043858A1F5991, double %11098, double %11090)
  %11100 = load ptr, ptr %7, align 8, !tbaa !9
  %11101 = load i32, ptr %12, align 4, !tbaa !5
  %11102 = load i32, ptr %8, align 4, !tbaa !5
  %11103 = mul nsw i32 51, %11102
  %11104 = add nsw i32 %11101, %11103
  %11105 = sext i32 %11104 to i64
  %11106 = getelementptr inbounds double, ptr %11100, i64 %11105
  %11107 = load double, ptr %11106, align 8, !tbaa !11
  %11108 = call double @llvm.fmuladd.f64(double 0xBFD767140476510C, double %11107, double %11099)
  %11109 = load ptr, ptr %7, align 8, !tbaa !9
  %11110 = load i32, ptr %12, align 4, !tbaa !5
  %11111 = load i32, ptr %8, align 4, !tbaa !5
  %11112 = mul nsw i32 52, %11111
  %11113 = add nsw i32 %11110, %11112
  %11114 = sext i32 %11113 to i64
  %11115 = getelementptr inbounds double, ptr %11109, i64 %11114
  %11116 = load double, ptr %11115, align 8, !tbaa !11
  %11117 = call double @llvm.fmuladd.f64(double 0x3C6F1CD9CCEEF238, double %11116, double %11108)
  %11118 = load ptr, ptr %7, align 8, !tbaa !9
  %11119 = load i32, ptr %12, align 4, !tbaa !5
  %11120 = load i32, ptr %8, align 4, !tbaa !5
  %11121 = mul nsw i32 53, %11120
  %11122 = add nsw i32 %11119, %11121
  %11123 = sext i32 %11122 to i64
  %11124 = getelementptr inbounds double, ptr %11118, i64 %11123
  %11125 = load double, ptr %11124, align 8, !tbaa !11
  %11126 = call double @llvm.fmuladd.f64(double 0x3C8974B2334F2346, double %11125, double %11117)
  %11127 = load ptr, ptr %7, align 8, !tbaa !9
  %11128 = load i32, ptr %12, align 4, !tbaa !5
  %11129 = load i32, ptr %8, align 4, !tbaa !5
  %11130 = mul nsw i32 54, %11129
  %11131 = add nsw i32 %11128, %11130
  %11132 = sext i32 %11131 to i64
  %11133 = getelementptr inbounds double, ptr %11127, i64 %11132
  %11134 = load double, ptr %11133, align 8, !tbaa !11
  %11135 = call double @llvm.fmuladd.f64(double 0xBCAADEBC19B71703, double %11134, double %11126)
  %11136 = load ptr, ptr %7, align 8, !tbaa !9
  %11137 = load i32, ptr %12, align 4, !tbaa !5
  %11138 = load i32, ptr %8, align 4, !tbaa !5
  %11139 = mul nsw i32 55, %11138
  %11140 = add nsw i32 %11137, %11139
  %11141 = sext i32 %11140 to i64
  %11142 = getelementptr inbounds double, ptr %11136, i64 %11141
  %11143 = load double, ptr %11142, align 8, !tbaa !11
  %11144 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %11143, double %11135)
  %11145 = load ptr, ptr %7, align 8, !tbaa !9
  %11146 = load i32, ptr %12, align 4, !tbaa !5
  %11147 = load i32, ptr %8, align 4, !tbaa !5
  %11148 = mul nsw i32 56, %11147
  %11149 = add nsw i32 %11146, %11148
  %11150 = sext i32 %11149 to i64
  %11151 = getelementptr inbounds double, ptr %11145, i64 %11150
  %11152 = load double, ptr %11151, align 8, !tbaa !11
  %11153 = call double @llvm.fmuladd.f64(double 0x3C60F876CCDF6CD9, double %11152, double %11144)
  %11154 = load ptr, ptr %7, align 8, !tbaa !9
  %11155 = load i32, ptr %12, align 4, !tbaa !5
  %11156 = load i32, ptr %8, align 4, !tbaa !5
  %11157 = mul nsw i32 57, %11156
  %11158 = add nsw i32 %11155, %11157
  %11159 = sext i32 %11158 to i64
  %11160 = getelementptr inbounds double, ptr %11154, i64 %11159
  %11161 = load double, ptr %11160, align 8, !tbaa !11
  %11162 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %11161, double %11153)
  %11163 = load ptr, ptr %7, align 8, !tbaa !9
  %11164 = load i32, ptr %12, align 4, !tbaa !5
  %11165 = load i32, ptr %8, align 4, !tbaa !5
  %11166 = mul nsw i32 58, %11165
  %11167 = add nsw i32 %11164, %11166
  %11168 = sext i32 %11167 to i64
  %11169 = getelementptr inbounds double, ptr %11163, i64 %11168
  %11170 = load double, ptr %11169, align 8, !tbaa !11
  %11171 = call double @llvm.fmuladd.f64(double 0xBCA6A09E667F3BCC, double %11170, double %11162)
  %11172 = load ptr, ptr %7, align 8, !tbaa !9
  %11173 = load i32, ptr %12, align 4, !tbaa !5
  %11174 = load i32, ptr %8, align 4, !tbaa !5
  %11175 = mul nsw i32 59, %11174
  %11176 = add nsw i32 %11173, %11175
  %11177 = sext i32 %11176 to i64
  %11178 = getelementptr inbounds double, ptr %11172, i64 %11177
  %11179 = load double, ptr %11178, align 8, !tbaa !11
  %11180 = call double @llvm.fmuladd.f64(double 0xBCA6A09E667F3BCC, double %11179, double %11171)
  %11181 = load ptr, ptr %7, align 8, !tbaa !9
  %11182 = load i32, ptr %12, align 4, !tbaa !5
  %11183 = load i32, ptr %8, align 4, !tbaa !5
  %11184 = mul nsw i32 60, %11183
  %11185 = add nsw i32 %11182, %11184
  %11186 = sext i32 %11185 to i64
  %11187 = getelementptr inbounds double, ptr %11181, i64 %11186
  %11188 = load double, ptr %11187, align 8, !tbaa !11
  %11189 = call double @llvm.fmuladd.f64(double 0x3C826280B3476096, double %11188, double %11180)
  %11190 = load ptr, ptr %7, align 8, !tbaa !9
  %11191 = load i32, ptr %12, align 4, !tbaa !5
  %11192 = load i32, ptr %8, align 4, !tbaa !5
  %11193 = mul nsw i32 61, %11192
  %11194 = add nsw i32 %11191, %11193
  %11195 = sext i32 %11194 to i64
  %11196 = getelementptr inbounds double, ptr %11190, i64 %11195
  %11197 = load double, ptr %11196, align 8, !tbaa !11
  %11198 = call double @llvm.fmuladd.f64(double 0x3C8C48C6001F0AC0, double %11197, double %11189)
  %11199 = load ptr, ptr %7, align 8, !tbaa !9
  %11200 = load i32, ptr %12, align 4, !tbaa !5
  %11201 = load i32, ptr %8, align 4, !tbaa !5
  %11202 = mul nsw i32 63, %11201
  %11203 = add nsw i32 %11200, %11202
  %11204 = sext i32 %11203 to i64
  %11205 = getelementptr inbounds double, ptr %11199, i64 %11204
  %11206 = load double, ptr %11205, align 8, !tbaa !11
  %11207 = call double @llvm.fmuladd.f64(double 0x3C96A09E667F3BCC, double %11206, double %11198)
  %11208 = load ptr, ptr %7, align 8, !tbaa !9
  %11209 = load i32, ptr %12, align 4, !tbaa !5
  %11210 = load i32, ptr %8, align 4, !tbaa !5
  %11211 = mul nsw i32 64, %11210
  %11212 = add nsw i32 %11209, %11211
  %11213 = sext i32 %11212 to i64
  %11214 = getelementptr inbounds double, ptr %11208, i64 %11213
  %11215 = load double, ptr %11214, align 8, !tbaa !11
  %11216 = call double @llvm.fmuladd.f64(double 0x3FA3F41B0E87BFEB, double %11215, double %11207)
  %11217 = load ptr, ptr %7, align 8, !tbaa !9
  %11218 = load i32, ptr %12, align 4, !tbaa !5
  %11219 = load i32, ptr %8, align 4, !tbaa !5
  %11220 = mul nsw i32 65, %11219
  %11221 = add nsw i32 %11218, %11220
  %11222 = sext i32 %11221 to i64
  %11223 = getelementptr inbounds double, ptr %11217, i64 %11222
  %11224 = load double, ptr %11223, align 8, !tbaa !11
  %11225 = call double @llvm.fmuladd.f64(double 0x3FAD5B74B5F10E92, double %11224, double %11216)
  %11226 = load ptr, ptr %7, align 8, !tbaa !9
  %11227 = load i32, ptr %12, align 4, !tbaa !5
  %11228 = load i32, ptr %8, align 4, !tbaa !5
  %11229 = mul nsw i32 66, %11228
  %11230 = add nsw i32 %11227, %11229
  %11231 = sext i32 %11230 to i64
  %11232 = getelementptr inbounds double, ptr %11226, i64 %11231
  %11233 = load double, ptr %11232, align 8, !tbaa !11
  %11234 = call double @llvm.fmuladd.f64(double 0xBFE66643AEED36FA, double %11233, double %11225)
  %11235 = load ptr, ptr %7, align 8, !tbaa !9
  %11236 = load i32, ptr %12, align 4, !tbaa !5
  %11237 = load i32, ptr %8, align 4, !tbaa !5
  %11238 = mul nsw i32 67, %11237
  %11239 = add nsw i32 %11236, %11238
  %11240 = sext i32 %11239 to i64
  %11241 = getelementptr inbounds double, ptr %11235, i64 %11240
  %11242 = load double, ptr %11241, align 8, !tbaa !11
  %11243 = call double @llvm.fmuladd.f64(double 0xBFE7007BFD8FD85B, double %11242, double %11234)
  store double %11243, ptr %11, align 8, !tbaa !11
  %11244 = load double, ptr %11, align 8, !tbaa !11
  %11245 = load ptr, ptr %9, align 8, !tbaa !9
  %11246 = load i32, ptr %12, align 4, !tbaa !5
  %11247 = load i32, ptr %10, align 4, !tbaa !5
  %11248 = mul nsw i32 38, %11247
  %11249 = add nsw i32 %11246, %11248
  %11250 = sext i32 %11249 to i64
  %11251 = getelementptr inbounds double, ptr %11245, i64 %11250
  %11252 = load double, ptr %11251, align 8, !tbaa !11
  %11253 = fadd double %11252, %11244
  store double %11253, ptr %11251, align 8, !tbaa !11
  %11254 = load ptr, ptr %7, align 8, !tbaa !9
  %11255 = load i32, ptr %12, align 4, !tbaa !5
  %11256 = load i32, ptr %8, align 4, !tbaa !5
  %11257 = mul nsw i32 36, %11256
  %11258 = add nsw i32 %11255, %11257
  %11259 = sext i32 %11258 to i64
  %11260 = getelementptr inbounds double, ptr %11254, i64 %11259
  %11261 = load double, ptr %11260, align 8, !tbaa !11
  %11262 = load ptr, ptr %7, align 8, !tbaa !9
  %11263 = load i32, ptr %12, align 4, !tbaa !5
  %11264 = load i32, ptr %8, align 4, !tbaa !5
  %11265 = mul nsw i32 37, %11264
  %11266 = add nsw i32 %11263, %11265
  %11267 = sext i32 %11266 to i64
  %11268 = getelementptr inbounds double, ptr %11262, i64 %11267
  %11269 = load double, ptr %11268, align 8, !tbaa !11
  %11270 = fmul double 0xBC92000000000000, %11269
  %11271 = call double @llvm.fmuladd.f64(double 0xBC76000000000001, double %11261, double %11270)
  %11272 = load ptr, ptr %7, align 8, !tbaa !9
  %11273 = load i32, ptr %12, align 4, !tbaa !5
  %11274 = load i32, ptr %8, align 4, !tbaa !5
  %11275 = mul nsw i32 38, %11274
  %11276 = add nsw i32 %11273, %11275
  %11277 = sext i32 %11276 to i64
  %11278 = getelementptr inbounds double, ptr %11272, i64 %11277
  %11279 = load double, ptr %11278, align 8, !tbaa !11
  %11280 = call double @llvm.fmuladd.f64(double 0x3CB3000000000000, double %11279, double %11271)
  %11281 = load ptr, ptr %7, align 8, !tbaa !9
  %11282 = load i32, ptr %12, align 4, !tbaa !5
  %11283 = load i32, ptr %8, align 4, !tbaa !5
  %11284 = mul nsw i32 39, %11283
  %11285 = add nsw i32 %11282, %11284
  %11286 = sext i32 %11285 to i64
  %11287 = getelementptr inbounds double, ptr %11281, i64 %11286
  %11288 = load double, ptr %11287, align 8, !tbaa !11
  %11289 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %11288, double %11280)
  %11290 = load ptr, ptr %7, align 8, !tbaa !9
  %11291 = load i32, ptr %12, align 4, !tbaa !5
  %11292 = load i32, ptr %8, align 4, !tbaa !5
  %11293 = mul nsw i32 40, %11292
  %11294 = add nsw i32 %11291, %11293
  %11295 = sext i32 %11294 to i64
  %11296 = getelementptr inbounds double, ptr %11290, i64 %11295
  %11297 = load double, ptr %11296, align 8, !tbaa !11
  %11298 = call double @llvm.fmuladd.f64(double 0xBC67FFFFFFFFFFFE, double %11297, double %11289)
  %11299 = load ptr, ptr %7, align 8, !tbaa !9
  %11300 = load i32, ptr %12, align 4, !tbaa !5
  %11301 = load i32, ptr %8, align 4, !tbaa !5
  %11302 = mul nsw i32 41, %11301
  %11303 = add nsw i32 %11300, %11302
  %11304 = sext i32 %11303 to i64
  %11305 = getelementptr inbounds double, ptr %11299, i64 %11304
  %11306 = load double, ptr %11305, align 8, !tbaa !11
  %11307 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %11306, double %11298)
  %11308 = load ptr, ptr %7, align 8, !tbaa !9
  %11309 = load i32, ptr %12, align 4, !tbaa !5
  %11310 = load i32, ptr %8, align 4, !tbaa !5
  %11311 = mul nsw i32 42, %11310
  %11312 = add nsw i32 %11309, %11311
  %11313 = sext i32 %11312 to i64
  %11314 = getelementptr inbounds double, ptr %11308, i64 %11313
  %11315 = load double, ptr %11314, align 8, !tbaa !11
  %11316 = call double @llvm.fmuladd.f64(double 0x3CB0000000000000, double %11315, double %11307)
  %11317 = load ptr, ptr %7, align 8, !tbaa !9
  %11318 = load i32, ptr %12, align 4, !tbaa !5
  %11319 = load i32, ptr %8, align 4, !tbaa !5
  %11320 = mul nsw i32 43, %11319
  %11321 = add nsw i32 %11318, %11320
  %11322 = sext i32 %11321 to i64
  %11323 = getelementptr inbounds double, ptr %11317, i64 %11322
  %11324 = load double, ptr %11323, align 8, !tbaa !11
  %11325 = call double @llvm.fmuladd.f64(double 0x3CB0000000000000, double %11324, double %11316)
  %11326 = load ptr, ptr %7, align 8, !tbaa !9
  %11327 = load i32, ptr %12, align 4, !tbaa !5
  %11328 = load i32, ptr %8, align 4, !tbaa !5
  %11329 = mul nsw i32 44, %11328
  %11330 = add nsw i32 %11327, %11329
  %11331 = sext i32 %11330 to i64
  %11332 = getelementptr inbounds double, ptr %11326, i64 %11331
  %11333 = load double, ptr %11332, align 8, !tbaa !11
  %11334 = call double @llvm.fmuladd.f64(double 0xBC89FFFFFFFFFFFF, double %11333, double %11325)
  %11335 = load ptr, ptr %7, align 8, !tbaa !9
  %11336 = load i32, ptr %12, align 4, !tbaa !5
  %11337 = load i32, ptr %8, align 4, !tbaa !5
  %11338 = mul nsw i32 45, %11337
  %11339 = add nsw i32 %11336, %11338
  %11340 = sext i32 %11339 to i64
  %11341 = getelementptr inbounds double, ptr %11335, i64 %11340
  %11342 = load double, ptr %11341, align 8, !tbaa !11
  %11343 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %11342, double %11334)
  %11344 = load ptr, ptr %7, align 8, !tbaa !9
  %11345 = load i32, ptr %12, align 4, !tbaa !5
  %11346 = load i32, ptr %8, align 4, !tbaa !5
  %11347 = mul nsw i32 47, %11346
  %11348 = add nsw i32 %11345, %11347
  %11349 = sext i32 %11348 to i64
  %11350 = getelementptr inbounds double, ptr %11344, i64 %11349
  %11351 = load double, ptr %11350, align 8, !tbaa !11
  %11352 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %11351, double %11343)
  %11353 = load ptr, ptr %7, align 8, !tbaa !9
  %11354 = load i32, ptr %12, align 4, !tbaa !5
  %11355 = load i32, ptr %8, align 4, !tbaa !5
  %11356 = mul nsw i32 48, %11355
  %11357 = add nsw i32 %11354, %11356
  %11358 = sext i32 %11357 to i64
  %11359 = getelementptr inbounds double, ptr %11353, i64 %11358
  %11360 = load double, ptr %11359, align 8, !tbaa !11
  %11361 = call double @llvm.fmuladd.f64(double 0xBFAC37F3CCE9FD85, double %11360, double %11352)
  %11362 = load ptr, ptr %7, align 8, !tbaa !9
  %11363 = load i32, ptr %12, align 4, !tbaa !5
  %11364 = load i32, ptr %8, align 4, !tbaa !5
  %11365 = mul nsw i32 49, %11364
  %11366 = add nsw i32 %11363, %11365
  %11367 = sext i32 %11366 to i64
  %11368 = getelementptr inbounds double, ptr %11362, i64 %11367
  %11369 = load double, ptr %11368, align 8, !tbaa !11
  %11370 = call double @llvm.fmuladd.f64(double 0xBFB4C23AD63BEF7C, double %11369, double %11361)
  %11371 = load ptr, ptr %7, align 8, !tbaa !9
  %11372 = load i32, ptr %12, align 4, !tbaa !5
  %11373 = load i32, ptr %8, align 4, !tbaa !5
  %11374 = mul nsw i32 50, %11373
  %11375 = add nsw i32 %11372, %11374
  %11376 = sext i32 %11375 to i64
  %11377 = getelementptr inbounds double, ptr %11371, i64 %11376
  %11378 = load double, ptr %11377, align 8, !tbaa !11
  %11379 = call double @llvm.fmuladd.f64(double 0x3FEFAD7976B5DE10, double %11378, double %11370)
  %11380 = load ptr, ptr %7, align 8, !tbaa !9
  %11381 = load i32, ptr %12, align 4, !tbaa !5
  %11382 = load i32, ptr %8, align 4, !tbaa !5
  %11383 = mul nsw i32 51, %11382
  %11384 = add nsw i32 %11381, %11383
  %11385 = sext i32 %11384 to i64
  %11386 = getelementptr inbounds double, ptr %11380, i64 %11385
  %11387 = load double, ptr %11386, align 8, !tbaa !11
  %11388 = call double @llvm.fmuladd.f64(double 0x3FF043C98657E80E, double %11387, double %11379)
  %11389 = load ptr, ptr %7, align 8, !tbaa !9
  %11390 = load i32, ptr %12, align 4, !tbaa !5
  %11391 = load i32, ptr %8, align 4, !tbaa !5
  %11392 = mul nsw i32 52, %11391
  %11393 = add nsw i32 %11390, %11392
  %11394 = sext i32 %11393 to i64
  %11395 = getelementptr inbounds double, ptr %11389, i64 %11394
  %11396 = load double, ptr %11395, align 8, !tbaa !11
  %11397 = call double @llvm.fmuladd.f64(double 0xBC50F876CCDF6CD8, double %11396, double %11388)
  %11398 = load ptr, ptr %7, align 8, !tbaa !9
  %11399 = load i32, ptr %12, align 4, !tbaa !5
  %11400 = load i32, ptr %8, align 4, !tbaa !5
  %11401 = mul nsw i32 53, %11400
  %11402 = add nsw i32 %11399, %11401
  %11403 = sext i32 %11402 to i64
  %11404 = getelementptr inbounds double, ptr %11398, i64 %11403
  %11405 = load double, ptr %11404, align 8, !tbaa !11
  %11406 = call double @llvm.fmuladd.f64(double 0x3CA04371D9AB72FA, double %11405, double %11397)
  %11407 = load ptr, ptr %7, align 8, !tbaa !9
  %11408 = load i32, ptr %12, align 4, !tbaa !5
  %11409 = load i32, ptr %8, align 4, !tbaa !5
  %11410 = mul nsw i32 54, %11409
  %11411 = add nsw i32 %11408, %11410
  %11412 = sext i32 %11411 to i64
  %11413 = getelementptr inbounds double, ptr %11407, i64 %11412
  %11414 = load double, ptr %11413, align 8, !tbaa !11
  %11415 = call double @llvm.fmuladd.f64(double 0x3CBADEBC19B71701, double %11414, double %11406)
  %11416 = load ptr, ptr %7, align 8, !tbaa !9
  %11417 = load i32, ptr %12, align 4, !tbaa !5
  %11418 = load i32, ptr %8, align 4, !tbaa !5
  %11419 = mul nsw i32 55, %11418
  %11420 = add nsw i32 %11417, %11419
  %11421 = sext i32 %11420 to i64
  %11422 = getelementptr inbounds double, ptr %11416, i64 %11421
  %11423 = load double, ptr %11422, align 8, !tbaa !11
  %11424 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %11423, double %11415)
  %11425 = load ptr, ptr %7, align 8, !tbaa !9
  %11426 = load i32, ptr %12, align 4, !tbaa !5
  %11427 = load i32, ptr %8, align 4, !tbaa !5
  %11428 = mul nsw i32 56, %11427
  %11429 = add nsw i32 %11426, %11428
  %11430 = sext i32 %11429 to i64
  %11431 = getelementptr inbounds double, ptr %11425, i64 %11430
  %11432 = load double, ptr %11431, align 8, !tbaa !11
  %11433 = call double @llvm.fmuladd.f64(double 0xBC6C48C6001F0ABE, double %11432, double %11424)
  %11434 = load ptr, ptr %7, align 8, !tbaa !9
  %11435 = load i32, ptr %12, align 4, !tbaa !5
  %11436 = load i32, ptr %8, align 4, !tbaa !5
  %11437 = mul nsw i32 57, %11436
  %11438 = add nsw i32 %11435, %11437
  %11439 = sext i32 %11438 to i64
  %11440 = getelementptr inbounds double, ptr %11434, i64 %11439
  %11441 = load double, ptr %11440, align 8, !tbaa !11
  %11442 = call double @llvm.fmuladd.f64(double 0x3C9974B2334F2346, double %11441, double %11433)
  %11443 = load ptr, ptr %7, align 8, !tbaa !9
  %11444 = load i32, ptr %12, align 4, !tbaa !5
  %11445 = load i32, ptr %8, align 4, !tbaa !5
  %11446 = mul nsw i32 58, %11445
  %11447 = add nsw i32 %11444, %11446
  %11448 = sext i32 %11447 to i64
  %11449 = getelementptr inbounds double, ptr %11443, i64 %11448
  %11450 = load double, ptr %11449, align 8, !tbaa !11
  %11451 = call double @llvm.fmuladd.f64(double 0x3CBADEBC19B71701, double %11450, double %11442)
  %11452 = load ptr, ptr %7, align 8, !tbaa !9
  %11453 = load i32, ptr %12, align 4, !tbaa !5
  %11454 = load i32, ptr %8, align 4, !tbaa !5
  %11455 = mul nsw i32 59, %11454
  %11456 = add nsw i32 %11453, %11455
  %11457 = sext i32 %11456 to i64
  %11458 = getelementptr inbounds double, ptr %11452, i64 %11457
  %11459 = load double, ptr %11458, align 8, !tbaa !11
  %11460 = call double @llvm.fmuladd.f64(double 0x3C96A09E667F3BCC, double %11459, double %11451)
  %11461 = load ptr, ptr %7, align 8, !tbaa !9
  %11462 = load i32, ptr %12, align 4, !tbaa !5
  %11463 = load i32, ptr %8, align 4, !tbaa !5
  %11464 = mul nsw i32 60, %11463
  %11465 = add nsw i32 %11462, %11464
  %11466 = sext i32 %11465 to i64
  %11467 = getelementptr inbounds double, ptr %11461, i64 %11466
  %11468 = load double, ptr %11467, align 8, !tbaa !11
  %11469 = call double @llvm.fmuladd.f64(double 0xBC7F1CD9CCEEF238, double %11468, double %11460)
  %11470 = load ptr, ptr %7, align 8, !tbaa !9
  %11471 = load i32, ptr %12, align 4, !tbaa !5
  %11472 = load i32, ptr %8, align 4, !tbaa !5
  %11473 = mul nsw i32 61, %11472
  %11474 = add nsw i32 %11471, %11473
  %11475 = sext i32 %11474 to i64
  %11476 = getelementptr inbounds double, ptr %11470, i64 %11475
  %11477 = load double, ptr %11476, align 8, !tbaa !11
  %11478 = call double @llvm.fmuladd.f64(double 0x3C80F876CCDF6CD9, double %11477, double %11469)
  %11479 = load ptr, ptr %7, align 8, !tbaa !9
  %11480 = load i32, ptr %12, align 4, !tbaa !5
  %11481 = load i32, ptr %8, align 4, !tbaa !5
  %11482 = mul nsw i32 62, %11481
  %11483 = add nsw i32 %11480, %11482
  %11484 = sext i32 %11483 to i64
  %11485 = getelementptr inbounds double, ptr %11479, i64 %11484
  %11486 = load double, ptr %11485, align 8, !tbaa !11
  %11487 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %11486, double %11478)
  %11488 = load ptr, ptr %7, align 8, !tbaa !9
  %11489 = load i32, ptr %12, align 4, !tbaa !5
  %11490 = load i32, ptr %8, align 4, !tbaa !5
  %11491 = mul nsw i32 63, %11490
  %11492 = add nsw i32 %11489, %11491
  %11493 = sext i32 %11492 to i64
  %11494 = getelementptr inbounds double, ptr %11488, i64 %11493
  %11495 = load double, ptr %11494, align 8, !tbaa !11
  %11496 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %11495, double %11487)
  %11497 = load ptr, ptr %7, align 8, !tbaa !9
  %11498 = load i32, ptr %12, align 4, !tbaa !5
  %11499 = load i32, ptr %8, align 4, !tbaa !5
  %11500 = mul nsw i32 64, %11499
  %11501 = add nsw i32 %11498, %11500
  %11502 = sext i32 %11501 to i64
  %11503 = getelementptr inbounds double, ptr %11497, i64 %11502
  %11504 = load double, ptr %11503, align 8, !tbaa !11
  %11505 = call double @llvm.fmuladd.f64(double 0xBFB8DF388696F557, double %11504, double %11496)
  %11506 = load ptr, ptr %7, align 8, !tbaa !9
  %11507 = load i32, ptr %12, align 4, !tbaa !5
  %11508 = load i32, ptr %8, align 4, !tbaa !5
  %11509 = mul nsw i32 65, %11508
  %11510 = add nsw i32 %11507, %11509
  %11511 = sext i32 %11510 to i64
  %11512 = getelementptr inbounds double, ptr %11506, i64 %11511
  %11513 = load double, ptr %11512, align 8, !tbaa !11
  %11514 = call double @llvm.fmuladd.f64(double 0x3FD0C7817D9C3121, double %11513, double %11505)
  %11515 = load ptr, ptr %7, align 8, !tbaa !9
  %11516 = load i32, ptr %12, align 4, !tbaa !5
  %11517 = load i32, ptr %8, align 4, !tbaa !5
  %11518 = mul nsw i32 66, %11517
  %11519 = add nsw i32 %11516, %11518
  %11520 = sext i32 %11519 to i64
  %11521 = getelementptr inbounds double, ptr %11515, i64 %11520
  %11522 = load double, ptr %11521, align 8, !tbaa !11
  %11523 = call double @llvm.fmuladd.f64(double 0x4007001BD846D0A7, double %11522, double %11514)
  %11524 = load ptr, ptr %7, align 8, !tbaa !9
  %11525 = load i32, ptr %12, align 4, !tbaa !5
  %11526 = load i32, ptr %8, align 4, !tbaa !5
  %11527 = mul nsw i32 67, %11526
  %11528 = add nsw i32 %11525, %11527
  %11529 = sext i32 %11528 to i64
  %11530 = getelementptr inbounds double, ptr %11524, i64 %11529
  %11531 = load double, ptr %11530, align 8, !tbaa !11
  %11532 = call double @llvm.fmuladd.f64(double 0x3FD08C54FF1019F7, double %11531, double %11523)
  store double %11532, ptr %11, align 8, !tbaa !11
  %11533 = load double, ptr %11, align 8, !tbaa !11
  %11534 = load ptr, ptr %9, align 8, !tbaa !9
  %11535 = load i32, ptr %12, align 4, !tbaa !5
  %11536 = load i32, ptr %10, align 4, !tbaa !5
  %11537 = mul nsw i32 39, %11536
  %11538 = add nsw i32 %11535, %11537
  %11539 = sext i32 %11538 to i64
  %11540 = getelementptr inbounds double, ptr %11534, i64 %11539
  %11541 = load double, ptr %11540, align 8, !tbaa !11
  %11542 = fadd double %11541, %11533
  store double %11542, ptr %11540, align 8, !tbaa !11
  %11543 = load ptr, ptr %7, align 8, !tbaa !9
  %11544 = load i32, ptr %12, align 4, !tbaa !5
  %11545 = load i32, ptr %8, align 4, !tbaa !5
  %11546 = mul nsw i32 20, %11545
  %11547 = add nsw i32 %11544, %11546
  %11548 = sext i32 %11547 to i64
  %11549 = getelementptr inbounds double, ptr %11543, i64 %11548
  %11550 = load double, ptr %11549, align 8, !tbaa !11
  %11551 = load ptr, ptr %7, align 8, !tbaa !9
  %11552 = load i32, ptr %12, align 4, !tbaa !5
  %11553 = load i32, ptr %8, align 4, !tbaa !5
  %11554 = mul nsw i32 21, %11553
  %11555 = add nsw i32 %11552, %11554
  %11556 = sext i32 %11555 to i64
  %11557 = getelementptr inbounds double, ptr %11551, i64 %11556
  %11558 = load double, ptr %11557, align 8, !tbaa !11
  %11559 = fmul double 0x3FEC2894019C8AD2, %11558
  %11560 = call double @llvm.fmuladd.f64(double 0x3FA789B66AF4F45E, double %11550, double %11559)
  %11561 = load ptr, ptr %7, align 8, !tbaa !9
  %11562 = load i32, ptr %12, align 4, !tbaa !5
  %11563 = load i32, ptr %8, align 4, !tbaa !5
  %11564 = mul nsw i32 22, %11563
  %11565 = add nsw i32 %11562, %11564
  %11566 = sext i32 %11565 to i64
  %11567 = getelementptr inbounds double, ptr %11561, i64 %11566
  %11568 = load double, ptr %11567, align 8, !tbaa !11
  %11569 = call double @llvm.fmuladd.f64(double 0x3FEC2894019C8AC4, double %11568, double %11560)
  %11570 = load ptr, ptr %7, align 8, !tbaa !9
  %11571 = load i32, ptr %12, align 4, !tbaa !5
  %11572 = load i32, ptr %8, align 4, !tbaa !5
  %11573 = mul nsw i32 23, %11572
  %11574 = add nsw i32 %11571, %11573
  %11575 = sext i32 %11574 to i64
  %11576 = getelementptr inbounds double, ptr %11570, i64 %11575
  %11577 = load double, ptr %11576, align 8, !tbaa !11
  %11578 = call double @llvm.fmuladd.f64(double 0x3FA789B66AF4F564, double %11577, double %11569)
  %11579 = load ptr, ptr %7, align 8, !tbaa !9
  %11580 = load i32, ptr %12, align 4, !tbaa !5
  %11581 = load i32, ptr %8, align 4, !tbaa !5
  %11582 = mul nsw i32 24, %11581
  %11583 = add nsw i32 %11580, %11582
  %11584 = sext i32 %11583 to i64
  %11585 = getelementptr inbounds double, ptr %11579, i64 %11584
  %11586 = load double, ptr %11585, align 8, !tbaa !11
  %11587 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %11586, double %11578)
  %11588 = load ptr, ptr %7, align 8, !tbaa !9
  %11589 = load i32, ptr %12, align 4, !tbaa !5
  %11590 = load i32, ptr %8, align 4, !tbaa !5
  %11591 = mul nsw i32 25, %11590
  %11592 = add nsw i32 %11589, %11591
  %11593 = sext i32 %11592 to i64
  %11594 = getelementptr inbounds double, ptr %11588, i64 %11593
  %11595 = load double, ptr %11594, align 8, !tbaa !11
  %11596 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %11595, double %11587)
  %11597 = load ptr, ptr %7, align 8, !tbaa !9
  %11598 = load i32, ptr %12, align 4, !tbaa !5
  %11599 = load i32, ptr %8, align 4, !tbaa !5
  %11600 = mul nsw i32 26, %11599
  %11601 = add nsw i32 %11598, %11600
  %11602 = sext i32 %11601 to i64
  %11603 = getelementptr inbounds double, ptr %11597, i64 %11602
  %11604 = load double, ptr %11603, align 8, !tbaa !11
  %11605 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %11604, double %11596)
  %11606 = load ptr, ptr %7, align 8, !tbaa !9
  %11607 = load i32, ptr %12, align 4, !tbaa !5
  %11608 = load i32, ptr %8, align 4, !tbaa !5
  %11609 = mul nsw i32 27, %11608
  %11610 = add nsw i32 %11607, %11609
  %11611 = sext i32 %11610 to i64
  %11612 = getelementptr inbounds double, ptr %11606, i64 %11611
  %11613 = load double, ptr %11612, align 8, !tbaa !11
  %11614 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %11613, double %11605)
  %11615 = load ptr, ptr %7, align 8, !tbaa !9
  %11616 = load i32, ptr %12, align 4, !tbaa !5
  %11617 = load i32, ptr %8, align 4, !tbaa !5
  %11618 = mul nsw i32 28, %11617
  %11619 = add nsw i32 %11616, %11618
  %11620 = sext i32 %11619 to i64
  %11621 = getelementptr inbounds double, ptr %11615, i64 %11620
  %11622 = load double, ptr %11621, align 8, !tbaa !11
  %11623 = call double @llvm.fmuladd.f64(double 0x3C84000000000000, double %11622, double %11614)
  %11624 = load ptr, ptr %7, align 8, !tbaa !9
  %11625 = load i32, ptr %12, align 4, !tbaa !5
  %11626 = load i32, ptr %8, align 4, !tbaa !5
  %11627 = mul nsw i32 29, %11626
  %11628 = add nsw i32 %11625, %11627
  %11629 = sext i32 %11628 to i64
  %11630 = getelementptr inbounds double, ptr %11624, i64 %11629
  %11631 = load double, ptr %11630, align 8, !tbaa !11
  %11632 = call double @llvm.fmuladd.f64(double 0x3CAE000000000002, double %11631, double %11623)
  %11633 = load ptr, ptr %7, align 8, !tbaa !9
  %11634 = load i32, ptr %12, align 4, !tbaa !5
  %11635 = load i32, ptr %8, align 4, !tbaa !5
  %11636 = mul nsw i32 30, %11635
  %11637 = add nsw i32 %11634, %11636
  %11638 = sext i32 %11637 to i64
  %11639 = getelementptr inbounds double, ptr %11633, i64 %11638
  %11640 = load double, ptr %11639, align 8, !tbaa !11
  %11641 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %11640, double %11632)
  %11642 = load ptr, ptr %7, align 8, !tbaa !9
  %11643 = load i32, ptr %12, align 4, !tbaa !5
  %11644 = load i32, ptr %8, align 4, !tbaa !5
  %11645 = mul nsw i32 31, %11644
  %11646 = add nsw i32 %11643, %11645
  %11647 = sext i32 %11646 to i64
  %11648 = getelementptr inbounds double, ptr %11642, i64 %11647
  %11649 = load double, ptr %11648, align 8, !tbaa !11
  %11650 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %11649, double %11641)
  %11651 = load ptr, ptr %7, align 8, !tbaa !9
  %11652 = load i32, ptr %12, align 4, !tbaa !5
  %11653 = load i32, ptr %8, align 4, !tbaa !5
  %11654 = mul nsw i32 32, %11653
  %11655 = add nsw i32 %11652, %11654
  %11656 = sext i32 %11655 to i64
  %11657 = getelementptr inbounds double, ptr %11651, i64 %11656
  %11658 = load double, ptr %11657, align 8, !tbaa !11
  %11659 = call double @llvm.fmuladd.f64(double 0xBC91000000000000, double %11658, double %11650)
  %11660 = load ptr, ptr %7, align 8, !tbaa !9
  %11661 = load i32, ptr %12, align 4, !tbaa !5
  %11662 = load i32, ptr %8, align 4, !tbaa !5
  %11663 = mul nsw i32 33, %11662
  %11664 = add nsw i32 %11661, %11663
  %11665 = sext i32 %11664 to i64
  %11666 = getelementptr inbounds double, ptr %11660, i64 %11665
  %11667 = load double, ptr %11666, align 8, !tbaa !11
  %11668 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %11667, double %11659)
  %11669 = load ptr, ptr %7, align 8, !tbaa !9
  %11670 = load i32, ptr %12, align 4, !tbaa !5
  %11671 = load i32, ptr %8, align 4, !tbaa !5
  %11672 = mul nsw i32 34, %11671
  %11673 = add nsw i32 %11670, %11672
  %11674 = sext i32 %11673 to i64
  %11675 = getelementptr inbounds double, ptr %11669, i64 %11674
  %11676 = load double, ptr %11675, align 8, !tbaa !11
  %11677 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %11676, double %11668)
  %11678 = load ptr, ptr %7, align 8, !tbaa !9
  %11679 = load i32, ptr %12, align 4, !tbaa !5
  %11680 = load i32, ptr %8, align 4, !tbaa !5
  %11681 = mul nsw i32 35, %11680
  %11682 = add nsw i32 %11679, %11681
  %11683 = sext i32 %11682 to i64
  %11684 = getelementptr inbounds double, ptr %11678, i64 %11683
  %11685 = load double, ptr %11684, align 8, !tbaa !11
  %11686 = call double @llvm.fmuladd.f64(double 0xBC50000000000000, double %11685, double %11677)
  %11687 = load ptr, ptr %7, align 8, !tbaa !9
  %11688 = load i32, ptr %12, align 4, !tbaa !5
  %11689 = load i32, ptr %8, align 4, !tbaa !5
  %11690 = mul nsw i32 52, %11689
  %11691 = add nsw i32 %11688, %11690
  %11692 = sext i32 %11691 to i64
  %11693 = getelementptr inbounds double, ptr %11687, i64 %11692
  %11694 = load double, ptr %11693, align 8, !tbaa !11
  %11695 = call double @llvm.fmuladd.f64(double 0xBFA0A4D27CF86DC6, double %11694, double %11686)
  %11696 = load ptr, ptr %7, align 8, !tbaa !9
  %11697 = load i32, ptr %12, align 4, !tbaa !5
  %11698 = load i32, ptr %8, align 4, !tbaa !5
  %11699 = mul nsw i32 53, %11698
  %11700 = add nsw i32 %11697, %11699
  %11701 = sext i32 %11700 to i64
  %11702 = getelementptr inbounds double, ptr %11696, i64 %11701
  %11703 = load double, ptr %11702, align 8, !tbaa !11
  %11704 = call double @llvm.fmuladd.f64(double 0xBFE3E93C07AFC380, double %11703, double %11695)
  %11705 = load ptr, ptr %7, align 8, !tbaa !9
  %11706 = load i32, ptr %12, align 4, !tbaa !5
  %11707 = load i32, ptr %8, align 4, !tbaa !5
  %11708 = mul nsw i32 54, %11707
  %11709 = add nsw i32 %11706, %11708
  %11710 = sext i32 %11709 to i64
  %11711 = getelementptr inbounds double, ptr %11705, i64 %11710
  %11712 = load double, ptr %11711, align 8, !tbaa !11
  %11713 = call double @llvm.fmuladd.f64(double 0xBFE3E93C07AFC37E, double %11712, double %11704)
  %11714 = load ptr, ptr %7, align 8, !tbaa !9
  %11715 = load i32, ptr %12, align 4, !tbaa !5
  %11716 = load i32, ptr %8, align 4, !tbaa !5
  %11717 = mul nsw i32 55, %11716
  %11718 = add nsw i32 %11715, %11717
  %11719 = sext i32 %11718 to i64
  %11720 = getelementptr inbounds double, ptr %11714, i64 %11719
  %11721 = load double, ptr %11720, align 8, !tbaa !11
  %11722 = call double @llvm.fmuladd.f64(double 0xBFA0A4D27CF86DAF, double %11721, double %11713)
  %11723 = load ptr, ptr %7, align 8, !tbaa !9
  %11724 = load i32, ptr %12, align 4, !tbaa !5
  %11725 = load i32, ptr %8, align 4, !tbaa !5
  %11726 = mul nsw i32 56, %11725
  %11727 = add nsw i32 %11724, %11726
  %11728 = sext i32 %11727 to i64
  %11729 = getelementptr inbounds double, ptr %11723, i64 %11728
  %11730 = load double, ptr %11729, align 8, !tbaa !11
  %11731 = call double @llvm.fmuladd.f64(double 0xBC85EB99734B41EF, double %11730, double %11722)
  %11732 = load ptr, ptr %7, align 8, !tbaa !9
  %11733 = load i32, ptr %12, align 4, !tbaa !5
  %11734 = load i32, ptr %8, align 4, !tbaa !5
  %11735 = mul nsw i32 57, %11734
  %11736 = add nsw i32 %11733, %11735
  %11737 = sext i32 %11736 to i64
  %11738 = getelementptr inbounds double, ptr %11732, i64 %11737
  %11739 = load double, ptr %11738, align 8, !tbaa !11
  %11740 = call double @llvm.fmuladd.f64(double 0xBCA80AA84CE72F89, double %11739, double %11731)
  %11741 = load ptr, ptr %7, align 8, !tbaa !9
  %11742 = load i32, ptr %12, align 4, !tbaa !5
  %11743 = load i32, ptr %8, align 4, !tbaa !5
  %11744 = mul nsw i32 58, %11743
  %11745 = add nsw i32 %11742, %11744
  %11746 = sext i32 %11745 to i64
  %11747 = getelementptr inbounds double, ptr %11741, i64 %11746
  %11748 = load double, ptr %11747, align 8, !tbaa !11
  %11749 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %11748, double %11740)
  %11750 = load ptr, ptr %7, align 8, !tbaa !9
  %11751 = load i32, ptr %12, align 4, !tbaa !5
  %11752 = load i32, ptr %8, align 4, !tbaa !5
  %11753 = mul nsw i32 59, %11752
  %11754 = add nsw i32 %11751, %11753
  %11755 = sext i32 %11754 to i64
  %11756 = getelementptr inbounds double, ptr %11750, i64 %11755
  %11757 = load double, ptr %11756, align 8, !tbaa !11
  %11758 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %11757, double %11749)
  %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 60, %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 = call double @llvm.fmuladd.f64(double 0xBC81AD7BC01366B8, double %11766, double %11758)
  %11768 = load ptr, ptr %7, align 8, !tbaa !9
  %11769 = load i32, ptr %12, align 4, !tbaa !5
  %11770 = load i32, ptr %8, align 4, !tbaa !5
  %11771 = mul nsw i32 61, %11770
  %11772 = add nsw i32 %11769, %11771
  %11773 = sext i32 %11772 to i64
  %11774 = getelementptr inbounds double, ptr %11768, i64 %11773
  %11775 = load double, ptr %11774, align 8, !tbaa !11
  %11776 = call double @llvm.fmuladd.f64(double 0xBC93CC8A99AF5452, double %11775, double %11767)
  %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 62, %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 0xBC93CC8A99AF5452, 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 63, %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 0xBC96A09E667F3BCC, 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 64, %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 0x3C7FD1DEC022EC17, 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 65, %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 0xBCA6A09E667F3BCC, 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 66, %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 0xBC76A09E667F3BCD, 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 67, %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 0x3C86A09E667F3BCC, double %11829, double %11821)
  store double %11830, ptr %11, align 8, !tbaa !11
  %11831 = load double, ptr %11, align 8, !tbaa !11
  %11832 = load ptr, ptr %9, align 8, !tbaa !9
  %11833 = load i32, ptr %12, align 4, !tbaa !5
  %11834 = load i32, ptr %10, align 4, !tbaa !5
  %11835 = mul nsw i32 40, %11834
  %11836 = add nsw i32 %11833, %11835
  %11837 = sext i32 %11836 to i64
  %11838 = getelementptr inbounds double, ptr %11832, i64 %11837
  %11839 = load double, ptr %11838, align 8, !tbaa !11
  %11840 = fadd double %11839, %11831
  store double %11840, ptr %11838, align 8, !tbaa !11
  %11841 = load ptr, ptr %7, align 8, !tbaa !9
  %11842 = load i32, ptr %12, align 4, !tbaa !5
  %11843 = load i32, ptr %8, align 4, !tbaa !5
  %11844 = mul nsw i32 20, %11843
  %11845 = add nsw i32 %11842, %11844
  %11846 = sext i32 %11845 to i64
  %11847 = getelementptr inbounds double, ptr %11841, i64 %11846
  %11848 = load double, ptr %11847, align 8, !tbaa !11
  %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 21, %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 = fmul double 0x3FEAEBF44A8E7A8E, %11856
  %11858 = call double @llvm.fmuladd.f64(double 0x3FD6F2A1D7A492BF, double %11848, double %11857)
  %11859 = load ptr, ptr %7, align 8, !tbaa !9
  %11860 = load i32, ptr %12, align 4, !tbaa !5
  %11861 = load i32, ptr %8, align 4, !tbaa !5
  %11862 = mul nsw i32 22, %11861
  %11863 = add nsw i32 %11860, %11862
  %11864 = sext i32 %11863 to i64
  %11865 = getelementptr inbounds double, ptr %11859, i64 %11864
  %11866 = load double, ptr %11865, align 8, !tbaa !11
  %11867 = call double @llvm.fmuladd.f64(double 0x3FEAEBF44A8E7A92, double %11866, double %11858)
  %11868 = load ptr, ptr %7, align 8, !tbaa !9
  %11869 = load i32, ptr %12, align 4, !tbaa !5
  %11870 = load i32, ptr %8, align 4, !tbaa !5
  %11871 = mul nsw i32 23, %11870
  %11872 = add nsw i32 %11869, %11871
  %11873 = sext i32 %11872 to i64
  %11874 = getelementptr inbounds double, ptr %11868, i64 %11873
  %11875 = load double, ptr %11874, align 8, !tbaa !11
  %11876 = call double @llvm.fmuladd.f64(double 0x3FD6F2A1D7A492CF, double %11875, double %11867)
  %11877 = load ptr, ptr %7, align 8, !tbaa !9
  %11878 = load i32, ptr %12, align 4, !tbaa !5
  %11879 = load i32, ptr %8, align 4, !tbaa !5
  %11880 = mul nsw i32 25, %11879
  %11881 = add nsw i32 %11878, %11880
  %11882 = sext i32 %11881 to i64
  %11883 = getelementptr inbounds double, ptr %11877, i64 %11882
  %11884 = load double, ptr %11883, align 8, !tbaa !11
  %11885 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %11884, double %11876)
  %11886 = load ptr, ptr %7, align 8, !tbaa !9
  %11887 = load i32, ptr %12, align 4, !tbaa !5
  %11888 = load i32, ptr %8, align 4, !tbaa !5
  %11889 = mul nsw i32 26, %11888
  %11890 = add nsw i32 %11887, %11889
  %11891 = sext i32 %11890 to i64
  %11892 = getelementptr inbounds double, ptr %11886, i64 %11891
  %11893 = load double, ptr %11892, align 8, !tbaa !11
  %11894 = call double @llvm.fmuladd.f64(double 0x3CC0000000000000, double %11893, double %11885)
  %11895 = load ptr, ptr %7, align 8, !tbaa !9
  %11896 = load i32, ptr %12, align 4, !tbaa !5
  %11897 = load i32, ptr %8, align 4, !tbaa !5
  %11898 = mul nsw i32 28, %11897
  %11899 = add nsw i32 %11896, %11898
  %11900 = sext i32 %11899 to i64
  %11901 = getelementptr inbounds double, ptr %11895, i64 %11900
  %11902 = load double, ptr %11901, align 8, !tbaa !11
  %11903 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %11902, double %11894)
  %11904 = load ptr, ptr %7, align 8, !tbaa !9
  %11905 = load i32, ptr %12, align 4, !tbaa !5
  %11906 = load i32, ptr %8, align 4, !tbaa !5
  %11907 = mul nsw i32 29, %11906
  %11908 = add nsw i32 %11905, %11907
  %11909 = sext i32 %11908 to i64
  %11910 = getelementptr inbounds double, ptr %11904, i64 %11909
  %11911 = load double, ptr %11910, align 8, !tbaa !11
  %11912 = call double @llvm.fmuladd.f64(double 0x3CB8000000000001, double %11911, double %11903)
  %11913 = load ptr, ptr %7, align 8, !tbaa !9
  %11914 = load i32, ptr %12, align 4, !tbaa !5
  %11915 = load i32, ptr %8, align 4, !tbaa !5
  %11916 = mul nsw i32 30, %11915
  %11917 = add nsw i32 %11914, %11916
  %11918 = sext i32 %11917 to i64
  %11919 = getelementptr inbounds double, ptr %11913, i64 %11918
  %11920 = load double, ptr %11919, align 8, !tbaa !11
  %11921 = call double @llvm.fmuladd.f64(double 0x3CB8000000000001, double %11920, double %11912)
  %11922 = load ptr, ptr %7, align 8, !tbaa !9
  %11923 = load i32, ptr %12, align 4, !tbaa !5
  %11924 = load i32, ptr %8, align 4, !tbaa !5
  %11925 = mul nsw i32 32, %11924
  %11926 = add nsw i32 %11923, %11925
  %11927 = sext i32 %11926 to i64
  %11928 = getelementptr inbounds double, ptr %11922, i64 %11927
  %11929 = load double, ptr %11928, align 8, !tbaa !11
  %11930 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %11929, double %11921)
  %11931 = load ptr, ptr %7, align 8, !tbaa !9
  %11932 = load i32, ptr %12, align 4, !tbaa !5
  %11933 = load i32, ptr %8, align 4, !tbaa !5
  %11934 = mul nsw i32 33, %11933
  %11935 = add nsw i32 %11932, %11934
  %11936 = sext i32 %11935 to i64
  %11937 = getelementptr inbounds double, ptr %11931, i64 %11936
  %11938 = load double, ptr %11937, align 8, !tbaa !11
  %11939 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %11938, double %11930)
  %11940 = load ptr, ptr %7, align 8, !tbaa !9
  %11941 = load i32, ptr %12, align 4, !tbaa !5
  %11942 = load i32, ptr %8, align 4, !tbaa !5
  %11943 = mul nsw i32 34, %11942
  %11944 = add nsw i32 %11941, %11943
  %11945 = sext i32 %11944 to i64
  %11946 = getelementptr inbounds double, ptr %11940, i64 %11945
  %11947 = load double, ptr %11946, align 8, !tbaa !11
  %11948 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %11947, double %11939)
  %11949 = load ptr, ptr %7, align 8, !tbaa !9
  %11950 = load i32, ptr %12, align 4, !tbaa !5
  %11951 = load i32, ptr %8, align 4, !tbaa !5
  %11952 = mul nsw i32 35, %11951
  %11953 = add nsw i32 %11950, %11952
  %11954 = sext i32 %11953 to i64
  %11955 = getelementptr inbounds double, ptr %11949, i64 %11954
  %11956 = load double, ptr %11955, align 8, !tbaa !11
  %11957 = call double @llvm.fmuladd.f64(double 0x3CB0000000000000, double %11956, double %11948)
  %11958 = load ptr, ptr %7, align 8, !tbaa !9
  %11959 = load i32, ptr %12, align 4, !tbaa !5
  %11960 = load i32, ptr %8, align 4, !tbaa !5
  %11961 = mul nsw i32 52, %11960
  %11962 = add nsw i32 %11959, %11961
  %11963 = sext i32 %11962 to i64
  %11964 = getelementptr inbounds double, ptr %11958, i64 %11963
  %11965 = load double, ptr %11964, align 8, !tbaa !11
  %11966 = call double @llvm.fmuladd.f64(double 0x3FA462D8D66D7FC4, double %11965, double %11957)
  %11967 = load ptr, ptr %7, align 8, !tbaa !9
  %11968 = load i32, ptr %12, align 4, !tbaa !5
  %11969 = load i32, ptr %8, align 4, !tbaa !5
  %11970 = mul nsw i32 53, %11969
  %11971 = add nsw i32 %11968, %11970
  %11972 = sext i32 %11971 to i64
  %11973 = getelementptr inbounds double, ptr %11967, i64 %11972
  %11974 = load double, ptr %11973, align 8, !tbaa !11
  %11975 = call double @llvm.fmuladd.f64(double 0xBFC5EA083165C4F6, double %11974, double %11966)
  %11976 = load ptr, ptr %7, align 8, !tbaa !9
  %11977 = load i32, ptr %12, align 4, !tbaa !5
  %11978 = load i32, ptr %8, align 4, !tbaa !5
  %11979 = mul nsw i32 54, %11978
  %11980 = add nsw i32 %11977, %11979
  %11981 = sext i32 %11980 to i64
  %11982 = getelementptr inbounds double, ptr %11976, i64 %11981
  %11983 = load double, ptr %11982, align 8, !tbaa !11
  %11984 = call double @llvm.fmuladd.f64(double 0x3FD4A299D1E9700E, double %11983, double %11975)
  %11985 = load ptr, ptr %7, align 8, !tbaa !9
  %11986 = load i32, ptr %12, align 4, !tbaa !5
  %11987 = load i32, ptr %8, align 4, !tbaa !5
  %11988 = mul nsw i32 55, %11987
  %11989 = add nsw i32 %11986, %11988
  %11990 = sext i32 %11989 to i64
  %11991 = getelementptr inbounds double, ptr %11985, i64 %11990
  %11992 = load double, ptr %11991, align 8, !tbaa !11
  %11993 = call double @llvm.fmuladd.f64(double 0x400E488CB8C1EA74, double %11992, double %11984)
  %11994 = load ptr, ptr %7, align 8, !tbaa !9
  %11995 = load i32, ptr %12, align 4, !tbaa !5
  %11996 = load i32, ptr %8, align 4, !tbaa !5
  %11997 = mul nsw i32 56, %11996
  %11998 = add nsw i32 %11995, %11997
  %11999 = sext i32 %11998 to i64
  %12000 = getelementptr inbounds double, ptr %11994, i64 %11999
  %12001 = load double, ptr %12000, align 8, !tbaa !11
  %12002 = call double @llvm.fmuladd.f64(double 0x3C66A09E667F3BCC, double %12001, double %11993)
  %12003 = load ptr, ptr %7, align 8, !tbaa !9
  %12004 = load i32, ptr %12, align 4, !tbaa !5
  %12005 = load i32, ptr %8, align 4, !tbaa !5
  %12006 = mul nsw i32 57, %12005
  %12007 = add nsw i32 %12004, %12006
  %12008 = sext i32 %12007 to i64
  %12009 = getelementptr inbounds double, ptr %12003, i64 %12008
  %12010 = load double, ptr %12009, align 8, !tbaa !11
  %12011 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %12010, double %12002)
  %12012 = load ptr, ptr %7, align 8, !tbaa !9
  %12013 = load i32, ptr %12, align 4, !tbaa !5
  %12014 = load i32, ptr %8, align 4, !tbaa !5
  %12015 = mul nsw i32 58, %12014
  %12016 = add nsw i32 %12013, %12015
  %12017 = sext i32 %12016 to i64
  %12018 = getelementptr inbounds double, ptr %12012, i64 %12017
  %12019 = load double, ptr %12018, align 8, !tbaa !11
  %12020 = call double @llvm.fmuladd.f64(double 0x3CA0F876CCDF6CD8, double %12019, double %12011)
  %12021 = load ptr, ptr %7, align 8, !tbaa !9
  %12022 = load i32, ptr %12, align 4, !tbaa !5
  %12023 = load i32, ptr %8, align 4, !tbaa !5
  %12024 = mul nsw i32 59, %12023
  %12025 = add nsw i32 %12022, %12024
  %12026 = sext i32 %12025 to i64
  %12027 = getelementptr inbounds double, ptr %12021, i64 %12026
  %12028 = load double, ptr %12027, align 8, !tbaa !11
  %12029 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %12028, double %12020)
  %12030 = load ptr, ptr %7, align 8, !tbaa !9
  %12031 = load i32, ptr %12, align 4, !tbaa !5
  %12032 = load i32, ptr %8, align 4, !tbaa !5
  %12033 = mul nsw i32 61, %12032
  %12034 = add nsw i32 %12031, %12033
  %12035 = sext i32 %12034 to i64
  %12036 = getelementptr inbounds double, ptr %12030, i64 %12035
  %12037 = load double, ptr %12036, align 8, !tbaa !11
  %12038 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %12037, double %12029)
  %12039 = load ptr, ptr %7, align 8, !tbaa !9
  %12040 = load i32, ptr %12, align 4, !tbaa !5
  %12041 = load i32, ptr %8, align 4, !tbaa !5
  %12042 = mul nsw i32 62, %12041
  %12043 = add nsw i32 %12040, %12042
  %12044 = sext i32 %12043 to i64
  %12045 = getelementptr inbounds double, ptr %12039, i64 %12044
  %12046 = load double, ptr %12045, align 8, !tbaa !11
  %12047 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %12046, double %12038)
  %12048 = load ptr, ptr %7, align 8, !tbaa !9
  %12049 = load i32, ptr %12, align 4, !tbaa !5
  %12050 = load i32, ptr %8, align 4, !tbaa !5
  %12051 = mul nsw i32 63, %12050
  %12052 = add nsw i32 %12049, %12051
  %12053 = sext i32 %12052 to i64
  %12054 = getelementptr inbounds double, ptr %12048, i64 %12053
  %12055 = load double, ptr %12054, align 8, !tbaa !11
  %12056 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %12055, double %12047)
  %12057 = load ptr, ptr %7, align 8, !tbaa !9
  %12058 = load i32, ptr %12, align 4, !tbaa !5
  %12059 = load i32, ptr %8, align 4, !tbaa !5
  %12060 = mul nsw i32 64, %12059
  %12061 = add nsw i32 %12058, %12060
  %12062 = sext i32 %12061 to i64
  %12063 = getelementptr inbounds double, ptr %12057, i64 %12062
  %12064 = load double, ptr %12063, align 8, !tbaa !11
  %12065 = call double @llvm.fmuladd.f64(double 0x3C91AD7BC01366B7, double %12064, double %12056)
  %12066 = load ptr, ptr %7, align 8, !tbaa !9
  %12067 = load i32, ptr %12, align 4, !tbaa !5
  %12068 = load i32, ptr %8, align 4, !tbaa !5
  %12069 = mul nsw i32 65, %12068
  %12070 = add nsw i32 %12067, %12069
  %12071 = sext i32 %12070 to i64
  %12072 = getelementptr inbounds double, ptr %12066, i64 %12071
  %12073 = load double, ptr %12072, align 8, !tbaa !11
  %12074 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %12073, double %12065)
  %12075 = load ptr, ptr %7, align 8, !tbaa !9
  %12076 = load i32, ptr %12, align 4, !tbaa !5
  %12077 = load i32, ptr %8, align 4, !tbaa !5
  %12078 = mul nsw i32 66, %12077
  %12079 = add nsw i32 %12076, %12078
  %12080 = sext i32 %12079 to i64
  %12081 = getelementptr inbounds double, ptr %12075, i64 %12080
  %12082 = load double, ptr %12081, align 8, !tbaa !11
  %12083 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %12082, double %12074)
  %12084 = load ptr, ptr %7, align 8, !tbaa !9
  %12085 = load i32, ptr %12, align 4, !tbaa !5
  %12086 = load i32, ptr %8, align 4, !tbaa !5
  %12087 = mul nsw i32 67, %12086
  %12088 = add nsw i32 %12085, %12087
  %12089 = sext i32 %12088 to i64
  %12090 = getelementptr inbounds double, ptr %12084, i64 %12089
  %12091 = load double, ptr %12090, align 8, !tbaa !11
  %12092 = call double @llvm.fmuladd.f64(double 0x3CC0F876CCDF6CD9, double %12091, double %12083)
  store double %12092, ptr %11, align 8, !tbaa !11
  %12093 = load double, ptr %11, align 8, !tbaa !11
  %12094 = load ptr, ptr %9, align 8, !tbaa !9
  %12095 = load i32, ptr %12, align 4, !tbaa !5
  %12096 = load i32, ptr %10, align 4, !tbaa !5
  %12097 = mul nsw i32 41, %12096
  %12098 = add nsw i32 %12095, %12097
  %12099 = sext i32 %12098 to i64
  %12100 = getelementptr inbounds double, ptr %12094, i64 %12099
  %12101 = load double, ptr %12100, align 8, !tbaa !11
  %12102 = fadd double %12101, %12093
  store double %12102, ptr %12100, align 8, !tbaa !11
  %12103 = load ptr, ptr %7, align 8, !tbaa !9
  %12104 = load i32, ptr %12, align 4, !tbaa !5
  %12105 = load i32, ptr %8, align 4, !tbaa !5
  %12106 = mul nsw i32 20, %12105
  %12107 = add nsw i32 %12104, %12106
  %12108 = sext i32 %12107 to i64
  %12109 = getelementptr inbounds double, ptr %12103, i64 %12108
  %12110 = load double, ptr %12109, align 8, !tbaa !11
  %12111 = load ptr, ptr %7, align 8, !tbaa !9
  %12112 = load i32, ptr %12, align 4, !tbaa !5
  %12113 = load i32, ptr %8, align 4, !tbaa !5
  %12114 = mul nsw i32 21, %12113
  %12115 = add nsw i32 %12112, %12114
  %12116 = sext i32 %12115 to i64
  %12117 = getelementptr inbounds double, ptr %12111, i64 %12116
  %12118 = load double, ptr %12117, align 8, !tbaa !11
  %12119 = fmul double 0x3FCEFDC8894D0802, %12118
  %12120 = call double @llvm.fmuladd.f64(double 0xBFACD49071EC6028, double %12110, double %12119)
  %12121 = load ptr, ptr %7, align 8, !tbaa !9
  %12122 = load i32, ptr %12, align 4, !tbaa !5
  %12123 = load i32, ptr %8, align 4, !tbaa !5
  %12124 = mul nsw i32 22, %12123
  %12125 = add nsw i32 %12122, %12124
  %12126 = sext i32 %12125 to i64
  %12127 = getelementptr inbounds double, ptr %12121, i64 %12126
  %12128 = load double, ptr %12127, align 8, !tbaa !11
  %12129 = call double @llvm.fmuladd.f64(double 0xBFDD2EB9CCB3BE35, double %12128, double %12120)
  %12130 = load ptr, ptr %7, align 8, !tbaa !9
  %12131 = load i32, ptr %12, align 4, !tbaa !5
  %12132 = load i32, ptr %8, align 4, !tbaa !5
  %12133 = mul nsw i32 23, %12132
  %12134 = add nsw i32 %12131, %12133
  %12135 = sext i32 %12134 to i64
  %12136 = getelementptr inbounds double, ptr %12130, i64 %12135
  %12137 = load double, ptr %12136, align 8, !tbaa !11
  %12138 = call double @llvm.fmuladd.f64(double 0xC01569E165D7940B, double %12137, double %12129)
  %12139 = load ptr, ptr %7, align 8, !tbaa !9
  %12140 = load i32, ptr %12, align 4, !tbaa !5
  %12141 = load i32, ptr %8, align 4, !tbaa !5
  %12142 = mul nsw i32 24, %12141
  %12143 = add nsw i32 %12140, %12142
  %12144 = sext i32 %12143 to i64
  %12145 = getelementptr inbounds double, ptr %12139, i64 %12144
  %12146 = load double, ptr %12145, align 8, !tbaa !11
  %12147 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %12146, double %12138)
  %12148 = load ptr, ptr %7, align 8, !tbaa !9
  %12149 = load i32, ptr %12, align 4, !tbaa !5
  %12150 = load i32, ptr %8, align 4, !tbaa !5
  %12151 = mul nsw i32 25, %12150
  %12152 = add nsw i32 %12149, %12151
  %12153 = sext i32 %12152 to i64
  %12154 = getelementptr inbounds double, ptr %12148, i64 %12153
  %12155 = load double, ptr %12154, align 8, !tbaa !11
  %12156 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %12155, double %12147)
  %12157 = load ptr, ptr %7, align 8, !tbaa !9
  %12158 = load i32, ptr %12, align 4, !tbaa !5
  %12159 = load i32, ptr %8, align 4, !tbaa !5
  %12160 = mul nsw i32 26, %12159
  %12161 = add nsw i32 %12158, %12160
  %12162 = sext i32 %12161 to i64
  %12163 = getelementptr inbounds double, ptr %12157, i64 %12162
  %12164 = load double, ptr %12163, align 8, !tbaa !11
  %12165 = call double @llvm.fmuladd.f64(double 0xBCA9FFFFFFFFFFFE, double %12164, double %12156)
  %12166 = load ptr, ptr %7, align 8, !tbaa !9
  %12167 = load i32, ptr %12, align 4, !tbaa !5
  %12168 = load i32, ptr %8, align 4, !tbaa !5
  %12169 = mul nsw i32 27, %12168
  %12170 = add nsw i32 %12167, %12169
  %12171 = sext i32 %12170 to i64
  %12172 = getelementptr inbounds double, ptr %12166, i64 %12171
  %12173 = load double, ptr %12172, align 8, !tbaa !11
  %12174 = call double @llvm.fmuladd.f64(double 0xBCC5800000000000, double %12173, double %12165)
  %12175 = load ptr, ptr %7, align 8, !tbaa !9
  %12176 = load i32, ptr %12, align 4, !tbaa !5
  %12177 = load i32, ptr %8, align 4, !tbaa !5
  %12178 = mul nsw i32 28, %12177
  %12179 = add nsw i32 %12176, %12178
  %12180 = sext i32 %12179 to i64
  %12181 = getelementptr inbounds double, ptr %12175, i64 %12180
  %12182 = load double, ptr %12181, align 8, !tbaa !11
  %12183 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %12182, double %12174)
  %12184 = load ptr, ptr %7, align 8, !tbaa !9
  %12185 = load i32, ptr %12, align 4, !tbaa !5
  %12186 = load i32, ptr %8, align 4, !tbaa !5
  %12187 = mul nsw i32 29, %12186
  %12188 = add nsw i32 %12185, %12187
  %12189 = sext i32 %12188 to i64
  %12190 = getelementptr inbounds double, ptr %12184, i64 %12189
  %12191 = load double, ptr %12190, align 8, !tbaa !11
  %12192 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %12191, double %12183)
  %12193 = load ptr, ptr %7, align 8, !tbaa !9
  %12194 = load i32, ptr %12, align 4, !tbaa !5
  %12195 = load i32, ptr %8, align 4, !tbaa !5
  %12196 = mul nsw i32 30, %12195
  %12197 = add nsw i32 %12194, %12196
  %12198 = sext i32 %12197 to i64
  %12199 = getelementptr inbounds double, ptr %12193, i64 %12198
  %12200 = load double, ptr %12199, align 8, !tbaa !11
  %12201 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %12200, double %12192)
  %12202 = load ptr, ptr %7, align 8, !tbaa !9
  %12203 = load i32, ptr %12, align 4, !tbaa !5
  %12204 = load i32, ptr %8, align 4, !tbaa !5
  %12205 = mul nsw i32 31, %12204
  %12206 = add nsw i32 %12203, %12205
  %12207 = sext i32 %12206 to i64
  %12208 = getelementptr inbounds double, ptr %12202, i64 %12207
  %12209 = load double, ptr %12208, align 8, !tbaa !11
  %12210 = call double @llvm.fmuladd.f64(double 0xBCB5000000000000, double %12209, double %12201)
  %12211 = load ptr, ptr %7, align 8, !tbaa !9
  %12212 = load i32, ptr %12, align 4, !tbaa !5
  %12213 = load i32, ptr %8, align 4, !tbaa !5
  %12214 = mul nsw i32 32, %12213
  %12215 = add nsw i32 %12212, %12214
  %12216 = sext i32 %12215 to i64
  %12217 = getelementptr inbounds double, ptr %12211, i64 %12216
  %12218 = load double, ptr %12217, align 8, !tbaa !11
  %12219 = call double @llvm.fmuladd.f64(double 0x3CA1000000000001, double %12218, double %12210)
  %12220 = load ptr, ptr %7, align 8, !tbaa !9
  %12221 = load i32, ptr %12, align 4, !tbaa !5
  %12222 = load i32, ptr %8, align 4, !tbaa !5
  %12223 = mul nsw i32 33, %12222
  %12224 = add nsw i32 %12221, %12223
  %12225 = sext i32 %12224 to i64
  %12226 = getelementptr inbounds double, ptr %12220, i64 %12225
  %12227 = load double, ptr %12226, align 8, !tbaa !11
  %12228 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %12227, double %12219)
  %12229 = load ptr, ptr %7, align 8, !tbaa !9
  %12230 = load i32, ptr %12, align 4, !tbaa !5
  %12231 = load i32, ptr %8, align 4, !tbaa !5
  %12232 = mul nsw i32 34, %12231
  %12233 = add nsw i32 %12230, %12232
  %12234 = sext i32 %12233 to i64
  %12235 = getelementptr inbounds double, ptr %12229, i64 %12234
  %12236 = load double, ptr %12235, align 8, !tbaa !11
  %12237 = call double @llvm.fmuladd.f64(double 0xBCA9FFFFFFFFFFFE, double %12236, double %12228)
  %12238 = load ptr, ptr %7, align 8, !tbaa !9
  %12239 = load i32, ptr %12, align 4, !tbaa !5
  %12240 = load i32, ptr %8, align 4, !tbaa !5
  %12241 = mul nsw i32 35, %12240
  %12242 = add nsw i32 %12239, %12241
  %12243 = sext i32 %12242 to i64
  %12244 = getelementptr inbounds double, ptr %12238, i64 %12243
  %12245 = load double, ptr %12244, align 8, !tbaa !11
  %12246 = call double @llvm.fmuladd.f64(double 0xBCD2000000000000, double %12245, double %12237)
  %12247 = load ptr, ptr %7, align 8, !tbaa !9
  %12248 = load i32, ptr %12, align 4, !tbaa !5
  %12249 = load i32, ptr %8, align 4, !tbaa !5
  %12250 = mul nsw i32 52, %12249
  %12251 = add nsw i32 %12248, %12250
  %12252 = sext i32 %12251 to i64
  %12253 = getelementptr inbounds double, ptr %12247, i64 %12252
  %12254 = load double, ptr %12253, align 8, !tbaa !11
  %12255 = call double @llvm.fmuladd.f64(double 0x400E488CB8C1EA66, double %12254, double %12246)
  %12256 = load ptr, ptr %7, align 8, !tbaa !9
  %12257 = load i32, ptr %12, align 4, !tbaa !5
  %12258 = load i32, ptr %8, align 4, !tbaa !5
  %12259 = mul nsw i32 53, %12258
  %12260 = add nsw i32 %12257, %12259
  %12261 = sext i32 %12260 to i64
  %12262 = getelementptr inbounds double, ptr %12256, i64 %12261
  %12263 = load double, ptr %12262, align 8, !tbaa !11
  %12264 = call double @llvm.fmuladd.f64(double 0x3FD4A299D1E9700C, double %12263, double %12255)
  %12265 = load ptr, ptr %7, align 8, !tbaa !9
  %12266 = load i32, ptr %12, align 4, !tbaa !5
  %12267 = load i32, ptr %8, align 4, !tbaa !5
  %12268 = mul nsw i32 54, %12267
  %12269 = add nsw i32 %12266, %12268
  %12270 = sext i32 %12269 to i64
  %12271 = getelementptr inbounds double, ptr %12265, i64 %12270
  %12272 = load double, ptr %12271, align 8, !tbaa !11
  %12273 = call double @llvm.fmuladd.f64(double 0xBFC5EA083165C4F9, double %12272, double %12264)
  %12274 = load ptr, ptr %7, align 8, !tbaa !9
  %12275 = load i32, ptr %12, align 4, !tbaa !5
  %12276 = load i32, ptr %8, align 4, !tbaa !5
  %12277 = mul nsw i32 55, %12276
  %12278 = add nsw i32 %12275, %12277
  %12279 = sext i32 %12278 to i64
  %12280 = getelementptr inbounds double, ptr %12274, i64 %12279
  %12281 = load double, ptr %12280, align 8, !tbaa !11
  %12282 = call double @llvm.fmuladd.f64(double 0x3FA462D8D66D7F94, double %12281, double %12273)
  %12283 = load ptr, ptr %7, align 8, !tbaa !9
  %12284 = load i32, ptr %12, align 4, !tbaa !5
  %12285 = load i32, ptr %8, align 4, !tbaa !5
  %12286 = mul nsw i32 56, %12285
  %12287 = add nsw i32 %12284, %12286
  %12288 = sext i32 %12287 to i64
  %12289 = getelementptr inbounds double, ptr %12283, i64 %12288
  %12290 = load double, ptr %12289, align 8, !tbaa !11
  %12291 = call double @llvm.fmuladd.f64(double 0x3C9152F9467969C8, double %12290, double %12282)
  %12292 = load ptr, ptr %7, align 8, !tbaa !9
  %12293 = load i32, ptr %12, align 4, !tbaa !5
  %12294 = load i32, ptr %8, align 4, !tbaa !5
  %12295 = mul nsw i32 57, %12294
  %12296 = add nsw i32 %12293, %12295
  %12297 = sext i32 %12296 to i64
  %12298 = getelementptr inbounds double, ptr %12292, i64 %12297
  %12299 = load double, ptr %12298, align 8, !tbaa !11
  %12300 = call double @llvm.fmuladd.f64(double 0xBCADB2CFE686FE7D, double %12299, double %12291)
  %12301 = load ptr, ptr %7, align 8, !tbaa !9
  %12302 = load i32, ptr %12, align 4, !tbaa !5
  %12303 = load i32, ptr %8, align 4, !tbaa !5
  %12304 = mul nsw i32 58, %12303
  %12305 = add nsw i32 %12302, %12304
  %12306 = sext i32 %12305 to i64
  %12307 = getelementptr inbounds double, ptr %12301, i64 %12306
  %12308 = load double, ptr %12307, align 8, !tbaa !11
  %12309 = call double @llvm.fmuladd.f64(double 0xBCA26280B3476095, double %12308, double %12300)
  %12310 = load ptr, ptr %7, align 8, !tbaa !9
  %12311 = load i32, ptr %12, align 4, !tbaa !5
  %12312 = load i32, ptr %8, align 4, !tbaa !5
  %12313 = mul nsw i32 59, %12312
  %12314 = add nsw i32 %12311, %12313
  %12315 = sext i32 %12314 to i64
  %12316 = getelementptr inbounds double, ptr %12310, i64 %12315
  %12317 = load double, ptr %12316, align 8, !tbaa !11
  %12318 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %12317, double %12309)
  %12319 = load ptr, ptr %7, align 8, !tbaa !9
  %12320 = load i32, ptr %12, align 4, !tbaa !5
  %12321 = load i32, ptr %8, align 4, !tbaa !5
  %12322 = mul nsw i32 60, %12321
  %12323 = add nsw i32 %12320, %12322
  %12324 = sext i32 %12323 to i64
  %12325 = getelementptr inbounds double, ptr %12319, i64 %12324
  %12326 = load double, ptr %12325, align 8, !tbaa !11
  %12327 = call double @llvm.fmuladd.f64(double 0xBCAF4A1B09BBF0AE, double %12326, double %12318)
  %12328 = load ptr, ptr %7, align 8, !tbaa !9
  %12329 = load i32, ptr %12, align 4, !tbaa !5
  %12330 = load i32, ptr %8, align 4, !tbaa !5
  %12331 = mul nsw i32 61, %12330
  %12332 = add nsw i32 %12329, %12331
  %12333 = sext i32 %12332 to i64
  %12334 = getelementptr inbounds double, ptr %12328, i64 %12333
  %12335 = load double, ptr %12334, align 8, !tbaa !11
  %12336 = call double @llvm.fmuladd.f64(double 0x3CADB2CFE686FE7D, double %12335, double %12327)
  %12337 = load ptr, ptr %7, align 8, !tbaa !9
  %12338 = load i32, ptr %12, align 4, !tbaa !5
  %12339 = load i32, ptr %8, align 4, !tbaa !5
  %12340 = mul nsw i32 62, %12339
  %12341 = add nsw i32 %12338, %12340
  %12342 = sext i32 %12341 to i64
  %12343 = getelementptr inbounds double, ptr %12337, i64 %12342
  %12344 = load double, ptr %12343, align 8, !tbaa !11
  %12345 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %12344, double %12336)
  %12346 = load ptr, ptr %7, align 8, !tbaa !9
  %12347 = load i32, ptr %12, align 4, !tbaa !5
  %12348 = load i32, ptr %8, align 4, !tbaa !5
  %12349 = mul nsw i32 63, %12348
  %12350 = add nsw i32 %12347, %12349
  %12351 = sext i32 %12350 to i64
  %12352 = getelementptr inbounds double, ptr %12346, i64 %12351
  %12353 = load double, ptr %12352, align 8, !tbaa !11
  %12354 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %12353, double %12345)
  %12355 = load ptr, ptr %7, align 8, !tbaa !9
  %12356 = load i32, ptr %12, align 4, !tbaa !5
  %12357 = load i32, ptr %8, align 4, !tbaa !5
  %12358 = mul nsw i32 64, %12357
  %12359 = add nsw i32 %12356, %12358
  %12360 = sext i32 %12359 to i64
  %12361 = getelementptr inbounds double, ptr %12355, i64 %12360
  %12362 = load double, ptr %12361, align 8, !tbaa !11
  %12363 = call double @llvm.fmuladd.f64(double 0x3CC689FDC818BC8F, double %12362, double %12354)
  %12364 = load ptr, ptr %7, align 8, !tbaa !9
  %12365 = load i32, ptr %12, align 4, !tbaa !5
  %12366 = load i32, ptr %8, align 4, !tbaa !5
  %12367 = mul nsw i32 65, %12366
  %12368 = add nsw i32 %12365, %12367
  %12369 = sext i32 %12368 to i64
  %12370 = getelementptr inbounds double, ptr %12364, i64 %12369
  %12371 = load double, ptr %12370, align 8, !tbaa !11
  %12372 = call double @llvm.fmuladd.f64(double 0x3CB16999E4DFE903, double %12371, double %12363)
  %12373 = load ptr, ptr %7, align 8, !tbaa !9
  %12374 = load i32, ptr %12, align 4, !tbaa !5
  %12375 = load i32, ptr %8, align 4, !tbaa !5
  %12376 = mul nsw i32 66, %12375
  %12377 = add nsw i32 %12374, %12376
  %12378 = sext i32 %12377 to i64
  %12379 = getelementptr inbounds double, ptr %12373, i64 %12378
  %12380 = load double, ptr %12379, align 8, !tbaa !11
  %12381 = call double @llvm.fmuladd.f64(double 0xBC880AA84CE72F89, double %12380, double %12372)
  %12382 = load ptr, ptr %7, align 8, !tbaa !9
  %12383 = load i32, ptr %12, align 4, !tbaa !5
  %12384 = load i32, ptr %8, align 4, !tbaa !5
  %12385 = mul nsw i32 67, %12384
  %12386 = add nsw i32 %12383, %12385
  %12387 = sext i32 %12386 to i64
  %12388 = getelementptr inbounds double, ptr %12382, i64 %12387
  %12389 = load double, ptr %12388, align 8, !tbaa !11
  %12390 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %12389, double %12381)
  store double %12390, ptr %11, align 8, !tbaa !11
  %12391 = load double, ptr %11, align 8, !tbaa !11
  %12392 = load ptr, ptr %9, align 8, !tbaa !9
  %12393 = load i32, ptr %12, align 4, !tbaa !5
  %12394 = load i32, ptr %10, align 4, !tbaa !5
  %12395 = mul nsw i32 42, %12394
  %12396 = add nsw i32 %12393, %12395
  %12397 = sext i32 %12396 to i64
  %12398 = getelementptr inbounds double, ptr %12392, i64 %12397
  %12399 = load double, ptr %12398, align 8, !tbaa !11
  %12400 = fadd double %12399, %12391
  store double %12400, ptr %12398, align 8, !tbaa !11
  %12401 = load ptr, ptr %7, align 8, !tbaa !9
  %12402 = load i32, ptr %12, align 4, !tbaa !5
  %12403 = load i32, ptr %8, align 4, !tbaa !5
  %12404 = mul nsw i32 20, %12403
  %12405 = add nsw i32 %12402, %12404
  %12406 = sext i32 %12405 to i64
  %12407 = getelementptr inbounds double, ptr %12401, i64 %12406
  %12408 = load double, ptr %12407, align 8, !tbaa !11
  %12409 = load ptr, ptr %7, align 8, !tbaa !9
  %12410 = load i32, ptr %12, align 4, !tbaa !5
  %12411 = load i32, ptr %8, align 4, !tbaa !5
  %12412 = mul nsw i32 21, %12411
  %12413 = add nsw i32 %12410, %12412
  %12414 = sext i32 %12413 to i64
  %12415 = getelementptr inbounds double, ptr %12409, i64 %12414
  %12416 = load double, ptr %12415, align 8, !tbaa !11
  %12417 = fmul double 0xBFDD2EB9CCB3BDB5, %12416
  %12418 = call double @llvm.fmuladd.f64(double 0xC01569E165D79412, double %12408, double %12417)
  %12419 = load ptr, ptr %7, align 8, !tbaa !9
  %12420 = load i32, ptr %12, align 4, !tbaa !5
  %12421 = load i32, ptr %8, align 4, !tbaa !5
  %12422 = mul nsw i32 22, %12421
  %12423 = add nsw i32 %12420, %12422
  %12424 = sext i32 %12423 to i64
  %12425 = getelementptr inbounds double, ptr %12419, i64 %12424
  %12426 = load double, ptr %12425, align 8, !tbaa !11
  %12427 = call double @llvm.fmuladd.f64(double 0x3FCEFDC8894D07B6, double %12426, double %12418)
  %12428 = load ptr, ptr %7, align 8, !tbaa !9
  %12429 = load i32, ptr %12, align 4, !tbaa !5
  %12430 = load i32, ptr %8, align 4, !tbaa !5
  %12431 = mul nsw i32 23, %12430
  %12432 = add nsw i32 %12429, %12431
  %12433 = sext i32 %12432 to i64
  %12434 = getelementptr inbounds double, ptr %12428, i64 %12433
  %12435 = load double, ptr %12434, align 8, !tbaa !11
  %12436 = call double @llvm.fmuladd.f64(double 0xBFACD49071EC5FF2, double %12435, double %12427)
  %12437 = load ptr, ptr %7, align 8, !tbaa !9
  %12438 = load i32, ptr %12, align 4, !tbaa !5
  %12439 = load i32, ptr %8, align 4, !tbaa !5
  %12440 = mul nsw i32 24, %12439
  %12441 = add nsw i32 %12438, %12440
  %12442 = sext i32 %12441 to i64
  %12443 = getelementptr inbounds double, ptr %12437, i64 %12442
  %12444 = load double, ptr %12443, align 8, !tbaa !11
  %12445 = call double @llvm.fmuladd.f64(double 0xBCD6C00000000002, double %12444, double %12436)
  %12446 = load ptr, ptr %7, align 8, !tbaa !9
  %12447 = load i32, ptr %12, align 4, !tbaa !5
  %12448 = load i32, ptr %8, align 4, !tbaa !5
  %12449 = mul nsw i32 25, %12448
  %12450 = add nsw i32 %12447, %12449
  %12451 = sext i32 %12450 to i64
  %12452 = getelementptr inbounds double, ptr %12446, i64 %12451
  %12453 = load double, ptr %12452, align 8, !tbaa !11
  %12454 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %12453, double %12445)
  %12455 = load ptr, ptr %7, align 8, !tbaa !9
  %12456 = load i32, ptr %12, align 4, !tbaa !5
  %12457 = load i32, ptr %8, align 4, !tbaa !5
  %12458 = mul nsw i32 26, %12457
  %12459 = add nsw i32 %12456, %12458
  %12460 = sext i32 %12459 to i64
  %12461 = getelementptr inbounds double, ptr %12455, i64 %12460
  %12462 = load double, ptr %12461, align 8, !tbaa !11
  %12463 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %12462, double %12454)
  %12464 = load ptr, ptr %7, align 8, !tbaa !9
  %12465 = load i32, ptr %12, align 4, !tbaa !5
  %12466 = load i32, ptr %8, align 4, !tbaa !5
  %12467 = mul nsw i32 27, %12466
  %12468 = add nsw i32 %12465, %12467
  %12469 = sext i32 %12468 to i64
  %12470 = getelementptr inbounds double, ptr %12464, i64 %12469
  %12471 = load double, ptr %12470, align 8, !tbaa !11
  %12472 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %12471, double %12463)
  %12473 = load ptr, ptr %7, align 8, !tbaa !9
  %12474 = load i32, ptr %12, align 4, !tbaa !5
  %12475 = load i32, ptr %8, align 4, !tbaa !5
  %12476 = mul nsw i32 28, %12475
  %12477 = add nsw i32 %12474, %12476
  %12478 = sext i32 %12477 to i64
  %12479 = getelementptr inbounds double, ptr %12473, i64 %12478
  %12480 = load double, ptr %12479, align 8, !tbaa !11
  %12481 = call double @llvm.fmuladd.f64(double 0xBCC2800000000000, double %12480, double %12472)
  %12482 = load ptr, ptr %7, align 8, !tbaa !9
  %12483 = load i32, ptr %12, align 4, !tbaa !5
  %12484 = load i32, ptr %8, align 4, !tbaa !5
  %12485 = mul nsw i32 29, %12484
  %12486 = add nsw i32 %12483, %12485
  %12487 = sext i32 %12486 to i64
  %12488 = getelementptr inbounds double, ptr %12482, i64 %12487
  %12489 = load double, ptr %12488, align 8, !tbaa !11
  %12490 = call double @llvm.fmuladd.f64(double 0x3CAE000000000002, double %12489, double %12481)
  %12491 = load ptr, ptr %7, align 8, !tbaa !9
  %12492 = load i32, ptr %12, align 4, !tbaa !5
  %12493 = load i32, ptr %8, align 4, !tbaa !5
  %12494 = mul nsw i32 30, %12493
  %12495 = add nsw i32 %12492, %12494
  %12496 = sext i32 %12495 to i64
  %12497 = getelementptr inbounds double, ptr %12491, i64 %12496
  %12498 = load double, ptr %12497, align 8, !tbaa !11
  %12499 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %12498, double %12490)
  %12500 = load ptr, ptr %7, align 8, !tbaa !9
  %12501 = load i32, ptr %12, align 4, !tbaa !5
  %12502 = load i32, ptr %8, align 4, !tbaa !5
  %12503 = mul nsw i32 31, %12502
  %12504 = add nsw i32 %12501, %12503
  %12505 = sext i32 %12504 to i64
  %12506 = getelementptr inbounds double, ptr %12500, i64 %12505
  %12507 = load double, ptr %12506, align 8, !tbaa !11
  %12508 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %12507, double %12499)
  %12509 = load ptr, ptr %7, align 8, !tbaa !9
  %12510 = load i32, ptr %12, align 4, !tbaa !5
  %12511 = load i32, ptr %8, align 4, !tbaa !5
  %12512 = mul nsw i32 32, %12511
  %12513 = add nsw i32 %12510, %12512
  %12514 = sext i32 %12513 to i64
  %12515 = getelementptr inbounds double, ptr %12509, i64 %12514
  %12516 = load double, ptr %12515, align 8, !tbaa !11
  %12517 = call double @llvm.fmuladd.f64(double 0xBCBF000000000001, double %12516, double %12508)
  %12518 = load ptr, ptr %7, align 8, !tbaa !9
  %12519 = load i32, ptr %12, align 4, !tbaa !5
  %12520 = load i32, ptr %8, align 4, !tbaa !5
  %12521 = mul nsw i32 33, %12520
  %12522 = add nsw i32 %12519, %12521
  %12523 = sext i32 %12522 to i64
  %12524 = getelementptr inbounds double, ptr %12518, i64 %12523
  %12525 = load double, ptr %12524, align 8, !tbaa !11
  %12526 = call double @llvm.fmuladd.f64(double 0xBCBAFFFFFFFFFFFF, double %12525, double %12517)
  %12527 = load ptr, ptr %7, align 8, !tbaa !9
  %12528 = load i32, ptr %12, align 4, !tbaa !5
  %12529 = load i32, ptr %8, align 4, !tbaa !5
  %12530 = mul nsw i32 34, %12529
  %12531 = add nsw i32 %12528, %12530
  %12532 = sext i32 %12531 to i64
  %12533 = getelementptr inbounds double, ptr %12527, i64 %12532
  %12534 = load double, ptr %12533, align 8, !tbaa !11
  %12535 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %12534, double %12526)
  %12536 = load ptr, ptr %7, align 8, !tbaa !9
  %12537 = load i32, ptr %12, align 4, !tbaa !5
  %12538 = load i32, ptr %8, align 4, !tbaa !5
  %12539 = mul nsw i32 35, %12538
  %12540 = add nsw i32 %12537, %12539
  %12541 = sext i32 %12540 to i64
  %12542 = getelementptr inbounds double, ptr %12536, i64 %12541
  %12543 = load double, ptr %12542, align 8, !tbaa !11
  %12544 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %12543, double %12535)
  %12545 = load ptr, ptr %7, align 8, !tbaa !9
  %12546 = load i32, ptr %12, align 4, !tbaa !5
  %12547 = load i32, ptr %8, align 4, !tbaa !5
  %12548 = mul nsw i32 52, %12547
  %12549 = add nsw i32 %12546, %12548
  %12550 = sext i32 %12549 to i64
  %12551 = getelementptr inbounds double, ptr %12545, i64 %12550
  %12552 = load double, ptr %12551, align 8, !tbaa !11
  %12553 = call double @llvm.fmuladd.f64(double 0xBFD039FE04F7163A, double %12552, double %12544)
  %12554 = load ptr, ptr %7, align 8, !tbaa !9
  %12555 = load i32, ptr %12, align 4, !tbaa !5
  %12556 = load i32, ptr %8, align 4, !tbaa !5
  %12557 = mul nsw i32 53, %12556
  %12558 = add nsw i32 %12555, %12557
  %12559 = sext i32 %12558 to i64
  %12560 = getelementptr inbounds double, ptr %12554, i64 %12559
  %12561 = load double, ptr %12560, align 8, !tbaa !11
  %12562 = call double @llvm.fmuladd.f64(double 0xBFE30958FBF81242, double %12561, double %12553)
  %12563 = load ptr, ptr %7, align 8, !tbaa !9
  %12564 = load i32, ptr %12, align 4, !tbaa !5
  %12565 = load i32, ptr %8, align 4, !tbaa !5
  %12566 = mul nsw i32 54, %12565
  %12567 = add nsw i32 %12564, %12566
  %12568 = sext i32 %12567 to i64
  %12569 = getelementptr inbounds double, ptr %12563, i64 %12568
  %12570 = load double, ptr %12569, align 8, !tbaa !11
  %12571 = call double @llvm.fmuladd.f64(double 0xBFE30958FBF81231, double %12570, double %12562)
  %12572 = load ptr, ptr %7, align 8, !tbaa !9
  %12573 = load i32, ptr %12, align 4, !tbaa !5
  %12574 = load i32, ptr %8, align 4, !tbaa !5
  %12575 = mul nsw i32 55, %12574
  %12576 = add nsw i32 %12573, %12575
  %12577 = sext i32 %12576 to i64
  %12578 = getelementptr inbounds double, ptr %12572, i64 %12577
  %12579 = load double, ptr %12578, align 8, !tbaa !11
  %12580 = call double @llvm.fmuladd.f64(double 0xBFD039FE04F71632, double %12579, double %12571)
  %12581 = load ptr, ptr %7, align 8, !tbaa !9
  %12582 = load i32, ptr %12, align 4, !tbaa !5
  %12583 = load i32, ptr %8, align 4, !tbaa !5
  %12584 = mul nsw i32 56, %12583
  %12585 = add nsw i32 %12582, %12584
  %12586 = sext i32 %12585 to i64
  %12587 = getelementptr inbounds double, ptr %12581, i64 %12586
  %12588 = load double, ptr %12587, align 8, !tbaa !11
  %12589 = call double @llvm.fmuladd.f64(double 0x3C959116F9B144FE, double %12588, double %12580)
  %12590 = load ptr, ptr %7, align 8, !tbaa !9
  %12591 = load i32, ptr %12, align 4, !tbaa !5
  %12592 = load i32, ptr %8, align 4, !tbaa !5
  %12593 = mul nsw i32 57, %12592
  %12594 = add nsw i32 %12591, %12593
  %12595 = sext i32 %12594 to i64
  %12596 = getelementptr inbounds double, ptr %12590, i64 %12595
  %12597 = load double, ptr %12596, align 8, !tbaa !11
  %12598 = call double @llvm.fmuladd.f64(double 0xBCA80AA84CE72F89, double %12597, double %12589)
  %12599 = load ptr, ptr %7, align 8, !tbaa !9
  %12600 = load i32, ptr %12, align 4, !tbaa !5
  %12601 = load i32, ptr %8, align 4, !tbaa !5
  %12602 = mul nsw i32 58, %12601
  %12603 = add nsw i32 %12600, %12602
  %12604 = sext i32 %12603 to i64
  %12605 = getelementptr inbounds double, ptr %12599, i64 %12604
  %12606 = load double, ptr %12605, align 8, !tbaa !11
  %12607 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %12606, double %12598)
  %12608 = load ptr, ptr %7, align 8, !tbaa !9
  %12609 = load i32, ptr %12, align 4, !tbaa !5
  %12610 = load i32, ptr %8, align 4, !tbaa !5
  %12611 = mul nsw i32 59, %12610
  %12612 = add nsw i32 %12609, %12611
  %12613 = sext i32 %12612 to i64
  %12614 = getelementptr inbounds double, ptr %12608, i64 %12613
  %12615 = load double, ptr %12614, align 8, !tbaa !11
  %12616 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %12615, double %12607)
  %12617 = load ptr, ptr %7, align 8, !tbaa !9
  %12618 = load i32, ptr %12, align 4, !tbaa !5
  %12619 = load i32, ptr %8, align 4, !tbaa !5
  %12620 = mul nsw i32 60, %12619
  %12621 = add nsw i32 %12618, %12620
  %12622 = sext i32 %12621 to i64
  %12623 = getelementptr inbounds double, ptr %12617, i64 %12622
  %12624 = load double, ptr %12623, align 8, !tbaa !11
  %12625 = call double @llvm.fmuladd.f64(double 0xBCB0B494F1ABEF27, double %12624, double %12616)
  %12626 = load ptr, ptr %7, align 8, !tbaa !9
  %12627 = load i32, ptr %12, align 4, !tbaa !5
  %12628 = load i32, ptr %8, align 4, !tbaa !5
  %12629 = mul nsw i32 61, %12628
  %12630 = add nsw i32 %12627, %12629
  %12631 = sext i32 %12630 to i64
  %12632 = getelementptr inbounds double, ptr %12626, i64 %12631
  %12633 = load double, ptr %12632, align 8, !tbaa !11
  %12634 = call double @llvm.fmuladd.f64(double 0xBCA536948017480F, double %12633, double %12625)
  %12635 = load ptr, ptr %7, align 8, !tbaa !9
  %12636 = load i32, ptr %12, align 4, !tbaa !5
  %12637 = load i32, ptr %8, align 4, !tbaa !5
  %12638 = mul nsw i32 62, %12637
  %12639 = add nsw i32 %12636, %12638
  %12640 = sext i32 %12639 to i64
  %12641 = getelementptr inbounds double, ptr %12635, i64 %12640
  %12642 = load double, ptr %12641, align 8, !tbaa !11
  %12643 = call double @llvm.fmuladd.f64(double 0x3CADB2CFE686FE7D, double %12642, double %12634)
  %12644 = load ptr, ptr %7, align 8, !tbaa !9
  %12645 = load i32, ptr %12, align 4, !tbaa !5
  %12646 = load i32, ptr %8, align 4, !tbaa !5
  %12647 = mul nsw i32 63, %12646
  %12648 = add nsw i32 %12645, %12647
  %12649 = sext i32 %12648 to i64
  %12650 = getelementptr inbounds double, ptr %12644, i64 %12649
  %12651 = load double, ptr %12650, align 8, !tbaa !11
  %12652 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %12651, double %12643)
  %12653 = load ptr, ptr %7, align 8, !tbaa !9
  %12654 = load i32, ptr %12, align 4, !tbaa !5
  %12655 = load i32, ptr %8, align 4, !tbaa !5
  %12656 = mul nsw i32 64, %12655
  %12657 = add nsw i32 %12654, %12656
  %12658 = sext i32 %12657 to i64
  %12659 = getelementptr inbounds double, ptr %12653, i64 %12658
  %12660 = load double, ptr %12659, align 8, !tbaa !11
  %12661 = call double @llvm.fmuladd.f64(double 0xBC9F1CD9CCEEF236, double %12660, double %12652)
  %12662 = load ptr, ptr %7, align 8, !tbaa !9
  %12663 = load i32, ptr %12, align 4, !tbaa !5
  %12664 = load i32, ptr %8, align 4, !tbaa !5
  %12665 = mul nsw i32 65, %12664
  %12666 = add nsw i32 %12663, %12665
  %12667 = sext i32 %12666 to i64
  %12668 = getelementptr inbounds double, ptr %12662, i64 %12667
  %12669 = load double, ptr %12668, align 8, !tbaa !11
  %12670 = call double @llvm.fmuladd.f64(double 0xBCA016309CDE7482, double %12669, double %12661)
  %12671 = load ptr, ptr %7, align 8, !tbaa !9
  %12672 = load i32, ptr %12, align 4, !tbaa !5
  %12673 = load i32, ptr %8, align 4, !tbaa !5
  %12674 = mul nsw i32 66, %12673
  %12675 = add nsw i32 %12672, %12674
  %12676 = sext i32 %12675 to i64
  %12677 = getelementptr inbounds double, ptr %12671, i64 %12676
  %12678 = load double, ptr %12677, align 8, !tbaa !11
  %12679 = call double @llvm.fmuladd.f64(double 0x3C98BFAD401B2967, double %12678, double %12670)
  %12680 = load ptr, ptr %7, align 8, !tbaa !9
  %12681 = load i32, ptr %12, align 4, !tbaa !5
  %12682 = load i32, ptr %8, align 4, !tbaa !5
  %12683 = mul nsw i32 67, %12682
  %12684 = add nsw i32 %12681, %12683
  %12685 = sext i32 %12684 to i64
  %12686 = getelementptr inbounds double, ptr %12680, i64 %12685
  %12687 = load double, ptr %12686, align 8, !tbaa !11
  %12688 = call double @llvm.fmuladd.f64(double 0xBC93CC8A99AF5452, double %12687, double %12679)
  store double %12688, ptr %11, align 8, !tbaa !11
  %12689 = load double, ptr %11, align 8, !tbaa !11
  %12690 = load ptr, ptr %9, align 8, !tbaa !9
  %12691 = load i32, ptr %12, align 4, !tbaa !5
  %12692 = load i32, ptr %10, align 4, !tbaa !5
  %12693 = mul nsw i32 43, %12692
  %12694 = add nsw i32 %12691, %12693
  %12695 = sext i32 %12694 to i64
  %12696 = getelementptr inbounds double, ptr %12690, i64 %12695
  %12697 = load double, ptr %12696, align 8, !tbaa !11
  %12698 = fadd double %12697, %12689
  store double %12698, ptr %12696, align 8, !tbaa !11
  %12699 = load ptr, ptr %7, align 8, !tbaa !9
  %12700 = load i32, ptr %12, align 4, !tbaa !5
  %12701 = load i32, ptr %8, align 4, !tbaa !5
  %12702 = mul nsw i32 20, %12701
  %12703 = add nsw i32 %12700, %12702
  %12704 = sext i32 %12703 to i64
  %12705 = getelementptr inbounds double, ptr %12699, i64 %12704
  %12706 = load double, ptr %12705, align 8, !tbaa !11
  %12707 = load ptr, ptr %7, align 8, !tbaa !9
  %12708 = load i32, ptr %12, align 4, !tbaa !5
  %12709 = load i32, ptr %8, align 4, !tbaa !5
  %12710 = mul nsw i32 21, %12709
  %12711 = add nsw i32 %12708, %12710
  %12712 = sext i32 %12711 to i64
  %12713 = getelementptr inbounds double, ptr %12707, i64 %12712
  %12714 = load double, ptr %12713, align 8, !tbaa !11
  %12715 = fmul double 0xBFB4C23AD63BEF88, %12714
  %12716 = call double @llvm.fmuladd.f64(double 0xBFAC37F3CCE9FCFE, double %12706, double %12715)
  %12717 = load ptr, ptr %7, align 8, !tbaa !9
  %12718 = load i32, ptr %12, align 4, !tbaa !5
  %12719 = load i32, ptr %8, align 4, !tbaa !5
  %12720 = mul nsw i32 22, %12719
  %12721 = add nsw i32 %12718, %12720
  %12722 = sext i32 %12721 to i64
  %12723 = getelementptr inbounds double, ptr %12717, i64 %12722
  %12724 = load double, ptr %12723, align 8, !tbaa !11
  %12725 = call double @llvm.fmuladd.f64(double 0x3FEFAD7976B5DE29, double %12724, double %12716)
  %12726 = load ptr, ptr %7, align 8, !tbaa !9
  %12727 = load i32, ptr %12, align 4, !tbaa !5
  %12728 = load i32, ptr %8, align 4, !tbaa !5
  %12729 = mul nsw i32 23, %12728
  %12730 = add nsw i32 %12727, %12729
  %12731 = sext i32 %12730 to i64
  %12732 = getelementptr inbounds double, ptr %12726, i64 %12731
  %12733 = load double, ptr %12732, align 8, !tbaa !11
  %12734 = call double @llvm.fmuladd.f64(double 0x3FF043C98657E812, double %12733, double %12725)
  %12735 = load ptr, ptr %7, align 8, !tbaa !9
  %12736 = load i32, ptr %12, align 4, !tbaa !5
  %12737 = load i32, ptr %8, align 4, !tbaa !5
  %12738 = mul nsw i32 24, %12737
  %12739 = add nsw i32 %12736, %12738
  %12740 = sext i32 %12739 to i64
  %12741 = getelementptr inbounds double, ptr %12735, i64 %12740
  %12742 = load double, ptr %12741, align 8, !tbaa !11
  %12743 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %12742, double %12734)
  %12744 = load ptr, ptr %7, align 8, !tbaa !9
  %12745 = load i32, ptr %12, align 4, !tbaa !5
  %12746 = load i32, ptr %8, align 4, !tbaa !5
  %12747 = mul nsw i32 26, %12746
  %12748 = add nsw i32 %12745, %12747
  %12749 = sext i32 %12748 to i64
  %12750 = getelementptr inbounds double, ptr %12744, i64 %12749
  %12751 = load double, ptr %12750, align 8, !tbaa !11
  %12752 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %12751, double %12743)
  %12753 = load ptr, ptr %7, align 8, !tbaa !9
  %12754 = load i32, ptr %12, align 4, !tbaa !5
  %12755 = load i32, ptr %8, align 4, !tbaa !5
  %12756 = mul nsw i32 27, %12755
  %12757 = add nsw i32 %12754, %12756
  %12758 = sext i32 %12757 to i64
  %12759 = getelementptr inbounds double, ptr %12753, i64 %12758
  %12760 = load double, ptr %12759, align 8, !tbaa !11
  %12761 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %12760, double %12752)
  %12762 = load ptr, ptr %7, align 8, !tbaa !9
  %12763 = load i32, ptr %12, align 4, !tbaa !5
  %12764 = load i32, ptr %8, align 4, !tbaa !5
  %12765 = mul nsw i32 28, %12764
  %12766 = add nsw i32 %12763, %12765
  %12767 = sext i32 %12766 to i64
  %12768 = getelementptr inbounds double, ptr %12762, i64 %12767
  %12769 = load double, ptr %12768, align 8, !tbaa !11
  %12770 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %12769, double %12761)
  %12771 = load ptr, ptr %7, align 8, !tbaa !9
  %12772 = load i32, ptr %12, align 4, !tbaa !5
  %12773 = load i32, ptr %8, align 4, !tbaa !5
  %12774 = mul nsw i32 29, %12773
  %12775 = add nsw i32 %12772, %12774
  %12776 = sext i32 %12775 to i64
  %12777 = getelementptr inbounds double, ptr %12771, i64 %12776
  %12778 = load double, ptr %12777, align 8, !tbaa !11
  %12779 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %12778, double %12770)
  %12780 = load ptr, ptr %7, align 8, !tbaa !9
  %12781 = load i32, ptr %12, align 4, !tbaa !5
  %12782 = load i32, ptr %8, align 4, !tbaa !5
  %12783 = mul nsw i32 30, %12782
  %12784 = add nsw i32 %12781, %12783
  %12785 = sext i32 %12784 to i64
  %12786 = getelementptr inbounds double, ptr %12780, i64 %12785
  %12787 = load double, ptr %12786, align 8, !tbaa !11
  %12788 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %12787, double %12779)
  %12789 = load ptr, ptr %7, align 8, !tbaa !9
  %12790 = load i32, ptr %12, align 4, !tbaa !5
  %12791 = load i32, ptr %8, align 4, !tbaa !5
  %12792 = mul nsw i32 31, %12791
  %12793 = add nsw i32 %12790, %12792
  %12794 = sext i32 %12793 to i64
  %12795 = getelementptr inbounds double, ptr %12789, i64 %12794
  %12796 = load double, ptr %12795, align 8, !tbaa !11
  %12797 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %12796, double %12788)
  %12798 = load ptr, ptr %7, align 8, !tbaa !9
  %12799 = load i32, ptr %12, align 4, !tbaa !5
  %12800 = load i32, ptr %8, align 4, !tbaa !5
  %12801 = mul nsw i32 32, %12800
  %12802 = add nsw i32 %12799, %12801
  %12803 = sext i32 %12802 to i64
  %12804 = getelementptr inbounds double, ptr %12798, i64 %12803
  %12805 = load double, ptr %12804, align 8, !tbaa !11
  %12806 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %12805, double %12797)
  %12807 = load ptr, ptr %7, align 8, !tbaa !9
  %12808 = load i32, ptr %12, align 4, !tbaa !5
  %12809 = load i32, ptr %8, align 4, !tbaa !5
  %12810 = mul nsw i32 33, %12809
  %12811 = add nsw i32 %12808, %12810
  %12812 = sext i32 %12811 to i64
  %12813 = getelementptr inbounds double, ptr %12807, i64 %12812
  %12814 = load double, ptr %12813, align 8, !tbaa !11
  %12815 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %12814, double %12806)
  %12816 = load ptr, ptr %7, align 8, !tbaa !9
  %12817 = load i32, ptr %12, align 4, !tbaa !5
  %12818 = load i32, ptr %8, align 4, !tbaa !5
  %12819 = mul nsw i32 34, %12818
  %12820 = add nsw i32 %12817, %12819
  %12821 = sext i32 %12820 to i64
  %12822 = getelementptr inbounds double, ptr %12816, i64 %12821
  %12823 = load double, ptr %12822, align 8, !tbaa !11
  %12824 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %12823, double %12815)
  %12825 = load ptr, ptr %7, align 8, !tbaa !9
  %12826 = load i32, ptr %12, align 4, !tbaa !5
  %12827 = load i32, ptr %8, align 4, !tbaa !5
  %12828 = mul nsw i32 35, %12827
  %12829 = add nsw i32 %12826, %12828
  %12830 = sext i32 %12829 to i64
  %12831 = getelementptr inbounds double, ptr %12825, i64 %12830
  %12832 = load double, ptr %12831, align 8, !tbaa !11
  %12833 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %12832, double %12824)
  %12834 = load ptr, ptr %7, align 8, !tbaa !9
  %12835 = load i32, ptr %12, align 4, !tbaa !5
  %12836 = load i32, ptr %8, align 4, !tbaa !5
  %12837 = mul nsw i32 52, %12836
  %12838 = add nsw i32 %12835, %12837
  %12839 = sext i32 %12838 to i64
  %12840 = getelementptr inbounds double, ptr %12834, i64 %12839
  %12841 = load double, ptr %12840, align 8, !tbaa !11
  %12842 = call double @llvm.fmuladd.f64(double 0x3FD08C54FF101A12, double %12841, double %12833)
  %12843 = load ptr, ptr %7, align 8, !tbaa !9
  %12844 = load i32, ptr %12, align 4, !tbaa !5
  %12845 = load i32, ptr %8, align 4, !tbaa !5
  %12846 = mul nsw i32 53, %12845
  %12847 = add nsw i32 %12844, %12846
  %12848 = sext i32 %12847 to i64
  %12849 = getelementptr inbounds double, ptr %12843, i64 %12848
  %12850 = load double, ptr %12849, align 8, !tbaa !11
  %12851 = call double @llvm.fmuladd.f64(double 0x4007001BD846D0B0, double %12850, double %12842)
  %12852 = load ptr, ptr %7, align 8, !tbaa !9
  %12853 = load i32, ptr %12, align 4, !tbaa !5
  %12854 = load i32, ptr %8, align 4, !tbaa !5
  %12855 = mul nsw i32 54, %12854
  %12856 = add nsw i32 %12853, %12855
  %12857 = sext i32 %12856 to i64
  %12858 = getelementptr inbounds double, ptr %12852, i64 %12857
  %12859 = load double, ptr %12858, align 8, !tbaa !11
  %12860 = call double @llvm.fmuladd.f64(double 0x3FD0C7817D9C3131, double %12859, double %12851)
  %12861 = load ptr, ptr %7, align 8, !tbaa !9
  %12862 = load i32, ptr %12, align 4, !tbaa !5
  %12863 = load i32, ptr %8, align 4, !tbaa !5
  %12864 = mul nsw i32 55, %12863
  %12865 = add nsw i32 %12862, %12864
  %12866 = sext i32 %12865 to i64
  %12867 = getelementptr inbounds double, ptr %12861, i64 %12866
  %12868 = load double, ptr %12867, align 8, !tbaa !11
  %12869 = call double @llvm.fmuladd.f64(double 0xBFB8DF388696F54B, double %12868, double %12860)
  %12870 = load ptr, ptr %7, align 8, !tbaa !9
  %12871 = load i32, ptr %12, align 4, !tbaa !5
  %12872 = load i32, ptr %8, align 4, !tbaa !5
  %12873 = mul nsw i32 56, %12872
  %12874 = add nsw i32 %12871, %12873
  %12875 = sext i32 %12874 to i64
  %12876 = getelementptr inbounds double, ptr %12870, i64 %12875
  %12877 = load double, ptr %12876, align 8, !tbaa !11
  %12878 = call double @llvm.fmuladd.f64(double 0xBC8CFDCAF353049C, double %12877, double %12869)
  %12879 = load ptr, ptr %7, align 8, !tbaa !9
  %12880 = load i32, ptr %12, align 4, !tbaa !5
  %12881 = load i32, ptr %8, align 4, !tbaa !5
  %12882 = mul nsw i32 57, %12881
  %12883 = add nsw i32 %12880, %12882
  %12884 = sext i32 %12883 to i64
  %12885 = getelementptr inbounds double, ptr %12879, i64 %12884
  %12886 = load double, ptr %12885, align 8, !tbaa !11
  %12887 = call double @llvm.fmuladd.f64(double 0x3CB6461BECE53EDD, double %12886, double %12878)
  %12888 = load ptr, ptr %7, align 8, !tbaa !9
  %12889 = load i32, ptr %12, align 4, !tbaa !5
  %12890 = load i32, ptr %8, align 4, !tbaa !5
  %12891 = mul nsw i32 58, %12890
  %12892 = add nsw i32 %12889, %12891
  %12893 = sext i32 %12892 to i64
  %12894 = getelementptr inbounds double, ptr %12888, i64 %12893
  %12895 = load double, ptr %12894, align 8, !tbaa !11
  %12896 = call double @llvm.fmuladd.f64(double 0x3CA3CC8A99AF5452, double %12895, double %12887)
  %12897 = load ptr, ptr %7, align 8, !tbaa !9
  %12898 = load i32, ptr %12, align 4, !tbaa !5
  %12899 = load i32, ptr %8, align 4, !tbaa !5
  %12900 = mul nsw i32 59, %12899
  %12901 = add nsw i32 %12898, %12900
  %12902 = sext i32 %12901 to i64
  %12903 = getelementptr inbounds double, ptr %12897, i64 %12902
  %12904 = load double, ptr %12903, align 8, !tbaa !11
  %12905 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %12904, double %12896)
  %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 60, %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 = call double @llvm.fmuladd.f64(double 0x3C6974B2334F2344, double %12913, double %12905)
  %12915 = load ptr, ptr %7, align 8, !tbaa !9
  %12916 = load i32, ptr %12, align 4, !tbaa !5
  %12917 = load i32, ptr %8, align 4, !tbaa !5
  %12918 = mul nsw i32 61, %12917
  %12919 = add nsw i32 %12916, %12918
  %12920 = sext i32 %12919 to i64
  %12921 = getelementptr inbounds double, ptr %12915, i64 %12920
  %12922 = load double, ptr %12921, align 8, !tbaa !11
  %12923 = call double @llvm.fmuladd.f64(double 0xBCA5EB99734B41EE, double %12922, double %12914)
  %12924 = load ptr, ptr %7, align 8, !tbaa !9
  %12925 = load i32, ptr %12, align 4, !tbaa !5
  %12926 = load i32, ptr %8, align 4, !tbaa !5
  %12927 = mul nsw i32 62, %12926
  %12928 = add nsw i32 %12925, %12927
  %12929 = sext i32 %12928 to i64
  %12930 = getelementptr inbounds double, ptr %12924, i64 %12929
  %12931 = load double, ptr %12930, align 8, !tbaa !11
  %12932 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %12931, double %12923)
  %12933 = load ptr, ptr %7, align 8, !tbaa !9
  %12934 = load i32, ptr %12, align 4, !tbaa !5
  %12935 = load i32, ptr %8, align 4, !tbaa !5
  %12936 = mul nsw i32 63, %12935
  %12937 = add nsw i32 %12934, %12936
  %12938 = sext i32 %12937 to i64
  %12939 = getelementptr inbounds double, ptr %12933, i64 %12938
  %12940 = load double, ptr %12939, align 8, !tbaa !11
  %12941 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %12940, double %12932)
  %12942 = load ptr, ptr %7, align 8, !tbaa !9
  %12943 = load i32, ptr %12, align 4, !tbaa !5
  %12944 = load i32, ptr %8, align 4, !tbaa !5
  %12945 = mul nsw i32 64, %12944
  %12946 = add nsw i32 %12943, %12945
  %12947 = sext i32 %12946 to i64
  %12948 = getelementptr inbounds double, ptr %12942, i64 %12947
  %12949 = load double, ptr %12948, align 8, !tbaa !11
  %12950 = call double @llvm.fmuladd.f64(double 0x3C8BEE4386850DD0, double %12949, double %12941)
  %12951 = load ptr, ptr %7, align 8, !tbaa !9
  %12952 = load i32, ptr %12, align 4, !tbaa !5
  %12953 = load i32, ptr %8, align 4, !tbaa !5
  %12954 = mul nsw i32 65, %12953
  %12955 = add nsw i32 %12952, %12954
  %12956 = sext i32 %12955 to i64
  %12957 = getelementptr inbounds double, ptr %12951, i64 %12956
  %12958 = load double, ptr %12957, align 8, !tbaa !11
  %12959 = call double @llvm.fmuladd.f64(double 0x3CC196DB21ACE77C, double %12958, double %12950)
  %12960 = load ptr, ptr %7, align 8, !tbaa !9
  %12961 = load i32, ptr %12, align 4, !tbaa !5
  %12962 = load i32, ptr %8, align 4, !tbaa !5
  %12963 = mul nsw i32 66, %12962
  %12964 = add nsw i32 %12961, %12963
  %12965 = sext i32 %12964 to i64
  %12966 = getelementptr inbounds double, ptr %12960, i64 %12965
  %12967 = load double, ptr %12966, align 8, !tbaa !11
  %12968 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %12967, double %12959)
  %12969 = load ptr, ptr %7, align 8, !tbaa !9
  %12970 = load i32, ptr %12, align 4, !tbaa !5
  %12971 = load i32, ptr %8, align 4, !tbaa !5
  %12972 = mul nsw i32 67, %12971
  %12973 = add nsw i32 %12970, %12972
  %12974 = sext i32 %12973 to i64
  %12975 = getelementptr inbounds double, ptr %12969, i64 %12974
  %12976 = load double, ptr %12975, align 8, !tbaa !11
  %12977 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %12976, double %12968)
  store double %12977, ptr %11, align 8, !tbaa !11
  %12978 = load double, ptr %11, align 8, !tbaa !11
  %12979 = load ptr, ptr %9, align 8, !tbaa !9
  %12980 = load i32, ptr %12, align 4, !tbaa !5
  %12981 = load i32, ptr %10, align 4, !tbaa !5
  %12982 = mul nsw i32 44, %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 = fadd double %12986, %12978
  store double %12987, ptr %12985, align 8, !tbaa !11
  %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 20, %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 = load ptr, ptr %7, align 8, !tbaa !9
  %12997 = load i32, ptr %12, align 4, !tbaa !5
  %12998 = load i32, ptr %8, align 4, !tbaa !5
  %12999 = mul nsw i32 21, %12998
  %13000 = add nsw i32 %12997, %12999
  %13001 = sext i32 %13000 to i64
  %13002 = getelementptr inbounds double, ptr %12996, i64 %13001
  %13003 = load double, ptr %13002, align 8, !tbaa !11
  %13004 = fmul double 0x3FEFAD7976B5DE26, %13003
  %13005 = call double @llvm.fmuladd.f64(double 0x3FF043C98657E812, double %12995, double %13004)
  %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 22, %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 0xBFB4C23AD63BEF60, 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 23, %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 0xBFAC37F3CCE9FD17, 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 24, %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 0x3CAC000000000000, 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 25, %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 0xBCA4000000000001, 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 26, %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 0x3C90000000000000, 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 27, %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 0x3C98000000000000, 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 28, %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 0x3CA4000000000001, 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 29, %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 0xBC98000000000000, 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 31, %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 0x3C7FFFFFFFFFFFFF, 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 32, %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 0xBC7FFFFFFFFFFFFF, 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 33, %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 0x3C70000000000001, 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 34, %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 0xBC9A000000000000, 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 35, %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 0x3C7FFFFFFFFFFFFF, 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 52, %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 0xBF9102DA00B18A5A, 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 53, %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 0x3FCD5953692F6EA6, 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 54, %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 0x3FE3C4545BCF030B, 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 55, %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 0x3FD6A4D32EB1F70D, 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 56, %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 0x3C6F1CD9CCEEF238, double %13166, double %13158)
  %13168 = load ptr, ptr %7, align 8, !tbaa !9
  %13169 = load i32, ptr %12, align 4, !tbaa !5
  %13170 = load i32, ptr %8, align 4, !tbaa !5
  %13171 = mul nsw i32 57, %13170
  %13172 = add nsw i32 %13169, %13171
  %13173 = sext i32 %13172 to i64
  %13174 = getelementptr inbounds double, ptr %13168, i64 %13173
  %13175 = load double, ptr %13174, align 8, !tbaa !11
  %13176 = call double @llvm.fmuladd.f64(double 0x3C9ADEBC19B71702, double %13175, double %13167)
  %13177 = load ptr, ptr %7, align 8, !tbaa !9
  %13178 = load i32, ptr %12, align 4, !tbaa !5
  %13179 = load i32, ptr %8, align 4, !tbaa !5
  %13180 = mul nsw i32 58, %13179
  %13181 = add nsw i32 %13178, %13180
  %13182 = sext i32 %13181 to i64
  %13183 = getelementptr inbounds double, ptr %13177, i64 %13182
  %13184 = load double, ptr %13183, align 8, !tbaa !11
  %13185 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %13184, double %13176)
  %13186 = load ptr, ptr %7, align 8, !tbaa !9
  %13187 = load i32, ptr %12, align 4, !tbaa !5
  %13188 = load i32, ptr %8, align 4, !tbaa !5
  %13189 = mul nsw i32 60, %13188
  %13190 = add nsw i32 %13187, %13189
  %13191 = sext i32 %13190 to i64
  %13192 = getelementptr inbounds double, ptr %13186, i64 %13191
  %13193 = load double, ptr %13192, align 8, !tbaa !11
  %13194 = call double @llvm.fmuladd.f64(double 0xBC94DC12067D4B20, double %13193, double %13185)
  %13195 = load ptr, ptr %7, align 8, !tbaa !9
  %13196 = load i32, ptr %12, align 4, !tbaa !5
  %13197 = load i32, ptr %8, align 4, !tbaa !5
  %13198 = mul nsw i32 61, %13197
  %13199 = add nsw i32 %13196, %13198
  %13200 = sext i32 %13199 to i64
  %13201 = getelementptr inbounds double, ptr %13195, i64 %13200
  %13202 = load double, ptr %13201, align 8, !tbaa !11
  %13203 = call double @llvm.fmuladd.f64(double 0xBC9536948017480F, double %13202, double %13194)
  %13204 = load ptr, ptr %7, align 8, !tbaa !9
  %13205 = load i32, ptr %12, align 4, !tbaa !5
  %13206 = load i32, ptr %8, align 4, !tbaa !5
  %13207 = mul nsw i32 62, %13206
  %13208 = add nsw i32 %13205, %13207
  %13209 = sext i32 %13208 to i64
  %13210 = getelementptr inbounds double, ptr %13204, i64 %13209
  %13211 = load double, ptr %13210, align 8, !tbaa !11
  %13212 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %13211, double %13203)
  %13213 = load ptr, ptr %7, align 8, !tbaa !9
  %13214 = load i32, ptr %12, align 4, !tbaa !5
  %13215 = load i32, ptr %8, align 4, !tbaa !5
  %13216 = mul nsw i32 63, %13215
  %13217 = add nsw i32 %13214, %13216
  %13218 = sext i32 %13217 to i64
  %13219 = getelementptr inbounds double, ptr %13213, i64 %13218
  %13220 = load double, ptr %13219, align 8, !tbaa !11
  %13221 = call double @llvm.fmuladd.f64(double 0x3C96A09E667F3BCC, double %13220, double %13212)
  %13222 = load ptr, ptr %7, align 8, !tbaa !9
  %13223 = load i32, ptr %12, align 4, !tbaa !5
  %13224 = load i32, ptr %8, align 4, !tbaa !5
  %13225 = mul nsw i32 64, %13224
  %13226 = add nsw i32 %13223, %13225
  %13227 = sext i32 %13226 to i64
  %13228 = getelementptr inbounds double, ptr %13222, i64 %13227
  %13229 = load double, ptr %13228, align 8, !tbaa !11
  %13230 = call double @llvm.fmuladd.f64(double 0x3C53CC8A99AF5452, double %13229, double %13221)
  %13231 = load ptr, ptr %7, align 8, !tbaa !9
  %13232 = load i32, ptr %12, align 4, !tbaa !5
  %13233 = load i32, ptr %8, align 4, !tbaa !5
  %13234 = mul nsw i32 65, %13233
  %13235 = add nsw i32 %13232, %13234
  %13236 = sext i32 %13235 to i64
  %13237 = getelementptr inbounds double, ptr %13231, i64 %13236
  %13238 = load double, ptr %13237, align 8, !tbaa !11
  %13239 = call double @llvm.fmuladd.f64(double 0x3C8536948017480E, double %13238, double %13230)
  %13240 = load ptr, ptr %7, align 8, !tbaa !9
  %13241 = load i32, ptr %12, align 4, !tbaa !5
  %13242 = load i32, ptr %8, align 4, !tbaa !5
  %13243 = mul nsw i32 66, %13242
  %13244 = add nsw i32 %13241, %13243
  %13245 = sext i32 %13244 to i64
  %13246 = getelementptr inbounds double, ptr %13240, i64 %13245
  %13247 = load double, ptr %13246, align 8, !tbaa !11
  %13248 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %13247, double %13239)
  %13249 = load ptr, ptr %7, align 8, !tbaa !9
  %13250 = load i32, ptr %12, align 4, !tbaa !5
  %13251 = load i32, ptr %8, align 4, !tbaa !5
  %13252 = mul nsw i32 67, %13251
  %13253 = add nsw i32 %13250, %13252
  %13254 = sext i32 %13253 to i64
  %13255 = getelementptr inbounds double, ptr %13249, i64 %13254
  %13256 = load double, ptr %13255, align 8, !tbaa !11
  %13257 = call double @llvm.fmuladd.f64(double 0x3C93CC8A99AF5452, double %13256, double %13248)
  store double %13257, ptr %11, align 8, !tbaa !11
  %13258 = load double, ptr %11, align 8, !tbaa !11
  %13259 = load ptr, ptr %9, align 8, !tbaa !9
  %13260 = load i32, ptr %12, align 4, !tbaa !5
  %13261 = load i32, ptr %10, align 4, !tbaa !5
  %13262 = mul nsw i32 45, %13261
  %13263 = add nsw i32 %13260, %13262
  %13264 = sext i32 %13263 to i64
  %13265 = getelementptr inbounds double, ptr %13259, i64 %13264
  %13266 = load double, ptr %13265, align 8, !tbaa !11
  %13267 = fadd double %13266, %13258
  store double %13267, ptr %13265, align 8, !tbaa !11
  %13268 = load ptr, ptr %7, align 8, !tbaa !9
  %13269 = load i32, ptr %12, align 4, !tbaa !5
  %13270 = load i32, ptr %8, align 4, !tbaa !5
  %13271 = mul nsw i32 20, %13270
  %13272 = add nsw i32 %13269, %13271
  %13273 = sext i32 %13272 to i64
  %13274 = getelementptr inbounds double, ptr %13268, i64 %13273
  %13275 = load double, ptr %13274, align 8, !tbaa !11
  %13276 = load ptr, ptr %7, align 8, !tbaa !9
  %13277 = load i32, ptr %12, align 4, !tbaa !5
  %13278 = load i32, ptr %8, align 4, !tbaa !5
  %13279 = mul nsw i32 21, %13278
  %13280 = add nsw i32 %13277, %13279
  %13281 = sext i32 %13280 to i64
  %13282 = getelementptr inbounds double, ptr %13276, i64 %13281
  %13283 = load double, ptr %13282, align 8, !tbaa !11
  %13284 = fmul double 0xC01043858A1F5993, %13283
  %13285 = call double @llvm.fmuladd.f64(double 0xBFD767140476511D, double %13275, double %13284)
  %13286 = load ptr, ptr %7, align 8, !tbaa !9
  %13287 = load i32, ptr %12, align 4, !tbaa !5
  %13288 = load i32, ptr %8, align 4, !tbaa !5
  %13289 = mul nsw i32 22, %13288
  %13290 = add nsw i32 %13287, %13289
  %13291 = sext i32 %13290 to i64
  %13292 = getelementptr inbounds double, ptr %13286, i64 %13291
  %13293 = load double, ptr %13292, align 8, !tbaa !11
  %13294 = call double @llvm.fmuladd.f64(double 0xBFD7BAC3393ADDD9, double %13293, double %13285)
  %13295 = load ptr, ptr %7, align 8, !tbaa !9
  %13296 = load i32, ptr %12, align 4, !tbaa !5
  %13297 = load i32, ptr %8, align 4, !tbaa !5
  %13298 = mul nsw i32 23, %13297
  %13299 = add nsw i32 %13296, %13298
  %13300 = sext i32 %13299 to i64
  %13301 = getelementptr inbounds double, ptr %13295, i64 %13300
  %13302 = load double, ptr %13301, align 8, !tbaa !11
  %13303 = call double @llvm.fmuladd.f64(double 0x3FC1964E14FA3C62, double %13302, double %13294)
  %13304 = load ptr, ptr %7, align 8, !tbaa !9
  %13305 = load i32, ptr %12, align 4, !tbaa !5
  %13306 = load i32, ptr %8, align 4, !tbaa !5
  %13307 = mul nsw i32 25, %13306
  %13308 = add nsw i32 %13305, %13307
  %13309 = sext i32 %13308 to i64
  %13310 = getelementptr inbounds double, ptr %13304, i64 %13309
  %13311 = load double, ptr %13310, align 8, !tbaa !11
  %13312 = call double @llvm.fmuladd.f64(double 0xBCD3A00000000001, double %13311, double %13303)
  %13313 = load ptr, ptr %7, align 8, !tbaa !9
  %13314 = load i32, ptr %12, align 4, !tbaa !5
  %13315 = load i32, ptr %8, align 4, !tbaa !5
  %13316 = mul nsw i32 26, %13315
  %13317 = add nsw i32 %13314, %13316
  %13318 = sext i32 %13317 to i64
  %13319 = getelementptr inbounds double, ptr %13313, i64 %13318
  %13320 = load double, ptr %13319, align 8, !tbaa !11
  %13321 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %13320, double %13312)
  %13322 = load ptr, ptr %7, align 8, !tbaa !9
  %13323 = load i32, ptr %12, align 4, !tbaa !5
  %13324 = load i32, ptr %8, align 4, !tbaa !5
  %13325 = mul nsw i32 27, %13324
  %13326 = add nsw i32 %13323, %13325
  %13327 = sext i32 %13326 to i64
  %13328 = getelementptr inbounds double, ptr %13322, i64 %13327
  %13329 = load double, ptr %13328, align 8, !tbaa !11
  %13330 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %13329, double %13321)
  %13331 = load ptr, ptr %7, align 8, !tbaa !9
  %13332 = load i32, ptr %12, align 4, !tbaa !5
  %13333 = load i32, ptr %8, align 4, !tbaa !5
  %13334 = mul nsw i32 29, %13333
  %13335 = add nsw i32 %13332, %13334
  %13336 = sext i32 %13335 to i64
  %13337 = getelementptr inbounds double, ptr %13331, i64 %13336
  %13338 = load double, ptr %13337, align 8, !tbaa !11
  %13339 = call double @llvm.fmuladd.f64(double 0xBCC8C00000000000, double %13338, double %13330)
  %13340 = load ptr, ptr %7, align 8, !tbaa !9
  %13341 = load i32, ptr %12, align 4, !tbaa !5
  %13342 = load i32, ptr %8, align 4, !tbaa !5
  %13343 = mul nsw i32 30, %13342
  %13344 = add nsw i32 %13341, %13343
  %13345 = sext i32 %13344 to i64
  %13346 = getelementptr inbounds double, ptr %13340, i64 %13345
  %13347 = load double, ptr %13346, align 8, !tbaa !11
  %13348 = call double @llvm.fmuladd.f64(double 0xBC96000000000000, double %13347, double %13339)
  %13349 = load ptr, ptr %7, align 8, !tbaa !9
  %13350 = load i32, ptr %12, align 4, !tbaa !5
  %13351 = load i32, ptr %8, align 4, !tbaa !5
  %13352 = mul nsw i32 31, %13351
  %13353 = add nsw i32 %13350, %13352
  %13354 = sext i32 %13353 to i64
  %13355 = getelementptr inbounds double, ptr %13349, i64 %13354
  %13356 = load double, ptr %13355, align 8, !tbaa !11
  %13357 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %13356, double %13348)
  %13358 = load ptr, ptr %7, align 8, !tbaa !9
  %13359 = load i32, ptr %12, align 4, !tbaa !5
  %13360 = load i32, ptr %8, align 4, !tbaa !5
  %13361 = mul nsw i32 32, %13360
  %13362 = add nsw i32 %13359, %13361
  %13363 = sext i32 %13362 to i64
  %13364 = getelementptr inbounds double, ptr %13358, i64 %13363
  %13365 = load double, ptr %13364, align 8, !tbaa !11
  %13366 = call double @llvm.fmuladd.f64(double 0xBC9A000000000000, double %13365, double %13357)
  %13367 = load ptr, ptr %7, align 8, !tbaa !9
  %13368 = load i32, ptr %12, align 4, !tbaa !5
  %13369 = load i32, ptr %8, align 4, !tbaa !5
  %13370 = mul nsw i32 33, %13369
  %13371 = add nsw i32 %13368, %13370
  %13372 = sext i32 %13371 to i64
  %13373 = getelementptr inbounds double, ptr %13367, i64 %13372
  %13374 = load double, ptr %13373, align 8, !tbaa !11
  %13375 = call double @llvm.fmuladd.f64(double 0xBCC4400000000000, double %13374, double %13366)
  %13376 = load ptr, ptr %7, align 8, !tbaa !9
  %13377 = load i32, ptr %12, align 4, !tbaa !5
  %13378 = load i32, ptr %8, align 4, !tbaa !5
  %13379 = mul nsw i32 34, %13378
  %13380 = add nsw i32 %13377, %13379
  %13381 = sext i32 %13380 to i64
  %13382 = getelementptr inbounds double, ptr %13376, i64 %13381
  %13383 = load double, ptr %13382, align 8, !tbaa !11
  %13384 = call double @llvm.fmuladd.f64(double 0xBCA1000000000001, double %13383, double %13375)
  %13385 = load ptr, ptr %7, align 8, !tbaa !9
  %13386 = load i32, ptr %12, align 4, !tbaa !5
  %13387 = load i32, ptr %8, align 4, !tbaa !5
  %13388 = mul nsw i32 35, %13387
  %13389 = add nsw i32 %13386, %13388
  %13390 = sext i32 %13389 to i64
  %13391 = getelementptr inbounds double, ptr %13385, i64 %13390
  %13392 = load double, ptr %13391, align 8, !tbaa !11
  %13393 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %13392, double %13384)
  %13394 = load ptr, ptr %7, align 8, !tbaa !9
  %13395 = load i32, ptr %12, align 4, !tbaa !5
  %13396 = load i32, ptr %8, align 4, !tbaa !5
  %13397 = mul nsw i32 52, %13396
  %13398 = add nsw i32 %13395, %13397
  %13399 = sext i32 %13398 to i64
  %13400 = getelementptr inbounds double, ptr %13394, i64 %13399
  %13401 = load double, ptr %13400, align 8, !tbaa !11
  %13402 = call double @llvm.fmuladd.f64(double 0x3FD6A4D32EB1F718, double %13401, double %13393)
  %13403 = load ptr, ptr %7, align 8, !tbaa !9
  %13404 = load i32, ptr %12, align 4, !tbaa !5
  %13405 = load i32, ptr %8, align 4, !tbaa !5
  %13406 = mul nsw i32 53, %13405
  %13407 = add nsw i32 %13404, %13406
  %13408 = sext i32 %13407 to i64
  %13409 = getelementptr inbounds double, ptr %13403, i64 %13408
  %13410 = load double, ptr %13409, align 8, !tbaa !11
  %13411 = call double @llvm.fmuladd.f64(double 0x3FE3C4545BCF030B, double %13410, double %13402)
  %13412 = load ptr, ptr %7, align 8, !tbaa !9
  %13413 = load i32, ptr %12, align 4, !tbaa !5
  %13414 = load i32, ptr %8, align 4, !tbaa !5
  %13415 = mul nsw i32 54, %13414
  %13416 = add nsw i32 %13413, %13415
  %13417 = sext i32 %13416 to i64
  %13418 = getelementptr inbounds double, ptr %13412, i64 %13417
  %13419 = load double, ptr %13418, align 8, !tbaa !11
  %13420 = call double @llvm.fmuladd.f64(double 0x3FCD5953692F6EA3, double %13419, double %13411)
  %13421 = load ptr, ptr %7, align 8, !tbaa !9
  %13422 = load i32, ptr %12, align 4, !tbaa !5
  %13423 = load i32, ptr %8, align 4, !tbaa !5
  %13424 = mul nsw i32 55, %13423
  %13425 = add nsw i32 %13422, %13424
  %13426 = sext i32 %13425 to i64
  %13427 = getelementptr inbounds double, ptr %13421, i64 %13426
  %13428 = load double, ptr %13427, align 8, !tbaa !11
  %13429 = call double @llvm.fmuladd.f64(double 0xBF9102DA00B18A2C, double %13428, double %13420)
  %13430 = load ptr, ptr %7, align 8, !tbaa !9
  %13431 = load i32, ptr %12, align 4, !tbaa !5
  %13432 = load i32, ptr %8, align 4, !tbaa !5
  %13433 = mul nsw i32 56, %13432
  %13434 = add nsw i32 %13431, %13433
  %13435 = sext i32 %13434 to i64
  %13436 = getelementptr inbounds double, ptr %13430, i64 %13435
  %13437 = load double, ptr %13436, align 8, !tbaa !11
  %13438 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %13437, double %13429)
  %13439 = load ptr, ptr %7, align 8, !tbaa !9
  %13440 = load i32, ptr %12, align 4, !tbaa !5
  %13441 = load i32, ptr %8, align 4, !tbaa !5
  %13442 = mul nsw i32 57, %13441
  %13443 = add nsw i32 %13440, %13442
  %13444 = sext i32 %13443 to i64
  %13445 = getelementptr inbounds double, ptr %13439, i64 %13444
  %13446 = load double, ptr %13445, align 8, !tbaa !11
  %13447 = call double @llvm.fmuladd.f64(double 0x3CB344C6E34858EB, double %13446, double %13438)
  %13448 = load ptr, ptr %7, align 8, !tbaa !9
  %13449 = load i32, ptr %12, align 4, !tbaa !5
  %13450 = load i32, ptr %8, align 4, !tbaa !5
  %13451 = mul nsw i32 58, %13450
  %13452 = add nsw i32 %13449, %13451
  %13453 = sext i32 %13452 to i64
  %13454 = getelementptr inbounds double, ptr %13448, i64 %13453
  %13455 = load double, ptr %13454, align 8, !tbaa !11
  %13456 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %13455, double %13447)
  %13457 = load ptr, ptr %7, align 8, !tbaa !9
  %13458 = load i32, ptr %12, align 4, !tbaa !5
  %13459 = load i32, ptr %8, align 4, !tbaa !5
  %13460 = mul nsw i32 59, %13459
  %13461 = add nsw i32 %13458, %13460
  %13462 = sext i32 %13461 to i64
  %13463 = getelementptr inbounds double, ptr %13457, i64 %13462
  %13464 = load double, ptr %13463, align 8, !tbaa !11
  %13465 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %13464, double %13456)
  %13466 = load ptr, ptr %7, align 8, !tbaa !9
  %13467 = load i32, ptr %12, align 4, !tbaa !5
  %13468 = load i32, ptr %8, align 4, !tbaa !5
  %13469 = mul nsw i32 60, %13468
  %13470 = add nsw i32 %13467, %13469
  %13471 = sext i32 %13470 to i64
  %13472 = getelementptr inbounds double, ptr %13466, i64 %13471
  %13473 = load double, ptr %13472, align 8, !tbaa !11
  %13474 = call double @llvm.fmuladd.f64(double 0xBC9C48C6001F0ABF, double %13473, double %13465)
  %13475 = load ptr, ptr %7, align 8, !tbaa !9
  %13476 = load i32, ptr %12, align 4, !tbaa !5
  %13477 = load i32, ptr %8, align 4, !tbaa !5
  %13478 = mul nsw i32 61, %13477
  %13479 = add nsw i32 %13476, %13478
  %13480 = sext i32 %13479 to i64
  %13481 = getelementptr inbounds double, ptr %13475, i64 %13480
  %13482 = load double, ptr %13481, align 8, !tbaa !11
  %13483 = call double @llvm.fmuladd.f64(double 0xBC9FD1DEC022EC15, double %13482, double %13474)
  %13484 = load ptr, ptr %7, align 8, !tbaa !9
  %13485 = load i32, ptr %12, align 4, !tbaa !5
  %13486 = load i32, ptr %8, align 4, !tbaa !5
  %13487 = mul nsw i32 62, %13486
  %13488 = add nsw i32 %13485, %13487
  %13489 = sext i32 %13488 to i64
  %13490 = getelementptr inbounds double, ptr %13484, i64 %13489
  %13491 = load double, ptr %13490, align 8, !tbaa !11
  %13492 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %13491, double %13483)
  %13493 = load ptr, ptr %7, align 8, !tbaa !9
  %13494 = load i32, ptr %12, align 4, !tbaa !5
  %13495 = load i32, ptr %8, align 4, !tbaa !5
  %13496 = mul nsw i32 63, %13495
  %13497 = add nsw i32 %13494, %13496
  %13498 = sext i32 %13497 to i64
  %13499 = getelementptr inbounds double, ptr %13493, i64 %13498
  %13500 = load double, ptr %13499, align 8, !tbaa !11
  %13501 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %13500, double %13492)
  %13502 = load ptr, ptr %7, align 8, !tbaa !9
  %13503 = load i32, ptr %12, align 4, !tbaa !5
  %13504 = load i32, ptr %8, align 4, !tbaa !5
  %13505 = mul nsw i32 64, %13504
  %13506 = add nsw i32 %13503, %13505
  %13507 = sext i32 %13506 to i64
  %13508 = getelementptr inbounds double, ptr %13502, i64 %13507
  %13509 = load double, ptr %13508, align 8, !tbaa !11
  %13510 = call double @llvm.fmuladd.f64(double 0x3C86461BECE53EDC, double %13509, double %13501)
  %13511 = load ptr, ptr %7, align 8, !tbaa !9
  %13512 = load i32, ptr %12, align 4, !tbaa !5
  %13513 = load i32, ptr %8, align 4, !tbaa !5
  %13514 = mul nsw i32 65, %13513
  %13515 = add nsw i32 %13512, %13514
  %13516 = sext i32 %13515 to i64
  %13517 = getelementptr inbounds double, ptr %13511, i64 %13516
  %13518 = load double, ptr %13517, align 8, !tbaa !11
  %13519 = call double @llvm.fmuladd.f64(double 0x3CA196DB21ACE77D, double %13518, double %13510)
  %13520 = load ptr, ptr %7, align 8, !tbaa !9
  %13521 = load i32, ptr %12, align 4, !tbaa !5
  %13522 = load i32, ptr %8, align 4, !tbaa !5
  %13523 = mul nsw i32 66, %13522
  %13524 = add nsw i32 %13521, %13523
  %13525 = sext i32 %13524 to i64
  %13526 = getelementptr inbounds double, ptr %13520, i64 %13525
  %13527 = load double, ptr %13526, align 8, !tbaa !11
  %13528 = call double @llvm.fmuladd.f64(double 0x3C9ADEBC19B71702, double %13527, double %13519)
  store double %13528, ptr %11, align 8, !tbaa !11
  %13529 = load double, ptr %11, align 8, !tbaa !11
  %13530 = load ptr, ptr %9, align 8, !tbaa !9
  %13531 = load i32, ptr %12, align 4, !tbaa !5
  %13532 = load i32, ptr %10, align 4, !tbaa !5
  %13533 = mul nsw i32 46, %13532
  %13534 = add nsw i32 %13531, %13533
  %13535 = sext i32 %13534 to i64
  %13536 = getelementptr inbounds double, ptr %13530, i64 %13535
  %13537 = load double, ptr %13536, align 8, !tbaa !11
  %13538 = fadd double %13537, %13529
  store double %13538, ptr %13536, align 8, !tbaa !11
  %13539 = load ptr, ptr %7, align 8, !tbaa !9
  %13540 = load i32, ptr %12, align 4, !tbaa !5
  %13541 = load i32, ptr %8, align 4, !tbaa !5
  %13542 = mul nsw i32 20, %13541
  %13543 = add nsw i32 %13540, %13542
  %13544 = sext i32 %13543 to i64
  %13545 = getelementptr inbounds double, ptr %13539, i64 %13544
  %13546 = load double, ptr %13545, align 8, !tbaa !11
  %13547 = load ptr, ptr %7, align 8, !tbaa !9
  %13548 = load i32, ptr %12, align 4, !tbaa !5
  %13549 = load i32, ptr %8, align 4, !tbaa !5
  %13550 = mul nsw i32 21, %13549
  %13551 = add nsw i32 %13548, %13550
  %13552 = sext i32 %13551 to i64
  %13553 = getelementptr inbounds double, ptr %13547, i64 %13552
  %13554 = load double, ptr %13553, align 8, !tbaa !11
  %13555 = fmul double 0xBFD7BAC3393ADDC0, %13554
  %13556 = call double @llvm.fmuladd.f64(double 0x3FC1964E14FA3C4C, double %13546, double %13555)
  %13557 = load ptr, ptr %7, align 8, !tbaa !9
  %13558 = load i32, ptr %12, align 4, !tbaa !5
  %13559 = load i32, ptr %8, align 4, !tbaa !5
  %13560 = mul nsw i32 22, %13559
  %13561 = add nsw i32 %13558, %13560
  %13562 = sext i32 %13561 to i64
  %13563 = getelementptr inbounds double, ptr %13557, i64 %13562
  %13564 = load double, ptr %13563, align 8, !tbaa !11
  %13565 = call double @llvm.fmuladd.f64(double 0xC01043858A1F5994, double %13564, double %13556)
  %13566 = load ptr, ptr %7, align 8, !tbaa !9
  %13567 = load i32, ptr %12, align 4, !tbaa !5
  %13568 = load i32, ptr %8, align 4, !tbaa !5
  %13569 = mul nsw i32 23, %13568
  %13570 = add nsw i32 %13567, %13569
  %13571 = sext i32 %13570 to i64
  %13572 = getelementptr inbounds double, ptr %13566, i64 %13571
  %13573 = load double, ptr %13572, align 8, !tbaa !11
  %13574 = call double @llvm.fmuladd.f64(double 0xBFD7671404765136, double %13573, double %13565)
  %13575 = load ptr, ptr %7, align 8, !tbaa !9
  %13576 = load i32, ptr %12, align 4, !tbaa !5
  %13577 = load i32, ptr %8, align 4, !tbaa !5
  %13578 = mul nsw i32 24, %13577
  %13579 = add nsw i32 %13576, %13578
  %13580 = sext i32 %13579 to i64
  %13581 = getelementptr inbounds double, ptr %13575, i64 %13580
  %13582 = load double, ptr %13581, align 8, !tbaa !11
  %13583 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %13582, double %13574)
  %13584 = load ptr, ptr %7, align 8, !tbaa !9
  %13585 = load i32, ptr %12, align 4, !tbaa !5
  %13586 = load i32, ptr %8, align 4, !tbaa !5
  %13587 = mul nsw i32 26, %13586
  %13588 = add nsw i32 %13585, %13587
  %13589 = sext i32 %13588 to i64
  %13590 = getelementptr inbounds double, ptr %13584, i64 %13589
  %13591 = load double, ptr %13590, align 8, !tbaa !11
  %13592 = call double @llvm.fmuladd.f64(double 0xBCC0800000000000, double %13591, double %13583)
  %13593 = load ptr, ptr %7, align 8, !tbaa !9
  %13594 = load i32, ptr %12, align 4, !tbaa !5
  %13595 = load i32, ptr %8, align 4, !tbaa !5
  %13596 = mul nsw i32 27, %13595
  %13597 = add nsw i32 %13594, %13596
  %13598 = sext i32 %13597 to i64
  %13599 = getelementptr inbounds double, ptr %13593, i64 %13598
  %13600 = load double, ptr %13599, align 8, !tbaa !11
  %13601 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %13600, double %13592)
  %13602 = load ptr, ptr %7, align 8, !tbaa !9
  %13603 = load i32, ptr %12, align 4, !tbaa !5
  %13604 = load i32, ptr %8, align 4, !tbaa !5
  %13605 = mul nsw i32 28, %13604
  %13606 = add nsw i32 %13603, %13605
  %13607 = sext i32 %13606 to i64
  %13608 = getelementptr inbounds double, ptr %13602, i64 %13607
  %13609 = load double, ptr %13608, align 8, !tbaa !11
  %13610 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %13609, double %13601)
  %13611 = load ptr, ptr %7, align 8, !tbaa !9
  %13612 = load i32, ptr %12, align 4, !tbaa !5
  %13613 = load i32, ptr %8, align 4, !tbaa !5
  %13614 = mul nsw i32 29, %13613
  %13615 = add nsw i32 %13612, %13614
  %13616 = sext i32 %13615 to i64
  %13617 = getelementptr inbounds double, ptr %13611, i64 %13616
  %13618 = load double, ptr %13617, align 8, !tbaa !11
  %13619 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %13618, double %13610)
  %13620 = load ptr, ptr %7, align 8, !tbaa !9
  %13621 = load i32, ptr %12, align 4, !tbaa !5
  %13622 = load i32, ptr %8, align 4, !tbaa !5
  %13623 = mul nsw i32 30, %13622
  %13624 = add nsw i32 %13621, %13623
  %13625 = sext i32 %13624 to i64
  %13626 = getelementptr inbounds double, ptr %13620, i64 %13625
  %13627 = load double, ptr %13626, align 8, !tbaa !11
  %13628 = call double @llvm.fmuladd.f64(double 0xBCBF000000000001, double %13627, double %13619)
  %13629 = load ptr, ptr %7, align 8, !tbaa !9
  %13630 = load i32, ptr %12, align 4, !tbaa !5
  %13631 = load i32, ptr %8, align 4, !tbaa !5
  %13632 = mul nsw i32 31, %13631
  %13633 = add nsw i32 %13630, %13632
  %13634 = sext i32 %13633 to i64
  %13635 = getelementptr inbounds double, ptr %13629, i64 %13634
  %13636 = load double, ptr %13635, align 8, !tbaa !11
  %13637 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %13636, double %13628)
  %13638 = load ptr, ptr %7, align 8, !tbaa !9
  %13639 = load i32, ptr %12, align 4, !tbaa !5
  %13640 = load i32, ptr %8, align 4, !tbaa !5
  %13641 = mul nsw i32 32, %13640
  %13642 = add nsw i32 %13639, %13641
  %13643 = sext i32 %13642 to i64
  %13644 = getelementptr inbounds double, ptr %13638, i64 %13643
  %13645 = load double, ptr %13644, align 8, !tbaa !11
  %13646 = call double @llvm.fmuladd.f64(double 0x3C82000000000000, double %13645, double %13637)
  %13647 = load ptr, ptr %7, align 8, !tbaa !9
  %13648 = load i32, ptr %12, align 4, !tbaa !5
  %13649 = load i32, ptr %8, align 4, !tbaa !5
  %13650 = mul nsw i32 33, %13649
  %13651 = add nsw i32 %13648, %13650
  %13652 = sext i32 %13651 to i64
  %13653 = getelementptr inbounds double, ptr %13647, i64 %13652
  %13654 = load double, ptr %13653, align 8, !tbaa !11
  %13655 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %13654, double %13646)
  %13656 = load ptr, ptr %7, align 8, !tbaa !9
  %13657 = load i32, ptr %12, align 4, !tbaa !5
  %13658 = load i32, ptr %8, align 4, !tbaa !5
  %13659 = mul nsw i32 34, %13658
  %13660 = add nsw i32 %13657, %13659
  %13661 = sext i32 %13660 to i64
  %13662 = getelementptr inbounds double, ptr %13656, i64 %13661
  %13663 = load double, ptr %13662, align 8, !tbaa !11
  %13664 = call double @llvm.fmuladd.f64(double 0xBCC5000000000000, double %13663, double %13655)
  %13665 = load ptr, ptr %7, align 8, !tbaa !9
  %13666 = load i32, ptr %12, align 4, !tbaa !5
  %13667 = load i32, ptr %8, align 4, !tbaa !5
  %13668 = mul nsw i32 35, %13667
  %13669 = add nsw i32 %13666, %13668
  %13670 = sext i32 %13669 to i64
  %13671 = getelementptr inbounds double, ptr %13665, i64 %13670
  %13672 = load double, ptr %13671, align 8, !tbaa !11
  %13673 = call double @llvm.fmuladd.f64(double 0xBCA0800000000001, double %13672, double %13664)
  %13674 = load ptr, ptr %7, align 8, !tbaa !9
  %13675 = load i32, ptr %12, align 4, !tbaa !5
  %13676 = load i32, ptr %8, align 4, !tbaa !5
  %13677 = mul nsw i32 52, %13676
  %13678 = add nsw i32 %13675, %13677
  %13679 = sext i32 %13678 to i64
  %13680 = getelementptr inbounds double, ptr %13674, i64 %13679
  %13681 = load double, ptr %13680, align 8, !tbaa !11
  %13682 = call double @llvm.fmuladd.f64(double 0xBFE7007BFD8FD859, double %13681, double %13673)
  %13683 = load ptr, ptr %7, align 8, !tbaa !9
  %13684 = load i32, ptr %12, align 4, !tbaa !5
  %13685 = load i32, ptr %8, align 4, !tbaa !5
  %13686 = mul nsw i32 53, %13685
  %13687 = add nsw i32 %13684, %13686
  %13688 = sext i32 %13687 to i64
  %13689 = getelementptr inbounds double, ptr %13683, i64 %13688
  %13690 = load double, ptr %13689, align 8, !tbaa !11
  %13691 = call double @llvm.fmuladd.f64(double 0xBFE66643AEED3706, double %13690, double %13682)
  %13692 = load ptr, ptr %7, align 8, !tbaa !9
  %13693 = load i32, ptr %12, align 4, !tbaa !5
  %13694 = load i32, ptr %8, align 4, !tbaa !5
  %13695 = mul nsw i32 54, %13694
  %13696 = add nsw i32 %13693, %13695
  %13697 = sext i32 %13696 to i64
  %13698 = getelementptr inbounds double, ptr %13692, i64 %13697
  %13699 = load double, ptr %13698, align 8, !tbaa !11
  %13700 = call double @llvm.fmuladd.f64(double 0x3FAD5B74B5F10E94, double %13699, double %13691)
  %13701 = load ptr, ptr %7, align 8, !tbaa !9
  %13702 = load i32, ptr %12, align 4, !tbaa !5
  %13703 = load i32, ptr %8, align 4, !tbaa !5
  %13704 = mul nsw i32 55, %13703
  %13705 = add nsw i32 %13702, %13704
  %13706 = sext i32 %13705 to i64
  %13707 = getelementptr inbounds double, ptr %13701, i64 %13706
  %13708 = load double, ptr %13707, align 8, !tbaa !11
  %13709 = call double @llvm.fmuladd.f64(double 0x3FA3F41B0E87BFBB, double %13708, double %13700)
  %13710 = load ptr, ptr %7, align 8, !tbaa !9
  %13711 = load i32, ptr %12, align 4, !tbaa !5
  %13712 = load i32, ptr %8, align 4, !tbaa !5
  %13713 = mul nsw i32 56, %13712
  %13714 = add nsw i32 %13711, %13713
  %13715 = sext i32 %13714 to i64
  %13716 = getelementptr inbounds double, ptr %13710, i64 %13715
  %13717 = load double, ptr %13716, align 8, !tbaa !11
  %13718 = call double @llvm.fmuladd.f64(double 0xBCA344C6E34858EB, double %13717, double %13709)
  %13719 = load ptr, ptr %7, align 8, !tbaa !9
  %13720 = load i32, ptr %12, align 4, !tbaa !5
  %13721 = load i32, ptr %8, align 4, !tbaa !5
  %13722 = mul nsw i32 57, %13721
  %13723 = add nsw i32 %13720, %13722
  %13724 = sext i32 %13723 to i64
  %13725 = getelementptr inbounds double, ptr %13719, i64 %13724
  %13726 = load double, ptr %13725, align 8, !tbaa !11
  %13727 = call double @llvm.fmuladd.f64(double 0x3C91AD7BC01366B7, double %13726, double %13718)
  %13728 = load ptr, ptr %7, align 8, !tbaa !9
  %13729 = load i32, ptr %12, align 4, !tbaa !5
  %13730 = load i32, ptr %8, align 4, !tbaa !5
  %13731 = mul nsw i32 58, %13730
  %13732 = add nsw i32 %13729, %13731
  %13733 = sext i32 %13732 to i64
  %13734 = getelementptr inbounds double, ptr %13728, i64 %13733
  %13735 = load double, ptr %13734, align 8, !tbaa !11
  %13736 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %13735, double %13727)
  %13737 = load ptr, ptr %7, align 8, !tbaa !9
  %13738 = load i32, ptr %12, align 4, !tbaa !5
  %13739 = load i32, ptr %8, align 4, !tbaa !5
  %13740 = mul nsw i32 59, %13739
  %13741 = add nsw i32 %13738, %13740
  %13742 = sext i32 %13741 to i64
  %13743 = getelementptr inbounds double, ptr %13737, i64 %13742
  %13744 = load double, ptr %13743, align 8, !tbaa !11
  %13745 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %13744, double %13736)
  %13746 = load ptr, ptr %7, align 8, !tbaa !9
  %13747 = load i32, ptr %12, align 4, !tbaa !5
  %13748 = load i32, ptr %8, align 4, !tbaa !5
  %13749 = mul nsw i32 60, %13748
  %13750 = add nsw i32 %13747, %13749
  %13751 = sext i32 %13750 to i64
  %13752 = getelementptr inbounds double, ptr %13746, i64 %13751
  %13753 = load double, ptr %13752, align 8, !tbaa !11
  %13754 = call double @llvm.fmuladd.f64(double 0x3CA344C6E34858EB, double %13753, double %13745)
  %13755 = load ptr, ptr %7, align 8, !tbaa !9
  %13756 = load i32, ptr %12, align 4, !tbaa !5
  %13757 = load i32, ptr %8, align 4, !tbaa !5
  %13758 = mul nsw i32 61, %13757
  %13759 = add nsw i32 %13756, %13758
  %13760 = sext i32 %13759 to i64
  %13761 = getelementptr inbounds double, ptr %13755, i64 %13760
  %13762 = load double, ptr %13761, align 8, !tbaa !11
  %13763 = call double @llvm.fmuladd.f64(double 0x3C73CC8A99AF5453, double %13762, double %13754)
  %13764 = load ptr, ptr %7, align 8, !tbaa !9
  %13765 = load i32, ptr %12, align 4, !tbaa !5
  %13766 = load i32, ptr %8, align 4, !tbaa !5
  %13767 = mul nsw i32 62, %13766
  %13768 = add nsw i32 %13765, %13767
  %13769 = sext i32 %13768 to i64
  %13770 = getelementptr inbounds double, ptr %13764, i64 %13769
  %13771 = load double, ptr %13770, align 8, !tbaa !11
  %13772 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %13771, double %13763)
  %13773 = load ptr, ptr %7, align 8, !tbaa !9
  %13774 = load i32, ptr %12, align 4, !tbaa !5
  %13775 = load i32, ptr %8, align 4, !tbaa !5
  %13776 = mul nsw i32 63, %13775
  %13777 = add nsw i32 %13774, %13776
  %13778 = sext i32 %13777 to i64
  %13779 = getelementptr inbounds double, ptr %13773, i64 %13778
  %13780 = load double, ptr %13779, align 8, !tbaa !11
  %13781 = call double @llvm.fmuladd.f64(double 0xBCA0F876CCDF6CD8, double %13780, double %13772)
  %13782 = load ptr, ptr %7, align 8, !tbaa !9
  %13783 = load i32, ptr %12, align 4, !tbaa !5
  %13784 = load i32, ptr %8, align 4, !tbaa !5
  %13785 = mul nsw i32 64, %13784
  %13786 = add nsw i32 %13783, %13785
  %13787 = sext i32 %13786 to i64
  %13788 = getelementptr inbounds double, ptr %13782, i64 %13787
  %13789 = load double, ptr %13788, align 8, !tbaa !11
  %13790 = call double @llvm.fmuladd.f64(double 0xBCA13C58A812EA8E, double %13789, double %13781)
  %13791 = load ptr, ptr %7, align 8, !tbaa !9
  %13792 = load i32, ptr %12, align 4, !tbaa !5
  %13793 = load i32, ptr %8, align 4, !tbaa !5
  %13794 = mul nsw i32 65, %13793
  %13795 = add nsw i32 %13792, %13794
  %13796 = sext i32 %13795 to i64
  %13797 = getelementptr inbounds double, ptr %13791, i64 %13796
  %13798 = load double, ptr %13797, align 8, !tbaa !11
  %13799 = call double @llvm.fmuladd.f64(double 0xBCA6023A11B1C128, double %13798, double %13790)
  %13800 = load ptr, ptr %7, align 8, !tbaa !9
  %13801 = load i32, ptr %12, align 4, !tbaa !5
  %13802 = load i32, ptr %8, align 4, !tbaa !5
  %13803 = mul nsw i32 66, %13802
  %13804 = add nsw i32 %13801, %13803
  %13805 = sext i32 %13804 to i64
  %13806 = getelementptr inbounds double, ptr %13800, i64 %13805
  %13807 = load double, ptr %13806, align 8, !tbaa !11
  %13808 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %13807, double %13799)
  store double %13808, ptr %11, align 8, !tbaa !11
  %13809 = load double, ptr %11, align 8, !tbaa !11
  %13810 = load ptr, ptr %9, align 8, !tbaa !9
  %13811 = load i32, ptr %12, align 4, !tbaa !5
  %13812 = load i32, ptr %10, align 4, !tbaa !5
  %13813 = mul nsw i32 47, %13812
  %13814 = add nsw i32 %13811, %13813
  %13815 = sext i32 %13814 to i64
  %13816 = getelementptr inbounds double, ptr %13810, i64 %13815
  %13817 = load double, ptr %13816, align 8, !tbaa !11
  %13818 = fadd double %13817, %13809
  store double %13818, ptr %13816, align 8, !tbaa !11
  %13819 = load ptr, ptr %7, align 8, !tbaa !9
  %13820 = load i32, ptr %12, align 4, !tbaa !5
  %13821 = load i32, ptr %8, align 4, !tbaa !5
  %13822 = mul nsw i32 20, %13821
  %13823 = add nsw i32 %13820, %13822
  %13824 = sext i32 %13823 to i64
  %13825 = getelementptr inbounds double, ptr %13819, i64 %13824
  %13826 = load double, ptr %13825, align 8, !tbaa !11
  %13827 = load ptr, ptr %7, align 8, !tbaa !9
  %13828 = load i32, ptr %12, align 4, !tbaa !5
  %13829 = load i32, ptr %8, align 4, !tbaa !5
  %13830 = mul nsw i32 21, %13829
  %13831 = add nsw i32 %13828, %13830
  %13832 = sext i32 %13831 to i64
  %13833 = getelementptr inbounds double, ptr %13827, i64 %13832
  %13834 = load double, ptr %13833, align 8, !tbaa !11
  %13835 = fmul double 0xBFEBF462FB348EF3, %13834
  %13836 = call double @llvm.fmuladd.f64(double 0xBFE002F9665DF3D7, double %13826, double %13835)
  %13837 = load ptr, ptr %7, align 8, !tbaa !9
  %13838 = load i32, ptr %12, align 4, !tbaa !5
  %13839 = load i32, ptr %8, align 4, !tbaa !5
  %13840 = mul nsw i32 22, %13839
  %13841 = add nsw i32 %13838, %13840
  %13842 = sext i32 %13841 to i64
  %13843 = getelementptr inbounds double, ptr %13837, i64 %13842
  %13844 = load double, ptr %13843, align 8, !tbaa !11
  %13845 = call double @llvm.fmuladd.f64(double 0xBFD4C0B9406BCBCD, double %13844, double %13836)
  %13846 = load ptr, ptr %7, align 8, !tbaa !9
  %13847 = load i32, ptr %12, align 4, !tbaa !5
  %13848 = load i32, ptr %8, align 4, !tbaa !5
  %13849 = mul nsw i32 23, %13848
  %13850 = add nsw i32 %13847, %13849
  %13851 = sext i32 %13850 to i64
  %13852 = getelementptr inbounds double, ptr %13846, i64 %13851
  %13853 = load double, ptr %13852, align 8, !tbaa !11
  %13854 = call double @llvm.fmuladd.f64(double 0x3F980EB0AE1D4727, double %13853, double %13845)
  %13855 = load ptr, ptr %7, align 8, !tbaa !9
  %13856 = load i32, ptr %12, align 4, !tbaa !5
  %13857 = load i32, ptr %8, align 4, !tbaa !5
  %13858 = mul nsw i32 24, %13857
  %13859 = add nsw i32 %13856, %13858
  %13860 = sext i32 %13859 to i64
  %13861 = getelementptr inbounds double, ptr %13855, i64 %13860
  %13862 = load double, ptr %13861, align 8, !tbaa !11
  %13863 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %13862, double %13854)
  %13864 = load ptr, ptr %7, align 8, !tbaa !9
  %13865 = load i32, ptr %12, align 4, !tbaa !5
  %13866 = load i32, ptr %8, align 4, !tbaa !5
  %13867 = mul nsw i32 25, %13866
  %13868 = add nsw i32 %13865, %13867
  %13869 = sext i32 %13868 to i64
  %13870 = getelementptr inbounds double, ptr %13864, i64 %13869
  %13871 = load double, ptr %13870, align 8, !tbaa !11
  %13872 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %13871, double %13863)
  %13873 = load ptr, ptr %7, align 8, !tbaa !9
  %13874 = load i32, ptr %12, align 4, !tbaa !5
  %13875 = load i32, ptr %8, align 4, !tbaa !5
  %13876 = mul nsw i32 26, %13875
  %13877 = add nsw i32 %13874, %13876
  %13878 = sext i32 %13877 to i64
  %13879 = getelementptr inbounds double, ptr %13873, i64 %13878
  %13880 = load double, ptr %13879, align 8, !tbaa !11
  %13881 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %13880, double %13872)
  %13882 = load ptr, ptr %7, align 8, !tbaa !9
  %13883 = load i32, ptr %12, align 4, !tbaa !5
  %13884 = load i32, ptr %8, align 4, !tbaa !5
  %13885 = mul nsw i32 27, %13884
  %13886 = add nsw i32 %13883, %13885
  %13887 = sext i32 %13886 to i64
  %13888 = getelementptr inbounds double, ptr %13882, i64 %13887
  %13889 = load double, ptr %13888, align 8, !tbaa !11
  %13890 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %13889, double %13881)
  %13891 = load ptr, ptr %7, align 8, !tbaa !9
  %13892 = load i32, ptr %12, align 4, !tbaa !5
  %13893 = load i32, ptr %8, align 4, !tbaa !5
  %13894 = mul nsw i32 28, %13893
  %13895 = add nsw i32 %13892, %13894
  %13896 = sext i32 %13895 to i64
  %13897 = getelementptr inbounds double, ptr %13891, i64 %13896
  %13898 = load double, ptr %13897, align 8, !tbaa !11
  %13899 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %13898, double %13890)
  %13900 = load ptr, ptr %7, align 8, !tbaa !9
  %13901 = load i32, ptr %12, align 4, !tbaa !5
  %13902 = load i32, ptr %8, align 4, !tbaa !5
  %13903 = mul nsw i32 29, %13902
  %13904 = add nsw i32 %13901, %13903
  %13905 = sext i32 %13904 to i64
  %13906 = getelementptr inbounds double, ptr %13900, i64 %13905
  %13907 = load double, ptr %13906, align 8, !tbaa !11
  %13908 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %13907, double %13899)
  %13909 = load ptr, ptr %7, align 8, !tbaa !9
  %13910 = load i32, ptr %12, align 4, !tbaa !5
  %13911 = load i32, ptr %8, align 4, !tbaa !5
  %13912 = mul nsw i32 30, %13911
  %13913 = add nsw i32 %13910, %13912
  %13914 = sext i32 %13913 to i64
  %13915 = getelementptr inbounds double, ptr %13909, i64 %13914
  %13916 = load double, ptr %13915, align 8, !tbaa !11
  %13917 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %13916, double %13908)
  %13918 = load ptr, ptr %7, align 8, !tbaa !9
  %13919 = load i32, ptr %12, align 4, !tbaa !5
  %13920 = load i32, ptr %8, align 4, !tbaa !5
  %13921 = mul nsw i32 31, %13920
  %13922 = add nsw i32 %13919, %13921
  %13923 = sext i32 %13922 to i64
  %13924 = getelementptr inbounds double, ptr %13918, i64 %13923
  %13925 = load double, ptr %13924, align 8, !tbaa !11
  %13926 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %13925, double %13917)
  %13927 = load ptr, ptr %7, align 8, !tbaa !9
  %13928 = load i32, ptr %12, align 4, !tbaa !5
  %13929 = load i32, ptr %8, align 4, !tbaa !5
  %13930 = mul nsw i32 32, %13929
  %13931 = add nsw i32 %13928, %13930
  %13932 = sext i32 %13931 to i64
  %13933 = getelementptr inbounds double, ptr %13927, i64 %13932
  %13934 = load double, ptr %13933, align 8, !tbaa !11
  %13935 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %13934, double %13926)
  %13936 = load ptr, ptr %7, align 8, !tbaa !9
  %13937 = load i32, ptr %12, align 4, !tbaa !5
  %13938 = load i32, ptr %8, align 4, !tbaa !5
  %13939 = mul nsw i32 33, %13938
  %13940 = add nsw i32 %13937, %13939
  %13941 = sext i32 %13940 to i64
  %13942 = getelementptr inbounds double, ptr %13936, i64 %13941
  %13943 = load double, ptr %13942, align 8, !tbaa !11
  %13944 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %13943, double %13935)
  %13945 = load ptr, ptr %7, align 8, !tbaa !9
  %13946 = load i32, ptr %12, align 4, !tbaa !5
  %13947 = load i32, ptr %8, align 4, !tbaa !5
  %13948 = mul nsw i32 34, %13947
  %13949 = add nsw i32 %13946, %13948
  %13950 = sext i32 %13949 to i64
  %13951 = getelementptr inbounds double, ptr %13945, i64 %13950
  %13952 = load double, ptr %13951, align 8, !tbaa !11
  %13953 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %13952, double %13944)
  %13954 = load ptr, ptr %7, align 8, !tbaa !9
  %13955 = load i32, ptr %12, align 4, !tbaa !5
  %13956 = load i32, ptr %8, align 4, !tbaa !5
  %13957 = mul nsw i32 35, %13956
  %13958 = add nsw i32 %13955, %13957
  %13959 = sext i32 %13958 to i64
  %13960 = getelementptr inbounds double, ptr %13954, i64 %13959
  %13961 = load double, ptr %13960, align 8, !tbaa !11
  %13962 = call double @llvm.fmuladd.f64(double 0xBC96000000000000, double %13961, double %13953)
  %13963 = load ptr, ptr %7, align 8, !tbaa !9
  %13964 = load i32, ptr %12, align 4, !tbaa !5
  %13965 = load i32, ptr %8, align 4, !tbaa !5
  %13966 = mul nsw i32 52, %13965
  %13967 = add nsw i32 %13964, %13966
  %13968 = sext i32 %13967 to i64
  %13969 = getelementptr inbounds double, ptr %13963, i64 %13968
  %13970 = load double, ptr %13969, align 8, !tbaa !11
  %13971 = call double @llvm.fmuladd.f64(double 0x3FA3F41B0E87BFEB, double %13970, double %13962)
  %13972 = load ptr, ptr %7, align 8, !tbaa !9
  %13973 = load i32, ptr %12, align 4, !tbaa !5
  %13974 = load i32, ptr %8, align 4, !tbaa !5
  %13975 = mul nsw i32 53, %13974
  %13976 = add nsw i32 %13973, %13975
  %13977 = sext i32 %13976 to i64
  %13978 = getelementptr inbounds double, ptr %13972, i64 %13977
  %13979 = load double, ptr %13978, align 8, !tbaa !11
  %13980 = call double @llvm.fmuladd.f64(double 0x3FAD5B74B5F10E92, double %13979, double %13971)
  %13981 = load ptr, ptr %7, align 8, !tbaa !9
  %13982 = load i32, ptr %12, align 4, !tbaa !5
  %13983 = load i32, ptr %8, align 4, !tbaa !5
  %13984 = mul nsw i32 54, %13983
  %13985 = add nsw i32 %13982, %13984
  %13986 = sext i32 %13985 to i64
  %13987 = getelementptr inbounds double, ptr %13981, i64 %13986
  %13988 = load double, ptr %13987, align 8, !tbaa !11
  %13989 = call double @llvm.fmuladd.f64(double 0xBFE66643AEED36FA, double %13988, double %13980)
  %13990 = load ptr, ptr %7, align 8, !tbaa !9
  %13991 = load i32, ptr %12, align 4, !tbaa !5
  %13992 = load i32, ptr %8, align 4, !tbaa !5
  %13993 = mul nsw i32 55, %13992
  %13994 = add nsw i32 %13991, %13993
  %13995 = sext i32 %13994 to i64
  %13996 = getelementptr inbounds double, ptr %13990, i64 %13995
  %13997 = load double, ptr %13996, align 8, !tbaa !11
  %13998 = call double @llvm.fmuladd.f64(double 0xBFE7007BFD8FD85B, double %13997, double %13989)
  %13999 = load ptr, ptr %7, align 8, !tbaa !9
  %14000 = load i32, ptr %12, align 4, !tbaa !5
  %14001 = load i32, ptr %8, align 4, !tbaa !5
  %14002 = mul nsw i32 56, %14001
  %14003 = add nsw i32 %14000, %14002
  %14004 = sext i32 %14003 to i64
  %14005 = getelementptr inbounds double, ptr %13999, i64 %14004
  %14006 = load double, ptr %14005, align 8, !tbaa !11
  %14007 = call double @llvm.fmuladd.f64(double 0x3C826280B3476096, double %14006, double %13998)
  %14008 = load ptr, ptr %7, align 8, !tbaa !9
  %14009 = load i32, ptr %12, align 4, !tbaa !5
  %14010 = load i32, ptr %8, align 4, !tbaa !5
  %14011 = mul nsw i32 57, %14010
  %14012 = add nsw i32 %14009, %14011
  %14013 = sext i32 %14012 to i64
  %14014 = getelementptr inbounds double, ptr %14008, i64 %14013
  %14015 = load double, ptr %14014, align 8, !tbaa !11
  %14016 = call double @llvm.fmuladd.f64(double 0x3C8C48C6001F0AC0, double %14015, double %14007)
  %14017 = load ptr, ptr %7, align 8, !tbaa !9
  %14018 = load i32, ptr %12, align 4, !tbaa !5
  %14019 = load i32, ptr %8, align 4, !tbaa !5
  %14020 = mul nsw i32 59, %14019
  %14021 = add nsw i32 %14018, %14020
  %14022 = sext i32 %14021 to i64
  %14023 = getelementptr inbounds double, ptr %14017, i64 %14022
  %14024 = load double, ptr %14023, align 8, !tbaa !11
  %14025 = call double @llvm.fmuladd.f64(double 0x3C96A09E667F3BCC, double %14024, double %14016)
  %14026 = load ptr, ptr %7, align 8, !tbaa !9
  %14027 = load i32, ptr %12, align 4, !tbaa !5
  %14028 = load i32, ptr %8, align 4, !tbaa !5
  %14029 = mul nsw i32 60, %14028
  %14030 = add nsw i32 %14027, %14029
  %14031 = sext i32 %14030 to i64
  %14032 = getelementptr inbounds double, ptr %14026, i64 %14031
  %14033 = load double, ptr %14032, align 8, !tbaa !11
  %14034 = call double @llvm.fmuladd.f64(double 0x3C60F876CCDF6CD9, double %14033, double %14025)
  %14035 = load ptr, ptr %7, align 8, !tbaa !9
  %14036 = load i32, ptr %12, align 4, !tbaa !5
  %14037 = load i32, ptr %8, align 4, !tbaa !5
  %14038 = mul nsw i32 61, %14037
  %14039 = add nsw i32 %14036, %14038
  %14040 = sext i32 %14039 to i64
  %14041 = getelementptr inbounds double, ptr %14035, i64 %14040
  %14042 = load double, ptr %14041, align 8, !tbaa !11
  %14043 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %14042, double %14034)
  %14044 = load ptr, ptr %7, align 8, !tbaa !9
  %14045 = load i32, ptr %12, align 4, !tbaa !5
  %14046 = load i32, ptr %8, align 4, !tbaa !5
  %14047 = mul nsw i32 62, %14046
  %14048 = add nsw i32 %14045, %14047
  %14049 = sext i32 %14048 to i64
  %14050 = getelementptr inbounds double, ptr %14044, i64 %14049
  %14051 = load double, ptr %14050, align 8, !tbaa !11
  %14052 = call double @llvm.fmuladd.f64(double 0xBCA6A09E667F3BCC, double %14051, double %14043)
  %14053 = load ptr, ptr %7, align 8, !tbaa !9
  %14054 = load i32, ptr %12, align 4, !tbaa !5
  %14055 = load i32, ptr %8, align 4, !tbaa !5
  %14056 = mul nsw i32 63, %14055
  %14057 = add nsw i32 %14054, %14056
  %14058 = sext i32 %14057 to i64
  %14059 = getelementptr inbounds double, ptr %14053, i64 %14058
  %14060 = load double, ptr %14059, align 8, !tbaa !11
  %14061 = call double @llvm.fmuladd.f64(double 0xBCA6A09E667F3BCC, double %14060, double %14052)
  %14062 = load ptr, ptr %7, align 8, !tbaa !9
  %14063 = load i32, ptr %12, align 4, !tbaa !5
  %14064 = load i32, ptr %8, align 4, !tbaa !5
  %14065 = mul nsw i32 64, %14064
  %14066 = add nsw i32 %14063, %14065
  %14067 = sext i32 %14066 to i64
  %14068 = getelementptr inbounds double, ptr %14062, i64 %14067
  %14069 = load double, ptr %14068, align 8, !tbaa !11
  %14070 = call double @llvm.fmuladd.f64(double 0x3C6F1CD9CCEEF238, double %14069, double %14061)
  %14071 = load ptr, ptr %7, align 8, !tbaa !9
  %14072 = load i32, ptr %12, align 4, !tbaa !5
  %14073 = load i32, ptr %8, align 4, !tbaa !5
  %14074 = mul nsw i32 65, %14073
  %14075 = add nsw i32 %14072, %14074
  %14076 = sext i32 %14075 to i64
  %14077 = getelementptr inbounds double, ptr %14071, i64 %14076
  %14078 = load double, ptr %14077, align 8, !tbaa !11
  %14079 = call double @llvm.fmuladd.f64(double 0x3C8974B2334F2346, double %14078, double %14070)
  %14080 = load ptr, ptr %7, align 8, !tbaa !9
  %14081 = load i32, ptr %12, align 4, !tbaa !5
  %14082 = load i32, ptr %8, align 4, !tbaa !5
  %14083 = mul nsw i32 66, %14082
  %14084 = add nsw i32 %14081, %14083
  %14085 = sext i32 %14084 to i64
  %14086 = getelementptr inbounds double, ptr %14080, i64 %14085
  %14087 = load double, ptr %14086, align 8, !tbaa !11
  %14088 = call double @llvm.fmuladd.f64(double 0xBCAADEBC19B71703, double %14087, double %14079)
  %14089 = load ptr, ptr %7, align 8, !tbaa !9
  %14090 = load i32, ptr %12, align 4, !tbaa !5
  %14091 = load i32, ptr %8, align 4, !tbaa !5
  %14092 = mul nsw i32 67, %14091
  %14093 = add nsw i32 %14090, %14092
  %14094 = sext i32 %14093 to i64
  %14095 = getelementptr inbounds double, ptr %14089, i64 %14094
  %14096 = load double, ptr %14095, align 8, !tbaa !11
  %14097 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %14096, double %14088)
  store double %14097, ptr %11, align 8, !tbaa !11
  %14098 = load double, ptr %11, align 8, !tbaa !11
  %14099 = load ptr, ptr %9, align 8, !tbaa !9
  %14100 = load i32, ptr %12, align 4, !tbaa !5
  %14101 = load i32, ptr %10, align 4, !tbaa !5
  %14102 = mul nsw i32 48, %14101
  %14103 = add nsw i32 %14100, %14102
  %14104 = sext i32 %14103 to i64
  %14105 = getelementptr inbounds double, ptr %14099, i64 %14104
  %14106 = load double, ptr %14105, align 8, !tbaa !11
  %14107 = fadd double %14106, %14098
  store double %14107, ptr %14105, align 8, !tbaa !11
  %14108 = load ptr, ptr %7, align 8, !tbaa !9
  %14109 = load i32, ptr %12, align 4, !tbaa !5
  %14110 = load i32, ptr %8, align 4, !tbaa !5
  %14111 = mul nsw i32 20, %14110
  %14112 = add nsw i32 %14109, %14111
  %14113 = sext i32 %14112 to i64
  %14114 = getelementptr inbounds double, ptr %14108, i64 %14113
  %14115 = load double, ptr %14114, align 8, !tbaa !11
  %14116 = load ptr, ptr %7, align 8, !tbaa !9
  %14117 = load i32, ptr %12, align 4, !tbaa !5
  %14118 = load i32, ptr %8, align 4, !tbaa !5
  %14119 = mul nsw i32 21, %14118
  %14120 = add nsw i32 %14117, %14119
  %14121 = sext i32 %14120 to i64
  %14122 = getelementptr inbounds double, ptr %14116, i64 %14121
  %14123 = load double, ptr %14122, align 8, !tbaa !11
  %14124 = fmul double 0xBFD4C0B9406BCBCD, %14123
  %14125 = call double @llvm.fmuladd.f64(double 0x3F980EB0AE1D4719, double %14115, double %14124)
  %14126 = load ptr, ptr %7, align 8, !tbaa !9
  %14127 = load i32, ptr %12, align 4, !tbaa !5
  %14128 = load i32, ptr %8, align 4, !tbaa !5
  %14129 = mul nsw i32 22, %14128
  %14130 = add nsw i32 %14127, %14129
  %14131 = sext i32 %14130 to i64
  %14132 = getelementptr inbounds double, ptr %14126, i64 %14131
  %14133 = load double, ptr %14132, align 8, !tbaa !11
  %14134 = call double @llvm.fmuladd.f64(double 0xBFEBF462FB348EF3, double %14133, double %14125)
  %14135 = load ptr, ptr %7, align 8, !tbaa !9
  %14136 = load i32, ptr %12, align 4, !tbaa !5
  %14137 = load i32, ptr %8, align 4, !tbaa !5
  %14138 = mul nsw i32 23, %14137
  %14139 = add nsw i32 %14136, %14138
  %14140 = sext i32 %14139 to i64
  %14141 = getelementptr inbounds double, ptr %14135, i64 %14140
  %14142 = load double, ptr %14141, align 8, !tbaa !11
  %14143 = call double @llvm.fmuladd.f64(double 0xBFE002F9665DF3D7, double %14142, double %14134)
  %14144 = load ptr, ptr %7, align 8, !tbaa !9
  %14145 = load i32, ptr %12, align 4, !tbaa !5
  %14146 = load i32, ptr %8, align 4, !tbaa !5
  %14147 = mul nsw i32 24, %14146
  %14148 = add nsw i32 %14145, %14147
  %14149 = sext i32 %14148 to i64
  %14150 = getelementptr inbounds double, ptr %14144, i64 %14149
  %14151 = load double, ptr %14150, align 8, !tbaa !11
  %14152 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %14151, double %14143)
  %14153 = load ptr, ptr %7, align 8, !tbaa !9
  %14154 = load i32, ptr %12, align 4, !tbaa !5
  %14155 = load i32, ptr %8, align 4, !tbaa !5
  %14156 = mul nsw i32 25, %14155
  %14157 = add nsw i32 %14154, %14156
  %14158 = sext i32 %14157 to i64
  %14159 = getelementptr inbounds double, ptr %14153, i64 %14158
  %14160 = load double, ptr %14159, align 8, !tbaa !11
  %14161 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %14160, double %14152)
  %14162 = load ptr, ptr %7, align 8, !tbaa !9
  %14163 = load i32, ptr %12, align 4, !tbaa !5
  %14164 = load i32, ptr %8, align 4, !tbaa !5
  %14165 = mul nsw i32 26, %14164
  %14166 = add nsw i32 %14163, %14165
  %14167 = sext i32 %14166 to i64
  %14168 = getelementptr inbounds double, ptr %14162, i64 %14167
  %14169 = load double, ptr %14168, align 8, !tbaa !11
  %14170 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %14169, double %14161)
  %14171 = load ptr, ptr %7, align 8, !tbaa !9
  %14172 = load i32, ptr %12, align 4, !tbaa !5
  %14173 = load i32, ptr %8, align 4, !tbaa !5
  %14174 = mul nsw i32 27, %14173
  %14175 = add nsw i32 %14172, %14174
  %14176 = sext i32 %14175 to i64
  %14177 = getelementptr inbounds double, ptr %14171, i64 %14176
  %14178 = load double, ptr %14177, align 8, !tbaa !11
  %14179 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %14178, double %14170)
  %14180 = load ptr, ptr %7, align 8, !tbaa !9
  %14181 = load i32, ptr %12, align 4, !tbaa !5
  %14182 = load i32, ptr %8, align 4, !tbaa !5
  %14183 = mul nsw i32 28, %14182
  %14184 = add nsw i32 %14181, %14183
  %14185 = sext i32 %14184 to i64
  %14186 = getelementptr inbounds double, ptr %14180, i64 %14185
  %14187 = load double, ptr %14186, align 8, !tbaa !11
  %14188 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %14187, double %14179)
  %14189 = load ptr, ptr %7, align 8, !tbaa !9
  %14190 = load i32, ptr %12, align 4, !tbaa !5
  %14191 = load i32, ptr %8, align 4, !tbaa !5
  %14192 = mul nsw i32 29, %14191
  %14193 = add nsw i32 %14190, %14192
  %14194 = sext i32 %14193 to i64
  %14195 = getelementptr inbounds double, ptr %14189, i64 %14194
  %14196 = load double, ptr %14195, align 8, !tbaa !11
  %14197 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %14196, double %14188)
  %14198 = load ptr, ptr %7, align 8, !tbaa !9
  %14199 = load i32, ptr %12, align 4, !tbaa !5
  %14200 = load i32, ptr %8, align 4, !tbaa !5
  %14201 = mul nsw i32 30, %14200
  %14202 = add nsw i32 %14199, %14201
  %14203 = sext i32 %14202 to i64
  %14204 = getelementptr inbounds double, ptr %14198, i64 %14203
  %14205 = load double, ptr %14204, align 8, !tbaa !11
  %14206 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %14205, double %14197)
  %14207 = load ptr, ptr %7, align 8, !tbaa !9
  %14208 = load i32, ptr %12, align 4, !tbaa !5
  %14209 = load i32, ptr %8, align 4, !tbaa !5
  %14210 = mul nsw i32 31, %14209
  %14211 = add nsw i32 %14208, %14210
  %14212 = sext i32 %14211 to i64
  %14213 = getelementptr inbounds double, ptr %14207, i64 %14212
  %14214 = load double, ptr %14213, align 8, !tbaa !11
  %14215 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %14214, double %14206)
  %14216 = load ptr, ptr %7, align 8, !tbaa !9
  %14217 = load i32, ptr %12, align 4, !tbaa !5
  %14218 = load i32, ptr %8, align 4, !tbaa !5
  %14219 = mul nsw i32 32, %14218
  %14220 = add nsw i32 %14217, %14219
  %14221 = sext i32 %14220 to i64
  %14222 = getelementptr inbounds double, ptr %14216, i64 %14221
  %14223 = load double, ptr %14222, align 8, !tbaa !11
  %14224 = call double @llvm.fmuladd.f64(double 0xBC96000000000000, double %14223, double %14215)
  %14225 = load ptr, ptr %7, align 8, !tbaa !9
  %14226 = load i32, ptr %12, align 4, !tbaa !5
  %14227 = load i32, ptr %8, align 4, !tbaa !5
  %14228 = mul nsw i32 33, %14227
  %14229 = add nsw i32 %14226, %14228
  %14230 = sext i32 %14229 to i64
  %14231 = getelementptr inbounds double, ptr %14225, i64 %14230
  %14232 = load double, ptr %14231, align 8, !tbaa !11
  %14233 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %14232, double %14224)
  %14234 = load ptr, ptr %7, align 8, !tbaa !9
  %14235 = load i32, ptr %12, align 4, !tbaa !5
  %14236 = load i32, ptr %8, align 4, !tbaa !5
  %14237 = mul nsw i32 34, %14236
  %14238 = add nsw i32 %14235, %14237
  %14239 = sext i32 %14238 to i64
  %14240 = getelementptr inbounds double, ptr %14234, i64 %14239
  %14241 = load double, ptr %14240, align 8, !tbaa !11
  %14242 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %14241, double %14233)
  %14243 = load ptr, ptr %7, align 8, !tbaa !9
  %14244 = load i32, ptr %12, align 4, !tbaa !5
  %14245 = load i32, ptr %8, align 4, !tbaa !5
  %14246 = mul nsw i32 35, %14245
  %14247 = add nsw i32 %14244, %14246
  %14248 = sext i32 %14247 to i64
  %14249 = getelementptr inbounds double, ptr %14243, i64 %14248
  %14250 = load double, ptr %14249, align 8, !tbaa !11
  %14251 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %14250, double %14242)
  %14252 = load ptr, ptr %7, align 8, !tbaa !9
  %14253 = load i32, ptr %12, align 4, !tbaa !5
  %14254 = load i32, ptr %8, align 4, !tbaa !5
  %14255 = mul nsw i32 52, %14254
  %14256 = add nsw i32 %14253, %14255
  %14257 = sext i32 %14256 to i64
  %14258 = getelementptr inbounds double, ptr %14252, i64 %14257
  %14259 = load double, ptr %14258, align 8, !tbaa !11
  %14260 = call double @llvm.fmuladd.f64(double 0xBFB8DF388696F557, double %14259, double %14251)
  %14261 = load ptr, ptr %7, align 8, !tbaa !9
  %14262 = load i32, ptr %12, align 4, !tbaa !5
  %14263 = load i32, ptr %8, align 4, !tbaa !5
  %14264 = mul nsw i32 53, %14263
  %14265 = add nsw i32 %14262, %14264
  %14266 = sext i32 %14265 to i64
  %14267 = getelementptr inbounds double, ptr %14261, i64 %14266
  %14268 = load double, ptr %14267, align 8, !tbaa !11
  %14269 = call double @llvm.fmuladd.f64(double 0x3FD0C7817D9C3121, double %14268, double %14260)
  %14270 = load ptr, ptr %7, align 8, !tbaa !9
  %14271 = load i32, ptr %12, align 4, !tbaa !5
  %14272 = load i32, ptr %8, align 4, !tbaa !5
  %14273 = mul nsw i32 54, %14272
  %14274 = add nsw i32 %14271, %14273
  %14275 = sext i32 %14274 to i64
  %14276 = getelementptr inbounds double, ptr %14270, i64 %14275
  %14277 = load double, ptr %14276, align 8, !tbaa !11
  %14278 = call double @llvm.fmuladd.f64(double 0x4007001BD846D0A7, double %14277, double %14269)
  %14279 = load ptr, ptr %7, align 8, !tbaa !9
  %14280 = load i32, ptr %12, align 4, !tbaa !5
  %14281 = load i32, ptr %8, align 4, !tbaa !5
  %14282 = mul nsw i32 55, %14281
  %14283 = add nsw i32 %14280, %14282
  %14284 = sext i32 %14283 to i64
  %14285 = getelementptr inbounds double, ptr %14279, i64 %14284
  %14286 = load double, ptr %14285, align 8, !tbaa !11
  %14287 = call double @llvm.fmuladd.f64(double 0x3FD08C54FF1019F7, double %14286, double %14278)
  %14288 = load ptr, ptr %7, align 8, !tbaa !9
  %14289 = load i32, ptr %12, align 4, !tbaa !5
  %14290 = load i32, ptr %8, align 4, !tbaa !5
  %14291 = mul nsw i32 56, %14290
  %14292 = add nsw i32 %14289, %14291
  %14293 = sext i32 %14292 to i64
  %14294 = getelementptr inbounds double, ptr %14288, i64 %14293
  %14295 = load double, ptr %14294, align 8, !tbaa !11
  %14296 = call double @llvm.fmuladd.f64(double 0xBC7F1CD9CCEEF238, double %14295, double %14287)
  %14297 = load ptr, ptr %7, align 8, !tbaa !9
  %14298 = load i32, ptr %12, align 4, !tbaa !5
  %14299 = load i32, ptr %8, align 4, !tbaa !5
  %14300 = mul nsw i32 57, %14299
  %14301 = add nsw i32 %14298, %14300
  %14302 = sext i32 %14301 to i64
  %14303 = getelementptr inbounds double, ptr %14297, i64 %14302
  %14304 = load double, ptr %14303, align 8, !tbaa !11
  %14305 = call double @llvm.fmuladd.f64(double 0x3C80F876CCDF6CD9, double %14304, double %14296)
  %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 58, %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 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %14313, double %14305)
  %14315 = load ptr, ptr %7, align 8, !tbaa !9
  %14316 = load i32, ptr %12, align 4, !tbaa !5
  %14317 = load i32, ptr %8, align 4, !tbaa !5
  %14318 = mul nsw i32 59, %14317
  %14319 = add nsw i32 %14316, %14318
  %14320 = sext i32 %14319 to i64
  %14321 = getelementptr inbounds double, ptr %14315, i64 %14320
  %14322 = load double, ptr %14321, align 8, !tbaa !11
  %14323 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %14322, double %14314)
  %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 60, %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 0xBC6C48C6001F0ABE, 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 61, %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 0x3C9974B2334F2346, 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 62, %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 0x3CBADEBC19B71701, 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 63, %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 0x3C96A09E667F3BCC, 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 64, %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 0xBC50F876CCDF6CD8, 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 65, %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 0x3CA04371D9AB72FA, 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 66, %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 0x3CBADEBC19B71701, 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 67, %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 0x3C90F876CCDF6CD9, double %14394, double %14386)
  store double %14395, ptr %11, align 8, !tbaa !11
  %14396 = load double, ptr %11, align 8, !tbaa !11
  %14397 = load ptr, ptr %9, align 8, !tbaa !9
  %14398 = load i32, ptr %12, align 4, !tbaa !5
  %14399 = load i32, ptr %10, align 4, !tbaa !5
  %14400 = mul nsw i32 49, %14399
  %14401 = add nsw i32 %14398, %14400
  %14402 = sext i32 %14401 to i64
  %14403 = getelementptr inbounds double, ptr %14397, i64 %14402
  %14404 = load double, ptr %14403, align 8, !tbaa !11
  %14405 = fadd double %14404, %14396
  store double %14405, ptr %14403, align 8, !tbaa !11
  %14406 = load ptr, ptr %7, align 8, !tbaa !9
  %14407 = load i32, ptr %12, align 4, !tbaa !5
  %14408 = load i32, ptr %8, align 4, !tbaa !5
  %14409 = mul nsw i32 20, %14408
  %14410 = add nsw i32 %14407, %14409
  %14411 = sext i32 %14410 to i64
  %14412 = getelementptr inbounds double, ptr %14406, i64 %14411
  %14413 = load double, ptr %14412, align 8, !tbaa !11
  %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 21, %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 = fmul double 0x3C70000000000001, %14421
  %14423 = call double @llvm.fmuladd.f64(double 0xBC60000000000000, double %14413, double %14422)
  %14424 = load ptr, ptr %7, align 8, !tbaa !9
  %14425 = load i32, ptr %12, align 4, !tbaa !5
  %14426 = load i32, ptr %8, align 4, !tbaa !5
  %14427 = mul nsw i32 23, %14426
  %14428 = add nsw i32 %14425, %14427
  %14429 = sext i32 %14428 to i64
  %14430 = getelementptr inbounds double, ptr %14424, i64 %14429
  %14431 = load double, ptr %14430, align 8, !tbaa !11
  %14432 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %14431, double %14423)
  %14433 = load ptr, ptr %7, align 8, !tbaa !9
  %14434 = load i32, ptr %12, align 4, !tbaa !5
  %14435 = load i32, ptr %8, align 4, !tbaa !5
  %14436 = mul nsw i32 24, %14435
  %14437 = add nsw i32 %14434, %14436
  %14438 = sext i32 %14437 to i64
  %14439 = getelementptr inbounds double, ptr %14433, i64 %14438
  %14440 = load double, ptr %14439, align 8, !tbaa !11
  %14441 = call double @llvm.fmuladd.f64(double 0x3FA789B66AF4F457, double %14440, double %14432)
  %14442 = load ptr, ptr %7, align 8, !tbaa !9
  %14443 = load i32, ptr %12, align 4, !tbaa !5
  %14444 = load i32, ptr %8, align 4, !tbaa !5
  %14445 = mul nsw i32 25, %14444
  %14446 = add nsw i32 %14443, %14445
  %14447 = sext i32 %14446 to i64
  %14448 = getelementptr inbounds double, ptr %14442, i64 %14447
  %14449 = load double, ptr %14448, align 8, !tbaa !11
  %14450 = call double @llvm.fmuladd.f64(double 0x3FEC2894019C8AD4, double %14449, double %14441)
  %14451 = load ptr, ptr %7, align 8, !tbaa !9
  %14452 = load i32, ptr %12, align 4, !tbaa !5
  %14453 = load i32, ptr %8, align 4, !tbaa !5
  %14454 = mul nsw i32 26, %14453
  %14455 = add nsw i32 %14452, %14454
  %14456 = sext i32 %14455 to i64
  %14457 = getelementptr inbounds double, ptr %14451, i64 %14456
  %14458 = load double, ptr %14457, align 8, !tbaa !11
  %14459 = call double @llvm.fmuladd.f64(double 0x3FEC2894019C8AC6, double %14458, double %14450)
  %14460 = load ptr, ptr %7, align 8, !tbaa !9
  %14461 = load i32, ptr %12, align 4, !tbaa !5
  %14462 = load i32, ptr %8, align 4, !tbaa !5
  %14463 = mul nsw i32 27, %14462
  %14464 = add nsw i32 %14461, %14463
  %14465 = sext i32 %14464 to i64
  %14466 = getelementptr inbounds double, ptr %14460, i64 %14465
  %14467 = load double, ptr %14466, align 8, !tbaa !11
  %14468 = call double @llvm.fmuladd.f64(double 0x3FA789B66AF4F575, double %14467, double %14459)
  %14469 = load ptr, ptr %7, align 8, !tbaa !9
  %14470 = load i32, ptr %12, align 4, !tbaa !5
  %14471 = load i32, ptr %8, align 4, !tbaa !5
  %14472 = mul nsw i32 28, %14471
  %14473 = add nsw i32 %14470, %14472
  %14474 = sext i32 %14473 to i64
  %14475 = getelementptr inbounds double, ptr %14469, i64 %14474
  %14476 = load double, ptr %14475, align 8, !tbaa !11
  %14477 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %14476, double %14468)
  %14478 = load ptr, ptr %7, align 8, !tbaa !9
  %14479 = load i32, ptr %12, align 4, !tbaa !5
  %14480 = load i32, ptr %8, align 4, !tbaa !5
  %14481 = mul nsw i32 29, %14480
  %14482 = add nsw i32 %14479, %14481
  %14483 = sext i32 %14482 to i64
  %14484 = getelementptr inbounds double, ptr %14478, i64 %14483
  %14485 = load double, ptr %14484, align 8, !tbaa !11
  %14486 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %14485, double %14477)
  %14487 = load ptr, ptr %7, align 8, !tbaa !9
  %14488 = load i32, ptr %12, align 4, !tbaa !5
  %14489 = load i32, ptr %8, align 4, !tbaa !5
  %14490 = mul nsw i32 30, %14489
  %14491 = add nsw i32 %14488, %14490
  %14492 = sext i32 %14491 to i64
  %14493 = getelementptr inbounds double, ptr %14487, i64 %14492
  %14494 = load double, ptr %14493, align 8, !tbaa !11
  %14495 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %14494, double %14486)
  %14496 = load ptr, ptr %7, align 8, !tbaa !9
  %14497 = load i32, ptr %12, align 4, !tbaa !5
  %14498 = load i32, ptr %8, align 4, !tbaa !5
  %14499 = mul nsw i32 31, %14498
  %14500 = add nsw i32 %14497, %14499
  %14501 = sext i32 %14500 to i64
  %14502 = getelementptr inbounds double, ptr %14496, i64 %14501
  %14503 = load double, ptr %14502, align 8, !tbaa !11
  %14504 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %14503, double %14495)
  %14505 = load ptr, ptr %7, align 8, !tbaa !9
  %14506 = load i32, ptr %12, align 4, !tbaa !5
  %14507 = load i32, ptr %8, align 4, !tbaa !5
  %14508 = mul nsw i32 32, %14507
  %14509 = add nsw i32 %14506, %14508
  %14510 = sext i32 %14509 to i64
  %14511 = getelementptr inbounds double, ptr %14505, i64 %14510
  %14512 = load double, ptr %14511, align 8, !tbaa !11
  %14513 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %14512, double %14504)
  %14514 = load ptr, ptr %7, align 8, !tbaa !9
  %14515 = load i32, ptr %12, align 4, !tbaa !5
  %14516 = load i32, ptr %8, align 4, !tbaa !5
  %14517 = mul nsw i32 33, %14516
  %14518 = add nsw i32 %14515, %14517
  %14519 = sext i32 %14518 to i64
  %14520 = getelementptr inbounds double, ptr %14514, i64 %14519
  %14521 = load double, ptr %14520, align 8, !tbaa !11
  %14522 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %14521, double %14513)
  %14523 = load ptr, ptr %7, align 8, !tbaa !9
  %14524 = load i32, ptr %12, align 4, !tbaa !5
  %14525 = load i32, ptr %8, align 4, !tbaa !5
  %14526 = mul nsw i32 34, %14525
  %14527 = add nsw i32 %14524, %14526
  %14528 = sext i32 %14527 to i64
  %14529 = getelementptr inbounds double, ptr %14523, i64 %14528
  %14530 = load double, ptr %14529, align 8, !tbaa !11
  %14531 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %14530, double %14522)
  %14532 = load ptr, ptr %7, align 8, !tbaa !9
  %14533 = load i32, ptr %12, align 4, !tbaa !5
  %14534 = load i32, ptr %8, align 4, !tbaa !5
  %14535 = mul nsw i32 35, %14534
  %14536 = add nsw i32 %14533, %14535
  %14537 = sext i32 %14536 to i64
  %14538 = getelementptr inbounds double, ptr %14532, i64 %14537
  %14539 = load double, ptr %14538, align 8, !tbaa !11
  %14540 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %14539, double %14531)
  %14541 = load ptr, ptr %7, align 8, !tbaa !9
  %14542 = load i32, ptr %12, align 4, !tbaa !5
  %14543 = load i32, ptr %8, align 4, !tbaa !5
  %14544 = mul nsw i32 52, %14543
  %14545 = add nsw i32 %14542, %14544
  %14546 = sext i32 %14545 to i64
  %14547 = getelementptr inbounds double, ptr %14541, i64 %14546
  %14548 = load double, ptr %14547, align 8, !tbaa !11
  %14549 = call double @llvm.fmuladd.f64(double 0xBC84818F8CE34E32, double %14548, double %14540)
  %14550 = load ptr, ptr %7, align 8, !tbaa !9
  %14551 = load i32, ptr %12, align 4, !tbaa !5
  %14552 = load i32, ptr %8, align 4, !tbaa !5
  %14553 = mul nsw i32 53, %14552
  %14554 = add nsw i32 %14551, %14553
  %14555 = sext i32 %14554 to i64
  %14556 = getelementptr inbounds double, ptr %14550, i64 %14555
  %14557 = load double, ptr %14556, align 8, !tbaa !11
  %14558 = call double @llvm.fmuladd.f64(double 0x3C6C48C6001F0ABE, double %14557, double %14549)
  %14559 = load ptr, ptr %7, align 8, !tbaa !9
  %14560 = load i32, ptr %12, align 4, !tbaa !5
  %14561 = load i32, ptr %8, align 4, !tbaa !5
  %14562 = mul nsw i32 54, %14561
  %14563 = add nsw i32 %14560, %14562
  %14564 = sext i32 %14563 to i64
  %14565 = getelementptr inbounds double, ptr %14559, i64 %14564
  %14566 = load double, ptr %14565, align 8, !tbaa !11
  %14567 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %14566, double %14558)
  %14568 = load ptr, ptr %7, align 8, !tbaa !9
  %14569 = load i32, ptr %12, align 4, !tbaa !5
  %14570 = load i32, ptr %8, align 4, !tbaa !5
  %14571 = mul nsw i32 55, %14570
  %14572 = add nsw i32 %14569, %14571
  %14573 = sext i32 %14572 to i64
  %14574 = getelementptr inbounds double, ptr %14568, i64 %14573
  %14575 = load double, ptr %14574, align 8, !tbaa !11
  %14576 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %14575, double %14567)
  %14577 = load ptr, ptr %7, align 8, !tbaa !9
  %14578 = load i32, ptr %12, align 4, !tbaa !5
  %14579 = load i32, ptr %8, align 4, !tbaa !5
  %14580 = mul nsw i32 56, %14579
  %14581 = add nsw i32 %14578, %14580
  %14582 = sext i32 %14581 to i64
  %14583 = getelementptr inbounds double, ptr %14577, i64 %14582
  %14584 = load double, ptr %14583, align 8, !tbaa !11
  %14585 = call double @llvm.fmuladd.f64(double 0xBFA0A4D27CF86DCE, double %14584, double %14576)
  %14586 = load ptr, ptr %7, align 8, !tbaa !9
  %14587 = load i32, ptr %12, align 4, !tbaa !5
  %14588 = load i32, ptr %8, align 4, !tbaa !5
  %14589 = mul nsw i32 57, %14588
  %14590 = add nsw i32 %14587, %14589
  %14591 = sext i32 %14590 to i64
  %14592 = getelementptr inbounds double, ptr %14586, i64 %14591
  %14593 = load double, ptr %14592, align 8, !tbaa !11
  %14594 = call double @llvm.fmuladd.f64(double 0xBFE3E93C07AFC382, double %14593, double %14585)
  %14595 = load ptr, ptr %7, align 8, !tbaa !9
  %14596 = load i32, ptr %12, align 4, !tbaa !5
  %14597 = load i32, ptr %8, align 4, !tbaa !5
  %14598 = mul nsw i32 58, %14597
  %14599 = add nsw i32 %14596, %14598
  %14600 = sext i32 %14599 to i64
  %14601 = getelementptr inbounds double, ptr %14595, i64 %14600
  %14602 = load double, ptr %14601, align 8, !tbaa !11
  %14603 = call double @llvm.fmuladd.f64(double 0xBFE3E93C07AFC37F, double %14602, double %14594)
  %14604 = load ptr, ptr %7, align 8, !tbaa !9
  %14605 = load i32, ptr %12, align 4, !tbaa !5
  %14606 = load i32, ptr %8, align 4, !tbaa !5
  %14607 = mul nsw i32 59, %14606
  %14608 = add nsw i32 %14605, %14607
  %14609 = sext i32 %14608 to i64
  %14610 = getelementptr inbounds double, ptr %14604, i64 %14609
  %14611 = load double, ptr %14610, align 8, !tbaa !11
  %14612 = call double @llvm.fmuladd.f64(double 0xBFA0A4D27CF86DB4, double %14611, double %14603)
  %14613 = load ptr, ptr %7, align 8, !tbaa !9
  %14614 = load i32, ptr %12, align 4, !tbaa !5
  %14615 = load i32, ptr %8, align 4, !tbaa !5
  %14616 = mul nsw i32 60, %14615
  %14617 = add nsw i32 %14614, %14616
  %14618 = sext i32 %14617 to i64
  %14619 = getelementptr inbounds double, ptr %14613, i64 %14618
  %14620 = load double, ptr %14619, align 8, !tbaa !11
  %14621 = call double @llvm.fmuladd.f64(double 0xBC9207FE39AD63A7, double %14620, double %14612)
  %14622 = load ptr, ptr %7, align 8, !tbaa !9
  %14623 = load i32, ptr %12, align 4, !tbaa !5
  %14624 = load i32, ptr %8, align 4, !tbaa !5
  %14625 = mul nsw i32 61, %14624
  %14626 = add nsw i32 %14623, %14625
  %14627 = sext i32 %14626 to i64
  %14628 = getelementptr inbounds double, ptr %14622, i64 %14627
  %14629 = load double, ptr %14628, align 8, !tbaa !11
  %14630 = call double @llvm.fmuladd.f64(double 0xBC83CC8A99AF5451, double %14629, double %14621)
  %14631 = load ptr, ptr %7, align 8, !tbaa !9
  %14632 = load i32, ptr %12, align 4, !tbaa !5
  %14633 = load i32, ptr %8, align 4, !tbaa !5
  %14634 = mul nsw i32 63, %14633
  %14635 = add nsw i32 %14632, %14634
  %14636 = sext i32 %14635 to i64
  %14637 = getelementptr inbounds double, ptr %14631, i64 %14636
  %14638 = load double, ptr %14637, align 8, !tbaa !11
  %14639 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %14638, double %14630)
  %14640 = load ptr, ptr %7, align 8, !tbaa !9
  %14641 = load i32, ptr %12, align 4, !tbaa !5
  %14642 = load i32, ptr %8, align 4, !tbaa !5
  %14643 = mul nsw i32 64, %14642
  %14644 = add nsw i32 %14641, %14643
  %14645 = sext i32 %14644 to i64
  %14646 = getelementptr inbounds double, ptr %14640, i64 %14645
  %14647 = load double, ptr %14646, align 8, !tbaa !11
  %14648 = call double @llvm.fmuladd.f64(double 0xBC50F876CCDF6CD8, double %14647, double %14639)
  %14649 = load ptr, ptr %7, align 8, !tbaa !9
  %14650 = load i32, ptr %12, align 4, !tbaa !5
  %14651 = load i32, ptr %8, align 4, !tbaa !5
  %14652 = mul nsw i32 65, %14651
  %14653 = add nsw i32 %14650, %14652
  %14654 = sext i32 %14653 to i64
  %14655 = getelementptr inbounds double, ptr %14649, i64 %14654
  %14656 = load double, ptr %14655, align 8, !tbaa !11
  %14657 = call double @llvm.fmuladd.f64(double 0x3C7F1CD9CCEEF238, double %14656, double %14648)
  %14658 = load ptr, ptr %7, align 8, !tbaa !9
  %14659 = load i32, ptr %12, align 4, !tbaa !5
  %14660 = load i32, ptr %8, align 4, !tbaa !5
  %14661 = mul nsw i32 66, %14660
  %14662 = add nsw i32 %14659, %14661
  %14663 = sext i32 %14662 to i64
  %14664 = getelementptr inbounds double, ptr %14658, i64 %14663
  %14665 = load double, ptr %14664, align 8, !tbaa !11
  %14666 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %14665, double %14657)
  %14667 = load ptr, ptr %7, align 8, !tbaa !9
  %14668 = load i32, ptr %12, align 4, !tbaa !5
  %14669 = load i32, ptr %8, align 4, !tbaa !5
  %14670 = mul nsw i32 67, %14669
  %14671 = add nsw i32 %14668, %14670
  %14672 = sext i32 %14671 to i64
  %14673 = getelementptr inbounds double, ptr %14667, i64 %14672
  %14674 = load double, ptr %14673, align 8, !tbaa !11
  %14675 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %14674, double %14666)
  store double %14675, ptr %11, align 8, !tbaa !11
  %14676 = load double, ptr %11, align 8, !tbaa !11
  %14677 = load ptr, ptr %9, align 8, !tbaa !9
  %14678 = load i32, ptr %12, align 4, !tbaa !5
  %14679 = load i32, ptr %10, align 4, !tbaa !5
  %14680 = mul nsw i32 50, %14679
  %14681 = add nsw i32 %14678, %14680
  %14682 = sext i32 %14681 to i64
  %14683 = getelementptr inbounds double, ptr %14677, i64 %14682
  %14684 = load double, ptr %14683, align 8, !tbaa !11
  %14685 = fadd double %14684, %14676
  store double %14685, ptr %14683, align 8, !tbaa !11
  %14686 = load ptr, ptr %7, align 8, !tbaa !9
  %14687 = load i32, ptr %12, align 4, !tbaa !5
  %14688 = load i32, ptr %8, align 4, !tbaa !5
  %14689 = mul nsw i32 21, %14688
  %14690 = add nsw i32 %14687, %14689
  %14691 = sext i32 %14690 to i64
  %14692 = getelementptr inbounds double, ptr %14686, i64 %14691
  %14693 = load double, ptr %14692, align 8, !tbaa !11
  %14694 = load ptr, ptr %7, align 8, !tbaa !9
  %14695 = load i32, ptr %12, align 4, !tbaa !5
  %14696 = load i32, ptr %8, align 4, !tbaa !5
  %14697 = mul nsw i32 22, %14696
  %14698 = add nsw i32 %14695, %14697
  %14699 = sext i32 %14698 to i64
  %14700 = getelementptr inbounds double, ptr %14694, i64 %14699
  %14701 = load double, ptr %14700, align 8, !tbaa !11
  %14702 = fmul double 0x3CB3FFFFFFFFFFFF, %14701
  %14703 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %14693, double %14702)
  %14704 = load ptr, ptr %7, align 8, !tbaa !9
  %14705 = load i32, ptr %12, align 4, !tbaa !5
  %14706 = load i32, ptr %8, align 4, !tbaa !5
  %14707 = mul nsw i32 23, %14706
  %14708 = add nsw i32 %14705, %14707
  %14709 = sext i32 %14708 to i64
  %14710 = getelementptr inbounds double, ptr %14704, i64 %14709
  %14711 = load double, ptr %14710, align 8, !tbaa !11
  %14712 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %14711, double %14703)
  %14713 = load ptr, ptr %7, align 8, !tbaa !9
  %14714 = load i32, ptr %12, align 4, !tbaa !5
  %14715 = load i32, ptr %8, align 4, !tbaa !5
  %14716 = mul nsw i32 24, %14715
  %14717 = add nsw i32 %14714, %14716
  %14718 = sext i32 %14717 to i64
  %14719 = getelementptr inbounds double, ptr %14713, i64 %14718
  %14720 = load double, ptr %14719, align 8, !tbaa !11
  %14721 = call double @llvm.fmuladd.f64(double 0x3FD6F2A1D7A492C4, double %14720, double %14712)
  %14722 = load ptr, ptr %7, align 8, !tbaa !9
  %14723 = load i32, ptr %12, align 4, !tbaa !5
  %14724 = load i32, ptr %8, align 4, !tbaa !5
  %14725 = mul nsw i32 25, %14724
  %14726 = add nsw i32 %14723, %14725
  %14727 = sext i32 %14726 to i64
  %14728 = getelementptr inbounds double, ptr %14722, i64 %14727
  %14729 = load double, ptr %14728, align 8, !tbaa !11
  %14730 = call double @llvm.fmuladd.f64(double 0x3FEAEBF44A8E7A95, double %14729, double %14721)
  %14731 = load ptr, ptr %7, align 8, !tbaa !9
  %14732 = load i32, ptr %12, align 4, !tbaa !5
  %14733 = load i32, ptr %8, align 4, !tbaa !5
  %14734 = mul nsw i32 26, %14733
  %14735 = add nsw i32 %14732, %14734
  %14736 = sext i32 %14735 to i64
  %14737 = getelementptr inbounds double, ptr %14731, i64 %14736
  %14738 = load double, ptr %14737, align 8, !tbaa !11
  %14739 = call double @llvm.fmuladd.f64(double 0x3FEAEBF44A8E7A9A, double %14738, double %14730)
  %14740 = load ptr, ptr %7, align 8, !tbaa !9
  %14741 = load i32, ptr %12, align 4, !tbaa !5
  %14742 = load i32, ptr %8, align 4, !tbaa !5
  %14743 = mul nsw i32 27, %14742
  %14744 = add nsw i32 %14741, %14743
  %14745 = sext i32 %14744 to i64
  %14746 = getelementptr inbounds double, ptr %14740, i64 %14745
  %14747 = load double, ptr %14746, align 8, !tbaa !11
  %14748 = call double @llvm.fmuladd.f64(double 0x3FD6F2A1D7A492D5, double %14747, double %14739)
  %14749 = load ptr, ptr %7, align 8, !tbaa !9
  %14750 = load i32, ptr %12, align 4, !tbaa !5
  %14751 = load i32, ptr %8, align 4, !tbaa !5
  %14752 = mul nsw i32 30, %14751
  %14753 = add nsw i32 %14750, %14752
  %14754 = sext i32 %14753 to i64
  %14755 = getelementptr inbounds double, ptr %14749, i64 %14754
  %14756 = load double, ptr %14755, align 8, !tbaa !11
  %14757 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %14756, double %14748)
  %14758 = load ptr, ptr %7, align 8, !tbaa !9
  %14759 = load i32, ptr %12, align 4, !tbaa !5
  %14760 = load i32, ptr %8, align 4, !tbaa !5
  %14761 = mul nsw i32 31, %14760
  %14762 = add nsw i32 %14759, %14761
  %14763 = sext i32 %14762 to i64
  %14764 = getelementptr inbounds double, ptr %14758, i64 %14763
  %14765 = load double, ptr %14764, align 8, !tbaa !11
  %14766 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %14765, double %14757)
  %14767 = load ptr, ptr %7, align 8, !tbaa !9
  %14768 = load i32, ptr %12, align 4, !tbaa !5
  %14769 = load i32, ptr %8, align 4, !tbaa !5
  %14770 = mul nsw i32 32, %14769
  %14771 = add nsw i32 %14768, %14770
  %14772 = sext i32 %14771 to i64
  %14773 = getelementptr inbounds double, ptr %14767, i64 %14772
  %14774 = load double, ptr %14773, align 8, !tbaa !11
  %14775 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %14774, double %14766)
  %14776 = load ptr, ptr %7, align 8, !tbaa !9
  %14777 = load i32, ptr %12, align 4, !tbaa !5
  %14778 = load i32, ptr %8, align 4, !tbaa !5
  %14779 = mul nsw i32 34, %14778
  %14780 = add nsw i32 %14777, %14779
  %14781 = sext i32 %14780 to i64
  %14782 = getelementptr inbounds double, ptr %14776, i64 %14781
  %14783 = load double, ptr %14782, align 8, !tbaa !11
  %14784 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %14783, double %14775)
  %14785 = load ptr, ptr %7, align 8, !tbaa !9
  %14786 = load i32, ptr %12, align 4, !tbaa !5
  %14787 = load i32, ptr %8, align 4, !tbaa !5
  %14788 = mul nsw i32 35, %14787
  %14789 = add nsw i32 %14786, %14788
  %14790 = sext i32 %14789 to i64
  %14791 = getelementptr inbounds double, ptr %14785, i64 %14790
  %14792 = load double, ptr %14791, align 8, !tbaa !11
  %14793 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %14792, double %14784)
  %14794 = load ptr, ptr %7, align 8, !tbaa !9
  %14795 = load i32, ptr %12, align 4, !tbaa !5
  %14796 = load i32, ptr %8, align 4, !tbaa !5
  %14797 = mul nsw i32 52, %14796
  %14798 = add nsw i32 %14795, %14797
  %14799 = sext i32 %14798 to i64
  %14800 = getelementptr inbounds double, ptr %14794, i64 %14799
  %14801 = load double, ptr %14800, align 8, !tbaa !11
  %14802 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %14801, double %14793)
  %14803 = load ptr, ptr %7, align 8, !tbaa !9
  %14804 = load i32, ptr %12, align 4, !tbaa !5
  %14805 = load i32, ptr %8, align 4, !tbaa !5
  %14806 = mul nsw i32 53, %14805
  %14807 = add nsw i32 %14804, %14806
  %14808 = sext i32 %14807 to i64
  %14809 = getelementptr inbounds double, ptr %14803, i64 %14808
  %14810 = load double, ptr %14809, align 8, !tbaa !11
  %14811 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %14810, double %14802)
  %14812 = load ptr, ptr %7, align 8, !tbaa !9
  %14813 = load i32, ptr %12, align 4, !tbaa !5
  %14814 = load i32, ptr %8, align 4, !tbaa !5
  %14815 = mul nsw i32 54, %14814
  %14816 = add nsw i32 %14813, %14815
  %14817 = sext i32 %14816 to i64
  %14818 = getelementptr inbounds double, ptr %14812, i64 %14817
  %14819 = load double, ptr %14818, align 8, !tbaa !11
  %14820 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %14819, double %14811)
  %14821 = load ptr, ptr %7, align 8, !tbaa !9
  %14822 = load i32, ptr %12, align 4, !tbaa !5
  %14823 = load i32, ptr %8, align 4, !tbaa !5
  %14824 = mul nsw i32 55, %14823
  %14825 = add nsw i32 %14822, %14824
  %14826 = sext i32 %14825 to i64
  %14827 = getelementptr inbounds double, ptr %14821, i64 %14826
  %14828 = load double, ptr %14827, align 8, !tbaa !11
  %14829 = call double @llvm.fmuladd.f64(double 0x3CB0F876CCDF6CD8, double %14828, double %14820)
  %14830 = load ptr, ptr %7, align 8, !tbaa !9
  %14831 = load i32, ptr %12, align 4, !tbaa !5
  %14832 = load i32, ptr %8, align 4, !tbaa !5
  %14833 = mul nsw i32 56, %14832
  %14834 = add nsw i32 %14831, %14833
  %14835 = sext i32 %14834 to i64
  %14836 = getelementptr inbounds double, ptr %14830, i64 %14835
  %14837 = load double, ptr %14836, align 8, !tbaa !11
  %14838 = call double @llvm.fmuladd.f64(double 0x3FA462D8D66D7FBE, double %14837, double %14829)
  %14839 = load ptr, ptr %7, align 8, !tbaa !9
  %14840 = load i32, ptr %12, align 4, !tbaa !5
  %14841 = load i32, ptr %8, align 4, !tbaa !5
  %14842 = mul nsw i32 57, %14841
  %14843 = add nsw i32 %14840, %14842
  %14844 = sext i32 %14843 to i64
  %14845 = getelementptr inbounds double, ptr %14839, i64 %14844
  %14846 = load double, ptr %14845, align 8, !tbaa !11
  %14847 = call double @llvm.fmuladd.f64(double 0xBFC5EA083165C4F6, double %14846, double %14838)
  %14848 = load ptr, ptr %7, align 8, !tbaa !9
  %14849 = load i32, ptr %12, align 4, !tbaa !5
  %14850 = load i32, ptr %8, align 4, !tbaa !5
  %14851 = mul nsw i32 58, %14850
  %14852 = add nsw i32 %14849, %14851
  %14853 = sext i32 %14852 to i64
  %14854 = getelementptr inbounds double, ptr %14848, i64 %14853
  %14855 = load double, ptr %14854, align 8, !tbaa !11
  %14856 = call double @llvm.fmuladd.f64(double 0x3FD4A299D1E97012, double %14855, double %14847)
  %14857 = load ptr, ptr %7, align 8, !tbaa !9
  %14858 = load i32, ptr %12, align 4, !tbaa !5
  %14859 = load i32, ptr %8, align 4, !tbaa !5
  %14860 = mul nsw i32 59, %14859
  %14861 = add nsw i32 %14858, %14860
  %14862 = sext i32 %14861 to i64
  %14863 = getelementptr inbounds double, ptr %14857, i64 %14862
  %14864 = load double, ptr %14863, align 8, !tbaa !11
  %14865 = call double @llvm.fmuladd.f64(double 0x400E488CB8C1EA78, double %14864, double %14856)
  %14866 = load ptr, ptr %7, align 8, !tbaa !9
  %14867 = load i32, ptr %12, align 4, !tbaa !5
  %14868 = load i32, ptr %8, align 4, !tbaa !5
  %14869 = mul nsw i32 60, %14868
  %14870 = add nsw i32 %14867, %14869
  %14871 = sext i32 %14870 to i64
  %14872 = getelementptr inbounds double, ptr %14866, i64 %14871
  %14873 = load double, ptr %14872, align 8, !tbaa !11
  %14874 = call double @llvm.fmuladd.f64(double 0x3C70F876CCDF6CD9, double %14873, double %14865)
  %14875 = load ptr, ptr %7, align 8, !tbaa !9
  %14876 = load i32, ptr %12, align 4, !tbaa !5
  %14877 = load i32, ptr %8, align 4, !tbaa !5
  %14878 = mul nsw i32 61, %14877
  %14879 = add nsw i32 %14876, %14878
  %14880 = sext i32 %14879 to i64
  %14881 = getelementptr inbounds double, ptr %14875, i64 %14880
  %14882 = load double, ptr %14881, align 8, !tbaa !11
  %14883 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %14882, double %14874)
  %14884 = load ptr, ptr %7, align 8, !tbaa !9
  %14885 = load i32, ptr %12, align 4, !tbaa !5
  %14886 = load i32, ptr %8, align 4, !tbaa !5
  %14887 = mul nsw i32 62, %14886
  %14888 = add nsw i32 %14885, %14887
  %14889 = sext i32 %14888 to i64
  %14890 = getelementptr inbounds double, ptr %14884, i64 %14889
  %14891 = load double, ptr %14890, align 8, !tbaa !11
  %14892 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %14891, double %14883)
  %14893 = load ptr, ptr %7, align 8, !tbaa !9
  %14894 = load i32, ptr %12, align 4, !tbaa !5
  %14895 = load i32, ptr %8, align 4, !tbaa !5
  %14896 = mul nsw i32 63, %14895
  %14897 = add nsw i32 %14894, %14896
  %14898 = sext i32 %14897 to i64
  %14899 = getelementptr inbounds double, ptr %14893, i64 %14898
  %14900 = load double, ptr %14899, align 8, !tbaa !11
  %14901 = call double @llvm.fmuladd.f64(double 0xBCC3CC8A99AF5452, double %14900, double %14892)
  %14902 = load ptr, ptr %7, align 8, !tbaa !9
  %14903 = load i32, ptr %12, align 4, !tbaa !5
  %14904 = load i32, ptr %8, align 4, !tbaa !5
  %14905 = mul nsw i32 64, %14904
  %14906 = add nsw i32 %14903, %14905
  %14907 = sext i32 %14906 to i64
  %14908 = getelementptr inbounds double, ptr %14902, i64 %14907
  %14909 = load double, ptr %14908, align 8, !tbaa !11
  %14910 = call double @llvm.fmuladd.f64(double 0x3C70F876CCDF6CD9, double %14909, double %14901)
  %14911 = load ptr, ptr %7, align 8, !tbaa !9
  %14912 = load i32, ptr %12, align 4, !tbaa !5
  %14913 = load i32, ptr %8, align 4, !tbaa !5
  %14914 = mul nsw i32 65, %14913
  %14915 = add nsw i32 %14912, %14914
  %14916 = sext i32 %14915 to i64
  %14917 = getelementptr inbounds double, ptr %14911, i64 %14916
  %14918 = load double, ptr %14917, align 8, !tbaa !11
  %14919 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %14918, double %14910)
  %14920 = load ptr, ptr %7, align 8, !tbaa !9
  %14921 = load i32, ptr %12, align 4, !tbaa !5
  %14922 = load i32, ptr %8, align 4, !tbaa !5
  %14923 = mul nsw i32 66, %14922
  %14924 = add nsw i32 %14921, %14923
  %14925 = sext i32 %14924 to i64
  %14926 = getelementptr inbounds double, ptr %14920, i64 %14925
  %14927 = load double, ptr %14926, align 8, !tbaa !11
  %14928 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %14927, double %14919)
  %14929 = load ptr, ptr %7, align 8, !tbaa !9
  %14930 = load i32, ptr %12, align 4, !tbaa !5
  %14931 = load i32, ptr %8, align 4, !tbaa !5
  %14932 = mul nsw i32 67, %14931
  %14933 = add nsw i32 %14930, %14932
  %14934 = sext i32 %14933 to i64
  %14935 = getelementptr inbounds double, ptr %14929, i64 %14934
  %14936 = load double, ptr %14935, align 8, !tbaa !11
  %14937 = call double @llvm.fmuladd.f64(double 0x3C96A09E667F3BCC, double %14936, double %14928)
  store double %14937, ptr %11, align 8, !tbaa !11
  %14938 = load double, ptr %11, align 8, !tbaa !11
  %14939 = load ptr, ptr %9, align 8, !tbaa !9
  %14940 = load i32, ptr %12, align 4, !tbaa !5
  %14941 = load i32, ptr %10, align 4, !tbaa !5
  %14942 = mul nsw i32 51, %14941
  %14943 = add nsw i32 %14940, %14942
  %14944 = sext i32 %14943 to i64
  %14945 = getelementptr inbounds double, ptr %14939, i64 %14944
  %14946 = load double, ptr %14945, align 8, !tbaa !11
  %14947 = fadd double %14946, %14938
  store double %14947, ptr %14945, align 8, !tbaa !11
  %14948 = load ptr, ptr %7, align 8, !tbaa !9
  %14949 = load i32, ptr %12, align 4, !tbaa !5
  %14950 = load i32, ptr %8, align 4, !tbaa !5
  %14951 = mul nsw i32 20, %14950
  %14952 = add nsw i32 %14949, %14951
  %14953 = sext i32 %14952 to i64
  %14954 = getelementptr inbounds double, ptr %14948, i64 %14953
  %14955 = load double, ptr %14954, align 8, !tbaa !11
  %14956 = load ptr, ptr %7, align 8, !tbaa !9
  %14957 = load i32, ptr %12, align 4, !tbaa !5
  %14958 = load i32, ptr %8, align 4, !tbaa !5
  %14959 = mul nsw i32 21, %14958
  %14960 = add nsw i32 %14957, %14959
  %14961 = sext i32 %14960 to i64
  %14962 = getelementptr inbounds double, ptr %14956, i64 %14961
  %14963 = load double, ptr %14962, align 8, !tbaa !11
  %14964 = fmul double 0x3C96000000000000, %14963
  %14965 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %14955, double %14964)
  %14966 = load ptr, ptr %7, align 8, !tbaa !9
  %14967 = load i32, ptr %12, align 4, !tbaa !5
  %14968 = load i32, ptr %8, align 4, !tbaa !5
  %14969 = mul nsw i32 22, %14968
  %14970 = add nsw i32 %14967, %14969
  %14971 = sext i32 %14970 to i64
  %14972 = getelementptr inbounds double, ptr %14966, i64 %14971
  %14973 = load double, ptr %14972, align 8, !tbaa !11
  %14974 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %14973, double %14965)
  %14975 = load ptr, ptr %7, align 8, !tbaa !9
  %14976 = load i32, ptr %12, align 4, !tbaa !5
  %14977 = load i32, ptr %8, align 4, !tbaa !5
  %14978 = mul nsw i32 23, %14977
  %14979 = add nsw i32 %14976, %14978
  %14980 = sext i32 %14979 to i64
  %14981 = getelementptr inbounds double, ptr %14975, i64 %14980
  %14982 = load double, ptr %14981, align 8, !tbaa !11
  %14983 = call double @llvm.fmuladd.f64(double 0x3CB8000000000001, double %14982, double %14974)
  %14984 = load ptr, ptr %7, align 8, !tbaa !9
  %14985 = load i32, ptr %12, align 4, !tbaa !5
  %14986 = load i32, ptr %8, align 4, !tbaa !5
  %14987 = mul nsw i32 24, %14986
  %14988 = add nsw i32 %14985, %14987
  %14989 = sext i32 %14988 to i64
  %14990 = getelementptr inbounds double, ptr %14984, i64 %14989
  %14991 = load double, ptr %14990, align 8, !tbaa !11
  %14992 = call double @llvm.fmuladd.f64(double 0xBFACD49071EC601E, double %14991, double %14983)
  %14993 = load ptr, ptr %7, align 8, !tbaa !9
  %14994 = load i32, ptr %12, align 4, !tbaa !5
  %14995 = load i32, ptr %8, align 4, !tbaa !5
  %14996 = mul nsw i32 25, %14995
  %14997 = add nsw i32 %14994, %14996
  %14998 = sext i32 %14997 to i64
  %14999 = getelementptr inbounds double, ptr %14993, i64 %14998
  %15000 = load double, ptr %14999, align 8, !tbaa !11
  %15001 = call double @llvm.fmuladd.f64(double 0x3FCEFDC8894D07FE, double %15000, double %14992)
  %15002 = load ptr, ptr %7, align 8, !tbaa !9
  %15003 = load i32, ptr %12, align 4, !tbaa !5
  %15004 = load i32, ptr %8, align 4, !tbaa !5
  %15005 = mul nsw i32 26, %15004
  %15006 = add nsw i32 %15003, %15005
  %15007 = sext i32 %15006 to i64
  %15008 = getelementptr inbounds double, ptr %15002, i64 %15007
  %15009 = load double, ptr %15008, align 8, !tbaa !11
  %15010 = call double @llvm.fmuladd.f64(double 0xBFDD2EB9CCB3BE36, double %15009, double %15001)
  %15011 = load ptr, ptr %7, align 8, !tbaa !9
  %15012 = load i32, ptr %12, align 4, !tbaa !5
  %15013 = load i32, ptr %8, align 4, !tbaa !5
  %15014 = mul nsw i32 27, %15013
  %15015 = add nsw i32 %15012, %15014
  %15016 = sext i32 %15015 to i64
  %15017 = getelementptr inbounds double, ptr %15011, i64 %15016
  %15018 = load double, ptr %15017, align 8, !tbaa !11
  %15019 = call double @llvm.fmuladd.f64(double 0xC01569E165D7940C, double %15018, double %15010)
  %15020 = load ptr, ptr %7, align 8, !tbaa !9
  %15021 = load i32, ptr %12, align 4, !tbaa !5
  %15022 = load i32, ptr %8, align 4, !tbaa !5
  %15023 = mul nsw i32 28, %15022
  %15024 = add nsw i32 %15021, %15023
  %15025 = sext i32 %15024 to i64
  %15026 = getelementptr inbounds double, ptr %15020, i64 %15025
  %15027 = load double, ptr %15026, align 8, !tbaa !11
  %15028 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %15027, double %15019)
  %15029 = load ptr, ptr %7, align 8, !tbaa !9
  %15030 = load i32, ptr %12, align 4, !tbaa !5
  %15031 = load i32, ptr %8, align 4, !tbaa !5
  %15032 = mul nsw i32 29, %15031
  %15033 = add nsw i32 %15030, %15032
  %15034 = sext i32 %15033 to i64
  %15035 = getelementptr inbounds double, ptr %15029, i64 %15034
  %15036 = load double, ptr %15035, align 8, !tbaa !11
  %15037 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %15036, double %15028)
  %15038 = load ptr, ptr %7, align 8, !tbaa !9
  %15039 = load i32, ptr %12, align 4, !tbaa !5
  %15040 = load i32, ptr %8, align 4, !tbaa !5
  %15041 = mul nsw i32 30, %15040
  %15042 = add nsw i32 %15039, %15041
  %15043 = sext i32 %15042 to i64
  %15044 = getelementptr inbounds double, ptr %15038, i64 %15043
  %15045 = load double, ptr %15044, align 8, !tbaa !11
  %15046 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %15045, double %15037)
  %15047 = load ptr, ptr %7, align 8, !tbaa !9
  %15048 = load i32, ptr %12, align 4, !tbaa !5
  %15049 = load i32, ptr %8, align 4, !tbaa !5
  %15050 = mul nsw i32 31, %15049
  %15051 = add nsw i32 %15048, %15050
  %15052 = sext i32 %15051 to i64
  %15053 = getelementptr inbounds double, ptr %15047, i64 %15052
  %15054 = load double, ptr %15053, align 8, !tbaa !11
  %15055 = call double @llvm.fmuladd.f64(double 0xBCC4800000000000, double %15054, double %15046)
  %15056 = load ptr, ptr %7, align 8, !tbaa !9
  %15057 = load i32, ptr %12, align 4, !tbaa !5
  %15058 = load i32, ptr %8, align 4, !tbaa !5
  %15059 = mul nsw i32 32, %15058
  %15060 = add nsw i32 %15057, %15059
  %15061 = sext i32 %15060 to i64
  %15062 = getelementptr inbounds double, ptr %15056, i64 %15061
  %15063 = load double, ptr %15062, align 8, !tbaa !11
  %15064 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %15063, double %15055)
  %15065 = load ptr, ptr %7, align 8, !tbaa !9
  %15066 = load i32, ptr %12, align 4, !tbaa !5
  %15067 = load i32, ptr %8, align 4, !tbaa !5
  %15068 = mul nsw i32 33, %15067
  %15069 = add nsw i32 %15066, %15068
  %15070 = sext i32 %15069 to i64
  %15071 = getelementptr inbounds double, ptr %15065, i64 %15070
  %15072 = load double, ptr %15071, align 8, !tbaa !11
  %15073 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %15072, double %15064)
  %15074 = load ptr, ptr %7, align 8, !tbaa !9
  %15075 = load i32, ptr %12, align 4, !tbaa !5
  %15076 = load i32, ptr %8, align 4, !tbaa !5
  %15077 = mul nsw i32 34, %15076
  %15078 = add nsw i32 %15075, %15077
  %15079 = sext i32 %15078 to i64
  %15080 = getelementptr inbounds double, ptr %15074, i64 %15079
  %15081 = load double, ptr %15080, align 8, !tbaa !11
  %15082 = call double @llvm.fmuladd.f64(double 0x3CA2FFFFFFFFFFFE, double %15081, double %15073)
  %15083 = load ptr, ptr %7, align 8, !tbaa !9
  %15084 = load i32, ptr %12, align 4, !tbaa !5
  %15085 = load i32, ptr %8, align 4, !tbaa !5
  %15086 = mul nsw i32 35, %15085
  %15087 = add nsw i32 %15084, %15086
  %15088 = sext i32 %15087 to i64
  %15089 = getelementptr inbounds double, ptr %15083, i64 %15088
  %15090 = load double, ptr %15089, align 8, !tbaa !11
  %15091 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %15090, double %15082)
  %15092 = load ptr, ptr %7, align 8, !tbaa !9
  %15093 = load i32, ptr %12, align 4, !tbaa !5
  %15094 = load i32, ptr %8, align 4, !tbaa !5
  %15095 = mul nsw i32 52, %15094
  %15096 = add nsw i32 %15093, %15095
  %15097 = sext i32 %15096 to i64
  %15098 = getelementptr inbounds double, ptr %15092, i64 %15097
  %15099 = load double, ptr %15098, align 8, !tbaa !11
  %15100 = call double @llvm.fmuladd.f64(double 0x3CB9DA84FC1C5FD3, double %15099, double %15091)
  %15101 = load ptr, ptr %7, align 8, !tbaa !9
  %15102 = load i32, ptr %12, align 4, !tbaa !5
  %15103 = load i32, ptr %8, align 4, !tbaa !5
  %15104 = mul nsw i32 54, %15103
  %15105 = add nsw i32 %15102, %15104
  %15106 = sext i32 %15105 to i64
  %15107 = getelementptr inbounds double, ptr %15101, i64 %15106
  %15108 = load double, ptr %15107, align 8, !tbaa !11
  %15109 = call double @llvm.fmuladd.f64(double 0xBC70F876CCDF6CD9, double %15108, double %15100)
  %15110 = load ptr, ptr %7, align 8, !tbaa !9
  %15111 = load i32, ptr %12, align 4, !tbaa !5
  %15112 = load i32, ptr %8, align 4, !tbaa !5
  %15113 = mul nsw i32 55, %15112
  %15114 = add nsw i32 %15111, %15113
  %15115 = sext i32 %15114 to i64
  %15116 = getelementptr inbounds double, ptr %15110, i64 %15115
  %15117 = load double, ptr %15116, align 8, !tbaa !11
  %15118 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %15117, double %15109)
  %15119 = load ptr, ptr %7, align 8, !tbaa !9
  %15120 = load i32, ptr %12, align 4, !tbaa !5
  %15121 = load i32, ptr %8, align 4, !tbaa !5
  %15122 = mul nsw i32 56, %15121
  %15123 = add nsw i32 %15120, %15122
  %15124 = sext i32 %15123 to i64
  %15125 = getelementptr inbounds double, ptr %15119, i64 %15124
  %15126 = load double, ptr %15125, align 8, !tbaa !11
  %15127 = call double @llvm.fmuladd.f64(double 0x400E488CB8C1EA66, double %15126, double %15118)
  %15128 = load ptr, ptr %7, align 8, !tbaa !9
  %15129 = load i32, ptr %12, align 4, !tbaa !5
  %15130 = load i32, ptr %8, align 4, !tbaa !5
  %15131 = mul nsw i32 57, %15130
  %15132 = add nsw i32 %15129, %15131
  %15133 = sext i32 %15132 to i64
  %15134 = getelementptr inbounds double, ptr %15128, i64 %15133
  %15135 = load double, ptr %15134, align 8, !tbaa !11
  %15136 = call double @llvm.fmuladd.f64(double 0x3FD4A299D1E9700C, double %15135, double %15127)
  %15137 = load ptr, ptr %7, align 8, !tbaa !9
  %15138 = load i32, ptr %12, align 4, !tbaa !5
  %15139 = load i32, ptr %8, align 4, !tbaa !5
  %15140 = mul nsw i32 58, %15139
  %15141 = add nsw i32 %15138, %15140
  %15142 = sext i32 %15141 to i64
  %15143 = getelementptr inbounds double, ptr %15137, i64 %15142
  %15144 = load double, ptr %15143, align 8, !tbaa !11
  %15145 = call double @llvm.fmuladd.f64(double 0xBFC5EA083165C4F9, double %15144, double %15136)
  %15146 = load ptr, ptr %7, align 8, !tbaa !9
  %15147 = load i32, ptr %12, align 4, !tbaa !5
  %15148 = load i32, ptr %8, align 4, !tbaa !5
  %15149 = mul nsw i32 59, %15148
  %15150 = add nsw i32 %15147, %15149
  %15151 = sext i32 %15150 to i64
  %15152 = getelementptr inbounds double, ptr %15146, i64 %15151
  %15153 = load double, ptr %15152, align 8, !tbaa !11
  %15154 = call double @llvm.fmuladd.f64(double 0x3FA462D8D66D7F7F, double %15153, double %15145)
  %15155 = load ptr, ptr %7, align 8, !tbaa !9
  %15156 = load i32, ptr %12, align 4, !tbaa !5
  %15157 = load i32, ptr %8, align 4, !tbaa !5
  %15158 = mul nsw i32 60, %15157
  %15159 = add nsw i32 %15156, %15158
  %15160 = sext i32 %15159 to i64
  %15161 = getelementptr inbounds double, ptr %15155, i64 %15160
  %15162 = load double, ptr %15161, align 8, !tbaa !11
  %15163 = call double @llvm.fmuladd.f64(double 0xBCABEE4386850DD1, double %15162, double %15154)
  %15164 = load ptr, ptr %7, align 8, !tbaa !9
  %15165 = load i32, ptr %12, align 4, !tbaa !5
  %15166 = load i32, ptr %8, align 4, !tbaa !5
  %15167 = mul nsw i32 61, %15166
  %15168 = add nsw i32 %15165, %15167
  %15169 = sext i32 %15168 to i64
  %15170 = getelementptr inbounds double, ptr %15164, i64 %15169
  %15171 = load double, ptr %15170, align 8, !tbaa !11
  %15172 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %15171, double %15163)
  %15173 = load ptr, ptr %7, align 8, !tbaa !9
  %15174 = load i32, ptr %12, align 4, !tbaa !5
  %15175 = load i32, ptr %8, align 4, !tbaa !5
  %15176 = mul nsw i32 62, %15175
  %15177 = add nsw i32 %15174, %15176
  %15178 = sext i32 %15177 to i64
  %15179 = getelementptr inbounds double, ptr %15173, i64 %15178
  %15180 = load double, ptr %15179, align 8, !tbaa !11
  %15181 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %15180, double %15172)
  %15182 = load ptr, ptr %7, align 8, !tbaa !9
  %15183 = load i32, ptr %12, align 4, !tbaa !5
  %15184 = load i32, ptr %8, align 4, !tbaa !5
  %15185 = mul nsw i32 63, %15184
  %15186 = add nsw i32 %15183, %15185
  %15187 = sext i32 %15186 to i64
  %15188 = getelementptr inbounds double, ptr %15182, i64 %15187
  %15189 = load double, ptr %15188, align 8, !tbaa !11
  %15190 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %15189, double %15181)
  %15191 = load ptr, ptr %7, align 8, !tbaa !9
  %15192 = load i32, ptr %12, align 4, !tbaa !5
  %15193 = load i32, ptr %8, align 4, !tbaa !5
  %15194 = mul nsw i32 64, %15193
  %15195 = add nsw i32 %15192, %15194
  %15196 = sext i32 %15195 to i64
  %15197 = getelementptr inbounds double, ptr %15191, i64 %15196
  %15198 = load double, ptr %15197, align 8, !tbaa !11
  %15199 = call double @llvm.fmuladd.f64(double 0x3CA02CD13B44F3C0, double %15198, double %15190)
  %15200 = load ptr, ptr %7, align 8, !tbaa !9
  %15201 = load i32, ptr %12, align 4, !tbaa !5
  %15202 = load i32, ptr %8, align 4, !tbaa !5
  %15203 = mul nsw i32 66, %15202
  %15204 = add nsw i32 %15201, %15203
  %15205 = sext i32 %15204 to i64
  %15206 = getelementptr inbounds double, ptr %15200, i64 %15205
  %15207 = load double, ptr %15206, align 8, !tbaa !11
  %15208 = call double @llvm.fmuladd.f64(double 0x3C70F876CCDF6CD9, double %15207, double %15199)
  %15209 = load ptr, ptr %7, align 8, !tbaa !9
  %15210 = load i32, ptr %12, align 4, !tbaa !5
  %15211 = load i32, ptr %8, align 4, !tbaa !5
  %15212 = mul nsw i32 67, %15211
  %15213 = add nsw i32 %15210, %15212
  %15214 = sext i32 %15213 to i64
  %15215 = getelementptr inbounds double, ptr %15209, i64 %15214
  %15216 = load double, ptr %15215, align 8, !tbaa !11
  %15217 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %15216, double %15208)
  store double %15217, ptr %11, align 8, !tbaa !11
  %15218 = load double, ptr %11, align 8, !tbaa !11
  %15219 = load ptr, ptr %9, align 8, !tbaa !9
  %15220 = load i32, ptr %12, align 4, !tbaa !5
  %15221 = load i32, ptr %10, align 4, !tbaa !5
  %15222 = mul nsw i32 52, %15221
  %15223 = add nsw i32 %15220, %15222
  %15224 = sext i32 %15223 to i64
  %15225 = getelementptr inbounds double, ptr %15219, i64 %15224
  %15226 = load double, ptr %15225, align 8, !tbaa !11
  %15227 = fadd double %15226, %15218
  store double %15227, ptr %15225, align 8, !tbaa !11
  %15228 = load ptr, ptr %7, align 8, !tbaa !9
  %15229 = load i32, ptr %12, align 4, !tbaa !5
  %15230 = load i32, ptr %8, align 4, !tbaa !5
  %15231 = mul nsw i32 20, %15230
  %15232 = add nsw i32 %15229, %15231
  %15233 = sext i32 %15232 to i64
  %15234 = getelementptr inbounds double, ptr %15228, i64 %15233
  %15235 = load double, ptr %15234, align 8, !tbaa !11
  %15236 = load ptr, ptr %7, align 8, !tbaa !9
  %15237 = load i32, ptr %12, align 4, !tbaa !5
  %15238 = load i32, ptr %8, align 4, !tbaa !5
  %15239 = mul nsw i32 21, %15238
  %15240 = add nsw i32 %15237, %15239
  %15241 = sext i32 %15240 to i64
  %15242 = getelementptr inbounds double, ptr %15236, i64 %15241
  %15243 = load double, ptr %15242, align 8, !tbaa !11
  %15244 = fmul double 0xBC78000000000002, %15243
  %15245 = call double @llvm.fmuladd.f64(double 0x3CB8000000000001, double %15235, double %15244)
  %15246 = load ptr, ptr %7, align 8, !tbaa !9
  %15247 = load i32, ptr %12, align 4, !tbaa !5
  %15248 = load i32, ptr %8, align 4, !tbaa !5
  %15249 = mul nsw i32 22, %15248
  %15250 = add nsw i32 %15247, %15249
  %15251 = sext i32 %15250 to i64
  %15252 = getelementptr inbounds double, ptr %15246, i64 %15251
  %15253 = load double, ptr %15252, align 8, !tbaa !11
  %15254 = call double @llvm.fmuladd.f64(double 0x3C92000000000000, double %15253, double %15245)
  %15255 = load ptr, ptr %7, align 8, !tbaa !9
  %15256 = load i32, ptr %12, align 4, !tbaa !5
  %15257 = load i32, ptr %8, align 4, !tbaa !5
  %15258 = mul nsw i32 23, %15257
  %15259 = add nsw i32 %15256, %15258
  %15260 = sext i32 %15259 to i64
  %15261 = getelementptr inbounds double, ptr %15255, i64 %15260
  %15262 = load double, ptr %15261, align 8, !tbaa !11
  %15263 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %15262, double %15254)
  %15264 = load ptr, ptr %7, align 8, !tbaa !9
  %15265 = load i32, ptr %12, align 4, !tbaa !5
  %15266 = load i32, ptr %8, align 4, !tbaa !5
  %15267 = mul nsw i32 24, %15266
  %15268 = add nsw i32 %15265, %15267
  %15269 = sext i32 %15268 to i64
  %15270 = getelementptr inbounds double, ptr %15264, i64 %15269
  %15271 = load double, ptr %15270, align 8, !tbaa !11
  %15272 = call double @llvm.fmuladd.f64(double 0xC01569E165D79415, double %15271, double %15263)
  %15273 = load ptr, ptr %7, align 8, !tbaa !9
  %15274 = load i32, ptr %12, align 4, !tbaa !5
  %15275 = load i32, ptr %8, align 4, !tbaa !5
  %15276 = mul nsw i32 25, %15275
  %15277 = add nsw i32 %15274, %15276
  %15278 = sext i32 %15277 to i64
  %15279 = getelementptr inbounds double, ptr %15273, i64 %15278
  %15280 = load double, ptr %15279, align 8, !tbaa !11
  %15281 = call double @llvm.fmuladd.f64(double 0xBFDD2EB9CCB3BDB8, double %15280, double %15272)
  %15282 = load ptr, ptr %7, align 8, !tbaa !9
  %15283 = load i32, ptr %12, align 4, !tbaa !5
  %15284 = load i32, ptr %8, align 4, !tbaa !5
  %15285 = mul nsw i32 26, %15284
  %15286 = add nsw i32 %15283, %15285
  %15287 = sext i32 %15286 to i64
  %15288 = getelementptr inbounds double, ptr %15282, i64 %15287
  %15289 = load double, ptr %15288, align 8, !tbaa !11
  %15290 = call double @llvm.fmuladd.f64(double 0x3FCEFDC8894D07B6, double %15289, double %15281)
  %15291 = load ptr, ptr %7, align 8, !tbaa !9
  %15292 = load i32, ptr %12, align 4, !tbaa !5
  %15293 = load i32, ptr %8, align 4, !tbaa !5
  %15294 = mul nsw i32 27, %15293
  %15295 = add nsw i32 %15292, %15294
  %15296 = sext i32 %15295 to i64
  %15297 = getelementptr inbounds double, ptr %15291, i64 %15296
  %15298 = load double, ptr %15297, align 8, !tbaa !11
  %15299 = call double @llvm.fmuladd.f64(double 0xBFACD49071EC5FCE, double %15298, double %15290)
  %15300 = load ptr, ptr %7, align 8, !tbaa !9
  %15301 = load i32, ptr %12, align 4, !tbaa !5
  %15302 = load i32, ptr %8, align 4, !tbaa !5
  %15303 = mul nsw i32 28, %15302
  %15304 = add nsw i32 %15301, %15303
  %15305 = sext i32 %15304 to i64
  %15306 = getelementptr inbounds double, ptr %15300, i64 %15305
  %15307 = load double, ptr %15306, align 8, !tbaa !11
  %15308 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %15307, double %15299)
  %15309 = load ptr, ptr %7, align 8, !tbaa !9
  %15310 = load i32, ptr %12, align 4, !tbaa !5
  %15311 = load i32, ptr %8, align 4, !tbaa !5
  %15312 = mul nsw i32 29, %15311
  %15313 = add nsw i32 %15310, %15312
  %15314 = sext i32 %15313 to i64
  %15315 = getelementptr inbounds double, ptr %15309, i64 %15314
  %15316 = load double, ptr %15315, align 8, !tbaa !11
  %15317 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %15316, double %15308)
  %15318 = load ptr, ptr %7, align 8, !tbaa !9
  %15319 = load i32, ptr %12, align 4, !tbaa !5
  %15320 = load i32, ptr %8, align 4, !tbaa !5
  %15321 = mul nsw i32 30, %15320
  %15322 = add nsw i32 %15319, %15321
  %15323 = sext i32 %15322 to i64
  %15324 = getelementptr inbounds double, ptr %15318, i64 %15323
  %15325 = load double, ptr %15324, align 8, !tbaa !11
  %15326 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %15325, double %15317)
  %15327 = load ptr, ptr %7, align 8, !tbaa !9
  %15328 = load i32, ptr %12, align 4, !tbaa !5
  %15329 = load i32, ptr %8, align 4, !tbaa !5
  %15330 = mul nsw i32 31, %15329
  %15331 = add nsw i32 %15328, %15330
  %15332 = sext i32 %15331 to i64
  %15333 = getelementptr inbounds double, ptr %15327, i64 %15332
  %15334 = load double, ptr %15333, align 8, !tbaa !11
  %15335 = call double @llvm.fmuladd.f64(double 0xBCA9FFFFFFFFFFFE, double %15334, double %15326)
  %15336 = load ptr, ptr %7, align 8, !tbaa !9
  %15337 = load i32, ptr %12, align 4, !tbaa !5
  %15338 = load i32, ptr %8, align 4, !tbaa !5
  %15339 = mul nsw i32 33, %15338
  %15340 = add nsw i32 %15337, %15339
  %15341 = sext i32 %15340 to i64
  %15342 = getelementptr inbounds double, ptr %15336, i64 %15341
  %15343 = load double, ptr %15342, align 8, !tbaa !11
  %15344 = call double @llvm.fmuladd.f64(double 0x3CA2FFFFFFFFFFFE, double %15343, double %15335)
  %15345 = load ptr, ptr %7, align 8, !tbaa !9
  %15346 = load i32, ptr %12, align 4, !tbaa !5
  %15347 = load i32, ptr %8, align 4, !tbaa !5
  %15348 = mul nsw i32 34, %15347
  %15349 = add nsw i32 %15346, %15348
  %15350 = sext i32 %15349 to i64
  %15351 = getelementptr inbounds double, ptr %15345, i64 %15350
  %15352 = load double, ptr %15351, align 8, !tbaa !11
  %15353 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %15352, double %15344)
  %15354 = load ptr, ptr %7, align 8, !tbaa !9
  %15355 = load i32, ptr %12, align 4, !tbaa !5
  %15356 = load i32, ptr %8, align 4, !tbaa !5
  %15357 = mul nsw i32 35, %15356
  %15358 = add nsw i32 %15355, %15357
  %15359 = sext i32 %15358 to i64
  %15360 = getelementptr inbounds double, ptr %15354, i64 %15359
  %15361 = load double, ptr %15360, align 8, !tbaa !11
  %15362 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %15361, double %15353)
  %15363 = load ptr, ptr %7, align 8, !tbaa !9
  %15364 = load i32, ptr %12, align 4, !tbaa !5
  %15365 = load i32, ptr %8, align 4, !tbaa !5
  %15366 = mul nsw i32 52, %15365
  %15367 = add nsw i32 %15364, %15366
  %15368 = sext i32 %15367 to i64
  %15369 = getelementptr inbounds double, ptr %15363, i64 %15368
  %15370 = load double, ptr %15369, align 8, !tbaa !11
  %15371 = call double @llvm.fmuladd.f64(double 0x3C93F9CBD67C52CA, double %15370, double %15362)
  %15372 = load ptr, ptr %7, align 8, !tbaa !9
  %15373 = load i32, ptr %12, align 4, !tbaa !5
  %15374 = load i32, ptr %8, align 4, !tbaa !5
  %15375 = mul nsw i32 53, %15374
  %15376 = add nsw i32 %15373, %15375
  %15377 = sext i32 %15376 to i64
  %15378 = getelementptr inbounds double, ptr %15372, i64 %15377
  %15379 = load double, ptr %15378, align 8, !tbaa !11
  %15380 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %15379, double %15371)
  %15381 = load ptr, ptr %7, align 8, !tbaa !9
  %15382 = load i32, ptr %12, align 4, !tbaa !5
  %15383 = load i32, ptr %8, align 4, !tbaa !5
  %15384 = mul nsw i32 54, %15383
  %15385 = add nsw i32 %15382, %15384
  %15386 = sext i32 %15385 to i64
  %15387 = getelementptr inbounds double, ptr %15381, i64 %15386
  %15388 = load double, ptr %15387, align 8, !tbaa !11
  %15389 = call double @llvm.fmuladd.f64(double 0xBC8F1CD9CCEEF238, double %15388, double %15380)
  %15390 = load ptr, ptr %7, align 8, !tbaa !9
  %15391 = load i32, ptr %12, align 4, !tbaa !5
  %15392 = load i32, ptr %8, align 4, !tbaa !5
  %15393 = mul nsw i32 55, %15392
  %15394 = add nsw i32 %15391, %15393
  %15395 = sext i32 %15394 to i64
  %15396 = getelementptr inbounds double, ptr %15390, i64 %15395
  %15397 = load double, ptr %15396, align 8, !tbaa !11
  %15398 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %15397, double %15389)
  %15399 = load ptr, ptr %7, align 8, !tbaa !9
  %15400 = load i32, ptr %12, align 4, !tbaa !5
  %15401 = load i32, ptr %8, align 4, !tbaa !5
  %15402 = mul nsw i32 56, %15401
  %15403 = add nsw i32 %15400, %15402
  %15404 = sext i32 %15403 to i64
  %15405 = getelementptr inbounds double, ptr %15399, i64 %15404
  %15406 = load double, ptr %15405, align 8, !tbaa !11
  %15407 = call double @llvm.fmuladd.f64(double 0xBFD039FE04F71643, double %15406, double %15398)
  %15408 = load ptr, ptr %7, align 8, !tbaa !9
  %15409 = load i32, ptr %12, align 4, !tbaa !5
  %15410 = load i32, ptr %8, align 4, !tbaa !5
  %15411 = mul nsw i32 57, %15410
  %15412 = add nsw i32 %15409, %15411
  %15413 = sext i32 %15412 to i64
  %15414 = getelementptr inbounds double, ptr %15408, i64 %15413
  %15415 = load double, ptr %15414, align 8, !tbaa !11
  %15416 = call double @llvm.fmuladd.f64(double 0xBFE30958FBF81244, double %15415, double %15407)
  %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 58, %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 = call double @llvm.fmuladd.f64(double 0xBFE30958FBF81231, double %15424, double %15416)
  %15426 = load ptr, ptr %7, align 8, !tbaa !9
  %15427 = load i32, ptr %12, align 4, !tbaa !5
  %15428 = load i32, ptr %8, align 4, !tbaa !5
  %15429 = mul nsw i32 59, %15428
  %15430 = add nsw i32 %15427, %15429
  %15431 = sext i32 %15430 to i64
  %15432 = getelementptr inbounds double, ptr %15426, i64 %15431
  %15433 = load double, ptr %15432, align 8, !tbaa !11
  %15434 = call double @llvm.fmuladd.f64(double 0xBFD039FE04F71638, double %15433, double %15425)
  %15435 = load ptr, ptr %7, align 8, !tbaa !9
  %15436 = load i32, ptr %12, align 4, !tbaa !5
  %15437 = load i32, ptr %8, align 4, !tbaa !5
  %15438 = mul nsw i32 60, %15437
  %15439 = add nsw i32 %15436, %15438
  %15440 = sext i32 %15439 to i64
  %15441 = getelementptr inbounds double, ptr %15435, i64 %15440
  %15442 = load double, ptr %15441, align 8, !tbaa !11
  %15443 = call double @llvm.fmuladd.f64(double 0x3C9CFDCAF353049B, double %15442, double %15434)
  %15444 = load ptr, ptr %7, align 8, !tbaa !9
  %15445 = load i32, ptr %12, align 4, !tbaa !5
  %15446 = load i32, ptr %8, align 4, !tbaa !5
  %15447 = mul nsw i32 61, %15446
  %15448 = add nsw i32 %15445, %15447
  %15449 = sext i32 %15448 to i64
  %15450 = getelementptr inbounds double, ptr %15444, i64 %15449
  %15451 = load double, ptr %15450, align 8, !tbaa !11
  %15452 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %15451, double %15443)
  %15453 = load ptr, ptr %7, align 8, !tbaa !9
  %15454 = load i32, ptr %12, align 4, !tbaa !5
  %15455 = load i32, ptr %8, align 4, !tbaa !5
  %15456 = mul nsw i32 62, %15455
  %15457 = add nsw i32 %15454, %15456
  %15458 = sext i32 %15457 to i64
  %15459 = getelementptr inbounds double, ptr %15453, i64 %15458
  %15460 = load double, ptr %15459, align 8, !tbaa !11
  %15461 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %15460, double %15452)
  %15462 = load ptr, ptr %7, align 8, !tbaa !9
  %15463 = load i32, ptr %12, align 4, !tbaa !5
  %15464 = load i32, ptr %8, align 4, !tbaa !5
  %15465 = mul nsw i32 63, %15464
  %15466 = add nsw i32 %15463, %15465
  %15467 = sext i32 %15466 to i64
  %15468 = getelementptr inbounds double, ptr %15462, i64 %15467
  %15469 = load double, ptr %15468, align 8, !tbaa !11
  %15470 = call double @llvm.fmuladd.f64(double 0x3CA3CC8A99AF5452, double %15469, double %15461)
  %15471 = load ptr, ptr %7, align 8, !tbaa !9
  %15472 = load i32, ptr %12, align 4, !tbaa !5
  %15473 = load i32, ptr %8, align 4, !tbaa !5
  %15474 = mul nsw i32 64, %15473
  %15475 = add nsw i32 %15472, %15474
  %15476 = sext i32 %15475 to i64
  %15477 = getelementptr inbounds double, ptr %15471, i64 %15476
  %15478 = load double, ptr %15477, align 8, !tbaa !11
  %15479 = call double @llvm.fmuladd.f64(double 0xBC8152F9467969C8, double %15478, double %15470)
  %15480 = load ptr, ptr %7, align 8, !tbaa !9
  %15481 = load i32, ptr %12, align 4, !tbaa !5
  %15482 = load i32, ptr %8, align 4, !tbaa !5
  %15483 = mul nsw i32 65, %15482
  %15484 = add nsw i32 %15481, %15483
  %15485 = sext i32 %15484 to i64
  %15486 = getelementptr inbounds double, ptr %15480, i64 %15485
  %15487 = load double, ptr %15486, align 8, !tbaa !11
  %15488 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %15487, double %15479)
  %15489 = load ptr, ptr %7, align 8, !tbaa !9
  %15490 = load i32, ptr %12, align 4, !tbaa !5
  %15491 = load i32, ptr %8, align 4, !tbaa !5
  %15492 = mul nsw i32 66, %15491
  %15493 = add nsw i32 %15490, %15492
  %15494 = sext i32 %15493 to i64
  %15495 = getelementptr inbounds double, ptr %15489, i64 %15494
  %15496 = load double, ptr %15495, align 8, !tbaa !11
  %15497 = call double @llvm.fmuladd.f64(double 0xBC926280B3476096, double %15496, double %15488)
  %15498 = load ptr, ptr %7, align 8, !tbaa !9
  %15499 = load i32, ptr %12, align 4, !tbaa !5
  %15500 = load i32, ptr %8, align 4, !tbaa !5
  %15501 = mul nsw i32 67, %15500
  %15502 = add nsw i32 %15499, %15501
  %15503 = sext i32 %15502 to i64
  %15504 = getelementptr inbounds double, ptr %15498, i64 %15503
  %15505 = load double, ptr %15504, align 8, !tbaa !11
  %15506 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %15505, double %15497)
  store double %15506, ptr %11, align 8, !tbaa !11
  %15507 = load double, ptr %11, align 8, !tbaa !11
  %15508 = load ptr, ptr %9, align 8, !tbaa !9
  %15509 = load i32, ptr %12, align 4, !tbaa !5
  %15510 = load i32, ptr %10, align 4, !tbaa !5
  %15511 = mul nsw i32 53, %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 = fadd double %15515, %15507
  store double %15516, ptr %15514, align 8, !tbaa !11
  %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 20, %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 = load ptr, ptr %7, align 8, !tbaa !9
  %15526 = load i32, ptr %12, align 4, !tbaa !5
  %15527 = load i32, ptr %8, align 4, !tbaa !5
  %15528 = mul nsw i32 21, %15527
  %15529 = add nsw i32 %15526, %15528
  %15530 = sext i32 %15529 to i64
  %15531 = getelementptr inbounds double, ptr %15525, i64 %15530
  %15532 = load double, ptr %15531, align 8, !tbaa !11
  %15533 = fmul double 0x3C70000000000001, %15532
  %15534 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %15524, double %15533)
  %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 22, %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 0x3C90000000000000, 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 24, %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 0xBFAC37F3CCE9FD18, 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 25, %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 0xBFB4C23AD63BEF9A, 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 26, %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 0x3FEFAD7976B5DE29, 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 27, %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 0x3FF043C98657E812, 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 28, %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 0x3C98000000000000, 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 30, %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 0x3C90000000000000, 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 31, %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 0x3CA4000000000001, 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 32, %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 0x3C88000000000000, 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 33, %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 0xBC70000000000001, 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 52, %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 0x3C7DB2CFE686FE7B, 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 53, %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 0x3C91AD7BC01366B7, 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 54, %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 0x3C56A09E667F3BCC, 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 55, %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 0xBC86A09E667F3BCC, double %15659, double %15651)
  %15661 = load ptr, ptr %7, align 8, !tbaa !9
  %15662 = load i32, ptr %12, align 4, !tbaa !5
  %15663 = load i32, ptr %8, align 4, !tbaa !5
  %15664 = mul nsw i32 56, %15663
  %15665 = add nsw i32 %15662, %15664
  %15666 = sext i32 %15665 to i64
  %15667 = getelementptr inbounds double, ptr %15661, i64 %15666
  %15668 = load double, ptr %15667, align 8, !tbaa !11
  %15669 = call double @llvm.fmuladd.f64(double 0x3FD08C54FF101A10, double %15668, double %15660)
  %15670 = load ptr, ptr %7, align 8, !tbaa !9
  %15671 = load i32, ptr %12, align 4, !tbaa !5
  %15672 = load i32, ptr %8, align 4, !tbaa !5
  %15673 = mul nsw i32 57, %15672
  %15674 = add nsw i32 %15671, %15673
  %15675 = sext i32 %15674 to i64
  %15676 = getelementptr inbounds double, ptr %15670, i64 %15675
  %15677 = load double, ptr %15676, align 8, !tbaa !11
  %15678 = call double @llvm.fmuladd.f64(double 0x4007001BD846D0B2, double %15677, double %15669)
  %15679 = load ptr, ptr %7, align 8, !tbaa !9
  %15680 = load i32, ptr %12, align 4, !tbaa !5
  %15681 = load i32, ptr %8, align 4, !tbaa !5
  %15682 = mul nsw i32 58, %15681
  %15683 = add nsw i32 %15680, %15682
  %15684 = sext i32 %15683 to i64
  %15685 = getelementptr inbounds double, ptr %15679, i64 %15684
  %15686 = load double, ptr %15685, align 8, !tbaa !11
  %15687 = call double @llvm.fmuladd.f64(double 0x3FD0C7817D9C3137, double %15686, double %15678)
  %15688 = load ptr, ptr %7, align 8, !tbaa !9
  %15689 = load i32, ptr %12, align 4, !tbaa !5
  %15690 = load i32, ptr %8, align 4, !tbaa !5
  %15691 = mul nsw i32 59, %15690
  %15692 = add nsw i32 %15689, %15691
  %15693 = sext i32 %15692 to i64
  %15694 = getelementptr inbounds double, ptr %15688, i64 %15693
  %15695 = load double, ptr %15694, align 8, !tbaa !11
  %15696 = call double @llvm.fmuladd.f64(double 0xBFB8DF388696F54E, double %15695, double %15687)
  %15697 = load ptr, ptr %7, align 8, !tbaa !9
  %15698 = load i32, ptr %12, align 4, !tbaa !5
  %15699 = load i32, ptr %8, align 4, !tbaa !5
  %15700 = mul nsw i32 60, %15699
  %15701 = add nsw i32 %15698, %15700
  %15702 = sext i32 %15701 to i64
  %15703 = getelementptr inbounds double, ptr %15697, i64 %15702
  %15704 = load double, ptr %15703, align 8, !tbaa !11
  %15705 = call double @llvm.fmuladd.f64(double 0xBC93CC8A99AF5452, double %15704, double %15696)
  %15706 = load ptr, ptr %7, align 8, !tbaa !9
  %15707 = load i32, ptr %12, align 4, !tbaa !5
  %15708 = load i32, ptr %8, align 4, !tbaa !5
  %15709 = mul nsw i32 61, %15708
  %15710 = add nsw i32 %15707, %15709
  %15711 = sext i32 %15710 to i64
  %15712 = getelementptr inbounds double, ptr %15706, i64 %15711
  %15713 = load double, ptr %15712, align 8, !tbaa !11
  %15714 = call double @llvm.fmuladd.f64(double 0xBCA6A09E667F3BCC, double %15713, double %15705)
  %15715 = load ptr, ptr %7, align 8, !tbaa !9
  %15716 = load i32, ptr %12, align 4, !tbaa !5
  %15717 = load i32, ptr %8, align 4, !tbaa !5
  %15718 = mul nsw i32 62, %15717
  %15719 = add nsw i32 %15716, %15718
  %15720 = sext i32 %15719 to i64
  %15721 = getelementptr inbounds double, ptr %15715, i64 %15720
  %15722 = load double, ptr %15721, align 8, !tbaa !11
  %15723 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %15722, double %15714)
  %15724 = load ptr, ptr %7, align 8, !tbaa !9
  %15725 = load i32, ptr %12, align 4, !tbaa !5
  %15726 = load i32, ptr %8, align 4, !tbaa !5
  %15727 = mul nsw i32 63, %15726
  %15728 = add nsw i32 %15725, %15727
  %15729 = sext i32 %15728 to i64
  %15730 = getelementptr inbounds double, ptr %15724, i64 %15729
  %15731 = load double, ptr %15730, align 8, !tbaa !11
  %15732 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %15731, double %15723)
  %15733 = load ptr, ptr %7, align 8, !tbaa !9
  %15734 = load i32, ptr %12, align 4, !tbaa !5
  %15735 = load i32, ptr %8, align 4, !tbaa !5
  %15736 = mul nsw i32 64, %15735
  %15737 = add nsw i32 %15734, %15736
  %15738 = sext i32 %15737 to i64
  %15739 = getelementptr inbounds double, ptr %15733, i64 %15738
  %15740 = load double, ptr %15739, align 8, !tbaa !11
  %15741 = call double @llvm.fmuladd.f64(double 0xBC8A29B726831D24, double %15740, double %15732)
  %15742 = load ptr, ptr %7, align 8, !tbaa !9
  %15743 = load i32, ptr %12, align 4, !tbaa !5
  %15744 = load i32, ptr %8, align 4, !tbaa !5
  %15745 = mul nsw i32 65, %15744
  %15746 = add nsw i32 %15743, %15745
  %15747 = sext i32 %15746 to i64
  %15748 = getelementptr inbounds double, ptr %15742, i64 %15747
  %15749 = load double, ptr %15748, align 8, !tbaa !11
  %15750 = call double @llvm.fmuladd.f64(double 0x3C73CC8A99AF5453, double %15749, double %15741)
  %15751 = load ptr, ptr %7, align 8, !tbaa !9
  %15752 = load i32, ptr %12, align 4, !tbaa !5
  %15753 = load i32, ptr %8, align 4, !tbaa !5
  %15754 = mul nsw i32 66, %15753
  %15755 = add nsw i32 %15752, %15754
  %15756 = sext i32 %15755 to i64
  %15757 = getelementptr inbounds double, ptr %15751, i64 %15756
  %15758 = load double, ptr %15757, align 8, !tbaa !11
  %15759 = call double @llvm.fmuladd.f64(double 0xBC56A09E667F3BCC, double %15758, double %15750)
  %15760 = load ptr, ptr %7, align 8, !tbaa !9
  %15761 = load i32, ptr %12, align 4, !tbaa !5
  %15762 = load i32, ptr %8, align 4, !tbaa !5
  %15763 = mul nsw i32 67, %15762
  %15764 = add nsw i32 %15761, %15763
  %15765 = sext i32 %15764 to i64
  %15766 = getelementptr inbounds double, ptr %15760, i64 %15765
  %15767 = load double, ptr %15766, align 8, !tbaa !11
  %15768 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %15767, double %15759)
  store double %15768, ptr %11, align 8, !tbaa !11
  %15769 = load double, ptr %11, align 8, !tbaa !11
  %15770 = load ptr, ptr %9, align 8, !tbaa !9
  %15771 = load i32, ptr %12, align 4, !tbaa !5
  %15772 = load i32, ptr %10, align 4, !tbaa !5
  %15773 = mul nsw i32 54, %15772
  %15774 = add nsw i32 %15771, %15773
  %15775 = sext i32 %15774 to i64
  %15776 = getelementptr inbounds double, ptr %15770, i64 %15775
  %15777 = load double, ptr %15776, align 8, !tbaa !11
  %15778 = fadd double %15777, %15769
  store double %15778, ptr %15776, align 8, !tbaa !11
  %15779 = load ptr, ptr %7, align 8, !tbaa !9
  %15780 = load i32, ptr %12, align 4, !tbaa !5
  %15781 = load i32, ptr %8, align 4, !tbaa !5
  %15782 = mul nsw i32 20, %15781
  %15783 = add nsw i32 %15780, %15782
  %15784 = sext i32 %15783 to i64
  %15785 = getelementptr inbounds double, ptr %15779, i64 %15784
  %15786 = load double, ptr %15785, align 8, !tbaa !11
  %15787 = load ptr, ptr %7, align 8, !tbaa !9
  %15788 = load i32, ptr %12, align 4, !tbaa !5
  %15789 = load i32, ptr %8, align 4, !tbaa !5
  %15790 = mul nsw i32 22, %15789
  %15791 = add nsw i32 %15788, %15790
  %15792 = sext i32 %15791 to i64
  %15793 = getelementptr inbounds double, ptr %15787, i64 %15792
  %15794 = load double, ptr %15793, align 8, !tbaa !11
  %15795 = fmul double 0x3C90000000000000, %15794
  %15796 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %15786, double %15795)
  %15797 = load ptr, ptr %7, align 8, !tbaa !9
  %15798 = load i32, ptr %12, align 4, !tbaa !5
  %15799 = load i32, ptr %8, align 4, !tbaa !5
  %15800 = mul nsw i32 23, %15799
  %15801 = add nsw i32 %15798, %15800
  %15802 = sext i32 %15801 to i64
  %15803 = getelementptr inbounds double, ptr %15797, i64 %15802
  %15804 = load double, ptr %15803, align 8, !tbaa !11
  %15805 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %15804, double %15796)
  %15806 = load ptr, ptr %7, align 8, !tbaa !9
  %15807 = load i32, ptr %12, align 4, !tbaa !5
  %15808 = load i32, ptr %8, align 4, !tbaa !5
  %15809 = mul nsw i32 24, %15808
  %15810 = add nsw i32 %15807, %15809
  %15811 = sext i32 %15810 to i64
  %15812 = getelementptr inbounds double, ptr %15806, i64 %15811
  %15813 = load double, ptr %15812, align 8, !tbaa !11
  %15814 = call double @llvm.fmuladd.f64(double 0x3FF043C98657E812, double %15813, double %15805)
  %15815 = load ptr, ptr %7, align 8, !tbaa !9
  %15816 = load i32, ptr %12, align 4, !tbaa !5
  %15817 = load i32, ptr %8, align 4, !tbaa !5
  %15818 = mul nsw i32 25, %15817
  %15819 = add nsw i32 %15816, %15818
  %15820 = sext i32 %15819 to i64
  %15821 = getelementptr inbounds double, ptr %15815, i64 %15820
  %15822 = load double, ptr %15821, align 8, !tbaa !11
  %15823 = call double @llvm.fmuladd.f64(double 0x3FEFAD7976B5DE25, double %15822, double %15814)
  %15824 = load ptr, ptr %7, align 8, !tbaa !9
  %15825 = load i32, ptr %12, align 4, !tbaa !5
  %15826 = load i32, ptr %8, align 4, !tbaa !5
  %15827 = mul nsw i32 26, %15826
  %15828 = add nsw i32 %15825, %15827
  %15829 = sext i32 %15828 to i64
  %15830 = getelementptr inbounds double, ptr %15824, i64 %15829
  %15831 = load double, ptr %15830, align 8, !tbaa !11
  %15832 = call double @llvm.fmuladd.f64(double 0xBFB4C23AD63BEF6E, double %15831, double %15823)
  %15833 = load ptr, ptr %7, align 8, !tbaa !9
  %15834 = load i32, ptr %12, align 4, !tbaa !5
  %15835 = load i32, ptr %8, align 4, !tbaa !5
  %15836 = mul nsw i32 27, %15835
  %15837 = add nsw i32 %15834, %15836
  %15838 = sext i32 %15837 to i64
  %15839 = getelementptr inbounds double, ptr %15833, i64 %15838
  %15840 = load double, ptr %15839, align 8, !tbaa !11
  %15841 = call double @llvm.fmuladd.f64(double 0xBFAC37F3CCE9FD3C, double %15840, double %15832)
  %15842 = load ptr, ptr %7, align 8, !tbaa !9
  %15843 = load i32, ptr %12, align 4, !tbaa !5
  %15844 = load i32, ptr %8, align 4, !tbaa !5
  %15845 = mul nsw i32 28, %15844
  %15846 = add nsw i32 %15843, %15845
  %15847 = sext i32 %15846 to i64
  %15848 = getelementptr inbounds double, ptr %15842, i64 %15847
  %15849 = load double, ptr %15848, align 8, !tbaa !11
  %15850 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %15849, double %15841)
  %15851 = load ptr, ptr %7, align 8, !tbaa !9
  %15852 = load i32, ptr %12, align 4, !tbaa !5
  %15853 = load i32, ptr %8, align 4, !tbaa !5
  %15854 = mul nsw i32 29, %15853
  %15855 = add nsw i32 %15852, %15854
  %15856 = sext i32 %15855 to i64
  %15857 = getelementptr inbounds double, ptr %15851, i64 %15856
  %15858 = load double, ptr %15857, align 8, !tbaa !11
  %15859 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %15858, double %15850)
  %15860 = load ptr, ptr %7, align 8, !tbaa !9
  %15861 = load i32, ptr %12, align 4, !tbaa !5
  %15862 = load i32, ptr %8, align 4, !tbaa !5
  %15863 = mul nsw i32 30, %15862
  %15864 = add nsw i32 %15861, %15863
  %15865 = sext i32 %15864 to i64
  %15866 = getelementptr inbounds double, ptr %15860, i64 %15865
  %15867 = load double, ptr %15866, align 8, !tbaa !11
  %15868 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %15867, double %15859)
  %15869 = load ptr, ptr %7, align 8, !tbaa !9
  %15870 = load i32, ptr %12, align 4, !tbaa !5
  %15871 = load i32, ptr %8, align 4, !tbaa !5
  %15872 = mul nsw i32 31, %15871
  %15873 = add nsw i32 %15870, %15872
  %15874 = sext i32 %15873 to i64
  %15875 = getelementptr inbounds double, ptr %15869, i64 %15874
  %15876 = load double, ptr %15875, align 8, !tbaa !11
  %15877 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %15876, double %15868)
  %15878 = load ptr, ptr %7, align 8, !tbaa !9
  %15879 = load i32, ptr %12, align 4, !tbaa !5
  %15880 = load i32, ptr %8, align 4, !tbaa !5
  %15881 = mul nsw i32 32, %15880
  %15882 = add nsw i32 %15879, %15881
  %15883 = sext i32 %15882 to i64
  %15884 = getelementptr inbounds double, ptr %15878, i64 %15883
  %15885 = load double, ptr %15884, align 8, !tbaa !11
  %15886 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %15885, double %15877)
  %15887 = load ptr, ptr %7, align 8, !tbaa !9
  %15888 = load i32, ptr %12, align 4, !tbaa !5
  %15889 = load i32, ptr %8, align 4, !tbaa !5
  %15890 = mul nsw i32 33, %15889
  %15891 = add nsw i32 %15888, %15890
  %15892 = sext i32 %15891 to i64
  %15893 = getelementptr inbounds double, ptr %15887, i64 %15892
  %15894 = load double, ptr %15893, align 8, !tbaa !11
  %15895 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %15894, double %15886)
  %15896 = load ptr, ptr %7, align 8, !tbaa !9
  %15897 = load i32, ptr %12, align 4, !tbaa !5
  %15898 = load i32, ptr %8, align 4, !tbaa !5
  %15899 = mul nsw i32 35, %15898
  %15900 = add nsw i32 %15897, %15899
  %15901 = sext i32 %15900 to i64
  %15902 = getelementptr inbounds double, ptr %15896, i64 %15901
  %15903 = load double, ptr %15902, align 8, !tbaa !11
  %15904 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %15903, double %15895)
  %15905 = load ptr, ptr %7, align 8, !tbaa !9
  %15906 = load i32, ptr %12, align 4, !tbaa !5
  %15907 = load i32, ptr %8, align 4, !tbaa !5
  %15908 = mul nsw i32 52, %15907
  %15909 = add nsw i32 %15906, %15908
  %15910 = sext i32 %15909 to i64
  %15911 = getelementptr inbounds double, ptr %15905, i64 %15910
  %15912 = load double, ptr %15911, align 8, !tbaa !11
  %15913 = call double @llvm.fmuladd.f64(double 0x3C726280B3476096, double %15912, double %15904)
  %15914 = load ptr, ptr %7, align 8, !tbaa !9
  %15915 = load i32, ptr %12, align 4, !tbaa !5
  %15916 = load i32, ptr %8, align 4, !tbaa !5
  %15917 = mul nsw i32 53, %15916
  %15918 = add nsw i32 %15915, %15917
  %15919 = sext i32 %15918 to i64
  %15920 = getelementptr inbounds double, ptr %15914, i64 %15919
  %15921 = load double, ptr %15920, align 8, !tbaa !11
  %15922 = call double @llvm.fmuladd.f64(double 0x3C46A09E667F3BCB, double %15921, double %15913)
  %15923 = load ptr, ptr %7, align 8, !tbaa !9
  %15924 = load i32, ptr %12, align 4, !tbaa !5
  %15925 = load i32, ptr %8, align 4, !tbaa !5
  %15926 = mul nsw i32 54, %15925
  %15927 = add nsw i32 %15924, %15926
  %15928 = sext i32 %15927 to i64
  %15929 = getelementptr inbounds double, ptr %15923, i64 %15928
  %15930 = load double, ptr %15929, align 8, !tbaa !11
  %15931 = call double @llvm.fmuladd.f64(double 0xBC9536948017480F, double %15930, double %15922)
  %15932 = load ptr, ptr %7, align 8, !tbaa !9
  %15933 = load i32, ptr %12, align 4, !tbaa !5
  %15934 = load i32, ptr %8, align 4, !tbaa !5
  %15935 = mul nsw i32 55, %15934
  %15936 = add nsw i32 %15933, %15935
  %15937 = sext i32 %15936 to i64
  %15938 = getelementptr inbounds double, ptr %15932, i64 %15937
  %15939 = load double, ptr %15938, align 8, !tbaa !11
  %15940 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %15939, double %15931)
  %15941 = load ptr, ptr %7, align 8, !tbaa !9
  %15942 = load i32, ptr %12, align 4, !tbaa !5
  %15943 = load i32, ptr %8, align 4, !tbaa !5
  %15944 = mul nsw i32 56, %15943
  %15945 = add nsw i32 %15942, %15944
  %15946 = sext i32 %15945 to i64
  %15947 = getelementptr inbounds double, ptr %15941, i64 %15946
  %15948 = load double, ptr %15947, align 8, !tbaa !11
  %15949 = call double @llvm.fmuladd.f64(double 0xBF9102DA00B18A68, double %15948, double %15940)
  %15950 = load ptr, ptr %7, align 8, !tbaa !9
  %15951 = load i32, ptr %12, align 4, !tbaa !5
  %15952 = load i32, ptr %8, align 4, !tbaa !5
  %15953 = mul nsw i32 57, %15952
  %15954 = add nsw i32 %15951, %15953
  %15955 = sext i32 %15954 to i64
  %15956 = getelementptr inbounds double, ptr %15950, i64 %15955
  %15957 = load double, ptr %15956, align 8, !tbaa !11
  %15958 = call double @llvm.fmuladd.f64(double 0x3FCD5953692F6EA6, double %15957, double %15949)
  %15959 = load ptr, ptr %7, align 8, !tbaa !9
  %15960 = load i32, ptr %12, align 4, !tbaa !5
  %15961 = load i32, ptr %8, align 4, !tbaa !5
  %15962 = mul nsw i32 58, %15961
  %15963 = add nsw i32 %15960, %15962
  %15964 = sext i32 %15963 to i64
  %15965 = getelementptr inbounds double, ptr %15959, i64 %15964
  %15966 = load double, ptr %15965, align 8, !tbaa !11
  %15967 = call double @llvm.fmuladd.f64(double 0x3FE3C4545BCF030C, double %15966, double %15958)
  %15968 = load ptr, ptr %7, align 8, !tbaa !9
  %15969 = load i32, ptr %12, align 4, !tbaa !5
  %15970 = load i32, ptr %8, align 4, !tbaa !5
  %15971 = mul nsw i32 59, %15970
  %15972 = add nsw i32 %15969, %15971
  %15973 = sext i32 %15972 to i64
  %15974 = getelementptr inbounds double, ptr %15968, i64 %15973
  %15975 = load double, ptr %15974, align 8, !tbaa !11
  %15976 = call double @llvm.fmuladd.f64(double 0x3FD6A4D32EB1F710, double %15975, double %15967)
  %15977 = load ptr, ptr %7, align 8, !tbaa !9
  %15978 = load i32, ptr %12, align 4, !tbaa !5
  %15979 = load i32, ptr %8, align 4, !tbaa !5
  %15980 = mul nsw i32 60, %15979
  %15981 = add nsw i32 %15978, %15980
  %15982 = sext i32 %15981 to i64
  %15983 = getelementptr inbounds double, ptr %15977, i64 %15982
  %15984 = load double, ptr %15983, align 8, !tbaa !11
  %15985 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %15984, double %15976)
  %15986 = load ptr, ptr %7, align 8, !tbaa !9
  %15987 = load i32, ptr %12, align 4, !tbaa !5
  %15988 = load i32, ptr %8, align 4, !tbaa !5
  %15989 = mul nsw i32 61, %15988
  %15990 = add nsw i32 %15987, %15989
  %15991 = sext i32 %15990 to i64
  %15992 = getelementptr inbounds double, ptr %15986, i64 %15991
  %15993 = load double, ptr %15992, align 8, !tbaa !11
  %15994 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %15993, double %15985)
  %15995 = load ptr, ptr %7, align 8, !tbaa !9
  %15996 = load i32, ptr %12, align 4, !tbaa !5
  %15997 = load i32, ptr %8, align 4, !tbaa !5
  %15998 = mul nsw i32 62, %15997
  %15999 = add nsw i32 %15996, %15998
  %16000 = sext i32 %15999 to i64
  %16001 = getelementptr inbounds double, ptr %15995, i64 %16000
  %16002 = load double, ptr %16001, align 8, !tbaa !11
  %16003 = call double @llvm.fmuladd.f64(double 0xBCA974B2334F2346, double %16002, double %15994)
  %16004 = load ptr, ptr %7, align 8, !tbaa !9
  %16005 = load i32, ptr %12, align 4, !tbaa !5
  %16006 = load i32, ptr %8, align 4, !tbaa !5
  %16007 = mul nsw i32 63, %16006
  %16008 = add nsw i32 %16005, %16007
  %16009 = sext i32 %16008 to i64
  %16010 = getelementptr inbounds double, ptr %16004, i64 %16009
  %16011 = load double, ptr %16010, align 8, !tbaa !11
  %16012 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %16011, double %16003)
  %16013 = load ptr, ptr %7, align 8, !tbaa !9
  %16014 = load i32, ptr %12, align 4, !tbaa !5
  %16015 = load i32, ptr %8, align 4, !tbaa !5
  %16016 = mul nsw i32 64, %16015
  %16017 = add nsw i32 %16014, %16016
  %16018 = sext i32 %16017 to i64
  %16019 = getelementptr inbounds double, ptr %16013, i64 %16018
  %16020 = load double, ptr %16019, align 8, !tbaa !11
  %16021 = call double @llvm.fmuladd.f64(double 0xBC84818F8CE34E32, double %16020, double %16012)
  %16022 = load ptr, ptr %7, align 8, !tbaa !9
  %16023 = load i32, ptr %12, align 4, !tbaa !5
  %16024 = load i32, ptr %8, align 4, !tbaa !5
  %16025 = mul nsw i32 65, %16024
  %16026 = add nsw i32 %16023, %16025
  %16027 = sext i32 %16026 to i64
  %16028 = getelementptr inbounds double, ptr %16022, i64 %16027
  %16029 = load double, ptr %16028, align 8, !tbaa !11
  %16030 = call double @llvm.fmuladd.f64(double 0x3C73CC8A99AF5453, double %16029, double %16021)
  %16031 = load ptr, ptr %7, align 8, !tbaa !9
  %16032 = load i32, ptr %12, align 4, !tbaa !5
  %16033 = load i32, ptr %8, align 4, !tbaa !5
  %16034 = mul nsw i32 66, %16033
  %16035 = add nsw i32 %16032, %16034
  %16036 = sext i32 %16035 to i64
  %16037 = getelementptr inbounds double, ptr %16031, i64 %16036
  %16038 = load double, ptr %16037, align 8, !tbaa !11
  %16039 = call double @llvm.fmuladd.f64(double 0x3C83CC8A99AF5451, double %16038, double %16030)
  %16040 = load ptr, ptr %7, align 8, !tbaa !9
  %16041 = load i32, ptr %12, align 4, !tbaa !5
  %16042 = load i32, ptr %8, align 4, !tbaa !5
  %16043 = mul nsw i32 67, %16042
  %16044 = add nsw i32 %16041, %16043
  %16045 = sext i32 %16044 to i64
  %16046 = getelementptr inbounds double, ptr %16040, i64 %16045
  %16047 = load double, ptr %16046, align 8, !tbaa !11
  %16048 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %16047, double %16039)
  store double %16048, ptr %11, align 8, !tbaa !11
  %16049 = load double, ptr %11, align 8, !tbaa !11
  %16050 = load ptr, ptr %9, align 8, !tbaa !9
  %16051 = load i32, ptr %12, align 4, !tbaa !5
  %16052 = load i32, ptr %10, align 4, !tbaa !5
  %16053 = mul nsw i32 55, %16052
  %16054 = add nsw i32 %16051, %16053
  %16055 = sext i32 %16054 to i64
  %16056 = getelementptr inbounds double, ptr %16050, i64 %16055
  %16057 = load double, ptr %16056, align 8, !tbaa !11
  %16058 = fadd double %16057, %16049
  store double %16058, ptr %16056, align 8, !tbaa !11
  %16059 = load ptr, ptr %7, align 8, !tbaa !9
  %16060 = load i32, ptr %12, align 4, !tbaa !5
  %16061 = load i32, ptr %8, align 4, !tbaa !5
  %16062 = mul nsw i32 20, %16061
  %16063 = add nsw i32 %16060, %16062
  %16064 = sext i32 %16063 to i64
  %16065 = getelementptr inbounds double, ptr %16059, i64 %16064
  %16066 = load double, ptr %16065, align 8, !tbaa !11
  %16067 = load ptr, ptr %7, align 8, !tbaa !9
  %16068 = load i32, ptr %12, align 4, !tbaa !5
  %16069 = load i32, ptr %8, align 4, !tbaa !5
  %16070 = mul nsw i32 21, %16069
  %16071 = add nsw i32 %16068, %16070
  %16072 = sext i32 %16071 to i64
  %16073 = getelementptr inbounds double, ptr %16067, i64 %16072
  %16074 = load double, ptr %16073, align 8, !tbaa !11
  %16075 = fmul double 0xBCA1000000000001, %16074
  %16076 = call double @llvm.fmuladd.f64(double 0xBC8C000000000000, double %16066, double %16075)
  %16077 = load ptr, ptr %7, align 8, !tbaa !9
  %16078 = load i32, ptr %12, align 4, !tbaa !5
  %16079 = load i32, ptr %8, align 4, !tbaa !5
  %16080 = mul nsw i32 22, %16079
  %16081 = add nsw i32 %16078, %16080
  %16082 = sext i32 %16081 to i64
  %16083 = getelementptr inbounds double, ptr %16077, i64 %16082
  %16084 = load double, ptr %16083, align 8, !tbaa !11
  %16085 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %16084, double %16076)
  %16086 = load ptr, ptr %7, align 8, !tbaa !9
  %16087 = load i32, ptr %12, align 4, !tbaa !5
  %16088 = load i32, ptr %8, align 4, !tbaa !5
  %16089 = mul nsw i32 23, %16088
  %16090 = add nsw i32 %16087, %16089
  %16091 = sext i32 %16090 to i64
  %16092 = getelementptr inbounds double, ptr %16086, i64 %16091
  %16093 = load double, ptr %16092, align 8, !tbaa !11
  %16094 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %16093, double %16085)
  %16095 = load ptr, ptr %7, align 8, !tbaa !9
  %16096 = load i32, ptr %12, align 4, !tbaa !5
  %16097 = load i32, ptr %8, align 4, !tbaa !5
  %16098 = mul nsw i32 24, %16097
  %16099 = add nsw i32 %16096, %16098
  %16100 = sext i32 %16099 to i64
  %16101 = getelementptr inbounds double, ptr %16095, i64 %16100
  %16102 = load double, ptr %16101, align 8, !tbaa !11
  %16103 = call double @llvm.fmuladd.f64(double 0xBFD7671404765120, double %16102, double %16094)
  %16104 = load ptr, ptr %7, align 8, !tbaa !9
  %16105 = load i32, ptr %12, align 4, !tbaa !5
  %16106 = load i32, ptr %8, align 4, !tbaa !5
  %16107 = mul nsw i32 25, %16106
  %16108 = add nsw i32 %16105, %16107
  %16109 = sext i32 %16108 to i64
  %16110 = getelementptr inbounds double, ptr %16104, i64 %16109
  %16111 = load double, ptr %16110, align 8, !tbaa !11
  %16112 = call double @llvm.fmuladd.f64(double 0xC01043858A1F5996, double %16111, double %16103)
  %16113 = load ptr, ptr %7, align 8, !tbaa !9
  %16114 = load i32, ptr %12, align 4, !tbaa !5
  %16115 = load i32, ptr %8, align 4, !tbaa !5
  %16116 = mul nsw i32 26, %16115
  %16117 = add nsw i32 %16114, %16116
  %16118 = sext i32 %16117 to i64
  %16119 = getelementptr inbounds double, ptr %16113, i64 %16118
  %16120 = load double, ptr %16119, align 8, !tbaa !11
  %16121 = call double @llvm.fmuladd.f64(double 0xBFD7BAC3393ADDD8, double %16120, double %16112)
  %16122 = load ptr, ptr %7, align 8, !tbaa !9
  %16123 = load i32, ptr %12, align 4, !tbaa !5
  %16124 = load i32, ptr %8, align 4, !tbaa !5
  %16125 = mul nsw i32 27, %16124
  %16126 = add nsw i32 %16123, %16125
  %16127 = sext i32 %16126 to i64
  %16128 = getelementptr inbounds double, ptr %16122, i64 %16127
  %16129 = load double, ptr %16128, align 8, !tbaa !11
  %16130 = call double @llvm.fmuladd.f64(double 0x3FC1964E14FA3C65, double %16129, double %16121)
  %16131 = load ptr, ptr %7, align 8, !tbaa !9
  %16132 = load i32, ptr %12, align 4, !tbaa !5
  %16133 = load i32, ptr %8, align 4, !tbaa !5
  %16134 = mul nsw i32 28, %16133
  %16135 = add nsw i32 %16132, %16134
  %16136 = sext i32 %16135 to i64
  %16137 = getelementptr inbounds double, ptr %16131, i64 %16136
  %16138 = load double, ptr %16137, align 8, !tbaa !11
  %16139 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %16138, double %16130)
  %16140 = load ptr, ptr %7, align 8, !tbaa !9
  %16141 = load i32, ptr %12, align 4, !tbaa !5
  %16142 = load i32, ptr %8, align 4, !tbaa !5
  %16143 = mul nsw i32 29, %16142
  %16144 = add nsw i32 %16141, %16143
  %16145 = sext i32 %16144 to i64
  %16146 = getelementptr inbounds double, ptr %16140, i64 %16145
  %16147 = load double, ptr %16146, align 8, !tbaa !11
  %16148 = call double @llvm.fmuladd.f64(double 0xBCB3000000000000, double %16147, double %16139)
  %16149 = load ptr, ptr %7, align 8, !tbaa !9
  %16150 = load i32, ptr %12, align 4, !tbaa !5
  %16151 = load i32, ptr %8, align 4, !tbaa !5
  %16152 = mul nsw i32 30, %16151
  %16153 = add nsw i32 %16150, %16152
  %16154 = sext i32 %16153 to i64
  %16155 = getelementptr inbounds double, ptr %16149, i64 %16154
  %16156 = load double, ptr %16155, align 8, !tbaa !11
  %16157 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %16156, double %16148)
  %16158 = load ptr, ptr %7, align 8, !tbaa !9
  %16159 = load i32, ptr %12, align 4, !tbaa !5
  %16160 = load i32, ptr %8, align 4, !tbaa !5
  %16161 = mul nsw i32 32, %16160
  %16162 = add nsw i32 %16159, %16161
  %16163 = sext i32 %16162 to i64
  %16164 = getelementptr inbounds double, ptr %16158, i64 %16163
  %16165 = load double, ptr %16164, align 8, !tbaa !11
  %16166 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %16165, double %16157)
  %16167 = load ptr, ptr %7, align 8, !tbaa !9
  %16168 = load i32, ptr %12, align 4, !tbaa !5
  %16169 = load i32, ptr %8, align 4, !tbaa !5
  %16170 = mul nsw i32 33, %16169
  %16171 = add nsw i32 %16168, %16170
  %16172 = sext i32 %16171 to i64
  %16173 = getelementptr inbounds double, ptr %16167, i64 %16172
  %16174 = load double, ptr %16173, align 8, !tbaa !11
  %16175 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %16174, double %16166)
  %16176 = load ptr, ptr %7, align 8, !tbaa !9
  %16177 = load i32, ptr %12, align 4, !tbaa !5
  %16178 = load i32, ptr %8, align 4, !tbaa !5
  %16179 = mul nsw i32 34, %16178
  %16180 = add nsw i32 %16177, %16179
  %16181 = sext i32 %16180 to i64
  %16182 = getelementptr inbounds double, ptr %16176, i64 %16181
  %16183 = load double, ptr %16182, align 8, !tbaa !11
  %16184 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %16183, double %16175)
  %16185 = load ptr, ptr %7, align 8, !tbaa !9
  %16186 = load i32, ptr %12, align 4, !tbaa !5
  %16187 = load i32, ptr %8, align 4, !tbaa !5
  %16188 = mul nsw i32 35, %16187
  %16189 = add nsw i32 %16186, %16188
  %16190 = sext i32 %16189 to i64
  %16191 = getelementptr inbounds double, ptr %16185, i64 %16190
  %16192 = load double, ptr %16191, align 8, !tbaa !11
  %16193 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %16192, double %16184)
  %16194 = load ptr, ptr %7, align 8, !tbaa !9
  %16195 = load i32, ptr %12, align 4, !tbaa !5
  %16196 = load i32, ptr %8, align 4, !tbaa !5
  %16197 = mul nsw i32 52, %16196
  %16198 = add nsw i32 %16195, %16197
  %16199 = sext i32 %16198 to i64
  %16200 = getelementptr inbounds double, ptr %16194, i64 %16199
  %16201 = load double, ptr %16200, align 8, !tbaa !11
  %16202 = call double @llvm.fmuladd.f64(double 0xBCA0D685DF45AE00, double %16201, double %16193)
  %16203 = load ptr, ptr %7, align 8, !tbaa !9
  %16204 = load i32, ptr %12, align 4, !tbaa !5
  %16205 = load i32, ptr %8, align 4, !tbaa !5
  %16206 = mul nsw i32 53, %16205
  %16207 = add nsw i32 %16204, %16206
  %16208 = sext i32 %16207 to i64
  %16209 = getelementptr inbounds double, ptr %16203, i64 %16208
  %16210 = load double, ptr %16209, align 8, !tbaa !11
  %16211 = call double @llvm.fmuladd.f64(double 0x3C56A09E667F3BCC, double %16210, double %16202)
  %16212 = load ptr, ptr %7, align 8, !tbaa !9
  %16213 = load i32, ptr %12, align 4, !tbaa !5
  %16214 = load i32, ptr %8, align 4, !tbaa !5
  %16215 = mul nsw i32 54, %16214
  %16216 = add nsw i32 %16213, %16215
  %16217 = sext i32 %16216 to i64
  %16218 = getelementptr inbounds double, ptr %16212, i64 %16217
  %16219 = load double, ptr %16218, align 8, !tbaa !11
  %16220 = call double @llvm.fmuladd.f64(double 0xBC46A09E667F3BCB, double %16219, double %16211)
  %16221 = load ptr, ptr %7, align 8, !tbaa !9
  %16222 = load i32, ptr %12, align 4, !tbaa !5
  %16223 = load i32, ptr %8, align 4, !tbaa !5
  %16224 = mul nsw i32 55, %16223
  %16225 = add nsw i32 %16222, %16224
  %16226 = sext i32 %16225 to i64
  %16227 = getelementptr inbounds double, ptr %16221, i64 %16226
  %16228 = load double, ptr %16227, align 8, !tbaa !11
  %16229 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %16228, double %16220)
  %16230 = load ptr, ptr %7, align 8, !tbaa !9
  %16231 = load i32, ptr %12, align 4, !tbaa !5
  %16232 = load i32, ptr %8, align 4, !tbaa !5
  %16233 = mul nsw i32 56, %16232
  %16234 = add nsw i32 %16231, %16233
  %16235 = sext i32 %16234 to i64
  %16236 = getelementptr inbounds double, ptr %16230, i64 %16235
  %16237 = load double, ptr %16236, align 8, !tbaa !11
  %16238 = call double @llvm.fmuladd.f64(double 0x3FD6A4D32EB1F71D, double %16237, double %16229)
  %16239 = load ptr, ptr %7, align 8, !tbaa !9
  %16240 = load i32, ptr %12, align 4, !tbaa !5
  %16241 = load i32, ptr %8, align 4, !tbaa !5
  %16242 = mul nsw i32 57, %16241
  %16243 = add nsw i32 %16240, %16242
  %16244 = sext i32 %16243 to i64
  %16245 = getelementptr inbounds double, ptr %16239, i64 %16244
  %16246 = load double, ptr %16245, align 8, !tbaa !11
  %16247 = call double @llvm.fmuladd.f64(double 0x3FE3C4545BCF030E, double %16246, double %16238)
  %16248 = load ptr, ptr %7, align 8, !tbaa !9
  %16249 = load i32, ptr %12, align 4, !tbaa !5
  %16250 = load i32, ptr %8, align 4, !tbaa !5
  %16251 = mul nsw i32 58, %16250
  %16252 = add nsw i32 %16249, %16251
  %16253 = sext i32 %16252 to i64
  %16254 = getelementptr inbounds double, ptr %16248, i64 %16253
  %16255 = load double, ptr %16254, align 8, !tbaa !11
  %16256 = call double @llvm.fmuladd.f64(double 0x3FCD5953692F6EA6, double %16255, double %16247)
  %16257 = load ptr, ptr %7, align 8, !tbaa !9
  %16258 = load i32, ptr %12, align 4, !tbaa !5
  %16259 = load i32, ptr %8, align 4, !tbaa !5
  %16260 = mul nsw i32 59, %16259
  %16261 = add nsw i32 %16258, %16260
  %16262 = sext i32 %16261 to i64
  %16263 = getelementptr inbounds double, ptr %16257, i64 %16262
  %16264 = load double, ptr %16263, align 8, !tbaa !11
  %16265 = call double @llvm.fmuladd.f64(double 0xBF9102DA00B18A34, double %16264, double %16256)
  %16266 = load ptr, ptr %7, align 8, !tbaa !9
  %16267 = load i32, ptr %12, align 4, !tbaa !5
  %16268 = load i32, ptr %8, align 4, !tbaa !5
  %16269 = mul nsw i32 60, %16268
  %16270 = add nsw i32 %16267, %16269
  %16271 = sext i32 %16270 to i64
  %16272 = getelementptr inbounds double, ptr %16266, i64 %16271
  %16273 = load double, ptr %16272, align 8, !tbaa !11
  %16274 = call double @llvm.fmuladd.f64(double 0xBCA16999E4DFE905, double %16273, double %16265)
  %16275 = load ptr, ptr %7, align 8, !tbaa !9
  %16276 = load i32, ptr %12, align 4, !tbaa !5
  %16277 = load i32, ptr %8, align 4, !tbaa !5
  %16278 = mul nsw i32 61, %16277
  %16279 = add nsw i32 %16276, %16278
  %16280 = sext i32 %16279 to i64
  %16281 = getelementptr inbounds double, ptr %16275, i64 %16280
  %16282 = load double, ptr %16281, align 8, !tbaa !11
  %16283 = call double @llvm.fmuladd.f64(double 0xBCA91A2FB9B52657, double %16282, double %16274)
  %16284 = load ptr, ptr %7, align 8, !tbaa !9
  %16285 = load i32, ptr %12, align 4, !tbaa !5
  %16286 = load i32, ptr %8, align 4, !tbaa !5
  %16287 = mul nsw i32 62, %16286
  %16288 = add nsw i32 %16285, %16287
  %16289 = sext i32 %16288 to i64
  %16290 = getelementptr inbounds double, ptr %16284, i64 %16289
  %16291 = load double, ptr %16290, align 8, !tbaa !11
  %16292 = call double @llvm.fmuladd.f64(double 0xBC9974B2334F2346, double %16291, double %16283)
  %16293 = load ptr, ptr %7, align 8, !tbaa !9
  %16294 = load i32, ptr %12, align 4, !tbaa !5
  %16295 = load i32, ptr %8, align 4, !tbaa !5
  %16296 = mul nsw i32 63, %16295
  %16297 = add nsw i32 %16294, %16296
  %16298 = sext i32 %16297 to i64
  %16299 = getelementptr inbounds double, ptr %16293, i64 %16298
  %16300 = load double, ptr %16299, align 8, !tbaa !11
  %16301 = call double @llvm.fmuladd.f64(double 0x3C80F876CCDF6CD9, double %16300, double %16292)
  %16302 = load ptr, ptr %7, align 8, !tbaa !9
  %16303 = load i32, ptr %12, align 4, !tbaa !5
  %16304 = load i32, ptr %8, align 4, !tbaa !5
  %16305 = mul nsw i32 64, %16304
  %16306 = add nsw i32 %16303, %16305
  %16307 = sext i32 %16306 to i64
  %16308 = getelementptr inbounds double, ptr %16302, i64 %16307
  %16309 = load double, ptr %16308, align 8, !tbaa !11
  %16310 = call double @llvm.fmuladd.f64(double 0x3C759116F9B144FE, double %16309, double %16301)
  %16311 = load ptr, ptr %7, align 8, !tbaa !9
  %16312 = load i32, ptr %12, align 4, !tbaa !5
  %16313 = load i32, ptr %8, align 4, !tbaa !5
  %16314 = mul nsw i32 65, %16313
  %16315 = add nsw i32 %16312, %16314
  %16316 = sext i32 %16315 to i64
  %16317 = getelementptr inbounds double, ptr %16311, i64 %16316
  %16318 = load double, ptr %16317, align 8, !tbaa !11
  %16319 = call double @llvm.fmuladd.f64(double 0x3C70F876CCDF6CD9, double %16318, double %16310)
  %16320 = load ptr, ptr %7, align 8, !tbaa !9
  %16321 = load i32, ptr %12, align 4, !tbaa !5
  %16322 = load i32, ptr %8, align 4, !tbaa !5
  %16323 = mul nsw i32 66, %16322
  %16324 = add nsw i32 %16321, %16323
  %16325 = sext i32 %16324 to i64
  %16326 = getelementptr inbounds double, ptr %16320, i64 %16325
  %16327 = load double, ptr %16326, align 8, !tbaa !11
  %16328 = call double @llvm.fmuladd.f64(double 0xBC73CC8A99AF5453, double %16327, double %16319)
  %16329 = load ptr, ptr %7, align 8, !tbaa !9
  %16330 = load i32, ptr %12, align 4, !tbaa !5
  %16331 = load i32, ptr %8, align 4, !tbaa !5
  %16332 = mul nsw i32 67, %16331
  %16333 = add nsw i32 %16330, %16332
  %16334 = sext i32 %16333 to i64
  %16335 = getelementptr inbounds double, ptr %16329, i64 %16334
  %16336 = load double, ptr %16335, align 8, !tbaa !11
  %16337 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %16336, double %16328)
  store double %16337, ptr %11, align 8, !tbaa !11
  %16338 = load double, ptr %11, align 8, !tbaa !11
  %16339 = load ptr, ptr %9, align 8, !tbaa !9
  %16340 = load i32, ptr %12, align 4, !tbaa !5
  %16341 = load i32, ptr %10, align 4, !tbaa !5
  %16342 = mul nsw i32 56, %16341
  %16343 = add nsw i32 %16340, %16342
  %16344 = sext i32 %16343 to i64
  %16345 = getelementptr inbounds double, ptr %16339, i64 %16344
  %16346 = load double, ptr %16345, align 8, !tbaa !11
  %16347 = fadd double %16346, %16338
  store double %16347, ptr %16345, align 8, !tbaa !11
  %16348 = load ptr, ptr %7, align 8, !tbaa !9
  %16349 = load i32, ptr %12, align 4, !tbaa !5
  %16350 = load i32, ptr %8, align 4, !tbaa !5
  %16351 = mul nsw i32 20, %16350
  %16352 = add nsw i32 %16349, %16351
  %16353 = sext i32 %16352 to i64
  %16354 = getelementptr inbounds double, ptr %16348, i64 %16353
  %16355 = load double, ptr %16354, align 8, !tbaa !11
  %16356 = load ptr, ptr %7, align 8, !tbaa !9
  %16357 = load i32, ptr %12, align 4, !tbaa !5
  %16358 = load i32, ptr %8, align 4, !tbaa !5
  %16359 = mul nsw i32 21, %16358
  %16360 = add nsw i32 %16357, %16359
  %16361 = sext i32 %16360 to i64
  %16362 = getelementptr inbounds double, ptr %16356, i64 %16361
  %16363 = load double, ptr %16362, align 8, !tbaa !11
  %16364 = fmul double 0x3C89FFFFFFFFFFFF, %16363
  %16365 = call double @llvm.fmuladd.f64(double 0x3C7C000000000000, double %16355, double %16364)
  %16366 = load ptr, ptr %7, align 8, !tbaa !9
  %16367 = load i32, ptr %12, align 4, !tbaa !5
  %16368 = load i32, ptr %8, align 4, !tbaa !5
  %16369 = mul nsw i32 22, %16368
  %16370 = add nsw i32 %16367, %16369
  %16371 = sext i32 %16370 to i64
  %16372 = getelementptr inbounds double, ptr %16366, i64 %16371
  %16373 = load double, ptr %16372, align 8, !tbaa !11
  %16374 = call double @llvm.fmuladd.f64(double 0x3C91000000000000, double %16373, double %16365)
  %16375 = load ptr, ptr %7, align 8, !tbaa !9
  %16376 = load i32, ptr %12, align 4, !tbaa !5
  %16377 = load i32, ptr %8, align 4, !tbaa !5
  %16378 = mul nsw i32 23, %16377
  %16379 = add nsw i32 %16376, %16378
  %16380 = sext i32 %16379 to i64
  %16381 = getelementptr inbounds double, ptr %16375, i64 %16380
  %16382 = load double, ptr %16381, align 8, !tbaa !11
  %16383 = call double @llvm.fmuladd.f64(double 0xBC95000000000000, double %16382, double %16374)
  %16384 = load ptr, ptr %7, align 8, !tbaa !9
  %16385 = load i32, ptr %12, align 4, !tbaa !5
  %16386 = load i32, ptr %8, align 4, !tbaa !5
  %16387 = mul nsw i32 24, %16386
  %16388 = add nsw i32 %16385, %16387
  %16389 = sext i32 %16388 to i64
  %16390 = getelementptr inbounds double, ptr %16384, i64 %16389
  %16391 = load double, ptr %16390, align 8, !tbaa !11
  %16392 = call double @llvm.fmuladd.f64(double 0x3FC1964E14FA3C53, double %16391, double %16383)
  %16393 = load ptr, ptr %7, align 8, !tbaa !9
  %16394 = load i32, ptr %12, align 4, !tbaa !5
  %16395 = load i32, ptr %8, align 4, !tbaa !5
  %16396 = mul nsw i32 25, %16395
  %16397 = add nsw i32 %16394, %16396
  %16398 = sext i32 %16397 to i64
  %16399 = getelementptr inbounds double, ptr %16393, i64 %16398
  %16400 = load double, ptr %16399, align 8, !tbaa !11
  %16401 = call double @llvm.fmuladd.f64(double 0xBFD7BAC3393ADDC4, double %16400, double %16392)
  %16402 = load ptr, ptr %7, align 8, !tbaa !9
  %16403 = load i32, ptr %12, align 4, !tbaa !5
  %16404 = load i32, ptr %8, align 4, !tbaa !5
  %16405 = mul nsw i32 26, %16404
  %16406 = add nsw i32 %16403, %16405
  %16407 = sext i32 %16406 to i64
  %16408 = getelementptr inbounds double, ptr %16402, i64 %16407
  %16409 = load double, ptr %16408, align 8, !tbaa !11
  %16410 = call double @llvm.fmuladd.f64(double 0xC01043858A1F5997, double %16409, double %16401)
  %16411 = load ptr, ptr %7, align 8, !tbaa !9
  %16412 = load i32, ptr %12, align 4, !tbaa !5
  %16413 = load i32, ptr %8, align 4, !tbaa !5
  %16414 = mul nsw i32 27, %16413
  %16415 = add nsw i32 %16412, %16414
  %16416 = sext i32 %16415 to i64
  %16417 = getelementptr inbounds double, ptr %16411, i64 %16416
  %16418 = load double, ptr %16417, align 8, !tbaa !11
  %16419 = call double @llvm.fmuladd.f64(double 0xBFD7671404765136, double %16418, double %16410)
  %16420 = load ptr, ptr %7, align 8, !tbaa !9
  %16421 = load i32, ptr %12, align 4, !tbaa !5
  %16422 = load i32, ptr %8, align 4, !tbaa !5
  %16423 = mul nsw i32 28, %16422
  %16424 = add nsw i32 %16421, %16423
  %16425 = sext i32 %16424 to i64
  %16426 = getelementptr inbounds double, ptr %16420, i64 %16425
  %16427 = load double, ptr %16426, align 8, !tbaa !11
  %16428 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %16427, double %16419)
  %16429 = load ptr, ptr %7, align 8, !tbaa !9
  %16430 = load i32, ptr %12, align 4, !tbaa !5
  %16431 = load i32, ptr %8, align 4, !tbaa !5
  %16432 = mul nsw i32 29, %16431
  %16433 = add nsw i32 %16430, %16432
  %16434 = sext i32 %16433 to i64
  %16435 = getelementptr inbounds double, ptr %16429, i64 %16434
  %16436 = load double, ptr %16435, align 8, !tbaa !11
  %16437 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %16436, double %16428)
  %16438 = load ptr, ptr %7, align 8, !tbaa !9
  %16439 = load i32, ptr %12, align 4, !tbaa !5
  %16440 = load i32, ptr %8, align 4, !tbaa !5
  %16441 = mul nsw i32 30, %16440
  %16442 = add nsw i32 %16439, %16441
  %16443 = sext i32 %16442 to i64
  %16444 = getelementptr inbounds double, ptr %16438, i64 %16443
  %16445 = load double, ptr %16444, align 8, !tbaa !11
  %16446 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %16445, double %16437)
  %16447 = load ptr, ptr %7, align 8, !tbaa !9
  %16448 = load i32, ptr %12, align 4, !tbaa !5
  %16449 = load i32, ptr %8, align 4, !tbaa !5
  %16450 = mul nsw i32 31, %16449
  %16451 = add nsw i32 %16448, %16450
  %16452 = sext i32 %16451 to i64
  %16453 = getelementptr inbounds double, ptr %16447, i64 %16452
  %16454 = load double, ptr %16453, align 8, !tbaa !11
  %16455 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %16454, double %16446)
  %16456 = load ptr, ptr %7, align 8, !tbaa !9
  %16457 = load i32, ptr %12, align 4, !tbaa !5
  %16458 = load i32, ptr %8, align 4, !tbaa !5
  %16459 = mul nsw i32 32, %16458
  %16460 = add nsw i32 %16457, %16459
  %16461 = sext i32 %16460 to i64
  %16462 = getelementptr inbounds double, ptr %16456, i64 %16461
  %16463 = load double, ptr %16462, align 8, !tbaa !11
  %16464 = call double @llvm.fmuladd.f64(double 0xBC93000000000000, double %16463, double %16455)
  %16465 = load ptr, ptr %7, align 8, !tbaa !9
  %16466 = load i32, ptr %12, align 4, !tbaa !5
  %16467 = load i32, ptr %8, align 4, !tbaa !5
  %16468 = mul nsw i32 33, %16467
  %16469 = add nsw i32 %16466, %16468
  %16470 = sext i32 %16469 to i64
  %16471 = getelementptr inbounds double, ptr %16465, i64 %16470
  %16472 = load double, ptr %16471, align 8, !tbaa !11
  %16473 = call double @llvm.fmuladd.f64(double 0xBC89FFFFFFFFFFFF, double %16472, double %16464)
  %16474 = load ptr, ptr %7, align 8, !tbaa !9
  %16475 = load i32, ptr %12, align 4, !tbaa !5
  %16476 = load i32, ptr %8, align 4, !tbaa !5
  %16477 = mul nsw i32 34, %16476
  %16478 = add nsw i32 %16475, %16477
  %16479 = sext i32 %16478 to i64
  %16480 = getelementptr inbounds double, ptr %16474, i64 %16479
  %16481 = load double, ptr %16480, align 8, !tbaa !11
  %16482 = call double @llvm.fmuladd.f64(double 0xBC91000000000000, double %16481, double %16473)
  %16483 = load ptr, ptr %7, align 8, !tbaa !9
  %16484 = load i32, ptr %12, align 4, !tbaa !5
  %16485 = load i32, ptr %8, align 4, !tbaa !5
  %16486 = mul nsw i32 35, %16485
  %16487 = add nsw i32 %16484, %16486
  %16488 = sext i32 %16487 to i64
  %16489 = getelementptr inbounds double, ptr %16483, i64 %16488
  %16490 = load double, ptr %16489, align 8, !tbaa !11
  %16491 = call double @llvm.fmuladd.f64(double 0xBC67FFFFFFFFFFFE, double %16490, double %16482)
  %16492 = load ptr, ptr %7, align 8, !tbaa !9
  %16493 = load i32, ptr %12, align 4, !tbaa !5
  %16494 = load i32, ptr %8, align 4, !tbaa !5
  %16495 = mul nsw i32 52, %16494
  %16496 = add nsw i32 %16493, %16495
  %16497 = sext i32 %16496 to i64
  %16498 = getelementptr inbounds double, ptr %16492, i64 %16497
  %16499 = load double, ptr %16498, align 8, !tbaa !11
  %16500 = call double @llvm.fmuladd.f64(double 0x3C7F775C4688EF29, double %16499, double %16491)
  %16501 = load ptr, ptr %7, align 8, !tbaa !9
  %16502 = load i32, ptr %12, align 4, !tbaa !5
  %16503 = load i32, ptr %8, align 4, !tbaa !5
  %16504 = mul nsw i32 53, %16503
  %16505 = add nsw i32 %16502, %16504
  %16506 = sext i32 %16505 to i64
  %16507 = getelementptr inbounds double, ptr %16501, i64 %16506
  %16508 = load double, ptr %16507, align 8, !tbaa !11
  %16509 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %16508, double %16500)
  %16510 = load ptr, ptr %7, align 8, !tbaa !9
  %16511 = load i32, ptr %12, align 4, !tbaa !5
  %16512 = load i32, ptr %8, align 4, !tbaa !5
  %16513 = mul nsw i32 54, %16512
  %16514 = add nsw i32 %16511, %16513
  %16515 = sext i32 %16514 to i64
  %16516 = getelementptr inbounds double, ptr %16510, i64 %16515
  %16517 = load double, ptr %16516, align 8, !tbaa !11
  %16518 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %16517, double %16509)
  %16519 = load ptr, ptr %7, align 8, !tbaa !9
  %16520 = load i32, ptr %12, align 4, !tbaa !5
  %16521 = load i32, ptr %8, align 4, !tbaa !5
  %16522 = mul nsw i32 55, %16521
  %16523 = add nsw i32 %16520, %16522
  %16524 = sext i32 %16523 to i64
  %16525 = getelementptr inbounds double, ptr %16519, i64 %16524
  %16526 = load double, ptr %16525, align 8, !tbaa !11
  %16527 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %16526, double %16518)
  %16528 = load ptr, ptr %7, align 8, !tbaa !9
  %16529 = load i32, ptr %12, align 4, !tbaa !5
  %16530 = load i32, ptr %8, align 4, !tbaa !5
  %16531 = mul nsw i32 56, %16530
  %16532 = add nsw i32 %16529, %16531
  %16533 = sext i32 %16532 to i64
  %16534 = getelementptr inbounds double, ptr %16528, i64 %16533
  %16535 = load double, ptr %16534, align 8, !tbaa !11
  %16536 = call double @llvm.fmuladd.f64(double 0xBFE7007BFD8FD85D, double %16535, double %16527)
  %16537 = load ptr, ptr %7, align 8, !tbaa !9
  %16538 = load i32, ptr %12, align 4, !tbaa !5
  %16539 = load i32, ptr %8, align 4, !tbaa !5
  %16540 = mul nsw i32 57, %16539
  %16541 = add nsw i32 %16538, %16540
  %16542 = sext i32 %16541 to i64
  %16543 = getelementptr inbounds double, ptr %16537, i64 %16542
  %16544 = load double, ptr %16543, align 8, !tbaa !11
  %16545 = call double @llvm.fmuladd.f64(double 0xBFE66643AEED3708, double %16544, double %16536)
  %16546 = load ptr, ptr %7, align 8, !tbaa !9
  %16547 = load i32, ptr %12, align 4, !tbaa !5
  %16548 = load i32, ptr %8, align 4, !tbaa !5
  %16549 = mul nsw i32 58, %16548
  %16550 = add nsw i32 %16547, %16549
  %16551 = sext i32 %16550 to i64
  %16552 = getelementptr inbounds double, ptr %16546, i64 %16551
  %16553 = load double, ptr %16552, align 8, !tbaa !11
  %16554 = call double @llvm.fmuladd.f64(double 0x3FAD5B74B5F10E9B, double %16553, double %16545)
  %16555 = load ptr, ptr %7, align 8, !tbaa !9
  %16556 = load i32, ptr %12, align 4, !tbaa !5
  %16557 = load i32, ptr %8, align 4, !tbaa !5
  %16558 = mul nsw i32 59, %16557
  %16559 = add nsw i32 %16556, %16558
  %16560 = sext i32 %16559 to i64
  %16561 = getelementptr inbounds double, ptr %16555, i64 %16560
  %16562 = load double, ptr %16561, align 8, !tbaa !11
  %16563 = call double @llvm.fmuladd.f64(double 0x3FA3F41B0E87BFB6, double %16562, double %16554)
  %16564 = load ptr, ptr %7, align 8, !tbaa !9
  %16565 = load i32, ptr %12, align 4, !tbaa !5
  %16566 = load i32, ptr %8, align 4, !tbaa !5
  %16567 = mul nsw i32 60, %16566
  %16568 = add nsw i32 %16565, %16567
  %16569 = sext i32 %16568 to i64
  %16570 = getelementptr inbounds double, ptr %16564, i64 %16569
  %16571 = load double, ptr %16570, align 8, !tbaa !11
  %16572 = call double @llvm.fmuladd.f64(double 0xBC9125B809AC6B51, double %16571, double %16563)
  %16573 = load ptr, ptr %7, align 8, !tbaa !9
  %16574 = load i32, ptr %12, align 4, !tbaa !5
  %16575 = load i32, ptr %8, align 4, !tbaa !5
  %16576 = mul nsw i32 61, %16575
  %16577 = add nsw i32 %16574, %16576
  %16578 = sext i32 %16577 to i64
  %16579 = getelementptr inbounds double, ptr %16573, i64 %16578
  %16580 = load double, ptr %16579, align 8, !tbaa !11
  %16581 = call double @llvm.fmuladd.f64(double 0x3C826280B3476096, double %16580, double %16572)
  %16582 = load ptr, ptr %7, align 8, !tbaa !9
  %16583 = load i32, ptr %12, align 4, !tbaa !5
  %16584 = load i32, ptr %8, align 4, !tbaa !5
  %16585 = mul nsw i32 62, %16584
  %16586 = add nsw i32 %16583, %16585
  %16587 = sext i32 %16586 to i64
  %16588 = getelementptr inbounds double, ptr %16582, i64 %16587
  %16589 = load double, ptr %16588, align 8, !tbaa !11
  %16590 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %16589, double %16581)
  %16591 = load ptr, ptr %7, align 8, !tbaa !9
  %16592 = load i32, ptr %12, align 4, !tbaa !5
  %16593 = load i32, ptr %8, align 4, !tbaa !5
  %16594 = mul nsw i32 63, %16593
  %16595 = add nsw i32 %16592, %16594
  %16596 = sext i32 %16595 to i64
  %16597 = getelementptr inbounds double, ptr %16591, i64 %16596
  %16598 = load double, ptr %16597, align 8, !tbaa !11
  %16599 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %16598, double %16590)
  %16600 = load ptr, ptr %7, align 8, !tbaa !9
  %16601 = load i32, ptr %12, align 4, !tbaa !5
  %16602 = load i32, ptr %8, align 4, !tbaa !5
  %16603 = mul nsw i32 64, %16602
  %16604 = add nsw i32 %16601, %16603
  %16605 = sext i32 %16604 to i64
  %16606 = getelementptr inbounds double, ptr %16600, i64 %16605
  %16607 = load double, ptr %16606, align 8, !tbaa !11
  %16608 = call double @llvm.fmuladd.f64(double 0x3C6B93C10CEB10E3, double %16607, double %16599)
  %16609 = load ptr, ptr %7, align 8, !tbaa !9
  %16610 = load i32, ptr %12, align 4, !tbaa !5
  %16611 = load i32, ptr %8, align 4, !tbaa !5
  %16612 = mul nsw i32 65, %16611
  %16613 = add nsw i32 %16610, %16612
  %16614 = sext i32 %16613 to i64
  %16615 = getelementptr inbounds double, ptr %16609, i64 %16614
  %16616 = load double, ptr %16615, align 8, !tbaa !11
  %16617 = call double @llvm.fmuladd.f64(double 0x3C8C48C6001F0AC0, double %16616, double %16608)
  %16618 = load ptr, ptr %7, align 8, !tbaa !9
  %16619 = load i32, ptr %12, align 4, !tbaa !5
  %16620 = load i32, ptr %8, align 4, !tbaa !5
  %16621 = mul nsw i32 66, %16620
  %16622 = add nsw i32 %16619, %16621
  %16623 = sext i32 %16622 to i64
  %16624 = getelementptr inbounds double, ptr %16618, i64 %16623
  %16625 = load double, ptr %16624, align 8, !tbaa !11
  %16626 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %16625, double %16617)
  %16627 = load ptr, ptr %7, align 8, !tbaa !9
  %16628 = load i32, ptr %12, align 4, !tbaa !5
  %16629 = load i32, ptr %8, align 4, !tbaa !5
  %16630 = mul nsw i32 67, %16629
  %16631 = add nsw i32 %16628, %16630
  %16632 = sext i32 %16631 to i64
  %16633 = getelementptr inbounds double, ptr %16627, i64 %16632
  %16634 = load double, ptr %16633, align 8, !tbaa !11
  %16635 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %16634, double %16626)
  store double %16635, ptr %11, align 8, !tbaa !11
  %16636 = load double, ptr %11, align 8, !tbaa !11
  %16637 = load ptr, ptr %9, align 8, !tbaa !9
  %16638 = load i32, ptr %12, align 4, !tbaa !5
  %16639 = load i32, ptr %10, align 4, !tbaa !5
  %16640 = mul nsw i32 57, %16639
  %16641 = add nsw i32 %16638, %16640
  %16642 = sext i32 %16641 to i64
  %16643 = getelementptr inbounds double, ptr %16637, i64 %16642
  %16644 = load double, ptr %16643, align 8, !tbaa !11
  %16645 = fadd double %16644, %16636
  store double %16645, ptr %16643, align 8, !tbaa !11
  %16646 = load ptr, ptr %7, align 8, !tbaa !9
  %16647 = load i32, ptr %12, align 4, !tbaa !5
  %16648 = load i32, ptr %8, align 4, !tbaa !5
  %16649 = mul nsw i32 21, %16648
  %16650 = add nsw i32 %16647, %16649
  %16651 = sext i32 %16650 to i64
  %16652 = getelementptr inbounds double, ptr %16646, i64 %16651
  %16653 = load double, ptr %16652, align 8, !tbaa !11
  %16654 = load ptr, ptr %7, align 8, !tbaa !9
  %16655 = load i32, ptr %12, align 4, !tbaa !5
  %16656 = load i32, ptr %8, align 4, !tbaa !5
  %16657 = mul nsw i32 22, %16656
  %16658 = add nsw i32 %16655, %16657
  %16659 = sext i32 %16658 to i64
  %16660 = getelementptr inbounds double, ptr %16654, i64 %16659
  %16661 = load double, ptr %16660, align 8, !tbaa !11
  %16662 = fmul double 0xBC7FFFFFFFFFFFFF, %16661
  %16663 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %16653, double %16662)
  %16664 = load ptr, ptr %7, align 8, !tbaa !9
  %16665 = load i32, ptr %12, align 4, !tbaa !5
  %16666 = load i32, ptr %8, align 4, !tbaa !5
  %16667 = mul nsw i32 24, %16666
  %16668 = add nsw i32 %16665, %16667
  %16669 = sext i32 %16668 to i64
  %16670 = getelementptr inbounds double, ptr %16664, i64 %16669
  %16671 = load double, ptr %16670, align 8, !tbaa !11
  %16672 = call double @llvm.fmuladd.f64(double 0xBFE002F9665DF3D9, double %16671, double %16663)
  %16673 = load ptr, ptr %7, align 8, !tbaa !9
  %16674 = load i32, ptr %12, align 4, !tbaa !5
  %16675 = load i32, ptr %8, align 4, !tbaa !5
  %16676 = mul nsw i32 25, %16675
  %16677 = add nsw i32 %16674, %16676
  %16678 = sext i32 %16677 to i64
  %16679 = getelementptr inbounds double, ptr %16673, i64 %16678
  %16680 = load double, ptr %16679, align 8, !tbaa !11
  %16681 = call double @llvm.fmuladd.f64(double 0xBFEBF462FB348EF6, double %16680, double %16672)
  %16682 = load ptr, ptr %7, align 8, !tbaa !9
  %16683 = load i32, ptr %12, align 4, !tbaa !5
  %16684 = load i32, ptr %8, align 4, !tbaa !5
  %16685 = mul nsw i32 26, %16684
  %16686 = add nsw i32 %16683, %16685
  %16687 = sext i32 %16686 to i64
  %16688 = getelementptr inbounds double, ptr %16682, i64 %16687
  %16689 = load double, ptr %16688, align 8, !tbaa !11
  %16690 = call double @llvm.fmuladd.f64(double 0xBFD4C0B9406BCBCC, double %16689, double %16681)
  %16691 = load ptr, ptr %7, align 8, !tbaa !9
  %16692 = load i32, ptr %12, align 4, !tbaa !5
  %16693 = load i32, ptr %8, align 4, !tbaa !5
  %16694 = mul nsw i32 27, %16693
  %16695 = add nsw i32 %16692, %16694
  %16696 = sext i32 %16695 to i64
  %16697 = getelementptr inbounds double, ptr %16691, i64 %16696
  %16698 = load double, ptr %16697, align 8, !tbaa !11
  %16699 = call double @llvm.fmuladd.f64(double 0x3F980EB0AE1D4750, double %16698, double %16690)
  %16700 = load ptr, ptr %7, align 8, !tbaa !9
  %16701 = load i32, ptr %12, align 4, !tbaa !5
  %16702 = load i32, ptr %8, align 4, !tbaa !5
  %16703 = mul nsw i32 28, %16702
  %16704 = add nsw i32 %16701, %16703
  %16705 = sext i32 %16704 to i64
  %16706 = getelementptr inbounds double, ptr %16700, i64 %16705
  %16707 = load double, ptr %16706, align 8, !tbaa !11
  %16708 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %16707, double %16699)
  %16709 = load ptr, ptr %7, align 8, !tbaa !9
  %16710 = load i32, ptr %12, align 4, !tbaa !5
  %16711 = load i32, ptr %8, align 4, !tbaa !5
  %16712 = mul nsw i32 29, %16711
  %16713 = add nsw i32 %16710, %16712
  %16714 = sext i32 %16713 to i64
  %16715 = getelementptr inbounds double, ptr %16709, i64 %16714
  %16716 = load double, ptr %16715, align 8, !tbaa !11
  %16717 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %16716, double %16708)
  %16718 = load ptr, ptr %7, align 8, !tbaa !9
  %16719 = load i32, ptr %12, align 4, !tbaa !5
  %16720 = load i32, ptr %8, align 4, !tbaa !5
  %16721 = mul nsw i32 30, %16720
  %16722 = add nsw i32 %16719, %16721
  %16723 = sext i32 %16722 to i64
  %16724 = getelementptr inbounds double, ptr %16718, i64 %16723
  %16725 = load double, ptr %16724, align 8, !tbaa !11
  %16726 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %16725, double %16717)
  %16727 = load ptr, ptr %7, align 8, !tbaa !9
  %16728 = load i32, ptr %12, align 4, !tbaa !5
  %16729 = load i32, ptr %8, align 4, !tbaa !5
  %16730 = mul nsw i32 31, %16729
  %16731 = add nsw i32 %16728, %16730
  %16732 = sext i32 %16731 to i64
  %16733 = getelementptr inbounds double, ptr %16727, i64 %16732
  %16734 = load double, ptr %16733, align 8, !tbaa !11
  %16735 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %16734, double %16726)
  %16736 = load ptr, ptr %7, align 8, !tbaa !9
  %16737 = load i32, ptr %12, align 4, !tbaa !5
  %16738 = load i32, ptr %8, align 4, !tbaa !5
  %16739 = mul nsw i32 32, %16738
  %16740 = add nsw i32 %16737, %16739
  %16741 = sext i32 %16740 to i64
  %16742 = getelementptr inbounds double, ptr %16736, i64 %16741
  %16743 = load double, ptr %16742, align 8, !tbaa !11
  %16744 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %16743, double %16735)
  %16745 = load ptr, ptr %7, align 8, !tbaa !9
  %16746 = load i32, ptr %12, align 4, !tbaa !5
  %16747 = load i32, ptr %8, align 4, !tbaa !5
  %16748 = mul nsw i32 33, %16747
  %16749 = add nsw i32 %16746, %16748
  %16750 = sext i32 %16749 to i64
  %16751 = getelementptr inbounds double, ptr %16745, i64 %16750
  %16752 = load double, ptr %16751, align 8, !tbaa !11
  %16753 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %16752, double %16744)
  %16754 = load ptr, ptr %7, align 8, !tbaa !9
  %16755 = load i32, ptr %12, align 4, !tbaa !5
  %16756 = load i32, ptr %8, align 4, !tbaa !5
  %16757 = mul nsw i32 34, %16756
  %16758 = add nsw i32 %16755, %16757
  %16759 = sext i32 %16758 to i64
  %16760 = getelementptr inbounds double, ptr %16754, i64 %16759
  %16761 = load double, ptr %16760, align 8, !tbaa !11
  %16762 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %16761, double %16753)
  %16763 = load ptr, ptr %7, align 8, !tbaa !9
  %16764 = load i32, ptr %12, align 4, !tbaa !5
  %16765 = load i32, ptr %8, align 4, !tbaa !5
  %16766 = mul nsw i32 35, %16765
  %16767 = add nsw i32 %16764, %16766
  %16768 = sext i32 %16767 to i64
  %16769 = getelementptr inbounds double, ptr %16763, i64 %16768
  %16770 = load double, ptr %16769, align 8, !tbaa !11
  %16771 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %16770, double %16762)
  %16772 = load ptr, ptr %7, align 8, !tbaa !9
  %16773 = load i32, ptr %12, align 4, !tbaa !5
  %16774 = load i32, ptr %8, align 4, !tbaa !5
  %16775 = mul nsw i32 52, %16774
  %16776 = add nsw i32 %16773, %16775
  %16777 = sext i32 %16776 to i64
  %16778 = getelementptr inbounds double, ptr %16772, i64 %16777
  %16779 = load double, ptr %16778, align 8, !tbaa !11
  %16780 = call double @llvm.fmuladd.f64(double 0x3C7ADEBC19B71701, double %16779, double %16771)
  %16781 = load ptr, ptr %7, align 8, !tbaa !9
  %16782 = load i32, ptr %12, align 4, !tbaa !5
  %16783 = load i32, ptr %8, align 4, !tbaa !5
  %16784 = mul nsw i32 53, %16783
  %16785 = add nsw i32 %16782, %16784
  %16786 = sext i32 %16785 to i64
  %16787 = getelementptr inbounds double, ptr %16781, i64 %16786
  %16788 = load double, ptr %16787, align 8, !tbaa !11
  %16789 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %16788, double %16780)
  %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 54, %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 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %16797, double %16789)
  %16799 = load ptr, ptr %7, align 8, !tbaa !9
  %16800 = load i32, ptr %12, align 4, !tbaa !5
  %16801 = load i32, ptr %8, align 4, !tbaa !5
  %16802 = mul nsw i32 56, %16801
  %16803 = add nsw i32 %16800, %16802
  %16804 = sext i32 %16803 to i64
  %16805 = getelementptr inbounds double, ptr %16799, i64 %16804
  %16806 = load double, ptr %16805, align 8, !tbaa !11
  %16807 = call double @llvm.fmuladd.f64(double 0x3FA3F41B0E87BFE9, double %16806, double %16798)
  %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 57, %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 0x3FAD5B74B5F10E92, 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 58, %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 0xBFE66643AEED36FA, 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 59, %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 0xBFE7007BFD8FD85D, 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 60, %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 0xBC70F876CCDF6CD9, 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 61, %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 0xBC96A09E667F3BCC, 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 62, %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 0x3CA3CC8A99AF5452, 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 63, %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 0x3C86A09E667F3BCC, 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 64, %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 0x3C7DB2CFE686FE7B, 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 65, %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 0xBC76A09E667F3BCD, 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 66, %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 0xBC90F876CCDF6CD9, double %16896, double %16888)
  store double %16897, ptr %11, align 8, !tbaa !11
  %16898 = load double, ptr %11, align 8, !tbaa !11
  %16899 = load ptr, ptr %9, align 8, !tbaa !9
  %16900 = load i32, ptr %12, align 4, !tbaa !5
  %16901 = load i32, ptr %10, align 4, !tbaa !5
  %16902 = mul nsw i32 58, %16901
  %16903 = add nsw i32 %16900, %16902
  %16904 = sext i32 %16903 to i64
  %16905 = getelementptr inbounds double, ptr %16899, i64 %16904
  %16906 = load double, ptr %16905, align 8, !tbaa !11
  %16907 = fadd double %16906, %16898
  store double %16907, ptr %16905, align 8, !tbaa !11
  %16908 = load ptr, ptr %7, align 8, !tbaa !9
  %16909 = load i32, ptr %12, align 4, !tbaa !5
  %16910 = load i32, ptr %8, align 4, !tbaa !5
  %16911 = mul nsw i32 20, %16910
  %16912 = add nsw i32 %16909, %16911
  %16913 = sext i32 %16912 to i64
  %16914 = getelementptr inbounds double, ptr %16908, i64 %16913
  %16915 = load double, ptr %16914, align 8, !tbaa !11
  %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 21, %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 = fmul double 0xBC7FFFFFFFFFFFFF, %16923
  %16925 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %16915, double %16924)
  %16926 = load ptr, ptr %7, align 8, !tbaa !9
  %16927 = load i32, ptr %12, align 4, !tbaa !5
  %16928 = load i32, ptr %8, align 4, !tbaa !5
  %16929 = mul nsw i32 22, %16928
  %16930 = add nsw i32 %16927, %16929
  %16931 = sext i32 %16930 to i64
  %16932 = getelementptr inbounds double, ptr %16926, i64 %16931
  %16933 = load double, ptr %16932, align 8, !tbaa !11
  %16934 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %16933, double %16925)
  %16935 = load ptr, ptr %7, align 8, !tbaa !9
  %16936 = load i32, ptr %12, align 4, !tbaa !5
  %16937 = load i32, ptr %8, align 4, !tbaa !5
  %16938 = mul nsw i32 24, %16937
  %16939 = add nsw i32 %16936, %16938
  %16940 = sext i32 %16939 to i64
  %16941 = getelementptr inbounds double, ptr %16935, i64 %16940
  %16942 = load double, ptr %16941, align 8, !tbaa !11
  %16943 = call double @llvm.fmuladd.f64(double 0x3F980EB0AE1D4741, double %16942, double %16934)
  %16944 = load ptr, ptr %7, align 8, !tbaa !9
  %16945 = load i32, ptr %12, align 4, !tbaa !5
  %16946 = load i32, ptr %8, align 4, !tbaa !5
  %16947 = mul nsw i32 25, %16946
  %16948 = add nsw i32 %16945, %16947
  %16949 = sext i32 %16948 to i64
  %16950 = getelementptr inbounds double, ptr %16944, i64 %16949
  %16951 = load double, ptr %16950, align 8, !tbaa !11
  %16952 = call double @llvm.fmuladd.f64(double 0xBFD4C0B9406BCBCC, double %16951, double %16943)
  %16953 = load ptr, ptr %7, align 8, !tbaa !9
  %16954 = load i32, ptr %12, align 4, !tbaa !5
  %16955 = load i32, ptr %8, align 4, !tbaa !5
  %16956 = mul nsw i32 26, %16955
  %16957 = add nsw i32 %16954, %16956
  %16958 = sext i32 %16957 to i64
  %16959 = getelementptr inbounds double, ptr %16953, i64 %16958
  %16960 = load double, ptr %16959, align 8, !tbaa !11
  %16961 = call double @llvm.fmuladd.f64(double 0xBFEBF462FB348EF6, double %16960, double %16952)
  %16962 = load ptr, ptr %7, align 8, !tbaa !9
  %16963 = load i32, ptr %12, align 4, !tbaa !5
  %16964 = load i32, ptr %8, align 4, !tbaa !5
  %16965 = mul nsw i32 27, %16964
  %16966 = add nsw i32 %16963, %16965
  %16967 = sext i32 %16966 to i64
  %16968 = getelementptr inbounds double, ptr %16962, i64 %16967
  %16969 = load double, ptr %16968, align 8, !tbaa !11
  %16970 = call double @llvm.fmuladd.f64(double 0xBFE002F9665DF3D9, double %16969, double %16961)
  %16971 = load ptr, ptr %7, align 8, !tbaa !9
  %16972 = load i32, ptr %12, align 4, !tbaa !5
  %16973 = load i32, ptr %8, align 4, !tbaa !5
  %16974 = mul nsw i32 28, %16973
  %16975 = add nsw i32 %16972, %16974
  %16976 = sext i32 %16975 to i64
  %16977 = getelementptr inbounds double, ptr %16971, i64 %16976
  %16978 = load double, ptr %16977, align 8, !tbaa !11
  %16979 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %16978, double %16970)
  %16980 = load ptr, ptr %7, align 8, !tbaa !9
  %16981 = load i32, ptr %12, align 4, !tbaa !5
  %16982 = load i32, ptr %8, align 4, !tbaa !5
  %16983 = mul nsw i32 29, %16982
  %16984 = add nsw i32 %16981, %16983
  %16985 = sext i32 %16984 to i64
  %16986 = getelementptr inbounds double, ptr %16980, i64 %16985
  %16987 = load double, ptr %16986, align 8, !tbaa !11
  %16988 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %16987, double %16979)
  %16989 = load ptr, ptr %7, align 8, !tbaa !9
  %16990 = load i32, ptr %12, align 4, !tbaa !5
  %16991 = load i32, ptr %8, align 4, !tbaa !5
  %16992 = mul nsw i32 30, %16991
  %16993 = add nsw i32 %16990, %16992
  %16994 = sext i32 %16993 to i64
  %16995 = getelementptr inbounds double, ptr %16989, i64 %16994
  %16996 = load double, ptr %16995, align 8, !tbaa !11
  %16997 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %16996, double %16988)
  %16998 = load ptr, ptr %7, align 8, !tbaa !9
  %16999 = load i32, ptr %12, align 4, !tbaa !5
  %17000 = load i32, ptr %8, align 4, !tbaa !5
  %17001 = mul nsw i32 31, %17000
  %17002 = add nsw i32 %16999, %17001
  %17003 = sext i32 %17002 to i64
  %17004 = getelementptr inbounds double, ptr %16998, i64 %17003
  %17005 = load double, ptr %17004, align 8, !tbaa !11
  %17006 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %17005, double %16997)
  %17007 = load ptr, ptr %7, align 8, !tbaa !9
  %17008 = load i32, ptr %12, align 4, !tbaa !5
  %17009 = load i32, ptr %8, align 4, !tbaa !5
  %17010 = mul nsw i32 32, %17009
  %17011 = add nsw i32 %17008, %17010
  %17012 = sext i32 %17011 to i64
  %17013 = getelementptr inbounds double, ptr %17007, i64 %17012
  %17014 = load double, ptr %17013, align 8, !tbaa !11
  %17015 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %17014, double %17006)
  %17016 = load ptr, ptr %7, align 8, !tbaa !9
  %17017 = load i32, ptr %12, align 4, !tbaa !5
  %17018 = load i32, ptr %8, align 4, !tbaa !5
  %17019 = mul nsw i32 33, %17018
  %17020 = add nsw i32 %17017, %17019
  %17021 = sext i32 %17020 to i64
  %17022 = getelementptr inbounds double, ptr %17016, i64 %17021
  %17023 = load double, ptr %17022, align 8, !tbaa !11
  %17024 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %17023, double %17015)
  %17025 = load ptr, ptr %7, align 8, !tbaa !9
  %17026 = load i32, ptr %12, align 4, !tbaa !5
  %17027 = load i32, ptr %8, align 4, !tbaa !5
  %17028 = mul nsw i32 34, %17027
  %17029 = add nsw i32 %17026, %17028
  %17030 = sext i32 %17029 to i64
  %17031 = getelementptr inbounds double, ptr %17025, i64 %17030
  %17032 = load double, ptr %17031, align 8, !tbaa !11
  %17033 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %17032, double %17024)
  %17034 = load ptr, ptr %7, align 8, !tbaa !9
  %17035 = load i32, ptr %12, align 4, !tbaa !5
  %17036 = load i32, ptr %8, align 4, !tbaa !5
  %17037 = mul nsw i32 35, %17036
  %17038 = add nsw i32 %17035, %17037
  %17039 = sext i32 %17038 to i64
  %17040 = getelementptr inbounds double, ptr %17034, i64 %17039
  %17041 = load double, ptr %17040, align 8, !tbaa !11
  %17042 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %17041, double %17033)
  %17043 = load ptr, ptr %7, align 8, !tbaa !9
  %17044 = load i32, ptr %12, align 4, !tbaa !5
  %17045 = load i32, ptr %8, align 4, !tbaa !5
  %17046 = mul nsw i32 52, %17045
  %17047 = add nsw i32 %17044, %17046
  %17048 = sext i32 %17047 to i64
  %17049 = getelementptr inbounds double, ptr %17043, i64 %17048
  %17050 = load double, ptr %17049, align 8, !tbaa !11
  %17051 = call double @llvm.fmuladd.f64(double 0xBC9152F9467969C8, double %17050, double %17042)
  %17052 = load ptr, ptr %7, align 8, !tbaa !9
  %17053 = load i32, ptr %12, align 4, !tbaa !5
  %17054 = load i32, ptr %8, align 4, !tbaa !5
  %17055 = mul nsw i32 53, %17054
  %17056 = add nsw i32 %17053, %17055
  %17057 = sext i32 %17056 to i64
  %17058 = getelementptr inbounds double, ptr %17052, i64 %17057
  %17059 = load double, ptr %17058, align 8, !tbaa !11
  %17060 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %17059, double %17051)
  %17061 = load ptr, ptr %7, align 8, !tbaa !9
  %17062 = load i32, ptr %12, align 4, !tbaa !5
  %17063 = load i32, ptr %8, align 4, !tbaa !5
  %17064 = mul nsw i32 54, %17063
  %17065 = add nsw i32 %17062, %17064
  %17066 = sext i32 %17065 to i64
  %17067 = getelementptr inbounds double, ptr %17061, i64 %17066
  %17068 = load double, ptr %17067, align 8, !tbaa !11
  %17069 = call double @llvm.fmuladd.f64(double 0x3C9974B2334F2346, double %17068, double %17060)
  %17070 = load ptr, ptr %7, align 8, !tbaa !9
  %17071 = load i32, ptr %12, align 4, !tbaa !5
  %17072 = load i32, ptr %8, align 4, !tbaa !5
  %17073 = mul nsw i32 55, %17072
  %17074 = add nsw i32 %17071, %17073
  %17075 = sext i32 %17074 to i64
  %17076 = getelementptr inbounds double, ptr %17070, i64 %17075
  %17077 = load double, ptr %17076, align 8, !tbaa !11
  %17078 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %17077, double %17069)
  %17079 = load ptr, ptr %7, align 8, !tbaa !9
  %17080 = load i32, ptr %12, align 4, !tbaa !5
  %17081 = load i32, ptr %8, align 4, !tbaa !5
  %17082 = mul nsw i32 56, %17081
  %17083 = add nsw i32 %17080, %17082
  %17084 = sext i32 %17083 to i64
  %17085 = getelementptr inbounds double, ptr %17079, i64 %17084
  %17086 = load double, ptr %17085, align 8, !tbaa !11
  %17087 = call double @llvm.fmuladd.f64(double 0xBFB8DF388696F554, double %17086, double %17078)
  %17088 = load ptr, ptr %7, align 8, !tbaa !9
  %17089 = load i32, ptr %12, align 4, !tbaa !5
  %17090 = load i32, ptr %8, align 4, !tbaa !5
  %17091 = mul nsw i32 57, %17090
  %17092 = add nsw i32 %17089, %17091
  %17093 = sext i32 %17092 to i64
  %17094 = getelementptr inbounds double, ptr %17088, i64 %17093
  %17095 = load double, ptr %17094, align 8, !tbaa !11
  %17096 = call double @llvm.fmuladd.f64(double 0x3FD0C7817D9C3121, double %17095, double %17087)
  %17097 = load ptr, ptr %7, align 8, !tbaa !9
  %17098 = load i32, ptr %12, align 4, !tbaa !5
  %17099 = load i32, ptr %8, align 4, !tbaa !5
  %17100 = mul nsw i32 58, %17099
  %17101 = add nsw i32 %17098, %17100
  %17102 = sext i32 %17101 to i64
  %17103 = getelementptr inbounds double, ptr %17097, i64 %17102
  %17104 = load double, ptr %17103, align 8, !tbaa !11
  %17105 = call double @llvm.fmuladd.f64(double 0x4007001BD846D0AE, double %17104, double %17096)
  %17106 = load ptr, ptr %7, align 8, !tbaa !9
  %17107 = load i32, ptr %12, align 4, !tbaa !5
  %17108 = load i32, ptr %8, align 4, !tbaa !5
  %17109 = mul nsw i32 59, %17108
  %17110 = add nsw i32 %17107, %17109
  %17111 = sext i32 %17110 to i64
  %17112 = getelementptr inbounds double, ptr %17106, i64 %17111
  %17113 = load double, ptr %17112, align 8, !tbaa !11
  %17114 = call double @llvm.fmuladd.f64(double 0x3FD08C54FF1019FC, double %17113, double %17105)
  %17115 = load ptr, ptr %7, align 8, !tbaa !9
  %17116 = load i32, ptr %12, align 4, !tbaa !5
  %17117 = load i32, ptr %8, align 4, !tbaa !5
  %17118 = mul nsw i32 60, %17117
  %17119 = add nsw i32 %17116, %17118
  %17120 = sext i32 %17119 to i64
  %17121 = getelementptr inbounds double, ptr %17115, i64 %17120
  %17122 = load double, ptr %17121, align 8, !tbaa !11
  %17123 = call double @llvm.fmuladd.f64(double 0x3C8974B2334F2346, double %17122, double %17114)
  %17124 = load ptr, ptr %7, align 8, !tbaa !9
  %17125 = load i32, ptr %12, align 4, !tbaa !5
  %17126 = load i32, ptr %8, align 4, !tbaa !5
  %17127 = mul nsw i32 61, %17126
  %17128 = add nsw i32 %17125, %17127
  %17129 = sext i32 %17128 to i64
  %17130 = getelementptr inbounds double, ptr %17124, i64 %17129
  %17131 = load double, ptr %17130, align 8, !tbaa !11
  %17132 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %17131, double %17123)
  %17133 = load ptr, ptr %7, align 8, !tbaa !9
  %17134 = load i32, ptr %12, align 4, !tbaa !5
  %17135 = load i32, ptr %8, align 4, !tbaa !5
  %17136 = mul nsw i32 62, %17135
  %17137 = add nsw i32 %17134, %17136
  %17138 = sext i32 %17137 to i64
  %17139 = getelementptr inbounds double, ptr %17133, i64 %17138
  %17140 = load double, ptr %17139, align 8, !tbaa !11
  %17141 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %17140, double %17132)
  %17142 = load ptr, ptr %7, align 8, !tbaa !9
  %17143 = load i32, ptr %12, align 4, !tbaa !5
  %17144 = load i32, ptr %8, align 4, !tbaa !5
  %17145 = mul nsw i32 63, %17144
  %17146 = add nsw i32 %17143, %17145
  %17147 = sext i32 %17146 to i64
  %17148 = getelementptr inbounds double, ptr %17142, i64 %17147
  %17149 = load double, ptr %17148, align 8, !tbaa !11
  %17150 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %17149, double %17141)
  %17151 = load ptr, ptr %7, align 8, !tbaa !9
  %17152 = load i32, ptr %12, align 4, !tbaa !5
  %17153 = load i32, ptr %8, align 4, !tbaa !5
  %17154 = mul nsw i32 64, %17153
  %17155 = add nsw i32 %17152, %17154
  %17156 = sext i32 %17155 to i64
  %17157 = getelementptr inbounds double, ptr %17151, i64 %17156
  %17158 = load double, ptr %17157, align 8, !tbaa !11
  %17159 = call double @llvm.fmuladd.f64(double 0xBC75369480174810, double %17158, double %17150)
  %17160 = load ptr, ptr %7, align 8, !tbaa !9
  %17161 = load i32, ptr %12, align 4, !tbaa !5
  %17162 = load i32, ptr %8, align 4, !tbaa !5
  %17163 = mul nsw i32 65, %17162
  %17164 = add nsw i32 %17161, %17163
  %17165 = sext i32 %17164 to i64
  %17166 = getelementptr inbounds double, ptr %17160, i64 %17165
  %17167 = load double, ptr %17166, align 8, !tbaa !11
  %17168 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %17167, double %17159)
  %17169 = load ptr, ptr %7, align 8, !tbaa !9
  %17170 = load i32, ptr %12, align 4, !tbaa !5
  %17171 = load i32, ptr %8, align 4, !tbaa !5
  %17172 = mul nsw i32 66, %17171
  %17173 = add nsw i32 %17170, %17172
  %17174 = sext i32 %17173 to i64
  %17175 = getelementptr inbounds double, ptr %17169, i64 %17174
  %17176 = load double, ptr %17175, align 8, !tbaa !11
  %17177 = call double @llvm.fmuladd.f64(double 0x3C93CC8A99AF5452, double %17176, double %17168)
  %17178 = load ptr, ptr %7, align 8, !tbaa !9
  %17179 = load i32, ptr %12, align 4, !tbaa !5
  %17180 = load i32, ptr %8, align 4, !tbaa !5
  %17181 = mul nsw i32 67, %17180
  %17182 = add nsw i32 %17179, %17181
  %17183 = sext i32 %17182 to i64
  %17184 = getelementptr inbounds double, ptr %17178, i64 %17183
  %17185 = load double, ptr %17184, align 8, !tbaa !11
  %17186 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %17185, double %17177)
  store double %17186, ptr %11, align 8, !tbaa !11
  %17187 = load double, ptr %11, align 8, !tbaa !11
  %17188 = load ptr, ptr %9, align 8, !tbaa !9
  %17189 = load i32, ptr %12, align 4, !tbaa !5
  %17190 = load i32, ptr %10, align 4, !tbaa !5
  %17191 = mul nsw i32 59, %17190
  %17192 = add nsw i32 %17189, %17191
  %17193 = sext i32 %17192 to i64
  %17194 = getelementptr inbounds double, ptr %17188, i64 %17193
  %17195 = load double, ptr %17194, align 8, !tbaa !11
  %17196 = fadd double %17195, %17187
  store double %17196, ptr %17194, align 8, !tbaa !11
  %17197 = load ptr, ptr %7, align 8, !tbaa !9
  %17198 = load i32, ptr %12, align 4, !tbaa !5
  %17199 = load i32, ptr %8, align 4, !tbaa !5
  %17200 = mul nsw i32 20, %17199
  %17201 = add nsw i32 %17198, %17200
  %17202 = sext i32 %17201 to i64
  %17203 = getelementptr inbounds double, ptr %17197, i64 %17202
  %17204 = load double, ptr %17203, align 8, !tbaa !11
  %17205 = load ptr, ptr %7, align 8, !tbaa !9
  %17206 = load i32, ptr %12, align 4, !tbaa !5
  %17207 = load i32, ptr %8, align 4, !tbaa !5
  %17208 = mul nsw i32 21, %17207
  %17209 = add nsw i32 %17206, %17208
  %17210 = sext i32 %17209 to i64
  %17211 = getelementptr inbounds double, ptr %17205, i64 %17210
  %17212 = load double, ptr %17211, align 8, !tbaa !11
  %17213 = fmul double 0xBC94000000000000, %17212
  %17214 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %17204, double %17213)
  %17215 = load ptr, ptr %7, align 8, !tbaa !9
  %17216 = load i32, ptr %12, align 4, !tbaa !5
  %17217 = load i32, ptr %8, align 4, !tbaa !5
  %17218 = mul nsw i32 22, %17217
  %17219 = add nsw i32 %17216, %17218
  %17220 = sext i32 %17219 to i64
  %17221 = getelementptr inbounds double, ptr %17215, i64 %17220
  %17222 = load double, ptr %17221, align 8, !tbaa !11
  %17223 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %17222, double %17214)
  %17224 = load ptr, ptr %7, align 8, !tbaa !9
  %17225 = load i32, ptr %12, align 4, !tbaa !5
  %17226 = load i32, ptr %8, align 4, !tbaa !5
  %17227 = mul nsw i32 23, %17226
  %17228 = add nsw i32 %17225, %17227
  %17229 = sext i32 %17228 to i64
  %17230 = getelementptr inbounds double, ptr %17224, i64 %17229
  %17231 = load double, ptr %17230, align 8, !tbaa !11
  %17232 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %17231, double %17223)
  %17233 = load ptr, ptr %7, align 8, !tbaa !9
  %17234 = load i32, ptr %12, align 4, !tbaa !5
  %17235 = load i32, ptr %8, align 4, !tbaa !5
  %17236 = mul nsw i32 24, %17235
  %17237 = add nsw i32 %17234, %17236
  %17238 = sext i32 %17237 to i64
  %17239 = getelementptr inbounds double, ptr %17233, i64 %17238
  %17240 = load double, ptr %17239, align 8, !tbaa !11
  %17241 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %17240, double %17232)
  %17242 = load ptr, ptr %7, align 8, !tbaa !9
  %17243 = load i32, ptr %12, align 4, !tbaa !5
  %17244 = load i32, ptr %8, align 4, !tbaa !5
  %17245 = mul nsw i32 25, %17244
  %17246 = add nsw i32 %17243, %17245
  %17247 = sext i32 %17246 to i64
  %17248 = getelementptr inbounds double, ptr %17242, i64 %17247
  %17249 = load double, ptr %17248, align 8, !tbaa !11
  %17250 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %17249, double %17241)
  %17251 = load ptr, ptr %7, align 8, !tbaa !9
  %17252 = load i32, ptr %12, align 4, !tbaa !5
  %17253 = load i32, ptr %8, align 4, !tbaa !5
  %17254 = mul nsw i32 26, %17253
  %17255 = add nsw i32 %17252, %17254
  %17256 = sext i32 %17255 to i64
  %17257 = getelementptr inbounds double, ptr %17251, i64 %17256
  %17258 = load double, ptr %17257, align 8, !tbaa !11
  %17259 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %17258, double %17250)
  %17260 = load ptr, ptr %7, align 8, !tbaa !9
  %17261 = load i32, ptr %12, align 4, !tbaa !5
  %17262 = load i32, ptr %8, align 4, !tbaa !5
  %17263 = mul nsw i32 27, %17262
  %17264 = add nsw i32 %17261, %17263
  %17265 = sext i32 %17264 to i64
  %17266 = getelementptr inbounds double, ptr %17260, i64 %17265
  %17267 = load double, ptr %17266, align 8, !tbaa !11
  %17268 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %17267, double %17259)
  %17269 = load ptr, ptr %7, align 8, !tbaa !9
  %17270 = load i32, ptr %12, align 4, !tbaa !5
  %17271 = load i32, ptr %8, align 4, !tbaa !5
  %17272 = mul nsw i32 28, %17271
  %17273 = add nsw i32 %17270, %17272
  %17274 = sext i32 %17273 to i64
  %17275 = getelementptr inbounds double, ptr %17269, i64 %17274
  %17276 = load double, ptr %17275, align 8, !tbaa !11
  %17277 = call double @llvm.fmuladd.f64(double 0x3FA789B66AF4F457, double %17276, double %17268)
  %17278 = load ptr, ptr %7, align 8, !tbaa !9
  %17279 = load i32, ptr %12, align 4, !tbaa !5
  %17280 = load i32, ptr %8, align 4, !tbaa !5
  %17281 = mul nsw i32 29, %17280
  %17282 = add nsw i32 %17279, %17281
  %17283 = sext i32 %17282 to i64
  %17284 = getelementptr inbounds double, ptr %17278, i64 %17283
  %17285 = load double, ptr %17284, align 8, !tbaa !11
  %17286 = call double @llvm.fmuladd.f64(double 0x3FEC2894019C8AD4, double %17285, double %17277)
  %17287 = load ptr, ptr %7, align 8, !tbaa !9
  %17288 = load i32, ptr %12, align 4, !tbaa !5
  %17289 = load i32, ptr %8, align 4, !tbaa !5
  %17290 = mul nsw i32 30, %17289
  %17291 = add nsw i32 %17288, %17290
  %17292 = sext i32 %17291 to i64
  %17293 = getelementptr inbounds double, ptr %17287, i64 %17292
  %17294 = load double, ptr %17293, align 8, !tbaa !11
  %17295 = call double @llvm.fmuladd.f64(double 0x3FEC2894019C8AC6, double %17294, double %17286)
  %17296 = load ptr, ptr %7, align 8, !tbaa !9
  %17297 = load i32, ptr %12, align 4, !tbaa !5
  %17298 = load i32, ptr %8, align 4, !tbaa !5
  %17299 = mul nsw i32 31, %17298
  %17300 = add nsw i32 %17297, %17299
  %17301 = sext i32 %17300 to i64
  %17302 = getelementptr inbounds double, ptr %17296, i64 %17301
  %17303 = load double, ptr %17302, align 8, !tbaa !11
  %17304 = call double @llvm.fmuladd.f64(double 0x3FA789B66AF4F575, double %17303, double %17295)
  %17305 = load ptr, ptr %7, align 8, !tbaa !9
  %17306 = load i32, ptr %12, align 4, !tbaa !5
  %17307 = load i32, ptr %8, align 4, !tbaa !5
  %17308 = mul nsw i32 32, %17307
  %17309 = add nsw i32 %17306, %17308
  %17310 = sext i32 %17309 to i64
  %17311 = getelementptr inbounds double, ptr %17305, i64 %17310
  %17312 = load double, ptr %17311, align 8, !tbaa !11
  %17313 = call double @llvm.fmuladd.f64(double 0xBC60000000000000, double %17312, double %17304)
  %17314 = load ptr, ptr %7, align 8, !tbaa !9
  %17315 = load i32, ptr %12, align 4, !tbaa !5
  %17316 = load i32, ptr %8, align 4, !tbaa !5
  %17317 = mul nsw i32 33, %17316
  %17318 = add nsw i32 %17315, %17317
  %17319 = sext i32 %17318 to i64
  %17320 = getelementptr inbounds double, ptr %17314, i64 %17319
  %17321 = load double, ptr %17320, align 8, !tbaa !11
  %17322 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %17321, double %17313)
  %17323 = load ptr, ptr %7, align 8, !tbaa !9
  %17324 = load i32, ptr %12, align 4, !tbaa !5
  %17325 = load i32, ptr %8, align 4, !tbaa !5
  %17326 = mul nsw i32 35, %17325
  %17327 = add nsw i32 %17324, %17326
  %17328 = sext i32 %17327 to i64
  %17329 = getelementptr inbounds double, ptr %17323, i64 %17328
  %17330 = load double, ptr %17329, align 8, !tbaa !11
  %17331 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %17330, double %17322)
  %17332 = load ptr, ptr %7, align 8, !tbaa !9
  %17333 = load i32, ptr %12, align 4, !tbaa !5
  %17334 = load i32, ptr %8, align 4, !tbaa !5
  %17335 = mul nsw i32 52, %17334
  %17336 = add nsw i32 %17333, %17335
  %17337 = sext i32 %17336 to i64
  %17338 = getelementptr inbounds double, ptr %17332, i64 %17337
  %17339 = load double, ptr %17338, align 8, !tbaa !11
  %17340 = call double @llvm.fmuladd.f64(double 0xBC50F876CCDF6CD8, double %17339, double %17331)
  %17341 = load ptr, ptr %7, align 8, !tbaa !9
  %17342 = load i32, ptr %12, align 4, !tbaa !5
  %17343 = load i32, ptr %8, align 4, !tbaa !5
  %17344 = mul nsw i32 53, %17343
  %17345 = add nsw i32 %17342, %17344
  %17346 = sext i32 %17345 to i64
  %17347 = getelementptr inbounds double, ptr %17341, i64 %17346
  %17348 = load double, ptr %17347, align 8, !tbaa !11
  %17349 = call double @llvm.fmuladd.f64(double 0x3C7F1CD9CCEEF238, double %17348, double %17340)
  %17350 = load ptr, ptr %7, align 8, !tbaa !9
  %17351 = load i32, ptr %12, align 4, !tbaa !5
  %17352 = load i32, ptr %8, align 4, !tbaa !5
  %17353 = mul nsw i32 54, %17352
  %17354 = add nsw i32 %17351, %17353
  %17355 = sext i32 %17354 to i64
  %17356 = getelementptr inbounds double, ptr %17350, i64 %17355
  %17357 = load double, ptr %17356, align 8, !tbaa !11
  %17358 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %17357, double %17349)
  %17359 = load ptr, ptr %7, align 8, !tbaa !9
  %17360 = load i32, ptr %12, align 4, !tbaa !5
  %17361 = load i32, ptr %8, align 4, !tbaa !5
  %17362 = mul nsw i32 55, %17361
  %17363 = add nsw i32 %17360, %17362
  %17364 = sext i32 %17363 to i64
  %17365 = getelementptr inbounds double, ptr %17359, i64 %17364
  %17366 = load double, ptr %17365, align 8, !tbaa !11
  %17367 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %17366, double %17358)
  %17368 = load ptr, ptr %7, align 8, !tbaa !9
  %17369 = load i32, ptr %12, align 4, !tbaa !5
  %17370 = load i32, ptr %8, align 4, !tbaa !5
  %17371 = mul nsw i32 56, %17370
  %17372 = add nsw i32 %17369, %17371
  %17373 = sext i32 %17372 to i64
  %17374 = getelementptr inbounds double, ptr %17368, i64 %17373
  %17375 = load double, ptr %17374, align 8, !tbaa !11
  %17376 = call double @llvm.fmuladd.f64(double 0xBC9207FE39AD63A7, double %17375, double %17367)
  %17377 = load ptr, ptr %7, align 8, !tbaa !9
  %17378 = load i32, ptr %12, align 4, !tbaa !5
  %17379 = load i32, ptr %8, align 4, !tbaa !5
  %17380 = mul nsw i32 57, %17379
  %17381 = add nsw i32 %17378, %17380
  %17382 = sext i32 %17381 to i64
  %17383 = getelementptr inbounds double, ptr %17377, i64 %17382
  %17384 = load double, ptr %17383, align 8, !tbaa !11
  %17385 = call double @llvm.fmuladd.f64(double 0xBC83CC8A99AF5451, double %17384, double %17376)
  %17386 = load ptr, ptr %7, align 8, !tbaa !9
  %17387 = load i32, ptr %12, align 4, !tbaa !5
  %17388 = load i32, ptr %8, align 4, !tbaa !5
  %17389 = mul nsw i32 59, %17388
  %17390 = add nsw i32 %17387, %17389
  %17391 = sext i32 %17390 to i64
  %17392 = getelementptr inbounds double, ptr %17386, i64 %17391
  %17393 = load double, ptr %17392, align 8, !tbaa !11
  %17394 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %17393, double %17385)
  %17395 = load ptr, ptr %7, align 8, !tbaa !9
  %17396 = load i32, ptr %12, align 4, !tbaa !5
  %17397 = load i32, ptr %8, align 4, !tbaa !5
  %17398 = mul nsw i32 60, %17397
  %17399 = add nsw i32 %17396, %17398
  %17400 = sext i32 %17399 to i64
  %17401 = getelementptr inbounds double, ptr %17395, i64 %17400
  %17402 = load double, ptr %17401, align 8, !tbaa !11
  %17403 = call double @llvm.fmuladd.f64(double 0xBFA0A4D27CF86DCE, double %17402, double %17394)
  %17404 = load ptr, ptr %7, align 8, !tbaa !9
  %17405 = load i32, ptr %12, align 4, !tbaa !5
  %17406 = load i32, ptr %8, align 4, !tbaa !5
  %17407 = mul nsw i32 61, %17406
  %17408 = add nsw i32 %17405, %17407
  %17409 = sext i32 %17408 to i64
  %17410 = getelementptr inbounds double, ptr %17404, i64 %17409
  %17411 = load double, ptr %17410, align 8, !tbaa !11
  %17412 = call double @llvm.fmuladd.f64(double 0xBFE3E93C07AFC382, double %17411, double %17403)
  %17413 = load ptr, ptr %7, align 8, !tbaa !9
  %17414 = load i32, ptr %12, align 4, !tbaa !5
  %17415 = load i32, ptr %8, align 4, !tbaa !5
  %17416 = mul nsw i32 62, %17415
  %17417 = add nsw i32 %17414, %17416
  %17418 = sext i32 %17417 to i64
  %17419 = getelementptr inbounds double, ptr %17413, i64 %17418
  %17420 = load double, ptr %17419, align 8, !tbaa !11
  %17421 = call double @llvm.fmuladd.f64(double 0xBFE3E93C07AFC37F, double %17420, double %17412)
  %17422 = load ptr, ptr %7, align 8, !tbaa !9
  %17423 = load i32, ptr %12, align 4, !tbaa !5
  %17424 = load i32, ptr %8, align 4, !tbaa !5
  %17425 = mul nsw i32 63, %17424
  %17426 = add nsw i32 %17423, %17425
  %17427 = sext i32 %17426 to i64
  %17428 = getelementptr inbounds double, ptr %17422, i64 %17427
  %17429 = load double, ptr %17428, align 8, !tbaa !11
  %17430 = call double @llvm.fmuladd.f64(double 0xBFA0A4D27CF86DB4, double %17429, double %17421)
  %17431 = load ptr, ptr %7, align 8, !tbaa !9
  %17432 = load i32, ptr %12, align 4, !tbaa !5
  %17433 = load i32, ptr %8, align 4, !tbaa !5
  %17434 = mul nsw i32 64, %17433
  %17435 = add nsw i32 %17432, %17434
  %17436 = sext i32 %17435 to i64
  %17437 = getelementptr inbounds double, ptr %17431, i64 %17436
  %17438 = load double, ptr %17437, align 8, !tbaa !11
  %17439 = call double @llvm.fmuladd.f64(double 0xBC84818F8CE34E32, double %17438, double %17430)
  %17440 = load ptr, ptr %7, align 8, !tbaa !9
  %17441 = load i32, ptr %12, align 4, !tbaa !5
  %17442 = load i32, ptr %8, align 4, !tbaa !5
  %17443 = mul nsw i32 65, %17442
  %17444 = add nsw i32 %17441, %17443
  %17445 = sext i32 %17444 to i64
  %17446 = getelementptr inbounds double, ptr %17440, i64 %17445
  %17447 = load double, ptr %17446, align 8, !tbaa !11
  %17448 = call double @llvm.fmuladd.f64(double 0x3C6C48C6001F0ABE, double %17447, double %17439)
  %17449 = load ptr, ptr %7, align 8, !tbaa !9
  %17450 = load i32, ptr %12, align 4, !tbaa !5
  %17451 = load i32, ptr %8, align 4, !tbaa !5
  %17452 = mul nsw i32 66, %17451
  %17453 = add nsw i32 %17450, %17452
  %17454 = sext i32 %17453 to i64
  %17455 = getelementptr inbounds double, ptr %17449, i64 %17454
  %17456 = load double, ptr %17455, align 8, !tbaa !11
  %17457 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %17456, double %17448)
  %17458 = load ptr, ptr %7, align 8, !tbaa !9
  %17459 = load i32, ptr %12, align 4, !tbaa !5
  %17460 = load i32, ptr %8, align 4, !tbaa !5
  %17461 = mul nsw i32 67, %17460
  %17462 = add nsw i32 %17459, %17461
  %17463 = sext i32 %17462 to i64
  %17464 = getelementptr inbounds double, ptr %17458, i64 %17463
  %17465 = load double, ptr %17464, align 8, !tbaa !11
  %17466 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %17465, double %17457)
  store double %17466, ptr %11, align 8, !tbaa !11
  %17467 = load double, ptr %11, align 8, !tbaa !11
  %17468 = load ptr, ptr %9, align 8, !tbaa !9
  %17469 = load i32, ptr %12, align 4, !tbaa !5
  %17470 = load i32, ptr %10, align 4, !tbaa !5
  %17471 = mul nsw i32 60, %17470
  %17472 = add nsw i32 %17469, %17471
  %17473 = sext i32 %17472 to i64
  %17474 = getelementptr inbounds double, ptr %17468, i64 %17473
  %17475 = load double, ptr %17474, align 8, !tbaa !11
  %17476 = fadd double %17475, %17467
  store double %17476, ptr %17474, align 8, !tbaa !11
  %17477 = load ptr, ptr %7, align 8, !tbaa !9
  %17478 = load i32, ptr %12, align 4, !tbaa !5
  %17479 = load i32, ptr %8, align 4, !tbaa !5
  %17480 = mul nsw i32 20, %17479
  %17481 = add nsw i32 %17478, %17480
  %17482 = sext i32 %17481 to i64
  %17483 = getelementptr inbounds double, ptr %17477, i64 %17482
  %17484 = load double, ptr %17483, align 8, !tbaa !11
  %17485 = load ptr, ptr %7, align 8, !tbaa !9
  %17486 = load i32, ptr %12, align 4, !tbaa !5
  %17487 = load i32, ptr %8, align 4, !tbaa !5
  %17488 = mul nsw i32 22, %17487
  %17489 = add nsw i32 %17486, %17488
  %17490 = sext i32 %17489 to i64
  %17491 = getelementptr inbounds double, ptr %17485, i64 %17490
  %17492 = load double, ptr %17491, align 8, !tbaa !11
  %17493 = fmul double 0x3C90000000000000, %17492
  %17494 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %17484, double %17493)
  %17495 = load ptr, ptr %7, align 8, !tbaa !9
  %17496 = load i32, ptr %12, align 4, !tbaa !5
  %17497 = load i32, ptr %8, align 4, !tbaa !5
  %17498 = mul nsw i32 23, %17497
  %17499 = add nsw i32 %17496, %17498
  %17500 = sext i32 %17499 to i64
  %17501 = getelementptr inbounds double, ptr %17495, i64 %17500
  %17502 = load double, ptr %17501, align 8, !tbaa !11
  %17503 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %17502, double %17494)
  %17504 = load ptr, ptr %7, align 8, !tbaa !9
  %17505 = load i32, ptr %12, align 4, !tbaa !5
  %17506 = load i32, ptr %8, align 4, !tbaa !5
  %17507 = mul nsw i32 26, %17506
  %17508 = add nsw i32 %17505, %17507
  %17509 = sext i32 %17508 to i64
  %17510 = getelementptr inbounds double, ptr %17504, i64 %17509
  %17511 = load double, ptr %17510, align 8, !tbaa !11
  %17512 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %17511, double %17503)
  %17513 = load ptr, ptr %7, align 8, !tbaa !9
  %17514 = load i32, ptr %12, align 4, !tbaa !5
  %17515 = load i32, ptr %8, align 4, !tbaa !5
  %17516 = mul nsw i32 27, %17515
  %17517 = add nsw i32 %17514, %17516
  %17518 = sext i32 %17517 to i64
  %17519 = getelementptr inbounds double, ptr %17513, i64 %17518
  %17520 = load double, ptr %17519, align 8, !tbaa !11
  %17521 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %17520, double %17512)
  %17522 = load ptr, ptr %7, align 8, !tbaa !9
  %17523 = load i32, ptr %12, align 4, !tbaa !5
  %17524 = load i32, ptr %8, align 4, !tbaa !5
  %17525 = mul nsw i32 28, %17524
  %17526 = add nsw i32 %17523, %17525
  %17527 = sext i32 %17526 to i64
  %17528 = getelementptr inbounds double, ptr %17522, i64 %17527
  %17529 = load double, ptr %17528, align 8, !tbaa !11
  %17530 = call double @llvm.fmuladd.f64(double 0x3FD6F2A1D7A492C4, double %17529, double %17521)
  %17531 = load ptr, ptr %7, align 8, !tbaa !9
  %17532 = load i32, ptr %12, align 4, !tbaa !5
  %17533 = load i32, ptr %8, align 4, !tbaa !5
  %17534 = mul nsw i32 29, %17533
  %17535 = add nsw i32 %17532, %17534
  %17536 = sext i32 %17535 to i64
  %17537 = getelementptr inbounds double, ptr %17531, i64 %17536
  %17538 = load double, ptr %17537, align 8, !tbaa !11
  %17539 = call double @llvm.fmuladd.f64(double 0x3FEAEBF44A8E7A95, double %17538, double %17530)
  %17540 = load ptr, ptr %7, align 8, !tbaa !9
  %17541 = load i32, ptr %12, align 4, !tbaa !5
  %17542 = load i32, ptr %8, align 4, !tbaa !5
  %17543 = mul nsw i32 30, %17542
  %17544 = add nsw i32 %17541, %17543
  %17545 = sext i32 %17544 to i64
  %17546 = getelementptr inbounds double, ptr %17540, i64 %17545
  %17547 = load double, ptr %17546, align 8, !tbaa !11
  %17548 = call double @llvm.fmuladd.f64(double 0x3FEAEBF44A8E7A9A, double %17547, double %17539)
  %17549 = load ptr, ptr %7, align 8, !tbaa !9
  %17550 = load i32, ptr %12, align 4, !tbaa !5
  %17551 = load i32, ptr %8, align 4, !tbaa !5
  %17552 = mul nsw i32 31, %17551
  %17553 = add nsw i32 %17550, %17552
  %17554 = sext i32 %17553 to i64
  %17555 = getelementptr inbounds double, ptr %17549, i64 %17554
  %17556 = load double, ptr %17555, align 8, !tbaa !11
  %17557 = call double @llvm.fmuladd.f64(double 0x3FD6F2A1D7A492D5, double %17556, double %17548)
  %17558 = load ptr, ptr %7, align 8, !tbaa !9
  %17559 = load i32, ptr %12, align 4, !tbaa !5
  %17560 = load i32, ptr %8, align 4, !tbaa !5
  %17561 = mul nsw i32 33, %17560
  %17562 = add nsw i32 %17559, %17561
  %17563 = sext i32 %17562 to i64
  %17564 = getelementptr inbounds double, ptr %17558, i64 %17563
  %17565 = load double, ptr %17564, align 8, !tbaa !11
  %17566 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %17565, double %17557)
  %17567 = load ptr, ptr %7, align 8, !tbaa !9
  %17568 = load i32, ptr %12, align 4, !tbaa !5
  %17569 = load i32, ptr %8, align 4, !tbaa !5
  %17570 = mul nsw i32 34, %17569
  %17571 = add nsw i32 %17568, %17570
  %17572 = sext i32 %17571 to i64
  %17573 = getelementptr inbounds double, ptr %17567, i64 %17572
  %17574 = load double, ptr %17573, align 8, !tbaa !11
  %17575 = call double @llvm.fmuladd.f64(double 0x3CB3FFFFFFFFFFFF, double %17574, double %17566)
  %17576 = load ptr, ptr %7, align 8, !tbaa !9
  %17577 = load i32, ptr %12, align 4, !tbaa !5
  %17578 = load i32, ptr %8, align 4, !tbaa !5
  %17579 = mul nsw i32 35, %17578
  %17580 = add nsw i32 %17577, %17579
  %17581 = sext i32 %17580 to i64
  %17582 = getelementptr inbounds double, ptr %17576, i64 %17581
  %17583 = load double, ptr %17582, align 8, !tbaa !11
  %17584 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %17583, double %17575)
  %17585 = load ptr, ptr %7, align 8, !tbaa !9
  %17586 = load i32, ptr %12, align 4, !tbaa !5
  %17587 = load i32, ptr %8, align 4, !tbaa !5
  %17588 = mul nsw i32 52, %17587
  %17589 = add nsw i32 %17586, %17588
  %17590 = sext i32 %17589 to i64
  %17591 = getelementptr inbounds double, ptr %17585, i64 %17590
  %17592 = load double, ptr %17591, align 8, !tbaa !11
  %17593 = call double @llvm.fmuladd.f64(double 0x3C70F876CCDF6CD9, double %17592, double %17584)
  %17594 = load ptr, ptr %7, align 8, !tbaa !9
  %17595 = load i32, ptr %12, align 4, !tbaa !5
  %17596 = load i32, ptr %8, align 4, !tbaa !5
  %17597 = mul nsw i32 53, %17596
  %17598 = add nsw i32 %17595, %17597
  %17599 = sext i32 %17598 to i64
  %17600 = getelementptr inbounds double, ptr %17594, i64 %17599
  %17601 = load double, ptr %17600, align 8, !tbaa !11
  %17602 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %17601, double %17593)
  %17603 = load ptr, ptr %7, align 8, !tbaa !9
  %17604 = load i32, ptr %12, align 4, !tbaa !5
  %17605 = load i32, ptr %8, align 4, !tbaa !5
  %17606 = mul nsw i32 54, %17605
  %17607 = add nsw i32 %17604, %17606
  %17608 = sext i32 %17607 to i64
  %17609 = getelementptr inbounds double, ptr %17603, i64 %17608
  %17610 = load double, ptr %17609, align 8, !tbaa !11
  %17611 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %17610, double %17602)
  %17612 = load ptr, ptr %7, align 8, !tbaa !9
  %17613 = load i32, ptr %12, align 4, !tbaa !5
  %17614 = load i32, ptr %8, align 4, !tbaa !5
  %17615 = mul nsw i32 55, %17614
  %17616 = add nsw i32 %17613, %17615
  %17617 = sext i32 %17616 to i64
  %17618 = getelementptr inbounds double, ptr %17612, i64 %17617
  %17619 = load double, ptr %17618, align 8, !tbaa !11
  %17620 = call double @llvm.fmuladd.f64(double 0x3C96A09E667F3BCC, double %17619, double %17611)
  %17621 = load ptr, ptr %7, align 8, !tbaa !9
  %17622 = load i32, ptr %12, align 4, !tbaa !5
  %17623 = load i32, ptr %8, align 4, !tbaa !5
  %17624 = mul nsw i32 56, %17623
  %17625 = add nsw i32 %17622, %17624
  %17626 = sext i32 %17625 to i64
  %17627 = getelementptr inbounds double, ptr %17621, i64 %17626
  %17628 = load double, ptr %17627, align 8, !tbaa !11
  %17629 = call double @llvm.fmuladd.f64(double 0x3C70F876CCDF6CD9, double %17628, double %17620)
  %17630 = load ptr, ptr %7, align 8, !tbaa !9
  %17631 = load i32, ptr %12, align 4, !tbaa !5
  %17632 = load i32, ptr %8, align 4, !tbaa !5
  %17633 = mul nsw i32 57, %17632
  %17634 = add nsw i32 %17631, %17633
  %17635 = sext i32 %17634 to i64
  %17636 = getelementptr inbounds double, ptr %17630, i64 %17635
  %17637 = load double, ptr %17636, align 8, !tbaa !11
  %17638 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %17637, double %17629)
  %17639 = load ptr, ptr %7, align 8, !tbaa !9
  %17640 = load i32, ptr %12, align 4, !tbaa !5
  %17641 = load i32, ptr %8, align 4, !tbaa !5
  %17642 = mul nsw i32 58, %17641
  %17643 = add nsw i32 %17640, %17642
  %17644 = sext i32 %17643 to i64
  %17645 = getelementptr inbounds double, ptr %17639, i64 %17644
  %17646 = load double, ptr %17645, align 8, !tbaa !11
  %17647 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %17646, double %17638)
  %17648 = load ptr, ptr %7, align 8, !tbaa !9
  %17649 = load i32, ptr %12, align 4, !tbaa !5
  %17650 = load i32, ptr %8, align 4, !tbaa !5
  %17651 = mul nsw i32 59, %17650
  %17652 = add nsw i32 %17649, %17651
  %17653 = sext i32 %17652 to i64
  %17654 = getelementptr inbounds double, ptr %17648, i64 %17653
  %17655 = load double, ptr %17654, align 8, !tbaa !11
  %17656 = call double @llvm.fmuladd.f64(double 0xBCC3CC8A99AF5452, double %17655, double %17647)
  %17657 = load ptr, ptr %7, align 8, !tbaa !9
  %17658 = load i32, ptr %12, align 4, !tbaa !5
  %17659 = load i32, ptr %8, align 4, !tbaa !5
  %17660 = mul nsw i32 60, %17659
  %17661 = add nsw i32 %17658, %17660
  %17662 = sext i32 %17661 to i64
  %17663 = getelementptr inbounds double, ptr %17657, i64 %17662
  %17664 = load double, ptr %17663, align 8, !tbaa !11
  %17665 = call double @llvm.fmuladd.f64(double 0x3FA462D8D66D7FBE, double %17664, double %17656)
  %17666 = load ptr, ptr %7, align 8, !tbaa !9
  %17667 = load i32, ptr %12, align 4, !tbaa !5
  %17668 = load i32, ptr %8, align 4, !tbaa !5
  %17669 = mul nsw i32 61, %17668
  %17670 = add nsw i32 %17667, %17669
  %17671 = sext i32 %17670 to i64
  %17672 = getelementptr inbounds double, ptr %17666, i64 %17671
  %17673 = load double, ptr %17672, align 8, !tbaa !11
  %17674 = call double @llvm.fmuladd.f64(double 0xBFC5EA083165C4F6, double %17673, double %17665)
  %17675 = load ptr, ptr %7, align 8, !tbaa !9
  %17676 = load i32, ptr %12, align 4, !tbaa !5
  %17677 = load i32, ptr %8, align 4, !tbaa !5
  %17678 = mul nsw i32 62, %17677
  %17679 = add nsw i32 %17676, %17678
  %17680 = sext i32 %17679 to i64
  %17681 = getelementptr inbounds double, ptr %17675, i64 %17680
  %17682 = load double, ptr %17681, align 8, !tbaa !11
  %17683 = call double @llvm.fmuladd.f64(double 0x3FD4A299D1E97012, double %17682, double %17674)
  %17684 = load ptr, ptr %7, align 8, !tbaa !9
  %17685 = load i32, ptr %12, align 4, !tbaa !5
  %17686 = load i32, ptr %8, align 4, !tbaa !5
  %17687 = mul nsw i32 63, %17686
  %17688 = add nsw i32 %17685, %17687
  %17689 = sext i32 %17688 to i64
  %17690 = getelementptr inbounds double, ptr %17684, i64 %17689
  %17691 = load double, ptr %17690, align 8, !tbaa !11
  %17692 = call double @llvm.fmuladd.f64(double 0x400E488CB8C1EA78, double %17691, double %17683)
  %17693 = load ptr, ptr %7, align 8, !tbaa !9
  %17694 = load i32, ptr %12, align 4, !tbaa !5
  %17695 = load i32, ptr %8, align 4, !tbaa !5
  %17696 = mul nsw i32 64, %17695
  %17697 = add nsw i32 %17694, %17696
  %17698 = sext i32 %17697 to i64
  %17699 = getelementptr inbounds double, ptr %17693, i64 %17698
  %17700 = load double, ptr %17699, align 8, !tbaa !11
  %17701 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %17700, double %17692)
  %17702 = load ptr, ptr %7, align 8, !tbaa !9
  %17703 = load i32, ptr %12, align 4, !tbaa !5
  %17704 = load i32, ptr %8, align 4, !tbaa !5
  %17705 = mul nsw i32 65, %17704
  %17706 = add nsw i32 %17703, %17705
  %17707 = sext i32 %17706 to i64
  %17708 = getelementptr inbounds double, ptr %17702, i64 %17707
  %17709 = load double, ptr %17708, align 8, !tbaa !11
  %17710 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %17709, double %17701)
  %17711 = load ptr, ptr %7, align 8, !tbaa !9
  %17712 = load i32, ptr %12, align 4, !tbaa !5
  %17713 = load i32, ptr %8, align 4, !tbaa !5
  %17714 = mul nsw i32 66, %17713
  %17715 = add nsw i32 %17712, %17714
  %17716 = sext i32 %17715 to i64
  %17717 = getelementptr inbounds double, ptr %17711, i64 %17716
  %17718 = load double, ptr %17717, align 8, !tbaa !11
  %17719 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %17718, double %17710)
  %17720 = load ptr, ptr %7, align 8, !tbaa !9
  %17721 = load i32, ptr %12, align 4, !tbaa !5
  %17722 = load i32, ptr %8, align 4, !tbaa !5
  %17723 = mul nsw i32 67, %17722
  %17724 = add nsw i32 %17721, %17723
  %17725 = sext i32 %17724 to i64
  %17726 = getelementptr inbounds double, ptr %17720, i64 %17725
  %17727 = load double, ptr %17726, align 8, !tbaa !11
  %17728 = call double @llvm.fmuladd.f64(double 0x3CB0F876CCDF6CD8, double %17727, double %17719)
  store double %17728, ptr %11, align 8, !tbaa !11
  %17729 = load double, ptr %11, align 8, !tbaa !11
  %17730 = load ptr, ptr %9, align 8, !tbaa !9
  %17731 = load i32, ptr %12, align 4, !tbaa !5
  %17732 = load i32, ptr %10, align 4, !tbaa !5
  %17733 = mul nsw i32 61, %17732
  %17734 = add nsw i32 %17731, %17733
  %17735 = sext i32 %17734 to i64
  %17736 = getelementptr inbounds double, ptr %17730, i64 %17735
  %17737 = load double, ptr %17736, align 8, !tbaa !11
  %17738 = fadd double %17737, %17729
  store double %17738, ptr %17736, align 8, !tbaa !11
  %17739 = load ptr, ptr %7, align 8, !tbaa !9
  %17740 = load i32, ptr %12, align 4, !tbaa !5
  %17741 = load i32, ptr %8, align 4, !tbaa !5
  %17742 = mul nsw i32 20, %17741
  %17743 = add nsw i32 %17740, %17742
  %17744 = sext i32 %17743 to i64
  %17745 = getelementptr inbounds double, ptr %17739, i64 %17744
  %17746 = load double, ptr %17745, align 8, !tbaa !11
  %17747 = load ptr, ptr %7, align 8, !tbaa !9
  %17748 = load i32, ptr %12, align 4, !tbaa !5
  %17749 = load i32, ptr %8, align 4, !tbaa !5
  %17750 = mul nsw i32 21, %17749
  %17751 = add nsw i32 %17748, %17750
  %17752 = sext i32 %17751 to i64
  %17753 = getelementptr inbounds double, ptr %17747, i64 %17752
  %17754 = load double, ptr %17753, align 8, !tbaa !11
  %17755 = fmul double 0xBC78000000000002, %17754
  %17756 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %17746, double %17755)
  %17757 = load ptr, ptr %7, align 8, !tbaa !9
  %17758 = load i32, ptr %12, align 4, !tbaa !5
  %17759 = load i32, ptr %8, align 4, !tbaa !5
  %17760 = mul nsw i32 22, %17759
  %17761 = add nsw i32 %17758, %17760
  %17762 = sext i32 %17761 to i64
  %17763 = getelementptr inbounds double, ptr %17757, i64 %17762
  %17764 = load double, ptr %17763, align 8, !tbaa !11
  %17765 = call double @llvm.fmuladd.f64(double 0x3CA2FFFFFFFFFFFE, double %17764, double %17756)
  %17766 = load ptr, ptr %7, align 8, !tbaa !9
  %17767 = load i32, ptr %12, align 4, !tbaa !5
  %17768 = load i32, ptr %8, align 4, !tbaa !5
  %17769 = mul nsw i32 23, %17768
  %17770 = add nsw i32 %17767, %17769
  %17771 = sext i32 %17770 to i64
  %17772 = getelementptr inbounds double, ptr %17766, i64 %17771
  %17773 = load double, ptr %17772, align 8, !tbaa !11
  %17774 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %17773, double %17765)
  %17775 = load ptr, ptr %7, align 8, !tbaa !9
  %17776 = load i32, ptr %12, align 4, !tbaa !5
  %17777 = load i32, ptr %8, align 4, !tbaa !5
  %17778 = mul nsw i32 24, %17777
  %17779 = add nsw i32 %17776, %17778
  %17780 = sext i32 %17779 to i64
  %17781 = getelementptr inbounds double, ptr %17775, i64 %17780
  %17782 = load double, ptr %17781, align 8, !tbaa !11
  %17783 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %17782, double %17774)
  %17784 = load ptr, ptr %7, align 8, !tbaa !9
  %17785 = load i32, ptr %12, align 4, !tbaa !5
  %17786 = load i32, ptr %8, align 4, !tbaa !5
  %17787 = mul nsw i32 25, %17786
  %17788 = add nsw i32 %17785, %17787
  %17789 = sext i32 %17788 to i64
  %17790 = getelementptr inbounds double, ptr %17784, i64 %17789
  %17791 = load double, ptr %17790, align 8, !tbaa !11
  %17792 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %17791, double %17783)
  %17793 = load ptr, ptr %7, align 8, !tbaa !9
  %17794 = load i32, ptr %12, align 4, !tbaa !5
  %17795 = load i32, ptr %8, align 4, !tbaa !5
  %17796 = mul nsw i32 26, %17795
  %17797 = add nsw i32 %17794, %17796
  %17798 = sext i32 %17797 to i64
  %17799 = getelementptr inbounds double, ptr %17793, i64 %17798
  %17800 = load double, ptr %17799, align 8, !tbaa !11
  %17801 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %17800, double %17792)
  %17802 = load ptr, ptr %7, align 8, !tbaa !9
  %17803 = load i32, ptr %12, align 4, !tbaa !5
  %17804 = load i32, ptr %8, align 4, !tbaa !5
  %17805 = mul nsw i32 27, %17804
  %17806 = add nsw i32 %17803, %17805
  %17807 = sext i32 %17806 to i64
  %17808 = getelementptr inbounds double, ptr %17802, i64 %17807
  %17809 = load double, ptr %17808, align 8, !tbaa !11
  %17810 = call double @llvm.fmuladd.f64(double 0xBCC4800000000000, double %17809, double %17801)
  %17811 = load ptr, ptr %7, align 8, !tbaa !9
  %17812 = load i32, ptr %12, align 4, !tbaa !5
  %17813 = load i32, ptr %8, align 4, !tbaa !5
  %17814 = mul nsw i32 28, %17813
  %17815 = add nsw i32 %17812, %17814
  %17816 = sext i32 %17815 to i64
  %17817 = getelementptr inbounds double, ptr %17811, i64 %17816
  %17818 = load double, ptr %17817, align 8, !tbaa !11
  %17819 = call double @llvm.fmuladd.f64(double 0xBFACD49071EC601E, double %17818, double %17810)
  %17820 = load ptr, ptr %7, align 8, !tbaa !9
  %17821 = load i32, ptr %12, align 4, !tbaa !5
  %17822 = load i32, ptr %8, align 4, !tbaa !5
  %17823 = mul nsw i32 29, %17822
  %17824 = add nsw i32 %17821, %17823
  %17825 = sext i32 %17824 to i64
  %17826 = getelementptr inbounds double, ptr %17820, i64 %17825
  %17827 = load double, ptr %17826, align 8, !tbaa !11
  %17828 = call double @llvm.fmuladd.f64(double 0x3FCEFDC8894D07FE, double %17827, double %17819)
  %17829 = load ptr, ptr %7, align 8, !tbaa !9
  %17830 = load i32, ptr %12, align 4, !tbaa !5
  %17831 = load i32, ptr %8, align 4, !tbaa !5
  %17832 = mul nsw i32 30, %17831
  %17833 = add nsw i32 %17830, %17832
  %17834 = sext i32 %17833 to i64
  %17835 = getelementptr inbounds double, ptr %17829, i64 %17834
  %17836 = load double, ptr %17835, align 8, !tbaa !11
  %17837 = call double @llvm.fmuladd.f64(double 0xBFDD2EB9CCB3BE36, double %17836, double %17828)
  %17838 = load ptr, ptr %7, align 8, !tbaa !9
  %17839 = load i32, ptr %12, align 4, !tbaa !5
  %17840 = load i32, ptr %8, align 4, !tbaa !5
  %17841 = mul nsw i32 31, %17840
  %17842 = add nsw i32 %17839, %17841
  %17843 = sext i32 %17842 to i64
  %17844 = getelementptr inbounds double, ptr %17838, i64 %17843
  %17845 = load double, ptr %17844, align 8, !tbaa !11
  %17846 = call double @llvm.fmuladd.f64(double 0xC01569E165D7940C, double %17845, double %17837)
  %17847 = load ptr, ptr %7, align 8, !tbaa !9
  %17848 = load i32, ptr %12, align 4, !tbaa !5
  %17849 = load i32, ptr %8, align 4, !tbaa !5
  %17850 = mul nsw i32 32, %17849
  %17851 = add nsw i32 %17848, %17850
  %17852 = sext i32 %17851 to i64
  %17853 = getelementptr inbounds double, ptr %17847, i64 %17852
  %17854 = load double, ptr %17853, align 8, !tbaa !11
  %17855 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %17854, double %17846)
  %17856 = load ptr, ptr %7, align 8, !tbaa !9
  %17857 = load i32, ptr %12, align 4, !tbaa !5
  %17858 = load i32, ptr %8, align 4, !tbaa !5
  %17859 = mul nsw i32 33, %17858
  %17860 = add nsw i32 %17857, %17859
  %17861 = sext i32 %17860 to i64
  %17862 = getelementptr inbounds double, ptr %17856, i64 %17861
  %17863 = load double, ptr %17862, align 8, !tbaa !11
  %17864 = call double @llvm.fmuladd.f64(double 0x3C96000000000000, double %17863, double %17855)
  %17865 = load ptr, ptr %7, align 8, !tbaa !9
  %17866 = load i32, ptr %12, align 4, !tbaa !5
  %17867 = load i32, ptr %8, align 4, !tbaa !5
  %17868 = mul nsw i32 34, %17867
  %17869 = add nsw i32 %17866, %17868
  %17870 = sext i32 %17869 to i64
  %17871 = getelementptr inbounds double, ptr %17865, i64 %17870
  %17872 = load double, ptr %17871, align 8, !tbaa !11
  %17873 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %17872, double %17864)
  %17874 = load ptr, ptr %7, align 8, !tbaa !9
  %17875 = load i32, ptr %12, align 4, !tbaa !5
  %17876 = load i32, ptr %8, align 4, !tbaa !5
  %17877 = mul nsw i32 35, %17876
  %17878 = add nsw i32 %17875, %17877
  %17879 = sext i32 %17878 to i64
  %17880 = getelementptr inbounds double, ptr %17874, i64 %17879
  %17881 = load double, ptr %17880, align 8, !tbaa !11
  %17882 = call double @llvm.fmuladd.f64(double 0x3CB8000000000001, double %17881, double %17873)
  %17883 = load ptr, ptr %7, align 8, !tbaa !9
  %17884 = load i32, ptr %12, align 4, !tbaa !5
  %17885 = load i32, ptr %8, align 4, !tbaa !5
  %17886 = mul nsw i32 52, %17885
  %17887 = add nsw i32 %17884, %17886
  %17888 = sext i32 %17887 to i64
  %17889 = getelementptr inbounds double, ptr %17883, i64 %17888
  %17890 = load double, ptr %17889, align 8, !tbaa !11
  %17891 = call double @llvm.fmuladd.f64(double 0x3CA02CD13B44F3C0, double %17890, double %17882)
  %17892 = load ptr, ptr %7, align 8, !tbaa !9
  %17893 = load i32, ptr %12, align 4, !tbaa !5
  %17894 = load i32, ptr %8, align 4, !tbaa !5
  %17895 = mul nsw i32 54, %17894
  %17896 = add nsw i32 %17893, %17895
  %17897 = sext i32 %17896 to i64
  %17898 = getelementptr inbounds double, ptr %17892, i64 %17897
  %17899 = load double, ptr %17898, align 8, !tbaa !11
  %17900 = call double @llvm.fmuladd.f64(double 0x3C70F876CCDF6CD9, double %17899, double %17891)
  %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 55, %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 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %17908, double %17900)
  %17910 = load ptr, ptr %7, align 8, !tbaa !9
  %17911 = load i32, ptr %12, align 4, !tbaa !5
  %17912 = load i32, ptr %8, align 4, !tbaa !5
  %17913 = mul nsw i32 56, %17912
  %17914 = add nsw i32 %17911, %17913
  %17915 = sext i32 %17914 to i64
  %17916 = getelementptr inbounds double, ptr %17910, i64 %17915
  %17917 = load double, ptr %17916, align 8, !tbaa !11
  %17918 = call double @llvm.fmuladd.f64(double 0xBCABEE4386850DD1, double %17917, double %17909)
  %17919 = load ptr, ptr %7, align 8, !tbaa !9
  %17920 = load i32, ptr %12, align 4, !tbaa !5
  %17921 = load i32, ptr %8, align 4, !tbaa !5
  %17922 = mul nsw i32 57, %17921
  %17923 = add nsw i32 %17920, %17922
  %17924 = sext i32 %17923 to i64
  %17925 = getelementptr inbounds double, ptr %17919, i64 %17924
  %17926 = load double, ptr %17925, align 8, !tbaa !11
  %17927 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %17926, double %17918)
  %17928 = load ptr, ptr %7, align 8, !tbaa !9
  %17929 = load i32, ptr %12, align 4, !tbaa !5
  %17930 = load i32, ptr %8, align 4, !tbaa !5
  %17931 = mul nsw i32 58, %17930
  %17932 = add nsw i32 %17929, %17931
  %17933 = sext i32 %17932 to i64
  %17934 = getelementptr inbounds double, ptr %17928, i64 %17933
  %17935 = load double, ptr %17934, align 8, !tbaa !11
  %17936 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %17935, double %17927)
  %17937 = load ptr, ptr %7, align 8, !tbaa !9
  %17938 = load i32, ptr %12, align 4, !tbaa !5
  %17939 = load i32, ptr %8, align 4, !tbaa !5
  %17940 = mul nsw i32 59, %17939
  %17941 = add nsw i32 %17938, %17940
  %17942 = sext i32 %17941 to i64
  %17943 = getelementptr inbounds double, ptr %17937, i64 %17942
  %17944 = load double, ptr %17943, align 8, !tbaa !11
  %17945 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %17944, double %17936)
  %17946 = load ptr, ptr %7, align 8, !tbaa !9
  %17947 = load i32, ptr %12, align 4, !tbaa !5
  %17948 = load i32, ptr %8, align 4, !tbaa !5
  %17949 = mul nsw i32 60, %17948
  %17950 = add nsw i32 %17947, %17949
  %17951 = sext i32 %17950 to i64
  %17952 = getelementptr inbounds double, ptr %17946, i64 %17951
  %17953 = load double, ptr %17952, align 8, !tbaa !11
  %17954 = call double @llvm.fmuladd.f64(double 0x400E488CB8C1EA66, double %17953, double %17945)
  %17955 = load ptr, ptr %7, align 8, !tbaa !9
  %17956 = load i32, ptr %12, align 4, !tbaa !5
  %17957 = load i32, ptr %8, align 4, !tbaa !5
  %17958 = mul nsw i32 61, %17957
  %17959 = add nsw i32 %17956, %17958
  %17960 = sext i32 %17959 to i64
  %17961 = getelementptr inbounds double, ptr %17955, i64 %17960
  %17962 = load double, ptr %17961, align 8, !tbaa !11
  %17963 = call double @llvm.fmuladd.f64(double 0x3FD4A299D1E9700C, double %17962, double %17954)
  %17964 = load ptr, ptr %7, align 8, !tbaa !9
  %17965 = load i32, ptr %12, align 4, !tbaa !5
  %17966 = load i32, ptr %8, align 4, !tbaa !5
  %17967 = mul nsw i32 62, %17966
  %17968 = add nsw i32 %17965, %17967
  %17969 = sext i32 %17968 to i64
  %17970 = getelementptr inbounds double, ptr %17964, i64 %17969
  %17971 = load double, ptr %17970, align 8, !tbaa !11
  %17972 = call double @llvm.fmuladd.f64(double 0xBFC5EA083165C4F9, double %17971, double %17963)
  %17973 = load ptr, ptr %7, align 8, !tbaa !9
  %17974 = load i32, ptr %12, align 4, !tbaa !5
  %17975 = load i32, ptr %8, align 4, !tbaa !5
  %17976 = mul nsw i32 63, %17975
  %17977 = add nsw i32 %17974, %17976
  %17978 = sext i32 %17977 to i64
  %17979 = getelementptr inbounds double, ptr %17973, i64 %17978
  %17980 = load double, ptr %17979, align 8, !tbaa !11
  %17981 = call double @llvm.fmuladd.f64(double 0x3FA462D8D66D7F7F, double %17980, double %17972)
  %17982 = load ptr, ptr %7, align 8, !tbaa !9
  %17983 = load i32, ptr %12, align 4, !tbaa !5
  %17984 = load i32, ptr %8, align 4, !tbaa !5
  %17985 = mul nsw i32 64, %17984
  %17986 = add nsw i32 %17983, %17985
  %17987 = sext i32 %17986 to i64
  %17988 = getelementptr inbounds double, ptr %17982, i64 %17987
  %17989 = load double, ptr %17988, align 8, !tbaa !11
  %17990 = call double @llvm.fmuladd.f64(double 0x3CB9DA84FC1C5FD3, double %17989, double %17981)
  %17991 = load ptr, ptr %7, align 8, !tbaa !9
  %17992 = load i32, ptr %12, align 4, !tbaa !5
  %17993 = load i32, ptr %8, align 4, !tbaa !5
  %17994 = mul nsw i32 66, %17993
  %17995 = add nsw i32 %17992, %17994
  %17996 = sext i32 %17995 to i64
  %17997 = getelementptr inbounds double, ptr %17991, i64 %17996
  %17998 = load double, ptr %17997, align 8, !tbaa !11
  %17999 = call double @llvm.fmuladd.f64(double 0xBC70F876CCDF6CD9, double %17998, double %17990)
  %18000 = load ptr, ptr %7, align 8, !tbaa !9
  %18001 = load i32, ptr %12, align 4, !tbaa !5
  %18002 = load i32, ptr %8, align 4, !tbaa !5
  %18003 = mul nsw i32 67, %18002
  %18004 = add nsw i32 %18001, %18003
  %18005 = sext i32 %18004 to i64
  %18006 = getelementptr inbounds double, ptr %18000, i64 %18005
  %18007 = load double, ptr %18006, align 8, !tbaa !11
  %18008 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %18007, double %17999)
  store double %18008, ptr %11, align 8, !tbaa !11
  %18009 = load double, ptr %11, align 8, !tbaa !11
  %18010 = load ptr, ptr %9, align 8, !tbaa !9
  %18011 = load i32, ptr %12, align 4, !tbaa !5
  %18012 = load i32, ptr %10, align 4, !tbaa !5
  %18013 = mul nsw i32 62, %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 = fadd double %18017, %18009
  store double %18018, ptr %18016, align 8, !tbaa !11
  %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 21, %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 = load ptr, ptr %7, align 8, !tbaa !9
  %18028 = load i32, ptr %12, align 4, !tbaa !5
  %18029 = load i32, ptr %8, align 4, !tbaa !5
  %18030 = mul nsw i32 22, %18029
  %18031 = add nsw i32 %18028, %18030
  %18032 = sext i32 %18031 to i64
  %18033 = getelementptr inbounds double, ptr %18027, i64 %18032
  %18034 = load double, ptr %18033, align 8, !tbaa !11
  %18035 = fmul double 0xBC92000000000000, %18034
  %18036 = call double @llvm.fmuladd.f64(double 0x3CA2FFFFFFFFFFFE, double %18026, double %18035)
  %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 23, %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 0x3C7FFFFFFFFFFFFF, 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 24, %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 0xBCA2000000000000, 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 25, %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 0x3CA8000000000001, 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 26, %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 0xBC90000000000000, 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 27, %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 0xBCA9FFFFFFFFFFFE, 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 28, %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 0xC01569E165D79415, 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 29, %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 0xBFDD2EB9CCB3BDB8, 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 30, %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 0x3FCEFDC8894D07B6, 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 31, %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 0xBFACD49071EC5FCE, 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 32, %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 0x3CB8000000000001, 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 33, %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 0xBC78000000000002, 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 34, %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 0x3C92000000000000, 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 35, %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 0xBC88000000000000, 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 52, %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 0xBC8152F9467969C8, 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 53, %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 0xBC76A09E667F3BCD, double %18170, double %18162)
  %18172 = load ptr, ptr %7, align 8, !tbaa !9
  %18173 = load i32, ptr %12, align 4, !tbaa !5
  %18174 = load i32, ptr %8, align 4, !tbaa !5
  %18175 = mul nsw i32 54, %18174
  %18176 = add nsw i32 %18173, %18175
  %18177 = sext i32 %18176 to i64
  %18178 = getelementptr inbounds double, ptr %18172, i64 %18177
  %18179 = load double, ptr %18178, align 8, !tbaa !11
  %18180 = call double @llvm.fmuladd.f64(double 0xBC926280B3476096, double %18179, double %18171)
  %18181 = load ptr, ptr %7, align 8, !tbaa !9
  %18182 = load i32, ptr %12, align 4, !tbaa !5
  %18183 = load i32, ptr %8, align 4, !tbaa !5
  %18184 = mul nsw i32 55, %18183
  %18185 = add nsw i32 %18182, %18184
  %18186 = sext i32 %18185 to i64
  %18187 = getelementptr inbounds double, ptr %18181, i64 %18186
  %18188 = load double, ptr %18187, align 8, !tbaa !11
  %18189 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %18188, double %18180)
  %18190 = load ptr, ptr %7, align 8, !tbaa !9
  %18191 = load i32, ptr %12, align 4, !tbaa !5
  %18192 = load i32, ptr %8, align 4, !tbaa !5
  %18193 = mul nsw i32 56, %18192
  %18194 = add nsw i32 %18191, %18193
  %18195 = sext i32 %18194 to i64
  %18196 = getelementptr inbounds double, ptr %18190, i64 %18195
  %18197 = load double, ptr %18196, align 8, !tbaa !11
  %18198 = call double @llvm.fmuladd.f64(double 0x3C9CFDCAF353049B, double %18197, double %18189)
  %18199 = load ptr, ptr %7, align 8, !tbaa !9
  %18200 = load i32, ptr %12, align 4, !tbaa !5
  %18201 = load i32, ptr %8, align 4, !tbaa !5
  %18202 = mul nsw i32 57, %18201
  %18203 = add nsw i32 %18200, %18202
  %18204 = sext i32 %18203 to i64
  %18205 = getelementptr inbounds double, ptr %18199, i64 %18204
  %18206 = load double, ptr %18205, align 8, !tbaa !11
  %18207 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %18206, double %18198)
  %18208 = load ptr, ptr %7, align 8, !tbaa !9
  %18209 = load i32, ptr %12, align 4, !tbaa !5
  %18210 = load i32, ptr %8, align 4, !tbaa !5
  %18211 = mul nsw i32 58, %18210
  %18212 = add nsw i32 %18209, %18211
  %18213 = sext i32 %18212 to i64
  %18214 = getelementptr inbounds double, ptr %18208, i64 %18213
  %18215 = load double, ptr %18214, align 8, !tbaa !11
  %18216 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %18215, double %18207)
  %18217 = load ptr, ptr %7, align 8, !tbaa !9
  %18218 = load i32, ptr %12, align 4, !tbaa !5
  %18219 = load i32, ptr %8, align 4, !tbaa !5
  %18220 = mul nsw i32 59, %18219
  %18221 = add nsw i32 %18218, %18220
  %18222 = sext i32 %18221 to i64
  %18223 = getelementptr inbounds double, ptr %18217, i64 %18222
  %18224 = load double, ptr %18223, align 8, !tbaa !11
  %18225 = call double @llvm.fmuladd.f64(double 0x3CA3CC8A99AF5452, double %18224, double %18216)
  %18226 = load ptr, ptr %7, align 8, !tbaa !9
  %18227 = load i32, ptr %12, align 4, !tbaa !5
  %18228 = load i32, ptr %8, align 4, !tbaa !5
  %18229 = mul nsw i32 60, %18228
  %18230 = add nsw i32 %18227, %18229
  %18231 = sext i32 %18230 to i64
  %18232 = getelementptr inbounds double, ptr %18226, i64 %18231
  %18233 = load double, ptr %18232, align 8, !tbaa !11
  %18234 = call double @llvm.fmuladd.f64(double 0xBFD039FE04F71643, double %18233, double %18225)
  %18235 = load ptr, ptr %7, align 8, !tbaa !9
  %18236 = load i32, ptr %12, align 4, !tbaa !5
  %18237 = load i32, ptr %8, align 4, !tbaa !5
  %18238 = mul nsw i32 61, %18237
  %18239 = add nsw i32 %18236, %18238
  %18240 = sext i32 %18239 to i64
  %18241 = getelementptr inbounds double, ptr %18235, i64 %18240
  %18242 = load double, ptr %18241, align 8, !tbaa !11
  %18243 = call double @llvm.fmuladd.f64(double 0xBFE30958FBF81244, double %18242, double %18234)
  %18244 = load ptr, ptr %7, align 8, !tbaa !9
  %18245 = load i32, ptr %12, align 4, !tbaa !5
  %18246 = load i32, ptr %8, align 4, !tbaa !5
  %18247 = mul nsw i32 62, %18246
  %18248 = add nsw i32 %18245, %18247
  %18249 = sext i32 %18248 to i64
  %18250 = getelementptr inbounds double, ptr %18244, i64 %18249
  %18251 = load double, ptr %18250, align 8, !tbaa !11
  %18252 = call double @llvm.fmuladd.f64(double 0xBFE30958FBF81231, double %18251, double %18243)
  %18253 = load ptr, ptr %7, align 8, !tbaa !9
  %18254 = load i32, ptr %12, align 4, !tbaa !5
  %18255 = load i32, ptr %8, align 4, !tbaa !5
  %18256 = mul nsw i32 63, %18255
  %18257 = add nsw i32 %18254, %18256
  %18258 = sext i32 %18257 to i64
  %18259 = getelementptr inbounds double, ptr %18253, i64 %18258
  %18260 = load double, ptr %18259, align 8, !tbaa !11
  %18261 = call double @llvm.fmuladd.f64(double 0xBFD039FE04F71638, double %18260, double %18252)
  %18262 = load ptr, ptr %7, align 8, !tbaa !9
  %18263 = load i32, ptr %12, align 4, !tbaa !5
  %18264 = load i32, ptr %8, align 4, !tbaa !5
  %18265 = mul nsw i32 64, %18264
  %18266 = add nsw i32 %18263, %18265
  %18267 = sext i32 %18266 to i64
  %18268 = getelementptr inbounds double, ptr %18262, i64 %18267
  %18269 = load double, ptr %18268, align 8, !tbaa !11
  %18270 = call double @llvm.fmuladd.f64(double 0x3C93F9CBD67C52CA, double %18269, double %18261)
  %18271 = load ptr, ptr %7, align 8, !tbaa !9
  %18272 = load i32, ptr %12, align 4, !tbaa !5
  %18273 = load i32, ptr %8, align 4, !tbaa !5
  %18274 = mul nsw i32 65, %18273
  %18275 = add nsw i32 %18272, %18274
  %18276 = sext i32 %18275 to i64
  %18277 = getelementptr inbounds double, ptr %18271, i64 %18276
  %18278 = load double, ptr %18277, align 8, !tbaa !11
  %18279 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %18278, double %18270)
  %18280 = load ptr, ptr %7, align 8, !tbaa !9
  %18281 = load i32, ptr %12, align 4, !tbaa !5
  %18282 = load i32, ptr %8, align 4, !tbaa !5
  %18283 = mul nsw i32 66, %18282
  %18284 = add nsw i32 %18281, %18283
  %18285 = sext i32 %18284 to i64
  %18286 = getelementptr inbounds double, ptr %18280, i64 %18285
  %18287 = load double, ptr %18286, align 8, !tbaa !11
  %18288 = call double @llvm.fmuladd.f64(double 0xBC8F1CD9CCEEF238, double %18287, double %18279)
  %18289 = load ptr, ptr %7, align 8, !tbaa !9
  %18290 = load i32, ptr %12, align 4, !tbaa !5
  %18291 = load i32, ptr %8, align 4, !tbaa !5
  %18292 = mul nsw i32 67, %18291
  %18293 = add nsw i32 %18290, %18292
  %18294 = sext i32 %18293 to i64
  %18295 = getelementptr inbounds double, ptr %18289, i64 %18294
  %18296 = load double, ptr %18295, align 8, !tbaa !11
  %18297 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %18296, double %18288)
  store double %18297, ptr %11, align 8, !tbaa !11
  %18298 = load double, ptr %11, align 8, !tbaa !11
  %18299 = load ptr, ptr %9, align 8, !tbaa !9
  %18300 = load i32, ptr %12, align 4, !tbaa !5
  %18301 = load i32, ptr %10, align 4, !tbaa !5
  %18302 = mul nsw i32 63, %18301
  %18303 = add nsw i32 %18300, %18302
  %18304 = sext i32 %18303 to i64
  %18305 = getelementptr inbounds double, ptr %18299, i64 %18304
  %18306 = load double, ptr %18305, align 8, !tbaa !11
  %18307 = fadd double %18306, %18298
  store double %18307, ptr %18305, align 8, !tbaa !11
  %18308 = load ptr, ptr %7, align 8, !tbaa !9
  %18309 = load i32, ptr %12, align 4, !tbaa !5
  %18310 = load i32, ptr %8, align 4, !tbaa !5
  %18311 = mul nsw i32 20, %18310
  %18312 = add nsw i32 %18309, %18311
  %18313 = sext i32 %18312 to i64
  %18314 = getelementptr inbounds double, ptr %18308, i64 %18313
  %18315 = load double, ptr %18314, align 8, !tbaa !11
  %18316 = load ptr, ptr %7, align 8, !tbaa !9
  %18317 = load i32, ptr %12, align 4, !tbaa !5
  %18318 = load i32, ptr %8, align 4, !tbaa !5
  %18319 = mul nsw i32 21, %18318
  %18320 = add nsw i32 %18317, %18319
  %18321 = sext i32 %18320 to i64
  %18322 = getelementptr inbounds double, ptr %18316, i64 %18321
  %18323 = load double, ptr %18322, align 8, !tbaa !11
  %18324 = fmul double 0xBC70000000000001, %18323
  %18325 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %18315, double %18324)
  %18326 = load ptr, ptr %7, align 8, !tbaa !9
  %18327 = load i32, ptr %12, align 4, !tbaa !5
  %18328 = load i32, ptr %8, align 4, !tbaa !5
  %18329 = mul nsw i32 24, %18328
  %18330 = add nsw i32 %18327, %18329
  %18331 = sext i32 %18330 to i64
  %18332 = getelementptr inbounds double, ptr %18326, i64 %18331
  %18333 = load double, ptr %18332, align 8, !tbaa !11
  %18334 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %18333, double %18325)
  %18335 = load ptr, ptr %7, align 8, !tbaa !9
  %18336 = load i32, ptr %12, align 4, !tbaa !5
  %18337 = load i32, ptr %8, align 4, !tbaa !5
  %18338 = mul nsw i32 26, %18337
  %18339 = add nsw i32 %18336, %18338
  %18340 = sext i32 %18339 to i64
  %18341 = getelementptr inbounds double, ptr %18335, i64 %18340
  %18342 = load double, ptr %18341, align 8, !tbaa !11
  %18343 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %18342, double %18334)
  %18344 = load ptr, ptr %7, align 8, !tbaa !9
  %18345 = load i32, ptr %12, align 4, !tbaa !5
  %18346 = load i32, ptr %8, align 4, !tbaa !5
  %18347 = mul nsw i32 27, %18346
  %18348 = add nsw i32 %18345, %18347
  %18349 = sext i32 %18348 to i64
  %18350 = getelementptr inbounds double, ptr %18344, i64 %18349
  %18351 = load double, ptr %18350, align 8, !tbaa !11
  %18352 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %18351, double %18343)
  %18353 = load ptr, ptr %7, align 8, !tbaa !9
  %18354 = load i32, ptr %12, align 4, !tbaa !5
  %18355 = load i32, ptr %8, align 4, !tbaa !5
  %18356 = mul nsw i32 28, %18355
  %18357 = add nsw i32 %18354, %18356
  %18358 = sext i32 %18357 to i64
  %18359 = getelementptr inbounds double, ptr %18353, i64 %18358
  %18360 = load double, ptr %18359, align 8, !tbaa !11
  %18361 = call double @llvm.fmuladd.f64(double 0xBFAC37F3CCE9FD18, double %18360, double %18352)
  %18362 = load ptr, ptr %7, align 8, !tbaa !9
  %18363 = load i32, ptr %12, align 4, !tbaa !5
  %18364 = load i32, ptr %8, align 4, !tbaa !5
  %18365 = mul nsw i32 29, %18364
  %18366 = add nsw i32 %18363, %18365
  %18367 = sext i32 %18366 to i64
  %18368 = getelementptr inbounds double, ptr %18362, i64 %18367
  %18369 = load double, ptr %18368, align 8, !tbaa !11
  %18370 = call double @llvm.fmuladd.f64(double 0xBFB4C23AD63BEF9A, double %18369, double %18361)
  %18371 = load ptr, ptr %7, align 8, !tbaa !9
  %18372 = load i32, ptr %12, align 4, !tbaa !5
  %18373 = load i32, ptr %8, align 4, !tbaa !5
  %18374 = mul nsw i32 30, %18373
  %18375 = add nsw i32 %18372, %18374
  %18376 = sext i32 %18375 to i64
  %18377 = getelementptr inbounds double, ptr %18371, i64 %18376
  %18378 = load double, ptr %18377, align 8, !tbaa !11
  %18379 = call double @llvm.fmuladd.f64(double 0x3FEFAD7976B5DE29, double %18378, double %18370)
  %18380 = load ptr, ptr %7, align 8, !tbaa !9
  %18381 = load i32, ptr %12, align 4, !tbaa !5
  %18382 = load i32, ptr %8, align 4, !tbaa !5
  %18383 = mul nsw i32 31, %18382
  %18384 = add nsw i32 %18381, %18383
  %18385 = sext i32 %18384 to i64
  %18386 = getelementptr inbounds double, ptr %18380, i64 %18385
  %18387 = load double, ptr %18386, align 8, !tbaa !11
  %18388 = call double @llvm.fmuladd.f64(double 0x3FF043C98657E812, double %18387, double %18379)
  %18389 = load ptr, ptr %7, align 8, !tbaa !9
  %18390 = load i32, ptr %12, align 4, !tbaa !5
  %18391 = load i32, ptr %8, align 4, !tbaa !5
  %18392 = mul nsw i32 32, %18391
  %18393 = add nsw i32 %18390, %18392
  %18394 = sext i32 %18393 to i64
  %18395 = getelementptr inbounds double, ptr %18389, i64 %18394
  %18396 = load double, ptr %18395, align 8, !tbaa !11
  %18397 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %18396, double %18388)
  %18398 = load ptr, ptr %7, align 8, !tbaa !9
  %18399 = load i32, ptr %12, align 4, !tbaa !5
  %18400 = load i32, ptr %8, align 4, !tbaa !5
  %18401 = mul nsw i32 33, %18400
  %18402 = add nsw i32 %18399, %18401
  %18403 = sext i32 %18402 to i64
  %18404 = getelementptr inbounds double, ptr %18398, i64 %18403
  %18405 = load double, ptr %18404, align 8, !tbaa !11
  %18406 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %18405, double %18397)
  %18407 = load ptr, ptr %7, align 8, !tbaa !9
  %18408 = load i32, ptr %12, align 4, !tbaa !5
  %18409 = load i32, ptr %8, align 4, !tbaa !5
  %18410 = mul nsw i32 34, %18409
  %18411 = add nsw i32 %18408, %18410
  %18412 = sext i32 %18411 to i64
  %18413 = getelementptr inbounds double, ptr %18407, i64 %18412
  %18414 = load double, ptr %18413, align 8, !tbaa !11
  %18415 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %18414, double %18406)
  %18416 = load ptr, ptr %7, align 8, !tbaa !9
  %18417 = load i32, ptr %12, align 4, !tbaa !5
  %18418 = load i32, ptr %8, align 4, !tbaa !5
  %18419 = mul nsw i32 52, %18418
  %18420 = add nsw i32 %18417, %18419
  %18421 = sext i32 %18420 to i64
  %18422 = getelementptr inbounds double, ptr %18416, i64 %18421
  %18423 = load double, ptr %18422, align 8, !tbaa !11
  %18424 = call double @llvm.fmuladd.f64(double 0xBC8A29B726831D24, double %18423, double %18415)
  %18425 = load ptr, ptr %7, align 8, !tbaa !9
  %18426 = load i32, ptr %12, align 4, !tbaa !5
  %18427 = load i32, ptr %8, align 4, !tbaa !5
  %18428 = mul nsw i32 53, %18427
  %18429 = add nsw i32 %18426, %18428
  %18430 = sext i32 %18429 to i64
  %18431 = getelementptr inbounds double, ptr %18425, i64 %18430
  %18432 = load double, ptr %18431, align 8, !tbaa !11
  %18433 = call double @llvm.fmuladd.f64(double 0x3C73CC8A99AF5453, double %18432, double %18424)
  %18434 = load ptr, ptr %7, align 8, !tbaa !9
  %18435 = load i32, ptr %12, align 4, !tbaa !5
  %18436 = load i32, ptr %8, align 4, !tbaa !5
  %18437 = mul nsw i32 54, %18436
  %18438 = add nsw i32 %18435, %18437
  %18439 = sext i32 %18438 to i64
  %18440 = getelementptr inbounds double, ptr %18434, i64 %18439
  %18441 = load double, ptr %18440, align 8, !tbaa !11
  %18442 = call double @llvm.fmuladd.f64(double 0xBC56A09E667F3BCC, double %18441, double %18433)
  %18443 = load ptr, ptr %7, align 8, !tbaa !9
  %18444 = load i32, ptr %12, align 4, !tbaa !5
  %18445 = load i32, ptr %8, align 4, !tbaa !5
  %18446 = mul nsw i32 55, %18445
  %18447 = add nsw i32 %18444, %18446
  %18448 = sext i32 %18447 to i64
  %18449 = getelementptr inbounds double, ptr %18443, i64 %18448
  %18450 = load double, ptr %18449, align 8, !tbaa !11
  %18451 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %18450, double %18442)
  %18452 = load ptr, ptr %7, align 8, !tbaa !9
  %18453 = load i32, ptr %12, align 4, !tbaa !5
  %18454 = load i32, ptr %8, align 4, !tbaa !5
  %18455 = mul nsw i32 56, %18454
  %18456 = add nsw i32 %18453, %18455
  %18457 = sext i32 %18456 to i64
  %18458 = getelementptr inbounds double, ptr %18452, i64 %18457
  %18459 = load double, ptr %18458, align 8, !tbaa !11
  %18460 = call double @llvm.fmuladd.f64(double 0xBC93CC8A99AF5452, double %18459, double %18451)
  %18461 = load ptr, ptr %7, align 8, !tbaa !9
  %18462 = load i32, ptr %12, align 4, !tbaa !5
  %18463 = load i32, ptr %8, align 4, !tbaa !5
  %18464 = mul nsw i32 57, %18463
  %18465 = add nsw i32 %18462, %18464
  %18466 = sext i32 %18465 to i64
  %18467 = getelementptr inbounds double, ptr %18461, i64 %18466
  %18468 = load double, ptr %18467, align 8, !tbaa !11
  %18469 = call double @llvm.fmuladd.f64(double 0xBCA6A09E667F3BCC, double %18468, double %18460)
  %18470 = load ptr, ptr %7, align 8, !tbaa !9
  %18471 = load i32, ptr %12, align 4, !tbaa !5
  %18472 = load i32, ptr %8, align 4, !tbaa !5
  %18473 = mul nsw i32 58, %18472
  %18474 = add nsw i32 %18471, %18473
  %18475 = sext i32 %18474 to i64
  %18476 = getelementptr inbounds double, ptr %18470, i64 %18475
  %18477 = load double, ptr %18476, align 8, !tbaa !11
  %18478 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %18477, double %18469)
  %18479 = load ptr, ptr %7, align 8, !tbaa !9
  %18480 = load i32, ptr %12, align 4, !tbaa !5
  %18481 = load i32, ptr %8, align 4, !tbaa !5
  %18482 = mul nsw i32 59, %18481
  %18483 = add nsw i32 %18480, %18482
  %18484 = sext i32 %18483 to i64
  %18485 = getelementptr inbounds double, ptr %18479, i64 %18484
  %18486 = load double, ptr %18485, align 8, !tbaa !11
  %18487 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %18486, double %18478)
  %18488 = load ptr, ptr %7, align 8, !tbaa !9
  %18489 = load i32, ptr %12, align 4, !tbaa !5
  %18490 = load i32, ptr %8, align 4, !tbaa !5
  %18491 = mul nsw i32 60, %18490
  %18492 = add nsw i32 %18489, %18491
  %18493 = sext i32 %18492 to i64
  %18494 = getelementptr inbounds double, ptr %18488, i64 %18493
  %18495 = load double, ptr %18494, align 8, !tbaa !11
  %18496 = call double @llvm.fmuladd.f64(double 0x3FD08C54FF101A10, double %18495, double %18487)
  %18497 = load ptr, ptr %7, align 8, !tbaa !9
  %18498 = load i32, ptr %12, align 4, !tbaa !5
  %18499 = load i32, ptr %8, align 4, !tbaa !5
  %18500 = mul nsw i32 61, %18499
  %18501 = add nsw i32 %18498, %18500
  %18502 = sext i32 %18501 to i64
  %18503 = getelementptr inbounds double, ptr %18497, i64 %18502
  %18504 = load double, ptr %18503, align 8, !tbaa !11
  %18505 = call double @llvm.fmuladd.f64(double 0x4007001BD846D0B2, double %18504, double %18496)
  %18506 = load ptr, ptr %7, align 8, !tbaa !9
  %18507 = load i32, ptr %12, align 4, !tbaa !5
  %18508 = load i32, ptr %8, align 4, !tbaa !5
  %18509 = mul nsw i32 62, %18508
  %18510 = add nsw i32 %18507, %18509
  %18511 = sext i32 %18510 to i64
  %18512 = getelementptr inbounds double, ptr %18506, i64 %18511
  %18513 = load double, ptr %18512, align 8, !tbaa !11
  %18514 = call double @llvm.fmuladd.f64(double 0x3FD0C7817D9C3137, double %18513, double %18505)
  %18515 = load ptr, ptr %7, align 8, !tbaa !9
  %18516 = load i32, ptr %12, align 4, !tbaa !5
  %18517 = load i32, ptr %8, align 4, !tbaa !5
  %18518 = mul nsw i32 63, %18517
  %18519 = add nsw i32 %18516, %18518
  %18520 = sext i32 %18519 to i64
  %18521 = getelementptr inbounds double, ptr %18515, i64 %18520
  %18522 = load double, ptr %18521, align 8, !tbaa !11
  %18523 = call double @llvm.fmuladd.f64(double 0xBFB8DF388696F54E, double %18522, double %18514)
  %18524 = load ptr, ptr %7, align 8, !tbaa !9
  %18525 = load i32, ptr %12, align 4, !tbaa !5
  %18526 = load i32, ptr %8, align 4, !tbaa !5
  %18527 = mul nsw i32 64, %18526
  %18528 = add nsw i32 %18525, %18527
  %18529 = sext i32 %18528 to i64
  %18530 = getelementptr inbounds double, ptr %18524, i64 %18529
  %18531 = load double, ptr %18530, align 8, !tbaa !11
  %18532 = call double @llvm.fmuladd.f64(double 0x3C7DB2CFE686FE7B, double %18531, double %18523)
  %18533 = load ptr, ptr %7, align 8, !tbaa !9
  %18534 = load i32, ptr %12, align 4, !tbaa !5
  %18535 = load i32, ptr %8, align 4, !tbaa !5
  %18536 = mul nsw i32 65, %18535
  %18537 = add nsw i32 %18534, %18536
  %18538 = sext i32 %18537 to i64
  %18539 = getelementptr inbounds double, ptr %18533, i64 %18538
  %18540 = load double, ptr %18539, align 8, !tbaa !11
  %18541 = call double @llvm.fmuladd.f64(double 0x3C91AD7BC01366B7, double %18540, double %18532)
  %18542 = load ptr, ptr %7, align 8, !tbaa !9
  %18543 = load i32, ptr %12, align 4, !tbaa !5
  %18544 = load i32, ptr %8, align 4, !tbaa !5
  %18545 = mul nsw i32 66, %18544
  %18546 = add nsw i32 %18543, %18545
  %18547 = sext i32 %18546 to i64
  %18548 = getelementptr inbounds double, ptr %18542, i64 %18547
  %18549 = load double, ptr %18548, align 8, !tbaa !11
  %18550 = call double @llvm.fmuladd.f64(double 0x3C56A09E667F3BCC, double %18549, double %18541)
  %18551 = load ptr, ptr %7, align 8, !tbaa !9
  %18552 = load i32, ptr %12, align 4, !tbaa !5
  %18553 = load i32, ptr %8, align 4, !tbaa !5
  %18554 = mul nsw i32 67, %18553
  %18555 = add nsw i32 %18552, %18554
  %18556 = sext i32 %18555 to i64
  %18557 = getelementptr inbounds double, ptr %18551, i64 %18556
  %18558 = load double, ptr %18557, align 8, !tbaa !11
  %18559 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %18558, double %18550)
  store double %18559, ptr %11, align 8, !tbaa !11
  %18560 = load double, ptr %11, align 8, !tbaa !11
  %18561 = load ptr, ptr %9, align 8, !tbaa !9
  %18562 = load i32, ptr %12, align 4, !tbaa !5
  %18563 = load i32, ptr %10, align 4, !tbaa !5
  %18564 = mul nsw i32 64, %18563
  %18565 = add nsw i32 %18562, %18564
  %18566 = sext i32 %18565 to i64
  %18567 = getelementptr inbounds double, ptr %18561, i64 %18566
  %18568 = load double, ptr %18567, align 8, !tbaa !11
  %18569 = fadd double %18568, %18560
  store double %18569, ptr %18567, align 8, !tbaa !11
  %18570 = load ptr, ptr %7, align 8, !tbaa !9
  %18571 = load i32, ptr %12, align 4, !tbaa !5
  %18572 = load i32, ptr %8, align 4, !tbaa !5
  %18573 = mul nsw i32 20, %18572
  %18574 = add nsw i32 %18571, %18573
  %18575 = sext i32 %18574 to i64
  %18576 = getelementptr inbounds double, ptr %18570, i64 %18575
  %18577 = load double, ptr %18576, align 8, !tbaa !11
  %18578 = load ptr, ptr %7, align 8, !tbaa !9
  %18579 = load i32, ptr %12, align 4, !tbaa !5
  %18580 = load i32, ptr %8, align 4, !tbaa !5
  %18581 = mul nsw i32 21, %18580
  %18582 = add nsw i32 %18579, %18581
  %18583 = sext i32 %18582 to i64
  %18584 = getelementptr inbounds double, ptr %18578, i64 %18583
  %18585 = load double, ptr %18584, align 8, !tbaa !11
  %18586 = fmul double 0xBC90000000000000, %18585
  %18587 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %18577, double %18586)
  %18588 = load ptr, ptr %7, align 8, !tbaa !9
  %18589 = load i32, ptr %12, align 4, !tbaa !5
  %18590 = load i32, ptr %8, align 4, !tbaa !5
  %18591 = mul nsw i32 23, %18590
  %18592 = add nsw i32 %18589, %18591
  %18593 = sext i32 %18592 to i64
  %18594 = getelementptr inbounds double, ptr %18588, i64 %18593
  %18595 = load double, ptr %18594, align 8, !tbaa !11
  %18596 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %18595, double %18587)
  %18597 = load ptr, ptr %7, align 8, !tbaa !9
  %18598 = load i32, ptr %12, align 4, !tbaa !5
  %18599 = load i32, ptr %8, align 4, !tbaa !5
  %18600 = mul nsw i32 24, %18599
  %18601 = add nsw i32 %18598, %18600
  %18602 = sext i32 %18601 to i64
  %18603 = getelementptr inbounds double, ptr %18597, i64 %18602
  %18604 = load double, ptr %18603, align 8, !tbaa !11
  %18605 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %18604, double %18596)
  %18606 = load ptr, ptr %7, align 8, !tbaa !9
  %18607 = load i32, ptr %12, align 4, !tbaa !5
  %18608 = load i32, ptr %8, align 4, !tbaa !5
  %18609 = mul nsw i32 25, %18608
  %18610 = add nsw i32 %18607, %18609
  %18611 = sext i32 %18610 to i64
  %18612 = getelementptr inbounds double, ptr %18606, i64 %18611
  %18613 = load double, ptr %18612, align 8, !tbaa !11
  %18614 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %18613, double %18605)
  %18615 = load ptr, ptr %7, align 8, !tbaa !9
  %18616 = load i32, ptr %12, align 4, !tbaa !5
  %18617 = load i32, ptr %8, align 4, !tbaa !5
  %18618 = mul nsw i32 26, %18617
  %18619 = add nsw i32 %18616, %18618
  %18620 = sext i32 %18619 to i64
  %18621 = getelementptr inbounds double, ptr %18615, i64 %18620
  %18622 = load double, ptr %18621, align 8, !tbaa !11
  %18623 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %18622, double %18614)
  %18624 = load ptr, ptr %7, align 8, !tbaa !9
  %18625 = load i32, ptr %12, align 4, !tbaa !5
  %18626 = load i32, ptr %8, align 4, !tbaa !5
  %18627 = mul nsw i32 27, %18626
  %18628 = add nsw i32 %18625, %18627
  %18629 = sext i32 %18628 to i64
  %18630 = getelementptr inbounds double, ptr %18624, i64 %18629
  %18631 = load double, ptr %18630, align 8, !tbaa !11
  %18632 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %18631, double %18623)
  %18633 = load ptr, ptr %7, align 8, !tbaa !9
  %18634 = load i32, ptr %12, align 4, !tbaa !5
  %18635 = load i32, ptr %8, align 4, !tbaa !5
  %18636 = mul nsw i32 28, %18635
  %18637 = add nsw i32 %18634, %18636
  %18638 = sext i32 %18637 to i64
  %18639 = getelementptr inbounds double, ptr %18633, i64 %18638
  %18640 = load double, ptr %18639, align 8, !tbaa !11
  %18641 = call double @llvm.fmuladd.f64(double 0x3FF043C98657E812, double %18640, double %18632)
  %18642 = load ptr, ptr %7, align 8, !tbaa !9
  %18643 = load i32, ptr %12, align 4, !tbaa !5
  %18644 = load i32, ptr %8, align 4, !tbaa !5
  %18645 = mul nsw i32 29, %18644
  %18646 = add nsw i32 %18643, %18645
  %18647 = sext i32 %18646 to i64
  %18648 = getelementptr inbounds double, ptr %18642, i64 %18647
  %18649 = load double, ptr %18648, align 8, !tbaa !11
  %18650 = call double @llvm.fmuladd.f64(double 0x3FEFAD7976B5DE25, double %18649, double %18641)
  %18651 = load ptr, ptr %7, align 8, !tbaa !9
  %18652 = load i32, ptr %12, align 4, !tbaa !5
  %18653 = load i32, ptr %8, align 4, !tbaa !5
  %18654 = mul nsw i32 30, %18653
  %18655 = add nsw i32 %18652, %18654
  %18656 = sext i32 %18655 to i64
  %18657 = getelementptr inbounds double, ptr %18651, i64 %18656
  %18658 = load double, ptr %18657, align 8, !tbaa !11
  %18659 = call double @llvm.fmuladd.f64(double 0xBFB4C23AD63BEF6E, double %18658, double %18650)
  %18660 = load ptr, ptr %7, align 8, !tbaa !9
  %18661 = load i32, ptr %12, align 4, !tbaa !5
  %18662 = load i32, ptr %8, align 4, !tbaa !5
  %18663 = mul nsw i32 31, %18662
  %18664 = add nsw i32 %18661, %18663
  %18665 = sext i32 %18664 to i64
  %18666 = getelementptr inbounds double, ptr %18660, i64 %18665
  %18667 = load double, ptr %18666, align 8, !tbaa !11
  %18668 = call double @llvm.fmuladd.f64(double 0xBFAC37F3CCE9FD3C, double %18667, double %18659)
  %18669 = load ptr, ptr %7, align 8, !tbaa !9
  %18670 = load i32, ptr %12, align 4, !tbaa !5
  %18671 = load i32, ptr %8, align 4, !tbaa !5
  %18672 = mul nsw i32 32, %18671
  %18673 = add nsw i32 %18670, %18672
  %18674 = sext i32 %18673 to i64
  %18675 = getelementptr inbounds double, ptr %18669, i64 %18674
  %18676 = load double, ptr %18675, align 8, !tbaa !11
  %18677 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %18676, double %18668)
  %18678 = load ptr, ptr %7, align 8, !tbaa !9
  %18679 = load i32, ptr %12, align 4, !tbaa !5
  %18680 = load i32, ptr %8, align 4, !tbaa !5
  %18681 = mul nsw i32 34, %18680
  %18682 = add nsw i32 %18679, %18681
  %18683 = sext i32 %18682 to i64
  %18684 = getelementptr inbounds double, ptr %18678, i64 %18683
  %18685 = load double, ptr %18684, align 8, !tbaa !11
  %18686 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %18685, double %18677)
  %18687 = load ptr, ptr %7, align 8, !tbaa !9
  %18688 = load i32, ptr %12, align 4, !tbaa !5
  %18689 = load i32, ptr %8, align 4, !tbaa !5
  %18690 = mul nsw i32 35, %18689
  %18691 = add nsw i32 %18688, %18690
  %18692 = sext i32 %18691 to i64
  %18693 = getelementptr inbounds double, ptr %18687, i64 %18692
  %18694 = load double, ptr %18693, align 8, !tbaa !11
  %18695 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %18694, double %18686)
  %18696 = load ptr, ptr %7, align 8, !tbaa !9
  %18697 = load i32, ptr %12, align 4, !tbaa !5
  %18698 = load i32, ptr %8, align 4, !tbaa !5
  %18699 = mul nsw i32 52, %18698
  %18700 = add nsw i32 %18697, %18699
  %18701 = sext i32 %18700 to i64
  %18702 = getelementptr inbounds double, ptr %18696, i64 %18701
  %18703 = load double, ptr %18702, align 8, !tbaa !11
  %18704 = call double @llvm.fmuladd.f64(double 0xBC84818F8CE34E32, double %18703, double %18695)
  %18705 = load ptr, ptr %7, align 8, !tbaa !9
  %18706 = load i32, ptr %12, align 4, !tbaa !5
  %18707 = load i32, ptr %8, align 4, !tbaa !5
  %18708 = mul nsw i32 53, %18707
  %18709 = add nsw i32 %18706, %18708
  %18710 = sext i32 %18709 to i64
  %18711 = getelementptr inbounds double, ptr %18705, i64 %18710
  %18712 = load double, ptr %18711, align 8, !tbaa !11
  %18713 = call double @llvm.fmuladd.f64(double 0x3C73CC8A99AF5453, double %18712, double %18704)
  %18714 = load ptr, ptr %7, align 8, !tbaa !9
  %18715 = load i32, ptr %12, align 4, !tbaa !5
  %18716 = load i32, ptr %8, align 4, !tbaa !5
  %18717 = mul nsw i32 54, %18716
  %18718 = add nsw i32 %18715, %18717
  %18719 = sext i32 %18718 to i64
  %18720 = getelementptr inbounds double, ptr %18714, i64 %18719
  %18721 = load double, ptr %18720, align 8, !tbaa !11
  %18722 = call double @llvm.fmuladd.f64(double 0x3C83CC8A99AF5451, double %18721, double %18713)
  %18723 = load ptr, ptr %7, align 8, !tbaa !9
  %18724 = load i32, ptr %12, align 4, !tbaa !5
  %18725 = load i32, ptr %8, align 4, !tbaa !5
  %18726 = mul nsw i32 55, %18725
  %18727 = add nsw i32 %18724, %18726
  %18728 = sext i32 %18727 to i64
  %18729 = getelementptr inbounds double, ptr %18723, i64 %18728
  %18730 = load double, ptr %18729, align 8, !tbaa !11
  %18731 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %18730, double %18722)
  %18732 = load ptr, ptr %7, align 8, !tbaa !9
  %18733 = load i32, ptr %12, align 4, !tbaa !5
  %18734 = load i32, ptr %8, align 4, !tbaa !5
  %18735 = mul nsw i32 56, %18734
  %18736 = add nsw i32 %18733, %18735
  %18737 = sext i32 %18736 to i64
  %18738 = getelementptr inbounds double, ptr %18732, i64 %18737
  %18739 = load double, ptr %18738, align 8, !tbaa !11
  %18740 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %18739, double %18731)
  %18741 = load ptr, ptr %7, align 8, !tbaa !9
  %18742 = load i32, ptr %12, align 4, !tbaa !5
  %18743 = load i32, ptr %8, align 4, !tbaa !5
  %18744 = mul nsw i32 57, %18743
  %18745 = add nsw i32 %18742, %18744
  %18746 = sext i32 %18745 to i64
  %18747 = getelementptr inbounds double, ptr %18741, i64 %18746
  %18748 = load double, ptr %18747, align 8, !tbaa !11
  %18749 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %18748, double %18740)
  %18750 = load ptr, ptr %7, align 8, !tbaa !9
  %18751 = load i32, ptr %12, align 4, !tbaa !5
  %18752 = load i32, ptr %8, align 4, !tbaa !5
  %18753 = mul nsw i32 58, %18752
  %18754 = add nsw i32 %18751, %18753
  %18755 = sext i32 %18754 to i64
  %18756 = getelementptr inbounds double, ptr %18750, i64 %18755
  %18757 = load double, ptr %18756, align 8, !tbaa !11
  %18758 = call double @llvm.fmuladd.f64(double 0xBCA974B2334F2346, double %18757, double %18749)
  %18759 = load ptr, ptr %7, align 8, !tbaa !9
  %18760 = load i32, ptr %12, align 4, !tbaa !5
  %18761 = load i32, ptr %8, align 4, !tbaa !5
  %18762 = mul nsw i32 59, %18761
  %18763 = add nsw i32 %18760, %18762
  %18764 = sext i32 %18763 to i64
  %18765 = getelementptr inbounds double, ptr %18759, i64 %18764
  %18766 = load double, ptr %18765, align 8, !tbaa !11
  %18767 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %18766, double %18758)
  %18768 = load ptr, ptr %7, align 8, !tbaa !9
  %18769 = load i32, ptr %12, align 4, !tbaa !5
  %18770 = load i32, ptr %8, align 4, !tbaa !5
  %18771 = mul nsw i32 60, %18770
  %18772 = add nsw i32 %18769, %18771
  %18773 = sext i32 %18772 to i64
  %18774 = getelementptr inbounds double, ptr %18768, i64 %18773
  %18775 = load double, ptr %18774, align 8, !tbaa !11
  %18776 = call double @llvm.fmuladd.f64(double 0xBF9102DA00B18A68, double %18775, double %18767)
  %18777 = load ptr, ptr %7, align 8, !tbaa !9
  %18778 = load i32, ptr %12, align 4, !tbaa !5
  %18779 = load i32, ptr %8, align 4, !tbaa !5
  %18780 = mul nsw i32 61, %18779
  %18781 = add nsw i32 %18778, %18780
  %18782 = sext i32 %18781 to i64
  %18783 = getelementptr inbounds double, ptr %18777, i64 %18782
  %18784 = load double, ptr %18783, align 8, !tbaa !11
  %18785 = call double @llvm.fmuladd.f64(double 0x3FCD5953692F6EA6, double %18784, double %18776)
  %18786 = load ptr, ptr %7, align 8, !tbaa !9
  %18787 = load i32, ptr %12, align 4, !tbaa !5
  %18788 = load i32, ptr %8, align 4, !tbaa !5
  %18789 = mul nsw i32 62, %18788
  %18790 = add nsw i32 %18787, %18789
  %18791 = sext i32 %18790 to i64
  %18792 = getelementptr inbounds double, ptr %18786, i64 %18791
  %18793 = load double, ptr %18792, align 8, !tbaa !11
  %18794 = call double @llvm.fmuladd.f64(double 0x3FE3C4545BCF030C, double %18793, double %18785)
  %18795 = load ptr, ptr %7, align 8, !tbaa !9
  %18796 = load i32, ptr %12, align 4, !tbaa !5
  %18797 = load i32, ptr %8, align 4, !tbaa !5
  %18798 = mul nsw i32 63, %18797
  %18799 = add nsw i32 %18796, %18798
  %18800 = sext i32 %18799 to i64
  %18801 = getelementptr inbounds double, ptr %18795, i64 %18800
  %18802 = load double, ptr %18801, align 8, !tbaa !11
  %18803 = call double @llvm.fmuladd.f64(double 0x3FD6A4D32EB1F710, double %18802, double %18794)
  %18804 = load ptr, ptr %7, align 8, !tbaa !9
  %18805 = load i32, ptr %12, align 4, !tbaa !5
  %18806 = load i32, ptr %8, align 4, !tbaa !5
  %18807 = mul nsw i32 64, %18806
  %18808 = add nsw i32 %18805, %18807
  %18809 = sext i32 %18808 to i64
  %18810 = getelementptr inbounds double, ptr %18804, i64 %18809
  %18811 = load double, ptr %18810, align 8, !tbaa !11
  %18812 = call double @llvm.fmuladd.f64(double 0x3C726280B3476096, double %18811, double %18803)
  %18813 = load ptr, ptr %7, align 8, !tbaa !9
  %18814 = load i32, ptr %12, align 4, !tbaa !5
  %18815 = load i32, ptr %8, align 4, !tbaa !5
  %18816 = mul nsw i32 65, %18815
  %18817 = add nsw i32 %18814, %18816
  %18818 = sext i32 %18817 to i64
  %18819 = getelementptr inbounds double, ptr %18813, i64 %18818
  %18820 = load double, ptr %18819, align 8, !tbaa !11
  %18821 = call double @llvm.fmuladd.f64(double 0x3C46A09E667F3BCB, double %18820, double %18812)
  %18822 = load ptr, ptr %7, align 8, !tbaa !9
  %18823 = load i32, ptr %12, align 4, !tbaa !5
  %18824 = load i32, ptr %8, align 4, !tbaa !5
  %18825 = mul nsw i32 66, %18824
  %18826 = add nsw i32 %18823, %18825
  %18827 = sext i32 %18826 to i64
  %18828 = getelementptr inbounds double, ptr %18822, i64 %18827
  %18829 = load double, ptr %18828, align 8, !tbaa !11
  %18830 = call double @llvm.fmuladd.f64(double 0xBC9536948017480F, double %18829, double %18821)
  %18831 = load ptr, ptr %7, align 8, !tbaa !9
  %18832 = load i32, ptr %12, align 4, !tbaa !5
  %18833 = load i32, ptr %8, align 4, !tbaa !5
  %18834 = mul nsw i32 67, %18833
  %18835 = add nsw i32 %18832, %18834
  %18836 = sext i32 %18835 to i64
  %18837 = getelementptr inbounds double, ptr %18831, i64 %18836
  %18838 = load double, ptr %18837, align 8, !tbaa !11
  %18839 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %18838, double %18830)
  store double %18839, ptr %11, align 8, !tbaa !11
  %18840 = load double, ptr %11, align 8, !tbaa !11
  %18841 = load ptr, ptr %9, align 8, !tbaa !9
  %18842 = load i32, ptr %12, align 4, !tbaa !5
  %18843 = load i32, ptr %10, align 4, !tbaa !5
  %18844 = mul nsw i32 65, %18843
  %18845 = add nsw i32 %18842, %18844
  %18846 = sext i32 %18845 to i64
  %18847 = getelementptr inbounds double, ptr %18841, i64 %18846
  %18848 = load double, ptr %18847, align 8, !tbaa !11
  %18849 = fadd double %18848, %18840
  store double %18849, ptr %18847, align 8, !tbaa !11
  %18850 = load ptr, ptr %7, align 8, !tbaa !9
  %18851 = load i32, ptr %12, align 4, !tbaa !5
  %18852 = load i32, ptr %8, align 4, !tbaa !5
  %18853 = mul nsw i32 20, %18852
  %18854 = add nsw i32 %18851, %18853
  %18855 = sext i32 %18854 to i64
  %18856 = getelementptr inbounds double, ptr %18850, i64 %18855
  %18857 = load double, ptr %18856, align 8, !tbaa !11
  %18858 = load ptr, ptr %7, align 8, !tbaa !9
  %18859 = load i32, ptr %12, align 4, !tbaa !5
  %18860 = load i32, ptr %8, align 4, !tbaa !5
  %18861 = mul nsw i32 21, %18860
  %18862 = add nsw i32 %18859, %18861
  %18863 = sext i32 %18862 to i64
  %18864 = getelementptr inbounds double, ptr %18858, i64 %18863
  %18865 = load double, ptr %18864, align 8, !tbaa !11
  %18866 = fmul double 0x3C60000000000000, %18865
  %18867 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %18857, double %18866)
  %18868 = load ptr, ptr %7, align 8, !tbaa !9
  %18869 = load i32, ptr %12, align 4, !tbaa !5
  %18870 = load i32, ptr %8, align 4, !tbaa !5
  %18871 = mul nsw i32 22, %18870
  %18872 = add nsw i32 %18869, %18871
  %18873 = sext i32 %18872 to i64
  %18874 = getelementptr inbounds double, ptr %18868, i64 %18873
  %18875 = load double, ptr %18874, align 8, !tbaa !11
  %18876 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %18875, double %18867)
  %18877 = load ptr, ptr %7, align 8, !tbaa !9
  %18878 = load i32, ptr %12, align 4, !tbaa !5
  %18879 = load i32, ptr %8, align 4, !tbaa !5
  %18880 = mul nsw i32 23, %18879
  %18881 = add nsw i32 %18878, %18880
  %18882 = sext i32 %18881 to i64
  %18883 = getelementptr inbounds double, ptr %18877, i64 %18882
  %18884 = load double, ptr %18883, align 8, !tbaa !11
  %18885 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %18884, double %18876)
  %18886 = load ptr, ptr %7, align 8, !tbaa !9
  %18887 = load i32, ptr %12, align 4, !tbaa !5
  %18888 = load i32, ptr %8, align 4, !tbaa !5
  %18889 = mul nsw i32 24, %18888
  %18890 = add nsw i32 %18887, %18889
  %18891 = sext i32 %18890 to i64
  %18892 = getelementptr inbounds double, ptr %18886, i64 %18891
  %18893 = load double, ptr %18892, align 8, !tbaa !11
  %18894 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %18893, double %18885)
  %18895 = load ptr, ptr %7, align 8, !tbaa !9
  %18896 = load i32, ptr %12, align 4, !tbaa !5
  %18897 = load i32, ptr %8, align 4, !tbaa !5
  %18898 = mul nsw i32 25, %18897
  %18899 = add nsw i32 %18896, %18898
  %18900 = sext i32 %18899 to i64
  %18901 = getelementptr inbounds double, ptr %18895, i64 %18900
  %18902 = load double, ptr %18901, align 8, !tbaa !11
  %18903 = call double @llvm.fmuladd.f64(double 0xBCB3000000000000, double %18902, double %18894)
  %18904 = load ptr, ptr %7, align 8, !tbaa !9
  %18905 = load i32, ptr %12, align 4, !tbaa !5
  %18906 = load i32, ptr %8, align 4, !tbaa !5
  %18907 = mul nsw i32 26, %18906
  %18908 = add nsw i32 %18905, %18907
  %18909 = sext i32 %18908 to i64
  %18910 = getelementptr inbounds double, ptr %18904, i64 %18909
  %18911 = load double, ptr %18910, align 8, !tbaa !11
  %18912 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %18911, double %18903)
  %18913 = load ptr, ptr %7, align 8, !tbaa !9
  %18914 = load i32, ptr %12, align 4, !tbaa !5
  %18915 = load i32, ptr %8, align 4, !tbaa !5
  %18916 = mul nsw i32 28, %18915
  %18917 = add nsw i32 %18914, %18916
  %18918 = sext i32 %18917 to i64
  %18919 = getelementptr inbounds double, ptr %18913, i64 %18918
  %18920 = load double, ptr %18919, align 8, !tbaa !11
  %18921 = call double @llvm.fmuladd.f64(double 0xBFD7671404765120, double %18920, double %18912)
  %18922 = load ptr, ptr %7, align 8, !tbaa !9
  %18923 = load i32, ptr %12, align 4, !tbaa !5
  %18924 = load i32, ptr %8, align 4, !tbaa !5
  %18925 = mul nsw i32 29, %18924
  %18926 = add nsw i32 %18923, %18925
  %18927 = sext i32 %18926 to i64
  %18928 = getelementptr inbounds double, ptr %18922, i64 %18927
  %18929 = load double, ptr %18928, align 8, !tbaa !11
  %18930 = call double @llvm.fmuladd.f64(double 0xC01043858A1F5996, double %18929, double %18921)
  %18931 = load ptr, ptr %7, align 8, !tbaa !9
  %18932 = load i32, ptr %12, align 4, !tbaa !5
  %18933 = load i32, ptr %8, align 4, !tbaa !5
  %18934 = mul nsw i32 30, %18933
  %18935 = add nsw i32 %18932, %18934
  %18936 = sext i32 %18935 to i64
  %18937 = getelementptr inbounds double, ptr %18931, i64 %18936
  %18938 = load double, ptr %18937, align 8, !tbaa !11
  %18939 = call double @llvm.fmuladd.f64(double 0xBFD7BAC3393ADDD8, double %18938, double %18930)
  %18940 = load ptr, ptr %7, align 8, !tbaa !9
  %18941 = load i32, ptr %12, align 4, !tbaa !5
  %18942 = load i32, ptr %8, align 4, !tbaa !5
  %18943 = mul nsw i32 31, %18942
  %18944 = add nsw i32 %18941, %18943
  %18945 = sext i32 %18944 to i64
  %18946 = getelementptr inbounds double, ptr %18940, i64 %18945
  %18947 = load double, ptr %18946, align 8, !tbaa !11
  %18948 = call double @llvm.fmuladd.f64(double 0x3FC1964E14FA3C65, double %18947, double %18939)
  %18949 = load ptr, ptr %7, align 8, !tbaa !9
  %18950 = load i32, ptr %12, align 4, !tbaa !5
  %18951 = load i32, ptr %8, align 4, !tbaa !5
  %18952 = mul nsw i32 32, %18951
  %18953 = add nsw i32 %18950, %18952
  %18954 = sext i32 %18953 to i64
  %18955 = getelementptr inbounds double, ptr %18949, i64 %18954
  %18956 = load double, ptr %18955, align 8, !tbaa !11
  %18957 = call double @llvm.fmuladd.f64(double 0xBC8C000000000000, double %18956, double %18948)
  %18958 = load ptr, ptr %7, align 8, !tbaa !9
  %18959 = load i32, ptr %12, align 4, !tbaa !5
  %18960 = load i32, ptr %8, align 4, !tbaa !5
  %18961 = mul nsw i32 33, %18960
  %18962 = add nsw i32 %18959, %18961
  %18963 = sext i32 %18962 to i64
  %18964 = getelementptr inbounds double, ptr %18958, i64 %18963
  %18965 = load double, ptr %18964, align 8, !tbaa !11
  %18966 = call double @llvm.fmuladd.f64(double 0xBCA1000000000001, double %18965, double %18957)
  %18967 = load ptr, ptr %7, align 8, !tbaa !9
  %18968 = load i32, ptr %12, align 4, !tbaa !5
  %18969 = load i32, ptr %8, align 4, !tbaa !5
  %18970 = mul nsw i32 34, %18969
  %18971 = add nsw i32 %18968, %18970
  %18972 = sext i32 %18971 to i64
  %18973 = getelementptr inbounds double, ptr %18967, i64 %18972
  %18974 = load double, ptr %18973, align 8, !tbaa !11
  %18975 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %18974, double %18966)
  %18976 = load ptr, ptr %7, align 8, !tbaa !9
  %18977 = load i32, ptr %12, align 4, !tbaa !5
  %18978 = load i32, ptr %8, align 4, !tbaa !5
  %18979 = mul nsw i32 35, %18978
  %18980 = add nsw i32 %18977, %18979
  %18981 = sext i32 %18980 to i64
  %18982 = getelementptr inbounds double, ptr %18976, i64 %18981
  %18983 = load double, ptr %18982, align 8, !tbaa !11
  %18984 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %18983, double %18975)
  %18985 = load ptr, ptr %7, align 8, !tbaa !9
  %18986 = load i32, ptr %12, align 4, !tbaa !5
  %18987 = load i32, ptr %8, align 4, !tbaa !5
  %18988 = mul nsw i32 52, %18987
  %18989 = add nsw i32 %18986, %18988
  %18990 = sext i32 %18989 to i64
  %18991 = getelementptr inbounds double, ptr %18985, i64 %18990
  %18992 = load double, ptr %18991, align 8, !tbaa !11
  %18993 = call double @llvm.fmuladd.f64(double 0x3C759116F9B144FE, double %18992, double %18984)
  %18994 = load ptr, ptr %7, align 8, !tbaa !9
  %18995 = load i32, ptr %12, align 4, !tbaa !5
  %18996 = load i32, ptr %8, align 4, !tbaa !5
  %18997 = mul nsw i32 53, %18996
  %18998 = add nsw i32 %18995, %18997
  %18999 = sext i32 %18998 to i64
  %19000 = getelementptr inbounds double, ptr %18994, i64 %18999
  %19001 = load double, ptr %19000, align 8, !tbaa !11
  %19002 = call double @llvm.fmuladd.f64(double 0x3C70F876CCDF6CD9, double %19001, double %18993)
  %19003 = load ptr, ptr %7, align 8, !tbaa !9
  %19004 = load i32, ptr %12, align 4, !tbaa !5
  %19005 = load i32, ptr %8, align 4, !tbaa !5
  %19006 = mul nsw i32 54, %19005
  %19007 = add nsw i32 %19004, %19006
  %19008 = sext i32 %19007 to i64
  %19009 = getelementptr inbounds double, ptr %19003, i64 %19008
  %19010 = load double, ptr %19009, align 8, !tbaa !11
  %19011 = call double @llvm.fmuladd.f64(double 0xBC73CC8A99AF5453, double %19010, double %19002)
  %19012 = load ptr, ptr %7, align 8, !tbaa !9
  %19013 = load i32, ptr %12, align 4, !tbaa !5
  %19014 = load i32, ptr %8, align 4, !tbaa !5
  %19015 = mul nsw i32 55, %19014
  %19016 = add nsw i32 %19013, %19015
  %19017 = sext i32 %19016 to i64
  %19018 = getelementptr inbounds double, ptr %19012, i64 %19017
  %19019 = load double, ptr %19018, align 8, !tbaa !11
  %19020 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %19019, double %19011)
  %19021 = load ptr, ptr %7, align 8, !tbaa !9
  %19022 = load i32, ptr %12, align 4, !tbaa !5
  %19023 = load i32, ptr %8, align 4, !tbaa !5
  %19024 = mul nsw i32 56, %19023
  %19025 = add nsw i32 %19022, %19024
  %19026 = sext i32 %19025 to i64
  %19027 = getelementptr inbounds double, ptr %19021, i64 %19026
  %19028 = load double, ptr %19027, align 8, !tbaa !11
  %19029 = call double @llvm.fmuladd.f64(double 0xBCA16999E4DFE905, double %19028, double %19020)
  %19030 = load ptr, ptr %7, align 8, !tbaa !9
  %19031 = load i32, ptr %12, align 4, !tbaa !5
  %19032 = load i32, ptr %8, align 4, !tbaa !5
  %19033 = mul nsw i32 57, %19032
  %19034 = add nsw i32 %19031, %19033
  %19035 = sext i32 %19034 to i64
  %19036 = getelementptr inbounds double, ptr %19030, i64 %19035
  %19037 = load double, ptr %19036, align 8, !tbaa !11
  %19038 = call double @llvm.fmuladd.f64(double 0xBCA91A2FB9B52657, double %19037, double %19029)
  %19039 = load ptr, ptr %7, align 8, !tbaa !9
  %19040 = load i32, ptr %12, align 4, !tbaa !5
  %19041 = load i32, ptr %8, align 4, !tbaa !5
  %19042 = mul nsw i32 58, %19041
  %19043 = add nsw i32 %19040, %19042
  %19044 = sext i32 %19043 to i64
  %19045 = getelementptr inbounds double, ptr %19039, i64 %19044
  %19046 = load double, ptr %19045, align 8, !tbaa !11
  %19047 = call double @llvm.fmuladd.f64(double 0xBC9974B2334F2346, double %19046, double %19038)
  %19048 = load ptr, ptr %7, align 8, !tbaa !9
  %19049 = load i32, ptr %12, align 4, !tbaa !5
  %19050 = load i32, ptr %8, align 4, !tbaa !5
  %19051 = mul nsw i32 59, %19050
  %19052 = add nsw i32 %19049, %19051
  %19053 = sext i32 %19052 to i64
  %19054 = getelementptr inbounds double, ptr %19048, i64 %19053
  %19055 = load double, ptr %19054, align 8, !tbaa !11
  %19056 = call double @llvm.fmuladd.f64(double 0x3C80F876CCDF6CD9, double %19055, double %19047)
  %19057 = load ptr, ptr %7, align 8, !tbaa !9
  %19058 = load i32, ptr %12, align 4, !tbaa !5
  %19059 = load i32, ptr %8, align 4, !tbaa !5
  %19060 = mul nsw i32 60, %19059
  %19061 = add nsw i32 %19058, %19060
  %19062 = sext i32 %19061 to i64
  %19063 = getelementptr inbounds double, ptr %19057, i64 %19062
  %19064 = load double, ptr %19063, align 8, !tbaa !11
  %19065 = call double @llvm.fmuladd.f64(double 0x3FD6A4D32EB1F71D, double %19064, double %19056)
  %19066 = load ptr, ptr %7, align 8, !tbaa !9
  %19067 = load i32, ptr %12, align 4, !tbaa !5
  %19068 = load i32, ptr %8, align 4, !tbaa !5
  %19069 = mul nsw i32 61, %19068
  %19070 = add nsw i32 %19067, %19069
  %19071 = sext i32 %19070 to i64
  %19072 = getelementptr inbounds double, ptr %19066, i64 %19071
  %19073 = load double, ptr %19072, align 8, !tbaa !11
  %19074 = call double @llvm.fmuladd.f64(double 0x3FE3C4545BCF030E, double %19073, double %19065)
  %19075 = load ptr, ptr %7, align 8, !tbaa !9
  %19076 = load i32, ptr %12, align 4, !tbaa !5
  %19077 = load i32, ptr %8, align 4, !tbaa !5
  %19078 = mul nsw i32 62, %19077
  %19079 = add nsw i32 %19076, %19078
  %19080 = sext i32 %19079 to i64
  %19081 = getelementptr inbounds double, ptr %19075, i64 %19080
  %19082 = load double, ptr %19081, align 8, !tbaa !11
  %19083 = call double @llvm.fmuladd.f64(double 0x3FCD5953692F6EA6, double %19082, double %19074)
  %19084 = load ptr, ptr %7, align 8, !tbaa !9
  %19085 = load i32, ptr %12, align 4, !tbaa !5
  %19086 = load i32, ptr %8, align 4, !tbaa !5
  %19087 = mul nsw i32 63, %19086
  %19088 = add nsw i32 %19085, %19087
  %19089 = sext i32 %19088 to i64
  %19090 = getelementptr inbounds double, ptr %19084, i64 %19089
  %19091 = load double, ptr %19090, align 8, !tbaa !11
  %19092 = call double @llvm.fmuladd.f64(double 0xBF9102DA00B18A34, double %19091, double %19083)
  %19093 = load ptr, ptr %7, align 8, !tbaa !9
  %19094 = load i32, ptr %12, align 4, !tbaa !5
  %19095 = load i32, ptr %8, align 4, !tbaa !5
  %19096 = mul nsw i32 64, %19095
  %19097 = add nsw i32 %19094, %19096
  %19098 = sext i32 %19097 to i64
  %19099 = getelementptr inbounds double, ptr %19093, i64 %19098
  %19100 = load double, ptr %19099, align 8, !tbaa !11
  %19101 = call double @llvm.fmuladd.f64(double 0xBCA0D685DF45AE00, double %19100, double %19092)
  %19102 = load ptr, ptr %7, align 8, !tbaa !9
  %19103 = load i32, ptr %12, align 4, !tbaa !5
  %19104 = load i32, ptr %8, align 4, !tbaa !5
  %19105 = mul nsw i32 65, %19104
  %19106 = add nsw i32 %19103, %19105
  %19107 = sext i32 %19106 to i64
  %19108 = getelementptr inbounds double, ptr %19102, i64 %19107
  %19109 = load double, ptr %19108, align 8, !tbaa !11
  %19110 = call double @llvm.fmuladd.f64(double 0x3C56A09E667F3BCC, double %19109, double %19101)
  %19111 = load ptr, ptr %7, align 8, !tbaa !9
  %19112 = load i32, ptr %12, align 4, !tbaa !5
  %19113 = load i32, ptr %8, align 4, !tbaa !5
  %19114 = mul nsw i32 66, %19113
  %19115 = add nsw i32 %19112, %19114
  %19116 = sext i32 %19115 to i64
  %19117 = getelementptr inbounds double, ptr %19111, i64 %19116
  %19118 = load double, ptr %19117, align 8, !tbaa !11
  %19119 = call double @llvm.fmuladd.f64(double 0xBC46A09E667F3BCB, double %19118, double %19110)
  %19120 = load ptr, ptr %7, align 8, !tbaa !9
  %19121 = load i32, ptr %12, align 4, !tbaa !5
  %19122 = load i32, ptr %8, align 4, !tbaa !5
  %19123 = mul nsw i32 67, %19122
  %19124 = add nsw i32 %19121, %19123
  %19125 = sext i32 %19124 to i64
  %19126 = getelementptr inbounds double, ptr %19120, i64 %19125
  %19127 = load double, ptr %19126, align 8, !tbaa !11
  %19128 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %19127, double %19119)
  store double %19128, ptr %11, align 8, !tbaa !11
  %19129 = load double, ptr %11, align 8, !tbaa !11
  %19130 = load ptr, ptr %9, align 8, !tbaa !9
  %19131 = load i32, ptr %12, align 4, !tbaa !5
  %19132 = load i32, ptr %10, align 4, !tbaa !5
  %19133 = mul nsw i32 66, %19132
  %19134 = add nsw i32 %19131, %19133
  %19135 = sext i32 %19134 to i64
  %19136 = getelementptr inbounds double, ptr %19130, i64 %19135
  %19137 = load double, ptr %19136, align 8, !tbaa !11
  %19138 = fadd double %19137, %19129
  store double %19138, ptr %19136, align 8, !tbaa !11
  %19139 = load ptr, ptr %7, align 8, !tbaa !9
  %19140 = load i32, ptr %12, align 4, !tbaa !5
  %19141 = load i32, ptr %8, align 4, !tbaa !5
  %19142 = mul nsw i32 20, %19141
  %19143 = add nsw i32 %19140, %19142
  %19144 = sext i32 %19143 to i64
  %19145 = getelementptr inbounds double, ptr %19139, i64 %19144
  %19146 = load double, ptr %19145, align 8, !tbaa !11
  %19147 = load ptr, ptr %7, align 8, !tbaa !9
  %19148 = load i32, ptr %12, align 4, !tbaa !5
  %19149 = load i32, ptr %8, align 4, !tbaa !5
  %19150 = mul nsw i32 21, %19149
  %19151 = add nsw i32 %19148, %19150
  %19152 = sext i32 %19151 to i64
  %19153 = getelementptr inbounds double, ptr %19147, i64 %19152
  %19154 = load double, ptr %19153, align 8, !tbaa !11
  %19155 = fmul double 0xBC89FFFFFFFFFFFF, %19154
  %19156 = call double @llvm.fmuladd.f64(double 0xBC93000000000000, double %19146, double %19155)
  %19157 = load ptr, ptr %7, align 8, !tbaa !9
  %19158 = load i32, ptr %12, align 4, !tbaa !5
  %19159 = load i32, ptr %8, align 4, !tbaa !5
  %19160 = mul nsw i32 22, %19159
  %19161 = add nsw i32 %19158, %19160
  %19162 = sext i32 %19161 to i64
  %19163 = getelementptr inbounds double, ptr %19157, i64 %19162
  %19164 = load double, ptr %19163, align 8, !tbaa !11
  %19165 = call double @llvm.fmuladd.f64(double 0xBC91000000000000, double %19164, double %19156)
  %19166 = load ptr, ptr %7, align 8, !tbaa !9
  %19167 = load i32, ptr %12, align 4, !tbaa !5
  %19168 = load i32, ptr %8, align 4, !tbaa !5
  %19169 = mul nsw i32 23, %19168
  %19170 = add nsw i32 %19167, %19169
  %19171 = sext i32 %19170 to i64
  %19172 = getelementptr inbounds double, ptr %19166, i64 %19171
  %19173 = load double, ptr %19172, align 8, !tbaa !11
  %19174 = call double @llvm.fmuladd.f64(double 0xBC67FFFFFFFFFFFE, double %19173, double %19165)
  %19175 = load ptr, ptr %7, align 8, !tbaa !9
  %19176 = load i32, ptr %12, align 4, !tbaa !5
  %19177 = load i32, ptr %8, align 4, !tbaa !5
  %19178 = mul nsw i32 24, %19177
  %19179 = add nsw i32 %19176, %19178
  %19180 = sext i32 %19179 to i64
  %19181 = getelementptr inbounds double, ptr %19175, i64 %19180
  %19182 = load double, ptr %19181, align 8, !tbaa !11
  %19183 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %19182, double %19174)
  %19184 = load ptr, ptr %7, align 8, !tbaa !9
  %19185 = load i32, ptr %12, align 4, !tbaa !5
  %19186 = load i32, ptr %8, align 4, !tbaa !5
  %19187 = mul nsw i32 25, %19186
  %19188 = add nsw i32 %19185, %19187
  %19189 = sext i32 %19188 to i64
  %19190 = getelementptr inbounds double, ptr %19184, i64 %19189
  %19191 = load double, ptr %19190, align 8, !tbaa !11
  %19192 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %19191, double %19183)
  %19193 = load ptr, ptr %7, align 8, !tbaa !9
  %19194 = load i32, ptr %12, align 4, !tbaa !5
  %19195 = load i32, ptr %8, align 4, !tbaa !5
  %19196 = mul nsw i32 26, %19195
  %19197 = add nsw i32 %19194, %19196
  %19198 = sext i32 %19197 to i64
  %19199 = getelementptr inbounds double, ptr %19193, i64 %19198
  %19200 = load double, ptr %19199, align 8, !tbaa !11
  %19201 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %19200, double %19192)
  %19202 = load ptr, ptr %7, align 8, !tbaa !9
  %19203 = load i32, ptr %12, align 4, !tbaa !5
  %19204 = load i32, ptr %8, align 4, !tbaa !5
  %19205 = mul nsw i32 27, %19204
  %19206 = add nsw i32 %19203, %19205
  %19207 = sext i32 %19206 to i64
  %19208 = getelementptr inbounds double, ptr %19202, i64 %19207
  %19209 = load double, ptr %19208, align 8, !tbaa !11
  %19210 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %19209, double %19201)
  %19211 = load ptr, ptr %7, align 8, !tbaa !9
  %19212 = load i32, ptr %12, align 4, !tbaa !5
  %19213 = load i32, ptr %8, align 4, !tbaa !5
  %19214 = mul nsw i32 28, %19213
  %19215 = add nsw i32 %19212, %19214
  %19216 = sext i32 %19215 to i64
  %19217 = getelementptr inbounds double, ptr %19211, i64 %19216
  %19218 = load double, ptr %19217, align 8, !tbaa !11
  %19219 = call double @llvm.fmuladd.f64(double 0x3FC1964E14FA3C53, double %19218, double %19210)
  %19220 = load ptr, ptr %7, align 8, !tbaa !9
  %19221 = load i32, ptr %12, align 4, !tbaa !5
  %19222 = load i32, ptr %8, align 4, !tbaa !5
  %19223 = mul nsw i32 29, %19222
  %19224 = add nsw i32 %19221, %19223
  %19225 = sext i32 %19224 to i64
  %19226 = getelementptr inbounds double, ptr %19220, i64 %19225
  %19227 = load double, ptr %19226, align 8, !tbaa !11
  %19228 = call double @llvm.fmuladd.f64(double 0xBFD7BAC3393ADDC4, double %19227, double %19219)
  %19229 = load ptr, ptr %7, align 8, !tbaa !9
  %19230 = load i32, ptr %12, align 4, !tbaa !5
  %19231 = load i32, ptr %8, align 4, !tbaa !5
  %19232 = mul nsw i32 30, %19231
  %19233 = add nsw i32 %19230, %19232
  %19234 = sext i32 %19233 to i64
  %19235 = getelementptr inbounds double, ptr %19229, i64 %19234
  %19236 = load double, ptr %19235, align 8, !tbaa !11
  %19237 = call double @llvm.fmuladd.f64(double 0xC01043858A1F5997, double %19236, double %19228)
  %19238 = load ptr, ptr %7, align 8, !tbaa !9
  %19239 = load i32, ptr %12, align 4, !tbaa !5
  %19240 = load i32, ptr %8, align 4, !tbaa !5
  %19241 = mul nsw i32 31, %19240
  %19242 = add nsw i32 %19239, %19241
  %19243 = sext i32 %19242 to i64
  %19244 = getelementptr inbounds double, ptr %19238, i64 %19243
  %19245 = load double, ptr %19244, align 8, !tbaa !11
  %19246 = call double @llvm.fmuladd.f64(double 0xBFD7671404765136, double %19245, double %19237)
  %19247 = load ptr, ptr %7, align 8, !tbaa !9
  %19248 = load i32, ptr %12, align 4, !tbaa !5
  %19249 = load i32, ptr %8, align 4, !tbaa !5
  %19250 = mul nsw i32 32, %19249
  %19251 = add nsw i32 %19248, %19250
  %19252 = sext i32 %19251 to i64
  %19253 = getelementptr inbounds double, ptr %19247, i64 %19252
  %19254 = load double, ptr %19253, align 8, !tbaa !11
  %19255 = call double @llvm.fmuladd.f64(double 0x3C7C000000000000, double %19254, double %19246)
  %19256 = load ptr, ptr %7, align 8, !tbaa !9
  %19257 = load i32, ptr %12, align 4, !tbaa !5
  %19258 = load i32, ptr %8, align 4, !tbaa !5
  %19259 = mul nsw i32 33, %19258
  %19260 = add nsw i32 %19257, %19259
  %19261 = sext i32 %19260 to i64
  %19262 = getelementptr inbounds double, ptr %19256, i64 %19261
  %19263 = load double, ptr %19262, align 8, !tbaa !11
  %19264 = call double @llvm.fmuladd.f64(double 0x3C89FFFFFFFFFFFF, double %19263, double %19255)
  %19265 = load ptr, ptr %7, align 8, !tbaa !9
  %19266 = load i32, ptr %12, align 4, !tbaa !5
  %19267 = load i32, ptr %8, align 4, !tbaa !5
  %19268 = mul nsw i32 34, %19267
  %19269 = add nsw i32 %19266, %19268
  %19270 = sext i32 %19269 to i64
  %19271 = getelementptr inbounds double, ptr %19265, i64 %19270
  %19272 = load double, ptr %19271, align 8, !tbaa !11
  %19273 = call double @llvm.fmuladd.f64(double 0x3C91000000000000, double %19272, double %19264)
  %19274 = load ptr, ptr %7, align 8, !tbaa !9
  %19275 = load i32, ptr %12, align 4, !tbaa !5
  %19276 = load i32, ptr %8, align 4, !tbaa !5
  %19277 = mul nsw i32 35, %19276
  %19278 = add nsw i32 %19275, %19277
  %19279 = sext i32 %19278 to i64
  %19280 = getelementptr inbounds double, ptr %19274, i64 %19279
  %19281 = load double, ptr %19280, align 8, !tbaa !11
  %19282 = call double @llvm.fmuladd.f64(double 0xBC95000000000000, double %19281, double %19273)
  %19283 = load ptr, ptr %7, align 8, !tbaa !9
  %19284 = load i32, ptr %12, align 4, !tbaa !5
  %19285 = load i32, ptr %8, align 4, !tbaa !5
  %19286 = mul nsw i32 52, %19285
  %19287 = add nsw i32 %19284, %19286
  %19288 = sext i32 %19287 to i64
  %19289 = getelementptr inbounds double, ptr %19283, i64 %19288
  %19290 = load double, ptr %19289, align 8, !tbaa !11
  %19291 = call double @llvm.fmuladd.f64(double 0x3C6B93C10CEB10E3, double %19290, double %19282)
  %19292 = load ptr, ptr %7, align 8, !tbaa !9
  %19293 = load i32, ptr %12, align 4, !tbaa !5
  %19294 = load i32, ptr %8, align 4, !tbaa !5
  %19295 = mul nsw i32 53, %19294
  %19296 = add nsw i32 %19293, %19295
  %19297 = sext i32 %19296 to i64
  %19298 = getelementptr inbounds double, ptr %19292, i64 %19297
  %19299 = load double, ptr %19298, align 8, !tbaa !11
  %19300 = call double @llvm.fmuladd.f64(double 0x3C8C48C6001F0AC0, double %19299, double %19291)
  %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 54, %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 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %19308, double %19300)
  %19310 = load ptr, ptr %7, align 8, !tbaa !9
  %19311 = load i32, ptr %12, align 4, !tbaa !5
  %19312 = load i32, ptr %8, align 4, !tbaa !5
  %19313 = mul nsw i32 55, %19312
  %19314 = add nsw i32 %19311, %19313
  %19315 = sext i32 %19314 to i64
  %19316 = getelementptr inbounds double, ptr %19310, i64 %19315
  %19317 = load double, ptr %19316, align 8, !tbaa !11
  %19318 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %19317, double %19309)
  %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 56, %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 0xBC9125B809AC6B51, 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 57, %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 0x3C826280B3476096, 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 58, %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 0xBC90F876CCDF6CD9, 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 59, %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 0xBC80F876CCDF6CD9, 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 60, %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 0xBFE7007BFD8FD85D, 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 61, %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 0xBFE66643AEED3708, 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 62, %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 0x3FAD5B74B5F10E9B, 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 63, %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 0x3FA3F41B0E87BFB6, 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 64, %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 0x3C7F775C4688EF29, 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 65, %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 0xBC8C48C6001F0AC0, 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 66, %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 0xBC80F876CCDF6CD9, 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 67, %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 0x3C76A09E667F3BCD, double %19425, double %19417)
  store double %19426, ptr %11, align 8, !tbaa !11
  %19427 = load double, ptr %11, align 8, !tbaa !11
  %19428 = load ptr, ptr %9, align 8, !tbaa !9
  %19429 = load i32, ptr %12, align 4, !tbaa !5
  %19430 = load i32, ptr %10, align 4, !tbaa !5
  %19431 = mul nsw i32 67, %19430
  %19432 = add nsw i32 %19429, %19431
  %19433 = sext i32 %19432 to i64
  %19434 = getelementptr inbounds double, ptr %19428, i64 %19433
  %19435 = load double, ptr %19434, align 8, !tbaa !11
  %19436 = fadd double %19435, %19427
  store double %19436, ptr %19434, align 8, !tbaa !11
  %19437 = load ptr, ptr %7, align 8, !tbaa !9
  %19438 = load i32, ptr %12, align 4, !tbaa !5
  %19439 = load i32, ptr %8, align 4, !tbaa !5
  %19440 = mul nsw i32 20, %19439
  %19441 = add nsw i32 %19438, %19440
  %19442 = sext i32 %19441 to i64
  %19443 = getelementptr inbounds double, ptr %19437, i64 %19442
  %19444 = load double, ptr %19443, align 8, !tbaa !11
  %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 21, %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 = fmul double 0x3C98000000000000, %19452
  %19454 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %19444, double %19453)
  %19455 = load ptr, ptr %7, align 8, !tbaa !9
  %19456 = load i32, ptr %12, align 4, !tbaa !5
  %19457 = load i32, ptr %8, align 4, !tbaa !5
  %19458 = mul nsw i32 22, %19457
  %19459 = add nsw i32 %19456, %19458
  %19460 = sext i32 %19459 to i64
  %19461 = getelementptr inbounds double, ptr %19455, i64 %19460
  %19462 = load double, ptr %19461, align 8, !tbaa !11
  %19463 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %19462, double %19454)
  %19464 = load ptr, ptr %7, align 8, !tbaa !9
  %19465 = load i32, ptr %12, align 4, !tbaa !5
  %19466 = load i32, ptr %8, align 4, !tbaa !5
  %19467 = mul nsw i32 23, %19466
  %19468 = add nsw i32 %19465, %19467
  %19469 = sext i32 %19468 to i64
  %19470 = getelementptr inbounds double, ptr %19464, i64 %19469
  %19471 = load double, ptr %19470, align 8, !tbaa !11
  %19472 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %19471, double %19463)
  %19473 = load ptr, ptr %7, align 8, !tbaa !9
  %19474 = load i32, ptr %12, align 4, !tbaa !5
  %19475 = load i32, ptr %8, align 4, !tbaa !5
  %19476 = mul nsw i32 24, %19475
  %19477 = add nsw i32 %19474, %19476
  %19478 = sext i32 %19477 to i64
  %19479 = getelementptr inbounds double, ptr %19473, i64 %19478
  %19480 = load double, ptr %19479, align 8, !tbaa !11
  %19481 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %19480, double %19472)
  %19482 = load ptr, ptr %7, align 8, !tbaa !9
  %19483 = load i32, ptr %12, align 4, !tbaa !5
  %19484 = load i32, ptr %8, align 4, !tbaa !5
  %19485 = mul nsw i32 25, %19484
  %19486 = add nsw i32 %19483, %19485
  %19487 = sext i32 %19486 to i64
  %19488 = getelementptr inbounds double, ptr %19482, i64 %19487
  %19489 = load double, ptr %19488, align 8, !tbaa !11
  %19490 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %19489, double %19481)
  %19491 = load ptr, ptr %7, align 8, !tbaa !9
  %19492 = load i32, ptr %12, align 4, !tbaa !5
  %19493 = load i32, ptr %8, align 4, !tbaa !5
  %19494 = mul nsw i32 26, %19493
  %19495 = add nsw i32 %19492, %19494
  %19496 = sext i32 %19495 to i64
  %19497 = getelementptr inbounds double, ptr %19491, i64 %19496
  %19498 = load double, ptr %19497, align 8, !tbaa !11
  %19499 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %19498, double %19490)
  %19500 = load ptr, ptr %7, align 8, !tbaa !9
  %19501 = load i32, ptr %12, align 4, !tbaa !5
  %19502 = load i32, ptr %8, align 4, !tbaa !5
  %19503 = mul nsw i32 27, %19502
  %19504 = add nsw i32 %19501, %19503
  %19505 = sext i32 %19504 to i64
  %19506 = getelementptr inbounds double, ptr %19500, i64 %19505
  %19507 = load double, ptr %19506, align 8, !tbaa !11
  %19508 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %19507, double %19499)
  %19509 = load ptr, ptr %7, align 8, !tbaa !9
  %19510 = load i32, ptr %12, align 4, !tbaa !5
  %19511 = load i32, ptr %8, align 4, !tbaa !5
  %19512 = mul nsw i32 28, %19511
  %19513 = add nsw i32 %19510, %19512
  %19514 = sext i32 %19513 to i64
  %19515 = getelementptr inbounds double, ptr %19509, i64 %19514
  %19516 = load double, ptr %19515, align 8, !tbaa !11
  %19517 = call double @llvm.fmuladd.f64(double 0xBFE002F9665DF3D9, double %19516, double %19508)
  %19518 = load ptr, ptr %7, align 8, !tbaa !9
  %19519 = load i32, ptr %12, align 4, !tbaa !5
  %19520 = load i32, ptr %8, align 4, !tbaa !5
  %19521 = mul nsw i32 29, %19520
  %19522 = add nsw i32 %19519, %19521
  %19523 = sext i32 %19522 to i64
  %19524 = getelementptr inbounds double, ptr %19518, i64 %19523
  %19525 = load double, ptr %19524, align 8, !tbaa !11
  %19526 = call double @llvm.fmuladd.f64(double 0xBFEBF462FB348EF6, double %19525, double %19517)
  %19527 = load ptr, ptr %7, align 8, !tbaa !9
  %19528 = load i32, ptr %12, align 4, !tbaa !5
  %19529 = load i32, ptr %8, align 4, !tbaa !5
  %19530 = mul nsw i32 30, %19529
  %19531 = add nsw i32 %19528, %19530
  %19532 = sext i32 %19531 to i64
  %19533 = getelementptr inbounds double, ptr %19527, i64 %19532
  %19534 = load double, ptr %19533, align 8, !tbaa !11
  %19535 = call double @llvm.fmuladd.f64(double 0xBFD4C0B9406BCBCC, double %19534, double %19526)
  %19536 = load ptr, ptr %7, align 8, !tbaa !9
  %19537 = load i32, ptr %12, align 4, !tbaa !5
  %19538 = load i32, ptr %8, align 4, !tbaa !5
  %19539 = mul nsw i32 31, %19538
  %19540 = add nsw i32 %19537, %19539
  %19541 = sext i32 %19540 to i64
  %19542 = getelementptr inbounds double, ptr %19536, i64 %19541
  %19543 = load double, ptr %19542, align 8, !tbaa !11
  %19544 = call double @llvm.fmuladd.f64(double 0x3F980EB0AE1D4750, double %19543, double %19535)
  %19545 = load ptr, ptr %7, align 8, !tbaa !9
  %19546 = load i32, ptr %12, align 4, !tbaa !5
  %19547 = load i32, ptr %8, align 4, !tbaa !5
  %19548 = mul nsw i32 33, %19547
  %19549 = add nsw i32 %19546, %19548
  %19550 = sext i32 %19549 to i64
  %19551 = getelementptr inbounds double, ptr %19545, i64 %19550
  %19552 = load double, ptr %19551, align 8, !tbaa !11
  %19553 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %19552, double %19544)
  %19554 = load ptr, ptr %7, align 8, !tbaa !9
  %19555 = load i32, ptr %12, align 4, !tbaa !5
  %19556 = load i32, ptr %8, align 4, !tbaa !5
  %19557 = mul nsw i32 34, %19556
  %19558 = add nsw i32 %19555, %19557
  %19559 = sext i32 %19558 to i64
  %19560 = getelementptr inbounds double, ptr %19554, i64 %19559
  %19561 = load double, ptr %19560, align 8, !tbaa !11
  %19562 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %19561, double %19553)
  %19563 = load ptr, ptr %7, align 8, !tbaa !9
  %19564 = load i32, ptr %12, align 4, !tbaa !5
  %19565 = load i32, ptr %8, align 4, !tbaa !5
  %19566 = mul nsw i32 52, %19565
  %19567 = add nsw i32 %19564, %19566
  %19568 = sext i32 %19567 to i64
  %19569 = getelementptr inbounds double, ptr %19563, i64 %19568
  %19570 = load double, ptr %19569, align 8, !tbaa !11
  %19571 = call double @llvm.fmuladd.f64(double 0x3C7DB2CFE686FE7B, double %19570, double %19562)
  %19572 = load ptr, ptr %7, align 8, !tbaa !9
  %19573 = load i32, ptr %12, align 4, !tbaa !5
  %19574 = load i32, ptr %8, align 4, !tbaa !5
  %19575 = mul nsw i32 53, %19574
  %19576 = add nsw i32 %19573, %19575
  %19577 = sext i32 %19576 to i64
  %19578 = getelementptr inbounds double, ptr %19572, i64 %19577
  %19579 = load double, ptr %19578, align 8, !tbaa !11
  %19580 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %19579, double %19571)
  %19581 = load ptr, ptr %7, align 8, !tbaa !9
  %19582 = load i32, ptr %12, align 4, !tbaa !5
  %19583 = load i32, ptr %8, align 4, !tbaa !5
  %19584 = mul nsw i32 54, %19583
  %19585 = add nsw i32 %19582, %19584
  %19586 = sext i32 %19585 to i64
  %19587 = getelementptr inbounds double, ptr %19581, i64 %19586
  %19588 = load double, ptr %19587, align 8, !tbaa !11
  %19589 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %19588, double %19580)
  %19590 = load ptr, ptr %7, align 8, !tbaa !9
  %19591 = load i32, ptr %12, align 4, !tbaa !5
  %19592 = load i32, ptr %8, align 4, !tbaa !5
  %19593 = mul nsw i32 56, %19592
  %19594 = add nsw i32 %19591, %19593
  %19595 = sext i32 %19594 to i64
  %19596 = getelementptr inbounds double, ptr %19590, i64 %19595
  %19597 = load double, ptr %19596, align 8, !tbaa !11
  %19598 = call double @llvm.fmuladd.f64(double 0xBC70F876CCDF6CD9, double %19597, double %19589)
  %19599 = load ptr, ptr %7, align 8, !tbaa !9
  %19600 = load i32, ptr %12, align 4, !tbaa !5
  %19601 = load i32, ptr %8, align 4, !tbaa !5
  %19602 = mul nsw i32 57, %19601
  %19603 = add nsw i32 %19600, %19602
  %19604 = sext i32 %19603 to i64
  %19605 = getelementptr inbounds double, ptr %19599, i64 %19604
  %19606 = load double, ptr %19605, align 8, !tbaa !11
  %19607 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %19606, double %19598)
  %19608 = load ptr, ptr %7, align 8, !tbaa !9
  %19609 = load i32, ptr %12, align 4, !tbaa !5
  %19610 = load i32, ptr %8, align 4, !tbaa !5
  %19611 = mul nsw i32 58, %19610
  %19612 = add nsw i32 %19609, %19611
  %19613 = sext i32 %19612 to i64
  %19614 = getelementptr inbounds double, ptr %19608, i64 %19613
  %19615 = load double, ptr %19614, align 8, !tbaa !11
  %19616 = call double @llvm.fmuladd.f64(double 0x3CA3CC8A99AF5452, double %19615, double %19607)
  %19617 = load ptr, ptr %7, align 8, !tbaa !9
  %19618 = load i32, ptr %12, align 4, !tbaa !5
  %19619 = load i32, ptr %8, align 4, !tbaa !5
  %19620 = mul nsw i32 59, %19619
  %19621 = add nsw i32 %19618, %19620
  %19622 = sext i32 %19621 to i64
  %19623 = getelementptr inbounds double, ptr %19617, i64 %19622
  %19624 = load double, ptr %19623, align 8, !tbaa !11
  %19625 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %19624, double %19616)
  %19626 = load ptr, ptr %7, align 8, !tbaa !9
  %19627 = load i32, ptr %12, align 4, !tbaa !5
  %19628 = load i32, ptr %8, align 4, !tbaa !5
  %19629 = mul nsw i32 60, %19628
  %19630 = add nsw i32 %19627, %19629
  %19631 = sext i32 %19630 to i64
  %19632 = getelementptr inbounds double, ptr %19626, i64 %19631
  %19633 = load double, ptr %19632, align 8, !tbaa !11
  %19634 = call double @llvm.fmuladd.f64(double 0x3FA3F41B0E87BFE9, double %19633, double %19625)
  %19635 = load ptr, ptr %7, align 8, !tbaa !9
  %19636 = load i32, ptr %12, align 4, !tbaa !5
  %19637 = load i32, ptr %8, align 4, !tbaa !5
  %19638 = mul nsw i32 61, %19637
  %19639 = add nsw i32 %19636, %19638
  %19640 = sext i32 %19639 to i64
  %19641 = getelementptr inbounds double, ptr %19635, i64 %19640
  %19642 = load double, ptr %19641, align 8, !tbaa !11
  %19643 = call double @llvm.fmuladd.f64(double 0x3FAD5B74B5F10E92, double %19642, double %19634)
  %19644 = load ptr, ptr %7, align 8, !tbaa !9
  %19645 = load i32, ptr %12, align 4, !tbaa !5
  %19646 = load i32, ptr %8, align 4, !tbaa !5
  %19647 = mul nsw i32 62, %19646
  %19648 = add nsw i32 %19645, %19647
  %19649 = sext i32 %19648 to i64
  %19650 = getelementptr inbounds double, ptr %19644, i64 %19649
  %19651 = load double, ptr %19650, align 8, !tbaa !11
  %19652 = call double @llvm.fmuladd.f64(double 0xBFE66643AEED36FA, double %19651, double %19643)
  %19653 = load ptr, ptr %7, align 8, !tbaa !9
  %19654 = load i32, ptr %12, align 4, !tbaa !5
  %19655 = load i32, ptr %8, align 4, !tbaa !5
  %19656 = mul nsw i32 63, %19655
  %19657 = add nsw i32 %19654, %19656
  %19658 = sext i32 %19657 to i64
  %19659 = getelementptr inbounds double, ptr %19653, i64 %19658
  %19660 = load double, ptr %19659, align 8, !tbaa !11
  %19661 = call double @llvm.fmuladd.f64(double 0xBFE7007BFD8FD85D, double %19660, double %19652)
  %19662 = load ptr, ptr %7, align 8, !tbaa !9
  %19663 = load i32, ptr %12, align 4, !tbaa !5
  %19664 = load i32, ptr %8, align 4, !tbaa !5
  %19665 = mul nsw i32 64, %19664
  %19666 = add nsw i32 %19663, %19665
  %19667 = sext i32 %19666 to i64
  %19668 = getelementptr inbounds double, ptr %19662, i64 %19667
  %19669 = load double, ptr %19668, align 8, !tbaa !11
  %19670 = call double @llvm.fmuladd.f64(double 0x3C7ADEBC19B71701, double %19669, double %19661)
  %19671 = load ptr, ptr %7, align 8, !tbaa !9
  %19672 = load i32, ptr %12, align 4, !tbaa !5
  %19673 = load i32, ptr %8, align 4, !tbaa !5
  %19674 = mul nsw i32 65, %19673
  %19675 = add nsw i32 %19672, %19674
  %19676 = sext i32 %19675 to i64
  %19677 = getelementptr inbounds double, ptr %19671, i64 %19676
  %19678 = load double, ptr %19677, align 8, !tbaa !11
  %19679 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %19678, double %19670)
  %19680 = load ptr, ptr %7, align 8, !tbaa !9
  %19681 = load i32, ptr %12, align 4, !tbaa !5
  %19682 = load i32, ptr %8, align 4, !tbaa !5
  %19683 = mul nsw i32 66, %19682
  %19684 = add nsw i32 %19681, %19683
  %19685 = sext i32 %19684 to i64
  %19686 = getelementptr inbounds double, ptr %19680, i64 %19685
  %19687 = load double, ptr %19686, align 8, !tbaa !11
  %19688 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %19687, double %19679)
  store double %19688, ptr %11, align 8, !tbaa !11
  %19689 = load double, ptr %11, align 8, !tbaa !11
  %19690 = load ptr, ptr %9, align 8, !tbaa !9
  %19691 = load i32, ptr %12, align 4, !tbaa !5
  %19692 = load i32, ptr %10, align 4, !tbaa !5
  %19693 = mul nsw i32 68, %19692
  %19694 = add nsw i32 %19691, %19693
  %19695 = sext i32 %19694 to i64
  %19696 = getelementptr inbounds double, ptr %19690, i64 %19695
  %19697 = load double, ptr %19696, align 8, !tbaa !11
  %19698 = fadd double %19697, %19689
  store double %19698, ptr %19696, align 8, !tbaa !11
  %19699 = load ptr, ptr %7, align 8, !tbaa !9
  %19700 = load i32, ptr %12, align 4, !tbaa !5
  %19701 = load i32, ptr %8, align 4, !tbaa !5
  %19702 = mul nsw i32 20, %19701
  %19703 = add nsw i32 %19700, %19702
  %19704 = sext i32 %19703 to i64
  %19705 = getelementptr inbounds double, ptr %19699, i64 %19704
  %19706 = load double, ptr %19705, align 8, !tbaa !11
  %19707 = load ptr, ptr %7, align 8, !tbaa !9
  %19708 = load i32, ptr %12, align 4, !tbaa !5
  %19709 = load i32, ptr %8, align 4, !tbaa !5
  %19710 = mul nsw i32 21, %19709
  %19711 = add nsw i32 %19708, %19710
  %19712 = sext i32 %19711 to i64
  %19713 = getelementptr inbounds double, ptr %19707, i64 %19712
  %19714 = load double, ptr %19713, align 8, !tbaa !11
  %19715 = fmul double 0x3C90000000000000, %19714
  %19716 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %19706, double %19715)
  %19717 = load ptr, ptr %7, align 8, !tbaa !9
  %19718 = load i32, ptr %12, align 4, !tbaa !5
  %19719 = load i32, ptr %8, align 4, !tbaa !5
  %19720 = mul nsw i32 22, %19719
  %19721 = add nsw i32 %19718, %19720
  %19722 = sext i32 %19721 to i64
  %19723 = getelementptr inbounds double, ptr %19717, i64 %19722
  %19724 = load double, ptr %19723, align 8, !tbaa !11
  %19725 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %19724, double %19716)
  %19726 = load ptr, ptr %7, align 8, !tbaa !9
  %19727 = load i32, ptr %12, align 4, !tbaa !5
  %19728 = load i32, ptr %8, align 4, !tbaa !5
  %19729 = mul nsw i32 23, %19728
  %19730 = add nsw i32 %19727, %19729
  %19731 = sext i32 %19730 to i64
  %19732 = getelementptr inbounds double, ptr %19726, i64 %19731
  %19733 = load double, ptr %19732, align 8, !tbaa !11
  %19734 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %19733, double %19725)
  %19735 = load ptr, ptr %7, align 8, !tbaa !9
  %19736 = load i32, ptr %12, align 4, !tbaa !5
  %19737 = load i32, ptr %8, align 4, !tbaa !5
  %19738 = mul nsw i32 24, %19737
  %19739 = add nsw i32 %19736, %19738
  %19740 = sext i32 %19739 to i64
  %19741 = getelementptr inbounds double, ptr %19735, i64 %19740
  %19742 = load double, ptr %19741, align 8, !tbaa !11
  %19743 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %19742, double %19734)
  %19744 = load ptr, ptr %7, align 8, !tbaa !9
  %19745 = load i32, ptr %12, align 4, !tbaa !5
  %19746 = load i32, ptr %8, align 4, !tbaa !5
  %19747 = mul nsw i32 25, %19746
  %19748 = add nsw i32 %19745, %19747
  %19749 = sext i32 %19748 to i64
  %19750 = getelementptr inbounds double, ptr %19744, i64 %19749
  %19751 = load double, ptr %19750, align 8, !tbaa !11
  %19752 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %19751, double %19743)
  %19753 = load ptr, ptr %7, align 8, !tbaa !9
  %19754 = load i32, ptr %12, align 4, !tbaa !5
  %19755 = load i32, ptr %8, align 4, !tbaa !5
  %19756 = mul nsw i32 26, %19755
  %19757 = add nsw i32 %19754, %19756
  %19758 = sext i32 %19757 to i64
  %19759 = getelementptr inbounds double, ptr %19753, i64 %19758
  %19760 = load double, ptr %19759, align 8, !tbaa !11
  %19761 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %19760, double %19752)
  %19762 = load ptr, ptr %7, align 8, !tbaa !9
  %19763 = load i32, ptr %12, align 4, !tbaa !5
  %19764 = load i32, ptr %8, align 4, !tbaa !5
  %19765 = mul nsw i32 27, %19764
  %19766 = add nsw i32 %19763, %19765
  %19767 = sext i32 %19766 to i64
  %19768 = getelementptr inbounds double, ptr %19762, i64 %19767
  %19769 = load double, ptr %19768, align 8, !tbaa !11
  %19770 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %19769, double %19761)
  %19771 = load ptr, ptr %7, align 8, !tbaa !9
  %19772 = load i32, ptr %12, align 4, !tbaa !5
  %19773 = load i32, ptr %8, align 4, !tbaa !5
  %19774 = mul nsw i32 28, %19773
  %19775 = add nsw i32 %19772, %19774
  %19776 = sext i32 %19775 to i64
  %19777 = getelementptr inbounds double, ptr %19771, i64 %19776
  %19778 = load double, ptr %19777, align 8, !tbaa !11
  %19779 = call double @llvm.fmuladd.f64(double 0x3F980EB0AE1D4741, double %19778, double %19770)
  %19780 = load ptr, ptr %7, align 8, !tbaa !9
  %19781 = load i32, ptr %12, align 4, !tbaa !5
  %19782 = load i32, ptr %8, align 4, !tbaa !5
  %19783 = mul nsw i32 29, %19782
  %19784 = add nsw i32 %19781, %19783
  %19785 = sext i32 %19784 to i64
  %19786 = getelementptr inbounds double, ptr %19780, i64 %19785
  %19787 = load double, ptr %19786, align 8, !tbaa !11
  %19788 = call double @llvm.fmuladd.f64(double 0xBFD4C0B9406BCBCC, double %19787, double %19779)
  %19789 = load ptr, ptr %7, align 8, !tbaa !9
  %19790 = load i32, ptr %12, align 4, !tbaa !5
  %19791 = load i32, ptr %8, align 4, !tbaa !5
  %19792 = mul nsw i32 30, %19791
  %19793 = add nsw i32 %19790, %19792
  %19794 = sext i32 %19793 to i64
  %19795 = getelementptr inbounds double, ptr %19789, i64 %19794
  %19796 = load double, ptr %19795, align 8, !tbaa !11
  %19797 = call double @llvm.fmuladd.f64(double 0xBFEBF462FB348EF6, double %19796, double %19788)
  %19798 = load ptr, ptr %7, align 8, !tbaa !9
  %19799 = load i32, ptr %12, align 4, !tbaa !5
  %19800 = load i32, ptr %8, align 4, !tbaa !5
  %19801 = mul nsw i32 31, %19800
  %19802 = add nsw i32 %19799, %19801
  %19803 = sext i32 %19802 to i64
  %19804 = getelementptr inbounds double, ptr %19798, i64 %19803
  %19805 = load double, ptr %19804, align 8, !tbaa !11
  %19806 = call double @llvm.fmuladd.f64(double 0xBFE002F9665DF3D9, double %19805, double %19797)
  %19807 = load ptr, ptr %7, align 8, !tbaa !9
  %19808 = load i32, ptr %12, align 4, !tbaa !5
  %19809 = load i32, ptr %8, align 4, !tbaa !5
  %19810 = mul nsw i32 32, %19809
  %19811 = add nsw i32 %19808, %19810
  %19812 = sext i32 %19811 to i64
  %19813 = getelementptr inbounds double, ptr %19807, i64 %19812
  %19814 = load double, ptr %19813, align 8, !tbaa !11
  %19815 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %19814, double %19806)
  %19816 = load ptr, ptr %7, align 8, !tbaa !9
  %19817 = load i32, ptr %12, align 4, !tbaa !5
  %19818 = load i32, ptr %8, align 4, !tbaa !5
  %19819 = mul nsw i32 33, %19818
  %19820 = add nsw i32 %19817, %19819
  %19821 = sext i32 %19820 to i64
  %19822 = getelementptr inbounds double, ptr %19816, i64 %19821
  %19823 = load double, ptr %19822, align 8, !tbaa !11
  %19824 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %19823, double %19815)
  %19825 = load ptr, ptr %7, align 8, !tbaa !9
  %19826 = load i32, ptr %12, align 4, !tbaa !5
  %19827 = load i32, ptr %8, align 4, !tbaa !5
  %19828 = mul nsw i32 34, %19827
  %19829 = add nsw i32 %19826, %19828
  %19830 = sext i32 %19829 to i64
  %19831 = getelementptr inbounds double, ptr %19825, i64 %19830
  %19832 = load double, ptr %19831, align 8, !tbaa !11
  %19833 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %19832, double %19824)
  %19834 = load ptr, ptr %7, align 8, !tbaa !9
  %19835 = load i32, ptr %12, align 4, !tbaa !5
  %19836 = load i32, ptr %8, align 4, !tbaa !5
  %19837 = mul nsw i32 52, %19836
  %19838 = add nsw i32 %19835, %19837
  %19839 = sext i32 %19838 to i64
  %19840 = getelementptr inbounds double, ptr %19834, i64 %19839
  %19841 = load double, ptr %19840, align 8, !tbaa !11
  %19842 = call double @llvm.fmuladd.f64(double 0xBC75369480174810, double %19841, double %19833)
  %19843 = load ptr, ptr %7, align 8, !tbaa !9
  %19844 = load i32, ptr %12, align 4, !tbaa !5
  %19845 = load i32, ptr %8, align 4, !tbaa !5
  %19846 = mul nsw i32 53, %19845
  %19847 = add nsw i32 %19844, %19846
  %19848 = sext i32 %19847 to i64
  %19849 = getelementptr inbounds double, ptr %19843, i64 %19848
  %19850 = load double, ptr %19849, align 8, !tbaa !11
  %19851 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %19850, double %19842)
  %19852 = load ptr, ptr %7, align 8, !tbaa !9
  %19853 = load i32, ptr %12, align 4, !tbaa !5
  %19854 = load i32, ptr %8, align 4, !tbaa !5
  %19855 = mul nsw i32 54, %19854
  %19856 = add nsw i32 %19853, %19855
  %19857 = sext i32 %19856 to i64
  %19858 = getelementptr inbounds double, ptr %19852, i64 %19857
  %19859 = load double, ptr %19858, align 8, !tbaa !11
  %19860 = call double @llvm.fmuladd.f64(double 0x3C93CC8A99AF5452, double %19859, double %19851)
  %19861 = load ptr, ptr %7, align 8, !tbaa !9
  %19862 = load i32, ptr %12, align 4, !tbaa !5
  %19863 = load i32, ptr %8, align 4, !tbaa !5
  %19864 = mul nsw i32 55, %19863
  %19865 = add nsw i32 %19862, %19864
  %19866 = sext i32 %19865 to i64
  %19867 = getelementptr inbounds double, ptr %19861, i64 %19866
  %19868 = load double, ptr %19867, align 8, !tbaa !11
  %19869 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %19868, double %19860)
  %19870 = load ptr, ptr %7, align 8, !tbaa !9
  %19871 = load i32, ptr %12, align 4, !tbaa !5
  %19872 = load i32, ptr %8, align 4, !tbaa !5
  %19873 = mul nsw i32 56, %19872
  %19874 = add nsw i32 %19871, %19873
  %19875 = sext i32 %19874 to i64
  %19876 = getelementptr inbounds double, ptr %19870, i64 %19875
  %19877 = load double, ptr %19876, align 8, !tbaa !11
  %19878 = call double @llvm.fmuladd.f64(double 0x3C8974B2334F2346, double %19877, double %19869)
  %19879 = load ptr, ptr %7, align 8, !tbaa !9
  %19880 = load i32, ptr %12, align 4, !tbaa !5
  %19881 = load i32, ptr %8, align 4, !tbaa !5
  %19882 = mul nsw i32 57, %19881
  %19883 = add nsw i32 %19880, %19882
  %19884 = sext i32 %19883 to i64
  %19885 = getelementptr inbounds double, ptr %19879, i64 %19884
  %19886 = load double, ptr %19885, align 8, !tbaa !11
  %19887 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %19886, double %19878)
  %19888 = load ptr, ptr %7, align 8, !tbaa !9
  %19889 = load i32, ptr %12, align 4, !tbaa !5
  %19890 = load i32, ptr %8, align 4, !tbaa !5
  %19891 = mul nsw i32 58, %19890
  %19892 = add nsw i32 %19889, %19891
  %19893 = sext i32 %19892 to i64
  %19894 = getelementptr inbounds double, ptr %19888, i64 %19893
  %19895 = load double, ptr %19894, align 8, !tbaa !11
  %19896 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %19895, double %19887)
  %19897 = load ptr, ptr %7, align 8, !tbaa !9
  %19898 = load i32, ptr %12, align 4, !tbaa !5
  %19899 = load i32, ptr %8, align 4, !tbaa !5
  %19900 = mul nsw i32 59, %19899
  %19901 = add nsw i32 %19898, %19900
  %19902 = sext i32 %19901 to i64
  %19903 = getelementptr inbounds double, ptr %19897, i64 %19902
  %19904 = load double, ptr %19903, align 8, !tbaa !11
  %19905 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %19904, double %19896)
  %19906 = load ptr, ptr %7, align 8, !tbaa !9
  %19907 = load i32, ptr %12, align 4, !tbaa !5
  %19908 = load i32, ptr %8, align 4, !tbaa !5
  %19909 = mul nsw i32 60, %19908
  %19910 = add nsw i32 %19907, %19909
  %19911 = sext i32 %19910 to i64
  %19912 = getelementptr inbounds double, ptr %19906, i64 %19911
  %19913 = load double, ptr %19912, align 8, !tbaa !11
  %19914 = call double @llvm.fmuladd.f64(double 0xBFB8DF388696F554, double %19913, double %19905)
  %19915 = load ptr, ptr %7, align 8, !tbaa !9
  %19916 = load i32, ptr %12, align 4, !tbaa !5
  %19917 = load i32, ptr %8, align 4, !tbaa !5
  %19918 = mul nsw i32 61, %19917
  %19919 = add nsw i32 %19916, %19918
  %19920 = sext i32 %19919 to i64
  %19921 = getelementptr inbounds double, ptr %19915, i64 %19920
  %19922 = load double, ptr %19921, align 8, !tbaa !11
  %19923 = call double @llvm.fmuladd.f64(double 0x3FD0C7817D9C3121, double %19922, double %19914)
  %19924 = load ptr, ptr %7, align 8, !tbaa !9
  %19925 = load i32, ptr %12, align 4, !tbaa !5
  %19926 = load i32, ptr %8, align 4, !tbaa !5
  %19927 = mul nsw i32 62, %19926
  %19928 = add nsw i32 %19925, %19927
  %19929 = sext i32 %19928 to i64
  %19930 = getelementptr inbounds double, ptr %19924, i64 %19929
  %19931 = load double, ptr %19930, align 8, !tbaa !11
  %19932 = call double @llvm.fmuladd.f64(double 0x4007001BD846D0AE, double %19931, double %19923)
  %19933 = load ptr, ptr %7, align 8, !tbaa !9
  %19934 = load i32, ptr %12, align 4, !tbaa !5
  %19935 = load i32, ptr %8, align 4, !tbaa !5
  %19936 = mul nsw i32 63, %19935
  %19937 = add nsw i32 %19934, %19936
  %19938 = sext i32 %19937 to i64
  %19939 = getelementptr inbounds double, ptr %19933, i64 %19938
  %19940 = load double, ptr %19939, align 8, !tbaa !11
  %19941 = call double @llvm.fmuladd.f64(double 0x3FD08C54FF1019FC, double %19940, double %19932)
  %19942 = load ptr, ptr %7, align 8, !tbaa !9
  %19943 = load i32, ptr %12, align 4, !tbaa !5
  %19944 = load i32, ptr %8, align 4, !tbaa !5
  %19945 = mul nsw i32 64, %19944
  %19946 = add nsw i32 %19943, %19945
  %19947 = sext i32 %19946 to i64
  %19948 = getelementptr inbounds double, ptr %19942, i64 %19947
  %19949 = load double, ptr %19948, align 8, !tbaa !11
  %19950 = call double @llvm.fmuladd.f64(double 0xBC9152F9467969C8, double %19949, double %19941)
  %19951 = load ptr, ptr %7, align 8, !tbaa !9
  %19952 = load i32, ptr %12, align 4, !tbaa !5
  %19953 = load i32, ptr %8, align 4, !tbaa !5
  %19954 = mul nsw i32 65, %19953
  %19955 = add nsw i32 %19952, %19954
  %19956 = sext i32 %19955 to i64
  %19957 = getelementptr inbounds double, ptr %19951, i64 %19956
  %19958 = load double, ptr %19957, align 8, !tbaa !11
  %19959 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %19958, double %19950)
  %19960 = load ptr, ptr %7, align 8, !tbaa !9
  %19961 = load i32, ptr %12, align 4, !tbaa !5
  %19962 = load i32, ptr %8, align 4, !tbaa !5
  %19963 = mul nsw i32 66, %19962
  %19964 = add nsw i32 %19961, %19963
  %19965 = sext i32 %19964 to i64
  %19966 = getelementptr inbounds double, ptr %19960, i64 %19965
  %19967 = load double, ptr %19966, align 8, !tbaa !11
  %19968 = call double @llvm.fmuladd.f64(double 0x3C9974B2334F2346, double %19967, double %19959)
  %19969 = load ptr, ptr %7, align 8, !tbaa !9
  %19970 = load i32, ptr %12, align 4, !tbaa !5
  %19971 = load i32, ptr %8, align 4, !tbaa !5
  %19972 = mul nsw i32 67, %19971
  %19973 = add nsw i32 %19970, %19972
  %19974 = sext i32 %19973 to i64
  %19975 = getelementptr inbounds double, ptr %19969, i64 %19974
  %19976 = load double, ptr %19975, align 8, !tbaa !11
  %19977 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %19976, double %19968)
  store double %19977, ptr %11, align 8, !tbaa !11
  %19978 = load double, ptr %11, align 8, !tbaa !11
  %19979 = load ptr, ptr %9, align 8, !tbaa !9
  %19980 = load i32, ptr %12, align 4, !tbaa !5
  %19981 = load i32, ptr %10, align 4, !tbaa !5
  %19982 = mul nsw i32 69, %19981
  %19983 = add nsw i32 %19980, %19982
  %19984 = sext i32 %19983 to i64
  %19985 = getelementptr inbounds double, ptr %19979, i64 %19984
  %19986 = load double, ptr %19985, align 8, !tbaa !11
  %19987 = fadd double %19986, %19978
  store double %19987, ptr %19985, align 8, !tbaa !11
  %19988 = load ptr, ptr %7, align 8, !tbaa !9
  %19989 = load i32, ptr %12, align 4, !tbaa !5
  %19990 = load i32, ptr %8, align 4, !tbaa !5
  %19991 = mul nsw i32 20, %19990
  %19992 = add nsw i32 %19989, %19991
  %19993 = sext i32 %19992 to i64
  %19994 = getelementptr inbounds double, ptr %19988, i64 %19993
  %19995 = load double, ptr %19994, align 8, !tbaa !11
  %19996 = load ptr, ptr %7, align 8, !tbaa !9
  %19997 = load i32, ptr %12, align 4, !tbaa !5
  %19998 = load i32, ptr %8, align 4, !tbaa !5
  %19999 = mul nsw i32 21, %19998
  %20000 = add nsw i32 %19997, %19999
  %20001 = sext i32 %20000 to i64
  %20002 = getelementptr inbounds double, ptr %19996, i64 %20001
  %20003 = load double, ptr %20002, align 8, !tbaa !11
  %20004 = fmul double 0x3C98000000000000, %20003
  %20005 = call double @llvm.fmuladd.f64(double 0xBC91000000000000, double %19995, double %20004)
  %20006 = load ptr, ptr %7, align 8, !tbaa !9
  %20007 = load i32, ptr %12, align 4, !tbaa !5
  %20008 = load i32, ptr %8, align 4, !tbaa !5
  %20009 = mul nsw i32 22, %20008
  %20010 = add nsw i32 %20007, %20009
  %20011 = sext i32 %20010 to i64
  %20012 = getelementptr inbounds double, ptr %20006, i64 %20011
  %20013 = load double, ptr %20012, align 8, !tbaa !11
  %20014 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %20013, double %20005)
  %20015 = load ptr, ptr %7, align 8, !tbaa !9
  %20016 = load i32, ptr %12, align 4, !tbaa !5
  %20017 = load i32, ptr %8, align 4, !tbaa !5
  %20018 = mul nsw i32 23, %20017
  %20019 = add nsw i32 %20016, %20018
  %20020 = sext i32 %20019 to i64
  %20021 = getelementptr inbounds double, ptr %20015, i64 %20020
  %20022 = load double, ptr %20021, align 8, !tbaa !11
  %20023 = call double @llvm.fmuladd.f64(double 0xBC50000000000000, double %20022, double %20014)
  %20024 = load ptr, ptr %7, align 8, !tbaa !9
  %20025 = load i32, ptr %12, align 4, !tbaa !5
  %20026 = load i32, ptr %8, align 4, !tbaa !5
  %20027 = mul nsw i32 24, %20026
  %20028 = add nsw i32 %20025, %20027
  %20029 = sext i32 %20028 to i64
  %20030 = getelementptr inbounds double, ptr %20024, i64 %20029
  %20031 = load double, ptr %20030, align 8, !tbaa !11
  %20032 = call double @llvm.fmuladd.f64(double 0x3C84000000000000, double %20031, double %20023)
  %20033 = load ptr, ptr %7, align 8, !tbaa !9
  %20034 = load i32, ptr %12, align 4, !tbaa !5
  %20035 = load i32, ptr %8, align 4, !tbaa !5
  %20036 = mul nsw i32 25, %20035
  %20037 = add nsw i32 %20034, %20036
  %20038 = sext i32 %20037 to i64
  %20039 = getelementptr inbounds double, ptr %20033, i64 %20038
  %20040 = load double, ptr %20039, align 8, !tbaa !11
  %20041 = call double @llvm.fmuladd.f64(double 0x3CAE000000000002, double %20040, double %20032)
  %20042 = load ptr, ptr %7, align 8, !tbaa !9
  %20043 = load i32, ptr %12, align 4, !tbaa !5
  %20044 = load i32, ptr %8, align 4, !tbaa !5
  %20045 = mul nsw i32 26, %20044
  %20046 = add nsw i32 %20043, %20045
  %20047 = sext i32 %20046 to i64
  %20048 = getelementptr inbounds double, ptr %20042, i64 %20047
  %20049 = load double, ptr %20048, align 8, !tbaa !11
  %20050 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %20049, double %20041)
  %20051 = load ptr, ptr %7, align 8, !tbaa !9
  %20052 = load i32, ptr %12, align 4, !tbaa !5
  %20053 = load i32, ptr %8, align 4, !tbaa !5
  %20054 = mul nsw i32 27, %20053
  %20055 = add nsw i32 %20052, %20054
  %20056 = sext i32 %20055 to i64
  %20057 = getelementptr inbounds double, ptr %20051, i64 %20056
  %20058 = load double, ptr %20057, align 8, !tbaa !11
  %20059 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %20058, double %20050)
  %20060 = load ptr, ptr %7, align 8, !tbaa !9
  %20061 = load i32, ptr %12, align 4, !tbaa !5
  %20062 = load i32, ptr %8, align 4, !tbaa !5
  %20063 = mul nsw i32 28, %20062
  %20064 = add nsw i32 %20061, %20063
  %20065 = sext i32 %20064 to i64
  %20066 = getelementptr inbounds double, ptr %20060, i64 %20065
  %20067 = load double, ptr %20066, align 8, !tbaa !11
  %20068 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %20067, double %20059)
  %20069 = load ptr, ptr %7, align 8, !tbaa !9
  %20070 = load i32, ptr %12, align 4, !tbaa !5
  %20071 = load i32, ptr %8, align 4, !tbaa !5
  %20072 = mul nsw i32 29, %20071
  %20073 = add nsw i32 %20070, %20072
  %20074 = sext i32 %20073 to i64
  %20075 = getelementptr inbounds double, ptr %20069, i64 %20074
  %20076 = load double, ptr %20075, align 8, !tbaa !11
  %20077 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %20076, double %20068)
  %20078 = load ptr, ptr %7, align 8, !tbaa !9
  %20079 = load i32, ptr %12, align 4, !tbaa !5
  %20080 = load i32, ptr %8, align 4, !tbaa !5
  %20081 = mul nsw i32 30, %20080
  %20082 = add nsw i32 %20079, %20081
  %20083 = sext i32 %20082 to i64
  %20084 = getelementptr inbounds double, ptr %20078, i64 %20083
  %20085 = load double, ptr %20084, align 8, !tbaa !11
  %20086 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %20085, double %20077)
  %20087 = load ptr, ptr %7, align 8, !tbaa !9
  %20088 = load i32, ptr %12, align 4, !tbaa !5
  %20089 = load i32, ptr %8, align 4, !tbaa !5
  %20090 = mul nsw i32 31, %20089
  %20091 = add nsw i32 %20088, %20090
  %20092 = sext i32 %20091 to i64
  %20093 = getelementptr inbounds double, ptr %20087, i64 %20092
  %20094 = load double, ptr %20093, align 8, !tbaa !11
  %20095 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %20094, double %20086)
  %20096 = load ptr, ptr %7, align 8, !tbaa !9
  %20097 = load i32, ptr %12, align 4, !tbaa !5
  %20098 = load i32, ptr %8, align 4, !tbaa !5
  %20099 = mul nsw i32 32, %20098
  %20100 = add nsw i32 %20097, %20099
  %20101 = sext i32 %20100 to i64
  %20102 = getelementptr inbounds double, ptr %20096, i64 %20101
  %20103 = load double, ptr %20102, align 8, !tbaa !11
  %20104 = call double @llvm.fmuladd.f64(double 0x3FA789B66AF4F45E, double %20103, double %20095)
  %20105 = load ptr, ptr %7, align 8, !tbaa !9
  %20106 = load i32, ptr %12, align 4, !tbaa !5
  %20107 = load i32, ptr %8, align 4, !tbaa !5
  %20108 = mul nsw i32 33, %20107
  %20109 = add nsw i32 %20106, %20108
  %20110 = sext i32 %20109 to i64
  %20111 = getelementptr inbounds double, ptr %20105, i64 %20110
  %20112 = load double, ptr %20111, align 8, !tbaa !11
  %20113 = call double @llvm.fmuladd.f64(double 0x3FEC2894019C8AD2, double %20112, double %20104)
  %20114 = load ptr, ptr %7, align 8, !tbaa !9
  %20115 = load i32, ptr %12, align 4, !tbaa !5
  %20116 = load i32, ptr %8, align 4, !tbaa !5
  %20117 = mul nsw i32 34, %20116
  %20118 = add nsw i32 %20115, %20117
  %20119 = sext i32 %20118 to i64
  %20120 = getelementptr inbounds double, ptr %20114, i64 %20119
  %20121 = load double, ptr %20120, align 8, !tbaa !11
  %20122 = call double @llvm.fmuladd.f64(double 0x3FEC2894019C8AC4, double %20121, double %20113)
  %20123 = load ptr, ptr %7, align 8, !tbaa !9
  %20124 = load i32, ptr %12, align 4, !tbaa !5
  %20125 = load i32, ptr %8, align 4, !tbaa !5
  %20126 = mul nsw i32 35, %20125
  %20127 = add nsw i32 %20124, %20126
  %20128 = sext i32 %20127 to i64
  %20129 = getelementptr inbounds double, ptr %20123, i64 %20128
  %20130 = load double, ptr %20129, align 8, !tbaa !11
  %20131 = call double @llvm.fmuladd.f64(double 0x3FA789B66AF4F564, double %20130, double %20122)
  %20132 = load ptr, ptr %7, align 8, !tbaa !9
  %20133 = load i32, ptr %12, align 4, !tbaa !5
  %20134 = load i32, ptr %8, align 4, !tbaa !5
  %20135 = mul nsw i32 52, %20134
  %20136 = add nsw i32 %20133, %20135
  %20137 = sext i32 %20136 to i64
  %20138 = getelementptr inbounds double, ptr %20132, i64 %20137
  %20139 = load double, ptr %20138, align 8, !tbaa !11
  %20140 = call double @llvm.fmuladd.f64(double 0x3C7FD1DEC022EC17, double %20139, double %20131)
  %20141 = load ptr, ptr %7, align 8, !tbaa !9
  %20142 = load i32, ptr %12, align 4, !tbaa !5
  %20143 = load i32, ptr %8, align 4, !tbaa !5
  %20144 = mul nsw i32 53, %20143
  %20145 = add nsw i32 %20142, %20144
  %20146 = sext i32 %20145 to i64
  %20147 = getelementptr inbounds double, ptr %20141, i64 %20146
  %20148 = load double, ptr %20147, align 8, !tbaa !11
  %20149 = call double @llvm.fmuladd.f64(double 0xBCA6A09E667F3BCC, double %20148, double %20140)
  %20150 = load ptr, ptr %7, align 8, !tbaa !9
  %20151 = load i32, ptr %12, align 4, !tbaa !5
  %20152 = load i32, ptr %8, align 4, !tbaa !5
  %20153 = mul nsw i32 54, %20152
  %20154 = add nsw i32 %20151, %20153
  %20155 = sext i32 %20154 to i64
  %20156 = getelementptr inbounds double, ptr %20150, i64 %20155
  %20157 = load double, ptr %20156, align 8, !tbaa !11
  %20158 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %20157, double %20149)
  %20159 = load ptr, ptr %7, align 8, !tbaa !9
  %20160 = load i32, ptr %12, align 4, !tbaa !5
  %20161 = load i32, ptr %8, align 4, !tbaa !5
  %20162 = mul nsw i32 55, %20161
  %20163 = add nsw i32 %20160, %20162
  %20164 = sext i32 %20163 to i64
  %20165 = getelementptr inbounds double, ptr %20159, i64 %20164
  %20166 = load double, ptr %20165, align 8, !tbaa !11
  %20167 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %20166, double %20158)
  %20168 = load ptr, ptr %7, align 8, !tbaa !9
  %20169 = load i32, ptr %12, align 4, !tbaa !5
  %20170 = load i32, ptr %8, align 4, !tbaa !5
  %20171 = mul nsw i32 56, %20170
  %20172 = add nsw i32 %20169, %20171
  %20173 = sext i32 %20172 to i64
  %20174 = getelementptr inbounds double, ptr %20168, i64 %20173
  %20175 = load double, ptr %20174, align 8, !tbaa !11
  %20176 = call double @llvm.fmuladd.f64(double 0xBC81AD7BC01366B8, double %20175, double %20167)
  %20177 = load ptr, ptr %7, align 8, !tbaa !9
  %20178 = load i32, ptr %12, align 4, !tbaa !5
  %20179 = load i32, ptr %8, align 4, !tbaa !5
  %20180 = mul nsw i32 57, %20179
  %20181 = add nsw i32 %20178, %20180
  %20182 = sext i32 %20181 to i64
  %20183 = getelementptr inbounds double, ptr %20177, i64 %20182
  %20184 = load double, ptr %20183, align 8, !tbaa !11
  %20185 = call double @llvm.fmuladd.f64(double 0xBC93CC8A99AF5452, double %20184, double %20176)
  %20186 = load ptr, ptr %7, align 8, !tbaa !9
  %20187 = load i32, ptr %12, align 4, !tbaa !5
  %20188 = load i32, ptr %8, align 4, !tbaa !5
  %20189 = mul nsw i32 58, %20188
  %20190 = add nsw i32 %20187, %20189
  %20191 = sext i32 %20190 to i64
  %20192 = getelementptr inbounds double, ptr %20186, i64 %20191
  %20193 = load double, ptr %20192, align 8, !tbaa !11
  %20194 = call double @llvm.fmuladd.f64(double 0xBC93CC8A99AF5452, double %20193, double %20185)
  %20195 = load ptr, ptr %7, align 8, !tbaa !9
  %20196 = load i32, ptr %12, align 4, !tbaa !5
  %20197 = load i32, ptr %8, align 4, !tbaa !5
  %20198 = mul nsw i32 59, %20197
  %20199 = add nsw i32 %20196, %20198
  %20200 = sext i32 %20199 to i64
  %20201 = getelementptr inbounds double, ptr %20195, i64 %20200
  %20202 = load double, ptr %20201, align 8, !tbaa !11
  %20203 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %20202, double %20194)
  %20204 = load ptr, ptr %7, align 8, !tbaa !9
  %20205 = load i32, ptr %12, align 4, !tbaa !5
  %20206 = load i32, ptr %8, align 4, !tbaa !5
  %20207 = mul nsw i32 60, %20206
  %20208 = add nsw i32 %20205, %20207
  %20209 = sext i32 %20208 to i64
  %20210 = getelementptr inbounds double, ptr %20204, i64 %20209
  %20211 = load double, ptr %20210, align 8, !tbaa !11
  %20212 = call double @llvm.fmuladd.f64(double 0xBC85EB99734B41EF, double %20211, double %20203)
  %20213 = load ptr, ptr %7, align 8, !tbaa !9
  %20214 = load i32, ptr %12, align 4, !tbaa !5
  %20215 = load i32, ptr %8, align 4, !tbaa !5
  %20216 = mul nsw i32 61, %20215
  %20217 = add nsw i32 %20214, %20216
  %20218 = sext i32 %20217 to i64
  %20219 = getelementptr inbounds double, ptr %20213, i64 %20218
  %20220 = load double, ptr %20219, align 8, !tbaa !11
  %20221 = call double @llvm.fmuladd.f64(double 0xBCA80AA84CE72F89, double %20220, double %20212)
  %20222 = load ptr, ptr %7, align 8, !tbaa !9
  %20223 = load i32, ptr %12, align 4, !tbaa !5
  %20224 = load i32, ptr %8, align 4, !tbaa !5
  %20225 = mul nsw i32 62, %20224
  %20226 = add nsw i32 %20223, %20225
  %20227 = sext i32 %20226 to i64
  %20228 = getelementptr inbounds double, ptr %20222, i64 %20227
  %20229 = load double, ptr %20228, align 8, !tbaa !11
  %20230 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %20229, double %20221)
  %20231 = load ptr, ptr %7, align 8, !tbaa !9
  %20232 = load i32, ptr %12, align 4, !tbaa !5
  %20233 = load i32, ptr %8, align 4, !tbaa !5
  %20234 = mul nsw i32 63, %20233
  %20235 = add nsw i32 %20232, %20234
  %20236 = sext i32 %20235 to i64
  %20237 = getelementptr inbounds double, ptr %20231, i64 %20236
  %20238 = load double, ptr %20237, align 8, !tbaa !11
  %20239 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %20238, double %20230)
  %20240 = load ptr, ptr %7, align 8, !tbaa !9
  %20241 = load i32, ptr %12, align 4, !tbaa !5
  %20242 = load i32, ptr %8, align 4, !tbaa !5
  %20243 = mul nsw i32 64, %20242
  %20244 = add nsw i32 %20241, %20243
  %20245 = sext i32 %20244 to i64
  %20246 = getelementptr inbounds double, ptr %20240, i64 %20245
  %20247 = load double, ptr %20246, align 8, !tbaa !11
  %20248 = call double @llvm.fmuladd.f64(double 0xBFA0A4D27CF86DC6, double %20247, double %20239)
  %20249 = load ptr, ptr %7, align 8, !tbaa !9
  %20250 = load i32, ptr %12, align 4, !tbaa !5
  %20251 = load i32, ptr %8, align 4, !tbaa !5
  %20252 = mul nsw i32 65, %20251
  %20253 = add nsw i32 %20250, %20252
  %20254 = sext i32 %20253 to i64
  %20255 = getelementptr inbounds double, ptr %20249, i64 %20254
  %20256 = load double, ptr %20255, align 8, !tbaa !11
  %20257 = call double @llvm.fmuladd.f64(double 0xBFE3E93C07AFC380, double %20256, double %20248)
  %20258 = load ptr, ptr %7, align 8, !tbaa !9
  %20259 = load i32, ptr %12, align 4, !tbaa !5
  %20260 = load i32, ptr %8, align 4, !tbaa !5
  %20261 = mul nsw i32 66, %20260
  %20262 = add nsw i32 %20259, %20261
  %20263 = sext i32 %20262 to i64
  %20264 = getelementptr inbounds double, ptr %20258, i64 %20263
  %20265 = load double, ptr %20264, align 8, !tbaa !11
  %20266 = call double @llvm.fmuladd.f64(double 0xBFE3E93C07AFC37E, double %20265, double %20257)
  %20267 = load ptr, ptr %7, align 8, !tbaa !9
  %20268 = load i32, ptr %12, align 4, !tbaa !5
  %20269 = load i32, ptr %8, align 4, !tbaa !5
  %20270 = mul nsw i32 67, %20269
  %20271 = add nsw i32 %20268, %20270
  %20272 = sext i32 %20271 to i64
  %20273 = getelementptr inbounds double, ptr %20267, i64 %20272
  %20274 = load double, ptr %20273, align 8, !tbaa !11
  %20275 = call double @llvm.fmuladd.f64(double 0xBFA0A4D27CF86DAF, double %20274, double %20266)
  store double %20275, ptr %11, align 8, !tbaa !11
  %20276 = load double, ptr %11, align 8, !tbaa !11
  %20277 = load ptr, ptr %9, align 8, !tbaa !9
  %20278 = load i32, ptr %12, align 4, !tbaa !5
  %20279 = load i32, ptr %10, align 4, !tbaa !5
  %20280 = mul nsw i32 70, %20279
  %20281 = add nsw i32 %20278, %20280
  %20282 = sext i32 %20281 to i64
  %20283 = getelementptr inbounds double, ptr %20277, i64 %20282
  %20284 = load double, ptr %20283, align 8, !tbaa !11
  %20285 = fadd double %20284, %20276
  store double %20285, ptr %20283, align 8, !tbaa !11
  %20286 = load ptr, ptr %7, align 8, !tbaa !9
  %20287 = load i32, ptr %12, align 4, !tbaa !5
  %20288 = load i32, ptr %8, align 4, !tbaa !5
  %20289 = mul nsw i32 20, %20288
  %20290 = add nsw i32 %20287, %20289
  %20291 = sext i32 %20290 to i64
  %20292 = getelementptr inbounds double, ptr %20286, i64 %20291
  %20293 = load double, ptr %20292, align 8, !tbaa !11
  %20294 = load ptr, ptr %7, align 8, !tbaa !9
  %20295 = load i32, ptr %12, align 4, !tbaa !5
  %20296 = load i32, ptr %8, align 4, !tbaa !5
  %20297 = mul nsw i32 21, %20296
  %20298 = add nsw i32 %20295, %20297
  %20299 = sext i32 %20298 to i64
  %20300 = getelementptr inbounds double, ptr %20294, i64 %20299
  %20301 = load double, ptr %20300, align 8, !tbaa !11
  %20302 = fmul double 0x3CA4000000000001, %20301
  %20303 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %20293, double %20302)
  %20304 = load ptr, ptr %7, align 8, !tbaa !9
  %20305 = load i32, ptr %12, align 4, !tbaa !5
  %20306 = load i32, ptr %8, align 4, !tbaa !5
  %20307 = mul nsw i32 22, %20306
  %20308 = add nsw i32 %20305, %20307
  %20309 = sext i32 %20308 to i64
  %20310 = getelementptr inbounds double, ptr %20304, i64 %20309
  %20311 = load double, ptr %20310, align 8, !tbaa !11
  %20312 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %20311, double %20303)
  %20313 = load ptr, ptr %7, align 8, !tbaa !9
  %20314 = load i32, ptr %12, align 4, !tbaa !5
  %20315 = load i32, ptr %8, align 4, !tbaa !5
  %20316 = mul nsw i32 23, %20315
  %20317 = add nsw i32 %20314, %20316
  %20318 = sext i32 %20317 to i64
  %20319 = getelementptr inbounds double, ptr %20313, i64 %20318
  %20320 = load double, ptr %20319, align 8, !tbaa !11
  %20321 = call double @llvm.fmuladd.f64(double 0x3CB0000000000000, double %20320, double %20312)
  %20322 = load ptr, ptr %7, align 8, !tbaa !9
  %20323 = load i32, ptr %12, align 4, !tbaa !5
  %20324 = load i32, ptr %8, align 4, !tbaa !5
  %20325 = mul nsw i32 24, %20324
  %20326 = add nsw i32 %20323, %20325
  %20327 = sext i32 %20326 to i64
  %20328 = getelementptr inbounds double, ptr %20322, i64 %20327
  %20329 = load double, ptr %20328, align 8, !tbaa !11
  %20330 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %20329, double %20321)
  %20331 = load ptr, ptr %7, align 8, !tbaa !9
  %20332 = load i32, ptr %12, align 4, !tbaa !5
  %20333 = load i32, ptr %8, align 4, !tbaa !5
  %20334 = mul nsw i32 25, %20333
  %20335 = add nsw i32 %20332, %20334
  %20336 = sext i32 %20335 to i64
  %20337 = getelementptr inbounds double, ptr %20331, i64 %20336
  %20338 = load double, ptr %20337, align 8, !tbaa !11
  %20339 = call double @llvm.fmuladd.f64(double 0x3CB8000000000001, double %20338, double %20330)
  %20340 = load ptr, ptr %7, align 8, !tbaa !9
  %20341 = load i32, ptr %12, align 4, !tbaa !5
  %20342 = load i32, ptr %8, align 4, !tbaa !5
  %20343 = mul nsw i32 26, %20342
  %20344 = add nsw i32 %20341, %20343
  %20345 = sext i32 %20344 to i64
  %20346 = getelementptr inbounds double, ptr %20340, i64 %20345
  %20347 = load double, ptr %20346, align 8, !tbaa !11
  %20348 = call double @llvm.fmuladd.f64(double 0x3CB8000000000001, double %20347, double %20339)
  %20349 = load ptr, ptr %7, align 8, !tbaa !9
  %20350 = load i32, ptr %12, align 4, !tbaa !5
  %20351 = load i32, ptr %8, align 4, !tbaa !5
  %20352 = mul nsw i32 29, %20351
  %20353 = add nsw i32 %20350, %20352
  %20354 = sext i32 %20353 to i64
  %20355 = getelementptr inbounds double, ptr %20349, i64 %20354
  %20356 = load double, ptr %20355, align 8, !tbaa !11
  %20357 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %20356, double %20348)
  %20358 = load ptr, ptr %7, align 8, !tbaa !9
  %20359 = load i32, ptr %12, align 4, !tbaa !5
  %20360 = load i32, ptr %8, align 4, !tbaa !5
  %20361 = mul nsw i32 30, %20360
  %20362 = add nsw i32 %20359, %20361
  %20363 = sext i32 %20362 to i64
  %20364 = getelementptr inbounds double, ptr %20358, i64 %20363
  %20365 = load double, ptr %20364, align 8, !tbaa !11
  %20366 = call double @llvm.fmuladd.f64(double 0x3CC0000000000000, double %20365, double %20357)
  %20367 = load ptr, ptr %7, align 8, !tbaa !9
  %20368 = load i32, ptr %12, align 4, !tbaa !5
  %20369 = load i32, ptr %8, align 4, !tbaa !5
  %20370 = mul nsw i32 32, %20369
  %20371 = add nsw i32 %20368, %20370
  %20372 = sext i32 %20371 to i64
  %20373 = getelementptr inbounds double, ptr %20367, i64 %20372
  %20374 = load double, ptr %20373, align 8, !tbaa !11
  %20375 = call double @llvm.fmuladd.f64(double 0x3FD6F2A1D7A492BF, double %20374, double %20366)
  %20376 = load ptr, ptr %7, align 8, !tbaa !9
  %20377 = load i32, ptr %12, align 4, !tbaa !5
  %20378 = load i32, ptr %8, align 4, !tbaa !5
  %20379 = mul nsw i32 33, %20378
  %20380 = add nsw i32 %20377, %20379
  %20381 = sext i32 %20380 to i64
  %20382 = getelementptr inbounds double, ptr %20376, i64 %20381
  %20383 = load double, ptr %20382, align 8, !tbaa !11
  %20384 = call double @llvm.fmuladd.f64(double 0x3FEAEBF44A8E7A8E, double %20383, double %20375)
  %20385 = load ptr, ptr %7, align 8, !tbaa !9
  %20386 = load i32, ptr %12, align 4, !tbaa !5
  %20387 = load i32, ptr %8, align 4, !tbaa !5
  %20388 = mul nsw i32 34, %20387
  %20389 = add nsw i32 %20386, %20388
  %20390 = sext i32 %20389 to i64
  %20391 = getelementptr inbounds double, ptr %20385, i64 %20390
  %20392 = load double, ptr %20391, align 8, !tbaa !11
  %20393 = call double @llvm.fmuladd.f64(double 0x3FEAEBF44A8E7A92, double %20392, double %20384)
  %20394 = load ptr, ptr %7, align 8, !tbaa !9
  %20395 = load i32, ptr %12, align 4, !tbaa !5
  %20396 = load i32, ptr %8, align 4, !tbaa !5
  %20397 = mul nsw i32 35, %20396
  %20398 = add nsw i32 %20395, %20397
  %20399 = sext i32 %20398 to i64
  %20400 = getelementptr inbounds double, ptr %20394, i64 %20399
  %20401 = load double, ptr %20400, align 8, !tbaa !11
  %20402 = call double @llvm.fmuladd.f64(double 0x3FD6F2A1D7A492CF, double %20401, double %20393)
  %20403 = load ptr, ptr %7, align 8, !tbaa !9
  %20404 = load i32, ptr %12, align 4, !tbaa !5
  %20405 = load i32, ptr %8, align 4, !tbaa !5
  %20406 = mul nsw i32 52, %20405
  %20407 = add nsw i32 %20404, %20406
  %20408 = sext i32 %20407 to i64
  %20409 = getelementptr inbounds double, ptr %20403, i64 %20408
  %20410 = load double, ptr %20409, align 8, !tbaa !11
  %20411 = call double @llvm.fmuladd.f64(double 0x3C91AD7BC01366B7, double %20410, double %20402)
  %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 53, %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 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %20419, double %20411)
  %20421 = load ptr, ptr %7, align 8, !tbaa !9
  %20422 = load i32, ptr %12, align 4, !tbaa !5
  %20423 = load i32, ptr %8, align 4, !tbaa !5
  %20424 = mul nsw i32 54, %20423
  %20425 = add nsw i32 %20422, %20424
  %20426 = sext i32 %20425 to i64
  %20427 = getelementptr inbounds double, ptr %20421, i64 %20426
  %20428 = load double, ptr %20427, align 8, !tbaa !11
  %20429 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %20428, double %20420)
  %20430 = load ptr, ptr %7, align 8, !tbaa !9
  %20431 = load i32, ptr %12, align 4, !tbaa !5
  %20432 = load i32, ptr %8, align 4, !tbaa !5
  %20433 = mul nsw i32 55, %20432
  %20434 = add nsw i32 %20431, %20433
  %20435 = sext i32 %20434 to i64
  %20436 = getelementptr inbounds double, ptr %20430, i64 %20435
  %20437 = load double, ptr %20436, align 8, !tbaa !11
  %20438 = call double @llvm.fmuladd.f64(double 0x3CC0F876CCDF6CD9, double %20437, double %20429)
  %20439 = load ptr, ptr %7, align 8, !tbaa !9
  %20440 = load i32, ptr %12, align 4, !tbaa !5
  %20441 = load i32, ptr %8, align 4, !tbaa !5
  %20442 = mul nsw i32 57, %20441
  %20443 = add nsw i32 %20440, %20442
  %20444 = sext i32 %20443 to i64
  %20445 = getelementptr inbounds double, ptr %20439, i64 %20444
  %20446 = load double, ptr %20445, align 8, !tbaa !11
  %20447 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %20446, double %20438)
  %20448 = load ptr, ptr %7, align 8, !tbaa !9
  %20449 = load i32, ptr %12, align 4, !tbaa !5
  %20450 = load i32, ptr %8, align 4, !tbaa !5
  %20451 = mul nsw i32 58, %20450
  %20452 = add nsw i32 %20449, %20451
  %20453 = sext i32 %20452 to i64
  %20454 = getelementptr inbounds double, ptr %20448, i64 %20453
  %20455 = load double, ptr %20454, align 8, !tbaa !11
  %20456 = call double @llvm.fmuladd.f64(double 0xBC86A09E667F3BCC, double %20455, double %20447)
  %20457 = load ptr, ptr %7, align 8, !tbaa !9
  %20458 = load i32, ptr %12, align 4, !tbaa !5
  %20459 = load i32, ptr %8, align 4, !tbaa !5
  %20460 = mul nsw i32 59, %20459
  %20461 = add nsw i32 %20458, %20460
  %20462 = sext i32 %20461 to i64
  %20463 = getelementptr inbounds double, ptr %20457, i64 %20462
  %20464 = load double, ptr %20463, align 8, !tbaa !11
  %20465 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %20464, double %20456)
  %20466 = load ptr, ptr %7, align 8, !tbaa !9
  %20467 = load i32, ptr %12, align 4, !tbaa !5
  %20468 = load i32, ptr %8, align 4, !tbaa !5
  %20469 = mul nsw i32 60, %20468
  %20470 = add nsw i32 %20467, %20469
  %20471 = sext i32 %20470 to i64
  %20472 = getelementptr inbounds double, ptr %20466, i64 %20471
  %20473 = load double, ptr %20472, align 8, !tbaa !11
  %20474 = call double @llvm.fmuladd.f64(double 0x3C66A09E667F3BCC, double %20473, double %20465)
  %20475 = load ptr, ptr %7, align 8, !tbaa !9
  %20476 = load i32, ptr %12, align 4, !tbaa !5
  %20477 = load i32, ptr %8, align 4, !tbaa !5
  %20478 = mul nsw i32 61, %20477
  %20479 = add nsw i32 %20476, %20478
  %20480 = sext i32 %20479 to i64
  %20481 = getelementptr inbounds double, ptr %20475, i64 %20480
  %20482 = load double, ptr %20481, align 8, !tbaa !11
  %20483 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %20482, double %20474)
  %20484 = load ptr, ptr %7, align 8, !tbaa !9
  %20485 = load i32, ptr %12, align 4, !tbaa !5
  %20486 = load i32, ptr %8, align 4, !tbaa !5
  %20487 = mul nsw i32 62, %20486
  %20488 = add nsw i32 %20485, %20487
  %20489 = sext i32 %20488 to i64
  %20490 = getelementptr inbounds double, ptr %20484, i64 %20489
  %20491 = load double, ptr %20490, align 8, !tbaa !11
  %20492 = call double @llvm.fmuladd.f64(double 0x3CA0F876CCDF6CD8, double %20491, double %20483)
  %20493 = load ptr, ptr %7, align 8, !tbaa !9
  %20494 = load i32, ptr %12, align 4, !tbaa !5
  %20495 = load i32, ptr %8, align 4, !tbaa !5
  %20496 = mul nsw i32 63, %20495
  %20497 = add nsw i32 %20494, %20496
  %20498 = sext i32 %20497 to i64
  %20499 = getelementptr inbounds double, ptr %20493, i64 %20498
  %20500 = load double, ptr %20499, align 8, !tbaa !11
  %20501 = call double @llvm.fmuladd.f64(double 0xBC96A09E667F3BCC, double %20500, double %20492)
  %20502 = load ptr, ptr %7, align 8, !tbaa !9
  %20503 = load i32, ptr %12, align 4, !tbaa !5
  %20504 = load i32, ptr %8, align 4, !tbaa !5
  %20505 = mul nsw i32 64, %20504
  %20506 = add nsw i32 %20503, %20505
  %20507 = sext i32 %20506 to i64
  %20508 = getelementptr inbounds double, ptr %20502, i64 %20507
  %20509 = load double, ptr %20508, align 8, !tbaa !11
  %20510 = call double @llvm.fmuladd.f64(double 0x3FA462D8D66D7FC4, double %20509, double %20501)
  %20511 = load ptr, ptr %7, align 8, !tbaa !9
  %20512 = load i32, ptr %12, align 4, !tbaa !5
  %20513 = load i32, ptr %8, align 4, !tbaa !5
  %20514 = mul nsw i32 65, %20513
  %20515 = add nsw i32 %20512, %20514
  %20516 = sext i32 %20515 to i64
  %20517 = getelementptr inbounds double, ptr %20511, i64 %20516
  %20518 = load double, ptr %20517, align 8, !tbaa !11
  %20519 = call double @llvm.fmuladd.f64(double 0xBFC5EA083165C4F6, double %20518, double %20510)
  %20520 = load ptr, ptr %7, align 8, !tbaa !9
  %20521 = load i32, ptr %12, align 4, !tbaa !5
  %20522 = load i32, ptr %8, align 4, !tbaa !5
  %20523 = mul nsw i32 66, %20522
  %20524 = add nsw i32 %20521, %20523
  %20525 = sext i32 %20524 to i64
  %20526 = getelementptr inbounds double, ptr %20520, i64 %20525
  %20527 = load double, ptr %20526, align 8, !tbaa !11
  %20528 = call double @llvm.fmuladd.f64(double 0x3FD4A299D1E9700E, double %20527, double %20519)
  %20529 = load ptr, ptr %7, align 8, !tbaa !9
  %20530 = load i32, ptr %12, align 4, !tbaa !5
  %20531 = load i32, ptr %8, align 4, !tbaa !5
  %20532 = mul nsw i32 67, %20531
  %20533 = add nsw i32 %20530, %20532
  %20534 = sext i32 %20533 to i64
  %20535 = getelementptr inbounds double, ptr %20529, i64 %20534
  %20536 = load double, ptr %20535, align 8, !tbaa !11
  %20537 = call double @llvm.fmuladd.f64(double 0x400E488CB8C1EA74, double %20536, double %20528)
  store double %20537, ptr %11, align 8, !tbaa !11
  %20538 = load double, ptr %11, align 8, !tbaa !11
  %20539 = load ptr, ptr %9, align 8, !tbaa !9
  %20540 = load i32, ptr %12, align 4, !tbaa !5
  %20541 = load i32, ptr %10, align 4, !tbaa !5
  %20542 = mul nsw i32 71, %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 = fadd double %20546, %20538
  store double %20547, ptr %20545, align 8, !tbaa !11
  %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 20, %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 = load ptr, ptr %7, align 8, !tbaa !9
  %20557 = load i32, ptr %12, align 4, !tbaa !5
  %20558 = load i32, ptr %8, align 4, !tbaa !5
  %20559 = mul nsw i32 21, %20558
  %20560 = add nsw i32 %20557, %20559
  %20561 = sext i32 %20560 to i64
  %20562 = getelementptr inbounds double, ptr %20556, i64 %20561
  %20563 = load double, ptr %20562, align 8, !tbaa !11
  %20564 = fmul double 0x3CA0000000000002, %20563
  %20565 = call double @llvm.fmuladd.f64(double 0x3CA1000000000001, double %20555, double %20564)
  %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 22, %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 0xBCA9FFFFFFFFFFFE, 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 23, %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 0xBCD2000000000000, 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 24, %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 0x3C94000000000000, 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 25, %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 0xBC94000000000000, 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 26, %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 0x3C94000000000000, 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 27, %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 0xBCB5000000000000, 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 28, %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 0xBCA2000000000000, 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 29, %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 0xBC88000000000000, 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 30, %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 0xBCA9FFFFFFFFFFFE, 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 31, %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 0xBCC5800000000000, 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 32, %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 0xBFACD49071EC6028, 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 33, %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 0x3FCEFDC8894D0802, 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 34, %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 0xBFDD2EB9CCB3BE35, 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 35, %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 0xC01569E165D7940B, double %20690, double %20682)
  %20692 = load ptr, ptr %7, align 8, !tbaa !9
  %20693 = load i32, ptr %12, align 4, !tbaa !5
  %20694 = load i32, ptr %8, align 4, !tbaa !5
  %20695 = mul nsw i32 52, %20694
  %20696 = add nsw i32 %20693, %20695
  %20697 = sext i32 %20696 to i64
  %20698 = getelementptr inbounds double, ptr %20692, i64 %20697
  %20699 = load double, ptr %20698, align 8, !tbaa !11
  %20700 = call double @llvm.fmuladd.f64(double 0x3CC689FDC818BC8F, double %20699, double %20691)
  %20701 = load ptr, ptr %7, align 8, !tbaa !9
  %20702 = load i32, ptr %12, align 4, !tbaa !5
  %20703 = load i32, ptr %8, align 4, !tbaa !5
  %20704 = mul nsw i32 53, %20703
  %20705 = add nsw i32 %20702, %20704
  %20706 = sext i32 %20705 to i64
  %20707 = getelementptr inbounds double, ptr %20701, i64 %20706
  %20708 = load double, ptr %20707, align 8, !tbaa !11
  %20709 = call double @llvm.fmuladd.f64(double 0x3CB16999E4DFE903, double %20708, double %20700)
  %20710 = load ptr, ptr %7, align 8, !tbaa !9
  %20711 = load i32, ptr %12, align 4, !tbaa !5
  %20712 = load i32, ptr %8, align 4, !tbaa !5
  %20713 = mul nsw i32 54, %20712
  %20714 = add nsw i32 %20711, %20713
  %20715 = sext i32 %20714 to i64
  %20716 = getelementptr inbounds double, ptr %20710, i64 %20715
  %20717 = load double, ptr %20716, align 8, !tbaa !11
  %20718 = call double @llvm.fmuladd.f64(double 0xBC880AA84CE72F89, double %20717, double %20709)
  %20719 = load ptr, ptr %7, align 8, !tbaa !9
  %20720 = load i32, ptr %12, align 4, !tbaa !5
  %20721 = load i32, ptr %8, align 4, !tbaa !5
  %20722 = mul nsw i32 55, %20721
  %20723 = add nsw i32 %20720, %20722
  %20724 = sext i32 %20723 to i64
  %20725 = getelementptr inbounds double, ptr %20719, i64 %20724
  %20726 = load double, ptr %20725, align 8, !tbaa !11
  %20727 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %20726, double %20718)
  %20728 = load ptr, ptr %7, align 8, !tbaa !9
  %20729 = load i32, ptr %12, align 4, !tbaa !5
  %20730 = load i32, ptr %8, align 4, !tbaa !5
  %20731 = mul nsw i32 56, %20730
  %20732 = add nsw i32 %20729, %20731
  %20733 = sext i32 %20732 to i64
  %20734 = getelementptr inbounds double, ptr %20728, i64 %20733
  %20735 = load double, ptr %20734, align 8, !tbaa !11
  %20736 = call double @llvm.fmuladd.f64(double 0xBCAF4A1B09BBF0AE, double %20735, double %20727)
  %20737 = load ptr, ptr %7, align 8, !tbaa !9
  %20738 = load i32, ptr %12, align 4, !tbaa !5
  %20739 = load i32, ptr %8, align 4, !tbaa !5
  %20740 = mul nsw i32 57, %20739
  %20741 = add nsw i32 %20738, %20740
  %20742 = sext i32 %20741 to i64
  %20743 = getelementptr inbounds double, ptr %20737, i64 %20742
  %20744 = load double, ptr %20743, align 8, !tbaa !11
  %20745 = call double @llvm.fmuladd.f64(double 0x3CADB2CFE686FE7D, double %20744, double %20736)
  %20746 = load ptr, ptr %7, align 8, !tbaa !9
  %20747 = load i32, ptr %12, align 4, !tbaa !5
  %20748 = load i32, ptr %8, align 4, !tbaa !5
  %20749 = mul nsw i32 58, %20748
  %20750 = add nsw i32 %20747, %20749
  %20751 = sext i32 %20750 to i64
  %20752 = getelementptr inbounds double, ptr %20746, i64 %20751
  %20753 = load double, ptr %20752, align 8, !tbaa !11
  %20754 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %20753, double %20745)
  %20755 = load ptr, ptr %7, align 8, !tbaa !9
  %20756 = load i32, ptr %12, align 4, !tbaa !5
  %20757 = load i32, ptr %8, align 4, !tbaa !5
  %20758 = mul nsw i32 59, %20757
  %20759 = add nsw i32 %20756, %20758
  %20760 = sext i32 %20759 to i64
  %20761 = getelementptr inbounds double, ptr %20755, i64 %20760
  %20762 = load double, ptr %20761, align 8, !tbaa !11
  %20763 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %20762, double %20754)
  %20764 = load ptr, ptr %7, align 8, !tbaa !9
  %20765 = load i32, ptr %12, align 4, !tbaa !5
  %20766 = load i32, ptr %8, align 4, !tbaa !5
  %20767 = mul nsw i32 60, %20766
  %20768 = add nsw i32 %20765, %20767
  %20769 = sext i32 %20768 to i64
  %20770 = getelementptr inbounds double, ptr %20764, i64 %20769
  %20771 = load double, ptr %20770, align 8, !tbaa !11
  %20772 = call double @llvm.fmuladd.f64(double 0x3C9152F9467969C8, double %20771, double %20763)
  %20773 = load ptr, ptr %7, align 8, !tbaa !9
  %20774 = load i32, ptr %12, align 4, !tbaa !5
  %20775 = load i32, ptr %8, align 4, !tbaa !5
  %20776 = mul nsw i32 61, %20775
  %20777 = add nsw i32 %20774, %20776
  %20778 = sext i32 %20777 to i64
  %20779 = getelementptr inbounds double, ptr %20773, i64 %20778
  %20780 = load double, ptr %20779, align 8, !tbaa !11
  %20781 = call double @llvm.fmuladd.f64(double 0xBCADB2CFE686FE7D, double %20780, double %20772)
  %20782 = load ptr, ptr %7, align 8, !tbaa !9
  %20783 = load i32, ptr %12, align 4, !tbaa !5
  %20784 = load i32, ptr %8, align 4, !tbaa !5
  %20785 = mul nsw i32 62, %20784
  %20786 = add nsw i32 %20783, %20785
  %20787 = sext i32 %20786 to i64
  %20788 = getelementptr inbounds double, ptr %20782, i64 %20787
  %20789 = load double, ptr %20788, align 8, !tbaa !11
  %20790 = call double @llvm.fmuladd.f64(double 0xBCA26280B3476095, double %20789, double %20781)
  %20791 = load ptr, ptr %7, align 8, !tbaa !9
  %20792 = load i32, ptr %12, align 4, !tbaa !5
  %20793 = load i32, ptr %8, align 4, !tbaa !5
  %20794 = mul nsw i32 63, %20793
  %20795 = add nsw i32 %20792, %20794
  %20796 = sext i32 %20795 to i64
  %20797 = getelementptr inbounds double, ptr %20791, i64 %20796
  %20798 = load double, ptr %20797, align 8, !tbaa !11
  %20799 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %20798, double %20790)
  %20800 = load ptr, ptr %7, align 8, !tbaa !9
  %20801 = load i32, ptr %12, align 4, !tbaa !5
  %20802 = load i32, ptr %8, align 4, !tbaa !5
  %20803 = mul nsw i32 64, %20802
  %20804 = add nsw i32 %20801, %20803
  %20805 = sext i32 %20804 to i64
  %20806 = getelementptr inbounds double, ptr %20800, i64 %20805
  %20807 = load double, ptr %20806, align 8, !tbaa !11
  %20808 = call double @llvm.fmuladd.f64(double 0x400E488CB8C1EA66, double %20807, double %20799)
  %20809 = load ptr, ptr %7, align 8, !tbaa !9
  %20810 = load i32, ptr %12, align 4, !tbaa !5
  %20811 = load i32, ptr %8, align 4, !tbaa !5
  %20812 = mul nsw i32 65, %20811
  %20813 = add nsw i32 %20810, %20812
  %20814 = sext i32 %20813 to i64
  %20815 = getelementptr inbounds double, ptr %20809, i64 %20814
  %20816 = load double, ptr %20815, align 8, !tbaa !11
  %20817 = call double @llvm.fmuladd.f64(double 0x3FD4A299D1E9700C, double %20816, double %20808)
  %20818 = load ptr, ptr %7, align 8, !tbaa !9
  %20819 = load i32, ptr %12, align 4, !tbaa !5
  %20820 = load i32, ptr %8, align 4, !tbaa !5
  %20821 = mul nsw i32 66, %20820
  %20822 = add nsw i32 %20819, %20821
  %20823 = sext i32 %20822 to i64
  %20824 = getelementptr inbounds double, ptr %20818, i64 %20823
  %20825 = load double, ptr %20824, align 8, !tbaa !11
  %20826 = call double @llvm.fmuladd.f64(double 0xBFC5EA083165C4F9, double %20825, double %20817)
  %20827 = load ptr, ptr %7, align 8, !tbaa !9
  %20828 = load i32, ptr %12, align 4, !tbaa !5
  %20829 = load i32, ptr %8, align 4, !tbaa !5
  %20830 = mul nsw i32 67, %20829
  %20831 = add nsw i32 %20828, %20830
  %20832 = sext i32 %20831 to i64
  %20833 = getelementptr inbounds double, ptr %20827, i64 %20832
  %20834 = load double, ptr %20833, align 8, !tbaa !11
  %20835 = call double @llvm.fmuladd.f64(double 0x3FA462D8D66D7F94, double %20834, double %20826)
  store double %20835, ptr %11, align 8, !tbaa !11
  %20836 = load double, ptr %11, align 8, !tbaa !11
  %20837 = load ptr, ptr %9, align 8, !tbaa !9
  %20838 = load i32, ptr %12, align 4, !tbaa !5
  %20839 = load i32, ptr %10, align 4, !tbaa !5
  %20840 = mul nsw i32 72, %20839
  %20841 = add nsw i32 %20838, %20840
  %20842 = sext i32 %20841 to i64
  %20843 = getelementptr inbounds double, ptr %20837, i64 %20842
  %20844 = load double, ptr %20843, align 8, !tbaa !11
  %20845 = fadd double %20844, %20836
  store double %20845, ptr %20843, align 8, !tbaa !11
  %20846 = load ptr, ptr %7, align 8, !tbaa !9
  %20847 = load i32, ptr %12, align 4, !tbaa !5
  %20848 = load i32, ptr %8, align 4, !tbaa !5
  %20849 = mul nsw i32 20, %20848
  %20850 = add nsw i32 %20847, %20849
  %20851 = sext i32 %20850 to i64
  %20852 = getelementptr inbounds double, ptr %20846, i64 %20851
  %20853 = load double, ptr %20852, align 8, !tbaa !11
  %20854 = load ptr, ptr %7, align 8, !tbaa !9
  %20855 = load i32, ptr %12, align 4, !tbaa !5
  %20856 = load i32, ptr %8, align 4, !tbaa !5
  %20857 = mul nsw i32 21, %20856
  %20858 = add nsw i32 %20855, %20857
  %20859 = sext i32 %20858 to i64
  %20860 = getelementptr inbounds double, ptr %20854, i64 %20859
  %20861 = load double, ptr %20860, align 8, !tbaa !11
  %20862 = fmul double 0xBCBAFFFFFFFFFFFF, %20861
  %20863 = call double @llvm.fmuladd.f64(double 0xBCBF000000000001, double %20853, double %20862)
  %20864 = load ptr, ptr %7, align 8, !tbaa !9
  %20865 = load i32, ptr %12, align 4, !tbaa !5
  %20866 = load i32, ptr %8, align 4, !tbaa !5
  %20867 = mul nsw i32 22, %20866
  %20868 = add nsw i32 %20865, %20867
  %20869 = sext i32 %20868 to i64
  %20870 = getelementptr inbounds double, ptr %20864, i64 %20869
  %20871 = load double, ptr %20870, align 8, !tbaa !11
  %20872 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %20871, double %20863)
  %20873 = load ptr, ptr %7, align 8, !tbaa !9
  %20874 = load i32, ptr %12, align 4, !tbaa !5
  %20875 = load i32, ptr %8, align 4, !tbaa !5
  %20876 = mul nsw i32 23, %20875
  %20877 = add nsw i32 %20874, %20876
  %20878 = sext i32 %20877 to i64
  %20879 = getelementptr inbounds double, ptr %20873, i64 %20878
  %20880 = load double, ptr %20879, align 8, !tbaa !11
  %20881 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %20880, double %20872)
  %20882 = load ptr, ptr %7, align 8, !tbaa !9
  %20883 = load i32, ptr %12, align 4, !tbaa !5
  %20884 = load i32, ptr %8, align 4, !tbaa !5
  %20885 = mul nsw i32 24, %20884
  %20886 = add nsw i32 %20883, %20885
  %20887 = sext i32 %20886 to i64
  %20888 = getelementptr inbounds double, ptr %20882, i64 %20887
  %20889 = load double, ptr %20888, align 8, !tbaa !11
  %20890 = call double @llvm.fmuladd.f64(double 0xBCC2800000000000, double %20889, double %20881)
  %20891 = load ptr, ptr %7, align 8, !tbaa !9
  %20892 = load i32, ptr %12, align 4, !tbaa !5
  %20893 = load i32, ptr %8, align 4, !tbaa !5
  %20894 = mul nsw i32 25, %20893
  %20895 = add nsw i32 %20892, %20894
  %20896 = sext i32 %20895 to i64
  %20897 = getelementptr inbounds double, ptr %20891, i64 %20896
  %20898 = load double, ptr %20897, align 8, !tbaa !11
  %20899 = call double @llvm.fmuladd.f64(double 0x3CAE000000000002, double %20898, double %20890)
  %20900 = load ptr, ptr %7, align 8, !tbaa !9
  %20901 = load i32, ptr %12, align 4, !tbaa !5
  %20902 = load i32, ptr %8, align 4, !tbaa !5
  %20903 = mul nsw i32 26, %20902
  %20904 = add nsw i32 %20901, %20903
  %20905 = sext i32 %20904 to i64
  %20906 = getelementptr inbounds double, ptr %20900, i64 %20905
  %20907 = load double, ptr %20906, align 8, !tbaa !11
  %20908 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %20907, double %20899)
  %20909 = load ptr, ptr %7, align 8, !tbaa !9
  %20910 = load i32, ptr %12, align 4, !tbaa !5
  %20911 = load i32, ptr %8, align 4, !tbaa !5
  %20912 = mul nsw i32 27, %20911
  %20913 = add nsw i32 %20910, %20912
  %20914 = sext i32 %20913 to i64
  %20915 = getelementptr inbounds double, ptr %20909, i64 %20914
  %20916 = load double, ptr %20915, align 8, !tbaa !11
  %20917 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %20916, double %20908)
  %20918 = load ptr, ptr %7, align 8, !tbaa !9
  %20919 = load i32, ptr %12, align 4, !tbaa !5
  %20920 = load i32, ptr %8, align 4, !tbaa !5
  %20921 = mul nsw i32 28, %20920
  %20922 = add nsw i32 %20919, %20921
  %20923 = sext i32 %20922 to i64
  %20924 = getelementptr inbounds double, ptr %20918, i64 %20923
  %20925 = load double, ptr %20924, align 8, !tbaa !11
  %20926 = call double @llvm.fmuladd.f64(double 0xBCD6C00000000002, double %20925, double %20917)
  %20927 = load ptr, ptr %7, align 8, !tbaa !9
  %20928 = load i32, ptr %12, align 4, !tbaa !5
  %20929 = load i32, ptr %8, align 4, !tbaa !5
  %20930 = mul nsw i32 29, %20929
  %20931 = add nsw i32 %20928, %20930
  %20932 = sext i32 %20931 to i64
  %20933 = getelementptr inbounds double, ptr %20927, i64 %20932
  %20934 = load double, ptr %20933, align 8, !tbaa !11
  %20935 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %20934, double %20926)
  %20936 = load ptr, ptr %7, align 8, !tbaa !9
  %20937 = load i32, ptr %12, align 4, !tbaa !5
  %20938 = load i32, ptr %8, align 4, !tbaa !5
  %20939 = mul nsw i32 30, %20938
  %20940 = add nsw i32 %20937, %20939
  %20941 = sext i32 %20940 to i64
  %20942 = getelementptr inbounds double, ptr %20936, i64 %20941
  %20943 = load double, ptr %20942, align 8, !tbaa !11
  %20944 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %20943, double %20935)
  %20945 = load ptr, ptr %7, align 8, !tbaa !9
  %20946 = load i32, ptr %12, align 4, !tbaa !5
  %20947 = load i32, ptr %8, align 4, !tbaa !5
  %20948 = mul nsw i32 31, %20947
  %20949 = add nsw i32 %20946, %20948
  %20950 = sext i32 %20949 to i64
  %20951 = getelementptr inbounds double, ptr %20945, i64 %20950
  %20952 = load double, ptr %20951, align 8, !tbaa !11
  %20953 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %20952, double %20944)
  %20954 = load ptr, ptr %7, align 8, !tbaa !9
  %20955 = load i32, ptr %12, align 4, !tbaa !5
  %20956 = load i32, ptr %8, align 4, !tbaa !5
  %20957 = mul nsw i32 32, %20956
  %20958 = add nsw i32 %20955, %20957
  %20959 = sext i32 %20958 to i64
  %20960 = getelementptr inbounds double, ptr %20954, i64 %20959
  %20961 = load double, ptr %20960, align 8, !tbaa !11
  %20962 = call double @llvm.fmuladd.f64(double 0xC01569E165D79412, double %20961, double %20953)
  %20963 = load ptr, ptr %7, align 8, !tbaa !9
  %20964 = load i32, ptr %12, align 4, !tbaa !5
  %20965 = load i32, ptr %8, align 4, !tbaa !5
  %20966 = mul nsw i32 33, %20965
  %20967 = add nsw i32 %20964, %20966
  %20968 = sext i32 %20967 to i64
  %20969 = getelementptr inbounds double, ptr %20963, i64 %20968
  %20970 = load double, ptr %20969, align 8, !tbaa !11
  %20971 = call double @llvm.fmuladd.f64(double 0xBFDD2EB9CCB3BDB5, double %20970, double %20962)
  %20972 = load ptr, ptr %7, align 8, !tbaa !9
  %20973 = load i32, ptr %12, align 4, !tbaa !5
  %20974 = load i32, ptr %8, align 4, !tbaa !5
  %20975 = mul nsw i32 34, %20974
  %20976 = add nsw i32 %20973, %20975
  %20977 = sext i32 %20976 to i64
  %20978 = getelementptr inbounds double, ptr %20972, i64 %20977
  %20979 = load double, ptr %20978, align 8, !tbaa !11
  %20980 = call double @llvm.fmuladd.f64(double 0x3FCEFDC8894D07B6, double %20979, double %20971)
  %20981 = load ptr, ptr %7, align 8, !tbaa !9
  %20982 = load i32, ptr %12, align 4, !tbaa !5
  %20983 = load i32, ptr %8, align 4, !tbaa !5
  %20984 = mul nsw i32 35, %20983
  %20985 = add nsw i32 %20982, %20984
  %20986 = sext i32 %20985 to i64
  %20987 = getelementptr inbounds double, ptr %20981, i64 %20986
  %20988 = load double, ptr %20987, align 8, !tbaa !11
  %20989 = call double @llvm.fmuladd.f64(double 0xBFACD49071EC5FF2, double %20988, double %20980)
  %20990 = load ptr, ptr %7, align 8, !tbaa !9
  %20991 = load i32, ptr %12, align 4, !tbaa !5
  %20992 = load i32, ptr %8, align 4, !tbaa !5
  %20993 = mul nsw i32 52, %20992
  %20994 = add nsw i32 %20991, %20993
  %20995 = sext i32 %20994 to i64
  %20996 = getelementptr inbounds double, ptr %20990, i64 %20995
  %20997 = load double, ptr %20996, align 8, !tbaa !11
  %20998 = call double @llvm.fmuladd.f64(double 0xBC9F1CD9CCEEF236, double %20997, double %20989)
  %20999 = load ptr, ptr %7, align 8, !tbaa !9
  %21000 = load i32, ptr %12, align 4, !tbaa !5
  %21001 = load i32, ptr %8, align 4, !tbaa !5
  %21002 = mul nsw i32 53, %21001
  %21003 = add nsw i32 %21000, %21002
  %21004 = sext i32 %21003 to i64
  %21005 = getelementptr inbounds double, ptr %20999, i64 %21004
  %21006 = load double, ptr %21005, align 8, !tbaa !11
  %21007 = call double @llvm.fmuladd.f64(double 0xBCA016309CDE7482, double %21006, double %20998)
  %21008 = load ptr, ptr %7, align 8, !tbaa !9
  %21009 = load i32, ptr %12, align 4, !tbaa !5
  %21010 = load i32, ptr %8, align 4, !tbaa !5
  %21011 = mul nsw i32 54, %21010
  %21012 = add nsw i32 %21009, %21011
  %21013 = sext i32 %21012 to i64
  %21014 = getelementptr inbounds double, ptr %21008, i64 %21013
  %21015 = load double, ptr %21014, align 8, !tbaa !11
  %21016 = call double @llvm.fmuladd.f64(double 0x3C98BFAD401B2967, double %21015, double %21007)
  %21017 = load ptr, ptr %7, align 8, !tbaa !9
  %21018 = load i32, ptr %12, align 4, !tbaa !5
  %21019 = load i32, ptr %8, align 4, !tbaa !5
  %21020 = mul nsw i32 55, %21019
  %21021 = add nsw i32 %21018, %21020
  %21022 = sext i32 %21021 to i64
  %21023 = getelementptr inbounds double, ptr %21017, i64 %21022
  %21024 = load double, ptr %21023, align 8, !tbaa !11
  %21025 = call double @llvm.fmuladd.f64(double 0xBC93CC8A99AF5452, double %21024, double %21016)
  %21026 = load ptr, ptr %7, align 8, !tbaa !9
  %21027 = load i32, ptr %12, align 4, !tbaa !5
  %21028 = load i32, ptr %8, align 4, !tbaa !5
  %21029 = mul nsw i32 56, %21028
  %21030 = add nsw i32 %21027, %21029
  %21031 = sext i32 %21030 to i64
  %21032 = getelementptr inbounds double, ptr %21026, i64 %21031
  %21033 = load double, ptr %21032, align 8, !tbaa !11
  %21034 = call double @llvm.fmuladd.f64(double 0xBCB0B494F1ABEF27, double %21033, double %21025)
  %21035 = load ptr, ptr %7, align 8, !tbaa !9
  %21036 = load i32, ptr %12, align 4, !tbaa !5
  %21037 = load i32, ptr %8, align 4, !tbaa !5
  %21038 = mul nsw i32 57, %21037
  %21039 = add nsw i32 %21036, %21038
  %21040 = sext i32 %21039 to i64
  %21041 = getelementptr inbounds double, ptr %21035, i64 %21040
  %21042 = load double, ptr %21041, align 8, !tbaa !11
  %21043 = call double @llvm.fmuladd.f64(double 0xBCA536948017480F, double %21042, double %21034)
  %21044 = load ptr, ptr %7, align 8, !tbaa !9
  %21045 = load i32, ptr %12, align 4, !tbaa !5
  %21046 = load i32, ptr %8, align 4, !tbaa !5
  %21047 = mul nsw i32 58, %21046
  %21048 = add nsw i32 %21045, %21047
  %21049 = sext i32 %21048 to i64
  %21050 = getelementptr inbounds double, ptr %21044, i64 %21049
  %21051 = load double, ptr %21050, align 8, !tbaa !11
  %21052 = call double @llvm.fmuladd.f64(double 0x3CADB2CFE686FE7D, double %21051, double %21043)
  %21053 = load ptr, ptr %7, align 8, !tbaa !9
  %21054 = load i32, ptr %12, align 4, !tbaa !5
  %21055 = load i32, ptr %8, align 4, !tbaa !5
  %21056 = mul nsw i32 59, %21055
  %21057 = add nsw i32 %21054, %21056
  %21058 = sext i32 %21057 to i64
  %21059 = getelementptr inbounds double, ptr %21053, i64 %21058
  %21060 = load double, ptr %21059, align 8, !tbaa !11
  %21061 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %21060, double %21052)
  %21062 = load ptr, ptr %7, align 8, !tbaa !9
  %21063 = load i32, ptr %12, align 4, !tbaa !5
  %21064 = load i32, ptr %8, align 4, !tbaa !5
  %21065 = mul nsw i32 60, %21064
  %21066 = add nsw i32 %21063, %21065
  %21067 = sext i32 %21066 to i64
  %21068 = getelementptr inbounds double, ptr %21062, i64 %21067
  %21069 = load double, ptr %21068, align 8, !tbaa !11
  %21070 = call double @llvm.fmuladd.f64(double 0x3C959116F9B144FE, double %21069, double %21061)
  %21071 = load ptr, ptr %7, align 8, !tbaa !9
  %21072 = load i32, ptr %12, align 4, !tbaa !5
  %21073 = load i32, ptr %8, align 4, !tbaa !5
  %21074 = mul nsw i32 61, %21073
  %21075 = add nsw i32 %21072, %21074
  %21076 = sext i32 %21075 to i64
  %21077 = getelementptr inbounds double, ptr %21071, i64 %21076
  %21078 = load double, ptr %21077, align 8, !tbaa !11
  %21079 = call double @llvm.fmuladd.f64(double 0xBCA80AA84CE72F89, double %21078, double %21070)
  %21080 = load ptr, ptr %7, align 8, !tbaa !9
  %21081 = load i32, ptr %12, align 4, !tbaa !5
  %21082 = load i32, ptr %8, align 4, !tbaa !5
  %21083 = mul nsw i32 62, %21082
  %21084 = add nsw i32 %21081, %21083
  %21085 = sext i32 %21084 to i64
  %21086 = getelementptr inbounds double, ptr %21080, i64 %21085
  %21087 = load double, ptr %21086, align 8, !tbaa !11
  %21088 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %21087, double %21079)
  %21089 = load ptr, ptr %7, align 8, !tbaa !9
  %21090 = load i32, ptr %12, align 4, !tbaa !5
  %21091 = load i32, ptr %8, align 4, !tbaa !5
  %21092 = mul nsw i32 63, %21091
  %21093 = add nsw i32 %21090, %21092
  %21094 = sext i32 %21093 to i64
  %21095 = getelementptr inbounds double, ptr %21089, i64 %21094
  %21096 = load double, ptr %21095, align 8, !tbaa !11
  %21097 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %21096, double %21088)
  %21098 = load ptr, ptr %7, align 8, !tbaa !9
  %21099 = load i32, ptr %12, align 4, !tbaa !5
  %21100 = load i32, ptr %8, align 4, !tbaa !5
  %21101 = mul nsw i32 64, %21100
  %21102 = add nsw i32 %21099, %21101
  %21103 = sext i32 %21102 to i64
  %21104 = getelementptr inbounds double, ptr %21098, i64 %21103
  %21105 = load double, ptr %21104, align 8, !tbaa !11
  %21106 = call double @llvm.fmuladd.f64(double 0xBFD039FE04F7163A, double %21105, double %21097)
  %21107 = load ptr, ptr %7, align 8, !tbaa !9
  %21108 = load i32, ptr %12, align 4, !tbaa !5
  %21109 = load i32, ptr %8, align 4, !tbaa !5
  %21110 = mul nsw i32 65, %21109
  %21111 = add nsw i32 %21108, %21110
  %21112 = sext i32 %21111 to i64
  %21113 = getelementptr inbounds double, ptr %21107, i64 %21112
  %21114 = load double, ptr %21113, align 8, !tbaa !11
  %21115 = call double @llvm.fmuladd.f64(double 0xBFE30958FBF81242, double %21114, double %21106)
  %21116 = load ptr, ptr %7, align 8, !tbaa !9
  %21117 = load i32, ptr %12, align 4, !tbaa !5
  %21118 = load i32, ptr %8, align 4, !tbaa !5
  %21119 = mul nsw i32 66, %21118
  %21120 = add nsw i32 %21117, %21119
  %21121 = sext i32 %21120 to i64
  %21122 = getelementptr inbounds double, ptr %21116, i64 %21121
  %21123 = load double, ptr %21122, align 8, !tbaa !11
  %21124 = call double @llvm.fmuladd.f64(double 0xBFE30958FBF81231, double %21123, double %21115)
  %21125 = load ptr, ptr %7, align 8, !tbaa !9
  %21126 = load i32, ptr %12, align 4, !tbaa !5
  %21127 = load i32, ptr %8, align 4, !tbaa !5
  %21128 = mul nsw i32 67, %21127
  %21129 = add nsw i32 %21126, %21128
  %21130 = sext i32 %21129 to i64
  %21131 = getelementptr inbounds double, ptr %21125, i64 %21130
  %21132 = load double, ptr %21131, align 8, !tbaa !11
  %21133 = call double @llvm.fmuladd.f64(double 0xBFD039FE04F71632, double %21132, double %21124)
  store double %21133, ptr %11, align 8, !tbaa !11
  %21134 = load double, ptr %11, align 8, !tbaa !11
  %21135 = load ptr, ptr %9, align 8, !tbaa !9
  %21136 = load i32, ptr %12, align 4, !tbaa !5
  %21137 = load i32, ptr %10, align 4, !tbaa !5
  %21138 = mul nsw i32 73, %21137
  %21139 = add nsw i32 %21136, %21138
  %21140 = sext i32 %21139 to i64
  %21141 = getelementptr inbounds double, ptr %21135, i64 %21140
  %21142 = load double, ptr %21141, align 8, !tbaa !11
  %21143 = fadd double %21142, %21134
  store double %21143, ptr %21141, align 8, !tbaa !11
  %21144 = load ptr, ptr %7, align 8, !tbaa !9
  %21145 = load i32, ptr %12, align 4, !tbaa !5
  %21146 = load i32, ptr %8, align 4, !tbaa !5
  %21147 = mul nsw i32 20, %21146
  %21148 = add nsw i32 %21145, %21147
  %21149 = sext i32 %21148 to i64
  %21150 = getelementptr inbounds double, ptr %21144, i64 %21149
  %21151 = load double, ptr %21150, align 8, !tbaa !11
  %21152 = load ptr, ptr %7, align 8, !tbaa !9
  %21153 = load i32, ptr %12, align 4, !tbaa !5
  %21154 = load i32, ptr %8, align 4, !tbaa !5
  %21155 = mul nsw i32 21, %21154
  %21156 = add nsw i32 %21153, %21155
  %21157 = sext i32 %21156 to i64
  %21158 = getelementptr inbounds double, ptr %21152, i64 %21157
  %21159 = load double, ptr %21158, align 8, !tbaa !11
  %21160 = fmul double 0xBC9C000000000000, %21159
  %21161 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %21151, double %21160)
  %21162 = load ptr, ptr %7, align 8, !tbaa !9
  %21163 = load i32, ptr %12, align 4, !tbaa !5
  %21164 = load i32, ptr %8, align 4, !tbaa !5
  %21165 = mul nsw i32 22, %21164
  %21166 = add nsw i32 %21163, %21165
  %21167 = sext i32 %21166 to i64
  %21168 = getelementptr inbounds double, ptr %21162, i64 %21167
  %21169 = load double, ptr %21168, align 8, !tbaa !11
  %21170 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %21169, double %21161)
  %21171 = load ptr, ptr %7, align 8, !tbaa !9
  %21172 = load i32, ptr %12, align 4, !tbaa !5
  %21173 = load i32, ptr %8, align 4, !tbaa !5
  %21174 = mul nsw i32 23, %21173
  %21175 = add nsw i32 %21172, %21174
  %21176 = sext i32 %21175 to i64
  %21177 = getelementptr inbounds double, ptr %21171, i64 %21176
  %21178 = load double, ptr %21177, align 8, !tbaa !11
  %21179 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %21178, double %21170)
  %21180 = load ptr, ptr %7, align 8, !tbaa !9
  %21181 = load i32, ptr %12, align 4, !tbaa !5
  %21182 = load i32, ptr %8, align 4, !tbaa !5
  %21183 = mul nsw i32 24, %21182
  %21184 = add nsw i32 %21181, %21183
  %21185 = sext i32 %21184 to i64
  %21186 = getelementptr inbounds double, ptr %21180, i64 %21185
  %21187 = load double, ptr %21186, align 8, !tbaa !11
  %21188 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %21187, double %21179)
  %21189 = load ptr, ptr %7, align 8, !tbaa !9
  %21190 = load i32, ptr %12, align 4, !tbaa !5
  %21191 = load i32, ptr %8, align 4, !tbaa !5
  %21192 = mul nsw i32 25, %21191
  %21193 = add nsw i32 %21190, %21192
  %21194 = sext i32 %21193 to i64
  %21195 = getelementptr inbounds double, ptr %21189, i64 %21194
  %21196 = load double, ptr %21195, align 8, !tbaa !11
  %21197 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %21196, double %21188)
  %21198 = load ptr, ptr %7, align 8, !tbaa !9
  %21199 = load i32, ptr %12, align 4, !tbaa !5
  %21200 = load i32, ptr %8, align 4, !tbaa !5
  %21201 = mul nsw i32 26, %21200
  %21202 = add nsw i32 %21199, %21201
  %21203 = sext i32 %21202 to i64
  %21204 = getelementptr inbounds double, ptr %21198, i64 %21203
  %21205 = load double, ptr %21204, align 8, !tbaa !11
  %21206 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %21205, double %21197)
  %21207 = load ptr, ptr %7, align 8, !tbaa !9
  %21208 = load i32, ptr %12, align 4, !tbaa !5
  %21209 = load i32, ptr %8, align 4, !tbaa !5
  %21210 = mul nsw i32 27, %21209
  %21211 = add nsw i32 %21208, %21210
  %21212 = sext i32 %21211 to i64
  %21213 = getelementptr inbounds double, ptr %21207, i64 %21212
  %21214 = load double, ptr %21213, align 8, !tbaa !11
  %21215 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %21214, double %21206)
  %21216 = load ptr, ptr %7, align 8, !tbaa !9
  %21217 = load i32, ptr %12, align 4, !tbaa !5
  %21218 = load i32, ptr %8, align 4, !tbaa !5
  %21219 = mul nsw i32 28, %21218
  %21220 = add nsw i32 %21217, %21219
  %21221 = sext i32 %21220 to i64
  %21222 = getelementptr inbounds double, ptr %21216, i64 %21221
  %21223 = load double, ptr %21222, align 8, !tbaa !11
  %21224 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %21223, double %21215)
  %21225 = load ptr, ptr %7, align 8, !tbaa !9
  %21226 = load i32, ptr %12, align 4, !tbaa !5
  %21227 = load i32, ptr %8, align 4, !tbaa !5
  %21228 = mul nsw i32 30, %21227
  %21229 = add nsw i32 %21226, %21228
  %21230 = sext i32 %21229 to i64
  %21231 = getelementptr inbounds double, ptr %21225, i64 %21230
  %21232 = load double, ptr %21231, align 8, !tbaa !11
  %21233 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %21232, double %21224)
  %21234 = load ptr, ptr %7, align 8, !tbaa !9
  %21235 = load i32, ptr %12, align 4, !tbaa !5
  %21236 = load i32, ptr %8, align 4, !tbaa !5
  %21237 = mul nsw i32 31, %21236
  %21238 = add nsw i32 %21235, %21237
  %21239 = sext i32 %21238 to i64
  %21240 = getelementptr inbounds double, ptr %21234, i64 %21239
  %21241 = load double, ptr %21240, align 8, !tbaa !11
  %21242 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %21241, double %21233)
  %21243 = load ptr, ptr %7, align 8, !tbaa !9
  %21244 = load i32, ptr %12, align 4, !tbaa !5
  %21245 = load i32, ptr %8, align 4, !tbaa !5
  %21246 = mul nsw i32 32, %21245
  %21247 = add nsw i32 %21244, %21246
  %21248 = sext i32 %21247 to i64
  %21249 = getelementptr inbounds double, ptr %21243, i64 %21248
  %21250 = load double, ptr %21249, align 8, !tbaa !11
  %21251 = call double @llvm.fmuladd.f64(double 0xBFAC37F3CCE9FCFE, double %21250, double %21242)
  %21252 = load ptr, ptr %7, align 8, !tbaa !9
  %21253 = load i32, ptr %12, align 4, !tbaa !5
  %21254 = load i32, ptr %8, align 4, !tbaa !5
  %21255 = mul nsw i32 33, %21254
  %21256 = add nsw i32 %21253, %21255
  %21257 = sext i32 %21256 to i64
  %21258 = getelementptr inbounds double, ptr %21252, i64 %21257
  %21259 = load double, ptr %21258, align 8, !tbaa !11
  %21260 = call double @llvm.fmuladd.f64(double 0xBFB4C23AD63BEF88, double %21259, double %21251)
  %21261 = load ptr, ptr %7, align 8, !tbaa !9
  %21262 = load i32, ptr %12, align 4, !tbaa !5
  %21263 = load i32, ptr %8, align 4, !tbaa !5
  %21264 = mul nsw i32 34, %21263
  %21265 = add nsw i32 %21262, %21264
  %21266 = sext i32 %21265 to i64
  %21267 = getelementptr inbounds double, ptr %21261, i64 %21266
  %21268 = load double, ptr %21267, align 8, !tbaa !11
  %21269 = call double @llvm.fmuladd.f64(double 0x3FEFAD7976B5DE29, double %21268, double %21260)
  %21270 = load ptr, ptr %7, align 8, !tbaa !9
  %21271 = load i32, ptr %12, align 4, !tbaa !5
  %21272 = load i32, ptr %8, align 4, !tbaa !5
  %21273 = mul nsw i32 35, %21272
  %21274 = add nsw i32 %21271, %21273
  %21275 = sext i32 %21274 to i64
  %21276 = getelementptr inbounds double, ptr %21270, i64 %21275
  %21277 = load double, ptr %21276, align 8, !tbaa !11
  %21278 = call double @llvm.fmuladd.f64(double 0x3FF043C98657E812, double %21277, double %21269)
  %21279 = load ptr, ptr %7, align 8, !tbaa !9
  %21280 = load i32, ptr %12, align 4, !tbaa !5
  %21281 = load i32, ptr %8, align 4, !tbaa !5
  %21282 = mul nsw i32 52, %21281
  %21283 = add nsw i32 %21280, %21282
  %21284 = sext i32 %21283 to i64
  %21285 = getelementptr inbounds double, ptr %21279, i64 %21284
  %21286 = load double, ptr %21285, align 8, !tbaa !11
  %21287 = call double @llvm.fmuladd.f64(double 0x3C8BEE4386850DD0, double %21286, double %21278)
  %21288 = load ptr, ptr %7, align 8, !tbaa !9
  %21289 = load i32, ptr %12, align 4, !tbaa !5
  %21290 = load i32, ptr %8, align 4, !tbaa !5
  %21291 = mul nsw i32 53, %21290
  %21292 = add nsw i32 %21289, %21291
  %21293 = sext i32 %21292 to i64
  %21294 = getelementptr inbounds double, ptr %21288, i64 %21293
  %21295 = load double, ptr %21294, align 8, !tbaa !11
  %21296 = call double @llvm.fmuladd.f64(double 0x3CC196DB21ACE77C, double %21295, double %21287)
  %21297 = load ptr, ptr %7, align 8, !tbaa !9
  %21298 = load i32, ptr %12, align 4, !tbaa !5
  %21299 = load i32, ptr %8, align 4, !tbaa !5
  %21300 = mul nsw i32 54, %21299
  %21301 = add nsw i32 %21298, %21300
  %21302 = sext i32 %21301 to i64
  %21303 = getelementptr inbounds double, ptr %21297, i64 %21302
  %21304 = load double, ptr %21303, align 8, !tbaa !11
  %21305 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %21304, double %21296)
  %21306 = load ptr, ptr %7, align 8, !tbaa !9
  %21307 = load i32, ptr %12, align 4, !tbaa !5
  %21308 = load i32, ptr %8, align 4, !tbaa !5
  %21309 = mul nsw i32 55, %21308
  %21310 = add nsw i32 %21307, %21309
  %21311 = sext i32 %21310 to i64
  %21312 = getelementptr inbounds double, ptr %21306, i64 %21311
  %21313 = load double, ptr %21312, align 8, !tbaa !11
  %21314 = call double @llvm.fmuladd.f64(double 0xBC66A09E667F3BCC, double %21313, double %21305)
  %21315 = load ptr, ptr %7, align 8, !tbaa !9
  %21316 = load i32, ptr %12, align 4, !tbaa !5
  %21317 = load i32, ptr %8, align 4, !tbaa !5
  %21318 = mul nsw i32 56, %21317
  %21319 = add nsw i32 %21316, %21318
  %21320 = sext i32 %21319 to i64
  %21321 = getelementptr inbounds double, ptr %21315, i64 %21320
  %21322 = load double, ptr %21321, align 8, !tbaa !11
  %21323 = call double @llvm.fmuladd.f64(double 0x3C6974B2334F2344, double %21322, double %21314)
  %21324 = load ptr, ptr %7, align 8, !tbaa !9
  %21325 = load i32, ptr %12, align 4, !tbaa !5
  %21326 = load i32, ptr %8, align 4, !tbaa !5
  %21327 = mul nsw i32 57, %21326
  %21328 = add nsw i32 %21325, %21327
  %21329 = sext i32 %21328 to i64
  %21330 = getelementptr inbounds double, ptr %21324, i64 %21329
  %21331 = load double, ptr %21330, align 8, !tbaa !11
  %21332 = call double @llvm.fmuladd.f64(double 0xBCA5EB99734B41EE, double %21331, double %21323)
  %21333 = load ptr, ptr %7, align 8, !tbaa !9
  %21334 = load i32, ptr %12, align 4, !tbaa !5
  %21335 = load i32, ptr %8, align 4, !tbaa !5
  %21336 = mul nsw i32 58, %21335
  %21337 = add nsw i32 %21334, %21336
  %21338 = sext i32 %21337 to i64
  %21339 = getelementptr inbounds double, ptr %21333, i64 %21338
  %21340 = load double, ptr %21339, align 8, !tbaa !11
  %21341 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %21340, double %21332)
  %21342 = load ptr, ptr %7, align 8, !tbaa !9
  %21343 = load i32, ptr %12, align 4, !tbaa !5
  %21344 = load i32, ptr %8, align 4, !tbaa !5
  %21345 = mul nsw i32 59, %21344
  %21346 = add nsw i32 %21343, %21345
  %21347 = sext i32 %21346 to i64
  %21348 = getelementptr inbounds double, ptr %21342, i64 %21347
  %21349 = load double, ptr %21348, align 8, !tbaa !11
  %21350 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %21349, double %21341)
  %21351 = load ptr, ptr %7, align 8, !tbaa !9
  %21352 = load i32, ptr %12, align 4, !tbaa !5
  %21353 = load i32, ptr %8, align 4, !tbaa !5
  %21354 = mul nsw i32 60, %21353
  %21355 = add nsw i32 %21352, %21354
  %21356 = sext i32 %21355 to i64
  %21357 = getelementptr inbounds double, ptr %21351, i64 %21356
  %21358 = load double, ptr %21357, align 8, !tbaa !11
  %21359 = call double @llvm.fmuladd.f64(double 0xBC8CFDCAF353049C, double %21358, double %21350)
  %21360 = load ptr, ptr %7, align 8, !tbaa !9
  %21361 = load i32, ptr %12, align 4, !tbaa !5
  %21362 = load i32, ptr %8, align 4, !tbaa !5
  %21363 = mul nsw i32 61, %21362
  %21364 = add nsw i32 %21361, %21363
  %21365 = sext i32 %21364 to i64
  %21366 = getelementptr inbounds double, ptr %21360, i64 %21365
  %21367 = load double, ptr %21366, align 8, !tbaa !11
  %21368 = call double @llvm.fmuladd.f64(double 0x3CB6461BECE53EDD, double %21367, double %21359)
  %21369 = load ptr, ptr %7, align 8, !tbaa !9
  %21370 = load i32, ptr %12, align 4, !tbaa !5
  %21371 = load i32, ptr %8, align 4, !tbaa !5
  %21372 = mul nsw i32 62, %21371
  %21373 = add nsw i32 %21370, %21372
  %21374 = sext i32 %21373 to i64
  %21375 = getelementptr inbounds double, ptr %21369, i64 %21374
  %21376 = load double, ptr %21375, align 8, !tbaa !11
  %21377 = call double @llvm.fmuladd.f64(double 0x3CA3CC8A99AF5452, double %21376, double %21368)
  %21378 = load ptr, ptr %7, align 8, !tbaa !9
  %21379 = load i32, ptr %12, align 4, !tbaa !5
  %21380 = load i32, ptr %8, align 4, !tbaa !5
  %21381 = mul nsw i32 63, %21380
  %21382 = add nsw i32 %21379, %21381
  %21383 = sext i32 %21382 to i64
  %21384 = getelementptr inbounds double, ptr %21378, i64 %21383
  %21385 = load double, ptr %21384, align 8, !tbaa !11
  %21386 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %21385, double %21377)
  %21387 = load ptr, ptr %7, align 8, !tbaa !9
  %21388 = load i32, ptr %12, align 4, !tbaa !5
  %21389 = load i32, ptr %8, align 4, !tbaa !5
  %21390 = mul nsw i32 64, %21389
  %21391 = add nsw i32 %21388, %21390
  %21392 = sext i32 %21391 to i64
  %21393 = getelementptr inbounds double, ptr %21387, i64 %21392
  %21394 = load double, ptr %21393, align 8, !tbaa !11
  %21395 = call double @llvm.fmuladd.f64(double 0x3FD08C54FF101A12, double %21394, double %21386)
  %21396 = load ptr, ptr %7, align 8, !tbaa !9
  %21397 = load i32, ptr %12, align 4, !tbaa !5
  %21398 = load i32, ptr %8, align 4, !tbaa !5
  %21399 = mul nsw i32 65, %21398
  %21400 = add nsw i32 %21397, %21399
  %21401 = sext i32 %21400 to i64
  %21402 = getelementptr inbounds double, ptr %21396, i64 %21401
  %21403 = load double, ptr %21402, align 8, !tbaa !11
  %21404 = call double @llvm.fmuladd.f64(double 0x4007001BD846D0B0, double %21403, double %21395)
  %21405 = load ptr, ptr %7, align 8, !tbaa !9
  %21406 = load i32, ptr %12, align 4, !tbaa !5
  %21407 = load i32, ptr %8, align 4, !tbaa !5
  %21408 = mul nsw i32 66, %21407
  %21409 = add nsw i32 %21406, %21408
  %21410 = sext i32 %21409 to i64
  %21411 = getelementptr inbounds double, ptr %21405, i64 %21410
  %21412 = load double, ptr %21411, align 8, !tbaa !11
  %21413 = call double @llvm.fmuladd.f64(double 0x3FD0C7817D9C3131, double %21412, double %21404)
  %21414 = load ptr, ptr %7, align 8, !tbaa !9
  %21415 = load i32, ptr %12, align 4, !tbaa !5
  %21416 = load i32, ptr %8, align 4, !tbaa !5
  %21417 = mul nsw i32 67, %21416
  %21418 = add nsw i32 %21415, %21417
  %21419 = sext i32 %21418 to i64
  %21420 = getelementptr inbounds double, ptr %21414, i64 %21419
  %21421 = load double, ptr %21420, align 8, !tbaa !11
  %21422 = call double @llvm.fmuladd.f64(double 0xBFB8DF388696F54B, double %21421, double %21413)
  store double %21422, ptr %11, align 8, !tbaa !11
  %21423 = load double, ptr %11, align 8, !tbaa !11
  %21424 = load ptr, ptr %9, align 8, !tbaa !9
  %21425 = load i32, ptr %12, align 4, !tbaa !5
  %21426 = load i32, ptr %10, align 4, !tbaa !5
  %21427 = mul nsw i32 74, %21426
  %21428 = add nsw i32 %21425, %21427
  %21429 = sext i32 %21428 to i64
  %21430 = getelementptr inbounds double, ptr %21424, i64 %21429
  %21431 = load double, ptr %21430, align 8, !tbaa !11
  %21432 = fadd double %21431, %21423
  store double %21432, ptr %21430, align 8, !tbaa !11
  %21433 = load ptr, ptr %7, align 8, !tbaa !9
  %21434 = load i32, ptr %12, align 4, !tbaa !5
  %21435 = load i32, ptr %8, align 4, !tbaa !5
  %21436 = mul nsw i32 20, %21435
  %21437 = add nsw i32 %21434, %21436
  %21438 = sext i32 %21437 to i64
  %21439 = getelementptr inbounds double, ptr %21433, i64 %21438
  %21440 = load double, ptr %21439, align 8, !tbaa !11
  %21441 = load ptr, ptr %7, align 8, !tbaa !9
  %21442 = load i32, ptr %12, align 4, !tbaa !5
  %21443 = load i32, ptr %8, align 4, !tbaa !5
  %21444 = mul nsw i32 21, %21443
  %21445 = add nsw i32 %21442, %21444
  %21446 = sext i32 %21445 to i64
  %21447 = getelementptr inbounds double, ptr %21441, i64 %21446
  %21448 = load double, ptr %21447, align 8, !tbaa !11
  %21449 = fmul double 0x3C70000000000001, %21448
  %21450 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %21440, double %21449)
  %21451 = load ptr, ptr %7, align 8, !tbaa !9
  %21452 = load i32, ptr %12, align 4, !tbaa !5
  %21453 = load i32, ptr %8, align 4, !tbaa !5
  %21454 = mul nsw i32 22, %21453
  %21455 = add nsw i32 %21452, %21454
  %21456 = sext i32 %21455 to i64
  %21457 = getelementptr inbounds double, ptr %21451, i64 %21456
  %21458 = load double, ptr %21457, align 8, !tbaa !11
  %21459 = call double @llvm.fmuladd.f64(double 0xBC9A000000000000, double %21458, double %21450)
  %21460 = load ptr, ptr %7, align 8, !tbaa !9
  %21461 = load i32, ptr %12, align 4, !tbaa !5
  %21462 = load i32, ptr %8, align 4, !tbaa !5
  %21463 = mul nsw i32 23, %21462
  %21464 = add nsw i32 %21461, %21463
  %21465 = sext i32 %21464 to i64
  %21466 = getelementptr inbounds double, ptr %21460, i64 %21465
  %21467 = load double, ptr %21466, align 8, !tbaa !11
  %21468 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %21467, double %21459)
  %21469 = load ptr, ptr %7, align 8, !tbaa !9
  %21470 = load i32, ptr %12, align 4, !tbaa !5
  %21471 = load i32, ptr %8, align 4, !tbaa !5
  %21472 = mul nsw i32 24, %21471
  %21473 = add nsw i32 %21470, %21472
  %21474 = sext i32 %21473 to i64
  %21475 = getelementptr inbounds double, ptr %21469, i64 %21474
  %21476 = load double, ptr %21475, align 8, !tbaa !11
  %21477 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %21476, double %21468)
  %21478 = load ptr, ptr %7, align 8, !tbaa !9
  %21479 = load i32, ptr %12, align 4, !tbaa !5
  %21480 = load i32, ptr %8, align 4, !tbaa !5
  %21481 = mul nsw i32 25, %21480
  %21482 = add nsw i32 %21479, %21481
  %21483 = sext i32 %21482 to i64
  %21484 = getelementptr inbounds double, ptr %21478, i64 %21483
  %21485 = load double, ptr %21484, align 8, !tbaa !11
  %21486 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %21485, double %21477)
  %21487 = load ptr, ptr %7, align 8, !tbaa !9
  %21488 = load i32, ptr %12, align 4, !tbaa !5
  %21489 = load i32, ptr %8, align 4, !tbaa !5
  %21490 = mul nsw i32 27, %21489
  %21491 = add nsw i32 %21488, %21490
  %21492 = sext i32 %21491 to i64
  %21493 = getelementptr inbounds double, ptr %21487, i64 %21492
  %21494 = load double, ptr %21493, align 8, !tbaa !11
  %21495 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %21494, double %21486)
  %21496 = load ptr, ptr %7, align 8, !tbaa !9
  %21497 = load i32, ptr %12, align 4, !tbaa !5
  %21498 = load i32, ptr %8, align 4, !tbaa !5
  %21499 = mul nsw i32 28, %21498
  %21500 = add nsw i32 %21497, %21499
  %21501 = sext i32 %21500 to i64
  %21502 = getelementptr inbounds double, ptr %21496, i64 %21501
  %21503 = load double, ptr %21502, align 8, !tbaa !11
  %21504 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %21503, double %21495)
  %21505 = load ptr, ptr %7, align 8, !tbaa !9
  %21506 = load i32, ptr %12, align 4, !tbaa !5
  %21507 = load i32, ptr %8, align 4, !tbaa !5
  %21508 = mul nsw i32 29, %21507
  %21509 = add nsw i32 %21506, %21508
  %21510 = sext i32 %21509 to i64
  %21511 = getelementptr inbounds double, ptr %21505, i64 %21510
  %21512 = load double, ptr %21511, align 8, !tbaa !11
  %21513 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %21512, double %21504)
  %21514 = load ptr, ptr %7, align 8, !tbaa !9
  %21515 = load i32, ptr %12, align 4, !tbaa !5
  %21516 = load i32, ptr %8, align 4, !tbaa !5
  %21517 = mul nsw i32 30, %21516
  %21518 = add nsw i32 %21515, %21517
  %21519 = sext i32 %21518 to i64
  %21520 = getelementptr inbounds double, ptr %21514, i64 %21519
  %21521 = load double, ptr %21520, align 8, !tbaa !11
  %21522 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %21521, double %21513)
  %21523 = load ptr, ptr %7, align 8, !tbaa !9
  %21524 = load i32, ptr %12, align 4, !tbaa !5
  %21525 = load i32, ptr %8, align 4, !tbaa !5
  %21526 = mul nsw i32 31, %21525
  %21527 = add nsw i32 %21524, %21526
  %21528 = sext i32 %21527 to i64
  %21529 = getelementptr inbounds double, ptr %21523, i64 %21528
  %21530 = load double, ptr %21529, align 8, !tbaa !11
  %21531 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %21530, double %21522)
  %21532 = load ptr, ptr %7, align 8, !tbaa !9
  %21533 = load i32, ptr %12, align 4, !tbaa !5
  %21534 = load i32, ptr %8, align 4, !tbaa !5
  %21535 = mul nsw i32 32, %21534
  %21536 = add nsw i32 %21533, %21535
  %21537 = sext i32 %21536 to i64
  %21538 = getelementptr inbounds double, ptr %21532, i64 %21537
  %21539 = load double, ptr %21538, align 8, !tbaa !11
  %21540 = call double @llvm.fmuladd.f64(double 0x3FF043C98657E812, double %21539, double %21531)
  %21541 = load ptr, ptr %7, align 8, !tbaa !9
  %21542 = load i32, ptr %12, align 4, !tbaa !5
  %21543 = load i32, ptr %8, align 4, !tbaa !5
  %21544 = mul nsw i32 33, %21543
  %21545 = add nsw i32 %21542, %21544
  %21546 = sext i32 %21545 to i64
  %21547 = getelementptr inbounds double, ptr %21541, i64 %21546
  %21548 = load double, ptr %21547, align 8, !tbaa !11
  %21549 = call double @llvm.fmuladd.f64(double 0x3FEFAD7976B5DE26, double %21548, double %21540)
  %21550 = load ptr, ptr %7, align 8, !tbaa !9
  %21551 = load i32, ptr %12, align 4, !tbaa !5
  %21552 = load i32, ptr %8, align 4, !tbaa !5
  %21553 = mul nsw i32 34, %21552
  %21554 = add nsw i32 %21551, %21553
  %21555 = sext i32 %21554 to i64
  %21556 = getelementptr inbounds double, ptr %21550, i64 %21555
  %21557 = load double, ptr %21556, align 8, !tbaa !11
  %21558 = call double @llvm.fmuladd.f64(double 0xBFB4C23AD63BEF60, double %21557, double %21549)
  %21559 = load ptr, ptr %7, align 8, !tbaa !9
  %21560 = load i32, ptr %12, align 4, !tbaa !5
  %21561 = load i32, ptr %8, align 4, !tbaa !5
  %21562 = mul nsw i32 35, %21561
  %21563 = add nsw i32 %21560, %21562
  %21564 = sext i32 %21563 to i64
  %21565 = getelementptr inbounds double, ptr %21559, i64 %21564
  %21566 = load double, ptr %21565, align 8, !tbaa !11
  %21567 = call double @llvm.fmuladd.f64(double 0xBFAC37F3CCE9FD17, double %21566, double %21558)
  %21568 = load ptr, ptr %7, align 8, !tbaa !9
  %21569 = load i32, ptr %12, align 4, !tbaa !5
  %21570 = load i32, ptr %8, align 4, !tbaa !5
  %21571 = mul nsw i32 52, %21570
  %21572 = add nsw i32 %21569, %21571
  %21573 = sext i32 %21572 to i64
  %21574 = getelementptr inbounds double, ptr %21568, i64 %21573
  %21575 = load double, ptr %21574, align 8, !tbaa !11
  %21576 = call double @llvm.fmuladd.f64(double 0x3C53CC8A99AF5452, double %21575, double %21567)
  %21577 = load ptr, ptr %7, align 8, !tbaa !9
  %21578 = load i32, ptr %12, align 4, !tbaa !5
  %21579 = load i32, ptr %8, align 4, !tbaa !5
  %21580 = mul nsw i32 53, %21579
  %21581 = add nsw i32 %21578, %21580
  %21582 = sext i32 %21581 to i64
  %21583 = getelementptr inbounds double, ptr %21577, i64 %21582
  %21584 = load double, ptr %21583, align 8, !tbaa !11
  %21585 = call double @llvm.fmuladd.f64(double 0x3C8536948017480E, double %21584, double %21576)
  %21586 = load ptr, ptr %7, align 8, !tbaa !9
  %21587 = load i32, ptr %12, align 4, !tbaa !5
  %21588 = load i32, ptr %8, align 4, !tbaa !5
  %21589 = mul nsw i32 54, %21588
  %21590 = add nsw i32 %21587, %21589
  %21591 = sext i32 %21590 to i64
  %21592 = getelementptr inbounds double, ptr %21586, i64 %21591
  %21593 = load double, ptr %21592, align 8, !tbaa !11
  %21594 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %21593, double %21585)
  %21595 = load ptr, ptr %7, align 8, !tbaa !9
  %21596 = load i32, ptr %12, align 4, !tbaa !5
  %21597 = load i32, ptr %8, align 4, !tbaa !5
  %21598 = mul nsw i32 55, %21597
  %21599 = add nsw i32 %21596, %21598
  %21600 = sext i32 %21599 to i64
  %21601 = getelementptr inbounds double, ptr %21595, i64 %21600
  %21602 = load double, ptr %21601, align 8, !tbaa !11
  %21603 = call double @llvm.fmuladd.f64(double 0x3C93CC8A99AF5452, double %21602, double %21594)
  %21604 = load ptr, ptr %7, align 8, !tbaa !9
  %21605 = load i32, ptr %12, align 4, !tbaa !5
  %21606 = load i32, ptr %8, align 4, !tbaa !5
  %21607 = mul nsw i32 56, %21606
  %21608 = add nsw i32 %21605, %21607
  %21609 = sext i32 %21608 to i64
  %21610 = getelementptr inbounds double, ptr %21604, i64 %21609
  %21611 = load double, ptr %21610, align 8, !tbaa !11
  %21612 = call double @llvm.fmuladd.f64(double 0xBC94DC12067D4B20, double %21611, double %21603)
  %21613 = load ptr, ptr %7, align 8, !tbaa !9
  %21614 = load i32, ptr %12, align 4, !tbaa !5
  %21615 = load i32, ptr %8, align 4, !tbaa !5
  %21616 = mul nsw i32 57, %21615
  %21617 = add nsw i32 %21614, %21616
  %21618 = sext i32 %21617 to i64
  %21619 = getelementptr inbounds double, ptr %21613, i64 %21618
  %21620 = load double, ptr %21619, align 8, !tbaa !11
  %21621 = call double @llvm.fmuladd.f64(double 0xBC9536948017480F, double %21620, double %21612)
  %21622 = load ptr, ptr %7, align 8, !tbaa !9
  %21623 = load i32, ptr %12, align 4, !tbaa !5
  %21624 = load i32, ptr %8, align 4, !tbaa !5
  %21625 = mul nsw i32 58, %21624
  %21626 = add nsw i32 %21623, %21625
  %21627 = sext i32 %21626 to i64
  %21628 = getelementptr inbounds double, ptr %21622, i64 %21627
  %21629 = load double, ptr %21628, align 8, !tbaa !11
  %21630 = call double @llvm.fmuladd.f64(double 0xBC76A09E667F3BCD, double %21629, double %21621)
  %21631 = load ptr, ptr %7, align 8, !tbaa !9
  %21632 = load i32, ptr %12, align 4, !tbaa !5
  %21633 = load i32, ptr %8, align 4, !tbaa !5
  %21634 = mul nsw i32 59, %21633
  %21635 = add nsw i32 %21632, %21634
  %21636 = sext i32 %21635 to i64
  %21637 = getelementptr inbounds double, ptr %21631, i64 %21636
  %21638 = load double, ptr %21637, align 8, !tbaa !11
  %21639 = call double @llvm.fmuladd.f64(double 0x3C96A09E667F3BCC, double %21638, double %21630)
  %21640 = load ptr, ptr %7, align 8, !tbaa !9
  %21641 = load i32, ptr %12, align 4, !tbaa !5
  %21642 = load i32, ptr %8, align 4, !tbaa !5
  %21643 = mul nsw i32 60, %21642
  %21644 = add nsw i32 %21641, %21643
  %21645 = sext i32 %21644 to i64
  %21646 = getelementptr inbounds double, ptr %21640, i64 %21645
  %21647 = load double, ptr %21646, align 8, !tbaa !11
  %21648 = call double @llvm.fmuladd.f64(double 0x3C6F1CD9CCEEF238, double %21647, double %21639)
  %21649 = load ptr, ptr %7, align 8, !tbaa !9
  %21650 = load i32, ptr %12, align 4, !tbaa !5
  %21651 = load i32, ptr %8, align 4, !tbaa !5
  %21652 = mul nsw i32 61, %21651
  %21653 = add nsw i32 %21650, %21652
  %21654 = sext i32 %21653 to i64
  %21655 = getelementptr inbounds double, ptr %21649, i64 %21654
  %21656 = load double, ptr %21655, align 8, !tbaa !11
  %21657 = call double @llvm.fmuladd.f64(double 0x3C9ADEBC19B71702, double %21656, double %21648)
  %21658 = load ptr, ptr %7, align 8, !tbaa !9
  %21659 = load i32, ptr %12, align 4, !tbaa !5
  %21660 = load i32, ptr %8, align 4, !tbaa !5
  %21661 = mul nsw i32 62, %21660
  %21662 = add nsw i32 %21659, %21661
  %21663 = sext i32 %21662 to i64
  %21664 = getelementptr inbounds double, ptr %21658, i64 %21663
  %21665 = load double, ptr %21664, align 8, !tbaa !11
  %21666 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %21665, double %21657)
  %21667 = load ptr, ptr %7, align 8, !tbaa !9
  %21668 = load i32, ptr %12, align 4, !tbaa !5
  %21669 = load i32, ptr %8, align 4, !tbaa !5
  %21670 = mul nsw i32 64, %21669
  %21671 = add nsw i32 %21668, %21670
  %21672 = sext i32 %21671 to i64
  %21673 = getelementptr inbounds double, ptr %21667, i64 %21672
  %21674 = load double, ptr %21673, align 8, !tbaa !11
  %21675 = call double @llvm.fmuladd.f64(double 0xBF9102DA00B18A5A, double %21674, double %21666)
  %21676 = load ptr, ptr %7, align 8, !tbaa !9
  %21677 = load i32, ptr %12, align 4, !tbaa !5
  %21678 = load i32, ptr %8, align 4, !tbaa !5
  %21679 = mul nsw i32 65, %21678
  %21680 = add nsw i32 %21677, %21679
  %21681 = sext i32 %21680 to i64
  %21682 = getelementptr inbounds double, ptr %21676, i64 %21681
  %21683 = load double, ptr %21682, align 8, !tbaa !11
  %21684 = call double @llvm.fmuladd.f64(double 0x3FCD5953692F6EA6, double %21683, double %21675)
  %21685 = load ptr, ptr %7, align 8, !tbaa !9
  %21686 = load i32, ptr %12, align 4, !tbaa !5
  %21687 = load i32, ptr %8, align 4, !tbaa !5
  %21688 = mul nsw i32 66, %21687
  %21689 = add nsw i32 %21686, %21688
  %21690 = sext i32 %21689 to i64
  %21691 = getelementptr inbounds double, ptr %21685, i64 %21690
  %21692 = load double, ptr %21691, align 8, !tbaa !11
  %21693 = call double @llvm.fmuladd.f64(double 0x3FE3C4545BCF030B, double %21692, double %21684)
  %21694 = load ptr, ptr %7, align 8, !tbaa !9
  %21695 = load i32, ptr %12, align 4, !tbaa !5
  %21696 = load i32, ptr %8, align 4, !tbaa !5
  %21697 = mul nsw i32 67, %21696
  %21698 = add nsw i32 %21695, %21697
  %21699 = sext i32 %21698 to i64
  %21700 = getelementptr inbounds double, ptr %21694, i64 %21699
  %21701 = load double, ptr %21700, align 8, !tbaa !11
  %21702 = call double @llvm.fmuladd.f64(double 0x3FD6A4D32EB1F70D, double %21701, double %21693)
  store double %21702, ptr %11, align 8, !tbaa !11
  %21703 = load double, ptr %11, align 8, !tbaa !11
  %21704 = load ptr, ptr %9, align 8, !tbaa !9
  %21705 = load i32, ptr %12, align 4, !tbaa !5
  %21706 = load i32, ptr %10, align 4, !tbaa !5
  %21707 = mul nsw i32 75, %21706
  %21708 = add nsw i32 %21705, %21707
  %21709 = sext i32 %21708 to i64
  %21710 = getelementptr inbounds double, ptr %21704, i64 %21709
  %21711 = load double, ptr %21710, align 8, !tbaa !11
  %21712 = fadd double %21711, %21703
  store double %21712, ptr %21710, align 8, !tbaa !11
  %21713 = load ptr, ptr %7, align 8, !tbaa !9
  %21714 = load i32, ptr %12, align 4, !tbaa !5
  %21715 = load i32, ptr %8, align 4, !tbaa !5
  %21716 = mul nsw i32 20, %21715
  %21717 = add nsw i32 %21714, %21716
  %21718 = sext i32 %21717 to i64
  %21719 = getelementptr inbounds double, ptr %21713, i64 %21718
  %21720 = load double, ptr %21719, align 8, !tbaa !11
  %21721 = load ptr, ptr %7, align 8, !tbaa !9
  %21722 = load i32, ptr %12, align 4, !tbaa !5
  %21723 = load i32, ptr %8, align 4, !tbaa !5
  %21724 = mul nsw i32 21, %21723
  %21725 = add nsw i32 %21722, %21724
  %21726 = sext i32 %21725 to i64
  %21727 = getelementptr inbounds double, ptr %21721, i64 %21726
  %21728 = load double, ptr %21727, align 8, !tbaa !11
  %21729 = fmul double 0xBCC4400000000000, %21728
  %21730 = call double @llvm.fmuladd.f64(double 0xBC9A000000000000, double %21720, double %21729)
  %21731 = load ptr, ptr %7, align 8, !tbaa !9
  %21732 = load i32, ptr %12, align 4, !tbaa !5
  %21733 = load i32, ptr %8, align 4, !tbaa !5
  %21734 = mul nsw i32 22, %21733
  %21735 = add nsw i32 %21732, %21734
  %21736 = sext i32 %21735 to i64
  %21737 = getelementptr inbounds double, ptr %21731, i64 %21736
  %21738 = load double, ptr %21737, align 8, !tbaa !11
  %21739 = call double @llvm.fmuladd.f64(double 0xBCA1000000000001, double %21738, double %21730)
  %21740 = load ptr, ptr %7, align 8, !tbaa !9
  %21741 = load i32, ptr %12, align 4, !tbaa !5
  %21742 = load i32, ptr %8, align 4, !tbaa !5
  %21743 = mul nsw i32 23, %21742
  %21744 = add nsw i32 %21741, %21743
  %21745 = sext i32 %21744 to i64
  %21746 = getelementptr inbounds double, ptr %21740, i64 %21745
  %21747 = load double, ptr %21746, align 8, !tbaa !11
  %21748 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %21747, double %21739)
  %21749 = load ptr, ptr %7, align 8, !tbaa !9
  %21750 = load i32, ptr %12, align 4, !tbaa !5
  %21751 = load i32, ptr %8, align 4, !tbaa !5
  %21752 = mul nsw i32 25, %21751
  %21753 = add nsw i32 %21750, %21752
  %21754 = sext i32 %21753 to i64
  %21755 = getelementptr inbounds double, ptr %21749, i64 %21754
  %21756 = load double, ptr %21755, align 8, !tbaa !11
  %21757 = call double @llvm.fmuladd.f64(double 0xBCC8C00000000000, double %21756, double %21748)
  %21758 = load ptr, ptr %7, align 8, !tbaa !9
  %21759 = load i32, ptr %12, align 4, !tbaa !5
  %21760 = load i32, ptr %8, align 4, !tbaa !5
  %21761 = mul nsw i32 26, %21760
  %21762 = add nsw i32 %21759, %21761
  %21763 = sext i32 %21762 to i64
  %21764 = getelementptr inbounds double, ptr %21758, i64 %21763
  %21765 = load double, ptr %21764, align 8, !tbaa !11
  %21766 = call double @llvm.fmuladd.f64(double 0xBC96000000000000, double %21765, double %21757)
  %21767 = load ptr, ptr %7, align 8, !tbaa !9
  %21768 = load i32, ptr %12, align 4, !tbaa !5
  %21769 = load i32, ptr %8, align 4, !tbaa !5
  %21770 = mul nsw i32 27, %21769
  %21771 = add nsw i32 %21768, %21770
  %21772 = sext i32 %21771 to i64
  %21773 = getelementptr inbounds double, ptr %21767, i64 %21772
  %21774 = load double, ptr %21773, align 8, !tbaa !11
  %21775 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %21774, double %21766)
  %21776 = load ptr, ptr %7, align 8, !tbaa !9
  %21777 = load i32, ptr %12, align 4, !tbaa !5
  %21778 = load i32, ptr %8, align 4, !tbaa !5
  %21779 = mul nsw i32 29, %21778
  %21780 = add nsw i32 %21777, %21779
  %21781 = sext i32 %21780 to i64
  %21782 = getelementptr inbounds double, ptr %21776, i64 %21781
  %21783 = load double, ptr %21782, align 8, !tbaa !11
  %21784 = call double @llvm.fmuladd.f64(double 0xBCD3A00000000001, double %21783, double %21775)
  %21785 = load ptr, ptr %7, align 8, !tbaa !9
  %21786 = load i32, ptr %12, align 4, !tbaa !5
  %21787 = load i32, ptr %8, align 4, !tbaa !5
  %21788 = mul nsw i32 30, %21787
  %21789 = add nsw i32 %21786, %21788
  %21790 = sext i32 %21789 to i64
  %21791 = getelementptr inbounds double, ptr %21785, i64 %21790
  %21792 = load double, ptr %21791, align 8, !tbaa !11
  %21793 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %21792, double %21784)
  %21794 = load ptr, ptr %7, align 8, !tbaa !9
  %21795 = load i32, ptr %12, align 4, !tbaa !5
  %21796 = load i32, ptr %8, align 4, !tbaa !5
  %21797 = mul nsw i32 31, %21796
  %21798 = add nsw i32 %21795, %21797
  %21799 = sext i32 %21798 to i64
  %21800 = getelementptr inbounds double, ptr %21794, i64 %21799
  %21801 = load double, ptr %21800, align 8, !tbaa !11
  %21802 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %21801, double %21793)
  %21803 = load ptr, ptr %7, align 8, !tbaa !9
  %21804 = load i32, ptr %12, align 4, !tbaa !5
  %21805 = load i32, ptr %8, align 4, !tbaa !5
  %21806 = mul nsw i32 32, %21805
  %21807 = add nsw i32 %21804, %21806
  %21808 = sext i32 %21807 to i64
  %21809 = getelementptr inbounds double, ptr %21803, i64 %21808
  %21810 = load double, ptr %21809, align 8, !tbaa !11
  %21811 = call double @llvm.fmuladd.f64(double 0xBFD767140476511D, double %21810, double %21802)
  %21812 = load ptr, ptr %7, align 8, !tbaa !9
  %21813 = load i32, ptr %12, align 4, !tbaa !5
  %21814 = load i32, ptr %8, align 4, !tbaa !5
  %21815 = mul nsw i32 33, %21814
  %21816 = add nsw i32 %21813, %21815
  %21817 = sext i32 %21816 to i64
  %21818 = getelementptr inbounds double, ptr %21812, i64 %21817
  %21819 = load double, ptr %21818, align 8, !tbaa !11
  %21820 = call double @llvm.fmuladd.f64(double 0xC01043858A1F5993, double %21819, double %21811)
  %21821 = load ptr, ptr %7, align 8, !tbaa !9
  %21822 = load i32, ptr %12, align 4, !tbaa !5
  %21823 = load i32, ptr %8, align 4, !tbaa !5
  %21824 = mul nsw i32 34, %21823
  %21825 = add nsw i32 %21822, %21824
  %21826 = sext i32 %21825 to i64
  %21827 = getelementptr inbounds double, ptr %21821, i64 %21826
  %21828 = load double, ptr %21827, align 8, !tbaa !11
  %21829 = call double @llvm.fmuladd.f64(double 0xBFD7BAC3393ADDD9, double %21828, double %21820)
  %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 35, %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 = call double @llvm.fmuladd.f64(double 0x3FC1964E14FA3C62, double %21837, double %21829)
  %21839 = load ptr, ptr %7, align 8, !tbaa !9
  %21840 = load i32, ptr %12, align 4, !tbaa !5
  %21841 = load i32, ptr %8, align 4, !tbaa !5
  %21842 = mul nsw i32 52, %21841
  %21843 = add nsw i32 %21840, %21842
  %21844 = sext i32 %21843 to i64
  %21845 = getelementptr inbounds double, ptr %21839, i64 %21844
  %21846 = load double, ptr %21845, align 8, !tbaa !11
  %21847 = call double @llvm.fmuladd.f64(double 0x3C86461BECE53EDC, double %21846, double %21838)
  %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 53, %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 0x3CA196DB21ACE77D, 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 54, %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 0x3C9ADEBC19B71702, 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 56, %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 0xBC9C48C6001F0ABF, 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 57, %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 0xBC9FD1DEC022EC15, 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 58, %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 0x3C9C48C6001F0ABF, 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 59, %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 0xBC96A09E667F3BCC, 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 60, %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 0xBC76A09E667F3BCD, 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 61, %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 0x3CB344C6E34858EB, 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 62, %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 0x3C90F876CCDF6CD9, 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 63, %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 0x3C76A09E667F3BCD, 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 64, %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 0x3FD6A4D32EB1F718, 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 65, %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 0x3FE3C4545BCF030B, 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 66, %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 0x3FCD5953692F6EA3, 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 67, %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 0xBF9102DA00B18A2C, double %21972, double %21964)
  store double %21973, ptr %11, align 8, !tbaa !11
  %21974 = load double, ptr %11, align 8, !tbaa !11
  %21975 = load ptr, ptr %9, align 8, !tbaa !9
  %21976 = load i32, ptr %12, align 4, !tbaa !5
  %21977 = load i32, ptr %10, align 4, !tbaa !5
  %21978 = mul nsw i32 76, %21977
  %21979 = add nsw i32 %21976, %21978
  %21980 = sext i32 %21979 to i64
  %21981 = getelementptr inbounds double, ptr %21975, i64 %21980
  %21982 = load double, ptr %21981, align 8, !tbaa !11
  %21983 = fadd double %21982, %21974
  store double %21983, ptr %21981, align 8, !tbaa !11
  %21984 = load ptr, ptr %7, align 8, !tbaa !9
  %21985 = load i32, ptr %12, align 4, !tbaa !5
  %21986 = load i32, ptr %8, align 4, !tbaa !5
  %21987 = mul nsw i32 20, %21986
  %21988 = add nsw i32 %21985, %21987
  %21989 = sext i32 %21988 to i64
  %21990 = getelementptr inbounds double, ptr %21984, i64 %21989
  %21991 = load double, ptr %21990, align 8, !tbaa !11
  %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 21, %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 = fmul double 0xBCA2000000000000, %21999
  %22001 = call double @llvm.fmuladd.f64(double 0x3C82000000000000, double %21991, double %22000)
  %22002 = load ptr, ptr %7, align 8, !tbaa !9
  %22003 = load i32, ptr %12, align 4, !tbaa !5
  %22004 = load i32, ptr %8, align 4, !tbaa !5
  %22005 = mul nsw i32 22, %22004
  %22006 = add nsw i32 %22003, %22005
  %22007 = sext i32 %22006 to i64
  %22008 = getelementptr inbounds double, ptr %22002, i64 %22007
  %22009 = load double, ptr %22008, align 8, !tbaa !11
  %22010 = call double @llvm.fmuladd.f64(double 0xBCC5000000000000, double %22009, double %22001)
  %22011 = load ptr, ptr %7, align 8, !tbaa !9
  %22012 = load i32, ptr %12, align 4, !tbaa !5
  %22013 = load i32, ptr %8, align 4, !tbaa !5
  %22014 = mul nsw i32 23, %22013
  %22015 = add nsw i32 %22012, %22014
  %22016 = sext i32 %22015 to i64
  %22017 = getelementptr inbounds double, ptr %22011, i64 %22016
  %22018 = load double, ptr %22017, align 8, !tbaa !11
  %22019 = call double @llvm.fmuladd.f64(double 0xBCA0800000000001, double %22018, double %22010)
  %22020 = load ptr, ptr %7, align 8, !tbaa !9
  %22021 = load i32, ptr %12, align 4, !tbaa !5
  %22022 = load i32, ptr %8, align 4, !tbaa !5
  %22023 = mul nsw i32 24, %22022
  %22024 = add nsw i32 %22021, %22023
  %22025 = sext i32 %22024 to i64
  %22026 = getelementptr inbounds double, ptr %22020, i64 %22025
  %22027 = load double, ptr %22026, align 8, !tbaa !11
  %22028 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %22027, double %22019)
  %22029 = load ptr, ptr %7, align 8, !tbaa !9
  %22030 = load i32, ptr %12, align 4, !tbaa !5
  %22031 = load i32, ptr %8, align 4, !tbaa !5
  %22032 = mul nsw i32 25, %22031
  %22033 = add nsw i32 %22030, %22032
  %22034 = sext i32 %22033 to i64
  %22035 = getelementptr inbounds double, ptr %22029, i64 %22034
  %22036 = load double, ptr %22035, align 8, !tbaa !11
  %22037 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %22036, double %22028)
  %22038 = load ptr, ptr %7, align 8, !tbaa !9
  %22039 = load i32, ptr %12, align 4, !tbaa !5
  %22040 = load i32, ptr %8, align 4, !tbaa !5
  %22041 = mul nsw i32 26, %22040
  %22042 = add nsw i32 %22039, %22041
  %22043 = sext i32 %22042 to i64
  %22044 = getelementptr inbounds double, ptr %22038, i64 %22043
  %22045 = load double, ptr %22044, align 8, !tbaa !11
  %22046 = call double @llvm.fmuladd.f64(double 0xBCBF000000000001, double %22045, double %22037)
  %22047 = load ptr, ptr %7, align 8, !tbaa !9
  %22048 = load i32, ptr %12, align 4, !tbaa !5
  %22049 = load i32, ptr %8, align 4, !tbaa !5
  %22050 = mul nsw i32 27, %22049
  %22051 = add nsw i32 %22048, %22050
  %22052 = sext i32 %22051 to i64
  %22053 = getelementptr inbounds double, ptr %22047, i64 %22052
  %22054 = load double, ptr %22053, align 8, !tbaa !11
  %22055 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %22054, double %22046)
  %22056 = load ptr, ptr %7, align 8, !tbaa !9
  %22057 = load i32, ptr %12, align 4, !tbaa !5
  %22058 = load i32, ptr %8, align 4, !tbaa !5
  %22059 = mul nsw i32 28, %22058
  %22060 = add nsw i32 %22057, %22059
  %22061 = sext i32 %22060 to i64
  %22062 = getelementptr inbounds double, ptr %22056, i64 %22061
  %22063 = load double, ptr %22062, align 8, !tbaa !11
  %22064 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %22063, double %22055)
  %22065 = load ptr, ptr %7, align 8, !tbaa !9
  %22066 = load i32, ptr %12, align 4, !tbaa !5
  %22067 = load i32, ptr %8, align 4, !tbaa !5
  %22068 = mul nsw i32 30, %22067
  %22069 = add nsw i32 %22066, %22068
  %22070 = sext i32 %22069 to i64
  %22071 = getelementptr inbounds double, ptr %22065, i64 %22070
  %22072 = load double, ptr %22071, align 8, !tbaa !11
  %22073 = call double @llvm.fmuladd.f64(double 0xBCC0800000000000, double %22072, double %22064)
  %22074 = load ptr, ptr %7, align 8, !tbaa !9
  %22075 = load i32, ptr %12, align 4, !tbaa !5
  %22076 = load i32, ptr %8, align 4, !tbaa !5
  %22077 = mul nsw i32 31, %22076
  %22078 = add nsw i32 %22075, %22077
  %22079 = sext i32 %22078 to i64
  %22080 = getelementptr inbounds double, ptr %22074, i64 %22079
  %22081 = load double, ptr %22080, align 8, !tbaa !11
  %22082 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %22081, double %22073)
  %22083 = load ptr, ptr %7, align 8, !tbaa !9
  %22084 = load i32, ptr %12, align 4, !tbaa !5
  %22085 = load i32, ptr %8, align 4, !tbaa !5
  %22086 = mul nsw i32 32, %22085
  %22087 = add nsw i32 %22084, %22086
  %22088 = sext i32 %22087 to i64
  %22089 = getelementptr inbounds double, ptr %22083, i64 %22088
  %22090 = load double, ptr %22089, align 8, !tbaa !11
  %22091 = call double @llvm.fmuladd.f64(double 0x3FC1964E14FA3C4C, double %22090, double %22082)
  %22092 = load ptr, ptr %7, align 8, !tbaa !9
  %22093 = load i32, ptr %12, align 4, !tbaa !5
  %22094 = load i32, ptr %8, align 4, !tbaa !5
  %22095 = mul nsw i32 33, %22094
  %22096 = add nsw i32 %22093, %22095
  %22097 = sext i32 %22096 to i64
  %22098 = getelementptr inbounds double, ptr %22092, i64 %22097
  %22099 = load double, ptr %22098, align 8, !tbaa !11
  %22100 = call double @llvm.fmuladd.f64(double 0xBFD7BAC3393ADDC0, double %22099, double %22091)
  %22101 = load ptr, ptr %7, align 8, !tbaa !9
  %22102 = load i32, ptr %12, align 4, !tbaa !5
  %22103 = load i32, ptr %8, align 4, !tbaa !5
  %22104 = mul nsw i32 34, %22103
  %22105 = add nsw i32 %22102, %22104
  %22106 = sext i32 %22105 to i64
  %22107 = getelementptr inbounds double, ptr %22101, i64 %22106
  %22108 = load double, ptr %22107, align 8, !tbaa !11
  %22109 = call double @llvm.fmuladd.f64(double 0xC01043858A1F5994, double %22108, double %22100)
  %22110 = load ptr, ptr %7, align 8, !tbaa !9
  %22111 = load i32, ptr %12, align 4, !tbaa !5
  %22112 = load i32, ptr %8, align 4, !tbaa !5
  %22113 = mul nsw i32 35, %22112
  %22114 = add nsw i32 %22111, %22113
  %22115 = sext i32 %22114 to i64
  %22116 = getelementptr inbounds double, ptr %22110, i64 %22115
  %22117 = load double, ptr %22116, align 8, !tbaa !11
  %22118 = call double @llvm.fmuladd.f64(double 0xBFD7671404765136, double %22117, double %22109)
  %22119 = load ptr, ptr %7, align 8, !tbaa !9
  %22120 = load i32, ptr %12, align 4, !tbaa !5
  %22121 = load i32, ptr %8, align 4, !tbaa !5
  %22122 = mul nsw i32 52, %22121
  %22123 = add nsw i32 %22120, %22122
  %22124 = sext i32 %22123 to i64
  %22125 = getelementptr inbounds double, ptr %22119, i64 %22124
  %22126 = load double, ptr %22125, align 8, !tbaa !11
  %22127 = call double @llvm.fmuladd.f64(double 0xBCA13C58A812EA8E, double %22126, double %22118)
  %22128 = load ptr, ptr %7, align 8, !tbaa !9
  %22129 = load i32, ptr %12, align 4, !tbaa !5
  %22130 = load i32, ptr %8, align 4, !tbaa !5
  %22131 = mul nsw i32 53, %22130
  %22132 = add nsw i32 %22129, %22131
  %22133 = sext i32 %22132 to i64
  %22134 = getelementptr inbounds double, ptr %22128, i64 %22133
  %22135 = load double, ptr %22134, align 8, !tbaa !11
  %22136 = call double @llvm.fmuladd.f64(double 0xBCA6023A11B1C128, double %22135, double %22127)
  %22137 = load ptr, ptr %7, align 8, !tbaa !9
  %22138 = load i32, ptr %12, align 4, !tbaa !5
  %22139 = load i32, ptr %8, align 4, !tbaa !5
  %22140 = mul nsw i32 54, %22139
  %22141 = add nsw i32 %22138, %22140
  %22142 = sext i32 %22141 to i64
  %22143 = getelementptr inbounds double, ptr %22137, i64 %22142
  %22144 = load double, ptr %22143, align 8, !tbaa !11
  %22145 = call double @llvm.fmuladd.f64(double 0xBC80F876CCDF6CD9, double %22144, double %22136)
  %22146 = load ptr, ptr %7, align 8, !tbaa !9
  %22147 = load i32, ptr %12, align 4, !tbaa !5
  %22148 = load i32, ptr %8, align 4, !tbaa !5
  %22149 = mul nsw i32 56, %22148
  %22150 = add nsw i32 %22147, %22149
  %22151 = sext i32 %22150 to i64
  %22152 = getelementptr inbounds double, ptr %22146, i64 %22151
  %22153 = load double, ptr %22152, align 8, !tbaa !11
  %22154 = call double @llvm.fmuladd.f64(double 0x3CA344C6E34858EB, double %22153, double %22145)
  %22155 = load ptr, ptr %7, align 8, !tbaa !9
  %22156 = load i32, ptr %12, align 4, !tbaa !5
  %22157 = load i32, ptr %8, align 4, !tbaa !5
  %22158 = mul nsw i32 57, %22157
  %22159 = add nsw i32 %22156, %22158
  %22160 = sext i32 %22159 to i64
  %22161 = getelementptr inbounds double, ptr %22155, i64 %22160
  %22162 = load double, ptr %22161, align 8, !tbaa !11
  %22163 = call double @llvm.fmuladd.f64(double 0x3C73CC8A99AF5453, double %22162, double %22154)
  %22164 = load ptr, ptr %7, align 8, !tbaa !9
  %22165 = load i32, ptr %12, align 4, !tbaa !5
  %22166 = load i32, ptr %8, align 4, !tbaa !5
  %22167 = mul nsw i32 58, %22166
  %22168 = add nsw i32 %22165, %22167
  %22169 = sext i32 %22168 to i64
  %22170 = getelementptr inbounds double, ptr %22164, i64 %22169
  %22171 = load double, ptr %22170, align 8, !tbaa !11
  %22172 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %22171, double %22163)
  %22173 = load ptr, ptr %7, align 8, !tbaa !9
  %22174 = load i32, ptr %12, align 4, !tbaa !5
  %22175 = load i32, ptr %8, align 4, !tbaa !5
  %22176 = mul nsw i32 59, %22175
  %22177 = add nsw i32 %22174, %22176
  %22178 = sext i32 %22177 to i64
  %22179 = getelementptr inbounds double, ptr %22173, i64 %22178
  %22180 = load double, ptr %22179, align 8, !tbaa !11
  %22181 = call double @llvm.fmuladd.f64(double 0xBCA0F876CCDF6CD8, double %22180, double %22172)
  %22182 = load ptr, ptr %7, align 8, !tbaa !9
  %22183 = load i32, ptr %12, align 4, !tbaa !5
  %22184 = load i32, ptr %8, align 4, !tbaa !5
  %22185 = mul nsw i32 60, %22184
  %22186 = add nsw i32 %22183, %22185
  %22187 = sext i32 %22186 to i64
  %22188 = getelementptr inbounds double, ptr %22182, i64 %22187
  %22189 = load double, ptr %22188, align 8, !tbaa !11
  %22190 = call double @llvm.fmuladd.f64(double 0xBCA344C6E34858EB, double %22189, double %22181)
  %22191 = load ptr, ptr %7, align 8, !tbaa !9
  %22192 = load i32, ptr %12, align 4, !tbaa !5
  %22193 = load i32, ptr %8, align 4, !tbaa !5
  %22194 = mul nsw i32 61, %22193
  %22195 = add nsw i32 %22192, %22194
  %22196 = sext i32 %22195 to i64
  %22197 = getelementptr inbounds double, ptr %22191, i64 %22196
  %22198 = load double, ptr %22197, align 8, !tbaa !11
  %22199 = call double @llvm.fmuladd.f64(double 0x3C91AD7BC01366B7, double %22198, double %22190)
  %22200 = load ptr, ptr %7, align 8, !tbaa !9
  %22201 = load i32, ptr %12, align 4, !tbaa !5
  %22202 = load i32, ptr %8, align 4, !tbaa !5
  %22203 = mul nsw i32 62, %22202
  %22204 = add nsw i32 %22201, %22203
  %22205 = sext i32 %22204 to i64
  %22206 = getelementptr inbounds double, ptr %22200, i64 %22205
  %22207 = load double, ptr %22206, align 8, !tbaa !11
  %22208 = call double @llvm.fmuladd.f64(double 0xBC90F876CCDF6CD9, double %22207, double %22199)
  %22209 = load ptr, ptr %7, align 8, !tbaa !9
  %22210 = load i32, ptr %12, align 4, !tbaa !5
  %22211 = load i32, ptr %8, align 4, !tbaa !5
  %22212 = mul nsw i32 63, %22211
  %22213 = add nsw i32 %22210, %22212
  %22214 = sext i32 %22213 to i64
  %22215 = getelementptr inbounds double, ptr %22209, i64 %22214
  %22216 = load double, ptr %22215, align 8, !tbaa !11
  %22217 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %22216, double %22208)
  %22218 = load ptr, ptr %7, align 8, !tbaa !9
  %22219 = load i32, ptr %12, align 4, !tbaa !5
  %22220 = load i32, ptr %8, align 4, !tbaa !5
  %22221 = mul nsw i32 64, %22220
  %22222 = add nsw i32 %22219, %22221
  %22223 = sext i32 %22222 to i64
  %22224 = getelementptr inbounds double, ptr %22218, i64 %22223
  %22225 = load double, ptr %22224, align 8, !tbaa !11
  %22226 = call double @llvm.fmuladd.f64(double 0xBFE7007BFD8FD859, double %22225, double %22217)
  %22227 = load ptr, ptr %7, align 8, !tbaa !9
  %22228 = load i32, ptr %12, align 4, !tbaa !5
  %22229 = load i32, ptr %8, align 4, !tbaa !5
  %22230 = mul nsw i32 65, %22229
  %22231 = add nsw i32 %22228, %22230
  %22232 = sext i32 %22231 to i64
  %22233 = getelementptr inbounds double, ptr %22227, i64 %22232
  %22234 = load double, ptr %22233, align 8, !tbaa !11
  %22235 = call double @llvm.fmuladd.f64(double 0xBFE66643AEED3706, double %22234, double %22226)
  %22236 = load ptr, ptr %7, align 8, !tbaa !9
  %22237 = load i32, ptr %12, align 4, !tbaa !5
  %22238 = load i32, ptr %8, align 4, !tbaa !5
  %22239 = mul nsw i32 66, %22238
  %22240 = add nsw i32 %22237, %22239
  %22241 = sext i32 %22240 to i64
  %22242 = getelementptr inbounds double, ptr %22236, i64 %22241
  %22243 = load double, ptr %22242, align 8, !tbaa !11
  %22244 = call double @llvm.fmuladd.f64(double 0x3FAD5B74B5F10E94, double %22243, double %22235)
  %22245 = load ptr, ptr %7, align 8, !tbaa !9
  %22246 = load i32, ptr %12, align 4, !tbaa !5
  %22247 = load i32, ptr %8, align 4, !tbaa !5
  %22248 = mul nsw i32 67, %22247
  %22249 = add nsw i32 %22246, %22248
  %22250 = sext i32 %22249 to i64
  %22251 = getelementptr inbounds double, ptr %22245, i64 %22250
  %22252 = load double, ptr %22251, align 8, !tbaa !11
  %22253 = call double @llvm.fmuladd.f64(double 0x3FA3F41B0E87BFBB, double %22252, double %22244)
  store double %22253, ptr %11, align 8, !tbaa !11
  %22254 = load double, ptr %11, align 8, !tbaa !11
  %22255 = load ptr, ptr %9, align 8, !tbaa !9
  %22256 = load i32, ptr %12, align 4, !tbaa !5
  %22257 = load i32, ptr %10, align 4, !tbaa !5
  %22258 = mul nsw i32 77, %22257
  %22259 = add nsw i32 %22256, %22258
  %22260 = sext i32 %22259 to i64
  %22261 = getelementptr inbounds double, ptr %22255, i64 %22260
  %22262 = load double, ptr %22261, align 8, !tbaa !11
  %22263 = fadd double %22262, %22254
  store double %22263, ptr %22261, align 8, !tbaa !11
  %22264 = load ptr, ptr %7, align 8, !tbaa !9
  %22265 = load i32, ptr %12, align 4, !tbaa !5
  %22266 = load i32, ptr %8, align 4, !tbaa !5
  %22267 = mul nsw i32 20, %22266
  %22268 = add nsw i32 %22265, %22267
  %22269 = sext i32 %22268 to i64
  %22270 = getelementptr inbounds double, ptr %22264, i64 %22269
  %22271 = load double, ptr %22270, align 8, !tbaa !11
  %22272 = load ptr, ptr %7, align 8, !tbaa !9
  %22273 = load i32, ptr %12, align 4, !tbaa !5
  %22274 = load i32, ptr %8, align 4, !tbaa !5
  %22275 = mul nsw i32 21, %22274
  %22276 = add nsw i32 %22273, %22275
  %22277 = sext i32 %22276 to i64
  %22278 = getelementptr inbounds double, ptr %22272, i64 %22277
  %22279 = load double, ptr %22278, align 8, !tbaa !11
  %22280 = fmul double 0xBC70000000000001, %22279
  %22281 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %22271, double %22280)
  %22282 = load ptr, ptr %7, align 8, !tbaa !9
  %22283 = load i32, ptr %12, align 4, !tbaa !5
  %22284 = load i32, ptr %8, align 4, !tbaa !5
  %22285 = mul nsw i32 22, %22284
  %22286 = add nsw i32 %22283, %22285
  %22287 = sext i32 %22286 to i64
  %22288 = getelementptr inbounds double, ptr %22282, i64 %22287
  %22289 = load double, ptr %22288, align 8, !tbaa !11
  %22290 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %22289, double %22281)
  %22291 = load ptr, ptr %7, align 8, !tbaa !9
  %22292 = load i32, ptr %12, align 4, !tbaa !5
  %22293 = load i32, ptr %8, align 4, !tbaa !5
  %22294 = mul nsw i32 23, %22293
  %22295 = add nsw i32 %22292, %22294
  %22296 = sext i32 %22295 to i64
  %22297 = getelementptr inbounds double, ptr %22291, i64 %22296
  %22298 = load double, ptr %22297, align 8, !tbaa !11
  %22299 = call double @llvm.fmuladd.f64(double 0xBC96000000000000, double %22298, double %22290)
  %22300 = load ptr, ptr %7, align 8, !tbaa !9
  %22301 = load i32, ptr %12, align 4, !tbaa !5
  %22302 = load i32, ptr %8, align 4, !tbaa !5
  %22303 = mul nsw i32 24, %22302
  %22304 = add nsw i32 %22301, %22303
  %22305 = sext i32 %22304 to i64
  %22306 = getelementptr inbounds double, ptr %22300, i64 %22305
  %22307 = load double, ptr %22306, align 8, !tbaa !11
  %22308 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %22307, double %22299)
  %22309 = load ptr, ptr %7, align 8, !tbaa !9
  %22310 = load i32, ptr %12, align 4, !tbaa !5
  %22311 = load i32, ptr %8, align 4, !tbaa !5
  %22312 = mul nsw i32 25, %22311
  %22313 = add nsw i32 %22310, %22312
  %22314 = sext i32 %22313 to i64
  %22315 = getelementptr inbounds double, ptr %22309, i64 %22314
  %22316 = load double, ptr %22315, align 8, !tbaa !11
  %22317 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %22316, double %22308)
  %22318 = load ptr, ptr %7, align 8, !tbaa !9
  %22319 = load i32, ptr %12, align 4, !tbaa !5
  %22320 = load i32, ptr %8, align 4, !tbaa !5
  %22321 = mul nsw i32 26, %22320
  %22322 = add nsw i32 %22319, %22321
  %22323 = sext i32 %22322 to i64
  %22324 = getelementptr inbounds double, ptr %22318, i64 %22323
  %22325 = load double, ptr %22324, align 8, !tbaa !11
  %22326 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %22325, double %22317)
  %22327 = load ptr, ptr %7, align 8, !tbaa !9
  %22328 = load i32, ptr %12, align 4, !tbaa !5
  %22329 = load i32, ptr %8, align 4, !tbaa !5
  %22330 = mul nsw i32 27, %22329
  %22331 = add nsw i32 %22328, %22330
  %22332 = sext i32 %22331 to i64
  %22333 = getelementptr inbounds double, ptr %22327, i64 %22332
  %22334 = load double, ptr %22333, align 8, !tbaa !11
  %22335 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %22334, double %22326)
  %22336 = load ptr, ptr %7, align 8, !tbaa !9
  %22337 = load i32, ptr %12, align 4, !tbaa !5
  %22338 = load i32, ptr %8, align 4, !tbaa !5
  %22339 = mul nsw i32 28, %22338
  %22340 = add nsw i32 %22337, %22339
  %22341 = sext i32 %22340 to i64
  %22342 = getelementptr inbounds double, ptr %22336, i64 %22341
  %22343 = load double, ptr %22342, align 8, !tbaa !11
  %22344 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %22343, double %22335)
  %22345 = load ptr, ptr %7, align 8, !tbaa !9
  %22346 = load i32, ptr %12, align 4, !tbaa !5
  %22347 = load i32, ptr %8, align 4, !tbaa !5
  %22348 = mul nsw i32 29, %22347
  %22349 = add nsw i32 %22346, %22348
  %22350 = sext i32 %22349 to i64
  %22351 = getelementptr inbounds double, ptr %22345, i64 %22350
  %22352 = load double, ptr %22351, align 8, !tbaa !11
  %22353 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %22352, double %22344)
  %22354 = load ptr, ptr %7, align 8, !tbaa !9
  %22355 = load i32, ptr %12, align 4, !tbaa !5
  %22356 = load i32, ptr %8, align 4, !tbaa !5
  %22357 = mul nsw i32 30, %22356
  %22358 = add nsw i32 %22355, %22357
  %22359 = sext i32 %22358 to i64
  %22360 = getelementptr inbounds double, ptr %22354, i64 %22359
  %22361 = load double, ptr %22360, align 8, !tbaa !11
  %22362 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %22361, double %22353)
  %22363 = load ptr, ptr %7, align 8, !tbaa !9
  %22364 = load i32, ptr %12, align 4, !tbaa !5
  %22365 = load i32, ptr %8, align 4, !tbaa !5
  %22366 = mul nsw i32 31, %22365
  %22367 = add nsw i32 %22364, %22366
  %22368 = sext i32 %22367 to i64
  %22369 = getelementptr inbounds double, ptr %22363, i64 %22368
  %22370 = load double, ptr %22369, align 8, !tbaa !11
  %22371 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %22370, double %22362)
  %22372 = load ptr, ptr %7, align 8, !tbaa !9
  %22373 = load i32, ptr %12, align 4, !tbaa !5
  %22374 = load i32, ptr %8, align 4, !tbaa !5
  %22375 = mul nsw i32 32, %22374
  %22376 = add nsw i32 %22373, %22375
  %22377 = sext i32 %22376 to i64
  %22378 = getelementptr inbounds double, ptr %22372, i64 %22377
  %22379 = load double, ptr %22378, align 8, !tbaa !11
  %22380 = call double @llvm.fmuladd.f64(double 0xBFE002F9665DF3D7, double %22379, double %22371)
  %22381 = load ptr, ptr %7, align 8, !tbaa !9
  %22382 = load i32, ptr %12, align 4, !tbaa !5
  %22383 = load i32, ptr %8, align 4, !tbaa !5
  %22384 = mul nsw i32 33, %22383
  %22385 = add nsw i32 %22382, %22384
  %22386 = sext i32 %22385 to i64
  %22387 = getelementptr inbounds double, ptr %22381, i64 %22386
  %22388 = load double, ptr %22387, align 8, !tbaa !11
  %22389 = call double @llvm.fmuladd.f64(double 0xBFEBF462FB348EF3, double %22388, double %22380)
  %22390 = load ptr, ptr %7, align 8, !tbaa !9
  %22391 = load i32, ptr %12, align 4, !tbaa !5
  %22392 = load i32, ptr %8, align 4, !tbaa !5
  %22393 = mul nsw i32 34, %22392
  %22394 = add nsw i32 %22391, %22393
  %22395 = sext i32 %22394 to i64
  %22396 = getelementptr inbounds double, ptr %22390, i64 %22395
  %22397 = load double, ptr %22396, align 8, !tbaa !11
  %22398 = call double @llvm.fmuladd.f64(double 0xBFD4C0B9406BCBCD, double %22397, double %22389)
  %22399 = load ptr, ptr %7, align 8, !tbaa !9
  %22400 = load i32, ptr %12, align 4, !tbaa !5
  %22401 = load i32, ptr %8, align 4, !tbaa !5
  %22402 = mul nsw i32 35, %22401
  %22403 = add nsw i32 %22400, %22402
  %22404 = sext i32 %22403 to i64
  %22405 = getelementptr inbounds double, ptr %22399, i64 %22404
  %22406 = load double, ptr %22405, align 8, !tbaa !11
  %22407 = call double @llvm.fmuladd.f64(double 0x3F980EB0AE1D4727, double %22406, double %22398)
  %22408 = load ptr, ptr %7, align 8, !tbaa !9
  %22409 = load i32, ptr %12, align 4, !tbaa !5
  %22410 = load i32, ptr %8, align 4, !tbaa !5
  %22411 = mul nsw i32 52, %22410
  %22412 = add nsw i32 %22409, %22411
  %22413 = sext i32 %22412 to i64
  %22414 = getelementptr inbounds double, ptr %22408, i64 %22413
  %22415 = load double, ptr %22414, align 8, !tbaa !11
  %22416 = call double @llvm.fmuladd.f64(double 0x3C6F1CD9CCEEF238, double %22415, double %22407)
  %22417 = load ptr, ptr %7, align 8, !tbaa !9
  %22418 = load i32, ptr %12, align 4, !tbaa !5
  %22419 = load i32, ptr %8, align 4, !tbaa !5
  %22420 = mul nsw i32 53, %22419
  %22421 = add nsw i32 %22418, %22420
  %22422 = sext i32 %22421 to i64
  %22423 = getelementptr inbounds double, ptr %22417, i64 %22422
  %22424 = load double, ptr %22423, align 8, !tbaa !11
  %22425 = call double @llvm.fmuladd.f64(double 0x3C8974B2334F2346, double %22424, double %22416)
  %22426 = load ptr, ptr %7, align 8, !tbaa !9
  %22427 = load i32, ptr %12, align 4, !tbaa !5
  %22428 = load i32, ptr %8, align 4, !tbaa !5
  %22429 = mul nsw i32 54, %22428
  %22430 = add nsw i32 %22427, %22429
  %22431 = sext i32 %22430 to i64
  %22432 = getelementptr inbounds double, ptr %22426, i64 %22431
  %22433 = load double, ptr %22432, align 8, !tbaa !11
  %22434 = call double @llvm.fmuladd.f64(double 0xBCAADEBC19B71703, double %22433, double %22425)
  %22435 = load ptr, ptr %7, align 8, !tbaa !9
  %22436 = load i32, ptr %12, align 4, !tbaa !5
  %22437 = load i32, ptr %8, align 4, !tbaa !5
  %22438 = mul nsw i32 55, %22437
  %22439 = add nsw i32 %22436, %22438
  %22440 = sext i32 %22439 to i64
  %22441 = getelementptr inbounds double, ptr %22435, i64 %22440
  %22442 = load double, ptr %22441, align 8, !tbaa !11
  %22443 = call double @llvm.fmuladd.f64(double 0x3C76A09E667F3BCD, double %22442, double %22434)
  %22444 = load ptr, ptr %7, align 8, !tbaa !9
  %22445 = load i32, ptr %12, align 4, !tbaa !5
  %22446 = load i32, ptr %8, align 4, !tbaa !5
  %22447 = mul nsw i32 56, %22446
  %22448 = add nsw i32 %22445, %22447
  %22449 = sext i32 %22448 to i64
  %22450 = getelementptr inbounds double, ptr %22444, i64 %22449
  %22451 = load double, ptr %22450, align 8, !tbaa !11
  %22452 = call double @llvm.fmuladd.f64(double 0x3C60F876CCDF6CD9, double %22451, double %22443)
  %22453 = load ptr, ptr %7, align 8, !tbaa !9
  %22454 = load i32, ptr %12, align 4, !tbaa !5
  %22455 = load i32, ptr %8, align 4, !tbaa !5
  %22456 = mul nsw i32 57, %22455
  %22457 = add nsw i32 %22454, %22456
  %22458 = sext i32 %22457 to i64
  %22459 = getelementptr inbounds double, ptr %22453, i64 %22458
  %22460 = load double, ptr %22459, align 8, !tbaa !11
  %22461 = call double @llvm.fmuladd.f64(double 0xBC8C48C6001F0AC0, double %22460, double %22452)
  %22462 = load ptr, ptr %7, align 8, !tbaa !9
  %22463 = load i32, ptr %12, align 4, !tbaa !5
  %22464 = load i32, ptr %8, align 4, !tbaa !5
  %22465 = mul nsw i32 58, %22464
  %22466 = add nsw i32 %22463, %22465
  %22467 = sext i32 %22466 to i64
  %22468 = getelementptr inbounds double, ptr %22462, i64 %22467
  %22469 = load double, ptr %22468, align 8, !tbaa !11
  %22470 = call double @llvm.fmuladd.f64(double 0xBCA6A09E667F3BCC, double %22469, double %22461)
  %22471 = load ptr, ptr %7, align 8, !tbaa !9
  %22472 = load i32, ptr %12, align 4, !tbaa !5
  %22473 = load i32, ptr %8, align 4, !tbaa !5
  %22474 = mul nsw i32 59, %22473
  %22475 = add nsw i32 %22472, %22474
  %22476 = sext i32 %22475 to i64
  %22477 = getelementptr inbounds double, ptr %22471, i64 %22476
  %22478 = load double, ptr %22477, align 8, !tbaa !11
  %22479 = call double @llvm.fmuladd.f64(double 0xBCA6A09E667F3BCC, double %22478, double %22470)
  %22480 = load ptr, ptr %7, align 8, !tbaa !9
  %22481 = load i32, ptr %12, align 4, !tbaa !5
  %22482 = load i32, ptr %8, align 4, !tbaa !5
  %22483 = mul nsw i32 60, %22482
  %22484 = add nsw i32 %22481, %22483
  %22485 = sext i32 %22484 to i64
  %22486 = getelementptr inbounds double, ptr %22480, i64 %22485
  %22487 = load double, ptr %22486, align 8, !tbaa !11
  %22488 = call double @llvm.fmuladd.f64(double 0x3C826280B3476096, double %22487, double %22479)
  %22489 = load ptr, ptr %7, align 8, !tbaa !9
  %22490 = load i32, ptr %12, align 4, !tbaa !5
  %22491 = load i32, ptr %8, align 4, !tbaa !5
  %22492 = mul nsw i32 61, %22491
  %22493 = add nsw i32 %22490, %22492
  %22494 = sext i32 %22493 to i64
  %22495 = getelementptr inbounds double, ptr %22489, i64 %22494
  %22496 = load double, ptr %22495, align 8, !tbaa !11
  %22497 = call double @llvm.fmuladd.f64(double 0x3C8C48C6001F0AC0, double %22496, double %22488)
  %22498 = load ptr, ptr %7, align 8, !tbaa !9
  %22499 = load i32, ptr %12, align 4, !tbaa !5
  %22500 = load i32, ptr %8, align 4, !tbaa !5
  %22501 = mul nsw i32 63, %22500
  %22502 = add nsw i32 %22499, %22501
  %22503 = sext i32 %22502 to i64
  %22504 = getelementptr inbounds double, ptr %22498, i64 %22503
  %22505 = load double, ptr %22504, align 8, !tbaa !11
  %22506 = call double @llvm.fmuladd.f64(double 0x3C96A09E667F3BCC, double %22505, double %22497)
  %22507 = load ptr, ptr %7, align 8, !tbaa !9
  %22508 = load i32, ptr %12, align 4, !tbaa !5
  %22509 = load i32, ptr %8, align 4, !tbaa !5
  %22510 = mul nsw i32 64, %22509
  %22511 = add nsw i32 %22508, %22510
  %22512 = sext i32 %22511 to i64
  %22513 = getelementptr inbounds double, ptr %22507, i64 %22512
  %22514 = load double, ptr %22513, align 8, !tbaa !11
  %22515 = call double @llvm.fmuladd.f64(double 0x3FA3F41B0E87BFEB, double %22514, double %22506)
  %22516 = load ptr, ptr %7, align 8, !tbaa !9
  %22517 = load i32, ptr %12, align 4, !tbaa !5
  %22518 = load i32, ptr %8, align 4, !tbaa !5
  %22519 = mul nsw i32 65, %22518
  %22520 = add nsw i32 %22517, %22519
  %22521 = sext i32 %22520 to i64
  %22522 = getelementptr inbounds double, ptr %22516, i64 %22521
  %22523 = load double, ptr %22522, align 8, !tbaa !11
  %22524 = call double @llvm.fmuladd.f64(double 0x3FAD5B74B5F10E92, double %22523, double %22515)
  %22525 = load ptr, ptr %7, align 8, !tbaa !9
  %22526 = load i32, ptr %12, align 4, !tbaa !5
  %22527 = load i32, ptr %8, align 4, !tbaa !5
  %22528 = mul nsw i32 66, %22527
  %22529 = add nsw i32 %22526, %22528
  %22530 = sext i32 %22529 to i64
  %22531 = getelementptr inbounds double, ptr %22525, i64 %22530
  %22532 = load double, ptr %22531, align 8, !tbaa !11
  %22533 = call double @llvm.fmuladd.f64(double 0xBFE66643AEED36FA, double %22532, double %22524)
  %22534 = load ptr, ptr %7, align 8, !tbaa !9
  %22535 = load i32, ptr %12, align 4, !tbaa !5
  %22536 = load i32, ptr %8, align 4, !tbaa !5
  %22537 = mul nsw i32 67, %22536
  %22538 = add nsw i32 %22535, %22537
  %22539 = sext i32 %22538 to i64
  %22540 = getelementptr inbounds double, ptr %22534, i64 %22539
  %22541 = load double, ptr %22540, align 8, !tbaa !11
  %22542 = call double @llvm.fmuladd.f64(double 0xBFE7007BFD8FD85B, double %22541, double %22533)
  store double %22542, ptr %11, align 8, !tbaa !11
  %22543 = load double, ptr %11, align 8, !tbaa !11
  %22544 = load ptr, ptr %9, align 8, !tbaa !9
  %22545 = load i32, ptr %12, align 4, !tbaa !5
  %22546 = load i32, ptr %10, align 4, !tbaa !5
  %22547 = mul nsw i32 78, %22546
  %22548 = add nsw i32 %22545, %22547
  %22549 = sext i32 %22548 to i64
  %22550 = getelementptr inbounds double, ptr %22544, i64 %22549
  %22551 = load double, ptr %22550, align 8, !tbaa !11
  %22552 = fadd double %22551, %22543
  store double %22552, ptr %22550, align 8, !tbaa !11
  %22553 = load ptr, ptr %7, align 8, !tbaa !9
  %22554 = load i32, ptr %12, align 4, !tbaa !5
  %22555 = load i32, ptr %8, align 4, !tbaa !5
  %22556 = mul nsw i32 20, %22555
  %22557 = add nsw i32 %22554, %22556
  %22558 = sext i32 %22557 to i64
  %22559 = getelementptr inbounds double, ptr %22553, i64 %22558
  %22560 = load double, ptr %22559, align 8, !tbaa !11
  %22561 = load ptr, ptr %7, align 8, !tbaa !9
  %22562 = load i32, ptr %12, align 4, !tbaa !5
  %22563 = load i32, ptr %8, align 4, !tbaa !5
  %22564 = mul nsw i32 21, %22563
  %22565 = add nsw i32 %22562, %22564
  %22566 = sext i32 %22565 to i64
  %22567 = getelementptr inbounds double, ptr %22561, i64 %22566
  %22568 = load double, ptr %22567, align 8, !tbaa !11
  %22569 = fmul double 0xBC88000000000000, %22568
  %22570 = call double @llvm.fmuladd.f64(double 0xBC96000000000000, double %22560, double %22569)
  %22571 = load ptr, ptr %7, align 8, !tbaa !9
  %22572 = load i32, ptr %12, align 4, !tbaa !5
  %22573 = load i32, ptr %8, align 4, !tbaa !5
  %22574 = mul nsw i32 22, %22573
  %22575 = add nsw i32 %22572, %22574
  %22576 = sext i32 %22575 to i64
  %22577 = getelementptr inbounds double, ptr %22571, i64 %22576
  %22578 = load double, ptr %22577, align 8, !tbaa !11
  %22579 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %22578, double %22570)
  %22580 = load ptr, ptr %7, align 8, !tbaa !9
  %22581 = load i32, ptr %12, align 4, !tbaa !5
  %22582 = load i32, ptr %8, align 4, !tbaa !5
  %22583 = mul nsw i32 23, %22582
  %22584 = add nsw i32 %22581, %22583
  %22585 = sext i32 %22584 to i64
  %22586 = getelementptr inbounds double, ptr %22580, i64 %22585
  %22587 = load double, ptr %22586, align 8, !tbaa !11
  %22588 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %22587, double %22579)
  %22589 = load ptr, ptr %7, align 8, !tbaa !9
  %22590 = load i32, ptr %12, align 4, !tbaa !5
  %22591 = load i32, ptr %8, align 4, !tbaa !5
  %22592 = mul nsw i32 24, %22591
  %22593 = add nsw i32 %22590, %22592
  %22594 = sext i32 %22593 to i64
  %22595 = getelementptr inbounds double, ptr %22589, i64 %22594
  %22596 = load double, ptr %22595, align 8, !tbaa !11
  %22597 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %22596, double %22588)
  %22598 = load ptr, ptr %7, align 8, !tbaa !9
  %22599 = load i32, ptr %12, align 4, !tbaa !5
  %22600 = load i32, ptr %8, align 4, !tbaa !5
  %22601 = mul nsw i32 25, %22600
  %22602 = add nsw i32 %22599, %22601
  %22603 = sext i32 %22602 to i64
  %22604 = getelementptr inbounds double, ptr %22598, i64 %22603
  %22605 = load double, ptr %22604, align 8, !tbaa !11
  %22606 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %22605, double %22597)
  %22607 = load ptr, ptr %7, align 8, !tbaa !9
  %22608 = load i32, ptr %12, align 4, !tbaa !5
  %22609 = load i32, ptr %8, align 4, !tbaa !5
  %22610 = mul nsw i32 26, %22609
  %22611 = add nsw i32 %22608, %22610
  %22612 = sext i32 %22611 to i64
  %22613 = getelementptr inbounds double, ptr %22607, i64 %22612
  %22614 = load double, ptr %22613, align 8, !tbaa !11
  %22615 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %22614, double %22606)
  %22616 = load ptr, ptr %7, align 8, !tbaa !9
  %22617 = load i32, ptr %12, align 4, !tbaa !5
  %22618 = load i32, ptr %8, align 4, !tbaa !5
  %22619 = mul nsw i32 27, %22618
  %22620 = add nsw i32 %22617, %22619
  %22621 = sext i32 %22620 to i64
  %22622 = getelementptr inbounds double, ptr %22616, i64 %22621
  %22623 = load double, ptr %22622, align 8, !tbaa !11
  %22624 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %22623, double %22615)
  %22625 = load ptr, ptr %7, align 8, !tbaa !9
  %22626 = load i32, ptr %12, align 4, !tbaa !5
  %22627 = load i32, ptr %8, align 4, !tbaa !5
  %22628 = mul nsw i32 28, %22627
  %22629 = add nsw i32 %22626, %22628
  %22630 = sext i32 %22629 to i64
  %22631 = getelementptr inbounds double, ptr %22625, i64 %22630
  %22632 = load double, ptr %22631, align 8, !tbaa !11
  %22633 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %22632, double %22624)
  %22634 = load ptr, ptr %7, align 8, !tbaa !9
  %22635 = load i32, ptr %12, align 4, !tbaa !5
  %22636 = load i32, ptr %8, align 4, !tbaa !5
  %22637 = mul nsw i32 29, %22636
  %22638 = add nsw i32 %22635, %22637
  %22639 = sext i32 %22638 to i64
  %22640 = getelementptr inbounds double, ptr %22634, i64 %22639
  %22641 = load double, ptr %22640, align 8, !tbaa !11
  %22642 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %22641, double %22633)
  %22643 = load ptr, ptr %7, align 8, !tbaa !9
  %22644 = load i32, ptr %12, align 4, !tbaa !5
  %22645 = load i32, ptr %8, align 4, !tbaa !5
  %22646 = mul nsw i32 30, %22645
  %22647 = add nsw i32 %22644, %22646
  %22648 = sext i32 %22647 to i64
  %22649 = getelementptr inbounds double, ptr %22643, i64 %22648
  %22650 = load double, ptr %22649, align 8, !tbaa !11
  %22651 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %22650, double %22642)
  %22652 = load ptr, ptr %7, align 8, !tbaa !9
  %22653 = load i32, ptr %12, align 4, !tbaa !5
  %22654 = load i32, ptr %8, align 4, !tbaa !5
  %22655 = mul nsw i32 31, %22654
  %22656 = add nsw i32 %22653, %22655
  %22657 = sext i32 %22656 to i64
  %22658 = getelementptr inbounds double, ptr %22652, i64 %22657
  %22659 = load double, ptr %22658, align 8, !tbaa !11
  %22660 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %22659, double %22651)
  %22661 = load ptr, ptr %7, align 8, !tbaa !9
  %22662 = load i32, ptr %12, align 4, !tbaa !5
  %22663 = load i32, ptr %8, align 4, !tbaa !5
  %22664 = mul nsw i32 32, %22663
  %22665 = add nsw i32 %22662, %22664
  %22666 = sext i32 %22665 to i64
  %22667 = getelementptr inbounds double, ptr %22661, i64 %22666
  %22668 = load double, ptr %22667, align 8, !tbaa !11
  %22669 = call double @llvm.fmuladd.f64(double 0x3F980EB0AE1D4719, double %22668, double %22660)
  %22670 = load ptr, ptr %7, align 8, !tbaa !9
  %22671 = load i32, ptr %12, align 4, !tbaa !5
  %22672 = load i32, ptr %8, align 4, !tbaa !5
  %22673 = mul nsw i32 33, %22672
  %22674 = add nsw i32 %22671, %22673
  %22675 = sext i32 %22674 to i64
  %22676 = getelementptr inbounds double, ptr %22670, i64 %22675
  %22677 = load double, ptr %22676, align 8, !tbaa !11
  %22678 = call double @llvm.fmuladd.f64(double 0xBFD4C0B9406BCBCD, double %22677, double %22669)
  %22679 = load ptr, ptr %7, align 8, !tbaa !9
  %22680 = load i32, ptr %12, align 4, !tbaa !5
  %22681 = load i32, ptr %8, align 4, !tbaa !5
  %22682 = mul nsw i32 34, %22681
  %22683 = add nsw i32 %22680, %22682
  %22684 = sext i32 %22683 to i64
  %22685 = getelementptr inbounds double, ptr %22679, i64 %22684
  %22686 = load double, ptr %22685, align 8, !tbaa !11
  %22687 = call double @llvm.fmuladd.f64(double 0xBFEBF462FB348EF3, double %22686, double %22678)
  %22688 = load ptr, ptr %7, align 8, !tbaa !9
  %22689 = load i32, ptr %12, align 4, !tbaa !5
  %22690 = load i32, ptr %8, align 4, !tbaa !5
  %22691 = mul nsw i32 35, %22690
  %22692 = add nsw i32 %22689, %22691
  %22693 = sext i32 %22692 to i64
  %22694 = getelementptr inbounds double, ptr %22688, i64 %22693
  %22695 = load double, ptr %22694, align 8, !tbaa !11
  %22696 = call double @llvm.fmuladd.f64(double 0xBFE002F9665DF3D7, double %22695, double %22687)
  %22697 = load ptr, ptr %7, align 8, !tbaa !9
  %22698 = load i32, ptr %12, align 4, !tbaa !5
  %22699 = load i32, ptr %8, align 4, !tbaa !5
  %22700 = mul nsw i32 52, %22699
  %22701 = add nsw i32 %22698, %22700
  %22702 = sext i32 %22701 to i64
  %22703 = getelementptr inbounds double, ptr %22697, i64 %22702
  %22704 = load double, ptr %22703, align 8, !tbaa !11
  %22705 = call double @llvm.fmuladd.f64(double 0xBC50F876CCDF6CD8, double %22704, double %22696)
  %22706 = load ptr, ptr %7, align 8, !tbaa !9
  %22707 = load i32, ptr %12, align 4, !tbaa !5
  %22708 = load i32, ptr %8, align 4, !tbaa !5
  %22709 = mul nsw i32 53, %22708
  %22710 = add nsw i32 %22707, %22709
  %22711 = sext i32 %22710 to i64
  %22712 = getelementptr inbounds double, ptr %22706, i64 %22711
  %22713 = load double, ptr %22712, align 8, !tbaa !11
  %22714 = call double @llvm.fmuladd.f64(double 0x3CA04371D9AB72FA, double %22713, double %22705)
  %22715 = load ptr, ptr %7, align 8, !tbaa !9
  %22716 = load i32, ptr %12, align 4, !tbaa !5
  %22717 = load i32, ptr %8, align 4, !tbaa !5
  %22718 = mul nsw i32 54, %22717
  %22719 = add nsw i32 %22716, %22718
  %22720 = sext i32 %22719 to i64
  %22721 = getelementptr inbounds double, ptr %22715, i64 %22720
  %22722 = load double, ptr %22721, align 8, !tbaa !11
  %22723 = call double @llvm.fmuladd.f64(double 0x3CBADEBC19B71701, double %22722, double %22714)
  %22724 = load ptr, ptr %7, align 8, !tbaa !9
  %22725 = load i32, ptr %12, align 4, !tbaa !5
  %22726 = load i32, ptr %8, align 4, !tbaa !5
  %22727 = mul nsw i32 55, %22726
  %22728 = add nsw i32 %22725, %22727
  %22729 = sext i32 %22728 to i64
  %22730 = getelementptr inbounds double, ptr %22724, i64 %22729
  %22731 = load double, ptr %22730, align 8, !tbaa !11
  %22732 = call double @llvm.fmuladd.f64(double 0x3C90F876CCDF6CD9, double %22731, double %22723)
  %22733 = load ptr, ptr %7, align 8, !tbaa !9
  %22734 = load i32, ptr %12, align 4, !tbaa !5
  %22735 = load i32, ptr %8, align 4, !tbaa !5
  %22736 = mul nsw i32 56, %22735
  %22737 = add nsw i32 %22734, %22736
  %22738 = sext i32 %22737 to i64
  %22739 = getelementptr inbounds double, ptr %22733, i64 %22738
  %22740 = load double, ptr %22739, align 8, !tbaa !11
  %22741 = call double @llvm.fmuladd.f64(double 0xBC6C48C6001F0ABE, double %22740, double %22732)
  %22742 = load ptr, ptr %7, align 8, !tbaa !9
  %22743 = load i32, ptr %12, align 4, !tbaa !5
  %22744 = load i32, ptr %8, align 4, !tbaa !5
  %22745 = mul nsw i32 57, %22744
  %22746 = add nsw i32 %22743, %22745
  %22747 = sext i32 %22746 to i64
  %22748 = getelementptr inbounds double, ptr %22742, i64 %22747
  %22749 = load double, ptr %22748, align 8, !tbaa !11
  %22750 = call double @llvm.fmuladd.f64(double 0x3C9974B2334F2346, double %22749, double %22741)
  %22751 = load ptr, ptr %7, align 8, !tbaa !9
  %22752 = load i32, ptr %12, align 4, !tbaa !5
  %22753 = load i32, ptr %8, align 4, !tbaa !5
  %22754 = mul nsw i32 58, %22753
  %22755 = add nsw i32 %22752, %22754
  %22756 = sext i32 %22755 to i64
  %22757 = getelementptr inbounds double, ptr %22751, i64 %22756
  %22758 = load double, ptr %22757, align 8, !tbaa !11
  %22759 = call double @llvm.fmuladd.f64(double 0x3CBADEBC19B71701, double %22758, double %22750)
  %22760 = load ptr, ptr %7, align 8, !tbaa !9
  %22761 = load i32, ptr %12, align 4, !tbaa !5
  %22762 = load i32, ptr %8, align 4, !tbaa !5
  %22763 = mul nsw i32 59, %22762
  %22764 = add nsw i32 %22761, %22763
  %22765 = sext i32 %22764 to i64
  %22766 = getelementptr inbounds double, ptr %22760, i64 %22765
  %22767 = load double, ptr %22766, align 8, !tbaa !11
  %22768 = call double @llvm.fmuladd.f64(double 0x3C96A09E667F3BCC, double %22767, double %22759)
  %22769 = load ptr, ptr %7, align 8, !tbaa !9
  %22770 = load i32, ptr %12, align 4, !tbaa !5
  %22771 = load i32, ptr %8, align 4, !tbaa !5
  %22772 = mul nsw i32 60, %22771
  %22773 = add nsw i32 %22770, %22772
  %22774 = sext i32 %22773 to i64
  %22775 = getelementptr inbounds double, ptr %22769, i64 %22774
  %22776 = load double, ptr %22775, align 8, !tbaa !11
  %22777 = call double @llvm.fmuladd.f64(double 0xBC7F1CD9CCEEF238, double %22776, double %22768)
  %22778 = load ptr, ptr %7, align 8, !tbaa !9
  %22779 = load i32, ptr %12, align 4, !tbaa !5
  %22780 = load i32, ptr %8, align 4, !tbaa !5
  %22781 = mul nsw i32 61, %22780
  %22782 = add nsw i32 %22779, %22781
  %22783 = sext i32 %22782 to i64
  %22784 = getelementptr inbounds double, ptr %22778, i64 %22783
  %22785 = load double, ptr %22784, align 8, !tbaa !11
  %22786 = call double @llvm.fmuladd.f64(double 0x3C80F876CCDF6CD9, double %22785, double %22777)
  %22787 = load ptr, ptr %7, align 8, !tbaa !9
  %22788 = load i32, ptr %12, align 4, !tbaa !5
  %22789 = load i32, ptr %8, align 4, !tbaa !5
  %22790 = mul nsw i32 62, %22789
  %22791 = add nsw i32 %22788, %22790
  %22792 = sext i32 %22791 to i64
  %22793 = getelementptr inbounds double, ptr %22787, i64 %22792
  %22794 = load double, ptr %22793, align 8, !tbaa !11
  %22795 = call double @llvm.fmuladd.f64(double 0x3C9C48C6001F0ABF, double %22794, double %22786)
  %22796 = load ptr, ptr %7, align 8, !tbaa !9
  %22797 = load i32, ptr %12, align 4, !tbaa !5
  %22798 = load i32, ptr %8, align 4, !tbaa !5
  %22799 = mul nsw i32 63, %22798
  %22800 = add nsw i32 %22797, %22799
  %22801 = sext i32 %22800 to i64
  %22802 = getelementptr inbounds double, ptr %22796, i64 %22801
  %22803 = load double, ptr %22802, align 8, !tbaa !11
  %22804 = call double @llvm.fmuladd.f64(double 0x3C86A09E667F3BCC, double %22803, double %22795)
  %22805 = load ptr, ptr %7, align 8, !tbaa !9
  %22806 = load i32, ptr %12, align 4, !tbaa !5
  %22807 = load i32, ptr %8, align 4, !tbaa !5
  %22808 = mul nsw i32 64, %22807
  %22809 = add nsw i32 %22806, %22808
  %22810 = sext i32 %22809 to i64
  %22811 = getelementptr inbounds double, ptr %22805, i64 %22810
  %22812 = load double, ptr %22811, align 8, !tbaa !11
  %22813 = call double @llvm.fmuladd.f64(double 0xBFB8DF388696F557, double %22812, double %22804)
  %22814 = load ptr, ptr %7, align 8, !tbaa !9
  %22815 = load i32, ptr %12, align 4, !tbaa !5
  %22816 = load i32, ptr %8, align 4, !tbaa !5
  %22817 = mul nsw i32 65, %22816
  %22818 = add nsw i32 %22815, %22817
  %22819 = sext i32 %22818 to i64
  %22820 = getelementptr inbounds double, ptr %22814, i64 %22819
  %22821 = load double, ptr %22820, align 8, !tbaa !11
  %22822 = call double @llvm.fmuladd.f64(double 0x3FD0C7817D9C3121, double %22821, double %22813)
  %22823 = load ptr, ptr %7, align 8, !tbaa !9
  %22824 = load i32, ptr %12, align 4, !tbaa !5
  %22825 = load i32, ptr %8, align 4, !tbaa !5
  %22826 = mul nsw i32 66, %22825
  %22827 = add nsw i32 %22824, %22826
  %22828 = sext i32 %22827 to i64
  %22829 = getelementptr inbounds double, ptr %22823, i64 %22828
  %22830 = load double, ptr %22829, align 8, !tbaa !11
  %22831 = call double @llvm.fmuladd.f64(double 0x4007001BD846D0A7, double %22830, double %22822)
  %22832 = load ptr, ptr %7, align 8, !tbaa !9
  %22833 = load i32, ptr %12, align 4, !tbaa !5
  %22834 = load i32, ptr %8, align 4, !tbaa !5
  %22835 = mul nsw i32 67, %22834
  %22836 = add nsw i32 %22833, %22835
  %22837 = sext i32 %22836 to i64
  %22838 = getelementptr inbounds double, ptr %22832, i64 %22837
  %22839 = load double, ptr %22838, align 8, !tbaa !11
  %22840 = call double @llvm.fmuladd.f64(double 0x3FD08C54FF1019F7, double %22839, double %22831)
  store double %22840, ptr %11, align 8, !tbaa !11
  %22841 = load double, ptr %11, align 8, !tbaa !11
  %22842 = load ptr, ptr %9, align 8, !tbaa !9
  %22843 = load i32, ptr %12, align 4, !tbaa !5
  %22844 = load i32, ptr %10, align 4, !tbaa !5
  %22845 = mul nsw i32 79, %22844
  %22846 = add nsw i32 %22843, %22845
  %22847 = sext i32 %22846 to i64
  %22848 = getelementptr inbounds double, ptr %22842, i64 %22847
  %22849 = load double, ptr %22848, align 8, !tbaa !11
  %22850 = fadd double %22849, %22841
  store double %22850, ptr %22848, align 8, !tbaa !11
  %22851 = load ptr, ptr %7, align 8, !tbaa !9
  %22852 = load i32, ptr %12, align 4, !tbaa !5
  %22853 = load i32, ptr %8, align 4, !tbaa !5
  %22854 = mul nsw i32 0, %22853
  %22855 = add nsw i32 %22852, %22854
  %22856 = sext i32 %22855 to i64
  %22857 = getelementptr inbounds double, ptr %22851, i64 %22856
  %22858 = load double, ptr %22857, align 8, !tbaa !11
  %22859 = load ptr, ptr %7, align 8, !tbaa !9
  %22860 = load i32, ptr %12, align 4, !tbaa !5
  %22861 = load i32, ptr %8, align 4, !tbaa !5
  %22862 = mul nsw i32 1, %22861
  %22863 = add nsw i32 %22860, %22862
  %22864 = sext i32 %22863 to i64
  %22865 = getelementptr inbounds double, ptr %22859, i64 %22864
  %22866 = load double, ptr %22865, align 8, !tbaa !11
  %22867 = fmul double 0x3CE1400000000000, %22866
  %22868 = call double @llvm.fmuladd.f64(double 0xC0118E7E1D8191B3, double %22858, double %22867)
  %22869 = load ptr, ptr %7, align 8, !tbaa !9
  %22870 = load i32, ptr %12, align 4, !tbaa !5
  %22871 = load i32, ptr %8, align 4, !tbaa !5
  %22872 = mul nsw i32 2, %22871
  %22873 = add nsw i32 %22870, %22872
  %22874 = sext i32 %22873 to i64
  %22875 = getelementptr inbounds double, ptr %22869, i64 %22874
  %22876 = load double, ptr %22875, align 8, !tbaa !11
  %22877 = call double @llvm.fmuladd.f64(double 0x3CE283FFFFFFFFFF, double %22876, double %22868)
  %22878 = load ptr, ptr %7, align 8, !tbaa !9
  %22879 = load i32, ptr %12, align 4, !tbaa !5
  %22880 = load i32, ptr %8, align 4, !tbaa !5
  %22881 = mul nsw i32 3, %22880
  %22882 = add nsw i32 %22879, %22881
  %22883 = sext i32 %22882 to i64
  %22884 = getelementptr inbounds double, ptr %22878, i64 %22883
  %22885 = load double, ptr %22884, align 8, !tbaa !11
  %22886 = call double @llvm.fmuladd.f64(double 0x3CE3740000000000, double %22885, double %22877)
  %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 4, %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 = call double @llvm.fmuladd.f64(double 0xBD07D80000000000, double %22894, double %22886)
  %22896 = load ptr, ptr %7, align 8, !tbaa !9
  %22897 = load i32, ptr %12, align 4, !tbaa !5
  %22898 = load i32, ptr %8, align 4, !tbaa !5
  %22899 = mul nsw i32 5, %22898
  %22900 = add nsw i32 %22897, %22899
  %22901 = sext i32 %22900 to i64
  %22902 = getelementptr inbounds double, ptr %22896, i64 %22901
  %22903 = load double, ptr %22902, align 8, !tbaa !11
  %22904 = call double @llvm.fmuladd.f64(double 0xBD07DFFFFFFFFFFD, double %22903, double %22895)
  %22905 = load ptr, ptr %7, align 8, !tbaa !9
  %22906 = load i32, ptr %12, align 4, !tbaa !5
  %22907 = load i32, ptr %8, align 4, !tbaa !5
  %22908 = mul nsw i32 6, %22907
  %22909 = add nsw i32 %22906, %22908
  %22910 = sext i32 %22909 to i64
  %22911 = getelementptr inbounds double, ptr %22905, i64 %22910
  %22912 = load double, ptr %22911, align 8, !tbaa !11
  %22913 = call double @llvm.fmuladd.f64(double 0xBD06F80000000003, double %22912, double %22904)
  %22914 = load ptr, ptr %7, align 8, !tbaa !9
  %22915 = load i32, ptr %12, align 4, !tbaa !5
  %22916 = load i32, ptr %8, align 4, !tbaa !5
  %22917 = mul nsw i32 7, %22916
  %22918 = add nsw i32 %22915, %22917
  %22919 = sext i32 %22918 to i64
  %22920 = getelementptr inbounds double, ptr %22914, i64 %22919
  %22921 = load double, ptr %22920, align 8, !tbaa !11
  %22922 = call double @llvm.fmuladd.f64(double 0xBD061A0000000000, double %22921, double %22913)
  %22923 = load ptr, ptr %7, align 8, !tbaa !9
  %22924 = load i32, ptr %12, align 4, !tbaa !5
  %22925 = load i32, ptr %8, align 4, !tbaa !5
  %22926 = mul nsw i32 8, %22925
  %22927 = add nsw i32 %22924, %22926
  %22928 = sext i32 %22927 to i64
  %22929 = getelementptr inbounds double, ptr %22923, i64 %22928
  %22930 = load double, ptr %22929, align 8, !tbaa !11
  %22931 = call double @llvm.fmuladd.f64(double 0xBD06DFFFFFFFFFFF, double %22930, double %22922)
  %22932 = load ptr, ptr %7, align 8, !tbaa !9
  %22933 = load i32, ptr %12, align 4, !tbaa !5
  %22934 = load i32, ptr %8, align 4, !tbaa !5
  %22935 = mul nsw i32 9, %22934
  %22936 = add nsw i32 %22933, %22935
  %22937 = sext i32 %22936 to i64
  %22938 = getelementptr inbounds double, ptr %22932, i64 %22937
  %22939 = load double, ptr %22938, align 8, !tbaa !11
  %22940 = call double @llvm.fmuladd.f64(double 0xBD06D80000000001, double %22939, double %22931)
  %22941 = load ptr, ptr %7, align 8, !tbaa !9
  %22942 = load i32, ptr %12, align 4, !tbaa !5
  %22943 = load i32, ptr %8, align 4, !tbaa !5
  %22944 = mul nsw i32 10, %22943
  %22945 = add nsw i32 %22942, %22944
  %22946 = sext i32 %22945 to i64
  %22947 = getelementptr inbounds double, ptr %22941, i64 %22946
  %22948 = load double, ptr %22947, align 8, !tbaa !11
  %22949 = call double @llvm.fmuladd.f64(double 0xBFD4F58312101B3F, double %22948, double %22940)
  %22950 = load ptr, ptr %7, align 8, !tbaa !9
  %22951 = load i32, ptr %12, align 4, !tbaa !5
  %22952 = load i32, ptr %8, align 4, !tbaa !5
  %22953 = mul nsw i32 11, %22952
  %22954 = add nsw i32 %22951, %22953
  %22955 = sext i32 %22954 to i64
  %22956 = getelementptr inbounds double, ptr %22950, i64 %22955
  %22957 = load double, ptr %22956, align 8, !tbaa !11
  %22958 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %22957, double %22949)
  %22959 = load ptr, ptr %7, align 8, !tbaa !9
  %22960 = load i32, ptr %12, align 4, !tbaa !5
  %22961 = load i32, ptr %8, align 4, !tbaa !5
  %22962 = mul nsw i32 12, %22961
  %22963 = add nsw i32 %22960, %22962
  %22964 = sext i32 %22963 to i64
  %22965 = getelementptr inbounds double, ptr %22959, i64 %22964
  %22966 = load double, ptr %22965, align 8, !tbaa !11
  %22967 = call double @llvm.fmuladd.f64(double 0x3CB0200000000000, double %22966, double %22958)
  %22968 = load ptr, ptr %7, align 8, !tbaa !9
  %22969 = load i32, ptr %12, align 4, !tbaa !5
  %22970 = load i32, ptr %8, align 4, !tbaa !5
  %22971 = mul nsw i32 13, %22970
  %22972 = add nsw i32 %22969, %22971
  %22973 = sext i32 %22972 to i64
  %22974 = getelementptr inbounds double, ptr %22968, i64 %22973
  %22975 = load double, ptr %22974, align 8, !tbaa !11
  %22976 = call double @llvm.fmuladd.f64(double 0x3CAD3FFFFFFFFFFF, double %22975, double %22967)
  %22977 = load ptr, ptr %7, align 8, !tbaa !9
  %22978 = load i32, ptr %12, align 4, !tbaa !5
  %22979 = load i32, ptr %8, align 4, !tbaa !5
  %22980 = mul nsw i32 14, %22979
  %22981 = add nsw i32 %22978, %22980
  %22982 = sext i32 %22981 to i64
  %22983 = getelementptr inbounds double, ptr %22977, i64 %22982
  %22984 = load double, ptr %22983, align 8, !tbaa !11
  %22985 = call double @llvm.fmuladd.f64(double 0xBCCF800000000000, double %22984, double %22976)
  %22986 = load ptr, ptr %7, align 8, !tbaa !9
  %22987 = load i32, ptr %12, align 4, !tbaa !5
  %22988 = load i32, ptr %8, align 4, !tbaa !5
  %22989 = mul nsw i32 15, %22988
  %22990 = add nsw i32 %22987, %22989
  %22991 = sext i32 %22990 to i64
  %22992 = getelementptr inbounds double, ptr %22986, i64 %22991
  %22993 = load double, ptr %22992, align 8, !tbaa !11
  %22994 = call double @llvm.fmuladd.f64(double 0xBCCE000000000000, double %22993, double %22985)
  %22995 = load ptr, ptr %7, align 8, !tbaa !9
  %22996 = load i32, ptr %12, align 4, !tbaa !5
  %22997 = load i32, ptr %8, align 4, !tbaa !5
  %22998 = mul nsw i32 16, %22997
  %22999 = add nsw i32 %22996, %22998
  %23000 = sext i32 %22999 to i64
  %23001 = getelementptr inbounds double, ptr %22995, i64 %23000
  %23002 = load double, ptr %23001, align 8, !tbaa !11
  %23003 = call double @llvm.fmuladd.f64(double 0xBCC9800000000000, double %23002, double %22994)
  %23004 = load ptr, ptr %7, align 8, !tbaa !9
  %23005 = load i32, ptr %12, align 4, !tbaa !5
  %23006 = load i32, ptr %8, align 4, !tbaa !5
  %23007 = mul nsw i32 17, %23006
  %23008 = add nsw i32 %23005, %23007
  %23009 = sext i32 %23008 to i64
  %23010 = getelementptr inbounds double, ptr %23004, i64 %23009
  %23011 = load double, ptr %23010, align 8, !tbaa !11
  %23012 = call double @llvm.fmuladd.f64(double 0xBCC7A00000000000, double %23011, double %23003)
  %23013 = load ptr, ptr %7, align 8, !tbaa !9
  %23014 = load i32, ptr %12, align 4, !tbaa !5
  %23015 = load i32, ptr %8, align 4, !tbaa !5
  %23016 = mul nsw i32 18, %23015
  %23017 = add nsw i32 %23014, %23016
  %23018 = sext i32 %23017 to i64
  %23019 = getelementptr inbounds double, ptr %23013, i64 %23018
  %23020 = load double, ptr %23019, align 8, !tbaa !11
  %23021 = call double @llvm.fmuladd.f64(double 0xBCCC000000000000, double %23020, double %23012)
  %23022 = load ptr, ptr %7, align 8, !tbaa !9
  %23023 = load i32, ptr %12, align 4, !tbaa !5
  %23024 = load i32, ptr %8, align 4, !tbaa !5
  %23025 = mul nsw i32 19, %23024
  %23026 = add nsw i32 %23023, %23025
  %23027 = sext i32 %23026 to i64
  %23028 = getelementptr inbounds double, ptr %23022, i64 %23027
  %23029 = load double, ptr %23028, align 8, !tbaa !11
  %23030 = call double @llvm.fmuladd.f64(double 0xBCCB800000000000, double %23029, double %23021)
  store double %23030, ptr %11, align 8, !tbaa !11
  %23031 = load double, ptr %11, align 8, !tbaa !11
  %23032 = load ptr, ptr %9, align 8, !tbaa !9
  %23033 = load i32, ptr %12, align 4, !tbaa !5
  %23034 = load i32, ptr %10, align 4, !tbaa !5
  %23035 = mul nsw i32 80, %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 = fadd double %23039, %23031
  store double %23040, ptr %23038, align 8, !tbaa !11
  %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 0, %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 = load ptr, ptr %7, align 8, !tbaa !9
  %23050 = load i32, ptr %12, align 4, !tbaa !5
  %23051 = load i32, ptr %8, align 4, !tbaa !5
  %23052 = mul nsw i32 1, %23051
  %23053 = add nsw i32 %23050, %23052
  %23054 = sext i32 %23053 to i64
  %23055 = getelementptr inbounds double, ptr %23049, i64 %23054
  %23056 = load double, ptr %23055, align 8, !tbaa !11
  %23057 = fmul double 0xC0118E7E1D819110, %23056
  %23058 = call double @llvm.fmuladd.f64(double 0x3D128FFFFFFFFFFF, double %23048, double %23057)
  %23059 = load ptr, ptr %7, align 8, !tbaa !9
  %23060 = load i32, ptr %12, align 4, !tbaa !5
  %23061 = load i32, ptr %8, align 4, !tbaa !5
  %23062 = mul nsw i32 2, %23061
  %23063 = add nsw i32 %23060, %23062
  %23064 = sext i32 %23063 to i64
  %23065 = getelementptr inbounds double, ptr %23059, i64 %23064
  %23066 = load double, ptr %23065, align 8, !tbaa !11
  %23067 = call double @llvm.fmuladd.f64(double 0xBCFD900000000000, double %23066, double %23058)
  %23068 = load ptr, ptr %7, align 8, !tbaa !9
  %23069 = load i32, ptr %12, align 4, !tbaa !5
  %23070 = load i32, ptr %8, align 4, !tbaa !5
  %23071 = mul nsw i32 3, %23070
  %23072 = add nsw i32 %23069, %23071
  %23073 = sext i32 %23072 to i64
  %23074 = getelementptr inbounds double, ptr %23068, i64 %23073
  %23075 = load double, ptr %23074, align 8, !tbaa !11
  %23076 = call double @llvm.fmuladd.f64(double 0xBD01500000000000, double %23075, double %23067)
  %23077 = load ptr, ptr %7, align 8, !tbaa !9
  %23078 = load i32, ptr %12, align 4, !tbaa !5
  %23079 = load i32, ptr %8, align 4, !tbaa !5
  %23080 = mul nsw i32 4, %23079
  %23081 = add nsw i32 %23078, %23080
  %23082 = sext i32 %23081 to i64
  %23083 = getelementptr inbounds double, ptr %23077, i64 %23082
  %23084 = load double, ptr %23083, align 8, !tbaa !11
  %23085 = call double @llvm.fmuladd.f64(double 0x3D04A00000000000, double %23084, double %23076)
  %23086 = load ptr, ptr %7, align 8, !tbaa !9
  %23087 = load i32, ptr %12, align 4, !tbaa !5
  %23088 = load i32, ptr %8, align 4, !tbaa !5
  %23089 = mul nsw i32 5, %23088
  %23090 = add nsw i32 %23087, %23089
  %23091 = sext i32 %23090 to i64
  %23092 = getelementptr inbounds double, ptr %23086, i64 %23091
  %23093 = load double, ptr %23092, align 8, !tbaa !11
  %23094 = call double @llvm.fmuladd.f64(double 0x3D02E00000000000, double %23093, double %23085)
  %23095 = load ptr, ptr %7, align 8, !tbaa !9
  %23096 = load i32, ptr %12, align 4, !tbaa !5
  %23097 = load i32, ptr %8, align 4, !tbaa !5
  %23098 = mul nsw i32 6, %23097
  %23099 = add nsw i32 %23096, %23098
  %23100 = sext i32 %23099 to i64
  %23101 = getelementptr inbounds double, ptr %23095, i64 %23100
  %23102 = load double, ptr %23101, align 8, !tbaa !11
  %23103 = call double @llvm.fmuladd.f64(double 0xBD07300000000002, double %23102, double %23094)
  %23104 = load ptr, ptr %7, align 8, !tbaa !9
  %23105 = load i32, ptr %12, align 4, !tbaa !5
  %23106 = load i32, ptr %8, align 4, !tbaa !5
  %23107 = mul nsw i32 7, %23106
  %23108 = add nsw i32 %23105, %23107
  %23109 = sext i32 %23108 to i64
  %23110 = getelementptr inbounds double, ptr %23104, i64 %23109
  %23111 = load double, ptr %23110, align 8, !tbaa !11
  %23112 = call double @llvm.fmuladd.f64(double 0xBD03980000000000, double %23111, double %23103)
  %23113 = load ptr, ptr %7, align 8, !tbaa !9
  %23114 = load i32, ptr %12, align 4, !tbaa !5
  %23115 = load i32, ptr %8, align 4, !tbaa !5
  %23116 = mul nsw i32 8, %23115
  %23117 = add nsw i32 %23114, %23116
  %23118 = sext i32 %23117 to i64
  %23119 = getelementptr inbounds double, ptr %23113, i64 %23118
  %23120 = load double, ptr %23119, align 8, !tbaa !11
  %23121 = call double @llvm.fmuladd.f64(double 0xBD2A980000000000, double %23120, double %23112)
  %23122 = load ptr, ptr %7, align 8, !tbaa !9
  %23123 = load i32, ptr %12, align 4, !tbaa !5
  %23124 = load i32, ptr %8, align 4, !tbaa !5
  %23125 = mul nsw i32 9, %23124
  %23126 = add nsw i32 %23123, %23125
  %23127 = sext i32 %23126 to i64
  %23128 = getelementptr inbounds double, ptr %23122, i64 %23127
  %23129 = load double, ptr %23128, align 8, !tbaa !11
  %23130 = call double @llvm.fmuladd.f64(double 0xBD2A480000000000, double %23129, double %23121)
  %23131 = load ptr, ptr %7, align 8, !tbaa !9
  %23132 = load i32, ptr %12, align 4, !tbaa !5
  %23133 = load i32, ptr %8, align 4, !tbaa !5
  %23134 = mul nsw i32 10, %23133
  %23135 = add nsw i32 %23132, %23134
  %23136 = sext i32 %23135 to i64
  %23137 = getelementptr inbounds double, ptr %23131, i64 %23136
  %23138 = load double, ptr %23137, align 8, !tbaa !11
  %23139 = call double @llvm.fmuladd.f64(double 0x3CD1000000000000, double %23138, double %23130)
  %23140 = load ptr, ptr %7, align 8, !tbaa !9
  %23141 = load i32, ptr %12, align 4, !tbaa !5
  %23142 = load i32, ptr %8, align 4, !tbaa !5
  %23143 = mul nsw i32 11, %23142
  %23144 = add nsw i32 %23141, %23143
  %23145 = sext i32 %23144 to i64
  %23146 = getelementptr inbounds double, ptr %23140, i64 %23145
  %23147 = load double, ptr %23146, align 8, !tbaa !11
  %23148 = call double @llvm.fmuladd.f64(double 0xBFD4F58312101A82, double %23147, double %23139)
  %23149 = load ptr, ptr %7, align 8, !tbaa !9
  %23150 = load i32, ptr %12, align 4, !tbaa !5
  %23151 = load i32, ptr %8, align 4, !tbaa !5
  %23152 = mul nsw i32 12, %23151
  %23153 = add nsw i32 %23150, %23152
  %23154 = sext i32 %23153 to i64
  %23155 = getelementptr inbounds double, ptr %23149, i64 %23154
  %23156 = load double, ptr %23155, align 8, !tbaa !11
  %23157 = call double @llvm.fmuladd.f64(double 0xBCBA000000000000, double %23156, double %23148)
  %23158 = load ptr, ptr %7, align 8, !tbaa !9
  %23159 = load i32, ptr %12, align 4, !tbaa !5
  %23160 = load i32, ptr %8, align 4, !tbaa !5
  %23161 = mul nsw i32 13, %23160
  %23162 = add nsw i32 %23159, %23161
  %23163 = sext i32 %23162 to i64
  %23164 = getelementptr inbounds double, ptr %23158, i64 %23163
  %23165 = load double, ptr %23164, align 8, !tbaa !11
  %23166 = call double @llvm.fmuladd.f64(double 0xBCC5000000000000, double %23165, double %23157)
  %23167 = load ptr, ptr %7, align 8, !tbaa !9
  %23168 = load i32, ptr %12, align 4, !tbaa !5
  %23169 = load i32, ptr %8, align 4, !tbaa !5
  %23170 = mul nsw i32 14, %23169
  %23171 = add nsw i32 %23168, %23170
  %23172 = sext i32 %23171 to i64
  %23173 = getelementptr inbounds double, ptr %23167, i64 %23172
  %23174 = load double, ptr %23173, align 8, !tbaa !11
  %23175 = call double @llvm.fmuladd.f64(double 0x3CCA000000000000, double %23174, double %23166)
  %23176 = load ptr, ptr %7, align 8, !tbaa !9
  %23177 = load i32, ptr %12, align 4, !tbaa !5
  %23178 = load i32, ptr %8, align 4, !tbaa !5
  %23179 = mul nsw i32 15, %23178
  %23180 = add nsw i32 %23177, %23179
  %23181 = sext i32 %23180 to i64
  %23182 = getelementptr inbounds double, ptr %23176, i64 %23181
  %23183 = load double, ptr %23182, align 8, !tbaa !11
  %23184 = call double @llvm.fmuladd.f64(double 0x3CC2000000000000, double %23183, double %23175)
  %23185 = load ptr, ptr %7, align 8, !tbaa !9
  %23186 = load i32, ptr %12, align 4, !tbaa !5
  %23187 = load i32, ptr %8, align 4, !tbaa !5
  %23188 = mul nsw i32 16, %23187
  %23189 = add nsw i32 %23186, %23188
  %23190 = sext i32 %23189 to i64
  %23191 = getelementptr inbounds double, ptr %23185, i64 %23190
  %23192 = load double, ptr %23191, align 8, !tbaa !11
  %23193 = call double @llvm.fmuladd.f64(double 0xBCD1800000000000, double %23192, double %23184)
  %23194 = load ptr, ptr %7, align 8, !tbaa !9
  %23195 = load i32, ptr %12, align 4, !tbaa !5
  %23196 = load i32, ptr %8, align 4, !tbaa !5
  %23197 = mul nsw i32 17, %23196
  %23198 = add nsw i32 %23195, %23197
  %23199 = sext i32 %23198 to i64
  %23200 = getelementptr inbounds double, ptr %23194, i64 %23199
  %23201 = load double, ptr %23200, align 8, !tbaa !11
  %23202 = call double @llvm.fmuladd.f64(double 0xBCCF800000000000, double %23201, double %23193)
  %23203 = load ptr, ptr %7, align 8, !tbaa !9
  %23204 = load i32, ptr %12, align 4, !tbaa !5
  %23205 = load i32, ptr %8, align 4, !tbaa !5
  %23206 = mul nsw i32 18, %23205
  %23207 = add nsw i32 %23204, %23206
  %23208 = sext i32 %23207 to i64
  %23209 = getelementptr inbounds double, ptr %23203, i64 %23208
  %23210 = load double, ptr %23209, align 8, !tbaa !11
  %23211 = call double @llvm.fmuladd.f64(double 0xBCF1400000000000, double %23210, double %23202)
  %23212 = load ptr, ptr %7, align 8, !tbaa !9
  %23213 = load i32, ptr %12, align 4, !tbaa !5
  %23214 = load i32, ptr %8, align 4, !tbaa !5
  %23215 = mul nsw i32 19, %23214
  %23216 = add nsw i32 %23213, %23215
  %23217 = sext i32 %23216 to i64
  %23218 = getelementptr inbounds double, ptr %23212, i64 %23217
  %23219 = load double, ptr %23218, align 8, !tbaa !11
  %23220 = call double @llvm.fmuladd.f64(double 0xBCF0400000000000, double %23219, double %23211)
  store double %23220, ptr %11, align 8, !tbaa !11
  %23221 = load double, ptr %11, align 8, !tbaa !11
  %23222 = load ptr, ptr %9, align 8, !tbaa !9
  %23223 = load i32, ptr %12, align 4, !tbaa !5
  %23224 = load i32, ptr %10, align 4, !tbaa !5
  %23225 = mul nsw i32 81, %23224
  %23226 = add nsw i32 %23223, %23225
  %23227 = sext i32 %23226 to i64
  %23228 = getelementptr inbounds double, ptr %23222, i64 %23227
  %23229 = load double, ptr %23228, align 8, !tbaa !11
  %23230 = fadd double %23229, %23221
  store double %23230, ptr %23228, align 8, !tbaa !11
  %23231 = load ptr, ptr %7, align 8, !tbaa !9
  %23232 = load i32, ptr %12, align 4, !tbaa !5
  %23233 = load i32, ptr %8, align 4, !tbaa !5
  %23234 = mul nsw i32 0, %23233
  %23235 = add nsw i32 %23232, %23234
  %23236 = sext i32 %23235 to i64
  %23237 = getelementptr inbounds double, ptr %23231, i64 %23236
  %23238 = load double, ptr %23237, align 8, !tbaa !11
  %23239 = load ptr, ptr %7, align 8, !tbaa !9
  %23240 = load i32, ptr %12, align 4, !tbaa !5
  %23241 = load i32, ptr %8, align 4, !tbaa !5
  %23242 = mul nsw i32 1, %23241
  %23243 = add nsw i32 %23240, %23242
  %23244 = sext i32 %23243 to i64
  %23245 = getelementptr inbounds double, ptr %23239, i64 %23244
  %23246 = load double, ptr %23245, align 8, !tbaa !11
  %23247 = fmul double 0xBCFF700000000000, %23246
  %23248 = call double @llvm.fmuladd.f64(double 0x3D11640000000000, double %23238, double %23247)
  %23249 = load ptr, ptr %7, align 8, !tbaa !9
  %23250 = load i32, ptr %12, align 4, !tbaa !5
  %23251 = load i32, ptr %8, align 4, !tbaa !5
  %23252 = mul nsw i32 2, %23251
  %23253 = add nsw i32 %23250, %23252
  %23254 = sext i32 %23253 to i64
  %23255 = getelementptr inbounds double, ptr %23249, i64 %23254
  %23256 = load double, ptr %23255, align 8, !tbaa !11
  %23257 = call double @llvm.fmuladd.f64(double 0xC0118E7E1D81910D, double %23256, double %23248)
  %23258 = load ptr, ptr %7, align 8, !tbaa !9
  %23259 = load i32, ptr %12, align 4, !tbaa !5
  %23260 = load i32, ptr %8, align 4, !tbaa !5
  %23261 = mul nsw i32 3, %23260
  %23262 = add nsw i32 %23259, %23261
  %23263 = sext i32 %23262 to i64
  %23264 = getelementptr inbounds double, ptr %23258, i64 %23263
  %23265 = load double, ptr %23264, align 8, !tbaa !11
  %23266 = call double @llvm.fmuladd.f64(double 0xBCFDD00000000000, double %23265, double %23257)
  %23267 = load ptr, ptr %7, align 8, !tbaa !9
  %23268 = load i32, ptr %12, align 4, !tbaa !5
  %23269 = load i32, ptr %8, align 4, !tbaa !5
  %23270 = mul nsw i32 4, %23269
  %23271 = add nsw i32 %23268, %23270
  %23272 = sext i32 %23271 to i64
  %23273 = getelementptr inbounds double, ptr %23267, i64 %23272
  %23274 = load double, ptr %23273, align 8, !tbaa !11
  %23275 = call double @llvm.fmuladd.f64(double 0xBD2AFF0000000001, double %23274, double %23266)
  %23276 = load ptr, ptr %7, align 8, !tbaa !9
  %23277 = load i32, ptr %12, align 4, !tbaa !5
  %23278 = load i32, ptr %8, align 4, !tbaa !5
  %23279 = mul nsw i32 5, %23278
  %23280 = add nsw i32 %23277, %23279
  %23281 = sext i32 %23280 to i64
  %23282 = getelementptr inbounds double, ptr %23276, i64 %23281
  %23283 = load double, ptr %23282, align 8, !tbaa !11
  %23284 = call double @llvm.fmuladd.f64(double 0xBD05940000000000, double %23283, double %23275)
  %23285 = load ptr, ptr %7, align 8, !tbaa !9
  %23286 = load i32, ptr %12, align 4, !tbaa !5
  %23287 = load i32, ptr %8, align 4, !tbaa !5
  %23288 = mul nsw i32 6, %23287
  %23289 = add nsw i32 %23286, %23288
  %23290 = sext i32 %23289 to i64
  %23291 = getelementptr inbounds double, ptr %23285, i64 %23290
  %23292 = load double, ptr %23291, align 8, !tbaa !11
  %23293 = call double @llvm.fmuladd.f64(double 0x3CFD7C0000000000, double %23292, double %23284)
  %23294 = load ptr, ptr %7, align 8, !tbaa !9
  %23295 = load i32, ptr %12, align 4, !tbaa !5
  %23296 = load i32, ptr %8, align 4, !tbaa !5
  %23297 = mul nsw i32 7, %23296
  %23298 = add nsw i32 %23295, %23297
  %23299 = sext i32 %23298 to i64
  %23300 = getelementptr inbounds double, ptr %23294, i64 %23299
  %23301 = load double, ptr %23300, align 8, !tbaa !11
  %23302 = call double @llvm.fmuladd.f64(double 0xBD2BB78000000000, double %23301, double %23293)
  %23303 = load ptr, ptr %7, align 8, !tbaa !9
  %23304 = load i32, ptr %12, align 4, !tbaa !5
  %23305 = load i32, ptr %8, align 4, !tbaa !5
  %23306 = mul nsw i32 8, %23305
  %23307 = add nsw i32 %23304, %23306
  %23308 = sext i32 %23307 to i64
  %23309 = getelementptr inbounds double, ptr %23303, i64 %23308
  %23310 = load double, ptr %23309, align 8, !tbaa !11
  %23311 = call double @llvm.fmuladd.f64(double 0xBD06580000000000, double %23310, double %23302)
  %23312 = load ptr, ptr %7, align 8, !tbaa !9
  %23313 = load i32, ptr %12, align 4, !tbaa !5
  %23314 = load i32, ptr %8, align 4, !tbaa !5
  %23315 = mul nsw i32 9, %23314
  %23316 = add nsw i32 %23313, %23315
  %23317 = sext i32 %23316 to i64
  %23318 = getelementptr inbounds double, ptr %23312, i64 %23317
  %23319 = load double, ptr %23318, align 8, !tbaa !11
  %23320 = call double @llvm.fmuladd.f64(double 0x3D03000000000000, double %23319, double %23311)
  %23321 = load ptr, ptr %7, align 8, !tbaa !9
  %23322 = load i32, ptr %12, align 4, !tbaa !5
  %23323 = load i32, ptr %8, align 4, !tbaa !5
  %23324 = mul nsw i32 10, %23323
  %23325 = add nsw i32 %23322, %23324
  %23326 = sext i32 %23325 to i64
  %23327 = getelementptr inbounds double, ptr %23321, i64 %23326
  %23328 = load double, ptr %23327, align 8, !tbaa !11
  %23329 = call double @llvm.fmuladd.f64(double 0x3CDA400000000000, double %23328, double %23320)
  %23330 = load ptr, ptr %7, align 8, !tbaa !9
  %23331 = load i32, ptr %12, align 4, !tbaa !5
  %23332 = load i32, ptr %8, align 4, !tbaa !5
  %23333 = mul nsw i32 11, %23332
  %23334 = add nsw i32 %23331, %23333
  %23335 = sext i32 %23334 to i64
  %23336 = getelementptr inbounds double, ptr %23330, i64 %23335
  %23337 = load double, ptr %23336, align 8, !tbaa !11
  %23338 = call double @llvm.fmuladd.f64(double 0xBCC0800000000000, double %23337, double %23329)
  %23339 = load ptr, ptr %7, align 8, !tbaa !9
  %23340 = load i32, ptr %12, align 4, !tbaa !5
  %23341 = load i32, ptr %8, align 4, !tbaa !5
  %23342 = mul nsw i32 12, %23341
  %23343 = add nsw i32 %23340, %23342
  %23344 = sext i32 %23343 to i64
  %23345 = getelementptr inbounds double, ptr %23339, i64 %23344
  %23346 = load double, ptr %23345, align 8, !tbaa !11
  %23347 = call double @llvm.fmuladd.f64(double 0xBFD4F58312101A79, double %23346, double %23338)
  %23348 = load ptr, ptr %7, align 8, !tbaa !9
  %23349 = load i32, ptr %12, align 4, !tbaa !5
  %23350 = load i32, ptr %8, align 4, !tbaa !5
  %23351 = mul nsw i32 13, %23350
  %23352 = add nsw i32 %23349, %23351
  %23353 = sext i32 %23352 to i64
  %23354 = getelementptr inbounds double, ptr %23348, i64 %23353
  %23355 = load double, ptr %23354, align 8, !tbaa !11
  %23356 = call double @llvm.fmuladd.f64(double 0xBCCB800000000000, double %23355, double %23347)
  %23357 = load ptr, ptr %7, align 8, !tbaa !9
  %23358 = load i32, ptr %12, align 4, !tbaa !5
  %23359 = load i32, ptr %8, align 4, !tbaa !5
  %23360 = mul nsw i32 14, %23359
  %23361 = add nsw i32 %23358, %23360
  %23362 = sext i32 %23361 to i64
  %23363 = getelementptr inbounds double, ptr %23357, i64 %23362
  %23364 = load double, ptr %23363, align 8, !tbaa !11
  %23365 = call double @llvm.fmuladd.f64(double 0xBCEDEFFFFFFFFFFF, double %23364, double %23356)
  %23366 = load ptr, ptr %7, align 8, !tbaa !9
  %23367 = load i32, ptr %12, align 4, !tbaa !5
  %23368 = load i32, ptr %8, align 4, !tbaa !5
  %23369 = mul nsw i32 15, %23368
  %23370 = add nsw i32 %23367, %23369
  %23371 = sext i32 %23370 to i64
  %23372 = getelementptr inbounds double, ptr %23366, i64 %23371
  %23373 = load double, ptr %23372, align 8, !tbaa !11
  %23374 = call double @llvm.fmuladd.f64(double 0xBCC7400000000000, double %23373, double %23365)
  %23375 = load ptr, ptr %7, align 8, !tbaa !9
  %23376 = load i32, ptr %12, align 4, !tbaa !5
  %23377 = load i32, ptr %8, align 4, !tbaa !5
  %23378 = mul nsw i32 16, %23377
  %23379 = add nsw i32 %23376, %23378
  %23380 = sext i32 %23379 to i64
  %23381 = getelementptr inbounds double, ptr %23375, i64 %23380
  %23382 = load double, ptr %23381, align 8, !tbaa !11
  %23383 = call double @llvm.fmuladd.f64(double 0x3CBBC00000000001, double %23382, double %23374)
  %23384 = load ptr, ptr %7, align 8, !tbaa !9
  %23385 = load i32, ptr %12, align 4, !tbaa !5
  %23386 = load i32, ptr %8, align 4, !tbaa !5
  %23387 = mul nsw i32 17, %23386
  %23388 = add nsw i32 %23385, %23387
  %23389 = sext i32 %23388 to i64
  %23390 = getelementptr inbounds double, ptr %23384, i64 %23389
  %23391 = load double, ptr %23390, align 8, !tbaa !11
  %23392 = call double @llvm.fmuladd.f64(double 0xBCF03C0000000000, double %23391, double %23383)
  %23393 = load ptr, ptr %7, align 8, !tbaa !9
  %23394 = load i32, ptr %12, align 4, !tbaa !5
  %23395 = load i32, ptr %8, align 4, !tbaa !5
  %23396 = mul nsw i32 18, %23395
  %23397 = add nsw i32 %23394, %23396
  %23398 = sext i32 %23397 to i64
  %23399 = getelementptr inbounds double, ptr %23393, i64 %23398
  %23400 = load double, ptr %23399, align 8, !tbaa !11
  %23401 = call double @llvm.fmuladd.f64(double 0xBCC3800000000000, double %23400, double %23392)
  %23402 = load ptr, ptr %7, align 8, !tbaa !9
  %23403 = load i32, ptr %12, align 4, !tbaa !5
  %23404 = load i32, ptr %8, align 4, !tbaa !5
  %23405 = mul nsw i32 19, %23404
  %23406 = add nsw i32 %23403, %23405
  %23407 = sext i32 %23406 to i64
  %23408 = getelementptr inbounds double, ptr %23402, i64 %23407
  %23409 = load double, ptr %23408, align 8, !tbaa !11
  %23410 = call double @llvm.fmuladd.f64(double 0x3CD0000000000000, double %23409, double %23401)
  store double %23410, ptr %11, align 8, !tbaa !11
  %23411 = load double, ptr %11, align 8, !tbaa !11
  %23412 = load ptr, ptr %9, align 8, !tbaa !9
  %23413 = load i32, ptr %12, align 4, !tbaa !5
  %23414 = load i32, ptr %10, align 4, !tbaa !5
  %23415 = mul nsw i32 82, %23414
  %23416 = add nsw i32 %23413, %23415
  %23417 = sext i32 %23416 to i64
  %23418 = getelementptr inbounds double, ptr %23412, i64 %23417
  %23419 = load double, ptr %23418, align 8, !tbaa !11
  %23420 = fadd double %23419, %23411
  store double %23420, ptr %23418, align 8, !tbaa !11
  %23421 = load ptr, ptr %7, align 8, !tbaa !9
  %23422 = load i32, ptr %12, align 4, !tbaa !5
  %23423 = load i32, ptr %8, align 4, !tbaa !5
  %23424 = mul nsw i32 0, %23423
  %23425 = add nsw i32 %23422, %23424
  %23426 = sext i32 %23425 to i64
  %23427 = getelementptr inbounds double, ptr %23421, i64 %23426
  %23428 = load double, ptr %23427, align 8, !tbaa !11
  %23429 = load ptr, ptr %7, align 8, !tbaa !9
  %23430 = load i32, ptr %12, align 4, !tbaa !5
  %23431 = load i32, ptr %8, align 4, !tbaa !5
  %23432 = mul nsw i32 1, %23431
  %23433 = add nsw i32 %23430, %23432
  %23434 = sext i32 %23433 to i64
  %23435 = getelementptr inbounds double, ptr %23429, i64 %23434
  %23436 = load double, ptr %23435, align 8, !tbaa !11
  %23437 = fmul double 0xBCFDF00000000000, %23436
  %23438 = call double @llvm.fmuladd.f64(double 0x3D11F40000000000, double %23428, double %23437)
  %23439 = load ptr, ptr %7, align 8, !tbaa !9
  %23440 = load i32, ptr %12, align 4, !tbaa !5
  %23441 = load i32, ptr %8, align 4, !tbaa !5
  %23442 = mul nsw i32 2, %23441
  %23443 = add nsw i32 %23440, %23442
  %23444 = sext i32 %23443 to i64
  %23445 = getelementptr inbounds double, ptr %23439, i64 %23444
  %23446 = load double, ptr %23445, align 8, !tbaa !11
  %23447 = call double @llvm.fmuladd.f64(double 0xBCFE2C0000000000, double %23446, double %23438)
  %23448 = load ptr, ptr %7, align 8, !tbaa !9
  %23449 = load i32, ptr %12, align 4, !tbaa !5
  %23450 = load i32, ptr %8, align 4, !tbaa !5
  %23451 = mul nsw i32 3, %23450
  %23452 = add nsw i32 %23449, %23451
  %23453 = sext i32 %23452 to i64
  %23454 = getelementptr inbounds double, ptr %23448, i64 %23453
  %23455 = load double, ptr %23454, align 8, !tbaa !11
  %23456 = call double @llvm.fmuladd.f64(double 0xC0118E7E1D81910E, double %23455, double %23447)
  %23457 = load ptr, ptr %7, align 8, !tbaa !9
  %23458 = load i32, ptr %12, align 4, !tbaa !5
  %23459 = load i32, ptr %8, align 4, !tbaa !5
  %23460 = mul nsw i32 4, %23459
  %23461 = add nsw i32 %23458, %23460
  %23462 = sext i32 %23461 to i64
  %23463 = getelementptr inbounds double, ptr %23457, i64 %23462
  %23464 = load double, ptr %23463, align 8, !tbaa !11
  %23465 = call double @llvm.fmuladd.f64(double 0xBD05CC0000000000, double %23464, double %23456)
  %23466 = load ptr, ptr %7, align 8, !tbaa !9
  %23467 = load i32, ptr %12, align 4, !tbaa !5
  %23468 = load i32, ptr %8, align 4, !tbaa !5
  %23469 = mul nsw i32 5, %23468
  %23470 = add nsw i32 %23467, %23469
  %23471 = sext i32 %23470 to i64
  %23472 = getelementptr inbounds double, ptr %23466, i64 %23471
  %23473 = load double, ptr %23472, align 8, !tbaa !11
  %23474 = call double @llvm.fmuladd.f64(double 0xBD2B7D0000000001, double %23473, double %23465)
  %23475 = load ptr, ptr %7, align 8, !tbaa !9
  %23476 = load i32, ptr %12, align 4, !tbaa !5
  %23477 = load i32, ptr %8, align 4, !tbaa !5
  %23478 = mul nsw i32 6, %23477
  %23479 = add nsw i32 %23476, %23478
  %23480 = sext i32 %23479 to i64
  %23481 = getelementptr inbounds double, ptr %23475, i64 %23480
  %23482 = load double, ptr %23481, align 8, !tbaa !11
  %23483 = call double @llvm.fmuladd.f64(double 0xBD2A8F8000000000, double %23482, double %23474)
  %23484 = load ptr, ptr %7, align 8, !tbaa !9
  %23485 = load i32, ptr %12, align 4, !tbaa !5
  %23486 = load i32, ptr %8, align 4, !tbaa !5
  %23487 = mul nsw i32 7, %23486
  %23488 = add nsw i32 %23485, %23487
  %23489 = sext i32 %23488 to i64
  %23490 = getelementptr inbounds double, ptr %23484, i64 %23489
  %23491 = load double, ptr %23490, align 8, !tbaa !11
  %23492 = call double @llvm.fmuladd.f64(double 0x3CF99C0000000000, double %23491, double %23483)
  %23493 = load ptr, ptr %7, align 8, !tbaa !9
  %23494 = load i32, ptr %12, align 4, !tbaa !5
  %23495 = load i32, ptr %8, align 4, !tbaa !5
  %23496 = mul nsw i32 8, %23495
  %23497 = add nsw i32 %23494, %23496
  %23498 = sext i32 %23497 to i64
  %23499 = getelementptr inbounds double, ptr %23493, i64 %23498
  %23500 = load double, ptr %23499, align 8, !tbaa !11
  %23501 = call double @llvm.fmuladd.f64(double 0x3D02C00000000000, double %23500, double %23492)
  %23502 = load ptr, ptr %7, align 8, !tbaa !9
  %23503 = load i32, ptr %12, align 4, !tbaa !5
  %23504 = load i32, ptr %8, align 4, !tbaa !5
  %23505 = mul nsw i32 9, %23504
  %23506 = add nsw i32 %23503, %23505
  %23507 = sext i32 %23506 to i64
  %23508 = getelementptr inbounds double, ptr %23502, i64 %23507
  %23509 = load double, ptr %23508, align 8, !tbaa !11
  %23510 = call double @llvm.fmuladd.f64(double 0xBD06F80000000003, double %23509, double %23501)
  %23511 = load ptr, ptr %7, align 8, !tbaa !9
  %23512 = load i32, ptr %12, align 4, !tbaa !5
  %23513 = load i32, ptr %8, align 4, !tbaa !5
  %23514 = mul nsw i32 10, %23513
  %23515 = add nsw i32 %23512, %23514
  %23516 = sext i32 %23515 to i64
  %23517 = getelementptr inbounds double, ptr %23511, i64 %23516
  %23518 = load double, ptr %23517, align 8, !tbaa !11
  %23519 = call double @llvm.fmuladd.f64(double 0x3CD93FFFFFFFFFFF, double %23518, double %23510)
  %23520 = load ptr, ptr %7, align 8, !tbaa !9
  %23521 = load i32, ptr %12, align 4, !tbaa !5
  %23522 = load i32, ptr %8, align 4, !tbaa !5
  %23523 = mul nsw i32 11, %23522
  %23524 = add nsw i32 %23521, %23523
  %23525 = sext i32 %23524 to i64
  %23526 = getelementptr inbounds double, ptr %23520, i64 %23525
  %23527 = load double, ptr %23526, align 8, !tbaa !11
  %23528 = call double @llvm.fmuladd.f64(double 0xBCC0800000000000, double %23527, double %23519)
  %23529 = load ptr, ptr %7, align 8, !tbaa !9
  %23530 = load i32, ptr %12, align 4, !tbaa !5
  %23531 = load i32, ptr %8, align 4, !tbaa !5
  %23532 = mul nsw i32 12, %23531
  %23533 = add nsw i32 %23530, %23532
  %23534 = sext i32 %23533 to i64
  %23535 = getelementptr inbounds double, ptr %23529, i64 %23534
  %23536 = load double, ptr %23535, align 8, !tbaa !11
  %23537 = call double @llvm.fmuladd.f64(double 0xBCC0600000000000, double %23536, double %23528)
  %23538 = load ptr, ptr %7, align 8, !tbaa !9
  %23539 = load i32, ptr %12, align 4, !tbaa !5
  %23540 = load i32, ptr %8, align 4, !tbaa !5
  %23541 = mul nsw i32 13, %23540
  %23542 = add nsw i32 %23539, %23541
  %23543 = sext i32 %23542 to i64
  %23544 = getelementptr inbounds double, ptr %23538, i64 %23543
  %23545 = load double, ptr %23544, align 8, !tbaa !11
  %23546 = call double @llvm.fmuladd.f64(double 0xBFD4F58312101A7B, double %23545, double %23537)
  %23547 = load ptr, ptr %7, align 8, !tbaa !9
  %23548 = load i32, ptr %12, align 4, !tbaa !5
  %23549 = load i32, ptr %8, align 4, !tbaa !5
  %23550 = mul nsw i32 14, %23549
  %23551 = add nsw i32 %23548, %23550
  %23552 = sext i32 %23551 to i64
  %23553 = getelementptr inbounds double, ptr %23547, i64 %23552
  %23554 = load double, ptr %23553, align 8, !tbaa !11
  %23555 = call double @llvm.fmuladd.f64(double 0xBCC8C00000000000, double %23554, double %23546)
  %23556 = load ptr, ptr %7, align 8, !tbaa !9
  %23557 = load i32, ptr %12, align 4, !tbaa !5
  %23558 = load i32, ptr %8, align 4, !tbaa !5
  %23559 = mul nsw i32 15, %23558
  %23560 = add nsw i32 %23557, %23559
  %23561 = sext i32 %23560 to i64
  %23562 = getelementptr inbounds double, ptr %23556, i64 %23561
  %23563 = load double, ptr %23562, align 8, !tbaa !11
  %23564 = call double @llvm.fmuladd.f64(double 0xBCEED00000000001, double %23563, double %23555)
  %23565 = load ptr, ptr %7, align 8, !tbaa !9
  %23566 = load i32, ptr %12, align 4, !tbaa !5
  %23567 = load i32, ptr %8, align 4, !tbaa !5
  %23568 = mul nsw i32 16, %23567
  %23569 = add nsw i32 %23566, %23568
  %23570 = sext i32 %23569 to i64
  %23571 = getelementptr inbounds double, ptr %23565, i64 %23570
  %23572 = load double, ptr %23571, align 8, !tbaa !11
  %23573 = call double @llvm.fmuladd.f64(double 0xBCEFF7FFFFFFFFFF, double %23572, double %23564)
  %23574 = load ptr, ptr %7, align 8, !tbaa !9
  %23575 = load i32, ptr %12, align 4, !tbaa !5
  %23576 = load i32, ptr %8, align 4, !tbaa !5
  %23577 = mul nsw i32 17, %23576
  %23578 = add nsw i32 %23575, %23577
  %23579 = sext i32 %23578 to i64
  %23580 = getelementptr inbounds double, ptr %23574, i64 %23579
  %23581 = load double, ptr %23580, align 8, !tbaa !11
  %23582 = call double @llvm.fmuladd.f64(double 0x3CCCE00000000000, double %23581, double %23573)
  %23583 = load ptr, ptr %7, align 8, !tbaa !9
  %23584 = load i32, ptr %12, align 4, !tbaa !5
  %23585 = load i32, ptr %8, align 4, !tbaa !5
  %23586 = mul nsw i32 18, %23585
  %23587 = add nsw i32 %23584, %23586
  %23588 = sext i32 %23587 to i64
  %23589 = getelementptr inbounds double, ptr %23583, i64 %23588
  %23590 = load double, ptr %23589, align 8, !tbaa !11
  %23591 = call double @llvm.fmuladd.f64(double 0x3CC2000000000000, double %23590, double %23582)
  %23592 = load ptr, ptr %7, align 8, !tbaa !9
  %23593 = load i32, ptr %12, align 4, !tbaa !5
  %23594 = load i32, ptr %8, align 4, !tbaa !5
  %23595 = mul nsw i32 19, %23594
  %23596 = add nsw i32 %23593, %23595
  %23597 = sext i32 %23596 to i64
  %23598 = getelementptr inbounds double, ptr %23592, i64 %23597
  %23599 = load double, ptr %23598, align 8, !tbaa !11
  %23600 = call double @llvm.fmuladd.f64(double 0xBCC9800000000000, double %23599, double %23591)
  store double %23600, ptr %11, align 8, !tbaa !11
  %23601 = load double, ptr %11, align 8, !tbaa !11
  %23602 = load ptr, ptr %9, align 8, !tbaa !9
  %23603 = load i32, ptr %12, align 4, !tbaa !5
  %23604 = load i32, ptr %10, align 4, !tbaa !5
  %23605 = mul nsw i32 83, %23604
  %23606 = add nsw i32 %23603, %23605
  %23607 = sext i32 %23606 to i64
  %23608 = getelementptr inbounds double, ptr %23602, i64 %23607
  %23609 = load double, ptr %23608, align 8, !tbaa !11
  %23610 = fadd double %23609, %23601
  store double %23610, ptr %23608, align 8, !tbaa !11
  %23611 = load ptr, ptr %7, align 8, !tbaa !9
  %23612 = load i32, ptr %12, align 4, !tbaa !5
  %23613 = load i32, ptr %8, align 4, !tbaa !5
  %23614 = mul nsw i32 0, %23613
  %23615 = add nsw i32 %23612, %23614
  %23616 = sext i32 %23615 to i64
  %23617 = getelementptr inbounds double, ptr %23611, i64 %23616
  %23618 = load double, ptr %23617, align 8, !tbaa !11
  %23619 = load ptr, ptr %7, align 8, !tbaa !9
  %23620 = load i32, ptr %12, align 4, !tbaa !5
  %23621 = load i32, ptr %8, align 4, !tbaa !5
  %23622 = mul nsw i32 1, %23621
  %23623 = add nsw i32 %23620, %23622
  %23624 = sext i32 %23623 to i64
  %23625 = getelementptr inbounds double, ptr %23619, i64 %23624
  %23626 = load double, ptr %23625, align 8, !tbaa !11
  %23627 = fmul double 0x3CE5BFFFFFFFFFFF, %23626
  %23628 = call double @llvm.fmuladd.f64(double 0xBD15A3FFFFFFFFFF, double %23618, double %23627)
  %23629 = load ptr, ptr %7, align 8, !tbaa !9
  %23630 = load i32, ptr %12, align 4, !tbaa !5
  %23631 = load i32, ptr %8, align 4, !tbaa !5
  %23632 = mul nsw i32 2, %23631
  %23633 = add nsw i32 %23630, %23632
  %23634 = sext i32 %23633 to i64
  %23635 = getelementptr inbounds double, ptr %23629, i64 %23634
  %23636 = load double, ptr %23635, align 8, !tbaa !11
  %23637 = call double @llvm.fmuladd.f64(double 0xBD13BCFFFFFFFFFF, double %23636, double %23628)
  %23638 = load ptr, ptr %7, align 8, !tbaa !9
  %23639 = load i32, ptr %12, align 4, !tbaa !5
  %23640 = load i32, ptr %8, align 4, !tbaa !5
  %23641 = mul nsw i32 3, %23640
  %23642 = add nsw i32 %23639, %23641
  %23643 = sext i32 %23642 to i64
  %23644 = getelementptr inbounds double, ptr %23638, i64 %23643
  %23645 = load double, ptr %23644, align 8, !tbaa !11
  %23646 = call double @llvm.fmuladd.f64(double 0xBCEA980000000001, double %23645, double %23637)
  %23647 = load ptr, ptr %7, align 8, !tbaa !9
  %23648 = load i32, ptr %12, align 4, !tbaa !5
  %23649 = load i32, ptr %8, align 4, !tbaa !5
  %23650 = mul nsw i32 4, %23649
  %23651 = add nsw i32 %23648, %23650
  %23652 = sext i32 %23651 to i64
  %23653 = getelementptr inbounds double, ptr %23647, i64 %23652
  %23654 = load double, ptr %23653, align 8, !tbaa !11
  %23655 = call double @llvm.fmuladd.f64(double 0xC0118E7E1D8191B3, double %23654, double %23646)
  %23656 = load ptr, ptr %7, align 8, !tbaa !9
  %23657 = load i32, ptr %12, align 4, !tbaa !5
  %23658 = load i32, ptr %8, align 4, !tbaa !5
  %23659 = mul nsw i32 5, %23658
  %23660 = add nsw i32 %23657, %23659
  %23661 = sext i32 %23660 to i64
  %23662 = getelementptr inbounds double, ptr %23656, i64 %23661
  %23663 = load double, ptr %23662, align 8, !tbaa !11
  %23664 = call double @llvm.fmuladd.f64(double 0x3D07000000000000, double %23663, double %23655)
  %23665 = load ptr, ptr %7, align 8, !tbaa !9
  %23666 = load i32, ptr %12, align 4, !tbaa !5
  %23667 = load i32, ptr %8, align 4, !tbaa !5
  %23668 = mul nsw i32 6, %23667
  %23669 = add nsw i32 %23666, %23668
  %23670 = sext i32 %23669 to i64
  %23671 = getelementptr inbounds double, ptr %23665, i64 %23670
  %23672 = load double, ptr %23671, align 8, !tbaa !11
  %23673 = call double @llvm.fmuladd.f64(double 0x3CF4380000000000, double %23672, double %23664)
  %23674 = load ptr, ptr %7, align 8, !tbaa !9
  %23675 = load i32, ptr %12, align 4, !tbaa !5
  %23676 = load i32, ptr %8, align 4, !tbaa !5
  %23677 = mul nsw i32 7, %23676
  %23678 = add nsw i32 %23675, %23677
  %23679 = sext i32 %23678 to i64
  %23680 = getelementptr inbounds double, ptr %23674, i64 %23679
  %23681 = load double, ptr %23680, align 8, !tbaa !11
  %23682 = call double @llvm.fmuladd.f64(double 0xBD0AF40000000001, double %23681, double %23673)
  %23683 = load ptr, ptr %7, align 8, !tbaa !9
  %23684 = load i32, ptr %12, align 4, !tbaa !5
  %23685 = load i32, ptr %8, align 4, !tbaa !5
  %23686 = mul nsw i32 8, %23685
  %23687 = add nsw i32 %23684, %23686
  %23688 = sext i32 %23687 to i64
  %23689 = getelementptr inbounds double, ptr %23683, i64 %23688
  %23690 = load double, ptr %23689, align 8, !tbaa !11
  %23691 = call double @llvm.fmuladd.f64(double 0x3CF6000000000000, double %23690, double %23682)
  %23692 = load ptr, ptr %7, align 8, !tbaa !9
  %23693 = load i32, ptr %12, align 4, !tbaa !5
  %23694 = load i32, ptr %8, align 4, !tbaa !5
  %23695 = mul nsw i32 9, %23694
  %23696 = add nsw i32 %23693, %23695
  %23697 = sext i32 %23696 to i64
  %23698 = getelementptr inbounds double, ptr %23692, i64 %23697
  %23699 = load double, ptr %23698, align 8, !tbaa !11
  %23700 = call double @llvm.fmuladd.f64(double 0x3D18680000000000, double %23699, double %23691)
  %23701 = load ptr, ptr %7, align 8, !tbaa !9
  %23702 = load i32, ptr %12, align 4, !tbaa !5
  %23703 = load i32, ptr %8, align 4, !tbaa !5
  %23704 = mul nsw i32 10, %23703
  %23705 = add nsw i32 %23702, %23704
  %23706 = sext i32 %23705 to i64
  %23707 = getelementptr inbounds double, ptr %23701, i64 %23706
  %23708 = load double, ptr %23707, align 8, !tbaa !11
  %23709 = call double @llvm.fmuladd.f64(double 0xBCD73FFFFFFFFFFE, double %23708, double %23700)
  %23710 = load ptr, ptr %7, align 8, !tbaa !9
  %23711 = load i32, ptr %12, align 4, !tbaa !5
  %23712 = load i32, ptr %8, align 4, !tbaa !5
  %23713 = mul nsw i32 11, %23712
  %23714 = add nsw i32 %23711, %23713
  %23715 = sext i32 %23714 to i64
  %23716 = getelementptr inbounds double, ptr %23710, i64 %23715
  %23717 = load double, ptr %23716, align 8, !tbaa !11
  %23718 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %23717, double %23709)
  %23719 = load ptr, ptr %7, align 8, !tbaa !9
  %23720 = load i32, ptr %12, align 4, !tbaa !5
  %23721 = load i32, ptr %8, align 4, !tbaa !5
  %23722 = mul nsw i32 12, %23721
  %23723 = add nsw i32 %23720, %23722
  %23724 = sext i32 %23723 to i64
  %23725 = getelementptr inbounds double, ptr %23719, i64 %23724
  %23726 = load double, ptr %23725, align 8, !tbaa !11
  %23727 = call double @llvm.fmuladd.f64(double 0xBCDACFFFFFFFFFFE, double %23726, double %23718)
  %23728 = load ptr, ptr %7, align 8, !tbaa !9
  %23729 = load i32, ptr %12, align 4, !tbaa !5
  %23730 = load i32, ptr %8, align 4, !tbaa !5
  %23731 = mul nsw i32 13, %23730
  %23732 = add nsw i32 %23729, %23731
  %23733 = sext i32 %23732 to i64
  %23734 = getelementptr inbounds double, ptr %23728, i64 %23733
  %23735 = load double, ptr %23734, align 8, !tbaa !11
  %23736 = call double @llvm.fmuladd.f64(double 0xBCB2C00000000001, double %23735, double %23727)
  %23737 = load ptr, ptr %7, align 8, !tbaa !9
  %23738 = load i32, ptr %12, align 4, !tbaa !5
  %23739 = load i32, ptr %8, align 4, !tbaa !5
  %23740 = mul nsw i32 14, %23739
  %23741 = add nsw i32 %23738, %23740
  %23742 = sext i32 %23741 to i64
  %23743 = getelementptr inbounds double, ptr %23737, i64 %23742
  %23744 = load double, ptr %23743, align 8, !tbaa !11
  %23745 = call double @llvm.fmuladd.f64(double 0xBFD4F58312101B3F, double %23744, double %23736)
  %23746 = load ptr, ptr %7, align 8, !tbaa !9
  %23747 = load i32, ptr %12, align 4, !tbaa !5
  %23748 = load i32, ptr %8, align 4, !tbaa !5
  %23749 = mul nsw i32 15, %23748
  %23750 = add nsw i32 %23747, %23749
  %23751 = sext i32 %23750 to i64
  %23752 = getelementptr inbounds double, ptr %23746, i64 %23751
  %23753 = load double, ptr %23752, align 8, !tbaa !11
  %23754 = call double @llvm.fmuladd.f64(double 0x3CC8000000000000, double %23753, double %23745)
  %23755 = load ptr, ptr %7, align 8, !tbaa !9
  %23756 = load i32, ptr %12, align 4, !tbaa !5
  %23757 = load i32, ptr %8, align 4, !tbaa !5
  %23758 = mul nsw i32 16, %23757
  %23759 = add nsw i32 %23756, %23758
  %23760 = sext i32 %23759 to i64
  %23761 = getelementptr inbounds double, ptr %23755, i64 %23760
  %23762 = load double, ptr %23761, align 8, !tbaa !11
  %23763 = call double @llvm.fmuladd.f64(double 0x3CA7000000000002, double %23762, double %23754)
  %23764 = load ptr, ptr %7, align 8, !tbaa !9
  %23765 = load i32, ptr %12, align 4, !tbaa !5
  %23766 = load i32, ptr %8, align 4, !tbaa !5
  %23767 = mul nsw i32 17, %23766
  %23768 = add nsw i32 %23765, %23767
  %23769 = sext i32 %23768 to i64
  %23770 = getelementptr inbounds double, ptr %23764, i64 %23769
  %23771 = load double, ptr %23770, align 8, !tbaa !11
  %23772 = call double @llvm.fmuladd.f64(double 0xBCCF400000000000, double %23771, double %23763)
  %23773 = load ptr, ptr %7, align 8, !tbaa !9
  %23774 = load i32, ptr %12, align 4, !tbaa !5
  %23775 = load i32, ptr %8, align 4, !tbaa !5
  %23776 = mul nsw i32 18, %23775
  %23777 = add nsw i32 %23774, %23776
  %23778 = sext i32 %23777 to i64
  %23779 = getelementptr inbounds double, ptr %23773, i64 %23778
  %23780 = load double, ptr %23779, align 8, !tbaa !11
  %23781 = call double @llvm.fmuladd.f64(double 0x3CB0000000000000, double %23780, double %23772)
  %23782 = load ptr, ptr %7, align 8, !tbaa !9
  %23783 = load i32, ptr %12, align 4, !tbaa !5
  %23784 = load i32, ptr %8, align 4, !tbaa !5
  %23785 = mul nsw i32 19, %23784
  %23786 = add nsw i32 %23783, %23785
  %23787 = sext i32 %23786 to i64
  %23788 = getelementptr inbounds double, ptr %23782, i64 %23787
  %23789 = load double, ptr %23788, align 8, !tbaa !11
  %23790 = call double @llvm.fmuladd.f64(double 0x3CDD800000000001, double %23789, double %23781)
  store double %23790, ptr %11, align 8, !tbaa !11
  %23791 = load double, ptr %11, align 8, !tbaa !11
  %23792 = load ptr, ptr %9, align 8, !tbaa !9
  %23793 = load i32, ptr %12, align 4, !tbaa !5
  %23794 = load i32, ptr %10, align 4, !tbaa !5
  %23795 = mul nsw i32 84, %23794
  %23796 = add nsw i32 %23793, %23795
  %23797 = sext i32 %23796 to i64
  %23798 = getelementptr inbounds double, ptr %23792, i64 %23797
  %23799 = load double, ptr %23798, align 8, !tbaa !11
  %23800 = fadd double %23799, %23791
  store double %23800, ptr %23798, align 8, !tbaa !11
  %23801 = load ptr, ptr %7, align 8, !tbaa !9
  %23802 = load i32, ptr %12, align 4, !tbaa !5
  %23803 = load i32, ptr %8, align 4, !tbaa !5
  %23804 = mul nsw i32 0, %23803
  %23805 = add nsw i32 %23802, %23804
  %23806 = sext i32 %23805 to i64
  %23807 = getelementptr inbounds double, ptr %23801, i64 %23806
  %23808 = load double, ptr %23807, align 8, !tbaa !11
  %23809 = load ptr, ptr %7, align 8, !tbaa !9
  %23810 = load i32, ptr %12, align 4, !tbaa !5
  %23811 = load i32, ptr %8, align 4, !tbaa !5
  %23812 = mul nsw i32 1, %23811
  %23813 = add nsw i32 %23810, %23812
  %23814 = sext i32 %23813 to i64
  %23815 = getelementptr inbounds double, ptr %23809, i64 %23814
  %23816 = load double, ptr %23815, align 8, !tbaa !11
  %23817 = fmul double 0x3CEAC00000000001, %23816
  %23818 = call double @llvm.fmuladd.f64(double 0xBD17B40000000000, double %23808, double %23817)
  %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 2, %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 = call double @llvm.fmuladd.f64(double 0xBCE927FFFFFFFFFF, double %23826, double %23818)
  %23828 = load ptr, ptr %7, align 8, !tbaa !9
  %23829 = load i32, ptr %12, align 4, !tbaa !5
  %23830 = load i32, ptr %8, align 4, !tbaa !5
  %23831 = mul nsw i32 3, %23830
  %23832 = add nsw i32 %23829, %23831
  %23833 = sext i32 %23832 to i64
  %23834 = getelementptr inbounds double, ptr %23828, i64 %23833
  %23835 = load double, ptr %23834, align 8, !tbaa !11
  %23836 = call double @llvm.fmuladd.f64(double 0xBD13B90000000001, double %23835, double %23827)
  %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 4, %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 0x3D04D00000000000, 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 5, %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 0xC0118E7E1D8191B1, 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 6, %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 0xBD0A1C0000000001, 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 7, %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 0x3CF7180000000000, 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 8, %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 0x3D19000000000000, 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 9, %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 0x3CF9C00000000000, 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 10, %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 0xBCDA400000000000, 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 11, %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 0x3CA4000000000001, 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 12, %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 0xBCB1400000000000, 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 13, %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 0xBCDB900000000001, 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 14, %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 0x3CCB000000000000, 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 15, %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 0xBFD4F58312101B43, 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 16, %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 0xBCD0E00000000000, 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 17, %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 0x3CBD800000000001, 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 18, %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 0x3CDFFFFFFFFFFFFE, 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 19, %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 0x3CC4000000000000, double %23979, double %23971)
  store double %23980, ptr %11, align 8, !tbaa !11
  %23981 = load double, ptr %11, align 8, !tbaa !11
  %23982 = load ptr, ptr %9, align 8, !tbaa !9
  %23983 = load i32, ptr %12, align 4, !tbaa !5
  %23984 = load i32, ptr %10, align 4, !tbaa !5
  %23985 = mul nsw i32 85, %23984
  %23986 = add nsw i32 %23983, %23985
  %23987 = sext i32 %23986 to i64
  %23988 = getelementptr inbounds double, ptr %23982, i64 %23987
  %23989 = load double, ptr %23988, align 8, !tbaa !11
  %23990 = fadd double %23989, %23981
  store double %23990, ptr %23988, align 8, !tbaa !11
  %23991 = load ptr, ptr %7, align 8, !tbaa !9
  %23992 = load i32, ptr %12, align 4, !tbaa !5
  %23993 = load i32, ptr %8, align 4, !tbaa !5
  %23994 = mul nsw i32 0, %23993
  %23995 = add nsw i32 %23992, %23994
  %23996 = sext i32 %23995 to i64
  %23997 = getelementptr inbounds double, ptr %23991, i64 %23996
  %23998 = load double, ptr %23997, align 8, !tbaa !11
  %23999 = load ptr, ptr %7, align 8, !tbaa !9
  %24000 = load i32, ptr %12, align 4, !tbaa !5
  %24001 = load i32, ptr %8, align 4, !tbaa !5
  %24002 = mul nsw i32 1, %24001
  %24003 = add nsw i32 %24000, %24002
  %24004 = sext i32 %24003 to i64
  %24005 = getelementptr inbounds double, ptr %23999, i64 %24004
  %24006 = load double, ptr %24005, align 8, !tbaa !11
  %24007 = fmul double 0xBCED100000000000, %24006
  %24008 = call double @llvm.fmuladd.f64(double 0xBD167E0000000000, double %23998, double %24007)
  %24009 = load ptr, ptr %7, align 8, !tbaa !9
  %24010 = load i32, ptr %12, align 4, !tbaa !5
  %24011 = load i32, ptr %8, align 4, !tbaa !5
  %24012 = mul nsw i32 2, %24011
  %24013 = add nsw i32 %24010, %24012
  %24014 = sext i32 %24013 to i64
  %24015 = getelementptr inbounds double, ptr %24009, i64 %24014
  %24016 = load double, ptr %24015, align 8, !tbaa !11
  %24017 = call double @llvm.fmuladd.f64(double 0x3CE5A80000000001, double %24016, double %24008)
  %24018 = load ptr, ptr %7, align 8, !tbaa !9
  %24019 = load i32, ptr %12, align 4, !tbaa !5
  %24020 = load i32, ptr %8, align 4, !tbaa !5
  %24021 = mul nsw i32 3, %24020
  %24022 = add nsw i32 %24019, %24021
  %24023 = sext i32 %24022 to i64
  %24024 = getelementptr inbounds double, ptr %24018, i64 %24023
  %24025 = load double, ptr %24024, align 8, !tbaa !11
  %24026 = call double @llvm.fmuladd.f64(double 0xBD129C7FFFFFFFFE, double %24025, double %24017)
  %24027 = load ptr, ptr %7, align 8, !tbaa !9
  %24028 = load i32, ptr %12, align 4, !tbaa !5
  %24029 = load i32, ptr %8, align 4, !tbaa !5
  %24030 = mul nsw i32 4, %24029
  %24031 = add nsw i32 %24028, %24030
  %24032 = sext i32 %24031 to i64
  %24033 = getelementptr inbounds double, ptr %24027, i64 %24032
  %24034 = load double, ptr %24033, align 8, !tbaa !11
  %24035 = call double @llvm.fmuladd.f64(double 0x3CF3340000000000, double %24034, double %24026)
  %24036 = load ptr, ptr %7, align 8, !tbaa !9
  %24037 = load i32, ptr %12, align 4, !tbaa !5
  %24038 = load i32, ptr %8, align 4, !tbaa !5
  %24039 = mul nsw i32 5, %24038
  %24040 = add nsw i32 %24037, %24039
  %24041 = sext i32 %24040 to i64
  %24042 = getelementptr inbounds double, ptr %24036, i64 %24041
  %24043 = load double, ptr %24042, align 8, !tbaa !11
  %24044 = call double @llvm.fmuladd.f64(double 0xBD09760000000001, double %24043, double %24035)
  %24045 = load ptr, ptr %7, align 8, !tbaa !9
  %24046 = load i32, ptr %12, align 4, !tbaa !5
  %24047 = load i32, ptr %8, align 4, !tbaa !5
  %24048 = mul nsw i32 6, %24047
  %24049 = add nsw i32 %24046, %24048
  %24050 = sext i32 %24049 to i64
  %24051 = getelementptr inbounds double, ptr %24045, i64 %24050
  %24052 = load double, ptr %24051, align 8, !tbaa !11
  %24053 = call double @llvm.fmuladd.f64(double 0xC0118E7E1D8191B2, double %24052, double %24044)
  %24054 = load ptr, ptr %7, align 8, !tbaa !9
  %24055 = load i32, ptr %12, align 4, !tbaa !5
  %24056 = load i32, ptr %8, align 4, !tbaa !5
  %24057 = mul nsw i32 7, %24056
  %24058 = add nsw i32 %24055, %24057
  %24059 = sext i32 %24058 to i64
  %24060 = getelementptr inbounds double, ptr %24054, i64 %24059
  %24061 = load double, ptr %24060, align 8, !tbaa !11
  %24062 = call double @llvm.fmuladd.f64(double 0x3D17E57FFFFFFFFE, double %24061, double %24053)
  %24063 = load ptr, ptr %7, align 8, !tbaa !9
  %24064 = load i32, ptr %12, align 4, !tbaa !5
  %24065 = load i32, ptr %8, align 4, !tbaa !5
  %24066 = mul nsw i32 8, %24065
  %24067 = add nsw i32 %24064, %24066
  %24068 = sext i32 %24067 to i64
  %24069 = getelementptr inbounds double, ptr %24063, i64 %24068
  %24070 = load double, ptr %24069, align 8, !tbaa !11
  %24071 = call double @llvm.fmuladd.f64(double 0x3CF6D80000000000, double %24070, double %24062)
  %24072 = load ptr, ptr %7, align 8, !tbaa !9
  %24073 = load i32, ptr %12, align 4, !tbaa !5
  %24074 = load i32, ptr %8, align 4, !tbaa !5
  %24075 = mul nsw i32 9, %24074
  %24076 = add nsw i32 %24073, %24075
  %24077 = sext i32 %24076 to i64
  %24078 = getelementptr inbounds double, ptr %24072, i64 %24077
  %24079 = load double, ptr %24078, align 8, !tbaa !11
  %24080 = call double @llvm.fmuladd.f64(double 0x3D07C7FFFFFFFFFF, double %24079, double %24071)
  %24081 = load ptr, ptr %7, align 8, !tbaa !9
  %24082 = load i32, ptr %12, align 4, !tbaa !5
  %24083 = load i32, ptr %8, align 4, !tbaa !5
  %24084 = mul nsw i32 10, %24083
  %24085 = add nsw i32 %24082, %24084
  %24086 = sext i32 %24085 to i64
  %24087 = getelementptr inbounds double, ptr %24081, i64 %24086
  %24088 = load double, ptr %24087, align 8, !tbaa !11
  %24089 = call double @llvm.fmuladd.f64(double 0xBCDBE00000000000, double %24088, double %24080)
  %24090 = load ptr, ptr %7, align 8, !tbaa !9
  %24091 = load i32, ptr %12, align 4, !tbaa !5
  %24092 = load i32, ptr %8, align 4, !tbaa !5
  %24093 = mul nsw i32 11, %24092
  %24094 = add nsw i32 %24091, %24093
  %24095 = sext i32 %24094 to i64
  %24096 = getelementptr inbounds double, ptr %24090, i64 %24095
  %24097 = load double, ptr %24096, align 8, !tbaa !11
  %24098 = call double @llvm.fmuladd.f64(double 0xBC9DFFFFFFFFFFFE, double %24097, double %24089)
  %24099 = load ptr, ptr %7, align 8, !tbaa !9
  %24100 = load i32, ptr %12, align 4, !tbaa !5
  %24101 = load i32, ptr %8, align 4, !tbaa !5
  %24102 = mul nsw i32 12, %24101
  %24103 = add nsw i32 %24100, %24102
  %24104 = sext i32 %24103 to i64
  %24105 = getelementptr inbounds double, ptr %24099, i64 %24104
  %24106 = load double, ptr %24105, align 8, !tbaa !11
  %24107 = call double @llvm.fmuladd.f64(double 0x3C9CFFFFFFFFFFFF, double %24106, double %24098)
  %24108 = load ptr, ptr %7, align 8, !tbaa !9
  %24109 = load i32, ptr %12, align 4, !tbaa !5
  %24110 = load i32, ptr %8, align 4, !tbaa !5
  %24111 = mul nsw i32 13, %24110
  %24112 = add nsw i32 %24109, %24111
  %24113 = sext i32 %24112 to i64
  %24114 = getelementptr inbounds double, ptr %24108, i64 %24113
  %24115 = load double, ptr %24114, align 8, !tbaa !11
  %24116 = call double @llvm.fmuladd.f64(double 0xBCD6C7FFFFFFFFFE, double %24115, double %24107)
  %24117 = load ptr, ptr %7, align 8, !tbaa !9
  %24118 = load i32, ptr %12, align 4, !tbaa !5
  %24119 = load i32, ptr %8, align 4, !tbaa !5
  %24120 = mul nsw i32 14, %24119
  %24121 = add nsw i32 %24118, %24120
  %24122 = sext i32 %24121 to i64
  %24123 = getelementptr inbounds double, ptr %24117, i64 %24122
  %24124 = load double, ptr %24123, align 8, !tbaa !11
  %24125 = call double @llvm.fmuladd.f64(double 0x3CAE800000000001, double %24124, double %24116)
  %24126 = load ptr, ptr %7, align 8, !tbaa !9
  %24127 = load i32, ptr %12, align 4, !tbaa !5
  %24128 = load i32, ptr %8, align 4, !tbaa !5
  %24129 = mul nsw i32 15, %24128
  %24130 = add nsw i32 %24127, %24129
  %24131 = sext i32 %24130 to i64
  %24132 = getelementptr inbounds double, ptr %24126, i64 %24131
  %24133 = load double, ptr %24132, align 8, !tbaa !11
  %24134 = call double @llvm.fmuladd.f64(double 0xBCCD600000000000, double %24133, double %24125)
  %24135 = load ptr, ptr %7, align 8, !tbaa !9
  %24136 = load i32, ptr %12, align 4, !tbaa !5
  %24137 = load i32, ptr %8, align 4, !tbaa !5
  %24138 = mul nsw i32 16, %24137
  %24139 = add nsw i32 %24136, %24138
  %24140 = sext i32 %24139 to i64
  %24141 = getelementptr inbounds double, ptr %24135, i64 %24140
  %24142 = load double, ptr %24141, align 8, !tbaa !11
  %24143 = call double @llvm.fmuladd.f64(double 0xBFD4F58312101B3B, double %24142, double %24134)
  %24144 = load ptr, ptr %7, align 8, !tbaa !9
  %24145 = load i32, ptr %12, align 4, !tbaa !5
  %24146 = load i32, ptr %8, align 4, !tbaa !5
  %24147 = mul nsw i32 17, %24146
  %24148 = add nsw i32 %24145, %24147
  %24149 = sext i32 %24148 to i64
  %24150 = getelementptr inbounds double, ptr %24144, i64 %24149
  %24151 = load double, ptr %24150, align 8, !tbaa !11
  %24152 = call double @llvm.fmuladd.f64(double 0x3CE02BFFFFFFFFFF, double %24151, double %24143)
  %24153 = load ptr, ptr %7, align 8, !tbaa !9
  %24154 = load i32, ptr %12, align 4, !tbaa !5
  %24155 = load i32, ptr %8, align 4, !tbaa !5
  %24156 = mul nsw i32 18, %24155
  %24157 = add nsw i32 %24154, %24156
  %24158 = sext i32 %24157 to i64
  %24159 = getelementptr inbounds double, ptr %24153, i64 %24158
  %24160 = load double, ptr %24159, align 8, !tbaa !11
  %24161 = call double @llvm.fmuladd.f64(double 0x3CC3C00000000000, double %24160, double %24152)
  %24162 = load ptr, ptr %7, align 8, !tbaa !9
  %24163 = load i32, ptr %12, align 4, !tbaa !5
  %24164 = load i32, ptr %8, align 4, !tbaa !5
  %24165 = mul nsw i32 19, %24164
  %24166 = add nsw i32 %24163, %24165
  %24167 = sext i32 %24166 to i64
  %24168 = getelementptr inbounds double, ptr %24162, i64 %24167
  %24169 = load double, ptr %24168, align 8, !tbaa !11
  %24170 = call double @llvm.fmuladd.f64(double 0x3CCB800000000000, double %24169, double %24161)
  store double %24170, ptr %11, align 8, !tbaa !11
  %24171 = load double, ptr %11, align 8, !tbaa !11
  %24172 = load ptr, ptr %9, align 8, !tbaa !9
  %24173 = load i32, ptr %12, align 4, !tbaa !5
  %24174 = load i32, ptr %10, align 4, !tbaa !5
  %24175 = mul nsw i32 86, %24174
  %24176 = add nsw i32 %24173, %24175
  %24177 = sext i32 %24176 to i64
  %24178 = getelementptr inbounds double, ptr %24172, i64 %24177
  %24179 = load double, ptr %24178, align 8, !tbaa !11
  %24180 = fadd double %24179, %24171
  store double %24180, ptr %24178, align 8, !tbaa !11
  %24181 = load ptr, ptr %7, align 8, !tbaa !9
  %24182 = load i32, ptr %12, align 4, !tbaa !5
  %24183 = load i32, ptr %8, align 4, !tbaa !5
  %24184 = mul nsw i32 0, %24183
  %24185 = add nsw i32 %24182, %24184
  %24186 = sext i32 %24185 to i64
  %24187 = getelementptr inbounds double, ptr %24181, i64 %24186
  %24188 = load double, ptr %24187, align 8, !tbaa !11
  %24189 = load ptr, ptr %7, align 8, !tbaa !9
  %24190 = load i32, ptr %12, align 4, !tbaa !5
  %24191 = load i32, ptr %8, align 4, !tbaa !5
  %24192 = mul nsw i32 1, %24191
  %24193 = add nsw i32 %24190, %24192
  %24194 = sext i32 %24193 to i64
  %24195 = getelementptr inbounds double, ptr %24189, i64 %24194
  %24196 = load double, ptr %24195, align 8, !tbaa !11
  %24197 = fmul double 0xBCF0200000000000, %24196
  %24198 = call double @llvm.fmuladd.f64(double 0xBD1569FFFFFFFFFF, double %24188, double %24197)
  %24199 = load ptr, ptr %7, align 8, !tbaa !9
  %24200 = load i32, ptr %12, align 4, !tbaa !5
  %24201 = load i32, ptr %8, align 4, !tbaa !5
  %24202 = mul nsw i32 2, %24201
  %24203 = add nsw i32 %24200, %24202
  %24204 = sext i32 %24203 to i64
  %24205 = getelementptr inbounds double, ptr %24199, i64 %24204
  %24206 = load double, ptr %24205, align 8, !tbaa !11
  %24207 = call double @llvm.fmuladd.f64(double 0xBD1478FFFFFFFFFF, double %24206, double %24198)
  %24208 = load ptr, ptr %7, align 8, !tbaa !9
  %24209 = load i32, ptr %12, align 4, !tbaa !5
  %24210 = load i32, ptr %8, align 4, !tbaa !5
  %24211 = mul nsw i32 3, %24210
  %24212 = add nsw i32 %24209, %24211
  %24213 = sext i32 %24212 to i64
  %24214 = getelementptr inbounds double, ptr %24208, i64 %24213
  %24215 = load double, ptr %24214, align 8, !tbaa !11
  %24216 = call double @llvm.fmuladd.f64(double 0x3CE4140000000000, double %24215, double %24207)
  %24217 = load ptr, ptr %7, align 8, !tbaa !9
  %24218 = load i32, ptr %12, align 4, !tbaa !5
  %24219 = load i32, ptr %8, align 4, !tbaa !5
  %24220 = mul nsw i32 4, %24219
  %24221 = add nsw i32 %24218, %24220
  %24222 = sext i32 %24221 to i64
  %24223 = getelementptr inbounds double, ptr %24217, i64 %24222
  %24224 = load double, ptr %24223, align 8, !tbaa !11
  %24225 = call double @llvm.fmuladd.f64(double 0xBD0A620000000003, double %24224, double %24216)
  %24226 = load ptr, ptr %7, align 8, !tbaa !9
  %24227 = load i32, ptr %12, align 4, !tbaa !5
  %24228 = load i32, ptr %8, align 4, !tbaa !5
  %24229 = mul nsw i32 5, %24228
  %24230 = add nsw i32 %24227, %24229
  %24231 = sext i32 %24230 to i64
  %24232 = getelementptr inbounds double, ptr %24226, i64 %24231
  %24233 = load double, ptr %24232, align 8, !tbaa !11
  %24234 = call double @llvm.fmuladd.f64(double 0x3CF36BFFFFFFFFFF, double %24233, double %24225)
  %24235 = load ptr, ptr %7, align 8, !tbaa !9
  %24236 = load i32, ptr %12, align 4, !tbaa !5
  %24237 = load i32, ptr %8, align 4, !tbaa !5
  %24238 = mul nsw i32 6, %24237
  %24239 = add nsw i32 %24236, %24238
  %24240 = sext i32 %24239 to i64
  %24241 = getelementptr inbounds double, ptr %24235, i64 %24240
  %24242 = load double, ptr %24241, align 8, !tbaa !11
  %24243 = call double @llvm.fmuladd.f64(double 0x3D17E27FFFFFFFFF, double %24242, double %24234)
  %24244 = load ptr, ptr %7, align 8, !tbaa !9
  %24245 = load i32, ptr %12, align 4, !tbaa !5
  %24246 = load i32, ptr %8, align 4, !tbaa !5
  %24247 = mul nsw i32 7, %24246
  %24248 = add nsw i32 %24245, %24247
  %24249 = sext i32 %24248 to i64
  %24250 = getelementptr inbounds double, ptr %24244, i64 %24249
  %24251 = load double, ptr %24250, align 8, !tbaa !11
  %24252 = call double @llvm.fmuladd.f64(double 0xC0118E7E1D8191B1, double %24251, double %24243)
  %24253 = load ptr, ptr %7, align 8, !tbaa !9
  %24254 = load i32, ptr %12, align 4, !tbaa !5
  %24255 = load i32, ptr %8, align 4, !tbaa !5
  %24256 = mul nsw i32 8, %24255
  %24257 = add nsw i32 %24254, %24256
  %24258 = sext i32 %24257 to i64
  %24259 = getelementptr inbounds double, ptr %24253, i64 %24258
  %24260 = load double, ptr %24259, align 8, !tbaa !11
  %24261 = call double @llvm.fmuladd.f64(double 0x3D07F3FFFFFFFFFF, double %24260, double %24252)
  %24262 = load ptr, ptr %7, align 8, !tbaa !9
  %24263 = load i32, ptr %12, align 4, !tbaa !5
  %24264 = load i32, ptr %8, align 4, !tbaa !5
  %24265 = mul nsw i32 9, %24264
  %24266 = add nsw i32 %24263, %24265
  %24267 = sext i32 %24266 to i64
  %24268 = getelementptr inbounds double, ptr %24262, i64 %24267
  %24269 = load double, ptr %24268, align 8, !tbaa !11
  %24270 = call double @llvm.fmuladd.f64(double 0x3CF6F80000000000, double %24269, double %24261)
  %24271 = load ptr, ptr %7, align 8, !tbaa !9
  %24272 = load i32, ptr %12, align 4, !tbaa !5
  %24273 = load i32, ptr %8, align 4, !tbaa !5
  %24274 = mul nsw i32 10, %24273
  %24275 = add nsw i32 %24272, %24274
  %24276 = sext i32 %24275 to i64
  %24277 = getelementptr inbounds double, ptr %24271, i64 %24276
  %24278 = load double, ptr %24277, align 8, !tbaa !11
  %24279 = call double @llvm.fmuladd.f64(double 0xBCDAA00000000002, double %24278, double %24270)
  %24280 = load ptr, ptr %7, align 8, !tbaa !9
  %24281 = load i32, ptr %12, align 4, !tbaa !5
  %24282 = load i32, ptr %8, align 4, !tbaa !5
  %24283 = mul nsw i32 11, %24282
  %24284 = add nsw i32 %24281, %24283
  %24285 = sext i32 %24284 to i64
  %24286 = getelementptr inbounds double, ptr %24280, i64 %24285
  %24287 = load double, ptr %24286, align 8, !tbaa !11
  %24288 = call double @llvm.fmuladd.f64(double 0xBCA5FFFFFFFFFFFF, double %24287, double %24279)
  %24289 = load ptr, ptr %7, align 8, !tbaa !9
  %24290 = load i32, ptr %12, align 4, !tbaa !5
  %24291 = load i32, ptr %8, align 4, !tbaa !5
  %24292 = mul nsw i32 12, %24291
  %24293 = add nsw i32 %24290, %24292
  %24294 = sext i32 %24293 to i64
  %24295 = getelementptr inbounds double, ptr %24289, i64 %24294
  %24296 = load double, ptr %24295, align 8, !tbaa !11
  %24297 = call double @llvm.fmuladd.f64(double 0xBCD6100000000001, double %24296, double %24288)
  %24298 = load ptr, ptr %7, align 8, !tbaa !9
  %24299 = load i32, ptr %12, align 4, !tbaa !5
  %24300 = load i32, ptr %8, align 4, !tbaa !5
  %24301 = mul nsw i32 13, %24300
  %24302 = add nsw i32 %24299, %24301
  %24303 = sext i32 %24302 to i64
  %24304 = getelementptr inbounds double, ptr %24298, i64 %24303
  %24305 = load double, ptr %24304, align 8, !tbaa !11
  %24306 = call double @llvm.fmuladd.f64(double 0x3CB8A00000000000, double %24305, double %24297)
  %24307 = load ptr, ptr %7, align 8, !tbaa !9
  %24308 = load i32, ptr %12, align 4, !tbaa !5
  %24309 = load i32, ptr %8, align 4, !tbaa !5
  %24310 = mul nsw i32 14, %24309
  %24311 = add nsw i32 %24308, %24310
  %24312 = sext i32 %24311 to i64
  %24313 = getelementptr inbounds double, ptr %24307, i64 %24312
  %24314 = load double, ptr %24313, align 8, !tbaa !11
  %24315 = call double @llvm.fmuladd.f64(double 0xBCD30FFFFFFFFFFE, double %24314, double %24306)
  %24316 = load ptr, ptr %7, align 8, !tbaa !9
  %24317 = load i32, ptr %12, align 4, !tbaa !5
  %24318 = load i32, ptr %8, align 4, !tbaa !5
  %24319 = mul nsw i32 15, %24318
  %24320 = add nsw i32 %24317, %24319
  %24321 = sext i32 %24320 to i64
  %24322 = getelementptr inbounds double, ptr %24316, i64 %24321
  %24323 = load double, ptr %24322, align 8, !tbaa !11
  %24324 = call double @llvm.fmuladd.f64(double 0x3CB4C00000000000, double %24323, double %24315)
  %24325 = load ptr, ptr %7, align 8, !tbaa !9
  %24326 = load i32, ptr %12, align 4, !tbaa !5
  %24327 = load i32, ptr %8, align 4, !tbaa !5
  %24328 = mul nsw i32 16, %24327
  %24329 = add nsw i32 %24326, %24328
  %24330 = sext i32 %24329 to i64
  %24331 = getelementptr inbounds double, ptr %24325, i64 %24330
  %24332 = load double, ptr %24331, align 8, !tbaa !11
  %24333 = call double @llvm.fmuladd.f64(double 0x3CDD280000000000, double %24332, double %24324)
  %24334 = load ptr, ptr %7, align 8, !tbaa !9
  %24335 = load i32, ptr %12, align 4, !tbaa !5
  %24336 = load i32, ptr %8, align 4, !tbaa !5
  %24337 = mul nsw i32 17, %24336
  %24338 = add nsw i32 %24335, %24337
  %24339 = sext i32 %24338 to i64
  %24340 = getelementptr inbounds double, ptr %24334, i64 %24339
  %24341 = load double, ptr %24340, align 8, !tbaa !11
  %24342 = call double @llvm.fmuladd.f64(double 0xBFD4F58312101B3A, double %24341, double %24333)
  %24343 = load ptr, ptr %7, align 8, !tbaa !9
  %24344 = load i32, ptr %12, align 4, !tbaa !5
  %24345 = load i32, ptr %8, align 4, !tbaa !5
  %24346 = mul nsw i32 18, %24345
  %24347 = add nsw i32 %24344, %24346
  %24348 = sext i32 %24347 to i64
  %24349 = getelementptr inbounds double, ptr %24343, i64 %24348
  %24350 = load double, ptr %24349, align 8, !tbaa !11
  %24351 = call double @llvm.fmuladd.f64(double 0x3CD0200000000000, double %24350, double %24342)
  %24352 = load ptr, ptr %7, align 8, !tbaa !9
  %24353 = load i32, ptr %12, align 4, !tbaa !5
  %24354 = load i32, ptr %8, align 4, !tbaa !5
  %24355 = mul nsw i32 19, %24354
  %24356 = add nsw i32 %24353, %24355
  %24357 = sext i32 %24356 to i64
  %24358 = getelementptr inbounds double, ptr %24352, i64 %24357
  %24359 = load double, ptr %24358, align 8, !tbaa !11
  %24360 = call double @llvm.fmuladd.f64(double 0x3CC2C00000000000, double %24359, double %24351)
  store double %24360, ptr %11, align 8, !tbaa !11
  %24361 = load double, ptr %11, align 8, !tbaa !11
  %24362 = load ptr, ptr %9, align 8, !tbaa !9
  %24363 = load i32, ptr %12, align 4, !tbaa !5
  %24364 = load i32, ptr %10, align 4, !tbaa !5
  %24365 = mul nsw i32 87, %24364
  %24366 = add nsw i32 %24363, %24365
  %24367 = sext i32 %24366 to i64
  %24368 = getelementptr inbounds double, ptr %24362, i64 %24367
  %24369 = load double, ptr %24368, align 8, !tbaa !11
  %24370 = fadd double %24369, %24361
  store double %24370, ptr %24368, align 8, !tbaa !11
  %24371 = load ptr, ptr %7, align 8, !tbaa !9
  %24372 = load i32, ptr %12, align 4, !tbaa !5
  %24373 = load i32, ptr %8, align 4, !tbaa !5
  %24374 = mul nsw i32 0, %24373
  %24375 = add nsw i32 %24372, %24374
  %24376 = sext i32 %24375 to i64
  %24377 = getelementptr inbounds double, ptr %24371, i64 %24376
  %24378 = load double, ptr %24377, align 8, !tbaa !11
  %24379 = load ptr, ptr %7, align 8, !tbaa !9
  %24380 = load i32, ptr %12, align 4, !tbaa !5
  %24381 = load i32, ptr %8, align 4, !tbaa !5
  %24382 = mul nsw i32 1, %24381
  %24383 = add nsw i32 %24380, %24382
  %24384 = sext i32 %24383 to i64
  %24385 = getelementptr inbounds double, ptr %24379, i64 %24384
  %24386 = load double, ptr %24385, align 8, !tbaa !11
  %24387 = fmul double 0xBD13680000000001, %24386
  %24388 = call double @llvm.fmuladd.f64(double 0xBD16B00000000000, double %24378, double %24387)
  %24389 = load ptr, ptr %7, align 8, !tbaa !9
  %24390 = load i32, ptr %12, align 4, !tbaa !5
  %24391 = load i32, ptr %8, align 4, !tbaa !5
  %24392 = mul nsw i32 2, %24391
  %24393 = add nsw i32 %24390, %24392
  %24394 = sext i32 %24393 to i64
  %24395 = getelementptr inbounds double, ptr %24389, i64 %24394
  %24396 = load double, ptr %24395, align 8, !tbaa !11
  %24397 = call double @llvm.fmuladd.f64(double 0xBCEE600000000000, double %24396, double %24388)
  %24398 = load ptr, ptr %7, align 8, !tbaa !9
  %24399 = load i32, ptr %12, align 4, !tbaa !5
  %24400 = load i32, ptr %8, align 4, !tbaa !5
  %24401 = mul nsw i32 3, %24400
  %24402 = add nsw i32 %24399, %24401
  %24403 = sext i32 %24402 to i64
  %24404 = getelementptr inbounds double, ptr %24398, i64 %24403
  %24405 = load double, ptr %24404, align 8, !tbaa !11
  %24406 = call double @llvm.fmuladd.f64(double 0x3CE6500000000001, double %24405, double %24397)
  %24407 = load ptr, ptr %7, align 8, !tbaa !9
  %24408 = load i32, ptr %12, align 4, !tbaa !5
  %24409 = load i32, ptr %8, align 4, !tbaa !5
  %24410 = mul nsw i32 4, %24409
  %24411 = add nsw i32 %24408, %24410
  %24412 = sext i32 %24411 to i64
  %24413 = getelementptr inbounds double, ptr %24407, i64 %24412
  %24414 = load double, ptr %24413, align 8, !tbaa !11
  %24415 = call double @llvm.fmuladd.f64(double 0x3CF7A00000000000, double %24414, double %24406)
  %24416 = load ptr, ptr %7, align 8, !tbaa !9
  %24417 = load i32, ptr %12, align 4, !tbaa !5
  %24418 = load i32, ptr %8, align 4, !tbaa !5
  %24419 = mul nsw i32 5, %24418
  %24420 = add nsw i32 %24417, %24419
  %24421 = sext i32 %24420 to i64
  %24422 = getelementptr inbounds double, ptr %24416, i64 %24421
  %24423 = load double, ptr %24422, align 8, !tbaa !11
  %24424 = call double @llvm.fmuladd.f64(double 0x3D18C00000000000, double %24423, double %24415)
  %24425 = load ptr, ptr %7, align 8, !tbaa !9
  %24426 = load i32, ptr %12, align 4, !tbaa !5
  %24427 = load i32, ptr %8, align 4, !tbaa !5
  %24428 = mul nsw i32 6, %24427
  %24429 = add nsw i32 %24426, %24428
  %24430 = sext i32 %24429 to i64
  %24431 = getelementptr inbounds double, ptr %24425, i64 %24430
  %24432 = load double, ptr %24431, align 8, !tbaa !11
  %24433 = call double @llvm.fmuladd.f64(double 0x3CF6680000000000, double %24432, double %24424)
  %24434 = load ptr, ptr %7, align 8, !tbaa !9
  %24435 = load i32, ptr %12, align 4, !tbaa !5
  %24436 = load i32, ptr %8, align 4, !tbaa !5
  %24437 = mul nsw i32 7, %24436
  %24438 = add nsw i32 %24435, %24437
  %24439 = sext i32 %24438 to i64
  %24440 = getelementptr inbounds double, ptr %24434, i64 %24439
  %24441 = load double, ptr %24440, align 8, !tbaa !11
  %24442 = call double @llvm.fmuladd.f64(double 0x3D09800000000002, double %24441, double %24433)
  %24443 = load ptr, ptr %7, align 8, !tbaa !9
  %24444 = load i32, ptr %12, align 4, !tbaa !5
  %24445 = load i32, ptr %8, align 4, !tbaa !5
  %24446 = mul nsw i32 8, %24445
  %24447 = add nsw i32 %24444, %24446
  %24448 = sext i32 %24447 to i64
  %24449 = getelementptr inbounds double, ptr %24443, i64 %24448
  %24450 = load double, ptr %24449, align 8, !tbaa !11
  %24451 = call double @llvm.fmuladd.f64(double 0xC0118E7E1D8191B0, double %24450, double %24442)
  %24452 = load ptr, ptr %7, align 8, !tbaa !9
  %24453 = load i32, ptr %12, align 4, !tbaa !5
  %24454 = load i32, ptr %8, align 4, !tbaa !5
  %24455 = mul nsw i32 9, %24454
  %24456 = add nsw i32 %24453, %24455
  %24457 = sext i32 %24456 to i64
  %24458 = getelementptr inbounds double, ptr %24452, i64 %24457
  %24459 = load double, ptr %24458, align 8, !tbaa !11
  %24460 = call double @llvm.fmuladd.f64(double 0xBD0DA00000000003, double %24459, double %24451)
  %24461 = load ptr, ptr %7, align 8, !tbaa !9
  %24462 = load i32, ptr %12, align 4, !tbaa !5
  %24463 = load i32, ptr %8, align 4, !tbaa !5
  %24464 = mul nsw i32 10, %24463
  %24465 = add nsw i32 %24462, %24464
  %24466 = sext i32 %24465 to i64
  %24467 = getelementptr inbounds double, ptr %24461, i64 %24466
  %24468 = load double, ptr %24467, align 8, !tbaa !11
  %24469 = call double @llvm.fmuladd.f64(double 0xBCD7000000000000, double %24468, double %24460)
  %24470 = load ptr, ptr %7, align 8, !tbaa !9
  %24471 = load i32, ptr %12, align 4, !tbaa !5
  %24472 = load i32, ptr %8, align 4, !tbaa !5
  %24473 = mul nsw i32 11, %24472
  %24474 = add nsw i32 %24471, %24473
  %24475 = sext i32 %24474 to i64
  %24476 = getelementptr inbounds double, ptr %24470, i64 %24475
  %24477 = load double, ptr %24476, align 8, !tbaa !11
  %24478 = call double @llvm.fmuladd.f64(double 0xBCD9800000000002, double %24477, double %24469)
  %24479 = load ptr, ptr %7, align 8, !tbaa !9
  %24480 = load i32, ptr %12, align 4, !tbaa !5
  %24481 = load i32, ptr %8, align 4, !tbaa !5
  %24482 = mul nsw i32 12, %24481
  %24483 = add nsw i32 %24480, %24482
  %24484 = sext i32 %24483 to i64
  %24485 = getelementptr inbounds double, ptr %24479, i64 %24484
  %24486 = load double, ptr %24485, align 8, !tbaa !11
  %24487 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %24486, double %24478)
  %24488 = load ptr, ptr %7, align 8, !tbaa !9
  %24489 = load i32, ptr %12, align 4, !tbaa !5
  %24490 = load i32, ptr %8, align 4, !tbaa !5
  %24491 = mul nsw i32 13, %24490
  %24492 = add nsw i32 %24489, %24491
  %24493 = sext i32 %24492 to i64
  %24494 = getelementptr inbounds double, ptr %24488, i64 %24493
  %24495 = load double, ptr %24494, align 8, !tbaa !11
  %24496 = call double @llvm.fmuladd.f64(double 0x3C92000000000000, double %24495, double %24487)
  %24497 = load ptr, ptr %7, align 8, !tbaa !9
  %24498 = load i32, ptr %12, align 4, !tbaa !5
  %24499 = load i32, ptr %8, align 4, !tbaa !5
  %24500 = mul nsw i32 14, %24499
  %24501 = add nsw i32 %24498, %24500
  %24502 = sext i32 %24501 to i64
  %24503 = getelementptr inbounds double, ptr %24497, i64 %24502
  %24504 = load double, ptr %24503, align 8, !tbaa !11
  %24505 = call double @llvm.fmuladd.f64(double 0x3CB2000000000000, double %24504, double %24496)
  %24506 = load ptr, ptr %7, align 8, !tbaa !9
  %24507 = load i32, ptr %12, align 4, !tbaa !5
  %24508 = load i32, ptr %8, align 4, !tbaa !5
  %24509 = mul nsw i32 15, %24508
  %24510 = add nsw i32 %24507, %24509
  %24511 = sext i32 %24510 to i64
  %24512 = getelementptr inbounds double, ptr %24506, i64 %24511
  %24513 = load double, ptr %24512, align 8, !tbaa !11
  %24514 = call double @llvm.fmuladd.f64(double 0x3CE1000000000000, double %24513, double %24505)
  %24515 = load ptr, ptr %7, align 8, !tbaa !9
  %24516 = load i32, ptr %12, align 4, !tbaa !5
  %24517 = load i32, ptr %8, align 4, !tbaa !5
  %24518 = mul nsw i32 16, %24517
  %24519 = add nsw i32 %24516, %24518
  %24520 = sext i32 %24519 to i64
  %24521 = getelementptr inbounds double, ptr %24515, i64 %24520
  %24522 = load double, ptr %24521, align 8, !tbaa !11
  %24523 = call double @llvm.fmuladd.f64(double 0x3CC2400000000000, double %24522, double %24514)
  %24524 = load ptr, ptr %7, align 8, !tbaa !9
  %24525 = load i32, ptr %12, align 4, !tbaa !5
  %24526 = load i32, ptr %8, align 4, !tbaa !5
  %24527 = mul nsw i32 17, %24526
  %24528 = add nsw i32 %24525, %24527
  %24529 = sext i32 %24528 to i64
  %24530 = getelementptr inbounds double, ptr %24524, i64 %24529
  %24531 = load double, ptr %24530, align 8, !tbaa !11
  %24532 = call double @llvm.fmuladd.f64(double 0x3CCF000000000000, double %24531, double %24523)
  %24533 = load ptr, ptr %7, align 8, !tbaa !9
  %24534 = load i32, ptr %12, align 4, !tbaa !5
  %24535 = load i32, ptr %8, align 4, !tbaa !5
  %24536 = mul nsw i32 18, %24535
  %24537 = add nsw i32 %24534, %24536
  %24538 = sext i32 %24537 to i64
  %24539 = getelementptr inbounds double, ptr %24533, i64 %24538
  %24540 = load double, ptr %24539, align 8, !tbaa !11
  %24541 = call double @llvm.fmuladd.f64(double 0xBFD4F58312101B3D, double %24540, double %24532)
  %24542 = load ptr, ptr %7, align 8, !tbaa !9
  %24543 = load i32, ptr %12, align 4, !tbaa !5
  %24544 = load i32, ptr %8, align 4, !tbaa !5
  %24545 = mul nsw i32 19, %24544
  %24546 = add nsw i32 %24543, %24545
  %24547 = sext i32 %24546 to i64
  %24548 = getelementptr inbounds double, ptr %24542, i64 %24547
  %24549 = load double, ptr %24548, align 8, !tbaa !11
  %24550 = call double @llvm.fmuladd.f64(double 0xBCCE000000000000, double %24549, double %24541)
  store double %24550, ptr %11, align 8, !tbaa !11
  %24551 = load double, ptr %11, align 8, !tbaa !11
  %24552 = load ptr, ptr %9, align 8, !tbaa !9
  %24553 = load i32, ptr %12, align 4, !tbaa !5
  %24554 = load i32, ptr %10, align 4, !tbaa !5
  %24555 = mul nsw i32 88, %24554
  %24556 = add nsw i32 %24553, %24555
  %24557 = sext i32 %24556 to i64
  %24558 = getelementptr inbounds double, ptr %24552, i64 %24557
  %24559 = load double, ptr %24558, align 8, !tbaa !11
  %24560 = fadd double %24559, %24551
  store double %24560, ptr %24558, align 8, !tbaa !11
  %24561 = load ptr, ptr %7, align 8, !tbaa !9
  %24562 = load i32, ptr %12, align 4, !tbaa !5
  %24563 = load i32, ptr %8, align 4, !tbaa !5
  %24564 = mul nsw i32 0, %24563
  %24565 = add nsw i32 %24562, %24564
  %24566 = sext i32 %24565 to i64
  %24567 = getelementptr inbounds double, ptr %24561, i64 %24566
  %24568 = load double, ptr %24567, align 8, !tbaa !11
  %24569 = load ptr, ptr %7, align 8, !tbaa !9
  %24570 = load i32, ptr %12, align 4, !tbaa !5
  %24571 = load i32, ptr %8, align 4, !tbaa !5
  %24572 = mul nsw i32 1, %24571
  %24573 = add nsw i32 %24570, %24572
  %24574 = sext i32 %24573 to i64
  %24575 = getelementptr inbounds double, ptr %24569, i64 %24574
  %24576 = load double, ptr %24575, align 8, !tbaa !11
  %24577 = fmul double 0xBD12680000000000, %24576
  %24578 = call double @llvm.fmuladd.f64(double 0xBD17000000000000, double %24568, double %24577)
  %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 2, %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 = call double @llvm.fmuladd.f64(double 0x3CEADFFFFFFFFFFF, double %24586, double %24578)
  %24588 = load ptr, ptr %7, align 8, !tbaa !9
  %24589 = load i32, ptr %12, align 4, !tbaa !5
  %24590 = load i32, ptr %8, align 4, !tbaa !5
  %24591 = mul nsw i32 3, %24590
  %24592 = add nsw i32 %24589, %24591
  %24593 = sext i32 %24592 to i64
  %24594 = getelementptr inbounds double, ptr %24588, i64 %24593
  %24595 = load double, ptr %24594, align 8, !tbaa !11
  %24596 = call double @llvm.fmuladd.f64(double 0xBCF1380000000000, double %24595, double %24587)
  %24597 = load ptr, ptr %7, align 8, !tbaa !9
  %24598 = load i32, ptr %12, align 4, !tbaa !5
  %24599 = load i32, ptr %8, align 4, !tbaa !5
  %24600 = mul nsw i32 4, %24599
  %24601 = add nsw i32 %24598, %24600
  %24602 = sext i32 %24601 to i64
  %24603 = getelementptr inbounds double, ptr %24597, i64 %24602
  %24604 = load double, ptr %24603, align 8, !tbaa !11
  %24605 = call double @llvm.fmuladd.f64(double 0x3D19CFFFFFFFFFFF, double %24604, double %24596)
  %24606 = load ptr, ptr %7, align 8, !tbaa !9
  %24607 = load i32, ptr %12, align 4, !tbaa !5
  %24608 = load i32, ptr %8, align 4, !tbaa !5
  %24609 = mul nsw i32 5, %24608
  %24610 = add nsw i32 %24607, %24609
  %24611 = sext i32 %24610 to i64
  %24612 = getelementptr inbounds double, ptr %24606, i64 %24611
  %24613 = load double, ptr %24612, align 8, !tbaa !11
  %24614 = call double @llvm.fmuladd.f64(double 0x3CF7400000000000, double %24613, double %24605)
  %24615 = load ptr, ptr %7, align 8, !tbaa !9
  %24616 = load i32, ptr %12, align 4, !tbaa !5
  %24617 = load i32, ptr %8, align 4, !tbaa !5
  %24618 = mul nsw i32 6, %24617
  %24619 = add nsw i32 %24616, %24618
  %24620 = sext i32 %24619 to i64
  %24621 = getelementptr inbounds double, ptr %24615, i64 %24620
  %24622 = load double, ptr %24621, align 8, !tbaa !11
  %24623 = call double @llvm.fmuladd.f64(double 0x3D08700000000003, double %24622, double %24614)
  %24624 = load ptr, ptr %7, align 8, !tbaa !9
  %24625 = load i32, ptr %12, align 4, !tbaa !5
  %24626 = load i32, ptr %8, align 4, !tbaa !5
  %24627 = mul nsw i32 7, %24626
  %24628 = add nsw i32 %24625, %24627
  %24629 = sext i32 %24628 to i64
  %24630 = getelementptr inbounds double, ptr %24624, i64 %24629
  %24631 = load double, ptr %24630, align 8, !tbaa !11
  %24632 = call double @llvm.fmuladd.f64(double 0x3CF6E00000000000, double %24631, double %24623)
  %24633 = load ptr, ptr %7, align 8, !tbaa !9
  %24634 = load i32, ptr %12, align 4, !tbaa !5
  %24635 = load i32, ptr %8, align 4, !tbaa !5
  %24636 = mul nsw i32 8, %24635
  %24637 = add nsw i32 %24634, %24636
  %24638 = sext i32 %24637 to i64
  %24639 = getelementptr inbounds double, ptr %24633, i64 %24638
  %24640 = load double, ptr %24639, align 8, !tbaa !11
  %24641 = call double @llvm.fmuladd.f64(double 0xBD0FD00000000002, double %24640, double %24632)
  %24642 = load ptr, ptr %7, align 8, !tbaa !9
  %24643 = load i32, ptr %12, align 4, !tbaa !5
  %24644 = load i32, ptr %8, align 4, !tbaa !5
  %24645 = mul nsw i32 9, %24644
  %24646 = add nsw i32 %24643, %24645
  %24647 = sext i32 %24646 to i64
  %24648 = getelementptr inbounds double, ptr %24642, i64 %24647
  %24649 = load double, ptr %24648, align 8, !tbaa !11
  %24650 = call double @llvm.fmuladd.f64(double 0xC0118E7E1D8191B1, double %24649, double %24641)
  %24651 = load ptr, ptr %7, align 8, !tbaa !9
  %24652 = load i32, ptr %12, align 4, !tbaa !5
  %24653 = load i32, ptr %8, align 4, !tbaa !5
  %24654 = mul nsw i32 10, %24653
  %24655 = add nsw i32 %24652, %24654
  %24656 = sext i32 %24655 to i64
  %24657 = getelementptr inbounds double, ptr %24651, i64 %24656
  %24658 = load double, ptr %24657, align 8, !tbaa !11
  %24659 = call double @llvm.fmuladd.f64(double 0xBCD8000000000001, double %24658, double %24650)
  %24660 = load ptr, ptr %7, align 8, !tbaa !9
  %24661 = load i32, ptr %12, align 4, !tbaa !5
  %24662 = load i32, ptr %8, align 4, !tbaa !5
  %24663 = mul nsw i32 11, %24662
  %24664 = add nsw i32 %24661, %24663
  %24665 = sext i32 %24664 to i64
  %24666 = getelementptr inbounds double, ptr %24660, i64 %24665
  %24667 = load double, ptr %24666, align 8, !tbaa !11
  %24668 = call double @llvm.fmuladd.f64(double 0xBCD7800000000000, double %24667, double %24659)
  %24669 = load ptr, ptr %7, align 8, !tbaa !9
  %24670 = load i32, ptr %12, align 4, !tbaa !5
  %24671 = load i32, ptr %8, align 4, !tbaa !5
  %24672 = mul nsw i32 12, %24671
  %24673 = add nsw i32 %24670, %24672
  %24674 = sext i32 %24673 to i64
  %24675 = getelementptr inbounds double, ptr %24669, i64 %24674
  %24676 = load double, ptr %24675, align 8, !tbaa !11
  %24677 = call double @llvm.fmuladd.f64(double 0x3CAE000000000002, double %24676, double %24668)
  %24678 = load ptr, ptr %7, align 8, !tbaa !9
  %24679 = load i32, ptr %12, align 4, !tbaa !5
  %24680 = load i32, ptr %8, align 4, !tbaa !5
  %24681 = mul nsw i32 13, %24680
  %24682 = add nsw i32 %24679, %24681
  %24683 = sext i32 %24682 to i64
  %24684 = getelementptr inbounds double, ptr %24678, i64 %24683
  %24685 = load double, ptr %24684, align 8, !tbaa !11
  %24686 = call double @llvm.fmuladd.f64(double 0xBCA7000000000002, double %24685, double %24677)
  %24687 = load ptr, ptr %7, align 8, !tbaa !9
  %24688 = load i32, ptr %12, align 4, !tbaa !5
  %24689 = load i32, ptr %8, align 4, !tbaa !5
  %24690 = mul nsw i32 14, %24689
  %24691 = add nsw i32 %24688, %24690
  %24692 = sext i32 %24691 to i64
  %24693 = getelementptr inbounds double, ptr %24687, i64 %24692
  %24694 = load double, ptr %24693, align 8, !tbaa !11
  %24695 = call double @llvm.fmuladd.f64(double 0x3CE1800000000000, double %24694, double %24686)
  %24696 = load ptr, ptr %7, align 8, !tbaa !9
  %24697 = load i32, ptr %12, align 4, !tbaa !5
  %24698 = load i32, ptr %8, align 4, !tbaa !5
  %24699 = mul nsw i32 15, %24698
  %24700 = add nsw i32 %24697, %24699
  %24701 = sext i32 %24700 to i64
  %24702 = getelementptr inbounds double, ptr %24696, i64 %24701
  %24703 = load double, ptr %24702, align 8, !tbaa !11
  %24704 = call double @llvm.fmuladd.f64(double 0x3CBC000000000000, double %24703, double %24695)
  %24705 = load ptr, ptr %7, align 8, !tbaa !9
  %24706 = load i32, ptr %12, align 4, !tbaa !5
  %24707 = load i32, ptr %8, align 4, !tbaa !5
  %24708 = mul nsw i32 16, %24707
  %24709 = add nsw i32 %24706, %24708
  %24710 = sext i32 %24709 to i64
  %24711 = getelementptr inbounds double, ptr %24705, i64 %24710
  %24712 = load double, ptr %24711, align 8, !tbaa !11
  %24713 = call double @llvm.fmuladd.f64(double 0x3CC9000000000000, double %24712, double %24704)
  %24714 = load ptr, ptr %7, align 8, !tbaa !9
  %24715 = load i32, ptr %12, align 4, !tbaa !5
  %24716 = load i32, ptr %8, align 4, !tbaa !5
  %24717 = mul nsw i32 17, %24716
  %24718 = add nsw i32 %24715, %24717
  %24719 = sext i32 %24718 to i64
  %24720 = getelementptr inbounds double, ptr %24714, i64 %24719
  %24721 = load double, ptr %24720, align 8, !tbaa !11
  %24722 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %24721, double %24713)
  %24723 = load ptr, ptr %7, align 8, !tbaa !9
  %24724 = load i32, ptr %12, align 4, !tbaa !5
  %24725 = load i32, ptr %8, align 4, !tbaa !5
  %24726 = mul nsw i32 18, %24725
  %24727 = add nsw i32 %24724, %24726
  %24728 = sext i32 %24727 to i64
  %24729 = getelementptr inbounds double, ptr %24723, i64 %24728
  %24730 = load double, ptr %24729, align 8, !tbaa !11
  %24731 = call double @llvm.fmuladd.f64(double 0xBCCD000000000000, double %24730, double %24722)
  %24732 = load ptr, ptr %7, align 8, !tbaa !9
  %24733 = load i32, ptr %12, align 4, !tbaa !5
  %24734 = load i32, ptr %8, align 4, !tbaa !5
  %24735 = mul nsw i32 19, %24734
  %24736 = add nsw i32 %24733, %24735
  %24737 = sext i32 %24736 to i64
  %24738 = getelementptr inbounds double, ptr %24732, i64 %24737
  %24739 = load double, ptr %24738, align 8, !tbaa !11
  %24740 = call double @llvm.fmuladd.f64(double 0xBFD4F58312101B3D, double %24739, double %24731)
  store double %24740, ptr %11, align 8, !tbaa !11
  %24741 = load double, ptr %11, align 8, !tbaa !11
  %24742 = load ptr, ptr %9, align 8, !tbaa !9
  %24743 = load i32, ptr %12, align 4, !tbaa !5
  %24744 = load i32, ptr %10, align 4, !tbaa !5
  %24745 = mul nsw i32 89, %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 = fadd double %24749, %24741
  store double %24750, ptr %24748, align 8, !tbaa !11
  %24751 = load ptr, ptr %7, align 8, !tbaa !9
  %24752 = load i32, ptr %12, align 4, !tbaa !5
  %24753 = load i32, ptr %8, align 4, !tbaa !5
  %24754 = mul nsw i32 0, %24753
  %24755 = add nsw i32 %24752, %24754
  %24756 = sext i32 %24755 to i64
  %24757 = getelementptr inbounds double, ptr %24751, i64 %24756
  %24758 = load double, ptr %24757, 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 1, %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 = fmul double 0xBCC4800000000000, %24766
  %24768 = call double @llvm.fmuladd.f64(double 0x3FF3F64564513B1C, double %24758, double %24767)
  %24769 = load ptr, ptr %7, align 8, !tbaa !9
  %24770 = load i32, ptr %12, align 4, !tbaa !5
  %24771 = load i32, ptr %8, align 4, !tbaa !5
  %24772 = mul nsw i32 2, %24771
  %24773 = add nsw i32 %24770, %24772
  %24774 = sext i32 %24773 to i64
  %24775 = getelementptr inbounds double, ptr %24769, i64 %24774
  %24776 = load double, ptr %24775, align 8, !tbaa !11
  %24777 = call double @llvm.fmuladd.f64(double 0xBCC6200000000000, double %24776, double %24768)
  %24778 = load ptr, ptr %7, align 8, !tbaa !9
  %24779 = load i32, ptr %12, align 4, !tbaa !5
  %24780 = load i32, ptr %8, align 4, !tbaa !5
  %24781 = mul nsw i32 3, %24780
  %24782 = add nsw i32 %24779, %24781
  %24783 = sext i32 %24782 to i64
  %24784 = getelementptr inbounds double, ptr %24778, i64 %24783
  %24785 = load double, ptr %24784, align 8, !tbaa !11
  %24786 = call double @llvm.fmuladd.f64(double 0xBCC4600000000000, double %24785, double %24777)
  %24787 = load ptr, ptr %7, align 8, !tbaa !9
  %24788 = load i32, ptr %12, align 4, !tbaa !5
  %24789 = load i32, ptr %8, align 4, !tbaa !5
  %24790 = mul nsw i32 4, %24789
  %24791 = add nsw i32 %24788, %24790
  %24792 = sext i32 %24791 to i64
  %24793 = getelementptr inbounds double, ptr %24787, i64 %24792
  %24794 = load double, ptr %24793, align 8, !tbaa !11
  %24795 = call double @llvm.fmuladd.f64(double 0x3CEB600000000000, double %24794, double %24786)
  %24796 = load ptr, ptr %7, align 8, !tbaa !9
  %24797 = load i32, ptr %12, align 4, !tbaa !5
  %24798 = load i32, ptr %8, align 4, !tbaa !5
  %24799 = mul nsw i32 5, %24798
  %24800 = add nsw i32 %24797, %24799
  %24801 = sext i32 %24800 to i64
  %24802 = getelementptr inbounds double, ptr %24796, i64 %24801
  %24803 = load double, ptr %24802, align 8, !tbaa !11
  %24804 = call double @llvm.fmuladd.f64(double 0x3CEB200000000000, double %24803, double %24795)
  %24805 = load ptr, ptr %7, align 8, !tbaa !9
  %24806 = load i32, ptr %12, align 4, !tbaa !5
  %24807 = load i32, ptr %8, align 4, !tbaa !5
  %24808 = mul nsw i32 6, %24807
  %24809 = add nsw i32 %24806, %24808
  %24810 = sext i32 %24809 to i64
  %24811 = getelementptr inbounds double, ptr %24805, i64 %24810
  %24812 = load double, ptr %24811, align 8, !tbaa !11
  %24813 = call double @llvm.fmuladd.f64(double 0x3CEBA00000000000, double %24812, double %24804)
  %24814 = load ptr, ptr %7, align 8, !tbaa !9
  %24815 = load i32, ptr %12, align 4, !tbaa !5
  %24816 = load i32, ptr %8, align 4, !tbaa !5
  %24817 = mul nsw i32 7, %24816
  %24818 = add nsw i32 %24815, %24817
  %24819 = sext i32 %24818 to i64
  %24820 = getelementptr inbounds double, ptr %24814, i64 %24819
  %24821 = load double, ptr %24820, align 8, !tbaa !11
  %24822 = call double @llvm.fmuladd.f64(double 0x3CE9600000000001, double %24821, double %24813)
  %24823 = load ptr, ptr %7, align 8, !tbaa !9
  %24824 = load i32, ptr %12, align 4, !tbaa !5
  %24825 = load i32, ptr %8, align 4, !tbaa !5
  %24826 = mul nsw i32 8, %24825
  %24827 = add nsw i32 %24824, %24826
  %24828 = sext i32 %24827 to i64
  %24829 = getelementptr inbounds double, ptr %24823, i64 %24828
  %24830 = load double, ptr %24829, align 8, !tbaa !11
  %24831 = call double @llvm.fmuladd.f64(double 0x3CEAC00000000001, double %24830, double %24822)
  %24832 = load ptr, ptr %7, align 8, !tbaa !9
  %24833 = load i32, ptr %12, align 4, !tbaa !5
  %24834 = load i32, ptr %8, align 4, !tbaa !5
  %24835 = mul nsw i32 9, %24834
  %24836 = add nsw i32 %24833, %24835
  %24837 = sext i32 %24836 to i64
  %24838 = getelementptr inbounds double, ptr %24832, i64 %24837
  %24839 = load double, ptr %24838, align 8, !tbaa !11
  %24840 = call double @llvm.fmuladd.f64(double 0x3CE9C00000000000, double %24839, double %24831)
  %24841 = load ptr, ptr %7, align 8, !tbaa !9
  %24842 = load i32, ptr %12, align 4, !tbaa !5
  %24843 = load i32, ptr %8, align 4, !tbaa !5
  %24844 = mul nsw i32 10, %24843
  %24845 = add nsw i32 %24842, %24844
  %24846 = sext i32 %24845 to i64
  %24847 = getelementptr inbounds double, ptr %24841, i64 %24846
  %24848 = load double, ptr %24847, align 8, !tbaa !11
  %24849 = call double @llvm.fmuladd.f64(double 0x3FE3AA36D354D104, double %24848, double %24840)
  %24850 = load ptr, ptr %7, align 8, !tbaa !9
  %24851 = load i32, ptr %12, align 4, !tbaa !5
  %24852 = load i32, ptr %8, align 4, !tbaa !5
  %24853 = mul nsw i32 11, %24852
  %24854 = add nsw i32 %24851, %24853
  %24855 = sext i32 %24854 to i64
  %24856 = getelementptr inbounds double, ptr %24850, i64 %24855
  %24857 = load double, ptr %24856, align 8, !tbaa !11
  %24858 = call double @llvm.fmuladd.f64(double 0xBCB1000000000001, double %24857, double %24849)
  %24859 = load ptr, ptr %7, align 8, !tbaa !9
  %24860 = load i32, ptr %12, align 4, !tbaa !5
  %24861 = load i32, ptr %8, align 4, !tbaa !5
  %24862 = mul nsw i32 12, %24861
  %24863 = add nsw i32 %24860, %24862
  %24864 = sext i32 %24863 to i64
  %24865 = getelementptr inbounds double, ptr %24859, i64 %24864
  %24866 = load double, ptr %24865, align 8, !tbaa !11
  %24867 = call double @llvm.fmuladd.f64(double 0xBCB43FFFFFFFFFFF, double %24866, double %24858)
  %24868 = load ptr, ptr %7, align 8, !tbaa !9
  %24869 = load i32, ptr %12, align 4, !tbaa !5
  %24870 = load i32, ptr %8, align 4, !tbaa !5
  %24871 = mul nsw i32 13, %24870
  %24872 = add nsw i32 %24869, %24871
  %24873 = sext i32 %24872 to i64
  %24874 = getelementptr inbounds double, ptr %24868, i64 %24873
  %24875 = load double, ptr %24874, align 8, !tbaa !11
  %24876 = call double @llvm.fmuladd.f64(double 0xBCB2C00000000001, double %24875, double %24867)
  %24877 = load ptr, ptr %7, align 8, !tbaa !9
  %24878 = load i32, ptr %12, align 4, !tbaa !5
  %24879 = load i32, ptr %8, align 4, !tbaa !5
  %24880 = mul nsw i32 14, %24879
  %24881 = add nsw i32 %24878, %24880
  %24882 = sext i32 %24881 to i64
  %24883 = getelementptr inbounds double, ptr %24877, i64 %24882
  %24884 = load double, ptr %24883, align 8, !tbaa !11
  %24885 = call double @llvm.fmuladd.f64(double 0x3CDBC00000000002, double %24884, double %24876)
  %24886 = load ptr, ptr %7, align 8, !tbaa !9
  %24887 = load i32, ptr %12, align 4, !tbaa !5
  %24888 = load i32, ptr %8, align 4, !tbaa !5
  %24889 = mul nsw i32 15, %24888
  %24890 = add nsw i32 %24887, %24889
  %24891 = sext i32 %24890 to i64
  %24892 = getelementptr inbounds double, ptr %24886, i64 %24891
  %24893 = load double, ptr %24892, align 8, !tbaa !11
  %24894 = call double @llvm.fmuladd.f64(double 0x3CDBC00000000002, double %24893, double %24885)
  %24895 = load ptr, ptr %7, align 8, !tbaa !9
  %24896 = load i32, ptr %12, align 4, !tbaa !5
  %24897 = load i32, ptr %8, align 4, !tbaa !5
  %24898 = mul nsw i32 16, %24897
  %24899 = add nsw i32 %24896, %24898
  %24900 = sext i32 %24899 to i64
  %24901 = getelementptr inbounds double, ptr %24895, i64 %24900
  %24902 = load double, ptr %24901, align 8, !tbaa !11
  %24903 = call double @llvm.fmuladd.f64(double 0x3CDB400000000001, double %24902, double %24894)
  %24904 = load ptr, ptr %7, align 8, !tbaa !9
  %24905 = load i32, ptr %12, align 4, !tbaa !5
  %24906 = load i32, ptr %8, align 4, !tbaa !5
  %24907 = mul nsw i32 17, %24906
  %24908 = add nsw i32 %24905, %24907
  %24909 = sext i32 %24908 to i64
  %24910 = getelementptr inbounds double, ptr %24904, i64 %24909
  %24911 = load double, ptr %24910, align 8, !tbaa !11
  %24912 = call double @llvm.fmuladd.f64(double 0x3CDAC00000000001, double %24911, double %24903)
  %24913 = load ptr, ptr %7, align 8, !tbaa !9
  %24914 = load i32, ptr %12, align 4, !tbaa !5
  %24915 = load i32, ptr %8, align 4, !tbaa !5
  %24916 = mul nsw i32 18, %24915
  %24917 = add nsw i32 %24914, %24916
  %24918 = sext i32 %24917 to i64
  %24919 = getelementptr inbounds double, ptr %24913, i64 %24918
  %24920 = load double, ptr %24919, align 8, !tbaa !11
  %24921 = call double @llvm.fmuladd.f64(double 0x3CDB7FFFFFFFFFFF, double %24920, double %24912)
  %24922 = load ptr, ptr %7, align 8, !tbaa !9
  %24923 = load i32, ptr %12, align 4, !tbaa !5
  %24924 = load i32, ptr %8, align 4, !tbaa !5
  %24925 = mul nsw i32 19, %24924
  %24926 = add nsw i32 %24923, %24925
  %24927 = sext i32 %24926 to i64
  %24928 = getelementptr inbounds double, ptr %24922, i64 %24927
  %24929 = load double, ptr %24928, align 8, !tbaa !11
  %24930 = call double @llvm.fmuladd.f64(double 0x3CDA000000000003, double %24929, double %24921)
  store double %24930, ptr %11, align 8, !tbaa !11
  %24931 = load double, ptr %11, align 8, !tbaa !11
  %24932 = load ptr, ptr %9, align 8, !tbaa !9
  %24933 = load i32, ptr %12, align 4, !tbaa !5
  %24934 = load i32, ptr %10, align 4, !tbaa !5
  %24935 = mul nsw i32 90, %24934
  %24936 = add nsw i32 %24933, %24935
  %24937 = sext i32 %24936 to i64
  %24938 = getelementptr inbounds double, ptr %24932, i64 %24937
  %24939 = load double, ptr %24938, align 8, !tbaa !11
  %24940 = fadd double %24939, %24931
  store double %24940, ptr %24938, align 8, !tbaa !11
  %24941 = load ptr, ptr %7, align 8, !tbaa !9
  %24942 = load i32, ptr %12, align 4, !tbaa !5
  %24943 = load i32, ptr %8, align 4, !tbaa !5
  %24944 = mul nsw i32 0, %24943
  %24945 = add nsw i32 %24942, %24944
  %24946 = sext i32 %24945 to i64
  %24947 = getelementptr inbounds double, ptr %24941, i64 %24946
  %24948 = load double, ptr %24947, align 8, !tbaa !11
  %24949 = load ptr, ptr %7, align 8, !tbaa !9
  %24950 = load i32, ptr %12, align 4, !tbaa !5
  %24951 = load i32, ptr %8, align 4, !tbaa !5
  %24952 = mul nsw i32 1, %24951
  %24953 = add nsw i32 %24950, %24952
  %24954 = sext i32 %24953 to i64
  %24955 = getelementptr inbounds double, ptr %24949, i64 %24954
  %24956 = load double, ptr %24955, align 8, !tbaa !11
  %24957 = fmul double 0x3FF3F64564513A68, %24956
  %24958 = call double @llvm.fmuladd.f64(double 0xBCF4FFFFFFFFFFFF, double %24948, double %24957)
  %24959 = load ptr, ptr %7, align 8, !tbaa !9
  %24960 = load i32, ptr %12, align 4, !tbaa !5
  %24961 = load i32, ptr %8, align 4, !tbaa !5
  %24962 = mul nsw i32 2, %24961
  %24963 = add nsw i32 %24960, %24962
  %24964 = sext i32 %24963 to i64
  %24965 = getelementptr inbounds double, ptr %24959, i64 %24964
  %24966 = load double, ptr %24965, align 8, !tbaa !11
  %24967 = call double @llvm.fmuladd.f64(double 0x3CE07FFFFFFFFFFF, double %24966, double %24958)
  %24968 = load ptr, ptr %7, align 8, !tbaa !9
  %24969 = load i32, ptr %12, align 4, !tbaa !5
  %24970 = load i32, ptr %8, align 4, !tbaa !5
  %24971 = mul nsw i32 3, %24970
  %24972 = add nsw i32 %24969, %24971
  %24973 = sext i32 %24972 to i64
  %24974 = getelementptr inbounds double, ptr %24968, i64 %24973
  %24975 = load double, ptr %24974, align 8, !tbaa !11
  %24976 = call double @llvm.fmuladd.f64(double 0x3CE4DFFFFFFFFFFF, double %24975, double %24967)
  %24977 = load ptr, ptr %7, align 8, !tbaa !9
  %24978 = load i32, ptr %12, align 4, !tbaa !5
  %24979 = load i32, ptr %8, align 4, !tbaa !5
  %24980 = mul nsw i32 4, %24979
  %24981 = add nsw i32 %24978, %24980
  %24982 = sext i32 %24981 to i64
  %24983 = getelementptr inbounds double, ptr %24977, i64 %24982
  %24984 = load double, ptr %24983, align 8, !tbaa !11
  %24985 = call double @llvm.fmuladd.f64(double 0xBCE8000000000001, double %24984, double %24976)
  %24986 = load ptr, ptr %7, align 8, !tbaa !9
  %24987 = load i32, ptr %12, align 4, !tbaa !5
  %24988 = load i32, ptr %8, align 4, !tbaa !5
  %24989 = mul nsw i32 5, %24988
  %24990 = add nsw i32 %24987, %24989
  %24991 = sext i32 %24990 to i64
  %24992 = getelementptr inbounds double, ptr %24986, i64 %24991
  %24993 = load double, ptr %24992, align 8, !tbaa !11
  %24994 = call double @llvm.fmuladd.f64(double 0xBCE67FFFFFFFFFFF, double %24993, double %24985)
  %24995 = load ptr, ptr %7, align 8, !tbaa !9
  %24996 = load i32, ptr %12, align 4, !tbaa !5
  %24997 = load i32, ptr %8, align 4, !tbaa !5
  %24998 = mul nsw i32 6, %24997
  %24999 = add nsw i32 %24996, %24998
  %25000 = sext i32 %24999 to i64
  %25001 = getelementptr inbounds double, ptr %24995, i64 %25000
  %25002 = load double, ptr %25001, align 8, !tbaa !11
  %25003 = call double @llvm.fmuladd.f64(double 0x3CEAC00000000001, double %25002, double %24994)
  %25004 = load ptr, ptr %7, align 8, !tbaa !9
  %25005 = load i32, ptr %12, align 4, !tbaa !5
  %25006 = load i32, ptr %8, align 4, !tbaa !5
  %25007 = mul nsw i32 7, %25006
  %25008 = add nsw i32 %25005, %25007
  %25009 = sext i32 %25008 to i64
  %25010 = getelementptr inbounds double, ptr %25004, i64 %25009
  %25011 = load double, ptr %25010, align 8, !tbaa !11
  %25012 = call double @llvm.fmuladd.f64(double 0x3CE7C00000000001, double %25011, double %25003)
  %25013 = load ptr, ptr %7, align 8, !tbaa !9
  %25014 = load i32, ptr %12, align 4, !tbaa !5
  %25015 = load i32, ptr %8, align 4, !tbaa !5
  %25016 = mul nsw i32 8, %25015
  %25017 = add nsw i32 %25014, %25016
  %25018 = sext i32 %25017 to i64
  %25019 = getelementptr inbounds double, ptr %25013, i64 %25018
  %25020 = load double, ptr %25019, align 8, !tbaa !11
  %25021 = call double @llvm.fmuladd.f64(double 0x3D0E800000000000, double %25020, double %25012)
  %25022 = load ptr, ptr %7, align 8, !tbaa !9
  %25023 = load i32, ptr %12, align 4, !tbaa !5
  %25024 = load i32, ptr %8, align 4, !tbaa !5
  %25025 = mul nsw i32 9, %25024
  %25026 = add nsw i32 %25023, %25025
  %25027 = sext i32 %25026 to i64
  %25028 = getelementptr inbounds double, ptr %25022, i64 %25027
  %25029 = load double, ptr %25028, align 8, !tbaa !11
  %25030 = call double @llvm.fmuladd.f64(double 0x3D0E3FFFFFFFFFFD, double %25029, double %25021)
  %25031 = load ptr, ptr %7, align 8, !tbaa !9
  %25032 = load i32, ptr %12, align 4, !tbaa !5
  %25033 = load i32, ptr %8, align 4, !tbaa !5
  %25034 = mul nsw i32 10, %25033
  %25035 = add nsw i32 %25032, %25034
  %25036 = sext i32 %25035 to i64
  %25037 = getelementptr inbounds double, ptr %25031, i64 %25036
  %25038 = load double, ptr %25037, align 8, !tbaa !11
  %25039 = call double @llvm.fmuladd.f64(double 0xBCE2000000000001, double %25038, double %25030)
  %25040 = load ptr, ptr %7, align 8, !tbaa !9
  %25041 = load i32, ptr %12, align 4, !tbaa !5
  %25042 = load i32, ptr %8, align 4, !tbaa !5
  %25043 = mul nsw i32 11, %25042
  %25044 = add nsw i32 %25041, %25043
  %25045 = sext i32 %25044 to i64
  %25046 = getelementptr inbounds double, ptr %25040, i64 %25045
  %25047 = load double, ptr %25046, align 8, !tbaa !11
  %25048 = call double @llvm.fmuladd.f64(double 0x3FE3AA36D354D050, double %25047, double %25039)
  %25049 = load ptr, ptr %7, align 8, !tbaa !9
  %25050 = load i32, ptr %12, align 4, !tbaa !5
  %25051 = load i32, ptr %8, align 4, !tbaa !5
  %25052 = mul nsw i32 12, %25051
  %25053 = add nsw i32 %25050, %25052
  %25054 = sext i32 %25053 to i64
  %25055 = getelementptr inbounds double, ptr %25049, i64 %25054
  %25056 = load double, ptr %25055, align 8, !tbaa !11
  %25057 = call double @llvm.fmuladd.f64(double 0x3CCB000000000000, double %25056, double %25048)
  %25058 = load ptr, ptr %7, align 8, !tbaa !9
  %25059 = load i32, ptr %12, align 4, !tbaa !5
  %25060 = load i32, ptr %8, align 4, !tbaa !5
  %25061 = mul nsw i32 13, %25060
  %25062 = add nsw i32 %25059, %25061
  %25063 = sext i32 %25062 to i64
  %25064 = getelementptr inbounds double, ptr %25058, i64 %25063
  %25065 = load double, ptr %25064, align 8, !tbaa !11
  %25066 = call double @llvm.fmuladd.f64(double 0x3CD4C00000000000, double %25065, double %25057)
  %25067 = load ptr, ptr %7, align 8, !tbaa !9
  %25068 = load i32, ptr %12, align 4, !tbaa !5
  %25069 = load i32, ptr %8, align 4, !tbaa !5
  %25070 = mul nsw i32 14, %25069
  %25071 = add nsw i32 %25068, %25070
  %25072 = sext i32 %25071 to i64
  %25073 = getelementptr inbounds double, ptr %25067, i64 %25072
  %25074 = load double, ptr %25073, align 8, !tbaa !11
  %25075 = call double @llvm.fmuladd.f64(double 0xBCD4000000000002, double %25074, double %25066)
  %25076 = load ptr, ptr %7, align 8, !tbaa !9
  %25077 = load i32, ptr %12, align 4, !tbaa !5
  %25078 = load i32, ptr %8, align 4, !tbaa !5
  %25079 = mul nsw i32 15, %25078
  %25080 = add nsw i32 %25077, %25079
  %25081 = sext i32 %25080 to i64
  %25082 = getelementptr inbounds double, ptr %25076, i64 %25081
  %25083 = load double, ptr %25082, align 8, !tbaa !11
  %25084 = call double @llvm.fmuladd.f64(double 0xBCD7000000000000, double %25083, double %25075)
  %25085 = load ptr, ptr %7, align 8, !tbaa !9
  %25086 = load i32, ptr %12, align 4, !tbaa !5
  %25087 = load i32, ptr %8, align 4, !tbaa !5
  %25088 = mul nsw i32 16, %25087
  %25089 = add nsw i32 %25086, %25088
  %25090 = sext i32 %25089 to i64
  %25091 = getelementptr inbounds double, ptr %25085, i64 %25090
  %25092 = load double, ptr %25091, align 8, !tbaa !11
  %25093 = call double @llvm.fmuladd.f64(double 0x3CDE800000000001, double %25092, double %25084)
  %25094 = load ptr, ptr %7, align 8, !tbaa !9
  %25095 = load i32, ptr %12, align 4, !tbaa !5
  %25096 = load i32, ptr %8, align 4, !tbaa !5
  %25097 = mul nsw i32 17, %25096
  %25098 = add nsw i32 %25095, %25097
  %25099 = sext i32 %25098 to i64
  %25100 = getelementptr inbounds double, ptr %25094, i64 %25099
  %25101 = load double, ptr %25100, align 8, !tbaa !11
  %25102 = call double @llvm.fmuladd.f64(double 0x3CDA7FFFFFFFFFFE, double %25101, double %25093)
  %25103 = load ptr, ptr %7, align 8, !tbaa !9
  %25104 = load i32, ptr %12, align 4, !tbaa !5
  %25105 = load i32, ptr %8, align 4, !tbaa !5
  %25106 = mul nsw i32 18, %25105
  %25107 = add nsw i32 %25104, %25106
  %25108 = sext i32 %25107 to i64
  %25109 = getelementptr inbounds double, ptr %25103, i64 %25108
  %25110 = load double, ptr %25109, align 8, !tbaa !11
  %25111 = call double @llvm.fmuladd.f64(double 0x3D00000000000000, double %25110, double %25102)
  %25112 = load ptr, ptr %7, align 8, !tbaa !9
  %25113 = load i32, ptr %12, align 4, !tbaa !5
  %25114 = load i32, ptr %8, align 4, !tbaa !5
  %25115 = mul nsw i32 19, %25114
  %25116 = add nsw i32 %25113, %25115
  %25117 = sext i32 %25116 to i64
  %25118 = getelementptr inbounds double, ptr %25112, i64 %25117
  %25119 = load double, ptr %25118, align 8, !tbaa !11
  %25120 = call double @llvm.fmuladd.f64(double 0x3CFD800000000001, double %25119, double %25111)
  store double %25120, ptr %11, align 8, !tbaa !11
  %25121 = load double, ptr %11, align 8, !tbaa !11
  %25122 = load ptr, ptr %9, align 8, !tbaa !9
  %25123 = load i32, ptr %12, align 4, !tbaa !5
  %25124 = load i32, ptr %10, align 4, !tbaa !5
  %25125 = mul nsw i32 91, %25124
  %25126 = add nsw i32 %25123, %25125
  %25127 = sext i32 %25126 to i64
  %25128 = getelementptr inbounds double, ptr %25122, i64 %25127
  %25129 = load double, ptr %25128, align 8, !tbaa !11
  %25130 = fadd double %25129, %25121
  store double %25130, ptr %25128, align 8, !tbaa !11
  %25131 = load ptr, ptr %7, align 8, !tbaa !9
  %25132 = load i32, ptr %12, align 4, !tbaa !5
  %25133 = load i32, ptr %8, align 4, !tbaa !5
  %25134 = mul nsw i32 0, %25133
  %25135 = add nsw i32 %25132, %25134
  %25136 = sext i32 %25135 to i64
  %25137 = getelementptr inbounds double, ptr %25131, i64 %25136
  %25138 = load double, ptr %25137, align 8, !tbaa !11
  %25139 = load ptr, ptr %7, align 8, !tbaa !9
  %25140 = load i32, ptr %12, align 4, !tbaa !5
  %25141 = load i32, ptr %8, align 4, !tbaa !5
  %25142 = mul nsw i32 1, %25141
  %25143 = add nsw i32 %25140, %25142
  %25144 = sext i32 %25143 to i64
  %25145 = getelementptr inbounds double, ptr %25139, i64 %25144
  %25146 = load double, ptr %25145, align 8, !tbaa !11
  %25147 = fmul double 0x3CE2000000000001, %25146
  %25148 = call double @llvm.fmuladd.f64(double 0xBCF6000000000000, double %25138, double %25147)
  %25149 = load ptr, ptr %7, align 8, !tbaa !9
  %25150 = load i32, ptr %12, align 4, !tbaa !5
  %25151 = load i32, ptr %8, align 4, !tbaa !5
  %25152 = mul nsw i32 2, %25151
  %25153 = add nsw i32 %25150, %25152
  %25154 = sext i32 %25153 to i64
  %25155 = getelementptr inbounds double, ptr %25149, i64 %25154
  %25156 = load double, ptr %25155, align 8, !tbaa !11
  %25157 = call double @llvm.fmuladd.f64(double 0x3FF3F64564513A5F, double %25156, double %25148)
  %25158 = load ptr, ptr %7, align 8, !tbaa !9
  %25159 = load i32, ptr %12, align 4, !tbaa !5
  %25160 = load i32, ptr %8, align 4, !tbaa !5
  %25161 = mul nsw i32 3, %25160
  %25162 = add nsw i32 %25159, %25161
  %25163 = sext i32 %25162 to i64
  %25164 = getelementptr inbounds double, ptr %25158, i64 %25163
  %25165 = load double, ptr %25164, align 8, !tbaa !11
  %25166 = call double @llvm.fmuladd.f64(double 0x3CE1300000000000, double %25165, double %25157)
  %25167 = load ptr, ptr %7, align 8, !tbaa !9
  %25168 = load i32, ptr %12, align 4, !tbaa !5
  %25169 = load i32, ptr %8, align 4, !tbaa !5
  %25170 = mul nsw i32 4, %25169
  %25171 = add nsw i32 %25168, %25170
  %25172 = sext i32 %25171 to i64
  %25173 = getelementptr inbounds double, ptr %25167, i64 %25172
  %25174 = load double, ptr %25173, align 8, !tbaa !11
  %25175 = call double @llvm.fmuladd.f64(double 0x3D0E380000000000, double %25174, double %25166)
  %25176 = load ptr, ptr %7, align 8, !tbaa !9
  %25177 = load i32, ptr %12, align 4, !tbaa !5
  %25178 = load i32, ptr %8, align 4, !tbaa !5
  %25179 = mul nsw i32 5, %25178
  %25180 = add nsw i32 %25177, %25179
  %25181 = sext i32 %25180 to i64
  %25182 = getelementptr inbounds double, ptr %25176, i64 %25181
  %25183 = load double, ptr %25182, align 8, !tbaa !11
  %25184 = call double @llvm.fmuladd.f64(double 0x3CE75FFFFFFFFFFF, double %25183, double %25175)
  %25185 = load ptr, ptr %7, align 8, !tbaa !9
  %25186 = load i32, ptr %12, align 4, !tbaa !5
  %25187 = load i32, ptr %8, align 4, !tbaa !5
  %25188 = mul nsw i32 6, %25187
  %25189 = add nsw i32 %25186, %25188
  %25190 = sext i32 %25189 to i64
  %25191 = getelementptr inbounds double, ptr %25185, i64 %25190
  %25192 = load double, ptr %25191, align 8, !tbaa !11
  %25193 = call double @llvm.fmuladd.f64(double 0xBCE2400000000001, double %25192, double %25184)
  %25194 = load ptr, ptr %7, align 8, !tbaa !9
  %25195 = load i32, ptr %12, align 4, !tbaa !5
  %25196 = load i32, ptr %8, align 4, !tbaa !5
  %25197 = mul nsw i32 7, %25196
  %25198 = add nsw i32 %25195, %25197
  %25199 = sext i32 %25198 to i64
  %25200 = getelementptr inbounds double, ptr %25194, i64 %25199
  %25201 = load double, ptr %25200, align 8, !tbaa !11
  %25202 = call double @llvm.fmuladd.f64(double 0x3D0FC7FFFFFFFFFE, double %25201, double %25193)
  %25203 = load ptr, ptr %7, align 8, !tbaa !9
  %25204 = load i32, ptr %12, align 4, !tbaa !5
  %25205 = load i32, ptr %8, align 4, !tbaa !5
  %25206 = mul nsw i32 8, %25205
  %25207 = add nsw i32 %25204, %25206
  %25208 = sext i32 %25207 to i64
  %25209 = getelementptr inbounds double, ptr %25203, i64 %25208
  %25210 = load double, ptr %25209, align 8, !tbaa !11
  %25211 = call double @llvm.fmuladd.f64(double 0x3CE7C00000000001, double %25210, double %25202)
  %25212 = load ptr, ptr %7, align 8, !tbaa !9
  %25213 = load i32, ptr %12, align 4, !tbaa !5
  %25214 = load i32, ptr %8, align 4, !tbaa !5
  %25215 = mul nsw i32 9, %25214
  %25216 = add nsw i32 %25213, %25215
  %25217 = sext i32 %25216 to i64
  %25218 = getelementptr inbounds double, ptr %25212, i64 %25217
  %25219 = load double, ptr %25218, align 8, !tbaa !11
  %25220 = call double @llvm.fmuladd.f64(double 0xBCE5BFFFFFFFFFFF, double %25219, double %25211)
  %25221 = load ptr, ptr %7, align 8, !tbaa !9
  %25222 = load i32, ptr %12, align 4, !tbaa !5
  %25223 = load i32, ptr %8, align 4, !tbaa !5
  %25224 = mul nsw i32 10, %25223
  %25225 = add nsw i32 %25222, %25224
  %25226 = sext i32 %25225 to i64
  %25227 = getelementptr inbounds double, ptr %25221, i64 %25226
  %25228 = load double, ptr %25227, align 8, !tbaa !11
  %25229 = call double @llvm.fmuladd.f64(double 0xBCEA000000000000, double %25228, double %25220)
  %25230 = load ptr, ptr %7, align 8, !tbaa !9
  %25231 = load i32, ptr %12, align 4, !tbaa !5
  %25232 = load i32, ptr %8, align 4, !tbaa !5
  %25233 = mul nsw i32 11, %25232
  %25234 = add nsw i32 %25231, %25233
  %25235 = sext i32 %25234 to i64
  %25236 = getelementptr inbounds double, ptr %25230, i64 %25235
  %25237 = load double, ptr %25236, align 8, !tbaa !11
  %25238 = call double @llvm.fmuladd.f64(double 0x3CD1000000000000, double %25237, double %25229)
  %25239 = load ptr, ptr %7, align 8, !tbaa !9
  %25240 = load i32, ptr %12, align 4, !tbaa !5
  %25241 = load i32, ptr %8, align 4, !tbaa !5
  %25242 = mul nsw i32 12, %25241
  %25243 = add nsw i32 %25240, %25242
  %25244 = sext i32 %25243 to i64
  %25245 = getelementptr inbounds double, ptr %25239, i64 %25244
  %25246 = load double, ptr %25245, align 8, !tbaa !11
  %25247 = call double @llvm.fmuladd.f64(double 0x3FE3AA36D354D04B, double %25246, double %25238)
  %25248 = load ptr, ptr %7, align 8, !tbaa !9
  %25249 = load i32, ptr %12, align 4, !tbaa !5
  %25250 = load i32, ptr %8, align 4, !tbaa !5
  %25251 = mul nsw i32 13, %25250
  %25252 = add nsw i32 %25249, %25251
  %25253 = sext i32 %25252 to i64
  %25254 = getelementptr inbounds double, ptr %25248, i64 %25253
  %25255 = load double, ptr %25254, align 8, !tbaa !11
  %25256 = call double @llvm.fmuladd.f64(double 0x3CCEC00000000000, double %25255, double %25247)
  %25257 = load ptr, ptr %7, align 8, !tbaa !9
  %25258 = load i32, ptr %12, align 4, !tbaa !5
  %25259 = load i32, ptr %8, align 4, !tbaa !5
  %25260 = mul nsw i32 14, %25259
  %25261 = add nsw i32 %25258, %25260
  %25262 = sext i32 %25261 to i64
  %25263 = getelementptr inbounds double, ptr %25257, i64 %25262
  %25264 = load double, ptr %25263, align 8, !tbaa !11
  %25265 = call double @llvm.fmuladd.f64(double 0x3CFD700000000000, double %25264, double %25256)
  %25266 = load ptr, ptr %7, align 8, !tbaa !9
  %25267 = load i32, ptr %12, align 4, !tbaa !5
  %25268 = load i32, ptr %8, align 4, !tbaa !5
  %25269 = mul nsw i32 15, %25268
  %25270 = add nsw i32 %25267, %25269
  %25271 = sext i32 %25270 to i64
  %25272 = getelementptr inbounds double, ptr %25266, i64 %25271
  %25273 = load double, ptr %25272, align 8, !tbaa !11
  %25274 = call double @llvm.fmuladd.f64(double 0x3CDAC00000000001, double %25273, double %25265)
  %25275 = load ptr, ptr %7, align 8, !tbaa !9
  %25276 = load i32, ptr %12, align 4, !tbaa !5
  %25277 = load i32, ptr %8, align 4, !tbaa !5
  %25278 = mul nsw i32 16, %25277
  %25279 = add nsw i32 %25276, %25278
  %25280 = sext i32 %25279 to i64
  %25281 = getelementptr inbounds double, ptr %25275, i64 %25280
  %25282 = load double, ptr %25281, align 8, !tbaa !11
  %25283 = call double @llvm.fmuladd.f64(double 0xBCD47FFFFFFFFFFE, double %25282, double %25274)
  %25284 = load ptr, ptr %7, align 8, !tbaa !9
  %25285 = load i32, ptr %12, align 4, !tbaa !5
  %25286 = load i32, ptr %8, align 4, !tbaa !5
  %25287 = mul nsw i32 17, %25286
  %25288 = add nsw i32 %25285, %25287
  %25289 = sext i32 %25288 to i64
  %25290 = getelementptr inbounds double, ptr %25284, i64 %25289
  %25291 = load double, ptr %25290, align 8, !tbaa !11
  %25292 = call double @llvm.fmuladd.f64(double 0x3CFE900000000000, double %25291, double %25283)
  %25293 = load ptr, ptr %7, align 8, !tbaa !9
  %25294 = load i32, ptr %12, align 4, !tbaa !5
  %25295 = load i32, ptr %8, align 4, !tbaa !5
  %25296 = mul nsw i32 18, %25295
  %25297 = add nsw i32 %25294, %25296
  %25298 = sext i32 %25297 to i64
  %25299 = getelementptr inbounds double, ptr %25293, i64 %25298
  %25300 = load double, ptr %25299, align 8, !tbaa !11
  %25301 = call double @llvm.fmuladd.f64(double 0x3CD7800000000000, double %25300, double %25292)
  %25302 = load ptr, ptr %7, align 8, !tbaa !9
  %25303 = load i32, ptr %12, align 4, !tbaa !5
  %25304 = load i32, ptr %8, align 4, !tbaa !5
  %25305 = mul nsw i32 19, %25304
  %25306 = add nsw i32 %25303, %25305
  %25307 = sext i32 %25306 to i64
  %25308 = getelementptr inbounds double, ptr %25302, i64 %25307
  %25309 = load double, ptr %25308, align 8, !tbaa !11
  %25310 = call double @llvm.fmuladd.f64(double 0xBCD3800000000002, double %25309, double %25301)
  store double %25310, ptr %11, align 8, !tbaa !11
  %25311 = load double, ptr %11, align 8, !tbaa !11
  %25312 = load ptr, ptr %9, align 8, !tbaa !9
  %25313 = load i32, ptr %12, align 4, !tbaa !5
  %25314 = load i32, ptr %10, align 4, !tbaa !5
  %25315 = mul nsw i32 92, %25314
  %25316 = add nsw i32 %25313, %25315
  %25317 = sext i32 %25316 to i64
  %25318 = getelementptr inbounds double, ptr %25312, i64 %25317
  %25319 = load double, ptr %25318, align 8, !tbaa !11
  %25320 = fadd double %25319, %25311
  store double %25320, ptr %25318, align 8, !tbaa !11
  %25321 = load ptr, ptr %7, align 8, !tbaa !9
  %25322 = load i32, ptr %12, align 4, !tbaa !5
  %25323 = load i32, ptr %8, align 4, !tbaa !5
  %25324 = mul nsw i32 0, %25323
  %25325 = add nsw i32 %25322, %25324
  %25326 = sext i32 %25325 to i64
  %25327 = getelementptr inbounds double, ptr %25321, i64 %25326
  %25328 = load double, ptr %25327, align 8, !tbaa !11
  %25329 = load ptr, ptr %7, align 8, !tbaa !9
  %25330 = load i32, ptr %12, align 4, !tbaa !5
  %25331 = load i32, ptr %8, align 4, !tbaa !5
  %25332 = mul nsw i32 1, %25331
  %25333 = add nsw i32 %25330, %25332
  %25334 = sext i32 %25333 to i64
  %25335 = getelementptr inbounds double, ptr %25329, i64 %25334
  %25336 = load double, ptr %25335, align 8, !tbaa !11
  %25337 = fmul double 0x3CE15FFFFFFFFFFF, %25336
  %25338 = call double @llvm.fmuladd.f64(double 0xBCF5E00000000000, double %25328, double %25337)
  %25339 = load ptr, ptr %7, align 8, !tbaa !9
  %25340 = load i32, ptr %12, align 4, !tbaa !5
  %25341 = load i32, ptr %8, align 4, !tbaa !5
  %25342 = mul nsw i32 2, %25341
  %25343 = add nsw i32 %25340, %25342
  %25344 = sext i32 %25343 to i64
  %25345 = getelementptr inbounds double, ptr %25339, i64 %25344
  %25346 = load double, ptr %25345, align 8, !tbaa !11
  %25347 = call double @llvm.fmuladd.f64(double 0x3CE26FFFFFFFFFFF, double %25346, double %25338)
  %25348 = load ptr, ptr %7, align 8, !tbaa !9
  %25349 = load i32, ptr %12, align 4, !tbaa !5
  %25350 = load i32, ptr %8, align 4, !tbaa !5
  %25351 = mul nsw i32 3, %25350
  %25352 = add nsw i32 %25349, %25351
  %25353 = sext i32 %25352 to i64
  %25354 = getelementptr inbounds double, ptr %25348, i64 %25353
  %25355 = load double, ptr %25354, align 8, !tbaa !11
  %25356 = call double @llvm.fmuladd.f64(double 0x3FF3F64564513A5F, double %25355, double %25347)
  %25357 = load ptr, ptr %7, align 8, !tbaa !9
  %25358 = load i32, ptr %12, align 4, !tbaa !5
  %25359 = load i32, ptr %8, align 4, !tbaa !5
  %25360 = mul nsw i32 4, %25359
  %25361 = add nsw i32 %25358, %25360
  %25362 = sext i32 %25361 to i64
  %25363 = getelementptr inbounds double, ptr %25357, i64 %25362
  %25364 = load double, ptr %25363, align 8, !tbaa !11
  %25365 = call double @llvm.fmuladd.f64(double 0x3CE8E00000000000, double %25364, double %25356)
  %25366 = load ptr, ptr %7, align 8, !tbaa !9
  %25367 = load i32, ptr %12, align 4, !tbaa !5
  %25368 = load i32, ptr %8, align 4, !tbaa !5
  %25369 = mul nsw i32 5, %25368
  %25370 = add nsw i32 %25367, %25369
  %25371 = sext i32 %25370 to i64
  %25372 = getelementptr inbounds double, ptr %25366, i64 %25371
  %25373 = load double, ptr %25372, align 8, !tbaa !11
  %25374 = call double @llvm.fmuladd.f64(double 0x3D0E97FFFFFFFFFE, double %25373, double %25365)
  %25375 = load ptr, ptr %7, align 8, !tbaa !9
  %25376 = load i32, ptr %12, align 4, !tbaa !5
  %25377 = load i32, ptr %8, align 4, !tbaa !5
  %25378 = mul nsw i32 6, %25377
  %25379 = add nsw i32 %25376, %25378
  %25380 = sext i32 %25379 to i64
  %25381 = getelementptr inbounds double, ptr %25375, i64 %25380
  %25382 = load double, ptr %25381, align 8, !tbaa !11
  %25383 = call double @llvm.fmuladd.f64(double 0x3D0DD80000000002, double %25382, double %25374)
  %25384 = load ptr, ptr %7, align 8, !tbaa !9
  %25385 = load i32, ptr %12, align 4, !tbaa !5
  %25386 = load i32, ptr %8, align 4, !tbaa !5
  %25387 = mul nsw i32 7, %25386
  %25388 = add nsw i32 %25385, %25387
  %25389 = sext i32 %25388 to i64
  %25390 = getelementptr inbounds double, ptr %25384, i64 %25389
  %25391 = load double, ptr %25390, align 8, !tbaa !11
  %25392 = call double @llvm.fmuladd.f64(double 0xBCDE800000000001, double %25391, double %25383)
  %25393 = load ptr, ptr %7, align 8, !tbaa !9
  %25394 = load i32, ptr %12, align 4, !tbaa !5
  %25395 = load i32, ptr %8, align 4, !tbaa !5
  %25396 = mul nsw i32 8, %25395
  %25397 = add nsw i32 %25394, %25396
  %25398 = sext i32 %25397 to i64
  %25399 = getelementptr inbounds double, ptr %25393, i64 %25398
  %25400 = load double, ptr %25399, align 8, !tbaa !11
  %25401 = call double @llvm.fmuladd.f64(double 0xBCE5400000000001, double %25400, double %25392)
  %25402 = load ptr, ptr %7, align 8, !tbaa !9
  %25403 = load i32, ptr %12, align 4, !tbaa !5
  %25404 = load i32, ptr %8, align 4, !tbaa !5
  %25405 = mul nsw i32 9, %25404
  %25406 = add nsw i32 %25403, %25405
  %25407 = sext i32 %25406 to i64
  %25408 = getelementptr inbounds double, ptr %25402, i64 %25407
  %25409 = load double, ptr %25408, align 8, !tbaa !11
  %25410 = call double @llvm.fmuladd.f64(double 0x3CE9800000000000, double %25409, double %25401)
  %25411 = load ptr, ptr %7, align 8, !tbaa !9
  %25412 = load i32, ptr %12, align 4, !tbaa !5
  %25413 = load i32, ptr %8, align 4, !tbaa !5
  %25414 = mul nsw i32 10, %25413
  %25415 = add nsw i32 %25412, %25414
  %25416 = sext i32 %25415 to i64
  %25417 = getelementptr inbounds double, ptr %25411, i64 %25416
  %25418 = load double, ptr %25417, align 8, !tbaa !11
  %25419 = call double @llvm.fmuladd.f64(double 0xBCE9C00000000000, double %25418, double %25410)
  %25420 = load ptr, ptr %7, align 8, !tbaa !9
  %25421 = load i32, ptr %12, align 4, !tbaa !5
  %25422 = load i32, ptr %8, align 4, !tbaa !5
  %25423 = mul nsw i32 11, %25422
  %25424 = add nsw i32 %25421, %25423
  %25425 = sext i32 %25424 to i64
  %25426 = getelementptr inbounds double, ptr %25420, i64 %25425
  %25427 = load double, ptr %25426, align 8, !tbaa !11
  %25428 = call double @llvm.fmuladd.f64(double 0x3CD1400000000000, double %25427, double %25419)
  %25429 = load ptr, ptr %7, align 8, !tbaa !9
  %25430 = load i32, ptr %12, align 4, !tbaa !5
  %25431 = load i32, ptr %8, align 4, !tbaa !5
  %25432 = mul nsw i32 12, %25431
  %25433 = add nsw i32 %25430, %25432
  %25434 = sext i32 %25433 to i64
  %25435 = getelementptr inbounds double, ptr %25429, i64 %25434
  %25436 = load double, ptr %25435, align 8, !tbaa !11
  %25437 = call double @llvm.fmuladd.f64(double 0x3CD0E00000000000, double %25436, double %25428)
  %25438 = load ptr, ptr %7, align 8, !tbaa !9
  %25439 = load i32, ptr %12, align 4, !tbaa !5
  %25440 = load i32, ptr %8, align 4, !tbaa !5
  %25441 = mul nsw i32 13, %25440
  %25442 = add nsw i32 %25439, %25441
  %25443 = sext i32 %25442 to i64
  %25444 = getelementptr inbounds double, ptr %25438, i64 %25443
  %25445 = load double, ptr %25444, align 8, !tbaa !11
  %25446 = call double @llvm.fmuladd.f64(double 0x3FE3AA36D354D04F, double %25445, double %25437)
  %25447 = load ptr, ptr %7, align 8, !tbaa !9
  %25448 = load i32, ptr %12, align 4, !tbaa !5
  %25449 = load i32, ptr %8, align 4, !tbaa !5
  %25450 = mul nsw i32 14, %25449
  %25451 = add nsw i32 %25448, %25450
  %25452 = sext i32 %25451 to i64
  %25453 = getelementptr inbounds double, ptr %25447, i64 %25452
  %25454 = load double, ptr %25453, align 8, !tbaa !11
  %25455 = call double @llvm.fmuladd.f64(double 0x3CD7BFFFFFFFFFFE, double %25454, double %25446)
  %25456 = load ptr, ptr %7, align 8, !tbaa !9
  %25457 = load i32, ptr %12, align 4, !tbaa !5
  %25458 = load i32, ptr %8, align 4, !tbaa !5
  %25459 = mul nsw i32 15, %25458
  %25460 = add nsw i32 %25457, %25459
  %25461 = sext i32 %25460 to i64
  %25462 = getelementptr inbounds double, ptr %25456, i64 %25461
  %25463 = load double, ptr %25462, align 8, !tbaa !11
  %25464 = call double @llvm.fmuladd.f64(double 0x3CFD300000000000, double %25463, double %25455)
  %25465 = load ptr, ptr %7, align 8, !tbaa !9
  %25466 = load i32, ptr %12, align 4, !tbaa !5
  %25467 = load i32, ptr %8, align 4, !tbaa !5
  %25468 = mul nsw i32 16, %25467
  %25469 = add nsw i32 %25466, %25468
  %25470 = sext i32 %25469 to i64
  %25471 = getelementptr inbounds double, ptr %25465, i64 %25470
  %25472 = load double, ptr %25471, align 8, !tbaa !11
  %25473 = call double @llvm.fmuladd.f64(double 0x3CFD300000000000, double %25472, double %25464)
  %25474 = load ptr, ptr %7, align 8, !tbaa !9
  %25475 = load i32, ptr %12, align 4, !tbaa !5
  %25476 = load i32, ptr %8, align 4, !tbaa !5
  %25477 = mul nsw i32 17, %25476
  %25478 = add nsw i32 %25475, %25477
  %25479 = sext i32 %25478 to i64
  %25480 = getelementptr inbounds double, ptr %25474, i64 %25479
  %25481 = load double, ptr %25480, align 8, !tbaa !11
  %25482 = call double @llvm.fmuladd.f64(double 0xBCCD000000000000, double %25481, double %25473)
  %25483 = load ptr, ptr %7, align 8, !tbaa !9
  %25484 = load i32, ptr %12, align 4, !tbaa !5
  %25485 = load i32, ptr %8, align 4, !tbaa !5
  %25486 = mul nsw i32 18, %25485
  %25487 = add nsw i32 %25484, %25486
  %25488 = sext i32 %25487 to i64
  %25489 = getelementptr inbounds double, ptr %25483, i64 %25488
  %25490 = load double, ptr %25489, align 8, !tbaa !11
  %25491 = call double @llvm.fmuladd.f64(double 0xBCD67FFFFFFFFFFF, double %25490, double %25482)
  %25492 = load ptr, ptr %7, align 8, !tbaa !9
  %25493 = load i32, ptr %12, align 4, !tbaa !5
  %25494 = load i32, ptr %8, align 4, !tbaa !5
  %25495 = mul nsw i32 19, %25494
  %25496 = add nsw i32 %25493, %25495
  %25497 = sext i32 %25496 to i64
  %25498 = getelementptr inbounds double, ptr %25492, i64 %25497
  %25499 = load double, ptr %25498, align 8, !tbaa !11
  %25500 = call double @llvm.fmuladd.f64(double 0x3CD9000000000002, double %25499, double %25491)
  store double %25500, ptr %11, align 8, !tbaa !11
  %25501 = load double, ptr %11, align 8, !tbaa !11
  %25502 = load ptr, ptr %9, align 8, !tbaa !9
  %25503 = load i32, ptr %12, align 4, !tbaa !5
  %25504 = load i32, ptr %10, align 4, !tbaa !5
  %25505 = mul nsw i32 93, %25504
  %25506 = add nsw i32 %25503, %25505
  %25507 = sext i32 %25506 to i64
  %25508 = getelementptr inbounds double, ptr %25502, i64 %25507
  %25509 = load double, ptr %25508, align 8, !tbaa !11
  %25510 = fadd double %25509, %25501
  store double %25510, ptr %25508, 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 0xBCCA000000000000, %25526
  %25528 = call double @llvm.fmuladd.f64(double 0x3CF9A00000000000, 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 0x3CF6580000000000, 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 0x3CCC600000000000, 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 0x3FF3F64564513B21, 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 0xBCEAC00000000001, 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 0xBCD7BFFFFFFFFFFE, 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 0x3CEE400000000001, 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 0xBCD67FFFFFFFFFFF, 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 0xBCFC3FFFFFFFFFFF, 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 0x3CE9C00000000000, 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 0xBCB8000000000001, 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 0x3CE6B00000000000, 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 0x3CB9C00000000001, 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 0x3FE3AA36D354D104, 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 0xBCDA7FFFFFFFFFFE, 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 0xBCC4800000000000, 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 0x3CDE800000000001, 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 0xBCC1000000000000, 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 0xBCEC800000000000, 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 94, %25694
  %25696 = add nsw i32 %25693, %25695
  %25697 = sext i32 %25696 to i64
  %25698 = getelementptr inbounds double, ptr %25692, i64 %25697
  %25699 = load double, ptr %25698, align 8, !tbaa !11
  %25700 = fadd double %25699, %25691
  store double %25700, ptr %25698, align 8, !tbaa !11
  %25701 = load ptr, ptr %7, align 8, !tbaa !9
  %25702 = load i32, ptr %12, align 4, !tbaa !5
  %25703 = load i32, ptr %8, align 4, !tbaa !5
  %25704 = mul nsw i32 0, %25703
  %25705 = add nsw i32 %25702, %25704
  %25706 = sext i32 %25705 to i64
  %25707 = getelementptr inbounds double, ptr %25701, i64 %25706
  %25708 = load double, ptr %25707, align 8, !tbaa !11
  %25709 = load ptr, ptr %7, align 8, !tbaa !9
  %25710 = load i32, ptr %12, align 4, !tbaa !5
  %25711 = load i32, ptr %8, align 4, !tbaa !5
  %25712 = mul nsw i32 1, %25711
  %25713 = add nsw i32 %25710, %25712
  %25714 = sext i32 %25713 to i64
  %25715 = getelementptr inbounds double, ptr %25709, i64 %25714
  %25716 = load double, ptr %25715, align 8, !tbaa !11
  %25717 = fmul double 0xBCD0800000000000, %25716
  %25718 = call double @llvm.fmuladd.f64(double 0x3CFB600000000000, double %25708, double %25717)
  %25719 = load ptr, ptr %7, align 8, !tbaa !9
  %25720 = load i32, ptr %12, align 4, !tbaa !5
  %25721 = load i32, ptr %8, align 4, !tbaa !5
  %25722 = mul nsw i32 2, %25721
  %25723 = add nsw i32 %25720, %25722
  %25724 = sext i32 %25723 to i64
  %25725 = getelementptr inbounds double, ptr %25719, i64 %25724
  %25726 = load double, ptr %25725, align 8, !tbaa !11
  %25727 = call double @llvm.fmuladd.f64(double 0x3CCC400000000000, double %25726, double %25718)
  %25728 = load ptr, ptr %7, align 8, !tbaa !9
  %25729 = load i32, ptr %12, align 4, !tbaa !5
  %25730 = load i32, ptr %8, align 4, !tbaa !5
  %25731 = mul nsw i32 3, %25730
  %25732 = add nsw i32 %25729, %25731
  %25733 = sext i32 %25732 to i64
  %25734 = getelementptr inbounds double, ptr %25728, i64 %25733
  %25735 = load double, ptr %25734, align 8, !tbaa !11
  %25736 = call double @llvm.fmuladd.f64(double 0x3CF62C0000000001, double %25735, double %25727)
  %25737 = load ptr, ptr %7, align 8, !tbaa !9
  %25738 = load i32, ptr %12, align 4, !tbaa !5
  %25739 = load i32, ptr %8, align 4, !tbaa !5
  %25740 = mul nsw i32 4, %25739
  %25741 = add nsw i32 %25738, %25740
  %25742 = sext i32 %25741 to i64
  %25743 = getelementptr inbounds double, ptr %25737, i64 %25742
  %25744 = load double, ptr %25743, align 8, !tbaa !11
  %25745 = call double @llvm.fmuladd.f64(double 0xBCE8E00000000000, double %25744, double %25736)
  %25746 = load ptr, ptr %7, align 8, !tbaa !9
  %25747 = load i32, ptr %12, align 4, !tbaa !5
  %25748 = load i32, ptr %8, align 4, !tbaa !5
  %25749 = mul nsw i32 5, %25748
  %25750 = add nsw i32 %25747, %25749
  %25751 = sext i32 %25750 to i64
  %25752 = getelementptr inbounds double, ptr %25746, i64 %25751
  %25753 = load double, ptr %25752, align 8, !tbaa !11
  %25754 = call double @llvm.fmuladd.f64(double 0x3FF3F64564513B1C, double %25753, double %25745)
  %25755 = load ptr, ptr %7, align 8, !tbaa !9
  %25756 = load i32, ptr %12, align 4, !tbaa !5
  %25757 = load i32, ptr %8, align 4, !tbaa !5
  %25758 = mul nsw i32 6, %25757
  %25759 = add nsw i32 %25756, %25758
  %25760 = sext i32 %25759 to i64
  %25761 = getelementptr inbounds double, ptr %25755, i64 %25760
  %25762 = load double, ptr %25761, align 8, !tbaa !11
  %25763 = call double @llvm.fmuladd.f64(double 0x3CEE200000000000, double %25762, double %25754)
  %25764 = load ptr, ptr %7, align 8, !tbaa !9
  %25765 = load i32, ptr %12, align 4, !tbaa !5
  %25766 = load i32, ptr %8, align 4, !tbaa !5
  %25767 = mul nsw i32 7, %25766
  %25768 = add nsw i32 %25765, %25767
  %25769 = sext i32 %25768 to i64
  %25770 = getelementptr inbounds double, ptr %25764, i64 %25769
  %25771 = load double, ptr %25770, align 8, !tbaa !11
  %25772 = call double @llvm.fmuladd.f64(double 0xBCD93FFFFFFFFFFF, double %25771, double %25763)
  %25773 = load ptr, ptr %7, align 8, !tbaa !9
  %25774 = load i32, ptr %12, align 4, !tbaa !5
  %25775 = load i32, ptr %8, align 4, !tbaa !5
  %25776 = mul nsw i32 8, %25775
  %25777 = add nsw i32 %25774, %25776
  %25778 = sext i32 %25777 to i64
  %25779 = getelementptr inbounds double, ptr %25773, i64 %25778
  %25780 = load double, ptr %25779, align 8, !tbaa !11
  %25781 = call double @llvm.fmuladd.f64(double 0xBCFCC00000000000, double %25780, double %25772)
  %25782 = load ptr, ptr %7, align 8, !tbaa !9
  %25783 = load i32, ptr %12, align 4, !tbaa !5
  %25784 = load i32, ptr %8, align 4, !tbaa !5
  %25785 = mul nsw i32 9, %25784
  %25786 = add nsw i32 %25783, %25785
  %25787 = sext i32 %25786 to i64
  %25788 = getelementptr inbounds double, ptr %25782, i64 %25787
  %25789 = load double, ptr %25788, align 8, !tbaa !11
  %25790 = call double @llvm.fmuladd.f64(double 0xBCDBFFFFFFFFFFFF, double %25789, double %25781)
  %25791 = load ptr, ptr %7, align 8, !tbaa !9
  %25792 = load i32, ptr %12, align 4, !tbaa !5
  %25793 = load i32, ptr %8, align 4, !tbaa !5
  %25794 = mul nsw i32 10, %25793
  %25795 = add nsw i32 %25792, %25794
  %25796 = sext i32 %25795 to i64
  %25797 = getelementptr inbounds double, ptr %25791, i64 %25796
  %25798 = load double, ptr %25797, align 8, !tbaa !11
  %25799 = call double @llvm.fmuladd.f64(double 0x3CEBBFFFFFFFFFFF, double %25798, double %25790)
  %25800 = load ptr, ptr %7, align 8, !tbaa !9
  %25801 = load i32, ptr %12, align 4, !tbaa !5
  %25802 = load i32, ptr %8, align 4, !tbaa !5
  %25803 = mul nsw i32 11, %25802
  %25804 = add nsw i32 %25801, %25803
  %25805 = sext i32 %25804 to i64
  %25806 = getelementptr inbounds double, ptr %25800, i64 %25805
  %25807 = load double, ptr %25806, align 8, !tbaa !11
  %25808 = call double @llvm.fmuladd.f64(double 0xBCC0000000000000, double %25807, double %25799)
  %25809 = load ptr, ptr %7, align 8, !tbaa !9
  %25810 = load i32, ptr %12, align 4, !tbaa !5
  %25811 = load i32, ptr %8, align 4, !tbaa !5
  %25812 = mul nsw i32 12, %25811
  %25813 = add nsw i32 %25810, %25812
  %25814 = sext i32 %25813 to i64
  %25815 = getelementptr inbounds double, ptr %25809, i64 %25814
  %25816 = load double, ptr %25815, align 8, !tbaa !11
  %25817 = call double @llvm.fmuladd.f64(double 0x3CB8800000000000, double %25816, double %25808)
  %25818 = load ptr, ptr %7, align 8, !tbaa !9
  %25819 = load i32, ptr %12, align 4, !tbaa !5
  %25820 = load i32, ptr %8, align 4, !tbaa !5
  %25821 = mul nsw i32 13, %25820
  %25822 = add nsw i32 %25819, %25821
  %25823 = sext i32 %25822 to i64
  %25824 = getelementptr inbounds double, ptr %25818, i64 %25823
  %25825 = load double, ptr %25824, align 8, !tbaa !11
  %25826 = call double @llvm.fmuladd.f64(double 0x3CE557FFFFFFFFFF, double %25825, double %25817)
  %25827 = load ptr, ptr %7, align 8, !tbaa !9
  %25828 = load i32, ptr %12, align 4, !tbaa !5
  %25829 = load i32, ptr %8, align 4, !tbaa !5
  %25830 = mul nsw i32 14, %25829
  %25831 = add nsw i32 %25828, %25830
  %25832 = sext i32 %25831 to i64
  %25833 = getelementptr inbounds double, ptr %25827, i64 %25832
  %25834 = load double, ptr %25833, align 8, !tbaa !11
  %25835 = call double @llvm.fmuladd.f64(double 0xBCD6C00000000002, double %25834, double %25826)
  %25836 = load ptr, ptr %7, align 8, !tbaa !9
  %25837 = load i32, ptr %12, align 4, !tbaa !5
  %25838 = load i32, ptr %8, align 4, !tbaa !5
  %25839 = mul nsw i32 15, %25838
  %25840 = add nsw i32 %25837, %25839
  %25841 = sext i32 %25840 to i64
  %25842 = getelementptr inbounds double, ptr %25836, i64 %25841
  %25843 = load double, ptr %25842, align 8, !tbaa !11
  %25844 = call double @llvm.fmuladd.f64(double 0x3FE3AA36D354D103, double %25843, double %25835)
  %25845 = load ptr, ptr %7, align 8, !tbaa !9
  %25846 = load i32, ptr %12, align 4, !tbaa !5
  %25847 = load i32, ptr %8, align 4, !tbaa !5
  %25848 = mul nsw i32 16, %25847
  %25849 = add nsw i32 %25846, %25848
  %25850 = sext i32 %25849 to i64
  %25851 = getelementptr inbounds double, ptr %25845, i64 %25850
  %25852 = load double, ptr %25851, align 8, !tbaa !11
  %25853 = call double @llvm.fmuladd.f64(double 0x3CE0200000000000, double %25852, double %25844)
  %25854 = load ptr, ptr %7, align 8, !tbaa !9
  %25855 = load i32, ptr %12, align 4, !tbaa !5
  %25856 = load i32, ptr %8, align 4, !tbaa !5
  %25857 = mul nsw i32 17, %25856
  %25858 = add nsw i32 %25855, %25857
  %25859 = sext i32 %25858 to i64
  %25860 = getelementptr inbounds double, ptr %25854, i64 %25859
  %25861 = load double, ptr %25860, align 8, !tbaa !11
  %25862 = call double @llvm.fmuladd.f64(double 0xBCCC800000000000, double %25861, double %25853)
  %25863 = load ptr, ptr %7, align 8, !tbaa !9
  %25864 = load i32, ptr %12, align 4, !tbaa !5
  %25865 = load i32, ptr %8, align 4, !tbaa !5
  %25866 = mul nsw i32 18, %25865
  %25867 = add nsw i32 %25864, %25866
  %25868 = sext i32 %25867 to i64
  %25869 = getelementptr inbounds double, ptr %25863, i64 %25868
  %25870 = load double, ptr %25869, align 8, !tbaa !11
  %25871 = call double @llvm.fmuladd.f64(double 0xBCEC800000000000, double %25870, double %25862)
  %25872 = load ptr, ptr %7, align 8, !tbaa !9
  %25873 = load i32, ptr %12, align 4, !tbaa !5
  %25874 = load i32, ptr %8, align 4, !tbaa !5
  %25875 = mul nsw i32 19, %25874
  %25876 = add nsw i32 %25873, %25875
  %25877 = sext i32 %25876 to i64
  %25878 = getelementptr inbounds double, ptr %25872, i64 %25877
  %25879 = load double, ptr %25878, align 8, !tbaa !11
  %25880 = call double @llvm.fmuladd.f64(double 0xBCC7000000000000, double %25879, double %25871)
  store double %25880, ptr %11, align 8, !tbaa !11
  %25881 = load double, ptr %11, align 8, !tbaa !11
  %25882 = load ptr, ptr %9, align 8, !tbaa !9
  %25883 = load i32, ptr %12, align 4, !tbaa !5
  %25884 = load i32, ptr %10, align 4, !tbaa !5
  %25885 = mul nsw i32 95, %25884
  %25886 = add nsw i32 %25883, %25885
  %25887 = sext i32 %25886 to i64
  %25888 = getelementptr inbounds double, ptr %25882, i64 %25887
  %25889 = load double, ptr %25888, align 8, !tbaa !11
  %25890 = fadd double %25889, %25881
  store double %25890, ptr %25888, align 8, !tbaa !11
  %25891 = load ptr, ptr %7, align 8, !tbaa !9
  %25892 = load i32, ptr %12, align 4, !tbaa !5
  %25893 = load i32, ptr %8, align 4, !tbaa !5
  %25894 = mul nsw i32 0, %25893
  %25895 = add nsw i32 %25892, %25894
  %25896 = sext i32 %25895 to i64
  %25897 = getelementptr inbounds double, ptr %25891, i64 %25896
  %25898 = load double, ptr %25897, align 8, !tbaa !11
  %25899 = load ptr, ptr %7, align 8, !tbaa !9
  %25900 = load i32, ptr %12, align 4, !tbaa !5
  %25901 = load i32, ptr %8, align 4, !tbaa !5
  %25902 = mul nsw i32 1, %25901
  %25903 = add nsw i32 %25900, %25902
  %25904 = sext i32 %25903 to i64
  %25905 = getelementptr inbounds double, ptr %25899, i64 %25904
  %25906 = load double, ptr %25905, align 8, !tbaa !11
  %25907 = fmul double 0x3CD1800000000000, %25906
  %25908 = call double @llvm.fmuladd.f64(double 0x3CF9480000000000, double %25898, double %25907)
  %25909 = load ptr, ptr %7, align 8, !tbaa !9
  %25910 = load i32, ptr %12, align 4, !tbaa !5
  %25911 = load i32, ptr %8, align 4, !tbaa !5
  %25912 = mul nsw i32 2, %25911
  %25913 = add nsw i32 %25910, %25912
  %25914 = sext i32 %25913 to i64
  %25915 = getelementptr inbounds double, ptr %25909, i64 %25914
  %25916 = load double, ptr %25915, align 8, !tbaa !11
  %25917 = call double @llvm.fmuladd.f64(double 0xBCC8C00000000000, double %25916, double %25908)
  %25918 = load ptr, ptr %7, align 8, !tbaa !9
  %25919 = load i32, ptr %12, align 4, !tbaa !5
  %25920 = load i32, ptr %8, align 4, !tbaa !5
  %25921 = mul nsw i32 3, %25920
  %25922 = add nsw i32 %25919, %25921
  %25923 = sext i32 %25922 to i64
  %25924 = getelementptr inbounds double, ptr %25918, i64 %25923
  %25925 = load double, ptr %25924, align 8, !tbaa !11
  %25926 = call double @llvm.fmuladd.f64(double 0x3CF59BFFFFFFFFFF, double %25925, double %25917)
  %25927 = load ptr, ptr %7, align 8, !tbaa !9
  %25928 = load i32, ptr %12, align 4, !tbaa !5
  %25929 = load i32, ptr %8, align 4, !tbaa !5
  %25930 = mul nsw i32 4, %25929
  %25931 = add nsw i32 %25928, %25930
  %25932 = sext i32 %25931 to i64
  %25933 = getelementptr inbounds double, ptr %25927, i64 %25932
  %25934 = load double, ptr %25933, align 8, !tbaa !11
  %25935 = call double @llvm.fmuladd.f64(double 0xBCD71FFFFFFFFFFF, double %25934, double %25926)
  %25936 = load ptr, ptr %7, align 8, !tbaa !9
  %25937 = load i32, ptr %12, align 4, !tbaa !5
  %25938 = load i32, ptr %8, align 4, !tbaa !5
  %25939 = mul nsw i32 5, %25938
  %25940 = add nsw i32 %25937, %25939
  %25941 = sext i32 %25940 to i64
  %25942 = getelementptr inbounds double, ptr %25936, i64 %25941
  %25943 = load double, ptr %25942, align 8, !tbaa !11
  %25944 = call double @llvm.fmuladd.f64(double 0x3CED300000000001, double %25943, double %25935)
  %25945 = load ptr, ptr %7, align 8, !tbaa !9
  %25946 = load i32, ptr %12, align 4, !tbaa !5
  %25947 = load i32, ptr %8, align 4, !tbaa !5
  %25948 = mul nsw i32 6, %25947
  %25949 = add nsw i32 %25946, %25948
  %25950 = sext i32 %25949 to i64
  %25951 = getelementptr inbounds double, ptr %25945, i64 %25950
  %25952 = load double, ptr %25951, align 8, !tbaa !11
  %25953 = call double @llvm.fmuladd.f64(double 0x3FF3F64564513B1C, double %25952, double %25944)
  %25954 = load ptr, ptr %7, align 8, !tbaa !9
  %25955 = load i32, ptr %12, align 4, !tbaa !5
  %25956 = load i32, ptr %8, align 4, !tbaa !5
  %25957 = mul nsw i32 7, %25956
  %25958 = add nsw i32 %25955, %25957
  %25959 = sext i32 %25958 to i64
  %25960 = getelementptr inbounds double, ptr %25954, i64 %25959
  %25961 = load double, ptr %25960, align 8, !tbaa !11
  %25962 = call double @llvm.fmuladd.f64(double 0xBCFADC0000000000, double %25961, double %25953)
  %25963 = load ptr, ptr %7, align 8, !tbaa !9
  %25964 = load i32, ptr %12, align 4, !tbaa !5
  %25965 = load i32, ptr %8, align 4, !tbaa !5
  %25966 = mul nsw i32 8, %25965
  %25967 = add nsw i32 %25964, %25966
  %25968 = sext i32 %25967 to i64
  %25969 = getelementptr inbounds double, ptr %25963, i64 %25968
  %25970 = load double, ptr %25969, align 8, !tbaa !11
  %25971 = call double @llvm.fmuladd.f64(double 0xBCD9000000000002, double %25970, double %25962)
  %25972 = load ptr, ptr %7, align 8, !tbaa !9
  %25973 = load i32, ptr %12, align 4, !tbaa !5
  %25974 = load i32, ptr %8, align 4, !tbaa !5
  %25975 = mul nsw i32 9, %25974
  %25976 = add nsw i32 %25973, %25975
  %25977 = sext i32 %25976 to i64
  %25978 = getelementptr inbounds double, ptr %25972, i64 %25977
  %25979 = load double, ptr %25978, align 8, !tbaa !11
  %25980 = call double @llvm.fmuladd.f64(double 0xBCEB7FFFFFFFFFFF, double %25979, double %25971)
  %25981 = load ptr, ptr %7, align 8, !tbaa !9
  %25982 = load i32, ptr %12, align 4, !tbaa !5
  %25983 = load i32, ptr %8, align 4, !tbaa !5
  %25984 = mul nsw i32 10, %25983
  %25985 = add nsw i32 %25982, %25984
  %25986 = sext i32 %25985 to i64
  %25987 = getelementptr inbounds double, ptr %25981, i64 %25986
  %25988 = load double, ptr %25987, align 8, !tbaa !11
  %25989 = call double @llvm.fmuladd.f64(double 0x3CEC8FFFFFFFFFFF, double %25988, double %25980)
  %25990 = load ptr, ptr %7, align 8, !tbaa !9
  %25991 = load i32, ptr %12, align 4, !tbaa !5
  %25992 = load i32, ptr %8, align 4, !tbaa !5
  %25993 = mul nsw i32 11, %25992
  %25994 = add nsw i32 %25991, %25993
  %25995 = sext i32 %25994 to i64
  %25996 = getelementptr inbounds double, ptr %25990, i64 %25995
  %25997 = load double, ptr %25996, align 8, !tbaa !11
  %25998 = call double @llvm.fmuladd.f64(double 0x3CBE000000000000, double %25997, double %25989)
  %25999 = load ptr, ptr %7, align 8, !tbaa !9
  %26000 = load i32, ptr %12, align 4, !tbaa !5
  %26001 = load i32, ptr %8, align 4, !tbaa !5
  %26002 = mul nsw i32 12, %26001
  %26003 = add nsw i32 %26000, %26002
  %26004 = sext i32 %26003 to i64
  %26005 = getelementptr inbounds double, ptr %25999, i64 %26004
  %26006 = load double, ptr %26005, align 8, !tbaa !11
  %26007 = call double @llvm.fmuladd.f64(double 0xBCB1800000000000, double %26006, double %25998)
  %26008 = load ptr, ptr %7, align 8, !tbaa !9
  %26009 = load i32, ptr %12, align 4, !tbaa !5
  %26010 = load i32, ptr %8, align 4, !tbaa !5
  %26011 = mul nsw i32 13, %26010
  %26012 = add nsw i32 %26009, %26011
  %26013 = sext i32 %26012 to i64
  %26014 = getelementptr inbounds double, ptr %26008, i64 %26013
  %26015 = load double, ptr %26014, align 8, !tbaa !11
  %26016 = call double @llvm.fmuladd.f64(double 0x3CE5380000000000, double %26015, double %26007)
  %26017 = load ptr, ptr %7, align 8, !tbaa !9
  %26018 = load i32, ptr %12, align 4, !tbaa !5
  %26019 = load i32, ptr %8, align 4, !tbaa !5
  %26020 = mul nsw i32 14, %26019
  %26021 = add nsw i32 %26018, %26020
  %26022 = sext i32 %26021 to i64
  %26023 = getelementptr inbounds double, ptr %26017, i64 %26022
  %26024 = load double, ptr %26023, align 8, !tbaa !11
  %26025 = call double @llvm.fmuladd.f64(double 0xBCC4400000000000, double %26024, double %26016)
  %26026 = load ptr, ptr %7, align 8, !tbaa !9
  %26027 = load i32, ptr %12, align 4, !tbaa !5
  %26028 = load i32, ptr %8, align 4, !tbaa !5
  %26029 = mul nsw i32 15, %26028
  %26030 = add nsw i32 %26027, %26029
  %26031 = sext i32 %26030 to i64
  %26032 = getelementptr inbounds double, ptr %26026, i64 %26031
  %26033 = load double, ptr %26032, align 8, !tbaa !11
  %26034 = call double @llvm.fmuladd.f64(double 0x3CDE5FFFFFFFFFFD, double %26033, double %26025)
  %26035 = load ptr, ptr %7, align 8, !tbaa !9
  %26036 = load i32, ptr %12, align 4, !tbaa !5
  %26037 = load i32, ptr %8, align 4, !tbaa !5
  %26038 = mul nsw i32 16, %26037
  %26039 = add nsw i32 %26036, %26038
  %26040 = sext i32 %26039 to i64
  %26041 = getelementptr inbounds double, ptr %26035, i64 %26040
  %26042 = load double, ptr %26041, align 8, !tbaa !11
  %26043 = call double @llvm.fmuladd.f64(double 0x3FE3AA36D354D105, double %26042, double %26034)
  %26044 = load ptr, ptr %7, align 8, !tbaa !9
  %26045 = load i32, ptr %12, align 4, !tbaa !5
  %26046 = load i32, ptr %8, align 4, !tbaa !5
  %26047 = mul nsw i32 17, %26046
  %26048 = add nsw i32 %26045, %26047
  %26049 = sext i32 %26048 to i64
  %26050 = getelementptr inbounds double, ptr %26044, i64 %26049
  %26051 = load double, ptr %26050, align 8, !tbaa !11
  %26052 = call double @llvm.fmuladd.f64(double 0xBCEBB80000000001, double %26051, double %26043)
  %26053 = load ptr, ptr %7, align 8, !tbaa !9
  %26054 = load i32, ptr %12, align 4, !tbaa !5
  %26055 = load i32, ptr %8, align 4, !tbaa !5
  %26056 = mul nsw i32 18, %26055
  %26057 = add nsw i32 %26054, %26056
  %26058 = sext i32 %26057 to i64
  %26059 = getelementptr inbounds double, ptr %26053, i64 %26058
  %26060 = load double, ptr %26059, align 8, !tbaa !11
  %26061 = call double @llvm.fmuladd.f64(double 0xBCCC000000000000, double %26060, double %26052)
  %26062 = load ptr, ptr %7, align 8, !tbaa !9
  %26063 = load i32, ptr %12, align 4, !tbaa !5
  %26064 = load i32, ptr %8, align 4, !tbaa !5
  %26065 = mul nsw i32 19, %26064
  %26066 = add nsw i32 %26063, %26065
  %26067 = sext i32 %26066 to i64
  %26068 = getelementptr inbounds double, ptr %26062, i64 %26067
  %26069 = load double, ptr %26068, align 8, !tbaa !11
  %26070 = call double @llvm.fmuladd.f64(double 0xBCDAFFFFFFFFFFFE, double %26069, double %26061)
  store double %26070, ptr %11, align 8, !tbaa !11
  %26071 = load double, ptr %11, align 8, !tbaa !11
  %26072 = load ptr, ptr %9, align 8, !tbaa !9
  %26073 = load i32, ptr %12, align 4, !tbaa !5
  %26074 = load i32, ptr %10, align 4, !tbaa !5
  %26075 = mul nsw i32 96, %26074
  %26076 = add nsw i32 %26073, %26075
  %26077 = sext i32 %26076 to i64
  %26078 = getelementptr inbounds double, ptr %26072, i64 %26077
  %26079 = load double, ptr %26078, align 8, !tbaa !11
  %26080 = fadd double %26079, %26071
  store double %26080, ptr %26078, align 8, !tbaa !11
  %26081 = load ptr, ptr %7, align 8, !tbaa !9
  %26082 = load i32, ptr %12, align 4, !tbaa !5
  %26083 = load i32, ptr %8, align 4, !tbaa !5
  %26084 = mul nsw i32 0, %26083
  %26085 = add nsw i32 %26082, %26084
  %26086 = sext i32 %26085 to i64
  %26087 = getelementptr inbounds double, ptr %26081, i64 %26086
  %26088 = load double, ptr %26087, align 8, !tbaa !11
  %26089 = load ptr, ptr %7, align 8, !tbaa !9
  %26090 = load i32, ptr %12, align 4, !tbaa !5
  %26091 = load i32, ptr %8, align 4, !tbaa !5
  %26092 = mul nsw i32 1, %26091
  %26093 = add nsw i32 %26090, %26092
  %26094 = sext i32 %26093 to i64
  %26095 = getelementptr inbounds double, ptr %26089, i64 %26094
  %26096 = load double, ptr %26095, align 8, !tbaa !11
  %26097 = fmul double 0x3CD2DFFFFFFFFFFE, %26096
  %26098 = call double @llvm.fmuladd.f64(double 0x3CF8B80000000000, double %26088, double %26097)
  %26099 = load ptr, ptr %7, align 8, !tbaa !9
  %26100 = load i32, ptr %12, align 4, !tbaa !5
  %26101 = load i32, ptr %8, align 4, !tbaa !5
  %26102 = mul nsw i32 2, %26101
  %26103 = add nsw i32 %26100, %26102
  %26104 = sext i32 %26103 to i64
  %26105 = getelementptr inbounds double, ptr %26099, i64 %26104
  %26106 = load double, ptr %26105, align 8, !tbaa !11
  %26107 = call double @llvm.fmuladd.f64(double 0x3CF7B80000000000, double %26106, double %26098)
  %26108 = load ptr, ptr %7, align 8, !tbaa !9
  %26109 = load i32, ptr %12, align 4, !tbaa !5
  %26110 = load i32, ptr %8, align 4, !tbaa !5
  %26111 = mul nsw i32 3, %26110
  %26112 = add nsw i32 %26109, %26111
  %26113 = sext i32 %26112 to i64
  %26114 = getelementptr inbounds double, ptr %26108, i64 %26113
  %26115 = load double, ptr %26114, align 8, !tbaa !11
  %26116 = call double @llvm.fmuladd.f64(double 0xBCC4200000000000, double %26115, double %26107)
  %26117 = load ptr, ptr %7, align 8, !tbaa !9
  %26118 = load i32, ptr %12, align 4, !tbaa !5
  %26119 = load i32, ptr %8, align 4, !tbaa !5
  %26120 = mul nsw i32 4, %26119
  %26121 = add nsw i32 %26118, %26120
  %26122 = sext i32 %26121 to i64
  %26123 = getelementptr inbounds double, ptr %26117, i64 %26122
  %26124 = load double, ptr %26123, align 8, !tbaa !11
  %26125 = call double @llvm.fmuladd.f64(double 0x3CEE500000000001, double %26124, double %26116)
  %26126 = load ptr, ptr %7, align 8, !tbaa !9
  %26127 = load i32, ptr %12, align 4, !tbaa !5
  %26128 = load i32, ptr %8, align 4, !tbaa !5
  %26129 = mul nsw i32 5, %26128
  %26130 = add nsw i32 %26127, %26129
  %26131 = sext i32 %26130 to i64
  %26132 = getelementptr inbounds double, ptr %26126, i64 %26131
  %26133 = load double, ptr %26132, align 8, !tbaa !11
  %26134 = call double @llvm.fmuladd.f64(double 0xBCD5A00000000002, double %26133, double %26125)
  %26135 = load ptr, ptr %7, align 8, !tbaa !9
  %26136 = load i32, ptr %12, align 4, !tbaa !5
  %26137 = load i32, ptr %8, align 4, !tbaa !5
  %26138 = mul nsw i32 6, %26137
  %26139 = add nsw i32 %26136, %26138
  %26140 = sext i32 %26139 to i64
  %26141 = getelementptr inbounds double, ptr %26135, i64 %26140
  %26142 = load double, ptr %26141, align 8, !tbaa !11
  %26143 = call double @llvm.fmuladd.f64(double 0xBCFBBC0000000000, double %26142, double %26134)
  %26144 = load ptr, ptr %7, align 8, !tbaa !9
  %26145 = load i32, ptr %12, align 4, !tbaa !5
  %26146 = load i32, ptr %8, align 4, !tbaa !5
  %26147 = mul nsw i32 7, %26146
  %26148 = add nsw i32 %26145, %26147
  %26149 = sext i32 %26148 to i64
  %26150 = getelementptr inbounds double, ptr %26144, i64 %26149
  %26151 = load double, ptr %26150, align 8, !tbaa !11
  %26152 = call double @llvm.fmuladd.f64(double 0x3FF3F64564513B1C, double %26151, double %26143)
  %26153 = load ptr, ptr %7, align 8, !tbaa !9
  %26154 = load i32, ptr %12, align 4, !tbaa !5
  %26155 = load i32, ptr %8, align 4, !tbaa !5
  %26156 = mul nsw i32 8, %26155
  %26157 = add nsw i32 %26154, %26156
  %26158 = sext i32 %26157 to i64
  %26159 = getelementptr inbounds double, ptr %26153, i64 %26158
  %26160 = load double, ptr %26159, align 8, !tbaa !11
  %26161 = call double @llvm.fmuladd.f64(double 0xBCEB7FFFFFFFFFFF, double %26160, double %26152)
  %26162 = load ptr, ptr %7, align 8, !tbaa !9
  %26163 = load i32, ptr %12, align 4, !tbaa !5
  %26164 = load i32, ptr %8, align 4, !tbaa !5
  %26165 = mul nsw i32 9, %26164
  %26166 = add nsw i32 %26163, %26165
  %26167 = sext i32 %26166 to i64
  %26168 = getelementptr inbounds double, ptr %26162, i64 %26167
  %26169 = load double, ptr %26168, align 8, !tbaa !11
  %26170 = call double @llvm.fmuladd.f64(double 0xBCD93FFFFFFFFFFF, double %26169, double %26161)
  %26171 = load ptr, ptr %7, align 8, !tbaa !9
  %26172 = load i32, ptr %12, align 4, !tbaa !5
  %26173 = load i32, ptr %8, align 4, !tbaa !5
  %26174 = mul nsw i32 10, %26173
  %26175 = add nsw i32 %26172, %26174
  %26176 = sext i32 %26175 to i64
  %26177 = getelementptr inbounds double, ptr %26171, i64 %26176
  %26178 = load double, ptr %26177, align 8, !tbaa !11
  %26179 = call double @llvm.fmuladd.f64(double 0x3CEB6FFFFFFFFFFF, double %26178, double %26170)
  %26180 = load ptr, ptr %7, align 8, !tbaa !9
  %26181 = load i32, ptr %12, align 4, !tbaa !5
  %26182 = load i32, ptr %8, align 4, !tbaa !5
  %26183 = mul nsw i32 11, %26182
  %26184 = add nsw i32 %26181, %26183
  %26185 = sext i32 %26184 to i64
  %26186 = getelementptr inbounds double, ptr %26180, i64 %26185
  %26187 = load double, ptr %26186, align 8, !tbaa !11
  %26188 = call double @llvm.fmuladd.f64(double 0x3CC0C00000000000, double %26187, double %26179)
  %26189 = load ptr, ptr %7, align 8, !tbaa !9
  %26190 = load i32, ptr %12, align 4, !tbaa !5
  %26191 = load i32, ptr %8, align 4, !tbaa !5
  %26192 = mul nsw i32 12, %26191
  %26193 = add nsw i32 %26190, %26192
  %26194 = sext i32 %26193 to i64
  %26195 = getelementptr inbounds double, ptr %26189, i64 %26194
  %26196 = load double, ptr %26195, align 8, !tbaa !11
  %26197 = call double @llvm.fmuladd.f64(double 0x3CE6700000000000, double %26196, double %26188)
  %26198 = load ptr, ptr %7, align 8, !tbaa !9
  %26199 = load i32, ptr %12, align 4, !tbaa !5
  %26200 = load i32, ptr %8, align 4, !tbaa !5
  %26201 = mul nsw i32 13, %26200
  %26202 = add nsw i32 %26199, %26201
  %26203 = sext i32 %26202 to i64
  %26204 = getelementptr inbounds double, ptr %26198, i64 %26203
  %26205 = load double, ptr %26204, align 8, !tbaa !11
  %26206 = call double @llvm.fmuladd.f64(double 0xBCB43FFFFFFFFFFF, double %26205, double %26197)
  %26207 = load ptr, ptr %7, align 8, !tbaa !9
  %26208 = load i32, ptr %12, align 4, !tbaa !5
  %26209 = load i32, ptr %8, align 4, !tbaa !5
  %26210 = mul nsw i32 14, %26209
  %26211 = add nsw i32 %26208, %26210
  %26212 = sext i32 %26211 to i64
  %26213 = getelementptr inbounds double, ptr %26207, i64 %26212
  %26214 = load double, ptr %26213, align 8, !tbaa !11
  %26215 = call double @llvm.fmuladd.f64(double 0x3CDEA00000000000, double %26214, double %26206)
  %26216 = load ptr, ptr %7, align 8, !tbaa !9
  %26217 = load i32, ptr %12, align 4, !tbaa !5
  %26218 = load i32, ptr %8, align 4, !tbaa !5
  %26219 = mul nsw i32 15, %26218
  %26220 = add nsw i32 %26217, %26219
  %26221 = sext i32 %26220 to i64
  %26222 = getelementptr inbounds double, ptr %26216, i64 %26221
  %26223 = load double, ptr %26222, align 8, !tbaa !11
  %26224 = call double @llvm.fmuladd.f64(double 0xBCC7400000000000, double %26223, double %26215)
  %26225 = load ptr, ptr %7, align 8, !tbaa !9
  %26226 = load i32, ptr %12, align 4, !tbaa !5
  %26227 = load i32, ptr %8, align 4, !tbaa !5
  %26228 = mul nsw i32 16, %26227
  %26229 = add nsw i32 %26226, %26228
  %26230 = sext i32 %26229 to i64
  %26231 = getelementptr inbounds double, ptr %26225, i64 %26230
  %26232 = load double, ptr %26231, align 8, !tbaa !11
  %26233 = call double @llvm.fmuladd.f64(double 0xBCEAF80000000000, double %26232, double %26224)
  %26234 = load ptr, ptr %7, align 8, !tbaa !9
  %26235 = load i32, ptr %12, align 4, !tbaa !5
  %26236 = load i32, ptr %8, align 4, !tbaa !5
  %26237 = mul nsw i32 17, %26236
  %26238 = add nsw i32 %26235, %26237
  %26239 = sext i32 %26238 to i64
  %26240 = getelementptr inbounds double, ptr %26234, i64 %26239
  %26241 = load double, ptr %26240, align 8, !tbaa !11
  %26242 = call double @llvm.fmuladd.f64(double 0x3FE3AA36D354D103, double %26241, double %26233)
  %26243 = load ptr, ptr %7, align 8, !tbaa !9
  %26244 = load i32, ptr %12, align 4, !tbaa !5
  %26245 = load i32, ptr %8, align 4, !tbaa !5
  %26246 = mul nsw i32 18, %26245
  %26247 = add nsw i32 %26244, %26246
  %26248 = sext i32 %26247 to i64
  %26249 = getelementptr inbounds double, ptr %26243, i64 %26248
  %26250 = load double, ptr %26249, align 8, !tbaa !11
  %26251 = call double @llvm.fmuladd.f64(double 0xBCDBFFFFFFFFFFFF, double %26250, double %26242)
  %26252 = load ptr, ptr %7, align 8, !tbaa !9
  %26253 = load i32, ptr %12, align 4, !tbaa !5
  %26254 = load i32, ptr %8, align 4, !tbaa !5
  %26255 = mul nsw i32 19, %26254
  %26256 = add nsw i32 %26253, %26255
  %26257 = sext i32 %26256 to i64
  %26258 = getelementptr inbounds double, ptr %26252, i64 %26257
  %26259 = load double, ptr %26258, align 8, !tbaa !11
  %26260 = call double @llvm.fmuladd.f64(double 0xBCC6800000000000, double %26259, double %26251)
  store double %26260, ptr %11, align 8, !tbaa !11
  %26261 = load double, ptr %11, align 8, !tbaa !11
  %26262 = load ptr, ptr %9, align 8, !tbaa !9
  %26263 = load i32, ptr %12, align 4, !tbaa !5
  %26264 = load i32, ptr %10, align 4, !tbaa !5
  %26265 = mul nsw i32 97, %26264
  %26266 = add nsw i32 %26263, %26265
  %26267 = sext i32 %26266 to i64
  %26268 = getelementptr inbounds double, ptr %26262, i64 %26267
  %26269 = load double, ptr %26268, align 8, !tbaa !11
  %26270 = fadd double %26269, %26261
  store double %26270, ptr %26268, 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 0, %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 = load ptr, ptr %7, align 8, !tbaa !9
  %26280 = load i32, ptr %12, align 4, !tbaa !5
  %26281 = load i32, ptr %8, align 4, !tbaa !5
  %26282 = mul nsw i32 1, %26281
  %26283 = add nsw i32 %26280, %26282
  %26284 = sext i32 %26283 to i64
  %26285 = getelementptr inbounds double, ptr %26279, i64 %26284
  %26286 = load double, ptr %26285, align 8, !tbaa !11
  %26287 = fmul double 0x3CF6600000000001, %26286
  %26288 = call double @llvm.fmuladd.f64(double 0x3CF9E00000000000, double %26278, double %26287)
  %26289 = load ptr, ptr %7, align 8, !tbaa !9
  %26290 = load i32, ptr %12, align 4, !tbaa !5
  %26291 = load i32, ptr %8, align 4, !tbaa !5
  %26292 = mul nsw i32 2, %26291
  %26293 = add nsw i32 %26290, %26292
  %26294 = sext i32 %26293 to i64
  %26295 = getelementptr inbounds double, ptr %26289, i64 %26294
  %26296 = load double, ptr %26295, align 8, !tbaa !11
  %26297 = call double @llvm.fmuladd.f64(double 0x3CCF400000000000, double %26296, double %26288)
  %26298 = load ptr, ptr %7, align 8, !tbaa !9
  %26299 = load i32, ptr %12, align 4, !tbaa !5
  %26300 = load i32, ptr %8, align 4, !tbaa !5
  %26301 = mul nsw i32 3, %26300
  %26302 = add nsw i32 %26299, %26301
  %26303 = sext i32 %26302 to i64
  %26304 = getelementptr inbounds double, ptr %26298, i64 %26303
  %26305 = load double, ptr %26304, align 8, !tbaa !11
  %26306 = call double @llvm.fmuladd.f64(double 0xBCC5800000000000, double %26305, double %26297)
  %26307 = load ptr, ptr %7, align 8, !tbaa !9
  %26308 = load i32, ptr %12, align 4, !tbaa !5
  %26309 = load i32, ptr %8, align 4, !tbaa !5
  %26310 = mul nsw i32 4, %26309
  %26311 = add nsw i32 %26308, %26310
  %26312 = sext i32 %26311 to i64
  %26313 = getelementptr inbounds double, ptr %26307, i64 %26312
  %26314 = load double, ptr %26313, align 8, !tbaa !11
  %26315 = call double @llvm.fmuladd.f64(double 0xBCDBFFFFFFFFFFFF, double %26314, double %26306)
  %26316 = load ptr, ptr %7, align 8, !tbaa !9
  %26317 = load i32, ptr %12, align 4, !tbaa !5
  %26318 = load i32, ptr %8, align 4, !tbaa !5
  %26319 = mul nsw i32 5, %26318
  %26320 = add nsw i32 %26317, %26319
  %26321 = sext i32 %26320 to i64
  %26322 = getelementptr inbounds double, ptr %26316, i64 %26321
  %26323 = load double, ptr %26322, align 8, !tbaa !11
  %26324 = call double @llvm.fmuladd.f64(double 0xBCFBA00000000000, double %26323, double %26315)
  %26325 = load ptr, ptr %7, align 8, !tbaa !9
  %26326 = load i32, ptr %12, align 4, !tbaa !5
  %26327 = load i32, ptr %8, align 4, !tbaa !5
  %26328 = mul nsw i32 6, %26327
  %26329 = add nsw i32 %26326, %26328
  %26330 = sext i32 %26329 to i64
  %26331 = getelementptr inbounds double, ptr %26325, i64 %26330
  %26332 = load double, ptr %26331, align 8, !tbaa !11
  %26333 = call double @llvm.fmuladd.f64(double 0xBCD7BFFFFFFFFFFE, double %26332, double %26324)
  %26334 = load ptr, ptr %7, align 8, !tbaa !9
  %26335 = load i32, ptr %12, align 4, !tbaa !5
  %26336 = load i32, ptr %8, align 4, !tbaa !5
  %26337 = mul nsw i32 7, %26336
  %26338 = add nsw i32 %26335, %26337
  %26339 = sext i32 %26338 to i64
  %26340 = getelementptr inbounds double, ptr %26334, i64 %26339
  %26341 = load double, ptr %26340, align 8, !tbaa !11
  %26342 = call double @llvm.fmuladd.f64(double 0xBCED000000000000, double %26341, double %26333)
  %26343 = load ptr, ptr %7, align 8, !tbaa !9
  %26344 = load i32, ptr %12, align 4, !tbaa !5
  %26345 = load i32, ptr %8, align 4, !tbaa !5
  %26346 = mul nsw i32 8, %26345
  %26347 = add nsw i32 %26344, %26346
  %26348 = sext i32 %26347 to i64
  %26349 = getelementptr inbounds double, ptr %26343, i64 %26348
  %26350 = load double, ptr %26349, align 8, !tbaa !11
  %26351 = call double @llvm.fmuladd.f64(double 0x3FF3F64564513B1C, double %26350, double %26342)
  %26352 = load ptr, ptr %7, align 8, !tbaa !9
  %26353 = load i32, ptr %12, align 4, !tbaa !5
  %26354 = load i32, ptr %8, align 4, !tbaa !5
  %26355 = mul nsw i32 9, %26354
  %26356 = add nsw i32 %26353, %26355
  %26357 = sext i32 %26356 to i64
  %26358 = getelementptr inbounds double, ptr %26352, i64 %26357
  %26359 = load double, ptr %26358, align 8, !tbaa !11
  %26360 = call double @llvm.fmuladd.f64(double 0x3CF1800000000000, double %26359, double %26351)
  %26361 = load ptr, ptr %7, align 8, !tbaa !9
  %26362 = load i32, ptr %12, align 4, !tbaa !5
  %26363 = load i32, ptr %8, align 4, !tbaa !5
  %26364 = mul nsw i32 10, %26363
  %26365 = add nsw i32 %26362, %26364
  %26366 = sext i32 %26365 to i64
  %26367 = getelementptr inbounds double, ptr %26361, i64 %26366
  %26368 = load double, ptr %26367, align 8, !tbaa !11
  %26369 = call double @llvm.fmuladd.f64(double 0x3CEAC00000000001, double %26368, double %26360)
  %26370 = load ptr, ptr %7, align 8, !tbaa !9
  %26371 = load i32, ptr %12, align 4, !tbaa !5
  %26372 = load i32, ptr %8, align 4, !tbaa !5
  %26373 = mul nsw i32 11, %26372
  %26374 = add nsw i32 %26371, %26373
  %26375 = sext i32 %26374 to i64
  %26376 = getelementptr inbounds double, ptr %26370, i64 %26375
  %26377 = load double, ptr %26376, align 8, !tbaa !11
  %26378 = call double @llvm.fmuladd.f64(double 0x3CE5800000000001, double %26377, double %26369)
  %26379 = load ptr, ptr %7, align 8, !tbaa !9
  %26380 = load i32, ptr %12, align 4, !tbaa !5
  %26381 = load i32, ptr %8, align 4, !tbaa !5
  %26382 = mul nsw i32 12, %26381
  %26383 = add nsw i32 %26380, %26382
  %26384 = sext i32 %26383 to i64
  %26385 = getelementptr inbounds double, ptr %26379, i64 %26384
  %26386 = load double, ptr %26385, align 8, !tbaa !11
  %26387 = call double @llvm.fmuladd.f64(double 0x3CB97FFFFFFFFFFF, double %26386, double %26378)
  %26388 = load ptr, ptr %7, align 8, !tbaa !9
  %26389 = load i32, ptr %12, align 4, !tbaa !5
  %26390 = load i32, ptr %8, align 4, !tbaa !5
  %26391 = mul nsw i32 13, %26390
  %26392 = add nsw i32 %26389, %26391
  %26393 = sext i32 %26392 to i64
  %26394 = getelementptr inbounds double, ptr %26388, i64 %26393
  %26395 = load double, ptr %26394, align 8, !tbaa !11
  %26396 = call double @llvm.fmuladd.f64(double 0xBCB9000000000000, double %26395, double %26387)
  %26397 = load ptr, ptr %7, align 8, !tbaa !9
  %26398 = load i32, ptr %12, align 4, !tbaa !5
  %26399 = load i32, ptr %8, align 4, !tbaa !5
  %26400 = mul nsw i32 14, %26399
  %26401 = add nsw i32 %26398, %26400
  %26402 = sext i32 %26401 to i64
  %26403 = getelementptr inbounds double, ptr %26397, i64 %26402
  %26404 = load double, ptr %26403, align 8, !tbaa !11
  %26405 = call double @llvm.fmuladd.f64(double 0xBCCC000000000000, double %26404, double %26396)
  %26406 = load ptr, ptr %7, align 8, !tbaa !9
  %26407 = load i32, ptr %12, align 4, !tbaa !5
  %26408 = load i32, ptr %8, align 4, !tbaa !5
  %26409 = mul nsw i32 15, %26408
  %26410 = add nsw i32 %26407, %26409
  %26411 = sext i32 %26410 to i64
  %26412 = getelementptr inbounds double, ptr %26406, i64 %26411
  %26413 = load double, ptr %26412, align 8, !tbaa !11
  %26414 = call double @llvm.fmuladd.f64(double 0xBCEB400000000001, double %26413, double %26405)
  %26415 = load ptr, ptr %7, align 8, !tbaa !9
  %26416 = load i32, ptr %12, align 4, !tbaa !5
  %26417 = load i32, ptr %8, align 4, !tbaa !5
  %26418 = mul nsw i32 16, %26417
  %26419 = add nsw i32 %26416, %26418
  %26420 = sext i32 %26419 to i64
  %26421 = getelementptr inbounds double, ptr %26415, i64 %26420
  %26422 = load double, ptr %26421, align 8, !tbaa !11
  %26423 = call double @llvm.fmuladd.f64(double 0xBCC5800000000000, double %26422, double %26414)
  %26424 = load ptr, ptr %7, align 8, !tbaa !9
  %26425 = load i32, ptr %12, align 4, !tbaa !5
  %26426 = load i32, ptr %8, align 4, !tbaa !5
  %26427 = mul nsw i32 17, %26426
  %26428 = add nsw i32 %26425, %26427
  %26429 = sext i32 %26428 to i64
  %26430 = getelementptr inbounds double, ptr %26424, i64 %26429
  %26431 = load double, ptr %26430, align 8, !tbaa !11
  %26432 = call double @llvm.fmuladd.f64(double 0xBCDAFFFFFFFFFFFE, double %26431, double %26423)
  %26433 = load ptr, ptr %7, align 8, !tbaa !9
  %26434 = load i32, ptr %12, align 4, !tbaa !5
  %26435 = load i32, ptr %8, align 4, !tbaa !5
  %26436 = mul nsw i32 18, %26435
  %26437 = add nsw i32 %26434, %26436
  %26438 = sext i32 %26437 to i64
  %26439 = getelementptr inbounds double, ptr %26433, i64 %26438
  %26440 = load double, ptr %26439, align 8, !tbaa !11
  %26441 = call double @llvm.fmuladd.f64(double 0x3FE3AA36D354D103, double %26440, double %26432)
  %26442 = load ptr, ptr %7, align 8, !tbaa !9
  %26443 = load i32, ptr %12, align 4, !tbaa !5
  %26444 = load i32, ptr %8, align 4, !tbaa !5
  %26445 = mul nsw i32 19, %26444
  %26446 = add nsw i32 %26443, %26445
  %26447 = sext i32 %26446 to i64
  %26448 = getelementptr inbounds double, ptr %26442, i64 %26447
  %26449 = load double, ptr %26448, align 8, !tbaa !11
  %26450 = call double @llvm.fmuladd.f64(double 0x3CE1800000000000, double %26449, double %26441)
  store double %26450, ptr %11, align 8, !tbaa !11
  %26451 = load double, ptr %11, align 8, !tbaa !11
  %26452 = load ptr, ptr %9, align 8, !tbaa !9
  %26453 = load i32, ptr %12, align 4, !tbaa !5
  %26454 = load i32, ptr %10, align 4, !tbaa !5
  %26455 = mul nsw i32 98, %26454
  %26456 = add nsw i32 %26453, %26455
  %26457 = sext i32 %26456 to i64
  %26458 = getelementptr inbounds double, ptr %26452, i64 %26457
  %26459 = load double, ptr %26458, align 8, !tbaa !11
  %26460 = fadd double %26459, %26451
  store double %26460, ptr %26458, align 8, !tbaa !11
  %26461 = load ptr, ptr %7, align 8, !tbaa !9
  %26462 = load i32, ptr %12, align 4, !tbaa !5
  %26463 = load i32, ptr %8, align 4, !tbaa !5
  %26464 = mul nsw i32 0, %26463
  %26465 = add nsw i32 %26462, %26464
  %26466 = sext i32 %26465 to i64
  %26467 = getelementptr inbounds double, ptr %26461, i64 %26466
  %26468 = load double, ptr %26467, align 8, !tbaa !11
  %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 1, %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 = fmul double 0x3CF5200000000000, %26476
  %26478 = call double @llvm.fmuladd.f64(double 0x3CFA600000000000, double %26468, double %26477)
  %26479 = load ptr, ptr %7, align 8, !tbaa !9
  %26480 = load i32, ptr %12, align 4, !tbaa !5
  %26481 = load i32, ptr %8, align 4, !tbaa !5
  %26482 = mul nsw i32 2, %26481
  %26483 = add nsw i32 %26480, %26482
  %26484 = sext i32 %26483 to i64
  %26485 = getelementptr inbounds double, ptr %26479, i64 %26484
  %26486 = load double, ptr %26485, align 8, !tbaa !11
  %26487 = call double @llvm.fmuladd.f64(double 0xBCC7C00000000000, double %26486, double %26478)
  %26488 = load ptr, ptr %7, align 8, !tbaa !9
  %26489 = load i32, ptr %12, align 4, !tbaa !5
  %26490 = load i32, ptr %8, align 4, !tbaa !5
  %26491 = mul nsw i32 3, %26490
  %26492 = add nsw i32 %26489, %26491
  %26493 = sext i32 %26492 to i64
  %26494 = getelementptr inbounds double, ptr %26488, i64 %26493
  %26495 = load double, ptr %26494, align 8, !tbaa !11
  %26496 = call double @llvm.fmuladd.f64(double 0x3CD3A00000000001, double %26495, double %26487)
  %26497 = load ptr, ptr %7, align 8, !tbaa !9
  %26498 = load i32, ptr %12, align 4, !tbaa !5
  %26499 = load i32, ptr %8, align 4, !tbaa !5
  %26500 = mul nsw i32 4, %26499
  %26501 = add nsw i32 %26498, %26500
  %26502 = sext i32 %26501 to i64
  %26503 = getelementptr inbounds double, ptr %26497, i64 %26502
  %26504 = load double, ptr %26503, align 8, !tbaa !11
  %26505 = call double @llvm.fmuladd.f64(double 0xBCFD600000000000, double %26504, double %26496)
  %26506 = load ptr, ptr %7, align 8, !tbaa !9
  %26507 = load i32, ptr %12, align 4, !tbaa !5
  %26508 = load i32, ptr %8, align 4, !tbaa !5
  %26509 = mul nsw i32 5, %26508
  %26510 = add nsw i32 %26507, %26509
  %26511 = sext i32 %26510 to i64
  %26512 = getelementptr inbounds double, ptr %26506, i64 %26511
  %26513 = load double, ptr %26512, align 8, !tbaa !11
  %26514 = call double @llvm.fmuladd.f64(double 0xBCDB7FFFFFFFFFFF, double %26513, double %26505)
  %26515 = load ptr, ptr %7, align 8, !tbaa !9
  %26516 = load i32, ptr %12, align 4, !tbaa !5
  %26517 = load i32, ptr %8, align 4, !tbaa !5
  %26518 = mul nsw i32 6, %26517
  %26519 = add nsw i32 %26516, %26518
  %26520 = sext i32 %26519 to i64
  %26521 = getelementptr inbounds double, ptr %26515, i64 %26520
  %26522 = load double, ptr %26521, align 8, !tbaa !11
  %26523 = call double @llvm.fmuladd.f64(double 0xBCEC800000000000, double %26522, double %26514)
  %26524 = load ptr, ptr %7, align 8, !tbaa !9
  %26525 = load i32, ptr %12, align 4, !tbaa !5
  %26526 = load i32, ptr %8, align 4, !tbaa !5
  %26527 = mul nsw i32 7, %26526
  %26528 = add nsw i32 %26525, %26527
  %26529 = sext i32 %26528 to i64
  %26530 = getelementptr inbounds double, ptr %26524, i64 %26529
  %26531 = load double, ptr %26530, align 8, !tbaa !11
  %26532 = call double @llvm.fmuladd.f64(double 0xBCDA400000000000, double %26531, double %26523)
  %26533 = load ptr, ptr %7, align 8, !tbaa !9
  %26534 = load i32, ptr %12, align 4, !tbaa !5
  %26535 = load i32, ptr %8, align 4, !tbaa !5
  %26536 = mul nsw i32 8, %26535
  %26537 = add nsw i32 %26534, %26536
  %26538 = sext i32 %26537 to i64
  %26539 = getelementptr inbounds double, ptr %26533, i64 %26538
  %26540 = load double, ptr %26539, align 8, !tbaa !11
  %26541 = call double @llvm.fmuladd.f64(double 0x3CF2400000000000, double %26540, double %26532)
  %26542 = load ptr, ptr %7, align 8, !tbaa !9
  %26543 = load i32, ptr %12, align 4, !tbaa !5
  %26544 = load i32, ptr %8, align 4, !tbaa !5
  %26545 = mul nsw i32 9, %26544
  %26546 = add nsw i32 %26543, %26545
  %26547 = sext i32 %26546 to i64
  %26548 = getelementptr inbounds double, ptr %26542, i64 %26547
  %26549 = load double, ptr %26548, align 8, !tbaa !11
  %26550 = call double @llvm.fmuladd.f64(double 0x3FF3F64564513B1C, double %26549, double %26541)
  %26551 = load ptr, ptr %7, align 8, !tbaa !9
  %26552 = load i32, ptr %12, align 4, !tbaa !5
  %26553 = load i32, ptr %8, align 4, !tbaa !5
  %26554 = mul nsw i32 10, %26553
  %26555 = add nsw i32 %26552, %26554
  %26556 = sext i32 %26555 to i64
  %26557 = getelementptr inbounds double, ptr %26551, i64 %26556
  %26558 = load double, ptr %26557, align 8, !tbaa !11
  %26559 = call double @llvm.fmuladd.f64(double 0x3CEBBFFFFFFFFFFF, double %26558, double %26550)
  %26560 = load ptr, ptr %7, align 8, !tbaa !9
  %26561 = load i32, ptr %12, align 4, !tbaa !5
  %26562 = load i32, ptr %8, align 4, !tbaa !5
  %26563 = mul nsw i32 11, %26562
  %26564 = add nsw i32 %26561, %26563
  %26565 = sext i32 %26564 to i64
  %26566 = getelementptr inbounds double, ptr %26560, i64 %26565
  %26567 = load double, ptr %26566, align 8, !tbaa !11
  %26568 = call double @llvm.fmuladd.f64(double 0x3CE3C00000000000, double %26567, double %26559)
  %26569 = load ptr, ptr %7, align 8, !tbaa !9
  %26570 = load i32, ptr %12, align 4, !tbaa !5
  %26571 = load i32, ptr %8, align 4, !tbaa !5
  %26572 = mul nsw i32 12, %26571
  %26573 = add nsw i32 %26570, %26572
  %26574 = sext i32 %26573 to i64
  %26575 = getelementptr inbounds double, ptr %26569, i64 %26574
  %26576 = load double, ptr %26575, align 8, !tbaa !11
  %26577 = call double @llvm.fmuladd.f64(double 0xBCBB800000000001, double %26576, double %26568)
  %26578 = load ptr, ptr %7, align 8, !tbaa !9
  %26579 = load i32, ptr %12, align 4, !tbaa !5
  %26580 = load i32, ptr %8, align 4, !tbaa !5
  %26581 = mul nsw i32 13, %26580
  %26582 = add nsw i32 %26579, %26581
  %26583 = sext i32 %26582 to i64
  %26584 = getelementptr inbounds double, ptr %26578, i64 %26583
  %26585 = load double, ptr %26584, align 8, !tbaa !11
  %26586 = call double @llvm.fmuladd.f64(double 0x3CC3400000000000, double %26585, double %26577)
  %26587 = load ptr, ptr %7, align 8, !tbaa !9
  %26588 = load i32, ptr %12, align 4, !tbaa !5
  %26589 = load i32, ptr %8, align 4, !tbaa !5
  %26590 = mul nsw i32 14, %26589
  %26591 = add nsw i32 %26588, %26590
  %26592 = sext i32 %26591 to i64
  %26593 = getelementptr inbounds double, ptr %26587, i64 %26592
  %26594 = load double, ptr %26593, align 8, !tbaa !11
  %26595 = call double @llvm.fmuladd.f64(double 0xBCECC00000000000, double %26594, double %26586)
  %26596 = load ptr, ptr %7, align 8, !tbaa !9
  %26597 = load i32, ptr %12, align 4, !tbaa !5
  %26598 = load i32, ptr %8, align 4, !tbaa !5
  %26599 = mul nsw i32 15, %26598
  %26600 = add nsw i32 %26597, %26599
  %26601 = sext i32 %26600 to i64
  %26602 = getelementptr inbounds double, ptr %26596, i64 %26601
  %26603 = load double, ptr %26602, align 8, !tbaa !11
  %26604 = call double @llvm.fmuladd.f64(double 0xBCCB000000000000, double %26603, double %26595)
  %26605 = load ptr, ptr %7, align 8, !tbaa !9
  %26606 = load i32, ptr %12, align 4, !tbaa !5
  %26607 = load i32, ptr %8, align 4, !tbaa !5
  %26608 = mul nsw i32 16, %26607
  %26609 = add nsw i32 %26606, %26608
  %26610 = sext i32 %26609 to i64
  %26611 = getelementptr inbounds double, ptr %26605, i64 %26610
  %26612 = load double, ptr %26611, align 8, !tbaa !11
  %26613 = call double @llvm.fmuladd.f64(double 0xBCDAFFFFFFFFFFFE, double %26612, double %26604)
  %26614 = load ptr, ptr %7, align 8, !tbaa !9
  %26615 = load i32, ptr %12, align 4, !tbaa !5
  %26616 = load i32, ptr %8, align 4, !tbaa !5
  %26617 = mul nsw i32 17, %26616
  %26618 = add nsw i32 %26615, %26617
  %26619 = sext i32 %26618 to i64
  %26620 = getelementptr inbounds double, ptr %26614, i64 %26619
  %26621 = load double, ptr %26620, align 8, !tbaa !11
  %26622 = call double @llvm.fmuladd.f64(double 0xBCC6800000000000, double %26621, double %26613)
  %26623 = load ptr, ptr %7, align 8, !tbaa !9
  %26624 = load i32, ptr %12, align 4, !tbaa !5
  %26625 = load i32, ptr %8, align 4, !tbaa !5
  %26626 = mul nsw i32 18, %26625
  %26627 = add nsw i32 %26624, %26626
  %26628 = sext i32 %26627 to i64
  %26629 = getelementptr inbounds double, ptr %26623, i64 %26628
  %26630 = load double, ptr %26629, align 8, !tbaa !11
  %26631 = call double @llvm.fmuladd.f64(double 0x3CE1000000000000, double %26630, double %26622)
  %26632 = load ptr, ptr %7, align 8, !tbaa !9
  %26633 = load i32, ptr %12, align 4, !tbaa !5
  %26634 = load i32, ptr %8, align 4, !tbaa !5
  %26635 = mul nsw i32 19, %26634
  %26636 = add nsw i32 %26633, %26635
  %26637 = sext i32 %26636 to i64
  %26638 = getelementptr inbounds double, ptr %26632, i64 %26637
  %26639 = load double, ptr %26638, align 8, !tbaa !11
  %26640 = call double @llvm.fmuladd.f64(double 0x3FE3AA36D354D104, double %26639, double %26631)
  store double %26640, ptr %11, align 8, !tbaa !11
  %26641 = load double, ptr %11, align 8, !tbaa !11
  %26642 = load ptr, ptr %9, align 8, !tbaa !9
  %26643 = load i32, ptr %12, align 4, !tbaa !5
  %26644 = load i32, ptr %10, align 4, !tbaa !5
  %26645 = mul nsw i32 99, %26644
  %26646 = add nsw i32 %26643, %26645
  %26647 = sext i32 %26646 to i64
  %26648 = getelementptr inbounds double, ptr %26642, i64 %26647
  %26649 = load double, ptr %26648, align 8, !tbaa !11
  %26650 = fadd double %26649, %26641
  store double %26650, ptr %26648, align 8, !tbaa !11
  %26651 = load ptr, ptr %7, align 8, !tbaa !9
  %26652 = load i32, ptr %12, align 4, !tbaa !5
  %26653 = load i32, ptr %8, align 4, !tbaa !5
  %26654 = mul nsw i32 0, %26653
  %26655 = add nsw i32 %26652, %26654
  %26656 = sext i32 %26655 to i64
  %26657 = getelementptr inbounds double, ptr %26651, i64 %26656
  %26658 = load double, ptr %26657, align 8, !tbaa !11
  %26659 = load ptr, ptr %7, align 8, !tbaa !9
  %26660 = load i32, ptr %12, align 4, !tbaa !5
  %26661 = load i32, ptr %8, align 4, !tbaa !5
  %26662 = mul nsw i32 1, %26661
  %26663 = add nsw i32 %26660, %26662
  %26664 = sext i32 %26663 to i64
  %26665 = getelementptr inbounds double, ptr %26659, i64 %26664
  %26666 = load double, ptr %26665, align 8, !tbaa !11
  %26667 = fmul double 0x3CB1000000000001, %26666
  %26668 = call double @llvm.fmuladd.f64(double 0xBFE3AA36D354D104, double %26658, double %26667)
  %26669 = load ptr, ptr %7, align 8, !tbaa !9
  %26670 = load i32, ptr %12, align 4, !tbaa !5
  %26671 = load i32, ptr %8, align 4, !tbaa !5
  %26672 = mul nsw i32 2, %26671
  %26673 = add nsw i32 %26670, %26672
  %26674 = sext i32 %26673 to i64
  %26675 = getelementptr inbounds double, ptr %26669, i64 %26674
  %26676 = load double, ptr %26675, align 8, !tbaa !11
  %26677 = call double @llvm.fmuladd.f64(double 0x3CB43FFFFFFFFFFF, double %26676, double %26668)
  %26678 = load ptr, ptr %7, align 8, !tbaa !9
  %26679 = load i32, ptr %12, align 4, !tbaa !5
  %26680 = load i32, ptr %8, align 4, !tbaa !5
  %26681 = mul nsw i32 3, %26680
  %26682 = add nsw i32 %26679, %26681
  %26683 = sext i32 %26682 to i64
  %26684 = getelementptr inbounds double, ptr %26678, i64 %26683
  %26685 = load double, ptr %26684, align 8, !tbaa !11
  %26686 = call double @llvm.fmuladd.f64(double 0x3CB2C00000000001, double %26685, double %26677)
  %26687 = load ptr, ptr %7, align 8, !tbaa !9
  %26688 = load i32, ptr %12, align 4, !tbaa !5
  %26689 = load i32, ptr %8, align 4, !tbaa !5
  %26690 = mul nsw i32 4, %26689
  %26691 = add nsw i32 %26688, %26690
  %26692 = sext i32 %26691 to i64
  %26693 = getelementptr inbounds double, ptr %26687, i64 %26692
  %26694 = load double, ptr %26693, align 8, !tbaa !11
  %26695 = call double @llvm.fmuladd.f64(double 0xBCDBC00000000002, double %26694, double %26686)
  %26696 = load ptr, ptr %7, align 8, !tbaa !9
  %26697 = load i32, ptr %12, align 4, !tbaa !5
  %26698 = load i32, ptr %8, align 4, !tbaa !5
  %26699 = mul nsw i32 5, %26698
  %26700 = add nsw i32 %26697, %26699
  %26701 = sext i32 %26700 to i64
  %26702 = getelementptr inbounds double, ptr %26696, i64 %26701
  %26703 = load double, ptr %26702, align 8, !tbaa !11
  %26704 = call double @llvm.fmuladd.f64(double 0xBCDBC00000000002, double %26703, double %26695)
  %26705 = load ptr, ptr %7, align 8, !tbaa !9
  %26706 = load i32, ptr %12, align 4, !tbaa !5
  %26707 = load i32, ptr %8, align 4, !tbaa !5
  %26708 = mul nsw i32 6, %26707
  %26709 = add nsw i32 %26706, %26708
  %26710 = sext i32 %26709 to i64
  %26711 = getelementptr inbounds double, ptr %26705, i64 %26710
  %26712 = load double, ptr %26711, align 8, !tbaa !11
  %26713 = call double @llvm.fmuladd.f64(double 0xBCDB400000000001, double %26712, double %26704)
  %26714 = load ptr, ptr %7, align 8, !tbaa !9
  %26715 = load i32, ptr %12, align 4, !tbaa !5
  %26716 = load i32, ptr %8, align 4, !tbaa !5
  %26717 = mul nsw i32 7, %26716
  %26718 = add nsw i32 %26715, %26717
  %26719 = sext i32 %26718 to i64
  %26720 = getelementptr inbounds double, ptr %26714, i64 %26719
  %26721 = load double, ptr %26720, align 8, !tbaa !11
  %26722 = call double @llvm.fmuladd.f64(double 0xBCDAC00000000001, double %26721, double %26713)
  %26723 = load ptr, ptr %7, align 8, !tbaa !9
  %26724 = load i32, ptr %12, align 4, !tbaa !5
  %26725 = load i32, ptr %8, align 4, !tbaa !5
  %26726 = mul nsw i32 8, %26725
  %26727 = add nsw i32 %26724, %26726
  %26728 = sext i32 %26727 to i64
  %26729 = getelementptr inbounds double, ptr %26723, i64 %26728
  %26730 = load double, ptr %26729, align 8, !tbaa !11
  %26731 = call double @llvm.fmuladd.f64(double 0xBCDB7FFFFFFFFFFF, double %26730, double %26722)
  %26732 = load ptr, ptr %7, align 8, !tbaa !9
  %26733 = load i32, ptr %12, align 4, !tbaa !5
  %26734 = load i32, ptr %8, align 4, !tbaa !5
  %26735 = mul nsw i32 9, %26734
  %26736 = add nsw i32 %26733, %26735
  %26737 = sext i32 %26736 to i64
  %26738 = getelementptr inbounds double, ptr %26732, i64 %26737
  %26739 = load double, ptr %26738, align 8, !tbaa !11
  %26740 = call double @llvm.fmuladd.f64(double 0xBCDA000000000003, double %26739, double %26731)
  %26741 = load ptr, ptr %7, align 8, !tbaa !9
  %26742 = load i32, ptr %12, align 4, !tbaa !5
  %26743 = load i32, ptr %8, align 4, !tbaa !5
  %26744 = mul nsw i32 10, %26743
  %26745 = add nsw i32 %26742, %26744
  %26746 = sext i32 %26745 to i64
  %26747 = getelementptr inbounds double, ptr %26741, i64 %26746
  %26748 = load double, ptr %26747, align 8, !tbaa !11
  %26749 = call double @llvm.fmuladd.f64(double 0xBFF3F64564513B1C, double %26748, double %26740)
  %26750 = load ptr, ptr %7, align 8, !tbaa !9
  %26751 = load i32, ptr %12, align 4, !tbaa !5
  %26752 = load i32, ptr %8, align 4, !tbaa !5
  %26753 = mul nsw i32 11, %26752
  %26754 = add nsw i32 %26751, %26753
  %26755 = sext i32 %26754 to i64
  %26756 = getelementptr inbounds double, ptr %26750, i64 %26755
  %26757 = load double, ptr %26756, align 8, !tbaa !11
  %26758 = call double @llvm.fmuladd.f64(double 0x3CC4800000000000, double %26757, double %26749)
  %26759 = load ptr, ptr %7, align 8, !tbaa !9
  %26760 = load i32, ptr %12, align 4, !tbaa !5
  %26761 = load i32, ptr %8, align 4, !tbaa !5
  %26762 = mul nsw i32 12, %26761
  %26763 = add nsw i32 %26760, %26762
  %26764 = sext i32 %26763 to i64
  %26765 = getelementptr inbounds double, ptr %26759, i64 %26764
  %26766 = load double, ptr %26765, align 8, !tbaa !11
  %26767 = call double @llvm.fmuladd.f64(double 0x3CC6200000000000, double %26766, double %26758)
  %26768 = load ptr, ptr %7, align 8, !tbaa !9
  %26769 = load i32, ptr %12, align 4, !tbaa !5
  %26770 = load i32, ptr %8, align 4, !tbaa !5
  %26771 = mul nsw i32 13, %26770
  %26772 = add nsw i32 %26769, %26771
  %26773 = sext i32 %26772 to i64
  %26774 = getelementptr inbounds double, ptr %26768, i64 %26773
  %26775 = load double, ptr %26774, align 8, !tbaa !11
  %26776 = call double @llvm.fmuladd.f64(double 0x3CC4600000000000, double %26775, double %26767)
  %26777 = load ptr, ptr %7, align 8, !tbaa !9
  %26778 = load i32, ptr %12, align 4, !tbaa !5
  %26779 = load i32, ptr %8, align 4, !tbaa !5
  %26780 = mul nsw i32 14, %26779
  %26781 = add nsw i32 %26778, %26780
  %26782 = sext i32 %26781 to i64
  %26783 = getelementptr inbounds double, ptr %26777, i64 %26782
  %26784 = load double, ptr %26783, align 8, !tbaa !11
  %26785 = call double @llvm.fmuladd.f64(double 0xBCEB600000000000, double %26784, double %26776)
  %26786 = load ptr, ptr %7, align 8, !tbaa !9
  %26787 = load i32, ptr %12, align 4, !tbaa !5
  %26788 = load i32, ptr %8, align 4, !tbaa !5
  %26789 = mul nsw i32 15, %26788
  %26790 = add nsw i32 %26787, %26789
  %26791 = sext i32 %26790 to i64
  %26792 = getelementptr inbounds double, ptr %26786, i64 %26791
  %26793 = load double, ptr %26792, align 8, !tbaa !11
  %26794 = call double @llvm.fmuladd.f64(double 0xBCEB200000000000, double %26793, double %26785)
  %26795 = load ptr, ptr %7, align 8, !tbaa !9
  %26796 = load i32, ptr %12, align 4, !tbaa !5
  %26797 = load i32, ptr %8, align 4, !tbaa !5
  %26798 = mul nsw i32 16, %26797
  %26799 = add nsw i32 %26796, %26798
  %26800 = sext i32 %26799 to i64
  %26801 = getelementptr inbounds double, ptr %26795, i64 %26800
  %26802 = load double, ptr %26801, align 8, !tbaa !11
  %26803 = call double @llvm.fmuladd.f64(double 0xBCEBA00000000000, double %26802, double %26794)
  %26804 = load ptr, ptr %7, align 8, !tbaa !9
  %26805 = load i32, ptr %12, align 4, !tbaa !5
  %26806 = load i32, ptr %8, align 4, !tbaa !5
  %26807 = mul nsw i32 17, %26806
  %26808 = add nsw i32 %26805, %26807
  %26809 = sext i32 %26808 to i64
  %26810 = getelementptr inbounds double, ptr %26804, i64 %26809
  %26811 = load double, ptr %26810, align 8, !tbaa !11
  %26812 = call double @llvm.fmuladd.f64(double 0xBCE9600000000001, double %26811, double %26803)
  %26813 = load ptr, ptr %7, align 8, !tbaa !9
  %26814 = load i32, ptr %12, align 4, !tbaa !5
  %26815 = load i32, ptr %8, align 4, !tbaa !5
  %26816 = mul nsw i32 18, %26815
  %26817 = add nsw i32 %26814, %26816
  %26818 = sext i32 %26817 to i64
  %26819 = getelementptr inbounds double, ptr %26813, i64 %26818
  %26820 = load double, ptr %26819, align 8, !tbaa !11
  %26821 = call double @llvm.fmuladd.f64(double 0xBCEAC00000000001, double %26820, double %26812)
  %26822 = load ptr, ptr %7, align 8, !tbaa !9
  %26823 = load i32, ptr %12, align 4, !tbaa !5
  %26824 = load i32, ptr %8, align 4, !tbaa !5
  %26825 = mul nsw i32 19, %26824
  %26826 = add nsw i32 %26823, %26825
  %26827 = sext i32 %26826 to i64
  %26828 = getelementptr inbounds double, ptr %26822, i64 %26827
  %26829 = load double, ptr %26828, align 8, !tbaa !11
  %26830 = call double @llvm.fmuladd.f64(double 0xBCE9C00000000000, double %26829, double %26821)
  store double %26830, ptr %11, align 8, !tbaa !11
  %26831 = load double, ptr %11, align 8, !tbaa !11
  %26832 = load ptr, ptr %9, align 8, !tbaa !9
  %26833 = load i32, ptr %12, align 4, !tbaa !5
  %26834 = load i32, ptr %10, align 4, !tbaa !5
  %26835 = mul nsw i32 100, %26834
  %26836 = add nsw i32 %26833, %26835
  %26837 = sext i32 %26836 to i64
  %26838 = getelementptr inbounds double, ptr %26832, i64 %26837
  %26839 = load double, ptr %26838, align 8, !tbaa !11
  %26840 = fadd double %26839, %26831
  store double %26840, ptr %26838, align 8, !tbaa !11
  %26841 = load ptr, ptr %7, align 8, !tbaa !9
  %26842 = load i32, ptr %12, align 4, !tbaa !5
  %26843 = load i32, ptr %8, align 4, !tbaa !5
  %26844 = mul nsw i32 0, %26843
  %26845 = add nsw i32 %26842, %26844
  %26846 = sext i32 %26845 to i64
  %26847 = getelementptr inbounds double, ptr %26841, i64 %26846
  %26848 = load double, ptr %26847, align 8, !tbaa !11
  %26849 = load ptr, ptr %7, align 8, !tbaa !9
  %26850 = load i32, ptr %12, align 4, !tbaa !5
  %26851 = load i32, ptr %8, align 4, !tbaa !5
  %26852 = mul nsw i32 1, %26851
  %26853 = add nsw i32 %26850, %26852
  %26854 = sext i32 %26853 to i64
  %26855 = getelementptr inbounds double, ptr %26849, i64 %26854
  %26856 = load double, ptr %26855, align 8, !tbaa !11
  %26857 = fmul double 0xBFE3AA36D354D050, %26856
  %26858 = call double @llvm.fmuladd.f64(double 0x3CE2000000000001, double %26848, double %26857)
  %26859 = load ptr, ptr %7, align 8, !tbaa !9
  %26860 = load i32, ptr %12, align 4, !tbaa !5
  %26861 = load i32, ptr %8, align 4, !tbaa !5
  %26862 = mul nsw i32 2, %26861
  %26863 = add nsw i32 %26860, %26862
  %26864 = sext i32 %26863 to i64
  %26865 = getelementptr inbounds double, ptr %26859, i64 %26864
  %26866 = load double, ptr %26865, align 8, !tbaa !11
  %26867 = call double @llvm.fmuladd.f64(double 0xBCCB000000000000, double %26866, double %26858)
  %26868 = load ptr, ptr %7, align 8, !tbaa !9
  %26869 = load i32, ptr %12, align 4, !tbaa !5
  %26870 = load i32, ptr %8, align 4, !tbaa !5
  %26871 = mul nsw i32 3, %26870
  %26872 = add nsw i32 %26869, %26871
  %26873 = sext i32 %26872 to i64
  %26874 = getelementptr inbounds double, ptr %26868, i64 %26873
  %26875 = load double, ptr %26874, align 8, !tbaa !11
  %26876 = call double @llvm.fmuladd.f64(double 0xBCD4C00000000000, double %26875, double %26867)
  %26877 = load ptr, ptr %7, align 8, !tbaa !9
  %26878 = load i32, ptr %12, align 4, !tbaa !5
  %26879 = load i32, ptr %8, align 4, !tbaa !5
  %26880 = mul nsw i32 4, %26879
  %26881 = add nsw i32 %26878, %26880
  %26882 = sext i32 %26881 to i64
  %26883 = getelementptr inbounds double, ptr %26877, i64 %26882
  %26884 = load double, ptr %26883, align 8, !tbaa !11
  %26885 = call double @llvm.fmuladd.f64(double 0x3CD4000000000002, double %26884, double %26876)
  %26886 = load ptr, ptr %7, align 8, !tbaa !9
  %26887 = load i32, ptr %12, align 4, !tbaa !5
  %26888 = load i32, ptr %8, align 4, !tbaa !5
  %26889 = mul nsw i32 5, %26888
  %26890 = add nsw i32 %26887, %26889
  %26891 = sext i32 %26890 to i64
  %26892 = getelementptr inbounds double, ptr %26886, i64 %26891
  %26893 = load double, ptr %26892, align 8, !tbaa !11
  %26894 = call double @llvm.fmuladd.f64(double 0x3CD7000000000000, double %26893, double %26885)
  %26895 = load ptr, ptr %7, align 8, !tbaa !9
  %26896 = load i32, ptr %12, align 4, !tbaa !5
  %26897 = load i32, ptr %8, align 4, !tbaa !5
  %26898 = mul nsw i32 6, %26897
  %26899 = add nsw i32 %26896, %26898
  %26900 = sext i32 %26899 to i64
  %26901 = getelementptr inbounds double, ptr %26895, i64 %26900
  %26902 = load double, ptr %26901, align 8, !tbaa !11
  %26903 = call double @llvm.fmuladd.f64(double 0xBCDE800000000001, double %26902, double %26894)
  %26904 = load ptr, ptr %7, align 8, !tbaa !9
  %26905 = load i32, ptr %12, align 4, !tbaa !5
  %26906 = load i32, ptr %8, align 4, !tbaa !5
  %26907 = mul nsw i32 7, %26906
  %26908 = add nsw i32 %26905, %26907
  %26909 = sext i32 %26908 to i64
  %26910 = getelementptr inbounds double, ptr %26904, i64 %26909
  %26911 = load double, ptr %26910, align 8, !tbaa !11
  %26912 = call double @llvm.fmuladd.f64(double 0xBCDA7FFFFFFFFFFE, double %26911, double %26903)
  %26913 = load ptr, ptr %7, align 8, !tbaa !9
  %26914 = load i32, ptr %12, align 4, !tbaa !5
  %26915 = load i32, ptr %8, align 4, !tbaa !5
  %26916 = mul nsw i32 8, %26915
  %26917 = add nsw i32 %26914, %26916
  %26918 = sext i32 %26917 to i64
  %26919 = getelementptr inbounds double, ptr %26913, i64 %26918
  %26920 = load double, ptr %26919, align 8, !tbaa !11
  %26921 = call double @llvm.fmuladd.f64(double 0xBD00000000000000, double %26920, double %26912)
  %26922 = load ptr, ptr %7, align 8, !tbaa !9
  %26923 = load i32, ptr %12, align 4, !tbaa !5
  %26924 = load i32, ptr %8, align 4, !tbaa !5
  %26925 = mul nsw i32 9, %26924
  %26926 = add nsw i32 %26923, %26925
  %26927 = sext i32 %26926 to i64
  %26928 = getelementptr inbounds double, ptr %26922, i64 %26927
  %26929 = load double, ptr %26928, align 8, !tbaa !11
  %26930 = call double @llvm.fmuladd.f64(double 0xBCFD800000000001, double %26929, double %26921)
  %26931 = load ptr, ptr %7, align 8, !tbaa !9
  %26932 = load i32, ptr %12, align 4, !tbaa !5
  %26933 = load i32, ptr %8, align 4, !tbaa !5
  %26934 = mul nsw i32 10, %26933
  %26935 = add nsw i32 %26932, %26934
  %26936 = sext i32 %26935 to i64
  %26937 = getelementptr inbounds double, ptr %26931, i64 %26936
  %26938 = load double, ptr %26937, align 8, !tbaa !11
  %26939 = call double @llvm.fmuladd.f64(double 0x3CF4FFFFFFFFFFFF, double %26938, double %26930)
  %26940 = load ptr, ptr %7, align 8, !tbaa !9
  %26941 = load i32, ptr %12, align 4, !tbaa !5
  %26942 = load i32, ptr %8, align 4, !tbaa !5
  %26943 = mul nsw i32 11, %26942
  %26944 = add nsw i32 %26941, %26943
  %26945 = sext i32 %26944 to i64
  %26946 = getelementptr inbounds double, ptr %26940, i64 %26945
  %26947 = load double, ptr %26946, align 8, !tbaa !11
  %26948 = call double @llvm.fmuladd.f64(double 0xBFF3F64564513A68, double %26947, double %26939)
  %26949 = load ptr, ptr %7, align 8, !tbaa !9
  %26950 = load i32, ptr %12, align 4, !tbaa !5
  %26951 = load i32, ptr %8, align 4, !tbaa !5
  %26952 = mul nsw i32 12, %26951
  %26953 = add nsw i32 %26950, %26952
  %26954 = sext i32 %26953 to i64
  %26955 = getelementptr inbounds double, ptr %26949, i64 %26954
  %26956 = load double, ptr %26955, align 8, !tbaa !11
  %26957 = call double @llvm.fmuladd.f64(double 0xBCE07FFFFFFFFFFF, double %26956, double %26948)
  %26958 = load ptr, ptr %7, align 8, !tbaa !9
  %26959 = load i32, ptr %12, align 4, !tbaa !5
  %26960 = load i32, ptr %8, align 4, !tbaa !5
  %26961 = mul nsw i32 13, %26960
  %26962 = add nsw i32 %26959, %26961
  %26963 = sext i32 %26962 to i64
  %26964 = getelementptr inbounds double, ptr %26958, i64 %26963
  %26965 = load double, ptr %26964, align 8, !tbaa !11
  %26966 = call double @llvm.fmuladd.f64(double 0xBCE4DFFFFFFFFFFF, double %26965, double %26957)
  %26967 = load ptr, ptr %7, align 8, !tbaa !9
  %26968 = load i32, ptr %12, align 4, !tbaa !5
  %26969 = load i32, ptr %8, align 4, !tbaa !5
  %26970 = mul nsw i32 14, %26969
  %26971 = add nsw i32 %26968, %26970
  %26972 = sext i32 %26971 to i64
  %26973 = getelementptr inbounds double, ptr %26967, i64 %26972
  %26974 = load double, ptr %26973, align 8, !tbaa !11
  %26975 = call double @llvm.fmuladd.f64(double 0x3CE8000000000001, double %26974, double %26966)
  %26976 = load ptr, ptr %7, align 8, !tbaa !9
  %26977 = load i32, ptr %12, align 4, !tbaa !5
  %26978 = load i32, ptr %8, align 4, !tbaa !5
  %26979 = mul nsw i32 15, %26978
  %26980 = add nsw i32 %26977, %26979
  %26981 = sext i32 %26980 to i64
  %26982 = getelementptr inbounds double, ptr %26976, i64 %26981
  %26983 = load double, ptr %26982, align 8, !tbaa !11
  %26984 = call double @llvm.fmuladd.f64(double 0x3CE67FFFFFFFFFFF, double %26983, double %26975)
  %26985 = load ptr, ptr %7, align 8, !tbaa !9
  %26986 = load i32, ptr %12, align 4, !tbaa !5
  %26987 = load i32, ptr %8, align 4, !tbaa !5
  %26988 = mul nsw i32 16, %26987
  %26989 = add nsw i32 %26986, %26988
  %26990 = sext i32 %26989 to i64
  %26991 = getelementptr inbounds double, ptr %26985, i64 %26990
  %26992 = load double, ptr %26991, align 8, !tbaa !11
  %26993 = call double @llvm.fmuladd.f64(double 0xBCEAC00000000001, double %26992, double %26984)
  %26994 = load ptr, ptr %7, align 8, !tbaa !9
  %26995 = load i32, ptr %12, align 4, !tbaa !5
  %26996 = load i32, ptr %8, align 4, !tbaa !5
  %26997 = mul nsw i32 17, %26996
  %26998 = add nsw i32 %26995, %26997
  %26999 = sext i32 %26998 to i64
  %27000 = getelementptr inbounds double, ptr %26994, i64 %26999
  %27001 = load double, ptr %27000, align 8, !tbaa !11
  %27002 = call double @llvm.fmuladd.f64(double 0xBCE7C00000000001, double %27001, double %26993)
  %27003 = load ptr, ptr %7, align 8, !tbaa !9
  %27004 = load i32, ptr %12, align 4, !tbaa !5
  %27005 = load i32, ptr %8, align 4, !tbaa !5
  %27006 = mul nsw i32 18, %27005
  %27007 = add nsw i32 %27004, %27006
  %27008 = sext i32 %27007 to i64
  %27009 = getelementptr inbounds double, ptr %27003, i64 %27008
  %27010 = load double, ptr %27009, align 8, !tbaa !11
  %27011 = call double @llvm.fmuladd.f64(double 0xBD0E800000000000, double %27010, double %27002)
  %27012 = load ptr, ptr %7, align 8, !tbaa !9
  %27013 = load i32, ptr %12, align 4, !tbaa !5
  %27014 = load i32, ptr %8, align 4, !tbaa !5
  %27015 = mul nsw i32 19, %27014
  %27016 = add nsw i32 %27013, %27015
  %27017 = sext i32 %27016 to i64
  %27018 = getelementptr inbounds double, ptr %27012, i64 %27017
  %27019 = load double, ptr %27018, align 8, !tbaa !11
  %27020 = call double @llvm.fmuladd.f64(double 0xBD0E3FFFFFFFFFFD, double %27019, double %27011)
  store double %27020, ptr %11, align 8, !tbaa !11
  %27021 = load double, ptr %11, align 8, !tbaa !11
  %27022 = load ptr, ptr %9, align 8, !tbaa !9
  %27023 = load i32, ptr %12, align 4, !tbaa !5
  %27024 = load i32, ptr %10, align 4, !tbaa !5
  %27025 = mul nsw i32 101, %27024
  %27026 = add nsw i32 %27023, %27025
  %27027 = sext i32 %27026 to i64
  %27028 = getelementptr inbounds double, ptr %27022, i64 %27027
  %27029 = load double, ptr %27028, align 8, !tbaa !11
  %27030 = fadd double %27029, %27021
  store double %27030, ptr %27028, align 8, !tbaa !11
  %27031 = load ptr, ptr %7, align 8, !tbaa !9
  %27032 = load i32, ptr %12, align 4, !tbaa !5
  %27033 = load i32, ptr %8, align 4, !tbaa !5
  %27034 = mul nsw i32 0, %27033
  %27035 = add nsw i32 %27032, %27034
  %27036 = sext i32 %27035 to i64
  %27037 = getelementptr inbounds double, ptr %27031, i64 %27036
  %27038 = load double, ptr %27037, align 8, !tbaa !11
  %27039 = load ptr, ptr %7, align 8, !tbaa !9
  %27040 = load i32, ptr %12, align 4, !tbaa !5
  %27041 = load i32, ptr %8, align 4, !tbaa !5
  %27042 = mul nsw i32 1, %27041
  %27043 = add nsw i32 %27040, %27042
  %27044 = sext i32 %27043 to i64
  %27045 = getelementptr inbounds double, ptr %27039, i64 %27044
  %27046 = load double, ptr %27045, align 8, !tbaa !11
  %27047 = fmul double 0xBCD1000000000000, %27046
  %27048 = call double @llvm.fmuladd.f64(double 0x3CEA000000000000, double %27038, double %27047)
  %27049 = load ptr, ptr %7, align 8, !tbaa !9
  %27050 = load i32, ptr %12, align 4, !tbaa !5
  %27051 = load i32, ptr %8, align 4, !tbaa !5
  %27052 = mul nsw i32 2, %27051
  %27053 = add nsw i32 %27050, %27052
  %27054 = sext i32 %27053 to i64
  %27055 = getelementptr inbounds double, ptr %27049, i64 %27054
  %27056 = load double, ptr %27055, align 8, !tbaa !11
  %27057 = call double @llvm.fmuladd.f64(double 0xBFE3AA36D354D04B, double %27056, double %27048)
  %27058 = load ptr, ptr %7, align 8, !tbaa !9
  %27059 = load i32, ptr %12, align 4, !tbaa !5
  %27060 = load i32, ptr %8, align 4, !tbaa !5
  %27061 = mul nsw i32 3, %27060
  %27062 = add nsw i32 %27059, %27061
  %27063 = sext i32 %27062 to i64
  %27064 = getelementptr inbounds double, ptr %27058, i64 %27063
  %27065 = load double, ptr %27064, align 8, !tbaa !11
  %27066 = call double @llvm.fmuladd.f64(double 0xBCCEC00000000000, double %27065, double %27057)
  %27067 = load ptr, ptr %7, align 8, !tbaa !9
  %27068 = load i32, ptr %12, align 4, !tbaa !5
  %27069 = load i32, ptr %8, align 4, !tbaa !5
  %27070 = mul nsw i32 4, %27069
  %27071 = add nsw i32 %27068, %27070
  %27072 = sext i32 %27071 to i64
  %27073 = getelementptr inbounds double, ptr %27067, i64 %27072
  %27074 = load double, ptr %27073, align 8, !tbaa !11
  %27075 = call double @llvm.fmuladd.f64(double 0xBCFD700000000000, double %27074, double %27066)
  %27076 = load ptr, ptr %7, align 8, !tbaa !9
  %27077 = load i32, ptr %12, align 4, !tbaa !5
  %27078 = load i32, ptr %8, align 4, !tbaa !5
  %27079 = mul nsw i32 5, %27078
  %27080 = add nsw i32 %27077, %27079
  %27081 = sext i32 %27080 to i64
  %27082 = getelementptr inbounds double, ptr %27076, i64 %27081
  %27083 = load double, ptr %27082, align 8, !tbaa !11
  %27084 = call double @llvm.fmuladd.f64(double 0xBCDAC00000000001, double %27083, double %27075)
  %27085 = load ptr, ptr %7, align 8, !tbaa !9
  %27086 = load i32, ptr %12, align 4, !tbaa !5
  %27087 = load i32, ptr %8, align 4, !tbaa !5
  %27088 = mul nsw i32 6, %27087
  %27089 = add nsw i32 %27086, %27088
  %27090 = sext i32 %27089 to i64
  %27091 = getelementptr inbounds double, ptr %27085, i64 %27090
  %27092 = load double, ptr %27091, align 8, !tbaa !11
  %27093 = call double @llvm.fmuladd.f64(double 0x3CD47FFFFFFFFFFE, double %27092, double %27084)
  %27094 = load ptr, ptr %7, align 8, !tbaa !9
  %27095 = load i32, ptr %12, align 4, !tbaa !5
  %27096 = load i32, ptr %8, align 4, !tbaa !5
  %27097 = mul nsw i32 7, %27096
  %27098 = add nsw i32 %27095, %27097
  %27099 = sext i32 %27098 to i64
  %27100 = getelementptr inbounds double, ptr %27094, i64 %27099
  %27101 = load double, ptr %27100, align 8, !tbaa !11
  %27102 = call double @llvm.fmuladd.f64(double 0xBCFE900000000000, double %27101, double %27093)
  %27103 = load ptr, ptr %7, align 8, !tbaa !9
  %27104 = load i32, ptr %12, align 4, !tbaa !5
  %27105 = load i32, ptr %8, align 4, !tbaa !5
  %27106 = mul nsw i32 8, %27105
  %27107 = add nsw i32 %27104, %27106
  %27108 = sext i32 %27107 to i64
  %27109 = getelementptr inbounds double, ptr %27103, i64 %27108
  %27110 = load double, ptr %27109, align 8, !tbaa !11
  %27111 = call double @llvm.fmuladd.f64(double 0xBCD7800000000000, double %27110, double %27102)
  %27112 = load ptr, ptr %7, align 8, !tbaa !9
  %27113 = load i32, ptr %12, align 4, !tbaa !5
  %27114 = load i32, ptr %8, align 4, !tbaa !5
  %27115 = mul nsw i32 9, %27114
  %27116 = add nsw i32 %27113, %27115
  %27117 = sext i32 %27116 to i64
  %27118 = getelementptr inbounds double, ptr %27112, i64 %27117
  %27119 = load double, ptr %27118, align 8, !tbaa !11
  %27120 = call double @llvm.fmuladd.f64(double 0x3CD3800000000002, double %27119, double %27111)
  %27121 = load ptr, ptr %7, align 8, !tbaa !9
  %27122 = load i32, ptr %12, align 4, !tbaa !5
  %27123 = load i32, ptr %8, align 4, !tbaa !5
  %27124 = mul nsw i32 10, %27123
  %27125 = add nsw i32 %27122, %27124
  %27126 = sext i32 %27125 to i64
  %27127 = getelementptr inbounds double, ptr %27121, i64 %27126
  %27128 = load double, ptr %27127, align 8, !tbaa !11
  %27129 = call double @llvm.fmuladd.f64(double 0x3CF6000000000000, double %27128, double %27120)
  %27130 = load ptr, ptr %7, align 8, !tbaa !9
  %27131 = load i32, ptr %12, align 4, !tbaa !5
  %27132 = load i32, ptr %8, align 4, !tbaa !5
  %27133 = mul nsw i32 11, %27132
  %27134 = add nsw i32 %27131, %27133
  %27135 = sext i32 %27134 to i64
  %27136 = getelementptr inbounds double, ptr %27130, i64 %27135
  %27137 = load double, ptr %27136, align 8, !tbaa !11
  %27138 = call double @llvm.fmuladd.f64(double 0xBCE2000000000001, double %27137, double %27129)
  %27139 = load ptr, ptr %7, align 8, !tbaa !9
  %27140 = load i32, ptr %12, align 4, !tbaa !5
  %27141 = load i32, ptr %8, align 4, !tbaa !5
  %27142 = mul nsw i32 12, %27141
  %27143 = add nsw i32 %27140, %27142
  %27144 = sext i32 %27143 to i64
  %27145 = getelementptr inbounds double, ptr %27139, i64 %27144
  %27146 = load double, ptr %27145, align 8, !tbaa !11
  %27147 = call double @llvm.fmuladd.f64(double 0xBFF3F64564513A5F, double %27146, double %27138)
  %27148 = load ptr, ptr %7, align 8, !tbaa !9
  %27149 = load i32, ptr %12, align 4, !tbaa !5
  %27150 = load i32, ptr %8, align 4, !tbaa !5
  %27151 = mul nsw i32 13, %27150
  %27152 = add nsw i32 %27149, %27151
  %27153 = sext i32 %27152 to i64
  %27154 = getelementptr inbounds double, ptr %27148, i64 %27153
  %27155 = load double, ptr %27154, align 8, !tbaa !11
  %27156 = call double @llvm.fmuladd.f64(double 0xBCE1300000000000, double %27155, double %27147)
  %27157 = load ptr, ptr %7, align 8, !tbaa !9
  %27158 = load i32, ptr %12, align 4, !tbaa !5
  %27159 = load i32, ptr %8, align 4, !tbaa !5
  %27160 = mul nsw i32 14, %27159
  %27161 = add nsw i32 %27158, %27160
  %27162 = sext i32 %27161 to i64
  %27163 = getelementptr inbounds double, ptr %27157, i64 %27162
  %27164 = load double, ptr %27163, align 8, !tbaa !11
  %27165 = call double @llvm.fmuladd.f64(double 0xBD0E380000000000, double %27164, double %27156)
  %27166 = load ptr, ptr %7, align 8, !tbaa !9
  %27167 = load i32, ptr %12, align 4, !tbaa !5
  %27168 = load i32, ptr %8, align 4, !tbaa !5
  %27169 = mul nsw i32 15, %27168
  %27170 = add nsw i32 %27167, %27169
  %27171 = sext i32 %27170 to i64
  %27172 = getelementptr inbounds double, ptr %27166, i64 %27171
  %27173 = load double, ptr %27172, align 8, !tbaa !11
  %27174 = call double @llvm.fmuladd.f64(double 0xBCE75FFFFFFFFFFF, double %27173, double %27165)
  %27175 = load ptr, ptr %7, align 8, !tbaa !9
  %27176 = load i32, ptr %12, align 4, !tbaa !5
  %27177 = load i32, ptr %8, align 4, !tbaa !5
  %27178 = mul nsw i32 16, %27177
  %27179 = add nsw i32 %27176, %27178
  %27180 = sext i32 %27179 to i64
  %27181 = getelementptr inbounds double, ptr %27175, i64 %27180
  %27182 = load double, ptr %27181, align 8, !tbaa !11
  %27183 = call double @llvm.fmuladd.f64(double 0x3CE2400000000001, double %27182, double %27174)
  %27184 = load ptr, ptr %7, align 8, !tbaa !9
  %27185 = load i32, ptr %12, align 4, !tbaa !5
  %27186 = load i32, ptr %8, align 4, !tbaa !5
  %27187 = mul nsw i32 17, %27186
  %27188 = add nsw i32 %27185, %27187
  %27189 = sext i32 %27188 to i64
  %27190 = getelementptr inbounds double, ptr %27184, i64 %27189
  %27191 = load double, ptr %27190, align 8, !tbaa !11
  %27192 = call double @llvm.fmuladd.f64(double 0xBD0FC7FFFFFFFFFE, double %27191, double %27183)
  %27193 = load ptr, ptr %7, align 8, !tbaa !9
  %27194 = load i32, ptr %12, align 4, !tbaa !5
  %27195 = load i32, ptr %8, align 4, !tbaa !5
  %27196 = mul nsw i32 18, %27195
  %27197 = add nsw i32 %27194, %27196
  %27198 = sext i32 %27197 to i64
  %27199 = getelementptr inbounds double, ptr %27193, i64 %27198
  %27200 = load double, ptr %27199, align 8, !tbaa !11
  %27201 = call double @llvm.fmuladd.f64(double 0xBCE7C00000000001, double %27200, double %27192)
  %27202 = load ptr, ptr %7, align 8, !tbaa !9
  %27203 = load i32, ptr %12, align 4, !tbaa !5
  %27204 = load i32, ptr %8, align 4, !tbaa !5
  %27205 = mul nsw i32 19, %27204
  %27206 = add nsw i32 %27203, %27205
  %27207 = sext i32 %27206 to i64
  %27208 = getelementptr inbounds double, ptr %27202, i64 %27207
  %27209 = load double, ptr %27208, align 8, !tbaa !11
  %27210 = call double @llvm.fmuladd.f64(double 0x3CE5BFFFFFFFFFFF, double %27209, double %27201)
  store double %27210, ptr %11, align 8, !tbaa !11
  %27211 = load double, ptr %11, align 8, !tbaa !11
  %27212 = load ptr, ptr %9, align 8, !tbaa !9
  %27213 = load i32, ptr %12, align 4, !tbaa !5
  %27214 = load i32, ptr %10, align 4, !tbaa !5
  %27215 = mul nsw i32 102, %27214
  %27216 = add nsw i32 %27213, %27215
  %27217 = sext i32 %27216 to i64
  %27218 = getelementptr inbounds double, ptr %27212, i64 %27217
  %27219 = load double, ptr %27218, align 8, !tbaa !11
  %27220 = fadd double %27219, %27211
  store double %27220, ptr %27218, align 8, !tbaa !11
  %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 0, %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 = load ptr, ptr %7, align 8, !tbaa !9
  %27230 = load i32, ptr %12, align 4, !tbaa !5
  %27231 = load i32, ptr %8, align 4, !tbaa !5
  %27232 = mul nsw i32 1, %27231
  %27233 = add nsw i32 %27230, %27232
  %27234 = sext i32 %27233 to i64
  %27235 = getelementptr inbounds double, ptr %27229, i64 %27234
  %27236 = load double, ptr %27235, align 8, !tbaa !11
  %27237 = fmul double 0xBCD1400000000000, %27236
  %27238 = call double @llvm.fmuladd.f64(double 0x3CE9C00000000000, double %27228, double %27237)
  %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 2, %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 0xBCD0E00000000000, 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 3, %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 0xBFE3AA36D354D04F, 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 4, %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 0xBCD7BFFFFFFFFFFE, 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 5, %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 0xBCFD300000000000, 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 6, %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 0xBCFD300000000000, 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 7, %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 0x3CCD000000000000, 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 8, %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 0x3CD67FFFFFFFFFFF, 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 9, %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 0xBCD9000000000002, 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 10, %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 0x3CF5E00000000000, 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 11, %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 0xBCE15FFFFFFFFFFF, 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 12, %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 0xBCE26FFFFFFFFFFF, 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 13, %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 0xBFF3F64564513A5F, 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 14, %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 0xBCE8E00000000000, 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 15, %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 0xBD0E97FFFFFFFFFE, 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 16, %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 0xBD0DD80000000002, 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 17, %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 0x3CDE800000000001, double %27381, double %27373)
  %27383 = load ptr, ptr %7, align 8, !tbaa !9
  %27384 = load i32, ptr %12, align 4, !tbaa !5
  %27385 = load i32, ptr %8, align 4, !tbaa !5
  %27386 = mul nsw i32 18, %27385
  %27387 = add nsw i32 %27384, %27386
  %27388 = sext i32 %27387 to i64
  %27389 = getelementptr inbounds double, ptr %27383, i64 %27388
  %27390 = load double, ptr %27389, align 8, !tbaa !11
  %27391 = call double @llvm.fmuladd.f64(double 0x3CE5400000000001, double %27390, double %27382)
  %27392 = load ptr, ptr %7, align 8, !tbaa !9
  %27393 = load i32, ptr %12, align 4, !tbaa !5
  %27394 = load i32, ptr %8, align 4, !tbaa !5
  %27395 = mul nsw i32 19, %27394
  %27396 = add nsw i32 %27393, %27395
  %27397 = sext i32 %27396 to i64
  %27398 = getelementptr inbounds double, ptr %27392, i64 %27397
  %27399 = load double, ptr %27398, align 8, !tbaa !11
  %27400 = call double @llvm.fmuladd.f64(double 0xBCE9800000000000, double %27399, double %27391)
  store double %27400, ptr %11, align 8, !tbaa !11
  %27401 = load double, ptr %11, align 8, !tbaa !11
  %27402 = load ptr, ptr %9, align 8, !tbaa !9
  %27403 = load i32, ptr %12, align 4, !tbaa !5
  %27404 = load i32, ptr %10, align 4, !tbaa !5
  %27405 = mul nsw i32 103, %27404
  %27406 = add nsw i32 %27403, %27405
  %27407 = sext i32 %27406 to i64
  %27408 = getelementptr inbounds double, ptr %27402, i64 %27407
  %27409 = load double, ptr %27408, align 8, !tbaa !11
  %27410 = fadd double %27409, %27401
  store double %27410, ptr %27408, align 8, !tbaa !11
  %27411 = load ptr, ptr %7, align 8, !tbaa !9
  %27412 = load i32, ptr %12, align 4, !tbaa !5
  %27413 = load i32, ptr %8, align 4, !tbaa !5
  %27414 = mul nsw i32 0, %27413
  %27415 = add nsw i32 %27412, %27414
  %27416 = sext i32 %27415 to i64
  %27417 = getelementptr inbounds double, ptr %27411, i64 %27416
  %27418 = load double, ptr %27417, align 8, !tbaa !11
  %27419 = load ptr, ptr %7, align 8, !tbaa !9
  %27420 = load i32, ptr %12, align 4, !tbaa !5
  %27421 = load i32, ptr %8, align 4, !tbaa !5
  %27422 = mul nsw i32 1, %27421
  %27423 = add nsw i32 %27420, %27422
  %27424 = sext i32 %27423 to i64
  %27425 = getelementptr inbounds double, ptr %27419, i64 %27424
  %27426 = load double, ptr %27425, align 8, !tbaa !11
  %27427 = fmul double 0x3CB8000000000001, %27426
  %27428 = call double @llvm.fmuladd.f64(double 0xBCE9C00000000000, double %27418, double %27427)
  %27429 = load ptr, ptr %7, align 8, !tbaa !9
  %27430 = load i32, ptr %12, align 4, !tbaa !5
  %27431 = load i32, ptr %8, align 4, !tbaa !5
  %27432 = mul nsw i32 2, %27431
  %27433 = add nsw i32 %27430, %27432
  %27434 = sext i32 %27433 to i64
  %27435 = getelementptr inbounds double, ptr %27429, i64 %27434
  %27436 = load double, ptr %27435, align 8, !tbaa !11
  %27437 = call double @llvm.fmuladd.f64(double 0xBCE6B00000000000, double %27436, double %27428)
  %27438 = load ptr, ptr %7, align 8, !tbaa !9
  %27439 = load i32, ptr %12, align 4, !tbaa !5
  %27440 = load i32, ptr %8, align 4, !tbaa !5
  %27441 = mul nsw i32 3, %27440
  %27442 = add nsw i32 %27439, %27441
  %27443 = sext i32 %27442 to i64
  %27444 = getelementptr inbounds double, ptr %27438, i64 %27443
  %27445 = load double, ptr %27444, align 8, !tbaa !11
  %27446 = call double @llvm.fmuladd.f64(double 0xBCB9C00000000001, double %27445, double %27437)
  %27447 = load ptr, ptr %7, align 8, !tbaa !9
  %27448 = load i32, ptr %12, align 4, !tbaa !5
  %27449 = load i32, ptr %8, align 4, !tbaa !5
  %27450 = mul nsw i32 4, %27449
  %27451 = add nsw i32 %27448, %27450
  %27452 = sext i32 %27451 to i64
  %27453 = getelementptr inbounds double, ptr %27447, i64 %27452
  %27454 = load double, ptr %27453, align 8, !tbaa !11
  %27455 = call double @llvm.fmuladd.f64(double 0xBFE3AA36D354D104, double %27454, double %27446)
  %27456 = load ptr, ptr %7, align 8, !tbaa !9
  %27457 = load i32, ptr %12, align 4, !tbaa !5
  %27458 = load i32, ptr %8, align 4, !tbaa !5
  %27459 = mul nsw i32 5, %27458
  %27460 = add nsw i32 %27457, %27459
  %27461 = sext i32 %27460 to i64
  %27462 = getelementptr inbounds double, ptr %27456, i64 %27461
  %27463 = load double, ptr %27462, align 8, !tbaa !11
  %27464 = call double @llvm.fmuladd.f64(double 0x3CDA7FFFFFFFFFFE, double %27463, double %27455)
  %27465 = load ptr, ptr %7, align 8, !tbaa !9
  %27466 = load i32, ptr %12, align 4, !tbaa !5
  %27467 = load i32, ptr %8, align 4, !tbaa !5
  %27468 = mul nsw i32 6, %27467
  %27469 = add nsw i32 %27466, %27468
  %27470 = sext i32 %27469 to i64
  %27471 = getelementptr inbounds double, ptr %27465, i64 %27470
  %27472 = load double, ptr %27471, align 8, !tbaa !11
  %27473 = call double @llvm.fmuladd.f64(double 0x3CC4800000000000, double %27472, double %27464)
  %27474 = load ptr, ptr %7, align 8, !tbaa !9
  %27475 = load i32, ptr %12, align 4, !tbaa !5
  %27476 = load i32, ptr %8, align 4, !tbaa !5
  %27477 = mul nsw i32 7, %27476
  %27478 = add nsw i32 %27475, %27477
  %27479 = sext i32 %27478 to i64
  %27480 = getelementptr inbounds double, ptr %27474, i64 %27479
  %27481 = load double, ptr %27480, align 8, !tbaa !11
  %27482 = call double @llvm.fmuladd.f64(double 0xBCDE800000000001, double %27481, double %27473)
  %27483 = load ptr, ptr %7, align 8, !tbaa !9
  %27484 = load i32, ptr %12, align 4, !tbaa !5
  %27485 = load i32, ptr %8, align 4, !tbaa !5
  %27486 = mul nsw i32 8, %27485
  %27487 = add nsw i32 %27484, %27486
  %27488 = sext i32 %27487 to i64
  %27489 = getelementptr inbounds double, ptr %27483, i64 %27488
  %27490 = load double, ptr %27489, align 8, !tbaa !11
  %27491 = call double @llvm.fmuladd.f64(double 0x3CC1000000000000, double %27490, double %27482)
  %27492 = load ptr, ptr %7, align 8, !tbaa !9
  %27493 = load i32, ptr %12, align 4, !tbaa !5
  %27494 = load i32, ptr %8, align 4, !tbaa !5
  %27495 = mul nsw i32 9, %27494
  %27496 = add nsw i32 %27493, %27495
  %27497 = sext i32 %27496 to i64
  %27498 = getelementptr inbounds double, ptr %27492, i64 %27497
  %27499 = load double, ptr %27498, align 8, !tbaa !11
  %27500 = call double @llvm.fmuladd.f64(double 0x3CEC800000000000, double %27499, double %27491)
  %27501 = load ptr, ptr %7, align 8, !tbaa !9
  %27502 = load i32, ptr %12, align 4, !tbaa !5
  %27503 = load i32, ptr %8, align 4, !tbaa !5
  %27504 = mul nsw i32 10, %27503
  %27505 = add nsw i32 %27502, %27504
  %27506 = sext i32 %27505 to i64
  %27507 = getelementptr inbounds double, ptr %27501, i64 %27506
  %27508 = load double, ptr %27507, align 8, !tbaa !11
  %27509 = call double @llvm.fmuladd.f64(double 0xBCF9A00000000000, double %27508, double %27500)
  %27510 = load ptr, ptr %7, align 8, !tbaa !9
  %27511 = load i32, ptr %12, align 4, !tbaa !5
  %27512 = load i32, ptr %8, align 4, !tbaa !5
  %27513 = mul nsw i32 11, %27512
  %27514 = add nsw i32 %27511, %27513
  %27515 = sext i32 %27514 to i64
  %27516 = getelementptr inbounds double, ptr %27510, i64 %27515
  %27517 = load double, ptr %27516, align 8, !tbaa !11
  %27518 = call double @llvm.fmuladd.f64(double 0x3CCA000000000000, double %27517, double %27509)
  %27519 = load ptr, ptr %7, align 8, !tbaa !9
  %27520 = load i32, ptr %12, align 4, !tbaa !5
  %27521 = load i32, ptr %8, align 4, !tbaa !5
  %27522 = mul nsw i32 12, %27521
  %27523 = add nsw i32 %27520, %27522
  %27524 = sext i32 %27523 to i64
  %27525 = getelementptr inbounds double, ptr %27519, i64 %27524
  %27526 = load double, ptr %27525, align 8, !tbaa !11
  %27527 = call double @llvm.fmuladd.f64(double 0xBCF6580000000000, double %27526, double %27518)
  %27528 = load ptr, ptr %7, align 8, !tbaa !9
  %27529 = load i32, ptr %12, align 4, !tbaa !5
  %27530 = load i32, ptr %8, align 4, !tbaa !5
  %27531 = mul nsw i32 13, %27530
  %27532 = add nsw i32 %27529, %27531
  %27533 = sext i32 %27532 to i64
  %27534 = getelementptr inbounds double, ptr %27528, i64 %27533
  %27535 = load double, ptr %27534, align 8, !tbaa !11
  %27536 = call double @llvm.fmuladd.f64(double 0xBCCC600000000000, double %27535, double %27527)
  %27537 = load ptr, ptr %7, align 8, !tbaa !9
  %27538 = load i32, ptr %12, align 4, !tbaa !5
  %27539 = load i32, ptr %8, align 4, !tbaa !5
  %27540 = mul nsw i32 14, %27539
  %27541 = add nsw i32 %27538, %27540
  %27542 = sext i32 %27541 to i64
  %27543 = getelementptr inbounds double, ptr %27537, i64 %27542
  %27544 = load double, ptr %27543, align 8, !tbaa !11
  %27545 = call double @llvm.fmuladd.f64(double 0xBFF3F64564513B21, double %27544, double %27536)
  %27546 = load ptr, ptr %7, align 8, !tbaa !9
  %27547 = load i32, ptr %12, align 4, !tbaa !5
  %27548 = load i32, ptr %8, align 4, !tbaa !5
  %27549 = mul nsw i32 15, %27548
  %27550 = add nsw i32 %27547, %27549
  %27551 = sext i32 %27550 to i64
  %27552 = getelementptr inbounds double, ptr %27546, i64 %27551
  %27553 = load double, ptr %27552, align 8, !tbaa !11
  %27554 = call double @llvm.fmuladd.f64(double 0x3CEAC00000000001, double %27553, double %27545)
  %27555 = load ptr, ptr %7, align 8, !tbaa !9
  %27556 = load i32, ptr %12, align 4, !tbaa !5
  %27557 = load i32, ptr %8, align 4, !tbaa !5
  %27558 = mul nsw i32 16, %27557
  %27559 = add nsw i32 %27556, %27558
  %27560 = sext i32 %27559 to i64
  %27561 = getelementptr inbounds double, ptr %27555, i64 %27560
  %27562 = load double, ptr %27561, align 8, !tbaa !11
  %27563 = call double @llvm.fmuladd.f64(double 0x3CD7BFFFFFFFFFFE, double %27562, double %27554)
  %27564 = load ptr, ptr %7, align 8, !tbaa !9
  %27565 = load i32, ptr %12, align 4, !tbaa !5
  %27566 = load i32, ptr %8, align 4, !tbaa !5
  %27567 = mul nsw i32 17, %27566
  %27568 = add nsw i32 %27565, %27567
  %27569 = sext i32 %27568 to i64
  %27570 = getelementptr inbounds double, ptr %27564, i64 %27569
  %27571 = load double, ptr %27570, align 8, !tbaa !11
  %27572 = call double @llvm.fmuladd.f64(double 0xBCEE400000000001, double %27571, double %27563)
  %27573 = load ptr, ptr %7, align 8, !tbaa !9
  %27574 = load i32, ptr %12, align 4, !tbaa !5
  %27575 = load i32, ptr %8, align 4, !tbaa !5
  %27576 = mul nsw i32 18, %27575
  %27577 = add nsw i32 %27574, %27576
  %27578 = sext i32 %27577 to i64
  %27579 = getelementptr inbounds double, ptr %27573, i64 %27578
  %27580 = load double, ptr %27579, align 8, !tbaa !11
  %27581 = call double @llvm.fmuladd.f64(double 0x3CD67FFFFFFFFFFF, double %27580, double %27572)
  %27582 = load ptr, ptr %7, align 8, !tbaa !9
  %27583 = load i32, ptr %12, align 4, !tbaa !5
  %27584 = load i32, ptr %8, align 4, !tbaa !5
  %27585 = mul nsw i32 19, %27584
  %27586 = add nsw i32 %27583, %27585
  %27587 = sext i32 %27586 to i64
  %27588 = getelementptr inbounds double, ptr %27582, i64 %27587
  %27589 = load double, ptr %27588, align 8, !tbaa !11
  %27590 = call double @llvm.fmuladd.f64(double 0x3CFC3FFFFFFFFFFF, double %27589, double %27581)
  store double %27590, ptr %11, align 8, !tbaa !11
  %27591 = load double, ptr %11, align 8, !tbaa !11
  %27592 = load ptr, ptr %9, align 8, !tbaa !9
  %27593 = load i32, ptr %12, align 4, !tbaa !5
  %27594 = load i32, ptr %10, align 4, !tbaa !5
  %27595 = mul nsw i32 104, %27594
  %27596 = add nsw i32 %27593, %27595
  %27597 = sext i32 %27596 to i64
  %27598 = getelementptr inbounds double, ptr %27592, i64 %27597
  %27599 = load double, ptr %27598, align 8, !tbaa !11
  %27600 = fadd double %27599, %27591
  store double %27600, ptr %27598, align 8, !tbaa !11
  %27601 = load ptr, ptr %7, align 8, !tbaa !9
  %27602 = load i32, ptr %12, align 4, !tbaa !5
  %27603 = load i32, ptr %8, align 4, !tbaa !5
  %27604 = mul nsw i32 0, %27603
  %27605 = add nsw i32 %27602, %27604
  %27606 = sext i32 %27605 to i64
  %27607 = getelementptr inbounds double, ptr %27601, i64 %27606
  %27608 = load double, ptr %27607, align 8, !tbaa !11
  %27609 = load ptr, ptr %7, align 8, !tbaa !9
  %27610 = load i32, ptr %12, align 4, !tbaa !5
  %27611 = load i32, ptr %8, align 4, !tbaa !5
  %27612 = mul nsw i32 1, %27611
  %27613 = add nsw i32 %27610, %27612
  %27614 = sext i32 %27613 to i64
  %27615 = getelementptr inbounds double, ptr %27609, i64 %27614
  %27616 = load double, ptr %27615, align 8, !tbaa !11
  %27617 = fmul double 0x3CC0000000000000, %27616
  %27618 = call double @llvm.fmuladd.f64(double 0xBCEBBFFFFFFFFFFF, double %27608, double %27617)
  %27619 = load ptr, ptr %7, align 8, !tbaa !9
  %27620 = load i32, ptr %12, align 4, !tbaa !5
  %27621 = load i32, ptr %8, align 4, !tbaa !5
  %27622 = mul nsw i32 2, %27621
  %27623 = add nsw i32 %27620, %27622
  %27624 = sext i32 %27623 to i64
  %27625 = getelementptr inbounds double, ptr %27619, i64 %27624
  %27626 = load double, ptr %27625, align 8, !tbaa !11
  %27627 = call double @llvm.fmuladd.f64(double 0xBCB8800000000000, double %27626, double %27618)
  %27628 = load ptr, ptr %7, align 8, !tbaa !9
  %27629 = load i32, ptr %12, align 4, !tbaa !5
  %27630 = load i32, ptr %8, align 4, !tbaa !5
  %27631 = mul nsw i32 3, %27630
  %27632 = add nsw i32 %27629, %27631
  %27633 = sext i32 %27632 to i64
  %27634 = getelementptr inbounds double, ptr %27628, i64 %27633
  %27635 = load double, ptr %27634, align 8, !tbaa !11
  %27636 = call double @llvm.fmuladd.f64(double 0xBCE557FFFFFFFFFF, double %27635, double %27627)
  %27637 = load ptr, ptr %7, align 8, !tbaa !9
  %27638 = load i32, ptr %12, align 4, !tbaa !5
  %27639 = load i32, ptr %8, align 4, !tbaa !5
  %27640 = mul nsw i32 4, %27639
  %27641 = add nsw i32 %27638, %27640
  %27642 = sext i32 %27641 to i64
  %27643 = getelementptr inbounds double, ptr %27637, i64 %27642
  %27644 = load double, ptr %27643, align 8, !tbaa !11
  %27645 = call double @llvm.fmuladd.f64(double 0x3CD6C00000000002, double %27644, double %27636)
  %27646 = load ptr, ptr %7, align 8, !tbaa !9
  %27647 = load i32, ptr %12, align 4, !tbaa !5
  %27648 = load i32, ptr %8, align 4, !tbaa !5
  %27649 = mul nsw i32 5, %27648
  %27650 = add nsw i32 %27647, %27649
  %27651 = sext i32 %27650 to i64
  %27652 = getelementptr inbounds double, ptr %27646, i64 %27651
  %27653 = load double, ptr %27652, align 8, !tbaa !11
  %27654 = call double @llvm.fmuladd.f64(double 0xBFE3AA36D354D103, double %27653, double %27645)
  %27655 = load ptr, ptr %7, align 8, !tbaa !9
  %27656 = load i32, ptr %12, align 4, !tbaa !5
  %27657 = load i32, ptr %8, align 4, !tbaa !5
  %27658 = mul nsw i32 6, %27657
  %27659 = add nsw i32 %27656, %27658
  %27660 = sext i32 %27659 to i64
  %27661 = getelementptr inbounds double, ptr %27655, i64 %27660
  %27662 = load double, ptr %27661, align 8, !tbaa !11
  %27663 = call double @llvm.fmuladd.f64(double 0xBCE0200000000000, double %27662, double %27654)
  %27664 = load ptr, ptr %7, align 8, !tbaa !9
  %27665 = load i32, ptr %12, align 4, !tbaa !5
  %27666 = load i32, ptr %8, align 4, !tbaa !5
  %27667 = mul nsw i32 7, %27666
  %27668 = add nsw i32 %27665, %27667
  %27669 = sext i32 %27668 to i64
  %27670 = getelementptr inbounds double, ptr %27664, i64 %27669
  %27671 = load double, ptr %27670, align 8, !tbaa !11
  %27672 = call double @llvm.fmuladd.f64(double 0x3CCC800000000000, double %27671, double %27663)
  %27673 = load ptr, ptr %7, align 8, !tbaa !9
  %27674 = load i32, ptr %12, align 4, !tbaa !5
  %27675 = load i32, ptr %8, align 4, !tbaa !5
  %27676 = mul nsw i32 8, %27675
  %27677 = add nsw i32 %27674, %27676
  %27678 = sext i32 %27677 to i64
  %27679 = getelementptr inbounds double, ptr %27673, i64 %27678
  %27680 = load double, ptr %27679, align 8, !tbaa !11
  %27681 = call double @llvm.fmuladd.f64(double 0x3CEC800000000000, double %27680, double %27672)
  %27682 = load ptr, ptr %7, align 8, !tbaa !9
  %27683 = load i32, ptr %12, align 4, !tbaa !5
  %27684 = load i32, ptr %8, align 4, !tbaa !5
  %27685 = mul nsw i32 9, %27684
  %27686 = add nsw i32 %27683, %27685
  %27687 = sext i32 %27686 to i64
  %27688 = getelementptr inbounds double, ptr %27682, i64 %27687
  %27689 = load double, ptr %27688, align 8, !tbaa !11
  %27690 = call double @llvm.fmuladd.f64(double 0x3CC7000000000000, double %27689, double %27681)
  %27691 = load ptr, ptr %7, align 8, !tbaa !9
  %27692 = load i32, ptr %12, align 4, !tbaa !5
  %27693 = load i32, ptr %8, align 4, !tbaa !5
  %27694 = mul nsw i32 10, %27693
  %27695 = add nsw i32 %27692, %27694
  %27696 = sext i32 %27695 to i64
  %27697 = getelementptr inbounds double, ptr %27691, i64 %27696
  %27698 = load double, ptr %27697, align 8, !tbaa !11
  %27699 = call double @llvm.fmuladd.f64(double 0xBCFB600000000000, double %27698, double %27690)
  %27700 = load ptr, ptr %7, align 8, !tbaa !9
  %27701 = load i32, ptr %12, align 4, !tbaa !5
  %27702 = load i32, ptr %8, align 4, !tbaa !5
  %27703 = mul nsw i32 11, %27702
  %27704 = add nsw i32 %27701, %27703
  %27705 = sext i32 %27704 to i64
  %27706 = getelementptr inbounds double, ptr %27700, i64 %27705
  %27707 = load double, ptr %27706, align 8, !tbaa !11
  %27708 = call double @llvm.fmuladd.f64(double 0x3CD0800000000000, double %27707, double %27699)
  %27709 = load ptr, ptr %7, align 8, !tbaa !9
  %27710 = load i32, ptr %12, align 4, !tbaa !5
  %27711 = load i32, ptr %8, align 4, !tbaa !5
  %27712 = mul nsw i32 12, %27711
  %27713 = add nsw i32 %27710, %27712
  %27714 = sext i32 %27713 to i64
  %27715 = getelementptr inbounds double, ptr %27709, i64 %27714
  %27716 = load double, ptr %27715, align 8, !tbaa !11
  %27717 = call double @llvm.fmuladd.f64(double 0xBCCC400000000000, double %27716, double %27708)
  %27718 = load ptr, ptr %7, align 8, !tbaa !9
  %27719 = load i32, ptr %12, align 4, !tbaa !5
  %27720 = load i32, ptr %8, align 4, !tbaa !5
  %27721 = mul nsw i32 13, %27720
  %27722 = add nsw i32 %27719, %27721
  %27723 = sext i32 %27722 to i64
  %27724 = getelementptr inbounds double, ptr %27718, i64 %27723
  %27725 = load double, ptr %27724, align 8, !tbaa !11
  %27726 = call double @llvm.fmuladd.f64(double 0xBCF62C0000000001, double %27725, double %27717)
  %27727 = load ptr, ptr %7, align 8, !tbaa !9
  %27728 = load i32, ptr %12, align 4, !tbaa !5
  %27729 = load i32, ptr %8, align 4, !tbaa !5
  %27730 = mul nsw i32 14, %27729
  %27731 = add nsw i32 %27728, %27730
  %27732 = sext i32 %27731 to i64
  %27733 = getelementptr inbounds double, ptr %27727, i64 %27732
  %27734 = load double, ptr %27733, align 8, !tbaa !11
  %27735 = call double @llvm.fmuladd.f64(double 0x3CE8E00000000000, double %27734, double %27726)
  %27736 = load ptr, ptr %7, align 8, !tbaa !9
  %27737 = load i32, ptr %12, align 4, !tbaa !5
  %27738 = load i32, ptr %8, align 4, !tbaa !5
  %27739 = mul nsw i32 15, %27738
  %27740 = add nsw i32 %27737, %27739
  %27741 = sext i32 %27740 to i64
  %27742 = getelementptr inbounds double, ptr %27736, i64 %27741
  %27743 = load double, ptr %27742, align 8, !tbaa !11
  %27744 = call double @llvm.fmuladd.f64(double 0xBFF3F64564513B1C, double %27743, double %27735)
  %27745 = load ptr, ptr %7, align 8, !tbaa !9
  %27746 = load i32, ptr %12, align 4, !tbaa !5
  %27747 = load i32, ptr %8, align 4, !tbaa !5
  %27748 = mul nsw i32 16, %27747
  %27749 = add nsw i32 %27746, %27748
  %27750 = sext i32 %27749 to i64
  %27751 = getelementptr inbounds double, ptr %27745, i64 %27750
  %27752 = load double, ptr %27751, align 8, !tbaa !11
  %27753 = call double @llvm.fmuladd.f64(double 0xBCEE200000000000, double %27752, double %27744)
  %27754 = load ptr, ptr %7, align 8, !tbaa !9
  %27755 = load i32, ptr %12, align 4, !tbaa !5
  %27756 = load i32, ptr %8, align 4, !tbaa !5
  %27757 = mul nsw i32 17, %27756
  %27758 = add nsw i32 %27755, %27757
  %27759 = sext i32 %27758 to i64
  %27760 = getelementptr inbounds double, ptr %27754, i64 %27759
  %27761 = load double, ptr %27760, align 8, !tbaa !11
  %27762 = call double @llvm.fmuladd.f64(double 0x3CD93FFFFFFFFFFF, double %27761, double %27753)
  %27763 = load ptr, ptr %7, align 8, !tbaa !9
  %27764 = load i32, ptr %12, align 4, !tbaa !5
  %27765 = load i32, ptr %8, align 4, !tbaa !5
  %27766 = mul nsw i32 18, %27765
  %27767 = add nsw i32 %27764, %27766
  %27768 = sext i32 %27767 to i64
  %27769 = getelementptr inbounds double, ptr %27763, i64 %27768
  %27770 = load double, ptr %27769, align 8, !tbaa !11
  %27771 = call double @llvm.fmuladd.f64(double 0x3CFCC00000000000, double %27770, double %27762)
  %27772 = load ptr, ptr %7, align 8, !tbaa !9
  %27773 = load i32, ptr %12, align 4, !tbaa !5
  %27774 = load i32, ptr %8, align 4, !tbaa !5
  %27775 = mul nsw i32 19, %27774
  %27776 = add nsw i32 %27773, %27775
  %27777 = sext i32 %27776 to i64
  %27778 = getelementptr inbounds double, ptr %27772, i64 %27777
  %27779 = load double, ptr %27778, align 8, !tbaa !11
  %27780 = call double @llvm.fmuladd.f64(double 0x3CDBFFFFFFFFFFFF, double %27779, double %27771)
  store double %27780, ptr %11, align 8, !tbaa !11
  %27781 = load double, ptr %11, align 8, !tbaa !11
  %27782 = load ptr, ptr %9, align 8, !tbaa !9
  %27783 = load i32, ptr %12, align 4, !tbaa !5
  %27784 = load i32, ptr %10, align 4, !tbaa !5
  %27785 = mul nsw i32 105, %27784
  %27786 = add nsw i32 %27783, %27785
  %27787 = sext i32 %27786 to i64
  %27788 = getelementptr inbounds double, ptr %27782, i64 %27787
  %27789 = load double, ptr %27788, align 8, !tbaa !11
  %27790 = fadd double %27789, %27781
  store double %27790, ptr %27788, align 8, !tbaa !11
  %27791 = load ptr, ptr %7, align 8, !tbaa !9
  %27792 = load i32, ptr %12, align 4, !tbaa !5
  %27793 = load i32, ptr %8, align 4, !tbaa !5
  %27794 = mul nsw i32 0, %27793
  %27795 = add nsw i32 %27792, %27794
  %27796 = sext i32 %27795 to i64
  %27797 = getelementptr inbounds double, ptr %27791, i64 %27796
  %27798 = load double, ptr %27797, align 8, !tbaa !11
  %27799 = load ptr, ptr %7, align 8, !tbaa !9
  %27800 = load i32, ptr %12, align 4, !tbaa !5
  %27801 = load i32, ptr %8, align 4, !tbaa !5
  %27802 = mul nsw i32 1, %27801
  %27803 = add nsw i32 %27800, %27802
  %27804 = sext i32 %27803 to i64
  %27805 = getelementptr inbounds double, ptr %27799, i64 %27804
  %27806 = load double, ptr %27805, align 8, !tbaa !11
  %27807 = fmul double 0xBCBE000000000000, %27806
  %27808 = call double @llvm.fmuladd.f64(double 0xBCEC8FFFFFFFFFFF, double %27798, double %27807)
  %27809 = load ptr, ptr %7, align 8, !tbaa !9
  %27810 = load i32, ptr %12, align 4, !tbaa !5
  %27811 = load i32, ptr %8, align 4, !tbaa !5
  %27812 = mul nsw i32 2, %27811
  %27813 = add nsw i32 %27810, %27812
  %27814 = sext i32 %27813 to i64
  %27815 = getelementptr inbounds double, ptr %27809, i64 %27814
  %27816 = load double, ptr %27815, align 8, !tbaa !11
  %27817 = call double @llvm.fmuladd.f64(double 0x3CB1800000000000, double %27816, double %27808)
  %27818 = load ptr, ptr %7, align 8, !tbaa !9
  %27819 = load i32, ptr %12, align 4, !tbaa !5
  %27820 = load i32, ptr %8, align 4, !tbaa !5
  %27821 = mul nsw i32 3, %27820
  %27822 = add nsw i32 %27819, %27821
  %27823 = sext i32 %27822 to i64
  %27824 = getelementptr inbounds double, ptr %27818, i64 %27823
  %27825 = load double, ptr %27824, align 8, !tbaa !11
  %27826 = call double @llvm.fmuladd.f64(double 0xBCE5380000000000, double %27825, double %27817)
  %27827 = load ptr, ptr %7, align 8, !tbaa !9
  %27828 = load i32, ptr %12, align 4, !tbaa !5
  %27829 = load i32, ptr %8, align 4, !tbaa !5
  %27830 = mul nsw i32 4, %27829
  %27831 = add nsw i32 %27828, %27830
  %27832 = sext i32 %27831 to i64
  %27833 = getelementptr inbounds double, ptr %27827, i64 %27832
  %27834 = load double, ptr %27833, align 8, !tbaa !11
  %27835 = call double @llvm.fmuladd.f64(double 0x3CC4400000000000, double %27834, double %27826)
  %27836 = load ptr, ptr %7, align 8, !tbaa !9
  %27837 = load i32, ptr %12, align 4, !tbaa !5
  %27838 = load i32, ptr %8, align 4, !tbaa !5
  %27839 = mul nsw i32 5, %27838
  %27840 = add nsw i32 %27837, %27839
  %27841 = sext i32 %27840 to i64
  %27842 = getelementptr inbounds double, ptr %27836, i64 %27841
  %27843 = load double, ptr %27842, align 8, !tbaa !11
  %27844 = call double @llvm.fmuladd.f64(double 0xBCDE5FFFFFFFFFFD, double %27843, double %27835)
  %27845 = load ptr, ptr %7, align 8, !tbaa !9
  %27846 = load i32, ptr %12, align 4, !tbaa !5
  %27847 = load i32, ptr %8, align 4, !tbaa !5
  %27848 = mul nsw i32 6, %27847
  %27849 = add nsw i32 %27846, %27848
  %27850 = sext i32 %27849 to i64
  %27851 = getelementptr inbounds double, ptr %27845, i64 %27850
  %27852 = load double, ptr %27851, align 8, !tbaa !11
  %27853 = call double @llvm.fmuladd.f64(double 0xBFE3AA36D354D105, double %27852, double %27844)
  %27854 = load ptr, ptr %7, align 8, !tbaa !9
  %27855 = load i32, ptr %12, align 4, !tbaa !5
  %27856 = load i32, ptr %8, align 4, !tbaa !5
  %27857 = mul nsw i32 7, %27856
  %27858 = add nsw i32 %27855, %27857
  %27859 = sext i32 %27858 to i64
  %27860 = getelementptr inbounds double, ptr %27854, i64 %27859
  %27861 = load double, ptr %27860, align 8, !tbaa !11
  %27862 = call double @llvm.fmuladd.f64(double 0x3CEBB80000000001, double %27861, double %27853)
  %27863 = load ptr, ptr %7, align 8, !tbaa !9
  %27864 = load i32, ptr %12, align 4, !tbaa !5
  %27865 = load i32, ptr %8, align 4, !tbaa !5
  %27866 = mul nsw i32 8, %27865
  %27867 = add nsw i32 %27864, %27866
  %27868 = sext i32 %27867 to i64
  %27869 = getelementptr inbounds double, ptr %27863, i64 %27868
  %27870 = load double, ptr %27869, align 8, !tbaa !11
  %27871 = call double @llvm.fmuladd.f64(double 0x3CCC000000000000, double %27870, double %27862)
  %27872 = load ptr, ptr %7, align 8, !tbaa !9
  %27873 = load i32, ptr %12, align 4, !tbaa !5
  %27874 = load i32, ptr %8, align 4, !tbaa !5
  %27875 = mul nsw i32 9, %27874
  %27876 = add nsw i32 %27873, %27875
  %27877 = sext i32 %27876 to i64
  %27878 = getelementptr inbounds double, ptr %27872, i64 %27877
  %27879 = load double, ptr %27878, align 8, !tbaa !11
  %27880 = call double @llvm.fmuladd.f64(double 0x3CDAFFFFFFFFFFFE, double %27879, double %27871)
  %27881 = load ptr, ptr %7, align 8, !tbaa !9
  %27882 = load i32, ptr %12, align 4, !tbaa !5
  %27883 = load i32, ptr %8, align 4, !tbaa !5
  %27884 = mul nsw i32 10, %27883
  %27885 = add nsw i32 %27882, %27884
  %27886 = sext i32 %27885 to i64
  %27887 = getelementptr inbounds double, ptr %27881, i64 %27886
  %27888 = load double, ptr %27887, align 8, !tbaa !11
  %27889 = call double @llvm.fmuladd.f64(double 0xBCF9480000000000, double %27888, double %27880)
  %27890 = load ptr, ptr %7, align 8, !tbaa !9
  %27891 = load i32, ptr %12, align 4, !tbaa !5
  %27892 = load i32, ptr %8, align 4, !tbaa !5
  %27893 = mul nsw i32 11, %27892
  %27894 = add nsw i32 %27891, %27893
  %27895 = sext i32 %27894 to i64
  %27896 = getelementptr inbounds double, ptr %27890, i64 %27895
  %27897 = load double, ptr %27896, align 8, !tbaa !11
  %27898 = call double @llvm.fmuladd.f64(double 0xBCD1800000000000, double %27897, double %27889)
  %27899 = load ptr, ptr %7, align 8, !tbaa !9
  %27900 = load i32, ptr %12, align 4, !tbaa !5
  %27901 = load i32, ptr %8, align 4, !tbaa !5
  %27902 = mul nsw i32 12, %27901
  %27903 = add nsw i32 %27900, %27902
  %27904 = sext i32 %27903 to i64
  %27905 = getelementptr inbounds double, ptr %27899, i64 %27904
  %27906 = load double, ptr %27905, align 8, !tbaa !11
  %27907 = call double @llvm.fmuladd.f64(double 0x3CC8C00000000000, double %27906, double %27898)
  %27908 = load ptr, ptr %7, align 8, !tbaa !9
  %27909 = load i32, ptr %12, align 4, !tbaa !5
  %27910 = load i32, ptr %8, align 4, !tbaa !5
  %27911 = mul nsw i32 13, %27910
  %27912 = add nsw i32 %27909, %27911
  %27913 = sext i32 %27912 to i64
  %27914 = getelementptr inbounds double, ptr %27908, i64 %27913
  %27915 = load double, ptr %27914, align 8, !tbaa !11
  %27916 = call double @llvm.fmuladd.f64(double 0xBCF59BFFFFFFFFFF, double %27915, double %27907)
  %27917 = load ptr, ptr %7, align 8, !tbaa !9
  %27918 = load i32, ptr %12, align 4, !tbaa !5
  %27919 = load i32, ptr %8, align 4, !tbaa !5
  %27920 = mul nsw i32 14, %27919
  %27921 = add nsw i32 %27918, %27920
  %27922 = sext i32 %27921 to i64
  %27923 = getelementptr inbounds double, ptr %27917, i64 %27922
  %27924 = load double, ptr %27923, align 8, !tbaa !11
  %27925 = call double @llvm.fmuladd.f64(double 0x3CD71FFFFFFFFFFF, double %27924, double %27916)
  %27926 = load ptr, ptr %7, align 8, !tbaa !9
  %27927 = load i32, ptr %12, align 4, !tbaa !5
  %27928 = load i32, ptr %8, align 4, !tbaa !5
  %27929 = mul nsw i32 15, %27928
  %27930 = add nsw i32 %27927, %27929
  %27931 = sext i32 %27930 to i64
  %27932 = getelementptr inbounds double, ptr %27926, i64 %27931
  %27933 = load double, ptr %27932, align 8, !tbaa !11
  %27934 = call double @llvm.fmuladd.f64(double 0xBCED300000000001, double %27933, double %27925)
  %27935 = load ptr, ptr %7, align 8, !tbaa !9
  %27936 = load i32, ptr %12, align 4, !tbaa !5
  %27937 = load i32, ptr %8, align 4, !tbaa !5
  %27938 = mul nsw i32 16, %27937
  %27939 = add nsw i32 %27936, %27938
  %27940 = sext i32 %27939 to i64
  %27941 = getelementptr inbounds double, ptr %27935, i64 %27940
  %27942 = load double, ptr %27941, align 8, !tbaa !11
  %27943 = call double @llvm.fmuladd.f64(double 0xBFF3F64564513B1C, double %27942, double %27934)
  %27944 = load ptr, ptr %7, align 8, !tbaa !9
  %27945 = load i32, ptr %12, align 4, !tbaa !5
  %27946 = load i32, ptr %8, align 4, !tbaa !5
  %27947 = mul nsw i32 17, %27946
  %27948 = add nsw i32 %27945, %27947
  %27949 = sext i32 %27948 to i64
  %27950 = getelementptr inbounds double, ptr %27944, i64 %27949
  %27951 = load double, ptr %27950, align 8, !tbaa !11
  %27952 = call double @llvm.fmuladd.f64(double 0x3CFADC0000000000, double %27951, double %27943)
  %27953 = load ptr, ptr %7, align 8, !tbaa !9
  %27954 = load i32, ptr %12, align 4, !tbaa !5
  %27955 = load i32, ptr %8, align 4, !tbaa !5
  %27956 = mul nsw i32 18, %27955
  %27957 = add nsw i32 %27954, %27956
  %27958 = sext i32 %27957 to i64
  %27959 = getelementptr inbounds double, ptr %27953, i64 %27958
  %27960 = load double, ptr %27959, align 8, !tbaa !11
  %27961 = call double @llvm.fmuladd.f64(double 0x3CD9000000000002, double %27960, double %27952)
  %27962 = load ptr, ptr %7, align 8, !tbaa !9
  %27963 = load i32, ptr %12, align 4, !tbaa !5
  %27964 = load i32, ptr %8, align 4, !tbaa !5
  %27965 = mul nsw i32 19, %27964
  %27966 = add nsw i32 %27963, %27965
  %27967 = sext i32 %27966 to i64
  %27968 = getelementptr inbounds double, ptr %27962, i64 %27967
  %27969 = load double, ptr %27968, align 8, !tbaa !11
  %27970 = call double @llvm.fmuladd.f64(double 0x3CEB7FFFFFFFFFFF, double %27969, double %27961)
  store double %27970, ptr %11, align 8, !tbaa !11
  %27971 = load double, ptr %11, align 8, !tbaa !11
  %27972 = load ptr, ptr %9, align 8, !tbaa !9
  %27973 = load i32, ptr %12, align 4, !tbaa !5
  %27974 = load i32, ptr %10, align 4, !tbaa !5
  %27975 = mul nsw i32 106, %27974
  %27976 = add nsw i32 %27973, %27975
  %27977 = sext i32 %27976 to i64
  %27978 = getelementptr inbounds double, ptr %27972, i64 %27977
  %27979 = load double, ptr %27978, align 8, !tbaa !11
  %27980 = fadd double %27979, %27971
  store double %27980, ptr %27978, align 8, !tbaa !11
  %27981 = load ptr, ptr %7, align 8, !tbaa !9
  %27982 = load i32, ptr %12, align 4, !tbaa !5
  %27983 = load i32, ptr %8, align 4, !tbaa !5
  %27984 = mul nsw i32 0, %27983
  %27985 = add nsw i32 %27982, %27984
  %27986 = sext i32 %27985 to i64
  %27987 = getelementptr inbounds double, ptr %27981, i64 %27986
  %27988 = load double, ptr %27987, align 8, !tbaa !11
  %27989 = load ptr, ptr %7, align 8, !tbaa !9
  %27990 = load i32, ptr %12, align 4, !tbaa !5
  %27991 = load i32, ptr %8, align 4, !tbaa !5
  %27992 = mul nsw i32 1, %27991
  %27993 = add nsw i32 %27990, %27992
  %27994 = sext i32 %27993 to i64
  %27995 = getelementptr inbounds double, ptr %27989, i64 %27994
  %27996 = load double, ptr %27995, align 8, !tbaa !11
  %27997 = fmul double 0xBCC0C00000000000, %27996
  %27998 = call double @llvm.fmuladd.f64(double 0xBCEB6FFFFFFFFFFF, double %27988, double %27997)
  %27999 = load ptr, ptr %7, align 8, !tbaa !9
  %28000 = load i32, ptr %12, align 4, !tbaa !5
  %28001 = load i32, ptr %8, align 4, !tbaa !5
  %28002 = mul nsw i32 2, %28001
  %28003 = add nsw i32 %28000, %28002
  %28004 = sext i32 %28003 to i64
  %28005 = getelementptr inbounds double, ptr %27999, i64 %28004
  %28006 = load double, ptr %28005, align 8, !tbaa !11
  %28007 = call double @llvm.fmuladd.f64(double 0xBCE6700000000000, double %28006, double %27998)
  %28008 = load ptr, ptr %7, align 8, !tbaa !9
  %28009 = load i32, ptr %12, align 4, !tbaa !5
  %28010 = load i32, ptr %8, align 4, !tbaa !5
  %28011 = mul nsw i32 3, %28010
  %28012 = add nsw i32 %28009, %28011
  %28013 = sext i32 %28012 to i64
  %28014 = getelementptr inbounds double, ptr %28008, i64 %28013
  %28015 = load double, ptr %28014, align 8, !tbaa !11
  %28016 = call double @llvm.fmuladd.f64(double 0x3CB43FFFFFFFFFFF, double %28015, double %28007)
  %28017 = load ptr, ptr %7, align 8, !tbaa !9
  %28018 = load i32, ptr %12, align 4, !tbaa !5
  %28019 = load i32, ptr %8, align 4, !tbaa !5
  %28020 = mul nsw i32 4, %28019
  %28021 = add nsw i32 %28018, %28020
  %28022 = sext i32 %28021 to i64
  %28023 = getelementptr inbounds double, ptr %28017, i64 %28022
  %28024 = load double, ptr %28023, align 8, !tbaa !11
  %28025 = call double @llvm.fmuladd.f64(double 0xBCDEA00000000000, double %28024, double %28016)
  %28026 = load ptr, ptr %7, align 8, !tbaa !9
  %28027 = load i32, ptr %12, align 4, !tbaa !5
  %28028 = load i32, ptr %8, align 4, !tbaa !5
  %28029 = mul nsw i32 5, %28028
  %28030 = add nsw i32 %28027, %28029
  %28031 = sext i32 %28030 to i64
  %28032 = getelementptr inbounds double, ptr %28026, i64 %28031
  %28033 = load double, ptr %28032, align 8, !tbaa !11
  %28034 = call double @llvm.fmuladd.f64(double 0x3CC7400000000000, double %28033, double %28025)
  %28035 = load ptr, ptr %7, align 8, !tbaa !9
  %28036 = load i32, ptr %12, align 4, !tbaa !5
  %28037 = load i32, ptr %8, align 4, !tbaa !5
  %28038 = mul nsw i32 6, %28037
  %28039 = add nsw i32 %28036, %28038
  %28040 = sext i32 %28039 to i64
  %28041 = getelementptr inbounds double, ptr %28035, i64 %28040
  %28042 = load double, ptr %28041, align 8, !tbaa !11
  %28043 = call double @llvm.fmuladd.f64(double 0x3CEAF80000000000, double %28042, double %28034)
  %28044 = load ptr, ptr %7, align 8, !tbaa !9
  %28045 = load i32, ptr %12, align 4, !tbaa !5
  %28046 = load i32, ptr %8, align 4, !tbaa !5
  %28047 = mul nsw i32 7, %28046
  %28048 = add nsw i32 %28045, %28047
  %28049 = sext i32 %28048 to i64
  %28050 = getelementptr inbounds double, ptr %28044, i64 %28049
  %28051 = load double, ptr %28050, align 8, !tbaa !11
  %28052 = call double @llvm.fmuladd.f64(double 0xBFE3AA36D354D103, double %28051, double %28043)
  %28053 = load ptr, ptr %7, align 8, !tbaa !9
  %28054 = load i32, ptr %12, align 4, !tbaa !5
  %28055 = load i32, ptr %8, align 4, !tbaa !5
  %28056 = mul nsw i32 8, %28055
  %28057 = add nsw i32 %28054, %28056
  %28058 = sext i32 %28057 to i64
  %28059 = getelementptr inbounds double, ptr %28053, i64 %28058
  %28060 = load double, ptr %28059, align 8, !tbaa !11
  %28061 = call double @llvm.fmuladd.f64(double 0x3CDBFFFFFFFFFFFF, double %28060, double %28052)
  %28062 = load ptr, ptr %7, align 8, !tbaa !9
  %28063 = load i32, ptr %12, align 4, !tbaa !5
  %28064 = load i32, ptr %8, align 4, !tbaa !5
  %28065 = mul nsw i32 9, %28064
  %28066 = add nsw i32 %28063, %28065
  %28067 = sext i32 %28066 to i64
  %28068 = getelementptr inbounds double, ptr %28062, i64 %28067
  %28069 = load double, ptr %28068, align 8, !tbaa !11
  %28070 = call double @llvm.fmuladd.f64(double 0x3CC6800000000000, double %28069, double %28061)
  %28071 = load ptr, ptr %7, align 8, !tbaa !9
  %28072 = load i32, ptr %12, align 4, !tbaa !5
  %28073 = load i32, ptr %8, align 4, !tbaa !5
  %28074 = mul nsw i32 10, %28073
  %28075 = add nsw i32 %28072, %28074
  %28076 = sext i32 %28075 to i64
  %28077 = getelementptr inbounds double, ptr %28071, i64 %28076
  %28078 = load double, ptr %28077, align 8, !tbaa !11
  %28079 = call double @llvm.fmuladd.f64(double 0xBCF8B80000000000, double %28078, double %28070)
  %28080 = load ptr, ptr %7, align 8, !tbaa !9
  %28081 = load i32, ptr %12, align 4, !tbaa !5
  %28082 = load i32, ptr %8, align 4, !tbaa !5
  %28083 = mul nsw i32 11, %28082
  %28084 = add nsw i32 %28081, %28083
  %28085 = sext i32 %28084 to i64
  %28086 = getelementptr inbounds double, ptr %28080, i64 %28085
  %28087 = load double, ptr %28086, align 8, !tbaa !11
  %28088 = call double @llvm.fmuladd.f64(double 0xBCD2DFFFFFFFFFFE, double %28087, double %28079)
  %28089 = load ptr, ptr %7, align 8, !tbaa !9
  %28090 = load i32, ptr %12, align 4, !tbaa !5
  %28091 = load i32, ptr %8, align 4, !tbaa !5
  %28092 = mul nsw i32 12, %28091
  %28093 = add nsw i32 %28090, %28092
  %28094 = sext i32 %28093 to i64
  %28095 = getelementptr inbounds double, ptr %28089, i64 %28094
  %28096 = load double, ptr %28095, align 8, !tbaa !11
  %28097 = call double @llvm.fmuladd.f64(double 0xBCF7B80000000000, double %28096, double %28088)
  %28098 = load ptr, ptr %7, align 8, !tbaa !9
  %28099 = load i32, ptr %12, align 4, !tbaa !5
  %28100 = load i32, ptr %8, align 4, !tbaa !5
  %28101 = mul nsw i32 13, %28100
  %28102 = add nsw i32 %28099, %28101
  %28103 = sext i32 %28102 to i64
  %28104 = getelementptr inbounds double, ptr %28098, i64 %28103
  %28105 = load double, ptr %28104, align 8, !tbaa !11
  %28106 = call double @llvm.fmuladd.f64(double 0x3CC4200000000000, double %28105, double %28097)
  %28107 = load ptr, ptr %7, align 8, !tbaa !9
  %28108 = load i32, ptr %12, align 4, !tbaa !5
  %28109 = load i32, ptr %8, align 4, !tbaa !5
  %28110 = mul nsw i32 14, %28109
  %28111 = add nsw i32 %28108, %28110
  %28112 = sext i32 %28111 to i64
  %28113 = getelementptr inbounds double, ptr %28107, i64 %28112
  %28114 = load double, ptr %28113, align 8, !tbaa !11
  %28115 = call double @llvm.fmuladd.f64(double 0xBCEE500000000001, double %28114, double %28106)
  %28116 = load ptr, ptr %7, align 8, !tbaa !9
  %28117 = load i32, ptr %12, align 4, !tbaa !5
  %28118 = load i32, ptr %8, align 4, !tbaa !5
  %28119 = mul nsw i32 15, %28118
  %28120 = add nsw i32 %28117, %28119
  %28121 = sext i32 %28120 to i64
  %28122 = getelementptr inbounds double, ptr %28116, i64 %28121
  %28123 = load double, ptr %28122, align 8, !tbaa !11
  %28124 = call double @llvm.fmuladd.f64(double 0x3CD5A00000000002, double %28123, double %28115)
  %28125 = load ptr, ptr %7, align 8, !tbaa !9
  %28126 = load i32, ptr %12, align 4, !tbaa !5
  %28127 = load i32, ptr %8, align 4, !tbaa !5
  %28128 = mul nsw i32 16, %28127
  %28129 = add nsw i32 %28126, %28128
  %28130 = sext i32 %28129 to i64
  %28131 = getelementptr inbounds double, ptr %28125, i64 %28130
  %28132 = load double, ptr %28131, align 8, !tbaa !11
  %28133 = call double @llvm.fmuladd.f64(double 0x3CFBBC0000000000, double %28132, double %28124)
  %28134 = load ptr, ptr %7, align 8, !tbaa !9
  %28135 = load i32, ptr %12, align 4, !tbaa !5
  %28136 = load i32, ptr %8, align 4, !tbaa !5
  %28137 = mul nsw i32 17, %28136
  %28138 = add nsw i32 %28135, %28137
  %28139 = sext i32 %28138 to i64
  %28140 = getelementptr inbounds double, ptr %28134, i64 %28139
  %28141 = load double, ptr %28140, align 8, !tbaa !11
  %28142 = call double @llvm.fmuladd.f64(double 0xBFF3F64564513B1C, double %28141, double %28133)
  %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 18, %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 = call double @llvm.fmuladd.f64(double 0x3CEB7FFFFFFFFFFF, double %28150, double %28142)
  %28152 = load ptr, ptr %7, align 8, !tbaa !9
  %28153 = load i32, ptr %12, align 4, !tbaa !5
  %28154 = load i32, ptr %8, align 4, !tbaa !5
  %28155 = mul nsw i32 19, %28154
  %28156 = add nsw i32 %28153, %28155
  %28157 = sext i32 %28156 to i64
  %28158 = getelementptr inbounds double, ptr %28152, i64 %28157
  %28159 = load double, ptr %28158, align 8, !tbaa !11
  %28160 = call double @llvm.fmuladd.f64(double 0x3CD93FFFFFFFFFFF, double %28159, double %28151)
  store double %28160, ptr %11, align 8, !tbaa !11
  %28161 = load double, ptr %11, align 8, !tbaa !11
  %28162 = load ptr, ptr %9, align 8, !tbaa !9
  %28163 = load i32, ptr %12, align 4, !tbaa !5
  %28164 = load i32, ptr %10, align 4, !tbaa !5
  %28165 = mul nsw i32 107, %28164
  %28166 = add nsw i32 %28163, %28165
  %28167 = sext i32 %28166 to i64
  %28168 = getelementptr inbounds double, ptr %28162, i64 %28167
  %28169 = load double, ptr %28168, align 8, !tbaa !11
  %28170 = fadd double %28169, %28161
  store double %28170, ptr %28168, align 8, !tbaa !11
  %28171 = load ptr, ptr %7, align 8, !tbaa !9
  %28172 = load i32, ptr %12, align 4, !tbaa !5
  %28173 = load i32, ptr %8, align 4, !tbaa !5
  %28174 = mul nsw i32 0, %28173
  %28175 = add nsw i32 %28172, %28174
  %28176 = sext i32 %28175 to i64
  %28177 = getelementptr inbounds double, ptr %28171, i64 %28176
  %28178 = load double, ptr %28177, align 8, !tbaa !11
  %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 1, %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 = fmul double 0xBCE5800000000001, %28186
  %28188 = call double @llvm.fmuladd.f64(double 0xBCEAC00000000001, double %28178, double %28187)
  %28189 = load ptr, ptr %7, align 8, !tbaa !9
  %28190 = load i32, ptr %12, align 4, !tbaa !5
  %28191 = load i32, ptr %8, align 4, !tbaa !5
  %28192 = mul nsw i32 2, %28191
  %28193 = add nsw i32 %28190, %28192
  %28194 = sext i32 %28193 to i64
  %28195 = getelementptr inbounds double, ptr %28189, i64 %28194
  %28196 = load double, ptr %28195, align 8, !tbaa !11
  %28197 = call double @llvm.fmuladd.f64(double 0xBCB97FFFFFFFFFFF, double %28196, double %28188)
  %28198 = load ptr, ptr %7, align 8, !tbaa !9
  %28199 = load i32, ptr %12, align 4, !tbaa !5
  %28200 = load i32, ptr %8, align 4, !tbaa !5
  %28201 = mul nsw i32 3, %28200
  %28202 = add nsw i32 %28199, %28201
  %28203 = sext i32 %28202 to i64
  %28204 = getelementptr inbounds double, ptr %28198, i64 %28203
  %28205 = load double, ptr %28204, align 8, !tbaa !11
  %28206 = call double @llvm.fmuladd.f64(double 0x3CB9000000000000, double %28205, double %28197)
  %28207 = load ptr, ptr %7, align 8, !tbaa !9
  %28208 = load i32, ptr %12, align 4, !tbaa !5
  %28209 = load i32, ptr %8, align 4, !tbaa !5
  %28210 = mul nsw i32 4, %28209
  %28211 = add nsw i32 %28208, %28210
  %28212 = sext i32 %28211 to i64
  %28213 = getelementptr inbounds double, ptr %28207, i64 %28212
  %28214 = load double, ptr %28213, align 8, !tbaa !11
  %28215 = call double @llvm.fmuladd.f64(double 0x3CCC000000000000, double %28214, double %28206)
  %28216 = load ptr, ptr %7, align 8, !tbaa !9
  %28217 = load i32, ptr %12, align 4, !tbaa !5
  %28218 = load i32, ptr %8, align 4, !tbaa !5
  %28219 = mul nsw i32 5, %28218
  %28220 = add nsw i32 %28217, %28219
  %28221 = sext i32 %28220 to i64
  %28222 = getelementptr inbounds double, ptr %28216, i64 %28221
  %28223 = load double, ptr %28222, align 8, !tbaa !11
  %28224 = call double @llvm.fmuladd.f64(double 0x3CEB400000000001, double %28223, double %28215)
  %28225 = load ptr, ptr %7, align 8, !tbaa !9
  %28226 = load i32, ptr %12, align 4, !tbaa !5
  %28227 = load i32, ptr %8, align 4, !tbaa !5
  %28228 = mul nsw i32 6, %28227
  %28229 = add nsw i32 %28226, %28228
  %28230 = sext i32 %28229 to i64
  %28231 = getelementptr inbounds double, ptr %28225, i64 %28230
  %28232 = load double, ptr %28231, align 8, !tbaa !11
  %28233 = call double @llvm.fmuladd.f64(double 0x3CC5800000000000, double %28232, double %28224)
  %28234 = load ptr, ptr %7, align 8, !tbaa !9
  %28235 = load i32, ptr %12, align 4, !tbaa !5
  %28236 = load i32, ptr %8, align 4, !tbaa !5
  %28237 = mul nsw i32 7, %28236
  %28238 = add nsw i32 %28235, %28237
  %28239 = sext i32 %28238 to i64
  %28240 = getelementptr inbounds double, ptr %28234, i64 %28239
  %28241 = load double, ptr %28240, align 8, !tbaa !11
  %28242 = call double @llvm.fmuladd.f64(double 0x3CDAFFFFFFFFFFFE, double %28241, double %28233)
  %28243 = load ptr, ptr %7, align 8, !tbaa !9
  %28244 = load i32, ptr %12, align 4, !tbaa !5
  %28245 = load i32, ptr %8, align 4, !tbaa !5
  %28246 = mul nsw i32 8, %28245
  %28247 = add nsw i32 %28244, %28246
  %28248 = sext i32 %28247 to i64
  %28249 = getelementptr inbounds double, ptr %28243, i64 %28248
  %28250 = load double, ptr %28249, align 8, !tbaa !11
  %28251 = call double @llvm.fmuladd.f64(double 0xBFE3AA36D354D103, double %28250, double %28242)
  %28252 = load ptr, ptr %7, align 8, !tbaa !9
  %28253 = load i32, ptr %12, align 4, !tbaa !5
  %28254 = load i32, ptr %8, align 4, !tbaa !5
  %28255 = mul nsw i32 9, %28254
  %28256 = add nsw i32 %28253, %28255
  %28257 = sext i32 %28256 to i64
  %28258 = getelementptr inbounds double, ptr %28252, i64 %28257
  %28259 = load double, ptr %28258, align 8, !tbaa !11
  %28260 = call double @llvm.fmuladd.f64(double 0xBCE1800000000000, double %28259, double %28251)
  %28261 = load ptr, ptr %7, align 8, !tbaa !9
  %28262 = load i32, ptr %12, align 4, !tbaa !5
  %28263 = load i32, ptr %8, align 4, !tbaa !5
  %28264 = mul nsw i32 10, %28263
  %28265 = add nsw i32 %28262, %28264
  %28266 = sext i32 %28265 to i64
  %28267 = getelementptr inbounds double, ptr %28261, i64 %28266
  %28268 = load double, ptr %28267, align 8, !tbaa !11
  %28269 = call double @llvm.fmuladd.f64(double 0xBCF9E00000000000, double %28268, double %28260)
  %28270 = load ptr, ptr %7, align 8, !tbaa !9
  %28271 = load i32, ptr %12, align 4, !tbaa !5
  %28272 = load i32, ptr %8, align 4, !tbaa !5
  %28273 = mul nsw i32 11, %28272
  %28274 = add nsw i32 %28271, %28273
  %28275 = sext i32 %28274 to i64
  %28276 = getelementptr inbounds double, ptr %28270, i64 %28275
  %28277 = load double, ptr %28276, align 8, !tbaa !11
  %28278 = call double @llvm.fmuladd.f64(double 0xBCF6600000000001, double %28277, double %28269)
  %28279 = load ptr, ptr %7, align 8, !tbaa !9
  %28280 = load i32, ptr %12, align 4, !tbaa !5
  %28281 = load i32, ptr %8, align 4, !tbaa !5
  %28282 = mul nsw i32 12, %28281
  %28283 = add nsw i32 %28280, %28282
  %28284 = sext i32 %28283 to i64
  %28285 = getelementptr inbounds double, ptr %28279, i64 %28284
  %28286 = load double, ptr %28285, align 8, !tbaa !11
  %28287 = call double @llvm.fmuladd.f64(double 0xBCCF400000000000, double %28286, double %28278)
  %28288 = load ptr, ptr %7, align 8, !tbaa !9
  %28289 = load i32, ptr %12, align 4, !tbaa !5
  %28290 = load i32, ptr %8, align 4, !tbaa !5
  %28291 = mul nsw i32 13, %28290
  %28292 = add nsw i32 %28289, %28291
  %28293 = sext i32 %28292 to i64
  %28294 = getelementptr inbounds double, ptr %28288, i64 %28293
  %28295 = load double, ptr %28294, align 8, !tbaa !11
  %28296 = call double @llvm.fmuladd.f64(double 0x3CC5800000000000, double %28295, double %28287)
  %28297 = load ptr, ptr %7, align 8, !tbaa !9
  %28298 = load i32, ptr %12, align 4, !tbaa !5
  %28299 = load i32, ptr %8, align 4, !tbaa !5
  %28300 = mul nsw i32 14, %28299
  %28301 = add nsw i32 %28298, %28300
  %28302 = sext i32 %28301 to i64
  %28303 = getelementptr inbounds double, ptr %28297, i64 %28302
  %28304 = load double, ptr %28303, align 8, !tbaa !11
  %28305 = call double @llvm.fmuladd.f64(double 0x3CDBFFFFFFFFFFFF, double %28304, double %28296)
  %28306 = load ptr, ptr %7, align 8, !tbaa !9
  %28307 = load i32, ptr %12, align 4, !tbaa !5
  %28308 = load i32, ptr %8, align 4, !tbaa !5
  %28309 = mul nsw i32 15, %28308
  %28310 = add nsw i32 %28307, %28309
  %28311 = sext i32 %28310 to i64
  %28312 = getelementptr inbounds double, ptr %28306, i64 %28311
  %28313 = load double, ptr %28312, align 8, !tbaa !11
  %28314 = call double @llvm.fmuladd.f64(double 0x3CFBA00000000000, double %28313, double %28305)
  %28315 = load ptr, ptr %7, align 8, !tbaa !9
  %28316 = load i32, ptr %12, align 4, !tbaa !5
  %28317 = load i32, ptr %8, align 4, !tbaa !5
  %28318 = mul nsw i32 16, %28317
  %28319 = add nsw i32 %28316, %28318
  %28320 = sext i32 %28319 to i64
  %28321 = getelementptr inbounds double, ptr %28315, i64 %28320
  %28322 = load double, ptr %28321, align 8, !tbaa !11
  %28323 = call double @llvm.fmuladd.f64(double 0x3CD7BFFFFFFFFFFE, double %28322, double %28314)
  %28324 = load ptr, ptr %7, align 8, !tbaa !9
  %28325 = load i32, ptr %12, align 4, !tbaa !5
  %28326 = load i32, ptr %8, align 4, !tbaa !5
  %28327 = mul nsw i32 17, %28326
  %28328 = add nsw i32 %28325, %28327
  %28329 = sext i32 %28328 to i64
  %28330 = getelementptr inbounds double, ptr %28324, i64 %28329
  %28331 = load double, ptr %28330, align 8, !tbaa !11
  %28332 = call double @llvm.fmuladd.f64(double 0x3CED000000000000, double %28331, double %28323)
  %28333 = load ptr, ptr %7, align 8, !tbaa !9
  %28334 = load i32, ptr %12, align 4, !tbaa !5
  %28335 = load i32, ptr %8, align 4, !tbaa !5
  %28336 = mul nsw i32 18, %28335
  %28337 = add nsw i32 %28334, %28336
  %28338 = sext i32 %28337 to i64
  %28339 = getelementptr inbounds double, ptr %28333, i64 %28338
  %28340 = load double, ptr %28339, align 8, !tbaa !11
  %28341 = call double @llvm.fmuladd.f64(double 0xBFF3F64564513B1C, double %28340, double %28332)
  %28342 = load ptr, ptr %7, align 8, !tbaa !9
  %28343 = load i32, ptr %12, align 4, !tbaa !5
  %28344 = load i32, ptr %8, align 4, !tbaa !5
  %28345 = mul nsw i32 19, %28344
  %28346 = add nsw i32 %28343, %28345
  %28347 = sext i32 %28346 to i64
  %28348 = getelementptr inbounds double, ptr %28342, i64 %28347
  %28349 = load double, ptr %28348, align 8, !tbaa !11
  %28350 = call double @llvm.fmuladd.f64(double 0xBCF1800000000000, double %28349, double %28341)
  store double %28350, ptr %11, align 8, !tbaa !11
  %28351 = load double, ptr %11, align 8, !tbaa !11
  %28352 = load ptr, ptr %9, align 8, !tbaa !9
  %28353 = load i32, ptr %12, align 4, !tbaa !5
  %28354 = load i32, ptr %10, align 4, !tbaa !5
  %28355 = mul nsw i32 108, %28354
  %28356 = add nsw i32 %28353, %28355
  %28357 = sext i32 %28356 to i64
  %28358 = getelementptr inbounds double, ptr %28352, i64 %28357
  %28359 = load double, ptr %28358, align 8, !tbaa !11
  %28360 = fadd double %28359, %28351
  store double %28360, ptr %28358, align 8, !tbaa !11
  %28361 = load ptr, ptr %7, align 8, !tbaa !9
  %28362 = load i32, ptr %12, align 4, !tbaa !5
  %28363 = load i32, ptr %8, align 4, !tbaa !5
  %28364 = mul nsw i32 0, %28363
  %28365 = add nsw i32 %28362, %28364
  %28366 = sext i32 %28365 to i64
  %28367 = getelementptr inbounds double, ptr %28361, i64 %28366
  %28368 = load double, ptr %28367, align 8, !tbaa !11
  %28369 = load ptr, ptr %7, align 8, !tbaa !9
  %28370 = load i32, ptr %12, align 4, !tbaa !5
  %28371 = load i32, ptr %8, align 4, !tbaa !5
  %28372 = mul nsw i32 1, %28371
  %28373 = add nsw i32 %28370, %28372
  %28374 = sext i32 %28373 to i64
  %28375 = getelementptr inbounds double, ptr %28369, i64 %28374
  %28376 = load double, ptr %28375, align 8, !tbaa !11
  %28377 = fmul double 0xBCE3C00000000000, %28376
  %28378 = call double @llvm.fmuladd.f64(double 0xBCEBBFFFFFFFFFFF, double %28368, double %28377)
  %28379 = load ptr, ptr %7, align 8, !tbaa !9
  %28380 = load i32, ptr %12, align 4, !tbaa !5
  %28381 = load i32, ptr %8, align 4, !tbaa !5
  %28382 = mul nsw i32 2, %28381
  %28383 = add nsw i32 %28380, %28382
  %28384 = sext i32 %28383 to i64
  %28385 = getelementptr inbounds double, ptr %28379, i64 %28384
  %28386 = load double, ptr %28385, align 8, !tbaa !11
  %28387 = call double @llvm.fmuladd.f64(double 0x3CBB800000000001, double %28386, double %28378)
  %28388 = load ptr, ptr %7, align 8, !tbaa !9
  %28389 = load i32, ptr %12, align 4, !tbaa !5
  %28390 = load i32, ptr %8, align 4, !tbaa !5
  %28391 = mul nsw i32 3, %28390
  %28392 = add nsw i32 %28389, %28391
  %28393 = sext i32 %28392 to i64
  %28394 = getelementptr inbounds double, ptr %28388, i64 %28393
  %28395 = load double, ptr %28394, align 8, !tbaa !11
  %28396 = call double @llvm.fmuladd.f64(double 0xBCC3400000000000, double %28395, double %28387)
  %28397 = load ptr, ptr %7, align 8, !tbaa !9
  %28398 = load i32, ptr %12, align 4, !tbaa !5
  %28399 = load i32, ptr %8, align 4, !tbaa !5
  %28400 = mul nsw i32 4, %28399
  %28401 = add nsw i32 %28398, %28400
  %28402 = sext i32 %28401 to i64
  %28403 = getelementptr inbounds double, ptr %28397, i64 %28402
  %28404 = load double, ptr %28403, align 8, !tbaa !11
  %28405 = call double @llvm.fmuladd.f64(double 0x3CECC00000000000, double %28404, double %28396)
  %28406 = load ptr, ptr %7, align 8, !tbaa !9
  %28407 = load i32, ptr %12, align 4, !tbaa !5
  %28408 = load i32, ptr %8, align 4, !tbaa !5
  %28409 = mul nsw i32 5, %28408
  %28410 = add nsw i32 %28407, %28409
  %28411 = sext i32 %28410 to i64
  %28412 = getelementptr inbounds double, ptr %28406, i64 %28411
  %28413 = load double, ptr %28412, align 8, !tbaa !11
  %28414 = call double @llvm.fmuladd.f64(double 0x3CCB000000000000, double %28413, double %28405)
  %28415 = load ptr, ptr %7, align 8, !tbaa !9
  %28416 = load i32, ptr %12, align 4, !tbaa !5
  %28417 = load i32, ptr %8, align 4, !tbaa !5
  %28418 = mul nsw i32 6, %28417
  %28419 = add nsw i32 %28416, %28418
  %28420 = sext i32 %28419 to i64
  %28421 = getelementptr inbounds double, ptr %28415, i64 %28420
  %28422 = load double, ptr %28421, align 8, !tbaa !11
  %28423 = call double @llvm.fmuladd.f64(double 0x3CDAFFFFFFFFFFFE, double %28422, double %28414)
  %28424 = load ptr, ptr %7, align 8, !tbaa !9
  %28425 = load i32, ptr %12, align 4, !tbaa !5
  %28426 = load i32, ptr %8, align 4, !tbaa !5
  %28427 = mul nsw i32 7, %28426
  %28428 = add nsw i32 %28425, %28427
  %28429 = sext i32 %28428 to i64
  %28430 = getelementptr inbounds double, ptr %28424, i64 %28429
  %28431 = load double, ptr %28430, align 8, !tbaa !11
  %28432 = call double @llvm.fmuladd.f64(double 0x3CC6800000000000, double %28431, double %28423)
  %28433 = load ptr, ptr %7, align 8, !tbaa !9
  %28434 = load i32, ptr %12, align 4, !tbaa !5
  %28435 = load i32, ptr %8, align 4, !tbaa !5
  %28436 = mul nsw i32 8, %28435
  %28437 = add nsw i32 %28434, %28436
  %28438 = sext i32 %28437 to i64
  %28439 = getelementptr inbounds double, ptr %28433, i64 %28438
  %28440 = load double, ptr %28439, align 8, !tbaa !11
  %28441 = call double @llvm.fmuladd.f64(double 0xBCE1000000000000, double %28440, double %28432)
  %28442 = load ptr, ptr %7, align 8, !tbaa !9
  %28443 = load i32, ptr %12, align 4, !tbaa !5
  %28444 = load i32, ptr %8, align 4, !tbaa !5
  %28445 = mul nsw i32 9, %28444
  %28446 = add nsw i32 %28443, %28445
  %28447 = sext i32 %28446 to i64
  %28448 = getelementptr inbounds double, ptr %28442, i64 %28447
  %28449 = load double, ptr %28448, align 8, !tbaa !11
  %28450 = call double @llvm.fmuladd.f64(double 0xBFE3AA36D354D104, double %28449, double %28441)
  %28451 = load ptr, ptr %7, align 8, !tbaa !9
  %28452 = load i32, ptr %12, align 4, !tbaa !5
  %28453 = load i32, ptr %8, align 4, !tbaa !5
  %28454 = mul nsw i32 10, %28453
  %28455 = add nsw i32 %28452, %28454
  %28456 = sext i32 %28455 to i64
  %28457 = getelementptr inbounds double, ptr %28451, i64 %28456
  %28458 = load double, ptr %28457, align 8, !tbaa !11
  %28459 = call double @llvm.fmuladd.f64(double 0xBCFA600000000000, double %28458, double %28450)
  %28460 = load ptr, ptr %7, align 8, !tbaa !9
  %28461 = load i32, ptr %12, align 4, !tbaa !5
  %28462 = load i32, ptr %8, align 4, !tbaa !5
  %28463 = mul nsw i32 11, %28462
  %28464 = add nsw i32 %28461, %28463
  %28465 = sext i32 %28464 to i64
  %28466 = getelementptr inbounds double, ptr %28460, i64 %28465
  %28467 = load double, ptr %28466, align 8, !tbaa !11
  %28468 = call double @llvm.fmuladd.f64(double 0xBCF5200000000000, double %28467, double %28459)
  %28469 = load ptr, ptr %7, align 8, !tbaa !9
  %28470 = load i32, ptr %12, align 4, !tbaa !5
  %28471 = load i32, ptr %8, align 4, !tbaa !5
  %28472 = mul nsw i32 12, %28471
  %28473 = add nsw i32 %28470, %28472
  %28474 = sext i32 %28473 to i64
  %28475 = getelementptr inbounds double, ptr %28469, i64 %28474
  %28476 = load double, ptr %28475, align 8, !tbaa !11
  %28477 = call double @llvm.fmuladd.f64(double 0x3CC7C00000000000, double %28476, double %28468)
  %28478 = load ptr, ptr %7, align 8, !tbaa !9
  %28479 = load i32, ptr %12, align 4, !tbaa !5
  %28480 = load i32, ptr %8, align 4, !tbaa !5
  %28481 = mul nsw i32 13, %28480
  %28482 = add nsw i32 %28479, %28481
  %28483 = sext i32 %28482 to i64
  %28484 = getelementptr inbounds double, ptr %28478, i64 %28483
  %28485 = load double, ptr %28484, align 8, !tbaa !11
  %28486 = call double @llvm.fmuladd.f64(double 0xBCD3A00000000001, double %28485, double %28477)
  %28487 = load ptr, ptr %7, align 8, !tbaa !9
  %28488 = load i32, ptr %12, align 4, !tbaa !5
  %28489 = load i32, ptr %8, align 4, !tbaa !5
  %28490 = mul nsw i32 14, %28489
  %28491 = add nsw i32 %28488, %28490
  %28492 = sext i32 %28491 to i64
  %28493 = getelementptr inbounds double, ptr %28487, i64 %28492
  %28494 = load double, ptr %28493, align 8, !tbaa !11
  %28495 = call double @llvm.fmuladd.f64(double 0x3CFD600000000000, double %28494, double %28486)
  %28496 = load ptr, ptr %7, align 8, !tbaa !9
  %28497 = load i32, ptr %12, align 4, !tbaa !5
  %28498 = load i32, ptr %8, align 4, !tbaa !5
  %28499 = mul nsw i32 15, %28498
  %28500 = add nsw i32 %28497, %28499
  %28501 = sext i32 %28500 to i64
  %28502 = getelementptr inbounds double, ptr %28496, i64 %28501
  %28503 = load double, ptr %28502, align 8, !tbaa !11
  %28504 = call double @llvm.fmuladd.f64(double 0x3CDB7FFFFFFFFFFF, double %28503, double %28495)
  %28505 = load ptr, ptr %7, align 8, !tbaa !9
  %28506 = load i32, ptr %12, align 4, !tbaa !5
  %28507 = load i32, ptr %8, align 4, !tbaa !5
  %28508 = mul nsw i32 16, %28507
  %28509 = add nsw i32 %28506, %28508
  %28510 = sext i32 %28509 to i64
  %28511 = getelementptr inbounds double, ptr %28505, i64 %28510
  %28512 = load double, ptr %28511, align 8, !tbaa !11
  %28513 = call double @llvm.fmuladd.f64(double 0x3CEC800000000000, double %28512, double %28504)
  %28514 = load ptr, ptr %7, align 8, !tbaa !9
  %28515 = load i32, ptr %12, align 4, !tbaa !5
  %28516 = load i32, ptr %8, align 4, !tbaa !5
  %28517 = mul nsw i32 17, %28516
  %28518 = add nsw i32 %28515, %28517
  %28519 = sext i32 %28518 to i64
  %28520 = getelementptr inbounds double, ptr %28514, i64 %28519
  %28521 = load double, ptr %28520, align 8, !tbaa !11
  %28522 = call double @llvm.fmuladd.f64(double 0x3CDA400000000000, double %28521, double %28513)
  %28523 = load ptr, ptr %7, align 8, !tbaa !9
  %28524 = load i32, ptr %12, align 4, !tbaa !5
  %28525 = load i32, ptr %8, align 4, !tbaa !5
  %28526 = mul nsw i32 18, %28525
  %28527 = add nsw i32 %28524, %28526
  %28528 = sext i32 %28527 to i64
  %28529 = getelementptr inbounds double, ptr %28523, i64 %28528
  %28530 = load double, ptr %28529, align 8, !tbaa !11
  %28531 = call double @llvm.fmuladd.f64(double 0xBCF2400000000000, double %28530, double %28522)
  %28532 = load ptr, ptr %7, align 8, !tbaa !9
  %28533 = load i32, ptr %12, align 4, !tbaa !5
  %28534 = load i32, ptr %8, align 4, !tbaa !5
  %28535 = mul nsw i32 19, %28534
  %28536 = add nsw i32 %28533, %28535
  %28537 = sext i32 %28536 to i64
  %28538 = getelementptr inbounds double, ptr %28532, i64 %28537
  %28539 = load double, ptr %28538, align 8, !tbaa !11
  %28540 = call double @llvm.fmuladd.f64(double 0xBFF3F64564513B1C, double %28539, double %28531)
  store double %28540, ptr %11, align 8, !tbaa !11
  %28541 = load double, ptr %11, align 8, !tbaa !11
  %28542 = load ptr, ptr %9, align 8, !tbaa !9
  %28543 = load i32, ptr %12, align 4, !tbaa !5
  %28544 = load i32, ptr %10, align 4, !tbaa !5
  %28545 = mul nsw i32 109, %28544
  %28546 = add nsw i32 %28543, %28545
  %28547 = sext i32 %28546 to i64
  %28548 = getelementptr inbounds double, ptr %28542, i64 %28547
  %28549 = load double, ptr %28548, align 8, !tbaa !11
  %28550 = fadd double %28549, %28541
  store double %28550, ptr %28548, align 8, !tbaa !11
  %28551 = load ptr, ptr %7, align 8, !tbaa !9
  %28552 = load i32, ptr %12, align 4, !tbaa !5
  %28553 = load i32, ptr %8, align 4, !tbaa !5
  %28554 = mul nsw i32 0, %28553
  %28555 = add nsw i32 %28552, %28554
  %28556 = sext i32 %28555 to i64
  %28557 = getelementptr inbounds double, ptr %28551, i64 %28556
  %28558 = load double, ptr %28557, align 8, !tbaa !11
  %28559 = load ptr, ptr %7, align 8, !tbaa !9
  %28560 = load i32, ptr %12, align 4, !tbaa !5
  %28561 = load i32, ptr %8, align 4, !tbaa !5
  %28562 = mul nsw i32 1, %28561
  %28563 = add nsw i32 %28560, %28562
  %28564 = sext i32 %28563 to i64
  %28565 = getelementptr inbounds double, ptr %28559, i64 %28564
  %28566 = load double, ptr %28565, align 8, !tbaa !11
  %28567 = fmul double 0xBCA4000000000001, %28566
  %28568 = call double @llvm.fmuladd.f64(double 0x3FD4F58312101B3F, double %28558, double %28567)
  %28569 = load ptr, ptr %7, align 8, !tbaa !9
  %28570 = load i32, ptr %12, align 4, !tbaa !5
  %28571 = load i32, ptr %8, align 4, !tbaa !5
  %28572 = mul nsw i32 2, %28571
  %28573 = add nsw i32 %28570, %28572
  %28574 = sext i32 %28573 to i64
  %28575 = getelementptr inbounds double, ptr %28569, i64 %28574
  %28576 = load double, ptr %28575, align 8, !tbaa !11
  %28577 = call double @llvm.fmuladd.f64(double 0xBCB0200000000000, double %28576, double %28568)
  %28578 = load ptr, ptr %7, align 8, !tbaa !9
  %28579 = load i32, ptr %12, align 4, !tbaa !5
  %28580 = load i32, ptr %8, align 4, !tbaa !5
  %28581 = mul nsw i32 3, %28580
  %28582 = add nsw i32 %28579, %28581
  %28583 = sext i32 %28582 to i64
  %28584 = getelementptr inbounds double, ptr %28578, i64 %28583
  %28585 = load double, ptr %28584, align 8, !tbaa !11
  %28586 = call double @llvm.fmuladd.f64(double 0xBCAD3FFFFFFFFFFF, double %28585, double %28577)
  %28587 = load ptr, ptr %7, align 8, !tbaa !9
  %28588 = load i32, ptr %12, align 4, !tbaa !5
  %28589 = load i32, ptr %8, align 4, !tbaa !5
  %28590 = mul nsw i32 4, %28589
  %28591 = add nsw i32 %28588, %28590
  %28592 = sext i32 %28591 to i64
  %28593 = getelementptr inbounds double, ptr %28587, i64 %28592
  %28594 = load double, ptr %28593, align 8, !tbaa !11
  %28595 = call double @llvm.fmuladd.f64(double 0x3CCF800000000000, double %28594, double %28586)
  %28596 = load ptr, ptr %7, align 8, !tbaa !9
  %28597 = load i32, ptr %12, align 4, !tbaa !5
  %28598 = load i32, ptr %8, align 4, !tbaa !5
  %28599 = mul nsw i32 5, %28598
  %28600 = add nsw i32 %28597, %28599
  %28601 = sext i32 %28600 to i64
  %28602 = getelementptr inbounds double, ptr %28596, i64 %28601
  %28603 = load double, ptr %28602, align 8, !tbaa !11
  %28604 = call double @llvm.fmuladd.f64(double 0x3CCE000000000000, double %28603, double %28595)
  %28605 = load ptr, ptr %7, align 8, !tbaa !9
  %28606 = load i32, ptr %12, align 4, !tbaa !5
  %28607 = load i32, ptr %8, align 4, !tbaa !5
  %28608 = mul nsw i32 6, %28607
  %28609 = add nsw i32 %28606, %28608
  %28610 = sext i32 %28609 to i64
  %28611 = getelementptr inbounds double, ptr %28605, i64 %28610
  %28612 = load double, ptr %28611, align 8, !tbaa !11
  %28613 = call double @llvm.fmuladd.f64(double 0x3CC9800000000000, double %28612, double %28604)
  %28614 = load ptr, ptr %7, align 8, !tbaa !9
  %28615 = load i32, ptr %12, align 4, !tbaa !5
  %28616 = load i32, ptr %8, align 4, !tbaa !5
  %28617 = mul nsw i32 7, %28616
  %28618 = add nsw i32 %28615, %28617
  %28619 = sext i32 %28618 to i64
  %28620 = getelementptr inbounds double, ptr %28614, i64 %28619
  %28621 = load double, ptr %28620, align 8, !tbaa !11
  %28622 = call double @llvm.fmuladd.f64(double 0x3CC7A00000000000, double %28621, double %28613)
  %28623 = load ptr, ptr %7, align 8, !tbaa !9
  %28624 = load i32, ptr %12, align 4, !tbaa !5
  %28625 = load i32, ptr %8, align 4, !tbaa !5
  %28626 = mul nsw i32 8, %28625
  %28627 = add nsw i32 %28624, %28626
  %28628 = sext i32 %28627 to i64
  %28629 = getelementptr inbounds double, ptr %28623, i64 %28628
  %28630 = load double, ptr %28629, align 8, !tbaa !11
  %28631 = call double @llvm.fmuladd.f64(double 0x3CCC000000000000, double %28630, double %28622)
  %28632 = load ptr, ptr %7, align 8, !tbaa !9
  %28633 = load i32, ptr %12, align 4, !tbaa !5
  %28634 = load i32, ptr %8, align 4, !tbaa !5
  %28635 = mul nsw i32 9, %28634
  %28636 = add nsw i32 %28633, %28635
  %28637 = sext i32 %28636 to i64
  %28638 = getelementptr inbounds double, ptr %28632, i64 %28637
  %28639 = load double, ptr %28638, align 8, !tbaa !11
  %28640 = call double @llvm.fmuladd.f64(double 0x3CCB800000000000, double %28639, double %28631)
  %28641 = load ptr, ptr %7, align 8, !tbaa !9
  %28642 = load i32, ptr %12, align 4, !tbaa !5
  %28643 = load i32, ptr %8, align 4, !tbaa !5
  %28644 = mul nsw i32 10, %28643
  %28645 = add nsw i32 %28642, %28644
  %28646 = sext i32 %28645 to i64
  %28647 = getelementptr inbounds double, ptr %28641, i64 %28646
  %28648 = load double, ptr %28647, align 8, !tbaa !11
  %28649 = call double @llvm.fmuladd.f64(double 0x40118E7E1D8191B3, double %28648, double %28640)
  %28650 = load ptr, ptr %7, align 8, !tbaa !9
  %28651 = load i32, ptr %12, align 4, !tbaa !5
  %28652 = load i32, ptr %8, align 4, !tbaa !5
  %28653 = mul nsw i32 11, %28652
  %28654 = add nsw i32 %28651, %28653
  %28655 = sext i32 %28654 to i64
  %28656 = getelementptr inbounds double, ptr %28650, i64 %28655
  %28657 = load double, ptr %28656, align 8, !tbaa !11
  %28658 = call double @llvm.fmuladd.f64(double 0xBCE1400000000000, double %28657, double %28649)
  %28659 = load ptr, ptr %7, align 8, !tbaa !9
  %28660 = load i32, ptr %12, align 4, !tbaa !5
  %28661 = load i32, ptr %8, align 4, !tbaa !5
  %28662 = mul nsw i32 12, %28661
  %28663 = add nsw i32 %28660, %28662
  %28664 = sext i32 %28663 to i64
  %28665 = getelementptr inbounds double, ptr %28659, i64 %28664
  %28666 = load double, ptr %28665, align 8, !tbaa !11
  %28667 = call double @llvm.fmuladd.f64(double 0xBCE283FFFFFFFFFF, double %28666, double %28658)
  %28668 = load ptr, ptr %7, align 8, !tbaa !9
  %28669 = load i32, ptr %12, align 4, !tbaa !5
  %28670 = load i32, ptr %8, align 4, !tbaa !5
  %28671 = mul nsw i32 13, %28670
  %28672 = add nsw i32 %28669, %28671
  %28673 = sext i32 %28672 to i64
  %28674 = getelementptr inbounds double, ptr %28668, i64 %28673
  %28675 = load double, ptr %28674, align 8, !tbaa !11
  %28676 = call double @llvm.fmuladd.f64(double 0xBCE3740000000000, double %28675, double %28667)
  %28677 = load ptr, ptr %7, align 8, !tbaa !9
  %28678 = load i32, ptr %12, align 4, !tbaa !5
  %28679 = load i32, ptr %8, align 4, !tbaa !5
  %28680 = mul nsw i32 14, %28679
  %28681 = add nsw i32 %28678, %28680
  %28682 = sext i32 %28681 to i64
  %28683 = getelementptr inbounds double, ptr %28677, i64 %28682
  %28684 = load double, ptr %28683, align 8, !tbaa !11
  %28685 = call double @llvm.fmuladd.f64(double 0x3D07D80000000000, double %28684, double %28676)
  %28686 = load ptr, ptr %7, align 8, !tbaa !9
  %28687 = load i32, ptr %12, align 4, !tbaa !5
  %28688 = load i32, ptr %8, align 4, !tbaa !5
  %28689 = mul nsw i32 15, %28688
  %28690 = add nsw i32 %28687, %28689
  %28691 = sext i32 %28690 to i64
  %28692 = getelementptr inbounds double, ptr %28686, i64 %28691
  %28693 = load double, ptr %28692, align 8, !tbaa !11
  %28694 = call double @llvm.fmuladd.f64(double 0x3D07DFFFFFFFFFFD, double %28693, double %28685)
  %28695 = load ptr, ptr %7, align 8, !tbaa !9
  %28696 = load i32, ptr %12, align 4, !tbaa !5
  %28697 = load i32, ptr %8, align 4, !tbaa !5
  %28698 = mul nsw i32 16, %28697
  %28699 = add nsw i32 %28696, %28698
  %28700 = sext i32 %28699 to i64
  %28701 = getelementptr inbounds double, ptr %28695, i64 %28700
  %28702 = load double, ptr %28701, align 8, !tbaa !11
  %28703 = call double @llvm.fmuladd.f64(double 0x3D06F80000000003, double %28702, double %28694)
  %28704 = load ptr, ptr %7, align 8, !tbaa !9
  %28705 = load i32, ptr %12, align 4, !tbaa !5
  %28706 = load i32, ptr %8, align 4, !tbaa !5
  %28707 = mul nsw i32 17, %28706
  %28708 = add nsw i32 %28705, %28707
  %28709 = sext i32 %28708 to i64
  %28710 = getelementptr inbounds double, ptr %28704, i64 %28709
  %28711 = load double, ptr %28710, align 8, !tbaa !11
  %28712 = call double @llvm.fmuladd.f64(double 0x3D061A0000000000, double %28711, double %28703)
  %28713 = load ptr, ptr %7, align 8, !tbaa !9
  %28714 = load i32, ptr %12, align 4, !tbaa !5
  %28715 = load i32, ptr %8, align 4, !tbaa !5
  %28716 = mul nsw i32 18, %28715
  %28717 = add nsw i32 %28714, %28716
  %28718 = sext i32 %28717 to i64
  %28719 = getelementptr inbounds double, ptr %28713, i64 %28718
  %28720 = load double, ptr %28719, align 8, !tbaa !11
  %28721 = call double @llvm.fmuladd.f64(double 0x3D06DFFFFFFFFFFF, double %28720, double %28712)
  %28722 = load ptr, ptr %7, align 8, !tbaa !9
  %28723 = load i32, ptr %12, align 4, !tbaa !5
  %28724 = load i32, ptr %8, align 4, !tbaa !5
  %28725 = mul nsw i32 19, %28724
  %28726 = add nsw i32 %28723, %28725
  %28727 = sext i32 %28726 to i64
  %28728 = getelementptr inbounds double, ptr %28722, i64 %28727
  %28729 = load double, ptr %28728, align 8, !tbaa !11
  %28730 = call double @llvm.fmuladd.f64(double 0x3D06D80000000001, double %28729, double %28721)
  store double %28730, ptr %11, align 8, !tbaa !11
  %28731 = load double, ptr %11, align 8, !tbaa !11
  %28732 = load ptr, ptr %9, align 8, !tbaa !9
  %28733 = load i32, ptr %12, align 4, !tbaa !5
  %28734 = load i32, ptr %10, align 4, !tbaa !5
  %28735 = mul nsw i32 110, %28734
  %28736 = add nsw i32 %28733, %28735
  %28737 = sext i32 %28736 to i64
  %28738 = getelementptr inbounds double, ptr %28732, i64 %28737
  %28739 = load double, ptr %28738, align 8, !tbaa !11
  %28740 = fadd double %28739, %28731
  store double %28740, ptr %28738, align 8, !tbaa !11
  %28741 = load ptr, ptr %7, align 8, !tbaa !9
  %28742 = load i32, ptr %12, align 4, !tbaa !5
  %28743 = load i32, ptr %8, align 4, !tbaa !5
  %28744 = mul nsw i32 0, %28743
  %28745 = add nsw i32 %28742, %28744
  %28746 = sext i32 %28745 to i64
  %28747 = getelementptr inbounds double, ptr %28741, i64 %28746
  %28748 = load double, ptr %28747, align 8, !tbaa !11
  %28749 = load ptr, ptr %7, align 8, !tbaa !9
  %28750 = load i32, ptr %12, align 4, !tbaa !5
  %28751 = load i32, ptr %8, align 4, !tbaa !5
  %28752 = mul nsw i32 1, %28751
  %28753 = add nsw i32 %28750, %28752
  %28754 = sext i32 %28753 to i64
  %28755 = getelementptr inbounds double, ptr %28749, i64 %28754
  %28756 = load double, ptr %28755, align 8, !tbaa !11
  %28757 = fmul double 0x3FD4F58312101A82, %28756
  %28758 = call double @llvm.fmuladd.f64(double 0xBCD1000000000000, double %28748, double %28757)
  %28759 = load ptr, ptr %7, align 8, !tbaa !9
  %28760 = load i32, ptr %12, align 4, !tbaa !5
  %28761 = load i32, ptr %8, align 4, !tbaa !5
  %28762 = mul nsw i32 2, %28761
  %28763 = add nsw i32 %28760, %28762
  %28764 = sext i32 %28763 to i64
  %28765 = getelementptr inbounds double, ptr %28759, i64 %28764
  %28766 = load double, ptr %28765, align 8, !tbaa !11
  %28767 = call double @llvm.fmuladd.f64(double 0x3CBA000000000000, double %28766, double %28758)
  %28768 = load ptr, ptr %7, align 8, !tbaa !9
  %28769 = load i32, ptr %12, align 4, !tbaa !5
  %28770 = load i32, ptr %8, align 4, !tbaa !5
  %28771 = mul nsw i32 3, %28770
  %28772 = add nsw i32 %28769, %28771
  %28773 = sext i32 %28772 to i64
  %28774 = getelementptr inbounds double, ptr %28768, i64 %28773
  %28775 = load double, ptr %28774, align 8, !tbaa !11
  %28776 = call double @llvm.fmuladd.f64(double 0x3CC5000000000000, double %28775, double %28767)
  %28777 = load ptr, ptr %7, align 8, !tbaa !9
  %28778 = load i32, ptr %12, align 4, !tbaa !5
  %28779 = load i32, ptr %8, align 4, !tbaa !5
  %28780 = mul nsw i32 4, %28779
  %28781 = add nsw i32 %28778, %28780
  %28782 = sext i32 %28781 to i64
  %28783 = getelementptr inbounds double, ptr %28777, i64 %28782
  %28784 = load double, ptr %28783, align 8, !tbaa !11
  %28785 = call double @llvm.fmuladd.f64(double 0xBCCA000000000000, double %28784, double %28776)
  %28786 = load ptr, ptr %7, align 8, !tbaa !9
  %28787 = load i32, ptr %12, align 4, !tbaa !5
  %28788 = load i32, ptr %8, align 4, !tbaa !5
  %28789 = mul nsw i32 5, %28788
  %28790 = add nsw i32 %28787, %28789
  %28791 = sext i32 %28790 to i64
  %28792 = getelementptr inbounds double, ptr %28786, i64 %28791
  %28793 = load double, ptr %28792, align 8, !tbaa !11
  %28794 = call double @llvm.fmuladd.f64(double 0xBCC2000000000000, double %28793, double %28785)
  %28795 = load ptr, ptr %7, align 8, !tbaa !9
  %28796 = load i32, ptr %12, align 4, !tbaa !5
  %28797 = load i32, ptr %8, align 4, !tbaa !5
  %28798 = mul nsw i32 6, %28797
  %28799 = add nsw i32 %28796, %28798
  %28800 = sext i32 %28799 to i64
  %28801 = getelementptr inbounds double, ptr %28795, i64 %28800
  %28802 = load double, ptr %28801, align 8, !tbaa !11
  %28803 = call double @llvm.fmuladd.f64(double 0x3CD1800000000000, double %28802, double %28794)
  %28804 = load ptr, ptr %7, align 8, !tbaa !9
  %28805 = load i32, ptr %12, align 4, !tbaa !5
  %28806 = load i32, ptr %8, align 4, !tbaa !5
  %28807 = mul nsw i32 7, %28806
  %28808 = add nsw i32 %28805, %28807
  %28809 = sext i32 %28808 to i64
  %28810 = getelementptr inbounds double, ptr %28804, i64 %28809
  %28811 = load double, ptr %28810, align 8, !tbaa !11
  %28812 = call double @llvm.fmuladd.f64(double 0x3CCF800000000000, double %28811, double %28803)
  %28813 = load ptr, ptr %7, align 8, !tbaa !9
  %28814 = load i32, ptr %12, align 4, !tbaa !5
  %28815 = load i32, ptr %8, align 4, !tbaa !5
  %28816 = mul nsw i32 8, %28815
  %28817 = add nsw i32 %28814, %28816
  %28818 = sext i32 %28817 to i64
  %28819 = getelementptr inbounds double, ptr %28813, i64 %28818
  %28820 = load double, ptr %28819, align 8, !tbaa !11
  %28821 = call double @llvm.fmuladd.f64(double 0x3CF1400000000000, double %28820, double %28812)
  %28822 = load ptr, ptr %7, align 8, !tbaa !9
  %28823 = load i32, ptr %12, align 4, !tbaa !5
  %28824 = load i32, ptr %8, align 4, !tbaa !5
  %28825 = mul nsw i32 9, %28824
  %28826 = add nsw i32 %28823, %28825
  %28827 = sext i32 %28826 to i64
  %28828 = getelementptr inbounds double, ptr %28822, i64 %28827
  %28829 = load double, ptr %28828, align 8, !tbaa !11
  %28830 = call double @llvm.fmuladd.f64(double 0x3CF0400000000000, double %28829, double %28821)
  %28831 = load ptr, ptr %7, align 8, !tbaa !9
  %28832 = load i32, ptr %12, align 4, !tbaa !5
  %28833 = load i32, ptr %8, align 4, !tbaa !5
  %28834 = mul nsw i32 10, %28833
  %28835 = add nsw i32 %28832, %28834
  %28836 = sext i32 %28835 to i64
  %28837 = getelementptr inbounds double, ptr %28831, i64 %28836
  %28838 = load double, ptr %28837, align 8, !tbaa !11
  %28839 = call double @llvm.fmuladd.f64(double 0xBD128FFFFFFFFFFF, double %28838, double %28830)
  %28840 = load ptr, ptr %7, align 8, !tbaa !9
  %28841 = load i32, ptr %12, align 4, !tbaa !5
  %28842 = load i32, ptr %8, align 4, !tbaa !5
  %28843 = mul nsw i32 11, %28842
  %28844 = add nsw i32 %28841, %28843
  %28845 = sext i32 %28844 to i64
  %28846 = getelementptr inbounds double, ptr %28840, i64 %28845
  %28847 = load double, ptr %28846, align 8, !tbaa !11
  %28848 = call double @llvm.fmuladd.f64(double 0x40118E7E1D819110, double %28847, double %28839)
  %28849 = load ptr, ptr %7, align 8, !tbaa !9
  %28850 = load i32, ptr %12, align 4, !tbaa !5
  %28851 = load i32, ptr %8, align 4, !tbaa !5
  %28852 = mul nsw i32 12, %28851
  %28853 = add nsw i32 %28850, %28852
  %28854 = sext i32 %28853 to i64
  %28855 = getelementptr inbounds double, ptr %28849, i64 %28854
  %28856 = load double, ptr %28855, align 8, !tbaa !11
  %28857 = call double @llvm.fmuladd.f64(double 0x3CFD900000000000, double %28856, double %28848)
  %28858 = load ptr, ptr %7, align 8, !tbaa !9
  %28859 = load i32, ptr %12, align 4, !tbaa !5
  %28860 = load i32, ptr %8, align 4, !tbaa !5
  %28861 = mul nsw i32 13, %28860
  %28862 = add nsw i32 %28859, %28861
  %28863 = sext i32 %28862 to i64
  %28864 = getelementptr inbounds double, ptr %28858, i64 %28863
  %28865 = load double, ptr %28864, align 8, !tbaa !11
  %28866 = call double @llvm.fmuladd.f64(double 0x3D01500000000000, double %28865, double %28857)
  %28867 = load ptr, ptr %7, align 8, !tbaa !9
  %28868 = load i32, ptr %12, align 4, !tbaa !5
  %28869 = load i32, ptr %8, align 4, !tbaa !5
  %28870 = mul nsw i32 14, %28869
  %28871 = add nsw i32 %28868, %28870
  %28872 = sext i32 %28871 to i64
  %28873 = getelementptr inbounds double, ptr %28867, i64 %28872
  %28874 = load double, ptr %28873, align 8, !tbaa !11
  %28875 = call double @llvm.fmuladd.f64(double 0xBD04A00000000000, double %28874, double %28866)
  %28876 = load ptr, ptr %7, align 8, !tbaa !9
  %28877 = load i32, ptr %12, align 4, !tbaa !5
  %28878 = load i32, ptr %8, align 4, !tbaa !5
  %28879 = mul nsw i32 15, %28878
  %28880 = add nsw i32 %28877, %28879
  %28881 = sext i32 %28880 to i64
  %28882 = getelementptr inbounds double, ptr %28876, i64 %28881
  %28883 = load double, ptr %28882, align 8, !tbaa !11
  %28884 = call double @llvm.fmuladd.f64(double 0xBD02E00000000000, double %28883, double %28875)
  %28885 = load ptr, ptr %7, align 8, !tbaa !9
  %28886 = load i32, ptr %12, align 4, !tbaa !5
  %28887 = load i32, ptr %8, align 4, !tbaa !5
  %28888 = mul nsw i32 16, %28887
  %28889 = add nsw i32 %28886, %28888
  %28890 = sext i32 %28889 to i64
  %28891 = getelementptr inbounds double, ptr %28885, i64 %28890
  %28892 = load double, ptr %28891, align 8, !tbaa !11
  %28893 = call double @llvm.fmuladd.f64(double 0x3D07300000000002, double %28892, double %28884)
  %28894 = load ptr, ptr %7, align 8, !tbaa !9
  %28895 = load i32, ptr %12, align 4, !tbaa !5
  %28896 = load i32, ptr %8, align 4, !tbaa !5
  %28897 = mul nsw i32 17, %28896
  %28898 = add nsw i32 %28895, %28897
  %28899 = sext i32 %28898 to i64
  %28900 = getelementptr inbounds double, ptr %28894, i64 %28899
  %28901 = load double, ptr %28900, align 8, !tbaa !11
  %28902 = call double @llvm.fmuladd.f64(double 0x3D03980000000000, double %28901, double %28893)
  %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 18, %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 = call double @llvm.fmuladd.f64(double 0x3D2A980000000000, double %28910, double %28902)
  %28912 = load ptr, ptr %7, align 8, !tbaa !9
  %28913 = load i32, ptr %12, align 4, !tbaa !5
  %28914 = load i32, ptr %8, align 4, !tbaa !5
  %28915 = mul nsw i32 19, %28914
  %28916 = add nsw i32 %28913, %28915
  %28917 = sext i32 %28916 to i64
  %28918 = getelementptr inbounds double, ptr %28912, i64 %28917
  %28919 = load double, ptr %28918, align 8, !tbaa !11
  %28920 = call double @llvm.fmuladd.f64(double 0x3D2A480000000000, double %28919, double %28911)
  store double %28920, ptr %11, align 8, !tbaa !11
  %28921 = load double, ptr %11, align 8, !tbaa !11
  %28922 = load ptr, ptr %9, align 8, !tbaa !9
  %28923 = load i32, ptr %12, align 4, !tbaa !5
  %28924 = load i32, ptr %10, align 4, !tbaa !5
  %28925 = mul nsw i32 111, %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 = fadd double %28929, %28921
  store double %28930, ptr %28928, align 8, !tbaa !11
  %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 0, %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 = load ptr, ptr %7, align 8, !tbaa !9
  %28940 = load i32, ptr %12, align 4, !tbaa !5
  %28941 = load i32, ptr %8, align 4, !tbaa !5
  %28942 = mul nsw i32 1, %28941
  %28943 = add nsw i32 %28940, %28942
  %28944 = sext i32 %28943 to i64
  %28945 = getelementptr inbounds double, ptr %28939, i64 %28944
  %28946 = load double, ptr %28945, align 8, !tbaa !11
  %28947 = fmul double 0x3CC0800000000000, %28946
  %28948 = call double @llvm.fmuladd.f64(double 0xBCDA400000000000, double %28938, double %28947)
  %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 2, %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 0x3FD4F58312101A79, 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 3, %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 0x3CCB800000000000, 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 4, %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 0x3CEDEFFFFFFFFFFF, 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 5, %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 0x3CC7400000000000, 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 6, %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 0xBCBBC00000000001, 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 7, %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 0x3CF03C0000000000, 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 8, %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 0x3CC3800000000000, 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 9, %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 0xBCD0000000000000, 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 10, %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 0xBD11640000000000, 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 11, %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 0x3CFF700000000000, 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 12, %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 0x40118E7E1D81910D, 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 13, %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 0x3CFDD00000000000, 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 14, %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 0x3D2AFF0000000001, 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 15, %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 0x3D05940000000000, double %29073, double %29065)
  %29075 = load ptr, ptr %7, align 8, !tbaa !9
  %29076 = load i32, ptr %12, align 4, !tbaa !5
  %29077 = load i32, ptr %8, align 4, !tbaa !5
  %29078 = mul nsw i32 16, %29077
  %29079 = add nsw i32 %29076, %29078
  %29080 = sext i32 %29079 to i64
  %29081 = getelementptr inbounds double, ptr %29075, i64 %29080
  %29082 = load double, ptr %29081, align 8, !tbaa !11
  %29083 = call double @llvm.fmuladd.f64(double 0xBCFD7C0000000000, double %29082, double %29074)
  %29084 = load ptr, ptr %7, align 8, !tbaa !9
  %29085 = load i32, ptr %12, align 4, !tbaa !5
  %29086 = load i32, ptr %8, align 4, !tbaa !5
  %29087 = mul nsw i32 17, %29086
  %29088 = add nsw i32 %29085, %29087
  %29089 = sext i32 %29088 to i64
  %29090 = getelementptr inbounds double, ptr %29084, i64 %29089
  %29091 = load double, ptr %29090, align 8, !tbaa !11
  %29092 = call double @llvm.fmuladd.f64(double 0x3D2BB78000000000, double %29091, double %29083)
  %29093 = load ptr, ptr %7, align 8, !tbaa !9
  %29094 = load i32, ptr %12, align 4, !tbaa !5
  %29095 = load i32, ptr %8, align 4, !tbaa !5
  %29096 = mul nsw i32 18, %29095
  %29097 = add nsw i32 %29094, %29096
  %29098 = sext i32 %29097 to i64
  %29099 = getelementptr inbounds double, ptr %29093, i64 %29098
  %29100 = load double, ptr %29099, align 8, !tbaa !11
  %29101 = call double @llvm.fmuladd.f64(double 0x3D06580000000000, double %29100, double %29092)
  %29102 = load ptr, ptr %7, align 8, !tbaa !9
  %29103 = load i32, ptr %12, align 4, !tbaa !5
  %29104 = load i32, ptr %8, align 4, !tbaa !5
  %29105 = mul nsw i32 19, %29104
  %29106 = add nsw i32 %29103, %29105
  %29107 = sext i32 %29106 to i64
  %29108 = getelementptr inbounds double, ptr %29102, i64 %29107
  %29109 = load double, ptr %29108, align 8, !tbaa !11
  %29110 = call double @llvm.fmuladd.f64(double 0xBD03000000000000, double %29109, double %29101)
  store double %29110, ptr %11, align 8, !tbaa !11
  %29111 = load double, ptr %11, align 8, !tbaa !11
  %29112 = load ptr, ptr %9, align 8, !tbaa !9
  %29113 = load i32, ptr %12, align 4, !tbaa !5
  %29114 = load i32, ptr %10, align 4, !tbaa !5
  %29115 = mul nsw i32 112, %29114
  %29116 = add nsw i32 %29113, %29115
  %29117 = sext i32 %29116 to i64
  %29118 = getelementptr inbounds double, ptr %29112, i64 %29117
  %29119 = load double, ptr %29118, align 8, !tbaa !11
  %29120 = fadd double %29119, %29111
  store double %29120, ptr %29118, align 8, !tbaa !11
  %29121 = load ptr, ptr %7, align 8, !tbaa !9
  %29122 = load i32, ptr %12, align 4, !tbaa !5
  %29123 = load i32, ptr %8, align 4, !tbaa !5
  %29124 = mul nsw i32 0, %29123
  %29125 = add nsw i32 %29122, %29124
  %29126 = sext i32 %29125 to i64
  %29127 = getelementptr inbounds double, ptr %29121, i64 %29126
  %29128 = load double, ptr %29127, align 8, !tbaa !11
  %29129 = load ptr, ptr %7, align 8, !tbaa !9
  %29130 = load i32, ptr %12, align 4, !tbaa !5
  %29131 = load i32, ptr %8, align 4, !tbaa !5
  %29132 = mul nsw i32 1, %29131
  %29133 = add nsw i32 %29130, %29132
  %29134 = sext i32 %29133 to i64
  %29135 = getelementptr inbounds double, ptr %29129, i64 %29134
  %29136 = load double, ptr %29135, align 8, !tbaa !11
  %29137 = fmul double 0x3CC0800000000000, %29136
  %29138 = call double @llvm.fmuladd.f64(double 0xBCD93FFFFFFFFFFF, double %29128, double %29137)
  %29139 = load ptr, ptr %7, align 8, !tbaa !9
  %29140 = load i32, ptr %12, align 4, !tbaa !5
  %29141 = load i32, ptr %8, align 4, !tbaa !5
  %29142 = mul nsw i32 2, %29141
  %29143 = add nsw i32 %29140, %29142
  %29144 = sext i32 %29143 to i64
  %29145 = getelementptr inbounds double, ptr %29139, i64 %29144
  %29146 = load double, ptr %29145, align 8, !tbaa !11
  %29147 = call double @llvm.fmuladd.f64(double 0x3CC0600000000000, double %29146, double %29138)
  %29148 = load ptr, ptr %7, align 8, !tbaa !9
  %29149 = load i32, ptr %12, align 4, !tbaa !5
  %29150 = load i32, ptr %8, align 4, !tbaa !5
  %29151 = mul nsw i32 3, %29150
  %29152 = add nsw i32 %29149, %29151
  %29153 = sext i32 %29152 to i64
  %29154 = getelementptr inbounds double, ptr %29148, i64 %29153
  %29155 = load double, ptr %29154, align 8, !tbaa !11
  %29156 = call double @llvm.fmuladd.f64(double 0x3FD4F58312101A7B, double %29155, double %29147)
  %29157 = load ptr, ptr %7, align 8, !tbaa !9
  %29158 = load i32, ptr %12, align 4, !tbaa !5
  %29159 = load i32, ptr %8, align 4, !tbaa !5
  %29160 = mul nsw i32 4, %29159
  %29161 = add nsw i32 %29158, %29160
  %29162 = sext i32 %29161 to i64
  %29163 = getelementptr inbounds double, ptr %29157, i64 %29162
  %29164 = load double, ptr %29163, align 8, !tbaa !11
  %29165 = call double @llvm.fmuladd.f64(double 0x3CC8C00000000000, double %29164, double %29156)
  %29166 = load ptr, ptr %7, align 8, !tbaa !9
  %29167 = load i32, ptr %12, align 4, !tbaa !5
  %29168 = load i32, ptr %8, align 4, !tbaa !5
  %29169 = mul nsw i32 5, %29168
  %29170 = add nsw i32 %29167, %29169
  %29171 = sext i32 %29170 to i64
  %29172 = getelementptr inbounds double, ptr %29166, i64 %29171
  %29173 = load double, ptr %29172, align 8, !tbaa !11
  %29174 = call double @llvm.fmuladd.f64(double 0x3CEED00000000001, double %29173, double %29165)
  %29175 = load ptr, ptr %7, align 8, !tbaa !9
  %29176 = load i32, ptr %12, align 4, !tbaa !5
  %29177 = load i32, ptr %8, align 4, !tbaa !5
  %29178 = mul nsw i32 6, %29177
  %29179 = add nsw i32 %29176, %29178
  %29180 = sext i32 %29179 to i64
  %29181 = getelementptr inbounds double, ptr %29175, i64 %29180
  %29182 = load double, ptr %29181, align 8, !tbaa !11
  %29183 = call double @llvm.fmuladd.f64(double 0x3CEFF7FFFFFFFFFF, double %29182, double %29174)
  %29184 = load ptr, ptr %7, align 8, !tbaa !9
  %29185 = load i32, ptr %12, align 4, !tbaa !5
  %29186 = load i32, ptr %8, align 4, !tbaa !5
  %29187 = mul nsw i32 7, %29186
  %29188 = add nsw i32 %29185, %29187
  %29189 = sext i32 %29188 to i64
  %29190 = getelementptr inbounds double, ptr %29184, i64 %29189
  %29191 = load double, ptr %29190, align 8, !tbaa !11
  %29192 = call double @llvm.fmuladd.f64(double 0xBCCCE00000000000, double %29191, double %29183)
  %29193 = load ptr, ptr %7, align 8, !tbaa !9
  %29194 = load i32, ptr %12, align 4, !tbaa !5
  %29195 = load i32, ptr %8, align 4, !tbaa !5
  %29196 = mul nsw i32 8, %29195
  %29197 = add nsw i32 %29194, %29196
  %29198 = sext i32 %29197 to i64
  %29199 = getelementptr inbounds double, ptr %29193, i64 %29198
  %29200 = load double, ptr %29199, align 8, !tbaa !11
  %29201 = call double @llvm.fmuladd.f64(double 0xBCC2000000000000, double %29200, double %29192)
  %29202 = load ptr, ptr %7, align 8, !tbaa !9
  %29203 = load i32, ptr %12, align 4, !tbaa !5
  %29204 = load i32, ptr %8, align 4, !tbaa !5
  %29205 = mul nsw i32 9, %29204
  %29206 = add nsw i32 %29203, %29205
  %29207 = sext i32 %29206 to i64
  %29208 = getelementptr inbounds double, ptr %29202, i64 %29207
  %29209 = load double, ptr %29208, align 8, !tbaa !11
  %29210 = call double @llvm.fmuladd.f64(double 0x3CC9800000000000, double %29209, double %29201)
  %29211 = load ptr, ptr %7, align 8, !tbaa !9
  %29212 = load i32, ptr %12, align 4, !tbaa !5
  %29213 = load i32, ptr %8, align 4, !tbaa !5
  %29214 = mul nsw i32 10, %29213
  %29215 = add nsw i32 %29212, %29214
  %29216 = sext i32 %29215 to i64
  %29217 = getelementptr inbounds double, ptr %29211, i64 %29216
  %29218 = load double, ptr %29217, align 8, !tbaa !11
  %29219 = call double @llvm.fmuladd.f64(double 0xBD11F40000000000, double %29218, double %29210)
  %29220 = load ptr, ptr %7, align 8, !tbaa !9
  %29221 = load i32, ptr %12, align 4, !tbaa !5
  %29222 = load i32, ptr %8, align 4, !tbaa !5
  %29223 = mul nsw i32 11, %29222
  %29224 = add nsw i32 %29221, %29223
  %29225 = sext i32 %29224 to i64
  %29226 = getelementptr inbounds double, ptr %29220, i64 %29225
  %29227 = load double, ptr %29226, align 8, !tbaa !11
  %29228 = call double @llvm.fmuladd.f64(double 0x3CFDF00000000000, double %29227, double %29219)
  %29229 = load ptr, ptr %7, align 8, !tbaa !9
  %29230 = load i32, ptr %12, align 4, !tbaa !5
  %29231 = load i32, ptr %8, align 4, !tbaa !5
  %29232 = mul nsw i32 12, %29231
  %29233 = add nsw i32 %29230, %29232
  %29234 = sext i32 %29233 to i64
  %29235 = getelementptr inbounds double, ptr %29229, i64 %29234
  %29236 = load double, ptr %29235, align 8, !tbaa !11
  %29237 = call double @llvm.fmuladd.f64(double 0x3CFE2C0000000000, double %29236, double %29228)
  %29238 = load ptr, ptr %7, align 8, !tbaa !9
  %29239 = load i32, ptr %12, align 4, !tbaa !5
  %29240 = load i32, ptr %8, align 4, !tbaa !5
  %29241 = mul nsw i32 13, %29240
  %29242 = add nsw i32 %29239, %29241
  %29243 = sext i32 %29242 to i64
  %29244 = getelementptr inbounds double, ptr %29238, i64 %29243
  %29245 = load double, ptr %29244, align 8, !tbaa !11
  %29246 = call double @llvm.fmuladd.f64(double 0x40118E7E1D81910E, double %29245, double %29237)
  %29247 = load ptr, ptr %7, align 8, !tbaa !9
  %29248 = load i32, ptr %12, align 4, !tbaa !5
  %29249 = load i32, ptr %8, align 4, !tbaa !5
  %29250 = mul nsw i32 14, %29249
  %29251 = add nsw i32 %29248, %29250
  %29252 = sext i32 %29251 to i64
  %29253 = getelementptr inbounds double, ptr %29247, i64 %29252
  %29254 = load double, ptr %29253, align 8, !tbaa !11
  %29255 = call double @llvm.fmuladd.f64(double 0x3D05CC0000000000, double %29254, double %29246)
  %29256 = load ptr, ptr %7, align 8, !tbaa !9
  %29257 = load i32, ptr %12, align 4, !tbaa !5
  %29258 = load i32, ptr %8, align 4, !tbaa !5
  %29259 = mul nsw i32 15, %29258
  %29260 = add nsw i32 %29257, %29259
  %29261 = sext i32 %29260 to i64
  %29262 = getelementptr inbounds double, ptr %29256, i64 %29261
  %29263 = load double, ptr %29262, align 8, !tbaa !11
  %29264 = call double @llvm.fmuladd.f64(double 0x3D2B7D0000000001, double %29263, double %29255)
  %29265 = load ptr, ptr %7, align 8, !tbaa !9
  %29266 = load i32, ptr %12, align 4, !tbaa !5
  %29267 = load i32, ptr %8, align 4, !tbaa !5
  %29268 = mul nsw i32 16, %29267
  %29269 = add nsw i32 %29266, %29268
  %29270 = sext i32 %29269 to i64
  %29271 = getelementptr inbounds double, ptr %29265, i64 %29270
  %29272 = load double, ptr %29271, align 8, !tbaa !11
  %29273 = call double @llvm.fmuladd.f64(double 0x3D2A8F8000000000, double %29272, double %29264)
  %29274 = load ptr, ptr %7, align 8, !tbaa !9
  %29275 = load i32, ptr %12, align 4, !tbaa !5
  %29276 = load i32, ptr %8, align 4, !tbaa !5
  %29277 = mul nsw i32 17, %29276
  %29278 = add nsw i32 %29275, %29277
  %29279 = sext i32 %29278 to i64
  %29280 = getelementptr inbounds double, ptr %29274, i64 %29279
  %29281 = load double, ptr %29280, align 8, !tbaa !11
  %29282 = call double @llvm.fmuladd.f64(double 0xBCF99C0000000000, double %29281, double %29273)
  %29283 = load ptr, ptr %7, align 8, !tbaa !9
  %29284 = load i32, ptr %12, align 4, !tbaa !5
  %29285 = load i32, ptr %8, align 4, !tbaa !5
  %29286 = mul nsw i32 18, %29285
  %29287 = add nsw i32 %29284, %29286
  %29288 = sext i32 %29287 to i64
  %29289 = getelementptr inbounds double, ptr %29283, i64 %29288
  %29290 = load double, ptr %29289, align 8, !tbaa !11
  %29291 = call double @llvm.fmuladd.f64(double 0xBD02C00000000000, double %29290, double %29282)
  %29292 = load ptr, ptr %7, align 8, !tbaa !9
  %29293 = load i32, ptr %12, align 4, !tbaa !5
  %29294 = load i32, ptr %8, align 4, !tbaa !5
  %29295 = mul nsw i32 19, %29294
  %29296 = add nsw i32 %29293, %29295
  %29297 = sext i32 %29296 to i64
  %29298 = getelementptr inbounds double, ptr %29292, i64 %29297
  %29299 = load double, ptr %29298, align 8, !tbaa !11
  %29300 = call double @llvm.fmuladd.f64(double 0x3D06F80000000003, double %29299, double %29291)
  store double %29300, ptr %11, align 8, !tbaa !11
  %29301 = load double, ptr %11, align 8, !tbaa !11
  %29302 = load ptr, ptr %9, align 8, !tbaa !9
  %29303 = load i32, ptr %12, align 4, !tbaa !5
  %29304 = load i32, ptr %10, align 4, !tbaa !5
  %29305 = mul nsw i32 113, %29304
  %29306 = add nsw i32 %29303, %29305
  %29307 = sext i32 %29306 to i64
  %29308 = getelementptr inbounds double, ptr %29302, i64 %29307
  %29309 = load double, ptr %29308, align 8, !tbaa !11
  %29310 = fadd double %29309, %29301
  store double %29310, ptr %29308, align 8, !tbaa !11
  %29311 = load ptr, ptr %7, align 8, !tbaa !9
  %29312 = load i32, ptr %12, align 4, !tbaa !5
  %29313 = load i32, ptr %8, align 4, !tbaa !5
  %29314 = mul nsw i32 0, %29313
  %29315 = add nsw i32 %29312, %29314
  %29316 = sext i32 %29315 to i64
  %29317 = getelementptr inbounds double, ptr %29311, i64 %29316
  %29318 = load double, ptr %29317, align 8, !tbaa !11
  %29319 = load ptr, ptr %7, align 8, !tbaa !9
  %29320 = load i32, ptr %12, align 4, !tbaa !5
  %29321 = load i32, ptr %8, align 4, !tbaa !5
  %29322 = mul nsw i32 1, %29321
  %29323 = add nsw i32 %29320, %29322
  %29324 = sext i32 %29323 to i64
  %29325 = getelementptr inbounds double, ptr %29319, i64 %29324
  %29326 = load double, ptr %29325, align 8, !tbaa !11
  %29327 = fmul double 0xBC98000000000000, %29326
  %29328 = call double @llvm.fmuladd.f64(double 0x3CD73FFFFFFFFFFE, double %29318, double %29327)
  %29329 = load ptr, ptr %7, align 8, !tbaa !9
  %29330 = load i32, ptr %12, align 4, !tbaa !5
  %29331 = load i32, ptr %8, align 4, !tbaa !5
  %29332 = mul nsw i32 2, %29331
  %29333 = add nsw i32 %29330, %29332
  %29334 = sext i32 %29333 to i64
  %29335 = getelementptr inbounds double, ptr %29329, i64 %29334
  %29336 = load double, ptr %29335, align 8, !tbaa !11
  %29337 = call double @llvm.fmuladd.f64(double 0x3CDACFFFFFFFFFFE, double %29336, double %29328)
  %29338 = load ptr, ptr %7, align 8, !tbaa !9
  %29339 = load i32, ptr %12, align 4, !tbaa !5
  %29340 = load i32, ptr %8, align 4, !tbaa !5
  %29341 = mul nsw i32 3, %29340
  %29342 = add nsw i32 %29339, %29341
  %29343 = sext i32 %29342 to i64
  %29344 = getelementptr inbounds double, ptr %29338, i64 %29343
  %29345 = load double, ptr %29344, align 8, !tbaa !11
  %29346 = call double @llvm.fmuladd.f64(double 0x3CB2C00000000001, double %29345, double %29337)
  %29347 = load ptr, ptr %7, align 8, !tbaa !9
  %29348 = load i32, ptr %12, align 4, !tbaa !5
  %29349 = load i32, ptr %8, align 4, !tbaa !5
  %29350 = mul nsw i32 4, %29349
  %29351 = add nsw i32 %29348, %29350
  %29352 = sext i32 %29351 to i64
  %29353 = getelementptr inbounds double, ptr %29347, i64 %29352
  %29354 = load double, ptr %29353, align 8, !tbaa !11
  %29355 = call double @llvm.fmuladd.f64(double 0x3FD4F58312101B3F, double %29354, double %29346)
  %29356 = load ptr, ptr %7, align 8, !tbaa !9
  %29357 = load i32, ptr %12, align 4, !tbaa !5
  %29358 = load i32, ptr %8, align 4, !tbaa !5
  %29359 = mul nsw i32 5, %29358
  %29360 = add nsw i32 %29357, %29359
  %29361 = sext i32 %29360 to i64
  %29362 = getelementptr inbounds double, ptr %29356, i64 %29361
  %29363 = load double, ptr %29362, align 8, !tbaa !11
  %29364 = call double @llvm.fmuladd.f64(double 0xBCC8000000000000, double %29363, double %29355)
  %29365 = load ptr, ptr %7, align 8, !tbaa !9
  %29366 = load i32, ptr %12, align 4, !tbaa !5
  %29367 = load i32, ptr %8, align 4, !tbaa !5
  %29368 = mul nsw i32 6, %29367
  %29369 = add nsw i32 %29366, %29368
  %29370 = sext i32 %29369 to i64
  %29371 = getelementptr inbounds double, ptr %29365, i64 %29370
  %29372 = load double, ptr %29371, align 8, !tbaa !11
  %29373 = call double @llvm.fmuladd.f64(double 0xBCA7000000000002, double %29372, double %29364)
  %29374 = load ptr, ptr %7, align 8, !tbaa !9
  %29375 = load i32, ptr %12, align 4, !tbaa !5
  %29376 = load i32, ptr %8, align 4, !tbaa !5
  %29377 = mul nsw i32 7, %29376
  %29378 = add nsw i32 %29375, %29377
  %29379 = sext i32 %29378 to i64
  %29380 = getelementptr inbounds double, ptr %29374, i64 %29379
  %29381 = load double, ptr %29380, align 8, !tbaa !11
  %29382 = call double @llvm.fmuladd.f64(double 0x3CCF400000000000, double %29381, double %29373)
  %29383 = load ptr, ptr %7, align 8, !tbaa !9
  %29384 = load i32, ptr %12, align 4, !tbaa !5
  %29385 = load i32, ptr %8, align 4, !tbaa !5
  %29386 = mul nsw i32 8, %29385
  %29387 = add nsw i32 %29384, %29386
  %29388 = sext i32 %29387 to i64
  %29389 = getelementptr inbounds double, ptr %29383, i64 %29388
  %29390 = load double, ptr %29389, align 8, !tbaa !11
  %29391 = call double @llvm.fmuladd.f64(double 0xBCB0000000000000, double %29390, double %29382)
  %29392 = load ptr, ptr %7, align 8, !tbaa !9
  %29393 = load i32, ptr %12, align 4, !tbaa !5
  %29394 = load i32, ptr %8, align 4, !tbaa !5
  %29395 = mul nsw i32 9, %29394
  %29396 = add nsw i32 %29393, %29395
  %29397 = sext i32 %29396 to i64
  %29398 = getelementptr inbounds double, ptr %29392, i64 %29397
  %29399 = load double, ptr %29398, align 8, !tbaa !11
  %29400 = call double @llvm.fmuladd.f64(double 0xBCDD800000000001, double %29399, double %29391)
  %29401 = load ptr, ptr %7, align 8, !tbaa !9
  %29402 = load i32, ptr %12, align 4, !tbaa !5
  %29403 = load i32, ptr %8, align 4, !tbaa !5
  %29404 = mul nsw i32 10, %29403
  %29405 = add nsw i32 %29402, %29404
  %29406 = sext i32 %29405 to i64
  %29407 = getelementptr inbounds double, ptr %29401, i64 %29406
  %29408 = load double, ptr %29407, align 8, !tbaa !11
  %29409 = call double @llvm.fmuladd.f64(double 0x3D15A3FFFFFFFFFF, double %29408, double %29400)
  %29410 = load ptr, ptr %7, align 8, !tbaa !9
  %29411 = load i32, ptr %12, align 4, !tbaa !5
  %29412 = load i32, ptr %8, align 4, !tbaa !5
  %29413 = mul nsw i32 11, %29412
  %29414 = add nsw i32 %29411, %29413
  %29415 = sext i32 %29414 to i64
  %29416 = getelementptr inbounds double, ptr %29410, i64 %29415
  %29417 = load double, ptr %29416, align 8, !tbaa !11
  %29418 = call double @llvm.fmuladd.f64(double 0xBCE5BFFFFFFFFFFF, double %29417, double %29409)
  %29419 = load ptr, ptr %7, align 8, !tbaa !9
  %29420 = load i32, ptr %12, align 4, !tbaa !5
  %29421 = load i32, ptr %8, align 4, !tbaa !5
  %29422 = mul nsw i32 12, %29421
  %29423 = add nsw i32 %29420, %29422
  %29424 = sext i32 %29423 to i64
  %29425 = getelementptr inbounds double, ptr %29419, i64 %29424
  %29426 = load double, ptr %29425, align 8, !tbaa !11
  %29427 = call double @llvm.fmuladd.f64(double 0x3D13BCFFFFFFFFFF, double %29426, double %29418)
  %29428 = load ptr, ptr %7, align 8, !tbaa !9
  %29429 = load i32, ptr %12, align 4, !tbaa !5
  %29430 = load i32, ptr %8, align 4, !tbaa !5
  %29431 = mul nsw i32 13, %29430
  %29432 = add nsw i32 %29429, %29431
  %29433 = sext i32 %29432 to i64
  %29434 = getelementptr inbounds double, ptr %29428, i64 %29433
  %29435 = load double, ptr %29434, align 8, !tbaa !11
  %29436 = call double @llvm.fmuladd.f64(double 0x3CEA980000000001, double %29435, double %29427)
  %29437 = load ptr, ptr %7, align 8, !tbaa !9
  %29438 = load i32, ptr %12, align 4, !tbaa !5
  %29439 = load i32, ptr %8, align 4, !tbaa !5
  %29440 = mul nsw i32 14, %29439
  %29441 = add nsw i32 %29438, %29440
  %29442 = sext i32 %29441 to i64
  %29443 = getelementptr inbounds double, ptr %29437, i64 %29442
  %29444 = load double, ptr %29443, align 8, !tbaa !11
  %29445 = call double @llvm.fmuladd.f64(double 0x40118E7E1D8191B3, double %29444, double %29436)
  %29446 = load ptr, ptr %7, align 8, !tbaa !9
  %29447 = load i32, ptr %12, align 4, !tbaa !5
  %29448 = load i32, ptr %8, align 4, !tbaa !5
  %29449 = mul nsw i32 15, %29448
  %29450 = add nsw i32 %29447, %29449
  %29451 = sext i32 %29450 to i64
  %29452 = getelementptr inbounds double, ptr %29446, i64 %29451
  %29453 = load double, ptr %29452, align 8, !tbaa !11
  %29454 = call double @llvm.fmuladd.f64(double 0xBD07000000000000, double %29453, double %29445)
  %29455 = load ptr, ptr %7, align 8, !tbaa !9
  %29456 = load i32, ptr %12, align 4, !tbaa !5
  %29457 = load i32, ptr %8, align 4, !tbaa !5
  %29458 = mul nsw i32 16, %29457
  %29459 = add nsw i32 %29456, %29458
  %29460 = sext i32 %29459 to i64
  %29461 = getelementptr inbounds double, ptr %29455, i64 %29460
  %29462 = load double, ptr %29461, align 8, !tbaa !11
  %29463 = call double @llvm.fmuladd.f64(double 0xBCF4380000000000, double %29462, double %29454)
  %29464 = load ptr, ptr %7, align 8, !tbaa !9
  %29465 = load i32, ptr %12, align 4, !tbaa !5
  %29466 = load i32, ptr %8, align 4, !tbaa !5
  %29467 = mul nsw i32 17, %29466
  %29468 = add nsw i32 %29465, %29467
  %29469 = sext i32 %29468 to i64
  %29470 = getelementptr inbounds double, ptr %29464, i64 %29469
  %29471 = load double, ptr %29470, align 8, !tbaa !11
  %29472 = call double @llvm.fmuladd.f64(double 0x3D0AF40000000001, double %29471, double %29463)
  %29473 = load ptr, ptr %7, align 8, !tbaa !9
  %29474 = load i32, ptr %12, align 4, !tbaa !5
  %29475 = load i32, ptr %8, align 4, !tbaa !5
  %29476 = mul nsw i32 18, %29475
  %29477 = add nsw i32 %29474, %29476
  %29478 = sext i32 %29477 to i64
  %29479 = getelementptr inbounds double, ptr %29473, i64 %29478
  %29480 = load double, ptr %29479, align 8, !tbaa !11
  %29481 = call double @llvm.fmuladd.f64(double 0xBCF6000000000000, double %29480, double %29472)
  %29482 = load ptr, ptr %7, align 8, !tbaa !9
  %29483 = load i32, ptr %12, align 4, !tbaa !5
  %29484 = load i32, ptr %8, align 4, !tbaa !5
  %29485 = mul nsw i32 19, %29484
  %29486 = add nsw i32 %29483, %29485
  %29487 = sext i32 %29486 to i64
  %29488 = getelementptr inbounds double, ptr %29482, i64 %29487
  %29489 = load double, ptr %29488, align 8, !tbaa !11
  %29490 = call double @llvm.fmuladd.f64(double 0xBD18680000000000, double %29489, double %29481)
  store double %29490, ptr %11, align 8, !tbaa !11
  %29491 = load double, ptr %11, align 8, !tbaa !11
  %29492 = load ptr, ptr %9, align 8, !tbaa !9
  %29493 = load i32, ptr %12, align 4, !tbaa !5
  %29494 = load i32, ptr %10, align 4, !tbaa !5
  %29495 = mul nsw i32 114, %29494
  %29496 = add nsw i32 %29493, %29495
  %29497 = sext i32 %29496 to i64
  %29498 = getelementptr inbounds double, ptr %29492, i64 %29497
  %29499 = load double, ptr %29498, align 8, !tbaa !11
  %29500 = fadd double %29499, %29491
  store double %29500, ptr %29498, align 8, !tbaa !11
  %29501 = load ptr, ptr %7, align 8, !tbaa !9
  %29502 = load i32, ptr %12, align 4, !tbaa !5
  %29503 = load i32, ptr %8, align 4, !tbaa !5
  %29504 = mul nsw i32 0, %29503
  %29505 = add nsw i32 %29502, %29504
  %29506 = sext i32 %29505 to i64
  %29507 = getelementptr inbounds double, ptr %29501, i64 %29506
  %29508 = load double, ptr %29507, align 8, !tbaa !11
  %29509 = load ptr, ptr %7, align 8, !tbaa !9
  %29510 = load i32, ptr %12, align 4, !tbaa !5
  %29511 = load i32, ptr %8, align 4, !tbaa !5
  %29512 = mul nsw i32 1, %29511
  %29513 = add nsw i32 %29510, %29512
  %29514 = sext i32 %29513 to i64
  %29515 = getelementptr inbounds double, ptr %29509, i64 %29514
  %29516 = load double, ptr %29515, align 8, !tbaa !11
  %29517 = fmul double 0xBCA4000000000001, %29516
  %29518 = call double @llvm.fmuladd.f64(double 0x3CDA400000000000, double %29508, double %29517)
  %29519 = load ptr, ptr %7, align 8, !tbaa !9
  %29520 = load i32, ptr %12, align 4, !tbaa !5
  %29521 = load i32, ptr %8, align 4, !tbaa !5
  %29522 = mul nsw i32 2, %29521
  %29523 = add nsw i32 %29520, %29522
  %29524 = sext i32 %29523 to i64
  %29525 = getelementptr inbounds double, ptr %29519, i64 %29524
  %29526 = load double, ptr %29525, align 8, !tbaa !11
  %29527 = call double @llvm.fmuladd.f64(double 0x3CB1400000000000, double %29526, double %29518)
  %29528 = load ptr, ptr %7, align 8, !tbaa !9
  %29529 = load i32, ptr %12, align 4, !tbaa !5
  %29530 = load i32, ptr %8, align 4, !tbaa !5
  %29531 = mul nsw i32 3, %29530
  %29532 = add nsw i32 %29529, %29531
  %29533 = sext i32 %29532 to i64
  %29534 = getelementptr inbounds double, ptr %29528, i64 %29533
  %29535 = load double, ptr %29534, align 8, !tbaa !11
  %29536 = call double @llvm.fmuladd.f64(double 0x3CDB900000000001, double %29535, double %29527)
  %29537 = load ptr, ptr %7, align 8, !tbaa !9
  %29538 = load i32, ptr %12, align 4, !tbaa !5
  %29539 = load i32, ptr %8, align 4, !tbaa !5
  %29540 = mul nsw i32 4, %29539
  %29541 = add nsw i32 %29538, %29540
  %29542 = sext i32 %29541 to i64
  %29543 = getelementptr inbounds double, ptr %29537, i64 %29542
  %29544 = load double, ptr %29543, align 8, !tbaa !11
  %29545 = call double @llvm.fmuladd.f64(double 0xBCCB000000000000, double %29544, double %29536)
  %29546 = load ptr, ptr %7, align 8, !tbaa !9
  %29547 = load i32, ptr %12, align 4, !tbaa !5
  %29548 = load i32, ptr %8, align 4, !tbaa !5
  %29549 = mul nsw i32 5, %29548
  %29550 = add nsw i32 %29547, %29549
  %29551 = sext i32 %29550 to i64
  %29552 = getelementptr inbounds double, ptr %29546, i64 %29551
  %29553 = load double, ptr %29552, align 8, !tbaa !11
  %29554 = call double @llvm.fmuladd.f64(double 0x3FD4F58312101B43, double %29553, double %29545)
  %29555 = load ptr, ptr %7, align 8, !tbaa !9
  %29556 = load i32, ptr %12, align 4, !tbaa !5
  %29557 = load i32, ptr %8, align 4, !tbaa !5
  %29558 = mul nsw i32 6, %29557
  %29559 = add nsw i32 %29556, %29558
  %29560 = sext i32 %29559 to i64
  %29561 = getelementptr inbounds double, ptr %29555, i64 %29560
  %29562 = load double, ptr %29561, align 8, !tbaa !11
  %29563 = call double @llvm.fmuladd.f64(double 0x3CD0E00000000000, double %29562, double %29554)
  %29564 = load ptr, ptr %7, align 8, !tbaa !9
  %29565 = load i32, ptr %12, align 4, !tbaa !5
  %29566 = load i32, ptr %8, align 4, !tbaa !5
  %29567 = mul nsw i32 7, %29566
  %29568 = add nsw i32 %29565, %29567
  %29569 = sext i32 %29568 to i64
  %29570 = getelementptr inbounds double, ptr %29564, i64 %29569
  %29571 = load double, ptr %29570, align 8, !tbaa !11
  %29572 = call double @llvm.fmuladd.f64(double 0xBCBD800000000001, double %29571, double %29563)
  %29573 = load ptr, ptr %7, align 8, !tbaa !9
  %29574 = load i32, ptr %12, align 4, !tbaa !5
  %29575 = load i32, ptr %8, align 4, !tbaa !5
  %29576 = mul nsw i32 8, %29575
  %29577 = add nsw i32 %29574, %29576
  %29578 = sext i32 %29577 to i64
  %29579 = getelementptr inbounds double, ptr %29573, i64 %29578
  %29580 = load double, ptr %29579, align 8, !tbaa !11
  %29581 = call double @llvm.fmuladd.f64(double 0xBCDFFFFFFFFFFFFE, double %29580, double %29572)
  %29582 = load ptr, ptr %7, align 8, !tbaa !9
  %29583 = load i32, ptr %12, align 4, !tbaa !5
  %29584 = load i32, ptr %8, align 4, !tbaa !5
  %29585 = mul nsw i32 9, %29584
  %29586 = add nsw i32 %29583, %29585
  %29587 = sext i32 %29586 to i64
  %29588 = getelementptr inbounds double, ptr %29582, i64 %29587
  %29589 = load double, ptr %29588, align 8, !tbaa !11
  %29590 = call double @llvm.fmuladd.f64(double 0xBCC4000000000000, double %29589, double %29581)
  %29591 = load ptr, ptr %7, align 8, !tbaa !9
  %29592 = load i32, ptr %12, align 4, !tbaa !5
  %29593 = load i32, ptr %8, align 4, !tbaa !5
  %29594 = mul nsw i32 10, %29593
  %29595 = add nsw i32 %29592, %29594
  %29596 = sext i32 %29595 to i64
  %29597 = getelementptr inbounds double, ptr %29591, i64 %29596
  %29598 = load double, ptr %29597, align 8, !tbaa !11
  %29599 = call double @llvm.fmuladd.f64(double 0x3D17B40000000000, double %29598, double %29590)
  %29600 = load ptr, ptr %7, align 8, !tbaa !9
  %29601 = load i32, ptr %12, align 4, !tbaa !5
  %29602 = load i32, ptr %8, align 4, !tbaa !5
  %29603 = mul nsw i32 11, %29602
  %29604 = add nsw i32 %29601, %29603
  %29605 = sext i32 %29604 to i64
  %29606 = getelementptr inbounds double, ptr %29600, i64 %29605
  %29607 = load double, ptr %29606, align 8, !tbaa !11
  %29608 = call double @llvm.fmuladd.f64(double 0xBCEAC00000000001, double %29607, double %29599)
  %29609 = load ptr, ptr %7, align 8, !tbaa !9
  %29610 = load i32, ptr %12, align 4, !tbaa !5
  %29611 = load i32, ptr %8, align 4, !tbaa !5
  %29612 = mul nsw i32 12, %29611
  %29613 = add nsw i32 %29610, %29612
  %29614 = sext i32 %29613 to i64
  %29615 = getelementptr inbounds double, ptr %29609, i64 %29614
  %29616 = load double, ptr %29615, align 8, !tbaa !11
  %29617 = call double @llvm.fmuladd.f64(double 0x3CE927FFFFFFFFFF, double %29616, double %29608)
  %29618 = load ptr, ptr %7, align 8, !tbaa !9
  %29619 = load i32, ptr %12, align 4, !tbaa !5
  %29620 = load i32, ptr %8, align 4, !tbaa !5
  %29621 = mul nsw i32 13, %29620
  %29622 = add nsw i32 %29619, %29621
  %29623 = sext i32 %29622 to i64
  %29624 = getelementptr inbounds double, ptr %29618, i64 %29623
  %29625 = load double, ptr %29624, align 8, !tbaa !11
  %29626 = call double @llvm.fmuladd.f64(double 0x3D13B90000000001, double %29625, double %29617)
  %29627 = load ptr, ptr %7, align 8, !tbaa !9
  %29628 = load i32, ptr %12, align 4, !tbaa !5
  %29629 = load i32, ptr %8, align 4, !tbaa !5
  %29630 = mul nsw i32 14, %29629
  %29631 = add nsw i32 %29628, %29630
  %29632 = sext i32 %29631 to i64
  %29633 = getelementptr inbounds double, ptr %29627, i64 %29632
  %29634 = load double, ptr %29633, align 8, !tbaa !11
  %29635 = call double @llvm.fmuladd.f64(double 0xBD04D00000000000, double %29634, double %29626)
  %29636 = load ptr, ptr %7, align 8, !tbaa !9
  %29637 = load i32, ptr %12, align 4, !tbaa !5
  %29638 = load i32, ptr %8, align 4, !tbaa !5
  %29639 = mul nsw i32 15, %29638
  %29640 = add nsw i32 %29637, %29639
  %29641 = sext i32 %29640 to i64
  %29642 = getelementptr inbounds double, ptr %29636, i64 %29641
  %29643 = load double, ptr %29642, align 8, !tbaa !11
  %29644 = call double @llvm.fmuladd.f64(double 0x40118E7E1D8191B1, double %29643, double %29635)
  %29645 = load ptr, ptr %7, align 8, !tbaa !9
  %29646 = load i32, ptr %12, align 4, !tbaa !5
  %29647 = load i32, ptr %8, align 4, !tbaa !5
  %29648 = mul nsw i32 16, %29647
  %29649 = add nsw i32 %29646, %29648
  %29650 = sext i32 %29649 to i64
  %29651 = getelementptr inbounds double, ptr %29645, i64 %29650
  %29652 = load double, ptr %29651, align 8, !tbaa !11
  %29653 = call double @llvm.fmuladd.f64(double 0x3D0A1C0000000001, double %29652, double %29644)
  %29654 = load ptr, ptr %7, align 8, !tbaa !9
  %29655 = load i32, ptr %12, align 4, !tbaa !5
  %29656 = load i32, ptr %8, align 4, !tbaa !5
  %29657 = mul nsw i32 17, %29656
  %29658 = add nsw i32 %29655, %29657
  %29659 = sext i32 %29658 to i64
  %29660 = getelementptr inbounds double, ptr %29654, i64 %29659
  %29661 = load double, ptr %29660, align 8, !tbaa !11
  %29662 = call double @llvm.fmuladd.f64(double 0xBCF7180000000000, double %29661, double %29653)
  %29663 = load ptr, ptr %7, align 8, !tbaa !9
  %29664 = load i32, ptr %12, align 4, !tbaa !5
  %29665 = load i32, ptr %8, align 4, !tbaa !5
  %29666 = mul nsw i32 18, %29665
  %29667 = add nsw i32 %29664, %29666
  %29668 = sext i32 %29667 to i64
  %29669 = getelementptr inbounds double, ptr %29663, i64 %29668
  %29670 = load double, ptr %29669, align 8, !tbaa !11
  %29671 = call double @llvm.fmuladd.f64(double 0xBD19000000000000, double %29670, double %29662)
  %29672 = load ptr, ptr %7, align 8, !tbaa !9
  %29673 = load i32, ptr %12, align 4, !tbaa !5
  %29674 = load i32, ptr %8, align 4, !tbaa !5
  %29675 = mul nsw i32 19, %29674
  %29676 = add nsw i32 %29673, %29675
  %29677 = sext i32 %29676 to i64
  %29678 = getelementptr inbounds double, ptr %29672, i64 %29677
  %29679 = load double, ptr %29678, align 8, !tbaa !11
  %29680 = call double @llvm.fmuladd.f64(double 0xBCF9C00000000000, double %29679, double %29671)
  store double %29680, ptr %11, align 8, !tbaa !11
  %29681 = load double, ptr %11, align 8, !tbaa !11
  %29682 = load ptr, ptr %9, align 8, !tbaa !9
  %29683 = load i32, ptr %12, align 4, !tbaa !5
  %29684 = load i32, ptr %10, align 4, !tbaa !5
  %29685 = mul nsw i32 115, %29684
  %29686 = add nsw i32 %29683, %29685
  %29687 = sext i32 %29686 to i64
  %29688 = getelementptr inbounds double, ptr %29682, i64 %29687
  %29689 = load double, ptr %29688, align 8, !tbaa !11
  %29690 = fadd double %29689, %29681
  store double %29690, ptr %29688, align 8, !tbaa !11
  %29691 = load ptr, ptr %7, align 8, !tbaa !9
  %29692 = load i32, ptr %12, align 4, !tbaa !5
  %29693 = load i32, ptr %8, align 4, !tbaa !5
  %29694 = mul nsw i32 0, %29693
  %29695 = add nsw i32 %29692, %29694
  %29696 = sext i32 %29695 to i64
  %29697 = getelementptr inbounds double, ptr %29691, i64 %29696
  %29698 = load double, ptr %29697, align 8, !tbaa !11
  %29699 = load ptr, ptr %7, align 8, !tbaa !9
  %29700 = load i32, ptr %12, align 4, !tbaa !5
  %29701 = load i32, ptr %8, align 4, !tbaa !5
  %29702 = mul nsw i32 1, %29701
  %29703 = add nsw i32 %29700, %29702
  %29704 = sext i32 %29703 to i64
  %29705 = getelementptr inbounds double, ptr %29699, i64 %29704
  %29706 = load double, ptr %29705, align 8, !tbaa !11
  %29707 = fmul double 0x3C9DFFFFFFFFFFFE, %29706
  %29708 = call double @llvm.fmuladd.f64(double 0x3CDBE00000000000, double %29698, double %29707)
  %29709 = load ptr, ptr %7, align 8, !tbaa !9
  %29710 = load i32, ptr %12, align 4, !tbaa !5
  %29711 = load i32, ptr %8, align 4, !tbaa !5
  %29712 = mul nsw i32 2, %29711
  %29713 = add nsw i32 %29710, %29712
  %29714 = sext i32 %29713 to i64
  %29715 = getelementptr inbounds double, ptr %29709, i64 %29714
  %29716 = load double, ptr %29715, align 8, !tbaa !11
  %29717 = call double @llvm.fmuladd.f64(double 0xBC9CFFFFFFFFFFFF, double %29716, double %29708)
  %29718 = load ptr, ptr %7, align 8, !tbaa !9
  %29719 = load i32, ptr %12, align 4, !tbaa !5
  %29720 = load i32, ptr %8, align 4, !tbaa !5
  %29721 = mul nsw i32 3, %29720
  %29722 = add nsw i32 %29719, %29721
  %29723 = sext i32 %29722 to i64
  %29724 = getelementptr inbounds double, ptr %29718, i64 %29723
  %29725 = load double, ptr %29724, align 8, !tbaa !11
  %29726 = call double @llvm.fmuladd.f64(double 0x3CD6C7FFFFFFFFFE, double %29725, double %29717)
  %29727 = load ptr, ptr %7, align 8, !tbaa !9
  %29728 = load i32, ptr %12, align 4, !tbaa !5
  %29729 = load i32, ptr %8, align 4, !tbaa !5
  %29730 = mul nsw i32 4, %29729
  %29731 = add nsw i32 %29728, %29730
  %29732 = sext i32 %29731 to i64
  %29733 = getelementptr inbounds double, ptr %29727, i64 %29732
  %29734 = load double, ptr %29733, align 8, !tbaa !11
  %29735 = call double @llvm.fmuladd.f64(double 0xBCAE800000000001, double %29734, double %29726)
  %29736 = load ptr, ptr %7, align 8, !tbaa !9
  %29737 = load i32, ptr %12, align 4, !tbaa !5
  %29738 = load i32, ptr %8, align 4, !tbaa !5
  %29739 = mul nsw i32 5, %29738
  %29740 = add nsw i32 %29737, %29739
  %29741 = sext i32 %29740 to i64
  %29742 = getelementptr inbounds double, ptr %29736, i64 %29741
  %29743 = load double, ptr %29742, align 8, !tbaa !11
  %29744 = call double @llvm.fmuladd.f64(double 0x3CCD600000000000, double %29743, double %29735)
  %29745 = load ptr, ptr %7, align 8, !tbaa !9
  %29746 = load i32, ptr %12, align 4, !tbaa !5
  %29747 = load i32, ptr %8, align 4, !tbaa !5
  %29748 = mul nsw i32 6, %29747
  %29749 = add nsw i32 %29746, %29748
  %29750 = sext i32 %29749 to i64
  %29751 = getelementptr inbounds double, ptr %29745, i64 %29750
  %29752 = load double, ptr %29751, align 8, !tbaa !11
  %29753 = call double @llvm.fmuladd.f64(double 0x3FD4F58312101B3B, double %29752, double %29744)
  %29754 = load ptr, ptr %7, align 8, !tbaa !9
  %29755 = load i32, ptr %12, align 4, !tbaa !5
  %29756 = load i32, ptr %8, align 4, !tbaa !5
  %29757 = mul nsw i32 7, %29756
  %29758 = add nsw i32 %29755, %29757
  %29759 = sext i32 %29758 to i64
  %29760 = getelementptr inbounds double, ptr %29754, i64 %29759
  %29761 = load double, ptr %29760, align 8, !tbaa !11
  %29762 = call double @llvm.fmuladd.f64(double 0xBCE02BFFFFFFFFFF, double %29761, double %29753)
  %29763 = load ptr, ptr %7, align 8, !tbaa !9
  %29764 = load i32, ptr %12, align 4, !tbaa !5
  %29765 = load i32, ptr %8, align 4, !tbaa !5
  %29766 = mul nsw i32 8, %29765
  %29767 = add nsw i32 %29764, %29766
  %29768 = sext i32 %29767 to i64
  %29769 = getelementptr inbounds double, ptr %29763, i64 %29768
  %29770 = load double, ptr %29769, align 8, !tbaa !11
  %29771 = call double @llvm.fmuladd.f64(double 0xBCC3C00000000000, double %29770, double %29762)
  %29772 = load ptr, ptr %7, align 8, !tbaa !9
  %29773 = load i32, ptr %12, align 4, !tbaa !5
  %29774 = load i32, ptr %8, align 4, !tbaa !5
  %29775 = mul nsw i32 9, %29774
  %29776 = add nsw i32 %29773, %29775
  %29777 = sext i32 %29776 to i64
  %29778 = getelementptr inbounds double, ptr %29772, i64 %29777
  %29779 = load double, ptr %29778, align 8, !tbaa !11
  %29780 = call double @llvm.fmuladd.f64(double 0xBCCB800000000000, double %29779, double %29771)
  %29781 = load ptr, ptr %7, align 8, !tbaa !9
  %29782 = load i32, ptr %12, align 4, !tbaa !5
  %29783 = load i32, ptr %8, align 4, !tbaa !5
  %29784 = mul nsw i32 10, %29783
  %29785 = add nsw i32 %29782, %29784
  %29786 = sext i32 %29785 to i64
  %29787 = getelementptr inbounds double, ptr %29781, i64 %29786
  %29788 = load double, ptr %29787, align 8, !tbaa !11
  %29789 = call double @llvm.fmuladd.f64(double 0x3D167E0000000000, double %29788, double %29780)
  %29790 = load ptr, ptr %7, align 8, !tbaa !9
  %29791 = load i32, ptr %12, align 4, !tbaa !5
  %29792 = load i32, ptr %8, align 4, !tbaa !5
  %29793 = mul nsw i32 11, %29792
  %29794 = add nsw i32 %29791, %29793
  %29795 = sext i32 %29794 to i64
  %29796 = getelementptr inbounds double, ptr %29790, i64 %29795
  %29797 = load double, ptr %29796, align 8, !tbaa !11
  %29798 = call double @llvm.fmuladd.f64(double 0x3CED100000000000, double %29797, double %29789)
  %29799 = load ptr, ptr %7, align 8, !tbaa !9
  %29800 = load i32, ptr %12, align 4, !tbaa !5
  %29801 = load i32, ptr %8, align 4, !tbaa !5
  %29802 = mul nsw i32 12, %29801
  %29803 = add nsw i32 %29800, %29802
  %29804 = sext i32 %29803 to i64
  %29805 = getelementptr inbounds double, ptr %29799, i64 %29804
  %29806 = load double, ptr %29805, align 8, !tbaa !11
  %29807 = call double @llvm.fmuladd.f64(double 0xBCE5A80000000001, double %29806, double %29798)
  %29808 = load ptr, ptr %7, align 8, !tbaa !9
  %29809 = load i32, ptr %12, align 4, !tbaa !5
  %29810 = load i32, ptr %8, align 4, !tbaa !5
  %29811 = mul nsw i32 13, %29810
  %29812 = add nsw i32 %29809, %29811
  %29813 = sext i32 %29812 to i64
  %29814 = getelementptr inbounds double, ptr %29808, i64 %29813
  %29815 = load double, ptr %29814, align 8, !tbaa !11
  %29816 = call double @llvm.fmuladd.f64(double 0x3D129C7FFFFFFFFE, double %29815, double %29807)
  %29817 = load ptr, ptr %7, align 8, !tbaa !9
  %29818 = load i32, ptr %12, align 4, !tbaa !5
  %29819 = load i32, ptr %8, align 4, !tbaa !5
  %29820 = mul nsw i32 14, %29819
  %29821 = add nsw i32 %29818, %29820
  %29822 = sext i32 %29821 to i64
  %29823 = getelementptr inbounds double, ptr %29817, i64 %29822
  %29824 = load double, ptr %29823, align 8, !tbaa !11
  %29825 = call double @llvm.fmuladd.f64(double 0xBCF3340000000000, double %29824, double %29816)
  %29826 = load ptr, ptr %7, align 8, !tbaa !9
  %29827 = load i32, ptr %12, align 4, !tbaa !5
  %29828 = load i32, ptr %8, align 4, !tbaa !5
  %29829 = mul nsw i32 15, %29828
  %29830 = add nsw i32 %29827, %29829
  %29831 = sext i32 %29830 to i64
  %29832 = getelementptr inbounds double, ptr %29826, i64 %29831
  %29833 = load double, ptr %29832, align 8, !tbaa !11
  %29834 = call double @llvm.fmuladd.f64(double 0x3D09760000000001, double %29833, double %29825)
  %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 16, %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 = call double @llvm.fmuladd.f64(double 0x40118E7E1D8191B2, double %29842, double %29834)
  %29844 = load ptr, ptr %7, align 8, !tbaa !9
  %29845 = load i32, ptr %12, align 4, !tbaa !5
  %29846 = load i32, ptr %8, align 4, !tbaa !5
  %29847 = mul nsw i32 17, %29846
  %29848 = add nsw i32 %29845, %29847
  %29849 = sext i32 %29848 to i64
  %29850 = getelementptr inbounds double, ptr %29844, i64 %29849
  %29851 = load double, ptr %29850, align 8, !tbaa !11
  %29852 = call double @llvm.fmuladd.f64(double 0xBD17E57FFFFFFFFE, double %29851, double %29843)
  %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 18, %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 0xBCF6D80000000000, 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 19, %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 0xBD07C7FFFFFFFFFF, double %29869, double %29861)
  store double %29870, ptr %11, align 8, !tbaa !11
  %29871 = load double, ptr %11, align 8, !tbaa !11
  %29872 = load ptr, ptr %9, align 8, !tbaa !9
  %29873 = load i32, ptr %12, align 4, !tbaa !5
  %29874 = load i32, ptr %10, align 4, !tbaa !5
  %29875 = mul nsw i32 116, %29874
  %29876 = add nsw i32 %29873, %29875
  %29877 = sext i32 %29876 to i64
  %29878 = getelementptr inbounds double, ptr %29872, i64 %29877
  %29879 = load double, ptr %29878, align 8, !tbaa !11
  %29880 = fadd double %29879, %29871
  store double %29880, ptr %29878, align 8, !tbaa !11
  %29881 = load ptr, ptr %7, align 8, !tbaa !9
  %29882 = load i32, ptr %12, align 4, !tbaa !5
  %29883 = load i32, ptr %8, align 4, !tbaa !5
  %29884 = mul nsw i32 0, %29883
  %29885 = add nsw i32 %29882, %29884
  %29886 = sext i32 %29885 to i64
  %29887 = getelementptr inbounds double, ptr %29881, i64 %29886
  %29888 = load double, ptr %29887, align 8, !tbaa !11
  %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 1, %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 = fmul double 0x3CA5FFFFFFFFFFFF, %29896
  %29898 = call double @llvm.fmuladd.f64(double 0x3CDAA00000000002, double %29888, double %29897)
  %29899 = load ptr, ptr %7, align 8, !tbaa !9
  %29900 = load i32, ptr %12, align 4, !tbaa !5
  %29901 = load i32, ptr %8, align 4, !tbaa !5
  %29902 = mul nsw i32 2, %29901
  %29903 = add nsw i32 %29900, %29902
  %29904 = sext i32 %29903 to i64
  %29905 = getelementptr inbounds double, ptr %29899, i64 %29904
  %29906 = load double, ptr %29905, align 8, !tbaa !11
  %29907 = call double @llvm.fmuladd.f64(double 0x3CD6100000000001, double %29906, double %29898)
  %29908 = load ptr, ptr %7, align 8, !tbaa !9
  %29909 = load i32, ptr %12, align 4, !tbaa !5
  %29910 = load i32, ptr %8, align 4, !tbaa !5
  %29911 = mul nsw i32 3, %29910
  %29912 = add nsw i32 %29909, %29911
  %29913 = sext i32 %29912 to i64
  %29914 = getelementptr inbounds double, ptr %29908, i64 %29913
  %29915 = load double, ptr %29914, align 8, !tbaa !11
  %29916 = call double @llvm.fmuladd.f64(double 0xBCB8A00000000000, double %29915, double %29907)
  %29917 = load ptr, ptr %7, align 8, !tbaa !9
  %29918 = load i32, ptr %12, align 4, !tbaa !5
  %29919 = load i32, ptr %8, align 4, !tbaa !5
  %29920 = mul nsw i32 4, %29919
  %29921 = add nsw i32 %29918, %29920
  %29922 = sext i32 %29921 to i64
  %29923 = getelementptr inbounds double, ptr %29917, i64 %29922
  %29924 = load double, ptr %29923, align 8, !tbaa !11
  %29925 = call double @llvm.fmuladd.f64(double 0x3CD30FFFFFFFFFFE, double %29924, double %29916)
  %29926 = load ptr, ptr %7, align 8, !tbaa !9
  %29927 = load i32, ptr %12, align 4, !tbaa !5
  %29928 = load i32, ptr %8, align 4, !tbaa !5
  %29929 = mul nsw i32 5, %29928
  %29930 = add nsw i32 %29927, %29929
  %29931 = sext i32 %29930 to i64
  %29932 = getelementptr inbounds double, ptr %29926, i64 %29931
  %29933 = load double, ptr %29932, align 8, !tbaa !11
  %29934 = call double @llvm.fmuladd.f64(double 0xBCB4C00000000000, double %29933, double %29925)
  %29935 = load ptr, ptr %7, align 8, !tbaa !9
  %29936 = load i32, ptr %12, align 4, !tbaa !5
  %29937 = load i32, ptr %8, align 4, !tbaa !5
  %29938 = mul nsw i32 6, %29937
  %29939 = add nsw i32 %29936, %29938
  %29940 = sext i32 %29939 to i64
  %29941 = getelementptr inbounds double, ptr %29935, i64 %29940
  %29942 = load double, ptr %29941, align 8, !tbaa !11
  %29943 = call double @llvm.fmuladd.f64(double 0xBCDD280000000000, double %29942, double %29934)
  %29944 = load ptr, ptr %7, align 8, !tbaa !9
  %29945 = load i32, ptr %12, align 4, !tbaa !5
  %29946 = load i32, ptr %8, align 4, !tbaa !5
  %29947 = mul nsw i32 7, %29946
  %29948 = add nsw i32 %29945, %29947
  %29949 = sext i32 %29948 to i64
  %29950 = getelementptr inbounds double, ptr %29944, i64 %29949
  %29951 = load double, ptr %29950, align 8, !tbaa !11
  %29952 = call double @llvm.fmuladd.f64(double 0x3FD4F58312101B3A, double %29951, double %29943)
  %29953 = load ptr, ptr %7, align 8, !tbaa !9
  %29954 = load i32, ptr %12, align 4, !tbaa !5
  %29955 = load i32, ptr %8, align 4, !tbaa !5
  %29956 = mul nsw i32 8, %29955
  %29957 = add nsw i32 %29954, %29956
  %29958 = sext i32 %29957 to i64
  %29959 = getelementptr inbounds double, ptr %29953, i64 %29958
  %29960 = load double, ptr %29959, align 8, !tbaa !11
  %29961 = call double @llvm.fmuladd.f64(double 0xBCD0200000000000, double %29960, double %29952)
  %29962 = load ptr, ptr %7, align 8, !tbaa !9
  %29963 = load i32, ptr %12, align 4, !tbaa !5
  %29964 = load i32, ptr %8, align 4, !tbaa !5
  %29965 = mul nsw i32 9, %29964
  %29966 = add nsw i32 %29963, %29965
  %29967 = sext i32 %29966 to i64
  %29968 = getelementptr inbounds double, ptr %29962, i64 %29967
  %29969 = load double, ptr %29968, align 8, !tbaa !11
  %29970 = call double @llvm.fmuladd.f64(double 0xBCC2C00000000000, double %29969, double %29961)
  %29971 = load ptr, ptr %7, align 8, !tbaa !9
  %29972 = load i32, ptr %12, align 4, !tbaa !5
  %29973 = load i32, ptr %8, align 4, !tbaa !5
  %29974 = mul nsw i32 10, %29973
  %29975 = add nsw i32 %29972, %29974
  %29976 = sext i32 %29975 to i64
  %29977 = getelementptr inbounds double, ptr %29971, i64 %29976
  %29978 = load double, ptr %29977, align 8, !tbaa !11
  %29979 = call double @llvm.fmuladd.f64(double 0x3D1569FFFFFFFFFF, double %29978, double %29970)
  %29980 = load ptr, ptr %7, align 8, !tbaa !9
  %29981 = load i32, ptr %12, align 4, !tbaa !5
  %29982 = load i32, ptr %8, align 4, !tbaa !5
  %29983 = mul nsw i32 11, %29982
  %29984 = add nsw i32 %29981, %29983
  %29985 = sext i32 %29984 to i64
  %29986 = getelementptr inbounds double, ptr %29980, i64 %29985
  %29987 = load double, ptr %29986, align 8, !tbaa !11
  %29988 = call double @llvm.fmuladd.f64(double 0x3CF0200000000000, double %29987, double %29979)
  %29989 = load ptr, ptr %7, align 8, !tbaa !9
  %29990 = load i32, ptr %12, align 4, !tbaa !5
  %29991 = load i32, ptr %8, align 4, !tbaa !5
  %29992 = mul nsw i32 12, %29991
  %29993 = add nsw i32 %29990, %29992
  %29994 = sext i32 %29993 to i64
  %29995 = getelementptr inbounds double, ptr %29989, i64 %29994
  %29996 = load double, ptr %29995, align 8, !tbaa !11
  %29997 = call double @llvm.fmuladd.f64(double 0x3D1478FFFFFFFFFF, double %29996, double %29988)
  %29998 = load ptr, ptr %7, align 8, !tbaa !9
  %29999 = load i32, ptr %12, align 4, !tbaa !5
  %30000 = load i32, ptr %8, align 4, !tbaa !5
  %30001 = mul nsw i32 13, %30000
  %30002 = add nsw i32 %29999, %30001
  %30003 = sext i32 %30002 to i64
  %30004 = getelementptr inbounds double, ptr %29998, i64 %30003
  %30005 = load double, ptr %30004, align 8, !tbaa !11
  %30006 = call double @llvm.fmuladd.f64(double 0xBCE4140000000000, double %30005, double %29997)
  %30007 = load ptr, ptr %7, align 8, !tbaa !9
  %30008 = load i32, ptr %12, align 4, !tbaa !5
  %30009 = load i32, ptr %8, align 4, !tbaa !5
  %30010 = mul nsw i32 14, %30009
  %30011 = add nsw i32 %30008, %30010
  %30012 = sext i32 %30011 to i64
  %30013 = getelementptr inbounds double, ptr %30007, i64 %30012
  %30014 = load double, ptr %30013, align 8, !tbaa !11
  %30015 = call double @llvm.fmuladd.f64(double 0x3D0A620000000003, double %30014, double %30006)
  %30016 = load ptr, ptr %7, align 8, !tbaa !9
  %30017 = load i32, ptr %12, align 4, !tbaa !5
  %30018 = load i32, ptr %8, align 4, !tbaa !5
  %30019 = mul nsw i32 15, %30018
  %30020 = add nsw i32 %30017, %30019
  %30021 = sext i32 %30020 to i64
  %30022 = getelementptr inbounds double, ptr %30016, i64 %30021
  %30023 = load double, ptr %30022, align 8, !tbaa !11
  %30024 = call double @llvm.fmuladd.f64(double 0xBCF36BFFFFFFFFFF, double %30023, double %30015)
  %30025 = load ptr, ptr %7, align 8, !tbaa !9
  %30026 = load i32, ptr %12, align 4, !tbaa !5
  %30027 = load i32, ptr %8, align 4, !tbaa !5
  %30028 = mul nsw i32 16, %30027
  %30029 = add nsw i32 %30026, %30028
  %30030 = sext i32 %30029 to i64
  %30031 = getelementptr inbounds double, ptr %30025, i64 %30030
  %30032 = load double, ptr %30031, align 8, !tbaa !11
  %30033 = call double @llvm.fmuladd.f64(double 0xBD17E27FFFFFFFFF, double %30032, double %30024)
  %30034 = load ptr, ptr %7, align 8, !tbaa !9
  %30035 = load i32, ptr %12, align 4, !tbaa !5
  %30036 = load i32, ptr %8, align 4, !tbaa !5
  %30037 = mul nsw i32 17, %30036
  %30038 = add nsw i32 %30035, %30037
  %30039 = sext i32 %30038 to i64
  %30040 = getelementptr inbounds double, ptr %30034, i64 %30039
  %30041 = load double, ptr %30040, align 8, !tbaa !11
  %30042 = call double @llvm.fmuladd.f64(double 0x40118E7E1D8191B1, double %30041, double %30033)
  %30043 = load ptr, ptr %7, align 8, !tbaa !9
  %30044 = load i32, ptr %12, align 4, !tbaa !5
  %30045 = load i32, ptr %8, align 4, !tbaa !5
  %30046 = mul nsw i32 18, %30045
  %30047 = add nsw i32 %30044, %30046
  %30048 = sext i32 %30047 to i64
  %30049 = getelementptr inbounds double, ptr %30043, i64 %30048
  %30050 = load double, ptr %30049, align 8, !tbaa !11
  %30051 = call double @llvm.fmuladd.f64(double 0xBD07F3FFFFFFFFFF, double %30050, double %30042)
  %30052 = load ptr, ptr %7, align 8, !tbaa !9
  %30053 = load i32, ptr %12, align 4, !tbaa !5
  %30054 = load i32, ptr %8, align 4, !tbaa !5
  %30055 = mul nsw i32 19, %30054
  %30056 = add nsw i32 %30053, %30055
  %30057 = sext i32 %30056 to i64
  %30058 = getelementptr inbounds double, ptr %30052, i64 %30057
  %30059 = load double, ptr %30058, align 8, !tbaa !11
  %30060 = call double @llvm.fmuladd.f64(double 0xBCF6F80000000000, double %30059, double %30051)
  store double %30060, ptr %11, align 8, !tbaa !11
  %30061 = load double, ptr %11, align 8, !tbaa !11
  %30062 = load ptr, ptr %9, align 8, !tbaa !9
  %30063 = load i32, ptr %12, align 4, !tbaa !5
  %30064 = load i32, ptr %10, align 4, !tbaa !5
  %30065 = mul nsw i32 117, %30064
  %30066 = add nsw i32 %30063, %30065
  %30067 = sext i32 %30066 to i64
  %30068 = getelementptr inbounds double, ptr %30062, i64 %30067
  %30069 = load double, ptr %30068, align 8, !tbaa !11
  %30070 = fadd double %30069, %30061
  store double %30070, ptr %30068, align 8, !tbaa !11
  %30071 = load ptr, ptr %7, align 8, !tbaa !9
  %30072 = load i32, ptr %12, align 4, !tbaa !5
  %30073 = load i32, ptr %8, align 4, !tbaa !5
  %30074 = mul nsw i32 0, %30073
  %30075 = add nsw i32 %30072, %30074
  %30076 = sext i32 %30075 to i64
  %30077 = getelementptr inbounds double, ptr %30071, i64 %30076
  %30078 = load double, ptr %30077, align 8, !tbaa !11
  %30079 = load ptr, ptr %7, align 8, !tbaa !9
  %30080 = load i32, ptr %12, align 4, !tbaa !5
  %30081 = load i32, ptr %8, align 4, !tbaa !5
  %30082 = mul nsw i32 1, %30081
  %30083 = add nsw i32 %30080, %30082
  %30084 = sext i32 %30083 to i64
  %30085 = getelementptr inbounds double, ptr %30079, i64 %30084
  %30086 = load double, ptr %30085, align 8, !tbaa !11
  %30087 = fmul double 0x3CD9800000000002, %30086
  %30088 = call double @llvm.fmuladd.f64(double 0x3CD7000000000000, double %30078, double %30087)
  %30089 = load ptr, ptr %7, align 8, !tbaa !9
  %30090 = load i32, ptr %12, align 4, !tbaa !5
  %30091 = load i32, ptr %8, align 4, !tbaa !5
  %30092 = mul nsw i32 2, %30091
  %30093 = add nsw i32 %30090, %30092
  %30094 = sext i32 %30093 to i64
  %30095 = getelementptr inbounds double, ptr %30089, i64 %30094
  %30096 = load double, ptr %30095, align 8, !tbaa !11
  %30097 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %30096, double %30088)
  %30098 = load ptr, ptr %7, align 8, !tbaa !9
  %30099 = load i32, ptr %12, align 4, !tbaa !5
  %30100 = load i32, ptr %8, align 4, !tbaa !5
  %30101 = mul nsw i32 3, %30100
  %30102 = add nsw i32 %30099, %30101
  %30103 = sext i32 %30102 to i64
  %30104 = getelementptr inbounds double, ptr %30098, i64 %30103
  %30105 = load double, ptr %30104, align 8, !tbaa !11
  %30106 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %30105, double %30097)
  %30107 = load ptr, ptr %7, align 8, !tbaa !9
  %30108 = load i32, ptr %12, align 4, !tbaa !5
  %30109 = load i32, ptr %8, align 4, !tbaa !5
  %30110 = mul nsw i32 4, %30109
  %30111 = add nsw i32 %30108, %30110
  %30112 = sext i32 %30111 to i64
  %30113 = getelementptr inbounds double, ptr %30107, i64 %30112
  %30114 = load double, ptr %30113, align 8, !tbaa !11
  %30115 = call double @llvm.fmuladd.f64(double 0xBCB2000000000000, double %30114, double %30106)
  %30116 = load ptr, ptr %7, align 8, !tbaa !9
  %30117 = load i32, ptr %12, align 4, !tbaa !5
  %30118 = load i32, ptr %8, align 4, !tbaa !5
  %30119 = mul nsw i32 5, %30118
  %30120 = add nsw i32 %30117, %30119
  %30121 = sext i32 %30120 to i64
  %30122 = getelementptr inbounds double, ptr %30116, i64 %30121
  %30123 = load double, ptr %30122, align 8, !tbaa !11
  %30124 = call double @llvm.fmuladd.f64(double 0xBCE1000000000000, double %30123, double %30115)
  %30125 = load ptr, ptr %7, align 8, !tbaa !9
  %30126 = load i32, ptr %12, align 4, !tbaa !5
  %30127 = load i32, ptr %8, align 4, !tbaa !5
  %30128 = mul nsw i32 6, %30127
  %30129 = add nsw i32 %30126, %30128
  %30130 = sext i32 %30129 to i64
  %30131 = getelementptr inbounds double, ptr %30125, i64 %30130
  %30132 = load double, ptr %30131, align 8, !tbaa !11
  %30133 = call double @llvm.fmuladd.f64(double 0xBCC2400000000000, double %30132, double %30124)
  %30134 = load ptr, ptr %7, align 8, !tbaa !9
  %30135 = load i32, ptr %12, align 4, !tbaa !5
  %30136 = load i32, ptr %8, align 4, !tbaa !5
  %30137 = mul nsw i32 7, %30136
  %30138 = add nsw i32 %30135, %30137
  %30139 = sext i32 %30138 to i64
  %30140 = getelementptr inbounds double, ptr %30134, i64 %30139
  %30141 = load double, ptr %30140, align 8, !tbaa !11
  %30142 = call double @llvm.fmuladd.f64(double 0xBCCF000000000000, double %30141, double %30133)
  %30143 = load ptr, ptr %7, align 8, !tbaa !9
  %30144 = load i32, ptr %12, align 4, !tbaa !5
  %30145 = load i32, ptr %8, align 4, !tbaa !5
  %30146 = mul nsw i32 8, %30145
  %30147 = add nsw i32 %30144, %30146
  %30148 = sext i32 %30147 to i64
  %30149 = getelementptr inbounds double, ptr %30143, i64 %30148
  %30150 = load double, ptr %30149, align 8, !tbaa !11
  %30151 = call double @llvm.fmuladd.f64(double 0x3FD4F58312101B3D, double %30150, double %30142)
  %30152 = load ptr, ptr %7, align 8, !tbaa !9
  %30153 = load i32, ptr %12, align 4, !tbaa !5
  %30154 = load i32, ptr %8, align 4, !tbaa !5
  %30155 = mul nsw i32 9, %30154
  %30156 = add nsw i32 %30153, %30155
  %30157 = sext i32 %30156 to i64
  %30158 = getelementptr inbounds double, ptr %30152, i64 %30157
  %30159 = load double, ptr %30158, align 8, !tbaa !11
  %30160 = call double @llvm.fmuladd.f64(double 0x3CCE000000000000, double %30159, double %30151)
  %30161 = load ptr, ptr %7, align 8, !tbaa !9
  %30162 = load i32, ptr %12, align 4, !tbaa !5
  %30163 = load i32, ptr %8, align 4, !tbaa !5
  %30164 = mul nsw i32 10, %30163
  %30165 = add nsw i32 %30162, %30164
  %30166 = sext i32 %30165 to i64
  %30167 = getelementptr inbounds double, ptr %30161, i64 %30166
  %30168 = load double, ptr %30167, align 8, !tbaa !11
  %30169 = call double @llvm.fmuladd.f64(double 0x3D16B00000000000, double %30168, double %30160)
  %30170 = load ptr, ptr %7, align 8, !tbaa !9
  %30171 = load i32, ptr %12, align 4, !tbaa !5
  %30172 = load i32, ptr %8, align 4, !tbaa !5
  %30173 = mul nsw i32 11, %30172
  %30174 = add nsw i32 %30171, %30173
  %30175 = sext i32 %30174 to i64
  %30176 = getelementptr inbounds double, ptr %30170, i64 %30175
  %30177 = load double, ptr %30176, align 8, !tbaa !11
  %30178 = call double @llvm.fmuladd.f64(double 0x3D13680000000001, double %30177, double %30169)
  %30179 = load ptr, ptr %7, align 8, !tbaa !9
  %30180 = load i32, ptr %12, align 4, !tbaa !5
  %30181 = load i32, ptr %8, align 4, !tbaa !5
  %30182 = mul nsw i32 12, %30181
  %30183 = add nsw i32 %30180, %30182
  %30184 = sext i32 %30183 to i64
  %30185 = getelementptr inbounds double, ptr %30179, i64 %30184
  %30186 = load double, ptr %30185, align 8, !tbaa !11
  %30187 = call double @llvm.fmuladd.f64(double 0x3CEE600000000000, double %30186, double %30178)
  %30188 = load ptr, ptr %7, align 8, !tbaa !9
  %30189 = load i32, ptr %12, align 4, !tbaa !5
  %30190 = load i32, ptr %8, align 4, !tbaa !5
  %30191 = mul nsw i32 13, %30190
  %30192 = add nsw i32 %30189, %30191
  %30193 = sext i32 %30192 to i64
  %30194 = getelementptr inbounds double, ptr %30188, i64 %30193
  %30195 = load double, ptr %30194, align 8, !tbaa !11
  %30196 = call double @llvm.fmuladd.f64(double 0xBCE6500000000001, double %30195, double %30187)
  %30197 = load ptr, ptr %7, align 8, !tbaa !9
  %30198 = load i32, ptr %12, align 4, !tbaa !5
  %30199 = load i32, ptr %8, align 4, !tbaa !5
  %30200 = mul nsw i32 14, %30199
  %30201 = add nsw i32 %30198, %30200
  %30202 = sext i32 %30201 to i64
  %30203 = getelementptr inbounds double, ptr %30197, i64 %30202
  %30204 = load double, ptr %30203, align 8, !tbaa !11
  %30205 = call double @llvm.fmuladd.f64(double 0xBCF7A00000000000, double %30204, double %30196)
  %30206 = load ptr, ptr %7, align 8, !tbaa !9
  %30207 = load i32, ptr %12, align 4, !tbaa !5
  %30208 = load i32, ptr %8, align 4, !tbaa !5
  %30209 = mul nsw i32 15, %30208
  %30210 = add nsw i32 %30207, %30209
  %30211 = sext i32 %30210 to i64
  %30212 = getelementptr inbounds double, ptr %30206, i64 %30211
  %30213 = load double, ptr %30212, align 8, !tbaa !11
  %30214 = call double @llvm.fmuladd.f64(double 0xBD18C00000000000, double %30213, double %30205)
  %30215 = load ptr, ptr %7, align 8, !tbaa !9
  %30216 = load i32, ptr %12, align 4, !tbaa !5
  %30217 = load i32, ptr %8, align 4, !tbaa !5
  %30218 = mul nsw i32 16, %30217
  %30219 = add nsw i32 %30216, %30218
  %30220 = sext i32 %30219 to i64
  %30221 = getelementptr inbounds double, ptr %30215, i64 %30220
  %30222 = load double, ptr %30221, align 8, !tbaa !11
  %30223 = call double @llvm.fmuladd.f64(double 0xBCF6680000000000, double %30222, double %30214)
  %30224 = load ptr, ptr %7, align 8, !tbaa !9
  %30225 = load i32, ptr %12, align 4, !tbaa !5
  %30226 = load i32, ptr %8, align 4, !tbaa !5
  %30227 = mul nsw i32 17, %30226
  %30228 = add nsw i32 %30225, %30227
  %30229 = sext i32 %30228 to i64
  %30230 = getelementptr inbounds double, ptr %30224, i64 %30229
  %30231 = load double, ptr %30230, align 8, !tbaa !11
  %30232 = call double @llvm.fmuladd.f64(double 0xBD09800000000002, double %30231, double %30223)
  %30233 = load ptr, ptr %7, align 8, !tbaa !9
  %30234 = load i32, ptr %12, align 4, !tbaa !5
  %30235 = load i32, ptr %8, align 4, !tbaa !5
  %30236 = mul nsw i32 18, %30235
  %30237 = add nsw i32 %30234, %30236
  %30238 = sext i32 %30237 to i64
  %30239 = getelementptr inbounds double, ptr %30233, i64 %30238
  %30240 = load double, ptr %30239, align 8, !tbaa !11
  %30241 = call double @llvm.fmuladd.f64(double 0x40118E7E1D8191B0, double %30240, double %30232)
  %30242 = load ptr, ptr %7, align 8, !tbaa !9
  %30243 = load i32, ptr %12, align 4, !tbaa !5
  %30244 = load i32, ptr %8, align 4, !tbaa !5
  %30245 = mul nsw i32 19, %30244
  %30246 = add nsw i32 %30243, %30245
  %30247 = sext i32 %30246 to i64
  %30248 = getelementptr inbounds double, ptr %30242, i64 %30247
  %30249 = load double, ptr %30248, align 8, !tbaa !11
  %30250 = call double @llvm.fmuladd.f64(double 0x3D0DA00000000003, double %30249, double %30241)
  store double %30250, ptr %11, align 8, !tbaa !11
  %30251 = load double, ptr %11, align 8, !tbaa !11
  %30252 = load ptr, ptr %9, align 8, !tbaa !9
  %30253 = load i32, ptr %12, align 4, !tbaa !5
  %30254 = load i32, ptr %10, align 4, !tbaa !5
  %30255 = mul nsw i32 118, %30254
  %30256 = add nsw i32 %30253, %30255
  %30257 = sext i32 %30256 to i64
  %30258 = getelementptr inbounds double, ptr %30252, i64 %30257
  %30259 = load double, ptr %30258, align 8, !tbaa !11
  %30260 = fadd double %30259, %30251
  store double %30260, ptr %30258, align 8, !tbaa !11
  %30261 = load ptr, ptr %7, align 8, !tbaa !9
  %30262 = load i32, ptr %12, align 4, !tbaa !5
  %30263 = load i32, ptr %8, align 4, !tbaa !5
  %30264 = mul nsw i32 0, %30263
  %30265 = add nsw i32 %30262, %30264
  %30266 = sext i32 %30265 to i64
  %30267 = getelementptr inbounds double, ptr %30261, i64 %30266
  %30268 = load double, ptr %30267, align 8, !tbaa !11
  %30269 = load ptr, ptr %7, align 8, !tbaa !9
  %30270 = load i32, ptr %12, align 4, !tbaa !5
  %30271 = load i32, ptr %8, align 4, !tbaa !5
  %30272 = mul nsw i32 1, %30271
  %30273 = add nsw i32 %30270, %30272
  %30274 = sext i32 %30273 to i64
  %30275 = getelementptr inbounds double, ptr %30269, i64 %30274
  %30276 = load double, ptr %30275, align 8, !tbaa !11
  %30277 = fmul double 0x3CD7800000000000, %30276
  %30278 = call double @llvm.fmuladd.f64(double 0x3CD8000000000001, double %30268, double %30277)
  %30279 = load ptr, ptr %7, align 8, !tbaa !9
  %30280 = load i32, ptr %12, align 4, !tbaa !5
  %30281 = load i32, ptr %8, align 4, !tbaa !5
  %30282 = mul nsw i32 2, %30281
  %30283 = add nsw i32 %30280, %30282
  %30284 = sext i32 %30283 to i64
  %30285 = getelementptr inbounds double, ptr %30279, i64 %30284
  %30286 = load double, ptr %30285, align 8, !tbaa !11
  %30287 = call double @llvm.fmuladd.f64(double 0xBCAE000000000002, double %30286, double %30278)
  %30288 = load ptr, ptr %7, align 8, !tbaa !9
  %30289 = load i32, ptr %12, align 4, !tbaa !5
  %30290 = load i32, ptr %8, align 4, !tbaa !5
  %30291 = mul nsw i32 3, %30290
  %30292 = add nsw i32 %30289, %30291
  %30293 = sext i32 %30292 to i64
  %30294 = getelementptr inbounds double, ptr %30288, i64 %30293
  %30295 = load double, ptr %30294, align 8, !tbaa !11
  %30296 = call double @llvm.fmuladd.f64(double 0x3CA7000000000002, double %30295, double %30287)
  %30297 = load ptr, ptr %7, align 8, !tbaa !9
  %30298 = load i32, ptr %12, align 4, !tbaa !5
  %30299 = load i32, ptr %8, align 4, !tbaa !5
  %30300 = mul nsw i32 4, %30299
  %30301 = add nsw i32 %30298, %30300
  %30302 = sext i32 %30301 to i64
  %30303 = getelementptr inbounds double, ptr %30297, i64 %30302
  %30304 = load double, ptr %30303, align 8, !tbaa !11
  %30305 = call double @llvm.fmuladd.f64(double 0xBCE1800000000000, double %30304, double %30296)
  %30306 = load ptr, ptr %7, align 8, !tbaa !9
  %30307 = load i32, ptr %12, align 4, !tbaa !5
  %30308 = load i32, ptr %8, align 4, !tbaa !5
  %30309 = mul nsw i32 5, %30308
  %30310 = add nsw i32 %30307, %30309
  %30311 = sext i32 %30310 to i64
  %30312 = getelementptr inbounds double, ptr %30306, i64 %30311
  %30313 = load double, ptr %30312, align 8, !tbaa !11
  %30314 = call double @llvm.fmuladd.f64(double 0xBCBC000000000000, double %30313, double %30305)
  %30315 = load ptr, ptr %7, align 8, !tbaa !9
  %30316 = load i32, ptr %12, align 4, !tbaa !5
  %30317 = load i32, ptr %8, align 4, !tbaa !5
  %30318 = mul nsw i32 6, %30317
  %30319 = add nsw i32 %30316, %30318
  %30320 = sext i32 %30319 to i64
  %30321 = getelementptr inbounds double, ptr %30315, i64 %30320
  %30322 = load double, ptr %30321, align 8, !tbaa !11
  %30323 = call double @llvm.fmuladd.f64(double 0xBCC9000000000000, double %30322, double %30314)
  %30324 = load ptr, ptr %7, align 8, !tbaa !9
  %30325 = load i32, ptr %12, align 4, !tbaa !5
  %30326 = load i32, ptr %8, align 4, !tbaa !5
  %30327 = mul nsw i32 7, %30326
  %30328 = add nsw i32 %30325, %30327
  %30329 = sext i32 %30328 to i64
  %30330 = getelementptr inbounds double, ptr %30324, i64 %30329
  %30331 = load double, ptr %30330, align 8, !tbaa !11
  %30332 = call double @llvm.fmuladd.f64(double 0xBCAC000000000000, double %30331, double %30323)
  %30333 = load ptr, ptr %7, align 8, !tbaa !9
  %30334 = load i32, ptr %12, align 4, !tbaa !5
  %30335 = load i32, ptr %8, align 4, !tbaa !5
  %30336 = mul nsw i32 8, %30335
  %30337 = add nsw i32 %30334, %30336
  %30338 = sext i32 %30337 to i64
  %30339 = getelementptr inbounds double, ptr %30333, i64 %30338
  %30340 = load double, ptr %30339, align 8, !tbaa !11
  %30341 = call double @llvm.fmuladd.f64(double 0x3CCD000000000000, double %30340, double %30332)
  %30342 = load ptr, ptr %7, align 8, !tbaa !9
  %30343 = load i32, ptr %12, align 4, !tbaa !5
  %30344 = load i32, ptr %8, align 4, !tbaa !5
  %30345 = mul nsw i32 9, %30344
  %30346 = add nsw i32 %30343, %30345
  %30347 = sext i32 %30346 to i64
  %30348 = getelementptr inbounds double, ptr %30342, i64 %30347
  %30349 = load double, ptr %30348, align 8, !tbaa !11
  %30350 = call double @llvm.fmuladd.f64(double 0x3FD4F58312101B3D, double %30349, double %30341)
  %30351 = load ptr, ptr %7, align 8, !tbaa !9
  %30352 = load i32, ptr %12, align 4, !tbaa !5
  %30353 = load i32, ptr %8, align 4, !tbaa !5
  %30354 = mul nsw i32 10, %30353
  %30355 = add nsw i32 %30352, %30354
  %30356 = sext i32 %30355 to i64
  %30357 = getelementptr inbounds double, ptr %30351, i64 %30356
  %30358 = load double, ptr %30357, align 8, !tbaa !11
  %30359 = call double @llvm.fmuladd.f64(double 0x3D17000000000000, double %30358, double %30350)
  %30360 = load ptr, ptr %7, align 8, !tbaa !9
  %30361 = load i32, ptr %12, align 4, !tbaa !5
  %30362 = load i32, ptr %8, align 4, !tbaa !5
  %30363 = mul nsw i32 11, %30362
  %30364 = add nsw i32 %30361, %30363
  %30365 = sext i32 %30364 to i64
  %30366 = getelementptr inbounds double, ptr %30360, i64 %30365
  %30367 = load double, ptr %30366, align 8, !tbaa !11
  %30368 = call double @llvm.fmuladd.f64(double 0x3D12680000000000, double %30367, double %30359)
  %30369 = load ptr, ptr %7, align 8, !tbaa !9
  %30370 = load i32, ptr %12, align 4, !tbaa !5
  %30371 = load i32, ptr %8, align 4, !tbaa !5
  %30372 = mul nsw i32 12, %30371
  %30373 = add nsw i32 %30370, %30372
  %30374 = sext i32 %30373 to i64
  %30375 = getelementptr inbounds double, ptr %30369, i64 %30374
  %30376 = load double, ptr %30375, align 8, !tbaa !11
  %30377 = call double @llvm.fmuladd.f64(double 0xBCEADFFFFFFFFFFF, double %30376, double %30368)
  %30378 = load ptr, ptr %7, align 8, !tbaa !9
  %30379 = load i32, ptr %12, align 4, !tbaa !5
  %30380 = load i32, ptr %8, align 4, !tbaa !5
  %30381 = mul nsw i32 13, %30380
  %30382 = add nsw i32 %30379, %30381
  %30383 = sext i32 %30382 to i64
  %30384 = getelementptr inbounds double, ptr %30378, i64 %30383
  %30385 = load double, ptr %30384, align 8, !tbaa !11
  %30386 = call double @llvm.fmuladd.f64(double 0x3CF1380000000000, double %30385, double %30377)
  %30387 = load ptr, ptr %7, align 8, !tbaa !9
  %30388 = load i32, ptr %12, align 4, !tbaa !5
  %30389 = load i32, ptr %8, align 4, !tbaa !5
  %30390 = mul nsw i32 14, %30389
  %30391 = add nsw i32 %30388, %30390
  %30392 = sext i32 %30391 to i64
  %30393 = getelementptr inbounds double, ptr %30387, i64 %30392
  %30394 = load double, ptr %30393, align 8, !tbaa !11
  %30395 = call double @llvm.fmuladd.f64(double 0xBD19CFFFFFFFFFFF, double %30394, double %30386)
  %30396 = load ptr, ptr %7, align 8, !tbaa !9
  %30397 = load i32, ptr %12, align 4, !tbaa !5
  %30398 = load i32, ptr %8, align 4, !tbaa !5
  %30399 = mul nsw i32 15, %30398
  %30400 = add nsw i32 %30397, %30399
  %30401 = sext i32 %30400 to i64
  %30402 = getelementptr inbounds double, ptr %30396, i64 %30401
  %30403 = load double, ptr %30402, align 8, !tbaa !11
  %30404 = call double @llvm.fmuladd.f64(double 0xBCF7400000000000, double %30403, double %30395)
  %30405 = load ptr, ptr %7, align 8, !tbaa !9
  %30406 = load i32, ptr %12, align 4, !tbaa !5
  %30407 = load i32, ptr %8, align 4, !tbaa !5
  %30408 = mul nsw i32 16, %30407
  %30409 = add nsw i32 %30406, %30408
  %30410 = sext i32 %30409 to i64
  %30411 = getelementptr inbounds double, ptr %30405, i64 %30410
  %30412 = load double, ptr %30411, align 8, !tbaa !11
  %30413 = call double @llvm.fmuladd.f64(double 0xBD08700000000003, double %30412, double %30404)
  %30414 = load ptr, ptr %7, align 8, !tbaa !9
  %30415 = load i32, ptr %12, align 4, !tbaa !5
  %30416 = load i32, ptr %8, align 4, !tbaa !5
  %30417 = mul nsw i32 17, %30416
  %30418 = add nsw i32 %30415, %30417
  %30419 = sext i32 %30418 to i64
  %30420 = getelementptr inbounds double, ptr %30414, i64 %30419
  %30421 = load double, ptr %30420, align 8, !tbaa !11
  %30422 = call double @llvm.fmuladd.f64(double 0xBCF6E00000000000, double %30421, double %30413)
  %30423 = load ptr, ptr %7, align 8, !tbaa !9
  %30424 = load i32, ptr %12, align 4, !tbaa !5
  %30425 = load i32, ptr %8, align 4, !tbaa !5
  %30426 = mul nsw i32 18, %30425
  %30427 = add nsw i32 %30424, %30426
  %30428 = sext i32 %30427 to i64
  %30429 = getelementptr inbounds double, ptr %30423, i64 %30428
  %30430 = load double, ptr %30429, align 8, !tbaa !11
  %30431 = call double @llvm.fmuladd.f64(double 0x3D0FD00000000002, double %30430, double %30422)
  %30432 = load ptr, ptr %7, align 8, !tbaa !9
  %30433 = load i32, ptr %12, align 4, !tbaa !5
  %30434 = load i32, ptr %8, align 4, !tbaa !5
  %30435 = mul nsw i32 19, %30434
  %30436 = add nsw i32 %30433, %30435
  %30437 = sext i32 %30436 to i64
  %30438 = getelementptr inbounds double, ptr %30432, i64 %30437
  %30439 = load double, ptr %30438, align 8, !tbaa !11
  %30440 = call double @llvm.fmuladd.f64(double 0x40118E7E1D8191B1, double %30439, double %30431)
  store double %30440, ptr %11, align 8, !tbaa !11
  %30441 = load double, ptr %11, align 8, !tbaa !11
  %30442 = load ptr, ptr %9, align 8, !tbaa !9
  %30443 = load i32, ptr %12, align 4, !tbaa !5
  %30444 = load i32, ptr %10, align 4, !tbaa !5
  %30445 = mul nsw i32 119, %30444
  %30446 = add nsw i32 %30443, %30445
  %30447 = sext i32 %30446 to i64
  %30448 = getelementptr inbounds double, ptr %30442, i64 %30447
  %30449 = load double, ptr %30448, align 8, !tbaa !11
  %30450 = fadd double %30449, %30441
  store double %30450, ptr %30448, align 8, !tbaa !11
  br label %30451

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

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