added rest of class functions