Нет, объявления надо не просто бездумно вставить в цикл, а объявить там, где происходит их первая инициализация внутри этих циклов. Смотрите комментарии для переменной ``Color``.