   
   for(int i = 0; i < count; i++){
     rgb_color color = random_color();
-    do_power_shift(window, window + DEMO_TOTAL_SIZE);
+ 
+//    do_power_shift(window, window + DEMO_TOTAL_SIZE);
+//    //do_elastic_shift(window, window + DEMO_TOTAL_SIZE);
+
+    power_shift_object(DEMO_TOTAL_SIZE, window);
+    
     window -= DEMO_TOTAL_SIZE;
 
     int effect = random_effect();

      delay(POWER_EASE_DELAY);
      shift(pos+1, max);
    }
    if(!display_only){
      finalize_shift(count, max);
    }
  }
}


#define DEMO_TOTAL_SIZE (DEMO_OBJECT_SIZE + DEMO_GAP_SIZE)

// be able to reverse shift/animation direction

void power_shift_object(int width, int shift){
  do_power_shift(shift, shift + width);
}

void do_demo(int count = ANIM_LED_COUNT / DEMO_TOTAL_SIZE){

