add right left shift function