2017-09-26 15:18:20 +02:00
// 4.6.7 (2017-09-18)
! 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 . push ( d ( a [ f ] ) ) ; b . apply ( null , b ) } , f = { } ; f . bolt = { module : { api : { define : c , require : e , demand : d } } } ; var g = c , h = function ( a , b ) { g ( a , [ ] , function ( ) { return b } ) } ; h ( "3" , Array ) , h ( "4" , Error ) , g ( "1" , [ "3" , "4" ] , function ( a , b ) { var c = function ( ) { } , d = function ( a , b ) { return function ( ) { return a ( b . apply ( null , arguments ) ) } } , e = function ( a ) { return function ( ) { return a } } , f = function ( a ) { return a } , g = function ( a , b ) { return a === b } , h = 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 ) } } , i = function ( a ) { return function ( ) { return ! a . apply ( null , arguments ) } } , j = function ( a ) { return function ( ) { throw new b ( a ) } } , k = function ( a ) { return a ( ) } , l = function ( a ) { a ( ) } , m = e ( ! 1 ) , n = e ( ! 0 ) ; return { noop : c , compose : d , constant : e , identity : f , tripleEquals : g , curry : h , not : i , die : j , apply : k , call : l , never : m , always : n } } ) , g ( "1c" , [ ] , function ( ) { function a ( a , b ) { return function ( ) { a . apply ( b , arguments ) } } function b ( b ) { if ( "object" != typeof this ) throw new TypeError ( "Promises must be constructed via new" ) ; if ( "function" != typeof b ) throw new TypeError ( "not a function" ) ; this . _state = null , this . _value = null , this . _deferreds = [ ] , h ( b , a ( d , this ) , a ( e , this ) ) } function c ( a ) { var b = this ; return null === this . _state ? void this . _deferreds . push ( a ) : void i ( function ( ) { var c = b . _state ? a . onFulfilled : a . onRejected ; if ( null === c ) return void ( b . _state ? a . resolve : a . reject ) ( b . _value ) ; var d ; try { d = c ( b . _value ) } catch ( b ) { return void a . reject ( b ) } a . resolve ( d ) } ) } function d ( b ) { try { if ( b === this ) throw new TypeError ( "A promise cannot be resolved with itself." ) ; if ( b && ( "object" == typeof b || "function" == typeof b ) ) { var c = b . then ; if ( "function" == typeof c ) return void h ( a ( c , b ) , a ( d , this ) , a ( e , this ) ) } this . _state = ! 0 , this . _value = b , f . call ( this ) } catch ( a ) { e . call ( this , a ) } } function e ( a ) { this . _state = ! 1 , this . _value = a , f . call ( this ) } function f ( ) { for ( var a = 0 , b = this . _deferreds . length ; a < b ; a ++ ) c . call ( this , this . _deferreds [ a ] ) ; this . _deferreds = null } function g ( a , b , c , d ) { this . onFulfilled = "function" == typeof a ? a : null , this . onRejected = "function" == typeof b ? b : null , this . resolve = c , this . reject = d } function h ( a , b , c ) { var d = ! 1 ; try { a ( function ( a ) { d || ( d = ! 0 , b ( a ) ) } , function ( a ) { d || ( d = ! 0 , c ( a ) ) } ) } catch ( a ) { if ( d ) return ; d = ! 0 , c ( a ) } } if ( window . Promise ) return window . Promise ; var i = b . immediateFn || "function" == typeof setImmediate && setImmediate || function ( a ) { setTimeout ( a , 1 ) } , j = Array . isArray || function ( a ) { return "[object Array]" === Object . prototype . toString . call ( a ) } ; return b . prototype [ "catch" ] = function ( a ) { return this . then ( null , a ) } , b . prototype . then = function ( a , d ) { var e = this ; return new b ( function ( b , f ) { c . call ( e , new g ( a , d , b , f ) ) } ) } , b . all = function ( ) { var a = Array . prototype . slice . call ( 1 === arguments . length && j ( arguments [ 0 ] ) ? arguments [ 0 ] : arguments ) ; return new b ( function ( b , c ) { function d ( f , g ) { try { if ( g && ( "object" == typeof g || "function" == typeof g ) ) { var h = g . then ; if ( "function" == typeof h ) return void h . call ( g , function ( a ) { d ( f , a ) } , c ) } a [ f ] = g , 0 === -- e && b ( a ) } catch ( a ) { c ( a ) } } if ( 0 === a . length ) return b ( [ ] ) ; for ( var e = a . length , f = 0 ; f < a . length ; f ++ ) d ( f , a [ f ] ) } ) } , b . resolve = function ( a ) { return a && "object" == typeof a && a . constructor === b ? a : new b ( function ( b ) { b ( a ) } ) } , b . reject = function ( a ) { return new b ( function ( b , c ) { c ( a ) } ) } , b . race = function ( a ) { return new b ( function ( b , c ) { for ( var d = 0 , e = a . length ; d < e ; d ++ ) a [ d ] . then ( b , c ) } ) } , b } ) , g ( "14" , [ "1c" ] , function ( a ) { function b ( a , b ) { function c ( a ) { window . setTimeout ( a , 0 ) } var d , e = window . requestAnimationFrame , f = [ "ms" , "moz" , "webkit" ] ; for ( d = 0 ; d < f . length && ! e ; d ++ ) e = window [ f [ d ] + "RequestAnimationFrame" ] ; e || ( e = c ) , e ( a , b ) } function c (
length : 0 , init : function ( a , b ) { var c , d , e = this ; if ( ! a ) return e ; if ( a . nodeType ) return e . context = e [ 0 ] = a , e . length = 1 , e ; if ( b && b . nodeType ) e . context = b ; else { if ( b ) return l ( a ) . attr ( b ) ; e . context = b = document } if ( f ( a ) ) { if ( e . selector = a , c = "<" === a . charAt ( 0 ) && ">" === a . charAt ( a . length - 1 ) && a . length >= 3 ? [ null , a , null ] : z . exec ( a ) , ! c ) return l ( b ) . find ( a ) ; if ( c [ 1 ] ) for ( d = h ( a , q ( b ) ) . firstChild ; d ; ) x . call ( e , d ) , d = d . nextSibling ; else { if ( d = q ( b ) . getElementById ( c [ 2 ] ) , ! d ) return e ; if ( d . id !== c [ 2 ] ) return e . find ( a ) ; e . length = 1 , e [ 0 ] = d } } else this . add ( a , ! 1 ) ; return e } , toArray : function ( ) { return c . toArray ( this ) } , add : function ( a , b ) { var c , d , e = this ; if ( f ( a ) ) return e . add ( l ( a ) ) ; if ( b !== ! 1 ) for ( c = l . unique ( e . toArray ( ) . concat ( l . makeArray ( a ) ) ) , e . length = c . length , d = 0 ; d < c . length ; d ++ ) e [ d ] = c [ d ] ; else x . apply ( e , l . makeArray ( a ) ) ; return e } , attr : function ( a , b ) { var c , d = this ; if ( "object" == typeof a ) o ( a , function ( a , b ) { d . attr ( a , b ) } ) ; else { if ( ! e ( b ) ) { if ( d [ 0 ] && 1 === d [ 0 ] . nodeType ) { if ( c = G [ a ] , c && c . get ) return c . get ( d [ 0 ] , a ) ; if ( D [ a ] ) return d . prop ( a ) ? a : v ; b = d [ 0 ] . getAttribute ( a , 2 ) , null === b && ( b = v ) } return b } this . each ( function ( ) { var c ; if ( 1 === this . nodeType ) { if ( c = G [ a ] , c && c . set ) return void c . set ( this , b ) ; null === b ? this . removeAttribute ( a , 2 ) : this . setAttribute ( a , b , 2 ) } } ) } return d } , removeAttr : function ( a ) { return this . attr ( a , null ) } , prop : function ( a , b ) { var c = this ; if ( a = E [ a ] || a , "object" == typeof a ) o ( a , function ( a , b ) { c . prop ( a , b ) } ) ; else { if ( ! e ( b ) ) return c [ 0 ] && c [ 0 ] . nodeType && a in c [ 0 ] ? c [ 0 ] [ a ] : b ; this . each ( function ( ) { 1 == this . nodeType && ( this [ a ] = b ) } ) } return c } , css : function ( a , b ) { function c ( a ) { return a . replace ( /-(\D)/g , function ( a , b ) { return b . toUpperCase ( ) } ) } function d ( a ) { return a . replace ( /[A-Z]/g , function ( a ) { return "-" + a } ) } var f , g , h = this ; if ( "object" == typeof a ) o ( a , function ( a , b ) { h . css ( a , b ) } ) ; else if ( e ( b ) ) a = c ( a ) , "number" != typeof b || C [ a ] || ( b += "px" ) , h . each ( function ( ) { var c = this . style ; if ( g = H [ a ] , g && g . set ) return void g . set ( this , b ) ; try { this . style [ F [ a ] || a ] = b } catch ( a ) { } null !== b && "" !== b || ( c . removeProperty ? c . removeProperty ( d ( a ) ) : c . removeAttribute ( a ) ) } ) ; else { if ( f = h [ 0 ] , g = H [ a ] , g && g . get ) return g . get ( f ) ; if ( f . ownerDocument . defaultView ) try { return f . ownerDocument . defaultView . getComputedStyle ( f , null ) . getPropertyValue ( d ( a ) ) } catch ( a ) { return v } else if ( f . currentStyle ) return f . currentStyle [ c ( a ) ] } return h } , remove : function ( ) { for ( var a , b = this , c = this . length ; c -- ; ) a = b [ c ] , A . clean ( a ) , a . parentNode && a . parentNode . removeChild ( a ) ; return this } , empty : function ( ) { for ( var a , b = this , c = this . length ; c -- ; ) for ( a = b [ c ] ; a . firstChild ; ) a . removeChild ( a . firstChild ) ; return this } , html : function ( a ) { var b , c = this ; if ( e ( a ) ) { b = c . length ; try { for ( ; b -- ; ) c [ b ] . innerHTML = a } catch ( d ) { l ( c [ b ] ) . empty ( ) . append ( a ) } return c } return c [ 0 ] ? c [ 0 ] . innerHTML : "" } , text : function ( a ) { var b , c = this ; if ( e ( a ) ) { for ( b = c . length ; b -- ; ) "innerText" in c [ b ] ? c [ b ] . innerText = a : c [ 0 ] . textContent = a ; return c } return c [ 0 ] ? c [ 0 ] . innerText || c [ 0 ] . textContent : "" } , append : function ( ) { return i ( this , arguments , function ( a ) { ( 1 === this . nodeType || this . host && 1 === this . host . nodeType ) && this . appendChild ( a ) } ) } , prepend : function ( ) { return i ( this , arguments , function ( a ) { ( 1 === this . nodeType || this . host && 1 === this . host . nodeType ) && this . insertBefore ( a , this . firstChild ) } , ! 0 ) } , before : function ( ) { var a = this ; return a [ 0 ] && a [ 0 ] . parentNode ? i ( a , arguments , function ( a ) { this . parentNode . insertBefore ( a , this ) } ) : a } , after : function ( ) { var a = this ; return a [ 0 ] && a [ 0 ] . parentNode ? i ( a , arguments , function ( a ) { this . parentNode . insertBefore ( a , this . nextSibling ) } , ! 0 ) : a } , appendTo : function ( a ) { return l ( a ) . append ( this ) , this } , prependTo : function ( a ) { return l ( a ) . prepend ( this ) , this } , replaceWith : function ( a ) { return this . before ( a ) . remove ( ) } , wrap : function ( a ) { return k ( this , a ) } , wrapAll : function ( a ) { return k ( this , a , ! 0 ) } , wrapInner : function ( a ) { return this . each ( function ( ) { l ( this ) . contents ( ) . wrapAll ( a ) } ) , this } , unwrap : function ( ) { return this . parent ( ) . each ( function ( ) { l ( this ) . replaceWith ( this . childNodes ) } ) } , clone : function ( ) { var a = [ ] ; return this . each ( function ( ) { a . push ( this . cloneNode ( ! 0 ) ) } ) , l ( a ) } , addClass : function ( a ) { return this . toggleClass ( a , ! 0 ) } , removeClass : function ( a ) { return this . toggleClass ( a , ! 1 ) } , toggleClass : function ( a , b ) { var c = this ; return "string" != typeof a ? c : ( a . indexOf ( " " ) !== - 1 ? o ( a . split ( " " ) , function ( ) { c . toggleClass ( this , b ) } ) : c . each ( function ( c , d ) { var e , f ; f = j ( d
d ( "form" , "accept" ) , d ( "td" , "abbr axis scope align char charoff valign nowrap bgcolor width height" ) , d ( "tfoot" , "align char charoff valign" ) , d ( "tbody" , "align char charoff valign" ) , d ( "area" , "nohref" ) , d ( "body" , "background bgcolor text link vlink alink" ) ) , "html4" != a && ( d ( "input button select textarea" , "autofocus" ) , d ( "input textarea" , "placeholder" ) , d ( "a" , "download" ) , d ( "link script img" , "crossorigin" ) , d ( "iframe" , "sandbox seamless allowfullscreen" ) ) , h ( b ( "a form meter progress dfn" ) , function ( a ) { n [ a ] && delete n [ a ] . children [ a ] } ) , delete n . caption . children . table , delete n . script , e [ a ] = n , n ) } function d ( a , b ) { var c ; return a && ( c = { } , "string" == typeof a && ( a = { "*" : a } ) , h ( a , function ( a , d ) { c [ d ] = c [ d . toUpperCase ( ) ] = "map" == b ? g ( a , /[, ]/ ) : j ( a , /[, ]/ ) } ) ) , c } var e = { } , f = { } , g = a . makeMap , h = a . each , i = a . extend , j = a . explode , k = a . inArray ; return function ( a ) { function f ( b , c , d ) { var f = a [ b ] ; return f ? f = g ( f , /[, ]/ , g ( f . toUpperCase ( ) , /[, ]/ ) ) : ( f = e [ b ] , f || ( f = g ( c , " " , g ( c . toUpperCase ( ) , " " ) ) , f = i ( f , d ) , e [ b ] = f ) ) , f } function l ( a ) { return new RegExp ( "^" + a . replace ( /([?+*])/g , ".$1" ) + "$" ) } function m ( a ) { var c , d , e , f , h , i , j , m , n , o , p , q , r , s , t , u , v , w , x , y = /^([#+\-])?([^\[!\/]+)(?:\/([^\[!]+))?(?:(!?)\[([^\]]+)\])?$/ , z = /^([!\-])?(\w+::\w+|[^=:<]+)?(?:([=:<])(.*))?$/ , A = /[*?+]/ ; if ( a ) for ( a = b ( a , "," ) , F [ "@" ] && ( u = F [ "@" ] . attributes , v = F [ "@" ] . attributesOrder ) , c = 0 , d = a . length ; c < d ; c ++ ) if ( h = y . exec ( a [ c ] ) ) { if ( s = h [ 1 ] , n = h [ 2 ] , t = h [ 3 ] , m = h [ 5 ] , q = { } , r = [ ] , i = { attributes : q , attributesOrder : r } , "#" === s && ( i . paddEmpty = ! 0 ) , "-" === s && ( i . removeEmpty = ! 0 ) , "!" === h [ 4 ] && ( i . removeEmptyAttrs = ! 0 ) , u ) { for ( w in u ) q [ w ] = u [ w ] ; r . push . apply ( r , v ) } if ( m ) for ( m = b ( m , "|" ) , e = 0 , f = m . length ; e < f ; e ++ ) if ( h = z . exec ( m [ e ] ) ) { if ( j = { } , p = h [ 1 ] , o = h [ 2 ] . replace ( /::/g , ":" ) , s = h [ 3 ] , x = h [ 4 ] , "!" === p && ( i . attributesRequired = i . attributesRequired || [ ] , i . attributesRequired . push ( o ) , j . required = ! 0 ) , "-" === p ) { delete q [ o ] , r . splice ( k ( r , o ) , 1 ) ; continue } s && ( "=" === s && ( i . attributesDefault = i . attributesDefault || [ ] , i . attributesDefault . push ( { name : o , value : x } ) , j . defaultValue = x ) , ":" === s && ( i . attributesForced = i . attributesForced || [ ] , i . attributesForced . push ( { name : o , value : x } ) , j . forcedValue = x ) , "<" === s && ( j . validValues = g ( x , "?" ) ) ) , A . test ( o ) ? ( i . attributePatterns = i . attributePatterns || [ ] , j . pattern = l ( o ) , i . attributePatterns . push ( j ) ) : ( q [ o ] || r . push ( o ) , q [ o ] = j ) } u || "@" != n || ( u = q , v = r ) , t && ( i . outputName = n , F [ t ] = i ) , A . test ( n ) ? ( i . pattern = l ( n ) , H . push ( i ) ) : F [ n ] = i } } function n ( a ) { F = { } , H = [ ] , m ( a ) , h ( t , function ( a , b ) { G [ b ] = a . children } ) } function o ( a ) { var c = /^(~)?(.+)$/ ; a && ( e . text _block _elements = e . block _elements = null , h ( b ( a , "," ) , function ( a ) { var b = c . exec ( a ) , d = "~" === b [ 1 ] , e = d ? "span" : "div" , f = b [ 2 ] ; if ( G [ f ] = G [ e ] , I [ f ] = e , d || ( z [ f . toUpperCase ( ) ] = { } , z [ f ] = { } ) , ! F [ f ] ) { var g = F [ e ] ; g = i ( { } , g ) , delete g . removeEmptyAttrs , delete g . removeEmpty , F [ f ] = g } h ( G , function ( a , b ) { a [ e ] && ( G [ b ] = a = i ( { } , G [ b ] ) , a [ f ] = a [ e ] ) } ) } ) ) } function p ( c ) { var d = /^([+\-]?)(\w+)\[([^\]]+)\]$/ ; e [ a . schema ] = null , c && h ( b ( c , "," ) , function ( a ) { var c , e , f = d . exec ( a ) ; f && ( e = f [ 1 ] , c = e ? G [ f [ 2 ] ] : G [ f [ 2 ] ] = { "#comment" : { } } , c = G [ f [ 2 ] ] , h ( b ( f [ 3 ] , "|" ) , function ( a ) { "-" === e ? delete c [ a ] : c [ a ] = { } } ) ) } ) } function q ( a ) { var b , c = F [ a ] ; if ( c ) return c ; for ( b = H . length ; b -- ; ) if ( c = H [ b ] , c . pattern . test ( a ) ) return c } var r , s , t , u , v , w , x , y , z , A , B , C , D , E = this , F = { } , G = { } , H = [ ] , I = { } , J = { } ; a = a || { } , t = c ( a . schema ) , a . verify _html === ! 1 && ( a . valid _elements = "*[*]" ) , r = d ( a . valid _styles ) , s = d ( a . invalid _styles , "map" ) , y = d ( a . valid _classes , "map" ) , u = f ( "whitespace_elements" , "pre script noscript style textarea video audio iframe object code" ) , v = f ( "self_closing_elements" , "colgroup dd dt li option p td tfoot th thead tr" ) , w = f ( "short_ended_elements" , "area base basefont br col frame hr img input isindex link meta param embed source wbr track" ) , x = f ( "boolean_attributes" , "checked compact declare defer disabled ismap multiple nohref noresize noshade nowrap readonly selected autoplay loop controls" ) , A = f ( "non_empty_elements" , "td th iframe video audio object script pre code" , w ) , B = f ( "move_caret_before_on_enter_elements" , "table" , A ) , C = f ( "text_block_elements" , "h1 h2 h3 h4 h5 h6 p div address pre form blockquote center dir fieldset header footer article section hgroup aside nav figure" ) , z = f ( "block_elements" , " hr table tbody thead tfoot th tr td li ol ul caption dl dt dd noscript menu isindex option datalist sel
} function m ( c , d ) { var g , h , i ; if ( d = d || n , i = a . getParent ( d . parentNode , a . isBlock ) || w , c && "BR" == d . nodeName && v && a . isEmpty ( i ) ) return n = d . parentNode , o = a . nodeIndex ( d ) , void ( f = ! 0 ) ; for ( g = new b ( d , i ) ; q = g [ c ? "prev" : "next" ] ( ) ; ) { if ( "false" === a . getContentEditableParent ( q ) || l ( q , a . getRoot ( ) ) ) return ; if ( 3 === q . nodeType && q . nodeValue . length > 0 ) return void ( j ( q , w , "A" ) === ! 1 && ( n = q , o = c ? q . nodeValue . length : 0 , f = ! 0 ) ) ; if ( a . isBlock ( q ) || t [ q . nodeName . toLowerCase ( ) ] ) return ; h = q } e && h && ( n = h , f = ! 0 , o = 0 ) } var n , o , p , q , t , u , v , w = a . getRoot ( ) ; if ( n = c [ ( d ? "start" : "end" ) + "Container" ] , o = c [ ( d ? "start" : "end" ) + "Offset" ] , v = 1 == n . nodeType && o === n . childNodes . length , t = a . schema . getNonEmptyElements ( ) , u = d , ! s ( n ) ) { if ( 1 == n . nodeType && o > n . childNodes . length - 1 && ( u = ! 1 ) , 9 === n . nodeType && ( n = a . getRoot ( ) , o = 0 ) , n === w ) { if ( u && ( q = n . childNodes [ o > 0 ? o - 1 : 0 ] ) ) { if ( s ( q ) ) return ; if ( t [ q . nodeName ] || "TABLE" == q . nodeName ) return } if ( n . hasChildNodes ( ) ) { if ( o = Math . min ( ! u && o > 0 ? o - 1 : o , n . childNodes . length - 1 ) , n = n . childNodes [ o ] , o = 0 , ! e && n === w . lastChild && "TABLE" === n . nodeName ) return ; if ( i ( n ) || s ( n ) ) return ; if ( n . hasChildNodes ( ) && ! /TABLE/ . test ( n . nodeName ) ) { q = n , p = new b ( n , w ) ; do { if ( r ( q ) || s ( q ) ) { f = ! 1 ; break } if ( 3 === q . nodeType && q . nodeValue . length > 0 ) { o = u ? 0 : q . nodeValue . length , n = q , f = ! 0 ; break } if ( t [ q . nodeName . toLowerCase ( ) ] && ! g ( q ) ) { o = a . nodeIndex ( q ) , n = q . parentNode , "IMG" !== q . nodeName && "PRE" !== q . nodeName || u || o ++ , f = ! 0 ; break } } while ( q = u ? p . next ( ) : p . prev ( ) ) } } } e && ( 3 === n . nodeType && 0 === o && m ( ! 0 ) , 1 === n . nodeType && ( q = n . childNodes [ o ] , q || ( q = n . childNodes [ o - 1 ] ) , ! q || "BR" !== q . nodeName || k ( q , "A" ) || h ( q ) || h ( q , ! 0 ) || m ( ! 0 , q ) ) ) , u && ! e && 3 === n . nodeType && o === n . nodeValue . length && m ( ! 1 ) , f && c [ "set" + ( d ? "Start" : "End" ) ] ( n , o ) } } var e , f = ! 1 ; return e = c . collapsed , d ( ! 0 ) , e || d ( ) , f && e && c . collapse ( ! 0 ) , f } } function n ( b , c , d ) { var e , f , g ; if ( e = d . elementFromPoint ( b , c ) , f = d . body . createTextRange ( ) , e && "HTML" != e . tagName || ( e = d . body ) , f . moveToElementText ( e ) , g = a . toArray ( f . getClientRects ( ) ) , g = g . sort ( function ( a , b ) { return a = Math . abs ( Math . max ( a . top - c , a . bottom - c ) ) , b = Math . abs ( Math . max ( b . top - c , b . bottom - c ) ) , a - b } ) , g . length > 0 ) { c = ( g [ 0 ] . bottom + g [ 0 ] . top ) / 2 ; try { return f . moveToPoint ( b , c ) , f . collapse ( ! 0 ) , f } catch ( a ) { } } return null } function o ( a , b ) { var c = a && a . parentElement ? a . parentElement ( ) : null ; return r ( h ( c , b , f ) ) ? null : a } var p = a . each , q = c . isContentEditableTrue , r = c . isContentEditableFalse , s = e . isCaretContainer ; return m . compareRanges = function ( a , b ) { if ( a && b ) { if ( ! a . item && ! a . duplicate ) return a . startContainer == b . startContainer && a . startOffset == b . startOffset ; if ( a . item && b . item && a . item ( 0 ) === b . item ( 0 ) ) return ! 0 ; if ( a . isEqual && b . isEqual && b . isEqual ( a ) ) return ! 0 } return ! 1 } , m . getCaretRangeFromPoint = function ( a , b , c ) { var d , e ; if ( c . caretPositionFromPoint ) e = c . caretPositionFromPoint ( a , b ) , d = c . createRange ( ) , d . setStart ( e . offsetNode , e . offset ) , d . collapse ( ! 0 ) ; else if ( c . caretRangeFromPoint ) d = c . caretRangeFromPoint ( a , b ) ; else if ( c . body . createTextRange ) { d = c . body . createTextRange ( ) ; try { d . moveToPoint ( a , b ) , d . collapse ( ! 0 ) } catch ( e ) { d = n ( a , b , c ) } return o ( d , c . body ) } return d } , m . getSelectedNode = function ( a ) { var b = a . startContainer , c = a . startOffset ; return b . hasChildNodes ( ) && a . endOffset == c + 1 ? b . childNodes [ c ] : null } , m . getNode = function ( a , b ) { return 1 === a . nodeType && a . hasChildNodes ( ) && ( b >= a . childNodes . length && ( b = a . childNodes . length - 1 ) , a = a . childNodes [ b ] ) , a } , m } ) , g ( "4j" , [ "21" , "1h" , "1z" ] , function ( a , b , c ) { function d ( a ) { return ! p ( a ) && ( l ( a ) ? ! m ( a . parentNode ) : n ( a ) || k ( a ) || o ( a ) || j ( a ) ) } function e ( a , b ) { for ( a = a . parentNode ; a && a != b ; a = a . parentNode ) { if ( j ( a ) ) return ! 1 ; if ( i ( a ) ) return ! 0 } return ! 0 } function f ( a ) { return ! ! j ( a ) && b . reduce ( a . getElementsByTagName ( "*" ) , function ( a , b ) { return a || i ( b ) } , ! 1 ) !== ! 0 } function g ( a ) { return n ( a ) || f ( a ) } function h ( a , b ) { return d ( a ) && e ( a , b ) } var i = a . isContentEditableTrue , j = a . isContentEditableFalse , k = a . isBr , l = a . isText , m = a . matchNodeNames ( "script style textarea" ) , n = a . matchNodeNames ( "img input textarea hr iframe video audio object" ) , o = a . matchNodeNames ( "table" ) , p = c . isCaretContainer ; return { isCaretCandidate : d , isInEditable : e , isAtomic : g , isEditableCaretCandidate : h } } ) , g ( "4k" , [ ] , function ( ) { function a ( a ) { return a ? { left : k ( a . left ) , top : k ( a . top ) , bottom : k ( a . bottom ) , right : k ( a . right ) , width : k ( a . width ) , height : k ( a . height ) } : { left : 0 , top : 0 , bottom : 0 , right : 0 , width : 0 , height : 0 } } function b ( b , c ) { return b = a ( b ) , c ? b . right = b . left : ( b . left = b . left +
name : "Windows" , search : d ( "win" ) , versionRegexes : [ /.*?windows\ nt\ ?([0-9]+)\.([0-9]+).*/ ] } , { name : "iOS" , search : function ( a ) { return b . contains ( a , "iphone" ) || b . contains ( a , "ipad" ) } , versionRegexes : [ /.*?version\/\ ?([0-9]+)\.([0-9]+).*/ , /.*cpu os ([0-9]+)_([0-9]+).*/ , /.*cpu iphone os ([0-9]+)_([0-9]+).*/ ] } , { name : "Android" , search : d ( "android" ) , versionRegexes : [ /.*?android\ ?([0-9]+)\.([0-9]+).*/ ] } , { name : "OSX" , search : d ( "os x" ) , versionRegexes : [ /.*?os\ x\ ?([0-9]+)_([0-9]+).*/ ] } , { name : "Linux" , search : d ( "linux" ) , versionRegexes : [ ] } , { name : "Solaris" , search : d ( "sunos" ) , versionRegexes : [ ] } , { name : "FreeBSD" , search : d ( "freebsd" ) , versionRegexes : [ ] } ] ; return { browsers : a . constant ( e ) , oses : a . constant ( f ) } } ) , g ( "68" , [ "71" , "72" , "73" , "74" , "75" ] , function ( a , b , c , d , e ) { var f = function ( f ) { var g = e . browsers ( ) , h = e . oses ( ) , i = d . detectBrowser ( g , f ) . fold ( a . unknown , a . nu ) , j = d . detectOs ( h , f ) . fold ( b . unknown , b . nu ) , k = c ( j , i , f ) ; return { browser : i , os : j , deviceType : k } } ; return { detect : f } } ) , h ( "69" , navigator ) , g ( "4u" , [ "67" , "68" , "69" ] , function ( a , b , c ) { var d = a . cached ( function ( ) { var a = c . userAgent ; return b . detect ( a ) } ) ; return { detect : d } } ) , g ( "4w" , [ ] , function ( ) { return { ATTRIBUTE : 2 , CDATA _SECTION : 4 , COMMENT : 8 , DOCUMENT : 9 , DOCUMENT _TYPE : 10 , DOCUMENT _FRAGMENT : 11 , ELEMENT : 1 , TEXT : 3 , PROCESSING _INSTRUCTION : 7 , ENTITY _REFERENCE : 5 , ENTITY : 6 , NOTATION : 12 } } ) , g ( "24" , [ "1t" , "1u" , "23" , "4w" , "4" , "2i" ] , function ( a , b , c , d , e , f ) { var g = 0 , h = 1 , i = 2 , j = 3 , k = function ( ) { var a = f . createElement ( "span" ) ; return void 0 !== a . matches ? g : void 0 !== a . msMatchesSelector ? h : void 0 !== a . webkitMatchesSelector ? i : void 0 !== a . mozMatchesSelector ? j : - 1 } ( ) , l = d . ELEMENT , m = d . DOCUMENT , n = function ( a , b ) { var c = a . dom ( ) ; if ( c . nodeType !== l ) return ! 1 ; if ( k === g ) return c . matches ( b ) ; if ( k === h ) return c . msMatchesSelector ( b ) ; if ( k === i ) return c . webkitMatchesSelector ( b ) ; if ( k === j ) return c . mozMatchesSelector ( b ) ; throw new e ( "Browser lacks native selectors" ) } , o = function ( a ) { return a . nodeType !== l && a . nodeType !== m || 0 === a . childElementCount } , p = function ( b , d ) { var e = void 0 === d ? f : d . dom ( ) ; return o ( e ) ? [ ] : a . map ( e . querySelectorAll ( b ) , c . fromDom ) } , q = function ( a , d ) { var e = void 0 === d ? f : d . dom ( ) ; return o ( e ) ? b . none ( ) : b . from ( e . querySelector ( a ) ) . map ( c . fromDom ) } ; return { all : p , is : n , one : q } } ) , g ( "26" , [ "1t" , "1" , "4t" , "4u" , "24" ] , function ( a , b , c , d , e ) { var f = function ( a , b ) { return a . dom ( ) === b . dom ( ) } , g = function ( a , b ) { return a . dom ( ) . isEqualNode ( b . dom ( ) ) } , h = function ( c , d ) { return a . exists ( d , b . curry ( f , c ) ) } , i = function ( a , b ) { var c = a . dom ( ) , d = b . dom ( ) ; return c !== d && c . contains ( d ) } , j = function ( a , b ) { return c . documentPositionContainedBy ( a . dom ( ) , b . dom ( ) ) } , k = d . detect ( ) . browser , l = k . isIE ( ) ? j : i ; return { eq : f , isEqualNode : g , member : h , contains : l , is : e . is } } ) , g ( "4y" , [ "2k" , "1t" , "1" , "1u" , "5q" , "65" , "26" , "23" ] , function ( a , b , c , d , e , f , g , h ) { var i = function ( a ) { return h . fromDom ( a . dom ( ) . ownerDocument ) } , j = function ( a ) { var b = i ( a ) ; return h . fromDom ( b . dom ( ) . documentElement ) } , k = function ( a ) { var b = a . dom ( ) , c = b . ownerDocument . defaultView ; return h . fromDom ( c ) } , l = function ( a ) { var b = a . dom ( ) ; return d . from ( b . parentNode ) . map ( h . fromDom ) } , m = function ( a ) { return l ( a ) . bind ( function ( c ) { var d = u ( c ) ; return b . findIndex ( d , function ( b ) { return g . eq ( a , b ) } ) } ) } , n = function ( b , d ) { for ( var e = a . isFunction ( d ) ? d : c . constant ( ! 1 ) , f = b . dom ( ) , g = [ ] ; null !== f . parentNode && void 0 !== f . parentNode ; ) { var i = f . parentNode , j = h . fromDom ( i ) ; if ( g . push ( j ) , e ( j ) === ! 0 ) break ; f = i } return g } , o = function ( a ) { var c = function ( c ) { return b . filter ( c , function ( b ) { return ! g . eq ( a , b ) } ) } ; return l ( a ) . map ( u ) . map ( c ) . getOr ( [ ] ) } , p = function ( a ) { var b = a . dom ( ) ; return d . from ( b . offsetParent ) . map ( h . fromDom ) } , q = function ( a ) { var b = a . dom ( ) ; return d . from ( b . previousSibling ) . map ( h . fromDom ) } , r = function ( a ) { var b = a . dom ( ) ; return d . from ( b . nextSibling ) . map ( h . fromDom ) } , s = function ( a ) { return b . reverse ( f . toArray ( a , q ) ) } , t = function ( a ) { return f . toArray ( a , r ) } , u = function ( a ) { var c = a . dom ( ) ; return b . map ( c . childNodes , h . fromDom ) } , v = function ( a , b ) { var c = a . dom ( ) . childNodes ; return d . from ( c [ b ] ) . map ( h . fromDom ) } , w = function ( a ) { return v ( a , 0 ) } , x = function ( a ) { return v ( a , a . dom ( ) . childNodes . length - 1 ) } , y = e . immutable ( "element" , "offset" ) , z = function ( a , b ) { var c = u ( a ) ; return c . length > 0 && b < c . length ? y ( c [ b ] , 0 ) : y ( a , b ) } ; return { owner : i , defaultView : k , documentElement : j , parent : l , findIndex : m , parents : n , siblings : o , prevSibling : q , offsetParent : p , pre
} } ) , g ( "1m" , [ "1k" , "4p" , "1o" , "1d" ] , function ( a , b , c , d ) { var e = d . each , f = function ( a , f ) { var g = { } ; a . set ( { } ) , f . on ( "NodeChange" , function ( h ) { var i = b . getParents ( f . dom , h . element ) , j = { } ; i = d . grep ( i , function ( a ) { return 1 === a . nodeType && ! a . getAttribute ( "data-mce-bogus" ) } ) , e ( a . get ( ) , function ( a , b ) { e ( i , function ( d ) { return f . formatter . matchNode ( d , b , { } , a . similar ) ? ( g [ b ] || ( e ( a , function ( a ) { a ( ! 0 , { node : d , format : b , parents : i } ) } ) , g [ b ] = a ) , j [ b ] = a , ! 1 ) : ! c . matchesUnInheritedFormatSelector ( f , d , b ) && void 0 } ) } ) , e ( g , function ( a , b ) { j [ b ] || ( delete g [ b ] , e ( a , function ( a ) { a ( ! 1 , { node : h . element , format : b , parents : i } ) } ) ) } ) } ) } , g = function ( a , b , c , d ) { var f = a . get ( ) ; e ( b . split ( "," ) , function ( a ) { f [ a ] || ( f [ a ] = [ ] , f [ a ] . similar = d ) , f [ a ] . push ( c ) } ) , a . set ( f ) } , h = function ( a , b , c , d , e ) { null === b . get ( ) && f ( b , a ) , g ( b , c , d , e ) } ; return { formatChanged : h } } ) , g ( "4s" , [ "1d" ] , function ( a ) { var b = function ( b ) { var c = { valigntop : [ { selector : "td,th" , styles : { verticalAlign : "top" } } ] , valignmiddle : [ { selector : "td,th" , styles : { verticalAlign : "middle" } } ] , valignbottom : [ { selector : "td,th" , styles : { verticalAlign : "bottom" } } ] , alignleft : [ { selector : "figure.image" , collapsed : ! 1 , classes : "align-left" , ceFalseOverride : ! 0 , preview : "font-family font-size" } , { selector : "figure,p,h1,h2,h3,h4,h5,h6,td,th,tr,div,ul,ol,li" , styles : { textAlign : "left" } , inherit : ! 1 , preview : ! 1 , defaultBlock : "div" } , { selector : "img,table" , collapsed : ! 1 , styles : { "float" : "left" } , preview : "font-family font-size" } ] , aligncenter : [ { selector : "figure,p,h1,h2,h3,h4,h5,h6,td,th,tr,div,ul,ol,li" , styles : { textAlign : "center" } , inherit : ! 1 , preview : "font-family font-size" , defaultBlock : "div" } , { selector : "figure.image" , collapsed : ! 1 , classes : "align-center" , ceFalseOverride : ! 0 , preview : "font-family font-size" } , { selector : "img" , collapsed : ! 1 , styles : { display : "block" , marginLeft : "auto" , marginRight : "auto" } , preview : ! 1 } , { selector : "table" , collapsed : ! 1 , styles : { marginLeft : "auto" , marginRight : "auto" } , preview : "font-family font-size" } ] , alignright : [ { selector : "figure.image" , collapsed : ! 1 , classes : "align-right" , ceFalseOverride : ! 0 , preview : "font-family font-size" } , { selector : "figure,p,h1,h2,h3,h4,h5,h6,td,th,tr,div,ul,ol,li" , styles : { textAlign : "right" } , inherit : ! 1 , preview : "font-family font-size" , defaultBlock : "div" } , { selector : "img,table" , collapsed : ! 1 , styles : { "float" : "right" } , preview : "font-family font-size" } ] , alignjustify : [ { selector : "figure,p,h1,h2,h3,h4,h5,h6,td,th,tr,div,ul,ol,li" , styles : { textAlign : "justify" } , inherit : ! 1 , defaultBlock : "div" , preview : "font-family font-size" } ] , bold : [ { inline : "strong" , remove : "all" } , { inline : "span" , styles : { fontWeight : "bold" } } , { inline : "b" , remove : "all" } ] , italic : [ { inline : "em" , remove : "all" } , { inline : "span" , styles : { fontStyle : "italic" } } , { inline : "i" , remove : "all" } ] , underline : [ { inline : "span" , styles : { textDecoration : "underline" } , exact : ! 0 } , { inline : "u" , remove : "all" } ] , strikethrough : [ { inline : "span" , styles : { textDecoration : "line-through" } , exact : ! 0 } , { inline : "strike" , remove : "all" } ] , forecolor : { inline : "span" , styles : { color : "%value" } , links : ! 0 , remove _similar : ! 0 , clear _child _styles : ! 0 } , hilitecolor : { inline : "span" , styles : { backgroundColor : "%value" } , links : ! 0 , remove _similar : ! 0 , clear _child _styles : ! 0 } , fontname : { inline : "span" , styles : { fontFamily : "%value" } , clear _child _styles : ! 0 } , fontsize : { inline : "span" , styles : { fontSize : "%value" } , clear _child _styles : ! 0 } , fontsize _class : { inline : "span" , attributes : { "class" : "%value" } } , blockquote : { block : "blockquote" , wrapper : 1 , remove : "all" } , subscript : { inline : "sub" } , superscript : { inline : "sup" } , code : { inline : "code" } , link : { inline : "a" , selector : "a" , remove : "all" , split : ! 0 , deep : ! 0 , onmatch : function ( ) { return ! 0 } , onformat : function ( c , d , e ) { a . each ( e , function ( a , d ) { b . setAttrib ( c , d , a ) } ) } } , removeformat : [ { selector : "b,strong,em,i,font,u,strike,sub,sup,dfn,code,samp,kbd,var,cite,mark,q,del,ins" , remove : "all" , split : ! 0 , expand : ! 1 , block _expand : ! 0 , deep : ! 0 } , { selector : "span" , attributes : [ "style" , "class" ] , remove : "empty" , split : ! 0 , expand : ! 1 , deep : ! 0 } , { selector : "*" , attributes : [ "style" , "class" ] , split : ! 1 , expand : ! 1 , deep : ! 0 } ] } ; return a . each ( "p h1 h2 h3 h4 h5 h6 div address pre div dt dd samp" . split ( /\s/ ) , function ( a ) { c [ a ] = { block : a , remove : "all" } } ) , c } ; return { get : b } } ) , g ( "1n" , [ "4s" , "1d" ] , function ( a , b ) { return function ( c ) { var d = { } , e = function ( a ) { return a ? d [ a ] : d } , f = function ( a , c ) {
return g ( a ) . before ( this . renderHtml ( ) ) , this . postRender ( ) , this } , renderTo : function ( a ) { return g ( a || this . getContainerElm ( ) ) . append ( this . renderHtml ( ) ) , this . postRender ( ) , this } , preRender : function ( ) { } , render : function ( ) { } , renderHtml : function ( ) { return '<div id="' + this . _id + '" class="' + this . classes + '"></div>' } , postRender : function ( ) { var a , b , c , d , e , f = this , h = f . settings ; f . $el = g ( f . getEl ( ) ) , f . state . set ( "rendered" , ! 0 ) ; for ( d in h ) 0 === d . indexOf ( "on" ) && f . on ( d . substr ( 2 ) , h [ d ] ) ; if ( f . _eventsRoot ) { for ( c = f . parent ( ) ; ! e && c ; c = c . parent ( ) ) e = c . _eventsRoot ; if ( e ) for ( d in e . _nativeEvents ) f . _nativeEvents [ d ] = ! 0 } l ( f ) , h . style && ( a = f . getEl ( ) , a && ( a . setAttribute ( "style" , h . style ) , a . style . cssText = h . style ) ) , f . settings . border && ( b = f . borderBox , f . $el . css ( { "border-top-width" : b . top , "border-right-width" : b . right , "border-bottom-width" : b . bottom , "border-left-width" : b . left } ) ) ; var i = f . getRoot ( ) ; i . controlIdLookup || ( i . controlIdLookup = { } ) , i . controlIdLookup [ f . _id ] = f ; for ( var k in f . _aria ) f . aria ( k , f . _aria [ k ] ) ; f . state . get ( "visible" ) === ! 1 && ( f . getEl ( ) . style . display = "none" ) , f . bindStates ( ) , f . state . on ( "change:visible" , function ( a ) { var b , c = a . value ; f . state . get ( "rendered" ) && ( f . getEl ( ) . style . display = c === ! 1 ? "none" : "" , f . getEl ( ) . getBoundingClientRect ( ) ) , b = f . parent ( ) , b && ( b . _lastRect = null ) , f . fire ( c ? "show" : "hide" ) , j . add ( f ) } ) , f . fire ( "postrender" , { } , ! 1 ) } , bindStates : function ( ) { } , scrollIntoView : function ( a ) { function b ( a , b ) { var c , d , e = a ; for ( c = d = 0 ; e && e != b && e . nodeType ; ) c += e . offsetLeft || 0 , d += e . offsetTop || 0 , e = e . offsetParent ; return { x : c , y : d } } var c , d , e , f , g , h , i = this . getEl ( ) , j = i . parentNode , k = b ( i , j ) ; return c = k . x , d = k . y , e = i . offsetWidth , f = i . offsetHeight , g = j . clientWidth , h = j . clientHeight , "end" == a ? ( c -= g - e , d -= h - f ) : "center" == a && ( c -= g / 2 - e / 2 , d -= h / 2 - f / 2 ) , j . scrollLeft = c , j . scrollTop = d , this } , getRoot : function ( ) { for ( var a , b = this , c = [ ] ; b ; ) { if ( b . rootControl ) { a = b . rootControl ; break } c . push ( b ) , a = b , b = b . parent ( ) } a || ( a = this ) ; for ( var d = c . length ; d -- ; ) c [ d ] . rootControl = a ; return a } , reflow : function ( ) { j . remove ( this ) ; var a = this . parent ( ) ; return a && a . _layout && ! a . _layout . isNative ( ) && a . reflow ( ) , this } } ; return b . each ( "text title visible disabled active value" . split ( " " ) , function ( a ) { r [ a ] = function ( b ) { return 0 === arguments . length ? this . state . get ( a ) : ( "undefined" != typeof b && this . state . set ( a , b ) , this ) } } ) , m = a . extend ( r ) } ) , g ( "2x" , [ "4z" ] , function ( a ) { "use strict" ; function b ( b , c , d ) { var e , f , g , h , i , j , k , l , m , n ; return m = a . getViewPort ( ) , f = a . getPos ( c ) , g = f . x , h = f . y , b . state . get ( "fixed" ) && "static" == a . getRuntimeStyle ( document . body , "position" ) && ( g -= m . x , h -= m . y ) , e = b . getEl ( ) , n = a . getSize ( e ) , i = n . width , j = n . height , n = a . getSize ( c ) , k = n . width , l = n . height , d = ( d || "" ) . split ( "" ) , "b" === d [ 0 ] && ( h += l ) , "r" === d [ 1 ] && ( g += k ) , "c" === d [ 0 ] && ( h += Math . round ( l / 2 ) ) , "c" === d [ 1 ] && ( g += Math . round ( k / 2 ) ) , "b" === d [ 3 ] && ( h -= j ) , "r" === d [ 4 ] && ( g -= i ) , "c" === d [ 3 ] && ( h -= Math . round ( j / 2 ) ) , "c" === d [ 4 ] && ( g -= Math . round ( i / 2 ) ) , { x : g , y : h , w : i , h : j } } return { testMoveRel : function ( c , d ) { for ( var e = a . getViewPort ( ) , f = 0 ; f < d . length ; f ++ ) { var g = b ( this , c , d [ f ] ) ; if ( this . state . get ( "fixed" ) ) { if ( g . x > 0 && g . x + g . w < e . w && g . y > 0 && g . y + g . h < e . h ) return d [ f ] } else if ( g . x > e . x && g . x + g . w < e . w + e . x && g . y > e . y && g . y + g . h < e . h + e . y ) return d [ f ] } return d [ 0 ] } , moveRel : function ( a , c ) { "string" != typeof c && ( c = this . testMoveRel ( a , c ) ) ; var d = b ( this , a , c ) ; return this . moveTo ( d . x , d . y ) } , moveBy : function ( a , b ) { var c = this , d = c . layoutRect ( ) ; return c . moveTo ( d . x + a , d . y + b ) , c } , moveTo : function ( b , c ) { function d ( a , b , c ) { return a < 0 ? 0 : a + c > b ? ( a = b - c , a < 0 ? 0 : a ) : a } var e = this ; if ( e . settings . constrainToViewport ) { var f = a . getViewPort ( window ) , g = e . layoutRect ( ) ; b = d ( b , f . w + f . x , g . w ) , c = d ( c , f . h + f . y , g . h ) } return e . state . get ( "rendered" ) ? e . layoutRect ( { x : b , y : c } ) . repaint ( ) : ( e . settings . x = b , e . settings . y = c ) , e . fire ( "move" , { x : b , y : c } ) , e } } } ) , g ( "32" , [ "2q" , "2x" ] , function ( a , b ) { return a . extend ( { Mixins : [ b ] , Defaults : { classes : "widget tooltip tooltip-n" } , renderHtml : function ( ) { var a = this , b = a . classPrefix ; return '<div id="' + a . _id + '" class="' + a . classes + '" role="presentation"><div class="' + b + 'tooltip-arrow"></div><div class="' + b + 'tooltip-inner">' + a . encode ( a . state . get ( "text" ) ) + "</div></div>" } , bindStates : function ( ) { var a = this ; return a . state . on ( "change:text" , function ( b ) { a . getEl ( ) . lastChild . innerHTML = a . encode ( b . value ) } ) , a . _super ( ) } , repaint : function ( ) { var a , b , c = this ; a = c . getEl ( ) . style , b =
} , r = function ( a ) { l ( ) . each ( function ( b ) { f ( ) . setParams ( b , a ) } ) } , s = function ( ) { return e } ; return d . on ( "remove" , function ( ) { a . each ( e . slice ( 0 ) , function ( a ) { f ( ) . close ( a ) } ) } ) , { windows : e , open : m , alert : n , confirm : o , close : p , getParams : q , setParams : r , getWindows : s } } } ) , g ( "25" , [ "1t" , "4k" ] , function ( a , b ) { var c = function ( c , d , e ) { return ! e . collapsed && a . foldl ( e . getClientRects ( ) , function ( a , e ) { return a || b . containsXY ( e , c , d ) } , ! 1 ) } ; return { isXYWithinRange : c } } ) , g ( "1f" , [ "o" ] , function ( a ) { return { BACKSPACE : 8 , DELETE : 46 , DOWN : 40 , ENTER : 13 , LEFT : 37 , RIGHT : 39 , SPACEBAR : 32 , TAB : 9 , UP : 38 , modifierPressed : function ( a ) { return a . shiftKey || a . ctrlKey || a . altKey || this . metaKeyPressed ( a ) } , metaKeyPressed : function ( b ) { return a . mac ? b . metaKey : b . ctrlKey && ! b . altKey } } } ) , g ( "a" , [ "1" , "23" , "24" , "21" , "25" , "o" , "14" , "1d" , "1f" ] , function ( a , b , c , d , e , f , g , h , i ) { function j ( a , b ) { for ( ; b && b != a ; ) { if ( l ( b ) || k ( b ) ) return b ; b = b . parentNode } return null } var k = d . isContentEditableFalse , l = d . isContentEditableTrue , m = function ( a ) { return a && "IMG" === a . nodeName } , n = function ( a , b ) { return m ( a . target ) && ! e . isXYWithinRange ( a . clientX , a . clientY , b ) } , o = function ( a , b ) { var c = b . target ; n ( b , a . selection . getRng ( ) ) && ! b . isDefaultPrevented ( ) && ( b . preventDefault ( ) , a . selection . select ( c ) ) } ; return function ( d , e ) { function l ( a ) { var d = e . settings . object _resizing ; return d !== ! 1 && ! f . iOS && ( "string" != typeof d && ( d = "table,img,div" ) , "false" !== a . getAttribute ( "data-mce-resize" ) && ( a != e . getBody ( ) && c . is ( b . fromDom ( a ) , d ) ) ) } function m ( a ) { var b , c , d , f , g ; b = a . screenX - J , c = a . screenY - K , R = b * H [ 2 ] + N , S = c * H [ 3 ] + O , R = R < 5 ? 5 : R , S = S < 5 ? 5 : S , d = "IMG" == D . nodeName && e . settings . resize _img _proportional !== ! 1 ? ! i . modifierPressed ( a ) : i . modifierPressed ( a ) || "IMG" == D . nodeName && H [ 2 ] * H [ 3 ] !== 0 , d && ( $ ( b ) > $ ( c ) ? ( S = _ ( R * P ) , R = _ ( S / P ) ) : ( R = _ ( S / P ) , S = _ ( R * P ) ) ) , V . setStyles ( E , { width : R , height : S } ) , f = H . startPos . x + b , g = H . startPos . y + c , f = f > 0 ? f : 0 , g = g > 0 ? g : 0 , V . setStyles ( F , { left : f , top : g , display : "block" } ) , F . innerHTML = R + " × " + S , H [ 2 ] < 0 && E . clientWidth <= R && V . setStyle ( E , "left" , L + ( N - R ) ) , H [ 3 ] < 0 && E . clientHeight <= S && V . setStyle ( E , "top" , M + ( O - S ) ) , b = aa . scrollWidth - T , c = aa . scrollHeight - U , b + c !== 0 && V . setStyles ( F , { left : f - b , top : g - c } ) , Q || ( e . fire ( "ObjectResizeStart" , { target : D , width : N , height : O } ) , Q = ! 0 ) } function n ( ) { function a ( a , b ) { b && ( D . style [ a ] || ! e . schema . isValid ( D . nodeName . toLowerCase ( ) , a ) ? V . setStyle ( D , a , b ) : V . setAttrib ( D , a , b ) ) } Q = ! 1 , a ( "width" , R ) , a ( "height" , S ) , V . unbind ( X , "mousemove" , m ) , V . unbind ( X , "mouseup" , n ) , Y != X && ( V . unbind ( Y , "mousemove" , m ) , V . unbind ( Y , "mouseup" , n ) ) , V . remove ( E ) , V . remove ( F ) , Z && "TABLE" != D . nodeName || p ( D ) , e . fire ( "ObjectResized" , { target : D , width : R , height : S } ) , V . setAttrib ( D , "style" , V . getAttrib ( D , "style" ) ) , e . nodeChanged ( ) } function p ( a , b , c ) { var d , g , h , i , j ; q ( ) , z ( ) , d = V . getPos ( a , aa ) , L = d . x , M = d . y , j = a . getBoundingClientRect ( ) , g = j . width || j . right - j . left , h = j . height || j . bottom - j . top , D != a && ( y ( ) , D = a , R = S = 0 ) , i = e . fire ( "ObjectSelected" , { target : a } ) , l ( a ) && ! i . isDefaultPrevented ( ) ? W ( G , function ( a , d ) { function e ( b ) { J = b . screenX , K = b . screenY , N = D . clientWidth , O = D . clientHeight , P = O / N , H = a , a . startPos = { x : g * a [ 0 ] + L , y : h * a [ 1 ] + M } , T = aa . scrollWidth , U = aa . scrollHeight , E = D . cloneNode ( ! 0 ) , V . addClass ( E , "mce-clonedresizable" ) , V . setAttrib ( E , "data-mce-bogus" , "all" ) , E . contentEditable = ! 1 , E . unSelectabe = ! 0 , V . setStyles ( E , { left : L , top : M , margin : 0 } ) , E . removeAttribute ( "data-mce-selected" ) , aa . appendChild ( E ) , V . bind ( X , "mousemove" , m ) , V . bind ( X , "mouseup" , n ) , Y != X && ( V . bind ( Y , "mousemove" , m ) , V . bind ( Y , "mouseup" , n ) ) , F = V . add ( aa , "div" , { "class" : "mce-resize-helper" , "data-mce-bogus" : "all" } , N + " × " + O ) } var i ; return b ? void ( d == b && e ( c ) ) : ( i = V . get ( "mceResizeHandle" + d ) , i && V . remove ( i ) , i = V . add ( aa , "div" , { id : "mceResizeHandle" + d , "data-mce-bogus" : "all" , "class" : "mce-resizehandle" , unselectable : ! 0 , style : "cursor:" + d + "-resize; margin:0; padding:0" } ) , f . ie && ( i . contentEditable = ! 1 ) , V . bind ( i , "mousedown" , function ( a ) { a . stopImmediatePropagation ( ) , a . preventDefault ( ) , e ( a ) } ) , a . elm = i , void V . setStyles ( i , { left : g * a [ 0 ] + L - i . offsetWidth / 2 , top : h * a [ 1 ] + M - i . offsetHeight / 2 } ) ) } ) : q ( ) , D . setAttribute ( "data-mce-selected" , "1" ) } function q ( ) { var a , b ; z ( ) , D && D . removeAttribute ( "data-mce-selected" ) ; for ( a in G ) b = V . get ( "mceResizeHandle" + a ) , b && ( V . unbind ( b ) , V . remove ( b ) ) } function r ( a ) { function b ( a , b ) { if ( a ) do if ( a === b ) return ! 0 ; while ( a = a . parentNode ) } var c , f ; if ( ! Q && ! e . removed ) return W
"name" === g || 0 === g . indexOf ( "data-mce-bookmark" ) ) return ! 1 } if ( 8 === i . type ) return ! 1 ; if ( 3 === i . type && ! c . test ( i . value ) ) return ! 1 ; if ( 3 === i . type && i . parent && d [ i . parent . name ] && c . test ( i . value ) ) return ! 1 ; if ( e && e ( i ) ) return ! 1 } while ( i = a ( i , h ) ) ; return ! 0 } , walk : function ( b ) { return a ( this , null , b ) } } , b . create = function ( a , c ) { var e , f ; if ( e = new b ( a , d [ a ] || 1 ) , c ) for ( f in c ) e . attr ( f , c [ f ] ) ; return e } , b } ) , g ( "u" , [ "v" , "s" , "1d" ] , function ( a , b , c ) { function d ( a , b , c ) { var d , e , f , g , h = 1 ; for ( g = a . getShortEndedElements ( ) , f = /<([!?\/])?([A-Za-z0-9\-_\:\.]+)((?:\s+[^"\'>]+(?:(?:"[^"]*")|(?:\'[^\']*\')|[^>]*))*|\/|\s+)>/g , f . lastIndex = d = c ; e = f . exec ( b ) ; ) { if ( d = f . lastIndex , "/" === e [ 1 ] ) h -- ; else if ( ! e [ 1 ] ) { if ( e [ 2 ] in g ) continue ; h ++ } if ( 0 === h ) break } return d } function e ( e , i ) { function j ( ) { } var k = this ; e = e || { } , k . schema = i = i || new a , e . fix _self _closing !== ! 1 && ( e . fix _self _closing = ! 0 ) , f ( "comment cdata text start end pi doctype" . split ( " " ) , function ( a ) { a && ( k [ a ] = e [ a ] || j ) } ) , k . parse = function ( a ) { function f ( a ) { var b , c ; for ( b = Q . length ; b -- && Q [ b ] . name !== a ; ) ; if ( b >= 0 ) { for ( c = Q . length - 1 ; c >= b ; c -- ) a = Q [ c ] , a . valid && O . end ( a . name ) ; Q . length = b } } function j ( a , b , c , d , f ) { var h , i , j = /[\s\u0000-\u001F]+/g ; if ( b = b . toLowerCase ( ) , c = b in u ? b : S ( c || d || f || "" ) , w && ! r && g ( b ) === ! 1 ) { if ( h = B [ b ] , ! h && C ) { for ( i = C . length ; i -- && ( h = C [ i ] , ! h . pattern . test ( b ) ) ; ) ; i === - 1 && ( h = null ) } if ( ! h ) return ; if ( h . validValues && ! ( c in h . validValues ) ) return } if ( T [ b ] && ! e . allow _script _urls ) { var k = c . replace ( j , "" ) ; try { k = decodeURIComponent ( k ) } catch ( a ) { k = unescape ( k ) } if ( U . test ( k ) ) return ; if ( ! e . allow _html _data _urls && V . test ( k ) && ! /^data:image\//i . test ( k ) ) return } r && ( b in T || 0 === b . indexOf ( "on" ) ) || ( n . map [ b ] = c , n . push ( { name : b , value : c } ) ) } var k , l , m , n , o , p , q , r , s , t , u , v , w , x , y , z , A , B , C , D , E , F , G , H , I , J , K , L , M , N , O = this , P = 0 , Q = [ ] , R = 0 , S = b . decode , T = c . makeMap ( "src,href,data,background,formaction,poster" ) , U = /((java|vb)script|mhtml):/i , V = /^data:/i ; for ( J = new RegExp ( "<(?:(?:!--([\\w\\W]*?)-->)|(?:!\\[CDATA\\[([\\w\\W]*?)\\]\\]>)|(?:!DOCTYPE([\\w\\W]*?)>)|(?:\\?([^\\s\\/<>]+) ?([\\w\\W]*?)[?/]>)|(?:\\/([A-Za-z][A-Za-z0-9\\-_\\:\\.]*)>)|(?:([A-Za-z][A-Za-z0-9\\-_\\:\\.]*)((?:\\s+[^\"'>]+(?:(?:\"[^\"]*\")|(?:'[^']*')|[^>]*))*|\\/|\\s+)>))" , "g" ) , K = /([\w:\-]+)(?:\s*=\s*(?:(?:\"((?:[^\"])*)\")|(?:\'((?:[^\'])*)\')|([^>\s]+)))?/g , t = i . getShortEndedElements ( ) , I = e . self _closing _elements || i . getSelfClosingElements ( ) , u = i . getBoolAttrs ( ) , w = e . validate , s = e . remove _internals , N = e . fix _self _closing , L = i . getSpecialElements ( ) , G = a + ">" ; k = J . exec ( G ) ; ) { if ( P < k . index && O . text ( S ( a . substr ( P , k . index - P ) ) ) , l = k [ 6 ] ) l = l . toLowerCase ( ) , ":" === l . charAt ( 0 ) && ( l = l . substr ( 1 ) ) , f ( l ) ; else if ( l = k [ 7 ] ) { if ( k . index + k [ 0 ] . length > a . length ) { O . text ( S ( a . substr ( k . index ) ) ) , P = k . index + k [ 0 ] . length ; continue } if ( l = l . toLowerCase ( ) , ":" === l . charAt ( 0 ) && ( l = l . substr ( 1 ) ) , v = l in t , N && I [ l ] && Q . length > 0 && Q [ Q . length - 1 ] . name === l && f ( l ) , ! w || ( x = i . getElementRule ( l ) ) ) { if ( y = ! 0 , w && ( B = x . attributes , C = x . attributePatterns ) , ( A = k [ 8 ] ) ? ( r = A . indexOf ( "data-mce-type" ) !== - 1 , r && s && ( y = ! 1 ) , n = [ ] , n . map = { } , A . replace ( K , j ) ) : ( n = [ ] , n . map = { } ) , w && ! r ) { if ( D = x . attributesRequired , E = x . attributesDefault , F = x . attributesForced , H = x . removeEmptyAttrs , H && ! n . length && ( y = ! 1 ) , F ) for ( o = F . length ; o -- ; ) z = F [ o ] , q = z . name , M = z . value , "{$uid}" === M && ( M = "mce_" + R ++ ) , n . map [ q ] = M , n . push ( { name : q , value : M } ) ; if ( E ) for ( o = E . length ; o -- ; ) z = E [ o ] , q = z . name , q in n . map || ( M = z . value , "{$uid}" === M && ( M = "mce_" + R ++ ) , n . map [ q ] = M , n . push ( { name : q , value : M } ) ) ; if ( D ) { for ( o = D . length ; o -- && ! ( D [ o ] in n . map ) ; ) ; o === - 1 && ( y = ! 1 ) } if ( z = n . map [ "data-mce-bogus" ] ) { if ( "all" === z ) { P = d ( i , a , J . lastIndex ) , J . lastIndex = P ; continue } y = ! 1 } } y && O . start ( l , n , v ) } else y = ! 1 ; if ( m = L [ l ] ) { m . lastIndex = P = k . index + k [ 0 ] . length , ( k = m . exec ( a ) ) ? ( y && ( p = a . substr ( P , k . index - P ) ) , P = k . index + k [ 0 ] . length ) : ( p = a . substr ( P ) , P = a . length ) , y && ( p . length > 0 && O . text ( p , ! 0 ) , O . end ( l ) ) , J . lastIndex = P ; continue } v || ( A && A . indexOf ( "/" ) == A . length - 1 ? y && O . end ( l ) : Q . push ( { name : l , valid : y } ) ) } else ( l = k [ 1 ] ) ? ( ">" === l . charAt ( 0 ) && ( l = " " + l ) , e . allow _conditional _comments || "[if" !== l . substr ( 0 , 3 ) . toLowerCase ( ) || ( l = " " + l ) , O . comment ( l ) ) : ( l = k [ 2 ] ) ? O . cdata ( h ( l ) ) : ( l = k [ 3 ] ) ? O . doctype ( l ) : ( l = k [ 4 ] ) && O . pi ( l , k [ 5 ] ) ; P = k . index + k [ 0 ] . length } for ( P < a . length && O . text ( S ( a . substr ( P ) ) ) , o = Q . length - 1 ; o >= 0 ; o -- ) l = Q [ o ] , l . valid && O . end ( l . name ) } } var f = c . each , g = function ( a ) { return 0 === a . indexOf ( "data-" ) || 0 === a . indexOf ( " aria -
remove _script _host : ! 0 , object _resizing : ! 0 , doctype : "<!DOCTYPE html>" , visual : ! 0 , font _size _style _values : "xx-small,x-small,small,medium,large,x-large,xx-large" , font _size _legacy _values : "xx-small,small,medium,large,x-large,xx-large,300%" , forced _root _block : "p" , hidden _input : ! 0 , padd _empty _editor : ! 0 , render _ui : ! 0 , indentation : "30px" , inline _styles : ! 0 , convert _fonts _to _spans : ! 0 , indent : "simple" , indent _before : "p,h1,h2,h3,h4,h5,h6,blockquote,div,title,style,pre,script,td,th,ul,ol,li,dl,dt,dd,area,table,thead,tfoot,tbody,tr,section,article,hgroup,aside,figure,figcaption,option,optgroup,datalist" , indent _after : "p,h1,h2,h3,h4,h5,h6,blockquote,div,title,style,pre,script,td,th,ul,ol,li,dl,dt,dd,area,table,thead,tfoot,tbody,tr,section,article,hgroup,aside,figure,figcaption,option,optgroup,datalist" , entity _encoding : "named" , url _converter : c . convertURL , url _converter _scope : c , ie7 _compat : ! 0 } } , t = function ( a , b ) { var c = b . external _plugins ? b . external _plugins : { } ; return a && a . external _plugins ? i . extend ( { } , a . external _plugins , c ) : c } , u = function ( a , b , c ) { var d = p ( [ "mobile" ] , c ) , e = d . settings ( ) . plugins , f = i . extend ( a , b , d . settings ( ) , l ? q ( d , "mobile" ) : { } , { validate : ! 0 , content _editable : d . settings ( ) . inline , external _plugins : t ( b , d . settings ( ) ) } , l && e && r ( d , "mobile" ) ? { plugins : o ( e ) } : { } ) ; return f } , v = function ( a , b , c , d , e ) { var f = s ( b , c , a ) ; return u ( f , d , e ) } , w = function ( a , b ) { return d . from ( a . settings [ b ] ) } , x = function ( a , b , c ) { return d . from ( b . settings [ c ] ) . filter ( a ) } ; return { getEditorSettings : v , get : w , getString : b . curry ( x , g . isString ) , filterMobilePlugins : o } } ) , g ( "7c" , [ ] , function ( ) { var a = /[\u0591-\u07FF\uFB1D-\uFDFF\uFE70-\uFEFC]/ , b = function ( b ) { return a . test ( b ) } ; return { hasStrongRtl : b } } ) , g ( "6u" , [ "1t" , "1" , "1u" , "6m" , "2k" , "23" , "24" , "1z" , "5n" , "20" , "62" , "5j" , "c" , "21" , "2e" , "7c" ] , function ( a , b , c , d , e , f , g , h , i , j , k , l , m , n , o , p ) { var q = function ( a , b ) { var c = o . getString ( a , "inline_boundaries_selector" ) . getOr ( "a[href],code" ) ; return g . is ( f . fromDom ( b ) , c ) } , r = function ( a ) { return "rtl" === m . DOM . getStyle ( a , "direction" , ! 0 ) || p . hasStrongRtl ( a . textContent ) } , s = function ( b , c , d ) { return a . filter ( m . DOM . getParents ( d . container ( ) , "*" , c ) , b ) } , t = function ( a , b , d ) { var e = s ( a , b , d ) ; return c . from ( e [ e . length - 1 ] ) } , u = function ( a , b , c ) { var d = k . getParentBlock ( b , a ) , e = k . getParentBlock ( c , a ) ; return d && d === e } , v = function ( a ) { return h . isBeforeInline ( a ) || h . isAfterInline ( a ) } , w = function ( a , b ) { var c = b . container ( ) , d = b . offset ( ) ; return a ? h . isCaretContainerInline ( c ) ? n . isText ( c . nextSibling ) ? new j ( c . nextSibling , 0 ) : j . after ( c ) : h . isBeforeInline ( b ) ? new j ( c , d + 1 ) : b : h . isCaretContainerInline ( c ) ? n . isText ( c . previousSibling ) ? new j ( c . previousSibling , c . previousSibling . data . length ) : j . before ( c ) : h . isAfterInline ( b ) ? new j ( c , d - 1 ) : b } , x = b . curry ( w , ! 0 ) , y = b . curry ( w , ! 1 ) ; return { isInlineTarget : q , findRootInline : t , isRtl : r , isAtZwsp : v , normalizePosition : w , normalizeForwards : x , normalizeBackwards : y , hasSameParentBlock : u } } ) , g ( "6r" , [ "1u" , "1z" , "7a" , "7b" , "5n" , "20" , "21" , "6u" ] , 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 ( "7d" , [ "1u" ] , function ( a ) { var b = function ( b , c ) { for ( var d = 0 ; d < b . length ; d ++ ) { var e = b [ d ] . apply ( null , c ) ; if ( e . isSome ( ) ) return e } return a . none ( ) } ; return { evaluateUntil : b } } ) , g ( "6s" , [ "79" , "1" , "1u" , "6m" , "1z" , "5n" , "20" , "62" , "21" , "6u" , "7d" ] , function ( a , b , c , d , e , f , g , h , i , j , k ) { var l = a . generate ( [ { before : [ "element" ] } , { start : [ "element" ] } , { end : [ "element" ] } , { after : [ "element" ] } ] ) , m = function ( a , b ) { var c = h . getParentBlock ( b , a ) ; return c ? c : a } , n = function ( a , d , e ) { var g = j . normalizeForwards ( e ) , h = m
return d = b . extend ( { credentials : ! 1 , handler : f } , d ) , { upload : o } } } ) , g ( "8a" , [ "66" ] , function ( a ) { var b = function ( b ) { var c = a . getOrDie ( "requestAnimationFrame" ) ; c ( b ) } , c = function ( b ) { var c = a . getOrDie ( "atob" ) ; return c ( b ) } ; return { atob : c , requestAnimationFrame : b } } ) , g ( "82" , [ "8a" , "1c" ] , function ( a , b ) { function c ( a ) { return new b ( function ( b , c ) { var d = function ( ) { c ( "Cannot convert " + a + " to Blob. Resource might not exist or is inaccessible." ) } ; try { var e = new XMLHttpRequest ; e . open ( "GET" , a , ! 0 ) , e . responseType = "blob" , e . onload = function ( ) { 200 == this . status ? b ( this . response ) : d ( ) } , e . onerror = d , e . send ( ) } catch ( a ) { d ( ) } } ) } function d ( a ) { var b , c ; return a = decodeURIComponent ( a ) . split ( "," ) , c = /data:([^;]+)/ . exec ( a [ 0 ] ) , c && ( b = c [ 1 ] ) , { type : b , data : a [ 1 ] } } function e ( c ) { return new b ( function ( b ) { var e , f , g ; c = d ( c ) ; try { e = a . atob ( c . data ) } catch ( a ) { return void b ( new Blob ( [ ] ) ) } for ( f = new Uint8Array ( e . length ) , g = 0 ; g < f . length ; g ++ ) f [ g ] = e . charCodeAt ( g ) ; b ( new Blob ( [ f ] , { type : c . type } ) ) } ) } function f ( a ) { return 0 === a . indexOf ( "blob:" ) ? c ( a ) : 0 === a . indexOf ( "data:" ) ? e ( a ) : null } function g ( a ) { return new b ( function ( b ) { var c = new FileReader ; c . onloadend = function ( ) { b ( c . result ) } , c . readAsDataURL ( a ) } ) } return { uriToBlob : f , blobToDataUri : g , parseDataUri : d } } ) ; g ( "7p" , [ "1c" , "1h" , "4i" , "82" , "o" ] , function ( a , b , c , d , e ) { var f = 0 , g = function ( a ) { return ( a || "blobid" ) + f ++ } , h = function ( a , b , c , e ) { var f , h ; return 0 === b . src . indexOf ( "blob:" ) ? ( h = a . getByUri ( b . src ) , void ( h ? c ( { image : b , blobInfo : h } ) : d . uriToBlob ( b . src ) . then ( function ( e ) { d . blobToDataUri ( e ) . then ( function ( i ) { f = d . parseDataUri ( i ) . data , h = a . create ( g ( ) , e , f ) , a . add ( h ) , c ( { image : b , blobInfo : h } ) } ) } , function ( a ) { e ( a ) } ) ) ) : ( f = d . parseDataUri ( b . src ) . data , h = a . findFirst ( function ( a ) { return a . base64 ( ) === f } ) , void ( h ? c ( { image : b , blobInfo : h } ) : d . uriToBlob ( b . src ) . then ( function ( d ) { h = a . create ( g ( ) , d , f ) , a . add ( h ) , c ( { image : b , blobInfo : h } ) } , function ( a ) { e ( a ) } ) ) ) } , i = function ( a ) { return a ? a . getElementsByTagName ( "img" ) : [ ] } ; return function ( d , f ) { function g ( g , k ) { var l , m ; return k || ( k = c . constant ( ! 0 ) ) , l = b . filter ( i ( g ) , function ( a ) { var b = a . src ; return ! ! e . fileApi && ( ! a . hasAttribute ( "data-mce-bogus" ) && ( ! a . hasAttribute ( "data-mce-placeholder" ) && ( ! ( ! b || b == e . transparentSrc ) && ( 0 === b . indexOf ( "blob:" ) ? ! d . isUploaded ( b ) : 0 === b . indexOf ( "data:" ) && k ( a ) ) ) ) ) } ) , m = b . map ( l , function ( b ) { var c ; return j [ b . src ] ? new a ( function ( a ) { j [ b . src ] . then ( function ( c ) { return "string" == typeof c ? c : void a ( { image : b , blobInfo : c . blobInfo } ) } ) } ) : ( c = new a ( function ( a , c ) { h ( f , b , a , c ) } ) . then ( function ( a ) { return delete j [ a . image . src ] , a } ) [ "catch" ] ( function ( a ) { return delete j [ b . src ] , a } ) , j [ b . src ] = c , c ) } ) , a . all ( m ) } var j = { } ; return { findAll : g } } } ) ; g ( "83" , [ "66" ] , function ( a ) { var b = function ( ) { return a . getOrDie ( "URL" ) } , c = function ( a ) { return b ( ) . createObjectURL ( a ) } , d = function ( a ) { b ( ) . revokeObjectURL ( a ) } ; return { createObjectURL : c , revokeObjectURL : d } } ) , g ( "2j" , [ ] , function ( ) { var a = 0 , b = function ( ) { var a = function ( ) { return Math . round ( 4294967295 * Math . random ( ) ) . toString ( 36 ) } , b = ( new Date ) . getTime ( ) ; return "s" + b . toString ( 36 ) + a ( ) + a ( ) + a ( ) } , c = function ( c ) { return c + a ++ + b ( ) } ; return { uuid : c } } ) , g ( "7q" , [ "83" , "1h" , "4i" , "2j" ] , function ( a , b , c , d ) { return function ( ) { function e ( a ) { var b = { "image/jpeg" : "jpg" , "image/jpg" : "jpg" , "image/gif" : "gif" , "image/png" : "png" } ; return b [ a . toLowerCase ( ) ] || "dat" } function f ( a , b , c , d ) { return g ( "object" == typeof a ? a : { id : a , name : d , blob : b , base64 : c } ) } function g ( b ) { var c , f ; if ( ! b . blob || ! b . base64 ) throw "blob and base64 representations of the image are required for BlobInfo to be created" ; return c = b . id || d . uuid ( "blobid" ) , f = b . name || c , { id : o ( c ) , name : o ( f ) , filename : o ( f + "." + e ( b . blob . type ) ) , blob : o ( b . blob ) , base64 : o ( b . base64 ) , blobUri : o ( b . blobUri || a . createObjectURL ( b . blob ) ) , uri : o ( b . uri ) } } function h ( a ) { i ( a . id ( ) ) || n . push ( a ) } function i ( a ) { return j ( function ( b ) { return b . id ( ) === a } ) } function j ( a ) { return b . filter ( n , a ) [ 0 ] } function k ( a ) { return j ( function ( b ) { return b . blobUri ( ) == a } ) } function l ( c ) { n = b . filter ( n , function ( b ) { return b . blobUri ( ) !== c || ( a . revokeObjectURL ( b . blobUri ( ) ) , ! 1 ) } ) } function m ( ) { b . each ( n , function ( b ) { a . revokeObjectURL ( b . blobUri ( ) ) } ) , n = [ ] } var n = [ ] , o = c . constant ; return { create : f , add : h , get : i , getByUri : k , findFirst : j , removeByUri : l , destroy : m } } } ) , g ( "7r" , [ ] , function ( ) { return function ( ) { function a ( a , b ) { return { status : a , resultUri : b } } function b ( a ) {
function v ( q ) { function v ( a ) { return q . dom . hasClass ( a , "mce-offscreen-selection" ) } function A ( ) { var a = q . dom . get ( T ) ; return a ? a . getElementsByTagName ( "*" ) [ 0 ] : a } function B ( a ) { return q . dom . isBlock ( a ) } function C ( a ) { a && q . selection . setRng ( a ) } function D ( ) { return q . selection . getRng ( ) } function E ( a , b ) { q . selection . scrollIntoView ( a , b ) } function F ( a , b , c ) { var d ; return d = q . fire ( "ShowCaret" , { target : b , direction : a , before : c } ) , d . isDefaultPrevented ( ) ? null : ( E ( b , a === - 1 ) , S . show ( c , b ) ) } function G ( a , b ) { return b = l . normalizeRange ( a , R , b ) , a == - 1 ? k . fromRangeStart ( b ) : k . fromRangeEnd ( b ) } function H ( a ) { a . hasAttribute ( "data-mce-caret" ) && ( j . showCaretContainerBlock ( a ) , C ( D ( ) ) , E ( a [ 0 ] ) ) } function I ( ) { function a ( a ) { for ( var b = q . getBody ( ) ; a && a != b ; ) { if ( w ( a ) || x ( a ) ) return a ; a = a . parentNode } return null } function b ( b ) { var c = ! 1 ; b . on ( "touchstart" , function ( ) { c = ! 1 } ) , b . on ( "touchmove" , function ( ) { c = ! 0 } ) , b . on ( "touchend" , function ( d ) { var e = a ( d . target ) ; x ( e ) && ( c || ( d . preventDefault ( ) , M ( s . selectNode ( b , e ) ) ) ) } ) } q . on ( "mouseup" , function ( a ) { var b = D ( ) ; b . collapsed && h . isXYInContentArea ( q , a . clientX , a . clientY ) && C ( s . renderCaretAtRange ( q , b ) ) } ) , q . on ( "click" , function ( b ) { var c ; c = a ( b . target ) , c && ( x ( c ) && ( b . preventDefault ( ) , q . focus ( ) ) , w ( c ) && q . dom . isChildOf ( c , q . selection . getNode ( ) ) && N ( ) ) } ) , q . on ( "blur NewBlock" , function ( ) { N ( ) , P ( ) } ) ; var d = function ( a ) { var b = new m ( a ) ; if ( ! a . firstChild ) return ! 1 ; var c = k . before ( a . firstChild ) , d = b . next ( c ) ; return d && ! z ( d ) && ! y ( d ) } , e = function ( a , b ) { var c = q . dom . getParent ( a , q . dom . isBlock ) , d = q . dom . getParent ( b , q . dom . isBlock ) ; return c === d } , f = function ( a , b ) { var c = q . dom . getParent ( a , q . dom . isBlock ) , f = q . dom . getParent ( b , q . dom . isBlock ) ; return c && ! e ( c , f ) && d ( c ) } ; b ( q ) , q . on ( "mousedown" , function ( b ) { var d ; if ( h . isXYInContentArea ( q , b . clientX , b . clientY ) !== ! 1 ) if ( d = a ( b . target ) ) x ( d ) ? ( b . preventDefault ( ) , M ( s . selectNode ( q , d ) ) ) : ( N ( ) , w ( d ) && b . shiftKey || r . isXYWithinRange ( b . clientX , b . clientY , q . selection . getRng ( ) ) || ( p . isVoid ( c . fromDom ( b . target ) ) ? q . selection . select ( b . target ) : q . selection . placeCaretAt ( b . clientX , b . clientY ) ) ) ; else { N ( ) , P ( ) ; var e = o . closestCaret ( R , b . clientX , b . clientY ) ; e && ( f ( b . target , e . node ) || ( b . preventDefault ( ) , q . getBody ( ) . focus ( ) , C ( F ( 1 , e . node , e . before ) ) ) ) } } ) , q . on ( "keypress" , function ( a ) { if ( ! u . modifierPressed ( a ) ) switch ( a . keyCode ) { default : x ( q . selection . getNode ( ) ) && a . preventDefault ( ) } } ) , q . on ( "getSelectionRange" , function ( a ) { var b = a . range ; if ( Q ) { if ( ! Q . parentNode ) return void ( Q = null ) ; b = b . cloneRange ( ) , b . selectNode ( Q ) , a . range = b } } ) , q . on ( "setSelectionRange" , function ( a ) { var b ; b = M ( a . range , a . forward ) , b && ( a . range = b ) } ) , q . on ( "AfterSetSelectionRange" , function ( a ) { var b = a . range ; L ( b ) || P ( ) , v ( b . startContainer . parentNode ) || N ( ) } ) , q . on ( "focus" , function ( ) { t . setEditorTimeout ( q , function ( ) { q . selection . setRng ( s . renderRangeCaret ( q , q . selection . getRng ( ) ) ) } , 0 ) } ) , q . on ( "copy" , function ( a ) { var b = a . clipboardData ; if ( ! a . isDefaultPrevented ( ) && a . clipboardData && ! i . ie ) { var c = A ( ) ; c && ( a . preventDefault ( ) , b . clearData ( ) , b . setData ( "text/html" , c . outerHTML ) , b . setData ( "text/plain" , c . outerText ) ) } } ) , g . init ( q ) } function J ( ) { var a = q . contentStyles , b = ".mce-content-body" ; a . push ( S . getCss ( ) ) , a . push ( b + " .mce-offscreen-selection {position: absolute;left: -9999999999px;max-width: 1000000px;}" + b + " *[contentEditable=false] {cursor: default;}" + b + " *[contentEditable=true] {cursor: text;}" ) } function K ( a ) { return j . isCaretContainer ( a ) || j . startsWithCaretContainer ( a ) || j . endsWithCaretContainer ( a ) } function L ( a ) { return K ( a . startContainer ) || K ( a . endContainer ) } function M ( b , g ) { var h , j , k , l , m , n , o , p , r , s , t = q . $ , u = q . dom ; if ( ! b ) return null ; if ( b . collapsed ) { if ( ! L ( b ) ) if ( g === ! 1 ) { if ( p = G ( - 1 , b ) , x ( p . getNode ( ! 0 ) ) ) return F ( - 1 , p . getNode ( ! 0 ) , ! 1 ) ; if ( x ( p . getNode ( ) ) ) return F ( - 1 , p . getNode ( ) , ! p . isAtEnd ( ) ) } else { if ( p = G ( 1 , b ) , x ( p . getNode ( ) ) ) return F ( 1 , p . getNode ( ) , ! p . isAtEnd ( ) ) ; if ( x ( p . getNode ( ! 0 ) ) ) return F ( 1 , p . getNode ( ! 0 ) , ! 1 ) } return null } return l = b . startContainer , m = b . startOffset , n = b . endOffset , 3 == l . nodeType && 0 == m && x ( l . parentNode ) && ( l = l . parentNode , m = u . nodeIndex ( l ) , l = l . parentNode ) , 1 != l . nodeType ? null : ( n == m + 1 && ( h = l . childNodes [ m ] ) , x ( h ) ? ( r = s = h . cloneNode ( ! 0 ) , o = q . fire ( "ObjectSelected" , { target : h , targetClone : r } ) , o . isDefaultPrevented ( ) ? null : ( j = f . descendant ( c . fromDom ( q . getBody ( ) ) , "#" + T ) . fold ( function ( ) { return t ( [ ] ) } , function ( a ) { return t ( [ a . dom (
} ) , g = [ i . keyCode ] ; for ( h in f ) i [ h ] ? g . push ( h ) : i [ h ] = ! 1 ; return i . id = g . join ( "," ) , i . access && ( i . alt = ! 0 , b . mac ? i . ctrl = ! 0 : i . shift = ! 0 ) , i . meta && ( b . mac ? i . meta = ! 0 : ( i . ctrl = ! 0 , i . meta = ! 1 ) ) , i } function i ( b , c , e , f ) { var i ; return i = a . map ( d ( b , ">" ) , h ) , i [ i . length - 1 ] = a . extend ( i [ i . length - 1 ] , { func : e , scope : f || g } ) , a . extend ( i [ 0 ] , { desc : g . translate ( c ) , subpatterns : i . slice ( 1 ) } ) } function j ( a ) { return a . altKey || a . ctrlKey || a . metaKey } function k ( a ) { return "keydown" === a . type && a . keyCode >= 112 && a . keyCode <= 123 } function l ( a , b ) { return ! ! b && ( b . ctrl == a . ctrlKey && b . meta == a . metaKey && ( b . alt == a . altKey && b . shift == a . shiftKey && ( ! ! ( a . keyCode == b . keyCode || a . charCode && a . charCode == b . charCode ) && ( a . preventDefault ( ) , ! 0 ) ) ) ) } function m ( a ) { return a . func ? a . func . call ( a . scope ) : null } var n = this , o = { } , p = [ ] ; g . on ( "keyup keypress keydown" , function ( a ) { ! j ( a ) && ! k ( a ) || a . isDefaultPrevented ( ) || ( c ( o , function ( b ) { if ( l ( a , b ) ) return p = b . subpatterns . slice ( 0 ) , "keydown" == a . type && m ( b ) , ! 0 } ) , l ( a , p [ 0 ] ) && ( 1 === p . length && "keydown" == a . type && m ( p [ 0 ] ) , p . shift ( ) ) ) } ) , n . add = function ( b , e , f , h ) { var j ; return j = f , "string" == typeof f ? f = function ( ) { g . execCommand ( j , ! 1 , null ) } : a . isArray ( j ) && ( f = function ( ) { g . execCommand ( j [ 0 ] , j [ 1 ] , j [ 2 ] ) } ) , c ( d ( a . trim ( b . toLowerCase ( ) ) ) , function ( a ) { var b = i ( a , e , f , h ) ; o [ b . id ] = b } ) , ! 0 } , n . remove = function ( a ) { var b = i ( a ) ; return ! ! o [ b . id ] && ( delete o [ b . id ] , ! 0 ) } } } ) , g ( "2h" , [ ] , function ( ) { var a = function ( a , b , c ) { var d = a . sidebars ? a . sidebars : [ ] ; d . push ( { name : b , settings : c } ) , a . sidebars = d } ; return { add : a } } ) , g ( "1e" , [ "2i" , "1d" ] , function ( a , b ) { function c ( b , g ) { var h , i , j = this ; if ( b = e ( b ) , g = j . settings = g || { } , h = g . base _uri , /^([\w\-]+):([^\/]{2})/i . test ( b ) || /^\s*#/ . test ( b ) ) return void ( j . source = b ) ; var k = 0 === b . indexOf ( "//" ) ; 0 !== b . indexOf ( "/" ) || k || ( b = ( h ? h . protocol || "http" : "http" ) + "://mce_host" + b ) , /^[\w\-]*:?\/\// . test ( b ) || ( i = g . base _uri ? g . base _uri . path : new c ( a . location . href ) . directory , "" === g . base _uri . protocol ? b = "//mce_host" + j . toAbsPath ( i , b ) : ( b = /([^#?]*)([#?]?.*)/ . exec ( b ) , b = ( h && h . protocol || "http" ) + "://mce_host" + j . toAbsPath ( i , b [ 1 ] ) + b [ 2 ] ) ) , b = b . replace ( /@@/g , "(mce_at)" ) , b = /^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@\/]*):?([^:@\/]*))?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/ . exec ( b ) , d ( f , function ( a , c ) { var d = b [ c ] ; d && ( d = d . replace ( /\(mce_at\)/g , "@@" ) ) , j [ a ] = d } ) , h && ( j . protocol || ( j . protocol = h . protocol ) , j . userInfo || ( j . userInfo = h . userInfo ) , j . port || "mce_host" !== j . host || ( j . port = h . port ) , j . host && "mce_host" !== j . host || ( j . host = h . host ) , j . source = "" ) , k && ( j . protocol = "" ) } var d = b . each , e = b . trim , f = "source protocol authority userInfo user password host port relative path directory file query anchor" . split ( " " ) , g = { ftp : 21 , http : 80 , https : 443 , mailto : 25 } ; return c . prototype = { setPath : function ( a ) { var b = this ; a = /^(.*?)\/?(\w+)?$/ . exec ( a ) , b . path = a [ 0 ] , b . directory = a [ 1 ] , b . file = a [ 2 ] , b . source = "" , b . getURI ( ) } , toRelative : function ( a ) { var b , d = this ; if ( "./" === a ) return a ; if ( a = new c ( a , { base _uri : d } ) , "mce_host" != a . host && d . host != a . host && a . host || d . port != a . port || d . protocol != a . protocol && "" !== a . protocol ) return a . getURI ( ) ; var e = d . getURI ( ) , f = a . getURI ( ) ; return e == f || "/" == e . charAt ( e . length - 1 ) && e . substr ( 0 , e . length - 1 ) == f ? e : ( b = d . toRelPath ( d . path , a . path ) , a . query && ( b += "?" + a . query ) , a . anchor && ( b += "#" + a . anchor ) , b ) } , toAbsolute : function ( a , b ) { return a = new c ( a , { base _uri : this } ) , a . getURI ( b && this . isSameOrigin ( a ) ) } , isSameOrigin : function ( a ) { if ( this . host == a . host && this . protocol == a . protocol ) { if ( this . port == a . port ) return ! 0 ; var b = g [ this . protocol ] ; if ( b && ( this . port || b ) == ( a . port || b ) ) return ! 0 } return ! 1 } , toRelPath : function ( a , b ) { var c , d , e , f = 0 , g = "" ; if ( a = a . substring ( 0 , a . lastIndexOf ( "/" ) ) , a = a . split ( "/" ) , c = b . split ( "/" ) , a . length >= c . length ) for ( d = 0 , e = a . length ; d < e ; d ++ ) if ( d >= c . length || a [ d ] != c [ d ] ) { f = d + 1 ; break } if ( a . length < c . length ) for ( d = 0 , e = c . length ; d < e ; d ++ ) if ( d >= a . length || a [ d ] != c [ d ] ) { f = d + 1 ; break } if ( 1 === f ) return b ; for ( d = 0 , e = a . length - ( f - 1 ) ; d < e ; d ++ ) g += "../" ; for ( d = f - 1 , e = c . length ; d < e ; d ++ ) g += d != f - 1 ? "/" + c [ d ] : c [ d ] ; return g } , toAbsPath : function ( a , b ) { var c , e , f , g = 0 , h = [ ] ; for ( e = /\/$/ . test ( b ) ? "/" : "" , a = a . split ( "/" ) , b = b . split ( "/" ) , d ( a , function ( a ) { a && h . push ( a ) } ) , a = h , c = b . length - 1 , h = [ ] ; c >= 0 ; c -- ) 0 !== b [ c ] . length && "." !== b [ c ] && ( ".." !== b [ c ] ? g > 0 ? g -- : h . push ( b [ c ] ) : g ++ ) ; return c = a . length - g , f = c <= 0 ? h . re
} , renderHtml : function ( ) { var a , b , c = this , d = c . _id , e = c . settings , f = c . classPrefix , g = c . state . get ( "value" ) || "" , h = "" , i = "" , j = "" ; return "spellcheck" in e && ( i += ' spellcheck="' + e . spellcheck + '"' ) , e . maxLength && ( i += ' maxlength="' + e . maxLength + '"' ) , e . size && ( i += ' size="' + e . size + '"' ) , e . subtype && ( i += ' type="' + e . subtype + '"' ) , j = '<i id="' + d + '-status" class="mce-status mce-ico" style="display: none"></i>' , c . disabled ( ) && ( i += ' disabled="disabled"' ) , a = e . icon , a && "caret" != a && ( a = f + "ico " + f + "i-" + e . icon ) , b = c . state . get ( "text" ) , ( a || b ) && ( h = '<div id="' + d + '-open" class="' + f + "btn " + f + 'open" tabIndex="-1" role="button"><button id="' + d + '-action" type="button" hidefocus="1" tabindex="-1">' + ( "caret" != a ? '<i class="' + a + '"></i>' : '<i class="' + f + 'caret"></i>' ) + ( b ? ( a ? " " : "" ) + b : "" ) + "</button></div>" , c . classes . add ( "has-open" ) ) , '<div id="' + d + '" class="' + c . classes + '"><input id="' + d + '-inp" class="' + f + 'textbox" value="' + c . encode ( g , ! 1 ) + '" hidefocus="1"' + i + ' placeholder="' + c . encode ( e . placeholder ) + '" />' + j + h + "</div>" } , value : function ( a ) { return arguments . length ? ( this . state . set ( "value" , a ) , this ) : ( this . state . get ( "rendered" ) && this . state . set ( "value" , this . getEl ( "inp" ) . value ) , this . state . get ( "value" ) ) } , showAutoComplete : function ( a , c ) { var d = this ; if ( 0 === a . length ) return void d . hideMenu ( ) ; var e = function ( a , b ) { return function ( ) { d . fire ( "selectitem" , { title : b , value : a } ) } } ; d . menu ? d . menu . items ( ) . remove ( ) : d . menu = b . create ( { type : "menu" , classes : "combobox-menu" , layout : "flow" } ) . parent ( d ) . renderTo ( ) , f . each ( a , function ( a ) { d . menu . add ( { text : a . title , url : a . previewUrl , match : c , classes : "menu-item-ellipsis" , onclick : e ( a . value , a . title ) } ) } ) , d . menu . renderNew ( ) , d . hideMenu ( ) , d . menu . on ( "cancel" , function ( a ) { a . control . parent ( ) === d . menu && ( a . stopPropagation ( ) , d . focus ( ) , d . hideMenu ( ) ) } ) , d . menu . on ( "select" , function ( ) { d . focus ( ) } ) ; var g = d . layoutRect ( ) . w ; d . menu . layoutRect ( { w : g , minW : 0 , maxW : g } ) , d . menu . reflow ( ) , d . menu . show ( ) , d . menu . moveRel ( d . getEl ( ) , d . isRtl ( ) ? [ "br-tr" , "tr-br" ] : [ "bl-tl" , "tl-bl" ] ) } , hideMenu : function ( ) { this . menu && this . menu . hide ( ) } , bindStates : function ( ) { var a = this ; a . state . on ( "change:value" , function ( b ) { a . getEl ( "inp" ) . value != b . value && ( a . getEl ( "inp" ) . value = b . value ) } ) , a . state . on ( "change:disabled" , function ( b ) { a . getEl ( "inp" ) . disabled = b . value } ) , a . state . on ( "change:statusLevel" , function ( b ) { var d = a . getEl ( "status" ) , e = a . classPrefix , f = b . value ; c . css ( d , "display" , "none" === f ? "none" : "" ) , c . toggleClass ( d , e + "i-checkmark" , "ok" === f ) , c . toggleClass ( d , e + "i-warning" , "warn" === f ) , c . toggleClass ( d , e + "i-error" , "error" === f ) , a . classes . toggle ( "has-status" , "none" !== f ) , a . repaint ( ) } ) , c . on ( a . getEl ( "status" ) , "mouseleave" , function ( ) { a . tooltip ( ) . hide ( ) } ) , a . on ( "cancel" , function ( b ) { a . menu && a . menu . visible ( ) && ( b . stopPropagation ( ) , a . hideMenu ( ) ) } ) ; var b = function ( a , b ) { b && b . items ( ) . length > 0 && b . items ( ) . eq ( a ) [ 0 ] . focus ( ) } ; return a . on ( "keydown" , function ( c ) { var d = c . keyCode ; "INPUT" === c . target . nodeName && ( d === e . DOWN ? ( c . preventDefault ( ) , a . fire ( "autocomplete" ) , b ( 0 , a . menu ) ) : d === e . UP && ( c . preventDefault ( ) , b ( - 1 , a . menu ) ) ) } ) , a . _super ( ) } , remove : function ( ) { d ( this . getEl ( "inp" ) ) . off ( ) , this . menu && this . menu . remove ( ) , this . _super ( ) } } ) } ) , g ( "3c" , [ "3b" ] , function ( a ) { "use strict" ; return a . extend ( { init : function ( a ) { var b = this ; a . spellcheck = ! 1 , a . onaction && ( a . icon = "none" ) , b . _super ( a ) , b . classes . add ( "colorbox" ) , b . on ( "change keyup postrender" , function ( ) { b . repaintColor ( b . value ( ) ) } ) } , repaintColor : function ( a ) { var b = this . getEl ( "open" ) , c = b ? b . getElementsByTagName ( "i" ) [ 0 ] : null ; if ( c ) try { c . style . background = a } catch ( a ) { } } , bindStates : function ( ) { var a = this ; return a . state . on ( "change:value" , function ( b ) { a . state . get ( "rendered" ) && a . repaintColor ( b . value ) } ) , a . _super ( ) } } ) } ) , g ( "3d" , [ "38" , "2z" ] , function ( a , b ) { "use strict" ; return a . extend ( { showPanel : function ( ) { var a = this , c = a . settings ; if ( a . active ( ! 0 ) , a . panel ) a . panel . show ( ) ; else { var d = c . panel ; d . type && ( d = { layout : "grid" , items : d } ) , d . role = d . role || "dialog" , d . popover = ! 0 , d . autohide = ! 0 , d . ariaRoot = ! 0 , a . panel = new b ( d ) . on ( "hide" , function ( ) { a . active ( ! 1 ) } ) . on ( "cancel" , function ( b ) { b . stopPropagation ( ) , a . focus ( ) , a . hidePanel ( ) } ) . parent ( a ) . renderTo ( a . getContainerElm ( ) ) , a . panel . fire ( "show" ) , a . panel . reflow ( ) } var e = a . panel . testMoveRel ( a . getEl ( ) , c . popoverAlign || ( a . isRtl ( ) ? [ "bc-tc" , "bc-tl" , "bc-tr" ] : [ "bc-tc" , "
var G ; G = "start" == b . packV ? 0 : B > 0 ? Math . floor ( B / c ) : 0 ; var H = 0 , I = b . flexWidths ; if ( I ) for ( l = 0 ; l < I . length ; l ++ ) H += I [ l ] ; else H = d ; var J = A / H ; for ( l = 0 ; l < d ; l ++ ) E [ l ] += I ? I [ l ] * J : J ; for ( o = q . top , m = 0 ; m < c ; m ++ ) { for ( n = q . left , h = F [ m ] + G , l = 0 ; l < d && ( D = C ? m * d + d - 1 - l : m * d + l , k = e [ D ] , k ) ; l ++ ) p = k . settings , j = k . layoutRect ( ) , g = Math . max ( E [ l ] , j . startMinWidth ) , j . x = n , j . y = o , r = p . alignH || ( u ? u [ l ] || u [ 0 ] : null ) , "center" == r ? j . x = n + g / 2 - j . w / 2 : "right" == r ? j . x = n + g - j . w : "stretch" == r && ( j . w = g ) , r = p . alignV || ( v ? v [ l ] || v [ 0 ] : null ) , "center" == r ? j . y = o + h / 2 - j . h / 2 : "bottom" == r ? j . y = o + h - j . h : "stretch" == r && ( j . h = h ) , k . layoutRect ( j ) , n += g + s , k . recalc && k . recalc ( ) ; o += h + t } } else if ( i . w = i . minW , i . h = i . minH , a . layoutRect ( i ) , this . recalc ( a ) , null === a . _lastRect ) { var K = a . parent ( ) ; K && ( K . _lastRect = null , K . recalc ( ) ) } } } ) } ) , g ( "3r" , [ "33" , "14" ] , function ( a , b ) { "use strict" ; return a . extend ( { renderHtml : function ( ) { var a = this ; return a . classes . add ( "iframe" ) , a . canFocus = ! 1 , '<iframe id="' + a . _id + '" class="' + a . classes + '" tabindex="-1" src="' + ( a . settings . url || "javascript:''" ) + '" frameborder="0"></iframe>' } , src : function ( a ) { this . getEl ( ) . src = a } , html : function ( a , c ) { var d = this , e = this . getEl ( ) . contentWindow . document . body ; return e ? ( e . innerHTML = a , c && c ( ) ) : b . setTimeout ( function ( ) { d . html ( a ) } ) , this } } ) } ) , g ( "3s" , [ "33" ] , function ( a ) { "use strict" ; return a . extend ( { init : function ( a ) { var b = this ; b . _super ( a ) , b . classes . add ( "widget" ) . add ( "infobox" ) , b . canFocus = ! 1 } , severity : function ( a ) { this . classes . remove ( "error" ) , this . classes . remove ( "warning" ) , this . classes . remove ( "success" ) , this . classes . add ( a ) } , help : function ( a ) { this . state . set ( "help" , a ) } , renderHtml : function ( ) { var a = this , b = a . classPrefix ; return '<div id="' + a . _id + '" class="' + a . classes + '"><div id="' + a . _id + '-body">' + a . encode ( a . state . get ( "text" ) ) + '<button role="button" tabindex="-1"><i class="' + b + "ico " + b + 'i-help"></i></button></div></div>' } , bindStates : function ( ) { var a = this ; return a . state . on ( "change:text" , function ( b ) { a . getEl ( "body" ) . firstChild . data = a . encode ( b . value ) , a . state . get ( "rendered" ) && a . updateLayoutRect ( ) } ) , a . state . on ( "change:help" , function ( b ) { a . classes . toggle ( "has-help" , b . value ) , a . state . get ( "rendered" ) && a . updateLayoutRect ( ) } ) , a . _super ( ) } } ) } ) , g ( "3t" , [ "33" , "4z" ] , function ( a , b ) { "use strict" ; return a . extend ( { init : function ( a ) { var b = this ; b . _super ( a ) , b . classes . add ( "widget" ) . add ( "label" ) , b . canFocus = ! 1 , a . multiline && b . classes . add ( "autoscroll" ) , a . strong && b . classes . add ( "strong" ) } , initLayoutRect : function ( ) { var a = this , c = a . _super ( ) ; if ( a . settings . multiline ) { var d = b . getSize ( a . getEl ( ) ) ; d . width > c . maxW && ( c . minW = c . maxW , a . classes . add ( "multiline" ) ) , a . getEl ( ) . style . width = c . minW + "px" , c . startMinH = c . h = c . minH = Math . min ( c . maxH , b . getSize ( a . getEl ( ) ) . height ) } return c } , repaint : function ( ) { var a = this ; return a . settings . multiline || ( a . getEl ( ) . style . lineHeight = a . layoutRect ( ) . h + "px" ) , a . _super ( ) } , severity : function ( a ) { this . classes . remove ( "error" ) , this . classes . remove ( "warning" ) , this . classes . remove ( "success" ) , this . classes . add ( a ) } , renderHtml : function ( ) { var a , b , c = this , d = c . settings . forId , e = c . settings . html ? c . settings . html : c . encode ( c . state . get ( "text" ) ) ; return ! d && ( b = c . settings . forName ) && ( a = c . getRoot ( ) . find ( "#" + b ) [ 0 ] , a && ( d = a . _id ) ) , d ? '<label id="' + c . _id + '" class="' + c . classes + '"' + ( d ? ' for="' + d + '"' : "" ) + ">" + e + "</label>" : '<span id="' + c . _id + '" class="' + c . classes + '">' + e + "</span>" } , bindStates : function ( ) { var a = this ; return a . state . on ( "change:text" , function ( b ) { a . innerHtml ( a . encode ( b . value ) ) , a . state . get ( "rendered" ) && a . updateLayoutRect ( ) } ) , a . _super ( ) } } ) } ) , g ( "3u" , [ "2t" ] , function ( a ) { "use strict" ; return a . extend ( { Defaults : { role : "toolbar" , layout : "flow" } , init : function ( a ) { var b = this ; b . _super ( a ) , b . classes . add ( "toolbar" ) } , postRender : function ( ) { var a = this ; return a . items ( ) . each ( function ( a ) { a . classes . add ( "toolbar-item" ) } ) , a . _super ( ) } } ) } ) , g ( "3v" , [ "3u" ] , function ( a ) { "use strict" ; return a . extend ( { Defaults : { role : "menubar" , containerCls : "menubar" , ariaRoot : ! 0 , defaults : { type : "menubutton" } } } ) } ) , g ( "3w" , [ "38" , "2r" , "3v" ] , function ( a , b , c ) { "use strict" ; function d ( a , b ) { for ( ; a ; ) { if ( b === a ) return ! 0 ; a = a . parentNode } return ! 1 } var e = a . extend ( { init : function ( a ) { var b = this ; b . _renderOpen = ! 0 , b . _super ( a ) , a = b . settings , b . classes . add ( "menubtn" ) , a . fixedWidth && b . classes . add ( "fixed-width" ) , b . aria ( "haspopup" , ! 0 ) , b . state . set ( "menu" , a .
} , e = function ( a ) { window . tinymce = a , window . tinyMCE = a } ; return function ( ) { return e ( b ) , d ( b ) , b } } ) , d ( "0" ) ( ) } ( ) ;