better argument and log handling