fix array shifting