added shift left and right