 				}
 				seekingTimer.stop();
 			}
+            this.dispatchEvent(new JplayerEvent(JplayerEvent.DEBUG_MSG, myStatus, "seeking: End"));
 		}
 		private function seekingHandler(e:TimerEvent):void {
+            this.dispatchEvent(new JplayerEvent(JplayerEvent.DEBUG_MSG, myStatus, "seekingHandler: Start - type = " + e.type));
 			if(getSeekTimeRatio() <= getLoadRatio()) {
 				seeking(false);
 				if(myStatus.playOnSeek) {

			myStatus.volume = volume;

            this.dispatchEvent(new JplayerEvent(JplayerEvent.DEBUG_MSG, myStatus, "JplayerMp4 initialized: volume = " + volume));

		}
		private function progressUpdates(active:Boolean):void {
			if(active) {
				progressTimer.start();
			} else {
				progressTimer.stop();
			}
		}
		private function progressHandler(e:TimerEvent):void {
            this.dispatchEvent(new JplayerEvent(JplayerEvent.DEBUG_MSG, myStatus, "progressHandler: " + e.type));
			if(myStatus.isLoading) {
				if(getLoadRatio() == 1) { // Close as can get to a loadComplete event since client.onPlayStatus only works with FMS
					myStatus.loaded();


			if(myStatus.isStartingDownload) {
				myStatus.playOnLoad = true; // Raise flag, captured in onMetaDataHandler()
                this.dispatchEvent(new JplayerEvent(JplayerEvent.DEBUG_MSG, myStatus, "play: End"));
				return true;
			} else if(myStatus.loadRequired()) {
				myStatus.playOnLoad = true; // Raise flag, captured in onMetaDataHandler()
                this.dispatchEvent(new JplayerEvent(JplayerEvent.DEBUG_MSG, myStatus, "play: End"));
				return load();
			} else if((myStatus.isLoading || myStatus.isLoaded) && !myStatus.isPlaying) {
				if(myStatus.metaDataReady && myStatus.pausePosition > myStatus.duration) { // The time is invalid, ie., past the end.
