add barrel shifter