adding hash change tracking