improve parser a bit