* @throws IllegalArgumentException If the given color is not one of the recognized values.
*/
public synchronized void setLevelColor(final Level level, final String color) throws IllegalArgumentException {
boolean changed = false;
if (color != null) {
final X364 code = X364.forColorName(color).background();
changed = (colors().put(level, code) != code);
} else if (colors != null) {
changed = (colors.remove(level) != null);
if (colors.isEmpty()) {
colors = null;