regist logic