( function ( f ) { f . html5 = { } ; f . html5 . version = "6.4.3359" } ) ( jwplayer ) ;
( function ( f ) { function h ( a ) { return function ( ) { a ( "Error loading file" ) } } function e ( a , b , c , e ) { return function ( ) { try { var g = a . responseXML ; if ( g && g . firstChild ) return c ( a ) } catch ( d ) { } ( g = f . parseXML ( a . responseText ) ) && g . firstChild ? ( a = f . extend ( { } , a , { responseXML : g } ) , c ( a ) ) : e && e ( a . responseText ? "Invalid XML" : b ) } } var d = window ; f . serialize = function ( a ) { return null == a ? null : "true" == a . toString ( ) . toLowerCase ( ) ? ! 0 : "false" == a . toString ( ) . toLowerCase ( ) ? ! 1 : isNaN ( Number ( a ) ) || 5 < a . length || 0 == a . length ? a : Number ( a ) } ; f . filterSources =
function ( a ) { var b , c , e = f . extensionmap ; if ( a ) { c = [ ] ; for ( var g = 0 ; g < a . length ; g ++ ) { var d = a [ g ] . type , j = a [ g ] . file ; d || ( d = e . extType ( f . extension ( j ) ) , a [ g ] . type = d ) ; f . canPlayHTML5 ( d ) && ( b || ( b = d ) , d == b && c . push ( f . extend ( { } , a [ g ] ) ) ) } } return c } ; f . canPlayHTML5 = function ( a ) { a = f . extensionmap . types [ a ] ; return ! ! a && jwplayer . vid . canPlayType ( a ) } ; f . ajax = function ( a , b , c ) { var k ; 0 < a . indexOf ( "#" ) && ( a = a . replace ( /#.*$/ , "" ) ) ; var g ; g = ( g = a ) && 0 <= g . indexOf ( "://" ) && g . split ( "/" ) [ 2 ] != d . location . href . split ( "/" ) [ 2 ] ? ! 0 : ! 1 ; if ( g && f . exists ( d . XDomainRequest ) ) k =
new XDomainRequest , k . onload = e ( k , a , b , c ) , k . onerror = h ( c , a , k ) ; else if ( f . exists ( d . XMLHttpRequest ) ) { var p = k = new XMLHttpRequest , j = a ; k . onreadystatechange = function ( ) { if ( 4 === p . readyState ) switch ( p . status ) { case 200 : e ( p , j , b , c ) ( ) ; break ; case 404 : c ( "File not found" ) } } ; k . onerror = h ( c , a ) } else c && c ( ) ; try { k . open ( "GET" , a , ! 0 ) , k . send ( null ) } catch ( l ) { c && c ( a ) } return k } ; f . parseXML = function ( a ) { try { var b ; if ( d . DOMParser ) { b = ( new DOMParser ) . parseFromString ( a , "text/xml" ) ; try { if ( "parsererror" == b . childNodes [ 0 ] . firstChild . nodeName ) return } catch ( c ) { } } else b =
new ActiveXObject ( "Microsoft.XMLDOM" ) , b . async = "false" , b . loadXML ( a ) ; return b } catch ( e ) { } } ; f . parseDimension = function ( a ) { if ( "string" == typeof a ) { if ( "" === a ) return 0 ; if ( ! ( - 1 < a . lastIndexOf ( "%" ) ) ) return parseInt ( a . replace ( "px" , "" ) , 10 ) } return a } ; f . timeFormat = function ( a ) { if ( 0 < a ) { var b = Math . floor ( a / 3600 ) , c = Math . floor ( ( a - 3600 * b ) / 60 ) ; a = Math . floor ( a % 60 ) ; return ( b ? b + ":" : "" ) + ( 10 > c ? "0" : "" ) + c + ":" + ( 10 > a ? "0" : "" ) + a } return "00:00" } ; f . seconds = function ( a ) { a = a . replace ( "," , "." ) ; var b = a . split ( ":" ) , c = 0 ; "s" == a . substr ( - 1 ) ? c = Number ( a . substr ( 0 ,
a . length - 1 ) ) : "m" == a . substr ( - 1 ) ? c = 60 * Number ( a . substr ( 0 , a . length - 1 ) ) : "h" == a . substr ( - 1 ) ? c = 3600 * Number ( a . substr ( 0 , a . length - 1 ) ) : 1 < b . length ? ( c = Number ( b [ b . length - 1 ] ) , c += 60 * Number ( b [ b . length - 2 ] ) , 3 == b . length && ( c += 3600 * Number ( b [ b . length - 3 ] ) ) ) : c = Number ( a ) ; return c } ; f . bounds = function ( a ) { if ( ! a ) return { left : 0 , right : 0 , width : 0 , height : 0 , top : 0 , bottom : 0 } ; var b = a , c = 0 , e = 0 , g = isNaN ( a . offsetWidth ) ? 0 : a . offsetWidth ; a = isNaN ( a . offsetHeight ) ? 0 : a . offsetHeight ; do c += isNaN ( b . offsetLeft ) ? 0 : b . offsetLeft , e += isNaN ( b . offsetTop ) ? 0 : b . offsetTop ;
while ( b = b . offsetParent ) ; return { left : c , top : e , width : g , height : a , right : c + g , bottom : e + a } } ; f . empty = function ( a ) { if ( a ) for ( ; 0 < a . childElementCount ; ) a . removeChild ( a . children [ 0 ] ) } } ) ( jwplayer . utils ) ;
( function ( f ) { function h ( ) { var a = document . createElement ( "style" ) ; a . type = "text/css" ; document . getElementsByTagName ( "head" ) [ 0 ] . appendChild ( a ) ; return a } function e ( b ) { if ( l ) a [ b ] . innerHTML = d ( b ) ; else { var c = a [ b ] . sheet , g = j [ b ] ; if ( c ) { var e = c . cssRules ; f . exists ( g ) && g < e . length && e [ g ] . selectorText == b ? c . deleteRule ( g ) : j [ b ] = e . length ; c . insertRule ( d ( b ) , j [ b ] ) } } } function d ( a ) { var b = a + "{\n" ; p ( c [ a ] , function ( a , c ) { b += " " + a + ": " + c + ";\n" } ) ; return b += "}\n" } var a = { } , b , c = { } , k = 0 , g = f . exists , p = f . foreach , j = { } , l = ! 1 , q = f . css = function ( d ,
j , s ) { if ( ! a [ d ] ) if ( l ) a [ d ] = h ( ) ; else { if ( ! b || 5E4 < b . sheet . cssRules . length ) b = h ( ) ; a [ d ] = b } g ( s ) || ( s = ! 1 ) ; c [ d ] || ( c [ d ] = { } ) ; p ( j , function ( a , b ) { a : { var e = b ; if ( "undefined" === typeof e ) b = void 0 ; else { var k = s ? " !important" : "" ; if ( isNaN ( e ) ) b = e . match ( /png|gif|jpe?g/i ) && 0 > e . indexOf ( "url" ) ? "url(" + e + ")" : e + k ; else switch ( a ) { case "z-index" : case "opacity" : b = e + k ; break a ; default : b = a . match ( /color/i ) ? "#" + f . pad ( e . toString ( 16 ) . replace ( /^0x/i , "" ) , 6 ) + k : 0 === e ? 0 + k : Math . ceil ( e ) + "px" + k } } } g ( c [ d ] [ a ] ) && ! g ( b ) ? delete c [ d ] [ a ] : g ( b ) && ( c [ d ] [ a ] = b ) } ) ;
0 < k || e ( d ) } ; q . block = function ( ) { k ++ } ; q . unblock = function ( ) { k = Math . max ( k - 1 , 0 ) ; 0 == k && p ( a , function ( a ) { e ( a ) } ) } ; f . clearCss = function ( b ) { p ( c , function ( a ) { 0 <= a . indexOf ( b ) && delete c [ a ] } ) ; p ( a , function ( a ) { 0 <= a . indexOf ( b ) && e ( a ) } ) } ; f . transform = function ( a , b ) { var c = "-transform" , e ; b = b ? b : "" ; "string" == typeof a ? ( e = { } , e [ "-webkit" + c ] = b , e [ "-ms" + c ] = b , e [ "-moz" + c ] = b , e [ "-o" + c ] = b , f . css ( a , e ) ) : ( c = "Transform" , e = a . style , e [ "webkit" + c ] = b , e [ "Moz" + c ] = b , e [ "ms" + c ] = b , e [ "O" + c ] = b ) } ; f . dragStyle = function ( a , b ) { f . css ( a , { "-webkit-user-select" : b ,
"-moz-user-select" : b , "-ms-user-select" : b , "-webkit-user-drag" : b , "user-select" : b , "user-drag" : b } ) } ; f . transitionStyle = function ( a , b ) { navigator . userAgent . match ( /5\.\d(\.\d)? safari/i ) || f . css ( a , { "-webkit-transition" : b , "-moz-transition" : b , "-o-transition" : b } ) } ; f . rotate = function ( a , b ) { f . transform ( a , "rotate(" + b + "deg)" ) } ; q ( ".jwplayer " + " div span a img ul li video" . split ( " " ) . join ( ",.jwplayer " ) + ", .jwclick" , { margin : 0 , padding : 0 , border : 0 , color : "#000000" , "font-size" : "100%" , font : "inherit" , "vertical-align" : "baseline" ,
"background-color" : "transparent" , "text-align" : "left" } ) ; q ( ".jwplayer ul" , { "list-style" : "none" } ) } ) ( jwplayer . utils ) ;
( function ( f ) { f . scale = function ( e , d , a , b , c ) { var k = f . exists ; k ( d ) || ( d = 1 ) ; k ( a ) || ( a = 1 ) ; k ( b ) || ( b = 0 ) ; k ( c ) || ( c = 0 ) ; f . transform ( e , 1 == d && 1 == a && 0 == b && 0 == c ? "" : "scale(" + d + "," + a + ") translate(" + b + "px," + c + "px)" ) } ; f . stretch = function ( e , d , a , b , c , k ) { if ( d && ( e || ( e = h . UNIFORM ) , a && b && c && k ) ) { var g = a / c , p = b / k , j = "video" == d . tagName . toLowerCase ( ) , l = ! 1 , q ; j && f . transform ( d ) ; q = "jw" + e . toLowerCase ( ) ; switch ( e . toLowerCase ( ) ) { case h . FILL : g > p ? ( c *= g , k *= g ) : ( c *= p , k *= p ) ; case h . NONE : g = p = 1 ; case h . EXACTFIT : l = ! 0 ; break ; default : g > p ? 0.95 < c * p / a ? ( l = ! 0 , q =
"jwexactfit" ) : ( c *= p , k *= p ) : 0.95 < k * g / b ? ( l = ! 0 , q = "jwexactfit" ) : ( c *= g , k *= g ) , l && ( p = Math . ceil ( 100 * b / k ) / 100 , g = Math . ceil ( 100 * a / c ) / 100 ) } j ? l ? ( d . style . width = c + "px" , d . style . height = k + "px" , f . scale ( d , g , p , ( a - c ) / 2 / g , ( b - k ) / 2 / p ) ) : ( d . style . width = "" , d . style . height = "" ) : ( d . className = d . className . replace ( /\s*jw(none|exactfit|uniform|fill)/g , "" ) , d . className += " " + q ) } } ; var h = f . stretching = { NONE : "none" , FILL : "fill" , UNIFORM : "uniform" , EXACTFIT : "exactfit" } } ) ( jwplayer . utils ) ;
( function ( f ) { f . parsers = { localName : function ( h ) { return h ? h . localName ? h . localName : h . baseName ? h . baseName : "" : "" } , textContent : function ( h ) { return h ? h . textContent ? h . textContent : h . text ? h . text : "" : "" } , getChildNode : function ( h , e ) { return h . childNodes [ e ] } , numChildren : function ( h ) { return h . childNodes ? h . childNodes . length : 0 } } } ) ( jwplayer . html5 ) ;
( function ( f ) { f . dfxp = function ( h , e ) { var d , a , b = jwplayer . utils . seconds ; this . load = function ( b ) { a = b ; try { d . open ( "GET" , b , ! 0 ) , d . send ( null ) } catch ( k ) { e ( "Error loading DFXP File: " + b ) } } ; d = new XMLHttpRequest ; d . onreadystatechange = function ( ) { if ( 4 === d . readyState ) if ( 200 === d . status ) { for ( var c = d . responseText , k = [ { begin : 0 , text : "" } ] , c = c . replace ( /^\s+/ , "" ) . replace ( /\s+$/ , "" ) , c = c . split ( "\x3c/p\x3e" ) , g = [ ] , f = 0 ; f < c . length ; f ++ ) 0 <= c [ f ] . indexOf ( "\x3cp" ) && ( c [ f ] = c [ f ] . substr ( c [ f ] . indexOf ( "\x3cp" ) + 2 ) . replace ( /^\s+/ , "" ) . replace ( /\s+$/ ,
"" ) , g . push ( c [ f ] ) ) ; c = g ; for ( f = 0 ; f < c . length ; f ++ ) { var g = c [ f ] , j = { } ; try { var l = g . indexOf ( 'begin\x3d"' ) , g = g . substr ( l + 7 ) , l = g . indexOf ( '" end\x3d"' ) ; j . begin = b ( g . substr ( 0 , l ) ) ; g = g . substr ( l + 7 ) ; l = g . indexOf ( '"\x3e' ) ; j . end = b ( g . substr ( 0 , l ) ) ; g = g . substr ( l + 2 ) ; j . text = g } catch ( q ) { } g = j ; g . text && ( k . push ( g ) , g . end && ( k . push ( { begin : g . end , text : "" } ) , delete g . end ) ) } 1 < k . length ? h ( k ) : e ( "Invalid DFXP file: " + a ) } else k = d . status , 0 == k ? e ( "Crossdomain loading denied: " + a ) : 404 == k ? e ( "DFXP File not found: " + a ) : e ( "Error " + k + " loading DFXP file: " +
a ) } } } ) ( jwplayer . html5 . parsers ) ;
( function ( f ) { var h = f . html5 . parsers ; ( h . jwparser = function ( ) { } ) . parseEntry = function ( e , d ) { for ( var a = [ ] , b = [ ] , c = f . utils . xmlAttribute , k = 0 ; k < e . childNodes . length ; k ++ ) { var g = e . childNodes [ k ] ; if ( "jwplayer" == g . prefix ) { var p = h . localName ( g ) ; "source" == p ? ( delete d . sources , a . push ( { file : c ( g , "file" ) , "default" : c ( g , "default" ) , label : c ( g , "label" ) , type : c ( g , "type" ) } ) ) : "track" == p ? ( delete d . tracks , b . push ( { file : c ( g , "file" ) , "default" : c ( g , "default" ) , kind : c ( g , "kind" ) , label : c ( g , "label" ) } ) ) : ( d [ p ] = f . utils . serialize ( h . textContent ( g ) ) , "file" ==
p && d . sources && delete d . sources ) } d . file || ( d . file = d . link ) } if ( a . length ) { d . sources = [ ] ; for ( k = 0 ; k < a . length ; k ++ ) 0 < a [ k ] . file . length && ( a [ k ] [ "default" ] = "true" == a [ k ] [ "default" ] ? ! 0 : ! 1 , a [ k ] . label . length || delete a [ k ] . label , d . sources . push ( a [ k ] ) ) } if ( b . length ) { d . tracks = [ ] ; for ( k = 0 ; k < b . length ; k ++ ) 0 < b [ k ] . file . length && ( b [ k ] [ "default" ] = "true" == b [ k ] [ "default" ] ? ! 0 : ! 1 , b [ k ] . kind = ! b [ k ] . kind . length ? "captions" : b [ k ] . kind , b [ k ] . label . length || delete b [ k ] . label , d . tracks . push ( b [ k ] ) ) } return d } } ) ( jwplayer ) ;
( function ( f ) { var h = jwplayer . utils , e = h . xmlAttribute , d = f . localName , a = f . textContent , b = f . numChildren , c = f . mediaparser = function ( ) { } ; c . parseGroup = function ( k , g ) { var f , j , l = [ ] ; for ( j = 0 ; j < b ( k ) ; j ++ ) if ( f = k . childNodes [ j ] , "media" == f . prefix && d ( f ) ) switch ( d ( f ) . toLowerCase ( ) ) { case "content" : e ( f , "duration" ) && ( g . duration = h . seconds ( e ( f , "duration" ) ) ) ; 0 < b ( f ) && ( g = c . parseGroup ( f , g ) ) ; e ( f , "url" ) && ( g . sources || ( g . sources = [ ] ) , g . sources . push ( { file : e ( f , "url" ) , type : e ( f , "type" ) , width : e ( f , "width" ) , label : e ( f , "label" ) } ) ) ; break ; case "title" : g . title =
a ( f ) ; break ; case "description" : g . description = a ( f ) ; break ; case "guid" : g . mediaid = a ( f ) ; break ; case "thumbnail" : g . image = e ( f , "url" ) ; break ; case "group" : c . parseGroup ( f , g ) ; break ; case "subtitle" : var q = { } ; q . file = e ( f , "url" ) ; q . kind = "captions" ; if ( 0 < e ( f , "lang" ) . length ) { var n = q ; f = e ( f , "lang" ) ; var r = { zh : "Chinese" , nl : "Dutch" , en : "English" , fr : "French" , de : "German" , it : "Italian" , ja : "Japanese" , pt : "Portuguese" , ru : "Russian" , es : "Spanish" } ; f = r [ f ] ? r [ f ] : f ; n . label = f } l . push ( q ) } g . hasOwnProperty ( "tracks" ) || ( g . tracks = [ ] ) ; for ( j = 0 ; j < l . length ; j ++ ) g . tracks . push ( l [ j ] ) ;
return g } } ) ( jwplayer . html5 . parsers ) ;
( function ( f ) { function h ( b ) { for ( var a = { } , h = 0 ; h < b . childNodes . length ; h ++ ) { var j = b . childNodes [ h ] , l = c ( j ) ; if ( l ) switch ( l . toLowerCase ( ) ) { case "enclosure" : a . file = e . xmlAttribute ( j , "url" ) ; break ; case "title" : a . title = d ( j ) ; break ; case "guid" : a . mediaid = d ( j ) ; break ; case "pubdate" : a . date = d ( j ) ; break ; case "description" : a . description = d ( j ) ; break ; case "link" : a . link = d ( j ) ; break ; case "category" : a . tags = a . tags ? a . tags + d ( j ) : d ( j ) } } a = f . mediaparser . parseGroup ( b , a ) ; a = f . jwparser . parseEntry ( b , a ) ; return new jwplayer . playlist . item ( a ) } var e =
jwplayer . utils , d = f . textContent , a = f . getChildNode , b = f . numChildren , c = f . localName ; f . rssparser = { } ; f . rssparser . parse = function ( e ) { for ( var g = [ ] , d = 0 ; d < b ( e ) ; d ++ ) { var f = a ( e , d ) ; if ( "channel" == c ( f ) . toLowerCase ( ) ) for ( var l = 0 ; l < b ( f ) ; l ++ ) { var q = a ( f , l ) ; "item" == c ( q ) . toLowerCase ( ) && g . push ( h ( q ) ) } } return g } } ) ( jwplayer . html5 . parsers ) ;
( function ( f ) { f . srt = function ( f , e , d ) { function a ( a ) { 0 == a ? e ( "Crossdomain loading denied: " + k ) : 404 == a ? e ( "SRT File not found: " + k ) : e ( "Error " + a + " loading SRT file: " + k ) } function b ( a ) { var b = d ? [ ] : [ { begin : 0 , text : "" } ] ; a = a . replace ( /^\s+/ , "" ) . replace ( /\s+$/ , "" ) ; var c = a . split ( "\r\n\r\n" ) ; 1 == c . length && ( c = a . split ( "\n\n" ) ) ; for ( a = 0 ; a < c . length ; a ++ ) if ( "WEBVTT" != c [ a ] ) { var g , r = c [ a ] ; g = { } ; var s = r . split ( "\r\n" ) ; 1 == s . length && ( s = r . split ( "\n" ) ) ; try { r = 1 ; 0 < s [ 0 ] . indexOf ( " --\x3e " ) && ( r = 0 ) ; var v = s [ r ] . indexOf ( " --\x3e " ) ; 0 < v && ( g . begin =
p ( s [ r ] . substr ( 0 , v ) ) , g . end = p ( s [ r ] . substr ( v + 5 ) ) ) ; if ( s [ r + 1 ] ) { g . text = s [ r + 1 ] ; for ( r += 2 ; r < s . length ; r ++ ) g . text += "\x3cbr/\x3e" + s [ r ] } } catch ( u ) { } g . text && ( b . push ( g ) , g . end && ! d && ( b . push ( { begin : g . end , text : "" } ) , delete g . end ) ) } 1 < b . length ? f ( b ) : e ( "Invalid SRT file: " + k ) } var c , k , g = jwplayer . utils , p = g . seconds ; this . load = function ( d ) { k = d ; try { var f ; f = d && 0 <= d . indexOf ( "://" ) && d . split ( "/" ) [ 2 ] != window . location . href . split ( "/" ) [ 2 ] ? ! 0 : ! 1 ; f && g . exists ( window . XDomainRequest ) && ( c = new XDomainRequest , c . onload = function ( ) { b ( c . responseText ) } ,
c . onerror = function ( ) { a ( c . status ) } ) ; c . open ( "GET" , d , ! 0 ) ; c . send ( null ) } catch ( h ) { e ( "Error loading SRT File: " + d ) } } ; c = new XMLHttpRequest ; c . onreadystatechange = function ( ) { 4 === c . readyState && ( 200 === c . status ? b ( c . responseText ) : a ( c . status ) ) } } } ) ( jwplayer . html5 . parsers ) ;
( function ( f ) { var h = jwplayer . utils , e = jwplayer . events , d = e . state , a = h . css , b = "playing" , c = document ; f . captions = function ( a , g ) { function p ( a ) { h . log ( "CAPTIONS(" + a + ")" ) } function j ( a ) { ( E = a . fullscreen ) ? ( l ( ) , setTimeout ( l , 500 ) ) : s ( ! 0 ) } function l ( ) { var a = m . offsetHeight , b = m . offsetWidth ; 0 != a && 0 != b && w . resize ( b , Math . round ( 0.94 * a ) ) } function q ( a ) { ( "tt" == f . parsers . localName ( a . responseXML . firstChild ) ? new jwplayer . html5 . parsers . dfxp ( r , p ) : new jwplayer . html5 . parsers . srt ( r , p ) ) . load ( H ) } function n ( ) { ( new jwplayer . html5 . parsers . srt ( r ,
p ) ) . load ( H ) } function r ( a ) { w . populate ( a ) ; x < B . length && ( B [ x ] . data = a ) ; s ( ! 1 ) } function s ( a ) { h . isMobile ( ) || ! B . length ? w . hide ( ) : z == b && 0 < C ? ( w . show ( ) , E ? j ( { fullscreen : ! 0 } ) : ( v ( ) , a && setTimeout ( v , 500 ) ) ) : w . hide ( ) } function v ( ) { w . resize ( ) } function u ( a ) { 0 < a ? ( x = a - 1 , C = a ) : C = 0 ; x >= B . length || ( B [ x ] . data ? w . populate ( B [ x ] . data ) : ( H = a = B [ x ] . file , h . ajax ( a , q , n ) ) , s ( ! 1 ) ) } function A ( ) { var a = [ ] ; a . push ( { label : "Off" } ) ; for ( var b = 0 ; b < B . length ; b ++ ) a . push ( { label : B [ b ] . label } ) ; return a } var m , y = { back : ! 0 , color : "#FFFFFF" , fontSize : 15 } , t = { fontFamily : "Arial,sans-serif" ,
fontStyle : "normal" , fontWeight : "normal" , textDecoration : "none" } , w , z , x , B = [ ] , C = 0 , E = ! 1 , H , D = new e . eventdispatcher ; h . extend ( this , D ) ; this . element = function ( ) { return m } ; this . getCaptionsList = function ( ) { return A ( ) } ; this . getCurrentCaptions = function ( ) { return C } ; this . setCurrentCaptions = function ( a ) { if ( 0 <= a && C != a && a <= B . length ) { u ( a ) ; a = A ( ) ; h . saveCookie ( "captionLabel" , a [ C ] . label ) ; var b = e . JWPLAYER _CAPTIONS _CHANGED ; D . sendEvent ( b , { type : b , tracks : a , track : C } ) } } ; m = c . createElement ( "div" ) ; m . id = a . id + "_caption" ; m . className = "jwcaptions" ;
a . jwAddEventListener ( e . JWPLAYER _PLAYER _STATE , function ( a ) { switch ( a . newstate ) { case d . IDLE : z = "idle" ; s ( ! 1 ) ; break ; case d . PLAYING : z = b , s ( ! 1 ) } } ) ; a . jwAddEventListener ( e . JWPLAYER _PLAYLIST _ITEM , function ( ) { x = 0 ; B = [ ] ; w . update ( 0 ) ; for ( var b = a . jwGetPlaylist ( ) [ a . jwGetPlaylistIndex ( ) ] . tracks , c = [ ] , g = 0 , d = "" , f = 0 , d = "" , g = 0 ; g < b . length ; g ++ ) d = b [ g ] . kind . toLowerCase ( ) , ( "captions" == d || "subtitles" == d ) && c . push ( b [ g ] ) ; for ( g = C = 0 ; g < c . length ; g ++ ) if ( d = c [ g ] . file ) c [ g ] . label || ( c [ g ] . label = g . toString ( ) ) , B . push ( c [ g ] ) ; for ( g = 0 ; g < B . length ; g ++ ) if ( B [ g ] [ "default" ] ) { f =
g + 1 ; break } if ( d = h . getCookies ( ) . captionLabel ) { b = A ( ) ; for ( g = 0 ; g < b . length ; g ++ ) if ( d == b [ g ] . label ) { f = g ; break } } u ( f ) ; s ( ! 1 ) ; b = e . JWPLAYER _CAPTIONS _LIST ; c = A ( ) ; D . sendEvent ( b , { type : b , tracks : c , track : C } ) } ) ; a . jwAddEventListener ( e . JWPLAYER _MEDIA _ERROR , p ) ; a . jwAddEventListener ( e . JWPLAYER _ERROR , p ) ; a . jwAddEventListener ( e . JWPLAYER _READY , function ( ) { h . foreach ( y , function ( a , b ) { g && void 0 != g [ a . toLowerCase ( ) ] ? "color" == a ? t . color = "#" + String ( g . color ) . substr ( - 6 ) : t [ a ] = g [ a . toLowerCase ( ) ] : t [ a ] = b } ) ; w = new jwplayer . html5 . captions . renderer ( t ,
m ) ; s ( ! 1 ) } ) ; a . jwAddEventListener ( e . JWPLAYER _MEDIA _TIME , function ( a ) { w . update ( a . position ) } ) ; a . jwAddEventListener ( e . JWPLAYER _FULLSCREEN , j ) ; a . jwAddEventListener ( e . JWPLAYER _RESIZE , function ( ) { s ( ! 1 ) } ) } ; a ( ".jwcaptions" , { position : "absolute" , cursor : "pointer" , width : "100%" , height : "100%" , overflow : "hidden" } ) } ) ( jwplayer . html5 ) ;
( function ( f ) { var h = jwplayer . utils . foreach ; f . captions . renderer = function ( e , d ) { function a ( a ) { f ( p , { visibility : "hidden" } ) ; j . innerHTML = a ; n = "" == a ? "hidden" : "visible" ; setTimeout ( b , 20 ) } function b ( ) { var a = p . clientWidth , b = Math . round ( e . fontSize * Math . pow ( a / 400 , 0.6 ) ) , c = Math . round ( 1.4 * b ) ; f ( j , { maxWidth : a + "px" , fontSize : b + "px" , lineHeight : c + "px" , visibility : n } ) } function c ( ) { for ( var b = - 1 , c = 0 ; c < g . length ; c ++ ) if ( g [ c ] . begin <= q && ( c == g . length - 1 || g [ c + 1 ] . begin >= q ) ) { b = c ; break } - 1 == b ? a ( "" ) : b != l && ( l = b , a ( g [ c ] . text ) ) } function f ( a , b ) { h ( b ,
function ( b , c ) { a . style [ b ] = c } ) } var g , p , j , l , q , n = "visible" , r ; this . hide = function ( ) { f ( p , { display : "none" } ) ; r && ( clearInterval ( r ) , r = null ) } ; this . populate = function ( a ) { l = - 1 ; g = a ; c ( ) } ; this . resize = function ( ) { b ( ) } ; p = document . createElement ( "div" ) ; j = document . createElement ( "span" ) ; p . appendChild ( j ) ; d . appendChild ( p ) ; f ( p , { display : "block" , height : "auto" , position : "absolute" , bottom : "20px" , textAlign : "center" , width : "100%" } ) ; f ( j , { color : "#" + e . color . substr ( - 6 ) , display : "inline-block" , fontFamily : e . fontFamily , fontStyle : e . fontStyle ,
fontWeight : e . fontWeight , height : "auto" , margin : "auto" , position : "relative" , textAlign : "center" , textDecoration : e . textDecoration , wordWrap : "break-word" , width : "auto" } ) ; e . back ? f ( j , { background : "#000" } ) : f ( j , { textShadow : "-2px 0px 1px #000,2px 0px 1px #000,0px -2px 1px #000,0px 2px 1px #000,-1px 1px 1px #000,1px 1px 1px #000,1px -1px 1px #000,1px 1px 1px #000" } ) ; this . show = function ( ) { f ( p , { display : "block" } ) ; r || ( r = setInterval ( b , 250 ) ) ; b ( ) } ; this . update = function ( a ) { q = a ; g && c ( ) } } } ) ( jwplayer . html5 ) ;
( function ( f ) { var h = f . html5 , e = f . utils , d = f . events , a = d . state , b = e . css ; f = e . transitionStyle ; var c = "button" , k = "text" , g = "divider" , p = "slider" , j = "100%" , l = { display : "none" } , q = { display : v } , n = ! 1 , r = ! 0 , s = null , v = void 0 , u = window , A = document ; h . controlbar = function ( f , y ) { function t ( a , b , c ) { return { name : a , type : b , className : c } } function w ( a ) { var b = n , c ; K . elapsed && ( c = e . timeFormat ( a . position ) , K . elapsed . innerHTML = c , b = c . length != e . timeFormat ( va ) . length ) ; K . duration && ( c = e . timeFormat ( a . duration ) , K . duration . innerHTML = c , b = b || c . length != e . timeFormat ( ia ) . length ) ;
0 < a . duration ? qa ( a . position / a . duration ) : qa ( 0 ) ; ia = a . duration ; va = a . position ; b && ya ( ) } function z ( ) { var a = G . jwGetMute ( ) ; Z ( "mute" , a ) ; ja ( a ? 0 : Ja ) } function x ( ) { Ja = G . jwGetVolume ( ) / 100 ; ja ( Ja ) } function B ( ) { b ( D ( ".jwhd" ) , l ) ; b ( D ( ".jwcc" ) , l ) ; za ( ) ; ya ( ) } function C ( a ) { Aa = a . currentQuality ; la && 0 <= Aa && la . setActive ( a . currentQuality ) } function E ( a ) { ca && ( Ba = a . track , ma && 0 <= Ba && ma . setActive ( a . track ) ) } function H ( ) { da = e . extend ( { } , W , R . getComponentSettings ( "controlbar" ) , y ) ; U = O ( "background" ) . height ; b ( "#" + $ , { height : U , bottom : wa ? 0 : da . margin } ) ;
b ( D ( ".jwtext" ) , { font : da . fontsize + "px/" + O ( "background" ) . height + "px " + da . font , color : da . fontcolor , "font-weight" : da . fontweight } ) ; b ( D ( ".jwoverlay" ) , { bottom : U } ) ; 0 < da . maxwidth && b ( D ( ) , { "max-width" : da . maxwidth } ) } function D ( a ) { return "#" + $ + ( a ? " " + a : "" ) } function L ( ) { return A . createElement ( "span" ) } function F ( a ) { switch ( a . type ) { case g : var e ; a . width ? ( e = L ( ) , e . className = "jwblankDivider" , b ( e , { width : parseInt ( a . width ) } ) ) : a . element ? e = I ( a . element ) : ( e = I ( a . name ) , e || ( e = L ( ) , e . className = "jwblankDivider" ) ) ; a . className && ( e . className +=
" " + a . className ) ; return e ; case k : a = a . name ; e = { } ; var d = O ( a + "Background" ) ; if ( d . src ) { var f = L ( ) ; f . id = $ + "_" + a ; f . className = "jwtext jw" + a ; e . background = "url(" + d . src + ") no-repeat center" ; e [ "background-size" ] = "100% " + O ( "background" ) . height + "px" ; b ( D ( ".jw" + a ) , e ) ; f . innerHTML = "00:00" ; a = K [ a ] = f } else a = null ; return a ; case c : if ( "blank" != a . name ) return a = a . name , O ( a + "Button" ) . src ? ( e = L ( ) , e . className = "jw" + a + " jwbuttoncontainer" , d = A . createElement ( "button" ) , d . addEventListener ( "click" , V ( a ) , n ) , d . innerHTML = "\x26nbsp;" , e . appendChild ( d ) ,
d = O ( a + "Button" ) , f = O ( a + "ButtonOver" ) , Q ( D ( ".jw" + a + " button" ) , d , f ) , ( d = bb [ a ] ) && Q ( D ( ".jw" + a + ".jwtoggle button" ) , O ( d + "Button" ) , O ( d + "ButtonOver" ) ) , a = K [ a ] = e ) : a = s , a ; break ; case p : d = a . name ; a = L ( ) ; var E = d + ( "time" == d ? "Slider" : "" ) + "Cap" , r = ( f = "volume" == d ) ? "Top" : "Left" , l = f ? "Bottom" : "Right" , q = I ( E + r , s , n , n , f ) , t = I ( E + l , s , n , n , f ) ; e = L ( ) ; var w = [ "Rail" , "Buffer" , "Progress" ] , m ; e . className = "jwrail jwsmooth" ; for ( var C = 0 ; C < w . length ; C ++ ) { var aa = "time" == d ? "Slider" : "" , y = d + aa + w [ C ] , x = I ( y , s , ! f , "volume" == d ) , u = I ( y + "Cap" + r , s , n , n , f ) , H = I ( y +
"Cap" + l , s , n , n , f ) , B = O ( y + "Cap" + r ) , z = O ( y + "Cap" + l ) ; if ( x ) { var F = L ( ) ; F . className = "jwrailgroup " + w [ C ] ; u && F . appendChild ( u ) ; F . appendChild ( x ) ; H && ( F . appendChild ( H ) , H . className += " jwcap" + ( f ? "Bottom" : "Right" ) ) ; b ( D ( ".jwrailgroup." + w [ C ] ) , { "min-width" : f ? v : B . width + z . width } ) ; F . capSize = f ? B . height + z . height : B . width + z . width ; b ( D ( "." + x . className ) , { left : f ? v : B . width , right : f ? v : z . width , top : f ? B . height : v , bottom : f ? z . height : v , height : f ? "auto" : v } ) ; 2 == C && ( m = F ) ; K [ y ] = F ; e . appendChild ( F ) } } if ( aa = I ( d + aa + "Thumb" , s , n , n , f ) ) b ( D ( "." + aa . className ) ,
{ opacity : "time" == d ? 0 : 1 , "margin-top" : f ? aa . skin . height / - 2 : v } ) , aa . className += " jwthumb" , ( f && m ? m : e ) . appendChild ( aa ) ; e . addEventListener ( "mousedown" , Pa ( d ) , n ) ; "time" == d && ( e . addEventListener ( "mousemove" , Ca , n ) , e . addEventListener ( "mouseout" , S , n ) ) ; K [ d + "Rail" ] = e ; m = O ( E + r ) ; E = O ( E + r ) ; O ( d + "SliderRail" ) ; a . className = "jwslider jw" + d ; q && a . appendChild ( q ) ; a . appendChild ( e ) ; t && ( f && ( t . className += " jwcapBottom" ) , a . appendChild ( t ) ) ; b ( D ( ".jw" + d + " .jwrail" ) , { left : f ? v : m . width , right : f ? v : E . width , top : f ? m . height : v , bottom : f ? E . height :
v , width : f ? j : v , height : f ? "auto" : v } ) ; K [ d ] = a ; a . vertical = f ; "time" == d ? ( na = new h . overlay ( $ + "_timetooltip" , R ) , Ka = new h . thumbs ( $ + "_thumb" ) , Qa = A . createElement ( "div" ) , Qa . className = "jwoverlaytext" , La = A . createElement ( "div" ) , d = Ka . element ( ) , La . appendChild ( d ) , La . appendChild ( Qa ) , na . setContents ( La ) , Va = e , J ( 0 ) , d = na . element ( ) , e . appendChild ( d ) , K . timeSliderThumb && b ( D ( ".jwtimeSliderThumb" ) , { "margin-left" : O ( "timeSliderThumb" ) . width / - 2 } ) , Da ( 0 ) , qa ( 0 ) , qa ( 0 ) , Da ( 0 ) ) : "volume" == d && ( b ( D ( ".jwvolume" ) , { width : O ( "volumeRail" ) . width +
( f ? 0 : O ( "volumeCap" + r ) . width + O ( "volumeCap" + l ) . width ) , height : f ? O ( "volumeCap" + r ) . height + O ( "volumeRail" ) . height + O ( "volumeRailCap" + r ) . height + O ( "volumeRailCap" + l ) . height + O ( "volumeCap" + l ) . height : v } ) , f && ( a . className += " jwvertical" ) ) ; return a } } function I ( a , c , d , g , f ) { var h = L ( ) ; h . className = "jw" + a ; var k = g ? " left center" : " center" ; g = O ( a ) ; h . innerHTML = "\x26nbsp;" ; if ( g && "" != g . src ) return d = d ? { background : "url('" + g . src + "') repeat-x " + k , height : f ? g . height : v } : { background : "url('" + g . src + "') no-repeat" + k , width : g . width , height : f ?
g . height : v } , h . skin = g , b ( D ( ".jw" + a ) , e . extend ( d , c ) ) , K [ a ] = h } function Q ( a , e , c ) { e . src && ( b ( a , { width : e . width , background : "url(" + e . src + ") center no-repeat" } ) , c . src && b ( a + ":hover" , { background : "url(" + c . src + ") center no-repeat" } ) ) } function V ( a ) { return function ( ) { if ( Wa [ a ] ) Wa [ a ] ( ) } } function M ( a ) { e . foreach ( Ea , function ( b , e ) { b != a && e . hide ( ) } ) } function X ( ) { wa || ( ra . show ( ) , M ( "volume" ) ) } function ea ( ) { wa || ( Ma . show ( ) , M ( "fullscreen" ) ) } function Z ( a , b ) { e . exists ( b ) || ( b = ! Na [ a ] ) ; K [ a ] && ( K [ a ] . className = "jw" + a + ( b ? " jwtoggle jwtoggling" :
" jwtoggling" ) , setTimeout ( function ( ) { K [ a ] . className = K [ a ] . className . replace ( " jwtoggling" , "" ) } , 100 ) ) ; Na [ a ] = b } function oa ( ) { sa && 1 < sa . length && ( Ra && ( clearTimeout ( Ra ) , Ra = void 0 ) , la . show ( ) , M ( "hd" ) ) } function aa ( ) { ca && 1 < ca . length && ( Sa && ( clearTimeout ( Sa ) , Sa = void 0 ) , ma . show ( ) , M ( "cc" ) ) } function Ta ( a ) { 0 <= a && a < sa . length && ( G . jwSetCurrentQuality ( a ) , la . hide ( ) ) } function Ua ( a ) { 0 <= a && a < ca . length && ( G . jwSetCurrentCaptions ( a ) , ma . hide ( ) ) } function Fa ( a ) { a . preventDefault ( ) ; A . onselectstart = function ( ) { return n } } function Pa ( b ) { return function ( e ) { 0 ==
e . button && ( K [ b + "Rail" ] . className = "jwrail" , "time" == b ? G . jwGetState ( ) != a . IDLE && ( G . jwSeekDrag ( r ) , ta = b ) : ta = b ) } } function fa ( a ) { var b = ( new Date ) . getTime ( ) ; if ( 50 < b - Xa ) { if ( ( Oa = e . bounds ( Va ) ) && 0 != Oa . width ) { var c = na . element ( ) , d = a . pageX - Oa . left - u . pageXOffset ; 0 <= d && d <= Oa . width && ( c . style . left = Math . round ( d ) + "px" , J ( ia * d / Oa . width ) , ka = e . bounds ( N ) ) } Xa = b } if ( ta && 0 == a . button ) return c = K [ ta ] . getElementsByClassName ( "jwrail" ) [ 0 ] , d = e . bounds ( c ) , c = ta , d = K [ c ] . vertical ? ( d . bottom - a . pageY ) / d . height : ( a . pageX - d . left ) / d . width , "mouseup" ==
a . type ? ( "time" == c && G . jwSeekDrag ( n ) , K [ c + "Rail" ] . className = "jwrail jwsmooth" , ta = s , Ya [ c ] ( d ) ) : ( "time" == ta ? qa ( d ) : ja ( d ) , 500 < b - Za && ( Za = b , Ya [ ta ] ( d ) ) ) , ! 1 } function Ca ( ) { na && ( ia && ! wa ) && ( pa ( na ) , na . show ( ) ) } function S ( ) { na && na . hide ( ) } function J ( a ) { Qa . innerHTML = e . timeFormat ( a ) ; Ka . updateTimeline ( a ) ; na . setContents ( La ) ; ka = e . bounds ( N ) ; pa ( na ) } function P ( ) { Sa = setTimeout ( ma . hide , 500 ) } function ua ( ) { Ra = setTimeout ( la . hide , 500 ) } function ba ( a , c , e , d ) { var g = a . element ( ) ; c . appendChild ( g ) ; c . addEventListener ( "mousemove" , e , n ) ; d ? c . addEventListener ( "mouseout" ,
d , n ) : c . addEventListener ( "mouseout" , a . hide , n ) ; b ( "#" + g . id , { left : "50%" } ) } function Ga ( a ) { var b = L ( ) ; b . className = "jwgroup jw" + a ; xa [ a ] = b ; if ( ga [ a ] && ( b = ga [ a ] , a = xa [ a ] , b && 0 < b . elements . length ) ) for ( var c = 0 ; c < b . elements . length ; c ++ ) { var e = F ( b . elements [ c ] ) ; e && ( "volume" == b . elements [ c ] . name && e . vertical ? ( ra = new h . overlay ( $ + "_volumeOverlay" , R ) , ra . setContents ( e ) ) : a . appendChild ( e ) ) } } function za ( ) { 1 < G . jwGetPlaylist ( ) . length && ( ! A . querySelector ( "#" + G . id + " .jwplaylist" ) || G . jwGetFullscreen ( ) ) ? ( b ( D ( ".jwnext" ) , q ) , b ( D ( ".jwprev" ) ,
q ) , b ( D ( ".nextdiv" ) , q ) ) : ( b ( D ( ".jwnext" ) , l ) , b ( D ( ".jwprev" ) , l ) , b ( D ( ".nextdiv" ) , l ) ) } function pa ( a ) { ka || ( ka = e . bounds ( N ) ) ; a . offsetX ( 0 ) ; var b = e . bounds ( a . element ( ) ) ; b . right > ka . right ? a . offsetX ( ka . right - b . right ) : b . left < ka . left && a . offsetX ( ka . left - b . left ) } function Da ( a ) { a = Math . min ( Math . max ( 0 , a ) , 1 ) ; K . timeSliderBuffer && ( K . timeSliderBuffer . style . width = 100 * a + "%" , K . timeSliderBuffer . style . opacity = 0 < a ? 1 : 0 ) } function Y ( a , b ) { var c = K [ a ] . vertical , e = a + ( "time" == a ? "Slider" : "" ) , d = 100 * Math . min ( Math . max ( 0 , b ) , 1 ) + "%" , g = K [ e + "Progress" ] ,
e = K [ e + "Thumb" ] , f = n ; g && ( c ? ( g . style . height = d , g . style . bottom = 0 , g . clientHeight <= g . capSize && ( f = r ) ) : ( g . style . width = d , g . clientWidth <= g . capSize && ( f = r ) ) , g . style . opacity = ! f && 0 < b || ta ? 1 : 0 ) ; e && ( c ? e . style . top = 0 : e . style . left = d ) } function ja ( a ) { Y ( "volume" , a ) } function qa ( a ) { Y ( "time" , a ) } function O ( a ) { return ( a = R . getSkinElement ( 0 == a . indexOf ( "volume" ) ? "tooltip" : "controlbar" , a ) ) ? a : { width : 0 , height : 0 , src : "" , image : v , ready : n } } var G , R , T = t ( "divider" , g ) , W = { margin : 8 , maxwidth : 800 , font : "Arial,sans-serif" , fontsize : 11 , fontcolor : 15658734 ,
fontweight : "bold" , layout : { left : { position : "left" , elements : [ t ( "play" , c ) , T , t ( "prev" , c ) , t ( "next" , c ) , t ( "divider" , g , "nextdiv" ) , t ( "elapsed" , k ) ] } , center : { position : "center" , elements : [ t ( "time" , p ) ] } , right : { position : "right" , elements : [ t ( "duration" , k ) , T , t ( "hd" , c ) , t ( "cc" , c ) , T , t ( "mute" , c ) , t ( "volume" , p ) , T , t ( "fullscreen" , c ) ] } } } , da , ga , K , U , N , $ , ia , va , sa , Aa , ca , Ba , Ja , ra , ka , Va , Oa , na , La , Ka , Qa , Ra , la , Sa , ma , Ma , $a , Ha , wa = n , ta = n , Za = 0 , Xa = 0 , bb = { play : "pause" , mute : "unmute" , fullscreen : "normalscreen" } , Na = { play : n , mute : n , fullscreen : n } ,
Wa = { play : function ( ) { Na . play ? G . jwPause ( ) : G . jwPlay ( ) } , mute : function ( ) { G . jwSetMute ( ! Na . mute ) ; z ( { mute : Na . mute } ) } , fullscreen : function ( ) { G . jwSetFullscreen ( ) } , next : function ( ) { G . jwPlaylistNext ( ) } , prev : function ( ) { G . jwPlaylistPrev ( ) } } , Ya = { time : function ( a ) { G . jwSeek ( a * ia ) } , volume : function ( a ) { ja ( a ) ; 0.1 > a && ( a = 0 ) ; 0.9 < a && ( a = 1 ) ; G . jwSetVolume ( 100 * a ) } } , Ea = { } , ha = this , xa = { } , ya = function ( ) { clearTimeout ( $a ) ; $a = setTimeout ( ha . redraw , 0 ) } ; ha . redraw = function ( ) { H ( ) ; var a = O ( "capLeft" ) , c = O ( "capRight" ) ; b ( D ( ".jwgroup.jwcenter" ) , { left : Math . round ( e . parseDimension ( xa . left . offsetWidth ) +
a . width ) , right : Math . round ( e . parseDimension ( xa . right . offsetWidth ) + c . width ) } ) ; a = N . parentNode . clientWidth > da . maxwidth ; c = wa ? 0 : da . margin ; b ( D ( ) , { left : a ? "50%" : c , right : a ? v : c , "margin-left" : a ? N . clientWidth / - 2 : v , width : a ? j : v } ) ; ka = e . bounds ( N ) ; e . foreach ( Ea , function ( a , b ) { pa ( b ) } ) } ; ha . audioMode = function ( a ) { a != wa && ( wa = a , b ( D ( ".jwfullscreen" ) , { display : a ? "none" : v } ) , b ( D ( ".jwhd" ) , { display : a ? "none" : v } ) , b ( D ( ".jwcc" ) , { display : a ? "none" : v } ) , ya ( ) ) } ; ha . element = function ( ) { return N } ; ha . margin = function ( ) { return parseInt ( da . margin ) } ;
ha . height = function ( ) { return U } ; ha . show = function ( ) { ha . visible || ( clearTimeout ( Ha ) , Ha = v , ha . visible = ! 0 , N . style . display = "inline-block" , ya ( ) , z ( ) , Ha = setTimeout ( function ( ) { N . style . opacity = 1 } , 10 ) ) } ; ha . hide = function ( ) { ha . visible && ( ha . visible = ! 1 , N . style . opacity = 0 , clearTimeout ( Ha ) , Ha = v , Ha = setTimeout ( function ( ) { N . style . display = "none" } , 150 ) ) } ; K = { } ; G = f ; $ = G . id + "_controlbar" ; ia = va = 0 ; N = L ( ) ; N . id = $ ; N . className = "jwcontrolbar" ; R = G . skin ; ga = R . getComponentLayout ( "controlbar" ) ; ga || ( ga = W . layout ) ; e . clearCss ( "#" + $ ) ; H ( ) ; var Ia =
I ( "capLeft" ) , T = I ( "capRight" ) , ab = I ( "background" , { position : "absolute" , left : O ( "capLeft" ) . width , right : O ( "capRight" ) . width , "background-repeat" : "repeat-x" } , r ) ; ab && N . appendChild ( ab ) ; Ia && N . appendChild ( Ia ) ; Ga ( "left" ) ; Ga ( "center" ) ; Ga ( "right" ) ; N . appendChild ( xa . left ) ; N . appendChild ( xa . center ) ; N . appendChild ( xa . right ) ; K . hd && ( la = new h . menu ( "hd" , $ + "_hd" , R , Ta ) , ba ( la , K . hd , oa , ua ) , Ea . hd = la ) ; K . cc && ( ma = new h . menu ( "cc" , $ + "_cc" , R , Ua ) , ba ( ma , K . cc , aa , P ) , Ea . cc = ma ) ; K . mute && ( K . volume && K . volume . vertical ) && ( ra = new h . overlay ( $ + "_volumeoverlay" ,
R ) , ra . setContents ( K . volume ) , ba ( ra , K . mute , X ) , Ea . volume = ra ) ; K . fullscreen && ( Ma = new h . overlay ( $ + "_fullscreenoverlay" , R ) , Ia = A . createElement ( "div" ) , Ia . className = "jwoverlaytext" , Ia . innerHTML = "Fullscreen" , Ma . setContents ( Ia ) , ba ( Ma , K . fullscreen , ea ) , Ea . fullscreen = Ma ) ; b ( D ( ".jwright" ) , { right : O ( "capRight" ) . width } ) ; T && N . appendChild ( T ) ; G . jwAddEventListener ( d . JWPLAYER _MEDIA _TIME , w ) ; G . jwAddEventListener ( d . JWPLAYER _PLAYER _STATE , function ( c ) { switch ( c . newstate ) { case a . BUFFERING : case a . PLAYING : b ( D ( ".jwtimeSliderThumb" ) ,
{ opacity : 1 } ) ; Z ( "play" , r ) ; break ; case a . PAUSED : ta || Z ( "play" , n ) ; break ; case a . IDLE : Z ( "play" , n ) , b ( D ( ".jwtimeSliderThumb" ) , { opacity : 0 } ) , K . timeRail && ( K . timeRail . className = "jwrail" , setTimeout ( function ( ) { K . timeRail . className += " jwsmooth" } , 100 ) ) , Da ( 0 ) , w ( { position : 0 , duration : 0 } ) } } ) ; G . jwAddEventListener ( d . JWPLAYER _PLAYLIST _ITEM , function ( a ) { a = G . jwGetPlaylist ( ) [ a . index ] . tracks ; if ( "array" == e . typeOf ( a ) ) for ( var b = 0 ; b < a . length ; b ++ ) if ( a [ b ] . file && a [ b ] . kind && "thumbnails" == a [ b ] . kind . toLowerCase ( ) ) { Ka . load ( a [ b ] . file ) ; return } Ka . load ( ) } ) ;
G . jwAddEventListener ( d . JWPLAYER _MEDIA _MUTE , z ) ; G . jwAddEventListener ( d . JWPLAYER _MEDIA _VOLUME , x ) ; G . jwAddEventListener ( d . JWPLAYER _MEDIA _BUFFER , function ( a ) { Da ( a . bufferPercent / 100 ) } ) ; G . jwAddEventListener ( d . JWPLAYER _FULLSCREEN , function ( a ) { Z ( "fullscreen" , a . fullscreen ) ; za ( ) } ) ; G . jwAddEventListener ( d . JWPLAYER _PLAYLIST _LOADED , B ) ; G . jwAddEventListener ( d . JWPLAYER _MEDIA _LEVELS , function ( a ) { if ( ( sa = a . levels ) && 1 < sa . length && la ) { b ( D ( ".jwhd" ) , { display : v } ) ; la . clearOptions ( ) ; for ( var c = 0 ; c < sa . length ; c ++ ) la . addOption ( sa [ c ] . label ,
c ) ; C ( a ) } else b ( D ( ".jwhd" ) , { display : "none" } ) ; ya ( ) } ) ; G . jwAddEventListener ( d . JWPLAYER _MEDIA _LEVEL _CHANGED , C ) ; G . jwAddEventListener ( d . JWPLAYER _CAPTIONS _LIST , function ( a ) { if ( ( ca = a . tracks ) && 1 < ca . length && ma ) { b ( D ( ".jwcc" ) , { display : v } ) ; ma . clearOptions ( ) ; for ( var c = 0 ; c < ca . length ; c ++ ) ma . addOption ( ca [ c ] . label , c ) ; E ( a ) } else b ( D ( ".jwcc" ) , { display : "none" } ) ; ya ( ) } ) ; G . jwAddEventListener ( d . JWPLAYER _CAPTIONS _CHANGED , E ) ; N . addEventListener ( "mouseover" , function ( ) { u . addEventListener ( "mousemove" , fa , n ) ; u . addEventListener ( "mouseup" ,
fa , n ) ; u . addEventListener ( "mousedown" , Fa , n ) } , ! 1 ) ; N . addEventListener ( "mouseout" , function ( ) { u . removeEventListener ( "mousemove" , fa ) ; u . removeEventListener ( "mouseup" , fa ) ; u . removeEventListener ( "mousedown" , Fa ) ; A . onselectstart = null } , ! 1 ) ; setTimeout ( function ( ) { x ( ) ; z ( ) } , 0 ) ; B ( ) ; ha . visible = ! 1 } ; b ( ".jwcontrolbar" , { position : "absolute" , opacity : 0 , display : "none" } ) ; b ( ".jwcontrolbar span" , { height : j } ) ; e . dragStyle ( ".jwcontrolbar span" , "none" ) ; b ( ".jwcontrolbar .jwgroup" , { display : "inline" } ) ; b ( ".jwcontrolbar span, .jwcontrolbar .jwgroup button,.jwcontrolbar .jwleft" ,
{ position : "relative" , "float" : "left" } ) ; b ( ".jwcontrolbar .jwright" , { position : "absolute" } ) ; b ( ".jwcontrolbar .jwcenter" , { position : "absolute" } ) ; b ( ".jwcontrolbar buttoncontainer,.jwcontrolbar button" , { display : "inline-block" , height : j , border : "none" , cursor : "pointer" } ) ; b ( ".jwcontrolbar .jwcapRight,.jwcontrolbar .jwtimeSliderCapRight,.jwcontrolbar .jwvolumeCapRight" , { right : 0 , position : "absolute" } ) ; b ( ".jwcontrolbar .jwcapBottom" , { bottom : 0 , position : "absolute" } ) ; b ( ".jwcontrolbar .jwtime" , { position : "absolute" , height : j ,
width : j , left : 0 } ) ; b ( ".jwcontrolbar .jwthumb" , { position : "absolute" , height : j , cursor : "pointer" } ) ; b ( ".jwcontrolbar .jwrail" , { position : "absolute" , cursor : "pointer" } ) ; b ( ".jwcontrolbar .jwrailgroup" , { position : "absolute" , width : j } ) ; b ( ".jwcontrolbar .jwrailgroup span" , { position : "absolute" } ) ; b ( ".jwcontrolbar .jwdivider+.jwdivider" , { display : "none" } ) ; b ( ".jwcontrolbar .jwtext" , { padding : "0 5px" , "text-align" : "center" } ) ; b ( ".jwcontrolbar .jwoverlaytext" , { padding : 3 , "text-align" : "center" } ) ; b ( ".jwcontrolbar .jwvertical *" ,
{ display : "block" } ) ; f ( ".jwcontrolbar" , "opacity .15s, background .15s, visibility .15s" ) ; f ( ".jwcontrolbar button" , "opacity .15s, background .15s, visibility .15s" ) ; f ( ".jwcontrolbar .jwtime .jwsmooth span" , "opacity .15s, background .15s, visibility .15s, width .15s linear, left .05s linear" ) ; f ( ".jwcontrolbar .jwtoggling" , "none" ) } ) ( jwplayer ) ;
( function ( f ) { var h = f . html5 , e = f . utils , d = f . events , a = d . state ; h . controller = function ( b , c ) { function k ( a ) { m . sendEvent ( a . type , a ) } function g ( a ) { j ( ! 0 ) ; switch ( e . typeOf ( a ) ) { case "string" : var b = new h . playlistloader ; b . addEventListener ( d . JWPLAYER _PLAYLIST _LOADED , function ( a ) { g ( a . playlist ) } ) ; b . addEventListener ( d . JWPLAYER _ERROR , function ( a ) { g ( [ ] ) ; a . message = "Could not load playlist: " + a . message ; k ( a ) } ) ; b . load ( a ) ; break ; case "object" : case "array" : u . setPlaylist ( new f . playlist ( a ) ) ; break ; case "number" : u . setItem ( a ) } } function p ( b ) { e . exists ( b ) ||
( b = ! 0 ) ; if ( ! b ) return l ( ) ; try { 0 <= t && ( g ( t ) , t = - 1 ) ; if ( ! w && ( w = ! 0 , m . sendEvent ( d . JWPLAYER _MEDIA _BEFOREPLAY ) , w = ! 1 , B ) ) { B = ! 1 ; z = null ; return } if ( u . state == a . IDLE ) { if ( 0 == u . playlist . length ) return ! 1 ; A . load ( u . playlist [ u . item ] ) } else u . state == a . PAUSED && A . play ( ) ; return ! 0 } catch ( c ) { m . sendEvent ( d . JWPLAYER _ERROR , c ) , z = null } return ! 1 } function j ( b ) { z = null ; try { return u . state != a . IDLE ? A . stop ( ) : b || ( x = ! 0 ) , w && ( B = ! 0 ) , ! 0 } catch ( c ) { m . sendEvent ( d . JWPLAYER _ERROR , c ) } return ! 1 } function l ( b ) { z = null ; e . exists ( b ) || ( b = ! 0 ) ; if ( ! b ) return p ( ) ; try { switch ( u . state ) { case a . PLAYING : case a . BUFFERING : A . pause ( ) ;
break ; default : w && ( B = ! 0 ) } return ! 0 } catch ( c ) { m . sendEvent ( d . JWPLAYER _ERROR , c ) } return ! 1 } function q ( a ) { g ( a ) ; p ( ) } function n ( ) { q ( u . item + 1 ) } function r ( ) { u . state == a . IDLE && ( x ? x = ! 1 : ( z = r , u . repeat ? n ( ) : u . item == u . playlist . length - 1 ? ( t = 0 , j ( ! 0 ) , setTimeout ( function ( ) { m . sendEvent ( d . JWPLAYER _PLAYLIST _COMPLETE ) } , 0 ) ) : n ( ) ) ) } function s ( a ) { return function ( ) { y ? v ( a , arguments ) : C . push ( { method : a , arguments : arguments } ) } } function v ( a , b ) { var c = [ ] , e ; for ( e = 0 ; e < b . length ; e ++ ) c . push ( b [ e ] ) ; a . apply ( this , c ) } var u = b , A = b . getVideo ( ) , m = new d . eventdispatcher ( u . id ,
u . config . debug ) , y = ! 1 , t = - 1 , w , z , x = ! 1 , B , C = [ ] ; e . extend ( this , m ) ; this . play = s ( p ) ; this . pause = s ( l ) ; this . seek = s ( function ( b ) { u . state != a . PLAYING && p ( ! 0 ) ; A . seek ( b ) } ) ; this . stop = function ( ) { x = ! 0 ; s ( j ) ( ) } ; this . load = s ( g ) ; this . next = s ( n ) ; this . prev = s ( function ( ) { q ( u . item - 1 ) } ) ; this . item = s ( q ) ; this . setVolume = s ( u . setVolume ) ; this . setMute = s ( u . setMute ) ; this . setFullscreen = s ( function ( a ) { c . fullscreen ( a ) } ) ; this . setStretching = s ( function ( a ) { u . stretching = a ; c . resize ( ) } ) ; this . detachMedia = function ( ) { try { return u . getVideo ( ) . detachMedia ( ) } catch ( a ) { return null } } ;
this . attachMedia = function ( a ) { try { u . getVideo ( ) . attachMedia ( a ) , "function" == typeof z && z ( ) } catch ( b ) { return null } } ; this . setCurrentQuality = s ( function ( a ) { A . setCurrentQuality ( a ) } ) ; this . getCurrentQuality = function ( ) { return A ? A . getCurrentQuality ( ) : - 1 } ; this . getQualityLevels = function ( ) { return A ? A . getQualityLevels ( ) : null } ; this . setCurrentCaptions = s ( function ( a ) { c . setCurrentCaptions ( a ) } ) ; this . getCurrentCaptions = function ( ) { return c . getCurrentCaptions ( ) } ; this . getCaptionsList = function ( ) { return c . getCaptionsList ( ) } ; this . checkBeforePlay =
function ( ) { return w } ; this . playerReady = function ( a ) { if ( ! y ) { c . completeSetup ( ) ; m . sendEvent ( a . type , a ) ; f . utils . exists ( window . jwplayer . playerReady ) && f . playerReady ( a ) ; u . addGlobalListener ( k ) ; c . addGlobalListener ( k ) ; m . sendEvent ( f . events . JWPLAYER _PLAYLIST _LOADED , { playlist : f ( u . id ) . getPlaylist ( ) } ) ; m . sendEvent ( f . events . JWPLAYER _PLAYLIST _ITEM , { index : u . item } ) ; g ( ) ; u . autostart && ! e . isMobile ( ) && p ( ) ; for ( y = ! 0 ; 0 < C . length ; ) a = C . shift ( ) , v ( a . method , a . arguments ) } } ; u . addEventListener ( d . JWPLAYER _MEDIA _BUFFER _FULL , function ( ) { A . play ( ) } ) ;
u . addEventListener ( d . JWPLAYER _MEDIA _COMPLETE , function ( ) { setTimeout ( r , 25 ) } ) ; u . addEventListener ( d . JWPLAYER _MEDIA _ERROR , function ( a ) { a = e . extend ( { } , a ) ; a . type = d . JWPLAYER _ERROR ; m . sendEvent ( a . type , a ) } ) } } ) ( jwplayer ) ;
( function ( f ) { f . html5 . defaultskin = function ( ) { this . text = ' \ x3c ? xml version \ x3d "1.0" ? \ x3e \ x3cskin author \ x3d "LongTail Video" name \ x3d "Six" version \ x3d "2.0" target \ x3d "6.0" \ x3e \ x3ccomponents \ x3e \ x3ccomponent name \ x3d "controlbar" \ x3e \ x3csettings \ x3e \ x3csetting name \ x3d "margin" value \ x3d "8" / \ x3e \ x3csetting name \ x3d "fontcolor" value \ x3d "eeeeee" / \ x3e \ x3csetting name \ x3d "fontsize" value \ x3d "11" / \ x3e \ x3csetting name \ x3d "fontweight" value \ x3d "bold" / \ x3e \ x3csetting name \ x3d "maxwidth" value \ x3d "800" / \ x3e \ x3c / settings \ x3e \ x3celements \ x3e \ x3celement name \ x3d "background" src \ x3d "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAaCAIAAAD5ZqGGAAAAJklEQVR42mNKSUlhevToEdPXr1+Z/v37RxH+//8/htjv379BZgMA4j5LOzqaqAsAAAAASUVORK5CYII\x3d" / \ x3e \ x3celement name \ x3d "capLeft" src \ x3d "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAaCAYAAAB/75arAAAAh0lEQVR42t2RywnDMAxAhSbJRukGPtgDdJSO0k7U4IOPBhuM8b9SIAG3p0JPFTwETxJICIFCSrkqpZ7EYFAIsbbW7s65RWsNDJK4ee/BGAMhhB2stS7WWui9n7CEGOMsaXwSZ+d/yR+cOcaY+HL8vcByyzl/7HllyX8qpexgSulBhQvl7XjxCydafIt3Z4BrAAAAAElFTkSuQmCC" / \ x3e \ x3celement name \ x3d "capRight" src \ x3d "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAaCAYAAAB/75arAAAAjUlEQVR42tWRywnDMAxAhSbJRukGPtgDdJSO0k7U4INPvthgjP+VSlsSkkvpqYKH4EnCFkKl1Hhxl1LOQIFaa2Ccc1Nr7SqEmDGEAIwxBrz3QIUL9t7hjbUWaq3TRqaUWMJGMjS+l4edfy2/XHOMAWt+eJ3FTuacWS5YSgEmxviU9M/z58R0tIXEifLtATSUfIsSwhegAAAAAElFTkSuQmCC" / \ x3e \ x3celement name \ x3d "divider" src \ x3d "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAaCAYAAAB2BDbRAAAAEElEQVR42mP4//8/A8NAEgDiqk2zfDlcXgAAAABJRU5ErkJggg\x3d\x3d" / \ x3e \ x3celement name \ x3d "playButton" src \ x3d "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAcCAYAAAB75n/uAAAAdUlEQVR42u2TsQ3AIAwE2YARMkJGyCiMwiiMwgjUFMAIjOC8lMJdiIjd+aSrr3i9MwzjHXoYMOgFmAIvvQCT4aEXYNLvEK2ZMEKvFODQVqC1Rl/sve8Faq20cMIIvUYgQR5ZMJDh6RixQIF8NMHAgMEZhrHNDU+1T3s3o0CaAAAAAElFTkSuQmCC" / \ x3e \ x3celement name \ x3d "playButtonOver" src \ x3d "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAcCAYAAAB75n/uAAABhUlEQVR42uXVzUoCYRTGcXNGR3HSDPtASyIhrIjaFJlBRBRUdAUGQQurdVfSrl2LuhEvYxR1IYroRhCEWU1/4R2Yxcz4MUlQB34bGc6D58y8r+/vl2EYczNpKvitzN9/orEEGUEoQhAyJDNs2gAJCiKIYVGIQUUIAWvQNM2jWMEGtoRNpJBAFOGJgsRDAahYRRbHuMAVznGEHaSxZBNkvyPLQhXEkUEew+riE88o4AYn2BVBCcxDgWz+G6fxhLGMPdzBWh184RUPuEUOWaSwgBBkpwAZESRxiALsqoV3EXSPSxwgLUIUc1xOAWvI4RFupeENRVxjH0moCMBvF6BiHXkUMap0lPCCM2QQh2LuwingFE8Ytwa4wTYSCEEaGVCtVo1x1Gq1CQPEiDRNM9yUy2W92WyWdF13HJHrkt2aNxoNbTAYuC555Gtq17her7f6/f7HmK+p+4dmbcysO71ez8OHZnNUDBtXKpVuu932clTM/rCb/XHt/cL5/SvT+6XvKcz3r+sbpPMfjCOvfIMAAAAASUVORK5CYII\x3d" / \ x3e \ x3celement name \ x3d "pauseButton" src \ x3d "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAcCAYAAAB75n/uAAAAN0lEQVR42u3NoQ0AMAwDwe6/YYBncWlUyQFBBX+SickfADM/0k+AQCbJffHfqir3hZ/ADwEAowtQ1mmQzb8rQgAAAABJRU5ErkJggg\x3d\x3d" / \ x3e \ x3celement name \ x3d "pauseButtonOver" src \ x3d "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAcCAYAAAB75n/uAAABdUlEQVR42t2WzWrCQBSFq1FSaSjaFi1iF6UFtdBdF6WhC0Hoym3BlSAu+wbddSF9xfyTJ7k9gRMJuY2Oi2w88BG5zLlHZiYzOTttiUijyP768Y2bxCKVv0nD+B/T2AY2OAcdPnOKNZtjrdx/KMCi6QJ0wTW44fOKFGtdjrXzEJPml2AA7sEEPIExeCRj1iYcM6CnOoTz2AYOuAVT8Arm4APMwDuZsTbnmCk9Dns0qxbVBj3wAFzR+iRlufT02IOLrqenA/rgGSxE64uUtaCnzx7WfwEtLtYQvIClaH2Tspb0DNmjtS9gxHldidYPKWtFz+hQgAPuwBtYi9aWlLXOPPQ6JgEu2IjWLylrQ89xAVEUSRzHkiSJpGm6C8jqBVSA8RR5nie+70sQBHmjbUZWL6CmyHiRVQAXWQfoRTbapiqA21QH6G1q9KJl5jwkDMPdi6YCzF40fVSoAB4VKqDiqKj1sKv9uK71wqn9yqzt0q/vs+Wk9QeSkdKwXIKzCgAAAABJRU5ErkJggg\x3d\x3d" / \ x3e \ x3celement name \ x3d "prevButton" src \ x3d "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAAcCAYAAABsxO8nAAAAfUlEQVR42u2MwQnAIAxFu4EjOIIjOFJH6EiCF8fw7BQZwf5AegkU2tje8uGR5Afe5vH8mTHGZG5+EXSzSPoMCEyzCPd+9SYRZgCFb7MIJNB5XxURT7OotTYFkql5Jqq1TiGBzrvinUj2AMqSSHXHikj3GZBVpH8R9M3j+Tgn8lcGnlSSd08AAAAASUVORK5CYII\x3d" / \ x3e \ x3celement name \ x3d "prevButtonOver" src \ x3d " data : image / png ; base64 , iVBORw0KGgoAAAANSUhEUgAAABIAAAAcCAYAAABsxO8nAAABhUlEQVR42uXUz0oCURTH8VKz / BNFmZJ / iMAoEmohlRRI7Yp2Qa0igyJc9Qot2vUGbnwB3yJXPYKaCi5m62LQzSymr3KE09hAi1nVgQ93hnv4wZ259878o7Jte / YXfADPcAvwIeDgFwHMKYFJoDPILw0hREQYCyKMKBZlDCEIvzMkiAhWEEdCxlURRwoZJBGTwOA4SC0nLJMb2MGujFlsIYc8DrCPrIRHZtR3mccSMtI0qTMUcYoLXKGMTxxiE
f . utils . parseXML ( this . text ) ; return this } } ) ( jwplayer ) ;
( function ( f ) { var h = jwplayer . utils , e = jwplayer . events , d = e . state , a = h . css , b = document , c = ".jwpreview" , k = ! 0 , g = ! 1 ; f . display = function ( p , j ) { function l ( a ) { if ( ea ) ea ( a ) ; else { switch ( y . jwGetState ( ) ) { case d . PLAYING : case d . BUFFERING : y . jwPause ( ) ; break ; default : y . jwPlay ( ) } X . sendEvent ( e . JWPLAYER _DISPLAY _CLICK ) } } function q ( a , b ) { M . showicons && ( a || b ? ( I . setRotation ( "buffer" == a ? parseInt ( M . bufferrotation ) : 0 , parseInt ( M . bufferinterval ) ) , I . setIcon ( a ) , I . setText ( b ) ) : I . hide ( ) ) } function n ( b ) { x != b ? ( x && m ( c , g ) , ( x = b ) ? ( b = new Image , b . addEventListener ( "load" ,
v , g ) , b . src = x ) : ( a ( "#" + t . id + " " + c , { "background-image" : void 0 } ) , m ( c , g ) , B = C = 0 ) ) : x && m ( c , k ) ; s ( y . jwGetState ( ) ) } function r ( a ) { clearTimeout ( Z ) ; Z = setTimeout ( function ( ) { s ( a . newstate ) } , 100 ) } function s ( a ) { a = Q ? Q : y ? y . jwGetState ( ) : d . IDLE ; if ( a != V ) switch ( V = a , I && I . setRotation ( 0 ) , a ) { case d . IDLE : ! D && ! L && ( x && ! E && m ( c , k ) , q ( "play" , z ? z . title : "" ) ) ; break ; case d . BUFFERING : D = g ; H . error && H . error . setText ( ) ; L = g ; q ( "buffer" ) ; break ; case d . PLAYING : q ( ) ; break ; case d . PAUSED : q ( "play" ) } } function v ( ) { B = this . width ; C = this . height ; s ( y . jwGetState ( ) ) ;
A ( ) ; x && a ( "#" + t . id + " " + c , { "background-image" : "url(" + x + ")" } ) } function u ( a ) { D = k ; q ( "error" , a . message ) } function A ( ) { 0 < t . clientWidth * t . clientHeight && h . stretch ( y . jwGetStretching ( ) , w , t . clientWidth , t . clientHeight , B , C ) } function m ( b , c ) { h . exists ( F [ b ] ) || ( F [ b ] = ! 1 ) ; F [ b ] != c && ( F [ b ] = c , a ( "#" + t . id + " " + b , { opacity : c ? 1 : 0 , visibility : c ? "visible" : "hidden" } ) ) } var y = p , t , w , z , x , B , C , E = g , H = { } , D = g , L = g , F = { } , I , Q , V , M = h . extend ( { showicons : k , bufferrotation : 45 , bufferinterval : 100 , fontcolor : "#ccc" , overcolor : "#fff" , fontsize : 15 , fontweight : "" } ,
p . skin . getComponentSettings ( "display" ) , j ) , X = new e . eventdispatcher , ea ; h . extend ( this , X ) ; this . clickHandler = l ; var Z ; this . forceState = function ( a ) { Q = a ; s ( a ) ; this . show ( ) } ; this . releaseState = function ( a ) { Q = null ; s ( a ) ; this . show ( ) } ; this . hidePreview = function ( a ) { E = a ; m ( c , ! a ) } ; this . element = function ( ) { return t } ; this . redraw = A ; this . show = function ( ) { I && ( Q ? Q : y ? y . jwGetState ( ) : d . IDLE ) != d . PLAYING && I . show ( ) } ; this . hide = function ( ) { I && I . hide ( ) } ; this . setAlternateClickHandler = function ( a ) { ea = a } ; this . revertAlternateClickHandler = function ( ) { ea =
void 0 } ; t = b . createElement ( "div" ) ; t . id = y . id + "_display" ; t . className = "jwdisplay" ; w = b . createElement ( "div" ) ; w . className = "jwpreview jw" + y . jwGetStretching ( ) ; t . appendChild ( w ) ; y . jwAddEventListener ( e . JWPLAYER _PLAYER _STATE , r ) ; y . jwAddEventListener ( e . JWPLAYER _PLAYLIST _ITEM , function ( ) { D = g ; H . error && H . error . setText ( ) ; var a = ( z = y . jwGetPlaylist ( ) [ y . jwGetPlaylistIndex ( ) ] ) ? z . image : "" ; V = void 0 ; n ( a ) } ) ; y . jwAddEventListener ( e . JWPLAYER _PLAYLIST _COMPLETE , function ( ) { L = k ; q ( "replay" ) ; var a = y . jwGetPlaylist ( ) [ 0 ] ; n ( a . image ) } ) ; y . jwAddEventListener ( e . JWPLAYER _MEDIA _ERROR ,
u ) ; y . jwAddEventListener ( e . JWPLAYER _ERROR , u ) ; t . addEventListener ( "click" , l , g ) ; var oa = { font : M . fontweight + " " + M . fontsize + "px/" + ( parseInt ( M . fontsize ) + 3 ) + "px Arial,Helvetica,sans-serif" , color : M . fontcolor } ; I = new f . displayicon ( t . id + "_button" , y , oa , { color : M . overcolor } ) ; t . appendChild ( I . element ( ) ) ; r ( { newstate : d . IDLE } ) } ; a ( ".jwdisplay" , { position : "absolute" , cursor : "pointer" , width : "100%" , height : "100%" , overflow : "hidden" } ) ; a ( ".jwdisplay .jwpreview" , { position : "absolute" , width : "100%" , height : "100%" , background : "no-repeat center" ,
overflow : "hidden" , opacity : 0 } ) ; a ( ".jwdisplay, .jwdisplay *" , { "-webkit-transition" : "opacity .25s, background-image .25s, color .25s" , "-moz-transition" : "opacity .25s, background-image .25s, color .25s" , "-o-transition" : "opacity .25s, background-image .25s, color .25s" } ) } ) ( jwplayer . html5 ) ;
( function ( f ) { var h = jwplayer . utils , e = h . css , d = void 0 , a = document , b = "none" , c = "100%" ; f . displayicon = function ( f , g , p , j ) { function l ( a , b ) { return "#" + m + ( b ? ":hover" : "" ) + " " + ( a ? a : "" ) } function q ( b , c , e , d ) { var g = a . createElement ( "div" ) ; g . className = b ; c && c . appendChild ( g ) ; n ( b , "." + b , e , d ) ; return g } function n ( a , b , c , d ) { var g = r ( a ) ; "replayIcon" == a && ! g . src && ( g = r ( "playIcon" ) ) ; c = h . extend ( { } , c ) ; 0 < a . indexOf ( "Icon" ) && ( E = g . width ) ; g . src && ( c [ "background-image" ] = "url(" + g . src + ")" , c . width = g . width ) ; e ( l ( b ) , c ) ; d = h . extend ( { } , d ) ; g . overSrc &&
( d [ "background-image" ] = "url(" + g . overSrc + ")" ) ; C = g ; e ( "#" + u . id + " .jwdisplay:hover " + ( b ? b : l ( ) ) , d ) } function r ( a ) { var b = A . getSkinElement ( "display" , a ) ; a = A . getSkinElement ( "display" , a + "Over" ) ; return b ? ( b . overSrc = a && a . src ? a . src : "" , b ) : { src : "" , overSrc : "" , width : 0 , height : 0 } } function s ( ) { var a = z || 0 == E , g = "px " + c , f ; e ( l ( ".jwtext" ) , { display : x . innerHTML && a ? d : b } ) ; setTimeout ( function ( ) { f = Math . max ( C . width , h . bounds ( y ) . width - w . width - t . width ) ; ( h . isFF ( ) || h . isIE ( ) ) && f ++ ; h . isChrome ( ) && 1 == y . parentNode . clientWidth % 2 && f ++ ; e ( l ( ) ,
{ "background-size" : [ t . width + g , f + g , w . width + g ] . join ( ) } , ! 0 ) } , 0 ) } function v ( ) { L = ( L + D ) % 360 ; h . rotate ( B , L ) } var u = g , A = u . skin , m = f , y , t , w , z , x , B , C , E = 0 ; this . element = function ( ) { return y } ; this . setText = function ( b ) { var c = x . style ; x . innerHTML = b ? b . replace ( ":" , ":\x3cbr\x3e" ) : "" ; c . height = "0" ; c . display = "block" ; if ( b ) for ( ; 2 < Math . floor ( x . scrollHeight / a . defaultView . getComputedStyle ( x , null ) . lineHeight . replace ( "px" , "" ) ) ; ) x . innerHTML = x . innerHTML . replace ( /(.*) .*$/ , "$1..." ) ; c . height = "" ; c . display = "" ; s ( ) } ; this . setIcon = function ( a ) { var b =
q ( "icon" ) ; b . id = y . id + "_" + a ; n ( a + "Icon" , "#" + b . id ) ; y . contains ( B ) ? y . replaceChild ( b , B ) : y . appendChild ( b ) ; B = b } ; var H , D = 0 , L ; this . setRotation = function ( a , b ) { clearInterval ( H ) ; L = 0 ; D = a ; 0 == a ? v ( ) : H = setInterval ( v , b ) } ; g = this . hide = function ( ) { y . style . opacity = 0 } ; this . show = function ( ) { y . style . opacity = 1 } ; y = q ( "jwdisplayIcon" ) ; y . id = m ; f = r ( "background" ) ; t = r ( "capLeft" ) ; w = r ( "capRight" ) ; z = 0 < t . width * w . width ; var F = { "background-image" : "url(" + t . src + "), url(" + f . src + "), url(" + w . src + ")" , "background-position" : "left,center,right" , "background-repeat" : "no-repeat" ,
padding : "0 " + w . width + "px 0 " + t . width + "px" , height : f . height , "margin-top" : f . height / - 2 } ; e ( l ( ) , F ) ; f . overSrc && ( F [ "background-image" ] = "url(" + t . overSrc + "), url(" + f . overSrc + "), url(" + w . overSrc + ")" ) ; e ( "#" + u . id + " .jwdisplay:hover " + l ( ) , F ) ; x = q ( "jwtext" , y , p , j ) ; B = q ( "icon" , y ) ; g ( ) ; s ( ) } ; e ( ".jwdisplayIcon" , { display : "table" , cursor : "pointer" , position : "relative" , "margin-left" : "auto" , "margin-right" : "auto" , top : "50%" } , ! 0 ) ; e ( ".jwdisplayIcon div" , { position : "relative" , display : "table-cell" , "vertical-align" : "middle" , "background-repeat" : "no-repeat" ,
"background-position" : "center" } ) ; e ( ".jwdisplayIcon div" , { "vertical-align" : "middle" } , ! 0 ) ; e ( ".jwdisplayIcon .jwtext" , { color : "#fff" , padding : "0 1px" , "max-width" : "300px" , "overflow-y" : "hidden" , "text-align" : "center" , "-webkit-user-select" : b , "-moz-user-select" : b , "-ms-user-select" : b , "user-select" : b } ) } ) ( jwplayer . html5 ) ;
( function ( f ) { var h = jwplayer . utils , e = h . css , d = h . bounds , a = ".jwdockbuttons" , b = document , c = "none" , k = "block" ; f . dock = function ( g , p ) { function j ( a , b ) { var c = n ( a ) ; e ( l ( "." + a ) , { width : c . width , background : c . src } ) ; return q ( "div" , a , b ) } function l ( a ) { return "#" + v + " " + ( a ? a : "" ) } function q ( a , c , e ) { a = b . createElement ( a ) ; c && ( a . className = c ) ; e && e . appendChild ( a ) ; return a } function n ( a ) { return ( a = u . getSkinElement ( "dock" , a ) ) ? a : { width : 0 , height : 0 , src : "" } } function r ( ) { e ( a + " .capLeft, " + a + " .capRight" , { display : A ? k : c } ) } var s = h . extend ( { } ,
{ iconalpha : 0.75 , iconalphaactive : 0.5 , iconalphaover : 1 , margin : 8 } , p ) , v = g . id + "_dock" , u = g . skin , A = 0 , m = { } , y = { } , t , w , z = this ; z . redraw = function ( ) { d ( t ) } ; z . element = function ( ) { return t } ; z . offset = function ( a ) { e ( l ( ) , { "margin-left" : a } ) } ; z . hide = function ( ) { z . visible && ( z . visible = ! 1 , t . style . opacity = 0 , setTimeout ( function ( ) { t . style . display = c } , 150 ) ) } ; z . show = function ( ) { ! z . visible && A && ( z . visible = ! 0 , t . style . display = k , setTimeout ( function ( ) { t . style . opacity = 1 } , 0 ) ) } ; z . addButton = function ( a , b , c , g ) { if ( ! m [ g ] ) { var k = q ( "div" , "divider" ,
w ) , j = q ( "button" , null , w ) , l = q ( "div" , null , j ) ; l . id = v + "_" + g ; l . innerHTML = "\x26nbsp;" ; e ( "#" + l . id , { "background-image" : a } ) ; "string" == typeof c && ( c = new Function ( c ) ) ; j . addEventListener ( "click" , c ) ; m [ g ] = { element : j , label : b , divider : k , icon : l } ; if ( b ) { var n = new f . overlay ( l . id + "_tooltip" , u , ! 0 ) ; a = q ( "div" ) ; a . id = l . id + "_label" ; a . innerHTML = b ; e ( "#" + a . id , { padding : 3 } ) ; n . setContents ( a ) ; var s ; j . addEventListener ( "mouseover" , function ( ) { clearTimeout ( s ) ; var a = y [ g ] , b , c ; b = d ( m [ g ] . icon ) ; a . offsetX ( 0 ) ; c = d ( t ) ; e ( "#" + a . element ( ) . id , { left : b . left -
c . left + b . width / 2 } ) ; b = d ( a . element ( ) ) ; c . left > b . left && a . offsetX ( c . left - b . left + 8 ) ; n . show ( ) ; h . foreach ( y , function ( a , b ) { a != g && b . hide ( ) } ) } , ! 1 ) ; j . addEventListener ( "mouseout" , function ( ) { s = setTimeout ( n . hide , 100 ) } , ! 1 ) ; t . appendChild ( n . element ( ) ) ; y [ g ] = n } A ++ ; r ( ) } } ; z . removeButton = function ( a ) { m [ a ] && ( w . removeChild ( m [ a ] . element ) , w . removeChild ( m [ a ] . divider ) , delete m [ a ] , A -- , r ( ) ) } ; z . numButtons = function ( ) { return A } ; z . visible = ! 1 ; t = q ( "div" , "jwdock" ) ; w = q ( "div" , "jwdockbuttons" ) ; t . appendChild ( w ) ; t . id = v ; var x = n ( "button" ) , B = n ( "buttonOver" ) ,
C = n ( "buttonActive" ) ; x && ( e ( l ( ) , { height : x . height , padding : s . margin } ) , e ( a , { height : x . height } ) , e ( l ( "button" ) , { width : x . width , cursor : "pointer" , border : c , background : x . src } ) , B . src && e ( l ( "button:hover" ) , { background : B . src } ) , C . src && e ( l ( "button:active" ) , { background : C . src } ) , e ( l ( "button\x3ediv" ) , { opacity : s . iconalpha } ) , e ( l ( "button:hover\x3ediv" ) , { opacity : s . iconalphaover } ) , e ( l ( "button:active\x3ediv" ) , { opacity : s . iconalphaactive } ) , e ( l ( ".jwoverlay" ) , { top : s . margin + x . height } ) , j ( "capLeft" , w ) , j ( "capRight" , w ) , j ( "divider" ) ) ;
setTimeout ( function ( ) { d ( t ) } ) } ; e ( ".jwdock" , { opacity : 0 , display : c } ) ; e ( ".jwdock \x3e *" , { height : "100%" , "float" : "left" } ) ; e ( ".jwdock \x3e .jwoverlay" , { height : "auto" , "float" : c , "z-index" : 99 } ) ; e ( a + " button" , { position : "relative" } ) ; e ( a + " \x3e *" , { height : "100%" , "float" : "left" } ) ; e ( a + " .divider" , { display : c } ) ; e ( a + " button ~ .divider" , { display : k } ) ; e ( a + " .capLeft, " + a + " .capRight" , { display : c } ) ; e ( a + " .capRight" , { "float" : "right" } ) ; e ( a + " button \x3e div" , { left : 0 , right : 0 , top : 0 , bottom : 0 , margin : 5 , position : "absolute" , "background-position" : "center" ,
"background-repeat" : "no-repeat" } ) ; h . transitionStyle ( ".jwdock" , "background .15s, opacity .15s" ) ; h . transitionStyle ( ".jwdock .jwoverlay" , "opacity .15s" ) ; h . transitionStyle ( a + " button div" , "opacity .15s" ) } ) ( jwplayer . html5 ) ;
( function ( f ) { var h = jwplayer , e = h . utils , d = h . events , a = d . state , b = h . playlist ; f . instream = function ( c , h , g , p ) { function j ( a ) { E && H . sendEvent ( a . type , a ) ; I = ! 0 ; F . jwInstreamDestroy ( ! 1 ) } function l ( a ) { E && E && H . sendEvent ( a . type , a ) } function q ( ) { E && x . play ( ) } function n ( ) { E && setTimeout ( function ( ) { F . jwInstreamDestroy ( ! 0 ) } , 10 ) } function r ( a ) { a . width && a . height && m . resizeMedia ( ) } function s ( ) { B && B . redraw ( ) ; C && C . redraw ( ) } var v = { controlbarseekable : "never" , controlbarpausable : ! 0 , controlbarstoppable : ! 0 , playlistclickable : ! 0 } , u , A , m = g ,
y , t , w , z , x , B , C , E = ! 1 , H , D , L , F = this , I = ! 1 , Q = ! 0 ; this . load = function ( g , M ) { e . isAndroid ( 2.3 ) ? j ( { type : d . JWPLAYER _ERROR , message : "Error loading instream: Cannot play instream on Android 2.3" } ) : ( E = ! 0 , A = e . extend ( v , M ) , u = new b . item ( g ) , D = document . createElement ( "div" ) , D . id = F . id + "_instream_container" , y = p . detachMedia ( ) , x = new f . video ( y ) , x . addGlobalListener ( l ) , x . addEventListener ( d . JWPLAYER _MEDIA _META , r ) , x . addEventListener ( d . JWPLAYER _MEDIA _COMPLETE , n ) , x . addEventListener ( d . JWPLAYER _MEDIA _BUFFER _FULL , q ) , x . attachMedia ( ) , x . mute ( h . mute ) ,
x . volume ( h . volume ) , L = new f . model ( { } , x ) , L . setVolume ( h . volume ) , L . setMute ( h . mute ) , L . addEventListener ( d . JWPLAYER _ERROR , j ) , z = h . playlist [ h . item ] , w = h . getVideo ( ) . checkComplete ( ) ? a . IDLE : c . jwGetState ( ) , p . checkBeforePlay ( ) && ( w = a . PLAYING , Q = ! 1 ) , t = y . currentTime , L . setPlaylist ( [ g ] ) , I || ( ( w == a . BUFFERING || w == a . PLAYING ) && y . pause ( ) , C = new f . display ( F ) , C . setAlternateClickHandler ( function ( b ) { L . state == a . PAUSED ? F . jwInstreamPlay ( ) : ( F . jwInstreamPause ( ) , E && H . sendEvent ( d . JWPLAYER _INSTREAM _CLICK , b ) ) } ) , D . appendChild ( C . element ( ) ) ,
e . isMobile ( ) || ( B = new f . controlbar ( F ) , D . appendChild ( B . element ( ) ) , B . show ( ) ) , m . setupInstream ( D , y ) , s ( ) , x . load ( L . playlist [ 0 ] ) ) ) } ; this . jwInstreamDestroy = function ( b ) { if ( E ) { E = ! 1 ; w != a . IDLE ? x . load ( z , ! 1 ) : x . stop ( ) ; H . resetEventListeners ( ) ; I || C . revertAlternateClickHandler ( ) ; x . detachMedia ( ) ; m . destroyInstream ( ) ; if ( B ) try { B . element ( ) . parentNode . removeChild ( B . getDisplayElement ( ) ) } catch ( c ) { } H . sendEvent ( d . JWPLAYER _INSTREAM _DESTROYED , { reason : b ? "complete" : "destroyed" } ) ; p . attachMedia ( ) ; if ( w == a . BUFFERING || w == a . PLAYING ) y . play ( ) ,
h . playlist [ h . item ] == z && Q && h . getVideo ( ) . seek ( t ) } } ; this . jwInstreamAddEventListener = function ( a , b ) { H . addEventListener ( a , b ) } ; this . jwInstreamRemoveEventListener = function ( a , b ) { H . removeEventListener ( a , b ) } ; this . jwInstreamPlay = function ( ) { E && ( x . play ( ! 0 ) , h . state = jwplayer . events . state . PLAYING , C . show ( ) ) } ; this . jwInstreamPause = function ( ) { E && ( x . pause ( ! 0 ) , h . state = jwplayer . events . state . PAUSED , C . show ( ) ) } ; this . jwInstreamSeek = function ( a ) { E && x . seek ( a ) } ; this . jwPlay = function ( ) { "true" == A . controlbarpausable . toString ( ) . toLowerCase ( ) &&
this . jwInstreamPlay ( ) } ; this . jwPause = function ( ) { "true" == A . controlbarpausable . toString ( ) . toLowerCase ( ) && this . jwInstreamPause ( ) } ; this . jwStop = function ( ) { "true" == A . controlbarstoppable . toString ( ) . toLowerCase ( ) && ( this . jwInstreamDestroy ( ) , c . jwStop ( ) ) } ; this . jwSeek = function ( a ) { switch ( A . controlbarseekable . toLowerCase ( ) ) { case "always" : this . jwInstreamSeek ( a ) ; break ; case "backwards" : L . position > a && this . jwInstreamSeek ( a ) } } ; this . jwSeekDrag = function ( a ) { L . seekDrag ( a ) } ; this . jwGetPosition = function ( ) { } ; this . jwGetDuration =
function ( ) { } ; this . jwGetWidth = c . jwGetWidth ; this . jwGetHeight = c . jwGetHeight ; this . jwGetFullscreen = c . jwGetFullscreen ; this . jwSetFullscreen = c . jwSetFullscreen ; this . jwGetVolume = function ( ) { return h . volume } ; this . jwSetVolume = function ( a ) { L . setVolume ( a ) ; c . jwSetVolume ( a ) } ; this . jwGetMute = function ( ) { return h . mute } ; this . jwSetMute = function ( a ) { L . setMute ( a ) ; c . jwSetMute ( a ) } ; this . jwGetState = function ( ) { return h . state } ; this . jwGetPlaylist = function ( ) { return [ u ] } ; this . jwGetPlaylistIndex = function ( ) { return 0 } ; this . jwGetStretching =
function ( ) { return h . config . stretching } ; this . jwAddEventListener = function ( a , b ) { H . addEventListener ( a , b ) } ; this . jwRemoveEventListener = function ( a , b ) { H . removeEventListener ( a , b ) } ; this . jwSetCurrentQuality = function ( ) { } ; this . jwGetQualityLevels = function ( ) { return [ ] } ; this . skin = c . skin ; this . id = c . id + "_instream" ; H = new d . eventdispatcher ; c . jwAddEventListener ( d . JWPLAYER _RESIZE , s ) ; c . jwAddEventListener ( d . JWPLAYER _FULLSCREEN , function ( a ) { l ( a ) ; s ( ) } ) ; return this } } ) ( jwplayer . html5 ) ;
( function ( f ) { var h = f . utils , e = h . css , d = f . events . state , a = f . html5 . logo = function ( b , c ) { function k ( a ) { h . exists ( a ) && a . stopPropagation ( ) ; if ( ! n || ! j . link ) g . jwGetState ( ) == d . IDLE || g . jwGetState ( ) == d . PAUSED ? g . jwPlay ( ) : g . jwPause ( ) ; n && j . link && ( g . jwPause ( ) , g . jwSetFullscreen ( ! 1 ) , window . open ( j . link , j . linktarget ) ) } var g = b , p = g . id + "_logo" , j , l , q = a . defaults , n = ! 1 ; this . resize = function ( ) { } ; this . element = function ( ) { return l } ; this . offset = function ( a ) { e ( "#" + p + " " , { "margin-bottom" : a } ) } ; this . position = function ( ) { return j . position } ;
this . margin = function ( ) { return parseInt ( j . margin ) } ; this . hide = function ( a ) { if ( j . hide || a ) n = ! 1 , l . style . visibility = "hidden" , l . style . opacity = 0 } ; this . show = function ( ) { n = ! 0 ; l . style . visibility = "visible" ; l . style . opacity = 1 } ; var r = "o" ; g . edition && ( r = g . edition ( ) , r = "pro" == r ? "p" : "premium" == r ? "r" : "ads" == r ? "a" : "free" == r ? "f" : "o" ) ; if ( "o" == r || "f" == r ) q . link = "http://www.longtailvideo.com/jwpabout/?a\x3dl\x26v\x3d" + f . version + "\x26m\x3dh\x26e\x3d" + r ; j = h . extend ( { } , q , c ) ; j . hide = "true" == j . hide . toString ( ) ; l = document . createElement ( "img" ) ;
l . className = "jwlogo" ; l . id = p ; if ( j . file ) { var q = /(\w+)-(\w+)/ . exec ( j . position ) , r = { } , s = j . margin ; 3 == q . length ? ( r [ q [ 1 ] ] = s , r [ q [ 2 ] ] = s ) : r . top = r . right = s ; e ( "#" + p + " " , r ) ; l . src = ( j . prefix ? j . prefix : "" ) + j . file ; l . onclick = k } else l . style . display = "none" ; return this } ; a . defaults = { prefix : h . repo ( ) , file : "logo.png" , linktarget : "_top" , margin : 8 , hide : ! 1 , position : "top-right" } ; e ( ".jwlogo" , { cursor : "pointer" , position : "absolute" , "z-index" : 100 , opacity : 0 } ) ; h . transitionStyle ( ".jwlogo" , "visibility .15s, opacity .15s" ) } ) ( jwplayer ) ;
( function ( f ) { var h = f . html5 , e = f . utils , d = e . css , a = void 0 ; h . menu = function ( b , c , f , g ) { function p ( a , b ) { return function ( ) { v ( a ) ; q && q ( b ) } } function j ( a , b ) { var c = document . createElement ( "div" ) ; a && ( c . className = a ) ; b && b . appendChild ( c ) ; return c } function l ( b ) { return ( b = f . getSkinElement ( "tooltip" , b ) ) ? b : { width : 0 , height : 0 , src : a } } var q = g , n = new h . overlay ( c + "_overlay" , f ) ; g = e . extend ( { fontcase : a , fontcolor : "#cccccc" , fontsize : 11 , fontweight : a , activecolor : "#ffffff" , overcolor : "#ffffff" } , f . getComponentSettings ( "tooltip" ) ) ; var r , s =
[ ] ; this . element = function ( ) { return n . element ( ) } ; this . addOption = function ( a , b ) { var e = j ( "jwoption" , r ) ; e . id = c + "_option_" + b ; e . innerHTML = a ; e . addEventListener ( "click" , p ( s . length , b ) ) ; s . push ( e ) } ; this . clearOptions = function ( ) { for ( ; 0 < s . length ; ) r . removeChild ( s . pop ( ) ) } ; var v = this . setActive = function ( a ) { for ( var b = 0 ; b < s . length ; b ++ ) { var c = s [ b ] ; c . className = c . className . replace ( " active" , "" ) ; b == a && ( c . className += " active" ) } } ; this . show = n . show ; this . hide = n . hide ; this . offsetX = n . offsetX ; r = j ( "jwmenu" ) ; r . id = c ; var u = l ( "menuTop" +
b ) ; b = l ( "menuOption" ) ; var A = l ( "menuOptionOver" ) , m = l ( "menuOptionActive" ) ; u && r . appendChild ( u . image ) ; b && ( u = "#" + c + " .jwoption" , d ( u , { "background-image" : b . src , height : b . height , color : g . fontcolor , "padding-left" : b . width , font : g . fontweight + " " + g . fontsize + "px Arial,Helvetica,sans-serif" , "line-height" : b . height , "text-transform" : "upper" == g . fontcase ? "uppercase" : a } ) , d ( u + ":hover" , { "background-image" : A . src ? A . src : a , color : g . overcolor } ) , d ( u + ".active" , { "background-image" : m . src ? m . src : a , color : g . activecolor } ) ) ; n . setContents ( r ) } ;
d ( "." + "jwmenu jwoption" . replace ( / /g , " ." ) , { "background-repeat" : "no-repeat" , cursor : "pointer" , position : "relative" } ) } ) ( jwplayer ) ;
( function ( f ) { var h = jwplayer . utils , e = jwplayer . events ; f . model = function ( d , a ) { function b ( a ) { var b = l [ a . type ] ? l [ a . type ] . split ( "," ) : [ ] , e , g ; if ( 0 < b . length ) { for ( e = 0 ; e < b . length ; e ++ ) { var d = b [ e ] . split ( "-\x3e" ) , f = d [ 0 ] , d = d [ 1 ] ? d [ 1 ] : f ; c [ d ] != a [ f ] && ( c [ d ] = a [ f ] , g = ! 0 ) } g && c . sendEvent ( a . type , a ) } else c . sendEvent ( a . type , a ) } var c = this , k , g ; g = h . getCookies ( ) ; var p = { controlbar : { } , display : { } } , j = { autostart : ! 1 , controls : ! 0 , debug : void 0 , fullscreen : ! 1 , height : 320 , mobilecontrols : ! 1 , mute : ! 1 , playlist : [ ] , playlistposition : "none" , playlistsize : 180 ,
repeat : ! 1 , skin : void 0 , stretching : h . stretching . UNIFORM , width : 480 , volume : 90 } , l = { } ; l [ e . JWPLAYER _MEDIA _MUTE ] = "mute" ; l [ e . JWPLAYER _MEDIA _VOLUME ] = "volume" ; l [ e . JWPLAYER _PLAYER _STATE ] = "newstate-\x3estate" ; l [ e . JWPLAYER _MEDIA _BUFFER ] = "bufferPercent-\x3ebuffer" ; l [ e . JWPLAYER _MEDIA _TIME ] = "position,duration" ; c . getVideo = function ( ) { return k } ; c . seekDrag = function ( a ) { k . seekDrag ( a ) } ; c . setFullscreen = function ( a ) { a != c . fullscreen && ( c . fullscreen = a , c . sendEvent ( e . JWPLAYER _FULLSCREEN , { fullscreen : a } ) ) } ; c . setPlaylist = function ( a ) { for ( var b =
c , g = [ ] , d = 0 ; d < a . length ; d ++ ) { var f = h . extend ( { } , a [ d ] ) ; f . sources = h . filterSources ( f . sources ) ; if ( 0 < f . sources . length ) { for ( var j = 0 ; j < f . sources . length ; j ++ ) { var l = f . sources [ j ] ; l . label || ( l . label = j . toString ( ) ) } g . push ( f ) } } b . playlist = g ; 0 == c . playlist . length ? c . sendEvent ( e . JWPLAYER _ERROR , { message : "Error loading playlist: No playable sources found" } ) : ( c . sendEvent ( e . JWPLAYER _PLAYLIST _LOADED , { playlist : jwplayer ( c . id ) . getPlaylist ( ) } ) , c . item = - 1 , c . setItem ( 0 ) ) } ; c . setItem = function ( a ) { var b = ! 1 ; a == c . playlist . length || - 1 > a ? ( a =
0 , b = ! 0 ) : a = - 1 == a || a > c . playlist . length ? c . playlist . length - 1 : a ; if ( b || a != c . item ) c . item = a , c . sendEvent ( e . JWPLAYER _PLAYLIST _ITEM , { index : c . item } ) } ; c . setVolume = function ( a ) { c . mute && 0 < a && c . setMute ( ! 1 ) ; a = Math . round ( a ) ; c . mute || h . saveCookie ( "volume" , a ) ; b ( { type : e . JWPLAYER _MEDIA _VOLUME , volume : a } ) ; k . volume ( a ) } ; c . setMute = function ( a ) { h . exists ( a ) || ( a = ! c . mute ) ; h . saveCookie ( "mute" , a ) ; b ( { type : e . JWPLAYER _MEDIA _MUTE , mute : a } ) ; k . mute ( a ) } ; c . componentConfig = function ( a ) { return p [ a ] } ; h . extend ( c , new e . eventdispatcher ) ; var q = c , n =
h . extend ( { } , j , g , d ) ; h . foreach ( n , function ( a , b ) { n [ a ] = h . serialize ( b ) } ) ; q . config = n ; h . extend ( c , { id : d . id , state : e . state . IDLE , duration : - 1 , position : 0 , buffer : 0 } , c . config ) ; c . playlist = [ ] ; c . setItem ( 0 ) ; a ? ( k = a , g = k . getTag ( ) ) : ( g = document . createElement ( "video" ) , k = new f . video ( g ) ) ; k . volume ( c . volume ) ; k . mute ( c . mute ) ; k . addGlobalListener ( b ) } } ) ( jwplayer . html5 ) ;
( function ( f ) { var h = f . utils , e = h . css , d = h . transitionStyle , a = "top" , b = "bottom" , c = "right" , k = "left" , g = void 0 , p = document , j = { fontcase : g , fontcolor : "#ffffff" , fontsize : 12 , fontweight : g , activecolor : "#ffffff" , overcolor : "#ffffff" } ; f . html5 . overlay = function ( d , f , n ) { function r ( a ) { return "#" + y + ( a ? " ." + a : "" ) } function s ( a , b ) { var c = p . createElement ( "div" ) ; a && ( c . className = a ) ; b && b . appendChild ( c ) ; return c } function v ( a , b ) { var c ; c = ( c = m . getSkinElement ( "tooltip" , a ) ) ? c : { width : 0 , height : 0 , src : "" , image : g , ready : ! 1 } ; var d = s ( b , t ) ; e ( r ( b . replace ( " " ,
"." ) ) , { "background-image" : c . src } ) ; return [ d , c ] } function u ( d , f ) { f || ( f = "" ) ; var h = v ( "cap" + d + f , "jwborder jw" + d + ( f ? f : "" ) ) , j = h [ 0 ] , h = h [ 1 ] , l = { "background-image" : h . src , width : d == k || f == k || d == c || f == c ? h . width : g , height : d == a || f == a || d == b || f == b ? h . height : g } ; l [ d ] = d == b && ! C || d == a && C ? B : 0 ; f && ( l [ f ] = 0 ) ; e ( r ( j . className . replace ( / /g , "." ) ) , l ) ; j = { } ; l = { } ; h = { left : h . width , right : h . width , top : ( C ? B : 0 ) + h . height , bottom : ( C ? 0 : B ) + h . height } ; f && ( j [ f ] = h [ f ] , j [ d ] = 0 , l [ d ] = h [ d ] , l [ f ] = 0 , e ( r ( "jw" + d ) , j ) , e ( r ( "jw" + f ) , l ) , E [ d ] = h [ d ] , E [ f ] = h [ f ] ) } function A ( ) { 0 !=
t . clientWidth && ( e ( r ( ) , { "margin-left" : Math . round ( z - t . clientWidth / 2 ) } ) , e ( r ( "jwarrow" ) , { "margin-left" : Math . round ( x . width / - 2 - z ) } ) ) } var m = f , y = d , t , w , z = 0 , x , B , C = n ; d = h . extend ( { } , j , m . getComponentSettings ( "tooltip" ) ) ; var E = { } , H = this ; H . element = function ( ) { return t } ; var D ; H . setContents = function ( a ) { h . empty ( w ) ; w . appendChild ( a ) ; clearTimeout ( D ) ; D = setTimeout ( A , 0 ) } ; H . offsetX = function ( a ) { z = a ; clearTimeout ( D ) ; A ( ) } ; H . borderWidth = function ( ) { return E . left } ; H . show = function ( ) { H . showing = ! 0 ; t . style . opacity = 1 ; t . style . visibility =
"visible" } ; H . hide = function ( ) { H . showing = ! 1 ; t . style . opacity = 0 ; t . style . visibility = "hidden" } ; t = s ( ".jwoverlay" . replace ( "." , "" ) ) ; t . id = y ; x = v ( "arrow" , "jwarrow" ) [ 1 ] ; B = x . height ; e ( r ( "jwarrow" ) , { position : "absolute" , bottom : C ? g : 0 , top : C ? 0 : g , width : x . width , height : B , left : "50%" } ) ; u ( a , k ) ; u ( b , k ) ; u ( a , c ) ; u ( b , c ) ; u ( k ) ; u ( c ) ; u ( a ) ; u ( b ) ; v ( "background" , "jwback" ) ; e ( r ( "jwback" ) , { left : E . left , right : E . right , top : E . top , bottom : E . bottom } ) ; w = s ( "jwcontents" , t ) ; e ( r ( "jwcontents" ) + " *" , { color : d . fontcolor , font : d . fontweight + " " + d . fontsize + "px Arial,Helvetica,sans-serif" ,
"text-transform" : "upper" == d . fontcase ? "uppercase" : g } ) ; C && h . transform ( r ( "jwarrow" ) , "rotate(180deg)" ) ; e ( r ( ) , { padding : E . top + 1 + "px " + E . right + "px " + ( E . bottom + 1 ) + "px " + E . left + "px" } ) ; H . showing = ! 1 } ; e ( ".jwoverlay" , { position : "absolute" , visibility : "hidden" , opacity : 0 } ) ; e ( ".jwoverlay .jwcontents" , { position : "relative" , "z-index" : 1 } ) ; e ( ".jwoverlay .jwborder" , { position : "absolute" , "background-size" : "100% 100%" } , ! 0 ) ; e ( ".jwoverlay .jwback" , { position : "absolute" , "background-size" : "100% 100%" } ) ; d ( ".jwoverlay" , "opacity .15s, visibility .15s, left .01s linear" ) } ) ( jwplayer ) ;
( function ( f ) { var h = jwplayer . utils ; f . player = function ( e ) { function d ( a ) { var b = { description : a . description , file : a . file , image : a . image , mediaid : a . mediaid , title : a . title } ; h . foreach ( a , function ( a , c ) { b [ a ] = c } ) ; b . sources = [ ] ; b . tracks = [ ] ; 0 < a . sources . length && h . foreach ( a . sources , function ( a , c ) { b . sources . push ( { file : c . file , type : c . type ? c . type : void 0 , label : c . label , "default" : c [ "default" ] ? ! 0 : ! 1 } ) } ) ; 0 < a . tracks . length && h . foreach ( a . tracks , function ( a , c ) { b . tracks . push ( { file : c . file , kind : c . kind ? c . kind : void 0 , label : c . label , "default" : c [ "default" ] ?
! 0 : ! 1 } ) } ) ; ! a . file && 0 < a . sources . length && ( b . file = a . sources [ 0 ] . file ) ; return b } function a ( a ) { return function ( ) { return c [ a ] } } var b = this , c , k , g , p ; c = new f . model ( e ) ; b . id = c . id ; k = new f . view ( b , c ) ; g = new f . controller ( c , k ) ; b . _model = c ; jwplayer . utils . css . block ( ) ; b . jwPlay = g . play ; b . jwPause = g . pause ; b . jwStop = g . stop ; b . jwSeek = g . seek ; b . jwSetVolume = g . setVolume ; b . jwSetMute = g . setMute ; b . jwLoad = g . load ; b . jwPlaylistNext = g . next ; b . jwPlaylistPrev = g . prev ; b . jwPlaylistItem = g . item ; b . jwSetFullscreen = g . setFullscreen ; b . jwResize = k . resize ;
b . jwSeekDrag = c . seekDrag ; b . jwSetStretching = g . setStretching ; b . jwGetQualityLevels = g . getQualityLevels ; b . jwGetCurrentQuality = g . getCurrentQuality ; b . jwSetCurrentQuality = g . setCurrentQuality ; b . jwGetCaptionsList = g . getCaptionsList ; b . jwGetCurrentCaptions = g . getCurrentCaptions ; b . jwSetCurrentCaptions = g . setCurrentCaptions ; b . jwSetControls = k . setControls ; b . jwGetSafeRegion = k . getSafeRegion ; b . jwForceState = k . forceState ; b . jwReleaseState = k . releaseState ; b . jwGetPlaylistIndex = a ( "item" ) ; b . jwGetPosition = a ( "position" ) ; b . jwGetDuration =
a ( "duration" ) ; b . jwGetBuffer = a ( "buffer" ) ; b . jwGetWidth = a ( "width" ) ; b . jwGetHeight = a ( "height" ) ; b . jwGetFullscreen = a ( "fullscreen" ) ; b . jwGetVolume = a ( "volume" ) ; b . jwGetMute = a ( "mute" ) ; b . jwGetState = a ( "state" ) ; b . jwGetStretching = a ( "stretching" ) ; b . jwGetPlaylist = function ( ) { for ( var a = c . playlist , b = [ ] , e = 0 ; e < a . length ; e ++ ) b . push ( d ( a [ e ] ) ) ; return b } ; b . jwGetControls = a ( "controls" ) ; b . jwDetachMedia = g . detachMedia ; b . jwAttachMedia = g . attachMedia ; b . jwLoadInstream = function ( a , d ) { p || ( p = new f . instream ( b , c , k , g ) ) ; p . load ( a , d ) } ; b . jwInstreamPlay =
function ( ) { p && p . jwInstreamPlay ( ) } ; b . jwInstreamPause = function ( ) { p && p . jwInstreamPause ( ) } ; b . jwInstreamDestroy = function ( ) { p && p . jwInstreamDestroy ( ) ; p = void 0 } ; b . jwInstreamAddEventListener = function ( a , b ) { p && p . jwInstreamAddEventListener ( a , b ) } ; b . jwInstreamRemoveEventListener = function ( a , b ) { p && p . jwInstreamRemoveEventListener ( a , b ) } ; b . jwPlayerDestroy = function ( ) { k && k . destroy ( ) } ; b . jwAddEventListener = g . addEventListener ; b . jwRemoveEventListener = g . removeEventListener ; b . jwDockAddButton = k . addButton ; b . jwDockRemoveButton =
k . removeButton ; e = new f . setup ( c , k , g ) ; e . addEventListener ( jwplayer . events . JWPLAYER _READY , function ( a ) { g . playerReady ( a ) ; h . css . unblock ( ) } ) ; e . addEventListener ( jwplayer . events . JWPLAYER _ERROR , function ( a ) { h . log ( "There was a problem setting up the player: " , a ) ; h . css . unblock ( ) } ) ; e . start ( ) } } ) ( jwplayer . html5 ) ;
( function ( f ) { var h = { size : 180 , backgroundcolor : "#333333" , fontcolor : "#999999" , overcolor : "#CCCCCC" , activecolor : "#CCCCCC" , titlecolor : "#CCCCCC" , titleovercolor : "#FFFFFF" , titleactivecolor : "#FFFFFF" , fontweight : "normal" , titleweight : "normal" , fontsize : 11 , titlesize : 13 } , e = jwplayer . events , d = jwplayer . utils , a = d . css , b = document ; f . playlistcomponent = function ( c , k ) { function g ( a ) { return "#" + r . id + ( a ? " ." + a : "" ) } function p ( a , c ) { var d = b . createElement ( a ) ; c && ( d . className = c ) ; return d } function j ( a ) { return function ( ) { m = a ; l . jwPlaylistItem ( a ) ;
l . jwPlay ( ! 0 ) } } var l = c , q = l . skin , n = d . extend ( { } , h , l . skin . getComponentSettings ( "playlist" ) , k ) , r , s , v , u , A = - 1 , m , y , t = 60 , w = { background : void 0 , divider : void 0 , item : void 0 , itemOver : void 0 , itemImage : void 0 , itemActive : void 0 } ; this . element = function ( ) { return r } ; this . redraw = function ( ) { y && y . redraw ( ) } ; this . show = function ( ) { d . show ( r ) } ; this . hide = function ( ) { d . hide ( r ) } ; r = p ( "div" , "jwplaylist" ) ; r . id = l . id + "_jwplayer_playlistcomponent" ; s = p ( "div" , "jwlistcontainer" ) ; r . appendChild ( s ) ; d . foreach ( w , function ( a ) { w [ a ] = q . getSkinElement ( "playlist" ,
a ) } ) ; w . item && ( t = w . item . height ) ; var z = 0 , x = 0 , B = 0 ; d . clearCss ( g ( ) ) ; a ( g ( ) , { "background-color" : n . backgroundcolor } ) ; a ( g ( "jwlist" ) , { "background-image" : w . background ? " url(" + w . background . src + ")" : "" } ) ; a ( g ( "jwlist *" ) , { color : n . fontcolor , font : n . fontweight + " " + n . fontsize + "px Arial, Helvetica, sans-serif" } ) ; w . itemImage ? ( z = ( t - w . itemImage . height ) / 2 + "px " , x = w . itemImage . width , B = w . itemImage . height ) : ( x = 4 * t / 3 , B = t ) ; w . divider && a ( g ( "jwplaylistdivider" ) , { "background-image" : "url(" + w . divider . src + ")" , "background-size" : "100% " +
w . divider . height + "px" , width : "100%" , height : w . divider . height } ) ; a ( g ( "jwplaylistimg" ) , { height : B , width : x , margin : z ? z + z + z + z : "0 5px 0 0" } ) ; a ( g ( "jwlist li" ) , { "background-image" : w . item ? "url(" + w . item . src + ")" : "" , height : t , "background-size" : "100% " + t + "px" , cursor : "pointer" } ) ; x = { overflow : "hidden" } ; "" !== n . activecolor && ( x . color = n . activecolor ) ; w . itemActive && ( x [ "background-image" ] = "url(" + w . itemActive . src + ")" ) ; a ( g ( "jwlist li.active" ) , x ) ; a ( g ( "jwlist li.active .jwtitle" ) , { color : n . titleactivecolor } ) ; x = { overflow : "hidden" } ;
"" !== n . overcolor && ( x . color = n . overcolor ) ; w . itemOver && ( x [ "background-image" ] = "url(" + w . itemOver . src + ")" ) ; a ( g ( "jwlist li:hover" ) , x ) ; a ( g ( "jwlist li:hover .jwtitle" ) , { color : n . titleovercolor } ) ; a ( g ( "jwtextwrapper" ) , { height : t - 5 , position : "relative" } ) ; a ( g ( "jwtitle" ) , { height : 15 , overflow : "hidden" , display : "inline-block" , width : "100%" , color : n . titlecolor , "margin-top" : z ? z : 7 , "line-height" : 13 , "font-size" : n . titlesize , "font-weight" : n . titleweight } ) ; a ( g ( "jwdescription" ) , { display : "block" , "font-size" : n . fontsize , "line-height" : 19 ,
"margin-top" : 5 , overflow : "hidden" , height : t , position : "relative" } ) ; l . jwAddEventListener ( e . JWPLAYER _PLAYLIST _LOADED , function ( ) { s . innerHTML = "" ; for ( var b = l . jwGetPlaylist ( ) , c = [ ] , e = 0 ; e < b . length ; e ++ ) b [ e ] [ "ova.hidden" ] || c . push ( b [ e ] ) ; if ( v = c ) { b = p ( "ul" , "jwlist" ) ; b . id = r . id + "_ul" + Math . round ( 1E7 * Math . random ( ) ) ; u = b ; for ( b = 0 ; b < v . length ; b ++ ) { var g = b , c = v [ g ] , e = p ( "li" , "jwitem" ) , h = void 0 ; e . id = u . id + "_item_" + g ; 0 < g && ( h = p ( "div" , "jwplaylistdivider" ) , e . appendChild ( h ) ) ; g = p ( "div" , "jwplaylistimg jwfill" ) ; if ( c . image || c [ "playlist.image" ] ||
w . itemImage ) h = void 0 , c [ "playlist.image" ] ? h = c [ "playlist.image" ] : c . image ? h = c . image : w . itemImage && ( h = w . itemImage . src ) , a ( "#" + e . id + " .jwplaylistimg" , { "background-image" : h ? "url(" + h + ")" : null } ) , e . appendChild ( g ) ; g = p ( "div" , "jwtextwrapper" ) ; h = p ( "span" , "jwtitle" ) ; h . innerHTML = c && c . title ? c . title : "" ; g . appendChild ( h ) ; c . description && ( h = p ( "span" , "jwdescription" ) , h . innerHTML = c . description , g . appendChild ( h ) ) ; e . appendChild ( g ) ; c = e ; c . onclick = j ( b ) ; u . appendChild ( c ) } A = l . jwGetPlaylistIndex ( ) ; d . isIOS ( ) && window . iScroll ? ( r . innerHTML =
"" , r . appendChild ( u ) , u . style . height = t * v . length + "px" , new iScroll ( r . id ) ) : ( s . appendChild ( u ) , y = new f . playlistslider ( r . id + "_slider" , l . skin , r , u ) ) } } ) ; l . jwAddEventListener ( e . JWPLAYER _PLAYLIST _ITEM , function ( a ) { 0 <= A && ( b . getElementById ( u . id + "_item_" + A ) . className = "jwitem" , A = a . index ) ; b . getElementById ( u . id + "_item_" + a . index ) . className = "jwitem active" ; a = l . jwGetPlaylistIndex ( ) ; a != m && ( m = - 1 , d . isIOS ( ) && window . iScroll ? u . scrollTop = a * t : y && y . visible ( ) && y . thumbPosition ( a / ( l . jwGetPlaylist ( ) . length - 1 ) ) ) } ) ; return this } ; a ( ".jwplaylist" ,
{ position : "absolute" , width : "100%" , height : "100%" } ) ; d . dragStyle ( ".jwplaylist" , "none" ) ; a ( ".jwplaylist .jwplaylistimg" , { position : "relative" , width : "100%" , "float" : "left" , margin : "0 5px 0 0" , background : "#000" , overflow : "hidden" } ) ; a ( ".jwplaylist .jwlist" , { position : "absolute" , width : "100%" , "list-style" : "none" , margin : 0 , padding : 0 } ) ; a ( ".jwplaylist .jwlistcontainer" , { position : "absolute" , overflow : "hidden" , width : "100%" , height : "100%" } ) ; a ( ".jwplaylist .jwlist li" , { width : "100%" } ) ; a ( ".jwplaylist .jwtextwrapper" , { overflow : "hidden" } ) ;
a ( ".jwplaylist .jwplaylistdivider" , { position : "absolute" } ) } ) ( jwplayer . html5 ) ;
( function ( f ) { var h = jwplayer , e = h . utils , d = h . events ; f . playlistloader = function ( ) { function a ( a ) { try { var b = a . responseXML . firstChild ; "xml" == f . parsers . localName ( b ) && ( b = b . nextSibling ) ; if ( "rss" != f . parsers . localName ( b ) ) c ( "Not a valid RSS feed" ) ; else { var j = new h . playlist ( f . parsers . rssparser . parse ( b ) ) ; if ( a = j ) { var b = [ ] , l , q , n ; for ( l = 0 ; l < a . length ; l ++ ) if ( q = a [ l ] , ( n = e . filterSources ( q . sources ) ) && n . length ) q . sources = n , b . push ( q ) ; j = b } else j = void 0 ; j && j . length && j [ 0 ] . sources && j [ 0 ] . sources . length && j [ 0 ] . sources [ 0 ] . file ? k . sendEvent ( d . JWPLAYER _PLAYLIST _LOADED ,
{ playlist : j } ) : c ( "No playable sources found" ) } } catch ( r ) { c ( ) } } function b ( a ) { c ( a . match ( /invalid/i ) ? "Not a valid RSS feed" : "" ) } function c ( a ) { k . sendEvent ( d . JWPLAYER _ERROR , { message : a ? a : "Error loading file" } ) } var k = new d . eventdispatcher ; e . extend ( this , k ) ; this . load = function ( c ) { e . ajax ( c , a , b ) } } } ) ( jwplayer . html5 ) ;
( function ( f ) { function h ( ) { var a = [ ] , b ; for ( b = 0 ; b < arguments . length ; b ++ ) a . push ( ".jwplaylist ." + arguments [ b ] ) ; return a . join ( "," ) } var e = jwplayer . utils , d = e . css , a = document , b = window , c = void 0 ; f . playlistslider = function ( f , g , h , j ) { function l ( a ) { return "#" + m . id + ( a ? " ." + a : "" ) } function q ( b , e , g , f ) { var h = a . createElement ( "div" ) ; b && ( h . className = b , e && d ( l ( b ) , { "background-image" : e . src ? e . src : c , "background-repeat" : f ? "repeat-y" : "no-repeat" , height : f ? c : e . height } ) ) ; g && g . appendChild ( h ) ; return h } function n ( a ) { return ( a = A . getSkinElement ( "playlist" ,
a ) ) ? a : { width : 0 , height : 0 , src : c } } function r ( a ) { if ( C ) return a = a ? a : b . event , X ( z - ( a . detail ? - 1 * a . detail : a . wheelDelta / 40 ) / 10 ) , a . stopPropagation && a . stopPropagation ( ) , a . preventDefault && a . preventDefault ( ) , a . cancelBubble = ! 0 , a . cancel = ! 0 , a . returnValue = ! 1 } function s ( a ) { if ( w || "click" == a . type ) { var b = e . bounds ( y ) , c = t . clientHeight / 2 ; X ( ( a . pageY - b . top - c ) / ( b . height - c - c ) ) } } function v ( a ) { return function ( b ) { 0 < b . button || ( X ( z + 0.05 * a ) , x = setTimeout ( function ( ) { B = setInterval ( function ( ) { X ( z + 0.05 * a ) } , 50 ) } , 500 ) ) } } function u ( ) { w = ! 1 ;
b . removeEventListener ( "mousemove" , s ) ; b . removeEventListener ( "mouseup" , u ) ; a . onselectstart = c ; clearTimeout ( x ) ; clearInterval ( B ) } var A = g , m , y , t , w , z = 0 , x , B , C = ! 0 , E , H , D , L , F , I , Q , V ; this . element = function ( ) { return m } ; this . visible = function ( ) { return C } ; var M = this . redraw = function ( ) { clearTimeout ( V ) ; V = setTimeout ( function ( ) { if ( j && j . clientHeight ) { var a = j . parentNode . clientHeight / j . clientHeight ; 0 > a && ( a = 0 ) ; 1 < a ? C = ! 1 : ( C = ! 0 , d ( l ( "jwthumb" ) , { height : Math . max ( y . clientHeight * a , L . height + F . height ) } ) ) ; d ( l ( ) , { visibility : C ? "visible" :
"hidden" } ) ; j && ( j . style . width = C ? j . parentElement . clientWidth - D . width + "px" : "" ) } else V = setTimeout ( M , 10 ) } , 0 ) } , X = this . thumbPosition = function ( a ) { isNaN ( a ) && ( a = 0 ) ; z = Math . max ( 0 , Math . min ( 1 , a ) ) ; d ( l ( "jwthumb" ) , { top : I + ( y . clientHeight - t . clientHeight ) * z } ) ; j && ( j . style . top = ( m . clientHeight - j . scrollHeight ) * z + "px" ) } ; m = q ( "jwslider" , null , h ) ; m . id = f ; m . addEventListener ( "mousedown" , function ( c ) { 0 == c . button && ( w = ! 0 ) ; a . onselectstart = function ( ) { return ! 1 } ; b . addEventListener ( "mousemove" , s , ! 1 ) ; b . addEventListener ( "mouseup" , u , ! 1 ) } , ! 1 ) ;
m . addEventListener ( "click" , s , ! 1 ) ; E = n ( "sliderCapTop" ) ; H = n ( "sliderCapBottom" ) ; D = n ( "sliderRail" ) ; f = n ( "sliderRailCapTop" ) ; g = n ( "sliderRailCapBottom" ) ; h = n ( "sliderThumb" ) ; L = n ( "sliderThumbCapTop" ) ; F = n ( "sliderThumbCapBottom" ) ; I = E . height ; Q = H . height ; d ( l ( ) , { width : D . width } ) ; d ( l ( "jwrail" ) , { top : I , bottom : Q } ) ; d ( l ( "jwthumb" ) , { top : I } ) ; E = q ( "jwslidertop" , E , m ) ; H = q ( "jwsliderbottom" , H , m ) ; y = q ( "jwrail" , null , m ) ; t = q ( "jwthumb" , null , m ) ; E . addEventListener ( "mousedown" , v ( - 1 ) , ! 1 ) ; H . addEventListener ( "mousedown" , v ( 1 ) , ! 1 ) ; q ( "jwrailtop" ,
f , y ) ; q ( "jwrailback" , D , y , ! 0 ) ; q ( "jwrailbottom" , g , y ) ; d ( l ( "jwrailback" ) , { top : f . height , bottom : g . height } ) ; q ( "jwthumbtop" , L , t ) ; q ( "jwthumbback" , h , t , ! 0 ) ; q ( "jwthumbbottom" , F , t ) ; d ( l ( "jwthumbback" ) , { top : L . height , bottom : F . height } ) ; M ( ) ; j && ( j . addEventListener ( "mousewheel" , r , ! 1 ) , j . addEventListener ( "DOMMouseScroll" , r , ! 1 ) ) ; return this } ; d ( h ( "jwslider" ) , { position : "absolute" , height : "100%" , visibility : "hidden" , right : 0 , top : 0 , cursor : "pointer" , "z-index" : 1 } ) ; d ( h ( "jwslider" ) + " *" , { position : "absolute" , width : "100%" , "background-position" : "center" ,
"background-size" : "100% 100%" } ) ; d ( h ( "jwslidertop" , "jwrailtop" , "jwthumbtop" ) , { top : 0 } ) ; d ( h ( "jwsliderbottom" , "jwrailbottom" , "jwthumbbottom" ) , { bottom : 0 } ) } ) ( jwplayer . html5 ) ;
( function ( f ) { var h = jwplayer . utils , e = h . css , d = document , a = "none" ; f . rightclick = function ( b , c ) { function e ( a ) { var b = d . createElement ( "div" ) ; b . className = a . replace ( "." , "" ) ; return b } function g ( ) { l || ( q . style . display = a ) } var p , j = h . extend ( { aboutlink : "http://www.longtailvideo.com/jwpabout/?a\x3dr\x26v\x3d" + f . version + "\x26m\x3dh\x26e\x3do" , abouttext : "About JW Player " + f . version + "..." } , c ) , l = ! 1 , q , n ; this . element = function ( ) { return q } ; this . destroy = function ( ) { d . removeEventListener ( "mousedown" , g , ! 1 ) } ; p = d . getElementById ( b . id ) ;
q = e ( ".jwclick" ) ; q . id = b . id + "_menu" ; q . style . display = a ; p . oncontextmenu = function ( b ) { if ( ! l ) { null == b && ( b = window . event ) ; var c = h . bounds ( p ) , e = c . top , c = c . left ; q . style . display = a ; q . style . left = b . pageX - c + "px" ; q . style . top = b . pageY - e + "px" ; q . style . display = "block" ; b . preventDefault ( ) } } ; q . onmouseover = function ( ) { l = ! 0 } ; q . onmouseout = function ( ) { l = ! 1 } ; d . addEventListener ( "mousedown" , g , ! 1 ) ; n = e ( ".jwclick_item" ) ; n . innerHTML = j . abouttext ; n . onclick = function ( ) { window . location . href = j . aboutlink } ; q . appendChild ( n ) ; p . appendChild ( q ) } ; e ( ".jwclick" ,
{ "background-color" : "#FFF" , "-webkit-border-radius" : 5 , "-moz-border-radius" : 5 , "border-radius" : 5 , height : "auto" , border : "1px solid #bcbcbc" , "font-family" : '"MS Sans Serif", "Geneva", sans-serif' , "font-size" : 10 , width : 320 , "-webkit-box-shadow" : "5px 5px 7px rgba(0,0,0,.10), 0px 1px 0px rgba(255,255,255,.3) inset" , "-moz-box-shadow" : "5px 5px 7px rgba(0,0,0,.10), 0px 1px 0px rgba(255,255,255,.3) inset" , "box-shadow" : "5px 5px 7px rgba(0,0,0,.10), 0px 1px 0px rgba(255,255,255,.3) inset" , position : "absolute" , "z-index" : 999 } ,
! 0 ) ; e ( ".jwclick div" , { padding : "8px 21px" , margin : "0px" , "background-color" : "#FFF" , border : "none" , "font-family" : '"MS Sans Serif", "Geneva", sans-serif' , "font-size" : 10 , color : "inherit" } , ! 0 ) ; e ( ".jwclick_item" , { padding : "8px 21px" , "text-align" : "left" , cursor : "pointer" } , ! 0 ) ; e ( ".jwclick_item:hover" , { "background-color" : "#595959" , color : "#FFF" } , ! 0 ) ; e ( ".jwclick_item a" , { "text-decoration" : a , color : "#000" } , ! 0 ) ; e ( ".jwclick hr" , { width : "100%" , padding : 0 , margin : 0 , border : "1px #e9e9e9 solid" } , ! 0 ) } ) ( jwplayer . html5 ) ;
( function ( f ) { var h = jwplayer , e = h . utils , d = h . events , a = h . playlist , b = 2 , c = 3 , k = 4 ; f . setup = function ( g , h ) { function j ( a , b , c ) { B . push ( { name : a , method : b , depends : c } ) } function l ( ) { for ( var a = 0 ; a < B . length ; a ++ ) { var b = B [ a ] , c ; a : { if ( c = b . depends ) { c = c . toString ( ) . split ( "," ) ; for ( var e = 0 ; e < c . length ; e ++ ) if ( ! t [ c [ e ] ] ) { c = ! 1 ; break a } } c = ! 0 } if ( c ) { B . splice ( a , 1 ) ; try { b . method ( ) , l ( ) } catch ( d ) { A ( d . message ) } return } } 0 < B . length && ! x && setTimeout ( l , 500 ) } function q ( ) { t [ b ] = ! 0 } function n ( a ) { A ( "Error loading skin: " + a ) } function r ( a ) { s ( a . playlist ) }
function s ( a ) { m . setPlaylist ( a ) ; 0 == m . playlist [ 0 ] . sources . length ? A ( "Error loading playlist: No playable sources found" ) : t [ c ] = ! 0 } function v ( a ) { A ( "Error loading playlist: " + a . message ) } function u ( ) { t [ k ] = ! 0 } function A ( a ) { x = ! 0 ; z . sendEvent ( d . JWPLAYER _ERROR , { message : a } ) ; y . setupError ( a ) } var m = g , y = h , t = { } , w , z = new d . eventdispatcher , x = ! 1 , B = [ ] ; e . extend ( this , z ) ; this . start = l ; j ( 1 , function ( ) { g . edition && "invalid" == g . edition ( ) ? A ( "Error setting up player: Invalid license key" ) : t [ 1 ] = ! 0 } ) ; j ( b , function ( ) { w = new f . skin ; w . load ( m . config . skin ,
q , n ) } , 1 ) ; j ( c , function ( ) { switch ( e . typeOf ( m . config . playlist ) ) { case "string" : var b = new f . playlistloader ; b . addEventListener ( d . JWPLAYER _PLAYLIST _LOADED , r ) ; b . addEventListener ( d . JWPLAYER _ERROR , v ) ; b . load ( m . config . playlist ) ; break ; case "array" : s ( new a ( m . config . playlist ) ) } } , 1 ) ; j ( k , function ( ) { var a = m . playlist [ m . item ] . image ; if ( a ) { var b = new Image ; b . addEventListener ( "load" , u , ! 1 ) ; b . addEventListener ( "error" , u , ! 1 ) ; b . src = a ; setTimeout ( u , 500 ) } else t [ k ] = ! 0 } , c ) ; j ( 5 , function ( ) { y . setup ( w ) ; t [ 5 ] = ! 0 } , k + "," + b ) ; j ( 6 , function ( ) { t [ 6 ] =
! 0 } , "5," + c ) ; j ( 7 , function ( ) { z . sendEvent ( d . JWPLAYER _READY ) ; t [ 7 ] = ! 0 } , 6 ) } } ) ( jwplayer . html5 ) ;
( function ( f ) { f . skin = function ( ) { var h = { } , e = ! 1 ; this . load = function ( d , a , b ) { new f . skinloader ( d , function ( b ) { e = ! 0 ; h = b ; "function" == typeof a && a ( ) } , function ( a ) { "function" == typeof b && b ( a ) } ) } ; this . getSkinElement = function ( d , a ) { d = d . toLowerCase ( ) ; a = a . toLowerCase ( ) ; if ( e ) try { return h [ d ] . elements [ a ] } catch ( b ) { jwplayer . utils . log ( "No such skin component / element: " , [ d , a ] ) } return null } ; this . getComponentSettings = function ( d ) { d = d . toLowerCase ( ) ; return e && h && h [ d ] ? h [ d ] . settings : null } ; this . getComponentLayout = function ( d ) { d = d . toLowerCase ( ) ;
if ( e ) { var a = h [ d ] . layout ; if ( a && ( a . left || a . right || a . center ) ) return h [ d ] . layout } return null } } } ) ( jwplayer . html5 ) ;
( function ( f ) { var h = jwplayer . utils , e = h . foreach , d = "Skin formatting error" ; f . skinloader = function ( a , b , c ) { function k ( a ) { n = a ; h . ajax ( h . getAbsolutePath ( A ) , function ( a ) { try { h . exists ( a . responseXML ) && p ( a . responseXML ) } catch ( b ) { s ( d ) } } , function ( a ) { s ( a ) } ) } function g ( a , b ) { return a ? a . getElementsByTagName ( b ) : null } function p ( a ) { var b = g ( a , "skin" ) [ 0 ] ; a = g ( b , "component" ) ; b = b . getAttribute ( "target" ) ; ( ! b || parseFloat ( b ) > parseFloat ( jwplayer . version ) ) && s ( "Incompatible player version" ) ; if ( 0 === a . length ) r ( n ) ; else for ( b = 0 ; b < a . length ; b ++ ) { var c =
q ( a [ b ] . getAttribute ( "name" ) ) , e = { settings : { } , elements : { } , layout : { } } , d = g ( g ( a [ b ] , "elements" ) [ 0 ] , "element" ) ; n [ c ] = e ; for ( var f = 0 ; f < d . length ; f ++ ) l ( d [ f ] , c ) ; if ( ( c = g ( a [ b ] , "settings" ) [ 0 ] ) && 0 < c . childNodes . length ) { c = g ( c , "setting" ) ; for ( d = 0 ; d < c . length ; d ++ ) { var f = c [ d ] . getAttribute ( "name" ) , k = c [ d ] . getAttribute ( "value" ) ; /color$/ . test ( f ) && ( k = h . stringToColor ( k ) ) ; e . settings [ q ( f ) ] = k } } if ( ( c = g ( a [ b ] , "layout" ) [ 0 ] ) && 0 < c . childNodes . length ) { c = g ( c , "group" ) ; for ( d = 0 ; d < c . length ; d ++ ) { k = c [ d ] ; f = { elements : [ ] } ; e . layout [ q ( k . getAttribute ( "position" ) ) ] =
f ; for ( var m = 0 ; m < k . attributes . length ; m ++ ) { var p = k . attributes [ m ] ; f [ p . name ] = p . value } k = g ( k , "*" ) ; for ( m = 0 ; m < k . length ; m ++ ) { p = k [ m ] ; f . elements . push ( { type : p . tagName } ) ; for ( var u = 0 ; u < p . attributes . length ; u ++ ) { var A = p . attributes [ u ] ; f . elements [ m ] [ q ( A . name ) ] = A . value } h . exists ( f . elements [ m ] . name ) || ( f . elements [ m ] . name = p . tagName ) } } } v = ! 1 ; j ( ) } } function j ( ) { clearInterval ( u ) ; m || ( u = setInterval ( function ( ) { var a = ! 0 ; e ( n , function ( b , c ) { "properties" != b && e ( c . elements , function ( c ) { ( n [ q ( b ) ] ? n [ q ( b ) ] . elements [ q ( c ) ] : null ) . ready || ( a = ! 1 ) } ) } ) ;
a && ! 1 == v && ( clearInterval ( u ) , r ( n ) ) } , 100 ) ) } function l ( a , b ) { b = q ( b ) ; var c = new Image , e = q ( a . getAttribute ( "name" ) ) , d = a . getAttribute ( "src" ) ; if ( 0 !== d . indexOf ( "data:image/png;base64," ) ) var f = h . getAbsolutePath ( A ) , d = [ f . substr ( 0 , f . lastIndexOf ( "/" ) ) , b , d ] . join ( "/" ) ; n [ b ] . elements [ e ] = { height : 0 , width : 0 , src : "" , ready : ! 1 , image : c } ; c . onload = function ( ) { var a = b , d = n [ q ( a ) ] ? n [ q ( a ) ] . elements [ q ( e ) ] : null ; d ? ( d . height = c . height , d . width = c . width , d . src = c . src , d . ready = ! 0 , j ( ) ) : h . log ( "Loaded an image for a missing element: " + a + "." + e ) } ; c . onerror =
function ( ) { m = ! 0 ; j ( ) ; s ( "Skin image not found: " + this . src ) } ; c . src = d } function q ( a ) { return a ? a . toLowerCase ( ) : "" } var n = { } , r = b , s = c , v = ! 0 , u , A = a , m = ! 1 ; "string" != typeof A || "" === A ? p ( f . defaultskin ( ) . xml ) : "xml" != h . extension ( A ) ? s ( "Skin not a valid file type" ) : new f . skinloader ( "" , k , s ) } } ) ( jwplayer . html5 ) ;
( function ( f ) { var h = jwplayer . utils , e = jwplayer . events , d = h . css ; f . thumbs = function ( a ) { function b ( a ) { if ( "array" == ! h . typeOf ( a ) ) return c ( "Invalid data" ) ; p = a ; d ( "#" + l , { display : "block" } ) } function c ( a ) { h . log ( "Thumbnails could not be loaded: " + a ) } function k ( a ) { a = a . target ; d ( "#" + l , { "background-image" : a . src , "background-position" : "0 0" , width : a . width , height : a . height } ) } var g , p , j , l = a ; a = new e . eventdispatcher ; h . extend ( this , a ) ; this . load = function ( a ) { d ( "#" + l , { display : "none" } ) ; a && ( j = a . split ( "?" ) [ 0 ] . split ( "/" ) . slice ( 0 , - 1 ) . join ( "/" ) ,
( new f . parsers . srt ( b , c , ! 0 ) ) . load ( a ) ) } ; this . element = function ( ) { return g } ; this . updateTimeline = function ( a ) { var b = 0 ; if ( p ) { for ( ; b < p . length && a > p [ b ] . end ; ) b ++ ; b == p . length && b -- ; if ( p [ b ] . text ) if ( a = p [ b ] . text , 0 > a . indexOf ( "://" ) && ( a = j ? j + "/" + a : a ) , 0 < a . indexOf ( "#xywh" ) ) try { var e = /(.+)\#xywh=(\d+),(\d+),(\d+),(\d+)/ . exec ( a ) , f = e [ 1 ] ; d ( "#" + l , { "background-image" : f , "background-position" : - 1 * e [ 2 ] + "px " + - 1 * e [ 3 ] + "px" , width : e [ 4 ] , height : e [ 5 ] } ) } catch ( g ) { c ( "Could not parse thumbnail" ) } else f = new Image , f . addEventListener ( "load" ,
k , ! 1 ) , f . src = a } } ; g = document . createElement ( "div" ) ; g . id = l } } ) ( jwplayer . html5 ) ;
( function ( f ) { var h = f . utils , e = f . events , d = e . state ; f . html5 . video = function ( a ) { function b ( a , b ) { F && L . sendEvent ( a , b ) } function c ( ) { } function f ( ) { F && ( C == d . PLAYING && ! B ) && ( t = Number ( m . currentTime . toFixed ( 1 ) ) , b ( e . JWPLAYER _MEDIA _TIME , { position : t , duration : y } ) ) } function g ( a ) { F && ( w || ( w = ! 0 , z || ( z = ! 0 , b ( e . JWPLAYER _MEDIA _BUFFER _FULL ) ) ) , "loadedmetadata" == a . type && ( m . muted && ( m . muted = ! 1 , m . muted = ! 0 ) , b ( e . JWPLAYER _MEDIA _META , { duration : m . duration , height : m . videoHeight , width : m . videoWidth } ) ) ) } function p ( a ) { F && ! B && ( m . paused ? m . currentTime ==
m . duration && 3 < m . duration || ea ( ) : ( ! h . isFF ( ) || ! ( "play" == a . type && C == d . BUFFERING ) ) && n ( d . PLAYING ) ) } function j ( ) { F && ( B || n ( d . BUFFERING ) ) } function l ( a ) { var b ; if ( "array" == h . typeOf ( a ) && 0 < a . length ) { b = [ ] ; for ( var c = 0 ; c < a . length ; c ++ ) { var e = a [ c ] , d = { } ; d . label = e . label && e . label ? e . label ? e . label : 0 : c ; b [ c ] = d } } return b } function q ( ) { z = w = ! 1 ; A = I [ Q ] ; n ( d . BUFFERING ) ; m . src = A . file ; m . load ( ) ; H = setInterval ( r , 100 ) ; if ( ( h . isIPod ( ) || h . isAndroid ( 2.3 ) ) && ! z ) z = ! 0 , b ( e . JWPLAYER _MEDIA _BUFFER _FULL ) } function n ( a ) { if ( ! ( a == d . PAUSED && C == d . IDLE ) &&
! B && C != a ) { var c = C ; C = a ; b ( e . JWPLAYER _PLAYER _STATE , { oldstate : c , newstate : a } ) } } function r ( ) { if ( F ) { var a ; a = 0 == m . buffered . length || 0 == m . duration ? 0 : m . buffered . end ( m . buffered . length - 1 ) / m . duration ; a != D && ( D = a , b ( e . JWPLAYER _MEDIA _BUFFER , { bufferPercent : Math . round ( 100 * D ) } ) ) ; 1 <= a && clearInterval ( H ) } } var s = h . isIE ( ) , v = { abort : c , canplay : g , canplaythrough : c , durationchange : function ( ) { if ( F ) { var a = Number ( m . duration . toFixed ( 1 ) ) ; y != a && ( y = a ) ; V && ( 0 < x && a > x ) && Z ( x ) ; f ( ) } } , emptied : c , ended : function ( ) { F && C != d . IDLE && ( Q = - 1 , X = ! 0 , b ( e . JWPLAYER _MEDIA _BEFORECOMPLETE ) ,
F && ( n ( d . IDLE ) , b ( e . JWPLAYER _MEDIA _COMPLETE ) , X = ! 1 ) ) } , error : function ( ) { F && ( h . log ( "Error playing media: %o" , m . error ) , L . sendEvent ( e . JWPLAYER _MEDIA _ERROR , { message : "Error loading media: File could not be played" } ) , n ( d . IDLE ) ) } , loadeddata : c , loadedmetadata : g , loadstart : c , pause : p , play : p , playing : p , progress : function ( ) { w && ( 0 < x && ! V ) && ( s ? setTimeout ( Z , 200 , x ) : Z ( x ) ) } , ratechange : c , readystatechange : c , seeked : function ( ) { B || ( b ( e . JWPLAYER _MEDIA _SEEK , { position : t , offset : m . currentTime } ) , C != d . PAUSED && n ( d . PLAYING ) ) } , seeking : s ?
j : c , stalled : c , suspend : c , timeupdate : f , volumechange : function ( ) { b ( e . JWPLAYER _MEDIA _VOLUME , { volume : Math . round ( 100 * m . volume ) } ) ; b ( e . JWPLAYER _MEDIA _MUTE , { mute : m . muted } ) } , waiting : j } , u , A , m , y , t , w , z , x , B , C = d . IDLE , E , H = - 1 , D = - 1 , L = new e . eventdispatcher , F = ! 1 , I , Q = - 1 , V = h . isAndroid ( ) , M = this , X = ! 1 ; h . extend ( M , L ) ; M . load = function ( a ) { if ( F ) { u = a ; x = 0 ; y = a . duration ? a . duration : - 1 ; t = 0 ; I = u . sources ; 0 > Q && ( Q = 0 ) ; for ( a = 0 ; a < I . length ; a ++ ) if ( I [ a ] [ "default" ] ) { Q = a ; break } var b = h . getCookies ( ) . qualityLabel ; if ( b ) for ( a = 0 ; a < I . length ; a ++ ) if ( I [ a ] . label ==
b ) { Q = a ; break } ( a = l ( I ) ) && L . sendEvent ( e . JWPLAYER _MEDIA _LEVELS , { levels : a , currentQuality : Q } ) ; q ( ) } } ; M . stop = function ( ) { F && ( m . removeAttribute ( "src" ) , s || m . load ( ) , Q = - 1 , clearInterval ( H ) , n ( d . IDLE ) ) } ; M . play = function ( ) { F && ! B && m . play ( ) } ; var ea = M . pause = function ( ) { F && ( m . pause ( ) , n ( d . PAUSED ) ) } ; M . seekDrag = function ( a ) { F && ( ( B = a ) ? m . pause ( ) : m . play ( ) ) } ; var Z = M . seek = function ( a ) { F && ( w ? ( x = 0 , m . currentTime = a ) : x = a ) } , oa = M . volume = function ( a ) { h . exists ( a ) && ( m . volume = Math . min ( Math . max ( 0 , a / 100 ) , 1 ) , E = 100 * m . volume ) } ; M . mute = function ( a ) { h . exists ( a ) ||
( a = ! m . muted ) ; a ? ( E = 100 * m . volume , m . muted = ! 0 ) : ( oa ( E ) , m . muted = ! 1 ) } ; this . checkComplete = function ( ) { return X } ; M . detachMedia = function ( ) { F = ! 1 ; return m } ; M . attachMedia = function ( a ) { F = ! 0 ; a || ( w = ! 1 ) ; X && ( n ( d . IDLE ) , b ( e . JWPLAYER _MEDIA _COMPLETE ) , X = ! 1 ) } ; M . getTag = function ( ) { return m } ; M . audioMode = function ( ) { if ( ! I ) return ! 1 ; var a = I [ 0 ] . type ; return "aac" == a || "mp3" == a || "vorbis" == a } ; M . setCurrentQuality = function ( a ) { Q != a && ( a = parseInt ( a ) , 0 <= a && ( I && I . length > a ) && ( Q = a , h . saveCookie ( "qualityLabel" , I [ a ] . label ) , b ( e . JWPLAYER _MEDIA _LEVEL _CHANGED ,
{ currentQuality : a , levels : l ( I ) } ) , a = m . currentTime , q ( ) , M . seek ( a ) ) ) } ; M . getCurrentQuality = function ( ) { return Q } ; M . getQualityLevels = function ( ) { return l ( I ) } ; m = a ; h . foreach ( v , function ( a , b ) { m . addEventListener ( a , b , ! 1 ) } ) ; m . controls = ! 0 ; m . controls = ! 1 ; m . setAttribute ( "x-webkit-airplay" , "allow" ) ; F = ! 0 } } ) ( jwplayer ) ;
( function ( f ) { var h = jwplayer . utils , e = jwplayer . events , d = e . state , a = h . css , b = h . isMobile ( ) , c = h . isIPad ( ) , k = h . isIPod ( ) , g = h . isAndroid ( ) , p = h . isIOS ( ) , j = document , l = "aspectMode" , q = "jwmain" , n = "jwvideo" , r = "jwplaylistcontainer" , s = ! 0 , v = ! 1 , u = "hidden" , A = "none" , m = "block" ; f . view = function ( y , t ) { function w ( a ) { a && ( a . element ( ) . addEventListener ( "mousemove" , B , v ) , a . element ( ) . addEventListener ( "mouseout" , C , v ) ) } function z ( a , b ) { var c = j . createElement ( a ) ; b && ( c . className = b ) ; return c } function x ( ) { clearTimeout ( pa ) ; if ( S . jwGetState ( ) ==
d . PLAYING || S . jwGetState ( ) == d . PAUSED ) oa ( ) , Aa || ( pa = setTimeout ( E , Da ) ) } function B ( ) { clearTimeout ( pa ) ; Aa = s } function C ( ) { Aa = v } function E ( ) { S . jwGetState ( ) != d . BUFFERING && ( G && ( ! U && ! N ) && G . hide ( ) , T && ( ! ia && ! N ) && T . hide ( ) , X ( ) ) ; clearTimeout ( pa ) ; pa = 0 } function H ( a ) { ca . sendEvent ( a . type , a ) } function D ( b , c ) { h . exists ( b ) && h . exists ( c ) && ( J . width = b , J . height = c ) ; P . style . width = isNaN ( b ) ? b : b + "px" ; - 1 == P . className . indexOf ( l ) && ( P . style . height = isNaN ( c ) ? c : c + "px" ) ; R && R . redraw ( ) ; G && G . redraw ( ) ; W && ( W . offset ( G && 0 <= W . position ( ) . indexOf ( "bottom" ) ?
G . height ( ) + G . margin ( ) : 0 ) , setTimeout ( function ( ) { T && T . offset ( "top-left" == W . position ( ) ? W . element ( ) . clientWidth + W . margin ( ) : 0 ) } , 500 ) ) ; var d = J . playlistsize , f = J . playlistposition ; if ( K && d && ( "right" == f || "bottom" == f ) ) { K . redraw ( ) ; var g = { display : m } , j = { } ; g [ f ] = 0 ; j [ f ] = d ; "right" == f ? g . width = d : g . height = d ; a ( fa ( r ) , g ) ; a ( fa ( q ) , j ) } L ( c ) ; F ( ) ; ca . sendEvent ( e . JWPLAYER _RESIZE ) } function L ( a ) { U = ( ! b || N ) && 40 >= a && 0 > a . toString ( ) . indexOf ( "%" ) ; G && ( U ? ( G . audioMode ( s ) , oa ( ) , R . hidePreview ( s ) , Z ( ) , aa ( v ) ) : ( G . audioMode ( v ) , Pa ( S . jwGetState ( ) ) ) ) ;
W && U && X ( ) ; P . style . backgroundColor = U ? "transparent" : "#000" } function F ( ) { Y && h . stretch ( J . stretching , Y , ja . clientWidth , ja . clientHeight , Y . videoWidth , Y . videoHeight ) } function I ( a ) { if ( J . fullscreen ) switch ( a . keyCode ) { case 27 : Ba ( v ) } } function Q ( a ) { p || ( a ? ( P . className += " jwfullscreen" , j . getElementsByTagName ( "body" ) [ 0 ] . style [ "overflow-y" ] = u ) : ( P . className = P . className . replace ( /\s+jwfullscreen/ , "" ) , j . getElementsByTagName ( "body" ) [ 0 ] . style [ "overflow-y" ] = "" ) ) } function V ( ) { var a ; a : { a = [ j . mozFullScreenElement , j . webkitCurrentFullScreenElement ,
Y . webkitDisplayingFullscreen ] ; for ( var b = 0 ; b < a . length ; b ++ ) if ( a [ b ] && ( ! a [ b ] . id || a [ b ] . id == S . id ) ) { a = s ; break a } a = v } J . fullscreen != a && Ba ( a ) } function M ( ) { T && ( ! U && ( ! b || ia ) ) && T . show ( ) } function X ( ) { W && ( ! N || U ) && W . hide ( U ) } function ea ( ) { R && J . controls && ! U && ( ! k || S . jwGetState ( ) == d . IDLE ) && R . show ( ) ; if ( b && ! N && ( g && ( ba . style . display = m ) , ! b || ! J . fullscreen ) ) Y . controls = ! 1 } function Z ( ) { R && ( b && ! N && ( g && J . controls && ( ba . style . display = A ) , Y . controls = J . controls ) , R . hide ( ) ) } function oa ( ) { if ( J . controls || U ) G && G . show ( ) , M ( ) ; W && ! U && W . show ( ) }
function aa ( b ) { b = b && ! U ; a ( fa ( n ) , { visibility : b ? "visible" : u , opacity : b ? 1 : 0 } ) } function Ta ( ) { ia = s ; Ba ( ! 1 ) ; J . controls && M ( ) } function Ua ( ) { } function Fa ( a ) { ia = v ; clearTimeout ( ra ) ; ra = setTimeout ( function ( ) { Pa ( a . newstate ) } , 100 ) } function Pa ( a ) { switch ( a ) { case d . PLAYING : ! J . getVideo ( ) . audioMode ( ) || b ? ( aa ( s ) , F ( ) , R . hidePreview ( s ) , b && ( ! c || ! N ) && Z ( ) ) : ( aa ( v ) , R . hidePreview ( U ) ) ; x ( ) ; break ; case d . IDLE : aa ( v ) ; E ( ) ; U || ( R . hidePreview ( v ) , ea ( ) , da . hide || W && ! U && W . show ( ) ) ; break ; case d . BUFFERING : ea ( ) ; b ? aa ( s ) : oa ( ) ; break ; case d . PAUSED : ea ( ) ,
( ! b || N ) && oa ( ) } } function fa ( a ) { return "#" + S . id + ( a ? " ." + a : "" ) } function Ca ( b , c ) { a ( b , { display : c ? m : A } ) } var S = y , J = t , P , ua , ba , Ga , za , pa = 0 , Da = 2E3 , Y , ja , qa , O , G , R , T , W , da = h . extend ( { } , J . componentConfig ( "logo" ) ) , ga , K , U , N = J . mobilecontrols , $ = v , ia , va , sa , Aa = v , ca = new e . eventdispatcher ; h . extend ( this , ca ) ; this . getCurrentCaptions = function ( ) { return ga . getCurrentCaptions ( ) } ; this . setCurrentCaptions = function ( a ) { ga . setCurrentCaptions ( a ) } ; this . getCaptionsList = function ( ) { return ga . getCaptionsList ( ) } ; this . setup = function ( c ) { if ( ! $ ) { S . skin =
c ; ua = z ( "span" , q ) ; ja = z ( "span" , n ) ; Y = J . getVideo ( ) . getTag ( ) ; ja . appendChild ( Y ) ; ba = z ( "span" , "jwcontrols" ) ; qa = z ( "span" , "jwinstream" ) ; za = z ( "span" , r ) ; Ga = z ( "span" , "jwaspect" ) ; c = J . height ; var g = J . componentConfig ( "controlbar" ) , k = J . componentConfig ( "display" ) ; L ( c ) ; ga = new f . captions ( S , J . captions ) ; ga . addEventListener ( e . JWPLAYER _CAPTIONS _LIST , H ) ; ga . addEventListener ( e . JWPLAYER _CAPTIONS _CHANGED , H ) ; ba . appendChild ( ga . element ( ) ) ; R = new f . display ( S , k ) ; R . addEventListener ( e . JWPLAYER _DISPLAY _CLICK , H ) ; U && R . hidePreview ( s ) ; ba . appendChild ( R . element ( ) ) ;
W = new f . logo ( S , da ) ; ba . appendChild ( W . element ( ) ) ; T = new f . dock ( S , J . componentConfig ( "dock" ) ) ; ba . appendChild ( T . element ( ) ) ; va = S . edition ? new f . rightclick ( S , { abouttext : J . abouttext , aboutlink : J . aboutlink } ) : new f . rightclick ( S , { } ) ; J . playlistsize && ( J . playlistposition && J . playlistposition != A ) && ( K = new f . playlistcomponent ( S , { } ) , za . appendChild ( K . element ( ) ) ) ; if ( ! b || N ) G = new f . controlbar ( S , g ) , ba . appendChild ( G . element ( ) ) , N && oa ( ) ; setTimeout ( function ( ) { D ( J . width , J . height ) } , 0 ) ; ua . appendChild ( ja ) ; ua . appendChild ( ba ) ; ua . appendChild ( qa ) ;
P . appendChild ( ua ) ; P . appendChild ( Ga ) ; P . appendChild ( za ) ; j . addEventListener ( "webkitfullscreenchange" , V , v ) ; Y . addEventListener ( "webkitbeginfullscreen" , V , v ) ; Y . addEventListener ( "webkitendfullscreen" , V , v ) ; j . addEventListener ( "mozfullscreenchange" , V , v ) ; j . addEventListener ( "keydown" , I , v ) ; S . jwAddEventListener ( e . JWPLAYER _PLAYER _READY , Ua ) ; S . jwAddEventListener ( e . JWPLAYER _PLAYER _STATE , Fa ) ; S . jwAddEventListener ( e . JWPLAYER _PLAYLIST _COMPLETE , Ta ) ; Fa ( { newstate : d . IDLE } ) ; ba . addEventListener ( "mouseout" , function ( ) { clearTimeout ( pa ) ;
pa = setTimeout ( E , 10 ) } , v ) ; ba . addEventListener ( "mousemove" , x , v ) ; h . isIE ( ) && ( ja . addEventListener ( "mousemove" , x , v ) , ja . addEventListener ( "click" , R . clickHandler ) ) ; w ( G ) ; w ( T ) ; w ( W ) ; a ( "#" + P . id + "." + l + " .jwaspect" , { "margin-top" : J . aspectratio , display : m } ) ; c = h . exists ( J . aspectratio ) ? parseFloat ( J . aspectratio ) : 100 ; g = J . playlistsize ; a ( "#" + P . id + ".playlist-right .jwaspect" , { "margin-bottom" : - 1 * g * ( c / 100 ) + "px" } ) ; a ( "#" + P . id + ".playlist-right ." + r , { width : g + "px" , right : 0 , top : 0 , height : "100%" } ) ; a ( "#" + P . id + ".playlist-bottom .jwaspect" ,
{ "padding-bottom" : g + "px" } ) ; a ( "#" + P . id + ".playlist-bottom ." + r , { width : "100%" , height : g + "px" , bottom : 0 } ) ; a ( "#" + P . id + ".playlist-right ." + q , { right : g + "px" } ) ; a ( "#" + P . id + ".playlist-bottom ." + q , { bottom : g + "px" } ) } } ; var Ba = this . fullscreen = function ( a ) { h . exists ( a ) || ( a = ! J . fullscreen ) ; a ? J . fullscreen || ( Q ( s ) , P . requestFullScreen ? P . requestFullScreen ( ) : P . mozRequestFullScreen ? P . mozRequestFullScreen ( ) : P . webkitRequestFullScreen && P . webkitRequestFullScreen ( ) , J . setFullscreen ( s ) ) : ( Q ( v ) , J . fullscreen && ( J . setFullscreen ( v ) , j . cancelFullScreen ?
j . cancelFullScreen ( ) : j . mozCancelFullScreen ? j . mozCancelFullScreen ( ) : j . webkitCancelFullScreen ? j . webkitCancelFullScreen ( ) : Y . webkitExitFullScreen && Y . webkitExitFullScreen ( ) ) , c && S . jwGetState ( ) == d . PAUSED && setTimeout ( ea , 500 ) ) ; G && G . redraw ( ) ; R && R . redraw ( ) ; T && T . redraw ( ) ; F ( ) ; J . fullscreen ? sa = setInterval ( F , 200 ) : clearInterval ( sa ) ; setTimeout ( function ( ) { var a = h . bounds ( ua ) ; J . width = a . width ; J . height = a . height ; ca . sendEvent ( e . JWPLAYER _RESIZE ) } , 0 ) } ; this . resize = D ; this . resizeMedia = F ; var Ja = this . completeSetup = function ( ) { a ( fa ( ) ,
{ opacity : 1 } ) } , ra ; this . setupInstream = function ( a , c ) { Ca ( fa ( "jwinstream" ) , s ) ; Ca ( fa ( "jwcontrols" ) , v ) ; qa . appendChild ( a ) ; _instreamVideo = c ; Fa ( { newstate : d . PLAYING } ) ; b && ( O = S . jwGetControls ( ) , console . log ( O ) , S . jwSetControls ( v ) ) } ; this . destroyInstream = function ( ) { Ca ( fa ( "jwinstream" ) , v ) ; Ca ( fa ( "jwcontrols" ) , s ) ; qa . innerHTML = "" ; _instreamVideo = null ; b && S . jwSetControls ( O ) } ; this . setupError = function ( a ) { $ = ! 0 ; jwplayer . embed . errorScreen ( P , a ) ; Ja ( ) } ; this . addButton = function ( a , b , c , d ) { T && T . addButton ( a , b , c , d ) } ; this . removeButton = function ( a ) { T &&
T . removeButton ( a ) } ; this . setControls = function ( a ) { var b = J . controls ; a = a ? s : v ; J . controls = a ; a != b && ( a ? ea ( ) : ( G && ( ! U && ! N ) && G . hide ( ) , T && ( ! ia && ! N ) && T . hide ( ) , X ( ) , Z ( ) ) , ca . sendEvent ( e . JWPLAYER _CONTROLS , { controls : a } ) ) } ; this . forceState = function ( a ) { R . forceState ( a ) } ; this . releaseState = function ( ) { R . releaseState ( S . jwGetState ( ) ) } ; this . getSafeRegion = function ( ) { var a = J . controls , b = h . bounds ( ua ) , c = b . top , d = h . bounds ( G ? G . element ( ) : null ) , e = 0 < T . numButtons ( ) , f = h . bounds ( T . element ( ) ) , g = h . bounds ( W . element ( ) ) , j = 0 == W . position ( ) . indexOf ( "top" ) ,
e = Math . max ( e ? f . top + f . height - c : 0 , j ? g . top + g . height - c : 0 ) , f = b . width , b = d . height ? ( j ? d . top : g . top ) - e - c : b . height - e ; return { x : 0 , y : a ? e : 0 , width : a ? f : 0 , height : a ? b : 0 } } ; this . destroy = function ( ) { j . removeEventListener ( "webkitfullscreenchange" , V , v ) ; j . removeEventListener ( "mozfullscreenchange" , V , v ) ; Y . removeEventListener ( "webkitbeginfullscreen" , V , v ) ; Y . removeEventListener ( "webkitendfullscreen" , V , v ) ; j . removeEventListener ( "keydown" , I , v ) ; va && va . destroy ( ) } ; P = z ( "div" , "jwplayer playlist-" + J . playlistposition ) ; P . id = S . id ; J . aspectratio &&
( a ( ".jwplayer" , { display : "inline-block" } ) , P . className = P . className . replace ( "jwplayer" , "jwplayer " + l ) ) ; D ( J . width , J . height ) ; var ka = document . getElementById ( S . id ) ; ka . parentNode . replaceChild ( P , ka ) } ; a ( ".jwplayer" , { position : "relative" , display : "block" , opacity : 0 , "min-height" : h . isMobile ( ) ? 200 : 0 , "-webkit-transition" : "opacity .5s ease" , "-moz-transition" : "opacity .5s ease" , "-o-transition" : "opacity .5s ease" } ) ; a ( "." + q , { position : "absolute" , left : 0 , right : 0 , top : 0 , bottom : 0 , "-webkit-transition" : "opacity .5s ease" , "-moz-transition" : "opacity .5s ease" ,
"-o-transition" : "opacity .5s ease" } ) ; a ( "." + n + " ,.jwcontrols" , { position : "absolute" , height : "100%" , width : "100%" , "-webkit-transition" : "opacity .5s ease" , "-moz-transition" : "opacity .5s ease" , "-o-transition" : "opacity .5s ease" } ) ; a ( "." + n , { overflow : u , visibility : u , opacity : 0 , cursor : "pointer" } ) ; a ( "." + n + " video" , { background : "transparent" , width : "100%" , height : "100%" } ) ; a ( "." + r , { position : "absolute" , height : "100%" , width : "100%" , display : A } ) ; a ( ".jwinstream" , { position : "absolute" , top : 0 , left : 0 , bottom : 0 , right : 0 , display : "none" } ) ;
a ( ".jwaspect" , { display : "none" } ) ; a ( ".jwplayer." + l , { height : "auto" } ) ; a ( ".jwplayer.jwfullscreen" , { width : "100%" , height : "100%" , left : 0 , right : 0 , top : 0 , bottom : 0 , "z-index" : 1E3 , position : "fixed" } , s ) ; a ( ".jwplayer.jwfullscreen ." + q , { left : 0 , right : 0 , top : 0 , bottom : 0 } , s ) ; a ( ".jwplayer.jwfullscreen ." + r , { display : A } , s ) ; a ( ".jwplayer .jwuniform" , { "background-size" : "contain !important" } ) ; a ( ".jwplayer .jwfill" , { "background-size" : "cover !important" , "background-position" : "center" } ) ; a ( ".jwplayer .jwexactfit" , { "background-size" : "100% 100% !important" } ) } ) ( jwplayer . html5 ) ;
( function ( f ) { var h = jwplayer . utils . extend , e = f . logo , d ; d = function ( a , b ) { "free" == a . edition ( ) ? b = null : ( e . defaults . file = "" , e . defaults . prefix = "" ) ; h ( this , new e ( a , b ) ) } ; d . defaults = { prefix : "" , file : " data : image / png ; base64 , iVBORw0KGgoAAAANSUhEUgAAAG0AAAATCAYAAACa0IPnAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw / eHBhY2tldCBiZWdpbj0i77u / IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8 + IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNSBNYWNpbnRvc2giIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NUVGQjQ0N0ZEOThDMTFFMUFDMUZCMzY5RkYyQkY5NDUiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NUVGQjQ0ODBEOThDMTFFMUFDMUZCMzY5RkYyQkY5NDUiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo1RUZCNDQ3REQ5OEMxMUUxQUMxRkIzNjlGRjJCRjk0NSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo1RUZCNDQ3RUQ5OEMxMUUxQUMxRkIzNjlGRjJCRjk0NSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI / Pr5HQqEAAArQSURBVHja3JkJUNT3Fcf3AARBQVFR8IjGCw1aT9R6UKVe0TgYOxNHG5tqD + o48ajVia21mdaJ49FoCloNKho0FkbjQRwRvAUVFUO8gCDKIbccciyw7Pbztr + 1 G2Sp0yKj / c28 + f / 3 d733e993 / f6r1TTSwsLCtDwcIbPq0kM6qErTeHOCau2MtVLPWpv9rE2n1pps + FQ3ssfPoR5QNHRN8 + o3bSNn / Z / awoULn707NDZBr9d7ms3m3 / FqqKurO8rv4Vqt1l + n031B35kG04OZ68f4Td4 / bzAWxNjk + vr6Sw4ODpENgNXRP54956pDuog87JPCMxtKgO5Y0K6t / dDJyWlQSUlJbbt27V4H0PpB05UBOkOHoMfNtXmjoBUUFHTu0qXLcl5rsrOzEzw8PMagrPcNBoOHs7NzIv1P1dS2gPJXFN0KcB86OjoKqAarhzF / GfPHsV8B + 2 j8 / f2f8bh69aq2b9 ++ E9n3l / K7pqYmi32c2OM9 + Q2gyRiLyHD26dOnJvapq6iocOzYseMrj1hhYeEPkHOz9XdZWVmau7v7ywWttLRUD2hVAGIsKioq43dKp06dzCaTaSSK80bR4g2aqqqqka1bt7aGv3bQaJR + Vn5UVlb2xbt64kk1t2 / fTtq / f79x7Nix / 2 bs4KARENhXk5ubmxwREfE5wDjDtzvzJnp5eQ3CEDYCZgB71kMayCzPV72Vl5c7Ir8BoxMv07i4uLyH3HF2Qn / zgEYoMgth7Zpu3brpk5OTLxOiCtzc3LwBozcCWEDDM2aj / Hr6Cl1dXTvhEXMA0QIaAI / FuroQ0tLbtGmTcvjwYVODECx8TAqM / MTExHCV09q0b9 / + CYf + LXsNKS4u9mBvC1gC9OsAWqtWrSznkjNawlHbtu9ifDsA79JLA00p0srU7dSpUwljxoxJx8O8UKQ / yj5FvxFQZgNc7fHjx0MXLFjwMZ4xmjEpLkwoeBjC6 / HUxGvXruVMnz79 + 4 wVAMzX4GD1J06cKFdDJVlZWRUc0BHgawBdC1 + tzLPOVy0AWgR1U + Facu1nUB30J2UAYVCGDdvxas1B6KTq + wCaAXlCD6DdkFW5A6CV0FdQMfRTqAL6RKKgXaWqs8lTNWfeQ6EJcr6XApowE + WgNGHumJ + fX4anpdI3Bqv / IYp0wxPeYsiT0HY7Ly8vwmg0fshYV0DsQ38W7wNlD7wv / vr16xU2yn4ONHJmN57vKnn8evTo8QHjjjk5OUmZmZkV / fv3t8yjz6T2WUTo3iryIVcpAHtLwUN / R / ivRb5x7DkW626NQSxXLH34 / WcMadyDBw8u9 + rVy52 + cNa9TUQph0yMTWDPQEL6CsYiOdsQwvXPONuP6NNAPRivevz4cXjXrl3tgmY9lw1o8tuPtf9gjyAFfPN7GgewgAZjS / n66NGjC3369HmH0OVPUeFOPpuBp2lQ7FkKjDxqjRsUFj8mns9AETGenp5 + 1 dXV + Sjj7vnz5032DiZ8ePrS9YUKuc7SBw / Jc5 / ideUzZszQSR + kleeuXbsyeO66efNmJgCVwstr7dq1wciznFC94 + LFi1 / PmTMngEgxDz5 / FE9EvoEUB2Jwj44ePZq4YsWK1YzNio + PPxIeHh4LMPWTJk0aPHfu3F / z / jFjkZzRRfHtgfHE79y5M4xQryNNFC9evNiuUq3nsgVNtUB0c5ozLuA9tdlBE8aS06w55MKFC3Hjx4 / Pw4IHECJ9EP5tBNMlJCREEdoMa9asOenn5zcZgUZw6GKs31Uqzxs3btybNWuW3RAifPDktEOHDn3VoUMHN3KY4datW / koNxVLP8P + dYRYq + VawuSxY8cSV61a5TRv3rwJyOCPnOJ + bdjP6eHDhx327dv3JTwlJ7ZHljms2YM8k0VejODC0KFDs8TipbDp169fdWhoaFsA1sHTgPwSFXwYe4v3GuEH4GkHDhwIEWNQOitbtmyZpqnw2NDTbNoogLvK3iG8 / 0 VV2 + b / CjSsVsdhTIqpWaxaPA3m4mkaCoUcrDiNfl9Cwx845JtUlVmExmTWmqKiohKZX4YnilA + zDOjhGunT58u2rBhg13QxCI5wOODBw9 + qu40NaIUuZ6xr1EldgtJFSmKP3fu3Bq6l0nOI / xm4hEFeJtWGZoeb8 / hSnGYPBpMhbqANccZn838ciLG11OnTu3MXu6ETm337t3Fot4RJ5eCh / U6gDYQAnszbhS + ACyFVizylL6IUpvwNGvzgD6CfgOFSpiGctXZ6 / 4 jaHfu3JGd + yHsaN4jBw4cWMYBMdLWLuSAUooLy4WYsXrC3A0UHIiXTVVAxhEaq0RA7iIZHPTGgAEDJsrXCxRZInctWdeUN8tavMDIvLymlCCEodRKzuR9JQb0ZOPGjX + LjIxMwlAMVKefIZe77MteZjx / H6C9TygTj1lNBdeTXHZl8 + bNsVTEXsOHD68W3qz7Eg9KByA9Stb7 + Pi44 + FFAJSEsU2UOejCGBgYaJD3F2lWY2wCNOtXE7kmiQGuwdCToGgMRO7BUp2Xqy9FAqTo59mXFgcO34lccBJFdEPJk9PS0jaQi4JRpAOhKoswdNOqOKrA2JEjR / 6 Kd1fp43Anly5davHOkJCQQgC / wJiApgHA7 + R + NnPmzKYqLK0CRNewUGlQQksu06FYM4pvTxg2c7hKwuP19evX38ODpkFdbEMuIfVbDho3atQo8aLljBs5zzXOV0RuNuDZ1ymm
h ( d . defaults , e . defaults ) ; f . logo = d } ) ( jwplayer . html5 ) ; ( function ( f ) { var h = f . model ; f . model = function ( e , d ) { var a = new jwplayer . utils . key ( e . key ) , b = new h ( e , d ) , c = b . componentConfig ; b . edition = function ( ) { return a . edition ( ) } ; b . componentConfig = function ( a ) { return "logo" == a ? b . logo : c ( a ) } ; return b } } ) ( jwplayer . html5 ) ; ( function ( f ) { f . player . prototype . edition = function ( ) { return this . _model . edition ( ) } } ) ( jwplayer . html5 ) ;
( function ( f ) { var h = jwplayer . utils . extend , e = f . rightclick ; f . rightclick = function ( d , a ) { if ( "free" == d . edition ( ) ) a . aboutlink = "http://www.longtailvideo.com/jwpabout/?a\x3dr\x26v\x3d" + f . version + "\x26m\x3dh\x26e\x3df" , delete a . abouttext ; else { if ( ! a . aboutlink ) { var b = "http://www.longtailvideo.com/jwpabout/?a\x3dr\x26v\x3d" + f . version + "\x26m\x3dh\x26e\x3d" , c = d . edition ( ) ; a . aboutlink = b + ( "pro" == c ? "p" : "premium" == c ? "r" : "ads" == c ? "a" : "f" ) } a . abouttext ? a . abouttext = "About " + a . abouttext + " ..." : ( b = d . edition ( ) , b = b . charAt ( 0 ) . toUpperCase ( ) +
b . substr ( 1 ) , a . abouttext = "About JW Player " + f . version + " (" + b + " edition)" ) } h ( this , new e ( d , a ) ) } } ) ( jwplayer . html5 ) ; ( function ( f ) { var h = f . view ; f . view = function ( e , d ) { var a = new h ( e , d ) ; "invalid" == d . edition ( ) && a . setupError ( "Error setting up player: Invalid license key" ) ; return a } } ) ( jwplayer . html5 ) ;