added error validation and a class and high fives