2017-12-09 12:42:35 +00:00
// 4.7.4 (2017-12-05)
! function ( ) { var a = { } , b = function ( b ) { for ( var c = a [ b ] , e = c . deps , f = c . defn , g = e . length , h = new Array ( g ) , i = 0 ; i < g ; ++ i ) h [ i ] = d ( e [ i ] ) ; var j = f . apply ( null , h ) ; if ( void 0 === j ) throw "module [" + b + "] returned undefined" ; c . instance = j } , c = function ( b , c , d ) { if ( "string" != typeof b ) throw "module id must be a string" ; if ( void 0 === c ) throw "no dependencies for " + b ; if ( void 0 === d ) throw "no definition function for " + b ; a [ b ] = { deps : c , defn : d , instance : void 0 } } , d = function ( c ) { var d = a [ c ] ; if ( void 0 === d ) throw "module [" + c + "] was undefined" ; return void 0 === d . instance && b ( c ) , d . instance } , e = function ( a , b ) { for ( var c = a . length , e = new Array ( c ) , f = 0 ; f < c ; ++ f ) e [ f ] = d ( a [ f ] ) ; b . apply ( null , e ) } , f = { } ; f . bolt = { module : { api : { define : c , require : e , demand : d } } } ; var g = c , h = function ( a , b ) { g ( a , [ ] , function ( ) { return b } ) } ; h ( "4" , Array ) , h ( "5" , Error ) , g ( "1" , [ "4" , "5" ] , function ( a , b ) { var c = function ( ) { } , d = function ( a ) { return function ( ) { return a ( ) } } , e = function ( a , b ) { return function ( ) { return a ( b . apply ( null , arguments ) ) } } , f = function ( a ) { return function ( ) { return a } } , g = function ( a ) { return a } , h = function ( a , b ) { return a === b } , i = function ( b ) { for ( var c = new a ( arguments . length - 1 ) , d = 1 ; d < arguments . length ; d ++ ) c [ d - 1 ] = arguments [ d ] ; return function ( ) { for ( var d = new a ( arguments . length ) , e = 0 ; e < d . length ; e ++ ) d [ e ] = arguments [ e ] ; var f = c . concat ( d ) ; return b . apply ( null , f ) } } , j = function ( a ) { return function ( ) { return ! a . apply ( null , arguments ) } } , k = function ( a ) { return function ( ) { throw new b ( a ) } } , l = function ( a ) { return a ( ) } , m = function ( a ) { a ( ) } , n = f ( ! 1 ) , o = f ( ! 0 ) ; return { noop : c , noarg : d , compose : e , constant : f , identity : g , tripleEquals : h , curry : i , not : j , die : k , apply : l , call : m , never : n , always : o } } ) , h ( "2" , window ) , h ( "3a" , Object ) , g ( "2n" , [ "1" , "3a" ] , function ( a , b ) { var c = a . never , d = a . always , e = function ( ) { return f } , f = function ( ) { var f = function ( a ) { return a . isNone ( ) } , g = function ( a ) { return a ( ) } , h = function ( a ) { return a } , i = function ( ) { } , j = { fold : function ( a , b ) { return a ( ) } , is : c , isSome : c , isNone : d , getOr : h , getOrThunk : g , getOrDie : function ( a ) { throw new Error ( a || "error: getOrDie called on none." ) } , or : h , orThunk : g , map : e , ap : e , each : i , bind : e , flatten : e , exists : c , forall : d , filter : e , equals : f , equals _ : f , toArray : function ( ) { return [ ] } , toString : a . constant ( "none()" ) } ; return b . freeze && b . freeze ( j ) , j } ( ) , g = function ( a ) { var b = function ( ) { return a } , h = function ( ) { return k } , i = function ( b ) { return g ( b ( a ) ) } , j = function ( b ) { return b ( a ) } , k = { fold : function ( b , c ) { return c ( a ) } , is : function ( b ) { return a === b } , isSome : d , isNone : c , getOr : b , getOrThunk : b , getOrDie : b , or : h , orThunk : h , map : i , ap : function ( b ) { return b . fold ( e , function ( b ) { return g ( b ( a ) ) } ) } , each : function ( b ) { b ( a ) } , bind : j , flatten : b , exists : j , forall : j , filter : function ( b ) { return b ( a ) ? k : f } , equals : function ( b ) { return b . is ( a ) } , equals _ : function ( b , d ) { return b . fold ( c , function ( b ) { return d ( a , b ) } ) } , toArray : function ( ) { return [ a ] } , toString : function ( ) { return "some(" + a + ")" } } ; return k } , h = function ( a ) { return null === a || void 0 === a ? f : g ( a ) } ; return { some : g , none : e , from : h } } ) , h ( "3b" , String ) , g ( "1i" , [ "2n" , "4" , "5" , "3b" ] , function ( a , b , c , d ) { var e = function ( ) { var a = b . prototype . indexOf , c = function ( b , c ) { return a . call ( b , c ) } , d = function ( a , b ) { return u ( a , b ) } ; return void 0 === a ? d : c } ( ) , f = function ( b , c ) { var d = e ( b , c ) ; return d === - 1 ? a . none ( ) : a . some ( d ) } , g = function ( a , b ) { return e ( a , b ) > - 1 } , h = function ( a , b ) { return t ( a , b ) . isSome ( ) } , i = function ( a , b ) { for ( var c = [ ] , d = 0 ; d < a ; d ++ ) c . push ( b ( d ) ) ; return c } , j = function ( a , b ) { for ( var c = [ ] , d = 0 ; d < a . length ; d += b ) { var e = a . slice ( d , d + b ) ; c . push ( e ) } return c } , k = function ( a , c ) { for ( var d = a . length , e = new b ( d ) , f = 0 ; f < d ; f ++ ) { var g = a [ f ] ; e [ f ] = c ( g , f , a ) } return e } , l = function ( a , b ) { for ( var c = 0 , d = a . length ; c < d ; c ++ ) { var e = a [ c ] ; b ( e , c , a ) } } , m = function ( a , b ) { for ( var c = a . length - 1 ; c >= 0 ; c -- ) { var d = a [ c ] ; b ( d , c , a ) } } , n = function ( a , b ) { for ( var c = [ ] , d = [ ] , e = 0 , f = a . length ; e < f ; e ++ ) { var g = a [ e ] , h = b ( g , e , a ) ? c : d ; h . push ( g ) } return { pass : c , fail : d } } , o = function ( a , b ) { for ( var c = [ ] , d = 0 , e = a . length ; d < e ; d ++ ) { var f = a [ d ] ; b ( f , d , a ) && c . push ( f ) } return c } , p = function ( a , b ) { if ( 0 === a . length ) return [ ] ; for ( var c = b ( a [ 0 ] ) , d = [ ] , e = [ ] , f = 0 , g = a . length ; f < g ; f ++ ) { var h = a [ f ] , i = b ( h ) ; i !== c && ( d . push ( e ) , e = [ ] ) , c = i , e . push ( h ) } return 0 !== e . length && d . push ( e ) , d } , q = function ( a , b , c ) { return m ( a , function ( a ) { c = b ( c , a ) } ) , c } , r = function ( a , b , c ) { return l ( a , function ( a ) { c = b ( c , a ) } ) , c } , s = function ( b , c ) { for ( var d = 0 , e = b . length ; d < e ; d ++ ) { var f = b [ d ] ; if ( c ( f , d , b ) ) r
d = a . length ; c < d ; c ++ ) if ( a [ c ] === b ) return c ; return - 1 } , g = function ( a , b , c , d ) { var e = 0 ; for ( arguments . length < 3 && ( c = a [ 0 ] ) ; e < a . length ; e ++ ) c = b . call ( d , c , a [ e ] , e ) ; return c } , h = function ( a , b , c ) { var d , e ; for ( d = 0 , e = a . length ; d < e ; d ++ ) if ( b . call ( c , a [ d ] , d , a ) ) return d ; return - 1 } , i = function ( a , b , c ) { var d = h ( a , b , c ) ; if ( d !== - 1 ) return a [ d ] } , j = function ( a ) { return a [ a . length - 1 ] } ; return { isArray : a , toArray : b , each : c , map : d , filter : e , indexOf : f , reduce : g , findIndex : h , find : i , last : j } } ) , g ( "1e" , [ "2" , "b" , "1r" ] , function ( a , b , c ) { var d = /^\s*|\s*$/g , e = function ( a ) { return null === a || void 0 === a ? "" : ( "" + a ) . replace ( d , "" ) } , f = function ( a , b ) { return b ? ! ( "array" != b || ! c . isArray ( a ) ) || typeof a == b : void 0 !== a } , g = function ( a , b , c ) { var d ; for ( a = a || [ ] , b = b || "," , "string" == typeof a && ( a = a . split ( b ) ) , c = c || { } , d = a . length ; d -- ; ) c [ a [ d ] ] = { } ; return c } , h = function ( a , b ) { return Object . prototype . hasOwnProperty . call ( a , b ) } , i = function ( a , b , c ) { var d , e , f , g , h , i = this , j = 0 ; if ( a = /^((static) )?([\w.]+)(:([\w.]+))?/ . exec ( a ) , f = a [ 3 ] . match ( /(^|\.)(\w+)$/i ) [ 2 ] , e = i . createNS ( a [ 3 ] . replace ( /\.\w+$/ , "" ) , c ) , ! e [ f ] ) { if ( "static" == a [ 2 ] ) return e [ f ] = b , void ( this . onCreate && this . onCreate ( a [ 2 ] , a [ 3 ] , e [ f ] ) ) ; b [ f ] || ( b [ f ] = function ( ) { } , j = 1 ) , e [ f ] = b [ f ] , i . extend ( e [ f ] . prototype , b ) , a [ 5 ] && ( d = i . resolve ( a [ 5 ] ) . prototype , g = a [ 5 ] . match ( /\.(\w+)$/i ) [ 1 ] , h = e [ f ] , j ? e [ f ] = function ( ) { return d [ g ] . apply ( this , arguments ) } : e [ f ] = function ( ) { return this . parent = d [ g ] , h . apply ( this , arguments ) } , e [ f ] . prototype [ f ] = e [ f ] , i . each ( d , function ( a , b ) { e [ f ] . prototype [ b ] = d [ b ] } ) , i . each ( b , function ( a , b ) { d [ b ] ? e [ f ] . prototype [ b ] = function ( ) { return this . parent = d [ b ] , a . apply ( this , arguments ) } : b != f && ( e [ f ] . prototype [ b ] = a ) } ) ) , i . each ( b [ "static" ] , function ( a , b ) { e [ f ] [ b ] = a } ) } } , j = function ( a , b ) { var c , d , e , f , g = arguments ; for ( c = 1 , d = g . length ; c < d ; c ++ ) { b = g [ c ] ; for ( e in b ) b . hasOwnProperty ( e ) && ( f = b [ e ] , void 0 !== f && ( a [ e ] = f ) ) } return a } , k = function ( a , b , d , e ) { e = e || this , a && ( d && ( a = a [ d ] ) , c . each ( a , function ( a , c ) { return b . call ( e , a , c , d ) !== ! 1 && void k ( a , b , d , e ) } ) ) } , l = function ( b , c ) { var d , e ; for ( c = c || a , b = b . split ( "." ) , d = 0 ; d < b . length ; d ++ ) e = b [ d ] , c [ e ] || ( c [ e ] = { } ) , c = c [ e ] ; return c } , m = function ( b , c ) { var d , e ; for ( c = c || a , b = b . split ( "." ) , d = 0 , e = b . length ; d < e && ( c = c [ b [ d ] ] , c ) ; d ++ ) ; return c } , n = function ( a , b ) { return ! a || f ( a , "array" ) ? a : c . map ( a . split ( b || "," ) , e ) } , o = function ( a ) { var c = b . cacheSuffix ; return c && ( a += ( a . indexOf ( "?" ) === - 1 ? "?" : "&" ) + c ) , a } ; return { trim : e , isArray : c . isArray , is : f , toArray : c . toArray , makeMap : g , each : c . each , map : c . map , grep : c . filter , inArray : c . indexOf , hasOwn : h , extend : j , create : i , walk : k , createNS : l , resolve : m , explode : n , _addCacheSuffix : o } } ) , g ( "n" , [ "1j" , "o" , "r" , "b" , "1e" ] , function ( a , b , c , d , e ) { var f , g = a , h = Array . prototype . push , i = Array . prototype . slice , j = /^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/ , k = b . Event , l = e . makeMap ( "children,contents,next,prev" ) , m = function ( a ) { return "undefined" != typeof a } , n = function ( a ) { return "string" == typeof a } , o = function ( a ) { return a && a == a . window } , p = function ( a , b ) { var c , d , e ; for ( b = b || g , e = b . createElement ( "div" ) , c = b . createDocumentFragment ( ) , e . innerHTML = a ; d = e . firstChild ; ) c . appendChild ( d ) ; return c } , q = function ( a , b , c , d ) { var e ; if ( n ( b ) ) b = p ( b , F ( a [ 0 ] ) ) ; else if ( b . length && ! b . nodeType ) { if ( b = z . makeArray ( b ) , d ) for ( e = b . length - 1 ; e >= 0 ; e -- ) q ( a , b [ e ] , c , d ) ; else for ( e = 0 ; e < b . length ; e ++ ) q ( a , b [ e ] , c , d ) ; return a } if ( b . nodeType ) for ( e = a . length ; e -- ; ) c . call ( a [ e ] , b ) ; return a } , r = function ( a , b ) { return a && b && ( " " + a . className + " " ) . indexOf ( " " + b + " " ) !== - 1 } , s = function ( a , b , c ) { var d , e ; return b = z ( b ) [ 0 ] , a . each ( function ( ) { var a = this ; c && d == a . parentNode ? e . appendChild ( a ) : ( d = a . parentNode , e = b . cloneNode ( ! 1 ) , a . parentNode . insertBefore ( e , a ) , e . appendChild ( a ) ) } ) , a } , t = e . makeMap ( "fillOpacity fontWeight lineHeight opacity orphans widows zIndex zoom" , " " ) , u = e . makeMap ( "checked compact declare defer disabled ismap multiple nohref noshade nowrap readonly selected" , " " ) , v = { "for" : "htmlFor" , "class" : "className" , readonly : "readOnly" } , w = { "float" : "cssFloat" } , x = { } , y = { } , z = function ( a , b ) { return new z . fn . init ( a , b ) } , A = function ( a , b ) { var c ; if ( b . indexOf ) return b . indexOf ( a ) ; for ( c = b . length ; c -- ; ) if ( b [ c ] === a ) return c ; return - 1 } , B = /^\s*|\s*$/g , C = function ( a ) { return null === a || a === f ? "" : ( "" + a ) . replace ( B , "" ) } , D = function ( a , b ) { var c , d , e , f , g ; if ( a ) if ( c = a . length , c === f ) { for ( d in a ) if ( a . hasOwnProperty ( d ) && ( g = a [ d ] , b . call ( g , d , g ) === ! 1 ) ) break } else for ( e = 0 ; e < c && ( g = a
a . get ( b ) } ) } ) } , i = function ( ) { return a . nu ( e ) } ; return { map : f , bind : g , anonBind : h , toLazy : i , get : e } } , d = function ( a ) { return c ( function ( b ) { b ( a ) } ) } ; return { nu : c , pure : d } } ) , g ( "5a" , [ "1i" ] , function ( a ) { var b = function ( b , c ) { return c ( function ( c ) { var d = [ ] , e = 0 , f = function ( a ) { return function ( f ) { d [ a ] = f , e ++ , e >= b . length && c ( d ) } } ; 0 === b . length ? c ( [ ] ) : a . each ( b , function ( a , b ) { a . get ( f ( b ) ) } ) } ) } ; return { par : b } } ) , g ( "3j" , [ "1i" , "3i" , "5a" ] , function ( a , b , c ) { var d = function ( a ) { return c . par ( a , b . nu ) } , e = function ( b , c ) { var e = a . map ( b , c ) ; return d ( e ) } , f = function ( a , b ) { return function ( c ) { return b ( c ) . bind ( a ) } } ; return { par : d , mapM : e , compose : f } } ) , g ( "3k" , [ "1" , "2n" ] , function ( a , b ) { var c = function ( d ) { var e = function ( a ) { return d === a } , f = function ( a ) { return c ( d ) } , g = function ( a ) { return c ( d ) } , h = function ( a ) { return c ( a ( d ) ) } , i = function ( a ) { a ( d ) } , j = function ( a ) { return a ( d ) } , k = function ( a , b ) { return b ( d ) } , l = function ( a ) { return a ( d ) } , m = function ( a ) { return a ( d ) } , n = function ( ) { return b . some ( d ) } ; return { is : e , isValue : a . constant ( ! 0 ) , isError : a . constant ( ! 1 ) , getOr : a . constant ( d ) , getOrThunk : a . constant ( d ) , getOrDie : a . constant ( d ) , or : f , orThunk : g , fold : k , map : h , each : i , bind : j , exists : l , forall : m , toOption : n } } , d = function ( c ) { var e = function ( a ) { return a ( ) } , f = function ( ) { return a . die ( c ) ( ) } , g = function ( a ) { return a } , h = function ( a ) { return a ( ) } , i = function ( a ) { return d ( c ) } , j = function ( a ) { return d ( c ) } , k = function ( a , b ) { return a ( c ) } ; return { is : a . constant ( ! 1 ) , isValue : a . constant ( ! 1 ) , isError : a . constant ( ! 0 ) , getOr : a . identity , getOrThunk : e , getOrDie : f , or : g , orThunk : h , fold : k , map : i , each : a . noop , bind : j , exists : a . constant ( ! 1 ) , forall : a . constant ( ! 0 ) , toOption : b . none } } ; return { value : c , error : d } } ) , g ( "1t" , [ "1i" , "1" , "3i" , "3j" , "3k" , "1m" , "15" , "1e" ] , function ( a , b , c , d , e , f , g , h ) { "use strict" ; return function ( i , j ) { var k , l = 0 , m = { } ; j = j || { } , k = j . maxLoadTime || 5e3 ; var n = function ( a ) { i . getElementsByTagName ( "head" ) [ 0 ] . appendChild ( a ) } , o = function ( a , b , c ) { var d , e , j , o , p = function ( ) { for ( var a = o . passed , b = a . length ; b -- ; ) a [ b ] ( ) ; o . status = 2 , o . passed = [ ] , o . failed = [ ] } , q = function ( ) { for ( var a = o . failed , b = a . length ; b -- ; ) a [ b ] ( ) ; o . status = 3 , o . passed = [ ] , o . failed = [ ] } , r = function ( ) { var a = f . userAgent . match ( /WebKit\/(\d*)/ ) ; return ! ! ( a && a [ 1 ] < 536 ) } , s = function ( a , b ) { a ( ) || ( ( new Date ) . getTime ( ) - j < k ? g . setTimeout ( b ) : q ( ) ) } , t = function ( ) { s ( function ( ) { for ( var a , b , c = i . styleSheets , e = c . length ; e -- ; ) if ( a = c [ e ] , b = a . ownerNode ? a . ownerNode : a . owningElement , b && b . id === d . id ) return p ( ) , ! 0 } , t ) } , u = function ( ) { s ( function ( ) { try { var a = e . sheet . cssRules ; return p ( ) , ! ! a } catch ( a ) { } } , u ) } ; if ( a = h . _addCacheSuffix ( a ) , m [ a ] ? o = m [ a ] : ( o = { passed : [ ] , failed : [ ] } , m [ a ] = o ) , b && o . passed . push ( b ) , c && o . failed . push ( c ) , 1 != o . status ) { if ( 2 == o . status ) return void p ( ) ; if ( 3 == o . status ) return void q ( ) ; if ( o . status = 1 , d = i . createElement ( "link" ) , d . rel = "stylesheet" , d . type = "text/css" , d . id = "u" + l ++ , d . async = ! 1 , d . defer = ! 1 , j = ( new Date ) . getTime ( ) , "onload" in d && ! r ( ) ) d . onload = t , d . onerror = q ; else { if ( f . userAgent . indexOf ( "Firefox" ) > 0 ) return e = i . createElement ( "style" ) , e . textContent = '@import "' + a + '"' , u ( ) , void n ( e ) ; t ( ) } n ( d ) , d . href = a } } , p = function ( a ) { return c . nu ( function ( c ) { o ( a , b . compose ( c , b . constant ( e . value ( a ) ) ) , b . compose ( c , b . constant ( e . error ( a ) ) ) ) } ) } , q = function ( a ) { return a . fold ( b . identity , b . identity ) } , r = function ( b , c , e ) { d . par ( a . map ( b , p ) ) . get ( function ( b ) { var d = a . partition ( b , function ( a ) { return a . isValue ( ) } ) ; d . fail . length > 0 ? e ( d . fail . map ( q ) ) : c ( d . pass . map ( q ) ) } ) } ; return { load : o , loadAll : r } } } ) , g ( "s" , [ ] , function ( ) { return function ( a , b ) { var c = a , d = function ( a , c , d , e ) { var f , g ; if ( a ) { if ( ! e && a [ c ] ) return a [ c ] ; if ( a != b ) { if ( f = a [ d ] ) return f ; for ( g = a . parentNode ; g && g != b ; g = g . parentNode ) if ( f = g [ d ] ) return f } } } , e = function ( a , c , d , e ) { var f , g , h ; if ( a ) { if ( f = a [ d ] , b && f === b ) return ; if ( f ) { if ( ! e ) for ( h = f [ c ] ; h ; h = h [ c ] ) if ( ! h [ c ] ) return h ; return f } if ( g = a . parentNode , g && g !== b ) return g } } ; this . current = function ( ) { return c } , this . next = function ( a ) { return c = d ( c , "firstChild" , "nextSibling" , a ) } , this . prev = function ( a ) { return c = d ( c , "lastChild" , "previousSibling" , a ) } , this . prev2 = function ( a ) { return c = e ( c , "lastChild" , "previousSibling" , a ) } } } ) , g ( "3l" , [ "1i" , "1" , "3f" ] , function ( a , b , c ) { var d = [ "article" , "aside" , "details" , "div" , "dt" , "figcaption" , "footer" , "form" , "fieldset" , "header" , "hgroup" , "html" , "main" , "nav" , "section" , "summary" , "body" , "p" , "dl" , "multicol" , "dd" , "figure" , "address" , "center" , "
d != c && g . onSetAttrib && g . onSetAttrib ( { attrElm : a , attrName : b , attrValue : c } ) ) } , setAttribs : function ( a , b ) { var c = this ; c . $$ ( a ) . each ( function ( a , d ) { o ( b , function ( a , b ) { c . setAttrib ( d , b , a ) } ) } ) } , getAttrib : function ( a , b , c ) { var d , e , f = this ; return a = f . $$ ( a ) , a . length && ( d = f . attrHooks [ b ] , e = d && d . get ? d . get ( a , b ) : a . attr ( b ) ) , "undefined" == typeof e && ( e = c || "" ) , e } , getPos : function ( a , b ) { return f . getPos ( this . doc . body , this . get ( a ) , b ) } , parseStyle : function ( a ) { return this . styles . parse ( a ) } , serializeStyle : function ( a , b ) { return this . styles . serialize ( a , b ) } , addStyle : function ( b ) { var c , d , e = this , f = e . doc ; if ( e !== x . DOM && f === a ) { var g = x . DOM . addedStyles ; if ( g = g || [ ] , g [ b ] ) return ; g [ b ] = ! 0 , x . DOM . addedStyles = g } d = f . getElementById ( "mceDefaultStyles" ) , d || ( d = f . createElement ( "style" ) , d . id = "mceDefaultStyles" , d . type = "text/css" , c = f . getElementsByTagName ( "head" ) [ 0 ] , c . firstChild ? c . insertBefore ( d , c . firstChild ) : c . appendChild ( d ) ) , d . styleSheet ? d . styleSheet . cssText += b : d . appendChild ( f . createTextNode ( b ) ) } , loadCSS : function ( b ) { var c , d = this , e = d . doc ; return d !== x . DOM && e === a ? void x . DOM . loadCSS ( b ) : ( b || ( b = "" ) , c = e . getElementsByTagName ( "head" ) [ 0 ] , void o ( b . split ( "," ) , function ( a ) { var b ; a = n . _addCacheSuffix ( a ) , d . files [ a ] || ( d . files [ a ] = ! 0 , b = d . create ( "link" , { rel : "stylesheet" , href : a } ) , r && e . documentMode && e . recalc && ( b . onload = function ( ) { e . recalc && e . recalc ( ) , b . onload = null } ) , c . appendChild ( b ) ) } ) ) } , addClass : function ( a , b ) { this . $$ ( a ) . addClass ( b ) } , removeClass : function ( a , b ) { this . toggleClass ( a , b , ! 1 ) } , hasClass : function ( a , b ) { return this . $$ ( a ) . hasClass ( b ) } , toggleClass : function ( a , b , c ) { this . $$ ( a ) . toggleClass ( b , c ) . each ( function ( ) { "" === this . className && d ( this ) . attr ( "class" , null ) } ) } , show : function ( a ) { this . $$ ( a ) . show ( ) } , hide : function ( a ) { this . $$ ( a ) . hide ( ) } , isHidden : function ( a ) { return "none" == this . $$ ( a ) . css ( "display" ) } , uniqueId : function ( a ) { return ( a ? a : "mce_" ) + this . counter ++ } , setHTML : function ( a , b ) { a = this . $$ ( a ) , r ? a . each ( function ( a , c ) { if ( c . canHaveHTML !== ! 1 ) { for ( ; c . firstChild ; ) c . removeChild ( c . firstChild ) ; try { c . innerHTML = "<br>" + b , c . removeChild ( c . firstChild ) } catch ( a ) { d ( "<div></div>" ) . html ( "<br>" + b ) . contents ( ) . slice ( 1 ) . appendTo ( c ) } return b } } ) : a . html ( b ) } , getOuterHTML : function ( a ) { return a = this . get ( a ) , 1 == a . nodeType && "outerHTML" in a ? a . outerHTML : d ( "<div></div>" ) . append ( d ( a ) . clone ( ) ) . html ( ) } , setOuterHTML : function ( a , b ) { var c = this ; c . $$ ( a ) . each ( function ( ) { try { if ( "outerHTML" in this ) return void ( this . outerHTML = b ) } catch ( a ) { } c . remove ( d ( this ) . html ( b ) , ! 0 ) } ) } , decode : k . decode , encode : k . encodeAllRaw , insertAfter : function ( a , b ) { return b = this . get ( b ) , this . run ( a , function ( a ) { var c , d ; return c = b . parentNode , d = b . nextSibling , d ? c . insertBefore ( a , d ) : c . appendChild ( a ) , a } ) } , replace : function ( a , b , c ) { var d = this ; return d . run ( b , function ( b ) { return p ( b , "array" ) && ( a = a . cloneNode ( ! 0 ) ) , c && o ( q ( b . childNodes ) , function ( b ) { a . appendChild ( b ) } ) , b . parentNode . replaceChild ( a , b ) } ) } , rename : function ( a , b ) { var c , d = this ; return a . nodeName != b . toUpperCase ( ) && ( c = d . create ( b ) , o ( d . getAttribs ( a ) , function ( b ) { d . setAttrib ( c , b . nodeName , d . getAttrib ( a , b . nodeName ) ) } ) , d . replace ( c , a , 1 ) ) , c || a } , findCommonAncestor : function ( a , b ) { for ( var c , d = a ; d ; ) { for ( c = b ; c && d != c ; ) c = c . parentNode ; if ( d == c ) break ; d = d . parentNode } return ! d && a . ownerDocument ? a . ownerDocument . documentElement : d } , toHex : function ( a ) { return this . styles . toHex ( n . trim ( a ) ) } , run : function ( a , b , c ) { var d , e = this ; return "string" == typeof a && ( a = e . get ( a ) ) , ! ! a && ( c = c || this , a . nodeType || ! a . length && 0 !== a . length ? b . call ( c , a ) : ( d = [ ] , o ( a , function ( a , f ) { a && ( "string" == typeof a && ( a = e . get ( a ) ) , d . push ( b . call ( c , a , f ) ) ) } ) , d ) ) } , getAttribs : function ( a ) { var b ; if ( a = this . get ( a ) , ! a ) return [ ] ; if ( r ) { if ( b = [ ] , "OBJECT" == a . nodeName ) return a . attributes ; "OPTION" === a . nodeName && this . getAttrib ( a , "selected" ) && b . push ( { specified : 1 , nodeName : "selected" } ) ; var c = /<\/?[\w:\-]+ ?|=[\"][^\"]+\"|=\'[^\']+\'|=[\w\-]+|>/gi ; return a . cloneNode ( ! 1 ) . outerHTML . replace ( c , "" ) . replace ( /[\w:\-]+/gi , function ( a ) { b . push ( { specified : 1 , nodeName : a } ) } ) , b } return a . attributes } , isEmpty : function ( a , b ) { var c , d , e , f , g , h , j = this , k = 0 ; if ( a = a . firstChild ) { g = new i ( a , a . parentNode ) , b = b || ( j . schema ? j . schema . getNonEmptyElements ( ) : null ) , f = j . schema ? j . schema . getWhiteSpaceElements ( ) : { } ; do { if ( e = a . nodeType , 1 === e ) { var l = a . getAttribute ( "data-mce-bogus" ) ; if ( l ) { a = g . next ( "all" === l ) ; continue } if ( h = a . n
} , n = function ( a , c ) { var d = k ( a , "start" , c ) , e = k ( a , "end" , c ) ; return b . liftN ( [ d , l ( e , d ) ] , function ( b , c ) { var d = a . createRng ( ) ; return d . setStart ( h ( a , b . container ( ) ) , b . offset ( ) ) , d . setEnd ( h ( a , c . container ( ) ) , c . offset ( ) ) , d } ) } , o = function ( b , c ) { return a . from ( b . select ( c . name ) [ c . index ] ) . map ( function ( a ) { var c = b . createRng ( ) ; return c . selectNode ( a ) , c } ) } , p = function ( b , c ) { var d = b . dom ; if ( c ) { if ( g . isArray ( c . start ) ) return m ( d , c ) ; if ( "string" == typeof c . start ) return a . some ( i ( d , c ) ) ; if ( c . id ) return n ( d , c ) ; if ( c . name ) return o ( d , c ) ; if ( c . rng ) return a . some ( c . rng ) } return a . none ( ) } ; return { resolve : p } } ) , g ( "2r" , [ "2b" , "4p" ] , function ( a , b ) { var c = function ( b , c , d ) { return a . getBookmark ( b , c , d ) } , d = function ( a , c ) { b . resolve ( a , c ) . each ( function ( b ) { a . setRng ( b ) } ) } , e = function ( a ) { return a && "SPAN" === a . tagName && "bookmark" === a . getAttribute ( "data-mce-type" ) } ; return { getBookmark : c , moveToBookmark : d , isBookmarkNode : e } } ) , g ( "3s" , [ "2r" , "1e" ] , function ( a , b ) { var c = b . each , d = function ( b ) { this . compare = function ( d , e ) { if ( d . nodeName != e . nodeName ) return ! 1 ; var f = function ( a ) { var d = { } ; return c ( b . getAttribs ( a ) , function ( c ) { var e = c . nodeName . toLowerCase ( ) ; 0 !== e . indexOf ( "_" ) && "style" !== e && 0 !== e . indexOf ( "data-" ) && ( d [ e ] = b . getAttrib ( a , e ) ) } ) , d } , g = function ( a , b ) { var c , d ; for ( d in a ) if ( a . hasOwnProperty ( d ) ) { if ( c = b [ d ] , "undefined" == typeof c ) return ! 1 ; if ( a [ d ] != c ) return ! 1 ; delete b [ d ] } for ( d in b ) if ( b . hasOwnProperty ( d ) ) return ! 1 ; return ! 0 } ; return ! ! g ( f ( d ) , f ( e ) ) && ( ! ! g ( b . parseStyle ( b . getAttrib ( d , "style" ) ) , b . parseStyle ( b . getAttrib ( e , "style" ) ) ) && ( ! a . isBookmarkNode ( d ) && ! a . isBookmarkNode ( e ) ) ) } } ; return d } ) , g ( "41" , [ "3h" ] , function ( a ) { var b = function ( b , c ) { var d = a . parent ( b ) ; d . each ( function ( a ) { a . dom ( ) . insertBefore ( c . dom ( ) , b . dom ( ) ) } ) } , c = function ( c , d ) { var f = a . nextSibling ( c ) ; f . fold ( function ( ) { var b = a . parent ( c ) ; b . each ( function ( a ) { e ( a , d ) } ) } , function ( a ) { b ( a , d ) } ) } , d = function ( b , c ) { var d = a . firstChild ( b ) ; d . fold ( function ( ) { e ( b , c ) } , function ( a ) { b . dom ( ) . insertBefore ( c . dom ( ) , a . dom ( ) ) } ) } , e = function ( a , b ) { a . dom ( ) . appendChild ( b . dom ( ) ) } , f = function ( c , d , f ) { a . child ( c , f ) . fold ( function ( ) { e ( c , d ) } , function ( a ) { b ( a , d ) } ) } , g = function ( a , c ) { b ( a , c ) , e ( c , a ) } ; return { before : b , after : c , prepend : d , append : e , appendAt : f , wrap : g } } ) , g ( "5d" , [ "1i" , "41" ] , function ( a , b ) { var c = function ( c , d ) { a . each ( d , function ( a ) { b . before ( c , a ) } ) } , d = function ( c , d ) { a . each ( d , function ( a , e ) { var f = 0 === e ? c : d [ e - 1 ] ; b . after ( f , a ) } ) } , e = function ( c , d ) { a . each ( d . slice ( ) . reverse ( ) , function ( a ) { b . prepend ( c , a ) } ) } , f = function ( c , d ) { a . each ( d , function ( a ) { b . append ( c , a ) } ) } ; return { before : c , after : d , prepend : e , append : f } } ) , g ( "47" , [ "1i" , "5d" , "3h" ] , function ( a , b , c ) { var d = function ( b ) { b . dom ( ) . textContent = "" , a . each ( c . children ( b ) , function ( a ) { e ( a ) } ) } , e = function ( a ) { var b = a . dom ( ) ; null !== b . parentNode && b . parentNode . removeChild ( b ) } , f = function ( a ) { var d = c . children ( a ) ; d . length > 0 && b . before ( a , d ) , e ( a ) } ; return { empty : d , remove : e , unwrap : f } } ) , g ( "5e" , [ "3d" , "2n" , "5" ] , function ( a , b , c ) { return function ( d , e ) { var f = function ( a ) { if ( ! d ( a ) ) throw new c ( "Can only get " + e + " value of a " + e + " node" ) ; return j ( a ) . getOr ( "" ) } , g = function ( a ) { try { return h ( a ) } catch ( a ) { return b . none ( ) } } , h = function ( a ) { return d ( a ) ? b . from ( a . dom ( ) . nodeValue ) : b . none ( ) } , i = a . detect ( ) . browser , j = i . isIE ( ) && 10 === i . version . major ? g : h , k = function ( a , b ) { if ( ! d ( a ) ) throw new c ( "Can only set raw " + e + " value of a " + e + " node" ) ; a . dom ( ) . nodeValue = b } ; return { get : f , getOption : j , set : k } } } ) , g ( "4e" , [ "3f" , "5e" ] , function ( a , b ) { var c = b ( a . isText , "text" ) , d = function ( a ) { return c . get ( a ) } , e = function ( a ) { return c . getOption ( a ) } , f = function ( a , b ) { c . set ( a , b ) } ; return { get : d , getOption : e , set : f } } ) , g ( "6c" , [ "1i" , "51" , "3h" ] , function ( a , b , c ) { var d = function ( a ) { return h ( b . body ( ) , a ) } , e = function ( b , d , e ) { return a . filter ( c . parents ( b , e ) , d ) } , f = function ( b , d ) { return a . filter ( c . siblings ( b ) , d ) } , g = function ( b , d ) { return a . filter ( c . children ( b ) , d ) } , h = function ( b , d ) { var e = [ ] ; return a . each ( c . children ( b ) , function ( a ) { d ( a ) && ( e = e . concat ( [ a ] ) ) , e = e . concat ( h ( a , d ) ) } ) , e } ; return { all : d , ancestors : e , siblings : f , children : g , descendants : h } } ) , g ( "5f" , [ "6c" , "2z" ] , function ( a , b ) { var c = function ( a ) { return b . all ( a ) } , d = function ( c , d , e ) { return a . ancestors ( c , function ( a ) { return b . is ( a , d ) } , e ) } , e = function ( c , d ) { return a . siblings ( c , function ( a ) { return b . is ( a , d ) } ) } , f = function ( c , d ) { return a . children ( c , function ( a ) { return b . is ( a , d ) } ) } , g =
try { return a . nodeValue } catch ( a ) { return "" } } , j = function ( a , b ) { 0 === b . length ? h ( a ) : a . nodeValue = b } , k = function ( a ) { var b = e . trim ( a ) ; return { count : a . length - b . length , text : b } } , l = function ( a , b ) { return r ( a ) , b } , m = function ( a , b ) { var d = k ( a . data . substr ( 0 , b . offset ( ) ) ) , e = k ( a . data . substr ( b . offset ( ) ) ) , f = d . text + e . text ; return f . length > 0 ? ( j ( a , f ) , new c ( a , b . offset ( ) - d . count ) ) : b } , n = function ( b , d ) { var e = d . container ( ) , f = a . indexOf ( e . childNodes , b ) . map ( function ( a ) { return a < d . offset ( ) ? new c ( e , d . offset ( ) - 1 ) : d } ) . getOr ( d ) ; return r ( b ) , f } , o = function ( a , b ) { return b . container ( ) === a ? m ( a , b ) : l ( a , b ) } , p = function ( a , b ) { return b . container ( ) === a . parentNode ? n ( a , b ) : l ( a , b ) } , q = function ( a , b ) { return c . isTextPosition ( b ) ? o ( a , b ) : p ( a , b ) } , r = function ( a ) { if ( f ( a ) && b . isCaretContainer ( a ) && ( b . hasContent ( a ) ? a . removeAttribute ( "data-mce-caret" ) : h ( a ) ) , g ( a ) ) { var c = e . trim ( i ( a ) ) ; j ( a , c ) } } ; return { removeAndReposition : q , remove : r } } ) , g ( "5m" , [ "2n" , "46" , "6f" , "6g" , "42" , "32" , "1y" , "44" ] , function ( a , b , c , d , e , f , g , h ) { var i = function ( a , b ) { return g . isText ( a . container ( ) ) ? c . insertInline ( b , a . container ( ) ) : c . insertInline ( b , a . getNode ( ) ) } , j = function ( a , c ) { var d = c . get ( ) ; return d && a . container ( ) === d && b . isCaretContainerInline ( d ) } , k = function ( b , g ) { return g . fold ( function ( e ) { d . remove ( b . get ( ) ) ; var g = c . insertInlineBefore ( e ) ; return b . set ( g ) , a . some ( new f ( g , g . length - 1 ) ) } , function ( a ) { return e . firstPositionIn ( a ) . map ( function ( a ) { if ( j ( a , b ) ) return new f ( b . get ( ) , 1 ) ; d . remove ( b . get ( ) ) ; var c = i ( a , ! 0 ) ; return b . set ( c ) , new f ( c , 1 ) } ) } , function ( a ) { return e . lastPositionIn ( a ) . map ( function ( a ) { if ( j ( a , b ) ) return new f ( b . get ( ) , b . get ( ) . length - 1 ) ; d . remove ( b . get ( ) ) ; var c = i ( a , ! 1 ) ; return b . set ( c ) , new f ( c , c . length - 1 ) } ) } , function ( e ) { d . remove ( b . get ( ) ) ; var g = c . insertInlineAfter ( e ) ; return b . set ( g ) , a . some ( new f ( g , 1 ) ) } ) } ; return { renderCaret : k } } ) , g ( "4a" , [ "s" ] , function ( a ) { var b = function ( a ) { return a && /^(IMG)$/ . test ( a . nodeName ) } , c = function ( c , d , e ) { var f , h , i , j = e . startContainer , k = e . startOffset ; if ( ( e . startContainer !== e . endContainer || ! b ( e . startContainer . childNodes [ e . startOffset ] ) ) && ( 3 === j . nodeType && k >= j . nodeValue . length && ( k = c . nodeIndex ( j ) , j = j . parentNode ) , 1 === j . nodeType ) ) for ( i = j . childNodes , k < i . length ? ( j = i [ k ] , f = new a ( j , c . getParent ( j , c . isBlock ) ) ) : ( j = i [ i . length - 1 ] , f = new a ( j , c . getParent ( j , c . isBlock ) ) , f . next ( ! 0 ) ) , h = f . current ( ) ; h ; h = f . next ( ) ) if ( 3 === h . nodeType && ! g ( h ) ) return e . setStart ( h , 0 ) , void d . setRng ( e ) } , d = function ( a , b , c ) { if ( a ) for ( b = b ? "nextSibling" : "previousSibling" , a = c ? a : a [ b ] ; a ; a = a [ b ] ) if ( 1 === a . nodeType || ! g ( a ) ) return a } , e = function ( a , b ) { return b . nodeType && ( b = b . nodeName ) , ! ! a . schema . getTextBlockElements ( ) [ b . toLowerCase ( ) ] } , f = function ( a , b , c ) { return a . schema . isValidChild ( b , c ) } , g = function ( a ) { return a && 3 === a . nodeType && /^([\t \r\n]+|)$/ . test ( a . nodeValue ) } , h = function ( a , b ) { return "string" != typeof a ? a = a ( b ) : b && ( a = a . replace ( /%(\w+)/g , function ( a , c ) { return b [ c ] || a } ) ) , a } , i = function ( a , b ) { return a = a || "" , b = b || "" , a = "" + ( a . nodeName || a ) , b = "" + ( b . nodeName || b ) , a . toLowerCase ( ) === b . toLowerCase ( ) } , j = function ( a , b , c ) { return "color" !== c && "backgroundColor" !== c || ( b = a . toHex ( b ) ) , "fontWeight" === c && 700 === b && ( b = "bold" ) , "fontFamily" === c && ( b = b . replace ( /[\'\"]/g , "" ) . replace ( /,\s+/g , "," ) ) , "" + b } , k = function ( a , b , c ) { return j ( a , a . getStyle ( b , c ) , c ) } , l = function ( a , b ) { var c ; return a . getParent ( b , function ( b ) { return c = a . getStyle ( b , "text-decoration" ) , c && "none" !== c } ) , c } , m = function ( a , b , c ) { return a . getParents ( b , c , a . getRoot ( ) ) } ; return { isInlineBlock : b , moveStart : c , getNonWhiteSpaceSibling : d , isTextBlock : e , isValid : f , isWhiteSpaceNode : g , replaceVars : h , isEq : i , normalizeStyleValue : j , getStyle : k , getTextDecoration : l , getParents : m } } ) , g ( "49" , [ "2r" , "s" , "4a" , "2v" ] , function ( a , b , c , d ) { var e = a . isBookmarkNode , f = c . getParents , g = c . isWhiteSpaceNode , h = c . isTextBlock , i = function ( a , b ) { for ( "undefined" == typeof b && ( b = 3 === a . nodeType ? a . length : a . childNodes . length ) ; a && a . hasChildNodes ( ) ; ) a = a . childNodes [ b ] , a && ( b = 3 === a . nodeType ? a . length : a . childNodes . length ) ; return { node : a , offset : b } } , j = function ( a , b ) { var c = i ( a , b ) ; if ( c . node ) { for ( ; c . node && 0 === c . offset && c . node . previousSibling ; ) c = i ( c . node . previousSibling ) ; c . node && c . offset > 0 && 3 === c . node . nodeType && " " === c . node . nodeValue . charAt ( c . offset - 1 ) && c . offset > 1 && ( a = c . node , a . splitText ( c . offset - 1 ) ) } return a } , k = function ( a ) { return "BR" === a . nodeName && a . getAttribute ( "
} , t = g . settings ; g . on ( "PreInit" , function ( ) { o = g . dom , p = g . selection , t = g . settings , q = g . formatter } ) ; var u = function ( a , b , c , d ) { var e , i , j = 0 ; if ( ! g . removed ) { if ( /^(mceAddUndoLevel|mceEndUndoLevel|mceBeginUndoLevel|mceRepaint)$/ . test ( a ) || d && d . skip _focus ? f . restore ( g ) : g . focus ( ) , d = g . fire ( "BeforeExecCommand" , { command : a , ui : b , value : c } ) , d . isDefaultPrevented ( ) ) return ! 1 ; if ( i = a . toLowerCase ( ) , e = s . exec [ i ] ) return e ( i , b , c ) , g . fire ( "ExecCommand" , { command : a , ui : b , value : c } ) , ! 0 ; if ( h ( g . plugins , function ( d ) { if ( d . execCommand && d . execCommand ( a , b , c ) ) return g . fire ( "ExecCommand" , { command : a , ui : b , value : c } ) , j = ! 0 , ! 1 } ) , j ) return j ; if ( g . theme && g . theme . execCommand && g . theme . execCommand ( a , b , c ) ) return g . fire ( "ExecCommand" , { command : a , ui : b , value : c } ) , ! 0 ; try { j = g . getDoc ( ) . execCommand ( a , b , c ) } catch ( a ) { } return ! ! j && ( g . fire ( "ExecCommand" , { command : a , ui : b , value : c } ) , ! 0 ) } } , v = function ( a ) { var b ; if ( ! g . quirks . isHidden ( ) && ! g . removed ) { if ( a = a . toLowerCase ( ) , b = s . state [ a ] ) return b ( a ) ; try { return g . getDoc ( ) . queryCommandState ( a ) } catch ( a ) { } return ! 1 } } , w = function ( a ) { var b ; if ( ! g . quirks . isHidden ( ) && ! g . removed ) { if ( a = a . toLowerCase ( ) , b = s . value [ a ] ) return b ( a ) ; try { return g . getDoc ( ) . queryCommandValue ( a ) } catch ( a ) { } } } , x = function ( a , b ) { b = b || "exec" , h ( a , function ( a , c ) { h ( c . toLowerCase ( ) . split ( "," ) , function ( c ) { s [ b ] [ c ] = a } ) } ) } , y = function ( a , b , c ) { a = a . toLowerCase ( ) , s . exec [ a ] = function ( a , d , e , f ) { return b . call ( c || g , d , e , f ) } } , z = function ( a ) { if ( a = a . toLowerCase ( ) , s . exec [ a ] ) return ! 0 ; try { return g . getDoc ( ) . queryCommandSupported ( a ) } catch ( a ) { } return ! 1 } , A = function ( a , b , c ) { a = a . toLowerCase ( ) , s . state [ a ] = function ( ) { return b . call ( c || g ) } } , B = function ( a , b , c ) { a = a . toLowerCase ( ) , s . value [ a ] = function ( ) { return b . call ( c || g ) } } , C = function ( a ) { return a = a . toLowerCase ( ) , ! ! s . exec [ a ] } ; i ( this , { execCommand : u , queryCommandState : v , queryCommandValue : w , queryCommandSupported : z , addCommands : x , addCommand : y , addQueryStateHandler : A , addQueryValueHandler : B , hasCustomCommand : C } ) ; var D = function ( a , b , c ) { return void 0 === b && ( b = n ) , void 0 === c && ( c = null ) , g . getDoc ( ) . execCommand ( a , b , c ) } , E = function ( a ) { return q . match ( a ) } , F = function ( a , b ) { q . toggle ( a , b ? { value : b } : void 0 ) , g . nodeChanged ( ) } , G = function ( a ) { r = p . getBookmark ( a ) } , H = function ( ) { p . moveToBookmark ( r ) } ; x ( { "mceResetDesignMode,mceBeginUndoLevel" : function ( ) { } , "mceEndUndoLevel,mceAddUndoLevel" : function ( ) { g . undoManager . add ( ) } , "Cut,Copy,Paste" : function ( b ) { var c , d = g . getDoc ( ) ; try { D ( b ) } catch ( a ) { c = m } if ( "paste" !== b || d . queryCommandEnabled ( b ) || ( c = ! 0 ) , c || ! d . queryCommandSupported ( b ) ) { var e = g . translate ( "Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X/C/V keyboard shortcuts instead." ) ; a . mac && ( e = e . replace ( /Ctrl\+/g , "\u2318+" ) ) , g . notificationManager . open ( { text : e , type : "error" } ) } } , unlink : function ( ) { if ( p . isCollapsed ( ) ) { var a = g . dom . getParent ( g . selection . getStart ( ) , "a" ) ; return void ( a && g . dom . remove ( a , ! 0 ) ) } q . remove ( "link" ) } , "JustifyLeft,JustifyCenter,JustifyRight,JustifyFull,JustifyNone" : function ( a ) { var b = a . substring ( 7 ) ; "full" == b && ( b = "justify" ) , h ( "left,center,right,justify" . split ( "," ) , function ( a ) { b != a && q . remove ( "align" + a ) } ) , "none" != b && F ( "align" + b ) } , "InsertUnorderedList,InsertOrderedList" : function ( a ) { var b , c ; D ( a ) , b = o . getParent ( p . getNode ( ) , "ol,ul" ) , b && ( c = b . parentNode , /^(H[1-6]|P|ADDRESS|PRE)$/ . test ( c . nodeName ) && ( G ( ) , o . split ( c , b ) , H ( ) ) ) } , "Bold,Italic,Underline,Strikethrough,Superscript,Subscript" : function ( a ) { F ( a ) } , "ForeColor,HiliteColor,FontName" : function ( a , b , c ) { F ( a , c ) } , FontSize : function ( a , b , c ) { var d , e ; c >= 1 && c <= 7 && ( e = l ( t . font _size _style _values ) , d = l ( t . font _size _classes ) , c = d ? d [ c - 1 ] || c : e [ c - 1 ] || c ) , F ( a , c ) } , RemoveFormat : function ( a ) { q . remove ( a ) } , mceBlockQuote : function ( ) { F ( "blockquote" ) } , FormatBlock : function ( a , b , c ) { return F ( c || "p" ) } , mceCleanup : function ( ) { var a = p . getBookmark ( ) ; g . setContent ( g . getContent ( { cleanup : m } ) , { cleanup : m } ) , p . moveToBookmark ( a ) } , mceRemoveNode : function ( a , b , c ) { var d = c || p . getNode ( ) ; d != g . getBody ( ) && ( G ( ) , g . dom . remove ( d , m ) , H ( ) ) } , mceSelectNodeDepth : function ( a , b , c ) { var d = 0 ; o . getParent ( p . getNode ( ) , function ( a ) { if ( 1 == a . nodeType && d ++ == c ) return p . select ( a ) , n } , g . getBody ( ) ) } , mceSelectNode : function ( a , b , c ) { p . select ( c ) } , mceInsertContent : function ( a , c , d ) { b . insertAtCaret ( g , d ) } , mceInsertRawHTML : function ( a , b , c ) { p . setContent ( "tiny_mce_marker" ) , g . setConte
} , v = function ( a ) { return ! k . images _dataimg _filter || k . images _dataimg _filter ( a ) } , w = function ( ) { return i || ( i = new c ( l , j ) ) , i . findAll ( g . getBody ( ) , v ) . then ( m ( function ( b ) { return b = a . filter ( b , function ( a ) { return "string" != typeof a || ( f . displayError ( g , a ) , ! 1 ) } ) , a . each ( b , function ( a ) { q ( a . image . src , a . blobInfo . blobUri ( ) ) , a . image . src = a . blobInfo . blobUri ( ) , a . image . removeAttribute ( "data-mce-src" ) } ) , b } ) ) } , x = function ( ) { j . destroy ( ) , l . destroy ( ) , i = h = null } , y = function ( b ) { return b . replace ( /src="(blob:[^"]+)"/g , function ( b , c ) { var d = l . getResultUri ( c ) ; if ( d ) return 'src="' + d + '"' ; var e = j . getByUri ( c ) ; return e || ( e = a . reduce ( g . editorManager . get ( ) , function ( a , b ) { return a || b . editorUpload && b . editorUpload . blobCache . getByUri ( c ) } , null ) ) , e ? 'src="data:' + e . blob ( ) . type + ";base64," + e . base64 ( ) + '"' : b } ) } ; return g . on ( "setContent" , function ( ) { g . settings . automatic _uploads !== ! 1 ? u ( ) : w ( ) } ) , g . on ( "RawSaveContent" , function ( a ) { a . content = y ( a . content ) } ) , g . on ( "getContent" , function ( a ) { a . source _view || "raw" == a . format || ( a . content = y ( a . content ) ) } ) , g . on ( "PostRender" , function ( ) { g . parser . addNodeFilter ( "img" , function ( b ) { a . each ( b , function ( a ) { var b = a . attr ( "src" ) ; if ( ! j . getByUri ( b ) ) { var c = l . getResultUri ( b ) ; c && a . attr ( "src" , c ) } } ) } ) } ) , { blobCache : j , uploadImages : t , uploadImagesAuto : u , scanForImages : w , destroy : x } } } ) , g ( "6j" , [ "1i" , "1" , "1v" , "2r" , "1y" , "5s" , "24" ] , function ( a , b , c , d , e , f , g ) { var h = function ( a , b ) { return a . hasOwnProperty ( b . nodeName ) } , i = function ( a , b ) { return ! ! e . isText ( b ) || ! ! e . isElement ( b ) && ( ! h ( a , b ) && ! d . isBookmarkNode ( b ) ) } , j = function ( b , d , e ) { return a . exists ( f . parents ( c . fromDom ( e ) , c . fromDom ( d ) ) , function ( a ) { return h ( b , a . dom ( ) ) } ) } , k = function ( a ) { var b , c , d , f , h , k , l , m , n , o , p , q = a . settings , r = a . dom , s = a . selection , t = a . schema , u = t . getBlockElements ( ) , v = s . getStart ( ) , w = a . getBody ( ) ; if ( p = q . forced _root _block , v && e . isElement ( v ) && p && ( o = w . nodeName . toLowerCase ( ) , t . isValidChild ( o , p . toLowerCase ( ) ) && ! j ( u , w , v ) ) ) { for ( b = s . getRng ( ) , c = b . startContainer , d = b . startOffset , f = b . endContainer , h = b . endOffset , n = g . hasFocus ( a ) , v = w . firstChild ; v ; ) if ( i ( u , v ) ) { if ( e . isText ( v ) && 0 === v . nodeValue . length ) { l = v , v = v . nextSibling , r . remove ( l ) ; continue } k || ( k = r . create ( p , a . settings . forced _root _block _attrs ) , v . parentNode . insertBefore ( k , v ) , m = ! 0 ) , l = v , v = v . nextSibling , k . appendChild ( l ) } else k = null , v = v . nextSibling ; m && n && ( b . setStart ( c , d ) , b . setEnd ( f , h ) , s . setRng ( b ) , a . nodeChanged ( ) ) } } , l = function ( a ) { a . settings . forced _root _block && a . on ( "NodeChange" , b . curry ( k , a ) ) } ; return { setup : l } } ) , g ( "6k" , [ "b" , "2u" , "15" ] , function ( a , b , c ) { return function ( d ) { var e , f = [ ] , g = function ( a ) { var b , c ; if ( c = d . $ ( a ) . parentsUntil ( d . getBody ( ) ) . add ( a ) , c . length === f . length ) { for ( b = c . length ; b >= 0 && c [ b ] === f [ b ] ; b -- ) ; if ( b === - 1 ) return f = c , ! 0 } return f = c , ! 1 } ; "onselectionchange" in d . getDoc ( ) || d . on ( "NodeChange Click MouseUp KeyUp Focus" , function ( a ) { var c , f ; c = d . selection . getRng ( ) , f = { startContainer : c . startContainer , startOffset : c . startOffset , endContainer : c . endContainer , endOffset : c . endOffset } , "nodechange" != a . type && b . isEq ( f , e ) || d . fire ( "SelectionChange" ) , e = f } ) , d . on ( "contextmenu" , function ( ) { d . fire ( "SelectionChange" ) } ) , d . on ( "SelectionChange" , function ( ) { var b = d . selection . getStart ( ! 0 ) ; ! b || ! a . range && d . selection . isCollapsed ( ) || ! g ( b ) && d . dom . isChildOf ( b , d . getBody ( ) ) && d . nodeChanged ( { selectionChange : ! 0 } ) } ) , d . on ( "MouseUp" , function ( a ) { a . isDefaultPrevented ( ) || ( "IMG" == d . selection . getNode ( ) . nodeName ? c . setEditorTimeout ( d , function ( ) { d . nodeChanged ( ) } ) : d . nodeChanged ( ) ) } ) , this . nodeChanged = function ( a ) { var b , c , e , f = d . selection ; d . initialized && f && ! d . settings . disable _nodechange && ! d . readonly && ( e = d . getBody ( ) , b = f . getStart ( ! 0 ) || e , b . ownerDocument == d . getDoc ( ) && d . dom . isChildOf ( b , e ) || ( b = e ) , c = [ ] , d . dom . getParent ( b , function ( a ) { return a === e || void c . push ( a ) } ) , a = a || { } , a . element = b , a . parents = c , d . fire ( "NodeChange" , a ) ) } } } ) , g ( "76" , [ ] , function ( ) { var a = function ( a ) { var b , c , d , e ; return e = a . getBoundingClientRect ( ) , b = a . ownerDocument , c = b . documentElement , d = b . defaultView , { top : e . top + d . pageYOffset - c . clientTop , left : e . left + d . pageXOffset - c . clientLeft } } , b = function ( b ) { return b . inline ? a ( b . getBody ( ) ) : { left : 0 , top : 0 } } , c = function ( a ) { var b = a . getBody ( ) ; return a . inline ? { left : b . scrollLeft , top : b . scrollTop } : { left : 0 , top : 0 } } , d = function ( a ) { var b = a . getBody ( ) , c = a . getDoc ( ) . documentElement , d = { left : b . scrollLeft , top : b . scrollTop } , e = { lef
return a . curry ( function ( a , c ) { return ! ( ! c || ! f . getStyle ( b , c , a ) ) } , c ) } , p = function ( b , c , d ) { return a . curry ( function ( a , c , d ) { b . setStyle ( d , a , c ) , "" === d . getAttribute ( "style" ) && d . removeAttribute ( "style" ) , q ( b , d ) } , c , d ) } , q = function ( a , b ) { "SPAN" === b . nodeName && 0 === a . getAttribs ( b ) . length && a . remove ( b , ! 0 ) } , r = function ( a , b ) { var c ; 1 === b . nodeType && b . parentNode && 1 === b . parentNode . nodeType && ( c = f . getTextDecoration ( a , b . parentNode ) , a . getStyle ( b , "color" ) && c ? a . setStyle ( b , "text-decoration" , c ) : a . getStyle ( b , "text-decoration" ) === c && a . setStyle ( b , "text-decoration" , null ) ) } , s = function ( b , c , d , e ) { ( c . styles . color || c . styles . textDecoration ) && ( i . walk ( e , a . curry ( r , b ) , "childNodes" ) , r ( b , e ) ) } , t = function ( a , b , c , d ) { b . styles && b . styles . backgroundColor && n ( d , o ( a , "fontSize" ) , p ( a , "backgroundColor" , f . replaceVars ( b . styles . backgroundColor , c ) ) ) } , u = function ( a , b , c , d ) { "sub" !== b . inline && "sup" !== b . inline || ( n ( d , o ( a , "fontSize" ) , p ( a , "fontSize" , "" ) ) , a . remove ( a . select ( "sup" === b . inline ? "sub" : "sup" , d ) , ! 0 ) ) } , v = function ( a , b , c , d ) { d && b . merge _siblings !== ! 1 && ( d = m ( a , f . getNonWhiteSpaceSibling ( d ) , d ) , d = m ( a , d , f . getNonWhiteSpaceSibling ( d , ! 0 ) ) ) } , w = function ( a , b , c ) { if ( b . clear _child _styles ) { var d = b . links ? "*:not(a)" : "*" ; j ( a . select ( d , c ) , function ( c ) { k ( c ) && j ( b . styles , function ( b , d ) { a . setStyle ( c , d , "" ) } ) } ) } } , x = function ( a , b , c , d ) { j ( b , function ( b ) { j ( a . dom . select ( b . inline , d ) , function ( d ) { k ( d ) && h . removeFormat ( a , b , c , d , b . exact ? d : null ) } ) , w ( a . dom , b , d ) } ) } , y = function ( a , b , c , d , e ) { g . matchNode ( a , e . parentNode , c , d ) && h . removeFormat ( a , b , d , e ) || b . merge _with _parents && a . dom . getParent ( e . parentNode , function ( f ) { if ( g . matchNode ( a , f , c , d ) ) return h . removeFormat ( a , b , d , e ) , ! 0 } ) } ; return { mergeWithChildren : x , mergeUnderlineAndColor : s , mergeBackgroundColorAndFontSize : t , mergeSubSup : u , mergeSiblings : v , mergeWithParents : y } } ) , g ( "2e" , [ "2r" , "1y" , "2f" , "49" , "4a" , "4q" , "2i" , "4r" , "3u" , "2w" , "1e" ] , function ( a , b , c , d , e , f , g , h , i , j , k ) { var l = k . each , m = function ( d ) { return d && 1 === d . nodeType && ! a . isBookmarkNode ( d ) && ! c . isCaretNode ( d ) && ! b . isBogus ( d ) } , n = function ( b , o , p , q ) { var r , s , t = b . formatter . get ( o ) , u = t [ 0 ] , v = ! q && b . selection . isCollapsed ( ) , w = b . dom , x = b . selection , y = function ( a , b ) { if ( b = b || u , a ) { if ( b . onformat && b . onformat ( a , b , p , q ) , l ( b . styles , function ( b , c ) { w . setStyle ( a , c , e . replaceVars ( b , p ) ) } ) , b . styles ) { var c = w . getAttrib ( a , "style" ) ; c && a . setAttribute ( "data-mce-style" , c ) } l ( b . attributes , function ( b , c ) { w . setAttrib ( a , c , e . replaceVars ( b , p ) ) } ) , l ( b . classes , function ( b ) { b = e . replaceVars ( b , p ) , w . hasClass ( a , b ) || w . addClass ( a , b ) } ) } } , z = function ( a , b ) { var d = ! 1 ; return ! ! u . selector && ( l ( a , function ( a ) { if ( ! ( "collapsed" in a && a . collapsed !== v ) ) return w . is ( b , a . selector ) && ! c . isCaretNode ( b ) ? ( y ( b , a ) , d = ! 0 , ! 1 ) : void 0 } ) , d ) } , A = function ( d , f , i , n ) { var q , r , s = [ ] , v = ! 0 ; q = u . inline || u . block , r = d . create ( q ) , y ( r ) , j . walk ( d , f , function ( a ) { var f , h = function ( a ) { var i , j , m , w ; if ( w = v , i = a . nodeName . toLowerCase ( ) , j = a . parentNode . nodeName . toLowerCase ( ) , 1 === a . nodeType && d . getContentEditable ( a ) && ( w = v , v = "true" === d . getContentEditable ( a ) , m = ! 0 ) , e . isEq ( i , "br" ) ) return f = 0 , void ( u . block && d . remove ( a ) ) ; if ( u . wrapper && g . matchNode ( b , a , o , p ) ) return void ( f = 0 ) ; if ( v && ! m && u . block && ! u . wrapper && e . isTextBlock ( b , i ) && e . isValid ( b , j , q ) ) return a = d . rename ( a , q ) , y ( a ) , s . push ( a ) , void ( f = 0 ) ; if ( u . selector ) { var x = z ( t , a ) ; if ( ! u . inline || x ) return void ( f = 0 ) } ! v || m || ! e . isValid ( b , q , i ) || ! e . isValid ( b , j , q ) || ! n && 3 === a . nodeType && 1 === a . nodeValue . length && 65279 === a . nodeValue . charCodeAt ( 0 ) || c . isCaretNode ( a ) || u . inline && d . isBlock ( a ) ? ( f = 0 , l ( k . grep ( a . childNodes ) , h ) , m && ( v = w ) , f = 0 ) : ( f || ( f = d . clone ( r , ! 1 ) , a . parentNode . insertBefore ( f , a ) , s . push ( f ) ) , f . appendChild ( a ) ) } ; l ( a , h ) } ) , u . links === ! 0 && l ( s , function ( a ) { var b = function ( a ) { "A" === a . nodeName && y ( a , u ) , l ( k . grep ( a . childNodes ) , b ) } ; b ( a ) } ) , l ( s , function ( c ) { var f , i = function ( b ) { var c = 0 ; return l ( b . childNodes , function ( b ) { e . isWhiteSpaceNode ( b ) || a . isBookmarkNode ( b ) || c ++ } ) , c } , j = function ( a ) { var b = ! 1 ; return l ( a . childNodes , function ( a ) { if ( m ( a ) ) return b = a , ! 1 } ) , b } , k = function ( b ) { var c , e ; return c = j ( b ) , c && ! a . isBookmarkNode ( c ) && g . matchName ( d , c , u ) && ( e = d . clone ( c , ! 1 ) , y ( e ) , d . replace ( e , b , ! 0 ) , d . remove ( c , 1 ) ) , e || b } ; return f = i ( c ) , ( s . length > 1 || ! d . isBlock ( c ) ) && 0 === f ? void d . remove ( c , 1 ) : void ( ( u . inline || u . wrapper ) && ( u . exact || 1 !== f || ( c = k ( c ) ) , h . mergeWithChildren ( b , t , p , c ) , h . mergeWithParents ( b , u , o , p , c ) , h . mergeBackgroundColorAndF
var L = function ( a ) { return a && ( "IMG" === a . nodeName || e . dom . is ( a , "figure.image" ) ) } , M = function ( a , b ) { return L ( a . target ) && ! f . isXYWithinRange ( a . clientX , a . clientY , b ) } , N = function ( a ) { var b = a . target ; M ( a , e . selection . getRng ( ) ) && ! a . isDefaultPrevented ( ) && ( a . preventDefault ( ) , e . selection . select ( b ) ) } , O = function ( a ) { return e . dom . is ( a , "figure.image" ) ? a . querySelector ( "img" ) : a } , P = function ( a ) { var d = e . settings . object _resizing ; return d !== ! 1 && ! g . iOS && ( "string" != typeof d && ( d = "table,img,figure.image,div" ) , "false" !== a . getAttribute ( "data-mce-resize" ) && ( a != e . getBody ( ) && c . is ( b . fromDom ( a ) , d ) ) ) } , Q = function ( a ) { var b , c , d , f , g ; b = a . screenX - r , c = a . screenY - s , z = b * q [ 2 ] + v , A = c * q [ 3 ] + w , z = z < 5 ? 5 : z , A = A < 5 ? 5 : A , d = L ( l ) && e . settings . resize _img _proportional !== ! 1 ? ! j . modifierPressed ( a ) : j . modifierPressed ( a ) || L ( l ) && q [ 2 ] * q [ 3 ] !== 0 , d && ( H ( b ) > H ( c ) ? ( A = I ( z * x ) , z = I ( A / x ) ) : ( z = I ( A / x ) , A = I ( z * x ) ) ) , D . setStyles ( O ( n ) , { width : z , height : A } ) , f = q . startPos . x + b , g = q . startPos . y + c , f = f > 0 ? f : 0 , g = g > 0 ? g : 0 , D . setStyles ( o , { left : f , top : g , display : "block" } ) , o . innerHTML = z + " × " + A , q [ 2 ] < 0 && n . clientWidth <= z && D . setStyle ( n , "left" , t + ( v - z ) ) , q [ 3 ] < 0 && n . clientHeight <= A && D . setStyle ( n , "top" , u + ( w - A ) ) , b = J . scrollWidth - B , c = J . scrollHeight - C , b + c !== 0 && D . setStyles ( o , { left : f - b , top : g - c } ) , y || ( e . fire ( "ObjectResizeStart" , { target : l , width : v , height : w } ) , y = ! 0 ) } , R = function ( ) { y = ! 1 ; var a = function ( a , b ) { b && ( l . style [ a ] || ! e . schema . isValid ( l . nodeName . toLowerCase ( ) , a ) ? D . setStyle ( O ( l ) , a , b ) : D . setAttrib ( O ( l ) , a , b ) ) } ; a ( "width" , z ) , a ( "height" , A ) , D . unbind ( F , "mousemove" , Q ) , D . unbind ( F , "mouseup" , R ) , G != F && ( D . unbind ( G , "mousemove" , Q ) , D . unbind ( G , "mouseup" , R ) ) , D . remove ( n ) , D . remove ( o ) , S ( l ) , e . fire ( "ObjectResized" , { target : l , width : z , height : A } ) , D . setAttrib ( l , "style" , D . getAttrib ( l , "style" ) ) , e . nodeChanged ( ) } , S = function ( a ) { var b , c , d , f , h ; T ( ) , W ( ) , b = D . getPos ( a , J ) , t = b . x , u = b . y , h = a . getBoundingClientRect ( ) , c = h . width || h . right - h . left , d = h . height || h . bottom - h . top , l != a && ( l = a , z = A = 0 ) , f = e . fire ( "ObjectSelected" , { target : a } ) , P ( a ) && ! f . isDefaultPrevented ( ) ? E ( p , function ( a , b ) { var e , f = function ( b ) { r = b . screenX , s = b . screenY , v = O ( l ) . clientWidth , w = O ( l ) . clientHeight , x = w / v , q = a , a . startPos = { x : c * a [ 0 ] + t , y : d * a [ 1 ] + u } , B = J . scrollWidth , C = J . scrollHeight , n = l . cloneNode ( ! 0 ) , D . addClass ( n , "mce-clonedresizable" ) , D . setAttrib ( n , "data-mce-bogus" , "all" ) , n . contentEditable = ! 1 , n . unSelectabe = ! 0 , D . setStyles ( n , { left : t , top : u , margin : 0 } ) , n . removeAttribute ( "data-mce-selected" ) , J . appendChild ( n ) , D . bind ( F , "mousemove" , Q ) , D . bind ( F , "mouseup" , R ) , G != F && ( D . bind ( G , "mousemove" , Q ) , D . bind ( G , "mouseup" , R ) ) , o = D . add ( J , "div" , { "class" : "mce-resize-helper" , "data-mce-bogus" : "all" } , v + " × " + w ) } ; e = D . get ( "mceResizeHandle" + b ) , e && D . remove ( e ) , e = D . add ( J , "div" , { id : "mceResizeHandle" + b , "data-mce-bogus" : "all" , "class" : "mce-resizehandle" , unselectable : ! 0 , style : "cursor:" + b + "-resize; margin:0; padding:0" } ) , g . ie && ( e . contentEditable = ! 1 ) , D . bind ( e , "mousedown" , function ( a ) { a . stopImmediatePropagation ( ) , a . preventDefault ( ) , f ( a ) } ) , a . elm = e , D . setStyles ( e , { left : c * a [ 0 ] + t - e . offsetWidth / 2 , top : d * a [ 1 ] + u - e . offsetHeight / 2 } ) } ) : T ( ) , l . setAttribute ( "data-mce-selected" , "1" ) } , T = function ( ) { var a , b ; W ( ) , l && l . removeAttribute ( "data-mce-selected" ) ; for ( a in p ) b = D . get ( "mceResizeHandle" + a ) , b && ( D . unbind ( b ) , D . remove ( b ) ) } , U = function ( b ) { var c , d , f = function ( a , b ) { if ( a ) do if ( a === b ) return ! 0 ; while ( a = a . parentNode ) } ; if ( ! y && ! e . removed ) return E ( D . select ( "img[data-mce-selected],hr[data-mce-selected]" ) , function ( a ) { a . removeAttribute ( "data-mce-selected" ) } ) , d = "mousedown" == b . type ? b . target : a . getNode ( ) , d = D . $ ( d ) . closest ( "table,img,figure.image,hr" ) [ 0 ] , f ( d , J ) && ( X ( ) , c = a . getStart ( ! 0 ) , f ( c , d ) && f ( a . getEnd ( ! 0 ) , d ) ) ? void S ( d ) : void T ( ) } , V = function ( a ) { return k ( m ( e . getBody ( ) , a ) ) } , W = function ( ) { for ( var a in p ) { var b = p [ a ] ; b . elm && ( D . unbind ( b . elm ) , delete b . elm ) } } , X = function ( ) { try { e . getDoc ( ) . execCommand ( "enableObjectResizing" , ! 1 , ! 1 ) } catch ( a ) { } } ; e . on ( "init" , function ( ) { X ( ) , g . ie && g . ie >= 11 && ( e . on ( "mousedown click" , function ( a ) { var b = a . target , c = b . nodeName ; y || ! /^(TABLE|IMG|HR)$/ . test ( c ) || V ( b ) || ( 2 !== a . button && e . selection . select ( b , "TABLE" == c ) , "mousedown" == a . type && e . nodeChanged ( ) ) } ) , e . dom . bind ( J , "mscontrolselect" , function ( a ) { var b = function ( a ) { h . setEditorTimeout ( e , function ( ) { e . selection . select ( a ) } ) } ; return V ( a . target ) ? ( a . preventDefault ( ) , void b ( a . target ) ) : void
! g . hasChildNodes ( ) ) return f = n . create ( m ) , u ( a , f ) , g . appendChild ( f ) , c . setStart ( f , 0 ) , c . setEnd ( f , 0 ) , f ; for ( i = d ; i . parentNode !== g ; ) i = i . parentNode ; for ( ; i && ! n . isBlock ( i ) ; ) h = i , i = i . previousSibling ; if ( h && a . schema . isValidChild ( k , m . toLowerCase ( ) ) ) { for ( f = n . create ( m ) , u ( a , f ) , h . parentNode . insertBefore ( f , h ) , i = h ; i && ! n . isBlock ( i ) ; ) j = i . nextSibling , f . appendChild ( i ) , i = j ; c . setStart ( d , e ) , c . setEnd ( d , e ) } } return d } , w = function ( a , b ) { var c ; b . normalize ( ) , c = b . lastChild , c && ! /^(left|right)$/gi . test ( a . getStyle ( c , "float" , ! 0 ) ) || a . add ( b , "br" ) } , x = function ( i , j ) { var k , l , x , y , z , A , B , C , D , E , F , G , H , I = i . dom , J = i . schema , K = J . getNonEmptyElements ( ) , L = i . selection . getRng ( ) , M = function ( b ) { var c , d , f , g = x , h = J . getTextInlineElements ( ) ; if ( b || "TABLE" === E || "HR" === E ? ( c = I . create ( b || G ) , u ( i , c ) ) : c = z . cloneNode ( ! 1 ) , f = c , a . shouldKeepStyles ( i ) === ! 1 ) I . setAttrib ( c , "style" , null ) , I . setAttrib ( c , "class" , null ) ; else do if ( h [ g . nodeName ] ) { if ( e . isCaretNode ( g ) ) continue ; d = g . cloneNode ( ! 1 ) , I . setAttrib ( d , "id" , "" ) , c . hasChildNodes ( ) ? ( d . appendChild ( c . firstChild ) , c . appendChild ( d ) ) : ( f = d , c . appendChild ( d ) ) } while ( ( g = g . parentNode ) && g !== l ) ; return m ( f ) , c } , N = function ( a ) { var b , e , f , g ; if ( g = q ( a , x , y ) , c . isText ( x ) && ( a ? g > 0 : g < x . nodeValue . length ) ) return ! 1 ; if ( x . parentNode === z && H && ! a ) return ! 0 ; if ( a && c . isElement ( x ) && x === z . firstChild ) return ! 0 ; if ( n ( x , "TABLE" ) || n ( x , "HR" ) ) return H && ! a || ! H && a ; for ( b = new d ( x , z ) , c . isText ( x ) && ( a && 0 === g ? b . prev ( ) : a || g !== x . nodeValue . length || b . next ( ) ) ; e = b . current ( ) ; ) { if ( c . isElement ( e ) ) { if ( ! e . getAttribute ( "data-mce-bogus" ) && ( f = e . nodeName . toLowerCase ( ) , K [ f ] && "br" !== f ) ) return ! 1 } else if ( c . isText ( e ) && ! /^[ \t\r\n]*$/ . test ( e . nodeValue ) ) return ! 1 ; a ? b . prev ( ) : b . next ( ) } return ! 0 } , O = function ( ) { B = /^(H[1-6]|PRE|FIGURE)$/ . test ( E ) && "HGROUP" !== F ? M ( G ) : M ( ) , a . shouldEndContainerOnEmtpyBlock ( i ) && o ( I , D ) && I . isEmpty ( z ) ? B = I . split ( D , z ) : I . insertAfter ( B , z ) , g . moveToCaretPosition ( i , B ) } ; if ( h . normalize ( I , L ) . each ( function ( a ) { L . setStart ( a . startContainer , a . startOffset ) , L . setEnd ( a . endContainer , a . endOffset ) } ) , x = L . startContainer , y = L . startOffset , G = a . getForcedRootBlock ( i ) , A = j . shiftKey , c . isElement ( x ) && x . hasChildNodes ( ) && ( H = y > x . childNodes . length - 1 , x = x . childNodes [ Math . min ( y , x . childNodes . length - 1 ) ] || x , y = H && c . isText ( x ) ? x . nodeValue . length : 0 ) , l = t ( I , x ) ) return ( G && ! A || ! G && A ) && ( x = v ( i , G , L , x , y ) ) , z = I . getParent ( x , I . isBlock ) , D = z ? I . getParent ( z . parentNode , I . isBlock ) : null , E = z ? z . nodeName . toUpperCase ( ) : "" , F = D ? D . nodeName . toUpperCase ( ) : "" , "LI" !== F || j . ctrlKey || ( z = D , D = D . parentNode , E = F ) , /^(LI|DT|DD)$/ . test ( E ) && I . isEmpty ( z ) ? void f . insert ( i , M , D , z , G ) : void ( G && z === i . getBody ( ) || ( G = G || "P" , b . isCaretContainerBlock ( z ) ? ( B = b . showCaretContainerBlock ( z ) , I . isEmpty ( z ) && m ( z ) , g . moveToCaretPosition ( i , B ) ) : N ( ) ? O ( ) : N ( ! 0 ) ? ( B = z . parentNode . insertBefore ( M ( ) , z ) , g . moveToCaretPosition ( i , n ( z , "HR" ) ? B : z ) ) : ( k = r ( L ) . cloneRange ( ) , k . setEndAfter ( z ) , C = k . extractContents ( ) , s ( C ) , B = C . firstChild , I . insertAfter ( C , z ) , p ( I , K , B ) , w ( I , z ) , I . isEmpty ( z ) && m ( z ) , B . normalize ( ) , I . isEmpty ( B ) ? ( I . remove ( B ) , O ( ) ) : g . moveToCaretPosition ( i , B ) ) , I . setAttrib ( B , "id" , "" ) , i . fire ( "NewBlock" , { newBlock : B } ) ) ) } ; return { insert : x } } ) , g ( "7m" , [ "1v" , "2z" , "6p" , "7l" ] , function ( a , b , c , d ) { var e = function ( c , e ) { return d . getParentBlock ( c ) . filter ( function ( c ) { return e . length > 0 && b . is ( a . fromDom ( c ) , e ) } ) . isSome ( ) } , f = function ( a ) { return e ( a , c . getBrNewLineSelector ( a ) ) } , g = function ( a ) { return e ( a , c . getNoNewLineSelector ( a ) ) } ; return { shouldInsertBr : f , shouldBlockNewLine : g } } ) , g ( "7j" , [ "5n" , "1i" , "2n" , "6p" , "7m" , "7l" , "5o" ] , function ( a , b , c , d , e , f , g ) { var h = a . generate ( [ { br : [ ] } , { block : [ ] } , { none : [ ] } ] ) , i = function ( a , b ) { return e . shouldBlockNewLine ( a ) } , j = function ( a ) { return function ( b , c ) { var e = "" === d . getForcedRootBlock ( b ) ; return e === a } } , k = function ( a ) { return function ( b , c ) { return f . isListItemParentBlock ( b ) === a } } , l = function ( a ) { return function ( b , c ) { var d = "PRE" === f . getParentBlockName ( b ) ; return d === a } } , m = function ( a ) { return function ( b , c ) { return d . shouldPutBrInPre ( b ) === a } } , n = function ( a , b ) { return e . shouldInsertBr ( a ) } , o = function ( a , b ) { return b } , p = function ( a ) { var b = d . getForcedRootBlock ( a ) , c = f . getEditableRoot ( a . dom , a . selection . getStart ( ) ) ; return c && a . schema . isValidChild ( c . nodeName , b ? b : "P" ) } , q = function ( a , d ) { return function ( e , f ) { var g = b . foldl ( a , function ( a , b ) { return a && b ( e , f ) } , ! 0 ) ; return g ? c . some ( d ) : c . none ( ) } } , r = function ( a , b ) { re
e . dom . setHTML ( f , a ) , e . fire ( "SetContent" , b ) ) : ( "raw" !== b . format && ( a = new l ( { validate : e . validate } , e . schema ) . serialize ( e . parser . parse ( a , { isRootContent : ! 0 , insert : ! 0 } ) ) ) , b . content = u ( a ) , e . dom . setHTML ( f , b . content ) , b . no _events || e . fire ( "SetContent" , b ) ) , b . content } , getContent : function ( a ) { var b , c = this , d = c . getBody ( ) ; if ( c . removed ) return "" ; if ( a = a || { } , a . format = a . format || "html" , a . get = ! 0 , a . getInner = ! 0 , a . no _events || c . fire ( "BeforeGetContent" , a ) , "raw" === a . format ) b = o . trim ( j . trimExternal ( c . serializer , d . innerHTML ) ) ; else if ( "text" === a . format ) b = d . innerText || d . textContent ; else { if ( "tree" === a . format ) return c . serializer . serialize ( d , a ) ; b = c . serializer . serialize ( d , a ) } return "text" !== a . format ? a . content = u ( b ) : a . content = b , a . no _events || c . fire ( "GetContent" , a ) , a . content } , insertContent : function ( a , b ) { b && ( a = s ( { content : a } , b ) ) , this . execCommand ( "mceInsertContent" , ! 1 , a ) } , isDirty : function ( ) { return ! this . isNotDirty } , setDirty : function ( a ) { var b = ! this . isNotDirty ; this . isNotDirty = ! a , a && a != b && this . fire ( "dirty" ) } , setMode : function ( a ) { f . setMode ( this , a ) } , getContainer : function ( ) { var a = this ; return a . container || ( a . container = r . get ( a . editorContainer || a . id + "_parent" ) ) , a . container } , getContentAreaContainer : function ( ) { return this . contentAreaContainer } , getElement : function ( ) { return this . targetElm || ( this . targetElm = r . get ( this . id ) ) , this . targetElm } , getWin : function ( ) { var a , b = this ; return b . contentWindow || ( a = b . iframeElement , a && ( b . contentWindow = a . contentWindow ) ) , b . contentWindow } , getDoc : function ( ) { var a , b = this ; return b . contentDocument || ( a = b . getWin ( ) , a && ( b . contentDocument = a . document ) ) , b . contentDocument } , getBody : function ( ) { var a = this . getDoc ( ) ; return this . bodyElement || ( a ? a . body : null ) } , convertURL : function ( a , b , c ) { var d = this , e = d . settings ; return e . urlconverter _callback ? d . execCallback ( "urlconverter_callback" , a , c , ! 0 , b ) : ! e . convert _urls || c && "LINK" == c . nodeName || 0 === a . indexOf ( "file:" ) || 0 === a . length ? a : e . relative _urls ? d . documentBaseURI . toRelative ( a ) : a = d . documentBaseURI . toAbsolute ( a , e . remove _script _host ) } , addVisual : function ( a ) { var b , c = this , d = c . settings , e = c . dom ; a = a || c . getBody ( ) , void 0 === c . hasVisual && ( c . hasVisual = d . visual ) , t ( e . select ( "table,a" , a ) , function ( a ) { var f ; switch ( a . nodeName ) { case "TABLE" : return b = d . visual _table _class || "mce-item-table" , f = e . getAttrib ( a , "border" ) , void ( f && "0" != f || ! c . hasVisual ? e . removeClass ( a , b ) : e . addClass ( a , b ) ) ; case "A" : return void ( e . getAttrib ( a , "href" , ! 1 ) || ( f = e . getAttrib ( a , "name" ) || a . id , b = d . visual _anchor _class || "mce-item-anchor" , f && c . hasVisual ? e . addClass ( a , b ) : e . removeClass ( a , b ) ) ) } } ) , c . fire ( "VisualAid" , { element : a , hasVisual : c . hasVisual } ) } , remove : function ( ) { var a = this ; a . removed || ( a . save ( ) , a . removed = 1 , a . unbindAllNativeEvents ( ) , a . hasHiddenInput && r . remove ( a . getElement ( ) . nextSibling ) , a . inline || ( w && w < 10 && a . getDoc ( ) . execCommand ( "SelectAll" , ! 1 , null ) , r . setStyle ( a . id , "display" , a . orgDisplay ) , a . getBody ( ) . onload = null ) , a . fire ( "remove" ) , a . editorManager . remove ( a ) , r . remove ( a . getContainer ( ) ) , a . _selectionOverrides . destroy ( ) , a . editorUpload . destroy ( ) , a . destroy ( ) ) } , destroy : function ( a ) { var b , c = this ; if ( ! c . destroyed ) { if ( ! a && ! c . removed ) return void c . remove ( ) ; a || ( c . editorManager . off ( "beforeunload" , c . _beforeUnload ) , c . theme && c . theme . destroy && c . theme . destroy ( ) , c . selection . destroy ( ) , c . dom . destroy ( ) ) , b = c . formElement , b && ( b . _mceOldSubmit && ( b . submit = b . _mceOldSubmit , b . _mceOldSubmit = null ) , r . unbind ( b , "submit reset" , c . formEventDelegate ) ) , c . contentAreaContainer = c . formElement = c . container = c . editorContainer = null , c . bodyElement = c . contentDocument = c . contentWindow = null , c . iframeElement = c . targetElm = null , c . selection && ( c . selection = c . selection . win = c . selection . dom = c . selection . dom . doc = null ) , c . destroyed = 1 } } , uploadImages : function ( a ) { return this . editorUpload . uploadImages ( a ) } , _scanForImages : function ( ) { return this . editorUpload . scanForImages ( ) } } , s ( x . prototype , c ) , x } ) , g ( "e" , [ "1j" ] , function ( a ) { var b = function ( a ) { return a . className . toString ( ) . indexOf ( "mce-" ) !== - 1 } ; return { isEditorUIElement : b } } ) , g ( "4m" , [ "5y" , "3d" , "1j" , "m" , "20" ] , function ( a , b , c , d , e ) { var f = function ( a ) { return "nodechange" === a . type && a . selectionChange } , g = function ( a , b ) { var e = function ( ) { b . throttle ( ) } ; d . DOM . bind ( c , "mouseup" , e ) , a . on ( "remove" , function ( ) { d . DOM . unbind ( c , "mouseup" , e ) } ) } , h = function ( a ) { a . on ( "focusout" ,