Implemented recursive assign.