 			return _vastDocument;
 		}
 		
+		/**
+		 * for vast3 ad pods: go over all translator, if there are sequenced ads, return their starting index,
+		 * otherwise select random ad 
+		 * 
+		 */		
+		private function setStartingTranslatorIndex():void
+		{
+			if (_vastDocument is VAST3Translator)
+			{
+				var vastObjs:Array = (_vastDocument as VAST3Translator).vastObjects;
+				_sequencedAds = false;
+				
+				if (vastObjs.length == 1)
+					return;
+				
+				for (var i:int = 0; i<vastObjs.length; i++)
+				{
+					//ads are sorted by sequence property. If we encountered an ad with "sequence" value, start playing all ads in sequence
+					if ((vastObjs[i] as VAST2Translator).sequence)
+					{
+						_sequencedAds = true;
+						_translatorIndex = i;
+						return;
+					}
+				}
+				
+				//if we got here we don't have sequenced ads, select random ad to play
+				_translatorIndex = Math.random() * (vastObjs.length);
+			}
+			
+		}
+		
 		// ==============================================
 		// IEventDispatcher methods
 		// ==============================================

				(_vastDocument.vastVersion == VASTDataObject.VERSION_3_0) &&
				(_vastDocument is VAST3Translator) && 
				(_vastDocument as VAST3Translator).vastObjects && 
				((_vastDocument as VAST3Translator).vastObjects.length - 1)>=_translatorIndex);
		}
		
		/**

				_loadTimer.removeEventListener(TimerEvent.TIMER_COMPLETE, onLoadTimeout );
				_vastDocument = (e.loadTrait as VASTLoadTrait).vastDocument;
				_vastMediaGenerator = new VASTMediaGenerator(null, _mediaFactory);
				if (_vastDocument.vastVersion == VASTDataObject.VERSION_3_0)
					setStartingTranslatorIndex();
				
				createMediaElements();
			//In case there was an error parsing or loading the VAST xml
			} else if (e.newState == LoadState.LOAD_ERROR) {
