         delegate?.actionButtonWillClose?(self)
         
         isAnimating = true
-        isOpen = false
         animatedItemTag = 0
         
         reduceItems()


    fileprivate var containerOpenSize: CGSize = .zero
    fileprivate var baseButtonOpenCenter: CGPoint = .zero
    fileprivate var isOpen = false
    fileprivate var isAnimating = false
    fileprivate var animatedItemTag: Int = 0
    fileprivate let superviewBoundsKeyPath = "layer.bounds"
    fileprivate var observesSuperviewBounds = false
    
    fileprivate(set) var items = [UPActionButtonItem]()
    
    weak var delegate: UPActionButtonDelegate?
    
    /* Customization */
    var itemSize: CGSize = CGSize(width: 30, height: 30) {

        
        item.center = center
    }

    func animationDidStop(_ anim: CAAnimation, finished flag: Bool) {
        animatedItemTag += 1
        guard animatedItemTag >= items.count else { return }
        
        isOpen = !isOpen
        if isOpen {
            delegate?.actionButtonDidOpen?(self)
        }
