hash/pushstate delegate