  that.update();
                                 that.changeTimeout = null;
                             }, this.changeDefer);
                         }
                     },

                     isListening: false,
                     hashChangeInterval: null,
                     startListening: function() {
                         this.map.on("moveend", this.onMapMove, this);

                         if (HAS_HASHCHANGE) {
                             L.DomEvent.addListener(window, "hashchange", t