     ///   - padding: Optional padding to add between the anchors.
     /// - Returns: The activated `NSLayoutConstraint` object that was created.
     @discardableResult
-    func pin(_ edge: HorizontalAnchor, lessThanOrEqualTo anchorAttachment: NSLayoutAnchor<NSLayoutXAxisAnchor>, padding: CGFloat = 0.0) -> NSLayoutConstraint {
+    public func pin(_ edge: HorizontalAnchor, lessThanOrEqualTo anchorAttachment: NSLayoutAnchor<NSLayoutXAxisAnchor>, padding: CGFloat = 0.0) -> NSLayoutConstraint {
         let constraint = anchor(self, for: edge).constraint(lessThanOrEqualTo: anchorAttachment,
                                                             constant: convertPadding(edge, padding))
 

    ///   - padding: Optional padding to add between the anchors.
    /// - Returns: The activated `NSLayoutConstraint` object that was created.
    @discardableResult
    func pin<View:Pins>(_ dimension: DimensionAnchor, greaterThanOrEqualTo view: View, padding: CGFloat = 0.0) -> NSLayoutConstraint {
        let constraint = anchor(self, for: dimension).constraint(greaterThanOrEqualTo: anchor(view, for: dimension), constant: padding)

        return disableTranslatesAutoresizingMaskAndActivate(constraint)

    var translatesAutoresizingMaskIntoConstraints: Bool { get set }
}

public extension Pins {
    // Stub methods that are missing so UILayoutGuid and NsLayoutGuid will conform
    var firstBaselineAnchor: NSLayoutYAxisAnchor {
        return topAnchor
