route changes and fixed unshift