pub fn sl24(x: f64) -> f64 {
let pi = core::f64::consts::PI;
let pi2 = pi*pi;
let pi4 = pi2*pi2;
let pi6 = pi4*pi2;
let pi8 = pi4*pi4;
let pi10 = pi6*pi4;
let pi12 = pi6*pi6;
let pi14 = pi8*pi6;
let pi16 = pi8*pi8;
let pi18 = pi10*pi8;
let pi20 = pi10*pi10;
let pi22 = pi12*pi10;
let pi24 = pi12*pi12;
let x2 = x*x;
236364091.0*pi24/201919571963756521875.0 + x2*(-77683.0*pi22/13447856940643125.0 + x2*(174611.0*pi20/36751907166975000.0 + x2*(-43867.0*pi18/28065092745690000.0 + x2*(3617.0*pi16/13129867951200000.0 + x2*(-1.0/33100507440000.0*pi14 + x2*(691.0*pi12/305848688745600000.0 + x2*(-1.0/8155965033216000.0*pi10 + x2*(pi8/197720364441600000.0 + x2*(-1.0/6050243151912960000.0*pi6 + x2*(pi4/218961180735897600000.0 + x2*(-1.0/6744004366665646080000.0*pi2 + (pi/51704033477769953280000.0 - 1.0/1240896803466478878720000.0*x)*x)))))))))))
}