 			reloadingManifest.addEventListener(Event.COMPLETE, onReloadComplete);
 			reloadingManifest.addEventListener(IOErrorEvent.IO_ERROR, onReloadError);
 			reloadingManifest.reload(manToReload);
+
 		}
 		
 		private function onReloadError(event:Event):void

			trace("Scheduling reload for quality " + quality);
			reloadingQuality = quality;

			// Reload the manifest we were given, if we were given a manifest
			var manToReload:HLSManifestParser = manifest ? manifest : getManifestForQuality(reloadingQuality);
			reloadingManifest = new HLSManifestParser();

				if(!checkAnySegmentKnowledge(newManifest.segments) 
					&& !_bestEffortDownloaderMonitor)
				{
					trace("(A) Encountered a live/VOD manifest with no timebase knowledge, request newest segment via best effort path for quality " + reloadingQuality);
					_pendingBestEffortRequest = initiateBestEffortRequest(uint.MAX_VALUE, reloadingQuality);
				} else if(!checkAnySegmentKnowledge(currentManifest.segments) 
					&& !_bestEffortDownloaderMonitor)
				{
					trace("(A) Encountered a live/VOD manifest with no timebase knowledge, request newest segment via best effort path for quality " + reloadingQuality);
					_pendingBestEffortRequest = initiateBestEffortRequest(uint.MAX_VALUE, reloadingQuality);
				}

				if(!checkAnySegmentKnowledge(newManifest.segments) && !checkAnySegmentKnowledge(currentManifest.segments))
				{
					trace("Bailing on reload due to lack of knowledge!");
					
					// re-reload.
					reloadingManifest = null; // don't want to hang on to it
					if (reloadTimer) reloadTimer.start();

					return;
				}

			}


			// Remap time.
			if(reloadingQuality != lastQuality)
			{
				updateSegmentTimes(currentManifest.segments);
				updateSegmentTimes(newManifest.segments);

				const fudgeTime:Number = 1.0;
				var lastSeg:HLSManifestSegment = getSegmentBySequence(currentManifest.segments, lastSequence);
				var newSeg:HLSManifestSegment = lastSeg ? getSegmentContainingTime(newManifest.segments, lastSeg.startTime + lastSeg.duration) : null;
				if(newSeg == null)
				{
					trace("Remapping from " + lastSequence);	
					trace("ERROR: Couldn't remap sequence to new quality level, restarting at sequence " + newManifest.segments[0].id);
					lastSequence = newManifest.segments[0].id;
				}
				else
				{
					trace("Remapping from " + lastSequence + " to " + (lastSeg.startTime + lastSeg.duration));
					trace("===== Remapping to " + lastSequence + " new " + (newSeg.id));
					lastSequence = newSeg.id;
				}
			}

			// Update our manifest for this quality level.
			trace("Setting quality to " + reloadingQuality);
			manifest.streams[reloadingQuality].manifest = newManifest;
			lastQuality = reloadingQuality;

			// Kick off the next round as appropriate.
			dispatchDVRStreamInfo();
