       if (random16(N_LEDS * 0.4) < numberOfSparkles) {
         shootingStar();
       }
-    }
-
-    EVERY_N_MILLISECONDS(10) {
       fade_raw(Soulmate::led_arr, N_LEDS, 1);
     }
 

  }

  void lanternPattern() {
    EVERY_N_MILLISECONDS(40) {
      for (int i = 0; i < snakesCount; i++) {
        uint16_t j = snakes[i];
        if (j > 0) {
          // Different hue for shooting stars
          Soulmate::led_arr[j] = CHSV(hue + j / 10 + 10, 240, 255);

          snakes[i] += circumference+1;
          if (snakes[i] >= N_LEDS) snakes[i] = 0;
        }
      }

namespace Lantern {
  const int snakesCount = 10;
  const int circumference = LEDS_PER_ROW;
  int numberOfSparkles = 0;
  bool increasing = true;
  uint8_t hue = 50;

  uint16_t snakes[snakesCount];
  int snake = 0;
