Changeset 12525


Ignore:
Timestamp:
10/28/11 15:25:54 (8 years ago)
Author:
patdenice
Message:

feature:2487
Update jQuery to 1.6.4 and jQuery UI to 1.8.16

Location:
trunk/themes/default/js
Files:
1 added
110 edited

Legend:

Unmodified
Added
Removed
  • trunk/themes/default/js/jquery.js

    r12040 r12525  
    11/*! 
    2  * jQuery JavaScript Library v1.6.2 
     2 * jQuery JavaScript Library v1.6.4 
    33 * http://jquery.com/ 
    44 * 
     
    1212 * Released under the MIT, BSD, and GPL Licenses. 
    1313 * 
    14  * Date: Thu Jun 30 14:16:56 2011 -0400 
     14 * Date: Mon Sep 12 18:54:48 2011 -0400 
    1515 */ 
    1616(function( window, undefined ) { 
     
    3838 
    3939        // A simple way to check for HTML strings or ID strings 
    40         // (both of which we optimize for) 
    41         quickExpr = /^(?:[^<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/, 
     40        // Prioritize #id over <tag> to avoid XSS via location.hash (#9521) 
     41        quickExpr = /^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/, 
    4242 
    4343        // Check if a string has a non-whitespace character in it 
     
    6767 
    6868        // Matches dashed string for camelizing 
    69         rdashAlpha = /-([a-z])/ig, 
     69        rdashAlpha = /-([a-z]|[0-9])/ig, 
     70        rmsPrefix = /^-ms-/, 
    7071 
    7172        // Used by jQuery.camelCase as callback to replace() 
    7273        fcamelCase = function( all, letter ) { 
    73                 return letter.toUpperCase(); 
     74                return ( letter + "" ).toUpperCase(); 
    7475        }, 
    7576 
     
    213214 
    214215        // The current version of jQuery being used 
    215         jquery: "1.6.2", 
     216        jquery: "1.6.4", 
    216217 
    217218        // The default length of a jQuery object is 0 
     
    522523                } 
    523524 
    524                 // Not own constructor property must be Object 
    525                 if ( obj.constructor && 
    526                         !hasOwn.call(obj, "constructor") && 
    527                         !hasOwn.call(obj.constructor.prototype, "isPrototypeOf") ) { 
     525                try { 
     526                        // Not own constructor property must be Object 
     527                        if ( obj.constructor && 
     528                                !hasOwn.call(obj, "constructor") && 
     529                                !hasOwn.call(obj.constructor.prototype, "isPrototypeOf") ) { 
     530                                return false; 
     531                        } 
     532                } catch ( e ) { 
     533                        // IE8,9 Will throw exceptions on certain host objects #9897 
    528534                        return false; 
    529535                } 
     
    575581 
    576582        // Cross-browser xml parsing 
    577         // (xml & tmp used internally) 
    578         parseXML: function( data , xml , tmp ) { 
    579  
    580                 if ( window.DOMParser ) { // Standard 
    581                         tmp = new DOMParser(); 
    582                         xml = tmp.parseFromString( data , "text/xml" ); 
    583                 } else { // IE 
    584                         xml = new ActiveXObject( "Microsoft.XMLDOM" ); 
    585                         xml.async = "false"; 
    586                         xml.loadXML( data ); 
    587                 } 
    588  
    589                 tmp = xml.documentElement; 
    590  
    591                 if ( ! tmp || ! tmp.nodeName || tmp.nodeName === "parsererror" ) { 
     583        parseXML: function( data ) { 
     584                var xml, tmp; 
     585                try { 
     586                        if ( window.DOMParser ) { // Standard 
     587                                tmp = new DOMParser(); 
     588                                xml = tmp.parseFromString( data , "text/xml" ); 
     589                        } else { // IE 
     590                                xml = new ActiveXObject( "Microsoft.XMLDOM" ); 
     591                                xml.async = "false"; 
     592                                xml.loadXML( data ); 
     593                        } 
     594                } catch( e ) { 
     595                        xml = undefined; 
     596                } 
     597                if ( !xml || !xml.documentElement || xml.getElementsByTagName( "parsererror" ).length ) { 
    592598                        jQuery.error( "Invalid XML: " + data ); 
    593599                } 
    594  
    595600                return xml; 
    596601        }, 
     
    612617        }, 
    613618 
    614         // Converts a dashed string to camelCased string; 
    615         // Used by both the css and data modules 
     619        // Convert dashed to camelCase; used by the css and data modules 
     620        // Microsoft forgot to hump their vendor prefix (#9572) 
    616621        camelCase: function( string ) { 
    617                 return string.replace( rdashAlpha, fcamelCase ); 
     622                return string.replace( rmsPrefix, "ms-" ).replace( rdashAlpha, fcamelCase ); 
    618623        }, 
    619624 
     
    700705 
    701706        inArray: function( elem, array ) { 
     707                if ( !array ) { 
     708                        return -1; 
     709                } 
    702710 
    703711                if ( indexOf ) { 
     
    10721080                                                                        returned.promise().then( newDefer.resolve, newDefer.reject ); 
    10731081                                                                } else { 
    1074                                                                         newDefer[ action ]( returned ); 
     1082                                                                        newDefer[ action + "With" ]( this === deferred ? newDefer : this, [ returned ] ); 
    10751083                                                                } 
    10761084                                                        }); 
     
    11741182        div.innerHTML = "   <link/><table></table><a href='/a' style='top:1px;float:left;opacity:.55;'>a</a><input type='checkbox'/>"; 
    11751183 
     1184 
    11761185        all = div.getElementsByTagName( "*" ); 
    11771186        a = div.getElementsByTagName( "a" )[ 0 ]; 
     
    12941303                height: 0, 
    12951304                border: 0, 
    1296                 margin: 0 
     1305                margin: 0, 
     1306                background: "none" 
    12971307        }; 
    12981308        if ( body ) { 
    12991309                jQuery.extend( testElementStyle, { 
    13001310                        position: "absolute", 
    1301                         left: -1000, 
    1302                         top: -1000 
     1311                        left: "-1000px", 
     1312                        top: "-1000px" 
    13031313                }); 
    13041314        } 
     
    14051415 
    14061416var rbrace = /^(?:\{.*\}|\[.*\])$/, 
    1407         rmultiDash = /([a-z])([A-Z])/g; 
     1417        rmultiDash = /([A-Z])/g; 
    14081418 
    14091419jQuery.extend({ 
     
    14371447                } 
    14381448 
    1439                 var internalKey = jQuery.expando, getByName = typeof name === "string", thisCache, 
     1449                var thisCache, ret, 
     1450                        internalKey = jQuery.expando, 
     1451                        getByName = typeof name === "string", 
    14401452 
    14411453                        // We have to handle DOM nodes and JS objects differently because IE6-7 
     
    14531465                // Avoid doing any more work than we need to when trying to get data on an 
    14541466                // object that has no data at all 
    1455                 if ( (!id || (pvt && id && !cache[ id ][ internalKey ])) && getByName && data === undefined ) { 
     1467                if ( (!id || (pvt && id && (cache[ id ] && !cache[ id ][ internalKey ]))) && getByName && data === undefined ) { 
    14561468                        return; 
    14571469                } 
     
    15121524                } 
    15131525 
    1514                 return getByName ?  
    1515                         // Check for both converted-to-camel and non-converted data property names 
    1516                         thisCache[ jQuery.camelCase( name ) ] || thisCache[ name ] : 
    1517                         thisCache; 
     1526                // Check for both converted-to-camel and non-converted data property names 
     1527                // If a data property was specified 
     1528                if ( getByName ) { 
     1529 
     1530                        // First Try to find as-is property data 
     1531                        ret = thisCache[ name ]; 
     1532 
     1533                        // Test for null|undefined property data 
     1534                        if ( ret == null ) { 
     1535 
     1536                                // Try to find the camelCased property 
     1537                                ret = thisCache[ jQuery.camelCase( name ) ]; 
     1538                        } 
     1539                } else { 
     1540                        ret = thisCache; 
     1541                } 
     1542 
     1543                return ret; 
    15181544        }, 
    15191545 
     
    15231549                } 
    15241550 
    1525                 var internalKey = jQuery.expando, isNode = elem.nodeType, 
     1551                var thisCache, 
     1552 
     1553                        // Reference to internal data cache key 
     1554                        internalKey = jQuery.expando, 
     1555 
     1556                        isNode = elem.nodeType, 
    15261557 
    15271558                        // See jQuery.data for more information 
     
    15381569 
    15391570                if ( name ) { 
    1540                         var thisCache = pvt ? cache[ id ][ internalKey ] : cache[ id ]; 
     1571 
     1572                        thisCache = pvt ? cache[ id ][ internalKey ] : cache[ id ]; 
    15411573 
    15421574                        if ( thisCache ) { 
     1575 
     1576                                // Support interoperable removal of hyphenated or camelcased keys 
     1577                                if ( !thisCache[ name ] ) { 
     1578                                        name = jQuery.camelCase( name ); 
     1579                                } 
     1580 
    15431581                                delete thisCache[ name ]; 
    15441582 
     
    15671605                // the window, but it will allow it on all other JS objects; other browsers 
    15681606                // don't care 
    1569                 if ( jQuery.support.deleteExpando || cache != window ) { 
     1607                // Ensure that `cache` is not a window object #10080 
     1608                if ( jQuery.support.deleteExpando || !cache.setInterval ) { 
    15701609                        delete cache[ id ]; 
    15711610                } else { 
     
    16911730        // data from the HTML5 data-* attribute 
    16921731        if ( data === undefined && elem.nodeType === 1 ) { 
    1693                 var name = "data-" + key.replace( rmultiDash, "$1-$2" ).toLowerCase(); 
     1732 
     1733                var name = "data-" + key.replace( rmultiDash, "-$1" ).toLowerCase(); 
    16941734 
    16951735                data = elem.getAttribute( name ); 
     
    19111951        rclickable = /^a(?:rea)?$/i, 
    19121952        rboolean = /^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i, 
    1913         rinvalidChar = /\:|^on/, 
    1914         formHook, boolHook; 
     1953        nodeHook, boolHook; 
    19151954 
    19161955jQuery.fn.extend({ 
     
    20502089                var className = " " + selector + " "; 
    20512090                for ( var i = 0, l = this.length; i < l; i++ ) { 
    2052                         if ( (" " + this[i].className + " ").replace(rclass, " ").indexOf( className ) > -1 ) { 
     2091                        if ( this[i].nodeType === 1 && (" " + this[i].className + " ").replace(rclass, " ").indexOf( className ) > -1 ) { 
    20532092                                return true; 
    20542093                        } 
     
    22302269                                // Use boolHook for boolean attributes 
    22312270                                if ( rboolean.test( name ) ) { 
    2232  
    22332271                                        hooks = boolHook; 
    22342272 
    2235                                 // Use formHook for forms and if the name contains certain characters 
    2236                                 } else if ( formHook && name !== "className" && 
    2237                                         (jQuery.nodeName( elem, "form" ) || rinvalidChar.test( name )) ) { 
    2238  
    2239                                         hooks = formHook; 
     2273                                // Use nodeHook if available( IE6/7 ) 
     2274                                } else if ( nodeHook ) { 
     2275                                        hooks = nodeHook; 
    22402276                                } 
    22412277                        } 
     
    22742310                if ( elem.nodeType === 1 ) { 
    22752311                        name = jQuery.attrFix[ name ] || name; 
    2276                  
    2277                         if ( jQuery.support.getSetAttribute ) { 
    2278                                 // Use removeAttribute in browsers that support it 
    2279                                 elem.removeAttribute( name ); 
    2280                         } else { 
    2281                                 jQuery.attr( elem, name, "" ); 
    2282                                 elem.removeAttributeNode( elem.getAttributeNode( name ) ); 
    2283                         } 
     2312 
     2313                        jQuery.attr( elem, name, "" ); 
     2314                        elem.removeAttribute( name ); 
    22842315 
    22852316                        // Set corresponding property to false for boolean attributes 
     
    23092340                        } 
    23102341                }, 
    2311                 tabIndex: { 
    2312                         get: function( elem ) { 
    2313                                 // elem.tabIndex doesn't always return the correct value when it hasn't been explicitly set 
    2314                                 // http://fluidproject.org/blog/2008/01/09/getting-setting-and-removing-tabindex-values-with-javascript/ 
    2315                                 var attributeNode = elem.getAttributeNode("tabIndex"); 
    2316  
    2317                                 return attributeNode && attributeNode.specified ? 
    2318                                         parseInt( attributeNode.value, 10 ) : 
    2319                                         rfocusable.test( elem.nodeName ) || rclickable.test( elem.nodeName ) && elem.href ? 
    2320                                                 0 : 
    2321                                                 undefined; 
    2322                         } 
    2323                 }, 
    23242342                // Use the value property for back compat 
    2325                 // Use the formHook for button elements in IE6/7 (#1954) 
     2343                // Use the nodeHook for button elements in IE6/7 (#1954) 
    23262344                value: { 
    23272345                        get: function( elem, name ) { 
    2328                                 if ( formHook && jQuery.nodeName( elem, "button" ) ) { 
    2329                                         return formHook.get( elem, name ); 
     2346                                if ( nodeHook && jQuery.nodeName( elem, "button" ) ) { 
     2347                                        return nodeHook.get( elem, name ); 
    23302348                                } 
    23312349                                return name in elem ? 
     
    23342352                        }, 
    23352353                        set: function( elem, value, name ) { 
    2336                                 if ( formHook && jQuery.nodeName( elem, "button" ) ) { 
    2337                                         return formHook.set( elem, value, name ); 
     2354                                if ( nodeHook && jQuery.nodeName( elem, "button" ) ) { 
     2355                                        return nodeHook.set( elem, value, name ); 
    23382356                                } 
    23392357                                // Does not return so that setAttribute is also used 
     
    23842402 
    23852403                } else { 
    2386                         if ( hooks && "get" in hooks && (ret = hooks.get( elem, name )) !== undefined ) { 
     2404                        if ( hooks && "get" in hooks && (ret = hooks.get( elem, name )) !== null ) { 
    23872405                                return ret; 
    23882406 
     
    23932411        }, 
    23942412         
    2395         propHooks: {} 
     2413        propHooks: { 
     2414                tabIndex: { 
     2415                        get: function( elem ) { 
     2416                                // elem.tabIndex doesn't always return the correct value when it hasn't been explicitly set 
     2417                                // http://fluidproject.org/blog/2008/01/09/getting-setting-and-removing-tabindex-values-with-javascript/ 
     2418                                var attributeNode = elem.getAttributeNode("tabindex"); 
     2419 
     2420                                return attributeNode && attributeNode.specified ? 
     2421                                        parseInt( attributeNode.value, 10 ) : 
     2422                                        rfocusable.test( elem.nodeName ) || rclickable.test( elem.nodeName ) && elem.href ? 
     2423                                                0 : 
     2424                                                undefined; 
     2425                        } 
     2426                } 
     2427        } 
    23962428}); 
     2429 
     2430// Add the tabindex propHook to attrHooks for back-compat 
     2431jQuery.attrHooks.tabIndex = jQuery.propHooks.tabIndex; 
    23972432 
    23982433// Hook for boolean attributes 
     
    24002435        get: function( elem, name ) { 
    24012436                // Align boolean attributes with corresponding properties 
    2402                 return jQuery.prop( elem, name ) ? 
     2437                // Fall back to attribute presence where some booleans are not supported 
     2438                var attrNode; 
     2439                return jQuery.prop( elem, name ) === true || ( attrNode = elem.getAttributeNode( name ) ) && attrNode.nodeValue !== false ? 
    24032440                        name.toLowerCase() : 
    24042441                        undefined; 
     
    24262463// IE6/7 do not support getting/setting some attributes with get/setAttribute 
    24272464if ( !jQuery.support.getSetAttribute ) { 
    2428  
    2429         // propFix is more comprehensive and contains all fixes 
    2430         jQuery.attrFix = jQuery.propFix; 
    24312465         
    2432         // Use this for any attribute on a form in IE6/7 
    2433         formHook = jQuery.attrHooks.name = jQuery.attrHooks.title = jQuery.valHooks.button = { 
     2466        // Use this for any attribute in IE6/7 
     2467        // This fixes almost every IE6/7 issue 
     2468        nodeHook = jQuery.valHooks.button = { 
    24342469                get: function( elem, name ) { 
    24352470                        var ret; 
     
    24412476                }, 
    24422477                set: function( elem, value, name ) { 
    2443                         // Check form objects in IE (multiple bugs related) 
    2444                         // Only use nodeValue if the attribute node exists on the form 
     2478                        // Set the existing or create a new attribute node 
    24452479                        var ret = elem.getAttributeNode( name ); 
    2446                         if ( ret ) { 
    2447                                 ret.nodeValue = value; 
    2448                                 return value; 
    2449                         } 
     2480                        if ( !ret ) { 
     2481                                ret = document.createAttribute( name ); 
     2482                                elem.setAttributeNode( ret ); 
     2483                        } 
     2484                        return (ret.nodeValue = value + ""); 
    24502485                } 
    24512486        }; 
     
    25062541                                } 
    25072542                        } 
     2543                        return null; 
    25082544                } 
    25092545        }); 
     
    32363272                        if ( !jQuery.nodeName( this, "form" ) ) { 
    32373273                                jQuery.event.add(this, "click.specialSubmit", function( e ) { 
     3274                                        // Avoid triggering error on non-existent type attribute in IE VML (#7071) 
    32383275                                        var elem = e.target, 
    3239                                                 type = elem.type; 
     3276                                                type = jQuery.nodeName( elem, "input" ) || jQuery.nodeName( elem, "button" ) ? elem.type : ""; 
    32403277 
    32413278                                        if ( (type === "submit" || type === "image") && jQuery( elem ).closest("form").length ) { 
     
    32463283                                jQuery.event.add(this, "keypress.specialSubmit", function( e ) { 
    32473284                                        var elem = e.target, 
    3248                                                 type = elem.type; 
     3285                                                type = jQuery.nodeName( elem, "input" ) || jQuery.nodeName( elem, "button" ) ? elem.type : ""; 
    32493286 
    32503287                                        if ( (type === "text" || type === "password") && jQuery( elem ).closest("form").length && e.keyCode === 13 ) { 
     
    32713308 
    32723309        getVal = function( elem ) { 
    3273                 var type = elem.type, val = elem.value; 
     3310                var type = jQuery.nodeName( elem, "input" ) ? elem.type : "", 
     3311                        val = elem.value; 
    32743312 
    32753313                if ( type === "radio" || type === "checkbox" ) { 
     
    52965334        // the matched set of elements 
    52975335        index: function( elem ) { 
    5298                 if ( !elem || typeof elem === "string" ) { 
    5299                         return jQuery.inArray( this[0], 
    5300                                 // If it receives a string, the selector is used 
    5301                                 // If it receives nothing, the siblings are used 
    5302                                 elem ? jQuery( elem ) : this.parent().children() ); 
    5303                 } 
     5336 
     5337                // No argument, return index in parent 
     5338                if ( !elem ) { 
     5339                        return ( this[0] && this[0].parentNode ) ? this.prevAll().length : -1; 
     5340                } 
     5341 
     5342                // index in selector 
     5343                if ( typeof elem === "string" ) { 
     5344                        return jQuery.inArray( this[0], jQuery( elem ) ); 
     5345                } 
     5346 
    53045347                // Locate the position of the desired element 
    53055348                return jQuery.inArray( 
     
    60496092                        // elements on the page has a name or id of "length" 
    60506093                        for ( i = 0; srcElements[i]; ++i ) { 
    6051                                 cloneFixAttributes( srcElements[i], destElements[i] ); 
     6094                                // Ensure that the destination node is not null; Fixes #9587 
     6095                                if ( destElements[i] ) { 
     6096                                        cloneFixAttributes( srcElements[i], destElements[i] ); 
     6097                                } 
    60526098                        } 
    60536099                } 
     
    62496295 
    62506296 
     6297 
    62516298var ralpha = /alpha\([^)]*\)/i, 
    62526299        ropacity = /opacity=([^)]*)/, 
     
    62556302        rnumpx = /^-?\d+(?:px)?$/i, 
    62566303        rnum = /^-?\d/, 
    6257         rrelNum = /^[+\-]=/, 
    6258         rrelNumFilter = /[^+\-\.\de]+/g, 
     6304        rrelNum = /^([\-+])=([\-+.\de]+)/, 
    62596305 
    62606306        cssShow = { position: "absolute", visibility: "hidden", display: "block" }, 
     
    63336379                        type = typeof value; 
    63346380 
    6335                         // Make sure that NaN and null values aren't set. See: #7116 
    6336                         if ( type === "number" && isNaN( value ) || value == null ) { 
    6337                                 return; 
    6338                         } 
    6339  
    63406381                        // convert relative number strings (+= or -=) to relative numbers. #7345 
    6341                         if ( type === "string" && rrelNum.test( value ) ) { 
    6342                                 value = +value.replace( rrelNumFilter, "" ) + parseFloat( jQuery.css( elem, name ) ); 
     6382                        if ( type === "string" && (ret = rrelNum.exec( value )) ) { 
     6383                                value = ( +( ret[1] + 1) * +ret[2] ) + parseFloat( jQuery.css( elem, name ) ); 
    63436384                                // Fixes bug #9237 
    63446385                                type = "number"; 
     6386                        } 
     6387 
     6388                        // Make sure that NaN and null values aren't set. See: #7116 
     6389                        if ( value == null || type === "number" && isNaN( value ) ) { 
     6390                                return; 
    63456391                        } 
    63466392 
     
    64606506                set: function( elem, value ) { 
    64616507                        var style = elem.style, 
    6462                                 currentStyle = elem.currentStyle; 
     6508                                currentStyle = elem.currentStyle, 
     6509                                opacity = jQuery.isNaN( value ) ? "" : "alpha(opacity=" + value * 100 + ")", 
     6510                                filter = currentStyle && currentStyle.filter || style.filter || ""; 
    64636511 
    64646512                        // IE has trouble with opacity if it does not have layout 
     
    64666514                        style.zoom = 1; 
    64676515 
    6468                         // Set the alpha filter to set the opacity 
    6469                         var opacity = jQuery.isNaN( value ) ? 
    6470                                 "" : 
    6471                                 "alpha(opacity=" + value * 100 + ")", 
    6472                                 filter = currentStyle && currentStyle.filter || style.filter || ""; 
    6473  
     6516                        // if setting opacity to 1, and no other filters exist - attempt to remove filter attribute #6652 
     6517                        if ( value >= 1 && jQuery.trim( filter.replace( ralpha, "" ) ) === "" ) { 
     6518 
     6519                                // Setting style.filter to null, "" & " " still leave "filter:" in the cssText 
     6520                                // if "filter:" is present at all, clearType is disabled, we want to avoid this 
     6521                                // style.removeAttribute is IE Only, but so apparently is this code path... 
     6522                                style.removeAttribute( "filter" ); 
     6523 
     6524                                // if there there is no filter style applied in a css rule, we are done 
     6525                                if ( currentStyle && !currentStyle.filter ) { 
     6526                                        return; 
     6527                                } 
     6528                        } 
     6529 
     6530                        // otherwise, set new filter values 
    64746531                        style.filter = ralpha.test( filter ) ? 
    64756532                                filter.replace( ralpha, opacity ) : 
     
    66266683        rhash = /#.*$/, 
    66276684        rheaders = /^(.*?):[ \t]*([^\r\n]*)\r?$/mg, // IE leaves an \r character at EOL 
    6628         rinput = /^(?:color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i, 
     6685        rinput = /^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i, 
    66296686        // #7653, #8125, #8152: local protocol detection 
    6630         rlocalProtocol = /^(?:about|app|app\-storage|.+\-extension|file|widget):$/, 
     6687        rlocalProtocol = /^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/, 
    66316688        rnoContent = /^(?:GET|HEAD)$/, 
    66326689        rprotocol = /^\/\//, 
     
    66636720 
    66646721        // Document location segments 
    6665         ajaxLocParts; 
     6722        ajaxLocParts, 
     6723         
     6724        // Avoid comment-prolog char sequence (#10098); must appease lint and evade compression 
     6725        allTypes = ["*/"] + ["*"]; 
    66666726 
    66676727// #8138, IE may throw an exception when accessing 
     
    67546814        // but it'll be ignored by the caller in that case 
    67556815        return selection; 
     6816} 
     6817 
     6818// A special extend for ajax options 
     6819// that takes "flat" options (not to be deep extended) 
     6820// Fixes #9887 
     6821function ajaxExtend( target, src ) { 
     6822        var key, deep, 
     6823                flatOptions = jQuery.ajaxSettings.flatOptions || {}; 
     6824        for( key in src ) { 
     6825                if ( src[ key ] !== undefined ) { 
     6826                        ( flatOptions[ key ] ? target : ( deep || ( deep = {} ) ) )[ key ] = src[ key ]; 
     6827                } 
     6828        } 
     6829        if ( deep ) { 
     6830                jQuery.extend( true, target, deep ); 
     6831        } 
    67566832} 
    67576833 
     
    68996975        // with both ajaxSettings and settings fields. 
    69006976        // If target is omitted, writes into ajaxSettings. 
    6901         ajaxSetup: function ( target, settings ) { 
    6902                 if ( !settings ) { 
    6903                         // Only one parameter, we extend ajaxSettings 
     6977        ajaxSetup: function( target, settings ) { 
     6978                if ( settings ) { 
     6979                        // Building a settings object 
     6980                        ajaxExtend( target, jQuery.ajaxSettings ); 
     6981                } else { 
     6982                        // Extending ajaxSettings 
    69046983                        settings = target; 
    6905                         target = jQuery.extend( true, jQuery.ajaxSettings, settings ); 
    6906                 } else { 
    6907                         // target was provided, we extend into it 
    6908                         jQuery.extend( true, target, jQuery.ajaxSettings, settings ); 
    6909                 } 
    6910                 // Flatten fields we don't want deep extended 
    6911                 for( var field in { context: 1, url: 1 } ) { 
    6912                         if ( field in settings ) { 
    6913                                 target[ field ] = settings[ field ]; 
    6914                         } else if( field in jQuery.ajaxSettings ) { 
    6915                                 target[ field ] = jQuery.ajaxSettings[ field ]; 
    6916                         } 
    6917                 } 
     6984                        target = jQuery.ajaxSettings; 
     6985                } 
     6986                ajaxExtend( target, settings ); 
    69186987                return target; 
    69196988        }, 
     
    69437012                        text: "text/plain", 
    69447013                        json: "application/json, text/javascript", 
    6945                         "*": "*/*" 
     7014                        "*": allTypes 
    69467015                }, 
    69477016 
     
    69737042                        // Parse text as xml 
    69747043                        "text xml": jQuery.parseXML 
     7044                }, 
     7045 
     7046                // For options that shouldn't be deep extended: 
     7047                // you can add your own custom options here if 
     7048                // and when you create one that shouldn't be 
     7049                // deep extended (see ajaxExtend) 
     7050                flatOptions: { 
     7051                        context: true, 
     7052                        url: true 
    69757053                } 
    69767054        }, 
     
    70837161                // It is defined here because jslint complains if it is declared 
    70847162                // at the end of the function (which would be more logical and readable) 
    7085                 function done( status, statusText, responses, headers ) { 
     7163                function done( status, nativeStatusText, responses, headers ) { 
    70867164 
    70877165                        // Called once 
     
    71067184 
    71077185                        // Set readyState 
    7108                         jqXHR.readyState = status ? 4 : 0; 
     7186                        jqXHR.readyState = status > 0 ? 4 : 0; 
    71097187 
    71107188                        var isSuccess, 
    71117189                                success, 
    71127190                                error, 
     7191                                statusText = nativeStatusText, 
    71137192                                response = responses ? ajaxHandleResponses( s, jqXHR, responses ) : undefined, 
    71147193                                lastModified, 
     
    71627241                        // Set data for the fake xhr object 
    71637242                        jqXHR.status = status; 
    7164                         jqXHR.statusText = statusText; 
     7243                        jqXHR.statusText = "" + ( nativeStatusText || statusText ); 
    71657244 
    71667245                        // Success/Error 
     
    71847263 
    71857264                        if ( fireGlobals ) { 
    7186                                 globalEventContext.trigger( "ajaxComplete", [ jqXHR, s] ); 
     7265                                globalEventContext.trigger( "ajaxComplete", [ jqXHR, s ] ); 
    71877266                                // Handle the global AJAX counter 
    71887267                                if ( !( --jQuery.active ) ) { 
     
    72657344                        if ( s.data ) { 
    72667345                                s.url += ( rquery.test( s.url ) ? "&" : "?" ) + s.data; 
     7346                                // #9682: remove data so that it's not used in an eventual retry 
     7347                                delete s.data; 
    72677348                        } 
    72687349 
     
    73027383                        "Accept", 
    73037384                        s.dataTypes[ 0 ] && s.accepts[ s.dataTypes[0] ] ? 
    7304                                 s.accepts[ s.dataTypes[0] ] + ( s.dataTypes[ 0 ] !== "*" ? ", */*; q=0.01" : "" ) : 
     7385                                s.accepts[ s.dataTypes[0] ] + ( s.dataTypes[ 0 ] !== "*" ? ", " + allTypes + "; q=0.01" : "" ) : 
    73057386                                s.accepts[ "*" ] 
    73067387                ); 
     
    73487429                        } catch (e) { 
    73497430                                // Propagate exception as error if not done 
    7350                                 if ( status < 2 ) { 
     7431                                if ( state < 2 ) { 
    73517432                                        done( -1, e ); 
    73527433                                // Simply rethrow otherwise 
     
    79968077                [ "opacity" ] 
    79978078        ], 
    7998         fxNow, 
    7999         requestAnimationFrame = window.webkitRequestAnimationFrame || 
    8000                 window.mozRequestAnimationFrame || 
    8001                 window.oRequestAnimationFrame; 
     8079        fxNow; 
    80028080 
    80038081jQuery.fn.extend({ 
     
    83758453        custom: function( from, to, unit ) { 
    83768454                var self = this, 
    8377                         fx = jQuery.fx, 
    8378                         raf; 
     8455                        fx = jQuery.fx; 
    83798456 
    83808457                this.startTime = fxNow || createFxNow(); 
     
    83928469 
    83938470                if ( t() && jQuery.timers.push(t) && !timerId ) { 
    8394                         // Use requestAnimationFrame instead of setInterval if available 
    8395                         if ( requestAnimationFrame ) { 
    8396                                 timerId = true; 
    8397                                 raf = function() { 
    8398                                         // When timerId gets set to null at any point, this stops 
    8399                                         if ( timerId ) { 
    8400                                                 requestAnimationFrame( raf ); 
    8401                                                 fx.tick(); 
    8402                                         } 
    8403                                 }; 
    8404                                 requestAnimationFrame( raf ); 
    8405                         } else { 
    8406                                 timerId = setInterval( fx.tick, fx.interval ); 
    8407                         } 
     8471                        timerId = setInterval( fx.tick, fx.interval ); 
    84088472                } 
    84098473        }, 
     
    89489012                        // Everyone else use document.documentElement or document.body depending on Quirks vs Standards mode 
    89499013                        // 3rd condition allows Nokia support, as it supports the docElem prop but not CSS1Compat 
    8950                         var docElemProp = elem.document.documentElement[ "client" + name ]; 
     9014                        var docElemProp = elem.document.documentElement[ "client" + name ], 
     9015                                body = elem.document.body; 
    89519016                        return elem.document.compatMode === "CSS1Compat" && docElemProp || 
    8952                                 elem.document.body[ "client" + name ] || docElemProp; 
     9017                                body && body[ "client" + name ] || docElemProp; 
    89539018 
    89549019                // Get document width or height 
  • trunk/themes/default/js/jquery.min.js

    r12040 r12525  
    1 /*! 
    2  * jQuery JavaScript Library v1.6.2 
    3  * http://jquery.com/ 
    4  * 
    5  * Copyright 2011, John Resig 
    6  * Dual licensed under the MIT or GPL Version 2 licenses. 
    7  * http://jquery.org/license 
    8  * 
    9  * Includes Sizzle.js 
    10  * http://sizzlejs.com/ 
    11  * Copyright 2011, The Dojo Foundation 
    12  * Released under the MIT, BSD, and GPL Licenses. 
    13  * 
    14  * Date: Thu Jun 30 14:16:56 2011 -0400 
    15  */ 
    16 (function(a,b){function cv(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cs(a){if(!cg[a]){var b=c.body,d=f("<"+a+">").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){ch||(ch=c.createElement("iframe"),ch.frameBorder=ch.width=ch.height=0),b.appendChild(ch);if(!ci||!ch.createElement)ci=(ch.contentWindow||ch.contentDocument).document,ci.write((c.compatMode==="CSS1Compat"?"<!doctype html>":"")+"<html><body>"),ci.close();d=ci.createElement(a),ci.body.appendChild(d),e=f.css(d,"display"),b.removeChild(ch)}cg[a]=e}return cg[a]}function cr(a,b){var c={};f.each(cm.concat.apply([],cm.slice(0,b)),function(){c[this]=a});return c}function cq(){cn=b}function cp(){setTimeout(cq,0);return cn=f.now()}function cf(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ce(){try{return new a.XMLHttpRequest}catch(b){}}function b$(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g<i;g++){if(g===1)for(h in a.converters)typeof h=="string"&&(e[h.toLowerCase()]=a.converters[h]);l=k,k=d[g];if(k==="*")k=l;else if(l!=="*"&&l!==k){m=l+" "+k,n=e[m]||e["* "+k];if(!n){p=b;for(o in e){j=o.split(" ");if(j[0]===l||j[0]==="*"){p=e[j[1]+" "+k];if(p){o=e[o],o===!0?n=p:p===!0&&(n=o);break}}}}!n&&!p&&f.error("No conversion from "+m.replace(" "," to ")),n!==!0&&(c=n?n(c):p(o(c)))}}return c}function bZ(a,c,d){var e=a.contents,f=a.dataTypes,g=a.responseFields,h,i,j,k;for(i in g)i in d&&(c[g[i]]=d[i]);while(f[0]==="*")f.shift(),h===b&&(h=a.mimeType||c.getResponseHeader("content-type"));if(h)for(i in e)if(e[i]&&e[i].test(h)){f.unshift(i);break}if(f[0]in d)j=f[0];else{for(i in d){if(!f[0]||a.converters[i+" "+f[0]]){j=i;break}k||(k=i)}j=j||k}if(j){j!==f[0]&&f.unshift(j);return d[j]}}function bY(a,b,c,d){if(f.isArray(b))f.each(b,function(b,e){c||bC.test(a)?d(a,e):bY(a+"["+(typeof e=="object"||f.isArray(e)?b:"")+"]",e,c,d)});else if(!c&&b!=null&&typeof b=="object")for(var e in b)bY(a+"["+e+"]",b[e],c,d);else d(a,b)}function bX(a,c,d,e,f,g){f=f||c.dataTypes[0],g=g||{},g[f]=!0;var h=a[f],i=0,j=h?h.length:0,k=a===bR,l;for(;i<j&&(k||!l);i++)l=h[i](c,d,e),typeof l=="string"&&(!k||g[l]?l=b:(c.dataTypes.unshift(l),l=bX(a,c,d,e,l,g)));(k||!l)&&!g["*"]&&(l=bX(a,c,d,e,"*",g));return l}function bW(a){return function(b,c){typeof b!="string"&&(c=b,b="*");if(f.isFunction(c)){var d=b.toLowerCase().split(bN),e=0,g=d.length,h,i,j;for(;e<g;e++)h=d[e],j=/^\+/.test(h),j&&(h=h.substr(1)||"*"),i=a[h]=a[h]||[],i[j?"unshift":"push"](c)}}}function bA(a,b,c){var d=b==="width"?a.offsetWidth:a.offsetHeight,e=b==="width"?bv:bw;if(d>0){c!=="border"&&f.each(e,function(){c||(d-=parseFloat(f.css(a,"padding"+this))||0),c==="margin"?d+=parseFloat(f.css(a,c+this))||0:d-=parseFloat(f.css(a,"border"+this+"Width"))||0});return d+"px"}d=bx(a,b,b);if(d<0||d==null)d=a.style[b]||0;d=parseFloat(d)||0,c&&f.each(e,function(){d+=parseFloat(f.css(a,"padding"+this))||0,c!=="padding"&&(d+=parseFloat(f.css(a,"border"+this+"Width"))||0),c==="margin"&&(d+=parseFloat(f.css(a,c+this))||0)});return d+"px"}function bm(a,b){b.src?f.ajax({url:b.src,async:!1,dataType:"script"}):f.globalEval((b.text||b.textContent||b.innerHTML||"").replace(be,"/*$0*/")),b.parentNode&&b.parentNode.removeChild(b)}function bl(a){f.nodeName(a,"input")?bk(a):"getElementsByTagName"in a&&f.grep(a.getElementsByTagName("input"),bk)}function bk(a){if(a.type==="checkbox"||a.type==="radio")a.defaultChecked=a.checked}function bj(a){return"getElementsByTagName"in a?a.getElementsByTagName("*"):"querySelectorAll"in a?a.querySelectorAll("*"):[]}function bi(a,b){var c;if(b.nodeType===1){b.clearAttributes&&b.clearAttributes(),b.mergeAttributes&&b.mergeAttributes(a),c=b.nodeName.toLowerCase();if(c==="object")b.outerHTML=a.outerHTML;else if(c!=="input"||a.type!=="checkbox"&&a.type!=="radio"){if(c==="option")b.selected=a.defaultSelected;else if(c==="input"||c==="textarea")b.defaultValue=a.defaultValue}else a.checked&&(b.defaultChecked=b.checked=a.checked),b.value!==a.value&&(b.value=a.value);b.removeAttribute(f.expando)}}function bh(a,b){if(b.nodeType===1&&!!f.hasData(a)){var c=f.expando,d=f.data(a),e=f.data(b,d);if(d=d[c]){var g=d.events;e=e[c]=f.extend({},d);if(g){delete e.handle,e.events={};for(var h in g)for(var i=0,j=g[h].length;i<j;i++)f.event.add(b,h+(g[h][i].namespace?".":"")+g[h][i].namespace,g[h][i],g[h][i].data)}}}}function bg(a,b){return f.nodeName(a,"table")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function W(a,b,c){b=b||0;if(f.isFunction(b))return f.grep(a,function(a,d){var e=!!b.call(a,d,a);return e===c});if(b.nodeType)return f.grep(a,function(a,d){return a===b===c});if(typeof b=="string"){var d=f.grep(a,function(a){return a.nodeType===1});if(R.test(b))return f.filter(b,d,!c);b=f.filter(b,d)}return f.grep(a,function(a,d){return f.inArray(a,b)>=0===c})}function V(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function N(a,b){return(a&&a!=="*"?a+".":"")+b.replace(z,"`").replace(A,"&")}function M(a){var b,c,d,e,g,h,i,j,k,l,m,n,o,p=[],q=[],r=f._data(this,"events");if(!(a.liveFired===this||!r||!r.live||a.target.disabled||a.button&&a.type==="click")){a.namespace&&(n=new RegExp("(^|\\.)"+a.namespace.split(".").join("\\.(?:.*\\.)?")+"(\\.|$)")),a.liveFired=this;var s=r.live.slice(0);for(i=0;i<s.length;i++)g=s[i],g.origType.replace(x,"")===a.type?q.push(g.selector):s.splice(i--,1);e=f(a.target).closest(q,a.currentTarget);for(j=0,k=e.length;j<k;j++){m=e[j];for(i=0;i<s.length;i++){g=s[i];if(m.selector===g.selector&&(!n||n.test(g.namespace))&&!m.elem.disabled){h=m.elem,d=null;if(g.preType==="mouseenter"||g.preType==="mouseleave")a.type=g.preType,d=f(a.relatedTarget).closest(g.selector)[0],d&&f.contains(h,d)&&(d=h);(!d||d!==h)&&p.push({elem:h,handleObj:g,level:m.level})}}}for(j=0,k=p.length;j<k;j++){e=p[j];if(c&&e.level>c)break;a.currentTarget=e.elem,a.data=e.handleObj.data,a.handleObj=e.handleObj,o=e.handleObj.origHandler.apply(e.elem,arguments);if(o===!1||a.isPropagationStopped()){c=e.level,o===!1&&(b=!1);if(a.isImmediatePropagationStopped())break}}return b}}function K(a,c,d){var e=f.extend({},d[0]);e.type=a,e.originalEvent={},e.liveFired=b,f.event.handle.call(c,e),e.isDefaultPrevented()&&d[0].preventDefault()}function E(){return!0}function D(){return!1}function m(a,c,d){var e=c+"defer",g=c+"queue",h=c+"mark",i=f.data(a,e,b,!0);i&&(d==="queue"||!f.data(a,g,b,!0))&&(d==="mark"||!f.data(a,h,b,!0))&&setTimeout(function(){!f.data(a,g,b,!0)&&!f.data(a,h,b,!0)&&(f.removeData(a,e,!0),i.resolve())},0)}function l(a){for(var b in a)if(b!=="toJSON")return!1;return!0}function k(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(j,"$1-$2").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNaN(d)?i.test(d)?f.parseJSON(d):d:parseFloat(d)}catch(g){}f.data(a,c,d)}else d=b}return d}var c=a.document,d=a.navigator,e=a.location,f=function(){function J(){if(!e.isReady){try{c.documentElement.doScroll("left")}catch(a){setTimeout(J,1);return}e.ready()}}var e=function(a,b){return new e.fn.init(a,b,h)},f=a.jQuery,g=a.$,h,i=/^(?:[^<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/\d/,n=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,o=/^[\],:{}\s]*$/,p=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,q=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,r=/(?:^|:|,)(?:\s*\[)+/g,s=/(webkit)[ \/]([\w.]+)/,t=/(opera)(?:.*version)?[ \/]([\w.]+)/,u=/(msie) ([\w.]+)/,v=/(mozilla)(?:.*? rv:([\w.]+))?/,w=/-([a-z])/ig,x=function(a,b){return b.toUpperCase()},y=d.userAgent,z,A,B,C=Object.prototype.toString,D=Object.prototype.hasOwnProperty,E=Array.prototype.push,F=Array.prototype.slice,G=String.prototype.trim,H=Array.prototype.indexOf,I={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=n.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.6.2",length:0,size:function(){return this.length},toArray:function(){return F.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?E.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),A.done(a);return this},eq:function(a){return a===-1?this.slice(a):this.slice(a,+a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(F.apply(this,arguments),"slice",F.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:E,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j<k;j++)if((a=arguments[j])!=null)for(c in a){d=i[c],f=a[c];if(i===f)continue;l&&f&&(e.isPlainObject(f)||(g=e.isArray(f)))?(g?(g=!1,h=d&&e.isArray(d)?d:[]):h=d&&e.isPlainObject(d)?d:{},i[c]=e.extend(l,h,f)):f!==b&&(i[c]=f)}return i},e.extend({noConflict:function(b){a.$===e&&(a.$=g),b&&a.jQuery===e&&(a.jQuery=f);return e},isReady:!1,readyWait:1,holdReady:function(a){a?e.readyWait++:e.ready(!0)},ready:function(a){if(a===!0&&!--e.readyWait||a!==!0&&!e.isReady){if(!c.body)return setTimeout(e.ready,1);e.isReady=!0;if(a!==!0&&--e.readyWait>0)return;A.resolveWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").unbind("ready")}},bindReady:function(){if(!A){A=e._Deferred();if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",B,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",B),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&J()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a&&typeof a=="object"&&"setInterval"in a},isNaN:function(a){return a==null||!m.test(a)||isNaN(a)},type:function(a){return a==null?String(a):I[C.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;if(a.constructor&&!D.call(a,"constructor")&&!D.call(a.constructor.prototype,"isPrototypeOf"))return!1;var c;for(c in a);return c===b||D.call(a,c)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw a},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(o.test(b.replace(p,"@").replace(q,"]").replace(r,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(b,c,d){a.DOMParser?(d=new DOMParser,c=d.parseFromString(b,"text/xml")):(c=new ActiveXObject("Microsoft.XMLDOM"),c.async="false",c.loadXML(b)),d=c.documentElement,(!d||!d.nodeName||d.nodeName==="parsererror")&&e.error("Invalid XML: "+b);return c},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(w,x)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g<h;)if(c.apply(a[g++],d)===!1)break}else if(i){for(f in a)if(c.call(a[f],f,a[f])===!1)break}else for(;g<h;)if(c.call(a[g],g,a[g++])===!1)break;return a},trim:G?function(a){return a==null?"":G.call(a)}:function(a){return a==null?"":(a+"").replace(k,"").replace(l,"")},makeArray:function(a,b){var c=b||[];if(a!=null){var d=e.type(a);a.length==null||d==="string"||d==="function"||d==="regexp"||e.isWindow(a)?E.call(c,a):e.merge(c,a)}return c},inArray:function(a,b){if(H)return H.call(b,a);for(var c=0,d=b.length;c<d;c++)if(b[c]===a)return c;return-1},merge:function(a,c){var d=a.length,e=0;if(typeof c.length=="number")for(var f=c.length;e<f;e++)a[d++]=c[e];else while(c[e]!==b)a[d++]=c[e++];a.length=d;return a},grep:function(a,b,c){var d=[],e;c=!!c;for(var f=0,g=a.length;f<g;f++)e=!!b(a[f],f),c!==e&&d.push(a[f]);return d},map:function(a,c,d){var f,g,h=[],i=0,j=a.length,k=a instanceof e||j!==b&&typeof j=="number"&&(j>0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i<j;i++)f=c(a[i],i,d),f!=null&&(h[h.length]=f);else for(g in a)f=c(a[g],g,d),f!=null&&(h[h.length]=f);return h.concat.apply([],h)},guid:1,proxy:function(a,c){if(typeof c=="string"){var d=a[c];c=a,a=d}if(!e.isFunction(a))return b;var f=F.call(arguments,2),g=function(){return a.apply(c,f.concat(F.call(arguments)))};g.guid=a.guid=a.guid||g.guid||e.guid++;return g},access:function(a,c,d,f,g,h){var i=a.length;if(typeof c=="object"){for(var j in c)e.access(a,j,c[j],f,g,d);return a}if(d!==b){f=!h&&f&&e.isFunction(d);for(var k=0;k<i;k++)g(a[k],c,f?d.call(a[k],k,g(a[k],c)):d,h);return a}return i?g(a[0],c):b},now:function(){return(new Date).getTime()},uaMatch:function(a){a=a.toLowerCase();var b=s.exec(a)||t.exec(a)||u.exec(a)||a.indexOf("compatible")<0&&v.exec(a)||[];return{browser:b[1]||"",version:b[2]||"0"}},sub:function(){function a(b,c){return new a.fn.init(b,c)}e.extend(!0,a,this),a.superclass=this,a.fn=a.prototype=this(),a.fn.constructor=a,a.sub=this.sub,a.fn.init=function(d,f){f&&f instanceof e&&!(f instanceof a)&&(f=a(f));return e.fn.init.call(this,d,f,b)},a.fn.init.prototype=a.fn;var b=a(c);return a},browser:{}}),e.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(a,b){I["[object "+b+"]"]=b.toLowerCase()}),z=e.uaMatch(y),z.browser&&(e.browser[z.browser]=!0,e.browser.version=z.version),e.browser.webkit&&(e.browser.safari=!0),j.test(" ")&&(k=/^[\s\xA0]+/,l=/[\s\xA0]+$/),h=e(c),c.addEventListener?B=function(){c.removeEventListener("DOMContentLoaded",B,!1),e.ready()}:c.attachEvent&&(B=function(){c.readyState==="complete"&&(c.detachEvent("onreadystatechange",B),e.ready())});return e}(),g="done fail isResolved isRejected promise then always pipe".split(" "),h=[].slice;f.extend({_Deferred:function(){var a=[],b,c,d,e={done:function(){if(!d){var c=arguments,g,h,i,j,k;b&&(k=b,b=0);for(g=0,h=c.length;g<h;g++)i=c[g],j=f.type(i),j==="array"?e.done.apply(e,i):j==="function"&&a.push(i);k&&e.resolveWith(k[0],k[1])}return this},resolveWith:function(e,f){if(!d&&!b&&!c){f=f||[],c=1;try{while(a[0])a.shift().apply(e,f)}finally{b=[e,f],c=0}}return this},resolve:function(){e.resolveWith(this,arguments);return this},isResolved:function(){return!!c||!!b},cancel:function(){d=1,a=[];return this}};return e},Deferred:function(a){var b=f._Deferred(),c=f._Deferred(),d;f.extend(b,{then:function(a,c){b.done(a).fail(c);return this},always:function(){return b.done.apply(b,arguments).fail.apply(this,arguments)},fail:c.done,rejectWith:c.resolveWith,reject:c.resolve,isRejected:c.isResolved,pipe:function(a,c){return f.Deferred(function(d){f.each({done:[a,"resolve"],fail:[c,"reject"]},function(a,c){var e=c[0],g=c[1],h;f.isFunction(e)?b[a](function(){h=e.apply(this,arguments),h&&f.isFunction(h.promise)?h.promise().then(d.resolve,d.reject):d[g](h)}):b[a](d[g])})}).promise()},promise:function(a){if(a==null){if(d)return d;d=a={}}var c=g.length;while(c--)a[g[c]]=b[g[c]];return a}}),b.done(c.cancel).fail(b.cancel),delete b.cancel,a&&a.call(b,b);return b},when:function(a){function i(a){return function(c){b[a]=arguments.length>1?h.call(arguments,0):c,--e||g.resolveWith(g,h.call(b,0))}}var b=arguments,c=0,d=b.length,e=d,g=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred();if(d>1){for(;c<d;c++)b[c]&&f.isFunction(b[c].promise)?b[c].promise().then(i(c),g.reject):--e;e||g.resolveWith(g,b)}else g!==a&&g.resolveWith(g,d?[a]:[]);return g.promise()}}),f.support=function(){var a=c.createElement("div"),b=c.documentElement,d,e,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;a.setAttribute("className","t"),a.innerHTML="   <link/><table></table><a href='/a' style='top:1px;float:left;opacity:.55;'>a</a><input type='checkbox'/>",d=a.getElementsByTagName("*"),e=a.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=a.getElementsByTagName("input")[0],k={leadingWhitespace:a.firstChild.nodeType===3,tbody:!a.getElementsByTagName("tbody").length,htmlSerialize:!!a.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55$/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:a.className!=="t",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},i.checked=!0,k.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,k.optDisabled=!h.disabled;try{delete a.test}catch(v){k.deleteExpando=!1}!a.addEventListener&&a.attachEvent&&a.fireEvent&&(a.attachEvent("onclick",function(){k.noCloneEvent=!1}),a.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),k.radioValue=i.value==="t",i.setAttribute("checked","checked"),a.appendChild(i),l=c.createDocumentFragment(),l.appendChild(a.firstChild),k.checkClone=l.cloneNode(!0).cloneNode(!0).lastChild.checked,a.innerHTML="",a.style.width=a.style.paddingLeft="1px",m=c.getElementsByTagName("body")[0],o=c.createElement(m?"div":"body"),p={visibility:"hidden",width:0,height:0,border:0,margin:0},m&&f.extend(p,{position:"absolute",left:-1e3,top:-1e3});for(t in p)o.style[t]=p[t];o.appendChild(a),n=m||b,n.insertBefore(o,n.firstChild),k.appendChecked=i.checked,k.boxModel=a.offsetWidth===2,"zoom"in a.style&&(a.style.display="inline",a.style.zoom=1,k.inlineBlockNeedsLayout=a.offsetWidth===2,a.style.display="",a.innerHTML="<div style='width:4px;'></div>",k.shrinkWrapBlocks=a.offsetWidth!==2),a.innerHTML="<table><tr><td style='padding:0;border:0;display:none'></td><td>t</td></tr></table>",q=a.getElementsByTagName("td"),u=q[0].offsetHeight===0,q[0].style.display="",q[1].style.display="none",k.reliableHiddenOffsets=u&&q[0].offsetHeight===0,a.innerHTML="",c.defaultView&&c.defaultView.getComputedStyle&&(j=c.createElement("div"),j.style.width="0",j.style.marginRight="0",a.appendChild(j),k.reliableMarginRight=(parseInt((c.defaultView.getComputedStyle(j,null)||{marginRight:0}).marginRight,10)||0)===0),o.innerHTML="",n.removeChild(o);if(a.attachEvent)for(t in{submit:1,change:1,focusin:1})s="on"+t,u=s in a,u||(a.setAttribute(s,"return;"),u=typeof a[s]=="function"),k[t+"Bubbles"]=u;o=l=g=h=m=j=a=i=null;return k}(),f.boxModel=f.support.boxModel;var i=/^(?:\{.*\}|\[.*\])$/,j=/([a-z])([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!l(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g=f.expando,h=typeof c=="string",i,j=a.nodeType,k=j?f.cache:a,l=j?a[f.expando]:a[f.expando]&&f.expando;if((!l||e&&l&&!k[l][g])&&h&&d===b)return;l||(j?a[f.expando]=l=++f.uuid:l=f.expando),k[l]||(k[l]={},j||(k[l].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?k[l][g]=f.extend(k[l][g],c):k[l]=f.extend(k[l],c);i=k[l],e&&(i[g]||(i[g]={}),i=i[g]),d!==b&&(i[f.camelCase(c)]=d);if(c==="events"&&!i[c])return i[g]&&i[g].events;return h?i[f.camelCase(c)]||i[c]:i}},removeData:function(b,c,d){if(!!f.acceptData(b)){var e=f.expando,g=b.nodeType,h=g?f.cache:b,i=g?b[f.expando]:f.expando;if(!h[i])return;if(c){var j=d?h[i][e]:h[i];if(j){delete j[c];if(!l(j))return}}if(d){delete h[i][e];if(!l(h[i]))return}var k=h[i][e];f.support.deleteExpando||h!=a?delete h[i]:h[i]=null,k?(h[i]={},g||(h[i].toJSON=f.noop),h[i][e]=k):g&&(f.support.deleteExpando?delete b[f.expando]:b.removeAttribute?b.removeAttribute(f.expando):b[f.expando]=null)}},_data:function(a,b,c){return f.data(a,b,c,!0)},acceptData:function(a){if(a.nodeName){var b=f.noData[a.nodeName.toLowerCase()];if(b)return b!==!0&&a.getAttribute("classid")===b}return!0}}),f.fn.extend({data:function(a,c){var d=null;if(typeof a=="undefined"){if(this.length){d=f.data(this[0]);if(this[0].nodeType===1){var e=this[0].attributes,g;for(var h=0,i=e.length;h<i;h++)g=e[h].name,g.indexOf("data-")===0&&(g=f.camelCase(g.substring(5)),k(this[0],g,d[g]))}}return d}if(typeof a=="object")return this.each(function(){f.data(this,a)});var j=a.split(".");j[1]=j[1]?"."+j[1]:"";if(c===b){d=this.triggerHandler("getData"+j[1]+"!",[j[0]]),d===b&&this.length&&(d=f.data(this[0],a),d=k(this[0],a,d));return d===b&&j[1]?this.data(j[0]):d}return this.each(function(){var b=f(this),d=[j[0],c];b.triggerHandler("setData"+j[1]+"!",d),f.data(this,a,c),b.triggerHandler("changeData"+j[1]+"!",d)})},removeData:function(a){return this.each(function(){f.removeData(this,a)})}}),f.extend({_mark:function(a,c){a&&(c=(c||"fx")+"mark",f.data(a,c,(f.data(a,c,b,!0)||0)+1,!0))},_unmark:function(a,c,d){a!==!0&&(d=c,c=a,a=!1);if(c){d=d||"fx";var e=d+"mark",g=a?0:(f.data(c,e,b,!0)||1)-1;g?f.data(c,e,g,!0):(f.removeData(c,e,!0),m(c,d,"mark"))}},queue:function(a,c,d){if(a){c=(c||"fx")+"queue";var e=f.data(a,c,b,!0);d&&(!e||f.isArray(d)?e=f.data(a,c,f.makeArray(d),!0):e.push(d));return e||[]}},dequeue:function(a,b){b=b||"fx";var c=f.queue(a,b),d=c.shift(),e;d==="inprogress"&&(d=c.shift()),d&&(b==="fx"&&c.unshift("inprogress"),d.call(a,function(){f.dequeue(a,b)})),c.length||(f.removeData(a,b+"queue",!0),m(a,b,"queue"))}}),f.fn.extend({queue:function(a,c){typeof a!="string"&&(c=a,a="fx");if(c===b)return f.queue(this[0],a);return this.each(function(){var b=f.queue(this,a,c);a==="fx"&&b[0]!=="inprogress"&&f.dequeue(this,a)})},dequeue:function(a){return this.each(function(){f.dequeue(this,a)})},delay:function(a,b){a=f.fx?f.fx.speeds[a]||a:a,b=b||"fx";return this.queue(b,function(){var c=this;setTimeout(function(){f.dequeue(c,b)},a)})},clearQueue:function(a){return this.queue(a||"fx",[])},promise:function(a,c){function m(){--h||d.resolveWith(e,[e])}typeof a!="string"&&(c=a,a=b),a=a||"fx";var d=f.Deferred(),e=this,g=e.length,h=1,i=a+"defer",j=a+"queue",k=a+"mark",l;while(g--)if(l=f.data(e[g],i,b,!0)||(f.data(e[g],j,b,!0)||f.data(e[g],k,b,!0))&&f.data(e[g],i,f._Deferred(),!0))h++,l.done(m);m();return d.promise()}});var n=/[\n\t\r]/g,o=/\s+/,p=/\r/g,q=/^(?:button|input)$/i,r=/^(?:button|input|object|select|textarea)$/i,s=/^a(?:rea)?$/i,t=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,u=/\:|^on/,v,w;f.fn.extend({attr:function(a,b){return f.access(this,a,b,!0,f.attr)},removeAttr:function(a){return this.each(function(){f.removeAttr(this,a)})},prop:function(a,b){return f.access(this,a,b,!0,f.prop)},removeProp:function(a){a=f.propFix[a]||a;return this.each(function(){try{this[a]=b,delete this[a]}catch(c){}})},addClass:function(a){var b,c,d,e,g,h,i;if(f.isFunction(a))return this.each(function(b){f(this).addClass(a.call(this,b,this.className))});if(a&&typeof a=="string"){b=a.split(o);for(c=0,d=this.length;c<d;c++){e=this[c];if(e.nodeType===1)if(!e.className&&b.length===1)e.className=a;else{g=" "+e.className+" ";for(h=0,i=b.length;h<i;h++)~g.indexOf(" "+b[h]+" ")||(g+=b[h]+" ");e.className=f.trim(g)}}}return this},removeClass:function(a){var c,d,e,g,h,i,j;if(f.isFunction(a))return this.each(function(b){f(this).removeClass(a.call(this,b,this.className))});if(a&&typeof a=="string"||a===b){c=(a||"").split(o);for(d=0,e=this.length;d<e;d++){g=this[d];if(g.nodeType===1&&g.className)if(a){h=(" "+g.className+" ").replace(n," ");for(i=0,j=c.length;i<j;i++)h=h.replace(" "+c[i]+" "," ");g.className=f.trim(h)}else g.className=""}}return this},toggleClass:function(a,b){var c=typeof a,d=typeof b=="boolean";if(f.isFunction(a))return this.each(function(c){f(this).toggleClass(a.call(this,c,this.className,b),b)});return this.each(function(){if(c==="string"){var e,g=0,h=f(this),i=b,j=a.split(o);while(e=j[g++])i=d?i:!h.hasClass(e),h[i?"addClass":"removeClass"](e)}else if(c==="undefined"||c==="boolean")this.className&&f._data(this,"__className__",this.className),this.className=this.className||a===!1?"":f._data(this,"__className__")||""})},hasClass:function(a){var b=" "+a+" ";for(var c=0,d=this.length;c<d;c++)if((" "+this[c].className+" ").replace(n," ").indexOf(b)>-1)return!0;return!1},val:function(a){var c,d,e=this[0];if(!arguments.length){if(e){c=f.valHooks[e.nodeName.toLowerCase()]||f.valHooks[e.type];if(c&&"get"in c&&(d=c.get(e,"value"))!==b)return d;d=e.value;return typeof d=="string"?d.replace(p,""):d==null?"":d}return b}var g=f.isFunction(a);return this.each(function(d){var e=f(this),h;if(this.nodeType===1){g?h=a.call(this,d,e.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.nodeName.toLowerCase()]||f.valHooks[this.type];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c=a.selectedIndex,d=[],e=a.options,g=a.type==="select-one";if(c<0)return null;for(var h=g?c:0,i=g?c+1:e.length;h<i;h++){var j=e[h];if(j.selected&&(f.support.optDisabled?!j.disabled:j.getAttribute("disabled")===null)&&(!j.parentNode.disabled||!f.nodeName(j.parentNode,"optgroup"))){b=f(j).val();if(g)return b;d.push(b)}}if(g&&!d.length&&e.length)return f(e[c]).val();return d},set:function(a,b){var c=f.makeArray(b);f(a).find("option").each(function(){this.selected=f.inArray(f(this).val(),c)>=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attrFix:{tabindex:"tabIndex"},attr:function(a,c,d,e){var g=a.nodeType;if(!a||g===3||g===8||g===2)return b;if(e&&c in f.attrFn)return f(a)[c](d);if(!("getAttribute"in a))return f.prop(a,c,d);var h,i,j=g!==1||!f.isXMLDoc(a);j&&(c=f.attrFix[c]||c,i=f.attrHooks[c],i||(t.test(c)?i=w:v&&c!=="className"&&(f.nodeName(a,"form")||u.test(c))&&(i=v)));if(d!==b){if(d===null){f.removeAttr(a,c);return b}if(i&&"set"in i&&j&&(h=i.set(a,d,c))!==b)return h;a.setAttribute(c,""+d);return d}if(i&&"get"in i&&j&&(h=i.get(a,c))!==null)return h;h=a.getAttribute(c);return h===null?b:h},removeAttr:function(a,b){var c;a.nodeType===1&&(b=f.attrFix[b]||b,f.support.getSetAttribute?a.removeAttribute(b):(f.attr(a,b,""),a.removeAttributeNode(a.getAttributeNode(b))),t.test(b)&&(c=f.propFix[b]||b)in a&&(a[c]=!1))},attrHooks:{type:{set:function(a,b){if(q.test(a.nodeName)&&a.parentNode)f.error("type property can't be changed");else if(!f.support.radioValue&&b==="radio"&&f.nodeName(a,"input")){var c=a.value;a.setAttribute("type",b),c&&(a.value=c);return b}}},tabIndex:{get:function(a){var c=a.getAttributeNode("tabIndex");return c&&c.specified?parseInt(c.value,10):r.test(a.nodeName)||s.test(a.nodeName)&&a.href?0:b}},value:{get:function(a,b){if(v&&f.nodeName(a,"button"))return v.get(a,b);return b in a?a.value:null},set:function(a,b,c){if(v&&f.nodeName(a,"button"))return v.set(a,b,c);a.value=b}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},prop:function(a,c,d){var e=a.nodeType;if(!a||e===3||e===8||e===2)return b;var g,h,i=e!==1||!f.isXMLDoc(a);i&&(c=f.propFix[c]||c,h=f.propHooks[c]);return d!==b?h&&"set"in h&&(g=h.set(a,d,c))!==b?g:a[c]=d:h&&"get"in h&&(g=h.get(a,c))!==b?g:a[c]},propHooks:{}}),w={get:function(a,c){return f.prop(a,c)?c.toLowerCase():b},set:function(a,b,c){var d;b===!1?f.removeAttr(a,c):(d=f.propFix[c]||c,d in a&&(a[d]=!0),a.setAttribute(c,c.toLowerCase()));return c}},f.support.getSetAttribute||(f.attrFix=f.propFix,v=f.attrHooks.name=f.attrHooks.title=f.valHooks.button={get:function(a,c){var d;d=a.getAttributeNode(c);return d&&d.nodeValue!==""?d.nodeValue:b},set:function(a,b,c){var d=a.getAttributeNode(c);if(d){d.nodeValue=b;return b}}},f.each(["width","height"],function(a,b){f.attrHooks[b]=f.extend(f.attrHooks[b],{set:function(a,c){if(c===""){a.setAttribute(b,"auto");return c}}})})),f.support.hrefNormalized||f.each(["href","src","width","height"],function(a,c){f.attrHooks[c]=f.extend(f.attrHooks[c],{get:function(a){var d=a.getAttribute(c,2);return d===null?b:d}})}),f.support.style||(f.attrHooks.style={get:function(a){return a.style.cssText.toLowerCase()||b},set:function(a,b){return a.style.cssText=""+b}}),f.support.optSelected||(f.propHooks.selected=f.extend(f.propHooks.selected,{get:function(a){var b=a.parentNode;b&&(b.selectedIndex,b.parentNode&&b.parentNode.selectedIndex)}})),f.support.checkOn||f.each(["radio","checkbox"],function(){f.valHooks[this]={get:function(a){return a.getAttribute("value")===null?"on":a.value}}}),f.each(["radio","checkbox"],function(){f.valHooks[this]=f.extend(f.valHooks[this],{set:function(a,b){if(f.isArray(b))return a.checked=f.inArray(f(a).val(),b)>=0}})});var x=/\.(.*)$/,y=/^(?:textarea|input|select)$/i,z=/\./g,A=/ /g,B=/[^\w\s.|`]/g,C=function(a){return a.replace(B,"\\$&")};f.event={add:function(a,c,d,e){if(a.nodeType!==3&&a.nodeType!==8){if(d===!1)d=D;else if(!d)return;var g,h;d.handler&&(g=d,d=g.handler),d.guid||(d.guid=f.guid++);var i=f._data(a);if(!i)return;var j=i.events,k=i.handle;j||(i.events=j={}),k||(i.handle=k=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.handle.apply(k.elem,arguments):b}),k.elem=a,c=c.split(" ");var l,m=0,n;while(l=c[m++]){h=g?f.extend({},g):{handler:d,data:e},l.indexOf(".")>-1?(n=l.split("."),l=n.shift(),h.namespace=n.slice(0).sort().join(".")):(n=[],h.namespace=""),h.type=l,h.guid||(h.guid=d.guid);var o=j[l],p=f.event.special[l]||{};if(!o){o=j[l]=[];if(!p.setup||p.setup.call(a,e,n,k)===!1)a.addEventListener?a.addEventListener(l,k,!1):a.attachEvent&&a.attachEvent("on"+l,k)}p.add&&(p.add.call(a,h),h.handler.guid||(h.handler.guid=d.guid)),o.push(h),f.event.global[l]=!0}a=null}},global:{},remove:function(a,c,d,e){if(a.nodeType!==3&&a.nodeType!==8){d===!1&&(d=D);var g,h,i,j,k=0,l,m,n,o,p,q,r,s=f.hasData(a)&&f._data(a),t=s&&s.events;if(!s||!t)return;c&&c.type&&(d=c.handler,c=c.type);if(!c||typeof c=="string"&&c.charAt(0)==="."){c=c||"";for(h in t)f.event.remove(a,h+c);return}c=c.split(" ");while(h=c[k++]){r=h,q=null,l=h.indexOf(".")<0,m=[],l||(m=h.split("."),h=m.shift(),n=new RegExp("(^|\\.)"+f.map(m.slice(0).sort(),C).join("\\.(?:.*\\.)?")+"(\\.|$)")),p=t[h];if(!p)continue;if(!d){for(j=0;j<p.length;j++){q=p[j];if(l||n.test(q.namespace))f.event.remove(a,r,q.handler,j),p.splice(j--,1)}continue}o=f.event.special[h]||{};for(j=e||0;j<p.length;j++){q=p[j];if(d.guid===q.guid){if(l||n.test(q.namespace))e==null&&p.splice(j--,1),o.remove&&o.remove.call(a,q);if(e!=null)break}}if(p.length===0||e!=null&&p.length===1)(!o.teardown||o.teardown.call(a,m)===!1)&&f.removeEvent(a,h,s.handle),g=null,delete t[h]}if(f.isEmptyObject(t)){var u=s.handle;u&&(u.elem=null),delete s.events,delete s.handle,f.isEmptyObject(s)&&f.removeData(a,b,!0)}}},customEvent:{getData:!0,setData:!0,changeData:!0},trigger:function(c,d,e,g){var h=c.type||c,i=[],j;h.indexOf("!")>=0&&(h=h.slice(0,-1),j=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i. 
    17 shift(),i.sort());if(!!e&&!f.event.customEvent[h]||!!f.event.global[h]){c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.exclusive=j,c.namespace=i.join("."),c.namespace_re=new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)");if(g||!e)c.preventDefault(),c.stopPropagation();if(!e){f.each(f.cache,function(){var a=f.expando,b=this[a];b&&b.events&&b.events[h]&&f.event.trigger(c,d,b.handle.elem)});return}if(e.nodeType===3||e.nodeType===8)return;c.result=b,c.target=e,d=d!=null?f.makeArray(d):[],d.unshift(c);var k=e,l=h.indexOf(":")<0?"on"+h:"";do{var m=f._data(k,"handle");c.currentTarget=k,m&&m.apply(k,d),l&&f.acceptData(k)&&k[l]&&k[l].apply(k,d)===!1&&(c.result=!1,c.preventDefault()),k=k.parentNode||k.ownerDocument||k===c.target.ownerDocument&&a}while(k&&!c.isPropagationStopped());if(!c.isDefaultPrevented()){var n,o=f.event.special[h]||{};if((!o._default||o._default.call(e.ownerDocument,c)===!1)&&(h!=="click"||!f.nodeName(e,"a"))&&f.acceptData(e)){try{l&&e[h]&&(n=e[l],n&&(e[l]=null),f.event.triggered=h,e[h]())}catch(p){}n&&(e[l]=n),f.event.triggered=b}}return c.result}},handle:function(c){c=f.event.fix(c||a.event);var d=((f._data(this,"events")||{})[c.type]||[]).slice(0),e=!c.exclusive&&!c.namespace,g=Array.prototype.slice.call(arguments,0);g[0]=c,c.currentTarget=this;for(var h=0,i=d.length;h<i;h++){var j=d[h];if(e||c.namespace_re.test(j.namespace)){c.handler=j.handler,c.data=j.data,c.handleObj=j;var k=j.handler.apply(this,g);k!==b&&(c.result=k,k===!1&&(c.preventDefault(),c.stopPropagation()));if(c.isImmediatePropagationStopped())break}}return c.result},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(a){if(a[f.expando])return a;var d=a;a=f.Event(d);for(var e=this.props.length,g;e;)g=this.props[--e],a[g]=d[g];a.target||(a.target=a.srcElement||c),a.target.nodeType===3&&(a.target=a.target.parentNode),!a.relatedTarget&&a.fromElement&&(a.relatedTarget=a.fromElement===a.target?a.toElement:a.fromElement);if(a.pageX==null&&a.clientX!=null){var h=a.target.ownerDocument||c,i=h.documentElement,j=h.body;a.pageX=a.clientX+(i&&i.scrollLeft||j&&j.scrollLeft||0)-(i&&i.clientLeft||j&&j.clientLeft||0),a.pageY=a.clientY+(i&&i.scrollTop||j&&j.scrollTop||0)-(i&&i.clientTop||j&&j.clientTop||0)}a.which==null&&(a.charCode!=null||a.keyCode!=null)&&(a.which=a.charCode!=null?a.charCode:a.keyCode),!a.metaKey&&a.ctrlKey&&(a.metaKey=a.ctrlKey),!a.which&&a.button!==b&&(a.which=a.button&1?1:a.button&2?3:a.button&4?2:0);return a},guid:1e8,proxy:f.proxy,special:{ready:{setup:f.bindReady,teardown:f.noop},live:{add:function(a){f.event.add(this,N(a.origType,a.selector),f.extend({},a,{handler:M,guid:a.handler.guid}))},remove:function(a){f.event.remove(this,N(a.origType,a.selector),a)}},beforeunload:{setup:function(a,b,c){f.isWindow(this)&&(this.onbeforeunload=c)},teardown:function(a,b){this.onbeforeunload===b&&(this.onbeforeunload=null)}}}},f.removeEvent=c.removeEventListener?function(a,b,c){a.removeEventListener&&a.removeEventListener(b,c,!1)}:function(a,b,c){a.detachEvent&&a.detachEvent("on"+b,c)},f.Event=function(a,b){if(!this.preventDefault)return new f.Event(a,b);a&&a.type?(this.originalEvent=a,this.type=a.type,this.isDefaultPrevented=a.defaultPrevented||a.returnValue===!1||a.getPreventDefault&&a.getPreventDefault()?E:D):this.type=a,b&&f.extend(this,b),this.timeStamp=f.now(),this[f.expando]=!0},f.Event.prototype={preventDefault:function(){this.isDefaultPrevented=E;var a=this.originalEvent;!a||(a.preventDefault?a.preventDefault():a.returnValue=!1)},stopPropagation:function(){this.isPropagationStopped=E;var a=this.originalEvent;!a||(a.stopPropagation&&a.stopPropagation(),a.cancelBubble=!0)},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=E,this.stopPropagation()},isDefaultPrevented:D,isPropagationStopped:D,isImmediatePropagationStopped:D};var F=function(a){var b=a.relatedTarget,c=!1,d=a.type;a.type=a.data,b!==this&&(b&&(c=f.contains(this,b)),c||(f.event.handle.apply(this,arguments),a.type=d))},G=function(a){a.type=a.data,f.event.handle.apply(this,arguments)};f.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){f.event.special[a]={setup:function(c){f.event.add(this,b,c&&c.selector?G:F,a)},teardown:function(a){f.event.remove(this,b,a&&a.selector?G:F)}}}),f.support.submitBubbles||(f.event.special.submit={setup:function(a,b){if(!f.nodeName(this,"form"))f.event.add(this,"click.specialSubmit",function(a){var b=a.target,c=b.type;(c==="submit"||c==="image")&&f(b).closest("form").length&&K("submit",this,arguments)}),f.event.add(this,"keypress.specialSubmit",function(a){var b=a.target,c=b.type;(c==="text"||c==="password")&&f(b).closest("form").length&&a.keyCode===13&&K("submit",this,arguments)});else return!1},teardown:function(a){f.event.remove(this,".specialSubmit")}});if(!f.support.changeBubbles){var H,I=function(a){var b=a.type,c=a.value;b==="radio"||b==="checkbox"?c=a.checked:b==="select-multiple"?c=a.selectedIndex>-1?f.map(a.options,function(a){return a.selected}).join("-"):"":f.nodeName(a,"select")&&(c=a.selectedIndex);return c},J=function(c){var d=c.target,e,g;if(!!y.test(d.nodeName)&&!d.readOnly){e=f._data(d,"_change_data"),g=I(d),(c.type!=="focusout"||d.type!=="radio")&&f._data(d,"_change_data",g);if(e===b||g===e)return;if(e!=null||g)c.type="change",c.liveFired=b,f.event.trigger(c,arguments[1],d)}};f.event.special.change={filters:{focusout:J,beforedeactivate:J,click:function(a){var b=a.target,c=f.nodeName(b,"input")?b.type:"";(c==="radio"||c==="checkbox"||f.nodeName(b,"select"))&&J.call(this,a)},keydown:function(a){var b=a.target,c=f.nodeName(b,"input")?b.type:"";(a.keyCode===13&&!f.nodeName(b,"textarea")||a.keyCode===32&&(c==="checkbox"||c==="radio")||c==="select-multiple")&&J.call(this,a)},beforeactivate:function(a){var b=a.target;f._data(b,"_change_data",I(b))}},setup:function(a,b){if(this.type==="file")return!1;for(var c in H)f.event.add(this,c+".specialChange",H[c]);return y.test(this.nodeName)},teardown:function(a){f.event.remove(this,".specialChange");return y.test(this.nodeName)}},H=f.event.special.change.filters,H.focus=H.beforeactivate}f.support.focusinBubbles||f.each({focus:"focusin",blur:"focusout"},function(a,b){function e(a){var c=f.event.fix(a);c.type=b,c.originalEvent={},f.event.trigger(c,null,c.target),c.isDefaultPrevented()&&a.preventDefault()}var d=0;f.event.special[b]={setup:function(){d++===0&&c.addEventListener(a,e,!0)},teardown:function(){--d===0&&c.removeEventListener(a,e,!0)}}}),f.each(["bind","one"],function(a,c){f.fn[c]=function(a,d,e){var g;if(typeof a=="object"){for(var h in a)this[c](h,d,a[h],e);return this}if(arguments.length===2||d===!1)e=d,d=b;c==="one"?(g=function(a){f(this).unbind(a,g);return e.apply(this,arguments)},g.guid=e.guid||f.guid++):g=e;if(a==="unload"&&c!=="one")this.one(a,d,e);else for(var i=0,j=this.length;i<j;i++)f.event.add(this[i],a,g,d);return this}}),f.fn.extend({unbind:function(a,b){if(typeof a=="object"&&!a.preventDefault)for(var c in a)this.unbind(c,a[c]);else for(var d=0,e=this.length;d<e;d++)f.event.remove(this[d],a,b);return this},delegate:function(a,b,c,d){return this.live(b,c,d,a)},undelegate:function(a,b,c){return arguments.length===0?this.unbind("live"):this.die(b,null,c,a)},trigger:function(a,b){return this.each(function(){f.event.trigger(a,b,this)})},triggerHandler:function(a,b){if(this[0])return f.event.trigger(a,b,this[0],!0)},toggle:function(a){var b=arguments,c=a.guid||f.guid++,d=0,e=function(c){var e=(f.data(this,"lastToggle"+a.guid)||0)%d;f.data(this,"lastToggle"+a.guid,e+1),c.preventDefault();return b[e].apply(this,arguments)||!1};e.guid=c;while(d<b.length)b[d++].guid=c;return this.click(e)},hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}});var L={focus:"focusin",blur:"focusout",mouseenter:"mouseover",mouseleave:"mouseout"};f.each(["live","die"],function(a,c){f.fn[c]=function(a,d,e,g){var h,i=0,j,k,l,m=g||this.selector,n=g?this:f(this.context);if(typeof a=="object"&&!a.preventDefault){for(var o in a)n[c](o,d,a[o],m);return this}if(c==="die"&&!a&&g&&g.charAt(0)==="."){n.unbind(g);return this}if(d===!1||f.isFunction(d))e=d||D,d=b;a=(a||"").split(" ");while((h=a[i++])!=null){j=x.exec(h),k="",j&&(k=j[0],h=h.replace(x,""));if(h==="hover"){a.push("mouseenter"+k,"mouseleave"+k);continue}l=h,L[h]?(a.push(L[h]+k),h=h+k):h=(L[h]||h)+k;if(c==="live")for(var p=0,q=n.length;p<q;p++)f.event.add(n[p],"live."+N(h,m),{data:d,selector:m,handler:e,origType:h,origHandler:e,preType:l});else n.unbind("live."+N(h,m),e)}return this}}),f.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error".split(" "),function(a,b){f.fn[b]=function(a,c){c==null&&(c=a,a=null);return arguments.length>0?this.bind(b,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0)}),function(){function u(a,b,c,d,e,f){for(var g=0,h=d.length;g<h;g++){var i=d[g];if(i){var j=!1;i=i[a];while(i){if(i.sizcache===c){j=d[i.sizset];break}if(i.nodeType===1){f||(i.sizcache=c,i.sizset=g);if(typeof b!="string"){if(i===b){j=!0;break}}else if(k.filter(b,[i]).length>0){j=i;break}}i=i[a]}d[g]=j}}}function t(a,b,c,d,e,f){for(var g=0,h=d.length;g<h;g++){var i=d[g];if(i){var j=!1;i=i[a];while(i){if(i.sizcache===c){j=d[i.sizset];break}i.nodeType===1&&!f&&(i.sizcache=c,i.sizset=g);if(i.nodeName.toLowerCase()===b){j=i;break}i=i[a]}d[g]=j}}}var a=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d=0,e=Object.prototype.toString,g=!1,h=!0,i=/\\/g,j=/\W/;[0,0].sort(function(){h=!1;return 0});var k=function(b,d,f,g){f=f||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return f;var i,j,n,o,q,r,s,t,u=!0,w=k.isXML(d),x=[],y=b;do{a.exec(""),i=a.exec(y);if(i){y=i[3],x.push(i[1]);if(i[2]){o=i[3];break}}}while(i);if(x.length>1&&m.exec(b))if(x.length===2&&l.relative[x[0]])j=v(x[0]+x[1],d);else{j=l.relative[x[0]]?[d]:k(x.shift(),d);while(x.length)b=x.shift(),l.relative[b]&&(b+=x.shift()),j=v(b,j)}else{!g&&x.length>1&&d.nodeType===9&&!w&&l.match.ID.test(x[0])&&!l.match.ID.test(x[x.length-1])&&(q=k.find(x.shift(),d,w),d=q.expr?k.filter(q.expr,q.set)[0]:q.set[0]);if(d){q=g?{expr:x.pop(),set:p(g)}:k.find(x.pop(),x.length===1&&(x[0]==="~"||x[0]==="+")&&d.parentNode?d.parentNode:d,w),j=q.expr?k.filter(q.expr,q.set):q.set,x.length>0?n=p(j):u=!1;while(x.length)r=x.pop(),s=r,l.relative[r]?s=x.pop():r="",s==null&&(s=d),l.relative[r](n,s,w)}else n=x=[]}n||(n=j),n||k.error(r||b);if(e.call(n)==="[object Array]")if(!u)f.push.apply(f,n);else if(d&&d.nodeType===1)for(t=0;n[t]!=null;t++)n[t]&&(n[t]===!0||n[t].nodeType===1&&k.contains(d,n[t]))&&f.push(j[t]);else for(t=0;n[t]!=null;t++)n[t]&&n[t].nodeType===1&&f.push(j[t]);else p(n,f);o&&(k(o,h,f,g),k.uniqueSort(f));return f};k.uniqueSort=function(a){if(r){g=h,a.sort(r);if(g)for(var b=1;b<a.length;b++)a[b]===a[b-1]&&a.splice(b--,1)}return a},k.matches=function(a,b){return k(a,null,null,b)},k.matchesSelector=function(a,b){return k(b,null,null,[a]).length>0},k.find=function(a,b,c){var d;if(!a)return[];for(var e=0,f=l.order.length;e<f;e++){var g,h=l.order[e];if(g=l.leftMatch[h].exec(a)){var j=g[1];g.splice(1,1);if(j.substr(j.length-1)!=="\\"){g[1]=(g[1]||"").replace(i,""),d=l.find[h](g,b,c);if(d!=null){a=a.replace(l.match[h],"");break}}}}d||(d=typeof b.getElementsByTagName!="undefined"?b.getElementsByTagName("*"):[]);return{set:d,expr:a}},k.filter=function(a,c,d,e){var f,g,h=a,i=[],j=c,m=c&&c[0]&&k.isXML(c[0]);while(a&&c.length){for(var n in l.filter)if((f=l.leftMatch[n].exec(a))!=null&&f[2]){var o,p,q=l.filter[n],r=f[1];g=!1,f.splice(1,1);if(r.substr(r.length-1)==="\\")continue;j===i&&(i=[]);if(l.preFilter[n]){f=l.preFilter[n](f,j,d,i,e,m);if(!f)g=o=!0;else if(f===!0)continue}if(f)for(var s=0;(p=j[s])!=null;s++)if(p){o=q(p,f,s,j);var t=e^!!o;d&&o!=null?t?g=!0:j[s]=!1:t&&(i.push(p),g=!0)}if(o!==b){d||(j=i),a=a.replace(l.match[n],"");if(!g)return[];break}}if(a===h)if(g==null)k.error(a);else break;h=a}return j},k.error=function(a){throw"Syntax error, unrecognized expression: "+a};var l=k.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(?:(['"])(.*?)\3|(#?(?:[\w\u00c0-\uFFFF\-]|\\.)*)|)|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\(\s*(even|odd|(?:[+\-]?\d+|(?:[+\-]?\d*)?n\s*(?:[+\-]\s*\d+)?))\s*\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(a){return a.getAttribute("href")},type:function(a){return a.getAttribute("type")}},relative:{"+":function(a,b){var c=typeof b=="string",d=c&&!j.test(b),e=c&&!d;d&&(b=b.toLowerCase());for(var f=0,g=a.length,h;f<g;f++)if(h=a[f]){while((h=h.previousSibling)&&h.nodeType!==1);a[f]=e||h&&h.nodeName.toLowerCase()===b?h||!1:h===b}e&&k.filter(b,a,!0)},">":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!j.test(b)){b=b.toLowerCase();for(;e<f;e++){c=a[e];if(c){var g=c.parentNode;a[e]=g.nodeName.toLowerCase()===b?g:!1}}}else{for(;e<f;e++)c=a[e],c&&(a[e]=d?c.parentNode:c.parentNode===b);d&&k.filter(b,a,!0)}},"":function(a,b,c){var e,f=d++,g=u;typeof b=="string"&&!j.test(b)&&(b=b.toLowerCase(),e=b,g=t),g("parentNode",b,f,a,e,c)},"~":function(a,b,c){var e,f=d++,g=u;typeof b=="string"&&!j.test(b)&&(b=b.toLowerCase(),e=b,g=t),g("previousSibling",b,f,a,e,c)}},find:{ID:function(a,b,c){if(typeof b.getElementById!="undefined"&&!c){var d=b.getElementById(a[1]);return d&&d.parentNode?[d]:[]}},NAME:function(a,b){if(typeof b.getElementsByName!="undefined"){var c=[],d=b.getElementsByName(a[1]);for(var e=0,f=d.length;e<f;e++)d[e].getAttribute("name")===a[1]&&c.push(d[e]);return c.length===0?null:c}},TAG:function(a,b){if(typeof b.getElementsByTagName!="undefined")return b.getElementsByTagName(a[1])}},preFilter:{CLASS:function(a,b,c,d,e,f){a=" "+a[1].replace(i,"")+" ";if(f)return a;for(var g=0,h;(h=b[g])!=null;g++)h&&(e^(h.className&&(" "+h.className+" ").replace(/[\t\n\r]/g," ").indexOf(a)>=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(i,"")},TAG:function(a,b){return a[1].replace(i,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||k.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&k.error(a[0]);a[0]=d++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(i,"");!f&&l.attrMap[g]&&(a[1]=l.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(i,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=k(b[3],null,null,c);else{var g=k.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(l.match.POS.test(b[0])||l.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!k(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return b<c[3]-0},gt:function(a,b,c){return b>c[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=l.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||k.getText([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h<i;h++)if(g[h]===a)return!1;return!0}k.error(e)},CHILD:function(a,b){var c=b[1],d=a;switch(c){case"only":case"first":while(d=d.previousSibling)if(d.nodeType===1)return!1;if(c==="first")return!0;d=a;case"last":while(d=d.nextSibling)if(d.nodeType===1)return!1;return!0;case"nth":var e=b[2],f=b[3];if(e===1&&f===0)return!0;var g=b[0],h=a.parentNode;if(h&&(h.sizcache!==g||!a.nodeIndex)){var i=0;for(d=h.firstChild;d;d=d.nextSibling)d.nodeType===1&&(d.nodeIndex=++i);h.sizcache=g}var j=a.nodeIndex-f;return e===0?j===0:j%e===0&&j/e>=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=l.attrHandle[c]?l.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=l.setFilters[e];if(f)return f(a,c,b,d)}}},m=l.match.POS,n=function(a,b){return"\\"+(b-0+1)};for(var o in l.match)l.match[o]=new RegExp(l.match[o].source+/(?![^\[]*\])(?![^\(]*\))/.source),l.leftMatch[o]=new RegExp(/(^(?:.|\r|\n)*?)/.source+l.match[o].source.replace(/\\(\d+)/g,n));var p=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(q){p=function(a,b){var c=0,d=b||[];if(e.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var f=a.length;c<f;c++)d.push(a[c]);else for(;a[c];c++)d.push(a[c]);return d}}var r,s;c.documentElement.compareDocumentPosition?r=function(a,b){if(a===b){g=!0;return 0}if(!a.compareDocumentPosition||!b.compareDocumentPosition)return a.compareDocumentPosition?-1:1;return a.compareDocumentPosition(b)&4?-1:1}:(r=function(a,b){if(a===b){g=!0;return 0}if(a.sourceIndex&&b.sourceIndex)return a.sourceIndex-b.sourceIndex;var c,d,e=[],f=[],h=a.parentNode,i=b.parentNode,j=h;if(h===i)return s(a,b);if(!h)return-1;if(!i)return 1;while(j)e.unshift(j),j=j.parentNode;j=i;while(j)f.unshift(j),j=j.parentNode;c=e.length,d=f.length;for(var k=0;k<c&&k<d;k++)if(e[k]!==f[k])return s(e[k],f[k]);return k===c?s(a,f[k],-1):s(e[k],b,1)},s=function(a,b,c){if(a===b)return c;var d=a.nextSibling;while(d){if(d===b)return-1;d=d.nextSibling}return 1}),k.getText=function(a){var b="",c;for(var d=0;a[d];d++)c=a[d],c.nodeType===3||c.nodeType===4?b+=c.nodeValue:c.nodeType!==8&&(b+=k.getText(c.childNodes));return b},function(){var a=c.createElement("div"),d="script"+(new Date).getTime(),e=c.documentElement;a.innerHTML="<a name='"+d+"'/>",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(l.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},l.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(l.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="<a href='#'></a>",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(l.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=k,b=c.createElement("div"),d="__sizzle__";b.innerHTML="<p class='TEST'></p>";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){k=function(b,e,f,g){e=e||c;if(!g&&!k.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return p(e.getElementsByTagName(b),f);if(h[2]&&l.find.CLASS&&e.getElementsByClassName)return p(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return p([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return p([],f);if(i.id===h[3])return p([i],f)}try{return p(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var m=e,n=e.getAttribute("id"),o=n||d,q=e.parentNode,r=/^\s*[+~]/.test(b);n?o=o.replace(/'/g,"\\$&"):e.setAttribute("id",o),r&&q&&(e=e.parentNode);try{if(!r||q)return p(e.querySelectorAll("[id='"+o+"'] "+b),f)}catch(s){}finally{n||m.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)k[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}k.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!k.isXML(a))try{if(e||!l.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return k(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="<div class='test e'></div><div class='test'></div>";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;l.order.splice(1,0,"CLASS"),l.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?k.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?k.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:k.contains=function(){return!1},k.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var v=function(a,b){var c,d=[],e="",f=b.nodeType?[b]:b;while(c=l.match.PSEUDO.exec(a))e+=c[0],a=a.replace(l.match.PSEUDO,"");a=l.relative[a]?a+"*":a;for(var g=0,h=f.length;g<h;g++)k(a,f[g],d);return k.filter(e,d)};f.find=k,f.expr=k.selectors,f.expr[":"]=f.expr.filters,f.unique=k.uniqueSort,f.text=k.getText,f.isXMLDoc=k.isXML,f.contains=k.contains}();var O=/Until$/,P=/^(?:parents|prevUntil|prevAll)/,Q=/,/,R=/^.[^:#\[\.,]*$/,S=Array.prototype.slice,T=f.expr.match.POS,U={children:!0,contents:!0,next:!0,prev:!0};f.fn.extend({find:function(a){var b=this,c,d;if(typeof a!="string")return f(a).filter(function(){for(c=0,d=b.length;c<d;c++)if(f.contains(b[c],this))return!0});var e=this.pushStack("","find",a),g,h,i;for(c=0,d=this.length;c<d;c++){g=e.length,f.find(a,this[c],e);if(c>0)for(h=g;h<e.length;h++)for(i=0;i<g;i++)if(e[i]===e[h]){e.splice(h--,1);break}}return e},has:function(a){var b=f(a);return this.filter(function(){for(var a=0,c=b.length;a<c;a++)if(f.contains(this,b[a]))return!0})},not:function(a){return this.pushStack(W(this,a,!1),"not",a)},filter:function(a){return this.pushStack(W(this,a,!0),"filter",a)},is:function(a){return!!a&&(typeof a=="string"?f.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h,i,j={},k=1;if(g&&a.length){for(d=0,e=a.length;d<e;d++)i=a[d],j[i]||(j[i]=T.test(i)?f(i,b||this.context):i);while(g&&g.ownerDocument&&g!==b){for(i in j)h=j[i],(h.jquery?h.index(g)>-1:f(g).is(h))&&c.push({selector:i,elem:g,level:k});g=g.parentNode,k++}}return c}var l=T.test(a)||typeof a!="string"?f(a,b||this.context):0;for(d=0,e=this.length;d<e;d++){g=this[d];while(g){if(l?l.index(g)>-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a||typeof a=="string")return f.inArray(this[0],a?f(a):this.parent().children());return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(V(c[0])||V(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling(a.parentNode.firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c),g=S.call(arguments);O.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!U[a]?f.unique(e):e,(this.length>1||Q.test(d))&&P.test(a)&&(e=e.reverse());return this.pushStack(e,a,g.join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var X=/ jQuery\d+="(?:\d+|null)"/g,Y=/^\s+/,Z=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,$=/<([\w:]+)/,_=/<tbody/i,ba=/<|&#?\w+;/,bb=/<(?:script|object|embed|option|style)/i,bc=/checked\s*(?:[^=]|=\s*.checked.)/i,bd=/\/(java|ecma)script/i,be=/^\s*<!(?:\[CDATA\[|\-\-)/,bf={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]};bf.optgroup=bf.option,bf.tbody=bf.tfoot=bf.colgroup=bf.caption=bf.thead,bf.th=bf.td,f.support.htmlSerialize||(bf._default=[1,"div<div>","</div>"]),f.fn.extend({text:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.text(a.call(this,b,c.text()))});if(typeof a!="object"&&a!==b)return this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a));return f.text(this)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){return this.each(function(){f(this).wrapAll(a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f(arguments[0]);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,f(arguments[0]).toArray());return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")),f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function(){for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(X,""):null;if(typeof a=="string"&&!bb.test(a)&&(f.support.leadingWhitespace||!Y.test(a))&&!bf[($.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Z,"<$1></$2>");try{for(var c=0,d=this.length;c<d;c++)this[c].nodeType===1&&(f.cleanData(this[c].getElementsByTagName("*")),this[c].innerHTML=a)}catch(e){this.empty().append(a)}}else f.isFunction(a)?this.each(function(b){var c=f(this);c.html(a.call(this,b,c.html()))}):this.empty().append(a);return this},replaceWith:function(a){if(this[0]&&this[0].parentNode){if(f.isFunction(a))return this.each(function(b){var c=f(this),d=c.html();c.replaceWith(a.call(this,b,d))});typeof a!="string"&&(a=f(a).detach());return this.each(function(){var b=this.nextSibling,c=this.parentNode;f(this).remove(),b?f(b).before(a):f(c).append(a)})}return this.length?this.pushStack(f(f.isFunction(a)?a():a),"replaceWith",a):this},detach:function(a){return this.remove(a,!0)},domManip:function(a,c,d){var e,g,h,i,j=a[0],k=[];if(!f.support.checkClone&&arguments.length===3&&typeof j=="string"&&bc.test(j))return this.each(function(){f(this).domManip(a,c,d,!0)});if(f.isFunction(j))return this.each(function(e){var g=f(this);a[0]=j.call(this,e,c?g.html():b),g.domManip(a,c,d)});if(this[0]){i=j&&j.parentNode,f.support.parentNode&&i&&i.nodeType===11&&i.childNodes.length===this.length?e={fragment:i}:e=f.buildFragment(a,this,k),h=e.fragment,h.childNodes.length===1?g=h=h.firstChild:g=h.firstChild;if(g){c=c&&f.nodeName(g,"tr");for(var l=0,m=this.length,n=m-1;l<m;l++)d.call(c?bg(this[l],g):this[l],e.cacheable||m>1&&l<n?f.clone(h,!0,!0):h)}k.length&&f.each(k,bm)}return this}}),f.buildFragment=function(a,b,d){var e,g,h,i;b&&b[0]&&(i=b[0].ownerDocument||b[0]),i.createDocumentFragment||(i=c),a.length===1&&typeof a[0]=="string"&&a[0].length<512&&i===c&&a[0].charAt(0)==="<"&&!bb.test(a[0])&&(f.support.checkClone||!bc.test(a[0]))&&(g=!0,h=f.fragments[a[0]],h&&h!==1&&(e=h)),e||(e=i.createDocumentFragment(),f.clean(a,i,e,d)),g&&(f.fragments[a[0]]=h?e:1);return{fragment:e,cacheable:g}},f.fragments={},f.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){f.fn[a]=function(c){var d=[],e=f(c),g=this.length===1&&this[0].parentNode;if(g&&g.nodeType===11&&g.childNodes.length===1&&e.length===1){e[b](this[0]);return this}for(var h=0,i=e.length;h<i;h++){var j=(h>0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j 
    18 )}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d=a.cloneNode(!0),e,g,h;if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bi(a,d),e=bj(a),g=bj(d);for(h=0;e[h];++h)bi(e[h],g[h])}if(b){bh(a,d);if(c){e=bj(a),g=bj(d);for(h=0;e[h];++h)bh(e[h],g[h])}}e=g=null;return d},clean:function(a,b,d,e){var g;b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument||b[0]&&b[0].ownerDocument||c);var h=[],i;for(var j=0,k;(k=a[j])!=null;j++){typeof k=="number"&&(k+="");if(!k)continue;if(typeof k=="string")if(!ba.test(k))k=b.createTextNode(k);else{k=k.replace(Z,"<$1></$2>");var l=($.exec(k)||["",""])[1].toLowerCase(),m=bf[l]||bf._default,n=m[0],o=b.createElement("div");o.innerHTML=m[1]+k+m[2];while(n--)o=o.lastChild;if(!f.support.tbody){var p=_.test(k),q=l==="table"&&!p?o.firstChild&&o.firstChild.childNodes:m[1]==="<table>"&&!p?o.childNodes:[];for(i=q.length-1;i>=0;--i)f.nodeName(q[i],"tbody")&&!q[i].childNodes.length&&q[i].parentNode.removeChild(q[i])}!f.support.leadingWhitespace&&Y.test(k)&&o.insertBefore(b.createTextNode(Y.exec(k)[0]),o.firstChild),k=o.childNodes}var r;if(!f.support.appendChecked)if(k[0]&&typeof (r=k.length)=="number")for(i=0;i<r;i++)bl(k[i]);else bl(k);k.nodeType?h.push(k):h=f.merge(h,k)}if(d){g=function(a){return!a.type||bd.test(a.type)};for(j=0;h[j];j++)if(e&&f.nodeName(h[j],"script")&&(!h[j].type||h[j].type.toLowerCase()==="text/javascript"))e.push(h[j].parentNode?h[j].parentNode.removeChild(h[j]):h[j]);else{if(h[j].nodeType===1){var s=f.grep(h[j].getElementsByTagName("script"),g);h.splice.apply(h,[j+1,0].concat(s))}d.appendChild(h[j])}}return h},cleanData:function(a){var b,c,d=f.cache,e=f.expando,g=f.event.special,h=f.support.deleteExpando;for(var i=0,j;(j=a[i])!=null;i++){if(j.nodeName&&f.noData[j.nodeName.toLowerCase()])continue;c=j[f.expando];if(c){b=d[c]&&d[c][e];if(b&&b.events){for(var k in b.events)g[k]?f.event.remove(j,k):f.removeEvent(j,k,b.handle);b.handle&&(b.handle.elem=null)}h?delete j[f.expando]:j.removeAttribute&&j.removeAttribute(f.expando),delete d[c]}}}});var bn=/alpha\([^)]*\)/i,bo=/opacity=([^)]*)/,bp=/([A-Z]|^ms)/g,bq=/^-?\d+(?:px)?$/i,br=/^-?\d/,bs=/^[+\-]=/,bt=/[^+\-\.\de]+/g,bu={position:"absolute",visibility:"hidden",display:"block"},bv=["Left","Right"],bw=["Top","Bottom"],bx,by,bz;f.fn.css=function(a,c){if(arguments.length===2&&c===b)return this;return f.access(this,a,c,!0,function(a,c,d){return d!==b?f.style(a,c,d):f.css(a,c)})},f.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=bx(a,"opacity","opacity");return c===""?"1":c}return a.style.opacity}}},cssNumber:{fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":f.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,c,d,e){if(!!a&&a.nodeType!==3&&a.nodeType!==8&&!!a.style){var g,h,i=f.camelCase(c),j=a.style,k=f.cssHooks[i];c=f.cssProps[i]||i;if(d===b){if(k&&"get"in k&&(g=k.get(a,!1,e))!==b)return g;return j[c]}h=typeof d;if(h==="number"&&isNaN(d)||d==null)return;h==="string"&&bs.test(d)&&(d=+d.replace(bt,"")+parseFloat(f.css(a,c)),h="number"),h==="number"&&!f.cssNumber[i]&&(d+="px");if(!k||!("set"in k)||(d=k.set(a,d))!==b)try{j[c]=d}catch(l){}}},css:function(a,c,d){var e,g;c=f.camelCase(c),g=f.cssHooks[c],c=f.cssProps[c]||c,c==="cssFloat"&&(c="float");if(g&&"get"in g&&(e=g.get(a,!0,d))!==b)return e;if(bx)return bx(a,c)},swap:function(a,b,c){var d={};for(var e in b)d[e]=a.style[e],a.style[e]=b[e];c.call(a);for(e in b)a.style[e]=d[e]}}),f.curCSS=f.css,f.each(["height","width"],function(a,b){f.cssHooks[b]={get:function(a,c,d){var e;if(c){if(a.offsetWidth!==0)return bA(a,b,d);f.swap(a,bu,function(){e=bA(a,b,d)});return e}},set:function(a,b){if(!bq.test(b))return b;b=parseFloat(b);if(b>=0)return b+"px"}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return bo.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle;c.zoom=1;var e=f.isNaN(b)?"":"alpha(opacity="+b*100+")",g=d&&d.filter||c.filter||"";c.filter=bn.test(g)?g.replace(bn,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){var c;f.swap(a,{display:"inline-block"},function(){b?c=bx(a,"margin-right","marginRight"):c=a.style.marginRight});return c}})}),c.defaultView&&c.defaultView.getComputedStyle&&(by=function(a,c){var d,e,g;c=c.replace(bp,"-$1").toLowerCase();if(!(e=a.ownerDocument.defaultView))return b;if(g=e.getComputedStyle(a,null))d=g.getPropertyValue(c),d===""&&!f.contains(a.ownerDocument.documentElement,a)&&(d=f.style(a,c));return d}),c.documentElement.currentStyle&&(bz=function(a,b){var c,d=a.currentStyle&&a.currentStyle[b],e=a.runtimeStyle&&a.runtimeStyle[b],f=a.style;!bq.test(d)&&br.test(d)&&(c=f.left,e&&(a.runtimeStyle.left=a.currentStyle.left),f.left=b==="fontSize"?"1em":d||0,d=f.pixelLeft+"px",f.left=c,e&&(a.runtimeStyle.left=e));return d===""?"auto":d}),bx=by||bz,f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)});var bB=/%20/g,bC=/\[\]$/,bD=/\r?\n/g,bE=/#.*$/,bF=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bG=/^(?:color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bH=/^(?:about|app|app\-storage|.+\-extension|file|widget):$/,bI=/^(?:GET|HEAD)$/,bJ=/^\/\//,bK=/\?/,bL=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,bM=/^(?:select|textarea)/i,bN=/\s+/,bO=/([?&])_=[^&]*/,bP=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bQ=f.fn.load,bR={},bS={},bT,bU;try{bT=e.href}catch(bV){bT=c.createElement("a"),bT.href="",bT=bT.href}bU=bP.exec(bT.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bQ)return bQ.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("<div>").append(c.replace(bL,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bM.test(this.nodeName)||bG.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bD,"\r\n")}}):{name:b.name,value:c.replace(bD,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.bind(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?f.extend(!0,a,f.ajaxSettings,b):(b=a,a=f.extend(!0,f.ajaxSettings,b));for(var c in{context:1,url:1})c in b?a[c]=b[c]:c in f.ajaxSettings&&(a[c]=f.ajaxSettings[c]);return a},ajaxSettings:{url:bT,isLocal:bH.test(bU[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":"*/*"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML}},ajaxPrefilter:bW(bR),ajaxTransport:bW(bS),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a?4:0;var o,r,u,w=l?bZ(d,v,l):b,x,y;if(a>=200&&a<300||a===304){if(d.ifModified){if(x=v.getResponseHeader("Last-Modified"))f.lastModified[k]=x;if(y=v.getResponseHeader("Etag"))f.etag[k]=y}if(a===304)c="notmodified",o=!0;else try{r=b$(d,w),c="success",o=!0}catch(z){c="parsererror",u=z}}else{u=c;if(!c||a)c="error",a<0&&(a=0)}v.status=a,v.statusText=c,o?h.resolveWith(e,[r,c,v]):h.rejectWith(e,[v,c,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.resolveWith(e,[v,c]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f._Deferred(),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bF.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.done,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bE,"").replace(bJ,bU[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bN),d.crossDomain==null&&(r=bP.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bU[1]&&r[2]==bU[2]&&(r[3]||(r[1]==="http:"?80:443))==(bU[3]||(bU[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),bX(bR,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bI.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bK.test(d.url)?"&":"?")+d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bO,"$1_="+x);d.url=y+(y===d.url?(bK.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", */*; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=bX(bS,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){status<2?w(-1,z):f.error(z)}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)bY(g,a[g],c,e);return d.join("&").replace(bB,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var b_=f.now(),ca=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+b_++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=b.contentType==="application/x-www-form-urlencoded"&&typeof b.data=="string";if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(ca.test(b.url)||e&&ca.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(ca,l),b.url===j&&(e&&(k=k.replace(ca,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var cb=a.ActiveXObject?function(){for(var a in cd)cd[a](0,1)}:!1,cc=0,cd;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ce()||cf()}:ce,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c){if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,cb&&delete cd[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n),m.text=h.responseText;try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++cc,cb&&(cd||(cd={},f(a).unload(cb)),cd[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var cg={},ch,ci,cj=/^(?:toggle|show|hide)$/,ck=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,cl,cm=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],cn,co=a.webkitRequestAnimationFrame||a.mozRequestAnimationFrame||a.oRequestAnimationFrame;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(cr("show",3),a,b,c);for(var g=0,h=this.length;g<h;g++)d=this[g],d.style&&(e=d.style.display,!f._data(d,"olddisplay")&&e==="none"&&(e=d.style.display=""),e===""&&f.css(d,"display")==="none"&&f._data(d,"olddisplay",cs(d.nodeName)));for(g=0;g<h;g++){d=this[g];if(d.style){e=d.style.display;if(e===""||e==="none")d.style.display=f._data(d,"olddisplay")||""}}return this},hide:function(a,b,c){if(a||a===0)return this.animate(cr("hide",3),a,b,c);for(var d=0,e=this.length;d<e;d++)if(this[d].style){var g=f.css(this[d],"display");g!=="none"&&!f._data(this[d],"olddisplay")&&f._data(this[d],"olddisplay",g)}for(d=0;d<e;d++)this[d].style&&(this[d].style.display="none");return this},_toggle:f.fn.toggle,toggle:function(a,b,c){var d=typeof a=="boolean";f.isFunction(a)&&f.isFunction(b)?this._toggle.apply(this,arguments):a==null||d?this.each(function(){var b=d?a:f(this).is(":hidden");f(this)[b?"show":"hide"]()}):this.animate(cr("toggle",3),a,b,c);return this},fadeTo:function(a,b,c,d){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:b},a,c,d)},animate:function(a,b,c,d){var e=f.speed(b,c,d);if(f.isEmptyObject(a))return this.each(e.complete,[!1]);a=f.extend({},a);return this[e.queue===!1?"each":"queue"](function(){e.queue===!1&&f._mark(this);var b=f.extend({},e),c=this.nodeType===1,d=c&&f(this).is(":hidden"),g,h,i,j,k,l,m,n,o;b.animatedProperties={};for(i in a){g=f.camelCase(i),i!==g&&(a[g]=a[i],delete a[i]),h=a[g],f.isArray(h)?(b.animatedProperties[g]=h[1],h=a[g]=h[0]):b.animatedProperties[g]=b.specialEasing&&b.specialEasing[g]||b.easing||"swing";if(h==="hide"&&d||h==="show"&&!d)return b.complete.call(this);c&&(g==="height"||g==="width")&&(b.overflow=[this.style.overflow,this.style.overflowX,this.style.overflowY],f.css(this,"display")==="inline"&&f.css(this,"float")==="none"&&(f.support.inlineBlockNeedsLayout?(j=cs(this.nodeName),j==="inline"?this.style.display="inline-block":(this.style.display="inline",this.style.zoom=1)):this.style.display="inline-block"))}b.overflow!=null&&(this.style.overflow="hidden");for(i in a)k=new f.fx(this,b,i),h=a[i],cj.test(h)?k[h==="toggle"?d?"show":"hide":h]():(l=ck.exec(h),m=k.cur(),l?(n=parseFloat(l[2]),o=l[3]||(f.cssNumber[i]?"":"px"),o!=="px"&&(f.style(this,i,(n||1)+o),m=(n||1)/k.cur()*m,f.style(this,i,m+o)),l[1]&&(n=(l[1]==="-="?-1:1)*n+m),k.custom(m,n,o)):k.custom(m,h,""));return!0})},stop:function(a,b){a&&this.queue([]),this.each(function(){var a=f.timers,c=a.length;b||f._unmark(!0,this);while(c--)a[c].elem===this&&(b&&a[c](!0),a.splice(c,1))}),b||this.dequeue();return this}}),f.each({slideDown:cr("show",1),slideUp:cr("hide",1),slideToggle:cr("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){f.fn[a]=function(a,c,d){return this.animate(b,a,c,d)}}),f.extend({speed:function(a,b,c){var d=a&&typeof a=="object"?f.extend({},a):{complete:c||!c&&b||f.isFunction(a)&&a,duration:a,easing:c&&b||b&&!f.isFunction(b)&&b};d.duration=f.fx.off?0:typeof d.duration=="number"?d.duration:d.duration in f.fx.speeds?f.fx.speeds[d.duration]:f.fx.speeds._default,d.old=d.complete,d.complete=function(a){f.isFunction(d.old)&&d.old.call(this),d.queue!==!1?f.dequeue(this):a!==!1&&f._unmark(this)};return d},easing:{linear:function(a,b,c,d){return c+d*a},swing:function(a,b,c,d){return(-Math.cos(a*Math.PI)/2+.5)*d+c}},timers:[],fx:function(a,b,c){this.options=b,this.elem=a,this.prop=c,b.orig=b.orig||{}}}),f.fx.prototype={update:function(){this.options.step&&this.options.step.call(this.elem,this.now,this),(f.fx.step[this.prop]||f.fx.step._default)(this)},cur:function(){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null))return this.elem[this.prop];var a,b=f.css(this.elem,this.prop);return isNaN(a=parseFloat(b))?!b||b==="auto"?0:b:a},custom:function(a,b,c){function h(a){return d.step(a)}var d=this,e=f.fx,g;this.startTime=cn||cp(),this.start=a,this.end=b,this.unit=c||this.unit||(f.cssNumber[this.prop]?"":"px"),this.now=this.start,this.pos=this.state=0,h.elem=this.elem,h()&&f.timers.push(h)&&!cl&&(co?(cl=!0,g=function(){cl&&(co(g),e.tick())},co(g)):cl=setInterval(e.tick,e.interval))},show:function(){this.options.orig[this.prop]=f.style(this.elem,this.prop),this.options.show=!0,this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur()),f(this.elem).show()},hide:function(){this.options.orig[this.prop]=f.style(this.elem,this.prop),this.options.hide=!0,this.custom(this.cur(),0)},step:function(a){var b=cn||cp(),c=!0,d=this.elem,e=this.options,g,h;if(a||b>=e.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),e.animatedProperties[this.prop]=!0;for(g in e.animatedProperties)e.animatedProperties[g]!==!0&&(c=!1);if(c){e.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){d.style["overflow"+b]=e.overflow[a]}),e.hide&&f(d).hide();if(e.hide||e.show)for(var i in e.animatedProperties)f.style(d,i,e.orig[i]);e.complete.call(d)}return!1}e.duration==Infinity?this.now=b:(h=b-this.startTime,this.state=h/e.duration,this.pos=f.easing[e.animatedProperties[this.prop]](this.state,h,0,1,e.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){for(var a=f.timers,b=0;b<a.length;++b)a[b]()||a.splice(b--,1);a.length||f.fx.stop()},interval:13,stop:function(){clearInterval(cl),cl=null},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(a){f.style(a.elem,"opacity",a.now)},_default:function(a){a.elem.style&&a.elem.style[a.prop]!=null?a.elem.style[a.prop]=(a.prop==="width"||a.prop==="height"?Math.max(0,a.now):a.now)+a.unit:a.elem[a.prop]=a.now}}}),f.expr&&f.expr.filters&&(f.expr.filters.animated=function(a){return f.grep(f.timers,function(b){return a===b.elem}).length});var ct=/^t(?:able|d|h)$/i,cu=/^(?:body|html)$/i;"getBoundingClientRect"in c.documentElement?f.fn.offset=function(a){var b=this[0],c;if(a)return this.each(function(b){f.offset.setOffset(this,a,b)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return f.offset.bodyOffset(b);try{c=b.getBoundingClientRect()}catch(d){}var e=b.ownerDocument,g=e.documentElement;if(!c||!f.contains(g,b))return c?{top:c.top,left:c.left}:{top:0,left:0};var h=e.body,i=cv(e),j=g.clientTop||h.clientTop||0,k=g.clientLeft||h.clientLeft||0,l=i.pageYOffset||f.support.boxModel&&g.scrollTop||h.scrollTop,m=i.pageXOffset||f.support.boxModel&&g.scrollLeft||h.scrollLeft,n=c.top+l-j,o=c.left+m-k;return{top:n,left:o}}:f.fn.offset=function(a){var b=this[0];if(a)return this.each(function(b){f.offset.setOffset(this,a,b)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return f.offset.bodyOffset(b);f.offset.initialize();var c,d=b.offsetParent,e=b,g=b.ownerDocument,h=g.documentElement,i=g.body,j=g.defaultView,k=j?j.getComputedStyle(b,null):b.currentStyle,l=b.offsetTop,m=b.offsetLeft;while((b=b.parentNode)&&b!==i&&b!==h){if(f.offset.supportsFixedPosition&&k.position==="fixed")break;c=j?j.getComputedStyle(b,null):b.currentStyle,l-=b.scrollTop,m-=b.scrollLeft,b===d&&(l+=b.offsetTop,m+=b.offsetLeft,f.offset.doesNotAddBorder&&(!f.offset.doesAddBorderForTableAndCells||!ct.test(b.nodeName))&&(l+=parseFloat(c.borderTopWidth)||0,m+=parseFloat(c.borderLeftWidth)||0),e=d,d=b.offsetParent),f.offset.subtractsBorderForOverflowNotVisible&&c.overflow!=="visible"&&(l+=parseFloat(c.borderTopWidth)||0,m+=parseFloat(c.borderLeftWidth)||0),k=c}if(k.position==="relative"||k.position==="static")l+=i.offsetTop,m+=i.offsetLeft;f.offset.supportsFixedPosition&&k.position==="fixed"&&(l+=Math.max(h.scrollTop,i.scrollTop),m+=Math.max(h.scrollLeft,i.scrollLeft));return{top:l,left:m}},f.offset={initialize:function(){var a=c.body,b=c.createElement("div"),d,e,g,h,i=parseFloat(f.css(a,"marginTop"))||0,j="<div style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;'><div></div></div><table style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;' cellpadding='0' cellspacing='0'><tr><td></td></tr></table>";f.extend(b.style,{position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"}),b.innerHTML=j,a.insertBefore(b,a.firstChild),d=b.firstChild,e=d.firstChild,h=d.nextSibling.firstChild.firstChild,this.doesNotAddBorder=e.offsetTop!==5,this.doesAddBorderForTableAndCells=h.offsetTop===5,e.style.position="fixed",e.style.top="20px",this.supportsFixedPosition=e.offsetTop===20||e.offsetTop===15,e.style.position=e.style.top="",d.style.overflow="hidden",d.style.position="relative",this.subtractsBorderForOverflowNotVisible=e.offsetTop===-5,this.doesNotIncludeMarginInBodyOffset=a.offsetTop!==i,a.removeChild(b),f.offset.initialize=f.noop},bodyOffset:function(a){var b=a.offsetTop,c=a.offsetLeft;f.offset.initialize(),f.offset.doesNotIncludeMarginInBodyOffset&&(b+=parseFloat(f.css(a,"marginTop"))||0,c+=parseFloat(f.css(a,"marginLeft"))||0);return{top:b,left:c}},setOffset:function(a,b,c){var d=f.css(a,"position");d==="static"&&(a.style.position="relative");var e=f(a),g=e.offset(),h=f.css(a,"top"),i=f.css(a,"left"),j=(d==="absolute"||d==="fixed")&&f.inArray("auto",[h,i])>-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=cu.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!cu.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each(["Left","Top"],function(a,c){var d="scroll"+c;f.fn[d]=function(c){var e,g;if(c===b){e=this[0];if(!e)return null;g=cv(e);return g?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:f.support.boxModel&&g.document.documentElement[d]||g.document.body[d]:e[d]}return this.each(function(){g=cv(this),g?g.scrollTo(a?f(g).scrollLeft():c,a?c:f(g).scrollTop()):this[d]=c})}}),f.each(["Height","Width"],function(a,c){var d=c.toLowerCase();f.fn["inner"+c]=function(){var a=this[0];return a&&a.style?parseFloat(f.css(a,d,"padding")):null},f.fn["outer"+c]=function(a){var b=this[0];return b&&b.style?parseFloat(f.css(b,d,a?"margin":"border")):null},f.fn[d]=function(a){var e=this[0];if(!e)return a==null?null:this;if(f.isFunction(a))return this.each(function(b){var c=f(this);c[d](a.call(this,b,c[d]()))});if(f.isWindow(e)){var g=e.document.documentElement["client"+c];return e.document.compatMode==="CSS1Compat"&&g||e.document.body["client"+c]||g}if(e.nodeType===9)return Math.max(e.documentElement["client"+c],e.body["scroll"+c],e.documentElement["scroll"+c],e.body["offset"+c],e.documentElement["offset"+c]);if(a===b){var h=f.css(e,d),i=parseFloat(h);return f.isNaN(i)?h:i}return this.css(d,typeof a=="string"?a:a+"px")}}),a.jQuery=a.$=f})(window); 
     1/*! jQuery v1.6.4 http://jquery.com/ | http://jquery.org/license */ 
     2(function(a,b){function cu(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cr(a){if(!cg[a]){var b=c.body,d=f("<"+a+">").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){ch||(ch=c.createElement("iframe"),ch.frameBorder=ch.width=ch.height=0),b.appendChild(ch);if(!ci||!ch.createElement)ci=(ch.contentWindow||ch.contentDocument).document,ci.write((c.compatMode==="CSS1Compat"?"<!doctype html>":"")+"<html><body>"),ci.close();d=ci.createElement(a),ci.body.appendChild(d),e=f.css(d,"display"),b.removeChild(ch)}cg[a]=e}return cg[a]}function cq(a,b){var c={};f.each(cm.concat.apply([],cm.slice(0,b)),function(){c[this]=a});return c}function cp(){cn=b}function co(){setTimeout(cp,0);return cn=f.now()}function cf(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ce(){try{return new a.XMLHttpRequest}catch(b){}}function b$(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g<i;g++){if(g===1)for(h in a.converters)typeof h=="string"&&(e[h.toLowerCase()]=a.converters[h]);l=k,k=d[g];if(k==="*")k=l;else if(l!=="*"&&l!==k){m=l+" "+k,n=e[m]||e["* "+k];if(!n){p=b;for(o in e){j=o.split(" ");if(j[0]===l||j[0]==="*"){p=e[j[1]+" "+k];if(p){o=e[o],o===!0?n=p:p===!0&&(n=o);break}}}}!n&&!p&&f.error("No conversion from "+m.replace(" "," to ")),n!==!0&&(c=n?n(c):p(o(c)))}}return c}function bZ(a,c,d){var e=a.contents,f=a.dataTypes,g=a.responseFields,h,i,j,k;for(i in g)i in d&&(c[g[i]]=d[i]);while(f[0]==="*")f.shift(),h===b&&(h=a.mimeType||c.getResponseHeader("content-type"));if(h)for(i in e)if(e[i]&&e[i].test(h)){f.unshift(i);break}if(f[0]in d)j=f[0];else{for(i in d){if(!f[0]||a.converters[i+" "+f[0]]){j=i;break}k||(k=i)}j=j||k}if(j){j!==f[0]&&f.unshift(j);return d[j]}}function bY(a,b,c,d){if(f.isArray(b))f.each(b,function(b,e){c||bA.test(a)?d(a,e):bY(a+"["+(typeof e=="object"||f.isArray(e)?b:"")+"]",e,c,d)});else if(!c&&b!=null&&typeof b=="object")for(var e in b)bY(a+"["+e+"]",b[e],c,d);else d(a,b)}function bX(a,c){var d,e,g=f.ajaxSettings.flatOptions||{};for(d in c)c[d]!==b&&((g[d]?a:e||(e={}))[d]=c[d]);e&&f.extend(!0,a,e)}function bW(a,c,d,e,f,g){f=f||c.dataTypes[0],g=g||{},g[f]=!0;var h=a[f],i=0,j=h?h.length:0,k=a===bP,l;for(;i<j&&(k||!l);i++)l=h[i](c,d,e),typeof l=="string"&&(!k||g[l]?l=b:(c.dataTypes.unshift(l),l=bW(a,c,d,e,l,g)));(k||!l)&&!g["*"]&&(l=bW(a,c,d,e,"*",g));return l}function bV(a){return function(b,c){typeof b!="string"&&(c=b,b="*");if(f.isFunction(c)){var d=b.toLowerCase().split(bL),e=0,g=d.length,h,i,j;for(;e<g;e++)h=d[e],j=/^\+/.test(h),j&&(h=h.substr(1)||"*"),i=a[h]=a[h]||[],i[j?"unshift":"push"](c)}}}function by(a,b,c){var d=b==="width"?a.offsetWidth:a.offsetHeight,e=b==="width"?bt:bu;if(d>0){c!=="border"&&f.each(e,function(){c||(d-=parseFloat(f.css(a,"padding"+this))||0),c==="margin"?d+=parseFloat(f.css(a,c+this))||0:d-=parseFloat(f.css(a,"border"+this+"Width"))||0});return d+"px"}d=bv(a,b,b);if(d<0||d==null)d=a.style[b]||0;d=parseFloat(d)||0,c&&f.each(e,function(){d+=parseFloat(f.css(a,"padding"+this))||0,c!=="padding"&&(d+=parseFloat(f.css(a,"border"+this+"Width"))||0),c==="margin"&&(d+=parseFloat(f.css(a,c+this))||0)});return d+"px"}function bl(a,b){b.src?f.ajax({url:b.src,async:!1,dataType:"script"}):f.globalEval((b.text||b.textContent||b.innerHTML||"").replace(bd,"/*$0*/")),b.parentNode&&b.parentNode.removeChild(b)}function bk(a){f.nodeName(a,"input")?bj(a):"getElementsByTagName"in a&&f.grep(a.getElementsByTagName("input"),bj)}function bj(a){if(a.type==="checkbox"||a.type==="radio")a.defaultChecked=a.checked}function bi(a){return"getElementsByTagName"in a?a.getElementsByTagName("*"):"querySelectorAll"in a?a.querySelectorAll("*"):[]}function bh(a,b){var c;if(b.nodeType===1){b.clearAttributes&&b.clearAttributes(),b.mergeAttributes&&b.mergeAttributes(a),c=b.nodeName.toLowerCase();if(c==="object")b.outerHTML=a.outerHTML;else if(c!=="input"||a.type!=="checkbox"&&a.type!=="radio"){if(c==="option")b.selected=a.defaultSelected;else if(c==="input"||c==="textarea")b.defaultValue=a.defaultValue}else a.checked&&(b.defaultChecked=b.checked=a.checked),b.value!==a.value&&(b.value=a.value);b.removeAttribute(f.expando)}}function bg(a,b){if(b.nodeType===1&&!!f.hasData(a)){var c=f.expando,d=f.data(a),e=f.data(b,d);if(d=d[c]){var g=d.events;e=e[c]=f.extend({},d);if(g){delete e.handle,e.events={};for(var h in g)for(var i=0,j=g[h].length;i<j;i++)f.event.add(b,h+(g[h][i].namespace?".":"")+g[h][i].namespace,g[h][i],g[h][i].data)}}}}function bf(a,b){return f.nodeName(a,"table")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function V(a,b,c){b=b||0;if(f.isFunction(b))return f.grep(a,function(a,d){var e=!!b.call(a,d,a);return e===c});if(b.nodeType)return f.grep(a,function(a,d){return a===b===c});if(typeof b=="string"){var d=f.grep(a,function(a){return a.nodeType===1});if(Q.test(b))return f.filter(b,d,!c);b=f.filter(b,d)}return f.grep(a,function(a,d){return f.inArray(a,b)>=0===c})}function U(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function M(a,b){return(a&&a!=="*"?a+".":"")+b.replace(y,"`").replace(z,"&")}function L(a){var b,c,d,e,g,h,i,j,k,l,m,n,o,p=[],q=[],r=f._data(this,"events");if(!(a.liveFired===this||!r||!r.live||a.target.disabled||a.button&&a.type==="click")){a.namespace&&(n=new RegExp("(^|\\.)"+a.namespace.split(".").join("\\.(?:.*\\.)?")+"(\\.|$)")),a.liveFired=this;var s=r.live.slice(0);for(i=0;i<s.length;i++)g=s[i],g.origType.replace(w,"")===a.type?q.push(g.selector):s.splice(i--,1);e=f(a.target).closest(q,a.currentTarget);for(j=0,k=e.length;j<k;j++){m=e[j];for(i=0;i<s.length;i++){g=s[i];if(m.selector===g.selector&&(!n||n.test(g.namespace))&&!m.elem.disabled){h=m.elem,d=null;if(g.preType==="mouseenter"||g.preType==="mouseleave")a.type=g.preType,d=f(a.relatedTarget).closest(g.selector)[0],d&&f.contains(h,d)&&(d=h);(!d||d!==h)&&p.push({elem:h,handleObj:g,level:m.level})}}}for(j=0,k=p.length;j<k;j++){e=p[j];if(c&&e.level>c)break;a.currentTarget=e.elem,a.data=e.handleObj.data,a.handleObj=e.handleObj,o=e.handleObj.origHandler.apply(e.elem,arguments);if(o===!1||a.isPropagationStopped()){c=e.level,o===!1&&(b=!1);if(a.isImmediatePropagationStopped())break}}return b}}function J(a,c,d){var e=f.extend({},d[0]);e.type=a,e.originalEvent={},e.liveFired=b,f.event.handle.call(c,e),e.isDefaultPrevented()&&d[0].preventDefault()}function D(){return!0}function C(){return!1}function m(a,c,d){var e=c+"defer",g=c+"queue",h=c+"mark",i=f.data(a,e,b,!0);i&&(d==="queue"||!f.data(a,g,b,!0))&&(d==="mark"||!f.data(a,h,b,!0))&&setTimeout(function(){!f.data(a,g,b,!0)&&!f.data(a,h,b,!0)&&(f.removeData(a,e,!0),i.resolve())},0)}function l(a){for(var b in a)if(b!=="toJSON")return!1;return!0}function k(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(j,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNaN(d)?i.test(d)?f.parseJSON(d):d:parseFloat(d)}catch(g){}f.data(a,c,d)}else d=b}return d}var c=a.document,d=a.navigator,e=a.location,f=function(){function K(){if(!e.isReady){try{c.documentElement.doScroll("left")}catch(a){setTimeout(K,1);return}e.ready()}}var e=function(a,b){return new e.fn.init(a,b,h)},f=a.jQuery,g=a.$,h,i=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/\d/,n=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,o=/^[\],:{}\s]*$/,p=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,q=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,r=/(?:^|:|,)(?:\s*\[)+/g,s=/(webkit)[ \/]([\w.]+)/,t=/(opera)(?:.*version)?[ \/]([\w.]+)/,u=/(msie) ([\w.]+)/,v=/(mozilla)(?:.*? rv:([\w.]+))?/,w=/-([a-z]|[0-9])/ig,x=/^-ms-/,y=function(a,b){return(b+"").toUpperCase()},z=d.userAgent,A,B,C,D=Object.prototype.toString,E=Object.prototype.hasOwnProperty,F=Array.prototype.push,G=Array.prototype.slice,H=String.prototype.trim,I=Array.prototype.indexOf,J={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=n.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.6.4",length:0,size:function(){return this.length},toArray:function(){return G.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?F.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),B.done(a);return this},eq:function(a){return a===-1?this.slice(a):this.slice(a,+a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(G.apply(this,arguments),"slice",G.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:F,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j<k;j++)if((a=arguments[j])!=null)for(c in a){d=i[c],f=a[c];if(i===f)continue;l&&f&&(e.isPlainObject(f)||(g=e.isArray(f)))?(g?(g=!1,h=d&&e.isArray(d)?d:[]):h=d&&e.isPlainObject(d)?d:{},i[c]=e.extend(l,h,f)):f!==b&&(i[c]=f)}return i},e.extend({noConflict:function(b){a.$===e&&(a.$=g),b&&a.jQuery===e&&(a.jQuery=f);return e},isReady:!1,readyWait:1,holdReady:function(a){a?e.readyWait++:e.ready(!0)},ready:function(a){if(a===!0&&!--e.readyWait||a!==!0&&!e.isReady){if(!c.body)return setTimeout(e.ready,1);e.isReady=!0;if(a!==!0&&--e.readyWait>0)return;B.resolveWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").unbind("ready")}},bindReady:function(){if(!B){B=e._Deferred();if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",C,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",C),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&K()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a&&typeof a=="object"&&"setInterval"in a},isNaN:function(a){return a==null||!m.test(a)||isNaN(a)},type:function(a){return a==null?String(a):J[D.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;try{if(a.constructor&&!E.call(a,"constructor")&&!E.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||E.call(a,d)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw a},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(o.test(b.replace(p,"@").replace(q,"]").replace(r,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(c){var d,f;try{a.DOMParser?(f=new DOMParser,d=f.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(g){d=b}(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&e.error("Invalid XML: "+c);return d},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(x,"ms-").replace(w,y)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g<h;)if(c.apply(a[g++],d)===!1)break}else if(i){for(f in a)if(c.call(a[f],f,a[f])===!1)break}else for(;g<h;)if(c.call(a[g],g,a[g++])===!1)break;return a},trim:H?function(a){return a==null?"":H.call(a)}:function(a){return a==null?"":(a+"").replace(k,"").replace(l,"")},makeArray:function(a,b){var c=b||[];if(a!=null){var d=e.type(a);a.length==null||d==="string"||d==="function"||d==="regexp"||e.isWindow(a)?F.call(c,a):e.merge(c,a)}return c},inArray:function(a,b){if(!b)return-1;if(I)return I.call(b,a);for(var c=0,d=b.length;c<d;c++)if(b[c]===a)return c;return-1},merge:function(a,c){var d=a.length,e=0;if(typeof c.length=="number")for(var f=c.length;e<f;e++)a[d++]=c[e];else while(c[e]!==b)a[d++]=c[e++];a.length=d;return a},grep:function(a,b,c){var d=[],e;c=!!c;for(var f=0,g=a.length;f<g;f++)e=!!b(a[f],f),c!==e&&d.push(a[f]);return d},map:function(a,c,d){var f,g,h=[],i=0,j=a.length,k=a instanceof e||j!==b&&typeof j=="number"&&(j>0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i<j;i++)f=c(a[i],i,d),f!=null&&(h[h.length]=f);else for(g in a)f=c(a[g],g,d),f!=null&&(h[h.length]=f);return h.concat.apply([],h)},guid:1,proxy:function(a,c){if(typeof c=="string"){var d=a[c];c=a,a=d}if(!e.isFunction(a))return b;var f=G.call(arguments,2),g=function(){return a.apply(c,f.concat(G.call(arguments)))};g.guid=a.guid=a.guid||g.guid||e.guid++;return g},access:function(a,c,d,f,g,h){var i=a.length;if(typeof c=="object"){for(var j in c)e.access(a,j,c[j],f,g,d);return a}if(d!==b){f=!h&&f&&e.isFunction(d);for(var k=0;k<i;k++)g(a[k],c,f?d.call(a[k],k,g(a[k],c)):d,h);return a}return i?g(a[0],c):b},now:function(){return(new Date).getTime()},uaMatch:function(a){a=a.toLowerCase();var b=s.exec(a)||t.exec(a)||u.exec(a)||a.indexOf("compatible")<0&&v.exec(a)||[];return{browser:b[1]||"",version:b[2]||"0"}},sub:function(){function a(b,c){return new a.fn.init(b,c)}e.extend(!0,a,this),a.superclass=this,a.fn=a.prototype=this(),a.fn.constructor=a,a.sub=this.sub,a.fn.init=function(d,f){f&&f instanceof e&&!(f instanceof a)&&(f=a(f));return e.fn.init.call(this,d,f,b)},a.fn.init.prototype=a.fn;var b=a(c);return a},browser:{}}),e.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(a,b){J["[object "+b+"]"]=b.toLowerCase()}),A=e.uaMatch(z),A.browser&&(e.browser[A.browser]=!0,e.browser.version=A.version),e.browser.webkit&&(e.browser.safari=!0),j.test(" ")&&(k=/^[\s\xA0]+/,l=/[\s\xA0]+$/),h=e(c),c.addEventListener?C=function(){c.removeEventListener("DOMContentLoaded",C,!1),e.ready()}:c.attachEvent&&(C=function(){c.readyState==="complete"&&(c.detachEvent("onreadystatechange",C),e.ready())});return e}(),g="done fail isResolved isRejected promise then always pipe".split(" "),h=[].slice;f.extend({_Deferred:function(){var a=[],b,c,d,e={done:function(){if(!d){var c=arguments,g,h,i,j,k;b&&(k=b,b=0);for(g=0,h=c.length;g<h;g++)i=c[g],j=f.type(i),j==="array"?e.done.apply(e,i):j==="function"&&a.push(i);k&&e.resolveWith(k[0],k[1])}return this},resolveWith:function(e,f){if(!d&&!b&&!c){f=f||[],c=1;try{while(a[0])a.shift().apply(e,f)}finally{b=[e,f],c=0}}return this},resolve:function(){e.resolveWith(this,arguments);return this},isResolved:function(){return!!c||!!b},cancel:function(){d=1,a=[];return this}};return e},Deferred:function(a){var b=f._Deferred(),c=f._Deferred(),d;f.extend(b,{then:function(a,c){b.done(a).fail(c);return this},always:function(){return b.done.apply(b,arguments).fail.apply(this,arguments)},fail:c.done,rejectWith:c.resolveWith,reject:c.resolve,isRejected:c.isResolved,pipe:function(a,c){return f.Deferred(function(d){f.each({done:[a,"resolve"],fail:[c,"reject"]},function(a,c){var e=c[0],g=c[1],h;f.isFunction(e)?b[a](function(){h=e.apply(this,arguments),h&&f.isFunction(h.promise)?h.promise().then(d.resolve,d.reject):d[g+"With"](this===b?d:this,[h])}):b[a](d[g])})}).promise()},promise:function(a){if(a==null){if(d)return d;d=a={}}var c=g.length;while(c--)a[g[c]]=b[g[c]];return a}}),b.done(c.cancel).fail(b.cancel),delete b.cancel,a&&a.call(b,b);return b},when:function(a){function i(a){return function(c){b[a]=arguments.length>1?h.call(arguments,0):c,--e||g.resolveWith(g,h.call(b,0))}}var b=arguments,c=0,d=b.length,e=d,g=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred();if(d>1){for(;c<d;c++)b[c]&&f.isFunction(b[c].promise)?b[c].promise().then(i(c),g.reject):--e;e||g.resolveWith(g,b)}else g!==a&&g.resolveWith(g,d?[a]:[]);return g.promise()}}),f.support=function(){var a=c.createElement("div"),b=c.documentElement,d,e,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;a.setAttribute("className","t"),a.innerHTML="   <link/><table></table><a href='/a' style='top:1px;float:left;opacity:.55;'>a</a><input type='checkbox'/>",d=a.getElementsByTagName("*"),e=a.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=a.getElementsByTagName("input")[0],k={leadingWhitespace:a.firstChild.nodeType===3,tbody:!a.getElementsByTagName("tbody").length,htmlSerialize:!!a.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55$/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:a.className!=="t",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},i.checked=!0,k.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,k.optDisabled=!h.disabled;try{delete a.test}catch(v){k.deleteExpando=!1}!a.addEventListener&&a.attachEvent&&a.fireEvent&&(a.attachEvent("onclick",function(){k.noCloneEvent=!1}),a.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),k.radioValue=i.value==="t",i.setAttribute("checked","checked"),a.appendChild(i),l=c.createDocumentFragment(),l.appendChild(a.firstChild),k.checkClone=l.cloneNode(!0).cloneNode(!0).lastChild.checked,a.innerHTML="",a.style.width=a.style.paddingLeft="1px",m=c.getElementsByTagName("body")[0],o=c.createElement(m?"div":"body"),p={visibility:"hidden",width:0,height:0,border:0,margin:0,background:"none"},m&&f.extend(p,{position:"absolute",left:"-1000px",top:"-1000px"});for(t in p)o.style[t]=p[t];o.appendChild(a),n=m||b,n.insertBefore(o,n.firstChild),k.appendChecked=i.checked,k.boxModel=a.offsetWidth===2,"zoom"in a.style&&(a.style.display="inline",a.style.zoom=1,k.inlineBlockNeedsLayout=a.offsetWidth===2,a.style.display="",a.innerHTML="<div style='width:4px;'></div>",k.shrinkWrapBlocks=a.offsetWidth!==2),a.innerHTML="<table><tr><td style='padding:0;border:0;display:none'></td><td>t</td></tr></table>",q=a.getElementsByTagName("td"),u=q[0].offsetHeight===0,q[0].style.display="",q[1].style.display="none",k.reliableHiddenOffsets=u&&q[0].offsetHeight===0,a.innerHTML="",c.defaultView&&c.defaultView.getComputedStyle&&(j=c.createElement("div"),j.style.width="0",j.style.marginRight="0",a.appendChild(j),k.reliableMarginRight=(parseInt((c.defaultView.getComputedStyle(j,null)||{marginRight:0}).marginRight,10)||0)===0),o.innerHTML="",n.removeChild(o);if(a.attachEvent)for(t in{submit:1,change:1,focusin:1})s="on"+t,u=s in a,u||(a.setAttribute(s,"return;"),u=typeof a[s]=="function"),k[t+"Bubbles"]=u;o=l=g=h=m=j=a=i=null;return k}(),f.boxModel=f.support.boxModel;var i=/^(?:\{.*\}|\[.*\])$/,j=/([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!l(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g,h,i=f.expando,j=typeof c=="string",k=a.nodeType,l=k?f.cache:a,m=k?a[f.expando]:a[f.expando]&&f.expando;if((!m||e&&m&&l[m]&&!l[m][i])&&j&&d===b)return;m||(k?a[f.expando]=m=++f.uuid:m=f.expando),l[m]||(l[m]={},k||(l[m].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?l[m][i]=f.extend(l[m][i],c):l[m]=f.extend(l[m],c);g=l[m],e&&(g[i]||(g[i]={}),g=g[i]),d!==b&&(g[f.camelCase(c)]=d);if(c==="events"&&!g[c])return g[i]&&g[i].events;j?(h=g[c],h==null&&(h=g[f.camelCase(c)])):h=g;return h}},removeData:function(a,b,c){if(!!f.acceptData(a)){var d,e=f.expando,g=a.nodeType,h=g?f.cache:a,i=g?a[f.expando]:f.expando;if(!h[i])return;if(b){d=c?h[i][e]:h[i];if(d){d[b]||(b=f.camelCase(b)),delete d[b];if(!l(d))return}}if(c){delete h[i][e];if(!l(h[i]))return}var j=h[i][e];f.support.deleteExpando||!h.setInterval?delete h[i]:h[i]=null,j?(h[i]={},g||(h[i].toJSON=f.noop),h[i][e]=j):g&&(f.support.deleteExpando?delete a[f.expando]:a.removeAttribute?a.removeAttribute(f.expando):a[f.expando]=null)}},_data:function(a,b,c){return f.data(a,b,c,!0)},acceptData:function(a){if(a.nodeName){var b=f.noData[a.nodeName.toLowerCase()];if(b)return b!==!0&&a.getAttribute("classid")===b}return!0}}),f.fn.extend({data:function(a,c){var d=null;if(typeof a=="undefined"){if(this.length){d=f.data(this[0]);if(this[0].nodeType===1){var e=this[0].attributes,g;for(var h=0,i=e.length;h<i;h++)g=e[h].name,g.indexOf("data-")===0&&(g=f.camelCase(g.substring(5)),k(this[0],g,d[g]))}}return d}if(typeof a=="object")return this.each(function(){f.data(this,a)});var j=a.split(".");j[1]=j[1]?"."+j[1]:"";if(c===b){d=this.triggerHandler("getData"+j[1]+"!",[j[0]]),d===b&&this.length&&(d=f.data(this[0],a),d=k(this[0],a,d));return d===b&&j[1]?this.data(j[0]):d}return this.each(function(){var b=f(this),d=[j[0],c];b.triggerHandler("setData"+j[1]+"!",d),f.data(this,a,c),b.triggerHandler("changeData"+j[1]+"!",d)})},removeData:function(a){return this.each(function(){f.removeData(this,a)})}}),f.extend({_mark:function(a,c){a&&(c=(c||"fx")+"mark",f.data(a,c,(f.data(a,c,b,!0)||0)+1,!0))},_unmark:function(a,c,d){a!==!0&&(d=c,c=a,a=!1);if(c){d=d||"fx";var e=d+"mark",g=a?0:(f.data(c,e,b,!0)||1)-1;g?f.data(c,e,g,!0):(f.removeData(c,e,!0),m(c,d,"mark"))}},queue:function(a,c,d){if(a){c=(c||"fx")+"queue";var e=f.data(a,c,b,!0);d&&(!e||f.isArray(d)?e=f.data(a,c,f.makeArray(d),!0):e.push(d));return e||[]}},dequeue:function(a,b){b=b||"fx";var c=f.queue(a,b),d=c.shift(),e;d==="inprogress"&&(d=c.shift()),d&&(b==="fx"&&c.unshift("inprogress"),d.call(a,function(){f.dequeue(a,b)})),c.length||(f.removeData(a,b+"queue",!0),m(a,b,"queue"))}}),f.fn.extend({queue:function(a,c){typeof a!="string"&&(c=a,a="fx");if(c===b)return f.queue(this[0],a);return this.each(function(){var b=f.queue(this,a,c);a==="fx"&&b[0]!=="inprogress"&&f.dequeue(this,a)})},dequeue:function(a){return this.each(function(){f.dequeue(this,a)})},delay:function(a,b){a=f.fx?f.fx.speeds[a]||a:a,b=b||"fx";return this.queue(b,function(){var c=this;setTimeout(function(){f.dequeue(c,b)},a)})},clearQueue:function(a){return this.queue(a||"fx",[])},promise:function(a,c){function m(){--h||d.resolveWith(e,[e])}typeof a!="string"&&(c=a,a=b),a=a||"fx";var d=f.Deferred(),e=this,g=e.length,h=1,i=a+"defer",j=a+"queue",k=a+"mark",l;while(g--)if(l=f.data(e[g],i,b,!0)||(f.data(e[g],j,b,!0)||f.data(e[g],k,b,!0))&&f.data(e[g],i,f._Deferred(),!0))h++,l.done(m);m();return d.promise()}});var n=/[\n\t\r]/g,o=/\s+/,p=/\r/g,q=/^(?:button|input)$/i,r=/^(?:button|input|object|select|textarea)$/i,s=/^a(?:rea)?$/i,t=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,u,v;f.fn.extend({attr:function(a,b){return f.access(this,a,b,!0,f.attr)},removeAttr:function(a){return this.each(function(){f.removeAttr(this,a)})},prop:function(a,b){return f.access(this,a,b,!0,f.prop)},removeProp:function(a){a=f.propFix[a]||a;return this.each(function(){try{this[a]=b,delete this[a]}catch(c){}})},addClass:function(a){var b,c,d,e,g,h,i;if(f.isFunction(a))return this.each(function(b){f(this).addClass(a.call(this,b,this.className))});if(a&&typeof a=="string"){b=a.split(o);for(c=0,d=this.length;c<d;c++){e=this[c];if(e.nodeType===1)if(!e.className&&b.length===1)e.className=a;else{g=" "+e.className+" ";for(h=0,i=b.length;h<i;h++)~g.indexOf(" "+b[h]+" ")||(g+=b[h]+" ");e.className=f.trim(g)}}}return this},removeClass:function(a){var c,d,e,g,h,i,j;if(f.isFunction(a))return this.each(function(b){f(this).removeClass(a.call(this,b,this.className))});if(a&&typeof a=="string"||a===b){c=(a||"").split(o);for(d=0,e=this.length;d<e;d++){g=this[d];if(g.nodeType===1&&g.className)if(a){h=(" "+g.className+" ").replace(n," ");for(i=0,j=c.length;i<j;i++)h=h.replace(" "+c[i]+" "," ");g.className=f.trim(h)}else g.className=""}}return this},toggleClass:function(a,b){var c=typeof a,d=typeof b=="boolean";if(f.isFunction(a))return this.each(function(c){f(this).toggleClass(a.call(this,c,this.className,b),b)});return this.each(function(){if(c==="string"){var e,g=0,h=f(this),i=b,j=a.split(o);while(e=j[g++])i=d?i:!h.hasClass(e),h[i?"addClass":"removeClass"](e)}else if(c==="undefined"||c==="boolean")this.className&&f._data(this,"__className__",this.className),this.className=this.className||a===!1?"":f._data(this,"__className__")||""})},hasClass:function(a){var b=" "+a+" ";for(var c=0,d=this.length;c<d;c++)if(this[c].nodeType===1&&(" "+this[c].className+" ").replace(n," ").indexOf(b)>-1)return!0;return!1},val:function(a){var c,d,e=this[0];if(!arguments.length){if(e){c=f.valHooks[e.nodeName.toLowerCase()]||f.valHooks[e.type];if(c&&"get"in c&&(d=c.get(e,"value"))!==b)return d;d=e.value;return typeof d=="string"?d.replace(p,""):d==null?"":d}return b}var g=f.isFunction(a);return this.each(function(d){var e=f(this),h;if(this.nodeType===1){g?h=a.call(this,d,e.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.nodeName.toLowerCase()]||f.valHooks[this.type];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c=a.selectedIndex,d=[],e=a.options,g=a.type==="select-one";if(c<0)return null;for(var h=g?c:0,i=g?c+1:e.length;h<i;h++){var j=e[h];if(j.selected&&(f.support.optDisabled?!j.disabled:j.getAttribute("disabled")===null)&&(!j.parentNode.disabled||!f.nodeName(j.parentNode,"optgroup"))){b=f(j).val();if(g)return b;d.push(b)}}if(g&&!d.length&&e.length)return f(e[c]).val();return d},set:function(a,b){var c=f.makeArray(b);f(a).find("option").each(function(){this.selected=f.inArray(f(this).val(),c)>=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attrFix:{tabindex:"tabIndex"},attr:function(a,c,d,e){var g=a.nodeType;if(!a||g===3||g===8||g===2)return b;if(e&&c in f.attrFn)return f(a)[c](d);if(!("getAttribute"in a))return f.prop(a,c,d);var h,i,j=g!==1||!f.isXMLDoc(a);j&&(c=f.attrFix[c]||c,i=f.attrHooks[c],i||(t.test(c)?i=v:u&&(i=u)));if(d!==b){if(d===null){f.removeAttr(a,c);return b}if(i&&"set"in i&&j&&(h=i.set(a,d,c))!==b)return h;a.setAttribute(c,""+d);return d}if(i&&"get"in i&&j&&(h=i.get(a,c))!==null)return h;h=a.getAttribute(c);return h===null?b:h},removeAttr:function(a,b){var c;a.nodeType===1&&(b=f.attrFix[b]||b,f.attr(a,b,""),a.removeAttribute(b),t.test(b)&&(c=f.propFix[b]||b)in a&&(a[c]=!1))},attrHooks:{type:{set:function(a,b){if(q.test(a.nodeName)&&a.parentNode)f.error("type property can't be changed");else if(!f.support.radioValue&&b==="radio"&&f.nodeName(a,"input")){var c=a.value;a.setAttribute("type",b),c&&(a.value=c);return b}}},value:{get:function(a,b){if(u&&f.nodeName(a,"button"))return u.get(a,b);return b in a?a.value:null},set:function(a,b,c){if(u&&f.nodeName(a,"button"))return u.set(a,b,c);a.value=b}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},prop:function(a,c,d){var e=a.nodeType;if(!a||e===3||e===8||e===2)return b;var g,h,i=e!==1||!f.isXMLDoc(a);i&&(c=f.propFix[c]||c,h=f.propHooks[c]);return d!==b?h&&"set"in h&&(g=h.set(a,d,c))!==b?g:a[c]=d:h&&"get"in h&&(g=h.get(a,c))!==null?g:a[c]},propHooks:{tabIndex:{get:function(a){var c=a.getAttributeNode("tabindex");return c&&c.specified?parseInt(c.value,10):r.test(a.nodeName)||s.test(a.nodeName)&&a.href?0:b}}}}),f.attrHooks.tabIndex=f.propHooks.tabIndex,v={get:function(a,c){var d;return f.prop(a,c)===!0||(d=a.getAttributeNode(c))&&d.nodeValue!==!1?c.toLowerCase():b},set:function(a,b,c){var d;b===!1?f.removeAttr(a,c):(d=f.propFix[c]||c,d in a&&(a[d]=!0),a.setAttribute(c,c.toLowerCase()));return c}},f.support.getSetAttribute||(u=f.valHooks.button={get:function(a,c){var d;d=a.getAttributeNode(c);return d&&d.nodeValue!==""?d.nodeValue:b},set:function(a,b,d){var e=a.getAttributeNode(d);e||(e=c.createAttribute(d),a.setAttributeNode(e));return e.nodeValue=b+""}},f.each(["width","height"],function(a,b){f.attrHooks[b]=f.extend(f.attrHooks[b],{set:function(a,c){if(c===""){a.setAttribute(b,"auto");return c}}})})),f.support.hrefNormalized||f.each(["href","src","width","height"],function(a,c){f.attrHooks[c]=f.extend(f.attrHooks[c],{get:function(a){var d=a.getAttribute(c,2);return d===null?b:d}})}),f.support.style||(f.attrHooks.style={get:function(a){return a.style.cssText.toLowerCase()||b},set:function(a,b){return a.style.cssText=""+b}}),f.support.optSelected||(f.propHooks.selected=f.extend(f.propHooks.selected,{get:function(a){var b=a.parentNode;b&&(b.selectedIndex,b.parentNode&&b.parentNode.selectedIndex);return null}})),f.support.checkOn||f.each(["radio","checkbox"],function(){f.valHooks[this]={get:function(a){return a.getAttribute("value")===null?"on":a.value}}}),f.each(["radio","checkbox"],function(){f.valHooks[this]=f.extend(f.valHooks[this],{set:function(a,b){if(f.isArray(b))return a.checked=f.inArray(f(a).val(),b)>=0}})});var w=/\.(.*)$/,x=/^(?:textarea|input|select)$/i,y=/\./g,z=/ /g,A=/[^\w\s.|`]/g,B=function(a){return a.replace(A,"\\$&")};f.event={add:function(a,c,d,e){if(a.nodeType!==3&&a.nodeType!==8){if(d===!1)d=C;else if(!d)return;var g,h;d.handler&&(g=d,d=g.handler),d.guid||(d.guid=f.guid++);var i=f._data(a);if(!i)return;var j=i.events,k=i.handle;j||(i.events=j={}),k||(i.handle=k=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.handle.apply(k.elem,arguments):b}),k.elem=a,c=c.split(" ");var l,m=0,n;while(l=c[m++]){h=g?f.extend({},g):{handler:d,data:e},l.indexOf(".")>-1?(n=l.split("."),l=n.shift(),h.namespace=n.slice(0).sort().join(".")):(n=[],h.namespace=""),h.type=l,h.guid||(h.guid=d.guid);var o=j[l],p=f.event.special[l]||{};if(!o){o=j[l]=[];if(!p.setup||p.setup.call(a,e,n,k)===!1)a.addEventListener?a.addEventListener(l,k,!1):a.attachEvent&&a.attachEvent("on"+l,k)}p.add&&(p.add.call(a,h),h.handler.guid||(h.handler.guid=d.guid)),o.push(h),f.event.global[l]=!0}a=null}},global:{},remove:function(a,c,d,e){if(a.nodeType!==3&&a.nodeType!==8){d===!1&&(d=C);var g,h,i,j,k=0,l,m,n,o,p,q,r,s=f.hasData(a)&&f._data(a),t=s&&s.events;if(!s||!t)return;c&&c.type&&(d=c.handler,c=c.type);if(!c||typeof c=="string"&&c.charAt(0)==="."){c=c||"";for(h in t)f.event.remove(a,h+c);return}c=c.split(" ");while(h=c[k++]){r=h,q=null,l=h.indexOf(".")<0,m=[],l||(m=h.split("."),h=m.shift(),n=new RegExp("(^|\\.)"+f.map(m.slice(0).sort(),B).join("\\.(?:.*\\.)?")+"(\\.|$)")),p=t[h];if(!p)continue;if(!d){for(j=0;j<p.length;j++){q=p[j];if(l||n.test(q.namespace))f.event.remove(a,r,q.handler,j),p.splice(j--,1)}continue}o=f.event.special[h]||{};for(j=e||0;j<p.length;j++){q=p[j];if(d.guid===q.guid){if(l||n.test(q.namespace))e==null&&p.splice(j--,1),o.remove&&o.remove.call(a,q);if(e!=null)break}}if(p.length===0||e!=null&&p.length===1)(!o.teardown||o.teardown.call(a,m)===!1)&&f.removeEvent(a,h,s.handle),g=null,delete  
     3t[h]}if(f.isEmptyObject(t)){var u=s.handle;u&&(u.elem=null),delete s.events,delete s.handle,f.isEmptyObject(s)&&f.removeData(a,b,!0)}}},customEvent:{getData:!0,setData:!0,changeData:!0},trigger:function(c,d,e,g){var h=c.type||c,i=[],j;h.indexOf("!")>=0&&(h=h.slice(0,-1),j=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i.shift(),i.sort());if(!!e&&!f.event.customEvent[h]||!!f.event.global[h]){c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.exclusive=j,c.namespace=i.join("."),c.namespace_re=new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)");if(g||!e)c.preventDefault(),c.stopPropagation();if(!e){f.each(f.cache,function(){var a=f.expando,b=this[a];b&&b.events&&b.events[h]&&f.event.trigger(c,d,b.handle.elem)});return}if(e.nodeType===3||e.nodeType===8)return;c.result=b,c.target=e,d=d!=null?f.makeArray(d):[],d.unshift(c);var k=e,l=h.indexOf(":")<0?"on"+h:"";do{var m=f._data(k,"handle");c.currentTarget=k,m&&m.apply(k,d),l&&f.acceptData(k)&&k[l]&&k[l].apply(k,d)===!1&&(c.result=!1,c.preventDefault()),k=k.parentNode||k.ownerDocument||k===c.target.ownerDocument&&a}while(k&&!c.isPropagationStopped());if(!c.isDefaultPrevented()){var n,o=f.event.special[h]||{};if((!o._default||o._default.call(e.ownerDocument,c)===!1)&&(h!=="click"||!f.nodeName(e,"a"))&&f.acceptData(e)){try{l&&e[h]&&(n=e[l],n&&(e[l]=null),f.event.triggered=h,e[h]())}catch(p){}n&&(e[l]=n),f.event.triggered=b}}return c.result}},handle:function(c){c=f.event.fix(c||a.event);var d=((f._data(this,"events")||{})[c.type]||[]).slice(0),e=!c.exclusive&&!c.namespace,g=Array.prototype.slice.call(arguments,0);g[0]=c,c.currentTarget=this;for(var h=0,i=d.length;h<i;h++){var j=d[h];if(e||c.namespace_re.test(j.namespace)){c.handler=j.handler,c.data=j.data,c.handleObj=j;var k=j.handler.apply(this,g);k!==b&&(c.result=k,k===!1&&(c.preventDefault(),c.stopPropagation()));if(c.isImmediatePropagationStopped())break}}return c.result},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(a){if(a[f.expando])return a;var d=a;a=f.Event(d);for(var e=this.props.length,g;e;)g=this.props[--e],a[g]=d[g];a.target||(a.target=a.srcElement||c),a.target.nodeType===3&&(a.target=a.target.parentNode),!a.relatedTarget&&a.fromElement&&(a.relatedTarget=a.fromElement===a.target?a.toElement:a.fromElement);if(a.pageX==null&&a.clientX!=null){var h=a.target.ownerDocument||c,i=h.documentElement,j=h.body;a.pageX=a.clientX+(i&&i.scrollLeft||j&&j.scrollLeft||0)-(i&&i.clientLeft||j&&j.clientLeft||0),a.pageY=a.clientY+(i&&i.scrollTop||j&&j.scrollTop||0)-(i&&i.clientTop||j&&j.clientTop||0)}a.which==null&&(a.charCode!=null||a.keyCode!=null)&&(a.which=a.charCode!=null?a.charCode:a.keyCode),!a.metaKey&&a.ctrlKey&&(a.metaKey=a.ctrlKey),!a.which&&a.button!==b&&(a.which=a.button&1?1:a.button&2?3:a.button&4?2:0);return a},guid:1e8,proxy:f.proxy,special:{ready:{setup:f.bindReady,teardown:f.noop},live:{add:function(a){f.event.add(this,M(a.origType,a.selector),f.extend({},a,{handler:L,guid:a.handler.guid}))},remove:function(a){f.event.remove(this,M(a.origType,a.selector),a)}},beforeunload:{setup:function(a,b,c){f.isWindow(this)&&(this.onbeforeunload=c)},teardown:function(a,b){this.onbeforeunload===b&&(this.onbeforeunload=null)}}}},f.removeEvent=c.removeEventListener?function(a,b,c){a.removeEventListener&&a.removeEventListener(b,c,!1)}:function(a,b,c){a.detachEvent&&a.detachEvent("on"+b,c)},f.Event=function(a,b){if(!this.preventDefault)return new f.Event(a,b);a&&a.type?(this.originalEvent=a,this.type=a.type,this.isDefaultPrevented=a.defaultPrevented||a.returnValue===!1||a.getPreventDefault&&a.getPreventDefault()?D:C):this.type=a,b&&f.extend(this,b),this.timeStamp=f.now(),this[f.expando]=!0},f.Event.prototype={preventDefault:function(){this.isDefaultPrevented=D;var a=this.originalEvent;!a||(a.preventDefault?a.preventDefault():a.returnValue=!1)},stopPropagation:function(){this.isPropagationStopped=D;var a=this.originalEvent;!a||(a.stopPropagation&&a.stopPropagation(),a.cancelBubble=!0)},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=D,this.stopPropagation()},isDefaultPrevented:C,isPropagationStopped:C,isImmediatePropagationStopped:C};var E=function(a){var b=a.relatedTarget,c=!1,d=a.type;a.type=a.data,b!==this&&(b&&(c=f.contains(this,b)),c||(f.event.handle.apply(this,arguments),a.type=d))},F=function(a){a.type=a.data,f.event.handle.apply(this,arguments)};f.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){f.event.special[a]={setup:function(c){f.event.add(this,b,c&&c.selector?F:E,a)},teardown:function(a){f.event.remove(this,b,a&&a.selector?F:E)}}}),f.support.submitBubbles||(f.event.special.submit={setup:function(a,b){if(!f.nodeName(this,"form"))f.event.add(this,"click.specialSubmit",function(a){var b=a.target,c=f.nodeName(b,"input")||f.nodeName(b,"button")?b.type:"";(c==="submit"||c==="image")&&f(b).closest("form").length&&J("submit",this,arguments)}),f.event.add(this,"keypress.specialSubmit",function(a){var b=a.target,c=f.nodeName(b,"input")||f.nodeName(b,"button")?b.type:"";(c==="text"||c==="password")&&f(b).closest("form").length&&a.keyCode===13&&J("submit",this,arguments)});else return!1},teardown:function(a){f.event.remove(this,".specialSubmit")}});if(!f.support.changeBubbles){var G,H=function(a){var b=f.nodeName(a,"input")?a.type:"",c=a.value;b==="radio"||b==="checkbox"?c=a.checked:b==="select-multiple"?c=a.selectedIndex>-1?f.map(a.options,function(a){return a.selected}).join("-"):"":f.nodeName(a,"select")&&(c=a.selectedIndex);return c},I=function(c){var d=c.target,e,g;if(!!x.test(d.nodeName)&&!d.readOnly){e=f._data(d,"_change_data"),g=H(d),(c.type!=="focusout"||d.type!=="radio")&&f._data(d,"_change_data",g);if(e===b||g===e)return;if(e!=null||g)c.type="change",c.liveFired=b,f.event.trigger(c,arguments[1],d)}};f.event.special.change={filters:{focusout:I,beforedeactivate:I,click:function(a){var b=a.target,c=f.nodeName(b,"input")?b.type:"";(c==="radio"||c==="checkbox"||f.nodeName(b,"select"))&&I.call(this,a)},keydown:function(a){var b=a.target,c=f.nodeName(b,"input")?b.type:"";(a.keyCode===13&&!f.nodeName(b,"textarea")||a.keyCode===32&&(c==="checkbox"||c==="radio")||c==="select-multiple")&&I.call(this,a)},beforeactivate:function(a){var b=a.target;f._data(b,"_change_data",H(b))}},setup:function(a,b){if(this.type==="file")return!1;for(var c in G)f.event.add(this,c+".specialChange",G[c]);return x.test(this.nodeName)},teardown:function(a){f.event.remove(this,".specialChange");return x.test(this.nodeName)}},G=f.event.special.change.filters,G.focus=G.beforeactivate}f.support.focusinBubbles||f.each({focus:"focusin",blur:"focusout"},function(a,b){function e(a){var c=f.event.fix(a);c.type=b,c.originalEvent={},f.event.trigger(c,null,c.target),c.isDefaultPrevented()&&a.preventDefault()}var d=0;f.event.special[b]={setup:function(){d++===0&&c.addEventListener(a,e,!0)},teardown:function(){--d===0&&c.removeEventListener(a,e,!0)}}}),f.each(["bind","one"],function(a,c){f.fn[c]=function(a,d,e){var g;if(typeof a=="object"){for(var h in a)this[c](h,d,a[h],e);return this}if(arguments.length===2||d===!1)e=d,d=b;c==="one"?(g=function(a){f(this).unbind(a,g);return e.apply(this,arguments)},g.guid=e.guid||f.guid++):g=e;if(a==="unload"&&c!=="one")this.one(a,d,e);else for(var i=0,j=this.length;i<j;i++)f.event.add(this[i],a,g,d);return this}}),f.fn.extend({unbind:function(a,b){if(typeof a=="object"&&!a.preventDefault)for(var c in a)this.unbind(c,a[c]);else for(var d=0,e=this.length;d<e;d++)f.event.remove(this[d],a,b);return this},delegate:function(a,b,c,d){return this.live(b,c,d,a)},undelegate:function(a,b,c){return arguments.length===0?this.unbind("live"):this.die(b,null,c,a)},trigger:function(a,b){return this.each(function(){f.event.trigger(a,b,this)})},triggerHandler:function(a,b){if(this[0])return f.event.trigger(a,b,this[0],!0)},toggle:function(a){var b=arguments,c=a.guid||f.guid++,d=0,e=function(c){var e=(f.data(this,"lastToggle"+a.guid)||0)%d;f.data(this,"lastToggle"+a.guid,e+1),c.preventDefault();return b[e].apply(this,arguments)||!1};e.guid=c;while(d<b.length)b[d++].guid=c;return this.click(e)},hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}});var K={focus:"focusin",blur:"focusout",mouseenter:"mouseover",mouseleave:"mouseout"};f.each(["live","die"],function(a,c){f.fn[c]=function(a,d,e,g){var h,i=0,j,k,l,m=g||this.selector,n=g?this:f(this.context);if(typeof a=="object"&&!a.preventDefault){for(var o in a)n[c](o,d,a[o],m);return this}if(c==="die"&&!a&&g&&g.charAt(0)==="."){n.unbind(g);return this}if(d===!1||f.isFunction(d))e=d||C,d=b;a=(a||"").split(" ");while((h=a[i++])!=null){j=w.exec(h),k="",j&&(k=j[0],h=h.replace(w,""));if(h==="hover"){a.push("mouseenter"+k,"mouseleave"+k);continue}l=h,K[h]?(a.push(K[h]+k),h=h+k):h=(K[h]||h)+k;if(c==="live")for(var p=0,q=n.length;p<q;p++)f.event.add(n[p],"live."+M(h,m),{data:d,selector:m,handler:e,origType:h,origHandler:e,preType:l});else n.unbind("live."+M(h,m),e)}return this}}),f.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error".split(" "),function(a,b){f.fn[b]=function(a,c){c==null&&(c=a,a=null);return arguments.length>0?this.bind(b,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0)}),function(){function u(a,b,c,d,e,f){for(var g=0,h=d.length;g<h;g++){var i=d[g];if(i){var j=!1;i=i[a];while(i){if(i.sizcache===c){j=d[i.sizset];break}if(i.nodeType===1){f||(i.sizcache=c,i.sizset=g);if(typeof b!="string"){if(i===b){j=!0;break}}else if(k.filter(b,[i]).length>0){j=i;break}}i=i[a]}d[g]=j}}}function t(a,b,c,d,e,f){for(var g=0,h=d.length;g<h;g++){var i=d[g];if(i){var j=!1;i=i[a];while(i){if(i.sizcache===c){j=d[i.sizset];break}i.nodeType===1&&!f&&(i.sizcache=c,i.sizset=g);if(i.nodeName.toLowerCase()===b){j=i;break}i=i[a]}d[g]=j}}}var a=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d=0,e=Object.prototype.toString,g=!1,h=!0,i=/\\/g,j=/\W/;[0,0].sort(function(){h=!1;return 0});var k=function(b,d,f,g){f=f||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return f;var i,j,n,o,q,r,s,t,u=!0,w=k.isXML(d),x=[],y=b;do{a.exec(""),i=a.exec(y);if(i){y=i[3],x.push(i[1]);if(i[2]){o=i[3];break}}}while(i);if(x.length>1&&m.exec(b))if(x.length===2&&l.relative[x[0]])j=v(x[0]+x[1],d);else{j=l.relative[x[0]]?[d]:k(x.shift(),d);while(x.length)b=x.shift(),l.relative[b]&&(b+=x.shift()),j=v(b,j)}else{!g&&x.length>1&&d.nodeType===9&&!w&&l.match.ID.test(x[0])&&!l.match.ID.test(x[x.length-1])&&(q=k.find(x.shift(),d,w),d=q.expr?k.filter(q.expr,q.set)[0]:q.set[0]);if(d){q=g?{expr:x.pop(),set:p(g)}:k.find(x.pop(),x.length===1&&(x[0]==="~"||x[0]==="+")&&d.parentNode?d.parentNode:d,w),j=q.expr?k.filter(q.expr,q.set):q.set,x.length>0?n=p(j):u=!1;while(x.length)r=x.pop(),s=r,l.relative[r]?s=x.pop():r="",s==null&&(s=d),l.relative[r](n,s,w)}else n=x=[]}n||(n=j),n||k.error(r||b);if(e.call(n)==="[object Array]")if(!u)f.push.apply(f,n);else if(d&&d.nodeType===1)for(t=0;n[t]!=null;t++)n[t]&&(n[t]===!0||n[t].nodeType===1&&k.contains(d,n[t]))&&f.push(j[t]);else for(t=0;n[t]!=null;t++)n[t]&&n[t].nodeType===1&&f.push(j[t]);else p(n,f);o&&(k(o,h,f,g),k.uniqueSort(f));return f};k.uniqueSort=function(a){if(r){g=h,a.sort(r);if(g)for(var b=1;b<a.length;b++)a[b]===a[b-1]&&a.splice(b--,1)}return a},k.matches=function(a,b){return k(a,null,null,b)},k.matchesSelector=function(a,b){return k(b,null,null,[a]).length>0},k.find=function(a,b,c){var d;if(!a)return[];for(var e=0,f=l.order.length;e<f;e++){var g,h=l.order[e];if(g=l.leftMatch[h].exec(a)){var j=g[1];g.splice(1,1);if(j.substr(j.length-1)!=="\\"){g[1]=(g[1]||"").replace(i,""),d=l.find[h](g,b,c);if(d!=null){a=a.replace(l.match[h],"");break}}}}d||(d=typeof b.getElementsByTagName!="undefined"?b.getElementsByTagName("*"):[]);return{set:d,expr:a}},k.filter=function(a,c,d,e){var f,g,h=a,i=[],j=c,m=c&&c[0]&&k.isXML(c[0]);while(a&&c.length){for(var n in l.filter)if((f=l.leftMatch[n].exec(a))!=null&&f[2]){var o,p,q=l.filter[n],r=f[1];g=!1,f.splice(1,1);if(r.substr(r.length-1)==="\\")continue;j===i&&(i=[]);if(l.preFilter[n]){f=l.preFilter[n](f,j,d,i,e,m);if(!f)g=o=!0;else if(f===!0)continue}if(f)for(var s=0;(p=j[s])!=null;s++)if(p){o=q(p,f,s,j);var t=e^!!o;d&&o!=null?t?g=!0:j[s]=!1:t&&(i.push(p),g=!0)}if(o!==b){d||(j=i),a=a.replace(l.match[n],"");if(!g)return[];break}}if(a===h)if(g==null)k.error(a);else break;h=a}return j},k.error=function(a){throw"Syntax error, unrecognized expression: "+a};var l=k.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(?:(['"])(.*?)\3|(#?(?:[\w\u00c0-\uFFFF\-]|\\.)*)|)|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\(\s*(even|odd|(?:[+\-]?\d+|(?:[+\-]?\d*)?n\s*(?:[+\-]\s*\d+)?))\s*\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(a){return a.getAttribute("href")},type:function(a){return a.getAttribute("type")}},relative:{"+":function(a,b){var c=typeof b=="string",d=c&&!j.test(b),e=c&&!d;d&&(b=b.toLowerCase());for(var f=0,g=a.length,h;f<g;f++)if(h=a[f]){while((h=h.previousSibling)&&h.nodeType!==1);a[f]=e||h&&h.nodeName.toLowerCase()===b?h||!1:h===b}e&&k.filter(b,a,!0)},">":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!j.test(b)){b=b.toLowerCase();for(;e<f;e++){c=a[e];if(c){var g=c.parentNode;a[e]=g.nodeName.toLowerCase()===b?g:!1}}}else{for(;e<f;e++)c=a[e],c&&(a[e]=d?c.parentNode:c.parentNode===b);d&&k.filter(b,a,!0)}},"":function(a,b,c){var e,f=d++,g=u;typeof b=="string"&&!j.test(b)&&(b=b.toLowerCase(),e=b,g=t),g("parentNode",b,f,a,e,c)},"~":function(a,b,c){var e,f=d++,g=u;typeof b=="string"&&!j.test(b)&&(b=b.toLowerCase(),e=b,g=t),g("previousSibling",b,f,a,e,c)}},find:{ID:function(a,b,c){if(typeof b.getElementById!="undefined"&&!c){var d=b.getElementById(a[1]);return d&&d.parentNode?[d]:[]}},NAME:function(a,b){if(typeof b.getElementsByName!="undefined"){var c=[],d=b.getElementsByName(a[1]);for(var e=0,f=d.length;e<f;e++)d[e].getAttribute("name")===a[1]&&c.push(d[e]);return c.length===0?null:c}},TAG:function(a,b){if(typeof b.getElementsByTagName!="undefined")return b.getElementsByTagName(a[1])}},preFilter:{CLASS:function(a,b,c,d,e,f){a=" "+a[1].replace(i,"")+" ";if(f)return a;for(var g=0,h;(h=b[g])!=null;g++)h&&(e^(h.className&&(" "+h.className+" ").replace(/[\t\n\r]/g," ").indexOf(a)>=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(i,"")},TAG:function(a,b){return a[1].replace(i,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||k.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&k.error(a[0]);a[0]=d++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(i,"");!f&&l.attrMap[g]&&(a[1]=l.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(i,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=k(b[3],null,null,c);else{var g=k.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(l.match.POS.test(b[0])||l.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!k(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return b<c[3]-0},gt:function(a,b,c){return b>c[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=l.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||k.getText([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h<i;h++)if(g[h]===a)return!1;return!0}k.error(e)},CHILD:function(a,b){var c=b[1],d=a;switch(c){case"only":case"first":while(d=d.previousSibling)if(d.nodeType===1)return!1;if(c==="first")return!0;d=a;case"last":while(d=d.nextSibling)if(d.nodeType===1)return!1;return!0;case"nth":var e=b[2],f=b[3];if(e===1&&f===0)return!0;var g=b[0],h=a.parentNode;if(h&&(h.sizcache!==g||!a.nodeIndex)){var i=0;for(d=h.firstChild;d;d=d.nextSibling)d.nodeType===1&&(d.nodeIndex=++i);h.sizcache=g}var j=a.nodeIndex-f;return e===0?j===0:j%e===0&&j/e>=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=l.attrHandle[c]?l.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=l.setFilters[e];if(f)return f(a,c,b,d)}}},m=l.match.POS,n=function(a,b){return"\\"+(b-0+1)};for(var o in l.match)l.match[o]=new RegExp(l.match[o].source+/(?![^\[]*\])(?![^\(]*\))/.source),l.leftMatch[o]=new RegExp(/(^(?:.|\r|\n)*?)/.source+l.match[o].source.replace(/\\(\d+)/g,n));var p=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(q){p=function(a,b){var c=0,d=b||[];if(e.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var f=a.length;c<f;c++)d.push(a[c]);else for(;a[c];c++)d.push(a[c]);return d}}var r,s;c.documentElement.compareDocumentPosition?r=function(a,b){if(a===b){g=!0;return 0}if(!a.compareDocumentPosition||!b.compareDocumentPosition)return a.compareDocumentPosition?-1:1;return a.compareDocumentPosition(b)&4?-1:1}:(r=function(a,b){if(a===b){g=!0;return 0}if(a.sourceIndex&&b.sourceIndex)return a.sourceIndex-b.sourceIndex;var c,d,e=[],f=[],h=a.parentNode,i=b.parentNode,j=h;if(h===i)return s(a,b);if(!h)return-1;if(!i)return 1;while(j)e.unshift(j),j=j.parentNode;j=i;while(j)f.unshift(j),j=j.parentNode;c=e.length,d=f.length;for(var k=0;k<c&&k<d;k++)if(e[k]!==f[k])return s(e[k],f[k]);return k===c?s(a,f[k],-1):s(e[k],b,1)},s=function(a,b,c){if(a===b)return c;var d=a.nextSibling;while(d){if(d===b)return-1;d=d.nextSibling}return 1}),k.getText=function(a){var b="",c;for(var d=0;a[d];d++)c=a[d],c.nodeType===3||c.nodeType===4?b+=c.nodeValue:c.nodeType!==8&&(b+=k.getText(c.childNodes));return b},function(){var a=c.createElement("div"),d="script"+(new Date).getTime(),e=c.documentElement;a.innerHTML="<a name='"+d+"'/>",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(l.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},l.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(l.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="<a href='#'></a>",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(l.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=k,b=c.createElement("div"),d="__sizzle__";b.innerHTML="<p class='TEST'></p>";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){k=function(b,e,f,g){e=e||c;if(!g&&!k.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return p(e.getElementsByTagName(b),f);if(h[2]&&l.find.CLASS&&e.getElementsByClassName)return p(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return p([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return p([],f);if(i.id===h[3])return p([i],f)}try{return p(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var m=e,n=e.getAttribute("id"),o=n||d,q=e.parentNode,r=/^\s*[+~]/.test(b);n?o=o.replace(/'/g,"\\$&"):e.setAttribute("id",o),r&&q&&(e=e.parentNode);try{if(!r||q)return p(e.querySelectorAll("[id='"+o+"'] "+b),f)}catch(s){}finally{n||m.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)k[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}k.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!k.isXML(a))try{if(e||!l.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return k(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="<div class='test e'></div><div class='test'></div>";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;l.order.splice(1,0,"CLASS"),l.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?k.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?k.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:k.contains=function(){return!1},k.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var v=function(a,b){var c,d=[],e="",f=b.nodeType?[b]:b;while(c=l.match.PSEUDO.exec(a))e+=c[0],a=a.replace(l.match.PSEUDO,"");a=l.relative[a]?a+"*":a;for(var g=0,h=f.length;g<h;g++)k(a,f[g],d);return k.filter(e,d)};f.find=k,f.expr=k.selectors,f.expr[":"]=f.expr.filters,f.unique=k.uniqueSort,f.text=k.getText,f.isXMLDoc=k.isXML,f.contains=k.contains}();var N=/Until$/,O=/^(?:parents|prevUntil|prevAll)/,P=/,/,Q=/^.[^:#\[\.,]*$/,R=Array.prototype.slice,S=f.expr.match.POS,T={children:!0,contents:!0,next:!0,prev:!0};f.fn.extend({find:function(a){var b=this,c,d;if(typeof a!="string")return f(a).filter(function(){for(c=0,d=b.length;c<d;c++)if(f.contains(b[c],this))return!0});var e=this.pushStack("","find",a),g,h,i;for(c=0,d=this.length;c<d;c++){g=e.length,f.find(a,this[c],e);if(c>0)for(h=g;h<e.length;h++)for(i=0;i<g;i++)if(e[i]===e[h]){e.splice(h--,1);break}}return e},has:function(a){var b=f(a);return this.filter(function(){for(var a=0,c=b.length;a<c;a++)if(f.contains(this,b[a]))return!0})},not:function(a){return this.pushStack(V(this,a,!1),"not",a)},filter:function(a){return this.pushStack(V(this,a,!0),"filter",a)},is:function(a){return!!a&&(typeof a=="string"?f.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h,i,j={},k=1;if(g&&a.length){for(d=0,e=a.length;d<e;d++)i=a[d],j[i]||(j[i]=S.test(i)?f(i,b||this.context):i);while(g&&g.ownerDocument&&g!==b){for(i in j)h=j[i],(h.jquery?h.index(g)>-1:f(g).is(h))&&c.push({selector:i,elem:g,level:k});g=g.parentNode,k++}}return c}var l=S.test(a)||typeof a!="string"?f(a,b||this.context):0;for(d=0,e=this.length;d<e;d++){g=this[d];while(g){if(l?l.index(g)>-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a)return this[0]&&this[0].parentNode?this.prevAll().length:-1;if(typeof a=="string")return f.inArray(this[0],f(a));return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(U(c[0])||U(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling(a.parentNode.firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c),g=R.call(arguments);N.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!T[a]?f.unique(e):e,(this.length>1||P.test(d))&&O.test(a)&&(e=e.reverse());return this.pushStack(e,a,g.join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var W=/ jQuery\d+="(?:\d+|null)"/g,X=/^\s+/,Y=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Z=/<([\w:]+)/,$=/<tbody/i,_=/<|&#?\w+;/,ba=/<(?:script|object|embed|option|style)/i,bb=/checked\s*(?:[^=]|=\s*.checked.)/i,bc=/\/(java|ecma)script/i,bd=/^\s*<!(?:\[CDATA\[|\-\-)/,be={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]};be.optgroup=be.option,be.tbody=be.tfoot=be.colgroup=be.caption=be.thead,be.th=be.td,f.support.htmlSerialize||(be._default=[1,"div<div>","</div>"]),f.fn.extend({text:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.text(a.call(this,b,c.text()))});if(typeof a!="object"&&a!==b)return this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a));return f.text(this)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){return this.each(function(){f(this).wrapAll(a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f(arguments[0]);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,f(arguments[0]).toArray());return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")),f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function(){for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(W,""):null;if(typeof a=="string"&&!ba.test(a)&&(f.support.leadingWhitespace||!X.test(a))&&!be[(Z.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Y,"<$1></$2>");try{for(var c=0,d=this.length;c<d;c++)this[c].nodeType===1&&(f.cleanData(this[c].getElementsByTagName("*")),this[c].innerHTML=a)}catch(e){this.empty().append(a)}}else f.isFunction(a)?this.each(function(b){var c=f(this);c.html(a.call(this,b,c.html()))}):this.empty().append(a);return this},replaceWith:function(a){if(this[0]&&this[0].parentNode){if(f.isFunction(a))return this.each(function(b){var c=f(this),d=c.html();c.replaceWith(a.call(this,b,d))});typeof a!="string"&&(a=f(a).detach());return this.each(function(){var b=this.nextSibling,c=this.parentNode;f(this).remove(),b?f(b).before(a):f(c).append(a)})}return this.length?this.pushStack(f(f.isFunction(a)?a():a),"replaceWith",a):this},detach:function(a){return this.remove(a,!0)},domManip:function(a,c,d){var e,g,h,i,j=a[0],k=[];if(!f.support.checkClone&&arguments.length===3&&typeof j=="string"&&bb.test(j))return this.each(function(){f(this).domManip(a,c,d,!0)});if(f.isFunction(j))return this.each(function(e){var g=f(this);a[0]=j.call(this,e,c?g.html():b),g.domManip(a,c,d)});if(this[0]){i=j&&j.parentNode,f.support.parentNode&&i&&i.nodeType===11&&i.childNodes.length===this.length?e={fragment:i}:e=f.buildFragment(a,this,k),h=e.fragment,h.childNodes.length===1?g=h=h.firstChild:g=h.firstChild;if(g){c=c&&f.nodeName(g,"tr");for(var l=0,m=this.length,n=m-1;l<m;l++)d.call(c?bf(this[l],g):this[l],e.cacheable||m>1&&l<n?f.clone(h,!0,!0):h)}k.length&&f.each(k,bl)}return this}}),f.buildFragment=function(a,b,d){var e,g,h,i;b&&b[0]&&(i=b[0].ownerDocument||b[0]),i.createDocumentFragment||(i=c),a.length===1&&typeof a[0]=="string"&&a[0].length<512&&i===c&&a[0].charAt(0)==="<"&&!ba.test(a[0])&&(f.support.checkClone||!bb.test(a[0]))&&(g=!0,h=f.fragments[a[0]],h&&h!==1&&(e=h)),e||(e=i.createDocumentFragment(),f.clean 
     4(a,i,e,d)),g&&(f.fragments[a[0]]=h?e:1);return{fragment:e,cacheable:g}},f.fragments={},f.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){f.fn[a]=function(c){var d=[],e=f(c),g=this.length===1&&this[0].parentNode;if(g&&g.nodeType===11&&g.childNodes.length===1&&e.length===1){e[b](this[0]);return this}for(var h=0,i=e.length;h<i;h++){var j=(h>0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j)}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d=a.cloneNode(!0),e,g,h;if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bh(a,d),e=bi(a),g=bi(d);for(h=0;e[h];++h)g[h]&&bh(e[h],g[h])}if(b){bg(a,d);if(c){e=bi(a),g=bi(d);for(h=0;e[h];++h)bg(e[h],g[h])}}e=g=null;return d},clean:function(a,b,d,e){var g;b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument||b[0]&&b[0].ownerDocument||c);var h=[],i;for(var j=0,k;(k=a[j])!=null;j++){typeof k=="number"&&(k+="");if(!k)continue;if(typeof k=="string")if(!_.test(k))k=b.createTextNode(k);else{k=k.replace(Y,"<$1></$2>");var l=(Z.exec(k)||["",""])[1].toLowerCase(),m=be[l]||be._default,n=m[0],o=b.createElement("div");o.innerHTML=m[1]+k+m[2];while(n--)o=o.lastChild;if(!f.support.tbody){var p=$.test(k),q=l==="table"&&!p?o.firstChild&&o.firstChild.childNodes:m[1]==="<table>"&&!p?o.childNodes:[];for(i=q.length-1;i>=0;--i)f.nodeName(q[i],"tbody")&&!q[i].childNodes.length&&q[i].parentNode.removeChild(q[i])}!f.support.leadingWhitespace&&X.test(k)&&o.insertBefore(b.createTextNode(X.exec(k)[0]),o.firstChild),k=o.childNodes}var r;if(!f.support.appendChecked)if(k[0]&&typeof (r=k.length)=="number")for(i=0;i<r;i++)bk(k[i]);else bk(k);k.nodeType?h.push(k):h=f.merge(h,k)}if(d){g=function(a){return!a.type||bc.test(a.type)};for(j=0;h[j];j++)if(e&&f.nodeName(h[j],"script")&&(!h[j].type||h[j].type.toLowerCase()==="text/javascript"))e.push(h[j].parentNode?h[j].parentNode.removeChild(h[j]):h[j]);else{if(h[j].nodeType===1){var s=f.grep(h[j].getElementsByTagName("script"),g);h.splice.apply(h,[j+1,0].concat(s))}d.appendChild(h[j])}}return h},cleanData:function(a){var b,c,d=f.cache,e=f.expando,g=f.event.special,h=f.support.deleteExpando;for(var i=0,j;(j=a[i])!=null;i++){if(j.nodeName&&f.noData[j.nodeName.toLowerCase()])continue;c=j[f.expando];if(c){b=d[c]&&d[c][e];if(b&&b.events){for(var k in b.events)g[k]?f.event.remove(j,k):f.removeEvent(j,k,b.handle);b.handle&&(b.handle.elem=null)}h?delete j[f.expando]:j.removeAttribute&&j.removeAttribute(f.expando),delete d[c]}}}});var bm=/alpha\([^)]*\)/i,bn=/opacity=([^)]*)/,bo=/([A-Z]|^ms)/g,bp=/^-?\d+(?:px)?$/i,bq=/^-?\d/,br=/^([\-+])=([\-+.\de]+)/,bs={position:"absolute",visibility:"hidden",display:"block"},bt=["Left","Right"],bu=["Top","Bottom"],bv,bw,bx;f.fn.css=function(a,c){if(arguments.length===2&&c===b)return this;return f.access(this,a,c,!0,function(a,c,d){return d!==b?f.style(a,c,d):f.css(a,c)})},f.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=bv(a,"opacity","opacity");return c===""?"1":c}return a.style.opacity}}},cssNumber:{fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":f.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,c,d,e){if(!!a&&a.nodeType!==3&&a.nodeType!==8&&!!a.style){var g,h,i=f.camelCase(c),j=a.style,k=f.cssHooks[i];c=f.cssProps[i]||i;if(d===b){if(k&&"get"in k&&(g=k.get(a,!1,e))!==b)return g;return j[c]}h=typeof d,h==="string"&&(g=br.exec(d))&&(d=+(g[1]+1)*+g[2]+parseFloat(f.css(a,c)),h="number");if(d==null||h==="number"&&isNaN(d))return;h==="number"&&!f.cssNumber[i]&&(d+="px");if(!k||!("set"in k)||(d=k.set(a,d))!==b)try{j[c]=d}catch(l){}}},css:function(a,c,d){var e,g;c=f.camelCase(c),g=f.cssHooks[c],c=f.cssProps[c]||c,c==="cssFloat"&&(c="float");if(g&&"get"in g&&(e=g.get(a,!0,d))!==b)return e;if(bv)return bv(a,c)},swap:function(a,b,c){var d={};for(var e in b)d[e]=a.style[e],a.style[e]=b[e];c.call(a);for(e in b)a.style[e]=d[e]}}),f.curCSS=f.css,f.each(["height","width"],function(a,b){f.cssHooks[b]={get:function(a,c,d){var e;if(c){if(a.offsetWidth!==0)return by(a,b,d);f.swap(a,bs,function(){e=by(a,b,d)});return e}},set:function(a,b){if(!bp.test(b))return b;b=parseFloat(b);if(b>=0)return b+"px"}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return bn.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=f.isNaN(b)?"":"alpha(opacity="+b*100+")",g=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&f.trim(g.replace(bm,""))===""){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bm.test(g)?g.replace(bm,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){var c;f.swap(a,{display:"inline-block"},function(){b?c=bv(a,"margin-right","marginRight"):c=a.style.marginRight});return c}})}),c.defaultView&&c.defaultView.getComputedStyle&&(bw=function(a,c){var d,e,g;c=c.replace(bo,"-$1").toLowerCase();if(!(e=a.ownerDocument.defaultView))return b;if(g=e.getComputedStyle(a,null))d=g.getPropertyValue(c),d===""&&!f.contains(a.ownerDocument.documentElement,a)&&(d=f.style(a,c));return d}),c.documentElement.currentStyle&&(bx=function(a,b){var c,d=a.currentStyle&&a.currentStyle[b],e=a.runtimeStyle&&a.runtimeStyle[b],f=a.style;!bp.test(d)&&bq.test(d)&&(c=f.left,e&&(a.runtimeStyle.left=a.currentStyle.left),f.left=b==="fontSize"?"1em":d||0,d=f.pixelLeft+"px",f.left=c,e&&(a.runtimeStyle.left=e));return d===""?"auto":d}),bv=bw||bx,f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)});var bz=/%20/g,bA=/\[\]$/,bB=/\r?\n/g,bC=/#.*$/,bD=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bE=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bF=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,bG=/^(?:GET|HEAD)$/,bH=/^\/\//,bI=/\?/,bJ=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,bK=/^(?:select|textarea)/i,bL=/\s+/,bM=/([?&])_=[^&]*/,bN=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bO=f.fn.load,bP={},bQ={},bR,bS,bT=["*/"]+["*"];try{bR=e.href}catch(bU){bR=c.createElement("a"),bR.href="",bR=bR.href}bS=bN.exec(bR.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bO)return bO.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("<div>").append(c.replace(bJ,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bK.test(this.nodeName)||bE.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bB,"\r\n")}}):{name:b.name,value:c.replace(bB,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.bind(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?bX(a,f.ajaxSettings):(b=a,a=f.ajaxSettings),bX(a,b);return a},ajaxSettings:{url:bR,isLocal:bF.test(bS[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":bT},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:bV(bP),ajaxTransport:bV(bQ),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a>0?4:0;var o,r,u,w=c,x=l?bZ(d,v,l):b,y,z;if(a>=200&&a<300||a===304){if(d.ifModified){if(y=v.getResponseHeader("Last-Modified"))f.lastModified[k]=y;if(z=v.getResponseHeader("Etag"))f.etag[k]=z}if(a===304)w="notmodified",o=!0;else try{r=b$(d,x),w="success",o=!0}catch(A){w="parsererror",u=A}}else{u=w;if(!w||a)w="error",a<0&&(a=0)}v.status=a,v.statusText=""+(c||w),o?h.resolveWith(e,[r,w,v]):h.rejectWith(e,[v,w,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.resolveWith(e,[v,w]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f._Deferred(),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bD.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.done,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bC,"").replace(bH,bS[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bL),d.crossDomain==null&&(r=bN.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bS[1]&&r[2]==bS[2]&&(r[3]||(r[1]==="http:"?80:443))==(bS[3]||(bS[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),bW(bP,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bG.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bI.test(d.url)?"&":"?")+d.data,delete d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bM,"$1_="+x);d.url=y+(y===d.url?(bI.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", "+bT+"; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=bW(bQ,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){s<2?w(-1,z):f.error(z)}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)bY(g,a[g],c,e);return d.join("&").replace(bz,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var b_=f.now(),ca=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+b_++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=b.contentType==="application/x-www-form-urlencoded"&&typeof b.data=="string";if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(ca.test(b.url)||e&&ca.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(ca,l),b.url===j&&(e&&(k=k.replace(ca,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var cb=a.ActiveXObject?function(){for(var a in cd)cd[a](0,1)}:!1,cc=0,cd;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ce()||cf()}:ce,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c){if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,cb&&delete cd[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n),m.text=h.responseText;try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++cc,cb&&(cd||(cd={},f(a).unload(cb)),cd[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var cg={},ch,ci,cj=/^(?:toggle|show|hide)$/,ck=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,cl,cm=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],cn;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(cq("show",3),a,b,c);for(var g=0,h=this.length;g<h;g++)d=this[g],d.style&&(e=d.style.display,!f._data(d,"olddisplay")&&e==="none"&&(e=d.style.display=""),e===""&&f.css(d,"display")==="none"&&f._data(d,"olddisplay",cr(d.nodeName)));for(g=0;g<h;g++){d=this[g];if(d.style){e=d.style.display;if(e===""||e==="none")d.style.display=f._data(d,"olddisplay")||""}}return this},hide:function(a,b,c){if(a||a===0)return this.animate(cq("hide",3),a,b,c);for(var d=0,e=this.length;d<e;d++)if(this[d].style){var g=f.css(this[d],"display");g!=="none"&&!f._data(this[d],"olddisplay")&&f._data(this[d],"olddisplay",g)}for(d=0;d<e;d++)this[d].style&&(this[d].style.display="none");return this},_toggle:f.fn.toggle,toggle:function(a,b,c){var d=typeof a=="boolean";f.isFunction(a)&&f.isFunction(b)?this._toggle.apply(this,arguments):a==null||d?this.each(function(){var b=d?a:f(this).is(":hidden");f(this)[b?"show":"hide"]()}):this.animate(cq("toggle",3),a,b,c);return this},fadeTo:function(a,b,c,d){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:b},a,c,d)},animate:function(a,b,c,d){var e=f.speed(b,c,d);if(f.isEmptyObject(a))return this.each(e.complete,[!1]);a=f.extend({},a);return this[e.queue===!1?"each":"queue"](function(){e.queue===!1&&f._mark(this);var b=f.extend({},e),c=this.nodeType===1,d=c&&f(this).is(":hidden"),g,h,i,j,k,l,m,n,o;b.animatedProperties={};for(i in a){g=f.camelCase(i),i!==g&&(a[g]=a[i],delete a[i]),h=a[g],f.isArray(h)?(b.animatedProperties[g]=h[1],h=a[g]=h[0]):b.animatedProperties[g]=b.specialEasing&&b.specialEasing[g]||b.easing||"swing";if(h==="hide"&&d||h==="show"&&!d)return b.complete.call(this);c&&(g==="height"||g==="width")&&(b.overflow=[this.style.overflow,this.style.overflowX,this.style.overflowY],f.css(this,"display")==="inline"&&f.css(this,"float")==="none"&&(f.support.inlineBlockNeedsLayout?(j=cr(this.nodeName),j==="inline"?this.style.display="inline-block":(this.style.display="inline",this.style.zoom=1)):this.style.display="inline-block"))}b.overflow!=null&&(this.style.overflow="hidden");for(i in a)k=new f.fx(this,b,i),h=a[i],cj.test(h)?k[h==="toggle"?d?"show":"hide":h]():(l=ck.exec(h),m=k.cur(),l?(n=parseFloat(l[2]),o=l[3]||(f.cssNumber[i]?"":"px"),o!=="px"&&(f.style(this,i,(n||1)+o),m=(n||1)/k.cur()*m,f.style(this,i,m+o)),l[1]&&(n=(l[1]==="-="?-1:1)*n+m),k.custom(m,n,o)):k.custom(m,h,""));return!0})},stop:function(a,b){a&&this.queue([]),this.each(function(){var a=f.timers,c=a.length;b||f._unmark(!0,this);while(c--)a[c].elem===this&&(b&&a[c](!0),a.splice(c,1))}),b||this.dequeue();return this}}),f.each({slideDown:cq("show",1),slideUp:cq("hide",1),slideToggle:cq("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){f.fn[a]=function(a,c,d){return this.animate(b,a,c,d)}}),f.extend({speed:function(a,b,c){var d=a&&typeof a=="object"?f.extend({},a):{complete:c||!c&&b||f.isFunction(a)&&a,duration:a,easing:c&&b||b&&!f.isFunction(b)&&b};d.duration=f.fx.off?0:typeof d.duration=="number"?d.duration:d.duration in f.fx.speeds?f.fx.speeds[d.duration]:f.fx.speeds._default,d.old=d.complete,d.complete=function(a){f.isFunction(d.old)&&d.old.call(this),d.queue!==!1?f.dequeue(this):a!==!1&&f._unmark(this)};return d},easing:{linear:function(a,b,c,d){return c+d*a},swing:function(a,b,c,d){return(-Math.cos(a*Math.PI)/2+.5)*d+c}},timers:[],fx:function(a,b,c){this.options=b,this.elem=a,this.prop=c,b.orig=b.orig||{}}}),f.fx.prototype={update:function(){this.options.step&&this.options.step.call(this.elem,this.now,this),(f.fx.step[this.prop]||f.fx.step._default)(this)},cur:function(){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null))return this.elem[this.prop];var a,b=f.css(this.elem,this.prop);return isNaN(a=parseFloat(b))?!b||b==="auto"?0:b:a},custom:function(a,b,c){function g(a){return d.step(a)}var d=this,e=f.fx;this.startTime=cn||co(),this.start=a,this.end=b,this.unit=c||this.unit||(f.cssNumber[this.prop]?"":"px"),this.now=this.start,this.pos=this.state=0,g.elem=this.elem,g()&&f.timers.push(g)&&!cl&&(cl=setInterval(e.tick,e.interval))},show:function(){this.options.orig[this.prop]=f.style(this.elem,this.prop),this.options.show=!0,this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur()),f(this.elem).show()},hide:function(){this.options.orig[this.prop]=f.style(this.elem,this.prop),this.options.hide=!0,this.custom(this.cur(),0)},step:function(a){var b=cn||co(),c=!0,d=this.elem,e=this.options,g,h;if(a||b>=e.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),e.animatedProperties[this.prop]=!0;for(g in e.animatedProperties)e.animatedProperties[g]!==!0&&(c=!1);if(c){e.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){d.style["overflow"+b]=e.overflow[a]}),e.hide&&f(d).hide();if(e.hide||e.show)for(var i in e.animatedProperties)f.style(d,i,e.orig[i]);e.complete.call(d)}return!1}e.duration==Infinity?this.now=b:(h=b-this.startTime,this.state=h/e.duration,this.pos=f.easing[e.animatedProperties[this.prop]](this.state,h,0,1,e.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){for(var a=f.timers,b=0;b<a.length;++b)a[b]()||a.splice(b--,1);a.length||f.fx.stop()},interval:13,stop:function(){clearInterval(cl),cl=null},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(a){f.style(a.elem,"opacity",a.now)},_default:function(a){a.elem.style&&a.elem.style[a.prop]!=null?a.elem.style[a.prop]=(a.prop==="width"||a.prop==="height"?Math.max(0,a.now):a.now)+a.unit:a.elem[a.prop]=a.now}}}),f.expr&&f.expr.filters&&(f.expr.filters.animated=function(a){return f.grep(f.timers,function(b){return a===b.elem}).length});var cs=/^t(?:able|d|h)$/i,ct=/^(?:body|html)$/i;"getBoundingClientRect"in c.documentElement?f.fn.offset=function(a){var b=this[0],c;if(a)return this.each(function(b){f.offset.setOffset(this,a,b)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return f.offset.bodyOffset(b);try{c=b.getBoundingClientRect()}catch(d){}var e=b.ownerDocument,g=e.documentElement;if(!c||!f.contains(g,b))return c?{top:c.top,left:c.left}:{top:0,left:0};var h=e.body,i=cu(e),j=g.clientTop||h.clientTop||0,k=g.clientLeft||h.clientLeft||0,l=i.pageYOffset||f.support.boxModel&&g.scrollTop||h.scrollTop,m=i.pageXOffset||f.support.boxModel&&g.scrollLeft||h.scrollLeft,n=c.top+l-j,o=c.left+m-k;return{top:n,left:o}}:f.fn.offset=function(a){var b=this[0];if(a)return this.each(function(b){f.offset.setOffset(this,a,b)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return f.offset.bodyOffset(b);f.offset.initialize();var c,d=b.offsetParent,e=b,g=b.ownerDocument,h=g.documentElement,i=g.body,j=g.defaultView,k=j?j.getComputedStyle(b,null):b.currentStyle,l=b.offsetTop,m=b.offsetLeft;while((b=b.parentNode)&&b!==i&&b!==h){if(f.offset.supportsFixedPosition&&k.position==="fixed")break;c=j?j.getComputedStyle(b,null):b.currentStyle,l-=b.scrollTop,m-=b.scrollLeft,b===d&&(l+=b.offsetTop,m+=b.offsetLeft,f.offset.doesNotAddBorder&&(!f.offset.doesAddBorderForTableAndCells||!cs.test(b.nodeName))&&(l+=parseFloat(c.borderTopWidth)||0,m+=parseFloat(c.borderLeftWidth)||0),e=d,d=b.offsetParent),f.offset.subtractsBorderForOverflowNotVisible&&c.overflow!=="visible"&&(l+=parseFloat(c.borderTopWidth)||0,m+=parseFloat(c.borderLeftWidth)||0),k=c}if(k.position==="relative"||k.position==="static")l+=i.offsetTop,m+=i.offsetLeft;f.offset.supportsFixedPosition&&k.position==="fixed"&&(l+=Math.max(h.scrollTop,i.scrollTop),m+=Math.max(h.scrollLeft,i.scrollLeft));return{top:l,left:m}},f.offset={initialize:function(){var a=c.body,b=c.createElement("div"),d,e,g,h,i=parseFloat(f.css(a,"marginTop"))||0,j="<div style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;'><div></div></div><table style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;' cellpadding='0' cellspacing='0'><tr><td></td></tr></table>";f.extend(b.style,{position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"}),b.innerHTML=j,a.insertBefore(b,a.firstChild),d=b.firstChild,e=d.firstChild,h=d.nextSibling.firstChild.firstChild,this.doesNotAddBorder=e.offsetTop!==5,this.doesAddBorderForTableAndCells=h.offsetTop===5,e.style.position="fixed",e.style.top="20px",this.supportsFixedPosition=e.offsetTop===20||e.offsetTop===15,e.style.position=e.style.top="",d.style.overflow="hidden",d.style.position="relative",this.subtractsBorderForOverflowNotVisible=e.offsetTop===-5,this.doesNotIncludeMarginInBodyOffset=a.offsetTop!==i,a.removeChild(b),f.offset.initialize=f.noop},bodyOffset:function(a){var b=a.offsetTop,c=a.offsetLeft;f.offset.initialize(),f.offset.doesNotIncludeMarginInBodyOffset&&(b+=parseFloat(f.css(a,"marginTop"))||0,c+=parseFloat(f.css(a,"marginLeft"))||0);return{top:b,left:c}},setOffset:function(a,b,c){var d=f.css(a,"position");d==="static"&&(a.style.position="relative");var e=f(a),g=e.offset(),h=f.css(a,"top"),i=f.css(a,"left"),j=(d==="absolute"||d==="fixed")&&f.inArray("auto",[h,i])>-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=ct.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!ct.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each(["Left","Top"],function(a,c){var d="scroll"+c;f.fn[d]=function(c){var e,g;if(c===b){e=this[0];if(!e)return null;g=cu(e);return g?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:f.support.boxModel&&g.document.documentElement[d]||g.document.body[d]:e[d]}return this.each(function(){g=cu(this),g?g.scrollTo(a?f(g).scrollLeft():c,a?c:f(g).scrollTop()):this[d]=c})}}),f.each(["Height","Width"],function(a,c){var d=c.toLowerCase();f.fn["inner"+c]=function(){var a=this[0];return a&&a.style?parseFloat(f.css(a,d,"padding")):null},f.fn["outer"+c]=function(a){var b=this[0];return b&&b.style?parseFloat(f.css(b,d,a?"margin":"border")):null},f.fn[d]=function(a){var e=this[0];if(!e)return a==null?null:this;if(f.isFunction(a))return this.each(function(b){var c=f(this);c[d](a.call(this,b,c[d]()))});if(f.isWindow(e)){var g=e.document.documentElement["client"+c],h=e.document.body;return e.document.compatMode==="CSS1Compat"&&g||h&&h["client"+c]||g}if(e.nodeType===9)return Math.max(e.documentElement["client"+c],e.body["scroll"+c],e.documentElement["scroll"+c],e.body["offset"+c],e.documentElement["offset"+c]);if(a===b){var i=f.css(e,d),j=parseFloat(i);return f.isNaN(j)?i:j}return this.css(d,typeof a=="string"?a:a+"px")}}),a.jQuery=a.$=f})(window); 
  • trunk/themes/default/js/ui/i18n/jquery-ui-i18n.js

    r9559 r12525  
    1 /* Afrikaans initialisation for the jQuery UI date picker plugin. */ 
     1/* Afrikaans initialisation for the jQuery UI date picker plugin. */ 
    22/* Written by Renier Pretorius. */ 
    33jQuery(function($){ 
     
    4545        $.datepicker.setDefaults($.datepicker.regional['ar-DZ']); 
    4646}); 
    47 /* Arabic Translation for jQuery UI date picker plugin. */ 
     47/* Arabic Translation for jQuery UI date picker plugin. */ 
    4848/* Khaled Alhourani -- me@khaledalhourani.com */ 
    4949/* NOTE: monthNames are the original months names and they are the Arabic names, not the new months name فبراير - يناير and there isn't any Arabic roots for these months */ 
     
    5454                nextText: 'التالي&#x3e;', 
    5555                currentText: 'اليوم', 
    56                 monthNames: ['كانون الثاني', 'شباط', 'آذار', 'نيسان', 'آذار', 'حزيران', 
     56                monthNames: ['كانون الثاني', 'شباط', 'آذار', 'نيسان', 'مايو', 'حزيران', 
    5757                'تموز', 'آب', 'أيلول',  'تشرين الأول', 'تشرين الثاني', 'كانون الأول'], 
    5858                monthNamesShort: ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12'], 
     
    6767                yearSuffix: ''}; 
    6868        $.datepicker.setDefaults($.datepicker.regional['ar']); 
    69 });/* Azerbaijani (UTF-8) initialisation for the jQuery UI date picker plugin. */ 
     69});/* Azerbaijani (UTF-8) initialisation for the jQuery UI date picker plugin. */ 
    7070/* Written by Jamil Najafov (necefov33@gmail.com). */ 
    7171jQuery(function($) { 
     
    8989                yearSuffix: ''}; 
    9090        $.datepicker.setDefaults($.datepicker.regional['az']); 
    91 });/* Bulgarian initialisation for the jQuery UI date picker plugin. */ 
     91});/* Bulgarian initialisation for the jQuery UI date picker plugin. */ 
    9292/* Written by Stoyan Kyosev (http://svest.org). */ 
    9393jQuery(function($){ 
     
    113113    $.datepicker.setDefaults($.datepicker.regional['bg']); 
    114114}); 
    115 /* Bosnian i18n for the jQuery UI date picker plugin. */ 
     115/* Bosnian i18n for the jQuery UI date picker plugin. */ 
    116116/* Written by Kenan Konjo. */ 
    117117jQuery(function($){ 
     
    157157                yearSuffix: ''}; 
    158158        $.datepicker.setDefaults($.datepicker.regional['ca']); 
    159 });/* Czech initialisation for the jQuery UI date picker plugin. */ 
     159});/* Czech initialisation for the jQuery UI date picker plugin. */ 
    160160/* Written by Tomas Muller (tomas@tomas-muller.net). */ 
    161161jQuery(function($){ 
     
    180180        $.datepicker.setDefaults($.datepicker.regional['cs']); 
    181181}); 
    182 /* Danish initialisation for the jQuery UI date picker plugin. */ 
     182/* Danish initialisation for the jQuery UI date picker plugin. */ 
    183183/* Written by Jan Christensen ( deletestuff@gmail.com). */ 
    184184jQuery(function($){ 
     
    203203    $.datepicker.setDefaults($.datepicker.regional['da']); 
    204204}); 
    205 /* German initialisation for the jQuery UI date picker plugin. */ 
     205/* German initialisation for the jQuery UI date picker plugin. */ 
    206206/* Written by Milian Wolff (mail@milianw.de). */ 
    207207jQuery(function($){ 
     
    226226        $.datepicker.setDefaults($.datepicker.regional['de']); 
    227227}); 
    228 /* Greek (el) initialisation for the jQuery UI date picker plugin. */ 
     228/* Greek (el) initialisation for the jQuery UI date picker plugin. */ 
    229229/* Written by Alex Cicovic (http://www.alexcicovic.com) */ 
    230230jQuery(function($){ 
     
    271271        $.datepicker.setDefaults($.datepicker.regional['en-AU']); 
    272272}); 
    273 /* English/UK initialisation for the jQuery UI date picker plugin. */ 
     273/* English/UK initialisation for the jQuery UI date picker plugin. */ 
    274274/* Written by Stuart. */ 
    275275jQuery(function($){ 
     
    317317        $.datepicker.setDefaults($.datepicker.regional['en-NZ']); 
    318318}); 
    319 /* Esperanto initialisation for the jQuery UI date picker plugin. */ 
     319/* Esperanto initialisation for the jQuery UI date picker plugin. */ 
    320320/* Written by Olivier M. (olivierweb@ifrance.com). */ 
    321321jQuery(function($){ 
     
    362362                yearSuffix: ''}; 
    363363        $.datepicker.setDefaults($.datepicker.regional['es']); 
    364 });/* Estonian initialisation for the jQuery UI date picker plugin. */ 
     364});/* Estonian initialisation for the jQuery UI date picker plugin. */ 
    365365/* Written by Mart Sõmermaa (mrts.pydev at gmail com). */ 
    366366jQuery(function($){ 
     
    384384                yearSuffix: ''}; 
    385385        $.datepicker.setDefaults($.datepicker.regional['et']); 
    386 }); /* Euskarako oinarria 'UI date picker' jquery-ko extentsioarentzat */ 
     386}); /* Euskarako oinarria 'UI date picker' jquery-ko extentsioarentzat */ 
    387387/* Karrikas-ek itzulia (karrikas@karrikas.com) */ 
    388388jQuery(function($){ 
     
    406406                yearSuffix: ''}; 
    407407        $.datepicker.setDefaults($.datepicker.regional['eu']); 
    408 });/* Persian (Farsi) Translation for the jQuery UI date picker plugin. */ 
     408});/* Persian (Farsi) Translation for the jQuery UI date picker plugin. */ 
    409409/* Javad Mowlanezhad -- jmowla@gmail.com */ 
    410410/* Jalali calendar should supported soon! (Its implemented but I have to test it) */ 
     
    451451    $.datepicker.setDefaults($.datepicker.regional['fi']); 
    452452}); 
    453 /* Faroese initialisation for the jQuery UI date picker plugin */ 
     453/* Faroese initialisation for the jQuery UI date picker plugin */ 
    454454/* Written by Sverri Mohr Olsen, sverrimo@gmail.com */ 
    455455jQuery(function($){ 
     
    474474        $.datepicker.setDefaults($.datepicker.regional['fo']); 
    475475}); 
    476 /* Swiss-French initialisation for the jQuery UI date picker plugin. */ 
     476/* Swiss-French initialisation for the jQuery UI date picker plugin. */ 
    477477/* Written Martin Voelkle (martin.voelkle@e-tc.ch). */ 
    478478jQuery(function($){ 
     
    496496                yearSuffix: ''}; 
    497497        $.datepicker.setDefaults($.datepicker.regional['fr-CH']); 
    498 });/* French initialisation for the jQuery UI date picker plugin. */ 
     498});/* French initialisation for the jQuery UI date picker plugin. */ 
    499499/* Written by Keith Wood (kbwood{at}iinet.com.au), 
    500500              Stéphane Nahmani (sholby@sholby.net), 
     
    543543                yearSuffix: ''}; 
    544544        $.datepicker.setDefaults($.datepicker.regional['gl']); 
    545 });/* Hebrew initialisation for the UI Datepicker extension. */ 
     545});/* Hebrew initialisation for the UI Datepicker extension. */ 
    546546/* Written by Amir Hardon (ahardon at gmail dot com). */ 
    547547jQuery(function($){ 
     
    566566        $.datepicker.setDefaults($.datepicker.regional['he']); 
    567567}); 
    568 /* Croatian i18n for the jQuery UI date picker plugin. */ 
     568/* Croatian i18n for the jQuery UI date picker plugin. */ 
    569569/* Written by Vjekoslav Nesek. */ 
    570570jQuery(function($){ 
     
    700700        $.datepicker.setDefaults($.datepicker.regional['it']); 
    701701}); 
    702 /* Japanese initialisation for the jQuery UI date picker plugin. */ 
     702/* Japanese initialisation for the jQuery UI date picker plugin. */ 
    703703/* Written by Kentaro SATO (kentaro@ranvis.com). */ 
    704704jQuery(function($){ 
     
    811811                yearSuffix: ''}; 
    812812        $.datepicker.setDefaults($.datepicker.regional['lv']); 
    813 });/* Malayalam (UTF-8) initialisation for the jQuery UI date picker plugin. */ 
     813});/* Malayalam (UTF-8) initialisation for the jQuery UI date picker plugin. */ 
    814814/* Written by Saji Nediyanchath (saji89@gmail.com). */ 
    815815jQuery(function($){ 
     
    856856                yearSuffix: ''}; 
    857857        $.datepicker.setDefaults($.datepicker.regional['ms']); 
    858 });/* Dutch (UTF-8) initialisation for the jQuery UI date picker plugin. */ 
     858});/* Dutch (UTF-8) initialisation for the jQuery UI date picker plugin. */ 
    859859/* Written by Mathias Bynens <http://mathiasbynens.be/> */ 
    860860jQuery(function($){ 
     
    866866                monthNames: ['januari', 'februari', 'maart', 'april', 'mei', 'juni', 
    867867                'juli', 'augustus', 'september', 'oktober', 'november', 'december'], 
    868                 monthNamesShort: ['jan', 'feb', 'maa', 'apr', 'mei', 'jun', 
     868                monthNamesShort: ['jan', 'feb', 'mrt', 'apr', 'mei', 'jun', 
    869869                'jul', 'aug', 'sep', 'okt', 'nov', 'dec'], 
    870870                dayNames: ['zondag', 'maandag', 'dinsdag', 'woensdag', 'donderdag', 'vrijdag', 'zaterdag'], 
     
    872872                dayNamesMin: ['zo', 'ma', 'di', 'wo', 'do', 'vr', 'za'], 
    873873                weekHeader: 'Wk', 
    874                 dateFormat: 'dd/mm/yy', 
     874                dateFormat: 'dd-mm-yy', 
    875875                firstDay: 1, 
    876876                isRTL: false, 
     
    988988        $.datepicker.setDefaults($.datepicker.regional['rm']); 
    989989}); 
    990 /* Romanian initialisation for the jQuery UI date picker plugin. 
     990/* Romanian initialisation for the jQuery UI date picker plugin. 
    991991 * 
    992992 * Written by Edmond L. (ll_edmond@walla.com) 
     
    10481048                monthNamesShort: ['Jan','Feb','Mar','Apr','Máj','Jún', 
    10491049                'Júl','Aug','Sep','Okt','Nov','Dec'], 
    1050                 dayNames: ['Nedel\'a','Pondelok','Utorok','Streda','Štvrtok','Piatok','Sobota'], 
     1050                dayNames: ['Nedeľa','Pondelok','Utorok','Streda','Štvrtok','Piatok','Sobota'], 
    10511051                dayNamesShort: ['Ned','Pon','Uto','Str','Štv','Pia','Sob'], 
    10521052                dayNamesMin: ['Ne','Po','Ut','St','Št','Pia','So'], 
     
    10831083        $.datepicker.setDefaults($.datepicker.regional['sl']); 
    10841084}); 
    1085 /* Albanian initialisation for the jQuery UI date picker plugin. */ 
     1085/* Albanian initialisation for the jQuery UI date picker plugin. */ 
    10861086/* Written by Flakron Bytyqi (flakron@gmail.com). */ 
    10871087jQuery(function($){ 
     
    11061106        $.datepicker.setDefaults($.datepicker.regional['sq']); 
    11071107}); 
    1108 /* Serbian i18n for the jQuery UI date picker plugin. */ 
     1108/* Serbian i18n for the jQuery UI date picker plugin. */ 
    11091109/* Written by Dejan Dimić. */ 
    11101110jQuery(function($){ 
     
    11291129        $.datepicker.setDefaults($.datepicker.regional['sr-SR']); 
    11301130}); 
    1131 /* Serbian i18n for the jQuery UI date picker plugin. */ 
     1131/* Serbian i18n for the jQuery UI date picker plugin. */ 
    11321132/* Written by Dejan Dimić. */ 
    11331133jQuery(function($){ 
     
    11521152        $.datepicker.setDefaults($.datepicker.regional['sr']); 
    11531153}); 
    1154 /* Swedish initialisation for the jQuery UI date picker plugin. */ 
     1154/* Swedish initialisation for the jQuery UI date picker plugin. */ 
    11551155/* Written by Anders Ekdahl ( anders@nomadiz.se). */ 
    11561156jQuery(function($){ 
     
    11751175    $.datepicker.setDefaults($.datepicker.regional['sv']); 
    11761176}); 
    1177 /* Tamil (UTF-8) initialisation for the jQuery UI date picker plugin. */ 
     1177/* Tamil (UTF-8) initialisation for the jQuery UI date picker plugin. */ 
    11781178/* Written by S A Sureshkumar (saskumar@live.com). */ 
    11791179jQuery(function($){ 
     
    11981198        $.datepicker.setDefaults($.datepicker.regional['ta']); 
    11991199}); 
    1200 /* Thai initialisation for the jQuery UI date picker plugin. */ 
     1200/* Thai initialisation for the jQuery UI date picker plugin. */ 
    12011201/* Written by pipo (pipo@sixhead.com). */ 
    12021202jQuery(function($){ 
     
    12201220                yearSuffix: ''}; 
    12211221        $.datepicker.setDefaults($.datepicker.regional['th']); 
     1222});/* Tajiki (UTF-8) initialisation for the jQuery UI date picker plugin. */ 
     1223/* Written by Abdurahmon Saidov (saidovab@gmail.com). */ 
     1224jQuery(function($){ 
     1225        $.datepicker.regional['tj'] = { 
     1226                closeText: 'Идома', 
     1227                prevText: '&#x3c;Қафо', 
     1228                nextText: 'Пеш&#x3e;', 
     1229                currentText: 'Имрӯз', 
     1230                monthNames: ['Январ','Феврал','Март','Апрел','Май','Июн', 
     1231                'Июл','Август','Сентябр','Октябр','Ноябр','Декабр'], 
     1232                monthNamesShort: ['Янв','Фев','Мар','Апр','Май','Июн', 
     1233                'Июл','Авг','Сен','Окт','Ноя','Дек'], 
     1234                dayNames: ['якшанбе','душанбе','сешанбе','чоршанбе','панҷшанбе','ҷумъа','шанбе'], 
     1235                dayNamesShort: ['якш','душ','сеш','чор','пан','ҷум','шан'], 
     1236                dayNamesMin: ['Як','Дш','Сш','Чш','Пш','Ҷм','Шн'], 
     1237                weekHeader: 'Хф', 
     1238                dateFormat: 'dd.mm.yy', 
     1239                firstDay: 1, 
     1240                isRTL: false, 
     1241                showMonthAfterYear: false, 
     1242                yearSuffix: ''}; 
     1243        $.datepicker.setDefaults($.datepicker.regional['tj']); 
    12221244});/* Turkish initialisation for the jQuery UI date picker plugin. */ 
    12231245/* Written by Izzet Emre Erkan (kara@karalamalar.net). */ 
     
    12641286                yearSuffix: ''}; 
    12651287        $.datepicker.setDefaults($.datepicker.regional['uk']); 
    1266 });/* Vietnamese initialisation for the jQuery UI date picker plugin. */ 
     1288});/* Vietnamese initialisation for the jQuery UI date picker plugin. */ 
    12671289/* Translated by Le Thanh Huy (lthanhhuy@cit.ctu.edu.vn). */ 
    12681290jQuery(function($){ 
     
    13331355        $.datepicker.setDefaults($.datepicker.regional['zh-HK']); 
    13341356}); 
    1335 /* Chinese initialisation for the jQuery UI date picker plugin. */ 
     1357/* Chinese initialisation for the jQuery UI date picker plugin. */ 
    13361358/* Written by Ressol (ressol@gmail.com). */ 
    13371359jQuery(function($){ 
  • trunk/themes/default/js/ui/i18n/jquery.ui.datepicker-af.js

    r9172 r12525  
    1 /* Afrikaans initialisation for the jQuery UI date picker plugin. */ 
     1/* Afrikaans initialisation for the jQuery UI date picker plugin. */ 
    22/* Written by Renier Pretorius. */ 
    33jQuery(function($){ 
  • trunk/themes/default/js/ui/i18n/jquery.ui.datepicker-ar.js

    r9172 r12525  
    1 /* Arabic Translation for jQuery UI date picker plugin. */ 
     1/* Arabic Translation for jQuery UI date picker plugin. */ 
    22/* Khaled Alhourani -- me@khaledalhourani.com */ 
    33/* NOTE: monthNames are the original months names and they are the Arabic names, not the new months name فبراير - يناير and there isn't any Arabic roots for these months */ 
     
    88                nextText: 'التالي&#x3e;', 
    99                currentText: 'اليوم', 
    10                 monthNames: ['كانون الثاني', 'شباط', 'آذار', 'نيسان', 'آذار', 'حزيران', 
     10                monthNames: ['كانون الثاني', 'شباط', 'آذار', 'نيسان', 'مايو', 'حزيران', 
    1111                'تموز', 'آب', 'أيلول',  'تشرين الأول', 'تشرين الثاني', 'كانون الأول'], 
    1212                monthNamesShort: ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12'], 
  • trunk/themes/default/js/ui/i18n/jquery.ui.datepicker-az.js

    r9172 r12525  
    1 /* Azerbaijani (UTF-8) initialisation for the jQuery UI date picker plugin. */ 
     1/* Azerbaijani (UTF-8) initialisation for the jQuery UI date picker plugin. */ 
    22/* Written by Jamil Najafov (necefov33@gmail.com). */ 
    33jQuery(function($) { 
  • trunk/themes/default/js/ui/i18n/jquery.ui.datepicker-bg.js

    r9172 r12525  
    1 /* Bulgarian initialisation for the jQuery UI date picker plugin. */ 
     1/* Bulgarian initialisation for the jQuery UI date picker plugin. */ 
    22/* Written by Stoyan Kyosev (http://svest.org). */ 
    33jQuery(function($){ 
  • trunk/themes/default/js/ui/i18n/jquery.ui.datepicker-bs.js

    r9172 r12525  
    1 /* Bosnian i18n for the jQuery UI date picker plugin. */ 
     1/* Bosnian i18n for the jQuery UI date picker plugin. */ 
    22/* Written by Kenan Konjo. */ 
    33jQuery(function($){ 
  • trunk/themes/default/js/ui/i18n/jquery.ui.datepicker-cs.js

    r9172 r12525  
    1 /* Czech initialisation for the jQuery UI date picker plugin. */ 
     1/* Czech initialisation for the jQuery UI date picker plugin. */ 
    22/* Written by Tomas Muller (tomas@tomas-muller.net). */ 
    33jQuery(function($){ 
  • trunk/themes/default/js/ui/i18n/jquery.ui.datepicker-da.js

    r9172 r12525  
    1 /* Danish initialisation for the jQuery UI date picker plugin. */ 
     1/* Danish initialisation for the jQuery UI date picker plugin. */ 
    22/* Written by Jan Christensen ( deletestuff@gmail.com). */ 
    33jQuery(function($){ 
  • trunk/themes/default/js/ui/i18n/jquery.ui.datepicker-de.js

    r9172 r12525  
    1 /* German initialisation for the jQuery UI date picker plugin. */ 
     1/* German initialisation for the jQuery UI date picker plugin. */ 
    22/* Written by Milian Wolff (mail@milianw.de). */ 
    33jQuery(function($){ 
  • trunk/themes/default/js/ui/i18n/jquery.ui.datepicker-el.js

    r9172 r12525  
    1 /* Greek (el) initialisation for the jQuery UI date picker plugin. */ 
     1/* Greek (el) initialisation for the jQuery UI date picker plugin. */ 
    22/* Written by Alex Cicovic (http://www.alexcicovic.com) */ 
    33jQuery(function($){ 
  • trunk/themes/default/js/ui/i18n/jquery.ui.datepicker-en-GB.js

    r9172 r12525  
    1 /* English/UK initialisation for the jQuery UI date picker plugin. */ 
     1/* English/UK initialisation for the jQuery UI date picker plugin. */ 
    22/* Written by Stuart. */ 
    33jQuery(function($){ 
  • trunk/themes/default/js/ui/i18n/jquery.ui.datepicker-eo.js

    r9172 r12525  
    1 /* Esperanto initialisation for the jQuery UI date picker plugin. */ 
     1/* Esperanto initialisation for the jQuery UI date picker plugin. */ 
    22/* Written by Olivier M. (olivierweb@ifrance.com). */ 
    33jQuery(function($){ 
  • trunk/themes/default/js/ui/i18n/jquery.ui.datepicker-et.js

    r9172 r12525  
    1 /* Estonian initialisation for the jQuery UI date picker plugin. */ 
     1/* Estonian initialisation for the jQuery UI date picker plugin. */ 
    22/* Written by Mart Sõmermaa (mrts.pydev at gmail com). */ 
    33jQuery(function($){ 
  • trunk/themes/default/js/ui/i18n/jquery.ui.datepicker-eu.js

    r9172 r12525  
    1 /* Euskarako oinarria 'UI date picker' jquery-ko extentsioarentzat */ 
     1/* Euskarako oinarria 'UI date picker' jquery-ko extentsioarentzat */ 
    22/* Karrikas-ek itzulia (karrikas@karrikas.com) */ 
    33jQuery(function($){ 
  • trunk/themes/default/js/ui/i18n/jquery.ui.datepicker-fa.js

    r9172 r12525  
    1 /* Persian (Farsi) Translation for the jQuery UI date picker plugin. */ 
     1/* Persian (Farsi) Translation for the jQuery UI date picker plugin. */ 
    22/* Javad Mowlanezhad -- jmowla@gmail.com */ 
    33/* Jalali calendar should supported soon! (Its implemented but I have to test it) */ 
  • trunk/themes/default/js/ui/i18n/jquery.ui.datepicker-fo.js

    r9172 r12525  
    1 /* Faroese initialisation for the jQuery UI date picker plugin */ 
     1/* Faroese initialisation for the jQuery UI date picker plugin */ 
    22/* Written by Sverri Mohr Olsen, sverrimo@gmail.com */ 
    33jQuery(function($){ 
  • trunk/themes/default/js/ui/i18n/jquery.ui.datepicker-fr-CH.js

    r9172 r12525  
    1 /* Swiss-French initialisation for the jQuery UI date picker plugin. */ 
     1/* Swiss-French initialisation for the jQuery UI date picker plugin. */ 
    22/* Written Martin Voelkle (martin.voelkle@e-tc.ch). */ 
    33jQuery(function($){ 
  • trunk/themes/default/js/ui/i18n/jquery.ui.datepicker-fr.js

    r9172 r12525  
    1 /* French initialisation for the jQuery UI date picker plugin. */ 
     1/* French initialisation for the jQuery UI date picker plugin. */ 
    22/* Written by Keith Wood (kbwood{at}iinet.com.au), 
    33              Stéphane Nahmani (sholby@sholby.net), 
  • trunk/themes/default/js/ui/i18n/jquery.ui.datepicker-he.js

    r9172 r12525  
    1 /* Hebrew initialisation for the UI Datepicker extension. */ 
     1/* Hebrew initialisation for the UI Datepicker extension. */ 
    22/* Written by Amir Hardon (ahardon at gmail dot com). */ 
    33jQuery(function($){ 
  • trunk/themes/default/js/ui/i18n/jquery.ui.datepicker-hr.js

    r9172 r12525  
    1 /* Croatian i18n for the jQuery UI date picker plugin. */ 
     1/* Croatian i18n for the jQuery UI date picker plugin. */ 
    22/* Written by Vjekoslav Nesek. */ 
    33jQuery(function($){ 
  • trunk/themes/default/js/ui/i18n/jquery.ui.datepicker-ja.js

    r9172 r12525  
    1 /* Japanese initialisation for the jQuery UI date picker plugin. */ 
     1/* Japanese initialisation for the jQuery UI date picker plugin. */ 
    22/* Written by Kentaro SATO (kentaro@ranvis.com). */ 
    33jQuery(function($){ 
  • trunk/themes/default/js/ui/i18n/jquery.ui.datepicker-ml.js

    r9172 r12525  
    1 /* Malayalam (UTF-8) initialisation for the jQuery UI date picker plugin. */ 
     1/* Malayalam (UTF-8) initialisation for the jQuery UI date picker plugin. */ 
    22/* Written by Saji Nediyanchath (saji89@gmail.com). */ 
    33jQuery(function($){ 
  • trunk/themes/default/js/ui/i18n/jquery.ui.datepicker-nl.js

    r9172 r12525  
    1 /* Dutch (UTF-8) initialisation for the jQuery UI date picker plugin. */ 
     1/* Dutch (UTF-8) initialisation for the jQuery UI date picker plugin. */ 
    22/* Written by Mathias Bynens <http://mathiasbynens.be/> */ 
    33jQuery(function($){ 
     
    99                monthNames: ['januari', 'februari', 'maart', 'april', 'mei', 'juni', 
    1010                'juli', 'augustus', 'september', 'oktober', 'november', 'december'], 
    11                 monthNamesShort: ['jan', 'feb', 'maa', 'apr', 'mei', 'jun', 
     11                monthNamesShort: ['jan', 'feb', 'mrt', 'apr', 'mei', 'jun', 
    1212                'jul', 'aug', 'sep', 'okt', 'nov', 'dec'], 
    1313                dayNames: ['zondag', 'maandag', 'dinsdag', 'woensdag', 'donderdag', 'vrijdag', 'zaterdag'], 
     
    1515                dayNamesMin: ['zo', 'ma', 'di', 'wo', 'do', 'vr', 'za'], 
    1616                weekHeader: 'Wk', 
    17                 dateFormat: 'dd/mm/yy', 
     17                dateFormat: 'dd-mm-yy', 
    1818                firstDay: 1, 
    1919                isRTL: false, 
  • trunk/themes/default/js/ui/i18n/jquery.ui.datepicker-ro.js

    r9172 r12525  
    1 /* Romanian initialisation for the jQuery UI date picker plugin. 
     1/* Romanian initialisation for the jQuery UI date picker plugin. 
    22 * 
    33 * Written by Edmond L. (ll_edmond@walla.com) 
  • trunk/themes/default/js/ui/i18n/jquery.ui.datepicker-sk.js

    r9172 r12525  
    1111                monthNamesShort: ['Jan','Feb','Mar','Apr','Máj','Jún', 
    1212                'Júl','Aug','Sep','Okt','Nov','Dec'], 
    13                 dayNames: ['Nedel\'a','Pondelok','Utorok','Streda','Štvrtok','Piatok','Sobota'], 
     13                dayNames: ['Nedeľa','Pondelok','Utorok','Streda','Štvrtok','Piatok','Sobota'], 
    1414                dayNamesShort: ['Ned','Pon','Uto','Str','Štv','Pia','Sob'], 
    1515                dayNamesMin: ['Ne','Po','Ut','St','Št','Pia','So'], 
  • trunk/themes/default/js/ui/i18n/jquery.ui.datepicker-sq.js

    r9172 r12525  
    1 /* Albanian initialisation for the jQuery UI date picker plugin. */ 
     1/* Albanian initialisation for the jQuery UI date picker plugin. */ 
    22/* Written by Flakron Bytyqi (flakron@gmail.com). */ 
    33jQuery(function($){ 
  • trunk/themes/default/js/ui/i18n/jquery.ui.datepicker-sr-SR.js

    r9172 r12525  
    1 /* Serbian i18n for the jQuery UI date picker plugin. */ 
     1/* Serbian i18n for the jQuery UI date picker plugin. */ 
    22/* Written by Dejan Dimić. */ 
    33jQuery(function($){ 
  • trunk/themes/default/js/ui/i18n/jquery.ui.datepicker-sr.js

    r9172 r12525  
    1 /* Serbian i18n for the jQuery UI date picker plugin. */ 
     1/* Serbian i18n for the jQuery UI date picker plugin. */ 
    22/* Written by Dejan Dimić. */ 
    33jQuery(function($){ 
  • trunk/themes/default/js/ui/i18n/jquery.ui.datepicker-sv.js

    r9172 r12525  
    1 /* Swedish initialisation for the jQuery UI date picker plugin. */ 
     1/* Swedish initialisation for the jQuery UI date picker plugin. */ 
    22/* Written by Anders Ekdahl ( anders@nomadiz.se). */ 
    33jQuery(function($){ 
  • trunk/themes/default/js/ui/i18n/jquery.ui.datepicker-ta.js

    r9172 r12525  
    1 /* Tamil (UTF-8) initialisation for the jQuery UI date picker plugin. */ 
     1/* Tamil (UTF-8) initialisation for the jQuery UI date picker plugin. */ 
    22/* Written by S A Sureshkumar (saskumar@live.com). */ 
    33jQuery(function($){ 
  • trunk/themes/default/js/ui/i18n/jquery.ui.datepicker-th.js

    r9172 r12525  
    1 /* Thai initialisation for the jQuery UI date picker plugin. */ 
     1/* Thai initialisation for the jQuery UI date picker plugin. */ 
    22/* Written by pipo (pipo@sixhead.com). */ 
    33jQuery(function($){ 
  • trunk/themes/default/js/ui/i18n/jquery.ui.datepicker-vi.js

    r9172 r12525  
    1 /* Vietnamese initialisation for the jQuery UI date picker plugin. */ 
     1/* Vietnamese initialisation for the jQuery UI date picker plugin. */ 
    22/* Translated by Le Thanh Huy (lthanhhuy@cit.ctu.edu.vn). */ 
    33jQuery(function($){ 
  • trunk/themes/default/js/ui/i18n/jquery.ui.datepicker-zh-TW.js

    r9172 r12525  
    1 /* Chinese initialisation for the jQuery UI date picker plugin. */ 
     1/* Chinese initialisation for the jQuery UI date picker plugin. */ 
    22/* Written by Ressol (ressol@gmail.com). */ 
    33jQuery(function($){ 
  • trunk/themes/default/js/ui/jquery.effects.blind.js

    r9559 r12525  
    11/* 
    2  * jQuery UI Effects Blind 1.8.10 
     2 * jQuery UI Effects Blind 1.8.16 
    33 * 
    44 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) 
  • trunk/themes/default/js/ui/jquery.effects.bounce.js

    r9559 r12525  
    11/* 
    2  * jQuery UI Effects Bounce 1.8.10 
     2 * jQuery UI Effects Bounce 1.8.16 
    33 * 
    44 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) 
  • trunk/themes/default/js/ui/jquery.effects.clip.js

    r9559 r12525  
    11/* 
    2  * jQuery UI Effects Clip 1.8.10 
     2 * jQuery UI Effects Clip 1.8.16 
    33 * 
    44 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) 
  • trunk/themes/default/js/ui/jquery.effects.core.js

    r9559 r12525  
    11/* 
    2  * jQuery UI Effects 1.8.10 
     2 * jQuery UI Effects 1.8.16 
    33 * 
    44 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) 
     
    232232        } 
    233233 
    234         return this.queue('fx', function() { 
     234        return this.queue(function() { 
    235235                var that = $(this), 
    236236                        originalStyleAttr = that.attr('style') || ' ', 
    237237                        originalStyle = filterStyles(getElementStyles.call(this)), 
    238238                        newStyle, 
    239                         className = that.attr('className'); 
     239                        className = that.attr('class'); 
    240240 
    241241                $.each(classAnimationActions, function(i, action) { 
     
    245245                }); 
    246246                newStyle = filterStyles(getElementStyles.call(this)); 
    247                 that.attr('className', className); 
    248  
    249                 that.animate(styleDifference(originalStyle, newStyle), duration, easing, function() { 
    250                         $.each(classAnimationActions, function(i, action) { 
    251                                 if (value[action]) { that[action + 'Class'](value[action]); } 
    252                         }); 
    253                         // work around bug in IE by clearing the cssText before setting it 
    254                         if (typeof that.attr('style') == 'object') { 
    255                                 that.attr('style').cssText = ''; 
    256                                 that.attr('style').cssText = originalStyleAttr; 
    257                         } else { 
    258                                 that.attr('style', originalStyleAttr); 
     247                that.attr('class', className); 
     248 
     249                that.animate(styleDifference(originalStyle, newStyle), { 
     250                        queue: false, 
     251                        duration: duration, 
     252                        easing: easing, 
     253                        complete: function() { 
     254                                $.each(classAnimationActions, function(i, action) { 
     255                                        if (value[action]) { that[action + 'Class'](value[action]); } 
     256                                }); 
     257                                // work around bug in IE by clearing the cssText before setting it 
     258                                if (typeof that.attr('style') == 'object') { 
     259                                        that.attr('style').cssText = ''; 
     260                                        that.attr('style').cssText = originalStyleAttr; 
     261                                } else { 
     262                                        that.attr('style', originalStyleAttr); 
     263                                } 
     264                                if (callback) { callback.apply(this, arguments); } 
     265                                $.dequeue( this ); 
    259266                        } 
    260                         if (callback) { callback.apply(this, arguments); } 
    261267                }); 
    262  
    263                 // $.animate adds a function to the end of the queue 
    264                 // but we want it at the front 
    265                 var queue = $.queue(this), 
    266                         anim = queue.splice(queue.length - 1, 1)[0]; 
    267                 queue.splice(1, 0, anim); 
    268                 $.dequeue(this); 
    269268        }); 
    270269}; 
     
    308307 
    309308$.extend($.effects, { 
    310         version: "1.8.10", 
     309        version: "1.8.16", 
    311310 
    312311        // Saves a set of properties in a data storage 
     
    369368                                        margin: 0, 
    370369                                        padding: 0 
    371                                 }); 
     370                                }), 
     371                        active = document.activeElement; 
    372372 
    373373                element.wrap(wrapper); 
     374 
     375                // Fixes #7595 - Elements lose focus when wrapped. 
     376                if ( element[ 0 ] === active || $.contains( element[ 0 ], active ) ) { 
     377                        $( active ).focus(); 
     378                } 
     379                 
    374380                wrapper = element.parent(); //Hotfix for jQuery 1.4 since some change in wrap() seems to actually loose the reference to the wrapped element 
    375381 
     
    396402 
    397403        removeWrapper: function(element) { 
    398                 if (element.parent().is('.ui-effects-wrapper')) 
    399                         return element.parent().replaceWith(element); 
     404                var parent, 
     405                        active = document.activeElement; 
     406                 
     407                if (element.parent().is('.ui-effects-wrapper')) { 
     408                        parent = element.parent().replaceWith(element); 
     409                        // Fixes #7595 - Elements lose focus when wrapped. 
     410                        if ( element[ 0 ] === active || $.contains( element[ 0 ], active ) ) { 
     411                                $( active ).focus(); 
     412                        } 
     413                        return parent; 
     414                } 
     415                         
    400416                return element; 
    401417        }, 
  • trunk/themes/default/js/ui/jquery.effects.drop.js

    r9559 r12525  
    11/* 
    2  * jQuery UI Effects Drop 1.8.10 
     2 * jQuery UI Effects Drop 1.8.16 
    33 * 
    44 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) 
  • trunk/themes/default/js/ui/jquery.effects.explode.js

    r9559 r12525  
    11/* 
    2  * jQuery UI Effects Explode 1.8.10 
     2 * jQuery UI Effects Explode 1.8.16 
    33 * 
    44 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) 
  • trunk/themes/default/js/ui/jquery.effects.fade.js

    r9559 r12525  
    11/* 
    2  * jQuery UI Effects Fade 1.8.10 
     2 * jQuery UI Effects Fade 1.8.16 
    33 * 
    44 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) 
  • trunk/themes/default/js/ui/jquery.effects.fold.js

    r9559 r12525  
    11/* 
    2  * jQuery UI Effects Fold 1.8.10 
     2 * jQuery UI Effects Fold 1.8.16 
    33 * 
    44 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) 
  • trunk/themes/default/js/ui/jquery.effects.highlight.js

    r9559 r12525  
    11/* 
    2  * jQuery UI Effects Highlight 1.8.10 
     2 * jQuery UI Effects Highlight 1.8.16 
    33 * 
    44 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) 
  • trunk/themes/default/js/ui/jquery.effects.pulsate.js

    r9559 r12525  
    11/* 
    2  * jQuery UI Effects Pulsate 1.8.10 
     2 * jQuery UI Effects Pulsate 1.8.16 
    33 * 
    44 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) 
  • trunk/themes/default/js/ui/jquery.effects.scale.js

    r9559 r12525  
    11/* 
    2  * jQuery UI Effects Scale 1.8.10 
     2 * jQuery UI Effects Scale 1.8.16 
    33 * 
    44 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) 
  • trunk/themes/default/js/ui/jquery.effects.shake.js

    r9559 r12525  
    11/* 
    2  * jQuery UI Effects Shake 1.8.10 
     2 * jQuery UI Effects Shake 1.8.16 
    33 * 
    44 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) 
  • trunk/themes/default/js/ui/jquery.effects.slide.js

    r9559 r12525  
    11/* 
    2  * jQuery UI Effects Slide 1.8.10 
     2 * jQuery UI Effects Slide 1.8.16 
    33 * 
    44 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) 
  • trunk/themes/default/js/ui/jquery.effects.transfer.js

    r9559 r12525  
    11/* 
    2  * jQuery UI Effects Transfer 1.8.10 
     2 * jQuery UI Effects Transfer 1.8.16 
    33 * 
    44 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) 
  • trunk/themes/default/js/ui/jquery.ui.accordion.js

    r9559 r12525  
    11/* 
    2  * jQuery UI Accordion 1.8.10 
     2 * jQuery UI Accordion 1.8.16 
    33 * 
    44 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) 
     
    115115                        .attr({ 
    116116                                "aria-expanded": "false", 
     117                                "aria-selected": "false", 
    117118                                tabIndex: -1 
    118119                        }) 
     
    127128                                .attr({ 
    128129                                        "aria-expanded": "true", 
     130                                        "aria-selected": "true", 
    129131                                        tabIndex: 0 
    130132                                }); 
     
    174176                        .removeAttr( "role" ) 
    175177                        .removeAttr( "aria-expanded" ) 
     178                        .removeAttr( "aria-selected" ) 
    176179                        .removeAttr( "tabIndex" ); 
    177180 
     
    478481                        .attr({ 
    479482                                "aria-expanded": "false", 
     483                                "aria-selected": "false", 
    480484                                tabIndex: -1 
    481485                        }) 
     
    484488                        .attr({ 
    485489                                "aria-expanded": "true", 
     490                                "aria-selected": "true", 
    486491                                tabIndex: 0 
    487492                        }) 
     
    514519 
    515520$.extend( $.ui.accordion, { 
    516         version: "1.8.10", 
     521        version: "1.8.16", 
    517522        animations: { 
    518523                slide: function( options, additions ) { 
  • trunk/themes/default/js/ui/jquery.ui.autocomplete.js

    r9559 r12525  
    11/* 
    2  * jQuery UI Autocomplete 1.8.10 
     2 * jQuery UI Autocomplete 1.8.16 
    33 * 
    44 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) 
     
    2121        options: { 
    2222                appendTo: "body", 
     23                autoFocus: false, 
    2324                delay: 300, 
    2425                minLength: 1, 
     
    4849                        }) 
    4950                        .bind( "keydown.autocomplete", function( event ) { 
    50                                 if ( self.options.disabled || self.element.attr( "readonly" ) ) { 
     51                                if ( self.options.disabled || self.element.propAttr( "readOnly" ) ) { 
    5152                                        return; 
    5253                                } 
     
    366367                        of: this.element 
    367368                }, this.options.position )); 
     369 
     370                if ( this.options.autoFocus ) { 
     371                        this.menu.next( new $.Event("mouseover") ); 
     372                } 
    368373        }, 
    369374 
     
    486491                if (this.hasScroll()) { 
    487492                        var offset = item.offset().top - this.element.offset().top, 
    488                                 scroll = this.element.attr("scrollTop"), 
     493                                scroll = this.element.scrollTop(), 
    489494                                elementHeight = this.element.height(); 
    490495                        if (offset < 0) { 
    491                                 this.element.attr("scrollTop", scroll + offset); 
     496                                this.element.scrollTop( scroll + offset); 
    492497                        } else if (offset >= elementHeight) { 
    493                                 this.element.attr("scrollTop", scroll + offset - elementHeight + item.height()); 
     498                                this.element.scrollTop( scroll + offset - elementHeight + item.height()); 
    494499                        } 
    495500                } 
     
    597602 
    598603        hasScroll: function() { 
    599                 return this.element.height() < this.element.attr("scrollHeight"); 
     604                return this.element.height() < this.element[ $.fn.prop ? "prop" : "attr" ]("scrollHeight"); 
    600605        }, 
    601606 
  • trunk/themes/default/js/ui/jquery.ui.button.js

    r9559 r12525  
    11/* 
    2  * jQuery UI Button 1.8.10 
     2 * jQuery UI Button 1.8.16 
    33 * 
    44 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) 
     
    1414(function( $, undefined ) { 
    1515 
    16 var lastActive, 
     16var lastActive, startXPos, startYPos, clickDragged, 
    1717        baseClasses = "ui-button ui-widget ui-state-default ui-corner-all", 
    1818        stateClasses = "ui-state-hover ui-state-active ", 
    1919        typeClasses = "ui-button-icons-only ui-button-icon-only ui-button-text-icons ui-button-text-icon-primary ui-button-text-icon-secondary ui-button-text-only", 
    20         formResetHandler = function( event ) { 
    21                 $( ":ui-button", event.target.form ).each(function() { 
    22                         var inst = $( this ).data( "button" ); 
    23                         setTimeout(function() { 
    24                                 inst.refresh(); 
    25                         }, 1 ); 
    26                 }); 
     20        formResetHandler = function() { 
     21                var buttons = $( this ).find( ":ui-button" ); 
     22                setTimeout(function() { 
     23                        buttons.button( "refresh" ); 
     24                }, 1 ); 
    2725        }, 
    2826        radioGroup = function( radio ) { 
     
    5957 
    6058                if ( typeof this.options.disabled !== "boolean" ) { 
    61                         this.options.disabled = this.element.attr( "disabled" ); 
     59                        this.options.disabled = this.element.propAttr( "disabled" ); 
    6260                } 
    6361 
     
    9795                                $( this ).removeClass( hoverClass ); 
    9896                        }) 
     97                        .bind( "click.button", function( event ) { 
     98                                if ( options.disabled ) { 
     99                                        event.preventDefault(); 
     100                                        event.stopImmediatePropagation(); 
     101                                } 
     102                        }); 
     103 
     104                this.element 
    99105                        .bind( "focus.button", function() { 
    100106                                // no need to check disabled, focus won't be triggered anyway 
    101                                 $( this ).addClass( focusClass ); 
     107                                self.buttonElement.addClass( focusClass ); 
    102108                        }) 
    103109                        .bind( "blur.button", function() { 
    104                                 $( this ).removeClass( focusClass ); 
     110                                self.buttonElement.removeClass( focusClass ); 
    105111                        }); 
    106112 
    107113                if ( toggleButton ) { 
    108114                        this.element.bind( "change.button", function() { 
     115                                if ( clickDragged ) { 
     116                                        return; 
     117                                } 
    109118                                self.refresh(); 
     119                        }); 
     120                        // if mouse moves between mousedown and mouseup (drag) set clickDragged flag 
     121                        // prevents issue where button state changes but checkbox/radio checked state 
     122                        // does not in Firefox (see ticket #6970) 
     123                        this.buttonElement 
     124                                .bind( "mousedown.button", function( event ) { 
     125                                        if ( options.disabled ) { 
     126                                                return; 
     127                                        } 
     128                                        clickDragged = false; 
     129                                        startXPos = event.pageX; 
     130                                        startYPos = event.pageY; 
     131                                }) 
     132                                .bind( "mouseup.button", function( event ) { 
     133                                        if ( options.disabled ) { 
     134                                                return; 
     135                                        } 
     136                                        if ( startXPos !== event.pageX || startYPos !== event.pageY ) { 
     137                                                clickDragged = true; 
     138                                        } 
    110139                        }); 
    111140                } 
     
    113142                if ( this.type === "checkbox" ) { 
    114143                        this.buttonElement.bind( "click.button", function() { 
    115                                 if ( options.disabled ) { 
     144                                if ( options.disabled || clickDragged ) { 
    116145                                        return false; 
    117146                                } 
     
    121150                } else if ( this.type === "radio" ) { 
    122151                        this.buttonElement.bind( "click.button", function() { 
    123                                 if ( options.disabled ) { 
     152                                if ( options.disabled || clickDragged ) { 
    124153                                        return false; 
    125154                                } 
    126155                                $( this ).addClass( "ui-state-active" ); 
    127                                 self.buttonElement.attr( "aria-pressed", true ); 
     156                                self.buttonElement.attr( "aria-pressed", "true" ); 
    128157 
    129158                                var radio = self.element[ 0 ]; 
     
    134163                                        }) 
    135164                                        .removeClass( "ui-state-active" ) 
    136                                         .attr( "aria-pressed", false ); 
     165                                        .attr( "aria-pressed", "false" ); 
    137166                        }); 
    138167                } else { 
     
    180209                // be overridden by individual plugins 
    181210                this._setOption( "disabled", options.disabled ); 
     211                this._resetButton(); 
    182212        }, 
    183213 
    184214        _determineButtonType: function() { 
    185                  
     215 
    186216                if ( this.element.is(":checkbox") ) { 
    187217                        this.type = "checkbox"; 
     218                } else if ( this.element.is(":radio") ) { 
     219                        this.type = "radio"; 
     220                } else if ( this.element.is("input") ) { 
     221                        this.type = "input"; 
    188222                } else { 
    189                         if ( this.element.is(":radio") ) { 
    190                                 this.type = "radio"; 
    191                         } else { 
    192                                 if ( this.element.is("input") ) { 
    193                                         this.type = "input"; 
    194                                 } else { 
    195                                         this.type = "button"; 
    196                                 } 
    197                         } 
    198                 } 
    199                  
     223                        this.type = "button"; 
     224                } 
     225 
    200226                if ( this.type === "checkbox" || this.type === "radio" ) { 
    201227                        // we don't search against the document in case the element 
    202228                        // is disconnected from the DOM 
    203                         this.buttonElement = this.element.parents().last() 
    204                                 .find( "label[for=" + this.element.attr("id") + "]" ); 
     229                        var ancestor = this.element.parents().filter(":last"), 
     230                                labelSelector = "label[for='" + this.element.attr("id") + "']"; 
     231                        this.buttonElement = ancestor.find( labelSelector ); 
     232                        if ( !this.buttonElement.length ) { 
     233                                ancestor = ancestor.length ? ancestor.siblings() : this.element.siblings(); 
     234                                this.buttonElement = ancestor.filter( labelSelector ); 
     235                                if ( !this.buttonElement.length ) { 
     236                                        this.buttonElement = ancestor.find( labelSelector ); 
     237                                } 
     238                        } 
    205239                        this.element.addClass( "ui-helper-hidden-accessible" ); 
    206240 
     
    239273                if ( key === "disabled" ) { 
    240274                        if ( value ) { 
    241                                 this.element.attr( "disabled", true ); 
     275                                this.element.propAttr( "disabled", true ); 
    242276                        } else { 
    243                                 this.element.removeAttr( "disabled" ); 
    244                         } 
     277                                this.element.propAttr( "disabled", false ); 
     278                        } 
     279                        return; 
    245280                } 
    246281                this._resetButton(); 
     
    257292                                        $( this ).button( "widget" ) 
    258293                                                .addClass( "ui-state-active" ) 
    259                                                 .attr( "aria-pressed", true ); 
     294                                                .attr( "aria-pressed", "true" ); 
    260295                                } else { 
    261296                                        $( this ).button( "widget" ) 
    262297                                                .removeClass( "ui-state-active" ) 
    263                                                 .attr( "aria-pressed", false ); 
     298                                                .attr( "aria-pressed", "false" ); 
    264299                                } 
    265300                        }); 
     
    268303                                this.buttonElement 
    269304                                        .addClass( "ui-state-active" ) 
    270                                         .attr( "aria-pressed", true ); 
     305                                        .attr( "aria-pressed", "true" ); 
    271306                        } else { 
    272307                                this.buttonElement 
    273308                                        .removeClass( "ui-state-active" ) 
    274                                         .attr( "aria-pressed", false ); 
     309                                        .attr( "aria-pressed", "false" ); 
    275310                        } 
    276311                } 
     
    295330 
    296331                if ( icons.primary || icons.secondary ) { 
    297                         buttonClasses.push( "ui-button-text-icon" + ( multipleIcons ? "s" : ( icons.primary ? "-primary" : "-secondary" ) ) ); 
     332                        if ( this.options.text ) { 
     333                                buttonClasses.push( "ui-button-text-icon" + ( multipleIcons ? "s" : ( icons.primary ? "-primary" : "-secondary" ) ) ); 
     334                        } 
    298335 
    299336                        if ( icons.primary ) { 
     
    307344                        if ( !this.options.text ) { 
    308345                                buttonClasses.push( multipleIcons ? "ui-button-icons-only" : "ui-button-icon-only" ); 
    309                                 buttonElement.removeClass( "ui-button-text-icons ui-button-text-icon-primary ui-button-text-icon-secondary" ); 
    310346 
    311347                                if ( !this.hasTitle ) { 
     
    342378         
    343379        refresh: function() { 
     380                var ltr = this.element.css( "direction" ) === "ltr"; 
     381                 
    344382                this.buttons = this.element.find( this.options.items ) 
    345383                        .filter( ":ui-button" ) 
     
    354392                                .removeClass( "ui-corner-all ui-corner-left ui-corner-right" ) 
    355393                                .filter( ":first" ) 
    356                                         .addClass( "ui-corner-left" ) 
     394                                        .addClass( ltr ? "ui-corner-left" : "ui-corner-right" ) 
    357395                                .end() 
    358396                                .filter( ":last" ) 
    359                                         .addClass( "ui-corner-right" ) 
     397                                        .addClass( ltr ? "ui-corner-right" : "ui-corner-left" ) 
    360398                                .end() 
    361399                        .end(); 
  • trunk/themes/default/js/ui/jquery.ui.core.js

    r9559 r12525  
    11/*! 
    2  * jQuery UI 1.8.10 
     2 * jQuery UI 1.8.16 
    33 * 
    44 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) 
     
    1919 
    2020$.extend( $.ui, { 
    21         version: "1.8.10", 
     21        version: "1.8.16", 
    2222 
    2323        keyCode: { 
     
    5959// plugins 
    6060$.fn.extend({ 
     61        propAttr: $.fn.prop || $.fn.attr, 
     62 
    6163        _focus: $.fn.focus, 
    6264        focus: function( delay, fn ) { 
     
    175177 
    176178// selectors 
     179function focusable( element, isTabIndexNotNaN ) { 
     180        var nodeName = element.nodeName.toLowerCase(); 
     181        if ( "area" === nodeName ) { 
     182                var map = element.parentNode, 
     183                        mapName = map.name, 
     184                        img; 
     185                if ( !element.href || !mapName || map.nodeName.toLowerCase() !== "map" ) { 
     186                        return false; 
     187                } 
     188                img = $( "img[usemap=#" + mapName + "]" )[0]; 
     189                return !!img && visible( img ); 
     190        } 
     191        return ( /input|select|textarea|button|object/.test( nodeName ) 
     192                ? !element.disabled 
     193                : "a" == nodeName 
     194                        ? element.href || isTabIndexNotNaN 
     195                        : isTabIndexNotNaN) 
     196                // the element and all of its ancestors must be visible 
     197                && visible( element ); 
     198} 
     199 
    177200function visible( element ) { 
    178201        return !$( element ).parents().andSelf().filter(function() { 
     
    188211 
    189212        focusable: function( element ) { 
    190                 var nodeName = element.nodeName.toLowerCase(), 
    191                         tabIndex = $.attr( element, "tabindex" ); 
    192                 if ( "area" === nodeName ) { 
    193                         var map = element.parentNode, 
    194                                 mapName = map.name, 
    195                                 img; 
    196                         if ( !element.href || !mapName || map.nodeName.toLowerCase() !== "map" ) { 
    197                                 return false; 
    198                         } 
    199                         img = $( "img[usemap=#" + mapName + "]" )[0]; 
    200                         return !!img && visible( img ); 
    201                 } 
    202                 return ( /input|select|textarea|button|object/.test( nodeName ) 
    203                         ? !element.disabled 
    204                         : "a" == nodeName 
    205                                 ? element.href || !isNaN( tabIndex ) 
    206                                 : !isNaN( tabIndex )) 
    207                         // the element and all of its ancestors must be visible 
    208                         && visible( element ); 
     213                return focusable( element, !isNaN( $.attr( element, "tabindex" ) ) ); 
    209214        }, 
    210215 
    211216        tabbable: function( element ) { 
    212                 var tabIndex = $.attr( element, "tabindex" ); 
    213                 return ( isNaN( tabIndex ) || tabIndex >= 0 ) && $( element ).is( ":focusable" ); 
     217                var tabIndex = $.attr( element, "tabindex" ), 
     218                        isTabIndexNaN = isNaN( tabIndex ); 
     219                return ( isTabIndexNaN || tabIndex >= 0 ) && focusable( element, !isTabIndexNaN ); 
    214220        } 
    215221}); 
  • trunk/themes/default/js/ui/jquery.ui.datepicker.js

    r9559 r12525  
    11/* 
    2  * jQuery UI Datepicker 1.8.10 
     2 * jQuery UI Datepicker 1.8.16 
    33 * 
    44 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) 
     
    1313(function( $, undefined ) { 
    1414 
    15 $.extend($.ui, { datepicker: { version: "1.8.10" } }); 
     15$.extend($.ui, { datepicker: { version: "1.8.16" } }); 
    1616 
    1717var PROP_NAME = 'datepicker'; 
    1818var dpuuid = new Date().getTime(); 
     19var instActive; 
    1920 
    2021/* Date picker manager. 
     
    105106                constrainInput: true, // The input is constrained by the current date format 
    106107                showButtonPanel: false, // True to show button panel, false to not show it 
    107                 autoSize: false // True to size the input for the date format, false to leave as is 
     108                autoSize: false, // True to size the input for the date format, false to leave as is 
     109                disabled: false // The initial disabled state 
    108110        }; 
    109111        $.extend(this._defaults, this.regional['']); 
    110         this.dpDiv = $('<div id="' + this._mainDivId + '" class="ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>'); 
     112        this.dpDiv = bindHover($('<div id="' + this._mainDivId + '" class="ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>')); 
    111113} 
    112114 
     
    114116        /* Class name added to elements to indicate already configured with a date picker. */ 
    115117        markerClassName: 'hasDatepicker', 
     118         
     119        //Keep track of the maximum number of rows displayed (see #7043) 
     120        maxRows: 4, 
    116121 
    117122        /* Debug logging (if enabled). */ 
     
    174179                        inline: inline, // is datepicker inline or not 
    175180                        dpDiv: (!inline ? this.dpDiv : // presentation div 
    176                         $('<div class="' + this._inlineClass + ' ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>'))}; 
     181                        bindHover($('<div class="' + this._inlineClass + ' ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>')))}; 
    177182        }, 
    178183 
     
    194199                this._autoSize(inst); 
    195200                $.data(target, PROP_NAME, inst); 
     201                //If disabled option is true, disable the datepicker once it has been attached to the input (see ticket #5665) 
     202                if( inst.settings.disabled ) { 
     203                        this._disableDatepicker( target ); 
     204                } 
    196205        }, 
    197206 
     
    273282                this._updateDatepicker(inst); 
    274283                this._updateAlternate(inst); 
    275                 inst.dpDiv.show(); 
     284                //If disabled option is true, disable the datepicker before showing it (see ticket #5665) 
     285                if( inst.settings.disabled ) { 
     286                        this._disableDatepicker( target ); 
     287                } 
     288                // Set display:block in place of inst.dpDiv.show() which won't work on disconnected elements 
     289                // http://bugs.jqueryui.com/ticket/7552 - A Datepicker created on a detached div has zero height 
     290                inst.dpDiv.css( "display", "block" ); 
    276291        }, 
    277292 
     
    364379                        var inline = $target.children('.' + this._inlineClass); 
    365380                        inline.children().removeClass('ui-state-disabled'); 
     381                        inline.find("select.ui-datepicker-month, select.ui-datepicker-year"). 
     382                                removeAttr("disabled"); 
    366383                } 
    367384                this._disabledInputs = $.map(this._disabledInputs, 
     
    387404                        var inline = $target.children('.' + this._inlineClass); 
    388405                        inline.children().addClass('ui-state-disabled'); 
     406                        inline.find("select.ui-datepicker-month, select.ui-datepicker-year"). 
     407                                attr("disabled", "disabled"); 
    389408                } 
    390409                this._disabledInputs = $.map(this._disabledInputs, 
     
    445464                        } 
    446465                        var date = this._getDateDatepicker(target, true); 
     466                        var minDate = this._getMinMaxDate(inst, 'min'); 
     467                        var maxDate = this._getMinMaxDate(inst, 'max'); 
    447468                        extendRemove(inst.settings, settings); 
     469                        // reformat the old minDate/maxDate values if dateFormat changes and a new minDate/maxDate isn't provided 
     470                        if (minDate !== null && settings['dateFormat'] !== undefined && settings['minDate'] === undefined) 
     471                                inst.settings.minDate = this._formatDate(inst, minDate); 
     472                        if (maxDate !== null && settings['dateFormat'] !== undefined && settings['maxDate'] === undefined) 
     473                                inst.settings.maxDate = this._formatDate(inst, maxDate); 
    448474                        this._attachments($(target), inst); 
    449475                        this._autoSize(inst); 
    450                         this._setDateDatepicker(target, date); 
     476                        this._setDate(inst, date); 
     477                        this._updateAlternate(inst); 
    451478                        this._updateDatepicker(inst); 
    452479                } 
     
    505532                                                if (sel[0]) 
    506533                                                        $.datepicker._selectDay(event.target, inst.selectedMonth, inst.selectedYear, sel[0]); 
     534                                                        var onSelect = $.datepicker._get(inst, 'onSelect'); 
     535                                                        if (onSelect) { 
     536                                                                var dateStr = $.datepicker._formatDate(inst); 
     537 
     538                                                                // trigger custom callback 
     539                                                                onSelect.apply((inst.input ? inst.input[0] : null), [dateStr, inst]); 
     540                                                        } 
    507541                                                else 
    508542                                                        $.datepicker._hideDatepicker(); 
     
    592626 
    593627        /* Pop-up the date picker for a given input field. 
     628       If false returned from beforeShow event handler do not show.  
    594629           @param  input  element - the input field attached to the date picker or 
    595630                          event - if triggered by focus */ 
     
    602637                var inst = $.datepicker._getInst(input); 
    603638                if ($.datepicker._curInst && $.datepicker._curInst != inst) { 
     639                        if ( $.datepicker._datepickerShowing ) { 
     640                                $.datepicker._triggerOnClose($.datepicker._curInst); 
     641                        } 
    604642                        $.datepicker._curInst.dpDiv.stop(true, true); 
    605643                } 
    606644                var beforeShow = $.datepicker._get(inst, 'beforeShow'); 
    607                 extendRemove(inst.settings, (beforeShow ? beforeShow.apply(input, [input, inst]) : {})); 
     645                var beforeShowSettings = beforeShow ? beforeShow.apply(input, [input, inst]) : {}; 
     646                if(beforeShowSettings === false){ 
     647            //false 
     648                        return; 
     649                } 
     650                extendRemove(inst.settings, beforeShowSettings); 
    608651                inst.lastVal = null; 
    609652                $.datepicker._lastInput = input; 
     
    641684                        var duration = $.datepicker._get(inst, 'duration'); 
    642685                        var postProcess = function() { 
    643                                 $.datepicker._datepickerShowing = true; 
    644686                                var cover = inst.dpDiv.find('iframe.ui-datepicker-cover'); // IE6- only 
    645687                                if( !! cover.length ){ 
     
    650692                        }; 
    651693                        inst.dpDiv.zIndex($(input).zIndex()+1); 
     694                        $.datepicker._datepickerShowing = true; 
    652695                        if ($.effects && $.effects[showAnim]) 
    653696                                inst.dpDiv.show(showAnim, $.datepicker._get(inst, 'showOptions'), duration, postProcess); 
     
    665708        _updateDatepicker: function(inst) { 
    666709                var self = this; 
     710                self.maxRows = 4; //Reset the max number of rows being displayed (see #7043) 
    667711                var borders = $.datepicker._getBorders(inst.dpDiv); 
     712                instActive = inst; // for delegate hover events 
    668713                inst.dpDiv.empty().append(this._generateHTML(inst)); 
    669714                var cover = inst.dpDiv.find('iframe.ui-datepicker-cover'); // IE6- only 
     
    671716                        cover.css({left: -borders[0], top: -borders[1], width: inst.dpDiv.outerWidth(), height: inst.dpDiv.outerHeight()}) 
    672717                } 
    673                 inst.dpDiv.find('button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a') 
    674                                 .bind('mouseout', function(){ 
    675                                         $(this).removeClass('ui-state-hover'); 
    676                                         if(this.className.indexOf('ui-datepicker-prev') != -1) $(this).removeClass('ui-datepicker-prev-hover'); 
    677                                         if(this.className.indexOf('ui-datepicker-next') != -1) $(this).removeClass('ui-datepicker-next-hover'); 
    678                                 }) 
    679                                 .bind('mouseover', function(){ 
    680                                         if (!self._isDisabledDatepicker( inst.inline ? inst.dpDiv.parent()[0] : inst.input[0])) { 
    681                                                 $(this).parents('.ui-datepicker-calendar').find('a').removeClass('ui-state-hover'); 
    682                                                 $(this).addClass('ui-state-hover'); 
    683                                                 if(this.className.indexOf('ui-datepicker-prev') != -1) $(this).addClass('ui-datepicker-prev-hover'); 
    684                                                 if(this.className.indexOf('ui-datepicker-next') != -1) $(this).addClass('ui-datepicker-next-hover'); 
    685                                         } 
    686                                 }) 
    687                         .end() 
    688                         .find('.' + this._dayOverClass + ' a') 
    689                                 .trigger('mouseover') 
    690                         .end(); 
     718                inst.dpDiv.find('.' + this._dayOverClass + ' a').mouseover(); 
    691719                var numMonths = this._getNumberOfMonths(inst); 
    692720                var cols = numMonths[1]; 
    693721                var width = 17; 
     722                inst.dpDiv.removeClass('ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4').width(''); 
    694723                if (cols > 1) 
    695724                        inst.dpDiv.addClass('ui-datepicker-multi-' + cols).css('width', (width * cols) + 'em'); 
    696                 else 
    697                         inst.dpDiv.removeClass('ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4').width(''); 
    698725                inst.dpDiv[(numMonths[0] != 1 || numMonths[1] != 1 ? 'add' : 'remove') + 
    699726                        'Class']('ui-datepicker-multi'); 
     
    710737                        setTimeout(function(){ 
    711738                                //assure that inst.yearshtml didn't change. 
    712                                 if( origyearshtml === inst.yearshtml ){ 
     739                                if( origyearshtml === inst.yearshtml && inst.yearshtml ){ 
    713740                                        inst.dpDiv.find('select.ui-datepicker-year:first').replaceWith(inst.yearshtml); 
    714741                                } 
     
    760787        var position = $(obj).offset(); 
    761788            return [position.left, position.top]; 
     789        }, 
     790 
     791        /* Trigger custom callback of onClose. */ 
     792        _triggerOnClose: function(inst) { 
     793                var onClose = this._get(inst, 'onClose'); 
     794                if (onClose) 
     795                        onClose.apply((inst.input ? inst.input[0] : null), 
     796                                                  [(inst.input ? inst.input.val() : ''), inst]); 
    762797        }, 
    763798 
     
    782817                        if (!showAnim) 
    783818                                postProcess(); 
    784                         var onClose = this._get(inst, 'onClose'); 
    785                         if (onClose) 
    786                                 onClose.apply((inst.input ? inst.input[0] : null), 
    787                                         [(inst.input ? inst.input.val() : ''), inst]);  // trigger custom callback 
     819                        $.datepicker._triggerOnClose(inst); 
    788820                        this._datepickerShowing = false; 
    789821                        this._lastInput = null; 
     
    853885                var target = $(id); 
    854886                var inst = this._getInst(target[0]); 
    855                 inst._selectingMonthYear = false; 
    856887                inst['selected' + (period == 'M' ? 'Month' : 'Year')] = 
    857888                inst['draw' + (period == 'M' ? 'Month' : 'Year')] = 
     
    859890                this._notifyChange(inst); 
    860891                this._adjustDate(target); 
    861         }, 
    862  
    863         /* Restore input focus after not changing month/year. */ 
    864         _clickMonthYear: function(id) { 
    865                 var target = $(id); 
    866                 var inst = this._getInst(target[0]); 
    867                 if (inst.input && inst._selectingMonthYear) { 
    868                         setTimeout(function() { 
    869                                 inst.input.focus(); 
    870                         }, 0); 
    871                 } 
    872                 inst._selectingMonthYear = !inst._selectingMonthYear; 
    873892        }, 
    874893 
     
    10011020                // Extract a name from the string value and convert to an index 
    10021021                var getName = function(match, shortNames, longNames) { 
    1003                         var names = (lookAhead(match) ? longNames : shortNames); 
    1004                         for (var i = 0; i < names.length; i++) { 
    1005                                 if (value.substr(iValue, names[i].length).toLowerCase() == names[i].toLowerCase()) { 
    1006                                         iValue += names[i].length; 
    1007                                         return i + 1; 
     1022                        var names = $.map(lookAhead(match) ? longNames : shortNames, function (v, k) { 
     1023                                return [ [k, v] ]; 
     1024                        }).sort(function (a, b) { 
     1025                                return -(a[1].length - b[1].length); 
     1026                        }); 
     1027                        var index = -1; 
     1028                        $.each(names, function (i, pair) { 
     1029                                var name = pair[1]; 
     1030                                if (value.substr(iValue, name.length).toLowerCase() == name.toLowerCase()) { 
     1031                                        index = pair[0]; 
     1032                                        iValue += name.length; 
     1033                                        return false; 
    10081034                                } 
    1009                         } 
    1010                         throw 'Unknown name at position ' + iValue; 
     1035                        }); 
     1036                        if (index != -1) 
     1037                                return index + 1; 
     1038                        else 
     1039                                throw 'Unknown name at position ' + iValue; 
    10111040                }; 
    10121041                // Confirm that a literal character matches the string value 
     
    10651094                                } 
    10661095                } 
     1096                if (iValue < value.length){ 
     1097                        throw "Extra/unparsed characters found in date: " + value.substring(iValue); 
     1098                } 
    10671099                if (year == -1) 
    10681100                        year = new Date().getFullYear(); 
     
    10831115                var date = this._daylightSavingAdjust(new Date(year, month - 1, day)); 
    10841116                if (date.getFullYear() != year || date.getMonth() + 1 != month || date.getDate() != day) 
    1085                         throw 'Invalid date'; // E.g. 31/02/* 
     1117                        throw 'Invalid date'; // E.g. 31/02/00 
    10861118                return date; 
    10871119        }, 
     
    11761208                                                case 'o': 
    11771209                                                        output += formatNumber('o', 
    1178                                                                 (date.getTime() - new Date(date.getFullYear(), 0, 0).getTime()) / 86400000, 3); 
     1210                                                                Math.round((new Date(date.getFullYear(), date.getMonth(), date.getDate()).getTime() - new Date(date.getFullYear(), 0, 0).getTime()) / 86400000), 3); 
    11791211                                                        break; 
    11801212                                                case 'm': 
     
    14511483                for (var row = 0; row < numMonths[0]; row++) { 
    14521484                        var group = ''; 
     1485                        this.maxRows = 4; 
    14531486                        for (var col = 0; col < numMonths[1]; col++) { 
    14541487                                var selectedDate = this._daylightSavingAdjust(new Date(drawYear, drawMonth, inst.selectedDay)); 
     
    14851518                                        inst.selectedDay = Math.min(inst.selectedDay, daysInMonth); 
    14861519                                var leadDays = (this._getFirstDayOfMonth(drawYear, drawMonth) - firstDay + 7) % 7; 
    1487                                 var numRows = (isMultiMonth ? 6 : Math.ceil((leadDays + daysInMonth) / 7)); // calculate the number of rows to generate 
     1520                                var curRows = Math.ceil((leadDays + daysInMonth) / 7); // calculate the number of rows to generate 
     1521                                var numRows = (isMultiMonth ? this.maxRows > curRows ? this.maxRows : curRows : curRows); //If multiple months, use the higher number of rows (see #7043) 
     1522                                this.maxRows = numRows; 
    14881523                                var printDate = this._daylightSavingAdjust(new Date(drawYear, drawMonth, 1 - leadDays)); 
    14891524                                for (var dRow = 0; dRow < numRows; dRow++) { // create date picker rows 
     
    15551590                        monthHtml += '<select class="ui-datepicker-month" ' + 
    15561591                                'onchange="DP_jQuery_' + dpuuid + '.datepicker._selectMonthYear(\'#' + inst.id + '\', this, \'M\');" ' + 
    1557                                 'onclick="DP_jQuery_' + dpuuid + '.datepicker._clickMonthYear(\'#' + inst.id + '\');"' + 
    15581592                                '>'; 
    15591593                        for (var month = 0; month < 12; month++) { 
     
    15691603                        html += monthHtml + (secondary || !(changeMonth && changeYear) ? '&#xa0;' : ''); 
    15701604                // year selection 
    1571                 inst.yearshtml = ''; 
    1572                 if (secondary || !changeYear) 
    1573                         html += '<span class="ui-datepicker-year">' + drawYear + '</span>'; 
    1574                 else { 
    1575                         // determine range of years to display 
    1576                         var years = this._get(inst, 'yearRange').split(':'); 
    1577                         var thisYear = new Date().getFullYear(); 
    1578                         var determineYear = function(value) { 
    1579                                 var year = (value.match(/c[+-].*/) ? drawYear + parseInt(value.substring(1), 10) : 
    1580                                         (value.match(/[+-].*/) ? thisYear + parseInt(value, 10) : 
    1581                                         parseInt(value, 10))); 
    1582                                 return (isNaN(year) ? thisYear : year); 
    1583                         }; 
    1584                         var year = determineYear(years[0]); 
    1585                         var endYear = Math.max(year, determineYear(years[1] || '')); 
    1586                         year = (minDate ? Math.max(year, minDate.getFullYear()) : year); 
    1587                         endYear = (maxDate ? Math.min(endYear, maxDate.getFullYear()) : endYear); 
    1588                         inst.yearshtml += '<select class="ui-datepicker-year" ' + 
    1589                                 'onchange="DP_jQuery_' + dpuuid + '.datepicker._selectMonthYear(\'#' + inst.id + '\', this, \'Y\');" ' + 
    1590                                 'onclick="DP_jQuery_' + dpuuid + '.datepicker._clickMonthYear(\'#' + inst.id + '\');"' + 
    1591                                 '>'; 
    1592                         for (; year <= endYear; year++) { 
    1593                                 inst.yearshtml += '<option value="' + year + '"' + 
    1594                                         (year == drawYear ? ' selected="selected"' : '') + 
    1595                                         '>' + year + '</option>'; 
    1596                         } 
    1597                         inst.yearshtml += '</select>'; 
    1598                         //when showing there is no need for later update 
    1599                         if( ! $.browser.mozilla ){ 
     1605                if ( !inst.yearshtml ) { 
     1606                        inst.yearshtml = ''; 
     1607                        if (secondary || !changeYear) 
     1608                                html += '<span class="ui-datepicker-year">' + drawYear + '</span>'; 
     1609                        else { 
     1610                                // determine range of years to display 
     1611                                var years = this._get(inst, 'yearRange').split(':'); 
     1612                                var thisYear = new Date().getFullYear(); 
     1613                                var determineYear = function(value) { 
     1614                                        var year = (value.match(/c[+-].*/) ? drawYear + parseInt(value.substring(1), 10) : 
     1615                                                (value.match(/[+-].*/) ? thisYear + parseInt(value, 10) : 
     1616                                                parseInt(value, 10))); 
     1617                                        return (isNaN(year) ? thisYear : year); 
     1618                                }; 
     1619                                var year = determineYear(years[0]); 
     1620                                var endYear = Math.max(year, determineYear(years[1] || '')); 
     1621                                year = (minDate ? Math.max(year, minDate.getFullYear()) : year); 
     1622                                endYear = (maxDate ? Math.min(endYear, maxDate.getFullYear()) : endYear); 
     1623                                inst.yearshtml += '<select class="ui-datepicker-year" ' + 
     1624                                        'onchange="DP_jQuery_' + dpuuid + '.datepicker._selectMonthYear(\'#' + inst.id + '\', this, \'Y\');" ' + 
     1625                                        '>'; 
     1626                                for (; year <= endYear; year++) { 
     1627                                        inst.yearshtml += '<option value="' + year + '"' + 
     1628                                                (year == drawYear ? ' selected="selected"' : '') + 
     1629                                                '>' + year + '</option>'; 
     1630                                } 
     1631                                inst.yearshtml += '</select>'; 
     1632                                 
    16001633                                html += inst.yearshtml; 
    16011634                                inst.yearshtml = null; 
    1602                         } else { 
    1603                                 // will be replaced later with inst.yearshtml 
    1604                                 html += '<select class="ui-datepicker-year"><option value="' + drawYear + '" selected="selected">' + drawYear + '</option></select>'; 
    16051635                        } 
    16061636                } 
     
    17061736        } 
    17071737}); 
     1738 
     1739/* 
     1740 * Bind hover events for datepicker elements. 
     1741 * Done via delegate so the binding only occurs once in the lifetime of the parent div. 
     1742 * Global instActive, set by _updateDatepicker allows the handlers to find their way back to the active picker. 
     1743 */  
     1744function bindHover(dpDiv) { 
     1745        var selector = 'button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a'; 
     1746        return dpDiv.bind('mouseout', function(event) { 
     1747                        var elem = $( event.target ).closest( selector ); 
     1748                        if ( !elem.length ) { 
     1749                                return; 
     1750                        } 
     1751                        elem.removeClass( "ui-state-hover ui-datepicker-prev-hover ui-datepicker-next-hover" ); 
     1752                }) 
     1753                .bind('mouseover', function(event) { 
     1754                        var elem = $( event.target ).closest( selector ); 
     1755                        if ($.datepicker._isDisabledDatepicker( instActive.inline ? dpDiv.parent()[0] : instActive.input[0]) || 
     1756                                        !elem.length ) { 
     1757                                return; 
     1758                        } 
     1759                        elem.parents('.ui-datepicker-calendar').find('a').removeClass('ui-state-hover'); 
     1760                        elem.addClass('ui-state-hover'); 
     1761                        if (elem.hasClass('ui-datepicker-prev')) elem.addClass('ui-datepicker-prev-hover'); 
     1762                        if (elem.hasClass('ui-datepicker-next')) elem.addClass('ui-datepicker-next-hover'); 
     1763                }); 
     1764} 
    17081765 
    17091766/* jQuery extend now ignores nulls! */ 
     
    17581815$.datepicker.initialized = false; 
    17591816$.datepicker.uuid = new Date().getTime(); 
    1760 $.datepicker.version = "1.8.10"; 
     1817$.datepicker.version = "1.8.16"; 
    17611818 
    17621819// Workaround for #4055 
  • trunk/themes/default/js/ui/jquery.ui.dialog.js

    r9559 r12525  
    11/* 
    2  * jQuery UI Dialog 1.8.10 
     2 * jQuery UI Dialog 1.8.16 
    33 * 
    44 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) 
     
    3838                minHeight: true, 
    3939                minWidth: true 
     40        }, 
     41        // support for jQuery 1.3.2 - handle common attrFn methods for dialog 
     42        attrFn = $.attrFn || { 
     43                val: true, 
     44                css: true, 
     45                html: true, 
     46                text: true, 
     47                data: true, 
     48                width: true, 
     49                height: true, 
     50                offset: true, 
     51                click: true 
    4052        }; 
    4153 
     
    99111                                // setting outline to 0 prevents a border on focus in Mozilla 
    100112                                .attr('tabIndex', -1).css('outline', 0).keydown(function(event) { 
    101                                         if (options.closeOnEscape && event.keyCode && 
     113                                        if (options.closeOnEscape && !event.isDefaultPrevented() && event.keyCode && 
    102114                                                event.keyCode === $.ui.keyCode.ESCAPE) { 
    103115                                                 
     
    295307                //Save and then restore scroll since Opera 9.5+ resets when parent z-Index is changed. 
    296308                //  http://ui.jquery.com/bugs/ticket/3193 
    297                 saveScroll = { scrollTop: self.element.attr('scrollTop'), scrollLeft: self.element.attr('scrollLeft') }; 
     309                saveScroll = { scrollTop: self.element.scrollTop(), scrollLeft: self.element.scrollLeft() }; 
    298310                $.ui.dialog.maxZ += 1; 
    299311                self.uiDialog.css('z-index', $.ui.dialog.maxZ); 
     
    377389                                        props; 
    378390                                var button = $('<button type="button"></button>') 
    379                                         .attr( props, true ) 
    380                                         .unbind('click') 
    381391                                        .click(function() { 
    382392                                                props.click.apply(self.element[0], arguments); 
    383393                                        }) 
    384394                                        .appendTo(uiButtonSet); 
     395                                // can't use .attr( props, true ) with jQuery 1.3.2. 
     396                                $.each( props, function( key, value ) { 
     397                                        if ( key === "click" ) { 
     398                                                return; 
     399                                        } 
     400                                        if ( key in attrFn ) { 
     401                                                button[ key ]( value ); 
     402                                        } else { 
     403                                                button.attr( key, value ); 
     404                                        } 
     405                                }); 
    385406                                if ($.fn.button) { 
    386407                                        button.button(); 
     
    682703 
    683704$.extend($.ui.dialog, { 
    684         version: "1.8.10", 
     705        version: "1.8.16", 
    685706 
    686707        uuid: 0, 
     
    728749                        // allow closing by pressing the escape key 
    729750                        $(document).bind('keydown.dialog-overlay', function(event) { 
    730                                 if (dialog.options.closeOnEscape && event.keyCode && 
     751                                if (dialog.options.closeOnEscape && !event.isDefaultPrevented() && event.keyCode && 
    731752                                        event.keyCode === $.ui.keyCode.ESCAPE) { 
    732753                                         
     
    803824                var scrollWidth, 
    804825                        offsetWidth; 
    805                 // handle IE 6 
    806                 if ($.browser.msie && $.browser.version < 7) { 
     826                // handle IE 
     827                if ( $.browser.msie ) { 
    807828                        scrollWidth = Math.max( 
    808829                                document.documentElement.scrollWidth, 
  • trunk/themes/default/js/ui/jquery.ui.draggable.js

    r9559 r12525  
    11/* 
    2  * jQuery UI Draggable 1.8.10 
     2 * jQuery UI Draggable 1.8.16 
    33 * 
    44 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) 
     
    8080                if (!this.handle) 
    8181                        return false; 
     82                 
     83                if ( o.iframeFix ) { 
     84                        $(o.iframeFix === true ? "iframe" : o.iframeFix).each(function() { 
     85                                $('<div class="ui-draggable-iframeFix" style="background: #fff;"></div>') 
     86                                .css({ 
     87                                        width: this.offsetWidth+"px", height: this.offsetHeight+"px", 
     88                                        position: "absolute", opacity: "0.001", zIndex: 1000 
     89                                }) 
     90                                .css($(this).offset()) 
     91                                .appendTo("body"); 
     92                        }); 
     93                } 
    8294 
    8395                return true; 
     
    154166                this.helper.addClass("ui-draggable-dragging"); 
    155167                this._mouseDrag(event, true); //Execute the drag once - this causes the helper not to be visible before getting its correct position 
     168                 
     169                //If the ddmanager is used for droppables, inform the manager that dragging has started (see #5003) 
     170                if ( $.ui.ddmanager ) $.ui.ddmanager.dragStart(this, event); 
     171                 
    156172                return true; 
    157173        }, 
     
    213229        }, 
    214230         
     231        _mouseUp: function(event) { 
     232                if (this.options.iframeFix === true) { 
     233                        $("div.ui-draggable-iframeFix").each(function() {  
     234                                this.parentNode.removeChild(this);  
     235                        }); //Remove frame helpers 
     236                } 
     237                 
     238                //If the ddmanager is used for droppables, inform the manager that dragging has stopped (see #5003) 
     239                if( $.ui.ddmanager ) $.ui.ddmanager.dragStop(this, event); 
     240                 
     241                return $.ui.mouse.prototype._mouseUp.call(this, event); 
     242        }, 
     243         
    215244        cancel: function() { 
    216245                 
     
    242271 
    243272                var o = this.options; 
    244                 var helper = $.isFunction(o.helper) ? $(o.helper.apply(this.element[0], [event])) : (o.helper == 'clone' ? this.element.clone() : this.element); 
     273                var helper = $.isFunction(o.helper) ? $(o.helper.apply(this.element[0], [event])) : (o.helper == 'clone' ? this.element.clone().removeAttr('id') : this.element); 
    245274 
    246275                if(!helper.parents('body').length) 
     
    318347                this.margins = { 
    319348                        left: (parseInt(this.element.css("marginLeft"),10) || 0), 
    320                         top: (parseInt(this.element.css("marginTop"),10) || 0) 
     349                        top: (parseInt(this.element.css("marginTop"),10) || 0), 
     350                        right: (parseInt(this.element.css("marginRight"),10) || 0), 
     351                        bottom: (parseInt(this.element.css("marginBottom"),10) || 0) 
    321352                }; 
    322353        }, 
     
    334365                if(o.containment == 'parent') o.containment = this.helper[0].parentNode; 
    335366                if(o.containment == 'document' || o.containment == 'window') this.containment = [ 
    336                         (o.containment == 'document' ? 0 : $(window).scrollLeft()) - this.offset.relative.left - this.offset.parent.left, 
    337                         (o.containment == 'document' ? 0 : $(window).scrollTop()) - this.offset.relative.top - this.offset.parent.top, 
     367                        o.containment == 'document' ? 0 : $(window).scrollLeft() - this.offset.relative.left - this.offset.parent.left, 
     368                        o.containment == 'document' ? 0 : $(window).scrollTop() - this.offset.relative.top - this.offset.parent.top, 
    338369                        (o.containment == 'document' ? 0 : $(window).scrollLeft()) + $(o.containment == 'document' ? document : window).width() - this.helperProportions.width - this.margins.left, 
    339370                        (o.containment == 'document' ? 0 : $(window).scrollTop()) + ($(o.containment == 'document' ? document : window).height() || document.body.parentNode.scrollHeight) - this.helperProportions.height - this.margins.top 
     
    341372 
    342373                if(!(/^(document|window|parent)$/).test(o.containment) && o.containment.constructor != Array) { 
    343                         var ce = $(o.containment)[0]; if(!ce) return; 
    344                         var co = $(o.containment).offset(); 
     374                        var c = $(o.containment); 
     375                        var ce = c[0]; if(!ce) return; 
     376                        var co = c.offset(); 
    345377                        var over = ($(ce).css("overflow") != 'hidden'); 
    346378 
    347379                        this.containment = [ 
    348                                 co.left + (parseInt($(ce).css("borderLeftWidth"),10) || 0) + (parseInt($(ce).css("paddingLeft"),10) || 0) - this.margins.left, 
    349                                 co.top + (parseInt($(ce).css("borderTopWidth"),10) || 0) + (parseInt($(ce).css("paddingTop"),10) || 0) - this.margins.top, 
    350                                 co.left+(over ? Math.max(ce.scrollWidth,ce.offsetWidth) : ce.offsetWidth) - (parseInt($(ce).css("borderLeftWidth"),10) || 0) - (parseInt($(ce).css("paddingRight"),10) || 0) - this.helperProportions.width - this.margins.left, 
    351                                 co.top+(over ? Math.max(ce.scrollHeight,ce.offsetHeight) : ce.offsetHeight) - (parseInt($(ce).css("borderTopWidth"),10) || 0) - (parseInt($(ce).css("paddingBottom"),10) || 0) - this.helperProportions.height - this.margins.top 
     380                                (parseInt($(ce).css("borderLeftWidth"),10) || 0) + (parseInt($(ce).css("paddingLeft"),10) || 0), 
     381                                (parseInt($(ce).css("borderTopWidth"),10) || 0) + (parseInt($(ce).css("paddingTop"),10) || 0), 
     382                                (over ? Math.max(ce.scrollWidth,ce.offsetWidth) : ce.offsetWidth) - (parseInt($(ce).css("borderLeftWidth"),10) || 0) - (parseInt($(ce).css("paddingRight"),10) || 0) - this.helperProportions.width - this.margins.left - this.margins.right, 
     383                                (over ? Math.max(ce.scrollHeight,ce.offsetHeight) : ce.offsetHeight) - (parseInt($(ce).css("borderTopWidth"),10) || 0) - (parseInt($(ce).css("paddingBottom"),10) || 0) - this.helperProportions.height - this.margins.top  - this.margins.bottom 
    352384                        ]; 
     385                        this.relative_container = c; 
     386 
    353387                } else if(o.containment.constructor == Array) { 
    354388                        this.containment = o.containment; 
     
    392426 
    393427                if(this.originalPosition) { //If we are not dragging yet, we won't check for options 
    394  
    395                         if(this.containment) { 
    396                                 if(event.pageX - this.offset.click.left < this.containment[0]) pageX = this.containment[0] + this.offset.click.left; 
    397                                 if(event.pageY - this.offset.click.top < this.containment[1]) pageY = this.containment[1] + this.offset.click.top; 
    398                                 if(event.pageX - this.offset.click.left > this.containment[2]) pageX = this.containment[2] + this.offset.click.left; 
    399                                 if(event.pageY - this.offset.click.top > this.containment[3]) pageY = this.containment[3] + this.offset.click.top; 
     428                         var containment; 
     429                         if(this.containment) { 
     430                                 if (this.relative_container){ 
     431                                     var co = this.relative_container.offset(); 
     432                                     containment = [ this.containment[0] + co.left, 
     433                                                     this.containment[1] + co.top, 
     434                                                     this.containment[2] + co.left, 
     435                                                     this.containment[3] + co.top ]; 
     436                                 } 
     437                                 else { 
     438                                     containment = this.containment; 
     439                                 } 
     440 
     441                                if(event.pageX - this.offset.click.left < containment[0]) pageX = containment[0] + this.offset.click.left; 
     442                                if(event.pageY - this.offset.click.top < containment[1]) pageY = containment[1] + this.offset.click.top; 
     443                                if(event.pageX - this.offset.click.left > containment[2]) pageX = containment[2] + this.offset.click.left; 
     444                                if(event.pageY - this.offset.click.top > containment[3]) pageY = containment[3] + this.offset.click.top; 
    400445                        } 
    401446 
    402447                        if(o.grid) { 
    403                                 var top = this.originalPageY + Math.round((pageY - this.originalPageY) / o.grid[1]) * o.grid[1]; 
    404                                 pageY = this.containment ? (!(top - this.offset.click.top < this.containment[1] || top - this.offset.click.top > this.containment[3]) ? top : (!(top - this.offset.click.top < this.containment[1]) ? top - o.grid[1] : top + o.grid[1])) : top; 
    405  
    406                                 var left = this.originalPageX + Math.round((pageX - this.originalPageX) / o.grid[0]) * o.grid[0]; 
    407                                 pageX = this.containment ? (!(left - this.offset.click.left < this.containment[0] || left - this.offset.click.left > this.containment[2]) ? left : (!(left - this.offset.click.left < this.containment[0]) ? left - o.grid[0] : left + o.grid[0])) : left; 
     448                                //Check for grid elements set to 0 to prevent divide by 0 error causing invalid argument errors in IE (see ticket #6950) 
     449                                var top = o.grid[1] ? this.originalPageY + Math.round((pageY - this.originalPageY) / o.grid[1]) * o.grid[1] : this.originalPageY; 
     450                                pageY = containment ? (!(top - this.offset.click.top < containment[1] || top - this.offset.click.top > containment[3]) ? top : (!(top - this.offset.click.top < containment[1]) ? top - o.grid[1] : top + o.grid[1])) : top; 
     451 
     452                                var left = o.grid[0] ? this.originalPageX + Math.round((pageX - this.originalPageX) / o.grid[0]) * o.grid[0] : this.originalPageX; 
     453                                pageX = containment ? (!(left - this.offset.click.left < containment[0] || left - this.offset.click.left > containment[2]) ? left : (!(left - this.offset.click.left < containment[0]) ? left - o.grid[0] : left + o.grid[0])) : left; 
    408454                        } 
    409455 
     
    460506 
    461507$.extend($.ui.draggable, { 
    462         version: "1.8.10" 
     508        version: "1.8.16" 
    463509}); 
    464510 
     
    476522                                        shouldRevert: sortable.options.revert 
    477523                                }); 
    478                                 sortable._refreshItems();       //Do a one-time refresh at start to refresh the containerCache 
     524                                sortable.refreshPositions();    // Call the sortable's refreshPositions at drag start to refresh the containerCache since the sortable container cache is used in drag and needs to be up to date (this will ensure it's initialised as well as being kept in step with any changes that might have happened on the page). 
    479525                                sortable._trigger("activate", event, uiSortable); 
    480526                        } 
     
    545591                                        //by cloning the list group item, appending it to the sortable and using it as inst.currentItem 
    546592                                        //We can then fire the start event of the sortable with our passed browser event, and our own helper (so it doesn't create a new one) 
    547                                         this.instance.currentItem = $(self).clone().appendTo(this.instance.element).data("sortable-item", true); 
     593                                        this.instance.currentItem = $(self).clone().removeAttr('id').appendTo(this.instance.element).data("sortable-item", true); 
    548594                                        this.instance.options._helper = this.instance.options.helper; //Store helper option to later restore it 
    549595                                        this.instance.options.helper = function() { return ui.helper[0]; }; 
     
    615661}); 
    616662 
    617 $.ui.plugin.add("draggable", "iframeFix", { 
    618         start: function(event, ui) { 
    619                 var o = $(this).data('draggable').options; 
    620                 $(o.iframeFix === true ? "iframe" : o.iframeFix).each(function() { 
    621                         $('<div class="ui-draggable-iframeFix" style="background: #fff;"></div>') 
    622                         .css({ 
    623                                 width: this.offsetWidth+"px", height: this.offsetHeight+"px", 
    624                                 position: "absolute", opacity: "0.001", zIndex: 1000 
    625                         }) 
    626                         .css($(this).offset()) 
    627                         .appendTo("body"); 
    628                 }); 
    629         }, 
    630         stop: function(event, ui) { 
    631                 $("div.ui-draggable-iframeFix").each(function() { this.parentNode.removeChild(this); }); //Remove frame helpers 
    632         } 
    633 }); 
    634  
    635663$.ui.plugin.add("draggable", "opacity", { 
    636664        start: function(event, ui) { 
  • trunk/themes/default/js/ui/jquery.ui.droppable.js

    r9559 r12525  
    11/* 
    2  * jQuery UI Droppable 1.8.10 
     2 * jQuery UI Droppable 1.8.16 
    33 * 
    44 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) 
     
    148148 
    149149$.extend($.ui.droppable, { 
    150         version: "1.8.10" 
     150        version: "1.8.16" 
    151151}); 
    152152 
     
    213213                        m[i].visible = m[i].element.css("display") != "none"; if(!m[i].visible) continue;                                                                       //If the element is not visible, continue 
    214214 
     215                        if(type == "mousedown") m[i]._activate.call(m[i], event); //Activate the droppable if used directly from draggables 
     216 
    215217                        m[i].offset = m[i].element.offset(); 
    216218                        m[i].proportions = { width: m[i].element[0].offsetWidth, height: m[i].element[0].offsetHeight }; 
    217  
    218                         if(type == "mousedown") m[i]._activate.call(m[i], event); //Activate the droppable if used directly from draggables 
    219219 
    220220                } 
     
    238238                return dropped; 
    239239 
     240        }, 
     241        dragStart: function( draggable, event ) { 
     242                //Listen for scrolling so that if the dragging causes scrolling the position of the droppables can be recalculated (see #5003) 
     243                draggable.element.parents( ":not(body,html)" ).bind( "scroll.droppable", function() { 
     244                        if( !draggable.options.refreshPositions ) $.ui.ddmanager.prepareOffsets( draggable, event ); 
     245                }); 
    240246        }, 
    241247        drag: function(draggable, event) { 
     
    280286                }); 
    281287 
     288        }, 
     289        dragStop: function( draggable, event ) { 
     290                draggable.element.parents( ":not(body,html)" ).unbind( "scroll.droppable" ); 
     291                //Call prepareOffsets one final time since IE does not fire return scroll events when overflow was caused by drag (see #5003) 
     292                if( !draggable.options.refreshPositions ) $.ui.ddmanager.prepareOffsets( draggable, event ); 
    282293        } 
    283294}; 
  • trunk/themes/default/js/ui/jquery.ui.mouse.js

    r9559 r12525  
    11/*! 
    2  * jQuery UI Mouse 1.8.10 
     2 * jQuery UI Mouse 1.8.16 
    33 * 
    44 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) 
     
    1212 */ 
    1313(function( $, undefined ) { 
     14 
     15var mouseHandled = false; 
     16$( document ).mouseup( function( e ) { 
     17        mouseHandled = false; 
     18}); 
    1419 
    1520$.widget("ui.mouse", { 
     
    4550        _mouseDown: function(event) { 
    4651                // don't let more than one widget handle mouseStart 
    47                 // TODO: figure out why we have to use originalEvent 
    48                 event.originalEvent = event.originalEvent || {}; 
    49                 if (event.originalEvent.mouseHandled) { return; } 
     52                if( mouseHandled ) { return }; 
    5053 
    5154                // we may have missed mouseup (out of window) 
     
    5659                var self = this, 
    5760                        btnIsLeft = (event.which == 1), 
    58                         elIsCancel = (typeof this.options.cancel == "string" ? $(event.target).parents().add(event.target).filter(this.options.cancel).length : false); 
     61                        // event.target.nodeName works around a bug in IE 8 with 
     62                        // disabled inputs (#7620) 
     63                        elIsCancel = (typeof this.options.cancel == "string" && event.target.nodeName ? $(event.target).closest(this.options.cancel).length : false); 
    5964                if (!btnIsLeft || elIsCancel || !this._mouseCapture(event)) { 
    6065                        return true; 
     
    7681                } 
    7782 
     83                // Click event may never have fired (Gecko & Opera) 
     84                if (true === $.data(event.target, this.widgetName + '.preventClickEvent')) { 
     85                        $.removeData(event.target, this.widgetName + '.preventClickEvent'); 
     86                } 
     87 
    7888                // these delegates are required to keep context 
    7989                this._mouseMoveDelegate = function(event) { 
     
    8898 
    8999                event.preventDefault(); 
    90                 event.originalEvent.mouseHandled = true; 
     100                 
     101                mouseHandled = true; 
    91102                return true; 
    92103        }, 
  • trunk/themes/default/js/ui/jquery.ui.position.js

    r9559 r12525  
    11/* 
    2  * jQuery UI Position 1.8.10 
     2 * jQuery UI Position 1.8.16 
    33 * 
    44 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) 
  • trunk/themes/default/js/ui/jquery.ui.progressbar.js

    r9559 r12525  
    11/* 
    2  * jQuery UI Progressbar 1.8.10 
     2 * jQuery UI Progressbar 1.8.16 
    33 * 
    44 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) 
     
    9696 
    9797                this.valueDiv 
     98                        .toggle( value > this.min ) 
    9899                        .toggleClass( "ui-corner-right", value === this.options.max ) 
    99100                        .width( percentage.toFixed(0) + "%" ); 
     
    103104 
    104105$.extend( $.ui.progressbar, { 
    105         version: "1.8.10" 
     106        version: "1.8.16" 
    106107}); 
    107108 
  • trunk/themes/default/js/ui/jquery.ui.resizable.js

    r9559 r12525  
    11/* 
    2  * jQuery UI Resizable 1.8.10 
     2 * jQuery UI Resizable 1.8.16 
    33 * 
    44 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) 
     
    177177                                .addClass("ui-resizable-autohide") 
    178178                                .hover(function() { 
     179                                        if (o.disabled) return; 
    179180                                        $(this).removeClass("ui-resizable-autohide"); 
    180181                                        self._handles.show(); 
    181182                                }, 
    182183                                function(){ 
     184                                        if (o.disabled) return; 
    183185                                        if (!self.resizing) { 
    184186                                                $(this).addClass("ui-resizable-autohide"); 
     
    292294                var data = trigger.apply(this, [event, dx, dy]), ie6 = $.browser.msie && $.browser.version < 7, csdif = this.sizeDiff; 
    293295 
     296                // Put this in the mouseDrag handler since the user can start pressing shift while resizing 
     297                this._updateVirtualBoundaries(event.shiftKey); 
    294298                if (this._aspectRatio || event.shiftKey) 
    295299                        data = this._updateRatio(data, event); 
     
    349353 
    350354        }, 
     355 
     356    _updateVirtualBoundaries: function(forceAspectRatio) { 
     357        var o = this.options, pMinWidth, pMaxWidth, pMinHeight, pMaxHeight, b; 
     358 
     359        b = { 
     360            minWidth: isNumber(o.minWidth) ? o.minWidth : 0, 
     361            maxWidth: isNumber(o.maxWidth) ? o.maxWidth : Infinity, 
     362            minHeight: isNumber(o.minHeight) ? o.minHeight : 0, 
     363            maxHeight: isNumber(o.maxHeight) ? o.maxHeight : Infinity 
     364        }; 
     365 
     366        if(this._aspectRatio || forceAspectRatio) { 
     367            // We want to create an enclosing box whose aspect ration is the requested one 
     368            // First, compute the "projected" size for each dimension based on the aspect ratio and other dimension 
     369            pMinWidth = b.minHeight * this.aspectRatio; 
     370            pMinHeight = b.minWidth / this.aspectRatio; 
     371            pMaxWidth = b.maxHeight * this.aspectRatio; 
     372            pMaxHeight = b.maxWidth / this.aspectRatio; 
     373 
     374            if(pMinWidth > b.minWidth) b.minWidth = pMinWidth; 
     375            if(pMinHeight > b.minHeight) b.minHeight = pMinHeight; 
     376            if(pMaxWidth < b.maxWidth) b.maxWidth = pMaxWidth; 
     377            if(pMaxHeight < b.maxHeight) b.maxHeight = pMaxHeight; 
     378        } 
     379        this._vBoundaries = b; 
     380    }, 
    351381 
    352382        _updateCache: function(data) { 
     
    363393                var o = this.options, cpos = this.position, csize = this.size, a = this.axis; 
    364394 
    365                 if (data.height) data.width = (csize.height * this.aspectRatio); 
    366                 else if (data.width) data.height = (csize.width / this.aspectRatio); 
     395                if (isNumber(data.height)) data.width = (data.height * this.aspectRatio); 
     396                else if (isNumber(data.width)) data.height = (data.width / this.aspectRatio); 
    367397 
    368398                if (a == 'sw') { 
     
    380410        _respectSize: function(data, event) { 
    381411 
    382                 var el = this.helper, o = this.options, pRatio = this._aspectRatio || event.shiftKey, a = this.axis, 
     412                var el = this.helper, o = this._vBoundaries, pRatio = this._aspectRatio || event.shiftKey, a = this.axis, 
    383413                                ismaxw = isNumber(data.width) && o.maxWidth && (o.maxWidth < data.width), ismaxh = isNumber(data.height) && o.maxHeight && (o.maxHeight < data.height), 
    384414                                        isminw = isNumber(data.width) && o.minWidth && (o.minWidth > data.width), isminh = isNumber(data.height) && o.minHeight && (o.minHeight > data.height); 
     
    520550 
    521551$.extend($.ui.resizable, { 
    522         version: "1.8.10" 
     552        version: "1.8.16" 
    523553}); 
    524554 
  • trunk/themes/default/js/ui/jquery.ui.selectable.js

    r9559 r12525  
    11/* 
    2  * jQuery UI Selectable 1.8.10 
     2 * jQuery UI Selectable 1.8.16 
    33 * 
    44 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) 
     
    261261 
    262262$.extend($.ui.selectable, { 
    263         version: "1.8.10" 
     263        version: "1.8.16" 
    264264}); 
    265265 
  • trunk/themes/default/js/ui/jquery.ui.slider.js

    r9559 r12525  
    11/* 
    2  * jQuery UI Slider 1.8.10 
     2 * jQuery UI Slider 1.8.16 
    33 * 
    44 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) 
     
    3737        _create: function() { 
    3838                var self = this, 
    39                         o = this.options; 
     39                        o = this.options, 
     40                        existingHandles = this.element.find( ".ui-slider-handle" ).addClass( "ui-state-default ui-corner-all" ), 
     41                        handle = "<a class='ui-slider-handle ui-state-default ui-corner-all' href='#'></a>", 
     42                        handleCount = ( o.values && o.values.length ) || 1, 
     43                        handles = []; 
    4044 
    4145                this._keySliding = false; 
     
    5155                                " ui-widget" + 
    5256                                " ui-widget-content" + 
    53                                 " ui-corner-all" ); 
    54                  
    55                 if ( o.disabled ) { 
    56                         this.element.addClass( "ui-slider-disabled ui-disabled" ); 
    57                 } 
     57                                " ui-corner-all" + 
     58                                ( o.disabled ? " ui-slider-disabled ui-disabled" : "" ) ); 
    5859 
    5960                this.range = $([]); 
     
    6162                if ( o.range ) { 
    6263                        if ( o.range === true ) { 
    63                                 this.range = $( "<div></div>" ); 
    6464                                if ( !o.values ) { 
    6565                                        o.values = [ this._valueMin(), this._valueMin() ]; 
     
    6868                                        o.values = [ o.values[0], o.values[0] ]; 
    6969                                } 
    70                         } else { 
    71                                 this.range = $( "<div></div>" ); 
    72                         } 
    73  
    74                         this.range 
     70                        } 
     71 
     72                        this.range = $( "<div></div>" ) 
    7573                                .appendTo( this.element ) 
    76                                 .addClass( "ui-slider-range" ); 
    77  
    78                         if ( o.range === "min" || o.range === "max" ) { 
    79                                 this.range.addClass( "ui-slider-range-" + o.range ); 
    80                         } 
    81  
    82                         // note: this isn't the most fittingly semantic framework class for this element, 
    83                         // but worked best visually with a variety of themes 
    84                         this.range.addClass( "ui-widget-header" ); 
    85                 } 
    86  
    87                 if ( $( ".ui-slider-handle", this.element ).length === 0 ) { 
    88                         $( "<a href='#'></a>" ) 
    89                                 .appendTo( this.element ) 
    90                                 .addClass( "ui-slider-handle" ); 
    91                 } 
    92  
    93                 if ( o.values && o.values.length ) { 
    94                         while ( $(".ui-slider-handle", this.element).length < o.values.length ) { 
    95                                 $( "<a href='#'></a>" ) 
    96                                         .appendTo( this.element ) 
    97                                         .addClass( "ui-slider-handle" ); 
    98                         } 
    99                 } 
    100  
    101                 this.handles = $( ".ui-slider-handle", this.element ) 
    102                         .addClass( "ui-state-default" + 
    103                                 " ui-corner-all" ); 
     74                                .addClass( "ui-slider-range" + 
     75                                // note: this isn't the most fittingly semantic framework class for this element, 
     76                                // but worked best visually with a variety of themes 
     77                                " ui-widget-header" +  
     78                                ( ( o.range === "min" || o.range === "max" ) ? " ui-slider-range-" + o.range : "" ) ); 
     79                } 
     80 
     81                for ( var i = existingHandles.length; i < handleCount; i += 1 ) { 
     82                        handles.push( handle ); 
     83                } 
     84 
     85                this.handles = existingHandles.add( $( handles.join( "" ) ).appendTo( self.element ) ); 
    10486 
    10587                this.handle = this.handles.eq( 0 ); 
     
    467449                        this._refreshValue(); 
    468450                        this._change( null, 0 ); 
     451                        return; 
    469452                } 
    470453 
     
    481464                        this._refreshValue(); 
    482465                        this._change( null, index ); 
     466                        return; 
    483467                } 
    484468 
     
    519503                                        this.handles.filter( ".ui-state-focus" ).blur(); 
    520504                                        this.handles.removeClass( "ui-state-hover" ); 
    521                                         this.handles.attr( "disabled", "disabled" ); 
     505                                        this.handles.propAttr( "disabled", true ); 
    522506                                        this.element.addClass( "ui-disabled" ); 
    523507                                } else { 
    524                                         this.handles.removeAttr( "disabled" ); 
     508                                        this.handles.propAttr( "disabled", false ); 
    525509                                        this.element.removeClass( "ui-disabled" ); 
    526510                                } 
     
    593577                } 
    594578                var step = ( this.options.step > 0 ) ? this.options.step : 1, 
    595                         valModStep = (val - this._valueMin()) % step; 
     579                        valModStep = (val - this._valueMin()) % step, 
    596580                        alignValue = val - valModStep; 
    597581 
     
    677661 
    678662$.extend( $.ui.slider, { 
    679         version: "1.8.10" 
     663        version: "1.8.16" 
    680664}); 
    681665 
  • trunk/themes/default/js/ui/jquery.ui.sortable.js

    r9559 r12525  
    11/* 
    2  * jQuery UI Sortable 1.8.10 
     2 * jQuery UI Sortable 1.8.16 
    33 * 
    44 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) 
     
    5050                this.refresh(); 
    5151 
    52                 //Let's determine if the items are floating 
    53                 this.floating = this.items.length ? (/left|right/).test(this.items[0].item.css('float')) : false; 
     52                //Let's determine if the items are being displayed horizontally 
     53                this.floating = this.items.length ? o.axis === 'x' || (/left|right/).test(this.items[0].item.css('float')) || (/inline|table-cell/).test(this.items[0].item.css('display')) : false; 
    5454 
    5555                //Let's determine the parent's offset 
     
    615615                for (var i = this.items.length - 1; i >= 0; i--){ 
    616616                        var item = this.items[i]; 
     617 
     618                        //We ignore calculating positions of all connected containers when we're not over them 
     619                        if(item.instance != this.currentContainer && this.currentContainer && item.item[0] != this.currentItem[0]) 
     620                                continue; 
    617621 
    618622                        var t = this.options.toleranceElement ? $(this.options.toleranceElement, item.item) : item.item; 
     
    981985                // We first have to update the dom position of the actual currentItem 
    982986                // Note: don't do it if the current item is already removed (by a user), or it gets reappended (see #4088) 
    983                 if(!this._noFinalSort && this.currentItem[0].parentNode) this.placeholder.before(this.currentItem); 
     987                if(!this._noFinalSort && this.currentItem.parent().length) this.placeholder.before(this.currentItem); 
    984988                this._noFinalSort = null; 
    985989 
     
    10681072 
    10691073$.extend($.ui.sortable, { 
    1070         version: "1.8.10" 
     1074        version: "1.8.16" 
    10711075}); 
    10721076 
  • trunk/themes/default/js/ui/jquery.ui.tabs.js

    r9559 r12525  
    11/* 
    2  * jQuery UI Tabs 1.8.10 
     2 * jQuery UI Tabs 1.8.16 
    33 * 
    44 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) 
     
    699699 
    700700$.extend( $.ui.tabs, { 
    701         version: "1.8.10" 
     701        version: "1.8.16" 
    702702}); 
    703703 
  • trunk/themes/default/js/ui/jquery.ui.widget.js

    r9559 r12525  
    11/*! 
    2  * jQuery UI Widget 1.8.10 
     2 * jQuery UI Widget 1.8.16 
    33 * 
    44 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) 
     
    1515        $.cleanData = function( elems ) { 
    1616                for ( var i = 0, elem; (elem = elems[i]) != null; i++ ) { 
    17                         $( elem ).triggerHandler( "remove" ); 
     17                        try { 
     18                                $( elem ).triggerHandler( "remove" ); 
     19                        // http://bugs.jquery.com/ticket/8235 
     20                        } catch( e ) {} 
    1821                } 
    1922                _cleanData( elems ); 
     
    2629                                if ( !selector || $.filter( selector, [ this ] ).length ) { 
    2730                                        $( "*", this ).add( [ this ] ).each(function() { 
    28                                                 $( this ).triggerHandler( "remove" ); 
     31                                                try { 
     32                                                        $( this ).triggerHandler( "remove" ); 
     33                                                // http://bugs.jquery.com/ticket/8235 
     34                                                } catch( e ) {} 
    2935                                        }); 
    3036                                } 
  • trunk/themes/default/js/ui/minified/jquery.effects.blind.min.js

    r9559 r12525  
    11/* 
    2  * jQuery UI Effects Blind 1.8.10 
     2 * jQuery UI Effects Blind 1.8.16 
    33 * 
    44 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) 
  • trunk/themes/default/js/ui/minified/jquery.effects.bounce.min.js

    r9559 r12525  
    11/* 
    2  * jQuery UI Effects Bounce 1.8.10 
     2 * jQuery UI Effects Bounce 1.8.16 
    33 * 
    44 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) 
  • trunk/themes/default/js/ui/minified/jquery.effects.clip.min.js

    r9559 r12525  
    11/* 
    2  * jQuery UI Effects Clip 1.8.10 
     2 * jQuery UI Effects Clip 1.8.16 
    33 * 
    44 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) 
  • trunk/themes/default/js/ui/minified/jquery.effects.core.min.js

    r9559 r12525  
    11/* 
    2  * jQuery UI Effects 1.8.10 
     2 * jQuery UI Effects 1.8.16 
    33 * 
    44 * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) 
     
    88 * http://docs.jquery.com/UI/Effects/ 
    99 */ 
    10 jQuery.effects||function(f,j){function n(c){var a;if(c&&c.constructor==Array&&c.length==3)return c;if(a=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(c))return[parseInt(a[1],10),parseInt(a[2],10),parseInt(a[3],10)];if(a=/rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(c))return[parseFloat(a[1])*2.55,parseFloat(a[2])*2.55,parseFloat(a[3])*2.55];if(a=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(c))return[parseInt(a[1], 
    11 16),parseInt(a[2],16),parseInt(a[3],16)];if(a=/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(c))return[parseInt(a[1]+a[1],16),parseInt(a[2]+a[2],16),parseInt(a[3]+a[3],16)];if(/rgba\(0, 0, 0, 0\)/.exec(c))return o.transparent;return o[f.trim(c).toLowerCase()]}function s(c,a){var b;do{b=f.curCSS(c,a);if(b!=""&&b!="transparent"||f.nodeName(c,"body"))break;a="backgroundColor"}while(c=c.parentNode);return n(b)}function p(){var c=document.defaultView?document.defaultView.getComputedStyle(this,null):this.currentStyle, 
    12 a={},b,d;if(c&&c.length&&c[0]&&c[c[0]])for(var e=c.length;e--;){b=c[e];if(typeof c[b]=="string"){d=b.replace(/\-(\w)/g,function(g,h){return h.toUpperCase()});a[d]=c[b]}}else for(b in c)if(typeof c[b]==="string")a[b]=c[b];return a}function q(c){var a,b;for(a in c){b=c[a];if(b==null||f.isFunction(b)||a in t||/scrollbar/.test(a)||!/color/i.test(a)&&isNaN(parseFloat(b)))delete c[a]}return c}function u(c,a){var b={_:0},d;for(d in a)if(c[d]!=a[d])b[d]=a[d];return b}function k(c,a,b,d){if(typeof c=="object"){d= 
    13 a;b=null;a=c;c=a.effect}if(f.isFunction(a)){d=a;b=null;a={}}if(typeof a=="number"||f.fx.speeds[a]){d=b;b=a;a={}}if(f.isFunction(b)){d=b;b=null}a=a||{};b=b||a.duration;b=f.fx.off?0:typeof b=="number"?b:b in f.fx.speeds?f.fx.speeds[b]:f.fx.speeds._default;d=d||a.complete;return[c,a,b,d]}function m(c){if(!c||typeof c==="number"||f.fx.speeds[c])return true;if(typeof c==="string"&&!f.effects[c])return true;return false}f.effects={};f.each(["backgroundColor","borderBottomColor","borderLeftColor","borderRightColor", 
    14 "borderTopColor","borderColor","color","outlineColor"],function(c,a){f.fx.step[a]=function(b){if(!b.colorInit){b.start=s(b.elem,a);b.end=n(b.end);b.colorInit=true}b.elem.style[a]="rgb("+Math.max(Math.min(parseInt(b.pos*(b.end[0]-b.start[0])+b.start[0],10),255),0)+","+Math.max(Math.min(parseInt(b.pos*(b.end[1]-b.start[1])+b.start[1],10),255),0)+","+Math.max(Math.min(parseInt(b.pos*(b.end[2]-b.start[2])+b.start[2],10),255),0)+")"}});var o={aqua:[0,255,255],azure:[240,255,255],beige:[245,245,220],black:[0, 
     10jQuery.effects||function(f,j){function m(c){var a;if(c&&c.constructor==Array&&c.length==3)return c;if(a=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(c))return[parseInt(a[1],10),parseInt(a[2],10),parseInt(a[3],10)];if(a=/rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(c))return[parseFloat(a[1])*2.55,parseFloat(a[2])*2.55,parseFloat(a[3])*2.55];if(a=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(c))return[parseInt(a[1], 
     1116),parseInt(a[2],16),parseInt(a[3],16)];if(a=/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(c))return[parseInt(a[1]+a[1],16),parseInt(a[2]+a[2],16),parseInt(a[3]+a[3],16)];if(/rgba\(0, 0, 0, 0\)/.exec(c))return n.transparent;return n[f.trim(c).toLowerCase()]}function s(c,a){var b;do{b=f.curCSS(c,a);if(b!=""&&b!="transparent"||f.nodeName(c,"body"))break;a="backgroundColor"}while(c=c.parentNode);return m(b)}function o(){var c=document.defaultView?document.defaultView.getComputedStyle(this,null):this.currentStyle, 
     12a={},b,d;if(c&&c.length&&c[0]&&c[c[0]])for(var e=c.length;e--;){b=c[e];if(typeof c[b]=="string"){d=b.replace(/\-(\w)/g,function(g,h){return h.toUpperCase()});a[d]=c[b]}}else for(b in c)if(typeof c[b]==="string")a[b]=c[b];return a}function p(c){var a,b;for(a in c){b=c[a];if(b==null||f.isFunction(b)||a in t||/scrollbar/.test(a)||!/color/i.test(a)&&isNaN(parseFloat(b)))delete c[a]}return c}function u(c,a){var b={_:0},d;for(d in a)if(c[d]!=a[d])b[d]=a[d];return b}function k(c,a,b,d){if(typeof c=="object"){d= 
     13a;b=null;a=c;c=a.effect}if(f.isFunction(a)){d=a;b=null;a={}}if(typeof a=="number"||f.fx.speeds[a]){d=b;b=a;a={}}if(f.isFunction(b)){d=b;b=null}a=a||{};b=b||a.duration;b=f.fx.off?0:typeof b=="number"?b:b in f.fx.speeds?f.fx.speeds[b]:f.fx.speeds._default;d=d||a.complete;return[c,a,b,d]}function l(c){if(!c||typeof c==="number"||f.fx.speeds[c])return true;if(typeof c==="string"&&!f.effects[c])return true;return false}f.effects={};f.each(["backgroundColor","borderBottomColor","borderLeftColor","borderRightColor", 
     14"borderTopColor","borderColor","color","outlineColor"],function(c,a){f.fx.step[a]=function(b){if(!b.colorInit){b.start=s(b.elem,a);b.end=m(b.end);b.colorInit=true}b.elem.style[a]="rgb("+Math.max(Math.min(parseInt(b.pos*(b.end[0]-b.start[0])+b.start[0],10),255),0)+","+Math.max(Math.min(parseInt(b.pos*(b.end[1]-b.start[1])+b.start[1],10),255),0)+","+Math.max(Math.min(parseInt(b.pos*(b.end[2]-b.start[2])+b.start[2],10),255),0)+")"}});var n={aqua:[0,255,255],azure:[240,255,255],beige:[245,245,220],black:[0, 
    15150,0],blue:[0,0,255],brown:[165,42,42],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgrey:[169,169,169],darkgreen:[0,100,0],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkviolet:[148,0,211],fuchsia:[255,0,255],gold:[255,215,0],green:[0,128,0],indigo:[75,0,130],khaki:[240,230,140],lightblue:[173,216,230],lightcyan:[224,255,255],lightgreen:[144,238,144],lightgrey:[211, 
    16 211,211],lightpink:[255,182,193],lightyellow:[255,255,224],lime:[0,255,0],magenta:[255,0,255],maroon:[128,0,0],navy:[0,0,128],olive:[128,128,0],orange:[255,165,0],pink:[255,192,203],purple:[128,0,128],violet:[128,0,128],red:[255,0,0],silver:[192,192,192],white:[255,255,255],yellow:[255,255,0],transparent:[255,255,255]},r=["add","remove","toggle"],t={border:1,borderBottom:1,borderColor:1,borderLeft:1,borderRight:1,borderTop:1,borderWidth:1,margin:1,padding:1};f.effects.animateClass=function(c,a,b, 
    17 d){if(f.isFunction(b)){d=b;b=null}return this.queue("fx",function(){var e=f(this),g=e.attr("style")||" ",h=q(p.call(this)),l,v=e.attr("className");f.each(r,function(w,i){c[i]&&e[i+"Class"](c[i])});l=q(p.call(this));e.attr("className",v);e.animate(u(h,l),a,b,function(){f.each(r,function(w,i){c[i]&&e[i+"Class"](c[i])});if(typeof e.attr("style")=="object"){e.attr("style").cssText="";e.attr("style").cssText=g}else e.attr("style",g);d&&d.apply(this,arguments)});h=f.queue(this);l=h.splice(h.length-1,1)[0]; 
    18 h.splice(1,0,l);f.dequeue(this)})};f.fn.extend({_addClass:f.fn.addClass,addClass:function(c,a,b,d){return a?f.effects.animateClass.apply(this,[{add:c},a,b,d]):this._addClass(c)},_removeClass:f.fn.removeClass,removeClass:function(c,a,b,d){return a?f.effects.animateClass.apply(this,[{remove:c},a,b,d]):this._removeClass(c)},_toggleClass:f.fn.toggleClass,toggleClass:function(c,a,b,d,e){return typeof a=="boolean"||a===j?b?f.effects.animateClass.apply(this,[a?{add:c}:{remove:c},b,d,e]):this._toggleClass(c, 
    19 a):f.effects.animateClass.apply(this,[{toggle:c},a,b,d])},switchClass:function(c,a,b,d,e){return f.effects.animateClass.apply(this,[{add:a,remove:c},b,d,e])}});f.extend(f.effects,{version:"1.8.10",save:function(c,a){for(var b=0;b<a.length;b++)a[b]!==null&&c.data("ec.storage."+a[b],c[0].style[a[b]])},restore:function(c,a){for(var b=0;b<a.length;b++)a[b]!==null&&c.css(a[b],c.data("ec.storage."+a[b]))},setMode:function(c,a){if(a=="toggle")a=c.is(":hidden")?"show":"hide";return a},getBaseline:function(c, 
    20 a){var b;switch(c[0]){case "top":b=0;break;case "middle":b=0.5;break;case "bottom":b=1;break;default:b=c[0]/a.height}switch(c[1]){case "left":c=0;break;case "center":c=0.5;break;case "right":c=1;break;default:c=c[1]/a.width}return{x:c,y:b}},createWrapper:function(c){if(c.parent().is(".ui-effects-wrapper"))return c.parent();var a={width:c.outerWidth(true),height:c.outerHeight(true),"float":c.css("float")},b=f("<div></div>").addClass("ui-effects-wrapper").css({fontSize:"100%",background:"transparent", 
    21 border:"none",margin:0,padding:0});c.wrap(b);b=c.parent();if(c.css("position")=="static"){b.css({position:"relative"});c.css({position:"relative"})}else{f.extend(a,{position:c.css("position"),zIndex:c.css("z-index")});f.each(["top","left","bottom","right"],function(d,e){a[e]=c.css(e);if(isNaN(parseInt(a[e],10)))a[e]="auto"});c.css({position:"relative",top:0,left:0,right:"auto",bottom:"auto"})}return b.css(a).show()},removeWrapper:function(c){if(c.parent().is(".ui-effects-wrapper"))return c.parent().replaceWith(c); 
    22 return c},setTransition:function(c,a,b,d){d=d||{};f.each(a,function(e,g){unit=c.cssUnit(g);if(unit[0]>0)d[g]=unit[0]*b+unit[1]});return d}});f.fn.extend({effect:function(c){var a=k.apply(this,arguments),b={options:a[1],duration:a[2],callback:a[3]};a=b.options.mode;var d=f.effects[c];if(f.fx.off||!d)return a?this[a](b.duration,b.callback):this.each(function(){b.callback&&b.callback.call(this)});return d.call(this,b)},_show:f.fn.show,show:function(c){if(m(c))return this._show.apply(this,arguments); 
    23 else{var a=k.apply(this,arguments);a[1].mode="show";return this.effect.apply(this,a)}},_hide:f.fn.hide,hide:function(c){if(m(c))return this._hide.apply(this,arguments);else{var a=k.apply(this,arguments);a[1].mode="hide";return this.effect.apply(this,a)}},__toggle:f.fn.toggle,toggle:function(c){if(m(c)||typeof c==="boolean"||f.isFunction(c))return this.__toggle.apply(this,arguments);else{var a=k.apply(this,arguments);a[1].mode="toggle";return this.effect.apply(this,a)}},cssUnit:function(c){var a=this.css(c), 
    24 b=[];f.each(["em","px","%","pt"],function(d,e){if(a.indexOf(e)>0)b=[parseFloat(a),e]});return b}});f.easing.jswing=f.easing.swing;f.extend(f.easing,{def:"easeOutQuad",swing:function(c,a,b,d,e){return f.easing[f.easing.def](c,a,b,d,e)},easeInQuad:function(c,a,b,d,e){return d*(a/=e)*a+b},easeOutQuad:function(c,a,b,d,e){return-d*(a/=e)*(a-2)+b},easeInOutQuad:function(c,a,b,d,e){if((a/=e/2)<1)return d/2*a*a+b;return-d/2*(--a*(a-2)-1)+b},easeInCubic:function(c,a,b,d,e){return d*(a/=e)*a*a+b},easeOutCubic:function(c, 
    25 a,b,d,e){return d*((a=a/e-1)*a*a+1)+b},easeInOutCubic:function(c,a,b,d,e){if((a/=e/2)<1)return d/2*a*a*a+b;return d/2*((a-=2)*a*a+2)+b},easeInQuart:function(c,a,b,d,e){return d*(a/=e)*a*a*a+b},easeOutQuart:function(c,a,b,d,e){return-d*((a=a/e-1)*a*a*a-1)+b},easeInOutQuart:function(c,a,b,d,e){if((a/=e/2)<1)return d/2*a*a*a*a+b;return-d/2*((a-=2)*a*a*a-2)+b},easeInQuint:function(c,a,b,d,e){return d*(a/=e)*a*a*a*a+b},easeOutQuint:function(c,a,b,d,e){return d*((a=a/e-1)*a*a*a*a+1)+b},easeInOutQuint:function(c, 
    26 a,b,d,e){if((a/=e/2)<1)return d/2*a*a*a*a*a+b;return d/2*((a-=2)*a*a*a*a+2)+b},easeInSine:function(c,a,b,d,e){return-d*Math.cos(a/e*(Math.PI/2))+d+b},easeOutSine:function(c,a,b,d,e){return d*Math.sin(a/e*(Math.PI/2))+b},easeInOutSine:function(c,a,b,d,e){return-d/2*(Math.cos(Math.PI*a/e)-1)+b},easeInExpo:function(c,a,b,d,e){return a==0?b:d*Math.pow(2,10*(a/e-1))+b},easeOutExpo:function(c,a,b,d,e){return a==e?b+d:d*(-Math.pow(2,-10*a/e)+1)+b},easeInOutExpo:function(c,a,b,d,e){if(a==0)return b;if(a== 
    27 e)return b+d;if((a/=e/2)<1)return d/2*Math.pow(2,10*(a-1))+b;return d/2*(-Math.pow(2,-10*--a)+2)+b},easeInCirc:function(c,a,b,d,e){return-d*(Math.sqrt(1-(a/=e)*a)-1)+b},easeOutCirc:function(c,a,b,d,e){return d*Math.sqrt(1-(a=a/e-1)*a)+b},easeInOutCirc:function(c,a,b,d,e){if((a/=e/2)<1)return-d/2*(Math.sqrt(1-a*a)-1)+b;return d/2*(Math.sqrt(1-(a-=2)*a)+1)+b},easeInElastic:function(c,a,b,d,e){c=1.70158;var g=0,h=d;if(a==0)return b;if((a/=e)==1)return b+d;g||(g=e*0.3);if(h<Math.abs(d)){h=d;c=g/4}else c= 
    28 g/(2*Math.PI)*Math.asin(d/h);return-(h*Math.pow(2,10*(a-=1))*Math.sin((a*e-c)*2*Math.PI/g))+b},easeOutElastic:function(c,a,b,d,e){c=1.70158;var g=0,h=d;if(a==0)return b;if((a/=e)==1)return b+d;g||(g=e*0.3);if(h<Math.abs(d)){h=d;c=g/4}else c=g/(2*Math.PI)*Math.asin(d/h);return h*Math.pow(2,-10*a)*Math.sin((a*e-c)*2*Math.PI/g)+d+b},easeInOutElastic:function(c,a,b,d,e){c=1.70158;var g=0,h=d;if(a==0)return b;if((a/=e/2)==2)return b+d;g||(g=e*0.3*1.5);if(h<Math.abs(d)){h=d;c=g/4}else c=g/(2*Math.PI)*Math.asin(d/ 
    29 h);if(a<1)return-0.5*h*Math.pow(2,10*(a-=1))*Math.sin((a*e-c)*2*Math.PI/g)+b;return h*Math.pow(2,-10*(a-=1))*Math.sin((a*e-c)*2*Math.PI/g)*0.5+d+b},easeInBack:function(c,a,b,d,e,g){if(g==j)g=1.70158;return d*(a/=e)*a*((g+1)*a-g)+b},easeOutBack:function(c,a,b,d,e,g){if(g==j)g=1.70158;return d*((a=a/e-1)*a*((g+1)*a+g)+1)+b},easeInOutBack:function(c,a,b,d,e,g){if(g==j)g=1.70158;if((a/=e/2)<1)return d/2*a*a*(((g*=1.525)+1)*a-g)+b;return d/2*((a-=2)*a*(((g*=1.525)+1)*a+g)+2)+b},easeInBounce:function(c, 
    30 a,b,d,e){return d-f.easing.easeOutBounce(c,e-a,0,d,e)+b},easeOutBounce:function(c,a,b,d,e){return(a/=e)<1/2.75?d*7.5625*a*a+b:a<2/2.75?d*(7.5625*(a-=1.5/2.75)*a+0.75)+b:a<2.5/2.75?d*(7.5625*(a-=2.25/2.75)*a+0.9375)+b:d*(7.5625*(a-=2.625/2.75)*a+0.984375)+b},easeInOutBounce:function(c,a,b,d,e){if(a<e/2)return f.easing.easeInBounce(c,a*2,0,d,e)*0.5+b;return f.easing.easeOutBounce(c,a*2-e,0,d,e)*0.5+d*0.5+b}})}(jQuery); 
     16211,211],lightpink:[255,182,193],lightyellow:[255,255,224],lime:[0,255,0],magenta:[255,0,255],maroon:[128,0,0],navy:[0,0,128],olive:[128,128,0],orange:[255,165,0],pink:[255,192,203],purple:[128,0,128],violet:[128,0,128],red:[255,0,0],silver:[192,192,192],white:[255,255,255],yellow:[255,255,0],transparent:[255,255,255]},q=["add","remove","toggle"],t={border:1,borderBottom:1,borderColor:1,borderLeft:1,borderRight:1,borderTop:1,borderWidth:1,margin:1,padding:1};f.effects.animateClass=function(c,a,b, 
     17d){if(f.isFunction(b)){d=b;b=null}return this.queue(function(){var e=f(this),g=e.attr("style")||" ",h=p(o.call(this)),r,v=e.attr("class");f.each(q,function(w,i){c[i]&&e[i+"Class"](c[i])});r=p(o.call(this));e.attr("class",v);e.animate(u(h,r),{queue:false,duration:a,easing:b,complete:function(){f.each(q,function(w,i){c[i]&&e[i+"Class"](c[i])});if(typeof e.attr("style")=="object"){e.attr("style").cssText="";e.attr("style").cssText=g}else e.attr("style",g);d&&d.apply(this,arguments);f.dequeue(this)}})})}; 
     18f.fn.extend({_addClass:f.fn.addClass,addClass:function(c,a,b,d){return a?f.effects.animateClass.apply(this,[{add:c},a,b,d]):this._addClass(c)},_removeClass:f.fn.removeClass,removeClass:function(c,a,b,d){return a?f.effects.animateClass.apply(this,[{remove:c},a,b,d]):this._removeClass(c)},_toggleClass:f.fn.toggleClass,toggleClass:function(c,a,b,d,e){return typeof a=="boolean"||a===j?b?f.effects.animateClass.apply(this,[a?{add:c}:{remove:c},b,d,e]):this._toggleClass(c,a):f.effects.animateClass.apply(this, 
     19[{toggle:c},a,b,d])},switchClass:function(c,a,b,d,e){return f.effects.animateClass.apply(this,[{add:a,remove:c},b,d,e])}});f.extend(f.effects,{version:"1.8.16",save:function(c,a){for(var b=0;b<a.length;b++)a[b]!==null&&c.data("ec.storage."+a[b],c[0].style[a[b]])},restore:function(c,a){for(var b=0;b<a.length;b++)a[b]!==null&&c.css(a[b],c.data("ec.storage."+a[b]))},setMode:function(c,a){if(a=="toggle")a=c.is(":hidden")?"show":"hide";return a},getBaseline:function(c,a){var b;switch(c[0]){case "top":b= 
     200;break;case "middle":b=0.5;break;case "bottom":b=1;break;default:b=c[0]/a.height}switch(c[1]){case "left":c=0;break;case "center":c=0.5;break;case "right":c=1;break;default:c=c[1]/a.width}return{x:c,y:b}},createWrapper:function(c){if(c.parent().is(".ui-effects-wrapper"))return c.parent();var a={width:c.outerWidth(true),height:c.outerHeight(true),"float":c.css("float")},b=f("<div></div>").addClass("ui-effects-wrapper").css({fontSize:"100%",background:"transparent",border:"none",margin:0,padding:0}), 
     21d=document.activeElement;c.wrap(b);if(c[0]===d||f.contains(c[0],d))f(d).focus();b=c.parent();if(c.css("position")=="static"){b.css({position:"relative"});c.css({position:"relative"})}else{f.extend(a,{position:c.css("position"),zIndex:c.css("z-index")});f.each(["top","left","bottom","right"],function(e,g){a[g]=c.css(g);if(isNaN(parseInt(a[g],10)))a[g]="auto"});c.css({position:"relative",top:0,left:0,right:"auto",bottom:"auto"})}return b.css(a).show()},removeWrapper:function(c){var a,b=document.activeElement; 
     22if(c.parent().is(".ui-effects-wrapper")){a=c.parent().replaceWith(c);if(c[0]===b||f.contains(c[0],b))f(b).focus();return a}return c},setTransition:function(c,a,b,d){d=d||{};f.each(a,function(e,g){unit=c.cssUnit(g);if(unit[0]>0)d[g]=unit[0]*b+unit[1]});return d}});f.fn.extend({effect:function(c){var a=k.apply(this,arguments),b={options:a[1],duration:a[2],callback:a[3]};a=b.options.mode;var d=f.effects[c];if(f.fx.off||!d)return a?this[a](b.duration,b.callback):this.each(function(){b.callback&&b.callback.call(this)}); 
     23return d.call(this,b)},_show:f.fn.show,show:function(c){if(l(c))return this._show.apply(this,arguments);else{var a=k.apply(this,arguments);a[1].mode="show";return this.effect.apply(this,a)}},_hide:f.fn.hide,hide:function(c){if(l(c))return this._hide.apply(this,arguments);else{var a=k.apply(this,arguments);a[1].mode="hide";return this.effect.apply(this,a)}},__toggle:f.fn.toggle,toggle:function(c){if(l(c)||typeof c==="boolean"||f.isFunction(c))return this.__toggle.apply(this,arguments);else{var a=k.apply(this, 
     24arguments);a[1].mode="toggle";return this.effect.apply(this,a)}},cssUnit:function(c){var a=this.css(c),b=[];f.each(["em","px","%","pt"],function(d,e){if(a.indexOf(e)>0)b=[parseFloat(a),e]});return b}});f.easing.jswing=f.easing.swing;f.extend(f.easing,{def:"easeOutQuad",swing:function(c,a,b,d,e){return f.easing[f.easing.def](c,a,b,d,e)},easeInQuad:function(c,a,b,d,e){return d*(a/=e)*a+b},easeOutQuad:function(c,a,b,d,e){return-d*(a/=e)*(a-2)+b},easeInOutQuad:function(c,a,b,d,e){if((a/=e/2)<1)return d/ 
     252*a*a+b;return-d/2*(--a*(a-2)-1)+b},easeInCubic:function(c,a,b,d,e){return d*(a/=e)*a*a+b},easeOutCubic:function(c,a,b,d,e){return d*((a=a/e-1)*a*a+1)+b},easeInOutCubic:function(c,a,b,d,e){if((a/=e/2)<1)return d/2*a*a*a+b;return d/2*((a-=2)*a*a+2)+b},easeInQuart:function(c,a,b,d,e){return d*(a/=e)*a*a*a+b},easeOutQuart:function(c,a,b,d,e){return-d*((a=a/e-1)*a*a*a-1)+b},easeInOutQuart:function(c,a,b,d,e){if((a/=e/2)<1)return d/2*a*a*a*a+b;return-d/2*((a-=2)*a*a*a-2)+b},easeInQuint:function(c,a,b, 
     26d,e){return d*(a/=e)*a*a*a*a+b},easeOutQuint:function(c,a,b,d,e){return d*((a=a/e-1)*a*a*a*a+1)+b},easeInOutQuint:function(c,a,b,d,e){if((a/=e/2)<1)return d/2*a*a*a*a*a+b;return d/2*((a-=2)*a*a*a*a+2)+b},easeInSine:function(c,a,b,d,e){return-d*Math.cos(a/e*(Math.PI/2))+d+b},easeOutSine:function(c,a,b,d,e){return d*Math.sin(a/e*(Math.PI/2))+b},easeInOutSine:function(c,a,b,d,e){return-d/2*(Math.cos(Math.PI*a/e)-1)+b},easeInExpo:function(c,a,b,d,e){return a==0?b:d*Math.pow(2,10*(a/e-1))+b},easeOutExpo:function(c, 
     27a,b,d,e){return a==e?b+d:d*(-Math.pow(2,-10*a/e)+1)+b},easeInOutExpo:function(c,a,b,d,e){if(a==0)return b;if(a==e)return b+d;if((a/=e/2)<1)return d/2*Math.pow(2,10*(a-1))+b;return d/2*(-Math.pow(2,-10*--a)+2)+b},easeInCirc:function(c,a,b,d,e){return-d*(Math.sqrt(1-(a/=e)*a)-1)+b},easeOutCirc:function(c,a,b,d,e){return d*Math.sqrt(1-(a=a/e-1)*a)+b},easeInOutCirc:function(c,a,b,d,e){if((a/=e/2)<1)return-d/2*(Math.sqrt(1-a*a)-1)+b;return d/2*(Math.sqrt(1-(a-=2)*a)+1)+b},easeInElastic:function(c,a,b, 
     28d,e){c=1.70158;var g=0,h=d;if(a==0)return b;if((a/=e)==1)return b+d;g||(g=e*0.3);if(h<Math.abs(d)){h=d;c=g/4}else c=g/(2*Math.PI)*Math.asin(d/h);return-(h*Math.pow(2,10*(a-=1))*Math.sin((a*e-c)*2*Math.PI/g))+b},easeOutElastic:function(c,a,b,d,e){c=1.7