fix recurse() to allow None argument values to be set