handle local assignment
recurse