added check reg/dereg, mucked with the Register type