 
         stackedClass: 'stacked'
 
-        # Overlay class name
+        # Overlay classes for adjacent siblings before and after the
+        # overflowed element
         overlayBeforeClass: 'overlay-before'
         overlayAfterClass: 'overlay-after'
 
-        # Overlay class for the parent for the first and last elements
+        # Overlay classes for the parent for the first and last elements
         overlayFirstClass: 'overlay-first'
         overlayLastClass: 'overlay-last'
 

                maxHeight: getMaxHeight(@$element, @options)
                minHeight: getMinHeight(@$element, @options)

            heights = getStackedHeights(@$element, options)
            applyStackedHeights(@$element, heights, options)
            return @

        listen: ->
            $(window).on('resize', @_stack)
            @$element.children().on('scroll', @_scroll)
            return @

        unlisten: ->
            $(window).off('resize', @_stack)
            @$element.children().off('scroll', @_scroll)
            return @


            @$element = $(element).addClass(options.stackedClass)
            @options = options

            @stack()
            @_applied = true

            @_optimized = getFluidChildren(@$element, @options).length < 2

            # An optimized stack does not require debouncing since it does
            # not involving recomputing the child positions.
            if @_optimized
                @_restack = @stack
            else
                @_restack = _.debounce(@stack, 50)

            @_scroll = (event) =>
                $child = $(event.target)
                toggleChildOverlay($child, @options)

            @listen()

        overlay: =>
