     // MARK: -
     // MARK: Private property.
     
+    private var rateFaceMargin: CGFloat = 1
     private var touchPoint: CGPoint? = nil
     private var hueFrom: CGFloat = 0, saturationFrom: CGFloat = 0, brightnessFrom: CGFloat = 0, alphaFrom: CGFloat = 0
     private var hueDelta: CGFloat = 0, saturationDelta: CGFloat = 0, brightnessDelta: CGFloat = 0, alphaDelta: CGFloat = 0


@IBDesignable
public class EmojiRateView: UIView {
    /// Margin between face and view.
    private static let rateFaceMargin: CGFloat = 12
    
    /// Rate default color for rateValue = 5
    private static let rateLineColorBest: UIColor = UIColor.init(hue: 165 / 360, saturation: 0.8, brightness: 0.9, alpha: 1.0)
    

        let width = CGRectGetWidth(rect)
        let height = CGRectGetWidth(rect)
        
        let centerPoint = CGPointMake(
            width * (isLeftEye ? 0.30 : 0.70),
            height * (1 - rateEyeVerticalPosition) - height * 0.1 * (CGFloat(rateValue > 2.5 ? rateValue : 2.5) - 2.5) / 5)
        
        let leftPoint = CGPointMake(
            centerPoint.x - rateEyeWidth / 2 * width,
            height * (1 - rateEyeVerticalPosition))
        
        let rightPoint = CGPointMake(
            centerPoint.x + rateEyeWidth / 2 * width,
            leftPoint.y)
        
        let eyePath = UIBezierPath()
