colour refactor