fixed up class 2, added class 3