   0.0,
   0.0,  // a few extra make it feel more natural
   0.0,
-//  0.0,
-//  0.0,
   0,0
 };
 

#define BLINK_4 3999
#define BLINK_5 4999
#define BLINK_6 5999
int blink_counter = 0;
bool blink_state = true; // false means blank

// blink group
bool blink_state_1 = true; 
bool blink_state_2 = true; 
bool blink_state_3 = true; 
bool blink_state_4 = true; 
bool blink_state_5 = true; 
bool blink_state_6 = true; 

void start_blinking(){
  effects[0] = BLINK_ON;
}

void start_blinking_1(){
  effects[0] = BLINK_ON_1;
}

void start_blinking_2(){
  effects[0] = BLINK_ON_2;
}

void start_blinking_3(){
  effects[0] = BLINK_ON_3;
}

void start_blinking_4(){
  effects[0] = BLINK_ON_4;
}

void start_blinking_5(){
  effects[0] = BLINK_ON_5;
}

void start_blinking_6(){
  effects[0] = BLINK_ON_6;
}

void start_blinking_r(){

// show something if the data hasn't updated in a long time
// automatically stop and restart the script at night
// blink a/b
// show something if the data has been unchanged for some time, like after hours
// detect if the group of builds has been added to, then do an insertion animation
// after pause, allow breathing and blinking to come to a halt first
// rotation
// transitions
// if something is not recognized assume it's an argument for the next command

    if     (is_command(str, "pause"))    paused = true;  
    else if(is_command(str, "continue")) paused = false;
    else if(is_command(str, "erase"))    erase(true);
    else if(is_command(str, "blink"))    start_effect(BLINK_ON);
    else if(is_command(str, "blink1"))   start_effect(BLINK_ON_1);
    else if(is_command(str, "blink2"))   start_effect(BLINK_ON_2);
    else if(is_command(str, "blink3"))   start_effect(BLINK_ON_3);
    else if(is_command(str, "blink4"))   start_effect(BLINK_ON_4);
    else if(is_command(str, "blink5"))   start_effect(BLINK_ON_5);
    else if(is_command(str, "blink6"))   start_effect(BLINK_ON_6);
    else if(is_command(str, "blinkr"))   start_blinking_r();
    else if(is_command(str, "blinka"))   start_effect(BLINK_ON_A);
    else if(is_command(str, "blinkb"))   start_effect(BLINK_ON_B);
    else if(is_command(str, "breathe"))  start_effect(BREATHE_ON);
    else if(is_command(str, "flush"))    flush();
    else if(is_command(str, "blend"))    do_blend();
    else if(is_command(str, "max"))      do_max();
