 			_seqIndex = 0;			
 		}
 		
-		protected function playbackStateHandler(event:HLSEvent):void
-		{
-			if (event.state == HLSPlayStates.IDLE)
-			{
+		protected function playbackStateHandler(event:HLSEvent):void {
+			if (event.state == HLSPlayStates.IDLE) {
 				stop();
 			}
 		}

		 * Live subtitles are assumed to contain times reletive to the current
		 * sequence, and VOD content relative to the entire video duration 
		 */
		protected function fragmentPlayingHandler(event:HLSEvent):void
		{
			// If subtitles are disabled, there's nothing to do
			if (_hls.subtitlesTrack == -1) return;
			
			if (_hls.type == HLSTypes.LIVE)
			{
				_currentSubtitles = _emptySubtitles;
				_seqNum = event.playMetrics.seqnum;
				_seqStartPosition = _hls.position;
				_seqIndex = 0;
				
				try
				{
					var targetDuration:Number = _hls.subtitlesTracks[_hls.subtitlesTrack].level.targetduration
					var dvrWindowDuration:Number = _hls.liveSlidingMain;
					var firstSeqNum:Number = _seqNum - (dvrWindowDuration/targetDuration);
					
					for (var seqNum:* in _seqSubs)
					{
						if (seqNum is Number && seqNum < firstSeqNum)
						{
							delete _seqSubs[seqNum];
						}
					}

				
				// To keep the search for the next subtitles as inexpensive as possible
				// for big VOD, we start the next search at the previous jump off point
				if (_hls.type == HLSTypes.VOD) {
					_seqIndex = i;
				}
				
				if (matchingSubtitles != _currentSubtitles) {
					
					CONFIG::LOGGING {
						Log.debug("Changing subtitles to: "+matchingSubtitles);
					}
					
