etc/octaspire_easing_amalgamated.c
double octaspire_easing_in_out_quart(double t, double const b, double const c, double const d)
{
    t /= (d * 0.5);
    if (t < 1) return c/2*t*t*t*t + b;
    t -= 2;
    return -c/2 * ((t*t*t*t) - 2) + b;
}
// quartic easing in/out - acceleration until halfway, then deceleration
quartic easing in/out - acceleration until halfway, then deceleration
quartic easing in / out - acceleration until halfway then deceleration
double octaspire_easing_in_out_quart(double t, double const b, double const c, double const d)
{
    t /= (d * 0.5);
    if (t < 1) return c/2*t*t*t*t + b;
    t -= 2;
    return -c/2 * ((t*t*t*t) - 2) + b;
}
double octaspire_easing_in_out_quart ( double t , double const b , double const c , double const d ) { t /= ( d * 0.5 ) ; if ( t < 1 ) return c / 2 * t * t * t * t + b ; t -= 2 ; return - c / 2 * ( ( t * t * t * t ) - 2 ) + b ; }
quartic easing in/out - acceleration until halfway, then deceleration
quartic easing in / out - acceleration until halfway then deceleration