now creates an id based object graph to reduce object duplication.