 	
 		private var _vpaidEventsDispatcher:IEventDispatcher = null;
 
+		/**
+		 * True if VPAID AdVideoStarted event has been received
+		 */
+		private var videoStarted:Boolean;
+		/**
+		 * True if JS is ready, and beacons are loaded if needed.
+		 */
+		private var jsReady:Boolean;
+
+
         ////////////////////////////////////////////////////////////
         //   CONSTRUCTOR 
         ////////////////////////////////////////////////////////////

					_intervalTimer = null;
					break;
				case VPAIDEvent.AdVideoStart:
					startImpressionTimer();
					break;
				default:
					// do nothing

         * this function is called so that the ad can wait for the beacons to load before dispatching AdLoaded
         */
		public function onJsReady(): void {
			jsReady = true;
			if ( videoStarted ) {
				startImpressionTimer();
			}
			raiseReady();
		}
		/**
