added username and validation