 void modeSolid();
 void modeRainbow();
 void modeRainbowCycle();
-void modeCubic();
+void modeBreathe();
+void modeSine();
+void modeEase();
 void (*modes[MAX_MODES])() = {
     &modeOff,
     &modeSolid,
     &modeRainbow,
     &modeRainbowCycle,
-    &modeCubic,
-    &modeOff,
-    &modeOff,
-    &modeOff,
+    &modeBreathe,
+    &modeSine,
+    &modeEase,
+    &modeEase,
     &modeOff,
     &modeOff
 };

    }
}

void modeCubic() {
    uint8_t cubic;
    uint8_t value;
    for (uint8_t led = 0; led < NUM_LEDS; led++) {
        cubic = animationCubic();
        value = map(cubic, 0, 255, min(70, pots.val), pots.val);
        leds[led] = CHSV(pots.hue, pots.sat, value);
    }
}

    clock = millis();
    diff = clock - lastClock;

    expectedDelay = map(pots.var, 1, 255, 250, 1);
    if (diff >= expectedDelay) {
        lastClock = clock;
        return 1;
