factored out colors