           </div>
         </div>
         """
-      # - `triggerContent` can be the name of the trigger element's attribute or a
-      #   function that provides custom content when given the trigger element.
       triggerContent: null
-      # NOTE: For these tip plugins, the majority of presentation state logic is
-      # in the plugin stylesheet. We update the presentation state by using
-      # namespaced `classNames` generated in a closure.
-      # 
-      # - `classNames.stem` - Empty string to remove the stem.
-      # - `classNames.follow` - Empty string to disable cursor following.
       classNames: do ->
         classNames = {}
         keys = ['inner', 'content', 'stem', 'top', 'right', 'bottom', 'left', 'follow', 'trigger']
         (classNames[key] = "#{pre}#{key}") for key in keys
         classNames.tip = 'js-tip'
         classNames
-      # - `animator` by default uses the stock jQuery animation system. If you
-      #   want a more performant system, like GreenSock or Velocity, replace
-      #   this with a custom implementation.
       animator:
         show: ($el, options) -> $el.stop().fadeIn options
         hide: ($el, options) -> $el.stop().fadeOut options
-      # - `animations` are very configurable. Individual animations can be
-      #   customized and will default to the base animation settings as needed.
       animations:
         base:
           delay: 0

      containerClass = $.trim [@classNames.tip, @classNames.follow, directionClass].join ' '
      html = @tipTemplate containerClass

    # ƒ `_isDirection` is a helper to deduce if `$tip` currently has the given
    # `directionComponent`. The tip is considered to have the same direction as
    # the given `$trigger` if it has the classes or if there is no trigger or
    # saved direction value and the directionComponent is part of
    # `defaultDirection`. Note that this latter check is placed last for
    # performance savings.
    _isDirection: (directionComponent, $trigger) ->
      @$tip.hasClass(@classNames[directionComponent]) or (
        (not $trigger? or not $trigger.data(@attr('direction'))) and
        _.include(@defaultDirection, directionComponent)
      )

    # ƒ `_offsetForTrigger` is a helper to return the proper trigger offset for
    # proper tip attachment. Fixed-position triggers need to fall back to the
    # fool-proof `$.fn.offset`. This is despite `$.fn.position` being de-facto
    # for elements sharing a parent positioning context.
    _offsetForTrigger: ($trigger) ->
      if $trigger.css('position') is 'fixed' then $trigger.offset()
      else $trigger.position()

    # ƒ `_setCurrentTrigger` is a simple setter that updates a trigger and makes
    # it current, but only if it isn't already.
    _setCurrentTrigger: ($trigger) ->
      @_triggerChanged = not $trigger.is @_$currentTrigger
      return no unless @_triggerChanged

      @_$currentTrigger = $trigger


    # ___setState__ also performs minor tasks when switching to a new state, if
    # it did not first return `false` from no state change.
    _setState: (state, data) ->
      return no if state is @_state
      #- previous = @_state
