no need to parse whitespace twice