Got an iPhone or iPad? We have a brand new Pastebin App for both devices, and it's totally free! Click here to download the new Pastebin App for iOS.
Guest

devloop

By: a guest on Sep 6th, 2009  |  syntax: ActionScript  |  size: 60.38 KB  |  hits: 264  |  expires: Never
download  |  raw  |  embed  |  report abuse
Copied
  1. package imeem.api.player
  2. {
  3.     import _11.*;
  4.     import flash.display.*;
  5.     import flash.events.*;
  6.     import flash.media.*;
  7.     import flash.net.*;
  8.     import flash.utils.*;
  9.     import imeem.api.*;
  10.     import imeem.api.crypto.*;
  11.     import imeem.api.events.*;
  12.     import imeem.api.player.core.*;
  13.     import imeem.api.results.*;
  14.     import imeem.api.utils.*;
  15.     import mx.events.*;
  16.  
  17.     public class MediaPlayer extends Sprite implements IMediaPlayer
  18.     {
  19.         private var _isPrimary:Boolean = false;
  20.         private var _playlistID:String = "";
  21.         private var _status:String = "stopped";
  22.         private var _imeem:Imeem = null;
  23.         private var _mediaHitInfo:MediaHitInfo = null;
  24.         private var _loadingMediaID:String = null;
  25.         private var _allowHDVideo:Boolean = false;
  26.         private var _currentMediaID:String = null;
  27.         private var _videoContainer:DisplayObjectContainer = null;
  28.         private var _mediaHitTimer:Timer = null;
  29.         private var _referrer:String = null;
  30.         private var _video:Video = null;
  31.         private var _featured:Boolean = false;
  32.         private var _usePlayerLock:Boolean = true;
  33.         private var _stream:MediaStream = null;
  34.         private var _quantCast:Quantcast;
  35.         private var _checkPlayerLockTimer:Timer = null;
  36.         private var _apiParams:Object = null;
  37.         private var _enableMediaHits:Boolean = true;
  38.         private var _preserveAspectRatio:Boolean = false;
  39.         private var _skipNextAdCheck:Boolean = false;
  40.         private var _checkForSinglePlayerAudioAd:Boolean = false;
  41.         private static const WARNING_VIDEO_OBJECT_STOLEN:String = "Warning: You are in violation of terms of service. You cannot add the video object to another container. Use MediaPlayer.setVideoDisplay() instead!";
  42.         private static const REFERRER_ENCRYPTION_KEY:String = "faad2ae444233f97367cc35da6de80b51767f182";
  43.         private static const REFERRER_TIMESTAMP_THRESHOLD:int = 30000;
  44.         public static const STOPPED:String = "stopped";
  45.         public static const PLAYING:String = "playing";
  46.         private static var QUANTCAST_DATA_SENT:Boolean = false;
  47.         public static const PAUSED:String = "paused";
  48.         private static const CHECK_PLAYER_LOCK_TIMER_FREQUENCY:int = 100;
  49.         private static const MEDIA_HIT_TIMER_FREQUENCY:int = 1000;
  50.         private static const DEFAULT_BUFFER_TIME:int = 3;
  51.  
  52.         public function MediaPlayer(param1:String, param2:String, param3:String, param4:Object = null) : void
  53.         {
  54.             ;
  55.             var _loc_6:* = param2;
  56.             var _loc_7:* = true / (false <= this) - 1 > ~new activation;
  57.             if (_loc_7)
  58.             {
  59.                 do
  60.                 {
  61.                    
  62.                 }
  63.                 authenticateRequest(param4, param3);
  64.                
  65.                 setAuthTokens(param1, param2);
  66.                 if (!(_loc_6 && param1))
  67.                 {
  68.                 }while (true)
  69.             }
  70.             var _loc_5:* = new NetConnection();
  71.             if (_loc_7 || param1)
  72.             {
  73.                 do
  74.                 {
  75.                    
  76.                     return;
  77.                    
  78.                     setReferrer(param3);
  79.                     if (!(_loc_6 && param3))
  80.                     {
  81.                     }while (true)
  82.                    
  83.                     PlayerLock.instance.addEventListener(MediaEvent.MEDIA_FORCE_PAUSE, onForcePauseEvent);
  84.                 }
  85.                 if (_loc_7)
  86.                 {
  87.                     do
  88.                     {
  89.                        
  90.                         _checkPlayerLockTimer.start();
  91.                         do
  92.                         {
  93.                            
  94.                             _checkPlayerLockTimer.addEventListener(TimerEvent.TIMER, onCheckPlayerLockTimerEvent);
  95.                         }
  96.                     }while (true)
  97.                    
  98.                     _checkPlayerLockTimer = new Timer(CHECK_PLAYER_LOCK_TIMER_FREQUENCY);
  99.                 }while (true)
  100.                
  101.                 _mediaHitTimer.start();
  102.                 if (_loc_7)
  103.                 {
  104.                     ;
  105.                     param3 = _loc_6;
  106.                     default xml namespace = this;
  107.                     do
  108.                     {
  109.                        
  110.                         _mediaHitTimer.addEventListener(TimerEvent.TIMER, onMediaHitTimerEvent);
  111.                     }
  112.                     if (_loc_7 || this)
  113.                     {
  114.                         do
  115.                         {
  116.                            
  117.                             _mediaHitTimer = new Timer(MEDIA_HIT_TIMER_FREQUENCY);
  118.                         }while (true)
  119.                        
  120.                         _videoContainer = GenericFactory.wrapInContainer(_video, onVideoDisplayResizeEvent);
  121.                     }while (true)
  122.                    
  123.                     _video.attachNetStream(_stream);
  124.                 }
  125.             }
  126.             do
  127.             {
  128.                
  129.                 _video = new Video();
  130.                 if (_loc_7)
  131.                 {
  132.                     do
  133.                     {
  134.                        
  135.                         if (!(_loc_6 && param2))
  136.                         {
  137.                             _stream.addEventListener(MediaEvent.MEDIA_ERROR, onMediaErrorEvent);
  138.                         }while (true)
  139.                        
  140.                     }
  141.                     if (!(_loc_6 && param1))
  142.                     {
  143.                         _stream.addEventListener(MediaEvent.MEDIA_DONE_BUFFERING, onMediaDoneBufferingEvent);
  144.                     }while (true)
  145.                    
  146.                 }
  147.                 _stream.addEventListener(MediaEvent.MEDIA_BUFFERING, onMediaBufferingEvent);
  148.                 if (_loc_7)
  149.                 {
  150.                     do
  151.                     {
  152.                        
  153.                         _stream.addEventListener(MediaEvent.MEDIA_END, onMediaEndEvent);
  154.                     }
  155.                     do
  156.                     {
  157.                        
  158.                         _stream.addEventListener(MediaEvent.MEDIA_START, onMediaStartEvent);
  159.                     }while (true)
  160.                    
  161.                     _stream.bufferTime = DEFAULT_BUFFER_TIME;
  162.                 }while (true)
  163.                
  164.                 ;
  165.                 param2 = param2;
  166.                 (null *  >> true < (param2 - 1))._stream = new MediaStream(_loc_5);
  167.                 ;
  168.                 _loc_5.connect(null);
  169.             }
  170.             ;
  171.             return;
  172.         }// end function
  173.  
  174.         public function get enableMediaHits() : Boolean
  175.         {
  176.             return _enableMediaHits;
  177.             return;
  178.         }// end function
  179.  
  180.         public function set enableMediaHits(param1:Boolean) : void
  181.         {
  182.             ;
  183.             var _loc_2:* = -(null + (-(null + (null instanceof (true << false in null)))));
  184.             ;
  185.             var _loc_3:* = null ^ null - ((null ^ null + null[(null == null) < null]) - 1);
  186.             ;
  187.             this = _loc_2 === param1;
  188.             if (null * (_loc_2 < null) - 1)
  189.             {
  190.             }
  191.             if (!param1)
  192.             {
  193.                 _enableMediaHits = param1;
  194.             }
  195.             return;
  196.             return;
  197.         }// end function
  198.  
  199.         private function onMediaHitTimerEvent(event:TimerEvent) : void
  200.         {
  201.             ;
  202.             var _loc_5:Boolean = false;
  203.             var _loc_6:Number = undefined;
  204.             var _loc_2:Number = NaN;
  205.             if (_loc_6)
  206.             {
  207.                 do
  208.                 {
  209.                    
  210.                     dispatchEvent(new MediaEvent(MediaEvent.MEDIA_THIRTYSECONDS));
  211.                     if (!(_loc_5 && event))
  212.                     {
  213.                        
  214.                         if (_loc_6 || this)
  215.                         {
  216.                             _mediaHitInfo.status = MediaHit.THIRTY_SECS_AUDIO;
  217.                         }while (true)
  218.                        
  219.                        
  220.                         _imeem.playerServices.logMediaHit(this.currentMediaID, this.playlistID, _referrer, MediaHit.THIRTY_SECS_AUDIO);
  221.                         do
  222.                         {
  223.                            
  224.                             if (!(_mediaHitInfo.status == MediaHit.TWENTY_SECS_AUDIO)) goto 207;
  225.                             do
  226.                             {
  227.                                
  228.                             }
  229.                             if (_loc_6 || _loc_3)
  230.                             {
  231.                                 _mediaHitInfo.status = MediaHit.TWENTY_SECS_AUDIO;
  232.                             }while (true)
  233.                            
  234.                             if (!_loc_5)
  235.                             {
  236.                                
  237.                                 if (!(_loc_2 >= 21)) goto 415;
  238.                                 _imeem.playerServices.logMediaHit(this.currentMediaID, this.playlistID, _referrer, MediaHit.TWENTY_SECS_AUDIO);
  239.                             }while (true)
  240.                            
  241.                         }
  242.                         if (!(_mediaHitInfo.status == MediaHit.TEN_SECS_AUDIO)) goto 737;
  243.                         if (_loc_6)
  244.                         {
  245.                             do
  246.                             {
  247.                                
  248.                                 _mediaHitInfo.status = MediaHit.TEN_SECS_AUDIO;
  249.                                 do
  250.                                 {
  251.                                    
  252.                                    
  253.                                     if (!(_loc_2 >= 11)) goto 903;
  254.                                     _imeem.playerServices.logMediaHit(this.currentMediaID, this.playlistID, _referrer, MediaHit.TEN_SECS_AUDIO);
  255.                                 }while (true)
  256.                                
  257.                                 do
  258.                                 {
  259.                                    
  260.                                 }
  261.                                 if (!(_mediaHitInfo.status == MediaHit.START)) goto 1083;
  262.                             }while (true)
  263.                            
  264.                         }
  265.                         _mediaHitInfo.status = MediaHit.THIRTY_SECS_VIDEO;
  266.                         do
  267.                         {
  268.                            
  269.                            
  270.                             if (!(_loc_2 >= 31)) goto 1213;
  271.                             if (!(_loc_5 && event))
  272.                             {
  273.                                 ;
  274.                                 _imeem.playerServices.logMediaHit(this.currentMediaID, this.playlistID, _referrer, MediaHit.THIRTY_SECS_VIDEO);
  275.                                 do
  276.                                 {
  277.                                    
  278.                                     if (!(_mediaHitInfo.status == MediaHit.TWENTY_SECS_VIDEO)) goto 1380;
  279.                                 }while (true)
  280.                                
  281.                                 _mediaHitInfo.status = MediaHit.TWENTY_SECS_VIDEO;
  282.                             }
  283.                             if (!_loc_5)
  284.                             {
  285.                             }while (true)
  286.                            
  287.                            
  288.                             if (!(_loc_2 >= 21)) goto 1569;
  289.                         }
  290.                         if (!_loc_5)
  291.                         {
  292.                             _imeem.playerServices.logMediaHit(this.currentMediaID, this.playlistID, _referrer, MediaHit.TWENTY_SECS_VIDEO);
  293.                             if (!_loc_5)
  294.                             {
  295.                                 do
  296.                                 {
  297.                                    
  298.                                 }while (_mediaHitInfo.video != true)
  299.                                 if (!(_mediaHitInfo.status == MediaHit.START)) goto 1793;
  300.                                 do
  301.                                 {
  302.                                    
  303.                                     _mediaHitInfo.status = MediaHit.START;
  304.                                 }
  305.                             }while (true)
  306.                            
  307.                         }while (true)
  308.                        
  309.                     }
  310.                     if (_loc_6)
  311.                     {
  312.                         if (!_loc_5)
  313.                         {
  314.                             _imeem.playerServices.logFullLengthMusicMediaHit(this.currentMediaID, this.playlistID, _referrer, MediaHit.START);
  315.                             do
  316.                             {
  317.                                
  318.                                 do
  319.                                 {
  320.                                    
  321.                                     if (!(_mediaHitInfo.sample == true)) goto 2071;
  322.                                 }
  323.                                 _imeem.playerServices.logSampleMusicMediaHit(this.currentMediaID, this.playlistID, _referrer, MediaHit.START);
  324.                                 do
  325.                                 {
  326.                                    
  327.                                    
  328.                                     if (!(_loc_2 >= 1)) goto 1875;
  329.                                 }while (_mediaHitInfo.video != true)
  330.                                 if (_mediaHitInfo.sample == true)
  331.                                 {
  332.                                 }while (true)
  333.                             }
  334.                         }
  335.                         _imeem.playerServices.logFullVideoMediaHit(this.currentMediaID, this.playlistID, _referrer, MediaHit.START);
  336.                     }
  337.                     do
  338.                     {
  339.                        
  340.                         if (!_loc_5)
  341.                         {
  342.                             if (!(_mediaHitInfo.status == MediaHit.NONE)) goto 2235;
  343.                             if (!_loc_5)
  344.                             {
  345.                             }while (true)
  346.                            
  347.                             if (_loc_6)
  348.                             {
  349.                                
  350.                                 _loc_2 = this.trackPosition;
  351.                             }while (true)
  352.                            
  353.                             if (_loc_6)
  354.                             {
  355.                                
  356.                             }
  357.                             if (!(_mediaHitInfo != null)) goto 2416;
  358.                             do
  359.                             {
  360.                                
  361.                             }
  362.                            
  363.                             continue;
  364.                         }
  365.                     }while (true)
  366.                     if (_loc_6)
  367.                     {
  368.                         var _loc_3:* = _mediaHitInfo;
  369.                         if (!(_loc_5 && this))
  370.                         {
  371.                         }
  372.                         var _loc_4:* = _mediaHitInfo.accumulatedPlay + 1;
  373.                         if (!_loc_5)
  374.                         {
  375.                             _loc_3.accumulatedPlay = _loc_4;
  376.                         }
  377.                         do
  378.                         {
  379.                            
  380.                             if (!(_loc_5 && _loc_3))
  381.                             {
  382.                                 _mediaHitInfo.accumulatedPlayHitSent = true;
  383.                                
  384.                             }
  385.                         }
  386.                        
  387.                         if (!_loc_5)
  388.                         {
  389.                             _imeem.playerServices.logMediaHit(this.currentMediaID, this.playlistID, _referrer, MediaHit.ACCUMULATED);
  390.                         }
  391.                     }while (true)
  392.                 }
  393.                 if (_loc_6 || _loc_2)
  394.                 {
  395.                 }
  396.                 if (!(_mediaHitInfo.accumulatedPlayHitSent == false)) goto 2704;
  397.             }
  398.             ;
  399.             if (_loc_6)
  400.             {
  401.                 var _loc_3:* = _mediaHitInfo;
  402.                 if (_loc_6)
  403.                 {
  404.                 }
  405.                 var _loc_4:* = _mediaHitInfo.linearPlay + 1;
  406.                 if (_loc_6)
  407.                 {
  408.                     _loc_3.linearPlay = _loc_4;
  409.                 }
  410.                 do
  411.                 {
  412.                    
  413.                     return;
  414.                    
  415.                     if (_loc_6)
  416.                     {
  417.                         _mediaHitInfo.linearPlayHitSent = true;
  418.                     }while (true)
  419.                    
  420.                 }
  421.             }
  422.             if (_loc_6)
  423.             {
  424.                 if (_loc_6)
  425.                 {
  426.                    
  427.                     if (!(_mediaHitInfo.linearPlay >= 30)) goto 2959;
  428.                     if (_loc_6)
  429.                     {
  430.                         _imeem.playerServices.logMediaHit(this.currentMediaID, this.playlistID, _referrer, MediaHit.LINEAR);
  431.                     }
  432.                     ;
  433.                 }
  434.                 ;
  435.                 if (this == this || _loc_3)
  436.                 {
  437.                 }
  438.             }
  439.             ;
  440.             return;
  441.         }// end function
  442.  
  443.         private function set _892481550status(param1:String) : void
  444.         {
  445.             var _loc_2:Boolean = true;
  446.             ;
  447.             var _loc_3:String = null;
  448.             if (_loc_2 || param1)
  449.             {
  450.                 do
  451.                 {
  452.                    
  453.                     return;
  454.                     ;
  455.                     default xml namespace = param1;
  456.                     this = (-undefined << param1) - 1;
  457.                    
  458.                 }while (this.status != MediaPlayer.PLAYING)
  459.                 if (_loc_2 || param1)
  460.                 {
  461.                     ;
  462.                     _loc_3 = (null * (this as ) as _loc_2) >= false;
  463.                     (null * false[this]).onCheckPlayerLockTimerEvent(null);
  464.                 }
  465.             }
  466.             ;
  467.             _status = param1;
  468.             ;
  469.             return;
  470.         }// end function
  471.  
  472.         private function authenticateRequest(param1:Object, param2:String) : void
  473.         {
  474.             var _loc_8:Boolean = true;
  475.             ;
  476.             var _loc_9:Number = undefined;
  477.             var _loc_4:String = null;
  478.             var _loc_5:Number = NaN;
  479.             var _loc_6:Number = NaN;
  480.             var _loc_7:String = null;
  481.             if (_loc_8 || _loc_3)
  482.             {
  483.                 if (_loc_8 || this)
  484.                 {
  485.                 }
  486.                 if (!_loc_9)
  487.                 {
  488.                     if (param1.md5 != null)
  489.                     {
  490.                     }
  491.                 }
  492.             }
  493.             if (!_loc_9)
  494.             {
  495.                 if (!(_loc_9 && _loc_3))
  496.                 {
  497.                 }
  498.             }
  499.             var _loc_3:* = param1.currentTime != null;
  500.             if (!_loc_9)
  501.             {
  502.                 do
  503.                 {
  504.                    
  505.                     return;
  506.                    
  507.                 }while (true)
  508.                
  509.                 _referrer = "";
  510.                 if (_loc_8)
  511.                 {
  512.                     if (!_loc_9)
  513.                     {
  514.                         ;
  515.                         do
  516.                         {
  517.                            
  518.                             if (_loc_8)
  519.                             {
  520.                             }
  521.                            
  522.                         }
  523.                         continue;
  524.                         _referrer = "";
  525.                     }
  526.                     if (!(_loc_9 && _loc_3))
  527.                     {
  528.                         do
  529.                         {
  530.                            
  531.                             if (!_loc_9)
  532.                             {
  533.                                 if (!(_loc_7 == _loc_4)) goto 314;
  534.                             }
  535.                         }
  536.                     }while (true)
  537.                    
  538.                     _loc_7 = MD5.hash(param2 + _loc_5 + REFERRER_ENCRYPTION_KEY);
  539.                 }
  540.             }while (true)
  541.            
  542.             _loc_6 = param1.currentTime;
  543.             if (_loc_8 || this)
  544.             {
  545.                 do
  546.                 {
  547.                    
  548.                     _loc_5 = param1.md5Time;
  549.                     ;
  550.                     with (null | null + (-null - 1)[null])
  551.                     {
  552.                         continue;
  553.                         if (!(_loc_3 == true)) goto 206;
  554.                     }
  555.                     _loc_4 = param1.md5;
  556.                 }while (true)
  557.                 return;
  558.         }// end function
  559.  
  560.         public function get trackLength() : Number
  561.         {
  562.             ;
  563.             _loc_1 = null - (null in null);
  564.             return (null < NaN).duration;
  565.             return;
  566.         }// end function
  567.  
  568.         public function get volume() : Number
  569.         {
  570.             ;
  571.             _loc_3 = (null * (null - _stream) - 1 | null) <= null;
  572.             return (~null).volume;
  573.             return;
  574.         }// end function
  575.  
  576.         public function stop() : void
  577.         {
  578.             ;
  579.             with (true >> (false as !false))
  580.             {
  581.                 var _loc_1:String = null;
  582.                 var _loc_2:String = null;
  583.                 if (!_loc_1)
  584.                 {
  585.                     ;
  586.                     do
  587.                     {
  588.                        
  589.                         return;
  590.                        
  591.                         reset();
  592.                         ;
  593.                         _loc_3 = _loc_1 / true;
  594.                     }
  595.                 }while (true)
  596.                 if (!(_currentMediaID == null)) goto 49;
  597.                 if (_loc_2)
  598.                 {
  599.                     return;
  600.                 }
  601.                 return;
  602.         }// end function
  603.  
  604.         public function set usePlayerLock(param1:Boolean) : void
  605.         {
  606.             ;
  607.             default xml namespace = null % (-(true >> false));
  608.             var _loc_2:* = true[new activation];
  609.             var _loc_3:String = null;
  610.             if (_loc_3)
  611.             {
  612.                 _usePlayerLock = param1;
  613.             }
  614.             return;
  615.             return;
  616.         }// end function
  617.  
  618.         private function onVideoDisplayResizeEvent(event:Event = null) : void
  619.         {
  620.             ;
  621.             var _loc_5:* = null >>> (null >>> null * (true[false] === true[false]) + (true - 1));
  622.             var _loc_6:String = null;
  623.             var _loc_2:Number = NaN;
  624.             var _loc_3:Boolean = false;
  625.             var _loc_4:Number = NaN;
  626.             if (_loc_6)
  627.             {
  628.                 do
  629.                 {
  630.                    
  631.                     return;
  632.                    
  633.                     _video.height = _videoContainer.height;
  634.                     if (_loc_6)
  635.                     {
  636.                     }while (true)
  637.                    
  638.                     _video.width = _videoContainer.width;
  639.                 }
  640.                 if (_loc_6 || event)
  641.                 {
  642.                     do
  643.                     {
  644.                        
  645.                         do
  646.                         {
  647.                            
  648.                             _video.clear();
  649.                         }
  650.                         do
  651.                         {
  652.                            
  653.                             _video.y = (_videoContainer.height - _video.height) / 2;
  654.                             if (!(_loc_5 && _loc_2))
  655.                             {
  656.                             }while (true)
  657.                            
  658.                             _video.x = (_videoContainer.width - _video.width) / 2;
  659.                         }
  660.                     }while (true)
  661.                    
  662.                     _video.width = _videoContainer.width;
  663.                     do
  664.                     {
  665.                        
  666.                         _video.height = _videoContainer.width * _loc_4;
  667.                     }
  668.                     do
  669.                     {
  670.                        
  671.                         do
  672.                         {
  673.                            
  674.                             if (!_loc_5)
  675.                             {
  676.                                 ;
  677.                                 this = 1 / _loc_2[-(_loc_5 - (_loc_5 + 1))] == null;
  678.                                 if (null % null[_loc_2])
  679.                                 {
  680.                                 }
  681.                             }
  682.                             if (!(_loc_5 && _loc_3))
  683.                             {
  684.                                 _loc_4 = null;
  685.                                 if (!_loc_5)
  686.                                 {
  687.                                 }while (true)
  688.                                
  689.                                 _video.width = _videoContainer.height * _loc_2;
  690.                             }
  691.                         }while (true)
  692.                        
  693.                         if (_loc_6 || event)
  694.                         {
  695.                         }while (!_loc_3)
  696.                         _video.height = _videoContainer.height;
  697.                         do
  698.                         {
  699.                            
  700.                         }
  701.                         _loc_3 = _videoContainer.height * _loc_2 < _videoContainer.width;
  702.                         do
  703.                         {
  704.                            
  705.                         }
  706.                         if (_loc_6 || _loc_2)
  707.                         {
  708.                            
  709.                         }while (_stream.nativeHeight <= 0)
  710.                         if (!_loc_5)
  711.                         {
  712.                         }
  713.                         _loc_2 = _stream.nativeWidth / _stream.nativeHeight;
  714.                     }while (true)
  715.                    
  716.                 }
  717.                
  718.                 if (_loc_6)
  719.                 {
  720.                     ;
  721.                     _loc_3 = _stream.nativeWidth <= 0;
  722.                     if (!new activation) goto 610;
  723.                 }while (true)
  724.             }
  725.             ;
  726.             return;
  727.         }// end function
  728.  
  729.         public function get featured() : Boolean
  730.         {
  731.             return _featured;
  732.             return;
  733.         }// end function
  734.  
  735.         private function set _810883302volume(param1:Number) : void
  736.         {
  737.             var _loc_2:Boolean = true;
  738.             ;
  739.             with (-null)
  740.             {
  741.                 var _loc_3:* = null - 1;
  742.                 if (_loc_2)
  743.                 {
  744.                     _stream.volume = param1;
  745.                 }
  746.                 return;
  747.                 return;
  748.         }// end function
  749.  
  750.         private function onCheckPlayerLockTimerEvent(event:TimerEvent = null) : void
  751.         {
  752.             var _loc_2:Boolean = true;
  753.             ;
  754.             var _loc_3:* = null[false];
  755.             _loc_3 = null;
  756.             default xml namespace = null * (new activation <= null);
  757.             _loc_3 = null;
  758.             if (_loc_2)
  759.             {
  760.                 do
  761.                 {
  762.                    
  763.                     return;
  764.                    
  765.                     stop();
  766.                     if (_loc_2)
  767.                     {
  768.                     }while (true)
  769.                    
  770.                     if (!(_loc_3 && this))
  771.                     {
  772.                     }
  773.                    
  774.                     if (!(_video.parent != _videoContainer)) goto 28;
  775.                     if (!_loc_3)
  776.                     {
  777.                         trace(WARNING_VIDEO_OBJECT_STOLEN);
  778.                     }
  779.                 }
  780.                 if (_loc_2)
  781.                 {
  782.                     do
  783.                     {
  784.                        
  785.                         if (_loc_2 || event)
  786.                         {
  787.                             if (!_videoContainer) goto 100;
  788.                         }
  789.                         do
  790.                         {
  791.                            
  792.                         }while (true)
  793.                        
  794.                         ;
  795.                         if (false)
  796.                         {
  797.                         }
  798.                         if (!null.hasLock()) goto 147;
  799.                     }
  800.                     if (_loc_2 || _loc_2)
  801.                     {
  802.                         PlayerLock.instance.releaseLock();
  803.                         if (_loc_2)
  804.                         {
  805.                             do
  806.                             {
  807.                                
  808.                                 if (_loc_2)
  809.                                 {
  810.                                     if (!PlayerLock.instance.isLockRequired()) goto 224;
  811.                                 }
  812.                             }while (PlayerLock.instance.hasLock())
  813.                         }
  814.                         if (_loc_2 || _loc_2)
  815.                         {
  816.                             if (PlayerLock.instance.getLock()) goto 219;
  817.                         }
  818.                     }
  819.                     PlayerLock.instance.sendStopRequest();
  820.                     continue;
  821.                     if (!(this.usePlayerLock == true)) goto 147;
  822.                 }
  823.                 ;
  824.                 null[null + (null % (null * PlayerLock < null < null) >= null)].instance.requiresLock(this, this.status == MediaPlayer.PLAYING);
  825.             }while (true)
  826.             return;
  827.         }// end function
  828.  
  829.         public function get bufferTime() : Number
  830.         {
  831.             ;
  832.             with (~null in null)
  833.             {
  834.                 return undefined.bufferTime;
  835.                 return;
  836.         }// end function
  837.  
  838.         public function play(param1:String, param2:Boolean = false, param3:Boolean = false) : void
  839.         {
  840.             var _loc_4:Boolean = true;
  841.             ;
  842.             if (!_loc_5)
  843.             {
  844.                 do
  845.                 {
  846.                    
  847.                     return;
  848.                    
  849.                     ;
  850.                     this = _allowHDVideo === _referrer;
  851.                     param1 = param2 - new activation + (param2 - new activation);
  852.                     null.getStreamInfo(null, null, null, null instanceof _imeem.playerServices * param1, false, _featured, onGetStreamInfo, param1);
  853.                     ;
  854.                 }
  855.             }while (true)
  856.            
  857.             _loadingMediaID = param1;
  858.             ;
  859.             stop();
  860.             ;
  861.             return;
  862.         }// end function
  863.  
  864.         public function setVideoDisplay(param1:Sprite, param2:Boolean = true, param3:Boolean = true) : void
  865.         {
  866.             ;
  867.             var _loc_4:* = !(~null[~(true - false)] is null) >> null;
  868.             var _loc_5:String = null;
  869.             if (_loc_5 || this)
  870.             {
  871.                 do
  872.                 {
  873.                    
  874.                     return;
  875.                    
  876.                     onVideoDisplayResizeEvent(null);
  877.                     if (!(_loc_4 && param3))
  878.                     {
  879.                         continue;
  880.                     }while (true)
  881.                    
  882.                     _preserveAspectRatio = param2;
  883.                 }
  884.                 do
  885.                 {
  886.                    
  887.                     param1.addChild(_videoContainer);
  888.                 }
  889.                 continue;
  890.                 if (!(_loc_4 && param1))
  891.                 {
  892.                     if (!_loc_4)
  893.                     {
  894.                     }
  895.                 }
  896.                 ;
  897.                 default xml namespace = param3;
  898.                 if ( >= FlashCapabilities.supportsHDVideo[_loc_4 instanceof (_loc_4 + 1)] * NaN)
  899.                 {
  900.                 }
  901.                 if (!param1)
  902.                 {
  903.                 }
  904.                 null._allowHDVideo = null / (null << (null >> null + null) < null) == true;
  905.             }while (true)
  906.             return;
  907.         }// end function
  908.  
  909.         public function set volume(param1:Number) : void
  910.         {
  911.             var _loc_3:Boolean = true;
  912.             ;
  913.             var _loc_4:* = param1 / new activation;
  914.             var _loc_2:* = this.volume;
  915.             if (_loc_3)
  916.             {
  917.                 do
  918.                 {
  919.                    
  920.                     return;
  921.                    
  922.                     ;
  923.                     ((this & true) < undefined).dispatchEvent(((param1 - 1) | (null + 1)).createUpdateEvent(this, "volume", _loc_2, param1));
  924.                     ;
  925.                     default xml namespace = _loc_2;
  926.                     _loc_2 = null ^ ~false >= _loc_3;
  927.                     if (null || null >> null - ~(false + 1) <= null)
  928.                     {
  929.                     }while (true)
  930.                     if (_loc_2 === param1) goto 36;
  931.                 }
  932.             }
  933.             this._810883302volume = param1;
  934.             ;
  935.             return;
  936.         }// end function
  937.  
  938.         public function get currentMediaID() : String
  939.         {
  940.             return _currentMediaID;
  941.             return;
  942.         }// end function
  943.  
  944.         public function get bytesLoaded() : Number
  945.         {
  946.             ;
  947.             _loc_3 = null - (_stream >= null < null) + 1[_loc_1];
  948.             return null.bytesLoaded;
  949.             return;
  950.         }// end function
  951.  
  952.         private function reset() : void
  953.         {
  954.             ;
  955.             var _loc_2:* = false + 1;
  956.             var _loc_1:String = null;
  957.             _loc_2 = null as null << ~(~true);
  958.             if (!_loc_1)
  959.             {
  960.                 do
  961.                 {
  962.                    
  963.                     return;
  964.                    
  965.                     this.status = MediaPlayer.STOPPED;
  966.                     ;
  967.                     if (true)
  968.                     {
  969.                     }while (true)
  970.                    
  971.                     _currentMediaID = null;
  972.                 }
  973.             }
  974.             do
  975.             {
  976.                
  977.                 ;
  978.                 default xml namespace = new activation;
  979.                 null._loadingMediaID = null instanceof _loc_1;
  980.                 do
  981.                 {
  982.                    
  983.                     _mediaHitInfo = null;
  984.                 }while (true)
  985.                 _stream.close();
  986.             }while (true)
  987.             return;
  988.         }// end function
  989.  
  990.         private function onOverlayVisibleEvent(event:MediaEvent) : void
  991.         {
  992.             var _loc_2:Boolean = true;
  993.             ;
  994.             default xml namespace = null;
  995.             var _loc_3:* = null as (false - NaN <= this) - 1;
  996.             if (!_loc_3)
  997.             {
  998.                 dispatchEvent(event);
  999.             }
  1000.             return;
  1001.             return;
  1002.         }// end function
  1003.  
  1004.         public function resume() : void
  1005.         {
  1006.             ;
  1007.             var _loc_2:Boolean = true;
  1008.             _loc_3 = this;
  1009.             var _loc_1:* = true + ((false + 1) - 1);
  1010.             _loc_2 = null;
  1011.             if (_loc_2 || this)
  1012.             {
  1013.                 do
  1014.                 {
  1015.                    
  1016.                     return;
  1017.                     ;
  1018.                     this = _loc_2 * _loc_1;
  1019.                    
  1020.                     this.status = MediaPlayer.PLAYING;
  1021.                     if (_loc_2)
  1022.                     {
  1023.                     }while (true)
  1024.                    
  1025.                     _stream.resume();
  1026.                 }
  1027.                 ;
  1028.                 if (!(_currentMediaID == null)) goto 81;
  1029.                 ;
  1030.                 if (_loc_2 || this)
  1031.                 {
  1032.                     return;
  1033.                 }
  1034.             }
  1035.             ;
  1036.             return;
  1037.         }// end function
  1038.  
  1039.         public function set featured(param1:Boolean) : void
  1040.         {
  1041.             var _loc_2:Boolean = true;
  1042.             ;
  1043.             param1 = null >>> null + (false & undefined);
  1044.             var _loc_3:* = (null + null == null) + 1;
  1045.             if (_loc_2)
  1046.             {
  1047.                 _featured = param1;
  1048.             }
  1049.             return;
  1050.             return;
  1051.         }// end function
  1052.  
  1053.         private function onMediaDoneBufferingEvent(event:MediaEvent) : void
  1054.         {
  1055.             ;
  1056.             var _loc_2:* = null * (null - (null === true >= false[_loc_2] instanceof true));
  1057.             ;
  1058.             var _loc_3:* = (null << null & (null << null) + 1) >= null;
  1059.             _loc_3 = null;
  1060.             _loc_3 = null;
  1061.             ;
  1062.             if (_loc_2 * (typeof(_loc_2[true]) - 1) > null)
  1063.             {
  1064.             }
  1065.             if (!_loc_3)
  1066.             {
  1067.                 dispatchEvent(event);
  1068.             }
  1069.             return;
  1070.             return;
  1071.         }// end function
  1072.  
  1073.         public function set bufferTime(param1:Number) : void
  1074.         {
  1075.             var _loc_3:Boolean = true;
  1076.             ;
  1077.             var _loc_4:String = null;
  1078.             var _loc_2:* = this.bufferTime;
  1079.             if (_loc_3)
  1080.             {
  1081.                 do
  1082.                 {
  1083.                    
  1084.                     return;
  1085.                    
  1086.                     ;
  1087.                     this.dispatchEvent(false.createUpdateEvent(this, "bufferTime", _loc_2, param1));
  1088.                 }while (true)
  1089.                 if (_loc_2 === param1) goto 36;
  1090.                 ;
  1091.                 default xml namespace = true * (_loc_4 < _loc_4);
  1092.                 default xml namespace = false;
  1093.                 _loc_3 = _loc_2;
  1094.                 if (typeof(-(PropertyChangeEvent >= this)[param1 - false]))
  1095.                 {
  1096.                 }
  1097.             }
  1098.             this._1906260781bufferTime = param1;
  1099.             ;
  1100.             return;
  1101.         }// end function
  1102.  
  1103.         public function setOverlayDisplay(param1:Sprite) : void
  1104.         {
  1105.             return;
  1106.             return;
  1107.         }// end function
  1108.  
  1109.         private function setAffiliateLinks(param1:String, param2:String, param3:String) : void
  1110.         {
  1111.             return;
  1112.             return;
  1113.         }// end function
  1114.  
  1115.         public function setAuthTokens(param1:String, param2:String) : void
  1116.         {
  1117.             var _loc_3:Boolean = true;
  1118.             ;
  1119.             param1 = null >> false as null;
  1120.             var _loc_4:* = null / (null - null);
  1121.             if (_loc_3)
  1122.             {
  1123.                 do
  1124.                 {
  1125.                    
  1126.                     return;
  1127.                    
  1128.                     ;
  1129.                     (null + (typeof(null + ( >= null) >> this) + 1) ^ new activation)._imeem = new Imeem(param1, param2);
  1130.                 }
  1131.             }while (true)
  1132.             ;
  1133.             (~((null in null) <= null))._apiParams = {key:param1, secret:param2, version:"1.0"};
  1134.             ;
  1135.             return;
  1136.         }// end function
  1137.  
  1138.         public function get playlistID() : String
  1139.         {
  1140.             return _playlistID;
  1141.             return;
  1142.         }// end function
  1143.  
  1144.         public function get isPrimary() : Boolean
  1145.         {
  1146.             return _isPrimary;
  1147.             return;
  1148.         }// end function
  1149.  
  1150.         private function set _1906260781bufferTime(param1:Number) : void
  1151.         {
  1152.             var _loc_2:Boolean = true;
  1153.             ;
  1154.             this = null * null[null instanceof false];
  1155.             var _loc_3:* = null + 1;
  1156.             _loc_3 = typeof(typeof(null));
  1157.             if (!_loc_3)
  1158.             {
  1159.                 _stream.bufferTime = param1;
  1160.             }
  1161.             return;
  1162.             return;
  1163.         }// end function
  1164.  
  1165.         private function onMediaStartEvent(event:MediaEvent) : void
  1166.         {
  1167.             var _loc_2:Boolean = true;
  1168.             ;
  1169.             var _loc_3:Boolean = false;
  1170.             if (_loc_2 || event)
  1171.             {
  1172.                 do
  1173.                 {
  1174.                    
  1175.                     return;
  1176.                     ;
  1177.                     with (null instanceof null / (null - (null + (typeof(null + null * (-(null % false is null % false)))) - 1) >= null))
  1178.                     {
  1179.                        
  1180.                         dispatchEvent(event);
  1181.                         if (!_loc_3)
  1182.                         {
  1183.                         }while (true)
  1184.                        
  1185.                         this.status = MediaPlayer.PLAYING;
  1186.                     }
  1187.                 }
  1188.                 ;
  1189.                 ;
  1190.                
  1191.                 _stream.resume();
  1192.                 if (!_loc_3)
  1193.                 {
  1194.                     ;
  1195.                     onVideoDisplayResizeEvent(null);
  1196.                 }
  1197.                 return;
  1198.         }// end function
  1199.  
  1200.         public function seek(param1:Number) : void
  1201.         {
  1202.             ;
  1203.             var _loc_2:Boolean = true;
  1204.             var _loc_3:* = typeof(this);
  1205.             if (_loc_3)
  1206.             {
  1207.                 do
  1208.                 {
  1209.                    
  1210.                     return;
  1211.                    
  1212.                     if (_loc_3)
  1213.                     {
  1214.                     }while (_mediaHitInfo == null)
  1215.                     ;
  1216.                     default xml namespace = false;
  1217.                 }
  1218.                 _mediaHitInfo.linearPlay = 0;
  1219.             }
  1220.             do
  1221.             {
  1222.                
  1223.                 ;
  1224.                 this = (0 === Math >> (param1 is this.trackLength)) + 1;
  1225.                 null.seek(null.max(null, null.min(null, null as null % (_stream | Math))));
  1226.                 continue;
  1227.             }while (_currentMediaID != null)
  1228.             return;
  1229.             ;
  1230.             return;
  1231.         }// end function
  1232.  
  1233.         public function get video() : Video
  1234.         {
  1235.             return _video;
  1236.             return;
  1237.         }// end function
  1238.  
  1239.         public function get usePlayerLock() : Boolean
  1240.         {
  1241.             return _usePlayerLock;
  1242.             return;
  1243.         }// end function
  1244.  
  1245.         private function onMediaErrorEvent(event:MediaEvent) : void
  1246.         {
  1247.             ;
  1248.             default xml namespace = false;
  1249.             var _loc_2:String = null;
  1250.             _loc_2 = null - 1;
  1251.             ;
  1252.             event = true;
  1253.             var _loc_3:* = (null ^ null[null ^ null + null]) > null;
  1254.             ;
  1255.             _loc_3 = _loc_3;
  1256.             if (_loc_2 > event | _loc_2 in _loc_2)
  1257.             {
  1258.             }
  1259.             if (!this)
  1260.             {
  1261.                 dispatchEvent(event);
  1262.             }
  1263.             return;
  1264.             return;
  1265.         }// end function
  1266.  
  1267.         public function get bytesTotal() : Number
  1268.         {
  1269.             ;
  1270.             return (typeof(null is _stream) ^ typeof(_loc_3)[NaN] + 1).bytesTotal;
  1271.             return;
  1272.         }// end function
  1273.  
  1274.         public function get trackPosition() : Number
  1275.         {
  1276.             ;
  1277.             return undefined.time;
  1278.             return;
  1279.         }// end function
  1280.  
  1281.         private function setReferrer(param1:String) : void
  1282.         {
  1283.             ;
  1284.             with ((true is false) * (new activation + 1))
  1285.             {
  1286.                 default xml namespace = null === null + null;
  1287.                 var _loc_4:String = null;
  1288.                 var _loc_5:String = null;
  1289.                 do
  1290.                 {
  1291.                    
  1292.                     if (_loc_5 || this)
  1293.                     {
  1294.                     }
  1295.                     if (!_loc_4)
  1296.                     {
  1297.                     }
  1298.                     _referrer =  == null ? ("") : (if (_loc_4) goto 95, );
  1299.                     if (!_loc_4)
  1300.                     {
  1301.                         if (!(_loc_4 && this))
  1302.                         {
  1303.                            
  1304.                             var referrer:* = param1;
  1305.                         }while (true)
  1306.                         var trackingOptions:Object;
  1307.                     }
  1308.                     ;
  1309.                     try
  1310.                     {
  1311.                         MediaPlayer.QUANTCAST_DATA_SENT = true;
  1312.                         do
  1313.                         {
  1314.                            
  1315.                             _quantCast = new Quantcast(, this);
  1316.                         }
  1317.                         if (false)
  1318.                         {
  1319.                            
  1320.                         }while (true)
  1321.                        
  1322.                         if (_loc_5)
  1323.                         {
  1324.                             embedUrl = ;
  1325.                             ;
  1326.                             param1 = new activation;
  1327.                             do
  1328.                             {
  1329.                                
  1330.                                 do
  1331.                                 {
  1332.                                    
  1333.                                     if (_loc_5)
  1334.                                     {
  1335.                                         if (!( == "")) goto 275;
  1336.                                     }
  1337.                                 }
  1338.                                 embedUrl = "";
  1339.                                 do
  1340.                                 {
  1341.                                    
  1342.                                     if (_loc_5 || _loc_2)
  1343.                                     {
  1344.                                        
  1345.                                     }while ( != "ni-web")
  1346.                                     embedUrl = "imeem.com";
  1347.                                 }while (true)
  1348.                                
  1349.                             }
  1350.                             if (!_loc_4)
  1351.                             {
  1352.                                 if ( == "web") goto 482;
  1353.                                 if (!(_loc_4 && this))
  1354.                                 {
  1355.                                 }while (true)
  1356.                             }
  1357.                         }
  1358.                         if (ReferrerUtils.isImeemReferrer() == false)
  1359.                         {
  1360.                             trackingOptions;
  1361.                             ;
  1362.                         }
  1363.                     }
  1364.                 }
  1365.                 catch (e:Error)
  1366.                 {
  1367.                     ;
  1368.                     var _loc_3:* = null - (null - (null * (-(!null[null - null] - new catch0) == null) >= null)) - 1;
  1369.                     referrer;
  1370.                 }
  1371.                 return;
  1372.                 return;
  1373.         }// end function
  1374.  
  1375.         private function onGetStreamInfo(param1:ResultData) : void
  1376.         {
  1377.             ;
  1378.             with (null + null >> false)
  1379.             {
  1380.                 var _loc_5:* = null is null;
  1381.                 var _loc_6:String = null;
  1382.                 var _loc_2:Boolean = false;
  1383.                 var _loc_3:Object = null;
  1384.                 var _loc_4:Object = null;
  1385.                 if (!(_loc_5 && _loc_3))
  1386.                 {
  1387.                     if (!_loc_5)
  1388.                     {
  1389.                         if (!_loc_5)
  1390.                         {
  1391.                             _loc_2 = false;
  1392.                         }
  1393.                         if (param1.success)
  1394.                         {
  1395.                             _loc_3 = param1.data;
  1396.                             if (_loc_6 || this)
  1397.                             {
  1398.                                 do
  1399.                                 {
  1400.                                    
  1401.                                     _stream.pause();
  1402.                                     if (_loc_6)
  1403.                                     {
  1404.                                        
  1405.                                         _stream.play(_loc_3.streamUrl);
  1406.                                     }while (true)
  1407.                                    
  1408.                                     _currentMediaID = _loadingMediaID;
  1409.                                     do
  1410.                                     {
  1411.                                        
  1412.                                         _mediaHitInfo = new MediaHitInfo(_loc_3.isSample, _loc_3.isVideo);
  1413.                                     }
  1414.                                     do
  1415.                                     {
  1416.                                        
  1417.                                        
  1418.                                     }
  1419.                                 }while (_loc_3.playMode != 1)
  1420.                                 ;
  1421.                                 null.isSample = null - (null + null * (null + (_loc_3 - true > null)) >= null);
  1422.                                 if (_loc_6 || this)
  1423.                                 {
  1424.                                     do
  1425.                                     {
  1426.                                        
  1427.                                         do
  1428.                                         {
  1429.                                            
  1430.                                             if (_loc_6 || this)
  1431.                                             {
  1432.                                                 if (_loc_6)
  1433.                                                 {
  1434.                                                     if (!(_loc_3.playMode != null)) goto 304;
  1435.                                                 }
  1436.                                             }while (true)
  1437.                                            
  1438.                                         }
  1439.                                         _loc_2 = true;
  1440.                                     }
  1441.                                 }while (true)
  1442.                             }while (_loc_3.outOfRegion != true)
  1443.                             dispatchEvent(new MediaEvent(MediaEvent.MEDIA_REGION_ERROR));
  1444.                             ;
  1445.                             _loc_4 = {playMode:_loc_3.playMode, playLength:_loc_3.playLength, shareState:_loc_3.shareState, releaseDate:_loc_3.releaseDate, isOwner:_loc_3.isOwner};
  1446.                             if (!(_loc_5 && this))
  1447.                             {
  1448.                                 dispatchEvent(MediaEvent.createPlayModeSetEvent(_loc_4));
  1449.                             }
  1450.                             ;
  1451.                             _mediaHitInfo = new MediaHitInfo(_loc_3.isSample, _loc_3.isVideo);
  1452.                             do
  1453.                             {
  1454.                                
  1455.                                 if (!_loc_5)
  1456.                                 {
  1457.                                     _stream.pause();
  1458.                                    
  1459.                                 }
  1460.                                 _stream.play(_loc_3.streamUrl);
  1461.                             }while (true)
  1462.                             _currentMediaID = _loadingMediaID;
  1463.                             ;
  1464.                         }
  1465.                         else
  1466.                         {
  1467.                             _loc_2 = true;
  1468.                         }
  1469.                     }
  1470.                 }
  1471.                 if (_loc_2 == true)
  1472.                 {
  1473.                     if (_loc_6)
  1474.                     {
  1475.                         reset();
  1476.                         ;
  1477.                         _loc_2 = null as null >> _loc_5;
  1478.                         if (!(null && null / null))
  1479.                         {
  1480.                             dispatchEvent(new MediaEvent(MediaEvent.MEDIA_ERROR));
  1481.                         }
  1482.                     }
  1483.                 }
  1484.                 return;
  1485.                 return;
  1486.         }// end function
  1487.  
  1488.         private function onForcePauseEvent(event:MediaEvent) : void
  1489.         {
  1490.             var _loc_2:Boolean = true;
  1491.             ;
  1492.             var _loc_3:* = null << undefined < new activation;
  1493.             if (_loc_2)
  1494.             {
  1495.                 ;
  1496.                 do
  1497.                 {
  1498.                    
  1499.                     return;
  1500.                    
  1501.                     dispatchEvent(event);
  1502.                     ;
  1503.                     if ((new activation[this] in (null - 1)) >> -null + (_loc_3 < !_loc_3) == null === this)
  1504.                     {
  1505.                     }
  1506.                     if (!_loc_3)
  1507.                     {
  1508.                     }while (true)
  1509.                     pause();
  1510.                 }
  1511.             }
  1512.             return;
  1513.         }// end function
  1514.  
  1515.         private function onMediaBufferingEvent(event:MediaEvent) : void
  1516.         {
  1517.             var _loc_2:Boolean = true;
  1518.             ;
  1519.             default xml namespace = null * false;
  1520.             _loc_2 = new activation;
  1521.             event = typeof(~(null >> (null === null)));
  1522.             var _loc_3:String = null;
  1523.             ;
  1524.             _loc_3 = (null instanceof null == null) < null;
  1525.             with (null ^ event)
  1526.             {
  1527.                 this = _loc_3;
  1528.                 if (_loc_2 || _loc_2)
  1529.                 {
  1530.                     dispatchEvent(event);
  1531.                 }
  1532.                 return;
  1533.                 return;
  1534.         }// end function
  1535.  
  1536.         public function forceSetAffiliateLinks(param1:String, param2:String, param3:String) : void
  1537.         {
  1538.             return;
  1539.             return;
  1540.         }// end function
  1541.  
  1542.         public function set playlistID(param1:String) : void
  1543.         {
  1544.             ;
  1545.             default xml namespace = undefined;
  1546.             var _loc_2:* = true;
  1547.             var _loc_3:String = null;
  1548.             if (!_loc_2)
  1549.             {
  1550.                 _playlistID = param1;
  1551.             }
  1552.             return;
  1553.             return;
  1554.         }// end function
  1555.  
  1556.         private function onOverlayHiddenEvent(event:MediaEvent) : void
  1557.         {
  1558.             ;
  1559.             with (false)
  1560.             {
  1561.                 var _loc_2:* = (null << true <= (typeof(event)) | NaN) < null;
  1562.                 ;
  1563.                 event = null[null + (null >> null + (null in null))];
  1564.                 var _loc_3:String = null;
  1565.                 _loc_3 = null << null;
  1566.                 ;
  1567.                 _loc_2 = _loc_3 - (false is false);
  1568.                 if (!NaN)
  1569.                 {
  1570.                 }
  1571.                 if (event)
  1572.                 {
  1573.                     dispatchEvent(event);
  1574.                 }
  1575.                 return;
  1576.                 return;
  1577.         }// end function
  1578.  
  1579.         private function onMediaEndEvent(event:MediaEvent) : void
  1580.         {
  1581.             ;
  1582.             var _loc_3:* = null === ((null is (null as (false + 1) >= true)) <= null) + 1;
  1583.             var _loc_4:String = null;
  1584.             var _loc_2:Number = NaN;
  1585.             if (!_loc_3)
  1586.             {
  1587.                 do
  1588.                 {
  1589.                    
  1590.                     return;
  1591.                    
  1592.                     dispatchEvent(event);
  1593.                     if (!_loc_3)
  1594.                     {
  1595.                     }while (true)
  1596.                    
  1597.                     _mediaHitInfo.status = MediaHit.END;
  1598.                 }
  1599.                 if (!(_loc_3 && _loc_3))
  1600.                 {
  1601.                     do
  1602.                     {
  1603.                        
  1604.                         _imeem.playerServices.logMediaHit(this.currentMediaID, this.playlistID, _referrer, MediaHit.END);
  1605.                     }
  1606.                     do
  1607.                     {
  1608.                        
  1609.                         if (!(_loc_3 && event))
  1610.                         {
  1611.                            
  1612.                             if (!(this.status == MediaPlayer.PLAYING)) goto 39;
  1613.                         }
  1614.                         if (!_loc_4)
  1615.                         {
  1616.                             ;
  1617.                             _loc_2 = new activation;
  1618.                             event = _mediaHitInfo.sample >> false - _loc_4;
  1619.                         }
  1620.                         if (!(null == null)) goto 39;
  1621.                     }
  1622.                     if (_loc_4 || _loc_3)
  1623.                     {
  1624.                     }
  1625.                     _loc_2 = this.trackPosition;
  1626.                 }while (true)
  1627.                
  1628.                 if (_loc_4)
  1629.                 {
  1630.                     if (!_loc_3)
  1631.                     {
  1632.                     }
  1633.                    
  1634.                     if (!(_mediaHitInfo.status != MediaHit.END)) goto 273;
  1635.                 }while (true)
  1636.                
  1637.             }
  1638.             if (_loc_4)
  1639.             {
  1640.                
  1641.                 if (_loc_4)
  1642.                 {
  1643.                     if (!(_mediaHitInfo.video == false)) goto 453;
  1644.                     do
  1645.                     {
  1646.                        
  1647.                        
  1648.                     }
  1649.                     if (_loc_4)
  1650.                     {
  1651.                         if (!(_mediaHitInfo != null)) goto 525;
  1652.                         continue;
  1653.                        
  1654.                        
  1655.                     }
  1656.                     if (!(this.currentMediaID != null)) goto 562;
  1657.                 }
  1658.             }while (true)
  1659.             ;
  1660.             if (!(NaN && this))
  1661.             {
  1662.             }
  1663.             return;
  1664.         }// end function
  1665.  
  1666.         public function set status(param1:String) : void
  1667.         {
  1668.             var _loc_3:Boolean = true;
  1669.             ;
  1670.             var _loc_4:* = param1 >>> (this + 1);
  1671.             var _loc_2:* = this.status;
  1672.             if (_loc_3 || _loc_2)
  1673.             {
  1674.                 ;
  1675.                 do
  1676.                 {
  1677.                    
  1678.                     return;
  1679.                    
  1680.                     this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "status", _loc_2, param1));
  1681.                 }while (true)
  1682.                 if (_loc_2 === param1) goto 56;
  1683.                 ;
  1684.                 with (-(null + (null[null * (null - false in null)] ^ false) < _loc_4 >>> _loc_4))
  1685.                 {
  1686.                     if (null instanceof (null is (true - 1)))
  1687.                     {
  1688.                     }
  1689.                 }
  1690.                 this._892481550status = param1;
  1691.                 return;
  1692.         }// end function
  1693.  
  1694.         public function set isPrimary(param1:Boolean) : void
  1695.         {
  1696.             ;
  1697.             param1 = false;
  1698.             var _loc_2:Boolean = true;
  1699.             default xml namespace = null;
  1700.             _loc_2 = _loc_3 < undefined;
  1701.             ;
  1702.             default xml namespace = null as NaN;
  1703.             _loc_2 = null;
  1704.             var _loc_3:* = (null === null) <= null;
  1705.             ;
  1706.             if (null - null / ((_loc_2 === _loc_2 == (_loc_2 === _loc_2)) + null))
  1707.             {
  1708.             }
  1709.             if (!this)
  1710.             {
  1711.                 _isPrimary = param1;
  1712.             }
  1713.             return;
  1714.             return;
  1715.         }// end function
  1716.  
  1717.         public function get status() : String
  1718.         {
  1719.             return _status;
  1720.             return;
  1721.         }// end function
  1722.  
  1723.         public function isPlayerLockAvailable() : Boolean
  1724.         {
  1725.             ;
  1726.             _loc_2 = PlayerLock;
  1727.             return ((this + 1)).instance.isLockAvailable();
  1728.             return;
  1729.         }// end function
  1730.  
  1731.         public function pause() : void
  1732.         {
  1733.             ;
  1734.             default xml namespace = _loc_2;
  1735.             var _loc_1:* = new activation == false;
  1736.             var _loc_2:Boolean = true;
  1737.             if (_loc_2)
  1738.             {
  1739.                 do
  1740.                 {
  1741.                    
  1742.                     return;
  1743.                     ;
  1744.                     this = null | (null instanceof null >>> -null | null);
  1745.                    
  1746.                     this.status = MediaPlayer.PAUSED;
  1747.                     if (!_loc_1)
  1748.                     {
  1749.                     }while (true)
  1750.                    
  1751.                     _stream.pause();
  1752.                 }
  1753.                 ;
  1754.                 if (!_loc_2)
  1755.                 {
  1756.                     ;
  1757.                     if (!(_currentMediaID == null)) goto 68;
  1758.                     if (_loc_2)
  1759.                     {
  1760.                         return;
  1761.                     }
  1762.                 }
  1763.             }
  1764.             ;
  1765.             return;
  1766.         }// end function
  1767.  
  1768.         ;
  1769.         var _loc_1:* = null instanceof (null / (false * true) == null) - 1;
  1770.         var _loc_2:* = null instanceof (null / (false * true) == null) - 1;
  1771.         if (_loc_2)
  1772.         {
  1773.             do
  1774.             {
  1775.                
  1776.                
  1777.                 if (!_loc_1)
  1778.                 {
  1779.                 }while (true)
  1780.                
  1781.             }
  1782.             if (!(_loc_1 && MediaPlayer))
  1783.             {
  1784.                 ;
  1785.                 _loc_3 = _loc_2;
  1786.                 if (!(null - (_loc_2 > null) * (null / MediaPlayer)))
  1787.                 {
  1788.                 }
  1789.                 do
  1790.                 {
  1791.                    
  1792.                     if (!(_loc_1 && _loc_1))
  1793.                     {
  1794.                         do
  1795.                         {
  1796.                            
  1797.                         }
  1798.                     }while (true)
  1799.                    
  1800.                 }while (true)
  1801.                
  1802.                 do
  1803.                 {
  1804.                    
  1805.                 }
  1806.                 do
  1807.                 {
  1808.                    
  1809.                 }
  1810.                 else
  1811.                 {
  1812.                 }
  1813.             }while (true)
  1814.            
  1815.         }while (true)
  1816.     }
  1817. }