     
     open func makeAvailable(rect: CGRect, radiusInset: CGFloat) {
         focus = (TouchArea.rect(rect: rect), MaskArea.radiusInset(radiusInset: radiusInset))
+    }
+    
+    open func setActionForAvailableArea(_ action: @escaping () -> Void) {
+        availableAction = action
+    }
+    
+    open func setActionForUnavailableArea(_ action: @escaping () -> Void) {
+        unavailableAction = action
     }
     
     open override func layoutSubviews() {

    
    @IBOutlet open weak var prevButton: UIButton?
    @IBOutlet open weak var nextButton: UIButton?
    open override var backgroundColor: UIColor? {
        get {
            return fillColor

                    return self.convert(view.frame, from: view.superview)
                }
            }()
            if bypassRect.contains(point) {
                availableAction?()
                return nil
            }
        }
        
        return super.hitTest(point, with: event)
