     @checkNewTimeoutDefault = 10000
     @checkNewTimeoutMax = 60000
     @cache = {}
+    @disposers = new Set
     @timeouts = {}
     @xhr = {}
     @state = JSON.parse(props.container.dataset.beatmapsetDiscussionState ? null)


    Timeout.clear(timeout) for _name, timeout of @timeouts
    xhr?.abort() for _name, xhr of @xhr


  render: =>

    $(document).on "click.#{@eventId}", '.js-beatmap-discussion--jump', @jumpToClick
    $(document).on "turbolinks:before-cache.#{@eventId}", @saveStateToContainer

    if !@restoredState
      @disposers.add core.reactTurbolinks.runAfterPageLoad(@jumpToDiscussionByHash)

    @timeouts.checkNew = Timeout.set @checkNewTimeoutDefault, @checkNew


