         self.trailing = trailing
     }
 
-    public func filter(filter: LayoutEdge...) -> EdgeAnchors {
-        return self.filter(filter)
-    }
-
-    public func filter(filter: [LayoutEdge]) -> EdgeAnchors {
+    private func filter(filter: [LayoutEdge]) -> EdgeAnchors {
         var filteredAnchors = self
         filteredAnchors.includedEdges = includedEdges.filter { filter.contains($0) }
 

        }
    }

    private func transformConstant(c: CGFloat) -> CGFloat {
        switch self {
        case .Top, .Leading:
            return c

        return [top, leading, bottom, trailing].flatMap { $0 }
    }

    private subscript (edge: LayoutEdge) -> NSLayoutConstraint? {
        get {
            switch edge {
            case .Top:      return top
