implemented some uml classes