add validaitons and change user model