; LLVM IR from SciCompMod/GMGPolar :: src/InputFunctions/SourceTerms (polarR6_SonnendruckerGyro_ShafranovGeometry)

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

%class.PolarR6_SonnendruckerGyro_ShafranovGeometry = type { %class.SourceTerm, double, double, double }
%class.SourceTerm = type { ptr }

; Function Attrs: mustprogress nounwind uwtable
define dso_local noundef double @_ZNK43PolarR6_SonnendruckerGyro_ShafranovGeometry5rhs_fERKdS1_S1_S1_(ptr noundef nonnull align 8 dereferenceable(32) %0, ptr noundef nonnull align 8 dereferenceable(8) %1, ptr noundef nonnull align 8 dereferenceable(8) %2, ptr noundef nonnull align 8 dereferenceable(8) %3, ptr noundef nonnull align 8 dereferenceable(8) %4) unnamed_addr #0 align 2 {
  %6 = alloca ptr, align 8
  %7 = alloca ptr, align 8
  %8 = alloca ptr, align 8
  %9 = alloca ptr, align 8
  %10 = alloca ptr, align 8
  store ptr %0, ptr %6, align 8, !tbaa !5
  store ptr %1, ptr %7, align 8, !tbaa !5
  store ptr %2, ptr %8, align 8, !tbaa !5
  store ptr %3, ptr %9, align 8, !tbaa !5
  store ptr %4, ptr %10, align 8, !tbaa !5
  %11 = load ptr, ptr %6, align 8
  %12 = load ptr, ptr %7, align 8, !tbaa !5
  %13 = load double, ptr %12, align 8, !tbaa !9
  %14 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %15 = load double, ptr %14, align 8, !tbaa !11
  %16 = fdiv double %13, %15
  %17 = call double @pow(double noundef %16, double noundef 6.000000e+00) #3
  %18 = fmul double 4.096000e-01, %17
  %19 = load ptr, ptr %7, align 8, !tbaa !5
  %20 = load double, ptr %19, align 8, !tbaa !9
  %21 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %22 = load double, ptr %21, align 8, !tbaa !11
  %23 = fdiv double %20, %22
  %24 = fsub double %23, 1.000000e+00
  %25 = call double @pow(double noundef %24, double noundef 6.000000e+00) #3
  %26 = fmul double %18, %25
  %27 = load ptr, ptr %8, align 8, !tbaa !5
  %28 = load double, ptr %27, align 8, !tbaa !9
  %29 = fmul double 1.100000e+01, %28
  %30 = call double @cos(double noundef %29) #3
  %31 = fmul double %26, %30
  %32 = load ptr, ptr %7, align 8, !tbaa !5
  %33 = load double, ptr %32, align 8, !tbaa !9
  %34 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %35 = load double, ptr %34, align 8, !tbaa !11
  %36 = fdiv double %33, %35
  %37 = call double @llvm.fmuladd.f64(double 0x402CE38E38E38E20, double %36, double 0xC02638E38E38E388)
  %38 = call double @atan(double noundef %37) #3
  %39 = call double @llvm.fmuladd.f64(double 0xBFD64CB5F7148405, double %38, double 0x3FDCFD52F4677872)
  %40 = fdiv double %31, %39
  %41 = load ptr, ptr %7, align 8, !tbaa !5
  %42 = load double, ptr %41, align 8, !tbaa !9
  %43 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %44 = load double, ptr %43, align 8, !tbaa !11
  %45 = fdiv double %42, %44
  %46 = call double @pow(double noundef %45, double noundef 4.000000e+00) #3
  %47 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %48 = load double, ptr %47, align 8, !tbaa !14
  %49 = fmul double -9.011200e+00, %48
  %50 = load ptr, ptr %7, align 8, !tbaa !5
  %51 = load double, ptr %50, align 8, !tbaa !9
  %52 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %53 = load double, ptr %52, align 8, !tbaa !11
  %54 = fdiv double %51, %53
  %55 = fmul double %49, %54
  %56 = load ptr, ptr %7, align 8, !tbaa !5
  %57 = load double, ptr %56, align 8, !tbaa !9
  %58 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %59 = load double, ptr %58, align 8, !tbaa !11
  %60 = fdiv double %57, %59
  %61 = call double @llvm.fmuladd.f64(double 0x402CE38E38E38E20, double %60, double 0xC02638E38E38E388)
  %62 = call double @atan(double noundef %61) #3
  %63 = call double @llvm.fmuladd.f64(double 0xBFD64CB5F7148405, double %62, double 0x3FDCFD52F4677872)
  %64 = fmul double %55, %63
  %65 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %66 = load double, ptr %65, align 8, !tbaa !15
  %67 = fsub double %66, 1.000000e+00
  %68 = fmul double %64, %67
  %69 = load ptr, ptr %7, align 8, !tbaa !5
  %70 = load double, ptr %69, align 8, !tbaa !9
  %71 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %72 = load double, ptr %71, align 8, !tbaa !11
  %73 = fdiv double %70, %72
  %74 = fsub double %73, 1.000000e+00
  %75 = call double @pow(double noundef %74, double noundef 6.000000e+00) #3
  %76 = fmul double %68, %75
  %77 = load ptr, ptr %9, align 8, !tbaa !5
  %78 = load double, ptr %77, align 8, !tbaa !9
  %79 = fmul double %76, %78
  %80 = load ptr, ptr %8, align 8, !tbaa !5
  %81 = load double, ptr %80, align 8, !tbaa !9
  %82 = fmul double 1.100000e+01, %81
  %83 = call double @sin(double noundef %82) #3
  %84 = fmul double %79, %83
  %85 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %86 = load double, ptr %85, align 8, !tbaa !15
  %87 = fadd double %86, 1.000000e+00
  %88 = call double @pow(double noundef %87, double noundef 2.000000e+00) #3
  %89 = load ptr, ptr %9, align 8, !tbaa !5
  %90 = load double, ptr %89, align 8, !tbaa !9
  %91 = call double @pow(double noundef %90, double noundef 2.000000e+00) #3
  %92 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %93 = load double, ptr %92, align 8, !tbaa !14
  %94 = fmul double -2.000000e+00, %93
  %95 = load ptr, ptr %7, align 8, !tbaa !5
  %96 = load double, ptr %95, align 8, !tbaa !9
  %97 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %98 = load double, ptr %97, align 8, !tbaa !11
  %99 = fdiv double %96, %98
  %100 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %101 = load double, ptr %100, align 8, !tbaa !15
  %102 = load ptr, ptr %10, align 8, !tbaa !5
  %103 = load double, ptr %102, align 8, !tbaa !9
  %104 = fmul double %101, %103
  %105 = fneg double %104
  %106 = call double @llvm.fmuladd.f64(double %94, double %99, double %105)
  %107 = load ptr, ptr %10, align 8, !tbaa !5
  %108 = load double, ptr %107, align 8, !tbaa !9
  %109 = fadd double %106, %108
  %110 = call double @pow(double noundef %109, double noundef 2.000000e+00) #3
  %111 = call double @llvm.fmuladd.f64(double %88, double %91, double %110)
  %112 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %113 = load double, ptr %112, align 8, !tbaa !15
  %114 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %115 = load double, ptr %114, align 8, !tbaa !15
  %116 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %117 = load double, ptr %116, align 8, !tbaa !15
  %118 = fmul double 4.000000e+00, %117
  %119 = load ptr, ptr %9, align 8, !tbaa !5
  %120 = load double, ptr %119, align 8, !tbaa !9
  %121 = call double @pow(double noundef %120, double noundef 2.000000e+00) #3
  %122 = fmul double %118, %121
  %123 = fneg double %122
  %124 = call double @llvm.fmuladd.f64(double %113, double %115, double %123)
  %125 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %126 = load double, ptr %125, align 8, !tbaa !15
  %127 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %126, double %124)
  %128 = fadd double %127, 1.000000e+00
  %129 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %130 = load double, ptr %129, align 8, !tbaa !15
  %131 = fsub double %130, 1.000000e+00
  %132 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %133 = load double, ptr %132, align 8, !tbaa !14
  %134 = fmul double -2.000000e+00, %133
  %135 = load ptr, ptr %7, align 8, !tbaa !5
  %136 = load double, ptr %135, align 8, !tbaa !9
  %137 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %138 = load double, ptr %137, align 8, !tbaa !11
  %139 = fdiv double %136, %138
  %140 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %141 = load double, ptr %140, align 8, !tbaa !15
  %142 = load ptr, ptr %10, align 8, !tbaa !5
  %143 = load double, ptr %142, align 8, !tbaa !9
  %144 = fmul double %141, %143
  %145 = fneg double %144
  %146 = call double @llvm.fmuladd.f64(double %134, double %139, double %145)
  %147 = load ptr, ptr %10, align 8, !tbaa !5
  %148 = load double, ptr %147, align 8, !tbaa !9
  %149 = fadd double %146, %148
  %150 = fmul double %131, %149
  %151 = load ptr, ptr %9, align 8, !tbaa !5
  %152 = load double, ptr %151, align 8, !tbaa !9
  %153 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %154 = load double, ptr %153, align 8, !tbaa !15
  %155 = fadd double %154, 1.000000e+00
  %156 = call double @pow(double noundef %155, double noundef 2.000000e+00) #3
  %157 = fmul double 5.000000e-01, %156
  %158 = load ptr, ptr %8, align 8, !tbaa !5
  %159 = load double, ptr %158, align 8, !tbaa !9
  %160 = fmul double 2.000000e+00, %159
  %161 = call double @sin(double noundef %160) #3
  %162 = fmul double %157, %161
  %163 = call double @llvm.fmuladd.f64(double %150, double %152, double %162)
  %164 = call double @pow(double noundef %163, double noundef 2.000000e+00) #3
  %165 = fneg double %164
  %166 = call double @llvm.fmuladd.f64(double %111, double %128, double %165)
  %167 = call double @sqrt(double noundef %166) #3
  %168 = fdiv double %84, %167
  %169 = load ptr, ptr %7, align 8, !tbaa !5
  %170 = load double, ptr %169, align 8, !tbaa !9
  %171 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %172 = load double, ptr %171, align 8, !tbaa !11
  %173 = fdiv double %170, %172
  %174 = fmul double 4.505600e+00, %173
  %175 = load ptr, ptr %7, align 8, !tbaa !5
  %176 = load double, ptr %175, align 8, !tbaa !9
  %177 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %178 = load double, ptr %177, align 8, !tbaa !11
  %179 = fdiv double %176, %178
  %180 = call double @llvm.fmuladd.f64(double 0x402CE38E38E38E20, double %179, double 0xC02638E38E38E388)
  %181 = call double @atan(double noundef %180) #3
  %182 = call double @llvm.fmuladd.f64(double 0xBFD64CB5F7148405, double %181, double 0x3FDCFD52F4677872)
  %183 = fmul double %174, %182
  %184 = load ptr, ptr %7, align 8, !tbaa !5
  %185 = load double, ptr %184, align 8, !tbaa !9
  %186 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %187 = load double, ptr %186, align 8, !tbaa !11
  %188 = fdiv double %185, %187
  %189 = fsub double %188, 1.000000e+00
  %190 = call double @pow(double noundef %189, double noundef 6.000000e+00) #3
  %191 = fmul double %183, %190
  %192 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %193 = load double, ptr %192, align 8, !tbaa !15
  %194 = fsub double %193, 1.000000e+00
  %195 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %196 = load double, ptr %195, align 8, !tbaa !14
  %197 = fmul double -2.000000e+00, %196
  %198 = load ptr, ptr %7, align 8, !tbaa !5
  %199 = load double, ptr %198, align 8, !tbaa !9
  %200 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %201 = load double, ptr %200, align 8, !tbaa !11
  %202 = fdiv double %199, %201
  %203 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %204 = load double, ptr %203, align 8, !tbaa !15
  %205 = load ptr, ptr %10, align 8, !tbaa !5
  %206 = load double, ptr %205, align 8, !tbaa !9
  %207 = fmul double %204, %206
  %208 = fneg double %207
  %209 = call double @llvm.fmuladd.f64(double %197, double %202, double %208)
  %210 = load ptr, ptr %10, align 8, !tbaa !5
  %211 = load double, ptr %210, align 8, !tbaa !9
  %212 = fadd double %209, %211
  %213 = fmul double %194, %212
  %214 = load ptr, ptr %9, align 8, !tbaa !5
  %215 = load double, ptr %214, align 8, !tbaa !9
  %216 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %217 = load double, ptr %216, align 8, !tbaa !15
  %218 = fadd double %217, 1.000000e+00
  %219 = call double @pow(double noundef %218, double noundef 2.000000e+00) #3
  %220 = fmul double 5.000000e-01, %219
  %221 = load ptr, ptr %8, align 8, !tbaa !5
  %222 = load double, ptr %221, align 8, !tbaa !9
  %223 = fmul double 2.000000e+00, %222
  %224 = call double @sin(double noundef %223) #3
  %225 = fmul double %220, %224
  %226 = call double @llvm.fmuladd.f64(double %213, double %215, double %225)
  %227 = fmul double %191, %226
  %228 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %229 = load double, ptr %228, align 8, !tbaa !14
  %230 = fmul double -2.000000e+00, %229
  %231 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %232 = load double, ptr %231, align 8, !tbaa !15
  %233 = fsub double %232, 1.000000e+00
  %234 = fmul double %230, %233
  %235 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %236 = load double, ptr %235, align 8, !tbaa !15
  %237 = fsub double %236, 1.000000e+00
  %238 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %239 = load double, ptr %238, align 8, !tbaa !14
  %240 = fmul double -2.000000e+00, %239
  %241 = load ptr, ptr %7, align 8, !tbaa !5
  %242 = load double, ptr %241, align 8, !tbaa !9
  %243 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %244 = load double, ptr %243, align 8, !tbaa !11
  %245 = fdiv double %242, %244
  %246 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %247 = load double, ptr %246, align 8, !tbaa !15
  %248 = load ptr, ptr %10, align 8, !tbaa !5
  %249 = load double, ptr %248, align 8, !tbaa !9
  %250 = fmul double %247, %249
  %251 = fneg double %250
  %252 = call double @llvm.fmuladd.f64(double %240, double %245, double %251)
  %253 = load ptr, ptr %10, align 8, !tbaa !5
  %254 = load double, ptr %253, align 8, !tbaa !9
  %255 = fadd double %252, %254
  %256 = fmul double %237, %255
  %257 = load ptr, ptr %9, align 8, !tbaa !5
  %258 = load double, ptr %257, align 8, !tbaa !9
  %259 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %260 = load double, ptr %259, align 8, !tbaa !15
  %261 = fadd double %260, 1.000000e+00
  %262 = call double @pow(double noundef %261, double noundef 2.000000e+00) #3
  %263 = fmul double 5.000000e-01, %262
  %264 = load ptr, ptr %8, align 8, !tbaa !5
  %265 = load double, ptr %264, align 8, !tbaa !9
  %266 = fmul double 2.000000e+00, %265
  %267 = call double @sin(double noundef %266) #3
  %268 = fmul double %263, %267
  %269 = call double @llvm.fmuladd.f64(double %256, double %258, double %268)
  %270 = fmul double %234, %269
  %271 = load ptr, ptr %9, align 8, !tbaa !5
  %272 = load double, ptr %271, align 8, !tbaa !9
  %273 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %274 = load double, ptr %273, align 8, !tbaa !14
  %275 = fmul double 2.000000e+00, %274
  %276 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %277 = load double, ptr %276, align 8, !tbaa !14
  %278 = fmul double -2.000000e+00, %277
  %279 = load ptr, ptr %7, align 8, !tbaa !5
  %280 = load double, ptr %279, align 8, !tbaa !9
  %281 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %282 = load double, ptr %281, align 8, !tbaa !11
  %283 = fdiv double %280, %282
  %284 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %285 = load double, ptr %284, align 8, !tbaa !15
  %286 = load ptr, ptr %10, align 8, !tbaa !5
  %287 = load double, ptr %286, align 8, !tbaa !9
  %288 = fmul double %285, %287
  %289 = fneg double %288
  %290 = call double @llvm.fmuladd.f64(double %278, double %283, double %289)
  %291 = load ptr, ptr %10, align 8, !tbaa !5
  %292 = load double, ptr %291, align 8, !tbaa !9
  %293 = fadd double %290, %292
  %294 = fmul double %275, %293
  %295 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %296 = load double, ptr %295, align 8, !tbaa !15
  %297 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %298 = load double, ptr %297, align 8, !tbaa !15
  %299 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %300 = load double, ptr %299, align 8, !tbaa !15
  %301 = fmul double 4.000000e+00, %300
  %302 = load ptr, ptr %9, align 8, !tbaa !5
  %303 = load double, ptr %302, align 8, !tbaa !9
  %304 = call double @pow(double noundef %303, double noundef 2.000000e+00) #3
  %305 = fmul double %301, %304
  %306 = fneg double %305
  %307 = call double @llvm.fmuladd.f64(double %296, double %298, double %306)
  %308 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %309 = load double, ptr %308, align 8, !tbaa !15
  %310 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %309, double %307)
  %311 = fadd double %310, 1.000000e+00
  %312 = fmul double %294, %311
  %313 = call double @llvm.fmuladd.f64(double %270, double %272, double %312)
  %314 = fmul double %227, %313
  %315 = load ptr, ptr %8, align 8, !tbaa !5
  %316 = load double, ptr %315, align 8, !tbaa !9
  %317 = fmul double 1.100000e+01, %316
  %318 = call double @sin(double noundef %317) #3
  %319 = fmul double %314, %318
  %320 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %321 = load double, ptr %320, align 8, !tbaa !15
  %322 = fadd double %321, 1.000000e+00
  %323 = call double @pow(double noundef %322, double noundef 2.000000e+00) #3
  %324 = load ptr, ptr %9, align 8, !tbaa !5
  %325 = load double, ptr %324, align 8, !tbaa !9
  %326 = call double @pow(double noundef %325, double noundef 2.000000e+00) #3
  %327 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %328 = load double, ptr %327, align 8, !tbaa !14
  %329 = fmul double -2.000000e+00, %328
  %330 = load ptr, ptr %7, align 8, !tbaa !5
  %331 = load double, ptr %330, align 8, !tbaa !9
  %332 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %333 = load double, ptr %332, align 8, !tbaa !11
  %334 = fdiv double %331, %333
  %335 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %336 = load double, ptr %335, align 8, !tbaa !15
  %337 = load ptr, ptr %10, align 8, !tbaa !5
  %338 = load double, ptr %337, align 8, !tbaa !9
  %339 = fmul double %336, %338
  %340 = fneg double %339
  %341 = call double @llvm.fmuladd.f64(double %329, double %334, double %340)
  %342 = load ptr, ptr %10, align 8, !tbaa !5
  %343 = load double, ptr %342, align 8, !tbaa !9
  %344 = fadd double %341, %343
  %345 = call double @pow(double noundef %344, double noundef 2.000000e+00) #3
  %346 = call double @llvm.fmuladd.f64(double %323, double %326, double %345)
  %347 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %348 = load double, ptr %347, align 8, !tbaa !15
  %349 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %350 = load double, ptr %349, align 8, !tbaa !15
  %351 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %352 = load double, ptr %351, align 8, !tbaa !15
  %353 = fmul double 4.000000e+00, %352
  %354 = load ptr, ptr %9, align 8, !tbaa !5
  %355 = load double, ptr %354, align 8, !tbaa !9
  %356 = call double @pow(double noundef %355, double noundef 2.000000e+00) #3
  %357 = fmul double %353, %356
  %358 = fneg double %357
  %359 = call double @llvm.fmuladd.f64(double %348, double %350, double %358)
  %360 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %361 = load double, ptr %360, align 8, !tbaa !15
  %362 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %361, double %359)
  %363 = fadd double %362, 1.000000e+00
  %364 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %365 = load double, ptr %364, align 8, !tbaa !15
  %366 = fsub double %365, 1.000000e+00
  %367 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %368 = load double, ptr %367, align 8, !tbaa !14
  %369 = fmul double -2.000000e+00, %368
  %370 = load ptr, ptr %7, align 8, !tbaa !5
  %371 = load double, ptr %370, align 8, !tbaa !9
  %372 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %373 = load double, ptr %372, align 8, !tbaa !11
  %374 = fdiv double %371, %373
  %375 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %376 = load double, ptr %375, align 8, !tbaa !15
  %377 = load ptr, ptr %10, align 8, !tbaa !5
  %378 = load double, ptr %377, align 8, !tbaa !9
  %379 = fmul double %376, %378
  %380 = fneg double %379
  %381 = call double @llvm.fmuladd.f64(double %369, double %374, double %380)
  %382 = load ptr, ptr %10, align 8, !tbaa !5
  %383 = load double, ptr %382, align 8, !tbaa !9
  %384 = fadd double %381, %383
  %385 = fmul double %366, %384
  %386 = load ptr, ptr %9, align 8, !tbaa !5
  %387 = load double, ptr %386, align 8, !tbaa !9
  %388 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %389 = load double, ptr %388, align 8, !tbaa !15
  %390 = fadd double %389, 1.000000e+00
  %391 = call double @pow(double noundef %390, double noundef 2.000000e+00) #3
  %392 = fmul double 5.000000e-01, %391
  %393 = load ptr, ptr %8, align 8, !tbaa !5
  %394 = load double, ptr %393, align 8, !tbaa !9
  %395 = fmul double 2.000000e+00, %394
  %396 = call double @sin(double noundef %395) #3
  %397 = fmul double %392, %396
  %398 = call double @llvm.fmuladd.f64(double %385, double %387, double %397)
  %399 = call double @pow(double noundef %398, double noundef 2.000000e+00) #3
  %400 = fneg double %399
  %401 = call double @llvm.fmuladd.f64(double %346, double %363, double %400)
  %402 = call double @pow(double noundef %401, double noundef 1.500000e+00) #3
  %403 = fdiv double %319, %402
  %404 = fadd double %168, %403
  %405 = load ptr, ptr %7, align 8, !tbaa !5
  %406 = load double, ptr %405, align 8, !tbaa !9
  %407 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %408 = load double, ptr %407, align 8, !tbaa !11
  %409 = fdiv double %406, %408
  %410 = fmul double 2.703360e+01, %409
  %411 = load ptr, ptr %7, align 8, !tbaa !5
  %412 = load double, ptr %411, align 8, !tbaa !9
  %413 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %414 = load double, ptr %413, align 8, !tbaa !11
  %415 = fdiv double %412, %414
  %416 = call double @llvm.fmuladd.f64(double 0x402CE38E38E38E20, double %415, double 0xC02638E38E38E388)
  %417 = call double @atan(double noundef %416) #3
  %418 = call double @llvm.fmuladd.f64(double 0xBFD64CB5F7148405, double %417, double 0x3FDCFD52F4677872)
  %419 = fmul double %410, %418
  %420 = load ptr, ptr %7, align 8, !tbaa !5
  %421 = load double, ptr %420, align 8, !tbaa !9
  %422 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %423 = load double, ptr %422, align 8, !tbaa !11
  %424 = fdiv double %421, %423
  %425 = fsub double %424, 1.000000e+00
  %426 = call double @pow(double noundef %425, double noundef 5.000000e+00) #3
  %427 = fmul double %419, %426
  %428 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %429 = load double, ptr %428, align 8, !tbaa !15
  %430 = fsub double %429, 1.000000e+00
  %431 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %432 = load double, ptr %431, align 8, !tbaa !14
  %433 = fmul double -2.000000e+00, %432
  %434 = load ptr, ptr %7, align 8, !tbaa !5
  %435 = load double, ptr %434, align 8, !tbaa !9
  %436 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %437 = load double, ptr %436, align 8, !tbaa !11
  %438 = fdiv double %435, %437
  %439 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %440 = load double, ptr %439, align 8, !tbaa !15
  %441 = load ptr, ptr %10, align 8, !tbaa !5
  %442 = load double, ptr %441, align 8, !tbaa !9
  %443 = fmul double %440, %442
  %444 = fneg double %443
  %445 = call double @llvm.fmuladd.f64(double %433, double %438, double %444)
  %446 = load ptr, ptr %10, align 8, !tbaa !5
  %447 = load double, ptr %446, align 8, !tbaa !9
  %448 = fadd double %445, %447
  %449 = fmul double %430, %448
  %450 = load ptr, ptr %9, align 8, !tbaa !5
  %451 = load double, ptr %450, align 8, !tbaa !9
  %452 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %453 = load double, ptr %452, align 8, !tbaa !15
  %454 = fadd double %453, 1.000000e+00
  %455 = call double @pow(double noundef %454, double noundef 2.000000e+00) #3
  %456 = fmul double 5.000000e-01, %455
  %457 = load ptr, ptr %8, align 8, !tbaa !5
  %458 = load double, ptr %457, align 8, !tbaa !9
  %459 = fmul double 2.000000e+00, %458
  %460 = call double @sin(double noundef %459) #3
  %461 = fmul double %456, %460
  %462 = call double @llvm.fmuladd.f64(double %449, double %451, double %461)
  %463 = fmul double %427, %462
  %464 = load ptr, ptr %8, align 8, !tbaa !5
  %465 = load double, ptr %464, align 8, !tbaa !9
  %466 = fmul double 1.100000e+01, %465
  %467 = call double @sin(double noundef %466) #3
  %468 = fmul double %463, %467
  %469 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %470 = load double, ptr %469, align 8, !tbaa !15
  %471 = fadd double %470, 1.000000e+00
  %472 = call double @pow(double noundef %471, double noundef 2.000000e+00) #3
  %473 = load ptr, ptr %9, align 8, !tbaa !5
  %474 = load double, ptr %473, align 8, !tbaa !9
  %475 = call double @pow(double noundef %474, double noundef 2.000000e+00) #3
  %476 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %477 = load double, ptr %476, align 8, !tbaa !14
  %478 = fmul double -2.000000e+00, %477
  %479 = load ptr, ptr %7, align 8, !tbaa !5
  %480 = load double, ptr %479, align 8, !tbaa !9
  %481 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %482 = load double, ptr %481, align 8, !tbaa !11
  %483 = fdiv double %480, %482
  %484 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %485 = load double, ptr %484, align 8, !tbaa !15
  %486 = load ptr, ptr %10, align 8, !tbaa !5
  %487 = load double, ptr %486, align 8, !tbaa !9
  %488 = fmul double %485, %487
  %489 = fneg double %488
  %490 = call double @llvm.fmuladd.f64(double %478, double %483, double %489)
  %491 = load ptr, ptr %10, align 8, !tbaa !5
  %492 = load double, ptr %491, align 8, !tbaa !9
  %493 = fadd double %490, %492
  %494 = call double @pow(double noundef %493, double noundef 2.000000e+00) #3
  %495 = call double @llvm.fmuladd.f64(double %472, double %475, double %494)
  %496 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %497 = load double, ptr %496, align 8, !tbaa !15
  %498 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %499 = load double, ptr %498, align 8, !tbaa !15
  %500 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %501 = load double, ptr %500, align 8, !tbaa !15
  %502 = fmul double 4.000000e+00, %501
  %503 = load ptr, ptr %9, align 8, !tbaa !5
  %504 = load double, ptr %503, align 8, !tbaa !9
  %505 = call double @pow(double noundef %504, double noundef 2.000000e+00) #3
  %506 = fmul double %502, %505
  %507 = fneg double %506
  %508 = call double @llvm.fmuladd.f64(double %497, double %499, double %507)
  %509 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %510 = load double, ptr %509, align 8, !tbaa !15
  %511 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %510, double %508)
  %512 = fadd double %511, 1.000000e+00
  %513 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %514 = load double, ptr %513, align 8, !tbaa !15
  %515 = fsub double %514, 1.000000e+00
  %516 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %517 = load double, ptr %516, align 8, !tbaa !14
  %518 = fmul double -2.000000e+00, %517
  %519 = load ptr, ptr %7, align 8, !tbaa !5
  %520 = load double, ptr %519, align 8, !tbaa !9
  %521 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %522 = load double, ptr %521, align 8, !tbaa !11
  %523 = fdiv double %520, %522
  %524 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %525 = load double, ptr %524, align 8, !tbaa !15
  %526 = load ptr, ptr %10, align 8, !tbaa !5
  %527 = load double, ptr %526, align 8, !tbaa !9
  %528 = fmul double %525, %527
  %529 = fneg double %528
  %530 = call double @llvm.fmuladd.f64(double %518, double %523, double %529)
  %531 = load ptr, ptr %10, align 8, !tbaa !5
  %532 = load double, ptr %531, align 8, !tbaa !9
  %533 = fadd double %530, %532
  %534 = fmul double %515, %533
  %535 = load ptr, ptr %9, align 8, !tbaa !5
  %536 = load double, ptr %535, align 8, !tbaa !9
  %537 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %538 = load double, ptr %537, align 8, !tbaa !15
  %539 = fadd double %538, 1.000000e+00
  %540 = call double @pow(double noundef %539, double noundef 2.000000e+00) #3
  %541 = fmul double 5.000000e-01, %540
  %542 = load ptr, ptr %8, align 8, !tbaa !5
  %543 = load double, ptr %542, align 8, !tbaa !9
  %544 = fmul double 2.000000e+00, %543
  %545 = call double @sin(double noundef %544) #3
  %546 = fmul double %541, %545
  %547 = call double @llvm.fmuladd.f64(double %534, double %536, double %546)
  %548 = call double @pow(double noundef %547, double noundef 2.000000e+00) #3
  %549 = fneg double %548
  %550 = call double @llvm.fmuladd.f64(double %495, double %512, double %549)
  %551 = call double @sqrt(double noundef %550) #3
  %552 = fdiv double %468, %551
  %553 = fadd double %404, %552
  %554 = load ptr, ptr %7, align 8, !tbaa !5
  %555 = load double, ptr %554, align 8, !tbaa !9
  %556 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %557 = load double, ptr %556, align 8, !tbaa !11
  %558 = fdiv double %555, %557
  %559 = load ptr, ptr %7, align 8, !tbaa !5
  %560 = load double, ptr %559, align 8, !tbaa !9
  %561 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %562 = load double, ptr %561, align 8, !tbaa !11
  %563 = fdiv double %560, %562
  %564 = call double @llvm.fmuladd.f64(double 0x402CE38E38E38E20, double %563, double 0xC02638E38E38E388)
  %565 = call double @atan(double noundef %564) #3
  %566 = call double @llvm.fmuladd.f64(double 0xBFD64CB5F7148405, double %565, double 0x3FDCFD52F4677872)
  %567 = fmul double %558, %566
  %568 = load ptr, ptr %7, align 8, !tbaa !5
  %569 = load double, ptr %568, align 8, !tbaa !9
  %570 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %571 = load double, ptr %570, align 8, !tbaa !11
  %572 = fdiv double %569, %571
  %573 = fmul double 1.228800e+01, %572
  %574 = load ptr, ptr %7, align 8, !tbaa !5
  %575 = load double, ptr %574, align 8, !tbaa !9
  %576 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %577 = load double, ptr %576, align 8, !tbaa !11
  %578 = fdiv double %575, %577
  %579 = fsub double %578, 1.000000e+00
  %580 = call double @pow(double noundef %579, double noundef 4.000000e+00) #3
  %581 = fmul double %573, %580
  %582 = load ptr, ptr %8, align 8, !tbaa !5
  %583 = load double, ptr %582, align 8, !tbaa !9
  %584 = fmul double 1.100000e+01, %583
  %585 = call double @cos(double noundef %584) #3
  %586 = load ptr, ptr %7, align 8, !tbaa !5
  %587 = load double, ptr %586, align 8, !tbaa !9
  %588 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %589 = load double, ptr %588, align 8, !tbaa !11
  %590 = fdiv double %587, %589
  %591 = fsub double %590, 1.000000e+00
  %592 = call double @pow(double noundef %591, double noundef 5.000000e+00) #3
  %593 = fmul double 1.720320e+01, %592
  %594 = load ptr, ptr %8, align 8, !tbaa !5
  %595 = load double, ptr %594, align 8, !tbaa !9
  %596 = fmul double 1.100000e+01, %595
  %597 = call double @cos(double noundef %596) #3
  %598 = fmul double %593, %597
  %599 = call double @llvm.fmuladd.f64(double %581, double %585, double %598)
  %600 = fmul double %567, %599
  %601 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %602 = load double, ptr %601, align 8, !tbaa !15
  %603 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %604 = load double, ptr %603, align 8, !tbaa !15
  %605 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %606 = load double, ptr %605, align 8, !tbaa !15
  %607 = fmul double 4.000000e+00, %606
  %608 = load ptr, ptr %9, align 8, !tbaa !5
  %609 = load double, ptr %608, align 8, !tbaa !9
  %610 = call double @pow(double noundef %609, double noundef 2.000000e+00) #3
  %611 = fmul double %607, %610
  %612 = fneg double %611
  %613 = call double @llvm.fmuladd.f64(double %602, double %604, double %612)
  %614 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %615 = load double, ptr %614, align 8, !tbaa !15
  %616 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %615, double %613)
  %617 = fadd double %616, 1.000000e+00
  %618 = fmul double %600, %617
  %619 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %620 = load double, ptr %619, align 8, !tbaa !15
  %621 = fadd double %620, 1.000000e+00
  %622 = call double @pow(double noundef %621, double noundef 2.000000e+00) #3
  %623 = load ptr, ptr %9, align 8, !tbaa !5
  %624 = load double, ptr %623, align 8, !tbaa !9
  %625 = call double @pow(double noundef %624, double noundef 2.000000e+00) #3
  %626 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %627 = load double, ptr %626, align 8, !tbaa !14
  %628 = fmul double -2.000000e+00, %627
  %629 = load ptr, ptr %7, align 8, !tbaa !5
  %630 = load double, ptr %629, align 8, !tbaa !9
  %631 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %632 = load double, ptr %631, align 8, !tbaa !11
  %633 = fdiv double %630, %632
  %634 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %635 = load double, ptr %634, align 8, !tbaa !15
  %636 = load ptr, ptr %10, align 8, !tbaa !5
  %637 = load double, ptr %636, align 8, !tbaa !9
  %638 = fmul double %635, %637
  %639 = fneg double %638
  %640 = call double @llvm.fmuladd.f64(double %628, double %633, double %639)
  %641 = load ptr, ptr %10, align 8, !tbaa !5
  %642 = load double, ptr %641, align 8, !tbaa !9
  %643 = fadd double %640, %642
  %644 = call double @pow(double noundef %643, double noundef 2.000000e+00) #3
  %645 = call double @llvm.fmuladd.f64(double %622, double %625, double %644)
  %646 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %647 = load double, ptr %646, align 8, !tbaa !15
  %648 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %649 = load double, ptr %648, align 8, !tbaa !15
  %650 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %651 = load double, ptr %650, align 8, !tbaa !15
  %652 = fmul double 4.000000e+00, %651
  %653 = load ptr, ptr %9, align 8, !tbaa !5
  %654 = load double, ptr %653, align 8, !tbaa !9
  %655 = call double @pow(double noundef %654, double noundef 2.000000e+00) #3
  %656 = fmul double %652, %655
  %657 = fneg double %656
  %658 = call double @llvm.fmuladd.f64(double %647, double %649, double %657)
  %659 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %660 = load double, ptr %659, align 8, !tbaa !15
  %661 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %660, double %658)
  %662 = fadd double %661, 1.000000e+00
  %663 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %664 = load double, ptr %663, align 8, !tbaa !15
  %665 = fsub double %664, 1.000000e+00
  %666 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %667 = load double, ptr %666, align 8, !tbaa !14
  %668 = fmul double -2.000000e+00, %667
  %669 = load ptr, ptr %7, align 8, !tbaa !5
  %670 = load double, ptr %669, align 8, !tbaa !9
  %671 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %672 = load double, ptr %671, align 8, !tbaa !11
  %673 = fdiv double %670, %672
  %674 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %675 = load double, ptr %674, align 8, !tbaa !15
  %676 = load ptr, ptr %10, align 8, !tbaa !5
  %677 = load double, ptr %676, align 8, !tbaa !9
  %678 = fmul double %675, %677
  %679 = fneg double %678
  %680 = call double @llvm.fmuladd.f64(double %668, double %673, double %679)
  %681 = load ptr, ptr %10, align 8, !tbaa !5
  %682 = load double, ptr %681, align 8, !tbaa !9
  %683 = fadd double %680, %682
  %684 = fmul double %665, %683
  %685 = load ptr, ptr %9, align 8, !tbaa !5
  %686 = load double, ptr %685, align 8, !tbaa !9
  %687 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %688 = load double, ptr %687, align 8, !tbaa !15
  %689 = fadd double %688, 1.000000e+00
  %690 = call double @pow(double noundef %689, double noundef 2.000000e+00) #3
  %691 = fmul double 5.000000e-01, %690
  %692 = load ptr, ptr %8, align 8, !tbaa !5
  %693 = load double, ptr %692, align 8, !tbaa !9
  %694 = fmul double 2.000000e+00, %693
  %695 = call double @sin(double noundef %694) #3
  %696 = fmul double %691, %695
  %697 = call double @llvm.fmuladd.f64(double %684, double %686, double %696)
  %698 = call double @pow(double noundef %697, double noundef 2.000000e+00) #3
  %699 = fneg double %698
  %700 = call double @llvm.fmuladd.f64(double %645, double %662, double %699)
  %701 = call double @sqrt(double noundef %700) #3
  %702 = fdiv double %618, %701
  %703 = fadd double %553, %702
  %704 = load ptr, ptr %7, align 8, !tbaa !5
  %705 = load double, ptr %704, align 8, !tbaa !9
  %706 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %707 = load double, ptr %706, align 8, !tbaa !11
  %708 = fdiv double %705, %707
  %709 = load ptr, ptr %7, align 8, !tbaa !5
  %710 = load double, ptr %709, align 8, !tbaa !9
  %711 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %712 = load double, ptr %711, align 8, !tbaa !11
  %713 = fdiv double %710, %712
  %714 = call double @llvm.fmuladd.f64(double 0x402CE38E38E38E20, double %713, double 0xC02638E38E38E388)
  %715 = call double @atan(double noundef %714) #3
  %716 = call double @llvm.fmuladd.f64(double 0xBFD64CB5F7148405, double %715, double 0x3FDCFD52F4677872)
  %717 = fmul double %708, %716
  %718 = load ptr, ptr %7, align 8, !tbaa !5
  %719 = load double, ptr %718, align 8, !tbaa !9
  %720 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %721 = load double, ptr %720, align 8, !tbaa !11
  %722 = fdiv double %719, %721
  %723 = fmul double 2.457600e+00, %722
  %724 = load ptr, ptr %7, align 8, !tbaa !5
  %725 = load double, ptr %724, align 8, !tbaa !9
  %726 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %727 = load double, ptr %726, align 8, !tbaa !11
  %728 = fdiv double %725, %727
  %729 = fsub double %728, 1.000000e+00
  %730 = call double @pow(double noundef %729, double noundef 5.000000e+00) #3
  %731 = fmul double %723, %730
  %732 = load ptr, ptr %8, align 8, !tbaa !5
  %733 = load double, ptr %732, align 8, !tbaa !9
  %734 = fmul double 1.100000e+01, %733
  %735 = call double @cos(double noundef %734) #3
  %736 = load ptr, ptr %7, align 8, !tbaa !5
  %737 = load double, ptr %736, align 8, !tbaa !9
  %738 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %739 = load double, ptr %738, align 8, !tbaa !11
  %740 = fdiv double %737, %739
  %741 = fsub double %740, 1.000000e+00
  %742 = call double @pow(double noundef %741, double noundef 6.000000e+00) #3
  %743 = fmul double 2.457600e+00, %742
  %744 = load ptr, ptr %8, align 8, !tbaa !5
  %745 = load double, ptr %744, align 8, !tbaa !9
  %746 = fmul double 1.100000e+01, %745
  %747 = call double @cos(double noundef %746) #3
  %748 = fmul double %743, %747
  %749 = call double @llvm.fmuladd.f64(double %731, double %735, double %748)
  %750 = fmul double %717, %749
  %751 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %752 = load double, ptr %751, align 8, !tbaa !14
  %753 = fmul double -2.000000e+00, %752
  %754 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %755 = load double, ptr %754, align 8, !tbaa !15
  %756 = fsub double %755, 1.000000e+00
  %757 = fmul double %753, %756
  %758 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %759 = load double, ptr %758, align 8, !tbaa !15
  %760 = fsub double %759, 1.000000e+00
  %761 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %762 = load double, ptr %761, align 8, !tbaa !14
  %763 = fmul double -2.000000e+00, %762
  %764 = load ptr, ptr %7, align 8, !tbaa !5
  %765 = load double, ptr %764, align 8, !tbaa !9
  %766 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %767 = load double, ptr %766, align 8, !tbaa !11
  %768 = fdiv double %765, %767
  %769 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %770 = load double, ptr %769, align 8, !tbaa !15
  %771 = load ptr, ptr %10, align 8, !tbaa !5
  %772 = load double, ptr %771, align 8, !tbaa !9
  %773 = fmul double %770, %772
  %774 = fneg double %773
  %775 = call double @llvm.fmuladd.f64(double %763, double %768, double %774)
  %776 = load ptr, ptr %10, align 8, !tbaa !5
  %777 = load double, ptr %776, align 8, !tbaa !9
  %778 = fadd double %775, %777
  %779 = fmul double %760, %778
  %780 = load ptr, ptr %9, align 8, !tbaa !5
  %781 = load double, ptr %780, align 8, !tbaa !9
  %782 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %783 = load double, ptr %782, align 8, !tbaa !15
  %784 = fadd double %783, 1.000000e+00
  %785 = call double @pow(double noundef %784, double noundef 2.000000e+00) #3
  %786 = fmul double 5.000000e-01, %785
  %787 = load ptr, ptr %8, align 8, !tbaa !5
  %788 = load double, ptr %787, align 8, !tbaa !9
  %789 = fmul double 2.000000e+00, %788
  %790 = call double @sin(double noundef %789) #3
  %791 = fmul double %786, %790
  %792 = call double @llvm.fmuladd.f64(double %779, double %781, double %791)
  %793 = fmul double %757, %792
  %794 = load ptr, ptr %9, align 8, !tbaa !5
  %795 = load double, ptr %794, align 8, !tbaa !9
  %796 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %797 = load double, ptr %796, align 8, !tbaa !14
  %798 = fmul double 2.000000e+00, %797
  %799 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %800 = load double, ptr %799, align 8, !tbaa !14
  %801 = fmul double -2.000000e+00, %800
  %802 = load ptr, ptr %7, align 8, !tbaa !5
  %803 = load double, ptr %802, align 8, !tbaa !9
  %804 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %805 = load double, ptr %804, align 8, !tbaa !11
  %806 = fdiv double %803, %805
  %807 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %808 = load double, ptr %807, align 8, !tbaa !15
  %809 = load ptr, ptr %10, align 8, !tbaa !5
  %810 = load double, ptr %809, align 8, !tbaa !9
  %811 = fmul double %808, %810
  %812 = fneg double %811
  %813 = call double @llvm.fmuladd.f64(double %801, double %806, double %812)
  %814 = load ptr, ptr %10, align 8, !tbaa !5
  %815 = load double, ptr %814, align 8, !tbaa !9
  %816 = fadd double %813, %815
  %817 = fmul double %798, %816
  %818 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %819 = load double, ptr %818, align 8, !tbaa !15
  %820 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %821 = load double, ptr %820, align 8, !tbaa !15
  %822 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %823 = load double, ptr %822, align 8, !tbaa !15
  %824 = fmul double 4.000000e+00, %823
  %825 = load ptr, ptr %9, align 8, !tbaa !5
  %826 = load double, ptr %825, align 8, !tbaa !9
  %827 = call double @pow(double noundef %826, double noundef 2.000000e+00) #3
  %828 = fmul double %824, %827
  %829 = fneg double %828
  %830 = call double @llvm.fmuladd.f64(double %819, double %821, double %829)
  %831 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %832 = load double, ptr %831, align 8, !tbaa !15
  %833 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %832, double %830)
  %834 = fadd double %833, 1.000000e+00
  %835 = fmul double %817, %834
  %836 = call double @llvm.fmuladd.f64(double %793, double %795, double %835)
  %837 = fmul double %750, %836
  %838 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %839 = load double, ptr %838, align 8, !tbaa !15
  %840 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %841 = load double, ptr %840, align 8, !tbaa !15
  %842 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %843 = load double, ptr %842, align 8, !tbaa !15
  %844 = fmul double 4.000000e+00, %843
  %845 = load ptr, ptr %9, align 8, !tbaa !5
  %846 = load double, ptr %845, align 8, !tbaa !9
  %847 = call double @pow(double noundef %846, double noundef 2.000000e+00) #3
  %848 = fmul double %844, %847
  %849 = fneg double %848
  %850 = call double @llvm.fmuladd.f64(double %839, double %841, double %849)
  %851 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %852 = load double, ptr %851, align 8, !tbaa !15
  %853 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %852, double %850)
  %854 = fadd double %853, 1.000000e+00
  %855 = fmul double %837, %854
  %856 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %857 = load double, ptr %856, align 8, !tbaa !15
  %858 = fadd double %857, 1.000000e+00
  %859 = call double @pow(double noundef %858, double noundef 2.000000e+00) #3
  %860 = load ptr, ptr %9, align 8, !tbaa !5
  %861 = load double, ptr %860, align 8, !tbaa !9
  %862 = call double @pow(double noundef %861, double noundef 2.000000e+00) #3
  %863 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %864 = load double, ptr %863, align 8, !tbaa !14
  %865 = fmul double -2.000000e+00, %864
  %866 = load ptr, ptr %7, align 8, !tbaa !5
  %867 = load double, ptr %866, align 8, !tbaa !9
  %868 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %869 = load double, ptr %868, align 8, !tbaa !11
  %870 = fdiv double %867, %869
  %871 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %872 = load double, ptr %871, align 8, !tbaa !15
  %873 = load ptr, ptr %10, align 8, !tbaa !5
  %874 = load double, ptr %873, align 8, !tbaa !9
  %875 = fmul double %872, %874
  %876 = fneg double %875
  %877 = call double @llvm.fmuladd.f64(double %865, double %870, double %876)
  %878 = load ptr, ptr %10, align 8, !tbaa !5
  %879 = load double, ptr %878, align 8, !tbaa !9
  %880 = fadd double %877, %879
  %881 = call double @pow(double noundef %880, double noundef 2.000000e+00) #3
  %882 = call double @llvm.fmuladd.f64(double %859, double %862, double %881)
  %883 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %884 = load double, ptr %883, align 8, !tbaa !15
  %885 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %886 = load double, ptr %885, align 8, !tbaa !15
  %887 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %888 = load double, ptr %887, align 8, !tbaa !15
  %889 = fmul double 4.000000e+00, %888
  %890 = load ptr, ptr %9, align 8, !tbaa !5
  %891 = load double, ptr %890, align 8, !tbaa !9
  %892 = call double @pow(double noundef %891, double noundef 2.000000e+00) #3
  %893 = fmul double %889, %892
  %894 = fneg double %893
  %895 = call double @llvm.fmuladd.f64(double %884, double %886, double %894)
  %896 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %897 = load double, ptr %896, align 8, !tbaa !15
  %898 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %897, double %895)
  %899 = fadd double %898, 1.000000e+00
  %900 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %901 = load double, ptr %900, align 8, !tbaa !15
  %902 = fsub double %901, 1.000000e+00
  %903 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %904 = load double, ptr %903, align 8, !tbaa !14
  %905 = fmul double -2.000000e+00, %904
  %906 = load ptr, ptr %7, align 8, !tbaa !5
  %907 = load double, ptr %906, align 8, !tbaa !9
  %908 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %909 = load double, ptr %908, align 8, !tbaa !11
  %910 = fdiv double %907, %909
  %911 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %912 = load double, ptr %911, align 8, !tbaa !15
  %913 = load ptr, ptr %10, align 8, !tbaa !5
  %914 = load double, ptr %913, align 8, !tbaa !9
  %915 = fmul double %912, %914
  %916 = fneg double %915
  %917 = call double @llvm.fmuladd.f64(double %905, double %910, double %916)
  %918 = load ptr, ptr %10, align 8, !tbaa !5
  %919 = load double, ptr %918, align 8, !tbaa !9
  %920 = fadd double %917, %919
  %921 = fmul double %902, %920
  %922 = load ptr, ptr %9, align 8, !tbaa !5
  %923 = load double, ptr %922, align 8, !tbaa !9
  %924 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %925 = load double, ptr %924, align 8, !tbaa !15
  %926 = fadd double %925, 1.000000e+00
  %927 = call double @pow(double noundef %926, double noundef 2.000000e+00) #3
  %928 = fmul double 5.000000e-01, %927
  %929 = load ptr, ptr %8, align 8, !tbaa !5
  %930 = load double, ptr %929, align 8, !tbaa !9
  %931 = fmul double 2.000000e+00, %930
  %932 = call double @sin(double noundef %931) #3
  %933 = fmul double %928, %932
  %934 = call double @llvm.fmuladd.f64(double %921, double %923, double %933)
  %935 = call double @pow(double noundef %934, double noundef 2.000000e+00) #3
  %936 = fneg double %935
  %937 = call double @llvm.fmuladd.f64(double %882, double %899, double %936)
  %938 = call double @pow(double noundef %937, double noundef 1.500000e+00) #3
  %939 = fdiv double %855, %938
  %940 = fadd double %703, %939
  %941 = load ptr, ptr %7, align 8, !tbaa !5
  %942 = load double, ptr %941, align 8, !tbaa !9
  %943 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %944 = load double, ptr %943, align 8, !tbaa !11
  %945 = fdiv double %942, %944
  %946 = fmul double 0x4036AD1FE4B99CC6, %945
  %947 = load ptr, ptr %7, align 8, !tbaa !5
  %948 = load double, ptr %947, align 8, !tbaa !9
  %949 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %950 = load double, ptr %949, align 8, !tbaa !11
  %951 = fdiv double %948, %950
  %952 = fsub double %951, 1.000000e+00
  %953 = call double @pow(double noundef %952, double noundef 6.000000e+00) #3
  %954 = fmul double %946, %953
  %955 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %956 = load double, ptr %955, align 8, !tbaa !15
  %957 = fsub double %956, 1.000000e+00
  %958 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %959 = load double, ptr %958, align 8, !tbaa !14
  %960 = fmul double -2.000000e+00, %959
  %961 = load ptr, ptr %7, align 8, !tbaa !5
  %962 = load double, ptr %961, align 8, !tbaa !9
  %963 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %964 = load double, ptr %963, align 8, !tbaa !11
  %965 = fdiv double %962, %964
  %966 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %967 = load double, ptr %966, align 8, !tbaa !15
  %968 = load ptr, ptr %10, align 8, !tbaa !5
  %969 = load double, ptr %968, align 8, !tbaa !9
  %970 = fmul double %967, %969
  %971 = fneg double %970
  %972 = call double @llvm.fmuladd.f64(double %960, double %965, double %971)
  %973 = load ptr, ptr %10, align 8, !tbaa !5
  %974 = load double, ptr %973, align 8, !tbaa !9
  %975 = fadd double %972, %974
  %976 = fmul double %957, %975
  %977 = load ptr, ptr %9, align 8, !tbaa !5
  %978 = load double, ptr %977, align 8, !tbaa !9
  %979 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %980 = load double, ptr %979, align 8, !tbaa !15
  %981 = fadd double %980, 1.000000e+00
  %982 = call double @pow(double noundef %981, double noundef 2.000000e+00) #3
  %983 = fmul double 5.000000e-01, %982
  %984 = load ptr, ptr %8, align 8, !tbaa !5
  %985 = load double, ptr %984, align 8, !tbaa !9
  %986 = fmul double 2.000000e+00, %985
  %987 = call double @sin(double noundef %986) #3
  %988 = fmul double %983, %987
  %989 = call double @llvm.fmuladd.f64(double %976, double %978, double %988)
  %990 = fmul double %954, %989
  %991 = load ptr, ptr %8, align 8, !tbaa !5
  %992 = load double, ptr %991, align 8, !tbaa !9
  %993 = fmul double 1.100000e+01, %992
  %994 = call double @sin(double noundef %993) #3
  %995 = fmul double %990, %994
  %996 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %997 = load double, ptr %996, align 8, !tbaa !15
  %998 = fadd double %997, 1.000000e+00
  %999 = call double @pow(double noundef %998, double noundef 2.000000e+00) #3
  %1000 = load ptr, ptr %9, align 8, !tbaa !5
  %1001 = load double, ptr %1000, align 8, !tbaa !9
  %1002 = call double @pow(double noundef %1001, double noundef 2.000000e+00) #3
  %1003 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %1004 = load double, ptr %1003, align 8, !tbaa !14
  %1005 = fmul double -2.000000e+00, %1004
  %1006 = load ptr, ptr %7, align 8, !tbaa !5
  %1007 = load double, ptr %1006, align 8, !tbaa !9
  %1008 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %1009 = load double, ptr %1008, align 8, !tbaa !11
  %1010 = fdiv double %1007, %1009
  %1011 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1012 = load double, ptr %1011, align 8, !tbaa !15
  %1013 = load ptr, ptr %10, align 8, !tbaa !5
  %1014 = load double, ptr %1013, align 8, !tbaa !9
  %1015 = fmul double %1012, %1014
  %1016 = fneg double %1015
  %1017 = call double @llvm.fmuladd.f64(double %1005, double %1010, double %1016)
  %1018 = load ptr, ptr %10, align 8, !tbaa !5
  %1019 = load double, ptr %1018, align 8, !tbaa !9
  %1020 = fadd double %1017, %1019
  %1021 = call double @pow(double noundef %1020, double noundef 2.000000e+00) #3
  %1022 = call double @llvm.fmuladd.f64(double %999, double %1002, double %1021)
  %1023 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1024 = load double, ptr %1023, align 8, !tbaa !15
  %1025 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1026 = load double, ptr %1025, align 8, !tbaa !15
  %1027 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1028 = load double, ptr %1027, align 8, !tbaa !15
  %1029 = fmul double 4.000000e+00, %1028
  %1030 = load ptr, ptr %9, align 8, !tbaa !5
  %1031 = load double, ptr %1030, align 8, !tbaa !9
  %1032 = call double @pow(double noundef %1031, double noundef 2.000000e+00) #3
  %1033 = fmul double %1029, %1032
  %1034 = fneg double %1033
  %1035 = call double @llvm.fmuladd.f64(double %1024, double %1026, double %1034)
  %1036 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1037 = load double, ptr %1036, align 8, !tbaa !15
  %1038 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %1037, double %1035)
  %1039 = fadd double %1038, 1.000000e+00
  %1040 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1041 = load double, ptr %1040, align 8, !tbaa !15
  %1042 = fsub double %1041, 1.000000e+00
  %1043 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %1044 = load double, ptr %1043, align 8, !tbaa !14
  %1045 = fmul double -2.000000e+00, %1044
  %1046 = load ptr, ptr %7, align 8, !tbaa !5
  %1047 = load double, ptr %1046, align 8, !tbaa !9
  %1048 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %1049 = load double, ptr %1048, align 8, !tbaa !11
  %1050 = fdiv double %1047, %1049
  %1051 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1052 = load double, ptr %1051, align 8, !tbaa !15
  %1053 = load ptr, ptr %10, align 8, !tbaa !5
  %1054 = load double, ptr %1053, align 8, !tbaa !9
  %1055 = fmul double %1052, %1054
  %1056 = fneg double %1055
  %1057 = call double @llvm.fmuladd.f64(double %1045, double %1050, double %1056)
  %1058 = load ptr, ptr %10, align 8, !tbaa !5
  %1059 = load double, ptr %1058, align 8, !tbaa !9
  %1060 = fadd double %1057, %1059
  %1061 = fmul double %1042, %1060
  %1062 = load ptr, ptr %9, align 8, !tbaa !5
  %1063 = load double, ptr %1062, align 8, !tbaa !9
  %1064 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1065 = load double, ptr %1064, align 8, !tbaa !15
  %1066 = fadd double %1065, 1.000000e+00
  %1067 = call double @pow(double noundef %1066, double noundef 2.000000e+00) #3
  %1068 = fmul double 5.000000e-01, %1067
  %1069 = load ptr, ptr %8, align 8, !tbaa !5
  %1070 = load double, ptr %1069, align 8, !tbaa !9
  %1071 = fmul double 2.000000e+00, %1070
  %1072 = call double @sin(double noundef %1071) #3
  %1073 = fmul double %1068, %1072
  %1074 = call double @llvm.fmuladd.f64(double %1061, double %1063, double %1073)
  %1075 = call double @pow(double noundef %1074, double noundef 2.000000e+00) #3
  %1076 = fneg double %1075
  %1077 = call double @llvm.fmuladd.f64(double %1022, double %1039, double %1076)
  %1078 = call double @sqrt(double noundef %1077) #3
  %1079 = load ptr, ptr %7, align 8, !tbaa !5
  %1080 = load double, ptr %1079, align 8, !tbaa !9
  %1081 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %1082 = load double, ptr %1081, align 8, !tbaa !11
  %1083 = fdiv double %1080, %1082
  %1084 = fsub double %1083, 0x3FE89D89D89D89D7
  %1085 = call double @pow(double noundef %1084, double noundef 2.000000e+00) #3
  %1086 = call double @llvm.fmuladd.f64(double 0x406A148B0FCD6E9F, double %1085, double 1.000000e+00)
  %1087 = fmul double %1078, %1086
  %1088 = fdiv double %995, %1087
  %1089 = fsub double %940, %1088
  %1090 = load ptr, ptr %7, align 8, !tbaa !5
  %1091 = load double, ptr %1090, align 8, !tbaa !9
  %1092 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %1093 = load double, ptr %1092, align 8, !tbaa !11
  %1094 = fdiv double %1091, %1093
  %1095 = fmul double 0x401421B27F0EF72B, %1094
  %1096 = load ptr, ptr %7, align 8, !tbaa !5
  %1097 = load double, ptr %1096, align 8, !tbaa !9
  %1098 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %1099 = load double, ptr %1098, align 8, !tbaa !11
  %1100 = fdiv double %1097, %1099
  %1101 = fmul double 2.457600e+00, %1100
  %1102 = load ptr, ptr %7, align 8, !tbaa !5
  %1103 = load double, ptr %1102, align 8, !tbaa !9
  %1104 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %1105 = load double, ptr %1104, align 8, !tbaa !11
  %1106 = fdiv double %1103, %1105
  %1107 = fsub double %1106, 1.000000e+00
  %1108 = call double @pow(double noundef %1107, double noundef 5.000000e+00) #3
  %1109 = fmul double %1101, %1108
  %1110 = load ptr, ptr %8, align 8, !tbaa !5
  %1111 = load double, ptr %1110, align 8, !tbaa !9
  %1112 = fmul double 1.100000e+01, %1111
  %1113 = call double @cos(double noundef %1112) #3
  %1114 = load ptr, ptr %7, align 8, !tbaa !5
  %1115 = load double, ptr %1114, align 8, !tbaa !9
  %1116 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %1117 = load double, ptr %1116, align 8, !tbaa !11
  %1118 = fdiv double %1115, %1117
  %1119 = fsub double %1118, 1.000000e+00
  %1120 = call double @pow(double noundef %1119, double noundef 6.000000e+00) #3
  %1121 = fmul double 2.457600e+00, %1120
  %1122 = load ptr, ptr %8, align 8, !tbaa !5
  %1123 = load double, ptr %1122, align 8, !tbaa !9
  %1124 = fmul double 1.100000e+01, %1123
  %1125 = call double @cos(double noundef %1124) #3
  %1126 = fmul double %1121, %1125
  %1127 = call double @llvm.fmuladd.f64(double %1109, double %1113, double %1126)
  %1128 = fmul double %1095, %1127
  %1129 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1130 = load double, ptr %1129, align 8, !tbaa !15
  %1131 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1132 = load double, ptr %1131, align 8, !tbaa !15
  %1133 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1134 = load double, ptr %1133, align 8, !tbaa !15
  %1135 = fmul double 4.000000e+00, %1134
  %1136 = load ptr, ptr %9, align 8, !tbaa !5
  %1137 = load double, ptr %1136, align 8, !tbaa !9
  %1138 = call double @pow(double noundef %1137, double noundef 2.000000e+00) #3
  %1139 = fmul double %1135, %1138
  %1140 = fneg double %1139
  %1141 = call double @llvm.fmuladd.f64(double %1130, double %1132, double %1140)
  %1142 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1143 = load double, ptr %1142, align 8, !tbaa !15
  %1144 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %1143, double %1141)
  %1145 = fadd double %1144, 1.000000e+00
  %1146 = fmul double %1128, %1145
  %1147 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1148 = load double, ptr %1147, align 8, !tbaa !15
  %1149 = fadd double %1148, 1.000000e+00
  %1150 = call double @pow(double noundef %1149, double noundef 2.000000e+00) #3
  %1151 = load ptr, ptr %9, align 8, !tbaa !5
  %1152 = load double, ptr %1151, align 8, !tbaa !9
  %1153 = call double @pow(double noundef %1152, double noundef 2.000000e+00) #3
  %1154 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %1155 = load double, ptr %1154, align 8, !tbaa !14
  %1156 = fmul double -2.000000e+00, %1155
  %1157 = load ptr, ptr %7, align 8, !tbaa !5
  %1158 = load double, ptr %1157, align 8, !tbaa !9
  %1159 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %1160 = load double, ptr %1159, align 8, !tbaa !11
  %1161 = fdiv double %1158, %1160
  %1162 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1163 = load double, ptr %1162, align 8, !tbaa !15
  %1164 = load ptr, ptr %10, align 8, !tbaa !5
  %1165 = load double, ptr %1164, align 8, !tbaa !9
  %1166 = fmul double %1163, %1165
  %1167 = fneg double %1166
  %1168 = call double @llvm.fmuladd.f64(double %1156, double %1161, double %1167)
  %1169 = load ptr, ptr %10, align 8, !tbaa !5
  %1170 = load double, ptr %1169, align 8, !tbaa !9
  %1171 = fadd double %1168, %1170
  %1172 = call double @pow(double noundef %1171, double noundef 2.000000e+00) #3
  %1173 = call double @llvm.fmuladd.f64(double %1150, double %1153, double %1172)
  %1174 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1175 = load double, ptr %1174, align 8, !tbaa !15
  %1176 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1177 = load double, ptr %1176, align 8, !tbaa !15
  %1178 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1179 = load double, ptr %1178, align 8, !tbaa !15
  %1180 = fmul double 4.000000e+00, %1179
  %1181 = load ptr, ptr %9, align 8, !tbaa !5
  %1182 = load double, ptr %1181, align 8, !tbaa !9
  %1183 = call double @pow(double noundef %1182, double noundef 2.000000e+00) #3
  %1184 = fmul double %1180, %1183
  %1185 = fneg double %1184
  %1186 = call double @llvm.fmuladd.f64(double %1175, double %1177, double %1185)
  %1187 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1188 = load double, ptr %1187, align 8, !tbaa !15
  %1189 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %1188, double %1186)
  %1190 = fadd double %1189, 1.000000e+00
  %1191 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1192 = load double, ptr %1191, align 8, !tbaa !15
  %1193 = fsub double %1192, 1.000000e+00
  %1194 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %1195 = load double, ptr %1194, align 8, !tbaa !14
  %1196 = fmul double -2.000000e+00, %1195
  %1197 = load ptr, ptr %7, align 8, !tbaa !5
  %1198 = load double, ptr %1197, align 8, !tbaa !9
  %1199 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %1200 = load double, ptr %1199, align 8, !tbaa !11
  %1201 = fdiv double %1198, %1200
  %1202 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1203 = load double, ptr %1202, align 8, !tbaa !15
  %1204 = load ptr, ptr %10, align 8, !tbaa !5
  %1205 = load double, ptr %1204, align 8, !tbaa !9
  %1206 = fmul double %1203, %1205
  %1207 = fneg double %1206
  %1208 = call double @llvm.fmuladd.f64(double %1196, double %1201, double %1207)
  %1209 = load ptr, ptr %10, align 8, !tbaa !5
  %1210 = load double, ptr %1209, align 8, !tbaa !9
  %1211 = fadd double %1208, %1210
  %1212 = fmul double %1193, %1211
  %1213 = load ptr, ptr %9, align 8, !tbaa !5
  %1214 = load double, ptr %1213, align 8, !tbaa !9
  %1215 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1216 = load double, ptr %1215, align 8, !tbaa !15
  %1217 = fadd double %1216, 1.000000e+00
  %1218 = call double @pow(double noundef %1217, double noundef 2.000000e+00) #3
  %1219 = fmul double 5.000000e-01, %1218
  %1220 = load ptr, ptr %8, align 8, !tbaa !5
  %1221 = load double, ptr %1220, align 8, !tbaa !9
  %1222 = fmul double 2.000000e+00, %1221
  %1223 = call double @sin(double noundef %1222) #3
  %1224 = fmul double %1219, %1223
  %1225 = call double @llvm.fmuladd.f64(double %1212, double %1214, double %1224)
  %1226 = call double @pow(double noundef %1225, double noundef 2.000000e+00) #3
  %1227 = fneg double %1226
  %1228 = call double @llvm.fmuladd.f64(double %1173, double %1190, double %1227)
  %1229 = call double @sqrt(double noundef %1228) #3
  %1230 = load ptr, ptr %7, align 8, !tbaa !5
  %1231 = load double, ptr %1230, align 8, !tbaa !9
  %1232 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %1233 = load double, ptr %1232, align 8, !tbaa !11
  %1234 = fdiv double %1231, %1233
  %1235 = fsub double %1234, 0x3FE89D89D89D89D7
  %1236 = call double @pow(double noundef %1235, double noundef 2.000000e+00) #3
  %1237 = call double @llvm.fmuladd.f64(double 0x406A148B0FCD6E9F, double %1236, double 1.000000e+00)
  %1238 = fmul double %1229, %1237
  %1239 = fdiv double %1146, %1238
  %1240 = fsub double %1089, %1239
  %1241 = load ptr, ptr %7, align 8, !tbaa !5
  %1242 = load double, ptr %1241, align 8, !tbaa !9
  %1243 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %1244 = load double, ptr %1243, align 8, !tbaa !11
  %1245 = fdiv double %1242, %1244
  %1246 = call double @llvm.fmuladd.f64(double 0x402CE38E38E38E20, double %1245, double 0xC02638E38E38E388)
  %1247 = call double @atan(double noundef %1246) #3
  %1248 = call double @llvm.fmuladd.f64(double 0xBFD64CB5F7148405, double %1247, double 0x3FDCFD52F4677872)
  %1249 = fmul double 4.956160e+01, %1248
  %1250 = load ptr, ptr %7, align 8, !tbaa !5
  %1251 = load double, ptr %1250, align 8, !tbaa !9
  %1252 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %1253 = load double, ptr %1252, align 8, !tbaa !11
  %1254 = fdiv double %1251, %1253
  %1255 = fsub double %1254, 1.000000e+00
  %1256 = call double @pow(double noundef %1255, double noundef 6.000000e+00) #3
  %1257 = fmul double %1249, %1256
  %1258 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1259 = load double, ptr %1258, align 8, !tbaa !15
  %1260 = fadd double %1259, 1.000000e+00
  %1261 = call double @pow(double noundef %1260, double noundef 2.000000e+00) #3
  %1262 = load ptr, ptr %9, align 8, !tbaa !5
  %1263 = load double, ptr %1262, align 8, !tbaa !9
  %1264 = call double @pow(double noundef %1263, double noundef 2.000000e+00) #3
  %1265 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %1266 = load double, ptr %1265, align 8, !tbaa !14
  %1267 = fmul double -2.000000e+00, %1266
  %1268 = load ptr, ptr %7, align 8, !tbaa !5
  %1269 = load double, ptr %1268, align 8, !tbaa !9
  %1270 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %1271 = load double, ptr %1270, align 8, !tbaa !11
  %1272 = fdiv double %1269, %1271
  %1273 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1274 = load double, ptr %1273, align 8, !tbaa !15
  %1275 = load ptr, ptr %10, align 8, !tbaa !5
  %1276 = load double, ptr %1275, align 8, !tbaa !9
  %1277 = fmul double %1274, %1276
  %1278 = fneg double %1277
  %1279 = call double @llvm.fmuladd.f64(double %1267, double %1272, double %1278)
  %1280 = load ptr, ptr %10, align 8, !tbaa !5
  %1281 = load double, ptr %1280, align 8, !tbaa !9
  %1282 = fadd double %1279, %1281
  %1283 = call double @pow(double noundef %1282, double noundef 2.000000e+00) #3
  %1284 = call double @llvm.fmuladd.f64(double %1261, double %1264, double %1283)
  %1285 = fmul double %1257, %1284
  %1286 = load ptr, ptr %8, align 8, !tbaa !5
  %1287 = load double, ptr %1286, align 8, !tbaa !9
  %1288 = fmul double 1.100000e+01, %1287
  %1289 = call double @cos(double noundef %1288) #3
  %1290 = fmul double %1285, %1289
  %1291 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1292 = load double, ptr %1291, align 8, !tbaa !15
  %1293 = fadd double %1292, 1.000000e+00
  %1294 = call double @pow(double noundef %1293, double noundef 2.000000e+00) #3
  %1295 = load ptr, ptr %9, align 8, !tbaa !5
  %1296 = load double, ptr %1295, align 8, !tbaa !9
  %1297 = call double @pow(double noundef %1296, double noundef 2.000000e+00) #3
  %1298 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %1299 = load double, ptr %1298, align 8, !tbaa !14
  %1300 = fmul double -2.000000e+00, %1299
  %1301 = load ptr, ptr %7, align 8, !tbaa !5
  %1302 = load double, ptr %1301, align 8, !tbaa !9
  %1303 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %1304 = load double, ptr %1303, align 8, !tbaa !11
  %1305 = fdiv double %1302, %1304
  %1306 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1307 = load double, ptr %1306, align 8, !tbaa !15
  %1308 = load ptr, ptr %10, align 8, !tbaa !5
  %1309 = load double, ptr %1308, align 8, !tbaa !9
  %1310 = fmul double %1307, %1309
  %1311 = fneg double %1310
  %1312 = call double @llvm.fmuladd.f64(double %1300, double %1305, double %1311)
  %1313 = load ptr, ptr %10, align 8, !tbaa !5
  %1314 = load double, ptr %1313, align 8, !tbaa !9
  %1315 = fadd double %1312, %1314
  %1316 = call double @pow(double noundef %1315, double noundef 2.000000e+00) #3
  %1317 = call double @llvm.fmuladd.f64(double %1294, double %1297, double %1316)
  %1318 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1319 = load double, ptr %1318, align 8, !tbaa !15
  %1320 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1321 = load double, ptr %1320, align 8, !tbaa !15
  %1322 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1323 = load double, ptr %1322, align 8, !tbaa !15
  %1324 = fmul double 4.000000e+00, %1323
  %1325 = load ptr, ptr %9, align 8, !tbaa !5
  %1326 = load double, ptr %1325, align 8, !tbaa !9
  %1327 = call double @pow(double noundef %1326, double noundef 2.000000e+00) #3
  %1328 = fmul double %1324, %1327
  %1329 = fneg double %1328
  %1330 = call double @llvm.fmuladd.f64(double %1319, double %1321, double %1329)
  %1331 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1332 = load double, ptr %1331, align 8, !tbaa !15
  %1333 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %1332, double %1330)
  %1334 = fadd double %1333, 1.000000e+00
  %1335 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1336 = load double, ptr %1335, align 8, !tbaa !15
  %1337 = fsub double %1336, 1.000000e+00
  %1338 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %1339 = load double, ptr %1338, align 8, !tbaa !14
  %1340 = fmul double -2.000000e+00, %1339
  %1341 = load ptr, ptr %7, align 8, !tbaa !5
  %1342 = load double, ptr %1341, align 8, !tbaa !9
  %1343 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %1344 = load double, ptr %1343, align 8, !tbaa !11
  %1345 = fdiv double %1342, %1344
  %1346 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1347 = load double, ptr %1346, align 8, !tbaa !15
  %1348 = load ptr, ptr %10, align 8, !tbaa !5
  %1349 = load double, ptr %1348, align 8, !tbaa !9
  %1350 = fmul double %1347, %1349
  %1351 = fneg double %1350
  %1352 = call double @llvm.fmuladd.f64(double %1340, double %1345, double %1351)
  %1353 = load ptr, ptr %10, align 8, !tbaa !5
  %1354 = load double, ptr %1353, align 8, !tbaa !9
  %1355 = fadd double %1352, %1354
  %1356 = fmul double %1337, %1355
  %1357 = load ptr, ptr %9, align 8, !tbaa !5
  %1358 = load double, ptr %1357, align 8, !tbaa !9
  %1359 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1360 = load double, ptr %1359, align 8, !tbaa !15
  %1361 = fadd double %1360, 1.000000e+00
  %1362 = call double @pow(double noundef %1361, double noundef 2.000000e+00) #3
  %1363 = fmul double 5.000000e-01, %1362
  %1364 = load ptr, ptr %8, align 8, !tbaa !5
  %1365 = load double, ptr %1364, align 8, !tbaa !9
  %1366 = fmul double 2.000000e+00, %1365
  %1367 = call double @sin(double noundef %1366) #3
  %1368 = fmul double %1363, %1367
  %1369 = call double @llvm.fmuladd.f64(double %1356, double %1358, double %1368)
  %1370 = call double @pow(double noundef %1369, double noundef 2.000000e+00) #3
  %1371 = fneg double %1370
  %1372 = call double @llvm.fmuladd.f64(double %1317, double %1334, double %1371)
  %1373 = call double @sqrt(double noundef %1372) #3
  %1374 = fdiv double %1290, %1373
  %1375 = fsub double %1240, %1374
  %1376 = load ptr, ptr %7, align 8, !tbaa !5
  %1377 = load double, ptr %1376, align 8, !tbaa !9
  %1378 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %1379 = load double, ptr %1378, align 8, !tbaa !11
  %1380 = fdiv double %1377, %1379
  %1381 = call double @llvm.fmuladd.f64(double 0x402CE38E38E38E20, double %1380, double 0xC02638E38E38E388)
  %1382 = call double @atan(double noundef %1381) #3
  %1383 = call double @llvm.fmuladd.f64(double 0xBFD64CB5F7148405, double %1382, double 0x3FDCFD52F4677872)
  %1384 = fmul double 4.505600e+00, %1383
  %1385 = load ptr, ptr %7, align 8, !tbaa !5
  %1386 = load double, ptr %1385, align 8, !tbaa !9
  %1387 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %1388 = load double, ptr %1387, align 8, !tbaa !11
  %1389 = fdiv double %1386, %1388
  %1390 = fsub double %1389, 1.000000e+00
  %1391 = call double @pow(double noundef %1390, double noundef 6.000000e+00) #3
  %1392 = fmul double %1384, %1391
  %1393 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1394 = load double, ptr %1393, align 8, !tbaa !15
  %1395 = fadd double %1394, 1.000000e+00
  %1396 = call double @pow(double noundef %1395, double noundef 2.000000e+00) #3
  %1397 = load ptr, ptr %9, align 8, !tbaa !5
  %1398 = load double, ptr %1397, align 8, !tbaa !9
  %1399 = call double @pow(double noundef %1398, double noundef 2.000000e+00) #3
  %1400 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %1401 = load double, ptr %1400, align 8, !tbaa !14
  %1402 = fmul double -2.000000e+00, %1401
  %1403 = load ptr, ptr %7, align 8, !tbaa !5
  %1404 = load double, ptr %1403, align 8, !tbaa !9
  %1405 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %1406 = load double, ptr %1405, align 8, !tbaa !11
  %1407 = fdiv double %1404, %1406
  %1408 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1409 = load double, ptr %1408, align 8, !tbaa !15
  %1410 = load ptr, ptr %10, align 8, !tbaa !5
  %1411 = load double, ptr %1410, align 8, !tbaa !9
  %1412 = fmul double %1409, %1411
  %1413 = fneg double %1412
  %1414 = call double @llvm.fmuladd.f64(double %1402, double %1407, double %1413)
  %1415 = load ptr, ptr %10, align 8, !tbaa !5
  %1416 = load double, ptr %1415, align 8, !tbaa !9
  %1417 = fadd double %1414, %1416
  %1418 = call double @pow(double noundef %1417, double noundef 2.000000e+00) #3
  %1419 = call double @llvm.fmuladd.f64(double %1396, double %1399, double %1418)
  %1420 = fmul double %1392, %1419
  %1421 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1422 = load double, ptr %1421, align 8, !tbaa !15
  %1423 = fmul double 4.000000e+00, %1422
  %1424 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1425 = load double, ptr %1424, align 8, !tbaa !15
  %1426 = fadd double %1425, 1.000000e+00
  %1427 = call double @pow(double noundef %1426, double noundef 2.000000e+00) #3
  %1428 = load ptr, ptr %9, align 8, !tbaa !5
  %1429 = load double, ptr %1428, align 8, !tbaa !9
  %1430 = call double @pow(double noundef %1429, double noundef 2.000000e+00) #3
  %1431 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %1432 = load double, ptr %1431, align 8, !tbaa !14
  %1433 = fmul double -2.000000e+00, %1432
  %1434 = load ptr, ptr %7, align 8, !tbaa !5
  %1435 = load double, ptr %1434, align 8, !tbaa !9
  %1436 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %1437 = load double, ptr %1436, align 8, !tbaa !11
  %1438 = fdiv double %1435, %1437
  %1439 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1440 = load double, ptr %1439, align 8, !tbaa !15
  %1441 = load ptr, ptr %10, align 8, !tbaa !5
  %1442 = load double, ptr %1441, align 8, !tbaa !9
  %1443 = fmul double %1440, %1442
  %1444 = fneg double %1443
  %1445 = call double @llvm.fmuladd.f64(double %1433, double %1438, double %1444)
  %1446 = load ptr, ptr %10, align 8, !tbaa !5
  %1447 = load double, ptr %1446, align 8, !tbaa !9
  %1448 = fadd double %1445, %1447
  %1449 = call double @pow(double noundef %1448, double noundef 2.000000e+00) #3
  %1450 = call double @llvm.fmuladd.f64(double %1427, double %1430, double %1449)
  %1451 = fmul double %1423, %1450
  %1452 = load ptr, ptr %9, align 8, !tbaa !5
  %1453 = load double, ptr %1452, align 8, !tbaa !9
  %1454 = fmul double %1451, %1453
  %1455 = load ptr, ptr %10, align 8, !tbaa !5
  %1456 = load double, ptr %1455, align 8, !tbaa !9
  %1457 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1458 = load double, ptr %1457, align 8, !tbaa !15
  %1459 = fadd double %1458, 1.000000e+00
  %1460 = call double @pow(double noundef %1459, double noundef 2.000000e+00) #3
  %1461 = load ptr, ptr %8, align 8, !tbaa !5
  %1462 = load double, ptr %1461, align 8, !tbaa !9
  %1463 = fmul double 2.000000e+00, %1462
  %1464 = call double @sin(double noundef %1463) #3
  %1465 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1466 = load double, ptr %1465, align 8, !tbaa !15
  %1467 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %1466, double -2.000000e+00)
  %1468 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %1469 = load double, ptr %1468, align 8, !tbaa !14
  %1470 = fmul double -2.000000e+00, %1469
  %1471 = load ptr, ptr %7, align 8, !tbaa !5
  %1472 = load double, ptr %1471, align 8, !tbaa !9
  %1473 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %1474 = load double, ptr %1473, align 8, !tbaa !11
  %1475 = fdiv double %1472, %1474
  %1476 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1477 = load double, ptr %1476, align 8, !tbaa !15
  %1478 = load ptr, ptr %10, align 8, !tbaa !5
  %1479 = load double, ptr %1478, align 8, !tbaa !9
  %1480 = fmul double %1477, %1479
  %1481 = fneg double %1480
  %1482 = call double @llvm.fmuladd.f64(double %1470, double %1475, double %1481)
  %1483 = load ptr, ptr %10, align 8, !tbaa !5
  %1484 = load double, ptr %1483, align 8, !tbaa !9
  %1485 = fadd double %1482, %1484
  %1486 = fmul double %1467, %1485
  %1487 = load ptr, ptr %9, align 8, !tbaa !5
  %1488 = load double, ptr %1487, align 8, !tbaa !9
  %1489 = fmul double %1486, %1488
  %1490 = call double @llvm.fmuladd.f64(double %1460, double %1464, double %1489)
  %1491 = fmul double 5.000000e-01, %1490
  %1492 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1493 = load double, ptr %1492, align 8, !tbaa !15
  %1494 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1495 = load double, ptr %1494, align 8, !tbaa !15
  %1496 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1497 = load double, ptr %1496, align 8, !tbaa !15
  %1498 = fmul double 4.000000e+00, %1497
  %1499 = load ptr, ptr %9, align 8, !tbaa !5
  %1500 = load double, ptr %1499, align 8, !tbaa !9
  %1501 = call double @pow(double noundef %1500, double noundef 2.000000e+00) #3
  %1502 = fmul double %1498, %1501
  %1503 = fneg double %1502
  %1504 = call double @llvm.fmuladd.f64(double %1493, double %1495, double %1503)
  %1505 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1506 = load double, ptr %1505, align 8, !tbaa !15
  %1507 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %1506, double %1504)
  %1508 = fadd double %1507, 1.000000e+00
  %1509 = fmul double %1491, %1508
  %1510 = fneg double %1509
  %1511 = call double @llvm.fmuladd.f64(double %1454, double %1456, double %1510)
  %1512 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1513 = load double, ptr %1512, align 8, !tbaa !15
  %1514 = fsub double %1513, 1.000000e+00
  %1515 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %1516 = load double, ptr %1515, align 8, !tbaa !14
  %1517 = fmul double -2.000000e+00, %1516
  %1518 = load ptr, ptr %7, align 8, !tbaa !5
  %1519 = load double, ptr %1518, align 8, !tbaa !9
  %1520 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %1521 = load double, ptr %1520, align 8, !tbaa !11
  %1522 = fdiv double %1519, %1521
  %1523 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1524 = load double, ptr %1523, align 8, !tbaa !15
  %1525 = load ptr, ptr %10, align 8, !tbaa !5
  %1526 = load double, ptr %1525, align 8, !tbaa !9
  %1527 = fmul double %1524, %1526
  %1528 = fneg double %1527
  %1529 = call double @llvm.fmuladd.f64(double %1517, double %1522, double %1528)
  %1530 = load ptr, ptr %10, align 8, !tbaa !5
  %1531 = load double, ptr %1530, align 8, !tbaa !9
  %1532 = fadd double %1529, %1531
  %1533 = fmul double %1514, %1532
  %1534 = load ptr, ptr %9, align 8, !tbaa !5
  %1535 = load double, ptr %1534, align 8, !tbaa !9
  %1536 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1537 = load double, ptr %1536, align 8, !tbaa !15
  %1538 = fadd double %1537, 1.000000e+00
  %1539 = call double @pow(double noundef %1538, double noundef 2.000000e+00) #3
  %1540 = fmul double 5.000000e-01, %1539
  %1541 = load ptr, ptr %8, align 8, !tbaa !5
  %1542 = load double, ptr %1541, align 8, !tbaa !9
  %1543 = fmul double 2.000000e+00, %1542
  %1544 = call double @sin(double noundef %1543) #3
  %1545 = fmul double %1540, %1544
  %1546 = call double @llvm.fmuladd.f64(double %1533, double %1535, double %1545)
  %1547 = fmul double 5.000000e-01, %1546
  %1548 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1549 = load double, ptr %1548, align 8, !tbaa !15
  %1550 = fsub double %1549, 1.000000e+00
  %1551 = call double @pow(double noundef %1550, double noundef 2.000000e+00) #3
  %1552 = fmul double 2.000000e+00, %1551
  %1553 = load ptr, ptr %9, align 8, !tbaa !5
  %1554 = load double, ptr %1553, align 8, !tbaa !9
  %1555 = call double @pow(double noundef %1554, double noundef 2.000000e+00) #3
  %1556 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1557 = load double, ptr %1556, align 8, !tbaa !15
  %1558 = fsub double %1557, 1.000000e+00
  %1559 = fmul double 2.000000e+00, %1558
  %1560 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %1561 = load double, ptr %1560, align 8, !tbaa !14
  %1562 = fmul double -2.000000e+00, %1561
  %1563 = load ptr, ptr %7, align 8, !tbaa !5
  %1564 = load double, ptr %1563, align 8, !tbaa !9
  %1565 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %1566 = load double, ptr %1565, align 8, !tbaa !11
  %1567 = fdiv double %1564, %1566
  %1568 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1569 = load double, ptr %1568, align 8, !tbaa !15
  %1570 = load ptr, ptr %10, align 8, !tbaa !5
  %1571 = load double, ptr %1570, align 8, !tbaa !9
  %1572 = fmul double %1569, %1571
  %1573 = fneg double %1572
  %1574 = call double @llvm.fmuladd.f64(double %1562, double %1567, double %1573)
  %1575 = load ptr, ptr %10, align 8, !tbaa !5
  %1576 = load double, ptr %1575, align 8, !tbaa !9
  %1577 = fadd double %1574, %1576
  %1578 = fmul double %1559, %1577
  %1579 = load ptr, ptr %10, align 8, !tbaa !5
  %1580 = load double, ptr %1579, align 8, !tbaa !9
  %1581 = fmul double %1578, %1580
  %1582 = call double @llvm.fmuladd.f64(double %1552, double %1555, double %1581)
  %1583 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1584 = load double, ptr %1583, align 8, !tbaa !15
  %1585 = fadd double %1584, 1.000000e+00
  %1586 = call double @pow(double noundef %1585, double noundef 2.000000e+00) #3
  %1587 = fmul double 2.000000e+00, %1586
  %1588 = load ptr, ptr %8, align 8, !tbaa !5
  %1589 = load double, ptr %1588, align 8, !tbaa !9
  %1590 = fmul double 2.000000e+00, %1589
  %1591 = call double @cos(double noundef %1590) #3
  %1592 = call double @llvm.fmuladd.f64(double %1587, double %1591, double %1582)
  %1593 = call double @llvm.fmuladd.f64(double %1547, double %1592, double %1511)
  %1594 = fmul double %1420, %1593
  %1595 = load ptr, ptr %8, align 8, !tbaa !5
  %1596 = load double, ptr %1595, align 8, !tbaa !9
  %1597 = fmul double 1.100000e+01, %1596
  %1598 = call double @sin(double noundef %1597) #3
  %1599 = fmul double %1594, %1598
  %1600 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1601 = load double, ptr %1600, align 8, !tbaa !15
  %1602 = fadd double %1601, 1.000000e+00
  %1603 = call double @pow(double noundef %1602, double noundef 2.000000e+00) #3
  %1604 = load ptr, ptr %9, align 8, !tbaa !5
  %1605 = load double, ptr %1604, align 8, !tbaa !9
  %1606 = call double @pow(double noundef %1605, double noundef 2.000000e+00) #3
  %1607 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %1608 = load double, ptr %1607, align 8, !tbaa !14
  %1609 = fmul double -2.000000e+00, %1608
  %1610 = load ptr, ptr %7, align 8, !tbaa !5
  %1611 = load double, ptr %1610, align 8, !tbaa !9
  %1612 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %1613 = load double, ptr %1612, align 8, !tbaa !11
  %1614 = fdiv double %1611, %1613
  %1615 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1616 = load double, ptr %1615, align 8, !tbaa !15
  %1617 = load ptr, ptr %10, align 8, !tbaa !5
  %1618 = load double, ptr %1617, align 8, !tbaa !9
  %1619 = fmul double %1616, %1618
  %1620 = fneg double %1619
  %1621 = call double @llvm.fmuladd.f64(double %1609, double %1614, double %1620)
  %1622 = load ptr, ptr %10, align 8, !tbaa !5
  %1623 = load double, ptr %1622, align 8, !tbaa !9
  %1624 = fadd double %1621, %1623
  %1625 = call double @pow(double noundef %1624, double noundef 2.000000e+00) #3
  %1626 = call double @llvm.fmuladd.f64(double %1603, double %1606, double %1625)
  %1627 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1628 = load double, ptr %1627, align 8, !tbaa !15
  %1629 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1630 = load double, ptr %1629, align 8, !tbaa !15
  %1631 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1632 = load double, ptr %1631, align 8, !tbaa !15
  %1633 = fmul double 4.000000e+00, %1632
  %1634 = load ptr, ptr %9, align 8, !tbaa !5
  %1635 = load double, ptr %1634, align 8, !tbaa !9
  %1636 = call double @pow(double noundef %1635, double noundef 2.000000e+00) #3
  %1637 = fmul double %1633, %1636
  %1638 = fneg double %1637
  %1639 = call double @llvm.fmuladd.f64(double %1628, double %1630, double %1638)
  %1640 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1641 = load double, ptr %1640, align 8, !tbaa !15
  %1642 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %1641, double %1639)
  %1643 = fadd double %1642, 1.000000e+00
  %1644 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1645 = load double, ptr %1644, align 8, !tbaa !15
  %1646 = fsub double %1645, 1.000000e+00
  %1647 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %1648 = load double, ptr %1647, align 8, !tbaa !14
  %1649 = fmul double -2.000000e+00, %1648
  %1650 = load ptr, ptr %7, align 8, !tbaa !5
  %1651 = load double, ptr %1650, align 8, !tbaa !9
  %1652 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %1653 = load double, ptr %1652, align 8, !tbaa !11
  %1654 = fdiv double %1651, %1653
  %1655 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1656 = load double, ptr %1655, align 8, !tbaa !15
  %1657 = load ptr, ptr %10, align 8, !tbaa !5
  %1658 = load double, ptr %1657, align 8, !tbaa !9
  %1659 = fmul double %1656, %1658
  %1660 = fneg double %1659
  %1661 = call double @llvm.fmuladd.f64(double %1649, double %1654, double %1660)
  %1662 = load ptr, ptr %10, align 8, !tbaa !5
  %1663 = load double, ptr %1662, align 8, !tbaa !9
  %1664 = fadd double %1661, %1663
  %1665 = fmul double %1646, %1664
  %1666 = load ptr, ptr %9, align 8, !tbaa !5
  %1667 = load double, ptr %1666, align 8, !tbaa !9
  %1668 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1669 = load double, ptr %1668, align 8, !tbaa !15
  %1670 = fadd double %1669, 1.000000e+00
  %1671 = call double @pow(double noundef %1670, double noundef 2.000000e+00) #3
  %1672 = fmul double 5.000000e-01, %1671
  %1673 = load ptr, ptr %8, align 8, !tbaa !5
  %1674 = load double, ptr %1673, align 8, !tbaa !9
  %1675 = fmul double 2.000000e+00, %1674
  %1676 = call double @sin(double noundef %1675) #3
  %1677 = fmul double %1672, %1676
  %1678 = call double @llvm.fmuladd.f64(double %1665, double %1667, double %1677)
  %1679 = call double @pow(double noundef %1678, double noundef 2.000000e+00) #3
  %1680 = fneg double %1679
  %1681 = call double @llvm.fmuladd.f64(double %1626, double %1643, double %1680)
  %1682 = call double @pow(double noundef %1681, double noundef 1.500000e+00) #3
  %1683 = fdiv double %1599, %1682
  %1684 = fsub double %1375, %1683
  %1685 = load ptr, ptr %7, align 8, !tbaa !5
  %1686 = load double, ptr %1685, align 8, !tbaa !9
  %1687 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %1688 = load double, ptr %1687, align 8, !tbaa !11
  %1689 = fdiv double %1686, %1688
  %1690 = call double @llvm.fmuladd.f64(double 0x402CE38E38E38E20, double %1689, double 0xC02638E38E38E388)
  %1691 = call double @atan(double noundef %1690) #3
  %1692 = call double @llvm.fmuladd.f64(double 0xBFD64CB5F7148405, double %1691, double 0x3FDCFD52F4677872)
  %1693 = fmul double 4.505600e+00, %1692
  %1694 = load ptr, ptr %7, align 8, !tbaa !5
  %1695 = load double, ptr %1694, align 8, !tbaa !9
  %1696 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %1697 = load double, ptr %1696, align 8, !tbaa !11
  %1698 = fdiv double %1695, %1697
  %1699 = fsub double %1698, 1.000000e+00
  %1700 = call double @pow(double noundef %1699, double noundef 6.000000e+00) #3
  %1701 = fmul double %1693, %1700
  %1702 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1703 = load double, ptr %1702, align 8, !tbaa !15
  %1704 = fadd double %1703, 1.000000e+00
  %1705 = call double @pow(double noundef %1704, double noundef 2.000000e+00) #3
  %1706 = load ptr, ptr %8, align 8, !tbaa !5
  %1707 = load double, ptr %1706, align 8, !tbaa !9
  %1708 = fmul double 2.000000e+00, %1707
  %1709 = call double @sin(double noundef %1708) #3
  %1710 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1711 = load double, ptr %1710, align 8, !tbaa !15
  %1712 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %1711, double -2.000000e+00)
  %1713 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %1714 = load double, ptr %1713, align 8, !tbaa !14
  %1715 = fmul double -2.000000e+00, %1714
  %1716 = load ptr, ptr %7, align 8, !tbaa !5
  %1717 = load double, ptr %1716, align 8, !tbaa !9
  %1718 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %1719 = load double, ptr %1718, align 8, !tbaa !11
  %1720 = fdiv double %1717, %1719
  %1721 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1722 = load double, ptr %1721, align 8, !tbaa !15
  %1723 = load ptr, ptr %10, align 8, !tbaa !5
  %1724 = load double, ptr %1723, align 8, !tbaa !9
  %1725 = fmul double %1722, %1724
  %1726 = fneg double %1725
  %1727 = call double @llvm.fmuladd.f64(double %1715, double %1720, double %1726)
  %1728 = load ptr, ptr %10, align 8, !tbaa !5
  %1729 = load double, ptr %1728, align 8, !tbaa !9
  %1730 = fadd double %1727, %1729
  %1731 = fmul double %1712, %1730
  %1732 = load ptr, ptr %9, align 8, !tbaa !5
  %1733 = load double, ptr %1732, align 8, !tbaa !9
  %1734 = fmul double %1731, %1733
  %1735 = call double @llvm.fmuladd.f64(double %1705, double %1709, double %1734)
  %1736 = fmul double %1701, %1735
  %1737 = load ptr, ptr %8, align 8, !tbaa !5
  %1738 = load double, ptr %1737, align 8, !tbaa !9
  %1739 = fmul double 1.100000e+01, %1738
  %1740 = call double @sin(double noundef %1739) #3
  %1741 = fmul double %1736, %1740
  %1742 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1743 = load double, ptr %1742, align 8, !tbaa !15
  %1744 = fadd double %1743, 1.000000e+00
  %1745 = call double @pow(double noundef %1744, double noundef 2.000000e+00) #3
  %1746 = load ptr, ptr %9, align 8, !tbaa !5
  %1747 = load double, ptr %1746, align 8, !tbaa !9
  %1748 = call double @pow(double noundef %1747, double noundef 2.000000e+00) #3
  %1749 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %1750 = load double, ptr %1749, align 8, !tbaa !14
  %1751 = fmul double -2.000000e+00, %1750
  %1752 = load ptr, ptr %7, align 8, !tbaa !5
  %1753 = load double, ptr %1752, align 8, !tbaa !9
  %1754 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %1755 = load double, ptr %1754, align 8, !tbaa !11
  %1756 = fdiv double %1753, %1755
  %1757 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1758 = load double, ptr %1757, align 8, !tbaa !15
  %1759 = load ptr, ptr %10, align 8, !tbaa !5
  %1760 = load double, ptr %1759, align 8, !tbaa !9
  %1761 = fmul double %1758, %1760
  %1762 = fneg double %1761
  %1763 = call double @llvm.fmuladd.f64(double %1751, double %1756, double %1762)
  %1764 = load ptr, ptr %10, align 8, !tbaa !5
  %1765 = load double, ptr %1764, align 8, !tbaa !9
  %1766 = fadd double %1763, %1765
  %1767 = call double @pow(double noundef %1766, double noundef 2.000000e+00) #3
  %1768 = call double @llvm.fmuladd.f64(double %1745, double %1748, double %1767)
  %1769 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1770 = load double, ptr %1769, align 8, !tbaa !15
  %1771 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1772 = load double, ptr %1771, align 8, !tbaa !15
  %1773 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1774 = load double, ptr %1773, align 8, !tbaa !15
  %1775 = fmul double 4.000000e+00, %1774
  %1776 = load ptr, ptr %9, align 8, !tbaa !5
  %1777 = load double, ptr %1776, align 8, !tbaa !9
  %1778 = call double @pow(double noundef %1777, double noundef 2.000000e+00) #3
  %1779 = fmul double %1775, %1778
  %1780 = fneg double %1779
  %1781 = call double @llvm.fmuladd.f64(double %1770, double %1772, double %1780)
  %1782 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1783 = load double, ptr %1782, align 8, !tbaa !15
  %1784 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %1783, double %1781)
  %1785 = fadd double %1784, 1.000000e+00
  %1786 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1787 = load double, ptr %1786, align 8, !tbaa !15
  %1788 = fsub double %1787, 1.000000e+00
  %1789 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %1790 = load double, ptr %1789, align 8, !tbaa !14
  %1791 = fmul double -2.000000e+00, %1790
  %1792 = load ptr, ptr %7, align 8, !tbaa !5
  %1793 = load double, ptr %1792, align 8, !tbaa !9
  %1794 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %1795 = load double, ptr %1794, align 8, !tbaa !11
  %1796 = fdiv double %1793, %1795
  %1797 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1798 = load double, ptr %1797, align 8, !tbaa !15
  %1799 = load ptr, ptr %10, align 8, !tbaa !5
  %1800 = load double, ptr %1799, align 8, !tbaa !9
  %1801 = fmul double %1798, %1800
  %1802 = fneg double %1801
  %1803 = call double @llvm.fmuladd.f64(double %1791, double %1796, double %1802)
  %1804 = load ptr, ptr %10, align 8, !tbaa !5
  %1805 = load double, ptr %1804, align 8, !tbaa !9
  %1806 = fadd double %1803, %1805
  %1807 = fmul double %1788, %1806
  %1808 = load ptr, ptr %9, align 8, !tbaa !5
  %1809 = load double, ptr %1808, align 8, !tbaa !9
  %1810 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1811 = load double, ptr %1810, align 8, !tbaa !15
  %1812 = fadd double %1811, 1.000000e+00
  %1813 = call double @pow(double noundef %1812, double noundef 2.000000e+00) #3
  %1814 = fmul double 5.000000e-01, %1813
  %1815 = load ptr, ptr %8, align 8, !tbaa !5
  %1816 = load double, ptr %1815, align 8, !tbaa !9
  %1817 = fmul double 2.000000e+00, %1816
  %1818 = call double @sin(double noundef %1817) #3
  %1819 = fmul double %1814, %1818
  %1820 = call double @llvm.fmuladd.f64(double %1807, double %1809, double %1819)
  %1821 = call double @pow(double noundef %1820, double noundef 2.000000e+00) #3
  %1822 = fneg double %1821
  %1823 = call double @llvm.fmuladd.f64(double %1768, double %1785, double %1822)
  %1824 = call double @sqrt(double noundef %1823) #3
  %1825 = fdiv double %1741, %1824
  %1826 = fsub double %1684, %1825
  %1827 = load ptr, ptr %7, align 8, !tbaa !5
  %1828 = load double, ptr %1827, align 8, !tbaa !9
  %1829 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %1830 = load double, ptr %1829, align 8, !tbaa !11
  %1831 = fdiv double %1828, %1830
  %1832 = call double @llvm.fmuladd.f64(double 0x402CE38E38E38E20, double %1831, double 0xC02638E38E38E388)
  %1833 = call double @atan(double noundef %1832) #3
  %1834 = call double @llvm.fmuladd.f64(double 0xBFD64CB5F7148405, double %1833, double 0x3FDCFD52F4677872)
  %1835 = fmul double 2.703360e+01, %1834
  %1836 = load ptr, ptr %7, align 8, !tbaa !5
  %1837 = load double, ptr %1836, align 8, !tbaa !9
  %1838 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %1839 = load double, ptr %1838, align 8, !tbaa !11
  %1840 = fdiv double %1837, %1839
  %1841 = fsub double %1840, 1.000000e+00
  %1842 = call double @pow(double noundef %1841, double noundef 6.000000e+00) #3
  %1843 = fmul double %1835, %1842
  %1844 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1845 = load double, ptr %1844, align 8, !tbaa !15
  %1846 = fsub double %1845, 1.000000e+00
  %1847 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %1848 = load double, ptr %1847, align 8, !tbaa !14
  %1849 = fmul double -2.000000e+00, %1848
  %1850 = load ptr, ptr %7, align 8, !tbaa !5
  %1851 = load double, ptr %1850, align 8, !tbaa !9
  %1852 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %1853 = load double, ptr %1852, align 8, !tbaa !11
  %1854 = fdiv double %1851, %1853
  %1855 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1856 = load double, ptr %1855, align 8, !tbaa !15
  %1857 = load ptr, ptr %10, align 8, !tbaa !5
  %1858 = load double, ptr %1857, align 8, !tbaa !9
  %1859 = fmul double %1856, %1858
  %1860 = fneg double %1859
  %1861 = call double @llvm.fmuladd.f64(double %1849, double %1854, double %1860)
  %1862 = load ptr, ptr %10, align 8, !tbaa !5
  %1863 = load double, ptr %1862, align 8, !tbaa !9
  %1864 = fadd double %1861, %1863
  %1865 = fmul double %1846, %1864
  %1866 = load ptr, ptr %9, align 8, !tbaa !5
  %1867 = load double, ptr %1866, align 8, !tbaa !9
  %1868 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1869 = load double, ptr %1868, align 8, !tbaa !15
  %1870 = fadd double %1869, 1.000000e+00
  %1871 = call double @pow(double noundef %1870, double noundef 2.000000e+00) #3
  %1872 = fmul double 5.000000e-01, %1871
  %1873 = load ptr, ptr %8, align 8, !tbaa !5
  %1874 = load double, ptr %1873, align 8, !tbaa !9
  %1875 = fmul double 2.000000e+00, %1874
  %1876 = call double @sin(double noundef %1875) #3
  %1877 = fmul double %1872, %1876
  %1878 = call double @llvm.fmuladd.f64(double %1865, double %1867, double %1877)
  %1879 = fmul double %1843, %1878
  %1880 = load ptr, ptr %8, align 8, !tbaa !5
  %1881 = load double, ptr %1880, align 8, !tbaa !9
  %1882 = fmul double 1.100000e+01, %1881
  %1883 = call double @sin(double noundef %1882) #3
  %1884 = fmul double %1879, %1883
  %1885 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1886 = load double, ptr %1885, align 8, !tbaa !15
  %1887 = fadd double %1886, 1.000000e+00
  %1888 = call double @pow(double noundef %1887, double noundef 2.000000e+00) #3
  %1889 = load ptr, ptr %9, align 8, !tbaa !5
  %1890 = load double, ptr %1889, align 8, !tbaa !9
  %1891 = call double @pow(double noundef %1890, double noundef 2.000000e+00) #3
  %1892 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %1893 = load double, ptr %1892, align 8, !tbaa !14
  %1894 = fmul double -2.000000e+00, %1893
  %1895 = load ptr, ptr %7, align 8, !tbaa !5
  %1896 = load double, ptr %1895, align 8, !tbaa !9
  %1897 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %1898 = load double, ptr %1897, align 8, !tbaa !11
  %1899 = fdiv double %1896, %1898
  %1900 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1901 = load double, ptr %1900, align 8, !tbaa !15
  %1902 = load ptr, ptr %10, align 8, !tbaa !5
  %1903 = load double, ptr %1902, align 8, !tbaa !9
  %1904 = fmul double %1901, %1903
  %1905 = fneg double %1904
  %1906 = call double @llvm.fmuladd.f64(double %1894, double %1899, double %1905)
  %1907 = load ptr, ptr %10, align 8, !tbaa !5
  %1908 = load double, ptr %1907, align 8, !tbaa !9
  %1909 = fadd double %1906, %1908
  %1910 = call double @pow(double noundef %1909, double noundef 2.000000e+00) #3
  %1911 = call double @llvm.fmuladd.f64(double %1888, double %1891, double %1910)
  %1912 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1913 = load double, ptr %1912, align 8, !tbaa !15
  %1914 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1915 = load double, ptr %1914, align 8, !tbaa !15
  %1916 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1917 = load double, ptr %1916, align 8, !tbaa !15
  %1918 = fmul double 4.000000e+00, %1917
  %1919 = load ptr, ptr %9, align 8, !tbaa !5
  %1920 = load double, ptr %1919, align 8, !tbaa !9
  %1921 = call double @pow(double noundef %1920, double noundef 2.000000e+00) #3
  %1922 = fmul double %1918, %1921
  %1923 = fneg double %1922
  %1924 = call double @llvm.fmuladd.f64(double %1913, double %1915, double %1923)
  %1925 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1926 = load double, ptr %1925, align 8, !tbaa !15
  %1927 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %1926, double %1924)
  %1928 = fadd double %1927, 1.000000e+00
  %1929 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1930 = load double, ptr %1929, align 8, !tbaa !15
  %1931 = fsub double %1930, 1.000000e+00
  %1932 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %1933 = load double, ptr %1932, align 8, !tbaa !14
  %1934 = fmul double -2.000000e+00, %1933
  %1935 = load ptr, ptr %7, align 8, !tbaa !5
  %1936 = load double, ptr %1935, align 8, !tbaa !9
  %1937 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %1938 = load double, ptr %1937, align 8, !tbaa !11
  %1939 = fdiv double %1936, %1938
  %1940 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1941 = load double, ptr %1940, align 8, !tbaa !15
  %1942 = load ptr, ptr %10, align 8, !tbaa !5
  %1943 = load double, ptr %1942, align 8, !tbaa !9
  %1944 = fmul double %1941, %1943
  %1945 = fneg double %1944
  %1946 = call double @llvm.fmuladd.f64(double %1934, double %1939, double %1945)
  %1947 = load ptr, ptr %10, align 8, !tbaa !5
  %1948 = load double, ptr %1947, align 8, !tbaa !9
  %1949 = fadd double %1946, %1948
  %1950 = fmul double %1931, %1949
  %1951 = load ptr, ptr %9, align 8, !tbaa !5
  %1952 = load double, ptr %1951, align 8, !tbaa !9
  %1953 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %1954 = load double, ptr %1953, align 8, !tbaa !15
  %1955 = fadd double %1954, 1.000000e+00
  %1956 = call double @pow(double noundef %1955, double noundef 2.000000e+00) #3
  %1957 = fmul double 5.000000e-01, %1956
  %1958 = load ptr, ptr %8, align 8, !tbaa !5
  %1959 = load double, ptr %1958, align 8, !tbaa !9
  %1960 = fmul double 2.000000e+00, %1959
  %1961 = call double @sin(double noundef %1960) #3
  %1962 = fmul double %1957, %1961
  %1963 = call double @llvm.fmuladd.f64(double %1950, double %1952, double %1962)
  %1964 = call double @pow(double noundef %1963, double noundef 2.000000e+00) #3
  %1965 = fneg double %1964
  %1966 = call double @llvm.fmuladd.f64(double %1911, double %1928, double %1965)
  %1967 = call double @sqrt(double noundef %1966) #3
  %1968 = fdiv double %1884, %1967
  %1969 = fadd double %1826, %1968
  %1970 = load ptr, ptr %7, align 8, !tbaa !5
  %1971 = load double, ptr %1970, align 8, !tbaa !9
  %1972 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %1973 = load double, ptr %1972, align 8, !tbaa !11
  %1974 = fdiv double %1971, %1973
  %1975 = call double @llvm.fmuladd.f64(double 0x402CE38E38E38E20, double %1974, double 0xC02638E38E38E388)
  %1976 = call double @atan(double noundef %1975) #3
  %1977 = call double @llvm.fmuladd.f64(double 0xBFD64CB5F7148405, double %1976, double 0x3FDCFD52F4677872)
  %1978 = load ptr, ptr %7, align 8, !tbaa !5
  %1979 = load double, ptr %1978, align 8, !tbaa !9
  %1980 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %1981 = load double, ptr %1980, align 8, !tbaa !11
  %1982 = fdiv double %1979, %1981
  %1983 = fmul double -2.703360e+01, %1982
  %1984 = load ptr, ptr %7, align 8, !tbaa !5
  %1985 = load double, ptr %1984, align 8, !tbaa !9
  %1986 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %1987 = load double, ptr %1986, align 8, !tbaa !11
  %1988 = fdiv double %1985, %1987
  %1989 = fsub double %1988, 1.000000e+00
  %1990 = call double @pow(double noundef %1989, double noundef 5.000000e+00) #3
  %1991 = fmul double %1983, %1990
  %1992 = load ptr, ptr %8, align 8, !tbaa !5
  %1993 = load double, ptr %1992, align 8, !tbaa !9
  %1994 = fmul double 1.100000e+01, %1993
  %1995 = call double @sin(double noundef %1994) #3
  %1996 = load ptr, ptr %7, align 8, !tbaa !5
  %1997 = load double, ptr %1996, align 8, !tbaa !9
  %1998 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %1999 = load double, ptr %1998, align 8, !tbaa !11
  %2000 = fdiv double %1997, %1999
  %2001 = fsub double %2000, 1.000000e+00
  %2002 = call double @pow(double noundef %2001, double noundef 6.000000e+00) #3
  %2003 = fmul double 2.703360e+01, %2002
  %2004 = load ptr, ptr %8, align 8, !tbaa !5
  %2005 = load double, ptr %2004, align 8, !tbaa !9
  %2006 = fmul double 1.100000e+01, %2005
  %2007 = call double @sin(double noundef %2006) #3
  %2008 = fmul double %2003, %2007
  %2009 = fneg double %2008
  %2010 = call double @llvm.fmuladd.f64(double %1991, double %1995, double %2009)
  %2011 = fmul double %1977, %2010
  %2012 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2013 = load double, ptr %2012, align 8, !tbaa !15
  %2014 = fsub double %2013, 1.000000e+00
  %2015 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %2016 = load double, ptr %2015, align 8, !tbaa !14
  %2017 = fmul double -2.000000e+00, %2016
  %2018 = load ptr, ptr %7, align 8, !tbaa !5
  %2019 = load double, ptr %2018, align 8, !tbaa !9
  %2020 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %2021 = load double, ptr %2020, align 8, !tbaa !11
  %2022 = fdiv double %2019, %2021
  %2023 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2024 = load double, ptr %2023, align 8, !tbaa !15
  %2025 = load ptr, ptr %10, align 8, !tbaa !5
  %2026 = load double, ptr %2025, align 8, !tbaa !9
  %2027 = fmul double %2024, %2026
  %2028 = fneg double %2027
  %2029 = call double @llvm.fmuladd.f64(double %2017, double %2022, double %2028)
  %2030 = load ptr, ptr %10, align 8, !tbaa !5
  %2031 = load double, ptr %2030, align 8, !tbaa !9
  %2032 = fadd double %2029, %2031
  %2033 = fmul double %2014, %2032
  %2034 = load ptr, ptr %9, align 8, !tbaa !5
  %2035 = load double, ptr %2034, align 8, !tbaa !9
  %2036 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2037 = load double, ptr %2036, align 8, !tbaa !15
  %2038 = fadd double %2037, 1.000000e+00
  %2039 = call double @pow(double noundef %2038, double noundef 2.000000e+00) #3
  %2040 = fmul double 5.000000e-01, %2039
  %2041 = load ptr, ptr %8, align 8, !tbaa !5
  %2042 = load double, ptr %2041, align 8, !tbaa !9
  %2043 = fmul double 2.000000e+00, %2042
  %2044 = call double @sin(double noundef %2043) #3
  %2045 = fmul double %2040, %2044
  %2046 = call double @llvm.fmuladd.f64(double %2033, double %2035, double %2045)
  %2047 = fmul double %2011, %2046
  %2048 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2049 = load double, ptr %2048, align 8, !tbaa !15
  %2050 = fadd double %2049, 1.000000e+00
  %2051 = call double @pow(double noundef %2050, double noundef 2.000000e+00) #3
  %2052 = load ptr, ptr %9, align 8, !tbaa !5
  %2053 = load double, ptr %2052, align 8, !tbaa !9
  %2054 = call double @pow(double noundef %2053, double noundef 2.000000e+00) #3
  %2055 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %2056 = load double, ptr %2055, align 8, !tbaa !14
  %2057 = fmul double -2.000000e+00, %2056
  %2058 = load ptr, ptr %7, align 8, !tbaa !5
  %2059 = load double, ptr %2058, align 8, !tbaa !9
  %2060 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %2061 = load double, ptr %2060, align 8, !tbaa !11
  %2062 = fdiv double %2059, %2061
  %2063 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2064 = load double, ptr %2063, align 8, !tbaa !15
  %2065 = load ptr, ptr %10, align 8, !tbaa !5
  %2066 = load double, ptr %2065, align 8, !tbaa !9
  %2067 = fmul double %2064, %2066
  %2068 = fneg double %2067
  %2069 = call double @llvm.fmuladd.f64(double %2057, double %2062, double %2068)
  %2070 = load ptr, ptr %10, align 8, !tbaa !5
  %2071 = load double, ptr %2070, align 8, !tbaa !9
  %2072 = fadd double %2069, %2071
  %2073 = call double @pow(double noundef %2072, double noundef 2.000000e+00) #3
  %2074 = call double @llvm.fmuladd.f64(double %2051, double %2054, double %2073)
  %2075 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2076 = load double, ptr %2075, align 8, !tbaa !15
  %2077 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2078 = load double, ptr %2077, align 8, !tbaa !15
  %2079 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2080 = load double, ptr %2079, align 8, !tbaa !15
  %2081 = fmul double 4.000000e+00, %2080
  %2082 = load ptr, ptr %9, align 8, !tbaa !5
  %2083 = load double, ptr %2082, align 8, !tbaa !9
  %2084 = call double @pow(double noundef %2083, double noundef 2.000000e+00) #3
  %2085 = fmul double %2081, %2084
  %2086 = fneg double %2085
  %2087 = call double @llvm.fmuladd.f64(double %2076, double %2078, double %2086)
  %2088 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2089 = load double, ptr %2088, align 8, !tbaa !15
  %2090 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %2089, double %2087)
  %2091 = fadd double %2090, 1.000000e+00
  %2092 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2093 = load double, ptr %2092, align 8, !tbaa !15
  %2094 = fsub double %2093, 1.000000e+00
  %2095 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %2096 = load double, ptr %2095, align 8, !tbaa !14
  %2097 = fmul double -2.000000e+00, %2096
  %2098 = load ptr, ptr %7, align 8, !tbaa !5
  %2099 = load double, ptr %2098, align 8, !tbaa !9
  %2100 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %2101 = load double, ptr %2100, align 8, !tbaa !11
  %2102 = fdiv double %2099, %2101
  %2103 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2104 = load double, ptr %2103, align 8, !tbaa !15
  %2105 = load ptr, ptr %10, align 8, !tbaa !5
  %2106 = load double, ptr %2105, align 8, !tbaa !9
  %2107 = fmul double %2104, %2106
  %2108 = fneg double %2107
  %2109 = call double @llvm.fmuladd.f64(double %2097, double %2102, double %2108)
  %2110 = load ptr, ptr %10, align 8, !tbaa !5
  %2111 = load double, ptr %2110, align 8, !tbaa !9
  %2112 = fadd double %2109, %2111
  %2113 = fmul double %2094, %2112
  %2114 = load ptr, ptr %9, align 8, !tbaa !5
  %2115 = load double, ptr %2114, align 8, !tbaa !9
  %2116 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2117 = load double, ptr %2116, align 8, !tbaa !15
  %2118 = fadd double %2117, 1.000000e+00
  %2119 = call double @pow(double noundef %2118, double noundef 2.000000e+00) #3
  %2120 = fmul double 5.000000e-01, %2119
  %2121 = load ptr, ptr %8, align 8, !tbaa !5
  %2122 = load double, ptr %2121, align 8, !tbaa !9
  %2123 = fmul double 2.000000e+00, %2122
  %2124 = call double @sin(double noundef %2123) #3
  %2125 = fmul double %2120, %2124
  %2126 = call double @llvm.fmuladd.f64(double %2113, double %2115, double %2125)
  %2127 = call double @pow(double noundef %2126, double noundef 2.000000e+00) #3
  %2128 = fneg double %2127
  %2129 = call double @llvm.fmuladd.f64(double %2074, double %2091, double %2128)
  %2130 = call double @sqrt(double noundef %2129) #3
  %2131 = fdiv double %2047, %2130
  %2132 = fsub double %1969, %2131
  %2133 = load ptr, ptr %7, align 8, !tbaa !5
  %2134 = load double, ptr %2133, align 8, !tbaa !9
  %2135 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %2136 = load double, ptr %2135, align 8, !tbaa !11
  %2137 = fdiv double %2134, %2136
  %2138 = call double @llvm.fmuladd.f64(double 0x402CE38E38E38E20, double %2137, double 0xC02638E38E38E388)
  %2139 = call double @atan(double noundef %2138) #3
  %2140 = call double @llvm.fmuladd.f64(double 0xBFD64CB5F7148405, double %2139, double 0x3FDCFD52F4677872)
  %2141 = load ptr, ptr %7, align 8, !tbaa !5
  %2142 = load double, ptr %2141, align 8, !tbaa !9
  %2143 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %2144 = load double, ptr %2143, align 8, !tbaa !11
  %2145 = fdiv double %2142, %2144
  %2146 = fmul double 2.457600e+00, %2145
  %2147 = load ptr, ptr %7, align 8, !tbaa !5
  %2148 = load double, ptr %2147, align 8, !tbaa !9
  %2149 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %2150 = load double, ptr %2149, align 8, !tbaa !11
  %2151 = fdiv double %2148, %2150
  %2152 = fsub double %2151, 1.000000e+00
  %2153 = call double @pow(double noundef %2152, double noundef 5.000000e+00) #3
  %2154 = fmul double %2146, %2153
  %2155 = load ptr, ptr %8, align 8, !tbaa !5
  %2156 = load double, ptr %2155, align 8, !tbaa !9
  %2157 = fmul double 1.100000e+01, %2156
  %2158 = call double @cos(double noundef %2157) #3
  %2159 = load ptr, ptr %7, align 8, !tbaa !5
  %2160 = load double, ptr %2159, align 8, !tbaa !9
  %2161 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %2162 = load double, ptr %2161, align 8, !tbaa !11
  %2163 = fdiv double %2160, %2162
  %2164 = fsub double %2163, 1.000000e+00
  %2165 = call double @pow(double noundef %2164, double noundef 6.000000e+00) #3
  %2166 = fmul double 2.457600e+00, %2165
  %2167 = load ptr, ptr %8, align 8, !tbaa !5
  %2168 = load double, ptr %2167, align 8, !tbaa !9
  %2169 = fmul double 1.100000e+01, %2168
  %2170 = call double @cos(double noundef %2169) #3
  %2171 = fmul double %2166, %2170
  %2172 = call double @llvm.fmuladd.f64(double %2154, double %2158, double %2171)
  %2173 = fmul double %2140, %2172
  %2174 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2175 = load double, ptr %2174, align 8, !tbaa !15
  %2176 = fsub double %2175, 1.000000e+00
  %2177 = call double @pow(double noundef %2176, double noundef 2.000000e+00) #3
  %2178 = load ptr, ptr %9, align 8, !tbaa !5
  %2179 = load double, ptr %2178, align 8, !tbaa !9
  %2180 = call double @pow(double noundef %2179, double noundef 2.000000e+00) #3
  %2181 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2182 = load double, ptr %2181, align 8, !tbaa !15
  %2183 = fsub double %2182, 1.000000e+00
  %2184 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %2185 = load double, ptr %2184, align 8, !tbaa !14
  %2186 = fmul double -2.000000e+00, %2185
  %2187 = load ptr, ptr %7, align 8, !tbaa !5
  %2188 = load double, ptr %2187, align 8, !tbaa !9
  %2189 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %2190 = load double, ptr %2189, align 8, !tbaa !11
  %2191 = fdiv double %2188, %2190
  %2192 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2193 = load double, ptr %2192, align 8, !tbaa !15
  %2194 = load ptr, ptr %10, align 8, !tbaa !5
  %2195 = load double, ptr %2194, align 8, !tbaa !9
  %2196 = fmul double %2193, %2195
  %2197 = fneg double %2196
  %2198 = call double @llvm.fmuladd.f64(double %2186, double %2191, double %2197)
  %2199 = load ptr, ptr %10, align 8, !tbaa !5
  %2200 = load double, ptr %2199, align 8, !tbaa !9
  %2201 = fadd double %2198, %2200
  %2202 = fmul double %2183, %2201
  %2203 = load ptr, ptr %10, align 8, !tbaa !5
  %2204 = load double, ptr %2203, align 8, !tbaa !9
  %2205 = fmul double %2202, %2204
  %2206 = call double @llvm.fmuladd.f64(double %2177, double %2180, double %2205)
  %2207 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2208 = load double, ptr %2207, align 8, !tbaa !15
  %2209 = fadd double %2208, 1.000000e+00
  %2210 = call double @pow(double noundef %2209, double noundef 2.000000e+00) #3
  %2211 = load ptr, ptr %8, align 8, !tbaa !5
  %2212 = load double, ptr %2211, align 8, !tbaa !9
  %2213 = fmul double 2.000000e+00, %2212
  %2214 = call double @cos(double noundef %2213) #3
  %2215 = call double @llvm.fmuladd.f64(double %2210, double %2214, double %2206)
  %2216 = fmul double %2173, %2215
  %2217 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2218 = load double, ptr %2217, align 8, !tbaa !15
  %2219 = fadd double %2218, 1.000000e+00
  %2220 = call double @pow(double noundef %2219, double noundef 2.000000e+00) #3
  %2221 = load ptr, ptr %9, align 8, !tbaa !5
  %2222 = load double, ptr %2221, align 8, !tbaa !9
  %2223 = call double @pow(double noundef %2222, double noundef 2.000000e+00) #3
  %2224 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %2225 = load double, ptr %2224, align 8, !tbaa !14
  %2226 = fmul double -2.000000e+00, %2225
  %2227 = load ptr, ptr %7, align 8, !tbaa !5
  %2228 = load double, ptr %2227, align 8, !tbaa !9
  %2229 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %2230 = load double, ptr %2229, align 8, !tbaa !11
  %2231 = fdiv double %2228, %2230
  %2232 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2233 = load double, ptr %2232, align 8, !tbaa !15
  %2234 = load ptr, ptr %10, align 8, !tbaa !5
  %2235 = load double, ptr %2234, align 8, !tbaa !9
  %2236 = fmul double %2233, %2235
  %2237 = fneg double %2236
  %2238 = call double @llvm.fmuladd.f64(double %2226, double %2231, double %2237)
  %2239 = load ptr, ptr %10, align 8, !tbaa !5
  %2240 = load double, ptr %2239, align 8, !tbaa !9
  %2241 = fadd double %2238, %2240
  %2242 = call double @pow(double noundef %2241, double noundef 2.000000e+00) #3
  %2243 = call double @llvm.fmuladd.f64(double %2220, double %2223, double %2242)
  %2244 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2245 = load double, ptr %2244, align 8, !tbaa !15
  %2246 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2247 = load double, ptr %2246, align 8, !tbaa !15
  %2248 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2249 = load double, ptr %2248, align 8, !tbaa !15
  %2250 = fmul double 4.000000e+00, %2249
  %2251 = load ptr, ptr %9, align 8, !tbaa !5
  %2252 = load double, ptr %2251, align 8, !tbaa !9
  %2253 = call double @pow(double noundef %2252, double noundef 2.000000e+00) #3
  %2254 = fmul double %2250, %2253
  %2255 = fneg double %2254
  %2256 = call double @llvm.fmuladd.f64(double %2245, double %2247, double %2255)
  %2257 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2258 = load double, ptr %2257, align 8, !tbaa !15
  %2259 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %2258, double %2256)
  %2260 = fadd double %2259, 1.000000e+00
  %2261 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2262 = load double, ptr %2261, align 8, !tbaa !15
  %2263 = fsub double %2262, 1.000000e+00
  %2264 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %2265 = load double, ptr %2264, align 8, !tbaa !14
  %2266 = fmul double -2.000000e+00, %2265
  %2267 = load ptr, ptr %7, align 8, !tbaa !5
  %2268 = load double, ptr %2267, align 8, !tbaa !9
  %2269 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %2270 = load double, ptr %2269, align 8, !tbaa !11
  %2271 = fdiv double %2268, %2270
  %2272 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2273 = load double, ptr %2272, align 8, !tbaa !15
  %2274 = load ptr, ptr %10, align 8, !tbaa !5
  %2275 = load double, ptr %2274, align 8, !tbaa !9
  %2276 = fmul double %2273, %2275
  %2277 = fneg double %2276
  %2278 = call double @llvm.fmuladd.f64(double %2266, double %2271, double %2277)
  %2279 = load ptr, ptr %10, align 8, !tbaa !5
  %2280 = load double, ptr %2279, align 8, !tbaa !9
  %2281 = fadd double %2278, %2280
  %2282 = fmul double %2263, %2281
  %2283 = load ptr, ptr %9, align 8, !tbaa !5
  %2284 = load double, ptr %2283, align 8, !tbaa !9
  %2285 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2286 = load double, ptr %2285, align 8, !tbaa !15
  %2287 = fadd double %2286, 1.000000e+00
  %2288 = call double @pow(double noundef %2287, double noundef 2.000000e+00) #3
  %2289 = fmul double 5.000000e-01, %2288
  %2290 = load ptr, ptr %8, align 8, !tbaa !5
  %2291 = load double, ptr %2290, align 8, !tbaa !9
  %2292 = fmul double 2.000000e+00, %2291
  %2293 = call double @sin(double noundef %2292) #3
  %2294 = fmul double %2289, %2293
  %2295 = call double @llvm.fmuladd.f64(double %2282, double %2284, double %2294)
  %2296 = call double @pow(double noundef %2295, double noundef 2.000000e+00) #3
  %2297 = fneg double %2296
  %2298 = call double @llvm.fmuladd.f64(double %2243, double %2260, double %2297)
  %2299 = call double @sqrt(double noundef %2298) #3
  %2300 = fdiv double %2216, %2299
  %2301 = fsub double %2132, %2300
  %2302 = load ptr, ptr %7, align 8, !tbaa !5
  %2303 = load double, ptr %2302, align 8, !tbaa !9
  %2304 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %2305 = load double, ptr %2304, align 8, !tbaa !11
  %2306 = fdiv double %2303, %2305
  %2307 = call double @llvm.fmuladd.f64(double 0x402CE38E38E38E20, double %2306, double 0xC02638E38E38E388)
  %2308 = call double @atan(double noundef %2307) #3
  %2309 = call double @llvm.fmuladd.f64(double 0xBFD64CB5F7148405, double %2308, double 0x3FDCFD52F4677872)
  %2310 = fmul double 6.000000e+00, %2309
  %2311 = load ptr, ptr %7, align 8, !tbaa !5
  %2312 = load double, ptr %2311, align 8, !tbaa !9
  %2313 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %2314 = load double, ptr %2313, align 8, !tbaa !11
  %2315 = fdiv double %2312, %2314
  %2316 = fmul double 2.457600e+00, %2315
  %2317 = load ptr, ptr %7, align 8, !tbaa !5
  %2318 = load double, ptr %2317, align 8, !tbaa !9
  %2319 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %2320 = load double, ptr %2319, align 8, !tbaa !11
  %2321 = fdiv double %2318, %2320
  %2322 = fsub double %2321, 1.000000e+00
  %2323 = call double @pow(double noundef %2322, double noundef 5.000000e+00) #3
  %2324 = fmul double %2316, %2323
  %2325 = load ptr, ptr %8, align 8, !tbaa !5
  %2326 = load double, ptr %2325, align 8, !tbaa !9
  %2327 = fmul double 1.100000e+01, %2326
  %2328 = call double @cos(double noundef %2327) #3
  %2329 = load ptr, ptr %7, align 8, !tbaa !5
  %2330 = load double, ptr %2329, align 8, !tbaa !9
  %2331 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %2332 = load double, ptr %2331, align 8, !tbaa !11
  %2333 = fdiv double %2330, %2332
  %2334 = fsub double %2333, 1.000000e+00
  %2335 = call double @pow(double noundef %2334, double noundef 6.000000e+00) #3
  %2336 = fmul double 2.457600e+00, %2335
  %2337 = load ptr, ptr %8, align 8, !tbaa !5
  %2338 = load double, ptr %2337, align 8, !tbaa !9
  %2339 = fmul double 1.100000e+01, %2338
  %2340 = call double @cos(double noundef %2339) #3
  %2341 = fmul double %2336, %2340
  %2342 = call double @llvm.fmuladd.f64(double %2324, double %2328, double %2341)
  %2343 = fmul double %2310, %2342
  %2344 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2345 = load double, ptr %2344, align 8, !tbaa !15
  %2346 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2347 = load double, ptr %2346, align 8, !tbaa !15
  %2348 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2349 = load double, ptr %2348, align 8, !tbaa !15
  %2350 = fmul double 4.000000e+00, %2349
  %2351 = load ptr, ptr %9, align 8, !tbaa !5
  %2352 = load double, ptr %2351, align 8, !tbaa !9
  %2353 = call double @pow(double noundef %2352, double noundef 2.000000e+00) #3
  %2354 = fmul double %2350, %2353
  %2355 = fneg double %2354
  %2356 = call double @llvm.fmuladd.f64(double %2345, double %2347, double %2355)
  %2357 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2358 = load double, ptr %2357, align 8, !tbaa !15
  %2359 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %2358, double %2356)
  %2360 = fadd double %2359, 1.000000e+00
  %2361 = fmul double %2343, %2360
  %2362 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2363 = load double, ptr %2362, align 8, !tbaa !15
  %2364 = fadd double %2363, 1.000000e+00
  %2365 = call double @pow(double noundef %2364, double noundef 2.000000e+00) #3
  %2366 = load ptr, ptr %9, align 8, !tbaa !5
  %2367 = load double, ptr %2366, align 8, !tbaa !9
  %2368 = call double @pow(double noundef %2367, double noundef 2.000000e+00) #3
  %2369 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %2370 = load double, ptr %2369, align 8, !tbaa !14
  %2371 = fmul double -2.000000e+00, %2370
  %2372 = load ptr, ptr %7, align 8, !tbaa !5
  %2373 = load double, ptr %2372, align 8, !tbaa !9
  %2374 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %2375 = load double, ptr %2374, align 8, !tbaa !11
  %2376 = fdiv double %2373, %2375
  %2377 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2378 = load double, ptr %2377, align 8, !tbaa !15
  %2379 = load ptr, ptr %10, align 8, !tbaa !5
  %2380 = load double, ptr %2379, align 8, !tbaa !9
  %2381 = fmul double %2378, %2380
  %2382 = fneg double %2381
  %2383 = call double @llvm.fmuladd.f64(double %2371, double %2376, double %2382)
  %2384 = load ptr, ptr %10, align 8, !tbaa !5
  %2385 = load double, ptr %2384, align 8, !tbaa !9
  %2386 = fadd double %2383, %2385
  %2387 = call double @pow(double noundef %2386, double noundef 2.000000e+00) #3
  %2388 = call double @llvm.fmuladd.f64(double %2365, double %2368, double %2387)
  %2389 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2390 = load double, ptr %2389, align 8, !tbaa !15
  %2391 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2392 = load double, ptr %2391, align 8, !tbaa !15
  %2393 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2394 = load double, ptr %2393, align 8, !tbaa !15
  %2395 = fmul double 4.000000e+00, %2394
  %2396 = load ptr, ptr %9, align 8, !tbaa !5
  %2397 = load double, ptr %2396, align 8, !tbaa !9
  %2398 = call double @pow(double noundef %2397, double noundef 2.000000e+00) #3
  %2399 = fmul double %2395, %2398
  %2400 = fneg double %2399
  %2401 = call double @llvm.fmuladd.f64(double %2390, double %2392, double %2400)
  %2402 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2403 = load double, ptr %2402, align 8, !tbaa !15
  %2404 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %2403, double %2401)
  %2405 = fadd double %2404, 1.000000e+00
  %2406 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2407 = load double, ptr %2406, align 8, !tbaa !15
  %2408 = fsub double %2407, 1.000000e+00
  %2409 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %2410 = load double, ptr %2409, align 8, !tbaa !14
  %2411 = fmul double -2.000000e+00, %2410
  %2412 = load ptr, ptr %7, align 8, !tbaa !5
  %2413 = load double, ptr %2412, align 8, !tbaa !9
  %2414 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %2415 = load double, ptr %2414, align 8, !tbaa !11
  %2416 = fdiv double %2413, %2415
  %2417 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2418 = load double, ptr %2417, align 8, !tbaa !15
  %2419 = load ptr, ptr %10, align 8, !tbaa !5
  %2420 = load double, ptr %2419, align 8, !tbaa !9
  %2421 = fmul double %2418, %2420
  %2422 = fneg double %2421
  %2423 = call double @llvm.fmuladd.f64(double %2411, double %2416, double %2422)
  %2424 = load ptr, ptr %10, align 8, !tbaa !5
  %2425 = load double, ptr %2424, align 8, !tbaa !9
  %2426 = fadd double %2423, %2425
  %2427 = fmul double %2408, %2426
  %2428 = load ptr, ptr %9, align 8, !tbaa !5
  %2429 = load double, ptr %2428, align 8, !tbaa !9
  %2430 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2431 = load double, ptr %2430, align 8, !tbaa !15
  %2432 = fadd double %2431, 1.000000e+00
  %2433 = call double @pow(double noundef %2432, double noundef 2.000000e+00) #3
  %2434 = fmul double 5.000000e-01, %2433
  %2435 = load ptr, ptr %8, align 8, !tbaa !5
  %2436 = load double, ptr %2435, align 8, !tbaa !9
  %2437 = fmul double 2.000000e+00, %2436
  %2438 = call double @sin(double noundef %2437) #3
  %2439 = fmul double %2434, %2438
  %2440 = call double @llvm.fmuladd.f64(double %2427, double %2429, double %2439)
  %2441 = call double @pow(double noundef %2440, double noundef 2.000000e+00) #3
  %2442 = fneg double %2441
  %2443 = call double @llvm.fmuladd.f64(double %2388, double %2405, double %2442)
  %2444 = call double @sqrt(double noundef %2443) #3
  %2445 = fdiv double %2361, %2444
  %2446 = fadd double %2301, %2445
  %2447 = load ptr, ptr %7, align 8, !tbaa !5
  %2448 = load double, ptr %2447, align 8, !tbaa !9
  %2449 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %2450 = load double, ptr %2449, align 8, !tbaa !11
  %2451 = fdiv double %2448, %2450
  %2452 = call double @llvm.fmuladd.f64(double 0x402CE38E38E38E20, double %2451, double 0xC02638E38E38E388)
  %2453 = call double @atan(double noundef %2452) #3
  %2454 = call double @llvm.fmuladd.f64(double 0xBFD64CB5F7148405, double %2453, double 0x3FDCFD52F4677872)
  %2455 = load ptr, ptr %7, align 8, !tbaa !5
  %2456 = load double, ptr %2455, align 8, !tbaa !9
  %2457 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %2458 = load double, ptr %2457, align 8, !tbaa !11
  %2459 = fdiv double %2456, %2458
  %2460 = fmul double 2.457600e+00, %2459
  %2461 = load ptr, ptr %7, align 8, !tbaa !5
  %2462 = load double, ptr %2461, align 8, !tbaa !9
  %2463 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %2464 = load double, ptr %2463, align 8, !tbaa !11
  %2465 = fdiv double %2462, %2464
  %2466 = fsub double %2465, 1.000000e+00
  %2467 = call double @pow(double noundef %2466, double noundef 5.000000e+00) #3
  %2468 = fmul double %2460, %2467
  %2469 = load ptr, ptr %8, align 8, !tbaa !5
  %2470 = load double, ptr %2469, align 8, !tbaa !9
  %2471 = fmul double 1.100000e+01, %2470
  %2472 = call double @cos(double noundef %2471) #3
  %2473 = load ptr, ptr %7, align 8, !tbaa !5
  %2474 = load double, ptr %2473, align 8, !tbaa !9
  %2475 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %2476 = load double, ptr %2475, align 8, !tbaa !11
  %2477 = fdiv double %2474, %2476
  %2478 = fsub double %2477, 1.000000e+00
  %2479 = call double @pow(double noundef %2478, double noundef 6.000000e+00) #3
  %2480 = fmul double 2.457600e+00, %2479
  %2481 = load ptr, ptr %8, align 8, !tbaa !5
  %2482 = load double, ptr %2481, align 8, !tbaa !9
  %2483 = fmul double 1.100000e+01, %2482
  %2484 = call double @cos(double noundef %2483) #3
  %2485 = fmul double %2480, %2484
  %2486 = call double @llvm.fmuladd.f64(double %2468, double %2472, double %2485)
  %2487 = fmul double %2454, %2486
  %2488 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2489 = load double, ptr %2488, align 8, !tbaa !15
  %2490 = fsub double %2489, 1.000000e+00
  %2491 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %2492 = load double, ptr %2491, align 8, !tbaa !14
  %2493 = fmul double -2.000000e+00, %2492
  %2494 = load ptr, ptr %7, align 8, !tbaa !5
  %2495 = load double, ptr %2494, align 8, !tbaa !9
  %2496 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %2497 = load double, ptr %2496, align 8, !tbaa !11
  %2498 = fdiv double %2495, %2497
  %2499 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2500 = load double, ptr %2499, align 8, !tbaa !15
  %2501 = load ptr, ptr %10, align 8, !tbaa !5
  %2502 = load double, ptr %2501, align 8, !tbaa !9
  %2503 = fmul double %2500, %2502
  %2504 = fneg double %2503
  %2505 = call double @llvm.fmuladd.f64(double %2493, double %2498, double %2504)
  %2506 = load ptr, ptr %10, align 8, !tbaa !5
  %2507 = load double, ptr %2506, align 8, !tbaa !9
  %2508 = fadd double %2505, %2507
  %2509 = fmul double %2490, %2508
  %2510 = load ptr, ptr %9, align 8, !tbaa !5
  %2511 = load double, ptr %2510, align 8, !tbaa !9
  %2512 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2513 = load double, ptr %2512, align 8, !tbaa !15
  %2514 = fadd double %2513, 1.000000e+00
  %2515 = call double @pow(double noundef %2514, double noundef 2.000000e+00) #3
  %2516 = fmul double 5.000000e-01, %2515
  %2517 = load ptr, ptr %8, align 8, !tbaa !5
  %2518 = load double, ptr %2517, align 8, !tbaa !9
  %2519 = fmul double 2.000000e+00, %2518
  %2520 = call double @sin(double noundef %2519) #3
  %2521 = fmul double %2516, %2520
  %2522 = call double @llvm.fmuladd.f64(double %2509, double %2511, double %2521)
  %2523 = fmul double %2487, %2522
  %2524 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2525 = load double, ptr %2524, align 8, !tbaa !15
  %2526 = fmul double 4.000000e+00, %2525
  %2527 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2528 = load double, ptr %2527, align 8, !tbaa !15
  %2529 = fadd double %2528, 1.000000e+00
  %2530 = call double @pow(double noundef %2529, double noundef 2.000000e+00) #3
  %2531 = load ptr, ptr %9, align 8, !tbaa !5
  %2532 = load double, ptr %2531, align 8, !tbaa !9
  %2533 = call double @pow(double noundef %2532, double noundef 2.000000e+00) #3
  %2534 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %2535 = load double, ptr %2534, align 8, !tbaa !14
  %2536 = fmul double -2.000000e+00, %2535
  %2537 = load ptr, ptr %7, align 8, !tbaa !5
  %2538 = load double, ptr %2537, align 8, !tbaa !9
  %2539 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %2540 = load double, ptr %2539, align 8, !tbaa !11
  %2541 = fdiv double %2538, %2540
  %2542 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2543 = load double, ptr %2542, align 8, !tbaa !15
  %2544 = load ptr, ptr %10, align 8, !tbaa !5
  %2545 = load double, ptr %2544, align 8, !tbaa !9
  %2546 = fmul double %2543, %2545
  %2547 = fneg double %2546
  %2548 = call double @llvm.fmuladd.f64(double %2536, double %2541, double %2547)
  %2549 = load ptr, ptr %10, align 8, !tbaa !5
  %2550 = load double, ptr %2549, align 8, !tbaa !9
  %2551 = fadd double %2548, %2550
  %2552 = call double @pow(double noundef %2551, double noundef 2.000000e+00) #3
  %2553 = call double @llvm.fmuladd.f64(double %2530, double %2533, double %2552)
  %2554 = fmul double %2526, %2553
  %2555 = load ptr, ptr %9, align 8, !tbaa !5
  %2556 = load double, ptr %2555, align 8, !tbaa !9
  %2557 = fmul double %2554, %2556
  %2558 = load ptr, ptr %10, align 8, !tbaa !5
  %2559 = load double, ptr %2558, align 8, !tbaa !9
  %2560 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2561 = load double, ptr %2560, align 8, !tbaa !15
  %2562 = fadd double %2561, 1.000000e+00
  %2563 = call double @pow(double noundef %2562, double noundef 2.000000e+00) #3
  %2564 = load ptr, ptr %8, align 8, !tbaa !5
  %2565 = load double, ptr %2564, align 8, !tbaa !9
  %2566 = fmul double 2.000000e+00, %2565
  %2567 = call double @sin(double noundef %2566) #3
  %2568 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2569 = load double, ptr %2568, align 8, !tbaa !15
  %2570 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %2569, double -2.000000e+00)
  %2571 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %2572 = load double, ptr %2571, align 8, !tbaa !14
  %2573 = fmul double -2.000000e+00, %2572
  %2574 = load ptr, ptr %7, align 8, !tbaa !5
  %2575 = load double, ptr %2574, align 8, !tbaa !9
  %2576 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %2577 = load double, ptr %2576, align 8, !tbaa !11
  %2578 = fdiv double %2575, %2577
  %2579 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2580 = load double, ptr %2579, align 8, !tbaa !15
  %2581 = load ptr, ptr %10, align 8, !tbaa !5
  %2582 = load double, ptr %2581, align 8, !tbaa !9
  %2583 = fmul double %2580, %2582
  %2584 = fneg double %2583
  %2585 = call double @llvm.fmuladd.f64(double %2573, double %2578, double %2584)
  %2586 = load ptr, ptr %10, align 8, !tbaa !5
  %2587 = load double, ptr %2586, align 8, !tbaa !9
  %2588 = fadd double %2585, %2587
  %2589 = fmul double %2570, %2588
  %2590 = load ptr, ptr %9, align 8, !tbaa !5
  %2591 = load double, ptr %2590, align 8, !tbaa !9
  %2592 = fmul double %2589, %2591
  %2593 = call double @llvm.fmuladd.f64(double %2563, double %2567, double %2592)
  %2594 = fmul double 5.000000e-01, %2593
  %2595 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2596 = load double, ptr %2595, align 8, !tbaa !15
  %2597 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2598 = load double, ptr %2597, align 8, !tbaa !15
  %2599 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2600 = load double, ptr %2599, align 8, !tbaa !15
  %2601 = fmul double 4.000000e+00, %2600
  %2602 = load ptr, ptr %9, align 8, !tbaa !5
  %2603 = load double, ptr %2602, align 8, !tbaa !9
  %2604 = call double @pow(double noundef %2603, double noundef 2.000000e+00) #3
  %2605 = fmul double %2601, %2604
  %2606 = fneg double %2605
  %2607 = call double @llvm.fmuladd.f64(double %2596, double %2598, double %2606)
  %2608 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2609 = load double, ptr %2608, align 8, !tbaa !15
  %2610 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %2609, double %2607)
  %2611 = fadd double %2610, 1.000000e+00
  %2612 = fmul double %2594, %2611
  %2613 = fneg double %2612
  %2614 = call double @llvm.fmuladd.f64(double %2557, double %2559, double %2613)
  %2615 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2616 = load double, ptr %2615, align 8, !tbaa !15
  %2617 = fsub double %2616, 1.000000e+00
  %2618 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %2619 = load double, ptr %2618, align 8, !tbaa !14
  %2620 = fmul double -2.000000e+00, %2619
  %2621 = load ptr, ptr %7, align 8, !tbaa !5
  %2622 = load double, ptr %2621, align 8, !tbaa !9
  %2623 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %2624 = load double, ptr %2623, align 8, !tbaa !11
  %2625 = fdiv double %2622, %2624
  %2626 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2627 = load double, ptr %2626, align 8, !tbaa !15
  %2628 = load ptr, ptr %10, align 8, !tbaa !5
  %2629 = load double, ptr %2628, align 8, !tbaa !9
  %2630 = fmul double %2627, %2629
  %2631 = fneg double %2630
  %2632 = call double @llvm.fmuladd.f64(double %2620, double %2625, double %2631)
  %2633 = load ptr, ptr %10, align 8, !tbaa !5
  %2634 = load double, ptr %2633, align 8, !tbaa !9
  %2635 = fadd double %2632, %2634
  %2636 = fmul double %2617, %2635
  %2637 = load ptr, ptr %9, align 8, !tbaa !5
  %2638 = load double, ptr %2637, align 8, !tbaa !9
  %2639 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2640 = load double, ptr %2639, align 8, !tbaa !15
  %2641 = fadd double %2640, 1.000000e+00
  %2642 = call double @pow(double noundef %2641, double noundef 2.000000e+00) #3
  %2643 = fmul double 5.000000e-01, %2642
  %2644 = load ptr, ptr %8, align 8, !tbaa !5
  %2645 = load double, ptr %2644, align 8, !tbaa !9
  %2646 = fmul double 2.000000e+00, %2645
  %2647 = call double @sin(double noundef %2646) #3
  %2648 = fmul double %2643, %2647
  %2649 = call double @llvm.fmuladd.f64(double %2636, double %2638, double %2648)
  %2650 = fmul double 5.000000e-01, %2649
  %2651 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2652 = load double, ptr %2651, align 8, !tbaa !15
  %2653 = fsub double %2652, 1.000000e+00
  %2654 = call double @pow(double noundef %2653, double noundef 2.000000e+00) #3
  %2655 = fmul double 2.000000e+00, %2654
  %2656 = load ptr, ptr %9, align 8, !tbaa !5
  %2657 = load double, ptr %2656, align 8, !tbaa !9
  %2658 = call double @pow(double noundef %2657, double noundef 2.000000e+00) #3
  %2659 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2660 = load double, ptr %2659, align 8, !tbaa !15
  %2661 = fsub double %2660, 1.000000e+00
  %2662 = fmul double 2.000000e+00, %2661
  %2663 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %2664 = load double, ptr %2663, align 8, !tbaa !14
  %2665 = fmul double -2.000000e+00, %2664
  %2666 = load ptr, ptr %7, align 8, !tbaa !5
  %2667 = load double, ptr %2666, align 8, !tbaa !9
  %2668 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %2669 = load double, ptr %2668, align 8, !tbaa !11
  %2670 = fdiv double %2667, %2669
  %2671 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2672 = load double, ptr %2671, align 8, !tbaa !15
  %2673 = load ptr, ptr %10, align 8, !tbaa !5
  %2674 = load double, ptr %2673, align 8, !tbaa !9
  %2675 = fmul double %2672, %2674
  %2676 = fneg double %2675
  %2677 = call double @llvm.fmuladd.f64(double %2665, double %2670, double %2676)
  %2678 = load ptr, ptr %10, align 8, !tbaa !5
  %2679 = load double, ptr %2678, align 8, !tbaa !9
  %2680 = fadd double %2677, %2679
  %2681 = fmul double %2662, %2680
  %2682 = load ptr, ptr %10, align 8, !tbaa !5
  %2683 = load double, ptr %2682, align 8, !tbaa !9
  %2684 = fmul double %2681, %2683
  %2685 = call double @llvm.fmuladd.f64(double %2655, double %2658, double %2684)
  %2686 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2687 = load double, ptr %2686, align 8, !tbaa !15
  %2688 = fadd double %2687, 1.000000e+00
  %2689 = call double @pow(double noundef %2688, double noundef 2.000000e+00) #3
  %2690 = fmul double 2.000000e+00, %2689
  %2691 = load ptr, ptr %8, align 8, !tbaa !5
  %2692 = load double, ptr %2691, align 8, !tbaa !9
  %2693 = fmul double 2.000000e+00, %2692
  %2694 = call double @cos(double noundef %2693) #3
  %2695 = call double @llvm.fmuladd.f64(double %2690, double %2694, double %2685)
  %2696 = call double @llvm.fmuladd.f64(double %2650, double %2695, double %2614)
  %2697 = fmul double %2523, %2696
  %2698 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2699 = load double, ptr %2698, align 8, !tbaa !15
  %2700 = fadd double %2699, 1.000000e+00
  %2701 = call double @pow(double noundef %2700, double noundef 2.000000e+00) #3
  %2702 = load ptr, ptr %9, align 8, !tbaa !5
  %2703 = load double, ptr %2702, align 8, !tbaa !9
  %2704 = call double @pow(double noundef %2703, double noundef 2.000000e+00) #3
  %2705 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %2706 = load double, ptr %2705, align 8, !tbaa !14
  %2707 = fmul double -2.000000e+00, %2706
  %2708 = load ptr, ptr %7, align 8, !tbaa !5
  %2709 = load double, ptr %2708, align 8, !tbaa !9
  %2710 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %2711 = load double, ptr %2710, align 8, !tbaa !11
  %2712 = fdiv double %2709, %2711
  %2713 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2714 = load double, ptr %2713, align 8, !tbaa !15
  %2715 = load ptr, ptr %10, align 8, !tbaa !5
  %2716 = load double, ptr %2715, align 8, !tbaa !9
  %2717 = fmul double %2714, %2716
  %2718 = fneg double %2717
  %2719 = call double @llvm.fmuladd.f64(double %2707, double %2712, double %2718)
  %2720 = load ptr, ptr %10, align 8, !tbaa !5
  %2721 = load double, ptr %2720, align 8, !tbaa !9
  %2722 = fadd double %2719, %2721
  %2723 = call double @pow(double noundef %2722, double noundef 2.000000e+00) #3
  %2724 = call double @llvm.fmuladd.f64(double %2701, double %2704, double %2723)
  %2725 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2726 = load double, ptr %2725, align 8, !tbaa !15
  %2727 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2728 = load double, ptr %2727, align 8, !tbaa !15
  %2729 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2730 = load double, ptr %2729, align 8, !tbaa !15
  %2731 = fmul double 4.000000e+00, %2730
  %2732 = load ptr, ptr %9, align 8, !tbaa !5
  %2733 = load double, ptr %2732, align 8, !tbaa !9
  %2734 = call double @pow(double noundef %2733, double noundef 2.000000e+00) #3
  %2735 = fmul double %2731, %2734
  %2736 = fneg double %2735
  %2737 = call double @llvm.fmuladd.f64(double %2726, double %2728, double %2736)
  %2738 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2739 = load double, ptr %2738, align 8, !tbaa !15
  %2740 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %2739, double %2737)
  %2741 = fadd double %2740, 1.000000e+00
  %2742 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2743 = load double, ptr %2742, align 8, !tbaa !15
  %2744 = fsub double %2743, 1.000000e+00
  %2745 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %2746 = load double, ptr %2745, align 8, !tbaa !14
  %2747 = fmul double -2.000000e+00, %2746
  %2748 = load ptr, ptr %7, align 8, !tbaa !5
  %2749 = load double, ptr %2748, align 8, !tbaa !9
  %2750 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %2751 = load double, ptr %2750, align 8, !tbaa !11
  %2752 = fdiv double %2749, %2751
  %2753 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2754 = load double, ptr %2753, align 8, !tbaa !15
  %2755 = load ptr, ptr %10, align 8, !tbaa !5
  %2756 = load double, ptr %2755, align 8, !tbaa !9
  %2757 = fmul double %2754, %2756
  %2758 = fneg double %2757
  %2759 = call double @llvm.fmuladd.f64(double %2747, double %2752, double %2758)
  %2760 = load ptr, ptr %10, align 8, !tbaa !5
  %2761 = load double, ptr %2760, align 8, !tbaa !9
  %2762 = fadd double %2759, %2761
  %2763 = fmul double %2744, %2762
  %2764 = load ptr, ptr %9, align 8, !tbaa !5
  %2765 = load double, ptr %2764, align 8, !tbaa !9
  %2766 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2767 = load double, ptr %2766, align 8, !tbaa !15
  %2768 = fadd double %2767, 1.000000e+00
  %2769 = call double @pow(double noundef %2768, double noundef 2.000000e+00) #3
  %2770 = fmul double 5.000000e-01, %2769
  %2771 = load ptr, ptr %8, align 8, !tbaa !5
  %2772 = load double, ptr %2771, align 8, !tbaa !9
  %2773 = fmul double 2.000000e+00, %2772
  %2774 = call double @sin(double noundef %2773) #3
  %2775 = fmul double %2770, %2774
  %2776 = call double @llvm.fmuladd.f64(double %2763, double %2765, double %2775)
  %2777 = call double @pow(double noundef %2776, double noundef 2.000000e+00) #3
  %2778 = fneg double %2777
  %2779 = call double @llvm.fmuladd.f64(double %2724, double %2741, double %2778)
  %2780 = call double @pow(double noundef %2779, double noundef 1.500000e+00) #3
  %2781 = fdiv double %2697, %2780
  %2782 = fsub double %2446, %2781
  %2783 = fmul double %46, %2782
  %2784 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2785 = load double, ptr %2784, align 8, !tbaa !15
  %2786 = fadd double %2785, 1.000000e+00
  %2787 = call double @pow(double noundef %2786, double noundef 2.000000e+00) #3
  %2788 = load ptr, ptr %9, align 8, !tbaa !5
  %2789 = load double, ptr %2788, align 8, !tbaa !9
  %2790 = call double @pow(double noundef %2789, double noundef 2.000000e+00) #3
  %2791 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %2792 = load double, ptr %2791, align 8, !tbaa !14
  %2793 = fmul double -2.000000e+00, %2792
  %2794 = load ptr, ptr %7, align 8, !tbaa !5
  %2795 = load double, ptr %2794, align 8, !tbaa !9
  %2796 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %2797 = load double, ptr %2796, align 8, !tbaa !11
  %2798 = fdiv double %2795, %2797
  %2799 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2800 = load double, ptr %2799, align 8, !tbaa !15
  %2801 = load ptr, ptr %10, align 8, !tbaa !5
  %2802 = load double, ptr %2801, align 8, !tbaa !9
  %2803 = fmul double %2800, %2802
  %2804 = fneg double %2803
  %2805 = call double @llvm.fmuladd.f64(double %2793, double %2798, double %2804)
  %2806 = load ptr, ptr %10, align 8, !tbaa !5
  %2807 = load double, ptr %2806, align 8, !tbaa !9
  %2808 = fadd double %2805, %2807
  %2809 = call double @pow(double noundef %2808, double noundef 2.000000e+00) #3
  %2810 = call double @llvm.fmuladd.f64(double %2787, double %2790, double %2809)
  %2811 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2812 = load double, ptr %2811, align 8, !tbaa !15
  %2813 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2814 = load double, ptr %2813, align 8, !tbaa !15
  %2815 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2816 = load double, ptr %2815, align 8, !tbaa !15
  %2817 = fmul double 4.000000e+00, %2816
  %2818 = load ptr, ptr %9, align 8, !tbaa !5
  %2819 = load double, ptr %2818, align 8, !tbaa !9
  %2820 = call double @pow(double noundef %2819, double noundef 2.000000e+00) #3
  %2821 = fmul double %2817, %2820
  %2822 = fneg double %2821
  %2823 = call double @llvm.fmuladd.f64(double %2812, double %2814, double %2822)
  %2824 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2825 = load double, ptr %2824, align 8, !tbaa !15
  %2826 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %2825, double %2823)
  %2827 = fadd double %2826, 1.000000e+00
  %2828 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2829 = load double, ptr %2828, align 8, !tbaa !15
  %2830 = fsub double %2829, 1.000000e+00
  %2831 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 3
  %2832 = load double, ptr %2831, align 8, !tbaa !14
  %2833 = fmul double -2.000000e+00, %2832
  %2834 = load ptr, ptr %7, align 8, !tbaa !5
  %2835 = load double, ptr %2834, align 8, !tbaa !9
  %2836 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 1
  %2837 = load double, ptr %2836, align 8, !tbaa !11
  %2838 = fdiv double %2835, %2837
  %2839 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2840 = load double, ptr %2839, align 8, !tbaa !15
  %2841 = load ptr, ptr %10, align 8, !tbaa !5
  %2842 = load double, ptr %2841, align 8, !tbaa !9
  %2843 = fmul double %2840, %2842
  %2844 = fneg double %2843
  %2845 = call double @llvm.fmuladd.f64(double %2833, double %2838, double %2844)
  %2846 = load ptr, ptr %10, align 8, !tbaa !5
  %2847 = load double, ptr %2846, align 8, !tbaa !9
  %2848 = fadd double %2845, %2847
  %2849 = fmul double %2830, %2848
  %2850 = load ptr, ptr %9, align 8, !tbaa !5
  %2851 = load double, ptr %2850, align 8, !tbaa !9
  %2852 = getelementptr inbounds %class.PolarR6_SonnendruckerGyro_ShafranovGeometry, ptr %11, i32 0, i32 2
  %2853 = load double, ptr %2852, align 8, !tbaa !15
  %2854 = fadd double %2853, 1.000000e+00
  %2855 = call double @pow(double noundef %2854, double noundef 2.000000e+00) #3
  %2856 = fmul double 5.000000e-01, %2855
  %2857 = load ptr, ptr %8, align 8, !tbaa !5
  %2858 = load double, ptr %2857, align 8, !tbaa !9
  %2859 = fmul double 2.000000e+00, %2858
  %2860 = call double @sin(double noundef %2859) #3
  %2861 = fmul double %2856, %2860
  %2862 = call double @llvm.fmuladd.f64(double %2849, double %2851, double %2861)
  %2863 = call double @pow(double noundef %2862, double noundef 2.000000e+00) #3
  %2864 = fneg double %2863
  %2865 = call double @llvm.fmuladd.f64(double %2810, double %2827, double %2864)
  %2866 = call double @sqrt(double noundef %2865) #3
  %2867 = fdiv double %2783, %2866
  %2868 = fsub double %40, %2867
  ret double %2868
}

