#include <complex>
#include <vector>
#include <math.h>
#include <thread>
extern "C" const char* D0_D__Ks_892_0_Kp_pim__rho_770_0_pip_pim___name() {  return "D0[D]{K*(892)0{K+,pi-},rho(770)0{pi+,pi-}}"; } 
extern "C" std::complex<double> D0_D__Ks_892_0_Kp_pim__rho_770_0_pip_pim__(double const* x0, double const* x1){
  auto v3067068972 = sqrt((0.01948) + x1[12]*x1[12] + x1[13]*x1[13] + x1[14]*x1[14]);
  auto v2683369444 = sqrt((0.01948) + x1[4]*x1[4] + x1[5]*x1[5] + x1[6]*x1[6]);
  auto v732589286 = sqrt((0.243717) + x1[0]*x1[0] + x1[1]*x1[1] + x1[2]*x1[2]);
  auto v604511646 = sqrt((0.01948) + x1[8]*x1[8] + x1[9]*x1[9] + x1[10]*x1[10]);
  auto v4237252271 = (-1.)*(x1[2] + x1[6] + x1[14] + x1[10])*(x1[2] + x1[6] + x1[14] + x1[10]) + (v732589286 + v2683369444 + v3067068972 + v604511646)*(v732589286 + v2683369444 + v3067068972 + v604511646) + (-1.)*(x1[1] + x1[5] + x1[13] + x1[9])*(x1[1] + x1[5] + x1[13] + x1[9]) + (-1.)*(x1[0] + x1[4] + x1[12] + x1[8])*(x1[0] + x1[4] + x1[12] + x1[8]);
  auto v3864776319 = (-1.)*(x1[14] + x1[6])*(x1[14] + x1[6]) + (v3067068972 + v2683369444)*(v3067068972 + v2683369444) + (-1.)*(x1[13] + x1[5])*(x1[13] + x1[5]) + (-1.)*(x1[12] + x1[4])*(x1[12] + x1[4]);
  auto v3303589013 = (-1.)*(x1[14] + x1[10])*(x1[14] + x1[10]) + (v3067068972 + v604511646)*(v3067068972 + v604511646) + (-1.)*(x1[13] + x1[9])*(x1[13] + x1[9]) + (-1.)*(x1[12] + x1[8])*(x1[12] + x1[8]);
  auto v2830794559 = (-1.)*(x1[2] + x1[10] + x1[14] + x1[6])*(x1[2] + x1[10] + x1[14] + x1[6]) + (v732589286 + v604511646 + v3067068972 + v2683369444)*(v732589286 + v604511646 + v3067068972 + v2683369444) + (-1.)*(x1[1] + x1[9] + x1[13] + x1[5])*(x1[1] + x1[9] + x1[13] + x1[5]) + (-1.)*(x1[0] + x1[8] + x1[12] + x1[4])*(x1[0] + x1[8] + x1[12] + x1[4]);
  auto v1904166516 = (-1.)*(x1[2] + x1[6] + x1[14] + x1[10])*(x1[2] + x1[6] + x1[14] + x1[10]) + (v732589286 + v2683369444 + v3067068972 + v604511646)*(v732589286 + v2683369444 + v3067068972 + v604511646) + (-1.)*(x1[1] + x1[5] + x1[13] + x1[9])*(x1[1] + x1[5] + x1[13] + x1[9]) + (-1.)*(x1[0] + x1[4] + x1[12] + x1[8])*(x1[0] + x1[4] + x1[12] + x1[8]);
  auto v1521070335 = (-1.)*(x1[2] + x1[10])*(x1[2] + x1[10]) + (v732589286 + v604511646)*(v732589286 + v604511646) + (-1.)*(x1[1] + x1[9])*(x1[1] + x1[9]) + (-1.)*(x1[0] + x1[8])*(x1[0] + x1[8]);
  auto v1139362541 = (-1.)*(x1[2] + x1[6])*(x1[2] + x1[6]) + (v732589286 + v2683369444)*(v732589286 + v2683369444) + (-1.)*(x1[1] + x1[5])*(x1[1] + x1[5]) + (-1.)*(x1[0] + x1[4])*(x1[0] + x1[4]);
  auto v3425644516 = (0.25)*(v4237252271-(2.)*v1139362541-(2.)*v3303589013 + ((v1139362541-v3303589013)*(v1139362541-v3303589013))/(v4237252271));
  auto v3405928622 = (0.25)*(v3864776319-(0.03896)-(0.03896));
  auto v3287524337 = (0.25)*(v3303589013-(0.03896)-(0.03896));
  auto v3266574711 = ((-1.)*(x1[2] + x1[6] + x1[14] + x1[10])*(x1[2] + x1[6]-(x1[14] + x1[10])) + (v732589286 + v2683369444-(v3067068972 + v604511646))*(v732589286 + v2683369444 + v3067068972 + v604511646) + (-1.)*(x1[1] + x1[5] + x1[13] + x1[9])*(x1[1] + x1[5]-(x1[13] + x1[9])) + (-1.)*(x1[0] + x1[4] + x1[12] + x1[8])*(x1[0] + x1[4]-(x1[12] + x1[8])))/(v1904166516);
  auto v3199098040 = std::abs((0.25)*(v3864776319-(0.03896)-(0.03896)));
  auto v2663927459 = (0.25)*(v2830794559-(2.)*v1521070335-(2.)*v3864776319 + ((v1521070335-v3864776319)*(v1521070335-v3864776319))/(v2830794559));
  auto v2222218056 = std::abs((0.25)*(v1521070335-(0.487434)-(0.03896) + ((0.050282))/(v1521070335)));
  auto v1605088813 = ((-1.)*(x1[2] + x1[10] + x1[14] + x1[6])*(x1[2] + x1[10]-(x1[14] + x1[6])) + (v732589286 + v604511646-(v3067068972 + v2683369444))*(v732589286 + v604511646 + v3067068972 + v2683369444) + (-1.)*(x1[1] + x1[9] + x1[13] + x1[5])*(x1[1] + x1[9]-(x1[13] + x1[5])) + (-1.)*(x1[0] + x1[8] + x1[12] + x1[4])*(x1[0] + x1[8]-(x1[12] + x1[4])))/(v1904166516);
  auto v1148200210 = (0.25)*(v1139362541-(0.487434)-(0.03896) + ((0.050282))/(v1139362541));
  auto v865896472 = std::abs((0.25)*(v1139362541-(0.487434)-(0.03896) + ((0.050282))/(v1139362541)));
  auto v263973954 = (0.25)*(v1521070335-(0.487434)-(0.03896) + ((0.050282))/(v1521070335));
  auto v139006945 = std::abs((0.25)*(v3303589013-(0.03896)-(0.03896)));
  auto v3905297392 = sqrt(((9.))/((9.) + (3.)*v2663927459*x0[0]*x0[0] + v2663927459*x0[0]*x0[0]*v2663927459*x0[0]*x0[0]));
  auto v3566995419 = (0.333333)*((-1.)*(x1[2] + x1[6]-(x1[14] + x1[10])-v3266574711*(x1[2] + x1[6] + x1[14] + x1[10]))*(x1[2] + x1[6]-(x1[14] + x1[10])-v3266574711*(x1[2] + x1[6] + x1[14] + x1[10])) + (v732589286 + v2683369444-(v3067068972 + v604511646)-v3266574711*(v732589286 + v2683369444 + v3067068972 + v604511646))*(v732589286 + v2683369444-(v3067068972 + v604511646)-v3266574711*(v732589286 + v2683369444 + v3067068972 + v604511646)) + (-1.)*(x1[1] + x1[5]-(x1[13] + x1[9])-v3266574711*(x1[1] + x1[5] + x1[13] + x1[9]))*(x1[1] + x1[5]-(x1[13] + x1[9])-v3266574711*(x1[1] + x1[5] + x1[13] + x1[9])) + (-1.)*(x1[0] + x1[4]-(x1[12] + x1[8])-v3266574711*(x1[0] + x1[4] + x1[12] + x1[8]))*(x1[0] + x1[4]-(x1[12] + x1[8])-v3266574711*(x1[0] + x1[4] + x1[12] + x1[8])));
  auto v3544975691 = (sqrt((0.900316)*x0[1]*x0[2]*x0[1]*sqrt(x0[2]*x0[2] + x0[1]*x0[1])*1./sqrt(x0[1]*sqrt(x0[2]*x0[2] + x0[1]*x0[1]) + x0[1]*x0[1]))*sqrt(((1.))/((1.) + v865896472*x0[3]*x0[3])))/(x0[1]*x0[1]-v1139362541-((std::complex<double>(0.,1.)*x0[1]*x0[2]*((1.) + std::abs((0.25)*(x0[1]*x0[1]-(0.487434)-(0.03896) + ((0.050282))/(x0[1]*x0[1])))*x0[3]*x0[3])*sqrt((((v1148200210>(0.))?v1148200210:(0.)))/(std::abs((0.25)*(x0[1]*x0[1]-(0.487434)-(0.03896) + ((0.050282))/(x0[1]*x0[1])))))*((v1148200210>(0.))?v1148200210:(0.))*x0[1]*1./sqrt(v1139362541))/(std::abs((0.25)*(x0[1]*x0[1]-(0.487434)-(0.03896) + ((0.050282))/(x0[1]*x0[1])))))/((1.) + ((v1148200210>(0.))?v1148200210:(0.))*x0[3]*x0[3]));
  auto v3467292341 = (-1.)*(x1[2] + x1[6])*(x1[2] + x1[6]) + (v732589286 + v2683369444)*(v732589286 + v2683369444) + (-1.)*(x1[1] + x1[5])*(x1[1] + x1[5]) + (-1.)*(x1[0] + x1[4])*(x1[0] + x1[4]);
  auto v2746426613 = sqrt(((9.))/((9.) + (3.)*v3425644516*x0[0]*x0[0] + v3425644516*x0[0]*x0[0]*v3425644516*x0[0]*x0[0]));
  auto v2433939122 = (sqrt((0.900316)*x0[4]*x0[5]*x0[4]*sqrt(x0[5]*x0[5] + x0[4]*x0[4])*1./sqrt(x0[4]*sqrt(x0[5]*x0[5] + x0[4]*x0[4]) + x0[4]*x0[4]))*sqrt(((1.))/((1.) + v3199098040*x0[6]*x0[6])))/(x0[4]*x0[4]-v3864776319-((std::complex<double>(0.,1.)*x0[4]*x0[5]*((1.) + std::abs((0.25)*(x0[4]*x0[4]-(0.03896)-(0.03896)))*x0[6]*x0[6])*sqrt((((v3405928622>(0.))?v3405928622:(0.)))/(std::abs((0.25)*(x0[4]*x0[4]-(0.03896)-(0.03896)))))*((v3405928622>(0.))?v3405928622:(0.))*x0[4]*1./sqrt(v3864776319))/(std::abs((0.25)*(x0[4]*x0[4]-(0.03896)-(0.03896)))))/((1.) + ((v3405928622>(0.))?v3405928622:(0.))*x0[6]*x0[6]));
  auto v2363241191 = (0.333333)*((-1.)*(x1[2] + x1[10]-(x1[14] + x1[6])-v1605088813*(x1[2] + x1[10] + x1[14] + x1[6]))*(x1[2] + x1[10]-(x1[14] + x1[6])-v1605088813*(x1[2] + x1[10] + x1[14] + x1[6])) + (v732589286 + v604511646-(v3067068972 + v2683369444)-v1605088813*(v732589286 + v604511646 + v3067068972 + v2683369444))*(v732589286 + v604511646-(v3067068972 + v2683369444)-v1605088813*(v732589286 + v604511646 + v3067068972 + v2683369444)) + (-1.)*(x1[1] + x1[9]-(x1[13] + x1[5])-v1605088813*(x1[1] + x1[9] + x1[13] + x1[5]))*(x1[1] + x1[9]-(x1[13] + x1[5])-v1605088813*(x1[1] + x1[9] + x1[13] + x1[5])) + (-1.)*(x1[0] + x1[8]-(x1[12] + x1[4])-v1605088813*(x1[0] + x1[8] + x1[12] + x1[4]))*(x1[0] + x1[8]-(x1[12] + x1[4])-v1605088813*(x1[0] + x1[8] + x1[12] + x1[4])));
  auto v2108236252 = (sqrt((0.900316)*x0[1]*x0[2]*x0[1]*sqrt(x0[2]*x0[2] + x0[1]*x0[1])*1./sqrt(x0[1]*sqrt(x0[2]*x0[2] + x0[1]*x0[1]) + x0[1]*x0[1]))*sqrt(((1.))/((1.) + v2222218056*x0[3]*x0[3])))/(x0[1]*x0[1]-v1521070335-((std::complex<double>(0.,1.)*x0[1]*x0[2]*((1.) + std::abs((0.25)*(x0[1]*x0[1]-(0.487434)-(0.03896) + ((0.050282))/(x0[1]*x0[1])))*x0[3]*x0[3])*sqrt((((v263973954>(0.))?v263973954:(0.)))/(std::abs((0.25)*(x0[1]*x0[1]-(0.487434)-(0.03896) + ((0.050282))/(x0[1]*x0[1])))))*((v263973954>(0.))?v263973954:(0.))*x0[1]*1./sqrt(v1521070335))/(std::abs((0.25)*(x0[1]*x0[1]-(0.487434)-(0.03896) + ((0.050282))/(x0[1]*x0[1])))))/((1.) + ((v263973954>(0.))?v263973954:(0.))*x0[3]*x0[3]));
  auto v1590400259 = (-1.)*(x1[14] + x1[10])*(x1[14] + x1[10]) + (v3067068972 + v604511646)*(v3067068972 + v604511646) + (-1.)*(x1[13] + x1[9])*(x1[13] + x1[9]) + (-1.)*(x1[12] + x1[8])*(x1[12] + x1[8]);
  auto v1323540992 = (-1.)*(x1[14] + x1[6])*(x1[14] + x1[6]) + (v3067068972 + v2683369444)*(v3067068972 + v2683369444) + (-1.)*(x1[13] + x1[5])*(x1[13] + x1[5]) + (-1.)*(x1[12] + x1[4])*(x1[12] + x1[4]);
  auto v939480974 = (sqrt((0.900316)*x0[4]*x0[5]*x0[4]*sqrt(x0[5]*x0[5] + x0[4]*x0[4])*1./sqrt(x0[4]*sqrt(x0[5]*x0[5] + x0[4]*x0[4]) + x0[4]*x0[4]))*sqrt(((1.))/((1.) + v139006945*x0[6]*x0[6])))/(x0[4]*x0[4]-v3303589013-((std::complex<double>(0.,1.)*x0[4]*x0[5]*((1.) + std::abs((0.25)*(x0[4]*x0[4]-(0.03896)-(0.03896)))*x0[6]*x0[6])*sqrt((((v3287524337>(0.))?v3287524337:(0.)))/(std::abs((0.25)*(x0[4]*x0[4]-(0.03896)-(0.03896)))))*((v3287524337>(0.))?v3287524337:(0.))*x0[4]*1./sqrt(v3303589013))/(std::abs((0.25)*(x0[4]*x0[4]-(0.03896)-(0.03896)))))/((1.) + ((v3287524337>(0.))?v3287524337:(0.))*x0[6]*x0[6]));
  auto v403366188 = (-1.)*(x1[2] + x1[10])*(x1[2] + x1[10]) + (v732589286 + v604511646)*(v732589286 + v604511646) + (-1.)*(x1[1] + x1[9])*(x1[1] + x1[9]) + (-1.)*(x1[0] + x1[8])*(x1[0] + x1[8]);
  auto v4181107013 = ((x1[1] + x1[5] + x1[13] + x1[9])*(x1[2] + x1[6] + x1[14] + x1[10])*v3566995419)/(v1904166516) + (x1[1] + x1[5]-(x1[13] + x1[9])-v3266574711*(x1[1] + x1[5] + x1[13] + x1[9]))*(x1[2] + x1[6]-(x1[14] + x1[10])-v3266574711*(x1[2] + x1[6] + x1[14] + x1[10]));
  auto v4118919484 = (-1.)*v3566995419*((-1.) + (-1.)*((x1[2] + x1[6] + x1[14] + x1[10])*(x1[2] + x1[6] + x1[14] + x1[10]))/(v1904166516)) + (x1[2] + x1[6]-(x1[14] + x1[10])-v3266574711*(x1[2] + x1[6] + x1[14] + x1[10]))*(x1[2] + x1[6]-(x1[14] + x1[10])-v3266574711*(x1[2] + x1[6] + x1[14] + x1[10]));
  auto v4087458153 = (-1.)*v3566995419*((1.) + (-1.)*((v732589286 + v2683369444 + v3067068972 + v604511646)*(v732589286 + v2683369444 + v3067068972 + v604511646))/(v1904166516)) + (v732589286 + v2683369444-(v3067068972 + v604511646)-v3266574711*(v732589286 + v2683369444 + v3067068972 + v604511646))*(v732589286 + v2683369444-(v3067068972 + v604511646)-v3266574711*(v732589286 + v2683369444 + v3067068972 + v604511646));
  auto v3332496699 = ((x1[2] + x1[6] + x1[14] + x1[10])*(v732589286 + v2683369444 + v3067068972 + v604511646)*v3566995419)/(v1904166516) + (x1[2] + x1[6]-(x1[14] + x1[10])-v3266574711*(x1[2] + x1[6] + x1[14] + x1[10]))*(v732589286 + v2683369444-(v3067068972 + v604511646)-v3266574711*(v732589286 + v2683369444 + v3067068972 + v604511646));
  auto v3114752748 = ((-1.)*(x1[14] + x1[6])*(x1[14]-x1[6]) + (v3067068972-v2683369444)*(v3067068972 + v2683369444) + (-1.)*(x1[13] + x1[5])*(x1[13]-x1[5]) + (-1.)*(x1[12] + x1[4])*(x1[12]-x1[4]))/(v1323540992);
  auto v3078308559 = ((-1.)*(x1[2] + x1[6])*(x1[2]-x1[6]) + (v732589286-v2683369444)*(v732589286 + v2683369444) + (-1.)*(x1[1] + x1[5])*(x1[1]-x1[5]) + (-1.)*(x1[0] + x1[4])*(x1[0]-x1[4]))/(v3467292341);
  auto v3064202894 = ((x1[2] + x1[10] + x1[14] + x1[6])*(v732589286 + v604511646 + v3067068972 + v2683369444)*v2363241191)/(v1904166516) + (x1[2] + x1[10]-(x1[14] + x1[6])-v1605088813*(x1[2] + x1[10] + x1[14] + x1[6]))*(v732589286 + v604511646-(v3067068972 + v2683369444)-v1605088813*(v732589286 + v604511646 + v3067068972 + v2683369444));
  auto v2966661575 = ((x1[0] + x1[4] + x1[12] + x1[8])*(v732589286 + v2683369444 + v3067068972 + v604511646)*v3566995419)/(v1904166516) + (x1[0] + x1[4]-(x1[12] + x1[8])-v3266574711*(x1[0] + x1[4] + x1[12] + x1[8]))*(v732589286 + v2683369444-(v3067068972 + v604511646)-v3266574711*(v732589286 + v2683369444 + v3067068972 + v604511646));
  auto v2867441335 = (-1.)*v2363241191*((-1.) + (-1.)*((x1[2] + x1[10] + x1[14] + x1[6])*(x1[2] + x1[10] + x1[14] + x1[6]))/(v1904166516)) + (x1[2] + x1[10]-(x1[14] + x1[6])-v1605088813*(x1[2] + x1[10] + x1[14] + x1[6]))*(x1[2] + x1[10]-(x1[14] + x1[6])-v1605088813*(x1[2] + x1[10] + x1[14] + x1[6]));
  auto v2740039071 = ((x1[1] + x1[5] + x1[13] + x1[9])*(v732589286 + v2683369444 + v3067068972 + v604511646)*v3566995419)/(v1904166516) + (x1[1] + x1[5]-(x1[13] + x1[9])-v3266574711*(x1[1] + x1[5] + x1[13] + x1[9]))*(v732589286 + v2683369444-(v3067068972 + v604511646)-v3266574711*(v732589286 + v2683369444 + v3067068972 + v604511646));
  auto v2685850144 = ((x1[0] + x1[8] + x1[12] + x1[4])*(x1[2] + x1[10] + x1[14] + x1[6])*v2363241191)/(v1904166516) + (x1[0] + x1[8]-(x1[12] + x1[4])-v1605088813*(x1[0] + x1[8] + x1[12] + x1[4]))*(x1[2] + x1[10]-(x1[14] + x1[6])-v1605088813*(x1[2] + x1[10] + x1[14] + x1[6]));
  auto v2670871143 = ((-1.)*(x1[2] + x1[10])*(x1[2]-x1[10]) + (v732589286-v604511646)*(v732589286 + v604511646) + (-1.)*(x1[1] + x1[9])*(x1[1]-x1[9]) + (-1.)*(x1[0] + x1[8])*(x1[0]-x1[8]))/(v403366188);
  auto v2583795975 = (-1.)*v2363241191*((-1.) + (-1.)*((x1[1] + x1[9] + x1[13] + x1[5])*(x1[1] + x1[9] + x1[13] + x1[5]))/(v1904166516)) + (x1[1] + x1[9]-(x1[13] + x1[5])-v1605088813*(x1[1] + x1[9] + x1[13] + x1[5]))*(x1[1] + x1[9]-(x1[13] + x1[5])-v1605088813*(x1[1] + x1[9] + x1[13] + x1[5]));
  auto v2342643600 = ((x1[0] + x1[8] + x1[12] + x1[4])*(x1[1] + x1[9] + x1[13] + x1[5])*v2363241191)/(v1904166516) + (x1[0] + x1[8]-(x1[12] + x1[4])-v1605088813*(x1[0] + x1[8] + x1[12] + x1[4]))*(x1[1] + x1[9]-(x1[13] + x1[5])-v1605088813*(x1[1] + x1[9] + x1[13] + x1[5]));
  auto v1675336100 = (-1.)*v3566995419*((-1.) + (-1.)*((x1[0] + x1[4] + x1[12] + x1[8])*(x1[0] + x1[4] + x1[12] + x1[8]))/(v1904166516)) + (x1[0] + x1[4]-(x1[12] + x1[8])-v3266574711*(x1[0] + x1[4] + x1[12] + x1[8]))*(x1[0] + x1[4]-(x1[12] + x1[8])-v3266574711*(x1[0] + x1[4] + x1[12] + x1[8]));
  auto v1622993132 = (-1.)*v2363241191*((1.) + (-1.)*((v732589286 + v604511646 + v3067068972 + v2683369444)*(v732589286 + v604511646 + v3067068972 + v2683369444))/(v1904166516)) + (v732589286 + v604511646-(v3067068972 + v2683369444)-v1605088813*(v732589286 + v604511646 + v3067068972 + v2683369444))*(v732589286 + v604511646-(v3067068972 + v2683369444)-v1605088813*(v732589286 + v604511646 + v3067068972 + v2683369444));
  auto v1464645157 = v3905297392*v2108236252*v2433939122;
  auto v1290795863 = (-1.)*v2363241191*((-1.) + (-1.)*((x1[0] + x1[8] + x1[12] + x1[4])*(x1[0] + x1[8] + x1[12] + x1[4]))/(v1904166516)) + (x1[0] + x1[8]-(x1[12] + x1[4])-v1605088813*(x1[0] + x1[8] + x1[12] + x1[4]))*(x1[0] + x1[8]-(x1[12] + x1[4])-v1605088813*(x1[0] + x1[8] + x1[12] + x1[4]));
  auto v1253388601 = ((-1.)*(x1[14] + x1[10])*(x1[14]-x1[10]) + (v3067068972-v604511646)*(v3067068972 + v604511646) + (-1.)*(x1[13] + x1[9])*(x1[13]-x1[9]) + (-1.)*(x1[12] + x1[8])*(x1[12]-x1[8]))/(v1590400259);
  auto v974884253 = ((x1[0] + x1[4] + x1[12] + x1[8])*(x1[2] + x1[6] + x1[14] + x1[10])*v3566995419)/(v1904166516) + (x1[0] + x1[4]-(x1[12] + x1[8])-v3266574711*(x1[0] + x1[4] + x1[12] + x1[8]))*(x1[2] + x1[6]-(x1[14] + x1[10])-v3266574711*(x1[2] + x1[6] + x1[14] + x1[10]));
  auto v949403889 = ((x1[0] + x1[4] + x1[12] + x1[8])*(x1[1] + x1[5] + x1[13] + x1[9])*v3566995419)/(v1904166516) + (x1[0] + x1[4]-(x1[12] + x1[8])-v3266574711*(x1[0] + x1[4] + x1[12] + x1[8]))*(x1[1] + x1[5]-(x1[13] + x1[9])-v3266574711*(x1[1] + x1[5] + x1[13] + x1[9]));
  auto v599849522 = v2746426613*v3544975691*v939480974;
  auto v569479390 = ((x1[1] + x1[9] + x1[13] + x1[5])*(v732589286 + v604511646 + v3067068972 + v2683369444)*v2363241191)/(v1904166516) + (x1[1] + x1[9]-(x1[13] + x1[5])-v1605088813*(x1[1] + x1[9] + x1[13] + x1[5]))*(v732589286 + v604511646-(v3067068972 + v2683369444)-v1605088813*(v732589286 + v604511646 + v3067068972 + v2683369444));
  auto v155514084 = (-1.)*v3566995419*((-1.) + (-1.)*((x1[1] + x1[5] + x1[13] + x1[9])*(x1[1] + x1[5] + x1[13] + x1[9]))/(v1904166516)) + (x1[1] + x1[5]-(x1[13] + x1[9])-v3266574711*(x1[1] + x1[5] + x1[13] + x1[9]))*(x1[1] + x1[5]-(x1[13] + x1[9])-v3266574711*(x1[1] + x1[5] + x1[13] + x1[9]));
  auto v152173318 = ((x1[0] + x1[8] + x1[12] + x1[4])*(v732589286 + v604511646 + v3067068972 + v2683369444)*v2363241191)/(v1904166516) + (x1[0] + x1[8]-(x1[12] + x1[4])-v1605088813*(x1[0] + x1[8] + x1[12] + x1[4]))*(v732589286 + v604511646-(v3067068972 + v2683369444)-v1605088813*(v732589286 + v604511646 + v3067068972 + v2683369444));
  auto v71823064 = ((x1[1] + x1[9] + x1[13] + x1[5])*(x1[2] + x1[10] + x1[14] + x1[6])*v2363241191)/(v1904166516) + (x1[1] + x1[9]-(x1[13] + x1[5])-v1605088813*(x1[1] + x1[9] + x1[13] + x1[5]))*(x1[2] + x1[10]-(x1[14] + x1[6])-v1605088813*(x1[2] + x1[10] + x1[14] + x1[6]));
return (0.707107)*(v1464645157*((-1.)*((-1.)*(x1[1]-x1[9]-v2670871143*(x1[1] + x1[9]))*v2583795975 + (-1.)*(x1[0]-x1[8]-v2670871143*(x1[0] + x1[8]))*v2342643600 + (-1.)*(x1[2]-x1[10]-v2670871143*(x1[2] + x1[10]))*v71823064 + v569479390*(v732589286-v604511646-v2670871143*(v732589286 + v604511646)))*(x1[13]-x1[5]-v3114752748*(x1[13] + x1[5])) + (-1.)*((-1.)*(x1[1]-x1[9]-v2670871143*(x1[1] + x1[9]))*v2342643600 + (-1.)*(x1[0]-x1[8]-v2670871143*(x1[0] + x1[8]))*v1290795863 + (-1.)*(x1[2]-x1[10]-v2670871143*(x1[2] + x1[10]))*v2685850144 + v152173318*(v732589286-v604511646-v2670871143*(v732589286 + v604511646)))*(x1[12]-x1[4]-v3114752748*(x1[12] + x1[4])) + (-1.)*((-1.)*(x1[1]-x1[9]-v2670871143*(x1[1] + x1[9]))*v71823064 + (-1.)*(x1[0]-x1[8]-v2670871143*(x1[0] + x1[8]))*v2685850144 + (-1.)*(x1[2]-x1[10]-v2670871143*(x1[2] + x1[10]))*v2867441335 + v3064202894*(v732589286-v604511646-v2670871143*(v732589286 + v604511646)))*(x1[14]-x1[6]-v3114752748*(x1[14] + x1[6])) + (v3067068972-v2683369444-v3114752748*(v3067068972 + v2683369444))*((-1.)*(x1[1]-x1[9]-v2670871143*(x1[1] + x1[9]))*v569479390 + (-1.)*(x1[0]-x1[8]-v2670871143*(x1[0] + x1[8]))*v152173318 + (-1.)*(x1[2]-x1[10]-v2670871143*(x1[2] + x1[10]))*v3064202894 + v1622993132*(v732589286-v604511646-v2670871143*(v732589286 + v604511646)))) + v599849522*((-1.)*((-1.)*(x1[1]-x1[5]-v3078308559*(x1[1] + x1[5]))*v155514084 + (-1.)*(x1[0]-x1[4]-v3078308559*(x1[0] + x1[4]))*v949403889 + (-1.)*(x1[2]-x1[6]-v3078308559*(x1[2] + x1[6]))*v4181107013 + v2740039071*(v732589286-v2683369444-v3078308559*(v732589286 + v2683369444)))*(x1[13]-x1[9]-v1253388601*(x1[13] + x1[9])) + (-1.)*((-1.)*(x1[1]-x1[5]-v3078308559*(x1[1] + x1[5]))*v949403889 + (-1.)*(x1[0]-x1[4]-v3078308559*(x1[0] + x1[4]))*v1675336100 + (-1.)*(x1[2]-x1[6]-v3078308559*(x1[2] + x1[6]))*v974884253 + v2966661575*(v732589286-v2683369444-v3078308559*(v732589286 + v2683369444)))*(x1[12]-x1[8]-v1253388601*(x1[12] + x1[8])) + (-1.)*((-1.)*(x1[1]-x1[5]-v3078308559*(x1[1] + x1[5]))*v4181107013 + (-1.)*(x1[0]-x1[4]-v3078308559*(x1[0] + x1[4]))*v974884253 + (-1.)*(x1[2]-x1[6]-v3078308559*(x1[2] + x1[6]))*v4118919484 + v3332496699*(v732589286-v2683369444-v3078308559*(v732589286 + v2683369444)))*(x1[14]-x1[10]-v1253388601*(x1[14] + x1[10])) + (v3067068972-v604511646-v1253388601*(v3067068972 + v604511646))*((-1.)*(x1[1]-x1[5]-v3078308559*(x1[1] + x1[5]))*v2740039071 + (-1.)*(x1[0]-x1[4]-v3078308559*(x1[0] + x1[4]))*v2966661575 + (-1.)*(x1[2]-x1[6]-v3078308559*(x1[2] + x1[6]))*v3332496699 + v4087458153*(v732589286-v2683369444-v3078308559*(v732589286 + v2683369444)))));
}

extern "C" std::complex<double> D0_D__Ks_892_0_Kp_pim__rho_770_0_pip_pim___wParams( const double*__restrict__ E ){
  double externalParameters [] = {3.7559, 0.896, 0.0503, 1.5, 0.77549, 0.1494, 1.5 }; 
  return D0_D__Ks_892_0_Kp_pim__rho_770_0_pip_pim__( externalParameters, E ); // E is P 
}
extern "C" const char* D0_P__Ks_892_0_Kp_pim__rho_770_0_pip_pim___name() {  return "D0[P]{K*(892)0{K+,pi-},rho(770)0{pi+,pi-}}"; } 
extern "C" std::complex<double> D0_P__Ks_892_0_Kp_pim__rho_770_0_pip_pim__(double const* x0, double const* x1){
  auto v3067068972 = sqrt((0.01948) + x1[12]*x1[12] + x1[13]*x1[13] + x1[14]*x1[14]);
  auto v2683369444 = sqrt((0.01948) + x1[4]*x1[4] + x1[5]*x1[5] + x1[6]*x1[6]);
  auto v732589286 = sqrt((0.243717) + x1[0]*x1[0] + x1[1]*x1[1] + x1[2]*x1[2]);
  auto v604511646 = sqrt((0.01948) + x1[8]*x1[8] + x1[9]*x1[9] + x1[10]*x1[10]);
  auto v4237252271 = (-1.)*(x1[2] + x1[6] + x1[14] + x1[10])*(x1[2] + x1[6] + x1[14] + x1[10]) + (v732589286 + v2683369444 + v3067068972 + v604511646)*(v732589286 + v2683369444 + v3067068972 + v604511646) + (-1.)*(x1[1] + x1[5] + x1[13] + x1[9])*(x1[1] + x1[5] + x1[13] + x1[9]) + (-1.)*(x1[0] + x1[4] + x1[12] + x1[8])*(x1[0] + x1[4] + x1[12] + x1[8]);
  auto v3864776319 = (-1.)*(x1[14] + x1[6])*(x1[14] + x1[6]) + (v3067068972 + v2683369444)*(v3067068972 + v2683369444) + (-1.)*(x1[13] + x1[5])*(x1[13] + x1[5]) + (-1.)*(x1[12] + x1[4])*(x1[12] + x1[4]);
  auto v3303589013 = (-1.)*(x1[14] + x1[10])*(x1[14] + x1[10]) + (v3067068972 + v604511646)*(v3067068972 + v604511646) + (-1.)*(x1[13] + x1[9])*(x1[13] + x1[9]) + (-1.)*(x1[12] + x1[8])*(x1[12] + x1[8]);
  auto v2830794559 = (-1.)*(x1[2] + x1[10] + x1[14] + x1[6])*(x1[2] + x1[10] + x1[14] + x1[6]) + (v732589286 + v604511646 + v3067068972 + v2683369444)*(v732589286 + v604511646 + v3067068972 + v2683369444) + (-1.)*(x1[1] + x1[9] + x1[13] + x1[5])*(x1[1] + x1[9] + x1[13] + x1[5]) + (-1.)*(x1[0] + x1[8] + x1[12] + x1[4])*(x1[0] + x1[8] + x1[12] + x1[4]);
  auto v1521070335 = (-1.)*(x1[2] + x1[10])*(x1[2] + x1[10]) + (v732589286 + v604511646)*(v732589286 + v604511646) + (-1.)*(x1[1] + x1[9])*(x1[1] + x1[9]) + (-1.)*(x1[0] + x1[8])*(x1[0] + x1[8]);
  auto v1139362541 = (-1.)*(x1[2] + x1[6])*(x1[2] + x1[6]) + (v732589286 + v2683369444)*(v732589286 + v2683369444) + (-1.)*(x1[1] + x1[5])*(x1[1] + x1[5]) + (-1.)*(x1[0] + x1[4])*(x1[0] + x1[4]);
  auto v3425644516 = (0.25)*(v4237252271-(2.)*v1139362541-(2.)*v3303589013 + ((v1139362541-v3303589013)*(v1139362541-v3303589013))/(v4237252271));
  auto v3405928622 = (0.25)*(v3864776319-(0.03896)-(0.03896));
  auto v3287524337 = (0.25)*(v3303589013-(0.03896)-(0.03896));
  auto v3199098040 = std::abs((0.25)*(v3864776319-(0.03896)-(0.03896)));
  auto v2663927459 = (0.25)*(v2830794559-(2.)*v1521070335-(2.)*v3864776319 + ((v1521070335-v3864776319)*(v1521070335-v3864776319))/(v2830794559));
  auto v2222218056 = std::abs((0.25)*(v1521070335-(0.487434)-(0.03896) + ((0.050282))/(v1521070335)));
  auto v1148200210 = (0.25)*(v1139362541-(0.487434)-(0.03896) + ((0.050282))/(v1139362541));
  auto v865896472 = std::abs((0.25)*(v1139362541-(0.487434)-(0.03896) + ((0.050282))/(v1139362541)));
  auto v263973954 = (0.25)*(v1521070335-(0.487434)-(0.03896) + ((0.050282))/(v1521070335));
  auto v139006945 = std::abs((0.25)*(v3303589013-(0.03896)-(0.03896)));
  auto v4280937265 = sqrt(((1.))/((1.) + v2663927459*x0[0]*x0[0]));
  auto v3544975691 = (sqrt((0.900316)*x0[1]*x0[2]*x0[1]*sqrt(x0[2]*x0[2] + x0[1]*x0[1])*1./sqrt(x0[1]*sqrt(x0[2]*x0[2] + x0[1]*x0[1]) + x0[1]*x0[1]))*sqrt(((1.))/((1.) + v865896472*x0[3]*x0[3])))/(x0[1]*x0[1]-v1139362541-((std::complex<double>(0.,1.)*x0[1]*x0[2]*((1.) + std::abs((0.25)*(x0[1]*x0[1]-(0.487434)-(0.03896) + ((0.050282))/(x0[1]*x0[1])))*x0[3]*x0[3])*sqrt((((v1148200210>(0.))?v1148200210:(0.)))/(std::abs((0.25)*(x0[1]*x0[1]-(0.487434)-(0.03896) + ((0.050282))/(x0[1]*x0[1])))))*((v1148200210>(0.))?v1148200210:(0.))*x0[1]*1./sqrt(v1139362541))/(std::abs((0.25)*(x0[1]*x0[1]-(0.487434)-(0.03896) + ((0.050282))/(x0[1]*x0[1])))))/((1.) + ((v1148200210>(0.))?v1148200210:(0.))*x0[3]*x0[3]));
  auto v3467292341 = (-1.)*(x1[2] + x1[6])*(x1[2] + x1[6]) + (v732589286 + v2683369444)*(v732589286 + v2683369444) + (-1.)*(x1[1] + x1[5])*(x1[1] + x1[5]) + (-1.)*(x1[0] + x1[4])*(x1[0] + x1[4]);
  auto v2433939122 = (sqrt((0.900316)*x0[4]*x0[5]*x0[4]*sqrt(x0[5]*x0[5] + x0[4]*x0[4])*1./sqrt(x0[4]*sqrt(x0[5]*x0[5] + x0[4]*x0[4]) + x0[4]*x0[4]))*sqrt(((1.))/((1.) + v3199098040*x0[6]*x0[6])))/(x0[4]*x0[4]-v3864776319-((std::complex<double>(0.,1.)*x0[4]*x0[5]*((1.) + std::abs((0.25)*(x0[4]*x0[4]-(0.03896)-(0.03896)))*x0[6]*x0[6])*sqrt((((v3405928622>(0.))?v3405928622:(0.)))/(std::abs((0.25)*(x0[4]*x0[4]-(0.03896)-(0.03896)))))*((v3405928622>(0.))?v3405928622:(0.))*x0[4]*1./sqrt(v3864776319))/(std::abs((0.25)*(x0[4]*x0[4]-(0.03896)-(0.03896)))))/((1.) + ((v3405928622>(0.))?v3405928622:(0.))*x0[6]*x0[6]));
  auto v2346439884 = sqrt(((1.))/((1.) + v3425644516*x0[0]*x0[0]));
  auto v2108236252 = (sqrt((0.900316)*x0[1]*x0[2]*x0[1]*sqrt(x0[2]*x0[2] + x0[1]*x0[1])*1./sqrt(x0[1]*sqrt(x0[2]*x0[2] + x0[1]*x0[1]) + x0[1]*x0[1]))*sqrt(((1.))/((1.) + v2222218056*x0[3]*x0[3])))/(x0[1]*x0[1]-v1521070335-((std::complex<double>(0.,1.)*x0[1]*x0[2]*((1.) + std::abs((0.25)*(x0[1]*x0[1]-(0.487434)-(0.03896) + ((0.050282))/(x0[1]*x0[1])))*x0[3]*x0[3])*sqrt((((v263973954>(0.))?v263973954:(0.)))/(std::abs((0.25)*(x0[1]*x0[1]-(0.487434)-(0.03896) + ((0.050282))/(x0[1]*x0[1])))))*((v263973954>(0.))?v263973954:(0.))*x0[1]*1./sqrt(v1521070335))/(std::abs((0.25)*(x0[1]*x0[1]-(0.487434)-(0.03896) + ((0.050282))/(x0[1]*x0[1])))))/((1.) + ((v263973954>(0.))?v263973954:(0.))*x0[3]*x0[3]));
  auto v1904166516 = (-1.)*(x1[2] + x1[6] + x1[14] + x1[10])*(x1[2] + x1[6] + x1[14] + x1[10]) + (v732589286 + v2683369444 + v3067068972 + v604511646)*(v732589286 + v2683369444 + v3067068972 + v604511646) + (-1.)*(x1[1] + x1[5] + x1[13] + x1[9])*(x1[1] + x1[5] + x1[13] + x1[9]) + (-1.)*(x1[0] + x1[4] + x1[12] + x1[8])*(x1[0] + x1[4] + x1[12] + x1[8]);
  auto v1590400259 = (-1.)*(x1[14] + x1[10])*(x1[14] + x1[10]) + (v3067068972 + v604511646)*(v3067068972 + v604511646) + (-1.)*(x1[13] + x1[9])*(x1[13] + x1[9]) + (-1.)*(x1[12] + x1[8])*(x1[12] + x1[8]);
  auto v1323540992 = (-1.)*(x1[14] + x1[6])*(x1[14] + x1[6]) + (v3067068972 + v2683369444)*(v3067068972 + v2683369444) + (-1.)*(x1[13] + x1[5])*(x1[13] + x1[5]) + (-1.)*(x1[12] + x1[4])*(x1[12] + x1[4]);
  auto v939480974 = (sqrt((0.900316)*x0[4]*x0[5]*x0[4]*sqrt(x0[5]*x0[5] + x0[4]*x0[4])*1./sqrt(x0[4]*sqrt(x0[5]*x0[5] + x0[4]*x0[4]) + x0[4]*x0[4]))*sqrt(((1.))/((1.) + v139006945*x0[6]*x0[6])))/(x0[4]*x0[4]-v3303589013-((std::complex<double>(0.,1.)*x0[4]*x0[5]*((1.) + std::abs((0.25)*(x0[4]*x0[4]-(0.03896)-(0.03896)))*x0[6]*x0[6])*sqrt((((v3287524337>(0.))?v3287524337:(0.)))/(std::abs((0.25)*(x0[4]*x0[4]-(0.03896)-(0.03896)))))*((v3287524337>(0.))?v3287524337:(0.))*x0[4]*1./sqrt(v3303589013))/(std::abs((0.25)*(x0[4]*x0[4]-(0.03896)-(0.03896)))))/((1.) + ((v3287524337>(0.))?v3287524337:(0.))*x0[6]*x0[6]));
  auto v403366188 = (-1.)*(x1[2] + x1[10])*(x1[2] + x1[10]) + (v732589286 + v604511646)*(v732589286 + v604511646) + (-1.)*(x1[1] + x1[9])*(x1[1] + x1[9]) + (-1.)*(x1[0] + x1[8])*(x1[0] + x1[8]);
  auto v3788433132 = v4280937265*v2108236252*v2433939122;
  auto v3266574711 = ((-1.)*(x1[2] + x1[6] + x1[14] + x1[10])*(x1[2] + x1[6]-(x1[14] + x1[10])) + (v732589286 + v2683369444-(v3067068972 + v604511646))*(v732589286 + v2683369444 + v3067068972 + v604511646) + (-1.)*(x1[1] + x1[5] + x1[13] + x1[9])*(x1[1] + x1[5]-(x1[13] + x1[9])) + (-1.)*(x1[0] + x1[4] + x1[12] + x1[8])*(x1[0] + x1[4]-(x1[12] + x1[8])))/(v1904166516);
  auto v3114752748 = ((-1.)*(x1[14] + x1[6])*(x1[14]-x1[6]) + (v3067068972-v2683369444)*(v3067068972 + v2683369444) + (-1.)*(x1[13] + x1[5])*(x1[13]-x1[5]) + (-1.)*(x1[12] + x1[4])*(x1[12]-x1[4]))/(v1323540992);
  auto v3078308559 = ((-1.)*(x1[2] + x1[6])*(x1[2]-x1[6]) + (v732589286-v2683369444)*(v732589286 + v2683369444) + (-1.)*(x1[1] + x1[5])*(x1[1]-x1[5]) + (-1.)*(x1[0] + x1[4])*(x1[0]-x1[4]))/(v3467292341);
  auto v2670871143 = ((-1.)*(x1[2] + x1[10])*(x1[2]-x1[10]) + (v732589286-v604511646)*(v732589286 + v604511646) + (-1.)*(x1[1] + x1[9])*(x1[1]-x1[9]) + (-1.)*(x1[0] + x1[8])*(x1[0]-x1[8]))/(v403366188);
  auto v2052447916 = v2346439884*v3544975691*v939480974;
  auto v1605088813 = ((-1.)*(x1[2] + x1[10] + x1[14] + x1[6])*(x1[2] + x1[10]-(x1[14] + x1[6])) + (v732589286 + v604511646-(v3067068972 + v2683369444))*(v732589286 + v604511646 + v3067068972 + v2683369444) + (-1.)*(x1[1] + x1[9] + x1[13] + x1[5])*(x1[1] + x1[9]-(x1[13] + x1[5])) + (-1.)*(x1[0] + x1[8] + x1[12] + x1[4])*(x1[0] + x1[8]-(x1[12] + x1[4])))/(v1904166516);
  auto v1253388601 = ((-1.)*(x1[14] + x1[10])*(x1[14]-x1[10]) + (v3067068972-v604511646)*(v3067068972 + v604511646) + (-1.)*(x1[13] + x1[9])*(x1[13]-x1[9]) + (-1.)*(x1[12] + x1[8])*(x1[12]-x1[8]))/(v1590400259);
return (0.707107)*(v3788433132*((-1.)*((-1.)*(x1[2]-x1[10]-v2670871143*(x1[2] + x1[10]))*((v732589286 + v604511646 + v3067068972 + v2683369444)*(x1[0] + x1[8]-(x1[12] + x1[4])-v1605088813*(x1[0] + x1[8] + x1[12] + x1[4])) + (-1.)*(v732589286 + v604511646-(v3067068972 + v2683369444)-v1605088813*(v732589286 + v604511646 + v3067068972 + v2683369444))*(x1[0] + x1[8] + x1[12] + x1[4])) + (-1.)*(x1[0]-x1[8]-v2670871143*(x1[0] + x1[8]))*((-1.)*(x1[2] + x1[10]-(x1[14] + x1[6])-v1605088813*(x1[2] + x1[10] + x1[14] + x1[6]))*(v732589286 + v604511646 + v3067068972 + v2683369444) + (x1[2] + x1[10] + x1[14] + x1[6])*(v732589286 + v604511646-(v3067068972 + v2683369444)-v1605088813*(v732589286 + v604511646 + v3067068972 + v2683369444))) + ((x1[2] + x1[10] + x1[14] + x1[6])*(x1[0] + x1[8]-(x1[12] + x1[4])-v1605088813*(x1[0] + x1[8] + x1[12] + x1[4])) + (-1.)*(x1[2] + x1[10]-(x1[14] + x1[6])-v1605088813*(x1[2] + x1[10] + x1[14] + x1[6]))*(x1[0] + x1[8] + x1[12] + x1[4]))*(v732589286-v604511646-v2670871143*(v732589286 + v604511646)))*(x1[13]-x1[5]-v3114752748*(x1[13] + x1[5])) + (-1.)*((-1.)*(x1[2]-x1[10]-v2670871143*(x1[2] + x1[10]))*((-1.)*(x1[1] + x1[9]-(x1[13] + x1[5])-v1605088813*(x1[1] + x1[9] + x1[13] + x1[5]))*(v732589286 + v604511646 + v3067068972 + v2683369444) + (x1[1] + x1[9] + x1[13] + x1[5])*(v732589286 + v604511646-(v3067068972 + v2683369444)-v1605088813*(v732589286 + v604511646 + v3067068972 + v2683369444))) + (-1.)*(x1[1]-x1[9]-v2670871143*(x1[1] + x1[9]))*((v732589286 + v604511646 + v3067068972 + v2683369444)*(x1[2] + x1[10]-(x1[14] + x1[6])-v1605088813*(x1[2] + x1[10] + x1[14] + x1[6])) + (-1.)*(v732589286 + v604511646-(v3067068972 + v2683369444)-v1605088813*(v732589286 + v604511646 + v3067068972 + v2683369444))*(x1[2] + x1[10] + x1[14] + x1[6])) + ((-1.)*(x1[1] + x1[9]-(x1[13] + x1[5])-v1605088813*(x1[1] + x1[9] + x1[13] + x1[5]))*(x1[2] + x1[10] + x1[14] + x1[6]) + (x1[1] + x1[9] + x1[13] + x1[5])*(x1[2] + x1[10]-(x1[14] + x1[6])-v1605088813*(x1[2] + x1[10] + x1[14] + x1[6])))*(v732589286-v604511646-v2670871143*(v732589286 + v604511646)))*(x1[12]-x1[4]-v3114752748*(x1[12] + x1[4])) + (-1.)*((-1.)*(x1[1]-x1[9]-v2670871143*(x1[1] + x1[9]))*((-1.)*(x1[0] + x1[8]-(x1[12] + x1[4])-v1605088813*(x1[0] + x1[8] + x1[12] + x1[4]))*(v732589286 + v604511646 + v3067068972 + v2683369444) + (x1[0] + x1[8] + x1[12] + x1[4])*(v732589286 + v604511646-(v3067068972 + v2683369444)-v1605088813*(v732589286 + v604511646 + v3067068972 + v2683369444))) + (-1.)*(x1[0]-x1[8]-v2670871143*(x1[0] + x1[8]))*((v732589286 + v604511646 + v3067068972 + v2683369444)*(x1[1] + x1[9]-(x1[13] + x1[5])-v1605088813*(x1[1] + x1[9] + x1[13] + x1[5])) + (-1.)*(v732589286 + v604511646-(v3067068972 + v2683369444)-v1605088813*(v732589286 + v604511646 + v3067068972 + v2683369444))*(x1[1] + x1[9] + x1[13] + x1[5])) + ((-1.)*(x1[0] + x1[8]-(x1[12] + x1[4])-v1605088813*(x1[0] + x1[8] + x1[12] + x1[4]))*(x1[1] + x1[9] + x1[13] + x1[5]) + (x1[0] + x1[8] + x1[12] + x1[4])*(x1[1] + x1[9]-(x1[13] + x1[5])-v1605088813*(x1[1] + x1[9] + x1[13] + x1[5])))*(v732589286-v604511646-v2670871143*(v732589286 + v604511646)))*(x1[14]-x1[6]-v3114752748*(x1[14] + x1[6])) + (v3067068972-v2683369444-v3114752748*(v3067068972 + v2683369444))*((-1.)*(x1[1]-x1[9]-v2670871143*(x1[1] + x1[9]))*((-1.)*(x1[0] + x1[8]-(x1[12] + x1[4])-v1605088813*(x1[0] + x1[8] + x1[12] + x1[4]))*(x1[2] + x1[10] + x1[14] + x1[6]) + (x1[0] + x1[8] + x1[12] + x1[4])*(x1[2] + x1[10]-(x1[14] + x1[6])-v1605088813*(x1[2] + x1[10] + x1[14] + x1[6]))) + (-1.)*(x1[0]-x1[8]-v2670871143*(x1[0] + x1[8]))*((x1[2] + x1[10] + x1[14] + x1[6])*(x1[1] + x1[9]-(x1[13] + x1[5])-v1605088813*(x1[1] + x1[9] + x1[13] + x1[5])) + (-1.)*(x1[2] + x1[10]-(x1[14] + x1[6])-v1605088813*(x1[2] + x1[10] + x1[14] + x1[6]))*(x1[1] + x1[9] + x1[13] + x1[5])) + (-1.)*(x1[2]-x1[10]-v2670871143*(x1[2] + x1[10]))*((x1[1] + x1[9] + x1[13] + x1[5])*(x1[0] + x1[8]-(x1[12] + x1[4])-v1605088813*(x1[0] + x1[8] + x1[12] + x1[4])) + (-1.)*(x1[1] + x1[9]-(x1[13] + x1[5])-v1605088813*(x1[1] + x1[9] + x1[13] + x1[5]))*(x1[0] + x1[8] + x1[12] + x1[4])))) + v2052447916*((-1.)*((-1.)*(x1[2]-x1[6]-v3078308559*(x1[2] + x1[6]))*((v732589286 + v2683369444 + v3067068972 + v604511646)*(x1[0] + x1[4]-(x1[12] + x1[8])-v3266574711*(x1[0] + x1[4] + x1[12] + x1[8])) + (-1.)*(v732589286 + v2683369444-(v3067068972 + v604511646)-v3266574711*(v732589286 + v2683369444 + v3067068972 + v604511646))*(x1[0] + x1[4] + x1[12] + x1[8])) + (-1.)*(x1[0]-x1[4]-v3078308559*(x1[0] + x1[4]))*((-1.)*(x1[2] + x1[6]-(x1[14] + x1[10])-v3266574711*(x1[2] + x1[6] + x1[14] + x1[10]))*(v732589286 + v2683369444 + v3067068972 + v604511646) + (x1[2] + x1[6] + x1[14] + x1[10])*(v732589286 + v2683369444-(v3067068972 + v604511646)-v3266574711*(v732589286 + v2683369444 + v3067068972 + v604511646))) + ((x1[2] + x1[6] + x1[14] + x1[10])*(x1[0] + x1[4]-(x1[12] + x1[8])-v3266574711*(x1[0] + x1[4] + x1[12] + x1[8])) + (-1.)*(x1[2] + x1[6]-(x1[14] + x1[10])-v3266574711*(x1[2] + x1[6] + x1[14] + x1[10]))*(x1[0] + x1[4] + x1[12] + x1[8]))*(v732589286-v2683369444-v3078308559*(v732589286 + v2683369444)))*(x1[13]-x1[9]-v1253388601*(x1[13] + x1[9])) + (-1.)*((-1.)*(x1[2]-x1[6]-v3078308559*(x1[2] + x1[6]))*((-1.)*(x1[1] + x1[5]-(x1[13] + x1[9])-v3266574711*(x1[1] + x1[5] + x1[13] + x1[9]))*(v732589286 + v2683369444 + v3067068972 + v604511646) + (x1[1] + x1[5] + x1[13] + x1[9])*(v732589286 + v2683369444-(v3067068972 + v604511646)-v3266574711*(v732589286 + v2683369444 + v3067068972 + v604511646))) + (-1.)*(x1[1]-x1[5]-v3078308559*(x1[1] + x1[5]))*((v732589286 + v2683369444 + v3067068972 + v604511646)*(x1[2] + x1[6]-(x1[14] + x1[10])-v3266574711*(x1[2] + x1[6] + x1[14] + x1[10])) + (-1.)*(v732589286 + v2683369444-(v3067068972 + v604511646)-v3266574711*(v732589286 + v2683369444 + v3067068972 + v604511646))*(x1[2] + x1[6] + x1[14] + x1[10])) + ((-1.)*(x1[1] + x1[5]-(x1[13] + x1[9])-v3266574711*(x1[1] + x1[5] + x1[13] + x1[9]))*(x1[2] + x1[6] + x1[14] + x1[10]) + (x1[1] + x1[5] + x1[13] + x1[9])*(x1[2] + x1[6]-(x1[14] + x1[10])-v3266574711*(x1[2] + x1[6] + x1[14] + x1[10])))*(v732589286-v2683369444-v3078308559*(v732589286 + v2683369444)))*(x1[12]-x1[8]-v1253388601*(x1[12] + x1[8])) + (-1.)*((-1.)*(x1[1]-x1[5]-v3078308559*(x1[1] + x1[5]))*((-1.)*(x1[0] + x1[4]-(x1[12] + x1[8])-v3266574711*(x1[0] + x1[4] + x1[12] + x1[8]))*(v732589286 + v2683369444 + v3067068972 + v604511646) + (x1[0] + x1[4] + x1[12] + x1[8])*(v732589286 + v2683369444-(v3067068972 + v604511646)-v3266574711*(v732589286 + v2683369444 + v3067068972 + v604511646))) + (-1.)*(x1[0]-x1[4]-v3078308559*(x1[0] + x1[4]))*((v732589286 + v2683369444 + v3067068972 + v604511646)*(x1[1] + x1[5]-(x1[13] + x1[9])-v3266574711*(x1[1] + x1[5] + x1[13] + x1[9])) + (-1.)*(v732589286 + v2683369444-(v3067068972 + v604511646)-v3266574711*(v732589286 + v2683369444 + v3067068972 + v604511646))*(x1[1] + x1[5] + x1[13] + x1[9])) + ((-1.)*(x1[0] + x1[4]-(x1[12] + x1[8])-v3266574711*(x1[0] + x1[4] + x1[12] + x1[8]))*(x1[1] + x1[5] + x1[13] + x1[9]) + (x1[0] + x1[4] + x1[12] + x1[8])*(x1[1] + x1[5]-(x1[13] + x1[9])-v3266574711*(x1[1] + x1[5] + x1[13] + x1[9])))*(v732589286-v2683369444-v3078308559*(v732589286 + v2683369444)))*(x1[14]-x1[10]-v1253388601*(x1[14] + x1[10])) + (v3067068972-v604511646-v1253388601*(v3067068972 + v604511646))*((-1.)*(x1[1]-x1[5]-v3078308559*(x1[1] + x1[5]))*((-1.)*(x1[0] + x1[4]-(x1[12] + x1[8])-v3266574711*(x1[0] + x1[4] + x1[12] + x1[8]))*(x1[2] + x1[6] + x1[14] + x1[10]) + (x1[0] + x1[4] + x1[12] + x1[8])*(x1[2] + x1[6]-(x1[14] + x1[10])-v3266574711*(x1[2] + x1[6] + x1[14] + x1[10]))) + (-1.)*(x1[0]-x1[4]-v3078308559*(x1[0] + x1[4]))*((x1[2] + x1[6] + x1[14] + x1[10])*(x1[1] + x1[5]-(x1[13] + x1[9])-v3266574711*(x1[1] + x1[5] + x1[13] + x1[9])) + (-1.)*(x1[2] + x1[6]-(x1[14] + x1[10])-v3266574711*(x1[2] + x1[6] + x1[14] + x1[10]))*(x1[1] + x1[5] + x1[13] + x1[9])) + (-1.)*(x1[2]-x1[6]-v3078308559*(x1[2] + x1[6]))*((x1[1] + x1[5] + x1[13] + x1[9])*(x1[0] + x1[4]-(x1[12] + x1[8])-v3266574711*(x1[0] + x1[4] + x1[12] + x1[8])) + (-1.)*(x1[1] + x1[5]-(x1[13] + x1[9])-v3266574711*(x1[1] + x1[5] + x1[13] + x1[9]))*(x1[0] + x1[4] + x1[12] + x1[8])))));
}

extern "C" std::complex<double> D0_P__Ks_892_0_Kp_pim__rho_770_0_pip_pim___wParams( const double*__restrict__ E ){
  double externalParameters [] = {3.7559, 0.896, 0.0503, 1.5, 0.77549, 0.1494, 1.5 }; 
  return D0_P__Ks_892_0_Kp_pim__rho_770_0_pip_pim__( externalParameters, E ); // E is P 
}
extern "C" const char* D0_K_1__1270_p_D_GSpline_EFF__Ks_892_0_Kp_pim__pip__pim__name() {  return "D0{K(1)(1270)+[D;GSpline.EFF]{K*(892)0{K+,pi-},pi+},pi-}"; } 
extern "C" std::complex<double> D0_K_1__1270_p_D_GSpline_EFF__Ks_892_0_Kp_pim__pip__pim_(double const* x0, double const* x1){
  auto v3067068972 = sqrt((0.01948) + x1[12]*x1[12] + x1[13]*x1[13] + x1[14]*x1[14]);
  auto v2683369444 = sqrt((0.01948) + x1[4]*x1[4] + x1[5]*x1[5] + x1[6]*x1[6]);
  auto v732589286 = sqrt((0.243717) + x1[0]*x1[0] + x1[1]*x1[1] + x1[2]*x1[2]);
  auto v604511646 = sqrt((0.01948) + x1[8]*x1[8] + x1[9]*x1[9] + x1[10]*x1[10]);
  auto v2652496757 = x0[1]*x0[1];
  auto v2627373007 = (-1.)*(x1[2] + x1[10] + x1[14])*(x1[2] + x1[10] + x1[14]) + (v732589286 + v604511646 + v3067068972)*(v732589286 + v604511646 + v3067068972) + (-1.)*(x1[1] + x1[9] + x1[13])*(x1[1] + x1[9] + x1[13]) + (-1.)*(x1[0] + x1[8] + x1[12])*(x1[0] + x1[8] + x1[12]);
  auto v1521070335 = (-1.)*(x1[2] + x1[10])*(x1[2] + x1[10]) + (v732589286 + v604511646)*(v732589286 + v604511646) + (-1.)*(x1[1] + x1[9])*(x1[1] + x1[9]) + (-1.)*(x1[0] + x1[8])*(x1[0] + x1[8]);
  auto v1139362541 = (-1.)*(x1[2] + x1[6])*(x1[2] + x1[6]) + (v732589286 + v2683369444)*(v732589286 + v2683369444) + (-1.)*(x1[1] + x1[5])*(x1[1] + x1[5]) + (-1.)*(x1[0] + x1[4])*(x1[0] + x1[4]);
  auto v325855721 = (-1.)*(x1[2] + x1[6] + x1[14])*(x1[2] + x1[6] + x1[14]) + (v732589286 + v2683369444 + v3067068972)*(v732589286 + v2683369444 + v3067068972) + (-1.)*(x1[1] + x1[5] + x1[13])*(x1[1] + x1[5] + x1[13]) + (-1.)*(x1[0] + x1[4] + x1[12])*(x1[0] + x1[4] + x1[12]);
  auto v4237252271 = (-1.)*(x1[2] + x1[6] + x1[14] + x1[10])*(x1[2] + x1[6] + x1[14] + x1[10]) + (v732589286 + v2683369444 + v3067068972 + v604511646)*(v732589286 + v2683369444 + v3067068972 + v604511646) + (-1.)*(x1[1] + x1[5] + x1[13] + x1[9])*(x1[1] + x1[5] + x1[13] + x1[9]) + (-1.)*(x1[0] + x1[4] + x1[12] + x1[8])*(x1[0] + x1[4] + x1[12] + x1[8]);
  auto v3248711278 = (((v325855721>(0.6))&&(v325855721<(3.)))?x0[4+int((16.25)*(v325855721-(0.6)))] + fmod(v325855721-(0.6),(0.061538))*((16.25)*(x0[4+int((1.) + (16.25)*(v325855721-(0.6)))]-x0[4+int((16.25)*(v325855721-(0.6)))])-(0.010256)*(x0[4+int((41.) + (16.25)*(v325855721-(0.6)))] + (2.)*x0[4+int((40.) + (16.25)*(v325855721-(0.6)))])) + (0.5)*x0[4+int((40.) + (16.25)*(v325855721-(0.6)))]*fmod(v325855721-(0.6),(0.061538))*fmod(v325855721-(0.6),(0.061538)) + (2.708333)*fmod(v325855721-(0.6),(0.061538))*fmod(v325855721-(0.6),(0.061538))*fmod(v325855721-(0.6),(0.061538))*(x0[4+int((41.) + (16.25)*(v325855721-(0.6)))]-x0[4+int((40.) + (16.25)*(v325855721-(0.6)))]):(0.));
  auto v2830794559 = (-1.)*(x1[2] + x1[10] + x1[14] + x1[6])*(x1[2] + x1[10] + x1[14] + x1[6]) + (v732589286 + v604511646 + v3067068972 + v2683369444)*(v732589286 + v604511646 + v3067068972 + v2683369444) + (-1.)*(x1[1] + x1[9] + x1[13] + x1[5])*(x1[1] + x1[9] + x1[13] + x1[5]) + (-1.)*(x1[0] + x1[8] + x1[12] + x1[4])*(x1[0] + x1[8] + x1[12] + x1[4]);
  auto v2222218056 = std::abs((0.25)*(v1521070335-(0.487434)-(0.03896) + ((0.050282))/(v1521070335)));
  auto v1772631356 = (((v2627373007>(0.6))&&(v2627373007<(3.)))?x0[4+int((16.25)*(v2627373007-(0.6)))] + fmod(v2627373007-(0.6),(0.061538))*((16.25)*(x0[4+int((1.) + (16.25)*(v2627373007-(0.6)))]-x0[4+int((16.25)*(v2627373007-(0.6)))])-(0.010256)*(x0[4+int((41.) + (16.25)*(v2627373007-(0.6)))] + (2.)*x0[4+int((40.) + (16.25)*(v2627373007-(0.6)))])) + (0.5)*x0[4+int((40.) + (16.25)*(v2627373007-(0.6)))]*fmod(v2627373007-(0.6),(0.061538))*fmod(v2627373007-(0.6),(0.061538)) + (2.708333)*fmod(v2627373007-(0.6),(0.061538))*fmod(v2627373007-(0.6),(0.061538))*fmod(v2627373007-(0.6),(0.061538))*(x0[4+int((41.) + (16.25)*(v2627373007-(0.6)))]-x0[4+int((40.) + (16.25)*(v2627373007-(0.6)))]):(0.));
  auto v1719343032 = (-1.)*(x1[2] + x1[10] + x1[14])*(x1[2] + x1[10] + x1[14]) + (v732589286 + v604511646 + v3067068972)*(v732589286 + v604511646 + v3067068972) + (-1.)*(x1[1] + x1[9] + x1[13])*(x1[1] + x1[9] + x1[13]) + (-1.)*(x1[0] + x1[8] + x1[12])*(x1[0] + x1[8] + x1[12]);
  auto v1148200210 = (0.25)*(v1139362541-(0.487434)-(0.03896) + ((0.050282))/(v1139362541));
  auto v1078555364 = (((v2652496757>(0.6))&&(v2652496757<(3.)))?x0[4+int((16.25)*(v2652496757-(0.6)))] + fmod(v2652496757-(0.6),(0.061538))*((16.25)*(x0[4+int((1.) + (16.25)*(v2652496757-(0.6)))]-x0[4+int((16.25)*(v2652496757-(0.6)))])-(0.010256)*(x0[4+int((41.) + (16.25)*(v2652496757-(0.6)))] + (2.)*x0[4+int((40.) + (16.25)*(v2652496757-(0.6)))])) + (0.5)*x0[4+int((40.) + (16.25)*(v2652496757-(0.6)))]*fmod(v2652496757-(0.6),(0.061538))*fmod(v2652496757-(0.6),(0.061538)) + (2.708333)*fmod(v2652496757-(0.6),(0.061538))*fmod(v2652496757-(0.6),(0.061538))*fmod(v2652496757-(0.6),(0.061538))*(x0[4+int((41.) + (16.25)*(v2652496757-(0.6)))]-x0[4+int((40.) + (16.25)*(v2652496757-(0.6)))]):(0.));
  auto v865896472 = std::abs((0.25)*(v1139362541-(0.487434)-(0.03896) + ((0.050282))/(v1139362541)));
  auto v373333512 = (-1.)*(x1[2] + x1[6] + x1[14])*(x1[2] + x1[6] + x1[14]) + (v732589286 + v2683369444 + v3067068972)*(v732589286 + v2683369444 + v3067068972) + (-1.)*(x1[1] + x1[5] + x1[13])*(x1[1] + x1[5] + x1[13]) + (-1.)*(x1[0] + x1[4] + x1[12])*(x1[0] + x1[4] + x1[12]);
  auto v263973954 = (0.25)*(v1521070335-(0.487434)-(0.03896) + ((0.050282))/(v1521070335));
  auto v4069995139 = ((-1.)*(x1[2] + x1[10] + x1[14])*(x1[2] + x1[10]-x1[14]) + (v732589286 + v604511646-v3067068972)*(v732589286 + v604511646 + v3067068972) + (-1.)*(x1[1] + x1[9] + x1[13])*(x1[1] + x1[9]-x1[13]) + (-1.)*(x1[0] + x1[8] + x1[12])*(x1[0] + x1[8]-x1[12]))/(v1719343032);
  auto v3569527896 = ((-1.)*(x1[2] + x1[6] + x1[14])*(x1[2] + x1[6]-x1[14]) + (v732589286 + v2683369444-v3067068972)*(v732589286 + v2683369444 + v3067068972) + (-1.)*(x1[1] + x1[5] + x1[13])*(x1[1] + x1[5]-x1[13]) + (-1.)*(x1[0] + x1[4] + x1[12])*(x1[0] + x1[4]-x1[12]))/(v373333512);
  auto v3544975691 = (sqrt((0.900316)*x0[84]*x0[85]*x0[84]*sqrt(x0[85]*x0[85] + x0[84]*x0[84])*1./sqrt(x0[84]*sqrt(x0[85]*x0[85] + x0[84]*x0[84]) + x0[84]*x0[84]))*sqrt(((1.))/((1.) + v865896472*x0[86]*x0[86])))/(x0[84]*x0[84]-v1139362541-((std::complex<double>(0.,1.)*x0[84]*x0[85]*((1.) + std::abs((0.25)*(x0[84]*x0[84]-(0.487434)-(0.03896) + ((0.050282))/(x0[84]*x0[84])))*x0[86]*x0[86])*sqrt((((v1148200210>(0.))?v1148200210:(0.)))/(std::abs((0.25)*(x0[84]*x0[84]-(0.487434)-(0.03896) + ((0.050282))/(x0[84]*x0[84])))))*((v1148200210>(0.))?v1148200210:(0.))*x0[84]*1./sqrt(v1139362541))/(std::abs((0.25)*(x0[84]*x0[84]-(0.487434)-(0.03896) + ((0.050282))/(x0[84]*x0[84])))))/((1.) + ((v1148200210>(0.))?v1148200210:(0.))*x0[86]*x0[86]));
  auto v2743495210 = (sqrt((0.900316)*x0[1]*x0[2]*x0[1]*sqrt(x0[2]*x0[2] + x0[1]*x0[1])*1./sqrt(x0[1]*sqrt(x0[2]*x0[2] + x0[1]*x0[1]) + x0[1]*x0[1]))*exp((-0.5)*std::abs((0.25)*(v325855721-(2.)*v1139362541-(0.03896) + ((v1139362541-(0.01948))*(v1139362541-(0.01948)))/(v325855721)))*x0[3]*x0[3]))/(x0[1]*x0[1]-(std::complex<double>(0.,1.)*x0[1]*x0[2]*v3248711278)/(v1078555364)-v325855721);
  auto v2635107569 = (0.25)*(v2830794559-(2.)*v2627373007-(0.03896) + ((v2627373007-(0.01948))*(v2627373007-(0.01948)))/(v2830794559));
  auto v2108236252 = (sqrt((0.900316)*x0[84]*x0[85]*x0[84]*sqrt(x0[85]*x0[85] + x0[84]*x0[84])*1./sqrt(x0[84]*sqrt(x0[85]*x0[85] + x0[84]*x0[84]) + x0[84]*x0[84]))*sqrt(((1.))/((1.) + v2222218056*x0[86]*x0[86])))/(x0[84]*x0[84]-v1521070335-((std::complex<double>(0.,1.)*x0[84]*x0[85]*((1.) + std::abs((0.25)*(x0[84]*x0[84]-(0.487434)-(0.03896) + ((0.050282))/(x0[84]*x0[84])))*x0[86]*x0[86])*sqrt((((v263973954>(0.))?v263973954:(0.)))/(std::abs((0.25)*(x0[84]*x0[84]-(0.487434)-(0.03896) + ((0.050282))/(x0[84]*x0[84])))))*((v263973954>(0.))?v263973954:(0.))*x0[84]*1./sqrt(v1521070335))/(std::abs((0.25)*(x0[84]*x0[84]-(0.487434)-(0.03896) + ((0.050282))/(x0[84]*x0[84])))))/((1.) + ((v263973954>(0.))?v263973954:(0.))*x0[86]*x0[86]));
  auto v1390527164 = (0.25)*(v4237252271-(2.)*v325855721-(0.03896) + ((v325855721-(0.01948))*(v325855721-(0.01948)))/(v4237252271));
  auto v847358541 = (sqrt((0.900316)*x0[1]*x0[2]*x0[1]*sqrt(x0[2]*x0[2] + x0[1]*x0[1])*1./sqrt(x0[1]*sqrt(x0[2]*x0[2] + x0[1]*x0[1]) + x0[1]*x0[1]))*exp((-0.5)*std::abs((0.25)*(v2627373007-(2.)*v1521070335-(0.03896) + ((v1521070335-(0.01948))*(v1521070335-(0.01948)))/(v2627373007)))*x0[3]*x0[3]))/(x0[1]*x0[1]-(std::complex<double>(0.,1.)*x0[1]*x0[2]*v1772631356)/(v1078555364)-v2627373007);
  auto v3467292341 = (-1.)*(x1[2] + x1[6])*(x1[2] + x1[6]) + (v732589286 + v2683369444)*(v732589286 + v2683369444) + (-1.)*(x1[1] + x1[5])*(x1[1] + x1[5]) + (-1.)*(x1[0] + x1[4])*(x1[0] + x1[4]);
  auto v3166152392 = sqrt(((1.))/((1.) + v1390527164*x0[0]*x0[0]));
  auto v2970574167 = (0.333333)*((-1.)*(x1[2] + x1[6]-x1[14]-v3569527896*(x1[2] + x1[6] + x1[14]))*(x1[2] + x1[6]-x1[14]-v3569527896*(x1[2] + x1[6] + x1[14])) + (v732589286 + v2683369444-v3067068972-v3569527896*(v732589286 + v2683369444 + v3067068972))*(v732589286 + v2683369444-v3067068972-v3569527896*(v732589286 + v2683369444 + v3067068972)) + (-1.)*(x1[1] + x1[5]-x1[13]-v3569527896*(x1[1] + x1[5] + x1[13]))*(x1[1] + x1[5]-x1[13]-v3569527896*(x1[1] + x1[5] + x1[13])) + (-1.)*(x1[0] + x1[4]-x1[12]-v3569527896*(x1[0] + x1[4] + x1[12]))*(x1[0] + x1[4]-x1[12]-v3569527896*(x1[0] + x1[4] + x1[12])));
  auto v2429468304 = sqrt(((1.))/((1.) + v2635107569*x0[0]*x0[0]));
  auto v2288976811 = v847358541*v2108236252;
  auto v1904166516 = (-1.)*(x1[2] + x1[6] + x1[14] + x1[10])*(x1[2] + x1[6] + x1[14] + x1[10]) + (v732589286 + v2683369444 + v3067068972 + v604511646)*(v732589286 + v2683369444 + v3067068972 + v604511646) + (-1.)*(x1[1] + x1[5] + x1[13] + x1[9])*(x1[1] + x1[5] + x1[13] + x1[9]) + (-1.)*(x1[0] + x1[4] + x1[12] + x1[8])*(x1[0] + x1[4] + x1[12] + x1[8]);
  auto v1546527259 = v2743495210*v3544975691;
  auto v403366188 = (-1.)*(x1[2] + x1[10])*(x1[2] + x1[10]) + (v732589286 + v604511646)*(v732589286 + v604511646) + (-1.)*(x1[1] + x1[9])*(x1[1] + x1[9]) + (-1.)*(x1[0] + x1[8])*(x1[0] + x1[8]);
  auto v307827615 = (0.333333)*((-1.)*(x1[2] + x1[10]-x1[14]-v4069995139*(x1[2] + x1[10] + x1[14]))*(x1[2] + x1[10]-x1[14]-v4069995139*(x1[2] + x1[10] + x1[14])) + (v732589286 + v604511646-v3067068972-v4069995139*(v732589286 + v604511646 + v3067068972))*(v732589286 + v604511646-v3067068972-v4069995139*(v732589286 + v604511646 + v3067068972)) + (-1.)*(x1[1] + x1[9]-x1[13]-v4069995139*(x1[1] + x1[9] + x1[13]))*(x1[1] + x1[9]-x1[13]-v4069995139*(x1[1] + x1[9] + x1[13])) + (-1.)*(x1[0] + x1[8]-x1[12]-v4069995139*(x1[0] + x1[8] + x1[12]))*(x1[0] + x1[8]-x1[12]-v4069995139*(x1[0] + x1[8] + x1[12])));
  auto v4047607978 = (-1.)*v307827615*((-1.) + (-1.)*((x1[0] + x1[8] + x1[12])*(x1[0] + x1[8] + x1[12]))/(v1719343032)) + (x1[0] + x1[8]-x1[12]-v4069995139*(x1[0] + x1[8] + x1[12]))*(x1[0] + x1[8]-x1[12]-v4069995139*(x1[0] + x1[8] + x1[12]));
  auto v3841916367 = ((x1[1] + x1[9] + x1[13])*(v732589286 + v604511646 + v3067068972)*v307827615)/(v1719343032) + (x1[1] + x1[9]-x1[13]-v4069995139*(x1[1] + x1[9] + x1[13]))*(v732589286 + v604511646-v3067068972-v4069995139*(v732589286 + v604511646 + v3067068972));
  auto v3798882612 = (-1.)*v2970574167*((-1.) + (-1.)*((x1[2] + x1[6] + x1[14])*(x1[2] + x1[6] + x1[14]))/(v373333512)) + (x1[2] + x1[6]-x1[14]-v3569527896*(x1[2] + x1[6] + x1[14]))*(x1[2] + x1[6]-x1[14]-v3569527896*(x1[2] + x1[6] + x1[14]));
  auto v3377188327 = ((x1[0] + x1[4] + x1[12])*(v732589286 + v2683369444 + v3067068972)*v2970574167)/(v373333512) + (x1[0] + x1[4]-x1[12]-v3569527896*(x1[0] + x1[4] + x1[12]))*(v732589286 + v2683369444-v3067068972-v3569527896*(v732589286 + v2683369444 + v3067068972));
  auto v3163002054 = (-1.)*v2970574167*((-1.) + (-1.)*((x1[1] + x1[5] + x1[13])*(x1[1] + x1[5] + x1[13]))/(v373333512)) + (x1[1] + x1[5]-x1[13]-v3569527896*(x1[1] + x1[5] + x1[13]))*(x1[1] + x1[5]-x1[13]-v3569527896*(x1[1] + x1[5] + x1[13]));
  auto v3133487012 = ((x1[0] + x1[8] + x1[12])*(v732589286 + v604511646 + v3067068972)*v307827615)/(v1719343032) + (x1[0] + x1[8]-x1[12]-v4069995139*(x1[0] + x1[8] + x1[12]))*(v732589286 + v604511646-v3067068972-v4069995139*(v732589286 + v604511646 + v3067068972));
  auto v3078308559 = ((-1.)*(x1[2] + x1[6])*(x1[2]-x1[6]) + (v732589286-v2683369444)*(v732589286 + v2683369444) + (-1.)*(x1[1] + x1[5])*(x1[1]-x1[5]) + (-1.)*(x1[0] + x1[4])*(x1[0]-x1[4]))/(v3467292341);
  auto v3067810650 = ((x1[1] + x1[5] + x1[13])*(x1[2] + x1[6] + x1[14])*v2970574167)/(v373333512) + (x1[1] + x1[5]-x1[13]-v3569527896*(x1[1] + x1[5] + x1[13]))*(x1[2] + x1[6]-x1[14]-v3569527896*(x1[2] + x1[6] + x1[14]));
  auto v2968038150 = ((x1[0] + x1[4] + x1[12])*(x1[1] + x1[5] + x1[13])*v2970574167)/(v373333512) + (x1[0] + x1[4]-x1[12]-v3569527896*(x1[0] + x1[4] + x1[12]))*(x1[1] + x1[5]-x1[13]-v3569527896*(x1[1] + x1[5] + x1[13]));
  auto v2819862969 = (-1.)*v2970574167*((1.) + (-1.)*((v732589286 + v2683369444 + v3067068972)*(v732589286 + v2683369444 + v3067068972))/(v373333512)) + (v732589286 + v2683369444-v3067068972-v3569527896*(v732589286 + v2683369444 + v3067068972))*(v732589286 + v2683369444-v3067068972-v3569527896*(v732589286 + v2683369444 + v3067068972));
  auto v2670871143 = ((-1.)*(x1[2] + x1[10])*(x1[2]-x1[10]) + (v732589286-v604511646)*(v732589286 + v604511646) + (-1.)*(x1[1] + x1[9])*(x1[1]-x1[9]) + (-1.)*(x1[0] + x1[8])*(x1[0]-x1[8]))/(v403366188);
  auto v2202735342 = ((x1[1] + x1[9] + x1[13])*(x1[2] + x1[10] + x1[14])*v307827615)/(v1719343032) + (x1[1] + x1[9]-x1[13]-v4069995139*(x1[1] + x1[9] + x1[13]))*(x1[2] + x1[10]-x1[14]-v4069995139*(x1[2] + x1[10] + x1[14]));
  auto v2143394098 = ((x1[0] + x1[8] + x1[12])*(x1[1] + x1[9] + x1[13])*v307827615)/(v1719343032) + (x1[0] + x1[8]-x1[12]-v4069995139*(x1[0] + x1[8] + x1[12]))*(x1[1] + x1[9]-x1[13]-v4069995139*(x1[1] + x1[9] + x1[13]));
  auto v2015633542 = ((x1[2] + x1[10] + x1[14])*(v732589286 + v604511646 + v3067068972)*v307827615)/(v1719343032) + (x1[2] + x1[10]-x1[14]-v4069995139*(x1[2] + x1[10] + x1[14]))*(v732589286 + v604511646-v3067068972-v4069995139*(v732589286 + v604511646 + v3067068972));
  auto v1807869436 = (-1.)*v2970574167*((-1.) + (-1.)*((x1[0] + x1[4] + x1[12])*(x1[0] + x1[4] + x1[12]))/(v373333512)) + (x1[0] + x1[4]-x1[12]-v3569527896*(x1[0] + x1[4] + x1[12]))*(x1[0] + x1[4]-x1[12]-v3569527896*(x1[0] + x1[4] + x1[12]));
  auto v1676202577 = (-1.)*v307827615*((1.) + (-1.)*((v732589286 + v604511646 + v3067068972)*(v732589286 + v604511646 + v3067068972))/(v1719343032)) + (v732589286 + v604511646-v3067068972-v4069995139*(v732589286 + v604511646 + v3067068972))*(v732589286 + v604511646-v3067068972-v4069995139*(v732589286 + v604511646 + v3067068972));
  auto v1621697145 = v2429468304*v2288976811;
  auto v1599902676 = (-1.)*v307827615*((-1.) + (-1.)*((x1[1] + x1[9] + x1[13])*(x1[1] + x1[9] + x1[13]))/(v1719343032)) + (x1[1] + x1[9]-x1[13]-v4069995139*(x1[1] + x1[9] + x1[13]))*(x1[1] + x1[9]-x1[13]-v4069995139*(x1[1] + x1[9] + x1[13]));
  auto v1386775047 = ((x1[0] + x1[4] + x1[12])*(x1[2] + x1[6] + x1[14])*v2970574167)/(v373333512) + (x1[0] + x1[4]-x1[12]-v3569527896*(x1[0] + x1[4] + x1[12]))*(x1[2] + x1[6]-x1[14]-v3569527896*(x1[2] + x1[6] + x1[14]));
  auto v1255498203 = ((-1.)*(x1[2] + x1[6] + x1[14] + x1[10])*(x1[2] + x1[6] + x1[14]-x1[10]) + (v732589286 + v2683369444 + v3067068972-v604511646)*(v732589286 + v2683369444 + v3067068972 + v604511646) + (-1.)*(x1[1] + x1[5] + x1[13] + x1[9])*(x1[1] + x1[5] + x1[13]-x1[9]) + (-1.)*(x1[0] + x1[4] + x1[12] + x1[8])*(x1[0] + x1[4] + x1[12]-x1[8]))/(v1904166516);
  auto v1199925187 = ((x1[0] + x1[8] + x1[12])*(x1[2] + x1[10] + x1[14])*v307827615)/(v1719343032) + (x1[0] + x1[8]-x1[12]-v4069995139*(x1[0] + x1[8] + x1[12]))*(x1[2] + x1[10]-x1[14]-v4069995139*(x1[2] + x1[10] + x1[14]));
  auto v1160649490 = ((x1[1] + x1[5] + x1[13])*(v732589286 + v2683369444 + v3067068972)*v2970574167)/(v373333512) + (x1[1] + x1[5]-x1[13]-v3569527896*(x1[1] + x1[5] + x1[13]))*(v732589286 + v2683369444-v3067068972-v3569527896*(v732589286 + v2683369444 + v3067068972));
  auto v1044272063 = v3166152392*v1546527259;
  auto v843449347 = ((-1.)*(x1[2] + x1[10] + x1[14] + x1[6])*(x1[2] + x1[10] + x1[14]-x1[6]) + (v732589286 + v604511646 + v3067068972-v2683369444)*(v732589286 + v604511646 + v3067068972 + v2683369444) + (-1.)*(x1[1] + x1[9] + x1[13] + x1[5])*(x1[1] + x1[9] + x1[13]-x1[5]) + (-1.)*(x1[0] + x1[8] + x1[12] + x1[4])*(x1[0] + x1[8] + x1[12]-x1[4]))/(v1904166516);
  auto v832959113 = ((x1[2] + x1[6] + x1[14])*(v732589286 + v2683369444 + v3067068972)*v2970574167)/(v373333512) + (x1[2] + x1[6]-x1[14]-v3569527896*(x1[2] + x1[6] + x1[14]))*(v732589286 + v2683369444-v3067068972-v3569527896*(v732589286 + v2683369444 + v3067068972));
  auto v283266646 = (-1.)*v307827615*((-1.) + (-1.)*((x1[2] + x1[10] + x1[14])*(x1[2] + x1[10] + x1[14]))/(v1719343032)) + (x1[2] + x1[10]-x1[14]-v4069995139*(x1[2] + x1[10] + x1[14]))*(x1[2] + x1[10]-x1[14]-v4069995139*(x1[2] + x1[10] + x1[14]));
return (0.707107)*(v1621697145*((-1.)*((-1.)*(((x1[0] + x1[8] + x1[12])*(x1[1] + x1[9] + x1[13])*v2143394098)/(v1719343032) + (-1.)*((-1.) + (-1.)*((x1[1] + x1[9] + x1[13])*(x1[1] + x1[9] + x1[13]))/(v1719343032))*v1599902676 + ((x1[2] + x1[10] + x1[14])*(x1[1] + x1[9] + x1[13])*v2202735342)/(v1719343032) + (-1.)*((v732589286 + v604511646 + v3067068972)*(x1[1] + x1[9] + x1[13]))/(v1719343032)*v3841916367)*(x1[1]-x1[9]-v2670871143*(x1[1] + x1[9])) + (-1.)*(((x1[0] + x1[8] + x1[12])*(x1[1] + x1[9] + x1[13])*v4047607978)/(v1719343032) + (-1.)*((-1.) + (-1.)*((x1[1] + x1[9] + x1[13])*(x1[1] + x1[9] + x1[13]))/(v1719343032))*v2143394098 + ((x1[2] + x1[10] + x1[14])*(x1[1] + x1[9] + x1[13])*v1199925187)/(v1719343032) + (-1.)*((v732589286 + v604511646 + v3067068972)*(x1[1] + x1[9] + x1[13]))/(v1719343032)*v3133487012)*(x1[0]-x1[8]-v2670871143*(x1[0] + x1[8])) + (-1.)*(((x1[0] + x1[8] + x1[12])*(x1[1] + x1[9] + x1[13])*v1199925187)/(v1719343032) + (-1.)*((-1.) + (-1.)*((x1[1] + x1[9] + x1[13])*(x1[1] + x1[9] + x1[13]))/(v1719343032))*v2202735342 + ((x1[2] + x1[10] + x1[14])*(x1[1] + x1[9] + x1[13])*v283266646)/(v1719343032) + (-1.)*((v732589286 + v604511646 + v3067068972)*(x1[1] + x1[9] + x1[13]))/(v1719343032)*v2015633542)*(x1[2]-x1[10]-v2670871143*(x1[2] + x1[10])) + (v732589286-v604511646-v2670871143*(v732589286 + v604511646))*(((x1[0] + x1[8] + x1[12])*(x1[1] + x1[9] + x1[13])*v3133487012)/(v1719343032) + (-1.)*((-1.) + (-1.)*((x1[1] + x1[9] + x1[13])*(x1[1] + x1[9] + x1[13]))/(v1719343032))*v3841916367 + ((x1[2] + x1[10] + x1[14])*(x1[1] + x1[9] + x1[13])*v2015633542)/(v1719343032) + (-1.)*((v732589286 + v604511646 + v3067068972)*(x1[1] + x1[9] + x1[13]))/(v1719343032)*v1676202577))*(x1[1] + x1[9] + x1[13]-x1[5]-v843449347*(x1[1] + x1[9] + x1[13] + x1[5])) + (-1.)*((-1.)*(((x1[1] + x1[9] + x1[13])*(x1[0] + x1[8] + x1[12])*v1599902676)/(v1719343032) + (-1.)*((-1.) + (-1.)*((x1[0] + x1[8] + x1[12])*(x1[0] + x1[8] + x1[12]))/(v1719343032))*v2143394098 + ((x1[2] + x1[10] + x1[14])*(x1[0] + x1[8] + x1[12])*v2202735342)/(v1719343032) + (-1.)*((v732589286 + v604511646 + v3067068972)*(x1[0] + x1[8] + x1[12]))/(v1719343032)*v3841916367)*(x1[1]-x1[9]-v2670871143*(x1[1] + x1[9])) + (-1.)*(((x1[1] + x1[9] + x1[13])*(x1[0] + x1[8] + x1[12])*v2143394098)/(v1719343032) + (-1.)*((-1.) + (-1.)*((x1[0] + x1[8] + x1[12])*(x1[0] + x1[8] + x1[12]))/(v1719343032))*v4047607978 + ((x1[2] + x1[10] + x1[14])*(x1[0] + x1[8] + x1[12])*v1199925187)/(v1719343032) + (-1.)*((v732589286 + v604511646 + v3067068972)*(x1[0] + x1[8] + x1[12]))/(v1719343032)*v3133487012)*(x1[0]-x1[8]-v2670871143*(x1[0] + x1[8])) + (-1.)*(((x1[1] + x1[9] + x1[13])*(x1[0] + x1[8] + x1[12])*v2202735342)/(v1719343032) + (-1.)*((-1.) + (-1.)*((x1[0] + x1[8] + x1[12])*(x1[0] + x1[8] + x1[12]))/(v1719343032))*v1199925187 + ((x1[2] + x1[10] + x1[14])*(x1[0] + x1[8] + x1[12])*v283266646)/(v1719343032) + (-1.)*((v732589286 + v604511646 + v3067068972)*(x1[0] + x1[8] + x1[12]))/(v1719343032)*v2015633542)*(x1[2]-x1[10]-v2670871143*(x1[2] + x1[10])) + (v732589286-v604511646-v2670871143*(v732589286 + v604511646))*(((x1[1] + x1[9] + x1[13])*(x1[0] + x1[8] + x1[12])*v3841916367)/(v1719343032) + (-1.)*((-1.) + (-1.)*((x1[0] + x1[8] + x1[12])*(x1[0] + x1[8] + x1[12]))/(v1719343032))*v3133487012 + ((x1[2] + x1[10] + x1[14])*(x1[0] + x1[8] + x1[12])*v2015633542)/(v1719343032) + (-1.)*((v732589286 + v604511646 + v3067068972)*(x1[0] + x1[8] + x1[12]))/(v1719343032)*v1676202577))*(x1[0] + x1[8] + x1[12]-x1[4]-v843449347*(x1[0] + x1[8] + x1[12] + x1[4])) + (-1.)*((-1.)*(((x1[0] + x1[8] + x1[12])*(x1[2] + x1[10] + x1[14])*v2143394098)/(v1719343032) + ((x1[1] + x1[9] + x1[13])*(x1[2] + x1[10] + x1[14])*v1599902676)/(v1719343032) + (-1.)*((-1.) + (-1.)*((x1[2] + x1[10] + x1[14])*(x1[2] + x1[10] + x1[14]))/(v1719343032))*v2202735342 + (-1.)*((v732589286 + v604511646 + v3067068972)*(x1[2] + x1[10] + x1[14]))/(v1719343032)*v3841916367)*(x1[1]-x1[9]-v2670871143*(x1[1] + x1[9])) + (-1.)*(((x1[0] + x1[8] + x1[12])*(x1[2] + x1[10] + x1[14])*v4047607978)/(v1719343032) + ((x1[1] + x1[9] + x1[13])*(x1[2] + x1[10] + x1[14])*v2143394098)/(v1719343032) + (-1.)*((-1.) + (-1.)*((x1[2] + x1[10] + x1[14])*(x1[2] + x1[10] + x1[14]))/(v1719343032))*v1199925187 + (-1.)*((v732589286 + v604511646 + v3067068972)*(x1[2] + x1[10] + x1[14]))/(v1719343032)*v3133487012)*(x1[0]-x1[8]-v2670871143*(x1[0] + x1[8])) + (-1.)*(((x1[0] + x1[8] + x1[12])*(x1[2] + x1[10] + x1[14])*v1199925187)/(v1719343032) + ((x1[1] + x1[9] + x1[13])*(x1[2] + x1[10] + x1[14])*v2202735342)/(v1719343032) + (-1.)*((-1.) + (-1.)*((x1[2] + x1[10] + x1[14])*(x1[2] + x1[10] + x1[14]))/(v1719343032))*v283266646 + (-1.)*((v732589286 + v604511646 + v3067068972)*(x1[2] + x1[10] + x1[14]))/(v1719343032)*v2015633542)*(x1[2]-x1[10]-v2670871143*(x1[2] + x1[10])) + (v732589286-v604511646-v2670871143*(v732589286 + v604511646))*(((x1[0] + x1[8] + x1[12])*(x1[2] + x1[10] + x1[14])*v3133487012)/(v1719343032) + ((x1[1] + x1[9] + x1[13])*(x1[2] + x1[10] + x1[14])*v3841916367)/(v1719343032) + (-1.)*((-1.) + (-1.)*((x1[2] + x1[10] + x1[14])*(x1[2] + x1[10] + x1[14]))/(v1719343032))*v2015633542 + (-1.)*((v732589286 + v604511646 + v3067068972)*(x1[2] + x1[10] + x1[14]))/(v1719343032)*v1676202577))*(x1[2] + x1[10] + x1[14]-x1[6]-v843449347*(x1[2] + x1[10] + x1[14] + x1[6])) + (v732589286 + v604511646 + v3067068972-v2683369444-v843449347*(v732589286 + v604511646 + v3067068972 + v2683369444))*((-1.)*(((x1[0] + x1[8] + x1[12])*(v732589286 + v604511646 + v3067068972)*v2143394098)/(v1719343032) + ((x1[1] + x1[9] + x1[13])*(v732589286 + v604511646 + v3067068972)*v1599902676)/(v1719343032) + ((x1[2] + x1[10] + x1[14])*(v732589286 + v604511646 + v3067068972)*v2202735342)/(v1719343032) + v3841916367*((1.) + (-1.)*((v732589286 + v604511646 + v3067068972)*(v732589286 + v604511646 + v3067068972))/(v1719343032)))*(x1[1]-x1[9]-v2670871143*(x1[1] + x1[9])) + (-1.)*(((x1[0] + x1[8] + x1[12])*(v732589286 + v604511646 + v3067068972)*v4047607978)/(v1719343032) + ((x1[1] + x1[9] + x1[13])*(v732589286 + v604511646 + v3067068972)*v2143394098)/(v1719343032) + ((x1[2] + x1[10] + x1[14])*(v732589286 + v604511646 + v3067068972)*v1199925187)/(v1719343032) + v3133487012*((1.) + (-1.)*((v732589286 + v604511646 + v3067068972)*(v732589286 + v604511646 + v3067068972))/(v1719343032)))*(x1[0]-x1[8]-v2670871143*(x1[0] + x1[8])) + (-1.)*(((x1[0] + x1[8] + x1[12])*(v732589286 + v604511646 + v3067068972)*v1199925187)/(v1719343032) + ((x1[1] + x1[9] + x1[13])*(v732589286 + v604511646 + v3067068972)*v2202735342)/(v1719343032) + ((x1[2] + x1[10] + x1[14])*(v732589286 + v604511646 + v3067068972)*v283266646)/(v1719343032) + v2015633542*((1.) + (-1.)*((v732589286 + v604511646 + v3067068972)*(v732589286 + v604511646 + v3067068972))/(v1719343032)))*(x1[2]-x1[10]-v2670871143*(x1[2] + x1[10])) + (v732589286-v604511646-v2670871143*(v732589286 + v604511646))*(((x1[0] + x1[8] + x1[12])*(v732589286 + v604511646 + v3067068972)*v3133487012)/(v1719343032) + ((x1[1] + x1[9] + x1[13])*(v732589286 + v604511646 + v3067068972)*v3841916367)/(v1719343032) + ((x1[2] + x1[10] + x1[14])*(v732589286 + v604511646 + v3067068972)*v2015633542)/(v1719343032) + v1676202577*((1.) + (-1.)*((v732589286 + v604511646 + v3067068972)*(v732589286 + v604511646 + v3067068972))/(v1719343032))))) + v1044272063*((-1.)*((-1.)*(((x1[0] + x1[4] + x1[12])*(x1[1] + x1[5] + x1[13])*v2968038150)/(v373333512) + (-1.)*((-1.) + (-1.)*((x1[1] + x1[5] + x1[13])*(x1[1] + x1[5] + x1[13]))/(v373333512))*v3163002054 + ((x1[2] + x1[6] + x1[14])*(x1[1] + x1[5] + x1[13])*v3067810650)/(v373333512) + (-1.)*((v732589286 + v2683369444 + v3067068972)*(x1[1] + x1[5] + x1[13]))/(v373333512)*v1160649490)*(x1[1]-x1[5]-v3078308559*(x1[1] + x1[5])) + (-1.)*(((x1[0] + x1[4] + x1[12])*(x1[1] + x1[5] + x1[13])*v1807869436)/(v373333512) + (-1.)*((-1.) + (-1.)*((x1[1] + x1[5] + x1[13])*(x1[1] + x1[5] + x1[13]))/(v373333512))*v2968038150 + ((x1[2] + x1[6] + x1[14])*(x1[1] + x1[5] + x1[13])*v1386775047)/(v373333512) + (-1.)*((v732589286 + v2683369444 + v3067068972)*(x1[1] + x1[5] + x1[13]))/(v373333512)*v3377188327)*(x1[0]-x1[4]-v3078308559*(x1[0] + x1[4])) + (-1.)*(((x1[0] + x1[4] + x1[12])*(x1[1] + x1[5] + x1[13])*v1386775047)/(v373333512) + (-1.)*((-1.) + (-1.)*((x1[1] + x1[5] + x1[13])*(x1[1] + x1[5] + x1[13]))/(v373333512))*v3067810650 + ((x1[2] + x1[6] + x1[14])*(x1[1] + x1[5] + x1[13])*v3798882612)/(v373333512) + (-1.)*((v732589286 + v2683369444 + v3067068972)*(x1[1] + x1[5] + x1[13]))/(v373333512)*v832959113)*(x1[2]-x1[6]-v3078308559*(x1[2] + x1[6])) + (v732589286-v2683369444-v3078308559*(v732589286 + v2683369444))*(((x1[0] + x1[4] + x1[12])*(x1[1] + x1[5] + x1[13])*v3377188327)/(v373333512) + (-1.)*((-1.) + (-1.)*((x1[1] + x1[5] + x1[13])*(x1[1] + x1[5] + x1[13]))/(v373333512))*v1160649490 + ((x1[2] + x1[6] + x1[14])*(x1[1] + x1[5] + x1[13])*v832959113)/(v373333512) + (-1.)*((v732589286 + v2683369444 + v3067068972)*(x1[1] + x1[5] + x1[13]))/(v373333512)*v2819862969))*(x1[1] + x1[5] + x1[13]-x1[9]-v1255498203*(x1[1] + x1[5] + x1[13] + x1[9])) + (-1.)*((-1.)*(((x1[1] + x1[5] + x1[13])*(x1[0] + x1[4] + x1[12])*v3163002054)/(v373333512) + (-1.)*((-1.) + (-1.)*((x1[0] + x1[4] + x1[12])*(x1[0] + x1[4] + x1[12]))/(v373333512))*v2968038150 + ((x1[2] + x1[6] + x1[14])*(x1[0] + x1[4] + x1[12])*v3067810650)/(v373333512) + (-1.)*((v732589286 + v2683369444 + v3067068972)*(x1[0] + x1[4] + x1[12]))/(v373333512)*v1160649490)*(x1[1]-x1[5]-v3078308559*(x1[1] + x1[5])) + (-1.)*(((x1[1] + x1[5] + x1[13])*(x1[0] + x1[4] + x1[12])*v2968038150)/(v373333512) + (-1.)*((-1.) + (-1.)*((x1[0] + x1[4] + x1[12])*(x1[0] + x1[4] + x1[12]))/(v373333512))*v1807869436 + ((x1[2] + x1[6] + x1[14])*(x1[0] + x1[4] + x1[12])*v1386775047)/(v373333512) + (-1.)*((v732589286 + v2683369444 + v3067068972)*(x1[0] + x1[4] + x1[12]))/(v373333512)*v3377188327)*(x1[0]-x1[4]-v3078308559*(x1[0] + x1[4])) + (-1.)*(((x1[1] + x1[5] + x1[13])*(x1[0] + x1[4] + x1[12])*v3067810650)/(v373333512) + (-1.)*((-1.) + (-1.)*((x1[0] + x1[4] + x1[12])*(x1[0] + x1[4] + x1[12]))/(v373333512))*v1386775047 + ((x1[2] + x1[6] + x1[14])*(x1[0] + x1[4] + x1[12])*v3798882612)/(v373333512) + (-1.)*((v732589286 + v2683369444 + v3067068972)*(x1[0] + x1[4] + x1[12]))/(v373333512)*v832959113)*(x1[2]-x1[6]-v3078308559*(x1[2] + x1[6])) + (v732589286-v2683369444-v3078308559*(v732589286 + v2683369444))*(((x1[1] + x1[5] + x1[13])*(x1[0] + x1[4] + x1[12])*v1160649490)/(v373333512) + (-1.)*((-1.) + (-1.)*((x1[0] + x1[4] + x1[12])*(x1[0] + x1[4] + x1[12]))/(v373333512))*v3377188327 + ((x1[2] + x1[6] + x1[14])*(x1[0] + x1[4] + x1[12])*v832959113)/(v373333512) + (-1.)*((v732589286 + v2683369444 + v3067068972)*(x1[0] + x1[4] + x1[12]))/(v373333512)*v2819862969))*(x1[0] + x1[4] + x1[12]-x1[8]-v1255498203*(x1[0] + x1[4] + x1[12] + x1[8])) + (-1.)*((-1.)*(((x1[0] + x1[4] + x1[12])*(x1[2] + x1[6] + x1[14])*v2968038150)/(v373333512) + ((x1[1] + x1[5] + x1[13])*(x1[2] + x1[6] + x1[14])*v3163002054)/(v373333512) + (-1.)*((-1.) + (-1.)*((x1[2] + x1[6] + x1[14])*(x1[2] + x1[6] + x1[14]))/(v373333512))*v3067810650 + (-1.)*((v732589286 + v2683369444 + v3067068972)*(x1[2] + x1[6] + x1[14]))/(v373333512)*v1160649490)*(x1[1]-x1[5]-v3078308559*(x1[1] + x1[5])) + (-1.)*(((x1[0] + x1[4] + x1[12])*(x1[2] + x1[6] + x1[14])*v1807869436)/(v373333512) + ((x1[1] + x1[5] + x1[13])*(x1[2] + x1[6] + x1[14])*v2968038150)/(v373333512) + (-1.)*((-1.) + (-1.)*((x1[2] + x1[6] + x1[14])*(x1[2] + x1[6] + x1[14]))/(v373333512))*v1386775047 + (-1.)*((v732589286 + v2683369444 + v3067068972)*(x1[2] + x1[6] + x1[14]))/(v373333512)*v3377188327)*(x1[0]-x1[4]-v3078308559*(x1[0] + x1[4])) + (-1.)*(((x1[0] + x1[4] + x1[12])*(x1[2] + x1[6] + x1[14])*v1386775047)/(v373333512) + ((x1[1] + x1[5] + x1[13])*(x1[2] + x1[6] + x1[14])*v3067810650)/(v373333512) + (-1.)*((-1.) + (-1.)*((x1[2] + x1[6] + x1[14])*(x1[2] + x1[6] + x1[14]))/(v373333512))*v3798882612 + (-1.)*((v732589286 + v2683369444 + v3067068972)*(x1[2] + x1[6] + x1[14]))/(v373333512)*v832959113)*(x1[2]-x1[6]-v3078308559*(x1[2] + x1[6])) + (v732589286-v2683369444-v3078308559*(v732589286 + v2683369444))*(((x1[0] + x1[4] + x1[12])*(x1[2] + x1[6] + x1[14])*v3377188327)/(v373333512) + ((x1[1] + x1[5] + x1[13])*(x1[2] + x1[6] + x1[14])*v1160649490)/(v373333512) + (-1.)*((-1.) + (-1.)*((x1[2] + x1[6] + x1[14])*(x1[2] + x1[6] + x1[14]))/(v373333512))*v832959113 + (-1.)*((v732589286 + v2683369444 + v3067068972)*(x1[2] + x1[6] + x1[14]))/(v373333512)*v2819862969))*(x1[2] + x1[6] + x1[14]-x1[10]-v1255498203*(x1[2] + x1[6] + x1[14] + x1[10])) + (v732589286 + v2683369444 + v3067068972-v604511646-v1255498203*(v732589286 + v2683369444 + v3067068972 + v604511646))*((-1.)*(((x1[0] + x1[4] + x1[12])*(v732589286 + v2683369444 + v3067068972)*v2968038150)/(v373333512) + ((x1[1] + x1[5] + x1[13])*(v732589286 + v2683369444 + v3067068972)*v3163002054)/(v373333512) + ((x1[2] + x1[6] + x1[14])*(v732589286 + v2683369444 + v3067068972)*v3067810650)/(v373333512) + v1160649490*((1.) + (-1.)*((v732589286 + v2683369444 + v3067068972)*(v732589286 + v2683369444 + v3067068972))/(v373333512)))*(x1[1]-x1[5]-v3078308559*(x1[1] + x1[5])) + (-1.)*(((x1[0] + x1[4] + x1[12])*(v732589286 + v2683369444 + v3067068972)*v1807869436)/(v373333512) + ((x1[1] + x1[5] + x1[13])*(v732589286 + v2683369444 + v3067068972)*v2968038150)/(v373333512) + ((x1[2] + x1[6] + x1[14])*(v732589286 + v2683369444 + v3067068972)*v1386775047)/(v373333512) + v3377188327*((1.) + (-1.)*((v732589286 + v2683369444 + v3067068972)*(v732589286 + v2683369444 + v3067068972))/(v373333512)))*(x1[0]-x1[4]-v3078308559*(x1[0] + x1[4])) + (-1.)*(((x1[0] + x1[4] + x1[12])*(v732589286 + v2683369444 + v3067068972)*v1386775047)/(v373333512) + ((x1[1] + x1[5] + x1[13])*(v732589286 + v2683369444 + v3067068972)*v3067810650)/(v373333512) + ((x1[2] + x1[6] + x1[14])*(v732589286 + v2683369444 + v3067068972)*v3798882612)/(v373333512) + v832959113*((1.) + (-1.)*((v732589286 + v2683369444 + v3067068972)*(v732589286 + v2683369444 + v3067068972))/(v373333512)))*(x1[2]-x1[6]-v3078308559*(x1[2] + x1[6])) + (v732589286-v2683369444-v3078308559*(v732589286 + v2683369444))*(((x1[0] + x1[4] + x1[12])*(v732589286 + v2683369444 + v3067068972)*v3377188327)/(v373333512) + ((x1[1] + x1[5] + x1[13])*(v732589286 + v2683369444 + v3067068972)*v1160649490)/(v373333512) + ((x1[2] + x1[6] + x1[14])*(v732589286 + v2683369444 + v3067068972)*v832959113)/(v373333512) + v2819862969*((1.) + (-1.)*((v732589286 + v2683369444 + v3067068972)*(v732589286 + v2683369444 + v3067068972))/(v373333512))))));
}

extern "C" std::complex<double> D0_K_1__1270_p_D_GSpline_EFF__Ks_892_0_Kp_pim__pip__pim__wParams( const double*__restrict__ E ){
  double externalParameters [] = {3.7559, 1.28981, 0.11611, 1.7, 6.62044e-09, 8.1034e-05, 0.000601093, 0.00199416, 0.00478532, 0.0097556, 0.0184164, 0.0348721, 0.0672518, 0.105115, 0.142193, 0.182565, 0.231309, 0.295139, 0.383415, 0.507206, 0.673751, 0.918665, 1.18142, 1.41125, 1.61709, 1.80236, 1.97044, 2.12449, 2.26729, 2.40124, 2.52841, 2.65063, 2.76952, 2.88658, 3.0032, 3.12073, 3.24046, 3.36373, 3.49188, 3.62634, 3.76865, 3.92048, 4.08365, 4.26015, 0, 0.1176547684, 0.22497165, 0.3656306816, 0.5276092204, 0.9764756867, 1.413655658, 5.71894637, 0.9401463614, -0.7916115034, 0.9822484023, 2.081549144, 3.955942521, 5.996562022, 10.78944064, 7.114753541, 28.48991394, 3.091475055, -12.58897979, -4.901102773, -5.815765367, -4.426429507, -3.713922855, -2.946660324, -2.323654598, -1.780440033, -1.296647771, -0.8756251333, -0.4768204459, -0.1164993331, 0.2456927782, 0.5755094702, 0.9378943409, 1.281600666, 1.667452995, 2.045993606, 2.585916333, 2.693591061, 4.606531922, 0, 0.896, 0.0503, 1.5 }; 
  return D0_K_1__1270_p_D_GSpline_EFF__Ks_892_0_Kp_pim__pip__pim_( externalParameters, E ); // E is P 
}
extern "C" const char* D0_K_1__1270_p_GSpline_EFF__Ks_892_0_Kp_pim__pip__pim__name() {  return "D0{K(1)(1270)+[GSpline.EFF]{K*(892)0{K+,pi-},pi+},pi-}"; } 
extern "C" std::complex<double> D0_K_1__1270_p_GSpline_EFF__Ks_892_0_Kp_pim__pip__pim_(double const* x0, double const* x1){
  auto v3067068972 = sqrt((0.01948) + x1[12]*x1[12] + x1[13]*x1[13] + x1[14]*x1[14]);
  auto v2683369444 = sqrt((0.01948) + x1[4]*x1[4] + x1[5]*x1[5] + x1[6]*x1[6]);
  auto v732589286 = sqrt((0.243717) + x1[0]*x1[0] + x1[1]*x1[1] + x1[2]*x1[2]);
  auto v604511646 = sqrt((0.01948) + x1[8]*x1[8] + x1[9]*x1[9] + x1[10]*x1[10]);
  auto v2652496757 = x0[1]*x0[1];
  auto v2627373007 = (-1.)*(x1[2] + x1[10] + x1[14])*(x1[2] + x1[10] + x1[14]) + (v732589286 + v604511646 + v3067068972)*(v732589286 + v604511646 + v3067068972) + (-1.)*(x1[1] + x1[9] + x1[13])*(x1[1] + x1[9] + x1[13]) + (-1.)*(x1[0] + x1[8] + x1[12])*(x1[0] + x1[8] + x1[12]);
  auto v1521070335 = (-1.)*(x1[2] + x1[10])*(x1[2] + x1[10]) + (v732589286 + v604511646)*(v732589286 + v604511646) + (-1.)*(x1[1] + x1[9])*(x1[1] + x1[9]) + (-1.)*(x1[0] + x1[8])*(x1[0] + x1[8]);
  auto v1139362541 = (-1.)*(x1[2] + x1[6])*(x1[2] + x1[6]) + (v732589286 + v2683369444)*(v732589286 + v2683369444) + (-1.)*(x1[1] + x1[5])*(x1[1] + x1[5]) + (-1.)*(x1[0] + x1[4])*(x1[0] + x1[4]);
  auto v325855721 = (-1.)*(x1[2] + x1[6] + x1[14])*(x1[2] + x1[6] + x1[14]) + (v732589286 + v2683369444 + v3067068972)*(v732589286 + v2683369444 + v3067068972) + (-1.)*(x1[1] + x1[5] + x1[13])*(x1[1] + x1[5] + x1[13]) + (-1.)*(x1[0] + x1[4] + x1[12])*(x1[0] + x1[4] + x1[12]);
  auto v4237252271 = (-1.)*(x1[2] + x1[6] + x1[14] + x1[10])*(x1[2] + x1[6] + x1[14] + x1[10]) + (v732589286 + v2683369444 + v3067068972 + v604511646)*(v732589286 + v2683369444 + v3067068972 + v604511646) + (-1.)*(x1[1] + x1[5] + x1[13] + x1[9])*(x1[1] + x1[5] + x1[13] + x1[9]) + (-1.)*(x1[0] + x1[4] + x1[12] + x1[8])*(x1[0] + x1[4] + x1[12] + x1[8]);
  auto v3248711278 = (((v325855721>(0.6))&&(v325855721<(3.)))?x0[4+int((16.25)*(v325855721-(0.6)))] + fmod(v325855721-(0.6),(0.061538))*((16.25)*(x0[4+int((1.) + (16.25)*(v325855721-(0.6)))]-x0[4+int((16.25)*(v325855721-(0.6)))])-(0.010256)*(x0[4+int((41.) + (16.25)*(v325855721-(0.6)))] + (2.)*x0[4+int((40.) + (16.25)*(v325855721-(0.6)))])) + (0.5)*x0[4+int((40.) + (16.25)*(v325855721-(0.6)))]*fmod(v325855721-(0.6),(0.061538))*fmod(v325855721-(0.6),(0.061538)) + (2.708333)*fmod(v325855721-(0.6),(0.061538))*fmod(v325855721-(0.6),(0.061538))*fmod(v325855721-(0.6),(0.061538))*(x0[4+int((41.) + (16.25)*(v325855721-(0.6)))]-x0[4+int((40.) + (16.25)*(v325855721-(0.6)))]):(0.));
  auto v2830794559 = (-1.)*(x1[2] + x1[10] + x1[14] + x1[6])*(x1[2] + x1[10] + x1[14] + x1[6]) + (v732589286 + v604511646 + v3067068972 + v2683369444)*(v732589286 + v604511646 + v3067068972 + v2683369444) + (-1.)*(x1[1] + x1[9] + x1[13] + x1[5])*(x1[1] + x1[9] + x1[13] + x1[5]) + (-1.)*(x1[0] + x1[8] + x1[12] + x1[4])*(x1[0] + x1[8] + x1[12] + x1[4]);
  auto v2222218056 = std::abs((0.25)*(v1521070335-(0.487434)-(0.03896) + ((0.050282))/(v1521070335)));
  auto v1772631356 = (((v2627373007>(0.6))&&(v2627373007<(3.)))?x0[4+int((16.25)*(v2627373007-(0.6)))] + fmod(v2627373007-(0.6),(0.061538))*((16.25)*(x0[4+int((1.) + (16.25)*(v2627373007-(0.6)))]-x0[4+int((16.25)*(v2627373007-(0.6)))])-(0.010256)*(x0[4+int((41.) + (16.25)*(v2627373007-(0.6)))] + (2.)*x0[4+int((40.) + (16.25)*(v2627373007-(0.6)))])) + (0.5)*x0[4+int((40.) + (16.25)*(v2627373007-(0.6)))]*fmod(v2627373007-(0.6),(0.061538))*fmod(v2627373007-(0.6),(0.061538)) + (2.708333)*fmod(v2627373007-(0.6),(0.061538))*fmod(v2627373007-(0.6),(0.061538))*fmod(v2627373007-(0.6),(0.061538))*(x0[4+int((41.) + (16.25)*(v2627373007-(0.6)))]-x0[4+int((40.) + (16.25)*(v2627373007-(0.6)))]):(0.));
  auto v1148200210 = (0.25)*(v1139362541-(0.487434)-(0.03896) + ((0.050282))/(v1139362541));
  auto v1078555364 = (((v2652496757>(0.6))&&(v2652496757<(3.)))?x0[4+int((16.25)*(v2652496757-(0.6)))] + fmod(v2652496757-(0.6),(0.061538))*((16.25)*(x0[4+int((1.) + (16.25)*(v2652496757-(0.6)))]-x0[4+int((16.25)*(v2652496757-(0.6)))])-(0.010256)*(x0[4+int((41.) + (16.25)*(v2652496757-(0.6)))] + (2.)*x0[4+int((40.) + (16.25)*(v2652496757-(0.6)))])) + (0.5)*x0[4+int((40.) + (16.25)*(v2652496757-(0.6)))]*fmod(v2652496757-(0.6),(0.061538))*fmod(v2652496757-(0.6),(0.061538)) + (2.708333)*fmod(v2652496757-(0.6),(0.061538))*fmod(v2652496757-(0.6),(0.061538))*fmod(v2652496757-(0.6),(0.061538))*(x0[4+int((41.) + (16.25)*(v2652496757-(0.6)))]-x0[4+int((40.) + (16.25)*(v2652496757-(0.6)))]):(0.));
  auto v865896472 = std::abs((0.25)*(v1139362541-(0.487434)-(0.03896) + ((0.050282))/(v1139362541)));
  auto v263973954 = (0.25)*(v1521070335-(0.487434)-(0.03896) + ((0.050282))/(v1521070335));
  auto v3544975691 = (sqrt((0.900316)*x0[84]*x0[85]*x0[84]*sqrt(x0[85]*x0[85] + x0[84]*x0[84])*1./sqrt(x0[84]*sqrt(x0[85]*x0[85] + x0[84]*x0[84]) + x0[84]*x0[84]))*sqrt(((1.))/((1.) + v865896472*x0[86]*x0[86])))/(x0[84]*x0[84]-v1139362541-((std::complex<double>(0.,1.)*x0[84]*x0[85]*((1.) + std::abs((0.25)*(x0[84]*x0[84]-(0.487434)-(0.03896) + ((0.050282))/(x0[84]*x0[84])))*x0[86]*x0[86])*sqrt((((v1148200210>(0.))?v1148200210:(0.)))/(std::abs((0.25)*(x0[84]*x0[84]-(0.487434)-(0.03896) + ((0.050282))/(x0[84]*x0[84])))))*((v1148200210>(0.))?v1148200210:(0.))*x0[84]*1./sqrt(v1139362541))/(std::abs((0.25)*(x0[84]*x0[84]-(0.487434)-(0.03896) + ((0.050282))/(x0[84]*x0[84])))))/((1.) + ((v1148200210>(0.))?v1148200210:(0.))*x0[86]*x0[86]));
  auto v2743495210 = (sqrt((0.900316)*x0[1]*x0[2]*x0[1]*sqrt(x0[2]*x0[2] + x0[1]*x0[1])*1./sqrt(x0[1]*sqrt(x0[2]*x0[2] + x0[1]*x0[1]) + x0[1]*x0[1]))*exp((-0.5)*std::abs((0.25)*(v325855721-(2.)*v1139362541-(0.03896) + ((v1139362541-(0.01948))*(v1139362541-(0.01948)))/(v325855721)))*x0[3]*x0[3]))/(x0[1]*x0[1]-(std::complex<double>(0.,1.)*x0[1]*x0[2]*v3248711278)/(v1078555364)-v325855721);
  auto v2635107569 = (0.25)*(v2830794559-(2.)*v2627373007-(0.03896) + ((v2627373007-(0.01948))*(v2627373007-(0.01948)))/(v2830794559));
  auto v2108236252 = (sqrt((0.900316)*x0[84]*x0[85]*x0[84]*sqrt(x0[85]*x0[85] + x0[84]*x0[84])*1./sqrt(x0[84]*sqrt(x0[85]*x0[85] + x0[84]*x0[84]) + x0[84]*x0[84]))*sqrt(((1.))/((1.) + v2222218056*x0[86]*x0[86])))/(x0[84]*x0[84]-v1521070335-((std::complex<double>(0.,1.)*x0[84]*x0[85]*((1.) + std::abs((0.25)*(x0[84]*x0[84]-(0.487434)-(0.03896) + ((0.050282))/(x0[84]*x0[84])))*x0[86]*x0[86])*sqrt((((v263973954>(0.))?v263973954:(0.)))/(std::abs((0.25)*(x0[84]*x0[84]-(0.487434)-(0.03896) + ((0.050282))/(x0[84]*x0[84])))))*((v263973954>(0.))?v263973954:(0.))*x0[84]*1./sqrt(v1521070335))/(std::abs((0.25)*(x0[84]*x0[84]-(0.487434)-(0.03896) + ((0.050282))/(x0[84]*x0[84])))))/((1.) + ((v263973954>(0.))?v263973954:(0.))*x0[86]*x0[86]));
  auto v1390527164 = (0.25)*(v4237252271-(2.)*v325855721-(0.03896) + ((v325855721-(0.01948))*(v325855721-(0.01948)))/(v4237252271));
  auto v847358541 = (sqrt((0.900316)*x0[1]*x0[2]*x0[1]*sqrt(x0[2]*x0[2] + x0[1]*x0[1])*1./sqrt(x0[1]*sqrt(x0[2]*x0[2] + x0[1]*x0[1]) + x0[1]*x0[1]))*exp((-0.5)*std::abs((0.25)*(v2627373007-(2.)*v1521070335-(0.03896) + ((v1521070335-(0.01948))*(v1521070335-(0.01948)))/(v2627373007)))*x0[3]*x0[3]))/(x0[1]*x0[1]-(std::complex<double>(0.,1.)*x0[1]*x0[2]*v1772631356)/(v1078555364)-v2627373007);
  auto v3467292341 = (-1.)*(x1[2] + x1[6])*(x1[2] + x1[6]) + (v732589286 + v2683369444)*(v732589286 + v2683369444) + (-1.)*(x1[1] + x1[5])*(x1[1] + x1[5]) + (-1.)*(x1[0] + x1[4])*(x1[0] + x1[4]);
  auto v3166152392 = sqrt(((1.))/((1.) + v1390527164*x0[0]*x0[0]));
  auto v2429468304 = sqrt(((1.))/((1.) + v2635107569*x0[0]*x0[0]));
  auto v2288976811 = v847358541*v2108236252;
  auto v1904166516 = (-1.)*(x1[2] + x1[6] + x1[14] + x1[10])*(x1[2] + x1[6] + x1[14] + x1[10]) + (v732589286 + v2683369444 + v3067068972 + v604511646)*(v732589286 + v2683369444 + v3067068972 + v604511646) + (-1.)*(x1[1] + x1[5] + x1[13] + x1[9])*(x1[1] + x1[5] + x1[13] + x1[9]) + (-1.)*(x1[0] + x1[4] + x1[12] + x1[8])*(x1[0] + x1[4] + x1[12] + x1[8]);
  auto v1546527259 = v2743495210*v3544975691;
  auto v403366188 = (-1.)*(x1[2] + x1[10])*(x1[2] + x1[10]) + (v732589286 + v604511646)*(v732589286 + v604511646) + (-1.)*(x1[1] + x1[9])*(x1[1] + x1[9]) + (-1.)*(x1[0] + x1[8])*(x1[0] + x1[8]);
  auto v3078308559 = ((-1.)*(x1[2] + x1[6])*(x1[2]-x1[6]) + (v732589286-v2683369444)*(v732589286 + v2683369444) + (-1.)*(x1[1] + x1[5])*(x1[1]-x1[5]) + (-1.)*(x1[0] + x1[4])*(x1[0]-x1[4]))/(v3467292341);
  auto v2670871143 = ((-1.)*(x1[2] + x1[10])*(x1[2]-x1[10]) + (v732589286-v604511646)*(v732589286 + v604511646) + (-1.)*(x1[1] + x1[9])*(x1[1]-x1[9]) + (-1.)*(x1[0] + x1[8])*(x1[0]-x1[8]))/(v403366188);
  auto v1719343032 = (-1.)*(x1[2] + x1[10] + x1[14])*(x1[2] + x1[10] + x1[14]) + (v732589286 + v604511646 + v3067068972)*(v732589286 + v604511646 + v3067068972) + (-1.)*(x1[1] + x1[9] + x1[13])*(x1[1] + x1[9] + x1[13]) + (-1.)*(x1[0] + x1[8] + x1[12])*(x1[0] + x1[8] + x1[12]);
  auto v1621697145 = v2429468304*v2288976811;
  auto v1255498203 = ((-1.)*(x1[2] + x1[6] + x1[14] + x1[10])*(x1[2] + x1[6] + x1[14]-x1[10]) + (v732589286 + v2683369444 + v3067068972-v604511646)*(v732589286 + v2683369444 + v3067068972 + v604511646) + (-1.)*(x1[1] + x1[5] + x1[13] + x1[9])*(x1[1] + x1[5] + x1[13]-x1[9]) + (-1.)*(x1[0] + x1[4] + x1[12] + x1[8])*(x1[0] + x1[4] + x1[12]-x1[8]))/(v1904166516);
  auto v1044272063 = v3166152392*v1546527259;
  auto v843449347 = ((-1.)*(x1[2] + x1[10] + x1[14] + x1[6])*(x1[2] + x1[10] + x1[14]-x1[6]) + (v732589286 + v604511646 + v3067068972-v2683369444)*(v732589286 + v604511646 + v3067068972 + v2683369444) + (-1.)*(x1[1] + x1[9] + x1[13] + x1[5])*(x1[1] + x1[9] + x1[13]-x1[5]) + (-1.)*(x1[0] + x1[8] + x1[12] + x1[4])*(x1[0] + x1[8] + x1[12]-x1[4]))/(v1904166516);
  auto v373333512 = (-1.)*(x1[2] + x1[6] + x1[14])*(x1[2] + x1[6] + x1[14]) + (v732589286 + v2683369444 + v3067068972)*(v732589286 + v2683369444 + v3067068972) + (-1.)*(x1[1] + x1[5] + x1[13])*(x1[1] + x1[5] + x1[13]) + (-1.)*(x1[0] + x1[4] + x1[12])*(x1[0] + x1[4] + x1[12]);
return (0.707107)*(v1621697145*((-1.)*(((x1[0] + x1[8] + x1[12])*(x1[1] + x1[9] + x1[13])*(x1[0]-x1[8]-v2670871143*(x1[0] + x1[8])))/(v1719343032) + (-1.)*((-1.) + (-1.)*((x1[1] + x1[9] + x1[13])*(x1[1] + x1[9] + x1[13]))/(v1719343032))*(x1[1]-x1[9]-v2670871143*(x1[1] + x1[9])) + ((x1[2] + x1[10] + x1[14])*(x1[1] + x1[9] + x1[13])*(x1[2]-x1[10]-v2670871143*(x1[2] + x1[10])))/(v1719343032) + (-1.)*((v732589286 + v604511646 + v3067068972)*(x1[1] + x1[9] + x1[13]))/(v1719343032)*(v732589286-v604511646-v2670871143*(v732589286 + v604511646)))*(x1[1] + x1[9] + x1[13]-x1[5]-v843449347*(x1[1] + x1[9] + x1[13] + x1[5])) + (-1.)*(((x1[1] + x1[9] + x1[13])*(x1[0] + x1[8] + x1[12])*(x1[1]-x1[9]-v2670871143*(x1[1] + x1[9])))/(v1719343032) + (-1.)*((-1.) + (-1.)*((x1[0] + x1[8] + x1[12])*(x1[0] + x1[8] + x1[12]))/(v1719343032))*(x1[0]-x1[8]-v2670871143*(x1[0] + x1[8])) + ((x1[2] + x1[10] + x1[14])*(x1[0] + x1[8] + x1[12])*(x1[2]-x1[10]-v2670871143*(x1[2] + x1[10])))/(v1719343032) + (-1.)*((v732589286 + v604511646 + v3067068972)*(x1[0] + x1[8] + x1[12]))/(v1719343032)*(v732589286-v604511646-v2670871143*(v732589286 + v604511646)))*(x1[0] + x1[8] + x1[12]-x1[4]-v843449347*(x1[0] + x1[8] + x1[12] + x1[4])) + (-1.)*(((x1[0] + x1[8] + x1[12])*(x1[2] + x1[10] + x1[14])*(x1[0]-x1[8]-v2670871143*(x1[0] + x1[8])))/(v1719343032) + ((x1[1] + x1[9] + x1[13])*(x1[2] + x1[10] + x1[14])*(x1[1]-x1[9]-v2670871143*(x1[1] + x1[9])))/(v1719343032) + (-1.)*((-1.) + (-1.)*((x1[2] + x1[10] + x1[14])*(x1[2] + x1[10] + x1[14]))/(v1719343032))*(x1[2]-x1[10]-v2670871143*(x1[2] + x1[10])) + (-1.)*((v732589286 + v604511646 + v3067068972)*(x1[2] + x1[10] + x1[14]))/(v1719343032)*(v732589286-v604511646-v2670871143*(v732589286 + v604511646)))*(x1[2] + x1[10] + x1[14]-x1[6]-v843449347*(x1[2] + x1[10] + x1[14] + x1[6])) + (v732589286 + v604511646 + v3067068972-v2683369444-v843449347*(v732589286 + v604511646 + v3067068972 + v2683369444))*(((x1[0] + x1[8] + x1[12])*(v732589286 + v604511646 + v3067068972)*(x1[0]-x1[8]-v2670871143*(x1[0] + x1[8])))/(v1719343032) + ((x1[1] + x1[9] + x1[13])*(v732589286 + v604511646 + v3067068972)*(x1[1]-x1[9]-v2670871143*(x1[1] + x1[9])))/(v1719343032) + ((x1[2] + x1[10] + x1[14])*(v732589286 + v604511646 + v3067068972)*(x1[2]-x1[10]-v2670871143*(x1[2] + x1[10])))/(v1719343032) + (v732589286-v604511646-v2670871143*(v732589286 + v604511646))*((1.) + (-1.)*((v732589286 + v604511646 + v3067068972)*(v732589286 + v604511646 + v3067068972))/(v1719343032)))) + v1044272063*((-1.)*(((x1[0] + x1[4] + x1[12])*(x1[1] + x1[5] + x1[13])*(x1[0]-x1[4]-v3078308559*(x1[0] + x1[4])))/(v373333512) + (-1.)*((-1.) + (-1.)*((x1[1] + x1[5] + x1[13])*(x1[1] + x1[5] + x1[13]))/(v373333512))*(x1[1]-x1[5]-v3078308559*(x1[1] + x1[5])) + ((x1[2] + x1[6] + x1[14])*(x1[1] + x1[5] + x1[13])*(x1[2]-x1[6]-v3078308559*(x1[2] + x1[6])))/(v373333512) + (-1.)*((v732589286 + v2683369444 + v3067068972)*(x1[1] + x1[5] + x1[13]))/(v373333512)*(v732589286-v2683369444-v3078308559*(v732589286 + v2683369444)))*(x1[1] + x1[5] + x1[13]-x1[9]-v1255498203*(x1[1] + x1[5] + x1[13] + x1[9])) + (-1.)*(((x1[1] + x1[5] + x1[13])*(x1[0] + x1[4] + x1[12])*(x1[1]-x1[5]-v3078308559*(x1[1] + x1[5])))/(v373333512) + (-1.)*((-1.) + (-1.)*((x1[0] + x1[4] + x1[12])*(x1[0] + x1[4] + x1[12]))/(v373333512))*(x1[0]-x1[4]-v3078308559*(x1[0] + x1[4])) + ((x1[2] + x1[6] + x1[14])*(x1[0] + x1[4] + x1[12])*(x1[2]-x1[6]-v3078308559*(x1[2] + x1[6])))/(v373333512) + (-1.)*((v732589286 + v2683369444 + v3067068972)*(x1[0] + x1[4] + x1[12]))/(v373333512)*(v732589286-v2683369444-v3078308559*(v732589286 + v2683369444)))*(x1[0] + x1[4] + x1[12]-x1[8]-v1255498203*(x1[0] + x1[4] + x1[12] + x1[8])) + (-1.)*(((x1[0] + x1[4] + x1[12])*(x1[2] + x1[6] + x1[14])*(x1[0]-x1[4]-v3078308559*(x1[0] + x1[4])))/(v373333512) + ((x1[1] + x1[5] + x1[13])*(x1[2] + x1[6] + x1[14])*(x1[1]-x1[5]-v3078308559*(x1[1] + x1[5])))/(v373333512) + (-1.)*((-1.) + (-1.)*((x1[2] + x1[6] + x1[14])*(x1[2] + x1[6] + x1[14]))/(v373333512))*(x1[2]-x1[6]-v3078308559*(x1[2] + x1[6])) + (-1.)*((v732589286 + v2683369444 + v3067068972)*(x1[2] + x1[6] + x1[14]))/(v373333512)*(v732589286-v2683369444-v3078308559*(v732589286 + v2683369444)))*(x1[2] + x1[6] + x1[14]-x1[10]-v1255498203*(x1[2] + x1[6] + x1[14] + x1[10])) + (v732589286 + v2683369444 + v3067068972-v604511646-v1255498203*(v732589286 + v2683369444 + v3067068972 + v604511646))*(((x1[0] + x1[4] + x1[12])*(v732589286 + v2683369444 + v3067068972)*(x1[0]-x1[4]-v3078308559*(x1[0] + x1[4])))/(v373333512) + ((x1[1] + x1[5] + x1[13])*(v732589286 + v2683369444 + v3067068972)*(x1[1]-x1[5]-v3078308559*(x1[1] + x1[5])))/(v373333512) + ((x1[2] + x1[6] + x1[14])*(v732589286 + v2683369444 + v3067068972)*(x1[2]-x1[6]-v3078308559*(x1[2] + x1[6])))/(v373333512) + (v732589286-v2683369444-v3078308559*(v732589286 + v2683369444))*((1.) + (-1.)*((v732589286 + v2683369444 + v3067068972)*(v732589286 + v2683369444 + v3067068972))/(v373333512)))));
}

extern "C" std::complex<double> D0_K_1__1270_p_GSpline_EFF__Ks_892_0_Kp_pim__pip__pim__wParams( const double*__restrict__ E ){
  double externalParameters [] = {3.7559, 1.28981, 0.11611, 1.7, 6.62044e-09, 8.1034e-05, 0.000601093, 0.00199416, 0.00478532, 0.0097556, 0.0184164, 0.0348721, 0.0672518, 0.105115, 0.142193, 0.182565, 0.231309, 0.295139, 0.383415, 0.507206, 0.673751, 0.918665, 1.18142, 1.41125, 1.61709, 1.80236, 1.97044, 2.12449, 2.26729, 2.40124, 2.52841, 2.65063, 2.76952, 2.88658, 3.0032, 3.12073, 3.24046, 3.36373, 3.49188, 3.62634, 3.76865, 3.92048, 4.08365, 4.26015, 0, 0.1176547684, 0.22497165, 0.3656306816, 0.5276092204, 0.9764756867, 1.413655658, 5.71894637, 0.9401463614, -0.7916115034, 0.9822484023, 2.081549144, 3.955942521, 5.996562022, 10.78944064, 7.114753541, 28.48991394, 3.091475055, -12.58897979, -4.901102773, -5.815765367, -4.426429507, -3.713922855, -2.946660324, -2.323654598, -1.780440033, -1.296647771, -0.8756251333, -0.4768204459, -0.1164993331, 0.2456927782, 0.5755094702, 0.9378943409, 1.281600666, 1.667452995, 2.045993606, 2.585916333, 2.693591061, 4.606531922, 0, 0.896, 0.0503, 1.5 }; 
  return D0_K_1__1270_p_GSpline_EFF__Ks_892_0_Kp_pim__pip__pim_( externalParameters, E ); // E is P 
}
extern "C" const char* D0_K_1__1270_p_GSpline_EFF__KPi20_FOCUS_Kpi__Kp_pim__pip__pim__name() {  return "D0{K(1)(1270)+[GSpline.EFF]{KPi20[FOCUS.Kpi]{K+,pi-},pi+},pi-}"; } 
extern "C" std::complex<double> D0_K_1__1270_p_GSpline_EFF__KPi20_FOCUS_Kpi__Kp_pim__pip__pim_(double const* x0, double const* x1){
  auto v3067068972 = sqrt((0.01948) + x1[12]*x1[12] + x1[13]*x1[13] + x1[14]*x1[14]);
  auto v2683369444 = sqrt((0.01948) + x1[4]*x1[4] + x1[5]*x1[5] + x1[6]*x1[6]);
  auto v732589286 = sqrt((0.243717) + x1[0]*x1[0] + x1[1]*x1[1] + x1[2]*x1[2]);
  auto v604511646 = sqrt((0.01948) + x1[8]*x1[8] + x1[9]*x1[9] + x1[10]*x1[10]);
  auto v2652496757 = x0[1]*x0[1];
  auto v2627373007 = (-1.)*(x1[2] + x1[10] + x1[14])*(x1[2] + x1[10] + x1[14]) + (v732589286 + v604511646 + v3067068972)*(v732589286 + v604511646 + v3067068972) + (-1.)*(x1[1] + x1[9] + x1[13])*(x1[1] + x1[9] + x1[13]) + (-1.)*(x1[0] + x1[8] + x1[12])*(x1[0] + x1[8] + x1[12]);
  auto v1521070335 = (-1.)*(x1[2] + x1[10])*(x1[2] + x1[10]) + (v732589286 + v604511646)*(v732589286 + v604511646) + (-1.)*(x1[1] + x1[9])*(x1[1] + x1[9]) + (-1.)*(x1[0] + x1[8])*(x1[0] + x1[8]);
  auto v1139362541 = (-1.)*(x1[2] + x1[6])*(x1[2] + x1[6]) + (v732589286 + v2683369444)*(v732589286 + v2683369444) + (-1.)*(x1[1] + x1[5])*(x1[1] + x1[5]) + (-1.)*(x1[0] + x1[4])*(x1[0] + x1[4]);
  auto v325855721 = (-1.)*(x1[2] + x1[6] + x1[14])*(x1[2] + x1[6] + x1[14]) + (v732589286 + v2683369444 + v3067068972)*(v732589286 + v2683369444 + v3067068972) + (-1.)*(x1[1] + x1[5] + x1[13])*(x1[1] + x1[5] + x1[13]) + (-1.)*(x1[0] + x1[4] + x1[12])*(x1[0] + x1[4] + x1[12]);
  auto v4237252271 = (-1.)*(x1[2] + x1[6] + x1[14] + x1[10])*(x1[2] + x1[6] + x1[14] + x1[10]) + (v732589286 + v2683369444 + v3067068972 + v604511646)*(v732589286 + v2683369444 + v3067068972 + v604511646) + (-1.)*(x1[1] + x1[5] + x1[13] + x1[9])*(x1[1] + x1[5] + x1[13] + x1[9]) + (-1.)*(x1[0] + x1[4] + x1[12] + x1[8])*(x1[0] + x1[4] + x1[12] + x1[8]);
  auto v3634940496 = ((1.)-((0.125392))/(v1139362541))*((1.)-((0.401002))/(v1139362541));
  auto v3248711278 = (((v325855721>(0.6))&&(v325855721<(3.)))?x0[4+int((16.25)*(v325855721-(0.6)))] + fmod(v325855721-(0.6),(0.061538))*((16.25)*(x0[4+int((1.) + (16.25)*(v325855721-(0.6)))]-x0[4+int((16.25)*(v325855721-(0.6)))])-(0.010256)*(x0[4+int((41.) + (16.25)*(v325855721-(0.6)))] + (2.)*x0[4+int((40.) + (16.25)*(v325855721-(0.6)))])) + (0.5)*x0[4+int((40.) + (16.25)*(v325855721-(0.6)))]*fmod(v325855721-(0.6),(0.061538))*fmod(v325855721-(0.6),(0.061538)) + (2.708333)*fmod(v325855721-(0.6),(0.061538))*fmod(v325855721-(0.6),(0.061538))*fmod(v325855721-(0.6),(0.061538))*(x0[4+int((41.) + (16.25)*(v325855721-(0.6)))]-x0[4+int((40.) + (16.25)*(v325855721-(0.6)))]):(0.));
  auto v2955496159 = ((1.)-((0.21528))/(v1139362541))*((1.)-((2.106379))/(v1139362541));
  auto v2830794559 = (-1.)*(x1[2] + x1[10] + x1[14] + x1[6])*(x1[2] + x1[10] + x1[14] + x1[6]) + (v732589286 + v604511646 + v3067068972 + v2683369444)*(v732589286 + v604511646 + v3067068972 + v2683369444) + (-1.)*(x1[1] + x1[9] + x1[13] + x1[5])*(x1[1] + x1[9] + x1[13] + x1[5]) + (-1.)*(x1[0] + x1[8] + x1[12] + x1[4])*(x1[0] + x1[8] + x1[12] + x1[4]);
  auto v2077084972 = ((1.)-((0.125392))/(v1521070335))*((1.)-((0.401002))/(v1521070335));
  auto v1772631356 = (((v2627373007>(0.6))&&(v2627373007<(3.)))?x0[4+int((16.25)*(v2627373007-(0.6)))] + fmod(v2627373007-(0.6),(0.061538))*((16.25)*(x0[4+int((1.) + (16.25)*(v2627373007-(0.6)))]-x0[4+int((16.25)*(v2627373007-(0.6)))])-(0.010256)*(x0[4+int((41.) + (16.25)*(v2627373007-(0.6)))] + (2.)*x0[4+int((40.) + (16.25)*(v2627373007-(0.6)))])) + (0.5)*x0[4+int((40.) + (16.25)*(v2627373007-(0.6)))]*fmod(v2627373007-(0.6),(0.061538))*fmod(v2627373007-(0.6),(0.061538)) + (2.708333)*fmod(v2627373007-(0.6),(0.061538))*fmod(v2627373007-(0.6),(0.061538))*fmod(v2627373007-(0.6),(0.061538))*(x0[4+int((41.) + (16.25)*(v2627373007-(0.6)))]-x0[4+int((40.) + (16.25)*(v2627373007-(0.6)))]):(0.));
  auto v1453132239 = ((1.)-((0.21528))/(v1521070335))*((1.)-((2.106379))/(v1521070335));
  auto v1078555364 = (((v2652496757>(0.6))&&(v2652496757<(3.)))?x0[4+int((16.25)*(v2652496757-(0.6)))] + fmod(v2652496757-(0.6),(0.061538))*((16.25)*(x0[4+int((1.) + (16.25)*(v2652496757-(0.6)))]-x0[4+int((16.25)*(v2652496757-(0.6)))])-(0.010256)*(x0[4+int((41.) + (16.25)*(v2652496757-(0.6)))] + (2.)*x0[4+int((40.) + (16.25)*(v2652496757-(0.6)))])) + (0.5)*x0[4+int((40.) + (16.25)*(v2652496757-(0.6)))]*fmod(v2652496757-(0.6),(0.061538))*fmod(v2652496757-(0.6),(0.061538)) + (2.708333)*fmod(v2652496757-(0.6),(0.061538))*fmod(v2652496757-(0.6),(0.061538))*fmod(v2652496757-(0.6),(0.061538))*(x0[4+int((41.) + (16.25)*(v2652496757-(0.6)))]-x0[4+int((40.) + (16.25)*(v2652496757-(0.6)))]):(0.));
  auto v2743495210 = (sqrt((0.900316)*x0[1]*x0[2]*x0[1]*sqrt(x0[2]*x0[2] + x0[1]*x0[1])*1./sqrt(x0[1]*sqrt(x0[2]*x0[2] + x0[1]*x0[1]) + x0[1]*x0[1]))*exp((-0.5)*std::abs((0.25)*(v325855721-(2.)*v1139362541-(0.03896) + ((v1139362541-(0.01948))*(v1139362541-(0.01948)))/(v325855721)))*x0[3]*x0[3]))/(x0[1]*x0[1]-(std::complex<double>(0.,1.)*x0[1]*x0[2]*v3248711278)/(v1078555364)-v325855721);
  auto v2635107569 = (0.25)*(v2830794559-(2.)*v2627373007-(0.03896) + ((v2627373007-(0.01948))*(v2627373007-(0.01948)))/(v2830794559));
  auto v2325087427 = ((3.799438)*(v1521070335-(0.23))*(((0.096547))/((1.7919)-v1521070335) + (0.79299) + (-0.15099)*((3.799438)*v1521070335-(1.)) + (0.00811)*((3.799438)*v1521070335-(1.))*((3.799438)*v1521070335-(1.)))-std::complex<double>(0.,1.)*((v1453132239>(0.))?sqrt(v1453132239):std::complex<double>(0.,1.)*sqrt((-1.)*v1453132239))*((3.799438)*(v1521070335-(0.23))*(((0.096547))/((1.7919)-v1521070335) + (0.79299) + (-0.15099)*((3.799438)*v1521070335-(1.)) + (0.00811)*((3.799438)*v1521070335-(1.))*((3.799438)*v1521070335-(1.)))*(3.799438)*(v1521070335-(0.23))*(((0.00054))/((1.7919)-v1521070335) + (0.17054) + (-0.0219)*((3.799438)*v1521070335-(1.)) + (0.000857)*((3.799438)*v1521070335-(1.))*((3.799438)*v1521070335-(1.)))-(3.799438)*(v1521070335-(0.23))*(((-0.007218))/((1.7919)-v1521070335) + (0.1504) + (-0.038266)*((3.799438)*v1521070335-(1.)) + (0.00226)*((3.799438)*v1521070335-(1.))*((3.799438)*v1521070335-(1.)))*(3.799438)*(v1521070335-(0.23))*(((-0.007218))/((1.7919)-v1521070335) + (0.1504) + (-0.038266)*((3.799438)*v1521070335-(1.)) + (0.00226)*((3.799438)*v1521070335-(1.))*((3.799438)*v1521070335-(1.)))))/((1.)-((v2077084972>(0.))?sqrt(v2077084972):std::complex<double>(0.,1.)*sqrt((-1.)*v2077084972))*((v1453132239>(0.))?sqrt(v1453132239):std::complex<double>(0.,1.)*sqrt((-1.)*v1453132239))*((3.799438)*(v1521070335-(0.23))*(((0.096547))/((1.7919)-v1521070335) + (0.79299) + (-0.15099)*((3.799438)*v1521070335-(1.)) + (0.00811)*((3.799438)*v1521070335-(1.))*((3.799438)*v1521070335-(1.)))*(3.799438)*(v1521070335-(0.23))*(((0.00054))/((1.7919)-v1521070335) + (0.17054) + (-0.0219)*((3.799438)*v1521070335-(1.)) + (0.000857)*((3.799438)*v1521070335-(1.))*((3.799438)*v1521070335-(1.)))-(3.799438)*(v1521070335-(0.23))*(((-0.007218))/((1.7919)-v1521070335) + (0.1504) + (-0.038266)*((3.799438)*v1521070335-(1.)) + (0.00226)*((3.799438)*v1521070335-(1.))*((3.799438)*v1521070335-(1.)))*(3.799438)*(v1521070335-(0.23))*(((-0.007218))/((1.7919)-v1521070335) + (0.1504) + (-0.038266)*((3.799438)*v1521070335-(1.)) + (0.00226)*((3.799438)*v1521070335-(1.))*((3.799438)*v1521070335-(1.))))-std::complex<double>(0.,1.)*(((v1453132239>(0.))?sqrt(v1453132239):std::complex<double>(0.,1.)*sqrt((-1.)*v1453132239))*(3.799438)*(v1521070335-(0.23))*(((0.00054))/((1.7919)-v1521070335) + (0.17054) + (-0.0219)*((3.799438)*v1521070335-(1.)) + (0.000857)*((3.799438)*v1521070335-(1.))*((3.799438)*v1521070335-(1.))) + ((v2077084972>(0.))?sqrt(v2077084972):std::complex<double>(0.,1.)*sqrt((-1.)*v2077084972))*(3.799438)*(v1521070335-(0.23))*(((0.096547))/((1.7919)-v1521070335) + (0.79299) + (-0.15099)*((3.799438)*v1521070335-(1.)) + (0.00811)*((3.799438)*v1521070335-(1.))*((3.799438)*v1521070335-(1.)))));
  auto v1390527164 = (0.25)*(v4237252271-(2.)*v325855721-(0.03896) + ((v325855721-(0.01948))*(v325855721-(0.01948)))/(v4237252271));
  auto v1119554543 = ((3.799438)*(v1139362541-(0.23))*(((0.096547))/((1.7919)-v1139362541) + (0.79299) + (-0.15099)*((3.799438)*v1139362541-(1.)) + (0.00811)*((3.799438)*v1139362541-(1.))*((3.799438)*v1139362541-(1.)))-std::complex<double>(0.,1.)*((v2955496159>(0.))?sqrt(v2955496159):std::complex<double>(0.,1.)*sqrt((-1.)*v2955496159))*((3.799438)*(v1139362541-(0.23))*(((0.096547))/((1.7919)-v1139362541) + (0.79299) + (-0.15099)*((3.799438)*v1139362541-(1.)) + (0.00811)*((3.799438)*v1139362541-(1.))*((3.799438)*v1139362541-(1.)))*(3.799438)*(v1139362541-(0.23))*(((0.00054))/((1.7919)-v1139362541) + (0.17054) + (-0.0219)*((3.799438)*v1139362541-(1.)) + (0.000857)*((3.799438)*v1139362541-(1.))*((3.799438)*v1139362541-(1.)))-(3.799438)*(v1139362541-(0.23))*(((-0.007218))/((1.7919)-v1139362541) + (0.1504) + (-0.038266)*((3.799438)*v1139362541-(1.)) + (0.00226)*((3.799438)*v1139362541-(1.))*((3.799438)*v1139362541-(1.)))*(3.799438)*(v1139362541-(0.23))*(((-0.007218))/((1.7919)-v1139362541) + (0.1504) + (-0.038266)*((3.799438)*v1139362541-(1.)) + (0.00226)*((3.799438)*v1139362541-(1.))*((3.799438)*v1139362541-(1.)))))/((1.)-((v3634940496>(0.))?sqrt(v3634940496):std::complex<double>(0.,1.)*sqrt((-1.)*v3634940496))*((v2955496159>(0.))?sqrt(v2955496159):std::complex<double>(0.,1.)*sqrt((-1.)*v2955496159))*((3.799438)*(v1139362541-(0.23))*(((0.096547))/((1.7919)-v1139362541) + (0.79299) + (-0.15099)*((3.799438)*v1139362541-(1.)) + (0.00811)*((3.799438)*v1139362541-(1.))*((3.799438)*v1139362541-(1.)))*(3.799438)*(v1139362541-(0.23))*(((0.00054))/((1.7919)-v1139362541) + (0.17054) + (-0.0219)*((3.799438)*v1139362541-(1.)) + (0.000857)*((3.799438)*v1139362541-(1.))*((3.799438)*v1139362541-(1.)))-(3.799438)*(v1139362541-(0.23))*(((-0.007218))/((1.7919)-v1139362541) + (0.1504) + (-0.038266)*((3.799438)*v1139362541-(1.)) + (0.00226)*((3.799438)*v1139362541-(1.))*((3.799438)*v1139362541-(1.)))*(3.799438)*(v1139362541-(0.23))*(((-0.007218))/((1.7919)-v1139362541) + (0.1504) + (-0.038266)*((3.799438)*v1139362541-(1.)) + (0.00226)*((3.799438)*v1139362541-(1.))*((3.799438)*v1139362541-(1.))))-std::complex<double>(0.,1.)*(((v2955496159>(0.))?sqrt(v2955496159):std::complex<double>(0.,1.)*sqrt((-1.)*v2955496159))*(3.799438)*(v1139362541-(0.23))*(((0.00054))/((1.7919)-v1139362541) + (0.17054) + (-0.0219)*((3.799438)*v1139362541-(1.)) + (0.000857)*((3.799438)*v1139362541-(1.))*((3.799438)*v1139362541-(1.))) + ((v3634940496>(0.))?sqrt(v3634940496):std::complex<double>(0.,1.)*sqrt((-1.)*v3634940496))*(3.799438)*(v1139362541-(0.23))*(((0.096547))/((1.7919)-v1139362541) + (0.79299) + (-0.15099)*((3.799438)*v1139362541-(1.)) + (0.00811)*((3.799438)*v1139362541-(1.))*((3.799438)*v1139362541-(1.)))));
  auto v847358541 = (sqrt((0.900316)*x0[1]*x0[2]*x0[1]*sqrt(x0[2]*x0[2] + x0[1]*x0[1])*1./sqrt(x0[1]*sqrt(x0[2]*x0[2] + x0[1]*x0[1]) + x0[1]*x0[1]))*exp((-0.5)*std::abs((0.25)*(v2627373007-(2.)*v1521070335-(0.03896) + ((v1521070335-(0.01948))*(v1521070335-(0.01948)))/(v2627373007)))*x0[3]*x0[3]))/(x0[1]*x0[1]-(std::complex<double>(0.,1.)*x0[1]*x0[2]*v1772631356)/(v1078555364)-v2627373007);
  auto v3166152392 = sqrt(((1.))/((1.) + v1390527164*x0[0]*x0[0]));
  auto v2897632830 = v2743495210*v1119554543;
  auto v2429468304 = sqrt(((1.))/((1.) + v2635107569*x0[0]*x0[0]));
  auto v1904166516 = (-1.)*(x1[2] + x1[6] + x1[14] + x1[10])*(x1[2] + x1[6] + x1[14] + x1[10]) + (v732589286 + v2683369444 + v3067068972 + v604511646)*(v732589286 + v2683369444 + v3067068972 + v604511646) + (-1.)*(x1[1] + x1[5] + x1[13] + x1[9])*(x1[1] + x1[5] + x1[13] + x1[9]) + (-1.)*(x1[0] + x1[4] + x1[12] + x1[8])*(x1[0] + x1[4] + x1[12] + x1[8]);
  auto v1719343032 = (-1.)*(x1[2] + x1[10] + x1[14])*(x1[2] + x1[10] + x1[14]) + (v732589286 + v604511646 + v3067068972)*(v732589286 + v604511646 + v3067068972) + (-1.)*(x1[1] + x1[9] + x1[13])*(x1[1] + x1[9] + x1[13]) + (-1.)*(x1[0] + x1[8] + x1[12])*(x1[0] + x1[8] + x1[12]);
  auto v373333512 = (-1.)*(x1[2] + x1[6] + x1[14])*(x1[2] + x1[6] + x1[14]) + (v732589286 + v2683369444 + v3067068972)*(v732589286 + v2683369444 + v3067068972) + (-1.)*(x1[1] + x1[5] + x1[13])*(x1[1] + x1[5] + x1[13]) + (-1.)*(x1[0] + x1[4] + x1[12])*(x1[0] + x1[4] + x1[12]);
  auto v87909276 = v847358541*v2325087427;
  auto v4069995139 = ((-1.)*(x1[2] + x1[10] + x1[14])*(x1[2] + x1[10]-x1[14]) + (v732589286 + v604511646-v3067068972)*(v732589286 + v604511646 + v3067068972) + (-1.)*(x1[1] + x1[9] + x1[13])*(x1[1] + x1[9]-x1[13]) + (-1.)*(x1[0] + x1[8] + x1[12])*(x1[0] + x1[8]-x1[12]))/(v1719343032);
  auto v3569527896 = ((-1.)*(x1[2] + x1[6] + x1[14])*(x1[2] + x1[6]-x1[14]) + (v732589286 + v2683369444-v3067068972)*(v732589286 + v2683369444 + v3067068972) + (-1.)*(x1[1] + x1[5] + x1[13])*(x1[1] + x1[5]-x1[13]) + (-1.)*(x1[0] + x1[4] + x1[12])*(x1[0] + x1[4]-x1[12]))/(v373333512);
  auto v1773496091 = v3166152392*v2897632830;
  auto v1255498203 = ((-1.)*(x1[2] + x1[6] + x1[14] + x1[10])*(x1[2] + x1[6] + x1[14]-x1[10]) + (v732589286 + v2683369444 + v3067068972-v604511646)*(v732589286 + v2683369444 + v3067068972 + v604511646) + (-1.)*(x1[1] + x1[5] + x1[13] + x1[9])*(x1[1] + x1[5] + x1[13]-x1[9]) + (-1.)*(x1[0] + x1[4] + x1[12] + x1[8])*(x1[0] + x1[4] + x1[12]-x1[8]))/(v1904166516);
  auto v843449347 = ((-1.)*(x1[2] + x1[10] + x1[14] + x1[6])*(x1[2] + x1[10] + x1[14]-x1[6]) + (v732589286 + v604511646 + v3067068972-v2683369444)*(v732589286 + v604511646 + v3067068972 + v2683369444) + (-1.)*(x1[1] + x1[9] + x1[13] + x1[5])*(x1[1] + x1[9] + x1[13]-x1[5]) + (-1.)*(x1[0] + x1[8] + x1[12] + x1[4])*(x1[0] + x1[8] + x1[12]-x1[4]))/(v1904166516);
  auto v357591719 = v2429468304*v87909276;
return (0.707107)*(v357591719*((-1.)*(x1[1] + x1[9]-x1[13]-v4069995139*(x1[1] + x1[9] + x1[13]))*(x1[1] + x1[9] + x1[13]-x1[5]-v843449347*(x1[1] + x1[9] + x1[13] + x1[5])) + (-1.)*(x1[0] + x1[8]-x1[12]-v4069995139*(x1[0] + x1[8] + x1[12]))*(x1[0] + x1[8] + x1[12]-x1[4]-v843449347*(x1[0] + x1[8] + x1[12] + x1[4])) + (-1.)*(x1[2] + x1[10]-x1[14]-v4069995139*(x1[2] + x1[10] + x1[14]))*(x1[2] + x1[10] + x1[14]-x1[6]-v843449347*(x1[2] + x1[10] + x1[14] + x1[6])) + (v732589286 + v604511646 + v3067068972-v2683369444-v843449347*(v732589286 + v604511646 + v3067068972 + v2683369444))*(v732589286 + v604511646-v3067068972-v4069995139*(v732589286 + v604511646 + v3067068972))) + v1773496091*((-1.)*(x1[1] + x1[5]-x1[13]-v3569527896*(x1[1] + x1[5] + x1[13]))*(x1[1] + x1[5] + x1[13]-x1[9]-v1255498203*(x1[1] + x1[5] + x1[13] + x1[9])) + (-1.)*(x1[0] + x1[4]-x1[12]-v3569527896*(x1[0] + x1[4] + x1[12]))*(x1[0] + x1[4] + x1[12]-x1[8]-v1255498203*(x1[0] + x1[4] + x1[12] + x1[8])) + (-1.)*(x1[2] + x1[6]-x1[14]-v3569527896*(x1[2] + x1[6] + x1[14]))*(x1[2] + x1[6] + x1[14]-x1[10]-v1255498203*(x1[2] + x1[6] + x1[14] + x1[10])) + (v732589286 + v2683369444 + v3067068972-v604511646-v1255498203*(v732589286 + v2683369444 + v3067068972 + v604511646))*(v732589286 + v2683369444-v3067068972-v3569527896*(v732589286 + v2683369444 + v3067068972))));
}

extern "C" std::complex<double> D0_K_1__1270_p_GSpline_EFF__KPi20_FOCUS_Kpi__Kp_pim__pip__pim__wParams( const double*__restrict__ E ){
  double externalParameters [] = {3.7559, 1.28981, 0.11611, 1.7, 6.62044e-09, 8.1034e-05, 0.000601093, 0.00199416, 0.00478532, 0.0097556, 0.0184164, 0.0348721, 0.0672518, 0.105115, 0.142193, 0.182565, 0.231309, 0.295139, 0.383415, 0.507206, 0.673751, 0.918665, 1.18142, 1.41125, 1.61709, 1.80236, 1.97044, 2.12449, 2.26729, 2.40124, 2.52841, 2.65063, 2.76952, 2.88658, 3.0032, 3.12073, 3.24046, 3.36373, 3.49188, 3.62634, 3.76865, 3.92048, 4.08365, 4.26015, 0, 0.1176547684, 0.22497165, 0.3656306816, 0.5276092204, 0.9764756867, 1.413655658, 5.71894637, 0.9401463614, -0.7916115034, 0.9822484023, 2.081549144, 3.955942521, 5.996562022, 10.78944064, 7.114753541, 28.48991394, 3.091475055, -12.58897979, -4.901102773, -5.815765367, -4.426429507, -3.713922855, -2.946660324, -2.323654598, -1.780440033, -1.296647771, -0.8756251333, -0.4768204459, -0.1164993331, 0.2456927782, 0.5755094702, 0.9378943409, 1.281600666, 1.667452995, 2.045993606, 2.585916333, 2.693591061, 4.606531922, 0 }; 
  return D0_K_1__1270_p_GSpline_EFF__KPi20_FOCUS_Kpi__Kp_pim__pip__pim_( externalParameters, E ); // E is P 
}
extern "C" const char* D0_K_1__1270_p_GSpline_EFF__omega_782_0_pip_pim__Kp__pim__name() {  return "D0{K(1)(1270)+[GSpline.EFF]{omega(782)0{pi+,pi-},K+},pi-}"; } 
extern "C" std::complex<double> D0_K_1__1270_p_GSpline_EFF__omega_782_0_pip_pim__Kp__pim_(double const* x0, double const* x1){
  auto v3067068972 = sqrt((0.01948) + x1[12]*x1[12] + x1[13]*x1[13] + x1[14]*x1[14]);
  auto v2683369444 = sqrt((0.01948) + x1[4]*x1[4] + x1[5]*x1[5] + x1[6]*x1[6]);
  auto v732589286 = sqrt((0.243717) + x1[0]*x1[0] + x1[1]*x1[1] + x1[2]*x1[2]);
  auto v604511646 = sqrt((0.01948) + x1[8]*x1[8] + x1[9]*x1[9] + x1[10]*x1[10]);
  auto v3864776319 = (-1.)*(x1[14] + x1[6])*(x1[14] + x1[6]) + (v3067068972 + v2683369444)*(v3067068972 + v2683369444) + (-1.)*(x1[13] + x1[5])*(x1[13] + x1[5]) + (-1.)*(x1[12] + x1[4])*(x1[12] + x1[4]);
  auto v3303589013 = (-1.)*(x1[14] + x1[10])*(x1[14] + x1[10]) + (v3067068972 + v604511646)*(v3067068972 + v604511646) + (-1.)*(x1[13] + x1[9])*(x1[13] + x1[9]) + (-1.)*(x1[12] + x1[8])*(x1[12] + x1[8]);
  auto v2652496757 = x0[1]*x0[1];
  auto v1877931947 = (-1.)*(x1[14] + x1[10] + x1[2])*(x1[14] + x1[10] + x1[2]) + (v3067068972 + v604511646 + v732589286)*(v3067068972 + v604511646 + v732589286) + (-1.)*(x1[13] + x1[9] + x1[1])*(x1[13] + x1[9] + x1[1]) + (-1.)*(x1[12] + x1[8] + x1[0])*(x1[12] + x1[8] + x1[0]);
  auto v1059539209 = (-1.)*(x1[14] + x1[6] + x1[2])*(x1[14] + x1[6] + x1[2]) + (v3067068972 + v2683369444 + v732589286)*(v3067068972 + v2683369444 + v732589286) + (-1.)*(x1[13] + x1[5] + x1[1])*(x1[13] + x1[5] + x1[1]) + (-1.)*(x1[12] + x1[4] + x1[0])*(x1[12] + x1[4] + x1[0]);
  auto v4189141884 = (((v1059539209>(0.6))&&(v1059539209<(3.)))?x0[4+int((16.25)*(v1059539209-(0.6)))] + fmod(v1059539209-(0.6),(0.061538))*((16.25)*(x0[4+int((1.) + (16.25)*(v1059539209-(0.6)))]-x0[4+int((16.25)*(v1059539209-(0.6)))])-(0.010256)*(x0[4+int((41.) + (16.25)*(v1059539209-(0.6)))] + (2.)*x0[4+int((40.) + (16.25)*(v1059539209-(0.6)))])) + (0.5)*x0[4+int((40.) + (16.25)*(v1059539209-(0.6)))]*fmod(v1059539209-(0.6),(0.061538))*fmod(v1059539209-(0.6),(0.061538)) + (2.708333)*fmod(v1059539209-(0.6),(0.061538))*fmod(v1059539209-(0.6),(0.061538))*fmod(v1059539209-(0.6),(0.061538))*(x0[4+int((41.) + (16.25)*(v1059539209-(0.6)))]-x0[4+int((40.) + (16.25)*(v1059539209-(0.6)))]):(0.));
  auto v3405928622 = (0.25)*(v3864776319-(0.03896)-(0.03896));
  auto v3287524337 = (0.25)*(v3303589013-(0.03896)-(0.03896));
  auto v3199098040 = std::abs((0.25)*(v3864776319-(0.03896)-(0.03896)));
  auto v2526590455 = (-1.)*(x1[14] + x1[10] + x1[2] + x1[6])*(x1[14] + x1[10] + x1[2] + x1[6]) + (v3067068972 + v604511646 + v732589286 + v2683369444)*(v3067068972 + v604511646 + v732589286 + v2683369444) + (-1.)*(x1[13] + x1[9] + x1[1] + x1[5])*(x1[13] + x1[9] + x1[1] + x1[5]) + (-1.)*(x1[12] + x1[8] + x1[0] + x1[4])*(x1[12] + x1[8] + x1[0] + x1[4]);
  auto v2447698050 = (((v1877931947>(0.6))&&(v1877931947<(3.)))?x0[4+int((16.25)*(v1877931947-(0.6)))] + fmod(v1877931947-(0.6),(0.061538))*((16.25)*(x0[4+int((1.) + (16.25)*(v1877931947-(0.6)))]-x0[4+int((16.25)*(v1877931947-(0.6)))])-(0.010256)*(x0[4+int((41.) + (16.25)*(v1877931947-(0.6)))] + (2.)*x0[4+int((40.) + (16.25)*(v1877931947-(0.6)))])) + (0.5)*x0[4+int((40.) + (16.25)*(v1877931947-(0.6)))]*fmod(v1877931947-(0.6),(0.061538))*fmod(v1877931947-(0.6),(0.061538)) + (2.708333)*fmod(v1877931947-(0.6),(0.061538))*fmod(v1877931947-(0.6),(0.061538))*fmod(v1877931947-(0.6),(0.061538))*(x0[4+int((41.) + (16.25)*(v1877931947-(0.6)))]-x0[4+int((40.) + (16.25)*(v1877931947-(0.6)))]):(0.));
  auto v1951503791 = (-1.)*(x1[14] + x1[6] + x1[2] + x1[10])*(x1[14] + x1[6] + x1[2] + x1[10]) + (v3067068972 + v2683369444 + v732589286 + v604511646)*(v3067068972 + v2683369444 + v732589286 + v604511646) + (-1.)*(x1[13] + x1[5] + x1[1] + x1[9])*(x1[13] + x1[5] + x1[1] + x1[9]) + (-1.)*(x1[12] + x1[4] + x1[0] + x1[8])*(x1[12] + x1[4] + x1[0] + x1[8]);
  auto v1078555364 = (((v2652496757>(0.6))&&(v2652496757<(3.)))?x0[4+int((16.25)*(v2652496757-(0.6)))] + fmod(v2652496757-(0.6),(0.061538))*((16.25)*(x0[4+int((1.) + (16.25)*(v2652496757-(0.6)))]-x0[4+int((16.25)*(v2652496757-(0.6)))])-(0.010256)*(x0[4+int((41.) + (16.25)*(v2652496757-(0.6)))] + (2.)*x0[4+int((40.) + (16.25)*(v2652496757-(0.6)))])) + (0.5)*x0[4+int((40.) + (16.25)*(v2652496757-(0.6)))]*fmod(v2652496757-(0.6),(0.061538))*fmod(v2652496757-(0.6),(0.061538)) + (2.708333)*fmod(v2652496757-(0.6),(0.061538))*fmod(v2652496757-(0.6),(0.061538))*fmod(v2652496757-(0.6),(0.061538))*(x0[4+int((41.) + (16.25)*(v2652496757-(0.6)))]-x0[4+int((40.) + (16.25)*(v2652496757-(0.6)))]):(0.));
  auto v139006945 = std::abs((0.25)*(v3303589013-(0.03896)-(0.03896)));
  auto v4165530719 = (sqrt((0.900316)*x0[1]*x0[2]*x0[1]*sqrt(x0[2]*x0[2] + x0[1]*x0[1])*1./sqrt(x0[1]*sqrt(x0[2]*x0[2] + x0[1]*x0[1]) + x0[1]*x0[1]))*exp((-0.5)*std::abs((0.25)*(v1059539209-(2.)*v3864776319-(0.487434) + ((v3864776319-(0.243717))*(v3864776319-(0.243717)))/(v1059539209)))*x0[3]*x0[3]))/(x0[1]*x0[1]-(std::complex<double>(0.,1.)*x0[1]*x0[2]*v4189141884)/(v1078555364)-v1059539209);
  auto v3248645379 = (sqrt((0.900316)*x0[84]*x0[85]*x0[84]*sqrt(x0[85]*x0[85] + x0[84]*x0[84])*1./sqrt(x0[84]*sqrt(x0[85]*x0[85] + x0[84]*x0[84]) + x0[84]*x0[84]))*sqrt(((1.))/((1.) + v139006945*x0[86]*x0[86])))/(x0[84]*x0[84]-v3303589013-((std::complex<double>(0.,1.)*x0[84]*x0[85]*((1.) + std::abs((0.25)*(x0[84]*x0[84]-(0.03896)-(0.03896)))*x0[86]*x0[86])*sqrt((((v3287524337>(0.))?v3287524337:(0.)))/(std::abs((0.25)*(x0[84]*x0[84]-(0.03896)-(0.03896)))))*((v3287524337>(0.))?v3287524337:(0.))*x0[84]*1./sqrt(v3303589013))/(std::abs((0.25)*(x0[84]*x0[84]-(0.03896)-(0.03896)))))/((1.) + ((v3287524337>(0.))?v3287524337:(0.))*x0[86]*x0[86]));
  auto v2714352748 = (0.25)*(v2526590455-(2.)*v1877931947-(0.03896) + ((v1877931947-(0.01948))*(v1877931947-(0.01948)))/(v2526590455));
  auto v2417636656 = (sqrt((0.900316)*x0[1]*x0[2]*x0[1]*sqrt(x0[2]*x0[2] + x0[1]*x0[1])*1./sqrt(x0[1]*sqrt(x0[2]*x0[2] + x0[1]*x0[1]) + x0[1]*x0[1]))*exp((-0.5)*std::abs((0.25)*(v1877931947-(2.)*v3303589013-(0.487434) + ((v3303589013-(0.243717))*(v3303589013-(0.243717)))/(v1877931947)))*x0[3]*x0[3]))/(x0[1]*x0[1]-(std::complex<double>(0.,1.)*x0[1]*x0[2]*v2447698050)/(v1078555364)-v1877931947);
  auto v2196063399 = (sqrt((0.900316)*x0[84]*x0[85]*x0[84]*sqrt(x0[85]*x0[85] + x0[84]*x0[84])*1./sqrt(x0[84]*sqrt(x0[85]*x0[85] + x0[84]*x0[84]) + x0[84]*x0[84]))*sqrt(((1.))/((1.) + v3199098040*x0[86]*x0[86])))/(x0[84]*x0[84]-v3864776319-((std::complex<double>(0.,1.)*x0[84]*x0[85]*((1.) + std::abs((0.25)*(x0[84]*x0[84]-(0.03896)-(0.03896)))*x0[86]*x0[86])*sqrt((((v3405928622>(0.))?v3405928622:(0.)))/(std::abs((0.25)*(x0[84]*x0[84]-(0.03896)-(0.03896)))))*((v3405928622>(0.))?v3405928622:(0.))*x0[84]*1./sqrt(v3864776319))/(std::abs((0.25)*(x0[84]*x0[84]-(0.03896)-(0.03896)))))/((1.) + ((v3405928622>(0.))?v3405928622:(0.))*x0[86]*x0[86]));
  auto v442748457 = (0.25)*(v1951503791-(2.)*v1059539209-(0.03896) + ((v1059539209-(0.01948))*(v1059539209-(0.01948)))/(v1951503791));
  auto v3326286093 = sqrt(((1.))/((1.) + v2714352748*x0[0]*x0[0]));
  auto v1947872581 = sqrt(((1.))/((1.) + v442748457*x0[0]*x0[0]));
  auto v1904166516 = (-1.)*(x1[14] + x1[6] + x1[2] + x1[10])*(x1[14] + x1[6] + x1[2] + x1[10]) + (v3067068972 + v2683369444 + v732589286 + v604511646)*(v3067068972 + v2683369444 + v732589286 + v604511646) + (-1.)*(x1[13] + x1[5] + x1[1] + x1[9])*(x1[13] + x1[5] + x1[1] + x1[9]) + (-1.)*(x1[12] + x1[4] + x1[0] + x1[8])*(x1[12] + x1[4] + x1[0] + x1[8]);
  auto v1889407240 = v4165530719*v2196063399;
  auto v1590400259 = (-1.)*(x1[14] + x1[10])*(x1[14] + x1[10]) + (v3067068972 + v604511646)*(v3067068972 + v604511646) + (-1.)*(x1[13] + x1[9])*(x1[13] + x1[9]) + (-1.)*(x1[12] + x1[8])*(x1[12] + x1[8]);
  auto v1473873424 = v2417636656*v3248645379;
  auto v1323540992 = (-1.)*(x1[14] + x1[6])*(x1[14] + x1[6]) + (v3067068972 + v2683369444)*(v3067068972 + v2683369444) + (-1.)*(x1[13] + x1[5])*(x1[13] + x1[5]) + (-1.)*(x1[12] + x1[4])*(x1[12] + x1[4]);
  auto v3114752748 = ((-1.)*(x1[14] + x1[6])*(x1[14]-x1[6]) + (v3067068972-v2683369444)*(v3067068972 + v2683369444) + (-1.)*(x1[13] + x1[5])*(x1[13]-x1[5]) + (-1.)*(x1[12] + x1[4])*(x1[12]-x1[4]))/(v1323540992);
  auto v2751096744 = v3326286093*v1473873424;
  auto v1719343032 = (-1.)*(x1[14] + x1[10] + x1[2])*(x1[14] + x1[10] + x1[2]) + (v3067068972 + v604511646 + v732589286)*(v3067068972 + v604511646 + v732589286) + (-1.)*(x1[13] + x1[9] + x1[1])*(x1[13] + x1[9] + x1[1]) + (-1.)*(x1[12] + x1[8] + x1[0])*(x1[12] + x1[8] + x1[0]);
  auto v1543786854 = v1947872581*v1889407240;
  auto v1253388601 = ((-1.)*(x1[14] + x1[10])*(x1[14]-x1[10]) + (v3067068972-v604511646)*(v3067068972 + v604511646) + (-1.)*(x1[13] + x1[9])*(x1[13]-x1[9]) + (-1.)*(x1[12] + x1[8])*(x1[12]-x1[8]))/(v1590400259);
  auto v779827271 = ((-1.)*(x1[14] + x1[10] + x1[2] + x1[6])*(x1[14] + x1[10] + x1[2]-x1[6]) + (v3067068972 + v604511646 + v732589286-v2683369444)*(v3067068972 + v604511646 + v732589286 + v2683369444) + (-1.)*(x1[13] + x1[9] + x1[1] + x1[5])*(x1[13] + x1[9] + x1[1]-x1[5]) + (-1.)*(x1[12] + x1[8] + x1[0] + x1[4])*(x1[12] + x1[8] + x1[0]-x1[4]))/(v1904166516);
  auto v373333512 = (-1.)*(x1[14] + x1[6] + x1[2])*(x1[14] + x1[6] + x1[2]) + (v3067068972 + v2683369444 + v732589286)*(v3067068972 + v2683369444 + v732589286) + (-1.)*(x1[13] + x1[5] + x1[1])*(x1[13] + x1[5] + x1[1]) + (-1.)*(x1[12] + x1[4] + x1[0])*(x1[12] + x1[4] + x1[0]);
  auto v333172495 = ((-1.)*(x1[14] + x1[6] + x1[2] + x1[10])*(x1[14] + x1[6] + x1[2]-x1[10]) + (v3067068972 + v2683369444 + v732589286-v604511646)*(v3067068972 + v2683369444 + v732589286 + v604511646) + (-1.)*(x1[13] + x1[5] + x1[1] + x1[9])*(x1[13] + x1[5] + x1[1]-x1[9]) + (-1.)*(x1[12] + x1[4] + x1[0] + x1[8])*(x1[12] + x1[4] + x1[0]-x1[8]))/(v1904166516);
return (0.707107)*(v2751096744*((-1.)*(((x1[12] + x1[8] + x1[0])*(x1[13] + x1[9] + x1[1])*(x1[12]-x1[8]-v1253388601*(x1[12] + x1[8])))/(v1719343032) + (-1.)*((-1.) + (-1.)*((x1[13] + x1[9] + x1[1])*(x1[13] + x1[9] + x1[1]))/(v1719343032))*(x1[13]-x1[9]-v1253388601*(x1[13] + x1[9])) + ((x1[14] + x1[10] + x1[2])*(x1[13] + x1[9] + x1[1])*(x1[14]-x1[10]-v1253388601*(x1[14] + x1[10])))/(v1719343032) + (-1.)*((v3067068972 + v604511646 + v732589286)*(x1[13] + x1[9] + x1[1]))/(v1719343032)*(v3067068972-v604511646-v1253388601*(v3067068972 + v604511646)))*(x1[13] + x1[9] + x1[1]-x1[5]-v779827271*(x1[13] + x1[9] + x1[1] + x1[5])) + (-1.)*(((x1[13] + x1[9] + x1[1])*(x1[12] + x1[8] + x1[0])*(x1[13]-x1[9]-v1253388601*(x1[13] + x1[9])))/(v1719343032) + (-1.)*((-1.) + (-1.)*((x1[12] + x1[8] + x1[0])*(x1[12] + x1[8] + x1[0]))/(v1719343032))*(x1[12]-x1[8]-v1253388601*(x1[12] + x1[8])) + ((x1[14] + x1[10] + x1[2])*(x1[12] + x1[8] + x1[0])*(x1[14]-x1[10]-v1253388601*(x1[14] + x1[10])))/(v1719343032) + (-1.)*((v3067068972 + v604511646 + v732589286)*(x1[12] + x1[8] + x1[0]))/(v1719343032)*(v3067068972-v604511646-v1253388601*(v3067068972 + v604511646)))*(x1[12] + x1[8] + x1[0]-x1[4]-v779827271*(x1[12] + x1[8] + x1[0] + x1[4])) + (-1.)*(((x1[12] + x1[8] + x1[0])*(x1[14] + x1[10] + x1[2])*(x1[12]-x1[8]-v1253388601*(x1[12] + x1[8])))/(v1719343032) + ((x1[13] + x1[9] + x1[1])*(x1[14] + x1[10] + x1[2])*(x1[13]-x1[9]-v1253388601*(x1[13] + x1[9])))/(v1719343032) + (-1.)*((-1.) + (-1.)*((x1[14] + x1[10] + x1[2])*(x1[14] + x1[10] + x1[2]))/(v1719343032))*(x1[14]-x1[10]-v1253388601*(x1[14] + x1[10])) + (-1.)*((v3067068972 + v604511646 + v732589286)*(x1[14] + x1[10] + x1[2]))/(v1719343032)*(v3067068972-v604511646-v1253388601*(v3067068972 + v604511646)))*(x1[14] + x1[10] + x1[2]-x1[6]-v779827271*(x1[14] + x1[10] + x1[2] + x1[6])) + (v3067068972 + v604511646 + v732589286-v2683369444-v779827271*(v3067068972 + v604511646 + v732589286 + v2683369444))*(((x1[12] + x1[8] + x1[0])*(v3067068972 + v604511646 + v732589286)*(x1[12]-x1[8]-v1253388601*(x1[12] + x1[8])))/(v1719343032) + ((x1[13] + x1[9] + x1[1])*(v3067068972 + v604511646 + v732589286)*(x1[13]-x1[9]-v1253388601*(x1[13] + x1[9])))/(v1719343032) + ((x1[14] + x1[10] + x1[2])*(v3067068972 + v604511646 + v732589286)*(x1[14]-x1[10]-v1253388601*(x1[14] + x1[10])))/(v1719343032) + (v3067068972-v604511646-v1253388601*(v3067068972 + v604511646))*((1.) + (-1.)*((v3067068972 + v604511646 + v732589286)*(v3067068972 + v604511646 + v732589286))/(v1719343032)))) + v1543786854*((-1.)*(((x1[12] + x1[4] + x1[0])*(x1[13] + x1[5] + x1[1])*(x1[12]-x1[4]-v3114752748*(x1[12] + x1[4])))/(v373333512) + (-1.)*((-1.) + (-1.)*((x1[13] + x1[5] + x1[1])*(x1[13] + x1[5] + x1[1]))/(v373333512))*(x1[13]-x1[5]-v3114752748*(x1[13] + x1[5])) + ((x1[14] + x1[6] + x1[2])*(x1[13] + x1[5] + x1[1])*(x1[14]-x1[6]-v3114752748*(x1[14] + x1[6])))/(v373333512) + (-1.)*((v3067068972 + v2683369444 + v732589286)*(x1[13] + x1[5] + x1[1]))/(v373333512)*(v3067068972-v2683369444-v3114752748*(v3067068972 + v2683369444)))*(x1[13] + x1[5] + x1[1]-x1[9]-v333172495*(x1[13] + x1[5] + x1[1] + x1[9])) + (-1.)*(((x1[13] + x1[5] + x1[1])*(x1[12] + x1[4] + x1[0])*(x1[13]-x1[5]-v3114752748*(x1[13] + x1[5])))/(v373333512) + (-1.)*((-1.) + (-1.)*((x1[12] + x1[4] + x1[0])*(x1[12] + x1[4] + x1[0]))/(v373333512))*(x1[12]-x1[4]-v3114752748*(x1[12] + x1[4])) + ((x1[14] + x1[6] + x1[2])*(x1[12] + x1[4] + x1[0])*(x1[14]-x1[6]-v3114752748*(x1[14] + x1[6])))/(v373333512) + (-1.)*((v3067068972 + v2683369444 + v732589286)*(x1[12] + x1[4] + x1[0]))/(v373333512)*(v3067068972-v2683369444-v3114752748*(v3067068972 + v2683369444)))*(x1[12] + x1[4] + x1[0]-x1[8]-v333172495*(x1[12] + x1[4] + x1[0] + x1[8])) + (-1.)*(((x1[12] + x1[4] + x1[0])*(x1[14] + x1[6] + x1[2])*(x1[12]-x1[4]-v3114752748*(x1[12] + x1[4])))/(v373333512) + ((x1[13] + x1[5] + x1[1])*(x1[14] + x1[6] + x1[2])*(x1[13]-x1[5]-v3114752748*(x1[13] + x1[5])))/(v373333512) + (-1.)*((-1.) + (-1.)*((x1[14] + x1[6] + x1[2])*(x1[14] + x1[6] + x1[2]))/(v373333512))*(x1[14]-x1[6]-v3114752748*(x1[14] + x1[6])) + (-1.)*((v3067068972 + v2683369444 + v732589286)*(x1[14] + x1[6] + x1[2]))/(v373333512)*(v3067068972-v2683369444-v3114752748*(v3067068972 + v2683369444)))*(x1[14] + x1[6] + x1[2]-x1[10]-v333172495*(x1[14] + x1[6] + x1[2] + x1[10])) + (v3067068972 + v2683369444 + v732589286-v604511646-v333172495*(v3067068972 + v2683369444 + v732589286 + v604511646))*(((x1[12] + x1[4] + x1[0])*(v3067068972 + v2683369444 + v732589286)*(x1[12]-x1[4]-v3114752748*(x1[12] + x1[4])))/(v373333512) + ((x1[13] + x1[5] + x1[1])*(v3067068972 + v2683369444 + v732589286)*(x1[13]-x1[5]-v3114752748*(x1[13] + x1[5])))/(v373333512) + ((x1[14] + x1[6] + x1[2])*(v3067068972 + v2683369444 + v732589286)*(x1[14]-x1[6]-v3114752748*(x1[14] + x1[6])))/(v373333512) + (v3067068972-v2683369444-v3114752748*(v3067068972 + v2683369444))*((1.) + (-1.)*((v3067068972 + v2683369444 + v732589286)*(v3067068972 + v2683369444 + v732589286))/(v373333512)))));
}

extern "C" std::complex<double> D0_K_1__1270_p_GSpline_EFF__omega_782_0_pip_pim__Kp__pim__wParams( const double*__restrict__ E ){
  double externalParameters [] = {3.7559, 1.28981, 0.11611, 1.7, 6.62044e-09, 8.1034e-05, 0.000601093, 0.00199416, 0.00478532, 0.0097556, 0.0184164, 0.0348721, 0.0672518, 0.105115, 0.142193, 0.182565, 0.231309, 0.295139, 0.383415, 0.507206, 0.673751, 0.918665, 1.18142, 1.41125, 1.61709, 1.80236, 1.97044, 2.12449, 2.26729, 2.40124, 2.52841, 2.65063, 2.76952, 2.88658, 3.0032, 3.12073, 3.24046, 3.36373, 3.49188, 3.62634, 3.76865, 3.92048, 4.08365, 4.26015, 0, 0.1176547684, 0.22497165, 0.3656306816, 0.5276092204, 0.9764756867, 1.413655658, 5.71894637, 0.9401463614, -0.7916115034, 0.9822484023, 2.081549144, 3.955942521, 5.996562022, 10.78944064, 7.114753541, 28.48991394, 3.091475055, -12.58897979, -4.901102773, -5.815765367, -4.426429507, -3.713922855, -2.946660324, -2.323654598, -1.780440033, -1.296647771, -0.8756251333, -0.4768204459, -0.1164993331, 0.2456927782, 0.5755094702, 0.9378943409, 1.281600666, 1.667452995, 2.045993606, 2.585916333, 2.693591061, 4.606531922, 0, 0.78265, 0.00849, 1.5 }; 
  return D0_K_1__1270_p_GSpline_EFF__omega_782_0_pip_pim__Kp__pim_( externalParameters, E ); // E is P 
}
extern "C" const char* D0_K_1__1270_p_GSpline_EFF__rho_1450_0_pip_pim__Kp__pim__name() {  return "D0{K(1)(1270)+[GSpline.EFF]{rho(1450)0{pi+,pi-},K+},pi-}"; } 
extern "C" std::complex<double> D0_K_1__1270_p_GSpline_EFF__rho_1450_0_pip_pim__Kp__pim_(double const* x0, double const* x1){
  auto v3067068972 = sqrt((0.01948) + x1[12]*x1[12] + x1[13]*x1[13] + x1[14]*x1[14]);
  auto v2683369444 = sqrt((0.01948) + x1[4]*x1[4] + x1[5]*x1[5] + x1[6]*x1[6]);
  auto v732589286 = sqrt((0.243717) + x1[0]*x1[0] + x1[1]*x1[1] + x1[2]*x1[2]);
  auto v604511646 = sqrt((0.01948) + x1[8]*x1[8] + x1[9]*x1[9] + x1[10]*x1[10]);
  auto v3864776319 = (-1.)*(x1[14] + x1[6])*(x1[14] + x1[6]) + (v3067068972 + v2683369444)*(v3067068972 + v2683369444) + (-1.)*(x1[13] + x1[5])*(x1[13] + x1[5]) + (-1.)*(x1[12] + x1[4])*(x1[12] + x1[4]);
  auto v3303589013 = (-1.)*(x1[14] + x1[10])*(x1[14] + x1[10]) + (v3067068972 + v604511646)*(v3067068972 + v604511646) + (-1.)*(x1[13] + x1[9])*(x1[13] + x1[9]) + (-1.)*(x1[12] + x1[8])*(x1[12] + x1[8]);
  auto v2652496757 = x0[1]*x0[1];
  auto v1877931947 = (-1.)*(x1[14] + x1[10] + x1[2])*(x1[14] + x1[10] + x1[2]) + (v3067068972 + v604511646 + v732589286)*(v3067068972 + v604511646 + v732589286) + (-1.)*(x1[13] + x1[9] + x1[1])*(x1[13] + x1[9] + x1[1]) + (-1.)*(x1[12] + x1[8] + x1[0])*(x1[12] + x1[8] + x1[0]);
  auto v1059539209 = (-1.)*(x1[14] + x1[6] + x1[2])*(x1[14] + x1[6] + x1[2]) + (v3067068972 + v2683369444 + v732589286)*(v3067068972 + v2683369444 + v732589286) + (-1.)*(x1[13] + x1[5] + x1[1])*(x1[13] + x1[5] + x1[1]) + (-1.)*(x1[12] + x1[4] + x1[0])*(x1[12] + x1[4] + x1[0]);
  auto v4189141884 = (((v1059539209>(0.6))&&(v1059539209<(3.)))?x0[4+int((16.25)*(v1059539209-(0.6)))] + fmod(v1059539209-(0.6),(0.061538))*((16.25)*(x0[4+int((1.) + (16.25)*(v1059539209-(0.6)))]-x0[4+int((16.25)*(v1059539209-(0.6)))])-(0.010256)*(x0[4+int((41.) + (16.25)*(v1059539209-(0.6)))] + (2.)*x0[4+int((40.) + (16.25)*(v1059539209-(0.6)))])) + (0.5)*x0[4+int((40.) + (16.25)*(v1059539209-(0.6)))]*fmod(v1059539209-(0.6),(0.061538))*fmod(v1059539209-(0.6),(0.061538)) + (2.708333)*fmod(v1059539209-(0.6),(0.061538))*fmod(v1059539209-(0.6),(0.061538))*fmod(v1059539209-(0.6),(0.061538))*(x0[4+int((41.) + (16.25)*(v1059539209-(0.6)))]-x0[4+int((40.) + (16.25)*(v1059539209-(0.6)))]):(0.));
  auto v3405928622 = (0.25)*(v3864776319-(0.03896)-(0.03896));
  auto v3287524337 = (0.25)*(v3303589013-(0.03896)-(0.03896));
  auto v3199098040 = std::abs((0.25)*(v3864776319-(0.03896)-(0.03896)));
  auto v2526590455 = (-1.)*(x1[14] + x1[10] + x1[2] + x1[6])*(x1[14] + x1[10] + x1[2] + x1[6]) + (v3067068972 + v604511646 + v732589286 + v2683369444)*(v3067068972 + v604511646 + v732589286 + v2683369444) + (-1.)*(x1[13] + x1[9] + x1[1] + x1[5])*(x1[13] + x1[9] + x1[1] + x1[5]) + (-1.)*(x1[12] + x1[8] + x1[0] + x1[4])*(x1[12] + x1[8] + x1[0] + x1[4]);
  auto v2447698050 = (((v1877931947>(0.6))&&(v1877931947<(3.)))?x0[4+int((16.25)*(v1877931947-(0.6)))] + fmod(v1877931947-(0.6),(0.061538))*((16.25)*(x0[4+int((1.) + (16.25)*(v1877931947-(0.6)))]-x0[4+int((16.25)*(v1877931947-(0.6)))])-(0.010256)*(x0[4+int((41.) + (16.25)*(v1877931947-(0.6)))] + (2.)*x0[4+int((40.) + (16.25)*(v1877931947-(0.6)))])) + (0.5)*x0[4+int((40.) + (16.25)*(v1877931947-(0.6)))]*fmod(v1877931947-(0.6),(0.061538))*fmod(v1877931947-(0.6),(0.061538)) + (2.708333)*fmod(v1877931947-(0.6),(0.061538))*fmod(v1877931947-(0.6),(0.061538))*fmod(v1877931947-(0.6),(0.061538))*(x0[4+int((41.) + (16.25)*(v1877931947-(0.6)))]-x0[4+int((40.) + (16.25)*(v1877931947-(0.6)))]):(0.));
  auto v1951503791 = (-1.)*(x1[14] + x1[6] + x1[2] + x1[10])*(x1[14] + x1[6] + x1[2] + x1[10]) + (v3067068972 + v2683369444 + v732589286 + v604511646)*(v3067068972 + v2683369444 + v732589286 + v604511646) + (-1.)*(x1[13] + x1[5] + x1[1] + x1[9])*(x1[13] + x1[5] + x1[1] + x1[9]) + (-1.)*(x1[12] + x1[4] + x1[0] + x1[8])*(x1[12] + x1[4] + x1[0] + x1[8]);
  auto v1078555364 = (((v2652496757>(0.6))&&(v2652496757<(3.)))?x0[4+int((16.25)*(v2652496757-(0.6)))] + fmod(v2652496757-(0.6),(0.061538))*((16.25)*(x0[4+int((1.) + (16.25)*(v2652496757-(0.6)))]-x0[4+int((16.25)*(v2652496757-(0.6)))])-(0.010256)*(x0[4+int((41.) + (16.25)*(v2652496757-(0.6)))] + (2.)*x0[4+int((40.) + (16.25)*(v2652496757-(0.6)))])) + (0.5)*x0[4+int((40.) + (16.25)*(v2652496757-(0.6)))]*fmod(v2652496757-(0.6),(0.061538))*fmod(v2652496757-(0.6),(0.061538)) + (2.708333)*fmod(v2652496757-(0.6),(0.061538))*fmod(v2652496757-(0.6),(0.061538))*fmod(v2652496757-(0.6),(0.061538))*(x0[4+int((41.) + (16.25)*(v2652496757-(0.6)))]-x0[4+int((40.) + (16.25)*(v2652496757-(0.6)))]):(0.));
  auto v139006945 = std::abs((0.25)*(v3303589013-(0.03896)-(0.03896)));
  auto v4165530719 = (sqrt((0.900316)*x0[1]*x0[2]*x0[1]*sqrt(x0[2]*x0[2] + x0[1]*x0[1])*1./sqrt(x0[1]*sqrt(x0[2]*x0[2] + x0[1]*x0[1]) + x0[1]*x0[1]))*exp((-0.5)*std::abs((0.25)*(v1059539209-(2.)*v3864776319-(0.487434) + ((v3864776319-(0.243717))*(v3864776319-(0.243717)))/(v1059539209)))*x0[3]*x0[3]))/(x0[1]*x0[1]-(std::complex<double>(0.,1.)*x0[1]*x0[2]*v4189141884)/(v1078555364)-v1059539209);
  auto v3436398798 = (sqrt((0.900316)*x0[84]*x0[85]*x0[84]*sqrt(x0[85]*x0[85] + x0[84]*x0[84])*1./sqrt(x0[84]*sqrt(x0[85]*x0[85] + x0[84]*x0[84]) + x0[84]*x0[84]))*sqrt(((1.))/((1.) + v139006945*x0[86]*x0[86])))/(x0[84]*x0[84]-v3303589013-((std::complex<double>(0.,1.)*x0[84]*x0[85]*((1.) + std::abs((0.25)*(x0[84]*x0[84]-(0.03896)-(0.03896)))*x0[86]*x0[86])*sqrt((((v3287524337>(0.))?v3287524337:(0.)))/(std::abs((0.25)*(x0[84]*x0[84]-(0.03896)-(0.03896)))))*((v3287524337>(0.))?v3287524337:(0.))*x0[84]*1./sqrt(v3303589013))/(std::abs((0.25)*(x0[84]*x0[84]-(0.03896)-(0.03896)))))/((1.) + ((v3287524337>(0.))?v3287524337:(0.))*x0[86]*x0[86]));
  auto v2714352748 = (0.25)*(v2526590455-(2.)*v1877931947-(0.03896) + ((v1877931947-(0.01948))*(v1877931947-(0.01948)))/(v2526590455));
  auto v2417636656 = (sqrt((0.900316)*x0[1]*x0[2]*x0[1]*sqrt(x0[2]*x0[2] + x0[1]*x0[1])*1./sqrt(x0[1]*sqrt(x0[2]*x0[2] + x0[1]*x0[1]) + x0[1]*x0[1]))*exp((-0.5)*std::abs((0.25)*(v1877931947-(2.)*v3303589013-(0.487434) + ((v3303589013-(0.243717))*(v3303589013-(0.243717)))/(v1877931947)))*x0[3]*x0[3]))/(x0[1]*x0[1]-(std::complex<double>(0.,1.)*x0[1]*x0[2]*v2447698050)/(v1078555364)-v1877931947);
  auto v1604197072 = (sqrt((0.900316)*x0[84]*x0[85]*x0[84]*sqrt(x0[85]*x0[85] + x0[84]*x0[84])*1./sqrt(x0[84]*sqrt(x0[85]*x0[85] + x0[84]*x0[84]) + x0[84]*x0[84]))*sqrt(((1.))/((1.) + v3199098040*x0[86]*x0[86])))/(x0[84]*x0[84]-v3864776319-((std::complex<double>(0.,1.)*x0[84]*x0[85]*((1.) + std::abs((0.25)*(x0[84]*x0[84]-(0.03896)-(0.03896)))*x0[86]*x0[86])*sqrt((((v3405928622>(0.))?v3405928622:(0.)))/(std::abs((0.25)*(x0[84]*x0[84]-(0.03896)-(0.03896)))))*((v3405928622>(0.))?v3405928622:(0.))*x0[84]*1./sqrt(v3864776319))/(std::abs((0.25)*(x0[84]*x0[84]-(0.03896)-(0.03896)))))/((1.) + ((v3405928622>(0.))?v3405928622:(0.))*x0[86]*x0[86]));
  auto v442748457 = (0.25)*(v1951503791-(2.)*v1059539209-(0.03896) + ((v1059539209-(0.01948))*(v1059539209-(0.01948)))/(v1951503791));
  auto v3594544111 = v4165530719*v1604197072;
  auto v3326286093 = sqrt(((1.))/((1.) + v2714352748*x0[0]*x0[0]));
  auto v3300569441 = v2417636656*v3436398798;
  auto v1947872581 = sqrt(((1.))/((1.) + v442748457*x0[0]*x0[0]));
  auto v1904166516 = (-1.)*(x1[14] + x1[6] + x1[2] + x1[10])*(x1[14] + x1[6] + x1[2] + x1[10]) + (v3067068972 + v2683369444 + v732589286 + v604511646)*(v3067068972 + v2683369444 + v732589286 + v604511646) + (-1.)*(x1[13] + x1[5] + x1[1] + x1[9])*(x1[13] + x1[5] + x1[1] + x1[9]) + (-1.)*(x1[12] + x1[4] + x1[0] + x1[8])*(x1[12] + x1[4] + x1[0] + x1[8]);
  auto v1590400259 = (-1.)*(x1[14] + x1[10])*(x1[14] + x1[10]) + (v3067068972 + v604511646)*(v3067068972 + v604511646) + (-1.)*(x1[13] + x1[9])*(x1[13] + x1[9]) + (-1.)*(x1[12] + x1[8])*(x1[12] + x1[8]);
  auto v1323540992 = (-1.)*(x1[14] + x1[6])*(x1[14] + x1[6]) + (v3067068972 + v2683369444)*(v3067068972 + v2683369444) + (-1.)*(x1[13] + x1[5])*(x1[13] + x1[5]) + (-1.)*(x1[12] + x1[4])*(x1[12] + x1[4]);
  auto v3585896968 = v1947872581*v3594544111;
  auto v3114752748 = ((-1.)*(x1[14] + x1[6])*(x1[14]-x1[6]) + (v3067068972-v2683369444)*(v3067068972 + v2683369444) + (-1.)*(x1[13] + x1[5])*(x1[13]-x1[5]) + (-1.)*(x1[12] + x1[4])*(x1[12]-x1[4]))/(v1323540992);
  auto v2626081608 = v3326286093*v3300569441;
  auto v1719343032 = (-1.)*(x1[14] + x1[10] + x1[2])*(x1[14] + x1[10] + x1[2]) + (v3067068972 + v604511646 + v732589286)*(v3067068972 + v604511646 + v732589286) + (-1.)*(x1[13] + x1[9] + x1[1])*(x1[13] + x1[9] + x1[1]) + (-1.)*(x1[12] + x1[8] + x1[0])*(x1[12] + x1[8] + x1[0]);
  auto v1253388601 = ((-1.)*(x1[14] + x1[10])*(x1[14]-x1[10]) + (v3067068972-v604511646)*(v3067068972 + v604511646) + (-1.)*(x1[13] + x1[9])*(x1[13]-x1[9]) + (-1.)*(x1[12] + x1[8])*(x1[12]-x1[8]))/(v1590400259);
  auto v779827271 = ((-1.)*(x1[14] + x1[10] + x1[2] + x1[6])*(x1[14] + x1[10] + x1[2]-x1[6]) + (v3067068972 + v604511646 + v732589286-v2683369444)*(v3067068972 + v604511646 + v732589286 + v2683369444) + (-1.)*(x1[13] + x1[9] + x1[1] + x1[5])*(x1[13] + x1[9] + x1[1]-x1[5]) + (-1.)*(x1[12] + x1[8] + x1[0] + x1[4])*(x1[12] + x1[8] + x1[0]-x1[4]))/(v1904166516);
  auto v373333512 = (-1.)*(x1[14] + x1[6] + x1[2])*(x1[14] + x1[6] + x1[2]) + (v3067068972 + v2683369444 + v732589286)*(v3067068972 + v2683369444 + v732589286) + (-1.)*(x1[13] + x1[5] + x1[1])*(x1[13] + x1[5] + x1[1]) + (-1.)*(x1[12] + x1[4] + x1[0])*(x1[12] + x1[4] + x1[0]);
  auto v333172495 = ((-1.)*(x1[14] + x1[6] + x1[2] + x1[10])*(x1[14] + x1[6] + x1[2]-x1[10]) + (v3067068972 + v2683369444 + v732589286-v604511646)*(v3067068972 + v2683369444 + v732589286 + v604511646) + (-1.)*(x1[13] + x1[5] + x1[1] + x1[9])*(x1[13] + x1[5] + x1[1]-x1[9]) + (-1.)*(x1[12] + x1[4] + x1[0] + x1[8])*(x1[12] + x1[4] + x1[0]-x1[8]))/(v1904166516);
return (0.707107)*(v2626081608*((-1.)*(((x1[12] + x1[8] + x1[0])*(x1[13] + x1[9] + x1[1])*(x1[12]-x1[8]-v1253388601*(x1[12] + x1[8])))/(v1719343032) + (-1.)*((-1.) + (-1.)*((x1[13] + x1[9] + x1[1])*(x1[13] + x1[9] + x1[1]))/(v1719343032))*(x1[13]-x1[9]-v1253388601*(x1[13] + x1[9])) + ((x1[14] + x1[10] + x1[2])*(x1[13] + x1[9] + x1[1])*(x1[14]-x1[10]-v1253388601*(x1[14] + x1[10])))/(v1719343032) + (-1.)*((v3067068972 + v604511646 + v732589286)*(x1[13] + x1[9] + x1[1]))/(v1719343032)*(v3067068972-v604511646-v1253388601*(v3067068972 + v604511646)))*(x1[13] + x1[9] + x1[1]-x1[5]-v779827271*(x1[13] + x1[9] + x1[1] + x1[5])) + (-1.)*(((x1[13] + x1[9] + x1[1])*(x1[12] + x1[8] + x1[0])*(x1[13]-x1[9]-v1253388601*(x1[13] + x1[9])))/(v1719343032) + (-1.)*((-1.) + (-1.)*((x1[12] + x1[8] + x1[0])*(x1[12] + x1[8] + x1[0]))/(v1719343032))*(x1[12]-x1[8]-v1253388601*(x1[12] + x1[8])) + ((x1[14] + x1[10] + x1[2])*(x1[12] + x1[8] + x1[0])*(x1[14]-x1[10]-v1253388601*(x1[14] + x1[10])))/(v1719343032) + (-1.)*((v3067068972 + v604511646 + v732589286)*(x1[12] + x1[8] + x1[0]))/(v1719343032)*(v3067068972-v604511646-v1253388601*(v3067068972 + v604511646)))*(x1[12] + x1[8] + x1[0]-x1[4]-v779827271*(x1[12] + x1[8] + x1[0] + x1[4])) + (-1.)*(((x1[12] + x1[8] + x1[0])*(x1[14] + x1[10] + x1[2])*(x1[12]-x1[8]-v1253388601*(x1[12] + x1[8])))/(v1719343032) + ((x1[13] + x1[9] + x1[1])*(x1[14] + x1[10] + x1[2])*(x1[13]-x1[9]-v1253388601*(x1[13] + x1[9])))/(v1719343032) + (-1.)*((-1.) + (-1.)*((x1[14] + x1[10] + x1[2])*(x1[14] + x1[10] + x1[2]))/(v1719343032))*(x1[14]-x1[10]-v1253388601*(x1[14] + x1[10])) + (-1.)*((v3067068972 + v604511646 + v732589286)*(x1[14] + x1[10] + x1[2]))/(v1719343032)*(v3067068972-v604511646-v1253388601*(v3067068972 + v604511646)))*(x1[14] + x1[10] + x1[2]-x1[6]-v779827271*(x1[14] + x1[10] + x1[2] + x1[6])) + (v3067068972 + v604511646 + v732589286-v2683369444-v779827271*(v3067068972 + v604511646 + v732589286 + v2683369444))*(((x1[12] + x1[8] + x1[0])*(v3067068972 + v604511646 + v732589286)*(x1[12]-x1[8]-v1253388601*(x1[12] + x1[8])))/(v1719343032) + ((x1[13] + x1[9] + x1[1])*(v3067068972 + v604511646 + v732589286)*(x1[13]-x1[9]-v1253388601*(x1[13] + x1[9])))/(v1719343032) + ((x1[14] + x1[10] + x1[2])*(v3067068972 + v604511646 + v732589286)*(x1[14]-x1[10]-v1253388601*(x1[14] + x1[10])))/(v1719343032) + (v3067068972-v604511646-v1253388601*(v3067068972 + v604511646))*((1.) + (-1.)*((v3067068972 + v604511646 + v732589286)*(v3067068972 + v604511646 + v732589286))/(v1719343032)))) + v3585896968*((-1.)*(((x1[12] + x1[4] + x1[0])*(x1[13] + x1[5] + x1[1])*(x1[12]-x1[4]-v3114752748*(x1[12] + x1[4])))/(v373333512) + (-1.)*((-1.) + (-1.)*((x1[13] + x1[5] + x1[1])*(x1[13] + x1[5] + x1[1]))/(v373333512))*(x1[13]-x1[5]-v3114752748*(x1[13] + x1[5])) + ((x1[14] + x1[6] + x1[2])*(x1[13] + x1[5] + x1[1])*(x1[14]-x1[6]-v3114752748*(x1[14] + x1[6])))/(v373333512) + (-1.)*((v3067068972 + v2683369444 + v732589286)*(x1[13] + x1[5] + x1[1]))/(v373333512)*(v3067068972-v2683369444-v3114752748*(v3067068972 + v2683369444)))*(x1[13] + x1[5] + x1[1]-x1[9]-v333172495*(x1[13] + x1[5] + x1[1] + x1[9])) + (-1.)*(((x1[13] + x1[5] + x1[1])*(x1[12] + x1[4] + x1[0])*(x1[13]-x1[5]-v3114752748*(x1[13] + x1[5])))/(v373333512) + (-1.)*((-1.) + (-1.)*((x1[12] + x1[4] + x1[0])*(x1[12] + x1[4] + x1[0]))/(v373333512))*(x1[12]-x1[4]-v3114752748*(x1[12] + x1[4])) + ((x1[14] + x1[6] + x1[2])*(x1[12] + x1[4] + x1[0])*(x1[14]-x1[6]-v3114752748*(x1[14] + x1[6])))/(v373333512) + (-1.)*((v3067068972 + v2683369444 + v732589286)*(x1[12] + x1[4] + x1[0]))/(v373333512)*(v3067068972-v2683369444-v3114752748*(v3067068972 + v2683369444)))*(x1[12] + x1[4] + x1[0]-x1[8]-v333172495*(x1[12] + x1[4] + x1[0] + x1[8])) + (-1.)*(((x1[12] + x1[4] + x1[0])*(x1[14] + x1[6] + x1[2])*(x1[12]-x1[4]-v3114752748*(x1[12] + x1[4])))/(v373333512) + ((x1[13] + x1[5] + x1[1])*(x1[14] + x1[6] + x1[2])*(x1[13]-x1[5]-v3114752748*(x1[13] + x1[5])))/(v373333512) + (-1.)*((-1.) + (-1.)*((x1[14] + x1[6] + x1[2])*(x1[14] + x1[6] + x1[2]))/(v373333512))*(x1[14]-x1[6]-v3114752748*(x1[14] + x1[6])) + (-1.)*((v3067068972 + v2683369444 + v732589286)*(x1[14] + x1[6] + x1[2]))/(v373333512)*(v3067068972-v2683369444-v3114752748*(v3067068972 + v2683369444)))*(x1[14] + x1[6] + x1[2]-x1[10]-v333172495*(x1[14] + x1[6] + x1[2] + x1[10])) + (v3067068972 + v2683369444 + v732589286-v604511646-v333172495*(v3067068972 + v2683369444 + v732589286 + v604511646))*(((x1[12] + x1[4] + x1[0])*(v3067068972 + v2683369444 + v732589286)*(x1[12]-x1[4]-v3114752748*(x1[12] + x1[4])))/(v373333512) + ((x1[13] + x1[5] + x1[1])*(v3067068972 + v2683369444 + v732589286)*(x1[13]-x1[5]-v3114752748*(x1[13] + x1[5])))/(v373333512) + ((x1[14] + x1[6] + x1[2])*(v3067068972 + v2683369444 + v732589286)*(x1[14]-x1[6]-v3114752748*(x1[14] + x1[6])))/(v373333512) + (v3067068972-v2683369444-v3114752748*(v3067068972 + v2683369444))*((1.) + (-1.)*((v3067068972 + v2683369444 + v732589286)*(v3067068972 + v2683369444 + v732589286))/(v373333512)))));
}

extern "C" std::complex<double> D0_K_1__1270_p_GSpline_EFF__rho_1450_0_pip_pim__Kp__pim__wParams( const double*__restrict__ E ){
  double externalParameters [] = {3.7559, 1.28981, 0.11611, 1.7, 6.62044e-09, 8.1034e-05, 0.000601093, 0.00199416, 0.00478532, 0.0097556, 0.0184164, 0.0348721, 0.0672518, 0.105115, 0.142193, 0.182565, 0.231309, 0.295139, 0.383415, 0.507206, 0.673751, 0.918665, 1.18142, 1.41125, 1.61709, 1.80236, 1.97044, 2.12449, 2.26729, 2.40124, 2.52841, 2.65063, 2.76952, 2.88658, 3.0032, 3.12073, 3.24046, 3.36373, 3.49188, 3.62634, 3.76865, 3.92048, 4.08365, 4.26015, 0, 0.1176547684, 0.22497165, 0.3656306816, 0.5276092204, 0.9764756867, 1.413655658, 5.71894637, 0.9401463614, -0.7916115034, 0.9822484023, 2.081549144, 3.955942521, 5.996562022, 10.78944064, 7.114753541, 28.48991394, 3.091475055, -12.58897979, -4.901102773, -5.815765367, -4.426429507, -3.713922855, -2.946660324, -2.323654598, -1.780440033, -1.296647771, -0.8756251333, -0.4768204459, -0.1164993331, 0.2456927782, 0.5755094702, 0.9378943409, 1.281600666, 1.667452995, 2.045993606, 2.585916333, 2.693591061, 4.606531922, 0, 1.465, 0.4, 1.5 }; 
  return D0_K_1__1270_p_GSpline_EFF__rho_1450_0_pip_pim__Kp__pim_( externalParameters, E ); // E is P 
}
extern "C" const char* D0_K_1__1270_p_GSpline_EFF__rho_770_0_pip_pim__Kp__pim__name() {  return "D0{K(1)(1270)+[GSpline.EFF]{rho(770)0{pi+,pi-},K+},pi-}"; } 
extern "C" std::complex<double> D0_K_1__1270_p_GSpline_EFF__rho_770_0_pip_pim__Kp__pim_(double const* x0, double const* x1){
  auto v3067068972 = sqrt((0.01948) + x1[12]*x1[12] + x1[13]*x1[13] + x1[14]*x1[14]);
  auto v2683369444 = sqrt((0.01948) + x1[4]*x1[4] + x1[5]*x1[5] + x1[6]*x1[6]);
  auto v732589286 = sqrt((0.243717) + x1[0]*x1[0] + x1[1]*x1[1] + x1[2]*x1[2]);
  auto v604511646 = sqrt((0.01948) + x1[8]*x1[8] + x1[9]*x1[9] + x1[10]*x1[10]);
  auto v3864776319 = (-1.)*(x1[14] + x1[6])*(x1[14] + x1[6]) + (v3067068972 + v2683369444)*(v3067068972 + v2683369444) + (-1.)*(x1[13] + x1[5])*(x1[13] + x1[5]) + (-1.)*(x1[12] + x1[4])*(x1[12] + x1[4]);
  auto v3303589013 = (-1.)*(x1[14] + x1[10])*(x1[14] + x1[10]) + (v3067068972 + v604511646)*(v3067068972 + v604511646) + (-1.)*(x1[13] + x1[9])*(x1[13] + x1[9]) + (-1.)*(x1[12] + x1[8])*(x1[12] + x1[8]);
  auto v2652496757 = x0[1]*x0[1];
  auto v1877931947 = (-1.)*(x1[14] + x1[10] + x1[2])*(x1[14] + x1[10] + x1[2]) + (v3067068972 + v604511646 + v732589286)*(v3067068972 + v604511646 + v732589286) + (-1.)*(x1[13] + x1[9] + x1[1])*(x1[13] + x1[9] + x1[1]) + (-1.)*(x1[12] + x1[8] + x1[0])*(x1[12] + x1[8] + x1[0]);
  auto v1059539209 = (-1.)*(x1[14] + x1[6] + x1[2])*(x1[14] + x1[6] + x1[2]) + (v3067068972 + v2683369444 + v732589286)*(v3067068972 + v2683369444 + v732589286) + (-1.)*(x1[13] + x1[5] + x1[1])*(x1[13] + x1[5] + x1[1]) + (-1.)*(x1[12] + x1[4] + x1[0])*(x1[12] + x1[4] + x1[0]);
  auto v4189141884 = (((v1059539209>(0.6))&&(v1059539209<(3.)))?x0[4+int((16.25)*(v1059539209-(0.6)))] + fmod(v1059539209-(0.6),(0.061538))*((16.25)*(x0[4+int((1.) + (16.25)*(v1059539209-(0.6)))]-x0[4+int((16.25)*(v1059539209-(0.6)))])-(0.010256)*(x0[4+int((41.) + (16.25)*(v1059539209-(0.6)))] + (2.)*x0[4+int((40.) + (16.25)*(v1059539209-(0.6)))])) + (0.5)*x0[4+int((40.) + (16.25)*(v1059539209-(0.6)))]*fmod(v1059539209-(0.6),(0.061538))*fmod(v1059539209-(0.6),(0.061538)) + (2.708333)*fmod(v1059539209-(0.6),(0.061538))*fmod(v1059539209-(0.6),(0.061538))*fmod(v1059539209-(0.6),(0.061538))*(x0[4+int((41.) + (16.25)*(v1059539209-(0.6)))]-x0[4+int((40.) + (16.25)*(v1059539209-(0.6)))]):(0.));
  auto v3405928622 = (0.25)*(v3864776319-(0.03896)-(0.03896));
  auto v3287524337 = (0.25)*(v3303589013-(0.03896)-(0.03896));
  auto v3199098040 = std::abs((0.25)*(v3864776319-(0.03896)-(0.03896)));
  auto v2526590455 = (-1.)*(x1[14] + x1[10] + x1[2] + x1[6])*(x1[14] + x1[10] + x1[2] + x1[6]) + (v3067068972 + v604511646 + v732589286 + v2683369444)*(v3067068972 + v604511646 + v732589286 + v2683369444) + (-1.)*(x1[13] + x1[9] + x1[1] + x1[5])*(x1[13] + x1[9] + x1[1] + x1[5]) + (-1.)*(x1[12] + x1[8] + x1[0] + x1[4])*(x1[12] + x1[8] + x1[0] + x1[4]);
  auto v2447698050 = (((v1877931947>(0.6))&&(v1877931947<(3.)))?x0[4+int((16.25)*(v1877931947-(0.6)))] + fmod(v1877931947-(0.6),(0.061538))*((16.25)*(x0[4+int((1.) + (16.25)*(v1877931947-(0.6)))]-x0[4+int((16.25)*(v1877931947-(0.6)))])-(0.010256)*(x0[4+int((41.) + (16.25)*(v1877931947-(0.6)))] + (2.)*x0[4+int((40.) + (16.25)*(v1877931947-(0.6)))])) + (0.5)*x0[4+int((40.) + (16.25)*(v1877931947-(0.6)))]*fmod(v1877931947-(0.6),(0.061538))*fmod(v1877931947-(0.6),(0.061538)) + (2.708333)*fmod(v1877931947-(0.6),(0.061538))*fmod(v1877931947-(0.6),(0.061538))*fmod(v1877931947-(0.6),(0.061538))*(x0[4+int((41.) + (16.25)*(v1877931947-(0.6)))]-x0[4+int((40.) + (16.25)*(v1877931947-(0.6)))]):(0.));
  auto v1951503791 = (-1.)*(x1[14] + x1[6] + x1[2] + x1[10])*(x1[14] + x1[6] + x1[2] + x1[10]) + (v3067068972 + v2683369444 + v732589286 + v604511646)*(v3067068972 + v2683369444 + v732589286 + v604511646) + (-1.)*(x1[13] + x1[5] + x1[1] + x1[9])*(x1[13] + x1[5] + x1[1] + x1[9]) + (-1.)*(x1[12] + x1[4] + x1[0] + x1[8])*(x1[12] + x1[4] + x1[0] + x1[8]);
  auto v1078555364 = (((v2652496757>(0.6))&&(v2652496757<(3.)))?x0[4+int((16.25)*(v2652496757-(0.6)))] + fmod(v2652496757-(0.6),(0.061538))*((16.25)*(x0[4+int((1.) + (16.25)*(v2652496757-(0.6)))]-x0[4+int((16.25)*(v2652496757-(0.6)))])-(0.010256)*(x0[4+int((41.) + (16.25)*(v2652496757-(0.6)))] + (2.)*x0[4+int((40.) + (16.25)*(v2652496757-(0.6)))])) + (0.5)*x0[4+int((40.) + (16.25)*(v2652496757-(0.6)))]*fmod(v2652496757-(0.6),(0.061538))*fmod(v2652496757-(0.6),(0.061538)) + (2.708333)*fmod(v2652496757-(0.6),(0.061538))*fmod(v2652496757-(0.6),(0.061538))*fmod(v2652496757-(0.6),(0.061538))*(x0[4+int((41.) + (16.25)*(v2652496757-(0.6)))]-x0[4+int((40.) + (16.25)*(v2652496757-(0.6)))]):(0.));
  auto v139006945 = std::abs((0.25)*(v3303589013-(0.03896)-(0.03896)));
  auto v4165530719 = (sqrt((0.900316)*x0[1]*x0[2]*x0[1]*sqrt(x0[2]*x0[2] + x0[1]*x0[1])*1./sqrt(x0[1]*sqrt(x0[2]*x0[2] + x0[1]*x0[1]) + x0[1]*x0[1]))*exp((-0.5)*std::abs((0.25)*(v1059539209-(2.)*v3864776319-(0.487434) + ((v3864776319-(0.243717))*(v3864776319-(0.243717)))/(v1059539209)))*x0[3]*x0[3]))/(x0[1]*x0[1]-(std::complex<double>(0.,1.)*x0[1]*x0[2]*v4189141884)/(v1078555364)-v1059539209);
  auto v2714352748 = (0.25)*(v2526590455-(2.)*v1877931947-(0.03896) + ((v1877931947-(0.01948))*(v1877931947-(0.01948)))/(v2526590455));
  auto v2433939122 = (sqrt((0.900316)*x0[84]*x0[85]*x0[84]*sqrt(x0[85]*x0[85] + x0[84]*x0[84])*1./sqrt(x0[84]*sqrt(x0[85]*x0[85] + x0[84]*x0[84]) + x0[84]*x0[84]))*sqrt(((1.))/((1.) + v3199098040*x0[86]*x0[86])))/(x0[84]*x0[84]-v3864776319-((std::complex<double>(0.,1.)*x0[84]*x0[85]*((1.) + std::abs((0.25)*(x0[84]*x0[84]-(0.03896)-(0.03896)))*x0[86]*x0[86])*sqrt((((v3405928622>(0.))?v3405928622:(0.)))/(std::abs((0.25)*(x0[84]*x0[84]-(0.03896)-(0.03896)))))*((v3405928622>(0.))?v3405928622:(0.))*x0[84]*1./sqrt(v3864776319))/(std::abs((0.25)*(x0[84]*x0[84]-(0.03896)-(0.03896)))))/((1.) + ((v3405928622>(0.))?v3405928622:(0.))*x0[86]*x0[86]));
  auto v2417636656 = (sqrt((0.900316)*x0[1]*x0[2]*x0[1]*sqrt(x0[2]*x0[2] + x0[1]*x0[1])*1./sqrt(x0[1]*sqrt(x0[2]*x0[2] + x0[1]*x0[1]) + x0[1]*x0[1]))*exp((-0.5)*std::abs((0.25)*(v1877931947-(2.)*v3303589013-(0.487434) + ((v3303589013-(0.243717))*(v3303589013-(0.243717)))/(v1877931947)))*x0[3]*x0[3]))/(x0[1]*x0[1]-(std::complex<double>(0.,1.)*x0[1]*x0[2]*v2447698050)/(v1078555364)-v1877931947);
  auto v939480974 = (sqrt((0.900316)*x0[84]*x0[85]*x0[84]*sqrt(x0[85]*x0[85] + x0[84]*x0[84])*1./sqrt(x0[84]*sqrt(x0[85]*x0[85] + x0[84]*x0[84]) + x0[84]*x0[84]))*sqrt(((1.))/((1.) + v139006945*x0[86]*x0[86])))/(x0[84]*x0[84]-v3303589013-((std::complex<double>(0.,1.)*x0[84]*x0[85]*((1.) + std::abs((0.25)*(x0[84]*x0[84]-(0.03896)-(0.03896)))*x0[86]*x0[86])*sqrt((((v3287524337>(0.))?v3287524337:(0.)))/(std::abs((0.25)*(x0[84]*x0[84]-(0.03896)-(0.03896)))))*((v3287524337>(0.))?v3287524337:(0.))*x0[84]*1./sqrt(v3303589013))/(std::abs((0.25)*(x0[84]*x0[84]-(0.03896)-(0.03896)))))/((1.) + ((v3287524337>(0.))?v3287524337:(0.))*x0[86]*x0[86]));
  auto v442748457 = (0.25)*(v1951503791-(2.)*v1059539209-(0.03896) + ((v1059539209-(0.01948))*(v1059539209-(0.01948)))/(v1951503791));
  auto v3326286093 = sqrt(((1.))/((1.) + v2714352748*x0[0]*x0[0]));
  auto v2281528994 = v2417636656*v939480974;
  auto v1947872581 = sqrt(((1.))/((1.) + v442748457*x0[0]*x0[0]));
  auto v1904166516 = (-1.)*(x1[14] + x1[6] + x1[2] + x1[10])*(x1[14] + x1[6] + x1[2] + x1[10]) + (v3067068972 + v2683369444 + v732589286 + v604511646)*(v3067068972 + v2683369444 + v732589286 + v604511646) + (-1.)*(x1[13] + x1[5] + x1[1] + x1[9])*(x1[13] + x1[5] + x1[1] + x1[9]) + (-1.)*(x1[12] + x1[4] + x1[0] + x1[8])*(x1[12] + x1[4] + x1[0] + x1[8]);
  auto v1590400259 = (-1.)*(x1[14] + x1[10])*(x1[14] + x1[10]) + (v3067068972 + v604511646)*(v3067068972 + v604511646) + (-1.)*(x1[13] + x1[9])*(x1[13] + x1[9]) + (-1.)*(x1[12] + x1[8])*(x1[12] + x1[8]);
  auto v1323540992 = (-1.)*(x1[14] + x1[6])*(x1[14] + x1[6]) + (v3067068972 + v2683369444)*(v3067068972 + v2683369444) + (-1.)*(x1[13] + x1[5])*(x1[13] + x1[5]) + (-1.)*(x1[12] + x1[4])*(x1[12] + x1[4]);
  auto v801407334 = v4165530719*v2433939122;
  auto v3663387797 = v1947872581*v801407334;
  auto v3114752748 = ((-1.)*(x1[14] + x1[6])*(x1[14]-x1[6]) + (v3067068972-v2683369444)*(v3067068972 + v2683369444) + (-1.)*(x1[13] + x1[5])*(x1[13]-x1[5]) + (-1.)*(x1[12] + x1[4])*(x1[12]-x1[4]))/(v1323540992);
  auto v1719343032 = (-1.)*(x1[14] + x1[10] + x1[2])*(x1[14] + x1[10] + x1[2]) + (v3067068972 + v604511646 + v732589286)*(v3067068972 + v604511646 + v732589286) + (-1.)*(x1[13] + x1[9] + x1[1])*(x1[13] + x1[9] + x1[1]) + (-1.)*(x1[12] + x1[8] + x1[0])*(x1[12] + x1[8] + x1[0]);
  auto v1253388601 = ((-1.)*(x1[14] + x1[10])*(x1[14]-x1[10]) + (v3067068972-v604511646)*(v3067068972 + v604511646) + (-1.)*(x1[13] + x1[9])*(x1[13]-x1[9]) + (-1.)*(x1[12] + x1[8])*(x1[12]-x1[8]))/(v1590400259);
  auto v905616957 = v3326286093*v2281528994;
  auto v779827271 = ((-1.)*(x1[14] + x1[10] + x1[2] + x1[6])*(x1[14] + x1[10] + x1[2]-x1[6]) + (v3067068972 + v604511646 + v732589286-v2683369444)*(v3067068972 + v604511646 + v732589286 + v2683369444) + (-1.)*(x1[13] + x1[9] + x1[1] + x1[5])*(x1[13] + x1[9] + x1[1]-x1[5]) + (-1.)*(x1[12] + x1[8] + x1[0] + x1[4])*(x1[12] + x1[8] + x1[0]-x1[4]))/(v1904166516);
  auto v373333512 = (-1.)*(x1[14] + x1[6] + x1[2])*(x1[14] + x1[6] + x1[2]) + (v3067068972 + v2683369444 + v732589286)*(v3067068972 + v2683369444 + v732589286) + (-1.)*(x1[13] + x1[5] + x1[1])*(x1[13] + x1[5] + x1[1]) + (-1.)*(x1[12] + x1[4] + x1[0])*(x1[12] + x1[4] + x1[0]);
  auto v333172495 = ((-1.)*(x1[14] + x1[6] + x1[2] + x1[10])*(x1[14] + x1[6] + x1[2]-x1[10]) + (v3067068972 + v2683369444 + v732589286-v604511646)*(v3067068972 + v2683369444 + v732589286 + v604511646) + (-1.)*(x1[13] + x1[5] + x1[1] + x1[9])*(x1[13] + x1[5] + x1[1]-x1[9]) + (-1.)*(x1[12] + x1[4] + x1[0] + x1[8])*(x1[12] + x1[4] + x1[0]-x1[8]))/(v1904166516);
return (0.707107)*(v905616957*((-1.)*(((x1[12] + x1[8] + x1[0])*(x1[13] + x1[9] + x1[1])*(x1[12]-x1[8]-v1253388601*(x1[12] + x1[8])))/(v1719343032) + (-1.)*((-1.) + (-1.)*((x1[13] + x1[9] + x1[1])*(x1[13] + x1[9] + x1[1]))/(v1719343032))*(x1[13]-x1[9]-v1253388601*(x1[13] + x1[9])) + ((x1[14] + x1[10] + x1[2])*(x1[13] + x1[9] + x1[1])*(x1[14]-x1[10]-v1253388601*(x1[14] + x1[10])))/(v1719343032) + (-1.)*((v3067068972 + v604511646 + v732589286)*(x1[13] + x1[9] + x1[1]))/(v1719343032)*(v3067068972-v604511646-v1253388601*(v3067068972 + v604511646)))*(x1[13] + x1[9] + x1[1]-x1[5]-v779827271*(x1[13] + x1[9] + x1[1] + x1[5])) + (-1.)*(((x1[13] + x1[9] + x1[1])*(x1[12] + x1[8] + x1[0])*(x1[13]-x1[9]-v1253388601*(x1[13] + x1[9])))/(v1719343032) + (-1.)*((-1.) + (-1.)*((x1[12] + x1[8] + x1[0])*(x1[12] + x1[8] + x1[0]))/(v1719343032))*(x1[12]-x1[8]-v1253388601*(x1[12] + x1[8])) + ((x1[14] + x1[10] + x1[2])*(x1[12] + x1[8] + x1[0])*(x1[14]-x1[10]-v1253388601*(x1[14] + x1[10])))/(v1719343032) + (-1.)*((v3067068972 + v604511646 + v732589286)*(x1[12] + x1[8] + x1[0]))/(v1719343032)*(v3067068972-v604511646-v1253388601*(v3067068972 + v604511646)))*(x1[12] + x1[8] + x1[0]-x1[4]-v779827271*(x1[12] + x1[8] + x1[0] + x1[4])) + (-1.)*(((x1[12] + x1[8] + x1[0])*(x1[14] + x1[10] + x1[2])*(x1[12]-x1[8]-v1253388601*(x1[12] + x1[8])))/(v1719343032) + ((x1[13] + x1[9] + x1[1])*(x1[14] + x1[10] + x1[2])*(x1[13]-x1[9]-v1253388601*(x1[13] + x1[9])))/(v1719343032) + (-1.)*((-1.) + (-1.)*((x1[14] + x1[10] + x1[2])*(x1[14] + x1[10] + x1[2]))/(v1719343032))*(x1[14]-x1[10]-v1253388601*(x1[14] + x1[10])) + (-1.)*((v3067068972 + v604511646 + v732589286)*(x1[14] + x1[10] + x1[2]))/(v1719343032)*(v3067068972-v604511646-v1253388601*(v3067068972 + v604511646)))*(x1[14] + x1[10] + x1[2]-x1[6]-v779827271*(x1[14] + x1[10] + x1[2] + x1[6])) + (v3067068972 + v604511646 + v732589286-v2683369444-v779827271*(v3067068972 + v604511646 + v732589286 + v2683369444))*(((x1[12] + x1[8] + x1[0])*(v3067068972 + v604511646 + v732589286)*(x1[12]-x1[8]-v1253388601*(x1[12] + x1[8])))/(v1719343032) + ((x1[13] + x1[9] + x1[1])*(v3067068972 + v604511646 + v732589286)*(x1[13]-x1[9]-v1253388601*(x1[13] + x1[9])))/(v1719343032) + ((x1[14] + x1[10] + x1[2])*(v3067068972 + v604511646 + v732589286)*(x1[14]-x1[10]-v1253388601*(x1[14] + x1[10])))/(v1719343032) + (v3067068972-v604511646-v1253388601*(v3067068972 + v604511646))*((1.) + (-1.)*((v3067068972 + v604511646 + v732589286)*(v3067068972 + v604511646 + v732589286))/(v1719343032)))) + v3663387797*((-1.)*(((x1[12] + x1[4] + x1[0])*(x1[13] + x1[5] + x1[1])*(x1[12]-x1[4]-v3114752748*(x1[12] + x1[4])))/(v373333512) + (-1.)*((-1.) + (-1.)*((x1[13] + x1[5] + x1[1])*(x1[13] + x1[5] + x1[1]))/(v373333512))*(x1[13]-x1[5]-v3114752748*(x1[13] + x1[5])) + ((x1[14] + x1[6] + x1[2])*(x1[13] + x1[5] + x1[1])*(x1[14]-x1[6]-v3114752748*(x1[14] + x1[6])))/(v373333512) + (-1.)*((v3067068972 + v2683369444 + v732589286)*(x1[13] + x1[5] + x1[1]))/(v373333512)*(v3067068972-v2683369444-v3114752748*(v3067068972 + v2683369444)))*(x1[13] + x1[5] + x1[1]-x1[9]-v333172495*(x1[13] + x1[5] + x1[1] + x1[9])) + (-1.)*(((x1[13] + x1[5] + x1[1])*(x1[12] + x1[4] + x1[0])*(x1[13]-x1[5]-v3114752748*(x1[13] + x1[5])))/(v373333512) + (-1.)*((-1.) + (-1.)*((x1[12] + x1[4] + x1[0])*(x1[12] + x1[4] + x1[0]))/(v373333512))*(x1[12]-x1[4]-v3114752748*(x1[12] + x1[4])) + ((x1[14] + x1[6] + x1[2])*(x1[12] + x1[4] + x1[0])*(x1[14]-x1[6]-v3114752748*(x1[14] + x1[6])))/(v373333512) + (-1.)*((v3067068972 + v2683369444 + v732589286)*(x1[12] + x1[4] + x1[0]))/(v373333512)*(v3067068972-v2683369444-v3114752748*(v3067068972 + v2683369444)))*(x1[12] + x1[4] + x1[0]-x1[8]-v333172495*(x1[12] + x1[4] + x1[0] + x1[8])) + (-1.)*(((x1[12] + x1[4] + x1[0])*(x1[14] + x1[6] + x1[2])*(x1[12]-x1[4]-v3114752748*(x1[12] + x1[4])))/(v373333512) + ((x1[13] + x1[5] + x1[1])*(x1[14] + x1[6] + x1[2])*(x1[13]-x1[5]-v3114752748*(x1[13] + x1[5])))/(v373333512) + (-1.)*((-1.) + (-1.)*((x1[14] + x1[6] + x1[2])*(x1[14] + x1[6] + x1[2]))/(v373333512))*(x1[14]-x1[6]-v3114752748*(x1[14] + x1[6])) + (-1.)*((v3067068972 + v2683369444 + v732589286)*(x1[14] + x1[6] + x1[2]))/(v373333512)*(v3067068972-v2683369444-v3114752748*(v3067068972 + v2683369444)))*(x1[14] + x1[6] + x1[2]-x1[10]-v333172495*(x1[14] + x1[6] + x1[2] + x1[10])) + (v3067068972 + v2683369444 + v732589286-v604511646-v333172495*(v3067068972 + v2683369444 + v732589286 + v604511646))*(((x1[12] + x1[4] + x1[0])*(v3067068972 + v2683369444 + v732589286)*(x1[12]-x1[4]-v3114752748*(x1[12] + x1[4])))/(v373333512) + ((x1[13] + x1[5] + x1[1])*(v3067068972 + v2683369444 + v732589286)*(x1[13]-x1[5]-v3114752748*(x1[13] + x1[5])))/(v373333512) + ((x1[14] + x1[6] + x1[2])*(v3067068972 + v2683369444 + v732589286)*(x1[14]-x1[6]-v3114752748*(x1[14] + x1[6])))/(v373333512) + (v3067068972-v2683369444-v3114752748*(v3067068972 + v2683369444))*((1.) + (-1.)*((v3067068972 + v2683369444 + v732589286)*(v3067068972 + v2683369444 + v732589286))/(v373333512)))));
}

extern "C" std::complex<double> D0_K_1__1270_p_GSpline_EFF__rho_770_0_pip_pim__Kp__pim__wParams( const double*__restrict__ E ){
  double externalParameters [] = {3.7559, 1.28981, 0.11611, 1.7, 6.62044e-09, 8.1034e-05, 0.000601093, 0.00199416, 0.00478532, 0.0097556, 0.0184164, 0.0348721, 0.0672518, 0.105115, 0.142193, 0.182565, 0.231309, 0.295139, 0.383415, 0.507206, 0.673751, 0.918665, 1.18142, 1.41125, 1.61709, 1.80236, 1.97044, 2.12449, 2.26729, 2.40124, 2.52841, 2.65063, 2.76952, 2.88658, 3.0032, 3.12073, 3.24046, 3.36373, 3.49188, 3.62634, 3.76865, 3.92048, 4.08365, 4.26015, 0, 0.1176547684, 0.22497165, 0.3656306816, 0.5276092204, 0.9764756867, 1.413655658, 5.71894637, 0.9401463614, -0.7916115034, 0.9822484023, 2.081549144, 3.955942521, 5.996562022, 10.78944064, 7.114753541, 28.48991394, 3.091475055, -12.58897979, -4.901102773, -5.815765367, -4.426429507, -3.713922855, -2.946660324, -2.323654598, -1.780440033, -1.296647771, -0.8756251333, -0.4768204459, -0.1164993331, 0.2456927782, 0.5755094702, 0.9378943409, 1.281600666, 1.667452995, 2.045993606, 2.585916333, 2.693591061, 4.606531922, 0, 0.77549, 0.1494, 1.5 }; 
  return D0_K_1__1270_p_GSpline_EFF__rho_770_0_pip_pim__Kp__pim_( externalParameters, E ); // E is P 
}
extern "C" const char* D0_K_1__1400_p_Ks_892_0_Kp_pim__pip__pim__name() {  return "D0{K(1)(1400)+{K*(892)0{K+,pi-},pi+},pi-}"; } 
extern "C" std::complex<double> D0_K_1__1400_p_Ks_892_0_Kp_pim__pip__pim_(double const* x0, double const* x1){
  auto v3067068972 = sqrt((0.01948) + x1[12]*x1[12] + x1[13]*x1[13] + x1[14]*x1[14]);
  auto v2683369444 = sqrt((0.01948) + x1[4]*x1[4] + x1[5]*x1[5] + x1[6]*x1[6]);
  auto v732589286 = sqrt((0.243717) + x1[0]*x1[0] + x1[1]*x1[1] + x1[2]*x1[2]);
  auto v604511646 = sqrt((0.01948) + x1[8]*x1[8] + x1[9]*x1[9] + x1[10]*x1[10]);
  auto v2627373007 = (-1.)*(x1[2] + x1[10] + x1[14])*(x1[2] + x1[10] + x1[14]) + (v732589286 + v604511646 + v3067068972)*(v732589286 + v604511646 + v3067068972) + (-1.)*(x1[1] + x1[9] + x1[13])*(x1[1] + x1[9] + x1[13]) + (-1.)*(x1[0] + x1[8] + x1[12])*(x1[0] + x1[8] + x1[12]);
  auto v1521070335 = (-1.)*(x1[2] + x1[10])*(x1[2] + x1[10]) + (v732589286 + v604511646)*(v732589286 + v604511646) + (-1.)*(x1[1] + x1[9])*(x1[1] + x1[9]) + (-1.)*(x1[0] + x1[8])*(x1[0] + x1[8]);
  auto v1139362541 = (-1.)*(x1[2] + x1[6])*(x1[2] + x1[6]) + (v732589286 + v2683369444)*(v732589286 + v2683369444) + (-1.)*(x1[1] + x1[5])*(x1[1] + x1[5]) + (-1.)*(x1[0] + x1[4])*(x1[0] + x1[4]);
  auto v325855721 = (-1.)*(x1[2] + x1[6] + x1[14])*(x1[2] + x1[6] + x1[14]) + (v732589286 + v2683369444 + v3067068972)*(v732589286 + v2683369444 + v3067068972) + (-1.)*(x1[1] + x1[5] + x1[13])*(x1[1] + x1[5] + x1[13]) + (-1.)*(x1[0] + x1[4] + x1[12])*(x1[0] + x1[4] + x1[12]);
  auto v4237252271 = (-1.)*(x1[2] + x1[6] + x1[14] + x1[10])*(x1[2] + x1[6] + x1[14] + x1[10]) + (v732589286 + v2683369444 + v3067068972 + v604511646)*(v732589286 + v2683369444 + v3067068972 + v604511646) + (-1.)*(x1[1] + x1[5] + x1[13] + x1[9])*(x1[1] + x1[5] + x1[13] + x1[9]) + (-1.)*(x1[0] + x1[4] + x1[12] + x1[8])*(x1[0] + x1[4] + x1[12] + x1[8]);
  auto v2830794559 = (-1.)*(x1[2] + x1[10] + x1[14] + x1[6])*(x1[2] + x1[10] + x1[14] + x1[6]) + (v732589286 + v604511646 + v3067068972 + v2683369444)*(v732589286 + v604511646 + v3067068972 + v2683369444) + (-1.)*(x1[1] + x1[9] + x1[13] + x1[5])*(x1[1] + x1[9] + x1[13] + x1[5]) + (-1.)*(x1[0] + x1[8] + x1[12] + x1[4])*(x1[0] + x1[8] + x1[12] + x1[4]);
  auto v2222218056 = std::abs((0.25)*(v1521070335-(0.487434)-(0.03896) + ((0.050282))/(v1521070335)));
  auto v1148200210 = (0.25)*(v1139362541-(0.487434)-(0.03896) + ((0.050282))/(v1139362541));
  auto v865896472 = std::abs((0.25)*(v1139362541-(0.487434)-(0.03896) + ((0.050282))/(v1139362541)));
  auto v263973954 = (0.25)*(v1521070335-(0.487434)-(0.03896) + ((0.050282))/(v1521070335));
  auto v73619363 = (0.25)*(v325855721-(2.)*v1139362541-(0.03896) + ((v1139362541-(0.01948))*(v1139362541-(0.01948)))/(v325855721));
  auto v65758105 = (0.25)*(v2627373007-(2.)*v1521070335-(0.03896) + ((v1521070335-(0.01948))*(v1521070335-(0.01948)))/(v2627373007));
  auto v3544975691 = (sqrt((0.900316)*x0[3]*x0[4]*x0[3]*sqrt(x0[4]*x0[4] + x0[3]*x0[3])*1./sqrt(x0[3]*sqrt(x0[4]*x0[4] + x0[3]*x0[3]) + x0[3]*x0[3]))*sqrt(((1.))/((1.) + v865896472*x0[5]*x0[5])))/(x0[3]*x0[3]-v1139362541-((std::complex<double>(0.,1.)*x0[3]*x0[4]*((1.) + std::abs((0.25)*(x0[3]*x0[3]-(0.487434)-(0.03896) + ((0.050282))/(x0[3]*x0[3])))*x0[5]*x0[5])*sqrt((((v1148200210>(0.))?v1148200210:(0.)))/(std::abs((0.25)*(x0[3]*x0[3]-(0.487434)-(0.03896) + ((0.050282))/(x0[3]*x0[3])))))*((v1148200210>(0.))?v1148200210:(0.))*x0[3]*1./sqrt(v1139362541))/(std::abs((0.25)*(x0[3]*x0[3]-(0.487434)-(0.03896) + ((0.050282))/(x0[3]*x0[3])))))/((1.) + ((v1148200210>(0.))?v1148200210:(0.))*x0[5]*x0[5]));
  auto v2635107569 = (0.25)*(v2830794559-(2.)*v2627373007-(0.03896) + ((v2627373007-(0.01948))*(v2627373007-(0.01948)))/(v2830794559));
  auto v2179183568 = (sqrt((0.900316)*x0[1]*x0[2]*x0[1]*sqrt(x0[2]*x0[2] + x0[1]*x0[1])*1./sqrt(x0[1]*sqrt(x0[2]*x0[2] + x0[1]*x0[1]) + x0[1]*x0[1])))/(x0[1]*x0[1]-v2627373007-std::complex<double>(0.,1.)*x0[1]*x0[2]*sqrt((((v65758105>(0.))?v65758105:(0.)))/(std::abs((0.25)*(x0[1]*x0[1]-(2.)*v1521070335-(0.03896) + ((v1521070335-(0.01948))*(v1521070335-(0.01948)))/(x0[1]*x0[1])))))*x0[1]*1./sqrt(v2627373007));
  auto v2108236252 = (sqrt((0.900316)*x0[3]*x0[4]*x0[3]*sqrt(x0[4]*x0[4] + x0[3]*x0[3])*1./sqrt(x0[3]*sqrt(x0[4]*x0[4] + x0[3]*x0[3]) + x0[3]*x0[3]))*sqrt(((1.))/((1.) + v2222218056*x0[5]*x0[5])))/(x0[3]*x0[3]-v1521070335-((std::complex<double>(0.,1.)*x0[3]*x0[4]*((1.) + std::abs((0.25)*(x0[3]*x0[3]-(0.487434)-(0.03896) + ((0.050282))/(x0[3]*x0[3])))*x0[5]*x0[5])*sqrt((((v263973954>(0.))?v263973954:(0.)))/(std::abs((0.25)*(x0[3]*x0[3]-(0.487434)-(0.03896) + ((0.050282))/(x0[3]*x0[3])))))*((v263973954>(0.))?v263973954:(0.))*x0[3]*1./sqrt(v1521070335))/(std::abs((0.25)*(x0[3]*x0[3]-(0.487434)-(0.03896) + ((0.050282))/(x0[3]*x0[3])))))/((1.) + ((v263973954>(0.))?v263973954:(0.))*x0[5]*x0[5]));
  auto v1390527164 = (0.25)*(v4237252271-(2.)*v325855721-(0.03896) + ((v325855721-(0.01948))*(v325855721-(0.01948)))/(v4237252271));
  auto v132702652 = (sqrt((0.900316)*x0[1]*x0[2]*x0[1]*sqrt(x0[2]*x0[2] + x0[1]*x0[1])*1./sqrt(x0[1]*sqrt(x0[2]*x0[2] + x0[1]*x0[1]) + x0[1]*x0[1])))/(x0[1]*x0[1]-v325855721-std::complex<double>(0.,1.)*x0[1]*x0[2]*sqrt((((v73619363>(0.))?v73619363:(0.)))/(std::abs((0.25)*(x0[1]*x0[1]-(2.)*v1139362541-(0.03896) + ((v1139362541-(0.01948))*(v1139362541-(0.01948)))/(x0[1]*x0[1])))))*x0[1]*1./sqrt(v325855721));
  auto v3467292341 = (-1.)*(x1[2] + x1[6])*(x1[2] + x1[6]) + (v732589286 + v2683369444)*(v732589286 + v2683369444) + (-1.)*(x1[1] + x1[5])*(x1[1] + x1[5]) + (-1.)*(x1[0] + x1[4])*(x1[0] + x1[4]);
  auto v3166152392 = sqrt(((1.))/((1.) + v1390527164*x0[0]*x0[0]));
  auto v2429468304 = sqrt(((1.))/((1.) + v2635107569*x0[0]*x0[0]));
  auto v1904166516 = (-1.)*(x1[2] + x1[6] + x1[14] + x1[10])*(x1[2] + x1[6] + x1[14] + x1[10]) + (v732589286 + v2683369444 + v3067068972 + v604511646)*(v732589286 + v2683369444 + v3067068972 + v604511646) + (-1.)*(x1[1] + x1[5] + x1[13] + x1[9])*(x1[1] + x1[5] + x1[13] + x1[9]) + (-1.)*(x1[0] + x1[4] + x1[12] + x1[8])*(x1[0] + x1[4] + x1[12] + x1[8]);
  auto v1047086558 = v2179183568*v2108236252;
  auto v896661844 = v132702652*v3544975691;
  auto v403366188 = (-1.)*(x1[2] + x1[10])*(x1[2] + x1[10]) + (v732589286 + v604511646)*(v732589286 + v604511646) + (-1.)*(x1[1] + x1[9])*(x1[1] + x1[9]) + (-1.)*(x1[0] + x1[8])*(x1[0] + x1[8]);
  auto v3137432811 = v3166152392*v896661844;
  auto v3078308559 = ((-1.)*(x1[2] + x1[6])*(x1[2]-x1[6]) + (v732589286-v2683369444)*(v732589286 + v2683369444) + (-1.)*(x1[1] + x1[5])*(x1[1]-x1[5]) + (-1.)*(x1[0] + x1[4])*(x1[0]-x1[4]))/(v3467292341);
  auto v2670871143 = ((-1.)*(x1[2] + x1[10])*(x1[2]-x1[10]) + (v732589286-v604511646)*(v732589286 + v604511646) + (-1.)*(x1[1] + x1[9])*(x1[1]-x1[9]) + (-1.)*(x1[0] + x1[8])*(x1[0]-x1[8]))/(v403366188);
  auto v1719343032 = (-1.)*(x1[2] + x1[10] + x1[14])*(x1[2] + x1[10] + x1[14]) + (v732589286 + v604511646 + v3067068972)*(v732589286 + v604511646 + v3067068972) + (-1.)*(x1[1] + x1[9] + x1[13])*(x1[1] + x1[9] + x1[13]) + (-1.)*(x1[0] + x1[8] + x1[12])*(x1[0] + x1[8] + x1[12]);
  auto v1255498203 = ((-1.)*(x1[2] + x1[6] + x1[14] + x1[10])*(x1[2] + x1[6] + x1[14]-x1[10]) + (v732589286 + v2683369444 + v3067068972-v604511646)*(v732589286 + v2683369444 + v3067068972 + v604511646) + (-1.)*(x1[1] + x1[5] + x1[13] + x1[9])*(x1[1] + x1[5] + x1[13]-x1[9]) + (-1.)*(x1[0] + x1[4] + x1[12] + x1[8])*(x1[0] + x1[4] + x1[12]-x1[8]))/(v1904166516);
  auto v843449347 = ((-1.)*(x1[2] + x1[10] + x1[14] + x1[6])*(x1[2] + x1[10] + x1[14]-x1[6]) + (v732589286 + v604511646 + v3067068972-v2683369444)*(v732589286 + v604511646 + v3067068972 + v2683369444) + (-1.)*(x1[1] + x1[9] + x1[13] + x1[5])*(x1[1] + x1[9] + x1[13]-x1[5]) + (-1.)*(x1[0] + x1[8] + x1[12] + x1[4])*(x1[0] + x1[8] + x1[12]-x1[4]))/(v1904166516);
  auto v433013361 = v2429468304*v1047086558;
  auto v373333512 = (-1.)*(x1[2] + x1[6] + x1[14])*(x1[2] + x1[6] + x1[14]) + (v732589286 + v2683369444 + v3067068972)*(v732589286 + v2683369444 + v3067068972) + (-1.)*(x1[1] + x1[5] + x1[13])*(x1[1] + x1[5] + x1[13]) + (-1.)*(x1[0] + x1[4] + x1[12])*(x1[0] + x1[4] + x1[12]);
return (0.707107)*(v433013361*((-1.)*(((x1[0] + x1[8] + x1[12])*(x1[1] + x1[9] + x1[13])*(x1[0]-x1[8]-v2670871143*(x1[0] + x1[8])))/(v1719343032) + (-1.)*((-1.) + (-1.)*((x1[1] + x1[9] + x1[13])*(x1[1] + x1[9] + x1[13]))/(v1719343032))*(x1[1]-x1[9]-v2670871143*(x1[1] + x1[9])) + ((x1[2] + x1[10] + x1[14])*(x1[1] + x1[9] + x1[13])*(x1[2]-x1[10]-v2670871143*(x1[2] + x1[10])))/(v1719343032) + (-1.)*((v732589286 + v604511646 + v3067068972)*(x1[1] + x1[9] + x1[13]))/(v1719343032)*(v732589286-v604511646-v2670871143*(v732589286 + v604511646)))*(x1[1] + x1[9] + x1[13]-x1[5]-v843449347*(x1[1] + x1[9] + x1[13] + x1[5])) + (-1.)*(((x1[1] + x1[9] + x1[13])*(x1[0] + x1[8] + x1[12])*(x1[1]-x1[9]-v2670871143*(x1[1] + x1[9])))/(v1719343032) + (-1.)*((-1.) + (-1.)*((x1[0] + x1[8] + x1[12])*(x1[0] + x1[8] + x1[12]))/(v1719343032))*(x1[0]-x1[8]-v2670871143*(x1[0] + x1[8])) + ((x1[2] + x1[10] + x1[14])*(x1[0] + x1[8] + x1[12])*(x1[2]-x1[10]-v2670871143*(x1[2] + x1[10])))/(v1719343032) + (-1.)*((v732589286 + v604511646 + v3067068972)*(x1[0] + x1[8] + x1[12]))/(v1719343032)*(v732589286-v604511646-v2670871143*(v732589286 + v604511646)))*(x1[0] + x1[8] + x1[12]-x1[4]-v843449347*(x1[0] + x1[8] + x1[12] + x1[4])) + (-1.)*(((x1[0] + x1[8] + x1[12])*(x1[2] + x1[10] + x1[14])*(x1[0]-x1[8]-v2670871143*(x1[0] + x1[8])))/(v1719343032) + ((x1[1] + x1[9] + x1[13])*(x1[2] + x1[10] + x1[14])*(x1[1]-x1[9]-v2670871143*(x1[1] + x1[9])))/(v1719343032) + (-1.)*((-1.) + (-1.)*((x1[2] + x1[10] + x1[14])*(x1[2] + x1[10] + x1[14]))/(v1719343032))*(x1[2]-x1[10]-v2670871143*(x1[2] + x1[10])) + (-1.)*((v732589286 + v604511646 + v3067068972)*(x1[2] + x1[10] + x1[14]))/(v1719343032)*(v732589286-v604511646-v2670871143*(v732589286 + v604511646)))*(x1[2] + x1[10] + x1[14]-x1[6]-v843449347*(x1[2] + x1[10] + x1[14] + x1[6])) + (v732589286 + v604511646 + v3067068972-v2683369444-v843449347*(v732589286 + v604511646 + v3067068972 + v2683369444))*(((x1[0] + x1[8] + x1[12])*(v732589286 + v604511646 + v3067068972)*(x1[0]-x1[8]-v2670871143*(x1[0] + x1[8])))/(v1719343032) + ((x1[1] + x1[9] + x1[13])*(v732589286 + v604511646 + v3067068972)*(x1[1]-x1[9]-v2670871143*(x1[1] + x1[9])))/(v1719343032) + ((x1[2] + x1[10] + x1[14])*(v732589286 + v604511646 + v3067068972)*(x1[2]-x1[10]-v2670871143*(x1[2] + x1[10])))/(v1719343032) + (v732589286-v604511646-v2670871143*(v732589286 + v604511646))*((1.) + (-1.)*((v732589286 + v604511646 + v3067068972)*(v732589286 + v604511646 + v3067068972))/(v1719343032)))) + v3137432811*((-1.)*(((x1[0] + x1[4] + x1[12])*(x1[1] + x1[5] + x1[13])*(x1[0]-x1[4]-v3078308559*(x1[0] + x1[4])))/(v373333512) + (-1.)*((-1.) + (-1.)*((x1[1] + x1[5] + x1[13])*(x1[1] + x1[5] + x1[13]))/(v373333512))*(x1[1]-x1[5]-v3078308559*(x1[1] + x1[5])) + ((x1[2] + x1[6] + x1[14])*(x1[1] + x1[5] + x1[13])*(x1[2]-x1[6]-v3078308559*(x1[2] + x1[6])))/(v373333512) + (-1.)*((v732589286 + v2683369444 + v3067068972)*(x1[1] + x1[5] + x1[13]))/(v373333512)*(v732589286-v2683369444-v3078308559*(v732589286 + v2683369444)))*(x1[1] + x1[5] + x1[13]-x1[9]-v1255498203*(x1[1] + x1[5] + x1[13] + x1[9])) + (-1.)*(((x1[1] + x1[5] + x1[13])*(x1[0] + x1[4] + x1[12])*(x1[1]-x1[5]-v3078308559*(x1[1] + x1[5])))/(v373333512) + (-1.)*((-1.) + (-1.)*((x1[0] + x1[4] + x1[12])*(x1[0] + x1[4] + x1[12]))/(v373333512))*(x1[0]-x1[4]-v3078308559*(x1[0] + x1[4])) + ((x1[2] + x1[6] + x1[14])*(x1[0] + x1[4] + x1[12])*(x1[2]-x1[6]-v3078308559*(x1[2] + x1[6])))/(v373333512) + (-1.)*((v732589286 + v2683369444 + v3067068972)*(x1[0] + x1[4] + x1[12]))/(v373333512)*(v732589286-v2683369444-v3078308559*(v732589286 + v2683369444)))*(x1[0] + x1[4] + x1[12]-x1[8]-v1255498203*(x1[0] + x1[4] + x1[12] + x1[8])) + (-1.)*(((x1[0] + x1[4] + x1[12])*(x1[2] + x1[6] + x1[14])*(x1[0]-x1[4]-v3078308559*(x1[0] + x1[4])))/(v373333512) + ((x1[1] + x1[5] + x1[13])*(x1[2] + x1[6] + x1[14])*(x1[1]-x1[5]-v3078308559*(x1[1] + x1[5])))/(v373333512) + (-1.)*((-1.) + (-1.)*((x1[2] + x1[6] + x1[14])*(x1[2] + x1[6] + x1[14]))/(v373333512))*(x1[2]-x1[6]-v3078308559*(x1[2] + x1[6])) + (-1.)*((v732589286 + v2683369444 + v3067068972)*(x1[2] + x1[6] + x1[14]))/(v373333512)*(v732589286-v2683369444-v3078308559*(v732589286 + v2683369444)))*(x1[2] + x1[6] + x1[14]-x1[10]-v1255498203*(x1[2] + x1[6] + x1[14] + x1[10])) + (v732589286 + v2683369444 + v3067068972-v604511646-v1255498203*(v732589286 + v2683369444 + v3067068972 + v604511646))*(((x1[0] + x1[4] + x1[12])*(v732589286 + v2683369444 + v3067068972)*(x1[0]-x1[4]-v3078308559*(x1[0] + x1[4])))/(v373333512) + ((x1[1] + x1[5] + x1[13])*(v732589286 + v2683369444 + v3067068972)*(x1[1]-x1[5]-v3078308559*(x1[1] + x1[5])))/(v373333512) + ((x1[2] + x1[6] + x1[14])*(v732589286 + v2683369444 + v3067068972)*(x1[2]-x1[6]-v3078308559*(x1[2] + x1[6])))/(v373333512) + (v732589286-v2683369444-v3078308559*(v732589286 + v2683369444))*((1.) + (-1.)*((v732589286 + v2683369444 + v3067068972)*(v732589286 + v2683369444 + v3067068972))/(v373333512)))));
}

extern "C" std::complex<double> D0_K_1__1400_p_Ks_892_0_Kp_pim__pip__pim__wParams( const double*__restrict__ E ){
  double externalParameters [] = {3.7559, 1.403, 0.174, 0.896, 0.0503, 1.5 }; 
  return D0_K_1__1400_p_Ks_892_0_Kp_pim__pip__pim_( externalParameters, E ); // E is P 
}
extern "C" const char* D0_Ks_892_0_Kp_pim__rho_770_0_pip_pim___name() {  return "D0{K*(892)0{K+,pi-},rho(770)0{pi+,pi-}}"; } 
extern "C" std::complex<double> D0_Ks_892_0_Kp_pim__rho_770_0_pip_pim__(double const* x0, double const* x1){
  auto v3067068972 = sqrt((0.01948) + x1[12]*x1[12] + x1[13]*x1[13] + x1[14]*x1[14]);
  auto v2683369444 = sqrt((0.01948) + x1[4]*x1[4] + x1[5]*x1[5] + x1[6]*x1[6]);
  auto v732589286 = sqrt((0.243717) + x1[0]*x1[0] + x1[1]*x1[1] + x1[2]*x1[2]);
  auto v604511646 = sqrt((0.01948) + x1[8]*x1[8] + x1[9]*x1[9] + x1[10]*x1[10]);
  auto v3864776319 = (-1.)*(x1[14] + x1[6])*(x1[14] + x1[6]) + (v3067068972 + v2683369444)*(v3067068972 + v2683369444) + (-1.)*(x1[13] + x1[5])*(x1[13] + x1[5]) + (-1.)*(x1[12] + x1[4])*(x1[12] + x1[4]);
  auto v3303589013 = (-1.)*(x1[14] + x1[10])*(x1[14] + x1[10]) + (v3067068972 + v604511646)*(v3067068972 + v604511646) + (-1.)*(x1[13] + x1[9])*(x1[13] + x1[9]) + (-1.)*(x1[12] + x1[8])*(x1[12] + x1[8]);
  auto v1521070335 = (-1.)*(x1[2] + x1[10])*(x1[2] + x1[10]) + (v732589286 + v604511646)*(v732589286 + v604511646) + (-1.)*(x1[1] + x1[9])*(x1[1] + x1[9]) + (-1.)*(x1[0] + x1[8])*(x1[0] + x1[8]);
  auto v1139362541 = (-1.)*(x1[2] + x1[6])*(x1[2] + x1[6]) + (v732589286 + v2683369444)*(v732589286 + v2683369444) + (-1.)*(x1[1] + x1[5])*(x1[1] + x1[5]) + (-1.)*(x1[0] + x1[4])*(x1[0] + x1[4]);
  auto v3405928622 = (0.25)*(v3864776319-(0.03896)-(0.03896));
  auto v3287524337 = (0.25)*(v3303589013-(0.03896)-(0.03896));
  auto v3199098040 = std::abs((0.25)*(v3864776319-(0.03896)-(0.03896)));
  auto v2222218056 = std::abs((0.25)*(v1521070335-(0.487434)-(0.03896) + ((0.050282))/(v1521070335)));
  auto v1148200210 = (0.25)*(v1139362541-(0.487434)-(0.03896) + ((0.050282))/(v1139362541));
  auto v865896472 = std::abs((0.25)*(v1139362541-(0.487434)-(0.03896) + ((0.050282))/(v1139362541)));
  auto v263973954 = (0.25)*(v1521070335-(0.487434)-(0.03896) + ((0.050282))/(v1521070335));
  auto v139006945 = std::abs((0.25)*(v3303589013-(0.03896)-(0.03896)));
  auto v3544975691 = (sqrt((0.900316)*x0[0]*x0[1]*x0[0]*sqrt(x0[1]*x0[1] + x0[0]*x0[0])*1./sqrt(x0[0]*sqrt(x0[1]*x0[1] + x0[0]*x0[0]) + x0[0]*x0[0]))*sqrt(((1.))/((1.) + v865896472*x0[2]*x0[2])))/(x0[0]*x0[0]-v1139362541-((std::complex<double>(0.,1.)*x0[0]*x0[1]*((1.) + std::abs((0.25)*(x0[0]*x0[0]-(0.487434)-(0.03896) + ((0.050282))/(x0[0]*x0[0])))*x0[2]*x0[2])*sqrt((((v1148200210>(0.))?v1148200210:(0.)))/(std::abs((0.25)*(x0[0]*x0[0]-(0.487434)-(0.03896) + ((0.050282))/(x0[0]*x0[0])))))*((v1148200210>(0.))?v1148200210:(0.))*x0[0]*1./sqrt(v1139362541))/(std::abs((0.25)*(x0[0]*x0[0]-(0.487434)-(0.03896) + ((0.050282))/(x0[0]*x0[0])))))/((1.) + ((v1148200210>(0.))?v1148200210:(0.))*x0[2]*x0[2]));
  auto v3467292341 = (-1.)*(x1[2] + x1[6])*(x1[2] + x1[6]) + (v732589286 + v2683369444)*(v732589286 + v2683369444) + (-1.)*(x1[1] + x1[5])*(x1[1] + x1[5]) + (-1.)*(x1[0] + x1[4])*(x1[0] + x1[4]);
  auto v2433939122 = (sqrt((0.900316)*x0[3]*x0[4]*x0[3]*sqrt(x0[4]*x0[4] + x0[3]*x0[3])*1./sqrt(x0[3]*sqrt(x0[4]*x0[4] + x0[3]*x0[3]) + x0[3]*x0[3]))*sqrt(((1.))/((1.) + v3199098040*x0[5]*x0[5])))/(x0[3]*x0[3]-v3864776319-((std::complex<double>(0.,1.)*x0[3]*x0[4]*((1.) + std::abs((0.25)*(x0[3]*x0[3]-(0.03896)-(0.03896)))*x0[5]*x0[5])*sqrt((((v3405928622>(0.))?v3405928622:(0.)))/(std::abs((0.25)*(x0[3]*x0[3]-(0.03896)-(0.03896)))))*((v3405928622>(0.))?v3405928622:(0.))*x0[3]*1./sqrt(v3864776319))/(std::abs((0.25)*(x0[3]*x0[3]-(0.03896)-(0.03896)))))/((1.) + ((v3405928622>(0.))?v3405928622:(0.))*x0[5]*x0[5]));
  auto v2108236252 = (sqrt((0.900316)*x0[0]*x0[1]*x0[0]*sqrt(x0[1]*x0[1] + x0[0]*x0[0])*1./sqrt(x0[0]*sqrt(x0[1]*x0[1] + x0[0]*x0[0]) + x0[0]*x0[0]))*sqrt(((1.))/((1.) + v2222218056*x0[2]*x0[2])))/(x0[0]*x0[0]-v1521070335-((std::complex<double>(0.,1.)*x0[0]*x0[1]*((1.) + std::abs((0.25)*(x0[0]*x0[0]-(0.487434)-(0.03896) + ((0.050282))/(x0[0]*x0[0])))*x0[2]*x0[2])*sqrt((((v263973954>(0.))?v263973954:(0.)))/(std::abs((0.25)*(x0[0]*x0[0]-(0.487434)-(0.03896) + ((0.050282))/(x0[0]*x0[0])))))*((v263973954>(0.))?v263973954:(0.))*x0[0]*1./sqrt(v1521070335))/(std::abs((0.25)*(x0[0]*x0[0]-(0.487434)-(0.03896) + ((0.050282))/(x0[0]*x0[0])))))/((1.) + ((v263973954>(0.))?v263973954:(0.))*x0[2]*x0[2]));
  auto v1590400259 = (-1.)*(x1[14] + x1[10])*(x1[14] + x1[10]) + (v3067068972 + v604511646)*(v3067068972 + v604511646) + (-1.)*(x1[13] + x1[9])*(x1[13] + x1[9]) + (-1.)*(x1[12] + x1[8])*(x1[12] + x1[8]);
  auto v1323540992 = (-1.)*(x1[14] + x1[6])*(x1[14] + x1[6]) + (v3067068972 + v2683369444)*(v3067068972 + v2683369444) + (-1.)*(x1[13] + x1[5])*(x1[13] + x1[5]) + (-1.)*(x1[12] + x1[4])*(x1[12] + x1[4]);
  auto v939480974 = (sqrt((0.900316)*x0[3]*x0[4]*x0[3]*sqrt(x0[4]*x0[4] + x0[3]*x0[3])*1./sqrt(x0[3]*sqrt(x0[4]*x0[4] + x0[3]*x0[3]) + x0[3]*x0[3]))*sqrt(((1.))/((1.) + v139006945*x0[5]*x0[5])))/(x0[3]*x0[3]-v3303589013-((std::complex<double>(0.,1.)*x0[3]*x0[4]*((1.) + std::abs((0.25)*(x0[3]*x0[3]-(0.03896)-(0.03896)))*x0[5]*x0[5])*sqrt((((v3287524337>(0.))?v3287524337:(0.)))/(std::abs((0.25)*(x0[3]*x0[3]-(0.03896)-(0.03896)))))*((v3287524337>(0.))?v3287524337:(0.))*x0[3]*1./sqrt(v3303589013))/(std::abs((0.25)*(x0[3]*x0[3]-(0.03896)-(0.03896)))))/((1.) + ((v3287524337>(0.))?v3287524337:(0.))*x0[5]*x0[5]));
  auto v403366188 = (-1.)*(x1[2] + x1[10])*(x1[2] + x1[10]) + (v732589286 + v604511646)*(v732589286 + v604511646) + (-1.)*(x1[1] + x1[9])*(x1[1] + x1[9]) + (-1.)*(x1[0] + x1[8])*(x1[0] + x1[8]);
  auto v3853516903 = v3544975691*v939480974;
  auto v3810277734 = v2108236252*v2433939122;
  auto v3114752748 = ((-1.)*(x1[14] + x1[6])*(x1[14]-x1[6]) + (v3067068972-v2683369444)*(v3067068972 + v2683369444) + (-1.)*(x1[13] + x1[5])*(x1[13]-x1[5]) + (-1.)*(x1[12] + x1[4])*(x1[12]-x1[4]))/(v1323540992);
  auto v3078308559 = ((-1.)*(x1[2] + x1[6])*(x1[2]-x1[6]) + (v732589286-v2683369444)*(v732589286 + v2683369444) + (-1.)*(x1[1] + x1[5])*(x1[1]-x1[5]) + (-1.)*(x1[0] + x1[4])*(x1[0]-x1[4]))/(v3467292341);
  auto v2670871143 = ((-1.)*(x1[2] + x1[10])*(x1[2]-x1[10]) + (v732589286-v604511646)*(v732589286 + v604511646) + (-1.)*(x1[1] + x1[9])*(x1[1]-x1[9]) + (-1.)*(x1[0] + x1[8])*(x1[0]-x1[8]))/(v403366188);
  auto v1253388601 = ((-1.)*(x1[14] + x1[10])*(x1[14]-x1[10]) + (v3067068972-v604511646)*(v3067068972 + v604511646) + (-1.)*(x1[13] + x1[9])*(x1[13]-x1[9]) + (-1.)*(x1[12] + x1[8])*(x1[12]-x1[8]))/(v1590400259);
return (0.707107)*(v3810277734*((-1.)*(x1[1]-x1[9]-v2670871143*(x1[1] + x1[9]))*(x1[13]-x1[5]-v3114752748*(x1[13] + x1[5])) + (-1.)*(x1[0]-x1[8]-v2670871143*(x1[0] + x1[8]))*(x1[12]-x1[4]-v3114752748*(x1[12] + x1[4])) + (-1.)*(x1[2]-x1[10]-v2670871143*(x1[2] + x1[10]))*(x1[14]-x1[6]-v3114752748*(x1[14] + x1[6])) + (v3067068972-v2683369444-v3114752748*(v3067068972 + v2683369444))*(v732589286-v604511646-v2670871143*(v732589286 + v604511646))) + v3853516903*((-1.)*(x1[1]-x1[5]-v3078308559*(x1[1] + x1[5]))*(x1[13]-x1[9]-v1253388601*(x1[13] + x1[9])) + (-1.)*(x1[0]-x1[4]-v3078308559*(x1[0] + x1[4]))*(x1[12]-x1[8]-v1253388601*(x1[12] + x1[8])) + (-1.)*(x1[2]-x1[6]-v3078308559*(x1[2] + x1[6]))*(x1[14]-x1[10]-v1253388601*(x1[14] + x1[10])) + (v3067068972-v604511646-v1253388601*(v3067068972 + v604511646))*(v732589286-v2683369444-v3078308559*(v732589286 + v2683369444))));
}

extern "C" std::complex<double> D0_Ks_892_0_Kp_pim__rho_770_0_pip_pim___wParams( const double*__restrict__ E ){
  double externalParameters [] = {0.896, 0.0503, 1.5, 0.77549, 0.1494, 1.5 }; 
  return D0_Ks_892_0_Kp_pim__rho_770_0_pip_pim__( externalParameters, E ); // E is P 
}
extern "C" const char* D0_KPi40_FOCUS_I32__Kp_pim__PiPi40_kMatrix_pole_1__pip_pim___name() {  return "D0{KPi40[FOCUS.I32]{K+,pi-},PiPi40[kMatrix.pole.1]{pi+,pi-}}"; } 
extern "C" std::complex<double> D0_KPi40_FOCUS_I32__Kp_pim__PiPi40_kMatrix_pole_1__pip_pim__(double const* x0, double const* x1){
  auto v3067068972 = sqrt((0.01948) + x1[12]*x1[12] + x1[13]*x1[13] + x1[14]*x1[14]);
  auto v2683369444 = sqrt((0.01948) + x1[4]*x1[4] + x1[5]*x1[5] + x1[6]*x1[6]);
  auto v604511646 = sqrt((0.01948) + x1[8]*x1[8] + x1[9]*x1[9] + x1[10]*x1[10]);
  auto v3864776319 = (-1.)*(x1[14] + x1[6])*(x1[14] + x1[6]) + (v3067068972 + v2683369444)*(v3067068972 + v2683369444) + (-1.)*(x1[13] + x1[5])*(x1[13] + x1[5]) + (-1.)*(x1[12] + x1[4])*(x1[12] + x1[4]);
  auto v3303589013 = (-1.)*(x1[14] + x1[10])*(x1[14] + x1[10]) + (v3067068972 + v604511646)*(v3067068972 + v604511646) + (-1.)*(x1[13] + x1[9])*(x1[13] + x1[9]) + (-1.)*(x1[12] + x1[8])*(x1[12] + x1[8]);
  auto v3037555099 = v3864776319;
  auto v1836426858 = v3303589013;
  auto v3789560610 = (1.)-((0.974868))/(v3037555099);
  auto v3605892192 = (1.)-((2.297171))/(v1836426858);
  auto v3102009577 = (1.)-((0.311677))/(v3037555099);
  auto v3007036945 = (1.)-((0.974868))/(v1836426858);
  auto v2840245930 = (1.)-((0.311677))/(v1836426858);
  auto v2488241434 = ((v3037555099-(0.00974)*x0[1])*((1.)-x0[2]))/(v3037555099-x0[2]);
  auto v1694853431 = (1.)-((0.077919))/(v3037555099);
  auto v758672440 = (1.)-((1.200611))/(v1836426858);
  auto v359842611 = (1.)-((1.200611))/(v3037555099);
  auto v341659004 = (1.)-((0.077919))/(v1836426858);
  auto v151048832 = ((v1836426858-(0.00974)*x0[1])*((1.)-x0[2]))/(v1836426858-x0[2]);
  auto v21348587 = (1.)-((2.297171))/(v3037555099);
  auto v3962953584 = std::complex<double>(-0.,-1.)*v151048832*((x0[20]*x0[4])/(x0[5]*x0[5]-v1836426858) + (x0[21]*x0[6])/(x0[7]*x0[7]-v1836426858) + (x0[22]*x0[9])/(x0[10]*x0[10]-v1836426858) + (x0[23]*x0[12])/(x0[13]*x0[13]-v1836426858) + (x0[24]*x0[15])/(x0[16]*x0[16]-v1836426858) + (x0[25]*((1.)-x0[18]))/(v3303589013-x0[18]))*((v1836426858>(1.))?((v2840245930>(0.))?sqrt(v2840245930):std::complex<double>(0.,1.)*sqrt((-1.)*v2840245930)):(0.00051) + (-0.01933)*v1836426858 + (0.13851)*v1836426858*v1836426858 + (-0.2084)*v1836426858*v1836426858*v1836426858 + (-0.29744)*v1836426858*v1836426858*v1836426858*v1836426858 + (0.13655)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858 + (1.07885)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858);
  auto v3926569162 = std::complex<double>(-0.,-1.)*v151048832*((x0[3]*x0[4])/(x0[5]*x0[5]-v1836426858) + (x0[0]*x0[6])/(x0[7]*x0[7]-v1836426858) + (x0[8]*x0[9])/(x0[10]*x0[10]-v1836426858) + (x0[11]*x0[12])/(x0[13]*x0[13]-v1836426858) + (x0[14]*x0[15])/(x0[16]*x0[16]-v1836426858) + (x0[17]*((1.)-x0[18]))/(v3303589013-x0[18]))*((v3007036945>(0.))?sqrt(v3007036945):std::complex<double>(0.,1.)*sqrt((-1.)*v3007036945));
  auto v3712237063 = (1.)-std::complex<double>(0.,1.)*v151048832*((x0[4]*x0[4])/(x0[5]*x0[5]-v1836426858) + (x0[6]*x0[6])/(x0[7]*x0[7]-v1836426858) + (x0[9]*x0[9])/(x0[10]*x0[10]-v1836426858) + (x0[12]*x0[12])/(x0[13]*x0[13]-v1836426858) + (x0[15]*x0[15])/(x0[16]*x0[16]-v1836426858) + (x0[19]*((1.)-x0[18]))/(v3303589013-x0[18]))*((v341659004>(0.))?sqrt(v341659004):std::complex<double>(0.,1.)*sqrt((-1.)*v341659004));
  auto v3215216564 = std::complex<double>(-0.,-1.)*v2488241434*((x0[32]*x0[4])/(x0[5]*x0[5]-v3037555099) + (x0[33]*x0[6])/(x0[7]*x0[7]-v3037555099) + (x0[34]*x0[9])/(x0[10]*x0[10]-v3037555099) + (x0[35]*x0[12])/(x0[13]*x0[13]-v3037555099) + (x0[36]*x0[15])/(x0[16]*x0[16]-v3037555099) + (x0[37]*((1.)-x0[18]))/(v3864776319-x0[18]))*((v1694853431>(0.))?sqrt(v1694853431):std::complex<double>(0.,1.)*sqrt((-1.)*v1694853431));
  auto v2111851279 = (1.)-std::complex<double>(0.,1.)*v2488241434*((x0[4]*x0[4])/(x0[5]*x0[5]-v3037555099) + (x0[6]*x0[6])/(x0[7]*x0[7]-v3037555099) + (x0[9]*x0[9])/(x0[10]*x0[10]-v3037555099) + (x0[12]*x0[12])/(x0[13]*x0[13]-v3037555099) + (x0[15]*x0[15])/(x0[16]*x0[16]-v3037555099) + (x0[19]*((1.)-x0[18]))/(v3864776319-x0[18]))*((v1694853431>(0.))?sqrt(v1694853431):std::complex<double>(0.,1.)*sqrt((-1.)*v1694853431));
  auto v1955258502 = std::complex<double>(-0.,-1.)*v2488241434*((x0[26]*x0[4])/(x0[5]*x0[5]-v3037555099) + (x0[27]*x0[6])/(x0[7]*x0[7]-v3037555099) + (x0[28]*x0[9])/(x0[10]*x0[10]-v3037555099) + (x0[29]*x0[12])/(x0[13]*x0[13]-v3037555099) + (x0[30]*x0[15])/(x0[16]*x0[16]-v3037555099) + (x0[31]*((1.)-x0[18]))/(v3864776319-x0[18]))*((v359842611>(0.))?sqrt(v359842611):std::complex<double>(0.,1.)*sqrt((-1.)*v359842611));
  auto v1742329417 = std::complex<double>(-0.,-1.)*v151048832*((x0[32]*x0[4])/(x0[5]*x0[5]-v1836426858) + (x0[33]*x0[6])/(x0[7]*x0[7]-v1836426858) + (x0[34]*x0[9])/(x0[10]*x0[10]-v1836426858) + (x0[35]*x0[12])/(x0[13]*x0[13]-v1836426858) + (x0[36]*x0[15])/(x0[16]*x0[16]-v1836426858) + (x0[37]*((1.)-x0[18]))/(v3303589013-x0[18]))*((v3605892192>(0.))?sqrt(v3605892192):std::complex<double>(0.,1.)*sqrt((-1.)*v3605892192));
  auto v1636750592 = std::complex<double>(-0.,-1.)*v151048832*((x0[26]*x0[4])/(x0[5]*x0[5]-v1836426858) + (x0[27]*x0[6])/(x0[7]*x0[7]-v1836426858) + (x0[28]*x0[9])/(x0[10]*x0[10]-v1836426858) + (x0[29]*x0[12])/(x0[13]*x0[13]-v1836426858) + (x0[30]*x0[15])/(x0[16]*x0[16]-v1836426858) + (x0[31]*((1.)-x0[18]))/(v3303589013-x0[18]))*((v758672440>(0.))?sqrt(v758672440):std::complex<double>(0.,1.)*sqrt((-1.)*v758672440));
  auto v1474669829 = std::complex<double>(-0.,-1.)*v2488241434*((x0[26]*x0[4])/(x0[5]*x0[5]-v3037555099) + (x0[27]*x0[6])/(x0[7]*x0[7]-v3037555099) + (x0[28]*x0[9])/(x0[10]*x0[10]-v3037555099) + (x0[29]*x0[12])/(x0[13]*x0[13]-v3037555099) + (x0[30]*x0[15])/(x0[16]*x0[16]-v3037555099) + (x0[31]*((1.)-x0[18]))/(v3864776319-x0[18]))*((v1694853431>(0.))?sqrt(v1694853431):std::complex<double>(0.,1.)*sqrt((-1.)*v1694853431));
  auto v1452648461 = std::complex<double>(-0.,-1.)*v2488241434*((x0[20]*x0[4])/(x0[5]*x0[5]-v3037555099) + (x0[21]*x0[6])/(x0[7]*x0[7]-v3037555099) + (x0[22]*x0[9])/(x0[10]*x0[10]-v3037555099) + (x0[23]*x0[12])/(x0[13]*x0[13]-v3037555099) + (x0[24]*x0[15])/(x0[16]*x0[16]-v3037555099) + (x0[25]*((1.)-x0[18]))/(v3864776319-x0[18]))*((v1694853431>(0.))?sqrt(v1694853431):std::complex<double>(0.,1.)*sqrt((-1.)*v1694853431));
  auto v1304853663 = std::complex<double>(-0.,-1.)*v151048832*((x0[3]*x0[4])/(x0[5]*x0[5]-v1836426858) + (x0[0]*x0[6])/(x0[7]*x0[7]-v1836426858) + (x0[8]*x0[9])/(x0[10]*x0[10]-v1836426858) + (x0[11]*x0[12])/(x0[13]*x0[13]-v1836426858) + (x0[14]*x0[15])/(x0[16]*x0[16]-v1836426858) + (x0[17]*((1.)-x0[18]))/(v3303589013-x0[18]))*((v341659004>(0.))?sqrt(v341659004):std::complex<double>(0.,1.)*sqrt((-1.)*v341659004));
  auto v1258276323 = std::complex<double>(-0.,-1.)*v2488241434*((x0[20]*x0[4])/(x0[5]*x0[5]-v3037555099) + (x0[21]*x0[6])/(x0[7]*x0[7]-v3037555099) + (x0[22]*x0[9])/(x0[10]*x0[10]-v3037555099) + (x0[23]*x0[12])/(x0[13]*x0[13]-v3037555099) + (x0[24]*x0[15])/(x0[16]*x0[16]-v3037555099) + (x0[25]*((1.)-x0[18]))/(v3864776319-x0[18]))*((v3037555099>(1.))?((v3102009577>(0.))?sqrt(v3102009577):std::complex<double>(0.,1.)*sqrt((-1.)*v3102009577)):(0.00051) + (-0.01933)*v3037555099 + (0.13851)*v3037555099*v3037555099 + (-0.2084)*v3037555099*v3037555099*v3037555099 + (-0.29744)*v3037555099*v3037555099*v3037555099*v3037555099 + (0.13655)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099 + (1.07885)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099);
  auto v980854748 = std::complex<double>(-0.,-1.)*v2488241434*((x0[3]*x0[4])/(x0[5]*x0[5]-v3037555099) + (x0[0]*x0[6])/(x0[7]*x0[7]-v3037555099) + (x0[8]*x0[9])/(x0[10]*x0[10]-v3037555099) + (x0[11]*x0[12])/(x0[13]*x0[13]-v3037555099) + (x0[14]*x0[15])/(x0[16]*x0[16]-v3037555099) + (x0[17]*((1.)-x0[18]))/(v3864776319-x0[18]))*((v3789560610>(0.))?sqrt(v3789560610):std::complex<double>(0.,1.)*sqrt((-1.)*v3789560610));
  auto v910172329 = std::complex<double>(-0.,-1.)*v2488241434*((x0[3]*x0[4])/(x0[5]*x0[5]-v3037555099) + (x0[0]*x0[6])/(x0[7]*x0[7]-v3037555099) + (x0[8]*x0[9])/(x0[10]*x0[10]-v3037555099) + (x0[11]*x0[12])/(x0[13]*x0[13]-v3037555099) + (x0[14]*x0[15])/(x0[16]*x0[16]-v3037555099) + (x0[17]*((1.)-x0[18]))/(v3864776319-x0[18]))*((v1694853431>(0.))?sqrt(v1694853431):std::complex<double>(0.,1.)*sqrt((-1.)*v1694853431));
  auto v839072984 = std::complex<double>(-0.,-1.)*v151048832*((x0[32]*x0[4])/(x0[5]*x0[5]-v1836426858) + (x0[33]*x0[6])/(x0[7]*x0[7]-v1836426858) + (x0[34]*x0[9])/(x0[10]*x0[10]-v1836426858) + (x0[35]*x0[12])/(x0[13]*x0[13]-v1836426858) + (x0[36]*x0[15])/(x0[16]*x0[16]-v1836426858) + (x0[37]*((1.)-x0[18]))/(v3303589013-x0[18]))*((v341659004>(0.))?sqrt(v341659004):std::complex<double>(0.,1.)*sqrt((-1.)*v341659004));
  auto v255841663 = std::complex<double>(-0.,-1.)*v151048832*((x0[20]*x0[4])/(x0[5]*x0[5]-v1836426858) + (x0[21]*x0[6])/(x0[7]*x0[7]-v1836426858) + (x0[22]*x0[9])/(x0[10]*x0[10]-v1836426858) + (x0[23]*x0[12])/(x0[13]*x0[13]-v1836426858) + (x0[24]*x0[15])/(x0[16]*x0[16]-v1836426858) + (x0[25]*((1.)-x0[18]))/(v3303589013-x0[18]))*((v341659004>(0.))?sqrt(v341659004):std::complex<double>(0.,1.)*sqrt((-1.)*v341659004));
  auto v216360023 = std::complex<double>(-0.,-1.)*v151048832*((x0[26]*x0[4])/(x0[5]*x0[5]-v1836426858) + (x0[27]*x0[6])/(x0[7]*x0[7]-v1836426858) + (x0[28]*x0[9])/(x0[10]*x0[10]-v1836426858) + (x0[29]*x0[12])/(x0[13]*x0[13]-v1836426858) + (x0[30]*x0[15])/(x0[16]*x0[16]-v1836426858) + (x0[31]*((1.)-x0[18]))/(v3303589013-x0[18]))*((v341659004>(0.))?sqrt(v341659004):std::complex<double>(0.,1.)*sqrt((-1.)*v341659004));
  auto v111119486 = std::complex<double>(-0.,-1.)*v2488241434*((x0[32]*x0[4])/(x0[5]*x0[5]-v3037555099) + (x0[33]*x0[6])/(x0[7]*x0[7]-v3037555099) + (x0[34]*x0[9])/(x0[10]*x0[10]-v3037555099) + (x0[35]*x0[12])/(x0[13]*x0[13]-v3037555099) + (x0[36]*x0[15])/(x0[16]*x0[16]-v3037555099) + (x0[37]*((1.)-x0[18]))/(v3864776319-x0[18]))*((v21348587>(0.))?sqrt(v21348587):std::complex<double>(0.,1.)*sqrt((-1.)*v21348587));
  auto v3926831395 = (v1304853663*v1742329417)/(v3712237063);
  auto v3669473571 = (v1304853663*v3962953584)/(v3712237063);
  auto v3663942510 = (1.)-std::complex<double>(0.,1.)*v151048832*((x0[3]*x0[3])/(x0[5]*x0[5]-v1836426858) + (x0[0]*x0[0])/(x0[7]*x0[7]-v1836426858) + (x0[8]*x0[8])/(x0[10]*x0[10]-v1836426858) + (x0[11]*x0[11])/(x0[13]*x0[13]-v1836426858) + (x0[14]*x0[14])/(x0[16]*x0[16]-v1836426858))*((v3007036945>(0.))?sqrt(v3007036945):std::complex<double>(0.,1.)*sqrt((-1.)*v3007036945));
  auto v3627579820 = (-1.)*(v910172329)/(v2111851279);
  auto v3502841389 = (v910172329*v111119486)/(v2111851279);
  auto v3160618711 = (v255841663*v3926569162)/(v3712237063);
  auto v3135162689 = std::complex<double>(-0.,-1.)*v2488241434*((x0[32]*x0[3])/(x0[5]*x0[5]-v3037555099) + (x0[33]*x0[0])/(x0[7]*x0[7]-v3037555099) + (x0[34]*x0[8])/(x0[10]*x0[10]-v3037555099) + (x0[35]*x0[11])/(x0[13]*x0[13]-v3037555099) + (x0[36]*x0[14])/(x0[16]*x0[16]-v3037555099))*((v21348587>(0.))?sqrt(v21348587):std::complex<double>(0.,1.)*sqrt((-1.)*v21348587));
  auto v3099229930 = std::complex<double>(-0.,-1.)*v2488241434*((x0[26]*x0[3])/(x0[5]*x0[5]-v3037555099) + (x0[27]*x0[0])/(x0[7]*x0[7]-v3037555099) + (x0[28]*x0[8])/(x0[10]*x0[10]-v3037555099) + (x0[29]*x0[11])/(x0[13]*x0[13]-v3037555099) + (x0[30]*x0[14])/(x0[16]*x0[16]-v3037555099))*((v3789560610>(0.))?sqrt(v3789560610):std::complex<double>(0.,1.)*sqrt((-1.)*v3789560610));
  auto v2899208900 = std::complex<double>(-0.,-1.)*v2488241434*((x0[20]*x0[3])/(x0[5]*x0[5]-v3037555099) + (x0[21]*x0[0])/(x0[7]*x0[7]-v3037555099) + (x0[22]*x0[8])/(x0[10]*x0[10]-v3037555099) + (x0[23]*x0[11])/(x0[13]*x0[13]-v3037555099) + (x0[24]*x0[14])/(x0[16]*x0[16]-v3037555099))*((v3037555099>(1.))?((v3102009577>(0.))?sqrt(v3102009577):std::complex<double>(0.,1.)*sqrt((-1.)*v3102009577)):(0.00051) + (-0.01933)*v3037555099 + (0.13851)*v3037555099*v3037555099 + (-0.2084)*v3037555099*v3037555099*v3037555099 + (-0.29744)*v3037555099*v3037555099*v3037555099*v3037555099 + (0.13655)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099 + (1.07885)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099);
  auto v2844405163 = (v839072984*v3926569162)/(v3712237063);
  auto v2709668838 = (v216360023*v3926569162)/(v3712237063);
  auto v2690895429 = (v3926569162)/(v3712237063);
  auto v2487489657 = (v3215216564*v980854748)/(v2111851279);
  auto v2208466672 = std::complex<double>(-0.,-1.)*v2488241434*((x0[26]*x0[3])/(x0[5]*x0[5]-v3037555099) + (x0[27]*x0[0])/(x0[7]*x0[7]-v3037555099) + (x0[28]*x0[8])/(x0[10]*x0[10]-v3037555099) + (x0[29]*x0[11])/(x0[13]*x0[13]-v3037555099) + (x0[30]*x0[14])/(x0[16]*x0[16]-v3037555099))*((v359842611>(0.))?sqrt(v359842611):std::complex<double>(0.,1.)*sqrt((-1.)*v359842611));
  auto v2192947274 = std::complex<double>(-0.,-1.)*v2488241434*((x0[32]*x0[3])/(x0[5]*x0[5]-v3037555099) + (x0[33]*x0[0])/(x0[7]*x0[7]-v3037555099) + (x0[34]*x0[8])/(x0[10]*x0[10]-v3037555099) + (x0[35]*x0[11])/(x0[13]*x0[13]-v3037555099) + (x0[36]*x0[14])/(x0[16]*x0[16]-v3037555099))*((v3789560610>(0.))?sqrt(v3789560610):std::complex<double>(0.,1.)*sqrt((-1.)*v3789560610));
  auto v2076842653 = std::complex<double>(-0.,-1.)*v151048832*((x0[26]*x0[3])/(x0[5]*x0[5]-v1836426858) + (x0[27]*x0[0])/(x0[7]*x0[7]-v1836426858) + (x0[28]*x0[8])/(x0[10]*x0[10]-v1836426858) + (x0[29]*x0[11])/(x0[13]*x0[13]-v1836426858) + (x0[30]*x0[14])/(x0[16]*x0[16]-v1836426858))*((v758672440>(0.))?sqrt(v758672440):std::complex<double>(0.,1.)*sqrt((-1.)*v758672440));
  auto v2027797497 = std::complex<double>(-0.,-1.)*v2488241434*((x0[20]*x0[3])/(x0[5]*x0[5]-v3037555099) + (x0[21]*x0[0])/(x0[7]*x0[7]-v3037555099) + (x0[22]*x0[8])/(x0[10]*x0[10]-v3037555099) + (x0[23]*x0[11])/(x0[13]*x0[13]-v3037555099) + (x0[24]*x0[14])/(x0[16]*x0[16]-v3037555099))*((v3789560610>(0.))?sqrt(v3789560610):std::complex<double>(0.,1.)*sqrt((-1.)*v3789560610));
  auto v2014012967 = std::complex<double>(-0.,-1.)*v151048832*((x0[32]*x0[3])/(x0[5]*x0[5]-v1836426858) + (x0[33]*x0[0])/(x0[7]*x0[7]-v1836426858) + (x0[34]*x0[8])/(x0[10]*x0[10]-v1836426858) + (x0[35]*x0[11])/(x0[13]*x0[13]-v1836426858) + (x0[36]*x0[14])/(x0[16]*x0[16]-v1836426858))*((v3605892192>(0.))?sqrt(v3605892192):std::complex<double>(0.,1.)*sqrt((-1.)*v3605892192));
  auto v1498048574 = (v1304853663*v3926569162)/(v3712237063);
  auto v1490855688 = (v980854748)/(v2111851279);
  auto v1294182424 = (v910172329*v1258276323)/(v2111851279);
  auto v1211935458 = (v910172329*v980854748)/(v2111851279);
  auto v1136737173 = std::complex<double>(-0.,-1.)*v151048832*((x0[26]*x0[3])/(x0[5]*x0[5]-v1836426858) + (x0[27]*x0[0])/(x0[7]*x0[7]-v1836426858) + (x0[28]*x0[8])/(x0[10]*x0[10]-v1836426858) + (x0[29]*x0[11])/(x0[13]*x0[13]-v1836426858) + (x0[30]*x0[14])/(x0[16]*x0[16]-v1836426858))*((v3007036945>(0.))?sqrt(v3007036945):std::complex<double>(0.,1.)*sqrt((-1.)*v3007036945));
  auto v1134059584 = std::complex<double>(-0.,-1.)*v151048832*((x0[20]*x0[3])/(x0[5]*x0[5]-v1836426858) + (x0[21]*x0[0])/(x0[7]*x0[7]-v1836426858) + (x0[22]*x0[8])/(x0[10]*x0[10]-v1836426858) + (x0[23]*x0[11])/(x0[13]*x0[13]-v1836426858) + (x0[24]*x0[14])/(x0[16]*x0[16]-v1836426858))*((v1836426858>(1.))?((v2840245930>(0.))?sqrt(v2840245930):std::complex<double>(0.,1.)*sqrt((-1.)*v2840245930)):(0.00051) + (-0.01933)*v1836426858 + (0.13851)*v1836426858*v1836426858 + (-0.2084)*v1836426858*v1836426858*v1836426858 + (-0.29744)*v1836426858*v1836426858*v1836426858*v1836426858 + (0.13655)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858 + (1.07885)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858);
  auto v1110707043 = (v910172329*v1955258502)/(v2111851279);
  auto v1048734754 = (v1474669829*v980854748)/(v2111851279);
  auto v924437421 = std::complex<double>(-0.,-1.)*v151048832*((x0[32]*x0[3])/(x0[5]*x0[5]-v1836426858) + (x0[33]*x0[0])/(x0[7]*x0[7]-v1836426858) + (x0[34]*x0[8])/(x0[10]*x0[10]-v1836426858) + (x0[35]*x0[11])/(x0[13]*x0[13]-v1836426858) + (x0[36]*x0[14])/(x0[16]*x0[16]-v1836426858))*((v3007036945>(0.))?sqrt(v3007036945):std::complex<double>(0.,1.)*sqrt((-1.)*v3007036945));
  auto v888290467 = (1.)-std::complex<double>(0.,1.)*v2488241434*((x0[3]*x0[3])/(x0[5]*x0[5]-v3037555099) + (x0[0]*x0[0])/(x0[7]*x0[7]-v3037555099) + (x0[8]*x0[8])/(x0[10]*x0[10]-v3037555099) + (x0[11]*x0[11])/(x0[13]*x0[13]-v3037555099) + (x0[14]*x0[14])/(x0[16]*x0[16]-v3037555099))*((v3789560610>(0.))?sqrt(v3789560610):std::complex<double>(0.,1.)*sqrt((-1.)*v3789560610));
  auto v749074938 = std::complex<double>(-0.,-1.)*v151048832*((x0[20]*x0[3])/(x0[5]*x0[5]-v1836426858) + (x0[21]*x0[0])/(x0[7]*x0[7]-v1836426858) + (x0[22]*x0[8])/(x0[10]*x0[10]-v1836426858) + (x0[23]*x0[11])/(x0[13]*x0[13]-v1836426858) + (x0[24]*x0[14])/(x0[16]*x0[16]-v1836426858))*((v3007036945>(0.))?sqrt(v3007036945):std::complex<double>(0.,1.)*sqrt((-1.)*v3007036945));
  auto v498030113 = (v1452648461*v980854748)/(v2111851279);
  auto v251409423 = (v1304853663*v1636750592)/(v3712237063);
  auto v173793696 = (-1.)*(v1304853663)/(v3712237063);
  auto v3978116468 = (v1452648461*v1258276323)/(v2111851279) + ((v2899208900-v1294182424)*(v2027797497-v498030113))/(v888290467-v1211935458);
  auto v3892543554 = std::complex<double>(-0.,-1.)*v2488241434*((x0[26]*x0[20])/(x0[5]*x0[5]-v3037555099) + (x0[27]*x0[21])/(x0[7]*x0[7]-v3037555099) + (x0[28]*x0[22])/(x0[10]*x0[10]-v3037555099) + (x0[29]*x0[23])/(x0[13]*x0[13]-v3037555099) + (x0[30]*x0[24])/(x0[16]*x0[16]-v3037555099))*((v3037555099>(1.))?((v3102009577>(0.))?sqrt(v3102009577):std::complex<double>(0.,1.)*sqrt((-1.)*v3102009577)):(0.00051) + (-0.01933)*v3037555099 + (0.13851)*v3037555099*v3037555099 + (-0.2084)*v3037555099*v3037555099*v3037555099 + (-0.29744)*v3037555099*v3037555099*v3037555099*v3037555099 + (0.13655)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099 + (1.07885)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099);
  auto v3493176212 = (1.)-std::complex<double>(0.,1.)*v2488241434*((x0[20]*x0[20])/(x0[5]*x0[5]-v3037555099) + (x0[21]*x0[21])/(x0[7]*x0[7]-v3037555099) + (x0[22]*x0[22])/(x0[10]*x0[10]-v3037555099) + (x0[23]*x0[23])/(x0[13]*x0[13]-v3037555099) + (x0[24]*x0[24])/(x0[16]*x0[16]-v3037555099))*((v3037555099>(1.))?((v3102009577>(0.))?sqrt(v3102009577):std::complex<double>(0.,1.)*sqrt((-1.)*v3102009577)):(0.00051) + (-0.01933)*v3037555099 + (0.13851)*v3037555099*v3037555099 + (-0.2084)*v3037555099*v3037555099*v3037555099 + (-0.29744)*v3037555099*v3037555099*v3037555099*v3037555099 + (0.13655)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099 + (1.07885)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099);
  auto v3299038154 = std::complex<double>(-0.,-1.)*v151048832*((x0[26]*x0[20])/(x0[5]*x0[5]-v1836426858) + (x0[27]*x0[21])/(x0[7]*x0[7]-v1836426858) + (x0[28]*x0[22])/(x0[10]*x0[10]-v1836426858) + (x0[29]*x0[23])/(x0[13]*x0[13]-v1836426858) + (x0[30]*x0[24])/(x0[16]*x0[16]-v1836426858))*((v1836426858>(1.))?((v2840245930>(0.))?sqrt(v2840245930):std::complex<double>(0.,1.)*sqrt((-1.)*v2840245930)):(0.00051) + (-0.01933)*v1836426858 + (0.13851)*v1836426858*v1836426858 + (-0.2084)*v1836426858*v1836426858*v1836426858 + (-0.29744)*v1836426858*v1836426858*v1836426858*v1836426858 + (0.13655)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858 + (1.07885)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858);
  auto v3280766624 = std::complex<double>(-0.,-1.)*v2488241434*((x0[32]*x0[20])/(x0[5]*x0[5]-v3037555099) + (x0[33]*x0[21])/(x0[7]*x0[7]-v3037555099) + (x0[34]*x0[22])/(x0[10]*x0[10]-v3037555099) + (x0[35]*x0[23])/(x0[13]*x0[13]-v3037555099) + (x0[36]*x0[24])/(x0[16]*x0[16]-v3037555099))*((v21348587>(0.))?sqrt(v21348587):std::complex<double>(0.,1.)*sqrt((-1.)*v21348587));
  auto v3220637740 = (v1452648461*v111119486)/(v2111851279) + ((v3135162689-v3502841389)*(v2027797497-v498030113))/(v888290467-v1211935458);
  auto v2950282091 = (-1.)*(v255841663)/(v3712237063)-(v173793696*(v749074938-v3160618711))/(v3663942510-v1498048574);
  auto v2917366501 = (-1.)*(v2027797497-v498030113)/(v888290467-v1211935458);
  auto v2742420170 = std::complex<double>(-0.,-1.)*v2488241434*((x0[32]*x0[20])/(x0[5]*x0[5]-v3037555099) + (x0[33]*x0[21])/(x0[7]*x0[7]-v3037555099) + (x0[34]*x0[22])/(x0[10]*x0[10]-v3037555099) + (x0[35]*x0[23])/(x0[13]*x0[13]-v3037555099) + (x0[36]*x0[24])/(x0[16]*x0[16]-v3037555099))*((v3037555099>(1.))?((v3102009577>(0.))?sqrt(v3102009577):std::complex<double>(0.,1.)*sqrt((-1.)*v3102009577)):(0.00051) + (-0.01933)*v3037555099 + (0.13851)*v3037555099*v3037555099 + (-0.2084)*v3037555099*v3037555099*v3037555099 + (-0.29744)*v3037555099*v3037555099*v3037555099*v3037555099 + (0.13655)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099 + (1.07885)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099);
  auto v2530270390 = (v255841663*v1742329417)/(v3712237063) + ((v2014012967-v3926831395)*(v749074938-v3160618711))/(v3663942510-v1498048574);
  auto v2458863037 = (-1.)*(v1452648461)/(v2111851279)-(v3627579820*(v2027797497-v498030113))/(v888290467-v1211935458);
  auto v2440228578 = std::complex<double>(-0.,-1.)*v151048832*((x0[26]*x0[20])/(x0[5]*x0[5]-v1836426858) + (x0[27]*x0[21])/(x0[7]*x0[7]-v1836426858) + (x0[28]*x0[22])/(x0[10]*x0[10]-v1836426858) + (x0[29]*x0[23])/(x0[13]*x0[13]-v1836426858) + (x0[30]*x0[24])/(x0[16]*x0[16]-v1836426858))*((v758672440>(0.))?sqrt(v758672440):std::complex<double>(0.,1.)*sqrt((-1.)*v758672440));
  auto v2392666732 = (v3962953584)/(v3712237063) + ((-1.)*v2690895429*(v1134059584-v3669473571))/(v3663942510-v1498048574);
  auto v2156539190 = (v3215216564*v1258276323)/(v2111851279) + ((v2899208900-v1294182424)*(v2192947274-v2487489657))/(v888290467-v1211935458);
  auto v2066788000 = (v1452648461*v1955258502)/(v2111851279) + ((v2208466672-v1110707043)*(v2027797497-v498030113))/(v888290467-v1211935458);
  auto v1789810775 = std::complex<double>(-0.,-1.)*v2488241434*((x0[26]*x0[20])/(x0[5]*x0[5]-v3037555099) + (x0[27]*x0[21])/(x0[7]*x0[7]-v3037555099) + (x0[28]*x0[22])/(x0[10]*x0[10]-v3037555099) + (x0[29]*x0[23])/(x0[13]*x0[13]-v3037555099) + (x0[30]*x0[24])/(x0[16]*x0[16]-v3037555099))*((v359842611>(0.))?sqrt(v359842611):std::complex<double>(0.,1.)*sqrt((-1.)*v359842611));
  auto v1671733403 = (v1474669829*v1258276323)/(v2111851279) + ((v2899208900-v1294182424)*(v3099229930-v1048734754))/(v888290467-v1211935458);
  auto v1629269660 = (v255841663*v1636750592)/(v3712237063) + ((v2076842653-v251409423)*(v749074938-v3160618711))/(v3663942510-v1498048574);
  auto v1265640608 = (v216360023*v3962953584)/(v3712237063) + ((v1134059584-v3669473571)*(v1136737173-v2709668838))/(v3663942510-v1498048574);
  auto v1262807297 = (-1.)*(v749074938-v3160618711)/(v3663942510-v1498048574);
  auto v1228363810 = std::complex<double>(-0.,-1.)*v151048832*((x0[32]*x0[20])/(x0[5]*x0[5]-v1836426858) + (x0[33]*x0[21])/(x0[7]*x0[7]-v1836426858) + (x0[34]*x0[22])/(x0[10]*x0[10]-v1836426858) + (x0[35]*x0[23])/(x0[13]*x0[13]-v1836426858) + (x0[36]*x0[24])/(x0[16]*x0[16]-v1836426858))*((v1836426858>(1.))?((v2840245930>(0.))?sqrt(v2840245930):std::complex<double>(0.,1.)*sqrt((-1.)*v2840245930)):(0.00051) + (-0.01933)*v1836426858 + (0.13851)*v1836426858*v1836426858 + (-0.2084)*v1836426858*v1836426858*v1836426858 + (-0.29744)*v1836426858*v1836426858*v1836426858*v1836426858 + (0.13655)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858 + (1.07885)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858);
  auto v916138054 = (1.)-std::complex<double>(0.,1.)*v151048832*((x0[20]*x0[20])/(x0[5]*x0[5]-v1836426858) + (x0[21]*x0[21])/(x0[7]*x0[7]-v1836426858) + (x0[22]*x0[22])/(x0[10]*x0[10]-v1836426858) + (x0[23]*x0[23])/(x0[13]*x0[13]-v1836426858) + (x0[24]*x0[24])/(x0[16]*x0[16]-v1836426858))*((v1836426858>(1.))?((v2840245930>(0.))?sqrt(v2840245930):std::complex<double>(0.,1.)*sqrt((-1.)*v2840245930)):(0.00051) + (-0.01933)*v1836426858 + (0.13851)*v1836426858*v1836426858 + (-0.2084)*v1836426858*v1836426858*v1836426858 + (-0.29744)*v1836426858*v1836426858*v1836426858*v1836426858 + (0.13655)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858 + (1.07885)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858);
  auto v757347508 = (v839072984*v3962953584)/(v3712237063) + ((v1134059584-v3669473571)*(v924437421-v2844405163))/(v3663942510-v1498048574);
  auto v732589286 = sqrt((0.243717) + x1[0]*x1[0] + x1[1]*x1[1] + x1[2]*x1[2]);
  auto v178886646 = (v255841663*v3962953584)/(v3712237063) + ((v1134059584-v3669473571)*(v749074938-v3160618711))/(v3663942510-v1498048574);
  auto v64939503 = (v1258276323)/(v2111851279) + ((-1.)*v1490855688*(v2899208900-v1294182424))/(v888290467-v1211935458);
  auto v63877246 = std::complex<double>(-0.,-1.)*v151048832*((x0[32]*x0[20])/(x0[5]*x0[5]-v1836426858) + (x0[33]*x0[21])/(x0[7]*x0[7]-v1836426858) + (x0[34]*x0[22])/(x0[10]*x0[10]-v1836426858) + (x0[35]*x0[23])/(x0[13]*x0[13]-v1836426858) + (x0[36]*x0[24])/(x0[16]*x0[16]-v1836426858))*((v3605892192>(0.))?sqrt(v3605892192):std::complex<double>(0.,1.)*sqrt((-1.)*v3605892192));
  auto v4156259701 = std::complex<double>(-0.,-1.)*v151048832*((x0[32]*x0[26])/(x0[5]*x0[5]-v1836426858) + (x0[33]*x0[27])/(x0[7]*x0[7]-v1836426858) + (x0[34]*x0[28])/(x0[10]*x0[10]-v1836426858) + (x0[35]*x0[29])/(x0[13]*x0[13]-v1836426858) + (x0[36]*x0[30])/(x0[16]*x0[16]-v1836426858))*((v3605892192>(0.))?sqrt(v3605892192):std::complex<double>(0.,1.)*sqrt((-1.)*v3605892192));
  auto v3704780237 = (-1.)*(v1474669829)/(v2111851279)-(v3627579820*(v3099229930-v1048734754))/(v888290467-v1211935458)-(v2458863037*(v3892543554-v1671733403))/(v3493176212-v3978116468);
  auto v3238823049 = (-1.)*(v216360023)/(v3712237063)-(v173793696*(v1136737173-v2709668838))/(v3663942510-v1498048574)-(v2950282091*(v3299038154-v1265640608))/(v916138054-v178886646);
  auto v3164937482 = (-1.)*(v3099229930-v1048734754)/(v888290467-v1211935458)-(v2917366501*(v3892543554-v1671733403))/(v3493176212-v3978116468);
  auto v3011080712 = (-1.)*(v1136737173-v2709668838)/(v3663942510-v1498048574)-(v1262807297*(v3299038154-v1265640608))/(v916138054-v178886646);
  auto v2997081019 = (-1.)*(v3892543554-v1671733403)/(v3493176212-v3978116468);
  auto v2772160503 = std::complex<double>(-0.,-1.)*v151048832*((x0[32]*x0[26])/(x0[5]*x0[5]-v1836426858) + (x0[33]*x0[27])/(x0[7]*x0[7]-v1836426858) + (x0[34]*x0[28])/(x0[10]*x0[10]-v1836426858) + (x0[35]*x0[29])/(x0[13]*x0[13]-v1836426858) + (x0[36]*x0[30])/(x0[16]*x0[16]-v1836426858))*((v758672440>(0.))?sqrt(v758672440):std::complex<double>(0.,1.)*sqrt((-1.)*v758672440));
  auto v2635961706 = std::complex<double>(-0.,-1.)*v2488241434*((x0[32]*x0[26])/(x0[5]*x0[5]-v3037555099) + (x0[33]*x0[27])/(x0[7]*x0[7]-v3037555099) + (x0[34]*x0[28])/(x0[10]*x0[10]-v3037555099) + (x0[35]*x0[29])/(x0[13]*x0[13]-v3037555099) + (x0[36]*x0[30])/(x0[16]*x0[16]-v3037555099))*((v359842611>(0.))?sqrt(v359842611):std::complex<double>(0.,1.)*sqrt((-1.)*v359842611));
  auto v2541664477 = (v216360023*v1636750592)/(v3712237063) + ((v2076842653-v251409423)*(v1136737173-v2709668838))/(v3663942510-v1498048574) + ((v2440228578-v1629269660)*(v3299038154-v1265640608))/(v916138054-v178886646);
  auto v2476164519 = std::complex<double>(-0.,-1.)*v2488241434*((x0[32]*x0[26])/(x0[5]*x0[5]-v3037555099) + (x0[33]*x0[27])/(x0[7]*x0[7]-v3037555099) + (x0[34]*x0[28])/(x0[10]*x0[10]-v3037555099) + (x0[35]*x0[29])/(x0[13]*x0[13]-v3037555099) + (x0[36]*x0[30])/(x0[16]*x0[16]-v3037555099))*((v21348587>(0.))?sqrt(v21348587):std::complex<double>(0.,1.)*sqrt((-1.)*v21348587));
  auto v2418357392 = (v1636750592)/(v3712237063) + ((-1.)*v2690895429*(v2076842653-v251409423))/(v3663942510-v1498048574) + ((-1.)*v2392666732*(v2440228578-v1629269660))/(v916138054-v178886646);
  auto v1562520267 = (1.)-std::complex<double>(0.,1.)*v2488241434*((x0[26]*x0[26])/(x0[5]*x0[5]-v3037555099) + (x0[27]*x0[27])/(x0[7]*x0[7]-v3037555099) + (x0[28]*x0[28])/(x0[10]*x0[10]-v3037555099) + (x0[29]*x0[29])/(x0[13]*x0[13]-v3037555099) + (x0[30]*x0[30])/(x0[16]*x0[16]-v3037555099))*((v359842611>(0.))?sqrt(v359842611):std::complex<double>(0.,1.)*sqrt((-1.)*v359842611));
  auto v1521070335 = (-1.)*(x1[2] + x1[10])*(x1[2] + x1[10]) + (v732589286 + v604511646)*(v732589286 + v604511646) + (-1.)*(x1[1] + x1[9])*(x1[1] + x1[9]) + (-1.)*(x1[0] + x1[8])*(x1[0] + x1[8]);
  auto v1477661232 = (v216360023*v1742329417)/(v3712237063) + ((v2014012967-v3926831395)*(v1136737173-v2709668838))/(v3663942510-v1498048574) + ((v63877246-v2530270390)*(v3299038154-v1265640608))/(v916138054-v178886646);
  auto v1466574160 = (v1474669829*v1955258502)/(v2111851279) + ((v2208466672-v1110707043)*(v3099229930-v1048734754))/(v888290467-v1211935458) + ((v1789810775-v2066788000)*(v3892543554-v1671733403))/(v3493176212-v3978116468);
  auto v1444062950 = (-1.)*(v3299038154-v1265640608)/(v916138054-v178886646);
  auto v1333463548 = (1.)-std::complex<double>(0.,1.)*v151048832*((x0[26]*x0[26])/(x0[5]*x0[5]-v1836426858) + (x0[27]*x0[27])/(x0[7]*x0[7]-v1836426858) + (x0[28]*x0[28])/(x0[10]*x0[10]-v1836426858) + (x0[29]*x0[29])/(x0[13]*x0[13]-v1836426858) + (x0[30]*x0[30])/(x0[16]*x0[16]-v1836426858))*((v758672440>(0.))?sqrt(v758672440):std::complex<double>(0.,1.)*sqrt((-1.)*v758672440));
  auto v1139362541 = (-1.)*(x1[2] + x1[6])*(x1[2] + x1[6]) + (v732589286 + v2683369444)*(v732589286 + v2683369444) + (-1.)*(x1[1] + x1[5])*(x1[1] + x1[5]) + (-1.)*(x1[0] + x1[4])*(x1[0] + x1[4]);
  auto v1080901134 = (v1474669829*v111119486)/(v2111851279) + ((v3135162689-v3502841389)*(v3099229930-v1048734754))/(v888290467-v1211935458) + ((v3280766624-v3220637740)*(v3892543554-v1671733403))/(v3493176212-v3978116468);
  auto v1000633181 = (v1955258502)/(v2111851279) + ((-1.)*v1490855688*(v2208466672-v1110707043))/(v888290467-v1211935458) + ((-1.)*v64939503*(v1789810775-v2066788000))/(v3493176212-v3978116468);
  auto v395958503 = (v839072984*v1636750592)/(v3712237063) + ((v2076842653-v251409423)*(v924437421-v2844405163))/(v3663942510-v1498048574) + ((v2440228578-v1629269660)*(v1228363810-v757347508))/(v916138054-v178886646);
  auto v281711840 = (v3215216564*v1955258502)/(v2111851279) + ((v2208466672-v1110707043)*(v2192947274-v2487489657))/(v888290467-v1211935458) + ((v1789810775-v2066788000)*(v2742420170-v2156539190))/(v3493176212-v3978116468);
  auto v4247864182 = (v111119486)/(v2111851279) + ((-1.)*v1490855688*(v3135162689-v3502841389))/(v888290467-v1211935458) + ((-1.)*v64939503*(v3280766624-v3220637740))/(v3493176212-v3978116468) + ((-1.)*v1000633181*(v2476164519-v1080901134))/(v1562520267-v1466574160);
  auto v4174506558 = (1.)-std::complex<double>(0.,1.)*v151048832*((x0[32]*x0[32])/(x0[5]*x0[5]-v1836426858) + (x0[33]*x0[33])/(x0[7]*x0[7]-v1836426858) + (x0[34]*x0[34])/(x0[10]*x0[10]-v1836426858) + (x0[35]*x0[35])/(x0[13]*x0[13]-v1836426858) + (x0[36]*x0[36])/(x0[16]*x0[16]-v1836426858))*((v3605892192>(0.))?sqrt(v3605892192):std::complex<double>(0.,1.)*sqrt((-1.)*v3605892192));
  auto v3634940496 = ((1.)-((0.125392))/(v1139362541))*((1.)-((0.401002))/(v1139362541));
  auto v3463903834 = (-1.)*(v2192947274-v2487489657)/(v888290467-v1211935458)-(v2917366501*(v2742420170-v2156539190))/(v3493176212-v3978116468)-(v3164937482*(v2635961706-v281711840))/(v1562520267-v1466574160);
  auto v3154148802 = (1.)-std::complex<double>(0.,1.)*v2488241434*((x0[32]*x0[32])/(x0[5]*x0[5]-v3037555099) + (x0[33]*x0[33])/(x0[7]*x0[7]-v3037555099) + (x0[34]*x0[34])/(x0[10]*x0[10]-v3037555099) + (x0[35]*x0[35])/(x0[13]*x0[13]-v3037555099) + (x0[36]*x0[36])/(x0[16]*x0[16]-v3037555099))*((v21348587>(0.))?sqrt(v21348587):std::complex<double>(0.,1.)*sqrt((-1.)*v21348587));
  auto v3057249796 = (-1.)*(v839072984)/(v3712237063)-(v173793696*(v924437421-v2844405163))/(v3663942510-v1498048574)-(v2950282091*(v1228363810-v757347508))/(v916138054-v178886646)-(v3238823049*(v2772160503-v395958503))/(v1333463548-v2541664477);
  auto v3037329070 = (-1.)*(v2635961706-v281711840)/(v1562520267-v1466574160);
  auto v2269855808 = (-1.)*(v3215216564)/(v2111851279)-(v3627579820*(v2192947274-v2487489657))/(v888290467-v1211935458)-(v2458863037*(v2742420170-v2156539190))/(v3493176212-v3978116468)-(v3704780237*(v2635961706-v281711840))/(v1562520267-v1466574160);
  auto v2246649186 = (v1742329417)/(v3712237063) + ((-1.)*v2690895429*(v2014012967-v3926831395))/(v3663942510-v1498048574) + ((-1.)*v2392666732*(v63877246-v2530270390))/(v916138054-v178886646) + ((-1.)*v2418357392*(v4156259701-v1477661232))/(v1333463548-v2541664477);
  auto v2077084972 = ((1.)-((0.125392))/(v1521070335))*((1.)-((0.401002))/(v1521070335));
  auto v1979851558 = (-1.)*(v1228363810-v757347508)/(v916138054-v178886646)-(v1444062950*(v2772160503-v395958503))/(v1333463548-v2541664477);
  auto v1784760416 = (v3215216564*v111119486)/(v2111851279) + ((v3135162689-v3502841389)*(v2192947274-v2487489657))/(v888290467-v1211935458) + ((v3280766624-v3220637740)*(v2742420170-v2156539190))/(v3493176212-v3978116468) + ((v2476164519-v1080901134)*(v2635961706-v281711840))/(v1562520267-v1466574160);
  auto v1230061197 = (-1.)*(v924437421-v2844405163)/(v3663942510-v1498048574)-(v1262807297*(v1228363810-v757347508))/(v916138054-v178886646)-(v3011080712*(v2772160503-v395958503))/(v1333463548-v2541664477);
  auto v1042423297 = (-1.)*(v2772160503-v395958503)/(v1333463548-v2541664477);
  auto v557166818 = (v839072984*v1742329417)/(v3712237063) + ((v2014012967-v3926831395)*(v924437421-v2844405163))/(v3663942510-v1498048574) + ((v63877246-v2530270390)*(v1228363810-v757347508))/(v916138054-v178886646) + ((v4156259701-v1477661232)*(v2772160503-v395958503))/(v1333463548-v2541664477);
  auto v444835816 = (-1.)*(v2742420170-v2156539190)/(v3493176212-v3978116468)-(v2997081019*(v2635961706-v281711840))/(v1562520267-v1466574160);
  auto v4119910548 = ((1.))/((1.)-std::complex<double>(0.,3.799438)*(v1521070335-(0.27))*((-0.22147) + (0.026637)*((3.799438)*v1521070335-(1.)) + (-0.000921)*((3.799438)*v1521070335-(1.))*((3.799438)*v1521070335-(1.)))*((v2077084972>(0.))?sqrt(v2077084972):std::complex<double>(0.,1.)*sqrt((-1.)*v2077084972)));
  auto v3846702106 = (x0[0]*(((-1.)*v2690895429)/(v3663942510-v1498048574) + ((-1.)*v2392666732*v1262807297)/(v916138054-v178886646) + ((-1.)*v2418357392*v3011080712)/(v1333463548-v2541664477) + ((-1.)*v2246649186*v1230061197)/(v4174506558-v557166818)) + x0[6]*(((1.))/(v3712237063) + ((-1.)*v2690895429*v173793696)/(v3663942510-v1498048574) + ((-1.)*v2392666732*v2950282091)/(v916138054-v178886646) + ((-1.)*v2418357392*v3238823049)/(v1333463548-v2541664477) + ((-1.)*v2246649186*v3057249796)/(v4174506558-v557166818)) + x0[21]*(((-1.)*v2392666732)/(v916138054-v178886646) + ((-1.)*v2418357392*v1444062950)/(v1333463548-v2541664477) + ((-1.)*v2246649186*v1979851558)/(v4174506558-v557166818)) + x0[27]*(((-1.)*v2418357392)/(v1333463548-v2541664477) + ((-1.)*v2246649186*v1042423297)/(v4174506558-v557166818)) + ((-1.)*v2246649186*x0[33])/(v4174506558-v557166818))/(x0[7]*x0[7]-v1836426858);
  auto v2308443614 = ((1.))/((1.)-std::complex<double>(0.,3.799438)*(v1139362541-(0.27))*((-0.22147) + (0.026637)*((3.799438)*v1139362541-(1.)) + (-0.000921)*((3.799438)*v1139362541-(1.))*((3.799438)*v1139362541-(1.)))*((v3634940496>(0.))?sqrt(v3634940496):std::complex<double>(0.,1.)*sqrt((-1.)*v3634940496)));
  auto v1802362592 = (x0[0]*(((-1.)*v1490855688)/(v888290467-v1211935458) + ((-1.)*v64939503*v2917366501)/(v3493176212-v3978116468) + ((-1.)*v1000633181*v3164937482)/(v1562520267-v1466574160) + ((-1.)*v4247864182*v3463903834)/(v3154148802-v1784760416)) + x0[6]*(((1.))/(v2111851279) + ((-1.)*v1490855688*v3627579820)/(v888290467-v1211935458) + ((-1.)*v64939503*v2458863037)/(v3493176212-v3978116468) + ((-1.)*v1000633181*v3704780237)/(v1562520267-v1466574160) + ((-1.)*v4247864182*v2269855808)/(v3154148802-v1784760416)) + x0[21]*(((-1.)*v64939503)/(v3493176212-v3978116468) + ((-1.)*v1000633181*v2997081019)/(v1562520267-v1466574160) + ((-1.)*v4247864182*v444835816)/(v3154148802-v1784760416)) + x0[27]*(((-1.)*v1000633181)/(v1562520267-v1466574160) + ((-1.)*v4247864182*v3037329070)/(v3154148802-v1784760416)) + ((-1.)*v4247864182*x0[33])/(v3154148802-v1784760416))/(x0[7]*x0[7]-v3037555099);
  auto v4193623109 = v4119910548*v1802362592;
  auto v1536374163 = v2308443614*v3846702106;
return (0.707107)*(v1536374163 + v4193623109);
}

extern "C" std::complex<double> D0_KPi40_FOCUS_I32__Kp_pim__PiPi40_kMatrix_pole_1__pip_pim___wParams( const double*__restrict__ E ){
  double externalParameters [] = {0.55095, 1, -0.15, -0.55377, 0.22889, 0.651, 0.94128, 1.2036, 0.23888, 0.36856, 1.55817, 0.40907, 0.3365, 1.21, -0.17558, 0.18171, 1.82206, 0.15044, -3.92637, 0.23399, 0, 0, 0.55639, 0.85679, -0.79658, -0.20545, -0.39899, 0.39065, 0.1834, 0.19906, -0.00355, 0.32825, -0.34639, 0.31503, 0.18681, -0.00984, 0.22358, 0.35412 }; 
  return D0_KPi40_FOCUS_I32__Kp_pim__PiPi40_kMatrix_pole_1__pip_pim__( externalParameters, E ); // E is P 
}
extern "C" const char* D0_KPi40_FOCUS_I32__Kp_pim__PiPi40_kMatrix_prod_0__pip_pim___name() {  return "D0{KPi40[FOCUS.I32]{K+,pi-},PiPi40[kMatrix.prod.0]{pi+,pi-}}"; } 
extern "C" std::complex<double> D0_KPi40_FOCUS_I32__Kp_pim__PiPi40_kMatrix_prod_0__pip_pim__(double const* x0, double const* x1){
  auto v3067068972 = sqrt((0.01948) + x1[12]*x1[12] + x1[13]*x1[13] + x1[14]*x1[14]);
  auto v2683369444 = sqrt((0.01948) + x1[4]*x1[4] + x1[5]*x1[5] + x1[6]*x1[6]);
  auto v604511646 = sqrt((0.01948) + x1[8]*x1[8] + x1[9]*x1[9] + x1[10]*x1[10]);
  auto v3864776319 = (-1.)*(x1[14] + x1[6])*(x1[14] + x1[6]) + (v3067068972 + v2683369444)*(v3067068972 + v2683369444) + (-1.)*(x1[13] + x1[5])*(x1[13] + x1[5]) + (-1.)*(x1[12] + x1[4])*(x1[12] + x1[4]);
  auto v3303589013 = (-1.)*(x1[14] + x1[10])*(x1[14] + x1[10]) + (v3067068972 + v604511646)*(v3067068972 + v604511646) + (-1.)*(x1[13] + x1[9])*(x1[13] + x1[9]) + (-1.)*(x1[12] + x1[8])*(x1[12] + x1[8]);
  auto v3037555099 = v3864776319;
  auto v1836426858 = v3303589013;
  auto v3789560610 = (1.)-((0.974868))/(v3037555099);
  auto v3605892192 = (1.)-((2.297171))/(v1836426858);
  auto v3102009577 = (1.)-((0.311677))/(v3037555099);
  auto v3007036945 = (1.)-((0.974868))/(v1836426858);
  auto v2840245930 = (1.)-((0.311677))/(v1836426858);
  auto v2488241434 = ((v3037555099-(0.00974)*x0[1])*((1.)-x0[2]))/(v3037555099-x0[2]);
  auto v1694853431 = (1.)-((0.077919))/(v3037555099);
  auto v758672440 = (1.)-((1.200611))/(v1836426858);
  auto v359842611 = (1.)-((1.200611))/(v3037555099);
  auto v341659004 = (1.)-((0.077919))/(v1836426858);
  auto v151048832 = ((v1836426858-(0.00974)*x0[1])*((1.)-x0[2]))/(v1836426858-x0[2]);
  auto v21348587 = (1.)-((2.297171))/(v3037555099);
  auto v3962953584 = std::complex<double>(-0.,-1.)*v151048832*((x0[21]*x0[3])/(x0[4]*x0[4]-v1836426858) + (x0[22]*x0[5])/(x0[6]*x0[6]-v1836426858) + (x0[23]*x0[7])/(x0[8]*x0[8]-v1836426858) + (x0[24]*x0[9])/(x0[10]*x0[10]-v1836426858) + (x0[25]*x0[11])/(x0[12]*x0[12]-v1836426858) + (x0[26]*((1.)-x0[14]))/(v3303589013-x0[14]))*((v1836426858>(1.))?((v2840245930>(0.))?sqrt(v2840245930):std::complex<double>(0.,1.)*sqrt((-1.)*v2840245930)):(0.00051) + (-0.01933)*v1836426858 + (0.13851)*v1836426858*v1836426858 + (-0.2084)*v1836426858*v1836426858*v1836426858 + (-0.29744)*v1836426858*v1836426858*v1836426858*v1836426858 + (0.13655)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858 + (1.07885)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858);
  auto v3926569162 = std::complex<double>(-0.,-1.)*v151048832*((x0[15]*x0[3])/(x0[4]*x0[4]-v1836426858) + (x0[16]*x0[5])/(x0[6]*x0[6]-v1836426858) + (x0[17]*x0[7])/(x0[8]*x0[8]-v1836426858) + (x0[18]*x0[9])/(x0[10]*x0[10]-v1836426858) + (x0[19]*x0[11])/(x0[12]*x0[12]-v1836426858) + (x0[20]*((1.)-x0[14]))/(v3303589013-x0[14]))*((v3007036945>(0.))?sqrt(v3007036945):std::complex<double>(0.,1.)*sqrt((-1.)*v3007036945));
  auto v3712237063 = (1.)-std::complex<double>(0.,1.)*v151048832*((x0[3]*x0[3])/(x0[4]*x0[4]-v1836426858) + (x0[5]*x0[5])/(x0[6]*x0[6]-v1836426858) + (x0[7]*x0[7])/(x0[8]*x0[8]-v1836426858) + (x0[9]*x0[9])/(x0[10]*x0[10]-v1836426858) + (x0[11]*x0[11])/(x0[12]*x0[12]-v1836426858) + (x0[13]*((1.)-x0[14]))/(v3303589013-x0[14]))*((v341659004>(0.))?sqrt(v341659004):std::complex<double>(0.,1.)*sqrt((-1.)*v341659004));
  auto v3215216564 = std::complex<double>(-0.,-1.)*v2488241434*((x0[33]*x0[3])/(x0[4]*x0[4]-v3037555099) + (x0[34]*x0[5])/(x0[6]*x0[6]-v3037555099) + (x0[35]*x0[7])/(x0[8]*x0[8]-v3037555099) + (x0[36]*x0[9])/(x0[10]*x0[10]-v3037555099) + (x0[37]*x0[11])/(x0[12]*x0[12]-v3037555099) + (x0[38]*((1.)-x0[14]))/(v3864776319-x0[14]))*((v1694853431>(0.))?sqrt(v1694853431):std::complex<double>(0.,1.)*sqrt((-1.)*v1694853431));
  auto v2111851279 = (1.)-std::complex<double>(0.,1.)*v2488241434*((x0[3]*x0[3])/(x0[4]*x0[4]-v3037555099) + (x0[5]*x0[5])/(x0[6]*x0[6]-v3037555099) + (x0[7]*x0[7])/(x0[8]*x0[8]-v3037555099) + (x0[9]*x0[9])/(x0[10]*x0[10]-v3037555099) + (x0[11]*x0[11])/(x0[12]*x0[12]-v3037555099) + (x0[13]*((1.)-x0[14]))/(v3864776319-x0[14]))*((v1694853431>(0.))?sqrt(v1694853431):std::complex<double>(0.,1.)*sqrt((-1.)*v1694853431));
  auto v1955258502 = std::complex<double>(-0.,-1.)*v2488241434*((x0[27]*x0[3])/(x0[4]*x0[4]-v3037555099) + (x0[28]*x0[5])/(x0[6]*x0[6]-v3037555099) + (x0[29]*x0[7])/(x0[8]*x0[8]-v3037555099) + (x0[30]*x0[9])/(x0[10]*x0[10]-v3037555099) + (x0[31]*x0[11])/(x0[12]*x0[12]-v3037555099) + (x0[32]*((1.)-x0[14]))/(v3864776319-x0[14]))*((v359842611>(0.))?sqrt(v359842611):std::complex<double>(0.,1.)*sqrt((-1.)*v359842611));
  auto v1742329417 = std::complex<double>(-0.,-1.)*v151048832*((x0[33]*x0[3])/(x0[4]*x0[4]-v1836426858) + (x0[34]*x0[5])/(x0[6]*x0[6]-v1836426858) + (x0[35]*x0[7])/(x0[8]*x0[8]-v1836426858) + (x0[36]*x0[9])/(x0[10]*x0[10]-v1836426858) + (x0[37]*x0[11])/(x0[12]*x0[12]-v1836426858) + (x0[38]*((1.)-x0[14]))/(v3303589013-x0[14]))*((v3605892192>(0.))?sqrt(v3605892192):std::complex<double>(0.,1.)*sqrt((-1.)*v3605892192));
  auto v1636750592 = std::complex<double>(-0.,-1.)*v151048832*((x0[27]*x0[3])/(x0[4]*x0[4]-v1836426858) + (x0[28]*x0[5])/(x0[6]*x0[6]-v1836426858) + (x0[29]*x0[7])/(x0[8]*x0[8]-v1836426858) + (x0[30]*x0[9])/(x0[10]*x0[10]-v1836426858) + (x0[31]*x0[11])/(x0[12]*x0[12]-v1836426858) + (x0[32]*((1.)-x0[14]))/(v3303589013-x0[14]))*((v758672440>(0.))?sqrt(v758672440):std::complex<double>(0.,1.)*sqrt((-1.)*v758672440));
  auto v1474669829 = std::complex<double>(-0.,-1.)*v2488241434*((x0[27]*x0[3])/(x0[4]*x0[4]-v3037555099) + (x0[28]*x0[5])/(x0[6]*x0[6]-v3037555099) + (x0[29]*x0[7])/(x0[8]*x0[8]-v3037555099) + (x0[30]*x0[9])/(x0[10]*x0[10]-v3037555099) + (x0[31]*x0[11])/(x0[12]*x0[12]-v3037555099) + (x0[32]*((1.)-x0[14]))/(v3864776319-x0[14]))*((v1694853431>(0.))?sqrt(v1694853431):std::complex<double>(0.,1.)*sqrt((-1.)*v1694853431));
  auto v1452648461 = std::complex<double>(-0.,-1.)*v2488241434*((x0[21]*x0[3])/(x0[4]*x0[4]-v3037555099) + (x0[22]*x0[5])/(x0[6]*x0[6]-v3037555099) + (x0[23]*x0[7])/(x0[8]*x0[8]-v3037555099) + (x0[24]*x0[9])/(x0[10]*x0[10]-v3037555099) + (x0[25]*x0[11])/(x0[12]*x0[12]-v3037555099) + (x0[26]*((1.)-x0[14]))/(v3864776319-x0[14]))*((v1694853431>(0.))?sqrt(v1694853431):std::complex<double>(0.,1.)*sqrt((-1.)*v1694853431));
  auto v1304853663 = std::complex<double>(-0.,-1.)*v151048832*((x0[15]*x0[3])/(x0[4]*x0[4]-v1836426858) + (x0[16]*x0[5])/(x0[6]*x0[6]-v1836426858) + (x0[17]*x0[7])/(x0[8]*x0[8]-v1836426858) + (x0[18]*x0[9])/(x0[10]*x0[10]-v1836426858) + (x0[19]*x0[11])/(x0[12]*x0[12]-v1836426858) + (x0[20]*((1.)-x0[14]))/(v3303589013-x0[14]))*((v341659004>(0.))?sqrt(v341659004):std::complex<double>(0.,1.)*sqrt((-1.)*v341659004));
  auto v1258276323 = std::complex<double>(-0.,-1.)*v2488241434*((x0[21]*x0[3])/(x0[4]*x0[4]-v3037555099) + (x0[22]*x0[5])/(x0[6]*x0[6]-v3037555099) + (x0[23]*x0[7])/(x0[8]*x0[8]-v3037555099) + (x0[24]*x0[9])/(x0[10]*x0[10]-v3037555099) + (x0[25]*x0[11])/(x0[12]*x0[12]-v3037555099) + (x0[26]*((1.)-x0[14]))/(v3864776319-x0[14]))*((v3037555099>(1.))?((v3102009577>(0.))?sqrt(v3102009577):std::complex<double>(0.,1.)*sqrt((-1.)*v3102009577)):(0.00051) + (-0.01933)*v3037555099 + (0.13851)*v3037555099*v3037555099 + (-0.2084)*v3037555099*v3037555099*v3037555099 + (-0.29744)*v3037555099*v3037555099*v3037555099*v3037555099 + (0.13655)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099 + (1.07885)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099);
  auto v980854748 = std::complex<double>(-0.,-1.)*v2488241434*((x0[15]*x0[3])/(x0[4]*x0[4]-v3037555099) + (x0[16]*x0[5])/(x0[6]*x0[6]-v3037555099) + (x0[17]*x0[7])/(x0[8]*x0[8]-v3037555099) + (x0[18]*x0[9])/(x0[10]*x0[10]-v3037555099) + (x0[19]*x0[11])/(x0[12]*x0[12]-v3037555099) + (x0[20]*((1.)-x0[14]))/(v3864776319-x0[14]))*((v3789560610>(0.))?sqrt(v3789560610):std::complex<double>(0.,1.)*sqrt((-1.)*v3789560610));
  auto v910172329 = std::complex<double>(-0.,-1.)*v2488241434*((x0[15]*x0[3])/(x0[4]*x0[4]-v3037555099) + (x0[16]*x0[5])/(x0[6]*x0[6]-v3037555099) + (x0[17]*x0[7])/(x0[8]*x0[8]-v3037555099) + (x0[18]*x0[9])/(x0[10]*x0[10]-v3037555099) + (x0[19]*x0[11])/(x0[12]*x0[12]-v3037555099) + (x0[20]*((1.)-x0[14]))/(v3864776319-x0[14]))*((v1694853431>(0.))?sqrt(v1694853431):std::complex<double>(0.,1.)*sqrt((-1.)*v1694853431));
  auto v839072984 = std::complex<double>(-0.,-1.)*v151048832*((x0[33]*x0[3])/(x0[4]*x0[4]-v1836426858) + (x0[34]*x0[5])/(x0[6]*x0[6]-v1836426858) + (x0[35]*x0[7])/(x0[8]*x0[8]-v1836426858) + (x0[36]*x0[9])/(x0[10]*x0[10]-v1836426858) + (x0[37]*x0[11])/(x0[12]*x0[12]-v1836426858) + (x0[38]*((1.)-x0[14]))/(v3303589013-x0[14]))*((v341659004>(0.))?sqrt(v341659004):std::complex<double>(0.,1.)*sqrt((-1.)*v341659004));
  auto v255841663 = std::complex<double>(-0.,-1.)*v151048832*((x0[21]*x0[3])/(x0[4]*x0[4]-v1836426858) + (x0[22]*x0[5])/(x0[6]*x0[6]-v1836426858) + (x0[23]*x0[7])/(x0[8]*x0[8]-v1836426858) + (x0[24]*x0[9])/(x0[10]*x0[10]-v1836426858) + (x0[25]*x0[11])/(x0[12]*x0[12]-v1836426858) + (x0[26]*((1.)-x0[14]))/(v3303589013-x0[14]))*((v341659004>(0.))?sqrt(v341659004):std::complex<double>(0.,1.)*sqrt((-1.)*v341659004));
  auto v216360023 = std::complex<double>(-0.,-1.)*v151048832*((x0[27]*x0[3])/(x0[4]*x0[4]-v1836426858) + (x0[28]*x0[5])/(x0[6]*x0[6]-v1836426858) + (x0[29]*x0[7])/(x0[8]*x0[8]-v1836426858) + (x0[30]*x0[9])/(x0[10]*x0[10]-v1836426858) + (x0[31]*x0[11])/(x0[12]*x0[12]-v1836426858) + (x0[32]*((1.)-x0[14]))/(v3303589013-x0[14]))*((v341659004>(0.))?sqrt(v341659004):std::complex<double>(0.,1.)*sqrt((-1.)*v341659004));
  auto v111119486 = std::complex<double>(-0.,-1.)*v2488241434*((x0[33]*x0[3])/(x0[4]*x0[4]-v3037555099) + (x0[34]*x0[5])/(x0[6]*x0[6]-v3037555099) + (x0[35]*x0[7])/(x0[8]*x0[8]-v3037555099) + (x0[36]*x0[9])/(x0[10]*x0[10]-v3037555099) + (x0[37]*x0[11])/(x0[12]*x0[12]-v3037555099) + (x0[38]*((1.)-x0[14]))/(v3864776319-x0[14]))*((v21348587>(0.))?sqrt(v21348587):std::complex<double>(0.,1.)*sqrt((-1.)*v21348587));
  auto v3926831395 = (v1304853663*v1742329417)/(v3712237063);
  auto v3669473571 = (v1304853663*v3962953584)/(v3712237063);
  auto v3663942510 = (1.)-std::complex<double>(0.,1.)*v151048832*((x0[15]*x0[15])/(x0[4]*x0[4]-v1836426858) + (x0[16]*x0[16])/(x0[6]*x0[6]-v1836426858) + (x0[17]*x0[17])/(x0[8]*x0[8]-v1836426858) + (x0[18]*x0[18])/(x0[10]*x0[10]-v1836426858) + (x0[19]*x0[19])/(x0[12]*x0[12]-v1836426858))*((v3007036945>(0.))?sqrt(v3007036945):std::complex<double>(0.,1.)*sqrt((-1.)*v3007036945));
  auto v3627579820 = (-1.)*(v910172329)/(v2111851279);
  auto v3502841389 = (v910172329*v111119486)/(v2111851279);
  auto v3160618711 = (v255841663*v3926569162)/(v3712237063);
  auto v3135162689 = std::complex<double>(-0.,-1.)*v2488241434*((x0[33]*x0[15])/(x0[4]*x0[4]-v3037555099) + (x0[34]*x0[16])/(x0[6]*x0[6]-v3037555099) + (x0[35]*x0[17])/(x0[8]*x0[8]-v3037555099) + (x0[36]*x0[18])/(x0[10]*x0[10]-v3037555099) + (x0[37]*x0[19])/(x0[12]*x0[12]-v3037555099))*((v21348587>(0.))?sqrt(v21348587):std::complex<double>(0.,1.)*sqrt((-1.)*v21348587));
  auto v3099229930 = std::complex<double>(-0.,-1.)*v2488241434*((x0[27]*x0[15])/(x0[4]*x0[4]-v3037555099) + (x0[28]*x0[16])/(x0[6]*x0[6]-v3037555099) + (x0[29]*x0[17])/(x0[8]*x0[8]-v3037555099) + (x0[30]*x0[18])/(x0[10]*x0[10]-v3037555099) + (x0[31]*x0[19])/(x0[12]*x0[12]-v3037555099))*((v3789560610>(0.))?sqrt(v3789560610):std::complex<double>(0.,1.)*sqrt((-1.)*v3789560610));
  auto v2899208900 = std::complex<double>(-0.,-1.)*v2488241434*((x0[21]*x0[15])/(x0[4]*x0[4]-v3037555099) + (x0[22]*x0[16])/(x0[6]*x0[6]-v3037555099) + (x0[23]*x0[17])/(x0[8]*x0[8]-v3037555099) + (x0[24]*x0[18])/(x0[10]*x0[10]-v3037555099) + (x0[25]*x0[19])/(x0[12]*x0[12]-v3037555099))*((v3037555099>(1.))?((v3102009577>(0.))?sqrt(v3102009577):std::complex<double>(0.,1.)*sqrt((-1.)*v3102009577)):(0.00051) + (-0.01933)*v3037555099 + (0.13851)*v3037555099*v3037555099 + (-0.2084)*v3037555099*v3037555099*v3037555099 + (-0.29744)*v3037555099*v3037555099*v3037555099*v3037555099 + (0.13655)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099 + (1.07885)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099);
  auto v2844405163 = (v839072984*v3926569162)/(v3712237063);
  auto v2709668838 = (v216360023*v3926569162)/(v3712237063);
  auto v2690895429 = (v3926569162)/(v3712237063);
  auto v2487489657 = (v3215216564*v980854748)/(v2111851279);
  auto v2208466672 = std::complex<double>(-0.,-1.)*v2488241434*((x0[27]*x0[15])/(x0[4]*x0[4]-v3037555099) + (x0[28]*x0[16])/(x0[6]*x0[6]-v3037555099) + (x0[29]*x0[17])/(x0[8]*x0[8]-v3037555099) + (x0[30]*x0[18])/(x0[10]*x0[10]-v3037555099) + (x0[31]*x0[19])/(x0[12]*x0[12]-v3037555099))*((v359842611>(0.))?sqrt(v359842611):std::complex<double>(0.,1.)*sqrt((-1.)*v359842611));
  auto v2192947274 = std::complex<double>(-0.,-1.)*v2488241434*((x0[33]*x0[15])/(x0[4]*x0[4]-v3037555099) + (x0[34]*x0[16])/(x0[6]*x0[6]-v3037555099) + (x0[35]*x0[17])/(x0[8]*x0[8]-v3037555099) + (x0[36]*x0[18])/(x0[10]*x0[10]-v3037555099) + (x0[37]*x0[19])/(x0[12]*x0[12]-v3037555099))*((v3789560610>(0.))?sqrt(v3789560610):std::complex<double>(0.,1.)*sqrt((-1.)*v3789560610));
  auto v2076842653 = std::complex<double>(-0.,-1.)*v151048832*((x0[27]*x0[15])/(x0[4]*x0[4]-v1836426858) + (x0[28]*x0[16])/(x0[6]*x0[6]-v1836426858) + (x0[29]*x0[17])/(x0[8]*x0[8]-v1836426858) + (x0[30]*x0[18])/(x0[10]*x0[10]-v1836426858) + (x0[31]*x0[19])/(x0[12]*x0[12]-v1836426858))*((v758672440>(0.))?sqrt(v758672440):std::complex<double>(0.,1.)*sqrt((-1.)*v758672440));
  auto v2027797497 = std::complex<double>(-0.,-1.)*v2488241434*((x0[21]*x0[15])/(x0[4]*x0[4]-v3037555099) + (x0[22]*x0[16])/(x0[6]*x0[6]-v3037555099) + (x0[23]*x0[17])/(x0[8]*x0[8]-v3037555099) + (x0[24]*x0[18])/(x0[10]*x0[10]-v3037555099) + (x0[25]*x0[19])/(x0[12]*x0[12]-v3037555099))*((v3789560610>(0.))?sqrt(v3789560610):std::complex<double>(0.,1.)*sqrt((-1.)*v3789560610));
  auto v2014012967 = std::complex<double>(-0.,-1.)*v151048832*((x0[33]*x0[15])/(x0[4]*x0[4]-v1836426858) + (x0[34]*x0[16])/(x0[6]*x0[6]-v1836426858) + (x0[35]*x0[17])/(x0[8]*x0[8]-v1836426858) + (x0[36]*x0[18])/(x0[10]*x0[10]-v1836426858) + (x0[37]*x0[19])/(x0[12]*x0[12]-v1836426858))*((v3605892192>(0.))?sqrt(v3605892192):std::complex<double>(0.,1.)*sqrt((-1.)*v3605892192));
  auto v1498048574 = (v1304853663*v3926569162)/(v3712237063);
  auto v1490855688 = (v980854748)/(v2111851279);
  auto v1294182424 = (v910172329*v1258276323)/(v2111851279);
  auto v1211935458 = (v910172329*v980854748)/(v2111851279);
  auto v1136737173 = std::complex<double>(-0.,-1.)*v151048832*((x0[27]*x0[15])/(x0[4]*x0[4]-v1836426858) + (x0[28]*x0[16])/(x0[6]*x0[6]-v1836426858) + (x0[29]*x0[17])/(x0[8]*x0[8]-v1836426858) + (x0[30]*x0[18])/(x0[10]*x0[10]-v1836426858) + (x0[31]*x0[19])/(x0[12]*x0[12]-v1836426858))*((v3007036945>(0.))?sqrt(v3007036945):std::complex<double>(0.,1.)*sqrt((-1.)*v3007036945));
  auto v1134059584 = std::complex<double>(-0.,-1.)*v151048832*((x0[21]*x0[15])/(x0[4]*x0[4]-v1836426858) + (x0[22]*x0[16])/(x0[6]*x0[6]-v1836426858) + (x0[23]*x0[17])/(x0[8]*x0[8]-v1836426858) + (x0[24]*x0[18])/(x0[10]*x0[10]-v1836426858) + (x0[25]*x0[19])/(x0[12]*x0[12]-v1836426858))*((v1836426858>(1.))?((v2840245930>(0.))?sqrt(v2840245930):std::complex<double>(0.,1.)*sqrt((-1.)*v2840245930)):(0.00051) + (-0.01933)*v1836426858 + (0.13851)*v1836426858*v1836426858 + (-0.2084)*v1836426858*v1836426858*v1836426858 + (-0.29744)*v1836426858*v1836426858*v1836426858*v1836426858 + (0.13655)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858 + (1.07885)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858);
  auto v1110707043 = (v910172329*v1955258502)/(v2111851279);
  auto v1048734754 = (v1474669829*v980854748)/(v2111851279);
  auto v924437421 = std::complex<double>(-0.,-1.)*v151048832*((x0[33]*x0[15])/(x0[4]*x0[4]-v1836426858) + (x0[34]*x0[16])/(x0[6]*x0[6]-v1836426858) + (x0[35]*x0[17])/(x0[8]*x0[8]-v1836426858) + (x0[36]*x0[18])/(x0[10]*x0[10]-v1836426858) + (x0[37]*x0[19])/(x0[12]*x0[12]-v1836426858))*((v3007036945>(0.))?sqrt(v3007036945):std::complex<double>(0.,1.)*sqrt((-1.)*v3007036945));
  auto v888290467 = (1.)-std::complex<double>(0.,1.)*v2488241434*((x0[15]*x0[15])/(x0[4]*x0[4]-v3037555099) + (x0[16]*x0[16])/(x0[6]*x0[6]-v3037555099) + (x0[17]*x0[17])/(x0[8]*x0[8]-v3037555099) + (x0[18]*x0[18])/(x0[10]*x0[10]-v3037555099) + (x0[19]*x0[19])/(x0[12]*x0[12]-v3037555099))*((v3789560610>(0.))?sqrt(v3789560610):std::complex<double>(0.,1.)*sqrt((-1.)*v3789560610));
  auto v749074938 = std::complex<double>(-0.,-1.)*v151048832*((x0[21]*x0[15])/(x0[4]*x0[4]-v1836426858) + (x0[22]*x0[16])/(x0[6]*x0[6]-v1836426858) + (x0[23]*x0[17])/(x0[8]*x0[8]-v1836426858) + (x0[24]*x0[18])/(x0[10]*x0[10]-v1836426858) + (x0[25]*x0[19])/(x0[12]*x0[12]-v1836426858))*((v3007036945>(0.))?sqrt(v3007036945):std::complex<double>(0.,1.)*sqrt((-1.)*v3007036945));
  auto v498030113 = (v1452648461*v980854748)/(v2111851279);
  auto v251409423 = (v1304853663*v1636750592)/(v3712237063);
  auto v173793696 = (-1.)*(v1304853663)/(v3712237063);
  auto v3978116468 = (v1452648461*v1258276323)/(v2111851279) + ((v2899208900-v1294182424)*(v2027797497-v498030113))/(v888290467-v1211935458);
  auto v3892543554 = std::complex<double>(-0.,-1.)*v2488241434*((x0[27]*x0[21])/(x0[4]*x0[4]-v3037555099) + (x0[28]*x0[22])/(x0[6]*x0[6]-v3037555099) + (x0[29]*x0[23])/(x0[8]*x0[8]-v3037555099) + (x0[30]*x0[24])/(x0[10]*x0[10]-v3037555099) + (x0[31]*x0[25])/(x0[12]*x0[12]-v3037555099))*((v3037555099>(1.))?((v3102009577>(0.))?sqrt(v3102009577):std::complex<double>(0.,1.)*sqrt((-1.)*v3102009577)):(0.00051) + (-0.01933)*v3037555099 + (0.13851)*v3037555099*v3037555099 + (-0.2084)*v3037555099*v3037555099*v3037555099 + (-0.29744)*v3037555099*v3037555099*v3037555099*v3037555099 + (0.13655)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099 + (1.07885)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099);
  auto v3493176212 = (1.)-std::complex<double>(0.,1.)*v2488241434*((x0[21]*x0[21])/(x0[4]*x0[4]-v3037555099) + (x0[22]*x0[22])/(x0[6]*x0[6]-v3037555099) + (x0[23]*x0[23])/(x0[8]*x0[8]-v3037555099) + (x0[24]*x0[24])/(x0[10]*x0[10]-v3037555099) + (x0[25]*x0[25])/(x0[12]*x0[12]-v3037555099))*((v3037555099>(1.))?((v3102009577>(0.))?sqrt(v3102009577):std::complex<double>(0.,1.)*sqrt((-1.)*v3102009577)):(0.00051) + (-0.01933)*v3037555099 + (0.13851)*v3037555099*v3037555099 + (-0.2084)*v3037555099*v3037555099*v3037555099 + (-0.29744)*v3037555099*v3037555099*v3037555099*v3037555099 + (0.13655)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099 + (1.07885)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099);
  auto v3299038154 = std::complex<double>(-0.,-1.)*v151048832*((x0[27]*x0[21])/(x0[4]*x0[4]-v1836426858) + (x0[28]*x0[22])/(x0[6]*x0[6]-v1836426858) + (x0[29]*x0[23])/(x0[8]*x0[8]-v1836426858) + (x0[30]*x0[24])/(x0[10]*x0[10]-v1836426858) + (x0[31]*x0[25])/(x0[12]*x0[12]-v1836426858))*((v1836426858>(1.))?((v2840245930>(0.))?sqrt(v2840245930):std::complex<double>(0.,1.)*sqrt((-1.)*v2840245930)):(0.00051) + (-0.01933)*v1836426858 + (0.13851)*v1836426858*v1836426858 + (-0.2084)*v1836426858*v1836426858*v1836426858 + (-0.29744)*v1836426858*v1836426858*v1836426858*v1836426858 + (0.13655)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858 + (1.07885)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858);
  auto v3280766624 = std::complex<double>(-0.,-1.)*v2488241434*((x0[33]*x0[21])/(x0[4]*x0[4]-v3037555099) + (x0[34]*x0[22])/(x0[6]*x0[6]-v3037555099) + (x0[35]*x0[23])/(x0[8]*x0[8]-v3037555099) + (x0[36]*x0[24])/(x0[10]*x0[10]-v3037555099) + (x0[37]*x0[25])/(x0[12]*x0[12]-v3037555099))*((v21348587>(0.))?sqrt(v21348587):std::complex<double>(0.,1.)*sqrt((-1.)*v21348587));
  auto v3220637740 = (v1452648461*v111119486)/(v2111851279) + ((v3135162689-v3502841389)*(v2027797497-v498030113))/(v888290467-v1211935458);
  auto v2950282091 = (-1.)*(v255841663)/(v3712237063)-(v173793696*(v749074938-v3160618711))/(v3663942510-v1498048574);
  auto v2742420170 = std::complex<double>(-0.,-1.)*v2488241434*((x0[33]*x0[21])/(x0[4]*x0[4]-v3037555099) + (x0[34]*x0[22])/(x0[6]*x0[6]-v3037555099) + (x0[35]*x0[23])/(x0[8]*x0[8]-v3037555099) + (x0[36]*x0[24])/(x0[10]*x0[10]-v3037555099) + (x0[37]*x0[25])/(x0[12]*x0[12]-v3037555099))*((v3037555099>(1.))?((v3102009577>(0.))?sqrt(v3102009577):std::complex<double>(0.,1.)*sqrt((-1.)*v3102009577)):(0.00051) + (-0.01933)*v3037555099 + (0.13851)*v3037555099*v3037555099 + (-0.2084)*v3037555099*v3037555099*v3037555099 + (-0.29744)*v3037555099*v3037555099*v3037555099*v3037555099 + (0.13655)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099 + (1.07885)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099);
  auto v2530270390 = (v255841663*v1742329417)/(v3712237063) + ((v2014012967-v3926831395)*(v749074938-v3160618711))/(v3663942510-v1498048574);
  auto v2458863037 = (-1.)*(v1452648461)/(v2111851279)-(v3627579820*(v2027797497-v498030113))/(v888290467-v1211935458);
  auto v2440228578 = std::complex<double>(-0.,-1.)*v151048832*((x0[27]*x0[21])/(x0[4]*x0[4]-v1836426858) + (x0[28]*x0[22])/(x0[6]*x0[6]-v1836426858) + (x0[29]*x0[23])/(x0[8]*x0[8]-v1836426858) + (x0[30]*x0[24])/(x0[10]*x0[10]-v1836426858) + (x0[31]*x0[25])/(x0[12]*x0[12]-v1836426858))*((v758672440>(0.))?sqrt(v758672440):std::complex<double>(0.,1.)*sqrt((-1.)*v758672440));
  auto v2392666732 = (v3962953584)/(v3712237063) + ((-1.)*v2690895429*(v1134059584-v3669473571))/(v3663942510-v1498048574);
  auto v2156539190 = (v3215216564*v1258276323)/(v2111851279) + ((v2899208900-v1294182424)*(v2192947274-v2487489657))/(v888290467-v1211935458);
  auto v2066788000 = (v1452648461*v1955258502)/(v2111851279) + ((v2208466672-v1110707043)*(v2027797497-v498030113))/(v888290467-v1211935458);
  auto v1789810775 = std::complex<double>(-0.,-1.)*v2488241434*((x0[27]*x0[21])/(x0[4]*x0[4]-v3037555099) + (x0[28]*x0[22])/(x0[6]*x0[6]-v3037555099) + (x0[29]*x0[23])/(x0[8]*x0[8]-v3037555099) + (x0[30]*x0[24])/(x0[10]*x0[10]-v3037555099) + (x0[31]*x0[25])/(x0[12]*x0[12]-v3037555099))*((v359842611>(0.))?sqrt(v359842611):std::complex<double>(0.,1.)*sqrt((-1.)*v359842611));
  auto v1671733403 = (v1474669829*v1258276323)/(v2111851279) + ((v2899208900-v1294182424)*(v3099229930-v1048734754))/(v888290467-v1211935458);
  auto v1629269660 = (v255841663*v1636750592)/(v3712237063) + ((v2076842653-v251409423)*(v749074938-v3160618711))/(v3663942510-v1498048574);
  auto v1265640608 = (v216360023*v3962953584)/(v3712237063) + ((v1134059584-v3669473571)*(v1136737173-v2709668838))/(v3663942510-v1498048574);
  auto v1228363810 = std::complex<double>(-0.,-1.)*v151048832*((x0[33]*x0[21])/(x0[4]*x0[4]-v1836426858) + (x0[34]*x0[22])/(x0[6]*x0[6]-v1836426858) + (x0[35]*x0[23])/(x0[8]*x0[8]-v1836426858) + (x0[36]*x0[24])/(x0[10]*x0[10]-v1836426858) + (x0[37]*x0[25])/(x0[12]*x0[12]-v1836426858))*((v1836426858>(1.))?((v2840245930>(0.))?sqrt(v2840245930):std::complex<double>(0.,1.)*sqrt((-1.)*v2840245930)):(0.00051) + (-0.01933)*v1836426858 + (0.13851)*v1836426858*v1836426858 + (-0.2084)*v1836426858*v1836426858*v1836426858 + (-0.29744)*v1836426858*v1836426858*v1836426858*v1836426858 + (0.13655)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858 + (1.07885)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858);
  auto v916138054 = (1.)-std::complex<double>(0.,1.)*v151048832*((x0[21]*x0[21])/(x0[4]*x0[4]-v1836426858) + (x0[22]*x0[22])/(x0[6]*x0[6]-v1836426858) + (x0[23]*x0[23])/(x0[8]*x0[8]-v1836426858) + (x0[24]*x0[24])/(x0[10]*x0[10]-v1836426858) + (x0[25]*x0[25])/(x0[12]*x0[12]-v1836426858))*((v1836426858>(1.))?((v2840245930>(0.))?sqrt(v2840245930):std::complex<double>(0.,1.)*sqrt((-1.)*v2840245930)):(0.00051) + (-0.01933)*v1836426858 + (0.13851)*v1836426858*v1836426858 + (-0.2084)*v1836426858*v1836426858*v1836426858 + (-0.29744)*v1836426858*v1836426858*v1836426858*v1836426858 + (0.13655)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858 + (1.07885)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858);
  auto v757347508 = (v839072984*v3962953584)/(v3712237063) + ((v1134059584-v3669473571)*(v924437421-v2844405163))/(v3663942510-v1498048574);
  auto v732589286 = sqrt((0.243717) + x1[0]*x1[0] + x1[1]*x1[1] + x1[2]*x1[2]);
  auto v178886646 = (v255841663*v3962953584)/(v3712237063) + ((v1134059584-v3669473571)*(v749074938-v3160618711))/(v3663942510-v1498048574);
  auto v64939503 = (v1258276323)/(v2111851279) + ((-1.)*v1490855688*(v2899208900-v1294182424))/(v888290467-v1211935458);
  auto v63877246 = std::complex<double>(-0.,-1.)*v151048832*((x0[33]*x0[21])/(x0[4]*x0[4]-v1836426858) + (x0[34]*x0[22])/(x0[6]*x0[6]-v1836426858) + (x0[35]*x0[23])/(x0[8]*x0[8]-v1836426858) + (x0[36]*x0[24])/(x0[10]*x0[10]-v1836426858) + (x0[37]*x0[25])/(x0[12]*x0[12]-v1836426858))*((v3605892192>(0.))?sqrt(v3605892192):std::complex<double>(0.,1.)*sqrt((-1.)*v3605892192));
  auto v4156259701 = std::complex<double>(-0.,-1.)*v151048832*((x0[33]*x0[27])/(x0[4]*x0[4]-v1836426858) + (x0[34]*x0[28])/(x0[6]*x0[6]-v1836426858) + (x0[35]*x0[29])/(x0[8]*x0[8]-v1836426858) + (x0[36]*x0[30])/(x0[10]*x0[10]-v1836426858) + (x0[37]*x0[31])/(x0[12]*x0[12]-v1836426858))*((v3605892192>(0.))?sqrt(v3605892192):std::complex<double>(0.,1.)*sqrt((-1.)*v3605892192));
  auto v3704780237 = (-1.)*(v1474669829)/(v2111851279)-(v3627579820*(v3099229930-v1048734754))/(v888290467-v1211935458)-(v2458863037*(v3892543554-v1671733403))/(v3493176212-v3978116468);
  auto v3238823049 = (-1.)*(v216360023)/(v3712237063)-(v173793696*(v1136737173-v2709668838))/(v3663942510-v1498048574)-(v2950282091*(v3299038154-v1265640608))/(v916138054-v178886646);
  auto v2772160503 = std::complex<double>(-0.,-1.)*v151048832*((x0[33]*x0[27])/(x0[4]*x0[4]-v1836426858) + (x0[34]*x0[28])/(x0[6]*x0[6]-v1836426858) + (x0[35]*x0[29])/(x0[8]*x0[8]-v1836426858) + (x0[36]*x0[30])/(x0[10]*x0[10]-v1836426858) + (x0[37]*x0[31])/(x0[12]*x0[12]-v1836426858))*((v758672440>(0.))?sqrt(v758672440):std::complex<double>(0.,1.)*sqrt((-1.)*v758672440));
  auto v2635961706 = std::complex<double>(-0.,-1.)*v2488241434*((x0[33]*x0[27])/(x0[4]*x0[4]-v3037555099) + (x0[34]*x0[28])/(x0[6]*x0[6]-v3037555099) + (x0[35]*x0[29])/(x0[8]*x0[8]-v3037555099) + (x0[36]*x0[30])/(x0[10]*x0[10]-v3037555099) + (x0[37]*x0[31])/(x0[12]*x0[12]-v3037555099))*((v359842611>(0.))?sqrt(v359842611):std::complex<double>(0.,1.)*sqrt((-1.)*v359842611));
  auto v2541664477 = (v216360023*v1636750592)/(v3712237063) + ((v2076842653-v251409423)*(v1136737173-v2709668838))/(v3663942510-v1498048574) + ((v2440228578-v1629269660)*(v3299038154-v1265640608))/(v916138054-v178886646);
  auto v2476164519 = std::complex<double>(-0.,-1.)*v2488241434*((x0[33]*x0[27])/(x0[4]*x0[4]-v3037555099) + (x0[34]*x0[28])/(x0[6]*x0[6]-v3037555099) + (x0[35]*x0[29])/(x0[8]*x0[8]-v3037555099) + (x0[36]*x0[30])/(x0[10]*x0[10]-v3037555099) + (x0[37]*x0[31])/(x0[12]*x0[12]-v3037555099))*((v21348587>(0.))?sqrt(v21348587):std::complex<double>(0.,1.)*sqrt((-1.)*v21348587));
  auto v2418357392 = (v1636750592)/(v3712237063) + ((-1.)*v2690895429*(v2076842653-v251409423))/(v3663942510-v1498048574) + ((-1.)*v2392666732*(v2440228578-v1629269660))/(v916138054-v178886646);
  auto v1562520267 = (1.)-std::complex<double>(0.,1.)*v2488241434*((x0[27]*x0[27])/(x0[4]*x0[4]-v3037555099) + (x0[28]*x0[28])/(x0[6]*x0[6]-v3037555099) + (x0[29]*x0[29])/(x0[8]*x0[8]-v3037555099) + (x0[30]*x0[30])/(x0[10]*x0[10]-v3037555099) + (x0[31]*x0[31])/(x0[12]*x0[12]-v3037555099))*((v359842611>(0.))?sqrt(v359842611):std::complex<double>(0.,1.)*sqrt((-1.)*v359842611));
  auto v1521070335 = (-1.)*(x1[2] + x1[10])*(x1[2] + x1[10]) + (v732589286 + v604511646)*(v732589286 + v604511646) + (-1.)*(x1[1] + x1[9])*(x1[1] + x1[9]) + (-1.)*(x1[0] + x1[8])*(x1[0] + x1[8]);
  auto v1477661232 = (v216360023*v1742329417)/(v3712237063) + ((v2014012967-v3926831395)*(v1136737173-v2709668838))/(v3663942510-v1498048574) + ((v63877246-v2530270390)*(v3299038154-v1265640608))/(v916138054-v178886646);
  auto v1466574160 = (v1474669829*v1955258502)/(v2111851279) + ((v2208466672-v1110707043)*(v3099229930-v1048734754))/(v888290467-v1211935458) + ((v1789810775-v2066788000)*(v3892543554-v1671733403))/(v3493176212-v3978116468);
  auto v1333463548 = (1.)-std::complex<double>(0.,1.)*v151048832*((x0[27]*x0[27])/(x0[4]*x0[4]-v1836426858) + (x0[28]*x0[28])/(x0[6]*x0[6]-v1836426858) + (x0[29]*x0[29])/(x0[8]*x0[8]-v1836426858) + (x0[30]*x0[30])/(x0[10]*x0[10]-v1836426858) + (x0[31]*x0[31])/(x0[12]*x0[12]-v1836426858))*((v758672440>(0.))?sqrt(v758672440):std::complex<double>(0.,1.)*sqrt((-1.)*v758672440));
  auto v1139362541 = (-1.)*(x1[2] + x1[6])*(x1[2] + x1[6]) + (v732589286 + v2683369444)*(v732589286 + v2683369444) + (-1.)*(x1[1] + x1[5])*(x1[1] + x1[5]) + (-1.)*(x1[0] + x1[4])*(x1[0] + x1[4]);
  auto v1080901134 = (v1474669829*v111119486)/(v2111851279) + ((v3135162689-v3502841389)*(v3099229930-v1048734754))/(v888290467-v1211935458) + ((v3280766624-v3220637740)*(v3892543554-v1671733403))/(v3493176212-v3978116468);
  auto v1000633181 = (v1955258502)/(v2111851279) + ((-1.)*v1490855688*(v2208466672-v1110707043))/(v888290467-v1211935458) + ((-1.)*v64939503*(v1789810775-v2066788000))/(v3493176212-v3978116468);
  auto v395958503 = (v839072984*v1636750592)/(v3712237063) + ((v2076842653-v251409423)*(v924437421-v2844405163))/(v3663942510-v1498048574) + ((v2440228578-v1629269660)*(v1228363810-v757347508))/(v916138054-v178886646);
  auto v281711840 = (v3215216564*v1955258502)/(v2111851279) + ((v2208466672-v1110707043)*(v2192947274-v2487489657))/(v888290467-v1211935458) + ((v1789810775-v2066788000)*(v2742420170-v2156539190))/(v3493176212-v3978116468);
  auto v4247864182 = (v111119486)/(v2111851279) + ((-1.)*v1490855688*(v3135162689-v3502841389))/(v888290467-v1211935458) + ((-1.)*v64939503*(v3280766624-v3220637740))/(v3493176212-v3978116468) + ((-1.)*v1000633181*(v2476164519-v1080901134))/(v1562520267-v1466574160);
  auto v4174506558 = (1.)-std::complex<double>(0.,1.)*v151048832*((x0[33]*x0[33])/(x0[4]*x0[4]-v1836426858) + (x0[34]*x0[34])/(x0[6]*x0[6]-v1836426858) + (x0[35]*x0[35])/(x0[8]*x0[8]-v1836426858) + (x0[36]*x0[36])/(x0[10]*x0[10]-v1836426858) + (x0[37]*x0[37])/(x0[12]*x0[12]-v1836426858))*((v3605892192>(0.))?sqrt(v3605892192):std::complex<double>(0.,1.)*sqrt((-1.)*v3605892192));
  auto v3634940496 = ((1.)-((0.125392))/(v1139362541))*((1.)-((0.401002))/(v1139362541));
  auto v3154148802 = (1.)-std::complex<double>(0.,1.)*v2488241434*((x0[33]*x0[33])/(x0[4]*x0[4]-v3037555099) + (x0[34]*x0[34])/(x0[6]*x0[6]-v3037555099) + (x0[35]*x0[35])/(x0[8]*x0[8]-v3037555099) + (x0[36]*x0[36])/(x0[10]*x0[10]-v3037555099) + (x0[37]*x0[37])/(x0[12]*x0[12]-v3037555099))*((v21348587>(0.))?sqrt(v21348587):std::complex<double>(0.,1.)*sqrt((-1.)*v21348587));
  auto v3057249796 = (-1.)*(v839072984)/(v3712237063)-(v173793696*(v924437421-v2844405163))/(v3663942510-v1498048574)-(v2950282091*(v1228363810-v757347508))/(v916138054-v178886646)-(v3238823049*(v2772160503-v395958503))/(v1333463548-v2541664477);
  auto v2269855808 = (-1.)*(v3215216564)/(v2111851279)-(v3627579820*(v2192947274-v2487489657))/(v888290467-v1211935458)-(v2458863037*(v2742420170-v2156539190))/(v3493176212-v3978116468)-(v3704780237*(v2635961706-v281711840))/(v1562520267-v1466574160);
  auto v2246649186 = (v1742329417)/(v3712237063) + ((-1.)*v2690895429*(v2014012967-v3926831395))/(v3663942510-v1498048574) + ((-1.)*v2392666732*(v63877246-v2530270390))/(v916138054-v178886646) + ((-1.)*v2418357392*(v4156259701-v1477661232))/(v1333463548-v2541664477);
  auto v2077084972 = ((1.)-((0.125392))/(v1521070335))*((1.)-((0.401002))/(v1521070335));
  auto v1784760416 = (v3215216564*v111119486)/(v2111851279) + ((v3135162689-v3502841389)*(v2192947274-v2487489657))/(v888290467-v1211935458) + ((v3280766624-v3220637740)*(v2742420170-v2156539190))/(v3493176212-v3978116468) + ((v2476164519-v1080901134)*(v2635961706-v281711840))/(v1562520267-v1466574160);
  auto v557166818 = (v839072984*v1742329417)/(v3712237063) + ((v2014012967-v3926831395)*(v924437421-v2844405163))/(v3663942510-v1498048574) + ((v63877246-v2530270390)*(v1228363810-v757347508))/(v916138054-v178886646) + ((v4156259701-v1477661232)*(v2772160503-v395958503))/(v1333463548-v2541664477);
  auto v4119910548 = ((1.))/((1.)-std::complex<double>(0.,3.799438)*(v1521070335-(0.27))*((-0.22147) + (0.026637)*((3.799438)*v1521070335-(1.)) + (-0.000921)*((3.799438)*v1521070335-(1.))*((3.799438)*v1521070335-(1.)))*((v2077084972>(0.))?sqrt(v2077084972):std::complex<double>(0.,1.)*sqrt((-1.)*v2077084972)));
  auto v3857412261 = (((1.)-x0[0])*(((1.))/(v2111851279) + ((-1.)*v1490855688*v3627579820)/(v888290467-v1211935458) + ((-1.)*v64939503*v2458863037)/(v3493176212-v3978116468) + ((-1.)*v1000633181*v3704780237)/(v1562520267-v1466574160) + ((-1.)*v4247864182*v2269855808)/(v3154148802-v1784760416)))/(v3037555099-x0[0]);
  auto v2308443614 = ((1.))/((1.)-std::complex<double>(0.,3.799438)*(v1139362541-(0.27))*((-0.22147) + (0.026637)*((3.799438)*v1139362541-(1.)) + (-0.000921)*((3.799438)*v1139362541-(1.))*((3.799438)*v1139362541-(1.)))*((v3634940496>(0.))?sqrt(v3634940496):std::complex<double>(0.,1.)*sqrt((-1.)*v3634940496)));
  auto v1142142481 = (((1.)-x0[0])*(((1.))/(v3712237063) + ((-1.)*v2690895429*v173793696)/(v3663942510-v1498048574) + ((-1.)*v2392666732*v2950282091)/(v916138054-v178886646) + ((-1.)*v2418357392*v3238823049)/(v1333463548-v2541664477) + ((-1.)*v2246649186*v3057249796)/(v4174506558-v557166818)))/(v1836426858-x0[0]);
  auto v2407366364 = v4119910548*v3857412261;
  auto v926214842 = v2308443614*v1142142481;
return (0.707107)*(v926214842 + v2407366364);
}

extern "C" std::complex<double> D0_KPi40_FOCUS_I32__Kp_pim__PiPi40_kMatrix_prod_0__pip_pim___wParams( const double*__restrict__ E ){
  double externalParameters [] = {-0.07, 1, -0.15, 0.22889, 0.651, 0.94128, 1.2036, 0.36856, 1.55817, 0.3365, 1.21, 0.18171, 1.82206, 0.23399, -3.92637, -0.55377, 0.55095, 0.23888, 0.40907, -0.17558, 0.15044, 0, 0, 0.55639, 0.85679, -0.79658, -0.20545, -0.39899, 0.39065, 0.1834, 0.19906, -0.00355, 0.32825, -0.34639, 0.31503, 0.18681, -0.00984, 0.22358, 0.35412 }; 
  return D0_KPi40_FOCUS_I32__Kp_pim__PiPi40_kMatrix_prod_0__pip_pim__( externalParameters, E ); // E is P 
}
extern "C" const char* D0_KPi40_FOCUS_Kpi__Kp_pim__PiPi40_kMatrix_pole_1__pip_pim___name() {  return "D0{KPi40[FOCUS.Kpi]{K+,pi-},PiPi40[kMatrix.pole.1]{pi+,pi-}}"; } 
extern "C" std::complex<double> D0_KPi40_FOCUS_Kpi__Kp_pim__PiPi40_kMatrix_pole_1__pip_pim__(double const* x0, double const* x1){
  auto v3067068972 = sqrt((0.01948) + x1[12]*x1[12] + x1[13]*x1[13] + x1[14]*x1[14]);
  auto v2683369444 = sqrt((0.01948) + x1[4]*x1[4] + x1[5]*x1[5] + x1[6]*x1[6]);
  auto v604511646 = sqrt((0.01948) + x1[8]*x1[8] + x1[9]*x1[9] + x1[10]*x1[10]);
  auto v3864776319 = (-1.)*(x1[14] + x1[6])*(x1[14] + x1[6]) + (v3067068972 + v2683369444)*(v3067068972 + v2683369444) + (-1.)*(x1[13] + x1[5])*(x1[13] + x1[5]) + (-1.)*(x1[12] + x1[4])*(x1[12] + x1[4]);
  auto v3303589013 = (-1.)*(x1[14] + x1[10])*(x1[14] + x1[10]) + (v3067068972 + v604511646)*(v3067068972 + v604511646) + (-1.)*(x1[13] + x1[9])*(x1[13] + x1[9]) + (-1.)*(x1[12] + x1[8])*(x1[12] + x1[8]);
  auto v3037555099 = v3864776319;
  auto v1836426858 = v3303589013;
  auto v3789560610 = (1.)-((0.974868))/(v3037555099);
  auto v3605892192 = (1.)-((2.297171))/(v1836426858);
  auto v3102009577 = (1.)-((0.311677))/(v3037555099);
  auto v3007036945 = (1.)-((0.974868))/(v1836426858);
  auto v2840245930 = (1.)-((0.311677))/(v1836426858);
  auto v2488241434 = ((v3037555099-(0.00974)*x0[1])*((1.)-x0[2]))/(v3037555099-x0[2]);
  auto v1694853431 = (1.)-((0.077919))/(v3037555099);
  auto v758672440 = (1.)-((1.200611))/(v1836426858);
  auto v359842611 = (1.)-((1.200611))/(v3037555099);
  auto v341659004 = (1.)-((0.077919))/(v1836426858);
  auto v151048832 = ((v1836426858-(0.00974)*x0[1])*((1.)-x0[2]))/(v1836426858-x0[2]);
  auto v21348587 = (1.)-((2.297171))/(v3037555099);
  auto v3962953584 = std::complex<double>(-0.,-1.)*v151048832*((x0[20]*x0[4])/(x0[5]*x0[5]-v1836426858) + (x0[21]*x0[6])/(x0[7]*x0[7]-v1836426858) + (x0[22]*x0[9])/(x0[10]*x0[10]-v1836426858) + (x0[23]*x0[12])/(x0[13]*x0[13]-v1836426858) + (x0[24]*x0[15])/(x0[16]*x0[16]-v1836426858) + (x0[25]*((1.)-x0[18]))/(v3303589013-x0[18]))*((v1836426858>(1.))?((v2840245930>(0.))?sqrt(v2840245930):std::complex<double>(0.,1.)*sqrt((-1.)*v2840245930)):(0.00051) + (-0.01933)*v1836426858 + (0.13851)*v1836426858*v1836426858 + (-0.2084)*v1836426858*v1836426858*v1836426858 + (-0.29744)*v1836426858*v1836426858*v1836426858*v1836426858 + (0.13655)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858 + (1.07885)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858);
  auto v3926569162 = std::complex<double>(-0.,-1.)*v151048832*((x0[3]*x0[4])/(x0[5]*x0[5]-v1836426858) + (x0[0]*x0[6])/(x0[7]*x0[7]-v1836426858) + (x0[8]*x0[9])/(x0[10]*x0[10]-v1836426858) + (x0[11]*x0[12])/(x0[13]*x0[13]-v1836426858) + (x0[14]*x0[15])/(x0[16]*x0[16]-v1836426858) + (x0[17]*((1.)-x0[18]))/(v3303589013-x0[18]))*((v3007036945>(0.))?sqrt(v3007036945):std::complex<double>(0.,1.)*sqrt((-1.)*v3007036945));
  auto v3712237063 = (1.)-std::complex<double>(0.,1.)*v151048832*((x0[4]*x0[4])/(x0[5]*x0[5]-v1836426858) + (x0[6]*x0[6])/(x0[7]*x0[7]-v1836426858) + (x0[9]*x0[9])/(x0[10]*x0[10]-v1836426858) + (x0[12]*x0[12])/(x0[13]*x0[13]-v1836426858) + (x0[15]*x0[15])/(x0[16]*x0[16]-v1836426858) + (x0[19]*((1.)-x0[18]))/(v3303589013-x0[18]))*((v341659004>(0.))?sqrt(v341659004):std::complex<double>(0.,1.)*sqrt((-1.)*v341659004));
  auto v3215216564 = std::complex<double>(-0.,-1.)*v2488241434*((x0[32]*x0[4])/(x0[5]*x0[5]-v3037555099) + (x0[33]*x0[6])/(x0[7]*x0[7]-v3037555099) + (x0[34]*x0[9])/(x0[10]*x0[10]-v3037555099) + (x0[35]*x0[12])/(x0[13]*x0[13]-v3037555099) + (x0[36]*x0[15])/(x0[16]*x0[16]-v3037555099) + (x0[37]*((1.)-x0[18]))/(v3864776319-x0[18]))*((v1694853431>(0.))?sqrt(v1694853431):std::complex<double>(0.,1.)*sqrt((-1.)*v1694853431));
  auto v2111851279 = (1.)-std::complex<double>(0.,1.)*v2488241434*((x0[4]*x0[4])/(x0[5]*x0[5]-v3037555099) + (x0[6]*x0[6])/(x0[7]*x0[7]-v3037555099) + (x0[9]*x0[9])/(x0[10]*x0[10]-v3037555099) + (x0[12]*x0[12])/(x0[13]*x0[13]-v3037555099) + (x0[15]*x0[15])/(x0[16]*x0[16]-v3037555099) + (x0[19]*((1.)-x0[18]))/(v3864776319-x0[18]))*((v1694853431>(0.))?sqrt(v1694853431):std::complex<double>(0.,1.)*sqrt((-1.)*v1694853431));
  auto v1955258502 = std::complex<double>(-0.,-1.)*v2488241434*((x0[26]*x0[4])/(x0[5]*x0[5]-v3037555099) + (x0[27]*x0[6])/(x0[7]*x0[7]-v3037555099) + (x0[28]*x0[9])/(x0[10]*x0[10]-v3037555099) + (x0[29]*x0[12])/(x0[13]*x0[13]-v3037555099) + (x0[30]*x0[15])/(x0[16]*x0[16]-v3037555099) + (x0[31]*((1.)-x0[18]))/(v3864776319-x0[18]))*((v359842611>(0.))?sqrt(v359842611):std::complex<double>(0.,1.)*sqrt((-1.)*v359842611));
  auto v1742329417 = std::complex<double>(-0.,-1.)*v151048832*((x0[32]*x0[4])/(x0[5]*x0[5]-v1836426858) + (x0[33]*x0[6])/(x0[7]*x0[7]-v1836426858) + (x0[34]*x0[9])/(x0[10]*x0[10]-v1836426858) + (x0[35]*x0[12])/(x0[13]*x0[13]-v1836426858) + (x0[36]*x0[15])/(x0[16]*x0[16]-v1836426858) + (x0[37]*((1.)-x0[18]))/(v3303589013-x0[18]))*((v3605892192>(0.))?sqrt(v3605892192):std::complex<double>(0.,1.)*sqrt((-1.)*v3605892192));
  auto v1636750592 = std::complex<double>(-0.,-1.)*v151048832*((x0[26]*x0[4])/(x0[5]*x0[5]-v1836426858) + (x0[27]*x0[6])/(x0[7]*x0[7]-v1836426858) + (x0[28]*x0[9])/(x0[10]*x0[10]-v1836426858) + (x0[29]*x0[12])/(x0[13]*x0[13]-v1836426858) + (x0[30]*x0[15])/(x0[16]*x0[16]-v1836426858) + (x0[31]*((1.)-x0[18]))/(v3303589013-x0[18]))*((v758672440>(0.))?sqrt(v758672440):std::complex<double>(0.,1.)*sqrt((-1.)*v758672440));
  auto v1474669829 = std::complex<double>(-0.,-1.)*v2488241434*((x0[26]*x0[4])/(x0[5]*x0[5]-v3037555099) + (x0[27]*x0[6])/(x0[7]*x0[7]-v3037555099) + (x0[28]*x0[9])/(x0[10]*x0[10]-v3037555099) + (x0[29]*x0[12])/(x0[13]*x0[13]-v3037555099) + (x0[30]*x0[15])/(x0[16]*x0[16]-v3037555099) + (x0[31]*((1.)-x0[18]))/(v3864776319-x0[18]))*((v1694853431>(0.))?sqrt(v1694853431):std::complex<double>(0.,1.)*sqrt((-1.)*v1694853431));
  auto v1452648461 = std::complex<double>(-0.,-1.)*v2488241434*((x0[20]*x0[4])/(x0[5]*x0[5]-v3037555099) + (x0[21]*x0[6])/(x0[7]*x0[7]-v3037555099) + (x0[22]*x0[9])/(x0[10]*x0[10]-v3037555099) + (x0[23]*x0[12])/(x0[13]*x0[13]-v3037555099) + (x0[24]*x0[15])/(x0[16]*x0[16]-v3037555099) + (x0[25]*((1.)-x0[18]))/(v3864776319-x0[18]))*((v1694853431>(0.))?sqrt(v1694853431):std::complex<double>(0.,1.)*sqrt((-1.)*v1694853431));
  auto v1304853663 = std::complex<double>(-0.,-1.)*v151048832*((x0[3]*x0[4])/(x0[5]*x0[5]-v1836426858) + (x0[0]*x0[6])/(x0[7]*x0[7]-v1836426858) + (x0[8]*x0[9])/(x0[10]*x0[10]-v1836426858) + (x0[11]*x0[12])/(x0[13]*x0[13]-v1836426858) + (x0[14]*x0[15])/(x0[16]*x0[16]-v1836426858) + (x0[17]*((1.)-x0[18]))/(v3303589013-x0[18]))*((v341659004>(0.))?sqrt(v341659004):std::complex<double>(0.,1.)*sqrt((-1.)*v341659004));
  auto v1258276323 = std::complex<double>(-0.,-1.)*v2488241434*((x0[20]*x0[4])/(x0[5]*x0[5]-v3037555099) + (x0[21]*x0[6])/(x0[7]*x0[7]-v3037555099) + (x0[22]*x0[9])/(x0[10]*x0[10]-v3037555099) + (x0[23]*x0[12])/(x0[13]*x0[13]-v3037555099) + (x0[24]*x0[15])/(x0[16]*x0[16]-v3037555099) + (x0[25]*((1.)-x0[18]))/(v3864776319-x0[18]))*((v3037555099>(1.))?((v3102009577>(0.))?sqrt(v3102009577):std::complex<double>(0.,1.)*sqrt((-1.)*v3102009577)):(0.00051) + (-0.01933)*v3037555099 + (0.13851)*v3037555099*v3037555099 + (-0.2084)*v3037555099*v3037555099*v3037555099 + (-0.29744)*v3037555099*v3037555099*v3037555099*v3037555099 + (0.13655)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099 + (1.07885)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099);
  auto v980854748 = std::complex<double>(-0.,-1.)*v2488241434*((x0[3]*x0[4])/(x0[5]*x0[5]-v3037555099) + (x0[0]*x0[6])/(x0[7]*x0[7]-v3037555099) + (x0[8]*x0[9])/(x0[10]*x0[10]-v3037555099) + (x0[11]*x0[12])/(x0[13]*x0[13]-v3037555099) + (x0[14]*x0[15])/(x0[16]*x0[16]-v3037555099) + (x0[17]*((1.)-x0[18]))/(v3864776319-x0[18]))*((v3789560610>(0.))?sqrt(v3789560610):std::complex<double>(0.,1.)*sqrt((-1.)*v3789560610));
  auto v910172329 = std::complex<double>(-0.,-1.)*v2488241434*((x0[3]*x0[4])/(x0[5]*x0[5]-v3037555099) + (x0[0]*x0[6])/(x0[7]*x0[7]-v3037555099) + (x0[8]*x0[9])/(x0[10]*x0[10]-v3037555099) + (x0[11]*x0[12])/(x0[13]*x0[13]-v3037555099) + (x0[14]*x0[15])/(x0[16]*x0[16]-v3037555099) + (x0[17]*((1.)-x0[18]))/(v3864776319-x0[18]))*((v1694853431>(0.))?sqrt(v1694853431):std::complex<double>(0.,1.)*sqrt((-1.)*v1694853431));
  auto v839072984 = std::complex<double>(-0.,-1.)*v151048832*((x0[32]*x0[4])/(x0[5]*x0[5]-v1836426858) + (x0[33]*x0[6])/(x0[7]*x0[7]-v1836426858) + (x0[34]*x0[9])/(x0[10]*x0[10]-v1836426858) + (x0[35]*x0[12])/(x0[13]*x0[13]-v1836426858) + (x0[36]*x0[15])/(x0[16]*x0[16]-v1836426858) + (x0[37]*((1.)-x0[18]))/(v3303589013-x0[18]))*((v341659004>(0.))?sqrt(v341659004):std::complex<double>(0.,1.)*sqrt((-1.)*v341659004));
  auto v255841663 = std::complex<double>(-0.,-1.)*v151048832*((x0[20]*x0[4])/(x0[5]*x0[5]-v1836426858) + (x0[21]*x0[6])/(x0[7]*x0[7]-v1836426858) + (x0[22]*x0[9])/(x0[10]*x0[10]-v1836426858) + (x0[23]*x0[12])/(x0[13]*x0[13]-v1836426858) + (x0[24]*x0[15])/(x0[16]*x0[16]-v1836426858) + (x0[25]*((1.)-x0[18]))/(v3303589013-x0[18]))*((v341659004>(0.))?sqrt(v341659004):std::complex<double>(0.,1.)*sqrt((-1.)*v341659004));
  auto v216360023 = std::complex<double>(-0.,-1.)*v151048832*((x0[26]*x0[4])/(x0[5]*x0[5]-v1836426858) + (x0[27]*x0[6])/(x0[7]*x0[7]-v1836426858) + (x0[28]*x0[9])/(x0[10]*x0[10]-v1836426858) + (x0[29]*x0[12])/(x0[13]*x0[13]-v1836426858) + (x0[30]*x0[15])/(x0[16]*x0[16]-v1836426858) + (x0[31]*((1.)-x0[18]))/(v3303589013-x0[18]))*((v341659004>(0.))?sqrt(v341659004):std::complex<double>(0.,1.)*sqrt((-1.)*v341659004));
  auto v111119486 = std::complex<double>(-0.,-1.)*v2488241434*((x0[32]*x0[4])/(x0[5]*x0[5]-v3037555099) + (x0[33]*x0[6])/(x0[7]*x0[7]-v3037555099) + (x0[34]*x0[9])/(x0[10]*x0[10]-v3037555099) + (x0[35]*x0[12])/(x0[13]*x0[13]-v3037555099) + (x0[36]*x0[15])/(x0[16]*x0[16]-v3037555099) + (x0[37]*((1.)-x0[18]))/(v3864776319-x0[18]))*((v21348587>(0.))?sqrt(v21348587):std::complex<double>(0.,1.)*sqrt((-1.)*v21348587));
  auto v3926831395 = (v1304853663*v1742329417)/(v3712237063);
  auto v3669473571 = (v1304853663*v3962953584)/(v3712237063);
  auto v3663942510 = (1.)-std::complex<double>(0.,1.)*v151048832*((x0[3]*x0[3])/(x0[5]*x0[5]-v1836426858) + (x0[0]*x0[0])/(x0[7]*x0[7]-v1836426858) + (x0[8]*x0[8])/(x0[10]*x0[10]-v1836426858) + (x0[11]*x0[11])/(x0[13]*x0[13]-v1836426858) + (x0[14]*x0[14])/(x0[16]*x0[16]-v1836426858))*((v3007036945>(0.))?sqrt(v3007036945):std::complex<double>(0.,1.)*sqrt((-1.)*v3007036945));
  auto v3627579820 = (-1.)*(v910172329)/(v2111851279);
  auto v3502841389 = (v910172329*v111119486)/(v2111851279);
  auto v3160618711 = (v255841663*v3926569162)/(v3712237063);
  auto v3135162689 = std::complex<double>(-0.,-1.)*v2488241434*((x0[32]*x0[3])/(x0[5]*x0[5]-v3037555099) + (x0[33]*x0[0])/(x0[7]*x0[7]-v3037555099) + (x0[34]*x0[8])/(x0[10]*x0[10]-v3037555099) + (x0[35]*x0[11])/(x0[13]*x0[13]-v3037555099) + (x0[36]*x0[14])/(x0[16]*x0[16]-v3037555099))*((v21348587>(0.))?sqrt(v21348587):std::complex<double>(0.,1.)*sqrt((-1.)*v21348587));
  auto v3099229930 = std::complex<double>(-0.,-1.)*v2488241434*((x0[26]*x0[3])/(x0[5]*x0[5]-v3037555099) + (x0[27]*x0[0])/(x0[7]*x0[7]-v3037555099) + (x0[28]*x0[8])/(x0[10]*x0[10]-v3037555099) + (x0[29]*x0[11])/(x0[13]*x0[13]-v3037555099) + (x0[30]*x0[14])/(x0[16]*x0[16]-v3037555099))*((v3789560610>(0.))?sqrt(v3789560610):std::complex<double>(0.,1.)*sqrt((-1.)*v3789560610));
  auto v2899208900 = std::complex<double>(-0.,-1.)*v2488241434*((x0[20]*x0[3])/(x0[5]*x0[5]-v3037555099) + (x0[21]*x0[0])/(x0[7]*x0[7]-v3037555099) + (x0[22]*x0[8])/(x0[10]*x0[10]-v3037555099) + (x0[23]*x0[11])/(x0[13]*x0[13]-v3037555099) + (x0[24]*x0[14])/(x0[16]*x0[16]-v3037555099))*((v3037555099>(1.))?((v3102009577>(0.))?sqrt(v3102009577):std::complex<double>(0.,1.)*sqrt((-1.)*v3102009577)):(0.00051) + (-0.01933)*v3037555099 + (0.13851)*v3037555099*v3037555099 + (-0.2084)*v3037555099*v3037555099*v3037555099 + (-0.29744)*v3037555099*v3037555099*v3037555099*v3037555099 + (0.13655)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099 + (1.07885)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099);
  auto v2844405163 = (v839072984*v3926569162)/(v3712237063);
  auto v2709668838 = (v216360023*v3926569162)/(v3712237063);
  auto v2690895429 = (v3926569162)/(v3712237063);
  auto v2487489657 = (v3215216564*v980854748)/(v2111851279);
  auto v2208466672 = std::complex<double>(-0.,-1.)*v2488241434*((x0[26]*x0[3])/(x0[5]*x0[5]-v3037555099) + (x0[27]*x0[0])/(x0[7]*x0[7]-v3037555099) + (x0[28]*x0[8])/(x0[10]*x0[10]-v3037555099) + (x0[29]*x0[11])/(x0[13]*x0[13]-v3037555099) + (x0[30]*x0[14])/(x0[16]*x0[16]-v3037555099))*((v359842611>(0.))?sqrt(v359842611):std::complex<double>(0.,1.)*sqrt((-1.)*v359842611));
  auto v2192947274 = std::complex<double>(-0.,-1.)*v2488241434*((x0[32]*x0[3])/(x0[5]*x0[5]-v3037555099) + (x0[33]*x0[0])/(x0[7]*x0[7]-v3037555099) + (x0[34]*x0[8])/(x0[10]*x0[10]-v3037555099) + (x0[35]*x0[11])/(x0[13]*x0[13]-v3037555099) + (x0[36]*x0[14])/(x0[16]*x0[16]-v3037555099))*((v3789560610>(0.))?sqrt(v3789560610):std::complex<double>(0.,1.)*sqrt((-1.)*v3789560610));
  auto v2076842653 = std::complex<double>(-0.,-1.)*v151048832*((x0[26]*x0[3])/(x0[5]*x0[5]-v1836426858) + (x0[27]*x0[0])/(x0[7]*x0[7]-v1836426858) + (x0[28]*x0[8])/(x0[10]*x0[10]-v1836426858) + (x0[29]*x0[11])/(x0[13]*x0[13]-v1836426858) + (x0[30]*x0[14])/(x0[16]*x0[16]-v1836426858))*((v758672440>(0.))?sqrt(v758672440):std::complex<double>(0.,1.)*sqrt((-1.)*v758672440));
  auto v2027797497 = std::complex<double>(-0.,-1.)*v2488241434*((x0[20]*x0[3])/(x0[5]*x0[5]-v3037555099) + (x0[21]*x0[0])/(x0[7]*x0[7]-v3037555099) + (x0[22]*x0[8])/(x0[10]*x0[10]-v3037555099) + (x0[23]*x0[11])/(x0[13]*x0[13]-v3037555099) + (x0[24]*x0[14])/(x0[16]*x0[16]-v3037555099))*((v3789560610>(0.))?sqrt(v3789560610):std::complex<double>(0.,1.)*sqrt((-1.)*v3789560610));
  auto v2014012967 = std::complex<double>(-0.,-1.)*v151048832*((x0[32]*x0[3])/(x0[5]*x0[5]-v1836426858) + (x0[33]*x0[0])/(x0[7]*x0[7]-v1836426858) + (x0[34]*x0[8])/(x0[10]*x0[10]-v1836426858) + (x0[35]*x0[11])/(x0[13]*x0[13]-v1836426858) + (x0[36]*x0[14])/(x0[16]*x0[16]-v1836426858))*((v3605892192>(0.))?sqrt(v3605892192):std::complex<double>(0.,1.)*sqrt((-1.)*v3605892192));
  auto v1498048574 = (v1304853663*v3926569162)/(v3712237063);
  auto v1490855688 = (v980854748)/(v2111851279);
  auto v1294182424 = (v910172329*v1258276323)/(v2111851279);
  auto v1211935458 = (v910172329*v980854748)/(v2111851279);
  auto v1136737173 = std::complex<double>(-0.,-1.)*v151048832*((x0[26]*x0[3])/(x0[5]*x0[5]-v1836426858) + (x0[27]*x0[0])/(x0[7]*x0[7]-v1836426858) + (x0[28]*x0[8])/(x0[10]*x0[10]-v1836426858) + (x0[29]*x0[11])/(x0[13]*x0[13]-v1836426858) + (x0[30]*x0[14])/(x0[16]*x0[16]-v1836426858))*((v3007036945>(0.))?sqrt(v3007036945):std::complex<double>(0.,1.)*sqrt((-1.)*v3007036945));
  auto v1134059584 = std::complex<double>(-0.,-1.)*v151048832*((x0[20]*x0[3])/(x0[5]*x0[5]-v1836426858) + (x0[21]*x0[0])/(x0[7]*x0[7]-v1836426858) + (x0[22]*x0[8])/(x0[10]*x0[10]-v1836426858) + (x0[23]*x0[11])/(x0[13]*x0[13]-v1836426858) + (x0[24]*x0[14])/(x0[16]*x0[16]-v1836426858))*((v1836426858>(1.))?((v2840245930>(0.))?sqrt(v2840245930):std::complex<double>(0.,1.)*sqrt((-1.)*v2840245930)):(0.00051) + (-0.01933)*v1836426858 + (0.13851)*v1836426858*v1836426858 + (-0.2084)*v1836426858*v1836426858*v1836426858 + (-0.29744)*v1836426858*v1836426858*v1836426858*v1836426858 + (0.13655)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858 + (1.07885)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858);
  auto v1110707043 = (v910172329*v1955258502)/(v2111851279);
  auto v1048734754 = (v1474669829*v980854748)/(v2111851279);
  auto v924437421 = std::complex<double>(-0.,-1.)*v151048832*((x0[32]*x0[3])/(x0[5]*x0[5]-v1836426858) + (x0[33]*x0[0])/(x0[7]*x0[7]-v1836426858) + (x0[34]*x0[8])/(x0[10]*x0[10]-v1836426858) + (x0[35]*x0[11])/(x0[13]*x0[13]-v1836426858) + (x0[36]*x0[14])/(x0[16]*x0[16]-v1836426858))*((v3007036945>(0.))?sqrt(v3007036945):std::complex<double>(0.,1.)*sqrt((-1.)*v3007036945));
  auto v888290467 = (1.)-std::complex<double>(0.,1.)*v2488241434*((x0[3]*x0[3])/(x0[5]*x0[5]-v3037555099) + (x0[0]*x0[0])/(x0[7]*x0[7]-v3037555099) + (x0[8]*x0[8])/(x0[10]*x0[10]-v3037555099) + (x0[11]*x0[11])/(x0[13]*x0[13]-v3037555099) + (x0[14]*x0[14])/(x0[16]*x0[16]-v3037555099))*((v3789560610>(0.))?sqrt(v3789560610):std::complex<double>(0.,1.)*sqrt((-1.)*v3789560610));
  auto v749074938 = std::complex<double>(-0.,-1.)*v151048832*((x0[20]*x0[3])/(x0[5]*x0[5]-v1836426858) + (x0[21]*x0[0])/(x0[7]*x0[7]-v1836426858) + (x0[22]*x0[8])/(x0[10]*x0[10]-v1836426858) + (x0[23]*x0[11])/(x0[13]*x0[13]-v1836426858) + (x0[24]*x0[14])/(x0[16]*x0[16]-v1836426858))*((v3007036945>(0.))?sqrt(v3007036945):std::complex<double>(0.,1.)*sqrt((-1.)*v3007036945));
  auto v498030113 = (v1452648461*v980854748)/(v2111851279);
  auto v251409423 = (v1304853663*v1636750592)/(v3712237063);
  auto v173793696 = (-1.)*(v1304853663)/(v3712237063);
  auto v3978116468 = (v1452648461*v1258276323)/(v2111851279) + ((v2899208900-v1294182424)*(v2027797497-v498030113))/(v888290467-v1211935458);
  auto v3892543554 = std::complex<double>(-0.,-1.)*v2488241434*((x0[26]*x0[20])/(x0[5]*x0[5]-v3037555099) + (x0[27]*x0[21])/(x0[7]*x0[7]-v3037555099) + (x0[28]*x0[22])/(x0[10]*x0[10]-v3037555099) + (x0[29]*x0[23])/(x0[13]*x0[13]-v3037555099) + (x0[30]*x0[24])/(x0[16]*x0[16]-v3037555099))*((v3037555099>(1.))?((v3102009577>(0.))?sqrt(v3102009577):std::complex<double>(0.,1.)*sqrt((-1.)*v3102009577)):(0.00051) + (-0.01933)*v3037555099 + (0.13851)*v3037555099*v3037555099 + (-0.2084)*v3037555099*v3037555099*v3037555099 + (-0.29744)*v3037555099*v3037555099*v3037555099*v3037555099 + (0.13655)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099 + (1.07885)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099);
  auto v3493176212 = (1.)-std::complex<double>(0.,1.)*v2488241434*((x0[20]*x0[20])/(x0[5]*x0[5]-v3037555099) + (x0[21]*x0[21])/(x0[7]*x0[7]-v3037555099) + (x0[22]*x0[22])/(x0[10]*x0[10]-v3037555099) + (x0[23]*x0[23])/(x0[13]*x0[13]-v3037555099) + (x0[24]*x0[24])/(x0[16]*x0[16]-v3037555099))*((v3037555099>(1.))?((v3102009577>(0.))?sqrt(v3102009577):std::complex<double>(0.,1.)*sqrt((-1.)*v3102009577)):(0.00051) + (-0.01933)*v3037555099 + (0.13851)*v3037555099*v3037555099 + (-0.2084)*v3037555099*v3037555099*v3037555099 + (-0.29744)*v3037555099*v3037555099*v3037555099*v3037555099 + (0.13655)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099 + (1.07885)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099);
  auto v3299038154 = std::complex<double>(-0.,-1.)*v151048832*((x0[26]*x0[20])/(x0[5]*x0[5]-v1836426858) + (x0[27]*x0[21])/(x0[7]*x0[7]-v1836426858) + (x0[28]*x0[22])/(x0[10]*x0[10]-v1836426858) + (x0[29]*x0[23])/(x0[13]*x0[13]-v1836426858) + (x0[30]*x0[24])/(x0[16]*x0[16]-v1836426858))*((v1836426858>(1.))?((v2840245930>(0.))?sqrt(v2840245930):std::complex<double>(0.,1.)*sqrt((-1.)*v2840245930)):(0.00051) + (-0.01933)*v1836426858 + (0.13851)*v1836426858*v1836426858 + (-0.2084)*v1836426858*v1836426858*v1836426858 + (-0.29744)*v1836426858*v1836426858*v1836426858*v1836426858 + (0.13655)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858 + (1.07885)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858);
  auto v3280766624 = std::complex<double>(-0.,-1.)*v2488241434*((x0[32]*x0[20])/(x0[5]*x0[5]-v3037555099) + (x0[33]*x0[21])/(x0[7]*x0[7]-v3037555099) + (x0[34]*x0[22])/(x0[10]*x0[10]-v3037555099) + (x0[35]*x0[23])/(x0[13]*x0[13]-v3037555099) + (x0[36]*x0[24])/(x0[16]*x0[16]-v3037555099))*((v21348587>(0.))?sqrt(v21348587):std::complex<double>(0.,1.)*sqrt((-1.)*v21348587));
  auto v3220637740 = (v1452648461*v111119486)/(v2111851279) + ((v3135162689-v3502841389)*(v2027797497-v498030113))/(v888290467-v1211935458);
  auto v2950282091 = (-1.)*(v255841663)/(v3712237063)-(v173793696*(v749074938-v3160618711))/(v3663942510-v1498048574);
  auto v2917366501 = (-1.)*(v2027797497-v498030113)/(v888290467-v1211935458);
  auto v2742420170 = std::complex<double>(-0.,-1.)*v2488241434*((x0[32]*x0[20])/(x0[5]*x0[5]-v3037555099) + (x0[33]*x0[21])/(x0[7]*x0[7]-v3037555099) + (x0[34]*x0[22])/(x0[10]*x0[10]-v3037555099) + (x0[35]*x0[23])/(x0[13]*x0[13]-v3037555099) + (x0[36]*x0[24])/(x0[16]*x0[16]-v3037555099))*((v3037555099>(1.))?((v3102009577>(0.))?sqrt(v3102009577):std::complex<double>(0.,1.)*sqrt((-1.)*v3102009577)):(0.00051) + (-0.01933)*v3037555099 + (0.13851)*v3037555099*v3037555099 + (-0.2084)*v3037555099*v3037555099*v3037555099 + (-0.29744)*v3037555099*v3037555099*v3037555099*v3037555099 + (0.13655)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099 + (1.07885)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099);
  auto v2530270390 = (v255841663*v1742329417)/(v3712237063) + ((v2014012967-v3926831395)*(v749074938-v3160618711))/(v3663942510-v1498048574);
  auto v2458863037 = (-1.)*(v1452648461)/(v2111851279)-(v3627579820*(v2027797497-v498030113))/(v888290467-v1211935458);
  auto v2440228578 = std::complex<double>(-0.,-1.)*v151048832*((x0[26]*x0[20])/(x0[5]*x0[5]-v1836426858) + (x0[27]*x0[21])/(x0[7]*x0[7]-v1836426858) + (x0[28]*x0[22])/(x0[10]*x0[10]-v1836426858) + (x0[29]*x0[23])/(x0[13]*x0[13]-v1836426858) + (x0[30]*x0[24])/(x0[16]*x0[16]-v1836426858))*((v758672440>(0.))?sqrt(v758672440):std::complex<double>(0.,1.)*sqrt((-1.)*v758672440));
  auto v2392666732 = (v3962953584)/(v3712237063) + ((-1.)*v2690895429*(v1134059584-v3669473571))/(v3663942510-v1498048574);
  auto v2156539190 = (v3215216564*v1258276323)/(v2111851279) + ((v2899208900-v1294182424)*(v2192947274-v2487489657))/(v888290467-v1211935458);
  auto v2066788000 = (v1452648461*v1955258502)/(v2111851279) + ((v2208466672-v1110707043)*(v2027797497-v498030113))/(v888290467-v1211935458);
  auto v1789810775 = std::complex<double>(-0.,-1.)*v2488241434*((x0[26]*x0[20])/(x0[5]*x0[5]-v3037555099) + (x0[27]*x0[21])/(x0[7]*x0[7]-v3037555099) + (x0[28]*x0[22])/(x0[10]*x0[10]-v3037555099) + (x0[29]*x0[23])/(x0[13]*x0[13]-v3037555099) + (x0[30]*x0[24])/(x0[16]*x0[16]-v3037555099))*((v359842611>(0.))?sqrt(v359842611):std::complex<double>(0.,1.)*sqrt((-1.)*v359842611));
  auto v1671733403 = (v1474669829*v1258276323)/(v2111851279) + ((v2899208900-v1294182424)*(v3099229930-v1048734754))/(v888290467-v1211935458);
  auto v1629269660 = (v255841663*v1636750592)/(v3712237063) + ((v2076842653-v251409423)*(v749074938-v3160618711))/(v3663942510-v1498048574);
  auto v1265640608 = (v216360023*v3962953584)/(v3712237063) + ((v1134059584-v3669473571)*(v1136737173-v2709668838))/(v3663942510-v1498048574);
  auto v1262807297 = (-1.)*(v749074938-v3160618711)/(v3663942510-v1498048574);
  auto v1228363810 = std::complex<double>(-0.,-1.)*v151048832*((x0[32]*x0[20])/(x0[5]*x0[5]-v1836426858) + (x0[33]*x0[21])/(x0[7]*x0[7]-v1836426858) + (x0[34]*x0[22])/(x0[10]*x0[10]-v1836426858) + (x0[35]*x0[23])/(x0[13]*x0[13]-v1836426858) + (x0[36]*x0[24])/(x0[16]*x0[16]-v1836426858))*((v1836426858>(1.))?((v2840245930>(0.))?sqrt(v2840245930):std::complex<double>(0.,1.)*sqrt((-1.)*v2840245930)):(0.00051) + (-0.01933)*v1836426858 + (0.13851)*v1836426858*v1836426858 + (-0.2084)*v1836426858*v1836426858*v1836426858 + (-0.29744)*v1836426858*v1836426858*v1836426858*v1836426858 + (0.13655)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858 + (1.07885)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858);
  auto v916138054 = (1.)-std::complex<double>(0.,1.)*v151048832*((x0[20]*x0[20])/(x0[5]*x0[5]-v1836426858) + (x0[21]*x0[21])/(x0[7]*x0[7]-v1836426858) + (x0[22]*x0[22])/(x0[10]*x0[10]-v1836426858) + (x0[23]*x0[23])/(x0[13]*x0[13]-v1836426858) + (x0[24]*x0[24])/(x0[16]*x0[16]-v1836426858))*((v1836426858>(1.))?((v2840245930>(0.))?sqrt(v2840245930):std::complex<double>(0.,1.)*sqrt((-1.)*v2840245930)):(0.00051) + (-0.01933)*v1836426858 + (0.13851)*v1836426858*v1836426858 + (-0.2084)*v1836426858*v1836426858*v1836426858 + (-0.29744)*v1836426858*v1836426858*v1836426858*v1836426858 + (0.13655)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858 + (1.07885)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858);
  auto v757347508 = (v839072984*v3962953584)/(v3712237063) + ((v1134059584-v3669473571)*(v924437421-v2844405163))/(v3663942510-v1498048574);
  auto v732589286 = sqrt((0.243717) + x1[0]*x1[0] + x1[1]*x1[1] + x1[2]*x1[2]);
  auto v178886646 = (v255841663*v3962953584)/(v3712237063) + ((v1134059584-v3669473571)*(v749074938-v3160618711))/(v3663942510-v1498048574);
  auto v64939503 = (v1258276323)/(v2111851279) + ((-1.)*v1490855688*(v2899208900-v1294182424))/(v888290467-v1211935458);
  auto v63877246 = std::complex<double>(-0.,-1.)*v151048832*((x0[32]*x0[20])/(x0[5]*x0[5]-v1836426858) + (x0[33]*x0[21])/(x0[7]*x0[7]-v1836426858) + (x0[34]*x0[22])/(x0[10]*x0[10]-v1836426858) + (x0[35]*x0[23])/(x0[13]*x0[13]-v1836426858) + (x0[36]*x0[24])/(x0[16]*x0[16]-v1836426858))*((v3605892192>(0.))?sqrt(v3605892192):std::complex<double>(0.,1.)*sqrt((-1.)*v3605892192));
  auto v4156259701 = std::complex<double>(-0.,-1.)*v151048832*((x0[32]*x0[26])/(x0[5]*x0[5]-v1836426858) + (x0[33]*x0[27])/(x0[7]*x0[7]-v1836426858) + (x0[34]*x0[28])/(x0[10]*x0[10]-v1836426858) + (x0[35]*x0[29])/(x0[13]*x0[13]-v1836426858) + (x0[36]*x0[30])/(x0[16]*x0[16]-v1836426858))*((v3605892192>(0.))?sqrt(v3605892192):std::complex<double>(0.,1.)*sqrt((-1.)*v3605892192));
  auto v3704780237 = (-1.)*(v1474669829)/(v2111851279)-(v3627579820*(v3099229930-v1048734754))/(v888290467-v1211935458)-(v2458863037*(v3892543554-v1671733403))/(v3493176212-v3978116468);
  auto v3238823049 = (-1.)*(v216360023)/(v3712237063)-(v173793696*(v1136737173-v2709668838))/(v3663942510-v1498048574)-(v2950282091*(v3299038154-v1265640608))/(v916138054-v178886646);
  auto v3164937482 = (-1.)*(v3099229930-v1048734754)/(v888290467-v1211935458)-(v2917366501*(v3892543554-v1671733403))/(v3493176212-v3978116468);
  auto v3011080712 = (-1.)*(v1136737173-v2709668838)/(v3663942510-v1498048574)-(v1262807297*(v3299038154-v1265640608))/(v916138054-v178886646);
  auto v2997081019 = (-1.)*(v3892543554-v1671733403)/(v3493176212-v3978116468);
  auto v2772160503 = std::complex<double>(-0.,-1.)*v151048832*((x0[32]*x0[26])/(x0[5]*x0[5]-v1836426858) + (x0[33]*x0[27])/(x0[7]*x0[7]-v1836426858) + (x0[34]*x0[28])/(x0[10]*x0[10]-v1836426858) + (x0[35]*x0[29])/(x0[13]*x0[13]-v1836426858) + (x0[36]*x0[30])/(x0[16]*x0[16]-v1836426858))*((v758672440>(0.))?sqrt(v758672440):std::complex<double>(0.,1.)*sqrt((-1.)*v758672440));
  auto v2635961706 = std::complex<double>(-0.,-1.)*v2488241434*((x0[32]*x0[26])/(x0[5]*x0[5]-v3037555099) + (x0[33]*x0[27])/(x0[7]*x0[7]-v3037555099) + (x0[34]*x0[28])/(x0[10]*x0[10]-v3037555099) + (x0[35]*x0[29])/(x0[13]*x0[13]-v3037555099) + (x0[36]*x0[30])/(x0[16]*x0[16]-v3037555099))*((v359842611>(0.))?sqrt(v359842611):std::complex<double>(0.,1.)*sqrt((-1.)*v359842611));
  auto v2541664477 = (v216360023*v1636750592)/(v3712237063) + ((v2076842653-v251409423)*(v1136737173-v2709668838))/(v3663942510-v1498048574) + ((v2440228578-v1629269660)*(v3299038154-v1265640608))/(v916138054-v178886646);
  auto v2476164519 = std::complex<double>(-0.,-1.)*v2488241434*((x0[32]*x0[26])/(x0[5]*x0[5]-v3037555099) + (x0[33]*x0[27])/(x0[7]*x0[7]-v3037555099) + (x0[34]*x0[28])/(x0[10]*x0[10]-v3037555099) + (x0[35]*x0[29])/(x0[13]*x0[13]-v3037555099) + (x0[36]*x0[30])/(x0[16]*x0[16]-v3037555099))*((v21348587>(0.))?sqrt(v21348587):std::complex<double>(0.,1.)*sqrt((-1.)*v21348587));
  auto v2418357392 = (v1636750592)/(v3712237063) + ((-1.)*v2690895429*(v2076842653-v251409423))/(v3663942510-v1498048574) + ((-1.)*v2392666732*(v2440228578-v1629269660))/(v916138054-v178886646);
  auto v1562520267 = (1.)-std::complex<double>(0.,1.)*v2488241434*((x0[26]*x0[26])/(x0[5]*x0[5]-v3037555099) + (x0[27]*x0[27])/(x0[7]*x0[7]-v3037555099) + (x0[28]*x0[28])/(x0[10]*x0[10]-v3037555099) + (x0[29]*x0[29])/(x0[13]*x0[13]-v3037555099) + (x0[30]*x0[30])/(x0[16]*x0[16]-v3037555099))*((v359842611>(0.))?sqrt(v359842611):std::complex<double>(0.,1.)*sqrt((-1.)*v359842611));
  auto v1521070335 = (-1.)*(x1[2] + x1[10])*(x1[2] + x1[10]) + (v732589286 + v604511646)*(v732589286 + v604511646) + (-1.)*(x1[1] + x1[9])*(x1[1] + x1[9]) + (-1.)*(x1[0] + x1[8])*(x1[0] + x1[8]);
  auto v1477661232 = (v216360023*v1742329417)/(v3712237063) + ((v2014012967-v3926831395)*(v1136737173-v2709668838))/(v3663942510-v1498048574) + ((v63877246-v2530270390)*(v3299038154-v1265640608))/(v916138054-v178886646);
  auto v1466574160 = (v1474669829*v1955258502)/(v2111851279) + ((v2208466672-v1110707043)*(v3099229930-v1048734754))/(v888290467-v1211935458) + ((v1789810775-v2066788000)*(v3892543554-v1671733403))/(v3493176212-v3978116468);
  auto v1444062950 = (-1.)*(v3299038154-v1265640608)/(v916138054-v178886646);
  auto v1333463548 = (1.)-std::complex<double>(0.,1.)*v151048832*((x0[26]*x0[26])/(x0[5]*x0[5]-v1836426858) + (x0[27]*x0[27])/(x0[7]*x0[7]-v1836426858) + (x0[28]*x0[28])/(x0[10]*x0[10]-v1836426858) + (x0[29]*x0[29])/(x0[13]*x0[13]-v1836426858) + (x0[30]*x0[30])/(x0[16]*x0[16]-v1836426858))*((v758672440>(0.))?sqrt(v758672440):std::complex<double>(0.,1.)*sqrt((-1.)*v758672440));
  auto v1139362541 = (-1.)*(x1[2] + x1[6])*(x1[2] + x1[6]) + (v732589286 + v2683369444)*(v732589286 + v2683369444) + (-1.)*(x1[1] + x1[5])*(x1[1] + x1[5]) + (-1.)*(x1[0] + x1[4])*(x1[0] + x1[4]);
  auto v1080901134 = (v1474669829*v111119486)/(v2111851279) + ((v3135162689-v3502841389)*(v3099229930-v1048734754))/(v888290467-v1211935458) + ((v3280766624-v3220637740)*(v3892543554-v1671733403))/(v3493176212-v3978116468);
  auto v1000633181 = (v1955258502)/(v2111851279) + ((-1.)*v1490855688*(v2208466672-v1110707043))/(v888290467-v1211935458) + ((-1.)*v64939503*(v1789810775-v2066788000))/(v3493176212-v3978116468);
  auto v395958503 = (v839072984*v1636750592)/(v3712237063) + ((v2076842653-v251409423)*(v924437421-v2844405163))/(v3663942510-v1498048574) + ((v2440228578-v1629269660)*(v1228363810-v757347508))/(v916138054-v178886646);
  auto v281711840 = (v3215216564*v1955258502)/(v2111851279) + ((v2208466672-v1110707043)*(v2192947274-v2487489657))/(v888290467-v1211935458) + ((v1789810775-v2066788000)*(v2742420170-v2156539190))/(v3493176212-v3978116468);
  auto v4247864182 = (v111119486)/(v2111851279) + ((-1.)*v1490855688*(v3135162689-v3502841389))/(v888290467-v1211935458) + ((-1.)*v64939503*(v3280766624-v3220637740))/(v3493176212-v3978116468) + ((-1.)*v1000633181*(v2476164519-v1080901134))/(v1562520267-v1466574160);
  auto v4174506558 = (1.)-std::complex<double>(0.,1.)*v151048832*((x0[32]*x0[32])/(x0[5]*x0[5]-v1836426858) + (x0[33]*x0[33])/(x0[7]*x0[7]-v1836426858) + (x0[34]*x0[34])/(x0[10]*x0[10]-v1836426858) + (x0[35]*x0[35])/(x0[13]*x0[13]-v1836426858) + (x0[36]*x0[36])/(x0[16]*x0[16]-v1836426858))*((v3605892192>(0.))?sqrt(v3605892192):std::complex<double>(0.,1.)*sqrt((-1.)*v3605892192));
  auto v3634940496 = ((1.)-((0.125392))/(v1139362541))*((1.)-((0.401002))/(v1139362541));
  auto v3463903834 = (-1.)*(v2192947274-v2487489657)/(v888290467-v1211935458)-(v2917366501*(v2742420170-v2156539190))/(v3493176212-v3978116468)-(v3164937482*(v2635961706-v281711840))/(v1562520267-v1466574160);
  auto v3154148802 = (1.)-std::complex<double>(0.,1.)*v2488241434*((x0[32]*x0[32])/(x0[5]*x0[5]-v3037555099) + (x0[33]*x0[33])/(x0[7]*x0[7]-v3037555099) + (x0[34]*x0[34])/(x0[10]*x0[10]-v3037555099) + (x0[35]*x0[35])/(x0[13]*x0[13]-v3037555099) + (x0[36]*x0[36])/(x0[16]*x0[16]-v3037555099))*((v21348587>(0.))?sqrt(v21348587):std::complex<double>(0.,1.)*sqrt((-1.)*v21348587));
  auto v3057249796 = (-1.)*(v839072984)/(v3712237063)-(v173793696*(v924437421-v2844405163))/(v3663942510-v1498048574)-(v2950282091*(v1228363810-v757347508))/(v916138054-v178886646)-(v3238823049*(v2772160503-v395958503))/(v1333463548-v2541664477);
  auto v3037329070 = (-1.)*(v2635961706-v281711840)/(v1562520267-v1466574160);
  auto v2955496159 = ((1.)-((0.21528))/(v1139362541))*((1.)-((2.106379))/(v1139362541));
  auto v2269855808 = (-1.)*(v3215216564)/(v2111851279)-(v3627579820*(v2192947274-v2487489657))/(v888290467-v1211935458)-(v2458863037*(v2742420170-v2156539190))/(v3493176212-v3978116468)-(v3704780237*(v2635961706-v281711840))/(v1562520267-v1466574160);
  auto v2246649186 = (v1742329417)/(v3712237063) + ((-1.)*v2690895429*(v2014012967-v3926831395))/(v3663942510-v1498048574) + ((-1.)*v2392666732*(v63877246-v2530270390))/(v916138054-v178886646) + ((-1.)*v2418357392*(v4156259701-v1477661232))/(v1333463548-v2541664477);
  auto v2077084972 = ((1.)-((0.125392))/(v1521070335))*((1.)-((0.401002))/(v1521070335));
  auto v1979851558 = (-1.)*(v1228363810-v757347508)/(v916138054-v178886646)-(v1444062950*(v2772160503-v395958503))/(v1333463548-v2541664477);
  auto v1784760416 = (v3215216564*v111119486)/(v2111851279) + ((v3135162689-v3502841389)*(v2192947274-v2487489657))/(v888290467-v1211935458) + ((v3280766624-v3220637740)*(v2742420170-v2156539190))/(v3493176212-v3978116468) + ((v2476164519-v1080901134)*(v2635961706-v281711840))/(v1562520267-v1466574160);
  auto v1453132239 = ((1.)-((0.21528))/(v1521070335))*((1.)-((2.106379))/(v1521070335));
  auto v1230061197 = (-1.)*(v924437421-v2844405163)/(v3663942510-v1498048574)-(v1262807297*(v1228363810-v757347508))/(v916138054-v178886646)-(v3011080712*(v2772160503-v395958503))/(v1333463548-v2541664477);
  auto v1042423297 = (-1.)*(v2772160503-v395958503)/(v1333463548-v2541664477);
  auto v557166818 = (v839072984*v1742329417)/(v3712237063) + ((v2014012967-v3926831395)*(v924437421-v2844405163))/(v3663942510-v1498048574) + ((v63877246-v2530270390)*(v1228363810-v757347508))/(v916138054-v178886646) + ((v4156259701-v1477661232)*(v2772160503-v395958503))/(v1333463548-v2541664477);
  auto v444835816 = (-1.)*(v2742420170-v2156539190)/(v3493176212-v3978116468)-(v2997081019*(v2635961706-v281711840))/(v1562520267-v1466574160);
  auto v3846702106 = (x0[0]*(((-1.)*v2690895429)/(v3663942510-v1498048574) + ((-1.)*v2392666732*v1262807297)/(v916138054-v178886646) + ((-1.)*v2418357392*v3011080712)/(v1333463548-v2541664477) + ((-1.)*v2246649186*v1230061197)/(v4174506558-v557166818)) + x0[6]*(((1.))/(v3712237063) + ((-1.)*v2690895429*v173793696)/(v3663942510-v1498048574) + ((-1.)*v2392666732*v2950282091)/(v916138054-v178886646) + ((-1.)*v2418357392*v3238823049)/(v1333463548-v2541664477) + ((-1.)*v2246649186*v3057249796)/(v4174506558-v557166818)) + x0[21]*(((-1.)*v2392666732)/(v916138054-v178886646) + ((-1.)*v2418357392*v1444062950)/(v1333463548-v2541664477) + ((-1.)*v2246649186*v1979851558)/(v4174506558-v557166818)) + x0[27]*(((-1.)*v2418357392)/(v1333463548-v2541664477) + ((-1.)*v2246649186*v1042423297)/(v4174506558-v557166818)) + ((-1.)*v2246649186*x0[33])/(v4174506558-v557166818))/(x0[7]*x0[7]-v1836426858);
  auto v2325087427 = ((3.799438)*(v1521070335-(0.23))*(((0.096547))/((1.7919)-v1521070335) + (0.79299) + (-0.15099)*((3.799438)*v1521070335-(1.)) + (0.00811)*((3.799438)*v1521070335-(1.))*((3.799438)*v1521070335-(1.)))-std::complex<double>(0.,1.)*((v1453132239>(0.))?sqrt(v1453132239):std::complex<double>(0.,1.)*sqrt((-1.)*v1453132239))*((3.799438)*(v1521070335-(0.23))*(((0.096547))/((1.7919)-v1521070335) + (0.79299) + (-0.15099)*((3.799438)*v1521070335-(1.)) + (0.00811)*((3.799438)*v1521070335-(1.))*((3.799438)*v1521070335-(1.)))*(3.799438)*(v1521070335-(0.23))*(((0.00054))/((1.7919)-v1521070335) + (0.17054) + (-0.0219)*((3.799438)*v1521070335-(1.)) + (0.000857)*((3.799438)*v1521070335-(1.))*((3.799438)*v1521070335-(1.)))-(3.799438)*(v1521070335-(0.23))*(((-0.007218))/((1.7919)-v1521070335) + (0.1504) + (-0.038266)*((3.799438)*v1521070335-(1.)) + (0.00226)*((3.799438)*v1521070335-(1.))*((3.799438)*v1521070335-(1.)))*(3.799438)*(v1521070335-(0.23))*(((-0.007218))/((1.7919)-v1521070335) + (0.1504) + (-0.038266)*((3.799438)*v1521070335-(1.)) + (0.00226)*((3.799438)*v1521070335-(1.))*((3.799438)*v1521070335-(1.)))))/((1.)-((v2077084972>(0.))?sqrt(v2077084972):std::complex<double>(0.,1.)*sqrt((-1.)*v2077084972))*((v1453132239>(0.))?sqrt(v1453132239):std::complex<double>(0.,1.)*sqrt((-1.)*v1453132239))*((3.799438)*(v1521070335-(0.23))*(((0.096547))/((1.7919)-v1521070335) + (0.79299) + (-0.15099)*((3.799438)*v1521070335-(1.)) + (0.00811)*((3.799438)*v1521070335-(1.))*((3.799438)*v1521070335-(1.)))*(3.799438)*(v1521070335-(0.23))*(((0.00054))/((1.7919)-v1521070335) + (0.17054) + (-0.0219)*((3.799438)*v1521070335-(1.)) + (0.000857)*((3.799438)*v1521070335-(1.))*((3.799438)*v1521070335-(1.)))-(3.799438)*(v1521070335-(0.23))*(((-0.007218))/((1.7919)-v1521070335) + (0.1504) + (-0.038266)*((3.799438)*v1521070335-(1.)) + (0.00226)*((3.799438)*v1521070335-(1.))*((3.799438)*v1521070335-(1.)))*(3.799438)*(v1521070335-(0.23))*(((-0.007218))/((1.7919)-v1521070335) + (0.1504) + (-0.038266)*((3.799438)*v1521070335-(1.)) + (0.00226)*((3.799438)*v1521070335-(1.))*((3.799438)*v1521070335-(1.))))-std::complex<double>(0.,1.)*(((v1453132239>(0.))?sqrt(v1453132239):std::complex<double>(0.,1.)*sqrt((-1.)*v1453132239))*(3.799438)*(v1521070335-(0.23))*(((0.00054))/((1.7919)-v1521070335) + (0.17054) + (-0.0219)*((3.799438)*v1521070335-(1.)) + (0.000857)*((3.799438)*v1521070335-(1.))*((3.799438)*v1521070335-(1.))) + ((v2077084972>(0.))?sqrt(v2077084972):std::complex<double>(0.,1.)*sqrt((-1.)*v2077084972))*(3.799438)*(v1521070335-(0.23))*(((0.096547))/((1.7919)-v1521070335) + (0.79299) + (-0.15099)*((3.799438)*v1521070335-(1.)) + (0.00811)*((3.799438)*v1521070335-(1.))*((3.799438)*v1521070335-(1.)))));
  auto v1802362592 = (x0[0]*(((-1.)*v1490855688)/(v888290467-v1211935458) + ((-1.)*v64939503*v2917366501)/(v3493176212-v3978116468) + ((-1.)*v1000633181*v3164937482)/(v1562520267-v1466574160) + ((-1.)*v4247864182*v3463903834)/(v3154148802-v1784760416)) + x0[6]*(((1.))/(v2111851279) + ((-1.)*v1490855688*v3627579820)/(v888290467-v1211935458) + ((-1.)*v64939503*v2458863037)/(v3493176212-v3978116468) + ((-1.)*v1000633181*v3704780237)/(v1562520267-v1466574160) + ((-1.)*v4247864182*v2269855808)/(v3154148802-v1784760416)) + x0[21]*(((-1.)*v64939503)/(v3493176212-v3978116468) + ((-1.)*v1000633181*v2997081019)/(v1562520267-v1466574160) + ((-1.)*v4247864182*v444835816)/(v3154148802-v1784760416)) + x0[27]*(((-1.)*v1000633181)/(v1562520267-v1466574160) + ((-1.)*v4247864182*v3037329070)/(v3154148802-v1784760416)) + ((-1.)*v4247864182*x0[33])/(v3154148802-v1784760416))/(x0[7]*x0[7]-v3037555099);
  auto v1119554543 = ((3.799438)*(v1139362541-(0.23))*(((0.096547))/((1.7919)-v1139362541) + (0.79299) + (-0.15099)*((3.799438)*v1139362541-(1.)) + (0.00811)*((3.799438)*v1139362541-(1.))*((3.799438)*v1139362541-(1.)))-std::complex<double>(0.,1.)*((v2955496159>(0.))?sqrt(v2955496159):std::complex<double>(0.,1.)*sqrt((-1.)*v2955496159))*((3.799438)*(v1139362541-(0.23))*(((0.096547))/((1.7919)-v1139362541) + (0.79299) + (-0.15099)*((3.799438)*v1139362541-(1.)) + (0.00811)*((3.799438)*v1139362541-(1.))*((3.799438)*v1139362541-(1.)))*(3.799438)*(v1139362541-(0.23))*(((0.00054))/((1.7919)-v1139362541) + (0.17054) + (-0.0219)*((3.799438)*v1139362541-(1.)) + (0.000857)*((3.799438)*v1139362541-(1.))*((3.799438)*v1139362541-(1.)))-(3.799438)*(v1139362541-(0.23))*(((-0.007218))/((1.7919)-v1139362541) + (0.1504) + (-0.038266)*((3.799438)*v1139362541-(1.)) + (0.00226)*((3.799438)*v1139362541-(1.))*((3.799438)*v1139362541-(1.)))*(3.799438)*(v1139362541-(0.23))*(((-0.007218))/((1.7919)-v1139362541) + (0.1504) + (-0.038266)*((3.799438)*v1139362541-(1.)) + (0.00226)*((3.799438)*v1139362541-(1.))*((3.799438)*v1139362541-(1.)))))/((1.)-((v3634940496>(0.))?sqrt(v3634940496):std::complex<double>(0.,1.)*sqrt((-1.)*v3634940496))*((v2955496159>(0.))?sqrt(v2955496159):std::complex<double>(0.,1.)*sqrt((-1.)*v2955496159))*((3.799438)*(v1139362541-(0.23))*(((0.096547))/((1.7919)-v1139362541) + (0.79299) + (-0.15099)*((3.799438)*v1139362541-(1.)) + (0.00811)*((3.799438)*v1139362541-(1.))*((3.799438)*v1139362541-(1.)))*(3.799438)*(v1139362541-(0.23))*(((0.00054))/((1.7919)-v1139362541) + (0.17054) + (-0.0219)*((3.799438)*v1139362541-(1.)) + (0.000857)*((3.799438)*v1139362541-(1.))*((3.799438)*v1139362541-(1.)))-(3.799438)*(v1139362541-(0.23))*(((-0.007218))/((1.7919)-v1139362541) + (0.1504) + (-0.038266)*((3.799438)*v1139362541-(1.)) + (0.00226)*((3.799438)*v1139362541-(1.))*((3.799438)*v1139362541-(1.)))*(3.799438)*(v1139362541-(0.23))*(((-0.007218))/((1.7919)-v1139362541) + (0.1504) + (-0.038266)*((3.799438)*v1139362541-(1.)) + (0.00226)*((3.799438)*v1139362541-(1.))*((3.799438)*v1139362541-(1.))))-std::complex<double>(0.,1.)*(((v2955496159>(0.))?sqrt(v2955496159):std::complex<double>(0.,1.)*sqrt((-1.)*v2955496159))*(3.799438)*(v1139362541-(0.23))*(((0.00054))/((1.7919)-v1139362541) + (0.17054) + (-0.0219)*((3.799438)*v1139362541-(1.)) + (0.000857)*((3.799438)*v1139362541-(1.))*((3.799438)*v1139362541-(1.))) + ((v3634940496>(0.))?sqrt(v3634940496):std::complex<double>(0.,1.)*sqrt((-1.)*v3634940496))*(3.799438)*(v1139362541-(0.23))*(((0.096547))/((1.7919)-v1139362541) + (0.79299) + (-0.15099)*((3.799438)*v1139362541-(1.)) + (0.00811)*((3.799438)*v1139362541-(1.))*((3.799438)*v1139362541-(1.)))));
  auto v3126169147 = v2325087427*v1802362592;
  auto v1380068376 = v1119554543*v3846702106;
return (0.707107)*(v1380068376 + v3126169147);
}

extern "C" std::complex<double> D0_KPi40_FOCUS_Kpi__Kp_pim__PiPi40_kMatrix_pole_1__pip_pim___wParams( const double*__restrict__ E ){
  double externalParameters [] = {0.55095, 1, -0.15, -0.55377, 0.22889, 0.651, 0.94128, 1.2036, 0.23888, 0.36856, 1.55817, 0.40907, 0.3365, 1.21, -0.17558, 0.18171, 1.82206, 0.15044, -3.92637, 0.23399, 0, 0, 0.55639, 0.85679, -0.79658, -0.20545, -0.39899, 0.39065, 0.1834, 0.19906, -0.00355, 0.32825, -0.34639, 0.31503, 0.18681, -0.00984, 0.22358, 0.35412 }; 
  return D0_KPi40_FOCUS_Kpi__Kp_pim__PiPi40_kMatrix_pole_1__pip_pim__( externalParameters, E ); // E is P 
}
extern "C" const char* D0_KPi40_FOCUS_Kpi__Kp_pim__PiPi40_kMatrix_prod_0__pip_pim___name() {  return "D0{KPi40[FOCUS.Kpi]{K+,pi-},PiPi40[kMatrix.prod.0]{pi+,pi-}}"; } 
extern "C" std::complex<double> D0_KPi40_FOCUS_Kpi__Kp_pim__PiPi40_kMatrix_prod_0__pip_pim__(double const* x0, double const* x1){
  auto v3067068972 = sqrt((0.01948) + x1[12]*x1[12] + x1[13]*x1[13] + x1[14]*x1[14]);
  auto v2683369444 = sqrt((0.01948) + x1[4]*x1[4] + x1[5]*x1[5] + x1[6]*x1[6]);
  auto v604511646 = sqrt((0.01948) + x1[8]*x1[8] + x1[9]*x1[9] + x1[10]*x1[10]);
  auto v3864776319 = (-1.)*(x1[14] + x1[6])*(x1[14] + x1[6]) + (v3067068972 + v2683369444)*(v3067068972 + v2683369444) + (-1.)*(x1[13] + x1[5])*(x1[13] + x1[5]) + (-1.)*(x1[12] + x1[4])*(x1[12] + x1[4]);
  auto v3303589013 = (-1.)*(x1[14] + x1[10])*(x1[14] + x1[10]) + (v3067068972 + v604511646)*(v3067068972 + v604511646) + (-1.)*(x1[13] + x1[9])*(x1[13] + x1[9]) + (-1.)*(x1[12] + x1[8])*(x1[12] + x1[8]);
  auto v3037555099 = v3864776319;
  auto v1836426858 = v3303589013;
  auto v3789560610 = (1.)-((0.974868))/(v3037555099);
  auto v3605892192 = (1.)-((2.297171))/(v1836426858);
  auto v3102009577 = (1.)-((0.311677))/(v3037555099);
  auto v3007036945 = (1.)-((0.974868))/(v1836426858);
  auto v2840245930 = (1.)-((0.311677))/(v1836426858);
  auto v2488241434 = ((v3037555099-(0.00974)*x0[1])*((1.)-x0[2]))/(v3037555099-x0[2]);
  auto v1694853431 = (1.)-((0.077919))/(v3037555099);
  auto v758672440 = (1.)-((1.200611))/(v1836426858);
  auto v359842611 = (1.)-((1.200611))/(v3037555099);
  auto v341659004 = (1.)-((0.077919))/(v1836426858);
  auto v151048832 = ((v1836426858-(0.00974)*x0[1])*((1.)-x0[2]))/(v1836426858-x0[2]);
  auto v21348587 = (1.)-((2.297171))/(v3037555099);
  auto v3962953584 = std::complex<double>(-0.,-1.)*v151048832*((x0[21]*x0[3])/(x0[4]*x0[4]-v1836426858) + (x0[22]*x0[5])/(x0[6]*x0[6]-v1836426858) + (x0[23]*x0[7])/(x0[8]*x0[8]-v1836426858) + (x0[24]*x0[9])/(x0[10]*x0[10]-v1836426858) + (x0[25]*x0[11])/(x0[12]*x0[12]-v1836426858) + (x0[26]*((1.)-x0[14]))/(v3303589013-x0[14]))*((v1836426858>(1.))?((v2840245930>(0.))?sqrt(v2840245930):std::complex<double>(0.,1.)*sqrt((-1.)*v2840245930)):(0.00051) + (-0.01933)*v1836426858 + (0.13851)*v1836426858*v1836426858 + (-0.2084)*v1836426858*v1836426858*v1836426858 + (-0.29744)*v1836426858*v1836426858*v1836426858*v1836426858 + (0.13655)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858 + (1.07885)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858);
  auto v3926569162 = std::complex<double>(-0.,-1.)*v151048832*((x0[15]*x0[3])/(x0[4]*x0[4]-v1836426858) + (x0[16]*x0[5])/(x0[6]*x0[6]-v1836426858) + (x0[17]*x0[7])/(x0[8]*x0[8]-v1836426858) + (x0[18]*x0[9])/(x0[10]*x0[10]-v1836426858) + (x0[19]*x0[11])/(x0[12]*x0[12]-v1836426858) + (x0[20]*((1.)-x0[14]))/(v3303589013-x0[14]))*((v3007036945>(0.))?sqrt(v3007036945):std::complex<double>(0.,1.)*sqrt((-1.)*v3007036945));
  auto v3712237063 = (1.)-std::complex<double>(0.,1.)*v151048832*((x0[3]*x0[3])/(x0[4]*x0[4]-v1836426858) + (x0[5]*x0[5])/(x0[6]*x0[6]-v1836426858) + (x0[7]*x0[7])/(x0[8]*x0[8]-v1836426858) + (x0[9]*x0[9])/(x0[10]*x0[10]-v1836426858) + (x0[11]*x0[11])/(x0[12]*x0[12]-v1836426858) + (x0[13]*((1.)-x0[14]))/(v3303589013-x0[14]))*((v341659004>(0.))?sqrt(v341659004):std::complex<double>(0.,1.)*sqrt((-1.)*v341659004));
  auto v3215216564 = std::complex<double>(-0.,-1.)*v2488241434*((x0[33]*x0[3])/(x0[4]*x0[4]-v3037555099) + (x0[34]*x0[5])/(x0[6]*x0[6]-v3037555099) + (x0[35]*x0[7])/(x0[8]*x0[8]-v3037555099) + (x0[36]*x0[9])/(x0[10]*x0[10]-v3037555099) + (x0[37]*x0[11])/(x0[12]*x0[12]-v3037555099) + (x0[38]*((1.)-x0[14]))/(v3864776319-x0[14]))*((v1694853431>(0.))?sqrt(v1694853431):std::complex<double>(0.,1.)*sqrt((-1.)*v1694853431));
  auto v2111851279 = (1.)-std::complex<double>(0.,1.)*v2488241434*((x0[3]*x0[3])/(x0[4]*x0[4]-v3037555099) + (x0[5]*x0[5])/(x0[6]*x0[6]-v3037555099) + (x0[7]*x0[7])/(x0[8]*x0[8]-v3037555099) + (x0[9]*x0[9])/(x0[10]*x0[10]-v3037555099) + (x0[11]*x0[11])/(x0[12]*x0[12]-v3037555099) + (x0[13]*((1.)-x0[14]))/(v3864776319-x0[14]))*((v1694853431>(0.))?sqrt(v1694853431):std::complex<double>(0.,1.)*sqrt((-1.)*v1694853431));
  auto v1955258502 = std::complex<double>(-0.,-1.)*v2488241434*((x0[27]*x0[3])/(x0[4]*x0[4]-v3037555099) + (x0[28]*x0[5])/(x0[6]*x0[6]-v3037555099) + (x0[29]*x0[7])/(x0[8]*x0[8]-v3037555099) + (x0[30]*x0[9])/(x0[10]*x0[10]-v3037555099) + (x0[31]*x0[11])/(x0[12]*x0[12]-v3037555099) + (x0[32]*((1.)-x0[14]))/(v3864776319-x0[14]))*((v359842611>(0.))?sqrt(v359842611):std::complex<double>(0.,1.)*sqrt((-1.)*v359842611));
  auto v1742329417 = std::complex<double>(-0.,-1.)*v151048832*((x0[33]*x0[3])/(x0[4]*x0[4]-v1836426858) + (x0[34]*x0[5])/(x0[6]*x0[6]-v1836426858) + (x0[35]*x0[7])/(x0[8]*x0[8]-v1836426858) + (x0[36]*x0[9])/(x0[10]*x0[10]-v1836426858) + (x0[37]*x0[11])/(x0[12]*x0[12]-v1836426858) + (x0[38]*((1.)-x0[14]))/(v3303589013-x0[14]))*((v3605892192>(0.))?sqrt(v3605892192):std::complex<double>(0.,1.)*sqrt((-1.)*v3605892192));
  auto v1636750592 = std::complex<double>(-0.,-1.)*v151048832*((x0[27]*x0[3])/(x0[4]*x0[4]-v1836426858) + (x0[28]*x0[5])/(x0[6]*x0[6]-v1836426858) + (x0[29]*x0[7])/(x0[8]*x0[8]-v1836426858) + (x0[30]*x0[9])/(x0[10]*x0[10]-v1836426858) + (x0[31]*x0[11])/(x0[12]*x0[12]-v1836426858) + (x0[32]*((1.)-x0[14]))/(v3303589013-x0[14]))*((v758672440>(0.))?sqrt(v758672440):std::complex<double>(0.,1.)*sqrt((-1.)*v758672440));
  auto v1474669829 = std::complex<double>(-0.,-1.)*v2488241434*((x0[27]*x0[3])/(x0[4]*x0[4]-v3037555099) + (x0[28]*x0[5])/(x0[6]*x0[6]-v3037555099) + (x0[29]*x0[7])/(x0[8]*x0[8]-v3037555099) + (x0[30]*x0[9])/(x0[10]*x0[10]-v3037555099) + (x0[31]*x0[11])/(x0[12]*x0[12]-v3037555099) + (x0[32]*((1.)-x0[14]))/(v3864776319-x0[14]))*((v1694853431>(0.))?sqrt(v1694853431):std::complex<double>(0.,1.)*sqrt((-1.)*v1694853431));
  auto v1452648461 = std::complex<double>(-0.,-1.)*v2488241434*((x0[21]*x0[3])/(x0[4]*x0[4]-v3037555099) + (x0[22]*x0[5])/(x0[6]*x0[6]-v3037555099) + (x0[23]*x0[7])/(x0[8]*x0[8]-v3037555099) + (x0[24]*x0[9])/(x0[10]*x0[10]-v3037555099) + (x0[25]*x0[11])/(x0[12]*x0[12]-v3037555099) + (x0[26]*((1.)-x0[14]))/(v3864776319-x0[14]))*((v1694853431>(0.))?sqrt(v1694853431):std::complex<double>(0.,1.)*sqrt((-1.)*v1694853431));
  auto v1304853663 = std::complex<double>(-0.,-1.)*v151048832*((x0[15]*x0[3])/(x0[4]*x0[4]-v1836426858) + (x0[16]*x0[5])/(x0[6]*x0[6]-v1836426858) + (x0[17]*x0[7])/(x0[8]*x0[8]-v1836426858) + (x0[18]*x0[9])/(x0[10]*x0[10]-v1836426858) + (x0[19]*x0[11])/(x0[12]*x0[12]-v1836426858) + (x0[20]*((1.)-x0[14]))/(v3303589013-x0[14]))*((v341659004>(0.))?sqrt(v341659004):std::complex<double>(0.,1.)*sqrt((-1.)*v341659004));
  auto v1258276323 = std::complex<double>(-0.,-1.)*v2488241434*((x0[21]*x0[3])/(x0[4]*x0[4]-v3037555099) + (x0[22]*x0[5])/(x0[6]*x0[6]-v3037555099) + (x0[23]*x0[7])/(x0[8]*x0[8]-v3037555099) + (x0[24]*x0[9])/(x0[10]*x0[10]-v3037555099) + (x0[25]*x0[11])/(x0[12]*x0[12]-v3037555099) + (x0[26]*((1.)-x0[14]))/(v3864776319-x0[14]))*((v3037555099>(1.))?((v3102009577>(0.))?sqrt(v3102009577):std::complex<double>(0.,1.)*sqrt((-1.)*v3102009577)):(0.00051) + (-0.01933)*v3037555099 + (0.13851)*v3037555099*v3037555099 + (-0.2084)*v3037555099*v3037555099*v3037555099 + (-0.29744)*v3037555099*v3037555099*v3037555099*v3037555099 + (0.13655)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099 + (1.07885)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099);
  auto v980854748 = std::complex<double>(-0.,-1.)*v2488241434*((x0[15]*x0[3])/(x0[4]*x0[4]-v3037555099) + (x0[16]*x0[5])/(x0[6]*x0[6]-v3037555099) + (x0[17]*x0[7])/(x0[8]*x0[8]-v3037555099) + (x0[18]*x0[9])/(x0[10]*x0[10]-v3037555099) + (x0[19]*x0[11])/(x0[12]*x0[12]-v3037555099) + (x0[20]*((1.)-x0[14]))/(v3864776319-x0[14]))*((v3789560610>(0.))?sqrt(v3789560610):std::complex<double>(0.,1.)*sqrt((-1.)*v3789560610));
  auto v910172329 = std::complex<double>(-0.,-1.)*v2488241434*((x0[15]*x0[3])/(x0[4]*x0[4]-v3037555099) + (x0[16]*x0[5])/(x0[6]*x0[6]-v3037555099) + (x0[17]*x0[7])/(x0[8]*x0[8]-v3037555099) + (x0[18]*x0[9])/(x0[10]*x0[10]-v3037555099) + (x0[19]*x0[11])/(x0[12]*x0[12]-v3037555099) + (x0[20]*((1.)-x0[14]))/(v3864776319-x0[14]))*((v1694853431>(0.))?sqrt(v1694853431):std::complex<double>(0.,1.)*sqrt((-1.)*v1694853431));
  auto v839072984 = std::complex<double>(-0.,-1.)*v151048832*((x0[33]*x0[3])/(x0[4]*x0[4]-v1836426858) + (x0[34]*x0[5])/(x0[6]*x0[6]-v1836426858) + (x0[35]*x0[7])/(x0[8]*x0[8]-v1836426858) + (x0[36]*x0[9])/(x0[10]*x0[10]-v1836426858) + (x0[37]*x0[11])/(x0[12]*x0[12]-v1836426858) + (x0[38]*((1.)-x0[14]))/(v3303589013-x0[14]))*((v341659004>(0.))?sqrt(v341659004):std::complex<double>(0.,1.)*sqrt((-1.)*v341659004));
  auto v255841663 = std::complex<double>(-0.,-1.)*v151048832*((x0[21]*x0[3])/(x0[4]*x0[4]-v1836426858) + (x0[22]*x0[5])/(x0[6]*x0[6]-v1836426858) + (x0[23]*x0[7])/(x0[8]*x0[8]-v1836426858) + (x0[24]*x0[9])/(x0[10]*x0[10]-v1836426858) + (x0[25]*x0[11])/(x0[12]*x0[12]-v1836426858) + (x0[26]*((1.)-x0[14]))/(v3303589013-x0[14]))*((v341659004>(0.))?sqrt(v341659004):std::complex<double>(0.,1.)*sqrt((-1.)*v341659004));
  auto v216360023 = std::complex<double>(-0.,-1.)*v151048832*((x0[27]*x0[3])/(x0[4]*x0[4]-v1836426858) + (x0[28]*x0[5])/(x0[6]*x0[6]-v1836426858) + (x0[29]*x0[7])/(x0[8]*x0[8]-v1836426858) + (x0[30]*x0[9])/(x0[10]*x0[10]-v1836426858) + (x0[31]*x0[11])/(x0[12]*x0[12]-v1836426858) + (x0[32]*((1.)-x0[14]))/(v3303589013-x0[14]))*((v341659004>(0.))?sqrt(v341659004):std::complex<double>(0.,1.)*sqrt((-1.)*v341659004));
  auto v111119486 = std::complex<double>(-0.,-1.)*v2488241434*((x0[33]*x0[3])/(x0[4]*x0[4]-v3037555099) + (x0[34]*x0[5])/(x0[6]*x0[6]-v3037555099) + (x0[35]*x0[7])/(x0[8]*x0[8]-v3037555099) + (x0[36]*x0[9])/(x0[10]*x0[10]-v3037555099) + (x0[37]*x0[11])/(x0[12]*x0[12]-v3037555099) + (x0[38]*((1.)-x0[14]))/(v3864776319-x0[14]))*((v21348587>(0.))?sqrt(v21348587):std::complex<double>(0.,1.)*sqrt((-1.)*v21348587));
  auto v3926831395 = (v1304853663*v1742329417)/(v3712237063);
  auto v3669473571 = (v1304853663*v3962953584)/(v3712237063);
  auto v3663942510 = (1.)-std::complex<double>(0.,1.)*v151048832*((x0[15]*x0[15])/(x0[4]*x0[4]-v1836426858) + (x0[16]*x0[16])/(x0[6]*x0[6]-v1836426858) + (x0[17]*x0[17])/(x0[8]*x0[8]-v1836426858) + (x0[18]*x0[18])/(x0[10]*x0[10]-v1836426858) + (x0[19]*x0[19])/(x0[12]*x0[12]-v1836426858))*((v3007036945>(0.))?sqrt(v3007036945):std::complex<double>(0.,1.)*sqrt((-1.)*v3007036945));
  auto v3627579820 = (-1.)*(v910172329)/(v2111851279);
  auto v3502841389 = (v910172329*v111119486)/(v2111851279);
  auto v3160618711 = (v255841663*v3926569162)/(v3712237063);
  auto v3135162689 = std::complex<double>(-0.,-1.)*v2488241434*((x0[33]*x0[15])/(x0[4]*x0[4]-v3037555099) + (x0[34]*x0[16])/(x0[6]*x0[6]-v3037555099) + (x0[35]*x0[17])/(x0[8]*x0[8]-v3037555099) + (x0[36]*x0[18])/(x0[10]*x0[10]-v3037555099) + (x0[37]*x0[19])/(x0[12]*x0[12]-v3037555099))*((v21348587>(0.))?sqrt(v21348587):std::complex<double>(0.,1.)*sqrt((-1.)*v21348587));
  auto v3099229930 = std::complex<double>(-0.,-1.)*v2488241434*((x0[27]*x0[15])/(x0[4]*x0[4]-v3037555099) + (x0[28]*x0[16])/(x0[6]*x0[6]-v3037555099) + (x0[29]*x0[17])/(x0[8]*x0[8]-v3037555099) + (x0[30]*x0[18])/(x0[10]*x0[10]-v3037555099) + (x0[31]*x0[19])/(x0[12]*x0[12]-v3037555099))*((v3789560610>(0.))?sqrt(v3789560610):std::complex<double>(0.,1.)*sqrt((-1.)*v3789560610));
  auto v2899208900 = std::complex<double>(-0.,-1.)*v2488241434*((x0[21]*x0[15])/(x0[4]*x0[4]-v3037555099) + (x0[22]*x0[16])/(x0[6]*x0[6]-v3037555099) + (x0[23]*x0[17])/(x0[8]*x0[8]-v3037555099) + (x0[24]*x0[18])/(x0[10]*x0[10]-v3037555099) + (x0[25]*x0[19])/(x0[12]*x0[12]-v3037555099))*((v3037555099>(1.))?((v3102009577>(0.))?sqrt(v3102009577):std::complex<double>(0.,1.)*sqrt((-1.)*v3102009577)):(0.00051) + (-0.01933)*v3037555099 + (0.13851)*v3037555099*v3037555099 + (-0.2084)*v3037555099*v3037555099*v3037555099 + (-0.29744)*v3037555099*v3037555099*v3037555099*v3037555099 + (0.13655)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099 + (1.07885)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099);
  auto v2844405163 = (v839072984*v3926569162)/(v3712237063);
  auto v2709668838 = (v216360023*v3926569162)/(v3712237063);
  auto v2690895429 = (v3926569162)/(v3712237063);
  auto v2487489657 = (v3215216564*v980854748)/(v2111851279);
  auto v2208466672 = std::complex<double>(-0.,-1.)*v2488241434*((x0[27]*x0[15])/(x0[4]*x0[4]-v3037555099) + (x0[28]*x0[16])/(x0[6]*x0[6]-v3037555099) + (x0[29]*x0[17])/(x0[8]*x0[8]-v3037555099) + (x0[30]*x0[18])/(x0[10]*x0[10]-v3037555099) + (x0[31]*x0[19])/(x0[12]*x0[12]-v3037555099))*((v359842611>(0.))?sqrt(v359842611):std::complex<double>(0.,1.)*sqrt((-1.)*v359842611));
  auto v2192947274 = std::complex<double>(-0.,-1.)*v2488241434*((x0[33]*x0[15])/(x0[4]*x0[4]-v3037555099) + (x0[34]*x0[16])/(x0[6]*x0[6]-v3037555099) + (x0[35]*x0[17])/(x0[8]*x0[8]-v3037555099) + (x0[36]*x0[18])/(x0[10]*x0[10]-v3037555099) + (x0[37]*x0[19])/(x0[12]*x0[12]-v3037555099))*((v3789560610>(0.))?sqrt(v3789560610):std::complex<double>(0.,1.)*sqrt((-1.)*v3789560610));
  auto v2076842653 = std::complex<double>(-0.,-1.)*v151048832*((x0[27]*x0[15])/(x0[4]*x0[4]-v1836426858) + (x0[28]*x0[16])/(x0[6]*x0[6]-v1836426858) + (x0[29]*x0[17])/(x0[8]*x0[8]-v1836426858) + (x0[30]*x0[18])/(x0[10]*x0[10]-v1836426858) + (x0[31]*x0[19])/(x0[12]*x0[12]-v1836426858))*((v758672440>(0.))?sqrt(v758672440):std::complex<double>(0.,1.)*sqrt((-1.)*v758672440));
  auto v2027797497 = std::complex<double>(-0.,-1.)*v2488241434*((x0[21]*x0[15])/(x0[4]*x0[4]-v3037555099) + (x0[22]*x0[16])/(x0[6]*x0[6]-v3037555099) + (x0[23]*x0[17])/(x0[8]*x0[8]-v3037555099) + (x0[24]*x0[18])/(x0[10]*x0[10]-v3037555099) + (x0[25]*x0[19])/(x0[12]*x0[12]-v3037555099))*((v3789560610>(0.))?sqrt(v3789560610):std::complex<double>(0.,1.)*sqrt((-1.)*v3789560610));
  auto v2014012967 = std::complex<double>(-0.,-1.)*v151048832*((x0[33]*x0[15])/(x0[4]*x0[4]-v1836426858) + (x0[34]*x0[16])/(x0[6]*x0[6]-v1836426858) + (x0[35]*x0[17])/(x0[8]*x0[8]-v1836426858) + (x0[36]*x0[18])/(x0[10]*x0[10]-v1836426858) + (x0[37]*x0[19])/(x0[12]*x0[12]-v1836426858))*((v3605892192>(0.))?sqrt(v3605892192):std::complex<double>(0.,1.)*sqrt((-1.)*v3605892192));
  auto v1498048574 = (v1304853663*v3926569162)/(v3712237063);
  auto v1490855688 = (v980854748)/(v2111851279);
  auto v1294182424 = (v910172329*v1258276323)/(v2111851279);
  auto v1211935458 = (v910172329*v980854748)/(v2111851279);
  auto v1136737173 = std::complex<double>(-0.,-1.)*v151048832*((x0[27]*x0[15])/(x0[4]*x0[4]-v1836426858) + (x0[28]*x0[16])/(x0[6]*x0[6]-v1836426858) + (x0[29]*x0[17])/(x0[8]*x0[8]-v1836426858) + (x0[30]*x0[18])/(x0[10]*x0[10]-v1836426858) + (x0[31]*x0[19])/(x0[12]*x0[12]-v1836426858))*((v3007036945>(0.))?sqrt(v3007036945):std::complex<double>(0.,1.)*sqrt((-1.)*v3007036945));
  auto v1134059584 = std::complex<double>(-0.,-1.)*v151048832*((x0[21]*x0[15])/(x0[4]*x0[4]-v1836426858) + (x0[22]*x0[16])/(x0[6]*x0[6]-v1836426858) + (x0[23]*x0[17])/(x0[8]*x0[8]-v1836426858) + (x0[24]*x0[18])/(x0[10]*x0[10]-v1836426858) + (x0[25]*x0[19])/(x0[12]*x0[12]-v1836426858))*((v1836426858>(1.))?((v2840245930>(0.))?sqrt(v2840245930):std::complex<double>(0.,1.)*sqrt((-1.)*v2840245930)):(0.00051) + (-0.01933)*v1836426858 + (0.13851)*v1836426858*v1836426858 + (-0.2084)*v1836426858*v1836426858*v1836426858 + (-0.29744)*v1836426858*v1836426858*v1836426858*v1836426858 + (0.13655)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858 + (1.07885)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858);
  auto v1110707043 = (v910172329*v1955258502)/(v2111851279);
  auto v1048734754 = (v1474669829*v980854748)/(v2111851279);
  auto v924437421 = std::complex<double>(-0.,-1.)*v151048832*((x0[33]*x0[15])/(x0[4]*x0[4]-v1836426858) + (x0[34]*x0[16])/(x0[6]*x0[6]-v1836426858) + (x0[35]*x0[17])/(x0[8]*x0[8]-v1836426858) + (x0[36]*x0[18])/(x0[10]*x0[10]-v1836426858) + (x0[37]*x0[19])/(x0[12]*x0[12]-v1836426858))*((v3007036945>(0.))?sqrt(v3007036945):std::complex<double>(0.,1.)*sqrt((-1.)*v3007036945));
  auto v888290467 = (1.)-std::complex<double>(0.,1.)*v2488241434*((x0[15]*x0[15])/(x0[4]*x0[4]-v3037555099) + (x0[16]*x0[16])/(x0[6]*x0[6]-v3037555099) + (x0[17]*x0[17])/(x0[8]*x0[8]-v3037555099) + (x0[18]*x0[18])/(x0[10]*x0[10]-v3037555099) + (x0[19]*x0[19])/(x0[12]*x0[12]-v3037555099))*((v3789560610>(0.))?sqrt(v3789560610):std::complex<double>(0.,1.)*sqrt((-1.)*v3789560610));
  auto v749074938 = std::complex<double>(-0.,-1.)*v151048832*((x0[21]*x0[15])/(x0[4]*x0[4]-v1836426858) + (x0[22]*x0[16])/(x0[6]*x0[6]-v1836426858) + (x0[23]*x0[17])/(x0[8]*x0[8]-v1836426858) + (x0[24]*x0[18])/(x0[10]*x0[10]-v1836426858) + (x0[25]*x0[19])/(x0[12]*x0[12]-v1836426858))*((v3007036945>(0.))?sqrt(v3007036945):std::complex<double>(0.,1.)*sqrt((-1.)*v3007036945));
  auto v498030113 = (v1452648461*v980854748)/(v2111851279);
  auto v251409423 = (v1304853663*v1636750592)/(v3712237063);
  auto v173793696 = (-1.)*(v1304853663)/(v3712237063);
  auto v3978116468 = (v1452648461*v1258276323)/(v2111851279) + ((v2899208900-v1294182424)*(v2027797497-v498030113))/(v888290467-v1211935458);
  auto v3892543554 = std::complex<double>(-0.,-1.)*v2488241434*((x0[27]*x0[21])/(x0[4]*x0[4]-v3037555099) + (x0[28]*x0[22])/(x0[6]*x0[6]-v3037555099) + (x0[29]*x0[23])/(x0[8]*x0[8]-v3037555099) + (x0[30]*x0[24])/(x0[10]*x0[10]-v3037555099) + (x0[31]*x0[25])/(x0[12]*x0[12]-v3037555099))*((v3037555099>(1.))?((v3102009577>(0.))?sqrt(v3102009577):std::complex<double>(0.,1.)*sqrt((-1.)*v3102009577)):(0.00051) + (-0.01933)*v3037555099 + (0.13851)*v3037555099*v3037555099 + (-0.2084)*v3037555099*v3037555099*v3037555099 + (-0.29744)*v3037555099*v3037555099*v3037555099*v3037555099 + (0.13655)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099 + (1.07885)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099);
  auto v3493176212 = (1.)-std::complex<double>(0.,1.)*v2488241434*((x0[21]*x0[21])/(x0[4]*x0[4]-v3037555099) + (x0[22]*x0[22])/(x0[6]*x0[6]-v3037555099) + (x0[23]*x0[23])/(x0[8]*x0[8]-v3037555099) + (x0[24]*x0[24])/(x0[10]*x0[10]-v3037555099) + (x0[25]*x0[25])/(x0[12]*x0[12]-v3037555099))*((v3037555099>(1.))?((v3102009577>(0.))?sqrt(v3102009577):std::complex<double>(0.,1.)*sqrt((-1.)*v3102009577)):(0.00051) + (-0.01933)*v3037555099 + (0.13851)*v3037555099*v3037555099 + (-0.2084)*v3037555099*v3037555099*v3037555099 + (-0.29744)*v3037555099*v3037555099*v3037555099*v3037555099 + (0.13655)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099 + (1.07885)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099);
  auto v3299038154 = std::complex<double>(-0.,-1.)*v151048832*((x0[27]*x0[21])/(x0[4]*x0[4]-v1836426858) + (x0[28]*x0[22])/(x0[6]*x0[6]-v1836426858) + (x0[29]*x0[23])/(x0[8]*x0[8]-v1836426858) + (x0[30]*x0[24])/(x0[10]*x0[10]-v1836426858) + (x0[31]*x0[25])/(x0[12]*x0[12]-v1836426858))*((v1836426858>(1.))?((v2840245930>(0.))?sqrt(v2840245930):std::complex<double>(0.,1.)*sqrt((-1.)*v2840245930)):(0.00051) + (-0.01933)*v1836426858 + (0.13851)*v1836426858*v1836426858 + (-0.2084)*v1836426858*v1836426858*v1836426858 + (-0.29744)*v1836426858*v1836426858*v1836426858*v1836426858 + (0.13655)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858 + (1.07885)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858);
  auto v3280766624 = std::complex<double>(-0.,-1.)*v2488241434*((x0[33]*x0[21])/(x0[4]*x0[4]-v3037555099) + (x0[34]*x0[22])/(x0[6]*x0[6]-v3037555099) + (x0[35]*x0[23])/(x0[8]*x0[8]-v3037555099) + (x0[36]*x0[24])/(x0[10]*x0[10]-v3037555099) + (x0[37]*x0[25])/(x0[12]*x0[12]-v3037555099))*((v21348587>(0.))?sqrt(v21348587):std::complex<double>(0.,1.)*sqrt((-1.)*v21348587));
  auto v3220637740 = (v1452648461*v111119486)/(v2111851279) + ((v3135162689-v3502841389)*(v2027797497-v498030113))/(v888290467-v1211935458);
  auto v2950282091 = (-1.)*(v255841663)/(v3712237063)-(v173793696*(v749074938-v3160618711))/(v3663942510-v1498048574);
  auto v2742420170 = std::complex<double>(-0.,-1.)*v2488241434*((x0[33]*x0[21])/(x0[4]*x0[4]-v3037555099) + (x0[34]*x0[22])/(x0[6]*x0[6]-v3037555099) + (x0[35]*x0[23])/(x0[8]*x0[8]-v3037555099) + (x0[36]*x0[24])/(x0[10]*x0[10]-v3037555099) + (x0[37]*x0[25])/(x0[12]*x0[12]-v3037555099))*((v3037555099>(1.))?((v3102009577>(0.))?sqrt(v3102009577):std::complex<double>(0.,1.)*sqrt((-1.)*v3102009577)):(0.00051) + (-0.01933)*v3037555099 + (0.13851)*v3037555099*v3037555099 + (-0.2084)*v3037555099*v3037555099*v3037555099 + (-0.29744)*v3037555099*v3037555099*v3037555099*v3037555099 + (0.13655)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099 + (1.07885)*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099*v3037555099);
  auto v2530270390 = (v255841663*v1742329417)/(v3712237063) + ((v2014012967-v3926831395)*(v749074938-v3160618711))/(v3663942510-v1498048574);
  auto v2458863037 = (-1.)*(v1452648461)/(v2111851279)-(v3627579820*(v2027797497-v498030113))/(v888290467-v1211935458);
  auto v2440228578 = std::complex<double>(-0.,-1.)*v151048832*((x0[27]*x0[21])/(x0[4]*x0[4]-v1836426858) + (x0[28]*x0[22])/(x0[6]*x0[6]-v1836426858) + (x0[29]*x0[23])/(x0[8]*x0[8]-v1836426858) + (x0[30]*x0[24])/(x0[10]*x0[10]-v1836426858) + (x0[31]*x0[25])/(x0[12]*x0[12]-v1836426858))*((v758672440>(0.))?sqrt(v758672440):std::complex<double>(0.,1.)*sqrt((-1.)*v758672440));
  auto v2392666732 = (v3962953584)/(v3712237063) + ((-1.)*v2690895429*(v1134059584-v3669473571))/(v3663942510-v1498048574);
  auto v2156539190 = (v3215216564*v1258276323)/(v2111851279) + ((v2899208900-v1294182424)*(v2192947274-v2487489657))/(v888290467-v1211935458);
  auto v2066788000 = (v1452648461*v1955258502)/(v2111851279) + ((v2208466672-v1110707043)*(v2027797497-v498030113))/(v888290467-v1211935458);
  auto v1789810775 = std::complex<double>(-0.,-1.)*v2488241434*((x0[27]*x0[21])/(x0[4]*x0[4]-v3037555099) + (x0[28]*x0[22])/(x0[6]*x0[6]-v3037555099) + (x0[29]*x0[23])/(x0[8]*x0[8]-v3037555099) + (x0[30]*x0[24])/(x0[10]*x0[10]-v3037555099) + (x0[31]*x0[25])/(x0[12]*x0[12]-v3037555099))*((v359842611>(0.))?sqrt(v359842611):std::complex<double>(0.,1.)*sqrt((-1.)*v359842611));
  auto v1671733403 = (v1474669829*v1258276323)/(v2111851279) + ((v2899208900-v1294182424)*(v3099229930-v1048734754))/(v888290467-v1211935458);
  auto v1629269660 = (v255841663*v1636750592)/(v3712237063) + ((v2076842653-v251409423)*(v749074938-v3160618711))/(v3663942510-v1498048574);
  auto v1265640608 = (v216360023*v3962953584)/(v3712237063) + ((v1134059584-v3669473571)*(v1136737173-v2709668838))/(v3663942510-v1498048574);
  auto v1228363810 = std::complex<double>(-0.,-1.)*v151048832*((x0[33]*x0[21])/(x0[4]*x0[4]-v1836426858) + (x0[34]*x0[22])/(x0[6]*x0[6]-v1836426858) + (x0[35]*x0[23])/(x0[8]*x0[8]-v1836426858) + (x0[36]*x0[24])/(x0[10]*x0[10]-v1836426858) + (x0[37]*x0[25])/(x0[12]*x0[12]-v1836426858))*((v1836426858>(1.))?((v2840245930>(0.))?sqrt(v2840245930):std::complex<double>(0.,1.)*sqrt((-1.)*v2840245930)):(0.00051) + (-0.01933)*v1836426858 + (0.13851)*v1836426858*v1836426858 + (-0.2084)*v1836426858*v1836426858*v1836426858 + (-0.29744)*v1836426858*v1836426858*v1836426858*v1836426858 + (0.13655)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858 + (1.07885)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858);
  auto v916138054 = (1.)-std::complex<double>(0.,1.)*v151048832*((x0[21]*x0[21])/(x0[4]*x0[4]-v1836426858) + (x0[22]*x0[22])/(x0[6]*x0[6]-v1836426858) + (x0[23]*x0[23])/(x0[8]*x0[8]-v1836426858) + (x0[24]*x0[24])/(x0[10]*x0[10]-v1836426858) + (x0[25]*x0[25])/(x0[12]*x0[12]-v1836426858))*((v1836426858>(1.))?((v2840245930>(0.))?sqrt(v2840245930):std::complex<double>(0.,1.)*sqrt((-1.)*v2840245930)):(0.00051) + (-0.01933)*v1836426858 + (0.13851)*v1836426858*v1836426858 + (-0.2084)*v1836426858*v1836426858*v1836426858 + (-0.29744)*v1836426858*v1836426858*v1836426858*v1836426858 + (0.13655)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858 + (1.07885)*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858*v1836426858);
  auto v757347508 = (v839072984*v3962953584)/(v3712237063) + ((v1134059584-v3669473571)*(v924437421-v2844405163))/(v3663942510-v1498048574);
  auto v732589286 = sqrt((0.243717) + x1[0]*x1[0] + x1[1]*x1[1] + x1[2]*x1[2]);
  auto v178886646 = (v255841663*v3962953584)/(v3712237063) + ((v1134059584-v3669473571)*(v749074938-v3160618711))/(v3663942510-v1498048574);
  auto v64939503 = (v1258276323)/(v2111851279) + ((-1.)*v1490855688*(v2899208900-v1294182424))/(v888290467-v1211935458);
  auto v63877246 = std::complex<double>(-0.,-1.)*v151048832*((x0[33]*x0[21])/(x0[4]*x0[4]-v1836426858) + (x0[34]*x0[22])/(x0[6]*x0[6]-v1836426858) + (x0[35]*x0[23])/(x0[8]*x0[8]-v1836426858) + (x0[36]*x0[24])/(x0[10]*x0[10]-v1836426858) + (x0[37]*x0[25])/(x0[12]*x0[12]-v1836426858))*((v3605892192>(0.))?sqrt(v3605892192):std::complex<double>(0.,1.)*sqrt((-1.)*v3605892192));
  auto v4156259701 = std::complex<double>(-0.,-1.)*v151048832*((x0[33]*x0[27])/(x0[4]*x0[4]-v1836426858) + (x0[34]*x0[28])/(x0[6]*x0[6]-v1836426858) + (x0[35]*x0[29])/(x0[8]*x0[8]-v1836426858) + (x0[36]*x0[30])/(x0[10]*x0[10]-v1836426858) + (x0[37]*x0[31])/(x0[12]*x0[12]-v1836426858))*((v3605892192>(0.))?sqrt(v3605892192):std::complex<double>(0.,1.)*sqrt((-1.)*v3605892192));
  auto v3704780237 = (-1.)*(v1474669829)/(v2111851279)-(v3627579820*(v3099229930-v1048734754))/(v888290467-v1211935458)-(v2458863037*(v3892543554-v1671733403))/(v3493176212-v3978116468);
  auto v3238823049 = (-1.)*(v216360023)/(v3712237063)-(v173793696*(v1136737173-v2709668838))/(v3663942510-v1498048574)-(v2950282091*(v3299038154-v1265640608))/(v916138054-v178886646);
  auto v2772160503 = std::complex<double>(-0.,-1.)*v151048832*((x0[33]*x0[27])/(x0[4]*x0[4]-v1836426858) + (x0[34]*x0[28])/(x0[6]*x0[6]-v1836426858) + (x0[35]*x0[29])/(x0[8]*x0[8]-v1836426858) + (x0[36]*x0[30])/(x0[10]*x0[10]-v1836426858) + (x0[37]*x0[31])/(x0[12]*x0[12]-v1836426858))*((v758672440>(0.))?sqrt(v758672440):std::complex<double>(0.,1.)*sqrt((-1.)*v758672440));
  auto v2635961706 = std::complex<double>(-0.,-1.)*v2488241434*((x0[33]*x0[27])/(x0[4]*x0[4]-v3037555099) + (x0[34]*x0[28])/(x0[6]*x0[6]-v3037555099) + (x0[35]*x0[29])/(x0[8]*x0[8]-v3037555099) + (x0[36]*x0[30])/(x0[10]*x0[10]-v3037555099) + (x0[37]*x0[31])/(x0[12]*x0[12]-v3037555099))*((v359842611>(0.))?sqrt(v359842611):std::complex<double>(0.,1.)*sqrt((-1.)*v359842611));
  auto v2541664477 = (v216360023*v1636750592)/(v3712237063) + ((v2076842653-v251409423)*(v1136737173-v2709668838))/(v3663942510-v1498048574) + ((v2440228578-v1629269660)*(v3299038154-v1265640608))/(v916138054-v178886646);
  auto v2476164519 = std::complex<double>(-0.,-1.)*v2488241434*((x0[33]*x0[27])/(x0[4]*x0[4]-v3037555099) + (x0[34]*x0[28])/(x0[6]*x0[6]-v3037555099) + (x0[35]*x0[29])/(x0[8]*x0[8]-v3037555099) + (x0[36]*x0[30])/(x0[10]*x0[10]-v3037555099) + (x0[37]*x0[31])/(x0[12]*x0[12]-v3037555099))*((v21348587>(0.))?sqrt(v21348587):std::complex<double>(0.,1.)*sqrt((-1.)*v21348587));
  auto v2418357392 = (v1636750592)/(v3712237063) + ((-1.)*v2690895429*(v2076842653-v251409423))/(v3663942510-v1498048574) + ((-1.)*v2392666732*(v2440228578-v1629269660))/(v916138054-v178886646);
  auto v1562520267 = (1.)-std::complex<double>(0.,1.)*v2488241434*((x0[27]*x0[27])/(x0[4]*x0[4]-v3037555099) + (x0[28]*x0[28])/(x0[6]*x0[6]-v3037555099) + (x0[29]*x0[29])/(x0[8]*x0[8]-v3037555099) + (x0[30]*x0[30])/(x0[10]*x0[10]-v3037555099) + (x0[31]*x0[31])/(x0[12]*x0[12]-v3037555099))*((v359842611>(0.))?sqrt(v359842611):std::complex<double>(0.,1.)*sqrt((-1.)*v359842611));
  auto v1521070335 = (-1.)*(x1[2] + x1[10])*(x1[2] + x1[10]) + (v732589286 + v604511646)*(v732589286 + v604511646) + (-1.)*(x1[1] + x1[9])*(x1[1] + x1[9]) + (-1.)*(x1[0] + x1[8])*(x1[0] + x1[8]);
  auto v1477661232 = (v216360023*v1742329417)/(v3712237063) + ((v2014012967-v3926831395)*(v1136737173-v2709668838))/(v3663942510-v1498048574) + ((v63877246-v2530270390)*(v3299038154-v1265640608))/(v916138054-v178886646);
  auto v1466574160 = (v1474669829*v1955258502)/(v2111851279) + ((v2208466672-v1110707043)*(v3099229930-v1048734754))/(v888290467-v1211935458) + ((v1789810775-v2066788000)*(v3892543554-v1671733403))/(v3493176212-v3978116468);
  auto v1333463548 = (1.)-std::complex<double>(0.,1.)*v151048832*((x0[27]*x0[27])/(x0[4]*x0[4]-v1836426858) + (x0[28]*x0[28])/(x0[6]*x0[6]-v1836426858) + (x0[29]*x0[29])/(x0[8]*x0[8]-v1836426858) + (x0[30]*x0[30])/(x0[10]*x0[10]-v1836426858) + (x0[31]*x0[31])/(x0[12]*x0[12]-v1836426858))*((v758672440>(0.))?sqrt(v758672440):std::complex<double>(0.,1.)*sqrt((-1.)*v758672440));
  auto v1139362541 = (-1.)*(x1[2] + x1[6])*(x1[2] + x1[6]) + (v732589286 + v2683369444)*(v732589286 + v2683369444) + (-1.)*(x1[1] + x1[5])*(x1[1] + x1[5]) + (-1.)*(x1[0] + x1[4])*(x1[0] + x1[4]);
  auto v1080901134 = (v1474669829*v111119486)/(v2111851279) + ((v3135162689-v3502841389)*(v3099229930-v1048734754))/(v888290467-v1211935458) + ((v3280766624-v3220637740)*(v3892543554-v1671733403))/(v3493176212-v3978116468);
  auto v1000633181 = (v1955258502)/(v2111851279) + ((-1.)*v1490855688*(v2208466672-v1110707043))/(v888290467-v1211935458) + ((-1.)*v64939503*(v1789810775-v2066788000))/(v3493176212-v3978116468);
  auto v395958503 = (v839072984*v1636750592)/(v3712237063) + ((v2076842653-v251409423)*(v924437421-v2844405163))/(v3663942510-v1498048574) + ((v2440228578-v1629269660)*(v1228363810-v757347508))/(v916138054-v178886646);
  auto v281711840 = (v3215216564*v1955258502)/(v2111851279) + ((v2208466672-v1110707043)*(v2192947274-v2487489657))/(v888290467-v1211935458) + ((v1789810775-v2066788000)*(v2742420170-v2156539190))/(v3493176212-v3978116468);
  auto v4247864182 = (v111119486)/(v2111851279) + ((-1.)*v1490855688*(v3135162689-v3502841389))/(v888290467-v1211935458) + ((-1.)*v64939503*(v3280766624-v3220637740))/(v3493176212-v3978116468) + ((-1.)*v1000633181*(v2476164519-v1080901134))/(v1562520267-v1466574160);
  auto v4174506558 = (1.)-std::complex<double>(0.,1.)*v151048832*((x0[33]*x0[33])/(x0[4]*x0[4]-v1836426858) + (x0[34]*x0[34])/(x0[6]*x0[6]-v1836426858) + (x0[35]*x0[35])/(x0[8]*x0[8]-v1836426858) + (x0[36]*x0[36])/(x0[10]*x0[10]-v1836426858) + (x0[37]*x0[37])/(x0[12]*x0[12]-v1836426858))*((v3605892192>(0.))?sqrt(v3605892192):std::complex<double>(0.,1.)*sqrt((-1.)*v3605892192));
  auto v3634940496 = ((1.)-((0.125392))/(v1139362541))*((1.)-((0.401002))/(v1139362541));
  auto v3154148802 = (1.)-std::complex<double>(0.,1.)*v2488241434*((x0[33]*x0[33])/(x0[4]*x0[4]-v3037555099) + (x0[34]*x0[34])/(x0[6]*x0[6]-v3037555099) + (x0[35]*x0[35])/(x0[8]*x0[8]-v3037555099) + (x0[36]*x0[36])/(x0[10]*x0[10]-v3037555099) + (x0[37]*x0[37])/(x0[12]*x0[12]-v3037555099))*((v21348587>(0.))?sqrt(v21348587):std::complex<double>(0.,1.)*sqrt((-1.)*v21348587));
  auto v3057249796 = (-1.)*(v839072984)/(v3712237063)-(v173793696*(v924437421-v2844405163))/(v3663942510-v1498048574)-(v2950282091*(v1228363810-v757347508))/(v916138054-v178886646)-(v3238823049*(v2772160503-v395958503))/(v1333463548-v2541664477);
  auto v2955496159 = ((1.)-((0.21528))/(v1139362541))*((1.)-((2.106379))/(v1139362541));
  auto v2269855808 = (-1.)*(v3215216564)/(v2111851279)-(v3627579820*(v2192947274-v2487489657))/(v888290467-v1211935458)-(v2458863037*(v2742420170-v2156539190))/(v3493176212-v3978116468)-(v3704780237*(v2635961706-v281711840))/(v1562520267-v1466574160);
  auto v2246649186 = (v1742329417)/(v3712237063) + ((-1.)*v2690895429*(v2014012967-v3926831395))/(v3663942510-v1498048574) + ((-1.)*v2392666732*(v63877246-v2530270390))/(v916138054-v178886646) + ((-1.)*v2418357392*(v4156259701-v1477661232))/(v1333463548-v2541664477);
  auto v2077084972 = ((1.)-((0.125392))/(v1521070335))*((1.)-((0.401002))/(v1521070335));
  auto v1784760416 = (v3215216564*v111119486)/(v2111851279) + ((v3135162689-v3502841389)*(v2192947274-v2487489657))/(v888290467-v1211935458) + ((v3280766624-v3220637740)*(v2742420170-v2156539190))/(v3493176212-v3978116468) + ((v2476164519-v1080901134)*(v2635961706-v281711840))/(v1562520267-v1466574160);
  auto v1453132239 = ((1.)-((0.21528))/(v1521070335))*((1.)-((2.106379))/(v1521070335));
  auto v557166818 = (v839072984*v1742329417)/(v3712237063) + ((v2014012967-v3926831395)*(v924437421-v2844405163))/(v3663942510-v1498048574) + ((v63877246-v2530270390)*(v1228363810-v757347508))/(v916138054-v178886646) + ((v4156259701-v1477661232)*(v2772160503-v395958503))/(v1333463548-v2541664477);
  auto v3857412261 = (((1.)-x0[0])*(((1.))/(v2111851279) + ((-1.)*v1490855688*v3627579820)/(v888290467-v1211935458) + ((-1.)*v64939503*v2458863037)/(v3493176212-v3978116468) + ((-1.)*v1000633181*v3704780237)/(v1562520267-v1466574160) + ((-1.)*v4247864182*v2269855808)/(v3154148802-v1784760416)))/(v3037555099-x0[0]);
  auto v2325087427 = ((3.799438)*(v1521070335-(0.23))*(((0.096547))/((1.7919)-v1521070335) + (0.79299) + (-0.15099)*((3.799438)*v1521070335-(1.)) + (0.00811)*((3.799438)*v1521070335-(1.))*((3.799438)*v1521070335-(1.)))-std::complex<double>(0.,1.)*((v1453132239>(0.))?sqrt(v1453132239):std::complex<double>(0.,1.)*sqrt((-1.)*v1453132239))*((3.799438)*(v1521070335-(0.23))*(((0.096547))/((1.7919)-v1521070335) + (0.79299) + (-0.15099)*((3.799438)*v1521070335-(1.)) + (0.00811)*((3.799438)*v1521070335-(1.))*((3.799438)*v1521070335-(1.)))*(3.799438)*(v1521070335-(0.23))*(((0.00054))/((1.7919)-v1521070335) + (0.17054) + (-0.0219)*((3.799438)*v1521070335-(1.)) + (0.000857)*((3.799438)*v1521070335-(1.))*((3.799438)*v1521070335-(1.)))-(3.799438)*(v1521070335-(0.23))*(((-0.007218))/((1.7919)-v1521070335) + (0.1504) + (-0.038266)*((3.799438)*v1521070335-(1.)) + (0.00226)*((3.799438)*v1521070335-(1.))*((3.799438)*v1521070335-(1.)))*(3.799438)*(v1521070335-(0.23))*(((-0.007218))/((1.7919)-v1521070335) + (0.1504) + (-0.038266)*((3.799438)*v1521070335-(1.)) + (0.00226)*((3.799438)*v1521070335-(1.))*((3.799438)*v1521070335-(1.)))))/((1.)-((v2077084972>(0.))?sqrt(v2077084972):std::complex<double>(0.,1.)*sqrt((-1.)*v2077084972))*((v1453132239>(0.))?sqrt(v1453132239):std::complex<double>(0.,1.)*sqrt((-1.)*v1453132239))*((3.799438)*(v1521070335-(0.23))*(((0.096547))/((1.7919)-v1521070335) + (0.79299) + (-0.15099)*((3.799438)*v1521070335-(1.)) + (0.00811)*((3.799438)*v1521070335-(1.))*((3.799438)*v1521070335-(1.)))*(3.799438)*(v1521070335-(0.23))*(((0.00054))/((1.7919)-v1521070335) + (0.17054) + (-0.0219)*((3.799438)*v1521070335-(1.)) + (0.000857)*((3.799438)*v1521070335-(1.))*((3.799438)*v1521070335-(1.)))-(3.799438)*(v1521070335-(0.23))*(((-0.007218))/((1.7919)-v1521070335) + (0.1504) + (-0.038266)*((3.799438)*v1521070335-(1.)) + (0.00226)*((3.799438)*v1521070335-(1.))*((3.799438)*v1521070335-(1.)))*(3.799438)*(v1521070335-(0.23))*(((-0.007218))/((1.7919)-v1521070335) + (0.1504) + (-0.038266)*((3.799438)*v1521070335-(1.)) + (0.00226)*((3.799438)*v1521070335-(1.))*((3.799438)*v1521070335-(1.))))-std::complex<double>(0.,1.)*(((v1453132239>(0.))?sqrt(v1453132239):std::complex<double>(0.,1.)*sqrt((-1.)*v1453132239))*(3.799438)*(v1521070335-(0.23))*(((0.00054))/((1.7919)-v1521070335) + (0.17054) + (-0.0219)*((3.799438)*v1521070335-(1.)) + (0.000857)*((3.799438)*v1521070335-(1.))*((3.799438)*v1521070335-(1.))) + ((v2077084972>(0.))?sqrt(v2077084972):std::complex<double>(0.,1.)*sqrt((-1.)*v2077084972))*(3.799438)*(v1521070335-(0.23))*(((0.096547))/((1.7919)-v1521070335) + (0.79299) + (-0.15099)*((3.799438)*v1521070335-(1.)) + (0.00811)*((3.799438)*v1521070335-(1.))*((3.799438)*v1521070335-(1.)))));
  auto v1142142481 = (((1.)-x0[0])*(((1.))/(v3712237063) + ((-1.)*v2690895429*v173793696)/(v3663942510-v1498048574) + ((-1.)*v2392666732*v2950282091)/(v916138054-v178886646) + ((-1.)*v2418357392*v3238823049)/(v1333463548-v2541664477) + ((-1.)*v2246649186*v3057249796)/(v4174506558-v557166818)))/(v1836426858-x0[0]);
  auto v1119554543 = ((3.799438)*(v1139362541-(0.23))*(((0.096547))/((1.7919)-v1139362541) + (0.79299) + (-0.15099)*((3.799438)*v1139362541-(1.)) + (0.00811)*((3.799438)*v1139362541-(1.))*((3.799438)*v1139362541-(1.)))-std::complex<double>(0.,1.)*((v2955496159>(0.))?sqrt(v2955496159):std::complex<double>(0.,1.)*sqrt((-1.)*v2955496159))*((3.799438)*(v1139362541-(0.23))*(((0.096547))/((1.7919)-v1139362541) + (0.79299) + (-0.15099)*((3.799438)*v1139362541-(1.)) + (0.00811)*((3.799438)*v1139362541-(1.))*((3.799438)*v1139362541-(1.)))*(3.799438)*(v1139362541-(0.23))*(((0.00054))/((1.7919)-v1139362541) + (0.17054) + (-0.0219)*((3.799438)*v1139362541-(1.)) + (0.000857)*((3.799438)*v1139362541-(1.))*((3.799438)*v1139362541-(1.)))-(3.799438)*(v1139362541-(0.23))*(((-0.007218))/((1.7919)-v1139362541) + (0.1504) + (-0.038266)*((3.799438)*v1139362541-(1.)) + (0.00226)*((3.799438)*v1139362541-(1.))*((3.799438)*v1139362541-(1.)))*(3.799438)*(v1139362541-(0.23))*(((-0.007218))/((1.7919)-v1139362541) + (0.1504) + (-0.038266)*((3.799438)*v1139362541-(1.)) + (0.00226)*((3.799438)*v1139362541-(1.))*((3.799438)*v1139362541-(1.)))))/((1.)-((v3634940496>(0.))?sqrt(v3634940496):std::complex<double>(0.,1.)*sqrt((-1.)*v3634940496))*((v2955496159>(0.))?sqrt(v2955496159):std::complex<double>(0.,1.)*sqrt((-1.)*v2955496159))*((3.799438)*(v1139362541-(0.23))*(((0.096547))/((1.7919)-v1139362541) + (0.79299) + (-0.15099)*((3.799438)*v1139362541-(1.)) + (0.00811)*((3.799438)*v1139362541-(1.))*((3.799438)*v1139362541-(1.)))*(3.799438)*(v1139362541-(0.23))*(((0.00054))/((1.7919)-v1139362541) + (0.17054) + (-0.0219)*((3.799438)*v1139362541-(1.)) + (0.000857)*((3.799438)*v1139362541-(1.))*((3.799438)*v1139362541-(1.)))-(3.799438)*(v1139362541-(0.23))*(((-0.007218))/((1.7919)-v1139362541) + (0.1504) + (-0.038266)*((3.799438)*v1139362541-(1.)) + (0.00226)*((3.799438)*v1139362541-(1.))*((3.799438)*v1139362541-(1.)))*(3.799438)*(v1139362541-(0.23))*(((-0.007218))/((1.7919)-v1139362541) + (0.1504) + (-0.038266)*((3.799438)*v1139362541-(1.)) + (0.00226)*((3.799438)*v1139362541-(1.))*((3.799438)*v1139362541-(1.))))-std::complex<double>(0.,1.)*(((v2955496159>(0.))?sqrt(v2955496159):std::complex<double>(0.,1.)*sqrt((-1.)*v2955496159))*(3.799438)*(v1139362541-(0.23))*(((0.00054))/((1.7919)-v1139362541) + (0.17054) + (-0.0219)*((3.799438)*v1139362541-(1.)) + (0.000857)*((3.799438)*v1139362541-(1.))*((3.799438)*v1139362541-(1.))) + ((v3634940496>(0.))?sqrt(v3634940496):std::complex<double>(0.,1.)*sqrt((-1.)*v3634940496))*(3.799438)*(v1139362541-(0.23))*(((0.096547))/((1.7919)-v1139362541) + (0.79299) + (-0.15099)*((3.799438)*v1139362541-(1.)) + (0.00811)*((3.799438)*v1139362541-(1.))*((3.799438)*v1139362541-(1.)))));
  auto v1878288762 = v2325087427*v3857412261;
  auto v347476789 = v1119554543*v1142142481;
return (0.707107)*(v347476789 + v1878288762);
}

extern "C" std::complex<double> D0_KPi40_FOCUS_Kpi__Kp_pim__PiPi40_kMatrix_prod_0__pip_pim___wParams( const double*__restrict__ E ){
  double externalParameters [] = {-0.07, 1, -0.15, 0.22889, 0.651, 0.94128, 1.2036, 0.36856, 1.55817, 0.3365, 1.21, 0.18171, 1.82206, 0.23399, -3.92637, -0.55377, 0.55095, 0.23888, 0.40907, -0.17558, 0.15044, 0, 0, 0.55639, 0.85679, -0.79658, -0.20545, -0.39899, 0.39065, 0.1834, 0.19906, -0.00355, 0.32825, -0.34639, 0.31503, 0.18681, -0.00984, 0.22358, 0.35412 }; 
  return D0_KPi40_FOCUS_Kpi__Kp_pim__PiPi40_kMatrix_prod_0__pip_pim__( externalParameters, E ); // E is P 
}
extern "C" const char* D0_rho_1450_0_pip_pim__Ks_892_0_Kp_pim___name() {  return "D0{rho(1450)0{pi+,pi-},K*(892)0{K+,pi-}}"; } 
extern "C" std::complex<double> D0_rho_1450_0_pip_pim__Ks_892_0_Kp_pim__(double const* x0, double const* x1){
  auto v3067068972 = sqrt((0.01948) + x1[12]*x1[12] + x1[13]*x1[13] + x1[14]*x1[14]);
  auto v2683369444 = sqrt((0.01948) + x1[4]*x1[4] + x1[5]*x1[5] + x1[6]*x1[6]);
  auto v732589286 = sqrt((0.243717) + x1[0]*x1[0] + x1[1]*x1[1] + x1[2]*x1[2]);
  auto v604511646 = sqrt((0.01948) + x1[8]*x1[8] + x1[9]*x1[9] + x1[10]*x1[10]);
  auto v3864776319 = (-1.)*(x1[14] + x1[6])*(x1[14] + x1[6]) + (v3067068972 + v2683369444)*(v3067068972 + v2683369444) + (-1.)*(x1[13] + x1[5])*(x1[13] + x1[5]) + (-1.)*(x1[12] + x1[4])*(x1[12] + x1[4]);
  auto v3303589013 = (-1.)*(x1[14] + x1[10])*(x1[14] + x1[10]) + (v3067068972 + v604511646)*(v3067068972 + v604511646) + (-1.)*(x1[13] + x1[9])*(x1[13] + x1[9]) + (-1.)*(x1[12] + x1[8])*(x1[12] + x1[8]);
  auto v1521070335 = (-1.)*(x1[2] + x1[10])*(x1[2] + x1[10]) + (v732589286 + v604511646)*(v732589286 + v604511646) + (-1.)*(x1[1] + x1[9])*(x1[1] + x1[9]) + (-1.)*(x1[0] + x1[8])*(x1[0] + x1[8]);
  auto v1139362541 = (-1.)*(x1[2] + x1[6])*(x1[2] + x1[6]) + (v732589286 + v2683369444)*(v732589286 + v2683369444) + (-1.)*(x1[1] + x1[5])*(x1[1] + x1[5]) + (-1.)*(x1[0] + x1[4])*(x1[0] + x1[4]);
  auto v3405928622 = (0.25)*(v3864776319-(0.03896)-(0.03896));
  auto v3287524337 = (0.25)*(v3303589013-(0.03896)-(0.03896));
  auto v3199098040 = std::abs((0.25)*(v3864776319-(0.03896)-(0.03896)));
  auto v2222218056 = std::abs((0.25)*(v1521070335-(0.487434)-(0.03896) + ((0.050282))/(v1521070335)));
  auto v1148200210 = (0.25)*(v1139362541-(0.487434)-(0.03896) + ((0.050282))/(v1139362541));
  auto v865896472 = std::abs((0.25)*(v1139362541-(0.487434)-(0.03896) + ((0.050282))/(v1139362541)));
  auto v263973954 = (0.25)*(v1521070335-(0.487434)-(0.03896) + ((0.050282))/(v1521070335));
  auto v139006945 = std::abs((0.25)*(v3303589013-(0.03896)-(0.03896)));
  auto v3544975691 = (sqrt((0.900316)*x0[3]*x0[4]*x0[3]*sqrt(x0[4]*x0[4] + x0[3]*x0[3])*1./sqrt(x0[3]*sqrt(x0[4]*x0[4] + x0[3]*x0[3]) + x0[3]*x0[3]))*sqrt(((1.))/((1.) + v865896472*x0[5]*x0[5])))/(x0[3]*x0[3]-v1139362541-((std::complex<double>(0.,1.)*x0[3]*x0[4]*((1.) + std::abs((0.25)*(x0[3]*x0[3]-(0.487434)-(0.03896) + ((0.050282))/(x0[3]*x0[3])))*x0[5]*x0[5])*sqrt((((v1148200210>(0.))?v1148200210:(0.)))/(std::abs((0.25)*(x0[3]*x0[3]-(0.487434)-(0.03896) + ((0.050282))/(x0[3]*x0[3])))))*((v1148200210>(0.))?v1148200210:(0.))*x0[3]*1./sqrt(v1139362541))/(std::abs((0.25)*(x0[3]*x0[3]-(0.487434)-(0.03896) + ((0.050282))/(x0[3]*x0[3])))))/((1.) + ((v1148200210>(0.))?v1148200210:(0.))*x0[5]*x0[5]));
  auto v3467292341 = (-1.)*(x1[2] + x1[6])*(x1[2] + x1[6]) + (v732589286 + v2683369444)*(v732589286 + v2683369444) + (-1.)*(x1[1] + x1[5])*(x1[1] + x1[5]) + (-1.)*(x1[0] + x1[4])*(x1[0] + x1[4]);
  auto v3436398798 = (sqrt((0.900316)*x0[0]*x0[1]*x0[0]*sqrt(x0[1]*x0[1] + x0[0]*x0[0])*1./sqrt(x0[0]*sqrt(x0[1]*x0[1] + x0[0]*x0[0]) + x0[0]*x0[0]))*sqrt(((1.))/((1.) + v139006945*x0[2]*x0[2])))/(x0[0]*x0[0]-v3303589013-((std::complex<double>(0.,1.)*x0[0]*x0[1]*((1.) + std::abs((0.25)*(x0[0]*x0[0]-(0.03896)-(0.03896)))*x0[2]*x0[2])*sqrt((((v3287524337>(0.))?v3287524337:(0.)))/(std::abs((0.25)*(x0[0]*x0[0]-(0.03896)-(0.03896)))))*((v3287524337>(0.))?v3287524337:(0.))*x0[0]*1./sqrt(v3303589013))/(std::abs((0.25)*(x0[0]*x0[0]-(0.03896)-(0.03896)))))/((1.) + ((v3287524337>(0.))?v3287524337:(0.))*x0[2]*x0[2]));
  auto v2108236252 = (sqrt((0.900316)*x0[3]*x0[4]*x0[3]*sqrt(x0[4]*x0[4] + x0[3]*x0[3])*1./sqrt(x0[3]*sqrt(x0[4]*x0[4] + x0[3]*x0[3]) + x0[3]*x0[3]))*sqrt(((1.))/((1.) + v2222218056*x0[5]*x0[5])))/(x0[3]*x0[3]-v1521070335-((std::complex<double>(0.,1.)*x0[3]*x0[4]*((1.) + std::abs((0.25)*(x0[3]*x0[3]-(0.487434)-(0.03896) + ((0.050282))/(x0[3]*x0[3])))*x0[5]*x0[5])*sqrt((((v263973954>(0.))?v263973954:(0.)))/(std::abs((0.25)*(x0[3]*x0[3]-(0.487434)-(0.03896) + ((0.050282))/(x0[3]*x0[3])))))*((v263973954>(0.))?v263973954:(0.))*x0[3]*1./sqrt(v1521070335))/(std::abs((0.25)*(x0[3]*x0[3]-(0.487434)-(0.03896) + ((0.050282))/(x0[3]*x0[3])))))/((1.) + ((v263973954>(0.))?v263973954:(0.))*x0[5]*x0[5]));
  auto v1604197072 = (sqrt((0.900316)*x0[0]*x0[1]*x0[0]*sqrt(x0[1]*x0[1] + x0[0]*x0[0])*1./sqrt(x0[0]*sqrt(x0[1]*x0[1] + x0[0]*x0[0]) + x0[0]*x0[0]))*sqrt(((1.))/((1.) + v3199098040*x0[2]*x0[2])))/(x0[0]*x0[0]-v3864776319-((std::complex<double>(0.,1.)*x0[0]*x0[1]*((1.) + std::abs((0.25)*(x0[0]*x0[0]-(0.03896)-(0.03896)))*x0[2]*x0[2])*sqrt((((v3405928622>(0.))?v3405928622:(0.)))/(std::abs((0.25)*(x0[0]*x0[0]-(0.03896)-(0.03896)))))*((v3405928622>(0.))?v3405928622:(0.))*x0[0]*1./sqrt(v3864776319))/(std::abs((0.25)*(x0[0]*x0[0]-(0.03896)-(0.03896)))))/((1.) + ((v3405928622>(0.))?v3405928622:(0.))*x0[2]*x0[2]));
  auto v1590400259 = (-1.)*(x1[14] + x1[10])*(x1[14] + x1[10]) + (v3067068972 + v604511646)*(v3067068972 + v604511646) + (-1.)*(x1[13] + x1[9])*(x1[13] + x1[9]) + (-1.)*(x1[12] + x1[8])*(x1[12] + x1[8]);
  auto v1323540992 = (-1.)*(x1[14] + x1[6])*(x1[14] + x1[6]) + (v3067068972 + v2683369444)*(v3067068972 + v2683369444) + (-1.)*(x1[13] + x1[5])*(x1[13] + x1[5]) + (-1.)*(x1[12] + x1[4])*(x1[12] + x1[4]);
  auto v403366188 = (-1.)*(x1[2] + x1[10])*(x1[2] + x1[10]) + (v732589286 + v604511646)*(v732589286 + v604511646) + (-1.)*(x1[1] + x1[9])*(x1[1] + x1[9]) + (-1.)*(x1[0] + x1[8])*(x1[0] + x1[8]);
  auto v4251772951 = v1604197072*v2108236252;
  auto v3114752748 = ((-1.)*(x1[14] + x1[6])*(x1[14]-x1[6]) + (v3067068972-v2683369444)*(v3067068972 + v2683369444) + (-1.)*(x1[13] + x1[5])*(x1[13]-x1[5]) + (-1.)*(x1[12] + x1[4])*(x1[12]-x1[4]))/(v1323540992);
  auto v3078308559 = ((-1.)*(x1[2] + x1[6])*(x1[2]-x1[6]) + (v732589286-v2683369444)*(v732589286 + v2683369444) + (-1.)*(x1[1] + x1[5])*(x1[1]-x1[5]) + (-1.)*(x1[0] + x1[4])*(x1[0]-x1[4]))/(v3467292341);
  auto v2670871143 = ((-1.)*(x1[2] + x1[10])*(x1[2]-x1[10]) + (v732589286-v604511646)*(v732589286 + v604511646) + (-1.)*(x1[1] + x1[9])*(x1[1]-x1[9]) + (-1.)*(x1[0] + x1[8])*(x1[0]-x1[8]))/(v403366188);
  auto v1253388601 = ((-1.)*(x1[14] + x1[10])*(x1[14]-x1[10]) + (v3067068972-v604511646)*(v3067068972 + v604511646) + (-1.)*(x1[13] + x1[9])*(x1[13]-x1[9]) + (-1.)*(x1[12] + x1[8])*(x1[12]-x1[8]))/(v1590400259);
  auto v268507930 = v3436398798*v3544975691;
return (0.707107)*(v268507930*((-1.)*(x1[13]-x1[9]-v1253388601*(x1[13] + x1[9]))*(x1[1]-x1[5]-v3078308559*(x1[1] + x1[5])) + (-1.)*(x1[12]-x1[8]-v1253388601*(x1[12] + x1[8]))*(x1[0]-x1[4]-v3078308559*(x1[0] + x1[4])) + (-1.)*(x1[14]-x1[10]-v1253388601*(x1[14] + x1[10]))*(x1[2]-x1[6]-v3078308559*(x1[2] + x1[6])) + (v732589286-v2683369444-v3078308559*(v732589286 + v2683369444))*(v3067068972-v604511646-v1253388601*(v3067068972 + v604511646))) + v4251772951*((-1.)*(x1[13]-x1[5]-v3114752748*(x1[13] + x1[5]))*(x1[1]-x1[9]-v2670871143*(x1[1] + x1[9])) + (-1.)*(x1[12]-x1[4]-v3114752748*(x1[12] + x1[4]))*(x1[0]-x1[8]-v2670871143*(x1[0] + x1[8])) + (-1.)*(x1[14]-x1[6]-v3114752748*(x1[14] + x1[6]))*(x1[2]-x1[10]-v2670871143*(x1[2] + x1[10])) + (v732589286-v604511646-v2670871143*(v732589286 + v604511646))*(v3067068972-v2683369444-v3114752748*(v3067068972 + v2683369444))));
}

extern "C" std::complex<double> D0_rho_1450_0_pip_pim__Ks_892_0_Kp_pim___wParams( const double*__restrict__ E ){
  double externalParameters [] = {1.465, 0.4, 1.5, 0.896, 0.0503, 1.5 }; 
  return D0_rho_1450_0_pip_pim__Ks_892_0_Kp_pim__( externalParameters, E ); // E is P 
}
extern "C" const char* AMP_name() {  return "AMP"; } 
extern "C" std::complex<double> AMP(double const* x0, const int& x1){
return D0_D__Ks_892_0_Kp_pim__rho_770_0_pip_pim___wParams(x0) + double(x1)*std::complex<double>(-0.009529,-0.389884)*D0_P__Ks_892_0_Kp_pim__rho_770_0_pip_pim___wParams(x0)-std::complex<double>(0.32278,0.384675)*D0_K_1__1270_p_D_GSpline_EFF__Ks_892_0_Kp_pim__pip__pim__wParams(x0) + std::complex<double>(0.058286,0.246568)*D0_K_1__1270_p_GSpline_EFF__Ks_892_0_Kp_pim__pip__pim__wParams(x0) + std::complex<double>(0.194375,-0.305107)*D0_K_1__1270_p_GSpline_EFF__KPi20_FOCUS_Kpi__Kp_pim__pip__pim__wParams(x0) + std::complex<double>(0.019333,0.093357)*D0_K_1__1270_p_GSpline_EFF__omega_782_0_pip_pim__Kp__pim__wParams(x0) + std::complex<double>(0.842671,-1.011405)*D0_K_1__1270_p_GSpline_EFF__rho_1450_0_pip_pim__Kp__pim__wParams(x0) + std::complex<double>(0.230819,0.610845)*D0_K_1__1270_p_GSpline_EFF__rho_770_0_pip_pim__Kp__pim__wParams(x0) + std::complex<double>(0.485949,0.278305)*D0_K_1__1400_p_Ks_892_0_Kp_pim__pip__pim__wParams(x0) + std::complex<double>(0.202748,-0.030301)*D0_Ks_892_0_Kp_pim__rho_770_0_pip_pim___wParams(x0) + std::complex<double>(0.061445,0.294118)*D0_KPi40_FOCUS_I32__Kp_pim__PiPi40_kMatrix_pole_1__pip_pim___wParams(x0) + std::complex<double>(0.009109,-0.033068)*D0_KPi40_FOCUS_I32__Kp_pim__PiPi40_kMatrix_prod_0__pip_pim___wParams(x0)-std::complex<double>(0.295344,0.323443)*D0_KPi40_FOCUS_Kpi__Kp_pim__PiPi40_kMatrix_pole_1__pip_pim___wParams(x0) + std::complex<double>(0.013109,0.048251)*D0_KPi40_FOCUS_Kpi__Kp_pim__PiPi40_kMatrix_prod_0__pip_pim___wParams(x0) + std::complex<double>(0.502311,-0.20091)*D0_rho_1450_0_pip_pim__Ks_892_0_Kp_pim___wParams(x0);
}

extern "C" const char* FCN_name() {  return "FCN"; } 
extern "C" double FCN(double const* x0, const int& x1){
return (0.141942)*std::norm(D0_D__Ks_892_0_Kp_pim__rho_770_0_pip_pim___wParams(x0) + double(x1)*std::complex<double>(-0.009529,-0.389884)*D0_P__Ks_892_0_Kp_pim__rho_770_0_pip_pim___wParams(x0)-std::complex<double>(0.32278,0.384675)*D0_K_1__1270_p_D_GSpline_EFF__Ks_892_0_Kp_pim__pip__pim__wParams(x0) + std::complex<double>(0.058286,0.246568)*D0_K_1__1270_p_GSpline_EFF__Ks_892_0_Kp_pim__pip__pim__wParams(x0) + std::complex<double>(0.194375,-0.305107)*D0_K_1__1270_p_GSpline_EFF__KPi20_FOCUS_Kpi__Kp_pim__pip__pim__wParams(x0) + std::complex<double>(0.019333,0.093357)*D0_K_1__1270_p_GSpline_EFF__omega_782_0_pip_pim__Kp__pim__wParams(x0) + std::complex<double>(0.842671,-1.011405)*D0_K_1__1270_p_GSpline_EFF__rho_1450_0_pip_pim__Kp__pim__wParams(x0) + std::complex<double>(0.230819,0.610845)*D0_K_1__1270_p_GSpline_EFF__rho_770_0_pip_pim__Kp__pim__wParams(x0) + std::complex<double>(0.485949,0.278305)*D0_K_1__1400_p_Ks_892_0_Kp_pim__pip__pim__wParams(x0) + std::complex<double>(0.202748,-0.030301)*D0_Ks_892_0_Kp_pim__rho_770_0_pip_pim___wParams(x0) + std::complex<double>(0.061445,0.294118)*D0_KPi40_FOCUS_I32__Kp_pim__PiPi40_kMatrix_pole_1__pip_pim___wParams(x0) + std::complex<double>(0.009109,-0.033068)*D0_KPi40_FOCUS_I32__Kp_pim__PiPi40_kMatrix_prod_0__pip_pim___wParams(x0)-std::complex<double>(0.295344,0.323443)*D0_KPi40_FOCUS_Kpi__Kp_pim__PiPi40_kMatrix_pole_1__pip_pim___wParams(x0) + std::complex<double>(0.013109,0.048251)*D0_KPi40_FOCUS_Kpi__Kp_pim__PiPi40_kMatrix_prod_0__pip_pim___wParams(x0) + std::complex<double>(0.502311,-0.20091)*D0_rho_1450_0_pip_pim__Ks_892_0_Kp_pim___wParams(x0));
}

