     
     //MARK: - Set size
     
-    func setSize (size:CGSize) {
-        var frame = self.frame
-        frame.size = size
-        self.frame = frame
+    var size: CGSize {
+        set (value) {
+            self.frame.size = size
+        }
+        
+        get {
+            return self.frame.size
+        }
     }
     
     var width:CGFloat {
         
         set (value) {
-            self.setSize(CGSizeMake(value, frame.size.height))
+            self.size = CGSizeMake(value, frame.size.height)
         }
         
         get {

    var height:CGFloat {
        
        set (value) {
            self.setSize(CGSizeMake(frame.size.width, height))
        }
        
        get {

    
    //MARK: - Set origin
    
    var origin: CGPoint {
        set (value) {
            self.frame.origin = value
        }
        get {
            return self.frame.origin
        }
    }
    
    var x: CGFloat {
        
        set (value) {
            self.origin = CGPointMake(value, frame.origin.y)
        }
        
        get {
