this trinary operator is hard to read, please add spaces around ? and :