; Function Attrs: nounwind
declare double @pow(double noundef, double noundef) #1

; Function Attrs: nounwind
declare double @cos(double noundef) #1

; Function Attrs: nounwind
declare double @atan(double noundef) #1

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

; Function Attrs: nounwind
declare double @sin(double noundef) #1

; Function Attrs: nounwind
declare double @sqrt(double noundef) #1

attributes #0 = { mustprogress nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #1 = { nounwind "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 #2 = { nocallback nofree nosync nounwind speculatable willreturn memory(none) }
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 = !{!"any pointer", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C++ TBAA"}
!9 = !{!10, !10, i64 0}
!10 = !{!"double", !7, i64 0}
!11 = !{!12, !10, i64 8}
!12 = !{!"_ZTS43PolarR6_SonnendruckerGyro_ShafranovGeometry", !13, i64 0, !10, i64 8, !10, i64 16, !10, i64 24}
!13 = !{!"_ZTS10SourceTerm"}
!14 = !{!12, !10, i64 24}
!15 = !{!12, !10, i64 16}


; 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 nofree nounwind willreturn memory(write, argmem: readwrite) uwtable
define dso_local noundef double @_ZNK43PolarR6_SonnendruckerGyro_ShafranovGeometry5rhs_fERKdS1_S1_S1_(ptr noundef nonnull readonly align 8 dereferenceable(32) %0, ptr nocapture noundef nonnull readonly align 8 dereferenceable(8) %1, ptr nocapture noundef nonnull readonly align 8 dereferenceable(8) %2, ptr nocapture noundef nonnull readonly align 8 dereferenceable(8) %3, ptr nocapture noundef nonnull readonly align 8 dereferenceable(8) %4) unnamed_addr #0 align 2 {
  %6 = load double, ptr %1, align 8, !tbaa !5
  %7 = getelementptr inbounds i8, ptr %0, i64 8
  %8 = load double, ptr %7, align 8, !tbaa !9
  %9 = fdiv double %6, %8
  %10 = tail call double @pow(double noundef %9, double noundef 6.000000e+00) #4
  %11 = fmul double %10, 4.096000e-01
  %12 = load double, ptr %1, align 8, !tbaa !5
  %13 = load double, ptr %7, align 8, !tbaa !9
  %14 = fdiv double %12, %13
  %15 = fadd double %14, -1.000000e+00
  %16 = tail call double @pow(double noundef %15, double noundef 6.000000e+00) #4
  %17 = fmul double %11, %16
  %18 = load double, ptr %2, align 8, !tbaa !5
  %19 = fmul double %18, 1.100000e+01
  %20 = tail call double @cos(double noundef %19) #4
  %21 = load double, ptr %1, align 8, !tbaa !5
  %22 = load double, ptr %7, align 8, !tbaa !9
  %23 = fdiv double %21, %22
  %24 = tail call double @llvm.fmuladd.f64(double %23, double 0x402CE38E38E38E20, double 0xC02638E38E38E388)
  %25 = tail call double @atan(double noundef %24) #4
  %26 = tail call double @llvm.fmuladd.f64(double %25, double 0xBFD64CB5F7148405, double 0x3FDCFD52F4677872)
  %27 = load double, ptr %1, align 8, !tbaa !5
  %28 = load double, ptr %7, align 8, !tbaa !9
  %29 = fdiv double %27, %28
  %30 = tail call double @pow(double noundef %29, double noundef 4.000000e+00) #4
  %31 = getelementptr inbounds i8, ptr %0, i64 24
  %32 = load double, ptr %31, align 8, !tbaa !12
  %33 = fmul double %32, 9.011200e+00
  %34 = load double, ptr %1, align 8, !tbaa !5
  %35 = load double, ptr %7, align 8, !tbaa !9
  %36 = fdiv double %34, %35
  %37 = fmul double %33, %36
  %38 = tail call double @llvm.fmuladd.f64(double %36, double 0x402CE38E38E38E20, double 0xC02638E38E38E388)
  %39 = tail call double @atan(double noundef %38) #4
  %40 = tail call double @llvm.fmuladd.f64(double %39, double 0xBFD64CB5F7148405, double 0x3FDCFD52F4677872)
  %41 = fmul double %37, %40
  %42 = getelementptr inbounds i8, ptr %0, i64 16
  %43 = load double, ptr %42, align 8, !tbaa !13
  %44 = fadd double %43, -1.000000e+00
  %45 = fmul double %41, %44
  %46 = load double, ptr %1, align 8, !tbaa !5
  %47 = load double, ptr %7, align 8, !tbaa !9
  %48 = fdiv double %46, %47
  %49 = fadd double %48, -1.000000e+00
  %50 = tail call double @pow(double noundef %49, double noundef 6.000000e+00) #4
  %51 = fmul double %45, %50
  %52 = load double, ptr %3, align 8, !tbaa !5
  %53 = fmul double %51, %52
  %54 = load double, ptr %2, align 8, !tbaa !5
  %55 = fmul double %54, 1.100000e+01
  %56 = tail call double @sin(double noundef %55) #4
  %57 = fmul double %53, %56
  %58 = load double, ptr %42, align 8, !tbaa !13
  %59 = fadd double %58, 1.000000e+00
  %square = fmul double %59, %59
  %60 = load double, ptr %3, align 8, !tbaa !5
  %square359 = fmul double %60, %60
  %61 = load double, ptr %31, align 8, !tbaa !12
  %62 = fmul double %61, -2.000000e+00
  %63 = load double, ptr %1, align 8, !tbaa !5
  %64 = load double, ptr %7, align 8, !tbaa !9
  %65 = fdiv double %63, %64
  %66 = load double, ptr %4, align 8, !tbaa !5
  %67 = fneg double %58
  %68 = fmul double %66, %67
  %69 = tail call double @llvm.fmuladd.f64(double %62, double %65, double %68)
  %70 = fadd double %66, %69
  %square360 = fmul double %70, %70
  %71 = tail call double @llvm.fmuladd.f64(double %square, double %square359, double %square360)
  %72 = fmul double %58, -4.000000e+00
  %73 = fmul double %72, %square359
  %74 = tail call double @llvm.fmuladd.f64(double %58, double %58, double %73)
  %75 = tail call double @llvm.fmuladd.f64(double %58, double 2.000000e+00, double %74)
  %76 = fadd double %75, 1.000000e+00
  %77 = fadd double %58, -1.000000e+00
  %78 = fmul double %77, %70
  %79 = fmul double %square, 5.000000e-01
  %80 = load double, ptr %2, align 8, !tbaa !5
  %81 = fmul double %80, 2.000000e+00
  %82 = tail call double @sin(double noundef %81) #4
  %83 = fmul double %79, %82
  %84 = tail call double @llvm.fmuladd.f64(double %78, double %60, double %83)
  %85 = fneg double %84
  %86 = fmul double %84, %85
  %87 = tail call double @llvm.fmuladd.f64(double %71, double %76, double %86)
  %88 = tail call double @sqrt(double noundef %87) #4
  %89 = fdiv double %57, %88
  %90 = load double, ptr %1, align 8, !tbaa !5
  %91 = load double, ptr %7, align 8, !tbaa !9
  %92 = fdiv double %90, %91
  %93 = fmul double %92, 4.505600e+00
  %94 = tail call double @llvm.fmuladd.f64(double %92, double 0x402CE38E38E38E20, double 0xC02638E38E38E388)
  %95 = tail call double @atan(double noundef %94) #4
  %96 = tail call double @llvm.fmuladd.f64(double %95, double 0xBFD64CB5F7148405, double 0x3FDCFD52F4677872)
  %97 = fmul double %93, %96
  %98 = load double, ptr %1, align 8, !tbaa !5
  %99 = load double, ptr %7, align 8, !tbaa !9
  %100 = fdiv double %98, %99
  %101 = fadd double %100, -1.000000e+00
  %102 = tail call double @pow(double noundef %101, double noundef 6.000000e+00) #4
  %103 = fmul double %97, %102
  %104 = load double, ptr %42, align 8, !tbaa !13
  %105 = fadd double %104, -1.000000e+00
  %106 = load double, ptr %31, align 8, !tbaa !12
  %107 = fmul double %106, -2.000000e+00
  %108 = load double, ptr %1, align 8, !tbaa !5
  %109 = load double, ptr %7, align 8, !tbaa !9
  %110 = fdiv double %108, %109
  %111 = load double, ptr %4, align 8, !tbaa !5
  %112 = fneg double %104
  %113 = fmul double %111, %112
  %114 = tail call double @llvm.fmuladd.f64(double %107, double %110, double %113)
  %115 = fadd double %111, %114
  %116 = fmul double %105, %115
  %117 = load double, ptr %3, align 8, !tbaa !5
  %118 = fadd double %104, 1.000000e+00
  %square364 = fmul double %118, %118
  %119 = fmul double %square364, 5.000000e-01
  %120 = load double, ptr %2, align 8, !tbaa !5
  %121 = fmul double %120, 2.000000e+00
  %122 = tail call double @sin(double noundef %121) #4
  %123 = fmul double %119, %122
  %124 = tail call double @llvm.fmuladd.f64(double %116, double %117, double %123)
  %125 = fmul double %103, %124
  %126 = load double, ptr %31, align 8, !tbaa !12
  %127 = fmul double %126, -2.000000e+00
  %128 = load double, ptr %42, align 8, !tbaa !13
  %129 = fadd double %128, -1.000000e+00
  %130 = fmul double %127, %129
  %131 = load double, ptr %1, align 8, !tbaa !5
  %132 = load double, ptr %7, align 8, !tbaa !9
  %133 = fdiv double %131, %132
  %134 = load double, ptr %4, align 8, !tbaa !5
  %135 = fneg double %128
  %136 = fmul double %134, %135
  %137 = tail call double @llvm.fmuladd.f64(double %127, double %133, double %136)
  %138 = fadd double %134, %137
  %139 = fmul double %129, %138
  %140 = load double, ptr %3, align 8, !tbaa !5
  %141 = fadd double %128, 1.000000e+00
  %square365 = fmul double %141, %141
  %142 = fmul double %square365, 5.000000e-01
  %143 = load double, ptr %2, align 8, !tbaa !5
  %144 = fmul double %143, 2.000000e+00
  %145 = tail call double @sin(double noundef %144) #4
  %146 = fmul double %142, %145
  %147 = tail call double @llvm.fmuladd.f64(double %139, double %140, double %146)
  %148 = fmul double %130, %147
  %149 = load double, ptr %3, align 8, !tbaa !5
  %150 = load double, ptr %31, align 8, !tbaa !12
  %151 = fmul double %150, 2.000000e+00
  %152 = fmul double %150, -2.000000e+00
  %153 = load double, ptr %1, align 8, !tbaa !5
  %154 = load double, ptr %7, align 8, !tbaa !9
  %155 = fdiv double %153, %154
  %156 = load double, ptr %42, align 8, !tbaa !13
  %157 = load double, ptr %4, align 8, !tbaa !5
  %158 = fneg double %156
  %159 = fmul double %157, %158
  %160 = tail call double @llvm.fmuladd.f64(double %152, double %155, double %159)
  %161 = fadd double %157, %160
  %162 = fmul double %151, %161
  %square366 = fmul double %149, %149
  %163 = fmul double %156, -4.000000e+00
  %164 = fmul double %square366, %163
  %165 = tail call double @llvm.fmuladd.f64(double %156, double %156, double %164)
  %166 = tail call double @llvm.fmuladd.f64(double %156, double 2.000000e+00, double %165)
  %167 = fadd double %166, 1.000000e+00
  %168 = fmul double %162, %167
  %169 = tail call double @llvm.fmuladd.f64(double %148, double %149, double %168)
  %170 = fmul double %125, %169
  %171 = load double, ptr %2, align 8, !tbaa !5
  %172 = fmul double %171, 1.100000e+01
  %173 = tail call double @sin(double noundef %172) #4
  %174 = fmul double %173, %170
  %175 = load double, ptr %42, align 8, !tbaa !13
  %176 = fadd double %175, 1.000000e+00
  %square367 = fmul double %176, %176
  %177 = load double, ptr %3, align 8, !tbaa !5
  %square368 = fmul double %177, %177
  %178 = load double, ptr %31, align 8, !tbaa !12
  %179 = fmul double %178, -2.000000e+00
  %180 = load double, ptr %1, align 8, !tbaa !5
  %181 = load double, ptr %7, align 8, !tbaa !9
  %182 = fdiv double %180, %181
  %183 = load double, ptr %4, align 8, !tbaa !5
  %184 = fneg double %175
  %185 = fmul double %183, %184
  %186 = tail call double @llvm.fmuladd.f64(double %179, double %182, double %185)
  %187 = fadd double %183, %186
  %square369 = fmul double %187, %187
  %188 = tail call double @llvm.fmuladd.f64(double %square367, double %square368, double %square369)
  %189 = fmul double %175, -4.000000e+00
  %190 = fmul double %189, %square368
  %191 = tail call double @llvm.fmuladd.f64(double %175, double %175, double %190)
  %192 = tail call double @llvm.fmuladd.f64(double %175, double 2.000000e+00, double %191)
  %193 = fadd double %192, 1.000000e+00
  %194 = fadd double %175, -1.000000e+00
  %195 = fmul double %194, %187
  %196 = fmul double %square367, 5.000000e-01
  %197 = load double, ptr %2, align 8, !tbaa !5
  %198 = fmul double %197, 2.000000e+00
  %199 = tail call double @sin(double noundef %198) #4
  %200 = fmul double %196, %199
  %201 = tail call double @llvm.fmuladd.f64(double %195, double %177, double %200)
  %202 = fneg double %201
  %203 = fmul double %201, %202
  %204 = tail call double @llvm.fmuladd.f64(double %188, double %193, double %203)
  %205 = tail call double @pow(double noundef %204, double noundef 1.500000e+00) #4
  %206 = fdiv double %174, %205
  %207 = fsub double %206, %89
  %208 = load double, ptr %1, align 8, !tbaa !5
  %209 = load double, ptr %7, align 8, !tbaa !9
  %210 = fdiv double %208, %209
  %211 = fmul double %210, 2.703360e+01
  %212 = tail call double @llvm.fmuladd.f64(double %210, double 0x402CE38E38E38E20, double 0xC02638E38E38E388)
  %213 = tail call double @atan(double noundef %212) #4
  %214 = tail call double @llvm.fmuladd.f64(double %213, double 0xBFD64CB5F7148405, double 0x3FDCFD52F4677872)
  %215 = fmul double %211, %214
  %216 = load double, ptr %1, align 8, !tbaa !5
  %217 = load double, ptr %7, align 8, !tbaa !9
  %218 = fdiv double %216, %217
  %219 = fadd double %218, -1.000000e+00
  %220 = tail call double @pow(double noundef %219, double noundef 5.000000e+00) #4
  %221 = fmul double %215, %220
  %222 = load double, ptr %42, align 8, !tbaa !13
  %223 = fadd double %222, -1.000000e+00
  %224 = load double, ptr %31, align 8, !tbaa !12
  %225 = fmul double %224, -2.000000e+00
  %226 = load double, ptr %1, align 8, !tbaa !5
  %227 = load double, ptr %7, align 8, !tbaa !9
  %228 = fdiv double %226, %227
  %229 = load double, ptr %4, align 8, !tbaa !5
  %230 = fneg double %222
  %231 = fmul double %229, %230
  %232 = tail call double @llvm.fmuladd.f64(double %225, double %228, double %231)
  %233 = fadd double %229, %232
  %234 = fmul double %223, %233
  %235 = load double, ptr %3, align 8, !tbaa !5
  %236 = fadd double %222, 1.000000e+00
  %square373 = fmul double %236, %236
  %237 = fmul double %square373, 5.000000e-01
  %238 = load double, ptr %2, align 8, !tbaa !5
  %239 = fmul double %238, 2.000000e+00
  %240 = tail call double @sin(double noundef %239) #4
  %241 = fmul double %237, %240
  %242 = tail call double @llvm.fmuladd.f64(double %234, double %235, double %241)
  %243 = fmul double %221, %242
  %244 = load double, ptr %2, align 8, !tbaa !5
  %245 = fmul double %244, 1.100000e+01
  %246 = tail call double @sin(double noundef %245) #4
  %247 = fmul double %246, %243
  %248 = load double, ptr %42, align 8, !tbaa !13
  %249 = fadd double %248, 1.000000e+00
  %square374 = fmul double %249, %249
  %250 = load double, ptr %3, align 8, !tbaa !5
  %square375 = fmul double %250, %250
  %251 = load double, ptr %31, align 8, !tbaa !12
  %252 = fmul double %251, -2.000000e+00
  %253 = load double, ptr %1, align 8, !tbaa !5
  %254 = load double, ptr %7, align 8, !tbaa !9
  %255 = fdiv double %253, %254
  %256 = load double, ptr %4, align 8, !tbaa !5
  %257 = fneg double %248
  %258 = fmul double %256, %257
  %259 = tail call double @llvm.fmuladd.f64(double %252, double %255, double %258)
  %260 = fadd double %256, %259
  %square376 = fmul double %260, %260
  %261 = tail call double @llvm.fmuladd.f64(double %square374, double %square375, double %square376)
  %262 = fmul double %248, -4.000000e+00
  %263 = fmul double %262, %square375
  %264 = tail call double @llvm.fmuladd.f64(double %248, double %248, double %263)
  %265 = tail call double @llvm.fmuladd.f64(double %248, double 2.000000e+00, double %264)
  %266 = fadd double %265, 1.000000e+00
  %267 = fadd double %248, -1.000000e+00
  %268 = fmul double %267, %260
  %269 = fmul double %square374, 5.000000e-01
  %270 = load double, ptr %2, align 8, !tbaa !5
  %271 = fmul double %270, 2.000000e+00
  %272 = tail call double @sin(double noundef %271) #4
  %273 = fmul double %269, %272
  %274 = tail call double @llvm.fmuladd.f64(double %268, double %250, double %273)
  %275 = fneg double %274
  %276 = fmul double %274, %275
  %277 = tail call double @llvm.fmuladd.f64(double %261, double %266, double %276)
  %278 = tail call double @sqrt(double noundef %277) #4
  %279 = fdiv double %247, %278
  %280 = fadd double %207, %279
  %281 = load double, ptr %1, align 8, !tbaa !5
  %282 = load double, ptr %7, align 8, !tbaa !9
  %283 = fdiv double %281, %282
  %284 = tail call double @llvm.fmuladd.f64(double %283, double 0x402CE38E38E38E20, double 0xC02638E38E38E388)
  %285 = tail call double @atan(double noundef %284) #4
  %286 = tail call double @llvm.fmuladd.f64(double %285, double 0xBFD64CB5F7148405, double 0x3FDCFD52F4677872)
  %287 = fmul double %283, %286
  %288 = load double, ptr %1, align 8, !tbaa !5
  %289 = load double, ptr %7, align 8, !tbaa !9
  %290 = fdiv double %288, %289
  %291 = fmul double %290, 1.228800e+01
  %292 = fadd double %290, -1.000000e+00
  %293 = tail call double @pow(double noundef %292, double noundef 4.000000e+00) #4
  %294 = fmul double %293, %291
  %295 = load double, ptr %2, align 8, !tbaa !5
  %296 = fmul double %295, 1.100000e+01
  %297 = tail call double @cos(double noundef %296) #4
  %298 = load double, ptr %1, align 8, !tbaa !5
  %299 = load double, ptr %7, align 8, !tbaa !9
  %300 = fdiv double %298, %299
  %301 = fadd double %300, -1.000000e+00
  %302 = tail call double @pow(double noundef %301, double noundef 5.000000e+00) #4
  %303 = fmul double %302, 1.720320e+01
  %304 = load double, ptr %2, align 8, !tbaa !5
  %305 = fmul double %304, 1.100000e+01
  %306 = tail call double @cos(double noundef %305) #4
  %307 = fmul double %303, %306
  %308 = tail call double @llvm.fmuladd.f64(double %294, double %297, double %307)
  %309 = fmul double %287, %308
  %310 = load double, ptr %42, align 8, !tbaa !13
  %311 = load double, ptr %3, align 8, !tbaa !5
  %square380 = fmul double %311, %311
  %312 = fmul double %310, -4.000000e+00
  %313 = fmul double %312, %square380
  %314 = tail call double @llvm.fmuladd.f64(double %310, double %310, double %313)
  %315 = tail call double @llvm.fmuladd.f64(double %310, double 2.000000e+00, double %314)
  %316 = fadd double %315, 1.000000e+00
  %317 = fmul double %309, %316
  %318 = fadd double %310, 1.000000e+00
  %square381 = fmul double %318, %318
  %319 = load double, ptr %31, align 8, !tbaa !12
  %320 = fmul double %319, -2.000000e+00
  %321 = load double, ptr %1, align 8, !tbaa !5
  %322 = load double, ptr %7, align 8, !tbaa !9
  %323 = fdiv double %321, %322
  %324 = load double, ptr %4, align 8, !tbaa !5
  %325 = fneg double %310
  %326 = fmul double %324, %325
  %327 = tail call double @llvm.fmuladd.f64(double %320, double %323, double %326)
  %328 = fadd double %324, %327
  %square383 = fmul double %328, %328
  %329 = tail call double @llvm.fmuladd.f64(double %square381, double %square380, double %square383)
  %330 = fadd double %310, -1.000000e+00
  %331 = fmul double %330, %328
  %332 = fmul double %square381, 5.000000e-01
  %333 = load double, ptr %2, align 8, !tbaa !5
  %334 = fmul double %333, 2.000000e+00
  %335 = tail call double @sin(double noundef %334) #4
  %336 = fmul double %332, %335
  %337 = tail call double @llvm.fmuladd.f64(double %331, double %311, double %336)
  %338 = fneg double %337
  %339 = fmul double %337, %338
  %340 = tail call double @llvm.fmuladd.f64(double %329, double %316, double %339)
  %341 = tail call double @sqrt(double noundef %340) #4
  %342 = fdiv double %317, %341
  %343 = fadd double %280, %342
  %344 = load double, ptr %1, align 8, !tbaa !5
  %345 = load double, ptr %7, align 8, !tbaa !9
  %346 = fdiv double %344, %345
  %347 = tail call double @llvm.fmuladd.f64(double %346, double 0x402CE38E38E38E20, double 0xC02638E38E38E388)
  %348 = tail call double @atan(double noundef %347) #4
  %349 = tail call double @llvm.fmuladd.f64(double %348, double 0xBFD64CB5F7148405, double 0x3FDCFD52F4677872)
  %350 = fmul double %346, %349
  %351 = load double, ptr %1, align 8, !tbaa !5
  %352 = load double, ptr %7, align 8, !tbaa !9
  %353 = fdiv double %351, %352
  %354 = fmul double %353, 2.457600e+00
  %355 = fadd double %353, -1.000000e+00
  %356 = tail call double @pow(double noundef %355, double noundef 5.000000e+00) #4
  %357 = fmul double %356, %354
  %358 = load double, ptr %2, align 8, !tbaa !5
  %359 = fmul double %358, 1.100000e+01
  %360 = tail call double @cos(double noundef %359) #4
  %361 = load double, ptr %1, align 8, !tbaa !5
  %362 = load double, ptr %7, align 8, !tbaa !9
  %363 = fdiv double %361, %362
  %364 = fadd double %363, -1.000000e+00
  %365 = tail call double @pow(double noundef %364, double noundef 6.000000e+00) #4
  %366 = fmul double %365, 2.457600e+00
  %367 = load double, ptr %2, align 8, !tbaa !5
  %368 = fmul double %367, 1.100000e+01
  %369 = tail call double @cos(double noundef %368) #4
  %370 = fmul double %366, %369
  %371 = tail call double @llvm.fmuladd.f64(double %357, double %360, double %370)
  %372 = fmul double %350, %371
  %373 = load double, ptr %31, align 8, !tbaa !12
  %374 = fmul double %373, -2.000000e+00
  %375 = load double, ptr %42, align 8, !tbaa !13
  %376 = fadd double %375, -1.000000e+00
  %377 = fmul double %374, %376
  %378 = load double, ptr %1, align 8, !tbaa !5
  %379 = load double, ptr %7, align 8, !tbaa !9
  %380 = fdiv double %378, %379
  %381 = load double, ptr %4, align 8, !tbaa !5
  %382 = fneg double %375
  %383 = fmul double %381, %382
  %384 = tail call double @llvm.fmuladd.f64(double %374, double %380, double %383)
  %385 = fadd double %381, %384
  %386 = fmul double %376, %385
  %387 = load double, ptr %3, align 8, !tbaa !5
  %388 = fadd double %375, 1.000000e+00
  %square387 = fmul double %388, %388
  %389 = fmul double %square387, 5.000000e-01
  %390 = load double, ptr %2, align 8, !tbaa !5
  %391 = fmul double %390, 2.000000e+00
  %392 = tail call double @sin(double noundef %391) #4
  %393 = fmul double %389, %392
  %394 = tail call double @llvm.fmuladd.f64(double %386, double %387, double %393)
  %395 = fmul double %377, %394
  %396 = load double, ptr %3, align 8, !tbaa !5
  %397 = load double, ptr %31, align 8, !tbaa !12
  %398 = fmul double %397, 2.000000e+00
  %399 = fmul double %397, -2.000000e+00
  %400 = load double, ptr %1, align 8, !tbaa !5
  %401 = load double, ptr %7, align 8, !tbaa !9
  %402 = fdiv double %400, %401
  %403 = load double, ptr %42, align 8, !tbaa !13
  %404 = load double, ptr %4, align 8, !tbaa !5
  %405 = fneg double %403
  %406 = fmul double %404, %405
  %407 = tail call double @llvm.fmuladd.f64(double %399, double %402, double %406)
  %408 = fadd double %404, %407
  %409 = fmul double %398, %408
  %square388 = fmul double %396, %396
  %410 = fmul double %403, -4.000000e+00
  %411 = fmul double %square388, %410
  %412 = tail call double @llvm.fmuladd.f64(double %403, double %403, double %411)
  %413 = tail call double @llvm.fmuladd.f64(double %403, double 2.000000e+00, double %412)
  %414 = fadd double %413, 1.000000e+00
  %415 = fmul double %409, %414
  %416 = tail call double @llvm.fmuladd.f64(double %395, double %396, double %415)
  %417 = fmul double %372, %416
  %418 = fmul double %414, %417
  %419 = fadd double %403, 1.000000e+00
  %square390 = fmul double %419, %419
  %square392 = fmul double %408, %408
  %420 = tail call double @llvm.fmuladd.f64(double %square390, double %square388, double %square392)
  %421 = fadd double %403, -1.000000e+00
  %422 = fmul double %421, %408
  %423 = fmul double %square390, 5.000000e-01
  %424 = load double, ptr %2, align 8, !tbaa !5
  %425 = fmul double %424, 2.000000e+00
  %426 = tail call double @sin(double noundef %425) #4
  %427 = fmul double %423, %426
  %428 = tail call double @llvm.fmuladd.f64(double %422, double %396, double %427)
  %429 = fneg double %428
  %430 = fmul double %428, %429
  %431 = tail call double @llvm.fmuladd.f64(double %420, double %414, double %430)
  %432 = tail call double @pow(double noundef %431, double noundef 1.500000e+00) #4
  %433 = fdiv double %418, %432
  %434 = fadd double %343, %433
  %435 = load double, ptr %1, align 8, !tbaa !5
  %436 = load double, ptr %7, align 8, !tbaa !9
  %437 = fdiv double %435, %436
  %438 = fmul double %437, 0x4036AD1FE4B99CC6
  %439 = fadd double %437, -1.000000e+00
  %440 = tail call double @pow(double noundef %439, double noundef 6.000000e+00) #4
  %441 = load double, ptr %42, align 8, !tbaa !13
  %442 = load double, ptr %31, align 8, !tbaa !12
  %443 = fmul double %442, -2.000000e+00
  %444 = load double, ptr %1, align 8, !tbaa !5
  %445 = load double, ptr %7, align 8, !tbaa !9
  %446 = fdiv double %444, %445
  %447 = load double, ptr %4, align 8, !tbaa !5
  %448 = fneg double %441
  %449 = fmul double %447, %448
  %450 = tail call double @llvm.fmuladd.f64(double %443, double %446, double %449)
  %451 = fadd double %447, %450
  %452 = load double, ptr %3, align 8, !tbaa !5
  %453 = fadd double %441, 1.000000e+00
  %square396 = fmul double %453, %453
  %454 = load double, ptr %2, align 8, !tbaa !5
  %455 = fmul double %454, 2.000000e+00
  %456 = tail call double @sin(double noundef %455) #4
  %457 = load double, ptr %2, align 8, !tbaa !5
  %458 = fmul double %457, 1.100000e+01
  %459 = tail call double @sin(double noundef %458) #4
  %460 = load double, ptr %42, align 8, !tbaa !13
  %461 = fadd double %460, 1.000000e+00
  %square397 = fmul double %461, %461
  %462 = load double, ptr %3, align 8, !tbaa !5
  %square398 = fmul double %462, %462
  %463 = load double, ptr %31, align 8, !tbaa !12
  %464 = fmul double %463, -2.000000e+00
  %465 = load double, ptr %1, align 8, !tbaa !5
  %466 = load double, ptr %7, align 8, !tbaa !9
  %467 = fdiv double %465, %466
  %468 = load double, ptr %4, align 8, !tbaa !5
  %469 = fneg double %460
  %470 = fmul double %468, %469
  %471 = tail call double @llvm.fmuladd.f64(double %464, double %467, double %470)
  %472 = fadd double %468, %471
  %square399 = fmul double %472, %472
  %473 = tail call double @llvm.fmuladd.f64(double %square397, double %square398, double %square399)
  %474 = fmul double %460, -4.000000e+00
  %475 = fmul double %474, %square398
  %476 = tail call double @llvm.fmuladd.f64(double %460, double %460, double %475)
  %477 = tail call double @llvm.fmuladd.f64(double %460, double 2.000000e+00, double %476)
  %478 = fadd double %477, 1.000000e+00
  %479 = fadd double %460, -1.000000e+00
  %480 = fmul double %479, %472
  %481 = fmul double %square397, 5.000000e-01
  %482 = load double, ptr %2, align 8, !tbaa !5
  %483 = fmul double %482, 2.000000e+00
  %484 = tail call double @sin(double noundef %483) #4
  %485 = fmul double %481, %484
  %486 = tail call double @llvm.fmuladd.f64(double %480, double %462, double %485)
  %487 = fneg double %486
  %488 = fmul double %486, %487
  %489 = tail call double @llvm.fmuladd.f64(double %473, double %478, double %488)
  %490 = tail call double @sqrt(double noundef %489) #4
  %491 = load double, ptr %1, align 8, !tbaa !5
  %492 = load double, ptr %7, align 8, !tbaa !9
  %493 = fdiv double %491, %492
  %494 = insertelement <2 x double> <double poison, double 0x401421B27F0EF72B>, double %440, i64 0
  %495 = insertelement <2 x double> poison, double %438, i64 0
  %496 = insertelement <2 x double> %495, double %493, i64 1
  %497 = fmul <2 x double> %494, %496
  %498 = insertelement <2 x double> %496, double %441, i64 0
  %499 = fadd <2 x double> %498, <double -1.000000e+00, double poison>
  %500 = fmul <2 x double> %498, <double poison, double 2.457600e+00>
  %501 = shufflevector <2 x double> %499, <2 x double> %500, <2 x i32> <i32 0, i32 3>
  %502 = fadd double %493, -1.000000e+00
  %503 = tail call double @pow(double noundef %502, double noundef 5.000000e+00) #4
  %504 = insertelement <2 x double> poison, double %451, i64 0
  %505 = insertelement <2 x double> %504, double %503, i64 1
  %506 = fmul <2 x double> %505, %501
  %507 = load double, ptr %2, align 8, !tbaa !5
  %508 = fmul double %507, 1.100000e+01
  %509 = tail call double @cos(double noundef %508) #4
  %510 = load double, ptr %1, align 8, !tbaa !5
  %511 = load double, ptr %7, align 8, !tbaa !9
  %512 = fdiv double %510, %511
  %513 = fadd double %512, -1.000000e+00
  %514 = tail call double @pow(double noundef %513, double noundef 6.000000e+00) #4
  %515 = insertelement <2 x double> poison, double %square396, i64 0
  %516 = insertelement <2 x double> %515, double %514, i64 1
  %517 = fmul <2 x double> %516, <double 5.000000e-01, double 2.457600e+00>
  %518 = load double, ptr %2, align 8, !tbaa !5
  %519 = fmul double %518, 1.100000e+01
  %520 = tail call double @cos(double noundef %519) #4
  %521 = insertelement <2 x double> poison, double %456, i64 0
  %522 = insertelement <2 x double> %521, double %520, i64 1
  %523 = fmul <2 x double> %517, %522
  %524 = insertelement <2 x double> poison, double %452, i64 0
  %525 = insertelement <2 x double> %524, double %509, i64 1
  %526 = tail call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %506, <2 x double> %525, <2 x double> %523)
  %527 = fmul <2 x double> %497, %526
  %528 = load double, ptr %42, align 8, !tbaa !13
  %529 = load double, ptr %3, align 8, !tbaa !5
  %square404 = fmul double %529, %529
  %530 = fmul double %528, -4.000000e+00
  %531 = fmul double %530, %square404
  %532 = tail call double @llvm.fmuladd.f64(double %528, double %528, double %531)
  %533 = tail call double @llvm.fmuladd.f64(double %528, double 2.000000e+00, double %532)
  %534 = fadd double %533, 1.000000e+00
  %535 = insertelement <2 x double> poison, double %459, i64 0
  %536 = insertelement <2 x double> %535, double %534, i64 1
  %537 = fmul <2 x double> %536, %527
  %538 = fadd double %528, 1.000000e+00
  %square405 = fmul double %538, %538
  %539 = load double, ptr %31, align 8, !tbaa !12
  %540 = fmul double %539, -2.000000e+00
  %541 = load double, ptr %1, align 8, !tbaa !5
  %542 = load double, ptr %7, align 8, !tbaa !9
  %543 = fdiv double %541, %542
  %544 = load double, ptr %4, align 8, !tbaa !5
  %545 = fneg double %528
  %546 = fmul double %544, %545
  %547 = tail call double @llvm.fmuladd.f64(double %540, double %543, double %546)
  %548 = fadd double %544, %547
  %square407 = fmul double %548, %548
  %549 = tail call double @llvm.fmuladd.f64(double %square405, double %square404, double %square407)
  %550 = fadd double %528, -1.000000e+00
  %551 = fmul double %550, %548
  %552 = fmul double %square405, 5.000000e-01
  %553 = load double, ptr %2, align 8, !tbaa !5
  %554 = fmul double %553, 2.000000e+00
  %555 = tail call double @sin(double noundef %554) #4
  %556 = fmul double %552, %555
  %557 = tail call double @llvm.fmuladd.f64(double %551, double %529, double %556)
  %558 = fneg double %557
  %559 = fmul double %557, %558
  %560 = tail call double @llvm.fmuladd.f64(double %549, double %534, double %559)
  %561 = tail call double @sqrt(double noundef %560) #4
  %562 = load double, ptr %1, align 8, !tbaa !5
  %563 = load double, ptr %7, align 8, !tbaa !9
  %564 = fdiv double %562, %563
  %565 = insertelement <2 x double> poison, double %493, i64 0
  %566 = insertelement <2 x double> %565, double %564, i64 1
  %567 = fadd <2 x double> %566, <double 0xBFE89D89D89D89D7, double 0xBFE89D89D89D89D7>
  %568 = fmul <2 x double> %567, %567
  %569 = tail call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %568, <2 x double> <double 0x406A148B0FCD6E9F, double 0x406A148B0FCD6E9F>, <2 x double> <double 1.000000e+00, double 1.000000e+00>)
  %570 = insertelement <2 x double> poison, double %490, i64 0
  %571 = insertelement <2 x double> %570, double %561, i64 1
  %572 = fmul <2 x double> %571, %569
  %573 = fdiv <2 x double> %537, %572
  %574 = extractelement <2 x double> %573, i64 0
  %575 = fsub double %434, %574
  %576 = extractelement <2 x double> %573, i64 1
  %577 = fsub double %575, %576
  %578 = tail call double @llvm.fmuladd.f64(double %564, double 0x402CE38E38E38E20, double 0xC02638E38E38E388)
  %579 = tail call double @atan(double noundef %578) #4
  %580 = tail call double @llvm.fmuladd.f64(double %579, double 0xBFD64CB5F7148405, double 0x3FDCFD52F4677872)
  %581 = load double, ptr %1, align 8, !tbaa !5
  %582 = load double, ptr %7, align 8, !tbaa !9
  %583 = fdiv double %581, %582
  %584 = fadd double %583, -1.000000e+00
  %585 = tail call double @pow(double noundef %584, double noundef 6.000000e+00) #4
  %586 = load double, ptr %42, align 8, !tbaa !13
  %587 = fadd double %586, 1.000000e+00
  %588 = load double, ptr %3, align 8, !tbaa !5
  %square413 = fmul double %588, %588
  %589 = load double, ptr %31, align 8, !tbaa !12
  %590 = fmul double %589, -2.000000e+00
  %591 = load double, ptr %1, align 8, !tbaa !5
  %592 = load double, ptr %7, align 8, !tbaa !9
  %593 = fdiv double %591, %592
  %594 = load double, ptr %4, align 8, !tbaa !5
  %595 = fneg double %586
  %596 = fmul double %594, %595
  %597 = tail call double @llvm.fmuladd.f64(double %590, double %593, double %596)
  %598 = fadd double %594, %597
  %square414 = fmul double %598, %598
  %599 = load double, ptr %2, align 8, !tbaa !5
  %600 = fmul double %599, 1.100000e+01
  %601 = tail call double @cos(double noundef %600) #4
  %602 = load double, ptr %42, align 8, !tbaa !13
  %603 = fadd double %602, 1.000000e+00
  %square415 = fmul double %603, %603
  %604 = load double, ptr %3, align 8, !tbaa !5
  %square416 = fmul double %604, %604
  %605 = load double, ptr %31, align 8, !tbaa !12
  %606 = fmul double %605, -2.000000e+00
  %607 = load double, ptr %1, align 8, !tbaa !5
  %608 = load double, ptr %7, align 8, !tbaa !9
  %609 = fdiv double %607, %608
  %610 = load double, ptr %4, align 8, !tbaa !5
  %611 = fneg double %602
  %612 = fmul double %610, %611
  %613 = tail call double @llvm.fmuladd.f64(double %606, double %609, double %612)
  %614 = fadd double %610, %613
  %square417 = fmul double %614, %614
  %615 = tail call double @llvm.fmuladd.f64(double %square415, double %square416, double %square417)
  %616 = fmul double %602, -4.000000e+00
  %617 = fmul double %616, %square416
  %618 = tail call double @llvm.fmuladd.f64(double %602, double %602, double %617)
  %619 = tail call double @llvm.fmuladd.f64(double %602, double 2.000000e+00, double %618)
  %620 = fadd double %619, 1.000000e+00
  %621 = fadd double %602, -1.000000e+00
  %622 = fmul double %621, %614
  %623 = fmul double %square415, 5.000000e-01
  %624 = load double, ptr %2, align 8, !tbaa !5
  %625 = fmul double %624, 2.000000e+00
  %626 = tail call double @sin(double noundef %625) #4
  %627 = fmul double %623, %626
  %628 = tail call double @llvm.fmuladd.f64(double %622, double %604, double %627)
  %629 = fneg double %628
  %630 = fmul double %628, %629
  %631 = tail call double @llvm.fmuladd.f64(double %615, double %620, double %630)
  %632 = tail call double @sqrt(double noundef %631) #4
  %633 = load double, ptr %1, align 8, !tbaa !5
  %634 = load double, ptr %7, align 8, !tbaa !9
  %635 = fdiv double %633, %634
  %636 = tail call double @llvm.fmuladd.f64(double %635, double 0x402CE38E38E38E20, double 0xC02638E38E38E388)
  %637 = tail call double @atan(double noundef %636) #4
  %638 = tail call double @llvm.fmuladd.f64(double %637, double 0xBFD64CB5F7148405, double 0x3FDCFD52F4677872)
  %639 = fmul double %638, 4.505600e+00
  %640 = load double, ptr %1, align 8, !tbaa !5
  %641 = load double, ptr %7, align 8, !tbaa !9
  %642 = fdiv double %640, %641
  %643 = fadd double %642, -1.000000e+00
  %644 = tail call double @pow(double noundef %643, double noundef 6.000000e+00) #4
  %645 = load double, ptr %42, align 8, !tbaa !13
  %646 = fadd double %645, 1.000000e+00
  %square421 = fmul double %646, %646
  %647 = load double, ptr %3, align 8, !tbaa !5
  %square422 = fmul double %647, %647
  %648 = load double, ptr %31, align 8, !tbaa !12
  %649 = fmul double %648, -2.000000e+00
  %650 = load double, ptr %1, align 8, !tbaa !5
  %651 = load double, ptr %7, align 8, !tbaa !9
  %652 = fdiv double %650, %651
  %653 = load double, ptr %4, align 8, !tbaa !5
  %654 = fneg double %645
  %655 = fmul double %653, %654
  %656 = tail call double @llvm.fmuladd.f64(double %649, double %652, double %655)
  %657 = fadd double %653, %656
  %square423 = fmul double %657, %657
  %658 = tail call double @llvm.fmuladd.f64(double %square421, double %square422, double %square423)
  %659 = fmul double %645, 4.000000e+00
  %660 = fmul double %659, %658
  %661 = fmul double %647, %660
  %662 = load double, ptr %2, align 8, !tbaa !5
  %663 = fmul double %662, 2.000000e+00
  %664 = tail call double @sin(double noundef %663) #4
  %665 = load double, ptr %42, align 8, !tbaa !13
  %666 = tail call double @llvm.fmuladd.f64(double %665, double 2.000000e+00, double -2.000000e+00)
  %667 = load double, ptr %31, align 8, !tbaa !12
  %668 = fmul double %667, -2.000000e+00
  %669 = load double, ptr %1, align 8, !tbaa !5
  %670 = load double, ptr %7, align 8, !tbaa !9
  %671 = fdiv double %669, %670
  %672 = load double, ptr %4, align 8, !tbaa !5
  %673 = fneg double %665
  %674 = fmul double %672, %673
  %675 = tail call double @llvm.fmuladd.f64(double %668, double %671, double %674)
  %676 = fadd double %672, %675
  %677 = fmul double %666, %676
  %678 = load double, ptr %3, align 8, !tbaa !5
  %679 = fmul double %678, %677
  %680 = tail call double @llvm.fmuladd.f64(double %square421, double %664, double %679)
  %square428 = fmul double %678, %678
  %681 = fmul double %665, -4.000000e+00
  %682 = fmul double %681, %square428
  %683 = tail call double @llvm.fmuladd.f64(double %665, double %665, double %682)
  %684 = tail call double @llvm.fmuladd.f64(double %665, double 2.000000e+00, double %683)
  %685 = fadd double %684, 1.000000e+00
  %686 = fmul double %680, -5.000000e-01
  %687 = fmul double %685, %686
  %688 = tail call double @llvm.fmuladd.f64(double %661, double %653, double %687)
  %689 = fadd double %665, -1.000000e+00
  %690 = fmul double %689, %676
  %691 = fadd double %665, 1.000000e+00
  %square429 = fmul double %691, %691
  %692 = fmul double %square429, 5.000000e-01
  %693 = load double, ptr %2, align 8, !tbaa !5
  %694 = fmul double %693, 2.000000e+00
  %695 = tail call double @sin(double noundef %694) #4
  %696 = fmul double %692, %695
  %697 = tail call double @llvm.fmuladd.f64(double %690, double %678, double %696)
  %698 = load double, ptr %42, align 8, !tbaa !13
  %699 = fadd double %698, -1.000000e+00
  %square430 = fmul double %699, %699
  %700 = fmul double %square430, 2.000000e+00
  %701 = load double, ptr %3, align 8, !tbaa !5
  %square431 = fmul double %701, %701
  %702 = fmul double %699, 2.000000e+00
  %703 = load double, ptr %31, align 8, !tbaa !12
  %704 = fmul double %703, -2.000000e+00
  %705 = load double, ptr %1, align 8, !tbaa !5
  %706 = load double, ptr %7, align 8, !tbaa !9
  %707 = fdiv double %705, %706
  %708 = load double, ptr %4, align 8, !tbaa !5
  %709 = fneg double %698
  %710 = fmul double %708, %709
  %711 = tail call double @llvm.fmuladd.f64(double %704, double %707, double %710)
  %712 = fadd double %708, %711
  %713 = fmul double %702, %712
  %714 = fmul double %708, %713
  %715 = tail call double @llvm.fmuladd.f64(double %700, double %square431, double %714)
  %716 = fadd double %698, 1.000000e+00
  %square432 = fmul double %716, %716
  %717 = fmul double %square432, 2.000000e+00
  %718 = load double, ptr %2, align 8, !tbaa !5
  %719 = fmul double %718, 2.000000e+00
  %720 = tail call double @cos(double noundef %719) #4
  %721 = tail call double @llvm.fmuladd.f64(double %717, double %720, double %715)
  %722 = load double, ptr %2, align 8, !tbaa !5
  %723 = fmul double %722, 1.100000e+01
  %724 = tail call double @sin(double noundef %723) #4
  %725 = load double, ptr %42, align 8, !tbaa !13
  %726 = fadd double %725, 1.000000e+00
  %square433 = fmul double %726, %726
  %727 = load double, ptr %3, align 8, !tbaa !5
  %square434 = fmul double %727, %727
  %728 = load double, ptr %31, align 8, !tbaa !12
  %729 = fmul double %728, -2.000000e+00
  %730 = load double, ptr %1, align 8, !tbaa !5
  %731 = load double, ptr %7, align 8, !tbaa !9
  %732 = fdiv double %730, %731
  %733 = load double, ptr %4, align 8, !tbaa !5
  %734 = fneg double %725
  %735 = fmul double %733, %734
  %736 = tail call double @llvm.fmuladd.f64(double %729, double %732, double %735)
  %737 = fadd double %733, %736
  %square435 = fmul double %737, %737
  %738 = tail call double @llvm.fmuladd.f64(double %square433, double %square434, double %square435)
  %739 = fmul double %725, -4.000000e+00
  %740 = fmul double %739, %square434
  %741 = tail call double @llvm.fmuladd.f64(double %725, double %725, double %740)
  %742 = tail call double @llvm.fmuladd.f64(double %725, double 2.000000e+00, double %741)
  %743 = fadd double %742, 1.000000e+00
  %744 = fadd double %725, -1.000000e+00
  %745 = fmul double %744, %737
  %746 = fmul double %square433, 5.000000e-01
  %747 = load double, ptr %2, align 8, !tbaa !5
  %748 = fmul double %747, 2.000000e+00
  %749 = tail call double @sin(double noundef %748) #4
  %750 = fmul double %746, %749
  %751 = tail call double @llvm.fmuladd.f64(double %745, double %727, double %750)
  %752 = fneg double %751
  %753 = fmul double %751, %752
  %754 = tail call double @llvm.fmuladd.f64(double %738, double %743, double %753)
  %755 = tail call double @pow(double noundef %754, double noundef 1.500000e+00) #4
  %756 = insertelement <2 x double> poison, double %580, i64 0
  %757 = insertelement <2 x double> %756, double %639, i64 1
  %758 = insertelement <2 x double> <double 4.956160e+01, double poison>, double %644, i64 1
  %759 = fmul <2 x double> %757, %758
  %760 = insertelement <2 x double> poison, double %585, i64 0
  %761 = insertelement <2 x double> %760, double %658, i64 1
  %762 = fmul <2 x double> %759, %761
  %763 = insertelement <2 x double> poison, double %587, i64 0
  %764 = insertelement <2 x double> %763, double %697, i64 1
  %765 = insertelement <2 x double> %764, double 5.000000e-01, i64 1
  %766 = fmul <2 x double> %764, %765
  %767 = insertelement <2 x double> poison, double %square413, i64 0
  %768 = insertelement <2 x double> %767, double %721, i64 1
  %769 = insertelement <2 x double> poison, double %square414, i64 0
  %770 = insertelement <2 x double> %769, double %688, i64 1
  %771 = tail call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %766, <2 x double> %768, <2 x double> %770)
  %772 = fmul <2 x double> %762, %771
  %773 = insertelement <2 x double> poison, double %601, i64 0
  %774 = insertelement <2 x double> %773, double %724, i64 1
  %775 = fmul <2 x double> %774, %772
  %776 = insertelement <2 x double> poison, double %632, i64 0
  %777 = insertelement <2 x double> %776, double %755, i64 1
  %778 = fdiv <2 x double> %775, %777
  %779 = extractelement <2 x double> %778, i64 0
  %780 = fsub double %577, %779
  %781 = extractelement <2 x double> %778, i64 1
  %782 = fsub double %780, %781
  %783 = load double, ptr %1, align 8, !tbaa !5
  %784 = load double, ptr %7, align 8, !tbaa !9
  %785 = fdiv double %783, %784
  %786 = tail call double @llvm.fmuladd.f64(double %785, double 0x402CE38E38E38E20, double 0xC02638E38E38E388)
  %787 = tail call double @atan(double noundef %786) #4
  %788 = load double, ptr %1, align 8, !tbaa !5
  %789 = load double, ptr %7, align 8, !tbaa !9
  %790 = fdiv double %788, %789
  %791 = fadd double %790, -1.000000e+00
  %792 = tail call double @pow(double noundef %791, double noundef 6.000000e+00) #4
  %793 = load <2 x double>, ptr %42, align 8
  %794 = load double, ptr %2, align 8, !tbaa !5
  %795 = fmul double %794, 2.000000e+00
  %796 = tail call double @sin(double noundef %795) #4
  %797 = load double, ptr %42, align 8, !tbaa !13
  %798 = tail call double @llvm.fmuladd.f64(double %797, double 2.000000e+00, double -2.000000e+00)
  %799 = load double, ptr %31, align 8, !tbaa !12
  %800 = fmul double %799, -2.000000e+00
  %801 = load double, ptr %1, align 8, !tbaa !5
  %802 = load double, ptr %7, align 8, !tbaa !9
  %803 = fdiv double %801, %802
  %804 = load double, ptr %4, align 8, !tbaa !5
  %805 = fneg double %797
  %806 = fmul double %804, %805
  %807 = tail call double @llvm.fmuladd.f64(double %800, double %803, double %806)
  %808 = fadd double %804, %807
  %809 = load double, ptr %3, align 8, !tbaa !5
  %810 = load double, ptr %2, align 8, !tbaa !5
  %811 = fmul double %810, 1.100000e+01
  %812 = tail call double @sin(double noundef %811) #4
  %813 = load double, ptr %42, align 8, !tbaa !13
  %814 = fadd double %813, 1.000000e+00
  %square440 = fmul double %814, %814
  %815 = load double, ptr %3, align 8, !tbaa !5
  %square441 = fmul double %815, %815
  %816 = load double, ptr %31, align 8, !tbaa !12
  %817 = fmul double %816, -2.000000e+00
  %818 = load double, ptr %1, align 8, !tbaa !5
  %819 = load double, ptr %7, align 8, !tbaa !9
  %820 = fdiv double %818, %819
  %821 = load double, ptr %4, align 8, !tbaa !5
  %822 = fneg double %813
  %823 = fmul double %821, %822
  %824 = tail call double @llvm.fmuladd.f64(double %817, double %820, double %823)
  %825 = fadd double %821, %824
  %square442 = fmul double %825, %825
  %826 = tail call double @llvm.fmuladd.f64(double %square440, double %square441, double %square442)
  %827 = fmul double %813, -4.000000e+00
  %828 = fmul double %827, %square441
  %829 = tail call double @llvm.fmuladd.f64(double %813, double %813, double %828)
  %830 = tail call double @llvm.fmuladd.f64(double %813, double 2.000000e+00, double %829)
  %831 = fadd double %830, 1.000000e+00
  %832 = fadd double %813, -1.000000e+00
  %833 = fmul double %832, %825
  %834 = fmul double %square440, 5.000000e-01
  %835 = load double, ptr %2, align 8, !tbaa !5
  %836 = fmul double %835, 2.000000e+00
  %837 = tail call double @sin(double noundef %836) #4
  %838 = fmul double %834, %837
  %839 = tail call double @llvm.fmuladd.f64(double %833, double %815, double %838)
  %840 = fneg double %839
  %841 = fmul double %839, %840
  %842 = tail call double @llvm.fmuladd.f64(double %826, double %831, double %841)
  %843 = tail call double @sqrt(double noundef %842) #4
  %844 = load double, ptr %1, align 8, !tbaa !5
  %845 = load double, ptr %7, align 8, !tbaa !9
  %846 = fdiv double %844, %845
  %847 = tail call double @llvm.fmuladd.f64(double %846, double 0x402CE38E38E38E20, double 0xC02638E38E38E388)
  %848 = tail call double @atan(double noundef %847) #4
  %849 = load double, ptr %1, align 8, !tbaa !5
  %850 = load double, ptr %7, align 8, !tbaa !9
  %851 = fdiv double %849, %850
  %852 = fadd double %851, -1.000000e+00
  %853 = tail call double @pow(double noundef %852, double noundef 6.000000e+00) #4
  %854 = load double, ptr %42, align 8, !tbaa !13
  %855 = load double, ptr %31, align 8, !tbaa !12
  %856 = fmul double %855, -2.000000e+00
  %857 = load double, ptr %1, align 8, !tbaa !5
  %858 = load double, ptr %7, align 8, !tbaa !9
  %859 = fdiv double %857, %858
  %860 = load double, ptr %4, align 8, !tbaa !5
  %861 = fneg double %854
  %862 = fmul double %860, %861
  %863 = tail call double @llvm.fmuladd.f64(double %856, double %859, double %862)
  %864 = fadd double %860, %863
  %865 = load double, ptr %3, align 8, !tbaa !5
  %866 = fadd double %854, 1.000000e+00
  %square446 = fmul double %866, %866
  %867 = load double, ptr %2, align 8, !tbaa !5
  %868 = fmul double %867, 2.000000e+00
  %869 = tail call double @sin(double noundef %868) #4
  %870 = load double, ptr %2, align 8, !tbaa !5
  %871 = fmul double %870, 1.100000e+01
  %872 = tail call double @sin(double noundef %871) #4
  %873 = load double, ptr %42, align 8, !tbaa !13
  %874 = fadd double %873, 1.000000e+00
  %square447 = fmul double %874, %874
  %875 = load double, ptr %3, align 8, !tbaa !5
  %square448 = fmul double %875, %875
  %876 = load double, ptr %31, align 8, !tbaa !12
  %877 = fmul double %876, -2.000000e+00
  %878 = load double, ptr %1, align 8, !tbaa !5
  %879 = load double, ptr %7, align 8, !tbaa !9
  %880 = fdiv double %878, %879
  %881 = load double, ptr %4, align 8, !tbaa !5
  %882 = fneg double %873
  %883 = fmul double %881, %882
  %884 = tail call double @llvm.fmuladd.f64(double %877, double %880, double %883)
  %885 = fadd double %881, %884
  %square449 = fmul double %885, %885
  %886 = tail call double @llvm.fmuladd.f64(double %square447, double %square448, double %square449)
  %887 = fmul double %873, -4.000000e+00
  %888 = fmul double %887, %square448
  %889 = tail call double @llvm.fmuladd.f64(double %873, double %873, double %888)
  %890 = tail call double @llvm.fmuladd.f64(double %873, double 2.000000e+00, double %889)
  %891 = fadd double %890, 1.000000e+00
  %892 = fadd double %873, -1.000000e+00
  %893 = fmul double %892, %885
  %894 = fmul double %square447, 5.000000e-01
  %895 = load double, ptr %2, align 8, !tbaa !5
  %896 = fmul double %895, 2.000000e+00
  %897 = tail call double @sin(double noundef %896) #4
  %898 = fmul double %894, %897
  %899 = tail call double @llvm.fmuladd.f64(double %893, double %875, double %898)
  %900 = fneg double %899
  %901 = fmul double %899, %900
  %902 = tail call double @llvm.fmuladd.f64(double %886, double %891, double %901)
  %903 = tail call double @sqrt(double noundef %902) #4
  %904 = insertelement <2 x double> poison, double %787, i64 0
  %905 = insertelement <2 x double> %904, double %848, i64 1
  %906 = tail call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %905, <2 x double> <double 0xBFD64CB5F7148405, double 0xBFD64CB5F7148405>, <2 x double> <double 0x3FDCFD52F4677872, double 0x3FDCFD52F4677872>)
  %907 = fmul <2 x double> %906, <double 4.505600e+00, double 2.703360e+01>
  %908 = insertelement <2 x double> poison, double %792, i64 0
  %909 = insertelement <2 x double> %908, double %853, i64 1
  %910 = fmul <2 x double> %907, %909
  %911 = insertelement <2 x double> %793, double %854, i64 1
  %912 = fadd <2 x double> %911, <double 1.000000e+00, double -1.000000e+00>
  %913 = insertelement <2 x double> %912, double %864, i64 1
  %914 = fmul <2 x double> %912, %913
  %915 = insertelement <2 x double> <double poison, double 5.000000e-01>, double %798, i64 0
  %916 = insertelement <2 x double> poison, double %808, i64 0
  %917 = insertelement <2 x double> %916, double %square446, i64 1
  %918 = fmul <2 x double> %915, %917
  %919 = insertelement <2 x double> poison, double %809, i64 0
  %920 = insertelement <2 x double> %919, double %869, i64 1
  %921 = fmul <2 x double> %920, %918
  %922 = insertelement <2 x double> poison, double %796, i64 0
  %923 = insertelement <2 x double> %922, double %865, i64 1
  %924 = tail call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %914, <2 x double> %923, <2 x double> %921)
  %925 = fmul <2 x double> %910, %924
  %926 = insertelement <2 x double> poison, double %812, i64 0
  %927 = insertelement <2 x double> %926, double %872, i64 1
  %928 = fmul <2 x double> %927, %925
  %929 = insertelement <2 x double> poison, double %843, i64 0
  %930 = insertelement <2 x double> %929, double %903, i64 1
  %931 = fdiv <2 x double> %928, %930
  %932 = extractelement <2 x double> %931, i64 0
  %933 = fsub double %782, %932
  %934 = extractelement <2 x double> %931, i64 1
  %935 = fadd double %933, %934
  %936 = load double, ptr %1, align 8, !tbaa !5
  %937 = load double, ptr %7, align 8, !tbaa !9
  %938 = fdiv double %936, %937
  %939 = tail call double @llvm.fmuladd.f64(double %938, double 0x402CE38E38E38E20, double 0xC02638E38E38E388)
  %940 = tail call double @atan(double noundef %939) #4
  %941 = load double, ptr %1, align 8, !tbaa !5
  %942 = load double, ptr %7, align 8, !tbaa !9
  %943 = fdiv double %941, %942
  %944 = fadd double %943, -1.000000e+00
  %945 = tail call double @pow(double noundef %944, double noundef 5.000000e+00) #4
  %946 = load double, ptr %2, align 8, !tbaa !5
  %947 = fmul double %946, 1.100000e+01
  %948 = tail call double @sin(double noundef %947) #4
  %949 = load double, ptr %1, align 8, !tbaa !5
  %950 = load double, ptr %7, align 8, !tbaa !9
  %951 = fdiv double %949, %950
  %952 = fadd double %951, -1.000000e+00
  %953 = tail call double @pow(double noundef %952, double noundef 6.000000e+00) #4
  %954 = load double, ptr %2, align 8, !tbaa !5
  %955 = fmul double %954, 1.100000e+01
  %956 = tail call double @sin(double noundef %955) #4
  %957 = load double, ptr %42, align 8, !tbaa !13
  %958 = load double, ptr %31, align 8, !tbaa !12
  %959 = fmul double %958, -2.000000e+00
  %960 = load double, ptr %1, align 8, !tbaa !5
  %961 = load double, ptr %7, align 8, !tbaa !9
  %962 = fdiv double %960, %961
  %963 = load double, ptr %4, align 8, !tbaa !5
  %964 = fneg double %957
  %965 = fmul double %963, %964
  %966 = tail call double @llvm.fmuladd.f64(double %959, double %962, double %965)
  %967 = fadd double %963, %966
  %968 = load double, ptr %3, align 8, !tbaa !5
  %969 = fadd double %957, 1.000000e+00
  %square453 = fmul double %969, %969
  %970 = fmul double %square453, 5.000000e-01
  %971 = load double, ptr %2, align 8, !tbaa !5
  %972 = fmul double %971, 2.000000e+00
  %973 = tail call double @sin(double noundef %972) #4
  %974 = fmul double %970, %973
  %975 = load double, ptr %42, align 8, !tbaa !13
  %976 = fadd double %975, 1.000000e+00
  %square454 = fmul double %976, %976
  %977 = load double, ptr %3, align 8, !tbaa !5
  %square455 = fmul double %977, %977
  %978 = load double, ptr %31, align 8, !tbaa !12
  %979 = fmul double %978, -2.000000e+00
  %980 = load double, ptr %1, align 8, !tbaa !5
  %981 = load double, ptr %7, align 8, !tbaa !9
  %982 = fdiv double %980, %981
  %983 = load double, ptr %4, align 8, !tbaa !5
  %984 = fneg double %975
  %985 = fmul double %983, %984
  %986 = tail call double @llvm.fmuladd.f64(double %979, double %982, double %985)
  %987 = fadd double %983, %986
  %square456 = fmul double %987, %987
  %988 = tail call double @llvm.fmuladd.f64(double %square454, double %square455, double %square456)
  %989 = fmul double %975, -4.000000e+00
  %990 = fmul double %989, %square455
  %991 = tail call double @llvm.fmuladd.f64(double %975, double %975, double %990)
  %992 = tail call double @llvm.fmuladd.f64(double %975, double 2.000000e+00, double %991)
  %993 = fadd double %992, 1.000000e+00
  %994 = fadd double %975, -1.000000e+00
  %995 = fmul double %994, %987
  %996 = fmul double %square454, 5.000000e-01
  %997 = load double, ptr %2, align 8, !tbaa !5
  %998 = fmul double %997, 2.000000e+00
  %999 = tail call double @sin(double noundef %998) #4
  %1000 = fmul double %996, %999
  %1001 = tail call double @llvm.fmuladd.f64(double %995, double %977, double %1000)
  %1002 = fneg double %1001
  %1003 = fmul double %1001, %1002
  %1004 = tail call double @llvm.fmuladd.f64(double %988, double %993, double %1003)
  %1005 = tail call double @sqrt(double noundef %1004) #4
  %1006 = load double, ptr %1, align 8, !tbaa !5
  %1007 = load double, ptr %7, align 8, !tbaa !9
  %1008 = fdiv double %1006, %1007
  %1009 = tail call double @llvm.fmuladd.f64(double %1008, double 0x402CE38E38E38E20, double 0xC02638E38E38E388)
  %1010 = tail call double @atan(double noundef %1009) #4
  %1011 = insertelement <2 x double> poison, double %940, i64 0
  %1012 = insertelement <2 x double> %1011, double %1010, i64 1
  %1013 = tail call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %1012, <2 x double> <double 0xBFD64CB5F7148405, double 0xBFD64CB5F7148405>, <2 x double> <double 0x3FDCFD52F4677872, double 0x3FDCFD52F4677872>)
  %1014 = load double, ptr %1, align 8, !tbaa !5
  %1015 = load double, ptr %7, align 8, !tbaa !9
  %1016 = fdiv double %1014, %1015
  %1017 = insertelement <2 x double> poison, double %943, i64 0
  %1018 = insertelement <2 x double> %1017, double %1016, i64 1
  %1019 = fmul <2 x double> %1018, <double -2.703360e+01, double 2.457600e+00>
  %1020 = fadd double %1016, -1.000000e+00
  %1021 = tail call double @pow(double noundef %1020, double noundef 5.000000e+00) #4
  %1022 = insertelement <2 x double> poison, double %945, i64 0
  %1023 = insertelement <2 x double> %1022, double %1021, i64 1
  %1024 = fmul <2 x double> %1023, %1019
  %1025 = load double, ptr %2, align 8, !tbaa !5
  %1026 = fmul double %1025, 1.100000e+01
  %1027 = tail call double @cos(double noundef %1026) #4
  %1028 = load double, ptr %1, align 8, !tbaa !5
  %1029 = load double, ptr %7, align 8, !tbaa !9
  %1030 = fdiv double %1028, %1029
  %1031 = fadd double %1030, -1.000000e+00
  %1032 = tail call double @pow(double noundef %1031, double noundef 6.000000e+00) #4
  %1033 = insertelement <2 x double> poison, double %953, i64 0
  %1034 = insertelement <2 x double> %1033, double %1032, i64 1
  %1035 = fmul <2 x double> %1034, <double -2.703360e+01, double 2.457600e+00>
  %1036 = load double, ptr %2, align 8, !tbaa !5
  %1037 = fmul double %1036, 1.100000e+01
  %1038 = tail call double @cos(double noundef %1037) #4
  %1039 = insertelement <2 x double> poison, double %956, i64 0
  %1040 = insertelement <2 x double> %1039, double %1038, i64 1
  %1041 = fmul <2 x double> %1035, %1040
  %1042 = insertelement <2 x double> poison, double %948, i64 0
  %1043 = insertelement <2 x double> %1042, double %1027, i64 1
  %1044 = tail call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %1024, <2 x double> %1043, <2 x double> %1041)
  %1045 = fmul <2 x double> %1013, %1044
  %1046 = load double, ptr %42, align 8, !tbaa !13
  %1047 = fadd double %1046, -1.000000e+00
  %square460 = fmul double %1047, %1047
  %1048 = load double, ptr %3, align 8, !tbaa !5
  %square461 = fmul double %1048, %1048
  %1049 = load double, ptr %31, align 8, !tbaa !12
  %1050 = fmul double %1049, -2.000000e+00
  %1051 = load double, ptr %1, align 8, !tbaa !5
  %1052 = load double, ptr %7, align 8, !tbaa !9
  %1053 = fdiv double %1051, %1052
  %1054 = load double, ptr %4, align 8, !tbaa !5
  %1055 = fneg double %1046
  %1056 = fmul double %1054, %1055
  %1057 = tail call double @llvm.fmuladd.f64(double %1050, double %1053, double %1056)
  %1058 = fadd double %1054, %1057
  %1059 = fmul double %1047, %1058
  %1060 = fmul double %1054, %1059
  %1061 = tail call double @llvm.fmuladd.f64(double %square460, double %square461, double %1060)
  %1062 = insertelement <2 x double> poison, double %957, i64 0
  %1063 = insertelement <2 x double> %1062, double %1046, i64 1
  %1064 = fadd <2 x double> %1063, <double -1.000000e+00, double 1.000000e+00>
  %1065 = insertelement <2 x double> %1064, double %967, i64 0
  %1066 = fmul <2 x double> %1064, %1065
  %1067 = load double, ptr %2, align 8, !tbaa !5
  %1068 = fmul double %1067, 2.000000e+00
  %1069 = tail call double @cos(double noundef %1068) #4
  %1070 = insertelement <2 x double> poison, double %968, i64 0
  %1071 = insertelement <2 x double> %1070, double %1069, i64 1
  %1072 = insertelement <2 x double> poison, double %974, i64 0
  %1073 = insertelement <2 x double> %1072, double %1061, i64 1
  %1074 = tail call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %1066, <2 x double> %1071, <2 x double> %1073)
  %1075 = fmul <2 x double> %1045, %1074
  %1076 = load double, ptr %42, align 8, !tbaa !13
  %1077 = fadd double %1076, 1.000000e+00
  %square463 = fmul double %1077, %1077
  %1078 = load double, ptr %3, align 8, !tbaa !5
  %square464 = fmul double %1078, %1078
  %1079 = load double, ptr %31, align 8, !tbaa !12
  %1080 = fmul double %1079, -2.000000e+00
  %1081 = load double, ptr %1, align 8, !tbaa !5
  %1082 = load double, ptr %7, align 8, !tbaa !9
  %1083 = fdiv double %1081, %1082
  %1084 = load double, ptr %4, align 8, !tbaa !5
  %1085 = fneg double %1076
  %1086 = fmul double %1084, %1085
  %1087 = tail call double @llvm.fmuladd.f64(double %1080, double %1083, double %1086)
  %1088 = fadd double %1084, %1087
  %square465 = fmul double %1088, %1088
  %1089 = tail call double @llvm.fmuladd.f64(double %square463, double %square464, double %square465)
  %1090 = fmul double %1076, -4.000000e+00
  %1091 = fmul double %1090, %square464
  %1092 = tail call double @llvm.fmuladd.f64(double %1076, double %1076, double %1091)
  %1093 = tail call double @llvm.fmuladd.f64(double %1076, double 2.000000e+00, double %1092)
  %1094 = fadd double %1093, 1.000000e+00
  %1095 = fadd double %1076, -1.000000e+00
  %1096 = fmul double %1095, %1088
  %1097 = fmul double %square463, 5.000000e-01
  %1098 = load double, ptr %2, align 8, !tbaa !5
  %1099 = fmul double %1098, 2.000000e+00
  %1100 = tail call double @sin(double noundef %1099) #4
  %1101 = fmul double %1097, %1100
  %1102 = tail call double @llvm.fmuladd.f64(double %1096, double %1078, double %1101)
  %1103 = fneg double %1102
  %1104 = fmul double %1102, %1103
  %1105 = tail call double @llvm.fmuladd.f64(double %1089, double %1094, double %1104)
  %1106 = tail call double @sqrt(double noundef %1105) #4
  %1107 = insertelement <2 x double> poison, double %1005, i64 0
  %1108 = insertelement <2 x double> %1107, double %1106, i64 1
  %1109 = fdiv <2 x double> %1075, %1108
  %1110 = extractelement <2 x double> %1109, i64 0
  %1111 = fsub double %935, %1110
  %1112 = extractelement <2 x double> %1109, i64 1
  %1113 = fsub double %1111, %1112
  %1114 = load double, ptr %1, align 8, !tbaa !5
  %1115 = load double, ptr %7, align 8, !tbaa !9
  %1116 = fdiv double %1114, %1115
  %1117 = tail call double @llvm.fmuladd.f64(double %1116, double 0x402CE38E38E38E20, double 0xC02638E38E38E388)
  %1118 = tail call double @atan(double noundef %1117) #4
  %1119 = load double, ptr %1, align 8, !tbaa !5
  %1120 = load double, ptr %7, align 8, !tbaa !9
  %1121 = fdiv double %1119, %1120
  %1122 = fadd double %1121, -1.000000e+00
  %1123 = tail call double @pow(double noundef %1122, double noundef 5.000000e+00) #4
  %1124 = load double, ptr %2, align 8, !tbaa !5
  %1125 = fmul double %1124, 1.100000e+01
  %1126 = tail call double @cos(double noundef %1125) #4
  %1127 = load double, ptr %1, align 8, !tbaa !5
  %1128 = load double, ptr %7, align 8, !tbaa !9
  %1129 = fdiv double %1127, %1128
  %1130 = fadd double %1129, -1.000000e+00
  %1131 = tail call double @pow(double noundef %1130, double noundef 6.000000e+00) #4
  %1132 = load double, ptr %2, align 8, !tbaa !5
  %1133 = fmul double %1132, 1.100000e+01
  %1134 = tail call double @cos(double noundef %1133) #4
  %1135 = load double, ptr %42, align 8, !tbaa !13
  %1136 = load double, ptr %3, align 8, !tbaa !5
  %square469 = fmul double %1136, %1136
  %1137 = fmul double %1135, -4.000000e+00
  %1138 = fmul double %1137, %square469
  %1139 = tail call double @llvm.fmuladd.f64(double %1135, double %1135, double %1138)
  %1140 = tail call double @llvm.fmuladd.f64(double %1135, double 2.000000e+00, double %1139)
  %1141 = fadd double %1140, 1.000000e+00
  %1142 = fadd double %1135, 1.000000e+00
  %square470 = fmul double %1142, %1142
  %1143 = load double, ptr %31, align 8, !tbaa !12
  %1144 = fmul double %1143, -2.000000e+00
  %1145 = load double, ptr %1, align 8, !tbaa !5
  %1146 = load double, ptr %7, align 8, !tbaa !9
  %1147 = fdiv double %1145, %1146
  %1148 = load double, ptr %4, align 8, !tbaa !5
  %1149 = fneg double %1135
  %1150 = fmul double %1148, %1149
  %1151 = tail call double @llvm.fmuladd.f64(double %1144, double %1147, double %1150)
  %1152 = fadd double %1148, %1151
  %square472 = fmul double %1152, %1152
  %1153 = tail call double @llvm.fmuladd.f64(double %square470, double %square469, double %square472)
  %1154 = fadd double %1135, -1.000000e+00
  %1155 = fmul double %1154, %1152
  %1156 = fmul double %square470, 5.000000e-01
  %1157 = load double, ptr %2, align 8, !tbaa !5
  %1158 = fmul double %1157, 2.000000e+00
  %1159 = tail call double @sin(double noundef %1158) #4
  %1160 = fmul double %1156, %1159
  %1161 = tail call double @llvm.fmuladd.f64(double %1155, double %1136, double %1160)
  %1162 = fneg double %1161
  %1163 = fmul double %1161, %1162
  %1164 = tail call double @llvm.fmuladd.f64(double %1153, double %1141, double %1163)
  %1165 = tail call double @sqrt(double noundef %1164) #4
  %1166 = load double, ptr %1, align 8, !tbaa !5
  %1167 = load double, ptr %7, align 8, !tbaa !9
  %1168 = fdiv double %1166, %1167
  %1169 = tail call double @llvm.fmuladd.f64(double %1168, double 0x402CE38E38E38E20, double 0xC02638E38E38E388)
  %1170 = tail call double @atan(double noundef %1169) #4
  %1171 = load double, ptr %1, align 8, !tbaa !5
  %1172 = load double, ptr %7, align 8, !tbaa !9
  %1173 = fdiv double %1171, %1172
  %1174 = fmul double %1173, 2.457600e+00
  %1175 = fadd double %1173, -1.000000e+00
  %1176 = tail call double @pow(double noundef %1175, double noundef 5.000000e+00) #4
  %1177 = fmul double %1176, %1174
  %1178 = load double, ptr %2, align 8, !tbaa !5
  %1179 = fmul double %1178, 1.100000e+01
  %1180 = tail call double @cos(double noundef %1179) #4
  %1181 = load double, ptr %1, align 8, !tbaa !5
  %1182 = load double, ptr %7, align 8, !tbaa !9
  %1183 = fdiv double %1181, %1182
  %1184 = fadd double %1183, -1.000000e+00
  %1185 = tail call double @pow(double noundef %1184, double noundef 6.000000e+00) #4
  %1186 = fmul double %1185, 2.457600e+00
  %1187 = load double, ptr %2, align 8, !tbaa !5
  %1188 = fmul double %1187, 1.100000e+01
  %1189 = tail call double @cos(double noundef %1188) #4
  %1190 = fmul double %1186, %1189
  %1191 = tail call double @llvm.fmuladd.f64(double %1177, double %1180, double %1190)
  %1192 = load double, ptr %42, align 8, !tbaa !13
  %1193 = load double, ptr %31, align 8, !tbaa !12
  %1194 = fmul double %1193, -2.000000e+00
  %1195 = load double, ptr %1, align 8, !tbaa !5
  %1196 = load double, ptr %7, align 8, !tbaa !9
  %1197 = fdiv double %1195, %1196
  %1198 = load double, ptr %4, align 8, !tbaa !5
  %1199 = fneg double %1192
  %1200 = fmul double %1198, %1199
  %1201 = tail call double @llvm.fmuladd.f64(double %1194, double %1197, double %1200)
  %1202 = fadd double %1198, %1201
  %1203 = load double, ptr %3, align 8, !tbaa !5
  %1204 = fadd double %1192, 1.000000e+00
  %square476 = fmul double %1204, %1204
  %1205 = load double, ptr %2, align 8, !tbaa !5
  %1206 = fmul double %1205, 2.000000e+00
  %1207 = tail call double @sin(double noundef %1206) #4
  %1208 = load double, ptr %42, align 8, !tbaa !13
  %1209 = fmul double %1208, 4.000000e+00
  %1210 = fadd double %1208, 1.000000e+00
  %square477 = fmul double %1210, %1210
  %1211 = load double, ptr %3, align 8, !tbaa !5
  %square478 = fmul double %1211, %1211
  %1212 = load double, ptr %31, align 8, !tbaa !12
  %1213 = fmul double %1212, -2.000000e+00
  %1214 = load double, ptr %1, align 8, !tbaa !5
  %1215 = load double, ptr %7, align 8, !tbaa !9
  %1216 = fdiv double %1214, %1215
  %1217 = load double, ptr %4, align 8, !tbaa !5
  %1218 = fneg double %1208
  %1219 = fmul double %1217, %1218
  %1220 = tail call double @llvm.fmuladd.f64(double %1213, double %1216, double %1219)
  %1221 = fadd double %1217, %1220
  %square479 = fmul double %1221, %1221
  %1222 = tail call double @llvm.fmuladd.f64(double %square477, double %square478, double %square479)
  %1223 = fmul double %1209, %1222
  %1224 = fmul double %1211, %1223
  %1225 = load double, ptr %2, align 8, !tbaa !5
  %1226 = fmul double %1225, 2.000000e+00
  %1227 = tail call double @sin(double noundef %1226) #4
  %1228 = load double, ptr %42, align 8, !tbaa !13
  %1229 = tail call double @llvm.fmuladd.f64(double %1228, double 2.000000e+00, double -2.000000e+00)
  %1230 = load double, ptr %31, align 8, !tbaa !12
  %1231 = fmul double %1230, -2.000000e+00
  %1232 = load double, ptr %1, align 8, !tbaa !5
  %1233 = load double, ptr %7, align 8, !tbaa !9
  %1234 = fdiv double %1232, %1233
  %1235 = load double, ptr %4, align 8, !tbaa !5
  %1236 = fneg double %1228
  %1237 = fmul double %1235, %1236
  %1238 = tail call double @llvm.fmuladd.f64(double %1231, double %1234, double %1237)
  %1239 = fadd double %1235, %1238
  %1240 = fmul double %1229, %1239
  %1241 = load double, ptr %3, align 8, !tbaa !5
  %1242 = fmul double %1241, %1240
  %1243 = tail call double @llvm.fmuladd.f64(double %square477, double %1227, double %1242)
  %square481 = fmul double %1241, %1241
  %1244 = fmul double %1228, -4.000000e+00
  %1245 = fmul double %1244, %square481
  %1246 = tail call double @llvm.fmuladd.f64(double %1228, double %1228, double %1245)
  %1247 = tail call double @llvm.fmuladd.f64(double %1228, double 2.000000e+00, double %1246)
  %1248 = fadd double %1247, 1.000000e+00
  %1249 = fmul double %1243, -5.000000e-01
  %1250 = fmul double %1248, %1249
  %1251 = tail call double @llvm.fmuladd.f64(double %1224, double %1217, double %1250)
  %1252 = fadd double %1228, -1.000000e+00
  %1253 = fmul double %1252, %1239
  %1254 = fadd double %1228, 1.000000e+00
  %square482 = fmul double %1254, %1254
  %1255 = fmul double %square482, 5.000000e-01
  %1256 = load double, ptr %2, align 8, !tbaa !5
  %1257 = fmul double %1256, 2.000000e+00
  %1258 = tail call double @sin(double noundef %1257) #4
  %1259 = fmul double %1255, %1258
  %1260 = tail call double @llvm.fmuladd.f64(double %1253, double %1241, double %1259)
  %1261 = fmul double %1260, 5.000000e-01
  %1262 = load double, ptr %42, align 8, !tbaa !13
  %1263 = fadd double %1262, -1.000000e+00
  %square483 = fmul double %1263, %1263
  %1264 = fmul double %square483, 2.000000e+00
  %1265 = load double, ptr %3, align 8, !tbaa !5
  %square484 = fmul double %1265, %1265
  %1266 = fmul double %1263, 2.000000e+00
  %1267 = load double, ptr %31, align 8, !tbaa !12
  %1268 = fmul double %1267, -2.000000e+00
  %1269 = load double, ptr %1, align 8, !tbaa !5
  %1270 = load double, ptr %7, align 8, !tbaa !9
  %1271 = fdiv double %1269, %1270
  %1272 = load double, ptr %4, align 8, !tbaa !5
  %1273 = fneg double %1262
  %1274 = fmul double %1272, %1273
  %1275 = tail call double @llvm.fmuladd.f64(double %1268, double %1271, double %1274)
  %1276 = fadd double %1272, %1275
  %1277 = fmul double %1266, %1276
  %1278 = fmul double %1272, %1277
  %1279 = tail call double @llvm.fmuladd.f64(double %1264, double %square484, double %1278)
  %1280 = fadd double %1262, 1.000000e+00
  %square485 = fmul double %1280, %1280
  %1281 = fmul double %square485, 2.000000e+00
  %1282 = load double, ptr %2, align 8, !tbaa !5
  %1283 = fmul double %1282, 2.000000e+00
  %1284 = tail call double @cos(double noundef %1283) #4
  %1285 = tail call double @llvm.fmuladd.f64(double %1281, double %1284, double %1279)
  %1286 = tail call double @llvm.fmuladd.f64(double %1261, double %1285, double %1251)
  %1287 = load double, ptr %42, align 8, !tbaa !13
  %1288 = fadd double %1287, 1.000000e+00
  %square486 = fmul double %1288, %1288
  %1289 = load double, ptr %3, align 8, !tbaa !5
  %square487 = fmul double %1289, %1289
  %1290 = load double, ptr %31, align 8, !tbaa !12
  %1291 = fmul double %1290, -2.000000e+00
  %1292 = load double, ptr %1, align 8, !tbaa !5
  %1293 = load double, ptr %7, align 8, !tbaa !9
  %1294 = fdiv double %1292, %1293
  %1295 = load double, ptr %4, align 8, !tbaa !5
  %1296 = fneg double %1287
  %1297 = fmul double %1295, %1296
  %1298 = tail call double @llvm.fmuladd.f64(double %1291, double %1294, double %1297)
  %1299 = fadd double %1295, %1298
  %square488 = fmul double %1299, %1299
  %1300 = tail call double @llvm.fmuladd.f64(double %square486, double %square487, double %square488)
  %1301 = fmul double %1287, -4.000000e+00
  %1302 = fmul double %1301, %square487
  %1303 = tail call double @llvm.fmuladd.f64(double %1287, double %1287, double %1302)
  %1304 = tail call double @llvm.fmuladd.f64(double %1287, double 2.000000e+00, double %1303)
  %1305 = fadd double %1304, 1.000000e+00
  %1306 = fadd double %1287, -1.000000e+00
  %1307 = fmul double %1306, %1299
  %1308 = fmul double %square486, 5.000000e-01
  %1309 = load double, ptr %2, align 8, !tbaa !5
  %1310 = fmul double %1309, 2.000000e+00
  %1311 = tail call double @sin(double noundef %1310) #4
  %1312 = fmul double %1308, %1311
  %1313 = tail call double @llvm.fmuladd.f64(double %1307, double %1289, double %1312)
  %1314 = fneg double %1313
  %1315 = fmul double %1313, %1314
  %1316 = tail call double @llvm.fmuladd.f64(double %1300, double %1305, double %1315)
  %1317 = tail call double @pow(double noundef %1316, double noundef 1.500000e+00) #4
  %1318 = insertelement <2 x double> poison, double %1118, i64 0
  %1319 = insertelement <2 x double> %1318, double %1170, i64 1
  %1320 = tail call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %1319, <2 x double> <double 0xBFD64CB5F7148405, double 0xBFD64CB5F7148405>, <2 x double> <double 0x3FDCFD52F4677872, double 0x3FDCFD52F4677872>)
  %1321 = insertelement <2 x double> <double 6.000000e+00, double poison>, double %1191, i64 1
  %1322 = fmul <2 x double> %1320, %1321
  %1323 = insertelement <2 x double> poison, double %1121, i64 0
  %1324 = insertelement <2 x double> %1323, double %1192, i64 1
  %1325 = fmul <2 x double> %1324, <double 2.457600e+00, double poison>
  %1326 = fadd <2 x double> %1324, <double poison, double -1.000000e+00>
  %1327 = shufflevector <2 x double> %1325, <2 x double> %1326, <2 x i32> <i32 0, i32 3>
  %1328 = insertelement <2 x double> poison, double %1123, i64 0
  %1329 = insertelement <2 x double> %1328, double %1202, i64 1
  %1330 = fmul <2 x double> %1329, %1327
  %1331 = insertelement <2 x double> poison, double %1131, i64 0
  %1332 = insertelement <2 x double> %1331, double %square476, i64 1
  %1333 = fmul <2 x double> %1332, <double 2.457600e+00, double 5.000000e-01>
  %1334 = insertelement <2 x double> poison, double %1134, i64 0
  %1335 = insertelement <2 x double> %1334, double %1207, i64 1
  %1336 = fmul <2 x double> %1333, %1335
  %1337 = insertelement <2 x double> poison, double %1126, i64 0
  %1338 = insertelement <2 x double> %1337, double %1203, i64 1
  %1339 = tail call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %1330, <2 x double> %1338, <2 x double> %1336)
  %1340 = fmul <2 x double> %1322, %1339
  %1341 = insertelement <2 x double> poison, double %1141, i64 0
  %1342 = insertelement <2 x double> %1341, double %1286, i64 1
  %1343 = fmul <2 x double> %1340, %1342
  %1344 = insertelement <2 x double> poison, double %1165, i64 0
  %1345 = insertelement <2 x double> %1344, double %1317, i64 1
  %1346 = fdiv <2 x double> %1343, %1345
  %1347 = extractelement <2 x double> %1346, i64 0
  %1348 = fadd double %1113, %1347
  %1349 = extractelement <2 x double> %1346, i64 1
  %1350 = fsub double %1348, %1349
  %1351 = load double, ptr %42, align 8, !tbaa !13
  %1352 = fadd double %1351, 1.000000e+00
  %square492 = fmul double %1352, %1352
  %1353 = load double, ptr %3, align 8, !tbaa !5
  %square493 = fmul double %1353, %1353
  %1354 = load double, ptr %31, align 8, !tbaa !12
  %1355 = fmul double %1354, -2.000000e+00
  %1356 = load double, ptr %1, align 8, !tbaa !5
  %1357 = load double, ptr %7, align 8, !tbaa !9
  %1358 = fdiv double %1356, %1357
  %1359 = load double, ptr %4, align 8, !tbaa !5
  %1360 = fneg double %1351
  %1361 = fmul double %1359, %1360
  %1362 = tail call double @llvm.fmuladd.f64(double %1355, double %1358, double %1361)
  %1363 = fadd double %1359, %1362
  %square494 = fmul double %1363, %1363
  %1364 = tail call double @llvm.fmuladd.f64(double %square492, double %square493, double %square494)
  %1365 = fmul double %1351, -4.000000e+00
  %1366 = fmul double %1365, %square493
  %1367 = tail call double @llvm.fmuladd.f64(double %1351, double %1351, double %1366)
  %1368 = tail call double @llvm.fmuladd.f64(double %1351, double 2.000000e+00, double %1367)
  %1369 = fadd double %1368, 1.000000e+00
  %1370 = fadd double %1351, -1.000000e+00
  %1371 = fmul double %1370, %1363
  %1372 = fmul double %square492, 5.000000e-01
  %1373 = load double, ptr %2, align 8, !tbaa !5
  %1374 = fmul double %1373, 2.000000e+00
  %1375 = tail call double @sin(double noundef %1374) #4
  %1376 = fmul double %1372, %1375
  %1377 = tail call double @llvm.fmuladd.f64(double %1371, double %1353, double %1376)
  %1378 = fneg double %1377
  %1379 = fmul double %1377, %1378
  %1380 = tail call double @llvm.fmuladd.f64(double %1364, double %1369, double %1379)
  %1381 = tail call double @sqrt(double noundef %1380) #4
  %1382 = insertelement <2 x double> poison, double %17, i64 0
  %1383 = insertelement <2 x double> %1382, double %1350, i64 1
  %1384 = insertelement <2 x double> poison, double %20, i64 0
  %1385 = insertelement <2 x double> %1384, double %30, i64 1
  %1386 = fmul <2 x double> %1383, %1385
  %1387 = insertelement <2 x double> poison, double %26, i64 0
  %1388 = insertelement <2 x double> %1387, double %1381, i64 1
  %1389 = fdiv <2 x double> %1386, %1388
  %shift = shufflevector <2 x double> %1389, <2 x double> poison, <2 x i32> <i32 1, i32 poison>
  %1390 = fsub <2 x double> %1389, %shift
  %1391 = extractelement <2 x double> %1390, i64 0
  ret double %1391
}

