
		// <![CDATA[
			var pos = 0;
			var move_id ='';
			// vertical slider control
			var slider1 = new Control.Slider('handle1', 'track1', {
				axis: 'vertical',
				onSlide: function(v) { scrollVertical(v, $('scrollable1'), slider1);  },
				onChange: function(v) { scrollVertical(v, $('scrollable1'), slider1); }
			});
			
		
			
			// scroll the element vertically based on its width and the slider maximum value
			function scrollVertical(value, element, slider) {
				//alert(value);
				 pos = value;
				element.scrollTop = Math.round(value/slider.maximum*(element.scrollHeight-element.offsetHeight));
			}
			
			// scroll the element horizontally based on its width and the slider maximum value
			function scrollHorizontal(value, element, slider) {
				element.scrollLeft = Math.round(value/slider.maximum*(element.scrollWidth-element.offsetWidth));
			}
			
			
			check_overflow();
			
			function check_overflow(){
				// disable vertical scrolling if text doesn't overflow the div
				if($('scrollable1').scrollHeight <= $('scrollable1').offsetHeight) {
					//slider1.setDisabled();
					//$('track1').hide();
					document.getElementById('handle1').style.display = "none";
				}  else{
					document.getElementById('handle1').style.display = "block";
				}
			}
			
			function moveDown(){
				//alert(pos);
				if(pos<.99){
					pos= pos + .005;
					document.getElementById('handle1').style.top = slider1.translateToPx(pos);
					scrollVertical(pos, $('scrollable1'), slider1);
					arrowMove();
				} else{
					clearMove();
				}
			}
			
			function moveUp(){
				if(pos>0){
					pos= pos - .005;
					document.getElementById('handle1').style.top = slider1.translateToPx(pos);
					scrollVertical(pos, $('scrollable1'), slider1);
					arrowMoveUp();
				} else{
					clearMove();
				}
			}
			
			function arrowMove(){
				move_id = setTimeout('moveDown();',10);
			}
			
			function arrowMoveUp(){
				move_id = setTimeout('moveUp();',10);
			}
			
			function clearMove(){
				clearTimeout(move_id);
			}
			

		// ]]>
		