moving getColors out of repeating loop, much improved