; LLVM IR from SciCompMod/GMGPolar :: src/InputFunctions/SourceTerms (refined_ZoniShiftedGyro_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.Refined_ZoniShiftedGyro_ShafranovGeometry = type { %class.SourceTerm, double, double, double }
%class.SourceTerm = type { ptr }

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

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

; Function Attrs: nounwind
declare double @exp(double noundef) #2

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

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

; Function Attrs: nounwind
declare double @tanh(double noundef) #2

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

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

attributes #0 = { mustprogress nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #1 = { nocallback nofree nosync nounwind speculatable willreturn memory(none) }
attributes #2 = { 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 #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 = !{!"_ZTS41Refined_ZoniShiftedGyro_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 @_ZNK41Refined_ZoniShiftedGyro_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 = fmul double %9, %9
  %11 = fmul double %9, -0.000000e+00
  %12 = tail call double @llvm.fmuladd.f64(double %10, double 0xBCEE1173C8DA9136, double %11)
  %13 = fadd double %9, -9.000000e-01
  %square = fmul double %13, %13
  %14 = fmul double %square, 0xC0AA0AAAAAAAAAA3
  %15 = tail call double @exp(double noundef %14) #4
  %16 = fadd double %15, %12
  %17 = load double, ptr %2, align 8, !tbaa !5
  %18 = fmul double %17, 2.100000e+01
  %19 = tail call double @cos(double noundef %18) #4
  %20 = load double, ptr %1, align 8, !tbaa !5
  %21 = load double, ptr %7, align 8, !tbaa !9
  %22 = fdiv double %20, %21
  %23 = fmul double %22, %22
  %24 = fmul double %22, 0xBF5D8A1258FB18E4
  %25 = tail call double @llvm.fmuladd.f64(double %23, double 0x3F5E30FC449ED59D, double %24)
  %26 = fadd double %25, 0xBF05017922D4B0FC
  %27 = fadd double %22, -4.500000e-01
  %square418 = fmul double %27, %27
  %28 = fmul double %square418, -5.000000e+01
  %29 = tail call double @exp(double noundef %28) #4
  %30 = fadd double %29, %26
  %31 = load double, ptr %2, align 8, !tbaa !5
  %32 = fmul double %31, 9.000000e+00
  %33 = tail call double @cos(double noundef %32) #4
  %34 = fmul double %33, %30
  %35 = tail call double @llvm.fmuladd.f64(double %16, double %19, double %34)
  %36 = load double, ptr %1, align 8, !tbaa !5
  %37 = load double, ptr %7, align 8, !tbaa !9
  %38 = fdiv double %36, %37
  %39 = tail call double @llvm.fmuladd.f64(double %38, double 2.000000e+01, double -1.400000e+01)
  %40 = tail call double @tanh(double noundef %39) #4
  %41 = tail call double @exp(double noundef %40) #4
  %42 = getelementptr inbounds i8, ptr %0, i64 24
  %43 = load double, ptr %42, align 8, !tbaa !12
  %44 = fmul double %43, 2.000000e+00
  %45 = getelementptr inbounds i8, ptr %0, i64 16
  %46 = load double, ptr %45, align 8, !tbaa !13
  %47 = fadd double %46, -1.000000e+00
  %48 = fmul double %44, %47
  %49 = load double, ptr %1, align 8, !tbaa !5
  %50 = load double, ptr %7, align 8, !tbaa !9
  %51 = fdiv double %49, %50
  %52 = fmul double %51, %51
  %53 = fadd double %51, -9.000000e-01
  %square419 = fmul double %53, %53
  %54 = fmul double %square419, 0xC0AA0AAAAAAAAAA3
  %55 = tail call double @exp(double noundef %54) #4
  %56 = tail call double @llvm.fmuladd.f64(double %52, double 0xBCEE1173C8DA9136, double %55)
  %57 = fmul double %56, -2.100000e+01
  %58 = load double, ptr %2, align 8, !tbaa !5
  %59 = fmul double %58, 2.100000e+01
  %60 = tail call double @sin(double noundef %59) #4
  %61 = load double, ptr %1, align 8, !tbaa !5
  %62 = load double, ptr %7, align 8, !tbaa !9
  %63 = fdiv double %61, %62
  %64 = fmul double %63, %63
  %65 = fmul double %63, 0xBF5D8A1258FB18E4
  %66 = tail call double @llvm.fmuladd.f64(double %64, double 0x3F5E30FC449ED59D, double %65)
  %67 = fadd double %66, 0xBF05017922D4B0FC
  %68 = fadd double %63, -4.500000e-01
  %square420 = fmul double %68, %68
  %69 = fmul double %square420, -5.000000e+01
  %70 = tail call double @exp(double noundef %69) #4
  %71 = fadd double %70, %67
  %72 = load double, ptr %2, align 8, !tbaa !5
  %73 = fmul double %72, 9.000000e+00
  %74 = tail call double @sin(double noundef %73) #4
  %75 = fmul double %71, -9.000000e+00
  %76 = fmul double %74, %75
  %77 = tail call double @llvm.fmuladd.f64(double %57, double %60, double %76)
  %78 = fmul double %48, %77
  %79 = load double, ptr %1, align 8, !tbaa !5
  %80 = load double, ptr %7, align 8, !tbaa !9
  %81 = fdiv double %79, %80
  %82 = tail call double @llvm.fmuladd.f64(double %81, double 2.000000e+01, double -1.400000e+01)
  %83 = tail call double @tanh(double noundef %82) #4
  %84 = fneg double %83
  %85 = tail call double @exp(double noundef %84) #4
  %86 = fmul double %85, %78
  %87 = load double, ptr %3, align 8, !tbaa !5
  %88 = fmul double %87, %86
  %89 = load double, ptr %45, align 8, !tbaa !13
  %90 = fadd double %89, 1.000000e+00
  %square421 = fmul double %90, %90
  %square422 = fmul double %87, %87
  %91 = load double, ptr %42, align 8, !tbaa !12
  %92 = fmul double %91, -2.000000e+00
  %93 = load double, ptr %1, align 8, !tbaa !5
  %94 = load double, ptr %7, align 8, !tbaa !9
  %95 = fdiv double %93, %94
  %96 = load double, ptr %4, align 8, !tbaa !5
  %97 = fneg double %89
  %98 = fmul double %96, %97
  %99 = tail call double @llvm.fmuladd.f64(double %92, double %95, double %98)
  %100 = fadd double %96, %99
  %square423 = fmul double %100, %100
  %101 = tail call double @llvm.fmuladd.f64(double %square421, double %square422, double %square423)
  %102 = fmul double %89, -4.000000e+00
  %103 = fmul double %square422, %102
  %104 = tail call double @llvm.fmuladd.f64(double %89, double %89, double %103)
  %105 = tail call double @llvm.fmuladd.f64(double %89, double 2.000000e+00, double %104)
  %106 = fadd double %105, 1.000000e+00
  %107 = fadd double %89, -1.000000e+00
  %108 = fmul double %107, %100
  %109 = fmul double %square421, 5.000000e-01
  %110 = load double, ptr %2, align 8, !tbaa !5
  %111 = fmul double %110, 2.000000e+00
  %112 = tail call double @sin(double noundef %111) #4
  %113 = fmul double %109, %112
  %114 = tail call double @llvm.fmuladd.f64(double %108, double %87, double %113)
  %115 = fneg double %114
  %116 = fmul double %114, %115
  %117 = tail call double @llvm.fmuladd.f64(double %101, double %106, double %116)
  %118 = tail call double @sqrt(double noundef %117) #4
  %119 = fdiv double %88, %118
  %120 = load double, ptr %1, align 8, !tbaa !5
  %121 = load double, ptr %7, align 8, !tbaa !9
  %122 = fdiv double %120, %121
  %123 = tail call double @llvm.fmuladd.f64(double %122, double 0xC0BA0AAAAAAAAAAE, double 6.000000e+03)
  %124 = fadd double %122, -9.000000e-01
  %square427 = fmul double %124, %124
  %125 = fmul double %square427, 0xC0AA0AAAAAAAAAA3
  %126 = tail call double @exp(double noundef %125) #4
  %127 = fmul double %126, %123
  %128 = tail call double @llvm.fmuladd.f64(double %122, double 0xBCFE1173C8DA9129, double %127)
  %129 = load double, ptr %2, align 8, !tbaa !5
  %130 = fmul double %129, 2.100000e+01
  %131 = tail call double @cos(double noundef %130) #4
  %132 = load double, ptr %1, align 8, !tbaa !5
  %133 = load double, ptr %7, align 8, !tbaa !9
  %134 = fdiv double %132, %133
  %135 = tail call double @llvm.fmuladd.f64(double %134, double -1.000000e+02, double 4.500000e+01)
  %136 = fadd double %134, -4.500000e-01
  %square428 = fmul double %136, %136
  %137 = fmul double %square428, -5.000000e+01
  %138 = tail call double @exp(double noundef %137) #4
  %139 = fmul double %138, %135
  %140 = tail call double @llvm.fmuladd.f64(double %134, double 0x3F6E30FC449ED5B4, double %139)
  %141 = fadd double %140, 0xBF5D8A1258FB18E4
  %142 = load double, ptr %2, align 8, !tbaa !5
  %143 = fmul double %142, 9.000000e+00
  %144 = tail call double @cos(double noundef %143) #4
  %145 = fmul double %144, %141
  %146 = tail call double @llvm.fmuladd.f64(double %128, double %131, double %145)
  %147 = fmul double %122, %146
  %148 = load double, ptr %1, align 8, !tbaa !5
  %149 = load double, ptr %7, align 8, !tbaa !9
  %150 = fdiv double %148, %149
  %151 = tail call double @llvm.fmuladd.f64(double %150, double 2.000000e+01, double -1.400000e+01)
  %152 = tail call double @tanh(double noundef %151) #4
  %square429 = fmul double %152, %152
  %153 = tail call double @llvm.fmuladd.f64(double %square429, double 2.000000e+01, double -2.000000e+01)
  %154 = fmul double %147, %153
  %155 = load double, ptr %45, align 8, !tbaa !13
  %156 = load double, ptr %3, align 8, !tbaa !5
  %square430 = fmul double %156, %156
  %157 = fmul double %155, -4.000000e+00
  %158 = fmul double %157, %square430
  %159 = tail call double @llvm.fmuladd.f64(double %155, double %155, double %158)
  %160 = tail call double @llvm.fmuladd.f64(double %155, double 2.000000e+00, double %159)
  %161 = fadd double %160, 1.000000e+00
  %162 = fmul double %154, %161
  %163 = load double, ptr %1, align 8, !tbaa !5
  %164 = load double, ptr %7, align 8, !tbaa !9
  %165 = fdiv double %163, %164
  %166 = tail call double @llvm.fmuladd.f64(double %165, double 2.000000e+01, double -1.400000e+01)
  %167 = tail call double @tanh(double noundef %166) #4
  %168 = fneg double %167
  %169 = tail call double @exp(double noundef %168) #4
  %170 = fmul double %169, %162
  %171 = load double, ptr %45, align 8, !tbaa !13
  %172 = fadd double %171, 1.000000e+00
  %square431 = fmul double %172, %172
  %173 = load double, ptr %3, align 8, !tbaa !5
  %square432 = fmul double %173, %173
  %174 = load double, ptr %42, align 8, !tbaa !12
  %175 = fmul double %174, -2.000000e+00
  %176 = load double, ptr %1, align 8, !tbaa !5
  %177 = load double, ptr %7, align 8, !tbaa !9
  %178 = fdiv double %176, %177
  %179 = load double, ptr %4, align 8, !tbaa !5
  %180 = fneg double %171
  %181 = fmul double %179, %180
  %182 = tail call double @llvm.fmuladd.f64(double %175, double %178, double %181)
  %183 = fadd double %179, %182
  %square433 = fmul double %183, %183
  %184 = tail call double @llvm.fmuladd.f64(double %square431, double %square432, double %square433)
  %185 = fmul double %171, -4.000000e+00
  %186 = fmul double %185, %square432
  %187 = tail call double @llvm.fmuladd.f64(double %171, double %171, double %186)
  %188 = tail call double @llvm.fmuladd.f64(double %171, double 2.000000e+00, double %187)
  %189 = fadd double %188, 1.000000e+00
  %190 = fadd double %171, -1.000000e+00
  %191 = fmul double %190, %183
  %192 = fmul double %square431, 5.000000e-01
  %193 = load double, ptr %2, align 8, !tbaa !5
  %194 = fmul double %193, 2.000000e+00
  %195 = tail call double @sin(double noundef %194) #4
  %196 = fmul double %192, %195
  %197 = tail call double @llvm.fmuladd.f64(double %191, double %173, double %196)
  %198 = fneg double %197
  %199 = fmul double %197, %198
  %200 = tail call double @llvm.fmuladd.f64(double %184, double %189, double %199)
  %201 = tail call double @sqrt(double noundef %200) #4
  %202 = fdiv double %170, %201
  %203 = fadd double %119, %202
  %204 = load double, ptr %1, align 8, !tbaa !5
  %205 = load double, ptr %7, align 8, !tbaa !9
  %206 = fdiv double %204, %205
  %207 = tail call double @llvm.fmuladd.f64(double %206, double 0xC0BA0AAAAAAAAAAE, double 6.000000e+03)
  %208 = fadd double %206, -9.000000e-01
  %square437 = fmul double %208, %208
  %209 = fmul double %square437, 0xC0AA0AAAAAAAAAA3
  %210 = tail call double @exp(double noundef %209) #4
  %211 = fmul double %210, %207
  %212 = tail call double @llvm.fmuladd.f64(double %206, double 0xBCFE1173C8DA9129, double %211)
  %213 = load double, ptr %2, align 8, !tbaa !5
  %214 = fmul double %213, 2.100000e+01
  %215 = tail call double @cos(double noundef %214) #4
  %216 = load double, ptr %1, align 8, !tbaa !5
  %217 = load double, ptr %7, align 8, !tbaa !9
  %218 = fdiv double %216, %217
  %219 = tail call double @llvm.fmuladd.f64(double %218, double -1.000000e+02, double 4.500000e+01)
  %220 = fadd double %218, -4.500000e-01
  %square438 = fmul double %220, %220
  %221 = fmul double %square438, -5.000000e+01
  %222 = tail call double @exp(double noundef %221) #4
  %223 = fmul double %222, %219
  %224 = tail call double @llvm.fmuladd.f64(double %218, double 0x3F6E30FC449ED5B4, double %223)
  %225 = fadd double %224, 0xBF5D8A1258FB18E4
  %226 = load double, ptr %2, align 8, !tbaa !5
  %227 = fmul double %226, 9.000000e+00
  %228 = tail call double @cos(double noundef %227) #4
  %229 = fmul double %228, %225
  %230 = tail call double @llvm.fmuladd.f64(double %212, double %215, double %229)
  %231 = fmul double %206, %230
  %232 = load double, ptr %42, align 8, !tbaa !12
  %233 = fmul double %232, -2.000000e+00
  %234 = load double, ptr %45, align 8, !tbaa !13
  %235 = fadd double %234, -1.000000e+00
  %236 = fmul double %233, %235
  %237 = load double, ptr %1, align 8, !tbaa !5
  %238 = load double, ptr %7, align 8, !tbaa !9
  %239 = fdiv double %237, %238
  %240 = load double, ptr %4, align 8, !tbaa !5
  %241 = fneg double %234
  %242 = fmul double %240, %241
  %243 = tail call double @llvm.fmuladd.f64(double %233, double %239, double %242)
  %244 = fadd double %240, %243
  %245 = fmul double %235, %244
  %246 = load double, ptr %3, align 8, !tbaa !5
  %247 = fadd double %234, 1.000000e+00
  %square439 = fmul double %247, %247
  %248 = fmul double %square439, 5.000000e-01
  %249 = load double, ptr %2, align 8, !tbaa !5
  %250 = fmul double %249, 2.000000e+00
  %251 = tail call double @sin(double noundef %250) #4
  %252 = fmul double %248, %251
  %253 = tail call double @llvm.fmuladd.f64(double %245, double %246, double %252)
  %254 = fmul double %236, %253
  %255 = load double, ptr %3, align 8, !tbaa !5
  %256 = load double, ptr %42, align 8, !tbaa !12
  %257 = fmul double %256, 2.000000e+00
  %258 = fmul double %256, -2.000000e+00
  %259 = load double, ptr %1, align 8, !tbaa !5
  %260 = load double, ptr %7, align 8, !tbaa !9
  %261 = fdiv double %259, %260
  %262 = load double, ptr %45, align 8, !tbaa !13
  %263 = load double, ptr %4, align 8, !tbaa !5
  %264 = fneg double %262
  %265 = fmul double %263, %264
  %266 = tail call double @llvm.fmuladd.f64(double %258, double %261, double %265)
  %267 = fadd double %263, %266
  %268 = fmul double %257, %267
  %square440 = fmul double %255, %255
  %269 = fmul double %262, -4.000000e+00
  %270 = fmul double %square440, %269
  %271 = tail call double @llvm.fmuladd.f64(double %262, double %262, double %270)
  %272 = tail call double @llvm.fmuladd.f64(double %262, double 2.000000e+00, double %271)
  %273 = fadd double %272, 1.000000e+00
  %274 = fmul double %268, %273
  %275 = tail call double @llvm.fmuladd.f64(double %254, double %255, double %274)
  %276 = fmul double %231, %275
  %277 = fmul double %273, %276
  %278 = tail call double @llvm.fmuladd.f64(double %261, double 2.000000e+01, double -1.400000e+01)
  %279 = tail call double @tanh(double noundef %278) #4
  %280 = fneg double %279
  %281 = tail call double @exp(double noundef %280) #4
  %282 = fmul double %281, %277
  %283 = load double, ptr %45, align 8, !tbaa !13
  %284 = fadd double %283, 1.000000e+00
  %square442 = fmul double %284, %284
  %285 = load double, ptr %3, align 8, !tbaa !5
  %square443 = fmul double %285, %285
  %286 = load double, ptr %42, align 8, !tbaa !12
  %287 = fmul double %286, -2.000000e+00
  %288 = load double, ptr %1, align 8, !tbaa !5
  %289 = load double, ptr %7, align 8, !tbaa !9
  %290 = fdiv double %288, %289
  %291 = load double, ptr %4, align 8, !tbaa !5
  %292 = fneg double %283
  %293 = fmul double %291, %292
  %294 = tail call double @llvm.fmuladd.f64(double %287, double %290, double %293)
  %295 = fadd double %291, %294
  %square444 = fmul double %295, %295
  %296 = tail call double @llvm.fmuladd.f64(double %square442, double %square443, double %square444)
  %297 = fmul double %283, -4.000000e+00
  %298 = fmul double %297, %square443
  %299 = tail call double @llvm.fmuladd.f64(double %283, double %283, double %298)
  %300 = tail call double @llvm.fmuladd.f64(double %283, double 2.000000e+00, double %299)
  %301 = fadd double %300, 1.000000e+00
  %302 = fadd double %283, -1.000000e+00
  %303 = fmul double %302, %295
  %304 = fmul double %square442, 5.000000e-01
  %305 = load double, ptr %2, align 8, !tbaa !5
  %306 = fmul double %305, 2.000000e+00
  %307 = tail call double @sin(double noundef %306) #4
  %308 = fmul double %304, %307
  %309 = tail call double @llvm.fmuladd.f64(double %303, double %285, double %308)
  %310 = fneg double %309
  %311 = fmul double %309, %310
  %312 = tail call double @llvm.fmuladd.f64(double %296, double %301, double %311)
  %313 = tail call double @pow(double noundef %312, double noundef 1.500000e+00) #4
  %314 = fdiv double %282, %313
  %315 = fadd double %203, %314
  %316 = load double, ptr %1, align 8, !tbaa !5
  %317 = load double, ptr %7, align 8, !tbaa !9
  %318 = fdiv double %316, %317
  %319 = fsub double 4.500000e-01, %318
  %square448 = fmul double %319, %319
  %320 = fmul double %square448, 1.000000e+04
  %321 = fadd double %318, -4.500000e-01
  %square449 = fmul double %321, %321
  %322 = fmul double %square449, -5.000000e+01
  %323 = tail call double @exp(double noundef %322) #4
  %324 = tail call double @llvm.fmuladd.f64(double %320, double %323, double 0x3F6E30FC449ED5B4)
  %325 = load double, ptr %1, align 8, !tbaa !5
  %326 = load double, ptr %7, align 8, !tbaa !9
  %327 = fdiv double %325, %326
  %328 = fadd double %327, -4.500000e-01
  %square450 = fmul double %328, %328
  %329 = fmul double %square450, -5.000000e+01
  %330 = tail call double @exp(double noundef %329) #4
  %331 = tail call double @llvm.fmuladd.f64(double %330, double -1.000000e+02, double %324)
  %332 = load double, ptr %2, align 8, !tbaa !5
  %333 = fmul double %332, 9.000000e+00
  %334 = tail call double @cos(double noundef %333) #4
  %335 = load double, ptr %1, align 8, !tbaa !5
  %336 = load double, ptr %7, align 8, !tbaa !9
  %337 = fdiv double %335, %336
  %338 = fsub double 9.000000e-01, %337
  %square451 = fmul double %338, %338
  %339 = fmul double %square451, 0x41853158E38E38DE
  %340 = fadd double %337, -9.000000e-01
  %square452 = fmul double %340, %340
  %341 = fmul double %square452, 0xC0AA0AAAAAAAAAA3
  %342 = tail call double @exp(double noundef %341) #4
  %343 = tail call double @llvm.fmuladd.f64(double %339, double %342, double 0xBCFE1173C8DA9129)
  %344 = load double, ptr %1, align 8, !tbaa !5
  %345 = load double, ptr %7, align 8, !tbaa !9
  %346 = fdiv double %344, %345
  %347 = fadd double %346, -9.000000e-01
  %square453 = fmul double %347, %347
  %348 = fmul double %square453, 0xC0AA0AAAAAAAAAA3
  %349 = tail call double @exp(double noundef %348) #4
  %350 = tail call double @llvm.fmuladd.f64(double %349, double 0xC0BA0AAAAAAAAAAE, double %343)
  %351 = load double, ptr %2, align 8, !tbaa !5
  %352 = fmul double %351, 2.100000e+01
  %353 = tail call double @cos(double noundef %352) #4
  %354 = fmul double %350, %353
  %355 = tail call double @llvm.fmuladd.f64(double %331, double %334, double %354)
  %356 = fmul double %318, %355
  %357 = load double, ptr %45, align 8, !tbaa !13
  %358 = load double, ptr %3, align 8, !tbaa !5
  %square454 = fmul double %358, %358
  %359 = fmul double %357, -4.000000e+00
  %360 = fmul double %359, %square454
  %361 = tail call double @llvm.fmuladd.f64(double %357, double %357, double %360)
  %362 = tail call double @llvm.fmuladd.f64(double %357, double 2.000000e+00, double %361)
  %363 = fadd double %362, 1.000000e+00
  %364 = fmul double %356, %363
  %365 = load double, ptr %1, align 8, !tbaa !5
  %366 = load double, ptr %7, align 8, !tbaa !9
  %367 = fdiv double %365, %366
  %368 = tail call double @llvm.fmuladd.f64(double %367, double 2.000000e+01, double -1.400000e+01)
  %369 = tail call double @tanh(double noundef %368) #4
  %370 = fneg double %369
  %371 = tail call double @exp(double noundef %370) #4
  %372 = fmul double %371, %364
  %373 = load double, ptr %45, align 8, !tbaa !13
  %374 = fadd double %373, 1.000000e+00
  %square455 = fmul double %374, %374
  %375 = load double, ptr %3, align 8, !tbaa !5
  %square456 = fmul double %375, %375
  %376 = load double, ptr %42, align 8, !tbaa !12
  %377 = fmul double %376, -2.000000e+00
  %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 %373
  %383 = fmul double %381, %382
  %384 = tail call double @llvm.fmuladd.f64(double %377, double %380, double %383)
  %385 = fadd double %381, %384
  %square457 = fmul double %385, %385
  %386 = tail call double @llvm.fmuladd.f64(double %square455, double %square456, double %square457)
  %387 = fmul double %373, -4.000000e+00
  %388 = fmul double %387, %square456
  %389 = tail call double @llvm.fmuladd.f64(double %373, double %373, double %388)
  %390 = tail call double @llvm.fmuladd.f64(double %373, double 2.000000e+00, double %389)
  %391 = fadd double %390, 1.000000e+00
  %392 = fadd double %373, -1.000000e+00
  %393 = fmul double %392, %385
  %394 = fmul double %square455, 5.000000e-01
  %395 = load double, ptr %2, align 8, !tbaa !5
  %396 = fmul double %395, 2.000000e+00
  %397 = tail call double @sin(double noundef %396) #4
  %398 = fmul double %394, %397
  %399 = tail call double @llvm.fmuladd.f64(double %393, double %375, double %398)
  %400 = fneg double %399
  %401 = fmul double %399, %400
  %402 = tail call double @llvm.fmuladd.f64(double %386, double %391, double %401)
  %403 = tail call double @sqrt(double noundef %402) #4
  %404 = fdiv double %372, %403
  %405 = fadd double %315, %404
  %406 = load double, ptr %1, align 8, !tbaa !5
  %407 = load double, ptr %7, align 8, !tbaa !9
  %408 = fdiv double %406, %407
  %409 = tail call double @llvm.fmuladd.f64(double %408, double 0xC0BA0AAAAAAAAAAE, double 6.000000e+03)
  %410 = fadd double %408, -9.000000e-01
  %square461 = fmul double %410, %410
  %411 = fmul double %square461, 0xC0AA0AAAAAAAAAA3
  %412 = tail call double @exp(double noundef %411) #4
  %413 = fmul double %412, %409
  %414 = tail call double @llvm.fmuladd.f64(double %408, double 0xBCFE1173C8DA9129, double %413)
  %415 = fmul double %414, -2.100000e+01
  %416 = load double, ptr %2, align 8, !tbaa !5
  %417 = fmul double %416, 2.100000e+01
  %418 = tail call double @sin(double noundef %417) #4
  %419 = load double, ptr %1, align 8, !tbaa !5
  %420 = load double, ptr %7, align 8, !tbaa !9
  %421 = fdiv double %419, %420
  %422 = tail call double @llvm.fmuladd.f64(double %421, double -1.000000e+02, double 4.500000e+01)
  %423 = fadd double %421, -4.500000e-01
  %square462 = fmul double %423, %423
  %424 = fmul double %square462, -5.000000e+01
  %425 = tail call double @exp(double noundef %424) #4
  %426 = fmul double %425, %422
  %427 = tail call double @llvm.fmuladd.f64(double %421, double 0x3F6E30FC449ED5B4, double %426)
  %428 = fadd double %427, 0xBF5D8A1258FB18E4
  %429 = load double, ptr %2, align 8, !tbaa !5
  %430 = fmul double %429, 9.000000e+00
  %431 = tail call double @sin(double noundef %430) #4
  %432 = fmul double %428, -9.000000e+00
  %433 = load double, ptr %45, align 8, !tbaa !13
  %434 = load double, ptr %42, align 8, !tbaa !12
  %435 = fmul double %434, -2.000000e+00
  %436 = load double, ptr %1, align 8, !tbaa !5
  %437 = load double, ptr %7, align 8, !tbaa !9
  %438 = fdiv double %436, %437
  %439 = load double, ptr %4, align 8, !tbaa !5
  %440 = fneg double %433
  %441 = fmul double %439, %440
  %442 = tail call double @llvm.fmuladd.f64(double %435, double %438, double %441)
  %443 = fadd double %439, %442
  %444 = load double, ptr %3, align 8, !tbaa !5
  %445 = fadd double %433, 1.000000e+00
  %square463 = fmul double %445, %445
  %446 = fmul double %square463, 5.000000e-01
  %447 = load double, ptr %2, align 8, !tbaa !5
  %448 = fmul double %447, 2.000000e+00
  %449 = tail call double @sin(double noundef %448) #4
  %450 = fmul double %446, %449
  %451 = load double, ptr %1, align 8, !tbaa !5
  %452 = load double, ptr %7, align 8, !tbaa !9
  %453 = fdiv double %451, %452
  %454 = tail call double @llvm.fmuladd.f64(double %453, double 2.000000e+01, double -1.400000e+01)
  %455 = tail call double @tanh(double noundef %454) #4
  %456 = fneg double %455
  %457 = tail call double @exp(double noundef %456) #4
  %458 = load double, ptr %45, align 8, !tbaa !13
  %459 = fadd double %458, 1.000000e+00
  %square464 = fmul double %459, %459
  %460 = load double, ptr %3, align 8, !tbaa !5
  %square465 = fmul double %460, %460
  %461 = load double, ptr %42, align 8, !tbaa !12
  %462 = fmul double %461, -2.000000e+00
  %463 = load double, ptr %1, align 8, !tbaa !5
  %464 = load double, ptr %7, align 8, !tbaa !9
  %465 = fdiv double %463, %464
  %466 = load double, ptr %4, align 8, !tbaa !5
  %467 = fneg double %458
  %468 = fmul double %466, %467
  %469 = tail call double @llvm.fmuladd.f64(double %462, double %465, double %468)
  %470 = fadd double %466, %469
  %square466 = fmul double %470, %470
  %471 = tail call double @llvm.fmuladd.f64(double %square464, double %square465, double %square466)
  %472 = fmul double %458, -4.000000e+00
  %473 = fmul double %472, %square465
  %474 = tail call double @llvm.fmuladd.f64(double %458, double %458, double %473)
  %475 = tail call double @llvm.fmuladd.f64(double %458, double 2.000000e+00, double %474)
  %476 = fadd double %475, 1.000000e+00
  %477 = fadd double %458, -1.000000e+00
  %478 = fmul double %477, %470
  %479 = fmul double %square464, 5.000000e-01
  %480 = load double, ptr %2, align 8, !tbaa !5
  %481 = fmul double %480, 2.000000e+00
  %482 = tail call double @sin(double noundef %481) #4
  %483 = fmul double %479, %482
  %484 = tail call double @llvm.fmuladd.f64(double %478, double %460, double %483)
  %485 = fneg double %484
  %486 = fmul double %484, %485
  %487 = tail call double @llvm.fmuladd.f64(double %471, double %476, double %486)
  %488 = tail call double @sqrt(double noundef %487) #4
  %489 = load double, ptr %1, align 8, !tbaa !5
  %490 = load double, ptr %7, align 8, !tbaa !9
  %491 = fdiv double %489, %490
  %492 = tail call double @llvm.fmuladd.f64(double %491, double 0xC0BA0AAAAAAAAAAE, double 6.000000e+03)
  %493 = fadd double %491, -9.000000e-01
  %square470 = fmul double %493, %493
  %494 = fmul double %square470, 0xC0AA0AAAAAAAAAA3
  %495 = tail call double @exp(double noundef %494) #4
  %496 = fmul double %495, %492
  %497 = tail call double @llvm.fmuladd.f64(double %491, double 0xBCFE1173C8DA9129, double %496)
  %498 = load double, ptr %2, align 8, !tbaa !5
  %499 = fmul double %498, 2.100000e+01
  %500 = tail call double @cos(double noundef %499) #4
  %501 = load double, ptr %1, align 8, !tbaa !5
  %502 = load double, ptr %7, align 8, !tbaa !9
  %503 = fdiv double %501, %502
  %504 = tail call double @llvm.fmuladd.f64(double %503, double -1.000000e+02, double 4.500000e+01)
  %505 = fadd double %503, -4.500000e-01
  %square471 = fmul double %505, %505
  %506 = fmul double %square471, -5.000000e+01
  %507 = tail call double @exp(double noundef %506) #4
  %508 = fmul double %507, %504
  %509 = tail call double @llvm.fmuladd.f64(double %503, double 0x3F6E30FC449ED5B4, double %508)
  %510 = fadd double %509, 0xBF5D8A1258FB18E4
  %511 = load double, ptr %2, align 8, !tbaa !5
  %512 = fmul double %511, 9.000000e+00
  %513 = tail call double @cos(double noundef %512) #4
  %514 = load double, ptr %45, align 8, !tbaa !13
  %515 = fadd double %514, -1.000000e+00
  %square472 = fmul double %515, %515
  %516 = load double, ptr %3, align 8, !tbaa !5
  %square473 = fmul double %516, %516
  %517 = load double, ptr %42, align 8, !tbaa !12
  %518 = fmul double %517, -2.000000e+00
  %519 = load double, ptr %1, align 8, !tbaa !5
  %520 = load double, ptr %7, align 8, !tbaa !9
  %521 = fdiv double %519, %520
  %522 = load double, ptr %4, align 8, !tbaa !5
  %523 = fneg double %514
  %524 = fmul double %522, %523
  %525 = tail call double @llvm.fmuladd.f64(double %518, double %521, double %524)
  %526 = fadd double %522, %525
  %527 = fmul double %515, %526
  %528 = fmul double %522, %527
  %529 = tail call double @llvm.fmuladd.f64(double %square472, double %square473, double %528)
  %530 = load double, ptr %2, align 8, !tbaa !5
  %531 = fmul double %530, 2.000000e+00
  %532 = tail call double @cos(double noundef %531) #4
  %533 = load double, ptr %1, align 8, !tbaa !5
  %534 = load double, ptr %7, align 8, !tbaa !9
  %535 = fdiv double %533, %534
  %536 = tail call double @llvm.fmuladd.f64(double %535, double 2.000000e+01, double -1.400000e+01)
  %537 = tail call double @tanh(double noundef %536) #4
  %538 = fneg double %537
  %539 = tail call double @exp(double noundef %538) #4
  %540 = load double, ptr %45, align 8, !tbaa !13
  %541 = fadd double %540, 1.000000e+00
  %square475 = fmul double %541, %541
  %542 = load double, ptr %3, align 8, !tbaa !5
  %square476 = fmul double %542, %542
  %543 = load double, ptr %42, align 8, !tbaa !12
  %544 = fmul double %543, -2.000000e+00
  %545 = load double, ptr %1, align 8, !tbaa !5
  %546 = load double, ptr %7, align 8, !tbaa !9
  %547 = fdiv double %545, %546
  %548 = load double, ptr %4, align 8, !tbaa !5
  %549 = fneg double %540
  %550 = fmul double %548, %549
  %551 = tail call double @llvm.fmuladd.f64(double %544, double %547, double %550)
  %552 = fadd double %548, %551
  %square477 = fmul double %552, %552
  %553 = tail call double @llvm.fmuladd.f64(double %square475, double %square476, double %square477)
  %554 = fmul double %540, -4.000000e+00
  %555 = fmul double %554, %square476
  %556 = tail call double @llvm.fmuladd.f64(double %540, double %540, double %555)
  %557 = tail call double @llvm.fmuladd.f64(double %540, double 2.000000e+00, double %556)
  %558 = fadd double %557, 1.000000e+00
  %559 = fadd double %540, -1.000000e+00
  %560 = fmul double %559, %552
  %561 = fmul double %square475, 5.000000e-01
  %562 = load double, ptr %2, align 8, !tbaa !5
  %563 = fmul double %562, 2.000000e+00
  %564 = tail call double @sin(double noundef %563) #4
  %565 = fmul double %561, %564
  %566 = tail call double @llvm.fmuladd.f64(double %560, double %542, double %565)
  %567 = fneg double %566
  %568 = fmul double %566, %567
  %569 = tail call double @llvm.fmuladd.f64(double %553, double %558, double %568)
  %570 = tail call double @sqrt(double noundef %569) #4
  %571 = insertelement <2 x double> poison, double %431, i64 0
  %572 = insertelement <2 x double> %571, double %513, i64 1
  %573 = insertelement <2 x double> poison, double %432, i64 0
  %574 = insertelement <2 x double> %573, double %510, i64 1
  %575 = fmul <2 x double> %572, %574
  %576 = insertelement <2 x double> poison, double %415, i64 0
  %577 = insertelement <2 x double> %576, double %497, i64 1
  %578 = insertelement <2 x double> poison, double %418, i64 0
  %579 = insertelement <2 x double> %578, double %500, i64 1
  %580 = tail call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %577, <2 x double> %579, <2 x double> %575)
  %581 = insertelement <2 x double> poison, double %433, i64 0
  %582 = insertelement <2 x double> %581, double %514, i64 1
  %583 = fadd <2 x double> %582, <double -1.000000e+00, double 1.000000e+00>
  %584 = insertelement <2 x double> %583, double %443, i64 0
  %585 = fmul <2 x double> %583, %584
  %586 = insertelement <2 x double> poison, double %444, i64 0
  %587 = insertelement <2 x double> %586, double %532, i64 1
  %588 = insertelement <2 x double> poison, double %450, i64 0
  %589 = insertelement <2 x double> %588, double %529, i64 1
  %590 = tail call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %585, <2 x double> %587, <2 x double> %589)
  %591 = fmul <2 x double> %580, %590
  %592 = insertelement <2 x double> poison, double %457, i64 0
  %593 = insertelement <2 x double> %592, double %539, i64 1
  %594 = fmul <2 x double> %591, %593
  %595 = insertelement <2 x double> poison, double %488, i64 0
  %596 = insertelement <2 x double> %595, double %570, i64 1
  %597 = fdiv <2 x double> %594, %596
  %598 = extractelement <2 x double> %597, i64 0
  %599 = fsub double %405, %598
  %600 = extractelement <2 x double> %597, i64 1
  %601 = fsub double %599, %600
  %602 = load double, ptr %1, align 8, !tbaa !5
  %603 = load double, ptr %7, align 8, !tbaa !9
  %604 = fdiv double %602, %603
  %605 = tail call double @llvm.fmuladd.f64(double %604, double 0xC0BA0AAAAAAAAAAE, double 6.000000e+03)
  %606 = fadd double %604, -9.000000e-01
  %square481 = fmul double %606, %606
  %607 = fmul double %square481, 0xC0AA0AAAAAAAAAA3
  %608 = tail call double @exp(double noundef %607) #4
  %609 = fmul double %608, %605
  %610 = load double, ptr %2, align 8, !tbaa !5
  %611 = fmul double %610, 2.100000e+01
  %612 = tail call double @cos(double noundef %611) #4
  %613 = load double, ptr %1, align 8, !tbaa !5
  %614 = load double, ptr %7, align 8, !tbaa !9
  %615 = fdiv double %613, %614
  %616 = tail call double @llvm.fmuladd.f64(double %615, double -1.000000e+02, double 4.500000e+01)
  %617 = fadd double %615, -4.500000e-01
  %square482 = fmul double %617, %617
  %618 = fmul double %square482, -5.000000e+01
  %619 = tail call double @exp(double noundef %618) #4
  %620 = fmul double %619, %616
  %621 = tail call double @llvm.fmuladd.f64(double %615, double 0x3F6E30FC449ED5B4, double %620)
  %622 = fadd double %621, 0xBF5D8A1258FB18E4
  %623 = load double, ptr %2, align 8, !tbaa !5
  %624 = fmul double %623, 9.000000e+00
  %625 = tail call double @cos(double noundef %624) #4
  %626 = fmul double %625, %622
  %627 = load double, ptr %45, align 8, !tbaa !13
  %628 = load double, ptr %3, align 8, !tbaa !5
  %square483 = fmul double %628, %628
  %629 = fmul double %627, -4.000000e+00
  %630 = fmul double %629, %square483
  %631 = tail call double @llvm.fmuladd.f64(double %627, double %627, double %630)
  %632 = tail call double @llvm.fmuladd.f64(double %627, double 2.000000e+00, double %631)
  %633 = fadd double %632, 1.000000e+00
  %634 = load double, ptr %1, align 8, !tbaa !5
  %635 = load double, ptr %7, align 8, !tbaa !9
  %636 = fdiv double %634, %635
  %637 = tail call double @llvm.fmuladd.f64(double %636, double 2.000000e+01, double -1.400000e+01)
  %638 = tail call double @tanh(double noundef %637) #4
  %639 = fneg double %638
  %640 = tail call double @exp(double noundef %639) #4
  %641 = load double, ptr %45, align 8, !tbaa !13
  %642 = fadd double %641, 1.000000e+00
  %square484 = fmul double %642, %642
  %643 = load double, ptr %3, align 8, !tbaa !5
  %square485 = fmul double %643, %643
  %644 = load double, ptr %42, align 8, !tbaa !12
  %645 = fmul double %644, -2.000000e+00
  %646 = load double, ptr %1, align 8, !tbaa !5
  %647 = load double, ptr %7, align 8, !tbaa !9
  %648 = fdiv double %646, %647
  %649 = load double, ptr %4, align 8, !tbaa !5
  %650 = fneg double %641
  %651 = fmul double %649, %650
  %652 = tail call double @llvm.fmuladd.f64(double %645, double %648, double %651)
  %653 = fadd double %649, %652
  %square486 = fmul double %653, %653
  %654 = tail call double @llvm.fmuladd.f64(double %square484, double %square485, double %square486)
  %655 = fmul double %641, -4.000000e+00
  %656 = fmul double %655, %square485
  %657 = tail call double @llvm.fmuladd.f64(double %641, double %641, double %656)
  %658 = tail call double @llvm.fmuladd.f64(double %641, double 2.000000e+00, double %657)
  %659 = fadd double %658, 1.000000e+00
  %660 = fadd double %641, -1.000000e+00
  %661 = fmul double %660, %653
  %662 = fmul double %square484, 5.000000e-01
  %663 = load double, ptr %2, align 8, !tbaa !5
  %664 = fmul double %663, 2.000000e+00
  %665 = tail call double @sin(double noundef %664) #4
  %666 = fmul double %662, %665
  %667 = tail call double @llvm.fmuladd.f64(double %661, double %643, double %666)
  %668 = fneg double %667
  %669 = fmul double %667, %668
  %670 = tail call double @llvm.fmuladd.f64(double %654, double %659, double %669)
  %671 = tail call double @sqrt(double noundef %670) #4
  %672 = load double, ptr %1, align 8, !tbaa !5
  %673 = load double, ptr %7, align 8, !tbaa !9
  %674 = fdiv double %672, %673
  %675 = tail call double @llvm.fmuladd.f64(double %674, double 0xC0BA0AAAAAAAAAAE, double 6.000000e+03)
  %676 = fadd double %674, -9.000000e-01
  %square490 = fmul double %676, %676
  %677 = fmul double %square490, 0xC0AA0AAAAAAAAAA3
  %678 = tail call double @exp(double noundef %677) #4
  %679 = fmul double %678, %675
  %680 = tail call double @llvm.fmuladd.f64(double %674, double 0xBCFE1173C8DA9129, double %679)
  %681 = load double, ptr %2, align 8, !tbaa !5
  %682 = fmul double %681, 2.100000e+01
  %683 = tail call double @cos(double noundef %682) #4
  %684 = load double, ptr %1, align 8, !tbaa !5
  %685 = load double, ptr %7, align 8, !tbaa !9
  %686 = fdiv double %684, %685
  %687 = tail call double @llvm.fmuladd.f64(double %686, double -1.000000e+02, double 4.500000e+01)
  %688 = fadd double %686, -4.500000e-01
  %square491 = fmul double %688, %688
  %689 = fmul double %square491, -5.000000e+01
  %690 = tail call double @exp(double noundef %689) #4
  %691 = fmul double %690, %687
  %692 = tail call double @llvm.fmuladd.f64(double %686, double 0x3F6E30FC449ED5B4, double %691)
  %693 = fadd double %692, 0xBF5D8A1258FB18E4
  %694 = load double, ptr %2, align 8, !tbaa !5
  %695 = fmul double %694, 9.000000e+00
  %696 = tail call double @cos(double noundef %695) #4
  %697 = load double, ptr %45, align 8, !tbaa !13
  %698 = fadd double %697, -1.000000e+00
  %699 = load double, ptr %42, align 8, !tbaa !12
  %700 = fmul double %699, -2.000000e+00
  %701 = load double, ptr %1, align 8, !tbaa !5
  %702 = load double, ptr %7, align 8, !tbaa !9
  %703 = fdiv double %701, %702
  %704 = load double, ptr %4, align 8, !tbaa !5
  %705 = fneg double %697
  %706 = fmul double %704, %705
  %707 = tail call double @llvm.fmuladd.f64(double %700, double %703, double %706)
  %708 = fadd double %704, %707
  %709 = fmul double %698, %708
  %710 = load double, ptr %3, align 8, !tbaa !5
  %711 = fadd double %697, 1.000000e+00
  %square492 = fmul double %711, %711
  %712 = fmul double %square492, 5.000000e-01
  %713 = load double, ptr %2, align 8, !tbaa !5
  %714 = fmul double %713, 2.000000e+00
  %715 = tail call double @sin(double noundef %714) #4
  %716 = insertelement <2 x double> poison, double %696, i64 0
  %717 = insertelement <2 x double> %716, double %715, i64 1
  %718 = insertelement <2 x double> poison, double %693, i64 0
  %719 = insertelement <2 x double> %718, double %712, i64 1
  %720 = fmul <2 x double> %717, %719
  %721 = insertelement <2 x double> poison, double %680, i64 0
  %722 = insertelement <2 x double> %721, double %709, i64 1
  %723 = insertelement <2 x double> poison, double %683, i64 0
  %724 = insertelement <2 x double> %723, double %710, i64 1
  %725 = tail call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %722, <2 x double> %724, <2 x double> %720)
  %shift = shufflevector <2 x double> %725, <2 x double> poison, <2 x i32> <i32 1, i32 poison>
  %726 = fmul <2 x double> %725, %shift
  %727 = load double, ptr %45, align 8, !tbaa !13
  %728 = fmul double %727, 4.000000e+00
  %729 = fadd double %727, 1.000000e+00
  %square493 = fmul double %729, %729
  %730 = load double, ptr %3, align 8, !tbaa !5
  %square494 = fmul double %730, %730
  %731 = load double, ptr %42, align 8, !tbaa !12
  %732 = fmul double %731, -2.000000e+00
  %733 = load double, ptr %1, align 8, !tbaa !5
  %734 = load double, ptr %7, align 8, !tbaa !9
  %735 = fdiv double %733, %734
  %736 = load double, ptr %4, align 8, !tbaa !5
  %737 = fneg double %727
  %738 = fmul double %736, %737
  %739 = tail call double @llvm.fmuladd.f64(double %732, double %735, double %738)
  %740 = fadd double %736, %739
  %square495 = fmul double %740, %740
  %741 = tail call double @llvm.fmuladd.f64(double %square493, double %square494, double %square495)
  %742 = fmul double %728, %741
  %743 = fmul double %730, %742
  %744 = load double, ptr %2, align 8, !tbaa !5
  %745 = fmul double %744, 2.000000e+00
  %746 = tail call double @sin(double noundef %745) #4
  %747 = load double, ptr %45, align 8, !tbaa !13
  %748 = tail call double @llvm.fmuladd.f64(double %747, double 2.000000e+00, double -2.000000e+00)
  %749 = load double, ptr %42, align 8, !tbaa !12
  %750 = fmul double %749, -2.000000e+00
  %751 = load double, ptr %1, align 8, !tbaa !5
  %752 = load double, ptr %7, align 8, !tbaa !9
  %753 = fdiv double %751, %752
  %754 = load double, ptr %4, align 8, !tbaa !5
  %755 = fneg double %747
  %756 = fmul double %754, %755
  %757 = tail call double @llvm.fmuladd.f64(double %750, double %753, double %756)
  %758 = fadd double %754, %757
  %759 = fmul double %748, %758
  %760 = load double, ptr %3, align 8, !tbaa !5
  %761 = fmul double %760, %759
  %762 = tail call double @llvm.fmuladd.f64(double %square493, double %746, double %761)
  %square497 = fmul double %760, %760
  %763 = fmul double %747, -4.000000e+00
  %764 = fmul double %763, %square497
  %765 = tail call double @llvm.fmuladd.f64(double %747, double %747, double %764)
  %766 = tail call double @llvm.fmuladd.f64(double %747, double 2.000000e+00, double %765)
  %767 = fadd double %766, 1.000000e+00
  %768 = fmul double %762, -5.000000e-01
  %769 = fmul double %767, %768
  %770 = tail call double @llvm.fmuladd.f64(double %743, double %736, double %769)
  %771 = fadd double %747, -1.000000e+00
  %772 = fmul double %771, %758
  %773 = fadd double %747, 1.000000e+00
  %square498 = fmul double %773, %773
  %774 = fmul double %square498, 5.000000e-01
  %775 = load double, ptr %2, align 8, !tbaa !5
  %776 = fmul double %775, 2.000000e+00
  %777 = tail call double @sin(double noundef %776) #4
  %778 = fmul double %774, %777
  %779 = tail call double @llvm.fmuladd.f64(double %772, double %760, double %778)
  %780 = fmul double %779, 5.000000e-01
  %781 = load double, ptr %45, align 8, !tbaa !13
  %782 = fadd double %781, -1.000000e+00
  %square499 = fmul double %782, %782
  %783 = fmul double %square499, 2.000000e+00
  %784 = load double, ptr %3, align 8, !tbaa !5
  %square500 = fmul double %784, %784
  %785 = fmul double %782, 2.000000e+00
  %786 = load double, ptr %42, align 8, !tbaa !12
  %787 = fmul double %786, -2.000000e+00
  %788 = load double, ptr %1, align 8, !tbaa !5
  %789 = load double, ptr %7, align 8, !tbaa !9
  %790 = fdiv double %788, %789
  %791 = load double, ptr %4, align 8, !tbaa !5
  %792 = fneg double %781
  %793 = fmul double %791, %792
  %794 = tail call double @llvm.fmuladd.f64(double %787, double %790, double %793)
  %795 = fadd double %791, %794
  %796 = fmul double %785, %795
  %797 = fmul double %791, %796
  %798 = tail call double @llvm.fmuladd.f64(double %783, double %square500, double %797)
  %799 = fadd double %781, 1.000000e+00
  %square501 = fmul double %799, %799
  %800 = fmul double %square501, 2.000000e+00
  %801 = load double, ptr %2, align 8, !tbaa !5
  %802 = fmul double %801, 2.000000e+00
  %803 = tail call double @cos(double noundef %802) #4
  %804 = load double, ptr %1, align 8, !tbaa !5
  %805 = load double, ptr %7, align 8, !tbaa !9
  %806 = fdiv double %804, %805
  %807 = tail call double @llvm.fmuladd.f64(double %806, double 2.000000e+01, double -1.400000e+01)
  %808 = tail call double @tanh(double noundef %807) #4
  %809 = fneg double %808
  %810 = tail call double @exp(double noundef %809) #4
  %811 = load double, ptr %45, align 8, !tbaa !13
  %812 = fadd double %811, 1.000000e+00
  %square502 = fmul double %812, %812
  %813 = load double, ptr %3, align 8, !tbaa !5
  %square503 = fmul double %813, %813
  %814 = load double, ptr %42, align 8, !tbaa !12
  %815 = fmul double %814, -2.000000e+00
  %816 = load double, ptr %1, align 8, !tbaa !5
  %817 = load double, ptr %7, align 8, !tbaa !9
  %818 = fdiv double %816, %817
  %819 = load double, ptr %4, align 8, !tbaa !5
  %820 = fneg double %811
  %821 = fmul double %819, %820
  %822 = tail call double @llvm.fmuladd.f64(double %815, double %818, double %821)
  %823 = fadd double %819, %822
  %square504 = fmul double %823, %823
  %824 = tail call double @llvm.fmuladd.f64(double %square502, double %square503, double %square504)
  %825 = fmul double %811, -4.000000e+00
  %826 = fmul double %825, %square503
  %827 = tail call double @llvm.fmuladd.f64(double %811, double %811, double %826)
  %828 = tail call double @llvm.fmuladd.f64(double %811, double 2.000000e+00, double %827)
  %829 = fadd double %828, 1.000000e+00
  %830 = fadd double %811, -1.000000e+00
  %831 = fmul double %830, %823
  %832 = fmul double %square502, 5.000000e-01
  %833 = load double, ptr %2, align 8, !tbaa !5
  %834 = fmul double %833, 2.000000e+00
  %835 = tail call double @sin(double noundef %834) #4
  %836 = fmul double %832, %835
  %837 = tail call double @llvm.fmuladd.f64(double %831, double %813, double %836)
  %838 = fneg double %837
  %839 = fmul double %837, %838
  %840 = tail call double @llvm.fmuladd.f64(double %824, double %829, double %839)
  %841 = tail call double @pow(double noundef %840, double noundef 1.500000e+00) #4
  %842 = insertelement <2 x double> poison, double %604, i64 0
  %843 = insertelement <2 x double> %842, double %800, i64 1
  %844 = insertelement <2 x double> <double 0xBCFE1173C8DA9129, double poison>, double %803, i64 1
  %845 = insertelement <2 x double> poison, double %609, i64 0
  %846 = insertelement <2 x double> %845, double %798, i64 1
  %847 = tail call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %843, <2 x double> %844, <2 x double> %846)
  %848 = insertelement <2 x double> poison, double %612, i64 0
  %849 = insertelement <2 x double> %848, double %780, i64 1
  %850 = insertelement <2 x double> poison, double %626, i64 0
  %851 = insertelement <2 x double> %850, double %770, i64 1
  %852 = tail call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %847, <2 x double> %849, <2 x double> %851)
  %853 = insertelement <2 x double> poison, double %633, i64 0
  %854 = shufflevector <2 x double> %853, <2 x double> %726, <2 x i32> <i32 0, i32 2>
  %855 = fmul <2 x double> %852, %854
  %856 = insertelement <2 x double> poison, double %640, i64 0
  %857 = insertelement <2 x double> %856, double %810, i64 1
  %858 = fmul <2 x double> %857, %855
  %859 = insertelement <2 x double> poison, double %671, i64 0
  %860 = insertelement <2 x double> %859, double %841, i64 1
  %861 = fdiv <2 x double> %858, %860
  %862 = extractelement <2 x double> %861, i64 0
  %863 = fadd double %601, %862
  %864 = extractelement <2 x double> %861, i64 1
  %865 = fsub double %863, %864
  %866 = load double, ptr %1, align 8, !tbaa !5
  %867 = load double, ptr %7, align 8, !tbaa !9
  %868 = fdiv double %866, %867
  %869 = tail call double @llvm.fmuladd.f64(double %868, double 0xC0BA0AAAAAAAAAAE, double 6.000000e+03)
  %870 = fadd double %868, -9.000000e-01
  %square508 = fmul double %870, %870
  %871 = fmul double %square508, 0xC0AA0AAAAAAAAAA3
  %872 = tail call double @exp(double noundef %871) #4
  %873 = fmul double %869, -2.100000e+01
  %874 = fmul double %872, %873
  %875 = tail call double @llvm.fmuladd.f64(double %868, double 0x3D43BB73FBCF6F47, double %874)
  %876 = load double, ptr %2, align 8, !tbaa !5
  %877 = fmul double %876, 2.100000e+01
  %878 = tail call double @sin(double noundef %877) #4
  %879 = load double, ptr %1, align 8, !tbaa !5
  %880 = load double, ptr %7, align 8, !tbaa !9
  %881 = fdiv double %879, %880
  %882 = tail call double @llvm.fmuladd.f64(double %881, double -1.000000e+02, double 4.500000e+01)
  %883 = fadd double %881, -4.500000e-01
  %square509 = fmul double %883, %883
  %884 = fmul double %square509, -5.000000e+01
  %885 = tail call double @exp(double noundef %884) #4
  %886 = fmul double %882, -9.000000e+00
  %887 = fmul double %885, %886
  %888 = tail call double @llvm.fmuladd.f64(double %881, double 0xBFA0FB8DE699582B, double %887)
  %889 = fadd double %888, 0x3F909DAA520D3E00
  %890 = load double, ptr %2, align 8, !tbaa !5
  %891 = fmul double %890, 9.000000e+00
  %892 = tail call double @sin(double noundef %891) #4
  %893 = fmul double %892, %889
  %894 = tail call double @llvm.fmuladd.f64(double %875, double %878, double %893)
  %895 = load double, ptr %45, align 8, !tbaa !13
  %896 = fadd double %895, -1.000000e+00
  %897 = load double, ptr %42, align 8, !tbaa !12
  %898 = fmul double %897, -2.000000e+00
  %899 = load double, ptr %1, align 8, !tbaa !5
  %900 = load double, ptr %7, align 8, !tbaa !9
  %901 = fdiv double %899, %900
  %902 = load double, ptr %4, align 8, !tbaa !5
  %903 = fneg double %895
  %904 = fmul double %902, %903
  %905 = tail call double @llvm.fmuladd.f64(double %898, double %901, double %904)
  %906 = fadd double %902, %905
  %907 = load double, ptr %3, align 8, !tbaa !5
  %908 = fadd double %895, 1.000000e+00
  %square510 = fmul double %908, %908
  %909 = fmul double %square510, 5.000000e-01
  %910 = load double, ptr %2, align 8, !tbaa !5
  %911 = fmul double %910, 2.000000e+00
  %912 = tail call double @sin(double noundef %911) #4
  %913 = fmul double %909, %912
  %914 = load double, ptr %1, align 8, !tbaa !5
  %915 = load double, ptr %7, align 8, !tbaa !9
  %916 = fdiv double %914, %915
  %917 = tail call double @llvm.fmuladd.f64(double %916, double 2.000000e+01, double -1.400000e+01)
  %918 = tail call double @tanh(double noundef %917) #4
  %919 = fneg double %918
  %920 = tail call double @exp(double noundef %919) #4
  %921 = load double, ptr %45, align 8, !tbaa !13
  %922 = fadd double %921, 1.000000e+00
  %square511 = fmul double %922, %922
  %923 = load double, ptr %3, align 8, !tbaa !5
  %square512 = fmul double %923, %923
  %924 = load double, ptr %42, align 8, !tbaa !12
  %925 = fmul double %924, -2.000000e+00
  %926 = load double, ptr %1, align 8, !tbaa !5
  %927 = load double, ptr %7, align 8, !tbaa !9
  %928 = fdiv double %926, %927
  %929 = load double, ptr %4, align 8, !tbaa !5
  %930 = fneg double %921
  %931 = fmul double %929, %930
  %932 = tail call double @llvm.fmuladd.f64(double %925, double %928, double %931)
  %933 = fadd double %929, %932
  %square513 = fmul double %933, %933
  %934 = tail call double @llvm.fmuladd.f64(double %square511, double %square512, double %square513)
  %935 = fmul double %921, -4.000000e+00
  %936 = fmul double %935, %square512
  %937 = tail call double @llvm.fmuladd.f64(double %921, double %921, double %936)
  %938 = tail call double @llvm.fmuladd.f64(double %921, double 2.000000e+00, double %937)
  %939 = fadd double %938, 1.000000e+00
  %940 = fadd double %921, -1.000000e+00
  %941 = fmul double %940, %933
  %942 = fmul double %square511, 5.000000e-01
  %943 = load double, ptr %2, align 8, !tbaa !5
  %944 = fmul double %943, 2.000000e+00
  %945 = tail call double @sin(double noundef %944) #4
  %946 = fmul double %942, %945
  %947 = tail call double @llvm.fmuladd.f64(double %941, double %923, double %946)
  %948 = fneg double %947
  %949 = fmul double %947, %948
  %950 = tail call double @llvm.fmuladd.f64(double %934, double %939, double %949)
  %951 = tail call double @sqrt(double noundef %950) #4
  %952 = load double, ptr %1, align 8, !tbaa !5
  %953 = load double, ptr %7, align 8, !tbaa !9
  %954 = fdiv double %952, %953
  %955 = fmul double %954, %954
  %956 = fadd double %954, -9.000000e-01
  %square517 = fmul double %956, %956
  %957 = fmul double %square517, 0xC0AA0AAAAAAAAAA3
  %958 = tail call double @exp(double noundef %957) #4
  %959 = tail call double @llvm.fmuladd.f64(double %955, double 0xBCEE1173C8DA9136, double %958)
  %960 = load double, ptr %2, align 8, !tbaa !5
  %961 = fmul double %960, 2.100000e+01
  %962 = tail call double @sin(double noundef %961) #4
  %963 = load double, ptr %1, align 8, !tbaa !5
  %964 = load double, ptr %7, align 8, !tbaa !9
  %965 = fdiv double %963, %964
  %966 = fmul double %965, %965
  %967 = fmul double %965, 0xBF5D8A1258FB18E4
  %968 = tail call double @llvm.fmuladd.f64(double %966, double 0x3F5E30FC449ED59D, double %967)
  %969 = fadd double %965, -4.500000e-01
  %square518 = fmul double %969, %969
  %970 = fmul double %square518, -5.000000e+01
  %971 = tail call double @exp(double noundef %970) #4
  %972 = load double, ptr %2, align 8, !tbaa !5
  %973 = fmul double %972, 9.000000e+00
  %974 = tail call double @sin(double noundef %973) #4
  %975 = load double, ptr %45, align 8, !tbaa !13
  %976 = fadd double %975, -1.000000e+00
  %977 = load double, ptr %42, align 8, !tbaa !12
  %978 = fmul double %977, -2.000000e+00
  %979 = load double, ptr %1, align 8, !tbaa !5
  %980 = load double, ptr %7, align 8, !tbaa !9
  %981 = fdiv double %979, %980
  %982 = load double, ptr %4, align 8, !tbaa !5
  %983 = fneg double %975
  %984 = fmul double %982, %983
  %985 = tail call double @llvm.fmuladd.f64(double %978, double %981, double %984)
  %986 = fadd double %982, %985
  %987 = load double, ptr %3, align 8, !tbaa !5
  %988 = load double, ptr %2, align 8, !tbaa !5
  %989 = fmul double %988, 2.000000e+00
  %990 = tail call double @sin(double noundef %989) #4
  %991 = insertelement <2 x double> poison, double %959, i64 0
  %992 = insertelement <2 x double> %991, double %976, i64 1
  %993 = insertelement <2 x double> <double -2.100000e+01, double poison>, double %986, i64 1
  %994 = fmul <2 x double> %992, %993
  %995 = insertelement <2 x double> poison, double %968, i64 0
  %996 = insertelement <2 x double> %995, double %975, i64 1
  %997 = fadd <2 x double> %996, <double 0xBF05017922D4B0FC, double 1.000000e+00>
  %998 = insertelement <2 x double> %997, double %971, i64 0
  %999 = fadd <2 x double> %998, %997
  %1000 = fmul <2 x double> %998, %997
  %1001 = shufflevector <2 x double> %999, <2 x double> %1000, <2 x i32> <i32 0, i32 3>
  %1002 = fmul <2 x double> %1001, <double -9.000000e+00, double 5.000000e-01>
  %1003 = insertelement <2 x double> poison, double %974, i64 0
  %1004 = insertelement <2 x double> %1003, double %990, i64 1
  %1005 = fmul <2 x double> %1004, %1002
  %1006 = insertelement <2 x double> poison, double %962, i64 0
  %1007 = insertelement <2 x double> %1006, double %987, i64 1
  %1008 = tail call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %994, <2 x double> %1007, <2 x double> %1005)
  %shift584 = shufflevector <2 x double> %1008, <2 x double> poison, <2 x i32> <i32 1, i32 poison>
  %1009 = fmul <2 x double> %1008, %shift584
  %1010 = load double, ptr %1, align 8, !tbaa !5
  %1011 = load double, ptr %7, align 8, !tbaa !9
  %1012 = fdiv double %1010, %1011
  %1013 = tail call double @llvm.fmuladd.f64(double %1012, double 2.000000e+01, double -1.400000e+01)
  %1014 = tail call double @tanh(double noundef %1013) #4
  %1015 = load double, ptr %1, align 8, !tbaa !5
  %1016 = load double, ptr %7, align 8, !tbaa !9
  %1017 = fdiv double %1015, %1016
  %1018 = tail call double @llvm.fmuladd.f64(double %1017, double 2.000000e+01, double -1.400000e+01)
  %1019 = tail call double @tanh(double noundef %1018) #4
  %1020 = fneg double %1019
  %1021 = tail call double @exp(double noundef %1020) #4
  %1022 = load double, ptr %45, align 8, !tbaa !13
  %1023 = fadd double %1022, 1.000000e+00
  %square521 = fmul double %1023, %1023
  %1024 = load double, ptr %3, align 8, !tbaa !5
  %square522 = fmul double %1024, %1024
  %1025 = load double, ptr %42, align 8, !tbaa !12
  %1026 = fmul double %1025, -2.000000e+00
  %1027 = load double, ptr %1, align 8, !tbaa !5
  %1028 = load double, ptr %7, align 8, !tbaa !9
  %1029 = fdiv double %1027, %1028
  %1030 = load double, ptr %4, align 8, !tbaa !5
  %1031 = fneg double %1022
  %1032 = fmul double %1030, %1031
  %1033 = tail call double @llvm.fmuladd.f64(double %1026, double %1029, double %1032)
  %1034 = fadd double %1030, %1033
  %square523 = fmul double %1034, %1034
  %1035 = tail call double @llvm.fmuladd.f64(double %square521, double %square522, double %square523)
  %1036 = fmul double %1022, -4.000000e+00
  %1037 = fmul double %1036, %square522
  %1038 = tail call double @llvm.fmuladd.f64(double %1022, double %1022, double %1037)
  %1039 = tail call double @llvm.fmuladd.f64(double %1022, double 2.000000e+00, double %1038)
  %1040 = fadd double %1039, 1.000000e+00
  %1041 = fadd double %1022, -1.000000e+00
  %1042 = fmul double %1041, %1034
  %1043 = fmul double %square521, 5.000000e-01
  %1044 = load double, ptr %2, align 8, !tbaa !5
  %1045 = fmul double %1044, 2.000000e+00
  %1046 = tail call double @sin(double noundef %1045) #4
  %1047 = fmul double %1043, %1046
  %1048 = tail call double @llvm.fmuladd.f64(double %1042, double %1024, double %1047)
  %1049 = fneg double %1048
  %1050 = fmul double %1048, %1049
  %1051 = tail call double @llvm.fmuladd.f64(double %1035, double %1040, double %1050)
  %1052 = tail call double @sqrt(double noundef %1051) #4
  %1053 = insertelement <2 x double> poison, double %896, i64 0
  %1054 = insertelement <2 x double> %1053, double %1014, i64 1
  %1055 = insertelement <2 x double> %1054, double %906, i64 0
  %1056 = fmul <2 x double> %1054, %1055
  %1057 = insertelement <2 x double> <double poison, double 2.000000e+01>, double %907, i64 0
  %1058 = insertelement <2 x double> <double poison, double -2.000000e+01>, double %913, i64 0
  %1059 = tail call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %1056, <2 x double> %1057, <2 x double> %1058)
  %1060 = insertelement <2 x double> poison, double %894, i64 0
  %1061 = shufflevector <2 x double> %1060, <2 x double> %1009, <2 x i32> <i32 0, i32 2>
  %1062 = fmul <2 x double> %1061, %1059
  %1063 = insertelement <2 x double> poison, double %920, i64 0
  %1064 = insertelement <2 x double> %1063, double %1021, i64 1
  %1065 = fmul <2 x double> %1062, %1064
  %1066 = insertelement <2 x double> poison, double %951, i64 0
  %1067 = insertelement <2 x double> %1066, double %1052, i64 1
  %1068 = fdiv <2 x double> %1065, %1067
  %1069 = extractelement <2 x double> %1068, i64 0
  %1070 = fsub double %865, %1069
  %1071 = extractelement <2 x double> %1068, i64 1
  %1072 = fsub double %1070, %1071
  %1073 = load double, ptr %1, align 8, !tbaa !5
  %1074 = load double, ptr %7, align 8, !tbaa !9
  %1075 = fdiv double %1073, %1074
  %1076 = fmul double %1075, %1075
  %1077 = fadd double %1075, -9.000000e-01
  %square527 = fmul double %1077, %1077
  %1078 = fmul double %square527, 0xC0AA0AAAAAAAAAA3
  %1079 = tail call double @exp(double noundef %1078) #4
  %1080 = tail call double @llvm.fmuladd.f64(double %1076, double 0xBCEE1173C8DA9136, double %1079)
  %1081 = load double, ptr %2, align 8, !tbaa !5
  %1082 = fmul double %1081, 2.100000e+01
  %1083 = tail call double @sin(double noundef %1082) #4
  %1084 = load double, ptr %1, align 8, !tbaa !5
  %1085 = load double, ptr %7, align 8, !tbaa !9
  %1086 = fdiv double %1084, %1085
  %1087 = fmul double %1086, %1086
  %1088 = fmul double %1086, 0xBF5D8A1258FB18E4
  %1089 = tail call double @llvm.fmuladd.f64(double %1087, double 0x3F5E30FC449ED59D, double %1088)
  %1090 = fadd double %1089, 0xBF05017922D4B0FC
  %1091 = fadd double %1086, -4.500000e-01
  %square528 = fmul double %1091, %1091
  %1092 = fmul double %square528, -5.000000e+01
  %1093 = tail call double @exp(double noundef %1092) #4
  %1094 = fadd double %1093, %1090
  %1095 = load double, ptr %2, align 8, !tbaa !5
  %1096 = fmul double %1095, 9.000000e+00
  %1097 = tail call double @sin(double noundef %1096) #4
  %1098 = fmul double %1094, -9.000000e+00
  %1099 = load double, ptr %45, align 8, !tbaa !13
  %1100 = fadd double %1099, -1.000000e+00
  %1101 = load double, ptr %42, align 8, !tbaa !12
  %1102 = fmul double %1101, -2.000000e+00
  %1103 = load double, ptr %1, align 8, !tbaa !5
  %1104 = load double, ptr %7, align 8, !tbaa !9
  %1105 = fdiv double %1103, %1104
  %1106 = load double, ptr %4, align 8, !tbaa !5
  %1107 = fneg double %1099
  %1108 = fmul double %1106, %1107
  %1109 = tail call double @llvm.fmuladd.f64(double %1102, double %1105, double %1108)
  %1110 = fadd double %1106, %1109
  %1111 = load double, ptr %3, align 8, !tbaa !5
  %1112 = load double, ptr %2, align 8, !tbaa !5
  %1113 = fmul double %1112, 2.000000e+00
  %1114 = tail call double @sin(double noundef %1113) #4
  %1115 = load double, ptr %42, align 8, !tbaa !12
  %1116 = load <2 x double>, ptr %45, align 8
  %1117 = load double, ptr %1, align 8, !tbaa !5
  %1118 = load <2 x double>, ptr %7, align 8
  %1119 = load double, ptr %4, align 8, !tbaa !5
  %1120 = load double, ptr %3, align 8, !tbaa !5
  %1121 = load double, ptr %2, align 8, !tbaa !5
  %1122 = fmul double %1121, 2.000000e+00
  %1123 = tail call double @sin(double noundef %1122) #4
  %1124 = load double, ptr %3, align 8, !tbaa !5
  %1125 = load double, ptr %42, align 8, !tbaa !12
  %1126 = fmul double %1125, 2.000000e+00
  %1127 = fmul double %1125, -2.000000e+00
  %1128 = load double, ptr %1, align 8, !tbaa !5
  %1129 = load double, ptr %7, align 8, !tbaa !9
  %1130 = fdiv double %1128, %1129
  %1131 = load double, ptr %45, align 8, !tbaa !13
  %1132 = load double, ptr %4, align 8, !tbaa !5
  %1133 = fneg double %1131
  %1134 = fmul double %1132, %1133
  %square531 = fmul double %1124, %1124
  %1135 = fmul double %1131, -4.000000e+00
  %1136 = fmul double %square531, %1135
  %1137 = tail call double @llvm.fmuladd.f64(double %1131, double %1131, double %1136)
  %1138 = insertelement <2 x double> poison, double %1127, i64 0
  %1139 = insertelement <2 x double> %1138, double %1131, i64 1
  %1140 = insertelement <2 x double> <double poison, double 2.000000e+00>, double %1130, i64 0
  %1141 = insertelement <2 x double> poison, double %1134, i64 0
  %1142 = insertelement <2 x double> %1141, double %1137, i64 1
  %1143 = tail call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %1139, <2 x double> %1140, <2 x double> %1142)
  %1144 = insertelement <2 x double> <double poison, double 1.000000e+00>, double %1132, i64 0
  %1145 = fadd <2 x double> %1144, %1143
  %1146 = extractelement <2 x double> %1145, i64 0
  %1147 = fmul double %1126, %1146
  %1148 = extractelement <2 x double> %1145, i64 1
  %1149 = fmul double %1147, %1148
  %1150 = tail call double @llvm.fmuladd.f64(double %1130, double 2.000000e+01, double -1.400000e+01)
  %1151 = tail call double @tanh(double noundef %1150) #4
  %1152 = fneg double %1151
  %1153 = tail call double @exp(double noundef %1152) #4
  %1154 = load double, ptr %45, align 8, !tbaa !13
  %1155 = fadd double %1154, 1.000000e+00
  %square532 = fmul double %1155, %1155
  %1156 = load double, ptr %3, align 8, !tbaa !5
  %square533 = fmul double %1156, %1156
  %1157 = load double, ptr %42, align 8, !tbaa !12
  %1158 = fmul double %1157, -2.000000e+00
  %1159 = load double, ptr %1, align 8, !tbaa !5
  %1160 = load double, ptr %7, align 8, !tbaa !9
  %1161 = fdiv double %1159, %1160
  %1162 = load double, ptr %4, align 8, !tbaa !5
  %1163 = fneg double %1154
  %1164 = fmul double %1162, %1163
  %1165 = tail call double @llvm.fmuladd.f64(double %1158, double %1161, double %1164)
  %1166 = fadd double %1162, %1165
  %square534 = fmul double %1166, %1166
  %1167 = tail call double @llvm.fmuladd.f64(double %square532, double %square533, double %square534)
  %1168 = fmul double %1154, -4.000000e+00
  %1169 = fmul double %1168, %square533
  %1170 = tail call double @llvm.fmuladd.f64(double %1154, double %1154, double %1169)
  %1171 = tail call double @llvm.fmuladd.f64(double %1154, double 2.000000e+00, double %1170)
  %1172 = fadd double %1171, 1.000000e+00
  %1173 = fadd double %1154, -1.000000e+00
  %1174 = fmul double %1173, %1166
  %1175 = fmul double %square532, 5.000000e-01
  %1176 = load double, ptr %2, align 8, !tbaa !5
  %1177 = fmul double %1176, 2.000000e+00
  %1178 = tail call double @sin(double noundef %1177) #4
  %1179 = fmul double %1175, %1178
  %1180 = tail call double @llvm.fmuladd.f64(double %1174, double %1156, double %1179)
  %1181 = fneg double %1180
  %1182 = fmul double %1180, %1181
  %1183 = tail call double @llvm.fmuladd.f64(double %1167, double %1172, double %1182)
  %1184 = tail call double @pow(double noundef %1183, double noundef 1.500000e+00) #4
  %1185 = load double, ptr %45, align 8, !tbaa !13
  %1186 = fadd double %1185, 1.000000e+00
  %1187 = load double, ptr %3, align 8, !tbaa !5
  %square539 = fmul double %1187, %1187
  %1188 = load double, ptr %42, align 8, !tbaa !12
  %1189 = fmul double %1188, -2.000000e+00
  %1190 = load double, ptr %1, align 8, !tbaa !5
  %1191 = load double, ptr %7, align 8, !tbaa !9
  %1192 = fdiv double %1190, %1191
  %1193 = load double, ptr %4, align 8, !tbaa !5
  %1194 = fneg double %1185
  %1195 = fmul double %1193, %1194
  %1196 = tail call double @llvm.fmuladd.f64(double %1189, double %1192, double %1195)
  %1197 = fadd double %1193, %1196
  %1198 = fmul double %1192, %1192
  %1199 = fadd double %1192, -9.000000e-01
  %square541 = fmul double %1199, %1199
  %1200 = fmul double %square541, 0xC0AA0AAAAAAAAAA3
  %1201 = tail call double @exp(double noundef %1200) #4
  %1202 = tail call double @llvm.fmuladd.f64(double %1198, double 0xBCEE1173C8DA9136, double %1201)
  %1203 = load double, ptr %2, align 8, !tbaa !5
  %1204 = fmul double %1203, 2.100000e+01
  %1205 = tail call double @sin(double noundef %1204) #4
  %1206 = load double, ptr %1, align 8, !tbaa !5
  %1207 = load double, ptr %7, align 8, !tbaa !9
  %1208 = fdiv double %1206, %1207
  %1209 = fmul double %1208, %1208
  %1210 = fmul double %1208, 0xBF5D8A1258FB18E4
  %1211 = tail call double @llvm.fmuladd.f64(double %1209, double 0x3F5E30FC449ED59D, double %1210)
  %1212 = fadd double %1208, -4.500000e-01
  %square542 = fmul double %1212, %1212
  %1213 = fmul double %square542, -5.000000e+01
  %1214 = tail call double @exp(double noundef %1213) #4
  %1215 = load double, ptr %2, align 8, !tbaa !5
  %1216 = fmul double %1215, 9.000000e+00
  %1217 = tail call double @sin(double noundef %1216) #4
  %1218 = load double, ptr %45, align 8, !tbaa !13
  %1219 = fmul double %1218, 4.000000e+00
  %1220 = fadd double %1218, 1.000000e+00
  %square543 = fmul double %1220, %1220
  %1221 = load double, ptr %3, align 8, !tbaa !5
  %square544 = fmul double %1221, %1221
  %1222 = load double, ptr %42, align 8, !tbaa !12
  %1223 = fmul double %1222, -2.000000e+00
  %1224 = load double, ptr %1, align 8, !tbaa !5
  %1225 = load double, ptr %7, align 8, !tbaa !9
  %1226 = fdiv double %1224, %1225
  %1227 = load double, ptr %4, align 8, !tbaa !5
  %1228 = fneg double %1218
  %1229 = fmul double %1227, %1228
  %1230 = tail call double @llvm.fmuladd.f64(double %1223, double %1226, double %1229)
  %1231 = fadd double %1227, %1230
  %square545 = fmul double %1231, %1231
  %1232 = tail call double @llvm.fmuladd.f64(double %square543, double %square544, double %square545)
  %1233 = fmul double %1219, %1232
  %1234 = fmul double %1221, %1233
  %1235 = load double, ptr %2, align 8, !tbaa !5
  %1236 = fmul double %1235, 2.000000e+00
  %1237 = tail call double @sin(double noundef %1236) #4
  %1238 = load double, ptr %45, align 8, !tbaa !13
  %1239 = tail call double @llvm.fmuladd.f64(double %1238, double 2.000000e+00, double -2.000000e+00)
  %1240 = load double, ptr %42, align 8, !tbaa !12
  %1241 = load double, ptr %1, align 8, !tbaa !5
  %1242 = load double, ptr %7, align 8, !tbaa !9
  %1243 = load double, ptr %4, align 8, !tbaa !5
  %1244 = load double, ptr %3, align 8, !tbaa !5
  %square547 = fmul double %1244, %1244
  %1245 = fmul double %1238, -4.000000e+00
  %1246 = fmul double %1245, %square547
  %1247 = tail call double @llvm.fmuladd.f64(double %1238, double %1238, double %1246)
  %1248 = tail call double @llvm.fmuladd.f64(double %1238, double 2.000000e+00, double %1247)
  %1249 = fadd double %1248, 1.000000e+00
  %1250 = load double, ptr %2, align 8, !tbaa !5
  %1251 = fmul double %1250, 2.000000e+00
  %1252 = tail call double @sin(double noundef %1251) #4
  %1253 = load double, ptr %45, align 8, !tbaa !13
  %1254 = fadd double %1253, -1.000000e+00
  %square549 = fmul double %1254, %1254
  %1255 = fmul double %square549, 2.000000e+00
  %1256 = load double, ptr %3, align 8, !tbaa !5
  %square550 = fmul double %1256, %1256
  %1257 = fmul double %1254, 2.000000e+00
  %1258 = load double, ptr %42, align 8, !tbaa !12
  %1259 = fmul double %1258, -2.000000e+00
  %1260 = load double, ptr %1, align 8, !tbaa !5
  %1261 = load double, ptr %7, align 8, !tbaa !9
  %1262 = fdiv double %1260, %1261
  %1263 = load double, ptr %4, align 8, !tbaa !5
  %1264 = fneg double %1253
  %1265 = fmul double %1263, %1264
  %1266 = tail call double @llvm.fmuladd.f64(double %1259, double %1262, double %1265)
  %1267 = fadd double %1263, %1266
  %1268 = fmul double %1257, %1267
  %1269 = fmul double %1263, %1268
  %1270 = tail call double @llvm.fmuladd.f64(double %1255, double %square550, double %1269)
  %1271 = fadd double %1253, 1.000000e+00
  %square551 = fmul double %1271, %1271
  %1272 = fmul double %square551, 2.000000e+00
  %1273 = load double, ptr %2, align 8, !tbaa !5
  %1274 = fmul double %1273, 2.000000e+00
  %1275 = tail call double @cos(double noundef %1274) #4
  %1276 = tail call double @llvm.fmuladd.f64(double %1272, double %1275, double %1270)
  %1277 = load double, ptr %1, align 8, !tbaa !5
  %1278 = load double, ptr %7, align 8, !tbaa !9
  %1279 = fdiv double %1277, %1278
  %1280 = tail call double @llvm.fmuladd.f64(double %1279, double 2.000000e+01, double -1.400000e+01)
  %1281 = tail call double @tanh(double noundef %1280) #4
  %1282 = fneg double %1281
  %1283 = tail call double @exp(double noundef %1282) #4
  %1284 = load double, ptr %1, align 8, !tbaa !5
  %1285 = load double, ptr %7, align 8, !tbaa !9
  %1286 = fdiv double %1284, %1285
  %1287 = load double, ptr %45, align 8, !tbaa !13
  %1288 = fadd double %1287, 1.000000e+00
  %square552 = fmul double %1288, %1288
  %1289 = load double, ptr %3, align 8, !tbaa !5
  %square553 = fmul double %1289, %1289
  %1290 = load double, ptr %42, align 8, !tbaa !12
  %1291 = fmul double %1290, -2.000000e+00
  %1292 = load double, ptr %4, align 8, !tbaa !5
  %1293 = fneg double %1287
  %1294 = fmul double %1292, %1293
  %1295 = tail call double @llvm.fmuladd.f64(double %1291, double %1286, double %1294)
  %1296 = fadd double %1292, %1295
  %square554 = fmul double %1296, %1296
  %1297 = tail call double @llvm.fmuladd.f64(double %square552, double %square553, double %square554)
  %1298 = fmul double %1287, -4.000000e+00
  %1299 = fmul double %1298, %square553
  %1300 = tail call double @llvm.fmuladd.f64(double %1287, double %1287, double %1299)
  %1301 = tail call double @llvm.fmuladd.f64(double %1287, double 2.000000e+00, double %1300)
  %1302 = fadd double %1301, 1.000000e+00
  %1303 = fadd double %1287, -1.000000e+00
  %1304 = fmul double %1303, %1296
  %1305 = fmul double %square552, 5.000000e-01
  %1306 = load double, ptr %2, align 8, !tbaa !5
  %1307 = fmul double %1306, 2.000000e+00
  %1308 = tail call double @sin(double noundef %1307) #4
  %1309 = fmul double %1305, %1308
  %1310 = tail call double @llvm.fmuladd.f64(double %1304, double %1289, double %1309)
  %1311 = fneg double %1310
  %1312 = fmul double %1310, %1311
  %1313 = tail call double @llvm.fmuladd.f64(double %1297, double %1302, double %1312)
  %1314 = tail call double @pow(double noundef %1313, double noundef 1.500000e+00) #4
  %1315 = fmul double %1286, %1314
  %1316 = insertelement <2 x double> poison, double %1115, i64 0
  %1317 = insertelement <2 x double> %1316, double %1240, i64 1
  %1318 = fmul <2 x double> %1317, <double -2.000000e+00, double -2.000000e+00>
  %1319 = insertelement <2 x double> %1116, double %1238, i64 1
  %1320 = fadd <2 x double> %1319, <double -1.000000e+00, double -1.000000e+00>
  %1321 = fmul <2 x double> %1318, %1320
  %1322 = insertelement <2 x double> poison, double %1080, i64 0
  %1323 = insertelement <2 x double> %1322, double %1186, i64 1
  %1324 = insertelement <2 x double> %1323, double -2.100000e+01, i64 0
  %1325 = fmul <2 x double> %1323, %1324
  %1326 = insertelement <2 x double> poison, double %1097, i64 0
  %1327 = insertelement <2 x double> %1326, double %1197, i64 1
  %1328 = insertelement <2 x double> %1327, double %1098, i64 0
  %1329 = fmul <2 x double> %1327, %1328
  %1330 = insertelement <2 x double> poison, double %1083, i64 0
  %1331 = insertelement <2 x double> %1330, double %square539, i64 1
  %1332 = tail call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %1325, <2 x double> %1331, <2 x double> %1329)
  %1333 = insertelement <2 x double> poison, double %1100, i64 0
  %1334 = insertelement <2 x double> %1333, double %1202, i64 1
  %1335 = insertelement <2 x double> <double poison, double -2.100000e+01>, double %1110, i64 0
  %1336 = fmul <2 x double> %1334, %1335
  %1337 = insertelement <2 x double> poison, double %1099, i64 0
  %1338 = insertelement <2 x double> %1337, double %1211, i64 1
  %1339 = fadd <2 x double> %1338, <double 1.000000e+00, double 0xBF05017922D4B0FC>
  %1340 = insertelement <2 x double> %1339, double %1214, i64 1
  %1341 = fmul <2 x double> %1340, %1339
  %1342 = fadd <2 x double> %1340, %1339
  %1343 = shufflevector <2 x double> %1341, <2 x double> %1342, <2 x i32> <i32 0, i32 3>
  %1344 = fmul <2 x double> %1343, <double 5.000000e-01, double -9.000000e+00>
  %1345 = insertelement <2 x double> poison, double %1114, i64 0
  %1346 = insertelement <2 x double> %1345, double %1217, i64 1
  %1347 = fmul <2 x double> %1344, %1346
  %1348 = insertelement <2 x double> poison, double %1111, i64 0
  %1349 = insertelement <2 x double> %1348, double %1205, i64 1
  %1350 = tail call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %1336, <2 x double> %1349, <2 x double> %1347)
  %1351 = fmul <2 x double> %1332, %1350
  %1352 = insertelement <2 x double> poison, double %1117, i64 0
  %1353 = insertelement <2 x double> %1352, double %1241, i64 1
  %1354 = insertelement <2 x double> %1118, double %1242, i64 1
  %1355 = fdiv <2 x double> %1353, %1354
  %1356 = fneg <2 x double> %1319
  %1357 = insertelement <2 x double> poison, double %1119, i64 0
  %1358 = insertelement <2 x double> %1357, double %1243, i64 1
  %1359 = fmul <2 x double> %1358, %1356
  %1360 = tail call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %1318, <2 x double> %1355, <2 x double> %1359)
  %1361 = fadd <2 x double> %1358, %1360
  %1362 = extractelement <2 x double> %1361, i64 1
  %1363 = fmul double %1239, %1362
  %1364 = fmul double %1244, %1363
  %1365 = tail call double @llvm.fmuladd.f64(double %square543, double %1237, double %1364)
  %1366 = fmul double %1365, -5.000000e-01
  %1367 = fmul double %1249, %1366
  %1368 = tail call double @llvm.fmuladd.f64(double %1234, double %1227, double %1367)
  %1369 = fmul <2 x double> %1320, %1361
  %1370 = fadd <2 x double> %1319, <double 1.000000e+00, double 1.000000e+00>
  %1371 = fmul <2 x double> %1370, %1370
  %1372 = fmul <2 x double> %1371, <double 5.000000e-01, double 5.000000e-01>
  %1373 = insertelement <2 x double> poison, double %1123, i64 0
  %1374 = insertelement <2 x double> %1373, double %1252, i64 1
  %1375 = fmul <2 x double> %1372, %1374
  %1376 = insertelement <2 x double> poison, double %1120, i64 0
  %1377 = insertelement <2 x double> %1376, double %1244, i64 1
  %1378 = tail call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %1369, <2 x double> %1377, <2 x double> %1375)
  %1379 = insertelement <2 x double> %1321, double 5.000000e-01, i64 1
  %1380 = fmul <2 x double> %1379, %1378
  %1381 = insertelement <2 x double> poison, double %1124, i64 0
  %1382 = insertelement <2 x double> %1381, double %1276, i64 1
  %1383 = insertelement <2 x double> poison, double %1149, i64 0
  %1384 = insertelement <2 x double> %1383, double %1368, i64 1
  %1385 = tail call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %1380, <2 x double> %1382, <2 x double> %1384)
  %1386 = fmul <2 x double> %1351, %1385
  %1387 = insertelement <2 x double> poison, double %1153, i64 0
  %1388 = insertelement <2 x double> %1387, double %1283, i64 1
  %1389 = fmul <2 x double> %1388, %1386
  %1390 = insertelement <2 x double> poison, double %1184, i64 0
  %1391 = insertelement <2 x double> %1390, double %1315, i64 1
  %1392 = fdiv <2 x double> %1389, %1391
  %1393 = extractelement <2 x double> %1392, i64 0
  %1394 = fsub double %1072, %1393
  %1395 = extractelement <2 x double> %1392, i64 1
  %1396 = fadd double %1394, %1395
  %1397 = load double, ptr %45, align 8, !tbaa !13
  %1398 = load double, ptr %3, align 8, !tbaa !5
  %square559 = fmul double %1398, %1398
  %1399 = load double, ptr %42, align 8, !tbaa !12
  %1400 = fmul double %1399, -2.000000e+00
  %1401 = load double, ptr %1, align 8, !tbaa !5
  %1402 = load double, ptr %7, align 8, !tbaa !9
  %1403 = load double, ptr %4, align 8, !tbaa !5
  %1404 = fneg double %1397
  %1405 = fmul double %1403, %1404
  %1406 = fdiv double %1401, %1402
  %1407 = fadd double %1406, -9.000000e-01
  %square561 = fmul double %1407, %1407
  %1408 = fmul double %square561, 0xC0AA0AAAAAAAAAA3
  %1409 = tail call double @exp(double noundef %1408) #4
  %1410 = fmul double %1409, -2.100000e+01
  %1411 = load double, ptr %2, align 8, !tbaa !5
  %1412 = fmul double %1411, 2.100000e+01
  %1413 = tail call double @cos(double noundef %1412) #4
  %1414 = load double, ptr %1, align 8, !tbaa !5
  %1415 = load double, ptr %7, align 8, !tbaa !9
  %1416 = fdiv double %1414, %1415
  %1417 = fmul double %1416, %1416
  %1418 = fmul double %1416, 0x3F909DAA520D3E00
  %1419 = tail call double @llvm.fmuladd.f64(double %1417, double 0xBF90FB8DE699582B, double %1418)
  %1420 = fadd double %1419, 0x3F37A1A8472F471D
  %1421 = fadd double %1416, -4.500000e-01
  %square562 = fmul double %1421, %1421
  %1422 = fmul double %square562, -5.000000e+01
  %1423 = tail call double @exp(double noundef %1422) #4
  %1424 = tail call double @llvm.fmuladd.f64(double %1423, double -9.000000e+00, double %1420)
  %1425 = load double, ptr %2, align 8, !tbaa !5
  %1426 = fmul double %1425, 9.000000e+00
  %1427 = tail call double @cos(double noundef %1426) #4
  %1428 = load double, ptr %1, align 8, !tbaa !5
  %1429 = load double, ptr %7, align 8, !tbaa !9
  %1430 = fdiv double %1428, %1429
  %1431 = tail call double @llvm.fmuladd.f64(double %1430, double 2.000000e+01, double -1.400000e+01)
  %1432 = tail call double @tanh(double noundef %1431) #4
  %1433 = fneg double %1432
  %1434 = tail call double @exp(double noundef %1433) #4
  %1435 = load double, ptr %1, align 8, !tbaa !5
  %1436 = load double, ptr %7, align 8, !tbaa !9
  %1437 = fdiv double %1435, %1436
  %1438 = load double, ptr %45, align 8, !tbaa !13
  %1439 = fadd double %1438, 1.000000e+00
  %square563 = fmul double %1439, %1439
  %1440 = load double, ptr %3, align 8, !tbaa !5
  %square564 = fmul double %1440, %1440
  %1441 = load double, ptr %42, align 8, !tbaa !12
  %1442 = fmul double %1441, -2.000000e+00
  %1443 = load double, ptr %4, align 8, !tbaa !5
  %1444 = fneg double %1438
  %1445 = fmul double %1443, %1444
  %1446 = tail call double @llvm.fmuladd.f64(double %1442, double %1437, double %1445)
  %1447 = fadd double %1443, %1446
  %square565 = fmul double %1447, %1447
  %1448 = tail call double @llvm.fmuladd.f64(double %square563, double %square564, double %square565)
  %1449 = fmul double %1438, -4.000000e+00
  %1450 = fmul double %1449, %square564
  %1451 = tail call double @llvm.fmuladd.f64(double %1438, double %1438, double %1450)
  %1452 = tail call double @llvm.fmuladd.f64(double %1438, double 2.000000e+00, double %1451)
  %1453 = fadd double %1452, 1.000000e+00
  %1454 = fadd double %1438, -1.000000e+00
  %1455 = fmul double %1454, %1447
  %1456 = fmul double %square563, 5.000000e-01
  %1457 = load double, ptr %2, align 8, !tbaa !5
  %1458 = fmul double %1457, 2.000000e+00
  %1459 = tail call double @sin(double noundef %1458) #4
  %1460 = fmul double %1456, %1459
  %1461 = tail call double @llvm.fmuladd.f64(double %1455, double %1440, double %1460)
  %1462 = fneg double %1461
  %1463 = fmul double %1461, %1462
  %1464 = tail call double @llvm.fmuladd.f64(double %1448, double %1453, double %1463)
  %1465 = tail call double @sqrt(double noundef %1464) #4
  %1466 = load double, ptr %45, align 8, !tbaa !13
  %1467 = insertelement <2 x double> poison, double %1397, i64 0
  %1468 = insertelement <2 x double> %1467, double %1466, i64 1
  %1469 = fadd <2 x double> %1468, <double 1.000000e+00, double 1.000000e+00>
  %1470 = fmul <2 x double> %1469, %1469
  %1471 = load double, ptr %2, align 8, !tbaa !5
  %1472 = fmul double %1471, 2.000000e+00
  %1473 = tail call double @sin(double noundef %1472) #4
  %1474 = load double, ptr %45, align 8, !tbaa !13
  %1475 = insertelement <2 x double> poison, double %1400, i64 0
  %1476 = insertelement <2 x double> %1475, double %1474, i64 1
  %1477 = insertelement <2 x double> <double poison, double 2.000000e+00>, double %1406, i64 0
  %1478 = insertelement <2 x double> <double poison, double -2.000000e+00>, double %1405, i64 0
  %1479 = tail call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %1476, <2 x double> %1477, <2 x double> %1478)
  %1480 = load double, ptr %42, align 8, !tbaa !12
  %1481 = fmul double %1480, -2.000000e+00
  %1482 = load double, ptr %1, align 8, !tbaa !5
  %1483 = load double, ptr %7, align 8, !tbaa !9
  %1484 = fdiv double %1482, %1483
  %1485 = load double, ptr %4, align 8, !tbaa !5
  %1486 = fneg double %1474
  %1487 = fmul double %1485, %1486
  %1488 = tail call double @llvm.fmuladd.f64(double %1481, double %1484, double %1487)
  %1489 = fadd double %1485, %1488
  %1490 = insertelement <2 x double> poison, double %1403, i64 0
  %1491 = insertelement <2 x double> %1490, double %1489, i64 1
  %1492 = fadd <2 x double> %1491, %1479
  %1493 = fmul <2 x double> %1491, %1479
  %1494 = shufflevector <2 x double> %1492, <2 x double> %1493, <2 x i32> <i32 0, i32 3>
  %1495 = load double, ptr %3, align 8, !tbaa !5
  %1496 = insertelement <2 x double> %1494, double %1495, i64 1
  %1497 = fmul <2 x double> %1496, %1494
  %1498 = insertelement <2 x double> poison, double %square559, i64 0
  %1499 = insertelement <2 x double> %1498, double %1473, i64 1
  %1500 = tail call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %1470, <2 x double> %1499, <2 x double> %1497)
  %1501 = insertelement <2 x double> poison, double %1406, i64 0
  %1502 = insertelement <2 x double> %1501, double %1484, i64 1
  %1503 = fmul <2 x double> %1502, %1502
  %1504 = fadd double %1484, -9.000000e-01
  %square570 = fmul double %1504, %1504
  %1505 = fmul double %square570, 0xC0AA0AAAAAAAAAA3
  %1506 = tail call double @exp(double noundef %1505) #4
  %1507 = insertelement <2 x double> poison, double %1410, i64 0
  %1508 = insertelement <2 x double> %1507, double %1506, i64 1
  %1509 = tail call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %1503, <2 x double> <double 0x3D33BB73FBCF6F47, double 0xBCEE1173C8DA9136>, <2 x double> %1508)
  %1510 = fmul <2 x double> %1509, <double 2.100000e+01, double -2.100000e+01>
  %1511 = load double, ptr %2, align 8, !tbaa !5
  %1512 = fmul double %1511, 2.100000e+01
  %1513 = tail call double @sin(double noundef %1512) #4
  %1514 = load double, ptr %1, align 8, !tbaa !5
  %1515 = load double, ptr %7, align 8, !tbaa !9
  %1516 = fdiv double %1514, %1515
  %1517 = fmul double %1516, %1516
  %1518 = fmul double %1516, 0xBF5D8A1258FB18E4
  %1519 = tail call double @llvm.fmuladd.f64(double %1517, double 0x3F5E30FC449ED59D, double %1518)
  %1520 = fadd double %1519, 0xBF05017922D4B0FC
  %1521 = fadd double %1516, -4.500000e-01
  %square571 = fmul double %1521, %1521
  %1522 = fmul double %square571, -5.000000e+01
  %1523 = tail call double @exp(double noundef %1522) #4
  %1524 = fadd double %1523, %1520
  %1525 = load double, ptr %2, align 8, !tbaa !5
  %1526 = fmul double %1525, 9.000000e+00
  %1527 = tail call double @sin(double noundef %1526) #4
  %1528 = insertelement <2 x double> poison, double %1424, i64 0
  %1529 = insertelement <2 x double> %1528, double %1524, i64 1
  %1530 = fmul <2 x double> %1529, <double 9.000000e+00, double -9.000000e+00>
  %1531 = insertelement <2 x double> poison, double %1427, i64 0
  %1532 = insertelement <2 x double> %1531, double %1527, i64 1
  %1533 = fmul <2 x double> %1532, %1530
  %1534 = insertelement <2 x double> poison, double %1413, i64 0
  %1535 = insertelement <2 x double> %1534, double %1513, i64 1
  %1536 = tail call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %1510, <2 x double> %1535, <2 x double> %1533)
  %1537 = fmul <2 x double> %1500, %1536
  %1538 = load double, ptr %1, align 8, !tbaa !5
  %1539 = load double, ptr %7, align 8, !tbaa !9
  %1540 = fdiv double %1538, %1539
  %1541 = tail call double @llvm.fmuladd.f64(double %1540, double 2.000000e+01, double -1.400000e+01)
  %1542 = tail call double @tanh(double noundef %1541) #4
  %1543 = fneg double %1542
  %1544 = tail call double @exp(double noundef %1543) #4
  %1545 = insertelement <2 x double> poison, double %1434, i64 0
  %1546 = insertelement <2 x double> %1545, double %1544, i64 1
  %1547 = fmul <2 x double> %1546, %1537
  %1548 = load double, ptr %1, align 8, !tbaa !5
  %1549 = load double, ptr %7, align 8, !tbaa !9
  %1550 = fdiv double %1548, %1549
  %1551 = load double, ptr %45, align 8, !tbaa !13
  %1552 = fadd double %1551, 1.000000e+00
  %square572 = fmul double %1552, %1552
  %1553 = load double, ptr %3, align 8, !tbaa !5
  %square573 = fmul double %1553, %1553
  %1554 = load double, ptr %42, align 8, !tbaa !12
  %1555 = fmul double %1554, -2.000000e+00
  %1556 = load double, ptr %4, align 8, !tbaa !5
  %1557 = fneg double %1551
  %1558 = fmul double %1556, %1557
  %1559 = tail call double @llvm.fmuladd.f64(double %1555, double %1550, double %1558)
  %1560 = fadd double %1556, %1559
  %square574 = fmul double %1560, %1560
  %1561 = tail call double @llvm.fmuladd.f64(double %square572, double %square573, double %square574)
  %1562 = fmul double %1551, -4.000000e+00
  %1563 = fmul double %1562, %square573
  %1564 = tail call double @llvm.fmuladd.f64(double %1551, double %1551, double %1563)
  %1565 = tail call double @llvm.fmuladd.f64(double %1551, double 2.000000e+00, double %1564)
  %1566 = fadd double %1565, 1.000000e+00
  %1567 = fadd double %1551, -1.000000e+00
  %1568 = fmul double %1567, %1560
  %1569 = fmul double %square572, 5.000000e-01
  %1570 = load double, ptr %2, align 8, !tbaa !5
  %1571 = fmul double %1570, 2.000000e+00
  %1572 = tail call double @sin(double noundef %1571) #4
  %1573 = fmul double %1569, %1572
  %1574 = tail call double @llvm.fmuladd.f64(double %1568, double %1553, double %1573)
  %1575 = fneg double %1574
  %1576 = fmul double %1574, %1575
  %1577 = tail call double @llvm.fmuladd.f64(double %1561, double %1566, double %1576)
  %1578 = tail call double @sqrt(double noundef %1577) #4
  %1579 = insertelement <2 x double> poison, double %1437, i64 0
  %1580 = insertelement <2 x double> %1579, double %1550, i64 1
  %1581 = insertelement <2 x double> poison, double %1465, i64 0
  %1582 = insertelement <2 x double> %1581, double %1578, i64 1
  %1583 = fmul <2 x double> %1580, %1582
  %1584 = fdiv <2 x double> %1547, %1583
  %1585 = extractelement <2 x double> %1584, i64 0
  %1586 = fadd double %1396, %1585
  %1587 = extractelement <2 x double> %1584, i64 1
  %1588 = fadd double %1586, %1587
  %1589 = load double, ptr %1, align 8, !tbaa !5
  %1590 = load double, ptr %7, align 8, !tbaa !9
  %1591 = fdiv double %1589, %1590
  %1592 = load double, ptr %45, align 8, !tbaa !13
  %1593 = fadd double %1592, 1.000000e+00
  %square578 = fmul double %1593, %1593
  %1594 = load double, ptr %3, align 8, !tbaa !5
  %square579 = fmul double %1594, %1594
  %1595 = load double, ptr %42, align 8, !tbaa !12
  %1596 = fmul double %1595, -2.000000e+00
  %1597 = load double, ptr %4, align 8, !tbaa !5
  %1598 = fneg double %1592
  %1599 = fmul double %1597, %1598
  %1600 = tail call double @llvm.fmuladd.f64(double %1596, double %1591, double %1599)
  %1601 = fadd double %1597, %1600
  %square580 = fmul double %1601, %1601
  %1602 = tail call double @llvm.fmuladd.f64(double %square578, double %square579, double %square580)
  %1603 = fmul double %1592, -4.000000e+00
  %1604 = fmul double %1603, %square579
  %1605 = tail call double @llvm.fmuladd.f64(double %1592, double %1592, double %1604)
  %1606 = tail call double @llvm.fmuladd.f64(double %1592, double 2.000000e+00, double %1605)
  %1607 = fadd double %1606, 1.000000e+00
  %1608 = fadd double %1592, -1.000000e+00
  %1609 = fmul double %1608, %1601
  %1610 = fmul double %square578, 5.000000e-01
  %1611 = load double, ptr %2, align 8, !tbaa !5
  %1612 = fmul double %1611, 2.000000e+00
  %1613 = tail call double @sin(double noundef %1612) #4
  %1614 = fmul double %1610, %1613
  %1615 = tail call double @llvm.fmuladd.f64(double %1609, double %1594, double %1614)
  %1616 = fneg double %1615
  %1617 = fmul double %1615, %1616
  %1618 = tail call double @llvm.fmuladd.f64(double %1602, double %1607, double %1617)
  %1619 = tail call double @sqrt(double noundef %1618) #4
  %1620 = fmul double %1591, %1619
  %1621 = fneg double %1588
  %1622 = fdiv double %1621, %1620
  %1623 = tail call double @llvm.fmuladd.f64(double %35, double %41, double %1622)
  ret double %1623
}

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

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

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

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

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

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

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

; 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 nocallback nofree nosync nounwind speculatable willreturn memory(none) }
attributes #2 = { 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 #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 = !{!"_ZTS41Refined_ZoniShiftedGyro_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