add code to accompany object model diagram