class definitions/ clean up