         }
     }
     
-    var minOffset: CGFloat { return !isScrollStretchable ? topPadding : max(topPadding, bounds.height - (header?.bounds.height ?? 0) - scroll.contentSize.height) }
+    var minOffset: CGFloat { return isScrollStretchable ? topPadding : max(topPadding, bounds.height - (header?.bounds.height ?? 0) - scroll.contentSize.height) }
     var maxOffset: CGFloat { return max(minOffset, bounds.height - minContentHeight) }
     var anchorOffset: CGFloat? { return anchorFraction.flatMap { bounds.height * (1 - $0) } }
     

            super.observeValue(forKeyPath: keyPath, of: object, change: change, context: context)
            return
        }
        guard isScrollStretchable else { return }
        update()
    }
    

     
     Animatable.
     
     The default value is `true`.
     */
    public var isScrollStretchable: Bool = true {
        didSet { update() }
    }
    
