package org.firstinspires.ftc.team7316.util.input;

/**
 * A wrapper for a single joystick axis.
 */
public class AxisWrapper {

    private GamepadAxis inputName;
    private GamepadWrapper gpWrapper;

    public AxisWrapper (GamepadAxis inputName, GamepadWrapper gpWrapper) {
        this.inputName = inputName;
        this.gpWrapper = gpWrapper;
    }

    public float value() {
        return gpWrapper.axisValue(inputName);
    }

    public String name() {
        return String.valueOf(this.inputName);
    }
}

@@ -194,16 +194,42 @@
 Wrapper;
+%0A    private double power;
 %0A%0A    pu
@@ -244,17 +244,16 @@
 sWrapper
- 
 (Gamepad
@@ -292,16 +292,30 @@
 pWrapper
+, double power
 ) %7B%0A    
@@ -378,24 +378,172 @@
  gpWrapper;%0A
+        this.power = power;%0A    %7D%0A%0A    public AxisWrapper(GamepadAxis inputName, GamepadWrapper gpWrapper) %7B%0A        this(inputName, gpWrapper, 1);%0A
     %7D%0A%0A    p
@@ -572,22 +572,29 @@
         
-return
+float input =
  gpWrapp
@@ -614,24 +614,131 @@
 inputName);%0A
+        float value = (float) Math.abs(Math.pow(input, power));%0A        return input %3E 0 ? value : -value;%0A
     %7D%0A%0A    p

Add exponentials to AxisWrapper