Redefine register() and implements put()