work on pushstate helper popstate
added popstate