 	}
 	var curvaceousness: CGFloat = 2.0
 	var tintColor = defaultTintColor
-
+	
 	override func drawInContext(ctx: CGContext) {
 		let thumbFrame = bounds.insetBy(dx: 2.0, dy: 2.0)
 		let cornerRadius = thumbFrame.height * curvaceousness / 2.0
 		let thumbPath = UIBezierPath(roundedRect: thumbFrame, cornerRadius: cornerRadius)
-
+		
 		// Fill
 		CGContextSetFillColorWithColor(ctx, tintColor.CGColor)
 		CGContextAddPath(ctx, thumbPath.CGPath)
 		CGContextFillPath(ctx)
-
+		
 		// Outline
 		let strokeColor = UIColor.clearColor()
 		CGContextSetStrokeColorWithColor(ctx, strokeColor.CGColor)
 		CGContextSetLineWidth(ctx, 0.5)
 		CGContextAddPath(ctx, thumbPath.CGPath)
 		CGContextStrokePath(ctx)
-
+		
 		// Highlight
 		if highlighted {
 			CGContextSetFillColorWithColor(ctx, UIColor(white: 0.0, alpha: 0.1).CGColor)

			return CGFloat(scaledPosition + Float(CGRectGetMinX(trackLayer.frame)) + scale/2)
		}
	}

	/**
		The track is divided into number of nodes. Each node is assigned one value. 
		
		This method fetches the node nearest to the given thumb position and returns the value assinged to the node.

		- parameter position: The thumb position for which node value to be calculated

		- returns: 
			The value assinged to the node if any valid node exists at the given position, else it returns nil.
	*/

	private func nodeValueForPosition(position: CGFloat)-> Float? {
		let scale = trackLayer.frame.size.width / CGFloat(nodesList.count)
		let scaledPosition = position - CGRectGetMinX(trackLayer.frame)

			trackLayer.setNeedsDisplay()
		}
	}
	
	/**
	The color used to tint the part of the track which is outside the range of lowerValue and upperValue.
	
	The default color is lightGrayColor.
	*/
	
	@IBInspectable public var trackTintColor: UIColor = RangeSliderTrackLayer.defaultTintColor {
		didSet {
			trackLayer.tintColor = trackTintColor
			trackLayer.setNeedsDisplay()
		}
	}
	
	/**
	The color used to tint the part of the track which is inside the range of lowerValue and upperValue.
	
	The default color is #007AFF (rgba = 0, 122, 255, 1)
	*/
	
	@IBInspectable public var trackHighlightTintColor: UIColor = RangeSliderTrackLayer.defaultHighlightTintColor {
		didSet {
			trackLayer.highlightTintColor = trackHighlightTintColor
			trackLayer.setNeedsDisplay()
		}
	}
	
	/**
	This property is used to control the curvature of ends of the track.
	
	The property can have value from 0 to 1.
	*/
	
	@IBInspectable public var trackCurvaceousness: CGFloat = 1.0 {
		didSet {
			if trackCurvaceousness < 0.0 {
				trackCurvaceousness = 0.0
			}
			
			if trackCurvaceousness > 1.0 {
				trackCurvaceousness = 1.0
			}
