Updated class diagram and rules