         
         if visibleFrame.contains(location) {
             if let tappedLabelDrawers = (labelDrawers.filter{$0.drawers.contains{drawer in CGRectInset(drawer.frame, -tapSettings.expandArea.width, -tapSettings.expandArea.height).contains(location)}}).first {
-                tapSettings.handler?(tappedLabelDrawers)
+                tapSettings.handler?((valueLabelDrawers: tappedLabelDrawers, layer: self))
                 return tappedLabelDrawers
             } else {
                 return nil

    case Current /// Reserves space for currently visible labels
}


public struct ChartAxisLayerTapSettings {
    public let expandArea: CGSize
    let handler: (ChartAxisValueLabelDrawers -> Void)?
    
    public init(expandArea: CGSize = CGSizeMake(10, 10), handler: (ChartAxisValueLabelDrawers -> Void)? = nil) {
        self.expandArea = expandArea
        self.handler = handler
    }


    let clipContents: Bool
    
    public var tapSettings: ChartAxisLayerTapSettings?
    
    var widthWithoutLabels: CGFloat {
        return width
