updated hide mechanism