                 
                 if drawTransparentCircleHole
                 {
+                    if let curHighlights = curHighlights {
+                        for high in curHighlights {
+                            if let set = lineData.getDataSetByIndex(high.dataSetIndex) as? LineChartDataSet
+                                , set.isHighlightEnabled {
+                                
+                                if let hightE = set.entryForXValue(high.x, closestToY: high.y), isInBoundsX(entry: hightE, dataSet: set) {
+                                    if hightE.isEqual(e) { context.setFillColor(set.highlightHollowFillColor.cgColor)
+                                    }
+                                }
+                            }
+                        }
+                    }
+                    
                     // Begin path for circle with hole
                     context.beginPath()
                     context.addEllipse(in: rect)

                    if drawCircleHole
                    {
                        context.setFillColor(dataSet.circleHoleColor!.cgColor)
                     
                        // The hole rect
                        rect.origin.x = pt.x - circleHoleRadius
                        rect.origin.y = pt.y - circleHoleRadius

            for j in stride(from: _xBounds.min, through: _xBounds.range + _xBounds.min, by: 1)
            {
                guard let e = dataSet.entryForIndex(j) else { break }
                
                pt.x = CGFloat(e.x)
                pt.y = CGFloat(e.y * phaseY)
                pt = pt.applying(valueToPixelMatrix)
