make color its own type again, rather than boolean