added primary and secondary color randomization