         self.offset = amount
         return self
     }
+    public func offset(amount: Double) -> Constraint {
+        return self.offset(Float(amount))
+    }
+    public func offset(amount: CGFloat) -> Constraint {
+        return self.offset(Float(amount))
+    }
     public func offset(amount: Int) -> Constraint {
-        self.offset = amount
-        return self
+        return self.offset(Float(amount))
+    }
+    public func offset(amount: UInt) -> Constraint {
+        return self.offset(Float(amount))
     }
     public func offset(amount: CGPoint) -> Constraint {
         self.offset = amount

        self.multiplier = amount
        return self
    }
    public func dividedBy(amount: Float) -> Constraint {
        self.multiplier = 1.0 / amount;
        return self
    }
    
    // MARK: priority
    

                return size.height
            }
        }
        // CGPoint
        else if let point = value as? CGPoint {
            if self == .Left || self == .CenterX {
                return point.x
