             options: .usesLineFragmentOrigin,
             attributes: attributes,
             context: nil
-        ).size
-        return (buttonSize?.height ?? 0.0) + (insets?.top ?? 0.0) + (insets?.bottom ?? 0.0)
+        ).size ?? .zero
+        return buttonSize.height + insets.top + insets.bottom
     }
 
     override func sizeThatFits(_ size: CGSize) -> CGSize {

        }
    }

    func height(forButtonText text: String?, width: CGFloat) -> CGFloat {
        let insets = buttonInsets
        let textSize = CGSize(
            width: width - (insets?.left ?? 0.0) - (insets?.right ?? 0.0),
            height: CGFloat.greatestFiniteMagnitude)
        var attributes: [NSAttributedString.Key: Any]?
        if let font1 = button?.titleLabel?.font {

        }
    }
    private weak var label: UILabel?
    private let buttonInsets = UIEdgeInsets(top: 5, left: 5, bottom: 5, right: 15)

    override init(frame: CGRect) {
        super.init(frame: frame)
