added queue shift