      */
     override protected function thumb_mouseDownHandler(event:MouseEvent):void
     {
-		// finish previous animation
-		if (animator && animator.isPlaying)
-			stopAnimation();
-		
+        // finish previous animation
+        if (animator && animator.isPlaying)
+            stopAnimation();
+        
         super.thumb_mouseDownHandler(event);
         clickOffset = thumb.globalToLocal(new Point(event.stageX, event.stageY));
-				
+                
         // Popup a dataTip only if we have a SkinPart and the boolean flag is true
         if (dataTip && showDataTip && enabled)
         {
             dataTipInstance = IDataRenderer(createDynamicPartInstance("dataTip"));
-			
-			dataTipInstance.data = formatDataTipText(
-				nearestValidValue(pendingValue, snapInterval));
-			
-			var tipAsUIComponent:UIComponent = dataTipInstance as UIComponent;
-			
-			// Allow styles to be inherited from Slider.
-			if (tipAsUIComponent)
-			{
-				tipAsUIComponent.owner = this;
-				tipAsUIComponent.isPopUp = true;
-			}
-
-			systemManager.toolTipChildren.addChild(DisplayObject(dataTipInstance));
-			
+            
+            dataTipInstance.data = formatDataTipText(
+                nearestValidValue(pendingValue, snapInterval));
+            
+            var tipAsUIComponent:UIComponent = dataTipInstance as UIComponent;
+            
+            // Allow styles to be inherited from Slider.
+            if (tipAsUIComponent)
+            {
+                tipAsUIComponent.owner = this;
+                tipAsUIComponent.isPopUp = true;
+            }
+
+            systemManager.toolTipChildren.addChild(DisplayObject(dataTipInstance));
+            
             // Force the dataTip to render so that we have the correct size since
             // updateDataTip might need the size
             if (tipAsUIComponent)

            case Keyboard.END:
            {
                value = maximum;
				if (value != prevValue)
					dispatchEvent(new Event(Event.CHANGE));
                event.preventDefault();
                break;
            }
        }
    }
	
	/**
	 *  @private
	 *  Handle keyboard release events. Allows us to send out exactly
	 *  one change event per user gesture.
	 */
	override protected function keyUpHandler(event:KeyboardEvent) : void
	{
		switch (event.keyCode)
		{
			case Keyboard.DOWN:
			case Keyboard.LEFT:
			case Keyboard.UP:
			case Keyboard.RIGHT:
			{
				if (isKeyDown)
				{
					// Dispatch "change" event only after a repeat occurs.
					dispatchEvent(new Event(Event.CHANGE));
					isKeyDown = false;
				}
				event.preventDefault();
				break;
			}
		}
	}
	    
    /**
     *  @private
     *  Handle mouse-down events for the slider track. We

            case Keyboard.DOWN:
            case Keyboard.LEFT:
            {
                newValue = nearestValidValue(pendingValue - stepSize, snapInterval);
                
                if (prevValue != newValue)
                {
                    if (!isKeyDown)
                    {
                        dispatchEvent(new FlexEvent(FlexEvent.CHANGE_START));
                        isKeyDown = true;
                    }
                    setValue(newValue);
                    dispatchEvent(new Event(Event.CHANGE));
                }
                event.preventDefault();
                break;
            }
