     pattern_disorient_2();
   } else if (pattern == 4) {
     pattern_phase_rainbow_pulse();
+  } else if (pattern == 5) {
+    pattern_color_palettes();
   }
 
   gLED->setBrightness(gBrightness);

uint8_t ignore_button_cycles = 0;

NSFastLED::CFastLED* gLED; // global CFastLED object

// make sure we disable wifi cause we dont need that shit!
SYSTEM_MODE(SEMI_AUTOMATIC);

  base_hue += HUE_STEP;
}

// cycle thru color palettes
void pattern_color_palettes() {
  for( int i = 0; i < PIXEL_COUNT; ++i) {
    uint8_t pIndex = (i + 6*i*PIXEL_COUNT/PIXEL_COUNT + gAnimIndex)%256;
    leds[i] = NSFastLED::ColorFromPalette(currentPalette, pIndex, 255, currentBlending);
  }
  gAnimIndex = (gAnimIndex+3)%256;
}

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