const byte downstairs[] = {1, 3, 5};
const byte downstairsCount = sizeof downstairs / sizeof downstairs[0];
const byte upstairs[] = {2, 4};
const byte upstairsCount = sizeof upstairs / sizeof upstairs[0];
const byte garden[] = {6, 7, 8};
const byte gardenCount = sizeof garden / sizeof garden[0];
const byte shed[] = {9, 10};
const byte shedCount = sizeof shed / sizeof shed[0];

const byte  groupCount = 4;
const byte *groups[groupCount] = {downstairs, upstairs, garden, shed};

const  byte  groupLengths[groupCount] = {downstairsCount, upstairsCount, gardenCount, shedCount};

# define DOWNSTAIRS 0
# define UPSTAIRS 1
# define GARDEN 2
# define SHED 3

void burnGroup(byte whichGroup)
{
    for (int ii = 0; ii < groupLengths[whichGroup]; ii++) { 
        Serial.print(groups[whichGroup][ii]);
        Serial.print("   ");

// also set the poixel in the buffer: 
//     leds[groups[whichGroup][ii]] = CRGB::Blue;   
    }
}

void setup()
{
  Serial.begin(115200);
  Serial.println("WAKE UP!\n");

  loopOnce();
}

void loopOnce()
{
  Serial.print("group 0 :  ");
  burnGroup(0);
	Serial.println();

  Serial.print("group UPSTAIRS : ");
  burnGroup(UPSTAIRS);
	Serial.println();

  Serial.print("group 3 :  ");
  burnGroup(3);
	Serial.println();
}

void loop(){}