 uint8_t ignore_button_cycles = 0;
 
 NSFastLED::CFastLED* gLED; // global CFastLED object
+
+// for palette support
+uint8_t gAnimIndex = 0;
+uint8_t gPalette = 0;
+NSFastLED::CRGBPalette16 currentPalette = NSFastLED::RainbowColors_p;
+NSFastLED::TBlendType currentBlending = NSFastLED::LINEARBLEND;
 
 // make sure we disable wifi cause we dont need that shit!
 SYSTEM_MODE(SEMI_AUTOMATIC);

  base_hue += HUE_STEP;
}

// rainbow pulsing with varied breathing cycles
void pattern_phase_rainbow_pulse() {
  uint8_t cBrightness = NSFastLED::beatsin8(128, 0, 255);

    pattern_disorient_2();
  } else if (pattern == 4) {
    pattern_phase_rainbow_pulse();
  } else if (pattern == 5) {
    pattern_color_palettes();
  }

  gLED->setBrightness(gBrightness);
