impl integer shifts