; Function Attrs: mustprogress nofree nounwind willreturn memory(write)
declare double @pow(double noundef, double noundef) local_unnamed_addr #1

; Function Attrs: mustprogress nofree nounwind willreturn memory(write)
declare double @cos(double noundef) local_unnamed_addr #1

; Function Attrs: mustprogress nofree nounwind willreturn memory(write)
declare double @atan(double noundef) local_unnamed_addr #1

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

; Function Attrs: mustprogress nofree nounwind willreturn memory(write)
declare double @sin(double noundef) local_unnamed_addr #1

; Function Attrs: mustprogress nofree nounwind willreturn memory(write)
declare double @sqrt(double noundef) local_unnamed_addr #1

; Function Attrs: nocallback nofree nosync nounwind speculatable willreturn memory(none)
declare <2 x double> @llvm.fmuladd.v2f64(<2 x double>, <2 x double>, <2 x double>) #3

attributes #0 = { mustprogress nofree nounwind willreturn memory(write, 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" }
attributes #1 = { mustprogress nofree nounwind willreturn memory(write) "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 #2 = { mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none) }
attributes #3 = { nocallback nofree nosync nounwind speculatable willreturn memory(none) }
attributes #4 = { 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 = !{!"double", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C++ TBAA"}
!9 = !{!10, !6, i64 8}
!10 = !{!"_ZTS43PolarR6_SonnendruckerGyro_ShafranovGeometry", !11, i64 0, !6, i64 8, !6, i64 16, !6, i64 24}
!11 = !{!"_ZTS10SourceTerm"}
!12 = !{!10, !6, i64 24}
!13 = !{!10, !6, i64 16}


; Effective O3 passes: EarlyCSEPass,GlobalOptPass,InferFunctionAttrsPass,InstCombinePass,PostOrderFunctionAttrsPass,ReassociatePass,SLPVectorizerPass,SROAPass,TailCallElimPass,VectorCombinePass