these are the revised model classes that I've added base on the revision
of the diagram.