             "buttonsStackView": buttonsStackView
         ]
         let viewMetrics: [String: Any] = [
-            "margin": spacing * 2,
+            "margin": margin,
             "spacing": spacing,
             "titleSubtitleSpacing": titleSubtitleSpacing,
             "bottomSpacing": bottomSpacing,
             "alertViewWidth": 450,
             "alertImageHeight": (alertImage.image != nil) ? imageHeight : 0,
             "alertTitleHeight": 22,
-            "buttonsStackViewHeight": (buttonsStackView.arrangedSubviews.count > 0) ? 44 : 0
+            "buttonsStackViewHeight": (buttonsStackView.arrangedSubviews.count > 0) ? buttonHeight : 0
         ]
 
         if let alertViewWidth = alertViewWidth {

         NSLayoutConstraint.constraints(withVisualFormat: "H:|-margin-[alertTitle]-margin-|",
                                        options: [], metrics: viewMetrics, views: viewsDict),
         NSLayoutConstraint.constraints(withVisualFormat: "H:|-margin-[alertSubtitle]-margin-|",
                                        options: [], metrics: viewMetrics, views: viewsDict),
         NSLayoutConstraint.constraints(withVisualFormat: "H:|-margin-[buttonsStackView]-margin-|",
                                        options: [], metrics: viewMetrics, views: viewsDict)
            ].forEach { NSLayoutConstraint.activate($0) }
    }

    open override func viewWillAppear(_ animated: Bool) {

        return lbl
    }()

    fileprivate(set) public var buttonsStackView : UIStackView = {
        let sv = UIStackView()
        sv.translatesAutoresizingMaskIntoConstraints = false
        sv.distribution = .fillEqually
