Implemented register and validation