enhance the register feature