first version of class