public static float InOutPower(float t, int power)
        {
            t *= 2f;
            if ((double)t < 1.0)
            {
                return(Easy.InPower(t, power) * 0.5f);
            }
            int num = power % 2 == 0 ? -1 : 1;

            return((float)((double)num * 0.5 * ((double)Mathf.Pow(t - 2f, (float)power) + (double)(num * 2))));
        }
 public static float InOutBounce(float t) =>
 (double)t < 0.5 ? Easy.InBounce(t * 2f) * 0.5f : (float)((double)Easy.OutBounce((float)(((double)t - 0.5) * 2.0)) * 0.5 + 0.5);
 public static float InBounce(float t) => 1f - Easy.OutBounce(1f - t);
 public static float InOutCubic(float t) => Easy.InOutPower(t, 3);
 public static float InCubic(float t) => Easy.InPower(t, 3);
 public static float InOutBack(float t, float s) =>
 (double)t < 0.5 ? Easy.InBack(t * 2f, s) * 0.5f : (float)((double)Easy.OutBack((float)(((double)t - 0.5) * 2.0), s) * 0.5 + 0.5);
 public static float OutBack(float t, float s) => 1f - Easy.InBack(1f - t, s);
 public static float OutBack(float t) => 1f - Easy.InBack(1f - t);
 public static float InOutElastic(float t) =>
 (double)t < 0.5 ? Easy.InElastic(t * 2f) * 0.5f : (float)((double)Easy.OutElastic((float)(((double)t - 0.5) * 2.0)) * 0.5 + 0.5);