work on relink and pushState