         build()
     }
     
-    private func attachProperty<T>(param: Data<T>, state: ButtonStyleKit.ButtonState) -> T? {
+    private func attachProperty<T>(_ prop: Property<T>, state: ButtonStyleKit.ButtonState) -> T? {
         switch state {
         case .all:
             return nil
         case .normal:
-            return param.normal
+            return prop.normal
         case .highlighted:
-            return param.highlighted
+            return prop.highlighted
         case .selected:
-            return param.selected
+            return prop.selected
         case .disabled:
-            return param.disabled
+            return prop.disabled
         }
     }
 }

        return self
    }
    
    private func setProperty<T>(param: Data<T>, value: T, state: ButtonStyleKit.ButtonState) {
        switch state {
        case .all:
            param.normal = value

        // Image
        let scale = UIScreen.main.scale
        UIGraphicsBeginImageContextWithOptions(view.frame.size, false, scale)
        guard let context = UIGraphicsGetCurrentContext() else { return nil }
        view.layer.render(in: context)
        let image = UIGraphicsGetImageFromCurrentImageContext()
        UIGraphicsEndImageContext()
