add reg logic