again, improved parsing of arguments