     
     func bottom(points:CGFloat) -> UIView {
         if let spv = superview {
-            let c = NSLayoutConstraint(item: self, attribute: .Bottom, relatedBy: .Equal, toItem: spv, attribute: .Bottom, multiplier: 1, constant: -points)
+            let c = constraint(item: self, attribute: .Bottom, toItem: spv, constant: -points)
             spv.addConstraint(c)
         }
         return self


func alignVertically(v1:UIView, with v2:UIView) {
    if let spv = v1.superview {
        let c = NSLayoutConstraint(item: v1, attribute: .CenterX, relatedBy: .Equal, toItem: v2, attribute: .CenterX, multiplier: 1, constant: 0)
        spv.addConstraint(c)
    }
}

func fillHorizontally(v:UIView) {
    if let spv = v.superview {
        let c1 = NSLayoutConstraint(item: v, attribute: .Left, relatedBy: .Equal, toItem: spv, attribute: .Left, multiplier: 1, constant: 0)
        let c2 = NSLayoutConstraint(item: v, attribute: .Right, relatedBy: .Equal, toItem: spv, attribute: .Right, multiplier: 1, constant: 0)
        spv.addConstraints([c1,c2])
    }
}

// MARK: - Position

extension UIView {
    
    func left(points:CGFloat) -> UIView {
        if let spv = superview {
            let c = constraint(item: self, attribute: .Left, toItem: spv, constant: points)
            spv.addConstraint(c)
        }
        return self
