fixed this up to work with our required classes